diff --git a/LFP_Manager_PRM.sln b/LFP_Manager_PRM.sln new file mode 100644 index 0000000..7fb1b1f --- /dev/null +++ b/LFP_Manager_PRM.sln @@ -0,0 +1,25 @@ + +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio Version 16 +VisualStudioVersion = 16.0.30413.136 +MinimumVisualStudioVersion = 10.0.40219.1 +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "LFP_Manager_PRM", "LFP_Manager_PRM\LFP_Manager_PRM.csproj", "{BE0785A4-0CCB-44C5-A8C0-1AA2245E71F4}" +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|Any CPU = Debug|Any CPU + Release|Any CPU = Release|Any CPU + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {BE0785A4-0CCB-44C5-A8C0-1AA2245E71F4}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {BE0785A4-0CCB-44C5-A8C0-1AA2245E71F4}.Debug|Any CPU.Build.0 = Debug|Any CPU + {BE0785A4-0CCB-44C5-A8C0-1AA2245E71F4}.Release|Any CPU.ActiveCfg = Release|Any CPU + {BE0785A4-0CCB-44C5-A8C0-1AA2245E71F4}.Release|Any CPU.Build.0 = Release|Any CPU + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection + GlobalSection(ExtensibilityGlobals) = postSolution + SolutionGuid = {B45D6DA4-74D5-40BD-9D37-AE9E1305D7B9} + EndGlobalSection +EndGlobal diff --git a/LFP_Manager_PRM/Controls/ucCalibration.Designer.cs b/LFP_Manager_PRM/Controls/ucCalibration.Designer.cs new file mode 100644 index 0000000..ad51849 --- /dev/null +++ b/LFP_Manager_PRM/Controls/ucCalibration.Designer.cs @@ -0,0 +1,1579 @@ +namespace LFP_Manager.Controls +{ + partial class ucCalibration + { + /// + /// Required designer variable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Clean up any resources being used. + /// + /// true if managed resources should be disposed; otherwise, false. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Component Designer generated code + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + this.layoutControl1 = new DevExpress.XtraLayout.LayoutControl(); + this.BtnCbDefault = new DevExpress.XtraEditors.SimpleButton(); + this.BtnCbParamGet = new DevExpress.XtraEditors.SimpleButton(); + this.BtnCbParamSet = new DevExpress.XtraEditors.SimpleButton(); + this.TeCbThresholdNew = new DevExpress.XtraEditors.TextEdit(); + this.TeCbThresholdCurr = new DevExpress.XtraEditors.TextEdit(); + this.btnCanSpeedGet = new DevExpress.XtraEditors.SimpleButton(); + this.btnCanSpeedSet = new DevExpress.XtraEditors.SimpleButton(); + this.cbCanSpeedNew = new DevExpress.XtraEditors.ComboBoxEdit(); + this.edCanSpeedCurr = new DevExpress.XtraEditors.TextEdit(); + this.gbBmuAddrSet = new DevExpress.XtraEditors.GroupControl(); + this.layoutControl9 = new DevExpress.XtraLayout.LayoutControl(); + this.edModuleNo = new DevExpress.XtraEditors.TextEdit(); + this.edSystemAddrNew = new DevExpress.XtraEditors.TextEdit(); + this.btnBmsAddrGet = new DevExpress.XtraEditors.SimpleButton(); + this.btnBmsAddrSet = new DevExpress.XtraEditors.SimpleButton(); + this.edSystemAddr = new DevExpress.XtraEditors.TextEdit(); + this.layoutControlGroup9 = new DevExpress.XtraLayout.LayoutControlGroup(); + this.lcitemBmsId = new DevExpress.XtraLayout.LayoutControlItem(); + this.emptySpaceItem16 = new DevExpress.XtraLayout.EmptySpaceItem(); + this.emptySpaceItem17 = new DevExpress.XtraLayout.EmptySpaceItem(); + this.layoutControlItem34 = new DevExpress.XtraLayout.LayoutControlItem(); + this.layoutControlItem36 = new DevExpress.XtraLayout.LayoutControlItem(); + this.layoutControlItem6 = new DevExpress.XtraLayout.LayoutControlItem(); + this.emptySpaceItem2 = new DevExpress.XtraLayout.EmptySpaceItem(); + this.layoutControlItem1 = new DevExpress.XtraLayout.LayoutControlItem(); + this.lbModuleName = new DevExpress.XtraLayout.SimpleLabelItem(); + this.gbCvOffset = new DevExpress.XtraEditors.GroupControl(); + this.layoutControl4 = new DevExpress.XtraLayout.LayoutControl(); + this.edCvOffsetNew2 = new DevExpress.XtraEditors.TextEdit(); + this.edCvOffset2 = new DevExpress.XtraEditors.TextEdit(); + this.btnBpGet = new DevExpress.XtraEditors.SimpleButton(); + this.btnBpSet = new DevExpress.XtraEditors.SimpleButton(); + this.edCvOffsetNew1 = new DevExpress.XtraEditors.TextEdit(); + this.edCvOffset1 = new DevExpress.XtraEditors.TextEdit(); + this.layoutControlGroup4 = new DevExpress.XtraLayout.LayoutControlGroup(); + this.lcItemDCvOffset1 = new DevExpress.XtraLayout.LayoutControlItem(); + this.layoutControlItem7 = new DevExpress.XtraLayout.LayoutControlItem(); + this.emptySpaceItem4 = new DevExpress.XtraLayout.EmptySpaceItem(); + this.emptySpaceItem6 = new DevExpress.XtraLayout.EmptySpaceItem(); + this.layoutControlItem9 = new DevExpress.XtraLayout.LayoutControlItem(); + this.layoutControlItem14 = new DevExpress.XtraLayout.LayoutControlItem(); + this.lcItemDCvOffset2 = new DevExpress.XtraLayout.LayoutControlItem(); + this.layoutControlItem2 = new DevExpress.XtraLayout.LayoutControlItem(); + this.gbForcedBalancing = new DevExpress.XtraEditors.GroupControl(); + this.layoutControl3 = new DevExpress.XtraLayout.LayoutControl(); + this.btnFcSet = new DevExpress.XtraEditors.SimpleButton(); + this.CbBalEnable = new DevExpress.XtraEditors.ComboBoxEdit(); + this.cbFcCellNo = new DevExpress.XtraEditors.ComboBoxEdit(); + this.cbFcControl = new DevExpress.XtraEditors.ComboBoxEdit(); + this.CbBalMode = new DevExpress.XtraEditors.ComboBoxEdit(); + this.layoutControlGroup3 = new DevExpress.XtraLayout.LayoutControlGroup(); + this.lcitemFcControl = new DevExpress.XtraLayout.LayoutControlItem(); + this.lcitemFcCellNo = new DevExpress.XtraLayout.LayoutControlItem(); + this.lcitemFcAutoC = new DevExpress.XtraLayout.LayoutControlItem(); + this.layoutControlItem8 = new DevExpress.XtraLayout.LayoutControlItem(); + this.emptySpaceItem1 = new DevExpress.XtraLayout.EmptySpaceItem(); + this.lcitemFcAutoC1 = new DevExpress.XtraLayout.LayoutControlItem(); + this.TeCbWindowCurr = new DevExpress.XtraEditors.TextEdit(); + this.TeCbWindowNew = new DevExpress.XtraEditors.TextEdit(); + this.TeCbMinCurr = new DevExpress.XtraEditors.TextEdit(); + this.TeCbMinNew = new DevExpress.XtraEditors.TextEdit(); + this.TeCbIntervalCurr = new DevExpress.XtraEditors.TextEdit(); + this.TeCbIntervalNew = new DevExpress.XtraEditors.TextEdit(); + this.layoutControlGroup1 = new DevExpress.XtraLayout.LayoutControlGroup(); + this.layoutControlItem4 = new DevExpress.XtraLayout.LayoutControlItem(); + this.emptySpaceItem14 = new DevExpress.XtraLayout.EmptySpaceItem(); + this.emptySpaceItem9 = new DevExpress.XtraLayout.EmptySpaceItem(); + this.layoutControlItem33 = new DevExpress.XtraLayout.LayoutControlItem(); + this.layoutControlItem5 = new DevExpress.XtraLayout.LayoutControlItem(); + this.layoutControlGroup2 = new DevExpress.XtraLayout.LayoutControlGroup(); + this.layoutControlItem3 = new DevExpress.XtraLayout.LayoutControlItem(); + this.layoutControlItem10 = new DevExpress.XtraLayout.LayoutControlItem(); + this.emptySpaceItem3 = new DevExpress.XtraLayout.EmptySpaceItem(); + this.emptySpaceItem7 = new DevExpress.XtraLayout.EmptySpaceItem(); + this.layoutControlItem11 = new DevExpress.XtraLayout.LayoutControlItem(); + this.layoutControlItem12 = new DevExpress.XtraLayout.LayoutControlItem(); + this.layoutControlGroup5 = new DevExpress.XtraLayout.LayoutControlGroup(); + this.layoutControlItem13 = new DevExpress.XtraLayout.LayoutControlItem(); + this.layoutControlItem15 = new DevExpress.XtraLayout.LayoutControlItem(); + this.layoutControlItem16 = new DevExpress.XtraLayout.LayoutControlItem(); + this.layoutControlItem17 = new DevExpress.XtraLayout.LayoutControlItem(); + this.layoutControlItem18 = new DevExpress.XtraLayout.LayoutControlItem(); + this.layoutControlItem19 = new DevExpress.XtraLayout.LayoutControlItem(); + this.layoutControlItem20 = new DevExpress.XtraLayout.LayoutControlItem(); + this.layoutControlItem21 = new DevExpress.XtraLayout.LayoutControlItem(); + this.emptySpaceItem8 = new DevExpress.XtraLayout.EmptySpaceItem(); + this.layoutControlItem22 = new DevExpress.XtraLayout.LayoutControlItem(); + this.layoutControlItem23 = new DevExpress.XtraLayout.LayoutControlItem(); + this.simpleLabelItem1 = new DevExpress.XtraLayout.SimpleLabelItem(); + this.simpleLabelItem2 = new DevExpress.XtraLayout.SimpleLabelItem(); + this.simpleLabelItem3 = new DevExpress.XtraLayout.SimpleLabelItem(); + this.simpleLabelItem4 = new DevExpress.XtraLayout.SimpleLabelItem(); + this.layoutControlItem24 = new DevExpress.XtraLayout.LayoutControlItem(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControl1)).BeginInit(); + this.layoutControl1.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.TeCbThresholdNew.Properties)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.TeCbThresholdCurr.Properties)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.cbCanSpeedNew.Properties)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.edCanSpeedCurr.Properties)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.gbBmuAddrSet)).BeginInit(); + this.gbBmuAddrSet.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControl9)).BeginInit(); + this.layoutControl9.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.edModuleNo.Properties)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.edSystemAddrNew.Properties)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.edSystemAddr.Properties)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup9)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.lcitemBmsId)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.emptySpaceItem16)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.emptySpaceItem17)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem34)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem36)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem6)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.emptySpaceItem2)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem1)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.lbModuleName)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.gbCvOffset)).BeginInit(); + this.gbCvOffset.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControl4)).BeginInit(); + this.layoutControl4.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.edCvOffsetNew2.Properties)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.edCvOffset2.Properties)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.edCvOffsetNew1.Properties)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.edCvOffset1.Properties)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup4)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.lcItemDCvOffset1)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem7)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.emptySpaceItem4)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.emptySpaceItem6)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem9)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem14)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.lcItemDCvOffset2)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem2)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.gbForcedBalancing)).BeginInit(); + this.gbForcedBalancing.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControl3)).BeginInit(); + this.layoutControl3.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.CbBalEnable.Properties)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.cbFcCellNo.Properties)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.cbFcControl.Properties)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.CbBalMode.Properties)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup3)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.lcitemFcControl)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.lcitemFcCellNo)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.lcitemFcAutoC)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem8)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.emptySpaceItem1)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.lcitemFcAutoC1)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.TeCbWindowCurr.Properties)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.TeCbWindowNew.Properties)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.TeCbMinCurr.Properties)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.TeCbMinNew.Properties)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.TeCbIntervalCurr.Properties)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.TeCbIntervalNew.Properties)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup1)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem4)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.emptySpaceItem14)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.emptySpaceItem9)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem33)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem5)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup2)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem3)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem10)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.emptySpaceItem3)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.emptySpaceItem7)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem11)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem12)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup5)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem13)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem15)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem16)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem17)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem18)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem19)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem20)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem21)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.emptySpaceItem8)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem22)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem23)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.simpleLabelItem1)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.simpleLabelItem2)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.simpleLabelItem3)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.simpleLabelItem4)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem24)).BeginInit(); + this.SuspendLayout(); + // + // layoutControl1 + // + this.layoutControl1.Controls.Add(this.BtnCbDefault); + this.layoutControl1.Controls.Add(this.BtnCbParamGet); + this.layoutControl1.Controls.Add(this.BtnCbParamSet); + this.layoutControl1.Controls.Add(this.TeCbThresholdNew); + this.layoutControl1.Controls.Add(this.TeCbThresholdCurr); + this.layoutControl1.Controls.Add(this.btnCanSpeedGet); + this.layoutControl1.Controls.Add(this.btnCanSpeedSet); + this.layoutControl1.Controls.Add(this.cbCanSpeedNew); + this.layoutControl1.Controls.Add(this.edCanSpeedCurr); + this.layoutControl1.Controls.Add(this.gbBmuAddrSet); + this.layoutControl1.Controls.Add(this.gbCvOffset); + this.layoutControl1.Controls.Add(this.gbForcedBalancing); + this.layoutControl1.Controls.Add(this.TeCbWindowCurr); + this.layoutControl1.Controls.Add(this.TeCbWindowNew); + this.layoutControl1.Controls.Add(this.TeCbMinCurr); + this.layoutControl1.Controls.Add(this.TeCbMinNew); + this.layoutControl1.Controls.Add(this.TeCbIntervalCurr); + this.layoutControl1.Controls.Add(this.TeCbIntervalNew); + this.layoutControl1.Dock = System.Windows.Forms.DockStyle.Fill; + this.layoutControl1.Location = new System.Drawing.Point(0, 0); + this.layoutControl1.Name = "layoutControl1"; + this.layoutControl1.OptionsCustomizationForm.DesignTimeCustomizationFormPositionAndSize = new System.Drawing.Rectangle(1025, 251, 679, 598); + this.layoutControl1.Root = this.layoutControlGroup1; + this.layoutControl1.Size = new System.Drawing.Size(779, 551); + this.layoutControl1.TabIndex = 0; + this.layoutControl1.Text = "layoutControl1"; + // + // BtnCbDefault + // + this.BtnCbDefault.Location = new System.Drawing.Point(303, 318); + this.BtnCbDefault.Name = "BtnCbDefault"; + this.BtnCbDefault.Size = new System.Drawing.Size(64, 34); + this.BtnCbDefault.StyleController = this.layoutControl1; + this.BtnCbDefault.TabIndex = 20; + this.BtnCbDefault.Text = "Default"; + this.BtnCbDefault.Click += new System.EventHandler(this.BtnCbDefault_Click); + // + // BtnCbParamGet + // + this.BtnCbParamGet.Location = new System.Drawing.Point(445, 318); + this.BtnCbParamGet.Name = "BtnCbParamGet"; + this.BtnCbParamGet.Size = new System.Drawing.Size(53, 34); + this.BtnCbParamGet.StyleController = this.layoutControl1; + this.BtnCbParamGet.TabIndex = 19; + this.BtnCbParamGet.Text = "Get"; + this.BtnCbParamGet.Click += new System.EventHandler(this.BtnCbParamGet_Click); + // + // BtnCbParamSet + // + this.BtnCbParamSet.Location = new System.Drawing.Point(502, 318); + this.BtnCbParamSet.Name = "BtnCbParamSet"; + this.BtnCbParamSet.Size = new System.Drawing.Size(53, 34); + this.BtnCbParamSet.StyleController = this.layoutControl1; + this.BtnCbParamSet.TabIndex = 18; + this.BtnCbParamSet.Text = "Set"; + this.BtnCbParamSet.Click += new System.EventHandler(this.BtnCbParamSet_Click); + // + // TeCbThresholdNew + // + this.TeCbThresholdNew.Location = new System.Drawing.Point(453, 206); + this.TeCbThresholdNew.Name = "TeCbThresholdNew"; + this.TeCbThresholdNew.Properties.Appearance.Font = new System.Drawing.Font("Tahoma", 11.25F); + this.TeCbThresholdNew.Properties.Appearance.Options.UseFont = true; + this.TeCbThresholdNew.Properties.Appearance.Options.UseTextOptions = true; + this.TeCbThresholdNew.Properties.Appearance.TextOptions.HAlignment = DevExpress.Utils.HorzAlignment.Far; + this.TeCbThresholdNew.Size = new System.Drawing.Size(72, 24); + this.TeCbThresholdNew.StyleController = this.layoutControl1; + this.TeCbThresholdNew.TabIndex = 17; + // + // TeCbThresholdCurr + // + this.TeCbThresholdCurr.Location = new System.Drawing.Point(380, 206); + this.TeCbThresholdCurr.Name = "TeCbThresholdCurr"; + this.TeCbThresholdCurr.Properties.Appearance.Font = new System.Drawing.Font("Tahoma", 11.25F); + this.TeCbThresholdCurr.Properties.Appearance.Options.UseFont = true; + this.TeCbThresholdCurr.Properties.Appearance.Options.UseTextOptions = true; + this.TeCbThresholdCurr.Properties.Appearance.TextOptions.HAlignment = DevExpress.Utils.HorzAlignment.Far; + this.TeCbThresholdCurr.Properties.ReadOnly = true; + this.TeCbThresholdCurr.Size = new System.Drawing.Size(69, 24); + this.TeCbThresholdCurr.StyleController = this.layoutControl1; + this.TeCbThresholdCurr.TabIndex = 16; + // + // btnCanSpeedGet + // + this.btnCanSpeedGet.Location = new System.Drawing.Point(134, 318); + this.btnCanSpeedGet.Name = "btnCanSpeedGet"; + this.btnCanSpeedGet.Size = new System.Drawing.Size(76, 33); + this.btnCanSpeedGet.StyleController = this.layoutControl1; + this.btnCanSpeedGet.TabIndex = 15; + this.btnCanSpeedGet.Text = "Get"; + this.btnCanSpeedGet.Click += new System.EventHandler(this.btnCanSpeedGet_Click); + // + // btnCanSpeedSet + // + this.btnCanSpeedSet.Location = new System.Drawing.Point(214, 318); + this.btnCanSpeedSet.Name = "btnCanSpeedSet"; + this.btnCanSpeedSet.Size = new System.Drawing.Size(76, 33); + this.btnCanSpeedSet.StyleController = this.layoutControl1; + this.btnCanSpeedSet.TabIndex = 14; + this.btnCanSpeedSet.Text = "Set"; + this.btnCanSpeedSet.Click += new System.EventHandler(this.btnCanSpeedSet_Click); + // + // cbCanSpeedNew + // + this.cbCanSpeedNew.Location = new System.Drawing.Point(190, 207); + this.cbCanSpeedNew.Name = "cbCanSpeedNew"; + this.cbCanSpeedNew.Properties.Appearance.Font = new System.Drawing.Font("Tahoma", 11.25F); + this.cbCanSpeedNew.Properties.Appearance.Options.UseFont = true; + this.cbCanSpeedNew.Properties.Appearance.Options.UseTextOptions = true; + this.cbCanSpeedNew.Properties.Appearance.TextOptions.HAlignment = DevExpress.Utils.HorzAlignment.Far; + this.cbCanSpeedNew.Properties.Buttons.AddRange(new DevExpress.XtraEditors.Controls.EditorButton[] { + new DevExpress.XtraEditors.Controls.EditorButton(DevExpress.XtraEditors.Controls.ButtonPredefines.Combo)}); + this.cbCanSpeedNew.Size = new System.Drawing.Size(100, 24); + this.cbCanSpeedNew.StyleController = this.layoutControl1; + this.cbCanSpeedNew.TabIndex = 13; + // + // edCanSpeedCurr + // + this.edCanSpeedCurr.Location = new System.Drawing.Point(81, 207); + this.edCanSpeedCurr.Name = "edCanSpeedCurr"; + this.edCanSpeedCurr.Properties.Appearance.Font = new System.Drawing.Font("Tahoma", 11.25F); + this.edCanSpeedCurr.Properties.Appearance.Options.UseFont = true; + this.edCanSpeedCurr.Properties.Appearance.Options.UseTextOptions = true; + this.edCanSpeedCurr.Properties.Appearance.TextOptions.HAlignment = DevExpress.Utils.HorzAlignment.Far; + this.edCanSpeedCurr.Properties.ReadOnly = true; + this.edCanSpeedCurr.Size = new System.Drawing.Size(105, 24); + this.edCanSpeedCurr.StyleController = this.layoutControl1; + this.edCanSpeedCurr.TabIndex = 12; + // + // gbBmuAddrSet + // + this.gbBmuAddrSet.Controls.Add(this.layoutControl9); + this.gbBmuAddrSet.Location = new System.Drawing.Point(563, 2); + this.gbBmuAddrSet.Name = "gbBmuAddrSet"; + this.gbBmuAddrSet.Size = new System.Drawing.Size(214, 175); + this.gbBmuAddrSet.TabIndex = 11; + this.gbBmuAddrSet.Text = "BMS Address"; + // + // layoutControl9 + // + this.layoutControl9.Controls.Add(this.edModuleNo); + this.layoutControl9.Controls.Add(this.edSystemAddrNew); + this.layoutControl9.Controls.Add(this.btnBmsAddrGet); + this.layoutControl9.Controls.Add(this.btnBmsAddrSet); + this.layoutControl9.Controls.Add(this.edSystemAddr); + this.layoutControl9.Dock = System.Windows.Forms.DockStyle.Fill; + this.layoutControl9.Location = new System.Drawing.Point(2, 23); + this.layoutControl9.Name = "layoutControl9"; + this.layoutControl9.OptionsCustomizationForm.DesignTimeCustomizationFormPositionAndSize = new System.Drawing.Rectangle(1050, 323, 618, 350); + this.layoutControl9.Root = this.layoutControlGroup9; + this.layoutControl9.Size = new System.Drawing.Size(210, 150); + this.layoutControl9.TabIndex = 0; + this.layoutControl9.Text = "layoutControl9"; + // + // edModuleNo + // + this.edModuleNo.Location = new System.Drawing.Point(135, 32); + this.edModuleNo.Name = "edModuleNo"; + this.edModuleNo.Properties.Appearance.Font = new System.Drawing.Font("Tahoma", 11.25F); + this.edModuleNo.Properties.Appearance.Options.UseFont = true; + this.edModuleNo.Properties.Appearance.Options.UseTextOptions = true; + this.edModuleNo.Properties.Appearance.TextOptions.HAlignment = DevExpress.Utils.HorzAlignment.Far; + this.edModuleNo.Size = new System.Drawing.Size(71, 24); + this.edModuleNo.StyleController = this.layoutControl9; + this.edModuleNo.TabIndex = 9; + this.edModuleNo.EditValueChanged += new System.EventHandler(this.edModuleNo_EditValueChanged); + // + // edSystemAddrNew + // + this.edSystemAddrNew.Location = new System.Drawing.Point(156, 4); + this.edSystemAddrNew.Name = "edSystemAddrNew"; + this.edSystemAddrNew.Properties.Appearance.Font = new System.Drawing.Font("Tahoma", 11.25F); + this.edSystemAddrNew.Properties.Appearance.Options.UseFont = true; + this.edSystemAddrNew.Properties.Appearance.Options.UseTextOptions = true; + this.edSystemAddrNew.Properties.Appearance.TextOptions.HAlignment = DevExpress.Utils.HorzAlignment.Far; + this.edSystemAddrNew.Size = new System.Drawing.Size(50, 24); + this.edSystemAddrNew.StyleController = this.layoutControl9; + this.edSystemAddrNew.TabIndex = 8; + // + // btnBmsAddrGet + // + this.btnBmsAddrGet.Location = new System.Drawing.Point(50, 115); + this.btnBmsAddrGet.Name = "btnBmsAddrGet"; + this.btnBmsAddrGet.Size = new System.Drawing.Size(76, 31); + this.btnBmsAddrGet.StyleController = this.layoutControl9; + this.btnBmsAddrGet.TabIndex = 7; + this.btnBmsAddrGet.Text = "Get"; + this.btnBmsAddrGet.Click += new System.EventHandler(this.btnBmsAddrGet_Click); + // + // btnBmsAddrSet + // + this.btnBmsAddrSet.Location = new System.Drawing.Point(130, 115); + this.btnBmsAddrSet.Name = "btnBmsAddrSet"; + this.btnBmsAddrSet.Size = new System.Drawing.Size(76, 31); + this.btnBmsAddrSet.StyleController = this.layoutControl9; + this.btnBmsAddrSet.TabIndex = 6; + this.btnBmsAddrSet.Text = "Set"; + this.btnBmsAddrSet.Click += new System.EventHandler(this.btnBmsAddrSet_Click); + // + // edSystemAddr + // + this.edSystemAddr.Location = new System.Drawing.Point(65, 4); + this.edSystemAddr.Name = "edSystemAddr"; + this.edSystemAddr.Properties.Appearance.Font = new System.Drawing.Font("Tahoma", 11.25F); + this.edSystemAddr.Properties.Appearance.Options.UseFont = true; + this.edSystemAddr.Properties.Appearance.Options.UseTextOptions = true; + this.edSystemAddr.Properties.Appearance.TextOptions.HAlignment = DevExpress.Utils.HorzAlignment.Far; + this.edSystemAddr.Properties.ReadOnly = true; + this.edSystemAddr.Size = new System.Drawing.Size(87, 24); + this.edSystemAddr.StyleController = this.layoutControl9; + this.edSystemAddr.TabIndex = 4; + // + // layoutControlGroup9 + // + this.layoutControlGroup9.CustomizationFormText = "layoutControlGroup9"; + this.layoutControlGroup9.EnableIndentsWithoutBorders = DevExpress.Utils.DefaultBoolean.True; + this.layoutControlGroup9.GroupBordersVisible = false; + this.layoutControlGroup9.Items.AddRange(new DevExpress.XtraLayout.BaseLayoutItem[] { + this.lcitemBmsId, + this.emptySpaceItem16, + this.emptySpaceItem17, + this.layoutControlItem34, + this.layoutControlItem36, + this.layoutControlItem6, + this.emptySpaceItem2, + this.layoutControlItem1, + this.lbModuleName}); + this.layoutControlGroup9.Name = "Root"; + this.layoutControlGroup9.Padding = new DevExpress.XtraLayout.Utils.Padding(2, 2, 2, 2); + this.layoutControlGroup9.Size = new System.Drawing.Size(210, 150); + this.layoutControlGroup9.TextVisible = false; + // + // lcitemBmsId + // + this.lcitemBmsId.Control = this.edSystemAddr; + this.lcitemBmsId.CustomizationFormText = "BMS ID"; + this.lcitemBmsId.Location = new System.Drawing.Point(0, 0); + this.lcitemBmsId.MinSize = new System.Drawing.Size(152, 28); + this.lcitemBmsId.Name = "lcitemBmsId"; + this.lcitemBmsId.Size = new System.Drawing.Size(152, 28); + this.lcitemBmsId.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.lcitemBmsId.Text = " Address"; + this.lcitemBmsId.TextAlignMode = DevExpress.XtraLayout.TextAlignModeItem.CustomSize; + this.lcitemBmsId.TextSize = new System.Drawing.Size(56, 20); + this.lcitemBmsId.TextToControlDistance = 5; + // + // emptySpaceItem16 + // + this.emptySpaceItem16.AllowHotTrack = false; + this.emptySpaceItem16.CustomizationFormText = "emptySpaceItem16"; + this.emptySpaceItem16.Location = new System.Drawing.Point(0, 56); + this.emptySpaceItem16.Name = "emptySpaceItem16"; + this.emptySpaceItem16.Size = new System.Drawing.Size(206, 55); + this.emptySpaceItem16.TextSize = new System.Drawing.Size(0, 0); + // + // emptySpaceItem17 + // + this.emptySpaceItem17.AllowHotTrack = false; + this.emptySpaceItem17.CustomizationFormText = "emptySpaceItem17"; + this.emptySpaceItem17.Location = new System.Drawing.Point(0, 111); + this.emptySpaceItem17.Name = "emptySpaceItem17"; + this.emptySpaceItem17.Size = new System.Drawing.Size(46, 35); + this.emptySpaceItem17.TextSize = new System.Drawing.Size(0, 0); + // + // layoutControlItem34 + // + this.layoutControlItem34.Control = this.btnBmsAddrSet; + this.layoutControlItem34.CustomizationFormText = "layoutControlItem34"; + this.layoutControlItem34.Location = new System.Drawing.Point(126, 111); + this.layoutControlItem34.MinSize = new System.Drawing.Size(80, 35); + this.layoutControlItem34.Name = "layoutControlItem34"; + this.layoutControlItem34.Size = new System.Drawing.Size(80, 35); + this.layoutControlItem34.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem34.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem34.TextVisible = false; + // + // layoutControlItem36 + // + this.layoutControlItem36.Control = this.btnBmsAddrGet; + this.layoutControlItem36.CustomizationFormText = "layoutControlItem36"; + this.layoutControlItem36.Location = new System.Drawing.Point(46, 111); + this.layoutControlItem36.MinSize = new System.Drawing.Size(80, 35); + this.layoutControlItem36.Name = "layoutControlItem36"; + this.layoutControlItem36.Size = new System.Drawing.Size(80, 35); + this.layoutControlItem36.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem36.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem36.TextVisible = false; + // + // layoutControlItem6 + // + this.layoutControlItem6.Control = this.edSystemAddrNew; + this.layoutControlItem6.CustomizationFormText = "layoutControlItem6"; + this.layoutControlItem6.Location = new System.Drawing.Point(152, 0); + this.layoutControlItem6.Name = "layoutControlItem6"; + this.layoutControlItem6.Size = new System.Drawing.Size(54, 28); + this.layoutControlItem6.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem6.TextVisible = false; + // + // emptySpaceItem2 + // + this.emptySpaceItem2.AllowHotTrack = false; + this.emptySpaceItem2.Location = new System.Drawing.Point(0, 28); + this.emptySpaceItem2.Name = "emptySpaceItem2"; + this.emptySpaceItem2.Size = new System.Drawing.Size(69, 28); + this.emptySpaceItem2.TextSize = new System.Drawing.Size(0, 0); + // + // layoutControlItem1 + // + this.layoutControlItem1.Control = this.edModuleNo; + this.layoutControlItem1.Location = new System.Drawing.Point(131, 28); + this.layoutControlItem1.Name = "layoutControlItem1"; + this.layoutControlItem1.Size = new System.Drawing.Size(75, 28); + this.layoutControlItem1.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem1.TextVisible = false; + // + // lbModuleName + // + this.lbModuleName.AllowHotTrack = false; + this.lbModuleName.Location = new System.Drawing.Point(69, 28); + this.lbModuleName.MinSize = new System.Drawing.Size(60, 18); + this.lbModuleName.Name = "lbModuleName"; + this.lbModuleName.Size = new System.Drawing.Size(62, 28); + this.lbModuleName.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.lbModuleName.Text = "Module ID"; + this.lbModuleName.TextSize = new System.Drawing.Size(55, 14); + // + // gbCvOffset + // + this.gbCvOffset.Controls.Add(this.layoutControl4); + this.gbCvOffset.Location = new System.Drawing.Point(299, 2); + this.gbCvOffset.Name = "gbCvOffset"; + this.gbCvOffset.Size = new System.Drawing.Size(260, 175); + this.gbCvOffset.TabIndex = 6; + this.gbCvOffset.Text = "Cell Voltage Offset"; + // + // layoutControl4 + // + this.layoutControl4.Controls.Add(this.edCvOffsetNew2); + this.layoutControl4.Controls.Add(this.edCvOffset2); + this.layoutControl4.Controls.Add(this.btnBpGet); + this.layoutControl4.Controls.Add(this.btnBpSet); + this.layoutControl4.Controls.Add(this.edCvOffsetNew1); + this.layoutControl4.Controls.Add(this.edCvOffset1); + this.layoutControl4.Dock = System.Windows.Forms.DockStyle.Fill; + this.layoutControl4.Location = new System.Drawing.Point(2, 23); + this.layoutControl4.Name = "layoutControl4"; + this.layoutControl4.OptionsCustomizationForm.DesignTimeCustomizationFormPositionAndSize = new System.Drawing.Rectangle(1109, 165, 250, 350); + this.layoutControl4.Root = this.layoutControlGroup4; + this.layoutControl4.Size = new System.Drawing.Size(256, 150); + this.layoutControl4.TabIndex = 0; + this.layoutControl4.Text = "layoutControl4"; + // + // edCvOffsetNew2 + // + this.edCvOffsetNew2.Location = new System.Drawing.Point(158, 32); + this.edCvOffsetNew2.Name = "edCvOffsetNew2"; + this.edCvOffsetNew2.Properties.Appearance.Font = new System.Drawing.Font("Tahoma", 11.25F); + this.edCvOffsetNew2.Properties.Appearance.Options.UseFont = true; + this.edCvOffsetNew2.Properties.Appearance.Options.UseTextOptions = true; + this.edCvOffsetNew2.Properties.Appearance.TextOptions.HAlignment = DevExpress.Utils.HorzAlignment.Far; + this.edCvOffsetNew2.Size = new System.Drawing.Size(94, 24); + this.edCvOffsetNew2.StyleController = this.layoutControl4; + this.edCvOffsetNew2.TabIndex = 13; + // + // edCvOffset2 + // + this.edCvOffset2.Location = new System.Drawing.Point(70, 32); + this.edCvOffset2.Name = "edCvOffset2"; + this.edCvOffset2.Properties.Appearance.Font = new System.Drawing.Font("Tahoma", 11.25F); + this.edCvOffset2.Properties.Appearance.Options.UseFont = true; + this.edCvOffset2.Properties.Appearance.Options.UseTextOptions = true; + this.edCvOffset2.Properties.Appearance.TextOptions.HAlignment = DevExpress.Utils.HorzAlignment.Far; + this.edCvOffset2.Properties.ReadOnly = true; + this.edCvOffset2.Size = new System.Drawing.Size(84, 24); + this.edCvOffset2.StyleController = this.layoutControl4; + this.edCvOffset2.TabIndex = 12; + // + // btnBpGet + // + this.btnBpGet.Location = new System.Drawing.Point(88, 115); + this.btnBpGet.Name = "btnBpGet"; + this.btnBpGet.Size = new System.Drawing.Size(77, 31); + this.btnBpGet.StyleController = this.layoutControl4; + this.btnBpGet.TabIndex = 11; + this.btnBpGet.Text = "Get"; + this.btnBpGet.Click += new System.EventHandler(this.btnBpGet_Click); + // + // btnBpSet + // + this.btnBpSet.Location = new System.Drawing.Point(169, 115); + this.btnBpSet.Name = "btnBpSet"; + this.btnBpSet.Size = new System.Drawing.Size(83, 31); + this.btnBpSet.StyleController = this.layoutControl4; + this.btnBpSet.TabIndex = 10; + this.btnBpSet.Text = "Set"; + this.btnBpSet.Click += new System.EventHandler(this.btnBpSet_Click); + // + // edCvOffsetNew1 + // + this.edCvOffsetNew1.Location = new System.Drawing.Point(158, 4); + this.edCvOffsetNew1.Name = "edCvOffsetNew1"; + this.edCvOffsetNew1.Properties.Appearance.Font = new System.Drawing.Font("Tahoma", 11.25F); + this.edCvOffsetNew1.Properties.Appearance.Options.UseFont = true; + this.edCvOffsetNew1.Properties.Appearance.Options.UseTextOptions = true; + this.edCvOffsetNew1.Properties.Appearance.TextOptions.HAlignment = DevExpress.Utils.HorzAlignment.Far; + this.edCvOffsetNew1.Size = new System.Drawing.Size(94, 24); + this.edCvOffsetNew1.StyleController = this.layoutControl4; + this.edCvOffsetNew1.TabIndex = 9; + this.edCvOffsetNew1.KeyPress += new System.Windows.Forms.KeyPressEventHandler(this.TextBox_KeyPress); + // + // edCvOffset1 + // + this.edCvOffset1.Location = new System.Drawing.Point(70, 4); + this.edCvOffset1.Name = "edCvOffset1"; + this.edCvOffset1.Properties.Appearance.Font = new System.Drawing.Font("Tahoma", 11.25F); + this.edCvOffset1.Properties.Appearance.Options.UseFont = true; + this.edCvOffset1.Properties.Appearance.Options.UseTextOptions = true; + this.edCvOffset1.Properties.Appearance.TextOptions.HAlignment = DevExpress.Utils.HorzAlignment.Far; + this.edCvOffset1.Properties.ReadOnly = true; + this.edCvOffset1.Size = new System.Drawing.Size(84, 24); + this.edCvOffset1.StyleController = this.layoutControl4; + this.edCvOffset1.TabIndex = 6; + // + // layoutControlGroup4 + // + this.layoutControlGroup4.CustomizationFormText = "layoutControlGroup4"; + this.layoutControlGroup4.EnableIndentsWithoutBorders = DevExpress.Utils.DefaultBoolean.True; + this.layoutControlGroup4.GroupBordersVisible = false; + this.layoutControlGroup4.Items.AddRange(new DevExpress.XtraLayout.BaseLayoutItem[] { + this.lcItemDCvOffset1, + this.layoutControlItem7, + this.emptySpaceItem4, + this.emptySpaceItem6, + this.layoutControlItem9, + this.layoutControlItem14, + this.lcItemDCvOffset2, + this.layoutControlItem2}); + this.layoutControlGroup4.Name = "Root"; + this.layoutControlGroup4.Padding = new DevExpress.XtraLayout.Utils.Padding(2, 2, 2, 2); + this.layoutControlGroup4.Size = new System.Drawing.Size(256, 150); + this.layoutControlGroup4.TextVisible = false; + // + // lcItemDCvOffset1 + // + this.lcItemDCvOffset1.Control = this.edCvOffset1; + this.lcItemDCvOffset1.CustomizationFormText = "Capacity"; + this.lcItemDCvOffset1.Location = new System.Drawing.Point(0, 0); + this.lcItemDCvOffset1.MaxSize = new System.Drawing.Size(154, 28); + this.lcItemDCvOffset1.MinSize = new System.Drawing.Size(154, 28); + this.lcItemDCvOffset1.Name = "lcItemDCvOffset1"; + this.lcItemDCvOffset1.Size = new System.Drawing.Size(154, 28); + this.lcItemDCvOffset1.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.lcItemDCvOffset1.Text = "CV Low "; + this.lcItemDCvOffset1.TextSize = new System.Drawing.Size(54, 14); + // + // layoutControlItem7 + // + this.layoutControlItem7.Control = this.edCvOffsetNew1; + this.layoutControlItem7.CustomizationFormText = "layoutControlItem7"; + this.layoutControlItem7.Location = new System.Drawing.Point(154, 0); + this.layoutControlItem7.MaxSize = new System.Drawing.Size(98, 28); + this.layoutControlItem7.MinSize = new System.Drawing.Size(98, 28); + this.layoutControlItem7.Name = "layoutControlItem7"; + this.layoutControlItem7.Size = new System.Drawing.Size(98, 28); + this.layoutControlItem7.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem7.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem7.TextVisible = false; + // + // emptySpaceItem4 + // + this.emptySpaceItem4.AllowHotTrack = false; + this.emptySpaceItem4.CustomizationFormText = "emptySpaceItem4"; + this.emptySpaceItem4.Location = new System.Drawing.Point(0, 56); + this.emptySpaceItem4.MaxSize = new System.Drawing.Size(252, 0); + this.emptySpaceItem4.MinSize = new System.Drawing.Size(252, 10); + this.emptySpaceItem4.Name = "emptySpaceItem4"; + this.emptySpaceItem4.Size = new System.Drawing.Size(252, 55); + this.emptySpaceItem4.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.emptySpaceItem4.TextSize = new System.Drawing.Size(0, 0); + // + // emptySpaceItem6 + // + this.emptySpaceItem6.AllowHotTrack = false; + this.emptySpaceItem6.CustomizationFormText = "emptySpaceItem6"; + this.emptySpaceItem6.Location = new System.Drawing.Point(0, 111); + this.emptySpaceItem6.Name = "emptySpaceItem6"; + this.emptySpaceItem6.Size = new System.Drawing.Size(84, 35); + this.emptySpaceItem6.TextSize = new System.Drawing.Size(0, 0); + // + // layoutControlItem9 + // + this.layoutControlItem9.Control = this.btnBpSet; + this.layoutControlItem9.CustomizationFormText = "layoutControlItem9"; + this.layoutControlItem9.Location = new System.Drawing.Point(165, 111); + this.layoutControlItem9.MinSize = new System.Drawing.Size(85, 26); + this.layoutControlItem9.Name = "layoutControlItem9"; + this.layoutControlItem9.Size = new System.Drawing.Size(87, 35); + this.layoutControlItem9.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem9.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem9.TextVisible = false; + // + // layoutControlItem14 + // + this.layoutControlItem14.Control = this.btnBpGet; + this.layoutControlItem14.CustomizationFormText = "layoutControlItem14"; + this.layoutControlItem14.Location = new System.Drawing.Point(84, 111); + this.layoutControlItem14.MinSize = new System.Drawing.Size(80, 26); + this.layoutControlItem14.Name = "layoutControlItem14"; + this.layoutControlItem14.Size = new System.Drawing.Size(81, 35); + this.layoutControlItem14.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem14.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem14.TextVisible = false; + // + // lcItemDCvOffset2 + // + this.lcItemDCvOffset2.Control = this.edCvOffset2; + this.lcItemDCvOffset2.Location = new System.Drawing.Point(0, 28); + this.lcItemDCvOffset2.Name = "lcItemDCvOffset2"; + this.lcItemDCvOffset2.Size = new System.Drawing.Size(154, 28); + this.lcItemDCvOffset2.Text = "CV High"; + this.lcItemDCvOffset2.TextSize = new System.Drawing.Size(54, 14); + // + // layoutControlItem2 + // + this.layoutControlItem2.Control = this.edCvOffsetNew2; + this.layoutControlItem2.Location = new System.Drawing.Point(154, 28); + this.layoutControlItem2.Name = "layoutControlItem2"; + this.layoutControlItem2.Size = new System.Drawing.Size(98, 28); + this.layoutControlItem2.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem2.TextVisible = false; + // + // gbForcedBalancing + // + this.gbForcedBalancing.Controls.Add(this.layoutControl3); + this.gbForcedBalancing.Location = new System.Drawing.Point(2, 2); + this.gbForcedBalancing.Name = "gbForcedBalancing"; + this.gbForcedBalancing.Size = new System.Drawing.Size(293, 175); + this.gbForcedBalancing.TabIndex = 5; + this.gbForcedBalancing.Text = "Forced Balancing"; + // + // layoutControl3 + // + this.layoutControl3.Controls.Add(this.btnFcSet); + this.layoutControl3.Controls.Add(this.CbBalEnable); + this.layoutControl3.Controls.Add(this.cbFcCellNo); + this.layoutControl3.Controls.Add(this.cbFcControl); + this.layoutControl3.Controls.Add(this.CbBalMode); + this.layoutControl3.Dock = System.Windows.Forms.DockStyle.Fill; + this.layoutControl3.Location = new System.Drawing.Point(2, 23); + this.layoutControl3.Name = "layoutControl3"; + this.layoutControl3.OptionsCustomizationForm.DesignTimeCustomizationFormPositionAndSize = new System.Drawing.Rectangle(1032, 174, 727, 350); + this.layoutControl3.Root = this.layoutControlGroup3; + this.layoutControl3.Size = new System.Drawing.Size(289, 150); + this.layoutControl3.TabIndex = 0; + this.layoutControl3.Text = "layoutControl3"; + // + // btnFcSet + // + this.btnFcSet.Location = new System.Drawing.Point(209, 116); + this.btnFcSet.Name = "btnFcSet"; + this.btnFcSet.Size = new System.Drawing.Size(76, 30); + this.btnFcSet.StyleController = this.layoutControl3; + this.btnFcSet.TabIndex = 10; + this.btnFcSet.Text = "Set"; + this.btnFcSet.Click += new System.EventHandler(this.btnFcSet_Click); + // + // CbBalEnable + // + this.CbBalEnable.Location = new System.Drawing.Point(59, 60); + this.CbBalEnable.Name = "CbBalEnable"; + this.CbBalEnable.Properties.Appearance.Font = new System.Drawing.Font("Tahoma", 11.25F); + this.CbBalEnable.Properties.Appearance.Options.UseFont = true; + this.CbBalEnable.Properties.Appearance.Options.UseTextOptions = true; + this.CbBalEnable.Properties.Appearance.TextOptions.HAlignment = DevExpress.Utils.HorzAlignment.Far; + this.CbBalEnable.Properties.Buttons.AddRange(new DevExpress.XtraEditors.Controls.EditorButton[] { + new DevExpress.XtraEditors.Controls.EditorButton(DevExpress.XtraEditors.Controls.ButtonPredefines.Combo)}); + this.CbBalEnable.Size = new System.Drawing.Size(226, 24); + this.CbBalEnable.StyleController = this.layoutControl3; + this.CbBalEnable.TabIndex = 9; + // + // cbFcCellNo + // + this.cbFcCellNo.Location = new System.Drawing.Point(59, 32); + this.cbFcCellNo.Name = "cbFcCellNo"; + this.cbFcCellNo.Properties.Appearance.Font = new System.Drawing.Font("Tahoma", 11.25F); + this.cbFcCellNo.Properties.Appearance.Options.UseFont = true; + this.cbFcCellNo.Properties.Appearance.Options.UseTextOptions = true; + this.cbFcCellNo.Properties.Appearance.TextOptions.HAlignment = DevExpress.Utils.HorzAlignment.Far; + this.cbFcCellNo.Properties.Buttons.AddRange(new DevExpress.XtraEditors.Controls.EditorButton[] { + new DevExpress.XtraEditors.Controls.EditorButton(DevExpress.XtraEditors.Controls.ButtonPredefines.Combo)}); + this.cbFcCellNo.Size = new System.Drawing.Size(226, 24); + this.cbFcCellNo.StyleController = this.layoutControl3; + this.cbFcCellNo.TabIndex = 7; + // + // cbFcControl + // + this.cbFcControl.Location = new System.Drawing.Point(59, 4); + this.cbFcControl.Name = "cbFcControl"; + this.cbFcControl.Properties.Appearance.Font = new System.Drawing.Font("Tahoma", 11.25F); + this.cbFcControl.Properties.Appearance.Options.UseFont = true; + this.cbFcControl.Properties.Appearance.Options.UseTextOptions = true; + this.cbFcControl.Properties.Appearance.TextOptions.HAlignment = DevExpress.Utils.HorzAlignment.Far; + this.cbFcControl.Properties.Buttons.AddRange(new DevExpress.XtraEditors.Controls.EditorButton[] { + new DevExpress.XtraEditors.Controls.EditorButton(DevExpress.XtraEditors.Controls.ButtonPredefines.Combo)}); + this.cbFcControl.Size = new System.Drawing.Size(226, 24); + this.cbFcControl.StyleController = this.layoutControl3; + this.cbFcControl.TabIndex = 5; + // + // CbBalMode + // + this.CbBalMode.Location = new System.Drawing.Point(59, 88); + this.CbBalMode.Name = "CbBalMode"; + this.CbBalMode.Properties.Appearance.Font = new System.Drawing.Font("Tahoma", 11.25F); + this.CbBalMode.Properties.Appearance.Options.UseFont = true; + this.CbBalMode.Properties.Appearance.Options.UseTextOptions = true; + this.CbBalMode.Properties.Appearance.TextOptions.HAlignment = DevExpress.Utils.HorzAlignment.Far; + this.CbBalMode.Properties.Buttons.AddRange(new DevExpress.XtraEditors.Controls.EditorButton[] { + new DevExpress.XtraEditors.Controls.EditorButton(DevExpress.XtraEditors.Controls.ButtonPredefines.Combo)}); + this.CbBalMode.Size = new System.Drawing.Size(226, 24); + this.CbBalMode.StyleController = this.layoutControl3; + this.CbBalMode.TabIndex = 9; + // + // layoutControlGroup3 + // + this.layoutControlGroup3.CustomizationFormText = "layoutControlGroup3"; + this.layoutControlGroup3.EnableIndentsWithoutBorders = DevExpress.Utils.DefaultBoolean.True; + this.layoutControlGroup3.GroupBordersVisible = false; + this.layoutControlGroup3.Items.AddRange(new DevExpress.XtraLayout.BaseLayoutItem[] { + this.lcitemFcControl, + this.lcitemFcCellNo, + this.lcitemFcAutoC, + this.layoutControlItem8, + this.emptySpaceItem1, + this.lcitemFcAutoC1}); + this.layoutControlGroup3.Name = "Root"; + this.layoutControlGroup3.Padding = new DevExpress.XtraLayout.Utils.Padding(2, 2, 2, 2); + this.layoutControlGroup3.Size = new System.Drawing.Size(289, 150); + this.layoutControlGroup3.TextVisible = false; + // + // lcitemFcControl + // + this.lcitemFcControl.Control = this.cbFcControl; + this.lcitemFcControl.CustomizationFormText = "Control"; + this.lcitemFcControl.Location = new System.Drawing.Point(0, 0); + this.lcitemFcControl.MinSize = new System.Drawing.Size(106, 28); + this.lcitemFcControl.Name = "lcitemFcControl"; + this.lcitemFcControl.Size = new System.Drawing.Size(285, 28); + this.lcitemFcControl.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.lcitemFcControl.Text = "Control"; + this.lcitemFcControl.TextAlignMode = DevExpress.XtraLayout.TextAlignModeItem.CustomSize; + this.lcitemFcControl.TextSize = new System.Drawing.Size(50, 14); + this.lcitemFcControl.TextToControlDistance = 5; + // + // lcitemFcCellNo + // + this.lcitemFcCellNo.Control = this.cbFcCellNo; + this.lcitemFcCellNo.CustomizationFormText = "Cell No."; + this.lcitemFcCellNo.Location = new System.Drawing.Point(0, 28); + this.lcitemFcCellNo.MinSize = new System.Drawing.Size(163, 28); + this.lcitemFcCellNo.Name = "lcitemFcCellNo"; + this.lcitemFcCellNo.Size = new System.Drawing.Size(285, 28); + this.lcitemFcCellNo.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.lcitemFcCellNo.Text = "Cell No."; + this.lcitemFcCellNo.TextAlignMode = DevExpress.XtraLayout.TextAlignModeItem.CustomSize; + this.lcitemFcCellNo.TextSize = new System.Drawing.Size(50, 14); + this.lcitemFcCellNo.TextToControlDistance = 5; + // + // lcitemFcAutoC + // + this.lcitemFcAutoC.Control = this.CbBalEnable; + this.lcitemFcAutoC.CustomizationFormText = "Enable"; + this.lcitemFcAutoC.Location = new System.Drawing.Point(0, 56); + this.lcitemFcAutoC.MinSize = new System.Drawing.Size(163, 28); + this.lcitemFcAutoC.Name = "lcitemFcAutoC"; + this.lcitemFcAutoC.Size = new System.Drawing.Size(285, 28); + this.lcitemFcAutoC.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.lcitemFcAutoC.Text = "Enable"; + this.lcitemFcAutoC.TextAlignMode = DevExpress.XtraLayout.TextAlignModeItem.CustomSize; + this.lcitemFcAutoC.TextSize = new System.Drawing.Size(50, 14); + this.lcitemFcAutoC.TextToControlDistance = 5; + // + // layoutControlItem8 + // + this.layoutControlItem8.Control = this.btnFcSet; + this.layoutControlItem8.CustomizationFormText = "layoutControlItem8"; + this.layoutControlItem8.Location = new System.Drawing.Point(205, 112); + this.layoutControlItem8.MinSize = new System.Drawing.Size(80, 26); + this.layoutControlItem8.Name = "layoutControlItem8"; + this.layoutControlItem8.Size = new System.Drawing.Size(80, 34); + this.layoutControlItem8.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem8.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem8.TextVisible = false; + // + // emptySpaceItem1 + // + this.emptySpaceItem1.AllowHotTrack = false; + this.emptySpaceItem1.CustomizationFormText = "emptySpaceItem1"; + this.emptySpaceItem1.Location = new System.Drawing.Point(0, 112); + this.emptySpaceItem1.Name = "emptySpaceItem1"; + this.emptySpaceItem1.Size = new System.Drawing.Size(205, 34); + this.emptySpaceItem1.TextSize = new System.Drawing.Size(0, 0); + // + // lcitemFcAutoC1 + // + this.lcitemFcAutoC1.Control = this.CbBalMode; + this.lcitemFcAutoC1.ControlAlignment = System.Drawing.ContentAlignment.TopLeft; + this.lcitemFcAutoC1.CustomizationFormText = "Mode"; + this.lcitemFcAutoC1.Location = new System.Drawing.Point(0, 84); + this.lcitemFcAutoC1.MinSize = new System.Drawing.Size(117, 28); + this.lcitemFcAutoC1.Name = "lcitemFcAutoC1"; + this.lcitemFcAutoC1.Size = new System.Drawing.Size(285, 28); + this.lcitemFcAutoC1.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.lcitemFcAutoC1.Text = "Mode"; + this.lcitemFcAutoC1.TextAlignMode = DevExpress.XtraLayout.TextAlignModeItem.CustomSize; + this.lcitemFcAutoC1.TextSize = new System.Drawing.Size(50, 14); + this.lcitemFcAutoC1.TextToControlDistance = 5; + // + // TeCbWindowCurr + // + this.TeCbWindowCurr.Location = new System.Drawing.Point(380, 234); + this.TeCbWindowCurr.Name = "TeCbWindowCurr"; + this.TeCbWindowCurr.Properties.Appearance.Font = new System.Drawing.Font("Tahoma", 11.25F); + this.TeCbWindowCurr.Properties.Appearance.Options.UseFont = true; + this.TeCbWindowCurr.Properties.Appearance.Options.UseTextOptions = true; + this.TeCbWindowCurr.Properties.Appearance.TextOptions.HAlignment = DevExpress.Utils.HorzAlignment.Far; + this.TeCbWindowCurr.Properties.ReadOnly = true; + this.TeCbWindowCurr.Size = new System.Drawing.Size(69, 24); + this.TeCbWindowCurr.StyleController = this.layoutControl1; + this.TeCbWindowCurr.TabIndex = 16; + // + // TeCbWindowNew + // + this.TeCbWindowNew.Location = new System.Drawing.Point(453, 234); + this.TeCbWindowNew.Name = "TeCbWindowNew"; + this.TeCbWindowNew.Properties.Appearance.Font = new System.Drawing.Font("Tahoma", 11.25F); + this.TeCbWindowNew.Properties.Appearance.Options.UseFont = true; + this.TeCbWindowNew.Properties.Appearance.Options.UseTextOptions = true; + this.TeCbWindowNew.Properties.Appearance.TextOptions.HAlignment = DevExpress.Utils.HorzAlignment.Far; + this.TeCbWindowNew.Size = new System.Drawing.Size(72, 24); + this.TeCbWindowNew.StyleController = this.layoutControl1; + this.TeCbWindowNew.TabIndex = 17; + // + // TeCbMinCurr + // + this.TeCbMinCurr.Location = new System.Drawing.Point(380, 262); + this.TeCbMinCurr.Name = "TeCbMinCurr"; + this.TeCbMinCurr.Properties.Appearance.Font = new System.Drawing.Font("Tahoma", 11.25F); + this.TeCbMinCurr.Properties.Appearance.Options.UseFont = true; + this.TeCbMinCurr.Properties.Appearance.Options.UseTextOptions = true; + this.TeCbMinCurr.Properties.Appearance.TextOptions.HAlignment = DevExpress.Utils.HorzAlignment.Far; + this.TeCbMinCurr.Properties.ReadOnly = true; + this.TeCbMinCurr.Size = new System.Drawing.Size(69, 24); + this.TeCbMinCurr.StyleController = this.layoutControl1; + this.TeCbMinCurr.TabIndex = 16; + // + // TeCbMinNew + // + this.TeCbMinNew.Location = new System.Drawing.Point(453, 262); + this.TeCbMinNew.Name = "TeCbMinNew"; + this.TeCbMinNew.Properties.Appearance.Font = new System.Drawing.Font("Tahoma", 11.25F); + this.TeCbMinNew.Properties.Appearance.Options.UseFont = true; + this.TeCbMinNew.Properties.Appearance.Options.UseTextOptions = true; + this.TeCbMinNew.Properties.Appearance.TextOptions.HAlignment = DevExpress.Utils.HorzAlignment.Far; + this.TeCbMinNew.Size = new System.Drawing.Size(72, 24); + this.TeCbMinNew.StyleController = this.layoutControl1; + this.TeCbMinNew.TabIndex = 17; + // + // TeCbIntervalCurr + // + this.TeCbIntervalCurr.Location = new System.Drawing.Point(380, 290); + this.TeCbIntervalCurr.Name = "TeCbIntervalCurr"; + this.TeCbIntervalCurr.Properties.Appearance.Font = new System.Drawing.Font("Tahoma", 11.25F); + this.TeCbIntervalCurr.Properties.Appearance.Options.UseFont = true; + this.TeCbIntervalCurr.Properties.Appearance.Options.UseTextOptions = true; + this.TeCbIntervalCurr.Properties.Appearance.TextOptions.HAlignment = DevExpress.Utils.HorzAlignment.Far; + this.TeCbIntervalCurr.Properties.ReadOnly = true; + this.TeCbIntervalCurr.Size = new System.Drawing.Size(69, 24); + this.TeCbIntervalCurr.StyleController = this.layoutControl1; + this.TeCbIntervalCurr.TabIndex = 16; + // + // TeCbIntervalNew + // + this.TeCbIntervalNew.Location = new System.Drawing.Point(453, 290); + this.TeCbIntervalNew.Name = "TeCbIntervalNew"; + this.TeCbIntervalNew.Properties.Appearance.Font = new System.Drawing.Font("Tahoma", 11.25F); + this.TeCbIntervalNew.Properties.Appearance.Options.UseFont = true; + this.TeCbIntervalNew.Properties.Appearance.Options.UseTextOptions = true; + this.TeCbIntervalNew.Properties.Appearance.TextOptions.HAlignment = DevExpress.Utils.HorzAlignment.Far; + this.TeCbIntervalNew.Size = new System.Drawing.Size(72, 24); + this.TeCbIntervalNew.StyleController = this.layoutControl1; + this.TeCbIntervalNew.TabIndex = 17; + // + // layoutControlGroup1 + // + this.layoutControlGroup1.CustomizationFormText = "layoutControlGroup1"; + this.layoutControlGroup1.EnableIndentsWithoutBorders = DevExpress.Utils.DefaultBoolean.True; + this.layoutControlGroup1.GroupBordersVisible = false; + this.layoutControlGroup1.Items.AddRange(new DevExpress.XtraLayout.BaseLayoutItem[] { + this.layoutControlItem4, + this.emptySpaceItem14, + this.emptySpaceItem9, + this.layoutControlItem33, + this.layoutControlItem5, + this.layoutControlGroup2, + this.layoutControlGroup5}); + this.layoutControlGroup1.Name = "Root"; + this.layoutControlGroup1.Padding = new DevExpress.XtraLayout.Utils.Padding(0, 0, 0, 0); + this.layoutControlGroup1.Size = new System.Drawing.Size(779, 551); + this.layoutControlGroup1.TextVisible = false; + // + // layoutControlItem4 + // + this.layoutControlItem4.Control = this.gbForcedBalancing; + this.layoutControlItem4.CustomizationFormText = "layoutControlItem4"; + this.layoutControlItem4.Location = new System.Drawing.Point(0, 0); + this.layoutControlItem4.MaxSize = new System.Drawing.Size(0, 179); + this.layoutControlItem4.MinSize = new System.Drawing.Size(252, 179); + this.layoutControlItem4.Name = "layoutControlItem4"; + this.layoutControlItem4.Size = new System.Drawing.Size(297, 179); + this.layoutControlItem4.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem4.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem4.TextVisible = false; + // + // emptySpaceItem14 + // + this.emptySpaceItem14.AllowHotTrack = false; + this.emptySpaceItem14.Location = new System.Drawing.Point(0, 358); + this.emptySpaceItem14.Name = "emptySpaceItem14"; + this.emptySpaceItem14.Size = new System.Drawing.Size(779, 193); + this.emptySpaceItem14.TextSize = new System.Drawing.Size(0, 0); + // + // emptySpaceItem9 + // + this.emptySpaceItem9.AllowHotTrack = false; + this.emptySpaceItem9.Location = new System.Drawing.Point(561, 179); + this.emptySpaceItem9.Name = "emptySpaceItem9"; + this.emptySpaceItem9.Size = new System.Drawing.Size(218, 179); + this.emptySpaceItem9.TextSize = new System.Drawing.Size(0, 0); + // + // layoutControlItem33 + // + this.layoutControlItem33.Control = this.gbBmuAddrSet; + this.layoutControlItem33.CustomizationFormText = "layoutControlItem33"; + this.layoutControlItem33.Location = new System.Drawing.Point(561, 0); + this.layoutControlItem33.Name = "layoutControlItem33"; + this.layoutControlItem33.Size = new System.Drawing.Size(218, 179); + this.layoutControlItem33.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem33.TextVisible = false; + // + // layoutControlItem5 + // + this.layoutControlItem5.Control = this.gbCvOffset; + this.layoutControlItem5.CustomizationFormText = "layoutControlItem5"; + this.layoutControlItem5.Location = new System.Drawing.Point(297, 0); + this.layoutControlItem5.MaxSize = new System.Drawing.Size(264, 0); + this.layoutControlItem5.MinSize = new System.Drawing.Size(264, 24); + this.layoutControlItem5.Name = "layoutControlItem5"; + this.layoutControlItem5.Size = new System.Drawing.Size(264, 179); + this.layoutControlItem5.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem5.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem5.TextVisible = false; + // + // layoutControlGroup2 + // + this.layoutControlGroup2.Items.AddRange(new DevExpress.XtraLayout.BaseLayoutItem[] { + this.layoutControlItem3, + this.layoutControlItem10, + this.emptySpaceItem3, + this.emptySpaceItem7, + this.layoutControlItem11, + this.layoutControlItem12}); + this.layoutControlGroup2.Location = new System.Drawing.Point(0, 179); + this.layoutControlGroup2.Name = "layoutControlGroup2"; + this.layoutControlGroup2.Padding = new DevExpress.XtraLayout.Utils.Padding(2, 2, 2, 2); + this.layoutControlGroup2.Size = new System.Drawing.Size(297, 179); + this.layoutControlGroup2.Text = "CAN Config"; + // + // layoutControlItem3 + // + this.layoutControlItem3.Control = this.edCanSpeedCurr; + this.layoutControlItem3.Location = new System.Drawing.Point(0, 0); + this.layoutControlItem3.MaxSize = new System.Drawing.Size(0, 29); + this.layoutControlItem3.MinSize = new System.Drawing.Size(120, 29); + this.layoutControlItem3.Name = "layoutControlItem3"; + this.layoutControlItem3.Size = new System.Drawing.Size(183, 29); + this.layoutControlItem3.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem3.Text = "CAN Speed"; + this.layoutControlItem3.TextSize = new System.Drawing.Size(62, 14); + // + // layoutControlItem10 + // + this.layoutControlItem10.Control = this.cbCanSpeedNew; + this.layoutControlItem10.Location = new System.Drawing.Point(183, 0); + this.layoutControlItem10.MinSize = new System.Drawing.Size(50, 28); + this.layoutControlItem10.Name = "layoutControlItem10"; + this.layoutControlItem10.Size = new System.Drawing.Size(104, 29); + this.layoutControlItem10.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem10.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem10.TextVisible = false; + // + // emptySpaceItem3 + // + this.emptySpaceItem3.AllowHotTrack = false; + this.emptySpaceItem3.Location = new System.Drawing.Point(0, 29); + this.emptySpaceItem3.Name = "emptySpaceItem3"; + this.emptySpaceItem3.Size = new System.Drawing.Size(287, 82); + this.emptySpaceItem3.TextSize = new System.Drawing.Size(0, 0); + // + // emptySpaceItem7 + // + this.emptySpaceItem7.AllowHotTrack = false; + this.emptySpaceItem7.Location = new System.Drawing.Point(0, 111); + this.emptySpaceItem7.Name = "emptySpaceItem7"; + this.emptySpaceItem7.Size = new System.Drawing.Size(127, 37); + this.emptySpaceItem7.TextSize = new System.Drawing.Size(0, 0); + // + // layoutControlItem11 + // + this.layoutControlItem11.Control = this.btnCanSpeedSet; + this.layoutControlItem11.Location = new System.Drawing.Point(207, 111); + this.layoutControlItem11.MaxSize = new System.Drawing.Size(0, 37); + this.layoutControlItem11.MinSize = new System.Drawing.Size(80, 37); + this.layoutControlItem11.Name = "layoutControlItem11"; + this.layoutControlItem11.Size = new System.Drawing.Size(80, 37); + this.layoutControlItem11.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem11.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem11.TextVisible = false; + // + // layoutControlItem12 + // + this.layoutControlItem12.Control = this.btnCanSpeedGet; + this.layoutControlItem12.Location = new System.Drawing.Point(127, 111); + this.layoutControlItem12.MinSize = new System.Drawing.Size(80, 26); + this.layoutControlItem12.Name = "layoutControlItem12"; + this.layoutControlItem12.Size = new System.Drawing.Size(80, 37); + this.layoutControlItem12.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem12.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem12.TextVisible = false; + // + // layoutControlGroup5 + // + this.layoutControlGroup5.Items.AddRange(new DevExpress.XtraLayout.BaseLayoutItem[] { + this.layoutControlItem13, + this.layoutControlItem15, + this.layoutControlItem16, + this.layoutControlItem17, + this.layoutControlItem18, + this.layoutControlItem19, + this.layoutControlItem20, + this.layoutControlItem21, + this.emptySpaceItem8, + this.layoutControlItem22, + this.layoutControlItem23, + this.simpleLabelItem1, + this.simpleLabelItem2, + this.simpleLabelItem3, + this.simpleLabelItem4, + this.layoutControlItem24}); + this.layoutControlGroup5.Location = new System.Drawing.Point(297, 179); + this.layoutControlGroup5.Name = "layoutControlGroup5"; + this.layoutControlGroup5.Padding = new DevExpress.XtraLayout.Utils.Padding(1, 1, 1, 1); + this.layoutControlGroup5.Size = new System.Drawing.Size(264, 179); + this.layoutControlGroup5.Text = "Cell Balancing Param"; + // + // layoutControlItem13 + // + this.layoutControlItem13.Control = this.TeCbThresholdCurr; + this.layoutControlItem13.Location = new System.Drawing.Point(0, 0); + this.layoutControlItem13.MinSize = new System.Drawing.Size(140, 28); + this.layoutControlItem13.Name = "layoutControlItem13"; + this.layoutControlItem13.Size = new System.Drawing.Size(150, 28); + this.layoutControlItem13.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem13.Text = " Threshold"; + this.layoutControlItem13.TextAlignMode = DevExpress.XtraLayout.TextAlignModeItem.CustomSize; + this.layoutControlItem13.TextSize = new System.Drawing.Size(65, 20); + this.layoutControlItem13.TextToControlDistance = 12; + // + // layoutControlItem15 + // + this.layoutControlItem15.Control = this.TeCbThresholdNew; + this.layoutControlItem15.Location = new System.Drawing.Point(150, 0); + this.layoutControlItem15.MinSize = new System.Drawing.Size(54, 28); + this.layoutControlItem15.Name = "layoutControlItem15"; + this.layoutControlItem15.Size = new System.Drawing.Size(76, 28); + this.layoutControlItem15.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem15.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem15.TextVisible = false; + // + // layoutControlItem16 + // + this.layoutControlItem16.Control = this.TeCbWindowCurr; + this.layoutControlItem16.ControlAlignment = System.Drawing.ContentAlignment.TopLeft; + this.layoutControlItem16.CustomizationFormText = "layoutControlItem13"; + this.layoutControlItem16.Location = new System.Drawing.Point(0, 28); + this.layoutControlItem16.MinSize = new System.Drawing.Size(140, 28); + this.layoutControlItem16.Name = "layoutControlItem16"; + this.layoutControlItem16.Size = new System.Drawing.Size(150, 28); + this.layoutControlItem16.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem16.Text = " Window"; + this.layoutControlItem16.TextAlignMode = DevExpress.XtraLayout.TextAlignModeItem.CustomSize; + this.layoutControlItem16.TextSize = new System.Drawing.Size(65, 14); + this.layoutControlItem16.TextToControlDistance = 12; + // + // layoutControlItem17 + // + this.layoutControlItem17.Control = this.TeCbWindowNew; + this.layoutControlItem17.ControlAlignment = System.Drawing.ContentAlignment.TopLeft; + this.layoutControlItem17.CustomizationFormText = "layoutControlItem15"; + this.layoutControlItem17.Location = new System.Drawing.Point(150, 28); + this.layoutControlItem17.MinSize = new System.Drawing.Size(54, 28); + this.layoutControlItem17.Name = "layoutControlItem17"; + this.layoutControlItem17.Size = new System.Drawing.Size(76, 28); + this.layoutControlItem17.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem17.Text = "layoutControlItem15"; + this.layoutControlItem17.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem17.TextVisible = false; + // + // layoutControlItem18 + // + this.layoutControlItem18.Control = this.TeCbMinCurr; + this.layoutControlItem18.ControlAlignment = System.Drawing.ContentAlignment.TopLeft; + this.layoutControlItem18.CustomizationFormText = "layoutControlItem13"; + this.layoutControlItem18.Location = new System.Drawing.Point(0, 56); + this.layoutControlItem18.MinSize = new System.Drawing.Size(140, 28); + this.layoutControlItem18.Name = "layoutControlItem18"; + this.layoutControlItem18.Size = new System.Drawing.Size(150, 28); + this.layoutControlItem18.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem18.Text = " Min."; + this.layoutControlItem18.TextAlignMode = DevExpress.XtraLayout.TextAlignModeItem.CustomSize; + this.layoutControlItem18.TextSize = new System.Drawing.Size(65, 14); + this.layoutControlItem18.TextToControlDistance = 12; + // + // layoutControlItem19 + // + this.layoutControlItem19.Control = this.TeCbMinNew; + this.layoutControlItem19.ControlAlignment = System.Drawing.ContentAlignment.TopLeft; + this.layoutControlItem19.CustomizationFormText = "layoutControlItem15"; + this.layoutControlItem19.Location = new System.Drawing.Point(150, 56); + this.layoutControlItem19.MinSize = new System.Drawing.Size(54, 28); + this.layoutControlItem19.Name = "layoutControlItem19"; + this.layoutControlItem19.Size = new System.Drawing.Size(76, 28); + this.layoutControlItem19.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem19.Text = "layoutControlItem15"; + this.layoutControlItem19.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem19.TextVisible = false; + // + // layoutControlItem20 + // + this.layoutControlItem20.Control = this.TeCbIntervalCurr; + this.layoutControlItem20.ControlAlignment = System.Drawing.ContentAlignment.TopLeft; + this.layoutControlItem20.CustomizationFormText = "layoutControlItem13"; + this.layoutControlItem20.Location = new System.Drawing.Point(0, 84); + this.layoutControlItem20.MinSize = new System.Drawing.Size(140, 28); + this.layoutControlItem20.Name = "layoutControlItem20"; + this.layoutControlItem20.Size = new System.Drawing.Size(150, 28); + this.layoutControlItem20.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem20.Text = " Interval"; + this.layoutControlItem20.TextAlignMode = DevExpress.XtraLayout.TextAlignModeItem.CustomSize; + this.layoutControlItem20.TextSize = new System.Drawing.Size(65, 14); + this.layoutControlItem20.TextToControlDistance = 12; + // + // layoutControlItem21 + // + this.layoutControlItem21.Control = this.TeCbIntervalNew; + this.layoutControlItem21.ControlAlignment = System.Drawing.ContentAlignment.TopLeft; + this.layoutControlItem21.CustomizationFormText = "layoutControlItem15"; + this.layoutControlItem21.Location = new System.Drawing.Point(150, 84); + this.layoutControlItem21.MinSize = new System.Drawing.Size(54, 28); + this.layoutControlItem21.Name = "layoutControlItem21"; + this.layoutControlItem21.Size = new System.Drawing.Size(76, 28); + this.layoutControlItem21.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem21.Text = "layoutControlItem15"; + this.layoutControlItem21.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem21.TextVisible = false; + // + // emptySpaceItem8 + // + this.emptySpaceItem8.AllowHotTrack = false; + this.emptySpaceItem8.Location = new System.Drawing.Point(68, 112); + this.emptySpaceItem8.Name = "emptySpaceItem8"; + this.emptySpaceItem8.Size = new System.Drawing.Size(74, 38); + this.emptySpaceItem8.TextSize = new System.Drawing.Size(0, 0); + // + // layoutControlItem22 + // + this.layoutControlItem22.Control = this.BtnCbParamGet; + this.layoutControlItem22.Location = new System.Drawing.Point(142, 112); + this.layoutControlItem22.MinSize = new System.Drawing.Size(31, 26); + this.layoutControlItem22.Name = "layoutControlItem22"; + this.layoutControlItem22.Size = new System.Drawing.Size(57, 38); + this.layoutControlItem22.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem22.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem22.TextVisible = false; + // + // layoutControlItem23 + // + this.layoutControlItem23.Control = this.BtnCbParamSet; + this.layoutControlItem23.Location = new System.Drawing.Point(199, 112); + this.layoutControlItem23.MinSize = new System.Drawing.Size(30, 26); + this.layoutControlItem23.Name = "layoutControlItem23"; + this.layoutControlItem23.Size = new System.Drawing.Size(57, 38); + this.layoutControlItem23.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem23.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem23.TextVisible = false; + // + // simpleLabelItem1 + // + this.simpleLabelItem1.AllowHotTrack = false; + this.simpleLabelItem1.Location = new System.Drawing.Point(226, 0); + this.simpleLabelItem1.MinSize = new System.Drawing.Size(30, 18); + this.simpleLabelItem1.Name = "simpleLabelItem1"; + this.simpleLabelItem1.Size = new System.Drawing.Size(30, 28); + this.simpleLabelItem1.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.simpleLabelItem1.Text = "mV"; + this.simpleLabelItem1.TextSize = new System.Drawing.Size(62, 14); + // + // simpleLabelItem2 + // + this.simpleLabelItem2.AllowHotTrack = false; + this.simpleLabelItem2.Location = new System.Drawing.Point(226, 28); + this.simpleLabelItem2.MinSize = new System.Drawing.Size(30, 18); + this.simpleLabelItem2.Name = "simpleLabelItem2"; + this.simpleLabelItem2.Size = new System.Drawing.Size(30, 28); + this.simpleLabelItem2.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.simpleLabelItem2.Text = "mV"; + this.simpleLabelItem2.TextSize = new System.Drawing.Size(62, 14); + // + // simpleLabelItem3 + // + this.simpleLabelItem3.AllowHotTrack = false; + this.simpleLabelItem3.Location = new System.Drawing.Point(226, 56); + this.simpleLabelItem3.MinSize = new System.Drawing.Size(30, 18); + this.simpleLabelItem3.Name = "simpleLabelItem3"; + this.simpleLabelItem3.Size = new System.Drawing.Size(30, 28); + this.simpleLabelItem3.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.simpleLabelItem3.Text = "mV"; + this.simpleLabelItem3.TextSize = new System.Drawing.Size(62, 14); + // + // simpleLabelItem4 + // + this.simpleLabelItem4.AllowHotTrack = false; + this.simpleLabelItem4.Location = new System.Drawing.Point(226, 84); + this.simpleLabelItem4.MinSize = new System.Drawing.Size(30, 18); + this.simpleLabelItem4.Name = "simpleLabelItem4"; + this.simpleLabelItem4.Size = new System.Drawing.Size(30, 28); + this.simpleLabelItem4.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.simpleLabelItem4.Text = "Sec"; + this.simpleLabelItem4.TextSize = new System.Drawing.Size(62, 14); + // + // layoutControlItem24 + // + this.layoutControlItem24.Control = this.BtnCbDefault; + this.layoutControlItem24.Location = new System.Drawing.Point(0, 112); + this.layoutControlItem24.MinSize = new System.Drawing.Size(60, 26); + this.layoutControlItem24.Name = "layoutControlItem24"; + this.layoutControlItem24.Size = new System.Drawing.Size(68, 38); + this.layoutControlItem24.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem24.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem24.TextVisible = false; + // + // ucCalibration + // + this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 14F); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.Controls.Add(this.layoutControl1); + this.Name = "ucCalibration"; + this.Size = new System.Drawing.Size(779, 551); + ((System.ComponentModel.ISupportInitialize)(this.layoutControl1)).EndInit(); + this.layoutControl1.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.TeCbThresholdNew.Properties)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.TeCbThresholdCurr.Properties)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.cbCanSpeedNew.Properties)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.edCanSpeedCurr.Properties)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.gbBmuAddrSet)).EndInit(); + this.gbBmuAddrSet.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.layoutControl9)).EndInit(); + this.layoutControl9.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.edModuleNo.Properties)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.edSystemAddrNew.Properties)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.edSystemAddr.Properties)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup9)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.lcitemBmsId)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.emptySpaceItem16)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.emptySpaceItem17)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem34)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem36)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem6)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.emptySpaceItem2)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem1)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.lbModuleName)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.gbCvOffset)).EndInit(); + this.gbCvOffset.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.layoutControl4)).EndInit(); + this.layoutControl4.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.edCvOffsetNew2.Properties)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.edCvOffset2.Properties)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.edCvOffsetNew1.Properties)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.edCvOffset1.Properties)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup4)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.lcItemDCvOffset1)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem7)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.emptySpaceItem4)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.emptySpaceItem6)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem9)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem14)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.lcItemDCvOffset2)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem2)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.gbForcedBalancing)).EndInit(); + this.gbForcedBalancing.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.layoutControl3)).EndInit(); + this.layoutControl3.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.CbBalEnable.Properties)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.cbFcCellNo.Properties)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.cbFcControl.Properties)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.CbBalMode.Properties)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup3)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.lcitemFcControl)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.lcitemFcCellNo)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.lcitemFcAutoC)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem8)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.emptySpaceItem1)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.lcitemFcAutoC1)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.TeCbWindowCurr.Properties)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.TeCbWindowNew.Properties)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.TeCbMinCurr.Properties)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.TeCbMinNew.Properties)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.TeCbIntervalCurr.Properties)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.TeCbIntervalNew.Properties)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup1)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem4)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.emptySpaceItem14)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.emptySpaceItem9)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem33)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem5)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup2)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem3)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem10)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.emptySpaceItem3)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.emptySpaceItem7)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem11)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem12)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup5)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem13)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem15)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem16)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem17)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem18)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem19)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem20)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem21)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.emptySpaceItem8)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem22)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem23)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.simpleLabelItem1)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.simpleLabelItem2)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.simpleLabelItem3)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.simpleLabelItem4)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem24)).EndInit(); + this.ResumeLayout(false); + + } + + #endregion + + private DevExpress.XtraLayout.LayoutControl layoutControl1; + private DevExpress.XtraLayout.LayoutControlGroup layoutControlGroup1; + private DevExpress.XtraEditors.GroupControl gbForcedBalancing; + private DevExpress.XtraLayout.LayoutControl layoutControl3; + private DevExpress.XtraLayout.LayoutControlGroup layoutControlGroup3; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem4; + private DevExpress.XtraEditors.ComboBoxEdit cbFcControl; + private DevExpress.XtraLayout.LayoutControlItem lcitemFcControl; + private DevExpress.XtraEditors.SimpleButton btnFcSet; + private DevExpress.XtraEditors.ComboBoxEdit CbBalEnable; + private DevExpress.XtraEditors.ComboBoxEdit cbFcCellNo; + private DevExpress.XtraLayout.LayoutControlItem lcitemFcCellNo; + private DevExpress.XtraLayout.LayoutControlItem lcitemFcAutoC; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem8; + private DevExpress.XtraEditors.GroupControl gbCvOffset; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem5; + private DevExpress.XtraLayout.LayoutControl layoutControl4; + private DevExpress.XtraLayout.LayoutControlGroup layoutControlGroup4; + private DevExpress.XtraLayout.EmptySpaceItem emptySpaceItem1; + private DevExpress.XtraEditors.TextEdit edCvOffset1; + private DevExpress.XtraLayout.LayoutControlItem lcItemDCvOffset1; + private DevExpress.XtraEditors.TextEdit edCvOffsetNew1; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem7; + private DevExpress.XtraLayout.EmptySpaceItem emptySpaceItem4; + private DevExpress.XtraLayout.EmptySpaceItem emptySpaceItem6; + private DevExpress.XtraEditors.SimpleButton btnBpGet; + private DevExpress.XtraEditors.SimpleButton btnBpSet; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem9; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem14; + private DevExpress.XtraEditors.GroupControl gbBmuAddrSet; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem33; + private DevExpress.XtraLayout.LayoutControl layoutControl9; + private DevExpress.XtraLayout.LayoutControlGroup layoutControlGroup9; + private DevExpress.XtraEditors.SimpleButton btnBmsAddrSet; + private DevExpress.XtraEditors.TextEdit edSystemAddr; + private DevExpress.XtraLayout.LayoutControlItem lcitemBmsId; + private DevExpress.XtraLayout.EmptySpaceItem emptySpaceItem16; + private DevExpress.XtraLayout.EmptySpaceItem emptySpaceItem17; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem34; + private DevExpress.XtraEditors.SimpleButton btnBmsAddrGet; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem36; + private DevExpress.XtraEditors.TextEdit edSystemAddrNew; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem6; + private DevExpress.XtraLayout.EmptySpaceItem emptySpaceItem14; + private DevExpress.XtraLayout.EmptySpaceItem emptySpaceItem9; + private DevExpress.XtraEditors.TextEdit edModuleNo; + private DevExpress.XtraLayout.EmptySpaceItem emptySpaceItem2; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem1; + private DevExpress.XtraLayout.SimpleLabelItem lbModuleName; + private DevExpress.XtraEditors.TextEdit edCvOffsetNew2; + private DevExpress.XtraEditors.TextEdit edCvOffset2; + private DevExpress.XtraLayout.LayoutControlItem lcItemDCvOffset2; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem2; + private DevExpress.XtraEditors.SimpleButton btnCanSpeedSet; + private DevExpress.XtraEditors.ComboBoxEdit cbCanSpeedNew; + private DevExpress.XtraEditors.TextEdit edCanSpeedCurr; + private DevExpress.XtraLayout.LayoutControlGroup layoutControlGroup2; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem3; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem10; + private DevExpress.XtraLayout.EmptySpaceItem emptySpaceItem3; + private DevExpress.XtraLayout.EmptySpaceItem emptySpaceItem7; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem11; + private DevExpress.XtraEditors.SimpleButton btnCanSpeedGet; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem12; + private DevExpress.XtraEditors.TextEdit TeCbThresholdNew; + private DevExpress.XtraEditors.TextEdit TeCbThresholdCurr; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem13; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem15; + private DevExpress.XtraLayout.LayoutControlGroup layoutControlGroup5; + private DevExpress.XtraEditors.TextEdit TeCbWindowCurr; + private DevExpress.XtraEditors.TextEdit TeCbWindowNew; + private DevExpress.XtraEditors.TextEdit TeCbMinCurr; + private DevExpress.XtraEditors.TextEdit TeCbMinNew; + private DevExpress.XtraEditors.TextEdit TeCbIntervalCurr; + private DevExpress.XtraEditors.TextEdit TeCbIntervalNew; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem16; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem17; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem18; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem19; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem20; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem21; + private DevExpress.XtraEditors.SimpleButton BtnCbParamGet; + private DevExpress.XtraEditors.SimpleButton BtnCbParamSet; + private DevExpress.XtraLayout.EmptySpaceItem emptySpaceItem8; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem22; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem23; + private DevExpress.XtraLayout.SimpleLabelItem simpleLabelItem1; + private DevExpress.XtraLayout.SimpleLabelItem simpleLabelItem2; + private DevExpress.XtraLayout.SimpleLabelItem simpleLabelItem3; + private DevExpress.XtraLayout.SimpleLabelItem simpleLabelItem4; + private DevExpress.XtraEditors.SimpleButton BtnCbDefault; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem24; + private DevExpress.XtraEditors.ComboBoxEdit CbBalMode; + private DevExpress.XtraLayout.LayoutControlItem lcitemFcAutoC1; + } +} diff --git a/LFP_Manager_PRM/Controls/ucCalibration.cs b/LFP_Manager_PRM/Controls/ucCalibration.cs new file mode 100644 index 0000000..fd6d670 --- /dev/null +++ b/LFP_Manager_PRM/Controls/ucCalibration.cs @@ -0,0 +1,273 @@ +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Drawing; +using System.Data; +using System.Text; +using System.Linq; +using System.Windows.Forms; +using DevExpress.XtraEditors; + +using LFP_Manager.Forms; +using LFP_Manager.DataStructure; +using LFP_Manager.Utils; + +namespace LFP_Manager.Controls +{ + public delegate void setCalibUpdate(object sender); + public delegate void setCalibCommand(int mode, int flag, ref DeviceCalibration aCalib, ref DeviceSystemTotalData aTotal); + public delegate Int32 getBattData(int item, int cno); + + public partial class ucCalibration : DevExpress.XtraEditors.XtraUserControl + { + #region DEFINE + + const string FORCED_BALANCING_OFF = "OFF"; + const string FORCED_BALANCING_ON = "ON"; + const string FORCED_BALANCING_TEST = "TEST"; + + const string MANUAL_BAL_DISABLE = "DISABLE"; + const string MANUAL_BAL_ENABLE = "ENABLE"; + + const string MANUAL_BAL_MODE_BUCK = "BUCK_MODE"; + const string MANUAL_BAL_MODE_BOOST = "BOOST_MODE"; + + const string CURR_CALIB_CHARGE = "CHARGE"; + const string CURR_CALIB_DISCHAGE = "DISCHARGE"; + + #endregion + + #region VARIABLES + + DeviceCalibration rCalib; + DeviceCalibration wCalib; + DeviceSystemTotalData wTotal; + + //UInt32 cValue = 0; + + //bool wFlag = false; + + public event setCalibCommand OnCommand = null; + public event getBattData OnGetBattData = null; + + #endregion + + #region CONSTRUCTORS + + // Battery No: + // 0: No 1,3,5,7,9,11,13,15 ODD + // 1: No 2,4,6,8,10,12,14 Even + public ucCalibration() + { + InitializeComponent(); + + ComponentInit(); + + wTotal = new DeviceSystemTotalData(); + } + + private void ComponentInit() + { + cbFcControl.Properties.Items.Clear(); + cbFcControl.Properties.Items.Add(FORCED_BALANCING_OFF); + cbFcControl.Properties.Items.Add(FORCED_BALANCING_ON); + cbFcControl.Properties.Items.Add(FORCED_BALANCING_TEST); + cbFcControl.SelectedIndex = 1; + + cbFcCellNo.Properties.Items.Clear(); + for (int i = 0; i < csConstData.SystemInfo.MAX_MODULE_CELL_SIZE; i++) + { + cbFcCellNo.Properties.Items.Add(String.Format("{0}", i + 1)); + } + cbFcCellNo.SelectedIndex = 0; + + CbBalEnable.Properties.Items.Clear(); + CbBalEnable.Properties.Items.Add(MANUAL_BAL_DISABLE); + CbBalEnable.Properties.Items.Add(MANUAL_BAL_ENABLE); + CbBalEnable.SelectedIndex = 0; + + CbBalMode.Properties.Items.Clear(); + CbBalMode.Properties.Items.Add(MANUAL_BAL_MODE_BOOST); + CbBalMode.Properties.Items.Add(MANUAL_BAL_MODE_BUCK); + CbBalMode.SelectedIndex = 0; + } + + #endregion + + #region EXT EVENT FUNCTION + + private void OnCommnadEvent(int mode, int flag, ref DeviceCalibration aCalib, ref DeviceSystemTotalData aTotal) + { + OnCommand?.Invoke(mode, flag, ref aCalib, ref aTotal); + } + + private Int32 OnGetBattDataEvent(int item, int cno) + { + Int32 result = 0; + + if (OnGetBattData != null) + { + result = OnGetBattData(item, cno); + } + return result; + } + + #endregion + + #region PUBLIC FUCTIONS + + public void UpdateData(DeviceCalibration aCalib) + { + rCalib = aCalib; + DisplayCalib(); + } + + #endregion + + #region DISPLAY DATA + + private void DisplayCalib() + { + // Cell Voltage Offset + edCvOffset1.Text = String.Format("{0}", rCalib.CellVoltge.CvOffsetLow); + edCvOffset2.Text = String.Format("{0}", rCalib.CellVoltge.CvOffsetHigh); + + // Device Address + edSystemAddr.Text = String.Format("{0:0}", rCalib.SystemInfo.devAddr); + + // Cell Balancing Parameter + TeCbThresholdCurr.Text = string.Format("{0}", rCalib.CbParam.Threadhold); + TeCbWindowCurr.Text = string.Format("{0}", rCalib.CbParam.Window); + TeCbMinCurr.Text = string.Format("{0}", rCalib.CbParam.Min); + TeCbIntervalCurr.Text = string.Format("{0}", rCalib.CbParam.Interval); + } + + #endregion + + #region BUTTON EVENT + + private void btnFcSet_Click(object sender, EventArgs e) + { + try + { + if (CbBalEnable.Text != null) + { + wCalib = rCalib; + int cControl = cbFcControl.SelectedIndex; + int cNo = cbFcCellNo.SelectedIndex + 1; + int bMode = CbBalMode.SelectedIndex; + int bEnable = CbBalEnable.SelectedIndex; + + wCalib.ForcedBalancing2.Control = cControl; + wCalib.ForcedBalancing2.CellNo = cNo; + wCalib.ForcedBalancing2.Mode = bMode; + wCalib.ForcedBalancing2.Enable = bEnable; + + OnCommnadEvent(12, 1, ref wCalib, ref wTotal); + } + } + catch (Exception ex) + { + MessageBox.Show(ex.Message, "Exception", MessageBoxButtons.OK, MessageBoxIcon.Error); + } + } + + private void btnBpGet_Click(object sender, EventArgs e) + { + OnCommnadEvent(15, 0, ref wCalib, ref wTotal); + } + + private void btnBpSet_Click(object sender, EventArgs e) + { + if (edCvOffsetNew1.Text == "") return; + if (edCvOffsetNew2.Text == "") return; + + wCalib = rCalib; + wCalib.CellVoltge.CvOffsetLow = (short)(Convert.ToInt32(edCvOffsetNew1.Text)); + wCalib.CellVoltge.CvOffsetHigh = (short)(Convert.ToInt32(edCvOffsetNew2.Text)); + OnCommnadEvent(15, 1, ref wCalib, ref wTotal); + } + + private void btnBmsAddrGet_Click(object sender, EventArgs e) + { + OnCommnadEvent(9, 0, ref wCalib, ref wTotal); + } + + private void btnBmsAddrSet_Click(object sender, EventArgs e) + { + if (edSystemAddrNew.Text == string.Empty) return; + wCalib = rCalib; + wCalib.SystemInfo.devAddr = (UInt16)(Convert.ToInt32(edSystemAddrNew.Text)); + + OnCommnadEvent(9, 1, ref wCalib, ref wTotal); + } + + private void btnCanSpeedGet_Click(object sender, EventArgs e) + { + OnCommnadEvent(8, 0, ref wCalib, ref wTotal); + } + + private void btnCanSpeedSet_Click(object sender, EventArgs e) + { + + } + + private void TextBox_KeyPress(object sender, KeyPressEventArgs e) + { + csUtils.TypingOnlyNumber(sender, e, true, true); + } + private void BtnCbParamGet_Click(object sender, EventArgs e) + { + OnCommnadEvent(17, 0, ref wCalib, ref wTotal); + } + + private void BtnCbParamSet_Click(object sender, EventArgs e) + { + if (TeCbThresholdNew.Text == "") return; + if (TeCbWindowNew.Text == "") return; + if (TeCbMinNew.Text == "") return; + if (TeCbIntervalNew.Text == "") return; + + wCalib = rCalib.DeepCopy(); + wCalib.CbParam.Threadhold = (short)Convert.ToInt32(TeCbThresholdNew.Text); + wCalib.CbParam.Window = (short)Convert.ToInt32(TeCbWindowNew.Text); + wCalib.CbParam.Min = (short)Convert.ToInt32(TeCbMinNew.Text); + wCalib.CbParam.Interval = (short)Convert.ToInt32(TeCbIntervalNew.Text); + OnCommnadEvent(17, 1, ref wCalib, ref wTotal); + } + private void BtnCbDefault_Click(object sender, EventArgs e) + { + TeCbThresholdNew.Text = "3450"; + TeCbWindowNew.Text = "60"; + TeCbMinNew.Text = "10"; + TeCbIntervalNew.Text = "5"; + } + #endregion + + #region COMPONENT EVENT + private void edModuleNo_EditValueChanged(object sender, EventArgs e) + { + if (edModuleNo.Text != "") + { + int mdID; + int mdNo; + string strMdNo = edModuleNo.Text; + + try + { + mdNo = Convert.ToInt32(strMdNo); + + mdID = (mdNo - 1) % 14 + 1; + + edSystemAddrNew.Text = mdID.ToString(); + } + catch (Exception ex) + { + edModuleNo.Text = ""; + MessageBox.Show(ex.Message, "Exception", MessageBoxButtons.OK, MessageBoxIcon.Error); + } + } + } + #endregion + } +} diff --git a/LFP_Manager_PRM/Controls/ucCalibration.resx b/LFP_Manager_PRM/Controls/ucCalibration.resx new file mode 100644 index 0000000..1af7de1 --- /dev/null +++ b/LFP_Manager_PRM/Controls/ucCalibration.resx @@ -0,0 +1,120 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + \ No newline at end of file diff --git a/LFP_Manager_PRM/Controls/ucCommConfig.Designer.cs b/LFP_Manager_PRM/Controls/ucCommConfig.Designer.cs new file mode 100644 index 0000000..907b2ef --- /dev/null +++ b/LFP_Manager_PRM/Controls/ucCommConfig.Designer.cs @@ -0,0 +1,818 @@ +namespace LFP_Manager.Controls +{ + partial class ucCommConfig + { + /// + /// Required designer variable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Clean up any resources being used. + /// + /// true if managed resources should be disposed; otherwise, false. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Component Designer generated code + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + this.layoutControl1 = new DevExpress.XtraLayout.LayoutControl(); + this.btnClose = new DevExpress.XtraEditors.SimpleButton(); + this.btnSave = new DevExpress.XtraEditors.SimpleButton(); + this.gbCommConfig = new DevExpress.XtraEditors.GroupControl(); + this.layoutControl3 = new DevExpress.XtraLayout.LayoutControl(); + this.rbtnUARTCAN = new System.Windows.Forms.RadioButton(); + this.rbtnUSBCAN = new System.Windows.Forms.RadioButton(); + this.cbUartSpeed = new DevExpress.XtraEditors.ComboBoxEdit(); + this.cbUartPort = new DevExpress.XtraEditors.ComboBoxEdit(); + this.cbDbLogPeriod = new DevExpress.XtraEditors.ComboBoxEdit(); + this.cbTargetModel = new DevExpress.XtraEditors.ComboBoxEdit(); + this.cbCanBaudrate = new DevExpress.XtraEditors.ComboBoxEdit(); + this.cbCanDevice = new DevExpress.XtraEditors.ComboBoxEdit(); + this.cbCanNo = new DevExpress.XtraEditors.ComboBoxEdit(); + this.cbCanIndex = new DevExpress.XtraEditors.ComboBoxEdit(); + this.lcgbCommConfig = new DevExpress.XtraLayout.LayoutControlGroup(); + this.emptySpaceItem2 = new DevExpress.XtraLayout.EmptySpaceItem(); + this.lcgbCanConfig = new DevExpress.XtraLayout.LayoutControlGroup(); + this.slbDeviceType = new DevExpress.XtraLayout.SimpleLabelItem(); + this.layoutControlItem1 = new DevExpress.XtraLayout.LayoutControlItem(); + this.slbDeviceIndex = new DevExpress.XtraLayout.SimpleLabelItem(); + this.layoutControlItem3 = new DevExpress.XtraLayout.LayoutControlItem(); + this.slbCanNo = new DevExpress.XtraLayout.SimpleLabelItem(); + this.layoutControlItem4 = new DevExpress.XtraLayout.LayoutControlItem(); + this.slbCanSpeed = new DevExpress.XtraLayout.SimpleLabelItem(); + this.layoutControlItem5 = new DevExpress.XtraLayout.LayoutControlItem(); + this.lcgbDatabaseConfig = new DevExpress.XtraLayout.LayoutControlGroup(); + this.slbDatabaseLogPeriod = new DevExpress.XtraLayout.SimpleLabelItem(); + this.layoutControlItem7 = new DevExpress.XtraLayout.LayoutControlItem(); + this.lcgbUartConfig = new DevExpress.XtraLayout.LayoutControlGroup(); + this.simpleLabelItem1 = new DevExpress.XtraLayout.SimpleLabelItem(); + this.simpleLabelItem2 = new DevExpress.XtraLayout.SimpleLabelItem(); + this.layoutControlItem9 = new DevExpress.XtraLayout.LayoutControlItem(); + this.layoutControlItem8 = new DevExpress.XtraLayout.LayoutControlItem(); + this.lcgbDeviceType = new DevExpress.XtraLayout.LayoutControlGroup(); + this.layoutControlItem10 = new DevExpress.XtraLayout.LayoutControlItem(); + this.layoutControlItem11 = new DevExpress.XtraLayout.LayoutControlItem(); + this.lcgbDeviceModel = new DevExpress.XtraLayout.LayoutControlGroup(); + this.slbDeviceModel = new DevExpress.XtraLayout.SimpleLabelItem(); + this.layoutControlItem6 = new DevExpress.XtraLayout.LayoutControlItem(); + this.layoutControlGroup1 = new DevExpress.XtraLayout.LayoutControlGroup(); + this.layoutControlItem2 = new DevExpress.XtraLayout.LayoutControlItem(); + this.layoutControlItem12 = new DevExpress.XtraLayout.LayoutControlItem(); + this.layoutControlItem13 = new DevExpress.XtraLayout.LayoutControlItem(); + this.emptySpaceItem1 = new DevExpress.XtraLayout.EmptySpaceItem(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControl1)).BeginInit(); + this.layoutControl1.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.gbCommConfig)).BeginInit(); + this.gbCommConfig.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControl3)).BeginInit(); + this.layoutControl3.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.cbUartSpeed.Properties)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.cbUartPort.Properties)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.cbDbLogPeriod.Properties)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.cbTargetModel.Properties)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.cbCanBaudrate.Properties)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.cbCanDevice.Properties)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.cbCanNo.Properties)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.cbCanIndex.Properties)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.lcgbCommConfig)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.emptySpaceItem2)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.lcgbCanConfig)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.slbDeviceType)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem1)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.slbDeviceIndex)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem3)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.slbCanNo)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem4)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.slbCanSpeed)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem5)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.lcgbDatabaseConfig)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.slbDatabaseLogPeriod)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem7)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.lcgbUartConfig)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.simpleLabelItem1)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.simpleLabelItem2)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem9)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem8)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.lcgbDeviceType)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem10)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem11)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.lcgbDeviceModel)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.slbDeviceModel)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem6)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup1)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem2)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem12)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem13)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.emptySpaceItem1)).BeginInit(); + this.SuspendLayout(); + // + // layoutControl1 + // + this.layoutControl1.Controls.Add(this.btnClose); + this.layoutControl1.Controls.Add(this.btnSave); + this.layoutControl1.Controls.Add(this.gbCommConfig); + this.layoutControl1.Dock = System.Windows.Forms.DockStyle.Fill; + this.layoutControl1.Location = new System.Drawing.Point(0, 0); + this.layoutControl1.Name = "layoutControl1"; + this.layoutControl1.OptionsCustomizationForm.DesignTimeCustomizationFormPositionAndSize = new System.Drawing.Rectangle(1111, 267, 250, 350); + this.layoutControl1.Root = this.layoutControlGroup1; + this.layoutControl1.Size = new System.Drawing.Size(407, 501); + this.layoutControl1.TabIndex = 0; + this.layoutControl1.Text = "layoutControl1"; + // + // btnClose + // + this.btnClose.Appearance.Font = new System.Drawing.Font("Tahoma", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0))); + this.btnClose.Appearance.Options.UseFont = true; + this.btnClose.Location = new System.Drawing.Point(206, 461); + this.btnClose.Name = "btnClose"; + this.btnClose.Size = new System.Drawing.Size(197, 36); + this.btnClose.StyleController = this.layoutControl1; + this.btnClose.TabIndex = 7; + this.btnClose.Text = "CLOSE"; + this.btnClose.Click += new System.EventHandler(this.btnClose_Click); + // + // btnSave + // + this.btnSave.Appearance.Font = new System.Drawing.Font("Tahoma", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0))); + this.btnSave.Appearance.Options.UseFont = true; + this.btnSave.Location = new System.Drawing.Point(4, 461); + this.btnSave.Name = "btnSave"; + this.btnSave.Size = new System.Drawing.Size(198, 36); + this.btnSave.StyleController = this.layoutControl1; + this.btnSave.TabIndex = 6; + this.btnSave.Text = "SAVE"; + this.btnSave.Click += new System.EventHandler(this.btnSave_Click); + // + // gbCommConfig + // + this.gbCommConfig.Controls.Add(this.layoutControl3); + this.gbCommConfig.Location = new System.Drawing.Point(4, 4); + this.gbCommConfig.Name = "gbCommConfig"; + this.gbCommConfig.Size = new System.Drawing.Size(399, 442); + this.gbCommConfig.TabIndex = 5; + this.gbCommConfig.Text = "Comm. Config"; + // + // layoutControl3 + // + this.layoutControl3.Controls.Add(this.rbtnUARTCAN); + this.layoutControl3.Controls.Add(this.rbtnUSBCAN); + this.layoutControl3.Controls.Add(this.cbUartSpeed); + this.layoutControl3.Controls.Add(this.cbUartPort); + this.layoutControl3.Controls.Add(this.cbDbLogPeriod); + this.layoutControl3.Controls.Add(this.cbTargetModel); + this.layoutControl3.Controls.Add(this.cbCanBaudrate); + this.layoutControl3.Controls.Add(this.cbCanDevice); + this.layoutControl3.Controls.Add(this.cbCanNo); + this.layoutControl3.Controls.Add(this.cbCanIndex); + this.layoutControl3.Dock = System.Windows.Forms.DockStyle.Fill; + this.layoutControl3.Location = new System.Drawing.Point(2, 23); + this.layoutControl3.Name = "layoutControl3"; + this.layoutControl3.OptionsCustomizationForm.DesignTimeCustomizationFormPositionAndSize = new System.Drawing.Rectangle(940, 234, 679, 350); + this.layoutControl3.Root = this.lcgbCommConfig; + this.layoutControl3.Size = new System.Drawing.Size(395, 417); + this.layoutControl3.TabIndex = 0; + this.layoutControl3.Text = "layoutControl3"; + // + // rbtnUARTCAN + // + this.rbtnUARTCAN.Location = new System.Drawing.Point(199, 28); + this.rbtnUARTCAN.Name = "rbtnUARTCAN"; + this.rbtnUARTCAN.Size = new System.Drawing.Size(189, 25); + this.rbtnUARTCAN.TabIndex = 15; + this.rbtnUARTCAN.TabStop = true; + this.rbtnUARTCAN.Text = "UARTCAN"; + this.rbtnUARTCAN.UseVisualStyleBackColor = true; + this.rbtnUARTCAN.CheckedChanged += new System.EventHandler(this.rbtnUARTCAN_CheckedChanged); + // + // rbtnUSBCAN + // + this.rbtnUSBCAN.Location = new System.Drawing.Point(7, 28); + this.rbtnUSBCAN.Name = "rbtnUSBCAN"; + this.rbtnUSBCAN.Size = new System.Drawing.Size(188, 25); + this.rbtnUSBCAN.TabIndex = 14; + this.rbtnUSBCAN.TabStop = true; + this.rbtnUSBCAN.Text = "USBCAN"; + this.rbtnUSBCAN.UseVisualStyleBackColor = true; + this.rbtnUSBCAN.CheckedChanged += new System.EventHandler(this.rbtnUSBCAN_CheckedChanged); + // + // cbUartSpeed + // + this.cbUartSpeed.EditValue = "115200"; + this.cbUartSpeed.Location = new System.Drawing.Point(139, 312); + this.cbUartSpeed.Name = "cbUartSpeed"; + this.cbUartSpeed.Properties.Appearance.Font = new System.Drawing.Font("Tahoma", 11.25F); + this.cbUartSpeed.Properties.Appearance.Options.UseFont = true; + this.cbUartSpeed.Properties.Appearance.Options.UseTextOptions = true; + this.cbUartSpeed.Properties.Appearance.TextOptions.HAlignment = DevExpress.Utils.HorzAlignment.Far; + this.cbUartSpeed.Properties.Buttons.AddRange(new DevExpress.XtraEditors.Controls.EditorButton[] { + new DevExpress.XtraEditors.Controls.EditorButton(DevExpress.XtraEditors.Controls.ButtonPredefines.Combo)}); + this.cbUartSpeed.Properties.Items.AddRange(new object[] { + "USBCAN_E_U", + "USBCAN_2E_U"}); + this.cbUartSpeed.Size = new System.Drawing.Size(249, 24); + this.cbUartSpeed.StyleController = this.layoutControl3; + this.cbUartSpeed.TabIndex = 13; + // + // cbUartPort + // + this.cbUartPort.EditValue = ""; + this.cbUartPort.Location = new System.Drawing.Point(139, 284); + this.cbUartPort.Name = "cbUartPort"; + this.cbUartPort.Properties.Appearance.Font = new System.Drawing.Font("Tahoma", 11.25F); + this.cbUartPort.Properties.Appearance.Options.UseFont = true; + this.cbUartPort.Properties.Appearance.Options.UseTextOptions = true; + this.cbUartPort.Properties.Appearance.TextOptions.HAlignment = DevExpress.Utils.HorzAlignment.Far; + this.cbUartPort.Properties.Buttons.AddRange(new DevExpress.XtraEditors.Controls.EditorButton[] { + new DevExpress.XtraEditors.Controls.EditorButton(DevExpress.XtraEditors.Controls.ButtonPredefines.Combo)}); + this.cbUartPort.Properties.Items.AddRange(new object[] { + "USBCAN_E_U", + "USBCAN_2E_U"}); + this.cbUartPort.Size = new System.Drawing.Size(249, 24); + this.cbUartPort.StyleController = this.layoutControl3; + this.cbUartPort.TabIndex = 12; + // + // cbDbLogPeriod + // + this.cbDbLogPeriod.EditValue = "5"; + this.cbDbLogPeriod.Location = new System.Drawing.Point(140, 369); + this.cbDbLogPeriod.Name = "cbDbLogPeriod"; + this.cbDbLogPeriod.Properties.Appearance.Font = new System.Drawing.Font("Tahoma", 11.25F); + this.cbDbLogPeriod.Properties.Appearance.Options.UseFont = true; + this.cbDbLogPeriod.Properties.Appearance.Options.UseTextOptions = true; + this.cbDbLogPeriod.Properties.Appearance.TextOptions.HAlignment = DevExpress.Utils.HorzAlignment.Far; + this.cbDbLogPeriod.Properties.Buttons.AddRange(new DevExpress.XtraEditors.Controls.EditorButton[] { + new DevExpress.XtraEditors.Controls.EditorButton(DevExpress.XtraEditors.Controls.ButtonPredefines.Combo)}); + this.cbDbLogPeriod.Properties.Items.AddRange(new object[] { + "1", + "5", + "10", + "15", + "30", + "60"}); + this.cbDbLogPeriod.Size = new System.Drawing.Size(248, 24); + this.cbDbLogPeriod.StyleController = this.layoutControl3; + this.cbDbLogPeriod.TabIndex = 11; + // + // cbTargetModel + // + this.cbTargetModel.Location = new System.Drawing.Point(139, 86); + this.cbTargetModel.Name = "cbTargetModel"; + this.cbTargetModel.Properties.Appearance.Font = new System.Drawing.Font("Tahoma", 11.25F); + this.cbTargetModel.Properties.Appearance.Options.UseFont = true; + this.cbTargetModel.Properties.Appearance.Options.UseTextOptions = true; + this.cbTargetModel.Properties.Appearance.TextOptions.HAlignment = DevExpress.Utils.HorzAlignment.Far; + this.cbTargetModel.Properties.Buttons.AddRange(new DevExpress.XtraEditors.Controls.EditorButton[] { + new DevExpress.XtraEditors.Controls.EditorButton(DevExpress.XtraEditors.Controls.ButtonPredefines.Combo)}); + this.cbTargetModel.Size = new System.Drawing.Size(249, 24); + this.cbTargetModel.StyleController = this.layoutControl3; + this.cbTargetModel.TabIndex = 10; + // + // cbCanBaudrate + // + this.cbCanBaudrate.EditValue = "1000Kbps"; + this.cbCanBaudrate.Location = new System.Drawing.Point(139, 227); + this.cbCanBaudrate.Name = "cbCanBaudrate"; + this.cbCanBaudrate.Properties.Appearance.Font = new System.Drawing.Font("Tahoma", 11.25F); + this.cbCanBaudrate.Properties.Appearance.Options.UseFont = true; + this.cbCanBaudrate.Properties.Appearance.Options.UseTextOptions = true; + this.cbCanBaudrate.Properties.Appearance.TextOptions.HAlignment = DevExpress.Utils.HorzAlignment.Far; + this.cbCanBaudrate.Properties.Buttons.AddRange(new DevExpress.XtraEditors.Controls.EditorButton[] { + new DevExpress.XtraEditors.Controls.EditorButton(DevExpress.XtraEditors.Controls.ButtonPredefines.Combo)}); + this.cbCanBaudrate.Properties.Items.AddRange(new object[] { + "1000Kbps", + "800Kbps", + "500Kbps", + "250Kbps", + "125Kbps", + "100Kbps", + "50Kbps", + "20Kbps", + "10Kbps", + "5Kbps"}); + this.cbCanBaudrate.Size = new System.Drawing.Size(249, 24); + this.cbCanBaudrate.StyleController = this.layoutControl3; + this.cbCanBaudrate.TabIndex = 9; + // + // cbCanDevice + // + this.cbCanDevice.EditValue = "USBCAN_2E_U"; + this.cbCanDevice.Location = new System.Drawing.Point(139, 143); + this.cbCanDevice.Name = "cbCanDevice"; + this.cbCanDevice.Properties.Appearance.Font = new System.Drawing.Font("Tahoma", 11.25F); + this.cbCanDevice.Properties.Appearance.Options.UseFont = true; + this.cbCanDevice.Properties.Appearance.Options.UseTextOptions = true; + this.cbCanDevice.Properties.Appearance.TextOptions.HAlignment = DevExpress.Utils.HorzAlignment.Far; + this.cbCanDevice.Properties.Buttons.AddRange(new DevExpress.XtraEditors.Controls.EditorButton[] { + new DevExpress.XtraEditors.Controls.EditorButton(DevExpress.XtraEditors.Controls.ButtonPredefines.Combo)}); + this.cbCanDevice.Properties.Items.AddRange(new object[] { + "USBCAN_E_U", + "USBCAN_2E_U"}); + this.cbCanDevice.Size = new System.Drawing.Size(249, 24); + this.cbCanDevice.StyleController = this.layoutControl3; + this.cbCanDevice.TabIndex = 5; + this.cbCanDevice.SelectedIndexChanged += new System.EventHandler(this.cbCanDevice_SelectedIndexChanged); + // + // cbCanNo + // + this.cbCanNo.EditValue = "0"; + this.cbCanNo.Location = new System.Drawing.Point(139, 199); + this.cbCanNo.Name = "cbCanNo"; + this.cbCanNo.Properties.Appearance.Font = new System.Drawing.Font("Tahoma", 11.25F); + this.cbCanNo.Properties.Appearance.Options.UseFont = true; + this.cbCanNo.Properties.Appearance.Options.UseTextOptions = true; + this.cbCanNo.Properties.Appearance.TextOptions.HAlignment = DevExpress.Utils.HorzAlignment.Far; + this.cbCanNo.Properties.Buttons.AddRange(new DevExpress.XtraEditors.Controls.EditorButton[] { + new DevExpress.XtraEditors.Controls.EditorButton(DevExpress.XtraEditors.Controls.ButtonPredefines.Combo)}); + this.cbCanNo.Properties.Items.AddRange(new object[] { + "0", + "1"}); + this.cbCanNo.Size = new System.Drawing.Size(249, 24); + this.cbCanNo.StyleController = this.layoutControl3; + this.cbCanNo.TabIndex = 8; + // + // cbCanIndex + // + this.cbCanIndex.EditValue = "0"; + this.cbCanIndex.Location = new System.Drawing.Point(139, 171); + this.cbCanIndex.Name = "cbCanIndex"; + this.cbCanIndex.Properties.Appearance.Font = new System.Drawing.Font("Tahoma", 11.25F); + this.cbCanIndex.Properties.Appearance.Options.UseFont = true; + this.cbCanIndex.Properties.Appearance.Options.UseTextOptions = true; + this.cbCanIndex.Properties.Appearance.TextOptions.HAlignment = DevExpress.Utils.HorzAlignment.Far; + this.cbCanIndex.Properties.Buttons.AddRange(new DevExpress.XtraEditors.Controls.EditorButton[] { + new DevExpress.XtraEditors.Controls.EditorButton(DevExpress.XtraEditors.Controls.ButtonPredefines.Combo)}); + this.cbCanIndex.Properties.Items.AddRange(new object[] { + "0", + "1", + "2"}); + this.cbCanIndex.Size = new System.Drawing.Size(249, 24); + this.cbCanIndex.StyleController = this.layoutControl3; + this.cbCanIndex.TabIndex = 7; + // + // lcgbCommConfig + // + this.lcgbCommConfig.CustomizationFormText = "layoutControlGroup3"; + this.lcgbCommConfig.EnableIndentsWithoutBorders = DevExpress.Utils.DefaultBoolean.True; + this.lcgbCommConfig.GroupBordersVisible = false; + this.lcgbCommConfig.Items.AddRange(new DevExpress.XtraLayout.BaseLayoutItem[] { + this.emptySpaceItem2, + this.lcgbCanConfig, + this.lcgbDatabaseConfig, + this.lcgbUartConfig, + this.lcgbDeviceType, + this.lcgbDeviceModel}); + this.lcgbCommConfig.Name = "Root"; + this.lcgbCommConfig.Padding = new DevExpress.XtraLayout.Utils.Padding(1, 1, 1, 1); + this.lcgbCommConfig.Size = new System.Drawing.Size(395, 417); + this.lcgbCommConfig.Text = "CommConfig"; + this.lcgbCommConfig.TextVisible = false; + // + // emptySpaceItem2 + // + this.emptySpaceItem2.AllowHotTrack = false; + this.emptySpaceItem2.Location = new System.Drawing.Point(0, 398); + this.emptySpaceItem2.Name = "emptySpaceItem2"; + this.emptySpaceItem2.Size = new System.Drawing.Size(393, 17); + this.emptySpaceItem2.TextSize = new System.Drawing.Size(0, 0); + // + // lcgbCanConfig + // + this.lcgbCanConfig.Items.AddRange(new DevExpress.XtraLayout.BaseLayoutItem[] { + this.slbDeviceType, + this.layoutControlItem1, + this.slbDeviceIndex, + this.layoutControlItem3, + this.slbCanNo, + this.layoutControlItem4, + this.slbCanSpeed, + this.layoutControlItem5}); + this.lcgbCanConfig.Location = new System.Drawing.Point(0, 115); + this.lcgbCanConfig.Name = "lcgbCanConfig"; + this.lcgbCanConfig.Padding = new DevExpress.XtraLayout.Utils.Padding(1, 1, 1, 1); + this.lcgbCanConfig.Size = new System.Drawing.Size(393, 141); + this.lcgbCanConfig.Text = "CAN CONFIG"; + // + // slbDeviceType + // + this.slbDeviceType.AllowHotTrack = false; + this.slbDeviceType.Location = new System.Drawing.Point(0, 0); + this.slbDeviceType.MaxSize = new System.Drawing.Size(0, 28); + this.slbDeviceType.MinSize = new System.Drawing.Size(126, 28); + this.slbDeviceType.Name = "slbDeviceType"; + this.slbDeviceType.Size = new System.Drawing.Size(132, 28); + this.slbDeviceType.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.slbDeviceType.Text = " Device Type"; + this.slbDeviceType.TextSize = new System.Drawing.Size(113, 14); + // + // layoutControlItem1 + // + this.layoutControlItem1.Control = this.cbCanDevice; + this.layoutControlItem1.Location = new System.Drawing.Point(132, 0); + this.layoutControlItem1.MaxSize = new System.Drawing.Size(0, 28); + this.layoutControlItem1.MinSize = new System.Drawing.Size(54, 28); + this.layoutControlItem1.Name = "layoutControlItem1"; + this.layoutControlItem1.Size = new System.Drawing.Size(253, 28); + this.layoutControlItem1.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem1.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem1.TextVisible = false; + // + // slbDeviceIndex + // + this.slbDeviceIndex.AllowHotTrack = false; + this.slbDeviceIndex.Location = new System.Drawing.Point(0, 28); + this.slbDeviceIndex.MaxSize = new System.Drawing.Size(0, 28); + this.slbDeviceIndex.MinSize = new System.Drawing.Size(126, 28); + this.slbDeviceIndex.Name = "slbDeviceIndex"; + this.slbDeviceIndex.Size = new System.Drawing.Size(132, 28); + this.slbDeviceIndex.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.slbDeviceIndex.Text = " Device Index"; + this.slbDeviceIndex.TextSize = new System.Drawing.Size(113, 14); + // + // layoutControlItem3 + // + this.layoutControlItem3.Control = this.cbCanIndex; + this.layoutControlItem3.Location = new System.Drawing.Point(132, 28); + this.layoutControlItem3.MaxSize = new System.Drawing.Size(0, 28); + this.layoutControlItem3.MinSize = new System.Drawing.Size(54, 28); + this.layoutControlItem3.Name = "layoutControlItem3"; + this.layoutControlItem3.Size = new System.Drawing.Size(253, 28); + this.layoutControlItem3.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem3.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem3.TextVisible = false; + // + // slbCanNo + // + this.slbCanNo.AllowHotTrack = false; + this.slbCanNo.Location = new System.Drawing.Point(0, 56); + this.slbCanNo.MaxSize = new System.Drawing.Size(0, 28); + this.slbCanNo.MinSize = new System.Drawing.Size(126, 28); + this.slbCanNo.Name = "slbCanNo"; + this.slbCanNo.Size = new System.Drawing.Size(132, 28); + this.slbCanNo.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.slbCanNo.Text = " CAN No."; + this.slbCanNo.TextSize = new System.Drawing.Size(113, 14); + // + // layoutControlItem4 + // + this.layoutControlItem4.Control = this.cbCanNo; + this.layoutControlItem4.Location = new System.Drawing.Point(132, 56); + this.layoutControlItem4.MaxSize = new System.Drawing.Size(0, 28); + this.layoutControlItem4.MinSize = new System.Drawing.Size(54, 28); + this.layoutControlItem4.Name = "layoutControlItem4"; + this.layoutControlItem4.Size = new System.Drawing.Size(253, 28); + this.layoutControlItem4.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem4.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem4.TextVisible = false; + // + // slbCanSpeed + // + this.slbCanSpeed.AllowHotTrack = false; + this.slbCanSpeed.Location = new System.Drawing.Point(0, 84); + this.slbCanSpeed.MaxSize = new System.Drawing.Size(0, 28); + this.slbCanSpeed.MinSize = new System.Drawing.Size(126, 28); + this.slbCanSpeed.Name = "slbCanSpeed"; + this.slbCanSpeed.Size = new System.Drawing.Size(132, 28); + this.slbCanSpeed.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.slbCanSpeed.Text = " CAN Speed"; + this.slbCanSpeed.TextSize = new System.Drawing.Size(113, 14); + // + // layoutControlItem5 + // + this.layoutControlItem5.Control = this.cbCanBaudrate; + this.layoutControlItem5.Location = new System.Drawing.Point(132, 84); + this.layoutControlItem5.MaxSize = new System.Drawing.Size(0, 28); + this.layoutControlItem5.MinSize = new System.Drawing.Size(54, 28); + this.layoutControlItem5.Name = "layoutControlItem5"; + this.layoutControlItem5.Size = new System.Drawing.Size(253, 28); + this.layoutControlItem5.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem5.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem5.TextVisible = false; + // + // lcgbDatabaseConfig + // + this.lcgbDatabaseConfig.Items.AddRange(new DevExpress.XtraLayout.BaseLayoutItem[] { + this.slbDatabaseLogPeriod, + this.layoutControlItem7}); + this.lcgbDatabaseConfig.Location = new System.Drawing.Point(0, 341); + this.lcgbDatabaseConfig.Name = "lcgbDatabaseConfig"; + this.lcgbDatabaseConfig.Padding = new DevExpress.XtraLayout.Utils.Padding(1, 1, 1, 1); + this.lcgbDatabaseConfig.Size = new System.Drawing.Size(393, 57); + this.lcgbDatabaseConfig.Text = "DATABASE CONFIG"; + // + // slbDatabaseLogPeriod + // + this.slbDatabaseLogPeriod.AllowHotTrack = false; + this.slbDatabaseLogPeriod.Location = new System.Drawing.Point(0, 0); + this.slbDatabaseLogPeriod.MaxSize = new System.Drawing.Size(0, 28); + this.slbDatabaseLogPeriod.MinSize = new System.Drawing.Size(117, 28); + this.slbDatabaseLogPeriod.Name = "slbDatabaseLogPeriod"; + this.slbDatabaseLogPeriod.Size = new System.Drawing.Size(133, 28); + this.slbDatabaseLogPeriod.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.slbDatabaseLogPeriod.Text = " DB Log Period (sec)"; + this.slbDatabaseLogPeriod.TextSize = new System.Drawing.Size(113, 14); + // + // layoutControlItem7 + // + this.layoutControlItem7.Control = this.cbDbLogPeriod; + this.layoutControlItem7.Location = new System.Drawing.Point(133, 0); + this.layoutControlItem7.MaxSize = new System.Drawing.Size(0, 28); + this.layoutControlItem7.MinSize = new System.Drawing.Size(54, 28); + this.layoutControlItem7.Name = "layoutControlItem7"; + this.layoutControlItem7.Size = new System.Drawing.Size(252, 28); + this.layoutControlItem7.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem7.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem7.TextVisible = false; + // + // lcgbUartConfig + // + this.lcgbUartConfig.Items.AddRange(new DevExpress.XtraLayout.BaseLayoutItem[] { + this.simpleLabelItem1, + this.simpleLabelItem2, + this.layoutControlItem9, + this.layoutControlItem8}); + this.lcgbUartConfig.Location = new System.Drawing.Point(0, 256); + this.lcgbUartConfig.Name = "lcgbUartConfig"; + this.lcgbUartConfig.Padding = new DevExpress.XtraLayout.Utils.Padding(1, 1, 1, 1); + this.lcgbUartConfig.Size = new System.Drawing.Size(393, 85); + this.lcgbUartConfig.Text = "UART CONFIG"; + // + // simpleLabelItem1 + // + this.simpleLabelItem1.AllowHotTrack = false; + this.simpleLabelItem1.Location = new System.Drawing.Point(0, 0); + this.simpleLabelItem1.Name = "simpleLabelItem1"; + this.simpleLabelItem1.Size = new System.Drawing.Size(132, 28); + this.simpleLabelItem1.Text = "UART Port"; + this.simpleLabelItem1.TextSize = new System.Drawing.Size(113, 14); + // + // simpleLabelItem2 + // + this.simpleLabelItem2.AllowHotTrack = false; + this.simpleLabelItem2.Location = new System.Drawing.Point(0, 28); + this.simpleLabelItem2.Name = "simpleLabelItem2"; + this.simpleLabelItem2.Size = new System.Drawing.Size(132, 28); + this.simpleLabelItem2.Text = "UART Speed"; + this.simpleLabelItem2.TextSize = new System.Drawing.Size(113, 14); + // + // layoutControlItem9 + // + this.layoutControlItem9.Control = this.cbUartSpeed; + this.layoutControlItem9.Location = new System.Drawing.Point(132, 28); + this.layoutControlItem9.Name = "layoutControlItem9"; + this.layoutControlItem9.Size = new System.Drawing.Size(253, 28); + this.layoutControlItem9.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem9.TextVisible = false; + // + // layoutControlItem8 + // + this.layoutControlItem8.Control = this.cbUartPort; + this.layoutControlItem8.Location = new System.Drawing.Point(132, 0); + this.layoutControlItem8.Name = "layoutControlItem8"; + this.layoutControlItem8.Size = new System.Drawing.Size(253, 28); + this.layoutControlItem8.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem8.TextVisible = false; + // + // lcgbDeviceType + // + this.lcgbDeviceType.Items.AddRange(new DevExpress.XtraLayout.BaseLayoutItem[] { + this.layoutControlItem10, + this.layoutControlItem11}); + this.lcgbDeviceType.Location = new System.Drawing.Point(0, 0); + this.lcgbDeviceType.Name = "lcgbDeviceType"; + this.lcgbDeviceType.Padding = new DevExpress.XtraLayout.Utils.Padding(1, 1, 1, 1); + this.lcgbDeviceType.Size = new System.Drawing.Size(393, 58); + this.lcgbDeviceType.Text = "DEVICE TYPE"; + // + // layoutControlItem10 + // + this.layoutControlItem10.Control = this.rbtnUSBCAN; + this.layoutControlItem10.Location = new System.Drawing.Point(0, 0); + this.layoutControlItem10.Name = "layoutControlItem10"; + this.layoutControlItem10.Size = new System.Drawing.Size(192, 29); + this.layoutControlItem10.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem10.TextVisible = false; + // + // layoutControlItem11 + // + this.layoutControlItem11.Control = this.rbtnUARTCAN; + this.layoutControlItem11.Location = new System.Drawing.Point(192, 0); + this.layoutControlItem11.Name = "layoutControlItem11"; + this.layoutControlItem11.Size = new System.Drawing.Size(193, 29); + this.layoutControlItem11.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem11.TextVisible = false; + // + // lcgbDeviceModel + // + this.lcgbDeviceModel.Items.AddRange(new DevExpress.XtraLayout.BaseLayoutItem[] { + this.slbDeviceModel, + this.layoutControlItem6}); + this.lcgbDeviceModel.Location = new System.Drawing.Point(0, 58); + this.lcgbDeviceModel.Name = "lcgbDeviceModel"; + this.lcgbDeviceModel.Padding = new DevExpress.XtraLayout.Utils.Padding(1, 1, 1, 1); + this.lcgbDeviceModel.Size = new System.Drawing.Size(393, 57); + this.lcgbDeviceModel.Text = "TARGET MODEL"; + // + // slbDeviceModel + // + this.slbDeviceModel.AllowHotTrack = false; + this.slbDeviceModel.Location = new System.Drawing.Point(0, 0); + this.slbDeviceModel.MaxSize = new System.Drawing.Size(0, 28); + this.slbDeviceModel.MinSize = new System.Drawing.Size(126, 28); + this.slbDeviceModel.Name = "slbDeviceModel"; + this.slbDeviceModel.Size = new System.Drawing.Size(132, 28); + this.slbDeviceModel.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.slbDeviceModel.Text = " Model"; + this.slbDeviceModel.TextSize = new System.Drawing.Size(113, 14); + // + // layoutControlItem6 + // + this.layoutControlItem6.Control = this.cbTargetModel; + this.layoutControlItem6.Location = new System.Drawing.Point(132, 0); + this.layoutControlItem6.MaxSize = new System.Drawing.Size(0, 28); + this.layoutControlItem6.MinSize = new System.Drawing.Size(54, 28); + this.layoutControlItem6.Name = "layoutControlItem6"; + this.layoutControlItem6.Size = new System.Drawing.Size(253, 28); + this.layoutControlItem6.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem6.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem6.TextVisible = false; + // + // layoutControlGroup1 + // + this.layoutControlGroup1.CustomizationFormText = "layoutControlGroup1"; + this.layoutControlGroup1.EnableIndentsWithoutBorders = DevExpress.Utils.DefaultBoolean.True; + this.layoutControlGroup1.GroupBordersVisible = false; + this.layoutControlGroup1.Items.AddRange(new DevExpress.XtraLayout.BaseLayoutItem[] { + this.layoutControlItem2, + this.layoutControlItem12, + this.layoutControlItem13, + this.emptySpaceItem1}); + this.layoutControlGroup1.Name = "layoutControlGroup1"; + this.layoutControlGroup1.Padding = new DevExpress.XtraLayout.Utils.Padding(2, 2, 2, 2); + this.layoutControlGroup1.Size = new System.Drawing.Size(407, 501); + this.layoutControlGroup1.TextVisible = false; + // + // layoutControlItem2 + // + this.layoutControlItem2.Control = this.gbCommConfig; + this.layoutControlItem2.CustomizationFormText = "layoutControlItem2"; + this.layoutControlItem2.Location = new System.Drawing.Point(0, 0); + this.layoutControlItem2.MinSize = new System.Drawing.Size(104, 24); + this.layoutControlItem2.Name = "layoutControlItem2"; + this.layoutControlItem2.Size = new System.Drawing.Size(403, 446); + this.layoutControlItem2.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem2.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem2.TextVisible = false; + // + // layoutControlItem12 + // + this.layoutControlItem12.Control = this.btnSave; + this.layoutControlItem12.CustomizationFormText = "layoutControlItem12"; + this.layoutControlItem12.Location = new System.Drawing.Point(0, 457); + this.layoutControlItem12.MaxSize = new System.Drawing.Size(0, 40); + this.layoutControlItem12.MinSize = new System.Drawing.Size(93, 40); + this.layoutControlItem12.Name = "layoutControlItem12"; + this.layoutControlItem12.Size = new System.Drawing.Size(202, 40); + this.layoutControlItem12.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem12.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem12.TextVisible = false; + // + // layoutControlItem13 + // + this.layoutControlItem13.Control = this.btnClose; + this.layoutControlItem13.CustomizationFormText = "layoutControlItem13"; + this.layoutControlItem13.Location = new System.Drawing.Point(202, 457); + this.layoutControlItem13.MaxSize = new System.Drawing.Size(0, 40); + this.layoutControlItem13.MinSize = new System.Drawing.Size(93, 40); + this.layoutControlItem13.Name = "layoutControlItem13"; + this.layoutControlItem13.Size = new System.Drawing.Size(201, 40); + this.layoutControlItem13.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem13.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem13.TextVisible = false; + // + // emptySpaceItem1 + // + this.emptySpaceItem1.AllowHotTrack = false; + this.emptySpaceItem1.CustomizationFormText = "emptySpaceItem1"; + this.emptySpaceItem1.Location = new System.Drawing.Point(0, 446); + this.emptySpaceItem1.Name = "emptySpaceItem1"; + this.emptySpaceItem1.Size = new System.Drawing.Size(403, 11); + this.emptySpaceItem1.TextSize = new System.Drawing.Size(0, 0); + // + // ucCommConfig + // + this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 14F); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.Controls.Add(this.layoutControl1); + this.Name = "ucCommConfig"; + this.Size = new System.Drawing.Size(407, 501); + ((System.ComponentModel.ISupportInitialize)(this.layoutControl1)).EndInit(); + this.layoutControl1.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.gbCommConfig)).EndInit(); + this.gbCommConfig.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.layoutControl3)).EndInit(); + this.layoutControl3.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.cbUartSpeed.Properties)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.cbUartPort.Properties)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.cbDbLogPeriod.Properties)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.cbTargetModel.Properties)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.cbCanBaudrate.Properties)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.cbCanDevice.Properties)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.cbCanNo.Properties)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.cbCanIndex.Properties)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.lcgbCommConfig)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.emptySpaceItem2)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.lcgbCanConfig)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.slbDeviceType)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem1)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.slbDeviceIndex)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem3)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.slbCanNo)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem4)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.slbCanSpeed)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem5)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.lcgbDatabaseConfig)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.slbDatabaseLogPeriod)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem7)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.lcgbUartConfig)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.simpleLabelItem1)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.simpleLabelItem2)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem9)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem8)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.lcgbDeviceType)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem10)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem11)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.lcgbDeviceModel)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.slbDeviceModel)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem6)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup1)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem2)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem12)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem13)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.emptySpaceItem1)).EndInit(); + this.ResumeLayout(false); + + } + + #endregion + + private DevExpress.XtraLayout.LayoutControl layoutControl1; + private DevExpress.XtraLayout.LayoutControlGroup layoutControlGroup1; + private DevExpress.XtraEditors.GroupControl gbCommConfig; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem2; + private DevExpress.XtraLayout.LayoutControl layoutControl3; + private DevExpress.XtraLayout.LayoutControlGroup lcgbCommConfig; + private DevExpress.XtraEditors.SimpleButton btnClose; + private DevExpress.XtraEditors.SimpleButton btnSave; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem12; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem13; + private DevExpress.XtraEditors.ComboBoxEdit cbCanIndex; + private DevExpress.XtraEditors.ComboBoxEdit cbCanDevice; + private DevExpress.XtraEditors.ComboBoxEdit cbCanNo; + private DevExpress.XtraEditors.ComboBoxEdit cbCanBaudrate; + private DevExpress.XtraEditors.ComboBoxEdit cbTargetModel; + private DevExpress.XtraLayout.EmptySpaceItem emptySpaceItem1; + private DevExpress.XtraLayout.EmptySpaceItem emptySpaceItem2; + private DevExpress.XtraLayout.LayoutControlGroup lcgbCanConfig; + private DevExpress.XtraLayout.SimpleLabelItem slbDeviceType; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem1; + private DevExpress.XtraLayout.SimpleLabelItem slbDeviceIndex; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem3; + private DevExpress.XtraLayout.SimpleLabelItem slbCanNo; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem4; + private DevExpress.XtraLayout.SimpleLabelItem slbCanSpeed; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem5; + private DevExpress.XtraLayout.SimpleLabelItem slbDeviceModel; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem6; + private DevExpress.XtraEditors.ComboBoxEdit cbDbLogPeriod; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem7; + private DevExpress.XtraLayout.SimpleLabelItem slbDatabaseLogPeriod; + private DevExpress.XtraLayout.LayoutControlGroup lcgbDatabaseConfig; + private System.Windows.Forms.RadioButton rbtnUARTCAN; + private System.Windows.Forms.RadioButton rbtnUSBCAN; + private DevExpress.XtraEditors.ComboBoxEdit cbUartSpeed; + private DevExpress.XtraEditors.ComboBoxEdit cbUartPort; + private DevExpress.XtraLayout.LayoutControlGroup lcgbUartConfig; + private DevExpress.XtraLayout.SimpleLabelItem simpleLabelItem1; + private DevExpress.XtraLayout.SimpleLabelItem simpleLabelItem2; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem9; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem8; + private DevExpress.XtraLayout.LayoutControlGroup lcgbDeviceType; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem10; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem11; + private DevExpress.XtraLayout.LayoutControlGroup lcgbDeviceModel; + } +} diff --git a/LFP_Manager_PRM/Controls/ucCommConfig.cs b/LFP_Manager_PRM/Controls/ucCommConfig.cs new file mode 100644 index 0000000..c866f53 --- /dev/null +++ b/LFP_Manager_PRM/Controls/ucCommConfig.cs @@ -0,0 +1,248 @@ +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Drawing; +using System.Data; +using System.Text; +using System.Linq; +using System.Windows.Forms; +using DevExpress.XtraEditors; + +using System.Runtime.InteropServices; +using System.IO; +using System.IO.Ports; + +using LFP_Manager.DataStructure; +using LFP_Manager.Function; + +namespace LFP_Manager.Controls +{ + public delegate void CloseEvent(object aConfig); + + public partial class ucCommConfig : DevExpress.XtraEditors.XtraUserControl + { + #region VARIABLES + + CommConfig Config; + public event CloseEvent OnClose = null; + + DataTable dtComport = new DataTable(); + + #endregion + + #region CONSTRUCTORS + + public ucCommConfig() + { + InitializeComponent(); + + CanDeviceLoad(); + UartPortLoad(); + IniLoad(); + } + + #endregion + + #region DATA LOAD AND SAVE + + private void CanDeviceLoad() + { + cbCanDevice.Properties.Items.Clear(); + foreach (string d_name in csCanConstData.CanDeviceInfo.DeviceNames) + { + cbCanDevice.Properties.Items.Add(d_name); + } + } + + private void InitComportDataTable() + { + dtComport = new DataTable(); + dtComport.Columns.Add("name", typeof(string)); + dtComport.Columns.Add("name2", typeof(string)); + } + + private void UartPortLoad() + { + InitComportDataTable(); + foreach (string comport in SerialPort.GetPortNames()) + { + DataRow aRow = dtComport.NewRow(); + aRow["name"] = comport; + dtComport.Rows.Add(aRow); + } + + cbUartPort.Properties.Items.Clear(); + for (int i = 0; i < dtComport.Rows.Count; i++) + { + cbUartPort.Properties.Items.Add(dtComport.Rows[i]["name"].ToString()); + } + + cbUartSpeed.Properties.Items.Clear(); + for (int i = 0; i < csConstData.CommType.UartCAN_Speed.Length; i++) + { + cbUartSpeed.Properties.Items.Add(csConstData.CommType.UartCAN_Speed[i]); + } + } + + private void IniLoad() + { + Config = csIniControlFunction.IniLoad(Application.ExecutablePath, Config); + + cbTargetModel.Properties.Items.Clear(); + foreach (string d_name in csConstData.CommType.CAN_MODEL) + { + cbTargetModel.Properties.Items.Add(d_name); + } + + cbCanDevice.SelectedIndex = Config.CanDevice; + cbCanIndex.SelectedIndex = Config.CanIndex; + cbCanNo.SelectedIndex = Config.CanNo; + cbCanBaudrate.SelectedIndex = Config.CanBaudrate; + cbTargetModel.SelectedIndex = Config.TargetModelIndex; + + cbUartPort.Text = Config.UartPort; + cbUartSpeed.SelectedIndex = Config.UartBaudrate; + + switch (Config.CommType) + { + case csConstData.CommType.COMM_SNMP: + break; + case csConstData.CommType.COMM_USBCAN: + rbtnUSBCAN.Checked = true; + break; + case csConstData.CommType.COMM_UARTCAN: + rbtnUARTCAN.Checked = true; + + bool found = false; + int ComId = 0; + + if (Config.UartPort != "") + { + for (int i = 0; i < cbUartPort.Properties.Items.Count; i++) + { + if (dtComport.Rows[i]["name"].ToString() == Config.UartPort) + { + found = true; + ComId = i; + break; + } + } + } + + if (found) + { + cbUartPort.SelectedIndex = ComId; + Config.UartPort = cbUartPort.Properties.Items[ComId].ToString(); + } + else + { + if (cbUartPort.Properties.Items.Count > 0) + cbUartPort.SelectedIndex = 0; + } + break; + } + cbDbLogPeriod.Text = Config.DbLogPeriod.ToString(); + } + + private void IniSave() + { + if (rbtnUARTCAN.Checked) + Config.CommType = csConstData.CommType.COMM_UARTCAN; + else if (rbtnUSBCAN.Checked) + Config.CommType = csConstData.CommType.COMM_USBCAN; + + Config.CanDevice = cbCanDevice.SelectedIndex; + Config.CanIndex = cbCanIndex.SelectedIndex; + Config.CanNo = cbCanNo.SelectedIndex; + Config.CanBaudrate = cbCanBaudrate.SelectedIndex; + Config.TargetModelIndex = cbTargetModel.SelectedIndex; + + Config.UartPort = cbUartPort.Text; + Config.UartBaudrate = cbUartSpeed.SelectedIndex; + + Config.DbLogPeriod = Convert.ToInt32(cbDbLogPeriod.Text); + + csIniControlFunction.IniSave(Application.ExecutablePath, Config); + } + + #endregion + + #region EVENT + + private void btnClose_Click(object sender, EventArgs e) + { + if (OnClose != null) OnClose(Config); + } + + private void btnSave_Click(object sender, EventArgs e) + { + IniSave(); + } + + private void cbCanDevice_SelectedIndexChanged(object sender, EventArgs e) + { + int DeviceID = csCanConstData.CanDeviceInfo.DeviceIds[cbCanDevice.SelectedIndex]; + + if (DeviceID == csCanConstData.CanDeviceInfo.VCI_VALUE_CAN4_1) + { + cbCanIndex.Enabled = false; + cbCanNo.Enabled = false; + } + else + { + cbCanIndex.Enabled = true; + cbCanNo.Enabled = true; + } + } + + private void rbtnUSBCAN_CheckedChanged(object sender, EventArgs e) + { + if (rbtnUSBCAN.Checked) + { + cbCanDevice.Enabled = true; + cbCanIndex.Enabled = true; + cbCanNo.Enabled = true; + cbCanBaudrate.Enabled = true; + + cbUartPort.Enabled = false; + cbUartSpeed.Enabled = false; + } + else if (rbtnUARTCAN.Checked) + { + cbCanDevice.Enabled = false; + cbCanIndex.Enabled = false; + cbCanNo.Enabled = false; + cbCanBaudrate.Enabled = false; + + cbUartPort.Enabled = true; + cbUartSpeed.Enabled = true; + } + } + + private void rbtnUARTCAN_CheckedChanged(object sender, EventArgs e) + { + if (rbtnUSBCAN.Checked) + { + cbCanDevice.Enabled = true; + cbCanIndex.Enabled = true; + cbCanNo.Enabled = true; + cbCanBaudrate.Enabled = true; + + cbUartPort.Enabled = false; + cbUartSpeed.Enabled = false; + } + else if (rbtnUARTCAN.Checked) + { + cbCanDevice.Enabled = false; + cbCanIndex.Enabled = false; + cbCanNo.Enabled = false; + cbCanBaudrate.Enabled = false; + + cbUartPort.Enabled = true; + cbUartSpeed.Enabled = true; + } + } + + #endregion + } +} diff --git a/LFP_Manager_PRM/Controls/ucCommConfig.resx b/LFP_Manager_PRM/Controls/ucCommConfig.resx new file mode 100644 index 0000000..1af7de1 --- /dev/null +++ b/LFP_Manager_PRM/Controls/ucCommConfig.resx @@ -0,0 +1,120 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + \ No newline at end of file diff --git a/LFP_Manager_PRM/Controls/ucCommConfig2.Designer.cs b/LFP_Manager_PRM/Controls/ucCommConfig2.Designer.cs new file mode 100644 index 0000000..783d0a0 --- /dev/null +++ b/LFP_Manager_PRM/Controls/ucCommConfig2.Designer.cs @@ -0,0 +1,140 @@ +namespace LFP_Manager.Controls +{ + partial class ucCommConfig2 + { + /// + /// Required designer variable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Clean up any resources being used. + /// + /// true if managed resources should be disposed; otherwise, false. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Component Designer generated code + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + this.layoutControl1 = new DevExpress.XtraLayout.LayoutControl(); + this.btnStart = new DevExpress.XtraEditors.SimpleButton(); + this.lbStatus = new DevExpress.XtraEditors.LabelControl(); + this.layoutControlGroup1 = new DevExpress.XtraLayout.LayoutControlGroup(); + this.layoutControlItem1 = new DevExpress.XtraLayout.LayoutControlItem(); + this.layoutControlItem2 = new DevExpress.XtraLayout.LayoutControlItem(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControl1)).BeginInit(); + this.layoutControl1.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup1)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem1)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem2)).BeginInit(); + this.SuspendLayout(); + // + // layoutControl1 + // + this.layoutControl1.Controls.Add(this.btnStart); + this.layoutControl1.Controls.Add(this.lbStatus); + this.layoutControl1.Dock = System.Windows.Forms.DockStyle.Fill; + this.layoutControl1.Location = new System.Drawing.Point(0, 0); + this.layoutControl1.Name = "layoutControl1"; + this.layoutControl1.OptionsCustomizationForm.DesignTimeCustomizationFormPositionAndSize = new System.Drawing.Rectangle(298, 140, 250, 350); + this.layoutControl1.Root = this.layoutControlGroup1; + this.layoutControl1.Size = new System.Drawing.Size(107, 94); + this.layoutControl1.TabIndex = 0; + this.layoutControl1.Text = "layoutControl1"; + // + // btnStart + // + this.btnStart.Appearance.Font = new System.Drawing.Font("Tahoma", 12F, System.Drawing.FontStyle.Bold); + this.btnStart.Appearance.Options.UseFont = true; + this.btnStart.Location = new System.Drawing.Point(3, 24); + this.btnStart.Name = "btnStart"; + this.btnStart.Size = new System.Drawing.Size(101, 67); + this.btnStart.StyleController = this.layoutControl1; + this.btnStart.TabIndex = 5; + this.btnStart.Text = "RUN"; + this.btnStart.Click += new System.EventHandler(this.btnStart_Click); + // + // lbStatus + // + this.lbStatus.Location = new System.Drawing.Point(3, 3); + this.lbStatus.Name = "lbStatus"; + this.lbStatus.Size = new System.Drawing.Size(101, 17); + this.lbStatus.StyleController = this.layoutControl1; + this.lbStatus.TabIndex = 4; + this.lbStatus.Text = "Stop"; + // + // layoutControlGroup1 + // + this.layoutControlGroup1.CustomizationFormText = "layoutControlGroup1"; + this.layoutControlGroup1.EnableIndentsWithoutBorders = DevExpress.Utils.DefaultBoolean.True; + this.layoutControlGroup1.GroupBordersVisible = false; + this.layoutControlGroup1.Items.AddRange(new DevExpress.XtraLayout.BaseLayoutItem[] { + this.layoutControlItem1, + this.layoutControlItem2}); + this.layoutControlGroup1.Name = "layoutControlGroup1"; + this.layoutControlGroup1.Padding = new DevExpress.XtraLayout.Utils.Padding(1, 1, 1, 1); + this.layoutControlGroup1.Size = new System.Drawing.Size(107, 94); + this.layoutControlGroup1.TextVisible = false; + // + // layoutControlItem1 + // + this.layoutControlItem1.Control = this.lbStatus; + this.layoutControlItem1.CustomizationFormText = "layoutControlItem1"; + this.layoutControlItem1.Location = new System.Drawing.Point(0, 0); + this.layoutControlItem1.MinSize = new System.Drawing.Size(74, 18); + this.layoutControlItem1.Name = "layoutControlItem1"; + this.layoutControlItem1.Size = new System.Drawing.Size(105, 21); + this.layoutControlItem1.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem1.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem1.TextVisible = false; + // + // layoutControlItem2 + // + this.layoutControlItem2.Control = this.btnStart; + this.layoutControlItem2.CustomizationFormText = "layoutControlItem2"; + this.layoutControlItem2.Location = new System.Drawing.Point(0, 21); + this.layoutControlItem2.MinSize = new System.Drawing.Size(93, 26); + this.layoutControlItem2.Name = "layoutControlItem2"; + this.layoutControlItem2.Size = new System.Drawing.Size(105, 71); + this.layoutControlItem2.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem2.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem2.TextVisible = false; + // + // ucCommConfig2 + // + this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 14F); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.Controls.Add(this.layoutControl1); + this.Name = "ucCommConfig2"; + this.Size = new System.Drawing.Size(107, 94); + ((System.ComponentModel.ISupportInitialize)(this.layoutControl1)).EndInit(); + this.layoutControl1.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup1)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem1)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem2)).EndInit(); + this.ResumeLayout(false); + + } + + #endregion + + private DevExpress.XtraLayout.LayoutControl layoutControl1; + private DevExpress.XtraLayout.LayoutControlGroup layoutControlGroup1; + private DevExpress.XtraEditors.SimpleButton btnStart; + private DevExpress.XtraEditors.LabelControl lbStatus; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem1; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem2; + } +} diff --git a/LFP_Manager_PRM/Controls/ucCommConfig2.cs b/LFP_Manager_PRM/Controls/ucCommConfig2.cs new file mode 100644 index 0000000..281f97a --- /dev/null +++ b/LFP_Manager_PRM/Controls/ucCommConfig2.cs @@ -0,0 +1,66 @@ +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Drawing; +using System.Data; +using System.Text; +using System.Linq; +using System.Windows.Forms; +using DevExpress.XtraEditors; + +using LFP_Manager.Forms; +using LFP_Manager.DataStructure; +using LFP_Manager.Function; + +namespace LFP_Manager.Controls +{ + public partial class ucCommConfig2 : DevExpress.XtraEditors.XtraUserControl + { + #region VARIABLES + public event ButtonEvent OnStart = null; + + string info; + #endregion + + #region CONSTRUCTORS + public ucCommConfig2() + { + InitializeComponent(); + } + #endregion + + public void UpdateConfig(ref CommConfig Config) + { + if (Config.CommType == 1) + { + info = String.Format("INTERFACE: UART, PORT: {0}, BAUDRATE: {1}, MODEL: {2}" + , Config.UartPort + , Config.UartBaudrate + , csConstData.CommType.UART_MODEL[Config.UartModelIndex] + ); + } + else + { + info = String.Format("INF: CAN"); + } + + lbStatus.Text = info; + } + + public void UpdateStatus(bool flag, int mId) + { + if (flag) + btnStart.Text = "STOP"; + else + btnStart.Text = "RUN"; + + lbStatus.Text = String.Format("{0} - {1}", info, mId); + } + + private void btnStart_Click(object sender, EventArgs e) + { + if (OnStart != null) + OnStart(sender, e); + } + } +} diff --git a/LFP_Manager_PRM/Controls/ucCommConfig2.resx b/LFP_Manager_PRM/Controls/ucCommConfig2.resx new file mode 100644 index 0000000..1af7de1 --- /dev/null +++ b/LFP_Manager_PRM/Controls/ucCommConfig2.resx @@ -0,0 +1,120 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + \ No newline at end of file diff --git a/LFP_Manager_PRM/Controls/ucDataLog.Designer.cs b/LFP_Manager_PRM/Controls/ucDataLog.Designer.cs new file mode 100644 index 0000000..8fa418c --- /dev/null +++ b/LFP_Manager_PRM/Controls/ucDataLog.Designer.cs @@ -0,0 +1,265 @@ +namespace LFP_Manager.Controls +{ + partial class ucDataLog + { + /// + /// Required designer variable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Clean up any resources being used. + /// + /// true if managed resources should be disposed; otherwise, false. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Component Designer generated code + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + this.components = new System.ComponentModel.Container(); + this.layoutControl1 = new DevExpress.XtraLayout.LayoutControl(); + this.gbDataLog = new DevExpress.XtraEditors.GroupControl(); + this.layoutControl6 = new DevExpress.XtraLayout.LayoutControl(); + this.btnOpenLogFolder = new DevExpress.XtraEditors.SimpleButton(); + this.btnLogStart = new DevExpress.XtraEditors.SimpleButton(); + this.cbLogTime = new DevExpress.XtraEditors.ComboBoxEdit(); + this.layoutControlGroup6 = new DevExpress.XtraLayout.LayoutControlGroup(); + this.lcitemLogTime = new DevExpress.XtraLayout.LayoutControlItem(); + this.layoutControlItem13 = new DevExpress.XtraLayout.LayoutControlItem(); + this.layoutControlItem12 = new DevExpress.XtraLayout.LayoutControlItem(); + this.layoutControlGroup1 = new DevExpress.XtraLayout.LayoutControlGroup(); + this.layoutControlItem1 = new DevExpress.XtraLayout.LayoutControlItem(); + this.tmrLogging = new System.Windows.Forms.Timer(this.components); + ((System.ComponentModel.ISupportInitialize)(this.layoutControl1)).BeginInit(); + this.layoutControl1.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.gbDataLog)).BeginInit(); + this.gbDataLog.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControl6)).BeginInit(); + this.layoutControl6.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.cbLogTime.Properties)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup6)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.lcitemLogTime)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem13)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem12)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup1)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem1)).BeginInit(); + this.SuspendLayout(); + // + // layoutControl1 + // + this.layoutControl1.Controls.Add(this.gbDataLog); + this.layoutControl1.Dock = System.Windows.Forms.DockStyle.Fill; + this.layoutControl1.Location = new System.Drawing.Point(0, 0); + this.layoutControl1.Name = "layoutControl1"; + this.layoutControl1.Root = this.layoutControlGroup1; + this.layoutControl1.Size = new System.Drawing.Size(354, 204); + this.layoutControl1.TabIndex = 0; + this.layoutControl1.Text = "layoutControl1"; + // + // gbDataLog + // + this.gbDataLog.Controls.Add(this.layoutControl6); + this.gbDataLog.Location = new System.Drawing.Point(3, 3); + this.gbDataLog.Name = "gbDataLog"; + this.gbDataLog.Size = new System.Drawing.Size(348, 198); + this.gbDataLog.TabIndex = 9; + this.gbDataLog.Text = "Data Logging"; + // + // layoutControl6 + // + this.layoutControl6.Controls.Add(this.btnOpenLogFolder); + this.layoutControl6.Controls.Add(this.btnLogStart); + this.layoutControl6.Controls.Add(this.cbLogTime); + this.layoutControl6.Dock = System.Windows.Forms.DockStyle.Fill; + this.layoutControl6.Location = new System.Drawing.Point(2, 22); + this.layoutControl6.Name = "layoutControl6"; + this.layoutControl6.OptionsCustomizationForm.DesignTimeCustomizationFormPositionAndSize = new System.Drawing.Rectangle(1209, 389, 250, 350); + this.layoutControl6.Root = this.layoutControlGroup6; + this.layoutControl6.Size = new System.Drawing.Size(344, 174); + this.layoutControl6.TabIndex = 0; + this.layoutControl6.Text = "layoutControl6"; + // + // btnOpenLogFolder + // + this.btnOpenLogFolder.Location = new System.Drawing.Point(3, 109); + this.btnOpenLogFolder.Name = "btnOpenLogFolder"; + this.btnOpenLogFolder.Size = new System.Drawing.Size(338, 62); + this.btnOpenLogFolder.StyleController = this.layoutControl6; + this.btnOpenLogFolder.TabIndex = 6; + this.btnOpenLogFolder.Text = "Open Log Folder"; + this.btnOpenLogFolder.Click += new System.EventHandler(this.btnOpenLogFolder_Click); + // + // btnLogStart + // + this.btnLogStart.Location = new System.Drawing.Point(3, 37); + this.btnLogStart.Name = "btnLogStart"; + this.btnLogStart.Size = new System.Drawing.Size(338, 68); + this.btnLogStart.StyleController = this.layoutControl6; + this.btnLogStart.TabIndex = 5; + this.btnLogStart.Text = "Log Start"; + this.btnLogStart.Click += new System.EventHandler(this.btnLogStart_Click); + // + // cbLogTime + // + this.cbLogTime.EditValue = "5"; + this.cbLogTime.Location = new System.Drawing.Point(68, 3); + this.cbLogTime.Name = "cbLogTime"; + this.cbLogTime.Properties.Appearance.Options.UseTextOptions = true; + this.cbLogTime.Properties.Appearance.TextOptions.HAlignment = DevExpress.Utils.HorzAlignment.Far; + this.cbLogTime.Properties.Buttons.AddRange(new DevExpress.XtraEditors.Controls.EditorButton[] { + new DevExpress.XtraEditors.Controls.EditorButton(DevExpress.XtraEditors.Controls.ButtonPredefines.Combo)}); + this.cbLogTime.Properties.Items.AddRange(new object[] { + "1", + "5", + "10", + "15", + "30", + "60"}); + this.cbLogTime.Size = new System.Drawing.Size(273, 20); + this.cbLogTime.StyleController = this.layoutControl6; + this.cbLogTime.TabIndex = 4; + // + // layoutControlGroup6 + // + this.layoutControlGroup6.CustomizationFormText = "layoutControlGroup6"; + this.layoutControlGroup6.EnableIndentsWithoutBorders = DevExpress.Utils.DefaultBoolean.True; + this.layoutControlGroup6.GroupBordersVisible = false; + this.layoutControlGroup6.Items.AddRange(new DevExpress.XtraLayout.BaseLayoutItem[] { + this.lcitemLogTime, + this.layoutControlItem13, + this.layoutControlItem12}); + this.layoutControlGroup6.Location = new System.Drawing.Point(0, 0); + this.layoutControlGroup6.Name = "layoutControlGroup6"; + this.layoutControlGroup6.Padding = new DevExpress.XtraLayout.Utils.Padding(1, 1, 1, 1); + this.layoutControlGroup6.Size = new System.Drawing.Size(344, 174); + this.layoutControlGroup6.Text = "layoutControlGroup6"; + this.layoutControlGroup6.TextVisible = false; + // + // lcitemLogTime + // + this.lcitemLogTime.AppearanceItemCaption.Options.UseTextOptions = true; + this.lcitemLogTime.AppearanceItemCaption.TextOptions.HAlignment = DevExpress.Utils.HorzAlignment.Center; + this.lcitemLogTime.Control = this.cbLogTime; + this.lcitemLogTime.CustomizationFormText = "Log Time"; + this.lcitemLogTime.Location = new System.Drawing.Point(0, 0); + this.lcitemLogTime.MinSize = new System.Drawing.Size(119, 24); + this.lcitemLogTime.Name = "lcitemLogTime"; + this.lcitemLogTime.Size = new System.Drawing.Size(342, 34); + this.lcitemLogTime.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.lcitemLogTime.Text = "Log Time"; + this.lcitemLogTime.TextAlignMode = DevExpress.XtraLayout.TextAlignModeItem.CustomSize; + this.lcitemLogTime.TextSize = new System.Drawing.Size(60, 20); + this.lcitemLogTime.TextToControlDistance = 5; + // + // layoutControlItem13 + // + this.layoutControlItem13.Control = this.btnLogStart; + this.layoutControlItem13.CustomizationFormText = "layoutControlItem13"; + this.layoutControlItem13.Location = new System.Drawing.Point(0, 34); + this.layoutControlItem13.MinSize = new System.Drawing.Size(93, 26); + this.layoutControlItem13.Name = "layoutControlItem13"; + this.layoutControlItem13.Size = new System.Drawing.Size(342, 72); + this.layoutControlItem13.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem13.Text = "layoutControlItem13"; + this.layoutControlItem13.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem13.TextToControlDistance = 0; + this.layoutControlItem13.TextVisible = false; + // + // layoutControlItem12 + // + this.layoutControlItem12.Control = this.btnOpenLogFolder; + this.layoutControlItem12.CustomizationFormText = "layoutControlItem12"; + this.layoutControlItem12.Location = new System.Drawing.Point(0, 106); + this.layoutControlItem12.MinSize = new System.Drawing.Size(93, 26); + this.layoutControlItem12.Name = "layoutControlItem12"; + this.layoutControlItem12.Size = new System.Drawing.Size(342, 66); + this.layoutControlItem12.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem12.Text = "layoutControlItem12"; + this.layoutControlItem12.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem12.TextToControlDistance = 0; + this.layoutControlItem12.TextVisible = false; + // + // layoutControlGroup1 + // + this.layoutControlGroup1.CustomizationFormText = "layoutControlGroup1"; + this.layoutControlGroup1.EnableIndentsWithoutBorders = DevExpress.Utils.DefaultBoolean.True; + this.layoutControlGroup1.GroupBordersVisible = false; + this.layoutControlGroup1.Items.AddRange(new DevExpress.XtraLayout.BaseLayoutItem[] { + this.layoutControlItem1}); + this.layoutControlGroup1.Location = new System.Drawing.Point(0, 0); + this.layoutControlGroup1.Name = "layoutControlGroup1"; + this.layoutControlGroup1.Padding = new DevExpress.XtraLayout.Utils.Padding(1, 1, 1, 1); + this.layoutControlGroup1.Size = new System.Drawing.Size(354, 204); + this.layoutControlGroup1.Text = "layoutControlGroup1"; + this.layoutControlGroup1.TextVisible = false; + // + // layoutControlItem1 + // + this.layoutControlItem1.Control = this.gbDataLog; + this.layoutControlItem1.CustomizationFormText = "layoutControlItem1"; + this.layoutControlItem1.Location = new System.Drawing.Point(0, 0); + this.layoutControlItem1.Name = "layoutControlItem1"; + this.layoutControlItem1.Size = new System.Drawing.Size(352, 202); + this.layoutControlItem1.Text = "layoutControlItem1"; + this.layoutControlItem1.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem1.TextToControlDistance = 0; + this.layoutControlItem1.TextVisible = false; + // + // tmrLogging + // + this.tmrLogging.Interval = 500; + this.tmrLogging.Tick += new System.EventHandler(this.tmrLogging_Tick); + // + // ucDataLog + // + this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 14F); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.Controls.Add(this.layoutControl1); + this.Name = "ucDataLog"; + this.Size = new System.Drawing.Size(354, 204); + ((System.ComponentModel.ISupportInitialize)(this.layoutControl1)).EndInit(); + this.layoutControl1.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.gbDataLog)).EndInit(); + this.gbDataLog.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.layoutControl6)).EndInit(); + this.layoutControl6.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.cbLogTime.Properties)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup6)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.lcitemLogTime)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem13)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem12)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup1)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem1)).EndInit(); + this.ResumeLayout(false); + + } + + #endregion + + private DevExpress.XtraLayout.LayoutControl layoutControl1; + private DevExpress.XtraLayout.LayoutControlGroup layoutControlGroup1; + private DevExpress.XtraEditors.GroupControl gbDataLog; + private DevExpress.XtraLayout.LayoutControl layoutControl6; + private DevExpress.XtraEditors.SimpleButton btnOpenLogFolder; + private DevExpress.XtraEditors.SimpleButton btnLogStart; + private DevExpress.XtraEditors.ComboBoxEdit cbLogTime; + private DevExpress.XtraLayout.LayoutControlGroup layoutControlGroup6; + private DevExpress.XtraLayout.LayoutControlItem lcitemLogTime; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem13; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem12; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem1; + private System.Windows.Forms.Timer tmrLogging; + } +} diff --git a/LFP_Manager_PRM/Controls/ucDataLog.cs b/LFP_Manager_PRM/Controls/ucDataLog.cs new file mode 100644 index 0000000..6b70282 --- /dev/null +++ b/LFP_Manager_PRM/Controls/ucDataLog.cs @@ -0,0 +1,141 @@ +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Drawing; +using System.Data; +using System.Text; +using System.Linq; +using System.Windows.Forms; +using DevExpress.XtraEditors; + +using LFP_Manager.DataStructure; +using LFP_Manager.Utils; + +namespace LFP_Manager.Controls +{ + public delegate void LogDataUpdate(object sender, string LogResult, bool active, int aLogTime); + + public partial class ucDataLog : DevExpress.XtraEditors.XtraUserControl + { + #region VARIABLES + + CommConfig Config; + DeviceSystemData SystemData; + DateTime bakDateTime; + + String LogFileName = ""; + String LogFileNameTotal = ""; + + bool logging = false; + bool Active = false; + + public event LogDataUpdate OnUpdate = null; + + #endregion + + #region CONSTRUCTORS + + public ucDataLog() + { + InitializeComponent(); + } + + #endregion + + #region PUBLIC UPDATE + + public void UpdateActiveStatus(bool aStatus, CommConfig aConfig, ref DeviceSystemData aSystemData) + { + Active = aStatus; + Config = aConfig; + SystemData = aSystemData; + } + + public void UpdateData(ref DeviceSystemData aSystemData) + { + SystemData = aSystemData; + } + + #endregion + + #region TIMER EVENT + + private void tmrLogging_Tick(object sender, EventArgs e) + { + DateTime cDate = DateTime.Now; + int ss; + + if ((logging) && (Active)) + { + ss = Convert.ToInt16(cbLogTime.Text); + + if ( + ((bakDateTime.Minute != cDate.Minute) + || (bakDateTime.Second != cDate.Second)) + && ((cDate.Second % ss) == 0) + ) + { + // CSV Log Process + try + { + csLog.SystemDataLog(1, Config, SystemData, cDate, Application.ExecutablePath, LogFileName); + bakDateTime = cDate; + } + catch (Exception) + { + } + + //// Database Log Process + //csDbUtils.LogDbCreate(csConstData.CAN_MODEL[Config.CanModelIndex]); + //csDbUtils.BmsLogDataInsert(ref Config, ref SystemData, cDate); + } + } + } + + #endregion + + #region BUTTON EVENT + + private void btnLogStart_Click(object sender, EventArgs e) + { + if (logging == true) + { + tmrLogging.Stop(); + cbLogTime.Enabled = true; + logging = false; + btnLogStart.Text = "Log Start"; + + if (OnUpdate != null) + { + OnUpdate(this, String.Format("LogStop: {0:yyyy/MM/dd HH:mm:ss}", DateTime.Now), false, Convert.ToInt16(cbLogTime.Text)); + } + } + else + { + LogFileNameTotal = String.Format("{0:yyMMddHHmmss}", DateTime.Now); + LogFileName = String.Format("{0:yyMMddHHmmss}", DateTime.Now); + tmrLogging.Start(); + cbLogTime.Enabled = false; + logging = true; + btnLogStart.Text = "Log Stop"; + + OnUpdate?.Invoke(this, String.Format("Logging: SHELFX_LOG_{0}.csv", LogFileName), true, Convert.ToInt16(cbLogTime.Text)); + + csDbUtils.LogDbCreate(csConstData.CommType.CAN_MODEL[Config.TargetModelIndex]); + } + } + + private void btnOpenLogFolder_Click(object sender, EventArgs e) + { + System.Diagnostics.Process ps = new System.Diagnostics.Process(); + ps.StartInfo.FileName = "explorer.exe"; + ps.StartInfo.Arguments = csLog.GetLogFolder(Application.ExecutablePath); + ps.StartInfo.WorkingDirectory = csLog.GetLogFolder(Application.ExecutablePath); + ps.StartInfo.WindowStyle = System.Diagnostics.ProcessWindowStyle.Normal; + + ps.Start(); + } + + #endregion + } +} diff --git a/LFP_Manager_PRM/Controls/ucDataLog.resx b/LFP_Manager_PRM/Controls/ucDataLog.resx new file mode 100644 index 0000000..92c9522 --- /dev/null +++ b/LFP_Manager_PRM/Controls/ucDataLog.resx @@ -0,0 +1,123 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + 17, 17 + + \ No newline at end of file diff --git a/LFP_Manager_PRM/Controls/ucEventLog.Designer.cs b/LFP_Manager_PRM/Controls/ucEventLog.Designer.cs new file mode 100644 index 0000000..e88f2e5 --- /dev/null +++ b/LFP_Manager_PRM/Controls/ucEventLog.Designer.cs @@ -0,0 +1,288 @@ +namespace LFP_Manager.Controls +{ + partial class ucEventLog + { + /// + /// Required designer variable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Clean up any resources being used. + /// + /// true if managed resources should be disposed; otherwise, false. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Component Designer generated code + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + this.layoutControl1 = new DevExpress.XtraLayout.LayoutControl(); + this.gcLogging = new DevExpress.XtraEditors.GroupControl(); + this.layoutControl2 = new DevExpress.XtraLayout.LayoutControl(); + this.cbPacketLog = new DevExpress.XtraEditors.CheckEdit(); + this.btnLogClear = new DevExpress.XtraEditors.SimpleButton(); + this.tabDataLog = new DevExpress.XtraTab.XtraTabControl(); + this.tpDataLog = new DevExpress.XtraTab.XtraTabPage(); + this.panelControl1 = new DevExpress.XtraEditors.PanelControl(); + this.meDataLog = new DevExpress.XtraEditors.MemoEdit(); + this.layoutControlGroup2 = new DevExpress.XtraLayout.LayoutControlGroup(); + this.layoutControlItem6 = new DevExpress.XtraLayout.LayoutControlItem(); + this.layoutControlItem14 = new DevExpress.XtraLayout.LayoutControlItem(); + this.lcCheckEdit = new DevExpress.XtraLayout.LayoutControlItem(); + this.layoutControlGroup1 = new DevExpress.XtraLayout.LayoutControlGroup(); + this.layoutControlItem1 = new DevExpress.XtraLayout.LayoutControlItem(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControl1)).BeginInit(); + this.layoutControl1.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.gcLogging)).BeginInit(); + this.gcLogging.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControl2)).BeginInit(); + this.layoutControl2.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.cbPacketLog.Properties)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.tabDataLog)).BeginInit(); + this.tabDataLog.SuspendLayout(); + this.tpDataLog.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.panelControl1)).BeginInit(); + this.panelControl1.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.meDataLog.Properties)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup2)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem6)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem14)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.lcCheckEdit)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup1)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem1)).BeginInit(); + this.SuspendLayout(); + // + // layoutControl1 + // + this.layoutControl1.Controls.Add(this.gcLogging); + this.layoutControl1.Dock = System.Windows.Forms.DockStyle.Fill; + this.layoutControl1.Location = new System.Drawing.Point(0, 0); + this.layoutControl1.Name = "layoutControl1"; + this.layoutControl1.OptionsCustomizationForm.DesignTimeCustomizationFormPositionAndSize = new System.Drawing.Rectangle(302, 140, 250, 350); + this.layoutControl1.Root = this.layoutControlGroup1; + this.layoutControl1.Size = new System.Drawing.Size(799, 173); + this.layoutControl1.TabIndex = 0; + this.layoutControl1.Text = "layoutControl1"; + // + // gcLogging + // + this.gcLogging.Controls.Add(this.layoutControl2); + this.gcLogging.Location = new System.Drawing.Point(3, 3); + this.gcLogging.Name = "gcLogging"; + this.gcLogging.Size = new System.Drawing.Size(793, 167); + this.gcLogging.TabIndex = 6; + this.gcLogging.Text = "Event"; + // + // layoutControl2 + // + this.layoutControl2.Controls.Add(this.cbPacketLog); + this.layoutControl2.Controls.Add(this.btnLogClear); + this.layoutControl2.Controls.Add(this.tabDataLog); + this.layoutControl2.Dock = System.Windows.Forms.DockStyle.Fill; + this.layoutControl2.Location = new System.Drawing.Point(2, 22); + this.layoutControl2.Name = "layoutControl2"; + this.layoutControl2.OptionsCustomizationForm.DesignTimeCustomizationFormPositionAndSize = new System.Drawing.Rectangle(1234, 235, 250, 350); + this.layoutControl2.Root = this.layoutControlGroup2; + this.layoutControl2.Size = new System.Drawing.Size(789, 143); + this.layoutControl2.TabIndex = 0; + this.layoutControl2.Text = "layoutControl2"; + // + // cbPacketLog + // + this.cbPacketLog.Location = new System.Drawing.Point(702, 4); + this.cbPacketLog.Name = "cbPacketLog"; + this.cbPacketLog.Properties.Caption = "Packet"; + this.cbPacketLog.Size = new System.Drawing.Size(83, 19); + this.cbPacketLog.StyleController = this.layoutControl2; + this.cbPacketLog.TabIndex = 6; + // + // btnLogClear + // + this.btnLogClear.Location = new System.Drawing.Point(702, 28); + this.btnLogClear.Name = "btnLogClear"; + this.btnLogClear.Size = new System.Drawing.Size(83, 111); + this.btnLogClear.StyleController = this.layoutControl2; + this.btnLogClear.TabIndex = 5; + this.btnLogClear.Text = "Clear"; + this.btnLogClear.Click += new System.EventHandler(this.btnLogClear_Click); + // + // tabDataLog + // + this.tabDataLog.Location = new System.Drawing.Point(4, 4); + this.tabDataLog.Name = "tabDataLog"; + this.tabDataLog.SelectedTabPage = this.tpDataLog; + this.tabDataLog.Size = new System.Drawing.Size(694, 135); + this.tabDataLog.TabIndex = 4; + this.tabDataLog.TabPages.AddRange(new DevExpress.XtraTab.XtraTabPage[] { + this.tpDataLog}); + // + // tpDataLog + // + this.tpDataLog.Controls.Add(this.panelControl1); + this.tpDataLog.Name = "tpDataLog"; + this.tpDataLog.Size = new System.Drawing.Size(688, 106); + this.tpDataLog.Text = "Data Log"; + // + // panelControl1 + // + this.panelControl1.Controls.Add(this.meDataLog); + this.panelControl1.Dock = System.Windows.Forms.DockStyle.Fill; + this.panelControl1.Location = new System.Drawing.Point(0, 0); + this.panelControl1.Name = "panelControl1"; + this.panelControl1.Size = new System.Drawing.Size(688, 106); + this.panelControl1.TabIndex = 0; + // + // meDataLog + // + this.meDataLog.Dock = System.Windows.Forms.DockStyle.Fill; + this.meDataLog.Location = new System.Drawing.Point(2, 2); + this.meDataLog.Name = "meDataLog"; + this.meDataLog.Properties.MaxLength = 1000; + this.meDataLog.Size = new System.Drawing.Size(684, 102); + this.meDataLog.TabIndex = 0; + // + // layoutControlGroup2 + // + this.layoutControlGroup2.CustomizationFormText = "layoutControlGroup2"; + this.layoutControlGroup2.EnableIndentsWithoutBorders = DevExpress.Utils.DefaultBoolean.True; + this.layoutControlGroup2.GroupBordersVisible = false; + this.layoutControlGroup2.Items.AddRange(new DevExpress.XtraLayout.BaseLayoutItem[] { + this.layoutControlItem6, + this.layoutControlItem14, + this.lcCheckEdit}); + this.layoutControlGroup2.Location = new System.Drawing.Point(0, 0); + this.layoutControlGroup2.Name = "layoutControlGroup2"; + this.layoutControlGroup2.Padding = new DevExpress.XtraLayout.Utils.Padding(2, 2, 2, 2); + this.layoutControlGroup2.Size = new System.Drawing.Size(789, 143); + this.layoutControlGroup2.Text = "layoutControlGroup2"; + this.layoutControlGroup2.TextVisible = false; + // + // layoutControlItem6 + // + this.layoutControlItem6.Control = this.tabDataLog; + this.layoutControlItem6.CustomizationFormText = "layoutControlItem6"; + this.layoutControlItem6.Location = new System.Drawing.Point(0, 0); + this.layoutControlItem6.MinSize = new System.Drawing.Size(104, 24); + this.layoutControlItem6.Name = "layoutControlItem6"; + this.layoutControlItem6.Size = new System.Drawing.Size(698, 139); + this.layoutControlItem6.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem6.Text = "layoutControlItem6"; + this.layoutControlItem6.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem6.TextToControlDistance = 0; + this.layoutControlItem6.TextVisible = false; + // + // layoutControlItem14 + // + this.layoutControlItem14.Control = this.btnLogClear; + this.layoutControlItem14.CustomizationFormText = "layoutControlItem14"; + this.layoutControlItem14.Location = new System.Drawing.Point(698, 24); + this.layoutControlItem14.MinSize = new System.Drawing.Size(60, 26); + this.layoutControlItem14.Name = "layoutControlItem14"; + this.layoutControlItem14.Size = new System.Drawing.Size(87, 115); + this.layoutControlItem14.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem14.Text = "layoutControlItem14"; + this.layoutControlItem14.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem14.TextToControlDistance = 0; + this.layoutControlItem14.TextVisible = false; + // + // lcCheckEdit + // + this.lcCheckEdit.Control = this.cbPacketLog; + this.lcCheckEdit.CustomizationFormText = "lcCheckEdit"; + this.lcCheckEdit.Location = new System.Drawing.Point(698, 0); + this.lcCheckEdit.MinSize = new System.Drawing.Size(87, 23); + this.lcCheckEdit.Name = "lcCheckEdit"; + this.lcCheckEdit.Size = new System.Drawing.Size(87, 24); + this.lcCheckEdit.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.lcCheckEdit.Text = "lcCheckEdit"; + this.lcCheckEdit.TextSize = new System.Drawing.Size(0, 0); + this.lcCheckEdit.TextToControlDistance = 0; + this.lcCheckEdit.TextVisible = false; + // + // layoutControlGroup1 + // + this.layoutControlGroup1.CustomizationFormText = "layoutControlGroup1"; + this.layoutControlGroup1.EnableIndentsWithoutBorders = DevExpress.Utils.DefaultBoolean.True; + this.layoutControlGroup1.GroupBordersVisible = false; + this.layoutControlGroup1.Items.AddRange(new DevExpress.XtraLayout.BaseLayoutItem[] { + this.layoutControlItem1}); + this.layoutControlGroup1.Location = new System.Drawing.Point(0, 0); + this.layoutControlGroup1.Name = "layoutControlGroup1"; + this.layoutControlGroup1.Padding = new DevExpress.XtraLayout.Utils.Padding(1, 1, 1, 1); + this.layoutControlGroup1.Size = new System.Drawing.Size(799, 173); + this.layoutControlGroup1.Text = "layoutControlGroup1"; + this.layoutControlGroup1.TextVisible = false; + // + // layoutControlItem1 + // + this.layoutControlItem1.Control = this.gcLogging; + this.layoutControlItem1.CustomizationFormText = "layoutControlItem1"; + this.layoutControlItem1.Location = new System.Drawing.Point(0, 0); + this.layoutControlItem1.Name = "layoutControlItem1"; + this.layoutControlItem1.Size = new System.Drawing.Size(797, 171); + this.layoutControlItem1.Text = "layoutControlItem1"; + this.layoutControlItem1.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem1.TextToControlDistance = 0; + this.layoutControlItem1.TextVisible = false; + // + // ucEventLog + // + this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 14F); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.Controls.Add(this.layoutControl1); + this.Name = "ucEventLog"; + this.Size = new System.Drawing.Size(799, 173); + ((System.ComponentModel.ISupportInitialize)(this.layoutControl1)).EndInit(); + this.layoutControl1.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.gcLogging)).EndInit(); + this.gcLogging.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.layoutControl2)).EndInit(); + this.layoutControl2.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.cbPacketLog.Properties)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.tabDataLog)).EndInit(); + this.tabDataLog.ResumeLayout(false); + this.tpDataLog.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.panelControl1)).EndInit(); + this.panelControl1.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.meDataLog.Properties)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup2)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem6)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem14)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.lcCheckEdit)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup1)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem1)).EndInit(); + this.ResumeLayout(false); + + } + + #endregion + + private DevExpress.XtraLayout.LayoutControl layoutControl1; + private DevExpress.XtraLayout.LayoutControlGroup layoutControlGroup1; + private DevExpress.XtraEditors.GroupControl gcLogging; + private DevExpress.XtraLayout.LayoutControl layoutControl2; + private DevExpress.XtraEditors.SimpleButton btnLogClear; + private DevExpress.XtraTab.XtraTabControl tabDataLog; + private DevExpress.XtraTab.XtraTabPage tpDataLog; + private DevExpress.XtraEditors.PanelControl panelControl1; + private DevExpress.XtraEditors.MemoEdit meDataLog; + private DevExpress.XtraLayout.LayoutControlGroup layoutControlGroup2; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem6; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem14; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem1; + private DevExpress.XtraEditors.CheckEdit cbPacketLog; + private DevExpress.XtraLayout.LayoutControlItem lcCheckEdit; + } +} diff --git a/LFP_Manager_PRM/Controls/ucEventLog.cs b/LFP_Manager_PRM/Controls/ucEventLog.cs new file mode 100644 index 0000000..2d613e3 --- /dev/null +++ b/LFP_Manager_PRM/Controls/ucEventLog.cs @@ -0,0 +1,47 @@ +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Drawing; +using System.Data; +using System.Text; +using System.Linq; +using System.Windows.Forms; +using DevExpress.XtraEditors; + +namespace LFP_Manager.Controls +{ + public partial class ucEventLog : DevExpress.XtraEditors.XtraUserControl + { + #region CONSTRUCTORS + + public ucEventLog() + { + InitializeComponent(); + } + + #endregion + + #region PUBLIC UPDATE + + public void EventUpdate(string aEvent) + { + if (cbPacketLog.Checked) + meDataLog.Text = aEvent + meDataLog.Text; + } + public void MsgUpdate(string aEvent) + { + meDataLog.Text = aEvent + meDataLog.Text; + } + + #endregion + + #region ENVENT + + private void btnLogClear_Click(object sender, EventArgs e) + { + meDataLog.Text = ""; + } + + #endregion + } +} diff --git a/LFP_Manager_PRM/Controls/ucEventLog.resx b/LFP_Manager_PRM/Controls/ucEventLog.resx new file mode 100644 index 0000000..1af7de1 --- /dev/null +++ b/LFP_Manager_PRM/Controls/ucEventLog.resx @@ -0,0 +1,120 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + \ No newline at end of file diff --git a/LFP_Manager_PRM/Controls/ucHistroy.Designer.cs b/LFP_Manager_PRM/Controls/ucHistroy.Designer.cs new file mode 100644 index 0000000..417b839 --- /dev/null +++ b/LFP_Manager_PRM/Controls/ucHistroy.Designer.cs @@ -0,0 +1,331 @@ +namespace LFP_Manager.Controls +{ + partial class ucHistroy + { + /// + /// Required designer variable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Clean up any resources being used. + /// + /// true if managed resources should be disposed; otherwise, false. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Component Designer generated code + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + this.layoutControl1 = new DevExpress.XtraLayout.LayoutControl(); + this.btnSearch = new System.Windows.Forms.Button(); + this.dtpEnd = new System.Windows.Forms.DateTimePicker(); + this.dtpStart = new System.Windows.Forms.DateTimePicker(); + this.xtcSearchResult = new DevExpress.XtraTab.XtraTabControl(); + this.pgGrid = new DevExpress.XtraTab.XtraTabPage(); + this.layoutControl3 = new DevExpress.XtraLayout.LayoutControl(); + this.gridSearchResult = new System.Windows.Forms.DataGridView(); + this.Root = new DevExpress.XtraLayout.LayoutControlGroup(); + this.layoutControlItem5 = new DevExpress.XtraLayout.LayoutControlItem(); + this.layoutControlGroup1 = new DevExpress.XtraLayout.LayoutControlGroup(); + this.lcgbSelectDatetime = new DevExpress.XtraLayout.LayoutControlGroup(); + this.slbStartDate = new DevExpress.XtraLayout.SimpleLabelItem(); + this.layoutControlItem2 = new DevExpress.XtraLayout.LayoutControlItem(); + this.slbEndDate = new DevExpress.XtraLayout.SimpleLabelItem(); + this.layoutControlItem4 = new DevExpress.XtraLayout.LayoutControlItem(); + this.layoutControlItem3 = new DevExpress.XtraLayout.LayoutControlItem(); + this.lcgbSearchResult = new DevExpress.XtraLayout.LayoutControlGroup(); + this.layoutControlItem1 = new DevExpress.XtraLayout.LayoutControlItem(); + this.DbWaitForm = new DevExpress.XtraSplashScreen.SplashScreenManager(this, typeof(global::LFP_Manager.Forms.fmxWait), true, true, typeof(System.Windows.Forms.UserControl)); + ((System.ComponentModel.ISupportInitialize)(this.layoutControl1)).BeginInit(); + this.layoutControl1.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.xtcSearchResult)).BeginInit(); + this.xtcSearchResult.SuspendLayout(); + this.pgGrid.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControl3)).BeginInit(); + this.layoutControl3.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.gridSearchResult)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.Root)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem5)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup1)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.lcgbSelectDatetime)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.slbStartDate)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem2)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.slbEndDate)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem4)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem3)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.lcgbSearchResult)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem1)).BeginInit(); + this.SuspendLayout(); + // + // layoutControl1 + // + this.layoutControl1.Controls.Add(this.btnSearch); + this.layoutControl1.Controls.Add(this.dtpEnd); + this.layoutControl1.Controls.Add(this.dtpStart); + this.layoutControl1.Controls.Add(this.xtcSearchResult); + this.layoutControl1.Dock = System.Windows.Forms.DockStyle.Fill; + this.layoutControl1.Location = new System.Drawing.Point(0, 0); + this.layoutControl1.Name = "layoutControl1"; + this.layoutControl1.OptionsCustomizationForm.DesignTimeCustomizationFormPositionAndSize = new System.Drawing.Rectangle(947, 249, 650, 400); + this.layoutControl1.Root = this.layoutControlGroup1; + this.layoutControl1.Size = new System.Drawing.Size(850, 635); + this.layoutControl1.TabIndex = 0; + this.layoutControl1.Text = "layoutControl1"; + // + // btnSearch + // + this.btnSearch.Location = new System.Drawing.Point(592, 28); + this.btnSearch.Name = "btnSearch"; + this.btnSearch.Size = new System.Drawing.Size(251, 25); + this.btnSearch.TabIndex = 7; + this.btnSearch.Text = "SEARCH"; + this.btnSearch.UseVisualStyleBackColor = true; + this.btnSearch.Click += new System.EventHandler(this.btnSearch_Click); + // + // dtpEnd + // + this.dtpEnd.CustomFormat = "yyyy-MM-dd HH:mm:ss"; + this.dtpEnd.Font = new System.Drawing.Font("Tahoma", 11F); + this.dtpEnd.Format = System.Windows.Forms.DateTimePickerFormat.Custom; + this.dtpEnd.Location = new System.Drawing.Point(395, 28); + this.dtpEnd.Name = "dtpEnd"; + this.dtpEnd.Size = new System.Drawing.Size(193, 25); + this.dtpEnd.TabIndex = 6; + // + // dtpStart + // + this.dtpStart.CalendarFont = new System.Drawing.Font("Tahoma", 9F); + this.dtpStart.CustomFormat = "yyyy-MM-dd HH:mm:ss"; + this.dtpStart.Font = new System.Drawing.Font("Tahoma", 11F); + this.dtpStart.Format = System.Windows.Forms.DateTimePickerFormat.Custom; + this.dtpStart.Location = new System.Drawing.Point(102, 28); + this.dtpStart.Name = "dtpStart"; + this.dtpStart.Size = new System.Drawing.Size(194, 25); + this.dtpStart.TabIndex = 5; + // + // xtcSearchResult + // + this.xtcSearchResult.Location = new System.Drawing.Point(7, 86); + this.xtcSearchResult.Name = "xtcSearchResult"; + this.xtcSearchResult.SelectedTabPage = this.pgGrid; + this.xtcSearchResult.Size = new System.Drawing.Size(836, 542); + this.xtcSearchResult.TabIndex = 4; + this.xtcSearchResult.TabPages.AddRange(new DevExpress.XtraTab.XtraTabPage[] { + this.pgGrid}); + // + // pgGrid + // + this.pgGrid.Controls.Add(this.layoutControl3); + this.pgGrid.Name = "pgGrid"; + this.pgGrid.Size = new System.Drawing.Size(834, 516); + this.pgGrid.Text = "Result Data"; + // + // layoutControl3 + // + this.layoutControl3.Controls.Add(this.gridSearchResult); + this.layoutControl3.Dock = System.Windows.Forms.DockStyle.Fill; + this.layoutControl3.Location = new System.Drawing.Point(0, 0); + this.layoutControl3.Name = "layoutControl3"; + this.layoutControl3.Root = this.Root; + this.layoutControl3.Size = new System.Drawing.Size(834, 516); + this.layoutControl3.TabIndex = 0; + this.layoutControl3.Text = "layoutControl3"; + // + // gridSearchResult + // + this.gridSearchResult.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize; + this.gridSearchResult.Location = new System.Drawing.Point(3, 3); + this.gridSearchResult.Name = "gridSearchResult"; + this.gridSearchResult.RowTemplate.Height = 23; + this.gridSearchResult.Size = new System.Drawing.Size(828, 510); + this.gridSearchResult.TabIndex = 4; + // + // Root + // + this.Root.EnableIndentsWithoutBorders = DevExpress.Utils.DefaultBoolean.True; + this.Root.GroupBordersVisible = false; + this.Root.Items.AddRange(new DevExpress.XtraLayout.BaseLayoutItem[] { + this.layoutControlItem5}); + this.Root.Name = "Root"; + this.Root.Padding = new DevExpress.XtraLayout.Utils.Padding(1, 1, 1, 1); + this.Root.Size = new System.Drawing.Size(834, 516); + this.Root.TextVisible = false; + // + // layoutControlItem5 + // + this.layoutControlItem5.Control = this.gridSearchResult; + this.layoutControlItem5.Location = new System.Drawing.Point(0, 0); + this.layoutControlItem5.Name = "layoutControlItem5"; + this.layoutControlItem5.Size = new System.Drawing.Size(832, 514); + this.layoutControlItem5.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem5.TextVisible = false; + // + // layoutControlGroup1 + // + this.layoutControlGroup1.CustomizationFormText = "layoutControlGroup1"; + this.layoutControlGroup1.EnableIndentsWithoutBorders = DevExpress.Utils.DefaultBoolean.True; + this.layoutControlGroup1.GroupBordersVisible = false; + this.layoutControlGroup1.Items.AddRange(new DevExpress.XtraLayout.BaseLayoutItem[] { + this.lcgbSelectDatetime, + this.lcgbSearchResult}); + this.layoutControlGroup1.Name = "Root"; + this.layoutControlGroup1.Padding = new DevExpress.XtraLayout.Utils.Padding(1, 1, 1, 1); + this.layoutControlGroup1.Size = new System.Drawing.Size(850, 635); + this.layoutControlGroup1.TextVisible = false; + // + // lcgbSelectDatetime + // + this.lcgbSelectDatetime.Items.AddRange(new DevExpress.XtraLayout.BaseLayoutItem[] { + this.slbStartDate, + this.layoutControlItem2, + this.slbEndDate, + this.layoutControlItem4, + this.layoutControlItem3}); + this.lcgbSelectDatetime.Location = new System.Drawing.Point(0, 0); + this.lcgbSelectDatetime.Name = "lcgbSelectDatetime"; + this.lcgbSelectDatetime.Padding = new DevExpress.XtraLayout.Utils.Padding(1, 1, 1, 1); + this.lcgbSelectDatetime.Size = new System.Drawing.Size(848, 58); + this.lcgbSelectDatetime.Text = "Select Datetime"; + // + // slbStartDate + // + this.slbStartDate.AllowHotTrack = false; + this.slbStartDate.Location = new System.Drawing.Point(0, 0); + this.slbStartDate.MinSize = new System.Drawing.Size(95, 18); + this.slbStartDate.Name = "slbStartDate"; + this.slbStartDate.Size = new System.Drawing.Size(95, 29); + this.slbStartDate.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.slbStartDate.Text = " Start Datetime"; + this.slbStartDate.TextSize = new System.Drawing.Size(85, 14); + // + // layoutControlItem2 + // + this.layoutControlItem2.Control = this.dtpStart; + this.layoutControlItem2.Location = new System.Drawing.Point(95, 0); + this.layoutControlItem2.MinSize = new System.Drawing.Size(24, 24); + this.layoutControlItem2.Name = "layoutControlItem2"; + this.layoutControlItem2.Size = new System.Drawing.Size(198, 29); + this.layoutControlItem2.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem2.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem2.TextVisible = false; + // + // slbEndDate + // + this.slbEndDate.AllowHotTrack = false; + this.slbEndDate.Location = new System.Drawing.Point(293, 0); + this.slbEndDate.MinSize = new System.Drawing.Size(95, 18); + this.slbEndDate.Name = "slbEndDate"; + this.slbEndDate.Size = new System.Drawing.Size(95, 29); + this.slbEndDate.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.slbEndDate.Text = " End Datetime"; + this.slbEndDate.TextSize = new System.Drawing.Size(85, 14); + // + // layoutControlItem4 + // + this.layoutControlItem4.Control = this.btnSearch; + this.layoutControlItem4.Location = new System.Drawing.Point(585, 0); + this.layoutControlItem4.MaxSize = new System.Drawing.Size(0, 29); + this.layoutControlItem4.MinSize = new System.Drawing.Size(24, 29); + this.layoutControlItem4.Name = "layoutControlItem4"; + this.layoutControlItem4.Size = new System.Drawing.Size(255, 29); + this.layoutControlItem4.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem4.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem4.TextVisible = false; + // + // layoutControlItem3 + // + this.layoutControlItem3.Control = this.dtpEnd; + this.layoutControlItem3.Location = new System.Drawing.Point(388, 0); + this.layoutControlItem3.MinSize = new System.Drawing.Size(24, 24); + this.layoutControlItem3.Name = "layoutControlItem3"; + this.layoutControlItem3.Size = new System.Drawing.Size(197, 29); + this.layoutControlItem3.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem3.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem3.TextVisible = false; + // + // lcgbSearchResult + // + this.lcgbSearchResult.Items.AddRange(new DevExpress.XtraLayout.BaseLayoutItem[] { + this.layoutControlItem1}); + this.lcgbSearchResult.Location = new System.Drawing.Point(0, 58); + this.lcgbSearchResult.Name = "lcgbSearchResult"; + this.lcgbSearchResult.Padding = new DevExpress.XtraLayout.Utils.Padding(1, 1, 1, 1); + this.lcgbSearchResult.Size = new System.Drawing.Size(848, 575); + this.lcgbSearchResult.Text = "Search Result"; + // + // layoutControlItem1 + // + this.layoutControlItem1.Control = this.xtcSearchResult; + this.layoutControlItem1.CustomizationFormText = "layoutControlItem1"; + this.layoutControlItem1.Location = new System.Drawing.Point(0, 0); + this.layoutControlItem1.Name = "layoutControlItem1"; + this.layoutControlItem1.Size = new System.Drawing.Size(840, 546); + this.layoutControlItem1.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem1.TextVisible = false; + // + // ucHistroy + // + this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 14F); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.Controls.Add(this.layoutControl1); + this.Name = "ucHistroy"; + this.Size = new System.Drawing.Size(850, 635); + ((System.ComponentModel.ISupportInitialize)(this.layoutControl1)).EndInit(); + this.layoutControl1.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.xtcSearchResult)).EndInit(); + this.xtcSearchResult.ResumeLayout(false); + this.pgGrid.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.layoutControl3)).EndInit(); + this.layoutControl3.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.gridSearchResult)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.Root)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem5)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup1)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.lcgbSelectDatetime)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.slbStartDate)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem2)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.slbEndDate)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem4)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem3)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.lcgbSearchResult)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem1)).EndInit(); + this.ResumeLayout(false); + + } + + #endregion + + private DevExpress.XtraLayout.LayoutControl layoutControl1; + private DevExpress.XtraLayout.LayoutControlGroup layoutControlGroup1; + private DevExpress.XtraTab.XtraTabControl xtcSearchResult; + private DevExpress.XtraTab.XtraTabPage pgGrid; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem1; + private DevExpress.XtraSplashScreen.SplashScreenManager DbWaitForm; + private System.Windows.Forms.Button btnSearch; + private System.Windows.Forms.DateTimePicker dtpEnd; + private System.Windows.Forms.DateTimePicker dtpStart; + private DevExpress.XtraLayout.LayoutControlGroup lcgbSelectDatetime; + private DevExpress.XtraLayout.SimpleLabelItem slbStartDate; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem2; + private DevExpress.XtraLayout.SimpleLabelItem slbEndDate; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem3; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem4; + private DevExpress.XtraLayout.LayoutControlGroup lcgbSearchResult; + private DevExpress.XtraLayout.LayoutControl layoutControl3; + private DevExpress.XtraLayout.LayoutControlGroup Root; + private System.Windows.Forms.DataGridView gridSearchResult; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem5; + } +} diff --git a/LFP_Manager_PRM/Controls/ucHistroy.cs b/LFP_Manager_PRM/Controls/ucHistroy.cs new file mode 100644 index 0000000..814dbb0 --- /dev/null +++ b/LFP_Manager_PRM/Controls/ucHistroy.cs @@ -0,0 +1,174 @@ +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Drawing; +using System.Data; +using System.Text; +using System.Linq; +using System.Windows.Forms; +using System.IO; + +using DevExpress.XtraWaitForm; +using DevExpress.XtraSplashScreen; + +using System.Data.SQLite; +using LFP_Manager.DataStructure; +using LFP_Manager.Utils; + +namespace LFP_Manager.Controls +{ + public partial class ucHistroy : DevExpress.XtraEditors.XtraUserControl + { + #region VARIABLES + + CommConfig Config; + + DataTable dt; + + #endregion + + #region CONSTRUCTOR + + public ucHistroy() + { + InitializeComponent(); + + dt = new DataTable(); + } + + public void SetCommCofig(CommConfig aConfig) + { + Config = aConfig; + } + #endregion + + #region SQL Quary Excute + + private void quaryExcute(string quary) + { + string dbFilename = System.IO.Path.GetDirectoryName(Application.ExecutablePath) + csDbConstData.DataBase.FileName; + + // Open database + string strConn = @"Data Source=" + dbFilename; + using (var connection = new SQLiteConnection(strConn)) + { + connection.Open(); + try + { + DataTable aT = new DataTable(); + + DbWaitForm.ShowWaitForm(); + + csDbUtils.BeginTran(connection); + // Update data + using (SQLiteCommand command = connection.CreateCommand()) + { + //sSQL = "insert into TrendTable ( TrendStamp, TagName, TagValue) Values ( " + IntToStr(stamp) + "," + name + "," + value + ");"; + command.CommandText = quary; + + try + { + SQLiteDataReader reader = command.ExecuteReader(); + aT.Load(reader); + } + catch (Exception) + { + } + } + csDbUtils.CommitTran(connection); + dt = aT; + //RealGridView.DataSource = dt; + + DbWaitForm.CloseWaitForm(); + } + catch (Exception e) + { + MessageBox.Show(e.ToString()); + } + finally + { + connection.Close(); + } + } + } + + #endregion + + #region BUTTON EVENT + + private void btnSearch_Click(object sender, EventArgs e) + { + DateTime start = dtpStart.Value; + DateTime mid; + DateTime end = dtpEnd.Value; + TimeSpan span = end - start; + + DataTable result = new DataTable(); + + int sDay = start.Day; + int eDay = end.Day; + + int total_days = eDay - sDay; + + DataTable[] dDt = new DataTable[total_days + 1]; + + string quary = ""; + + try + { + if (total_days == 0) + { + quary = String.Format(" where create_date > '{0:yyyy-MM-dd HH:mm:ss}'", start); + quary += String.Format(" and create_date < '{0:yyyy-MM-dd HH:mm:ss}'", end); + dDt[0] = csDbUtils.BmsDataSelectToDataTable(Config, start, quary); + if (dDt[0] == null) + MessageBox.Show("No data", "Result", MessageBoxButtons.OK, MessageBoxIcon.Information); + else + { + gridSearchResult.DataSource = dDt[0]; + //gridSearchResult.(); + } + } + else + { + DataTable bDt = new DataTable(); + for (int i = 0; i < (total_days + 1); i++) + { + //dDt[i] = new DataTable(); + if (i == 0) + { + quary = String.Format(" where create_date > '{0:yyyy-MM-dd HH:mm:ss}'", start); + dDt[i] = csDbUtils.BmsDataSelectToDataTable(Config, start, quary); + } + else if (i == total_days) + { + quary = String.Format(" where create_date < '{0:yyyy-MM-dd HH:mm:ss}'", end); + dDt[i] = csDbUtils.BmsDataSelectToDataTable(Config, end, quary); + } + else + { + quary = ""; + mid = start.AddDays(i); + dDt[i] = csDbUtils.BmsDataSelectToDataTable(Config, mid, quary); + } + if (dDt[i] != null) + bDt.Merge(dDt[i]); + } + if (bDt == null) + MessageBox.Show("No data", "Result", MessageBoxButtons.OK, MessageBoxIcon.Information); + else + { + gridSearchResult.DataSource = bDt; + //gridSearchResult.(); + } + } + } + catch (Exception ex) + { + MessageBox.Show(ex.Message, "Exception", MessageBoxButtons.OK, MessageBoxIcon.Error); + } + } + + #endregion + } +} diff --git a/LFP_Manager_PRM/Controls/ucHistroy.resx b/LFP_Manager_PRM/Controls/ucHistroy.resx new file mode 100644 index 0000000..1af7de1 --- /dev/null +++ b/LFP_Manager_PRM/Controls/ucHistroy.resx @@ -0,0 +1,120 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + \ No newline at end of file diff --git a/LFP_Manager_PRM/Controls/ucMainStatus.Designer.cs b/LFP_Manager_PRM/Controls/ucMainStatus.Designer.cs new file mode 100644 index 0000000..ee9e78b --- /dev/null +++ b/LFP_Manager_PRM/Controls/ucMainStatus.Designer.cs @@ -0,0 +1,697 @@ +namespace LFP_Manager.Controls +{ + partial class ucMainStatus + { + /// + /// Required designer variable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Clean up any resources being used. + /// + /// true if managed resources should be disposed; otherwise, false. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Component Designer generated code + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + DevExpress.XtraCharts.XYDiagram xyDiagram1 = new DevExpress.XtraCharts.XYDiagram(); + DevExpress.XtraCharts.Series series1 = new DevExpress.XtraCharts.Series(); + DevExpress.XtraCharts.LineSeriesView lineSeriesView1 = new DevExpress.XtraCharts.LineSeriesView(); + DevExpress.XtraCharts.Series series2 = new DevExpress.XtraCharts.Series(); + DevExpress.XtraCharts.LineSeriesView lineSeriesView2 = new DevExpress.XtraCharts.LineSeriesView(); + DevExpress.XtraCharts.ChartTitle chartTitle1 = new DevExpress.XtraCharts.ChartTitle(); + this.layoutControl1 = new DevExpress.XtraLayout.LayoutControl(); + this.groupControl1 = new DevExpress.XtraEditors.GroupControl(); + this.layoutControl3 = new DevExpress.XtraLayout.LayoutControl(); + this.gbStatusAlarm = new DevExpress.XtraEditors.GroupControl(); + this.layoutControl4 = new DevExpress.XtraLayout.LayoutControl(); + this.panelControl2 = new DevExpress.XtraEditors.PanelControl(); + this.lbAlarm = new DevExpress.XtraEditors.LabelControl(); + this.panelControl1 = new DevExpress.XtraEditors.PanelControl(); + this.lbStatus = new DevExpress.XtraEditors.LabelControl(); + this.layoutControlGroup4 = new DevExpress.XtraLayout.LayoutControlGroup(); + this.lcitemStatus = new DevExpress.XtraLayout.LayoutControlItem(); + this.lcitemAlarm = new DevExpress.XtraLayout.LayoutControlItem(); + this.gaugeControl4 = new DevExpress.XtraGauges.Win.GaugeControl(); + this.dgTotalSOC = new DevExpress.XtraGauges.Win.Gauges.Digital.DigitalGauge(); + this.digitalBackgroundLayerComponent4 = new DevExpress.XtraGauges.Win.Gauges.Digital.DigitalBackgroundLayerComponent(); + this.gaugeControl3 = new DevExpress.XtraGauges.Win.GaugeControl(); + this.dgTotalTemp = new DevExpress.XtraGauges.Win.Gauges.Digital.DigitalGauge(); + this.digitalBackgroundLayerComponent3 = new DevExpress.XtraGauges.Win.Gauges.Digital.DigitalBackgroundLayerComponent(); + this.gaugeControl2 = new DevExpress.XtraGauges.Win.GaugeControl(); + this.dgTotalCurrent = new DevExpress.XtraGauges.Win.Gauges.Digital.DigitalGauge(); + this.digitalBackgroundLayerComponent2 = new DevExpress.XtraGauges.Win.Gauges.Digital.DigitalBackgroundLayerComponent(); + this.gaugeControl1 = new DevExpress.XtraGauges.Win.GaugeControl(); + this.dgTotalVoltage = new DevExpress.XtraGauges.Win.Gauges.Digital.DigitalGauge(); + this.digitalBackgroundLayerComponent1 = new DevExpress.XtraGauges.Win.Gauges.Digital.DigitalBackgroundLayerComponent(); + this.layoutControlGroup3 = new DevExpress.XtraLayout.LayoutControlGroup(); + this.lcItemTotalVoltage = new DevExpress.XtraLayout.LayoutControlItem(); + this.emptySpaceItem1 = new DevExpress.XtraLayout.EmptySpaceItem(); + this.lcItemTotalCurrent = new DevExpress.XtraLayout.LayoutControlItem(); + this.lcItemTemp = new DevExpress.XtraLayout.LayoutControlItem(); + this.lcItemSOC = new DevExpress.XtraLayout.LayoutControlItem(); + this.layoutControlItem4 = new DevExpress.XtraLayout.LayoutControlItem(); + this.groupControl2 = new DevExpress.XtraEditors.GroupControl(); + this.layoutControl2 = new DevExpress.XtraLayout.LayoutControl(); + this.layoutControlGroup2 = new DevExpress.XtraLayout.LayoutControlGroup(); + this.layoutControlGroup1 = new DevExpress.XtraLayout.LayoutControlGroup(); + this.layoutControlItem2 = new DevExpress.XtraLayout.LayoutControlItem(); + this.layoutControlItem1 = new DevExpress.XtraLayout.LayoutControlItem(); + this.tmrDisplay = new System.Windows.Forms.Timer(); + this.chartVI = new DevExpress.XtraCharts.ChartControl(); + this.layoutControlItem3 = new DevExpress.XtraLayout.LayoutControlItem(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControl1)).BeginInit(); + this.layoutControl1.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.groupControl1)).BeginInit(); + this.groupControl1.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControl3)).BeginInit(); + this.layoutControl3.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.gbStatusAlarm)).BeginInit(); + this.gbStatusAlarm.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControl4)).BeginInit(); + this.layoutControl4.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.panelControl2)).BeginInit(); + this.panelControl2.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.panelControl1)).BeginInit(); + this.panelControl1.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup4)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.lcitemStatus)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.lcitemAlarm)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.dgTotalSOC)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.digitalBackgroundLayerComponent4)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.dgTotalTemp)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.digitalBackgroundLayerComponent3)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.dgTotalCurrent)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.digitalBackgroundLayerComponent2)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.dgTotalVoltage)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.digitalBackgroundLayerComponent1)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup3)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.lcItemTotalVoltage)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.emptySpaceItem1)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.lcItemTotalCurrent)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.lcItemTemp)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.lcItemSOC)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem4)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.groupControl2)).BeginInit(); + this.groupControl2.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControl2)).BeginInit(); + this.layoutControl2.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup2)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup1)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem2)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem1)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.chartVI)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(xyDiagram1)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(series1)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(lineSeriesView1)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(series2)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(lineSeriesView2)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem3)).BeginInit(); + this.SuspendLayout(); + // + // layoutControl1 + // + this.layoutControl1.Controls.Add(this.groupControl1); + this.layoutControl1.Controls.Add(this.groupControl2); + this.layoutControl1.Dock = System.Windows.Forms.DockStyle.Fill; + this.layoutControl1.Location = new System.Drawing.Point(0, 0); + this.layoutControl1.Name = "layoutControl1"; + this.layoutControl1.Root = this.layoutControlGroup1; + this.layoutControl1.Size = new System.Drawing.Size(1302, 574); + this.layoutControl1.TabIndex = 0; + this.layoutControl1.Text = "layoutControl1"; + // + // groupControl1 + // + this.groupControl1.Controls.Add(this.layoutControl3); + this.groupControl1.Location = new System.Drawing.Point(3, 3); + this.groupControl1.Name = "groupControl1"; + this.groupControl1.Size = new System.Drawing.Size(199, 568); + this.groupControl1.TabIndex = 5; + this.groupControl1.Text = "System Value"; + // + // layoutControl3 + // + this.layoutControl3.Controls.Add(this.gbStatusAlarm); + this.layoutControl3.Controls.Add(this.gaugeControl4); + this.layoutControl3.Controls.Add(this.gaugeControl3); + this.layoutControl3.Controls.Add(this.gaugeControl2); + this.layoutControl3.Controls.Add(this.gaugeControl1); + this.layoutControl3.Dock = System.Windows.Forms.DockStyle.Fill; + this.layoutControl3.Location = new System.Drawing.Point(2, 23); + this.layoutControl3.Name = "layoutControl3"; + this.layoutControl3.OptionsCustomizationForm.DesignTimeCustomizationFormPositionAndSize = new System.Drawing.Rectangle(498, 165, 250, 350); + this.layoutControl3.Root = this.layoutControlGroup3; + this.layoutControl3.Size = new System.Drawing.Size(195, 543); + this.layoutControl3.TabIndex = 0; + this.layoutControl3.Text = "layoutControl3"; + // + // gbStatusAlarm + // + this.gbStatusAlarm.Controls.Add(this.layoutControl4); + this.gbStatusAlarm.Location = new System.Drawing.Point(3, 391); + this.gbStatusAlarm.Name = "gbStatusAlarm"; + this.gbStatusAlarm.Size = new System.Drawing.Size(189, 88); + this.gbStatusAlarm.TabIndex = 7; + this.gbStatusAlarm.Text = "Operating Status"; + // + // layoutControl4 + // + this.layoutControl4.Controls.Add(this.panelControl2); + this.layoutControl4.Controls.Add(this.panelControl1); + this.layoutControl4.Dock = System.Windows.Forms.DockStyle.Fill; + this.layoutControl4.Location = new System.Drawing.Point(2, 23); + this.layoutControl4.Name = "layoutControl4"; + this.layoutControl4.OptionsCustomizationForm.DesignTimeCustomizationFormPositionAndSize = new System.Drawing.Rectangle(1163, 334, 250, 350); + this.layoutControl4.Root = this.layoutControlGroup4; + this.layoutControl4.Size = new System.Drawing.Size(185, 63); + this.layoutControl4.TabIndex = 0; + this.layoutControl4.Text = "layoutControl4"; + // + // panelControl2 + // + this.panelControl2.Controls.Add(this.lbAlarm); + this.panelControl2.Location = new System.Drawing.Point(44, 34); + this.panelControl2.Name = "panelControl2"; + this.panelControl2.Size = new System.Drawing.Size(138, 26); + this.panelControl2.TabIndex = 5; + // + // lbAlarm + // + this.lbAlarm.Appearance.Font = new System.Drawing.Font("Tahoma", 11.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0))); + this.lbAlarm.Appearance.Options.UseFont = true; + this.lbAlarm.Appearance.Options.UseTextOptions = true; + this.lbAlarm.Appearance.TextOptions.HAlignment = DevExpress.Utils.HorzAlignment.Center; + this.lbAlarm.AutoSizeMode = DevExpress.XtraEditors.LabelAutoSizeMode.None; + this.lbAlarm.Dock = System.Windows.Forms.DockStyle.Fill; + this.lbAlarm.Location = new System.Drawing.Point(2, 2); + this.lbAlarm.Name = "lbAlarm"; + this.lbAlarm.Size = new System.Drawing.Size(134, 22); + this.lbAlarm.TabIndex = 0; + this.lbAlarm.Text = "Alarm"; + // + // panelControl1 + // + this.panelControl1.Controls.Add(this.lbStatus); + this.panelControl1.Location = new System.Drawing.Point(44, 3); + this.panelControl1.Name = "panelControl1"; + this.panelControl1.Size = new System.Drawing.Size(138, 27); + this.panelControl1.TabIndex = 4; + // + // lbStatus + // + this.lbStatus.Appearance.Font = new System.Drawing.Font("Tahoma", 11.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0))); + this.lbStatus.Appearance.Options.UseFont = true; + this.lbStatus.Appearance.Options.UseTextOptions = true; + this.lbStatus.Appearance.TextOptions.HAlignment = DevExpress.Utils.HorzAlignment.Center; + this.lbStatus.AutoSizeMode = DevExpress.XtraEditors.LabelAutoSizeMode.None; + this.lbStatus.Dock = System.Windows.Forms.DockStyle.Fill; + this.lbStatus.Location = new System.Drawing.Point(2, 2); + this.lbStatus.Name = "lbStatus"; + this.lbStatus.Size = new System.Drawing.Size(134, 23); + this.lbStatus.TabIndex = 0; + this.lbStatus.Text = "Status"; + // + // layoutControlGroup4 + // + this.layoutControlGroup4.CustomizationFormText = "layoutControlGroup3"; + this.layoutControlGroup4.EnableIndentsWithoutBorders = DevExpress.Utils.DefaultBoolean.True; + this.layoutControlGroup4.GroupBordersVisible = false; + this.layoutControlGroup4.Items.AddRange(new DevExpress.XtraLayout.BaseLayoutItem[] { + this.lcitemStatus, + this.lcitemAlarm}); + this.layoutControlGroup4.Name = "layoutControlGroup3"; + this.layoutControlGroup4.Padding = new DevExpress.XtraLayout.Utils.Padding(1, 1, 1, 1); + this.layoutControlGroup4.Size = new System.Drawing.Size(185, 63); + this.layoutControlGroup4.TextVisible = false; + // + // lcitemStatus + // + this.lcitemStatus.AppearanceItemCaption.Options.UseTextOptions = true; + this.lcitemStatus.AppearanceItemCaption.TextOptions.HAlignment = DevExpress.Utils.HorzAlignment.Center; + this.lcitemStatus.Control = this.panelControl1; + this.lcitemStatus.CustomizationFormText = "Status"; + this.lcitemStatus.Location = new System.Drawing.Point(0, 0); + this.lcitemStatus.MaxSize = new System.Drawing.Size(0, 31); + this.lcitemStatus.MinSize = new System.Drawing.Size(100, 31); + this.lcitemStatus.Name = "lcitemStatus"; + this.lcitemStatus.Size = new System.Drawing.Size(183, 31); + this.lcitemStatus.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.lcitemStatus.Text = "Status"; + this.lcitemStatus.TextAlignMode = DevExpress.XtraLayout.TextAlignModeItem.CustomSize; + this.lcitemStatus.TextSize = new System.Drawing.Size(40, 14); + this.lcitemStatus.TextToControlDistance = 1; + // + // lcitemAlarm + // + this.lcitemAlarm.AppearanceItemCaption.Options.UseTextOptions = true; + this.lcitemAlarm.AppearanceItemCaption.TextOptions.HAlignment = DevExpress.Utils.HorzAlignment.Center; + this.lcitemAlarm.Control = this.panelControl2; + this.lcitemAlarm.CustomizationFormText = "Alarm"; + this.lcitemAlarm.Location = new System.Drawing.Point(0, 31); + this.lcitemAlarm.MinSize = new System.Drawing.Size(100, 24); + this.lcitemAlarm.Name = "lcitemAlarm"; + this.lcitemAlarm.Size = new System.Drawing.Size(183, 30); + this.lcitemAlarm.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.lcitemAlarm.Text = "Alarm"; + this.lcitemAlarm.TextAlignMode = DevExpress.XtraLayout.TextAlignModeItem.CustomSize; + this.lcitemAlarm.TextSize = new System.Drawing.Size(40, 20); + this.lcitemAlarm.TextToControlDistance = 1; + // + // gaugeControl4 + // + this.gaugeControl4.Gauges.AddRange(new DevExpress.XtraGauges.Base.IGauge[] { + this.dgTotalSOC}); + this.gaugeControl4.Location = new System.Drawing.Point(3, 311); + this.gaugeControl4.Name = "gaugeControl4"; + this.gaugeControl4.Size = new System.Drawing.Size(189, 76); + this.gaugeControl4.TabIndex = 7; + // + // dgTotalSOC + // + this.dgTotalSOC.AppearanceOff.ContentBrush = new DevExpress.XtraGauges.Core.Drawing.SolidBrushObject("Color:#E3E5EA"); + this.dgTotalSOC.AppearanceOn.ContentBrush = new DevExpress.XtraGauges.Core.Drawing.SolidBrushObject("Color:#59616F"); + this.dgTotalSOC.BackgroundLayers.AddRange(new DevExpress.XtraGauges.Win.Gauges.Digital.DigitalBackgroundLayerComponent[] { + this.digitalBackgroundLayerComponent4}); + this.dgTotalSOC.Bounds = new System.Drawing.Rectangle(6, 6, 177, 64); + this.dgTotalSOC.DigitCount = 5; + this.dgTotalSOC.Name = "dgTotalSOC"; + this.dgTotalSOC.Padding = new DevExpress.XtraGauges.Core.Base.TextSpacing(26, 20, 26, 20); + this.dgTotalSOC.Text = "00,000"; + // + // digitalBackgroundLayerComponent4 + // + this.digitalBackgroundLayerComponent4.BottomRight = new DevExpress.XtraGauges.Core.Base.PointF2D(265.8125F, 99.9625F); + this.digitalBackgroundLayerComponent4.Name = "digitalBackgroundLayerComponent1"; + this.digitalBackgroundLayerComponent4.ShapeType = DevExpress.XtraGauges.Core.Model.DigitalBackgroundShapeSetType.Style18; + this.digitalBackgroundLayerComponent4.TopLeft = new DevExpress.XtraGauges.Core.Base.PointF2D(26F, 0F); + this.digitalBackgroundLayerComponent4.ZOrder = 1000; + // + // gaugeControl3 + // + this.gaugeControl3.Gauges.AddRange(new DevExpress.XtraGauges.Base.IGauge[] { + this.dgTotalTemp}); + this.gaugeControl3.Location = new System.Drawing.Point(3, 214); + this.gaugeControl3.Name = "gaugeControl3"; + this.gaugeControl3.Size = new System.Drawing.Size(189, 76); + this.gaugeControl3.TabIndex = 6; + // + // dgTotalTemp + // + this.dgTotalTemp.AppearanceOff.ContentBrush = new DevExpress.XtraGauges.Core.Drawing.SolidBrushObject("Color:#E3E5EA"); + this.dgTotalTemp.AppearanceOn.ContentBrush = new DevExpress.XtraGauges.Core.Drawing.SolidBrushObject("Color:#59616F"); + this.dgTotalTemp.BackgroundLayers.AddRange(new DevExpress.XtraGauges.Win.Gauges.Digital.DigitalBackgroundLayerComponent[] { + this.digitalBackgroundLayerComponent3}); + this.dgTotalTemp.Bounds = new System.Drawing.Rectangle(6, 6, 177, 64); + this.dgTotalTemp.DigitCount = 5; + this.dgTotalTemp.Name = "dgTotalTemp"; + this.dgTotalTemp.Padding = new DevExpress.XtraGauges.Core.Base.TextSpacing(26, 20, 26, 20); + this.dgTotalTemp.Text = "00,000"; + // + // digitalBackgroundLayerComponent3 + // + this.digitalBackgroundLayerComponent3.BottomRight = new DevExpress.XtraGauges.Core.Base.PointF2D(265.8125F, 99.9625F); + this.digitalBackgroundLayerComponent3.Name = "digitalBackgroundLayerComponent1"; + this.digitalBackgroundLayerComponent3.ShapeType = DevExpress.XtraGauges.Core.Model.DigitalBackgroundShapeSetType.Style18; + this.digitalBackgroundLayerComponent3.TopLeft = new DevExpress.XtraGauges.Core.Base.PointF2D(26F, 0F); + this.digitalBackgroundLayerComponent3.ZOrder = 1000; + // + // gaugeControl2 + // + this.gaugeControl2.Gauges.AddRange(new DevExpress.XtraGauges.Base.IGauge[] { + this.dgTotalCurrent}); + this.gaugeControl2.Location = new System.Drawing.Point(3, 117); + this.gaugeControl2.Name = "gaugeControl2"; + this.gaugeControl2.Size = new System.Drawing.Size(189, 76); + this.gaugeControl2.TabIndex = 5; + // + // dgTotalCurrent + // + this.dgTotalCurrent.AppearanceOff.ContentBrush = new DevExpress.XtraGauges.Core.Drawing.SolidBrushObject("Color:#E3E5EA"); + this.dgTotalCurrent.AppearanceOn.ContentBrush = new DevExpress.XtraGauges.Core.Drawing.SolidBrushObject("Color:#59616F"); + this.dgTotalCurrent.BackgroundLayers.AddRange(new DevExpress.XtraGauges.Win.Gauges.Digital.DigitalBackgroundLayerComponent[] { + this.digitalBackgroundLayerComponent2}); + this.dgTotalCurrent.Bounds = new System.Drawing.Rectangle(6, 6, 177, 64); + this.dgTotalCurrent.DigitCount = 5; + this.dgTotalCurrent.Name = "dgTotalCurrent"; + this.dgTotalCurrent.Padding = new DevExpress.XtraGauges.Core.Base.TextSpacing(26, 20, 26, 20); + this.dgTotalCurrent.Text = "00,000"; + // + // digitalBackgroundLayerComponent2 + // + this.digitalBackgroundLayerComponent2.BottomRight = new DevExpress.XtraGauges.Core.Base.PointF2D(265.8125F, 99.9625F); + this.digitalBackgroundLayerComponent2.Name = "digitalBackgroundLayerComponent1"; + this.digitalBackgroundLayerComponent2.ShapeType = DevExpress.XtraGauges.Core.Model.DigitalBackgroundShapeSetType.Style18; + this.digitalBackgroundLayerComponent2.TopLeft = new DevExpress.XtraGauges.Core.Base.PointF2D(26F, 0F); + this.digitalBackgroundLayerComponent2.ZOrder = 1000; + // + // gaugeControl1 + // + this.gaugeControl1.Gauges.AddRange(new DevExpress.XtraGauges.Base.IGauge[] { + this.dgTotalVoltage}); + this.gaugeControl1.Location = new System.Drawing.Point(3, 20); + this.gaugeControl1.Name = "gaugeControl1"; + this.gaugeControl1.Size = new System.Drawing.Size(189, 76); + this.gaugeControl1.TabIndex = 4; + // + // dgTotalVoltage + // + this.dgTotalVoltage.AppearanceOff.ContentBrush = new DevExpress.XtraGauges.Core.Drawing.SolidBrushObject("Color:#E3E5EA"); + this.dgTotalVoltage.AppearanceOn.ContentBrush = new DevExpress.XtraGauges.Core.Drawing.SolidBrushObject("Color:#59616F"); + this.dgTotalVoltage.BackgroundLayers.AddRange(new DevExpress.XtraGauges.Win.Gauges.Digital.DigitalBackgroundLayerComponent[] { + this.digitalBackgroundLayerComponent1}); + this.dgTotalVoltage.Bounds = new System.Drawing.Rectangle(6, 6, 177, 64); + this.dgTotalVoltage.DigitCount = 5; + this.dgTotalVoltage.Name = "dgTotalVoltage"; + this.dgTotalVoltage.Padding = new DevExpress.XtraGauges.Core.Base.TextSpacing(26, 20, 26, 20); + this.dgTotalVoltage.Text = "00,000"; + // + // digitalBackgroundLayerComponent1 + // + this.digitalBackgroundLayerComponent1.BottomRight = new DevExpress.XtraGauges.Core.Base.PointF2D(265.8125F, 99.9625F); + this.digitalBackgroundLayerComponent1.Name = "digitalBackgroundLayerComponent1"; + this.digitalBackgroundLayerComponent1.ShapeType = DevExpress.XtraGauges.Core.Model.DigitalBackgroundShapeSetType.Style18; + this.digitalBackgroundLayerComponent1.TopLeft = new DevExpress.XtraGauges.Core.Base.PointF2D(26F, 0F); + this.digitalBackgroundLayerComponent1.ZOrder = 1000; + // + // layoutControlGroup3 + // + this.layoutControlGroup3.CustomizationFormText = "layoutControlGroup3"; + this.layoutControlGroup3.EnableIndentsWithoutBorders = DevExpress.Utils.DefaultBoolean.True; + this.layoutControlGroup3.GroupBordersVisible = false; + this.layoutControlGroup3.Items.AddRange(new DevExpress.XtraLayout.BaseLayoutItem[] { + this.lcItemTotalVoltage, + this.emptySpaceItem1, + this.lcItemTotalCurrent, + this.lcItemTemp, + this.lcItemSOC, + this.layoutControlItem4}); + this.layoutControlGroup3.Name = "layoutControlGroup3"; + this.layoutControlGroup3.Padding = new DevExpress.XtraLayout.Utils.Padding(1, 1, 1, 1); + this.layoutControlGroup3.Size = new System.Drawing.Size(195, 543); + this.layoutControlGroup3.TextVisible = false; + // + // lcItemTotalVoltage + // + this.lcItemTotalVoltage.AppearanceItemCaption.Font = new System.Drawing.Font("Tahoma", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0))); + this.lcItemTotalVoltage.AppearanceItemCaption.Options.UseFont = true; + this.lcItemTotalVoltage.Control = this.gaugeControl1; + this.lcItemTotalVoltage.CustomizationFormText = "layoutControlItem4"; + this.lcItemTotalVoltage.Location = new System.Drawing.Point(0, 0); + this.lcItemTotalVoltage.MaxSize = new System.Drawing.Size(193, 97); + this.lcItemTotalVoltage.MinSize = new System.Drawing.Size(193, 97); + this.lcItemTotalVoltage.Name = "lcItemTotalVoltage"; + this.lcItemTotalVoltage.Size = new System.Drawing.Size(193, 97); + this.lcItemTotalVoltage.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.lcItemTotalVoltage.Text = " Voltage"; + this.lcItemTotalVoltage.TextLocation = DevExpress.Utils.Locations.Top; + this.lcItemTotalVoltage.TextSize = new System.Drawing.Size(82, 14); + // + // emptySpaceItem1 + // + this.emptySpaceItem1.AllowHotTrack = false; + this.emptySpaceItem1.CustomizationFormText = "emptySpaceItem1"; + this.emptySpaceItem1.Location = new System.Drawing.Point(0, 480); + this.emptySpaceItem1.Name = "emptySpaceItem1"; + this.emptySpaceItem1.Size = new System.Drawing.Size(193, 61); + this.emptySpaceItem1.TextSize = new System.Drawing.Size(0, 0); + // + // lcItemTotalCurrent + // + this.lcItemTotalCurrent.AppearanceItemCaption.Font = new System.Drawing.Font("Tahoma", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0))); + this.lcItemTotalCurrent.AppearanceItemCaption.Options.UseFont = true; + this.lcItemTotalCurrent.Control = this.gaugeControl2; + this.lcItemTotalCurrent.CustomizationFormText = " Current"; + this.lcItemTotalCurrent.Location = new System.Drawing.Point(0, 97); + this.lcItemTotalCurrent.MaxSize = new System.Drawing.Size(193, 97); + this.lcItemTotalCurrent.MinSize = new System.Drawing.Size(193, 97); + this.lcItemTotalCurrent.Name = "lcItemTotalCurrent"; + this.lcItemTotalCurrent.Size = new System.Drawing.Size(193, 97); + this.lcItemTotalCurrent.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.lcItemTotalCurrent.Text = " Current"; + this.lcItemTotalCurrent.TextLocation = DevExpress.Utils.Locations.Top; + this.lcItemTotalCurrent.TextSize = new System.Drawing.Size(82, 14); + // + // lcItemTemp + // + this.lcItemTemp.AppearanceItemCaption.Font = new System.Drawing.Font("Tahoma", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0))); + this.lcItemTemp.AppearanceItemCaption.Options.UseFont = true; + this.lcItemTemp.Control = this.gaugeControl3; + this.lcItemTemp.CustomizationFormText = " Temperature"; + this.lcItemTemp.Location = new System.Drawing.Point(0, 194); + this.lcItemTemp.MaxSize = new System.Drawing.Size(193, 97); + this.lcItemTemp.MinSize = new System.Drawing.Size(193, 97); + this.lcItemTemp.Name = "lcItemTemp"; + this.lcItemTemp.Size = new System.Drawing.Size(193, 97); + this.lcItemTemp.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.lcItemTemp.Text = " Temperature"; + this.lcItemTemp.TextLocation = DevExpress.Utils.Locations.Top; + this.lcItemTemp.TextSize = new System.Drawing.Size(82, 14); + // + // lcItemSOC + // + this.lcItemSOC.AppearanceItemCaption.Font = new System.Drawing.Font("Tahoma", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0))); + this.lcItemSOC.AppearanceItemCaption.Options.UseFont = true; + this.lcItemSOC.Control = this.gaugeControl4; + this.lcItemSOC.CustomizationFormText = " SOC"; + this.lcItemSOC.Location = new System.Drawing.Point(0, 291); + this.lcItemSOC.MaxSize = new System.Drawing.Size(193, 97); + this.lcItemSOC.MinSize = new System.Drawing.Size(193, 97); + this.lcItemSOC.Name = "lcItemSOC"; + this.lcItemSOC.Size = new System.Drawing.Size(193, 97); + this.lcItemSOC.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.lcItemSOC.Text = " SOC"; + this.lcItemSOC.TextLocation = DevExpress.Utils.Locations.Top; + this.lcItemSOC.TextSize = new System.Drawing.Size(82, 14); + // + // layoutControlItem4 + // + this.layoutControlItem4.Control = this.gbStatusAlarm; + this.layoutControlItem4.CustomizationFormText = "layoutControlItem4"; + this.layoutControlItem4.Location = new System.Drawing.Point(0, 388); + this.layoutControlItem4.MaxSize = new System.Drawing.Size(0, 92); + this.layoutControlItem4.MinSize = new System.Drawing.Size(104, 92); + this.layoutControlItem4.Name = "layoutControlItem4"; + this.layoutControlItem4.Size = new System.Drawing.Size(193, 92); + this.layoutControlItem4.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem4.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem4.TextVisible = false; + // + // groupControl2 + // + this.groupControl2.Controls.Add(this.layoutControl2); + this.groupControl2.Location = new System.Drawing.Point(206, 3); + this.groupControl2.Name = "groupControl2"; + this.groupControl2.Size = new System.Drawing.Size(1093, 568); + this.groupControl2.TabIndex = 5; + this.groupControl2.Text = "Real Time Graph"; + // + // layoutControl2 + // + this.layoutControl2.Controls.Add(this.chartVI); + this.layoutControl2.Dock = System.Windows.Forms.DockStyle.Fill; + this.layoutControl2.Location = new System.Drawing.Point(2, 23); + this.layoutControl2.Name = "layoutControl2"; + this.layoutControl2.Root = this.layoutControlGroup2; + this.layoutControl2.Size = new System.Drawing.Size(1089, 543); + this.layoutControl2.TabIndex = 0; + this.layoutControl2.Text = "layoutControl2"; + // + // layoutControlGroup2 + // + this.layoutControlGroup2.CustomizationFormText = "layoutControlGroup2"; + this.layoutControlGroup2.EnableIndentsWithoutBorders = DevExpress.Utils.DefaultBoolean.True; + this.layoutControlGroup2.GroupBordersVisible = false; + this.layoutControlGroup2.Items.AddRange(new DevExpress.XtraLayout.BaseLayoutItem[] { + this.layoutControlItem3}); + this.layoutControlGroup2.Name = "layoutControlGroup2"; + this.layoutControlGroup2.Padding = new DevExpress.XtraLayout.Utils.Padding(1, 1, 1, 1); + this.layoutControlGroup2.Size = new System.Drawing.Size(1089, 543); + this.layoutControlGroup2.TextVisible = false; + // + // layoutControlGroup1 + // + this.layoutControlGroup1.CustomizationFormText = "layoutControlGroup1"; + this.layoutControlGroup1.EnableIndentsWithoutBorders = DevExpress.Utils.DefaultBoolean.True; + this.layoutControlGroup1.GroupBordersVisible = false; + this.layoutControlGroup1.Items.AddRange(new DevExpress.XtraLayout.BaseLayoutItem[] { + this.layoutControlItem2, + this.layoutControlItem1}); + this.layoutControlGroup1.Name = "layoutControlGroup1"; + this.layoutControlGroup1.Padding = new DevExpress.XtraLayout.Utils.Padding(1, 1, 1, 1); + this.layoutControlGroup1.Size = new System.Drawing.Size(1302, 574); + this.layoutControlGroup1.TextVisible = false; + // + // layoutControlItem2 + // + this.layoutControlItem2.Control = this.groupControl2; + this.layoutControlItem2.CustomizationFormText = "layoutControlItem2"; + this.layoutControlItem2.Location = new System.Drawing.Point(203, 0); + this.layoutControlItem2.Name = "layoutControlItem2"; + this.layoutControlItem2.Size = new System.Drawing.Size(1097, 572); + this.layoutControlItem2.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem2.TextVisible = false; + // + // layoutControlItem1 + // + this.layoutControlItem1.Control = this.groupControl1; + this.layoutControlItem1.CustomizationFormText = "layoutControlItem1"; + this.layoutControlItem1.Location = new System.Drawing.Point(0, 0); + this.layoutControlItem1.MaxSize = new System.Drawing.Size(203, 0); + this.layoutControlItem1.MinSize = new System.Drawing.Size(203, 24); + this.layoutControlItem1.Name = "layoutControlItem1"; + this.layoutControlItem1.Size = new System.Drawing.Size(203, 572); + this.layoutControlItem1.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem1.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem1.TextVisible = false; + // + // tmrDisplay + // + this.tmrDisplay.Interval = 500; + this.tmrDisplay.Tick += new System.EventHandler(this.tmrDisplay_Tick); + // + // chartVI + // + xyDiagram1.AxisX.VisibleInPanesSerializable = "-1"; + xyDiagram1.AxisY.VisibleInPanesSerializable = "-1"; + this.chartVI.Diagram = xyDiagram1; + this.chartVI.Legend.Name = "Default Legend"; + this.chartVI.Location = new System.Drawing.Point(3, 3); + this.chartVI.Name = "chartVI"; + series1.Name = "Series 1"; + series1.View = lineSeriesView1; + series2.Name = "Series 2"; + series2.View = lineSeriesView2; + this.chartVI.SeriesSerializable = new DevExpress.XtraCharts.Series[] { + series1, + series2}; + this.chartVI.Size = new System.Drawing.Size(1083, 537); + this.chartVI.TabIndex = 4; + this.chartVI.Titles.AddRange(new DevExpress.XtraCharts.ChartTitle[] { + chartTitle1}); + // + // layoutControlItem3 + // + this.layoutControlItem3.Control = this.chartVI; + this.layoutControlItem3.Location = new System.Drawing.Point(0, 0); + this.layoutControlItem3.Name = "layoutControlItem3"; + this.layoutControlItem3.Size = new System.Drawing.Size(1087, 541); + this.layoutControlItem3.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem3.TextVisible = false; + // + // ucMainStatus + // + this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 14F); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.Controls.Add(this.layoutControl1); + this.Name = "ucMainStatus"; + this.Size = new System.Drawing.Size(1302, 574); + ((System.ComponentModel.ISupportInitialize)(this.layoutControl1)).EndInit(); + this.layoutControl1.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.groupControl1)).EndInit(); + this.groupControl1.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.layoutControl3)).EndInit(); + this.layoutControl3.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.gbStatusAlarm)).EndInit(); + this.gbStatusAlarm.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.layoutControl4)).EndInit(); + this.layoutControl4.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.panelControl2)).EndInit(); + this.panelControl2.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.panelControl1)).EndInit(); + this.panelControl1.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup4)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.lcitemStatus)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.lcitemAlarm)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.dgTotalSOC)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.digitalBackgroundLayerComponent4)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.dgTotalTemp)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.digitalBackgroundLayerComponent3)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.dgTotalCurrent)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.digitalBackgroundLayerComponent2)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.dgTotalVoltage)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.digitalBackgroundLayerComponent1)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup3)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.lcItemTotalVoltage)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.emptySpaceItem1)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.lcItemTotalCurrent)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.lcItemTemp)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.lcItemSOC)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem4)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.groupControl2)).EndInit(); + this.groupControl2.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.layoutControl2)).EndInit(); + this.layoutControl2.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup2)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup1)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem2)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem1)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(xyDiagram1)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(lineSeriesView1)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(series1)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(lineSeriesView2)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(series2)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.chartVI)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem3)).EndInit(); + this.ResumeLayout(false); + + } + + #endregion + + private DevExpress.XtraLayout.LayoutControl layoutControl1; + private DevExpress.XtraLayout.LayoutControlGroup layoutControlGroup1; + private DevExpress.XtraEditors.GroupControl groupControl2; + private DevExpress.XtraLayout.LayoutControl layoutControl2; + private DevExpress.XtraLayout.LayoutControlGroup layoutControlGroup2; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem2; + private DevExpress.XtraEditors.GroupControl groupControl1; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem1; + private DevExpress.XtraLayout.LayoutControl layoutControl3; + private DevExpress.XtraLayout.LayoutControlGroup layoutControlGroup3; + private DevExpress.XtraGauges.Win.GaugeControl gaugeControl1; + private DevExpress.XtraGauges.Win.Gauges.Digital.DigitalGauge dgTotalVoltage; + private DevExpress.XtraGauges.Win.Gauges.Digital.DigitalBackgroundLayerComponent digitalBackgroundLayerComponent1; + private DevExpress.XtraLayout.LayoutControlItem lcItemTotalVoltage; + private DevExpress.XtraLayout.EmptySpaceItem emptySpaceItem1; + private DevExpress.XtraGauges.Win.GaugeControl gaugeControl2; + private DevExpress.XtraGauges.Win.Gauges.Digital.DigitalGauge dgTotalCurrent; + private DevExpress.XtraGauges.Win.Gauges.Digital.DigitalBackgroundLayerComponent digitalBackgroundLayerComponent2; + private DevExpress.XtraLayout.LayoutControlItem lcItemTotalCurrent; + private System.Windows.Forms.Timer tmrDisplay; + private DevExpress.XtraGauges.Win.GaugeControl gaugeControl3; + private DevExpress.XtraGauges.Win.Gauges.Digital.DigitalGauge dgTotalTemp; + private DevExpress.XtraGauges.Win.Gauges.Digital.DigitalBackgroundLayerComponent digitalBackgroundLayerComponent3; + private DevExpress.XtraLayout.LayoutControlItem lcItemTemp; + private DevExpress.XtraGauges.Win.GaugeControl gaugeControl4; + private DevExpress.XtraGauges.Win.Gauges.Digital.DigitalGauge dgTotalSOC; + private DevExpress.XtraGauges.Win.Gauges.Digital.DigitalBackgroundLayerComponent digitalBackgroundLayerComponent4; + private DevExpress.XtraLayout.LayoutControlItem lcItemSOC; + private DevExpress.XtraEditors.GroupControl gbStatusAlarm; + private DevExpress.XtraLayout.LayoutControl layoutControl4; + private DevExpress.XtraEditors.PanelControl panelControl2; + private DevExpress.XtraEditors.LabelControl lbAlarm; + private DevExpress.XtraEditors.PanelControl panelControl1; + private DevExpress.XtraEditors.LabelControl lbStatus; + private DevExpress.XtraLayout.LayoutControlGroup layoutControlGroup4; + private DevExpress.XtraLayout.LayoutControlItem lcitemStatus; + private DevExpress.XtraLayout.LayoutControlItem lcitemAlarm; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem4; + private DevExpress.XtraCharts.ChartControl chartVI; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem3; + } +} diff --git a/LFP_Manager_PRM/Controls/ucMainStatus.cs b/LFP_Manager_PRM/Controls/ucMainStatus.cs new file mode 100644 index 0000000..9725fbe --- /dev/null +++ b/LFP_Manager_PRM/Controls/ucMainStatus.cs @@ -0,0 +1,494 @@ +using DevExpress.XtraCharts; +using LFP_Manager.DataStructure; +using System; +using System.Collections.Generic; +using System.Data; +using System.Drawing; +using System.Threading; + +namespace LFP_Manager.Controls +{ + public partial class ucMainStatus : DevExpress.XtraEditors.XtraUserControl + { + private delegate void CanIJust(); + + private List _valueList; + private Thread _thread; + private CanIJust _doIt; + private Random _ran; + private int _interval; + + private CommConfig Config; + private DeviceSystemData SystemData; + + private DataTable dtVI; + private DateTime OldTime; + + Series seriesVolt; + Series seriesCurr; + Series seriesTemp; + Series seriesSoc; + LineSeriesView currLineView; + LineSeriesView tempLineView; + LineSeriesView socLineView; + SecondaryAxisY currAxisY; + SecondaryAxisY tempAxisY; + SecondaryAxisY socAxisY; + + private double TotalVoltage; + private double TotalCurrent; + private double TotalTemperature; + private double TotalSoc; + + private bool active = false; + private bool ThreadEnd = false; + + private int logTimeSec = 5; + + public ucMainStatus() + { + InitializeComponent(); + + InitDataTableVolt(); + InitChart(); + } + + public void SimStart() + { + _valueList = new List(); + _ran = new Random(); + _interval = 500; + GoBoy(); + } + + private void GoBoy() + { + _doIt += new CanIJust(AddData); + + _thread = new Thread(new ThreadStart(ComeOnYouThread)); + _thread.Start(); + } + + public void Start(CommConfig aConfig, ref DeviceSystemData aSystemData) + { + Config = aConfig; + SystemData = aSystemData; + + reloadChart(); + + _interval = 200; + _doIt += new CanIJust(AddData); + ThreadEnd = false; + _thread = new Thread(new ThreadStart(ComeOnYouThread)); + _thread.Start(); + + active = true; + tmrDisplay.Start(); + } + + public void Stop() + { + active = false; + tmrDisplay.Stop(); + + ThreadEnd = true; + + if (_thread != null) + { + if (_thread.IsAlive) + _thread.Abort(); + } + } + + public void UpdateData(ref DeviceSystemData aSystemData) + { + if (active) + { + SystemData = aSystemData; + + TotalVoltage = (double)SystemData.ValueData.voltageOfPack / 10; + TotalCurrent = (double)SystemData.ValueData.current / 10; + TotalSoc = (double)SystemData.ValueData.rSOC / 10; + TotalTemperature = (double)SystemData.AvgData.maxTemp / 10; + } + } + + private void InitDataTableVolt() + { + dtVI = new DataTable(); + + dtVI.Columns.Add("DateTime", typeof(DateTime)); + + dtVI.Columns.Add(String.Format("Volt"), typeof(double)); + dtVI.Columns.Add(String.Format("Curr"), typeof(double)); + dtVI.Columns.Add(String.Format("Temp"), typeof(double)); + dtVI.Columns.Add(String.Format("SOC"), typeof(double)); + + // Add data rows to the table. + DataRow row = null; + + row = dtVI.NewRow(); + row["DateTime"] = DateTime.Now; + + row[String.Format("Volt")] = 0; + row[String.Format("Curr")] = 0; + row[String.Format("Temp")] = 0; + row[String.Format("SOC")] = 0; + + dtVI.Rows.Add(row); + } + + private void InitChart() + { + chartVI.Series.Clear(); + chartVI.Legend.Visibility = DevExpress.Utils.DefaultBoolean.False; + chartVI.Titles[0].Visibility = DevExpress.Utils.DefaultBoolean.False; + + //-------------------- Series VOLT -----------------------// + seriesVolt = new Series(String.Format("Volt"), ViewType.Line) + { + DataSource = dtVI, + //seriesVolt.Label.PointOptions.PointView = PointView.Values; + //seriesVolt.Label.PointOptions.ValueNumericOptions.Format = NumericFormat.Number; + //seriesVolt.Label.PointOptions.ValueNumericOptions.Precision = 1; + CrosshairLabelVisibility = DevExpress.Utils.DefaultBoolean.True, + CrosshairLabelPattern = "{S} : {V:F1}V", + //seriesVolt.CrosshairLabelPattern = "{S} {A:hh:mm:ss} : {V:F1}V"; + + // Specify data members to bind the series. + ArgumentScaleType = ScaleType.DateTime, + ArgumentDataMember = "DateTime", + ValueScaleType = ScaleType.Numerical + }; + seriesVolt.ValueDataMembers.AddRange(new string[] { String.Format("Volt") }); + + chartVI.Series.Add(seriesVolt); + + //-------------------- Series CURR -----------------------// + seriesCurr = new Series(String.Format("Curr"), ViewType.Line) + { + DataSource = dtVI, + + //seriesCurr.Label.PointOptions.PointView = PointView.Values; + //seriesCurr.Label.PointOptions.ValueNumericOptions.Format = NumericFormat.Number; + //seriesCurr.Label.PointOptions.ValueNumericOptions.Precision = 1; + CrosshairLabelVisibility = DevExpress.Utils.DefaultBoolean.True, + CrosshairLabelPattern = "{S} : {V:F1}A", + //seriesCurr.CrosshairLabelPattern = "{S} {A:hh:mm:ss} : {V:F1}A"; + + // Specify data members to bind the series. + ArgumentScaleType = ScaleType.DateTime, + ArgumentDataMember = "DateTime", + + ValueScaleType = ScaleType.Numerical + }; + seriesCurr.ValueDataMembers.AddRange(new string[] { String.Format("Curr") }); + + chartVI.Series.Add(seriesCurr); + + //-------------------- Series TEMP -----------------------// + seriesTemp = new Series(String.Format("Temp"), ViewType.Line) + { + DataSource = dtVI, + + //seriesTemp.Label.PointOptions.PointView = PointView.Values; + //seriesTemp.Label.PointOptions.ValueNumericOptions.Format = NumericFormat.Number; + //seriesTemp.Label.PointOptions.ValueNumericOptions.Precision = 1; + CrosshairLabelVisibility = DevExpress.Utils.DefaultBoolean.True, + CrosshairLabelPattern = "{S} : {V:F1}C", + //seriesTemp.CrosshairLabelPattern = "{S} {A:hh:mm:ss} : {V:F1}A"; + + // Specify data members to bind the series. + ArgumentScaleType = ScaleType.DateTime, + ArgumentDataMember = "DateTime", + + ValueScaleType = ScaleType.Numerical + }; + seriesTemp.ValueDataMembers.AddRange(new string[] { String.Format("Temp") }); + + chartVI.Series.Add(seriesTemp); + + //-------------------- Series SOC -----------------------// + seriesSoc = new Series(String.Format("SOC"), ViewType.Line) + { + DataSource = dtVI, + //seriesSoc.Label.PointOptions.PointView = PointView.Values; + //seriesSoc.Label.PointOptions.ValueNumericOptions.Format = NumericFormat.Number; + //seriesSoc.Label.PointOptions.ValueNumericOptions.Precision = 1; + CrosshairLabelVisibility = DevExpress.Utils.DefaultBoolean.True, + CrosshairLabelPattern = "{S} : {V:F1}%", + //seriesTemp.CrosshairLabelPattern = "{S} {A:hh:mm:ss} : {V:F1}A"; + + // Specify data members to bind the series. + ArgumentScaleType = ScaleType.DateTime, + ArgumentDataMember = "DateTime", + + ValueScaleType = ScaleType.Numerical + }; + seriesSoc.ValueDataMembers.AddRange(new string[] { String.Format("SOC") }); + + chartVI.Series.Add(seriesSoc); + + XYDiagram diagram = (XYDiagram)chartVI.Diagram; + + //diagram.AxisX.DateTimeScaleOptions.AggregateFunction = AggregateFunction.Sum; + //diagram.AxisX.DateTimeScaleOptions.GridAlignment = DateTimeGridAlignment.Minute; + //diagram.AxisX.DateTimeScaleOptions.MeasureUnit = DateTimeMeasureUnit.Second; + + diagram.AxisX.Title.Text = "Date Time (hh:mm:ss)"; + diagram.AxisX.Title.Visibility = DevExpress.Utils.DefaultBoolean.False; + diagram.AxisX.Title.Font = new System.Drawing.Font("Tahoma", 9F, System.Drawing.FontStyle.Regular); + //diagram.AxisX.Label.DateTimeOptions.Format = DevExpress.XtraCharts.DateTimeFormat.Custom; + //diagram.AxisX.Label.DateTimeOptions.FormatString = "HH:mm:ss"; + + diagram.AxisY.WholeRange.MaxValue = 60.0; + diagram.AxisY.WholeRange.MinValue = 40.0; + diagram.AxisY.WholeRange.Auto = false; + diagram.AxisY.WholeRange.AlwaysShowZeroLevel = true; + diagram.AxisY.VisualRange.MaxValue = 60.0; + diagram.AxisY.VisualRange.MinValue = 40.0; + diagram.AxisY.VisualRange.Auto = false; + + //diagram.AxisY.GridSpacing = 1; + diagram.AxisY.Title.Text = "Voltage (V)"; + diagram.AxisY.Title.Visibility = DevExpress.Utils.DefaultBoolean.False; + diagram.AxisY.Title.Font = new System.Drawing.Font("Tahoma", 10F, System.Drawing.FontStyle.Regular); + + chartVI.Diagram.Assign(diagram); + + currAxisY = new SecondaryAxisY("Current Y-Axis"); + ((XYDiagram)chartVI.Diagram).SecondaryAxesY.Add(currAxisY); + + //currAxisY.GridSpacing = 10D; + //currAxisY.GridSpacingAuto = false; + currAxisY.WholeRange.MinValue = "-300"; + currAxisY.WholeRange.MaxValue = "300"; + currAxisY.WholeRange.Auto = false; + currAxisY.WholeRange.AlwaysShowZeroLevel = true; + currAxisY.Visibility = DevExpress.Utils.DefaultBoolean.False; + + currAxisY.Title.Text = "Current (A)"; + currAxisY.Title.Font = new System.Drawing.Font("Tahoma", 10F, System.Drawing.FontStyle.Regular); + currAxisY.Title.Visibility = DevExpress.Utils.DefaultBoolean.False; + + currLineView = new LineSeriesView(); + currLineView = (LineSeriesView)seriesCurr.View; + currLineView.AxisY = currAxisY; + currLineView.LineMarkerOptions.BorderVisible = false; + currLineView.LineMarkerOptions.Color = Color.Red; + currLineView.LineStyle.Thickness = 2; + currLineView.MarkerVisibility = DevExpress.Utils.DefaultBoolean.False; + currLineView.Shadow.Visible = false; + + tempAxisY = new SecondaryAxisY("Temperature Y-Axis"); + ((XYDiagram)chartVI.Diagram).SecondaryAxesY.Add(tempAxisY); + + //tempAxisY.GridSpacing = 5D; + //tempAxisY.GridSpacingAuto = false; + tempAxisY.WholeRange.MinValue = "-25.0"; + tempAxisY.WholeRange.MaxValue = "80.0"; + tempAxisY.WholeRange.Auto = false; + tempAxisY.WholeRange.AlwaysShowZeroLevel = true; + tempAxisY.Visibility = DevExpress.Utils.DefaultBoolean.False; + + tempAxisY.Title.Text = "Temperature (C)"; + tempAxisY.Title.Font = new System.Drawing.Font("Tahoma", 10F, System.Drawing.FontStyle.Regular); + tempAxisY.Title.Visibility = DevExpress.Utils.DefaultBoolean.False; + + tempLineView = new LineSeriesView(); + tempLineView = (LineSeriesView)seriesTemp.View; + tempLineView.AxisY = tempAxisY; + tempLineView.LineMarkerOptions.BorderVisible = false; + tempLineView.LineMarkerOptions.Color = Color.Red; + tempLineView.LineStyle.Thickness = 2; + tempLineView.MarkerVisibility = DevExpress.Utils.DefaultBoolean.False; + tempLineView.Shadow.Visible = false; + + // SOC AxisY + socAxisY = new SecondaryAxisY("SOC Y-Axis"); + ((XYDiagram)chartVI.Diagram).SecondaryAxesY.Add(socAxisY); + + //socAxisY.GridSpacing = 10D; + //socAxisY.GridSpacingAuto = false; + socAxisY.WholeRange.MinValue = "-2.0"; + socAxisY.WholeRange.MaxValue = "102.0"; + socAxisY.WholeRange.Auto = false; + socAxisY.WholeRange.AlwaysShowZeroLevel = true; + socAxisY.Visibility = DevExpress.Utils.DefaultBoolean.False; + + socAxisY.Title.Text = "SOC (%)"; + socAxisY.Title.Font = new System.Drawing.Font("Tahoma", 10F, System.Drawing.FontStyle.Regular); + socAxisY.Title.Visibility = DevExpress.Utils.DefaultBoolean.False; + + socLineView = new LineSeriesView(); + socLineView = (LineSeriesView)seriesSoc.View; + socLineView.AxisY = socAxisY; + socLineView.LineMarkerOptions.BorderVisible = false; + socLineView.LineMarkerOptions.Color = Color.Red; + socLineView.LineStyle.Thickness = 2; + socLineView.MarkerVisibility = DevExpress.Utils.DefaultBoolean.False; + socLineView.Shadow.Visible = false; + } + + private void reloadChart() + { + chartVI.Series.Clear(); + + //for (int i = 0; i < mQty; i++) + //{ + chartVI.Series.Add(seriesVolt); + //} + + //for (int i = 0; i < mQty; i++) + //{ + chartVI.Series.Add(seriesCurr); + //} + + //for (int i = 0; i < mQty; i++) + //{ + chartVI.Series.Add(seriesTemp); + //} + + //for (int i = 0; i < mQty; i++) + //{ + chartVI.Series.Add(seriesSoc); + //} + } + + private void ComeOnYouThread() + { + while (ThreadEnd == false) + { + try + { + chartVI.Invoke(_doIt); + + Thread.Sleep(_interval); + } + catch (Exception) + { + } + } + } + + public void SetLogTime(int aSec) + { + logTimeSec = aSec; + } + + private void AddData() + { + DateTime now = DateTime.Now; + TimeSpan dTime = now - OldTime; + + //if (OldTime.Second != now.Second) + if ((dTime.Seconds >= logTimeSec) && ((now.Second % logTimeSec) == 0)) + { + if (dtVI.Rows.Count > 1000) + { + dtVI.Rows.RemoveAt(0); + } + + // Add data rows to the table. + DataRow row = null; + + row = dtVI.NewRow(); + row["DateTime"] = DateTime.Now; + + row[String.Format("Volt")] = TotalVoltage; + row[String.Format("Curr")] = TotalCurrent; + row[String.Format("Temp")] = TotalTemperature; + row[String.Format("SOC")] = TotalSoc; + + dtVI.Rows.Add(row); + + OldTime = now; + } + } + + private void tmrDisplay_Tick(object sender, EventArgs e) + { + DisplayTotalValue(); + DisplayStatusAndAlarm(); + } + + private void DisplayTotalValue() + { + if (active) + { + dgTotalVoltage.Text = String.Format("{0:0.0}", TotalVoltage); + dgTotalCurrent.Text = String.Format("{0:0.0}", TotalCurrent); + dgTotalTemp.Text = String.Format("{0:0.0}", TotalTemperature); + dgTotalSOC.Text = String.Format("{0:0.0}", TotalSoc); + + chartVI.Invalidate(); + } + } + + private void DisplayStatusAndAlarm() + { + if (SystemData.CommFail == false) + { + // Operating Status + if (SystemData.StatusData.status == 0) + { + lbStatus.Text = "STANDBY"; + lbStatus.ForeColor = System.Drawing.Color.Black; + } + else if (SystemData.StatusData.status == 1) + { + lbStatus.Text = "CHARGING"; + lbStatus.ForeColor = System.Drawing.Color.Blue; + } + else if (SystemData.StatusData.status == 2) + { + lbStatus.Text = "DISCHARGING"; + lbStatus.ForeColor = System.Drawing.Color.Magenta; + } + else if (SystemData.StatusData.status == 3) + { + lbStatus.Text = "FLOATING"; + lbStatus.ForeColor = System.Drawing.Color.Black; + } + else + { + lbStatus.Text = "UNKNOWN"; + lbStatus.ForeColor = System.Drawing.Color.Black; + } + // Alarm Display + if (SystemData.StatusData.alarm == 0) + { + lbAlarm.Text = "NORMAL"; + lbAlarm.ForeColor = System.Drawing.Color.Green; + } + else if (SystemData.StatusData.alarm == 1) + { + lbAlarm.Text = "WARNING"; + lbAlarm.ForeColor = System.Drawing.Color.Orange; + } + else if (SystemData.StatusData.alarm == 2) + { + lbAlarm.Text = "FAULT"; + lbAlarm.ForeColor = System.Drawing.Color.Red; + } + else if (SystemData.StatusData.alarm == 3) + { + lbAlarm.Text = "WARMING UP"; + lbAlarm.ForeColor = System.Drawing.Color.Green; + } + else + { + lbAlarm.Text = "UNKNOWN"; + lbAlarm.ForeColor = System.Drawing.Color.Red; + } + } + else + { + lbStatus.Text = "OFF LINE"; + lbStatus.ForeColor = System.Drawing.Color.Red; + lbAlarm.Text = "OFF LINE"; + lbAlarm.ForeColor = System.Drawing.Color.Red; + } + } + } +} diff --git a/LFP_Manager_PRM/Controls/ucMainStatus.resx b/LFP_Manager_PRM/Controls/ucMainStatus.resx new file mode 100644 index 0000000..fe317aa --- /dev/null +++ b/LFP_Manager_PRM/Controls/ucMainStatus.resx @@ -0,0 +1,123 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + 17, 17 + + \ No newline at end of file diff --git a/LFP_Manager_PRM/Controls/ucModuleIdSet.Designer.cs b/LFP_Manager_PRM/Controls/ucModuleIdSet.Designer.cs new file mode 100644 index 0000000..4959b88 --- /dev/null +++ b/LFP_Manager_PRM/Controls/ucModuleIdSet.Designer.cs @@ -0,0 +1,305 @@ + +namespace LFP_Manager.Controls +{ + partial class ucModuleIdSet + { + /// + /// Required designer variable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Clean up any resources being used. + /// + /// true if managed resources should be disposed; otherwise, false. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Component Designer generated code + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + this.layoutControl1 = new DevExpress.XtraLayout.LayoutControl(); + this.gbBmuAddrSet = new DevExpress.XtraEditors.GroupControl(); + this.layoutControl9 = new DevExpress.XtraLayout.LayoutControl(); + this.edModuleNo = new DevExpress.XtraEditors.TextEdit(); + this.edSystemAddrNew = new DevExpress.XtraEditors.TextEdit(); + this.btnBmsAddrSet = new DevExpress.XtraEditors.SimpleButton(); + this.edSystemAddr = new DevExpress.XtraEditors.TextEdit(); + this.layoutControlGroup9 = new DevExpress.XtraLayout.LayoutControlGroup(); + this.lcitemBmsId = new DevExpress.XtraLayout.LayoutControlItem(); + this.layoutControlItem34 = new DevExpress.XtraLayout.LayoutControlItem(); + this.layoutControlItem6 = new DevExpress.XtraLayout.LayoutControlItem(); + this.emptySpaceItem2 = new DevExpress.XtraLayout.EmptySpaceItem(); + this.layoutControlItem1 = new DevExpress.XtraLayout.LayoutControlItem(); + this.Root = new DevExpress.XtraLayout.LayoutControlGroup(); + this.layoutControlItem2 = new DevExpress.XtraLayout.LayoutControlItem(); + this.emptySpaceItem1 = new DevExpress.XtraLayout.EmptySpaceItem(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControl1)).BeginInit(); + this.layoutControl1.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.gbBmuAddrSet)).BeginInit(); + this.gbBmuAddrSet.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControl9)).BeginInit(); + this.layoutControl9.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.edModuleNo.Properties)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.edSystemAddrNew.Properties)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.edSystemAddr.Properties)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup9)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.lcitemBmsId)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem34)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem6)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.emptySpaceItem2)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem1)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.Root)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem2)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.emptySpaceItem1)).BeginInit(); + this.SuspendLayout(); + // + // layoutControl1 + // + this.layoutControl1.Controls.Add(this.gbBmuAddrSet); + this.layoutControl1.Dock = System.Windows.Forms.DockStyle.Fill; + this.layoutControl1.Location = new System.Drawing.Point(0, 0); + this.layoutControl1.Name = "layoutControl1"; + this.layoutControl1.Root = this.Root; + this.layoutControl1.Size = new System.Drawing.Size(198, 126); + this.layoutControl1.TabIndex = 0; + this.layoutControl1.Text = "layoutControl1"; + // + // gbBmuAddrSet + // + this.gbBmuAddrSet.Controls.Add(this.layoutControl9); + this.gbBmuAddrSet.Location = new System.Drawing.Point(3, 3); + this.gbBmuAddrSet.Name = "gbBmuAddrSet"; + this.gbBmuAddrSet.Size = new System.Drawing.Size(192, 120); + this.gbBmuAddrSet.TabIndex = 12; + this.gbBmuAddrSet.Text = "BMS Address"; + // + // layoutControl9 + // + this.layoutControl9.Controls.Add(this.edModuleNo); + this.layoutControl9.Controls.Add(this.edSystemAddrNew); + this.layoutControl9.Controls.Add(this.btnBmsAddrSet); + this.layoutControl9.Controls.Add(this.edSystemAddr); + this.layoutControl9.Dock = System.Windows.Forms.DockStyle.Fill; + this.layoutControl9.Location = new System.Drawing.Point(2, 23); + this.layoutControl9.Name = "layoutControl9"; + this.layoutControl9.OptionsCustomizationForm.DesignTimeCustomizationFormPositionAndSize = new System.Drawing.Rectangle(1050, 323, 618, 350); + this.layoutControl9.Root = this.layoutControlGroup9; + this.layoutControl9.Size = new System.Drawing.Size(188, 95); + this.layoutControl9.TabIndex = 0; + this.layoutControl9.Text = "layoutControl9"; + // + // edModuleNo + // + this.edModuleNo.Location = new System.Drawing.Point(125, 32); + this.edModuleNo.Name = "edModuleNo"; + this.edModuleNo.Properties.Appearance.Font = new System.Drawing.Font("Tahoma", 11.25F); + this.edModuleNo.Properties.Appearance.Options.UseFont = true; + this.edModuleNo.Properties.Appearance.Options.UseTextOptions = true; + this.edModuleNo.Properties.Appearance.TextOptions.HAlignment = DevExpress.Utils.HorzAlignment.Far; + this.edModuleNo.Size = new System.Drawing.Size(59, 24); + this.edModuleNo.StyleController = this.layoutControl9; + this.edModuleNo.TabIndex = 9; + this.edModuleNo.EditValueChanged += new System.EventHandler(this.edModuleNo_EditValueChanged); + // + // edSystemAddrNew + // + this.edSystemAddrNew.Location = new System.Drawing.Point(109, 4); + this.edSystemAddrNew.Name = "edSystemAddrNew"; + this.edSystemAddrNew.Properties.Appearance.Font = new System.Drawing.Font("Tahoma", 11.25F); + this.edSystemAddrNew.Properties.Appearance.Options.UseFont = true; + this.edSystemAddrNew.Properties.Appearance.Options.UseTextOptions = true; + this.edSystemAddrNew.Properties.Appearance.TextOptions.HAlignment = DevExpress.Utils.HorzAlignment.Far; + this.edSystemAddrNew.Size = new System.Drawing.Size(75, 24); + this.edSystemAddrNew.StyleController = this.layoutControl9; + this.edSystemAddrNew.TabIndex = 8; + // + // btnBmsAddrSet + // + this.btnBmsAddrSet.Location = new System.Drawing.Point(108, 60); + this.btnBmsAddrSet.Name = "btnBmsAddrSet"; + this.btnBmsAddrSet.Size = new System.Drawing.Size(76, 31); + this.btnBmsAddrSet.StyleController = this.layoutControl9; + this.btnBmsAddrSet.TabIndex = 6; + this.btnBmsAddrSet.Text = "Set"; + this.btnBmsAddrSet.Click += new System.EventHandler(this.btnBmsAddrSet_Click); + // + // edSystemAddr + // + this.edSystemAddr.Location = new System.Drawing.Point(49, 4); + this.edSystemAddr.Name = "edSystemAddr"; + this.edSystemAddr.Properties.Appearance.Font = new System.Drawing.Font("Tahoma", 11.25F); + this.edSystemAddr.Properties.Appearance.Options.UseFont = true; + this.edSystemAddr.Properties.Appearance.Options.UseTextOptions = true; + this.edSystemAddr.Properties.Appearance.TextOptions.HAlignment = DevExpress.Utils.HorzAlignment.Far; + this.edSystemAddr.Properties.ReadOnly = true; + this.edSystemAddr.Size = new System.Drawing.Size(56, 24); + this.edSystemAddr.StyleController = this.layoutControl9; + this.edSystemAddr.TabIndex = 4; + // + // layoutControlGroup9 + // + this.layoutControlGroup9.CustomizationFormText = "layoutControlGroup9"; + this.layoutControlGroup9.EnableIndentsWithoutBorders = DevExpress.Utils.DefaultBoolean.True; + this.layoutControlGroup9.GroupBordersVisible = false; + this.layoutControlGroup9.Items.AddRange(new DevExpress.XtraLayout.BaseLayoutItem[] { + this.lcitemBmsId, + this.layoutControlItem34, + this.layoutControlItem6, + this.emptySpaceItem2, + this.layoutControlItem1, + this.emptySpaceItem1}); + this.layoutControlGroup9.Name = "Root"; + this.layoutControlGroup9.Padding = new DevExpress.XtraLayout.Utils.Padding(2, 2, 2, 2); + this.layoutControlGroup9.Size = new System.Drawing.Size(188, 95); + this.layoutControlGroup9.TextVisible = false; + // + // lcitemBmsId + // + this.lcitemBmsId.Control = this.edSystemAddr; + this.lcitemBmsId.CustomizationFormText = "BMS ID"; + this.lcitemBmsId.Location = new System.Drawing.Point(0, 0); + this.lcitemBmsId.MinSize = new System.Drawing.Size(80, 28); + this.lcitemBmsId.Name = "lcitemBmsId"; + this.lcitemBmsId.Size = new System.Drawing.Size(105, 28); + this.lcitemBmsId.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.lcitemBmsId.Text = " Address"; + this.lcitemBmsId.TextAlignMode = DevExpress.XtraLayout.TextAlignModeItem.CustomSize; + this.lcitemBmsId.TextSize = new System.Drawing.Size(40, 20); + this.lcitemBmsId.TextToControlDistance = 5; + // + // layoutControlItem34 + // + this.layoutControlItem34.Control = this.btnBmsAddrSet; + this.layoutControlItem34.CustomizationFormText = "layoutControlItem34"; + this.layoutControlItem34.Location = new System.Drawing.Point(104, 56); + this.layoutControlItem34.MinSize = new System.Drawing.Size(30, 26); + this.layoutControlItem34.Name = "layoutControlItem34"; + this.layoutControlItem34.Size = new System.Drawing.Size(80, 35); + this.layoutControlItem34.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem34.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem34.TextVisible = false; + // + // layoutControlItem6 + // + this.layoutControlItem6.Control = this.edSystemAddrNew; + this.layoutControlItem6.CustomizationFormText = "layoutControlItem6"; + this.layoutControlItem6.Location = new System.Drawing.Point(105, 0); + this.layoutControlItem6.MinSize = new System.Drawing.Size(30, 28); + this.layoutControlItem6.Name = "layoutControlItem6"; + this.layoutControlItem6.Size = new System.Drawing.Size(79, 28); + this.layoutControlItem6.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem6.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem6.TextVisible = false; + // + // emptySpaceItem2 + // + this.emptySpaceItem2.AllowHotTrack = false; + this.emptySpaceItem2.Location = new System.Drawing.Point(0, 28); + this.emptySpaceItem2.MinSize = new System.Drawing.Size(1, 1); + this.emptySpaceItem2.Name = "emptySpaceItem2"; + this.emptySpaceItem2.Size = new System.Drawing.Size(46, 28); + this.emptySpaceItem2.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.emptySpaceItem2.TextSize = new System.Drawing.Size(0, 0); + // + // layoutControlItem1 + // + this.layoutControlItem1.Control = this.edModuleNo; + this.layoutControlItem1.Location = new System.Drawing.Point(46, 28); + this.layoutControlItem1.Name = "layoutControlItem1"; + this.layoutControlItem1.Size = new System.Drawing.Size(138, 28); + this.layoutControlItem1.Text = "Module S/N"; + this.layoutControlItem1.TextAlignMode = DevExpress.XtraLayout.TextAlignModeItem.CustomSize; + this.layoutControlItem1.TextSize = new System.Drawing.Size(70, 0); + this.layoutControlItem1.TextToControlDistance = 5; + // + // Root + // + this.Root.EnableIndentsWithoutBorders = DevExpress.Utils.DefaultBoolean.True; + this.Root.GroupBordersVisible = false; + this.Root.Items.AddRange(new DevExpress.XtraLayout.BaseLayoutItem[] { + this.layoutControlItem2}); + this.Root.Name = "Root"; + this.Root.Padding = new DevExpress.XtraLayout.Utils.Padding(1, 1, 1, 1); + this.Root.Size = new System.Drawing.Size(198, 126); + this.Root.TextVisible = false; + // + // layoutControlItem2 + // + this.layoutControlItem2.Control = this.gbBmuAddrSet; + this.layoutControlItem2.Location = new System.Drawing.Point(0, 0); + this.layoutControlItem2.Name = "layoutControlItem2"; + this.layoutControlItem2.Size = new System.Drawing.Size(196, 124); + this.layoutControlItem2.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem2.TextVisible = false; + // + // emptySpaceItem1 + // + this.emptySpaceItem1.AllowHotTrack = false; + this.emptySpaceItem1.Location = new System.Drawing.Point(0, 56); + this.emptySpaceItem1.MinSize = new System.Drawing.Size(104, 24); + this.emptySpaceItem1.Name = "emptySpaceItem1"; + this.emptySpaceItem1.Size = new System.Drawing.Size(104, 35); + this.emptySpaceItem1.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.emptySpaceItem1.TextSize = new System.Drawing.Size(0, 0); + // + // ucModuleIdSet + // + this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 14F); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.Controls.Add(this.layoutControl1); + this.Name = "ucModuleIdSet"; + this.Size = new System.Drawing.Size(198, 126); + ((System.ComponentModel.ISupportInitialize)(this.layoutControl1)).EndInit(); + this.layoutControl1.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.gbBmuAddrSet)).EndInit(); + this.gbBmuAddrSet.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.layoutControl9)).EndInit(); + this.layoutControl9.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.edModuleNo.Properties)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.edSystemAddrNew.Properties)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.edSystemAddr.Properties)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup9)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.lcitemBmsId)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem34)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem6)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.emptySpaceItem2)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem1)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.Root)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem2)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.emptySpaceItem1)).EndInit(); + this.ResumeLayout(false); + + } + + #endregion + + private DevExpress.XtraLayout.LayoutControl layoutControl1; + private DevExpress.XtraLayout.LayoutControlGroup Root; + private DevExpress.XtraEditors.GroupControl gbBmuAddrSet; + private DevExpress.XtraLayout.LayoutControl layoutControl9; + private DevExpress.XtraEditors.TextEdit edModuleNo; + private DevExpress.XtraEditors.TextEdit edSystemAddrNew; + private DevExpress.XtraEditors.SimpleButton btnBmsAddrSet; + private DevExpress.XtraEditors.TextEdit edSystemAddr; + private DevExpress.XtraLayout.LayoutControlGroup layoutControlGroup9; + private DevExpress.XtraLayout.LayoutControlItem lcitemBmsId; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem34; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem6; + private DevExpress.XtraLayout.EmptySpaceItem emptySpaceItem2; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem1; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem2; + private DevExpress.XtraLayout.EmptySpaceItem emptySpaceItem1; + } +} diff --git a/LFP_Manager_PRM/Controls/ucModuleIdSet.cs b/LFP_Manager_PRM/Controls/ucModuleIdSet.cs new file mode 100644 index 0000000..2d57d53 --- /dev/null +++ b/LFP_Manager_PRM/Controls/ucModuleIdSet.cs @@ -0,0 +1,131 @@ +using DevExpress.XtraEditors; +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Data; +using System.Drawing; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using System.Windows.Forms; + +using LFP_Manager.Forms; +using LFP_Manager.DataStructure; +using LFP_Manager.Utils; + +namespace LFP_Manager.Controls +{ + public partial class ucModuleIdSet : DevExpress.XtraEditors.XtraUserControl + { + #region VARIABLES + + int mID = 0; + + DeviceCalibration rCalib; + DeviceCalibration wCalib; + + DeviceParamData rParam; + + int maxModule = 1; + //UInt32 cValue = 0; + + //bool wFlag = false; + + public event CalibCmdEvent OnCommand = null; + + #endregion + + public ucModuleIdSet() + { + InitializeComponent(); + } + + #region EXT EVENT FUNCTION + + private void OnCommnadEvent(int sId, int mode, int flag, ref DeviceParamData aParam, ref DeviceCalibration aCalib) + { + OnCommand?.Invoke(sId, mode, flag, ref aParam, ref aCalib); + } + + #endregion + + #region PUBLIC FUCTIONS + + public void UpdateData(int sId, DeviceCalibration aCalib) + { + mID = sId; + rCalib = aCalib; + DisplayCalib(); + } + + public void SetMaxModule(int aMaxModule) + { + maxModule = aMaxModule; + } + + #endregion + + #region DISPLAY DATA + + private void DisplayCalib() + { + if (this.InvokeRequired) + { + this.Invoke(new MethodInvoker(delegate () + { + // Device Address + edSystemAddr.Text = String.Format("{0:0}", rCalib.SystemInfo.devAddr); + })); + } + else + { + // Device Address + edSystemAddr.Text = String.Format("{0:0}", rCalib.SystemInfo.devAddr); + } + } + + #endregion + + private void edModuleNo_EditValueChanged(object sender, EventArgs e) + { + if (edModuleNo.Text != "") + { + int mdID; + int mdNo; + string strMdNo = edModuleNo.Text; + + try + { + mdNo = Convert.ToInt32(strMdNo); + + mdID = (mdNo - 1) % maxModule + 1; + + edSystemAddrNew.Text = mdID.ToString(); + } + catch (Exception ex) + { + edModuleNo.Text = ""; + MessageBox.Show(ex.Message, "Exception", MessageBoxButtons.OK, MessageBoxIcon.Error); + } + } + } + + #region BUTTON EVENT + + private void btnBmsAddrGet_Click(object sender, EventArgs e) + { + OnCommnadEvent(mID, 9, 0, ref rParam, ref wCalib); + } + + private void btnBmsAddrSet_Click(object sender, EventArgs e) + { + if (edSystemAddrNew.Text == string.Empty) return; + wCalib = rCalib; + wCalib.SystemInfo.devAddr = (UInt16)(Convert.ToInt32(edSystemAddrNew.Text)); + + OnCommnadEvent(mID, 9, 1, ref rParam, ref wCalib); + } + + #endregion + } +} diff --git a/LFP_Manager_PRM/Controls/ucModuleIdSet.resx b/LFP_Manager_PRM/Controls/ucModuleIdSet.resx new file mode 100644 index 0000000..1af7de1 --- /dev/null +++ b/LFP_Manager_PRM/Controls/ucModuleIdSet.resx @@ -0,0 +1,120 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + \ No newline at end of file diff --git a/LFP_Manager_PRM/Controls/ucParamSet.Designer.cs b/LFP_Manager_PRM/Controls/ucParamSet.Designer.cs new file mode 100644 index 0000000..844feda --- /dev/null +++ b/LFP_Manager_PRM/Controls/ucParamSet.Designer.cs @@ -0,0 +1,601 @@ +namespace LFP_Manager.Controls +{ + partial class ucParamSet + { + /// + /// 필수 디자이너 변수입니다. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// 사용 중인 모든 리소스를 정리합니다. + /// + /// 관리되는 리소스를 삭제해야 하면 true이고, 그렇지 않으면 false입니다. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region 구성 요소 디자이너에서 생성한 코드 + + /// + /// 디자이너 지원에 필요한 메서드입니다. + /// 이 메서드의 내용을 코드 편집기로 수정하지 마십시오. + /// + private void InitializeComponent() + { + this.gbParamSet = new DevExpress.XtraEditors.GroupControl(); + this.layoutControl1 = new DevExpress.XtraLayout.LayoutControl(); + this.edReleaseNew = new DevExpress.XtraEditors.TextEdit(); + this.edWarningNew = new DevExpress.XtraEditors.TextEdit(); + this.edTripNew = new DevExpress.XtraEditors.TextEdit(); + this.btnSet = new DevExpress.XtraEditors.SimpleButton(); + this.btnGet = new DevExpress.XtraEditors.SimpleButton(); + this.edRelease = new DevExpress.XtraEditors.TextEdit(); + this.edWarning = new DevExpress.XtraEditors.TextEdit(); + this.edTrip = new DevExpress.XtraEditors.TextEdit(); + this.layoutControlGroup1 = new DevExpress.XtraLayout.LayoutControlGroup(); + this.lcTripParam = new DevExpress.XtraLayout.LayoutControlItem(); + this.lcWarningParam = new DevExpress.XtraLayout.LayoutControlItem(); + this.lcReleaseParam = new DevExpress.XtraLayout.LayoutControlItem(); + this.emptySpaceItem1 = new DevExpress.XtraLayout.EmptySpaceItem(); + this.layoutControlItem4 = new DevExpress.XtraLayout.LayoutControlItem(); + this.layoutControlItem5 = new DevExpress.XtraLayout.LayoutControlItem(); + this.emptySpaceItem2 = new DevExpress.XtraLayout.EmptySpaceItem(); + this.lbTripUnit = new DevExpress.XtraLayout.SimpleLabelItem(); + this.lbWarningUnit = new DevExpress.XtraLayout.SimpleLabelItem(); + this.lbReleaseUnit = new DevExpress.XtraLayout.SimpleLabelItem(); + this.layoutControlItem1 = new DevExpress.XtraLayout.LayoutControlItem(); + this.layoutControlItem2 = new DevExpress.XtraLayout.LayoutControlItem(); + this.layoutControlItem3 = new DevExpress.XtraLayout.LayoutControlItem(); + this.lbCurr = new DevExpress.XtraLayout.SimpleLabelItem(); + this.lbNew = new DevExpress.XtraLayout.SimpleLabelItem(); + this.emptySpaceItem3 = new DevExpress.XtraLayout.EmptySpaceItem(); + this.emptySpaceItem4 = new DevExpress.XtraLayout.EmptySpaceItem(); + this.lbFault = new DevExpress.XtraLayout.SimpleLabelItem(); + this.lbWarning = new DevExpress.XtraLayout.SimpleLabelItem(); + this.lbRelease = new DevExpress.XtraLayout.SimpleLabelItem(); + ((System.ComponentModel.ISupportInitialize)(this.gbParamSet)).BeginInit(); + this.gbParamSet.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControl1)).BeginInit(); + this.layoutControl1.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.edReleaseNew.Properties)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.edWarningNew.Properties)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.edTripNew.Properties)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.edRelease.Properties)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.edWarning.Properties)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.edTrip.Properties)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup1)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.lcTripParam)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.lcWarningParam)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.lcReleaseParam)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.emptySpaceItem1)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem4)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem5)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.emptySpaceItem2)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.lbTripUnit)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.lbWarningUnit)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.lbReleaseUnit)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem1)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem2)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem3)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.lbCurr)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.lbNew)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.emptySpaceItem3)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.emptySpaceItem4)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.lbFault)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.lbWarning)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.lbRelease)).BeginInit(); + this.SuspendLayout(); + // + // gbParamSet + // + this.gbParamSet.Controls.Add(this.layoutControl1); + this.gbParamSet.Dock = System.Windows.Forms.DockStyle.Fill; + this.gbParamSet.Location = new System.Drawing.Point(0, 0); + this.gbParamSet.Name = "gbParamSet"; + this.gbParamSet.Size = new System.Drawing.Size(219, 171); + this.gbParamSet.TabIndex = 0; + this.gbParamSet.Text = "groupControl1"; + // + // layoutControl1 + // + this.layoutControl1.Controls.Add(this.edReleaseNew); + this.layoutControl1.Controls.Add(this.edWarningNew); + this.layoutControl1.Controls.Add(this.edTripNew); + this.layoutControl1.Controls.Add(this.btnSet); + this.layoutControl1.Controls.Add(this.btnGet); + this.layoutControl1.Controls.Add(this.edRelease); + this.layoutControl1.Controls.Add(this.edWarning); + this.layoutControl1.Controls.Add(this.edTrip); + this.layoutControl1.Dock = System.Windows.Forms.DockStyle.Fill; + this.layoutControl1.Location = new System.Drawing.Point(2, 22); + this.layoutControl1.Name = "layoutControl1"; + this.layoutControl1.OptionsCustomizationForm.DesignTimeCustomizationFormPositionAndSize = new System.Drawing.Rectangle(870, 50, 372, 627); + this.layoutControl1.Root = this.layoutControlGroup1; + this.layoutControl1.Size = new System.Drawing.Size(215, 147); + this.layoutControl1.TabIndex = 0; + this.layoutControl1.Text = "layoutControl1"; + // + // edReleaseNew + // + this.edReleaseNew.Location = new System.Drawing.Point(124, 79); + this.edReleaseNew.Name = "edReleaseNew"; + this.edReleaseNew.Properties.Appearance.Options.UseTextOptions = true; + this.edReleaseNew.Properties.Appearance.TextOptions.HAlignment = DevExpress.Utils.HorzAlignment.Far; + this.edReleaseNew.Size = new System.Drawing.Size(56, 20); + this.edReleaseNew.StyleController = this.layoutControl1; + this.edReleaseNew.TabIndex = 11; + this.edReleaseNew.KeyPress += new System.Windows.Forms.KeyPressEventHandler(this.TextBox_KeyPress); + // + // edWarningNew + // + this.edWarningNew.Location = new System.Drawing.Point(124, 54); + this.edWarningNew.Name = "edWarningNew"; + this.edWarningNew.Properties.Appearance.Options.UseTextOptions = true; + this.edWarningNew.Properties.Appearance.TextOptions.HAlignment = DevExpress.Utils.HorzAlignment.Far; + this.edWarningNew.Size = new System.Drawing.Size(56, 20); + this.edWarningNew.StyleController = this.layoutControl1; + this.edWarningNew.TabIndex = 10; + this.edWarningNew.KeyPress += new System.Windows.Forms.KeyPressEventHandler(this.TextBox_KeyPress); + // + // edTripNew + // + this.edTripNew.Location = new System.Drawing.Point(124, 29); + this.edTripNew.Name = "edTripNew"; + this.edTripNew.Properties.Appearance.Options.UseTextOptions = true; + this.edTripNew.Properties.Appearance.TextOptions.HAlignment = DevExpress.Utils.HorzAlignment.Far; + this.edTripNew.Size = new System.Drawing.Size(56, 20); + this.edTripNew.StyleController = this.layoutControl1; + this.edTripNew.TabIndex = 9; + this.edTripNew.KeyPress += new System.Windows.Forms.KeyPressEventHandler(this.TextBox_KeyPress); + // + // btnSet + // + this.btnSet.Location = new System.Drawing.Point(135, 117); + this.btnSet.Name = "btnSet"; + this.btnSet.Size = new System.Drawing.Size(76, 26); + this.btnSet.StyleController = this.layoutControl1; + this.btnSet.TabIndex = 8; + this.btnSet.Text = "Set"; + this.btnSet.Click += new System.EventHandler(this.btnSet_Click); + // + // btnGet + // + this.btnGet.Location = new System.Drawing.Point(55, 117); + this.btnGet.Name = "btnGet"; + this.btnGet.Size = new System.Drawing.Size(76, 26); + this.btnGet.StyleController = this.layoutControl1; + this.btnGet.TabIndex = 7; + this.btnGet.Text = "Get"; + this.btnGet.Click += new System.EventHandler(this.btnRead_Click); + // + // edRelease + // + this.edRelease.Location = new System.Drawing.Point(64, 79); + this.edRelease.Name = "edRelease"; + this.edRelease.Properties.Appearance.Options.UseTextOptions = true; + this.edRelease.Properties.Appearance.TextOptions.HAlignment = DevExpress.Utils.HorzAlignment.Far; + this.edRelease.Properties.ReadOnly = true; + this.edRelease.Size = new System.Drawing.Size(56, 20); + this.edRelease.StyleController = this.layoutControl1; + this.edRelease.TabIndex = 6; + // + // edWarning + // + this.edWarning.Location = new System.Drawing.Point(64, 54); + this.edWarning.Name = "edWarning"; + this.edWarning.Properties.Appearance.Options.UseTextOptions = true; + this.edWarning.Properties.Appearance.TextOptions.HAlignment = DevExpress.Utils.HorzAlignment.Far; + this.edWarning.Properties.ReadOnly = true; + this.edWarning.Size = new System.Drawing.Size(56, 20); + this.edWarning.StyleController = this.layoutControl1; + this.edWarning.TabIndex = 5; + // + // edTrip + // + this.edTrip.Location = new System.Drawing.Point(64, 29); + this.edTrip.Name = "edTrip"; + this.edTrip.Properties.Appearance.Options.UseTextOptions = true; + this.edTrip.Properties.Appearance.TextOptions.HAlignment = DevExpress.Utils.HorzAlignment.Far; + this.edTrip.Properties.ReadOnly = true; + this.edTrip.Size = new System.Drawing.Size(56, 20); + this.edTrip.StyleController = this.layoutControl1; + this.edTrip.TabIndex = 4; + // + // layoutControlGroup1 + // + this.layoutControlGroup1.CustomizationFormText = "Root"; + this.layoutControlGroup1.EnableIndentsWithoutBorders = DevExpress.Utils.DefaultBoolean.True; + this.layoutControlGroup1.GroupBordersVisible = false; + this.layoutControlGroup1.Items.AddRange(new DevExpress.XtraLayout.BaseLayoutItem[] { + this.lcTripParam, + this.lcWarningParam, + this.lcReleaseParam, + this.emptySpaceItem1, + this.layoutControlItem4, + this.layoutControlItem5, + this.emptySpaceItem2, + this.lbTripUnit, + this.lbWarningUnit, + this.lbReleaseUnit, + this.layoutControlItem1, + this.layoutControlItem2, + this.layoutControlItem3, + this.lbCurr, + this.lbNew, + this.emptySpaceItem3, + this.emptySpaceItem4, + this.lbFault, + this.lbWarning, + this.lbRelease}); + this.layoutControlGroup1.Location = new System.Drawing.Point(0, 0); + this.layoutControlGroup1.Name = "Root"; + this.layoutControlGroup1.Padding = new DevExpress.XtraLayout.Utils.Padding(2, 2, 2, 2); + this.layoutControlGroup1.Size = new System.Drawing.Size(215, 147); + this.layoutControlGroup1.Text = "Root"; + this.layoutControlGroup1.TextVisible = false; + // + // lcTripParam + // + this.lcTripParam.Control = this.edTrip; + this.lcTripParam.CustomizationFormText = "Fault"; + this.lcTripParam.Location = new System.Drawing.Point(60, 25); + this.lcTripParam.MaxSize = new System.Drawing.Size(60, 25); + this.lcTripParam.MinSize = new System.Drawing.Size(60, 25); + this.lcTripParam.Name = "lcTripParam"; + this.lcTripParam.Size = new System.Drawing.Size(60, 25); + this.lcTripParam.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.lcTripParam.Text = "Fault"; + this.lcTripParam.TextSize = new System.Drawing.Size(0, 0); + this.lcTripParam.TextToControlDistance = 0; + this.lcTripParam.TextVisible = false; + // + // lcWarningParam + // + this.lcWarningParam.Control = this.edWarning; + this.lcWarningParam.CustomizationFormText = "Warning"; + this.lcWarningParam.Location = new System.Drawing.Point(60, 50); + this.lcWarningParam.MaxSize = new System.Drawing.Size(60, 25); + this.lcWarningParam.MinSize = new System.Drawing.Size(60, 25); + this.lcWarningParam.Name = "lcWarningParam"; + this.lcWarningParam.Size = new System.Drawing.Size(60, 25); + this.lcWarningParam.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.lcWarningParam.Text = "Warning"; + this.lcWarningParam.TextSize = new System.Drawing.Size(0, 0); + this.lcWarningParam.TextToControlDistance = 0; + this.lcWarningParam.TextVisible = false; + // + // lcReleaseParam + // + this.lcReleaseParam.Control = this.edRelease; + this.lcReleaseParam.CustomizationFormText = "Release"; + this.lcReleaseParam.Location = new System.Drawing.Point(60, 75); + this.lcReleaseParam.MaxSize = new System.Drawing.Size(60, 25); + this.lcReleaseParam.MinSize = new System.Drawing.Size(60, 25); + this.lcReleaseParam.Name = "lcReleaseParam"; + this.lcReleaseParam.Size = new System.Drawing.Size(60, 25); + this.lcReleaseParam.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.lcReleaseParam.Text = "Release"; + this.lcReleaseParam.TextSize = new System.Drawing.Size(0, 0); + this.lcReleaseParam.TextToControlDistance = 0; + this.lcReleaseParam.TextVisible = false; + // + // emptySpaceItem1 + // + this.emptySpaceItem1.AllowHotTrack = false; + this.emptySpaceItem1.CustomizationFormText = "emptySpaceItem1"; + this.emptySpaceItem1.Location = new System.Drawing.Point(0, 100); + this.emptySpaceItem1.MinSize = new System.Drawing.Size(1, 1); + this.emptySpaceItem1.Name = "emptySpaceItem1"; + this.emptySpaceItem1.Size = new System.Drawing.Size(211, 13); + this.emptySpaceItem1.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.emptySpaceItem1.Text = "emptySpaceItem1"; + this.emptySpaceItem1.TextSize = new System.Drawing.Size(0, 0); + // + // layoutControlItem4 + // + this.layoutControlItem4.Control = this.btnGet; + this.layoutControlItem4.CustomizationFormText = "layoutControlItem4"; + this.layoutControlItem4.Location = new System.Drawing.Point(51, 113); + this.layoutControlItem4.MaxSize = new System.Drawing.Size(80, 30); + this.layoutControlItem4.MinSize = new System.Drawing.Size(80, 30); + this.layoutControlItem4.Name = "layoutControlItem4"; + this.layoutControlItem4.Size = new System.Drawing.Size(80, 30); + this.layoutControlItem4.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem4.Text = "layoutControlItem4"; + this.layoutControlItem4.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem4.TextToControlDistance = 0; + this.layoutControlItem4.TextVisible = false; + // + // layoutControlItem5 + // + this.layoutControlItem5.Control = this.btnSet; + this.layoutControlItem5.CustomizationFormText = "layoutControlItem5"; + this.layoutControlItem5.Location = new System.Drawing.Point(131, 113); + this.layoutControlItem5.MaxSize = new System.Drawing.Size(80, 30); + this.layoutControlItem5.MinSize = new System.Drawing.Size(80, 30); + this.layoutControlItem5.Name = "layoutControlItem5"; + this.layoutControlItem5.Size = new System.Drawing.Size(80, 30); + this.layoutControlItem5.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem5.Text = "layoutControlItem5"; + this.layoutControlItem5.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem5.TextToControlDistance = 0; + this.layoutControlItem5.TextVisible = false; + // + // emptySpaceItem2 + // + this.emptySpaceItem2.AllowHotTrack = false; + this.emptySpaceItem2.CustomizationFormText = "emptySpaceItem2"; + this.emptySpaceItem2.Location = new System.Drawing.Point(0, 113); + this.emptySpaceItem2.MinSize = new System.Drawing.Size(1, 1); + this.emptySpaceItem2.Name = "emptySpaceItem2"; + this.emptySpaceItem2.Size = new System.Drawing.Size(51, 30); + this.emptySpaceItem2.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.emptySpaceItem2.Text = "emptySpaceItem2"; + this.emptySpaceItem2.TextSize = new System.Drawing.Size(0, 0); + // + // lbTripUnit + // + this.lbTripUnit.AllowHotTrack = false; + this.lbTripUnit.AppearanceItemCaption.Options.UseTextOptions = true; + this.lbTripUnit.AppearanceItemCaption.TextOptions.HAlignment = DevExpress.Utils.HorzAlignment.Center; + this.lbTripUnit.CustomizationFormText = "-"; + this.lbTripUnit.Location = new System.Drawing.Point(180, 25); + this.lbTripUnit.MaxSize = new System.Drawing.Size(31, 25); + this.lbTripUnit.MinSize = new System.Drawing.Size(31, 25); + this.lbTripUnit.Name = "lbTripUnit"; + this.lbTripUnit.Size = new System.Drawing.Size(31, 25); + this.lbTripUnit.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.lbTripUnit.Text = "-"; + this.lbTripUnit.TextSize = new System.Drawing.Size(45, 14); + // + // lbWarningUnit + // + this.lbWarningUnit.AllowHotTrack = false; + this.lbWarningUnit.AppearanceItemCaption.Options.UseTextOptions = true; + this.lbWarningUnit.AppearanceItemCaption.TextOptions.HAlignment = DevExpress.Utils.HorzAlignment.Center; + this.lbWarningUnit.CustomizationFormText = "-"; + this.lbWarningUnit.Location = new System.Drawing.Point(180, 50); + this.lbWarningUnit.MaxSize = new System.Drawing.Size(31, 25); + this.lbWarningUnit.MinSize = new System.Drawing.Size(31, 25); + this.lbWarningUnit.Name = "lbWarningUnit"; + this.lbWarningUnit.Size = new System.Drawing.Size(31, 25); + this.lbWarningUnit.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.lbWarningUnit.Text = "-"; + this.lbWarningUnit.TextSize = new System.Drawing.Size(45, 14); + // + // lbReleaseUnit + // + this.lbReleaseUnit.AllowHotTrack = false; + this.lbReleaseUnit.AppearanceItemCaption.Options.UseTextOptions = true; + this.lbReleaseUnit.AppearanceItemCaption.TextOptions.HAlignment = DevExpress.Utils.HorzAlignment.Center; + this.lbReleaseUnit.CustomizationFormText = "-"; + this.lbReleaseUnit.Location = new System.Drawing.Point(180, 75); + this.lbReleaseUnit.MaxSize = new System.Drawing.Size(31, 25); + this.lbReleaseUnit.MinSize = new System.Drawing.Size(31, 25); + this.lbReleaseUnit.Name = "lbReleaseUnit"; + this.lbReleaseUnit.Size = new System.Drawing.Size(31, 25); + this.lbReleaseUnit.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.lbReleaseUnit.Text = "-"; + this.lbReleaseUnit.TextSize = new System.Drawing.Size(45, 14); + // + // layoutControlItem1 + // + this.layoutControlItem1.Control = this.edTripNew; + this.layoutControlItem1.CustomizationFormText = "layoutControlItem1"; + this.layoutControlItem1.Location = new System.Drawing.Point(120, 25); + this.layoutControlItem1.MaxSize = new System.Drawing.Size(60, 25); + this.layoutControlItem1.MinSize = new System.Drawing.Size(60, 25); + this.layoutControlItem1.Name = "layoutControlItem1"; + this.layoutControlItem1.Size = new System.Drawing.Size(60, 25); + this.layoutControlItem1.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem1.Text = "layoutControlItem1"; + this.layoutControlItem1.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem1.TextToControlDistance = 0; + this.layoutControlItem1.TextVisible = false; + // + // layoutControlItem2 + // + this.layoutControlItem2.Control = this.edWarningNew; + this.layoutControlItem2.CustomizationFormText = "layoutControlItem2"; + this.layoutControlItem2.Location = new System.Drawing.Point(120, 50); + this.layoutControlItem2.MaxSize = new System.Drawing.Size(60, 25); + this.layoutControlItem2.MinSize = new System.Drawing.Size(60, 25); + this.layoutControlItem2.Name = "layoutControlItem2"; + this.layoutControlItem2.Size = new System.Drawing.Size(60, 25); + this.layoutControlItem2.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem2.Text = "layoutControlItem2"; + this.layoutControlItem2.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem2.TextToControlDistance = 0; + this.layoutControlItem2.TextVisible = false; + // + // layoutControlItem3 + // + this.layoutControlItem3.Control = this.edReleaseNew; + this.layoutControlItem3.CustomizationFormText = "layoutControlItem3"; + this.layoutControlItem3.Location = new System.Drawing.Point(120, 75); + this.layoutControlItem3.MaxSize = new System.Drawing.Size(60, 25); + this.layoutControlItem3.MinSize = new System.Drawing.Size(60, 25); + this.layoutControlItem3.Name = "layoutControlItem3"; + this.layoutControlItem3.Size = new System.Drawing.Size(60, 25); + this.layoutControlItem3.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem3.Text = "layoutControlItem3"; + this.layoutControlItem3.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem3.TextToControlDistance = 0; + this.layoutControlItem3.TextVisible = false; + // + // lbCurr + // + this.lbCurr.AllowHotTrack = false; + this.lbCurr.AppearanceItemCaption.Options.UseTextOptions = true; + this.lbCurr.AppearanceItemCaption.TextOptions.HAlignment = DevExpress.Utils.HorzAlignment.Center; + this.lbCurr.CustomizationFormText = "LabelsimpleLabelItem2"; + this.lbCurr.Location = new System.Drawing.Point(60, 0); + this.lbCurr.MaxSize = new System.Drawing.Size(60, 25); + this.lbCurr.MinSize = new System.Drawing.Size(60, 25); + this.lbCurr.Name = "lbCurr"; + this.lbCurr.Size = new System.Drawing.Size(60, 25); + this.lbCurr.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.lbCurr.Text = "Current"; + this.lbCurr.TextSize = new System.Drawing.Size(45, 14); + // + // lbNew + // + this.lbNew.AllowHotTrack = false; + this.lbNew.AppearanceItemCaption.Options.UseTextOptions = true; + this.lbNew.AppearanceItemCaption.TextOptions.HAlignment = DevExpress.Utils.HorzAlignment.Center; + this.lbNew.CustomizationFormText = "LabelsimpleLabelItem1"; + this.lbNew.Location = new System.Drawing.Point(120, 0); + this.lbNew.MaxSize = new System.Drawing.Size(60, 25); + this.lbNew.MinSize = new System.Drawing.Size(60, 25); + this.lbNew.Name = "lbNew"; + this.lbNew.Size = new System.Drawing.Size(60, 25); + this.lbNew.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.lbNew.Text = "New"; + this.lbNew.TextSize = new System.Drawing.Size(45, 14); + // + // emptySpaceItem3 + // + this.emptySpaceItem3.AllowHotTrack = false; + this.emptySpaceItem3.CustomizationFormText = "emptySpaceItem3"; + this.emptySpaceItem3.Location = new System.Drawing.Point(0, 0); + this.emptySpaceItem3.MaxSize = new System.Drawing.Size(60, 25); + this.emptySpaceItem3.MinSize = new System.Drawing.Size(60, 25); + this.emptySpaceItem3.Name = "emptySpaceItem3"; + this.emptySpaceItem3.Size = new System.Drawing.Size(60, 25); + this.emptySpaceItem3.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.emptySpaceItem3.Text = "emptySpaceItem3"; + this.emptySpaceItem3.TextSize = new System.Drawing.Size(0, 0); + // + // emptySpaceItem4 + // + this.emptySpaceItem4.AllowHotTrack = false; + this.emptySpaceItem4.CustomizationFormText = "emptySpaceItem4"; + this.emptySpaceItem4.Location = new System.Drawing.Point(180, 0); + this.emptySpaceItem4.Name = "emptySpaceItem4"; + this.emptySpaceItem4.Size = new System.Drawing.Size(31, 25); + this.emptySpaceItem4.Text = "emptySpaceItem4"; + this.emptySpaceItem4.TextSize = new System.Drawing.Size(0, 0); + // + // lbFault + // + this.lbFault.AllowHotTrack = false; + this.lbFault.CustomizationFormText = "Fault"; + this.lbFault.Location = new System.Drawing.Point(0, 25); + this.lbFault.MaxSize = new System.Drawing.Size(60, 25); + this.lbFault.MinSize = new System.Drawing.Size(60, 25); + this.lbFault.Name = "lbFault"; + this.lbFault.Size = new System.Drawing.Size(60, 25); + this.lbFault.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.lbFault.Text = "Fault"; + this.lbFault.TextSize = new System.Drawing.Size(45, 14); + // + // lbWarning + // + this.lbWarning.AllowHotTrack = false; + this.lbWarning.CustomizationFormText = "Warning"; + this.lbWarning.Location = new System.Drawing.Point(0, 50); + this.lbWarning.MaxSize = new System.Drawing.Size(60, 25); + this.lbWarning.MinSize = new System.Drawing.Size(60, 25); + this.lbWarning.Name = "lbWarning"; + this.lbWarning.Size = new System.Drawing.Size(60, 25); + this.lbWarning.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.lbWarning.Text = "Warning"; + this.lbWarning.TextSize = new System.Drawing.Size(45, 14); + // + // lbRelease + // + this.lbRelease.AllowHotTrack = false; + this.lbRelease.CustomizationFormText = "Release"; + this.lbRelease.Location = new System.Drawing.Point(0, 75); + this.lbRelease.MaxSize = new System.Drawing.Size(60, 25); + this.lbRelease.MinSize = new System.Drawing.Size(60, 25); + this.lbRelease.Name = "lbRelease"; + this.lbRelease.Size = new System.Drawing.Size(60, 25); + this.lbRelease.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.lbRelease.Text = "Release"; + this.lbRelease.TextSize = new System.Drawing.Size(45, 14); + // + // ucParamSet + // + this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 12F); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.Controls.Add(this.gbParamSet); + this.Name = "ucParamSet"; + this.Size = new System.Drawing.Size(219, 171); + ((System.ComponentModel.ISupportInitialize)(this.gbParamSet)).EndInit(); + this.gbParamSet.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.layoutControl1)).EndInit(); + this.layoutControl1.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.edReleaseNew.Properties)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.edWarningNew.Properties)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.edTripNew.Properties)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.edRelease.Properties)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.edWarning.Properties)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.edTrip.Properties)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup1)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.lcTripParam)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.lcWarningParam)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.lcReleaseParam)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.emptySpaceItem1)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem4)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem5)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.emptySpaceItem2)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.lbTripUnit)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.lbWarningUnit)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.lbReleaseUnit)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem1)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem2)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem3)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.lbCurr)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.lbNew)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.emptySpaceItem3)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.emptySpaceItem4)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.lbFault)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.lbWarning)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.lbRelease)).EndInit(); + this.ResumeLayout(false); + + } + + #endregion + + private DevExpress.XtraEditors.GroupControl gbParamSet; + private DevExpress.XtraLayout.LayoutControl layoutControl1; + private DevExpress.XtraLayout.LayoutControlGroup layoutControlGroup1; + private DevExpress.XtraEditors.TextEdit edRelease; + private DevExpress.XtraEditors.TextEdit edWarning; + private DevExpress.XtraEditors.TextEdit edTrip; + private DevExpress.XtraLayout.LayoutControlItem lcTripParam; + private DevExpress.XtraLayout.LayoutControlItem lcWarningParam; + private DevExpress.XtraLayout.LayoutControlItem lcReleaseParam; + private DevExpress.XtraEditors.SimpleButton btnSet; + private DevExpress.XtraEditors.SimpleButton btnGet; + private DevExpress.XtraLayout.EmptySpaceItem emptySpaceItem1; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem4; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem5; + private DevExpress.XtraLayout.EmptySpaceItem emptySpaceItem2; + private DevExpress.XtraLayout.SimpleLabelItem lbTripUnit; + private DevExpress.XtraLayout.SimpleLabelItem lbWarningUnit; + private DevExpress.XtraLayout.SimpleLabelItem lbReleaseUnit; + private DevExpress.XtraEditors.TextEdit edReleaseNew; + private DevExpress.XtraEditors.TextEdit edWarningNew; + private DevExpress.XtraEditors.TextEdit edTripNew; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem1; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem2; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem3; + private DevExpress.XtraLayout.SimpleLabelItem lbCurr; + private DevExpress.XtraLayout.SimpleLabelItem lbNew; + private DevExpress.XtraLayout.EmptySpaceItem emptySpaceItem3; + private DevExpress.XtraLayout.EmptySpaceItem emptySpaceItem4; + private DevExpress.XtraLayout.SimpleLabelItem lbFault; + private DevExpress.XtraLayout.SimpleLabelItem lbWarning; + private DevExpress.XtraLayout.SimpleLabelItem lbRelease; + + } +} diff --git a/LFP_Manager_PRM/Controls/ucParamSet.cs b/LFP_Manager_PRM/Controls/ucParamSet.cs new file mode 100644 index 0000000..96863f3 --- /dev/null +++ b/LFP_Manager_PRM/Controls/ucParamSet.cs @@ -0,0 +1,274 @@ +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Drawing; +using System.Data; +using System.Linq; +using System.Text; +using System.Windows.Forms; + +using LFP_Manager.DataStructure; +using LFP_Manager.Function; +using LFP_Manager.Utils; + +namespace LFP_Manager.Controls +{ + public delegate void setUpdate(object sender); + public delegate void setCommand(int mode, int flag, ParamData aParam); + + public class ParamData + { + public short Fault; + public short Warning; + public short Release; + public short Time; + + public ParamData() + { + Fault = 0; + Warning = 0; + Release = 0; + Time = 0; + } + + public ParamData DeepCopy() + { + ParamData newCopy = new ParamData + { + Fault = Fault, + Warning = Warning, + Release = Release, + Time = Time, + }; + return newCopy; + } + } + + public partial class ucParamSet : UserControl + { + #region VARIABLES + + int id = 0; + ParamData rParam; + ParamData wParam; + + bool wFlag = false; + + public event setCommand OnCommand = null; + + #endregion + + #region CONSTRUCTORS + + public ucParamSet() + { + InitializeComponent(); + + rParam = new ParamData(); + wParam = new ParamData(); + } + + #endregion + + #region EXT EVENT FUNCTION + + private void OnCommnadEvent(int mode, int flag, ParamData aParam) + { + OnCommand?.Invoke(mode, flag, aParam); + } + + #endregion + + #region BUTTON EVENT + + private void btnRead_Click(object sender, EventArgs e) + { + OnCommnadEvent(id, 0, rParam); + } + + private void btnSet_Click(object sender, EventArgs e) + { + if ((edTripNew.Text == "") || (edWarningNew.Text == "") || (edReleaseNew.Text == "")) + { + return; + } + wParam = rParam.DeepCopy(); + OnCommnadEvent(id, 1, MakeNewParam(id)); + } + + private ParamData MakeNewParam(int aId) + { + switch (aId) + { + case 0: // Cell Over Voltage + case 1: // Cell Under Voltage + wParam.Fault = Convert.ToInt16(edTripNew.Text); + wParam.Warning = Convert.ToInt16(edWarningNew.Text); + wParam.Release = Convert.ToInt16(edReleaseNew.Text); + break; + case 2: // Module Over Voltage + case 3: // Module Under Voltage + wParam.Fault = (short)(Convert.ToDouble(edTripNew.Text) * 100); + wParam.Warning = (short)(Convert.ToDouble(edWarningNew.Text) * 100); + wParam.Release = (short)(Convert.ToDouble(edReleaseNew.Text) * 100); + break; + case 4: // Charge High Temperature + case 5: // Charge Loq Temperature + case 6: // Discharge High Temperature + case 7: // Discharge Low Temperature + case 10: // Low SOC + case 11: // Low SOC + wParam.Fault = Convert.ToInt16(edTripNew.Text); + wParam.Warning = Convert.ToInt16(edWarningNew.Text); + wParam.Release = Convert.ToInt16(edReleaseNew.Text); + break; + case 8: // Charge Over Current + case 9: // Discharge Over Current + wParam.Fault = (short)(Convert.ToDouble(edTripNew.Text) * 10); + wParam.Warning = (short)(Convert.ToDouble(edWarningNew.Text) * 10); + wParam.Release = (short)(Convert.ToDouble(edReleaseNew.Text) * 10); + break; + } + return wParam; + } + + #endregion + + #region PUBLIC FUCTIONS + + public void SetId(int aId) + { + id = aId; + } + + public void UpdateData(ParamData aParam) + { + rParam = aParam; + DisplayParam(); + UpdateNewParam(); + } + + public void EnableItem(int item, bool flag) + { + switch (item) + { + case 0: + edTrip.Enabled = flag; + edTripNew.Enabled = flag; + break; + case 1: + edWarning.Enabled = flag; + edWarningNew.Enabled = flag; + break; + case 2: + edRelease.Enabled = flag; + edReleaseNew.Enabled = flag; + break; + } + } + + public void SetParamName(int no, string nm) + { + switch (no) + { + case 0: gbParamSet.Text = nm; break; + case 1: + lbTripUnit.Text = nm; + lbWarningUnit.Text = nm; + lbReleaseUnit.Text = nm; + break; + } + } + + #endregion + + #region DISPLAY + + private void DisplayParam() + { + ParamData Param = new ParamData(); + Param = rParam; + + switch (id) + { + case 0: + case 1: + edTrip.Text = String.Format("{0}", Param.Fault); + edWarning.Text = String.Format("{0}", Param.Warning); + edRelease.Text = String.Format("{0}", Param.Release); + break; + case 2: + case 3: + edTrip.Text = String.Format("{0:#0.0}", (float)Param.Fault / 100); + edWarning.Text = String.Format("{0:#0.0}", (float)Param.Warning / 100); + edRelease.Text = String.Format("{0:#0.0}", (float)Param.Release / 100); + break; + case 4: + case 5: + case 6: + case 7: + case 10: + case 11: + edTrip.Text = String.Format("{0}", Param.Fault); + edWarning.Text = String.Format("{0}", Param.Warning); + edRelease.Text = String.Format("{0}", Param.Release); + break; + case 8: + case 9: + edTrip.Text = String.Format("{0:#0.0}", (float)Param.Fault / 10); + edWarning.Text = String.Format("{0:#0.0}", (float)Param.Warning / 10); + edRelease.Text = String.Format("{0:#0.0}", (float)Param.Release / 10); + break; + } + } + + private void UpdateNewParam() + { + if (wFlag == false) + { + ParamData Param = new ParamData(); + Param = rParam; + + switch (id) + { + case 0: + case 1: + edTripNew.Text = String.Format("{0}", Param.Fault); + edWarningNew.Text = String.Format("{0}", Param.Warning); + edReleaseNew.Text = String.Format("{0}", Param.Release); + break; + case 2: + case 3: + edTripNew.Text = String.Format("{0:#0.0}", (float)Param.Fault / 100); + edWarningNew.Text = String.Format("{0:#0.0}", (float)Param.Warning / 100); + edReleaseNew.Text = String.Format("{0:#0.0}", (float)Param.Release / 100); + break; + case 4: + case 5: + case 6: + case 7: + case 10: + case 11: + edTripNew.Text = String.Format("{0}", Param.Fault); + edWarningNew.Text = String.Format("{0}", Param.Warning); + edReleaseNew.Text = String.Format("{0}", Param.Release); + break; + case 8: + case 9: + edTripNew.Text = String.Format("{0:#0.0}", (float)Param.Fault / 10); + edWarningNew.Text = String.Format("{0:#0.0}", (float)Param.Warning / 10); + edReleaseNew.Text = String.Format("{0:#0.0}", (float)Param.Release / 10); + break; + } + wFlag = true; + } + } + + #endregion + + private void TextBox_KeyPress(object sender, KeyPressEventArgs e) + { + csUtils.TypingOnlyNumber(sender, e, true, true); + } + } +} diff --git a/LFP_Manager_PRM/Controls/ucParamSet.resx b/LFP_Manager_PRM/Controls/ucParamSet.resx new file mode 100644 index 0000000..1af7de1 --- /dev/null +++ b/LFP_Manager_PRM/Controls/ucParamSet.resx @@ -0,0 +1,120 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + \ No newline at end of file diff --git a/LFP_Manager_PRM/Controls/ucShelfStatus.Designer.cs b/LFP_Manager_PRM/Controls/ucShelfStatus.Designer.cs new file mode 100644 index 0000000..e4e979c --- /dev/null +++ b/LFP_Manager_PRM/Controls/ucShelfStatus.Designer.cs @@ -0,0 +1,1412 @@ +namespace LFP_Manager.Controls +{ + partial class ucShelfStatus + { + /// + /// Required designer variable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Clean up any resources being used. + /// + /// true if managed resources should be disposed; otherwise, false. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Component Designer generated code + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + this.components = new System.ComponentModel.Container(); + DevExpress.XtraCharts.XYDiagram xyDiagram1 = new DevExpress.XtraCharts.XYDiagram(); + DevExpress.XtraCharts.Series series1 = new DevExpress.XtraCharts.Series(); + DevExpress.XtraCharts.Series series2 = new DevExpress.XtraCharts.Series(); + DevExpress.XtraCharts.XYDiagram xyDiagram2 = new DevExpress.XtraCharts.XYDiagram(); + DevExpress.XtraCharts.Series series3 = new DevExpress.XtraCharts.Series(); + DevExpress.XtraCharts.Series series4 = new DevExpress.XtraCharts.Series(); + this.layoutControl1 = new DevExpress.XtraLayout.LayoutControl(); + this.BtnCbTest = new DevExpress.XtraEditors.SimpleButton(); + this.btnINV2 = new DevExpress.XtraEditors.SimpleButton(); + this.btnINV = new DevExpress.XtraEditors.SimpleButton(); + this.gbEtc = new DevExpress.XtraEditors.GroupControl(); + this.layoutControl6 = new DevExpress.XtraLayout.LayoutControl(); + this.lbAllBuffTime = new DevExpress.XtraEditors.LabelControl(); + this.lbOneBuffTime = new DevExpress.XtraEditors.LabelControl(); + this.layoutControlGroup6 = new DevExpress.XtraLayout.LayoutControlGroup(); + this.layoutControlItem22 = new DevExpress.XtraLayout.LayoutControlItem(); + this.layoutControlItem23 = new DevExpress.XtraLayout.LayoutControlItem(); + this.btnCalibration = new DevExpress.XtraEditors.SimpleButton(); + this.btnParam = new DevExpress.XtraEditors.SimpleButton(); + this.gbAlarm = new DevExpress.XtraEditors.GroupControl(); + this.layoutControl5 = new DevExpress.XtraLayout.LayoutControl(); + this.ucCvDiff = new LFP_Manager.Controls.ucStatus(); + this.ucLowSOC = new LFP_Manager.Controls.ucStatus(); + this.ucDchOverCurr = new LFP_Manager.Controls.ucStatus(); + this.ucChaOverCurr = new LFP_Manager.Controls.ucStatus(); + this.ucUnderVolt = new LFP_Manager.Controls.ucStatus(); + this.ucOverVolt = new LFP_Manager.Controls.ucStatus(); + this.ucCellUnderVolt = new LFP_Manager.Controls.ucStatus(); + this.ucCellOverVolt = new LFP_Manager.Controls.ucStatus(); + this.ucLowTemp = new LFP_Manager.Controls.ucStatus(); + this.ucHighTemp = new LFP_Manager.Controls.ucStatus(); + this.layoutControlGroup5 = new DevExpress.XtraLayout.LayoutControlGroup(); + this.layoutControlItem9 = new DevExpress.XtraLayout.LayoutControlItem(); + this.layoutControlItem10 = new DevExpress.XtraLayout.LayoutControlItem(); + this.layoutControlItem11 = new DevExpress.XtraLayout.LayoutControlItem(); + this.layoutControlItem12 = new DevExpress.XtraLayout.LayoutControlItem(); + this.layoutControlItem13 = new DevExpress.XtraLayout.LayoutControlItem(); + this.layoutControlItem14 = new DevExpress.XtraLayout.LayoutControlItem(); + this.layoutControlItem15 = new DevExpress.XtraLayout.LayoutControlItem(); + this.layoutControlItem16 = new DevExpress.XtraLayout.LayoutControlItem(); + this.layoutControlItem17 = new DevExpress.XtraLayout.LayoutControlItem(); + this.layoutControlItem18 = new DevExpress.XtraLayout.LayoutControlItem(); + this.gbStatusAlarm = new DevExpress.XtraEditors.GroupControl(); + this.layoutControl3 = new DevExpress.XtraLayout.LayoutControl(); + this.panelControl2 = new DevExpress.XtraEditors.PanelControl(); + this.lbAlarm = new DevExpress.XtraEditors.LabelControl(); + this.panelControl1 = new DevExpress.XtraEditors.PanelControl(); + this.lbStatus = new DevExpress.XtraEditors.LabelControl(); + this.layoutControlGroup3 = new DevExpress.XtraLayout.LayoutControlGroup(); + this.lcitemStatus = new DevExpress.XtraLayout.LayoutControlItem(); + this.lcitemAlarm = new DevExpress.XtraLayout.LayoutControlItem(); + this.gbDetail = new DevExpress.XtraEditors.GroupControl(); + this.layoutControl4 = new DevExpress.XtraLayout.LayoutControl(); + this.TChart = new DevExpress.XtraCharts.ChartControl(); + this.VChart = new DevExpress.XtraCharts.ChartControl(); + this.layoutControlGroup4 = new DevExpress.XtraLayout.LayoutControlGroup(); + this.layoutControlItem1 = new DevExpress.XtraLayout.LayoutControlItem(); + this.layoutControlItem7 = new DevExpress.XtraLayout.LayoutControlItem(); + this.gbValue = new DevExpress.XtraEditors.GroupControl(); + this.layoutControl2 = new DevExpress.XtraLayout.LayoutControl(); + this.gaugeControl5 = new DevExpress.XtraGauges.Win.GaugeControl(); + this.dgDiffTemperature = new DevExpress.XtraGauges.Win.Gauges.Digital.DigitalGauge(); + this.digitalBackgroundLayerComponent5 = new DevExpress.XtraGauges.Win.Gauges.Digital.DigitalBackgroundLayerComponent(); + this.gaugeControl4 = new DevExpress.XtraGauges.Win.GaugeControl(); + this.dgAvgTemperature = new DevExpress.XtraGauges.Win.Gauges.Digital.DigitalGauge(); + this.digitalBackgroundLayerComponent4 = new DevExpress.XtraGauges.Win.Gauges.Digital.DigitalBackgroundLayerComponent(); + this.gaugeControl3 = new DevExpress.XtraGauges.Win.GaugeControl(); + this.dgDiffCellVoltage = new DevExpress.XtraGauges.Win.Gauges.Digital.DigitalGauge(); + this.digitalBackgroundLayerComponent3 = new DevExpress.XtraGauges.Win.Gauges.Digital.DigitalBackgroundLayerComponent(); + this.gaugeControl2 = new DevExpress.XtraGauges.Win.GaugeControl(); + this.dgAvgCellVoltage = new DevExpress.XtraGauges.Win.Gauges.Digital.DigitalGauge(); + this.digitalBackgroundLayerComponent2 = new DevExpress.XtraGauges.Win.Gauges.Digital.DigitalBackgroundLayerComponent(); + this.gaugeControl1 = new DevExpress.XtraGauges.Win.GaugeControl(); + this.dgVoltage = new DevExpress.XtraGauges.Win.Gauges.Digital.DigitalGauge(); + this.digitalBackgroundLayerComponent1 = new DevExpress.XtraGauges.Win.Gauges.Digital.DigitalBackgroundLayerComponent(); + this.layoutControlGroup2 = new DevExpress.XtraLayout.LayoutControlGroup(); + this.layoutControlItem3 = new DevExpress.XtraLayout.LayoutControlItem(); + this.layoutControlItem4 = new DevExpress.XtraLayout.LayoutControlItem(); + this.layoutControlItem5 = new DevExpress.XtraLayout.LayoutControlItem(); + this.layoutControlItem6 = new DevExpress.XtraLayout.LayoutControlItem(); + this.layoutControlItem24 = new DevExpress.XtraLayout.LayoutControlItem(); + this.layoutControlGroup1 = new DevExpress.XtraLayout.LayoutControlGroup(); + this.lcitemValue = new DevExpress.XtraLayout.LayoutControlItem(); + this.layoutControlItem2 = new DevExpress.XtraLayout.LayoutControlItem(); + this.layoutControlItem8 = new DevExpress.XtraLayout.LayoutControlItem(); + this.icitemStatusAlarm = new DevExpress.XtraLayout.LayoutControlItem(); + this.layoutControlItem19 = new DevExpress.XtraLayout.LayoutControlItem(); + this.lbHeatbeat = new DevExpress.XtraLayout.SimpleLabelItem(); + this.layoutControlItem20 = new DevExpress.XtraLayout.LayoutControlItem(); + this.layoutControlItem21 = new DevExpress.XtraLayout.LayoutControlItem(); + this.layoutControlItem25 = new DevExpress.XtraLayout.LayoutControlItem(); + this.layoutControlItem26 = new DevExpress.XtraLayout.LayoutControlItem(); + this.layoutControlItem27 = new DevExpress.XtraLayout.LayoutControlItem(); + this.tmrDisplay = new System.Windows.Forms.Timer(this.components); + ((System.ComponentModel.ISupportInitialize)(this.layoutControl1)).BeginInit(); + this.layoutControl1.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.gbEtc)).BeginInit(); + this.gbEtc.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControl6)).BeginInit(); + this.layoutControl6.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup6)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem22)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem23)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.gbAlarm)).BeginInit(); + this.gbAlarm.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControl5)).BeginInit(); + this.layoutControl5.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup5)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem9)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem10)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem11)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem12)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem13)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem14)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem15)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem16)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem17)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem18)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.gbStatusAlarm)).BeginInit(); + this.gbStatusAlarm.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControl3)).BeginInit(); + this.layoutControl3.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.panelControl2)).BeginInit(); + this.panelControl2.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.panelControl1)).BeginInit(); + this.panelControl1.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup3)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.lcitemStatus)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.lcitemAlarm)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.gbDetail)).BeginInit(); + this.gbDetail.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControl4)).BeginInit(); + this.layoutControl4.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.TChart)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(xyDiagram1)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(series1)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(series2)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.VChart)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(xyDiagram2)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(series3)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(series4)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup4)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem1)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem7)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.gbValue)).BeginInit(); + this.gbValue.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControl2)).BeginInit(); + this.layoutControl2.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.dgDiffTemperature)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.digitalBackgroundLayerComponent5)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.dgAvgTemperature)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.digitalBackgroundLayerComponent4)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.dgDiffCellVoltage)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.digitalBackgroundLayerComponent3)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.dgAvgCellVoltage)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.digitalBackgroundLayerComponent2)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.dgVoltage)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.digitalBackgroundLayerComponent1)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup2)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem3)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem4)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem5)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem6)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem24)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup1)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.lcitemValue)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem2)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem8)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.icitemStatusAlarm)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem19)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.lbHeatbeat)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem20)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem21)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem25)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem26)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem27)).BeginInit(); + this.SuspendLayout(); + // + // layoutControl1 + // + this.layoutControl1.Controls.Add(this.BtnCbTest); + this.layoutControl1.Controls.Add(this.btnINV2); + this.layoutControl1.Controls.Add(this.btnINV); + this.layoutControl1.Controls.Add(this.gbEtc); + this.layoutControl1.Controls.Add(this.btnCalibration); + this.layoutControl1.Controls.Add(this.btnParam); + this.layoutControl1.Controls.Add(this.gbAlarm); + this.layoutControl1.Controls.Add(this.gbStatusAlarm); + this.layoutControl1.Controls.Add(this.gbDetail); + this.layoutControl1.Controls.Add(this.gbValue); + this.layoutControl1.Dock = System.Windows.Forms.DockStyle.Fill; + this.layoutControl1.Location = new System.Drawing.Point(0, 0); + this.layoutControl1.Name = "layoutControl1"; + this.layoutControl1.OptionsCustomizationForm.DesignTimeCustomizationFormPositionAndSize = new System.Drawing.Rectangle(1245, 196, 523, 350); + this.layoutControl1.Root = this.layoutControlGroup1; + this.layoutControl1.Size = new System.Drawing.Size(948, 572); + this.layoutControl1.TabIndex = 0; + this.layoutControl1.Text = "layoutControl1"; + // + // BtnCbTest + // + this.BtnCbTest.Location = new System.Drawing.Point(889, 160); + this.BtnCbTest.Name = "BtnCbTest"; + this.BtnCbTest.Size = new System.Drawing.Size(56, 22); + this.BtnCbTest.StyleController = this.layoutControl1; + this.BtnCbTest.TabIndex = 13; + this.BtnCbTest.Text = "CB Test"; + this.BtnCbTest.Click += new System.EventHandler(this.BtnCbTest_Click); + // + // btnINV2 + // + this.btnINV2.Location = new System.Drawing.Point(889, 186); + this.btnINV2.Name = "btnINV2"; + this.btnINV2.Size = new System.Drawing.Size(56, 22); + this.btnINV2.StyleController = this.layoutControl1; + this.btnINV2.TabIndex = 12; + this.btnINV2.Text = "M-SN"; + this.btnINV2.Click += new System.EventHandler(this.btnINV2_Click); + // + // btnINV + // + this.btnINV.Location = new System.Drawing.Point(829, 186); + this.btnINV.Name = "btnINV"; + this.btnINV.Size = new System.Drawing.Size(56, 22); + this.btnINV.StyleController = this.layoutControl1; + this.btnINV.TabIndex = 11; + this.btnINV.Text = "INV"; + this.btnINV.Click += new System.EventHandler(this.btnINV_Click); + // + // gbEtc + // + this.gbEtc.Controls.Add(this.layoutControl6); + this.gbEtc.Location = new System.Drawing.Point(717, 109); + this.gbEtc.Name = "gbEtc"; + this.gbEtc.Size = new System.Drawing.Size(108, 99); + this.gbEtc.TabIndex = 10; + this.gbEtc.Text = "BMS-Temp"; + // + // layoutControl6 + // + this.layoutControl6.Controls.Add(this.lbAllBuffTime); + this.layoutControl6.Controls.Add(this.lbOneBuffTime); + this.layoutControl6.Dock = System.Windows.Forms.DockStyle.Fill; + this.layoutControl6.Location = new System.Drawing.Point(2, 23); + this.layoutControl6.Name = "layoutControl6"; + this.layoutControl6.Root = this.layoutControlGroup6; + this.layoutControl6.Size = new System.Drawing.Size(104, 74); + this.layoutControl6.TabIndex = 0; + this.layoutControl6.Text = "layoutControl6"; + // + // lbAllBuffTime + // + this.lbAllBuffTime.Location = new System.Drawing.Point(4, 38); + this.lbAllBuffTime.Name = "lbAllBuffTime"; + this.lbAllBuffTime.Size = new System.Drawing.Size(96, 32); + this.lbAllBuffTime.StyleController = this.layoutControl6; + this.lbAllBuffTime.TabIndex = 5; + // + // lbOneBuffTime + // + this.lbOneBuffTime.Location = new System.Drawing.Point(4, 4); + this.lbOneBuffTime.Name = "lbOneBuffTime"; + this.lbOneBuffTime.Size = new System.Drawing.Size(96, 30); + this.lbOneBuffTime.StyleController = this.layoutControl6; + this.lbOneBuffTime.TabIndex = 4; + this.lbOneBuffTime.Text = " CPU: 0C"; + // + // layoutControlGroup6 + // + this.layoutControlGroup6.CustomizationFormText = "layoutControlGroup6"; + this.layoutControlGroup6.EnableIndentsWithoutBorders = DevExpress.Utils.DefaultBoolean.True; + this.layoutControlGroup6.GroupBordersVisible = false; + this.layoutControlGroup6.Items.AddRange(new DevExpress.XtraLayout.BaseLayoutItem[] { + this.layoutControlItem22, + this.layoutControlItem23}); + this.layoutControlGroup6.Name = "layoutControlGroup6"; + this.layoutControlGroup6.Padding = new DevExpress.XtraLayout.Utils.Padding(2, 2, 2, 2); + this.layoutControlGroup6.Size = new System.Drawing.Size(104, 74); + this.layoutControlGroup6.TextVisible = false; + // + // layoutControlItem22 + // + this.layoutControlItem22.Control = this.lbOneBuffTime; + this.layoutControlItem22.CustomizationFormText = "layoutControlItem22"; + this.layoutControlItem22.Location = new System.Drawing.Point(0, 0); + this.layoutControlItem22.MinSize = new System.Drawing.Size(74, 18); + this.layoutControlItem22.Name = "layoutControlItem22"; + this.layoutControlItem22.Size = new System.Drawing.Size(100, 34); + this.layoutControlItem22.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem22.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem22.TextVisible = false; + // + // layoutControlItem23 + // + this.layoutControlItem23.Control = this.lbAllBuffTime; + this.layoutControlItem23.CustomizationFormText = "layoutControlItem23"; + this.layoutControlItem23.Location = new System.Drawing.Point(0, 34); + this.layoutControlItem23.MinSize = new System.Drawing.Size(74, 18); + this.layoutControlItem23.Name = "layoutControlItem23"; + this.layoutControlItem23.Size = new System.Drawing.Size(100, 36); + this.layoutControlItem23.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem23.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem23.TextVisible = false; + // + // btnCalibration + // + this.btnCalibration.Location = new System.Drawing.Point(829, 160); + this.btnCalibration.Name = "btnCalibration"; + this.btnCalibration.Size = new System.Drawing.Size(56, 22); + this.btnCalibration.StyleController = this.layoutControl1; + this.btnCalibration.TabIndex = 9; + this.btnCalibration.Text = "Calib"; + this.btnCalibration.Click += new System.EventHandler(this.btnCalibration_Click); + // + // btnParam + // + this.btnParam.Location = new System.Drawing.Point(829, 134); + this.btnParam.Name = "btnParam"; + this.btnParam.Size = new System.Drawing.Size(116, 22); + this.btnParam.StyleController = this.layoutControl1; + this.btnParam.TabIndex = 8; + this.btnParam.Text = "Param"; + this.btnParam.Click += new System.EventHandler(this.btnParam_Click); + // + // gbAlarm + // + this.gbAlarm.Appearance.Font = new System.Drawing.Font("Tahoma", 6F); + this.gbAlarm.Appearance.Options.UseFont = true; + this.gbAlarm.Controls.Add(this.layoutControl5); + this.gbAlarm.Location = new System.Drawing.Point(151, 109); + this.gbAlarm.Name = "gbAlarm"; + this.gbAlarm.Size = new System.Drawing.Size(562, 99); + this.gbAlarm.TabIndex = 7; + this.gbAlarm.Text = "Alarm && Fault"; + // + // layoutControl5 + // + this.layoutControl5.Controls.Add(this.ucCvDiff); + this.layoutControl5.Controls.Add(this.ucLowSOC); + this.layoutControl5.Controls.Add(this.ucDchOverCurr); + this.layoutControl5.Controls.Add(this.ucChaOverCurr); + this.layoutControl5.Controls.Add(this.ucUnderVolt); + this.layoutControl5.Controls.Add(this.ucOverVolt); + this.layoutControl5.Controls.Add(this.ucCellUnderVolt); + this.layoutControl5.Controls.Add(this.ucCellOverVolt); + this.layoutControl5.Controls.Add(this.ucLowTemp); + this.layoutControl5.Controls.Add(this.ucHighTemp); + this.layoutControl5.Dock = System.Windows.Forms.DockStyle.Fill; + this.layoutControl5.Location = new System.Drawing.Point(2, 23); + this.layoutControl5.Name = "layoutControl5"; + this.layoutControl5.OptionsCustomizationForm.DesignTimeCustomizationFormPositionAndSize = new System.Drawing.Rectangle(1131, 383, 250, 350); + this.layoutControl5.Root = this.layoutControlGroup5; + this.layoutControl5.Size = new System.Drawing.Size(558, 74); + this.layoutControl5.TabIndex = 0; + this.layoutControl5.Text = "layoutControl5"; + // + // ucCvDiff + // + this.ucCvDiff.Location = new System.Drawing.Point(450, 40); + this.ucCvDiff.MinimumSize = new System.Drawing.Size(0, 27); + this.ucCvDiff.Name = "ucCvDiff"; + this.ucCvDiff.Size = new System.Drawing.Size(106, 32); + this.ucCvDiff.TabIndex = 13; + // + // ucLowSOC + // + this.ucLowSOC.Location = new System.Drawing.Point(450, 2); + this.ucLowSOC.MinimumSize = new System.Drawing.Size(0, 27); + this.ucLowSOC.Name = "ucLowSOC"; + this.ucLowSOC.Size = new System.Drawing.Size(106, 34); + this.ucLowSOC.TabIndex = 12; + // + // ucDchOverCurr + // + this.ucDchOverCurr.Location = new System.Drawing.Point(338, 40); + this.ucDchOverCurr.MinimumSize = new System.Drawing.Size(0, 27); + this.ucDchOverCurr.Name = "ucDchOverCurr"; + this.ucDchOverCurr.Size = new System.Drawing.Size(108, 32); + this.ucDchOverCurr.TabIndex = 11; + // + // ucChaOverCurr + // + this.ucChaOverCurr.Location = new System.Drawing.Point(338, 2); + this.ucChaOverCurr.MinimumSize = new System.Drawing.Size(0, 27); + this.ucChaOverCurr.Name = "ucChaOverCurr"; + this.ucChaOverCurr.Size = new System.Drawing.Size(108, 34); + this.ucChaOverCurr.TabIndex = 10; + // + // ucUnderVolt + // + this.ucUnderVolt.Location = new System.Drawing.Point(114, 40); + this.ucUnderVolt.MinimumSize = new System.Drawing.Size(0, 27); + this.ucUnderVolt.Name = "ucUnderVolt"; + this.ucUnderVolt.Size = new System.Drawing.Size(109, 32); + this.ucUnderVolt.TabIndex = 9; + // + // ucOverVolt + // + this.ucOverVolt.Location = new System.Drawing.Point(114, 2); + this.ucOverVolt.MinimumSize = new System.Drawing.Size(0, 27); + this.ucOverVolt.Name = "ucOverVolt"; + this.ucOverVolt.Size = new System.Drawing.Size(109, 34); + this.ucOverVolt.TabIndex = 8; + // + // ucCellUnderVolt + // + this.ucCellUnderVolt.Location = new System.Drawing.Point(227, 40); + this.ucCellUnderVolt.MinimumSize = new System.Drawing.Size(0, 27); + this.ucCellUnderVolt.Name = "ucCellUnderVolt"; + this.ucCellUnderVolt.Size = new System.Drawing.Size(107, 32); + this.ucCellUnderVolt.TabIndex = 7; + // + // ucCellOverVolt + // + this.ucCellOverVolt.Location = new System.Drawing.Point(227, 2); + this.ucCellOverVolt.MinimumSize = new System.Drawing.Size(0, 27); + this.ucCellOverVolt.Name = "ucCellOverVolt"; + this.ucCellOverVolt.Size = new System.Drawing.Size(107, 34); + this.ucCellOverVolt.TabIndex = 6; + // + // ucLowTemp + // + this.ucLowTemp.Location = new System.Drawing.Point(2, 40); + this.ucLowTemp.MinimumSize = new System.Drawing.Size(0, 27); + this.ucLowTemp.Name = "ucLowTemp"; + this.ucLowTemp.Size = new System.Drawing.Size(108, 32); + this.ucLowTemp.TabIndex = 5; + // + // ucHighTemp + // + this.ucHighTemp.Location = new System.Drawing.Point(2, 2); + this.ucHighTemp.MinimumSize = new System.Drawing.Size(0, 27); + this.ucHighTemp.Name = "ucHighTemp"; + this.ucHighTemp.Size = new System.Drawing.Size(108, 34); + this.ucHighTemp.TabIndex = 4; + // + // layoutControlGroup5 + // + this.layoutControlGroup5.CustomizationFormText = "layoutControlGroup5"; + this.layoutControlGroup5.EnableIndentsWithoutBorders = DevExpress.Utils.DefaultBoolean.True; + this.layoutControlGroup5.GroupBordersVisible = false; + this.layoutControlGroup5.Items.AddRange(new DevExpress.XtraLayout.BaseLayoutItem[] { + this.layoutControlItem9, + this.layoutControlItem10, + this.layoutControlItem11, + this.layoutControlItem12, + this.layoutControlItem13, + this.layoutControlItem14, + this.layoutControlItem15, + this.layoutControlItem16, + this.layoutControlItem17, + this.layoutControlItem18}); + this.layoutControlGroup5.Name = "layoutControlGroup5"; + this.layoutControlGroup5.Padding = new DevExpress.XtraLayout.Utils.Padding(0, 0, 0, 0); + this.layoutControlGroup5.Size = new System.Drawing.Size(558, 74); + this.layoutControlGroup5.TextVisible = false; + // + // layoutControlItem9 + // + this.layoutControlItem9.Control = this.ucHighTemp; + this.layoutControlItem9.CustomizationFormText = "layoutControlItem9"; + this.layoutControlItem9.Location = new System.Drawing.Point(0, 0); + this.layoutControlItem9.MinSize = new System.Drawing.Size(95, 33); + this.layoutControlItem9.Name = "layoutControlItem9"; + this.layoutControlItem9.Size = new System.Drawing.Size(112, 38); + this.layoutControlItem9.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem9.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem9.TextVisible = false; + // + // layoutControlItem10 + // + this.layoutControlItem10.Control = this.ucLowTemp; + this.layoutControlItem10.CustomizationFormText = "layoutControlItem10"; + this.layoutControlItem10.Location = new System.Drawing.Point(0, 38); + this.layoutControlItem10.MinSize = new System.Drawing.Size(24, 31); + this.layoutControlItem10.Name = "layoutControlItem10"; + this.layoutControlItem10.Size = new System.Drawing.Size(112, 36); + this.layoutControlItem10.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem10.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem10.TextVisible = false; + // + // layoutControlItem11 + // + this.layoutControlItem11.Control = this.ucCellOverVolt; + this.layoutControlItem11.CustomizationFormText = "layoutControlItem11"; + this.layoutControlItem11.Location = new System.Drawing.Point(225, 0); + this.layoutControlItem11.MinSize = new System.Drawing.Size(95, 33); + this.layoutControlItem11.Name = "layoutControlItem11"; + this.layoutControlItem11.Size = new System.Drawing.Size(111, 38); + this.layoutControlItem11.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem11.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem11.TextVisible = false; + // + // layoutControlItem12 + // + this.layoutControlItem12.Control = this.ucCellUnderVolt; + this.layoutControlItem12.CustomizationFormText = "layoutControlItem12"; + this.layoutControlItem12.Location = new System.Drawing.Point(225, 38); + this.layoutControlItem12.MinSize = new System.Drawing.Size(24, 31); + this.layoutControlItem12.Name = "layoutControlItem12"; + this.layoutControlItem12.Size = new System.Drawing.Size(111, 36); + this.layoutControlItem12.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem12.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem12.TextVisible = false; + // + // layoutControlItem13 + // + this.layoutControlItem13.Control = this.ucOverVolt; + this.layoutControlItem13.CustomizationFormText = "layoutControlItem13"; + this.layoutControlItem13.Location = new System.Drawing.Point(112, 0); + this.layoutControlItem13.MinSize = new System.Drawing.Size(95, 33); + this.layoutControlItem13.Name = "layoutControlItem13"; + this.layoutControlItem13.Size = new System.Drawing.Size(113, 38); + this.layoutControlItem13.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem13.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem13.TextVisible = false; + // + // layoutControlItem14 + // + this.layoutControlItem14.Control = this.ucUnderVolt; + this.layoutControlItem14.CustomizationFormText = "layoutControlItem14"; + this.layoutControlItem14.Location = new System.Drawing.Point(112, 38); + this.layoutControlItem14.MinSize = new System.Drawing.Size(24, 31); + this.layoutControlItem14.Name = "layoutControlItem14"; + this.layoutControlItem14.Size = new System.Drawing.Size(113, 36); + this.layoutControlItem14.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem14.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem14.TextVisible = false; + // + // layoutControlItem15 + // + this.layoutControlItem15.Control = this.ucChaOverCurr; + this.layoutControlItem15.CustomizationFormText = "layoutControlItem15"; + this.layoutControlItem15.Location = new System.Drawing.Point(336, 0); + this.layoutControlItem15.MinSize = new System.Drawing.Size(95, 33); + this.layoutControlItem15.Name = "layoutControlItem15"; + this.layoutControlItem15.Size = new System.Drawing.Size(112, 38); + this.layoutControlItem15.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem15.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem15.TextVisible = false; + // + // layoutControlItem16 + // + this.layoutControlItem16.Control = this.ucDchOverCurr; + this.layoutControlItem16.CustomizationFormText = "layoutControlItem16"; + this.layoutControlItem16.Location = new System.Drawing.Point(336, 38); + this.layoutControlItem16.MinSize = new System.Drawing.Size(24, 31); + this.layoutControlItem16.Name = "layoutControlItem16"; + this.layoutControlItem16.Size = new System.Drawing.Size(112, 36); + this.layoutControlItem16.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem16.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem16.TextVisible = false; + // + // layoutControlItem17 + // + this.layoutControlItem17.Control = this.ucLowSOC; + this.layoutControlItem17.CustomizationFormText = "layoutControlItem17"; + this.layoutControlItem17.Location = new System.Drawing.Point(448, 0); + this.layoutControlItem17.MinSize = new System.Drawing.Size(95, 33); + this.layoutControlItem17.Name = "layoutControlItem17"; + this.layoutControlItem17.Size = new System.Drawing.Size(110, 38); + this.layoutControlItem17.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem17.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem17.TextVisible = false; + // + // layoutControlItem18 + // + this.layoutControlItem18.Control = this.ucCvDiff; + this.layoutControlItem18.CustomizationFormText = "layoutControlItem18"; + this.layoutControlItem18.Location = new System.Drawing.Point(448, 38); + this.layoutControlItem18.MinSize = new System.Drawing.Size(24, 31); + this.layoutControlItem18.Name = "layoutControlItem18"; + this.layoutControlItem18.Size = new System.Drawing.Size(110, 36); + this.layoutControlItem18.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem18.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem18.TextVisible = false; + // + // gbStatusAlarm + // + this.gbStatusAlarm.Controls.Add(this.layoutControl3); + this.gbStatusAlarm.Location = new System.Drawing.Point(3, 109); + this.gbStatusAlarm.Name = "gbStatusAlarm"; + this.gbStatusAlarm.Size = new System.Drawing.Size(144, 99); + this.gbStatusAlarm.TabIndex = 6; + this.gbStatusAlarm.Text = "Operating Status"; + // + // layoutControl3 + // + this.layoutControl3.Controls.Add(this.panelControl2); + this.layoutControl3.Controls.Add(this.panelControl1); + this.layoutControl3.Dock = System.Windows.Forms.DockStyle.Fill; + this.layoutControl3.Location = new System.Drawing.Point(2, 23); + this.layoutControl3.Name = "layoutControl3"; + this.layoutControl3.OptionsCustomizationForm.DesignTimeCustomizationFormPositionAndSize = new System.Drawing.Rectangle(1163, 334, 540, 350); + this.layoutControl3.Root = this.layoutControlGroup3; + this.layoutControl3.Size = new System.Drawing.Size(140, 74); + this.layoutControl3.TabIndex = 0; + this.layoutControl3.Text = "layoutControl3"; + // + // panelControl2 + // + this.panelControl2.Controls.Add(this.lbAlarm); + this.panelControl2.Location = new System.Drawing.Point(44, 39); + this.panelControl2.Name = "panelControl2"; + this.panelControl2.Size = new System.Drawing.Size(93, 32); + this.panelControl2.TabIndex = 5; + // + // lbAlarm + // + this.lbAlarm.Appearance.Font = new System.Drawing.Font("Tahoma", 11.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0))); + this.lbAlarm.Appearance.Options.UseFont = true; + this.lbAlarm.Appearance.Options.UseTextOptions = true; + this.lbAlarm.Appearance.TextOptions.HAlignment = DevExpress.Utils.HorzAlignment.Center; + this.lbAlarm.AutoSizeMode = DevExpress.XtraEditors.LabelAutoSizeMode.None; + this.lbAlarm.Dock = System.Windows.Forms.DockStyle.Fill; + this.lbAlarm.Location = new System.Drawing.Point(2, 2); + this.lbAlarm.Name = "lbAlarm"; + this.lbAlarm.Size = new System.Drawing.Size(89, 28); + this.lbAlarm.TabIndex = 0; + this.lbAlarm.Text = "Alarm"; + // + // panelControl1 + // + this.panelControl1.Controls.Add(this.lbStatus); + this.panelControl1.Location = new System.Drawing.Point(44, 3); + this.panelControl1.Name = "panelControl1"; + this.panelControl1.Size = new System.Drawing.Size(93, 32); + this.panelControl1.TabIndex = 4; + // + // lbStatus + // + this.lbStatus.Appearance.Font = new System.Drawing.Font("Tahoma", 11.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0))); + this.lbStatus.Appearance.Options.UseFont = true; + this.lbStatus.Appearance.Options.UseTextOptions = true; + this.lbStatus.Appearance.TextOptions.HAlignment = DevExpress.Utils.HorzAlignment.Center; + this.lbStatus.AutoSizeMode = DevExpress.XtraEditors.LabelAutoSizeMode.None; + this.lbStatus.Dock = System.Windows.Forms.DockStyle.Fill; + this.lbStatus.Location = new System.Drawing.Point(2, 2); + this.lbStatus.Name = "lbStatus"; + this.lbStatus.Size = new System.Drawing.Size(89, 28); + this.lbStatus.TabIndex = 0; + this.lbStatus.Text = "Status"; + // + // layoutControlGroup3 + // + this.layoutControlGroup3.CustomizationFormText = "layoutControlGroup3"; + this.layoutControlGroup3.EnableIndentsWithoutBorders = DevExpress.Utils.DefaultBoolean.True; + this.layoutControlGroup3.GroupBordersVisible = false; + this.layoutControlGroup3.Items.AddRange(new DevExpress.XtraLayout.BaseLayoutItem[] { + this.lcitemStatus, + this.lcitemAlarm}); + this.layoutControlGroup3.Name = "Root"; + this.layoutControlGroup3.Padding = new DevExpress.XtraLayout.Utils.Padding(1, 1, 1, 1); + this.layoutControlGroup3.Size = new System.Drawing.Size(140, 74); + this.layoutControlGroup3.TextVisible = false; + // + // lcitemStatus + // + this.lcitemStatus.AppearanceItemCaption.Options.UseTextOptions = true; + this.lcitemStatus.AppearanceItemCaption.TextOptions.HAlignment = DevExpress.Utils.HorzAlignment.Center; + this.lcitemStatus.Control = this.panelControl1; + this.lcitemStatus.CustomizationFormText = "Status"; + this.lcitemStatus.Location = new System.Drawing.Point(0, 0); + this.lcitemStatus.MinSize = new System.Drawing.Size(64, 26); + this.lcitemStatus.Name = "lcitemStatus"; + this.lcitemStatus.Size = new System.Drawing.Size(138, 36); + this.lcitemStatus.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.lcitemStatus.Text = "Status"; + this.lcitemStatus.TextAlignMode = DevExpress.XtraLayout.TextAlignModeItem.CustomSize; + this.lcitemStatus.TextSize = new System.Drawing.Size(40, 14); + this.lcitemStatus.TextToControlDistance = 1; + // + // lcitemAlarm + // + this.lcitemAlarm.AppearanceItemCaption.Options.UseTextOptions = true; + this.lcitemAlarm.AppearanceItemCaption.TextOptions.HAlignment = DevExpress.Utils.HorzAlignment.Center; + this.lcitemAlarm.Control = this.panelControl2; + this.lcitemAlarm.CustomizationFormText = "Alarm"; + this.lcitemAlarm.Location = new System.Drawing.Point(0, 36); + this.lcitemAlarm.MinSize = new System.Drawing.Size(100, 24); + this.lcitemAlarm.Name = "lcitemAlarm"; + this.lcitemAlarm.Size = new System.Drawing.Size(138, 36); + this.lcitemAlarm.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.lcitemAlarm.Text = "Alarm"; + this.lcitemAlarm.TextAlignMode = DevExpress.XtraLayout.TextAlignModeItem.CustomSize; + this.lcitemAlarm.TextSize = new System.Drawing.Size(40, 20); + this.lcitemAlarm.TextToControlDistance = 1; + // + // gbDetail + // + this.gbDetail.AppearanceCaption.Font = new System.Drawing.Font("Tahoma", 8F, System.Drawing.FontStyle.Bold); + this.gbDetail.AppearanceCaption.Options.UseFont = true; + this.gbDetail.Controls.Add(this.layoutControl4); + this.gbDetail.Location = new System.Drawing.Point(3, 212); + this.gbDetail.Name = "gbDetail"; + this.gbDetail.Size = new System.Drawing.Size(942, 357); + this.gbDetail.TabIndex = 5; + this.gbDetail.Text = "Detail Status"; + // + // layoutControl4 + // + this.layoutControl4.Controls.Add(this.TChart); + this.layoutControl4.Controls.Add(this.VChart); + this.layoutControl4.Dock = System.Windows.Forms.DockStyle.Fill; + this.layoutControl4.Location = new System.Drawing.Point(2, 23); + this.layoutControl4.Name = "layoutControl4"; + this.layoutControl4.Root = this.layoutControlGroup4; + this.layoutControl4.Size = new System.Drawing.Size(938, 332); + this.layoutControl4.TabIndex = 0; + this.layoutControl4.Text = "layoutControl4"; + // + // TChart + // + xyDiagram1.AxisX.MinorCount = 1; + xyDiagram1.AxisX.VisibleInPanesSerializable = "-1"; + xyDiagram1.AxisY.VisibleInPanesSerializable = "-1"; + this.TChart.Diagram = xyDiagram1; + this.TChart.Legend.Name = "Default Legend"; + this.TChart.Location = new System.Drawing.Point(667, 3); + this.TChart.Name = "TChart"; + series1.Name = "Series 1"; + series2.Name = "Series 2"; + this.TChart.SeriesSerializable = new DevExpress.XtraCharts.Series[] { + series1, + series2}; + this.TChart.Size = new System.Drawing.Size(268, 326); + this.TChart.TabIndex = 7; + // + // VChart + // + this.VChart.AutoLayout = false; + xyDiagram2.AxisX.GridLines.Visible = true; + xyDiagram2.AxisX.MinorCount = 1; + xyDiagram2.AxisX.NumericScaleOptions.AutoGrid = false; + xyDiagram2.AxisX.NumericScaleOptions.GridSpacing = 10D; + xyDiagram2.AxisX.Tag = ""; + xyDiagram2.AxisX.VisibleInPanesSerializable = "-1"; + xyDiagram2.AxisX.VisualRange.Auto = false; + xyDiagram2.AxisX.VisualRange.MaxValueSerializable = "100"; + xyDiagram2.AxisX.VisualRange.MinValueSerializable = "0"; + xyDiagram2.AxisX.WholeRange.Auto = false; + xyDiagram2.AxisX.WholeRange.MaxValueSerializable = "100"; + xyDiagram2.AxisX.WholeRange.MinValueSerializable = "0"; + xyDiagram2.AxisY.VisibleInPanesSerializable = "-1"; + this.VChart.Diagram = xyDiagram2; + this.VChart.Legend.Name = "Default Legend"; + this.VChart.Location = new System.Drawing.Point(3, 3); + this.VChart.Name = "VChart"; + series3.Name = "Series 1"; + series4.Name = "Series 2"; + this.VChart.SeriesSerializable = new DevExpress.XtraCharts.Series[] { + series3, + series4}; + this.VChart.Size = new System.Drawing.Size(660, 326); + this.VChart.TabIndex = 6; + // + // layoutControlGroup4 + // + this.layoutControlGroup4.CustomizationFormText = "layoutControlGroup4"; + this.layoutControlGroup4.EnableIndentsWithoutBorders = DevExpress.Utils.DefaultBoolean.True; + this.layoutControlGroup4.GroupBordersVisible = false; + this.layoutControlGroup4.Items.AddRange(new DevExpress.XtraLayout.BaseLayoutItem[] { + this.layoutControlItem1, + this.layoutControlItem7}); + this.layoutControlGroup4.Name = "layoutControlGroup4"; + this.layoutControlGroup4.Padding = new DevExpress.XtraLayout.Utils.Padding(1, 1, 1, 1); + this.layoutControlGroup4.Size = new System.Drawing.Size(938, 332); + this.layoutControlGroup4.TextVisible = false; + // + // layoutControlItem1 + // + this.layoutControlItem1.Control = this.VChart; + this.layoutControlItem1.Location = new System.Drawing.Point(0, 0); + this.layoutControlItem1.Name = "layoutControlItem1"; + this.layoutControlItem1.Size = new System.Drawing.Size(664, 330); + this.layoutControlItem1.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem1.TextVisible = false; + // + // layoutControlItem7 + // + this.layoutControlItem7.Control = this.TChart; + this.layoutControlItem7.Location = new System.Drawing.Point(664, 0); + this.layoutControlItem7.Name = "layoutControlItem7"; + this.layoutControlItem7.Size = new System.Drawing.Size(272, 330); + this.layoutControlItem7.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem7.TextVisible = false; + // + // gbValue + // + this.gbValue.Controls.Add(this.layoutControl2); + this.gbValue.Location = new System.Drawing.Point(3, 3); + this.gbValue.Name = "gbValue"; + this.gbValue.Size = new System.Drawing.Size(942, 102); + this.gbValue.TabIndex = 4; + this.gbValue.Text = "Value"; + // + // layoutControl2 + // + this.layoutControl2.Controls.Add(this.gaugeControl5); + this.layoutControl2.Controls.Add(this.gaugeControl4); + this.layoutControl2.Controls.Add(this.gaugeControl3); + this.layoutControl2.Controls.Add(this.gaugeControl2); + this.layoutControl2.Controls.Add(this.gaugeControl1); + this.layoutControl2.Dock = System.Windows.Forms.DockStyle.Fill; + this.layoutControl2.Location = new System.Drawing.Point(2, 23); + this.layoutControl2.Name = "layoutControl2"; + this.layoutControl2.OptionsCustomizationForm.DesignTimeCustomizationFormPositionAndSize = new System.Drawing.Rectangle(1246, 0, 650, 400); + this.layoutControl2.Root = this.layoutControlGroup2; + this.layoutControl2.Size = new System.Drawing.Size(938, 77); + this.layoutControl2.TabIndex = 0; + this.layoutControl2.Text = "layoutControl2"; + // + // gaugeControl5 + // + this.gaugeControl5.Gauges.AddRange(new DevExpress.XtraGauges.Base.IGauge[] { + this.dgDiffTemperature}); + this.gaugeControl5.Location = new System.Drawing.Point(751, 20); + this.gaugeControl5.Name = "gaugeControl5"; + this.gaugeControl5.Size = new System.Drawing.Size(184, 54); + this.gaugeControl5.TabIndex = 8; + // + // dgDiffTemperature + // + this.dgDiffTemperature.AppearanceOff.ContentBrush = new DevExpress.XtraGauges.Core.Drawing.SolidBrushObject("Color:#E3E5EA"); + this.dgDiffTemperature.AppearanceOn.ContentBrush = new DevExpress.XtraGauges.Core.Drawing.SolidBrushObject("Color:#59616F"); + this.dgDiffTemperature.BackgroundLayers.AddRange(new DevExpress.XtraGauges.Win.Gauges.Digital.DigitalBackgroundLayerComponent[] { + this.digitalBackgroundLayerComponent5}); + this.dgDiffTemperature.Bounds = new System.Drawing.Rectangle(6, 6, 172, 42); + this.dgDiffTemperature.DigitCount = 5; + this.dgDiffTemperature.Name = "dgDiffTemperature"; + this.dgDiffTemperature.Padding = new DevExpress.XtraGauges.Core.Base.TextSpacing(26, 20, 26, 20); + this.dgDiffTemperature.Text = "00,000"; + // + // digitalBackgroundLayerComponent5 + // + this.digitalBackgroundLayerComponent5.BottomRight = new DevExpress.XtraGauges.Core.Base.PointF2D(265.8125F, 99.9625F); + this.digitalBackgroundLayerComponent5.Name = "digitalBackgroundLayerComponent1"; + this.digitalBackgroundLayerComponent5.ShapeType = DevExpress.XtraGauges.Core.Model.DigitalBackgroundShapeSetType.Style18; + this.digitalBackgroundLayerComponent5.TopLeft = new DevExpress.XtraGauges.Core.Base.PointF2D(26F, 0F); + this.digitalBackgroundLayerComponent5.ZOrder = 1000; + // + // gaugeControl4 + // + this.gaugeControl4.Gauges.AddRange(new DevExpress.XtraGauges.Base.IGauge[] { + this.dgAvgTemperature}); + this.gaugeControl4.Location = new System.Drawing.Point(564, 20); + this.gaugeControl4.Name = "gaugeControl4"; + this.gaugeControl4.Size = new System.Drawing.Size(183, 54); + this.gaugeControl4.TabIndex = 7; + // + // dgAvgTemperature + // + this.dgAvgTemperature.AppearanceOff.ContentBrush = new DevExpress.XtraGauges.Core.Drawing.SolidBrushObject("Color:#E3E5EA"); + this.dgAvgTemperature.AppearanceOn.ContentBrush = new DevExpress.XtraGauges.Core.Drawing.SolidBrushObject("Color:#59616F"); + this.dgAvgTemperature.BackgroundLayers.AddRange(new DevExpress.XtraGauges.Win.Gauges.Digital.DigitalBackgroundLayerComponent[] { + this.digitalBackgroundLayerComponent4}); + this.dgAvgTemperature.Bounds = new System.Drawing.Rectangle(6, 6, 171, 42); + this.dgAvgTemperature.DigitCount = 5; + this.dgAvgTemperature.Name = "dgAvgTemperature"; + this.dgAvgTemperature.Padding = new DevExpress.XtraGauges.Core.Base.TextSpacing(26, 20, 26, 20); + this.dgAvgTemperature.Text = "00,000"; + // + // digitalBackgroundLayerComponent4 + // + this.digitalBackgroundLayerComponent4.BottomRight = new DevExpress.XtraGauges.Core.Base.PointF2D(265.8125F, 99.9625F); + this.digitalBackgroundLayerComponent4.Name = "digitalBackgroundLayerComponent1"; + this.digitalBackgroundLayerComponent4.ShapeType = DevExpress.XtraGauges.Core.Model.DigitalBackgroundShapeSetType.Style18; + this.digitalBackgroundLayerComponent4.TopLeft = new DevExpress.XtraGauges.Core.Base.PointF2D(26F, 0F); + this.digitalBackgroundLayerComponent4.ZOrder = 1000; + // + // gaugeControl3 + // + this.gaugeControl3.Gauges.AddRange(new DevExpress.XtraGauges.Base.IGauge[] { + this.dgDiffCellVoltage}); + this.gaugeControl3.Location = new System.Drawing.Point(377, 20); + this.gaugeControl3.Name = "gaugeControl3"; + this.gaugeControl3.Size = new System.Drawing.Size(183, 54); + this.gaugeControl3.TabIndex = 6; + // + // dgDiffCellVoltage + // + this.dgDiffCellVoltage.AppearanceOff.ContentBrush = new DevExpress.XtraGauges.Core.Drawing.SolidBrushObject("Color:#E3E5EA"); + this.dgDiffCellVoltage.AppearanceOn.ContentBrush = new DevExpress.XtraGauges.Core.Drawing.SolidBrushObject("Color:#59616F"); + this.dgDiffCellVoltage.BackgroundLayers.AddRange(new DevExpress.XtraGauges.Win.Gauges.Digital.DigitalBackgroundLayerComponent[] { + this.digitalBackgroundLayerComponent3}); + this.dgDiffCellVoltage.Bounds = new System.Drawing.Rectangle(6, 6, 171, 42); + this.dgDiffCellVoltage.DigitCount = 5; + this.dgDiffCellVoltage.Name = "dgDiffCellVoltage"; + this.dgDiffCellVoltage.Padding = new DevExpress.XtraGauges.Core.Base.TextSpacing(26, 20, 26, 20); + this.dgDiffCellVoltage.Text = "00,000"; + // + // digitalBackgroundLayerComponent3 + // + this.digitalBackgroundLayerComponent3.BottomRight = new DevExpress.XtraGauges.Core.Base.PointF2D(265.8125F, 99.9625F); + this.digitalBackgroundLayerComponent3.Name = "digitalBackgroundLayerComponent1"; + this.digitalBackgroundLayerComponent3.ShapeType = DevExpress.XtraGauges.Core.Model.DigitalBackgroundShapeSetType.Style18; + this.digitalBackgroundLayerComponent3.TopLeft = new DevExpress.XtraGauges.Core.Base.PointF2D(26F, 0F); + this.digitalBackgroundLayerComponent3.ZOrder = 1000; + // + // gaugeControl2 + // + this.gaugeControl2.Gauges.AddRange(new DevExpress.XtraGauges.Base.IGauge[] { + this.dgAvgCellVoltage}); + this.gaugeControl2.Location = new System.Drawing.Point(190, 20); + this.gaugeControl2.Name = "gaugeControl2"; + this.gaugeControl2.Size = new System.Drawing.Size(183, 54); + this.gaugeControl2.TabIndex = 5; + // + // dgAvgCellVoltage + // + this.dgAvgCellVoltage.AppearanceOff.ContentBrush = new DevExpress.XtraGauges.Core.Drawing.SolidBrushObject("Color:#E3E5EA"); + this.dgAvgCellVoltage.AppearanceOn.ContentBrush = new DevExpress.XtraGauges.Core.Drawing.SolidBrushObject("Color:#59616F"); + this.dgAvgCellVoltage.BackgroundLayers.AddRange(new DevExpress.XtraGauges.Win.Gauges.Digital.DigitalBackgroundLayerComponent[] { + this.digitalBackgroundLayerComponent2}); + this.dgAvgCellVoltage.Bounds = new System.Drawing.Rectangle(6, 6, 171, 42); + this.dgAvgCellVoltage.DigitCount = 5; + this.dgAvgCellVoltage.Name = "dgAvgCellVoltage"; + this.dgAvgCellVoltage.Padding = new DevExpress.XtraGauges.Core.Base.TextSpacing(26, 20, 26, 20); + this.dgAvgCellVoltage.Text = "00,000"; + // + // digitalBackgroundLayerComponent2 + // + this.digitalBackgroundLayerComponent2.BottomRight = new DevExpress.XtraGauges.Core.Base.PointF2D(265.8125F, 99.9625F); + this.digitalBackgroundLayerComponent2.Name = "digitalBackgroundLayerComponent1"; + this.digitalBackgroundLayerComponent2.ShapeType = DevExpress.XtraGauges.Core.Model.DigitalBackgroundShapeSetType.Style18; + this.digitalBackgroundLayerComponent2.TopLeft = new DevExpress.XtraGauges.Core.Base.PointF2D(26F, 0F); + this.digitalBackgroundLayerComponent2.ZOrder = 1000; + // + // gaugeControl1 + // + this.gaugeControl1.Gauges.AddRange(new DevExpress.XtraGauges.Base.IGauge[] { + this.dgVoltage}); + this.gaugeControl1.Location = new System.Drawing.Point(3, 20); + this.gaugeControl1.Name = "gaugeControl1"; + this.gaugeControl1.Size = new System.Drawing.Size(183, 54); + this.gaugeControl1.TabIndex = 4; + // + // dgVoltage + // + this.dgVoltage.AppearanceOff.ContentBrush = new DevExpress.XtraGauges.Core.Drawing.SolidBrushObject("Color:#E3E5EA"); + this.dgVoltage.AppearanceOn.ContentBrush = new DevExpress.XtraGauges.Core.Drawing.SolidBrushObject("Color:#59616F"); + this.dgVoltage.BackgroundLayers.AddRange(new DevExpress.XtraGauges.Win.Gauges.Digital.DigitalBackgroundLayerComponent[] { + this.digitalBackgroundLayerComponent1}); + this.dgVoltage.Bounds = new System.Drawing.Rectangle(6, 6, 171, 42); + this.dgVoltage.DigitCount = 5; + this.dgVoltage.Name = "dgVoltage"; + this.dgVoltage.Padding = new DevExpress.XtraGauges.Core.Base.TextSpacing(26, 20, 26, 20); + this.dgVoltage.Text = "00,000"; + // + // digitalBackgroundLayerComponent1 + // + this.digitalBackgroundLayerComponent1.BottomRight = new DevExpress.XtraGauges.Core.Base.PointF2D(265.8125F, 99.9625F); + this.digitalBackgroundLayerComponent1.Name = "digitalBackgroundLayerComponent1"; + this.digitalBackgroundLayerComponent1.ShapeType = DevExpress.XtraGauges.Core.Model.DigitalBackgroundShapeSetType.Style18; + this.digitalBackgroundLayerComponent1.TopLeft = new DevExpress.XtraGauges.Core.Base.PointF2D(26F, 0F); + this.digitalBackgroundLayerComponent1.ZOrder = 1000; + // + // layoutControlGroup2 + // + this.layoutControlGroup2.CustomizationFormText = "layoutControlGroup2"; + this.layoutControlGroup2.EnableIndentsWithoutBorders = DevExpress.Utils.DefaultBoolean.True; + this.layoutControlGroup2.GroupBordersVisible = false; + this.layoutControlGroup2.Items.AddRange(new DevExpress.XtraLayout.BaseLayoutItem[] { + this.layoutControlItem3, + this.layoutControlItem4, + this.layoutControlItem5, + this.layoutControlItem6, + this.layoutControlItem24}); + this.layoutControlGroup2.Name = "Root"; + this.layoutControlGroup2.Padding = new DevExpress.XtraLayout.Utils.Padding(1, 1, 1, 1); + this.layoutControlGroup2.Size = new System.Drawing.Size(938, 77); + this.layoutControlGroup2.TextVisible = false; + // + // layoutControlItem3 + // + this.layoutControlItem3.Control = this.gaugeControl1; + this.layoutControlItem3.CustomizationFormText = " Voltage"; + this.layoutControlItem3.Location = new System.Drawing.Point(0, 0); + this.layoutControlItem3.MinSize = new System.Drawing.Size(104, 41); + this.layoutControlItem3.Name = "layoutControlItem3"; + this.layoutControlItem3.Size = new System.Drawing.Size(187, 75); + this.layoutControlItem3.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem3.Text = " Voltage"; + this.layoutControlItem3.TextLocation = DevExpress.Utils.Locations.Top; + this.layoutControlItem3.TextSize = new System.Drawing.Size(128, 14); + // + // layoutControlItem4 + // + this.layoutControlItem4.Control = this.gaugeControl2; + this.layoutControlItem4.CustomizationFormText = " Average Cell Voltage"; + this.layoutControlItem4.Location = new System.Drawing.Point(187, 0); + this.layoutControlItem4.MinSize = new System.Drawing.Size(104, 41); + this.layoutControlItem4.Name = "layoutControlItem4"; + this.layoutControlItem4.Size = new System.Drawing.Size(187, 75); + this.layoutControlItem4.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem4.Text = " Average Cell Voltage"; + this.layoutControlItem4.TextLocation = DevExpress.Utils.Locations.Top; + this.layoutControlItem4.TextSize = new System.Drawing.Size(128, 14); + // + // layoutControlItem5 + // + this.layoutControlItem5.Control = this.gaugeControl3; + this.layoutControlItem5.CustomizationFormText = " Different Cell Voltage"; + this.layoutControlItem5.Location = new System.Drawing.Point(374, 0); + this.layoutControlItem5.MinSize = new System.Drawing.Size(104, 41); + this.layoutControlItem5.Name = "layoutControlItem5"; + this.layoutControlItem5.Size = new System.Drawing.Size(187, 75); + this.layoutControlItem5.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem5.Text = " Different Cell Voltage"; + this.layoutControlItem5.TextLocation = DevExpress.Utils.Locations.Top; + this.layoutControlItem5.TextSize = new System.Drawing.Size(128, 14); + // + // layoutControlItem6 + // + this.layoutControlItem6.Control = this.gaugeControl4; + this.layoutControlItem6.CustomizationFormText = " Temperature"; + this.layoutControlItem6.Location = new System.Drawing.Point(561, 0); + this.layoutControlItem6.MinSize = new System.Drawing.Size(104, 41); + this.layoutControlItem6.Name = "layoutControlItem6"; + this.layoutControlItem6.Size = new System.Drawing.Size(187, 75); + this.layoutControlItem6.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem6.Text = " Average Temperature"; + this.layoutControlItem6.TextLocation = DevExpress.Utils.Locations.Top; + this.layoutControlItem6.TextSize = new System.Drawing.Size(128, 14); + // + // layoutControlItem24 + // + this.layoutControlItem24.Control = this.gaugeControl5; + this.layoutControlItem24.CustomizationFormText = " Different Temperature"; + this.layoutControlItem24.Location = new System.Drawing.Point(748, 0); + this.layoutControlItem24.Name = "layoutControlItem24"; + this.layoutControlItem24.Size = new System.Drawing.Size(188, 75); + this.layoutControlItem24.Text = " Different Temperature"; + this.layoutControlItem24.TextLocation = DevExpress.Utils.Locations.Top; + this.layoutControlItem24.TextSize = new System.Drawing.Size(128, 14); + // + // layoutControlGroup1 + // + this.layoutControlGroup1.CustomizationFormText = "layoutControlGroup1"; + this.layoutControlGroup1.EnableIndentsWithoutBorders = DevExpress.Utils.DefaultBoolean.True; + this.layoutControlGroup1.GroupBordersVisible = false; + this.layoutControlGroup1.Items.AddRange(new DevExpress.XtraLayout.BaseLayoutItem[] { + this.lcitemValue, + this.layoutControlItem2, + this.layoutControlItem8, + this.icitemStatusAlarm, + this.layoutControlItem19, + this.lbHeatbeat, + this.layoutControlItem20, + this.layoutControlItem21, + this.layoutControlItem25, + this.layoutControlItem26, + this.layoutControlItem27}); + this.layoutControlGroup1.Name = "Root"; + this.layoutControlGroup1.Padding = new DevExpress.XtraLayout.Utils.Padding(1, 1, 1, 1); + this.layoutControlGroup1.Size = new System.Drawing.Size(948, 572); + this.layoutControlGroup1.TextVisible = false; + // + // lcitemValue + // + this.lcitemValue.Control = this.gbValue; + this.lcitemValue.CustomizationFormText = "lcitemValue"; + this.lcitemValue.Location = new System.Drawing.Point(0, 0); + this.lcitemValue.MaxSize = new System.Drawing.Size(0, 106); + this.lcitemValue.MinSize = new System.Drawing.Size(104, 106); + this.lcitemValue.Name = "lcitemValue"; + this.lcitemValue.Size = new System.Drawing.Size(946, 106); + this.lcitemValue.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.lcitemValue.TextSize = new System.Drawing.Size(0, 0); + this.lcitemValue.TextVisible = false; + // + // layoutControlItem2 + // + this.layoutControlItem2.Control = this.gbDetail; + this.layoutControlItem2.CustomizationFormText = "layoutControlItem2"; + this.layoutControlItem2.Location = new System.Drawing.Point(0, 209); + this.layoutControlItem2.MinSize = new System.Drawing.Size(104, 24); + this.layoutControlItem2.Name = "layoutControlItem2"; + this.layoutControlItem2.Size = new System.Drawing.Size(946, 361); + this.layoutControlItem2.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem2.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem2.TextVisible = false; + // + // layoutControlItem8 + // + this.layoutControlItem8.Control = this.gbAlarm; + this.layoutControlItem8.CustomizationFormText = "layoutControlItem8"; + this.layoutControlItem8.Location = new System.Drawing.Point(148, 106); + this.layoutControlItem8.MaxSize = new System.Drawing.Size(0, 103); + this.layoutControlItem8.MinSize = new System.Drawing.Size(483, 103); + this.layoutControlItem8.Name = "layoutControlItem8"; + this.layoutControlItem8.Size = new System.Drawing.Size(566, 103); + this.layoutControlItem8.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem8.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem8.TextVisible = false; + // + // icitemStatusAlarm + // + this.icitemStatusAlarm.Control = this.gbStatusAlarm; + this.icitemStatusAlarm.CustomizationFormText = "icitemStatusAlarm"; + this.icitemStatusAlarm.Location = new System.Drawing.Point(0, 106); + this.icitemStatusAlarm.MinSize = new System.Drawing.Size(104, 24); + this.icitemStatusAlarm.Name = "icitemStatusAlarm"; + this.icitemStatusAlarm.Size = new System.Drawing.Size(148, 103); + this.icitemStatusAlarm.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.icitemStatusAlarm.TextSize = new System.Drawing.Size(0, 0); + this.icitemStatusAlarm.TextVisible = false; + // + // layoutControlItem19 + // + this.layoutControlItem19.Control = this.btnParam; + this.layoutControlItem19.CustomizationFormText = "layoutControlItem19"; + this.layoutControlItem19.Location = new System.Drawing.Point(826, 131); + this.layoutControlItem19.MinSize = new System.Drawing.Size(44, 26); + this.layoutControlItem19.Name = "layoutControlItem19"; + this.layoutControlItem19.Size = new System.Drawing.Size(120, 26); + this.layoutControlItem19.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem19.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem19.TextVisible = false; + // + // lbHeatbeat + // + this.lbHeatbeat.AllowHotTrack = false; + this.lbHeatbeat.AppearanceItemCaption.Font = new System.Drawing.Font("Tahoma", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0))); + this.lbHeatbeat.AppearanceItemCaption.Options.UseFont = true; + this.lbHeatbeat.AppearanceItemCaption.Options.UseTextOptions = true; + this.lbHeatbeat.AppearanceItemCaption.TextOptions.HAlignment = DevExpress.Utils.HorzAlignment.Center; + this.lbHeatbeat.CustomizationFormText = "HB"; + this.lbHeatbeat.Location = new System.Drawing.Point(826, 106); + this.lbHeatbeat.MinSize = new System.Drawing.Size(21, 18); + this.lbHeatbeat.Name = "lbHeatbeat"; + this.lbHeatbeat.Size = new System.Drawing.Size(120, 25); + this.lbHeatbeat.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.lbHeatbeat.Text = "HB"; + this.lbHeatbeat.TextSize = new System.Drawing.Size(17, 14); + // + // layoutControlItem20 + // + this.layoutControlItem20.Control = this.btnCalibration; + this.layoutControlItem20.CustomizationFormText = "layoutControlItem20"; + this.layoutControlItem20.Location = new System.Drawing.Point(826, 157); + this.layoutControlItem20.MinSize = new System.Drawing.Size(35, 26); + this.layoutControlItem20.Name = "layoutControlItem20"; + this.layoutControlItem20.Size = new System.Drawing.Size(60, 26); + this.layoutControlItem20.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem20.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem20.TextVisible = false; + // + // layoutControlItem21 + // + this.layoutControlItem21.Control = this.gbEtc; + this.layoutControlItem21.CustomizationFormText = "layoutControlItem21"; + this.layoutControlItem21.Location = new System.Drawing.Point(714, 106); + this.layoutControlItem21.Name = "layoutControlItem21"; + this.layoutControlItem21.Size = new System.Drawing.Size(112, 103); + this.layoutControlItem21.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem21.TextVisible = false; + // + // layoutControlItem25 + // + this.layoutControlItem25.Control = this.btnINV; + this.layoutControlItem25.Location = new System.Drawing.Point(826, 183); + this.layoutControlItem25.MinSize = new System.Drawing.Size(60, 26); + this.layoutControlItem25.Name = "layoutControlItem25"; + this.layoutControlItem25.Size = new System.Drawing.Size(60, 26); + this.layoutControlItem25.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem25.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem25.TextVisible = false; + // + // layoutControlItem26 + // + this.layoutControlItem26.Control = this.btnINV2; + this.layoutControlItem26.Location = new System.Drawing.Point(886, 183); + this.layoutControlItem26.MinSize = new System.Drawing.Size(60, 26); + this.layoutControlItem26.Name = "layoutControlItem26"; + this.layoutControlItem26.Size = new System.Drawing.Size(60, 26); + this.layoutControlItem26.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem26.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem26.TextVisible = false; + // + // layoutControlItem27 + // + this.layoutControlItem27.Control = this.BtnCbTest; + this.layoutControlItem27.Location = new System.Drawing.Point(886, 157); + this.layoutControlItem27.MinSize = new System.Drawing.Size(60, 26); + this.layoutControlItem27.Name = "layoutControlItem27"; + this.layoutControlItem27.Size = new System.Drawing.Size(60, 26); + this.layoutControlItem27.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem27.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem27.TextVisible = false; + // + // tmrDisplay + // + this.tmrDisplay.Interval = 500; + this.tmrDisplay.Tick += new System.EventHandler(this.tmrDisplay_Tick); + // + // ucShelfStatus + // + this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 14F); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.Controls.Add(this.layoutControl1); + this.Name = "ucShelfStatus"; + this.Size = new System.Drawing.Size(948, 572); + ((System.ComponentModel.ISupportInitialize)(this.layoutControl1)).EndInit(); + this.layoutControl1.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.gbEtc)).EndInit(); + this.gbEtc.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.layoutControl6)).EndInit(); + this.layoutControl6.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup6)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem22)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem23)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.gbAlarm)).EndInit(); + this.gbAlarm.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.layoutControl5)).EndInit(); + this.layoutControl5.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup5)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem9)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem10)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem11)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem12)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem13)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem14)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem15)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem16)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem17)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem18)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.gbStatusAlarm)).EndInit(); + this.gbStatusAlarm.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.layoutControl3)).EndInit(); + this.layoutControl3.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.panelControl2)).EndInit(); + this.panelControl2.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.panelControl1)).EndInit(); + this.panelControl1.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup3)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.lcitemStatus)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.lcitemAlarm)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.gbDetail)).EndInit(); + this.gbDetail.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.layoutControl4)).EndInit(); + this.layoutControl4.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(xyDiagram1)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(series1)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(series2)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.TChart)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(xyDiagram2)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(series3)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(series4)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.VChart)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup4)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem1)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem7)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.gbValue)).EndInit(); + this.gbValue.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.layoutControl2)).EndInit(); + this.layoutControl2.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.dgDiffTemperature)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.digitalBackgroundLayerComponent5)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.dgAvgTemperature)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.digitalBackgroundLayerComponent4)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.dgDiffCellVoltage)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.digitalBackgroundLayerComponent3)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.dgAvgCellVoltage)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.digitalBackgroundLayerComponent2)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.dgVoltage)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.digitalBackgroundLayerComponent1)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup2)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem3)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem4)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem5)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem6)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem24)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup1)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.lcitemValue)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem2)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem8)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.icitemStatusAlarm)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem19)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.lbHeatbeat)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem20)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem21)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem25)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem26)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem27)).EndInit(); + this.ResumeLayout(false); + + } + + #endregion + + private DevExpress.XtraLayout.LayoutControl layoutControl1; + private DevExpress.XtraLayout.LayoutControlGroup layoutControlGroup1; + private DevExpress.XtraEditors.GroupControl gbDetail; + private DevExpress.XtraEditors.GroupControl gbValue; + private DevExpress.XtraLayout.LayoutControlItem lcitemValue; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem2; + private DevExpress.XtraLayout.LayoutControl layoutControl2; + private DevExpress.XtraLayout.LayoutControlGroup layoutControlGroup2; + private DevExpress.XtraGauges.Win.GaugeControl gaugeControl4; + private DevExpress.XtraGauges.Win.Gauges.Digital.DigitalGauge dgAvgTemperature; + private DevExpress.XtraGauges.Win.Gauges.Digital.DigitalBackgroundLayerComponent digitalBackgroundLayerComponent4; + private DevExpress.XtraGauges.Win.GaugeControl gaugeControl3; + private DevExpress.XtraGauges.Win.Gauges.Digital.DigitalGauge dgDiffCellVoltage; + private DevExpress.XtraGauges.Win.Gauges.Digital.DigitalBackgroundLayerComponent digitalBackgroundLayerComponent3; + private DevExpress.XtraGauges.Win.GaugeControl gaugeControl2; + private DevExpress.XtraGauges.Win.Gauges.Digital.DigitalGauge dgAvgCellVoltage; + private DevExpress.XtraGauges.Win.Gauges.Digital.DigitalBackgroundLayerComponent digitalBackgroundLayerComponent2; + private DevExpress.XtraGauges.Win.GaugeControl gaugeControl1; + private DevExpress.XtraGauges.Win.Gauges.Digital.DigitalGauge dgVoltage; + private DevExpress.XtraGauges.Win.Gauges.Digital.DigitalBackgroundLayerComponent digitalBackgroundLayerComponent1; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem3; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem4; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem5; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem6; + private DevExpress.XtraEditors.GroupControl gbStatusAlarm; + private DevExpress.XtraLayout.LayoutControlItem icitemStatusAlarm; + private DevExpress.XtraLayout.LayoutControl layoutControl3; + private DevExpress.XtraLayout.LayoutControlGroup layoutControlGroup3; + private DevExpress.XtraEditors.PanelControl panelControl2; + private DevExpress.XtraEditors.PanelControl panelControl1; + private DevExpress.XtraLayout.LayoutControlItem lcitemStatus; + private DevExpress.XtraLayout.LayoutControlItem lcitemAlarm; + private DevExpress.XtraEditors.LabelControl lbStatus; + private DevExpress.XtraEditors.LabelControl lbAlarm; + private DevExpress.XtraLayout.LayoutControl layoutControl4; + private DevExpress.XtraLayout.LayoutControlGroup layoutControlGroup4; + private System.Windows.Forms.Timer tmrDisplay; + private DevExpress.XtraEditors.GroupControl gbAlarm; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem8; + private DevExpress.XtraLayout.LayoutControl layoutControl5; + private DevExpress.XtraLayout.LayoutControlGroup layoutControlGroup5; + private ucStatus ucCellUnderVolt; + private ucStatus ucCellOverVolt; + private ucStatus ucLowTemp; + private ucStatus ucHighTemp; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem9; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem10; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem11; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem12; + private ucStatus ucCvDiff; + private ucStatus ucLowSOC; + private ucStatus ucDchOverCurr; + private ucStatus ucChaOverCurr; + private ucStatus ucUnderVolt; + private ucStatus ucOverVolt; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem13; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem14; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem15; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem16; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem17; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem18; + private DevExpress.XtraEditors.SimpleButton btnParam; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem19; + private DevExpress.XtraLayout.SimpleLabelItem lbHeatbeat; + private DevExpress.XtraEditors.SimpleButton btnCalibration; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem20; + private DevExpress.XtraEditors.GroupControl gbEtc; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem21; + private DevExpress.XtraLayout.LayoutControl layoutControl6; + private DevExpress.XtraLayout.LayoutControlGroup layoutControlGroup6; + private DevExpress.XtraEditors.LabelControl lbAllBuffTime; + private DevExpress.XtraEditors.LabelControl lbOneBuffTime; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem22; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem23; + private DevExpress.XtraGauges.Win.GaugeControl gaugeControl5; + private DevExpress.XtraGauges.Win.Gauges.Digital.DigitalGauge dgDiffTemperature; + private DevExpress.XtraGauges.Win.Gauges.Digital.DigitalBackgroundLayerComponent digitalBackgroundLayerComponent5; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem24; + private DevExpress.XtraCharts.ChartControl VChart; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem1; + private DevExpress.XtraCharts.ChartControl TChart; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem7; + private DevExpress.XtraEditors.SimpleButton btnINV; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem25; + private DevExpress.XtraEditors.SimpleButton btnINV2; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem26; + private DevExpress.XtraEditors.SimpleButton BtnCbTest; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem27; + } +} diff --git a/LFP_Manager_PRM/Controls/ucShelfStatus.cs b/LFP_Manager_PRM/Controls/ucShelfStatus.cs new file mode 100644 index 0000000..21bcf82 --- /dev/null +++ b/LFP_Manager_PRM/Controls/ucShelfStatus.cs @@ -0,0 +1,1228 @@ +using System; +using System.Drawing; +using System.Data; +using System.Windows.Forms; +using DevExpress.XtraCharts; + +using LFP_Manager.Forms; +using LFP_Manager.DataStructure; +using LFP_Manager.Utils; +using System.Threading; +using System.Text; + +namespace LFP_Manager.Controls +{ + public delegate void paramCommand(int sId, int mode, int flag, ref DeviceParamData aParam, ref DeviceCalibration aCalib); + public delegate void MsgPrint(object sender, string msg); + + public partial class ucShelfStatus : DevExpress.XtraEditors.XtraUserControl + { + #region VARIABLES + const int STATUS_QTY = 10; + + int SystemId = 0; + bool start = false; + + int CellDivUnit = csConstData.Unit.CELL_DIV_P3; + string CellDisUnit = csConstData.Unit.CELL_DIS_P4; + + CommConfig Config; + + DeviceSystemData SystemData; + + DataTable[] dtVolt; + DataTable[] dtTemp; + Series[] seriesVolt; + Series[] seriesTemp; + + ucStatus[] alarmTrip; + + Palette paletteV; + Palette paletteT; + + public event paramCommand OnCommand = null; + public event MsgPrint OnMsgPrint = null; + #endregion + + #region CONSTRUCTORS + public ucShelfStatus() + { + InitializeComponent(); + + btnParam.Enabled = false; + btnCalibration.Enabled = false; + btnINV.Enabled = false; + + gaugeControl1.BackColor = Control.DefaultBackColor; + gaugeControl2.BackColor = Control.DefaultBackColor; + gaugeControl3.BackColor = Control.DefaultBackColor; + gaugeControl4.BackColor = Control.DefaultBackColor; + gaugeControl5.BackColor = Control.DefaultBackColor; + + gaugeControl1.BorderStyle = DevExpress.XtraEditors.Controls.BorderStyles.NoBorder; + gaugeControl2.BorderStyle = DevExpress.XtraEditors.Controls.BorderStyles.NoBorder; + gaugeControl3.BorderStyle = DevExpress.XtraEditors.Controls.BorderStyles.NoBorder; + gaugeControl4.BorderStyle = DevExpress.XtraEditors.Controls.BorderStyles.NoBorder; + gaugeControl5.BorderStyle = DevExpress.XtraEditors.Controls.BorderStyles.NoBorder; + + gaugeControl1.LayoutPadding = new DevExpress.XtraGauges.Core.Base.Thickness(2, 2, 2, 2); + gaugeControl2.LayoutPadding = new DevExpress.XtraGauges.Core.Base.Thickness(2, 2, 2, 2); + gaugeControl3.LayoutPadding = new DevExpress.XtraGauges.Core.Base.Thickness(2, 2, 2, 2); + gaugeControl4.LayoutPadding = new DevExpress.XtraGauges.Core.Base.Thickness(2, 2, 2, 2); + gaugeControl5.LayoutPadding = new DevExpress.XtraGauges.Core.Base.Thickness(2, 2, 2, 2); + } + #endregion + + #region PUBLIC FUNCTIONS + public void UpdateSystemId(int sId) + { + SystemId = sId; + + switch (Config.TargetModelIndex) + { + case 0: // PR-57150 + SystemData.cellQty = 18; + SystemData.tempQty = 6; + break; + case 1: // PR-64150 + SystemData.cellQty = 20; + SystemData.tempQty = 8; + break; + case 2: // LFPM-57080 + SystemData.cellQty = 18; + SystemData.tempQty = 6; + break; + case 3: // PR-102150 + SystemData.cellQty = 32; + SystemData.tempQty = 8; + break; + case 4: // PR-115300 + SystemData.cellQty = 36; + SystemData.tempQty = 16; + break; + case 5: // PR-67150 + SystemData.cellQty = 21; + SystemData.tempQty = 8; + break; + default: + SystemData.cellQty = 18; + SystemData.tempQty = 6; + break; + } + } + + public void Start(int sId, ref CommConfig aConfig, ref DeviceSystemData aSystemData) + { + SystemId = sId; + Config = aConfig; + SystemData = aSystemData; + + switch (Config.TargetModelIndex) + { + case 0: // PR-57150 + CellDivUnit = csConstData.Unit.CELL_DIV_P3; + CellDisUnit = csConstData.Unit.CELL_DIS_P3; + break; + case 1: // PR-64150 + CellDivUnit = csConstData.Unit.CELL_DIV_P4; + CellDisUnit = csConstData.Unit.CELL_DIS_P4; + break; + case 2: // LFPM-57080 + CellDivUnit = csConstData.Unit.CELL_DIV_P4; + CellDisUnit = csConstData.Unit.CELL_DIS_P4; + break; + case 3: // PR-102150 + CellDivUnit = csConstData.Unit.CELL_DIV_P4; + CellDisUnit = csConstData.Unit.CELL_DIS_P4; + break; + case 4: // PR-115300 + CellDivUnit = csConstData.Unit.CELL_DIV_P4; + CellDisUnit = csConstData.Unit.CELL_DIS_P4; + break; + case 5: // PR-67150 + CellDivUnit = csConstData.Unit.CELL_DIV_P4; + CellDisUnit = csConstData.Unit.CELL_DIS_P4; + break; + default: + CellDivUnit = csConstData.Unit.CELL_DIV_P3; + CellDisUnit = csConstData.Unit.CELL_DIS_P3; + break; + } + + InitStatusName(); + InitDataTableVolt(); + InitDataTableTemp(); + VSeriesInit(); + tSeriesInit(); + + tmrDisplay.Start(); + + btnParam.Enabled = true; + btnCalibration.Enabled = true; + btnINV.Enabled = true; + + start = true; + } + + public void Stop() + { + start = false; + tmrDisplay.Stop(); + } + + public void SystemIdSet(int sId) + { + SystemId = sId; + } + + public void UpdateData(ref DeviceSystemData aSystemData) + { + SystemData = aSystemData; + } + #endregion + + #region INIT_COMPONENT + + private void InitStatusName() + { + ucHighTemp.SetName("High Temp"); + //ucHighTemp.SetTextWidth(80); + ucLowTemp.SetName("Low Temp"); + //ucLowTemp.SetTextWidth(80); + ucOverVolt.SetName("System OV"); + //ucOverVolt.SetTextWidth(80); + ucUnderVolt.SetName("System UV"); + //ucUnderVolt.SetTextWidth(80); + ucCellOverVolt.SetName("Cell OV"); + //ucOverVolt.SetTextWidth(80); + ucCellUnderVolt.SetName("Cell UV"); + //ucUnderVolt.SetTextWidth(80); + ucChaOverCurr.SetName("Cha OC"); + //ucChaOverCurr.SetTextWidth(110); + ucDchOverCurr.SetName("Dch OC"); + //ucDchOverCurr.SetTextWidth(110); + ucLowSOC.SetName("Low SOC"); + //ucLowSOC.SetTextWidth(80); + ucCvDiff.SetName("Cell Voltage Dev"); + //ucMdComm.SetTextWidth(80); + + alarmTrip = new ucStatus[STATUS_QTY]; + + alarmTrip[0] = ucOverVolt; + alarmTrip[1] = ucCellOverVolt; + alarmTrip[2] = ucUnderVolt; + alarmTrip[3] = ucCellUnderVolt; + alarmTrip[4] = ucChaOverCurr; + alarmTrip[5] = ucDchOverCurr; + alarmTrip[6] = ucHighTemp; + alarmTrip[7] = ucLowTemp; + + //alarmTrip[0] = ucHighTemp; + //alarmTrip[1] = ucLowTemp; + //alarmTrip[2] = ucOverVolt; + //alarmTrip[3] = ucUnderVolt; + //alarmTrip[4] = ucCellOverVolt; + //alarmTrip[5] = ucCellUnderVolt; + //alarmTrip[6] = ucChaOverCurr; + //alarmTrip[7] = ucDchOverCurr; + alarmTrip[8] = ucLowSOC; + alarmTrip[9] = ucCvDiff; + } + + private void InitDataTableVolt() + { + if ((dtVolt != null) && (dtVolt.Length > 0)) + { + for (int i = 0; i < dtVolt.Length; i++) + dtVolt[i].Dispose(); + } + dtVolt = new DataTable[SystemData.cellQty]; + + for (int i = 0; i < dtVolt.Length; i++) + { + dtVolt[i] = new DataTable(); + dtVolt[i].Columns.Add("C_No", typeof(Int32)); + dtVolt[i].Columns.Add("Alarm", typeof(Int32)); + dtVolt[i].Columns.Add("Value", typeof(double)); + + // Add data rows to the table. + DataRow row = null; + row = dtVolt[i].NewRow(); + row["C_No"] = i + 1; + row["Alarm"] = 0; + row["Value"] = 3.2; + + dtVolt[i].Rows.Add(row); + } + } + + private void InitDataTableTemp() + { + if ((dtTemp != null) && (dtTemp.Length > 0)) + { + for (int i = 0; i < dtTemp.Length; i++) + dtTemp[i].Dispose(); + } + dtTemp = new DataTable[SystemData.tempQty]; + + for (int i = 0; i < dtTemp.Length; i++) + { + dtTemp[i] = new DataTable(); + dtTemp[i].Columns.Add("T_No", typeof(Int32)); + dtTemp[i].Columns.Add("Alarm", typeof(Int32)); + dtTemp[i].Columns.Add("Value", typeof(double)); + + // Add data rows to the table. + DataRow row = null; + row = dtTemp[i].NewRow(); + row["T_No"] = i + 1; + row["Alarm"] = 0; + row["Value"] = 25.4; + dtTemp[i].Rows.Add(row); + } + } + + private Palette VPaletteInit(string bName) + { + paletteV = new Palette(bName); + + for (int i = 0; i < SystemData.cellQty; i++) + { + paletteV.Add(Color.Green); + } + return paletteV; + } + + private void VPaletteUpdate2(uint LvValue, uint HvValue) + { + int nIC, nID; + uint[] bValue = new uint[2]; + + paletteV.Clear(); + + bValue[0] = LvValue; + bValue[1] = HvValue; + for (int i = 0; i < SystemData.cellQty; i++) + { + nIC = 0; nID = 0; + switch (Config.TargetModelIndex) + { + case 0: // PR-57150 + case 1: + case 2: + nIC = 0; + nID = i; + break; + case 3: // PR-102150 + nIC = 0; + nID = i; + break; + case 4: // PR-115300 + nIC = i / csConstData.SystemInfo.CELL_MAX_PER_IC; + nID = i % csConstData.SystemInfo.CELL_MAX_PER_IC; + break; + case 5: + nIC = 0; + nID = i; + break; + default: + nIC = 0; + nID = i; + break; + } + + if (((bValue[nIC] >> nID) & 0x00000001) == 0x00000001) + paletteV.Add(Color.Orange); + else + paletteV.Add(Color.Green); + } + } + + private void VPaletteUpdate(uint LvValue, uint HvValue) + { + int nIC, nID; + uint[] bValue = new uint[2]; + + paletteV.Clear(); + + bValue[0] = LvValue; + bValue[1] = HvValue; + for (int i = 0; i < SystemData.cellQty; i++) + { + nIC = 0; nID = 0; + switch (Config.TargetModelIndex) + { + case 4: // PR-115300 + nIC = i / csConstData.SystemInfo.CELL_MAX_PER_IC; + nID = i % csConstData.SystemInfo.CELL_MAX_PER_IC; + if (((bValue[nIC] >> nID) & 0x00000001) == 0x00000001) + paletteV.Add(Color.Orange); + else + paletteV.Add(Color.Green); + break; + case 0: // PR-57150 + nID = i; + if (((bValue[0] >> nID) & 0x00000001) == 0x00000001) + { + if (((bValue[1] >> nID) & 0x00000001) == 0x00000001) + paletteV.Add(Color.Orange); + else + paletteV.Add(Color.Blue); + } + else + { + paletteV.Add(Color.Green); + } + break; + case 1: + case 2: + case 3: // PR-102150 + case 5: + default: + nIC = 0; + nID = i; + break; + } + } + } + + private Palette TPaletteInit(string bName, short bValue) + { + paletteT = new Palette(bName); + + for (int i = 0; i < SystemData.tempQty; i++) + { + if (((bValue >> i) & 0x0001) == 0x0001) + paletteT.Add(Color.Orange); + else + paletteT.Add(Color.Green); + } + + return paletteT; + } + + private void TPaletteUpdate(short bValue) + { + paletteT.Clear(); + for (int i = 0; i < SystemData.tempQty; i++) + { + if (((bValue >> i) & 0x0001) == 0x0001) + paletteT.Add(Color.Orange); + else + paletteT.Add(Color.Green); + } + } + + private void VSeriesInit() + { + VChart.Series.Clear(); + VChart.Legend.Visibility = DevExpress.Utils.DefaultBoolean.False; + + seriesVolt = new Series[SystemData.cellQty]; + + for (int i = 0; i < seriesVolt.Length; i++) + { + seriesVolt[i] = new Series(String.Format("C_{0:00}", i + 1), ViewType.Bar) + { + DataSource = dtVolt[i], + CrosshairLabelPattern = "C_{A:00} : {V:F4}", + + // Specify data members to bind the series. + ArgumentScaleType = ScaleType.Numerical, + ArgumentDataMember = "C_No", + ValueScaleType = ScaleType.Numerical, + }; + ((SideBySideBarSeriesView)(seriesVolt[i].View)).BarWidth = 10.0; + seriesVolt[i].ValueDataMembers.AddRange(new string[] { "Value" }); + VChart.Series.Add(seriesVolt[i]); + } + + VChart.PaletteRepository.Clear(); + VChart.PaletteRepository.Add("V Palette", VPaletteInit("V Palette")); + VChart.PaletteName = "V Palette"; + + // Cast the chart's diagram to the XYDiagram type, to access its axes. + XYDiagram diagram = (XYDiagram)VChart.Diagram; + if (diagram.AxisY.ConstantLines.Count > 0) + diagram.AxisY.ConstantLines.Clear(); + + // Create a constant line. + ConstantLine constantLineMax = new ConstantLine("Limit(Max)"); + ConstantLine constantLineMin = new ConstantLine("Limit(Min)"); + ConstantLine constantDataMax = new ConstantLine(string.Format(" Max({0:#0.0000}V:{1:00}-{2:00})", 0, 0, 0)); + ConstantLine constantDataAvg = new ConstantLine(string.Format(" Avg({0:#0.0000}V)", 0)); + ConstantLine constantDataMin = new ConstantLine(string.Format("Min({0:#0.0000}V:{1:00}-{2:00})", 0, 0, 0)); + + ConstantLine constantDataBalancing = new ConstantLine(string.Format("Balancing ({0:#0.000}", 0)); + constantDataBalancing.Title.Alignment = ConstantLineTitleAlignment.Far; + constantDataBalancing.LineStyle.DashStyle = DashStyle.Dash; + + constantLineMax.Color = Color.Red; + constantLineMin.Color = Color.Red; + + // Customize the behavior of the constant line. + constantLineMax.Visible = true; + constantLineMax.ShowInLegend = true; + constantLineMax.LegendText = "Limit(Max)"; + constantLineMax.ShowBehind = false; + + constantLineMin.Visible = true; + constantLineMin.ShowInLegend = true; + constantLineMin.LegendText = "Limit(Min)"; + constantLineMin.ShowBehind = false; + + constantDataMax.Visible = true; + constantDataMax.ShowInLegend = true; + constantDataMax.LegendText = "Max"; + constantDataMax.ShowBehind = false; + constantDataMax.Color = Color.MediumVioletRed; + constantDataMax.Title.Font = new Font("Tahoma", 10F, FontStyle.Bold); + + constantDataAvg.Visible = true; + constantDataAvg.ShowInLegend = true; + constantDataAvg.LegendText = "Avg"; + constantDataAvg.ShowBehind = false; + constantDataAvg.Color = Color.Green; + constantDataAvg.Title.Font = new Font("Tahoma", 10F, FontStyle.Bold); + + constantDataMin.Visible = true; + constantDataMin.ShowInLegend = true; + constantDataMin.LegendText = "Min"; + constantDataMin.ShowBehind = false; + constantDataMin.Color = Color.BlueViolet; + constantDataMin.Title.Font = new Font("Tahoma", 10F, FontStyle.Bold); + + constantDataBalancing.Visible = true; + constantDataBalancing.ShowInLegend = true; + constantDataBalancing.LegendText = "Min"; + constantDataBalancing.ShowBehind = false; + constantDataBalancing.Color = Color.BlueViolet; + constantDataBalancing.Title.TextColor = Color.Black; + constantDataBalancing.Title.Font = new Font("Tahoma", 10F, FontStyle.Bold); + constantDataBalancing.Title.Alignment = ConstantLineTitleAlignment.Far; + constantDataBalancing.LineStyle.DashStyle = DashStyle.Dash; + + // Define its axis value. + constantLineMax.AxisValue = 3.85; + constantLineMin.AxisValue = 2.5; + constantDataMax.AxisValue = 0; + constantDataAvg.AxisValue = 0; + constantDataMin.AxisValue = 0; + + diagram.AxisY.ConstantLines.Add(constantLineMax); + diagram.AxisY.ConstantLines.Add(constantLineMin); + diagram.AxisY.ConstantLines.Add(constantDataMax); + diagram.AxisY.ConstantLines.Add(constantDataAvg); + diagram.AxisY.ConstantLines.Add(constantDataMin); + diagram.AxisY.ConstantLines.Add(constantDataBalancing); + + // Axis Y + diagram.AxisY.VisualRange.Auto = false; + diagram.AxisY.VisualRange.AutoSideMargins = false; + diagram.AxisY.VisualRange.StartSideMargin = 0; + diagram.AxisY.VisualRange.EndSideMargin = 0; + diagram.AxisY.VisualRange.MaxValue = 4.5; + diagram.AxisY.VisualRange.MinValue = 2.0; + diagram.AxisY.WholeRange.MaxValue = 4.5; + diagram.AxisY.WholeRange.MinValue = 2.0; + + diagram.AxisY.NumericScaleOptions.AutoGrid = false; + diagram.AxisY.NumericScaleOptions.GridAlignment = NumericGridAlignment.Ones; + diagram.AxisY.NumericScaleOptions.GridOffset = 0; + diagram.AxisY.NumericScaleOptions.GridSpacing = 0.1; + + //diagram.AxisY.GridSpacing = 0.1; + diagram.AxisY.Title.Text = "Voltage(V)"; + //diagram.AxisY.Label.NumericOptions.Precision = 3; + diagram.AxisY.Title.Visibility = DevExpress.Utils.DefaultBoolean.True; + diagram.AxisY.Title.Font = new Font("Tahoma", 9F, FontStyle.Regular); + + // Axis X + diagram.AxisX.WholeRange.Auto = false; + diagram.AxisX.WholeRange.MaxValue = seriesVolt.Length; + diagram.AxisX.WholeRange.MinValue = 0; + diagram.AxisX.VisualRange.MaxValue = seriesVolt.Length; + diagram.AxisX.VisualRange.MinValue = 1; + diagram.AxisX.VisualRange.Auto = false; + diagram.AxisX.VisualRange.AutoSideMargins = false; + diagram.AxisX.VisualRange.SideMarginsValue = 0.5; + + diagram.AxisX.GridLines.Visible = false; + + diagram.AxisX.NumericScaleOptions.AutoGrid = false; + diagram.AxisX.NumericScaleOptions.GridSpacing = 1D; + + diagram.AxisX.Title.Text = "Cell No"; + diagram.AxisX.Title.Visibility = DevExpress.Utils.DefaultBoolean.False; + diagram.AxisX.Title.Font = new Font("Tahoma", 9F, FontStyle.Regular); + + diagram.DefaultPane.BackColor = Color.FromArgb(242, 242, 242); + } + + private void tSeriesInit() + { + TChart.Series.Clear(); + TChart.Legend.Visibility = DevExpress.Utils.DefaultBoolean.False; + + seriesTemp = new Series[SystemData.tempQty]; + + for (int i = 0; i < seriesTemp.Length; i++) + { + seriesTemp[i] = new Series(String.Format("T_{0:00}", i + 1), ViewType.Bar) + { + DataSource = dtTemp[i], + CrosshairLabelPattern = "T_{A:00} : {V:F1}", + + // Specify data members to bind the series. + ArgumentScaleType = ScaleType.Numerical, + ArgumentDataMember = "T_No", + ValueScaleType = ScaleType.Numerical + }; + ((SideBySideBarSeriesView)(seriesTemp[i].View)).BarWidth = 2.0; + seriesTemp[i].ValueDataMembers.AddRange(new string[] { "Value" }); + TChart.Series.Add(seriesTemp[i]); + } + + TChart.PaletteRepository.Clear(); + TChart.PaletteRepository.Add("T Palette", TPaletteInit("T Palette", 0)); + TChart.PaletteName = "T Palette"; + + // Cast the chart's diagram to the XYDiagram type, to access its axes. + XYDiagram diagram = (XYDiagram)TChart.Diagram; + if (diagram.AxisY.ConstantLines.Count > 0) + diagram.AxisY.ConstantLines.Clear(); + + diagram.Margins.All = 0; + + ConstantLine constantLineMax = new ConstantLine("Limit(Max)"); + ConstantLine constantLineMin = new ConstantLine("Limit(Min)"); + ConstantLine constantDataMax = new ConstantLine(String.Format(" Max({0:#0.0}C)", 0)); + ConstantLine constantDataAvg = new ConstantLine(String.Format(" Avg({0:#0.0}C)", 0)); + ConstantLine constantDataMin = new ConstantLine(String.Format("Min({0:#0.0}C)", 0)); + + constantLineMax.Color = Color.Red; + constantLineMin.Color = Color.Red; + + // Customize the behavior of the constant line. + constantLineMax.Visible = true; + constantLineMax.ShowInLegend = true; + constantLineMax.LegendText = "Limit(Max)"; + constantLineMax.ShowBehind = false; + + constantLineMin.Visible = true; + constantLineMin.ShowInLegend = true; + constantLineMin.LegendText = "Limit(Min)"; + constantLineMin.ShowBehind = false; + + constantDataMax.Visible = true; + constantDataMax.ShowInLegend = true; + constantDataMax.LegendText = "Max"; + constantDataMax.ShowBehind = false; + constantDataMax.Color = Color.MediumVioletRed; + constantDataMax.Title.Font = new Font("Tahoma", 9F, FontStyle.Bold); + + constantDataAvg.Visible = true; + constantDataAvg.ShowInLegend = true; + constantDataAvg.LegendText = "Avg"; + constantDataAvg.ShowBehind = false; + constantDataAvg.Color = Color.LawnGreen; + constantDataAvg.Title.Font = new Font("Tahoma", 9F, FontStyle.Bold); + + constantDataMin.Visible = true; + constantDataMin.ShowInLegend = true; + constantDataMin.LegendText = "Min"; + constantDataMin.ShowBehind = false; + constantDataMin.Color = Color.BlueViolet; + constantDataMin.Title.Font = new Font("Tahoma", 9F, FontStyle.Bold); + + // Define its axis value. + constantLineMax.AxisValue = 60.0; + constantLineMin.AxisValue = -10.0; + constantDataMax.AxisValue = 0; + constantDataAvg.AxisValue = 0; + constantDataMin.AxisValue = 0; + + diagram.AxisY.ConstantLines.Add(constantLineMax); + diagram.AxisY.ConstantLines.Add(constantLineMin); + diagram.AxisY.ConstantLines.Add(constantDataMax); + diagram.AxisY.ConstantLines.Add(constantDataAvg); + diagram.AxisY.ConstantLines.Add(constantDataMin); + + // Axis Y + diagram.AxisY.VisualRange.Auto = false; + diagram.AxisY.VisualRange.AutoSideMargins = false; + diagram.AxisY.VisualRange.StartSideMargin = 0; + diagram.AxisY.VisualRange.EndSideMargin = 0; + diagram.AxisY.VisualRange.MaxValue = 80.0; + diagram.AxisY.VisualRange.MinValue = -30.0; + diagram.AxisY.WholeRange.MaxValue = 80.0; + diagram.AxisY.WholeRange.MinValue = -30.0; + + diagram.AxisY.NumericScaleOptions.AutoGrid = false; + diagram.AxisY.NumericScaleOptions.GridAlignment = NumericGridAlignment.Ones; + diagram.AxisY.NumericScaleOptions.GridOffset = 0; + diagram.AxisY.NumericScaleOptions.GridSpacing = 5; + + diagram.AxisY.Title.Text = "Temperature(C)"; + diagram.AxisY.Title.Visibility = DevExpress.Utils.DefaultBoolean.True; + diagram.AxisY.Title.Font = new Font("Tahoma", 9F, FontStyle.Regular); + + // Axis X + diagram.AxisX.WholeRange.Auto = false; + diagram.AxisX.WholeRange.MaxValue = seriesTemp.Length; + diagram.AxisX.WholeRange.MinValue = 0; + diagram.AxisX.VisualRange.MaxValue = seriesTemp.Length; + diagram.AxisX.VisualRange.MinValue = 1; + diagram.AxisX.VisualRange.Auto = false; + diagram.AxisX.VisualRange.AutoSideMargins = false; + diagram.AxisX.VisualRange.SideMarginsValue = 0.5; + + diagram.AxisX.GridLines.Visible = false; + + //diagram.AxisX.NumericScaleOptions.AutoGrid = false; + diagram.AxisX.NumericScaleOptions.GridSpacing = 1D; + + diagram.AxisX.Title.Text = "Temperature No"; + diagram.AxisX.Title.Visibility = DevExpress.Utils.DefaultBoolean.False; + diagram.AxisX.Title.Font = new Font("Tahoma", 9F, FontStyle.Regular); + + diagram.DefaultPane.BackColor = Color.FromArgb(242, 242, 242); + } + + #endregion + + #region DISPLAY DATA + + private void tmrDisplay_Tick(object sender, EventArgs e) + { + if (start) + { + dgVoltage.Text = String.Format("{0:0.0}", Convert.ToDouble(SystemData.ValueData.voltageOfPack) / 10); + dgAvgCellVoltage.Text = String.Format(CellDisUnit, Convert.ToDouble(SystemData.AvgData.avgCellVoltage) / CellDivUnit); + dgDiffCellVoltage.Text = String.Format(CellDisUnit, Convert.ToDouble(SystemData.AvgData.diffCellVoltage) / CellDivUnit); + dgAvgTemperature.Text = String.Format("{0:0.0}", Convert.ToDouble(SystemData.AvgData.avgTemp) / 10); + dgDiffTemperature.Text = String.Format("{0:0.0}", Convert.ToDouble(SystemData.AvgData.diffTemp) / 10); + //dgAvgTemperature.Text = String.Format("{0:0.0}", ((XYDiagram)VChart.Diagram).AxisX.VisualRange.MinValueInternal); + //dgDiffTemperature.Text = String.Format("{0:0.0}", ((XYDiagram)VChart.Diagram).AxisX.WholeRange.MaxValueInternal); + + DisplayCellVoltage(); + DisplayCellTemperature(); + DisplayStatusAndAlarm(); + DisplayAlarm(); + + lbHeatbeat.Text = String.Format("HB({0}): {1}", (SystemData.CalibriationData.ForcedBalancing.AutoB) ? 1 : 0, SystemData.heatbeat); + + //lbOneBuffTime.Text = string.Format(" OBT: {0}", SystemData.OneBuffTime); + //lbAllBuffTime.Text = string.Format(" DCP: {0:X4}", SystemData.StatusData.batteryStatusA); + + lbOneBuffTime.Text = string.Format(" ENAB: {0:X8}", SystemData.StatusData.BalanceEnable); + lbAllBuffTime.Text = string.Format(" MODE: {0:X8}", SystemData.StatusData.BalanceMode); + } + } + + private void DisplayCellVoltage() + { + try + { + for (int i = 0; i < dtVolt.Length; i++) + { + dtVolt[i].Rows[0]["Value"] = Convert.ToDouble(SystemData.ValueData.CellVoltage[i]) / CellDivUnit; + } + + //for (int i = 0; i < cellQty; i++) + //{ + // dtVolt[i].Rows[0]["Value"] = Convert.ToDouble(SystemData.ValueData.CellVoltage[i]) / CellDivUnit; + // //((SideBySideBarSeriesView)seriesVolt[i].View).BarWidth = 10.0; + //} + + //if (SystemData.StatusData.cellBalanceFlag == 0x0001) + //{ + VPaletteUpdate(SystemData.StatusData.BalanceEnable, SystemData.StatusData.BalanceMode); + //} + //else + //{ + // VPaletteUpdate(0, 0); + //} + + double maxValue = Convert.ToDouble(SystemData.AvgData.maxCellVoltage) / CellDivUnit; + double avgValue = Convert.ToDouble(SystemData.AvgData.avgCellVoltage) / CellDivUnit; + double minValue = Convert.ToDouble(SystemData.AvgData.minCellVoltage) / CellDivUnit; + + double balanceValue = Convert.ToDouble(SystemData.StatusData.cellBalanceValue) / CellDivUnit; + + int maxCno = Convert.ToInt32(SystemData.AvgData.maxCellNum); + int minCno = Convert.ToInt32(SystemData.AvgData.minCellNum); + + // Cast the chart's diagram to the XYDiagram type, to access its axes. + ((XYDiagram)VChart.Diagram).AxisY.ConstantLines[2].Name = + String.Format(" Max({0:#0.0000}V:{1:00})", maxValue, maxCno); + ((XYDiagram)VChart.Diagram).AxisY.ConstantLines[3].Name = + String.Format(" Avg({0:#0.0000}V)", avgValue); + ((XYDiagram)VChart.Diagram).AxisY.ConstantLines[4].Name = + String.Format("Min({0:#0.0000}V:{1:00})", minValue, minCno); + + ((XYDiagram)VChart.Diagram).AxisY.ConstantLines[5].Name = + String.Format("Cell Balancing ({0:#0.000}V: EndGap[{1}])" + , balanceValue, SystemData.StatusData.cellBalanceEndGap); + + // Define its axis value. + ((XYDiagram)VChart.Diagram).AxisY.ConstantLines[2].AxisValue = maxValue; + ((XYDiagram)VChart.Diagram).AxisY.ConstantLines[3].AxisValue = avgValue; + ((XYDiagram)VChart.Diagram).AxisY.ConstantLines[4].AxisValue = minValue; + + ((XYDiagram)VChart.Diagram).AxisY.ConstantLines[5].AxisValue = balanceValue; + if (SystemData.StatusData.cellBalanceFlag == 1) + ((XYDiagram)VChart.Diagram).AxisY.ConstantLines[5].Title.TextColor = Color.Red; + else + ((XYDiagram)VChart.Diagram).AxisY.ConstantLines[5].Title.TextColor = Color.Blue; + + //((XYDiagram)VChart.Diagram).AxisX.WholeRange.MinValue = 0.5; + //((XYDiagram)VChart.Diagram).AxisX.VisualRange.MinValue = 0.5; + + //VChart.Legend.Visible = true; + + //VChart.Titles[0].Text = + // String.Format("Voltage Status"); + + //VChart.Invalidate(); + } + catch (Exception) + { + //MsgBox.ErrorShow(ex); + } + + } + private void DisplayCellTemperature() + { + try + { + for (int i = 0; i < seriesTemp.Length; i++) + seriesTemp[i].DataSource = null; + + for (int i = 0; i < dtTemp.Length; i++) + { + dtTemp[i].Rows[0]["Value"] = Convert.ToDouble(SystemData.ValueData.CellTemperature[i]) / 10; + } + for (int i = 0; i < seriesTemp.Length; i++) + seriesTemp[i].DataSource = dtTemp[i]; + + //for (int i = 0; i < tempQty; i++) + //{ + // dtTemp[i].Rows[0]["Value"] = Convert.ToDouble(SystemData.ValueData.CellTemperature[i]) / 10; + //} + + double maxValue = Convert.ToDouble(SystemData.AvgData.maxTemp) / 10; + double avgValue = Convert.ToDouble(SystemData.AvgData.avgTemp) / 10; + double minValue = Convert.ToDouble(SystemData.AvgData.minTemp) / 10; + int maxCno = Convert.ToInt32(SystemData.AvgData.maxTempNum); + int minCno = Convert.ToInt32(SystemData.AvgData.minTempNum); + + ((XYDiagram)TChart.Diagram).AxisY.ConstantLines[2].Name = String.Format(" Max({0:#0.0}C:{1:00})", maxValue, maxCno); + ((XYDiagram)TChart.Diagram).AxisY.ConstantLines[3].Name = String.Format(" Avg({0:#0.0}C)", avgValue); + ((XYDiagram)TChart.Diagram).AxisY.ConstantLines[4].Name = String.Format("Min({0:#0.0}C:{1:00})", minValue, minCno); + + // Define its axis value. + ((XYDiagram)TChart.Diagram).AxisY.ConstantLines[2].AxisValue = maxValue; + ((XYDiagram)TChart.Diagram).AxisY.ConstantLines[3].AxisValue = avgValue; + ((XYDiagram)TChart.Diagram).AxisY.ConstantLines[4].AxisValue = minValue; + + //TChart.Legend.Visible = true; + + //TChart.Titles[0].Text = + // String.Format("Temperature Status"); + } + catch (Exception) + { + //MsgBox.ErrorShow(ex); + } + + } + + private void DisplayStatusAndAlarm() + { + if (SystemData.CommFail == false) + { + if (SystemData.ShelfCommFail == false) + { + switch (SystemData.StatusData.status) + { + case 0x0000: // Stand by + lbStatus.Text = "STANDBY"; + lbStatus.ForeColor = System.Drawing.Color.Black; + break; + case 0x0001: // Charging + lbStatus.Text = "CHARGING"; + lbStatus.ForeColor = System.Drawing.Color.Blue; + break; + case 0x0002: // Discharging + lbStatus.Text = "DISCHARGING"; + lbStatus.ForeColor = System.Drawing.Color.Magenta; + break; + case 0x0003: // Float Charging + lbStatus.Text = "FLOATING"; + lbStatus.ForeColor = System.Drawing.Color.Black; + break; + case 0x0004: // Warming Up + lbStatus.Text = "WARMING UP"; + lbStatus.ForeColor = System.Drawing.Color.Black; + break; + default: + lbStatus.Text = "UNKNOWN"; + lbStatus.ForeColor = System.Drawing.Color.Black; + break; + } + // Alarm Display + if (SystemData.StatusData.alarm == 0) + { + lbAlarm.Text = "NORMAL"; + lbAlarm.ForeColor = System.Drawing.Color.Green; + } + else if (SystemData.StatusData.alarm == 1) + { + lbAlarm.Text = "WARNING"; + lbAlarm.ForeColor = System.Drawing.Color.Orange; + } + else if (SystemData.StatusData.alarm == 2) + { + lbAlarm.Text = "FAULT"; + lbAlarm.ForeColor = System.Drawing.Color.Red; + } + else if (SystemData.StatusData.alarm == 3) + { + lbAlarm.Text = "WARMING UP"; + lbAlarm.ForeColor = System.Drawing.Color.Green; + } + else + { + lbAlarm.Text = "UNKNOWN"; + lbAlarm.ForeColor = System.Drawing.Color.Red; + } + } + else + { + lbStatus.Text = "COMM FAIL"; + lbStatus.ForeColor = System.Drawing.Color.Red; + lbAlarm.Text = "COMM FAIL"; + lbAlarm.ForeColor = System.Drawing.Color.Red; + } + } + else + { + lbStatus.Text = "OFF LINE"; + lbStatus.ForeColor = System.Drawing.Color.Red; + lbAlarm.Text = "OFF LINE"; + lbAlarm.ForeColor = System.Drawing.Color.Red; + } + + // Charge Relay Status Display + } + + private void DisplayAlarm() + { + bool[] aFault = csUtils.Int16ToBitArray(SystemData.StatusData.protect); + bool[] aWarining = csUtils.Int16ToBitArray(SystemData.StatusData.warning); + bool aCommfail; + + if (Config.CommType == 0) + { + aCommfail = SystemData.ShelfCommFail; + } + else + { + aCommfail = SystemData.CommFail; + } + + for (int i = 0; i < 6; i++) + { + if (aFault[i] == true) + alarmTrip[i].SetValue(2); + else if (aWarining[i] == true) + alarmTrip[i].SetValue(1); + else + alarmTrip[i].SetValue(0); + } + + // High Temp + if (aFault[8] || aFault[9]) + alarmTrip[6].SetValue(2); + else if (aWarining[8] || aWarining[9]) + alarmTrip[6].SetValue(1); + else + alarmTrip[6].SetValue(0); + + // Low Temp + if (aFault[10] || aFault[11]) + alarmTrip[7].SetValue(2); + else if (aWarining[10] || aWarining[11]) + alarmTrip[7].SetValue(1); + else + alarmTrip[7].SetValue(0); + + // Low SOC + if (aWarining[12] == true) + alarmTrip[8].SetValue(1); + else + alarmTrip[8].SetValue(0); + + // Cell Voltage Difference + if (aFault[14] == true) + alarmTrip[9].SetValue(2); + else if (aWarining[14] == true) + alarmTrip[9].SetValue(1); + else + alarmTrip[9].SetValue(0); + } + + #endregion + + #region BUTTON EVENT + + private void btnParam_Click(object sender, EventArgs e) + { + foreach (Form frm in Application.OpenForms) + { + if (frm.Name == "fmxParamConfig") + { + frm.Activate(); + return; + } + } + fmxParamConfig ParamConfigForm = new fmxParamConfig(SystemId, SystemData.ParamData); + + ParamConfigForm.OnUpdate += UpdateParam; + ParamConfigForm.OnCommand += ParamSetCmd; + ParamConfigForm.Show(); + } + + private void btnCalibration_Click(object sender, EventArgs e) + { + foreach (Form frm in Application.OpenForms) + { + if (frm.Name == "fmxCalibration") + { + frm.Activate(); + return; + } + } + fmxCalibration CalibrationForm = new fmxCalibration(SystemId, SystemData.CalibriationData); + + CalibrationForm.OnUpdate += UpdateCalibration; + CalibrationForm.OnCommand += ParamSetCmd; + CalibrationForm.Show(); + + //VChart.ShowPrintPreview(); + } + private void btnINV_Click(object sender, EventArgs e) + { + foreach (Form frm in Application.OpenForms) + { + if (frm.Name == "fmxInventoryConfig") + { + frm.Activate(); + return; + } + } + fmxInventoryConfig InventoryConfigForm = new fmxInventoryConfig(Config, SystemId, ref SystemData); + + InventoryConfigForm.OnUpdate += UpdateInformation; + InventoryConfigForm.OnCommand += InvDataSetCmd; + InventoryConfigForm.Show(); + + //VChart.ShowPrintPreview(); + } + + private void btnINV2_Click(object sender, EventArgs e) + { + foreach (Form frm in Application.OpenForms) + { + if (frm.Name == "fmxInventoryConfig2") + { + frm.Activate(); + return; + } + } + fmxInventoryConfig2 InventoryConfig2Form = new fmxInventoryConfig2(Config, SystemId, ref SystemData, CellDivUnit); + + InventoryConfig2Form.OnUpdate += UpdateInformation2; + InventoryConfig2Form.OnCommand += InvDataSetCmd2; + InventoryConfig2Form.ShowDialog(); + + //VChart.ShowPrintPreview(); + } + + int CbTestFlag = 0; + + private void BtnCbTest_Click(object sender, EventArgs e) + { + if (CbTestFlag == 0) + { + CbTestFlag = 1; + } + else if (CbTestFlag == 1) + { + CbTestFlag = 2; + return; + } + else if (CbTestFlag == 2) + { + return; + } + + BtnCbTest.Text = "Cancel"; + + Config.AppPath = Application.ExecutablePath; + Config.mSN = Encoding.Default.GetString(SystemData.Information.pcb_sn).Trim('\0'); + + string alog = string.Format("\r\nCB Data Start [{0}]: {1}", Application.ProductVersion, Config.mSN); + csLog.MakeCosoleStrLog(Config, alog); + OnMsgPrint?.Invoke(this, alog); + + int CbTestGap = 0; + int CbTestGapMax = 0; + DeviceParamData aParam = SystemData.ParamData; + DeviceCalibration wCalib = SystemData.CalibriationData.DeepCopy(); + + // Auto Cell Balancing Disable + wCalib.ForcedBalancing.AutoB = false; + ParamSetCmd(SystemId, 1, 1, ref aParam, ref wCalib); + + int CellNo = 0; + int CellVoltageBefore = 0; + int CellVoltageAfter = 0; + for (int i = 0; i < SystemData.cellQty; i++) + { + CellNo = i; + CellVoltageBefore = SystemData.ValueData.CellVoltage[i]; + + wCalib.ForcedBalancing.Control = 0; + wCalib.ForcedBalancing.CellNo = (short)0; + ParamSetCmd(SystemId, 12, 1, ref aParam, ref wCalib); + + Application.DoEvents(); + Thread.Sleep(100); + + wCalib.ForcedBalancing.Control = 2; + wCalib.ForcedBalancing.CellNo = (short)(CellNo + 1); + ParamSetCmd(SystemId, 12, 1, ref aParam, ref wCalib); + + CbTestGap = 0; + for (int j = 0; j < (Config.CbTestTime / 100); j++) + { + Application.DoEvents(); + Thread.Sleep(100); + if (CbTestFlag == 2) + { + break; + } + if (CbTestGap < SystemData.AvgData.diffCellVoltage) + { + CbTestGap = SystemData.AvgData.diffCellVoltage; + } + if (CbTestGapMax < SystemData.AvgData.diffCellVoltage) + { + CbTestGapMax = SystemData.AvgData.diffCellVoltage; + } + } + CellVoltageAfter = SystemData.ValueData.CellVoltage[i]; + + alog = string.Format("CB Test [{0:00}]: {1:0.0000} - {2:0.0000}/{3:0.0000} - {4:0.0000}" + , CellNo + , Convert.ToDouble(CbTestGap) / CellDivUnit + , Convert.ToDouble(CellVoltageBefore) / CellDivUnit + , Convert.ToDouble(CellVoltageAfter) / CellDivUnit + , Convert.ToDouble(CellVoltageBefore - CellVoltageAfter) / CellDivUnit + ); + csLog.MakeCosoleStrLog(Config, alog); + OnMsgPrint?.Invoke(this, alog); + + int testGap; + if (Config.TargetModelIndex == 0) + { + testGap = Config.CbTestGap / 10; + } + else + { + testGap = Config.CbTestGap; + } + if (CbTestGap > testGap) + { + alog = string.Format("CB Test Fail - Cell No: {0}, V: {1:0.0000}", CellNo, Convert.ToDouble(CbTestGap) / CellDivUnit); + csLog.MakeCosoleStrLog(Config, alog); + OnMsgPrint?.Invoke(this, alog); + MessageBox.Show(string.Format("CB Test Fail - Cell No: {0}, V: {1:0.0000}", CellNo, Convert.ToDouble(CbTestGap) / CellDivUnit) + , "Exception" + , MessageBoxButtons.OK + , MessageBoxIcon.Error); + CbTestFlag = 2; + } + if (CbTestFlag == 2) + { + alog = string.Format("CB Test Cancel"); + csLog.MakeCosoleStrLog(Config, alog); + OnMsgPrint?.Invoke(this, alog); + break; + } + } + wCalib.ForcedBalancing.Control = 0; + wCalib.ForcedBalancing.CellNo = (short)SystemData.cellQty; + ParamSetCmd(SystemId, 12, 1, ref aParam, ref wCalib); + + // Auto Cell Balancing Enable + wCalib.ForcedBalancing.AutoB = true; + wCalib.ForcedBalancing.DCP = false; + ParamSetCmd(SystemId, 1, 1, ref aParam, ref wCalib); + + if (CbTestFlag == 1) + { + alog = string.Format("CB Test Pass - V: {0:0.0000}", Convert.ToDouble(CbTestGapMax) / CellDivUnit); + csLog.MakeCosoleStrLog(Config, alog); + OnMsgPrint?.Invoke(this, alog); + MessageBox.Show(string.Format("CB Test Pass - Max. V: {0:0.0000}", Convert.ToDouble(CbTestGapMax) / CellDivUnit) + , "Exception" + , MessageBoxButtons.OK + , MessageBoxIcon.Information); + } + BtnCbTest.Text = "CB Test"; + + CbTestFlag = 0; + } + #endregion + + #region COMPONENT EVENT FUNCTION + private void UpdateParam(object sendor) + { + ((fmxParamConfig)sendor).UpdateData(SystemData.ParamData, SystemData.CalibriationData); + } + + private void UpdateCalibration(object sendor) + { + ((fmxCalibration)sendor).UpdateData(SystemData.ParamData, SystemData.CalibriationData, SystemData); + } + + private void UpdateInformation(object sendor) + { + ((fmxInventoryConfig)sendor).UpdateData(ref SystemData); + } + + private void UpdateInformation2(object sendor) + { + ((fmxInventoryConfig2)sendor).UpdateData(ref SystemData); + } + + private void ParamSetCmd(int sId, int mode, int flag, ref DeviceParamData aParam, ref DeviceCalibration aCalib) + { + OnCommand?.Invoke(sId, mode, flag, ref aParam, ref aCalib); + } + private void InvDataSetCmd(int sId, int mode, int flag, ref DeviceInforation aInvData) + { + SystemData.CalibriationData.InvData = aInvData; + OnCommand?.Invoke(sId, mode, flag, ref SystemData.ParamData, ref SystemData.CalibriationData); + } + private void InvDataSetCmd2(int sId, int mode, int flag, ref DeviceInforation aInvData) + { + SystemData.CalibriationData.InvData = aInvData; + OnCommand?.Invoke(sId, mode, flag, ref SystemData.ParamData, ref SystemData.CalibriationData); + } + #endregion + } +} diff --git a/LFP_Manager_PRM/Controls/ucShelfStatus.resx b/LFP_Manager_PRM/Controls/ucShelfStatus.resx new file mode 100644 index 0000000..fe317aa --- /dev/null +++ b/LFP_Manager_PRM/Controls/ucShelfStatus.resx @@ -0,0 +1,123 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + 17, 17 + + \ No newline at end of file diff --git a/LFP_Manager_PRM/Controls/ucStatus.Designer.cs b/LFP_Manager_PRM/Controls/ucStatus.Designer.cs new file mode 100644 index 0000000..c7f9ae4 --- /dev/null +++ b/LFP_Manager_PRM/Controls/ucStatus.Designer.cs @@ -0,0 +1,188 @@ +namespace LFP_Manager.Controls +{ + partial class ucStatus + { + /// + /// Required designer variable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Clean up any resources being used. + /// + /// true if managed resources should be disposed; otherwise, false. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Component Designer generated code + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + this.layoutControl1 = new DevExpress.XtraLayout.LayoutControl(); + this.pcStatus = new DevExpress.XtraEditors.PanelControl(); + this.layoutControl2 = new DevExpress.XtraLayout.LayoutControl(); + this.lcStatus = new DevExpress.XtraEditors.LabelControl(); + this.layoutControlGroup2 = new DevExpress.XtraLayout.LayoutControlGroup(); + this.layoutControlItem2 = new DevExpress.XtraLayout.LayoutControlItem(); + this.layoutControlGroup1 = new DevExpress.XtraLayout.LayoutControlGroup(); + this.layoutControlItem1 = new DevExpress.XtraLayout.LayoutControlItem(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControl1)).BeginInit(); + this.layoutControl1.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.pcStatus)).BeginInit(); + this.pcStatus.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControl2)).BeginInit(); + this.layoutControl2.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup2)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem2)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup1)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem1)).BeginInit(); + this.SuspendLayout(); + // + // layoutControl1 + // + this.layoutControl1.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(235)))), ((int)(((byte)(236)))), ((int)(((byte)(239))))); + this.layoutControl1.Controls.Add(this.pcStatus); + this.layoutControl1.Dock = System.Windows.Forms.DockStyle.Fill; + this.layoutControl1.Location = new System.Drawing.Point(0, 0); + this.layoutControl1.Name = "layoutControl1"; + this.layoutControl1.OptionsCustomizationForm.DesignTimeCustomizationFormPositionAndSize = new System.Drawing.Rectangle(717, 178, 250, 350); + this.layoutControl1.Root = this.layoutControlGroup1; + this.layoutControl1.Size = new System.Drawing.Size(147, 27); + this.layoutControl1.TabIndex = 0; + this.layoutControl1.Text = "layoutControl1"; + // + // pcStatus + // + this.pcStatus.BorderStyle = DevExpress.XtraEditors.Controls.BorderStyles.Style3D; + this.pcStatus.Controls.Add(this.layoutControl2); + this.pcStatus.Location = new System.Drawing.Point(1, 1); + this.pcStatus.Margin = new System.Windows.Forms.Padding(0); + this.pcStatus.Name = "pcStatus"; + this.pcStatus.Size = new System.Drawing.Size(145, 25); + this.pcStatus.TabIndex = 4; + // + // layoutControl2 + // + this.layoutControl2.Controls.Add(this.lcStatus); + this.layoutControl2.Dock = System.Windows.Forms.DockStyle.Fill; + this.layoutControl2.Location = new System.Drawing.Point(2, 2); + this.layoutControl2.Name = "layoutControl2"; + this.layoutControl2.Padding = new System.Windows.Forms.Padding(1); + this.layoutControl2.Root = this.layoutControlGroup2; + this.layoutControl2.Size = new System.Drawing.Size(141, 21); + this.layoutControl2.TabIndex = 0; + this.layoutControl2.Text = "layoutControl2"; + // + // lcStatus + // + this.lcStatus.Appearance.Font = new System.Drawing.Font("Tahoma", 9.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0))); + this.lcStatus.Appearance.TextOptions.HAlignment = DevExpress.Utils.HorzAlignment.Center; + this.lcStatus.Location = new System.Drawing.Point(2, 2); + this.lcStatus.Name = "lcStatus"; + this.lcStatus.Size = new System.Drawing.Size(137, 17); + this.lcStatus.StyleController = this.layoutControl2; + this.lcStatus.TabIndex = 4; + this.lcStatus.Text = "labelControl1"; + // + // layoutControlGroup2 + // + this.layoutControlGroup2.CustomizationFormText = "layoutControlGroup2"; + this.layoutControlGroup2.EnableIndentsWithoutBorders = DevExpress.Utils.DefaultBoolean.True; + this.layoutControlGroup2.GroupBordersVisible = false; + this.layoutControlGroup2.Items.AddRange(new DevExpress.XtraLayout.BaseLayoutItem[] { + this.layoutControlItem2}); + this.layoutControlGroup2.Location = new System.Drawing.Point(0, 0); + this.layoutControlGroup2.Name = "layoutControlGroup2"; + this.layoutControlGroup2.Padding = new DevExpress.XtraLayout.Utils.Padding(1, 1, 1, 1); + this.layoutControlGroup2.Size = new System.Drawing.Size(141, 21); + this.layoutControlGroup2.Text = "layoutControlGroup2"; + this.layoutControlGroup2.TextVisible = false; + // + // layoutControlItem2 + // + this.layoutControlItem2.Control = this.lcStatus; + this.layoutControlItem2.CustomizationFormText = "layoutControlItem2"; + this.layoutControlItem2.Location = new System.Drawing.Point(0, 0); + this.layoutControlItem2.MinSize = new System.Drawing.Size(74, 18); + this.layoutControlItem2.Name = "layoutControlItem2"; + this.layoutControlItem2.Padding = new DevExpress.XtraLayout.Utils.Padding(1, 1, 1, 1); + this.layoutControlItem2.Size = new System.Drawing.Size(139, 19); + this.layoutControlItem2.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem2.Text = "layoutControlItem2"; + this.layoutControlItem2.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem2.TextToControlDistance = 0; + this.layoutControlItem2.TextVisible = false; + // + // layoutControlGroup1 + // + this.layoutControlGroup1.CustomizationFormText = "layoutControlGroup1"; + this.layoutControlGroup1.EnableIndentsWithoutBorders = DevExpress.Utils.DefaultBoolean.True; + this.layoutControlGroup1.GroupBordersVisible = false; + this.layoutControlGroup1.Items.AddRange(new DevExpress.XtraLayout.BaseLayoutItem[] { + this.layoutControlItem1}); + this.layoutControlGroup1.Location = new System.Drawing.Point(0, 0); + this.layoutControlGroup1.Name = "Root"; + this.layoutControlGroup1.Padding = new DevExpress.XtraLayout.Utils.Padding(0, 0, 0, 0); + this.layoutControlGroup1.Size = new System.Drawing.Size(147, 27); + this.layoutControlGroup1.Text = "Root"; + this.layoutControlGroup1.TextVisible = false; + // + // layoutControlItem1 + // + this.layoutControlItem1.Control = this.pcStatus; + this.layoutControlItem1.CustomizationFormText = "layoutControlItem1"; + this.layoutControlItem1.Location = new System.Drawing.Point(0, 0); + this.layoutControlItem1.Name = "layoutControlItem1"; + this.layoutControlItem1.Padding = new DevExpress.XtraLayout.Utils.Padding(1, 1, 1, 1); + this.layoutControlItem1.Size = new System.Drawing.Size(147, 27); + this.layoutControlItem1.Text = "layoutControlItem1"; + this.layoutControlItem1.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem1.TextToControlDistance = 0; + this.layoutControlItem1.TextVisible = false; + // + // ucStatus + // + this.Appearance.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(235)))), ((int)(((byte)(236)))), ((int)(((byte)(239))))); + this.Appearance.Options.UseBackColor = true; + this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 14F); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.Controls.Add(this.layoutControl1); + this.MinimumSize = new System.Drawing.Size(0, 27); + this.Name = "ucStatus"; + this.Size = new System.Drawing.Size(147, 27); + ((System.ComponentModel.ISupportInitialize)(this.layoutControl1)).EndInit(); + this.layoutControl1.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.pcStatus)).EndInit(); + this.pcStatus.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.layoutControl2)).EndInit(); + this.layoutControl2.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup2)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem2)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup1)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem1)).EndInit(); + this.ResumeLayout(false); + + } + + #endregion + + private DevExpress.XtraLayout.LayoutControl layoutControl1; + private DevExpress.XtraLayout.LayoutControlGroup layoutControlGroup1; + private DevExpress.XtraEditors.PanelControl pcStatus; + private DevExpress.XtraLayout.LayoutControl layoutControl2; + private DevExpress.XtraEditors.LabelControl lcStatus; + private DevExpress.XtraLayout.LayoutControlGroup layoutControlGroup2; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem2; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem1; + } +} diff --git a/LFP_Manager_PRM/Controls/ucStatus.cs b/LFP_Manager_PRM/Controls/ucStatus.cs new file mode 100644 index 0000000..8febe9c --- /dev/null +++ b/LFP_Manager_PRM/Controls/ucStatus.cs @@ -0,0 +1,49 @@ +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Drawing; +using System.Data; +using System.Text; +using System.Linq; +using System.Windows.Forms; +using DevExpress.XtraEditors; + +namespace LFP_Manager.Controls +{ + public partial class ucStatus : DevExpress.XtraEditors.XtraUserControl + { + public ucStatus() + { + InitializeComponent(); + } + + public void SetName(string name) + { + lcStatus.Text = " " + name + " "; + } + + public void SetTextWidth(int width) + { + lcStatus.Size = new System.Drawing.Size(width, 14); + } + + public void SetValue(int nValue) + { + switch (nValue) + { + case 0: + pcStatus.BackColor = System.Drawing.Color.Green; + lcStatus.ForeColor = System.Drawing.Color.White; + break; + case 1: + pcStatus.BackColor = System.Drawing.Color.Orange; + lcStatus.ForeColor = System.Drawing.Color.Black; + break; + case 2: + pcStatus.BackColor = System.Drawing.Color.Red; + lcStatus.ForeColor = System.Drawing.Color.White; + break; + } + } + } +} diff --git a/LFP_Manager_PRM/Controls/ucStatus.resx b/LFP_Manager_PRM/Controls/ucStatus.resx new file mode 100644 index 0000000..1af7de1 --- /dev/null +++ b/LFP_Manager_PRM/Controls/ucStatus.resx @@ -0,0 +1,120 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + \ No newline at end of file diff --git a/LFP_Manager_PRM/Controls/ucTargetControl.Designer.cs b/LFP_Manager_PRM/Controls/ucTargetControl.Designer.cs new file mode 100644 index 0000000..a9aa22c --- /dev/null +++ b/LFP_Manager_PRM/Controls/ucTargetControl.Designer.cs @@ -0,0 +1,308 @@ +namespace LFP_Manager.Controls +{ + partial class ucTargetControl + { + /// + /// Required designer variable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Clean up any resources being used. + /// + /// true if managed resources should be disposed; otherwise, false. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Component Designer generated code + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + this.layoutControl1 = new DevExpress.XtraLayout.LayoutControl(); + this.gcTargetConfig = new DevExpress.XtraEditors.GroupControl(); + this.layoutControl2 = new DevExpress.XtraLayout.LayoutControl(); + this.lbStatus = new DevExpress.XtraEditors.LabelControl(); + this.lbTargetInfo = new DevExpress.XtraEditors.LabelControl(); + this.btnConfig = new DevExpress.XtraEditors.SimpleButton(); + this.btnStart = new DevExpress.XtraEditors.SimpleButton(); + this.lbTarget = new DevExpress.XtraEditors.LabelControl(); + this.layoutControlGroup2 = new DevExpress.XtraLayout.LayoutControlGroup(); + this.layoutControlItem2 = new DevExpress.XtraLayout.LayoutControlItem(); + this.layoutControlItem4 = new DevExpress.XtraLayout.LayoutControlItem(); + this.layoutControlItem3 = new DevExpress.XtraLayout.LayoutControlItem(); + this.layoutControlItem5 = new DevExpress.XtraLayout.LayoutControlItem(); + this.layoutControlItem6 = new DevExpress.XtraLayout.LayoutControlItem(); + this.layoutControlGroup1 = new DevExpress.XtraLayout.LayoutControlGroup(); + this.layoutControlItem1 = new DevExpress.XtraLayout.LayoutControlItem(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControl1)).BeginInit(); + this.layoutControl1.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.gcTargetConfig)).BeginInit(); + this.gcTargetConfig.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControl2)).BeginInit(); + this.layoutControl2.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup2)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem2)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem4)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem3)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem5)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem6)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup1)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem1)).BeginInit(); + this.SuspendLayout(); + // + // layoutControl1 + // + this.layoutControl1.Controls.Add(this.gcTargetConfig); + this.layoutControl1.Dock = System.Windows.Forms.DockStyle.Fill; + this.layoutControl1.Location = new System.Drawing.Point(0, 0); + this.layoutControl1.Name = "layoutControl1"; + this.layoutControl1.Root = this.layoutControlGroup1; + this.layoutControl1.Size = new System.Drawing.Size(803, 61); + this.layoutControl1.TabIndex = 0; + this.layoutControl1.Text = "layoutControl1"; + // + // gcTargetConfig + // + this.gcTargetConfig.Controls.Add(this.layoutControl2); + this.gcTargetConfig.Location = new System.Drawing.Point(3, 3); + this.gcTargetConfig.Name = "gcTargetConfig"; + this.gcTargetConfig.Size = new System.Drawing.Size(797, 55); + this.gcTargetConfig.TabIndex = 6; + this.gcTargetConfig.Text = "Target Config"; + // + // layoutControl2 + // + this.layoutControl2.Controls.Add(this.lbStatus); + this.layoutControl2.Controls.Add(this.lbTargetInfo); + this.layoutControl2.Controls.Add(this.btnConfig); + this.layoutControl2.Controls.Add(this.btnStart); + this.layoutControl2.Controls.Add(this.lbTarget); + this.layoutControl2.Dock = System.Windows.Forms.DockStyle.Fill; + this.layoutControl2.Location = new System.Drawing.Point(2, 22); + this.layoutControl2.Name = "layoutControl2"; + this.layoutControl2.OptionsCustomizationForm.DesignTimeCustomizationFormPositionAndSize = new System.Drawing.Rectangle(932, 307, 250, 350); + this.layoutControl2.Root = this.layoutControlGroup2; + this.layoutControl2.Size = new System.Drawing.Size(793, 31); + this.layoutControl2.TabIndex = 0; + this.layoutControl2.Text = "layoutControl2"; + // + // lbStatus + // + this.lbStatus.Appearance.Font = new System.Drawing.Font("Tahoma", 11.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0))); + this.lbStatus.Appearance.TextOptions.HAlignment = DevExpress.Utils.HorzAlignment.Center; + this.lbStatus.Location = new System.Drawing.Point(526, 4); + this.lbStatus.Name = "lbStatus"; + this.lbStatus.Size = new System.Drawing.Size(77, 23); + this.lbStatus.StyleController = this.layoutControl2; + this.lbStatus.TabIndex = 9; + this.lbStatus.Text = "STOP"; + // + // lbTargetInfo + // + this.lbTargetInfo.Appearance.Font = new System.Drawing.Font("Tahoma", 9.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0))); + this.lbTargetInfo.Location = new System.Drawing.Point(78, 4); + this.lbTargetInfo.Name = "lbTargetInfo"; + this.lbTargetInfo.Size = new System.Drawing.Size(444, 23); + this.lbTargetInfo.StyleController = this.layoutControl2; + this.lbTargetInfo.TabIndex = 8; + // + // btnConfig + // + this.btnConfig.Location = new System.Drawing.Point(607, 4); + this.btnConfig.Name = "btnConfig"; + this.btnConfig.Size = new System.Drawing.Size(89, 23); + this.btnConfig.StyleController = this.layoutControl2; + this.btnConfig.TabIndex = 7; + this.btnConfig.Text = "CONFIG"; + this.btnConfig.Click += new System.EventHandler(this.btnConfig_Click); + // + // btnStart + // + this.btnStart.Location = new System.Drawing.Point(700, 4); + this.btnStart.Name = "btnStart"; + this.btnStart.Size = new System.Drawing.Size(89, 23); + this.btnStart.StyleController = this.layoutControl2; + this.btnStart.TabIndex = 6; + this.btnStart.Text = "START"; + this.btnStart.Click += new System.EventHandler(this.btnStart_Click); + // + // lbTarget + // + this.lbTarget.Appearance.TextOptions.HAlignment = DevExpress.Utils.HorzAlignment.Center; + this.lbTarget.Location = new System.Drawing.Point(4, 4); + this.lbTarget.Name = "lbTarget"; + this.lbTarget.Size = new System.Drawing.Size(70, 23); + this.lbTarget.StyleController = this.layoutControl2; + this.lbTarget.TabIndex = 4; + this.lbTarget.Text = "Target"; + // + // layoutControlGroup2 + // + this.layoutControlGroup2.CustomizationFormText = "layoutControlGroup1"; + this.layoutControlGroup2.EnableIndentsWithoutBorders = DevExpress.Utils.DefaultBoolean.True; + this.layoutControlGroup2.GroupBordersVisible = false; + this.layoutControlGroup2.Items.AddRange(new DevExpress.XtraLayout.BaseLayoutItem[] { + this.layoutControlItem2, + this.layoutControlItem4, + this.layoutControlItem3, + this.layoutControlItem5, + this.layoutControlItem6}); + this.layoutControlGroup2.Location = new System.Drawing.Point(0, 0); + this.layoutControlGroup2.Name = "Root"; + this.layoutControlGroup2.Padding = new DevExpress.XtraLayout.Utils.Padding(2, 2, 2, 2); + this.layoutControlGroup2.Size = new System.Drawing.Size(793, 31); + this.layoutControlGroup2.Text = "Root"; + this.layoutControlGroup2.TextVisible = false; + // + // layoutControlItem2 + // + this.layoutControlItem2.Control = this.lbTarget; + this.layoutControlItem2.CustomizationFormText = "layoutControlItem2"; + this.layoutControlItem2.Location = new System.Drawing.Point(0, 0); + this.layoutControlItem2.MaxSize = new System.Drawing.Size(74, 0); + this.layoutControlItem2.MinSize = new System.Drawing.Size(74, 18); + this.layoutControlItem2.Name = "layoutControlItem2"; + this.layoutControlItem2.Size = new System.Drawing.Size(74, 27); + this.layoutControlItem2.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem2.Text = "layoutControlItem2"; + this.layoutControlItem2.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem2.TextToControlDistance = 0; + this.layoutControlItem2.TextVisible = false; + // + // layoutControlItem4 + // + this.layoutControlItem4.Control = this.btnStart; + this.layoutControlItem4.CustomizationFormText = "layoutControlItem4"; + this.layoutControlItem4.Location = new System.Drawing.Point(696, 0); + this.layoutControlItem4.MinSize = new System.Drawing.Size(53, 26); + this.layoutControlItem4.Name = "layoutControlItem4"; + this.layoutControlItem4.Size = new System.Drawing.Size(93, 27); + this.layoutControlItem4.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem4.Text = "layoutControlItem4"; + this.layoutControlItem4.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem4.TextToControlDistance = 0; + this.layoutControlItem4.TextVisible = false; + // + // layoutControlItem3 + // + this.layoutControlItem3.Control = this.btnConfig; + this.layoutControlItem3.CustomizationFormText = "layoutControlItem3"; + this.layoutControlItem3.Location = new System.Drawing.Point(603, 0); + this.layoutControlItem3.MinSize = new System.Drawing.Size(57, 26); + this.layoutControlItem3.Name = "layoutControlItem3"; + this.layoutControlItem3.Size = new System.Drawing.Size(93, 27); + this.layoutControlItem3.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem3.Text = "layoutControlItem3"; + this.layoutControlItem3.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem3.TextToControlDistance = 0; + this.layoutControlItem3.TextVisible = false; + // + // layoutControlItem5 + // + this.layoutControlItem5.Control = this.lbTargetInfo; + this.layoutControlItem5.CustomizationFormText = "layoutControlItem5"; + this.layoutControlItem5.Location = new System.Drawing.Point(74, 0); + this.layoutControlItem5.MinSize = new System.Drawing.Size(74, 18); + this.layoutControlItem5.Name = "layoutControlItem5"; + this.layoutControlItem5.Size = new System.Drawing.Size(448, 27); + this.layoutControlItem5.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem5.Text = "layoutControlItem5"; + this.layoutControlItem5.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem5.TextToControlDistance = 0; + this.layoutControlItem5.TextVisible = false; + // + // layoutControlItem6 + // + this.layoutControlItem6.Control = this.lbStatus; + this.layoutControlItem6.CustomizationFormText = "layoutControlItem6"; + this.layoutControlItem6.Location = new System.Drawing.Point(522, 0); + this.layoutControlItem6.MinSize = new System.Drawing.Size(74, 18); + this.layoutControlItem6.Name = "layoutControlItem6"; + this.layoutControlItem6.Size = new System.Drawing.Size(81, 27); + this.layoutControlItem6.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem6.Text = "layoutControlItem6"; + this.layoutControlItem6.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem6.TextToControlDistance = 0; + this.layoutControlItem6.TextVisible = false; + // + // layoutControlGroup1 + // + this.layoutControlGroup1.CustomizationFormText = "layoutControlGroup1"; + this.layoutControlGroup1.EnableIndentsWithoutBorders = DevExpress.Utils.DefaultBoolean.True; + this.layoutControlGroup1.GroupBordersVisible = false; + this.layoutControlGroup1.Items.AddRange(new DevExpress.XtraLayout.BaseLayoutItem[] { + this.layoutControlItem1}); + this.layoutControlGroup1.Location = new System.Drawing.Point(0, 0); + this.layoutControlGroup1.Name = "layoutControlGroup1"; + this.layoutControlGroup1.Padding = new DevExpress.XtraLayout.Utils.Padding(1, 1, 1, 1); + this.layoutControlGroup1.Size = new System.Drawing.Size(803, 61); + this.layoutControlGroup1.Text = "layoutControlGroup1"; + this.layoutControlGroup1.TextVisible = false; + // + // layoutControlItem1 + // + this.layoutControlItem1.Control = this.gcTargetConfig; + this.layoutControlItem1.CustomizationFormText = "layoutControlItem1"; + this.layoutControlItem1.Location = new System.Drawing.Point(0, 0); + this.layoutControlItem1.Name = "layoutControlItem1"; + this.layoutControlItem1.Size = new System.Drawing.Size(801, 59); + this.layoutControlItem1.Text = "layoutControlItem1"; + this.layoutControlItem1.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem1.TextToControlDistance = 0; + this.layoutControlItem1.TextVisible = false; + // + // ucTargetControl + // + this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 14F); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.Controls.Add(this.layoutControl1); + this.Name = "ucTargetControl"; + this.Size = new System.Drawing.Size(803, 61); + ((System.ComponentModel.ISupportInitialize)(this.layoutControl1)).EndInit(); + this.layoutControl1.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.gcTargetConfig)).EndInit(); + this.gcTargetConfig.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.layoutControl2)).EndInit(); + this.layoutControl2.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup2)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem2)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem4)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem3)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem5)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem6)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup1)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem1)).EndInit(); + this.ResumeLayout(false); + + } + + #endregion + + private DevExpress.XtraLayout.LayoutControl layoutControl1; + private DevExpress.XtraLayout.LayoutControlGroup layoutControlGroup1; + private DevExpress.XtraEditors.GroupControl gcTargetConfig; + private DevExpress.XtraLayout.LayoutControl layoutControl2; + private DevExpress.XtraEditors.LabelControl lbTargetInfo; + private DevExpress.XtraEditors.SimpleButton btnConfig; + private DevExpress.XtraEditors.SimpleButton btnStart; + private DevExpress.XtraEditors.LabelControl lbTarget; + private DevExpress.XtraLayout.LayoutControlGroup layoutControlGroup2; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem2; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem4; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem3; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem5; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem1; + private DevExpress.XtraEditors.LabelControl lbStatus; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem6; + } +} diff --git a/LFP_Manager_PRM/Controls/ucTargetControl.cs b/LFP_Manager_PRM/Controls/ucTargetControl.cs new file mode 100644 index 0000000..3a05591 --- /dev/null +++ b/LFP_Manager_PRM/Controls/ucTargetControl.cs @@ -0,0 +1,105 @@ +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Drawing; +using System.Data; +using System.Text; +using System.Linq; +using System.Windows.Forms; +using DevExpress.XtraEditors; + +using LFP_Manager.Forms; +using LFP_Manager.DataStructure; +using LFP_Manager.Function; + +namespace LFP_Manager.Controls +{ + public delegate void ButtonEvent(object sender, EventArgs e); + + public partial class ucTargetControl : DevExpress.XtraEditors.XtraUserControl + { + #region VARIABLES + + public event ButtonEvent OnConfig = null; + public event ButtonEvent OnStart = null; + + #endregion + + #region CONSTRUCTORS + + public ucTargetControl() + { + InitializeComponent(); + + lbStatus.Appearance.ForeColor = System.Drawing.Color.Red; + } + + #endregion + + #region UPDATE DATA + + public void UpdateConfig(CommConfig Config) + { + string info; + + if (Config.CommType == 1) + { + info = String.Format("INTERFACE: UART, PORT: {0}, BAUDRATE: {1}, MODEL: {2}" + , Config.UartPort + , Config.UartBaudrate + , csConstData.CommType.UART_MODEL[Config.UartModelIndex] + ); + } + else + { + info = String.Format("INTERFACE: CAN, DEVICE: {0}({1}), PORT: {2}, BAUDRATE: {3}, MODEL: {4}" + , csCanConstData.CanDeviceInfo.DeviceNames[Config.CanDevice] + , Config.CanIndex + , Config.CanNo + , csCanConstData.BaudRate.BaudRateStrings[Config.CanBaudrate] + , csConstData.CommType.CAN_MODEL[Config.TargetModelIndex] + ); + } + + lbTargetInfo.Text = info; + } + + #endregion + + public void UpdateStatus(bool flag) + { + if (flag) + { + btnConfig.Enabled = false; + btnStart.Text = "STOP"; + + lbStatus.Text = "RUN"; + lbStatus.Appearance.ForeColor = System.Drawing.Color.Blue; + } + else + { + btnConfig.Enabled = true; + btnStart.Text = "START"; + + lbStatus.Text = "STOP"; + lbStatus.Appearance.ForeColor = System.Drawing.Color.Red; + } + } + + #region BUTTON EVENT + + private void btnConfig_Click(object sender, EventArgs e) + { + if (OnConfig != null) + OnConfig(sender, e); + } + + private void btnStart_Click(object sender, EventArgs e) + { + if (OnStart != null) + OnStart(sender, e); + } + + #endregion + } +} diff --git a/LFP_Manager_PRM/Controls/ucTargetControl.resx b/LFP_Manager_PRM/Controls/ucTargetControl.resx new file mode 100644 index 0000000..1af7de1 --- /dev/null +++ b/LFP_Manager_PRM/Controls/ucTargetControl.resx @@ -0,0 +1,120 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + \ No newline at end of file diff --git a/LFP_Manager_PRM/Controls/ucTftpClientcs.Designer.cs b/LFP_Manager_PRM/Controls/ucTftpClientcs.Designer.cs new file mode 100644 index 0000000..f44641c --- /dev/null +++ b/LFP_Manager_PRM/Controls/ucTftpClientcs.Designer.cs @@ -0,0 +1,406 @@ +namespace LFP_Manager.Controls +{ + partial class ucTftpClientcs + { + /// + /// Required designer variable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Clean up any resources being used. + /// + /// true if managed resources should be disposed; otherwise, false. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Component Designer generated code + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + this.groupFwUpdate = new DevExpress.XtraEditors.GroupControl(); + this.layoutControl1 = new DevExpress.XtraLayout.LayoutControl(); + this.btnLcdHistoryDelete = new DevExpress.XtraEditors.SimpleButton(); + this.btnReset = new DevExpress.XtraEditors.SimpleButton(); + this.btnDownload = new DevExpress.XtraEditors.SimpleButton(); + this.lbDownloadStatus = new DevExpress.XtraEditors.LabelControl(); + this.btnFindFile = new DevExpress.XtraEditors.SimpleButton(); + this.teFilename = new DevExpress.XtraEditors.TextEdit(); + this.progressDownload = new DevExpress.XtraEditors.ProgressBarControl(); + this.lbFilename = new DevExpress.XtraEditors.LabelControl(); + this.lbDeviceInfo = new DevExpress.XtraEditors.LabelControl(); + this.layoutControlGroup1 = new DevExpress.XtraLayout.LayoutControlGroup(); + this.layoutControlItem1 = new DevExpress.XtraLayout.LayoutControlItem(); + this.layoutControlItem2 = new DevExpress.XtraLayout.LayoutControlItem(); + this.layoutControlItem3 = new DevExpress.XtraLayout.LayoutControlItem(); + this.emptySpaceItem1 = new DevExpress.XtraLayout.EmptySpaceItem(); + this.layoutControlItem4 = new DevExpress.XtraLayout.LayoutControlItem(); + this.layoutControlItem5 = new DevExpress.XtraLayout.LayoutControlItem(); + this.layoutControlItem6 = new DevExpress.XtraLayout.LayoutControlItem(); + this.layoutControlItem9 = new DevExpress.XtraLayout.LayoutControlItem(); + this.layoutControlItem7 = new DevExpress.XtraLayout.LayoutControlItem(); + this.layoutControlItem8 = new DevExpress.XtraLayout.LayoutControlItem(); + ((System.ComponentModel.ISupportInitialize)(this.groupFwUpdate)).BeginInit(); + this.groupFwUpdate.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControl1)).BeginInit(); + this.layoutControl1.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.teFilename.Properties)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.progressDownload.Properties)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup1)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem1)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem2)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem3)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.emptySpaceItem1)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem4)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem5)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem6)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem9)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem7)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem8)).BeginInit(); + this.SuspendLayout(); + // + // groupFwUpdate + // + this.groupFwUpdate.Controls.Add(this.layoutControl1); + this.groupFwUpdate.Dock = System.Windows.Forms.DockStyle.Fill; + this.groupFwUpdate.Location = new System.Drawing.Point(0, 0); + this.groupFwUpdate.Name = "groupFwUpdate"; + this.groupFwUpdate.Size = new System.Drawing.Size(462, 242); + this.groupFwUpdate.TabIndex = 0; + this.groupFwUpdate.Text = "Firmware Update"; + // + // layoutControl1 + // + this.layoutControl1.Controls.Add(this.btnLcdHistoryDelete); + this.layoutControl1.Controls.Add(this.btnReset); + this.layoutControl1.Controls.Add(this.btnDownload); + this.layoutControl1.Controls.Add(this.lbDownloadStatus); + this.layoutControl1.Controls.Add(this.btnFindFile); + this.layoutControl1.Controls.Add(this.teFilename); + this.layoutControl1.Controls.Add(this.progressDownload); + this.layoutControl1.Controls.Add(this.lbFilename); + this.layoutControl1.Controls.Add(this.lbDeviceInfo); + this.layoutControl1.Dock = System.Windows.Forms.DockStyle.Fill; + this.layoutControl1.Location = new System.Drawing.Point(2, 22); + this.layoutControl1.Name = "layoutControl1"; + this.layoutControl1.OptionsCustomizationForm.DesignTimeCustomizationFormPositionAndSize = new System.Drawing.Rectangle(756, 30, 250, 350); + this.layoutControl1.Root = this.layoutControlGroup1; + this.layoutControl1.Size = new System.Drawing.Size(458, 218); + this.layoutControl1.TabIndex = 0; + this.layoutControl1.Text = "layoutControl1"; + // + // btnLcdHistoryDelete + // + this.btnLcdHistoryDelete.Location = new System.Drawing.Point(3, 186); + this.btnLcdHistoryDelete.Name = "btnLcdHistoryDelete"; + this.btnLcdHistoryDelete.Size = new System.Drawing.Size(140, 29); + this.btnLcdHistoryDelete.StyleController = this.layoutControl1; + this.btnLcdHistoryDelete.TabIndex = 14; + this.btnLcdHistoryDelete.Text = "History Delete (LCD)"; + this.btnLcdHistoryDelete.Click += new System.EventHandler(this.btnLcdHistoryDelete_Click); + // + // btnReset + // + this.btnReset.Location = new System.Drawing.Point(354, 186); + this.btnReset.Name = "btnReset"; + this.btnReset.Size = new System.Drawing.Size(101, 29); + this.btnReset.StyleController = this.layoutControl1; + this.btnReset.TabIndex = 13; + this.btnReset.Text = "Reset"; + this.btnReset.Click += new System.EventHandler(this.btnReset_Click); + // + // btnDownload + // + this.btnDownload.Enabled = false; + this.btnDownload.Location = new System.Drawing.Point(366, 35); + this.btnDownload.Name = "btnDownload"; + this.btnDownload.Size = new System.Drawing.Size(89, 22); + this.btnDownload.StyleController = this.layoutControl1; + this.btnDownload.TabIndex = 12; + this.btnDownload.Text = "Update"; + this.btnDownload.Click += new System.EventHandler(this.btnDownload_Click); + // + // lbDownloadStatus + // + this.lbDownloadStatus.Appearance.TextOptions.HAlignment = DevExpress.Utils.HorzAlignment.Far; + this.lbDownloadStatus.AutoSizeMode = DevExpress.XtraEditors.LabelAutoSizeMode.None; + this.lbDownloadStatus.Location = new System.Drawing.Point(3, 102); + this.lbDownloadStatus.Name = "lbDownloadStatus"; + this.lbDownloadStatus.Size = new System.Drawing.Size(452, 80); + this.lbDownloadStatus.StyleController = this.layoutControl1; + this.lbDownloadStatus.TabIndex = 9; + this.lbDownloadStatus.Text = "None"; + // + // btnFindFile + // + this.btnFindFile.Location = new System.Drawing.Point(273, 35); + this.btnFindFile.Name = "btnFindFile"; + this.btnFindFile.Size = new System.Drawing.Size(89, 22); + this.btnFindFile.StyleController = this.layoutControl1; + this.btnFindFile.TabIndex = 8; + this.btnFindFile.Text = "Find..."; + this.btnFindFile.Click += new System.EventHandler(this.btnFindFile_Click); + // + // teFilename + // + this.teFilename.Location = new System.Drawing.Point(105, 35); + this.teFilename.Name = "teFilename"; + this.teFilename.Properties.Appearance.Font = new System.Drawing.Font("Tahoma", 9.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); + this.teFilename.Properties.Appearance.Options.UseFont = true; + this.teFilename.Size = new System.Drawing.Size(164, 22); + this.teFilename.StyleController = this.layoutControl1; + this.teFilename.TabIndex = 7; + // + // progressDownload + // + this.progressDownload.Location = new System.Drawing.Point(3, 61); + this.progressDownload.Name = "progressDownload"; + this.progressDownload.Size = new System.Drawing.Size(452, 37); + this.progressDownload.StyleController = this.layoutControl1; + this.progressDownload.TabIndex = 6; + // + // lbFilename + // + this.lbFilename.Location = new System.Drawing.Point(3, 35); + this.lbFilename.Name = "lbFilename"; + this.lbFilename.Size = new System.Drawing.Size(98, 22); + this.lbFilename.StyleController = this.layoutControl1; + this.lbFilename.TabIndex = 5; + this.lbFilename.Text = " Filename"; + // + // lbDeviceInfo + // + this.lbDeviceInfo.Location = new System.Drawing.Point(3, 3); + this.lbDeviceInfo.Name = "lbDeviceInfo"; + this.lbDeviceInfo.Size = new System.Drawing.Size(452, 28); + this.lbDeviceInfo.StyleController = this.layoutControl1; + this.lbDeviceInfo.TabIndex = 4; + this.lbDeviceInfo.Text = " Device Information"; + // + // layoutControlGroup1 + // + this.layoutControlGroup1.CustomizationFormText = "layoutControlGroup1"; + this.layoutControlGroup1.EnableIndentsWithoutBorders = DevExpress.Utils.DefaultBoolean.True; + this.layoutControlGroup1.GroupBordersVisible = false; + this.layoutControlGroup1.Items.AddRange(new DevExpress.XtraLayout.BaseLayoutItem[] { + this.layoutControlItem1, + this.layoutControlItem2, + this.layoutControlItem3, + this.emptySpaceItem1, + this.layoutControlItem4, + this.layoutControlItem5, + this.layoutControlItem6, + this.layoutControlItem9, + this.layoutControlItem7, + this.layoutControlItem8}); + this.layoutControlGroup1.Location = new System.Drawing.Point(0, 0); + this.layoutControlGroup1.Name = "layoutControlGroup1"; + this.layoutControlGroup1.Padding = new DevExpress.XtraLayout.Utils.Padding(1, 1, 1, 1); + this.layoutControlGroup1.Size = new System.Drawing.Size(458, 218); + this.layoutControlGroup1.Text = "layoutControlGroup1"; + this.layoutControlGroup1.TextVisible = false; + // + // layoutControlItem1 + // + this.layoutControlItem1.Control = this.lbDeviceInfo; + this.layoutControlItem1.CustomizationFormText = "layoutControlItem1"; + this.layoutControlItem1.Location = new System.Drawing.Point(0, 0); + this.layoutControlItem1.MinSize = new System.Drawing.Size(74, 18); + this.layoutControlItem1.Name = "layoutControlItem1"; + this.layoutControlItem1.Size = new System.Drawing.Size(456, 32); + this.layoutControlItem1.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem1.Text = "layoutControlItem1"; + this.layoutControlItem1.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem1.TextToControlDistance = 0; + this.layoutControlItem1.TextVisible = false; + // + // layoutControlItem2 + // + this.layoutControlItem2.Control = this.lbFilename; + this.layoutControlItem2.CustomizationFormText = "layoutControlItem2"; + this.layoutControlItem2.Location = new System.Drawing.Point(0, 32); + this.layoutControlItem2.MaxSize = new System.Drawing.Size(102, 0); + this.layoutControlItem2.MinSize = new System.Drawing.Size(102, 18); + this.layoutControlItem2.Name = "layoutControlItem2"; + this.layoutControlItem2.Size = new System.Drawing.Size(102, 26); + this.layoutControlItem2.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem2.Text = "layoutControlItem2"; + this.layoutControlItem2.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem2.TextToControlDistance = 0; + this.layoutControlItem2.TextVisible = false; + // + // layoutControlItem3 + // + this.layoutControlItem3.Control = this.progressDownload; + this.layoutControlItem3.CustomizationFormText = "layoutControlItem3"; + this.layoutControlItem3.Location = new System.Drawing.Point(0, 58); + this.layoutControlItem3.MinSize = new System.Drawing.Size(54, 16); + this.layoutControlItem3.Name = "layoutControlItem3"; + this.layoutControlItem3.Size = new System.Drawing.Size(456, 41); + this.layoutControlItem3.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem3.Text = "layoutControlItem3"; + this.layoutControlItem3.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem3.TextToControlDistance = 0; + this.layoutControlItem3.TextVisible = false; + // + // emptySpaceItem1 + // + this.emptySpaceItem1.AllowHotTrack = false; + this.emptySpaceItem1.CustomizationFormText = "emptySpaceItem1"; + this.emptySpaceItem1.Location = new System.Drawing.Point(144, 183); + this.emptySpaceItem1.MinSize = new System.Drawing.Size(104, 24); + this.emptySpaceItem1.Name = "emptySpaceItem1"; + this.emptySpaceItem1.Size = new System.Drawing.Size(207, 33); + this.emptySpaceItem1.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.emptySpaceItem1.Text = "emptySpaceItem1"; + this.emptySpaceItem1.TextSize = new System.Drawing.Size(0, 0); + // + // layoutControlItem4 + // + this.layoutControlItem4.Control = this.teFilename; + this.layoutControlItem4.CustomizationFormText = "layoutControlItem4"; + this.layoutControlItem4.Location = new System.Drawing.Point(102, 32); + this.layoutControlItem4.MaxSize = new System.Drawing.Size(0, 26); + this.layoutControlItem4.MinSize = new System.Drawing.Size(54, 26); + this.layoutControlItem4.Name = "layoutControlItem4"; + this.layoutControlItem4.Size = new System.Drawing.Size(168, 26); + this.layoutControlItem4.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem4.Text = "layoutControlItem4"; + this.layoutControlItem4.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem4.TextToControlDistance = 0; + this.layoutControlItem4.TextVisible = false; + // + // layoutControlItem5 + // + this.layoutControlItem5.Control = this.btnFindFile; + this.layoutControlItem5.CustomizationFormText = "layoutControlItem5"; + this.layoutControlItem5.Location = new System.Drawing.Point(270, 32); + this.layoutControlItem5.MinSize = new System.Drawing.Size(93, 26); + this.layoutControlItem5.Name = "layoutControlItem5"; + this.layoutControlItem5.Size = new System.Drawing.Size(93, 26); + this.layoutControlItem5.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem5.Text = "layoutControlItem5"; + this.layoutControlItem5.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem5.TextToControlDistance = 0; + this.layoutControlItem5.TextVisible = false; + // + // layoutControlItem6 + // + this.layoutControlItem6.Control = this.lbDownloadStatus; + this.layoutControlItem6.CustomizationFormText = "layoutControlItem6"; + this.layoutControlItem6.Location = new System.Drawing.Point(0, 99); + this.layoutControlItem6.MinSize = new System.Drawing.Size(74, 18); + this.layoutControlItem6.Name = "layoutControlItem6"; + this.layoutControlItem6.Size = new System.Drawing.Size(456, 84); + this.layoutControlItem6.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem6.Text = "layoutControlItem6"; + this.layoutControlItem6.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem6.TextToControlDistance = 0; + this.layoutControlItem6.TextVisible = false; + // + // layoutControlItem9 + // + this.layoutControlItem9.Control = this.btnDownload; + this.layoutControlItem9.CustomizationFormText = "layoutControlItem9"; + this.layoutControlItem9.Location = new System.Drawing.Point(363, 32); + this.layoutControlItem9.MinSize = new System.Drawing.Size(93, 26); + this.layoutControlItem9.Name = "layoutControlItem9"; + this.layoutControlItem9.Size = new System.Drawing.Size(93, 26); + this.layoutControlItem9.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem9.Text = "layoutControlItem9"; + this.layoutControlItem9.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem9.TextToControlDistance = 0; + this.layoutControlItem9.TextVisible = false; + // + // layoutControlItem7 + // + this.layoutControlItem7.Control = this.btnReset; + this.layoutControlItem7.CustomizationFormText = "layoutControlItem7"; + this.layoutControlItem7.Location = new System.Drawing.Point(351, 183); + this.layoutControlItem7.MinSize = new System.Drawing.Size(93, 26); + this.layoutControlItem7.Name = "layoutControlItem7"; + this.layoutControlItem7.Size = new System.Drawing.Size(105, 33); + this.layoutControlItem7.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem7.Text = "layoutControlItem7"; + this.layoutControlItem7.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem7.TextToControlDistance = 0; + this.layoutControlItem7.TextVisible = false; + // + // layoutControlItem8 + // + this.layoutControlItem8.Control = this.btnLcdHistoryDelete; + this.layoutControlItem8.CustomizationFormText = "layoutControlItem8"; + this.layoutControlItem8.Location = new System.Drawing.Point(0, 183); + this.layoutControlItem8.MinSize = new System.Drawing.Size(93, 26); + this.layoutControlItem8.Name = "layoutControlItem8"; + this.layoutControlItem8.Size = new System.Drawing.Size(144, 33); + this.layoutControlItem8.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem8.Text = "layoutControlItem8"; + this.layoutControlItem8.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem8.TextToControlDistance = 0; + this.layoutControlItem8.TextVisible = false; + // + // ucTftpClientcs + // + this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 14F); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.Controls.Add(this.groupFwUpdate); + this.Name = "ucTftpClientcs"; + this.Size = new System.Drawing.Size(462, 242); + ((System.ComponentModel.ISupportInitialize)(this.groupFwUpdate)).EndInit(); + this.groupFwUpdate.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.layoutControl1)).EndInit(); + this.layoutControl1.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.teFilename.Properties)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.progressDownload.Properties)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup1)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem1)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem2)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem3)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.emptySpaceItem1)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem4)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem5)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem6)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem9)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem7)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem8)).EndInit(); + this.ResumeLayout(false); + + } + + #endregion + + private DevExpress.XtraEditors.GroupControl groupFwUpdate; + private DevExpress.XtraLayout.LayoutControl layoutControl1; + private DevExpress.XtraLayout.LayoutControlGroup layoutControlGroup1; + private DevExpress.XtraEditors.SimpleButton btnFindFile; + private DevExpress.XtraEditors.TextEdit teFilename; + private DevExpress.XtraEditors.ProgressBarControl progressDownload; + private DevExpress.XtraEditors.LabelControl lbFilename; + private DevExpress.XtraEditors.LabelControl lbDeviceInfo; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem1; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem2; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem3; + private DevExpress.XtraLayout.EmptySpaceItem emptySpaceItem1; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem4; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem5; + private DevExpress.XtraEditors.LabelControl lbDownloadStatus; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem6; + private DevExpress.XtraEditors.SimpleButton btnDownload; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem9; + private DevExpress.XtraEditors.SimpleButton btnReset; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem7; + private DevExpress.XtraEditors.SimpleButton btnLcdHistoryDelete; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem8; + } +} diff --git a/LFP_Manager_PRM/Controls/ucTftpClientcs.cs b/LFP_Manager_PRM/Controls/ucTftpClientcs.cs new file mode 100644 index 0000000..d8f1fe4 --- /dev/null +++ b/LFP_Manager_PRM/Controls/ucTftpClientcs.cs @@ -0,0 +1,256 @@ +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Drawing; +using System.Data; +using System.Text; +using System.Linq; +using System.Windows.Forms; +using DevExpress.XtraEditors; + +using System.Threading; +using System.Net; +using System.IO; +using Tftp.Net; + +using LFP_Manager.Utils; +using LFP_Manager.DataStructure; + +namespace LFP_Manager.Controls +{ + public delegate void ResetEvent(object sender, int mode, UInt16 value); + + public partial class ucTftpClientcs : DevExpress.XtraEditors.XtraUserControl + { + #region CONST + + const string BMCB_FILE_NAME = "App.bin"; + const string mBMS_FILE_NAME = "mBMS_APP_DL.bin"; + + #endregion + + #region VARIABLES + + int ID = 0; + string hostIP = ""; + byte[] RbmsVersion; + string TarGetFileName = ""; + + int transferedBytes = 0; + + public event ResetEvent OnReset = null; + + #endregion + + #region CONSTRUCTOR + + public ucTftpClientcs() + { + InitializeComponent(); + + TarGetFileName = "APP.BIN"; + } + + #endregion + + #region RESET EVENT + + private void OnResetEvent(object sender, int mode, UInt16 value) + { + if (OnReset != null) + { + OnReset(sender, mode, value); + } + } + + #endregion + + #region INFORMATION UPDATE + + public void UpdateInfor(int sid, string IpAddr, byte[] fwVersion) + { + ID = sid; + hostIP = IpAddr; + RbmsVersion = fwVersion; + + lbDeviceInfo.Text = String.Format(" RBMS ID: {0} IP: {1}" + , sid + 1 + , hostIP + ); + } + + #endregion + + #region TFTP FUNCTION + + public void FwDownload(string host, string filename) + { + //Setup a TftpClient instance + TftpClient client = new TftpClient(host); + ITftpTransfer transfer = client.Upload(TarGetFileName); + + transfer.RetryTimeout = TimeSpan.FromMilliseconds(500); + transfer.RetryCount = 3; + transfer.TransferMode = TftpTransferMode.octet; + + //Capture the events that may happen during the transfer + transfer.OnProgress += new TftpProgressHandler(transfer_OnProgress); + transfer.OnFinished += new TftpEventHandler(transfer_OnFinshed); + transfer.OnError += new TftpErrorHandler(transfer_OnError); + + //Start the transfer and write the data that we're downloading into a memory stream + FileStream upLoadFile = new FileStream(teFilename.Text, FileMode.Open); + progressDownload.Properties.Maximum = (int)(upLoadFile.Length / 1024); + transfer.Start(upLoadFile); + } + + void transfer_OnProgress(ITftpTransfer transfer, TftpTransferProgress progress) + { + string msg = String.Format("Transfer running. Progress: " + progress); + transferedBytes = progress.TransferredBytes / 1024; + + TftpMsgProcess(msg, 0); + } + + void transfer_OnError(ITftpTransfer transfer, TftpTransferError error) + { + string msg = String.Format("Transfer failed: " + error); + + TftpMsgProcess(msg, 2); + } + + void transfer_OnFinshed(ITftpTransfer transfer) + { + string msg = String.Format("Transfer succeeded."); + + TftpMsgProcess(msg, 1); + } + + private void TftpMsgProcess(string msg, int msgType) + { + if (this.InvokeRequired) + { + this.Invoke(new MethodInvoker(delegate() + { + lbDownloadStatus.Text = msg; + if (msgType == 0) + { + // transfer progress + progressDownload.Position = transferedBytes; + } + else if (msgType == 1) + { + progressDownload.Position = transferedBytes; + MessageBox.Show(msg, "Result", MessageBoxButtons.OK, MessageBoxIcon.Information); + } + else if (msgType == 2) + { + MessageBox.Show(msg, "Result", MessageBoxButtons.OK, MessageBoxIcon.Error); + } + })); + } + else + { + lbDownloadStatus.Text = msg; + if (msgType == 0) + { + // transfer progress + progressDownload.Position = transferedBytes; + } + else if (msgType == 1) + { + progressDownload.Position = transferedBytes; + MessageBox.Show(msg, "Result", MessageBoxButtons.OK, MessageBoxIcon.Information); + } + else if (msgType == 2) + { + MessageBox.Show(msg, "Result", MessageBoxButtons.OK, MessageBoxIcon.Error); + } + } + } + + #endregion + + #region BUTTON EVENT + + private void btnFindFile_Click(object sender, EventArgs e) + { + OpenFileDialog fwOpenFile; + + fwOpenFile = new OpenFileDialog(); + + if (fwOpenFile.ShowDialog() == DialogResult.OK) + { + teFilename.Text = fwOpenFile.FileName; + + byte[] bName = csUtils.StringToByte(Path.GetFileName(teFilename.Text)); + if ((bName[0] == (byte)'B') + && (bName[1] == (byte)'M') + && (bName[2] == (byte)'C') + && (bName[3] == (byte)'B') + ) + { + TarGetFileName = BMCB_FILE_NAME; + } + else if ((bName[0] == (byte)'m') + && (bName[1] == (byte)'B') + && (bName[2] == (byte)'M') + && (bName[3] == (byte)'S') + ) + { + TarGetFileName = mBMS_FILE_NAME; + } + + if (TarGetFileName != "") + lbDownloadStatus.Text = TarGetFileName; + + btnDownload.Enabled = true; + } + } + + private void btnDownload_Click(object sender, EventArgs e) + { + if ((hostIP != "")&&(teFilename.Text != "")) + { + FwDownload(hostIP, teFilename.Text); + } + } + + #endregion + + #region RBMS RESET EVENT + + private void btnReset_Click(object sender, EventArgs e) + { + OnResetEvent(this, 6, csConstData.ResetFlag.SystemReset); + } + + private void btnLcdHistoryDelete_Click(object sender, EventArgs e) + { + OnResetEvent(this, 6, csConstData.ResetFlag.LcdHistoryDelete); + } + + public void Reset_Result(string result, bool error) + { + if (this.InvokeRequired) + { + this.Invoke(new MethodInvoker(delegate() + { + if (error) + MessageBox.Show(result, "Result", MessageBoxButtons.OK, MessageBoxIcon.Error); + else + MessageBox.Show(result, "Result", MessageBoxButtons.OK, MessageBoxIcon.Information); + })); + } + else + { + if (error) + MessageBox.Show(result, "Result", MessageBoxButtons.OK, MessageBoxIcon.Error); + else + MessageBox.Show(result, "Result", MessageBoxButtons.OK, MessageBoxIcon.Information); + } + } + + #endregion + } +} diff --git a/LFP_Manager_PRM/Controls/ucTftpClientcs.resx b/LFP_Manager_PRM/Controls/ucTftpClientcs.resx new file mode 100644 index 0000000..1af7de1 --- /dev/null +++ b/LFP_Manager_PRM/Controls/ucTftpClientcs.resx @@ -0,0 +1,120 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + \ No newline at end of file diff --git a/LFP_Manager_PRM/DB Schema/DB_SCHEMA_TABLE.sql b/LFP_Manager_PRM/DB Schema/DB_SCHEMA_TABLE.sql new file mode 100644 index 0000000..7a87222 --- /dev/null +++ b/LFP_Manager_PRM/DB Schema/DB_SCHEMA_TABLE.sql @@ -0,0 +1,132 @@ +/* + * ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ + * Table Name : TInventoryData + * Description : BMS Inventory Data + * createAt : 2020.12.02 + * createBy : JK.Woo + * ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ + */ +drop table if exists TInventoryData; +--drop sequence if exists inventory_data_seq; + +--create sequence inventory_data_seq start 1; + +create table TInventoryData +( + manufacture_date integer not null , + module_name varchar(20) null , + pcb_sn varchar(20) not null , + module_sn varchar(32) null , + create_date timestamp not null , + modify_date timestamp not null , + + primary key (pcb_sn, module_sn) +); +create index inventory_data_idx1 on TInventoryData (pcb_sn); +create index inventory_data_idx2 on TInventoryData (module_sn); + +/* + * ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ + * Table Name : TErrorLogTable + * Description : Error Message Log Table + * createAt : 2019.11.04 + * createBy : JK.Woo + * ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ + */ +drop table if exists TErrorLogTable; +--drop sequence if exists module_group_seq; + +--create sequence module_group_seq start 1; + +create table TErrorLogTable +( + create_date timestamp not null , + pcb_sn varchar(20) not null , + module_sn varchar(20) null , + PROCESS varchar(20) not null , + ERROR_TYPE varchar(100) not null , + ERROR_MSG varchar(200) not null +); + +/* + * ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ + * Table Name : TModuleValue + * Description : Battery Module Value and Status Table + * createAt : 2021.03.04 + * createBy : JK.Woo + * ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ + */ +drop table if exists TModuleValue; + +create table TModuleValue +( + create_date timestamp not null , + module_no integer not null , + pcb_sn varchar(20) null , + module_sn varchar(32) null , + comm_fail BOOLEAN null , + op_status integer null , + alarm_status integer null , + module_voltage float null , + module_current float null , + module_soc float null , + module_soh float null , + cell_voltage_01 float null , + cell_voltage_02 float null , + cell_voltage_03 float null , + cell_voltage_04 float null , + cell_voltage_05 float null , + cell_voltage_06 float null , + cell_voltage_07 float null , + cell_voltage_08 float null , + cell_voltage_09 float null , + cell_voltage_10 float null , + cell_voltage_11 float null , + cell_voltage_12 float null , + cell_voltage_13 float null , + cell_voltage_14 float null , + cell_voltage_15 float null , + cell_voltage_16 float null , + cell_voltage_17 float null , + cell_voltage_18 float null , + cell_voltage_19 float null , + cell_voltage_20 float null , + cell_voltage_21 float null , + cell_voltage_22 float null , + cell_voltage_23 float null , + cell_voltage_24 float null , + cell_voltage_25 float null , + cell_voltage_26 float null , + cell_voltage_27 float null , + cell_voltage_28 float null , + cell_voltage_29 float null , + cell_voltage_30 float null , + cell_voltage_31 float null , + cell_voltage_32 float null , + cell_voltage_33 float null , + cell_voltage_34 float null , + cell_voltage_35 float null , + cell_voltage_36 float null , + temperature_01 float null , + temperature_02 float null , + temperature_03 float null , + temperature_04 float null , + temperature_05 float null , + temperature_06 float null , + temperature_07 float null , + temperature_08 float null , + temperature_09 float null , + temperature_10 float null , + temperature_11 float null , + temperature_12 float null , + temperature_13 float null , + temperature_14 float null , + temperature_15 float null , + temperature_16 float null , + warning smallint null , + fault smallint null , + + primary key (module_sn) +); + +create index ModuleValue_data_idx1 on TModuleValue (create_date); diff --git a/LFP_Manager_PRM/DB Schema/LOG_DB_SCHEMA_TABLE.sql b/LFP_Manager_PRM/DB Schema/LOG_DB_SCHEMA_TABLE.sql new file mode 100644 index 0000000..4f667e5 --- /dev/null +++ b/LFP_Manager_PRM/DB Schema/LOG_DB_SCHEMA_TABLE.sql @@ -0,0 +1,84 @@ +/********************************** BATTERY VALUE TABLE **************************************************/ + +/* + * ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ + * Table Name : TModuleValue + * Description : Battery Module Value and Status Table + * createAt : 2021.03.04 + * createBy : JK.Woo + * ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ + */ +drop table if exists TModuleValue; + +create table TModuleValue +( + create_date timestamp not null , + module_no integer not null , + pcb_sn varchar(20) null , + module_sn varchar(32) null , + comm_fail BOOLEAN null , + op_status integer null , + alarm_status integer null , + module_voltage float null , + module_current float null , + module_soc float null , + module_soh float null , + cell_voltage_01 float null , + cell_voltage_02 float null , + cell_voltage_03 float null , + cell_voltage_04 float null , + cell_voltage_05 float null , + cell_voltage_06 float null , + cell_voltage_07 float null , + cell_voltage_08 float null , + cell_voltage_09 float null , + cell_voltage_10 float null , + cell_voltage_11 float null , + cell_voltage_12 float null , + cell_voltage_13 float null , + cell_voltage_14 float null , + cell_voltage_15 float null , + cell_voltage_16 float null , + cell_voltage_17 float null , + cell_voltage_18 float null , + cell_voltage_19 float null , + cell_voltage_20 float null , + cell_voltage_21 float null , + cell_voltage_22 float null , + cell_voltage_23 float null , + cell_voltage_24 float null , + cell_voltage_25 float null , + cell_voltage_26 float null , + cell_voltage_27 float null , + cell_voltage_28 float null , + cell_voltage_29 float null , + cell_voltage_30 float null , + cell_voltage_31 float null , + cell_voltage_32 float null , + cell_voltage_33 float null , + cell_voltage_34 float null , + cell_voltage_35 float null , + cell_voltage_36 float null , + temperature_01 float null , + temperature_02 float null , + temperature_03 float null , + temperature_04 float null , + temperature_05 float null , + temperature_06 float null , + temperature_07 float null , + temperature_08 float null , + temperature_09 float null , + temperature_10 float null , + temperature_11 float null , + temperature_12 float null , + temperature_13 float null , + temperature_14 float null , + temperature_15 float null , + temperature_16 float null , + warning smallint null , + fault smallint null , + + primary key (create_date, module_no) +); + +create index ModuleValue_data_idx1 on TModuleValue (create_date); diff --git a/LFP_Manager_PRM/DataStructure/csCanConstData.cs b/LFP_Manager_PRM/DataStructure/csCanConstData.cs new file mode 100644 index 0000000..2106b05 --- /dev/null +++ b/LFP_Manager_PRM/DataStructure/csCanConstData.cs @@ -0,0 +1,136 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; + +namespace LFP_Manager.DataStructure +{ + public static class csCanConstData + { + public static class CanDeviceInfo + { + public const int VCI_PCI5121 = 1; + public const int VCI_PCI9810 = 2; + public const int VCI_USBCAN1 = 3; + public const int VCI_USBCAN2 = 4; + public const int VCI_USBCAN2A = 4; + public const int VCI_PCI9820 = 5; + public const int VCI_CAN232 = 6; + public const int VCI_PCI5110 = 7; + public const int VCI_CANLITE = 8; + public const int VCI_ISA9620 = 9; + public const int VCI_ISA5420 = 10; + public const int VCI_PC104CAN = 11; + public const int VCI_CANETUDP = 12; + public const int VCI_CANETE = 12; + public const int VCI_DNP9810 = 13; + public const int VCI_PCI9840 = 14; + public const int VCI_PC104CAN2 = 15; + public const int VCI_PCI9820I = 16; + public const int VCI_CANETTCP = 17; + public const int VCI_PEC9920 = 18; + public const int VCI_PCI5010U = 19; + public const int VCI_USBCAN_E_U = 20; + public const int VCI_USBCAN_2E_U = 21; + public const int VCI_PCI5020U = 22; + public const int VCI_EG20T_CAN = 23; + public const int VCI_VALUE_CAN4_1 = 30; + + private static readonly string[] _deviceNames = new[] + { + "PCI5121", "PCI9810", "USBCAN1", "USBCAN2", "USBCAN2A", + "PCI9820", "CAN232", "PCI5110", "CANLITE", "ISA9620", + "ISA5420", "PC104CAN", "CANETUDP", "CANETE", "DNP9810", + "PCI9840", "PC104CAN2", "PCI9820I", "CANETTCP", "PEC9920", + "PCI5010U", "USBCAN_E_U", "USBCAN_2E_U", "PCI5020U", + "EG20T_CAN", "VALUE_CAN4-1" + }; + + private static readonly int[] _deviceIds = new[] + { + 1, 2, 3, 4, 4, 5, 6, 7, 8, 9, 10, 11, 12, 12, 13, 14, + 15, 16, 17, 18, 19, 20, 21, 22, 23, 30 + }; + + public static string[] DeviceNames => _deviceNames; + public static int[] DeviceIds => _deviceIds; + } + + public static class BaudRate + { + /// + /// CAN 통신 속도 (bps) + /// + private static readonly int[] _baudRateInts = new[] + { + 1000000, 800000, 500000, 250000, 125000, + 100000, 50000, 20000, 10000, 5000 + }; + + /// + /// CAN 통신 속도 설정값 + /// + private static readonly int[] _baudRates = new[] + { + 0x060003, // 1000Kbps + 0x060004, // 800Kbps + 0x060007, // 500Kbps + 0x1C0008, // 250Kbps + 0x1C0011, // 125Kbps + 0x160023, // 100Kbps + 0x1C002C, // 50Kbps + 0x1600B3, // 20Kbps + 0x1C00E0, // 10Kbps + 0x1C01C1 // 5Kbps + }; + + /// + /// USBCAN II 전용 통신 속도 설정값 (Timer 0 + Timer 1) + /// + private static readonly int[] _baudRatesOther = new[] + { + 0x0014, // 1000Kbps + 0x0016, // 800Kbps + 0x001C, // 500Kbps + 0x011C, // 250Kbps + 0x031C, // 125Kbps + 0x041C, // 100Kbps + 0x091C, // 50Kbps + 0x181C, // 20Kbps + 0x311C, // 10Kbps + 0xBFFF // 5Kbps + }; + + private static readonly string[] _baudRateStrings = new[] + { + "1000Kbps", "800Kbps", "500Kbps", "250Kbps", "125Kbps", + "100Kbps", "50Kbps", "20Kbps", "10Kbps", "5Kbps" + }; + + public static int[] BaudRateInts => _baudRateInts; + public static int[] BaudRates => _baudRates; + public static int[] BaudRatesOther => _baudRatesOther; + public static string[] BaudRateStrings => _baudRateStrings; + } + + public static class SendType + { + public const int Normal = 0; + public const int Single_Normal = 1; + public const int Loop_Back = 2; + public const int Single_Loop_Back = 3; + } + + public static class FrameType + { + public const int Standard = 0; + public const int Extended = 1; + } + + public static class FrameFormat + { + public const int Data_Frame = 0; + public const int Remote_Frame = 1; + } + } +} diff --git a/LFP_Manager_PRM/DataStructure/csConstData.cs b/LFP_Manager_PRM/DataStructure/csConstData.cs new file mode 100644 index 0000000..2835831 --- /dev/null +++ b/LFP_Manager_PRM/DataStructure/csConstData.cs @@ -0,0 +1,113 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; + +namespace LFP_Manager.DataStructure +{ + public static class csConstData + { + public static class SystemInfo + { + public const int MAX_MODULE_CELL_SIZE = 36; + public const int MAX_MODULE_TEMP_SIZE = 16; + public const int CELL_MAX_PER_IC = 18; + } + + public static class Unit + { + public const int CELL_DIV_P3 = 1000; + public const int CELL_DIV_P4 = 10000; + + public const string CELL_DIS_P3 = "{0:0.000}"; + public const string CELL_DIS_P4 = "{0:0.0000}"; + } + + public static class CommType + { + public const int COMM_SNMP = 0; + public const int COMM_UARTCAN = 1; + public const int COMM_USBCAN = 2; + + public static readonly string[] UartCAN_Speed = new[] + { + "9600", + "19200", + "38400", + "57600", + "115200", + "230400", + "460800", + }; + + public static readonly string[] UART_MODEL = new[] + { + "LFPS-48150", + }; + + public static readonly string[] CAN_MODEL = new[] + { + "PR-57150", + "PR-64150", + "LFPM-57080", + "PR-102150", + "PR-115300", + "PR-67150", + }; + } + + public static class ResetFlag + { + public const ushort SystemReset = 0x0001; + public const ushort LcdHistoryDelete = 0x0002; + } + + public static class CRC + { + private static readonly byte[] _auchCRCHi = + { + 0x00, 0xC1, 0x81, 0x40, 0x01, 0xC0, 0x80, 0x41, 0x01, 0xC0, 0x80, 0x41, 0x00, 0xC1, 0x81, + 0x40, 0x01, 0xC0, 0x80, 0x41, 0x00, 0xC1, 0x81, 0x40, 0x00, 0xC1, 0x81, 0x40, 0x01, 0xC0, + 0x80, 0x41, 0x01, 0xC0, 0x80, 0x41, 0x00, 0xC1, 0x81, 0x40, 0x00, 0xC1, 0x81, 0x40, 0x01, + 0xC0, 0x80, 0x41, 0x00, 0xC1, 0x81, 0x40, 0x01, 0xC0, 0x80, 0x41, 0x01, 0xC0, 0x80, 0x41, + 0x00, 0xC1, 0x81, 0x40, 0x01, 0xC0, 0x80, 0x41, 0x00, 0xC1, 0x81, 0x40, 0x00, 0xC1, 0x81, + 0x40, 0x01, 0xC0, 0x80, 0x41, 0x00, 0xC1, 0x81, 0x40, 0x01, 0xC0, 0x80, 0x41, 0x01, 0xC0, + 0x80, 0x41, 0x00, 0xC1, 0x81, 0x40, 0x00, 0xC1, 0x81, 0x40, 0x01, 0xC0, 0x80, 0x41, 0x01, + 0xC0, 0x80, 0x41, 0x00, 0xC1, 0x81, 0x40, 0x01, 0xC0, 0x80, 0x41, 0x00, 0xC1, 0x81, 0x40, + 0x00, 0xC1, 0x81, 0x40, 0x01, 0xC0, 0x80, 0x41, 0x01, 0xC0, 0x80, 0x41, 0x00, 0xC1, 0x81, + 0x40, 0x00, 0xC1, 0x81, 0x40, 0x01, 0xC0, 0x80, 0x41, 0x00, 0xC1, 0x81, 0x40, 0x01, 0xC0, + 0x80, 0x41, 0x01, 0xC0, 0x80, 0x41, 0x00, 0xC1, 0x81, 0x40, 0x00, 0xC1, 0x81, 0x40, 0x01, + 0xC0, 0x80, 0x41, 0x01, 0xC0, 0x80, 0x41, 0x00, 0xC1, 0x81, 0x40, 0x01, 0xC0, 0x80, 0x41, + 0x00, 0xC1, 0x81, 0x40, 0x00, 0xC1, 0x81, 0x40, 0x01, 0xC0, 0x80, 0x41, 0x00, 0xC1, 0x81, + 0x40, 0x01, 0xC0, 0x80, 0x41, 0x01, 0xC0, 0x80, 0x41, 0x00, 0xC1, 0x81, 0x40, 0x01, 0xC0, + 0x80, 0x41, 0x00, 0xC1, 0x81, 0x40, 0x00, 0xC1, 0x81, 0x40, 0x01, 0xC0, 0x80, 0x41, 0x01, + 0xC0, 0x80, 0x41, 0x00, 0xC1, 0x81, 0x40, 0x00, 0xC1, 0x81, 0x40, 0x01, 0xC0, 0x80, 0x41, + 0x00, 0xC1, 0x81, 0x40, 0x01, 0xC0, 0x80, 0x41, 0x01, 0xC0, 0x80, 0x41, 0x00, 0xC1, 0x81,0x40 + }; + + private static readonly byte[] _auchCRCLo = + { + 0x00, 0xC0, 0xC1, 0x01, 0xC3, 0x03, 0x02, 0xC2, 0xC6, 0x06, 0x07, 0xC7, 0x05, 0xC5, 0xC4, + 0x04, 0xCC, 0x0C, 0x0D, 0xCD, 0x0F, 0xCF, 0xCE, 0x0E, 0x0A, 0xCA, 0xCB, 0x0B, 0xC9, 0x09, + 0x08, 0xC8, 0xD8, 0x18, 0x19, 0xD9, 0x1B, 0xDB, 0xDA, 0x1A, 0x1E, 0xDE, 0xDF, 0x1F, 0xDD, + 0x1D, 0x1C, 0xDC, 0x14, 0xD4, 0xD5, 0x15, 0xD7, 0x17, 0x16, 0xD6, 0xD2, 0x12, 0x13, 0xD3, + 0x11, 0xD1, 0xD0, 0x10, 0xF0, 0x30, 0x31, 0xF1, 0x33, 0xF3, 0xF2, 0x32, 0x36, 0xF6, 0xF7, + 0x37, 0xF5, 0x35, 0x34, 0xF4, 0x3C, 0xFC, 0xFD, 0x3D, 0xFF, 0x3F, 0x3E, 0xFE, 0xFA, 0x3A, + 0x3B, 0xFB, 0x39, 0xF9, 0xF8, 0x38, 0x28, 0xE8, 0xE9, 0x29, 0xEB, 0x2B, 0x2A, 0xEA, 0xEE, + 0x2E, 0x2F, 0xEF, 0x2D, 0xED, 0xEC, 0x2C, 0xE4, 0x24, 0x25, 0xE5, 0x27, 0xE7, 0xE6, 0x26, + 0x22, 0xE2, 0xE3, 0x23, 0xE1, 0x21, 0x20, 0xE0, 0xA0, 0x60, 0x61, 0xA1, 0x63, 0xA3, 0xA2, + 0x62, 0x66, 0xA6, 0xA7, 0x67, 0xA5, 0x65, 0x64, 0xA4, 0x6C, 0xAC, 0xAD, 0x6D, 0xAF, 0x6F, + 0x6E, 0xAE, 0xAA, 0x6A, 0x6B, 0xAB, 0x69, 0xA9, 0xA8, 0x68, 0x78, 0xB8, 0xB9, 0x79, 0xBB, + 0x7B, 0x7A, 0xBA, 0xBE, 0x7E, 0x7F, 0xBF, 0x7D, 0xBD, 0xBC, 0x7C, 0xB4, 0x74, 0x75, 0xB5, + 0x77, 0xB7, 0xB6, 0x76, 0x72, 0xB2, 0xB3, 0x73, 0xB1, 0x71, 0x70, 0xB0, 0x50, 0x90, 0x91, + 0x51, 0x93, 0x53, 0x52, 0x92, 0x96, 0x56, 0x57, 0x97, 0x55, 0x95, 0x94, 0x54, 0x9C, 0x5C, + 0x5D, 0x9D, 0x5F, 0x9F, 0x9E, 0x5E, 0x5A, 0x9A, 0x9B, 0x5B, 0x99, 0x59, 0x58, 0x98, 0x88, + 0x48, 0x49, 0x89, 0x4B, 0x8B, 0x8A, 0x4A, 0x4E, 0x8E, 0x8F, 0x4F, 0x8D, 0x4D, 0x4C, 0x8C, + 0x44, 0x84, 0x85, 0x45, 0x87, 0x47, 0x46, 0x86, 0x82, 0x42, 0x43, 0x83, 0x41, 0x81, 0x80,0x40 + }; + + public static byte[] AuchCRCHi => _auchCRCHi; + public static byte[] AuchCRCLo => _auchCRCLo; + } + } +} diff --git a/LFP_Manager_PRM/DataStructure/csDataStructure.cs b/LFP_Manager_PRM/DataStructure/csDataStructure.cs new file mode 100644 index 0000000..f0b72a0 --- /dev/null +++ b/LFP_Manager_PRM/DataStructure/csDataStructure.cs @@ -0,0 +1,732 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Runtime.InteropServices; + +namespace LFP_Manager.DataStructure +{ + public class CommConfig + { + public string AppPath; + public string mSN; + + public int CommType; + + public int TargetModelIndex; + + public string SnmpIP; + public int SnmpModelIndex; + public int SnmpMdQty; + + public string UartPort; + public int UartBaudrate; + public int UartModelIndex; + + public int CanDevice; + public int CanIndex; + public int CanNo; + public int CanBaudrate; + + public int DbLogPeriod; + + public int CbTestGap; + public int CbTestTime; + + public CommConfig() + { + CommType = 0; + TargetModelIndex = 0; + SnmpIP = ""; + SnmpModelIndex = 0; + SnmpMdQty = 0; + UartPort = ""; + UartBaudrate = 0; + UartModelIndex = 0; + CanDevice = 0; + CanIndex = 0; + CanNo = 0; + CanBaudrate = 0; + + DbLogPeriod = 5; + + CbTestGap = 1500; + CbTestTime = 3000; + } + } + + public class TMinMax + { + public short value; + public short num; + + public TMinMax() + { + value = 0; + num = 0; + } + } + + public class DeviceSystemTotalData + { + public bool CommFail; + + public DeviceValueTotalData ValueData; + public DeviceStatusTotalData StatusData; + public DeviceAvgData AvgData; + + public DeviceSystemTotalData() + { + CommFail = false; + ValueData = new DeviceValueTotalData(); + StatusData = new DeviceStatusTotalData(); + AvgData = new DeviceAvgData(); + } + } + + public class DeviceSystemData + { + public int mNo; + public int cellQty; + public int tempQty; + public UInt32 heatbeat; + public int OneBuffTime; + public int AllBuffTime; + public bool CommFail; + public bool ShelfCommFail; + public DateTime LastRxTime; + + public DeviceValueData ValueData; + public DeviceAvgData AvgData; + public DeviceStatusData StatusData; + public DeviceParamData ParamData; + public DeviceCalibration CalibriationData; + + public DeviceInforation Information; + public DeviceSystemData() + { + mNo = 0; + heatbeat = 0; + OneBuffTime = 0; + AllBuffTime = 0; + CommFail = false; + ShelfCommFail = false; + LastRxTime = new DateTime(); + + ValueData = new DeviceValueData(); + AvgData = new DeviceAvgData(); + StatusData = new DeviceStatusData(); + ParamData = new DeviceParamData(); + CalibriationData = new DeviceCalibration(); + + Information = new DeviceInforation(); + } + } + + public class DeviceValueTotalData + { + public short TotalVoltage; + public short TotalCurrent; + public short TotalSOC; + public short TotalTemp; + + public DeviceValueTotalData() + { + TotalVoltage = 0; + TotalCurrent = 0; + TotalSOC = 0; + TotalTemp = 0; + } + } + + public class DeviceValueData + { + public byte[] fw_ver; + + public short voltageOfPack; + public short current; + public short averageCurrent; + public short rSOC; + + public ushort[] CellVoltage; + public short[] CellTemperature; + + public short CpuTemperature; + public short FetTemperature; + + public short remainingCapacity; + public short stateOfHealth; + public short cycleCount; + public short fullChargeCapacity; + public short designedCapacity; + public DeviceValueData() + { + fw_ver = new byte[4]; + + voltageOfPack = 0; + current = 0; + averageCurrent = 0; + rSOC = 0; + + CellVoltage = new ushort[csConstData.SystemInfo.MAX_MODULE_CELL_SIZE]; + CellTemperature = new short[csConstData.SystemInfo.MAX_MODULE_TEMP_SIZE]; + + CpuTemperature = 0; + FetTemperature = 0; + + remainingCapacity = 0; + stateOfHealth = 0; + cycleCount = 0; + fullChargeCapacity = 0; + designedCapacity = 0; + } + } + + public class DeviceAvgData + { + public ushort maxCellVoltage; + public ushort minCellVoltage; + public ushort avgCellVoltage; + public ushort diffCellVoltage; + public short maxCellNum; + public short minCellNum; + public short maxTemp; + public short minTemp; + public short avgTemp; + public short diffTemp; + public short maxTempNum; + public short minTempNum; + public DeviceAvgData() + { + maxCellVoltage = 0; + minCellVoltage = 0; + avgCellVoltage = 0; + diffCellVoltage = 0; + maxCellNum = 0; + minCellNum = 0; + maxTemp = 0; + minTemp = 0; + avgTemp = 0; + diffTemp = 0; + maxTempNum = 0; + minTempNum = 0; + } + } + + public class DeviceStatusTotalData + { + public short batteryStatus; + public short warning; + public short protect; + public short status; + + public DeviceStatusTotalData() + { + batteryStatus = 0; + warning = 0; + protect = 0; + status = 0; + } + } + + public class DeviceStatusData + { + public short batteryStatusA; + public short batteryStatusB; + public short warning; + public short protect; + public short protect1; + public short status; + public short alarm; + public short relayStatus; + public uint cellBallanceStatusLv; + public uint cellBallanceStatusHv; + public ushort cellBalanceValue; + + public uint BalanceEnable; + public uint BalanceMode; + + public short cellBalanceInterval; + public short cellBalanceEndGap; + public short cellBalanceFlag; + public DeviceStatusData() + { + batteryStatusA = 0; + batteryStatusB = 0; + warning = 0; + protect = 0; + protect1 = 0; + status = 0; + alarm = 0; + relayStatus = 0; + cellBallanceStatusLv = 0; + cellBallanceStatusHv = 0; + cellBalanceValue = 0; + cellBalanceInterval = 0; + cellBalanceEndGap = 0; + cellBalanceFlag = 0; + } + } + + public class DeviceCommStatus + { + public DateTime LastRxTime; + public bool CommFail; + public DeviceCommStatus() + { + LastRxTime = new DateTime(); + CommFail = false; + } + } + + public class DeviceParamData + { + public short CellOverVoltageTrip; + public short CellOverVoltageWarning; + public short CellOverVoltageRelease; + public short CellUnderVoltageTrip; + public short CellUnderVoltageWarning; + public short CellUnderVoltageRelease; + + public short SysOverVoltageTrip; + public short SysOverVoltageWarning; + public short SysOverVoltageRelease; + public short SysUnderVoltageTrip; + public short SysUnderVoltageWarning; + public short SysUnderVoltageRelease; + + public short ChaHighTempTrip; + public short ChaHighTempWarning; + public short ChaHighTempRelease; + public short ChaLowTempTrip; + public short ChaLowTempWarning; + public short ChaLowTempRelease; + public short DchHighTempTrip; + public short DchHighTempWarning; + public short DchHighTempRelease; + public short DchLowTempTrip; + public short DchLowTempWarning; + public short DchLowTempRelease; + + public short ChaOverCurrentTrip; + public short ChaOverCurrentWarning; + public short ChaOverCurrentRelease; + public short DchOverCurrentTrip; + public short DchOverCurrentWarning; + public short DchOverCurrentRelease; + + public short LowSocTrip; + public short LowSocWarning; + public short LowSocRelease; + + public short CellVoltageDifferenceTrip; + public short CellVoltageDifferenceWarning; + public short CellVoltageDifferenceRelease; + public short CellVoltageDifferenceTime; + + public short DefalutParamOption; + public short DefalutParamAll; + public DeviceParamData() + { + CellOverVoltageTrip = 0; + CellOverVoltageWarning = 0; + CellOverVoltageRelease = 0; + CellUnderVoltageTrip = 0; + CellUnderVoltageWarning = 0; + CellUnderVoltageRelease = 0; + + SysOverVoltageTrip = 0; + SysOverVoltageWarning = 0; + SysOverVoltageRelease = 0; + SysUnderVoltageTrip = 0; + SysUnderVoltageWarning = 0; + SysUnderVoltageRelease = 0; + + ChaHighTempTrip = 0; + ChaHighTempWarning = 0; + ChaHighTempRelease = 0; + ChaLowTempTrip = 0; + ChaLowTempWarning = 0; + ChaLowTempRelease = 0; + DchHighTempTrip = 0; + DchHighTempWarning = 0; + DchHighTempRelease = 0; + DchLowTempTrip = 0; + DchLowTempWarning = 0; + DchLowTempRelease = 0; + + ChaOverCurrentTrip = 0; + ChaOverCurrentWarning = 0; + ChaOverCurrentRelease = 0; + DchOverCurrentTrip = 0; + DchOverCurrentWarning = 0; + DchOverCurrentRelease = 0; + + LowSocTrip = 0; + LowSocWarning = 0; + LowSocRelease = 0; + + CellVoltageDifferenceTrip = 0; + CellVoltageDifferenceWarning = 0; + CellVoltageDifferenceRelease = 0; + CellVoltageDifferenceTime = 0; + + DefalutParamOption = 0; + DefalutParamAll = 0; + } + } + + public class DeviceCalibration + { + public CellVoltageCalib CellVoltge; + public SystemVoltageCalib SystemVoltage; + public ForcedBalControl ForcedBalancing; + public ForcedBalControl2 ForcedBalancing2; // For PR-57150 + public BatteryParameter Battery; + public CurrentCalib Current; + public SystemInfor SystemInfo; + public SocCalibration SocCalib; + public TCbParam CbParam; + + public DeviceInforation InvData; + + public short CellBalancingVoltage; + public short CellBalancingVoltageInterval; + public short CellBalancingVoltageEndGap; + + public DeviceCalibration() + { + CellVoltge = new CellVoltageCalib(); + SystemVoltage = new SystemVoltageCalib(); + ForcedBalancing = new ForcedBalControl(); + ForcedBalancing2 = new ForcedBalControl2(); // For PR-57150 + Battery = new BatteryParameter(); + Current = new CurrentCalib(); + SystemInfo = new SystemInfor(); + SocCalib = new SocCalibration(); + CbParam = new TCbParam(); + + InvData = new DeviceInforation(); + + CellBalancingVoltage = 0; + CellBalancingVoltageInterval = 0; + CellBalancingVoltageEndGap = 0; + } + public DeviceCalibration DeepCopy() + { + DeviceCalibration newCopy = new DeviceCalibration + { + CellVoltge = CellVoltge, + SystemVoltage = SystemVoltage, + ForcedBalancing = ForcedBalancing.DeepCopy(), + Battery = Battery, + Current = Current, + SystemInfo = SystemInfo, + SocCalib = SocCalib, + CbParam = CbParam.DeepCopy(), + + InvData = InvData, + + CellBalancingVoltage = CellBalancingVoltage, + CellBalancingVoltageInterval = CellBalancingVoltageInterval, + CellBalancingVoltageEndGap = CellBalancingVoltageEndGap, + }; + return newCopy; + } + + } + + public class DeviceInforation + { + public UInt32 ManufactureDate; + public byte[] pcb_sn; + public byte[] module_sn; + public DeviceInforation() + { + ManufactureDate = 0; + pcb_sn = new byte[16]; + module_sn = new byte[32]; + } + } + + public class CellVoltageCalib + { + public short CvOffsetLow; + public short CvOffsetHigh; + public CellVoltageCalib() + { + CvOffsetLow = 0; + CvOffsetHigh = 0; + } + } + + public class SystemVoltageCalib + { + public short Calibration_K; + public short Calibration_B; + public SystemVoltageCalib() + { + Calibration_K = 0; + Calibration_B = 0; + } + } + + public class ForcedBalControl + { + public short Control; + public short CellNo; + public bool AutoB; + public bool DCP; + public ForcedBalControl() + { + Control = 0; + CellNo = 0; + AutoB = false; + DCP = false; + } + public ForcedBalControl DeepCopy() + { + ForcedBalControl newCopy = new ForcedBalControl() + { + Control = Control, + CellNo = CellNo, + AutoB = AutoB, + DCP = DCP + }; + return newCopy; + } + } + + public class ForcedBalControl2 + { + public int Control; + public int CellNo; + public int Mode; + public int Enable; + public ForcedBalControl2() + { + Control = 0; + CellNo = 0; + Mode = 0; + Enable = 0; + } + public ForcedBalControl2 DeepCopy() + { + ForcedBalControl2 newCopy = new ForcedBalControl2() + { + Control = Control, + CellNo = CellNo, + Mode = Mode, + Enable = Enable + }; + return newCopy; + } + } + + public class BatteryParameter + { + public short CellQty; + public short TempQty; + public UInt32 Capacity; + public BatteryParameter() + { + CellQty = 0; + TempQty = 0; + Capacity = 0; + } + } + + public class CurrentCalib + { + public short SelectSubItem; + public short ShuntRange; + public short CurrentZero; + public short VoltageZero; + public Int32 Calibration_K; + public short ChaAndDchSelect; + public short ChargeOption; + public CurrentCalib() + { + SelectSubItem = 0; + ShuntRange = 0; + CurrentZero = 0; + VoltageZero = 0; + Calibration_K = 0; + ChaAndDchSelect = 0; + ChargeOption = 0; + } + } + + public class SystemInfor + { + //public short Id; + public DateTime devTime; + public UInt16 devAddr; + public SystemInfor() + { + devTime = new DateTime(); + devAddr = 0; + } + } + + public class SocCalibration + { + public short CellNo; + public short SocValue; + public SocCalibration() + { + CellNo = 0; + SocValue = 0; + } + } + + public class TCbParam + { + public short Threadhold; + public short Window; + public short Min; + public short Interval; + public TCbParam() + { + Threadhold = 0; + Window = 0; + Min = 0; + Interval = 0; + } + public TCbParam DeepCopy() + { + TCbParam newCopy = new TCbParam + { + Threadhold = Threadhold, + Window = Window, + Min = Min, + Interval = Interval + }; + return newCopy; + } + } + + public class DataFunction + { + public static void DataInit(ref DeviceSystemData sData, ref CommConfig sConfig) + { + sData.ShelfCommFail = true; + + switch (sConfig.TargetModelIndex) + { + case 0: // PR-57150 + sData.cellQty = 18; + sData.tempQty = 6; + break; + case 1: // PR-64150 + sData.cellQty = 20; + sData.tempQty = 8; + break; + case 2: // LFPM-57080 + sData.cellQty = 18; + sData.tempQty = 6; + break; + case 3: // PR-102150 + sData.cellQty = 32; + sData.tempQty = 8; + break; + case 4: // PR-115300 + sData.cellQty = 36; + sData.tempQty = 16; + break; + case 5: // PR-67150 + sData.cellQty = 21; + sData.tempQty = 8; + break; + default: + sData.cellQty = 18; + sData.tempQty = 6; + break; + } + + for (int j = 0; j < csConstData.SystemInfo.MAX_MODULE_CELL_SIZE; j++) + { + sData.ValueData.CellVoltage[j] = 0; + } + for (int j = 0; j < csConstData.SystemInfo.MAX_MODULE_TEMP_SIZE; j++) + { + sData.ValueData.CellTemperature[j] = 0; + } + sData.ValueData.voltageOfPack = 0; + sData.ValueData.current = 0; + sData.ValueData.rSOC = 0; + sData.AvgData.maxCellVoltage = 0; + sData.AvgData.minCellVoltage = 0; + sData.AvgData.avgCellVoltage = 0; + sData.AvgData.maxTemp = 0; + sData.AvgData.minTemp = 0; + sData.AvgData.avgTemp = 0; + sData.heatbeat = 0; + sData.StatusData.warning = 0; + sData.StatusData.protect = 0; + } + } + public class TCanTxBuff + { + private const int BuffMax = 4096; + public int InPos; + public int OutPos; + public TCanTRxData[] Buf; + public TCanTxBuff() + { + InPos = 0; + OutPos = 0; + Buf = new TCanTRxData[BuffMax]; + for (int i = 0; i < BuffMax; i++) + { + Buf[i] = new TCanTRxData(); + } + } + + public void PutBuff(TCanTRxData CanTxData) + { + if (CanTxData != null) + { + Buf[InPos++] = CanTxData.DeepCopy(); + InPos %= BuffMax; + } + } + public TCanTRxData GetBuff() + { + TCanTRxData result = null; + + if (InPos != OutPos) + { + result = Buf[OutPos++].DeepCopy(); + OutPos %= BuffMax; + } + return result; + } + } + public class TCanTRxData + { + public int type; + public UInt32 exid; + public byte[] data; + + public TCanTRxData() + { + type = 0; + exid = 0; + data = new byte[8]; + } + public TCanTRxData DeepCopy() + { + TCanTRxData newCopy = new TCanTRxData + { + exid = exid + }; + for (int i = 0; i < 8; i++) + { + newCopy.data[i] = data[i]; + } + return newCopy; + } + } + +} diff --git a/LFP_Manager_PRM/DataStructure/csDbConstData.cs b/LFP_Manager_PRM/DataStructure/csDbConstData.cs new file mode 100644 index 0000000..07d7057 --- /dev/null +++ b/LFP_Manager_PRM/DataStructure/csDbConstData.cs @@ -0,0 +1,67 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; + +namespace LFP_Manager.DataStructure +{ + class csDbConstData + { + public class DataBase + { + public static string FileName = @"\db\AlamrHistory.db"; + public static string TableName = "History"; + public static string CreateTable = + "CREATE TABLE " + TableName + " (" + + "HTime DateTime NOT NULL, " + + "model varchar(10), " + + "sno int, " + + "alarm_name varchar(20), " + + "alarm_code int, " + + "flag_name varchar(20), " + + "flag int, " + + "param1 float, " + + "param2 float, " + + ");"; + } + + public static readonly int ALARM_NAME_SIZE = 9; + + public class DB_ALARM + { + public static int CELL_UNDER_VOLTAGE = 0; + public static int CELL_OVER_VOLTAGE = 1; + public static int SYSTEM_UNDER_VOLTAGE = 2; + public static int SYSTEM_OVER_VOLTAGAE = 3; + public static int HIGH_TEMPERATURE = 4; + public static int LOW_TEMPERATURE = 5; + public static int CHARGE_OVER_CURRENT = 6; + public static int DISCHARGE_OVER_CURRENT = 7; + public static int LOW_SOC = 8; + + public static readonly string[] ALARM_NAME = + { + "CELL UNDER VOLTAGE", + "CELL OVER VOLTAGE", + "SYSTEM UNDER VOLTAGE", + "SYSTEM OVER VOLTAGAE", + "HIGH TEMPERATURE", + "LOW TEMPERATURE", + "CHARGE OVER CURRENT", + "DISCHARGE OVER CURRENT", + "LOW SOC", + }; + + public static int FLAG_RELEASE = 0; + public static int FLAG_WARNING = 1; + public static int FLAG_TRIP = 2; + + public static readonly string[] FLAG_NAME = + { + "RELEASE", + "WARNING", + "FAULT", + }; + } + } +} diff --git a/LFP_Manager_PRM/DataStructure/csSbCanLibConstData.cs b/LFP_Manager_PRM/DataStructure/csSbCanLibConstData.cs new file mode 100644 index 0000000..b930e93 --- /dev/null +++ b/LFP_Manager_PRM/DataStructure/csSbCanLibConstData.cs @@ -0,0 +1,203 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +using System.Runtime.InteropServices; + +namespace LFP_Manager.DataStructure +{ + /************************************* + Serial Info Struct + **************************************/ + [Serializable] + [StructLayout(LayoutKind.Sequential, Pack = 1)] + public struct SerialConfigInfo + { + public UInt32 Baudrate; + public byte data; + public byte parity; + public byte stop; + public byte flow; + } + + enum DataBits + { + Data8 = 8, + }; + + enum Parity + { + NoParity = 0, + EvenParity = 2, + OddParity = 3, + SpaceParity = 4, + MarkParity = 5 + }; + + enum StopBits + { + OneStop = 1, + TwoStop = 2 + }; + + enum FlowControl + { + NoFlowControl, + HardwareControl + }; + + enum SerialBaudRate + { + SerialBaud300 = 300, + SerialBaud600 = 600, + SerialBaud1200 = 1200, + SerialBaud2400 = 2400, + SerialBaud3600 = 3600, + SerialBaud4800 = 4800, + SerialBaud7200 = 7200, + SerialBaud9600 = 9600, + SerialBaud19200 = 19200, + SerialBaud38400 = 38400, + SerialBaud57600 = 57600, + SerialBaud115200 = 115200, + SerialBaud230400 = 230400, + SerialBaud460800 = 460800, + SerialBaud921600 = 921600, + SerialUnknownBaud = -1 + }; + + enum CANBaudRate + { + CANBaud20 = 20, + CANBaud50 = 50, + CANBaud100 = 100, + CANBaud125 = 125, + CANBaud200 = 200, + CANBaud250 = 250, + CANBaud300 = 300, + CANBaud500 = 500, + CANBaud800 = 800, + CANBaud1000 = 1000, + CANUnknownBaud = -1 + }; + +//public class csSbCanLibConstData +//{ +/************************************* + define +**************************************/ +//public bool ISDAR(byte x) +// { +// return (x & 0x01) != 0x00; +// } + +//public bool ISABOR(byte x) +// { +// return (x & 0x02) != 0x00; +//} + +//public void SETDAR(ref byte x) +// { +// x |= 0x01; +// } +//public void SETABOR(ref byte x) +//{ +// x |= 0x02; +//} + +//public const byte CR = 0x0D; + +////Error Code +//public const byte Invalid_Arg = 0x01; +//public const byte No_Error = 0x00; + +enum CAN_StructFormat + { + TX_STD_DATA = 0x14, + TX_STD_REMOTE = 0x15, + TX_EXT_DATA = 0x16, + TX_EXT_REMOTE = 0x17, + RX_STD_DATA = 0x04, + RX_STD_REMOTE = 0x05, + RX_EXT_DATA = 0x06, + RX_EXT_REMOTE = 0x07 + }; + + /************************************* + CAN Serial Struct + **************************************/ + [Serializable] + [StructLayout(LayoutKind.Sequential, Pack=1)] + public struct CAN_Struct + { + public byte Format; + public UInt32 ID; + public byte DLC; + [MarshalAs(UnmanagedType.ByValArray, SizeConst = 8)] + public byte[] DATA; + } + + /************************************* + CAN Info Struct + **************************************/ + [Serializable] + [StructLayout(LayoutKind.Sequential, Pack=1)] + public struct CANConfigInfo + { + public UInt32 Baudrate; + public UInt32 ID; + public UInt32 Mask; + public byte Spec; + public bool DAR; + public bool ABOR; + } + enum CANSpec + { + CAN_A = 3, //Max Standard CAN ID Length for ascii (0~7FF) + CAN_B = 8 //Max Extended CAN ID Length for ascii (0~1FFFFFFF) + }; + + /************************************* + Option Info Struct + **************************************/ + [Serializable] + [StructLayout(LayoutKind.Sequential, Pack = 1)] + public struct OptionInfo + { + public byte mode; + public byte delay; + public byte STD_D_Command_Header; + public byte STD_R_Command_Header; + public byte EXT_D_Command_Header; + public byte EXT_R_Command_Header; + } + public static class CAN_SerialCommandHeader + { + public static readonly char STD_DATA = 't'; + public static readonly char STD_REMOTE = 'T'; + public static readonly char EXT_DATA = 'e'; + public static readonly char EXT_REMOTE = 'E'; + }; //CS-CAN Default Serial Command Header + + /************************************* + CAN Error Info Struct + **************************************/ + [Serializable] + [StructLayout(LayoutKind.Sequential, Pack = 1)] + public struct CANErorrInfo + { + public byte TEC; // Transmit Error Count + public byte REC; // Receive Error Count + public byte LEC; // Last Error Count + public UInt32 StuffCount; // Stuff Error Count + public UInt32 FormCount; // Form Error Count + public UInt32 AckECount; // Ack Error Count + public UInt32 BitCount; // Bit Error Count + public UInt32 CRCCount; // CRC Error Count + + public byte errorInfo; // Erroe Status + } + //} +} diff --git a/LFP_Manager_PRM/Form1.Designer.cs b/LFP_Manager_PRM/Form1.Designer.cs new file mode 100644 index 0000000..24932dc --- /dev/null +++ b/LFP_Manager_PRM/Form1.Designer.cs @@ -0,0 +1,47 @@ +namespace snmp_sim +{ + partial class fmMain + { + /// + /// Required designer variable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Clean up any resources being used. + /// + /// true if managed resources should be disposed; otherwise, false. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Windows Form Designer generated code + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + this.SuspendLayout(); + // + // fmMain + // + this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 12F); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.ClientSize = new System.Drawing.Size(284, 262); + this.Name = "fmMain"; + this.Text = "Form1"; + this.ResumeLayout(false); + + } + + #endregion + } +} + diff --git a/LFP_Manager_PRM/Form1.cs b/LFP_Manager_PRM/Form1.cs new file mode 100644 index 0000000..9a387a9 --- /dev/null +++ b/LFP_Manager_PRM/Form1.cs @@ -0,0 +1,19 @@ +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Data; +using System.Drawing; +using System.Linq; +using System.Text; +using System.Windows.Forms; + +namespace snmp_sim +{ + public partial class fmMain : Form + { + public fmMain() + { + InitializeComponent(); + } + } +} diff --git a/LFP_Manager_PRM/Form1.resx b/LFP_Manager_PRM/Form1.resx new file mode 100644 index 0000000..19dc0dd --- /dev/null +++ b/LFP_Manager_PRM/Form1.resx @@ -0,0 +1,120 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + \ No newline at end of file diff --git a/LFP_Manager_PRM/Forms/fmCalibration.Designer.cs b/LFP_Manager_PRM/Forms/fmCalibration.Designer.cs new file mode 100644 index 0000000..5c8ea48 --- /dev/null +++ b/LFP_Manager_PRM/Forms/fmCalibration.Designer.cs @@ -0,0 +1,152 @@ +namespace LFP_Manager.Forms +{ + partial class fmxCalibration + { + /// + /// Required designer variable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Clean up any resources being used. + /// + /// true if managed resources should be disposed; otherwise, false. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Windows Form Designer generated code + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + this.components = new System.ComponentModel.Container(); + System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(fmxCalibration)); + this.layoutControl1 = new DevExpress.XtraLayout.LayoutControl(); + this.layoutControlGroup1 = new DevExpress.XtraLayout.LayoutControlGroup(); + this.ucCalibration1 = new LFP_Manager.Controls.ucCalibration(); + this.layoutControlItem1 = new DevExpress.XtraLayout.LayoutControlItem(); + this.btnClose = new DevExpress.XtraEditors.SimpleButton(); + this.layoutControlItem2 = new DevExpress.XtraLayout.LayoutControlItem(); + this.tmrDisplay = new System.Windows.Forms.Timer(this.components); + ((System.ComponentModel.ISupportInitialize)(this.layoutControl1)).BeginInit(); + this.layoutControl1.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup1)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem1)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem2)).BeginInit(); + this.SuspendLayout(); + // + // layoutControl1 + // + this.layoutControl1.Controls.Add(this.btnClose); + this.layoutControl1.Controls.Add(this.ucCalibration1); + this.layoutControl1.Dock = System.Windows.Forms.DockStyle.Fill; + this.layoutControl1.Location = new System.Drawing.Point(0, 0); + this.layoutControl1.Name = "layoutControl1"; + this.layoutControl1.OptionsCustomizationForm.DesignTimeCustomizationFormPositionAndSize = new System.Drawing.Rectangle(668, 306, 250, 350); + this.layoutControl1.Root = this.layoutControlGroup1; + this.layoutControl1.Size = new System.Drawing.Size(612, 485); + this.layoutControl1.TabIndex = 0; + this.layoutControl1.Text = "layoutControl1"; + // + // layoutControlGroup1 + // + this.layoutControlGroup1.CustomizationFormText = "layoutControlGroup1"; + this.layoutControlGroup1.EnableIndentsWithoutBorders = DevExpress.Utils.DefaultBoolean.True; + this.layoutControlGroup1.GroupBordersVisible = false; + this.layoutControlGroup1.Items.AddRange(new DevExpress.XtraLayout.BaseLayoutItem[] { + this.layoutControlItem1, + this.layoutControlItem2}); + this.layoutControlGroup1.Location = new System.Drawing.Point(0, 0); + this.layoutControlGroup1.Name = "layoutControlGroup1"; + this.layoutControlGroup1.Size = new System.Drawing.Size(612, 485); + this.layoutControlGroup1.Text = "layoutControlGroup1"; + this.layoutControlGroup1.TextVisible = false; + // + // ucCalibration1 + // + this.ucCalibration1.Location = new System.Drawing.Point(12, 12); + this.ucCalibration1.Name = "ucCalibration1"; + this.ucCalibration1.Size = new System.Drawing.Size(588, 423); + this.ucCalibration1.TabIndex = 4; + // + // layoutControlItem1 + // + this.layoutControlItem1.Control = this.ucCalibration1; + this.layoutControlItem1.CustomizationFormText = "layoutControlItem1"; + this.layoutControlItem1.Location = new System.Drawing.Point(0, 0); + this.layoutControlItem1.MinSize = new System.Drawing.Size(104, 24); + this.layoutControlItem1.Name = "layoutControlItem1"; + this.layoutControlItem1.Size = new System.Drawing.Size(592, 427); + this.layoutControlItem1.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem1.Text = "layoutControlItem1"; + this.layoutControlItem1.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem1.TextToControlDistance = 0; + this.layoutControlItem1.TextVisible = false; + // + // btnClose + // + this.btnClose.Location = new System.Drawing.Point(12, 439); + this.btnClose.Name = "btnClose"; + this.btnClose.Size = new System.Drawing.Size(588, 34); + this.btnClose.StyleController = this.layoutControl1; + this.btnClose.TabIndex = 5; + this.btnClose.Text = "Close"; + this.btnClose.Click += new System.EventHandler(this.btnClose_Click); + // + // layoutControlItem2 + // + this.layoutControlItem2.Control = this.btnClose; + this.layoutControlItem2.CustomizationFormText = "layoutControlItem2"; + this.layoutControlItem2.Location = new System.Drawing.Point(0, 427); + this.layoutControlItem2.MinSize = new System.Drawing.Size(93, 26); + this.layoutControlItem2.Name = "layoutControlItem2"; + this.layoutControlItem2.Size = new System.Drawing.Size(592, 38); + this.layoutControlItem2.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem2.Text = "layoutControlItem2"; + this.layoutControlItem2.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem2.TextToControlDistance = 0; + this.layoutControlItem2.TextVisible = false; + // + // tmrDisplay + // + this.tmrDisplay.Interval = 500; + this.tmrDisplay.Tick += new System.EventHandler(this.tmrDisplay_Tick); + // + // fmxCalibration + // + this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 14F); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.ClientSize = new System.Drawing.Size(612, 485); + this.Controls.Add(this.layoutControl1); + this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon"))); + this.Name = "fmxCalibration"; + this.Text = "Calibration"; + ((System.ComponentModel.ISupportInitialize)(this.layoutControl1)).EndInit(); + this.layoutControl1.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup1)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem1)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem2)).EndInit(); + this.ResumeLayout(false); + + } + + #endregion + + private DevExpress.XtraLayout.LayoutControl layoutControl1; + private DevExpress.XtraLayout.LayoutControlGroup layoutControlGroup1; + private DevExpress.XtraEditors.SimpleButton btnClose; + private Controls.ucCalibration ucCalibration1; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem1; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem2; + private System.Windows.Forms.Timer tmrDisplay; + } +} \ No newline at end of file diff --git a/LFP_Manager_PRM/Forms/fmCalibration.cs b/LFP_Manager_PRM/Forms/fmCalibration.cs new file mode 100644 index 0000000..a829f6e --- /dev/null +++ b/LFP_Manager_PRM/Forms/fmCalibration.cs @@ -0,0 +1,79 @@ +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Data; +using System.Drawing; +using System.Text; +using System.Linq; +using System.Windows.Forms; +using DevExpress.XtraEditors; + +using LFP_Manager.DataStructure; +using LFP_Manager.Function; +using LFP_Manager.Controls; + +namespace LFP_Manager.Forms +{ + public delegate void CalibUpdateEvent(object sendor); + public delegate void CalibCmdEvent(int sId, int mode, int flag, DeviceParamData aParam, DeviceCalibration aCalib); + + public partial class fmxCalibration : DevExpress.XtraEditors.XtraForm + { + #region VARIABLES + + int SystemId = 0; + DeviceParamData Param; + DeviceCalibration Calib; + + public event CalibUpdateEvent OnUpdate = null; + public event CalibCmdEvent OnCommand = null; + + #endregion + + #region CONSTRUCTORS + + public fmxCalibration() + { + InitializeComponent(); + } + + public fmxCalibration(int sId, DeviceCalibration aCalib) + { + InitializeComponent(); + + SystemId = sId; + Calib = aCalib; + + tmrDisplay.Enabled = true; + } + + #endregion + + private void btnClose_Click(object sender, EventArgs e) + { + Close(); + } + + #region TIMER EVENT + + private void tmrDisplay_Tick(object sender, EventArgs e) + { + if (OnUpdate != null) + { + OnUpdate(this); + } + } + + #endregion + + #region PUBLIC FUCTIONS + + public void UpdateData(DeviceParamData aParam, DeviceCalibration aCalib) + { + Param = aParam; + Calib = aCalib; + } + + #endregion + } +} \ No newline at end of file diff --git a/LFP_Manager_PRM/Forms/fmCalibration.resx b/LFP_Manager_PRM/Forms/fmCalibration.resx new file mode 100644 index 0000000..53cd17e --- /dev/null +++ b/LFP_Manager_PRM/Forms/fmCalibration.resx @@ -0,0 +1,4574 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + 17, 17 + + + + + AAABAAQAICAAAAEAGACoDAAARgAAADAwAAABABgAqBwAAO4MAACAgAAAAQAYACjIAACWKQAAAAAAAAEA + GAAoIAMAvvEAACgAAAAgAAAAQAAAAAEAGAAAAAAAgAwAAAAAAAAAAAAAAAAAAAAAAAD///////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + ///////////////////////////////////////////////////+/v7+/v7+/v7+/v7+/v7+/v7+/v7/ + ///+/v7////////////////////////////////////////////////////////+/v7+/v7+/v7+/v7+ + /v7+/v7+/v7+/v7+/v7////+/v7+/v3+/v3+/v3+/v7+/f3////////+/v7///////////////////// + ///////////////////////////+/v7////+/v7+/f3+/v7+/v3+/v3+/v3+/v7////7+ff///////// + ///////////////+/v3+/v7////+/v7////////////////////////////////////////+/v7////+ + /v7+/v7////////////////////////7+PbCnHejazCkbTKkbDKlbjSdYTDLrIr////9/Pz+/v7///// + ///////////////////////////////////////////+/v79/fz////BnHSeYjClbjSkbDKkbDOjazDc + x7L49PGkbDKEOACKQwCJQQCHPgCNRwTt49n+/v39/Pz+/v7+/v7///////////////////////////// + ///+/v7+/v79/Pv//v7j0sKHPgCJQACJQQCLRACCNgCufkv////////q3tKOSQePSgSPSwKRTQSHPgCt + e0f////9/Pv+/v7////////////////////////////////+/v7////9/f39/Pv9/PuiaS6JQQCQTQOP + SwKNSAOUUxLz7ef+/f37+Pb////AmnKGOwCQTAKOSQCPSwKHPwDaxa7////8+/r+/v7+/v7///////// + ///////////+/v7///7+/v77+vj////OsJGGPACQTAKOSQCQTAKGPADNr4/////7+ff9/Pv9/fz38u6Z + WhuLQwCPSgGPSgGLRQGcXyH59vP9/fz9/fz////+/v7////////+/v7+/v7////+/v77+vn////u5NqS + Tw+OSAKOSQCPSwKJQACiai/8+vn9/Pz9/f3+///9/Pv////WvqWHPQCQTAOOSQCQTQOGPADDn3j////8 + +/r+/v7////+/v7+/v7+/v79/fz8+/r9/f3////u49mdYSiKQwCPSwGOSQCPSwKKQgDi0L/////9/Pv+ + /v7//v7+/v79/Pz///+seUOIPwCQTAKOSQCOSQKNSAbq39P+/v39/Pz+/v7////////////////////+ + /v7SuJ6WVRiLRQCRTwaQTASSUAeHPgC4jV7////9/Pv+/v7////+/v7+/v79/Pz+/v7r39SOSQeOSgKO + SQCQSwKHPwCsekT+/v/9/Pz+/v78+/r49PDy6uPi0cDDn3yZXB9/MACEOACHPgCGOwCFPACEOgCTURDz + 7Ob9/fz9/f3////+/v7////////+/v78+/r////CnneGPACQTAKOSQCQTAKHPgDYwan////9/Pz38u7o + 2szgzbvTuZ/MrY/St5zeyrTcyLLcx7Hcx7HdybPVvKfl1cX////9/fz+/v7+/v7////////+/v7////9 + /f39/Pz59fObXiCKQwCPSgGPSgGLRAGaXB349PH9/fz+/v/////////////////28e3AmnrEn3rDn3nE + oXu+lnbcxrD////9/Pv+/v7////////////////////+/v7+/v79/Pv////bxa+HPgCPSwKOSQCQTAKG + PADAmnH////8+/r9/fz9/Pv7+ff9/Purd0F/MACGOwCFOgCEOQCEOADj0sH+/fz9/Pz+/v7+/v7///// + ///////////////////+/v79/Pz///+ufkqHPgCQTAKOSQCOSgKNRwPp3M/+/v79/Pv8+/r////YwaqH + PgCSTwaQTAOSTwaHPgDDn3n////9/Pv+/v7////////////////////////////+/v7+/v79/Pz+/v7t + 4tiNSAaNSAKOSQCQTAKJQQCqd0D+/v79/Pv9/fz49fKbXyCMRQGPSwGPSgGLRAGYWRn38+/9/fz9/f3/ + ///+/v7///////////////////////////////7+/v79/Pv////EoHqFOwCQTQOOSQCQTQOHPwDUu6H/ + ///////Dn3iGPQCQTQOOSQCQTAOGPQDWvaT////9/Pv+/v7+/v7///////////////////////////// + ///+/v7////9/f39/Pv59vScYCOLRQGPSwKPSgGMRQGWVhf7+ffu5duNSAaOSQKOSQCQTAKJQQCqd0D+ + /v79+/r+/v7////////////////////////////////////////////+/v7+/v78+/r////cx7GJQgCQ + TAOOSQCQTAKFOwC/mXKzhVSGPACQTAKOSQCPSgKOSQfq3dH////9/Pv+/v7+/v7///////////////// + ///////////////////////////////+/v79/Pv///+wgU6HPgCQSwKOSQCPSgGMRgCMRwCPSgCOSQCQ + TAKGPADAmnH////9/Pr+/v7////////////////////////////////////////////////////+/v7+ + /v79/Pz+/v3u5NuPSwmNRwGOSQCPSgCPSwGPSgGPSQCPSgGLRACYWRn38u79/fz9/fz///7+/v7///// + ///////////////////////////////////////////////////+/v79/Pv////HpoKFOwCQTQOOSQCP + SgCPSgCOSQCQTAOGPQDVvaP////9/Pv+/v7+/v7///////////////////////////////////////// + ///////////////+/v7////9/f39/fz7+fefZSiIQACOSQCNRwCNRwCOSQCGPQCrd0H+///9/fz+/v7/ + ///////////////////////////////////////////////////////////////////+/v7+/v79/Pv/ + ///fzLmSTxWXWBWWVhSWVhSWVhSWVRrq3dH////9/Pz+/v7+/v7///////////////////////////// + ///////////////////////////////////////////+/v7+/v7////38+728e328e328e328Oz49fD/ + ///+/v7+/v7///////////////////////////////////////////////////////////////////// + ///////+/v7////////+/v3////////////////////////+/v3////////+/v7///////////////// + ///////////////////////////////////////////////////////////+/v7////+/v7+/v7+/v7+ + /v7+/v7+/v7+/v7+/v7////+/v7///////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAACgAAAAwAAAAYAAAAAEAGAAAAAAAgBwAAAAAAAAAAAAAAAAAAAAAAAD///////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + ///////////////////+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7////+/v7+/v7///////// + ///////////////////////////////////////////////////////////////////////////////+ + /v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7///////////////////////////// + /////////v7+/v7///////////////////////////////////////////////////////////////// + ///////////////////////////+/v7////////+/v7///////////////////////////////////// + ///38u38+vn8+vj8+vj8+vj8+vj8+vj8+vj7+ff////+/v3+/v7+/v7+/v7///////////////////// + ///////////////////////////////////////////////////////////////+/v7+/v7+/v7////7 + +ff8+vj8+vj8+vj8+vj8+vj8+vj7+ff59fK7kmmbXh+cXyCcXyCcXyCcXyCbXyCdYSGWVR3Fon3////9 + /Pz+/v7///////////////////////////////////////////////////////////////////////// + ///////+/v7+/v79/f39/fz///+1iFqXVx2cYCGcXyCcXyCcXyCcXyCbXiCcYCPn2Mv7+fencTqDOACM + RgCLRACLRACLRACLRACKQwCMRQLq3tL////9/Pz+/v7///////////////////////////////////// + ///////////////////////////////////////////+/v79/Pz////Zw6uGOwCMRQCLRACLRACLRACL + QwCNRwCCNQC4jmH////////r39SNRwWOSgOOSgGPSgGPSgGPSgGQTAOIPwCpdD3////9/fz9/f3////+ + /v7////////////////////////////////////////////////////////////////+/v7+/v79/f3+ + /f359vOZWxyLRACQSwKPSgGPSgGPSgGPSgGMRQKXWBn49PD+/fz8+vn////BnHWFOgCQTAGOSQCPSgCP + SgCOSQCPTAKFOwDVvaT////9/Pv+/v7///////////////////////////////////////////////// + ///////////////////////+/v79/Pv////BnXaEOgCQTAKOSQCPSgCPSgCOSQCPSwGGOwDVvKL////8 + +/r9/Pz9/f349fKZXB2KQwCPSgGOSQCOSQCOSQCPSgGLRAGXWBj38+/+/f39/f3+/v7+/v7///////// + /////////////////////////////////////////////////v7+/v79/fz+/v7r39SMRwWNSAGOSQCO + SQCOSgCOSQCPSwGHPgCpdT7////9/Pz+/f3+/v79/Pv////YwquGPACPSwGOSQCPSgCPSgCOSQCQTAGF + OgC+l23////9/fz+/v7////+/v7////////////////////////////////////////////////+/v7+ + ///9/f39/Pv///+qdkGHPQCPSwGOSQCPSgCPSgCOSQCOSAGLRALp3dH////9/Pv+/v7+/v7+/f39/fz/ + //+se0aHPgCQTAKOSQCPSgCPSgCOSQCOSQKLRALn2s3//v79/Pz+/v7///////////////////////// + ///////////////////+/v7+/v7////+/v78+vn////Rt5qGPACQSwKOSQCPSgCPSgCOSQCQTAKFOwC/ + mXL////9/Pz+/v7////////+/v79/fz///7s4deNSAeNSAGOSQCOSQCOSQCOSQCQSwKHPgCnczv+/v79 + /Pz9/f3+/v7+/v7////////////////////////////+/v7+/v7////////9/f38+/r////j08KNSQiN + RgGOSgCOSQCOSQCOSQCPSgCLRACYWhv48/D+/f39/f3+/v7+/v7+/v7////+/v79/Pz////Dn3qFOgCQ + TAGOSQCPSgCPSgCOSQCQSwGGPADSuJ3////9/Pz+/v7////////////////////////+/v7+/v7///// + ///+/v79/Pv////////cx7KPTA2LRQCPSgCOSQCPSgCPSgCOSQCPSwGGPADWvqb////9/Pz+/v7///// + ///////////+/v79/f3+/f359/SbXiCKQgCPSgGOSQCOSQCOSQCPSgCLRQCVVBT18Oz+/f39/fz+/v7+ + /v7////+/v7+/v7+/v7+/v7+/f39/Pz9/Pv////////49PC/mHSKQgCMRQCPSgCOSQCPSgCPSgCOSQCQ + TAKGPQCreEL////9/Pz9/f3+/v7+/v7////////////////+/v79/Pv////axK6FPACPSwKOSQCPSgCP + SgCOSQCQTAKEOQC8lGn////9/Pv+/v7////////////////////////////////////49fLQs5ibXyWH + PgCPSwKQTQOQSwKQTAOQTAKQTAKPSwOOSgOMRQPq3tP////9/Pz+/v7////////////////////+/v7/ + ///+/v39/Pz///+vf0uHPgCQSwGOSQCOSgCPSgCOSQCOSQGLRAHm18n////9/fz+/v7////+/v36+Pb5 + 9fLz7ejo2s3RtpuwgFCNRwN9LQCCNQCHPgCGOwCFOwCGOwCGOwCGOwCFOwCGPAB/MADCnnj////9/Pz+ + /v7////+/v7////////////////////+/v7+/v79/fz///7v5t6PSgiNRwGOSQCPSgCOSQCOSQCPSwGJ + QAClbjX+/f39/f39/f3//v769/XfzbjZw67QtJrEoX67kmq6kGa/mXLDn3rEoHzEoHvEoHvEoHvEoHvE + oHvEoHvDoHvDnnvEoH369/X+/v79/f3+/v7+/v7////////////////////////////////+/v79/Pv/ + ///GpICFOgCQTAKOSQCPSgCPSgCOSQCQTAKGPADQtJf////9/Pz+/v7///////////////////////// + ///////////////////////////////////////////////////////+/v7+//////////////////// + ///////////////////+/v7+/v79/f3+/f36+PadYiSKQwCPSgCOSQCOSQCOSQCPSgGMRgGUVBP07uj+ + /v39/fz+/v7+/v7+/v3+/f39/fz9/Pv7+vj+/f3cyLSXVyGcYCKcXyCcXyCcXyCcXyCdYSKUUxzDn3z9 + /Pz9/Pz9/f3////+/v7////////////////////////////////////////+/v79/Pz////cx7KHPwCP + SgGOSQCPSgCPSgCOSQCQTAKGPAC5kGP////9/Pv+/v7//v7+/v7+/v7+/v79/f39/fz7+feeYyaGPACL + RQCLRACLRACLRACLRACIQACQTAnw59/+/v79/f3+/v7+/v7///////////////////////////////// + ///////+/v7///79/f39/Pv///+xglCGPACQSwGOSQCPSgCOSQCOSQCOSQGKQgDk1MT////9/fz+/v7/ + ///////+/v79/Pz////HpoOFOgCQTAKOSgCPSgGPSgGOSgGQTAKFOwDPs5b////9/Pv+/v7///////// + ///////////////////////////////////////////+/v/+/v79/Pz+/v7w59+PSgiMRgGOSgCPSgCP + SgCOSQCPSwGIQACiajD+/f39/f39/f3///7+/v79/fz+/v7w6OCPSgmNRwGOSQCOSQCOSQCOSQCPSwKI + PwCiaS79/fz9/fz9/f3+/v7+/v7///////////////////////////////////////////////////7/ + ///+/v79/Pv////Ip4WFOgCQTAKOSQCPSgCPSgCOSQCQTAKEOQDOsZP////9/Pv+/v7+/v79/Pv///+x + glGFOwCQTAKOSQCPSgCPSgCOSQCOSgKIQADj08L////9/Pz+/v7///////////////////////////// + ///////////////////////////////+/v7+/v79/f39/f38+vmeZCeJQQCPSwGOSQCOSQCOSQCPSgGM + RQGRTw7z7ef+/v39/f39/Pz////fzLiHPQCPSgGOSQCPSgCPSgCOSQCQTAGFOwC4jF/////9/fz+/v7+ + /v7+/v7////////////////////////////////////////////////////////////////+/v79/fz/ + ///fzLqHPgCOSgGOSQCPSgCPSgCOSQCQTAGFPAC3jF7////9/Pz+/f38+vifZCiJQQCPSwGOSQCOSQCP + SgCOSgGLRQGTURDz7ef+/v39/f3+/v7///////////////////////////////////////////////// + ///////////////////+/v7////+/v79/Pv///+zhVWFOwCQTAKOSQCPSgCPSgCOSQCOSgKJQQDi0cH+ + /v7////JqYeFOgCQTAKOSQCPSgCPSgCOSQCQTAKEOgDNsJH////9/Pv+/v7////+/v7///////////// + ///////////////////////////////////////////////////////+/v7+/v79/fz+/v3w6eGRTQyN + RwGOSQCOSQCOSQCOSQCPSwKJQQChaC7////x6eKRTgyNRgGPSgCPSgCOSQCOSQCPSwGJQQCiajD8+/r9 + /fz9/f3+/v7+/v7///////////////////////////////////////////////////////////////// + ///////////////+/v79/Pz////LrIuFPACQTAGOSQCPSgCPSgCOSQCQSwGFOwDPspW5j2SGPACQSwGO + SQCPSgCPSgCOSQCOSgGJQgDj0sL////9/Pz+/v7///////////////////////////////////////// + ///////////////////////////////////////////+/v7+/v79/f39/fz9/PygZyuJQACPSwGOSQCO + SQCOSQCOSQCOSACOSACNSACOSQCOSQCPSgCPSgCOSQCQTAKFOwC3i13////9/Pv+/v7////+/v7///// + //////////////////////////////////////////////////////////////////////////////// + ///+/v79/Pv////hz72JQACPSwKOSQCPSgCPSgCOSQCPSgCOSQCOSQCPSgCOSQCOSQCOSQCOSQCMRgGS + UA/y6+X+/v39/fz+/v7+/v7///////////////////////////////////////////////////////// + ///////////////////////////////+/v7////+/v79/fz///+1iVuGPACQSwGOSQCPSgCPSgCOSQCP + SgCPSgCOSQCPSgCPSgCOSQCQTAGFOgDNrpD////9/Pz+/v7///////////////////////////////// + ///////////////////////////////////////////////////////////////////+/v7+/v79/f3+ + /v3y6+SSUA6MRQGOSgCOSQCOSQCPSgCPSgCPSgCPSgCOSQCOSQCPSwGIQAChaS78+/r9/Pz9/f3+/v7+ + /v7///////////////////////////////////////////////////////////////////////////// + ///////////////////////////+/v79/Pv////NsJGFOwCQSwGOSQCPSgCPSgCPSgCPSgCOSQCPSgCO + SQCOSQGJQQDi0cD////9/Pv+/v7///////////////////////////////////////////////////// + ///////////////////////////////////////////////////////+/v7+/v79/f39/Pz8+/qiai+J + QACRTQSPSwKQSwKQSwKQSwKQSwKPSwKRTgSGPAC2iVr////9/Pv+/f3////+/v7///////////////// + //////////////////////////////////////////////////////////////////////////////// + ///////////////+/v79/Pv////j08KGPQCHPQCHPgCIPgCIPgCIPgCIPgCHPwCFOgCRTgvy6uP+/f39 + /fz+/v7+/v7///////////////////////////////////////////////////////////////////// + ///////////////////////////////////////////+/v7////+/v79/f3////JqIeufFOzhVezhFaz + hFazhFayhFazhVete1TWvqb////9/fz+/v7///////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + ///+/v7+/v7+/v3////////////////////////////////////////+/v3+/v7+/v7+/v7///////// + //////////////////////////////////////////////////////////////////////////////// + ///////////////////////////////////////////+/v7+/f3+/f3+/fz+/fz+/fz+/fz+/fz+/fz+ + /f3+/f3///////////////////////////////////////////////////////////////////////// + ///////////////////////////////////////////////////////////////////+/v7+/v7+/v7+ + /v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7///////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAoAAAAgAAAAAABAAABABgAAAAAAADIAAAAAAAAAAAAAAAA + AAAAAAAA//////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////v7+/////v7+/v7+//////////////////////////////////////////////////////////// + /////////////////////////////////////////fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7 + /fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/v39/v7+/v7+/v7+//////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////v7+/////v7+/////v7+/f38/fz7/fz7/fz7/fz7/fz7/fz7 + /fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/v7+//////// + //////////////////////////////////////////////////////////////////////////////// + /////////////v7+/////v7+/v7+/v7+//////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////v7+/////v7+ + /f39//////////////////////////////////////////////////////////////////////////// + ////////////////////////2MCn3Maw3Maw3Maw3Mew3Mew3Mew3Mew3Mew3Mew3Mew3Mew3Mew3Mew + 3Mew3Mew3Mew3Mew3Mew3Mew3Mew3Maw3Mex2cOs8uvk/v7+/f39/v7+/v7+//////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////v7+/v7+/v7+/f39////4tHA2sSs3Mex3Mew3Mew3Mew3Mew3Mew3Mew3Mew3Mew + 3Mew3Mew3Mew3Mew3Mew3Mew3Mew3Mew3Mew3Mex3Mew3Mex2cKr9vHtqXQ9ikIAiUEAiUEAikIAikIA + ikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAiUEAikMAgzgAq3hH/v39 + /fz8/v79/v7+/v7+//////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////v7+/v7+/v7+/v7+/fz8////49PCiUIBiUEAiUEA + ikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAiUIAiUEAi0MAgzkA + nmMq+vj1/v39sYJUhz4AkU0Ej0oBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sB + j0sBj0sBj0sBj0oBj0oBkEwDhz0A1buh/////fz7/v7+/v7+/v7+/v7+//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////v7+ + /v7+/v39/Pz8/Pr5pGw1iEAAkE0Dj0oBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sB + j0sBj0sBj0sBj0sBj0sBj0sBj0sDjEYG49LC////////7OLWkU4PjEYBj0oBjkkAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAjkkAj0sBikQAmFod9fDq/v39/v39/v7+ + /v7+//////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////7+/v7+/v7+/v7+/Pv6////za+QhjwAkEwCjkkAjkkAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAkEwChjsAuo9l////+/n4+ff1//// + x6aFhDsAkEwCjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + jkkAjkkAkEwChTwAv5dw/////Pz7/v7+/v7+/v7+//////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////v7+/v7+/f38/v798evik1IV + i0UBj0oBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkoA + j0oBi0QBlVQX8+zl/f39/fz8/fz8/fz8+vbzoGYuiEAAj0sBjkkAjkkAjkoAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAj0oAjkoAjkkAjUkBjEgG6NvN/////fz8/v7+/v7+/v7+/v7+ + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////7+/f7+/v7+/fz7////topehjwAkEwCjkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAj0sChTwA0LWY/////Pv7/v7+/v///Pz7////3sq3iEABjkoC + jkkAjkkAj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkAkEsC + hz8Ap3I//fz7/fz8/v79/v7+/v7+//////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////v7+/v7+/v39/v///Pz7////3867iEAAjkoCjkkAjkkAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjUkAkEsChz8ApnE5/fz8/Pz7 + /v7+/v7+/v7+/v7+/Pv7////tIZYhjwAkEwBjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAjkkAjkgAj0sChTwA0rec/////Pz7/v7+/v7+/v7+//////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////v7+/v7+/v79/fz8 + +/r4oWgwiEAAj0sBjkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kA + j0kAjkkAjkoAjkkBikQF5dbG/////fz7/v7+/v7+/v7+/v7+/fz8/v7+8OffkU8QjEYBj0oAjkkAjkoA + jkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oAjkkAj0oBikMAllcb9O/p + /v39/f38/v7+/v7+/v7+//////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////v7+/v7+/v7+/Pz7////yquLhTsAj0wCjkgAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAkEwChToAu5Nq/////Pz7//7+/v7+/v7+/v7+/v7+ + ///+/Pz7////y6yNhTsAkEwCjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAjkkAjkkAjkkAkEwBhTsAu5Rr/////Pz7/v7+/v7+/v7+/v7+//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////v7+/v7+/fz8/v7+7+bckU4PjEYBjkkBjkkA + j0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0kAjUkAj0oBi0QBllcb + 9e/p/v39/f38/v7+/v7+/////////v7+/v7+/v79/fz8+vj1oWgwiUEAj0sBjkgAjkkAjkkAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkCi0QF5NXG/////fz8/v7+ + /v7+//////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////v7+//7+/f39 + /v7+/fz7////tIdZhjwAkEwCjkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAjkkAjkkAj0sChj0A0rec/////Pz7/v7+/v7+/////v7+/v7+/////v7+/v7+/Pz7//// + 38y4ikIDj0oCjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkA + jkkAjkkAj0sBhz8Ap3I8/Pv5/fz8/v39/v79/v7+//////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////v7+/////v7+/v7+/Pz7////3sm2iUIBj0oBjkkAjkkAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjUkAkEsCiD8AqHM+/fz7/Pz8/v7+/v7+/v7+ + /v7+/////////v7+/v7+/v7+/v7+/Pv7////topehTwAkEwCjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkgAkEsChjwA0bWa/////Pv6/v7+/f39/////v7+ + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////v7+/v7+/f39/fz8+vj2n2UriUEA + j0sBjkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkoA + jkgBjEYG5tjJ/v7+/f37/v7+/v7+/////////////////////////v7+/v7+/f39/v398uriklETi0YB + j0oAjUkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkAj0oB + i0UAlVYZ8+3m/f79/f38/v7+/v7+//////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////v7+ + /v7+/v7+/v7+/Pv6////yKeFhTsAkEwCjkgAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAjkkAjkkAkEwChjwAvpZv/////Pz7/v/+/v7+/v7+/v7+//////////////// + /v7+/v7+/v7+/v7+/Pz7////za6QhTwAkEwCjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAkEwChTwAuZBm/////Pv6/v7+/v7+/v7+/v7+//////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////v79/v7+/fz7/v7+7ePYkU4QjEcBjkkBjkkAj0oAjkkAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkAj0oBi0QBmFof9e/p/f39/v39 + /v7+/v7+/////////////////////////////////v7+/v7+/v7+/fz8+/n3o2s1iUEAkEsBjkkAjkkA + jkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oAjkkAjkkAjkkCikQD5NPD + /////Pz7/v7+/v7+//////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////v7+/v7+/v79/Pv7/v/+ + sIFShjwAkEwCjkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + jkkAjkkAj0sChj0A1Lqg/////Pz7/v/+/v7+/////v7+/////////////////////////v7+/////v7+ + /v7+/fz7////4tHBikMEjkkCjkoAjkkAj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAjkkAjkkAjkkAj0sBiEAApW43/Pv5/fz7/v39/v7+/v7+//////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////v7+/v7+/////Pv6////2sawiD8Aj0sBjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAkEsChz8AqnhE/v79/Pz7/v7+/v7+/v7+/v7+//////// + /////////////////////////v7+/v7+/v7+/v7//fz7////uI1hhj0AkEwCjkkAjkkAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkgAj0wChj0AzrCT/////Pv6/v7+ + /f39/////v7+//////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////v7+/v7+/v7+/f38/f389vLtm18jikMAj0oBjkkAjkkA + jkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkAjkoAjUgBjUgH6NzO + /v7+/fz8/v/+/v7+/////////////////////////////////////////////////v7+/v7+/f38/v39 + 8uvjlFUWi0UBj0oBjUkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkA + j0oAjkkAj0oBjEYBlFMW8enh/v79/fz7/v7+/v7+//////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////v7+/v7//v7+//7+/f39 + /Pv6////t4thhjwAj0wBjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAjkkAjkkAkEwChTsAwJp0/////fz6/v7+/v7+/v7+/v7+//////////////////////////// + /////////////v7+/////v7+/v7//Pv7////zrGUhjwAj0wCjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkAkEwChjwAt4xg/////Pv7/v7+/v7+/v7+//// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////v7+/v7//v3+/Pr6////0bWYhj0Aj0sCjkkAjkkAj0oAjkkAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAjkkAjkkAj0sBi0MAmVsg9vHs/v39/f39/v7+/v7+//// + /////////////////////////////////////////////////v7+/v7+/v7+/v7+/f38/Pr4pW85iD8A + kEsCjUkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkA + jkoCikIC4tHA/////Pv7/v7+/v7+/v7+//////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////v7+/v7+/v7+/v7++/r5////38y4i0UHjUgBjkoA + jkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAjkkAjkkAj0wC + hz4A1r6m/////Pz7/v7+/v7+/////v7+//////////////////////////////////////////////// + /////////v7+/v7+/fz8////49LCjEYFjkkCjkoAjkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkAj0sBiEAAomoy+/n2/fz7/v39/v7+/v7+//////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////v7+/////v7+/v7+/v7+ + /v7++/r5////5NTCj0wQi0UAj0oAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAjkkAjkkAkEwChz8ArHpI/v7+/fz7/f79/v7+/v7+/v7+//////////////////// + /////////////////////////////////////v7+/////v7+/v7+/Pz7////upBnhTwAkEwCjUgAjkkA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkgAj0wChToAyqyM + /////Pv6/v7+/v7+/////v7+//////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////v7+/v7+/////v7+/v7+/v7+/f39/Pr5////4c+9kE0SikQAj0sBjkkAjkkAj0oAjkkAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjUkAj0oAjUgCjkoJ6d3R/v7+/f38/v7+ + /v7+/////////////////////////////////////////////////////////////////////v7+/v7+ + /v7+/v39/f399O3nl1gci0UBj0oBjkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAjkkAj0oAjkkAj0oAi0UBk1ET8Ofe/v39/fz7/v7+/v7+/////v7+//////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////v7+/////////v7+//7+/v7+/Pv6/f38////1LuijkkLi0QA + j0sBjkkAjkkAj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkA + jkkAkEwChjwAwp14/////Pv6/v7//v7+/////v7+//////////////////////////////////////// + /////////////////////////////////v7+/v7+/Pv6////0baahj4AkEwCjkkAjkkAj0oAj0kAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkAkEwBhTwAtYlc/////Pv6/v7+ + /v7+/v7+//////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////v7+/v7+/////v7+/v7+/v7+ + /v79+/v5////+/n1wJp1iEEAjUYAj0wBjkkAjkkAj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkAj0sBikMAnWAn9/Lu/fz7/f39/v7+/v7+/v7+//////////// + /////////////////////////////////////////////////////////////v7+/v7+/v7+/v7+/Pz7 + /Pv5p3I9iD4AkEwCjkkAjkkAjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjkkAjkkAj0oCiUEA3826/////Pv6/v7+/v7+/v7+/v7+//////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /v7+/v7+/////////v7+/v7+/v79/Pv6/f3+////6dzPpW89hjwAj0oBj0oBjkkAjkkAj0oAjkkAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oAjkkAjkkAj0sChz4A2MKq//// + /Pv6/v7+/v7+/v7+//////////////////////////////////////////////////////////////// + /////////////////////v7+/v7+/fz7////5dbGi0UGjkkCjkoAjkkAj0kAjkkAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkAj0sBiEAAoGct+vj1/fz7/v39/v7+/v7+//// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////v7+/v7+/v7+/////////v7+/v7+/f39/fz7/fz8////+vj0xaOCjkkJhz8A + j0sBj0oAjkkAjkkAj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjkkAjkkAkEwChz0Arn1L/////Pv6/v7+/v7+/v7+//////////////////////////////////// + /////////////////////////////////////////////////v7+/////v39/v/+/Pv6////vZZuhjsA + kEwDjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjUgA + j0wChDoAyKiI/////Pv6/v7+/v7+/v7+/v7+//////////////////////////////////////////// + /////////////////////////////////////////v7+/////v7+///////////+/v7+/v7+/v79/Pv6 + /f38////////28ayn2cyhTwAjEcAj0sCjkkAj0oAj0oAj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjUkAj0oAjUcCjkoK69/U/v7//fz7/v7+/v7+/////v7+ + //////////////////////////////////////////////////////////////////////////////// + /////v7+/v7+/v7+/f39/f399fDrl1kci0UBj0sBjUkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAjkkAj0oAjkkAjkoAjEUAkU4P7+bc/v79/fz7/v7+/v7+/////v7+//////// + /////////////////////////////////////////////////////////v7+/////v7+/v7+/////v7+ + /////v7+/v7+/v7+/fz8/Pv6/v7+////////4M68qnhHiD8AiUEAj0sCj0oAjkkAjkkAjkkAjkkAjkkA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAkE0DhjwA + xaJ//////Pv7/////v7+/v7+/v7+//////////////////////////////////////////////////// + /////////////////////////////////////////v7+/v7+/v7+/Pv6////07qghz4Aj0wDjkkAjkkA + j0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkAkEwBhjwAsoRU + /v///Pv6/v7+/v7+/v7+/////////////////////////////v7+/////v7+/v7+/v7+/v7+/v7+/v7+ + /v7+/v7+///+/v7+/v7+/////v7+/v7+/v79/fz8/Pv6/fz8////////+/n32sSvqnZHikIAhz8AjkoA + j0oBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAjkkAjkkAjUkAj0sCikMAnmMp+PXx/f38/f39/v7+/v7+//////////////////////////// + /////////////////////////////////////////////////////////////////////////////v7+ + /v7+/v7+/Pz7/f38qXVBiEAAkEwCjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAjkkAjkkAj0oBiD8A3cm0/////Pv6/////f39/v7+/v7+//////////////////// + /////////////////////////////v7+/////v7+/v7+/v7+/v39/fz7/Pv6/fz7/f7+//////////// + 7OHWyaiHn2UviD8Ahz4AjkkAj0sCjkkAjkkAjkoAjkoAjkkAjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAj0wDiEAA28Wv/////Pz7/v/+/v7+ + /////v7+//////////////////////////////////////////////////////////////////////// + /////////////////////////v7+/////v7+/v7+/fz7/v//6NrNjkkJjkkCj0kAjkkAjkkAjkkAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkAj0oBiUIAn2Ur+fb0/fz7/f39 + /v7+/v7+/////////////////////////v7+/v7+/v7+/v7+/f38/fv6/fz7/fz6/Pv6/fz8/fz8/v7/ + /////////////////Pz66dzPza6Qq3dGkE0Mhj0AikMAj0sCj0sCj0oAjkkAjkoAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkA + kEwChz4AsIJS/v7//Pv7/v7+/v7+/v7+/v7+//////////////////////////////////////////// + /////////////////////////////////////////////////////////////v7+/v7+/v7+/////Pv6 + ////v5lzhTwAkEwCjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjkkAjkgAkEwBhDoAxqSC/////Pv6/v7+/v79/v7+/v7+/////////////////v7+/////v7+/v7+ + /////////////////////////////v788+3l5NTE07icuY5moWgvj0sIhz4AiUIAj0oAkE0FkU0Dj0sC + kEsBkEsBkEsBkEsBkEsBkEsBkEsBkEsBkEsBkEsBkEsBkEsBkEsBkEsBkEsBkEsBkEsBkEsBkEsBkEsB + kEsBkEsBkEsBkEsBkEsBkEsBj0sBkEwCjEgBkE4O7eTa/v7+/fz8/v7+/v7+//////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////v7+/v7+/f38/f389vHsmVsgikMBj0oBjkkAjkkAjkkAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oAjkkAjkkAjEYBkEwN7ePY/v7+/fz7/v7+/f39//// + /v7+/////////////v7+/v7+/f38/v//28ayxqSAy6uKxKF6vJNssoReqHNEmVwlkEwKhjwAgTQAgDQA + hDoAiEAAikMAiUIAiEEAiEAAiEAAiEAAiEAAiEAAiEAAiEAAiEAAiEAAiEAAiEAAiEAAiEAAiEAAiEAA + iEAAiEAAiEAAiEAAiEAAiEAAiEAAiEAAiEAAiEAAiEAAiEAAiEAAiEAAiEAAiUIAgjYAx6WD/////Pv6 + /v7+/v7+/////v7+//////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////v7+/////v7+/v7+/Pv7////1r2khz4A + j0sCjkkAjUkAj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkA + kEwBhjwAsYFR/////fz7/v79/v7+/v7+/////////////////v7+/v7+/v39/v7+4M27za+O0bWW0LOU + z7OV0LOZ0bac07mg1ryk2MCo2cKr2cKs2MGq2MCp18Co18Co18Co18Co18Co18Co18Co18Co18Co18Co + 18Co18Co18Co18Co18Co18Co18Co18Co18Co18Co18Co18Co18Co18Co18Co18Co18Co18Co18Co18Co + 18Co18Co2MCo1r+n2MGq+vf0/v39/v79/v7+/v7+/v7+//////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////v7+/v7+/v7+/v7+/Pv6/v39rHpIhz4Aj0wBjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAj0oBiUEA3May/////Pv6/////f39/v7+/v7+//////// + /v7+/////v7+/v7+//////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////v7//v7+/////v7+//////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////v7+/v7+/fz7/v7+6d3RjUkJjUgBj0oAjkkA + jkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkAj0oBikIAnWIn + +PXx/fz8/f39///+/v7+/////////////////v7+/////////v39/fz7/fz7/fz7/fz7/fz7/fz7/fz7 + /fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz8/fz7+/n3+/n3+/n3+/n3+/n3+/n3 + +/n3+/n3+/n3+/n3+/n3+/n3+/n3+/n3+/n3+/n3+/n3+/n3+/n3+/n3+/n3+/n3+/n3/Pr4/fz7/fz8 + /fz8/v7+/////v7+/////v7+//////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////v7+/v7+ + /v7+/v7+/Pv7////wZx2hDsAkEwCjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAjkkAjkkAkE0ChjwAxKF8/////Pv6/v7+/v7+/v7+/v7+/////v7+/////v7+/v7+ + /v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+ + /v7+//////////////////////////////////////////////////////////////////////////// + /////////////////////////////v7+/v7+/v///v7+/////v7+//////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////v7+/v7+/f39/f389/Ltm14iiUIAj0oBjkkAjkkAjkkAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oAjkkAjkoAjUgCkE0N7OHW/v7+/f38 + /v7+/v7+/////v7+//////////////////////////////////////////////////////////////// + /////////////v7+/////v7+/v7+/f79/f39+vj20LSYzrCSz7GUzrGTz7GTz7GTz7GTz7GTz7GTz7GT + z7GTz7GTz7GTz7GTz7GTz7GTz7GTz7GTz7GTz7GTzrGTzrGTza+S0LSY+vj1/v7+/v79/v7+//////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////v7+/////v7+/v7//Pz7 + ////2cKriD8Aj0sCjkkAjkkAj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + jkkAjkkAjkkAkEwChz8Ar35O/v7+/fz8/v7+/v7+/v7+//////////////////////////////////// + /////////////////////////////////////////////////v7+/v7+/v7+/fz7////yaiIgDMAhz0A + hTsAhTsAhTsAhTsAhTsAhTsAhTsAhTsAhTsAhTsAhTsAhTsAhTsAhTsAhTsAhTsAhjsAhTsAhDsAhz4A + fS0AtIdb/f38/Pz8///+/v7+//////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////v7+/v7+/v7+/v7+/fz7/v//rn1Khz0Aj0wBjkkAjkkAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAj0sCiEAA2MGq/////Pz7/v///v7+/v7+ + /v7+/////////////////////////////////////////////////////////////////////v7+/v7+ + /v7+/v7+/f38/v797+bdkU8PjUkDkU4Fj0wDkEwDkE0DkE0DkE0DkE0DkE0DkE0DkE0DkE0DkE0DkE0D + kE0DkE0DkE0DkE0DkEwDkE0DkU4FjEcFmVwe9/Pu/v7+/v38/v7+/v7+//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////v7+/v7//fz7/v7+69/UjkoL + jUgBj0oAjkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkA + j0sCikMAm18j+PXw/f39/f39/v7+/v7+/////v7+//////////////////////////////////////// + /////////////////////////////v7+/v7+/v7+/fz7////tIZYhj0AkEwCjkgAjkkAj0oAjkkAjkkA + jkkAjkkAjkkAjkkAjkkAjkkAjkkAjkkAjkkAjkkAjkkAj0oAjkkAjkkAj0sChj0A0rec/////Pv7/v7+ + /v7+//////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////v7+/v7+/v7+/////Pv6////xKF9hTsAkEwCjkkAjkkAj0oAj0kAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAkEwChTsAw596/////Pz7/v7+/v7+/v7+//////////// + /////////////////////////////////////////////////////v7+/v7+/v7+/v7+/fz7////3sq3 + iUIAjkoCj0kAjkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAjkkA + jkkAj0wBiD8AqHM+/fz7/Pz7/v7+/v7+/v7+/v7+//////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////v7+/v3+/v39/fz8+PXxnWIpiUIAj0sBjkkA + jkkAjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkAjkoAjUgBjkoK + 6t7S/v7+/fz8/v7+/v7+/v7+/v7+//////////////////////////////////////////////////// + /////////v7+/v7+/f39/f38+vj1oGgviUEAj0sCjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAjkkAj0kAjkkAj0kAjkgCjEYH5tjJ/////fz7/v7+/v7+//////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////v7+//// + /v7+/v7+/Pv6////2cStiEAAj0oCjkkAjkkAj0kAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAjkkAjkgAkEwChz4ArHpH/f38/fz8/v7+/v7+/v7+//////////////////////// + /////////////////////////////////v7+/v7+/v7+/v7+/fz8////y6yNhTwAkEwCjkkAjkkAj0kA + jkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAkEwChTwAvZRs//// + /Pv7/////v7+/v7+/v7+//////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////v7+/v7+/v7+/v7+/Pv7/v7+r4FQhz0AkEwBjkkAjkkAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkgAj0kAkEsChz4A17+n/////Pz7 + /v7+/v7+/v7+/v7+/////////////////////////////////////////////////////v7+/v7+/f38 + /v798enfklISjEYBj0oBjkkAjkkAjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + jkkAjkkAjkkAj0oBi0QAl1gb9O/p/fz8/v38/v7+/v7+//////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////v7+/v7+/fz8 + /v7+7ePakE0NjEcBj0oAjkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjkkAjkkAj0sCikMBml0i9/Pu/f39/f39/v7+/v7+//////////////////////////////////// + /////////////v7+/v7+/v7+/v7+/Pz7////toldhj0AkEwCjkkAjkkAj0oAj0kAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAj0oAjUkAjkkAj0sChTwA0baa/////Pv7/v7+/v7+/////v7+ + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////v7+/v7+/v7+//7+/Pv6////x6SDhTsAkEwCjkkAjkkAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oAjUgAjkkAkEwChTwAwZx1/////Pv7//7+/f39/v7+ + /v7+/////////////////////////////////////v7+/////v39/v7+/fz7////4M67ikICj0oCjkoA + jkgAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAjkkAjkkAj0sBiD8A + pnA8/Pv6/fz7/v7+/v7+/v7+/v7+//////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////v7+/v7+/v79/fz8+fbznmMq + iEEAj0sBj0kAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkA + jkoAjUkCjUgI59rM/////fz8//7+/f39/////v7+/////////////////////////////////////v7+ + /v7+/v39/f38+vj1oWgwiUEAj0sBjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAjkkAj0kAjkkAj0kAjkkCi0QG5dXF/////fz7/v7//v7+//////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////v7+/////v7+/v///Pz7////3cm1iEAAjkoCjkkAjUgAj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAkEwChz8AqndD/fz7/fz7/v7+/v7+/v7+//////////// + /////////////////////v7+/v7+/v79/v7+/Pz7////y6uMhTwAkEwCjkkAjkkAjkoAjkkAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAkEwChTsAu5Fn/////Pz7/v7//v7+ + //7+/v7+//////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////v7+/v7+/v7+/v7+/Pz7////s4RVhjwAkEwCjkgA + jkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkAjkkAj0wChz4A + 1bui/////Pz7/v7+/f3+/v7+/v7+/////////////////////v7+/////f39/v7+/f38/v398Ojfk1ES + jUYBj0oBjkkAjkkAj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkA + j0oBi0UBllYa8+zl/fz9/v38/v7+/v7+/v////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /v7+/v7//f38/v797+XckE0OjEYAj0oAjUgAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAjkkAjkkAj0sBi0QBmVoe9vHr/f39/f39///+/f39/////v7+//////////////// + /////v7+/v7+/v7+/Pz7////tYldhj0AkEwCjkkAjkkAj0oAjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAjkkAj0oAjUkAjkkAj0wChTsA0bWZ/////Pv6/v7+/v7+/v7+//7+//////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////v7+/v7+/v7+/v7+/Pz7////yKiGhDoAkEwDjkkAjkkAj0oAjkkA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oAjkgAjkkAkEwChjwAv5dw/////Pv6 + /v7+/v7+/v7+/////////////////v7+/v7+/v7+///+/fz7////4dC/ikMDj0oCjkkAjkkAjkkAjkkA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAj0wCiD8ApW85/Pv5/fz7 + /v79/v7+/v7+//////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////v7+/v7+/v39 + /fz8+/j1oGYtiUEAj0sCjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + jkkAjkkAjkkAjkoAjkkCjEcG5tjK/////fv7//7+/v7+/v7+//7+/////////////v79/v7+/f39/fz8 + +/r4o2oziUAAj0sBjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkA + jkkAjkkAj0oAjkkCi0UF5NTE/////fz8/v7+/v7+/////v7+//////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////v7+/////v7+/v7+/fz7////3su4iUEBj0sCjkkAjkkAjkkAjkkAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjUkAkEwChz8AqHRA/f38/fz7/f39/v7+/v7+ + /v///////v7+/v7+/v7+/v/+/Pv7////za+RhTwAkEwCjkkAjkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAkE0ChjwAu5Jo/////Pz7/v7+/v7+/v7+/v7+//// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////v7+/v7+/v7+/v7+/fz7////tIdZ + hjwAkEwCjkgAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkA + jkkAj0wChjwA0rec/////Pv6/v7+/f7+//7+/v7+/////v7+/v7+/f38/v7+8erilFITjEYBj0oBjkkA + jkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkAj0oBi0UAl1YZ + 8+3m/f39/f39/v7+/v7+//////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////v7+/v7+/fz8/v398Offk1ISjEcBj0oAjUkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAj0sBi0QBl1ga9O7n/f38/f39/v7+/v7+/////v7+/v7+ + /v7+/Pv6////t4tfhjwAkEwCjkkAjkkAj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjkkAj0oAjkkAjkkAkEwChz4A0LWZ/////Pz7/v7//v7+/////v7+//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////v7+/////v7+/v7+/Pv7////zK2Ohj0AkEwDjkkA + jkkAj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oAjkkAjkgAkEwChjwA + u5Nq/////Pv6/v7+/v7+/v7+/v7+/v7+/Pz7////4dC+ikMCj0oCjkkAjkkAjkkAjkkAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAj0wCiEAAp3E7/Pv5/fz7/v79/v7//v7+ + /v7+//////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////v7+ + /v7+/////v7+/fz7+/j2o2sziUEAj0sBjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAjkkAjkkAjkkAjkoAjkkCjEcG5dbH/////Pz7/v7+/v7+/v7+/v39/fz8+/n3pG00iUEA + j0sBjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkAj0kA + jkkCikQE49PC/v7//fz8/v7+/v7+//////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////v7+/v7+/fz7////4c+9iUICj0oCj0kAjkkAjkkAjkkA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAj0sBiEAAp3E7/Pv5/fz8 + /v79/v7+/v7+/Pv6////zK+Qhj0AkEwCjkkAjkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAjkkAjkgAkE0ChTwAuY9j/////Pv6/v7+/v7+/v7+/v7+//////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////v7+/v7+/v7+/v7+ + /Pv6////t4xghjwAkEwCjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + jkkAjkkAjkkAjkkAkEwChj4Az7OX/////Pv7/v7+/f38/f398erilFQVi0YBj0oBjkkAjkkAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkAj0oBi0UBlVUW8+zl/v39/f39 + /v7+/v7+//////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////v7+/v7+/f38/v7+8+zllFQVi0UBj0oAjkkAjkkAjkkAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkgAj0sBi0UAlVUX8uzk/v39/fz8/Pz7//// + t4xhhjwAkEwCjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAj0oA + jkgAjkkAj0wChjwA0LOX/////fz7/////v7+/v7+//////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////v7+/v7+/v///fv7////zrGU + hjwAj0wCjkkAjUkAj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkA + jkkAkEwChTwAuI5k////+/r5////4tHAiUIDjkoCj0oAjUkAjkoAjkkAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAjkoAjkkAjkkAj0wCiUAApW84/Pv6/f38/v7+/////v7+//////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////v7+/v///v7+/f38+/r4pG02iEAAj0wBjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjUkAj0kAjkoCikMD4tC//v79+vj1pG02hz8AkEsBjkkAjkkA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0kAjkkAj0kAjkkCi0QF49TD + /////fz8//7//v7+//////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////v7+/////fz8////49TEi0UFjkkCj0oA + jkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAj0sBiEAA + oWkx////zrGThTsAj0sCjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAjkkAjkgAkEwChj0AupBl/////fz8/v///v7+/v7+/v7+//////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////v7+ + /v7+/v7+/v/+/fz8////uZBkhj0AkE0CjkgAjUkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0kAjkkAjkkAj0sAiEAAwZ12m18iikIAj0oBjkkAjkkAjkkAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjUkAj0oAjEYBlVYX8uzl/v79/v39/v7+/v7+//// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////v7+/v7+/f39/v398+zmllYXjEYBj0oBjkkAjkkAjkkA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAjkkAjkkAjkkAjkkAikMAjEYAjkkA + jkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAj0oAjkgAjkkAkEwC + hj0Az7SX/////fz7//7+/v7+//////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////v7+//7+ + /fz7////0bWZhz0Aj0wCjkkAjUgAj0oAj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAjkkAjkkAjkkAj0oBjkoAjkkAjkkAj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAjkoAjkkAjkkAj0wCiEAApW86/Pv5/fz8/v7+//7+/v7+//7+//////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////v7+/v7+//7+/v7+/fz8/fz7p3I+iD8Aj0wCjkkAjkkAjkoAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0kAjkkAjkkAj0kCikQF49PD/////Pz8//7+ + /v7+//////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////v7+//7+/fz8////5dbH + jEYHjkoCj0oAjkkAj0kAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oA + jkkAjkkAjkkAj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkA + jkkAkEwChj0AuI1i/////fv8/v/+/v7+/v7+/v7+//////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////v7+/v7+/v7+/v///fz7////vJRqhjwAkEwCjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAjkkAjkkAjUkAj0oBjEUBlFQW8uri/v7+/f39/v7+/v7+//////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////v7+/v7+/f39/f399O7ol1kci0QBj0sB + jkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAj0oAjUgAjkkAj0wChj0AzbCT//// + /Pz8/v7//v7+//////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////v7+/v7+/Pz7////07mfhj0Aj0wCjkkAjUgAj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + jkoAjkkAjkkAkEwCiEAAomw0/Pr4/f39/v7+/v7+/////v7+//////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////v7+/////v7+/v7+/fz8/fz8qHNAhz8AkEwCjkkAjkkAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0kAjkkAj0kAjkkCiUIC4dC+/////fz7/v7+/v7+//////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////v7+/v7+ + /fz8////5tjJi0YFjUgCj0oAjkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkgAkEwChTwA + t4tf/////fz7/v7+/v7+/v7+//////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////v7+/v7+/v7+/fz7////vZZuhTsAkE0CjkkAjkkAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAjkkAjkkAjkkAj0oBi0YBlFMT8eri/v7+/f38/v7+/v7+//////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////v7+/v7+/v39/f399vHs + mVseikQAkEsBjkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oAjkgAjkkAkEwChj0Aza+Q/////Pv6/v7+/v7+ + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////v7+/v7+/Pz7////1Luhhz4AkEwCjkkAjkkAj0oAjkkAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkA + j0sAiEAAo2w0/Pr4/fz8/f39/v7+/v7+/v7+//////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////v7+/v7+/v7+/v79/fz7/f38qndDhz8AkEsB + jkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAjkkAjkkAjkkAjkkAjkkBi0QD4c+9/////Pz7/v7+//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////v7+/v7+/fz7/v7+6NvNjUkIjUgBj0kAjkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAkEwBhTsAt4xf/////Pv6 + /v7+/v7+/v7+//////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////v7+/v7+/Pv6////wZt2hTsAkEwBjkkAjkkAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkA + jkkAjkkAj0oAi0UAlFIT8eri/v39/fz8/v7+/f39//////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////v7+/v7+/v7+ + /f38/fz89vHtmVsfikMAj0sAjkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAkEsChDoAy6uN/////Pv6/v7+/v7+/v7+//////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////v7+/f3+/v7+/Pv7////1r6lhj0Aj0oBjkkAjUkAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAj0sAiEAAoWkx + +/n3/fz8/f39/v7+/v7+//////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////v7+/v7+/v39/fz7/v7+ + rXtJhj0AkEwCj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oBjkkAj0oBjkoCiEEA4M68/////fz7/v7+/v39/////v7+//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////f39/v7+/fz7/v7+69/SjkgJi0UAjkgAjUcAjUgAjUgAjUgAjUgAjUgAjUgAjUgA + jUgAjUgAjUgAjUgAjUgAjUgAjUgAjUgAjUgAjUgAjUcAjUcAjkoAhDkAtYlb/////Pz6/f7+/v7+/v7+ + /v7+//////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////v7+/v7+/v39/v7+/Pz7////xKF9jEcSlVQW + k1IUlFIUlFIUlFIUlFIUlFIUlFIUlFIUlFIUlFIUlFIUlFIUlFIUlFIUlFIUlFIUlFIUlFIUk1IUlFMV + kU8TmVoj8ejg/v39/fz7/v7//f39/v////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////v7+/v///f39/f38/Pv67+bd8Ofe8Off8Off8Off8Off8Off8Off8Off8Off8Off8Off8Off8Off + 8Off8Off8Off8Off8Off8Off8Off8Off7uXd9O7o/////f39/v7+/v7+/v7+//7+//////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////v7+/v////7+/v7+/v7+/v7+//////////////////////// + /////////////////////////////////////////////////////////////////////////v39/v7+ + ///+/v7+//////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////7+/v////// + /////v7+/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39 + /v39/v39/v39/v39/v39/v79/////////v7+/////v7+//////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////v7+/////v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+ + /v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/////v7+//////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + ////////////////////////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAoAAAAAAEAAAACAAABABgAAAAAAAAgAwAAAAAAAAAAAAAA + AAAAAAAA//////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39 + /v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39 + /v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v7+/////v7+//////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////v7+/////v7+/v39/v39/v39/v39/v39/v39/v39 + /v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39 + /v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39 + /v79/v7+//////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////v7+//////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + ////////////////////////////////////////////////////////////////////////9/Lt9/Pu + 9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt + 9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt + 9/Lt9/Lt9/Lt9/Lt9/Lt9/Pt/v7+/v79/v7+/v7+/v7+//////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////v7+/v79/v799/Ls9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt + 9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt + 9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Pt9/Lt/v39pm80omkso2oto2oto2oto2ot + o2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2ot + o2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2ot + o2svnmMrzrGR/////fz7//////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////v7+/v7+/fz8//// + 1bygnGAqo2svo2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2ot + o2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2ot + o2oto2oto2oto2oto2oto2oto2svnWEruY9i/fz8wJpwkUwEiUIAi0QAi0QAi0QAi0QAi0QAi0QAi0QA + i0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QA + i0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0UAiUAAlVQT7uTZ + /v39/fz8/v7+//////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////f38/v7+9O3nmFkViD8Ai0UAi0QA + i0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QA + i0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QA + i0QAi0QAikMAi0MA3sq1/v7+/fz8wJhviD8AkU0Fj0sCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsC + kEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsC + kEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkU0EiD8AuItb/////f38/v7+/v7+ + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////v7+/v7+/fz7////vZNniD8AkU0EkEsCkEsCkEsCkEsCkEsCkEsC + kEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsC + kEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCj0sCkU4EiUAAuY9h + /////Pn4/v7+9e/pnF8ei0UAj0oBjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oBi0MA3cix/////fz7//////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////v7+/////Pz7////49G/j0oHjUgBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oBjEYBl1cU8urj/v39/fv6+vf0//// + 1LqfikIAj0sCj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAjkoAj0sBikIAoWcq9vLt/fz7/v39/v7+//////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////v7+ + /f38+/n3p3A0iUEAj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBiUEAzrCQ/////fz7/v7+/fz7/fz7+/n3q3hBiUAAkEsC + j0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAjkkAj0sBiEAAyKaB/////fz7/////v7+//////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////v7+/v7+/Pz7////z7GRiUEAkEwC + jkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAjkkAj0oBikIApnA0/fz7/v39/v7+/////////f38////6NrMkEwHjUgBjkoAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoA + jUgBlFIO7uTa/////f38//////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////v7+/////fz8/v398OfellYTjEYBj0oBj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkgB + jUYA4tG+/////fz7/////v7+/v7+/////fz8////wJpvhz4Aj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAkEsCiD8As4RR/fz7 + /fz7/v7+/v7+//////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////v7+/v38////uY9ghz4AkEwCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsBiD8Au5Fk/////f38/v7+ + /v7+/////////v7+/fz8/v389e/pnmMmi0MBj0sBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oCi0QB3Mav/////fz8/////v7+ + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////v7+ + /v7+/Pz8////4tG+jUgCjkkBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oBi0UAmFkW9e/o/v7+/f38//////////////////// + /////fv6////17+miUEAj0oBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBikMAoWgp+vfz/v7+/v79//////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////f39/fz8+/j2pW4z + iUAAj0sCj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0kAj0oBiUEA0ria/////fz8/v7+/v7+/////////////////v7+/v39/v39/v/+ + sH9LiEAAkEsCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAjkoAj0sCiD4Ax6Z//////fv6/v7+/v7+//////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////7+/v7//fz8////yqqHiD8Aj0sBjkkAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkA + j0sCiUIAqXU7/fz7/v39/v39/////////////////////////////v7+/fz7/v7+6t3PkU4NjkgCjkoB + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0kAj0oAjUcBkU0N7ODU/////f39/////v7+//////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////v7+/v///f38/v7+7+bdlVMOjEYBjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkBjUgB5dXG//// + /f38/////v7+//////////////////////////////7//fz7////w551iD4AkEwCjkkAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sB + hz4Ar35J/v39/fz8/v7+//////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////v7+/v39/fz7////tolYhz4Aj0sDjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEwBiEAAvZZq/////f37/v7+/v7+//////// + /////////////////////v7+/////f39/v7+9vHsnmMki0QAj0sAj0kAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oCi0QB2cKo//// + /fz7/v7+/v7+//////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////v7+/////fz8//// + 3su3jUcDjkoBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oBjEUBmlsZ9O7n/v79/f38//////////////////////////////// + /////////v7+/v7+/fz6////2cGpikIBj0oDjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0sBi0MAn2Qn+PTw/v79/f38/////v7+ + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////f39/fz8+vf0omosiUEAj0oBj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjkkAj0sCiD8A0reZ/////fz7/////v7+//////////////////////////////////////////// + /v7+/fz7/Pv6sH9KiD8AkEsBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsChj0Aw594/////fz7//7///////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////v7+/v7+/Pz7////yqmGiUAAj0sCjkkAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsBiUEAq3hA + /Pz6/f38/v39//7+/////////////////////////////////////////////v7+/////f37////7OLW + k1EOjUcBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAjkoBjUcCklAO6t7Q/v7+/fz7/v7+//////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////v7+/////f39//7/7ePYk1ENjUcAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAjUcBj0sG6NrL/////fz8/v///v7+ + /////////////////////////////////////////////////v7+/v7+/fz7////xqR+hz4Aj0sCjkkA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjkkAkEsBiUEAsIFN/v79/v39/v3+/v7+/v7+//////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////v79 + /Pz7/v7+s4RQiEAAkEwCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBhz4AwZty/////fz8/v7///7+//////////////////// + /////////////////////////////////////v7//v39/v399/PuoWgrikIAj0oBj0kAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sC + iEAA176j/////fz7//////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////v7+/v7+/fz8////2sSti0QBjkoC + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0kAj0sBi0QAm14d9vHr/v79/f39//////////////////////////////////////////// + ///////////////////////+/////fz8////3MawikMBj0oCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0sCi0QBnGAi9O7n/v38 + /fz8/v7+//////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////f39/v39+fbzoGcoikIAj0sBjkkAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sC + iUEA1buf/////fz8/v7+/v7+//////////////////////////////////////////////////////// + /////////v7+/f79/fz8/f39soNPhz4Aj0sCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEwChz0AwZxz/////f38/v7+/v7+//// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////v7+/Pz7////x6V/iD8AkEwBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0wBiEAArHpD/v7+/v38/v7+ + /////////////////////////////////////////////////////////////////////////////v7+ + /f38/v7+69/SlFIPjUcBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAjkgBkEwG6dvN/////fz8//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////v7+ + /////Pz7/v397ODUlFMRjUcCj0oBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkBkE0I6NvM//7+/fz8/////v7+//////////// + /////////////////////////////////////////////////////////////////////fz7////yKaB + hz0AkEwDjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAjkkAj0sCiUEArXtG/Pv5/fz7/v39/v7+//////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////v///f38////sH9K + hz8Aj0wCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAjkkAj0wChz8AwJlv/////f38/v7+/v7+//////////////////////////////// + /////////////////////////////////////////////v7+/v7+/f39/f389/Puomgti0MAj0sCj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0sDiD8A1r2i/////fz7/////v7+//////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////v7+/f38////18ClikMAj0sBjkkAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkA + j0oBi0QAnmIj9vHs/v39/v39//////////////////////////////////////////////////////// + /////////////////////////////////////v7+/fz8////3sq0jEYAjkoCjkkAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oAi0UA + nWAf9vHs/v7+/v79//////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////v7+/v7+/f38/f389vHsn2Qli0QBj0sBj0kAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oCikIA2MGo//// + /fz7/////v7+//////////////////////////////////////////////////////////////////// + /////////////////////////////fz8////tYhWhz4Aj0wBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsCiD8AwJpw/v7+/fz7 + /v7+/v7+//////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + ///////+/////fz7////xKF6hz4AkEwCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0wBiEAAsH9L/////f38/v79/v7+//////// + //////////////////////////////////////////////////////////////////////////////// + /////v7+/////fz7/v797uXblVQVjEYBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkCjkkG59jJ/////f38/////v7+//// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////v7+/v///f38//// + 6t3PkU4IjUcBjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjUgBkU4J6t7Q/v7+/fz8//////////////////////////////// + /////////////////////////////////////////////////////////////////////////v7+/v7+ + /fz7////yqqGiEAAj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsBiUEAqnY9/Pr4/v39/v7+//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + ///////////////////////////////////////////////////+/v39/fz7/fz7r39KiUEAj0sCj0kA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjkkAkEwChz0Aw553/////fz8/v7+/v7+//////////////////////////////////////////// + /////////////////////////////////////////////////////////////////f39/v79+/n3omor + ikEAj0sBj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAjkoAj0sCiEAA0raY/////fz6/v7+/v7+//////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////v7+/v7//fz7////1ryiiUIAj0oCjkoAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0sBikMBnmMm + +PTw/v39/f39//////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////v7+/v7+/fz7////38u2i0QEjkoDjkoAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0kAj0sBjEUAmVwb9e/p/v7+/f38//////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////f38/v7+9vHsnF8eikMAj0oAj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oBikMA2MCl/////fz7/////v7+ + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////v7+/fz8/v7+t4pZiD8AkEwCjkkAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEwChz4A + vpVq/////fz7/v/+/v7+//////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////v7+/v7+ + /Pz7////wJpwhz0Aj0wDjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsBiUAAr39J/v7+/v39/v7+/v7+//////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////v7+/////f39////8urillcTjEYAj0oAj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAjUgCjkgE5dXE/////fz7 + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////v7+/////fz8////59nLkEsHjUgB + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAjkoBjEcBk1AN7OLW/v///fz7//////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////v7+/v7+/Pz7////za6OiEAAj0sCjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEwBiUEAqnY8/f38/v39/v3+/v7+//////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////f39/fz8/fz7rHlCiUEAkEsBjkkAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sC + iD8AyKaB/////fz7/v///v7+//////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////v79 + /fz7+fXypW0xiUEAj0sBj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBiUEA0bWX/////fz8/////v7+//////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////v7+/v7+/fz7////z7OTikIAj0oCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAj0sBikMAn2Yl+vf0/v7+/f39 + //7///////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////v7+/////fz7////4tG+jEYC + jkoBjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oBjEUCl1gY8+vk/v79/fz7//////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////f38////7eLWlFEOjEcBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAjkoBi0QA28av/////fz7/v7//v7+//////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////v7+/v79/fz7/v7+uY5fiEAAj0wCjkkAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + jkkAkEsCiD8Auo9h/////fz8/v7+/v7+//////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////v7+/v7+/v79/fz8+/r4rHlE + iUEAkEsCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAjkkAj0sBiD8As4RR/f39/v39/v7+///+//////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////v7//f38/v7+7+fdl1cUjEYBjkoAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oBjkgB + 4tC+/////f38/////v7+//////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////v///v7+/Pz7////wp51hz4Aj0sCj0kAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjUcBk1EN7+Xb/////f39/////v7+//////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////fz8////z7GRhz4Aj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsCiUEAp3E4/Pv5/v38/v39 + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////v7+/v7+//7+/fz7////3ciwjEUAjkkBj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsChj0Ax6WA//// + /fz7/v7+/v7+//////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /v7+/v7+/f39/fz7+vj1qHI4iUEAj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAkEsCiD8Az7GR/////f38/v7+/v7+//////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + ///+/////fv7////7OHUlVQWjEYBj0oBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBikMAomks+PPv/v39/v79//////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////v7+/fz7 + ////5NPBj0oGjkgBj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oBjEYAl1gU8uri/v7+/fz8//////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////v7+/v7//f38////8uvj + n2QoiUEAkEwCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oCi0QB38u2/////fz7/////v7+//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////f38////u5Jlhz0A + kEwCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAjkkAj0sBiD8AupBi/////fz8/v7+/v7+//////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////v7+/////fz8/v7/+PTvq3dAiD8AkEwBjkkAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjkkAj0wCiEAAt4pa/v7+/f38/v79/v7+//////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////v7+/v7+/fz8/v398erimVwcjEUBj0sBj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjkkBjUgE4M66/////fz7/////v7+//////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////v7+/v7+/////fz8////+vj1rHpFiD8Aj0sCjkkAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAj0oAjUcBlVQR + 7+bd/v7+/f39//////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////v7+/fz7////0LSUiUEAj0sCjkkAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBikIAo2sv + +/n4/v39/v7+//////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////v39////+/n2tYhXhz4Aj0wDjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsChj0AyquI/////fz7/////v7+ + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////v7+/fz8/fz7qHM5iUEAj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsChz4Ay6uJ/////fz7/v7+ + /v7+//////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////v7+///+/v7+/fz7////+vf0 + rXtIikIAj0sDj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAj0sBikIAo2wx+PXx/f38/f38/v7+//////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /v7+/////Pz7////4tLAjkgHjUgCj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oBjEUBllYS8Oje/v7+/f38//////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////fv7////9/Puq3hChz4Aj0sBj0oAj0kA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAjkkAjkoBi0UA4M24/////fz7//////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////v7+/v7+/Pz6 + ////vpZqiD4Aj0wCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBiD8AuItc/////fz8/v7+/v7+//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////7+/////v7+/fz7////7+XaomoxiEAAkEwDj0oAjkkAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEwC + hz4AtolZ/////fz8/v3+/v7+//////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////f39/v7+9vHsnGAdi0MA + j0sBj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAjkkAjkkCjEYB38y3/////fz8/////v7+//////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////v7+/v7+ + /v///v39/Pz7////38y3mFkciUAAkEwCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oBjEYDllYX7+bc/v7+/f38 + /v7+//////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////v7+/v7+/fz7////1LqeiUEBj0sDjkoAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoA + j0sBikIApGww+vj1/v39/f39/v7+//////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////v7+/////////Pv6////////y6yJ + j0sEikMAkEsBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsCiD8Azq+O/////fz7//////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////v39/fz7/Pr5qnY9iD8Aj0wCj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBiD8AzK2M + /////Pz7/////v7+//////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////v7+/v7+/////v7+/fz7////8+zks4NTiUEAjUkAkEsCjkkAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0kAkEsBiUEApnA0/fv6/v39/f79/v7+/v7+//////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////v7+/v///f38////5tjJkUwIjkgAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjEYBlFIP7uTa/v7+/f38//// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////v7+/////v7+/fz7////////3Mixm14hiEAAj0sCj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + jkoAjkkCjkkG4c+7/////fz7/v7+/v7+//////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //7+/v7+/fz7////v5lviD8Aj0sDjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsCiUAAtIZV/////v39/v7+/v7+//////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////v7+/v7+///+/v39 + /fz8////+PTvvpZujUgDikQAkEwDj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsChz4AuI1d//// + /fz7/v7+//////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////7+/f38/f38 + 9O7nm10ci0QAj0oBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oBikMA3ciy/////fz8/////v7+//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////v7+/////v7+/fz7////////28aunmImhz4A + jkkAj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjEYAl1gW8+vk///+/f38/////v7+//// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////v7//Pz7////1LqdikIAj0sB + jkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAjkkAj0oBikMAoWgp+fby/f39/f39//////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////v7+/v7+/////v7+/fz7/v//////8OjdtolbjEUAikMAkEwCj0oAjkkAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsCiUEAzrGR/////fz7/v7+/v7+//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////v39/fz7/f38rn1HiD8Aj0sCj0kAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkA + j0sBiD8AyKiE/////fz8/v7+/v7+//////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////f38////////+/j2y62LlVQSiD8AjkoBj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjkkAj0oBiUEApW4z+vj1/v39/v39//////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////v7+/v7+/Pz7/v7+6d3Qkk8LjUcBjkoAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjUcBkk8J7eTZ + /v7+/f38/////v7+//////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////v7+/////v7+/f38/f39/////Pr4 + 2sSsomktiD8AjEcAkEwCj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAj0oAjkkAjkgD + 49PB/////fz8/////v7+//////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////v7+/f38////w552hz4Aj0wBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBiD4As4VS/////f39/v7+//// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////v7+/v7+/////f38/v7+////////38y3qXU+iUEAikMAkEsCj0sB + jkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsChz4AvJNm/////fz7/v7+/v7+ + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////v7+ + /////f39/f389vHrnGAgikMAj0sCj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkBjEYA3Mex/////fz7/v7+/v7+//////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /v7+/////////v39/fz8/v7/////////4tC9rntHjUgCiUIAkEsCj0sBj0oAjkkAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAj0oBjEUBmVsZ9O7m/v7+/f38//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////v7+/v7+/Pz7//// + 2MCnikMAj0oCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAjkkAj0oAi0MAnmMj+ffz/v39/f38//////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////v7+/v7+/v7+/v7+/v39/fv6//// + /////fz82MGnrXtIjUYAiUEAjkkAkEwCj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAjkkAj0sCikEA0bWX/////fz7/////v7+//////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////v7+/f39////r35IiUAAj0wC + jkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAjkkAj0sBiEAAxKF6/////fz8/v7+/v7+//////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////v7+/////v7+/f38/fz6/v7/////////8uvj0bWXomktjEUAiD4A + j0oBkEsBj0oAjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAkEsC + iUEAqHQ7+/j2/fz8/v39/v7+//////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////v7+/////fz7/v7+6NvNkEwIjUgBj0oBj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + jUgBkk8K7ODV/////fz7/////v7+//////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////v7+ + /////v7+/v7+/v7+/v39/v39/////////f3859jKvZVqnF8hiD8Ai0QAj0oAkEwEj0oAjkkAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkgBjkkE5dXE/////fz7 + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////v7+/v7+/Pz7////w551iD4Aj0wCjkkAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsCiUEAsIBL//// + /f38/v7+///+//////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////v7+/////v7+/fz8/fz6//////// + ////////69/T0baYqndBjkgAiUAAi0QAkEwDj0sBj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBiD8AvZRo/////fz7/////v7+//////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////v7+/f39+vbzn2UlikMAj0oBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sCi0QA2sOq/////fz7/v7//v7+ + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////v7+/////v7+/v7+/v79/v38/v38/f38/v///////////v398Ojf0bWXsYBNlVUShz0A + ikIAjkkAkEwCj0sCj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oBi0UBmlsc8eri/v39/fz8/v7+//////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////v7+ + /////Pz7////28avi0MBj0oCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0sBikMAnmIj+PXx/v39/f38///+//////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////v7+/////v7+/v79/f38 + /fz7/fz6/v7+/////////////////Pr55dXDyaqHr31Lkk8HikMAiUEAjUYAkEwDj0sBjkkAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + jkkAj0oBiUEA1Lqd/////fv6//////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////v7+/f79/fz7/f38 + sYJOiEAAj0sCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAjkkAj0sBiD8AxKB5/////fz8/v///v7+//////////////////////////// + /////////////////////////////////////////////////////////////////v7+/////v7+/v39 + /v39/v39/v39/v39/v39/v38/v38/fz8/fz8/f38/f38/v38/v38/v39////////////////////9vDq + 6d3P0baYtIZVn2Unkk8HhjsAiUAAjkgAj0sBkEsCj0sBj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsCiUAArHpD/f38 + /v39/v39/v7+//////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////fz8////7OHWkk8KjUcAjkoA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAjkkAjUgBkU4J6NrM/////fz8//////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + ////////////////////////////////////////9O3l49PB1Lqew552soNRnmIhikIAikIAiUEAikIA + jUgAkE0EkEwCj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoBjUgCj0wK59nK/////fz7/v7+//////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////v7+/v7+/fz7////xqR+hz4AkEwCjkkAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sC + iUEArnxG/v7+/f38/f39/v7+//////////////////////////////////////////////////////// + /////////////////////////////////v7+/////fz6+PXv+fXy+fXy+fXy+fbz9vDr8Oje8Oje6dzO + 5NXE2MCmzbCPv5dusIBMn2UnmlwZk1EJjEUAhz0AiUEAjUcAkEwEkE0EkU0EkU0EkEwDj0sCj0sCj0sC + j0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sC + j0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sC + j0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sC + j0sCj0sCj0sCj0sCj0sCj0sCj0sBkE0Ehz4Av5ht/v7+/fz7/v7+//////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + ///////////////////////////+/f39/f389/PuoGYnikIAj0sCj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsBiUAA1r2i//// + /Pz7/////v7+//////////////////////////////////////////////////////////////////// + /////////////////fz7////4M25l1YeoGYnn2MknmMkn2QmmVsYkUwEkU0FhTkAgzcAhDgAhDkAhDkA + hToAhToAhz0AiEAAikIAi0UAi0QAikIAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEA + iUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEA + iUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEA + iUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEA + iUEAiUEAikIAhz0Am1wc9O7o/v7+/f39/////v7+//////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////v7+//7//f38////2sSsi0QAj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oBi0UBnWEg9fDr/v39/f39//////// + //////////////////////////////////////////////////////////////////////////////// + /fz7////6NrMtIZYupFjuY9huo9huY9gupBjvJNnvJNnvpdsv5dtv5dtv5dsvpdsvpdsvpdsvpZrvpZr + vpVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVq + vZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVq + vZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVq + vZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvpdsuI1g + 4M24/////fz8/v7+/v7+//////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + ///////////////////////////////////////////////////////////////////////////////+ + /v7+/fz7////tIZUiD8Aj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsBiD8AwZxy/////fz7/v7+/v7+//////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////v7+//////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////v7+/v7+/fz7/v397ePY + llURjEYBj0oBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAjkgBkEsF6NrN/v7+/fz8/////v7+//////////////////////////// + /////////////////////////////////////////////////v7+/////v79/fz7/fz7/fz7/fz7/fz7 + /fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7 + /fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7 + /fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7 + /fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7 + /fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/v39/v7+/v7+/v7+//////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////v7+/Pv7////yaiEiD8Aj0sBjkkA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjkkAkEsCiUEArXpD/v7//f39/v7+//////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////v7+/////f39/v38+vf0oWgrikIAj0sBj0kAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oB + ikMA1bqf/////fz7/v7+/v7+//////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////v7+/v7+/fz7////3MiyjEYBjkkBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oBi0QAmlwa9O7n/v39 + /f38/////v7+//////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////v7+/f39////tIdViD8Aj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsBiD4Avpds/////f38/v7+//////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////v7+//// + /fz8/v7+7+XblFIOjEYBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjUgBjkoD5dbF/v7//fz7/v7+/v7+//////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////v7+/////v7+/v38/v39 + /v38/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39 + /v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39 + /v39/v39/v39/v39/v39/v39/////////v////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////v7+/v7+/fz8////y6uI + iUEAj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAjkkAj0sBiUEAq3c//fz7/v38/f79//////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////v7+//////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////v7+/v7+//////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////f39/v39/Pv6pGwuikEAj0sBjkkA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjkkAj0sCikIA1Lqd/////fz7/v///v7+//////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////v7+/v7++fbzqXY9nmImoGYnoGUnoGUnoGUnoGUnoGUnoGUnoGUn + oGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUn + oGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnn2UnoGUnnmMm4c+8//// + /fz8//////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////v7+/////fz7////4tC9jUgEjkkCjkoAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oBi0QA + mVsZ8+zl/v38/fz8//////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////v7+/fz7////xaJ8hToAi0QAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIA + ikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIA + ikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAi0QAhDoAqHI6+/n3/v39/v7+//////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////v7+/v7+/fz8////uIxciUAAkEsCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEwCiD8AvpZs/////fz7 + /v7+//7+//////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////v7+/////fz7/v7+ + 7ODUk1EPjUcCkEwDj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sB + j0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sB + j0sBj0sBj0sBj0sBj0sBj0sCkEsCjkkDkk4L6t7Q/////fz7//////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////f39/v7+8enhllYQjUYAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAjkkBjkkE49PB/////fz8/v///v7+//// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////v7+/f38////soJOiEAAj0sBjkkA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjkkAj0wBiD8Awp10/////fz8/v7+/v7+//////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////v7+//// + /Pz7////za+OikEAkEsBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAj0sDiEAAp3I3/Pr4/f38/v39/v7+//////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////v7+/Pz7////2cOri0QAj0oBjkkAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oBi0UAnWAf + 9vHs/v79/fz8//////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////v7+/f39/f38+/n3pm8z + iUEAj0sBj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAjkkAj0oCikIA0LOU/////fz8/////v7+//////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////v7+/v7+/f38/f38+PPvoGcqi0QBj0sBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0sCiUEA1r2i/////fz7/v7+/v7+ + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////v7+/////fz7////4tC9jkkDjkkBjkoAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAi0YAl1gT8+3l/v7+/f39//////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /fz7////x6V/iD8AkEsCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsCiEAArXtF/f38/f38/v7+//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////v7+/v7+/fz8////vJJmiD4AkEwCjkkAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sCiEAA + upFj/////fz8/v7+/v7+//////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////v7+/f38/v7+6t7RklALjUcB + jkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0kAjkgBkU0I6NrM/////f38/////v7+//////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////v7//fz8/v798eril1kVi0QAj0oBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkgBj0oG5NPC/////fz7 + /////v7+//////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////v7+/v79/f38/f38soNQiUEAj0sCj0kAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsC + hz4AwZty/////fz8/v7+/v7+//////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + ///////+/v///f37////0bWXiUEAj0sCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBiUEApm8z/fz6/f38/f39//////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////v7+/////fz7////3MexikMAj0sCjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oBi0MBnGEj9vLt/v39/f38 + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////f39 + /f38/Pr4qHM6iUEAj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oCiUEAz7KS/////fz7/v7+/v7+//////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////v39/f38+PXxomotikIAj0sBj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBiUIA1r2i/////fz7/////v7+//////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////v7+/v7+/fz7////49PBjUgC + jkkBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAjEYBllYU8ejf/v79/f38/////v7+//////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////v7+/v7+/fz7////y6yJ + hz8Aj0sCjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0kAkEsBiD8ArXpD/fz7/v38/v7+/v7+//////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////v7+/fz8////vJNmhz8Aj0sBjkkAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + jkkAkEsChz4At4ta/////fz8/v7+//////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////v7+/////f39////7ePZlFIPjEYAj0oAj0kAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + jkoAjUgCkEwL6dzO/////fz7//////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////v7+/////fz8/v398+vkmFoXi0UAj0oBj0kAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAjkkBjUcD + 38y3/////fz7/v7+/v7+//////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////v7+/fz7/f38tYdVhz8Aj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBiD8AwZtx//// + /fz8/////v7+//////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////v7+/v7+/fz8////0reaikIAjkoBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBiUEApGww+/j2/v38/f39 + /////v7+//////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////v7+/v7+/fz6////3su1jEUEjkoCjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oBi0QAnGAf9fDq/v79/f39//7+//////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////v79/v39/f39q3c+iUEAj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBiD8AzKyK/////Pz7/v7+//////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////v/+/f39/v79 + +fb0o2otikMAj0sBj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sCikIA07eb/////fz7/v7+/v7+//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////v7+/////fz8 + /v7/59fIjkoEjUkBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oBi0YBl1cV7+bc/f39/fz7/v7+/v7+//////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////v7+//7//fv7////yqmGiD8AkEwCjkkA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjkkAj0sBiEAAqXU7/Pv6/f38/v7+//////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////v7+/v7+/fz8////v5dtiD4A + kEsBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAjkkAj0sBiD8Atotb/////fz7/v7+///+//////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////7+/fz8/v7+7uTalVQUjUcCj0oBj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkCj0oK + 5tbG/////fz8/////v7+//////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////f39/v399O7om10ci0UBj0oBj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + jkkAj0oBjUcB4M25/////f38/v7///////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////v7+/////f38////tolXiD8AkEwCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEwCiD4Avpdr/////fz7/v39/v7+ + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////v7+/////fz8////07ibiUAAkEsBjkkAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0sCikIAomos + +PTw/fz8/f39/v7+//////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /fz7////3ciyikMAj0oCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAj0oAi0UAmlsY9O7n/v7+/v39/v////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////v7+/f39/f38/v79q3c/iUAAj0wCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEwChz4AyaiF/////fz7//// + /v7+//////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////v7+/f39/f38+fXxomoviUEA + kEwCjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAjkoAj0sCiUAA07mc/////fz7//////7+//////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////fz8////6NvMkEwHjUgBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAjUcAk1EL7uTa/////f39//////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////v7+/////f38////y6uJhz8Aj0sBjkkAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAj0sB + iUAAq3dA/Pr4/fz7/f39/v7+//////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////v7+/v///fz7 + ////wpxziD8AkEsBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAjkkAkEwCiD8AtIZU/v39/fz7/v39/v7+//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////f38/v7+7uPYlFMPjUcBjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkgBj0oC5dbG/////fz7 + /v7+//////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + ///////////////////////////////////////////////////////////+/fz8/v399/LunGAfi0MA + j0sBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAjkoAj0kBjEUC3cm0/////fz7/////v7+//////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /v7+/v79/f38/v7+tYhYiD8AkEsCj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0wChz0AvpZr/////fz8/v7+//////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////v7+/v///fz7////17+likMAj0oBjkkAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kA + j0oBikMAomgq+vf0/f39/v7+//////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////v7+/////Pz7////4M24 + i0UAj0oBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0sBi0QBm10f8+3m/f38/fz7/v7+/v7+//////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////7+/v79/f39////rnxGiUAAkEsCjkkAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sCiEAAyKWB + /////Pz7/v7+/v7+//////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////v79/f38+PTxomkti0MAj0sBjkkAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + jkkAkEwBiUEA0rea/////fz7/v7+//////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////v7+/v7//fz7////6t3QkE0IjUgBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oBjUcBkk8M69/T/v7+/fz7//// + /v7+//////////////////////////////////////////////////////////////////////////// + /////////////////////////v7+/v7+/fz7////y6yKhz4Aj0sCjkoAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sCiUAAqnU9/Pz7 + /v38/v39/////v7+//////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + ///+/v7+/fz7////wZtyhz8Aj0wCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBiEAAsoJP/////f38/v7+//////////////// + //////////////////////////////////////////////////////////////////////////////// + /////v7+/////f38/v7+8enhllYSjUcBj0oBj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjUgCj0sJ5dbG//7+/Pz7/v7+/v7+//// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////v7+/////f38/v79 + +PTwnGAfi0QAj0sAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAjkkAjkoCi0QA28St/////Pz7/v7+/v7+//////////////////////// + /////////////////////////////////////////////////////////////////////////v7+/f38 + ////uI1diD8AkEsCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsBhz8AvpZq/////fz7/v7+//////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////v7+/v7+/fz7////2sSsi0UAj0oB + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0kAj0sCikMAnmQl9/Lt/f38/f39/////v7+//////////////////////////////////// + /////////////////////////////////////////////////v7+/v7+/fz7////4tC+jUcCjkkBj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0kAj0oBi0QAmVsZ9O3m/v79/f38/////v7+//////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////v7+/f38////sYFMiD8Aj0sBjkkAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkA + kEwChz4AxaJ8/////fz7/v7+//////////////////////////////////////////////////////// + ///////////////////////////////////+/f39/f39+/n3pGwwikEAj0sBjkkAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAj0sCiUAA + 07mb/////Pz7/v7+/v7+//////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////v7+/////fz7/v7+7OHUkU0HjUgBj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oBjUcBk1AO6+DU + /v7+/Pz7/v7+/v7+//////////////////////////////////////////////////////////////// + /////////////v7+/v///f38////za+OiD8Aj0oBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsCiUEAq3c+/fz7/fz8/f79//// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////v7+/v7+/fz8////xqR/iD8Aj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0wChz4AsIBM/v79/fz7/v7+//// + //////////////////////////////////////////////////////////////////////////////7/ + /fz8/v7+8erillYSjEYBj0oBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkBjkkF5tfH/////fz8/////v7+//////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////f39/f39+PXwn2Qli0MAj0oBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oBikMA2cKp/////fz8/v7///////////////// + /////////////////////////////////////////////////////////v7+/v7+/fz8////uI1fiD8A + kEwCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAjkkAj0wDhz4AvpVq/////Pz7/v7+/v7+//////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////v7+/////fz8//// + 2sWtikEAj0oBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oBi0MAnWAg9vDq/f38/f38/v7+//////////////////////////// + /////////////////////////////////////////////fz7////4tC9jUcAjkkBjkkAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + jEQAm10b9O/p/v7+/f38//////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////v7+/v7+/v39/v7+soJPiUAAkEwC + jkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAjkkAj0sDhz8Aw552/////fz7/v7+//7+//////////////////////////////////////// + /////////////////////v7+/f39/f38/Pr4pW8yikIAj0sCj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sCiUAA07ib/////fz7 + /v7//v7+//////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////f38/v7+7OHWklAMjUcBj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkA + jUgAklAK6dzO/////f38/v////////////////////////////////////////////////////////// + /v7+/////fz7////za+OiUEAj0sCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0sCiEAAqXY9+/n3/fz7/v39///+//////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////v7+/////fz8////yamFiD8Aj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0wCiEAArXpD/Pv6 + /fz6/v39/v7+/////////////////////////////////////////////////////////f39/v7+8eng + lVMPjEYAj0oBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAjkkAjkkBkEwF5tjJ/////f38/v///v7+//////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////v7+/f39/v39+fXyomkrikMAj0sCj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAj0sDikMC17+l/////fz7/////v7+ + /////////////////////////////////////////////v7+/v7+/f38////uI1diEAAkEsDjkkAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + jkkAkEwBiD8Au5Jl/////fz8/v7+//7+//////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////v7+ + /////fz8////3ciyi0QAjkoCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAj0sBi0QAnmIi9vLt/v7+/v7+//////////////////// + /////////////////////////v7+/////fz8////4tC9jkgEjkkBj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oBjEUBmFoX8uvj + /v39/fz8/////v7+//////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////v7+/v7+/fz8//// + tYdViD8AkEsBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAjkkAj0wDhz4AwZtx/////fz7/v7+/v7+//////////////////////////// + /////////////v7+/v39/Pr4pG0vikMAj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBiEAAz7KT/////fz7/v7+/v7+//// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////fz7/v7+7uTalVQQjEYBj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oBjUgCkU4N59jI/////fz8/////v7+/////////////////////////////v7+/v7+/fz8 + ////za6NiUAAj0sCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sCiUEApm8z/Pv5/v39/f39//////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////v7+/v7+/fz7////yaiDhz4Aj0sCjkkAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sB + iUAAqnY9/fz8/f38/v7+/////////////////////////////v7+/////f38/v398enhllcVi0UBj0oB + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAjkgBjkkD5NTD/////fz8/v7+/v7+//////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////f39/v39+/j2oWgqikIAj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sCiUIA07mb//// + /fz7/v7+/////////////////////////////v7+/f38////t4tahz8AkEsBjkkAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sCiD8A + upFj/////fz8/v7+//////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////v7+/v7+/fz7////4M67jEYDjkkCj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0sBi0QBm18g8+3l/v39/f38/v7+/v7+ + /////////////v7+/v7+/Pz7////5NTEjkkEjUkCjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAj0oAjEUAllcT8+vk/v39/f38//// + /v7+//////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /v7+/fz8////uIxciD8Aj0sCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsChz0Avpdr/////fz7//////////////////////// + /f39/fz8+/n3p3E4iUEAj0sCj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAj0sBiUAA0LSV/////fz7/v7+/v7+//////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////v7+/////fz8/v7+8Ojf + llYSjEcBj0oAj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAjkkAjkgBkEwI5dfG/////fz7/v7+/////////////v7+/fz7////0LSWiEAA + kEsCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAjkkAj0sBikIAp3A1/Pr5/v39/v39//////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////v7+/v7+/fz7////za2Mhz8AkEsCjkkA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0kAj0sBiEEArHlC+/r4/fz8/v39/v7+/v7+/v7+/f38/v398+zkmVoZi0UBj0oBj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + jkkBjUcA49LA/////f38/////v7+//////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////v38/f39+/n3pG0yikEAj0sCjkoAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sC + iD8A0ria/////fz7//////7+/v7+/fz7////u5Jlhz0Aj0wDjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsBiD8Au5Jk/////f38 + /v7+/v7+//////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////v7+/////f38////38y3jUcAjkoBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0sBjEUBmlsb8eng/v79 + /f38/////f38////5NTDjkkEjkkBjkkAj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oBjEUBl1gV8uvk/v79/f38//////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////v7+/v7+/fz8////t4xchz4AkEwCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0wCiD4Au5Jm/////fz7/f39/fz8+/n3 + qXQ6iUIAj0sBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAjkkAkEsBiD8A0LOU/////fz8/////v7+//////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /fz7/v7+8engllYWjEYBj0oBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAjkkBjkgD5NTD/////Pr5////0bSXiEAAj0sDjkoAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0kAj0sCikIAp3E3/Pr4/v39/v39/v7+//////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////v7+/////fz8////0baX + iUAAkEsBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0kAj0sBiUAApnE2+fbz/f388uvjl1cTi0UAj0oAj0kAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAjkkBjkgE5NTD + /////fz8/v////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////v7+/v3+/v39/Pv5p3I4iUEAkEsBjkkA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjkoAj0sCiUAAz7GT////upFjiD8Aj0wCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEwCiD8Au5Fj/////fz8/v7///7+//// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////fz7////4tG/jUcDjkkCjkoAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAj0oAi0MA + nWEh1r2ikE0KjkgBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0sBjEYBl1gX8urj/v7+/f38///+//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////v7+/v/+/Pz7////u5FkiD8AkEwBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oAjkkAkU4FjUcAj0oA + jkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAjkkAj0sCiEAA0bWW/////fz7/v7+/v7+//////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////f38/v7+8+zlmFkZjEYBj0sBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkgAj0oAjkkAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBikIA + qHI4/Pv5/v39/v7+//////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////v7+/v7+ + /fz6////0LOTiD8AkEwCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oAj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kCjUcF49G//////f38//// + /v7+//////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////v7+/v39+/r3qnY+ + iUEAkEsBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sChz4Au5Nm/v///fz8/v7+/v7+//////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////v7+/////f38////5tfIjkkIjkkCj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAjkoAj0oAjEYAl1cU8+zl/v7+/v39//////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////v7+/v7+/fz7////v5huhz4Aj0sCjkkAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kA + kEsChz8Az7KS/////fz7/////v7+//////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////v79/v7+9O7pmlwZi0UAj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAkEsCikEApnA3+vf0/fz7 + /v39/v7+//////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////v7+/////fz7////07ibiD8AkEsDj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkoBjEUA38y3/////fz7//////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////v7+/v39 + /fz7+/n3q3hBiUEAkEsCj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAjkkAj0wChz4AuY1f/////f38/v7+/v7+//////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////fz8////59jIj0oD + jkkBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oBjEYCl1YV7+Xb/v39/fz7/v7+//////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////v7+/v7+/f37////vpdthz0Aj0wCj0kAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsBhz4Ay6uJ + /////fz8//////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////v7+/fz8/v399O/om18hi0QBj0oBj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBiUEApW40+vf0/v39/v39/v7+/v7+ + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////f38////1r2iiUAAj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAjkkCjEYE4M24/////fz7/v7+//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /v7+/v7+/v79/v38/v39rnxIiEAAkEsBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAjkkAkEwChz8At4tZ/v7+/fz7/v7+//////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////v7+/fz7 + /v7+6NrMkU0LjkgCjkoBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjEYB + llYW7+Xb/v7+/f38/////v7+//////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////7//fz7////wJpwhz0A + kEwCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sCiD8Aza6M/////fz7/v7+ + /v7+//////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////v7+/////f39/v799vLtnWIki0QAj0sBj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAj0sBiUEApG0x+vf0/f38/v7+//////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////v7+/v7+/fz7////1r6ii0MAj0oCjkkAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAjkoAj0kCjEYF38y3/////fz7/////v7+//////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////v7+/f38/fz8rXtEiUAAj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkA + j0wChz8AuIxc/v7+/fz7/v39/v7+//////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /v7+/////fz8////697Skk8MjUgBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAjkoAjUYAllYR8Ofe/v/+ + /v39/v////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////v7+/v7+/fv6 + ////xKF6iD4AkEsCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0wCiD8Ay6uJ/////v38//////7+//////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////v79/v7++fXyn2Qli0MA + j0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0kAj0sCiUEApW8z+fby/fz7/f39/v7+//////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////v7+/////fz8////2cKqikQAjkoCj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjkoAjkkBjEYA4M24/////fz8/v7+//////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////v7+/v7+/fz7/Pv6sH9LiD8AkEsCj0kAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0wChz4At4pa + /////f38//////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////f38////7OLWkk4KjUgBjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0sBjEUBl1cV7uXb/v39/Pz8/v7+/v7+ + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /v7+/////fz8////xaJ8iD8Aj0wCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsBiUAAzK2L/////Pz7/v7+//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////v7+/v39/fz7 + 9/LtomgsikIAj0sCj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAjkkAj0sBiUIApGww/Pn3/f38/f39//////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////fz7////3Mewi0QAj0oB + jkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkB + jUcE3sq2/////Pz7/v7+/v7+//////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////v7+/v7+/f38////tolXiD8Aj0wBjkkAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsBiD8AuIxb/////fz8/v7+ + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////v7+/fz7/v7+7eLWlVMSjUcCj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjUYBllYT8Ojf/v7+/f39/////v7+//////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////fz8////yKaBhz4AkEsBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAjkkAj0sBhz8AyaiF/////fz7/v7+/v7+//////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////v7+ + /v7+/v39/v39+PTxomktikIAj0sBj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oBikMAomgq+fXy/v39/f39//////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////v7+/fz7//// + 3Mixi0MBjkoCjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oBi0MA3ciy//// + /fz8/////v7+//////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////v7+/fz7/v79tIdVhz4AkEwC + jkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEwBhz8AtIdV/////f37/v7+/v7+//////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////v7+/////f38////7+belVUUjEYBj0oBj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAjkoAjUYBlFMO7uPZ/v7+/fz8//////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////v7+/v7+/fz7////y6yJiD8Aj0sCjkkAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjkkAkEwBhz4AyKaD/////fz7/v///v7+//////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////v7+/v38+ff0pW4yikEAj0sBj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0sBikIAoWgq + +vf1/f38/f39//7+//////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////v7+ + /////fz7////4M24jEUFj0kCjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkCjEYB3ciy/////fz7/////v7+ + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////v7+/v39/fz7/v39 + tolZhz4AkU4FkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwD + kEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwD + kEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwCkU0EiEAAtIVS/////f39/v7+///+//////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////v///v39////8OfdlVQQhDoAiD8A + iD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4A + iD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4A + iD4AiD4AiD4AiD8AhToAkU4K7+Xc/v7+/f38/////v7+//////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////7+/////v7+////38y4y6yNzrGQzrCQzrCQzrCQzrCQ + zrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQ + zrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrGS + yqqM38u2/////v79/v7+/v7+//////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////v7+/v7+/v7+/v79//////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////v79/v7+ + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////f38/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8 + /fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8 + /fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/f38/v7+/////v7+//////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + ////////////////////////////////////////////////////////////////////////AAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA= + + + \ No newline at end of file diff --git a/LFP_Manager_PRM/Forms/fmxCalibration.Designer.cs b/LFP_Manager_PRM/Forms/fmxCalibration.Designer.cs new file mode 100644 index 0000000..e0373c8 --- /dev/null +++ b/LFP_Manager_PRM/Forms/fmxCalibration.Designer.cs @@ -0,0 +1,192 @@ +namespace LFP_Manager.Forms +{ + partial class fmxCalibration + { + /// + /// Required designer variable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Clean up any resources being used. + /// + /// true if managed resources should be disposed; otherwise, false. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Windows Form Designer generated code + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + this.components = new System.ComponentModel.Container(); + System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(fmxCalibration)); + this.layoutControl1 = new DevExpress.XtraLayout.LayoutControl(); + this.btnResetAll = new DevExpress.XtraEditors.SimpleButton(); + this.btnClose = new DevExpress.XtraEditors.SimpleButton(); + this.ucCalibrationConfig = new LFP_Manager.Controls.ucCalibration(); + this.layoutControlGroup1 = new DevExpress.XtraLayout.LayoutControlGroup(); + this.layoutControlItem1 = new DevExpress.XtraLayout.LayoutControlItem(); + this.layoutControlItem2 = new DevExpress.XtraLayout.LayoutControlItem(); + this.emptySpaceItem1 = new DevExpress.XtraLayout.EmptySpaceItem(); + this.layoutControlItem3 = new DevExpress.XtraLayout.LayoutControlItem(); + this.tmrDisplay = new System.Windows.Forms.Timer(this.components); + ((System.ComponentModel.ISupportInitialize)(this.layoutControl1)).BeginInit(); + this.layoutControl1.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup1)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem1)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem2)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.emptySpaceItem1)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem3)).BeginInit(); + this.SuspendLayout(); + // + // layoutControl1 + // + this.layoutControl1.Controls.Add(this.btnResetAll); + this.layoutControl1.Controls.Add(this.btnClose); + this.layoutControl1.Controls.Add(this.ucCalibrationConfig); + this.layoutControl1.Dock = System.Windows.Forms.DockStyle.Fill; + this.layoutControl1.Location = new System.Drawing.Point(0, 0); + this.layoutControl1.Name = "layoutControl1"; + this.layoutControl1.OptionsCustomizationForm.DesignTimeCustomizationFormPositionAndSize = new System.Drawing.Rectangle(1265, 291, 250, 350); + this.layoutControl1.Root = this.layoutControlGroup1; + this.layoutControl1.Size = new System.Drawing.Size(806, 599); + this.layoutControl1.TabIndex = 0; + this.layoutControl1.Text = "layoutControl1"; + // + // btnResetAll + // + this.btnResetAll.Location = new System.Drawing.Point(4, 559); + this.btnResetAll.Name = "btnResetAll"; + this.btnResetAll.Size = new System.Drawing.Size(110, 36); + this.btnResetAll.StyleController = this.layoutControl1; + this.btnResetAll.TabIndex = 6; + this.btnResetAll.Text = "Reset"; + this.btnResetAll.Click += new System.EventHandler(this.btnResetAll_Click); + // + // btnClose + // + this.btnClose.Location = new System.Drawing.Point(702, 559); + this.btnClose.Name = "btnClose"; + this.btnClose.Size = new System.Drawing.Size(100, 36); + this.btnClose.StyleController = this.layoutControl1; + this.btnClose.TabIndex = 5; + this.btnClose.Text = "Close"; + this.btnClose.Click += new System.EventHandler(this.btnClose_Click); + // + // ucCalibrationConfig + // + this.ucCalibrationConfig.Location = new System.Drawing.Point(4, 4); + this.ucCalibrationConfig.Name = "ucCalibrationConfig"; + this.ucCalibrationConfig.Size = new System.Drawing.Size(798, 551); + this.ucCalibrationConfig.TabIndex = 4; + // + // layoutControlGroup1 + // + this.layoutControlGroup1.CustomizationFormText = "layoutControlGroup1"; + this.layoutControlGroup1.EnableIndentsWithoutBorders = DevExpress.Utils.DefaultBoolean.True; + this.layoutControlGroup1.GroupBordersVisible = false; + this.layoutControlGroup1.Items.AddRange(new DevExpress.XtraLayout.BaseLayoutItem[] { + this.layoutControlItem1, + this.layoutControlItem2, + this.emptySpaceItem1, + this.layoutControlItem3}); + this.layoutControlGroup1.Name = "Root"; + this.layoutControlGroup1.Padding = new DevExpress.XtraLayout.Utils.Padding(2, 2, 2, 2); + this.layoutControlGroup1.Size = new System.Drawing.Size(806, 599); + this.layoutControlGroup1.TextVisible = false; + // + // layoutControlItem1 + // + this.layoutControlItem1.Control = this.ucCalibrationConfig; + this.layoutControlItem1.CustomizationFormText = "layoutControlItem1"; + this.layoutControlItem1.Location = new System.Drawing.Point(0, 0); + this.layoutControlItem1.MinSize = new System.Drawing.Size(104, 24); + this.layoutControlItem1.Name = "layoutControlItem1"; + this.layoutControlItem1.Size = new System.Drawing.Size(802, 555); + this.layoutControlItem1.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem1.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem1.TextVisible = false; + // + // layoutControlItem2 + // + this.layoutControlItem2.Control = this.btnClose; + this.layoutControlItem2.CustomizationFormText = "layoutControlItem2"; + this.layoutControlItem2.Location = new System.Drawing.Point(698, 555); + this.layoutControlItem2.MinSize = new System.Drawing.Size(93, 26); + this.layoutControlItem2.Name = "layoutControlItem2"; + this.layoutControlItem2.Size = new System.Drawing.Size(104, 40); + this.layoutControlItem2.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem2.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem2.TextVisible = false; + // + // emptySpaceItem1 + // + this.emptySpaceItem1.AllowHotTrack = false; + this.emptySpaceItem1.CustomizationFormText = "emptySpaceItem1"; + this.emptySpaceItem1.Location = new System.Drawing.Point(114, 555); + this.emptySpaceItem1.Name = "emptySpaceItem1"; + this.emptySpaceItem1.Size = new System.Drawing.Size(584, 40); + this.emptySpaceItem1.TextSize = new System.Drawing.Size(0, 0); + // + // layoutControlItem3 + // + this.layoutControlItem3.Control = this.btnResetAll; + this.layoutControlItem3.CustomizationFormText = "layoutControlItem3"; + this.layoutControlItem3.Location = new System.Drawing.Point(0, 555); + this.layoutControlItem3.MinSize = new System.Drawing.Size(93, 26); + this.layoutControlItem3.Name = "layoutControlItem3"; + this.layoutControlItem3.Size = new System.Drawing.Size(114, 40); + this.layoutControlItem3.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem3.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem3.TextVisible = false; + // + // tmrDisplay + // + this.tmrDisplay.Interval = 500; + this.tmrDisplay.Tick += new System.EventHandler(this.tmrDisplay_Tick); + // + // fmxCalibration + // + this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 14F); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.ClientSize = new System.Drawing.Size(806, 599); + this.Controls.Add(this.layoutControl1); + this.IconOptions.Icon = ((System.Drawing.Icon)(resources.GetObject("fmxCalibration.IconOptions.Icon"))); + this.Name = "fmxCalibration"; + this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen; + this.Text = "Calibration"; + ((System.ComponentModel.ISupportInitialize)(this.layoutControl1)).EndInit(); + this.layoutControl1.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup1)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem1)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem2)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.emptySpaceItem1)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem3)).EndInit(); + this.ResumeLayout(false); + + } + + #endregion + + private DevExpress.XtraLayout.LayoutControl layoutControl1; + private DevExpress.XtraLayout.LayoutControlGroup layoutControlGroup1; + private DevExpress.XtraEditors.SimpleButton btnClose; + private Controls.ucCalibration ucCalibrationConfig; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem1; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem2; + private System.Windows.Forms.Timer tmrDisplay; + private DevExpress.XtraLayout.EmptySpaceItem emptySpaceItem1; + private DevExpress.XtraEditors.SimpleButton btnResetAll; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem3; + } +} \ No newline at end of file diff --git a/LFP_Manager_PRM/Forms/fmxCalibration.cs b/LFP_Manager_PRM/Forms/fmxCalibration.cs new file mode 100644 index 0000000..4c7c170 --- /dev/null +++ b/LFP_Manager_PRM/Forms/fmxCalibration.cs @@ -0,0 +1,137 @@ +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Data; +using System.Drawing; +using System.Text; +using System.Linq; +using System.Windows.Forms; +using DevExpress.XtraEditors; + +using LFP_Manager.DataStructure; +using LFP_Manager.Function; +using LFP_Manager.Controls; + +namespace LFP_Manager.Forms +{ + public delegate void CalibUpdateEvent(object sendor); + public delegate void CalibCmdEvent(int sId, int mode, int flag, ref DeviceParamData aParam, ref DeviceCalibration aCalib); + + public partial class fmxCalibration : DevExpress.XtraEditors.XtraForm + { + #region VARIABLES + + int SystemId = 0; + DeviceSystemData SystemData; + DeviceParamData Param; + DeviceCalibration Calib; + + public event CalibUpdateEvent OnUpdate = null; + public event CalibCmdEvent OnCommand = null; + + #endregion + + #region CONSTRUCTORS + + public fmxCalibration() + { + InitializeComponent(); + } + + public fmxCalibration(int sId, DeviceCalibration aCalib) + { + InitializeComponent(); + + InitComponent(); + + SystemId = sId; + Calib = aCalib; + + tmrDisplay.Enabled = true; + } + + public void InitComponent() + { + // Cell Voltage Calibration + ucCalibrationConfig.OnCommand += OnCmdEvent; + ucCalibrationConfig.OnGetBattData += OnGetCellDataEvent; + } + + #endregion + + #region COMMAND EVENT + + private void OnCmdEvent(int mode, int flag, ref DeviceCalibration aCalib, ref DeviceSystemTotalData aTotal) + { + OnCommand?.Invoke(SystemId, mode, flag, ref Param, ref aCalib); + } + + private Int32 OnGetCellDataEvent(int item, int cno) + { + Int32 result = 0; + + switch (item) + { + case 0: // Cell Voltagae Value + if ((cno > 0) && (cno <= csConstData.SystemInfo.MAX_MODULE_CELL_SIZE)) result = (Int32)SystemData.ValueData.CellVoltage[cno - 1]; + break; + case 1: + result = (Int32)SystemData.ValueData.voltageOfPack; + break; + case 2: + result = (Int32)SystemData.ValueData.current; + break; + } + + return result; + } + + #endregion + + #region BUTTON EVENT + + private void btnClose_Click(object sender, EventArgs e) + { + Close(); + } + private void btnResetAll_Click(object sender, EventArgs e) + { + OnCommand?.Invoke(0xFF, 25, 1, ref Param, ref Calib); + } + + #endregion + + #region TIMER EVENT + + private void tmrDisplay_Tick(object sender, EventArgs e) + { + + DisplayValue(); + OnUpdate?.Invoke(this); + } + + #endregion + + #region DISPLAY DATA + + private void DisplayValue() + { + // Cell Voltage Parameter + ucCalibrationConfig.UpdateData(Calib); + } + + #endregion + + #region PUBLIC FUCTIONS + + public void UpdateData(DeviceParamData aParam, DeviceCalibration aCalib, DeviceSystemData aSystemData) + { + SystemData = aSystemData; + Param = aParam; + Calib = aCalib; + } + + #endregion + + } +} \ No newline at end of file diff --git a/LFP_Manager_PRM/Forms/fmxCalibration.resx b/LFP_Manager_PRM/Forms/fmxCalibration.resx new file mode 100644 index 0000000..4464ab1 --- /dev/null +++ b/LFP_Manager_PRM/Forms/fmxCalibration.resx @@ -0,0 +1,4574 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + 17, 17 + + + + + AAABAAQAICAAAAEAGACoDAAARgAAADAwAAABABgAqBwAAO4MAACAgAAAAQAYACjIAACWKQAAAAAAAAEA + GAAoIAMAvvEAACgAAAAgAAAAQAAAAAEAGAAAAAAAgAwAAAAAAAAAAAAAAAAAAAAAAAD///////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + ///////////////////////////////////////////////////+/v7+/v7+/v7+/v7+/v7+/v7+/v7/ + ///+/v7////////////////////////////////////////////////////////+/v7+/v7+/v7+/v7+ + /v7+/v7+/v7+/v7+/v7////+/v7+/v3+/v3+/v3+/v7+/f3////////+/v7///////////////////// + ///////////////////////////+/v7////+/v7+/f3+/v7+/v3+/v3+/v3+/v7////7+ff///////// + ///////////////+/v3+/v7////+/v7////////////////////////////////////////+/v7////+ + /v7+/v7////////////////////////7+PbCnHejazCkbTKkbDKlbjSdYTDLrIr////9/Pz+/v7///// + ///////////////////////////////////////////+/v79/fz////BnHSeYjClbjSkbDKkbDOjazDc + x7L49PGkbDKEOACKQwCJQQCHPgCNRwTt49n+/v39/Pz+/v7+/v7///////////////////////////// + ///+/v7+/v79/Pv//v7j0sKHPgCJQACJQQCLRACCNgCufkv////////q3tKOSQePSgSPSwKRTQSHPgCt + e0f////9/Pv+/v7////////////////////////////////+/v7////9/f39/Pv9/PuiaS6JQQCQTQOP + SwKNSAOUUxLz7ef+/f37+Pb////AmnKGOwCQTAKOSQCPSwKHPwDaxa7////8+/r+/v7+/v7///////// + ///////////+/v7///7+/v77+vj////OsJGGPACQTAKOSQCQTAKGPADNr4/////7+ff9/Pv9/fz38u6Z + WhuLQwCPSgGPSgGLRQGcXyH59vP9/fz9/fz////+/v7////////+/v7+/v7////+/v77+vn////u5NqS + Tw+OSAKOSQCPSwKJQACiai/8+vn9/Pz9/f3+///9/Pv////WvqWHPQCQTAOOSQCQTQOGPADDn3j////8 + +/r+/v7////+/v7+/v7+/v79/fz8+/r9/f3////u49mdYSiKQwCPSwGOSQCPSwKKQgDi0L/////9/Pv+ + /v7//v7+/v79/Pz///+seUOIPwCQTAKOSQCOSQKNSAbq39P+/v39/Pz+/v7////////////////////+ + /v7SuJ6WVRiLRQCRTwaQTASSUAeHPgC4jV7////9/Pv+/v7////+/v7+/v79/Pz+/v7r39SOSQeOSgKO + SQCQSwKHPwCsekT+/v/9/Pz+/v78+/r49PDy6uPi0cDDn3yZXB9/MACEOACHPgCGOwCFPACEOgCTURDz + 7Ob9/fz9/f3////+/v7////////+/v78+/r////CnneGPACQTAKOSQCQTAKHPgDYwan////9/Pz38u7o + 2szgzbvTuZ/MrY/St5zeyrTcyLLcx7Hcx7HdybPVvKfl1cX////9/fz+/v7+/v7////////+/v7////9 + /f39/Pz59fObXiCKQwCPSgGPSgGLRAGaXB349PH9/fz+/v/////////////////28e3AmnrEn3rDn3nE + oXu+lnbcxrD////9/Pv+/v7////////////////////+/v7+/v79/Pv////bxa+HPgCPSwKOSQCQTAKG + PADAmnH////8+/r9/fz9/Pv7+ff9/Purd0F/MACGOwCFOgCEOQCEOADj0sH+/fz9/Pz+/v7+/v7///// + ///////////////////+/v79/Pz///+ufkqHPgCQTAKOSQCOSgKNRwPp3M/+/v79/Pv8+/r////YwaqH + PgCSTwaQTAOSTwaHPgDDn3n////9/Pv+/v7////////////////////////////+/v7+/v79/Pz+/v7t + 4tiNSAaNSAKOSQCQTAKJQQCqd0D+/v79/Pv9/fz49fKbXyCMRQGPSwGPSgGLRAGYWRn38+/9/fz9/f3/ + ///+/v7///////////////////////////////7+/v79/Pv////EoHqFOwCQTQOOSQCQTQOHPwDUu6H/ + ///////Dn3iGPQCQTQOOSQCQTAOGPQDWvaT////9/Pv+/v7+/v7///////////////////////////// + ///+/v7////9/f39/Pv59vScYCOLRQGPSwKPSgGMRQGWVhf7+ffu5duNSAaOSQKOSQCQTAKJQQCqd0D+ + /v79+/r+/v7////////////////////////////////////////////+/v7+/v78+/r////cx7GJQgCQ + TAOOSQCQTAKFOwC/mXKzhVSGPACQTAKOSQCPSgKOSQfq3dH////9/Pv+/v7+/v7///////////////// + ///////////////////////////////+/v79/Pv///+wgU6HPgCQSwKOSQCPSgGMRgCMRwCPSgCOSQCQ + TAKGPADAmnH////9/Pr+/v7////////////////////////////////////////////////////+/v7+ + /v79/Pz+/v3u5NuPSwmNRwGOSQCPSgCPSwGPSgGPSQCPSgGLRACYWRn38u79/fz9/fz///7+/v7///// + ///////////////////////////////////////////////////+/v79/Pv////HpoKFOwCQTQOOSQCP + SgCPSgCOSQCQTAOGPQDVvaP////9/Pv+/v7+/v7///////////////////////////////////////// + ///////////////+/v7////9/f39/fz7+fefZSiIQACOSQCNRwCNRwCOSQCGPQCrd0H+///9/fz+/v7/ + ///////////////////////////////////////////////////////////////////+/v7+/v79/Pv/ + ///fzLmSTxWXWBWWVhSWVhSWVhSWVRrq3dH////9/Pz+/v7+/v7///////////////////////////// + ///////////////////////////////////////////+/v7+/v7////38+728e328e328e328Oz49fD/ + ///+/v7+/v7///////////////////////////////////////////////////////////////////// + ///////+/v7////////+/v3////////////////////////+/v3////////+/v7///////////////// + ///////////////////////////////////////////////////////////+/v7////+/v7+/v7+/v7+ + /v7+/v7+/v7+/v7+/v7////+/v7///////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAACgAAAAwAAAAYAAAAAEAGAAAAAAAgBwAAAAAAAAAAAAAAAAAAAAAAAD///////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + ///////////////////+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7////+/v7+/v7///////// + ///////////////////////////////////////////////////////////////////////////////+ + /v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7///////////////////////////// + /////////v7+/v7///////////////////////////////////////////////////////////////// + ///////////////////////////+/v7////////+/v7///////////////////////////////////// + ///38u38+vn8+vj8+vj8+vj8+vj8+vj8+vj7+ff////+/v3+/v7+/v7+/v7///////////////////// + ///////////////////////////////////////////////////////////////+/v7+/v7+/v7////7 + +ff8+vj8+vj8+vj8+vj8+vj8+vj7+ff59fK7kmmbXh+cXyCcXyCcXyCcXyCbXyCdYSGWVR3Fon3////9 + /Pz+/v7///////////////////////////////////////////////////////////////////////// + ///////+/v7+/v79/f39/fz///+1iFqXVx2cYCGcXyCcXyCcXyCcXyCbXiCcYCPn2Mv7+fencTqDOACM + RgCLRACLRACLRACLRACKQwCMRQLq3tL////9/Pz+/v7///////////////////////////////////// + ///////////////////////////////////////////+/v79/Pz////Zw6uGOwCMRQCLRACLRACLRACL + QwCNRwCCNQC4jmH////////r39SNRwWOSgOOSgGPSgGPSgGPSgGQTAOIPwCpdD3////9/fz9/f3////+ + /v7////////////////////////////////////////////////////////////////+/v7+/v79/f3+ + /f359vOZWxyLRACQSwKPSgGPSgGPSgGPSgGMRQKXWBn49PD+/fz8+vn////BnHWFOgCQTAGOSQCPSgCP + SgCOSQCPTAKFOwDVvaT////9/Pv+/v7///////////////////////////////////////////////// + ///////////////////////+/v79/Pv////BnXaEOgCQTAKOSQCPSgCPSgCOSQCPSwGGOwDVvKL////8 + +/r9/Pz9/f349fKZXB2KQwCPSgGOSQCOSQCOSQCPSgGLRAGXWBj38+/+/f39/f3+/v7+/v7///////// + /////////////////////////////////////////////////v7+/v79/fz+/v7r39SMRwWNSAGOSQCO + SQCOSgCOSQCPSwGHPgCpdT7////9/Pz+/f3+/v79/Pv////YwquGPACPSwGOSQCPSgCPSgCOSQCQTAGF + OgC+l23////9/fz+/v7////+/v7////////////////////////////////////////////////+/v7+ + ///9/f39/Pv///+qdkGHPQCPSwGOSQCPSgCPSgCOSQCOSAGLRALp3dH////9/Pv+/v7+/v7+/f39/fz/ + //+se0aHPgCQTAKOSQCPSgCPSgCOSQCOSQKLRALn2s3//v79/Pz+/v7///////////////////////// + ///////////////////+/v7+/v7////+/v78+vn////Rt5qGPACQSwKOSQCPSgCPSgCOSQCQTAKFOwC/ + mXL////9/Pz+/v7////////+/v79/fz///7s4deNSAeNSAGOSQCOSQCOSQCOSQCQSwKHPgCnczv+/v79 + /Pz9/f3+/v7+/v7////////////////////////////+/v7+/v7////////9/f38+/r////j08KNSQiN + RgGOSgCOSQCOSQCOSQCPSgCLRACYWhv48/D+/f39/f3+/v7+/v7+/v7////+/v79/Pz////Dn3qFOgCQ + TAGOSQCPSgCPSgCOSQCQSwGGPADSuJ3////9/Pz+/v7////////////////////////+/v7+/v7///// + ///+/v79/Pv////////cx7KPTA2LRQCPSgCOSQCPSgCPSgCOSQCPSwGGPADWvqb////9/Pz+/v7///// + ///////////+/v79/f3+/f359/SbXiCKQgCPSgGOSQCOSQCOSQCPSgCLRQCVVBT18Oz+/f39/fz+/v7+ + /v7////+/v7+/v7+/v7+/v7+/f39/Pz9/Pv////////49PC/mHSKQgCMRQCPSgCOSQCPSgCPSgCOSQCQ + TAKGPQCreEL////9/Pz9/f3+/v7+/v7////////////////+/v79/Pv////axK6FPACPSwKOSQCPSgCP + SgCOSQCQTAKEOQC8lGn////9/Pv+/v7////////////////////////////////////49fLQs5ibXyWH + PgCPSwKQTQOQSwKQTAOQTAKQTAKPSwOOSgOMRQPq3tP////9/Pz+/v7////////////////////+/v7/ + ///+/v39/Pz///+vf0uHPgCQSwGOSQCOSgCPSgCOSQCOSQGLRAHm18n////9/fz+/v7////+/v36+Pb5 + 9fLz7ejo2s3RtpuwgFCNRwN9LQCCNQCHPgCGOwCFOwCGOwCGOwCGOwCFOwCGPAB/MADCnnj////9/Pz+ + /v7////+/v7////////////////////+/v7+/v79/fz///7v5t6PSgiNRwGOSQCPSgCOSQCOSQCPSwGJ + QAClbjX+/f39/f39/f3//v769/XfzbjZw67QtJrEoX67kmq6kGa/mXLDn3rEoHzEoHvEoHvEoHvEoHvE + oHvEoHvDoHvDnnvEoH369/X+/v79/f3+/v7+/v7////////////////////////////////+/v79/Pv/ + ///GpICFOgCQTAKOSQCPSgCPSgCOSQCQTAKGPADQtJf////9/Pz+/v7///////////////////////// + ///////////////////////////////////////////////////////+/v7+//////////////////// + ///////////////////+/v7+/v79/f3+/f36+PadYiSKQwCPSgCOSQCOSQCOSQCPSgGMRgGUVBP07uj+ + /v39/fz+/v7+/v7+/v3+/f39/fz9/Pv7+vj+/f3cyLSXVyGcYCKcXyCcXyCcXyCcXyCdYSKUUxzDn3z9 + /Pz9/Pz9/f3////+/v7////////////////////////////////////////+/v79/Pz////cx7KHPwCP + SgGOSQCPSgCPSgCOSQCQTAKGPAC5kGP////9/Pv+/v7//v7+/v7+/v7+/v79/f39/fz7+feeYyaGPACL + RQCLRACLRACLRACLRACIQACQTAnw59/+/v79/f3+/v7+/v7///////////////////////////////// + ///////+/v7///79/f39/Pv///+xglCGPACQSwGOSQCPSgCOSQCOSQCOSQGKQgDk1MT////9/fz+/v7/ + ///////+/v79/Pz////HpoOFOgCQTAKOSgCPSgGPSgGOSgGQTAKFOwDPs5b////9/Pv+/v7///////// + ///////////////////////////////////////////+/v/+/v79/Pz+/v7w59+PSgiMRgGOSgCPSgCP + SgCOSQCPSwGIQACiajD+/f39/f39/f3///7+/v79/fz+/v7w6OCPSgmNRwGOSQCOSQCOSQCOSQCPSwKI + PwCiaS79/fz9/fz9/f3+/v7+/v7///////////////////////////////////////////////////7/ + ///+/v79/Pv////Ip4WFOgCQTAKOSQCPSgCPSgCOSQCQTAKEOQDOsZP////9/Pv+/v7+/v79/Pv///+x + glGFOwCQTAKOSQCPSgCPSgCOSQCOSgKIQADj08L////9/Pz+/v7///////////////////////////// + ///////////////////////////////+/v7+/v79/f39/f38+vmeZCeJQQCPSwGOSQCOSQCOSQCPSgGM + RQGRTw7z7ef+/v39/f39/Pz////fzLiHPQCPSgGOSQCPSgCPSgCOSQCQTAGFOwC4jF/////9/fz+/v7+ + /v7+/v7////////////////////////////////////////////////////////////////+/v79/fz/ + ///fzLqHPgCOSgGOSQCPSgCPSgCOSQCQTAGFPAC3jF7////9/Pz+/f38+vifZCiJQQCPSwGOSQCOSQCP + SgCOSgGLRQGTURDz7ef+/v39/f3+/v7///////////////////////////////////////////////// + ///////////////////+/v7////+/v79/Pv///+zhVWFOwCQTAKOSQCPSgCPSgCOSQCOSgKJQQDi0cH+ + /v7////JqYeFOgCQTAKOSQCPSgCPSgCOSQCQTAKEOgDNsJH////9/Pv+/v7////+/v7///////////// + ///////////////////////////////////////////////////////+/v7+/v79/fz+/v3w6eGRTQyN + RwGOSQCOSQCOSQCOSQCPSwKJQQChaC7////x6eKRTgyNRgGPSgCPSgCOSQCOSQCPSwGJQQCiajD8+/r9 + /fz9/f3+/v7+/v7///////////////////////////////////////////////////////////////// + ///////////////+/v79/Pz////LrIuFPACQTAGOSQCPSgCPSgCOSQCQSwGFOwDPspW5j2SGPACQSwGO + SQCPSgCPSgCOSQCOSgGJQgDj0sL////9/Pz+/v7///////////////////////////////////////// + ///////////////////////////////////////////+/v7+/v79/f39/fz9/PygZyuJQACPSwGOSQCO + SQCOSQCOSQCOSACOSACNSACOSQCOSQCPSgCPSgCOSQCQTAKFOwC3i13////9/Pv+/v7////+/v7///// + //////////////////////////////////////////////////////////////////////////////// + ///+/v79/Pv////hz72JQACPSwKOSQCPSgCPSgCOSQCPSgCOSQCOSQCPSgCOSQCOSQCOSQCOSQCMRgGS + UA/y6+X+/v39/fz+/v7+/v7///////////////////////////////////////////////////////// + ///////////////////////////////+/v7////+/v79/fz///+1iVuGPACQSwGOSQCPSgCPSgCOSQCP + SgCPSgCOSQCPSgCPSgCOSQCQTAGFOgDNrpD////9/Pz+/v7///////////////////////////////// + ///////////////////////////////////////////////////////////////////+/v7+/v79/f3+ + /v3y6+SSUA6MRQGOSgCOSQCOSQCPSgCPSgCPSgCPSgCOSQCOSQCPSwGIQAChaS78+/r9/Pz9/f3+/v7+ + /v7///////////////////////////////////////////////////////////////////////////// + ///////////////////////////+/v79/Pv////NsJGFOwCQSwGOSQCPSgCPSgCPSgCPSgCOSQCPSgCO + SQCOSQGJQQDi0cD////9/Pv+/v7///////////////////////////////////////////////////// + ///////////////////////////////////////////////////////+/v7+/v79/f39/Pz8+/qiai+J + QACRTQSPSwKQSwKQSwKQSwKQSwKPSwKRTgSGPAC2iVr////9/Pv+/f3////+/v7///////////////// + //////////////////////////////////////////////////////////////////////////////// + ///////////////+/v79/Pv////j08KGPQCHPQCHPgCIPgCIPgCIPgCIPgCHPwCFOgCRTgvy6uP+/f39 + /fz+/v7+/v7///////////////////////////////////////////////////////////////////// + ///////////////////////////////////////////+/v7////+/v79/f3////JqIeufFOzhVezhFaz + hFazhFayhFazhVete1TWvqb////9/fz+/v7///////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + ///+/v7+/v7+/v3////////////////////////////////////////+/v3+/v7+/v7+/v7///////// + //////////////////////////////////////////////////////////////////////////////// + ///////////////////////////////////////////+/v7+/f3+/f3+/fz+/fz+/fz+/fz+/fz+/fz+ + /f3+/f3///////////////////////////////////////////////////////////////////////// + ///////////////////////////////////////////////////////////////////+/v7+/v7+/v7+ + /v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7///////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAoAAAAgAAAAAABAAABABgAAAAAAADIAAAAAAAAAAAAAAAA + AAAAAAAA//////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////v7+/////v7+/v7+//////////////////////////////////////////////////////////// + /////////////////////////////////////////fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7 + /fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/v39/v7+/v7+/v7+//////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////v7+/////v7+/////v7+/f38/fz7/fz7/fz7/fz7/fz7/fz7 + /fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/v7+//////// + //////////////////////////////////////////////////////////////////////////////// + /////////////v7+/////v7+/v7+/v7+//////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////v7+/////v7+ + /f39//////////////////////////////////////////////////////////////////////////// + ////////////////////////2MCn3Maw3Maw3Maw3Mew3Mew3Mew3Mew3Mew3Mew3Mew3Mew3Mew3Mew + 3Mew3Mew3Mew3Mew3Mew3Mew3Mew3Maw3Mex2cOs8uvk/v7+/f39/v7+/v7+//////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////v7+/v7+/v7+/f39////4tHA2sSs3Mex3Mew3Mew3Mew3Mew3Mew3Mew3Mew3Mew + 3Mew3Mew3Mew3Mew3Mew3Mew3Mew3Mew3Mew3Mex3Mew3Mex2cKr9vHtqXQ9ikIAiUEAiUEAikIAikIA + ikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAiUEAikMAgzgAq3hH/v39 + /fz8/v79/v7+/v7+//////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////v7+/v7+/v7+/v7+/fz8////49PCiUIBiUEAiUEA + ikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAiUIAiUEAi0MAgzkA + nmMq+vj1/v39sYJUhz4AkU0Ej0oBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sB + j0sBj0sBj0sBj0oBj0oBkEwDhz0A1buh/////fz7/v7+/v7+/v7+/v7+//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////v7+ + /v7+/v39/Pz8/Pr5pGw1iEAAkE0Dj0oBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sB + j0sBj0sBj0sBj0sBj0sBj0sBj0sDjEYG49LC////////7OLWkU4PjEYBj0oBjkkAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAjkkAj0sBikQAmFod9fDq/v39/v39/v7+ + /v7+//////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////7+/v7+/v7+/v7+/Pv6////za+QhjwAkEwCjkkAjkkAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAkEwChjsAuo9l////+/n4+ff1//// + x6aFhDsAkEwCjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + jkkAjkkAkEwChTwAv5dw/////Pz7/v7+/v7+/v7+//////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////v7+/v7+/f38/v798evik1IV + i0UBj0oBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkoA + j0oBi0QBlVQX8+zl/f39/fz8/fz8/fz8+vbzoGYuiEAAj0sBjkkAjkkAjkoAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAj0oAjkoAjkkAjUkBjEgG6NvN/////fz8/v7+/v7+/v7+/v7+ + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////7+/f7+/v7+/fz7////topehjwAkEwCjkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAj0sChTwA0LWY/////Pv7/v7+/v///Pz7////3sq3iEABjkoC + jkkAjkkAj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkAkEsC + hz8Ap3I//fz7/fz8/v79/v7+/v7+//////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////v7+/v7+/v39/v///Pz7////3867iEAAjkoCjkkAjkkAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjUkAkEsChz8ApnE5/fz8/Pz7 + /v7+/v7+/v7+/v7+/Pv7////tIZYhjwAkEwBjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAjkkAjkgAj0sChTwA0rec/////Pz7/v7+/v7+/v7+//////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////v7+/v7+/v79/fz8 + +/r4oWgwiEAAj0sBjkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kA + j0kAjkkAjkoAjkkBikQF5dbG/////fz7/v7+/v7+/v7+/v7+/fz8/v7+8OffkU8QjEYBj0oAjkkAjkoA + jkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oAjkkAj0oBikMAllcb9O/p + /v39/f38/v7+/v7+/v7+//////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////v7+/v7+/v7+/Pz7////yquLhTsAj0wCjkgAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAkEwChToAu5Nq/////Pz7//7+/v7+/v7+/v7+/v7+ + ///+/Pz7////y6yNhTsAkEwCjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAjkkAjkkAjkkAkEwBhTsAu5Rr/////Pz7/v7+/v7+/v7+/v7+//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////v7+/v7+/fz8/v7+7+bckU4PjEYBjkkBjkkA + j0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0kAjUkAj0oBi0QBllcb + 9e/p/v39/f38/v7+/v7+/////////v7+/v7+/v79/fz8+vj1oWgwiUEAj0sBjkgAjkkAjkkAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkCi0QF5NXG/////fz8/v7+ + /v7+//////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////v7+//7+/f39 + /v7+/fz7////tIdZhjwAkEwCjkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAjkkAjkkAj0sChj0A0rec/////Pz7/v7+/v7+/////v7+/v7+/////v7+/v7+/Pz7//// + 38y4ikIDj0oCjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkA + jkkAjkkAj0sBhz8Ap3I8/Pv5/fz8/v39/v79/v7+//////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////v7+/////v7+/v7+/Pz7////3sm2iUIBj0oBjkkAjkkAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjUkAkEsCiD8AqHM+/fz7/Pz8/v7+/v7+/v7+ + /v7+/////////v7+/v7+/v7+/v7+/Pv7////topehTwAkEwCjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkgAkEsChjwA0bWa/////Pv6/v7+/f39/////v7+ + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////v7+/v7+/f39/fz8+vj2n2UriUEA + j0sBjkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkoA + jkgBjEYG5tjJ/v7+/f37/v7+/v7+/////////////////////////v7+/v7+/f39/v398uriklETi0YB + j0oAjUkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkAj0oB + i0UAlVYZ8+3m/f79/f38/v7+/v7+//////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////v7+ + /v7+/v7+/v7+/Pv6////yKeFhTsAkEwCjkgAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAjkkAjkkAkEwChjwAvpZv/////Pz7/v/+/v7+/v7+/v7+//////////////// + /v7+/v7+/v7+/v7+/Pz7////za6QhTwAkEwCjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAkEwChTwAuZBm/////Pv6/v7+/v7+/v7+/v7+//////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////v79/v7+/fz7/v7+7ePYkU4QjEcBjkkBjkkAj0oAjkkAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkAj0oBi0QBmFof9e/p/f39/v39 + /v7+/v7+/////////////////////////////////v7+/v7+/v7+/fz8+/n3o2s1iUEAkEsBjkkAjkkA + jkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oAjkkAjkkAjkkCikQD5NPD + /////Pz7/v7+/v7+//////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////v7+/v7+/v79/Pv7/v/+ + sIFShjwAkEwCjkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + jkkAjkkAj0sChj0A1Lqg/////Pz7/v/+/v7+/////v7+/////////////////////////v7+/////v7+ + /v7+/fz7////4tHBikMEjkkCjkoAjkkAj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAjkkAjkkAjkkAj0sBiEAApW43/Pv5/fz7/v39/v7+/v7+//////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////v7+/v7+/////Pv6////2sawiD8Aj0sBjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAkEsChz8AqnhE/v79/Pz7/v7+/v7+/v7+/v7+//////// + /////////////////////////v7+/v7+/v7+/v7//fz7////uI1hhj0AkEwCjkkAjkkAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkgAj0wChj0AzrCT/////Pv6/v7+ + /f39/////v7+//////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////v7+/v7+/v7+/f38/f389vLtm18jikMAj0oBjkkAjkkA + jkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkAjkoAjUgBjUgH6NzO + /v7+/fz8/v/+/v7+/////////////////////////////////////////////////v7+/v7+/f38/v39 + 8uvjlFUWi0UBj0oBjUkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkA + j0oAjkkAj0oBjEYBlFMW8enh/v79/fz7/v7+/v7+//////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////v7+/v7//v7+//7+/f39 + /Pv6////t4thhjwAj0wBjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAjkkAjkkAkEwChTsAwJp0/////fz6/v7+/v7+/v7+/v7+//////////////////////////// + /////////////v7+/////v7+/v7//Pv7////zrGUhjwAj0wCjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkAkEwChjwAt4xg/////Pv7/v7+/v7+/v7+//// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////v7+/v7//v3+/Pr6////0bWYhj0Aj0sCjkkAjkkAj0oAjkkAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAjkkAjkkAj0sBi0MAmVsg9vHs/v39/f39/v7+/v7+//// + /////////////////////////////////////////////////v7+/v7+/v7+/v7+/f38/Pr4pW85iD8A + kEsCjUkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkA + jkoCikIC4tHA/////Pv7/v7+/v7+/v7+//////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////v7+/v7+/v7+/v7++/r5////38y4i0UHjUgBjkoA + jkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAjkkAjkkAj0wC + hz4A1r6m/////Pz7/v7+/v7+/////v7+//////////////////////////////////////////////// + /////////v7+/v7+/fz8////49LCjEYFjkkCjkoAjkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkAj0sBiEAAomoy+/n2/fz7/v39/v7+/v7+//////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////v7+/////v7+/v7+/v7+ + /v7++/r5////5NTCj0wQi0UAj0oAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAjkkAjkkAkEwChz8ArHpI/v7+/fz7/f79/v7+/v7+/v7+//////////////////// + /////////////////////////////////////v7+/////v7+/v7+/Pz7////upBnhTwAkEwCjUgAjkkA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkgAj0wChToAyqyM + /////Pv6/v7+/v7+/////v7+//////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////v7+/v7+/////v7+/v7+/v7+/f39/Pr5////4c+9kE0SikQAj0sBjkkAjkkAj0oAjkkAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjUkAj0oAjUgCjkoJ6d3R/v7+/f38/v7+ + /v7+/////////////////////////////////////////////////////////////////////v7+/v7+ + /v7+/v39/f399O3nl1gci0UBj0oBjkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAjkkAj0oAjkkAj0oAi0UBk1ET8Ofe/v39/fz7/v7+/v7+/////v7+//////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////v7+/////////v7+//7+/v7+/Pv6/f38////1LuijkkLi0QA + j0sBjkkAjkkAj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkA + jkkAkEwChjwAwp14/////Pv6/v7//v7+/////v7+//////////////////////////////////////// + /////////////////////////////////v7+/v7+/Pv6////0baahj4AkEwCjkkAjkkAj0oAj0kAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkAkEwBhTwAtYlc/////Pv6/v7+ + /v7+/v7+//////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////v7+/v7+/////v7+/v7+/v7+ + /v79+/v5////+/n1wJp1iEEAjUYAj0wBjkkAjkkAj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkAj0sBikMAnWAn9/Lu/fz7/f39/v7+/v7+/v7+//////////// + /////////////////////////////////////////////////////////////v7+/v7+/v7+/v7+/Pz7 + /Pv5p3I9iD4AkEwCjkkAjkkAjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjkkAjkkAj0oCiUEA3826/////Pv6/v7+/v7+/v7+/v7+//////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /v7+/v7+/////////v7+/v7+/v79/Pv6/f3+////6dzPpW89hjwAj0oBj0oBjkkAjkkAj0oAjkkAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oAjkkAjkkAj0sChz4A2MKq//// + /Pv6/v7+/v7+/v7+//////////////////////////////////////////////////////////////// + /////////////////////v7+/v7+/fz7////5dbGi0UGjkkCjkoAjkkAj0kAjkkAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkAj0sBiEAAoGct+vj1/fz7/v39/v7+/v7+//// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////v7+/v7+/v7+/////////v7+/v7+/f39/fz7/fz8////+vj0xaOCjkkJhz8A + j0sBj0oAjkkAjkkAj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjkkAjkkAkEwChz0Arn1L/////Pv6/v7+/v7+/v7+//////////////////////////////////// + /////////////////////////////////////////////////v7+/////v39/v/+/Pv6////vZZuhjsA + kEwDjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjUgA + j0wChDoAyKiI/////Pv6/v7+/v7+/v7+/v7+//////////////////////////////////////////// + /////////////////////////////////////////v7+/////v7+///////////+/v7+/v7+/v79/Pv6 + /f38////////28ayn2cyhTwAjEcAj0sCjkkAj0oAj0oAj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjUkAj0oAjUcCjkoK69/U/v7//fz7/v7+/v7+/////v7+ + //////////////////////////////////////////////////////////////////////////////// + /////v7+/v7+/v7+/f39/f399fDrl1kci0UBj0sBjUkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAjkkAj0oAjkkAjkoAjEUAkU4P7+bc/v79/fz7/v7+/v7+/////v7+//////// + /////////////////////////////////////////////////////////v7+/////v7+/v7+/////v7+ + /////v7+/v7+/v7+/fz8/Pv6/v7+////////4M68qnhHiD8AiUEAj0sCj0oAjkkAjkkAjkkAjkkAjkkA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAkE0DhjwA + xaJ//////Pv7/////v7+/v7+/v7+//////////////////////////////////////////////////// + /////////////////////////////////////////v7+/v7+/v7+/Pv6////07qghz4Aj0wDjkkAjkkA + j0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkAkEwBhjwAsoRU + /v///Pv6/v7+/v7+/v7+/////////////////////////////v7+/////v7+/v7+/v7+/v7+/v7+/v7+ + /v7+/v7+///+/v7+/v7+/////v7+/v7+/v79/fz8/Pv6/fz8////////+/n32sSvqnZHikIAhz8AjkoA + j0oBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAjkkAjkkAjUkAj0sCikMAnmMp+PXx/f38/f39/v7+/v7+//////////////////////////// + /////////////////////////////////////////////////////////////////////////////v7+ + /v7+/v7+/Pz7/f38qXVBiEAAkEwCjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAjkkAjkkAj0oBiD8A3cm0/////Pv6/////f39/v7+/v7+//////////////////// + /////////////////////////////v7+/////v7+/v7+/v7+/v39/fz7/Pv6/fz7/f7+//////////// + 7OHWyaiHn2UviD8Ahz4AjkkAj0sCjkkAjkkAjkoAjkoAjkkAjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAj0wDiEAA28Wv/////Pz7/v/+/v7+ + /////v7+//////////////////////////////////////////////////////////////////////// + /////////////////////////v7+/////v7+/v7+/fz7/v//6NrNjkkJjkkCj0kAjkkAjkkAjkkAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkAj0oBiUIAn2Ur+fb0/fz7/f39 + /v7+/v7+/////////////////////////v7+/v7+/v7+/v7+/f38/fv6/fz7/fz6/Pv6/fz8/fz8/v7/ + /////////////////Pz66dzPza6Qq3dGkE0Mhj0AikMAj0sCj0sCj0oAjkkAjkoAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkA + kEwChz4AsIJS/v7//Pv7/v7+/v7+/v7+/v7+//////////////////////////////////////////// + /////////////////////////////////////////////////////////////v7+/v7+/v7+/////Pv6 + ////v5lzhTwAkEwCjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjkkAjkgAkEwBhDoAxqSC/////Pv6/v7+/v79/v7+/v7+/////////////////v7+/////v7+/v7+ + /////////////////////////////v788+3l5NTE07icuY5moWgvj0sIhz4AiUIAj0oAkE0FkU0Dj0sC + kEsBkEsBkEsBkEsBkEsBkEsBkEsBkEsBkEsBkEsBkEsBkEsBkEsBkEsBkEsBkEsBkEsBkEsBkEsBkEsB + kEsBkEsBkEsBkEsBkEsBkEsBj0sBkEwCjEgBkE4O7eTa/v7+/fz8/v7+/v7+//////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////v7+/v7+/f38/f389vHsmVsgikMBj0oBjkkAjkkAjkkAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oAjkkAjkkAjEYBkEwN7ePY/v7+/fz7/v7+/f39//// + /v7+/////////////v7+/v7+/f38/v//28ayxqSAy6uKxKF6vJNssoReqHNEmVwlkEwKhjwAgTQAgDQA + hDoAiEAAikMAiUIAiEEAiEAAiEAAiEAAiEAAiEAAiEAAiEAAiEAAiEAAiEAAiEAAiEAAiEAAiEAAiEAA + iEAAiEAAiEAAiEAAiEAAiEAAiEAAiEAAiEAAiEAAiEAAiEAAiEAAiEAAiEAAiUIAgjYAx6WD/////Pv6 + /v7+/v7+/////v7+//////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////v7+/////v7+/v7+/Pv7////1r2khz4A + j0sCjkkAjUkAj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkA + kEwBhjwAsYFR/////fz7/v79/v7+/v7+/////////////////v7+/v7+/v39/v7+4M27za+O0bWW0LOU + z7OV0LOZ0bac07mg1ryk2MCo2cKr2cKs2MGq2MCp18Co18Co18Co18Co18Co18Co18Co18Co18Co18Co + 18Co18Co18Co18Co18Co18Co18Co18Co18Co18Co18Co18Co18Co18Co18Co18Co18Co18Co18Co18Co + 18Co18Co2MCo1r+n2MGq+vf0/v39/v79/v7+/v7+/v7+//////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////v7+/v7+/v7+/v7+/Pv6/v39rHpIhz4Aj0wBjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAj0oBiUEA3May/////Pv6/////f39/v7+/v7+//////// + /v7+/////v7+/v7+//////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////v7//v7+/////v7+//////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////v7+/v7+/fz7/v7+6d3RjUkJjUgBj0oAjkkA + jkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkAj0oBikIAnWIn + +PXx/fz8/f39///+/v7+/////////////////v7+/////////v39/fz7/fz7/fz7/fz7/fz7/fz7/fz7 + /fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz8/fz7+/n3+/n3+/n3+/n3+/n3+/n3 + +/n3+/n3+/n3+/n3+/n3+/n3+/n3+/n3+/n3+/n3+/n3+/n3+/n3+/n3+/n3+/n3+/n3/Pr4/fz7/fz8 + /fz8/v7+/////v7+/////v7+//////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////v7+/v7+ + /v7+/v7+/Pv7////wZx2hDsAkEwCjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAjkkAjkkAkE0ChjwAxKF8/////Pv6/v7+/v7+/v7+/v7+/////v7+/////v7+/v7+ + /v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+ + /v7+//////////////////////////////////////////////////////////////////////////// + /////////////////////////////v7+/v7+/v///v7+/////v7+//////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////v7+/v7+/f39/f389/Ltm14iiUIAj0oBjkkAjkkAjkkAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oAjkkAjkoAjUgCkE0N7OHW/v7+/f38 + /v7+/v7+/////v7+//////////////////////////////////////////////////////////////// + /////////////v7+/////v7+/v7+/f79/f39+vj20LSYzrCSz7GUzrGTz7GTz7GTz7GTz7GTz7GTz7GT + z7GTz7GTz7GTz7GTz7GTz7GTz7GTz7GTz7GTz7GTzrGTzrGTza+S0LSY+vj1/v7+/v79/v7+//////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////v7+/////v7+/v7//Pz7 + ////2cKriD8Aj0sCjkkAjkkAj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + jkkAjkkAjkkAkEwChz8Ar35O/v7+/fz8/v7+/v7+/v7+//////////////////////////////////// + /////////////////////////////////////////////////v7+/v7+/v7+/fz7////yaiIgDMAhz0A + hTsAhTsAhTsAhTsAhTsAhTsAhTsAhTsAhTsAhTsAhTsAhTsAhTsAhTsAhTsAhTsAhjsAhTsAhDsAhz4A + fS0AtIdb/f38/Pz8///+/v7+//////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////v7+/v7+/v7+/v7+/fz7/v//rn1Khz0Aj0wBjkkAjkkAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAj0sCiEAA2MGq/////Pz7/v///v7+/v7+ + /v7+/////////////////////////////////////////////////////////////////////v7+/v7+ + /v7+/v7+/f38/v797+bdkU8PjUkDkU4Fj0wDkEwDkE0DkE0DkE0DkE0DkE0DkE0DkE0DkE0DkE0DkE0D + kE0DkE0DkE0DkE0DkEwDkE0DkU4FjEcFmVwe9/Pu/v7+/v38/v7+/v7+//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////v7+/v7//fz7/v7+69/UjkoL + jUgBj0oAjkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkA + j0sCikMAm18j+PXw/f39/f39/v7+/v7+/////v7+//////////////////////////////////////// + /////////////////////////////v7+/v7+/v7+/fz7////tIZYhj0AkEwCjkgAjkkAj0oAjkkAjkkA + jkkAjkkAjkkAjkkAjkkAjkkAjkkAjkkAjkkAjkkAjkkAj0oAjkkAjkkAj0sChj0A0rec/////Pv7/v7+ + /v7+//////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////v7+/v7+/v7+/////Pv6////xKF9hTsAkEwCjkkAjkkAj0oAj0kAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAkEwChTsAw596/////Pz7/v7+/v7+/v7+//////////// + /////////////////////////////////////////////////////v7+/v7+/v7+/v7+/fz7////3sq3 + iUIAjkoCj0kAjkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAjkkA + jkkAj0wBiD8AqHM+/fz7/Pz7/v7+/v7+/v7+/v7+//////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////v7+/v3+/v39/fz8+PXxnWIpiUIAj0sBjkkA + jkkAjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkAjkoAjUgBjkoK + 6t7S/v7+/fz8/v7+/v7+/v7+/v7+//////////////////////////////////////////////////// + /////////v7+/v7+/f39/f38+vj1oGgviUEAj0sCjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAjkkAj0kAjkkAj0kAjkgCjEYH5tjJ/////fz7/v7+/v7+//////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////v7+//// + /v7+/v7+/Pv6////2cStiEAAj0oCjkkAjkkAj0kAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAjkkAjkgAkEwChz4ArHpH/f38/fz8/v7+/v7+/v7+//////////////////////// + /////////////////////////////////v7+/v7+/v7+/v7+/fz8////y6yNhTwAkEwCjkkAjkkAj0kA + jkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAkEwChTwAvZRs//// + /Pv7/////v7+/v7+/v7+//////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////v7+/v7+/v7+/v7+/Pv7/v7+r4FQhz0AkEwBjkkAjkkAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkgAj0kAkEsChz4A17+n/////Pz7 + /v7+/v7+/v7+/v7+/////////////////////////////////////////////////////v7+/v7+/f38 + /v798enfklISjEYBj0oBjkkAjkkAjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + jkkAjkkAjkkAj0oBi0QAl1gb9O/p/fz8/v38/v7+/v7+//////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////v7+/v7+/fz8 + /v7+7ePakE0NjEcBj0oAjkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjkkAjkkAj0sCikMBml0i9/Pu/f39/f39/v7+/v7+//////////////////////////////////// + /////////////v7+/v7+/v7+/v7+/Pz7////toldhj0AkEwCjkkAjkkAj0oAj0kAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAj0oAjUkAjkkAj0sChTwA0baa/////Pv7/v7+/v7+/////v7+ + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////v7+/v7+/v7+//7+/Pv6////x6SDhTsAkEwCjkkAjkkAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oAjUgAjkkAkEwChTwAwZx1/////Pv7//7+/f39/v7+ + /v7+/////////////////////////////////////v7+/////v39/v7+/fz7////4M67ikICj0oCjkoA + jkgAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAjkkAjkkAj0sBiD8A + pnA8/Pv6/fz7/v7+/v7+/v7+/v7+//////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////v7+/v7+/v79/fz8+fbznmMq + iEEAj0sBj0kAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkA + jkoAjUkCjUgI59rM/////fz8//7+/f39/////v7+/////////////////////////////////////v7+ + /v7+/v39/f38+vj1oWgwiUEAj0sBjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAjkkAj0kAjkkAj0kAjkkCi0QG5dXF/////fz7/v7//v7+//////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////v7+/////v7+/v///Pz7////3cm1iEAAjkoCjkkAjUgAj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAkEwChz8AqndD/fz7/fz7/v7+/v7+/v7+//////////// + /////////////////////v7+/v7+/v79/v7+/Pz7////y6uMhTwAkEwCjkkAjkkAjkoAjkkAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAkEwChTsAu5Fn/////Pz7/v7//v7+ + //7+/v7+//////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////v7+/v7+/v7+/v7+/Pz7////s4RVhjwAkEwCjkgA + jkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkAjkkAj0wChz4A + 1bui/////Pz7/v7+/f3+/v7+/v7+/////////////////////v7+/////f39/v7+/f38/v398Ojfk1ES + jUYBj0oBjkkAjkkAj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkA + j0oBi0UBllYa8+zl/fz9/v38/v7+/v7+/v////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /v7+/v7//f38/v797+XckE0OjEYAj0oAjUgAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAjkkAjkkAj0sBi0QBmVoe9vHr/f39/f39///+/f39/////v7+//////////////// + /////v7+/v7+/v7+/Pz7////tYldhj0AkEwCjkkAjkkAj0oAjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAjkkAj0oAjUkAjkkAj0wChTsA0bWZ/////Pv6/v7+/v7+/v7+//7+//////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////v7+/v7+/v7+/v7+/Pz7////yKiGhDoAkEwDjkkAjkkAj0oAjkkA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oAjkgAjkkAkEwChjwAv5dw/////Pv6 + /v7+/v7+/v7+/////////////////v7+/v7+/v7+///+/fz7////4dC/ikMDj0oCjkkAjkkAjkkAjkkA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAj0wCiD8ApW85/Pv5/fz7 + /v79/v7+/v7+//////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////v7+/v7+/v39 + /fz8+/j1oGYtiUEAj0sCjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + jkkAjkkAjkkAjkoAjkkCjEcG5tjK/////fv7//7+/v7+/v7+//7+/////////////v79/v7+/f39/fz8 + +/r4o2oziUAAj0sBjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkA + jkkAjkkAj0oAjkkCi0UF5NTE/////fz8/v7+/v7+/////v7+//////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////v7+/////v7+/v7+/fz7////3su4iUEBj0sCjkkAjkkAjkkAjkkAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjUkAkEwChz8AqHRA/f38/fz7/f39/v7+/v7+ + /v///////v7+/v7+/v7+/v/+/Pv7////za+RhTwAkEwCjkkAjkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAkE0ChjwAu5Jo/////Pz7/v7+/v7+/v7+/v7+//// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////v7+/v7+/v7+/v7+/fz7////tIdZ + hjwAkEwCjkgAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkA + jkkAj0wChjwA0rec/////Pv6/v7+/f7+//7+/v7+/////v7+/v7+/f38/v7+8erilFITjEYBj0oBjkkA + jkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkAj0oBi0UAl1YZ + 8+3m/f39/f39/v7+/v7+//////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////v7+/v7+/fz8/v398Offk1ISjEcBj0oAjUkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAj0sBi0QBl1ga9O7n/f38/f39/v7+/v7+/////v7+/v7+ + /v7+/Pv6////t4tfhjwAkEwCjkkAjkkAj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjkkAj0oAjkkAjkkAkEwChz4A0LWZ/////Pz7/v7//v7+/////v7+//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////v7+/////v7+/v7+/Pv7////zK2Ohj0AkEwDjkkA + jkkAj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oAjkkAjkgAkEwChjwA + u5Nq/////Pv6/v7+/v7+/v7+/v7+/v7+/Pz7////4dC+ikMCj0oCjkkAjkkAjkkAjkkAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAj0wCiEAAp3E7/Pv5/fz7/v79/v7//v7+ + /v7+//////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////v7+ + /v7+/////v7+/fz7+/j2o2sziUEAj0sBjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAjkkAjkkAjkkAjkoAjkkCjEcG5dbH/////Pz7/v7+/v7+/v7+/v39/fz8+/n3pG00iUEA + j0sBjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkAj0kA + jkkCikQE49PC/v7//fz8/v7+/v7+//////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////v7+/v7+/fz7////4c+9iUICj0oCj0kAjkkAjkkAjkkA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAj0sBiEAAp3E7/Pv5/fz8 + /v79/v7+/v7+/Pv6////zK+Qhj0AkEwCjkkAjkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAjkkAjkgAkE0ChTwAuY9j/////Pv6/v7+/v7+/v7+/v7+//////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////v7+/v7+/v7+/v7+ + /Pv6////t4xghjwAkEwCjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + jkkAjkkAjkkAjkkAkEwChj4Az7OX/////Pv7/v7+/f38/f398erilFQVi0YBj0oBjkkAjkkAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkAj0oBi0UBlVUW8+zl/v39/f39 + /v7+/v7+//////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////v7+/v7+/f38/v7+8+zllFQVi0UBj0oAjkkAjkkAjkkAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkgAj0sBi0UAlVUX8uzk/v39/fz8/Pz7//// + t4xhhjwAkEwCjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAj0oA + jkgAjkkAj0wChjwA0LOX/////fz7/////v7+/v7+//////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////v7+/v7+/v///fv7////zrGU + hjwAj0wCjkkAjUkAj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkA + jkkAkEwChTwAuI5k////+/r5////4tHAiUIDjkoCj0oAjUkAjkoAjkkAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAjkoAjkkAjkkAj0wCiUAApW84/Pv6/f38/v7+/////v7+//////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////v7+/v///v7+/f38+/r4pG02iEAAj0wBjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjUkAj0kAjkoCikMD4tC//v79+vj1pG02hz8AkEsBjkkAjkkA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0kAjkkAj0kAjkkCi0QF49TD + /////fz8//7//v7+//////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////v7+/////fz8////49TEi0UFjkkCj0oA + jkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAj0sBiEAA + oWkx////zrGThTsAj0sCjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAjkkAjkgAkEwChj0AupBl/////fz8/v///v7+/v7+/v7+//////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////v7+ + /v7+/v7+/v/+/fz8////uZBkhj0AkE0CjkgAjUkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0kAjkkAjkkAj0sAiEAAwZ12m18iikIAj0oBjkkAjkkAjkkAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjUkAj0oAjEYBlVYX8uzl/v79/v39/v7+/v7+//// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////v7+/v7+/f39/v398+zmllYXjEYBj0oBjkkAjkkAjkkA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAjkkAjkkAjkkAjkkAikMAjEYAjkkA + jkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAj0oAjkgAjkkAkEwC + hj0Az7SX/////fz7//7+/v7+//////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////v7+//7+ + /fz7////0bWZhz0Aj0wCjkkAjUgAj0oAj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAjkkAjkkAjkkAj0oBjkoAjkkAjkkAj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAjkoAjkkAjkkAj0wCiEAApW86/Pv5/fz8/v7+//7+/v7+//7+//////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////v7+/v7+//7+/v7+/fz8/fz7p3I+iD8Aj0wCjkkAjkkAjkoAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0kAjkkAjkkAj0kCikQF49PD/////Pz8//7+ + /v7+//////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////v7+//7+/fz8////5dbH + jEYHjkoCj0oAjkkAj0kAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oA + jkkAjkkAjkkAj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkA + jkkAkEwChj0AuI1i/////fv8/v/+/v7+/v7+/v7+//////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////v7+/v7+/v7+/v///fz7////vJRqhjwAkEwCjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAjkkAjkkAjUkAj0oBjEUBlFQW8uri/v7+/f39/v7+/v7+//////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////v7+/v7+/f39/f399O7ol1kci0QBj0sB + jkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAj0oAjUgAjkkAj0wChj0AzbCT//// + /Pz8/v7//v7+//////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////v7+/v7+/Pz7////07mfhj0Aj0wCjkkAjUgAj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + jkoAjkkAjkkAkEwCiEAAomw0/Pr4/f39/v7+/v7+/////v7+//////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////v7+/////v7+/v7+/fz8/fz8qHNAhz8AkEwCjkkAjkkAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0kAjkkAj0kAjkkCiUIC4dC+/////fz7/v7+/v7+//////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////v7+/v7+ + /fz8////5tjJi0YFjUgCj0oAjkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkgAkEwChTwA + t4tf/////fz7/v7+/v7+/v7+//////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////v7+/v7+/v7+/fz7////vZZuhTsAkE0CjkkAjkkAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAjkkAjkkAjkkAj0oBi0YBlFMT8eri/v7+/f38/v7+/v7+//////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////v7+/v7+/v39/f399vHs + mVseikQAkEsBjkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oAjkgAjkkAkEwChj0Aza+Q/////Pv6/v7+/v7+ + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////v7+/v7+/Pz7////1Luhhz4AkEwCjkkAjkkAj0oAjkkAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkA + j0sAiEAAo2w0/Pr4/fz8/f39/v7+/v7+/v7+//////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////v7+/v7+/v7+/v79/fz7/f38qndDhz8AkEsB + jkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAjkkAjkkAjkkAjkkAjkkBi0QD4c+9/////Pz7/v7+//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////v7+/v7+/fz7/v7+6NvNjUkIjUgBj0kAjkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAkEwBhTsAt4xf/////Pv6 + /v7+/v7+/v7+//////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////v7+/v7+/Pv6////wZt2hTsAkEwBjkkAjkkAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkA + jkkAjkkAj0oAi0UAlFIT8eri/v39/fz8/v7+/f39//////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////v7+/v7+/v7+ + /f38/fz89vHtmVsfikMAj0sAjkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAkEsChDoAy6uN/////Pv6/v7+/v7+/v7+//////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////v7+/f3+/v7+/Pv7////1r6lhj0Aj0oBjkkAjUkAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAj0sAiEAAoWkx + +/n3/fz8/f39/v7+/v7+//////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////v7+/v7+/v39/fz7/v7+ + rXtJhj0AkEwCj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oBjkkAj0oBjkoCiEEA4M68/////fz7/v7+/v39/////v7+//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////f39/v7+/fz7/v7+69/SjkgJi0UAjkgAjUcAjUgAjUgAjUgAjUgAjUgAjUgAjUgA + jUgAjUgAjUgAjUgAjUgAjUgAjUgAjUgAjUgAjUgAjUcAjUcAjkoAhDkAtYlb/////Pz6/f7+/v7+/v7+ + /v7+//////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////v7+/v7+/v39/v7+/Pz7////xKF9jEcSlVQW + k1IUlFIUlFIUlFIUlFIUlFIUlFIUlFIUlFIUlFIUlFIUlFIUlFIUlFIUlFIUlFIUlFIUlFIUk1IUlFMV + kU8TmVoj8ejg/v39/fz7/v7//f39/v////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////v7+/v///f39/f38/Pv67+bd8Ofe8Off8Off8Off8Off8Off8Off8Off8Off8Off8Off8Off8Off + 8Off8Off8Off8Off8Off8Off8Off8Off7uXd9O7o/////f39/v7+/v7+/v7+//7+//////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////v7+/v////7+/v7+/v7+/v7+//////////////////////// + /////////////////////////////////////////////////////////////////////////v39/v7+ + ///+/v7+//////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////7+/v////// + /////v7+/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39 + /v39/v39/v39/v39/v39/v79/////////v7+/////v7+//////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////v7+/////v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+ + /v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/////v7+//////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + ////////////////////////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAoAAAAAAEAAAACAAABABgAAAAAAAAgAwAAAAAAAAAAAAAA + AAAAAAAA//////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39 + /v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39 + /v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v7+/////v7+//////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////v7+/////v7+/v39/v39/v39/v39/v39/v39/v39 + /v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39 + /v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39 + /v79/v7+//////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////v7+//////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + ////////////////////////////////////////////////////////////////////////9/Lt9/Pu + 9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt + 9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt + 9/Lt9/Lt9/Lt9/Lt9/Lt9/Pt/v7+/v79/v7+/v7+/v7+//////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////v7+/v79/v799/Ls9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt + 9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt + 9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Pt9/Lt/v39pm80omkso2oto2oto2oto2ot + o2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2ot + o2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2ot + o2svnmMrzrGR/////fz7//////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////v7+/v7+/fz8//// + 1bygnGAqo2svo2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2ot + o2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2ot + o2oto2oto2oto2oto2oto2oto2svnWEruY9i/fz8wJpwkUwEiUIAi0QAi0QAi0QAi0QAi0QAi0QAi0QA + i0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QA + i0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0UAiUAAlVQT7uTZ + /v39/fz8/v7+//////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////f38/v7+9O3nmFkViD8Ai0UAi0QA + i0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QA + i0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QA + i0QAi0QAikMAi0MA3sq1/v7+/fz8wJhviD8AkU0Fj0sCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsC + kEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsC + kEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkU0EiD8AuItb/////f38/v7+/v7+ + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////v7+/v7+/fz7////vZNniD8AkU0EkEsCkEsCkEsCkEsCkEsCkEsC + kEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsC + kEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCj0sCkU4EiUAAuY9h + /////Pn4/v7+9e/pnF8ei0UAj0oBjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oBi0MA3cix/////fz7//////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////v7+/////Pz7////49G/j0oHjUgBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oBjEYBl1cU8urj/v39/fv6+vf0//// + 1LqfikIAj0sCj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAjkoAj0sBikIAoWcq9vLt/fz7/v39/v7+//////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////v7+ + /f38+/n3p3A0iUEAj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBiUEAzrCQ/////fz7/v7+/fz7/fz7+/n3q3hBiUAAkEsC + j0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAjkkAj0sBiEAAyKaB/////fz7/////v7+//////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////v7+/v7+/Pz7////z7GRiUEAkEwC + jkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAjkkAj0oBikIApnA0/fz7/v39/v7+/////////f38////6NrMkEwHjUgBjkoAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoA + jUgBlFIO7uTa/////f38//////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////v7+/////fz8/v398OfellYTjEYBj0oBj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkgB + jUYA4tG+/////fz7/////v7+/v7+/////fz8////wJpvhz4Aj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAkEsCiD8As4RR/fz7 + /fz7/v7+/v7+//////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////v7+/v38////uY9ghz4AkEwCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsBiD8Au5Fk/////f38/v7+ + /v7+/////////v7+/fz8/v389e/pnmMmi0MBj0sBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oCi0QB3Mav/////fz8/////v7+ + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////v7+ + /v7+/Pz8////4tG+jUgCjkkBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oBi0UAmFkW9e/o/v7+/f38//////////////////// + /////fv6////17+miUEAj0oBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBikMAoWgp+vfz/v7+/v79//////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////f39/fz8+/j2pW4z + iUAAj0sCj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0kAj0oBiUEA0ria/////fz8/v7+/v7+/////////////////v7+/v39/v39/v/+ + sH9LiEAAkEsCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAjkoAj0sCiD4Ax6Z//////fv6/v7+/v7+//////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////7+/v7//fz8////yqqHiD8Aj0sBjkkAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkA + j0sCiUIAqXU7/fz7/v39/v39/////////////////////////////v7+/fz7/v7+6t3PkU4NjkgCjkoB + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0kAj0oAjUcBkU0N7ODU/////f39/////v7+//////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////v7+/v///f38/v7+7+bdlVMOjEYBjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkBjUgB5dXG//// + /f38/////v7+//////////////////////////////7//fz7////w551iD4AkEwCjkkAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sB + hz4Ar35J/v39/fz8/v7+//////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////v7+/v39/fz7////tolYhz4Aj0sDjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEwBiEAAvZZq/////f37/v7+/v7+//////// + /////////////////////v7+/////f39/v7+9vHsnmMki0QAj0sAj0kAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oCi0QB2cKo//// + /fz7/v7+/v7+//////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////v7+/////fz8//// + 3su3jUcDjkoBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oBjEUBmlsZ9O7n/v79/f38//////////////////////////////// + /////////v7+/v7+/fz6////2cGpikIBj0oDjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0sBi0MAn2Qn+PTw/v79/f38/////v7+ + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////f39/fz8+vf0omosiUEAj0oBj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjkkAj0sCiD8A0reZ/////fz7/////v7+//////////////////////////////////////////// + /v7+/fz7/Pv6sH9KiD8AkEsBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsChj0Aw594/////fz7//7///////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////v7+/v7+/Pz7////yqmGiUAAj0sCjkkAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsBiUEAq3hA + /Pz6/f38/v39//7+/////////////////////////////////////////////v7+/////f37////7OLW + k1EOjUcBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAjkoBjUcCklAO6t7Q/v7+/fz7/v7+//////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////v7+/////f39//7/7ePYk1ENjUcAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAjUcBj0sG6NrL/////fz8/v///v7+ + /////////////////////////////////////////////////v7+/v7+/fz7////xqR+hz4Aj0sCjkkA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjkkAkEsBiUEAsIFN/v79/v39/v3+/v7+/v7+//////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////v79 + /Pz7/v7+s4RQiEAAkEwCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBhz4AwZty/////fz8/v7///7+//////////////////// + /////////////////////////////////////v7//v39/v399/PuoWgrikIAj0oBj0kAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sC + iEAA176j/////fz7//////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////v7+/v7+/fz8////2sSti0QBjkoC + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0kAj0sBi0QAm14d9vHr/v79/f39//////////////////////////////////////////// + ///////////////////////+/////fz8////3MawikMBj0oCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0sCi0QBnGAi9O7n/v38 + /fz8/v7+//////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////f39/v39+fbzoGcoikIAj0sBjkkAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sC + iUEA1buf/////fz8/v7+/v7+//////////////////////////////////////////////////////// + /////////v7+/f79/fz8/f39soNPhz4Aj0sCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEwChz0AwZxz/////f38/v7+/v7+//// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////v7+/Pz7////x6V/iD8AkEwBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0wBiEAArHpD/v7+/v38/v7+ + /////////////////////////////////////////////////////////////////////////////v7+ + /f38/v7+69/SlFIPjUcBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAjkgBkEwG6dvN/////fz8//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////v7+ + /////Pz7/v397ODUlFMRjUcCj0oBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkBkE0I6NvM//7+/fz8/////v7+//////////// + /////////////////////////////////////////////////////////////////////fz7////yKaB + hz0AkEwDjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAjkkAj0sCiUEArXtG/Pv5/fz7/v39/v7+//////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////v///f38////sH9K + hz8Aj0wCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAjkkAj0wChz8AwJlv/////f38/v7+/v7+//////////////////////////////// + /////////////////////////////////////////////v7+/v7+/f39/f389/Puomgti0MAj0sCj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0sDiD8A1r2i/////fz7/////v7+//////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////v7+/f38////18ClikMAj0sBjkkAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkA + j0oBi0QAnmIj9vHs/v39/v39//////////////////////////////////////////////////////// + /////////////////////////////////////v7+/fz8////3sq0jEYAjkoCjkkAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oAi0UA + nWAf9vHs/v7+/v79//////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////v7+/v7+/f38/f389vHsn2Qli0QBj0sBj0kAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oCikIA2MGo//// + /fz7/////v7+//////////////////////////////////////////////////////////////////// + /////////////////////////////fz8////tYhWhz4Aj0wBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsCiD8AwJpw/v7+/fz7 + /v7+/v7+//////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + ///////+/////fz7////xKF6hz4AkEwCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0wBiEAAsH9L/////f38/v79/v7+//////// + //////////////////////////////////////////////////////////////////////////////// + /////v7+/////fz7/v797uXblVQVjEYBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkCjkkG59jJ/////f38/////v7+//// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////v7+/v///f38//// + 6t3PkU4IjUcBjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjUgBkU4J6t7Q/v7+/fz8//////////////////////////////// + /////////////////////////////////////////////////////////////////////////v7+/v7+ + /fz7////yqqGiEAAj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsBiUEAqnY9/Pr4/v39/v7+//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + ///////////////////////////////////////////////////+/v39/fz7/fz7r39KiUEAj0sCj0kA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjkkAkEwChz0Aw553/////fz8/v7+/v7+//////////////////////////////////////////// + /////////////////////////////////////////////////////////////////f39/v79+/n3omor + ikEAj0sBj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAjkoAj0sCiEAA0raY/////fz6/v7+/v7+//////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////v7+/v7//fz7////1ryiiUIAj0oCjkoAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0sBikMBnmMm + +PTw/v39/f39//////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////v7+/v7+/fz7////38u2i0QEjkoDjkoAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0kAj0sBjEUAmVwb9e/p/v7+/f38//////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////f38/v7+9vHsnF8eikMAj0oAj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oBikMA2MCl/////fz7/////v7+ + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////v7+/fz8/v7+t4pZiD8AkEwCjkkAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEwChz4A + vpVq/////fz7/v/+/v7+//////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////v7+/v7+ + /Pz7////wJpwhz0Aj0wDjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsBiUAAr39J/v7+/v39/v7+/v7+//////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////v7+/////f39////8urillcTjEYAj0oAj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAjUgCjkgE5dXE/////fz7 + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////v7+/////fz8////59nLkEsHjUgB + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAjkoBjEcBk1AN7OLW/v///fz7//////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////v7+/v7+/Pz7////za6OiEAAj0sCjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEwBiUEAqnY8/f38/v39/v3+/v7+//////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////f39/fz8/fz7rHlCiUEAkEsBjkkAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sC + iD8AyKaB/////fz7/v///v7+//////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////v79 + /fz7+fXypW0xiUEAj0sBj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBiUEA0bWX/////fz8/////v7+//////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////v7+/v7+/fz7////z7OTikIAj0oCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAj0sBikMAn2Yl+vf0/v7+/f39 + //7///////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////v7+/////fz7////4tG+jEYC + jkoBjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oBjEUCl1gY8+vk/v79/fz7//////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////f38////7eLWlFEOjEcBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAjkoBi0QA28av/////fz7/v7//v7+//////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////v7+/v79/fz7/v7+uY5fiEAAj0wCjkkAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + jkkAkEsCiD8Auo9h/////fz8/v7+/v7+//////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////v7+/v7+/v79/fz8+/r4rHlE + iUEAkEsCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAjkkAj0sBiD8As4RR/f39/v39/v7+///+//////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////v7//f38/v7+7+fdl1cUjEYBjkoAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oBjkgB + 4tC+/////f38/////v7+//////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////v///v7+/Pz7////wp51hz4Aj0sCj0kAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjUcBk1EN7+Xb/////f39/////v7+//////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////fz8////z7GRhz4Aj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsCiUEAp3E4/Pv5/v38/v39 + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////v7+/v7+//7+/fz7////3ciwjEUAjkkBj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsChj0Ax6WA//// + /fz7/v7+/v7+//////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /v7+/v7+/f39/fz7+vj1qHI4iUEAj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAkEsCiD8Az7GR/////f38/v7+/v7+//////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + ///+/////fv7////7OHUlVQWjEYBj0oBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBikMAomks+PPv/v39/v79//////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////v7+/fz7 + ////5NPBj0oGjkgBj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oBjEYAl1gU8uri/v7+/fz8//////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////v7+/v7//f38////8uvj + n2QoiUEAkEwCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oCi0QB38u2/////fz7/////v7+//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////f38////u5Jlhz0A + kEwCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAjkkAj0sBiD8AupBi/////fz8/v7+/v7+//////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////v7+/////fz8/v7/+PTvq3dAiD8AkEwBjkkAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjkkAj0wCiEAAt4pa/v7+/f38/v79/v7+//////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////v7+/v7+/fz8/v398erimVwcjEUBj0sBj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjkkBjUgE4M66/////fz7/////v7+//////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////v7+/v7+/////fz8////+vj1rHpFiD8Aj0sCjkkAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAj0oAjUcBlVQR + 7+bd/v7+/f39//////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////v7+/fz7////0LSUiUEAj0sCjkkAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBikIAo2sv + +/n4/v39/v7+//////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////v39////+/n2tYhXhz4Aj0wDjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsChj0AyquI/////fz7/////v7+ + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////v7+/fz8/fz7qHM5iUEAj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsChz4Ay6uJ/////fz7/v7+ + /v7+//////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////v7+///+/v7+/fz7////+vf0 + rXtIikIAj0sDj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAj0sBikIAo2wx+PXx/f38/f38/v7+//////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /v7+/////Pz7////4tLAjkgHjUgCj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oBjEUBllYS8Oje/v7+/f38//////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////fv7////9/Puq3hChz4Aj0sBj0oAj0kA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAjkkAjkoBi0UA4M24/////fz7//////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////v7+/v7+/Pz6 + ////vpZqiD4Aj0wCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBiD8AuItc/////fz8/v7+/v7+//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////7+/////v7+/fz7////7+XaomoxiEAAkEwDj0oAjkkAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEwC + hz4AtolZ/////fz8/v3+/v7+//////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////f39/v7+9vHsnGAdi0MA + j0sBj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAjkkAjkkCjEYB38y3/////fz8/////v7+//////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////v7+/v7+ + /v///v39/Pz7////38y3mFkciUAAkEwCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oBjEYDllYX7+bc/v7+/f38 + /v7+//////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////v7+/v7+/fz7////1LqeiUEBj0sDjkoAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoA + j0sBikIApGww+vj1/v39/f39/v7+//////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////v7+/////////Pv6////////y6yJ + j0sEikMAkEsBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsCiD8Azq+O/////fz7//////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////v39/fz7/Pr5qnY9iD8Aj0wCj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBiD8AzK2M + /////Pz7/////v7+//////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////v7+/v7+/////v7+/fz7////8+zks4NTiUEAjUkAkEsCjkkAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0kAkEsBiUEApnA0/fv6/v39/f79/v7+/v7+//////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////v7+/v///f38////5tjJkUwIjkgAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjEYBlFIP7uTa/v7+/f38//// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////v7+/////v7+/fz7////////3Mixm14hiEAAj0sCj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + jkoAjkkCjkkG4c+7/////fz7/v7+/v7+//////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //7+/v7+/fz7////v5lviD8Aj0sDjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsCiUAAtIZV/////v39/v7+/v7+//////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////v7+/v7+///+/v39 + /fz8////+PTvvpZujUgDikQAkEwDj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsChz4AuI1d//// + /fz7/v7+//////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////7+/f38/f38 + 9O7nm10ci0QAj0oBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oBikMA3ciy/////fz8/////v7+//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////v7+/////v7+/fz7////////28aunmImhz4A + jkkAj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjEYAl1gW8+vk///+/f38/////v7+//// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////v7//Pz7////1LqdikIAj0sB + jkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAjkkAj0oBikMAoWgp+fby/f39/f39//////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////v7+/v7+/////v7+/fz7/v//////8OjdtolbjEUAikMAkEwCj0oAjkkAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsCiUEAzrGR/////fz7/v7+/v7+//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////v39/fz7/f38rn1HiD8Aj0sCj0kAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkA + j0sBiD8AyKiE/////fz8/v7+/v7+//////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////f38////////+/j2y62LlVQSiD8AjkoBj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjkkAj0oBiUEApW4z+vj1/v39/v39//////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////v7+/v7+/Pz7/v7+6d3Qkk8LjUcBjkoAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjUcBkk8J7eTZ + /v7+/f38/////v7+//////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////v7+/////v7+/f38/f39/////Pr4 + 2sSsomktiD8AjEcAkEwCj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAj0oAjkkAjkgD + 49PB/////fz8/////v7+//////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////v7+/f38////w552hz4Aj0wBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBiD4As4VS/////f39/v7+//// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////v7+/v7+/////f38/v7+////////38y3qXU+iUEAikMAkEsCj0sB + jkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsChz4AvJNm/////fz7/v7+/v7+ + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////v7+ + /////f39/f389vHrnGAgikMAj0sCj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkBjEYA3Mex/////fz7/v7+/v7+//////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /v7+/////////v39/fz8/v7/////////4tC9rntHjUgCiUIAkEsCj0sBj0oAjkkAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAj0oBjEUBmVsZ9O7m/v7+/f38//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////v7+/v7+/Pz7//// + 2MCnikMAj0oCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAjkkAj0oAi0MAnmMj+ffz/v39/f38//////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////v7+/v7+/v7+/v7+/v39/fv6//// + /////fz82MGnrXtIjUYAiUEAjkkAkEwCj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAjkkAj0sCikEA0bWX/////fz7/////v7+//////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////v7+/f39////r35IiUAAj0wC + jkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAjkkAj0sBiEAAxKF6/////fz8/v7+/v7+//////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////v7+/////v7+/f38/fz6/v7/////////8uvj0bWXomktjEUAiD4A + j0oBkEsBj0oAjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAkEsC + iUEAqHQ7+/j2/fz8/v39/v7+//////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////v7+/////fz7/v7+6NvNkEwIjUgBj0oBj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + jUgBkk8K7ODV/////fz7/////v7+//////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////v7+ + /////v7+/v7+/v7+/v39/v39/////////f3859jKvZVqnF8hiD8Ai0QAj0oAkEwEj0oAjkkAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkgBjkkE5dXE/////fz7 + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////v7+/v7+/Pz7////w551iD4Aj0wCjkkAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsCiUEAsIBL//// + /f38/v7+///+//////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////v7+/////v7+/fz8/fz6//////// + ////////69/T0baYqndBjkgAiUAAi0QAkEwDj0sBj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBiD8AvZRo/////fz7/////v7+//////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////v7+/f39+vbzn2UlikMAj0oBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sCi0QA2sOq/////fz7/v7//v7+ + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////v7+/////v7+/v7+/v79/v38/v38/f38/v///////////v398Ojf0bWXsYBNlVUShz0A + ikIAjkkAkEwCj0sCj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oBi0UBmlsc8eri/v39/fz8/v7+//////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////v7+ + /////Pz7////28avi0MBj0oCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0sBikMAnmIj+PXx/v39/f38///+//////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////v7+/////v7+/v79/f38 + /fz7/fz6/v7+/////////////////Pr55dXDyaqHr31Lkk8HikMAiUEAjUYAkEwDj0sBjkkAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + jkkAj0oBiUEA1Lqd/////fv6//////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////v7+/f79/fz7/f38 + sYJOiEAAj0sCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAjkkAj0sBiD8AxKB5/////fz8/v///v7+//////////////////////////// + /////////////////////////////////////////////////////////////////v7+/////v7+/v39 + /v39/v39/v39/v39/v39/v38/v38/fz8/fz8/f38/f38/v38/v38/v39////////////////////9vDq + 6d3P0baYtIZVn2Unkk8HhjsAiUAAjkgAj0sBkEsCj0sBj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsCiUAArHpD/f38 + /v39/v39/v7+//////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////fz8////7OHWkk8KjUcAjkoA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAjkkAjUgBkU4J6NrM/////fz8//////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + ////////////////////////////////////////9O3l49PB1Lqew552soNRnmIhikIAikIAiUEAikIA + jUgAkE0EkEwCj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoBjUgCj0wK59nK/////fz7/v7+//////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////v7+/v7+/fz7////xqR+hz4AkEwCjkkAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sC + iUEArnxG/v7+/f38/f39/v7+//////////////////////////////////////////////////////// + /////////////////////////////////v7+/////fz6+PXv+fXy+fXy+fXy+fbz9vDr8Oje8Oje6dzO + 5NXE2MCmzbCPv5dusIBMn2UnmlwZk1EJjEUAhz0AiUEAjUcAkEwEkE0EkU0EkU0EkEwDj0sCj0sCj0sC + j0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sC + j0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sC + j0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sC + j0sCj0sCj0sCj0sCj0sCj0sCj0sBkE0Ehz4Av5ht/v7+/fz7/v7+//////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + ///////////////////////////+/f39/f389/PuoGYnikIAj0sCj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsBiUAA1r2i//// + /Pz7/////v7+//////////////////////////////////////////////////////////////////// + /////////////////fz7////4M25l1YeoGYnn2MknmMkn2QmmVsYkUwEkU0FhTkAgzcAhDgAhDkAhDkA + hToAhToAhz0AiEAAikIAi0UAi0QAikIAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEA + iUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEA + iUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEA + iUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEA + iUEAiUEAikIAhz0Am1wc9O7o/v7+/f39/////v7+//////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////v7+//7//f38////2sSsi0QAj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oBi0UBnWEg9fDr/v39/f39//////// + //////////////////////////////////////////////////////////////////////////////// + /fz7////6NrMtIZYupFjuY9huo9huY9gupBjvJNnvJNnvpdsv5dtv5dtv5dsvpdsvpdsvpdsvpZrvpZr + vpVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVq + vZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVq + vZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVq + vZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvpdsuI1g + 4M24/////fz8/v7+/v7+//////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + ///////////////////////////////////////////////////////////////////////////////+ + /v7+/fz7////tIZUiD8Aj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsBiD8AwZxy/////fz7/v7+/v7+//////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////v7+//////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////v7+/v7+/fz7/v397ePY + llURjEYBj0oBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAjkgBkEsF6NrN/v7+/fz8/////v7+//////////////////////////// + /////////////////////////////////////////////////v7+/////v79/fz7/fz7/fz7/fz7/fz7 + /fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7 + /fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7 + /fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7 + /fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7 + /fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/v39/v7+/v7+/v7+//////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////v7+/Pv7////yaiEiD8Aj0sBjkkA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjkkAkEsCiUEArXpD/v7//f39/v7+//////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////v7+/////f39/v38+vf0oWgrikIAj0sBj0kAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oB + ikMA1bqf/////fz7/v7+/v7+//////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////v7+/v7+/fz7////3MiyjEYBjkkBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oBi0QAmlwa9O7n/v39 + /f38/////v7+//////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////v7+/f39////tIdViD8Aj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsBiD4Avpds/////f38/v7+//////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////v7+//// + /fz8/v7+7+XblFIOjEYBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjUgBjkoD5dbF/v7//fz7/v7+/v7+//////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////v7+/////v7+/v38/v39 + /v38/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39 + /v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39 + /v39/v39/v39/v39/v39/v39/////////v////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////v7+/v7+/fz8////y6uI + iUEAj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAjkkAj0sBiUEAq3c//fz7/v38/f79//////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////v7+//////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////v7+/v7+//////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////f39/v39/Pv6pGwuikEAj0sBjkkA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjkkAj0sCikIA1Lqd/////fz7/v///v7+//////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////v7+/v7++fbzqXY9nmImoGYnoGUnoGUnoGUnoGUnoGUnoGUnoGUn + oGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUn + oGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnn2UnoGUnnmMm4c+8//// + /fz8//////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////v7+/////fz7////4tC9jUgEjkkCjkoAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oBi0QA + mVsZ8+zl/v38/fz8//////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////v7+/fz7////xaJ8hToAi0QAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIA + ikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIA + ikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAi0QAhDoAqHI6+/n3/v39/v7+//////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////v7+/v7+/fz8////uIxciUAAkEsCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEwCiD8AvpZs/////fz7 + /v7+//7+//////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////v7+/////fz7/v7+ + 7ODUk1EPjUcCkEwDj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sB + j0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sB + j0sBj0sBj0sBj0sBj0sBj0sCkEsCjkkDkk4L6t7Q/////fz7//////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////f39/v7+8enhllYQjUYAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAjkkBjkkE49PB/////fz8/v///v7+//// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////v7+/f38////soJOiEAAj0sBjkkA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjkkAj0wBiD8Awp10/////fz8/v7+/v7+//////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////v7+//// + /Pz7////za+OikEAkEsBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAj0sDiEAAp3I3/Pr4/f38/v39/v7+//////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////v7+/Pz7////2cOri0QAj0oBjkkAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oBi0UAnWAf + 9vHs/v79/fz8//////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////v7+/f39/f38+/n3pm8z + iUEAj0sBj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAjkkAj0oCikIA0LOU/////fz8/////v7+//////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////v7+/v7+/f38/f38+PPvoGcqi0QBj0sBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0sCiUEA1r2i/////fz7/v7+/v7+ + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////v7+/////fz7////4tC9jkkDjkkBjkoAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAi0YAl1gT8+3l/v7+/f39//////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /fz7////x6V/iD8AkEsCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsCiEAArXtF/f38/f38/v7+//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////v7+/v7+/fz8////vJJmiD4AkEwCjkkAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sCiEAA + upFj/////fz8/v7+/v7+//////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////v7+/f38/v7+6t7RklALjUcB + jkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0kAjkgBkU0I6NrM/////f38/////v7+//////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////v7//fz8/v798eril1kVi0QAj0oBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkgBj0oG5NPC/////fz7 + /////v7+//////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////v7+/v79/f38/f38soNQiUEAj0sCj0kAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsC + hz4AwZty/////fz8/v7+/v7+//////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + ///////+/v///f37////0bWXiUEAj0sCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBiUEApm8z/fz6/f38/f39//////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////v7+/////fz7////3MexikMAj0sCjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oBi0MBnGEj9vLt/v39/f38 + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////f39 + /f38/Pr4qHM6iUEAj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oCiUEAz7KS/////fz7/v7+/v7+//////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////v39/f38+PXxomotikIAj0sBj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBiUIA1r2i/////fz7/////v7+//////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////v7+/v7+/fz7////49PBjUgC + jkkBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAjEYBllYU8ejf/v79/f38/////v7+//////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////v7+/v7+/fz7////y6yJ + hz8Aj0sCjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0kAkEsBiD8ArXpD/fz7/v38/v7+/v7+//////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////v7+/fz8////vJNmhz8Aj0sBjkkAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + jkkAkEsChz4At4ta/////fz8/v7+//////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////v7+/////f39////7ePZlFIPjEYAj0oAj0kAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + jkoAjUgCkEwL6dzO/////fz7//////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////v7+/////fz8/v398+vkmFoXi0UAj0oBj0kAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAjkkBjUcD + 38y3/////fz7/v7+/v7+//////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////v7+/fz7/f38tYdVhz8Aj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBiD8AwZtx//// + /fz8/////v7+//////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////v7+/v7+/fz8////0reaikIAjkoBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBiUEApGww+/j2/v38/f39 + /////v7+//////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////v7+/v7+/fz6////3su1jEUEjkoCjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oBi0QAnGAf9fDq/v79/f39//7+//////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////v79/v39/f39q3c+iUEAj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBiD8AzKyK/////Pz7/v7+//////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////v/+/f39/v79 + +fb0o2otikMAj0sBj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sCikIA07eb/////fz7/v7+/v7+//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////v7+/////fz8 + /v7/59fIjkoEjUkBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oBi0YBl1cV7+bc/f39/fz7/v7+/v7+//////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////v7+//7//fv7////yqmGiD8AkEwCjkkA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjkkAj0sBiEAAqXU7/Pv6/f38/v7+//////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////v7+/v7+/fz8////v5dtiD4A + kEsBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAjkkAj0sBiD8Atotb/////fz7/v7+///+//////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////7+/fz8/v7+7uTalVQUjUcCj0oBj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkCj0oK + 5tbG/////fz8/////v7+//////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////f39/v399O7om10ci0UBj0oBj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + jkkAj0oBjUcB4M25/////f38/v7///////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////v7+/////f38////tolXiD8AkEwCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEwCiD4Avpdr/////fz7/v39/v7+ + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////v7+/////fz8////07ibiUAAkEsBjkkAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0sCikIAomos + +PTw/fz8/f39/v7+//////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /fz7////3ciyikMAj0oCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAj0oAi0UAmlsY9O7n/v7+/v39/v////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////v7+/f39/f38/v79q3c/iUAAj0wCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEwChz4AyaiF/////fz7//// + /v7+//////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////v7+/f39/f38+fXxomoviUEA + kEwCjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAjkoAj0sCiUAA07mc/////fz7//////7+//////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////fz8////6NvMkEwHjUgBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAjUcAk1EL7uTa/////f39//////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////v7+/////f38////y6uJhz8Aj0sBjkkAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAj0sB + iUAAq3dA/Pr4/fz7/f39/v7+//////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////v7+/v///fz7 + ////wpxziD8AkEsBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAjkkAkEwCiD8AtIZU/v39/fz7/v39/v7+//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////f38/v7+7uPYlFMPjUcBjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkgBj0oC5dbG/////fz7 + /v7+//////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + ///////////////////////////////////////////////////////////+/fz8/v399/LunGAfi0MA + j0sBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAjkoAj0kBjEUC3cm0/////fz7/////v7+//////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /v7+/v79/f38/v7+tYhYiD8AkEsCj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0wChz0AvpZr/////fz8/v7+//////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////v7+/v///fz7////17+likMAj0oBjkkAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kA + j0oBikMAomgq+vf0/f39/v7+//////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////v7+/////Pz7////4M24 + i0UAj0oBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0sBi0QBm10f8+3m/f38/fz7/v7+/v7+//////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////7+/v79/f39////rnxGiUAAkEsCjkkAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sCiEAAyKWB + /////Pz7/v7+/v7+//////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////v79/f38+PTxomkti0MAj0sBjkkAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + jkkAkEwBiUEA0rea/////fz7/v7+//////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////v7+/v7//fz7////6t3QkE0IjUgBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oBjUcBkk8M69/T/v7+/fz7//// + /v7+//////////////////////////////////////////////////////////////////////////// + /////////////////////////v7+/v7+/fz7////y6yKhz4Aj0sCjkoAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sCiUAAqnU9/Pz7 + /v38/v39/////v7+//////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + ///+/v7+/fz7////wZtyhz8Aj0wCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBiEAAsoJP/////f38/v7+//////////////// + //////////////////////////////////////////////////////////////////////////////// + /////v7+/////f38/v7+8enhllYSjUcBj0oBj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjUgCj0sJ5dbG//7+/Pz7/v7+/v7+//// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////v7+/////f38/v79 + +PTwnGAfi0QAj0sAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAjkkAjkoCi0QA28St/////Pz7/v7+/v7+//////////////////////// + /////////////////////////////////////////////////////////////////////////v7+/f38 + ////uI1diD8AkEsCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsBhz8AvpZq/////fz7/v7+//////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////v7+/v7+/fz7////2sSsi0UAj0oB + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0kAj0sCikMAnmQl9/Lt/f38/f39/////v7+//////////////////////////////////// + /////////////////////////////////////////////////v7+/v7+/fz7////4tC+jUcCjkkBj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0kAj0oBi0QAmVsZ9O3m/v79/f38/////v7+//////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////v7+/f38////sYFMiD8Aj0sBjkkAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkA + kEwChz4AxaJ8/////fz7/v7+//////////////////////////////////////////////////////// + ///////////////////////////////////+/f39/f39+/n3pGwwikEAj0sBjkkAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAj0sCiUAA + 07mb/////Pz7/v7+/v7+//////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////v7+/////fz7/v7+7OHUkU0HjUgBj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oBjUcBk1AO6+DU + /v7+/Pz7/v7+/v7+//////////////////////////////////////////////////////////////// + /////////////v7+/v///f38////za+OiD8Aj0oBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsCiUEAq3c+/fz7/fz8/f79//// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////v7+/v7+/fz8////xqR/iD8Aj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0wChz4AsIBM/v79/fz7/v7+//// + //////////////////////////////////////////////////////////////////////////////7/ + /fz8/v7+8erillYSjEYBj0oBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkBjkkF5tfH/////fz8/////v7+//////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////f39/f39+PXwn2Qli0MAj0oBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oBikMA2cKp/////fz8/v7///////////////// + /////////////////////////////////////////////////////////v7+/v7+/fz8////uI1fiD8A + kEwCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAjkkAj0wDhz4AvpVq/////Pz7/v7+/v7+//////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////v7+/////fz8//// + 2sWtikEAj0oBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oBi0MAnWAg9vDq/f38/f38/v7+//////////////////////////// + /////////////////////////////////////////////fz7////4tC9jUcAjkkBjkkAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + jEQAm10b9O/p/v7+/f38//////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////v7+/v7+/v39/v7+soJPiUAAkEwC + jkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAjkkAj0sDhz8Aw552/////fz7/v7+//7+//////////////////////////////////////// + /////////////////////v7+/f39/f38/Pr4pW8yikIAj0sCj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sCiUAA07ib/////fz7 + /v7//v7+//////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////f38/v7+7OHWklAMjUcBj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkA + jUgAklAK6dzO/////f38/v////////////////////////////////////////////////////////// + /v7+/////fz7////za+OiUEAj0sCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0sCiEAAqXY9+/n3/fz7/v39///+//////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////v7+/////fz8////yamFiD8Aj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0wCiEAArXpD/Pv6 + /fz6/v39/v7+/////////////////////////////////////////////////////////f39/v7+8eng + lVMPjEYAj0oBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAjkkAjkkBkEwF5tjJ/////f38/v///v7+//////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////v7+/f39/v39+fXyomkrikMAj0sCj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAj0sDikMC17+l/////fz7/////v7+ + /////////////////////////////////////////////v7+/v7+/f38////uI1diEAAkEsDjkkAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + jkkAkEwBiD8Au5Jl/////fz8/v7+//7+//////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////v7+ + /////fz8////3ciyi0QAjkoCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAj0sBi0QAnmIi9vLt/v7+/v7+//////////////////// + /////////////////////////v7+/////fz8////4tC9jkgEjkkBj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oBjEUBmFoX8uvj + /v39/fz8/////v7+//////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////v7+/v7+/fz8//// + tYdViD8AkEsBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAjkkAj0wDhz4AwZtx/////fz7/v7+/v7+//////////////////////////// + /////////////v7+/v39/Pr4pG0vikMAj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBiEAAz7KT/////fz7/v7+/v7+//// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////fz7/v7+7uTalVQQjEYBj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oBjUgCkU4N59jI/////fz8/////v7+/////////////////////////////v7+/v7+/fz8 + ////za6NiUAAj0sCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sCiUEApm8z/Pv5/v39/f39//////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////v7+/v7+/fz7////yaiDhz4Aj0sCjkkAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sB + iUAAqnY9/fz8/f38/v7+/////////////////////////////v7+/////f38/v398enhllcVi0UBj0oB + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAjkgBjkkD5NTD/////fz8/v7+/v7+//////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////f39/v39+/j2oWgqikIAj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sCiUIA07mb//// + /fz7/v7+/////////////////////////////v7+/f38////t4tahz8AkEsBjkkAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sCiD8A + upFj/////fz8/v7+//////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////v7+/v7+/fz7////4M67jEYDjkkCj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0sBi0QBm18g8+3l/v39/f38/v7+/v7+ + /////////////v7+/v7+/Pz7////5NTEjkkEjUkCjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAj0oAjEUAllcT8+vk/v39/f38//// + /v7+//////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /v7+/fz8////uIxciD8Aj0sCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsChz0Avpdr/////fz7//////////////////////// + /f39/fz8+/n3p3E4iUEAj0sCj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAj0sBiUAA0LSV/////fz7/v7+/v7+//////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////v7+/////fz8/v7+8Ojf + llYSjEcBj0oAj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAjkkAjkgBkEwI5dfG/////fz7/v7+/////////////v7+/fz7////0LSWiEAA + kEsCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAjkkAj0sBikIAp3A1/Pr5/v39/v39//////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////v7+/v7+/fz7////za2Mhz8AkEsCjkkA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0kAj0sBiEEArHlC+/r4/fz8/v39/v7+/v7+/v7+/f38/v398+zkmVoZi0UBj0oBj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + jkkBjUcA49LA/////f38/////v7+//////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////v38/f39+/n3pG0yikEAj0sCjkoAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sC + iD8A0ria/////fz7//////7+/v7+/fz7////u5Jlhz0Aj0wDjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsBiD8Au5Jk/////f38 + /v7+/v7+//////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////v7+/////f38////38y3jUcAjkoBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0sBjEUBmlsb8eng/v79 + /f38/////f38////5NTDjkkEjkkBjkkAj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oBjEUBl1gV8uvk/v79/f38//////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////v7+/v7+/fz8////t4xchz4AkEwCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0wCiD4Au5Jm/////fz7/f39/fz8+/n3 + qXQ6iUIAj0sBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAjkkAkEsBiD8A0LOU/////fz8/////v7+//////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /fz7/v7+8engllYWjEYBj0oBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAjkkBjkgD5NTD/////Pr5////0bSXiEAAj0sDjkoAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0kAj0sCikIAp3E3/Pr4/v39/v39/v7+//////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////v7+/////fz8////0baX + iUAAkEsBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0kAj0sBiUAApnE2+fbz/f388uvjl1cTi0UAj0oAj0kAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAjkkBjkgE5NTD + /////fz8/v////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////v7+/v3+/v39/Pv5p3I4iUEAkEsBjkkA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjkoAj0sCiUAAz7GT////upFjiD8Aj0wCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEwCiD8Au5Fj/////fz8/v7///7+//// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////fz7////4tG/jUcDjkkCjkoAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAj0oAi0MA + nWEh1r2ikE0KjkgBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0sBjEYBl1gX8urj/v7+/f38///+//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////v7+/v/+/Pz7////u5FkiD8AkEwBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oAjkkAkU4FjUcAj0oA + jkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAjkkAj0sCiEAA0bWW/////fz7/v7+/v7+//////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////f38/v7+8+zlmFkZjEYBj0sBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkgAj0oAjkkAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBikIA + qHI4/Pv5/v39/v7+//////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////v7+/v7+ + /fz6////0LOTiD8AkEwCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oAj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kCjUcF49G//////f38//// + /v7+//////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////v7+/v39+/r3qnY+ + iUEAkEsBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sChz4Au5Nm/v///fz8/v7+/v7+//////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////v7+/////f38////5tfIjkkIjkkCj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAjkoAj0oAjEYAl1cU8+zl/v7+/v39//////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////v7+/v7+/fz7////v5huhz4Aj0sCjkkAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kA + kEsChz8Az7KS/////fz7/////v7+//////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////v79/v7+9O7pmlwZi0UAj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAkEsCikEApnA3+vf0/fz7 + /v39/v7+//////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////v7+/////fz7////07ibiD8AkEsDj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkoBjEUA38y3/////fz7//////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////v7+/v39 + /fz7+/n3q3hBiUEAkEsCj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAjkkAj0wChz4AuY1f/////f38/v7+/v7+//////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////fz8////59jIj0oD + jkkBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oBjEYCl1YV7+Xb/v39/fz7/v7+//////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////v7+/v7+/f37////vpdthz0Aj0wCj0kAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsBhz4Ay6uJ + /////fz8//////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////v7+/fz8/v399O/om18hi0QBj0oBj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBiUEApW40+vf0/v39/v39/v7+/v7+ + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////f38////1r2iiUAAj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAjkkCjEYE4M24/////fz7/v7+//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /v7+/v7+/v79/v38/v39rnxIiEAAkEsBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAjkkAkEwChz8At4tZ/v7+/fz7/v7+//////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////v7+/fz7 + /v7+6NrMkU0LjkgCjkoBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjEYB + llYW7+Xb/v7+/f38/////v7+//////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////7//fz7////wJpwhz0A + kEwCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sCiD8Aza6M/////fz7/v7+ + /v7+//////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////v7+/////f39/v799vLtnWIki0QAj0sBj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAj0sBiUEApG0x+vf0/f38/v7+//////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////v7+/v7+/fz7////1r6ii0MAj0oCjkkAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAjkoAj0kCjEYF38y3/////fz7/////v7+//////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////v7+/f38/fz8rXtEiUAAj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkA + j0wChz8AuIxc/v7+/fz7/v39/v7+//////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /v7+/////fz8////697Skk8MjUgBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAjkoAjUYAllYR8Ofe/v/+ + /v39/v////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////v7+/v7+/fv6 + ////xKF6iD4AkEsCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0wCiD8Ay6uJ/////v38//////7+//////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////v79/v7++fXyn2Qli0MA + j0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0kAj0sCiUEApW8z+fby/fz7/f39/v7+//////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////v7+/////fz8////2cKqikQAjkoCj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjkoAjkkBjEYA4M24/////fz8/v7+//////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////v7+/v7+/fz7/Pv6sH9LiD8AkEsCj0kAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0wChz4At4pa + /////f38//////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////f38////7OLWkk4KjUgBjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0sBjEUBl1cV7uXb/v39/Pz8/v7+/v7+ + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /v7+/////fz8////xaJ8iD8Aj0wCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsBiUAAzK2L/////Pz7/v7+//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////v7+/v39/fz7 + 9/LtomgsikIAj0sCj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAjkkAj0sBiUIApGww/Pn3/f38/f39//////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////fz7////3Mewi0QAj0oB + jkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkB + jUcE3sq2/////Pz7/v7+/v7+//////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////v7+/v7+/f38////tolXiD8Aj0wBjkkAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsBiD8AuIxb/////fz8/v7+ + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////v7+/fz7/v7+7eLWlVMSjUcCj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjUYBllYT8Ojf/v7+/f39/////v7+//////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////fz8////yKaBhz4AkEsBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAjkkAj0sBhz8AyaiF/////fz7/v7+/v7+//////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////v7+ + /v7+/v39/v39+PTxomktikIAj0sBj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oBikMAomgq+fXy/v39/f39//////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////v7+/fz7//// + 3Mixi0MBjkoCjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oBi0MA3ciy//// + /fz8/////v7+//////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////v7+/fz7/v79tIdVhz4AkEwC + jkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEwBhz8AtIdV/////f37/v7+/v7+//////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////v7+/////f38////7+belVUUjEYBj0oBj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAjkoAjUYBlFMO7uPZ/v7+/fz8//////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////v7+/v7+/fz7////y6yJiD8Aj0sCjkkAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjkkAkEwBhz4AyKaD/////fz7/v///v7+//////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////v7+/v38+ff0pW4yikEAj0sBj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0sBikIAoWgq + +vf1/f38/f39//7+//////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////v7+ + /////fz7////4M24jEUFj0kCjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkCjEYB3ciy/////fz7/////v7+ + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////v7+/v39/fz7/v39 + tolZhz4AkU4FkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwD + kEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwD + kEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwCkU0EiEAAtIVS/////f39/v7+///+//////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////v///v39////8OfdlVQQhDoAiD8A + iD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4A + iD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4A + iD4AiD4AiD4AiD8AhToAkU4K7+Xc/v7+/f38/////v7+//////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////7+/////v7+////38y4y6yNzrGQzrCQzrCQzrCQzrCQ + zrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQ + zrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrGS + yqqM38u2/////v79/v7+/v7+//////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////v7+/v7+/v7+/v79//////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////v79/v7+ + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////f38/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8 + /fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8 + /fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/f38/v7+/////v7+//////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + ////////////////////////////////////////////////////////////////////////AAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA= + + + \ No newline at end of file diff --git a/LFP_Manager_PRM/Forms/fmxCommConfig.Designer.cs b/LFP_Manager_PRM/Forms/fmxCommConfig.Designer.cs new file mode 100644 index 0000000..06f1134 --- /dev/null +++ b/LFP_Manager_PRM/Forms/fmxCommConfig.Designer.cs @@ -0,0 +1,108 @@ +namespace LFP_Manager.Forms +{ + partial class fmxCommConfig + { + /// + /// Required designer variable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Clean up any resources being used. + /// + /// true if managed resources should be disposed; otherwise, false. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Windows Form Designer generated code + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(fmxCommConfig)); + this.layoutControl1 = new DevExpress.XtraLayout.LayoutControl(); + this.layoutControlGroup1 = new DevExpress.XtraLayout.LayoutControlGroup(); + this.ucCommConfig1 = new LFP_Manager.Controls.ucCommConfig(); + this.layoutControlItem1 = new DevExpress.XtraLayout.LayoutControlItem(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControl1)).BeginInit(); + this.layoutControl1.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup1)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem1)).BeginInit(); + this.SuspendLayout(); + // + // layoutControl1 + // + this.layoutControl1.Controls.Add(this.ucCommConfig1); + this.layoutControl1.Dock = System.Windows.Forms.DockStyle.Fill; + this.layoutControl1.Location = new System.Drawing.Point(0, 0); + this.layoutControl1.Name = "layoutControl1"; + this.layoutControl1.Root = this.layoutControlGroup1; + this.layoutControl1.Size = new System.Drawing.Size(404, 507); + this.layoutControl1.TabIndex = 0; + this.layoutControl1.Text = "layoutControl1"; + // + // layoutControlGroup1 + // + this.layoutControlGroup1.CustomizationFormText = "layoutControlGroup1"; + this.layoutControlGroup1.EnableIndentsWithoutBorders = DevExpress.Utils.DefaultBoolean.True; + this.layoutControlGroup1.GroupBordersVisible = false; + this.layoutControlGroup1.Items.AddRange(new DevExpress.XtraLayout.BaseLayoutItem[] { + this.layoutControlItem1}); + this.layoutControlGroup1.Name = "layoutControlGroup1"; + this.layoutControlGroup1.Padding = new DevExpress.XtraLayout.Utils.Padding(1, 1, 1, 1); + this.layoutControlGroup1.Size = new System.Drawing.Size(404, 507); + this.layoutControlGroup1.TextVisible = false; + // + // ucCommConfig1 + // + this.ucCommConfig1.Location = new System.Drawing.Point(3, 3); + this.ucCommConfig1.Name = "ucCommConfig1"; + this.ucCommConfig1.Size = new System.Drawing.Size(398, 501); + this.ucCommConfig1.TabIndex = 4; + // + // layoutControlItem1 + // + this.layoutControlItem1.Control = this.ucCommConfig1; + this.layoutControlItem1.CustomizationFormText = "layoutControlItem1"; + this.layoutControlItem1.Location = new System.Drawing.Point(0, 0); + this.layoutControlItem1.Name = "layoutControlItem1"; + this.layoutControlItem1.Size = new System.Drawing.Size(402, 505); + this.layoutControlItem1.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem1.TextVisible = false; + // + // fmxCommConfig + // + this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 14F); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.ClientSize = new System.Drawing.Size(404, 507); + this.Controls.Add(this.layoutControl1); + this.IconOptions.Icon = ((System.Drawing.Icon)(resources.GetObject("fmxCommConfig.IconOptions.Icon"))); + this.Name = "fmxCommConfig"; + this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen; + this.Text = "Communication Config"; + ((System.ComponentModel.ISupportInitialize)(this.layoutControl1)).EndInit(); + this.layoutControl1.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup1)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem1)).EndInit(); + this.ResumeLayout(false); + + } + + #endregion + + private DevExpress.XtraLayout.LayoutControl layoutControl1; + private DevExpress.XtraLayout.LayoutControlGroup layoutControlGroup1; + private Controls.ucCommConfig ucCommConfig1; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem1; + + } +} \ No newline at end of file diff --git a/LFP_Manager_PRM/Forms/fmxCommConfig.cs b/LFP_Manager_PRM/Forms/fmxCommConfig.cs new file mode 100644 index 0000000..32d0d09 --- /dev/null +++ b/LFP_Manager_PRM/Forms/fmxCommConfig.cs @@ -0,0 +1,36 @@ +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Data; +using System.Drawing; +using System.Text; +using System.Linq; +using System.Windows.Forms; +using DevExpress.XtraEditors; + +namespace LFP_Manager.Forms +{ + public delegate void UpdateEvent(object aConfig); + + public partial class fmxCommConfig : DevExpress.XtraEditors.XtraForm + { + public event UpdateEvent OnUpdate = null; + + public fmxCommConfig() + { + InitializeComponent(); + + ucCommConfig1.OnClose += FormClose; + } + + private void FormClose(object Config) + { + if (OnUpdate != null) + { + OnUpdate(Config); + } + + Close(); + } + } +} \ No newline at end of file diff --git a/LFP_Manager_PRM/Forms/fmxCommConfig.resx b/LFP_Manager_PRM/Forms/fmxCommConfig.resx new file mode 100644 index 0000000..cf8c6d2 --- /dev/null +++ b/LFP_Manager_PRM/Forms/fmxCommConfig.resx @@ -0,0 +1,4571 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + + + AAABAAQAICAAAAEAGACoDAAARgAAADAwAAABABgAqBwAAO4MAACAgAAAAQAYACjIAACWKQAAAAAAAAEA + GAAoIAMAvvEAACgAAAAgAAAAQAAAAAEAGAAAAAAAgAwAAAAAAAAAAAAAAAAAAAAAAAD///////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + ///////////////////////////////////////////////////+/v7+/v7+/v7+/v7+/v7+/v7+/v7/ + ///+/v7////////////////////////////////////////////////////////+/v7+/v7+/v7+/v7+ + /v7+/v7+/v7+/v7+/v7////+/v7+/v3+/v3+/v3+/v7+/f3////////+/v7///////////////////// + ///////////////////////////+/v7////+/v7+/f3+/v7+/v3+/v3+/v3+/v7////7+ff///////// + ///////////////+/v3+/v7////+/v7////////////////////////////////////////+/v7////+ + /v7+/v7////////////////////////7+PbCnHejazCkbTKkbDKlbjSdYTDLrIr////9/Pz+/v7///// + ///////////////////////////////////////////+/v79/fz////BnHSeYjClbjSkbDKkbDOjazDc + x7L49PGkbDKEOACKQwCJQQCHPgCNRwTt49n+/v39/Pz+/v7+/v7///////////////////////////// + ///+/v7+/v79/Pv//v7j0sKHPgCJQACJQQCLRACCNgCufkv////////q3tKOSQePSgSPSwKRTQSHPgCt + e0f////9/Pv+/v7////////////////////////////////+/v7////9/f39/Pv9/PuiaS6JQQCQTQOP + SwKNSAOUUxLz7ef+/f37+Pb////AmnKGOwCQTAKOSQCPSwKHPwDaxa7////8+/r+/v7+/v7///////// + ///////////+/v7///7+/v77+vj////OsJGGPACQTAKOSQCQTAKGPADNr4/////7+ff9/Pv9/fz38u6Z + WhuLQwCPSgGPSgGLRQGcXyH59vP9/fz9/fz////+/v7////////+/v7+/v7////+/v77+vn////u5NqS + Tw+OSAKOSQCPSwKJQACiai/8+vn9/Pz9/f3+///9/Pv////WvqWHPQCQTAOOSQCQTQOGPADDn3j////8 + +/r+/v7////+/v7+/v7+/v79/fz8+/r9/f3////u49mdYSiKQwCPSwGOSQCPSwKKQgDi0L/////9/Pv+ + /v7//v7+/v79/Pz///+seUOIPwCQTAKOSQCOSQKNSAbq39P+/v39/Pz+/v7////////////////////+ + /v7SuJ6WVRiLRQCRTwaQTASSUAeHPgC4jV7////9/Pv+/v7////+/v7+/v79/Pz+/v7r39SOSQeOSgKO + SQCQSwKHPwCsekT+/v/9/Pz+/v78+/r49PDy6uPi0cDDn3yZXB9/MACEOACHPgCGOwCFPACEOgCTURDz + 7Ob9/fz9/f3////+/v7////////+/v78+/r////CnneGPACQTAKOSQCQTAKHPgDYwan////9/Pz38u7o + 2szgzbvTuZ/MrY/St5zeyrTcyLLcx7Hcx7HdybPVvKfl1cX////9/fz+/v7+/v7////////+/v7////9 + /f39/Pz59fObXiCKQwCPSgGPSgGLRAGaXB349PH9/fz+/v/////////////////28e3AmnrEn3rDn3nE + oXu+lnbcxrD////9/Pv+/v7////////////////////+/v7+/v79/Pv////bxa+HPgCPSwKOSQCQTAKG + PADAmnH////8+/r9/fz9/Pv7+ff9/Purd0F/MACGOwCFOgCEOQCEOADj0sH+/fz9/Pz+/v7+/v7///// + ///////////////////+/v79/Pz///+ufkqHPgCQTAKOSQCOSgKNRwPp3M/+/v79/Pv8+/r////YwaqH + PgCSTwaQTAOSTwaHPgDDn3n////9/Pv+/v7////////////////////////////+/v7+/v79/Pz+/v7t + 4tiNSAaNSAKOSQCQTAKJQQCqd0D+/v79/Pv9/fz49fKbXyCMRQGPSwGPSgGLRAGYWRn38+/9/fz9/f3/ + ///+/v7///////////////////////////////7+/v79/Pv////EoHqFOwCQTQOOSQCQTQOHPwDUu6H/ + ///////Dn3iGPQCQTQOOSQCQTAOGPQDWvaT////9/Pv+/v7+/v7///////////////////////////// + ///+/v7////9/f39/Pv59vScYCOLRQGPSwKPSgGMRQGWVhf7+ffu5duNSAaOSQKOSQCQTAKJQQCqd0D+ + /v79+/r+/v7////////////////////////////////////////////+/v7+/v78+/r////cx7GJQgCQ + TAOOSQCQTAKFOwC/mXKzhVSGPACQTAKOSQCPSgKOSQfq3dH////9/Pv+/v7+/v7///////////////// + ///////////////////////////////+/v79/Pv///+wgU6HPgCQSwKOSQCPSgGMRgCMRwCPSgCOSQCQ + TAKGPADAmnH////9/Pr+/v7////////////////////////////////////////////////////+/v7+ + /v79/Pz+/v3u5NuPSwmNRwGOSQCPSgCPSwGPSgGPSQCPSgGLRACYWRn38u79/fz9/fz///7+/v7///// + ///////////////////////////////////////////////////+/v79/Pv////HpoKFOwCQTQOOSQCP + SgCPSgCOSQCQTAOGPQDVvaP////9/Pv+/v7+/v7///////////////////////////////////////// + ///////////////+/v7////9/f39/fz7+fefZSiIQACOSQCNRwCNRwCOSQCGPQCrd0H+///9/fz+/v7/ + ///////////////////////////////////////////////////////////////////+/v7+/v79/Pv/ + ///fzLmSTxWXWBWWVhSWVhSWVhSWVRrq3dH////9/Pz+/v7+/v7///////////////////////////// + ///////////////////////////////////////////+/v7+/v7////38+728e328e328e328Oz49fD/ + ///+/v7+/v7///////////////////////////////////////////////////////////////////// + ///////+/v7////////+/v3////////////////////////+/v3////////+/v7///////////////// + ///////////////////////////////////////////////////////////+/v7////+/v7+/v7+/v7+ + /v7+/v7+/v7+/v7+/v7////+/v7///////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAACgAAAAwAAAAYAAAAAEAGAAAAAAAgBwAAAAAAAAAAAAAAAAAAAAAAAD///////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + ///////////////////+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7////+/v7+/v7///////// + ///////////////////////////////////////////////////////////////////////////////+ + /v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7///////////////////////////// + /////////v7+/v7///////////////////////////////////////////////////////////////// + ///////////////////////////+/v7////////+/v7///////////////////////////////////// + ///38u38+vn8+vj8+vj8+vj8+vj8+vj8+vj7+ff////+/v3+/v7+/v7+/v7///////////////////// + ///////////////////////////////////////////////////////////////+/v7+/v7+/v7////7 + +ff8+vj8+vj8+vj8+vj8+vj8+vj7+ff59fK7kmmbXh+cXyCcXyCcXyCcXyCbXyCdYSGWVR3Fon3////9 + /Pz+/v7///////////////////////////////////////////////////////////////////////// + ///////+/v7+/v79/f39/fz///+1iFqXVx2cYCGcXyCcXyCcXyCcXyCbXiCcYCPn2Mv7+fencTqDOACM + RgCLRACLRACLRACLRACKQwCMRQLq3tL////9/Pz+/v7///////////////////////////////////// + ///////////////////////////////////////////+/v79/Pz////Zw6uGOwCMRQCLRACLRACLRACL + QwCNRwCCNQC4jmH////////r39SNRwWOSgOOSgGPSgGPSgGPSgGQTAOIPwCpdD3////9/fz9/f3////+ + /v7////////////////////////////////////////////////////////////////+/v7+/v79/f3+ + /f359vOZWxyLRACQSwKPSgGPSgGPSgGPSgGMRQKXWBn49PD+/fz8+vn////BnHWFOgCQTAGOSQCPSgCP + SgCOSQCPTAKFOwDVvaT////9/Pv+/v7///////////////////////////////////////////////// + ///////////////////////+/v79/Pv////BnXaEOgCQTAKOSQCPSgCPSgCOSQCPSwGGOwDVvKL////8 + +/r9/Pz9/f349fKZXB2KQwCPSgGOSQCOSQCOSQCPSgGLRAGXWBj38+/+/f39/f3+/v7+/v7///////// + /////////////////////////////////////////////////v7+/v79/fz+/v7r39SMRwWNSAGOSQCO + SQCOSgCOSQCPSwGHPgCpdT7////9/Pz+/f3+/v79/Pv////YwquGPACPSwGOSQCPSgCPSgCOSQCQTAGF + OgC+l23////9/fz+/v7////+/v7////////////////////////////////////////////////+/v7+ + ///9/f39/Pv///+qdkGHPQCPSwGOSQCPSgCPSgCOSQCOSAGLRALp3dH////9/Pv+/v7+/v7+/f39/fz/ + //+se0aHPgCQTAKOSQCPSgCPSgCOSQCOSQKLRALn2s3//v79/Pz+/v7///////////////////////// + ///////////////////+/v7+/v7////+/v78+vn////Rt5qGPACQSwKOSQCPSgCPSgCOSQCQTAKFOwC/ + mXL////9/Pz+/v7////////+/v79/fz///7s4deNSAeNSAGOSQCOSQCOSQCOSQCQSwKHPgCnczv+/v79 + /Pz9/f3+/v7+/v7////////////////////////////+/v7+/v7////////9/f38+/r////j08KNSQiN + RgGOSgCOSQCOSQCOSQCPSgCLRACYWhv48/D+/f39/f3+/v7+/v7+/v7////+/v79/Pz////Dn3qFOgCQ + TAGOSQCPSgCPSgCOSQCQSwGGPADSuJ3////9/Pz+/v7////////////////////////+/v7+/v7///// + ///+/v79/Pv////////cx7KPTA2LRQCPSgCOSQCPSgCPSgCOSQCPSwGGPADWvqb////9/Pz+/v7///// + ///////////+/v79/f3+/f359/SbXiCKQgCPSgGOSQCOSQCOSQCPSgCLRQCVVBT18Oz+/f39/fz+/v7+ + /v7////+/v7+/v7+/v7+/v7+/f39/Pz9/Pv////////49PC/mHSKQgCMRQCPSgCOSQCPSgCPSgCOSQCQ + TAKGPQCreEL////9/Pz9/f3+/v7+/v7////////////////+/v79/Pv////axK6FPACPSwKOSQCPSgCP + SgCOSQCQTAKEOQC8lGn////9/Pv+/v7////////////////////////////////////49fLQs5ibXyWH + PgCPSwKQTQOQSwKQTAOQTAKQTAKPSwOOSgOMRQPq3tP////9/Pz+/v7////////////////////+/v7/ + ///+/v39/Pz///+vf0uHPgCQSwGOSQCOSgCPSgCOSQCOSQGLRAHm18n////9/fz+/v7////+/v36+Pb5 + 9fLz7ejo2s3RtpuwgFCNRwN9LQCCNQCHPgCGOwCFOwCGOwCGOwCGOwCFOwCGPAB/MADCnnj////9/Pz+ + /v7////+/v7////////////////////+/v7+/v79/fz///7v5t6PSgiNRwGOSQCPSgCOSQCOSQCPSwGJ + QAClbjX+/f39/f39/f3//v769/XfzbjZw67QtJrEoX67kmq6kGa/mXLDn3rEoHzEoHvEoHvEoHvEoHvE + oHvEoHvDoHvDnnvEoH369/X+/v79/f3+/v7+/v7////////////////////////////////+/v79/Pv/ + ///GpICFOgCQTAKOSQCPSgCPSgCOSQCQTAKGPADQtJf////9/Pz+/v7///////////////////////// + ///////////////////////////////////////////////////////+/v7+//////////////////// + ///////////////////+/v7+/v79/f3+/f36+PadYiSKQwCPSgCOSQCOSQCOSQCPSgGMRgGUVBP07uj+ + /v39/fz+/v7+/v7+/v3+/f39/fz9/Pv7+vj+/f3cyLSXVyGcYCKcXyCcXyCcXyCcXyCdYSKUUxzDn3z9 + /Pz9/Pz9/f3////+/v7////////////////////////////////////////+/v79/Pz////cx7KHPwCP + SgGOSQCPSgCPSgCOSQCQTAKGPAC5kGP////9/Pv+/v7//v7+/v7+/v7+/v79/f39/fz7+feeYyaGPACL + RQCLRACLRACLRACLRACIQACQTAnw59/+/v79/f3+/v7+/v7///////////////////////////////// + ///////+/v7///79/f39/Pv///+xglCGPACQSwGOSQCPSgCOSQCOSQCOSQGKQgDk1MT////9/fz+/v7/ + ///////+/v79/Pz////HpoOFOgCQTAKOSgCPSgGPSgGOSgGQTAKFOwDPs5b////9/Pv+/v7///////// + ///////////////////////////////////////////+/v/+/v79/Pz+/v7w59+PSgiMRgGOSgCPSgCP + SgCOSQCPSwGIQACiajD+/f39/f39/f3///7+/v79/fz+/v7w6OCPSgmNRwGOSQCOSQCOSQCOSQCPSwKI + PwCiaS79/fz9/fz9/f3+/v7+/v7///////////////////////////////////////////////////7/ + ///+/v79/Pv////Ip4WFOgCQTAKOSQCPSgCPSgCOSQCQTAKEOQDOsZP////9/Pv+/v7+/v79/Pv///+x + glGFOwCQTAKOSQCPSgCPSgCOSQCOSgKIQADj08L////9/Pz+/v7///////////////////////////// + ///////////////////////////////+/v7+/v79/f39/f38+vmeZCeJQQCPSwGOSQCOSQCOSQCPSgGM + RQGRTw7z7ef+/v39/f39/Pz////fzLiHPQCPSgGOSQCPSgCPSgCOSQCQTAGFOwC4jF/////9/fz+/v7+ + /v7+/v7////////////////////////////////////////////////////////////////+/v79/fz/ + ///fzLqHPgCOSgGOSQCPSgCPSgCOSQCQTAGFPAC3jF7////9/Pz+/f38+vifZCiJQQCPSwGOSQCOSQCP + SgCOSgGLRQGTURDz7ef+/v39/f3+/v7///////////////////////////////////////////////// + ///////////////////+/v7////+/v79/Pv///+zhVWFOwCQTAKOSQCPSgCPSgCOSQCOSgKJQQDi0cH+ + /v7////JqYeFOgCQTAKOSQCPSgCPSgCOSQCQTAKEOgDNsJH////9/Pv+/v7////+/v7///////////// + ///////////////////////////////////////////////////////+/v7+/v79/fz+/v3w6eGRTQyN + RwGOSQCOSQCOSQCOSQCPSwKJQQChaC7////x6eKRTgyNRgGPSgCPSgCOSQCOSQCPSwGJQQCiajD8+/r9 + /fz9/f3+/v7+/v7///////////////////////////////////////////////////////////////// + ///////////////+/v79/Pz////LrIuFPACQTAGOSQCPSgCPSgCOSQCQSwGFOwDPspW5j2SGPACQSwGO + SQCPSgCPSgCOSQCOSgGJQgDj0sL////9/Pz+/v7///////////////////////////////////////// + ///////////////////////////////////////////+/v7+/v79/f39/fz9/PygZyuJQACPSwGOSQCO + SQCOSQCOSQCOSACOSACNSACOSQCOSQCPSgCPSgCOSQCQTAKFOwC3i13////9/Pv+/v7////+/v7///// + //////////////////////////////////////////////////////////////////////////////// + ///+/v79/Pv////hz72JQACPSwKOSQCPSgCPSgCOSQCPSgCOSQCOSQCPSgCOSQCOSQCOSQCOSQCMRgGS + UA/y6+X+/v39/fz+/v7+/v7///////////////////////////////////////////////////////// + ///////////////////////////////+/v7////+/v79/fz///+1iVuGPACQSwGOSQCPSgCPSgCOSQCP + SgCPSgCOSQCPSgCPSgCOSQCQTAGFOgDNrpD////9/Pz+/v7///////////////////////////////// + ///////////////////////////////////////////////////////////////////+/v7+/v79/f3+ + /v3y6+SSUA6MRQGOSgCOSQCOSQCPSgCPSgCPSgCPSgCOSQCOSQCPSwGIQAChaS78+/r9/Pz9/f3+/v7+ + /v7///////////////////////////////////////////////////////////////////////////// + ///////////////////////////+/v79/Pv////NsJGFOwCQSwGOSQCPSgCPSgCPSgCPSgCOSQCPSgCO + SQCOSQGJQQDi0cD////9/Pv+/v7///////////////////////////////////////////////////// + ///////////////////////////////////////////////////////+/v7+/v79/f39/Pz8+/qiai+J + QACRTQSPSwKQSwKQSwKQSwKQSwKPSwKRTgSGPAC2iVr////9/Pv+/f3////+/v7///////////////// + //////////////////////////////////////////////////////////////////////////////// + ///////////////+/v79/Pv////j08KGPQCHPQCHPgCIPgCIPgCIPgCIPgCHPwCFOgCRTgvy6uP+/f39 + /fz+/v7+/v7///////////////////////////////////////////////////////////////////// + ///////////////////////////////////////////+/v7////+/v79/f3////JqIeufFOzhVezhFaz + hFazhFayhFazhVete1TWvqb////9/fz+/v7///////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + ///+/v7+/v7+/v3////////////////////////////////////////+/v3+/v7+/v7+/v7///////// + //////////////////////////////////////////////////////////////////////////////// + ///////////////////////////////////////////+/v7+/f3+/f3+/fz+/fz+/fz+/fz+/fz+/fz+ + /f3+/f3///////////////////////////////////////////////////////////////////////// + ///////////////////////////////////////////////////////////////////+/v7+/v7+/v7+ + /v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7///////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAoAAAAgAAAAAABAAABABgAAAAAAADIAAAAAAAAAAAAAAAA + AAAAAAAA//////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////v7+/////v7+/v7+//////////////////////////////////////////////////////////// + /////////////////////////////////////////fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7 + /fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/v39/v7+/v7+/v7+//////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////v7+/////v7+/////v7+/f38/fz7/fz7/fz7/fz7/fz7/fz7 + /fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/v7+//////// + //////////////////////////////////////////////////////////////////////////////// + /////////////v7+/////v7+/v7+/v7+//////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////v7+/////v7+ + /f39//////////////////////////////////////////////////////////////////////////// + ////////////////////////2MCn3Maw3Maw3Maw3Mew3Mew3Mew3Mew3Mew3Mew3Mew3Mew3Mew3Mew + 3Mew3Mew3Mew3Mew3Mew3Mew3Mew3Maw3Mex2cOs8uvk/v7+/f39/v7+/v7+//////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////v7+/v7+/v7+/f39////4tHA2sSs3Mex3Mew3Mew3Mew3Mew3Mew3Mew3Mew3Mew + 3Mew3Mew3Mew3Mew3Mew3Mew3Mew3Mew3Mew3Mex3Mew3Mex2cKr9vHtqXQ9ikIAiUEAiUEAikIAikIA + ikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAiUEAikMAgzgAq3hH/v39 + /fz8/v79/v7+/v7+//////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////v7+/v7+/v7+/v7+/fz8////49PCiUIBiUEAiUEA + ikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAiUIAiUEAi0MAgzkA + nmMq+vj1/v39sYJUhz4AkU0Ej0oBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sB + j0sBj0sBj0sBj0oBj0oBkEwDhz0A1buh/////fz7/v7+/v7+/v7+/v7+//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////v7+ + /v7+/v39/Pz8/Pr5pGw1iEAAkE0Dj0oBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sB + j0sBj0sBj0sBj0sBj0sBj0sBj0sDjEYG49LC////////7OLWkU4PjEYBj0oBjkkAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAjkkAj0sBikQAmFod9fDq/v39/v39/v7+ + /v7+//////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////7+/v7+/v7+/v7+/Pv6////za+QhjwAkEwCjkkAjkkAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAkEwChjsAuo9l////+/n4+ff1//// + x6aFhDsAkEwCjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + jkkAjkkAkEwChTwAv5dw/////Pz7/v7+/v7+/v7+//////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////v7+/v7+/f38/v798evik1IV + i0UBj0oBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkoA + j0oBi0QBlVQX8+zl/f39/fz8/fz8/fz8+vbzoGYuiEAAj0sBjkkAjkkAjkoAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAj0oAjkoAjkkAjUkBjEgG6NvN/////fz8/v7+/v7+/v7+/v7+ + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////7+/f7+/v7+/fz7////topehjwAkEwCjkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAj0sChTwA0LWY/////Pv7/v7+/v///Pz7////3sq3iEABjkoC + jkkAjkkAj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkAkEsC + hz8Ap3I//fz7/fz8/v79/v7+/v7+//////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////v7+/v7+/v39/v///Pz7////3867iEAAjkoCjkkAjkkAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjUkAkEsChz8ApnE5/fz8/Pz7 + /v7+/v7+/v7+/v7+/Pv7////tIZYhjwAkEwBjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAjkkAjkgAj0sChTwA0rec/////Pz7/v7+/v7+/v7+//////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////v7+/v7+/v79/fz8 + +/r4oWgwiEAAj0sBjkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kA + j0kAjkkAjkoAjkkBikQF5dbG/////fz7/v7+/v7+/v7+/v7+/fz8/v7+8OffkU8QjEYBj0oAjkkAjkoA + jkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oAjkkAj0oBikMAllcb9O/p + /v39/f38/v7+/v7+/v7+//////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////v7+/v7+/v7+/Pz7////yquLhTsAj0wCjkgAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAkEwChToAu5Nq/////Pz7//7+/v7+/v7+/v7+/v7+ + ///+/Pz7////y6yNhTsAkEwCjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAjkkAjkkAjkkAkEwBhTsAu5Rr/////Pz7/v7+/v7+/v7+/v7+//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////v7+/v7+/fz8/v7+7+bckU4PjEYBjkkBjkkA + j0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0kAjUkAj0oBi0QBllcb + 9e/p/v39/f38/v7+/v7+/////////v7+/v7+/v79/fz8+vj1oWgwiUEAj0sBjkgAjkkAjkkAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkCi0QF5NXG/////fz8/v7+ + /v7+//////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////v7+//7+/f39 + /v7+/fz7////tIdZhjwAkEwCjkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAjkkAjkkAj0sChj0A0rec/////Pz7/v7+/v7+/////v7+/v7+/////v7+/v7+/Pz7//// + 38y4ikIDj0oCjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkA + jkkAjkkAj0sBhz8Ap3I8/Pv5/fz8/v39/v79/v7+//////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////v7+/////v7+/v7+/Pz7////3sm2iUIBj0oBjkkAjkkAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjUkAkEsCiD8AqHM+/fz7/Pz8/v7+/v7+/v7+ + /v7+/////////v7+/v7+/v7+/v7+/Pv7////topehTwAkEwCjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkgAkEsChjwA0bWa/////Pv6/v7+/f39/////v7+ + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////v7+/v7+/f39/fz8+vj2n2UriUEA + j0sBjkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkoA + jkgBjEYG5tjJ/v7+/f37/v7+/v7+/////////////////////////v7+/v7+/f39/v398uriklETi0YB + j0oAjUkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkAj0oB + i0UAlVYZ8+3m/f79/f38/v7+/v7+//////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////v7+ + /v7+/v7+/v7+/Pv6////yKeFhTsAkEwCjkgAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAjkkAjkkAkEwChjwAvpZv/////Pz7/v/+/v7+/v7+/v7+//////////////// + /v7+/v7+/v7+/v7+/Pz7////za6QhTwAkEwCjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAkEwChTwAuZBm/////Pv6/v7+/v7+/v7+/v7+//////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////v79/v7+/fz7/v7+7ePYkU4QjEcBjkkBjkkAj0oAjkkAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkAj0oBi0QBmFof9e/p/f39/v39 + /v7+/v7+/////////////////////////////////v7+/v7+/v7+/fz8+/n3o2s1iUEAkEsBjkkAjkkA + jkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oAjkkAjkkAjkkCikQD5NPD + /////Pz7/v7+/v7+//////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////v7+/v7+/v79/Pv7/v/+ + sIFShjwAkEwCjkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + jkkAjkkAj0sChj0A1Lqg/////Pz7/v/+/v7+/////v7+/////////////////////////v7+/////v7+ + /v7+/fz7////4tHBikMEjkkCjkoAjkkAj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAjkkAjkkAjkkAj0sBiEAApW43/Pv5/fz7/v39/v7+/v7+//////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////v7+/v7+/////Pv6////2sawiD8Aj0sBjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAkEsChz8AqnhE/v79/Pz7/v7+/v7+/v7+/v7+//////// + /////////////////////////v7+/v7+/v7+/v7//fz7////uI1hhj0AkEwCjkkAjkkAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkgAj0wChj0AzrCT/////Pv6/v7+ + /f39/////v7+//////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////v7+/v7+/v7+/f38/f389vLtm18jikMAj0oBjkkAjkkA + jkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkAjkoAjUgBjUgH6NzO + /v7+/fz8/v/+/v7+/////////////////////////////////////////////////v7+/v7+/f38/v39 + 8uvjlFUWi0UBj0oBjUkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkA + j0oAjkkAj0oBjEYBlFMW8enh/v79/fz7/v7+/v7+//////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////v7+/v7//v7+//7+/f39 + /Pv6////t4thhjwAj0wBjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAjkkAjkkAkEwChTsAwJp0/////fz6/v7+/v7+/v7+/v7+//////////////////////////// + /////////////v7+/////v7+/v7//Pv7////zrGUhjwAj0wCjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkAkEwChjwAt4xg/////Pv7/v7+/v7+/v7+//// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////v7+/v7//v3+/Pr6////0bWYhj0Aj0sCjkkAjkkAj0oAjkkAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAjkkAjkkAj0sBi0MAmVsg9vHs/v39/f39/v7+/v7+//// + /////////////////////////////////////////////////v7+/v7+/v7+/v7+/f38/Pr4pW85iD8A + kEsCjUkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkA + jkoCikIC4tHA/////Pv7/v7+/v7+/v7+//////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////v7+/v7+/v7+/v7++/r5////38y4i0UHjUgBjkoA + jkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAjkkAjkkAj0wC + hz4A1r6m/////Pz7/v7+/v7+/////v7+//////////////////////////////////////////////// + /////////v7+/v7+/fz8////49LCjEYFjkkCjkoAjkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkAj0sBiEAAomoy+/n2/fz7/v39/v7+/v7+//////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////v7+/////v7+/v7+/v7+ + /v7++/r5////5NTCj0wQi0UAj0oAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAjkkAjkkAkEwChz8ArHpI/v7+/fz7/f79/v7+/v7+/v7+//////////////////// + /////////////////////////////////////v7+/////v7+/v7+/Pz7////upBnhTwAkEwCjUgAjkkA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkgAj0wChToAyqyM + /////Pv6/v7+/v7+/////v7+//////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////v7+/v7+/////v7+/v7+/v7+/f39/Pr5////4c+9kE0SikQAj0sBjkkAjkkAj0oAjkkAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjUkAj0oAjUgCjkoJ6d3R/v7+/f38/v7+ + /v7+/////////////////////////////////////////////////////////////////////v7+/v7+ + /v7+/v39/f399O3nl1gci0UBj0oBjkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAjkkAj0oAjkkAj0oAi0UBk1ET8Ofe/v39/fz7/v7+/v7+/////v7+//////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////v7+/////////v7+//7+/v7+/Pv6/f38////1LuijkkLi0QA + j0sBjkkAjkkAj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkA + jkkAkEwChjwAwp14/////Pv6/v7//v7+/////v7+//////////////////////////////////////// + /////////////////////////////////v7+/v7+/Pv6////0baahj4AkEwCjkkAjkkAj0oAj0kAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkAkEwBhTwAtYlc/////Pv6/v7+ + /v7+/v7+//////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////v7+/v7+/////v7+/v7+/v7+ + /v79+/v5////+/n1wJp1iEEAjUYAj0wBjkkAjkkAj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkAj0sBikMAnWAn9/Lu/fz7/f39/v7+/v7+/v7+//////////// + /////////////////////////////////////////////////////////////v7+/v7+/v7+/v7+/Pz7 + /Pv5p3I9iD4AkEwCjkkAjkkAjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjkkAjkkAj0oCiUEA3826/////Pv6/v7+/v7+/v7+/v7+//////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /v7+/v7+/////////v7+/v7+/v79/Pv6/f3+////6dzPpW89hjwAj0oBj0oBjkkAjkkAj0oAjkkAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oAjkkAjkkAj0sChz4A2MKq//// + /Pv6/v7+/v7+/v7+//////////////////////////////////////////////////////////////// + /////////////////////v7+/v7+/fz7////5dbGi0UGjkkCjkoAjkkAj0kAjkkAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkAj0sBiEAAoGct+vj1/fz7/v39/v7+/v7+//// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////v7+/v7+/v7+/////////v7+/v7+/f39/fz7/fz8////+vj0xaOCjkkJhz8A + j0sBj0oAjkkAjkkAj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjkkAjkkAkEwChz0Arn1L/////Pv6/v7+/v7+/v7+//////////////////////////////////// + /////////////////////////////////////////////////v7+/////v39/v/+/Pv6////vZZuhjsA + kEwDjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjUgA + j0wChDoAyKiI/////Pv6/v7+/v7+/v7+/v7+//////////////////////////////////////////// + /////////////////////////////////////////v7+/////v7+///////////+/v7+/v7+/v79/Pv6 + /f38////////28ayn2cyhTwAjEcAj0sCjkkAj0oAj0oAj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjUkAj0oAjUcCjkoK69/U/v7//fz7/v7+/v7+/////v7+ + //////////////////////////////////////////////////////////////////////////////// + /////v7+/v7+/v7+/f39/f399fDrl1kci0UBj0sBjUkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAjkkAj0oAjkkAjkoAjEUAkU4P7+bc/v79/fz7/v7+/v7+/////v7+//////// + /////////////////////////////////////////////////////////v7+/////v7+/v7+/////v7+ + /////v7+/v7+/v7+/fz8/Pv6/v7+////////4M68qnhHiD8AiUEAj0sCj0oAjkkAjkkAjkkAjkkAjkkA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAkE0DhjwA + xaJ//////Pv7/////v7+/v7+/v7+//////////////////////////////////////////////////// + /////////////////////////////////////////v7+/v7+/v7+/Pv6////07qghz4Aj0wDjkkAjkkA + j0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkAkEwBhjwAsoRU + /v///Pv6/v7+/v7+/v7+/////////////////////////////v7+/////v7+/v7+/v7+/v7+/v7+/v7+ + /v7+/v7+///+/v7+/v7+/////v7+/v7+/v79/fz8/Pv6/fz8////////+/n32sSvqnZHikIAhz8AjkoA + j0oBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAjkkAjkkAjUkAj0sCikMAnmMp+PXx/f38/f39/v7+/v7+//////////////////////////// + /////////////////////////////////////////////////////////////////////////////v7+ + /v7+/v7+/Pz7/f38qXVBiEAAkEwCjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAjkkAjkkAj0oBiD8A3cm0/////Pv6/////f39/v7+/v7+//////////////////// + /////////////////////////////v7+/////v7+/v7+/v7+/v39/fz7/Pv6/fz7/f7+//////////// + 7OHWyaiHn2UviD8Ahz4AjkkAj0sCjkkAjkkAjkoAjkoAjkkAjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAj0wDiEAA28Wv/////Pz7/v/+/v7+ + /////v7+//////////////////////////////////////////////////////////////////////// + /////////////////////////v7+/////v7+/v7+/fz7/v//6NrNjkkJjkkCj0kAjkkAjkkAjkkAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkAj0oBiUIAn2Ur+fb0/fz7/f39 + /v7+/v7+/////////////////////////v7+/v7+/v7+/v7+/f38/fv6/fz7/fz6/Pv6/fz8/fz8/v7/ + /////////////////Pz66dzPza6Qq3dGkE0Mhj0AikMAj0sCj0sCj0oAjkkAjkoAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkA + kEwChz4AsIJS/v7//Pv7/v7+/v7+/v7+/v7+//////////////////////////////////////////// + /////////////////////////////////////////////////////////////v7+/v7+/v7+/////Pv6 + ////v5lzhTwAkEwCjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjkkAjkgAkEwBhDoAxqSC/////Pv6/v7+/v79/v7+/v7+/////////////////v7+/////v7+/v7+ + /////////////////////////////v788+3l5NTE07icuY5moWgvj0sIhz4AiUIAj0oAkE0FkU0Dj0sC + kEsBkEsBkEsBkEsBkEsBkEsBkEsBkEsBkEsBkEsBkEsBkEsBkEsBkEsBkEsBkEsBkEsBkEsBkEsBkEsB + kEsBkEsBkEsBkEsBkEsBkEsBj0sBkEwCjEgBkE4O7eTa/v7+/fz8/v7+/v7+//////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////v7+/v7+/f38/f389vHsmVsgikMBj0oBjkkAjkkAjkkAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oAjkkAjkkAjEYBkEwN7ePY/v7+/fz7/v7+/f39//// + /v7+/////////////v7+/v7+/f38/v//28ayxqSAy6uKxKF6vJNssoReqHNEmVwlkEwKhjwAgTQAgDQA + hDoAiEAAikMAiUIAiEEAiEAAiEAAiEAAiEAAiEAAiEAAiEAAiEAAiEAAiEAAiEAAiEAAiEAAiEAAiEAA + iEAAiEAAiEAAiEAAiEAAiEAAiEAAiEAAiEAAiEAAiEAAiEAAiEAAiEAAiEAAiUIAgjYAx6WD/////Pv6 + /v7+/v7+/////v7+//////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////v7+/////v7+/v7+/Pv7////1r2khz4A + j0sCjkkAjUkAj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkA + kEwBhjwAsYFR/////fz7/v79/v7+/v7+/////////////////v7+/v7+/v39/v7+4M27za+O0bWW0LOU + z7OV0LOZ0bac07mg1ryk2MCo2cKr2cKs2MGq2MCp18Co18Co18Co18Co18Co18Co18Co18Co18Co18Co + 18Co18Co18Co18Co18Co18Co18Co18Co18Co18Co18Co18Co18Co18Co18Co18Co18Co18Co18Co18Co + 18Co18Co2MCo1r+n2MGq+vf0/v39/v79/v7+/v7+/v7+//////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////v7+/v7+/v7+/v7+/Pv6/v39rHpIhz4Aj0wBjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAj0oBiUEA3May/////Pv6/////f39/v7+/v7+//////// + /v7+/////v7+/v7+//////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////v7//v7+/////v7+//////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////v7+/v7+/fz7/v7+6d3RjUkJjUgBj0oAjkkA + jkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkAj0oBikIAnWIn + +PXx/fz8/f39///+/v7+/////////////////v7+/////////v39/fz7/fz7/fz7/fz7/fz7/fz7/fz7 + /fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz8/fz7+/n3+/n3+/n3+/n3+/n3+/n3 + +/n3+/n3+/n3+/n3+/n3+/n3+/n3+/n3+/n3+/n3+/n3+/n3+/n3+/n3+/n3+/n3+/n3/Pr4/fz7/fz8 + /fz8/v7+/////v7+/////v7+//////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////v7+/v7+ + /v7+/v7+/Pv7////wZx2hDsAkEwCjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAjkkAjkkAkE0ChjwAxKF8/////Pv6/v7+/v7+/v7+/v7+/////v7+/////v7+/v7+ + /v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+ + /v7+//////////////////////////////////////////////////////////////////////////// + /////////////////////////////v7+/v7+/v///v7+/////v7+//////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////v7+/v7+/f39/f389/Ltm14iiUIAj0oBjkkAjkkAjkkAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oAjkkAjkoAjUgCkE0N7OHW/v7+/f38 + /v7+/v7+/////v7+//////////////////////////////////////////////////////////////// + /////////////v7+/////v7+/v7+/f79/f39+vj20LSYzrCSz7GUzrGTz7GTz7GTz7GTz7GTz7GTz7GT + z7GTz7GTz7GTz7GTz7GTz7GTz7GTz7GTz7GTz7GTzrGTzrGTza+S0LSY+vj1/v7+/v79/v7+//////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////v7+/////v7+/v7//Pz7 + ////2cKriD8Aj0sCjkkAjkkAj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + jkkAjkkAjkkAkEwChz8Ar35O/v7+/fz8/v7+/v7+/v7+//////////////////////////////////// + /////////////////////////////////////////////////v7+/v7+/v7+/fz7////yaiIgDMAhz0A + hTsAhTsAhTsAhTsAhTsAhTsAhTsAhTsAhTsAhTsAhTsAhTsAhTsAhTsAhTsAhTsAhjsAhTsAhDsAhz4A + fS0AtIdb/f38/Pz8///+/v7+//////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////v7+/v7+/v7+/v7+/fz7/v//rn1Khz0Aj0wBjkkAjkkAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAj0sCiEAA2MGq/////Pz7/v///v7+/v7+ + /v7+/////////////////////////////////////////////////////////////////////v7+/v7+ + /v7+/v7+/f38/v797+bdkU8PjUkDkU4Fj0wDkEwDkE0DkE0DkE0DkE0DkE0DkE0DkE0DkE0DkE0DkE0D + kE0DkE0DkE0DkE0DkEwDkE0DkU4FjEcFmVwe9/Pu/v7+/v38/v7+/v7+//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////v7+/v7//fz7/v7+69/UjkoL + jUgBj0oAjkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkA + j0sCikMAm18j+PXw/f39/f39/v7+/v7+/////v7+//////////////////////////////////////// + /////////////////////////////v7+/v7+/v7+/fz7////tIZYhj0AkEwCjkgAjkkAj0oAjkkAjkkA + jkkAjkkAjkkAjkkAjkkAjkkAjkkAjkkAjkkAjkkAjkkAj0oAjkkAjkkAj0sChj0A0rec/////Pv7/v7+ + /v7+//////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////v7+/v7+/v7+/////Pv6////xKF9hTsAkEwCjkkAjkkAj0oAj0kAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAkEwChTsAw596/////Pz7/v7+/v7+/v7+//////////// + /////////////////////////////////////////////////////v7+/v7+/v7+/v7+/fz7////3sq3 + iUIAjkoCj0kAjkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAjkkA + jkkAj0wBiD8AqHM+/fz7/Pz7/v7+/v7+/v7+/v7+//////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////v7+/v3+/v39/fz8+PXxnWIpiUIAj0sBjkkA + jkkAjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkAjkoAjUgBjkoK + 6t7S/v7+/fz8/v7+/v7+/v7+/v7+//////////////////////////////////////////////////// + /////////v7+/v7+/f39/f38+vj1oGgviUEAj0sCjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAjkkAj0kAjkkAj0kAjkgCjEYH5tjJ/////fz7/v7+/v7+//////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////v7+//// + /v7+/v7+/Pv6////2cStiEAAj0oCjkkAjkkAj0kAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAjkkAjkgAkEwChz4ArHpH/f38/fz8/v7+/v7+/v7+//////////////////////// + /////////////////////////////////v7+/v7+/v7+/v7+/fz8////y6yNhTwAkEwCjkkAjkkAj0kA + jkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAkEwChTwAvZRs//// + /Pv7/////v7+/v7+/v7+//////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////v7+/v7+/v7+/v7+/Pv7/v7+r4FQhz0AkEwBjkkAjkkAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkgAj0kAkEsChz4A17+n/////Pz7 + /v7+/v7+/v7+/v7+/////////////////////////////////////////////////////v7+/v7+/f38 + /v798enfklISjEYBj0oBjkkAjkkAjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + jkkAjkkAjkkAj0oBi0QAl1gb9O/p/fz8/v38/v7+/v7+//////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////v7+/v7+/fz8 + /v7+7ePakE0NjEcBj0oAjkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjkkAjkkAj0sCikMBml0i9/Pu/f39/f39/v7+/v7+//////////////////////////////////// + /////////////v7+/v7+/v7+/v7+/Pz7////toldhj0AkEwCjkkAjkkAj0oAj0kAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAj0oAjUkAjkkAj0sChTwA0baa/////Pv7/v7+/v7+/////v7+ + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////v7+/v7+/v7+//7+/Pv6////x6SDhTsAkEwCjkkAjkkAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oAjUgAjkkAkEwChTwAwZx1/////Pv7//7+/f39/v7+ + /v7+/////////////////////////////////////v7+/////v39/v7+/fz7////4M67ikICj0oCjkoA + jkgAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAjkkAjkkAj0sBiD8A + pnA8/Pv6/fz7/v7+/v7+/v7+/v7+//////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////v7+/v7+/v79/fz8+fbznmMq + iEEAj0sBj0kAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkA + jkoAjUkCjUgI59rM/////fz8//7+/f39/////v7+/////////////////////////////////////v7+ + /v7+/v39/f38+vj1oWgwiUEAj0sBjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAjkkAj0kAjkkAj0kAjkkCi0QG5dXF/////fz7/v7//v7+//////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////v7+/////v7+/v///Pz7////3cm1iEAAjkoCjkkAjUgAj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAkEwChz8AqndD/fz7/fz7/v7+/v7+/v7+//////////// + /////////////////////v7+/v7+/v79/v7+/Pz7////y6uMhTwAkEwCjkkAjkkAjkoAjkkAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAkEwChTsAu5Fn/////Pz7/v7//v7+ + //7+/v7+//////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////v7+/v7+/v7+/v7+/Pz7////s4RVhjwAkEwCjkgA + jkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkAjkkAj0wChz4A + 1bui/////Pz7/v7+/f3+/v7+/v7+/////////////////////v7+/////f39/v7+/f38/v398Ojfk1ES + jUYBj0oBjkkAjkkAj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkA + j0oBi0UBllYa8+zl/fz9/v38/v7+/v7+/v////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /v7+/v7//f38/v797+XckE0OjEYAj0oAjUgAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAjkkAjkkAj0sBi0QBmVoe9vHr/f39/f39///+/f39/////v7+//////////////// + /////v7+/v7+/v7+/Pz7////tYldhj0AkEwCjkkAjkkAj0oAjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAjkkAj0oAjUkAjkkAj0wChTsA0bWZ/////Pv6/v7+/v7+/v7+//7+//////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////v7+/v7+/v7+/v7+/Pz7////yKiGhDoAkEwDjkkAjkkAj0oAjkkA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oAjkgAjkkAkEwChjwAv5dw/////Pv6 + /v7+/v7+/v7+/////////////////v7+/v7+/v7+///+/fz7////4dC/ikMDj0oCjkkAjkkAjkkAjkkA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAj0wCiD8ApW85/Pv5/fz7 + /v79/v7+/v7+//////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////v7+/v7+/v39 + /fz8+/j1oGYtiUEAj0sCjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + jkkAjkkAjkkAjkoAjkkCjEcG5tjK/////fv7//7+/v7+/v7+//7+/////////////v79/v7+/f39/fz8 + +/r4o2oziUAAj0sBjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkA + jkkAjkkAj0oAjkkCi0UF5NTE/////fz8/v7+/v7+/////v7+//////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////v7+/////v7+/v7+/fz7////3su4iUEBj0sCjkkAjkkAjkkAjkkAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjUkAkEwChz8AqHRA/f38/fz7/f39/v7+/v7+ + /v///////v7+/v7+/v7+/v/+/Pv7////za+RhTwAkEwCjkkAjkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAkE0ChjwAu5Jo/////Pz7/v7+/v7+/v7+/v7+//// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////v7+/v7+/v7+/v7+/fz7////tIdZ + hjwAkEwCjkgAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkA + jkkAj0wChjwA0rec/////Pv6/v7+/f7+//7+/v7+/////v7+/v7+/f38/v7+8erilFITjEYBj0oBjkkA + jkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkAj0oBi0UAl1YZ + 8+3m/f39/f39/v7+/v7+//////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////v7+/v7+/fz8/v398Offk1ISjEcBj0oAjUkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAj0sBi0QBl1ga9O7n/f38/f39/v7+/v7+/////v7+/v7+ + /v7+/Pv6////t4tfhjwAkEwCjkkAjkkAj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjkkAj0oAjkkAjkkAkEwChz4A0LWZ/////Pz7/v7//v7+/////v7+//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////v7+/////v7+/v7+/Pv7////zK2Ohj0AkEwDjkkA + jkkAj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oAjkkAjkgAkEwChjwA + u5Nq/////Pv6/v7+/v7+/v7+/v7+/v7+/Pz7////4dC+ikMCj0oCjkkAjkkAjkkAjkkAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAj0wCiEAAp3E7/Pv5/fz7/v79/v7//v7+ + /v7+//////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////v7+ + /v7+/////v7+/fz7+/j2o2sziUEAj0sBjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAjkkAjkkAjkkAjkoAjkkCjEcG5dbH/////Pz7/v7+/v7+/v7+/v39/fz8+/n3pG00iUEA + j0sBjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkAj0kA + jkkCikQE49PC/v7//fz8/v7+/v7+//////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////v7+/v7+/fz7////4c+9iUICj0oCj0kAjkkAjkkAjkkA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAj0sBiEAAp3E7/Pv5/fz8 + /v79/v7+/v7+/Pv6////zK+Qhj0AkEwCjkkAjkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAjkkAjkgAkE0ChTwAuY9j/////Pv6/v7+/v7+/v7+/v7+//////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////v7+/v7+/v7+/v7+ + /Pv6////t4xghjwAkEwCjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + jkkAjkkAjkkAjkkAkEwChj4Az7OX/////Pv7/v7+/f38/f398erilFQVi0YBj0oBjkkAjkkAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkAj0oBi0UBlVUW8+zl/v39/f39 + /v7+/v7+//////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////v7+/v7+/f38/v7+8+zllFQVi0UBj0oAjkkAjkkAjkkAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkgAj0sBi0UAlVUX8uzk/v39/fz8/Pz7//// + t4xhhjwAkEwCjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAj0oA + jkgAjkkAj0wChjwA0LOX/////fz7/////v7+/v7+//////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////v7+/v7+/v///fv7////zrGU + hjwAj0wCjkkAjUkAj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkA + jkkAkEwChTwAuI5k////+/r5////4tHAiUIDjkoCj0oAjUkAjkoAjkkAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAjkoAjkkAjkkAj0wCiUAApW84/Pv6/f38/v7+/////v7+//////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////v7+/v///v7+/f38+/r4pG02iEAAj0wBjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjUkAj0kAjkoCikMD4tC//v79+vj1pG02hz8AkEsBjkkAjkkA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0kAjkkAj0kAjkkCi0QF49TD + /////fz8//7//v7+//////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////v7+/////fz8////49TEi0UFjkkCj0oA + jkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAj0sBiEAA + oWkx////zrGThTsAj0sCjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAjkkAjkgAkEwChj0AupBl/////fz8/v///v7+/v7+/v7+//////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////v7+ + /v7+/v7+/v/+/fz8////uZBkhj0AkE0CjkgAjUkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0kAjkkAjkkAj0sAiEAAwZ12m18iikIAj0oBjkkAjkkAjkkAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjUkAj0oAjEYBlVYX8uzl/v79/v39/v7+/v7+//// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////v7+/v7+/f39/v398+zmllYXjEYBj0oBjkkAjkkAjkkA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAjkkAjkkAjkkAjkkAikMAjEYAjkkA + jkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAj0oAjkgAjkkAkEwC + hj0Az7SX/////fz7//7+/v7+//////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////v7+//7+ + /fz7////0bWZhz0Aj0wCjkkAjUgAj0oAj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAjkkAjkkAjkkAj0oBjkoAjkkAjkkAj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAjkoAjkkAjkkAj0wCiEAApW86/Pv5/fz8/v7+//7+/v7+//7+//////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////v7+/v7+//7+/v7+/fz8/fz7p3I+iD8Aj0wCjkkAjkkAjkoAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0kAjkkAjkkAj0kCikQF49PD/////Pz8//7+ + /v7+//////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////v7+//7+/fz8////5dbH + jEYHjkoCj0oAjkkAj0kAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oA + jkkAjkkAjkkAj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkA + jkkAkEwChj0AuI1i/////fv8/v/+/v7+/v7+/v7+//////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////v7+/v7+/v7+/v///fz7////vJRqhjwAkEwCjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAjkkAjkkAjUkAj0oBjEUBlFQW8uri/v7+/f39/v7+/v7+//////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////v7+/v7+/f39/f399O7ol1kci0QBj0sB + jkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAj0oAjUgAjkkAj0wChj0AzbCT//// + /Pz8/v7//v7+//////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////v7+/v7+/Pz7////07mfhj0Aj0wCjkkAjUgAj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + jkoAjkkAjkkAkEwCiEAAomw0/Pr4/f39/v7+/v7+/////v7+//////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////v7+/////v7+/v7+/fz8/fz8qHNAhz8AkEwCjkkAjkkAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0kAjkkAj0kAjkkCiUIC4dC+/////fz7/v7+/v7+//////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////v7+/v7+ + /fz8////5tjJi0YFjUgCj0oAjkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkgAkEwChTwA + t4tf/////fz7/v7+/v7+/v7+//////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////v7+/v7+/v7+/fz7////vZZuhTsAkE0CjkkAjkkAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAjkkAjkkAjkkAj0oBi0YBlFMT8eri/v7+/f38/v7+/v7+//////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////v7+/v7+/v39/f399vHs + mVseikQAkEsBjkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oAjkgAjkkAkEwChj0Aza+Q/////Pv6/v7+/v7+ + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////v7+/v7+/Pz7////1Luhhz4AkEwCjkkAjkkAj0oAjkkAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkA + j0sAiEAAo2w0/Pr4/fz8/f39/v7+/v7+/v7+//////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////v7+/v7+/v7+/v79/fz7/f38qndDhz8AkEsB + jkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAjkkAjkkAjkkAjkkAjkkBi0QD4c+9/////Pz7/v7+//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////v7+/v7+/fz7/v7+6NvNjUkIjUgBj0kAjkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAkEwBhTsAt4xf/////Pv6 + /v7+/v7+/v7+//////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////v7+/v7+/Pv6////wZt2hTsAkEwBjkkAjkkAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkA + jkkAjkkAj0oAi0UAlFIT8eri/v39/fz8/v7+/f39//////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////v7+/v7+/v7+ + /f38/fz89vHtmVsfikMAj0sAjkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAkEsChDoAy6uN/////Pv6/v7+/v7+/v7+//////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////v7+/f3+/v7+/Pv7////1r6lhj0Aj0oBjkkAjUkAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAj0sAiEAAoWkx + +/n3/fz8/f39/v7+/v7+//////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////v7+/v7+/v39/fz7/v7+ + rXtJhj0AkEwCj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oBjkkAj0oBjkoCiEEA4M68/////fz7/v7+/v39/////v7+//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////f39/v7+/fz7/v7+69/SjkgJi0UAjkgAjUcAjUgAjUgAjUgAjUgAjUgAjUgAjUgA + jUgAjUgAjUgAjUgAjUgAjUgAjUgAjUgAjUgAjUgAjUcAjUcAjkoAhDkAtYlb/////Pz6/f7+/v7+/v7+ + /v7+//////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////v7+/v7+/v39/v7+/Pz7////xKF9jEcSlVQW + k1IUlFIUlFIUlFIUlFIUlFIUlFIUlFIUlFIUlFIUlFIUlFIUlFIUlFIUlFIUlFIUlFIUlFIUk1IUlFMV + kU8TmVoj8ejg/v39/fz7/v7//f39/v////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////v7+/v///f39/f38/Pv67+bd8Ofe8Off8Off8Off8Off8Off8Off8Off8Off8Off8Off8Off8Off + 8Off8Off8Off8Off8Off8Off8Off8Off7uXd9O7o/////f39/v7+/v7+/v7+//7+//////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////v7+/v////7+/v7+/v7+/v7+//////////////////////// + /////////////////////////////////////////////////////////////////////////v39/v7+ + ///+/v7+//////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////7+/v////// + /////v7+/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39 + /v39/v39/v39/v39/v39/v79/////////v7+/////v7+//////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////v7+/////v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+ + /v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/////v7+//////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + ////////////////////////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAoAAAAAAEAAAACAAABABgAAAAAAAAgAwAAAAAAAAAAAAAA + AAAAAAAA//////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39 + /v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39 + /v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v7+/////v7+//////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////v7+/////v7+/v39/v39/v39/v39/v39/v39/v39 + /v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39 + /v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39 + /v79/v7+//////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////v7+//////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + ////////////////////////////////////////////////////////////////////////9/Lt9/Pu + 9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt + 9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt + 9/Lt9/Lt9/Lt9/Lt9/Lt9/Pt/v7+/v79/v7+/v7+/v7+//////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////v7+/v79/v799/Ls9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt + 9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt + 9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Pt9/Lt/v39pm80omkso2oto2oto2oto2ot + o2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2ot + o2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2ot + o2svnmMrzrGR/////fz7//////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////v7+/v7+/fz8//// + 1bygnGAqo2svo2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2ot + o2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2ot + o2oto2oto2oto2oto2oto2oto2svnWEruY9i/fz8wJpwkUwEiUIAi0QAi0QAi0QAi0QAi0QAi0QAi0QA + i0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QA + i0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0UAiUAAlVQT7uTZ + /v39/fz8/v7+//////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////f38/v7+9O3nmFkViD8Ai0UAi0QA + i0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QA + i0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QA + i0QAi0QAikMAi0MA3sq1/v7+/fz8wJhviD8AkU0Fj0sCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsC + kEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsC + kEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkU0EiD8AuItb/////f38/v7+/v7+ + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////v7+/v7+/fz7////vZNniD8AkU0EkEsCkEsCkEsCkEsCkEsCkEsC + kEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsC + kEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCj0sCkU4EiUAAuY9h + /////Pn4/v7+9e/pnF8ei0UAj0oBjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oBi0MA3cix/////fz7//////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////v7+/////Pz7////49G/j0oHjUgBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oBjEYBl1cU8urj/v39/fv6+vf0//// + 1LqfikIAj0sCj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAjkoAj0sBikIAoWcq9vLt/fz7/v39/v7+//////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////v7+ + /f38+/n3p3A0iUEAj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBiUEAzrCQ/////fz7/v7+/fz7/fz7+/n3q3hBiUAAkEsC + j0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAjkkAj0sBiEAAyKaB/////fz7/////v7+//////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////v7+/v7+/Pz7////z7GRiUEAkEwC + jkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAjkkAj0oBikIApnA0/fz7/v39/v7+/////////f38////6NrMkEwHjUgBjkoAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoA + jUgBlFIO7uTa/////f38//////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////v7+/////fz8/v398OfellYTjEYBj0oBj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkgB + jUYA4tG+/////fz7/////v7+/v7+/////fz8////wJpvhz4Aj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAkEsCiD8As4RR/fz7 + /fz7/v7+/v7+//////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////v7+/v38////uY9ghz4AkEwCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsBiD8Au5Fk/////f38/v7+ + /v7+/////////v7+/fz8/v389e/pnmMmi0MBj0sBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oCi0QB3Mav/////fz8/////v7+ + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////v7+ + /v7+/Pz8////4tG+jUgCjkkBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oBi0UAmFkW9e/o/v7+/f38//////////////////// + /////fv6////17+miUEAj0oBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBikMAoWgp+vfz/v7+/v79//////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////f39/fz8+/j2pW4z + iUAAj0sCj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0kAj0oBiUEA0ria/////fz8/v7+/v7+/////////////////v7+/v39/v39/v/+ + sH9LiEAAkEsCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAjkoAj0sCiD4Ax6Z//////fv6/v7+/v7+//////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////7+/v7//fz8////yqqHiD8Aj0sBjkkAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkA + j0sCiUIAqXU7/fz7/v39/v39/////////////////////////////v7+/fz7/v7+6t3PkU4NjkgCjkoB + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0kAj0oAjUcBkU0N7ODU/////f39/////v7+//////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////v7+/v///f38/v7+7+bdlVMOjEYBjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkBjUgB5dXG//// + /f38/////v7+//////////////////////////////7//fz7////w551iD4AkEwCjkkAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sB + hz4Ar35J/v39/fz8/v7+//////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////v7+/v39/fz7////tolYhz4Aj0sDjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEwBiEAAvZZq/////f37/v7+/v7+//////// + /////////////////////v7+/////f39/v7+9vHsnmMki0QAj0sAj0kAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oCi0QB2cKo//// + /fz7/v7+/v7+//////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////v7+/////fz8//// + 3su3jUcDjkoBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oBjEUBmlsZ9O7n/v79/f38//////////////////////////////// + /////////v7+/v7+/fz6////2cGpikIBj0oDjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0sBi0MAn2Qn+PTw/v79/f38/////v7+ + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////f39/fz8+vf0omosiUEAj0oBj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjkkAj0sCiD8A0reZ/////fz7/////v7+//////////////////////////////////////////// + /v7+/fz7/Pv6sH9KiD8AkEsBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsChj0Aw594/////fz7//7///////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////v7+/v7+/Pz7////yqmGiUAAj0sCjkkAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsBiUEAq3hA + /Pz6/f38/v39//7+/////////////////////////////////////////////v7+/////f37////7OLW + k1EOjUcBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAjkoBjUcCklAO6t7Q/v7+/fz7/v7+//////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////v7+/////f39//7/7ePYk1ENjUcAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAjUcBj0sG6NrL/////fz8/v///v7+ + /////////////////////////////////////////////////v7+/v7+/fz7////xqR+hz4Aj0sCjkkA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjkkAkEsBiUEAsIFN/v79/v39/v3+/v7+/v7+//////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////v79 + /Pz7/v7+s4RQiEAAkEwCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBhz4AwZty/////fz8/v7///7+//////////////////// + /////////////////////////////////////v7//v39/v399/PuoWgrikIAj0oBj0kAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sC + iEAA176j/////fz7//////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////v7+/v7+/fz8////2sSti0QBjkoC + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0kAj0sBi0QAm14d9vHr/v79/f39//////////////////////////////////////////// + ///////////////////////+/////fz8////3MawikMBj0oCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0sCi0QBnGAi9O7n/v38 + /fz8/v7+//////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////f39/v39+fbzoGcoikIAj0sBjkkAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sC + iUEA1buf/////fz8/v7+/v7+//////////////////////////////////////////////////////// + /////////v7+/f79/fz8/f39soNPhz4Aj0sCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEwChz0AwZxz/////f38/v7+/v7+//// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////v7+/Pz7////x6V/iD8AkEwBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0wBiEAArHpD/v7+/v38/v7+ + /////////////////////////////////////////////////////////////////////////////v7+ + /f38/v7+69/SlFIPjUcBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAjkgBkEwG6dvN/////fz8//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////v7+ + /////Pz7/v397ODUlFMRjUcCj0oBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkBkE0I6NvM//7+/fz8/////v7+//////////// + /////////////////////////////////////////////////////////////////////fz7////yKaB + hz0AkEwDjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAjkkAj0sCiUEArXtG/Pv5/fz7/v39/v7+//////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////v///f38////sH9K + hz8Aj0wCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAjkkAj0wChz8AwJlv/////f38/v7+/v7+//////////////////////////////// + /////////////////////////////////////////////v7+/v7+/f39/f389/Puomgti0MAj0sCj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0sDiD8A1r2i/////fz7/////v7+//////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////v7+/f38////18ClikMAj0sBjkkAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkA + j0oBi0QAnmIj9vHs/v39/v39//////////////////////////////////////////////////////// + /////////////////////////////////////v7+/fz8////3sq0jEYAjkoCjkkAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oAi0UA + nWAf9vHs/v7+/v79//////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////v7+/v7+/f38/f389vHsn2Qli0QBj0sBj0kAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oCikIA2MGo//// + /fz7/////v7+//////////////////////////////////////////////////////////////////// + /////////////////////////////fz8////tYhWhz4Aj0wBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsCiD8AwJpw/v7+/fz7 + /v7+/v7+//////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + ///////+/////fz7////xKF6hz4AkEwCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0wBiEAAsH9L/////f38/v79/v7+//////// + //////////////////////////////////////////////////////////////////////////////// + /////v7+/////fz7/v797uXblVQVjEYBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkCjkkG59jJ/////f38/////v7+//// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////v7+/v///f38//// + 6t3PkU4IjUcBjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjUgBkU4J6t7Q/v7+/fz8//////////////////////////////// + /////////////////////////////////////////////////////////////////////////v7+/v7+ + /fz7////yqqGiEAAj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsBiUEAqnY9/Pr4/v39/v7+//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + ///////////////////////////////////////////////////+/v39/fz7/fz7r39KiUEAj0sCj0kA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjkkAkEwChz0Aw553/////fz8/v7+/v7+//////////////////////////////////////////// + /////////////////////////////////////////////////////////////////f39/v79+/n3omor + ikEAj0sBj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAjkoAj0sCiEAA0raY/////fz6/v7+/v7+//////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////v7+/v7//fz7////1ryiiUIAj0oCjkoAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0sBikMBnmMm + +PTw/v39/f39//////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////v7+/v7+/fz7////38u2i0QEjkoDjkoAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0kAj0sBjEUAmVwb9e/p/v7+/f38//////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////f38/v7+9vHsnF8eikMAj0oAj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oBikMA2MCl/////fz7/////v7+ + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////v7+/fz8/v7+t4pZiD8AkEwCjkkAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEwChz4A + vpVq/////fz7/v/+/v7+//////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////v7+/v7+ + /Pz7////wJpwhz0Aj0wDjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsBiUAAr39J/v7+/v39/v7+/v7+//////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////v7+/////f39////8urillcTjEYAj0oAj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAjUgCjkgE5dXE/////fz7 + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////v7+/////fz8////59nLkEsHjUgB + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAjkoBjEcBk1AN7OLW/v///fz7//////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////v7+/v7+/Pz7////za6OiEAAj0sCjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEwBiUEAqnY8/f38/v39/v3+/v7+//////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////f39/fz8/fz7rHlCiUEAkEsBjkkAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sC + iD8AyKaB/////fz7/v///v7+//////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////v79 + /fz7+fXypW0xiUEAj0sBj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBiUEA0bWX/////fz8/////v7+//////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////v7+/v7+/fz7////z7OTikIAj0oCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAj0sBikMAn2Yl+vf0/v7+/f39 + //7///////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////v7+/////fz7////4tG+jEYC + jkoBjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oBjEUCl1gY8+vk/v79/fz7//////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////f38////7eLWlFEOjEcBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAjkoBi0QA28av/////fz7/v7//v7+//////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////v7+/v79/fz7/v7+uY5fiEAAj0wCjkkAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + jkkAkEsCiD8Auo9h/////fz8/v7+/v7+//////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////v7+/v7+/v79/fz8+/r4rHlE + iUEAkEsCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAjkkAj0sBiD8As4RR/f39/v39/v7+///+//////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////v7//f38/v7+7+fdl1cUjEYBjkoAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oBjkgB + 4tC+/////f38/////v7+//////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////v///v7+/Pz7////wp51hz4Aj0sCj0kAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjUcBk1EN7+Xb/////f39/////v7+//////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////fz8////z7GRhz4Aj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsCiUEAp3E4/Pv5/v38/v39 + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////v7+/v7+//7+/fz7////3ciwjEUAjkkBj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsChj0Ax6WA//// + /fz7/v7+/v7+//////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /v7+/v7+/f39/fz7+vj1qHI4iUEAj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAkEsCiD8Az7GR/////f38/v7+/v7+//////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + ///+/////fv7////7OHUlVQWjEYBj0oBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBikMAomks+PPv/v39/v79//////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////v7+/fz7 + ////5NPBj0oGjkgBj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oBjEYAl1gU8uri/v7+/fz8//////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////v7+/v7//f38////8uvj + n2QoiUEAkEwCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oCi0QB38u2/////fz7/////v7+//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////f38////u5Jlhz0A + kEwCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAjkkAj0sBiD8AupBi/////fz8/v7+/v7+//////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////v7+/////fz8/v7/+PTvq3dAiD8AkEwBjkkAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjkkAj0wCiEAAt4pa/v7+/f38/v79/v7+//////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////v7+/v7+/fz8/v398erimVwcjEUBj0sBj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjkkBjUgE4M66/////fz7/////v7+//////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////v7+/v7+/////fz8////+vj1rHpFiD8Aj0sCjkkAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAj0oAjUcBlVQR + 7+bd/v7+/f39//////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////v7+/fz7////0LSUiUEAj0sCjkkAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBikIAo2sv + +/n4/v39/v7+//////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////v39////+/n2tYhXhz4Aj0wDjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsChj0AyquI/////fz7/////v7+ + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////v7+/fz8/fz7qHM5iUEAj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsChz4Ay6uJ/////fz7/v7+ + /v7+//////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////v7+///+/v7+/fz7////+vf0 + rXtIikIAj0sDj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAj0sBikIAo2wx+PXx/f38/f38/v7+//////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /v7+/////Pz7////4tLAjkgHjUgCj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oBjEUBllYS8Oje/v7+/f38//////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////fv7////9/Puq3hChz4Aj0sBj0oAj0kA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAjkkAjkoBi0UA4M24/////fz7//////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////v7+/v7+/Pz6 + ////vpZqiD4Aj0wCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBiD8AuItc/////fz8/v7+/v7+//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////7+/////v7+/fz7////7+XaomoxiEAAkEwDj0oAjkkAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEwC + hz4AtolZ/////fz8/v3+/v7+//////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////f39/v7+9vHsnGAdi0MA + j0sBj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAjkkAjkkCjEYB38y3/////fz8/////v7+//////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////v7+/v7+ + /v///v39/Pz7////38y3mFkciUAAkEwCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oBjEYDllYX7+bc/v7+/f38 + /v7+//////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////v7+/v7+/fz7////1LqeiUEBj0sDjkoAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoA + j0sBikIApGww+vj1/v39/f39/v7+//////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////v7+/////////Pv6////////y6yJ + j0sEikMAkEsBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsCiD8Azq+O/////fz7//////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////v39/fz7/Pr5qnY9iD8Aj0wCj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBiD8AzK2M + /////Pz7/////v7+//////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////v7+/v7+/////v7+/fz7////8+zks4NTiUEAjUkAkEsCjkkAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0kAkEsBiUEApnA0/fv6/v39/f79/v7+/v7+//////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////v7+/v///f38////5tjJkUwIjkgAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjEYBlFIP7uTa/v7+/f38//// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////v7+/////v7+/fz7////////3Mixm14hiEAAj0sCj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + jkoAjkkCjkkG4c+7/////fz7/v7+/v7+//////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //7+/v7+/fz7////v5lviD8Aj0sDjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsCiUAAtIZV/////v39/v7+/v7+//////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////v7+/v7+///+/v39 + /fz8////+PTvvpZujUgDikQAkEwDj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsChz4AuI1d//// + /fz7/v7+//////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////7+/f38/f38 + 9O7nm10ci0QAj0oBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oBikMA3ciy/////fz8/////v7+//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////v7+/////v7+/fz7////////28aunmImhz4A + jkkAj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjEYAl1gW8+vk///+/f38/////v7+//// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////v7//Pz7////1LqdikIAj0sB + jkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAjkkAj0oBikMAoWgp+fby/f39/f39//////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////v7+/v7+/////v7+/fz7/v//////8OjdtolbjEUAikMAkEwCj0oAjkkAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsCiUEAzrGR/////fz7/v7+/v7+//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////v39/fz7/f38rn1HiD8Aj0sCj0kAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkA + j0sBiD8AyKiE/////fz8/v7+/v7+//////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////f38////////+/j2y62LlVQSiD8AjkoBj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjkkAj0oBiUEApW4z+vj1/v39/v39//////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////v7+/v7+/Pz7/v7+6d3Qkk8LjUcBjkoAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjUcBkk8J7eTZ + /v7+/f38/////v7+//////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////v7+/////v7+/f38/f39/////Pr4 + 2sSsomktiD8AjEcAkEwCj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAj0oAjkkAjkgD + 49PB/////fz8/////v7+//////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////v7+/f38////w552hz4Aj0wBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBiD4As4VS/////f39/v7+//// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////v7+/v7+/////f38/v7+////////38y3qXU+iUEAikMAkEsCj0sB + jkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsChz4AvJNm/////fz7/v7+/v7+ + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////v7+ + /////f39/f389vHrnGAgikMAj0sCj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkBjEYA3Mex/////fz7/v7+/v7+//////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /v7+/////////v39/fz8/v7/////////4tC9rntHjUgCiUIAkEsCj0sBj0oAjkkAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAj0oBjEUBmVsZ9O7m/v7+/f38//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////v7+/v7+/Pz7//// + 2MCnikMAj0oCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAjkkAj0oAi0MAnmMj+ffz/v39/f38//////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////v7+/v7+/v7+/v7+/v39/fv6//// + /////fz82MGnrXtIjUYAiUEAjkkAkEwCj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAjkkAj0sCikEA0bWX/////fz7/////v7+//////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////v7+/f39////r35IiUAAj0wC + jkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAjkkAj0sBiEAAxKF6/////fz8/v7+/v7+//////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////v7+/////v7+/f38/fz6/v7/////////8uvj0bWXomktjEUAiD4A + j0oBkEsBj0oAjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAkEsC + iUEAqHQ7+/j2/fz8/v39/v7+//////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////v7+/////fz7/v7+6NvNkEwIjUgBj0oBj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + jUgBkk8K7ODV/////fz7/////v7+//////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////v7+ + /////v7+/v7+/v7+/v39/v39/////////f3859jKvZVqnF8hiD8Ai0QAj0oAkEwEj0oAjkkAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkgBjkkE5dXE/////fz7 + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////v7+/v7+/Pz7////w551iD4Aj0wCjkkAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsCiUEAsIBL//// + /f38/v7+///+//////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////v7+/////v7+/fz8/fz6//////// + ////////69/T0baYqndBjkgAiUAAi0QAkEwDj0sBj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBiD8AvZRo/////fz7/////v7+//////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////v7+/f39+vbzn2UlikMAj0oBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sCi0QA2sOq/////fz7/v7//v7+ + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////v7+/////v7+/v7+/v79/v38/v38/f38/v///////////v398Ojf0bWXsYBNlVUShz0A + ikIAjkkAkEwCj0sCj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oBi0UBmlsc8eri/v39/fz8/v7+//////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////v7+ + /////Pz7////28avi0MBj0oCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0sBikMAnmIj+PXx/v39/f38///+//////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////v7+/////v7+/v79/f38 + /fz7/fz6/v7+/////////////////Pr55dXDyaqHr31Lkk8HikMAiUEAjUYAkEwDj0sBjkkAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + jkkAj0oBiUEA1Lqd/////fv6//////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////v7+/f79/fz7/f38 + sYJOiEAAj0sCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAjkkAj0sBiD8AxKB5/////fz8/v///v7+//////////////////////////// + /////////////////////////////////////////////////////////////////v7+/////v7+/v39 + /v39/v39/v39/v39/v39/v38/v38/fz8/fz8/f38/f38/v38/v38/v39////////////////////9vDq + 6d3P0baYtIZVn2Unkk8HhjsAiUAAjkgAj0sBkEsCj0sBj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsCiUAArHpD/f38 + /v39/v39/v7+//////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////fz8////7OHWkk8KjUcAjkoA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAjkkAjUgBkU4J6NrM/////fz8//////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + ////////////////////////////////////////9O3l49PB1Lqew552soNRnmIhikIAikIAiUEAikIA + jUgAkE0EkEwCj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoBjUgCj0wK59nK/////fz7/v7+//////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////v7+/v7+/fz7////xqR+hz4AkEwCjkkAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sC + iUEArnxG/v7+/f38/f39/v7+//////////////////////////////////////////////////////// + /////////////////////////////////v7+/////fz6+PXv+fXy+fXy+fXy+fbz9vDr8Oje8Oje6dzO + 5NXE2MCmzbCPv5dusIBMn2UnmlwZk1EJjEUAhz0AiUEAjUcAkEwEkE0EkU0EkU0EkEwDj0sCj0sCj0sC + j0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sC + j0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sC + j0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sC + j0sCj0sCj0sCj0sCj0sCj0sCj0sBkE0Ehz4Av5ht/v7+/fz7/v7+//////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + ///////////////////////////+/f39/f389/PuoGYnikIAj0sCj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsBiUAA1r2i//// + /Pz7/////v7+//////////////////////////////////////////////////////////////////// + /////////////////fz7////4M25l1YeoGYnn2MknmMkn2QmmVsYkUwEkU0FhTkAgzcAhDgAhDkAhDkA + hToAhToAhz0AiEAAikIAi0UAi0QAikIAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEA + iUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEA + iUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEA + iUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEA + iUEAiUEAikIAhz0Am1wc9O7o/v7+/f39/////v7+//////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////v7+//7//f38////2sSsi0QAj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oBi0UBnWEg9fDr/v39/f39//////// + //////////////////////////////////////////////////////////////////////////////// + /fz7////6NrMtIZYupFjuY9huo9huY9gupBjvJNnvJNnvpdsv5dtv5dtv5dsvpdsvpdsvpdsvpZrvpZr + vpVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVq + vZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVq + vZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVq + vZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvpdsuI1g + 4M24/////fz8/v7+/v7+//////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + ///////////////////////////////////////////////////////////////////////////////+ + /v7+/fz7////tIZUiD8Aj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsBiD8AwZxy/////fz7/v7+/v7+//////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////v7+//////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////v7+/v7+/fz7/v397ePY + llURjEYBj0oBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAjkgBkEsF6NrN/v7+/fz8/////v7+//////////////////////////// + /////////////////////////////////////////////////v7+/////v79/fz7/fz7/fz7/fz7/fz7 + /fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7 + /fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7 + /fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7 + /fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7 + /fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/v39/v7+/v7+/v7+//////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////v7+/Pv7////yaiEiD8Aj0sBjkkA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjkkAkEsCiUEArXpD/v7//f39/v7+//////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////v7+/////f39/v38+vf0oWgrikIAj0sBj0kAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oB + ikMA1bqf/////fz7/v7+/v7+//////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////v7+/v7+/fz7////3MiyjEYBjkkBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oBi0QAmlwa9O7n/v39 + /f38/////v7+//////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////v7+/f39////tIdViD8Aj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsBiD4Avpds/////f38/v7+//////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////v7+//// + /fz8/v7+7+XblFIOjEYBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjUgBjkoD5dbF/v7//fz7/v7+/v7+//////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////v7+/////v7+/v38/v39 + /v38/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39 + /v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39 + /v39/v39/v39/v39/v39/v39/////////v////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////v7+/v7+/fz8////y6uI + iUEAj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAjkkAj0sBiUEAq3c//fz7/v38/f79//////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////v7+//////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////v7+/v7+//////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////f39/v39/Pv6pGwuikEAj0sBjkkA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjkkAj0sCikIA1Lqd/////fz7/v///v7+//////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////v7+/v7++fbzqXY9nmImoGYnoGUnoGUnoGUnoGUnoGUnoGUnoGUn + oGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUn + oGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnn2UnoGUnnmMm4c+8//// + /fz8//////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////v7+/////fz7////4tC9jUgEjkkCjkoAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oBi0QA + mVsZ8+zl/v38/fz8//////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////v7+/fz7////xaJ8hToAi0QAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIA + ikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIA + ikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAi0QAhDoAqHI6+/n3/v39/v7+//////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////v7+/v7+/fz8////uIxciUAAkEsCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEwCiD8AvpZs/////fz7 + /v7+//7+//////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////v7+/////fz7/v7+ + 7ODUk1EPjUcCkEwDj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sB + j0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sB + j0sBj0sBj0sBj0sBj0sBj0sCkEsCjkkDkk4L6t7Q/////fz7//////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////f39/v7+8enhllYQjUYAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAjkkBjkkE49PB/////fz8/v///v7+//// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////v7+/f38////soJOiEAAj0sBjkkA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjkkAj0wBiD8Awp10/////fz8/v7+/v7+//////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////v7+//// + /Pz7////za+OikEAkEsBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAj0sDiEAAp3I3/Pr4/f38/v39/v7+//////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////v7+/Pz7////2cOri0QAj0oBjkkAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oBi0UAnWAf + 9vHs/v79/fz8//////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////v7+/f39/f38+/n3pm8z + iUEAj0sBj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAjkkAj0oCikIA0LOU/////fz8/////v7+//////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////v7+/v7+/f38/f38+PPvoGcqi0QBj0sBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0sCiUEA1r2i/////fz7/v7+/v7+ + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////v7+/////fz7////4tC9jkkDjkkBjkoAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAi0YAl1gT8+3l/v7+/f39//////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /fz7////x6V/iD8AkEsCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsCiEAArXtF/f38/f38/v7+//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////v7+/v7+/fz8////vJJmiD4AkEwCjkkAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sCiEAA + upFj/////fz8/v7+/v7+//////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////v7+/f38/v7+6t7RklALjUcB + jkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0kAjkgBkU0I6NrM/////f38/////v7+//////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////v7//fz8/v798eril1kVi0QAj0oBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkgBj0oG5NPC/////fz7 + /////v7+//////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////v7+/v79/f38/f38soNQiUEAj0sCj0kAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsC + hz4AwZty/////fz8/v7+/v7+//////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + ///////+/v///f37////0bWXiUEAj0sCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBiUEApm8z/fz6/f38/f39//////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////v7+/////fz7////3MexikMAj0sCjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oBi0MBnGEj9vLt/v39/f38 + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////f39 + /f38/Pr4qHM6iUEAj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oCiUEAz7KS/////fz7/v7+/v7+//////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////v39/f38+PXxomotikIAj0sBj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBiUIA1r2i/////fz7/////v7+//////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////v7+/v7+/fz7////49PBjUgC + jkkBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAjEYBllYU8ejf/v79/f38/////v7+//////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////v7+/v7+/fz7////y6yJ + hz8Aj0sCjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0kAkEsBiD8ArXpD/fz7/v38/v7+/v7+//////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////v7+/fz8////vJNmhz8Aj0sBjkkAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + jkkAkEsChz4At4ta/////fz8/v7+//////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////v7+/////f39////7ePZlFIPjEYAj0oAj0kAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + jkoAjUgCkEwL6dzO/////fz7//////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////v7+/////fz8/v398+vkmFoXi0UAj0oBj0kAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAjkkBjUcD + 38y3/////fz7/v7+/v7+//////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////v7+/fz7/f38tYdVhz8Aj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBiD8AwZtx//// + /fz8/////v7+//////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////v7+/v7+/fz8////0reaikIAjkoBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBiUEApGww+/j2/v38/f39 + /////v7+//////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////v7+/v7+/fz6////3su1jEUEjkoCjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oBi0QAnGAf9fDq/v79/f39//7+//////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////v79/v39/f39q3c+iUEAj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBiD8AzKyK/////Pz7/v7+//////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////v/+/f39/v79 + +fb0o2otikMAj0sBj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sCikIA07eb/////fz7/v7+/v7+//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////v7+/////fz8 + /v7/59fIjkoEjUkBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oBi0YBl1cV7+bc/f39/fz7/v7+/v7+//////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////v7+//7//fv7////yqmGiD8AkEwCjkkA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjkkAj0sBiEAAqXU7/Pv6/f38/v7+//////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////v7+/v7+/fz8////v5dtiD4A + kEsBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAjkkAj0sBiD8Atotb/////fz7/v7+///+//////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////7+/fz8/v7+7uTalVQUjUcCj0oBj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkCj0oK + 5tbG/////fz8/////v7+//////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////f39/v399O7om10ci0UBj0oBj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + jkkAj0oBjUcB4M25/////f38/v7///////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////v7+/////f38////tolXiD8AkEwCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEwCiD4Avpdr/////fz7/v39/v7+ + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////v7+/////fz8////07ibiUAAkEsBjkkAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0sCikIAomos + +PTw/fz8/f39/v7+//////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /fz7////3ciyikMAj0oCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAj0oAi0UAmlsY9O7n/v7+/v39/v////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////v7+/f39/f38/v79q3c/iUAAj0wCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEwChz4AyaiF/////fz7//// + /v7+//////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////v7+/f39/f38+fXxomoviUEA + kEwCjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAjkoAj0sCiUAA07mc/////fz7//////7+//////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////fz8////6NvMkEwHjUgBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAjUcAk1EL7uTa/////f39//////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////v7+/////f38////y6uJhz8Aj0sBjkkAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAj0sB + iUAAq3dA/Pr4/fz7/f39/v7+//////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////v7+/v///fz7 + ////wpxziD8AkEsBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAjkkAkEwCiD8AtIZU/v39/fz7/v39/v7+//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////f38/v7+7uPYlFMPjUcBjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkgBj0oC5dbG/////fz7 + /v7+//////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + ///////////////////////////////////////////////////////////+/fz8/v399/LunGAfi0MA + j0sBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAjkoAj0kBjEUC3cm0/////fz7/////v7+//////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /v7+/v79/f38/v7+tYhYiD8AkEsCj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0wChz0AvpZr/////fz8/v7+//////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////v7+/v///fz7////17+likMAj0oBjkkAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kA + j0oBikMAomgq+vf0/f39/v7+//////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////v7+/////Pz7////4M24 + i0UAj0oBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0sBi0QBm10f8+3m/f38/fz7/v7+/v7+//////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////7+/v79/f39////rnxGiUAAkEsCjkkAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sCiEAAyKWB + /////Pz7/v7+/v7+//////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////v79/f38+PTxomkti0MAj0sBjkkAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + jkkAkEwBiUEA0rea/////fz7/v7+//////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////v7+/v7//fz7////6t3QkE0IjUgBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oBjUcBkk8M69/T/v7+/fz7//// + /v7+//////////////////////////////////////////////////////////////////////////// + /////////////////////////v7+/v7+/fz7////y6yKhz4Aj0sCjkoAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sCiUAAqnU9/Pz7 + /v38/v39/////v7+//////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + ///+/v7+/fz7////wZtyhz8Aj0wCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBiEAAsoJP/////f38/v7+//////////////// + //////////////////////////////////////////////////////////////////////////////// + /////v7+/////f38/v7+8enhllYSjUcBj0oBj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjUgCj0sJ5dbG//7+/Pz7/v7+/v7+//// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////v7+/////f38/v79 + +PTwnGAfi0QAj0sAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAjkkAjkoCi0QA28St/////Pz7/v7+/v7+//////////////////////// + /////////////////////////////////////////////////////////////////////////v7+/f38 + ////uI1diD8AkEsCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsBhz8AvpZq/////fz7/v7+//////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////v7+/v7+/fz7////2sSsi0UAj0oB + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0kAj0sCikMAnmQl9/Lt/f38/f39/////v7+//////////////////////////////////// + /////////////////////////////////////////////////v7+/v7+/fz7////4tC+jUcCjkkBj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0kAj0oBi0QAmVsZ9O3m/v79/f38/////v7+//////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////v7+/f38////sYFMiD8Aj0sBjkkAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkA + kEwChz4AxaJ8/////fz7/v7+//////////////////////////////////////////////////////// + ///////////////////////////////////+/f39/f39+/n3pGwwikEAj0sBjkkAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAj0sCiUAA + 07mb/////Pz7/v7+/v7+//////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////v7+/////fz7/v7+7OHUkU0HjUgBj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oBjUcBk1AO6+DU + /v7+/Pz7/v7+/v7+//////////////////////////////////////////////////////////////// + /////////////v7+/v///f38////za+OiD8Aj0oBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsCiUEAq3c+/fz7/fz8/f79//// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////v7+/v7+/fz8////xqR/iD8Aj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0wChz4AsIBM/v79/fz7/v7+//// + //////////////////////////////////////////////////////////////////////////////7/ + /fz8/v7+8erillYSjEYBj0oBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkBjkkF5tfH/////fz8/////v7+//////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////f39/f39+PXwn2Qli0MAj0oBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oBikMA2cKp/////fz8/v7///////////////// + /////////////////////////////////////////////////////////v7+/v7+/fz8////uI1fiD8A + kEwCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAjkkAj0wDhz4AvpVq/////Pz7/v7+/v7+//////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////v7+/////fz8//// + 2sWtikEAj0oBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oBi0MAnWAg9vDq/f38/f38/v7+//////////////////////////// + /////////////////////////////////////////////fz7////4tC9jUcAjkkBjkkAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + jEQAm10b9O/p/v7+/f38//////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////v7+/v7+/v39/v7+soJPiUAAkEwC + jkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAjkkAj0sDhz8Aw552/////fz7/v7+//7+//////////////////////////////////////// + /////////////////////v7+/f39/f38/Pr4pW8yikIAj0sCj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sCiUAA07ib/////fz7 + /v7//v7+//////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////f38/v7+7OHWklAMjUcBj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkA + jUgAklAK6dzO/////f38/v////////////////////////////////////////////////////////// + /v7+/////fz7////za+OiUEAj0sCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0sCiEAAqXY9+/n3/fz7/v39///+//////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////v7+/////fz8////yamFiD8Aj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0wCiEAArXpD/Pv6 + /fz6/v39/v7+/////////////////////////////////////////////////////////f39/v7+8eng + lVMPjEYAj0oBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAjkkAjkkBkEwF5tjJ/////f38/v///v7+//////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////v7+/f39/v39+fXyomkrikMAj0sCj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAj0sDikMC17+l/////fz7/////v7+ + /////////////////////////////////////////////v7+/v7+/f38////uI1diEAAkEsDjkkAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + jkkAkEwBiD8Au5Jl/////fz8/v7+//7+//////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////v7+ + /////fz8////3ciyi0QAjkoCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAj0sBi0QAnmIi9vLt/v7+/v7+//////////////////// + /////////////////////////v7+/////fz8////4tC9jkgEjkkBj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oBjEUBmFoX8uvj + /v39/fz8/////v7+//////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////v7+/v7+/fz8//// + tYdViD8AkEsBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAjkkAj0wDhz4AwZtx/////fz7/v7+/v7+//////////////////////////// + /////////////v7+/v39/Pr4pG0vikMAj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBiEAAz7KT/////fz7/v7+/v7+//// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////fz7/v7+7uTalVQQjEYBj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oBjUgCkU4N59jI/////fz8/////v7+/////////////////////////////v7+/v7+/fz8 + ////za6NiUAAj0sCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sCiUEApm8z/Pv5/v39/f39//////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////v7+/v7+/fz7////yaiDhz4Aj0sCjkkAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sB + iUAAqnY9/fz8/f38/v7+/////////////////////////////v7+/////f38/v398enhllcVi0UBj0oB + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAjkgBjkkD5NTD/////fz8/v7+/v7+//////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////f39/v39+/j2oWgqikIAj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sCiUIA07mb//// + /fz7/v7+/////////////////////////////v7+/f38////t4tahz8AkEsBjkkAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sCiD8A + upFj/////fz8/v7+//////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////v7+/v7+/fz7////4M67jEYDjkkCj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0sBi0QBm18g8+3l/v39/f38/v7+/v7+ + /////////////v7+/v7+/Pz7////5NTEjkkEjUkCjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAj0oAjEUAllcT8+vk/v39/f38//// + /v7+//////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /v7+/fz8////uIxciD8Aj0sCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsChz0Avpdr/////fz7//////////////////////// + /f39/fz8+/n3p3E4iUEAj0sCj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAj0sBiUAA0LSV/////fz7/v7+/v7+//////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////v7+/////fz8/v7+8Ojf + llYSjEcBj0oAj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAjkkAjkgBkEwI5dfG/////fz7/v7+/////////////v7+/fz7////0LSWiEAA + kEsCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAjkkAj0sBikIAp3A1/Pr5/v39/v39//////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////v7+/v7+/fz7////za2Mhz8AkEsCjkkA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0kAj0sBiEEArHlC+/r4/fz8/v39/v7+/v7+/v7+/f38/v398+zkmVoZi0UBj0oBj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + jkkBjUcA49LA/////f38/////v7+//////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////v38/f39+/n3pG0yikEAj0sCjkoAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sC + iD8A0ria/////fz7//////7+/v7+/fz7////u5Jlhz0Aj0wDjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsBiD8Au5Jk/////f38 + /v7+/v7+//////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////v7+/////f38////38y3jUcAjkoBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0sBjEUBmlsb8eng/v79 + /f38/////f38////5NTDjkkEjkkBjkkAj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oBjEUBl1gV8uvk/v79/f38//////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////v7+/v7+/fz8////t4xchz4AkEwCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0wCiD4Au5Jm/////fz7/f39/fz8+/n3 + qXQ6iUIAj0sBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAjkkAkEsBiD8A0LOU/////fz8/////v7+//////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /fz7/v7+8engllYWjEYBj0oBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAjkkBjkgD5NTD/////Pr5////0bSXiEAAj0sDjkoAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0kAj0sCikIAp3E3/Pr4/v39/v39/v7+//////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////v7+/////fz8////0baX + iUAAkEsBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0kAj0sBiUAApnE2+fbz/f388uvjl1cTi0UAj0oAj0kAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAjkkBjkgE5NTD + /////fz8/v////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////v7+/v3+/v39/Pv5p3I4iUEAkEsBjkkA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjkoAj0sCiUAAz7GT////upFjiD8Aj0wCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEwCiD8Au5Fj/////fz8/v7///7+//// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////fz7////4tG/jUcDjkkCjkoAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAj0oAi0MA + nWEh1r2ikE0KjkgBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0sBjEYBl1gX8urj/v7+/f38///+//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////v7+/v/+/Pz7////u5FkiD8AkEwBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oAjkkAkU4FjUcAj0oA + jkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAjkkAj0sCiEAA0bWW/////fz7/v7+/v7+//////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////f38/v7+8+zlmFkZjEYBj0sBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkgAj0oAjkkAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBikIA + qHI4/Pv5/v39/v7+//////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////v7+/v7+ + /fz6////0LOTiD8AkEwCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oAj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kCjUcF49G//////f38//// + /v7+//////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////v7+/v39+/r3qnY+ + iUEAkEsBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sChz4Au5Nm/v///fz8/v7+/v7+//////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////v7+/////f38////5tfIjkkIjkkCj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAjkoAj0oAjEYAl1cU8+zl/v7+/v39//////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////v7+/v7+/fz7////v5huhz4Aj0sCjkkAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kA + kEsChz8Az7KS/////fz7/////v7+//////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////v79/v7+9O7pmlwZi0UAj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAkEsCikEApnA3+vf0/fz7 + /v39/v7+//////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////v7+/////fz7////07ibiD8AkEsDj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkoBjEUA38y3/////fz7//////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////v7+/v39 + /fz7+/n3q3hBiUEAkEsCj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAjkkAj0wChz4AuY1f/////f38/v7+/v7+//////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////fz8////59jIj0oD + jkkBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oBjEYCl1YV7+Xb/v39/fz7/v7+//////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////v7+/v7+/f37////vpdthz0Aj0wCj0kAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsBhz4Ay6uJ + /////fz8//////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////v7+/fz8/v399O/om18hi0QBj0oBj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBiUEApW40+vf0/v39/v39/v7+/v7+ + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////f38////1r2iiUAAj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAjkkCjEYE4M24/////fz7/v7+//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /v7+/v7+/v79/v38/v39rnxIiEAAkEsBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAjkkAkEwChz8At4tZ/v7+/fz7/v7+//////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////v7+/fz7 + /v7+6NrMkU0LjkgCjkoBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjEYB + llYW7+Xb/v7+/f38/////v7+//////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////7//fz7////wJpwhz0A + kEwCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sCiD8Aza6M/////fz7/v7+ + /v7+//////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////v7+/////f39/v799vLtnWIki0QAj0sBj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAj0sBiUEApG0x+vf0/f38/v7+//////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////v7+/v7+/fz7////1r6ii0MAj0oCjkkAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAjkoAj0kCjEYF38y3/////fz7/////v7+//////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////v7+/f38/fz8rXtEiUAAj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkA + j0wChz8AuIxc/v7+/fz7/v39/v7+//////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /v7+/////fz8////697Skk8MjUgBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAjkoAjUYAllYR8Ofe/v/+ + /v39/v////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////v7+/v7+/fv6 + ////xKF6iD4AkEsCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0wCiD8Ay6uJ/////v38//////7+//////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////v79/v7++fXyn2Qli0MA + j0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0kAj0sCiUEApW8z+fby/fz7/f39/v7+//////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////v7+/////fz8////2cKqikQAjkoCj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjkoAjkkBjEYA4M24/////fz8/v7+//////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////v7+/v7+/fz7/Pv6sH9LiD8AkEsCj0kAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0wChz4At4pa + /////f38//////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////f38////7OLWkk4KjUgBjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0sBjEUBl1cV7uXb/v39/Pz8/v7+/v7+ + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /v7+/////fz8////xaJ8iD8Aj0wCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsBiUAAzK2L/////Pz7/v7+//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////v7+/v39/fz7 + 9/LtomgsikIAj0sCj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAjkkAj0sBiUIApGww/Pn3/f38/f39//////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////fz7////3Mewi0QAj0oB + jkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkB + jUcE3sq2/////Pz7/v7+/v7+//////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////v7+/v7+/f38////tolXiD8Aj0wBjkkAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsBiD8AuIxb/////fz8/v7+ + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////v7+/fz7/v7+7eLWlVMSjUcCj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjUYBllYT8Ojf/v7+/f39/////v7+//////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////fz8////yKaBhz4AkEsBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAjkkAj0sBhz8AyaiF/////fz7/v7+/v7+//////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////v7+ + /v7+/v39/v39+PTxomktikIAj0sBj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oBikMAomgq+fXy/v39/f39//////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////v7+/fz7//// + 3Mixi0MBjkoCjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oBi0MA3ciy//// + /fz8/////v7+//////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////v7+/fz7/v79tIdVhz4AkEwC + jkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEwBhz8AtIdV/////f37/v7+/v7+//////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////v7+/////f38////7+belVUUjEYBj0oBj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAjkoAjUYBlFMO7uPZ/v7+/fz8//////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////v7+/v7+/fz7////y6yJiD8Aj0sCjkkAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjkkAkEwBhz4AyKaD/////fz7/v///v7+//////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////v7+/v38+ff0pW4yikEAj0sBj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0sBikIAoWgq + +vf1/f38/f39//7+//////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////v7+ + /////fz7////4M24jEUFj0kCjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkCjEYB3ciy/////fz7/////v7+ + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////v7+/v39/fz7/v39 + tolZhz4AkU4FkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwD + kEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwD + kEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwCkU0EiEAAtIVS/////f39/v7+///+//////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////v///v39////8OfdlVQQhDoAiD8A + iD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4A + iD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4A + iD4AiD4AiD4AiD8AhToAkU4K7+Xc/v7+/f38/////v7+//////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////7+/////v7+////38y4y6yNzrGQzrCQzrCQzrCQzrCQ + zrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQ + zrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrGS + yqqM38u2/////v79/v7+/v7+//////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////v7+/v7+/v7+/v79//////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////v79/v7+ + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////f38/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8 + /fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8 + /fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/f38/v7+/////v7+//////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + ////////////////////////////////////////////////////////////////////////AAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA= + + + \ No newline at end of file diff --git a/LFP_Manager_PRM/Forms/fmxExcelFile.Designer.cs b/LFP_Manager_PRM/Forms/fmxExcelFile.Designer.cs new file mode 100644 index 0000000..bcf88ab --- /dev/null +++ b/LFP_Manager_PRM/Forms/fmxExcelFile.Designer.cs @@ -0,0 +1,741 @@ +namespace LFP_Manager +{ + partial class fmxExcelFile + { + /// + /// Required designer variable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Clean up any resources being used. + /// + /// true if managed resources should be disposed; otherwise, false. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Windows Form Designer generated code + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(fmxExcelFile)); + this.layoutControl1 = new DevExpress.XtraLayout.LayoutControl(); + this.tbPcbSn = new DevExpress.XtraEditors.TextEdit(); + this.btnOpenDbFolder = new DevExpress.XtraEditors.SimpleButton(); + this.edResultCount = new DevExpress.XtraEditors.TextEdit(); + this.btnResultListClear = new DevExpress.XtraEditors.SimpleButton(); + this.btnSearchPcbSn = new DevExpress.XtraEditors.SimpleButton(); + this.btnOutputAll = new DevExpress.XtraEditors.SimpleButton(); + this.btnCheckMeasData = new DevExpress.XtraEditors.SimpleButton(); + this.btnCheckDimData = new DevExpress.XtraEditors.SimpleButton(); + this.btnCheckGroupData = new DevExpress.XtraEditors.SimpleButton(); + this.cbResultList = new DevExpress.XtraEditors.ComboBoxEdit(); + this.cbLotNo = new DevExpress.XtraEditors.ComboBoxEdit(); + this.btnExcuteTCell = new DevExpress.XtraEditors.SimpleButton(); + this.gbDbCommnad = new DevExpress.XtraEditors.GroupControl(); + this.layoutControl2 = new DevExpress.XtraLayout.LayoutControl(); + this.btnOpenSchema = new DevExpress.XtraEditors.SimpleButton(); + this.btnBmsDuplicateCheck = new DevExpress.XtraEditors.SimpleButton(); + this.btnQueryExcute = new DevExpress.XtraEditors.SimpleButton(); + this.layoutControlGroup2 = new DevExpress.XtraLayout.LayoutControlGroup(); + this.layoutControlItem5 = new DevExpress.XtraLayout.LayoutControlItem(); + this.layoutControlItem6 = new DevExpress.XtraLayout.LayoutControlItem(); + this.layoutControlItem7 = new DevExpress.XtraLayout.LayoutControlItem(); + this.tbSchema = new System.Windows.Forms.TextBox(); + this.gridCell = new System.Windows.Forms.DataGridView(); + this.btnFindFile = new DevExpress.XtraEditors.SimpleButton(); + this.edFileName = new DevExpress.XtraEditors.TextEdit(); + this.layoutControlGroup1 = new DevExpress.XtraLayout.LayoutControlGroup(); + this.layoutControlItem1 = new DevExpress.XtraLayout.LayoutControlItem(); + this.layoutControlItem2 = new DevExpress.XtraLayout.LayoutControlItem(); + this.emptySpaceItem1 = new DevExpress.XtraLayout.EmptySpaceItem(); + this.layoutControlItem3 = new DevExpress.XtraLayout.LayoutControlItem(); + this.layoutControlItem4 = new DevExpress.XtraLayout.LayoutControlItem(); + this.layoutControlItem8 = new DevExpress.XtraLayout.LayoutControlItem(); + this.layoutControlItem9 = new DevExpress.XtraLayout.LayoutControlItem(); + this.lcitemLot = new DevExpress.XtraLayout.LayoutControlItem(); + this.layoutControlItem10 = new DevExpress.XtraLayout.LayoutControlItem(); + this.emptySpaceItem2 = new DevExpress.XtraLayout.EmptySpaceItem(); + this.layoutControlItem11 = new DevExpress.XtraLayout.LayoutControlItem(); + this.layoutControlItem12 = new DevExpress.XtraLayout.LayoutControlItem(); + this.layoutControlItem13 = new DevExpress.XtraLayout.LayoutControlItem(); + this.layoutControlItem14 = new DevExpress.XtraLayout.LayoutControlItem(); + this.layoutControlItem15 = new DevExpress.XtraLayout.LayoutControlItem(); + this.layoutControlItem16 = new DevExpress.XtraLayout.LayoutControlItem(); + this.layoutControlItem18 = new DevExpress.XtraLayout.LayoutControlItem(); + this.layoutControlItem17 = new DevExpress.XtraLayout.LayoutControlItem(); + this.layoutControlItem19 = new DevExpress.XtraLayout.LayoutControlItem(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControl1)).BeginInit(); + this.layoutControl1.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.tbPcbSn.Properties)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.edResultCount.Properties)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.cbResultList.Properties)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.cbLotNo.Properties)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.gbDbCommnad)).BeginInit(); + this.gbDbCommnad.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControl2)).BeginInit(); + this.layoutControl2.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup2)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem5)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem6)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem7)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.gridCell)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.edFileName.Properties)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup1)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem1)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem2)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.emptySpaceItem1)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem3)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem4)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem8)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem9)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.lcitemLot)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem10)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.emptySpaceItem2)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem11)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem12)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem13)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem14)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem15)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem16)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem18)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem17)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem19)).BeginInit(); + this.SuspendLayout(); + // + // layoutControl1 + // + this.layoutControl1.Controls.Add(this.tbPcbSn); + this.layoutControl1.Controls.Add(this.btnOpenDbFolder); + this.layoutControl1.Controls.Add(this.edResultCount); + this.layoutControl1.Controls.Add(this.btnResultListClear); + this.layoutControl1.Controls.Add(this.btnSearchPcbSn); + this.layoutControl1.Controls.Add(this.btnOutputAll); + this.layoutControl1.Controls.Add(this.btnCheckMeasData); + this.layoutControl1.Controls.Add(this.btnCheckDimData); + this.layoutControl1.Controls.Add(this.btnCheckGroupData); + this.layoutControl1.Controls.Add(this.cbResultList); + this.layoutControl1.Controls.Add(this.cbLotNo); + this.layoutControl1.Controls.Add(this.btnExcuteTCell); + this.layoutControl1.Controls.Add(this.gbDbCommnad); + this.layoutControl1.Controls.Add(this.tbSchema); + this.layoutControl1.Controls.Add(this.gridCell); + this.layoutControl1.Controls.Add(this.btnFindFile); + this.layoutControl1.Controls.Add(this.edFileName); + this.layoutControl1.Dock = System.Windows.Forms.DockStyle.Fill; + this.layoutControl1.Location = new System.Drawing.Point(0, 0); + this.layoutControl1.Name = "layoutControl1"; + this.layoutControl1.OptionsCustomizationForm.DesignTimeCustomizationFormPositionAndSize = new System.Drawing.Rectangle(1347, 290, 250, 350); + this.layoutControl1.Root = this.layoutControlGroup1; + this.layoutControl1.Size = new System.Drawing.Size(999, 578); + this.layoutControl1.TabIndex = 0; + this.layoutControl1.Text = "layoutControl1"; + // + // tbPcbSn + // + this.tbPcbSn.Location = new System.Drawing.Point(681, 265); + this.tbPcbSn.Name = "tbPcbSn"; + this.tbPcbSn.Size = new System.Drawing.Size(163, 20); + this.tbPcbSn.StyleController = this.layoutControl1; + this.tbPcbSn.TabIndex = 23; + // + // btnOpenDbFolder + // + this.btnOpenDbFolder.Location = new System.Drawing.Point(876, 12); + this.btnOpenDbFolder.Name = "btnOpenDbFolder"; + this.btnOpenDbFolder.Size = new System.Drawing.Size(111, 22); + this.btnOpenDbFolder.StyleController = this.layoutControl1; + this.btnOpenDbFolder.TabIndex = 22; + this.btnOpenDbFolder.Text = "Open DB Folder"; + this.btnOpenDbFolder.Click += new System.EventHandler(this.btnOpenDbFolder_Click); + // + // edResultCount + // + this.edResultCount.Location = new System.Drawing.Point(89, 265); + this.edResultCount.Name = "edResultCount"; + this.edResultCount.Size = new System.Drawing.Size(59, 20); + this.edResultCount.StyleController = this.layoutControl1; + this.edResultCount.TabIndex = 21; + // + // btnResultListClear + // + this.btnResultListClear.Location = new System.Drawing.Point(402, 265); + this.btnResultListClear.Name = "btnResultListClear"; + this.btnResultListClear.Size = new System.Drawing.Size(89, 22); + this.btnResultListClear.StyleController = this.layoutControl1; + this.btnResultListClear.TabIndex = 20; + this.btnResultListClear.Text = "Clear"; + this.btnResultListClear.Click += new System.EventHandler(this.btnResultListClear_Click); + // + // btnSearchPcbSn + // + this.btnSearchPcbSn.Location = new System.Drawing.Point(848, 265); + this.btnSearchPcbSn.Name = "btnSearchPcbSn"; + this.btnSearchPcbSn.Size = new System.Drawing.Size(139, 22); + this.btnSearchPcbSn.StyleController = this.layoutControl1; + this.btnSearchPcbSn.TabIndex = 19; + this.btnSearchPcbSn.Text = "Search PCB SN"; + this.btnSearchPcbSn.Click += new System.EventHandler(this.btnModuleResult_Click); + // + // btnOutputAll + // + this.btnOutputAll.Location = new System.Drawing.Point(897, 229); + this.btnOutputAll.Name = "btnOutputAll"; + this.btnOutputAll.Size = new System.Drawing.Size(90, 32); + this.btnOutputAll.StyleController = this.layoutControl1; + this.btnOutputAll.TabIndex = 18; + this.btnOutputAll.Text = "Output All"; + this.btnOutputAll.Click += new System.EventHandler(this.btnOutputAll_Click); + // + // btnCheckMeasData + // + this.btnCheckMeasData.Location = new System.Drawing.Point(740, 229); + this.btnCheckMeasData.Name = "btnCheckMeasData"; + this.btnCheckMeasData.Size = new System.Drawing.Size(123, 32); + this.btnCheckMeasData.StyleController = this.layoutControl1; + this.btnCheckMeasData.TabIndex = 17; + this.btnCheckMeasData.Text = "Check Measure"; + this.btnCheckMeasData.Click += new System.EventHandler(this.btnCheckMeasData_Click); + // + // btnCheckDimData + // + this.btnCheckDimData.Location = new System.Drawing.Point(867, 197); + this.btnCheckDimData.Name = "btnCheckDimData"; + this.btnCheckDimData.Size = new System.Drawing.Size(120, 28); + this.btnCheckDimData.StyleController = this.layoutControl1; + this.btnCheckDimData.TabIndex = 16; + this.btnCheckDimData.Text = "Module Value"; + this.btnCheckDimData.Click += new System.EventHandler(this.btnCheckDimData_Click); + // + // btnCheckGroupData + // + this.btnCheckGroupData.Location = new System.Drawing.Point(740, 197); + this.btnCheckGroupData.Name = "btnCheckGroupData"; + this.btnCheckGroupData.Size = new System.Drawing.Size(123, 28); + this.btnCheckGroupData.StyleController = this.layoutControl1; + this.btnCheckGroupData.TabIndex = 15; + this.btnCheckGroupData.Text = "Inventory Value"; + this.btnCheckGroupData.Click += new System.EventHandler(this.btnCheckGroupData_Click); + // + // cbResultList + // + this.cbResultList.Location = new System.Drawing.Point(237, 265); + this.cbResultList.Name = "cbResultList"; + this.cbResultList.Properties.Appearance.Font = new System.Drawing.Font("Tahoma", 10F); + this.cbResultList.Properties.Appearance.Options.UseFont = true; + this.cbResultList.Properties.Buttons.AddRange(new DevExpress.XtraEditors.Controls.EditorButton[] { + new DevExpress.XtraEditors.Controls.EditorButton(DevExpress.XtraEditors.Controls.ButtonPredefines.Combo)}); + this.cbResultList.Size = new System.Drawing.Size(161, 22); + this.cbResultList.StyleController = this.layoutControl1; + this.cbResultList.TabIndex = 14; + this.cbResultList.SelectedIndexChanged += new System.EventHandler(this.cbResultList_SelectedIndexChanged); + // + // cbLotNo + // + this.cbLotNo.Location = new System.Drawing.Point(805, 147); + this.cbLotNo.Name = "cbLotNo"; + this.cbLotNo.Properties.Buttons.AddRange(new DevExpress.XtraEditors.Controls.EditorButton[] { + new DevExpress.XtraEditors.Controls.EditorButton(DevExpress.XtraEditors.Controls.ButtonPredefines.Combo)}); + this.cbLotNo.Size = new System.Drawing.Size(182, 20); + this.cbLotNo.StyleController = this.layoutControl1; + this.cbLotNo.TabIndex = 13; + // + // btnExcuteTCell + // + this.btnExcuteTCell.Location = new System.Drawing.Point(740, 171); + this.btnExcuteTCell.Name = "btnExcuteTCell"; + this.btnExcuteTCell.Size = new System.Drawing.Size(247, 22); + this.btnExcuteTCell.StyleController = this.layoutControl1; + this.btnExcuteTCell.TabIndex = 12; + this.btnExcuteTCell.Text = "SQL Excute"; + this.btnExcuteTCell.Click += new System.EventHandler(this.btnExcuteTCell_Click); + // + // gbDbCommnad + // + this.gbDbCommnad.Controls.Add(this.layoutControl2); + this.gbDbCommnad.Location = new System.Drawing.Point(740, 38); + this.gbDbCommnad.Name = "gbDbCommnad"; + this.gbDbCommnad.Size = new System.Drawing.Size(247, 105); + this.gbDbCommnad.TabIndex = 11; + this.gbDbCommnad.Text = "Management DB"; + // + // layoutControl2 + // + this.layoutControl2.Controls.Add(this.btnOpenSchema); + this.layoutControl2.Controls.Add(this.btnBmsDuplicateCheck); + this.layoutControl2.Controls.Add(this.btnQueryExcute); + this.layoutControl2.Dock = System.Windows.Forms.DockStyle.Fill; + this.layoutControl2.Location = new System.Drawing.Point(2, 23); + this.layoutControl2.Name = "layoutControl2"; + this.layoutControl2.Root = this.layoutControlGroup2; + this.layoutControl2.Size = new System.Drawing.Size(243, 80); + this.layoutControl2.TabIndex = 0; + this.layoutControl2.Text = "layoutControl2"; + // + // btnOpenSchema + // + this.btnOpenSchema.Location = new System.Drawing.Point(3, 3); + this.btnOpenSchema.Name = "btnOpenSchema"; + this.btnOpenSchema.Size = new System.Drawing.Size(237, 22); + this.btnOpenSchema.StyleController = this.layoutControl2; + this.btnOpenSchema.TabIndex = 8; + this.btnOpenSchema.Text = "Open Schema"; + this.btnOpenSchema.Click += new System.EventHandler(this.btnOpenSchema_Click); + // + // btnBmsDuplicateCheck + // + this.btnBmsDuplicateCheck.Location = new System.Drawing.Point(3, 55); + this.btnBmsDuplicateCheck.Name = "btnBmsDuplicateCheck"; + this.btnBmsDuplicateCheck.Size = new System.Drawing.Size(237, 22); + this.btnBmsDuplicateCheck.StyleController = this.layoutControl2; + this.btnBmsDuplicateCheck.TabIndex = 10; + this.btnBmsDuplicateCheck.Text = "BMS Duplicate Check"; + this.btnBmsDuplicateCheck.Click += new System.EventHandler(this.btnBmsDuplicateCheck_Click); + // + // btnQueryExcute + // + this.btnQueryExcute.Location = new System.Drawing.Point(3, 29); + this.btnQueryExcute.Name = "btnQueryExcute"; + this.btnQueryExcute.Size = new System.Drawing.Size(237, 22); + this.btnQueryExcute.StyleController = this.layoutControl2; + this.btnQueryExcute.TabIndex = 9; + this.btnQueryExcute.Text = "Query Excute"; + this.btnQueryExcute.Click += new System.EventHandler(this.btnQueryExcute_Click); + // + // layoutControlGroup2 + // + this.layoutControlGroup2.CustomizationFormText = "layoutControlGroup2"; + this.layoutControlGroup2.EnableIndentsWithoutBorders = DevExpress.Utils.DefaultBoolean.True; + this.layoutControlGroup2.GroupBordersVisible = false; + this.layoutControlGroup2.Items.AddRange(new DevExpress.XtraLayout.BaseLayoutItem[] { + this.layoutControlItem5, + this.layoutControlItem6, + this.layoutControlItem7}); + this.layoutControlGroup2.Name = "layoutControlGroup2"; + this.layoutControlGroup2.Padding = new DevExpress.XtraLayout.Utils.Padding(1, 1, 1, 1); + this.layoutControlGroup2.Size = new System.Drawing.Size(243, 80); + this.layoutControlGroup2.TextVisible = false; + // + // layoutControlItem5 + // + this.layoutControlItem5.Control = this.btnOpenSchema; + this.layoutControlItem5.CustomizationFormText = "layoutControlItem5"; + this.layoutControlItem5.Location = new System.Drawing.Point(0, 0); + this.layoutControlItem5.Name = "layoutControlItem5"; + this.layoutControlItem5.Size = new System.Drawing.Size(241, 26); + this.layoutControlItem5.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem5.TextVisible = false; + // + // layoutControlItem6 + // + this.layoutControlItem6.Control = this.btnQueryExcute; + this.layoutControlItem6.CustomizationFormText = "layoutControlItem6"; + this.layoutControlItem6.Location = new System.Drawing.Point(0, 26); + this.layoutControlItem6.Name = "layoutControlItem6"; + this.layoutControlItem6.Size = new System.Drawing.Size(241, 26); + this.layoutControlItem6.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem6.TextVisible = false; + // + // layoutControlItem7 + // + this.layoutControlItem7.Control = this.btnBmsDuplicateCheck; + this.layoutControlItem7.CustomizationFormText = "layoutControlItem7"; + this.layoutControlItem7.Location = new System.Drawing.Point(0, 52); + this.layoutControlItem7.Name = "layoutControlItem7"; + this.layoutControlItem7.Size = new System.Drawing.Size(241, 26); + this.layoutControlItem7.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem7.TextVisible = false; + // + // tbSchema + // + this.tbSchema.Location = new System.Drawing.Point(12, 38); + this.tbSchema.Multiline = true; + this.tbSchema.Name = "tbSchema"; + this.tbSchema.ScrollBars = System.Windows.Forms.ScrollBars.Both; + this.tbSchema.Size = new System.Drawing.Size(724, 223); + this.tbSchema.TabIndex = 7; + // + // gridCell + // + this.gridCell.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize; + this.gridCell.Location = new System.Drawing.Point(12, 291); + this.gridCell.Name = "gridCell"; + this.gridCell.RowTemplate.Height = 23; + this.gridCell.Size = new System.Drawing.Size(975, 275); + this.gridCell.TabIndex = 6; + // + // btnFindFile + // + this.btnFindFile.Location = new System.Drawing.Point(740, 12); + this.btnFindFile.Name = "btnFindFile"; + this.btnFindFile.Size = new System.Drawing.Size(132, 22); + this.btnFindFile.StyleController = this.layoutControl1; + this.btnFindFile.TabIndex = 5; + this.btnFindFile.Text = "Find File ...."; + this.btnFindFile.Click += new System.EventHandler(this.btnFindFile_Click); + // + // edFileName + // + this.edFileName.Location = new System.Drawing.Point(89, 12); + this.edFileName.Name = "edFileName"; + this.edFileName.Size = new System.Drawing.Size(647, 20); + this.edFileName.StyleController = this.layoutControl1; + this.edFileName.TabIndex = 4; + // + // layoutControlGroup1 + // + this.layoutControlGroup1.CustomizationFormText = "layoutControlGroup1"; + this.layoutControlGroup1.EnableIndentsWithoutBorders = DevExpress.Utils.DefaultBoolean.True; + this.layoutControlGroup1.GroupBordersVisible = false; + this.layoutControlGroup1.Items.AddRange(new DevExpress.XtraLayout.BaseLayoutItem[] { + this.layoutControlItem1, + this.layoutControlItem2, + this.emptySpaceItem1, + this.layoutControlItem3, + this.layoutControlItem4, + this.layoutControlItem8, + this.layoutControlItem9, + this.lcitemLot, + this.layoutControlItem10, + this.emptySpaceItem2, + this.layoutControlItem11, + this.layoutControlItem12, + this.layoutControlItem13, + this.layoutControlItem14, + this.layoutControlItem15, + this.layoutControlItem16, + this.layoutControlItem18, + this.layoutControlItem17, + this.layoutControlItem19}); + this.layoutControlGroup1.Name = "layoutControlGroup1"; + this.layoutControlGroup1.Size = new System.Drawing.Size(999, 578); + this.layoutControlGroup1.TextVisible = false; + // + // layoutControlItem1 + // + this.layoutControlItem1.Control = this.edFileName; + this.layoutControlItem1.CustomizationFormText = "layoutControlItem1"; + this.layoutControlItem1.Location = new System.Drawing.Point(0, 0); + this.layoutControlItem1.MinSize = new System.Drawing.Size(162, 24); + this.layoutControlItem1.Name = "layoutControlItem1"; + this.layoutControlItem1.Size = new System.Drawing.Size(728, 26); + this.layoutControlItem1.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem1.Text = "File Name: "; + this.layoutControlItem1.TextSize = new System.Drawing.Size(74, 14); + // + // layoutControlItem2 + // + this.layoutControlItem2.Control = this.btnFindFile; + this.layoutControlItem2.CustomizationFormText = "layoutControlItem2"; + this.layoutControlItem2.Location = new System.Drawing.Point(728, 0); + this.layoutControlItem2.MinSize = new System.Drawing.Size(93, 26); + this.layoutControlItem2.Name = "layoutControlItem2"; + this.layoutControlItem2.Size = new System.Drawing.Size(136, 26); + this.layoutControlItem2.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem2.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem2.TextVisible = false; + // + // emptySpaceItem1 + // + this.emptySpaceItem1.AllowHotTrack = false; + this.emptySpaceItem1.CustomizationFormText = "emptySpaceItem1"; + this.emptySpaceItem1.Location = new System.Drawing.Point(855, 217); + this.emptySpaceItem1.Name = "emptySpaceItem1"; + this.emptySpaceItem1.Size = new System.Drawing.Size(30, 36); + this.emptySpaceItem1.TextSize = new System.Drawing.Size(0, 0); + // + // layoutControlItem3 + // + this.layoutControlItem3.Control = this.gridCell; + this.layoutControlItem3.CustomizationFormText = "layoutControlItem3"; + this.layoutControlItem3.Location = new System.Drawing.Point(0, 279); + this.layoutControlItem3.MinSize = new System.Drawing.Size(104, 24); + this.layoutControlItem3.Name = "layoutControlItem3"; + this.layoutControlItem3.Size = new System.Drawing.Size(979, 279); + this.layoutControlItem3.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem3.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem3.TextVisible = false; + // + // layoutControlItem4 + // + this.layoutControlItem4.Control = this.tbSchema; + this.layoutControlItem4.CustomizationFormText = "layoutControlItem4"; + this.layoutControlItem4.Location = new System.Drawing.Point(0, 26); + this.layoutControlItem4.MinSize = new System.Drawing.Size(132, 24); + this.layoutControlItem4.Name = "layoutControlItem4"; + this.layoutControlItem4.Size = new System.Drawing.Size(728, 227); + this.layoutControlItem4.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem4.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem4.TextVisible = false; + // + // layoutControlItem8 + // + this.layoutControlItem8.Control = this.gbDbCommnad; + this.layoutControlItem8.CustomizationFormText = "layoutControlItem8"; + this.layoutControlItem8.Location = new System.Drawing.Point(728, 26); + this.layoutControlItem8.Name = "layoutControlItem8"; + this.layoutControlItem8.Size = new System.Drawing.Size(251, 109); + this.layoutControlItem8.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem8.TextVisible = false; + // + // layoutControlItem9 + // + this.layoutControlItem9.Control = this.btnExcuteTCell; + this.layoutControlItem9.CustomizationFormText = "layoutControlItem9"; + this.layoutControlItem9.Location = new System.Drawing.Point(728, 159); + this.layoutControlItem9.Name = "layoutControlItem9"; + this.layoutControlItem9.Size = new System.Drawing.Size(251, 26); + this.layoutControlItem9.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem9.TextVisible = false; + // + // lcitemLot + // + this.lcitemLot.Control = this.cbLotNo; + this.lcitemLot.CustomizationFormText = " Lot No"; + this.lcitemLot.Location = new System.Drawing.Point(728, 135); + this.lcitemLot.Name = "lcitemLot"; + this.lcitemLot.Size = new System.Drawing.Size(251, 24); + this.lcitemLot.Text = " Lot No"; + this.lcitemLot.TextAlignMode = DevExpress.XtraLayout.TextAlignModeItem.CustomSize; + this.lcitemLot.TextSize = new System.Drawing.Size(60, 14); + this.lcitemLot.TextToControlDistance = 5; + // + // layoutControlItem10 + // + this.layoutControlItem10.Control = this.cbResultList; + this.layoutControlItem10.CustomizationFormText = " Result List"; + this.layoutControlItem10.Location = new System.Drawing.Point(140, 253); + this.layoutControlItem10.MaxSize = new System.Drawing.Size(0, 26); + this.layoutControlItem10.MinSize = new System.Drawing.Size(187, 26); + this.layoutControlItem10.Name = "layoutControlItem10"; + this.layoutControlItem10.Size = new System.Drawing.Size(250, 26); + this.layoutControlItem10.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem10.Text = " Result List"; + this.layoutControlItem10.TextAlignMode = DevExpress.XtraLayout.TextAlignModeItem.CustomSize; + this.layoutControlItem10.TextSize = new System.Drawing.Size(80, 14); + this.layoutControlItem10.TextToControlDistance = 5; + // + // emptySpaceItem2 + // + this.emptySpaceItem2.AllowHotTrack = false; + this.emptySpaceItem2.CustomizationFormText = "emptySpaceItem2"; + this.emptySpaceItem2.Location = new System.Drawing.Point(483, 253); + this.emptySpaceItem2.Name = "emptySpaceItem2"; + this.emptySpaceItem2.Size = new System.Drawing.Size(109, 26); + this.emptySpaceItem2.TextSize = new System.Drawing.Size(0, 0); + // + // layoutControlItem11 + // + this.layoutControlItem11.Control = this.btnCheckGroupData; + this.layoutControlItem11.CustomizationFormText = "layoutControlItem11"; + this.layoutControlItem11.Location = new System.Drawing.Point(728, 185); + this.layoutControlItem11.MinSize = new System.Drawing.Size(93, 26); + this.layoutControlItem11.Name = "layoutControlItem11"; + this.layoutControlItem11.Size = new System.Drawing.Size(127, 32); + this.layoutControlItem11.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem11.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem11.TextVisible = false; + // + // layoutControlItem12 + // + this.layoutControlItem12.Control = this.btnCheckDimData; + this.layoutControlItem12.CustomizationFormText = "layoutControlItem12"; + this.layoutControlItem12.Location = new System.Drawing.Point(855, 185); + this.layoutControlItem12.MinSize = new System.Drawing.Size(93, 26); + this.layoutControlItem12.Name = "layoutControlItem12"; + this.layoutControlItem12.Size = new System.Drawing.Size(124, 32); + this.layoutControlItem12.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem12.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem12.TextVisible = false; + // + // layoutControlItem13 + // + this.layoutControlItem13.Control = this.btnCheckMeasData; + this.layoutControlItem13.CustomizationFormText = "layoutControlItem13"; + this.layoutControlItem13.Location = new System.Drawing.Point(728, 217); + this.layoutControlItem13.MinSize = new System.Drawing.Size(93, 26); + this.layoutControlItem13.Name = "layoutControlItem13"; + this.layoutControlItem13.Size = new System.Drawing.Size(127, 36); + this.layoutControlItem13.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem13.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem13.TextVisible = false; + // + // layoutControlItem14 + // + this.layoutControlItem14.Control = this.btnOutputAll; + this.layoutControlItem14.CustomizationFormText = "layoutControlItem14"; + this.layoutControlItem14.Location = new System.Drawing.Point(885, 217); + this.layoutControlItem14.MinSize = new System.Drawing.Size(93, 26); + this.layoutControlItem14.Name = "layoutControlItem14"; + this.layoutControlItem14.Size = new System.Drawing.Size(94, 36); + this.layoutControlItem14.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem14.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem14.TextVisible = false; + // + // layoutControlItem15 + // + this.layoutControlItem15.Control = this.btnSearchPcbSn; + this.layoutControlItem15.CustomizationFormText = "layoutControlItem15"; + this.layoutControlItem15.Location = new System.Drawing.Point(836, 253); + this.layoutControlItem15.MinSize = new System.Drawing.Size(93, 26); + this.layoutControlItem15.Name = "layoutControlItem15"; + this.layoutControlItem15.Size = new System.Drawing.Size(143, 26); + this.layoutControlItem15.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem15.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem15.TextVisible = false; + // + // layoutControlItem16 + // + this.layoutControlItem16.Control = this.btnResultListClear; + this.layoutControlItem16.CustomizationFormText = "layoutControlItem16"; + this.layoutControlItem16.Location = new System.Drawing.Point(390, 253); + this.layoutControlItem16.MinSize = new System.Drawing.Size(93, 26); + this.layoutControlItem16.Name = "layoutControlItem16"; + this.layoutControlItem16.Size = new System.Drawing.Size(93, 26); + this.layoutControlItem16.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem16.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem16.TextVisible = false; + // + // layoutControlItem18 + // + this.layoutControlItem18.Control = this.btnOpenDbFolder; + this.layoutControlItem18.Location = new System.Drawing.Point(864, 0); + this.layoutControlItem18.Name = "layoutControlItem18"; + this.layoutControlItem18.Size = new System.Drawing.Size(115, 26); + this.layoutControlItem18.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem18.TextVisible = false; + // + // layoutControlItem17 + // + this.layoutControlItem17.Control = this.edResultCount; + this.layoutControlItem17.CustomizationFormText = "layoutControlItem17"; + this.layoutControlItem17.Location = new System.Drawing.Point(0, 253); + this.layoutControlItem17.MinSize = new System.Drawing.Size(54, 24); + this.layoutControlItem17.Name = "layoutControlItem17"; + this.layoutControlItem17.Size = new System.Drawing.Size(140, 26); + this.layoutControlItem17.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem17.Text = "Result Count "; + this.layoutControlItem17.TextSize = new System.Drawing.Size(74, 14); + // + // layoutControlItem19 + // + this.layoutControlItem19.Control = this.tbPcbSn; + this.layoutControlItem19.Location = new System.Drawing.Point(592, 253); + this.layoutControlItem19.MinSize = new System.Drawing.Size(131, 24); + this.layoutControlItem19.Name = "layoutControlItem19"; + this.layoutControlItem19.Size = new System.Drawing.Size(244, 26); + this.layoutControlItem19.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem19.Text = "PCB SN"; + this.layoutControlItem19.TextSize = new System.Drawing.Size(74, 14); + // + // fmxExcelFile + // + this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 14F); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.ClientSize = new System.Drawing.Size(999, 578); + this.Controls.Add(this.layoutControl1); + this.IconOptions.Icon = ((System.Drawing.Icon)(resources.GetObject("fmxExcelFile.IconOptions.Icon"))); + this.Name = "fmxExcelFile"; + this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen; + this.Text = "Database Control"; + this.Load += new System.EventHandler(this.fmxExcelFile_Load); + ((System.ComponentModel.ISupportInitialize)(this.layoutControl1)).EndInit(); + this.layoutControl1.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.tbPcbSn.Properties)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.edResultCount.Properties)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.cbResultList.Properties)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.cbLotNo.Properties)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.gbDbCommnad)).EndInit(); + this.gbDbCommnad.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.layoutControl2)).EndInit(); + this.layoutControl2.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup2)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem5)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem6)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem7)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.gridCell)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.edFileName.Properties)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup1)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem1)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem2)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.emptySpaceItem1)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem3)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem4)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem8)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem9)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.lcitemLot)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem10)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.emptySpaceItem2)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem11)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem12)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem13)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem14)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem15)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem16)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem18)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem17)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem19)).EndInit(); + this.ResumeLayout(false); + + } + + #endregion + + private DevExpress.XtraLayout.LayoutControl layoutControl1; + private DevExpress.XtraLayout.LayoutControlGroup layoutControlGroup1; + private DevExpress.XtraEditors.SimpleButton btnFindFile; + private DevExpress.XtraEditors.TextEdit edFileName; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem1; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem2; + private DevExpress.XtraLayout.EmptySpaceItem emptySpaceItem1; + private System.Windows.Forms.DataGridView gridCell; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem3; + private System.Windows.Forms.TextBox tbSchema; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem4; + private DevExpress.XtraEditors.SimpleButton btnOpenSchema; + private DevExpress.XtraEditors.SimpleButton btnQueryExcute; + private DevExpress.XtraEditors.SimpleButton btnBmsDuplicateCheck; + private DevExpress.XtraEditors.GroupControl gbDbCommnad; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem8; + private DevExpress.XtraLayout.LayoutControl layoutControl2; + private DevExpress.XtraLayout.LayoutControlGroup layoutControlGroup2; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem5; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem6; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem7; + private DevExpress.XtraEditors.SimpleButton btnExcuteTCell; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem9; + private DevExpress.XtraEditors.ComboBoxEdit cbLotNo; + private DevExpress.XtraLayout.LayoutControlItem lcitemLot; + private DevExpress.XtraEditors.ComboBoxEdit cbResultList; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem10; + private DevExpress.XtraLayout.EmptySpaceItem emptySpaceItem2; + private DevExpress.XtraEditors.SimpleButton btnCheckGroupData; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem11; + private DevExpress.XtraEditors.SimpleButton btnCheckDimData; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem12; + private DevExpress.XtraEditors.SimpleButton btnCheckMeasData; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem13; + private DevExpress.XtraEditors.SimpleButton btnOutputAll; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem14; + private DevExpress.XtraEditors.SimpleButton btnSearchPcbSn; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem15; + private DevExpress.XtraEditors.SimpleButton btnResultListClear; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem16; + private DevExpress.XtraEditors.TextEdit edResultCount; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem17; + private DevExpress.XtraEditors.SimpleButton btnOpenDbFolder; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem18; + private DevExpress.XtraEditors.TextEdit tbPcbSn; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem19; + } +} \ No newline at end of file diff --git a/LFP_Manager_PRM/Forms/fmxExcelFile.cs b/LFP_Manager_PRM/Forms/fmxExcelFile.cs new file mode 100644 index 0000000..0c8603c --- /dev/null +++ b/LFP_Manager_PRM/Forms/fmxExcelFile.cs @@ -0,0 +1,391 @@ +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Data; +using System.Drawing; +using System.Text; +using System.Linq; +using System.Windows.Forms; +using DevExpress.XtraEditors; +using System.Data.SQLite; + +using System.IO; + +using System.Data.OleDb; +using LFP_Manager.DataStructure; +using LFP_Manager.Function; +using LFP_Manager.Utils; +using DevExpress.Utils.FormShadow; + +namespace LFP_Manager +{ + public partial class fmxExcelFile : DevExpress.XtraEditors.XtraForm + { + #region VARIABLES + + CommConfig Config; + string[] dbFiles; + //private string Excel03ConString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source={0};Extended Properties='Excel 8.0;HDR={1}'"; + //private string Excel07ConString = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source={0};Extended Properties='Excel 8.0;HDR={1}'"; + //Workbook workbook; + DataSet dsCell; + DataTable dtCell; + + #endregion + + #region CONSTRUCTORS + + public fmxExcelFile(CommConfig aConfig) + { + InitializeComponent(); + + Config = aConfig; + + //tbSchema.Text = "select * from TInventoryData" + "\r\n" + "where pcb_sn like 'BMU18SA20120169%'"; + } + + #endregion + + #region FORM EVENT + private void fmxExcelFile_Load(object sender, EventArgs e) + { + string dbfilePath = Path.GetDirectoryName(Application.ExecutablePath) + @"\db"; + dbFiles = Directory.GetFiles(dbfilePath, "*.db", SearchOption.AllDirectories); + + if (dbFiles.Length > 0) + { + for (int i = 0; i < dbFiles.Length; i++) + { + cbLotNo.Properties.Items.Add(Path.GetFileName(dbFiles[i])); + } + cbLotNo.SelectedIndex = 0; + } + } + #endregion + + // Copy Table Value + // INSERT INTO TModuleResultBak SELECT * FROM TModuleResult + // INSERT INTO [TModuleBmsBak] (sn, result, module_ocv_b) SELECT sn, result, module_ocv_b FROM TModuleBms + + #region BUTTON EVENT + private void btnFindFile_Click(object sender, EventArgs e) + { + OpenFileDialog oDialog = new OpenFileDialog(); + oDialog.DefaultExt = "*.*"; + oDialog.Filter = "excel files 2003 (*.xls)|*.xls|excel files 2007 (*.xlsx)|*.xlsx|All files (*.*)|*.*"; + + if (oDialog.ShowDialog() == DialogResult.OK) + { + edFileName.Text = oDialog.FileName; + + try + { + dsCell = csExcelControl.OpenExcelDB(edFileName.Text); + + cbResultList.Properties.Items.Clear(); + for (int i = 0; i < dsCell.Tables.Count; i++) + { + cbResultList.Properties.Items.Add(dsCell.Tables[i].TableName); + } + cbResultList.SelectedIndex = 0; + + dtCell = dsCell.Tables[0]; + + gridCell.DataSource = dtCell; + } + catch (Exception ex) + { + MessageBox.Show(ex.Message, "Exception", MessageBoxButtons.OK, MessageBoxIcon.Error); + } + } + } + + private void btnExcuteTCell_Click(object sender, EventArgs e) + { + if (tbSchema.Text != string.Empty) + { + try + { + //string path = cbLotNo.Text.Substring(0, 9); + //string path = cbLotNo.Text; + string path = dbFiles[cbLotNo.SelectedIndex]; + DataTable aaa = csDbUtils.DbSqlExcuteA3(path, tbSchema.Text); + if (aaa != null) + { + gridCell.DataSource = aaa; + edResultCount.Text = String.Format("{0}", aaa.Rows.Count); + + if (aaa.Rows.Count > 0) + { + var ddd = aaa.Rows[0]["pcb_sn"]; + byte[] ccc = Encoding.UTF8.GetBytes(ddd.ToString()); + } + } + } + catch (Exception ex) + { + MessageBox.Show(ex.Message, "Exception", MessageBoxButtons.OK, MessageBoxIcon.Exclamation); + } + } + } + + private void btnOpenSchema_Click(object sender, EventArgs e) + { + OpenFileDialog oDialog = new OpenFileDialog(); + oDialog.DefaultExt = "*.*"; + oDialog.Filter = "sql files (*.sql)|*.sql|All files (*.*)|*.*"; + + if (oDialog.ShowDialog() == DialogResult.OK) + { + string text = System.IO.File.ReadAllText(oDialog.FileName); + tbSchema.Text = text; + } + } + + private void btnQueryExcute_Click(object sender, EventArgs e) + { + if (tbSchema.Text != string.Empty) + { + gridCell.DataSource = csDbUtils.DbSqlExcuteA(Config, Application.ExecutablePath, tbSchema.Text); + } + } + + private void btnInsertDbByTable_Click(object sender, EventArgs e) + { + } + + private void btnCheckGroupData_Click(object sender, EventArgs e) + { + tbSchema.Text = "select * from TInventoryData"; + } + + private void btnCheckDimData_Click(object sender, EventArgs e) + { + tbSchema.Text = "select * from TModuleValue"; + } + + private void btnCheckMeasData_Click(object sender, EventArgs e) + { + tbSchema.Text = "select * from TModuleMeasurement"; + } + private void btnOutputAll_Click(object sender, EventArgs e) + { + if (cbResultList.Properties.Items.Count > 0) + { + for (int i = 0; i < cbResultList.Properties.Items.Count; i++) + { + string sn = cbResultList.Properties.Items[i].ToString(); + MakeOutpuDataExcel(sn, cbLotNo.Text); + } + } + } + private void btnModuleResult_Click(object sender, EventArgs e) + { + // + try + { + string dbFilePath = dbFiles[cbLotNo.SelectedIndex]; + string sql = String.Format("SELECT * FROM TInventoryData") + + String.Format(" where pcb_sn like '{0}%'", tbPcbSn.Text) + ; + DataTable dtBmsData = csDbUtils.DbSqlExcuteA3(dbFilePath, sql); + dtBmsData.TableName = "TInventoryData"; + + if ((dtBmsData != null) && (dtBmsData.Rows.Count > 0)) + { + cbResultList.Properties.Items.Clear(); + + for (int i = 0; i < dtBmsData.Rows.Count; i++) + { + cbResultList.Properties.Items.Add(String.Format("{0}", dtBmsData.Rows[i]["pcb_sn"])); + } + gridCell.DataSource = dtBmsData; + edResultCount.Text = dtBmsData.Rows.Count.ToString(); + cbResultList.SelectedIndex = 0; + } + else + { + MessageBox.Show(String.Format("No TModuleResult data - {0}", dbFilePath)); + } + } + catch (Exception ex) + { + MessageBox.Show(ex.Message); + } + } + private void btnResultListClear_Click(object sender, EventArgs e) + { + cbResultList.Properties.Items.Clear(); + } + + private void btnBmsDuplicateCheck_Click(object sender, EventArgs e) + { + List result = new List(); + DateTime aDate = DateTime.Now; + + DataTable dtBattPropValue = new DataTable(); + DataTable dtBmsMatch = new DataTable(); + DataTable dtErrorLog = new DataTable(); + + string dbFilePath = dbFiles[cbLotNo.SelectedIndex]; ; + string sql; + + sql = String.Format("SELECT * FROM TBattPropValue"); + dtBattPropValue = csDbUtils.DbSqlExcuteA3(dbFilePath, sql); + dtBattPropValue.TableName = "TBattPropValue"; + + if (dtBattPropValue.Rows.Count == 0) + { + MessageBox.Show("No Battery Property Vaule data", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); + return; + } + + Forms.fmxWait WaitForm = new Forms.fmxWait + { + StartPosition = FormStartPosition.CenterScreen + }; + + try + { + WaitForm.Show(); + + sql = String.Format("SELECT * FROM TBmsPcbMatchTable"); + dtBmsMatch = csDbUtils.DbSqlExcuteA3(dbFilePath, sql); + dtBmsMatch.TableName = "TBmsPcbMatchTable"; + + for (int i = 0; i < dtBattPropValue.Rows.Count; i++) + { + try + { + csDbUtils.BmsPcbMatchDataInsert(dbFilePath, dtBattPropValue.Rows[i]); + } + catch (SQLiteException sqle) + { + // Handle DB exception + string eMsg = String.Format("[{0}]{1} - [{2:##0}] - {3}", sqle.ErrorCode, sqle.Message, i, dtBattPropValue.Rows[i]["PCB1_SERIAL_NUMBER"]); + result.Add(eMsg); + csDbUtils.ErrorLogInsert(dbFilePath, dtBattPropValue.Rows[i], "DUPLICATION CHECK", "SQLiteException", eMsg); + } + catch (IndexOutOfRangeException ie) + { + // If you think there might be a problem with index range in the loop, for example + string eMsg = String.Format("{0} - [{1:##0}] - {2}", ie.Message, i, dtBattPropValue.Rows[i]["PCB1_SERIAL_NUMBER"]); + result.Add(eMsg); + csDbUtils.ErrorLogInsert(dbFilePath, dtBattPropValue.Rows[i], "DUPLICATION CHECK", "IndexOutOfRangeException", eMsg); + } + catch (Exception ex) + { + string eMsg = String.Format("{0} - [{1:##0}] - {2}", ex.Message, i, dtBattPropValue.Rows[i]["PCB1_SERIAL_NUMBER"]); + result.Add(eMsg); + csDbUtils.ErrorLogInsert(dbFilePath, dtBattPropValue.Rows[i], "DUPLICATION CHECK", "Exception", eMsg); + } + WaitForm.SetDescription(String.Format("{0}//{1}", i + 1, dtBattPropValue.Rows.Count)); + System.Windows.Forms.Application.DoEvents(); + } + } + catch (Exception ex) + { + MessageBox.Show(ex.Message, "Exception", MessageBoxButtons.OK, MessageBoxIcon.Error); + return; + } + finally + { + sql = String.Format("SELECT * FROM TErrorLogTable"); + dtErrorLog = csDbUtils.DbSqlExcuteA3(dbFilePath, sql); + dtErrorLog.TableName = "TErrorLogTable"; + + gridCell.DataSource = dtErrorLog; + + if (WaitForm != null) + WaitForm.Close(); + } + } + + private void btnOpenDbFolder_Click(object sender, EventArgs e) + { + System.Diagnostics.Process ps = new System.Diagnostics.Process(); + ps.StartInfo.FileName = "explorer.exe"; + ps.StartInfo.Arguments = csDbUtils.GetDbFolder(Application.ExecutablePath); + ps.StartInfo.WorkingDirectory = csDbUtils.GetDbFolder(Application.ExecutablePath); + ps.StartInfo.WindowStyle = System.Diagnostics.ProcessWindowStyle.Normal; + + ps.Start(); + } + #endregion + + #region COMPONENT EVETNT + private void cbResultList_SelectedIndexChanged(object sender, EventArgs e) + { + string tbName = ""; + tbName = cbResultList.Text; + + if ((dtCell != null) && (dtCell.Rows.Count > 0)) + { + if (tbName != "") + { + int index = cbResultList.SelectedIndex; + dtCell = dsCell.Tables[index]; + gridCell.DataSource = dtCell; + } + } + } + #endregion + + #region MAKE OUTPUT FUNCTION + private void MakeOutpuDataExcel(string mSN, string dbFile) + { + DateTime aDate = DateTime.Now; + string filename = String.Format("{0}_PR_57150.xls", mSN); + string filepath = + Path.GetDirectoryName(Application.ExecutablePath) + + String.Format(@"\output\{0}\", csDbUtils.MakeMdSnLotNumber(mSN)) + + filename; + + DataTable dtModuleResult = new DataTable(); + DataTable dtCellResult = new DataTable(); + + string sql; + sql = String.Format("SELECT * FROM TModuleResult where m_sn = {0}", mSN); + dtModuleResult = csDbUtils.GetDataTableBySelectFromDbName(dbFile, sql, "TModuleResult"); + dtModuleResult.TableName = "TModuleResult"; + dtModuleResult.AcceptChanges(); + + sql = String.Format("SELECT * FROM TCellResult where m_sn = {0}", mSN); + dtCellResult = csDbUtils.GetDataTableBySelectFromDbName(dbFile, sql, "TCellResult"); + dtCellResult.TableName = "TCellResult"; + dtCellResult.AcceptChanges(); + + if (dtModuleResult.Rows.Count == 0) throw new Exception(String.Format("No ModuleResult data ({0})", mSN)); + if (dtCellResult.Rows.Count == 0) throw new Exception(String.Format("No CellResult data ({0})", mSN)); + + csExcelExport.ExportToExcel(dtModuleResult, filepath); + csExcelExport.ExportToExcel(dtCellResult, filepath, false); + } + + private DataTable GetModuleResultTable(string dbFileName) + { + DateTime aDate = DateTime.Now; + + DataTable dtModuleResult = new DataTable(); + + string sql; + sql = String.Format("SELECT * FROM TModuleResult"); + dtModuleResult = csDbUtils.GetDataTableBySelectFromDbName(dbFileName, sql, "TModuleResult"); + dtModuleResult.TableName = "TModuleResult"; + dtModuleResult.AcceptChanges(); + + if (dtModuleResult.Rows.Count == 0) throw new Exception(String.Format("No ModuleResult data ({0})", dbFileName)); + + return dtModuleResult; + } + + #endregion + + + + private void MakeBattPropValue() + { + } + + } +} \ No newline at end of file diff --git a/LFP_Manager_PRM/Forms/fmxExcelFile.resx b/LFP_Manager_PRM/Forms/fmxExcelFile.resx new file mode 100644 index 0000000..f817555 --- /dev/null +++ b/LFP_Manager_PRM/Forms/fmxExcelFile.resx @@ -0,0 +1,4571 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + + + AAABAAQAICAAAAEAGACoDAAARgAAADAwAAABABgAqBwAAO4MAACAgAAAAQAYACjIAACWKQAAAAAAAAEA + GAAoIAMAvvEAACgAAAAgAAAAQAAAAAEAGAAAAAAAgAwAAAAAAAAAAAAAAAAAAAAAAAD///////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + ///////////////////////////////////////////////////+/v7+/v7+/v7+/v7+/v7+/v7+/v7/ + ///+/v7////////////////////////////////////////////////////////+/v7+/v7+/v7+/v7+ + /v7+/v7+/v7+/v7+/v7////+/v7+/v3+/v3+/v3+/v7+/f3////////+/v7///////////////////// + ///////////////////////////+/v7////+/v7+/f3+/v7+/v3+/v3+/v3+/v7////7+ff///////// + ///////////////+/v3+/v7////+/v7////////////////////////////////////////+/v7////+ + /v7+/v7////////////////////////7+PbCnHejazCkbTKkbDKlbjSdYTDLrIr////9/Pz+/v7///// + ///////////////////////////////////////////+/v79/fz////BnHSeYjClbjSkbDKkbDOjazDc + x7L49PGkbDKEOACKQwCJQQCHPgCNRwTt49n+/v39/Pz+/v7+/v7///////////////////////////// + ///+/v7+/v79/Pv//v7j0sKHPgCJQACJQQCLRACCNgCufkv////////q3tKOSQePSgSPSwKRTQSHPgCt + e0f////9/Pv+/v7////////////////////////////////+/v7////9/f39/Pv9/PuiaS6JQQCQTQOP + SwKNSAOUUxLz7ef+/f37+Pb////AmnKGOwCQTAKOSQCPSwKHPwDaxa7////8+/r+/v7+/v7///////// + ///////////+/v7///7+/v77+vj////OsJGGPACQTAKOSQCQTAKGPADNr4/////7+ff9/Pv9/fz38u6Z + WhuLQwCPSgGPSgGLRQGcXyH59vP9/fz9/fz////+/v7////////+/v7+/v7////+/v77+vn////u5NqS + Tw+OSAKOSQCPSwKJQACiai/8+vn9/Pz9/f3+///9/Pv////WvqWHPQCQTAOOSQCQTQOGPADDn3j////8 + +/r+/v7////+/v7+/v7+/v79/fz8+/r9/f3////u49mdYSiKQwCPSwGOSQCPSwKKQgDi0L/////9/Pv+ + /v7//v7+/v79/Pz///+seUOIPwCQTAKOSQCOSQKNSAbq39P+/v39/Pz+/v7////////////////////+ + /v7SuJ6WVRiLRQCRTwaQTASSUAeHPgC4jV7////9/Pv+/v7////+/v7+/v79/Pz+/v7r39SOSQeOSgKO + SQCQSwKHPwCsekT+/v/9/Pz+/v78+/r49PDy6uPi0cDDn3yZXB9/MACEOACHPgCGOwCFPACEOgCTURDz + 7Ob9/fz9/f3////+/v7////////+/v78+/r////CnneGPACQTAKOSQCQTAKHPgDYwan////9/Pz38u7o + 2szgzbvTuZ/MrY/St5zeyrTcyLLcx7Hcx7HdybPVvKfl1cX////9/fz+/v7+/v7////////+/v7////9 + /f39/Pz59fObXiCKQwCPSgGPSgGLRAGaXB349PH9/fz+/v/////////////////28e3AmnrEn3rDn3nE + oXu+lnbcxrD////9/Pv+/v7////////////////////+/v7+/v79/Pv////bxa+HPgCPSwKOSQCQTAKG + PADAmnH////8+/r9/fz9/Pv7+ff9/Purd0F/MACGOwCFOgCEOQCEOADj0sH+/fz9/Pz+/v7+/v7///// + ///////////////////+/v79/Pz///+ufkqHPgCQTAKOSQCOSgKNRwPp3M/+/v79/Pv8+/r////YwaqH + PgCSTwaQTAOSTwaHPgDDn3n////9/Pv+/v7////////////////////////////+/v7+/v79/Pz+/v7t + 4tiNSAaNSAKOSQCQTAKJQQCqd0D+/v79/Pv9/fz49fKbXyCMRQGPSwGPSgGLRAGYWRn38+/9/fz9/f3/ + ///+/v7///////////////////////////////7+/v79/Pv////EoHqFOwCQTQOOSQCQTQOHPwDUu6H/ + ///////Dn3iGPQCQTQOOSQCQTAOGPQDWvaT////9/Pv+/v7+/v7///////////////////////////// + ///+/v7////9/f39/Pv59vScYCOLRQGPSwKPSgGMRQGWVhf7+ffu5duNSAaOSQKOSQCQTAKJQQCqd0D+ + /v79+/r+/v7////////////////////////////////////////////+/v7+/v78+/r////cx7GJQgCQ + TAOOSQCQTAKFOwC/mXKzhVSGPACQTAKOSQCPSgKOSQfq3dH////9/Pv+/v7+/v7///////////////// + ///////////////////////////////+/v79/Pv///+wgU6HPgCQSwKOSQCPSgGMRgCMRwCPSgCOSQCQ + TAKGPADAmnH////9/Pr+/v7////////////////////////////////////////////////////+/v7+ + /v79/Pz+/v3u5NuPSwmNRwGOSQCPSgCPSwGPSgGPSQCPSgGLRACYWRn38u79/fz9/fz///7+/v7///// + ///////////////////////////////////////////////////+/v79/Pv////HpoKFOwCQTQOOSQCP + SgCPSgCOSQCQTAOGPQDVvaP////9/Pv+/v7+/v7///////////////////////////////////////// + ///////////////+/v7////9/f39/fz7+fefZSiIQACOSQCNRwCNRwCOSQCGPQCrd0H+///9/fz+/v7/ + ///////////////////////////////////////////////////////////////////+/v7+/v79/Pv/ + ///fzLmSTxWXWBWWVhSWVhSWVhSWVRrq3dH////9/Pz+/v7+/v7///////////////////////////// + ///////////////////////////////////////////+/v7+/v7////38+728e328e328e328Oz49fD/ + ///+/v7+/v7///////////////////////////////////////////////////////////////////// + ///////+/v7////////+/v3////////////////////////+/v3////////+/v7///////////////// + ///////////////////////////////////////////////////////////+/v7////+/v7+/v7+/v7+ + /v7+/v7+/v7+/v7+/v7////+/v7///////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAACgAAAAwAAAAYAAAAAEAGAAAAAAAgBwAAAAAAAAAAAAAAAAAAAAAAAD///////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + ///////////////////+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7////+/v7+/v7///////// + ///////////////////////////////////////////////////////////////////////////////+ + /v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7///////////////////////////// + /////////v7+/v7///////////////////////////////////////////////////////////////// + ///////////////////////////+/v7////////+/v7///////////////////////////////////// + ///38u38+vn8+vj8+vj8+vj8+vj8+vj8+vj7+ff////+/v3+/v7+/v7+/v7///////////////////// + ///////////////////////////////////////////////////////////////+/v7+/v7+/v7////7 + +ff8+vj8+vj8+vj8+vj8+vj8+vj7+ff59fK7kmmbXh+cXyCcXyCcXyCcXyCbXyCdYSGWVR3Fon3////9 + /Pz+/v7///////////////////////////////////////////////////////////////////////// + ///////+/v7+/v79/f39/fz///+1iFqXVx2cYCGcXyCcXyCcXyCcXyCbXiCcYCPn2Mv7+fencTqDOACM + RgCLRACLRACLRACLRACKQwCMRQLq3tL////9/Pz+/v7///////////////////////////////////// + ///////////////////////////////////////////+/v79/Pz////Zw6uGOwCMRQCLRACLRACLRACL + QwCNRwCCNQC4jmH////////r39SNRwWOSgOOSgGPSgGPSgGPSgGQTAOIPwCpdD3////9/fz9/f3////+ + /v7////////////////////////////////////////////////////////////////+/v7+/v79/f3+ + /f359vOZWxyLRACQSwKPSgGPSgGPSgGPSgGMRQKXWBn49PD+/fz8+vn////BnHWFOgCQTAGOSQCPSgCP + SgCOSQCPTAKFOwDVvaT////9/Pv+/v7///////////////////////////////////////////////// + ///////////////////////+/v79/Pv////BnXaEOgCQTAKOSQCPSgCPSgCOSQCPSwGGOwDVvKL////8 + +/r9/Pz9/f349fKZXB2KQwCPSgGOSQCOSQCOSQCPSgGLRAGXWBj38+/+/f39/f3+/v7+/v7///////// + /////////////////////////////////////////////////v7+/v79/fz+/v7r39SMRwWNSAGOSQCO + SQCOSgCOSQCPSwGHPgCpdT7////9/Pz+/f3+/v79/Pv////YwquGPACPSwGOSQCPSgCPSgCOSQCQTAGF + OgC+l23////9/fz+/v7////+/v7////////////////////////////////////////////////+/v7+ + ///9/f39/Pv///+qdkGHPQCPSwGOSQCPSgCPSgCOSQCOSAGLRALp3dH////9/Pv+/v7+/v7+/f39/fz/ + //+se0aHPgCQTAKOSQCPSgCPSgCOSQCOSQKLRALn2s3//v79/Pz+/v7///////////////////////// + ///////////////////+/v7+/v7////+/v78+vn////Rt5qGPACQSwKOSQCPSgCPSgCOSQCQTAKFOwC/ + mXL////9/Pz+/v7////////+/v79/fz///7s4deNSAeNSAGOSQCOSQCOSQCOSQCQSwKHPgCnczv+/v79 + /Pz9/f3+/v7+/v7////////////////////////////+/v7+/v7////////9/f38+/r////j08KNSQiN + RgGOSgCOSQCOSQCOSQCPSgCLRACYWhv48/D+/f39/f3+/v7+/v7+/v7////+/v79/Pz////Dn3qFOgCQ + TAGOSQCPSgCPSgCOSQCQSwGGPADSuJ3////9/Pz+/v7////////////////////////+/v7+/v7///// + ///+/v79/Pv////////cx7KPTA2LRQCPSgCOSQCPSgCPSgCOSQCPSwGGPADWvqb////9/Pz+/v7///// + ///////////+/v79/f3+/f359/SbXiCKQgCPSgGOSQCOSQCOSQCPSgCLRQCVVBT18Oz+/f39/fz+/v7+ + /v7////+/v7+/v7+/v7+/v7+/f39/Pz9/Pv////////49PC/mHSKQgCMRQCPSgCOSQCPSgCPSgCOSQCQ + TAKGPQCreEL////9/Pz9/f3+/v7+/v7////////////////+/v79/Pv////axK6FPACPSwKOSQCPSgCP + SgCOSQCQTAKEOQC8lGn////9/Pv+/v7////////////////////////////////////49fLQs5ibXyWH + PgCPSwKQTQOQSwKQTAOQTAKQTAKPSwOOSgOMRQPq3tP////9/Pz+/v7////////////////////+/v7/ + ///+/v39/Pz///+vf0uHPgCQSwGOSQCOSgCPSgCOSQCOSQGLRAHm18n////9/fz+/v7////+/v36+Pb5 + 9fLz7ejo2s3RtpuwgFCNRwN9LQCCNQCHPgCGOwCFOwCGOwCGOwCGOwCFOwCGPAB/MADCnnj////9/Pz+ + /v7////+/v7////////////////////+/v7+/v79/fz///7v5t6PSgiNRwGOSQCPSgCOSQCOSQCPSwGJ + QAClbjX+/f39/f39/f3//v769/XfzbjZw67QtJrEoX67kmq6kGa/mXLDn3rEoHzEoHvEoHvEoHvEoHvE + oHvEoHvDoHvDnnvEoH369/X+/v79/f3+/v7+/v7////////////////////////////////+/v79/Pv/ + ///GpICFOgCQTAKOSQCPSgCPSgCOSQCQTAKGPADQtJf////9/Pz+/v7///////////////////////// + ///////////////////////////////////////////////////////+/v7+//////////////////// + ///////////////////+/v7+/v79/f3+/f36+PadYiSKQwCPSgCOSQCOSQCOSQCPSgGMRgGUVBP07uj+ + /v39/fz+/v7+/v7+/v3+/f39/fz9/Pv7+vj+/f3cyLSXVyGcYCKcXyCcXyCcXyCcXyCdYSKUUxzDn3z9 + /Pz9/Pz9/f3////+/v7////////////////////////////////////////+/v79/Pz////cx7KHPwCP + SgGOSQCPSgCPSgCOSQCQTAKGPAC5kGP////9/Pv+/v7//v7+/v7+/v7+/v79/f39/fz7+feeYyaGPACL + RQCLRACLRACLRACLRACIQACQTAnw59/+/v79/f3+/v7+/v7///////////////////////////////// + ///////+/v7///79/f39/Pv///+xglCGPACQSwGOSQCPSgCOSQCOSQCOSQGKQgDk1MT////9/fz+/v7/ + ///////+/v79/Pz////HpoOFOgCQTAKOSgCPSgGPSgGOSgGQTAKFOwDPs5b////9/Pv+/v7///////// + ///////////////////////////////////////////+/v/+/v79/Pz+/v7w59+PSgiMRgGOSgCPSgCP + SgCOSQCPSwGIQACiajD+/f39/f39/f3///7+/v79/fz+/v7w6OCPSgmNRwGOSQCOSQCOSQCOSQCPSwKI + PwCiaS79/fz9/fz9/f3+/v7+/v7///////////////////////////////////////////////////7/ + ///+/v79/Pv////Ip4WFOgCQTAKOSQCPSgCPSgCOSQCQTAKEOQDOsZP////9/Pv+/v7+/v79/Pv///+x + glGFOwCQTAKOSQCPSgCPSgCOSQCOSgKIQADj08L////9/Pz+/v7///////////////////////////// + ///////////////////////////////+/v7+/v79/f39/f38+vmeZCeJQQCPSwGOSQCOSQCOSQCPSgGM + RQGRTw7z7ef+/v39/f39/Pz////fzLiHPQCPSgGOSQCPSgCPSgCOSQCQTAGFOwC4jF/////9/fz+/v7+ + /v7+/v7////////////////////////////////////////////////////////////////+/v79/fz/ + ///fzLqHPgCOSgGOSQCPSgCPSgCOSQCQTAGFPAC3jF7////9/Pz+/f38+vifZCiJQQCPSwGOSQCOSQCP + SgCOSgGLRQGTURDz7ef+/v39/f3+/v7///////////////////////////////////////////////// + ///////////////////+/v7////+/v79/Pv///+zhVWFOwCQTAKOSQCPSgCPSgCOSQCOSgKJQQDi0cH+ + /v7////JqYeFOgCQTAKOSQCPSgCPSgCOSQCQTAKEOgDNsJH////9/Pv+/v7////+/v7///////////// + ///////////////////////////////////////////////////////+/v7+/v79/fz+/v3w6eGRTQyN + RwGOSQCOSQCOSQCOSQCPSwKJQQChaC7////x6eKRTgyNRgGPSgCPSgCOSQCOSQCPSwGJQQCiajD8+/r9 + /fz9/f3+/v7+/v7///////////////////////////////////////////////////////////////// + ///////////////+/v79/Pz////LrIuFPACQTAGOSQCPSgCPSgCOSQCQSwGFOwDPspW5j2SGPACQSwGO + SQCPSgCPSgCOSQCOSgGJQgDj0sL////9/Pz+/v7///////////////////////////////////////// + ///////////////////////////////////////////+/v7+/v79/f39/fz9/PygZyuJQACPSwGOSQCO + SQCOSQCOSQCOSACOSACNSACOSQCOSQCPSgCPSgCOSQCQTAKFOwC3i13////9/Pv+/v7////+/v7///// + //////////////////////////////////////////////////////////////////////////////// + ///+/v79/Pv////hz72JQACPSwKOSQCPSgCPSgCOSQCPSgCOSQCOSQCPSgCOSQCOSQCOSQCOSQCMRgGS + UA/y6+X+/v39/fz+/v7+/v7///////////////////////////////////////////////////////// + ///////////////////////////////+/v7////+/v79/fz///+1iVuGPACQSwGOSQCPSgCPSgCOSQCP + SgCPSgCOSQCPSgCPSgCOSQCQTAGFOgDNrpD////9/Pz+/v7///////////////////////////////// + ///////////////////////////////////////////////////////////////////+/v7+/v79/f3+ + /v3y6+SSUA6MRQGOSgCOSQCOSQCPSgCPSgCPSgCPSgCOSQCOSQCPSwGIQAChaS78+/r9/Pz9/f3+/v7+ + /v7///////////////////////////////////////////////////////////////////////////// + ///////////////////////////+/v79/Pv////NsJGFOwCQSwGOSQCPSgCPSgCPSgCPSgCOSQCPSgCO + SQCOSQGJQQDi0cD////9/Pv+/v7///////////////////////////////////////////////////// + ///////////////////////////////////////////////////////+/v7+/v79/f39/Pz8+/qiai+J + QACRTQSPSwKQSwKQSwKQSwKQSwKPSwKRTgSGPAC2iVr////9/Pv+/f3////+/v7///////////////// + //////////////////////////////////////////////////////////////////////////////// + ///////////////+/v79/Pv////j08KGPQCHPQCHPgCIPgCIPgCIPgCIPgCHPwCFOgCRTgvy6uP+/f39 + /fz+/v7+/v7///////////////////////////////////////////////////////////////////// + ///////////////////////////////////////////+/v7////+/v79/f3////JqIeufFOzhVezhFaz + hFazhFayhFazhVete1TWvqb////9/fz+/v7///////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + ///+/v7+/v7+/v3////////////////////////////////////////+/v3+/v7+/v7+/v7///////// + //////////////////////////////////////////////////////////////////////////////// + ///////////////////////////////////////////+/v7+/f3+/f3+/fz+/fz+/fz+/fz+/fz+/fz+ + /f3+/f3///////////////////////////////////////////////////////////////////////// + ///////////////////////////////////////////////////////////////////+/v7+/v7+/v7+ + /v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7///////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAoAAAAgAAAAAABAAABABgAAAAAAADIAAAAAAAAAAAAAAAA + AAAAAAAA//////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////v7+/////v7+/v7+//////////////////////////////////////////////////////////// + /////////////////////////////////////////fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7 + /fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/v39/v7+/v7+/v7+//////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////v7+/////v7+/////v7+/f38/fz7/fz7/fz7/fz7/fz7/fz7 + /fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/v7+//////// + //////////////////////////////////////////////////////////////////////////////// + /////////////v7+/////v7+/v7+/v7+//////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////v7+/////v7+ + /f39//////////////////////////////////////////////////////////////////////////// + ////////////////////////2MCn3Maw3Maw3Maw3Mew3Mew3Mew3Mew3Mew3Mew3Mew3Mew3Mew3Mew + 3Mew3Mew3Mew3Mew3Mew3Mew3Mew3Maw3Mex2cOs8uvk/v7+/f39/v7+/v7+//////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////v7+/v7+/v7+/f39////4tHA2sSs3Mex3Mew3Mew3Mew3Mew3Mew3Mew3Mew3Mew + 3Mew3Mew3Mew3Mew3Mew3Mew3Mew3Mew3Mew3Mex3Mew3Mex2cKr9vHtqXQ9ikIAiUEAiUEAikIAikIA + ikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAiUEAikMAgzgAq3hH/v39 + /fz8/v79/v7+/v7+//////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////v7+/v7+/v7+/v7+/fz8////49PCiUIBiUEAiUEA + ikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAiUIAiUEAi0MAgzkA + nmMq+vj1/v39sYJUhz4AkU0Ej0oBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sB + j0sBj0sBj0sBj0oBj0oBkEwDhz0A1buh/////fz7/v7+/v7+/v7+/v7+//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////v7+ + /v7+/v39/Pz8/Pr5pGw1iEAAkE0Dj0oBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sB + j0sBj0sBj0sBj0sBj0sBj0sBj0sDjEYG49LC////////7OLWkU4PjEYBj0oBjkkAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAjkkAj0sBikQAmFod9fDq/v39/v39/v7+ + /v7+//////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////7+/v7+/v7+/v7+/Pv6////za+QhjwAkEwCjkkAjkkAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAkEwChjsAuo9l////+/n4+ff1//// + x6aFhDsAkEwCjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + jkkAjkkAkEwChTwAv5dw/////Pz7/v7+/v7+/v7+//////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////v7+/v7+/f38/v798evik1IV + i0UBj0oBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkoA + j0oBi0QBlVQX8+zl/f39/fz8/fz8/fz8+vbzoGYuiEAAj0sBjkkAjkkAjkoAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAj0oAjkoAjkkAjUkBjEgG6NvN/////fz8/v7+/v7+/v7+/v7+ + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////7+/f7+/v7+/fz7////topehjwAkEwCjkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAj0sChTwA0LWY/////Pv7/v7+/v///Pz7////3sq3iEABjkoC + jkkAjkkAj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkAkEsC + hz8Ap3I//fz7/fz8/v79/v7+/v7+//////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////v7+/v7+/v39/v///Pz7////3867iEAAjkoCjkkAjkkAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjUkAkEsChz8ApnE5/fz8/Pz7 + /v7+/v7+/v7+/v7+/Pv7////tIZYhjwAkEwBjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAjkkAjkgAj0sChTwA0rec/////Pz7/v7+/v7+/v7+//////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////v7+/v7+/v79/fz8 + +/r4oWgwiEAAj0sBjkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kA + j0kAjkkAjkoAjkkBikQF5dbG/////fz7/v7+/v7+/v7+/v7+/fz8/v7+8OffkU8QjEYBj0oAjkkAjkoA + jkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oAjkkAj0oBikMAllcb9O/p + /v39/f38/v7+/v7+/v7+//////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////v7+/v7+/v7+/Pz7////yquLhTsAj0wCjkgAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAkEwChToAu5Nq/////Pz7//7+/v7+/v7+/v7+/v7+ + ///+/Pz7////y6yNhTsAkEwCjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAjkkAjkkAjkkAkEwBhTsAu5Rr/////Pz7/v7+/v7+/v7+/v7+//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////v7+/v7+/fz8/v7+7+bckU4PjEYBjkkBjkkA + j0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0kAjUkAj0oBi0QBllcb + 9e/p/v39/f38/v7+/v7+/////////v7+/v7+/v79/fz8+vj1oWgwiUEAj0sBjkgAjkkAjkkAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkCi0QF5NXG/////fz8/v7+ + /v7+//////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////v7+//7+/f39 + /v7+/fz7////tIdZhjwAkEwCjkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAjkkAjkkAj0sChj0A0rec/////Pz7/v7+/v7+/////v7+/v7+/////v7+/v7+/Pz7//// + 38y4ikIDj0oCjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkA + jkkAjkkAj0sBhz8Ap3I8/Pv5/fz8/v39/v79/v7+//////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////v7+/////v7+/v7+/Pz7////3sm2iUIBj0oBjkkAjkkAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjUkAkEsCiD8AqHM+/fz7/Pz8/v7+/v7+/v7+ + /v7+/////////v7+/v7+/v7+/v7+/Pv7////topehTwAkEwCjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkgAkEsChjwA0bWa/////Pv6/v7+/f39/////v7+ + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////v7+/v7+/f39/fz8+vj2n2UriUEA + j0sBjkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkoA + jkgBjEYG5tjJ/v7+/f37/v7+/v7+/////////////////////////v7+/v7+/f39/v398uriklETi0YB + j0oAjUkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkAj0oB + i0UAlVYZ8+3m/f79/f38/v7+/v7+//////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////v7+ + /v7+/v7+/v7+/Pv6////yKeFhTsAkEwCjkgAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAjkkAjkkAkEwChjwAvpZv/////Pz7/v/+/v7+/v7+/v7+//////////////// + /v7+/v7+/v7+/v7+/Pz7////za6QhTwAkEwCjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAkEwChTwAuZBm/////Pv6/v7+/v7+/v7+/v7+//////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////v79/v7+/fz7/v7+7ePYkU4QjEcBjkkBjkkAj0oAjkkAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkAj0oBi0QBmFof9e/p/f39/v39 + /v7+/v7+/////////////////////////////////v7+/v7+/v7+/fz8+/n3o2s1iUEAkEsBjkkAjkkA + jkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oAjkkAjkkAjkkCikQD5NPD + /////Pz7/v7+/v7+//////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////v7+/v7+/v79/Pv7/v/+ + sIFShjwAkEwCjkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + jkkAjkkAj0sChj0A1Lqg/////Pz7/v/+/v7+/////v7+/////////////////////////v7+/////v7+ + /v7+/fz7////4tHBikMEjkkCjkoAjkkAj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAjkkAjkkAjkkAj0sBiEAApW43/Pv5/fz7/v39/v7+/v7+//////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////v7+/v7+/////Pv6////2sawiD8Aj0sBjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAkEsChz8AqnhE/v79/Pz7/v7+/v7+/v7+/v7+//////// + /////////////////////////v7+/v7+/v7+/v7//fz7////uI1hhj0AkEwCjkkAjkkAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkgAj0wChj0AzrCT/////Pv6/v7+ + /f39/////v7+//////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////v7+/v7+/v7+/f38/f389vLtm18jikMAj0oBjkkAjkkA + jkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkAjkoAjUgBjUgH6NzO + /v7+/fz8/v/+/v7+/////////////////////////////////////////////////v7+/v7+/f38/v39 + 8uvjlFUWi0UBj0oBjUkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkA + j0oAjkkAj0oBjEYBlFMW8enh/v79/fz7/v7+/v7+//////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////v7+/v7//v7+//7+/f39 + /Pv6////t4thhjwAj0wBjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAjkkAjkkAkEwChTsAwJp0/////fz6/v7+/v7+/v7+/v7+//////////////////////////// + /////////////v7+/////v7+/v7//Pv7////zrGUhjwAj0wCjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkAkEwChjwAt4xg/////Pv7/v7+/v7+/v7+//// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////v7+/v7//v3+/Pr6////0bWYhj0Aj0sCjkkAjkkAj0oAjkkAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAjkkAjkkAj0sBi0MAmVsg9vHs/v39/f39/v7+/v7+//// + /////////////////////////////////////////////////v7+/v7+/v7+/v7+/f38/Pr4pW85iD8A + kEsCjUkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkA + jkoCikIC4tHA/////Pv7/v7+/v7+/v7+//////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////v7+/v7+/v7+/v7++/r5////38y4i0UHjUgBjkoA + jkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAjkkAjkkAj0wC + hz4A1r6m/////Pz7/v7+/v7+/////v7+//////////////////////////////////////////////// + /////////v7+/v7+/fz8////49LCjEYFjkkCjkoAjkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkAj0sBiEAAomoy+/n2/fz7/v39/v7+/v7+//////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////v7+/////v7+/v7+/v7+ + /v7++/r5////5NTCj0wQi0UAj0oAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAjkkAjkkAkEwChz8ArHpI/v7+/fz7/f79/v7+/v7+/v7+//////////////////// + /////////////////////////////////////v7+/////v7+/v7+/Pz7////upBnhTwAkEwCjUgAjkkA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkgAj0wChToAyqyM + /////Pv6/v7+/v7+/////v7+//////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////v7+/v7+/////v7+/v7+/v7+/f39/Pr5////4c+9kE0SikQAj0sBjkkAjkkAj0oAjkkAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjUkAj0oAjUgCjkoJ6d3R/v7+/f38/v7+ + /v7+/////////////////////////////////////////////////////////////////////v7+/v7+ + /v7+/v39/f399O3nl1gci0UBj0oBjkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAjkkAj0oAjkkAj0oAi0UBk1ET8Ofe/v39/fz7/v7+/v7+/////v7+//////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////v7+/////////v7+//7+/v7+/Pv6/f38////1LuijkkLi0QA + j0sBjkkAjkkAj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkA + jkkAkEwChjwAwp14/////Pv6/v7//v7+/////v7+//////////////////////////////////////// + /////////////////////////////////v7+/v7+/Pv6////0baahj4AkEwCjkkAjkkAj0oAj0kAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkAkEwBhTwAtYlc/////Pv6/v7+ + /v7+/v7+//////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////v7+/v7+/////v7+/v7+/v7+ + /v79+/v5////+/n1wJp1iEEAjUYAj0wBjkkAjkkAj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkAj0sBikMAnWAn9/Lu/fz7/f39/v7+/v7+/v7+//////////// + /////////////////////////////////////////////////////////////v7+/v7+/v7+/v7+/Pz7 + /Pv5p3I9iD4AkEwCjkkAjkkAjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjkkAjkkAj0oCiUEA3826/////Pv6/v7+/v7+/v7+/v7+//////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /v7+/v7+/////////v7+/v7+/v79/Pv6/f3+////6dzPpW89hjwAj0oBj0oBjkkAjkkAj0oAjkkAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oAjkkAjkkAj0sChz4A2MKq//// + /Pv6/v7+/v7+/v7+//////////////////////////////////////////////////////////////// + /////////////////////v7+/v7+/fz7////5dbGi0UGjkkCjkoAjkkAj0kAjkkAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkAj0sBiEAAoGct+vj1/fz7/v39/v7+/v7+//// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////v7+/v7+/v7+/////////v7+/v7+/f39/fz7/fz8////+vj0xaOCjkkJhz8A + j0sBj0oAjkkAjkkAj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjkkAjkkAkEwChz0Arn1L/////Pv6/v7+/v7+/v7+//////////////////////////////////// + /////////////////////////////////////////////////v7+/////v39/v/+/Pv6////vZZuhjsA + kEwDjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjUgA + j0wChDoAyKiI/////Pv6/v7+/v7+/v7+/v7+//////////////////////////////////////////// + /////////////////////////////////////////v7+/////v7+///////////+/v7+/v7+/v79/Pv6 + /f38////////28ayn2cyhTwAjEcAj0sCjkkAj0oAj0oAj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjUkAj0oAjUcCjkoK69/U/v7//fz7/v7+/v7+/////v7+ + //////////////////////////////////////////////////////////////////////////////// + /////v7+/v7+/v7+/f39/f399fDrl1kci0UBj0sBjUkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAjkkAj0oAjkkAjkoAjEUAkU4P7+bc/v79/fz7/v7+/v7+/////v7+//////// + /////////////////////////////////////////////////////////v7+/////v7+/v7+/////v7+ + /////v7+/v7+/v7+/fz8/Pv6/v7+////////4M68qnhHiD8AiUEAj0sCj0oAjkkAjkkAjkkAjkkAjkkA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAkE0DhjwA + xaJ//////Pv7/////v7+/v7+/v7+//////////////////////////////////////////////////// + /////////////////////////////////////////v7+/v7+/v7+/Pv6////07qghz4Aj0wDjkkAjkkA + j0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkAkEwBhjwAsoRU + /v///Pv6/v7+/v7+/v7+/////////////////////////////v7+/////v7+/v7+/v7+/v7+/v7+/v7+ + /v7+/v7+///+/v7+/v7+/////v7+/v7+/v79/fz8/Pv6/fz8////////+/n32sSvqnZHikIAhz8AjkoA + j0oBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAjkkAjkkAjUkAj0sCikMAnmMp+PXx/f38/f39/v7+/v7+//////////////////////////// + /////////////////////////////////////////////////////////////////////////////v7+ + /v7+/v7+/Pz7/f38qXVBiEAAkEwCjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAjkkAjkkAj0oBiD8A3cm0/////Pv6/////f39/v7+/v7+//////////////////// + /////////////////////////////v7+/////v7+/v7+/v7+/v39/fz7/Pv6/fz7/f7+//////////// + 7OHWyaiHn2UviD8Ahz4AjkkAj0sCjkkAjkkAjkoAjkoAjkkAjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAj0wDiEAA28Wv/////Pz7/v/+/v7+ + /////v7+//////////////////////////////////////////////////////////////////////// + /////////////////////////v7+/////v7+/v7+/fz7/v//6NrNjkkJjkkCj0kAjkkAjkkAjkkAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkAj0oBiUIAn2Ur+fb0/fz7/f39 + /v7+/v7+/////////////////////////v7+/v7+/v7+/v7+/f38/fv6/fz7/fz6/Pv6/fz8/fz8/v7/ + /////////////////Pz66dzPza6Qq3dGkE0Mhj0AikMAj0sCj0sCj0oAjkkAjkoAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkA + kEwChz4AsIJS/v7//Pv7/v7+/v7+/v7+/v7+//////////////////////////////////////////// + /////////////////////////////////////////////////////////////v7+/v7+/v7+/////Pv6 + ////v5lzhTwAkEwCjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjkkAjkgAkEwBhDoAxqSC/////Pv6/v7+/v79/v7+/v7+/////////////////v7+/////v7+/v7+ + /////////////////////////////v788+3l5NTE07icuY5moWgvj0sIhz4AiUIAj0oAkE0FkU0Dj0sC + kEsBkEsBkEsBkEsBkEsBkEsBkEsBkEsBkEsBkEsBkEsBkEsBkEsBkEsBkEsBkEsBkEsBkEsBkEsBkEsB + kEsBkEsBkEsBkEsBkEsBkEsBj0sBkEwCjEgBkE4O7eTa/v7+/fz8/v7+/v7+//////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////v7+/v7+/f38/f389vHsmVsgikMBj0oBjkkAjkkAjkkAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oAjkkAjkkAjEYBkEwN7ePY/v7+/fz7/v7+/f39//// + /v7+/////////////v7+/v7+/f38/v//28ayxqSAy6uKxKF6vJNssoReqHNEmVwlkEwKhjwAgTQAgDQA + hDoAiEAAikMAiUIAiEEAiEAAiEAAiEAAiEAAiEAAiEAAiEAAiEAAiEAAiEAAiEAAiEAAiEAAiEAAiEAA + iEAAiEAAiEAAiEAAiEAAiEAAiEAAiEAAiEAAiEAAiEAAiEAAiEAAiEAAiEAAiUIAgjYAx6WD/////Pv6 + /v7+/v7+/////v7+//////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////v7+/////v7+/v7+/Pv7////1r2khz4A + j0sCjkkAjUkAj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkA + kEwBhjwAsYFR/////fz7/v79/v7+/v7+/////////////////v7+/v7+/v39/v7+4M27za+O0bWW0LOU + z7OV0LOZ0bac07mg1ryk2MCo2cKr2cKs2MGq2MCp18Co18Co18Co18Co18Co18Co18Co18Co18Co18Co + 18Co18Co18Co18Co18Co18Co18Co18Co18Co18Co18Co18Co18Co18Co18Co18Co18Co18Co18Co18Co + 18Co18Co2MCo1r+n2MGq+vf0/v39/v79/v7+/v7+/v7+//////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////v7+/v7+/v7+/v7+/Pv6/v39rHpIhz4Aj0wBjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAj0oBiUEA3May/////Pv6/////f39/v7+/v7+//////// + /v7+/////v7+/v7+//////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////v7//v7+/////v7+//////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////v7+/v7+/fz7/v7+6d3RjUkJjUgBj0oAjkkA + jkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkAj0oBikIAnWIn + +PXx/fz8/f39///+/v7+/////////////////v7+/////////v39/fz7/fz7/fz7/fz7/fz7/fz7/fz7 + /fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz8/fz7+/n3+/n3+/n3+/n3+/n3+/n3 + +/n3+/n3+/n3+/n3+/n3+/n3+/n3+/n3+/n3+/n3+/n3+/n3+/n3+/n3+/n3+/n3+/n3/Pr4/fz7/fz8 + /fz8/v7+/////v7+/////v7+//////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////v7+/v7+ + /v7+/v7+/Pv7////wZx2hDsAkEwCjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAjkkAjkkAkE0ChjwAxKF8/////Pv6/v7+/v7+/v7+/v7+/////v7+/////v7+/v7+ + /v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+ + /v7+//////////////////////////////////////////////////////////////////////////// + /////////////////////////////v7+/v7+/v///v7+/////v7+//////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////v7+/v7+/f39/f389/Ltm14iiUIAj0oBjkkAjkkAjkkAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oAjkkAjkoAjUgCkE0N7OHW/v7+/f38 + /v7+/v7+/////v7+//////////////////////////////////////////////////////////////// + /////////////v7+/////v7+/v7+/f79/f39+vj20LSYzrCSz7GUzrGTz7GTz7GTz7GTz7GTz7GTz7GT + z7GTz7GTz7GTz7GTz7GTz7GTz7GTz7GTz7GTz7GTzrGTzrGTza+S0LSY+vj1/v7+/v79/v7+//////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////v7+/////v7+/v7//Pz7 + ////2cKriD8Aj0sCjkkAjkkAj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + jkkAjkkAjkkAkEwChz8Ar35O/v7+/fz8/v7+/v7+/v7+//////////////////////////////////// + /////////////////////////////////////////////////v7+/v7+/v7+/fz7////yaiIgDMAhz0A + hTsAhTsAhTsAhTsAhTsAhTsAhTsAhTsAhTsAhTsAhTsAhTsAhTsAhTsAhTsAhTsAhjsAhTsAhDsAhz4A + fS0AtIdb/f38/Pz8///+/v7+//////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////v7+/v7+/v7+/v7+/fz7/v//rn1Khz0Aj0wBjkkAjkkAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAj0sCiEAA2MGq/////Pz7/v///v7+/v7+ + /v7+/////////////////////////////////////////////////////////////////////v7+/v7+ + /v7+/v7+/f38/v797+bdkU8PjUkDkU4Fj0wDkEwDkE0DkE0DkE0DkE0DkE0DkE0DkE0DkE0DkE0DkE0D + kE0DkE0DkE0DkE0DkEwDkE0DkU4FjEcFmVwe9/Pu/v7+/v38/v7+/v7+//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////v7+/v7//fz7/v7+69/UjkoL + jUgBj0oAjkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkA + j0sCikMAm18j+PXw/f39/f39/v7+/v7+/////v7+//////////////////////////////////////// + /////////////////////////////v7+/v7+/v7+/fz7////tIZYhj0AkEwCjkgAjkkAj0oAjkkAjkkA + jkkAjkkAjkkAjkkAjkkAjkkAjkkAjkkAjkkAjkkAjkkAj0oAjkkAjkkAj0sChj0A0rec/////Pv7/v7+ + /v7+//////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////v7+/v7+/v7+/////Pv6////xKF9hTsAkEwCjkkAjkkAj0oAj0kAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAkEwChTsAw596/////Pz7/v7+/v7+/v7+//////////// + /////////////////////////////////////////////////////v7+/v7+/v7+/v7+/fz7////3sq3 + iUIAjkoCj0kAjkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAjkkA + jkkAj0wBiD8AqHM+/fz7/Pz7/v7+/v7+/v7+/v7+//////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////v7+/v3+/v39/fz8+PXxnWIpiUIAj0sBjkkA + jkkAjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkAjkoAjUgBjkoK + 6t7S/v7+/fz8/v7+/v7+/v7+/v7+//////////////////////////////////////////////////// + /////////v7+/v7+/f39/f38+vj1oGgviUEAj0sCjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAjkkAj0kAjkkAj0kAjkgCjEYH5tjJ/////fz7/v7+/v7+//////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////v7+//// + /v7+/v7+/Pv6////2cStiEAAj0oCjkkAjkkAj0kAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAjkkAjkgAkEwChz4ArHpH/f38/fz8/v7+/v7+/v7+//////////////////////// + /////////////////////////////////v7+/v7+/v7+/v7+/fz8////y6yNhTwAkEwCjkkAjkkAj0kA + jkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAkEwChTwAvZRs//// + /Pv7/////v7+/v7+/v7+//////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////v7+/v7+/v7+/v7+/Pv7/v7+r4FQhz0AkEwBjkkAjkkAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkgAj0kAkEsChz4A17+n/////Pz7 + /v7+/v7+/v7+/v7+/////////////////////////////////////////////////////v7+/v7+/f38 + /v798enfklISjEYBj0oBjkkAjkkAjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + jkkAjkkAjkkAj0oBi0QAl1gb9O/p/fz8/v38/v7+/v7+//////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////v7+/v7+/fz8 + /v7+7ePakE0NjEcBj0oAjkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjkkAjkkAj0sCikMBml0i9/Pu/f39/f39/v7+/v7+//////////////////////////////////// + /////////////v7+/v7+/v7+/v7+/Pz7////toldhj0AkEwCjkkAjkkAj0oAj0kAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAj0oAjUkAjkkAj0sChTwA0baa/////Pv7/v7+/v7+/////v7+ + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////v7+/v7+/v7+//7+/Pv6////x6SDhTsAkEwCjkkAjkkAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oAjUgAjkkAkEwChTwAwZx1/////Pv7//7+/f39/v7+ + /v7+/////////////////////////////////////v7+/////v39/v7+/fz7////4M67ikICj0oCjkoA + jkgAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAjkkAjkkAj0sBiD8A + pnA8/Pv6/fz7/v7+/v7+/v7+/v7+//////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////v7+/v7+/v79/fz8+fbznmMq + iEEAj0sBj0kAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkA + jkoAjUkCjUgI59rM/////fz8//7+/f39/////v7+/////////////////////////////////////v7+ + /v7+/v39/f38+vj1oWgwiUEAj0sBjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAjkkAj0kAjkkAj0kAjkkCi0QG5dXF/////fz7/v7//v7+//////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////v7+/////v7+/v///Pz7////3cm1iEAAjkoCjkkAjUgAj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAkEwChz8AqndD/fz7/fz7/v7+/v7+/v7+//////////// + /////////////////////v7+/v7+/v79/v7+/Pz7////y6uMhTwAkEwCjkkAjkkAjkoAjkkAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAkEwChTsAu5Fn/////Pz7/v7//v7+ + //7+/v7+//////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////v7+/v7+/v7+/v7+/Pz7////s4RVhjwAkEwCjkgA + jkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkAjkkAj0wChz4A + 1bui/////Pz7/v7+/f3+/v7+/v7+/////////////////////v7+/////f39/v7+/f38/v398Ojfk1ES + jUYBj0oBjkkAjkkAj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkA + j0oBi0UBllYa8+zl/fz9/v38/v7+/v7+/v////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /v7+/v7//f38/v797+XckE0OjEYAj0oAjUgAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAjkkAjkkAj0sBi0QBmVoe9vHr/f39/f39///+/f39/////v7+//////////////// + /////v7+/v7+/v7+/Pz7////tYldhj0AkEwCjkkAjkkAj0oAjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAjkkAj0oAjUkAjkkAj0wChTsA0bWZ/////Pv6/v7+/v7+/v7+//7+//////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////v7+/v7+/v7+/v7+/Pz7////yKiGhDoAkEwDjkkAjkkAj0oAjkkA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oAjkgAjkkAkEwChjwAv5dw/////Pv6 + /v7+/v7+/v7+/////////////////v7+/v7+/v7+///+/fz7////4dC/ikMDj0oCjkkAjkkAjkkAjkkA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAj0wCiD8ApW85/Pv5/fz7 + /v79/v7+/v7+//////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////v7+/v7+/v39 + /fz8+/j1oGYtiUEAj0sCjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + jkkAjkkAjkkAjkoAjkkCjEcG5tjK/////fv7//7+/v7+/v7+//7+/////////////v79/v7+/f39/fz8 + +/r4o2oziUAAj0sBjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkA + jkkAjkkAj0oAjkkCi0UF5NTE/////fz8/v7+/v7+/////v7+//////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////v7+/////v7+/v7+/fz7////3su4iUEBj0sCjkkAjkkAjkkAjkkAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjUkAkEwChz8AqHRA/f38/fz7/f39/v7+/v7+ + /v///////v7+/v7+/v7+/v/+/Pv7////za+RhTwAkEwCjkkAjkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAkE0ChjwAu5Jo/////Pz7/v7+/v7+/v7+/v7+//// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////v7+/v7+/v7+/v7+/fz7////tIdZ + hjwAkEwCjkgAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkA + jkkAj0wChjwA0rec/////Pv6/v7+/f7+//7+/v7+/////v7+/v7+/f38/v7+8erilFITjEYBj0oBjkkA + jkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkAj0oBi0UAl1YZ + 8+3m/f39/f39/v7+/v7+//////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////v7+/v7+/fz8/v398Offk1ISjEcBj0oAjUkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAj0sBi0QBl1ga9O7n/f38/f39/v7+/v7+/////v7+/v7+ + /v7+/Pv6////t4tfhjwAkEwCjkkAjkkAj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjkkAj0oAjkkAjkkAkEwChz4A0LWZ/////Pz7/v7//v7+/////v7+//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////v7+/////v7+/v7+/Pv7////zK2Ohj0AkEwDjkkA + jkkAj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oAjkkAjkgAkEwChjwA + u5Nq/////Pv6/v7+/v7+/v7+/v7+/v7+/Pz7////4dC+ikMCj0oCjkkAjkkAjkkAjkkAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAj0wCiEAAp3E7/Pv5/fz7/v79/v7//v7+ + /v7+//////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////v7+ + /v7+/////v7+/fz7+/j2o2sziUEAj0sBjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAjkkAjkkAjkkAjkoAjkkCjEcG5dbH/////Pz7/v7+/v7+/v7+/v39/fz8+/n3pG00iUEA + j0sBjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkAj0kA + jkkCikQE49PC/v7//fz8/v7+/v7+//////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////v7+/v7+/fz7////4c+9iUICj0oCj0kAjkkAjkkAjkkA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAj0sBiEAAp3E7/Pv5/fz8 + /v79/v7+/v7+/Pv6////zK+Qhj0AkEwCjkkAjkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAjkkAjkgAkE0ChTwAuY9j/////Pv6/v7+/v7+/v7+/v7+//////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////v7+/v7+/v7+/v7+ + /Pv6////t4xghjwAkEwCjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + jkkAjkkAjkkAjkkAkEwChj4Az7OX/////Pv7/v7+/f38/f398erilFQVi0YBj0oBjkkAjkkAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkAj0oBi0UBlVUW8+zl/v39/f39 + /v7+/v7+//////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////v7+/v7+/f38/v7+8+zllFQVi0UBj0oAjkkAjkkAjkkAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkgAj0sBi0UAlVUX8uzk/v39/fz8/Pz7//// + t4xhhjwAkEwCjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAj0oA + jkgAjkkAj0wChjwA0LOX/////fz7/////v7+/v7+//////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////v7+/v7+/v///fv7////zrGU + hjwAj0wCjkkAjUkAj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkA + jkkAkEwChTwAuI5k////+/r5////4tHAiUIDjkoCj0oAjUkAjkoAjkkAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAjkoAjkkAjkkAj0wCiUAApW84/Pv6/f38/v7+/////v7+//////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////v7+/v///v7+/f38+/r4pG02iEAAj0wBjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjUkAj0kAjkoCikMD4tC//v79+vj1pG02hz8AkEsBjkkAjkkA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0kAjkkAj0kAjkkCi0QF49TD + /////fz8//7//v7+//////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////v7+/////fz8////49TEi0UFjkkCj0oA + jkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAj0sBiEAA + oWkx////zrGThTsAj0sCjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAjkkAjkgAkEwChj0AupBl/////fz8/v///v7+/v7+/v7+//////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////v7+ + /v7+/v7+/v/+/fz8////uZBkhj0AkE0CjkgAjUkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0kAjkkAjkkAj0sAiEAAwZ12m18iikIAj0oBjkkAjkkAjkkAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjUkAj0oAjEYBlVYX8uzl/v79/v39/v7+/v7+//// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////v7+/v7+/f39/v398+zmllYXjEYBj0oBjkkAjkkAjkkA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAjkkAjkkAjkkAjkkAikMAjEYAjkkA + jkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAj0oAjkgAjkkAkEwC + hj0Az7SX/////fz7//7+/v7+//////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////v7+//7+ + /fz7////0bWZhz0Aj0wCjkkAjUgAj0oAj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAjkkAjkkAjkkAj0oBjkoAjkkAjkkAj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAjkoAjkkAjkkAj0wCiEAApW86/Pv5/fz8/v7+//7+/v7+//7+//////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////v7+/v7+//7+/v7+/fz8/fz7p3I+iD8Aj0wCjkkAjkkAjkoAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0kAjkkAjkkAj0kCikQF49PD/////Pz8//7+ + /v7+//////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////v7+//7+/fz8////5dbH + jEYHjkoCj0oAjkkAj0kAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oA + jkkAjkkAjkkAj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkA + jkkAkEwChj0AuI1i/////fv8/v/+/v7+/v7+/v7+//////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////v7+/v7+/v7+/v///fz7////vJRqhjwAkEwCjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAjkkAjkkAjUkAj0oBjEUBlFQW8uri/v7+/f39/v7+/v7+//////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////v7+/v7+/f39/f399O7ol1kci0QBj0sB + jkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAj0oAjUgAjkkAj0wChj0AzbCT//// + /Pz8/v7//v7+//////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////v7+/v7+/Pz7////07mfhj0Aj0wCjkkAjUgAj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + jkoAjkkAjkkAkEwCiEAAomw0/Pr4/f39/v7+/v7+/////v7+//////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////v7+/////v7+/v7+/fz8/fz8qHNAhz8AkEwCjkkAjkkAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0kAjkkAj0kAjkkCiUIC4dC+/////fz7/v7+/v7+//////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////v7+/v7+ + /fz8////5tjJi0YFjUgCj0oAjkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkgAkEwChTwA + t4tf/////fz7/v7+/v7+/v7+//////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////v7+/v7+/v7+/fz7////vZZuhTsAkE0CjkkAjkkAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAjkkAjkkAjkkAj0oBi0YBlFMT8eri/v7+/f38/v7+/v7+//////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////v7+/v7+/v39/f399vHs + mVseikQAkEsBjkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oAjkgAjkkAkEwChj0Aza+Q/////Pv6/v7+/v7+ + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////v7+/v7+/Pz7////1Luhhz4AkEwCjkkAjkkAj0oAjkkAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkA + j0sAiEAAo2w0/Pr4/fz8/f39/v7+/v7+/v7+//////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////v7+/v7+/v7+/v79/fz7/f38qndDhz8AkEsB + jkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAjkkAjkkAjkkAjkkAjkkBi0QD4c+9/////Pz7/v7+//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////v7+/v7+/fz7/v7+6NvNjUkIjUgBj0kAjkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAkEwBhTsAt4xf/////Pv6 + /v7+/v7+/v7+//////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////v7+/v7+/Pv6////wZt2hTsAkEwBjkkAjkkAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkA + jkkAjkkAj0oAi0UAlFIT8eri/v39/fz8/v7+/f39//////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////v7+/v7+/v7+ + /f38/fz89vHtmVsfikMAj0sAjkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAkEsChDoAy6uN/////Pv6/v7+/v7+/v7+//////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////v7+/f3+/v7+/Pv7////1r6lhj0Aj0oBjkkAjUkAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAj0sAiEAAoWkx + +/n3/fz8/f39/v7+/v7+//////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////v7+/v7+/v39/fz7/v7+ + rXtJhj0AkEwCj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oBjkkAj0oBjkoCiEEA4M68/////fz7/v7+/v39/////v7+//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////f39/v7+/fz7/v7+69/SjkgJi0UAjkgAjUcAjUgAjUgAjUgAjUgAjUgAjUgAjUgA + jUgAjUgAjUgAjUgAjUgAjUgAjUgAjUgAjUgAjUgAjUcAjUcAjkoAhDkAtYlb/////Pz6/f7+/v7+/v7+ + /v7+//////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////v7+/v7+/v39/v7+/Pz7////xKF9jEcSlVQW + k1IUlFIUlFIUlFIUlFIUlFIUlFIUlFIUlFIUlFIUlFIUlFIUlFIUlFIUlFIUlFIUlFIUlFIUk1IUlFMV + kU8TmVoj8ejg/v39/fz7/v7//f39/v////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////v7+/v///f39/f38/Pv67+bd8Ofe8Off8Off8Off8Off8Off8Off8Off8Off8Off8Off8Off8Off + 8Off8Off8Off8Off8Off8Off8Off8Off7uXd9O7o/////f39/v7+/v7+/v7+//7+//////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////v7+/v////7+/v7+/v7+/v7+//////////////////////// + /////////////////////////////////////////////////////////////////////////v39/v7+ + ///+/v7+//////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////7+/v////// + /////v7+/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39 + /v39/v39/v39/v39/v39/v79/////////v7+/////v7+//////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////v7+/////v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+ + /v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/////v7+//////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + ////////////////////////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAoAAAAAAEAAAACAAABABgAAAAAAAAgAwAAAAAAAAAAAAAA + AAAAAAAA//////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39 + /v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39 + /v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v7+/////v7+//////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////v7+/////v7+/v39/v39/v39/v39/v39/v39/v39 + /v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39 + /v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39 + /v79/v7+//////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////v7+//////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + ////////////////////////////////////////////////////////////////////////9/Lt9/Pu + 9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt + 9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt + 9/Lt9/Lt9/Lt9/Lt9/Lt9/Pt/v7+/v79/v7+/v7+/v7+//////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////v7+/v79/v799/Ls9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt + 9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt + 9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Pt9/Lt/v39pm80omkso2oto2oto2oto2ot + o2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2ot + o2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2ot + o2svnmMrzrGR/////fz7//////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////v7+/v7+/fz8//// + 1bygnGAqo2svo2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2ot + o2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2ot + o2oto2oto2oto2oto2oto2oto2svnWEruY9i/fz8wJpwkUwEiUIAi0QAi0QAi0QAi0QAi0QAi0QAi0QA + i0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QA + i0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0UAiUAAlVQT7uTZ + /v39/fz8/v7+//////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////f38/v7+9O3nmFkViD8Ai0UAi0QA + i0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QA + i0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QA + i0QAi0QAikMAi0MA3sq1/v7+/fz8wJhviD8AkU0Fj0sCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsC + kEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsC + kEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkU0EiD8AuItb/////f38/v7+/v7+ + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////v7+/v7+/fz7////vZNniD8AkU0EkEsCkEsCkEsCkEsCkEsCkEsC + kEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsC + kEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCj0sCkU4EiUAAuY9h + /////Pn4/v7+9e/pnF8ei0UAj0oBjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oBi0MA3cix/////fz7//////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////v7+/////Pz7////49G/j0oHjUgBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oBjEYBl1cU8urj/v39/fv6+vf0//// + 1LqfikIAj0sCj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAjkoAj0sBikIAoWcq9vLt/fz7/v39/v7+//////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////v7+ + /f38+/n3p3A0iUEAj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBiUEAzrCQ/////fz7/v7+/fz7/fz7+/n3q3hBiUAAkEsC + j0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAjkkAj0sBiEAAyKaB/////fz7/////v7+//////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////v7+/v7+/Pz7////z7GRiUEAkEwC + jkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAjkkAj0oBikIApnA0/fz7/v39/v7+/////////f38////6NrMkEwHjUgBjkoAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoA + jUgBlFIO7uTa/////f38//////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////v7+/////fz8/v398OfellYTjEYBj0oBj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkgB + jUYA4tG+/////fz7/////v7+/v7+/////fz8////wJpvhz4Aj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAkEsCiD8As4RR/fz7 + /fz7/v7+/v7+//////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////v7+/v38////uY9ghz4AkEwCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsBiD8Au5Fk/////f38/v7+ + /v7+/////////v7+/fz8/v389e/pnmMmi0MBj0sBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oCi0QB3Mav/////fz8/////v7+ + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////v7+ + /v7+/Pz8////4tG+jUgCjkkBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oBi0UAmFkW9e/o/v7+/f38//////////////////// + /////fv6////17+miUEAj0oBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBikMAoWgp+vfz/v7+/v79//////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////f39/fz8+/j2pW4z + iUAAj0sCj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0kAj0oBiUEA0ria/////fz8/v7+/v7+/////////////////v7+/v39/v39/v/+ + sH9LiEAAkEsCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAjkoAj0sCiD4Ax6Z//////fv6/v7+/v7+//////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////7+/v7//fz8////yqqHiD8Aj0sBjkkAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkA + j0sCiUIAqXU7/fz7/v39/v39/////////////////////////////v7+/fz7/v7+6t3PkU4NjkgCjkoB + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0kAj0oAjUcBkU0N7ODU/////f39/////v7+//////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////v7+/v///f38/v7+7+bdlVMOjEYBjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkBjUgB5dXG//// + /f38/////v7+//////////////////////////////7//fz7////w551iD4AkEwCjkkAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sB + hz4Ar35J/v39/fz8/v7+//////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////v7+/v39/fz7////tolYhz4Aj0sDjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEwBiEAAvZZq/////f37/v7+/v7+//////// + /////////////////////v7+/////f39/v7+9vHsnmMki0QAj0sAj0kAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oCi0QB2cKo//// + /fz7/v7+/v7+//////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////v7+/////fz8//// + 3su3jUcDjkoBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oBjEUBmlsZ9O7n/v79/f38//////////////////////////////// + /////////v7+/v7+/fz6////2cGpikIBj0oDjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0sBi0MAn2Qn+PTw/v79/f38/////v7+ + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////f39/fz8+vf0omosiUEAj0oBj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjkkAj0sCiD8A0reZ/////fz7/////v7+//////////////////////////////////////////// + /v7+/fz7/Pv6sH9KiD8AkEsBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsChj0Aw594/////fz7//7///////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////v7+/v7+/Pz7////yqmGiUAAj0sCjkkAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsBiUEAq3hA + /Pz6/f38/v39//7+/////////////////////////////////////////////v7+/////f37////7OLW + k1EOjUcBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAjkoBjUcCklAO6t7Q/v7+/fz7/v7+//////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////v7+/////f39//7/7ePYk1ENjUcAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAjUcBj0sG6NrL/////fz8/v///v7+ + /////////////////////////////////////////////////v7+/v7+/fz7////xqR+hz4Aj0sCjkkA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjkkAkEsBiUEAsIFN/v79/v39/v3+/v7+/v7+//////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////v79 + /Pz7/v7+s4RQiEAAkEwCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBhz4AwZty/////fz8/v7///7+//////////////////// + /////////////////////////////////////v7//v39/v399/PuoWgrikIAj0oBj0kAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sC + iEAA176j/////fz7//////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////v7+/v7+/fz8////2sSti0QBjkoC + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0kAj0sBi0QAm14d9vHr/v79/f39//////////////////////////////////////////// + ///////////////////////+/////fz8////3MawikMBj0oCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0sCi0QBnGAi9O7n/v38 + /fz8/v7+//////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////f39/v39+fbzoGcoikIAj0sBjkkAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sC + iUEA1buf/////fz8/v7+/v7+//////////////////////////////////////////////////////// + /////////v7+/f79/fz8/f39soNPhz4Aj0sCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEwChz0AwZxz/////f38/v7+/v7+//// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////v7+/Pz7////x6V/iD8AkEwBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0wBiEAArHpD/v7+/v38/v7+ + /////////////////////////////////////////////////////////////////////////////v7+ + /f38/v7+69/SlFIPjUcBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAjkgBkEwG6dvN/////fz8//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////v7+ + /////Pz7/v397ODUlFMRjUcCj0oBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkBkE0I6NvM//7+/fz8/////v7+//////////// + /////////////////////////////////////////////////////////////////////fz7////yKaB + hz0AkEwDjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAjkkAj0sCiUEArXtG/Pv5/fz7/v39/v7+//////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////v///f38////sH9K + hz8Aj0wCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAjkkAj0wChz8AwJlv/////f38/v7+/v7+//////////////////////////////// + /////////////////////////////////////////////v7+/v7+/f39/f389/Puomgti0MAj0sCj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0sDiD8A1r2i/////fz7/////v7+//////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////v7+/f38////18ClikMAj0sBjkkAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkA + j0oBi0QAnmIj9vHs/v39/v39//////////////////////////////////////////////////////// + /////////////////////////////////////v7+/fz8////3sq0jEYAjkoCjkkAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oAi0UA + nWAf9vHs/v7+/v79//////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////v7+/v7+/f38/f389vHsn2Qli0QBj0sBj0kAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oCikIA2MGo//// + /fz7/////v7+//////////////////////////////////////////////////////////////////// + /////////////////////////////fz8////tYhWhz4Aj0wBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsCiD8AwJpw/v7+/fz7 + /v7+/v7+//////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + ///////+/////fz7////xKF6hz4AkEwCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0wBiEAAsH9L/////f38/v79/v7+//////// + //////////////////////////////////////////////////////////////////////////////// + /////v7+/////fz7/v797uXblVQVjEYBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkCjkkG59jJ/////f38/////v7+//// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////v7+/v///f38//// + 6t3PkU4IjUcBjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjUgBkU4J6t7Q/v7+/fz8//////////////////////////////// + /////////////////////////////////////////////////////////////////////////v7+/v7+ + /fz7////yqqGiEAAj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsBiUEAqnY9/Pr4/v39/v7+//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + ///////////////////////////////////////////////////+/v39/fz7/fz7r39KiUEAj0sCj0kA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjkkAkEwChz0Aw553/////fz8/v7+/v7+//////////////////////////////////////////// + /////////////////////////////////////////////////////////////////f39/v79+/n3omor + ikEAj0sBj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAjkoAj0sCiEAA0raY/////fz6/v7+/v7+//////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////v7+/v7//fz7////1ryiiUIAj0oCjkoAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0sBikMBnmMm + +PTw/v39/f39//////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////v7+/v7+/fz7////38u2i0QEjkoDjkoAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0kAj0sBjEUAmVwb9e/p/v7+/f38//////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////f38/v7+9vHsnF8eikMAj0oAj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oBikMA2MCl/////fz7/////v7+ + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////v7+/fz8/v7+t4pZiD8AkEwCjkkAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEwChz4A + vpVq/////fz7/v/+/v7+//////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////v7+/v7+ + /Pz7////wJpwhz0Aj0wDjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsBiUAAr39J/v7+/v39/v7+/v7+//////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////v7+/////f39////8urillcTjEYAj0oAj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAjUgCjkgE5dXE/////fz7 + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////v7+/////fz8////59nLkEsHjUgB + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAjkoBjEcBk1AN7OLW/v///fz7//////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////v7+/v7+/Pz7////za6OiEAAj0sCjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEwBiUEAqnY8/f38/v39/v3+/v7+//////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////f39/fz8/fz7rHlCiUEAkEsBjkkAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sC + iD8AyKaB/////fz7/v///v7+//////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////v79 + /fz7+fXypW0xiUEAj0sBj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBiUEA0bWX/////fz8/////v7+//////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////v7+/v7+/fz7////z7OTikIAj0oCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAj0sBikMAn2Yl+vf0/v7+/f39 + //7///////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////v7+/////fz7////4tG+jEYC + jkoBjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oBjEUCl1gY8+vk/v79/fz7//////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////f38////7eLWlFEOjEcBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAjkoBi0QA28av/////fz7/v7//v7+//////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////v7+/v79/fz7/v7+uY5fiEAAj0wCjkkAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + jkkAkEsCiD8Auo9h/////fz8/v7+/v7+//////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////v7+/v7+/v79/fz8+/r4rHlE + iUEAkEsCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAjkkAj0sBiD8As4RR/f39/v39/v7+///+//////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////v7//f38/v7+7+fdl1cUjEYBjkoAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oBjkgB + 4tC+/////f38/////v7+//////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////v///v7+/Pz7////wp51hz4Aj0sCj0kAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjUcBk1EN7+Xb/////f39/////v7+//////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////fz8////z7GRhz4Aj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsCiUEAp3E4/Pv5/v38/v39 + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////v7+/v7+//7+/fz7////3ciwjEUAjkkBj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsChj0Ax6WA//// + /fz7/v7+/v7+//////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /v7+/v7+/f39/fz7+vj1qHI4iUEAj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAkEsCiD8Az7GR/////f38/v7+/v7+//////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + ///+/////fv7////7OHUlVQWjEYBj0oBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBikMAomks+PPv/v39/v79//////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////v7+/fz7 + ////5NPBj0oGjkgBj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oBjEYAl1gU8uri/v7+/fz8//////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////v7+/v7//f38////8uvj + n2QoiUEAkEwCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oCi0QB38u2/////fz7/////v7+//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////f38////u5Jlhz0A + kEwCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAjkkAj0sBiD8AupBi/////fz8/v7+/v7+//////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////v7+/////fz8/v7/+PTvq3dAiD8AkEwBjkkAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjkkAj0wCiEAAt4pa/v7+/f38/v79/v7+//////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////v7+/v7+/fz8/v398erimVwcjEUBj0sBj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjkkBjUgE4M66/////fz7/////v7+//////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////v7+/v7+/////fz8////+vj1rHpFiD8Aj0sCjkkAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAj0oAjUcBlVQR + 7+bd/v7+/f39//////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////v7+/fz7////0LSUiUEAj0sCjkkAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBikIAo2sv + +/n4/v39/v7+//////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////v39////+/n2tYhXhz4Aj0wDjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsChj0AyquI/////fz7/////v7+ + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////v7+/fz8/fz7qHM5iUEAj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsChz4Ay6uJ/////fz7/v7+ + /v7+//////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////v7+///+/v7+/fz7////+vf0 + rXtIikIAj0sDj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAj0sBikIAo2wx+PXx/f38/f38/v7+//////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /v7+/////Pz7////4tLAjkgHjUgCj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oBjEUBllYS8Oje/v7+/f38//////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////fv7////9/Puq3hChz4Aj0sBj0oAj0kA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAjkkAjkoBi0UA4M24/////fz7//////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////v7+/v7+/Pz6 + ////vpZqiD4Aj0wCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBiD8AuItc/////fz8/v7+/v7+//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////7+/////v7+/fz7////7+XaomoxiEAAkEwDj0oAjkkAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEwC + hz4AtolZ/////fz8/v3+/v7+//////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////f39/v7+9vHsnGAdi0MA + j0sBj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAjkkAjkkCjEYB38y3/////fz8/////v7+//////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////v7+/v7+ + /v///v39/Pz7////38y3mFkciUAAkEwCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oBjEYDllYX7+bc/v7+/f38 + /v7+//////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////v7+/v7+/fz7////1LqeiUEBj0sDjkoAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoA + j0sBikIApGww+vj1/v39/f39/v7+//////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////v7+/////////Pv6////////y6yJ + j0sEikMAkEsBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsCiD8Azq+O/////fz7//////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////v39/fz7/Pr5qnY9iD8Aj0wCj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBiD8AzK2M + /////Pz7/////v7+//////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////v7+/v7+/////v7+/fz7////8+zks4NTiUEAjUkAkEsCjkkAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0kAkEsBiUEApnA0/fv6/v39/f79/v7+/v7+//////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////v7+/v///f38////5tjJkUwIjkgAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjEYBlFIP7uTa/v7+/f38//// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////v7+/////v7+/fz7////////3Mixm14hiEAAj0sCj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + jkoAjkkCjkkG4c+7/////fz7/v7+/v7+//////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //7+/v7+/fz7////v5lviD8Aj0sDjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsCiUAAtIZV/////v39/v7+/v7+//////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////v7+/v7+///+/v39 + /fz8////+PTvvpZujUgDikQAkEwDj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsChz4AuI1d//// + /fz7/v7+//////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////7+/f38/f38 + 9O7nm10ci0QAj0oBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oBikMA3ciy/////fz8/////v7+//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////v7+/////v7+/fz7////////28aunmImhz4A + jkkAj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjEYAl1gW8+vk///+/f38/////v7+//// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////v7//Pz7////1LqdikIAj0sB + jkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAjkkAj0oBikMAoWgp+fby/f39/f39//////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////v7+/v7+/////v7+/fz7/v//////8OjdtolbjEUAikMAkEwCj0oAjkkAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsCiUEAzrGR/////fz7/v7+/v7+//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////v39/fz7/f38rn1HiD8Aj0sCj0kAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkA + j0sBiD8AyKiE/////fz8/v7+/v7+//////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////f38////////+/j2y62LlVQSiD8AjkoBj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjkkAj0oBiUEApW4z+vj1/v39/v39//////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////v7+/v7+/Pz7/v7+6d3Qkk8LjUcBjkoAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjUcBkk8J7eTZ + /v7+/f38/////v7+//////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////v7+/////v7+/f38/f39/////Pr4 + 2sSsomktiD8AjEcAkEwCj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAj0oAjkkAjkgD + 49PB/////fz8/////v7+//////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////v7+/f38////w552hz4Aj0wBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBiD4As4VS/////f39/v7+//// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////v7+/v7+/////f38/v7+////////38y3qXU+iUEAikMAkEsCj0sB + jkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsChz4AvJNm/////fz7/v7+/v7+ + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////v7+ + /////f39/f389vHrnGAgikMAj0sCj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkBjEYA3Mex/////fz7/v7+/v7+//////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /v7+/////////v39/fz8/v7/////////4tC9rntHjUgCiUIAkEsCj0sBj0oAjkkAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAj0oBjEUBmVsZ9O7m/v7+/f38//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////v7+/v7+/Pz7//// + 2MCnikMAj0oCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAjkkAj0oAi0MAnmMj+ffz/v39/f38//////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////v7+/v7+/v7+/v7+/v39/fv6//// + /////fz82MGnrXtIjUYAiUEAjkkAkEwCj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAjkkAj0sCikEA0bWX/////fz7/////v7+//////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////v7+/f39////r35IiUAAj0wC + jkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAjkkAj0sBiEAAxKF6/////fz8/v7+/v7+//////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////v7+/////v7+/f38/fz6/v7/////////8uvj0bWXomktjEUAiD4A + j0oBkEsBj0oAjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAkEsC + iUEAqHQ7+/j2/fz8/v39/v7+//////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////v7+/////fz7/v7+6NvNkEwIjUgBj0oBj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + jUgBkk8K7ODV/////fz7/////v7+//////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////v7+ + /////v7+/v7+/v7+/v39/v39/////////f3859jKvZVqnF8hiD8Ai0QAj0oAkEwEj0oAjkkAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkgBjkkE5dXE/////fz7 + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////v7+/v7+/Pz7////w551iD4Aj0wCjkkAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsCiUEAsIBL//// + /f38/v7+///+//////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////v7+/////v7+/fz8/fz6//////// + ////////69/T0baYqndBjkgAiUAAi0QAkEwDj0sBj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBiD8AvZRo/////fz7/////v7+//////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////v7+/f39+vbzn2UlikMAj0oBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sCi0QA2sOq/////fz7/v7//v7+ + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////v7+/////v7+/v7+/v79/v38/v38/f38/v///////////v398Ojf0bWXsYBNlVUShz0A + ikIAjkkAkEwCj0sCj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oBi0UBmlsc8eri/v39/fz8/v7+//////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////v7+ + /////Pz7////28avi0MBj0oCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0sBikMAnmIj+PXx/v39/f38///+//////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////v7+/////v7+/v79/f38 + /fz7/fz6/v7+/////////////////Pr55dXDyaqHr31Lkk8HikMAiUEAjUYAkEwDj0sBjkkAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + jkkAj0oBiUEA1Lqd/////fv6//////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////v7+/f79/fz7/f38 + sYJOiEAAj0sCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAjkkAj0sBiD8AxKB5/////fz8/v///v7+//////////////////////////// + /////////////////////////////////////////////////////////////////v7+/////v7+/v39 + /v39/v39/v39/v39/v39/v38/v38/fz8/fz8/f38/f38/v38/v38/v39////////////////////9vDq + 6d3P0baYtIZVn2Unkk8HhjsAiUAAjkgAj0sBkEsCj0sBj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsCiUAArHpD/f38 + /v39/v39/v7+//////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////fz8////7OHWkk8KjUcAjkoA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAjkkAjUgBkU4J6NrM/////fz8//////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + ////////////////////////////////////////9O3l49PB1Lqew552soNRnmIhikIAikIAiUEAikIA + jUgAkE0EkEwCj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoBjUgCj0wK59nK/////fz7/v7+//////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////v7+/v7+/fz7////xqR+hz4AkEwCjkkAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sC + iUEArnxG/v7+/f38/f39/v7+//////////////////////////////////////////////////////// + /////////////////////////////////v7+/////fz6+PXv+fXy+fXy+fXy+fbz9vDr8Oje8Oje6dzO + 5NXE2MCmzbCPv5dusIBMn2UnmlwZk1EJjEUAhz0AiUEAjUcAkEwEkE0EkU0EkU0EkEwDj0sCj0sCj0sC + j0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sC + j0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sC + j0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sC + j0sCj0sCj0sCj0sCj0sCj0sCj0sBkE0Ehz4Av5ht/v7+/fz7/v7+//////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + ///////////////////////////+/f39/f389/PuoGYnikIAj0sCj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsBiUAA1r2i//// + /Pz7/////v7+//////////////////////////////////////////////////////////////////// + /////////////////fz7////4M25l1YeoGYnn2MknmMkn2QmmVsYkUwEkU0FhTkAgzcAhDgAhDkAhDkA + hToAhToAhz0AiEAAikIAi0UAi0QAikIAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEA + iUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEA + iUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEA + iUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEA + iUEAiUEAikIAhz0Am1wc9O7o/v7+/f39/////v7+//////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////v7+//7//f38////2sSsi0QAj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oBi0UBnWEg9fDr/v39/f39//////// + //////////////////////////////////////////////////////////////////////////////// + /fz7////6NrMtIZYupFjuY9huo9huY9gupBjvJNnvJNnvpdsv5dtv5dtv5dsvpdsvpdsvpdsvpZrvpZr + vpVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVq + vZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVq + vZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVq + vZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvpdsuI1g + 4M24/////fz8/v7+/v7+//////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + ///////////////////////////////////////////////////////////////////////////////+ + /v7+/fz7////tIZUiD8Aj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsBiD8AwZxy/////fz7/v7+/v7+//////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////v7+//////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////v7+/v7+/fz7/v397ePY + llURjEYBj0oBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAjkgBkEsF6NrN/v7+/fz8/////v7+//////////////////////////// + /////////////////////////////////////////////////v7+/////v79/fz7/fz7/fz7/fz7/fz7 + /fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7 + /fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7 + /fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7 + /fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7 + /fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/v39/v7+/v7+/v7+//////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////v7+/Pv7////yaiEiD8Aj0sBjkkA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjkkAkEsCiUEArXpD/v7//f39/v7+//////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////v7+/////f39/v38+vf0oWgrikIAj0sBj0kAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oB + ikMA1bqf/////fz7/v7+/v7+//////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////v7+/v7+/fz7////3MiyjEYBjkkBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oBi0QAmlwa9O7n/v39 + /f38/////v7+//////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////v7+/f39////tIdViD8Aj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsBiD4Avpds/////f38/v7+//////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////v7+//// + /fz8/v7+7+XblFIOjEYBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjUgBjkoD5dbF/v7//fz7/v7+/v7+//////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////v7+/////v7+/v38/v39 + /v38/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39 + /v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39 + /v39/v39/v39/v39/v39/v39/////////v////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////v7+/v7+/fz8////y6uI + iUEAj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAjkkAj0sBiUEAq3c//fz7/v38/f79//////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////v7+//////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////v7+/v7+//////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////f39/v39/Pv6pGwuikEAj0sBjkkA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjkkAj0sCikIA1Lqd/////fz7/v///v7+//////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////v7+/v7++fbzqXY9nmImoGYnoGUnoGUnoGUnoGUnoGUnoGUnoGUn + oGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUn + oGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnn2UnoGUnnmMm4c+8//// + /fz8//////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////v7+/////fz7////4tC9jUgEjkkCjkoAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oBi0QA + mVsZ8+zl/v38/fz8//////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////v7+/fz7////xaJ8hToAi0QAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIA + ikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIA + ikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAi0QAhDoAqHI6+/n3/v39/v7+//////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////v7+/v7+/fz8////uIxciUAAkEsCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEwCiD8AvpZs/////fz7 + /v7+//7+//////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////v7+/////fz7/v7+ + 7ODUk1EPjUcCkEwDj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sB + j0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sB + j0sBj0sBj0sBj0sBj0sBj0sCkEsCjkkDkk4L6t7Q/////fz7//////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////f39/v7+8enhllYQjUYAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAjkkBjkkE49PB/////fz8/v///v7+//// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////v7+/f38////soJOiEAAj0sBjkkA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjkkAj0wBiD8Awp10/////fz8/v7+/v7+//////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////v7+//// + /Pz7////za+OikEAkEsBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAj0sDiEAAp3I3/Pr4/f38/v39/v7+//////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////v7+/Pz7////2cOri0QAj0oBjkkAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oBi0UAnWAf + 9vHs/v79/fz8//////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////v7+/f39/f38+/n3pm8z + iUEAj0sBj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAjkkAj0oCikIA0LOU/////fz8/////v7+//////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////v7+/v7+/f38/f38+PPvoGcqi0QBj0sBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0sCiUEA1r2i/////fz7/v7+/v7+ + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////v7+/////fz7////4tC9jkkDjkkBjkoAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAi0YAl1gT8+3l/v7+/f39//////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /fz7////x6V/iD8AkEsCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsCiEAArXtF/f38/f38/v7+//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////v7+/v7+/fz8////vJJmiD4AkEwCjkkAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sCiEAA + upFj/////fz8/v7+/v7+//////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////v7+/f38/v7+6t7RklALjUcB + jkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0kAjkgBkU0I6NrM/////f38/////v7+//////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////v7//fz8/v798eril1kVi0QAj0oBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkgBj0oG5NPC/////fz7 + /////v7+//////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////v7+/v79/f38/f38soNQiUEAj0sCj0kAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsC + hz4AwZty/////fz8/v7+/v7+//////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + ///////+/v///f37////0bWXiUEAj0sCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBiUEApm8z/fz6/f38/f39//////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////v7+/////fz7////3MexikMAj0sCjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oBi0MBnGEj9vLt/v39/f38 + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////f39 + /f38/Pr4qHM6iUEAj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oCiUEAz7KS/////fz7/v7+/v7+//////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////v39/f38+PXxomotikIAj0sBj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBiUIA1r2i/////fz7/////v7+//////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////v7+/v7+/fz7////49PBjUgC + jkkBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAjEYBllYU8ejf/v79/f38/////v7+//////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////v7+/v7+/fz7////y6yJ + hz8Aj0sCjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0kAkEsBiD8ArXpD/fz7/v38/v7+/v7+//////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////v7+/fz8////vJNmhz8Aj0sBjkkAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + jkkAkEsChz4At4ta/////fz8/v7+//////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////v7+/////f39////7ePZlFIPjEYAj0oAj0kAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + jkoAjUgCkEwL6dzO/////fz7//////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////v7+/////fz8/v398+vkmFoXi0UAj0oBj0kAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAjkkBjUcD + 38y3/////fz7/v7+/v7+//////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////v7+/fz7/f38tYdVhz8Aj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBiD8AwZtx//// + /fz8/////v7+//////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////v7+/v7+/fz8////0reaikIAjkoBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBiUEApGww+/j2/v38/f39 + /////v7+//////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////v7+/v7+/fz6////3su1jEUEjkoCjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oBi0QAnGAf9fDq/v79/f39//7+//////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////v79/v39/f39q3c+iUEAj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBiD8AzKyK/////Pz7/v7+//////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////v/+/f39/v79 + +fb0o2otikMAj0sBj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sCikIA07eb/////fz7/v7+/v7+//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////v7+/////fz8 + /v7/59fIjkoEjUkBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oBi0YBl1cV7+bc/f39/fz7/v7+/v7+//////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////v7+//7//fv7////yqmGiD8AkEwCjkkA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjkkAj0sBiEAAqXU7/Pv6/f38/v7+//////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////v7+/v7+/fz8////v5dtiD4A + kEsBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAjkkAj0sBiD8Atotb/////fz7/v7+///+//////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////7+/fz8/v7+7uTalVQUjUcCj0oBj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkCj0oK + 5tbG/////fz8/////v7+//////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////f39/v399O7om10ci0UBj0oBj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + jkkAj0oBjUcB4M25/////f38/v7///////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////v7+/////f38////tolXiD8AkEwCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEwCiD4Avpdr/////fz7/v39/v7+ + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////v7+/////fz8////07ibiUAAkEsBjkkAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0sCikIAomos + +PTw/fz8/f39/v7+//////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /fz7////3ciyikMAj0oCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAj0oAi0UAmlsY9O7n/v7+/v39/v////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////v7+/f39/f38/v79q3c/iUAAj0wCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEwChz4AyaiF/////fz7//// + /v7+//////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////v7+/f39/f38+fXxomoviUEA + kEwCjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAjkoAj0sCiUAA07mc/////fz7//////7+//////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////fz8////6NvMkEwHjUgBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAjUcAk1EL7uTa/////f39//////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////v7+/////f38////y6uJhz8Aj0sBjkkAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAj0sB + iUAAq3dA/Pr4/fz7/f39/v7+//////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////v7+/v///fz7 + ////wpxziD8AkEsBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAjkkAkEwCiD8AtIZU/v39/fz7/v39/v7+//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////f38/v7+7uPYlFMPjUcBjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkgBj0oC5dbG/////fz7 + /v7+//////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + ///////////////////////////////////////////////////////////+/fz8/v399/LunGAfi0MA + j0sBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAjkoAj0kBjEUC3cm0/////fz7/////v7+//////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /v7+/v79/f38/v7+tYhYiD8AkEsCj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0wChz0AvpZr/////fz8/v7+//////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////v7+/v///fz7////17+likMAj0oBjkkAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kA + j0oBikMAomgq+vf0/f39/v7+//////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////v7+/////Pz7////4M24 + i0UAj0oBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0sBi0QBm10f8+3m/f38/fz7/v7+/v7+//////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////7+/v79/f39////rnxGiUAAkEsCjkkAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sCiEAAyKWB + /////Pz7/v7+/v7+//////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////v79/f38+PTxomkti0MAj0sBjkkAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + jkkAkEwBiUEA0rea/////fz7/v7+//////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////v7+/v7//fz7////6t3QkE0IjUgBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oBjUcBkk8M69/T/v7+/fz7//// + /v7+//////////////////////////////////////////////////////////////////////////// + /////////////////////////v7+/v7+/fz7////y6yKhz4Aj0sCjkoAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sCiUAAqnU9/Pz7 + /v38/v39/////v7+//////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + ///+/v7+/fz7////wZtyhz8Aj0wCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBiEAAsoJP/////f38/v7+//////////////// + //////////////////////////////////////////////////////////////////////////////// + /////v7+/////f38/v7+8enhllYSjUcBj0oBj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjUgCj0sJ5dbG//7+/Pz7/v7+/v7+//// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////v7+/////f38/v79 + +PTwnGAfi0QAj0sAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAjkkAjkoCi0QA28St/////Pz7/v7+/v7+//////////////////////// + /////////////////////////////////////////////////////////////////////////v7+/f38 + ////uI1diD8AkEsCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsBhz8AvpZq/////fz7/v7+//////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////v7+/v7+/fz7////2sSsi0UAj0oB + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0kAj0sCikMAnmQl9/Lt/f38/f39/////v7+//////////////////////////////////// + /////////////////////////////////////////////////v7+/v7+/fz7////4tC+jUcCjkkBj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0kAj0oBi0QAmVsZ9O3m/v79/f38/////v7+//////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////v7+/f38////sYFMiD8Aj0sBjkkAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkA + kEwChz4AxaJ8/////fz7/v7+//////////////////////////////////////////////////////// + ///////////////////////////////////+/f39/f39+/n3pGwwikEAj0sBjkkAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAj0sCiUAA + 07mb/////Pz7/v7+/v7+//////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////v7+/////fz7/v7+7OHUkU0HjUgBj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oBjUcBk1AO6+DU + /v7+/Pz7/v7+/v7+//////////////////////////////////////////////////////////////// + /////////////v7+/v///f38////za+OiD8Aj0oBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsCiUEAq3c+/fz7/fz8/f79//// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////v7+/v7+/fz8////xqR/iD8Aj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0wChz4AsIBM/v79/fz7/v7+//// + //////////////////////////////////////////////////////////////////////////////7/ + /fz8/v7+8erillYSjEYBj0oBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkBjkkF5tfH/////fz8/////v7+//////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////f39/f39+PXwn2Qli0MAj0oBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oBikMA2cKp/////fz8/v7///////////////// + /////////////////////////////////////////////////////////v7+/v7+/fz8////uI1fiD8A + kEwCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAjkkAj0wDhz4AvpVq/////Pz7/v7+/v7+//////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////v7+/////fz8//// + 2sWtikEAj0oBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oBi0MAnWAg9vDq/f38/f38/v7+//////////////////////////// + /////////////////////////////////////////////fz7////4tC9jUcAjkkBjkkAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + jEQAm10b9O/p/v7+/f38//////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////v7+/v7+/v39/v7+soJPiUAAkEwC + jkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAjkkAj0sDhz8Aw552/////fz7/v7+//7+//////////////////////////////////////// + /////////////////////v7+/f39/f38/Pr4pW8yikIAj0sCj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sCiUAA07ib/////fz7 + /v7//v7+//////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////f38/v7+7OHWklAMjUcBj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkA + jUgAklAK6dzO/////f38/v////////////////////////////////////////////////////////// + /v7+/////fz7////za+OiUEAj0sCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0sCiEAAqXY9+/n3/fz7/v39///+//////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////v7+/////fz8////yamFiD8Aj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0wCiEAArXpD/Pv6 + /fz6/v39/v7+/////////////////////////////////////////////////////////f39/v7+8eng + lVMPjEYAj0oBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAjkkAjkkBkEwF5tjJ/////f38/v///v7+//////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////v7+/f39/v39+fXyomkrikMAj0sCj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAj0sDikMC17+l/////fz7/////v7+ + /////////////////////////////////////////////v7+/v7+/f38////uI1diEAAkEsDjkkAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + jkkAkEwBiD8Au5Jl/////fz8/v7+//7+//////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////v7+ + /////fz8////3ciyi0QAjkoCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAj0sBi0QAnmIi9vLt/v7+/v7+//////////////////// + /////////////////////////v7+/////fz8////4tC9jkgEjkkBj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oBjEUBmFoX8uvj + /v39/fz8/////v7+//////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////v7+/v7+/fz8//// + tYdViD8AkEsBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAjkkAj0wDhz4AwZtx/////fz7/v7+/v7+//////////////////////////// + /////////////v7+/v39/Pr4pG0vikMAj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBiEAAz7KT/////fz7/v7+/v7+//// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////fz7/v7+7uTalVQQjEYBj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oBjUgCkU4N59jI/////fz8/////v7+/////////////////////////////v7+/v7+/fz8 + ////za6NiUAAj0sCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sCiUEApm8z/Pv5/v39/f39//////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////v7+/v7+/fz7////yaiDhz4Aj0sCjkkAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sB + iUAAqnY9/fz8/f38/v7+/////////////////////////////v7+/////f38/v398enhllcVi0UBj0oB + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAjkgBjkkD5NTD/////fz8/v7+/v7+//////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////f39/v39+/j2oWgqikIAj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sCiUIA07mb//// + /fz7/v7+/////////////////////////////v7+/f38////t4tahz8AkEsBjkkAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sCiD8A + upFj/////fz8/v7+//////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////v7+/v7+/fz7////4M67jEYDjkkCj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0sBi0QBm18g8+3l/v39/f38/v7+/v7+ + /////////////v7+/v7+/Pz7////5NTEjkkEjUkCjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAj0oAjEUAllcT8+vk/v39/f38//// + /v7+//////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /v7+/fz8////uIxciD8Aj0sCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsChz0Avpdr/////fz7//////////////////////// + /f39/fz8+/n3p3E4iUEAj0sCj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAj0sBiUAA0LSV/////fz7/v7+/v7+//////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////v7+/////fz8/v7+8Ojf + llYSjEcBj0oAj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAjkkAjkgBkEwI5dfG/////fz7/v7+/////////////v7+/fz7////0LSWiEAA + kEsCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAjkkAj0sBikIAp3A1/Pr5/v39/v39//////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////v7+/v7+/fz7////za2Mhz8AkEsCjkkA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0kAj0sBiEEArHlC+/r4/fz8/v39/v7+/v7+/v7+/f38/v398+zkmVoZi0UBj0oBj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + jkkBjUcA49LA/////f38/////v7+//////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////v38/f39+/n3pG0yikEAj0sCjkoAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sC + iD8A0ria/////fz7//////7+/v7+/fz7////u5Jlhz0Aj0wDjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsBiD8Au5Jk/////f38 + /v7+/v7+//////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////v7+/////f38////38y3jUcAjkoBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0sBjEUBmlsb8eng/v79 + /f38/////f38////5NTDjkkEjkkBjkkAj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oBjEUBl1gV8uvk/v79/f38//////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////v7+/v7+/fz8////t4xchz4AkEwCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0wCiD4Au5Jm/////fz7/f39/fz8+/n3 + qXQ6iUIAj0sBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAjkkAkEsBiD8A0LOU/////fz8/////v7+//////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /fz7/v7+8engllYWjEYBj0oBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAjkkBjkgD5NTD/////Pr5////0bSXiEAAj0sDjkoAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0kAj0sCikIAp3E3/Pr4/v39/v39/v7+//////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////v7+/////fz8////0baX + iUAAkEsBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0kAj0sBiUAApnE2+fbz/f388uvjl1cTi0UAj0oAj0kAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAjkkBjkgE5NTD + /////fz8/v////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////v7+/v3+/v39/Pv5p3I4iUEAkEsBjkkA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjkoAj0sCiUAAz7GT////upFjiD8Aj0wCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEwCiD8Au5Fj/////fz8/v7///7+//// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////fz7////4tG/jUcDjkkCjkoAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAj0oAi0MA + nWEh1r2ikE0KjkgBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0sBjEYBl1gX8urj/v7+/f38///+//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////v7+/v/+/Pz7////u5FkiD8AkEwBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oAjkkAkU4FjUcAj0oA + jkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAjkkAj0sCiEAA0bWW/////fz7/v7+/v7+//////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////f38/v7+8+zlmFkZjEYBj0sBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkgAj0oAjkkAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBikIA + qHI4/Pv5/v39/v7+//////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////v7+/v7+ + /fz6////0LOTiD8AkEwCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oAj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kCjUcF49G//////f38//// + /v7+//////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////v7+/v39+/r3qnY+ + iUEAkEsBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sChz4Au5Nm/v///fz8/v7+/v7+//////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////v7+/////f38////5tfIjkkIjkkCj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAjkoAj0oAjEYAl1cU8+zl/v7+/v39//////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////v7+/v7+/fz7////v5huhz4Aj0sCjkkAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kA + kEsChz8Az7KS/////fz7/////v7+//////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////v79/v7+9O7pmlwZi0UAj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAkEsCikEApnA3+vf0/fz7 + /v39/v7+//////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////v7+/////fz7////07ibiD8AkEsDj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkoBjEUA38y3/////fz7//////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////v7+/v39 + /fz7+/n3q3hBiUEAkEsCj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAjkkAj0wChz4AuY1f/////f38/v7+/v7+//////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////fz8////59jIj0oD + jkkBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oBjEYCl1YV7+Xb/v39/fz7/v7+//////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////v7+/v7+/f37////vpdthz0Aj0wCj0kAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsBhz4Ay6uJ + /////fz8//////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////v7+/fz8/v399O/om18hi0QBj0oBj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBiUEApW40+vf0/v39/v39/v7+/v7+ + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////f38////1r2iiUAAj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAjkkCjEYE4M24/////fz7/v7+//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /v7+/v7+/v79/v38/v39rnxIiEAAkEsBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAjkkAkEwChz8At4tZ/v7+/fz7/v7+//////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////v7+/fz7 + /v7+6NrMkU0LjkgCjkoBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjEYB + llYW7+Xb/v7+/f38/////v7+//////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////7//fz7////wJpwhz0A + kEwCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sCiD8Aza6M/////fz7/v7+ + /v7+//////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////v7+/////f39/v799vLtnWIki0QAj0sBj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAj0sBiUEApG0x+vf0/f38/v7+//////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////v7+/v7+/fz7////1r6ii0MAj0oCjkkAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAjkoAj0kCjEYF38y3/////fz7/////v7+//////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////v7+/f38/fz8rXtEiUAAj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkA + j0wChz8AuIxc/v7+/fz7/v39/v7+//////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /v7+/////fz8////697Skk8MjUgBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAjkoAjUYAllYR8Ofe/v/+ + /v39/v////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////v7+/v7+/fv6 + ////xKF6iD4AkEsCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0wCiD8Ay6uJ/////v38//////7+//////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////v79/v7++fXyn2Qli0MA + j0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0kAj0sCiUEApW8z+fby/fz7/f39/v7+//////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////v7+/////fz8////2cKqikQAjkoCj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjkoAjkkBjEYA4M24/////fz8/v7+//////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////v7+/v7+/fz7/Pv6sH9LiD8AkEsCj0kAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0wChz4At4pa + /////f38//////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////f38////7OLWkk4KjUgBjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0sBjEUBl1cV7uXb/v39/Pz8/v7+/v7+ + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /v7+/////fz8////xaJ8iD8Aj0wCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsBiUAAzK2L/////Pz7/v7+//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////v7+/v39/fz7 + 9/LtomgsikIAj0sCj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAjkkAj0sBiUIApGww/Pn3/f38/f39//////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////fz7////3Mewi0QAj0oB + jkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkB + jUcE3sq2/////Pz7/v7+/v7+//////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////v7+/v7+/f38////tolXiD8Aj0wBjkkAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsBiD8AuIxb/////fz8/v7+ + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////v7+/fz7/v7+7eLWlVMSjUcCj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjUYBllYT8Ojf/v7+/f39/////v7+//////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////fz8////yKaBhz4AkEsBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAjkkAj0sBhz8AyaiF/////fz7/v7+/v7+//////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////v7+ + /v7+/v39/v39+PTxomktikIAj0sBj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oBikMAomgq+fXy/v39/f39//////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////v7+/fz7//// + 3Mixi0MBjkoCjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oBi0MA3ciy//// + /fz8/////v7+//////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////v7+/fz7/v79tIdVhz4AkEwC + jkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEwBhz8AtIdV/////f37/v7+/v7+//////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////v7+/////f38////7+belVUUjEYBj0oBj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAjkoAjUYBlFMO7uPZ/v7+/fz8//////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////v7+/v7+/fz7////y6yJiD8Aj0sCjkkAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjkkAkEwBhz4AyKaD/////fz7/v///v7+//////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////v7+/v38+ff0pW4yikEAj0sBj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0sBikIAoWgq + +vf1/f38/f39//7+//////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////v7+ + /////fz7////4M24jEUFj0kCjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkCjEYB3ciy/////fz7/////v7+ + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////v7+/v39/fz7/v39 + tolZhz4AkU4FkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwD + kEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwD + kEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwCkU0EiEAAtIVS/////f39/v7+///+//////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////v///v39////8OfdlVQQhDoAiD8A + iD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4A + iD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4A + iD4AiD4AiD4AiD8AhToAkU4K7+Xc/v7+/f38/////v7+//////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////7+/////v7+////38y4y6yNzrGQzrCQzrCQzrCQzrCQ + zrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQ + zrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrGS + yqqM38u2/////v79/v7+/v7+//////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////v7+/v7+/v7+/v79//////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////v79/v7+ + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////f38/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8 + /fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8 + /fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/f38/v7+/////v7+//////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + ////////////////////////////////////////////////////////////////////////AAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA= + + + \ No newline at end of file diff --git a/LFP_Manager_PRM/Forms/fmxFwImageConverter.Designer.cs b/LFP_Manager_PRM/Forms/fmxFwImageConverter.Designer.cs new file mode 100644 index 0000000..697c11a --- /dev/null +++ b/LFP_Manager_PRM/Forms/fmxFwImageConverter.Designer.cs @@ -0,0 +1,291 @@ +namespace LFP_Manager +{ + partial class fmxFwImageConverter + { + /// + /// Required designer variable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Clean up any resources being used. + /// + /// true if managed resources should be disposed; otherwise, false. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Windows Form Designer generated code + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(fmxFwImageConverter)); + this.layoutControl1 = new DevExpress.XtraLayout.LayoutControl(); + this.lbFileInfo = new System.Windows.Forms.Label(); + this.btnClose = new DevExpress.XtraEditors.SimpleButton(); + this.btnConvert = new DevExpress.XtraEditors.SimpleButton(); + this.btnFileFind = new DevExpress.XtraEditors.SimpleButton(); + this.teFileName = new DevExpress.XtraEditors.TextEdit(); + this.layoutControlGroup1 = new DevExpress.XtraLayout.LayoutControlGroup(); + this.lcItemFileName = new DevExpress.XtraLayout.LayoutControlItem(); + this.emptySpaceItem1 = new DevExpress.XtraLayout.EmptySpaceItem(); + this.layoutControlItem1 = new DevExpress.XtraLayout.LayoutControlItem(); + this.lbFileName = new DevExpress.XtraLayout.SimpleLabelItem(); + this.emptySpaceItem2 = new DevExpress.XtraLayout.EmptySpaceItem(); + this.layoutControlItem6 = new DevExpress.XtraLayout.LayoutControlItem(); + this.layoutControlItem7 = new DevExpress.XtraLayout.LayoutControlItem(); + this.layoutControlItem8 = new DevExpress.XtraLayout.LayoutControlItem(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControl1)).BeginInit(); + this.layoutControl1.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.teFileName.Properties)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup1)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.lcItemFileName)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.emptySpaceItem1)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem1)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.lbFileName)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.emptySpaceItem2)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem6)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem7)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem8)).BeginInit(); + this.SuspendLayout(); + // + // layoutControl1 + // + this.layoutControl1.Controls.Add(this.lbFileInfo); + this.layoutControl1.Controls.Add(this.btnClose); + this.layoutControl1.Controls.Add(this.btnConvert); + this.layoutControl1.Controls.Add(this.btnFileFind); + this.layoutControl1.Controls.Add(this.teFileName); + this.layoutControl1.Dock = System.Windows.Forms.DockStyle.Fill; + this.layoutControl1.Location = new System.Drawing.Point(0, 0); + this.layoutControl1.Name = "layoutControl1"; + this.layoutControl1.OptionsCustomizationForm.DesignTimeCustomizationFormPositionAndSize = new System.Drawing.Rectangle(995, 203, 250, 350); + this.layoutControl1.Root = this.layoutControlGroup1; + this.layoutControl1.Size = new System.Drawing.Size(503, 333); + this.layoutControl1.TabIndex = 0; + this.layoutControl1.Text = "layoutControl1"; + // + // lbFileInfo + // + this.lbFileInfo.Location = new System.Drawing.Point(12, 70); + this.lbFileInfo.Name = "lbFileInfo"; + this.lbFileInfo.Size = new System.Drawing.Size(295, 214); + this.lbFileInfo.TabIndex = 12; + this.lbFileInfo.Text = "File Information"; + // + // btnClose + // + this.btnClose.Location = new System.Drawing.Point(254, 288); + this.btnClose.Name = "btnClose"; + this.btnClose.Size = new System.Drawing.Size(237, 33); + this.btnClose.StyleController = this.layoutControl1; + this.btnClose.TabIndex = 11; + this.btnClose.Text = "Close"; + this.btnClose.Click += new System.EventHandler(this.btnClose_Click); + // + // btnConvert + // + this.btnConvert.Location = new System.Drawing.Point(12, 288); + this.btnConvert.Name = "btnConvert"; + this.btnConvert.Size = new System.Drawing.Size(238, 33); + this.btnConvert.StyleController = this.layoutControl1; + this.btnConvert.TabIndex = 10; + this.btnConvert.Text = "Image Convert"; + this.btnConvert.Click += new System.EventHandler(this.btnConvert_Click); + // + // btnFileFind + // + this.btnFileFind.Location = new System.Drawing.Point(402, 12); + this.btnFileFind.Name = "btnFileFind"; + this.btnFileFind.Size = new System.Drawing.Size(89, 25); + this.btnFileFind.StyleController = this.layoutControl1; + this.btnFileFind.TabIndex = 5; + this.btnFileFind.Text = "Find ..."; + this.btnFileFind.Click += new System.EventHandler(this.btnFileFind_Click); + // + // teFileName + // + this.teFileName.Location = new System.Drawing.Point(92, 12); + this.teFileName.Name = "teFileName"; + this.teFileName.Properties.Appearance.Font = new System.Drawing.Font("Tahoma", 11F); + this.teFileName.Properties.Appearance.Options.UseFont = true; + this.teFileName.Size = new System.Drawing.Size(306, 24); + this.teFileName.StyleController = this.layoutControl1; + this.teFileName.TabIndex = 4; + // + // layoutControlGroup1 + // + this.layoutControlGroup1.CustomizationFormText = "Root"; + this.layoutControlGroup1.EnableIndentsWithoutBorders = DevExpress.Utils.DefaultBoolean.True; + this.layoutControlGroup1.GroupBordersVisible = false; + this.layoutControlGroup1.Items.AddRange(new DevExpress.XtraLayout.BaseLayoutItem[] { + this.lcItemFileName, + this.emptySpaceItem1, + this.layoutControlItem1, + this.lbFileName, + this.emptySpaceItem2, + this.layoutControlItem6, + this.layoutControlItem7, + this.layoutControlItem8}); + this.layoutControlGroup1.Location = new System.Drawing.Point(0, 0); + this.layoutControlGroup1.Name = "Root"; + this.layoutControlGroup1.Size = new System.Drawing.Size(503, 333); + this.layoutControlGroup1.Text = "Root"; + this.layoutControlGroup1.TextVisible = false; + // + // lcItemFileName + // + this.lcItemFileName.Control = this.teFileName; + this.lcItemFileName.CustomizationFormText = "File Name : "; + this.lcItemFileName.Location = new System.Drawing.Point(80, 0); + this.lcItemFileName.MaxSize = new System.Drawing.Size(0, 29); + this.lcItemFileName.MinSize = new System.Drawing.Size(163, 29); + this.lcItemFileName.Name = "lcItemFileName"; + this.lcItemFileName.Size = new System.Drawing.Size(310, 29); + this.lcItemFileName.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.lcItemFileName.Text = "File Name : "; + this.lcItemFileName.TextSize = new System.Drawing.Size(0, 0); + this.lcItemFileName.TextToControlDistance = 0; + this.lcItemFileName.TextVisible = false; + // + // emptySpaceItem1 + // + this.emptySpaceItem1.AllowHotTrack = false; + this.emptySpaceItem1.CustomizationFormText = "emptySpaceItem1"; + this.emptySpaceItem1.Location = new System.Drawing.Point(299, 58); + this.emptySpaceItem1.Name = "emptySpaceItem1"; + this.emptySpaceItem1.Size = new System.Drawing.Size(184, 218); + this.emptySpaceItem1.Text = "emptySpaceItem1"; + this.emptySpaceItem1.TextSize = new System.Drawing.Size(0, 0); + // + // layoutControlItem1 + // + this.layoutControlItem1.Control = this.btnFileFind; + this.layoutControlItem1.CustomizationFormText = "layoutControlItem1"; + this.layoutControlItem1.Location = new System.Drawing.Point(390, 0); + this.layoutControlItem1.MinSize = new System.Drawing.Size(93, 26); + this.layoutControlItem1.Name = "layoutControlItem1"; + this.layoutControlItem1.Size = new System.Drawing.Size(93, 29); + this.layoutControlItem1.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem1.Text = "layoutControlItem1"; + this.layoutControlItem1.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem1.TextToControlDistance = 0; + this.layoutControlItem1.TextVisible = false; + // + // lbFileName + // + this.lbFileName.AllowHotTrack = false; + this.lbFileName.CustomizationFormText = "File Name"; + this.lbFileName.Location = new System.Drawing.Point(0, 0); + this.lbFileName.MaxSize = new System.Drawing.Size(0, 29); + this.lbFileName.MinSize = new System.Drawing.Size(80, 29); + this.lbFileName.Name = "lbFileName"; + this.lbFileName.Size = new System.Drawing.Size(80, 29); + this.lbFileName.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.lbFileName.Text = "File Name"; + this.lbFileName.TextSize = new System.Drawing.Size(52, 14); + // + // emptySpaceItem2 + // + this.emptySpaceItem2.AllowHotTrack = false; + this.emptySpaceItem2.CustomizationFormText = "emptySpaceItem2"; + this.emptySpaceItem2.Location = new System.Drawing.Point(0, 29); + this.emptySpaceItem2.Name = "emptySpaceItem2"; + this.emptySpaceItem2.Size = new System.Drawing.Size(483, 29); + this.emptySpaceItem2.Text = "emptySpaceItem2"; + this.emptySpaceItem2.TextSize = new System.Drawing.Size(0, 0); + // + // layoutControlItem6 + // + this.layoutControlItem6.Control = this.btnConvert; + this.layoutControlItem6.CustomizationFormText = "layoutControlItem6"; + this.layoutControlItem6.Location = new System.Drawing.Point(0, 276); + this.layoutControlItem6.MinSize = new System.Drawing.Size(93, 26); + this.layoutControlItem6.Name = "layoutControlItem6"; + this.layoutControlItem6.Size = new System.Drawing.Size(242, 37); + this.layoutControlItem6.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem6.Text = "layoutControlItem6"; + this.layoutControlItem6.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem6.TextToControlDistance = 0; + this.layoutControlItem6.TextVisible = false; + // + // layoutControlItem7 + // + this.layoutControlItem7.Control = this.btnClose; + this.layoutControlItem7.CustomizationFormText = "layoutControlItem7"; + this.layoutControlItem7.Location = new System.Drawing.Point(242, 276); + this.layoutControlItem7.MinSize = new System.Drawing.Size(93, 26); + this.layoutControlItem7.Name = "layoutControlItem7"; + this.layoutControlItem7.Size = new System.Drawing.Size(241, 37); + this.layoutControlItem7.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem7.Text = "layoutControlItem7"; + this.layoutControlItem7.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem7.TextToControlDistance = 0; + this.layoutControlItem7.TextVisible = false; + // + // layoutControlItem8 + // + this.layoutControlItem8.Control = this.lbFileInfo; + this.layoutControlItem8.CustomizationFormText = "layoutControlItem8"; + this.layoutControlItem8.Location = new System.Drawing.Point(0, 58); + this.layoutControlItem8.Name = "layoutControlItem8"; + this.layoutControlItem8.Size = new System.Drawing.Size(299, 218); + this.layoutControlItem8.Text = "layoutControlItem8"; + this.layoutControlItem8.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem8.TextToControlDistance = 0; + this.layoutControlItem8.TextVisible = false; + // + // fmxFwImageConverter + // + this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 14F); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.ClientSize = new System.Drawing.Size(503, 333); + this.Controls.Add(this.layoutControl1); + this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon"))); + this.Name = "fmxFwImageConverter"; + this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen; + this.Text = "Firmware Image Converter"; + ((System.ComponentModel.ISupportInitialize)(this.layoutControl1)).EndInit(); + this.layoutControl1.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.teFileName.Properties)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup1)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.lcItemFileName)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.emptySpaceItem1)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem1)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.lbFileName)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.emptySpaceItem2)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem6)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem7)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem8)).EndInit(); + this.ResumeLayout(false); + + } + + #endregion + + private DevExpress.XtraLayout.LayoutControl layoutControl1; + private DevExpress.XtraLayout.LayoutControlGroup layoutControlGroup1; + private DevExpress.XtraEditors.TextEdit teFileName; + private DevExpress.XtraLayout.LayoutControlItem lcItemFileName; + private DevExpress.XtraLayout.EmptySpaceItem emptySpaceItem1; + private DevExpress.XtraEditors.SimpleButton btnFileFind; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem1; + private DevExpress.XtraLayout.SimpleLabelItem lbFileName; + private DevExpress.XtraLayout.EmptySpaceItem emptySpaceItem2; + private DevExpress.XtraEditors.SimpleButton btnClose; + private DevExpress.XtraEditors.SimpleButton btnConvert; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem6; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem7; + private System.Windows.Forms.Label lbFileInfo; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem8; + } +} \ No newline at end of file diff --git a/LFP_Manager_PRM/Forms/fmxFwImageConverter.cs b/LFP_Manager_PRM/Forms/fmxFwImageConverter.cs new file mode 100644 index 0000000..007075f --- /dev/null +++ b/LFP_Manager_PRM/Forms/fmxFwImageConverter.cs @@ -0,0 +1,259 @@ +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Data; +using System.Drawing; +using System.Text; +using System.Linq; +using System.Windows.Forms; +using DevExpress.XtraEditors; + +using System.Runtime.InteropServices; +using System.IO; + +using LFP_Manager.Utils; + +namespace LFP_Manager +{ + public partial class fmxFwImageConverter : DevExpress.XtraEditors.XtraForm + { + #region CONST + + //const + // mFileMaxSize : DWORD = 262144; // 256KByte + // sFileMaxSize : DWORD = 131072; // 128KByte + + // ImageCode : DWORD = $53454355; + // ImageEmpty : DWORD = $00000000; + // MasterOnly : DWORD = $00000001; + // SlaveOnly : DWORD = $00000002; + // MasterSlave : DWORD = $00000003; + const UInt32 mFileMaxSize = 262144; // 256KBytes + const UInt32 ImageCode = 0x6D424D53; // mBMS + const UInt32 ImageEmpty = 0x00000000; // + + const UInt32 POLYNOMIAL = 0x04C11DB7; + + #endregion + + #region STRUCTURE + //TImageHeaderStructure = packed record + // ImageCode : DWORD; + // ImageType : DWORD; + // mImageSize : DWORD; + // mImageName : array[0..31]of Byte; + // mImageVersion : TImageVersionStructure; + // mImageCRC : DWORD; + // sImageSize : DWORD; + // sImageName : array[0..31]of Byte; + // sImageVersion : TImageVersionStructure; + // sImageCRC : DWORD; + // reserved : array[0..927]of Byte; + //end; + struct TImageHeaderStructure // Total 64bytes + { + public UInt32 ImageCode; // 4 + public UInt32 ImageType; // 4 + public UInt32 ImageSize; // 4 + [MarshalAs(UnmanagedType.ByValArray, SizeConst = 32)] + public byte[] ImageName; // 32 + [MarshalAs(UnmanagedType.ByValArray, SizeConst = 4)] + public byte[] ImageVersion; // 4 + public UInt32 ImageCRC; // 4 + [MarshalAs(UnmanagedType.ByValArray, SizeConst = 12)] + public byte[] reserved; // 12 + } + #endregion + + #region VARIABLES + + TImageHeaderStructure fwHeader; + byte[] fwdata; + + UInt32[] crc_table; + + #endregion + + #region CONSTRUCTORS + + public fmxFwImageConverter() + { + InitializeComponent(); + + crc_table = new UInt32[256]; + + gen_crc_table(); + } + + #endregion + + /* generate the table of CRC remainders for all possible bytes */ + void gen_crc_table() + { + int i, j; + UInt32 crc_accum; + + for (i = 0; i < 256; i++) + { + crc_accum = ((UInt32)i << 24); + + for (j = 0; j < 8; j++) { + if ((crc_accum & 0x80000000) != 0) + crc_accum = (crc_accum << 1) ^ POLYNOMIAL; + else + crc_accum = (crc_accum << 1); + crc_table[i] = crc_accum; + } + } + } + + /* update the CRC on the data block one byte at a time */ + UInt32 update_crc(UInt32 crc_accum, byte[] data_blk_ptr, UInt32 data_blk_size) + { + int i, j; + + for (j = 0; j < data_blk_size; j++) + { + i = ((int)(crc_accum >> 24) ^ data_blk_ptr[j]) & 0xff; + crc_accum = (crc_accum << 8) ^ crc_table[i]; + } + return crc_accum; + } + + byte[] getBytes(TImageHeaderStructure header) + { + int size = Marshal.SizeOf(header); + byte[] arr = new byte[size]; + + IntPtr ptr = Marshal.AllocHGlobal(size); + Marshal.StructureToPtr(header, ptr, true); + Marshal.Copy(ptr, arr, 0, size); + Marshal.FreeHGlobal(ptr); + return arr; + } + + bool MakeFwImageFile(byte[] fData, string AppPath, string FileName) + { + FileStream aFile = null; + string path = System.IO.Path.GetDirectoryName(AppPath); + string aFileName = String.Format("{0}\\{1}", path, FileName); + + bool result = false; + + if (File.Exists(aFileName) == false) + { + try + { + aFile = new FileStream(aFileName, FileMode.CreateNew, FileAccess.ReadWrite); + aFile.Write(fData, 0, fData.Length); + aFile.Close(); + + result = true; + } + catch (Exception) + { + } + } + return result; + } + + #region BUNTTON EVENT + + private void btnFileFind_Click(object sender, EventArgs e) + { + OpenFileDialog oDialog; + + oDialog = new OpenFileDialog(); + oDialog.DefaultExt = "*.*"; + oDialog.Filter = "bin files (*.bin)|*.bin|All files (*.*)|*.*"; + + if (oDialog.ShowDialog() == DialogResult.OK) + { + teFileName.Text = oDialog.FileName; + + FileStream fwFile = new FileStream(teFileName.Text, FileMode.Open, FileAccess.Read); + long fsize = fwFile.Length; + + if (fsize > 0) + { + fwdata = new byte[fsize]; + fwFile.Seek(0, SeekOrigin.Begin); + fwFile.Read(fwdata, 0, (int)fsize); + } + fwFile.Close(); + + byte[] bName = csUtils.StringToByte(Path.GetFileName(teFileName.Text)); + + fwHeader = new TImageHeaderStructure(); + fwHeader.ImageCode = ImageCode; + fwHeader.ImageType = 0x00000001; + fwHeader.ImageSize = (UInt32)fsize; + fwHeader.ImageName = new byte[32]; + Buffer.BlockCopy(bName, 0, fwHeader.ImageName, 0, bName.Length); + fwHeader.ImageCRC = update_crc(fwHeader.ImageCRC, fwdata, fwHeader.ImageSize); + fwHeader.reserved = new byte[12]; + + if (bName.Length > 8) + { + fwHeader.ImageVersion = new byte[4]; + + UInt32 nPC = (UInt32)((fwdata[0] << 0) | (fwdata[1] << 8) | (fwdata[2] << 16) | (fwdata[3] << 24)); + UInt32 nSP = (UInt32)((fwdata[4] << 0) | (fwdata[5] << 8) | (fwdata[6] << 16) | (fwdata[7] << 24)); + + for (int i = 0; i < 4; i++) + fwHeader.ImageVersion[i] = (byte)(bName[bName.Length - 1 - 3 - 4 + i] - 0x30); + + lbFileInfo.Text = String.Format("File Information"); + lbFileInfo.Text += String.Format("\r\n - Filename: {0}", Encoding.UTF8.GetString(fwHeader.ImageName).Trim('\0')); + lbFileInfo.Text += String.Format("\r\n - File Version: V{0}.{1}.{2}.{3}", fwHeader.ImageVersion[0], fwHeader.ImageVersion[1], fwHeader.ImageVersion[2], fwHeader.ImageVersion[3]); + lbFileInfo.Text += String.Format("\r\n - File Size: {0:#,##0} bytes", fwHeader.ImageSize); + lbFileInfo.Text += String.Format("\r\n - File CRC32: 0x{0:X8}", fwHeader.ImageCRC); + lbFileInfo.Text += String.Format("\r\n - Packet Size: {0:#,##0} packets", fwHeader.ImageSize / 2048); + lbFileInfo.Text += String.Format("\r\n - Last packet: {0:#,##0}", fwHeader.ImageSize % 2048); + + lbFileInfo.Text += String.Format("\r\n - PC: 0x{0:X8}", nPC); + lbFileInfo.Text += String.Format("\r\n - SP: 0x{0:X8}", nSP); + } + } + } + + private void btnConvert_Click(object sender, EventArgs e) + { + if (fwHeader.ImageSize > 0) + { + byte[] bHeader = getBytes(fwHeader); + byte[] cFwData = new byte[bHeader.Length + fwdata.Length]; + + Buffer.BlockCopy(bHeader, 0, cFwData, 0, 64); + Buffer.BlockCopy(fwdata, 0, cFwData, 64, fwdata.Length); + + string nFileName = String.Format("mBMS_APP_DL_V{0}{1}{2}{3}.bin" + , fwHeader.ImageVersion[0] + , fwHeader.ImageVersion[1] + , fwHeader.ImageVersion[2] + , fwHeader.ImageVersion[3] + ); + + if (MakeFwImageFile(cFwData, teFileName.Text, nFileName)) + { + MessageBox.Show("Firmware Image Convert Success !!", "FwUpdate", MessageBoxButtons.OK, MessageBoxIcon.Information); + } + else + { + MessageBox.Show("Firmware Image Convert Fail !!", "FwUpdate", MessageBoxButtons.OK, MessageBoxIcon.Error); + } + } + else + { + MessageBox.Show("Please select firmware file !!", "FwUpdate", MessageBoxButtons.OK, MessageBoxIcon.Warning); + } + } + + #endregion + + private void btnClose_Click(object sender, EventArgs e) + { + Close(); + } + } +} \ No newline at end of file diff --git a/LFP_Manager_PRM/Forms/fmxFwImageConverter.resx b/LFP_Manager_PRM/Forms/fmxFwImageConverter.resx new file mode 100644 index 0000000..8274a3b --- /dev/null +++ b/LFP_Manager_PRM/Forms/fmxFwImageConverter.resx @@ -0,0 +1,4571 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + + + AAABAAQAICAAAAEAGACoDAAARgAAADAwAAABABgAqBwAAO4MAACAgAAAAQAYACjIAACWKQAAAAAAAAEA + GAAoIAMAvvEAACgAAAAgAAAAQAAAAAEAGAAAAAAAgAwAAAAAAAAAAAAAAAAAAAAAAAD///////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + ///////////////////////////////////////////////////+/v7+/v7+/v7+/v7+/v7+/v7+/v7/ + ///+/v7////////////////////////////////////////////////////////+/v7+/v7+/v7+/v7+ + /v7+/v7+/v7+/v7+/v7////+/v7+/v3+/v3+/v3+/v7+/f3////////+/v7///////////////////// + ///////////////////////////+/v7////+/v7+/f3+/v7+/v3+/v3+/v3+/v7////7+ff///////// + ///////////////+/v3+/v7////+/v7////////////////////////////////////////+/v7////+ + /v7+/v7////////////////////////7+PbCnHejazCkbTKkbDKlbjSdYTDLrIr////9/Pz+/v7///// + ///////////////////////////////////////////+/v79/fz////BnHSeYjClbjSkbDKkbDOjazDc + x7L49PGkbDKEOACKQwCJQQCHPgCNRwTt49n+/v39/Pz+/v7+/v7///////////////////////////// + ///+/v7+/v79/Pv//v7j0sKHPgCJQACJQQCLRACCNgCufkv////////q3tKOSQePSgSPSwKRTQSHPgCt + e0f////9/Pv+/v7////////////////////////////////+/v7////9/f39/Pv9/PuiaS6JQQCQTQOP + SwKNSAOUUxLz7ef+/f37+Pb////AmnKGOwCQTAKOSQCPSwKHPwDaxa7////8+/r+/v7+/v7///////// + ///////////+/v7///7+/v77+vj////OsJGGPACQTAKOSQCQTAKGPADNr4/////7+ff9/Pv9/fz38u6Z + WhuLQwCPSgGPSgGLRQGcXyH59vP9/fz9/fz////+/v7////////+/v7+/v7////+/v77+vn////u5NqS + Tw+OSAKOSQCPSwKJQACiai/8+vn9/Pz9/f3+///9/Pv////WvqWHPQCQTAOOSQCQTQOGPADDn3j////8 + +/r+/v7////+/v7+/v7+/v79/fz8+/r9/f3////u49mdYSiKQwCPSwGOSQCPSwKKQgDi0L/////9/Pv+ + /v7//v7+/v79/Pz///+seUOIPwCQTAKOSQCOSQKNSAbq39P+/v39/Pz+/v7////////////////////+ + /v7SuJ6WVRiLRQCRTwaQTASSUAeHPgC4jV7////9/Pv+/v7////+/v7+/v79/Pz+/v7r39SOSQeOSgKO + SQCQSwKHPwCsekT+/v/9/Pz+/v78+/r49PDy6uPi0cDDn3yZXB9/MACEOACHPgCGOwCFPACEOgCTURDz + 7Ob9/fz9/f3////+/v7////////+/v78+/r////CnneGPACQTAKOSQCQTAKHPgDYwan////9/Pz38u7o + 2szgzbvTuZ/MrY/St5zeyrTcyLLcx7Hcx7HdybPVvKfl1cX////9/fz+/v7+/v7////////+/v7////9 + /f39/Pz59fObXiCKQwCPSgGPSgGLRAGaXB349PH9/fz+/v/////////////////28e3AmnrEn3rDn3nE + oXu+lnbcxrD////9/Pv+/v7////////////////////+/v7+/v79/Pv////bxa+HPgCPSwKOSQCQTAKG + PADAmnH////8+/r9/fz9/Pv7+ff9/Purd0F/MACGOwCFOgCEOQCEOADj0sH+/fz9/Pz+/v7+/v7///// + ///////////////////+/v79/Pz///+ufkqHPgCQTAKOSQCOSgKNRwPp3M/+/v79/Pv8+/r////YwaqH + PgCSTwaQTAOSTwaHPgDDn3n////9/Pv+/v7////////////////////////////+/v7+/v79/Pz+/v7t + 4tiNSAaNSAKOSQCQTAKJQQCqd0D+/v79/Pv9/fz49fKbXyCMRQGPSwGPSgGLRAGYWRn38+/9/fz9/f3/ + ///+/v7///////////////////////////////7+/v79/Pv////EoHqFOwCQTQOOSQCQTQOHPwDUu6H/ + ///////Dn3iGPQCQTQOOSQCQTAOGPQDWvaT////9/Pv+/v7+/v7///////////////////////////// + ///+/v7////9/f39/Pv59vScYCOLRQGPSwKPSgGMRQGWVhf7+ffu5duNSAaOSQKOSQCQTAKJQQCqd0D+ + /v79+/r+/v7////////////////////////////////////////////+/v7+/v78+/r////cx7GJQgCQ + TAOOSQCQTAKFOwC/mXKzhVSGPACQTAKOSQCPSgKOSQfq3dH////9/Pv+/v7+/v7///////////////// + ///////////////////////////////+/v79/Pv///+wgU6HPgCQSwKOSQCPSgGMRgCMRwCPSgCOSQCQ + TAKGPADAmnH////9/Pr+/v7////////////////////////////////////////////////////+/v7+ + /v79/Pz+/v3u5NuPSwmNRwGOSQCPSgCPSwGPSgGPSQCPSgGLRACYWRn38u79/fz9/fz///7+/v7///// + ///////////////////////////////////////////////////+/v79/Pv////HpoKFOwCQTQOOSQCP + SgCPSgCOSQCQTAOGPQDVvaP////9/Pv+/v7+/v7///////////////////////////////////////// + ///////////////+/v7////9/f39/fz7+fefZSiIQACOSQCNRwCNRwCOSQCGPQCrd0H+///9/fz+/v7/ + ///////////////////////////////////////////////////////////////////+/v7+/v79/Pv/ + ///fzLmSTxWXWBWWVhSWVhSWVhSWVRrq3dH////9/Pz+/v7+/v7///////////////////////////// + ///////////////////////////////////////////+/v7+/v7////38+728e328e328e328Oz49fD/ + ///+/v7+/v7///////////////////////////////////////////////////////////////////// + ///////+/v7////////+/v3////////////////////////+/v3////////+/v7///////////////// + ///////////////////////////////////////////////////////////+/v7////+/v7+/v7+/v7+ + /v7+/v7+/v7+/v7+/v7////+/v7///////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAACgAAAAwAAAAYAAAAAEAGAAAAAAAgBwAAAAAAAAAAAAAAAAAAAAAAAD///////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + ///////////////////+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7////+/v7+/v7///////// + ///////////////////////////////////////////////////////////////////////////////+ + /v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7///////////////////////////// + /////////v7+/v7///////////////////////////////////////////////////////////////// + ///////////////////////////+/v7////////+/v7///////////////////////////////////// + ///38u38+vn8+vj8+vj8+vj8+vj8+vj8+vj7+ff////+/v3+/v7+/v7+/v7///////////////////// + ///////////////////////////////////////////////////////////////+/v7+/v7+/v7////7 + +ff8+vj8+vj8+vj8+vj8+vj8+vj7+ff59fK7kmmbXh+cXyCcXyCcXyCcXyCbXyCdYSGWVR3Fon3////9 + /Pz+/v7///////////////////////////////////////////////////////////////////////// + ///////+/v7+/v79/f39/fz///+1iFqXVx2cYCGcXyCcXyCcXyCcXyCbXiCcYCPn2Mv7+fencTqDOACM + RgCLRACLRACLRACLRACKQwCMRQLq3tL////9/Pz+/v7///////////////////////////////////// + ///////////////////////////////////////////+/v79/Pz////Zw6uGOwCMRQCLRACLRACLRACL + QwCNRwCCNQC4jmH////////r39SNRwWOSgOOSgGPSgGPSgGPSgGQTAOIPwCpdD3////9/fz9/f3////+ + /v7////////////////////////////////////////////////////////////////+/v7+/v79/f3+ + /f359vOZWxyLRACQSwKPSgGPSgGPSgGPSgGMRQKXWBn49PD+/fz8+vn////BnHWFOgCQTAGOSQCPSgCP + SgCOSQCPTAKFOwDVvaT////9/Pv+/v7///////////////////////////////////////////////// + ///////////////////////+/v79/Pv////BnXaEOgCQTAKOSQCPSgCPSgCOSQCPSwGGOwDVvKL////8 + +/r9/Pz9/f349fKZXB2KQwCPSgGOSQCOSQCOSQCPSgGLRAGXWBj38+/+/f39/f3+/v7+/v7///////// + /////////////////////////////////////////////////v7+/v79/fz+/v7r39SMRwWNSAGOSQCO + SQCOSgCOSQCPSwGHPgCpdT7////9/Pz+/f3+/v79/Pv////YwquGPACPSwGOSQCPSgCPSgCOSQCQTAGF + OgC+l23////9/fz+/v7////+/v7////////////////////////////////////////////////+/v7+ + ///9/f39/Pv///+qdkGHPQCPSwGOSQCPSgCPSgCOSQCOSAGLRALp3dH////9/Pv+/v7+/v7+/f39/fz/ + //+se0aHPgCQTAKOSQCPSgCPSgCOSQCOSQKLRALn2s3//v79/Pz+/v7///////////////////////// + ///////////////////+/v7+/v7////+/v78+vn////Rt5qGPACQSwKOSQCPSgCPSgCOSQCQTAKFOwC/ + mXL////9/Pz+/v7////////+/v79/fz///7s4deNSAeNSAGOSQCOSQCOSQCOSQCQSwKHPgCnczv+/v79 + /Pz9/f3+/v7+/v7////////////////////////////+/v7+/v7////////9/f38+/r////j08KNSQiN + RgGOSgCOSQCOSQCOSQCPSgCLRACYWhv48/D+/f39/f3+/v7+/v7+/v7////+/v79/Pz////Dn3qFOgCQ + TAGOSQCPSgCPSgCOSQCQSwGGPADSuJ3////9/Pz+/v7////////////////////////+/v7+/v7///// + ///+/v79/Pv////////cx7KPTA2LRQCPSgCOSQCPSgCPSgCOSQCPSwGGPADWvqb////9/Pz+/v7///// + ///////////+/v79/f3+/f359/SbXiCKQgCPSgGOSQCOSQCOSQCPSgCLRQCVVBT18Oz+/f39/fz+/v7+ + /v7////+/v7+/v7+/v7+/v7+/f39/Pz9/Pv////////49PC/mHSKQgCMRQCPSgCOSQCPSgCPSgCOSQCQ + TAKGPQCreEL////9/Pz9/f3+/v7+/v7////////////////+/v79/Pv////axK6FPACPSwKOSQCPSgCP + SgCOSQCQTAKEOQC8lGn////9/Pv+/v7////////////////////////////////////49fLQs5ibXyWH + PgCPSwKQTQOQSwKQTAOQTAKQTAKPSwOOSgOMRQPq3tP////9/Pz+/v7////////////////////+/v7/ + ///+/v39/Pz///+vf0uHPgCQSwGOSQCOSgCPSgCOSQCOSQGLRAHm18n////9/fz+/v7////+/v36+Pb5 + 9fLz7ejo2s3RtpuwgFCNRwN9LQCCNQCHPgCGOwCFOwCGOwCGOwCGOwCFOwCGPAB/MADCnnj////9/Pz+ + /v7////+/v7////////////////////+/v7+/v79/fz///7v5t6PSgiNRwGOSQCPSgCOSQCOSQCPSwGJ + QAClbjX+/f39/f39/f3//v769/XfzbjZw67QtJrEoX67kmq6kGa/mXLDn3rEoHzEoHvEoHvEoHvEoHvE + oHvEoHvDoHvDnnvEoH369/X+/v79/f3+/v7+/v7////////////////////////////////+/v79/Pv/ + ///GpICFOgCQTAKOSQCPSgCPSgCOSQCQTAKGPADQtJf////9/Pz+/v7///////////////////////// + ///////////////////////////////////////////////////////+/v7+//////////////////// + ///////////////////+/v7+/v79/f3+/f36+PadYiSKQwCPSgCOSQCOSQCOSQCPSgGMRgGUVBP07uj+ + /v39/fz+/v7+/v7+/v3+/f39/fz9/Pv7+vj+/f3cyLSXVyGcYCKcXyCcXyCcXyCcXyCdYSKUUxzDn3z9 + /Pz9/Pz9/f3////+/v7////////////////////////////////////////+/v79/Pz////cx7KHPwCP + SgGOSQCPSgCPSgCOSQCQTAKGPAC5kGP////9/Pv+/v7//v7+/v7+/v7+/v79/f39/fz7+feeYyaGPACL + RQCLRACLRACLRACLRACIQACQTAnw59/+/v79/f3+/v7+/v7///////////////////////////////// + ///////+/v7///79/f39/Pv///+xglCGPACQSwGOSQCPSgCOSQCOSQCOSQGKQgDk1MT////9/fz+/v7/ + ///////+/v79/Pz////HpoOFOgCQTAKOSgCPSgGPSgGOSgGQTAKFOwDPs5b////9/Pv+/v7///////// + ///////////////////////////////////////////+/v/+/v79/Pz+/v7w59+PSgiMRgGOSgCPSgCP + SgCOSQCPSwGIQACiajD+/f39/f39/f3///7+/v79/fz+/v7w6OCPSgmNRwGOSQCOSQCOSQCOSQCPSwKI + PwCiaS79/fz9/fz9/f3+/v7+/v7///////////////////////////////////////////////////7/ + ///+/v79/Pv////Ip4WFOgCQTAKOSQCPSgCPSgCOSQCQTAKEOQDOsZP////9/Pv+/v7+/v79/Pv///+x + glGFOwCQTAKOSQCPSgCPSgCOSQCOSgKIQADj08L////9/Pz+/v7///////////////////////////// + ///////////////////////////////+/v7+/v79/f39/f38+vmeZCeJQQCPSwGOSQCOSQCOSQCPSgGM + RQGRTw7z7ef+/v39/f39/Pz////fzLiHPQCPSgGOSQCPSgCPSgCOSQCQTAGFOwC4jF/////9/fz+/v7+ + /v7+/v7////////////////////////////////////////////////////////////////+/v79/fz/ + ///fzLqHPgCOSgGOSQCPSgCPSgCOSQCQTAGFPAC3jF7////9/Pz+/f38+vifZCiJQQCPSwGOSQCOSQCP + SgCOSgGLRQGTURDz7ef+/v39/f3+/v7///////////////////////////////////////////////// + ///////////////////+/v7////+/v79/Pv///+zhVWFOwCQTAKOSQCPSgCPSgCOSQCOSgKJQQDi0cH+ + /v7////JqYeFOgCQTAKOSQCPSgCPSgCOSQCQTAKEOgDNsJH////9/Pv+/v7////+/v7///////////// + ///////////////////////////////////////////////////////+/v7+/v79/fz+/v3w6eGRTQyN + RwGOSQCOSQCOSQCOSQCPSwKJQQChaC7////x6eKRTgyNRgGPSgCPSgCOSQCOSQCPSwGJQQCiajD8+/r9 + /fz9/f3+/v7+/v7///////////////////////////////////////////////////////////////// + ///////////////+/v79/Pz////LrIuFPACQTAGOSQCPSgCPSgCOSQCQSwGFOwDPspW5j2SGPACQSwGO + SQCPSgCPSgCOSQCOSgGJQgDj0sL////9/Pz+/v7///////////////////////////////////////// + ///////////////////////////////////////////+/v7+/v79/f39/fz9/PygZyuJQACPSwGOSQCO + SQCOSQCOSQCOSACOSACNSACOSQCOSQCPSgCPSgCOSQCQTAKFOwC3i13////9/Pv+/v7////+/v7///// + //////////////////////////////////////////////////////////////////////////////// + ///+/v79/Pv////hz72JQACPSwKOSQCPSgCPSgCOSQCPSgCOSQCOSQCPSgCOSQCOSQCOSQCOSQCMRgGS + UA/y6+X+/v39/fz+/v7+/v7///////////////////////////////////////////////////////// + ///////////////////////////////+/v7////+/v79/fz///+1iVuGPACQSwGOSQCPSgCPSgCOSQCP + SgCPSgCOSQCPSgCPSgCOSQCQTAGFOgDNrpD////9/Pz+/v7///////////////////////////////// + ///////////////////////////////////////////////////////////////////+/v7+/v79/f3+ + /v3y6+SSUA6MRQGOSgCOSQCOSQCPSgCPSgCPSgCPSgCOSQCOSQCPSwGIQAChaS78+/r9/Pz9/f3+/v7+ + /v7///////////////////////////////////////////////////////////////////////////// + ///////////////////////////+/v79/Pv////NsJGFOwCQSwGOSQCPSgCPSgCPSgCPSgCOSQCPSgCO + SQCOSQGJQQDi0cD////9/Pv+/v7///////////////////////////////////////////////////// + ///////////////////////////////////////////////////////+/v7+/v79/f39/Pz8+/qiai+J + QACRTQSPSwKQSwKQSwKQSwKQSwKPSwKRTgSGPAC2iVr////9/Pv+/f3////+/v7///////////////// + //////////////////////////////////////////////////////////////////////////////// + ///////////////+/v79/Pv////j08KGPQCHPQCHPgCIPgCIPgCIPgCIPgCHPwCFOgCRTgvy6uP+/f39 + /fz+/v7+/v7///////////////////////////////////////////////////////////////////// + ///////////////////////////////////////////+/v7////+/v79/f3////JqIeufFOzhVezhFaz + hFazhFayhFazhVete1TWvqb////9/fz+/v7///////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + ///+/v7+/v7+/v3////////////////////////////////////////+/v3+/v7+/v7+/v7///////// + //////////////////////////////////////////////////////////////////////////////// + ///////////////////////////////////////////+/v7+/f3+/f3+/fz+/fz+/fz+/fz+/fz+/fz+ + /f3+/f3///////////////////////////////////////////////////////////////////////// + ///////////////////////////////////////////////////////////////////+/v7+/v7+/v7+ + /v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7///////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAoAAAAgAAAAAABAAABABgAAAAAAADIAAAAAAAAAAAAAAAA + AAAAAAAA//////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////v7+/////v7+/v7+//////////////////////////////////////////////////////////// + /////////////////////////////////////////fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7 + /fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/v39/v7+/v7+/v7+//////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////v7+/////v7+/////v7+/f38/fz7/fz7/fz7/fz7/fz7/fz7 + /fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/v7+//////// + //////////////////////////////////////////////////////////////////////////////// + /////////////v7+/////v7+/v7+/v7+//////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////v7+/////v7+ + /f39//////////////////////////////////////////////////////////////////////////// + ////////////////////////2MCn3Maw3Maw3Maw3Mew3Mew3Mew3Mew3Mew3Mew3Mew3Mew3Mew3Mew + 3Mew3Mew3Mew3Mew3Mew3Mew3Mew3Maw3Mex2cOs8uvk/v7+/f39/v7+/v7+//////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////v7+/v7+/v7+/f39////4tHA2sSs3Mex3Mew3Mew3Mew3Mew3Mew3Mew3Mew3Mew + 3Mew3Mew3Mew3Mew3Mew3Mew3Mew3Mew3Mew3Mex3Mew3Mex2cKr9vHtqXQ9ikIAiUEAiUEAikIAikIA + ikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAiUEAikMAgzgAq3hH/v39 + /fz8/v79/v7+/v7+//////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////v7+/v7+/v7+/v7+/fz8////49PCiUIBiUEAiUEA + ikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAiUIAiUEAi0MAgzkA + nmMq+vj1/v39sYJUhz4AkU0Ej0oBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sB + j0sBj0sBj0sBj0oBj0oBkEwDhz0A1buh/////fz7/v7+/v7+/v7+/v7+//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////v7+ + /v7+/v39/Pz8/Pr5pGw1iEAAkE0Dj0oBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sB + j0sBj0sBj0sBj0sBj0sBj0sBj0sDjEYG49LC////////7OLWkU4PjEYBj0oBjkkAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAjkkAj0sBikQAmFod9fDq/v39/v39/v7+ + /v7+//////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////7+/v7+/v7+/v7+/Pv6////za+QhjwAkEwCjkkAjkkAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAkEwChjsAuo9l////+/n4+ff1//// + x6aFhDsAkEwCjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + jkkAjkkAkEwChTwAv5dw/////Pz7/v7+/v7+/v7+//////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////v7+/v7+/f38/v798evik1IV + i0UBj0oBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkoA + j0oBi0QBlVQX8+zl/f39/fz8/fz8/fz8+vbzoGYuiEAAj0sBjkkAjkkAjkoAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAj0oAjkoAjkkAjUkBjEgG6NvN/////fz8/v7+/v7+/v7+/v7+ + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////7+/f7+/v7+/fz7////topehjwAkEwCjkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAj0sChTwA0LWY/////Pv7/v7+/v///Pz7////3sq3iEABjkoC + jkkAjkkAj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkAkEsC + hz8Ap3I//fz7/fz8/v79/v7+/v7+//////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////v7+/v7+/v39/v///Pz7////3867iEAAjkoCjkkAjkkAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjUkAkEsChz8ApnE5/fz8/Pz7 + /v7+/v7+/v7+/v7+/Pv7////tIZYhjwAkEwBjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAjkkAjkgAj0sChTwA0rec/////Pz7/v7+/v7+/v7+//////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////v7+/v7+/v79/fz8 + +/r4oWgwiEAAj0sBjkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kA + j0kAjkkAjkoAjkkBikQF5dbG/////fz7/v7+/v7+/v7+/v7+/fz8/v7+8OffkU8QjEYBj0oAjkkAjkoA + jkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oAjkkAj0oBikMAllcb9O/p + /v39/f38/v7+/v7+/v7+//////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////v7+/v7+/v7+/Pz7////yquLhTsAj0wCjkgAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAkEwChToAu5Nq/////Pz7//7+/v7+/v7+/v7+/v7+ + ///+/Pz7////y6yNhTsAkEwCjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAjkkAjkkAjkkAkEwBhTsAu5Rr/////Pz7/v7+/v7+/v7+/v7+//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////v7+/v7+/fz8/v7+7+bckU4PjEYBjkkBjkkA + j0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0kAjUkAj0oBi0QBllcb + 9e/p/v39/f38/v7+/v7+/////////v7+/v7+/v79/fz8+vj1oWgwiUEAj0sBjkgAjkkAjkkAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkCi0QF5NXG/////fz8/v7+ + /v7+//////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////v7+//7+/f39 + /v7+/fz7////tIdZhjwAkEwCjkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAjkkAjkkAj0sChj0A0rec/////Pz7/v7+/v7+/////v7+/v7+/////v7+/v7+/Pz7//// + 38y4ikIDj0oCjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkA + jkkAjkkAj0sBhz8Ap3I8/Pv5/fz8/v39/v79/v7+//////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////v7+/////v7+/v7+/Pz7////3sm2iUIBj0oBjkkAjkkAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjUkAkEsCiD8AqHM+/fz7/Pz8/v7+/v7+/v7+ + /v7+/////////v7+/v7+/v7+/v7+/Pv7////topehTwAkEwCjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkgAkEsChjwA0bWa/////Pv6/v7+/f39/////v7+ + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////v7+/v7+/f39/fz8+vj2n2UriUEA + j0sBjkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkoA + jkgBjEYG5tjJ/v7+/f37/v7+/v7+/////////////////////////v7+/v7+/f39/v398uriklETi0YB + j0oAjUkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkAj0oB + i0UAlVYZ8+3m/f79/f38/v7+/v7+//////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////v7+ + /v7+/v7+/v7+/Pv6////yKeFhTsAkEwCjkgAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAjkkAjkkAkEwChjwAvpZv/////Pz7/v/+/v7+/v7+/v7+//////////////// + /v7+/v7+/v7+/v7+/Pz7////za6QhTwAkEwCjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAkEwChTwAuZBm/////Pv6/v7+/v7+/v7+/v7+//////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////v79/v7+/fz7/v7+7ePYkU4QjEcBjkkBjkkAj0oAjkkAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkAj0oBi0QBmFof9e/p/f39/v39 + /v7+/v7+/////////////////////////////////v7+/v7+/v7+/fz8+/n3o2s1iUEAkEsBjkkAjkkA + jkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oAjkkAjkkAjkkCikQD5NPD + /////Pz7/v7+/v7+//////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////v7+/v7+/v79/Pv7/v/+ + sIFShjwAkEwCjkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + jkkAjkkAj0sChj0A1Lqg/////Pz7/v/+/v7+/////v7+/////////////////////////v7+/////v7+ + /v7+/fz7////4tHBikMEjkkCjkoAjkkAj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAjkkAjkkAjkkAj0sBiEAApW43/Pv5/fz7/v39/v7+/v7+//////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////v7+/v7+/////Pv6////2sawiD8Aj0sBjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAkEsChz8AqnhE/v79/Pz7/v7+/v7+/v7+/v7+//////// + /////////////////////////v7+/v7+/v7+/v7//fz7////uI1hhj0AkEwCjkkAjkkAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkgAj0wChj0AzrCT/////Pv6/v7+ + /f39/////v7+//////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////v7+/v7+/v7+/f38/f389vLtm18jikMAj0oBjkkAjkkA + jkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkAjkoAjUgBjUgH6NzO + /v7+/fz8/v/+/v7+/////////////////////////////////////////////////v7+/v7+/f38/v39 + 8uvjlFUWi0UBj0oBjUkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkA + j0oAjkkAj0oBjEYBlFMW8enh/v79/fz7/v7+/v7+//////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////v7+/v7//v7+//7+/f39 + /Pv6////t4thhjwAj0wBjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAjkkAjkkAkEwChTsAwJp0/////fz6/v7+/v7+/v7+/v7+//////////////////////////// + /////////////v7+/////v7+/v7//Pv7////zrGUhjwAj0wCjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkAkEwChjwAt4xg/////Pv7/v7+/v7+/v7+//// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////v7+/v7//v3+/Pr6////0bWYhj0Aj0sCjkkAjkkAj0oAjkkAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAjkkAjkkAj0sBi0MAmVsg9vHs/v39/f39/v7+/v7+//// + /////////////////////////////////////////////////v7+/v7+/v7+/v7+/f38/Pr4pW85iD8A + kEsCjUkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkA + jkoCikIC4tHA/////Pv7/v7+/v7+/v7+//////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////v7+/v7+/v7+/v7++/r5////38y4i0UHjUgBjkoA + jkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAjkkAjkkAj0wC + hz4A1r6m/////Pz7/v7+/v7+/////v7+//////////////////////////////////////////////// + /////////v7+/v7+/fz8////49LCjEYFjkkCjkoAjkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkAj0sBiEAAomoy+/n2/fz7/v39/v7+/v7+//////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////v7+/////v7+/v7+/v7+ + /v7++/r5////5NTCj0wQi0UAj0oAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAjkkAjkkAkEwChz8ArHpI/v7+/fz7/f79/v7+/v7+/v7+//////////////////// + /////////////////////////////////////v7+/////v7+/v7+/Pz7////upBnhTwAkEwCjUgAjkkA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkgAj0wChToAyqyM + /////Pv6/v7+/v7+/////v7+//////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////v7+/v7+/////v7+/v7+/v7+/f39/Pr5////4c+9kE0SikQAj0sBjkkAjkkAj0oAjkkAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjUkAj0oAjUgCjkoJ6d3R/v7+/f38/v7+ + /v7+/////////////////////////////////////////////////////////////////////v7+/v7+ + /v7+/v39/f399O3nl1gci0UBj0oBjkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAjkkAj0oAjkkAj0oAi0UBk1ET8Ofe/v39/fz7/v7+/v7+/////v7+//////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////v7+/////////v7+//7+/v7+/Pv6/f38////1LuijkkLi0QA + j0sBjkkAjkkAj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkA + jkkAkEwChjwAwp14/////Pv6/v7//v7+/////v7+//////////////////////////////////////// + /////////////////////////////////v7+/v7+/Pv6////0baahj4AkEwCjkkAjkkAj0oAj0kAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkAkEwBhTwAtYlc/////Pv6/v7+ + /v7+/v7+//////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////v7+/v7+/////v7+/v7+/v7+ + /v79+/v5////+/n1wJp1iEEAjUYAj0wBjkkAjkkAj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkAj0sBikMAnWAn9/Lu/fz7/f39/v7+/v7+/v7+//////////// + /////////////////////////////////////////////////////////////v7+/v7+/v7+/v7+/Pz7 + /Pv5p3I9iD4AkEwCjkkAjkkAjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjkkAjkkAj0oCiUEA3826/////Pv6/v7+/v7+/v7+/v7+//////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /v7+/v7+/////////v7+/v7+/v79/Pv6/f3+////6dzPpW89hjwAj0oBj0oBjkkAjkkAj0oAjkkAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oAjkkAjkkAj0sChz4A2MKq//// + /Pv6/v7+/v7+/v7+//////////////////////////////////////////////////////////////// + /////////////////////v7+/v7+/fz7////5dbGi0UGjkkCjkoAjkkAj0kAjkkAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkAj0sBiEAAoGct+vj1/fz7/v39/v7+/v7+//// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////v7+/v7+/v7+/////////v7+/v7+/f39/fz7/fz8////+vj0xaOCjkkJhz8A + j0sBj0oAjkkAjkkAj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjkkAjkkAkEwChz0Arn1L/////Pv6/v7+/v7+/v7+//////////////////////////////////// + /////////////////////////////////////////////////v7+/////v39/v/+/Pv6////vZZuhjsA + kEwDjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjUgA + j0wChDoAyKiI/////Pv6/v7+/v7+/v7+/v7+//////////////////////////////////////////// + /////////////////////////////////////////v7+/////v7+///////////+/v7+/v7+/v79/Pv6 + /f38////////28ayn2cyhTwAjEcAj0sCjkkAj0oAj0oAj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjUkAj0oAjUcCjkoK69/U/v7//fz7/v7+/v7+/////v7+ + //////////////////////////////////////////////////////////////////////////////// + /////v7+/v7+/v7+/f39/f399fDrl1kci0UBj0sBjUkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAjkkAj0oAjkkAjkoAjEUAkU4P7+bc/v79/fz7/v7+/v7+/////v7+//////// + /////////////////////////////////////////////////////////v7+/////v7+/v7+/////v7+ + /////v7+/v7+/v7+/fz8/Pv6/v7+////////4M68qnhHiD8AiUEAj0sCj0oAjkkAjkkAjkkAjkkAjkkA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAkE0DhjwA + xaJ//////Pv7/////v7+/v7+/v7+//////////////////////////////////////////////////// + /////////////////////////////////////////v7+/v7+/v7+/Pv6////07qghz4Aj0wDjkkAjkkA + j0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkAkEwBhjwAsoRU + /v///Pv6/v7+/v7+/v7+/////////////////////////////v7+/////v7+/v7+/v7+/v7+/v7+/v7+ + /v7+/v7+///+/v7+/v7+/////v7+/v7+/v79/fz8/Pv6/fz8////////+/n32sSvqnZHikIAhz8AjkoA + j0oBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAjkkAjkkAjUkAj0sCikMAnmMp+PXx/f38/f39/v7+/v7+//////////////////////////// + /////////////////////////////////////////////////////////////////////////////v7+ + /v7+/v7+/Pz7/f38qXVBiEAAkEwCjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAjkkAjkkAj0oBiD8A3cm0/////Pv6/////f39/v7+/v7+//////////////////// + /////////////////////////////v7+/////v7+/v7+/v7+/v39/fz7/Pv6/fz7/f7+//////////// + 7OHWyaiHn2UviD8Ahz4AjkkAj0sCjkkAjkkAjkoAjkoAjkkAjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAj0wDiEAA28Wv/////Pz7/v/+/v7+ + /////v7+//////////////////////////////////////////////////////////////////////// + /////////////////////////v7+/////v7+/v7+/fz7/v//6NrNjkkJjkkCj0kAjkkAjkkAjkkAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkAj0oBiUIAn2Ur+fb0/fz7/f39 + /v7+/v7+/////////////////////////v7+/v7+/v7+/v7+/f38/fv6/fz7/fz6/Pv6/fz8/fz8/v7/ + /////////////////Pz66dzPza6Qq3dGkE0Mhj0AikMAj0sCj0sCj0oAjkkAjkoAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkA + kEwChz4AsIJS/v7//Pv7/v7+/v7+/v7+/v7+//////////////////////////////////////////// + /////////////////////////////////////////////////////////////v7+/v7+/v7+/////Pv6 + ////v5lzhTwAkEwCjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjkkAjkgAkEwBhDoAxqSC/////Pv6/v7+/v79/v7+/v7+/////////////////v7+/////v7+/v7+ + /////////////////////////////v788+3l5NTE07icuY5moWgvj0sIhz4AiUIAj0oAkE0FkU0Dj0sC + kEsBkEsBkEsBkEsBkEsBkEsBkEsBkEsBkEsBkEsBkEsBkEsBkEsBkEsBkEsBkEsBkEsBkEsBkEsBkEsB + kEsBkEsBkEsBkEsBkEsBkEsBj0sBkEwCjEgBkE4O7eTa/v7+/fz8/v7+/v7+//////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////v7+/v7+/f38/f389vHsmVsgikMBj0oBjkkAjkkAjkkAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oAjkkAjkkAjEYBkEwN7ePY/v7+/fz7/v7+/f39//// + /v7+/////////////v7+/v7+/f38/v//28ayxqSAy6uKxKF6vJNssoReqHNEmVwlkEwKhjwAgTQAgDQA + hDoAiEAAikMAiUIAiEEAiEAAiEAAiEAAiEAAiEAAiEAAiEAAiEAAiEAAiEAAiEAAiEAAiEAAiEAAiEAA + iEAAiEAAiEAAiEAAiEAAiEAAiEAAiEAAiEAAiEAAiEAAiEAAiEAAiEAAiEAAiUIAgjYAx6WD/////Pv6 + /v7+/v7+/////v7+//////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////v7+/////v7+/v7+/Pv7////1r2khz4A + j0sCjkkAjUkAj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkA + kEwBhjwAsYFR/////fz7/v79/v7+/v7+/////////////////v7+/v7+/v39/v7+4M27za+O0bWW0LOU + z7OV0LOZ0bac07mg1ryk2MCo2cKr2cKs2MGq2MCp18Co18Co18Co18Co18Co18Co18Co18Co18Co18Co + 18Co18Co18Co18Co18Co18Co18Co18Co18Co18Co18Co18Co18Co18Co18Co18Co18Co18Co18Co18Co + 18Co18Co2MCo1r+n2MGq+vf0/v39/v79/v7+/v7+/v7+//////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////v7+/v7+/v7+/v7+/Pv6/v39rHpIhz4Aj0wBjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAj0oBiUEA3May/////Pv6/////f39/v7+/v7+//////// + /v7+/////v7+/v7+//////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////v7//v7+/////v7+//////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////v7+/v7+/fz7/v7+6d3RjUkJjUgBj0oAjkkA + jkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkAj0oBikIAnWIn + +PXx/fz8/f39///+/v7+/////////////////v7+/////////v39/fz7/fz7/fz7/fz7/fz7/fz7/fz7 + /fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz8/fz7+/n3+/n3+/n3+/n3+/n3+/n3 + +/n3+/n3+/n3+/n3+/n3+/n3+/n3+/n3+/n3+/n3+/n3+/n3+/n3+/n3+/n3+/n3+/n3/Pr4/fz7/fz8 + /fz8/v7+/////v7+/////v7+//////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////v7+/v7+ + /v7+/v7+/Pv7////wZx2hDsAkEwCjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAjkkAjkkAkE0ChjwAxKF8/////Pv6/v7+/v7+/v7+/v7+/////v7+/////v7+/v7+ + /v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+ + /v7+//////////////////////////////////////////////////////////////////////////// + /////////////////////////////v7+/v7+/v///v7+/////v7+//////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////v7+/v7+/f39/f389/Ltm14iiUIAj0oBjkkAjkkAjkkAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oAjkkAjkoAjUgCkE0N7OHW/v7+/f38 + /v7+/v7+/////v7+//////////////////////////////////////////////////////////////// + /////////////v7+/////v7+/v7+/f79/f39+vj20LSYzrCSz7GUzrGTz7GTz7GTz7GTz7GTz7GTz7GT + z7GTz7GTz7GTz7GTz7GTz7GTz7GTz7GTz7GTz7GTzrGTzrGTza+S0LSY+vj1/v7+/v79/v7+//////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////v7+/////v7+/v7//Pz7 + ////2cKriD8Aj0sCjkkAjkkAj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + jkkAjkkAjkkAkEwChz8Ar35O/v7+/fz8/v7+/v7+/v7+//////////////////////////////////// + /////////////////////////////////////////////////v7+/v7+/v7+/fz7////yaiIgDMAhz0A + hTsAhTsAhTsAhTsAhTsAhTsAhTsAhTsAhTsAhTsAhTsAhTsAhTsAhTsAhTsAhTsAhjsAhTsAhDsAhz4A + fS0AtIdb/f38/Pz8///+/v7+//////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////v7+/v7+/v7+/v7+/fz7/v//rn1Khz0Aj0wBjkkAjkkAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAj0sCiEAA2MGq/////Pz7/v///v7+/v7+ + /v7+/////////////////////////////////////////////////////////////////////v7+/v7+ + /v7+/v7+/f38/v797+bdkU8PjUkDkU4Fj0wDkEwDkE0DkE0DkE0DkE0DkE0DkE0DkE0DkE0DkE0DkE0D + kE0DkE0DkE0DkE0DkEwDkE0DkU4FjEcFmVwe9/Pu/v7+/v38/v7+/v7+//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////v7+/v7//fz7/v7+69/UjkoL + jUgBj0oAjkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkA + j0sCikMAm18j+PXw/f39/f39/v7+/v7+/////v7+//////////////////////////////////////// + /////////////////////////////v7+/v7+/v7+/fz7////tIZYhj0AkEwCjkgAjkkAj0oAjkkAjkkA + jkkAjkkAjkkAjkkAjkkAjkkAjkkAjkkAjkkAjkkAjkkAj0oAjkkAjkkAj0sChj0A0rec/////Pv7/v7+ + /v7+//////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////v7+/v7+/v7+/////Pv6////xKF9hTsAkEwCjkkAjkkAj0oAj0kAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAkEwChTsAw596/////Pz7/v7+/v7+/v7+//////////// + /////////////////////////////////////////////////////v7+/v7+/v7+/v7+/fz7////3sq3 + iUIAjkoCj0kAjkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAjkkA + jkkAj0wBiD8AqHM+/fz7/Pz7/v7+/v7+/v7+/v7+//////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////v7+/v3+/v39/fz8+PXxnWIpiUIAj0sBjkkA + jkkAjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkAjkoAjUgBjkoK + 6t7S/v7+/fz8/v7+/v7+/v7+/v7+//////////////////////////////////////////////////// + /////////v7+/v7+/f39/f38+vj1oGgviUEAj0sCjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAjkkAj0kAjkkAj0kAjkgCjEYH5tjJ/////fz7/v7+/v7+//////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////v7+//// + /v7+/v7+/Pv6////2cStiEAAj0oCjkkAjkkAj0kAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAjkkAjkgAkEwChz4ArHpH/f38/fz8/v7+/v7+/v7+//////////////////////// + /////////////////////////////////v7+/v7+/v7+/v7+/fz8////y6yNhTwAkEwCjkkAjkkAj0kA + jkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAkEwChTwAvZRs//// + /Pv7/////v7+/v7+/v7+//////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////v7+/v7+/v7+/v7+/Pv7/v7+r4FQhz0AkEwBjkkAjkkAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkgAj0kAkEsChz4A17+n/////Pz7 + /v7+/v7+/v7+/v7+/////////////////////////////////////////////////////v7+/v7+/f38 + /v798enfklISjEYBj0oBjkkAjkkAjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + jkkAjkkAjkkAj0oBi0QAl1gb9O/p/fz8/v38/v7+/v7+//////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////v7+/v7+/fz8 + /v7+7ePakE0NjEcBj0oAjkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjkkAjkkAj0sCikMBml0i9/Pu/f39/f39/v7+/v7+//////////////////////////////////// + /////////////v7+/v7+/v7+/v7+/Pz7////toldhj0AkEwCjkkAjkkAj0oAj0kAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAj0oAjUkAjkkAj0sChTwA0baa/////Pv7/v7+/v7+/////v7+ + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////v7+/v7+/v7+//7+/Pv6////x6SDhTsAkEwCjkkAjkkAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oAjUgAjkkAkEwChTwAwZx1/////Pv7//7+/f39/v7+ + /v7+/////////////////////////////////////v7+/////v39/v7+/fz7////4M67ikICj0oCjkoA + jkgAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAjkkAjkkAj0sBiD8A + pnA8/Pv6/fz7/v7+/v7+/v7+/v7+//////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////v7+/v7+/v79/fz8+fbznmMq + iEEAj0sBj0kAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkA + jkoAjUkCjUgI59rM/////fz8//7+/f39/////v7+/////////////////////////////////////v7+ + /v7+/v39/f38+vj1oWgwiUEAj0sBjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAjkkAj0kAjkkAj0kAjkkCi0QG5dXF/////fz7/v7//v7+//////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////v7+/////v7+/v///Pz7////3cm1iEAAjkoCjkkAjUgAj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAkEwChz8AqndD/fz7/fz7/v7+/v7+/v7+//////////// + /////////////////////v7+/v7+/v79/v7+/Pz7////y6uMhTwAkEwCjkkAjkkAjkoAjkkAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAkEwChTsAu5Fn/////Pz7/v7//v7+ + //7+/v7+//////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////v7+/v7+/v7+/v7+/Pz7////s4RVhjwAkEwCjkgA + jkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkAjkkAj0wChz4A + 1bui/////Pz7/v7+/f3+/v7+/v7+/////////////////////v7+/////f39/v7+/f38/v398Ojfk1ES + jUYBj0oBjkkAjkkAj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkA + j0oBi0UBllYa8+zl/fz9/v38/v7+/v7+/v////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /v7+/v7//f38/v797+XckE0OjEYAj0oAjUgAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAjkkAjkkAj0sBi0QBmVoe9vHr/f39/f39///+/f39/////v7+//////////////// + /////v7+/v7+/v7+/Pz7////tYldhj0AkEwCjkkAjkkAj0oAjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAjkkAj0oAjUkAjkkAj0wChTsA0bWZ/////Pv6/v7+/v7+/v7+//7+//////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////v7+/v7+/v7+/v7+/Pz7////yKiGhDoAkEwDjkkAjkkAj0oAjkkA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oAjkgAjkkAkEwChjwAv5dw/////Pv6 + /v7+/v7+/v7+/////////////////v7+/v7+/v7+///+/fz7////4dC/ikMDj0oCjkkAjkkAjkkAjkkA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAj0wCiD8ApW85/Pv5/fz7 + /v79/v7+/v7+//////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////v7+/v7+/v39 + /fz8+/j1oGYtiUEAj0sCjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + jkkAjkkAjkkAjkoAjkkCjEcG5tjK/////fv7//7+/v7+/v7+//7+/////////////v79/v7+/f39/fz8 + +/r4o2oziUAAj0sBjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkA + jkkAjkkAj0oAjkkCi0UF5NTE/////fz8/v7+/v7+/////v7+//////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////v7+/////v7+/v7+/fz7////3su4iUEBj0sCjkkAjkkAjkkAjkkAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjUkAkEwChz8AqHRA/f38/fz7/f39/v7+/v7+ + /v///////v7+/v7+/v7+/v/+/Pv7////za+RhTwAkEwCjkkAjkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAkE0ChjwAu5Jo/////Pz7/v7+/v7+/v7+/v7+//// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////v7+/v7+/v7+/v7+/fz7////tIdZ + hjwAkEwCjkgAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkA + jkkAj0wChjwA0rec/////Pv6/v7+/f7+//7+/v7+/////v7+/v7+/f38/v7+8erilFITjEYBj0oBjkkA + jkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkAj0oBi0UAl1YZ + 8+3m/f39/f39/v7+/v7+//////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////v7+/v7+/fz8/v398Offk1ISjEcBj0oAjUkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAj0sBi0QBl1ga9O7n/f38/f39/v7+/v7+/////v7+/v7+ + /v7+/Pv6////t4tfhjwAkEwCjkkAjkkAj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjkkAj0oAjkkAjkkAkEwChz4A0LWZ/////Pz7/v7//v7+/////v7+//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////v7+/////v7+/v7+/Pv7////zK2Ohj0AkEwDjkkA + jkkAj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oAjkkAjkgAkEwChjwA + u5Nq/////Pv6/v7+/v7+/v7+/v7+/v7+/Pz7////4dC+ikMCj0oCjkkAjkkAjkkAjkkAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAj0wCiEAAp3E7/Pv5/fz7/v79/v7//v7+ + /v7+//////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////v7+ + /v7+/////v7+/fz7+/j2o2sziUEAj0sBjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAjkkAjkkAjkkAjkoAjkkCjEcG5dbH/////Pz7/v7+/v7+/v7+/v39/fz8+/n3pG00iUEA + j0sBjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkAj0kA + jkkCikQE49PC/v7//fz8/v7+/v7+//////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////v7+/v7+/fz7////4c+9iUICj0oCj0kAjkkAjkkAjkkA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAj0sBiEAAp3E7/Pv5/fz8 + /v79/v7+/v7+/Pv6////zK+Qhj0AkEwCjkkAjkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAjkkAjkgAkE0ChTwAuY9j/////Pv6/v7+/v7+/v7+/v7+//////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////v7+/v7+/v7+/v7+ + /Pv6////t4xghjwAkEwCjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + jkkAjkkAjkkAjkkAkEwChj4Az7OX/////Pv7/v7+/f38/f398erilFQVi0YBj0oBjkkAjkkAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkAj0oBi0UBlVUW8+zl/v39/f39 + /v7+/v7+//////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////v7+/v7+/f38/v7+8+zllFQVi0UBj0oAjkkAjkkAjkkAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkgAj0sBi0UAlVUX8uzk/v39/fz8/Pz7//// + t4xhhjwAkEwCjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAj0oA + jkgAjkkAj0wChjwA0LOX/////fz7/////v7+/v7+//////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////v7+/v7+/v///fv7////zrGU + hjwAj0wCjkkAjUkAj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkA + jkkAkEwChTwAuI5k////+/r5////4tHAiUIDjkoCj0oAjUkAjkoAjkkAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAjkoAjkkAjkkAj0wCiUAApW84/Pv6/f38/v7+/////v7+//////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////v7+/v///v7+/f38+/r4pG02iEAAj0wBjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjUkAj0kAjkoCikMD4tC//v79+vj1pG02hz8AkEsBjkkAjkkA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0kAjkkAj0kAjkkCi0QF49TD + /////fz8//7//v7+//////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////v7+/////fz8////49TEi0UFjkkCj0oA + jkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAj0sBiEAA + oWkx////zrGThTsAj0sCjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAjkkAjkgAkEwChj0AupBl/////fz8/v///v7+/v7+/v7+//////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////v7+ + /v7+/v7+/v/+/fz8////uZBkhj0AkE0CjkgAjUkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0kAjkkAjkkAj0sAiEAAwZ12m18iikIAj0oBjkkAjkkAjkkAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjUkAj0oAjEYBlVYX8uzl/v79/v39/v7+/v7+//// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////v7+/v7+/f39/v398+zmllYXjEYBj0oBjkkAjkkAjkkA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAjkkAjkkAjkkAjkkAikMAjEYAjkkA + jkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAj0oAjkgAjkkAkEwC + hj0Az7SX/////fz7//7+/v7+//////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////v7+//7+ + /fz7////0bWZhz0Aj0wCjkkAjUgAj0oAj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAjkkAjkkAjkkAj0oBjkoAjkkAjkkAj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAjkoAjkkAjkkAj0wCiEAApW86/Pv5/fz8/v7+//7+/v7+//7+//////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////v7+/v7+//7+/v7+/fz8/fz7p3I+iD8Aj0wCjkkAjkkAjkoAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0kAjkkAjkkAj0kCikQF49PD/////Pz8//7+ + /v7+//////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////v7+//7+/fz8////5dbH + jEYHjkoCj0oAjkkAj0kAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oA + jkkAjkkAjkkAj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkA + jkkAkEwChj0AuI1i/////fv8/v/+/v7+/v7+/v7+//////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////v7+/v7+/v7+/v///fz7////vJRqhjwAkEwCjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAjkkAjkkAjUkAj0oBjEUBlFQW8uri/v7+/f39/v7+/v7+//////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////v7+/v7+/f39/f399O7ol1kci0QBj0sB + jkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAj0oAjUgAjkkAj0wChj0AzbCT//// + /Pz8/v7//v7+//////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////v7+/v7+/Pz7////07mfhj0Aj0wCjkkAjUgAj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + jkoAjkkAjkkAkEwCiEAAomw0/Pr4/f39/v7+/v7+/////v7+//////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////v7+/////v7+/v7+/fz8/fz8qHNAhz8AkEwCjkkAjkkAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0kAjkkAj0kAjkkCiUIC4dC+/////fz7/v7+/v7+//////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////v7+/v7+ + /fz8////5tjJi0YFjUgCj0oAjkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkgAkEwChTwA + t4tf/////fz7/v7+/v7+/v7+//////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////v7+/v7+/v7+/fz7////vZZuhTsAkE0CjkkAjkkAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAjkkAjkkAjkkAj0oBi0YBlFMT8eri/v7+/f38/v7+/v7+//////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////v7+/v7+/v39/f399vHs + mVseikQAkEsBjkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oAjkgAjkkAkEwChj0Aza+Q/////Pv6/v7+/v7+ + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////v7+/v7+/Pz7////1Luhhz4AkEwCjkkAjkkAj0oAjkkAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkA + j0sAiEAAo2w0/Pr4/fz8/f39/v7+/v7+/v7+//////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////v7+/v7+/v7+/v79/fz7/f38qndDhz8AkEsB + jkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAjkkAjkkAjkkAjkkAjkkBi0QD4c+9/////Pz7/v7+//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////v7+/v7+/fz7/v7+6NvNjUkIjUgBj0kAjkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAkEwBhTsAt4xf/////Pv6 + /v7+/v7+/v7+//////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////v7+/v7+/Pv6////wZt2hTsAkEwBjkkAjkkAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkA + jkkAjkkAj0oAi0UAlFIT8eri/v39/fz8/v7+/f39//////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////v7+/v7+/v7+ + /f38/fz89vHtmVsfikMAj0sAjkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAkEsChDoAy6uN/////Pv6/v7+/v7+/v7+//////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////v7+/f3+/v7+/Pv7////1r6lhj0Aj0oBjkkAjUkAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAj0sAiEAAoWkx + +/n3/fz8/f39/v7+/v7+//////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////v7+/v7+/v39/fz7/v7+ + rXtJhj0AkEwCj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oBjkkAj0oBjkoCiEEA4M68/////fz7/v7+/v39/////v7+//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////f39/v7+/fz7/v7+69/SjkgJi0UAjkgAjUcAjUgAjUgAjUgAjUgAjUgAjUgAjUgA + jUgAjUgAjUgAjUgAjUgAjUgAjUgAjUgAjUgAjUgAjUcAjUcAjkoAhDkAtYlb/////Pz6/f7+/v7+/v7+ + /v7+//////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////v7+/v7+/v39/v7+/Pz7////xKF9jEcSlVQW + k1IUlFIUlFIUlFIUlFIUlFIUlFIUlFIUlFIUlFIUlFIUlFIUlFIUlFIUlFIUlFIUlFIUlFIUk1IUlFMV + kU8TmVoj8ejg/v39/fz7/v7//f39/v////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////v7+/v///f39/f38/Pv67+bd8Ofe8Off8Off8Off8Off8Off8Off8Off8Off8Off8Off8Off8Off + 8Off8Off8Off8Off8Off8Off8Off8Off7uXd9O7o/////f39/v7+/v7+/v7+//7+//////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////v7+/v////7+/v7+/v7+/v7+//////////////////////// + /////////////////////////////////////////////////////////////////////////v39/v7+ + ///+/v7+//////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////7+/v////// + /////v7+/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39 + /v39/v39/v39/v39/v39/v79/////////v7+/////v7+//////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////v7+/////v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+ + /v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/////v7+//////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + ////////////////////////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAoAAAAAAEAAAACAAABABgAAAAAAAAgAwAAAAAAAAAAAAAA + AAAAAAAA//////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39 + /v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39 + /v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v7+/////v7+//////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////v7+/////v7+/v39/v39/v39/v39/v39/v39/v39 + /v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39 + /v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39 + /v79/v7+//////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////v7+//////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + ////////////////////////////////////////////////////////////////////////9/Lt9/Pu + 9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt + 9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt + 9/Lt9/Lt9/Lt9/Lt9/Lt9/Pt/v7+/v79/v7+/v7+/v7+//////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////v7+/v79/v799/Ls9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt + 9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt + 9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Pt9/Lt/v39pm80omkso2oto2oto2oto2ot + o2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2ot + o2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2ot + o2svnmMrzrGR/////fz7//////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////v7+/v7+/fz8//// + 1bygnGAqo2svo2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2ot + o2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2ot + o2oto2oto2oto2oto2oto2oto2svnWEruY9i/fz8wJpwkUwEiUIAi0QAi0QAi0QAi0QAi0QAi0QAi0QA + i0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QA + i0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0UAiUAAlVQT7uTZ + /v39/fz8/v7+//////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////f38/v7+9O3nmFkViD8Ai0UAi0QA + i0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QA + i0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QA + i0QAi0QAikMAi0MA3sq1/v7+/fz8wJhviD8AkU0Fj0sCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsC + kEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsC + kEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkU0EiD8AuItb/////f38/v7+/v7+ + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////v7+/v7+/fz7////vZNniD8AkU0EkEsCkEsCkEsCkEsCkEsCkEsC + kEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsC + kEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCj0sCkU4EiUAAuY9h + /////Pn4/v7+9e/pnF8ei0UAj0oBjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oBi0MA3cix/////fz7//////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////v7+/////Pz7////49G/j0oHjUgBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oBjEYBl1cU8urj/v39/fv6+vf0//// + 1LqfikIAj0sCj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAjkoAj0sBikIAoWcq9vLt/fz7/v39/v7+//////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////v7+ + /f38+/n3p3A0iUEAj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBiUEAzrCQ/////fz7/v7+/fz7/fz7+/n3q3hBiUAAkEsC + j0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAjkkAj0sBiEAAyKaB/////fz7/////v7+//////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////v7+/v7+/Pz7////z7GRiUEAkEwC + jkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAjkkAj0oBikIApnA0/fz7/v39/v7+/////////f38////6NrMkEwHjUgBjkoAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoA + jUgBlFIO7uTa/////f38//////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////v7+/////fz8/v398OfellYTjEYBj0oBj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkgB + jUYA4tG+/////fz7/////v7+/v7+/////fz8////wJpvhz4Aj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAkEsCiD8As4RR/fz7 + /fz7/v7+/v7+//////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////v7+/v38////uY9ghz4AkEwCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsBiD8Au5Fk/////f38/v7+ + /v7+/////////v7+/fz8/v389e/pnmMmi0MBj0sBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oCi0QB3Mav/////fz8/////v7+ + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////v7+ + /v7+/Pz8////4tG+jUgCjkkBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oBi0UAmFkW9e/o/v7+/f38//////////////////// + /////fv6////17+miUEAj0oBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBikMAoWgp+vfz/v7+/v79//////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////f39/fz8+/j2pW4z + iUAAj0sCj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0kAj0oBiUEA0ria/////fz8/v7+/v7+/////////////////v7+/v39/v39/v/+ + sH9LiEAAkEsCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAjkoAj0sCiD4Ax6Z//////fv6/v7+/v7+//////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////7+/v7//fz8////yqqHiD8Aj0sBjkkAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkA + j0sCiUIAqXU7/fz7/v39/v39/////////////////////////////v7+/fz7/v7+6t3PkU4NjkgCjkoB + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0kAj0oAjUcBkU0N7ODU/////f39/////v7+//////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////v7+/v///f38/v7+7+bdlVMOjEYBjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkBjUgB5dXG//// + /f38/////v7+//////////////////////////////7//fz7////w551iD4AkEwCjkkAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sB + hz4Ar35J/v39/fz8/v7+//////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////v7+/v39/fz7////tolYhz4Aj0sDjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEwBiEAAvZZq/////f37/v7+/v7+//////// + /////////////////////v7+/////f39/v7+9vHsnmMki0QAj0sAj0kAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oCi0QB2cKo//// + /fz7/v7+/v7+//////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////v7+/////fz8//// + 3su3jUcDjkoBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oBjEUBmlsZ9O7n/v79/f38//////////////////////////////// + /////////v7+/v7+/fz6////2cGpikIBj0oDjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0sBi0MAn2Qn+PTw/v79/f38/////v7+ + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////f39/fz8+vf0omosiUEAj0oBj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjkkAj0sCiD8A0reZ/////fz7/////v7+//////////////////////////////////////////// + /v7+/fz7/Pv6sH9KiD8AkEsBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsChj0Aw594/////fz7//7///////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////v7+/v7+/Pz7////yqmGiUAAj0sCjkkAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsBiUEAq3hA + /Pz6/f38/v39//7+/////////////////////////////////////////////v7+/////f37////7OLW + k1EOjUcBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAjkoBjUcCklAO6t7Q/v7+/fz7/v7+//////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////v7+/////f39//7/7ePYk1ENjUcAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAjUcBj0sG6NrL/////fz8/v///v7+ + /////////////////////////////////////////////////v7+/v7+/fz7////xqR+hz4Aj0sCjkkA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjkkAkEsBiUEAsIFN/v79/v39/v3+/v7+/v7+//////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////v79 + /Pz7/v7+s4RQiEAAkEwCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBhz4AwZty/////fz8/v7///7+//////////////////// + /////////////////////////////////////v7//v39/v399/PuoWgrikIAj0oBj0kAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sC + iEAA176j/////fz7//////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////v7+/v7+/fz8////2sSti0QBjkoC + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0kAj0sBi0QAm14d9vHr/v79/f39//////////////////////////////////////////// + ///////////////////////+/////fz8////3MawikMBj0oCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0sCi0QBnGAi9O7n/v38 + /fz8/v7+//////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////f39/v39+fbzoGcoikIAj0sBjkkAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sC + iUEA1buf/////fz8/v7+/v7+//////////////////////////////////////////////////////// + /////////v7+/f79/fz8/f39soNPhz4Aj0sCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEwChz0AwZxz/////f38/v7+/v7+//// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////v7+/Pz7////x6V/iD8AkEwBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0wBiEAArHpD/v7+/v38/v7+ + /////////////////////////////////////////////////////////////////////////////v7+ + /f38/v7+69/SlFIPjUcBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAjkgBkEwG6dvN/////fz8//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////v7+ + /////Pz7/v397ODUlFMRjUcCj0oBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkBkE0I6NvM//7+/fz8/////v7+//////////// + /////////////////////////////////////////////////////////////////////fz7////yKaB + hz0AkEwDjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAjkkAj0sCiUEArXtG/Pv5/fz7/v39/v7+//////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////v///f38////sH9K + hz8Aj0wCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAjkkAj0wChz8AwJlv/////f38/v7+/v7+//////////////////////////////// + /////////////////////////////////////////////v7+/v7+/f39/f389/Puomgti0MAj0sCj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0sDiD8A1r2i/////fz7/////v7+//////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////v7+/f38////18ClikMAj0sBjkkAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkA + j0oBi0QAnmIj9vHs/v39/v39//////////////////////////////////////////////////////// + /////////////////////////////////////v7+/fz8////3sq0jEYAjkoCjkkAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oAi0UA + nWAf9vHs/v7+/v79//////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////v7+/v7+/f38/f389vHsn2Qli0QBj0sBj0kAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oCikIA2MGo//// + /fz7/////v7+//////////////////////////////////////////////////////////////////// + /////////////////////////////fz8////tYhWhz4Aj0wBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsCiD8AwJpw/v7+/fz7 + /v7+/v7+//////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + ///////+/////fz7////xKF6hz4AkEwCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0wBiEAAsH9L/////f38/v79/v7+//////// + //////////////////////////////////////////////////////////////////////////////// + /////v7+/////fz7/v797uXblVQVjEYBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkCjkkG59jJ/////f38/////v7+//// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////v7+/v///f38//// + 6t3PkU4IjUcBjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjUgBkU4J6t7Q/v7+/fz8//////////////////////////////// + /////////////////////////////////////////////////////////////////////////v7+/v7+ + /fz7////yqqGiEAAj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsBiUEAqnY9/Pr4/v39/v7+//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + ///////////////////////////////////////////////////+/v39/fz7/fz7r39KiUEAj0sCj0kA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjkkAkEwChz0Aw553/////fz8/v7+/v7+//////////////////////////////////////////// + /////////////////////////////////////////////////////////////////f39/v79+/n3omor + ikEAj0sBj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAjkoAj0sCiEAA0raY/////fz6/v7+/v7+//////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////v7+/v7//fz7////1ryiiUIAj0oCjkoAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0sBikMBnmMm + +PTw/v39/f39//////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////v7+/v7+/fz7////38u2i0QEjkoDjkoAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0kAj0sBjEUAmVwb9e/p/v7+/f38//////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////f38/v7+9vHsnF8eikMAj0oAj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oBikMA2MCl/////fz7/////v7+ + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////v7+/fz8/v7+t4pZiD8AkEwCjkkAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEwChz4A + vpVq/////fz7/v/+/v7+//////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////v7+/v7+ + /Pz7////wJpwhz0Aj0wDjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsBiUAAr39J/v7+/v39/v7+/v7+//////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////v7+/////f39////8urillcTjEYAj0oAj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAjUgCjkgE5dXE/////fz7 + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////v7+/////fz8////59nLkEsHjUgB + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAjkoBjEcBk1AN7OLW/v///fz7//////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////v7+/v7+/Pz7////za6OiEAAj0sCjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEwBiUEAqnY8/f38/v39/v3+/v7+//////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////f39/fz8/fz7rHlCiUEAkEsBjkkAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sC + iD8AyKaB/////fz7/v///v7+//////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////v79 + /fz7+fXypW0xiUEAj0sBj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBiUEA0bWX/////fz8/////v7+//////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////v7+/v7+/fz7////z7OTikIAj0oCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAj0sBikMAn2Yl+vf0/v7+/f39 + //7///////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////v7+/////fz7////4tG+jEYC + jkoBjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oBjEUCl1gY8+vk/v79/fz7//////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////f38////7eLWlFEOjEcBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAjkoBi0QA28av/////fz7/v7//v7+//////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////v7+/v79/fz7/v7+uY5fiEAAj0wCjkkAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + jkkAkEsCiD8Auo9h/////fz8/v7+/v7+//////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////v7+/v7+/v79/fz8+/r4rHlE + iUEAkEsCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAjkkAj0sBiD8As4RR/f39/v39/v7+///+//////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////v7//f38/v7+7+fdl1cUjEYBjkoAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oBjkgB + 4tC+/////f38/////v7+//////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////v///v7+/Pz7////wp51hz4Aj0sCj0kAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjUcBk1EN7+Xb/////f39/////v7+//////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////fz8////z7GRhz4Aj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsCiUEAp3E4/Pv5/v38/v39 + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////v7+/v7+//7+/fz7////3ciwjEUAjkkBj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsChj0Ax6WA//// + /fz7/v7+/v7+//////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /v7+/v7+/f39/fz7+vj1qHI4iUEAj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAkEsCiD8Az7GR/////f38/v7+/v7+//////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + ///+/////fv7////7OHUlVQWjEYBj0oBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBikMAomks+PPv/v39/v79//////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////v7+/fz7 + ////5NPBj0oGjkgBj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oBjEYAl1gU8uri/v7+/fz8//////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////v7+/v7//f38////8uvj + n2QoiUEAkEwCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oCi0QB38u2/////fz7/////v7+//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////f38////u5Jlhz0A + kEwCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAjkkAj0sBiD8AupBi/////fz8/v7+/v7+//////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////v7+/////fz8/v7/+PTvq3dAiD8AkEwBjkkAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjkkAj0wCiEAAt4pa/v7+/f38/v79/v7+//////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////v7+/v7+/fz8/v398erimVwcjEUBj0sBj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjkkBjUgE4M66/////fz7/////v7+//////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////v7+/v7+/////fz8////+vj1rHpFiD8Aj0sCjkkAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAj0oAjUcBlVQR + 7+bd/v7+/f39//////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////v7+/fz7////0LSUiUEAj0sCjkkAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBikIAo2sv + +/n4/v39/v7+//////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////v39////+/n2tYhXhz4Aj0wDjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsChj0AyquI/////fz7/////v7+ + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////v7+/fz8/fz7qHM5iUEAj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsChz4Ay6uJ/////fz7/v7+ + /v7+//////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////v7+///+/v7+/fz7////+vf0 + rXtIikIAj0sDj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAj0sBikIAo2wx+PXx/f38/f38/v7+//////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /v7+/////Pz7////4tLAjkgHjUgCj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oBjEUBllYS8Oje/v7+/f38//////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////fv7////9/Puq3hChz4Aj0sBj0oAj0kA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAjkkAjkoBi0UA4M24/////fz7//////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////v7+/v7+/Pz6 + ////vpZqiD4Aj0wCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBiD8AuItc/////fz8/v7+/v7+//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////7+/////v7+/fz7////7+XaomoxiEAAkEwDj0oAjkkAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEwC + hz4AtolZ/////fz8/v3+/v7+//////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////f39/v7+9vHsnGAdi0MA + j0sBj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAjkkAjkkCjEYB38y3/////fz8/////v7+//////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////v7+/v7+ + /v///v39/Pz7////38y3mFkciUAAkEwCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oBjEYDllYX7+bc/v7+/f38 + /v7+//////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////v7+/v7+/fz7////1LqeiUEBj0sDjkoAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoA + j0sBikIApGww+vj1/v39/f39/v7+//////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////v7+/////////Pv6////////y6yJ + j0sEikMAkEsBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsCiD8Azq+O/////fz7//////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////v39/fz7/Pr5qnY9iD8Aj0wCj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBiD8AzK2M + /////Pz7/////v7+//////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////v7+/v7+/////v7+/fz7////8+zks4NTiUEAjUkAkEsCjkkAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0kAkEsBiUEApnA0/fv6/v39/f79/v7+/v7+//////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////v7+/v///f38////5tjJkUwIjkgAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjEYBlFIP7uTa/v7+/f38//// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////v7+/////v7+/fz7////////3Mixm14hiEAAj0sCj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + jkoAjkkCjkkG4c+7/////fz7/v7+/v7+//////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //7+/v7+/fz7////v5lviD8Aj0sDjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsCiUAAtIZV/////v39/v7+/v7+//////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////v7+/v7+///+/v39 + /fz8////+PTvvpZujUgDikQAkEwDj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsChz4AuI1d//// + /fz7/v7+//////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////7+/f38/f38 + 9O7nm10ci0QAj0oBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oBikMA3ciy/////fz8/////v7+//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////v7+/////v7+/fz7////////28aunmImhz4A + jkkAj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjEYAl1gW8+vk///+/f38/////v7+//// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////v7//Pz7////1LqdikIAj0sB + jkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAjkkAj0oBikMAoWgp+fby/f39/f39//////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////v7+/v7+/////v7+/fz7/v//////8OjdtolbjEUAikMAkEwCj0oAjkkAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsCiUEAzrGR/////fz7/v7+/v7+//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////v39/fz7/f38rn1HiD8Aj0sCj0kAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkA + j0sBiD8AyKiE/////fz8/v7+/v7+//////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////f38////////+/j2y62LlVQSiD8AjkoBj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjkkAj0oBiUEApW4z+vj1/v39/v39//////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////v7+/v7+/Pz7/v7+6d3Qkk8LjUcBjkoAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjUcBkk8J7eTZ + /v7+/f38/////v7+//////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////v7+/////v7+/f38/f39/////Pr4 + 2sSsomktiD8AjEcAkEwCj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAj0oAjkkAjkgD + 49PB/////fz8/////v7+//////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////v7+/f38////w552hz4Aj0wBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBiD4As4VS/////f39/v7+//// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////v7+/v7+/////f38/v7+////////38y3qXU+iUEAikMAkEsCj0sB + jkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsChz4AvJNm/////fz7/v7+/v7+ + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////v7+ + /////f39/f389vHrnGAgikMAj0sCj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkBjEYA3Mex/////fz7/v7+/v7+//////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /v7+/////////v39/fz8/v7/////////4tC9rntHjUgCiUIAkEsCj0sBj0oAjkkAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAj0oBjEUBmVsZ9O7m/v7+/f38//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////v7+/v7+/Pz7//// + 2MCnikMAj0oCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAjkkAj0oAi0MAnmMj+ffz/v39/f38//////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////v7+/v7+/v7+/v7+/v39/fv6//// + /////fz82MGnrXtIjUYAiUEAjkkAkEwCj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAjkkAj0sCikEA0bWX/////fz7/////v7+//////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////v7+/f39////r35IiUAAj0wC + jkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAjkkAj0sBiEAAxKF6/////fz8/v7+/v7+//////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////v7+/////v7+/f38/fz6/v7/////////8uvj0bWXomktjEUAiD4A + j0oBkEsBj0oAjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAkEsC + iUEAqHQ7+/j2/fz8/v39/v7+//////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////v7+/////fz7/v7+6NvNkEwIjUgBj0oBj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + jUgBkk8K7ODV/////fz7/////v7+//////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////v7+ + /////v7+/v7+/v7+/v39/v39/////////f3859jKvZVqnF8hiD8Ai0QAj0oAkEwEj0oAjkkAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkgBjkkE5dXE/////fz7 + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////v7+/v7+/Pz7////w551iD4Aj0wCjkkAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsCiUEAsIBL//// + /f38/v7+///+//////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////v7+/////v7+/fz8/fz6//////// + ////////69/T0baYqndBjkgAiUAAi0QAkEwDj0sBj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBiD8AvZRo/////fz7/////v7+//////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////v7+/f39+vbzn2UlikMAj0oBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sCi0QA2sOq/////fz7/v7//v7+ + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////v7+/////v7+/v7+/v79/v38/v38/f38/v///////////v398Ojf0bWXsYBNlVUShz0A + ikIAjkkAkEwCj0sCj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oBi0UBmlsc8eri/v39/fz8/v7+//////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////v7+ + /////Pz7////28avi0MBj0oCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0sBikMAnmIj+PXx/v39/f38///+//////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////v7+/////v7+/v79/f38 + /fz7/fz6/v7+/////////////////Pr55dXDyaqHr31Lkk8HikMAiUEAjUYAkEwDj0sBjkkAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + jkkAj0oBiUEA1Lqd/////fv6//////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////v7+/f79/fz7/f38 + sYJOiEAAj0sCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAjkkAj0sBiD8AxKB5/////fz8/v///v7+//////////////////////////// + /////////////////////////////////////////////////////////////////v7+/////v7+/v39 + /v39/v39/v39/v39/v39/v38/v38/fz8/fz8/f38/f38/v38/v38/v39////////////////////9vDq + 6d3P0baYtIZVn2Unkk8HhjsAiUAAjkgAj0sBkEsCj0sBj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsCiUAArHpD/f38 + /v39/v39/v7+//////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////fz8////7OHWkk8KjUcAjkoA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAjkkAjUgBkU4J6NrM/////fz8//////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + ////////////////////////////////////////9O3l49PB1Lqew552soNRnmIhikIAikIAiUEAikIA + jUgAkE0EkEwCj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoBjUgCj0wK59nK/////fz7/v7+//////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////v7+/v7+/fz7////xqR+hz4AkEwCjkkAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sC + iUEArnxG/v7+/f38/f39/v7+//////////////////////////////////////////////////////// + /////////////////////////////////v7+/////fz6+PXv+fXy+fXy+fXy+fbz9vDr8Oje8Oje6dzO + 5NXE2MCmzbCPv5dusIBMn2UnmlwZk1EJjEUAhz0AiUEAjUcAkEwEkE0EkU0EkU0EkEwDj0sCj0sCj0sC + j0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sC + j0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sC + j0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sC + j0sCj0sCj0sCj0sCj0sCj0sCj0sBkE0Ehz4Av5ht/v7+/fz7/v7+//////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + ///////////////////////////+/f39/f389/PuoGYnikIAj0sCj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsBiUAA1r2i//// + /Pz7/////v7+//////////////////////////////////////////////////////////////////// + /////////////////fz7////4M25l1YeoGYnn2MknmMkn2QmmVsYkUwEkU0FhTkAgzcAhDgAhDkAhDkA + hToAhToAhz0AiEAAikIAi0UAi0QAikIAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEA + iUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEA + iUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEA + iUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEA + iUEAiUEAikIAhz0Am1wc9O7o/v7+/f39/////v7+//////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////v7+//7//f38////2sSsi0QAj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oBi0UBnWEg9fDr/v39/f39//////// + //////////////////////////////////////////////////////////////////////////////// + /fz7////6NrMtIZYupFjuY9huo9huY9gupBjvJNnvJNnvpdsv5dtv5dtv5dsvpdsvpdsvpdsvpZrvpZr + vpVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVq + vZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVq + vZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVq + vZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvpdsuI1g + 4M24/////fz8/v7+/v7+//////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + ///////////////////////////////////////////////////////////////////////////////+ + /v7+/fz7////tIZUiD8Aj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsBiD8AwZxy/////fz7/v7+/v7+//////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////v7+//////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////v7+/v7+/fz7/v397ePY + llURjEYBj0oBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAjkgBkEsF6NrN/v7+/fz8/////v7+//////////////////////////// + /////////////////////////////////////////////////v7+/////v79/fz7/fz7/fz7/fz7/fz7 + /fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7 + /fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7 + /fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7 + /fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7 + /fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/v39/v7+/v7+/v7+//////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////v7+/Pv7////yaiEiD8Aj0sBjkkA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjkkAkEsCiUEArXpD/v7//f39/v7+//////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////v7+/////f39/v38+vf0oWgrikIAj0sBj0kAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oB + ikMA1bqf/////fz7/v7+/v7+//////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////v7+/v7+/fz7////3MiyjEYBjkkBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oBi0QAmlwa9O7n/v39 + /f38/////v7+//////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////v7+/f39////tIdViD8Aj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsBiD4Avpds/////f38/v7+//////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////v7+//// + /fz8/v7+7+XblFIOjEYBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjUgBjkoD5dbF/v7//fz7/v7+/v7+//////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////v7+/////v7+/v38/v39 + /v38/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39 + /v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39 + /v39/v39/v39/v39/v39/v39/////////v////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////v7+/v7+/fz8////y6uI + iUEAj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAjkkAj0sBiUEAq3c//fz7/v38/f79//////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////v7+//////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////v7+/v7+//////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////f39/v39/Pv6pGwuikEAj0sBjkkA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjkkAj0sCikIA1Lqd/////fz7/v///v7+//////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////v7+/v7++fbzqXY9nmImoGYnoGUnoGUnoGUnoGUnoGUnoGUnoGUn + oGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUn + oGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnn2UnoGUnnmMm4c+8//// + /fz8//////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////v7+/////fz7////4tC9jUgEjkkCjkoAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oBi0QA + mVsZ8+zl/v38/fz8//////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////v7+/fz7////xaJ8hToAi0QAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIA + ikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIA + ikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAi0QAhDoAqHI6+/n3/v39/v7+//////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////v7+/v7+/fz8////uIxciUAAkEsCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEwCiD8AvpZs/////fz7 + /v7+//7+//////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////v7+/////fz7/v7+ + 7ODUk1EPjUcCkEwDj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sB + j0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sB + j0sBj0sBj0sBj0sBj0sBj0sCkEsCjkkDkk4L6t7Q/////fz7//////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////f39/v7+8enhllYQjUYAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAjkkBjkkE49PB/////fz8/v///v7+//// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////v7+/f38////soJOiEAAj0sBjkkA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjkkAj0wBiD8Awp10/////fz8/v7+/v7+//////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////v7+//// + /Pz7////za+OikEAkEsBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAj0sDiEAAp3I3/Pr4/f38/v39/v7+//////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////v7+/Pz7////2cOri0QAj0oBjkkAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oBi0UAnWAf + 9vHs/v79/fz8//////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////v7+/f39/f38+/n3pm8z + iUEAj0sBj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAjkkAj0oCikIA0LOU/////fz8/////v7+//////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////v7+/v7+/f38/f38+PPvoGcqi0QBj0sBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0sCiUEA1r2i/////fz7/v7+/v7+ + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////v7+/////fz7////4tC9jkkDjkkBjkoAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAi0YAl1gT8+3l/v7+/f39//////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /fz7////x6V/iD8AkEsCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsCiEAArXtF/f38/f38/v7+//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////v7+/v7+/fz8////vJJmiD4AkEwCjkkAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sCiEAA + upFj/////fz8/v7+/v7+//////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////v7+/f38/v7+6t7RklALjUcB + jkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0kAjkgBkU0I6NrM/////f38/////v7+//////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////v7//fz8/v798eril1kVi0QAj0oBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkgBj0oG5NPC/////fz7 + /////v7+//////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////v7+/v79/f38/f38soNQiUEAj0sCj0kAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsC + hz4AwZty/////fz8/v7+/v7+//////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + ///////+/v///f37////0bWXiUEAj0sCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBiUEApm8z/fz6/f38/f39//////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////v7+/////fz7////3MexikMAj0sCjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oBi0MBnGEj9vLt/v39/f38 + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////f39 + /f38/Pr4qHM6iUEAj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oCiUEAz7KS/////fz7/v7+/v7+//////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////v39/f38+PXxomotikIAj0sBj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBiUIA1r2i/////fz7/////v7+//////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////v7+/v7+/fz7////49PBjUgC + jkkBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAjEYBllYU8ejf/v79/f38/////v7+//////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////v7+/v7+/fz7////y6yJ + hz8Aj0sCjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0kAkEsBiD8ArXpD/fz7/v38/v7+/v7+//////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////v7+/fz8////vJNmhz8Aj0sBjkkAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + jkkAkEsChz4At4ta/////fz8/v7+//////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////v7+/////f39////7ePZlFIPjEYAj0oAj0kAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + jkoAjUgCkEwL6dzO/////fz7//////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////v7+/////fz8/v398+vkmFoXi0UAj0oBj0kAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAjkkBjUcD + 38y3/////fz7/v7+/v7+//////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////v7+/fz7/f38tYdVhz8Aj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBiD8AwZtx//// + /fz8/////v7+//////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////v7+/v7+/fz8////0reaikIAjkoBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBiUEApGww+/j2/v38/f39 + /////v7+//////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////v7+/v7+/fz6////3su1jEUEjkoCjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oBi0QAnGAf9fDq/v79/f39//7+//////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////v79/v39/f39q3c+iUEAj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBiD8AzKyK/////Pz7/v7+//////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////v/+/f39/v79 + +fb0o2otikMAj0sBj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sCikIA07eb/////fz7/v7+/v7+//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////v7+/////fz8 + /v7/59fIjkoEjUkBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oBi0YBl1cV7+bc/f39/fz7/v7+/v7+//////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////v7+//7//fv7////yqmGiD8AkEwCjkkA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjkkAj0sBiEAAqXU7/Pv6/f38/v7+//////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////v7+/v7+/fz8////v5dtiD4A + kEsBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAjkkAj0sBiD8Atotb/////fz7/v7+///+//////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////7+/fz8/v7+7uTalVQUjUcCj0oBj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkCj0oK + 5tbG/////fz8/////v7+//////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////f39/v399O7om10ci0UBj0oBj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + jkkAj0oBjUcB4M25/////f38/v7///////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////v7+/////f38////tolXiD8AkEwCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEwCiD4Avpdr/////fz7/v39/v7+ + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////v7+/////fz8////07ibiUAAkEsBjkkAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0sCikIAomos + +PTw/fz8/f39/v7+//////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /fz7////3ciyikMAj0oCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAj0oAi0UAmlsY9O7n/v7+/v39/v////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////v7+/f39/f38/v79q3c/iUAAj0wCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEwChz4AyaiF/////fz7//// + /v7+//////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////v7+/f39/f38+fXxomoviUEA + kEwCjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAjkoAj0sCiUAA07mc/////fz7//////7+//////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////fz8////6NvMkEwHjUgBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAjUcAk1EL7uTa/////f39//////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////v7+/////f38////y6uJhz8Aj0sBjkkAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAj0sB + iUAAq3dA/Pr4/fz7/f39/v7+//////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////v7+/v///fz7 + ////wpxziD8AkEsBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAjkkAkEwCiD8AtIZU/v39/fz7/v39/v7+//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////f38/v7+7uPYlFMPjUcBjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkgBj0oC5dbG/////fz7 + /v7+//////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + ///////////////////////////////////////////////////////////+/fz8/v399/LunGAfi0MA + j0sBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAjkoAj0kBjEUC3cm0/////fz7/////v7+//////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /v7+/v79/f38/v7+tYhYiD8AkEsCj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0wChz0AvpZr/////fz8/v7+//////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////v7+/v///fz7////17+likMAj0oBjkkAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kA + j0oBikMAomgq+vf0/f39/v7+//////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////v7+/////Pz7////4M24 + i0UAj0oBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0sBi0QBm10f8+3m/f38/fz7/v7+/v7+//////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////7+/v79/f39////rnxGiUAAkEsCjkkAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sCiEAAyKWB + /////Pz7/v7+/v7+//////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////v79/f38+PTxomkti0MAj0sBjkkAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + jkkAkEwBiUEA0rea/////fz7/v7+//////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////v7+/v7//fz7////6t3QkE0IjUgBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oBjUcBkk8M69/T/v7+/fz7//// + /v7+//////////////////////////////////////////////////////////////////////////// + /////////////////////////v7+/v7+/fz7////y6yKhz4Aj0sCjkoAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sCiUAAqnU9/Pz7 + /v38/v39/////v7+//////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + ///+/v7+/fz7////wZtyhz8Aj0wCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBiEAAsoJP/////f38/v7+//////////////// + //////////////////////////////////////////////////////////////////////////////// + /////v7+/////f38/v7+8enhllYSjUcBj0oBj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjUgCj0sJ5dbG//7+/Pz7/v7+/v7+//// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////v7+/////f38/v79 + +PTwnGAfi0QAj0sAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAjkkAjkoCi0QA28St/////Pz7/v7+/v7+//////////////////////// + /////////////////////////////////////////////////////////////////////////v7+/f38 + ////uI1diD8AkEsCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsBhz8AvpZq/////fz7/v7+//////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////v7+/v7+/fz7////2sSsi0UAj0oB + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0kAj0sCikMAnmQl9/Lt/f38/f39/////v7+//////////////////////////////////// + /////////////////////////////////////////////////v7+/v7+/fz7////4tC+jUcCjkkBj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0kAj0oBi0QAmVsZ9O3m/v79/f38/////v7+//////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////v7+/f38////sYFMiD8Aj0sBjkkAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkA + kEwChz4AxaJ8/////fz7/v7+//////////////////////////////////////////////////////// + ///////////////////////////////////+/f39/f39+/n3pGwwikEAj0sBjkkAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAj0sCiUAA + 07mb/////Pz7/v7+/v7+//////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////v7+/////fz7/v7+7OHUkU0HjUgBj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oBjUcBk1AO6+DU + /v7+/Pz7/v7+/v7+//////////////////////////////////////////////////////////////// + /////////////v7+/v///f38////za+OiD8Aj0oBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsCiUEAq3c+/fz7/fz8/f79//// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////v7+/v7+/fz8////xqR/iD8Aj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0wChz4AsIBM/v79/fz7/v7+//// + //////////////////////////////////////////////////////////////////////////////7/ + /fz8/v7+8erillYSjEYBj0oBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkBjkkF5tfH/////fz8/////v7+//////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////f39/f39+PXwn2Qli0MAj0oBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oBikMA2cKp/////fz8/v7///////////////// + /////////////////////////////////////////////////////////v7+/v7+/fz8////uI1fiD8A + kEwCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAjkkAj0wDhz4AvpVq/////Pz7/v7+/v7+//////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////v7+/////fz8//// + 2sWtikEAj0oBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oBi0MAnWAg9vDq/f38/f38/v7+//////////////////////////// + /////////////////////////////////////////////fz7////4tC9jUcAjkkBjkkAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + jEQAm10b9O/p/v7+/f38//////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////v7+/v7+/v39/v7+soJPiUAAkEwC + jkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAjkkAj0sDhz8Aw552/////fz7/v7+//7+//////////////////////////////////////// + /////////////////////v7+/f39/f38/Pr4pW8yikIAj0sCj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sCiUAA07ib/////fz7 + /v7//v7+//////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////f38/v7+7OHWklAMjUcBj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkA + jUgAklAK6dzO/////f38/v////////////////////////////////////////////////////////// + /v7+/////fz7////za+OiUEAj0sCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0sCiEAAqXY9+/n3/fz7/v39///+//////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////v7+/////fz8////yamFiD8Aj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0wCiEAArXpD/Pv6 + /fz6/v39/v7+/////////////////////////////////////////////////////////f39/v7+8eng + lVMPjEYAj0oBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAjkkAjkkBkEwF5tjJ/////f38/v///v7+//////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////v7+/f39/v39+fXyomkrikMAj0sCj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAj0sDikMC17+l/////fz7/////v7+ + /////////////////////////////////////////////v7+/v7+/f38////uI1diEAAkEsDjkkAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + jkkAkEwBiD8Au5Jl/////fz8/v7+//7+//////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////v7+ + /////fz8////3ciyi0QAjkoCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAj0sBi0QAnmIi9vLt/v7+/v7+//////////////////// + /////////////////////////v7+/////fz8////4tC9jkgEjkkBj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oBjEUBmFoX8uvj + /v39/fz8/////v7+//////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////v7+/v7+/fz8//// + tYdViD8AkEsBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAjkkAj0wDhz4AwZtx/////fz7/v7+/v7+//////////////////////////// + /////////////v7+/v39/Pr4pG0vikMAj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBiEAAz7KT/////fz7/v7+/v7+//// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////fz7/v7+7uTalVQQjEYBj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oBjUgCkU4N59jI/////fz8/////v7+/////////////////////////////v7+/v7+/fz8 + ////za6NiUAAj0sCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sCiUEApm8z/Pv5/v39/f39//////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////v7+/v7+/fz7////yaiDhz4Aj0sCjkkAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sB + iUAAqnY9/fz8/f38/v7+/////////////////////////////v7+/////f38/v398enhllcVi0UBj0oB + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAjkgBjkkD5NTD/////fz8/v7+/v7+//////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////f39/v39+/j2oWgqikIAj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sCiUIA07mb//// + /fz7/v7+/////////////////////////////v7+/f38////t4tahz8AkEsBjkkAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sCiD8A + upFj/////fz8/v7+//////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////v7+/v7+/fz7////4M67jEYDjkkCj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0sBi0QBm18g8+3l/v39/f38/v7+/v7+ + /////////////v7+/v7+/Pz7////5NTEjkkEjUkCjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAj0oAjEUAllcT8+vk/v39/f38//// + /v7+//////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /v7+/fz8////uIxciD8Aj0sCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsChz0Avpdr/////fz7//////////////////////// + /f39/fz8+/n3p3E4iUEAj0sCj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAj0sBiUAA0LSV/////fz7/v7+/v7+//////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////v7+/////fz8/v7+8Ojf + llYSjEcBj0oAj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAjkkAjkgBkEwI5dfG/////fz7/v7+/////////////v7+/fz7////0LSWiEAA + kEsCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAjkkAj0sBikIAp3A1/Pr5/v39/v39//////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////v7+/v7+/fz7////za2Mhz8AkEsCjkkA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0kAj0sBiEEArHlC+/r4/fz8/v39/v7+/v7+/v7+/f38/v398+zkmVoZi0UBj0oBj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + jkkBjUcA49LA/////f38/////v7+//////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////v38/f39+/n3pG0yikEAj0sCjkoAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sC + iD8A0ria/////fz7//////7+/v7+/fz7////u5Jlhz0Aj0wDjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsBiD8Au5Jk/////f38 + /v7+/v7+//////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////v7+/////f38////38y3jUcAjkoBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0sBjEUBmlsb8eng/v79 + /f38/////f38////5NTDjkkEjkkBjkkAj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oBjEUBl1gV8uvk/v79/f38//////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////v7+/v7+/fz8////t4xchz4AkEwCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0wCiD4Au5Jm/////fz7/f39/fz8+/n3 + qXQ6iUIAj0sBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAjkkAkEsBiD8A0LOU/////fz8/////v7+//////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /fz7/v7+8engllYWjEYBj0oBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAjkkBjkgD5NTD/////Pr5////0bSXiEAAj0sDjkoAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0kAj0sCikIAp3E3/Pr4/v39/v39/v7+//////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////v7+/////fz8////0baX + iUAAkEsBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0kAj0sBiUAApnE2+fbz/f388uvjl1cTi0UAj0oAj0kAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAjkkBjkgE5NTD + /////fz8/v////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////v7+/v3+/v39/Pv5p3I4iUEAkEsBjkkA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjkoAj0sCiUAAz7GT////upFjiD8Aj0wCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEwCiD8Au5Fj/////fz8/v7///7+//// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////fz7////4tG/jUcDjkkCjkoAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAj0oAi0MA + nWEh1r2ikE0KjkgBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0sBjEYBl1gX8urj/v7+/f38///+//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////v7+/v/+/Pz7////u5FkiD8AkEwBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oAjkkAkU4FjUcAj0oA + jkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAjkkAj0sCiEAA0bWW/////fz7/v7+/v7+//////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////f38/v7+8+zlmFkZjEYBj0sBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkgAj0oAjkkAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBikIA + qHI4/Pv5/v39/v7+//////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////v7+/v7+ + /fz6////0LOTiD8AkEwCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oAj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kCjUcF49G//////f38//// + /v7+//////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////v7+/v39+/r3qnY+ + iUEAkEsBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sChz4Au5Nm/v///fz8/v7+/v7+//////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////v7+/////f38////5tfIjkkIjkkCj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAjkoAj0oAjEYAl1cU8+zl/v7+/v39//////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////v7+/v7+/fz7////v5huhz4Aj0sCjkkAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kA + kEsChz8Az7KS/////fz7/////v7+//////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////v79/v7+9O7pmlwZi0UAj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAkEsCikEApnA3+vf0/fz7 + /v39/v7+//////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////v7+/////fz7////07ibiD8AkEsDj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkoBjEUA38y3/////fz7//////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////v7+/v39 + /fz7+/n3q3hBiUEAkEsCj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAjkkAj0wChz4AuY1f/////f38/v7+/v7+//////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////fz8////59jIj0oD + jkkBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oBjEYCl1YV7+Xb/v39/fz7/v7+//////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////v7+/v7+/f37////vpdthz0Aj0wCj0kAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsBhz4Ay6uJ + /////fz8//////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////v7+/fz8/v399O/om18hi0QBj0oBj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBiUEApW40+vf0/v39/v39/v7+/v7+ + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////f38////1r2iiUAAj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAjkkCjEYE4M24/////fz7/v7+//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /v7+/v7+/v79/v38/v39rnxIiEAAkEsBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAjkkAkEwChz8At4tZ/v7+/fz7/v7+//////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////v7+/fz7 + /v7+6NrMkU0LjkgCjkoBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjEYB + llYW7+Xb/v7+/f38/////v7+//////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////7//fz7////wJpwhz0A + kEwCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sCiD8Aza6M/////fz7/v7+ + /v7+//////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////v7+/////f39/v799vLtnWIki0QAj0sBj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAj0sBiUEApG0x+vf0/f38/v7+//////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////v7+/v7+/fz7////1r6ii0MAj0oCjkkAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAjkoAj0kCjEYF38y3/////fz7/////v7+//////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////v7+/f38/fz8rXtEiUAAj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkA + j0wChz8AuIxc/v7+/fz7/v39/v7+//////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /v7+/////fz8////697Skk8MjUgBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAjkoAjUYAllYR8Ofe/v/+ + /v39/v////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////v7+/v7+/fv6 + ////xKF6iD4AkEsCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0wCiD8Ay6uJ/////v38//////7+//////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////v79/v7++fXyn2Qli0MA + j0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0kAj0sCiUEApW8z+fby/fz7/f39/v7+//////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////v7+/////fz8////2cKqikQAjkoCj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjkoAjkkBjEYA4M24/////fz8/v7+//////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////v7+/v7+/fz7/Pv6sH9LiD8AkEsCj0kAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0wChz4At4pa + /////f38//////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////f38////7OLWkk4KjUgBjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0sBjEUBl1cV7uXb/v39/Pz8/v7+/v7+ + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /v7+/////fz8////xaJ8iD8Aj0wCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsBiUAAzK2L/////Pz7/v7+//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////v7+/v39/fz7 + 9/LtomgsikIAj0sCj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAjkkAj0sBiUIApGww/Pn3/f38/f39//////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////fz7////3Mewi0QAj0oB + jkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkB + jUcE3sq2/////Pz7/v7+/v7+//////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////v7+/v7+/f38////tolXiD8Aj0wBjkkAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsBiD8AuIxb/////fz8/v7+ + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////v7+/fz7/v7+7eLWlVMSjUcCj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjUYBllYT8Ojf/v7+/f39/////v7+//////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////fz8////yKaBhz4AkEsBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAjkkAj0sBhz8AyaiF/////fz7/v7+/v7+//////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////v7+ + /v7+/v39/v39+PTxomktikIAj0sBj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oBikMAomgq+fXy/v39/f39//////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////v7+/fz7//// + 3Mixi0MBjkoCjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oBi0MA3ciy//// + /fz8/////v7+//////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////v7+/fz7/v79tIdVhz4AkEwC + jkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEwBhz8AtIdV/////f37/v7+/v7+//////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////v7+/////f38////7+belVUUjEYBj0oBj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAjkoAjUYBlFMO7uPZ/v7+/fz8//////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////v7+/v7+/fz7////y6yJiD8Aj0sCjkkAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjkkAkEwBhz4AyKaD/////fz7/v///v7+//////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////v7+/v38+ff0pW4yikEAj0sBj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0sBikIAoWgq + +vf1/f38/f39//7+//////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////v7+ + /////fz7////4M24jEUFj0kCjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkCjEYB3ciy/////fz7/////v7+ + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////v7+/v39/fz7/v39 + tolZhz4AkU4FkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwD + kEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwD + kEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwCkU0EiEAAtIVS/////f39/v7+///+//////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////v///v39////8OfdlVQQhDoAiD8A + iD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4A + iD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4A + iD4AiD4AiD4AiD8AhToAkU4K7+Xc/v7+/f38/////v7+//////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////7+/////v7+////38y4y6yNzrGQzrCQzrCQzrCQzrCQ + zrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQ + zrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrGS + yqqM38u2/////v79/v7+/v7+//////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////v7+/v7+/v7+/v79//////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////v79/v7+ + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////f38/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8 + /fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8 + /fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/f38/v7+/////v7+//////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + ////////////////////////////////////////////////////////////////////////AAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA= + + + \ No newline at end of file diff --git a/LFP_Manager_PRM/Forms/fmxFwUpdate.Designer.cs b/LFP_Manager_PRM/Forms/fmxFwUpdate.Designer.cs new file mode 100644 index 0000000..90c69fa --- /dev/null +++ b/LFP_Manager_PRM/Forms/fmxFwUpdate.Designer.cs @@ -0,0 +1,534 @@ +namespace LFP_Manager +{ + partial class fmxFwUpdate + { + /// + /// Required designer variable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Clean up any resources being used. + /// + /// true if managed resources should be disposed; otherwise, false. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Windows Form Designer generated code + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + this.components = new System.ComponentModel.Container(); + System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(fmxFwUpdate)); + this.layoutControl1 = new DevExpress.XtraLayout.LayoutControl(); + this.teModuleNo = new DevExpress.XtraEditors.TextEdit(); + this.btnRestart = new DevExpress.XtraEditors.SimpleButton(); + this.lbUpdateStatus = new DevExpress.XtraEditors.LabelControl(); + this.lbUpdateProgress = new DevExpress.XtraEditors.LabelControl(); + this.pgUpdate = new DevExpress.XtraEditors.ProgressBarControl(); + this.lbUpdateTime = new DevExpress.XtraEditors.LabelControl(); + this.lbFileInfo = new DevExpress.XtraEditors.LabelControl(); + this.btnFwUpdate = new DevExpress.XtraEditors.SimpleButton(); + this.btnClose = new DevExpress.XtraEditors.SimpleButton(); + this.btnFind = new DevExpress.XtraEditors.SimpleButton(); + this.edFilename = new DevExpress.XtraEditors.TextEdit(); + this.layoutControlGroup1 = new DevExpress.XtraLayout.LayoutControlGroup(); + this.layoutControlItem3 = new DevExpress.XtraLayout.LayoutControlItem(); + this.layoutControlGroup2 = new DevExpress.XtraLayout.LayoutControlGroup(); + this.layoutControlItem10 = new DevExpress.XtraLayout.LayoutControlItem(); + this.layoutControlItem11 = new DevExpress.XtraLayout.LayoutControlItem(); + this.layoutControlItem9 = new DevExpress.XtraLayout.LayoutControlItem(); + this.emptySpaceItem2 = new DevExpress.XtraLayout.EmptySpaceItem(); + this.layoutControlItem12 = new DevExpress.XtraLayout.LayoutControlItem(); + this.layoutControlGroup3 = new DevExpress.XtraLayout.LayoutControlGroup(); + this.layoutControlItem5 = new DevExpress.XtraLayout.LayoutControlItem(); + this.layoutControlItem6 = new DevExpress.XtraLayout.LayoutControlItem(); + this.emptySpaceItem3 = new DevExpress.XtraLayout.EmptySpaceItem(); + this.layoutControlItem2 = new DevExpress.XtraLayout.LayoutControlItem(); + this.layoutControlItem1 = new DevExpress.XtraLayout.LayoutControlItem(); + this.layoutControlGroup4 = new DevExpress.XtraLayout.LayoutControlGroup(); + this.layoutControlItem8 = new DevExpress.XtraLayout.LayoutControlItem(); + this.emptySpaceItem1 = new DevExpress.XtraLayout.EmptySpaceItem(); + this.layoutControlGroup5 = new DevExpress.XtraLayout.LayoutControlGroup(); + this.emptySpaceItem4 = new DevExpress.XtraLayout.EmptySpaceItem(); + this.layoutControlItem4 = new DevExpress.XtraLayout.LayoutControlItem(); + this.tmrFirmwareUpdate = new System.Windows.Forms.Timer(this.components); + ((System.ComponentModel.ISupportInitialize)(this.layoutControl1)).BeginInit(); + this.layoutControl1.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.teModuleNo.Properties)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.pgUpdate.Properties)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.edFilename.Properties)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup1)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem3)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup2)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem10)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem11)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem9)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.emptySpaceItem2)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem12)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup3)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem5)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem6)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.emptySpaceItem3)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem2)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem1)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup4)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem8)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.emptySpaceItem1)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup5)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.emptySpaceItem4)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem4)).BeginInit(); + this.SuspendLayout(); + // + // layoutControl1 + // + this.layoutControl1.Controls.Add(this.teModuleNo); + this.layoutControl1.Controls.Add(this.btnRestart); + this.layoutControl1.Controls.Add(this.lbUpdateStatus); + this.layoutControl1.Controls.Add(this.lbUpdateProgress); + this.layoutControl1.Controls.Add(this.pgUpdate); + this.layoutControl1.Controls.Add(this.lbUpdateTime); + this.layoutControl1.Controls.Add(this.lbFileInfo); + this.layoutControl1.Controls.Add(this.btnFwUpdate); + this.layoutControl1.Controls.Add(this.btnClose); + this.layoutControl1.Controls.Add(this.btnFind); + this.layoutControl1.Controls.Add(this.edFilename); + this.layoutControl1.Dock = System.Windows.Forms.DockStyle.Fill; + this.layoutControl1.Location = new System.Drawing.Point(0, 0); + this.layoutControl1.Name = "layoutControl1"; + this.layoutControl1.OptionsCustomizationForm.DesignTimeCustomizationFormPositionAndSize = new System.Drawing.Rectangle(1092, 323, 626, 350); + this.layoutControl1.Root = this.layoutControlGroup1; + this.layoutControl1.Size = new System.Drawing.Size(736, 500); + this.layoutControl1.TabIndex = 0; + this.layoutControl1.Text = "layoutControl1"; + // + // teModuleNo + // + this.teModuleNo.EditValue = "1"; + this.teModuleNo.Location = new System.Drawing.Point(473, 55); + this.teModuleNo.Name = "teModuleNo"; + this.teModuleNo.Properties.Appearance.Options.UseTextOptions = true; + this.teModuleNo.Properties.Appearance.TextOptions.HAlignment = DevExpress.Utils.HorzAlignment.Far; + this.teModuleNo.Properties.EditFormat.FormatType = DevExpress.Utils.FormatType.Numeric; + this.teModuleNo.Size = new System.Drawing.Size(60, 20); + this.teModuleNo.StyleController = this.layoutControl1; + this.teModuleNo.TabIndex = 18; + this.teModuleNo.KeyPress += new System.Windows.Forms.KeyPressEventHandler(this.TextBox_KeyPress); + // + // btnRestart + // + this.btnRestart.Location = new System.Drawing.Point(535, 290); + this.btnRestart.Name = "btnRestart"; + this.btnRestart.Size = new System.Drawing.Size(189, 26); + this.btnRestart.StyleController = this.layoutControl1; + this.btnRestart.TabIndex = 17; + this.btnRestart.Text = "Restart"; + this.btnRestart.Click += new System.EventHandler(this.btnRestart_Click); + // + // lbUpdateStatus + // + this.lbUpdateStatus.Location = new System.Drawing.Point(8, 353); + this.lbUpdateStatus.Name = "lbUpdateStatus"; + this.lbUpdateStatus.Size = new System.Drawing.Size(525, 30); + this.lbUpdateStatus.StyleController = this.layoutControl1; + this.lbUpdateStatus.TabIndex = 16; + this.lbUpdateStatus.Text = "Update Status : "; + // + // lbUpdateProgress + // + this.lbUpdateProgress.Appearance.Options.UseTextOptions = true; + this.lbUpdateProgress.Appearance.TextOptions.HAlignment = DevExpress.Utils.HorzAlignment.Far; + this.lbUpdateProgress.Location = new System.Drawing.Point(537, 387); + this.lbUpdateProgress.Name = "lbUpdateProgress"; + this.lbUpdateProgress.Size = new System.Drawing.Size(191, 27); + this.lbUpdateProgress.StyleController = this.layoutControl1; + this.lbUpdateProgress.TabIndex = 15; + this.lbUpdateProgress.Text = "0/0 bytes"; + // + // pgUpdate + // + this.pgUpdate.Location = new System.Drawing.Point(8, 418); + this.pgUpdate.Name = "pgUpdate"; + this.pgUpdate.Size = new System.Drawing.Size(720, 37); + this.pgUpdate.StyleController = this.layoutControl1; + this.pgUpdate.TabIndex = 14; + // + // lbUpdateTime + // + this.lbUpdateTime.Location = new System.Drawing.Point(8, 387); + this.lbUpdateTime.Name = "lbUpdateTime"; + this.lbUpdateTime.Size = new System.Drawing.Size(525, 27); + this.lbUpdateTime.StyleController = this.layoutControl1; + this.lbUpdateTime.TabIndex = 13; + this.lbUpdateTime.Text = "00:00"; + // + // lbFileInfo + // + this.lbFileInfo.Appearance.Options.UseTextOptions = true; + this.lbFileInfo.Appearance.TextOptions.VAlignment = DevExpress.Utils.VertAlignment.Top; + this.lbFileInfo.Location = new System.Drawing.Point(12, 106); + this.lbFileInfo.Name = "lbFileInfo"; + this.lbFileInfo.Size = new System.Drawing.Size(519, 151); + this.lbFileInfo.StyleController = this.layoutControl1; + this.lbFileInfo.TabIndex = 12; + this.lbFileInfo.Text = "File Information"; + // + // btnFwUpdate + // + this.btnFwUpdate.Location = new System.Drawing.Point(537, 55); + this.btnFwUpdate.Name = "btnFwUpdate"; + this.btnFwUpdate.Size = new System.Drawing.Size(191, 22); + this.btnFwUpdate.StyleController = this.layoutControl1; + this.btnFwUpdate.TabIndex = 8; + this.btnFwUpdate.Text = "Firmware Update"; + this.btnFwUpdate.Click += new System.EventHandler(this.btnFwUpdate_Click); + // + // btnClose + // + this.btnClose.Location = new System.Drawing.Point(4, 463); + this.btnClose.Name = "btnClose"; + this.btnClose.Size = new System.Drawing.Size(728, 33); + this.btnClose.StyleController = this.layoutControl1; + this.btnClose.TabIndex = 6; + this.btnClose.Text = "CLOSE"; + this.btnClose.Click += new System.EventHandler(this.btnClose_Click); + // + // btnFind + // + this.btnFind.Location = new System.Drawing.Point(537, 29); + this.btnFind.Name = "btnFind"; + this.btnFind.Size = new System.Drawing.Size(191, 22); + this.btnFind.StyleController = this.layoutControl1; + this.btnFind.TabIndex = 5; + this.btnFind.Text = "Find File..."; + this.btnFind.Click += new System.EventHandler(this.btnFind_Click); + // + // edFilename + // + this.edFilename.Location = new System.Drawing.Point(88, 29); + this.edFilename.Name = "edFilename"; + this.edFilename.Properties.Appearance.Font = new System.Drawing.Font("Tahoma", 10F); + this.edFilename.Properties.Appearance.Options.UseFont = true; + this.edFilename.Size = new System.Drawing.Size(445, 22); + this.edFilename.StyleController = this.layoutControl1; + this.edFilename.TabIndex = 4; + // + // layoutControlGroup1 + // + this.layoutControlGroup1.CustomizationFormText = "layoutControlGroup1"; + this.layoutControlGroup1.EnableIndentsWithoutBorders = DevExpress.Utils.DefaultBoolean.True; + this.layoutControlGroup1.GroupBordersVisible = false; + this.layoutControlGroup1.Items.AddRange(new DevExpress.XtraLayout.BaseLayoutItem[] { + this.layoutControlItem3, + this.layoutControlGroup2, + this.layoutControlGroup3}); + this.layoutControlGroup1.Name = "Root"; + this.layoutControlGroup1.Padding = new DevExpress.XtraLayout.Utils.Padding(2, 2, 2, 2); + this.layoutControlGroup1.Size = new System.Drawing.Size(736, 500); + this.layoutControlGroup1.TextVisible = false; + // + // layoutControlItem3 + // + this.layoutControlItem3.Control = this.btnClose; + this.layoutControlItem3.CustomizationFormText = "layoutControlItem3"; + this.layoutControlItem3.Location = new System.Drawing.Point(0, 459); + this.layoutControlItem3.MinSize = new System.Drawing.Size(93, 26); + this.layoutControlItem3.Name = "layoutControlItem3"; + this.layoutControlItem3.Size = new System.Drawing.Size(732, 37); + this.layoutControlItem3.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem3.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem3.TextVisible = false; + // + // layoutControlGroup2 + // + this.layoutControlGroup2.Items.AddRange(new DevExpress.XtraLayout.BaseLayoutItem[] { + this.layoutControlItem10, + this.layoutControlItem11, + this.layoutControlItem9, + this.emptySpaceItem2, + this.layoutControlItem12}); + this.layoutControlGroup2.Location = new System.Drawing.Point(0, 324); + this.layoutControlGroup2.Name = "layoutControlGroup2"; + this.layoutControlGroup2.Padding = new DevExpress.XtraLayout.Utils.Padding(1, 1, 1, 1); + this.layoutControlGroup2.Size = new System.Drawing.Size(732, 135); + this.layoutControlGroup2.Text = "Update Status"; + // + // layoutControlItem10 + // + this.layoutControlItem10.Control = this.pgUpdate; + this.layoutControlItem10.CustomizationFormText = "layoutControlItem10"; + this.layoutControlItem10.Location = new System.Drawing.Point(0, 65); + this.layoutControlItem10.MinSize = new System.Drawing.Size(54, 16); + this.layoutControlItem10.Name = "layoutControlItem10"; + this.layoutControlItem10.Size = new System.Drawing.Size(724, 41); + this.layoutControlItem10.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem10.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem10.TextVisible = false; + // + // layoutControlItem11 + // + this.layoutControlItem11.Control = this.lbUpdateProgress; + this.layoutControlItem11.CustomizationFormText = "layoutControlItem11"; + this.layoutControlItem11.Location = new System.Drawing.Point(529, 34); + this.layoutControlItem11.MinSize = new System.Drawing.Size(74, 18); + this.layoutControlItem11.Name = "layoutControlItem11"; + this.layoutControlItem11.Size = new System.Drawing.Size(195, 31); + this.layoutControlItem11.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem11.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem11.TextVisible = false; + // + // layoutControlItem9 + // + this.layoutControlItem9.Control = this.lbUpdateTime; + this.layoutControlItem9.CustomizationFormText = "layoutControlItem9"; + this.layoutControlItem9.Location = new System.Drawing.Point(0, 34); + this.layoutControlItem9.MinSize = new System.Drawing.Size(74, 18); + this.layoutControlItem9.Name = "layoutControlItem9"; + this.layoutControlItem9.Size = new System.Drawing.Size(529, 31); + this.layoutControlItem9.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem9.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem9.TextVisible = false; + // + // emptySpaceItem2 + // + this.emptySpaceItem2.AllowHotTrack = false; + this.emptySpaceItem2.CustomizationFormText = "emptySpaceItem2"; + this.emptySpaceItem2.Location = new System.Drawing.Point(529, 0); + this.emptySpaceItem2.Name = "emptySpaceItem2"; + this.emptySpaceItem2.Size = new System.Drawing.Size(195, 34); + this.emptySpaceItem2.TextSize = new System.Drawing.Size(0, 0); + // + // layoutControlItem12 + // + this.layoutControlItem12.Control = this.lbUpdateStatus; + this.layoutControlItem12.CustomizationFormText = "layoutControlItem12"; + this.layoutControlItem12.Location = new System.Drawing.Point(0, 0); + this.layoutControlItem12.MinSize = new System.Drawing.Size(74, 18); + this.layoutControlItem12.Name = "layoutControlItem12"; + this.layoutControlItem12.Size = new System.Drawing.Size(529, 34); + this.layoutControlItem12.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem12.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem12.TextVisible = false; + // + // layoutControlGroup3 + // + this.layoutControlGroup3.Items.AddRange(new DevExpress.XtraLayout.BaseLayoutItem[] { + this.layoutControlItem5, + this.layoutControlItem6, + this.emptySpaceItem3, + this.layoutControlItem2, + this.layoutControlItem1, + this.layoutControlGroup4, + this.layoutControlGroup5}); + this.layoutControlGroup3.Location = new System.Drawing.Point(0, 0); + this.layoutControlGroup3.Name = "layoutControlGroup3"; + this.layoutControlGroup3.Padding = new DevExpress.XtraLayout.Utils.Padding(1, 1, 1, 1); + this.layoutControlGroup3.Size = new System.Drawing.Size(732, 324); + this.layoutControlGroup3.Text = "Update Command"; + // + // layoutControlItem5 + // + this.layoutControlItem5.Control = this.btnFwUpdate; + this.layoutControlItem5.CustomizationFormText = "layoutControlItem5"; + this.layoutControlItem5.Location = new System.Drawing.Point(529, 26); + this.layoutControlItem5.MinSize = new System.Drawing.Size(108, 26); + this.layoutControlItem5.Name = "layoutControlItem5"; + this.layoutControlItem5.Size = new System.Drawing.Size(195, 26); + this.layoutControlItem5.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem5.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem5.TextVisible = false; + // + // layoutControlItem6 + // + this.layoutControlItem6.Control = this.teModuleNo; + this.layoutControlItem6.CustomizationFormText = "Module No"; + this.layoutControlItem6.Location = new System.Drawing.Point(385, 26); + this.layoutControlItem6.Name = "layoutControlItem6"; + this.layoutControlItem6.Size = new System.Drawing.Size(144, 26); + this.layoutControlItem6.Text = "Module No"; + this.layoutControlItem6.TextSize = new System.Drawing.Size(68, 14); + // + // emptySpaceItem3 + // + this.emptySpaceItem3.AllowHotTrack = false; + this.emptySpaceItem3.CustomizationFormText = "emptySpaceItem3"; + this.emptySpaceItem3.Location = new System.Drawing.Point(0, 26); + this.emptySpaceItem3.Name = "emptySpaceItem3"; + this.emptySpaceItem3.Size = new System.Drawing.Size(385, 26); + this.emptySpaceItem3.TextSize = new System.Drawing.Size(0, 0); + // + // layoutControlItem2 + // + this.layoutControlItem2.Control = this.btnFind; + this.layoutControlItem2.CustomizationFormText = "layoutControlItem2"; + this.layoutControlItem2.Location = new System.Drawing.Point(529, 0); + this.layoutControlItem2.Name = "layoutControlItem2"; + this.layoutControlItem2.Size = new System.Drawing.Size(195, 26); + this.layoutControlItem2.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem2.TextVisible = false; + // + // layoutControlItem1 + // + this.layoutControlItem1.Control = this.edFilename; + this.layoutControlItem1.CustomizationFormText = "layoutControlItem1"; + this.layoutControlItem1.Location = new System.Drawing.Point(0, 0); + this.layoutControlItem1.Name = "layoutControlItem1"; + this.layoutControlItem1.Size = new System.Drawing.Size(529, 26); + this.layoutControlItem1.Text = "File Name : "; + this.layoutControlItem1.TextSize = new System.Drawing.Size(68, 14); + // + // layoutControlGroup4 + // + this.layoutControlGroup4.Items.AddRange(new DevExpress.XtraLayout.BaseLayoutItem[] { + this.layoutControlItem8, + this.emptySpaceItem1}); + this.layoutControlGroup4.Location = new System.Drawing.Point(0, 52); + this.layoutControlGroup4.Name = "layoutControlGroup4"; + this.layoutControlGroup4.Padding = new DevExpress.XtraLayout.Utils.Padding(1, 1, 1, 1); + this.layoutControlGroup4.Size = new System.Drawing.Size(724, 184); + this.layoutControlGroup4.Text = "File Information"; + // + // layoutControlItem8 + // + this.layoutControlItem8.Control = this.lbFileInfo; + this.layoutControlItem8.CustomizationFormText = "layoutControlItem8"; + this.layoutControlItem8.Location = new System.Drawing.Point(0, 0); + this.layoutControlItem8.MinSize = new System.Drawing.Size(74, 18); + this.layoutControlItem8.Name = "layoutControlItem8"; + this.layoutControlItem8.Size = new System.Drawing.Size(523, 155); + this.layoutControlItem8.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem8.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem8.TextVisible = false; + // + // emptySpaceItem1 + // + this.emptySpaceItem1.AllowHotTrack = false; + this.emptySpaceItem1.CustomizationFormText = "emptySpaceItem1"; + this.emptySpaceItem1.Location = new System.Drawing.Point(523, 0); + this.emptySpaceItem1.Name = "emptySpaceItem1"; + this.emptySpaceItem1.Size = new System.Drawing.Size(193, 155); + this.emptySpaceItem1.TextSize = new System.Drawing.Size(0, 0); + // + // layoutControlGroup5 + // + this.layoutControlGroup5.Items.AddRange(new DevExpress.XtraLayout.BaseLayoutItem[] { + this.emptySpaceItem4, + this.layoutControlItem4}); + this.layoutControlGroup5.Location = new System.Drawing.Point(0, 236); + this.layoutControlGroup5.Name = "layoutControlGroup5"; + this.layoutControlGroup5.Padding = new DevExpress.XtraLayout.Utils.Padding(1, 1, 1, 1); + this.layoutControlGroup5.Size = new System.Drawing.Size(724, 59); + this.layoutControlGroup5.Text = "Extra Command"; + // + // emptySpaceItem4 + // + this.emptySpaceItem4.AllowHotTrack = false; + this.emptySpaceItem4.CustomizationFormText = "emptySpaceItem4"; + this.emptySpaceItem4.Location = new System.Drawing.Point(0, 0); + this.emptySpaceItem4.Name = "emptySpaceItem4"; + this.emptySpaceItem4.Size = new System.Drawing.Size(523, 30); + this.emptySpaceItem4.TextSize = new System.Drawing.Size(0, 0); + // + // layoutControlItem4 + // + this.layoutControlItem4.Control = this.btnRestart; + this.layoutControlItem4.CustomizationFormText = "layoutControlItem4"; + this.layoutControlItem4.Location = new System.Drawing.Point(523, 0); + this.layoutControlItem4.MinSize = new System.Drawing.Size(93, 26); + this.layoutControlItem4.Name = "layoutControlItem4"; + this.layoutControlItem4.Size = new System.Drawing.Size(193, 30); + this.layoutControlItem4.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem4.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem4.TextVisible = false; + // + // tmrFirmwareUpdate + // + this.tmrFirmwareUpdate.Tick += new System.EventHandler(this.tmrFirmwareUpdate_Tick); + // + // fmxFwUpdate + // + this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 14F); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.ClientSize = new System.Drawing.Size(736, 500); + this.Controls.Add(this.layoutControl1); + this.IconOptions.Image = ((System.Drawing.Image)(resources.GetObject("fmxFwUpdate.IconOptions.Image"))); + this.Name = "fmxFwUpdate"; + this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen; + this.Text = "fmFwUpdate"; + this.FormClosed += new System.Windows.Forms.FormClosedEventHandler(this.fmxFwUpdate_FormClosed); + ((System.ComponentModel.ISupportInitialize)(this.layoutControl1)).EndInit(); + this.layoutControl1.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.teModuleNo.Properties)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.pgUpdate.Properties)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.edFilename.Properties)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup1)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem3)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup2)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem10)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem11)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem9)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.emptySpaceItem2)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem12)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup3)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem5)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem6)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.emptySpaceItem3)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem2)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem1)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup4)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem8)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.emptySpaceItem1)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup5)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.emptySpaceItem4)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem4)).EndInit(); + this.ResumeLayout(false); + + } + + #endregion + + private DevExpress.XtraLayout.LayoutControl layoutControl1; + private DevExpress.XtraLayout.LayoutControlGroup layoutControlGroup1; + private DevExpress.XtraEditors.SimpleButton btnFind; + private DevExpress.XtraEditors.TextEdit edFilename; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem1; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem2; + private DevExpress.XtraLayout.EmptySpaceItem emptySpaceItem1; + private DevExpress.XtraEditors.SimpleButton btnClose; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem3; + private DevExpress.XtraEditors.SimpleButton btnFwUpdate; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem5; + private DevExpress.XtraLayout.EmptySpaceItem emptySpaceItem3; + private DevExpress.XtraLayout.EmptySpaceItem emptySpaceItem4; + private DevExpress.XtraEditors.LabelControl lbFileInfo; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem8; + private DevExpress.XtraLayout.EmptySpaceItem emptySpaceItem2; + private DevExpress.XtraEditors.LabelControl lbUpdateTime; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem9; + private DevExpress.XtraEditors.ProgressBarControl pgUpdate; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem10; + private DevExpress.XtraEditors.LabelControl lbUpdateProgress; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem11; + private DevExpress.XtraEditors.LabelControl lbUpdateStatus; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem12; + private DevExpress.XtraEditors.SimpleButton btnRestart; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem4; + private DevExpress.XtraEditors.TextEdit teModuleNo; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem6; + private System.Windows.Forms.Timer tmrFirmwareUpdate; + private DevExpress.XtraLayout.LayoutControlGroup layoutControlGroup2; + private DevExpress.XtraLayout.LayoutControlGroup layoutControlGroup3; + private DevExpress.XtraLayout.LayoutControlGroup layoutControlGroup4; + private DevExpress.XtraLayout.LayoutControlGroup layoutControlGroup5; + } +} \ No newline at end of file diff --git a/LFP_Manager_PRM/Forms/fmxFwUpdate.cs b/LFP_Manager_PRM/Forms/fmxFwUpdate.cs new file mode 100644 index 0000000..ca123aa --- /dev/null +++ b/LFP_Manager_PRM/Forms/fmxFwUpdate.cs @@ -0,0 +1,576 @@ +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Data; +using System.Drawing; +using System.Text; +using System.Linq; +using System.Windows.Forms; +using DevExpress.XtraEditors; +using System.IO; +using System.Runtime.InteropServices; + +using System.Threading; + +using LFP_Manager.DataStructure; +using LFP_Manager.Function; +using LFP_Manager.Utils; +using static System.Data.Entity.Infrastructure.Design.Executor; + +namespace LFP_Manager +{ + public delegate void AutoTxCanSetEnvent(bool autoTx); + public delegate void SendDataCanEvent(uint header, byte[] data); + + public partial class fmxFwUpdate : DevExpress.XtraEditors.XtraForm + { + #region DEFINES + + const int FW_UPDATE_START_ADDR = 0x8012000; + const int FW_UPDATE_END_ADDR = 0x801FFFF; + const int FW_UPDATE_SECTOR_SIZE = 0x20000; + const int FW_UPDATE_PACKET_SIZE = 0x800; + + #endregion + + #region VARIABLES + + private uint SystemId = 0; + + private byte[] fwdata; + private byte[] fwver; + + private bool StopUpdate = true; + + private uint SectorEraseAddr = 0; + private uint SetAddr = 0; + private uint SetLength = 0; + + private int WR_PACKET_DELAY = 1; + + private DateTime UpdateStartTime; + private TimeSpan UpdateTime; + + private CommConfig Config; + + public event AutoTxCanSetEnvent OnAutoTxCanSet = null; + public event SendDataCanEvent OnSendDataCan = null; + #endregion + + #region CONSTRUCTORS + + public fmxFwUpdate(uint MdID, CommConfig aConfig) + { + InitializeComponent(); + + SystemId = MdID; + teModuleNo.Text = string.Format("{0}", SystemId); + + fwdata = null; + fwver = null; + btnFwUpdate.Enabled = false; + + Config = aConfig; + + if (csCanConstData.CanDeviceInfo.DeviceIds[Config.CanDevice] == csCanConstData.CanDeviceInfo.VCI_VALUE_CAN4_1) + WR_PACKET_DELAY = 10; + else + WR_PACKET_DELAY = 1; + } + + #endregion + + #region KEY EVENT FUNCTION + private void TextBox_KeyPress(object sender, KeyPressEventArgs e) + { + csUtils.TypingOnlyNumber(sender, e, true, true); + } + #endregion + + #region BUTTON EVENTS + + private void btnClose_Click(object sender, EventArgs e) + { + Close(); + } + + private void btnFwUpdate_Click(object sender, EventArgs e) + { + if (teModuleNo.Text == "") + { + MessageBox.Show("Please check module no", "Warning", MessageBoxButtons.OK, MessageBoxIcon.Warning); + return; + } + + uint sId = Convert.ToUInt32(teModuleNo.Text); + if ((sId == 0) || (sId > 18)) + { + MessageBox.Show("Please check module no", "Warning", MessageBoxButtons.OK, MessageBoxIcon.Warning); + return; + } + SystemId = sId; + + if (StopUpdate) + { + teModuleNo.Enabled = false; + if (OnSendDataCan != null) + { + if (OnAutoTxCanSet != null) + { + OnAutoTxCanSet(false); + } + + if ((fwdata != null) && (fwdata.Length > 0)) + { + UpdateStartTime = DateTime.Now; + PACKET_DN packet = csCanFwUpdateFunction.FwUpdateStartPacket(SystemId, fwver, (UInt32)fwdata.Length); + OnSendDataCan(packet.hdr, packet.data); + } + StopUpdate = false; + btnFwUpdate.Text = "Cancel Update"; + } + } + else + { + teModuleNo.Enabled = true; + + StopUpdate = true; + SectorEraseAddr = 0; + SetAddr = 0; + SetLength = 0; + FirmwareUpdateTimeoutClear(); + + pgUpdate.Position = 0; + lbUpdateStatus.Text = "Update Status : Cancel By User"; + btnFwUpdate.Text = "Firmware Update"; + + if (OnAutoTxCanSet != null) + { + OnAutoTxCanSet(true); + } + } + } + + private void btnFind_Click(object sender, EventArgs e) + { + OpenFileDialog oDialog; + + oDialog = new OpenFileDialog(); + oDialog.DefaultExt = "*.*"; + oDialog.Filter = "bin files (*.bin)|*.bin|All files (*.*)|*.*"; + + if (oDialog.ShowDialog() == DialogResult.OK) + { + edFilename.Text = oDialog.FileName; + + FileStream fwFile = new FileStream(edFilename.Text, FileMode.Open, FileAccess.Read); + long fsize = fwFile.Length; + + if (fsize > 0) + { + fwdata = new byte[fsize]; + fwFile.Seek(0, SeekOrigin.Begin); + fwFile.Read(fwdata, 0, (int)fsize); + } + fwFile.Close(); + + byte[] bName = csUtils.StringToByte(Path.GetFileName(edFilename.Text)); + + if (bName.Length > 8) + { + fwver = new byte[4]; + + for (int i = 0; i < 4; i++) + fwver[i] = (byte)(bName[bName.Length - 1 - 3 - 4 + i] - 0x30); + + UInt32 nPC = (UInt32)((fwdata[0] << 0) | (fwdata[1] << 8) | (fwdata[2] << 16) | (fwdata[3] << 24)); + UInt32 nSP = (UInt32)((fwdata[4] << 0) | (fwdata[5] << 8) | (fwdata[6] << 16) | (fwdata[7] << 24)); + + if ((nPC >= 0x20000000) && (nPC <= 0x20100000) + && (nSP >= 0x08000000) && (nSP <= 0x08100000)) + { + btnFwUpdate.Enabled = true; + } + else + { + nPC = (UInt32)((fwdata[0 + 64] << 0) | (fwdata[1 + 64] << 8) | (fwdata[2 + 64] << 16) | (fwdata[3 + 64] << 24)); + nSP = (UInt32)((fwdata[4 + 64] << 0) | (fwdata[5 + 64] << 8) | (fwdata[6 + 64] << 16) | (fwdata[7 + 64] << 24)); + + if ((nPC >= 0x20000000) && (nPC <= 0x20100000) + && (nSP >= 0x08000000) && (nSP <= 0x08100000)) + { + fsize -= 64; + byte[] fwdataB = new byte[fsize]; + + for (int i = 0; i < fsize; i++) + { + fwdataB[i] = fwdata[i + 64]; + } + fwdata = new byte[fsize]; + for (int i = 0; i < fsize; i++) + { + fwdata[i] = fwdataB[i]; + } + btnFwUpdate.Enabled = true; + } + else + { + btnFwUpdate.Enabled = false; + } + } + lbFileInfo.Text = String.Format("File Information"); + lbFileInfo.Text += String.Format("\r\n - Filename: {0}", Path.GetFileName(edFilename.Text)); + lbFileInfo.Text += String.Format("\r\n - File Version: V{0}.{1}.{2}.{3}", fwver[0], fwver[1], fwver[2], fwver[3]); + lbFileInfo.Text += String.Format("\r\n - File Size: {0:#,##0} bytes", fsize); + lbFileInfo.Text += String.Format("\r\n - File Size: {0:#,##0} bytes", fsize); + lbFileInfo.Text += String.Format("\r\n - Packet Size: {0:#,##0} packets", fsize / 2048); + lbFileInfo.Text += String.Format("\r\n - Last packet: {0:#,##0}", fsize % 2048); + + lbFileInfo.Text += String.Format("\r\n - PC: 0x{0:X8}", nPC); + lbFileInfo.Text += String.Format("\r\n - SP: 0x{0:X8}", nSP); + + lbUpdateProgress.Text = String.Format("{0:#,##0}/{1:#,##0} bytes", 0, fsize); + pgUpdate.Properties.Maximum = (int)fsize; + } + } + } + private void btnRestart_Click(object sender, EventArgs e) + { + PACKET_DN packet = csCanFwUpdateFunction.UpdateRestartPacket(SystemId, 1); + OnSendDataCan?.Invoke(packet.hdr, packet.data); + } + + #endregion + + #region FORM EVENT + + private void fmxFwUpdate_Activated(object sender, EventArgs e) + { + if (OnAutoTxCanSet != null) + { + OnAutoTxCanSet(false); + } + } + + private void fmxFwUpdate_FormClosed(object sender, FormClosedEventArgs e) + { + if (OnAutoTxCanSet != null) + { + OnAutoTxCanSet(true); + } + } + + #endregion + + #region PUBLIC FUNCTION + + public void RecvData(UInt32 rhdr, byte[] rdata) + { + PACKET_HEADER_DN dnHdr = csCanFwUpdateFunction.CovertPtoH(rhdr); + + lbUpdateStatus.Text = String.Format("Recv Data: 0x{0:X8} {1:X2} {2:X2} {3:X2} {4:X2} {5:X2} {6:X2} {7:X2} {8:X2}" + , rhdr, rdata[0], rdata[1], rdata[2], rdata[3], rdata[4], rdata[5], rdata[6], rdata[7]); + + if (StopUpdate == false) + { + if (dnHdr.SID == SystemId) + { + FirmwareUpdateTimeoutClear(); + switch (dnHdr.FC) + { + case csCanFwUpdateFunction.DL_START_CODE: + FwUpdateStartProcess(dnHdr, rdata); + break; + case csCanFwUpdateFunction.DL_SECTOR_ERASE_CODE: + SectorEraseProcess(dnHdr, rdata); + break; + case csCanFwUpdateFunction.DL_SET_ADDRESS_CODE: + SeAddrProcess(dnHdr, rdata); + break; + case csCanFwUpdateFunction.DL_WRITE_DATA_CSUM_CODE: + WritedataChkSumProcess(dnHdr, rdata); + break; + case csCanFwUpdateFunction.DL_IMAGE_CSUM_CODE: + FwImageChkSumProcess(dnHdr, rdata); + break; + case csCanFwUpdateFunction.DL_RESTART_CODE: + FirmwareUpdateStop(); + break; + } + } + } + } + + #endregion + + #region FW UPDATE PROCESS FUNCTIONS + private void FwUpdateStartProcess(PACKET_HEADER_DN hdr, byte[] data) + { + byte rResult = data[7]; + + if (rResult == 0) + { + if (OnSendDataCan != null) + { + if ((fwdata != null) && (fwdata.Length > 0)) + { + UpdateStartTime = DateTime.Now; + + SectorEraseAddr = FW_UPDATE_START_ADDR; + PACKET_DN packet = csCanFwUpdateFunction.SectorErasePacket(SystemId, FW_UPDATE_START_ADDR); + + OnSendDataCan?.Invoke(packet.hdr, packet.data); + } + } + } + else + { + MessageBox.Show(String.Format("FwUpdateStartProcess Fail - {0}", rResult)); + } + } + + private void SectorEraseProcess(PACKET_HEADER_DN hdr, byte[] data) + { + UInt32 rAddr = (UInt32)((data[0] << 24) + | (data[1] << 16) + | (data[2] << 8) + | (data[3] << 0)); + byte rResult = data[7]; + UInt32 eSize = rAddr - FW_UPDATE_START_ADDR + FW_UPDATE_SECTOR_SIZE; + + if (rResult == 0) + { + if (eSize < fwdata.Length) + { + SectorEraseAddr += FW_UPDATE_SECTOR_SIZE; + PACKET_DN packet = csCanFwUpdateFunction.SectorErasePacket(SystemId, SectorEraseAddr); + + OnSendDataCan?.Invoke(packet.hdr, packet.data); + } + else + { + SetAddr = FW_UPDATE_START_ADDR; + SetLength = 2048 / 8; + PACKET_DN packet = csCanFwUpdateFunction.SetAddrPacket(SystemId, SetAddr, SetLength); + + OnSendDataCan?.Invoke(packet.hdr, packet.data); + } + } + else + { + MessageBox.Show(String.Format("SectorEraseProcess Fail - {0}", rResult)); + } + } + + private void SeAddrProcess(PACKET_HEADER_DN hdr, byte[] data) + { + byte rResult = data[7]; + + if (rResult == 0) + { + UInt32 csum32 = 0; + UInt32 CurrentAddr = SetAddr - FW_UPDATE_START_ADDR; + UInt32 CurrentLen = SetLength; + byte[][] pData; + PACKET_DN packet; + + pData = new byte[CurrentLen][]; + + for (int i = 0; i < CurrentLen; i++) + { + pData[i] = new byte[8]; + for (int j = 0; j < 8; j++) + { + if ((CurrentAddr + (i * 8) + j) < fwdata.Length) + pData[i][j] = fwdata[CurrentAddr + (i * 8) + j]; + else + pData[i][j] = 0x00; + csum32 += (UInt32)pData[i][j]; + } + packet = csCanFwUpdateFunction.WritePacket(SystemId, (byte)i, pData[i]); + OnSendDataCan?.Invoke(packet.hdr, packet.data); + + pgUpdate.Position += 8; + UpdateTime = DateTime.Now - UpdateStartTime; + lbUpdateTime.Text = String.Format("{0:mm}:{1:ss}", UpdateTime, UpdateTime); + lbUpdateProgress.Text = String.Format("{0:#,##0}/{1:#,##0} bytes", pgUpdate.Position, fwdata.Length); + Thread.Sleep(WR_PACKET_DELAY); + + Application.DoEvents(); + if (StopUpdate) { return; } + } + packet = csCanFwUpdateFunction.WriteChkSumPacket(SystemId, SetAddr, csum32); + + OnSendDataCan?.Invoke(packet.hdr, packet.data); + } + else + { + MessageBox.Show(String.Format("SeAddrProcess Fail - {0}", rResult)); + } + } + + //private void WritedataChkSumProcess(PACKET_HEADER_DN hdr, byte[] data) + //{ + // byte rResult = data[7]; + + // if (rResult == 0) + // { + // UInt32 csum32 = 0; + // CurrentAddr += 1; + // byte[][] pData; + // PACKET_DN packet; + // int plen = 256; + + // int blen = (int)(fwdata.Length - (CurrentAddr * 2048)); + + // if (blen < 2048) + // plen = ((blen % 8) > 0) ? (blen / 8) + 1 : blen / 8; + + // pData = new byte[plen][]; + + // for (int i = 0; i < plen; i++) + // { + // pData[i] = new byte[8]; + // for (int j = 0; j < 8; j++) + // { + // pData[i][j] = fwdata[(CurrentAddr * 2048) + (i * 8) + j]; + // csum32 += (UInt32)pData[i][j]; + // } + // packet = csCanFwUpdateFunction.WritePacket(1, (byte)i, pData[i]); + // OnSendDataCan?.Invoke(packet.hdr, packet.data); + + // Thread.Sleep(1); + // } + // packet = csCanFwUpdateFunction.WriteChkSumPacket(1, csum32); + + // OnSendDataCan?.Invoke(packet.hdr, packet.data); + // } + //} + + private void WritedataChkSumProcess(PACKET_HEADER_DN hdr, byte[] data) + { + byte rResult = data[7]; + + if (rResult == 0) + { + UInt32 rAddr; + UInt32 rlen, tlen; + + rAddr = (UInt32)((data[0] << 24) + | (data[1] << 16) + | (data[2] << 8) + | (data[3] << 0) + ); + rlen = rAddr - SetAddr; + tlen = rAddr - FW_UPDATE_START_ADDR; + + UpdateTime = DateTime.Now - UpdateStartTime; + lbUpdateTime.Text = String.Format("{0:mm}:{0:ss}", UpdateTime); + lbUpdateProgress.Text = String.Format("{0:#,##0}/{1:#,##0} bytes", tlen, fwdata.Length); + pgUpdate.Position = (int)tlen; + + if (tlen < fwdata.Length) + { + // remain write data + if (rlen == FW_UPDATE_PACKET_SIZE) + { + SetAddr = rAddr; + UInt32 alen = (UInt32)(fwdata.Length - tlen); + if (alen > FW_UPDATE_PACKET_SIZE) + { + SetLength = FW_UPDATE_PACKET_SIZE / 8; + } + else + { + if ((alen % 8) > 0) + SetLength = alen / 8 + 1; + else + SetLength = alen / 8; + } + PACKET_DN packet = csCanFwUpdateFunction.SetAddrPacket(SystemId, SetAddr, SetLength); + + OnSendDataCan?.Invoke(packet.hdr, packet.data); + } + } + else + { + // finished write data + //string text = String.Format("Finished Write data - {0};{1}", tlen, fwdata.Length); + //MessageBox.Show(text); + UInt32 fwChkSum = 0; + + for (int i = 0; i < fwdata.Length; i++) + { + fwChkSum += (UInt32)(fwdata[i]); + } + PACKET_DN packet = csCanFwUpdateFunction.FwImageChkSumPacket(SystemId, (UInt32)fwdata.Length, fwChkSum); + + OnSendDataCan?.Invoke(packet.hdr, packet.data); + } + } + else + { + MessageBox.Show(String.Format("WritedataChkSumProcess Fail - {0}", rResult)); + } + } + + private void FwImageChkSumProcess(PACKET_HEADER_DN hdr, byte[] data) + { + byte rResult = data[7]; + + if (rResult == 0) + { + PACKET_DN packet = csCanFwUpdateFunction.UpdateRestartPacket(SystemId, 3); + + OnSendDataCan?.Invoke(packet.hdr, packet.data); + + MessageBox.Show("Firmware Update Complete !!", "FwUpdate", MessageBoxButtons.OK, MessageBoxIcon.Information); + lbUpdateStatus.Text = "Update Status : Complete"; + } + else + { + MessageBox.Show(String.Format("FwImageChkSumProcess Fail - {0}", rResult)); + lbUpdateStatus.Text = "Update Status : Update failure (Image Checksum fail)"; + } + btnFwUpdate.Text = "Firmware Update"; + } + #endregion + + #region UPDATE FUNCTIONS + private const int FirmwareUpdateTimeoutMax = 30; // 3 Sec + private int FirmwareUpdateTimeout = 0; // 10 ms + + private void FirmwareUpdateStop() + { + StopUpdate = true; + FirmwareUpdateTimeoutClear(); + teModuleNo.Enabled = true; + + lbUpdateStatus.Text = "Update Status : Restart"; + if (OnAutoTxCanSet != null) + { + OnAutoTxCanSet(true); + } + } + + private void FirmwareUpdateTimeoutClear() + { + FirmwareUpdateTimeout = 0; + } + #endregion + + #region TIMER EVENT + private void tmrFirmwareUpdate_Tick(object sender, EventArgs e) + { + if (StopUpdate == false) + { + FirmwareUpdateTimeout++; + if (FirmwareUpdateTimeout > FirmwareUpdateTimeoutMax) + { + FirmwareUpdateStop(); + } + } + } + #endregion + } +} \ No newline at end of file diff --git a/LFP_Manager_PRM/Forms/fmxFwUpdate.resx b/LFP_Manager_PRM/Forms/fmxFwUpdate.resx new file mode 100644 index 0000000..235406b --- /dev/null +++ b/LFP_Manager_PRM/Forms/fmxFwUpdate.resx @@ -0,0 +1,151 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + 17, 17 + + + + + iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO + wgAADsIBFShKgAAABMxJREFUWEflVWtsFVUQPrdtSvilMRIVY8T4h1/aoDGKqIWCIBXR+IgaAmriD/CR + SIyVYjSSPmhLrVVTBa6tQNGIBSqYCEEera34KCqFEmgLNa34qPRaeqHv23G+2Z3tXrp3u/iHGCeZnN09 + M2e++WbOrKFLLP8dACMjI87qp2oTVAIBcB8Y8zncvRcUxEUxoIdGon3UdbbX0TPdvdR9vl/23HZBZFwA + euDQcEzedze00aSF79Ckx9+nKx8rc3Tyo2V0+GSn2AyzbVAgvgD0gFgsRsOsfQNDNPXZCjLpq8nc9xaZ + ucWW4vmuPJqZ9Rm8xDZIcEggBjT7VR8fJHNnLiUveNsKOr/EUn5Ovp+/MYhNe5vEFj5BWEgIQJ1BJ5qr + 5dcITcwsoZBmzIFDeBcA9jq7iK554gOK9PQJC8KEfVYiGbcEmv0Db1aTuTufkjKt7CXgvWu4BKw2C0lg + YUYevbTugPgM2iz4iScAzX5waFjePz/YSmZWgUWzBuJSLF+7nx7J3SlB5Rv2GMwEXrUhxyvFGABqiMaD + 87neAbrxqTCF5hRx9hbVoTlr6CrufDRly+kIpc4rpiQO6oCbWUDpWVvsJPxZGAsAyg5KffZHdXGNJ+s9 + +bRhz1HZh7xa8bU0oGMDEPxeufeY7PuxEAdAjfQeH2/vsrJj9coOB6PRengITVmyXpjRxgzZDfk3Dy3Y + gFGN4RbPEgAAZP7r26zGc+rL2fEt+Kn1TweA9smWmuNim8pDCgxgxfsKZgeiLFwoDgBs6qGQ7fUtdtcn + 6HAOjMxgj17AikFk0t7gkuWRmZ5L5o4cMrfnUE1jB9uOMusGIgD0g0w8NoqeH6Api9eTySi06LQpvW7R + Ojp7rl8Cs5P4uAX/hWwGmF1RJ5mv3FBHr5Tto+pvWmXfi4U4BpTOrPLa+KuFldn4lGmGACSGTUPzH7Tn + 0C9UsfsIlWxtoPCXjfTF96dox7etcnWhO787SZ981UT1TactXwbvZsHoi9JztO0vuceotwTH4OGun51d + JVmrHcB2MxsdnT104HA7vcYZX79orVUCph2ApRQzuBTTc+jyh96l385ExzQkA7AecDAkY0UVB1w9mj0r + bsKRtk4ZyQrAS/C9fFcjXc1/RsNzI3VhKaXwORMetBpycfEusXOXgksw2nib9x3j+5vvTDy511wK3HMI + slZHrKrICnua2YmOCE19+kOrh7SJsc4qpP0/t4uNgjB4wAGo6bVPMoUZRaONx1ncsCRMUZ6GsIFCFARE + QejzwOCQPDfzz+syvopJ87SUDCC9gG5etpFt+AZxXAA2vf2Ww3LuXtTMoR4OXPtt9c2yr9m7g7tF9uy1 + 3wZRWv3j2Gbm95Lth2Qf11duQeOpTmm8FM4agVMWlErN5q7cKoZe18dL1AaZwQd609KNMj1RTpydzP10 + xcPv0e9dUbbjEuBeT3u+0upcrhmMETyFJ96Jjq64xgsKAmqBJqrlISQ3gumXs3memNtWUSZPWYjJCtdS + 2nObaNoLlQLk1hc3Uxo3UGHVD2Lg1/V+Ah/tmZfDNZT2TLmcjRi3sCLmDvzmUYdEguw1+MWAcPv4+aH/ + nFGMYKryzvVR8TskkaiPnuUVA+JMQi+F6Ppv5MLzvNT5F1wq+b8DIPoHjJf5qaq9hPwAAAAASUVORK5C + YII= + + + \ No newline at end of file diff --git a/LFP_Manager_PRM/Forms/fmxHistory.Designer.cs b/LFP_Manager_PRM/Forms/fmxHistory.Designer.cs new file mode 100644 index 0000000..f1f5a4b --- /dev/null +++ b/LFP_Manager_PRM/Forms/fmxHistory.Designer.cs @@ -0,0 +1,139 @@ +namespace LFP_Manager.Forms +{ + partial class fmxHistory + { + /// + /// Required designer variable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Clean up any resources being used. + /// + /// true if managed resources should be disposed; otherwise, false. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Windows Form Designer generated code + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(fmxHistory)); + this.layoutControl1 = new DevExpress.XtraLayout.LayoutControl(); + this.btnClose = new DevExpress.XtraEditors.SimpleButton(); + this.layoutControlGroup1 = new DevExpress.XtraLayout.LayoutControlGroup(); + this.layoutControlItem2 = new DevExpress.XtraLayout.LayoutControlItem(); + this.ucHistroy1 = new LFP_Manager.Controls.ucHistroy(); + this.layoutControlItem1 = new DevExpress.XtraLayout.LayoutControlItem(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControl1)).BeginInit(); + this.layoutControl1.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup1)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem2)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem1)).BeginInit(); + this.SuspendLayout(); + // + // layoutControl1 + // + this.layoutControl1.Controls.Add(this.btnClose); + this.layoutControl1.Controls.Add(this.ucHistroy1); + this.layoutControl1.Dock = System.Windows.Forms.DockStyle.Fill; + this.layoutControl1.Location = new System.Drawing.Point(0, 0); + this.layoutControl1.Name = "layoutControl1"; + this.layoutControl1.OptionsCustomizationForm.DesignTimeCustomizationFormPositionAndSize = new System.Drawing.Rectangle(1215, 341, 650, 400); + this.layoutControl1.Root = this.layoutControlGroup1; + this.layoutControl1.Size = new System.Drawing.Size(911, 602); + this.layoutControl1.TabIndex = 0; + this.layoutControl1.Text = "layoutControl1"; + // + // btnClose + // + this.btnClose.Location = new System.Drawing.Point(3, 562); + this.btnClose.Name = "btnClose"; + this.btnClose.Size = new System.Drawing.Size(905, 37); + this.btnClose.StyleController = this.layoutControl1; + this.btnClose.TabIndex = 5; + this.btnClose.Text = "Close"; + this.btnClose.Click += new System.EventHandler(this.btnClose_Click); + // + // layoutControlGroup1 + // + this.layoutControlGroup1.CustomizationFormText = "layoutControlGroup1"; + this.layoutControlGroup1.EnableIndentsWithoutBorders = DevExpress.Utils.DefaultBoolean.True; + this.layoutControlGroup1.GroupBordersVisible = false; + this.layoutControlGroup1.Items.AddRange(new DevExpress.XtraLayout.BaseLayoutItem[] { + this.layoutControlItem1, + this.layoutControlItem2}); + this.layoutControlGroup1.Name = "Root"; + this.layoutControlGroup1.Padding = new DevExpress.XtraLayout.Utils.Padding(1, 1, 1, 1); + this.layoutControlGroup1.Size = new System.Drawing.Size(911, 602); + this.layoutControlGroup1.TextVisible = false; + // + // layoutControlItem2 + // + this.layoutControlItem2.Control = this.btnClose; + this.layoutControlItem2.Location = new System.Drawing.Point(0, 559); + this.layoutControlItem2.MinSize = new System.Drawing.Size(89, 26); + this.layoutControlItem2.Name = "layoutControlItem2"; + this.layoutControlItem2.Size = new System.Drawing.Size(909, 41); + this.layoutControlItem2.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem2.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem2.TextVisible = false; + // + // ucHistroy1 + // + this.ucHistroy1.Location = new System.Drawing.Point(3, 3); + this.ucHistroy1.Name = "ucHistroy1"; + this.ucHistroy1.Size = new System.Drawing.Size(905, 555); + this.ucHistroy1.TabIndex = 4; + // + // layoutControlItem1 + // + this.layoutControlItem1.Control = this.ucHistroy1; + this.layoutControlItem1.CustomizationFormText = "layoutControlItem1"; + this.layoutControlItem1.Location = new System.Drawing.Point(0, 0); + this.layoutControlItem1.MinSize = new System.Drawing.Size(276, 117); + this.layoutControlItem1.Name = "layoutControlItem1"; + this.layoutControlItem1.Size = new System.Drawing.Size(909, 559); + this.layoutControlItem1.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem1.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem1.TextVisible = false; + // + // fmxHistory + // + this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 14F); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.ClientSize = new System.Drawing.Size(911, 602); + this.Controls.Add(this.layoutControl1); + this.IconOptions.Image = ((System.Drawing.Image)(resources.GetObject("fmxHistory.IconOptions.Image"))); + this.Name = "fmxHistory"; + this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen; + this.Text = "History"; + ((System.ComponentModel.ISupportInitialize)(this.layoutControl1)).EndInit(); + this.layoutControl1.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup1)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem2)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem1)).EndInit(); + this.ResumeLayout(false); + + } + + #endregion + + private DevExpress.XtraLayout.LayoutControl layoutControl1; + private DevExpress.XtraLayout.LayoutControlGroup layoutControlGroup1; + private Controls.ucHistroy ucHistroy1; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem1; + private DevExpress.XtraEditors.SimpleButton btnClose; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem2; + } +} \ No newline at end of file diff --git a/LFP_Manager_PRM/Forms/fmxHistory.cs b/LFP_Manager_PRM/Forms/fmxHistory.cs new file mode 100644 index 0000000..2ece7f0 --- /dev/null +++ b/LFP_Manager_PRM/Forms/fmxHistory.cs @@ -0,0 +1,42 @@ +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Data; +using System.Drawing; +using System.Text; +using System.Linq; +using System.Windows.Forms; +using DevExpress.XtraEditors; + +using LFP_Manager.DataStructure; + +namespace LFP_Manager.Forms +{ + public partial class fmxHistory : DevExpress.XtraEditors.XtraForm + { + #region VARIABLES + + #endregion + + //public fmxHistory() + //{ + // InitializeComponent(); + //} + + public fmxHistory(CommConfig aConfig) + { + InitializeComponent(); + + ucHistroy1.SetCommCofig(aConfig); + } + + #region BUTTON EVENT + + private void btnClose_Click(object sender, EventArgs e) + { + Close(); + } + + #endregion + } +} \ No newline at end of file diff --git a/LFP_Manager_PRM/Forms/fmxHistory.resx b/LFP_Manager_PRM/Forms/fmxHistory.resx new file mode 100644 index 0000000..b2bc2ec --- /dev/null +++ b/LFP_Manager_PRM/Forms/fmxHistory.resx @@ -0,0 +1,148 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + + + iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO + wwAADsMBx2+oZAAABMxJREFUWEflVWtsFVUQPrdtSvilMRIVY8T4h1/aoDGKqIWCIBXR+IgaAmriD/CR + SIyVYjSSPmhLrVVTBa6tQNGIBSqYCEEera34KCqFEmgLNa34qPRaeqHv23G+2Z3tXrp3u/iHGCeZnN09 + M2e++WbOrKFLLP8dACMjI87qp2oTVAIBcB8Y8zncvRcUxEUxoIdGon3UdbbX0TPdvdR9vl/23HZBZFwA + euDQcEzedze00aSF79Ckx9+nKx8rc3Tyo2V0+GSn2AyzbVAgvgD0gFgsRsOsfQNDNPXZCjLpq8nc9xaZ + ucWW4vmuPJqZ9Rm8xDZIcEggBjT7VR8fJHNnLiUveNsKOr/EUn5Ovp+/MYhNe5vEFj5BWEgIQJ1BJ5qr + 5dcITcwsoZBmzIFDeBcA9jq7iK554gOK9PQJC8KEfVYiGbcEmv0Db1aTuTufkjKt7CXgvWu4BKw2C0lg + YUYevbTugPgM2iz4iScAzX5waFjePz/YSmZWgUWzBuJSLF+7nx7J3SlB5Rv2GMwEXrUhxyvFGABqiMaD + 87neAbrxqTCF5hRx9hbVoTlr6CrufDRly+kIpc4rpiQO6oCbWUDpWVvsJPxZGAsAyg5KffZHdXGNJ+s9 + +bRhz1HZh7xa8bU0oGMDEPxeufeY7PuxEAdAjfQeH2/vsrJj9coOB6PRengITVmyXpjRxgzZDfk3Dy3Y + gFGN4RbPEgAAZP7r26zGc+rL2fEt+Kn1TweA9smWmuNim8pDCgxgxfsKZgeiLFwoDgBs6qGQ7fUtdtcn + 6HAOjMxgj17AikFk0t7gkuWRmZ5L5o4cMrfnUE1jB9uOMusGIgD0g0w8NoqeH6Api9eTySi06LQpvW7R + Ojp7rl8Cs5P4uAX/hWwGmF1RJ5mv3FBHr5Tto+pvWmXfi4U4BpTOrPLa+KuFldn4lGmGACSGTUPzH7Tn + 0C9UsfsIlWxtoPCXjfTF96dox7etcnWhO787SZ981UT1TactXwbvZsHoi9JztO0vuceotwTH4OGun51d + JVmrHcB2MxsdnT104HA7vcYZX79orVUCph2ApRQzuBTTc+jyh96l385ExzQkA7AecDAkY0UVB1w9mj0r + bsKRtk4ZyQrAS/C9fFcjXc1/RsNzI3VhKaXwORMetBpycfEusXOXgksw2nib9x3j+5vvTDy511wK3HMI + slZHrKrICnua2YmOCE19+kOrh7SJsc4qpP0/t4uNgjB4wAGo6bVPMoUZRaONx1ncsCRMUZ6GsIFCFARE + QejzwOCQPDfzz+syvopJ87SUDCC9gG5etpFt+AZxXAA2vf2Ww3LuXtTMoR4OXPtt9c2yr9m7g7tF9uy1 + 3wZRWv3j2Gbm95Lth2Qf11duQeOpTmm8FM4agVMWlErN5q7cKoZe18dL1AaZwQd609KNMj1RTpydzP10 + xcPv0e9dUbbjEuBeT3u+0upcrhmMETyFJ96Jjq64xgsKAmqBJqrlISQ3gumXs3memNtWUSZPWYjJCtdS + 2nObaNoLlQLk1hc3Uxo3UGHVD2Lg1/V+Ah/tmZfDNZT2TLmcjRi3sCLmDvzmUYdEguw1+MWAcPv4+aH/ + nFGMYKryzvVR8TskkaiPnuUVA+JMQi+F6Ppv5MLzvNT5F1wq+b8DIPoHjJf5qaq9hPwAAAAASUVORK5C + YII= + + + \ No newline at end of file diff --git a/LFP_Manager_PRM/Forms/fmxHistorycs.Designer.cs b/LFP_Manager_PRM/Forms/fmxHistorycs.Designer.cs new file mode 100644 index 0000000..d46309e --- /dev/null +++ b/LFP_Manager_PRM/Forms/fmxHistorycs.Designer.cs @@ -0,0 +1,103 @@ +namespace LFP_Manager.Forms +{ + partial class fmxHistorycs + { + /// + /// Required designer variable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Clean up any resources being used. + /// + /// true if managed resources should be disposed; otherwise, false. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Windows Form Designer generated code + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + this.layoutControl1 = new DevExpress.XtraLayout.LayoutControl(); + this.layoutControlGroup1 = new DevExpress.XtraLayout.LayoutControlGroup(); + this.ucHistroy1 = new LFP_Manager.Controls.ucHistroy(); + this.layoutControlItem1 = new DevExpress.XtraLayout.LayoutControlItem(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControl1)).BeginInit(); + this.layoutControl1.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup1)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem1)).BeginInit(); + this.SuspendLayout(); + // + // layoutControl1 + // + this.layoutControl1.Controls.Add(this.ucHistroy1); + this.layoutControl1.Dock = System.Windows.Forms.DockStyle.Fill; + this.layoutControl1.Location = new System.Drawing.Point(0, 0); + this.layoutControl1.Name = "layoutControl1"; + this.layoutControl1.Root = this.layoutControlGroup1; + this.layoutControl1.Size = new System.Drawing.Size(911, 602); + this.layoutControl1.TabIndex = 0; + this.layoutControl1.Text = "layoutControl1"; + // + // layoutControlGroup1 + // + this.layoutControlGroup1.CustomizationFormText = "layoutControlGroup1"; + this.layoutControlGroup1.EnableIndentsWithoutBorders = DevExpress.Utils.DefaultBoolean.True; + this.layoutControlGroup1.GroupBordersVisible = false; + this.layoutControlGroup1.Items.AddRange(new DevExpress.XtraLayout.BaseLayoutItem[] { + this.layoutControlItem1}); + this.layoutControlGroup1.Name = "layoutControlGroup1"; + this.layoutControlGroup1.Size = new System.Drawing.Size(911, 602); + this.layoutControlGroup1.TextVisible = false; + // + // ucHistroy1 + // + this.ucHistroy1.Location = new System.Drawing.Point(12, 12); + this.ucHistroy1.Name = "ucHistroy1"; + this.ucHistroy1.Size = new System.Drawing.Size(887, 578); + this.ucHistroy1.TabIndex = 4; + // + // layoutControlItem1 + // + this.layoutControlItem1.Control = this.ucHistroy1; + this.layoutControlItem1.CustomizationFormText = "layoutControlItem1"; + this.layoutControlItem1.Location = new System.Drawing.Point(0, 0); + this.layoutControlItem1.Name = "layoutControlItem1"; + this.layoutControlItem1.Size = new System.Drawing.Size(891, 582); + this.layoutControlItem1.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem1.TextVisible = false; + // + // fmxHistorycs + // + this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 14F); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.ClientSize = new System.Drawing.Size(911, 602); + this.Controls.Add(this.layoutControl1); + this.Name = "fmxHistorycs"; + this.Text = "fmxHistorycs"; + ((System.ComponentModel.ISupportInitialize)(this.layoutControl1)).EndInit(); + this.layoutControl1.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup1)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem1)).EndInit(); + this.ResumeLayout(false); + + } + + #endregion + + private DevExpress.XtraLayout.LayoutControl layoutControl1; + private DevExpress.XtraLayout.LayoutControlGroup layoutControlGroup1; + private Controls.ucHistroy ucHistroy1; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem1; + } +} \ No newline at end of file diff --git a/LFP_Manager_PRM/Forms/fmxHistorycs.cs b/LFP_Manager_PRM/Forms/fmxHistorycs.cs new file mode 100644 index 0000000..781868f --- /dev/null +++ b/LFP_Manager_PRM/Forms/fmxHistorycs.cs @@ -0,0 +1,20 @@ +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Data; +using System.Drawing; +using System.Text; +using System.Linq; +using System.Windows.Forms; +using DevExpress.XtraEditors; + +namespace LFP_Manager.Forms +{ + public partial class fmxHistorycs : DevExpress.XtraEditors.XtraForm + { + public fmxHistorycs() + { + InitializeComponent(); + } + } +} \ No newline at end of file diff --git a/LFP_Manager_PRM/Forms/fmxHistorycs.resx b/LFP_Manager_PRM/Forms/fmxHistorycs.resx new file mode 100644 index 0000000..1af7de1 --- /dev/null +++ b/LFP_Manager_PRM/Forms/fmxHistorycs.resx @@ -0,0 +1,120 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + \ No newline at end of file diff --git a/LFP_Manager_PRM/Forms/fmxInventoryConfig.Designer.cs b/LFP_Manager_PRM/Forms/fmxInventoryConfig.Designer.cs new file mode 100644 index 0000000..d2f7340 --- /dev/null +++ b/LFP_Manager_PRM/Forms/fmxInventoryConfig.Designer.cs @@ -0,0 +1,388 @@ +namespace LFP_Manager.Forms +{ + partial class fmxInventoryConfig + { + /// + /// Required designer variable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Clean up any resources being used. + /// + /// true if managed resources should be disposed; otherwise, false. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Windows Form Designer generated code + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + this.components = new System.ComponentModel.Container(); + System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(fmxInventoryConfig)); + this.layoutControl1 = new DevExpress.XtraLayout.LayoutControl(); + this.btnClose = new DevExpress.XtraEditors.SimpleButton(); + this.btnInvWrite = new DevExpress.XtraEditors.SimpleButton(); + this.gbSerialNo = new DevExpress.XtraEditors.GroupControl(); + this.layoutControl2 = new DevExpress.XtraLayout.LayoutControl(); + this.nSerialNo = new DevExpress.XtraEditors.TextEdit(); + this.lbSerialNo = new DevExpress.XtraEditors.LabelControl(); + this.layoutControlGroup1 = new DevExpress.XtraLayout.LayoutControlGroup(); + this.layoutControlItem3 = new DevExpress.XtraLayout.LayoutControlItem(); + this.layoutControlItem4 = new DevExpress.XtraLayout.LayoutControlItem(); + this.gbMDate = new DevExpress.XtraEditors.GroupControl(); + this.layoutControl3 = new DevExpress.XtraLayout.LayoutControl(); + this.lbMDate = new DevExpress.XtraEditors.LabelControl(); + this.layoutControlGroup2 = new DevExpress.XtraLayout.LayoutControlGroup(); + this.layoutControlItem9 = new DevExpress.XtraLayout.LayoutControlItem(); + this.Root = new DevExpress.XtraLayout.LayoutControlGroup(); + this.layoutControlItem1 = new DevExpress.XtraLayout.LayoutControlItem(); + this.layoutControlItem2 = new DevExpress.XtraLayout.LayoutControlItem(); + this.layoutControlItem5 = new DevExpress.XtraLayout.LayoutControlItem(); + this.layoutControlItem6 = new DevExpress.XtraLayout.LayoutControlItem(); + this.emptySpaceItem1 = new DevExpress.XtraLayout.EmptySpaceItem(); + this.tmrDisplay = new System.Windows.Forms.Timer(this.components); + this.tmrCmd = new System.Windows.Forms.Timer(this.components); + ((System.ComponentModel.ISupportInitialize)(this.layoutControl1)).BeginInit(); + this.layoutControl1.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.gbSerialNo)).BeginInit(); + this.gbSerialNo.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControl2)).BeginInit(); + this.layoutControl2.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.nSerialNo.Properties)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup1)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem3)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem4)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.gbMDate)).BeginInit(); + this.gbMDate.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControl3)).BeginInit(); + this.layoutControl3.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup2)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem9)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.Root)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem1)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem2)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem5)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem6)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.emptySpaceItem1)).BeginInit(); + this.SuspendLayout(); + // + // layoutControl1 + // + this.layoutControl1.Controls.Add(this.btnClose); + this.layoutControl1.Controls.Add(this.btnInvWrite); + this.layoutControl1.Controls.Add(this.gbSerialNo); + this.layoutControl1.Controls.Add(this.gbMDate); + this.layoutControl1.Dock = System.Windows.Forms.DockStyle.Fill; + this.layoutControl1.Location = new System.Drawing.Point(0, 0); + this.layoutControl1.Name = "layoutControl1"; + this.layoutControl1.OptionsCustomizationForm.DesignTimeCustomizationFormPositionAndSize = new System.Drawing.Rectangle(999, 164, 650, 400); + this.layoutControl1.Root = this.Root; + this.layoutControl1.Size = new System.Drawing.Size(720, 425); + this.layoutControl1.TabIndex = 0; + this.layoutControl1.Text = "layoutControl1"; + // + // btnClose + // + this.btnClose.Appearance.Font = new System.Drawing.Font("Tahoma", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0))); + this.btnClose.Appearance.Options.UseFont = true; + this.btnClose.Location = new System.Drawing.Point(362, 373); + this.btnClose.Name = "btnClose"; + this.btnClose.Size = new System.Drawing.Size(354, 48); + this.btnClose.StyleController = this.layoutControl1; + this.btnClose.TabIndex = 7; + this.btnClose.Text = "Close"; + this.btnClose.Click += new System.EventHandler(this.btnClose_Click); + // + // btnInvWrite + // + this.btnInvWrite.Appearance.Font = new System.Drawing.Font("Tahoma", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0))); + this.btnInvWrite.Appearance.Options.UseFont = true; + this.btnInvWrite.Location = new System.Drawing.Point(4, 373); + this.btnInvWrite.Name = "btnInvWrite"; + this.btnInvWrite.Size = new System.Drawing.Size(354, 48); + this.btnInvWrite.StyleController = this.layoutControl1; + this.btnInvWrite.TabIndex = 6; + this.btnInvWrite.Text = "Apply"; + this.btnInvWrite.Click += new System.EventHandler(this.btnInvWrite_Click); + // + // gbSerialNo + // + this.gbSerialNo.Controls.Add(this.layoutControl2); + this.gbSerialNo.Location = new System.Drawing.Point(4, 139); + this.gbSerialNo.Name = "gbSerialNo"; + this.gbSerialNo.Size = new System.Drawing.Size(712, 200); + this.gbSerialNo.TabIndex = 5; + this.gbSerialNo.Text = "Serial Number"; + // + // layoutControl2 + // + this.layoutControl2.Controls.Add(this.nSerialNo); + this.layoutControl2.Controls.Add(this.lbSerialNo); + this.layoutControl2.Dock = System.Windows.Forms.DockStyle.Fill; + this.layoutControl2.Location = new System.Drawing.Point(2, 23); + this.layoutControl2.Name = "layoutControl2"; + this.layoutControl2.OptionsCustomizationForm.DesignTimeCustomizationFormPositionAndSize = new System.Drawing.Rectangle(993, 64, 650, 400); + this.layoutControl2.Root = this.layoutControlGroup1; + this.layoutControl2.Size = new System.Drawing.Size(708, 175); + this.layoutControl2.TabIndex = 0; + this.layoutControl2.Text = "layoutControl2"; + // + // nSerialNo + // + this.nSerialNo.Location = new System.Drawing.Point(7, 105); + this.nSerialNo.Name = "nSerialNo"; + this.nSerialNo.Properties.Appearance.Font = new System.Drawing.Font("Tahoma", 36F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); + this.nSerialNo.Properties.Appearance.Options.UseFont = true; + this.nSerialNo.Properties.Appearance.Options.UseTextOptions = true; + this.nSerialNo.Properties.Appearance.TextOptions.HAlignment = DevExpress.Utils.HorzAlignment.Center; + this.nSerialNo.Size = new System.Drawing.Size(694, 64); + this.nSerialNo.StyleController = this.layoutControl2; + this.nSerialNo.TabIndex = 5; + // + // lbSerialNo + // + this.lbSerialNo.Appearance.Font = new System.Drawing.Font("Tahoma", 15.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); + this.lbSerialNo.Appearance.Options.UseFont = true; + this.lbSerialNo.Location = new System.Drawing.Point(7, 7); + this.lbSerialNo.Name = "lbSerialNo"; + this.lbSerialNo.Size = new System.Drawing.Size(694, 94); + this.lbSerialNo.StyleController = this.layoutControl2; + this.lbSerialNo.TabIndex = 4; + this.lbSerialNo.Text = "Serial No:"; + // + // layoutControlGroup1 + // + this.layoutControlGroup1.EnableIndentsWithoutBorders = DevExpress.Utils.DefaultBoolean.True; + this.layoutControlGroup1.GroupBordersVisible = false; + this.layoutControlGroup1.Items.AddRange(new DevExpress.XtraLayout.BaseLayoutItem[] { + this.layoutControlItem3, + this.layoutControlItem4}); + this.layoutControlGroup1.Name = "Root"; + this.layoutControlGroup1.Padding = new DevExpress.XtraLayout.Utils.Padding(5, 5, 5, 5); + this.layoutControlGroup1.Size = new System.Drawing.Size(708, 175); + this.layoutControlGroup1.TextVisible = false; + // + // layoutControlItem3 + // + this.layoutControlItem3.Control = this.lbSerialNo; + this.layoutControlItem3.Location = new System.Drawing.Point(0, 0); + this.layoutControlItem3.MinSize = new System.Drawing.Size(74, 18); + this.layoutControlItem3.Name = "layoutControlItem3"; + this.layoutControlItem3.Size = new System.Drawing.Size(698, 98); + this.layoutControlItem3.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem3.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem3.TextVisible = false; + // + // layoutControlItem4 + // + this.layoutControlItem4.Control = this.nSerialNo; + this.layoutControlItem4.Location = new System.Drawing.Point(0, 98); + this.layoutControlItem4.MaxSize = new System.Drawing.Size(0, 67); + this.layoutControlItem4.MinSize = new System.Drawing.Size(171, 67); + this.layoutControlItem4.Name = "layoutControlItem4"; + this.layoutControlItem4.Size = new System.Drawing.Size(698, 67); + this.layoutControlItem4.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem4.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem4.TextVisible = false; + // + // gbMDate + // + this.gbMDate.Controls.Add(this.layoutControl3); + this.gbMDate.Location = new System.Drawing.Point(4, 4); + this.gbMDate.Name = "gbMDate"; + this.gbMDate.Size = new System.Drawing.Size(712, 131); + this.gbMDate.TabIndex = 4; + this.gbMDate.Text = "Manufacture Date"; + // + // layoutControl3 + // + this.layoutControl3.Controls.Add(this.lbMDate); + this.layoutControl3.Dock = System.Windows.Forms.DockStyle.Fill; + this.layoutControl3.Location = new System.Drawing.Point(2, 23); + this.layoutControl3.Name = "layoutControl3"; + this.layoutControl3.OptionsCustomizationForm.DesignTimeCustomizationFormPositionAndSize = new System.Drawing.Rectangle(993, 0, 650, 400); + this.layoutControl3.Root = this.layoutControlGroup2; + this.layoutControl3.Size = new System.Drawing.Size(708, 106); + this.layoutControl3.TabIndex = 0; + this.layoutControl3.Text = "layoutControl3"; + // + // lbMDate + // + this.lbMDate.Appearance.Font = new System.Drawing.Font("Tahoma", 15.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); + this.lbMDate.Appearance.Options.UseFont = true; + this.lbMDate.Location = new System.Drawing.Point(7, 7); + this.lbMDate.Name = "lbMDate"; + this.lbMDate.Size = new System.Drawing.Size(694, 92); + this.lbMDate.StyleController = this.layoutControl3; + this.lbMDate.TabIndex = 6; + this.lbMDate.Text = "Manufacture Date:"; + // + // layoutControlGroup2 + // + this.layoutControlGroup2.EnableIndentsWithoutBorders = DevExpress.Utils.DefaultBoolean.True; + this.layoutControlGroup2.GroupBordersVisible = false; + this.layoutControlGroup2.Items.AddRange(new DevExpress.XtraLayout.BaseLayoutItem[] { + this.layoutControlItem9}); + this.layoutControlGroup2.Name = "Root"; + this.layoutControlGroup2.Padding = new DevExpress.XtraLayout.Utils.Padding(5, 5, 5, 5); + this.layoutControlGroup2.Size = new System.Drawing.Size(708, 106); + this.layoutControlGroup2.TextVisible = false; + // + // layoutControlItem9 + // + this.layoutControlItem9.Control = this.lbMDate; + this.layoutControlItem9.Location = new System.Drawing.Point(0, 0); + this.layoutControlItem9.MinSize = new System.Drawing.Size(74, 18); + this.layoutControlItem9.Name = "layoutControlItem9"; + this.layoutControlItem9.Size = new System.Drawing.Size(698, 96); + this.layoutControlItem9.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem9.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem9.TextVisible = false; + // + // Root + // + this.Root.EnableIndentsWithoutBorders = DevExpress.Utils.DefaultBoolean.True; + this.Root.GroupBordersVisible = false; + this.Root.Items.AddRange(new DevExpress.XtraLayout.BaseLayoutItem[] { + this.layoutControlItem1, + this.layoutControlItem2, + this.layoutControlItem5, + this.layoutControlItem6, + this.emptySpaceItem1}); + this.Root.Name = "Root"; + this.Root.Padding = new DevExpress.XtraLayout.Utils.Padding(2, 2, 2, 2); + this.Root.Size = new System.Drawing.Size(720, 425); + this.Root.TextVisible = false; + // + // layoutControlItem1 + // + this.layoutControlItem1.Control = this.gbMDate; + this.layoutControlItem1.Location = new System.Drawing.Point(0, 0); + this.layoutControlItem1.Name = "layoutControlItem1"; + this.layoutControlItem1.Size = new System.Drawing.Size(716, 135); + this.layoutControlItem1.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem1.TextVisible = false; + // + // layoutControlItem2 + // + this.layoutControlItem2.Control = this.gbSerialNo; + this.layoutControlItem2.Location = new System.Drawing.Point(0, 135); + this.layoutControlItem2.Name = "layoutControlItem2"; + this.layoutControlItem2.Size = new System.Drawing.Size(716, 204); + this.layoutControlItem2.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem2.TextVisible = false; + // + // layoutControlItem5 + // + this.layoutControlItem5.Control = this.btnInvWrite; + this.layoutControlItem5.Location = new System.Drawing.Point(0, 369); + this.layoutControlItem5.MinSize = new System.Drawing.Size(89, 26); + this.layoutControlItem5.Name = "layoutControlItem5"; + this.layoutControlItem5.Size = new System.Drawing.Size(358, 52); + this.layoutControlItem5.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem5.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem5.TextVisible = false; + // + // layoutControlItem6 + // + this.layoutControlItem6.Control = this.btnClose; + this.layoutControlItem6.Location = new System.Drawing.Point(358, 369); + this.layoutControlItem6.MinSize = new System.Drawing.Size(89, 26); + this.layoutControlItem6.Name = "layoutControlItem6"; + this.layoutControlItem6.Size = new System.Drawing.Size(358, 52); + this.layoutControlItem6.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem6.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem6.TextVisible = false; + // + // emptySpaceItem1 + // + this.emptySpaceItem1.AllowHotTrack = false; + this.emptySpaceItem1.Location = new System.Drawing.Point(0, 339); + this.emptySpaceItem1.Name = "emptySpaceItem1"; + this.emptySpaceItem1.Size = new System.Drawing.Size(716, 30); + this.emptySpaceItem1.TextSize = new System.Drawing.Size(0, 0); + // + // tmrDisplay + // + this.tmrDisplay.Tick += new System.EventHandler(this.tmrDisplay_Tick); + // + // tmrCmd + // + this.tmrCmd.Interval = 500; + this.tmrCmd.Tick += new System.EventHandler(this.tmrCmd_Tick); + // + // fmxInventoryConfig + // + this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 14F); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.ClientSize = new System.Drawing.Size(720, 425); + this.Controls.Add(this.layoutControl1); + this.IconOptions.Image = ((System.Drawing.Image)(resources.GetObject("fmxInventoryConfig.IconOptions.Image"))); + this.IconOptions.SvgImageColorizationMode = DevExpress.Utils.SvgImageColorizationMode.Full; + this.Name = "fmxInventoryConfig"; + this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen; + this.Text = "Inventory Config"; + ((System.ComponentModel.ISupportInitialize)(this.layoutControl1)).EndInit(); + this.layoutControl1.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.gbSerialNo)).EndInit(); + this.gbSerialNo.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.layoutControl2)).EndInit(); + this.layoutControl2.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.nSerialNo.Properties)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup1)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem3)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem4)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.gbMDate)).EndInit(); + this.gbMDate.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.layoutControl3)).EndInit(); + this.layoutControl3.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup2)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem9)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.Root)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem1)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem2)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem5)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem6)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.emptySpaceItem1)).EndInit(); + this.ResumeLayout(false); + + } + + #endregion + + private DevExpress.XtraLayout.LayoutControl layoutControl1; + private DevExpress.XtraLayout.LayoutControlGroup Root; + private DevExpress.XtraEditors.GroupControl gbMDate; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem1; + private DevExpress.XtraEditors.GroupControl gbSerialNo; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem2; + private DevExpress.XtraLayout.LayoutControl layoutControl2; + private DevExpress.XtraLayout.LayoutControlGroup layoutControlGroup1; + private DevExpress.XtraEditors.TextEdit nSerialNo; + private DevExpress.XtraEditors.LabelControl lbSerialNo; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem3; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem4; + private DevExpress.XtraEditors.SimpleButton btnClose; + private DevExpress.XtraEditors.SimpleButton btnInvWrite; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem5; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem6; + private DevExpress.XtraLayout.EmptySpaceItem emptySpaceItem1; + private System.Windows.Forms.Timer tmrDisplay; + private DevExpress.XtraLayout.LayoutControl layoutControl3; + private DevExpress.XtraLayout.LayoutControlGroup layoutControlGroup2; + private DevExpress.XtraEditors.LabelControl lbMDate; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem9; + private System.Windows.Forms.Timer tmrCmd; + } +} \ No newline at end of file diff --git a/LFP_Manager_PRM/Forms/fmxInventoryConfig.cs b/LFP_Manager_PRM/Forms/fmxInventoryConfig.cs new file mode 100644 index 0000000..5e05a15 --- /dev/null +++ b/LFP_Manager_PRM/Forms/fmxInventoryConfig.cs @@ -0,0 +1,245 @@ +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Data; +using System.Drawing; +using System.Text; +using System.Linq; +using System.Threading.Tasks; +using System.Windows.Forms; +using DevExpress.XtraEditors; + +using LFP_Manager.DataStructure; +using LFP_Manager.Function; +using LFP_Manager.Controls; +using LFP_Manager.Utils; + +namespace LFP_Manager.Forms +{ + public delegate void InvDataUpdateEvent(object sendor); + public delegate void InvDateCmdEvent(int sId, int mode, int flag, ref DeviceInforation wData); + + public partial class fmxInventoryConfig : XtraForm + { + #region VARIABLES + + CommConfig Config; + + int SystemId = 0; + int CmdResult = 0; + DeviceSystemData SystemData; + DeviceInforation wInvDate; + + public event InvDataUpdateEvent OnUpdate = null; + public event InvDateCmdEvent OnCommand = null; + + #endregion + public fmxInventoryConfig() + { + InitializeComponent(); + } + public fmxInventoryConfig(CommConfig aConfig, int sId, ref DeviceSystemData aSystemData) + { + InitializeComponent(); + + InitData(); + + Config = aConfig; + SystemId = sId; + SystemData = aSystemData; + + tmrDisplay.Enabled = true; + tmrCmd.Enabled = true; + } + + void InitData() + { + wInvDate = new DeviceInforation + { + pcb_sn = new byte[16] + }; + } + + #region DISPLAY DATA + + private void DisplayValue() + { + // Manufacture Date + lbMDate.Text = String.Format("Manufacture Date: {0} ({0:X8})", SystemData.Information.ManufactureDate) + + "\r\n" + + DisplayManufactureDate(SystemData.Information.ManufactureDate) + ; + + // Device Serial Number + byte[] tmp = new byte[SystemData.Information.pcb_sn.Length + 1]; + for (int i = 0; i < SystemData.Information.pcb_sn.Length; i++) + tmp[i] = SystemData.Information.pcb_sn[i]; + tmp[SystemData.Information.pcb_sn.Length] = 0; + + string strSerial = Encoding.Default.GetString(tmp).Trim('\0'); + lbSerialNo.Text = String.Format("Serial No: {0}", strSerial); + } + + private string DisplayManufactureDate(UInt32 mDate) + { + DateTime dtDate = csUtils.ConvertTimeStampToDateTime(mDate); + + return String.Format("{0:yyyy-MM-dd hh:mm:ss}", dtDate); + } + + #endregion + + #region TIMER ENVENT + private void tmrDisplay_Tick(object sender, EventArgs e) + { + DisplayValue(); + OnUpdate?.Invoke(this); + } + + #endregion + + #region PUBLIC FUCTIONS + public void UpdateData(ref DeviceSystemData aSystemData) + { + SystemData = aSystemData; + } + + #endregion + + #region BUTTON EVENT + private void btnMDateRead_Click(object sender, EventArgs e) + { + OnCommand?.Invoke(SystemId, 900, 0, ref wInvDate); + OnCommand?.Invoke(SystemId, 901, 0, ref wInvDate); + OnCommand?.Invoke(SystemId, 902, 0, ref wInvDate); + } + + private void btnWrite_Click(object sender, EventArgs e) + { + } + private void btnInvWrite_Click(object sender, EventArgs e) + { + if (nSerialNo.Text.Length == 15) + { + csDbUtils.MdDbCreate(Config, nSerialNo.Text); + + if (CheckBmsSerialNo(nSerialNo.Text) == false) + { + byte[] bSN = Encoding.UTF8.GetBytes(nSerialNo.Text); + + if (wInvDate.pcb_sn == null) wInvDate.pcb_sn = new byte[16]; + for (int i = 0; i < 16; i++) wInvDate.pcb_sn[i] = 0; + for (int i = 0; i < bSN.Length; i++) + { + wInvDate.pcb_sn[i] = bSN[i]; + } + OnCommand?.Invoke(SystemId, 901, 1, ref wInvDate); + OnCommand?.Invoke(SystemId, 902, 1, ref wInvDate); + + CmdMDateWrite(); + + CmdResult = 1; + } + else + { + MessageBox.Show(String.Format("Already used BMS serial number - [{0}]", nSerialNo.Text) + , "Warning" + , MessageBoxButtons.OK + , MessageBoxIcon.Warning + ); + } + } + } + #endregion + + #region PROCESSING DATA + + private bool CheckBmsSerialNo(string bSN) + { + bool result = false; + DataTable dtBmsData = new DataTable(); + DataTable dtBmsMatch = new DataTable(); + DataTable dtErrorLog = new DataTable(); + + //string sql = String.Format("SELECT * FROM TInventoryData WHERE pcb_sn = {0}", bSN); + string sql = String.Format("SELECT * FROM TInventoryData"); + dtBmsData = csDbUtils.GetDataTableBySelect(Config, bSN, sql, "TInventoryData"); + + if (dtBmsData != null) + { + if (dtBmsData.Rows.Count > 1) + { + DataRow[] arrRows = null; + arrRows = dtBmsData.Select(String.Format("pcb_sn = '{0}'", bSN)); + if (arrRows.Length > 0) + result = true; + } + } + + return result; + } + private void CmdMDateWrite() + { + UInt32 mTimeStamp = csUtils.CalcKKTimeStamp(DateTime.Now); + wInvDate.ManufactureDate = mTimeStamp; + + OnCommand?.Invoke(SystemId, 900, 1, ref wInvDate); + } + + private void CheckResult() + { + if (CmdResult == 1) + { + bool result = false; + + byte[] a = Encoding.UTF8.GetBytes(nSerialNo.Text); + byte[] b = SystemData.Information.pcb_sn; + + for (int i = 0; i < a.Length; i++) + { + if (a[i] == b[i]) continue; + result = true; + } + + if ((result == false) && (wInvDate.ManufactureDate == SystemData.Information.ManufactureDate)) + { + CmdResult = 0; + + try + { + csDbUtils.BmsDataInsert(Config, SystemData, nSerialNo.Text); + + MessageBox.Show(String.Format("BMS data insert complete - [{0}]", nSerialNo.Text) + , "Information" + , MessageBoxButtons.OK + , MessageBoxIcon.Information + ); + } + catch (Exception ex) + { + MessageBox.Show(String.Format("BMS data insert fail - [{0}] \r\n{1}", nSerialNo.Text, ex.Message) + , "Warning" + , MessageBoxButtons.OK + , MessageBoxIcon.Warning + ); + } + } + } + } + #endregion + + private void tmrCmd_Tick(object sender, EventArgs e) + { + OnCommand?.Invoke(SystemId, 900, 0, ref wInvDate); + OnCommand?.Invoke(SystemId, 901, 0, ref wInvDate); + OnCommand?.Invoke(SystemId, 902, 0, ref wInvDate); + + CheckResult(); + } + + private void btnClose_Click(object sender, EventArgs e) + { + Close(); + } + } +} \ No newline at end of file diff --git a/LFP_Manager_PRM/Forms/fmxInventoryConfig.resx b/LFP_Manager_PRM/Forms/fmxInventoryConfig.resx new file mode 100644 index 0000000..d3ce9ee --- /dev/null +++ b/LFP_Manager_PRM/Forms/fmxInventoryConfig.resx @@ -0,0 +1,154 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + 17, 17 + + + 128, 17 + + + + + iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO + wwAADsMBx2+oZAAABMxJREFUWEflVWtsFVUQPrdtSvilMRIVY8T4h1/aoDGKqIWCIBXR+IgaAmriD/CR + SIyVYjSSPmhLrVVTBa6tQNGIBSqYCEEera34KCqFEmgLNa34qPRaeqHv23G+2Z3tXrp3u/iHGCeZnN09 + M2e++WbOrKFLLP8dACMjI87qp2oTVAIBcB8Y8zncvRcUxEUxoIdGon3UdbbX0TPdvdR9vl/23HZBZFwA + euDQcEzedze00aSF79Ckx9+nKx8rc3Tyo2V0+GSn2AyzbVAgvgD0gFgsRsOsfQNDNPXZCjLpq8nc9xaZ + ucWW4vmuPJqZ9Rm8xDZIcEggBjT7VR8fJHNnLiUveNsKOr/EUn5Ovp+/MYhNe5vEFj5BWEgIQJ1BJ5qr + 5dcITcwsoZBmzIFDeBcA9jq7iK554gOK9PQJC8KEfVYiGbcEmv0Db1aTuTufkjKt7CXgvWu4BKw2C0lg + YUYevbTugPgM2iz4iScAzX5waFjePz/YSmZWgUWzBuJSLF+7nx7J3SlB5Rv2GMwEXrUhxyvFGABqiMaD + 87neAbrxqTCF5hRx9hbVoTlr6CrufDRly+kIpc4rpiQO6oCbWUDpWVvsJPxZGAsAyg5KffZHdXGNJ+s9 + +bRhz1HZh7xa8bU0oGMDEPxeufeY7PuxEAdAjfQeH2/vsrJj9coOB6PRengITVmyXpjRxgzZDfk3Dy3Y + gFGN4RbPEgAAZP7r26zGc+rL2fEt+Kn1TweA9smWmuNim8pDCgxgxfsKZgeiLFwoDgBs6qGQ7fUtdtcn + 6HAOjMxgj17AikFk0t7gkuWRmZ5L5o4cMrfnUE1jB9uOMusGIgD0g0w8NoqeH6Api9eTySi06LQpvW7R + Ojp7rl8Cs5P4uAX/hWwGmF1RJ5mv3FBHr5Tto+pvWmXfi4U4BpTOrPLa+KuFldn4lGmGACSGTUPzH7Tn + 0C9UsfsIlWxtoPCXjfTF96dox7etcnWhO787SZ981UT1TactXwbvZsHoi9JztO0vuceotwTH4OGun51d + JVmrHcB2MxsdnT104HA7vcYZX79orVUCph2ApRQzuBTTc+jyh96l385ExzQkA7AecDAkY0UVB1w9mj0r + bsKRtk4ZyQrAS/C9fFcjXc1/RsNzI3VhKaXwORMetBpycfEusXOXgksw2nib9x3j+5vvTDy511wK3HMI + slZHrKrICnua2YmOCE19+kOrh7SJsc4qpP0/t4uNgjB4wAGo6bVPMoUZRaONx1ncsCRMUZ6GsIFCFARE + QejzwOCQPDfzz+syvopJ87SUDCC9gG5etpFt+AZxXAA2vf2Ww3LuXtTMoR4OXPtt9c2yr9m7g7tF9uy1 + 3wZRWv3j2Gbm95Lth2Qf11duQeOpTmm8FM4agVMWlErN5q7cKoZe18dL1AaZwQd609KNMj1RTpydzP10 + xcPv0e9dUbbjEuBeT3u+0upcrhmMETyFJ96Jjq64xgsKAmqBJqrlISQ3gumXs3memNtWUSZPWYjJCtdS + 2nObaNoLlQLk1hc3Uxo3UGHVD2Lg1/V+Ah/tmZfDNZT2TLmcjRi3sCLmDvzmUYdEguw1+MWAcPv4+aH/ + nFGMYKryzvVR8TskkaiPnuUVA+JMQi+F6Ppv5MLzvNT5F1wq+b8DIPoHjJf5qaq9hPwAAAAASUVORK5C + YII= + + + \ No newline at end of file diff --git a/LFP_Manager_PRM/Forms/fmxInventoryConfig2.Designer.cs b/LFP_Manager_PRM/Forms/fmxInventoryConfig2.Designer.cs new file mode 100644 index 0000000..9662185 --- /dev/null +++ b/LFP_Manager_PRM/Forms/fmxInventoryConfig2.Designer.cs @@ -0,0 +1,591 @@ + +namespace LFP_Manager.Forms +{ + partial class fmxInventoryConfig2 + { + /// + /// Required designer variable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Clean up any resources being used. + /// + /// true if managed resources should be disposed; otherwise, false. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Windows Form Designer generated code + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + this.components = new System.ComponentModel.Container(); + System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(fmxInventoryConfig2)); + this.layoutControl1 = new DevExpress.XtraLayout.LayoutControl(); + this.btnRefresh = new DevExpress.XtraEditors.SimpleButton(); + this.btnExportExcel = new DevExpress.XtraEditors.SimpleButton(); + this.mnView = new System.Windows.Forms.DataGridView(); + this.groupControl2 = new DevExpress.XtraEditors.GroupControl(); + this.layoutControl4 = new DevExpress.XtraLayout.LayoutControl(); + this.lbResult = new DevExpress.XtraEditors.LabelControl(); + this.layoutControlGroup3 = new DevExpress.XtraLayout.LayoutControlGroup(); + this.layoutControlItem7 = new DevExpress.XtraLayout.LayoutControlItem(); + this.groupControl1 = new DevExpress.XtraEditors.GroupControl(); + this.layoutControl3 = new DevExpress.XtraLayout.LayoutControl(); + this.lbPcbSerial = new DevExpress.XtraEditors.LabelControl(); + this.layoutControlGroup2 = new DevExpress.XtraLayout.LayoutControlGroup(); + this.layoutControlItem6 = new DevExpress.XtraLayout.LayoutControlItem(); + this.btnClose = new DevExpress.XtraEditors.SimpleButton(); + this.btnInvWrite = new DevExpress.XtraEditors.SimpleButton(); + this.gbSerialNo = new DevExpress.XtraEditors.GroupControl(); + this.layoutControl2 = new DevExpress.XtraLayout.LayoutControl(); + this.nMdNo = new DevExpress.XtraEditors.TextEdit(); + this.lbMdSerial = new DevExpress.XtraEditors.LabelControl(); + this.layoutControlGroup1 = new DevExpress.XtraLayout.LayoutControlGroup(); + this.layoutControlItem3 = new DevExpress.XtraLayout.LayoutControlItem(); + this.layoutControlItem4 = new DevExpress.XtraLayout.LayoutControlItem(); + this.Root = new DevExpress.XtraLayout.LayoutControlGroup(); + this.layoutControlItem1 = new DevExpress.XtraLayout.LayoutControlItem(); + this.layoutControlItem5 = new DevExpress.XtraLayout.LayoutControlItem(); + this.layoutControlItem2 = new DevExpress.XtraLayout.LayoutControlItem(); + this.layoutControlItem8 = new DevExpress.XtraLayout.LayoutControlItem(); + this.layoutControlItem10 = new DevExpress.XtraLayout.LayoutControlItem(); + this.gbDvResult = new DevExpress.XtraLayout.LayoutControlGroup(); + this.layoutControlItem11 = new DevExpress.XtraLayout.LayoutControlItem(); + this.emptySpaceItem1 = new DevExpress.XtraLayout.EmptySpaceItem(); + this.layoutControlItem9 = new DevExpress.XtraLayout.LayoutControlItem(); + this.layoutControlItem12 = new DevExpress.XtraLayout.LayoutControlItem(); + this.tmrDisplay = new System.Windows.Forms.Timer(this.components); + this.tmrCmd = new System.Windows.Forms.Timer(this.components); + ((System.ComponentModel.ISupportInitialize)(this.layoutControl1)).BeginInit(); + this.layoutControl1.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.mnView)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.groupControl2)).BeginInit(); + this.groupControl2.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControl4)).BeginInit(); + this.layoutControl4.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup3)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem7)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.groupControl1)).BeginInit(); + this.groupControl1.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControl3)).BeginInit(); + this.layoutControl3.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup2)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem6)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.gbSerialNo)).BeginInit(); + this.gbSerialNo.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControl2)).BeginInit(); + this.layoutControl2.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.nMdNo.Properties)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup1)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem3)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem4)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.Root)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem1)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem5)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem2)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem8)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem10)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.gbDvResult)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem11)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.emptySpaceItem1)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem9)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem12)).BeginInit(); + this.SuspendLayout(); + // + // layoutControl1 + // + this.layoutControl1.Controls.Add(this.btnRefresh); + this.layoutControl1.Controls.Add(this.btnExportExcel); + this.layoutControl1.Controls.Add(this.mnView); + this.layoutControl1.Controls.Add(this.groupControl2); + this.layoutControl1.Controls.Add(this.groupControl1); + this.layoutControl1.Controls.Add(this.btnClose); + this.layoutControl1.Controls.Add(this.btnInvWrite); + this.layoutControl1.Controls.Add(this.gbSerialNo); + this.layoutControl1.Dock = System.Windows.Forms.DockStyle.Fill; + this.layoutControl1.Location = new System.Drawing.Point(0, 0); + this.layoutControl1.Name = "layoutControl1"; + this.layoutControl1.OptionsCustomizationForm.DesignTimeCustomizationFormPositionAndSize = new System.Drawing.Rectangle(999, 164, 650, 400); + this.layoutControl1.Root = this.Root; + this.layoutControl1.Size = new System.Drawing.Size(798, 538); + this.layoutControl1.TabIndex = 0; + this.layoutControl1.Text = "layoutControl1"; + // + // btnRefresh + // + this.btnRefresh.Location = new System.Drawing.Point(8, 472); + this.btnRefresh.Name = "btnRefresh"; + this.btnRefresh.Size = new System.Drawing.Size(98, 22); + this.btnRefresh.StyleController = this.layoutControl1; + this.btnRefresh.TabIndex = 13; + this.btnRefresh.Text = "Refresh"; + this.btnRefresh.Click += new System.EventHandler(this.btnRefresh_Click); + // + // btnExportExcel + // + this.btnExportExcel.Location = new System.Drawing.Point(703, 472); + this.btnExportExcel.Name = "btnExportExcel"; + this.btnExportExcel.Size = new System.Drawing.Size(87, 22); + this.btnExportExcel.StyleController = this.layoutControl1; + this.btnExportExcel.TabIndex = 12; + this.btnExportExcel.Text = "Export"; + this.btnExportExcel.Click += new System.EventHandler(this.btnExportExcel_Click); + // + // mnView + // + this.mnView.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize; + this.mnView.Location = new System.Drawing.Point(8, 344); + this.mnView.Name = "mnView"; + this.mnView.ReadOnly = true; + this.mnView.RowTemplate.Height = 23; + this.mnView.Size = new System.Drawing.Size(782, 124); + this.mnView.TabIndex = 11; + // + // groupControl2 + // + this.groupControl2.Controls.Add(this.layoutControl4); + this.groupControl2.Location = new System.Drawing.Point(4, 234); + this.groupControl2.Name = "groupControl2"; + this.groupControl2.Size = new System.Drawing.Size(790, 81); + this.groupControl2.TabIndex = 10; + this.groupControl2.Text = "Status"; + // + // layoutControl4 + // + this.layoutControl4.Controls.Add(this.lbResult); + this.layoutControl4.Dock = System.Windows.Forms.DockStyle.Fill; + this.layoutControl4.Location = new System.Drawing.Point(2, 23); + this.layoutControl4.Name = "layoutControl4"; + this.layoutControl4.OptionsCustomizationForm.DesignTimeCustomizationFormPositionAndSize = new System.Drawing.Rectangle(993, 64, 650, 400); + this.layoutControl4.Root = this.layoutControlGroup3; + this.layoutControl4.Size = new System.Drawing.Size(786, 56); + this.layoutControl4.TabIndex = 0; + this.layoutControl4.Text = "layoutControl4"; + // + // lbResult + // + this.lbResult.Appearance.Font = new System.Drawing.Font("Tahoma", 15.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); + this.lbResult.Appearance.Options.UseFont = true; + this.lbResult.Appearance.Options.UseTextOptions = true; + this.lbResult.Appearance.TextOptions.HAlignment = DevExpress.Utils.HorzAlignment.Center; + this.lbResult.Location = new System.Drawing.Point(7, 7); + this.lbResult.Name = "lbResult"; + this.lbResult.Size = new System.Drawing.Size(772, 42); + this.lbResult.StyleController = this.layoutControl4; + this.lbResult.TabIndex = 4; + this.lbResult.Text = "Ready"; + // + // layoutControlGroup3 + // + this.layoutControlGroup3.EnableIndentsWithoutBorders = DevExpress.Utils.DefaultBoolean.True; + this.layoutControlGroup3.GroupBordersVisible = false; + this.layoutControlGroup3.Items.AddRange(new DevExpress.XtraLayout.BaseLayoutItem[] { + this.layoutControlItem7}); + this.layoutControlGroup3.Name = "Root"; + this.layoutControlGroup3.Padding = new DevExpress.XtraLayout.Utils.Padding(5, 5, 5, 5); + this.layoutControlGroup3.Size = new System.Drawing.Size(786, 56); + this.layoutControlGroup3.TextVisible = false; + // + // layoutControlItem7 + // + this.layoutControlItem7.Control = this.lbResult; + this.layoutControlItem7.Location = new System.Drawing.Point(0, 0); + this.layoutControlItem7.MinSize = new System.Drawing.Size(74, 18); + this.layoutControlItem7.Name = "layoutControlItem3"; + this.layoutControlItem7.Size = new System.Drawing.Size(776, 46); + this.layoutControlItem7.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem7.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem7.TextVisible = false; + // + // groupControl1 + // + this.groupControl1.Controls.Add(this.layoutControl3); + this.groupControl1.Location = new System.Drawing.Point(4, 4); + this.groupControl1.Name = "groupControl1"; + this.groupControl1.Size = new System.Drawing.Size(790, 77); + this.groupControl1.TabIndex = 7; + this.groupControl1.Text = "BMS Serial Number"; + // + // layoutControl3 + // + this.layoutControl3.Controls.Add(this.lbPcbSerial); + this.layoutControl3.Dock = System.Windows.Forms.DockStyle.Fill; + this.layoutControl3.Location = new System.Drawing.Point(2, 23); + this.layoutControl3.Name = "layoutControl3"; + this.layoutControl3.OptionsCustomizationForm.DesignTimeCustomizationFormPositionAndSize = new System.Drawing.Rectangle(993, 64, 650, 400); + this.layoutControl3.Root = this.layoutControlGroup2; + this.layoutControl3.Size = new System.Drawing.Size(786, 52); + this.layoutControl3.TabIndex = 0; + this.layoutControl3.Text = "layoutControl3"; + // + // lbPcbSerial + // + this.lbPcbSerial.Appearance.Font = new System.Drawing.Font("Tahoma", 15.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); + this.lbPcbSerial.Appearance.Options.UseFont = true; + this.lbPcbSerial.Location = new System.Drawing.Point(7, 7); + this.lbPcbSerial.Name = "lbPcbSerial"; + this.lbPcbSerial.Size = new System.Drawing.Size(772, 38); + this.lbPcbSerial.StyleController = this.layoutControl3; + this.lbPcbSerial.TabIndex = 4; + this.lbPcbSerial.Text = "BMS S/N:"; + // + // layoutControlGroup2 + // + this.layoutControlGroup2.EnableIndentsWithoutBorders = DevExpress.Utils.DefaultBoolean.True; + this.layoutControlGroup2.GroupBordersVisible = false; + this.layoutControlGroup2.Items.AddRange(new DevExpress.XtraLayout.BaseLayoutItem[] { + this.layoutControlItem6}); + this.layoutControlGroup2.Name = "Root"; + this.layoutControlGroup2.Padding = new DevExpress.XtraLayout.Utils.Padding(5, 5, 5, 5); + this.layoutControlGroup2.Size = new System.Drawing.Size(786, 52); + this.layoutControlGroup2.TextVisible = false; + // + // layoutControlItem6 + // + this.layoutControlItem6.Control = this.lbPcbSerial; + this.layoutControlItem6.Location = new System.Drawing.Point(0, 0); + this.layoutControlItem6.MinSize = new System.Drawing.Size(74, 18); + this.layoutControlItem6.Name = "layoutControlItem3"; + this.layoutControlItem6.Size = new System.Drawing.Size(776, 42); + this.layoutControlItem6.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem6.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem6.TextVisible = false; + // + // btnClose + // + this.btnClose.Appearance.Font = new System.Drawing.Font("Tahoma", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0))); + this.btnClose.Appearance.Options.UseFont = true; + this.btnClose.Location = new System.Drawing.Point(401, 502); + this.btnClose.Name = "btnClose"; + this.btnClose.Size = new System.Drawing.Size(393, 32); + this.btnClose.StyleController = this.layoutControl1; + this.btnClose.TabIndex = 9; + this.btnClose.Text = "Close"; + this.btnClose.Click += new System.EventHandler(this.btnClose_Click); + // + // btnInvWrite + // + this.btnInvWrite.Appearance.Font = new System.Drawing.Font("Tahoma", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0))); + this.btnInvWrite.Appearance.Options.UseFont = true; + this.btnInvWrite.Location = new System.Drawing.Point(4, 502); + this.btnInvWrite.Name = "btnInvWrite"; + this.btnInvWrite.Size = new System.Drawing.Size(393, 32); + this.btnInvWrite.StyleController = this.layoutControl1; + this.btnInvWrite.TabIndex = 8; + this.btnInvWrite.Text = "Apply"; + // + // gbSerialNo + // + this.gbSerialNo.Controls.Add(this.layoutControl2); + this.gbSerialNo.Location = new System.Drawing.Point(4, 85); + this.gbSerialNo.Name = "gbSerialNo"; + this.gbSerialNo.Size = new System.Drawing.Size(790, 145); + this.gbSerialNo.TabIndex = 6; + this.gbSerialNo.Text = "Module Number"; + // + // layoutControl2 + // + this.layoutControl2.Controls.Add(this.nMdNo); + this.layoutControl2.Controls.Add(this.lbMdSerial); + this.layoutControl2.Dock = System.Windows.Forms.DockStyle.Fill; + this.layoutControl2.Location = new System.Drawing.Point(2, 23); + this.layoutControl2.Name = "layoutControl2"; + this.layoutControl2.OptionsCustomizationForm.DesignTimeCustomizationFormPositionAndSize = new System.Drawing.Rectangle(993, 64, 650, 400); + this.layoutControl2.Root = this.layoutControlGroup1; + this.layoutControl2.Size = new System.Drawing.Size(786, 120); + this.layoutControl2.TabIndex = 0; + this.layoutControl2.Text = "layoutControl2"; + // + // nMdNo + // + this.nMdNo.Location = new System.Drawing.Point(7, 50); + this.nMdNo.Name = "nMdNo"; + this.nMdNo.Properties.Appearance.Font = new System.Drawing.Font("Tahoma", 36F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); + this.nMdNo.Properties.Appearance.Options.UseFont = true; + this.nMdNo.Properties.Appearance.Options.UseTextOptions = true; + this.nMdNo.Properties.Appearance.TextOptions.HAlignment = DevExpress.Utils.HorzAlignment.Center; + this.nMdNo.Properties.ReadOnly = true; + this.nMdNo.Size = new System.Drawing.Size(772, 64); + this.nMdNo.StyleController = this.layoutControl2; + this.nMdNo.TabIndex = 5; + // + // lbMdSerial + // + this.lbMdSerial.Appearance.Font = new System.Drawing.Font("Tahoma", 15.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); + this.lbMdSerial.Appearance.Options.UseFont = true; + this.lbMdSerial.Location = new System.Drawing.Point(7, 7); + this.lbMdSerial.Name = "lbMdSerial"; + this.lbMdSerial.Size = new System.Drawing.Size(772, 39); + this.lbMdSerial.StyleController = this.layoutControl2; + this.lbMdSerial.TabIndex = 4; + this.lbMdSerial.Text = "Module S/N:"; + // + // layoutControlGroup1 + // + this.layoutControlGroup1.EnableIndentsWithoutBorders = DevExpress.Utils.DefaultBoolean.True; + this.layoutControlGroup1.GroupBordersVisible = false; + this.layoutControlGroup1.Items.AddRange(new DevExpress.XtraLayout.BaseLayoutItem[] { + this.layoutControlItem3, + this.layoutControlItem4}); + this.layoutControlGroup1.Name = "Root"; + this.layoutControlGroup1.Padding = new DevExpress.XtraLayout.Utils.Padding(5, 5, 5, 5); + this.layoutControlGroup1.Size = new System.Drawing.Size(786, 120); + this.layoutControlGroup1.TextVisible = false; + // + // layoutControlItem3 + // + this.layoutControlItem3.Control = this.lbMdSerial; + this.layoutControlItem3.Location = new System.Drawing.Point(0, 0); + this.layoutControlItem3.MinSize = new System.Drawing.Size(74, 18); + this.layoutControlItem3.Name = "layoutControlItem3"; + this.layoutControlItem3.Size = new System.Drawing.Size(776, 43); + this.layoutControlItem3.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem3.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem3.TextVisible = false; + // + // layoutControlItem4 + // + this.layoutControlItem4.Control = this.nMdNo; + this.layoutControlItem4.Location = new System.Drawing.Point(0, 43); + this.layoutControlItem4.MaxSize = new System.Drawing.Size(0, 67); + this.layoutControlItem4.MinSize = new System.Drawing.Size(171, 67); + this.layoutControlItem4.Name = "layoutControlItem4"; + this.layoutControlItem4.Size = new System.Drawing.Size(776, 67); + this.layoutControlItem4.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem4.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem4.TextVisible = false; + // + // Root + // + this.Root.EnableIndentsWithoutBorders = DevExpress.Utils.DefaultBoolean.True; + this.Root.GroupBordersVisible = false; + this.Root.Items.AddRange(new DevExpress.XtraLayout.BaseLayoutItem[] { + this.layoutControlItem1, + this.layoutControlItem5, + this.layoutControlItem2, + this.layoutControlItem8, + this.layoutControlItem10, + this.gbDvResult}); + this.Root.Name = "Root"; + this.Root.Padding = new DevExpress.XtraLayout.Utils.Padding(2, 2, 2, 2); + this.Root.Size = new System.Drawing.Size(798, 538); + this.Root.TextVisible = false; + // + // layoutControlItem1 + // + this.layoutControlItem1.Control = this.gbSerialNo; + this.layoutControlItem1.Location = new System.Drawing.Point(0, 81); + this.layoutControlItem1.MaxSize = new System.Drawing.Size(0, 149); + this.layoutControlItem1.MinSize = new System.Drawing.Size(189, 149); + this.layoutControlItem1.Name = "layoutControlItem1"; + this.layoutControlItem1.Size = new System.Drawing.Size(794, 149); + this.layoutControlItem1.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem1.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem1.TextVisible = false; + // + // layoutControlItem5 + // + this.layoutControlItem5.Control = this.btnInvWrite; + this.layoutControlItem5.Location = new System.Drawing.Point(0, 498); + this.layoutControlItem5.MaxSize = new System.Drawing.Size(0, 36); + this.layoutControlItem5.MinSize = new System.Drawing.Size(57, 36); + this.layoutControlItem5.Name = "layoutControlItem5"; + this.layoutControlItem5.Size = new System.Drawing.Size(397, 36); + this.layoutControlItem5.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem5.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem5.TextVisible = false; + // + // layoutControlItem2 + // + this.layoutControlItem2.Control = this.btnClose; + this.layoutControlItem2.Location = new System.Drawing.Point(397, 498); + this.layoutControlItem2.MaxSize = new System.Drawing.Size(0, 36); + this.layoutControlItem2.MinSize = new System.Drawing.Size(55, 36); + this.layoutControlItem2.Name = "layoutControlItem2"; + this.layoutControlItem2.Size = new System.Drawing.Size(397, 36); + this.layoutControlItem2.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem2.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem2.TextVisible = false; + // + // layoutControlItem8 + // + this.layoutControlItem8.Control = this.groupControl1; + this.layoutControlItem8.Location = new System.Drawing.Point(0, 0); + this.layoutControlItem8.MaxSize = new System.Drawing.Size(0, 81); + this.layoutControlItem8.MinSize = new System.Drawing.Size(92, 81); + this.layoutControlItem8.Name = "layoutControlItem8"; + this.layoutControlItem8.Size = new System.Drawing.Size(794, 81); + this.layoutControlItem8.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem8.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem8.TextVisible = false; + // + // layoutControlItem10 + // + this.layoutControlItem10.Control = this.groupControl2; + this.layoutControlItem10.Location = new System.Drawing.Point(0, 230); + this.layoutControlItem10.MaxSize = new System.Drawing.Size(0, 85); + this.layoutControlItem10.MinSize = new System.Drawing.Size(92, 85); + this.layoutControlItem10.Name = "layoutControlItem10"; + this.layoutControlItem10.Size = new System.Drawing.Size(794, 85); + this.layoutControlItem10.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem10.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem10.TextVisible = false; + // + // gbDvResult + // + this.gbDvResult.Items.AddRange(new DevExpress.XtraLayout.BaseLayoutItem[] { + this.layoutControlItem11, + this.emptySpaceItem1, + this.layoutControlItem9, + this.layoutControlItem12}); + this.gbDvResult.Location = new System.Drawing.Point(0, 315); + this.gbDvResult.Name = "gbDvResult"; + this.gbDvResult.Padding = new DevExpress.XtraLayout.Utils.Padding(1, 1, 1, 1); + this.gbDvResult.Size = new System.Drawing.Size(794, 183); + this.gbDvResult.Text = "Module Number List"; + // + // layoutControlItem11 + // + this.layoutControlItem11.Control = this.btnExportExcel; + this.layoutControlItem11.Location = new System.Drawing.Point(695, 128); + this.layoutControlItem11.MinSize = new System.Drawing.Size(89, 26); + this.layoutControlItem11.Name = "layoutControlItem11"; + this.layoutControlItem11.Size = new System.Drawing.Size(91, 26); + this.layoutControlItem11.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem11.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem11.TextVisible = false; + // + // emptySpaceItem1 + // + this.emptySpaceItem1.AllowHotTrack = false; + this.emptySpaceItem1.Location = new System.Drawing.Point(102, 128); + this.emptySpaceItem1.MinSize = new System.Drawing.Size(104, 24); + this.emptySpaceItem1.Name = "emptySpaceItem1"; + this.emptySpaceItem1.Size = new System.Drawing.Size(593, 26); + this.emptySpaceItem1.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.emptySpaceItem1.TextSize = new System.Drawing.Size(0, 0); + // + // layoutControlItem9 + // + this.layoutControlItem9.Control = this.mnView; + this.layoutControlItem9.Location = new System.Drawing.Point(0, 0); + this.layoutControlItem9.Name = "layoutControlItem9"; + this.layoutControlItem9.Size = new System.Drawing.Size(786, 128); + this.layoutControlItem9.Text = "Module Number List"; + this.layoutControlItem9.TextLocation = DevExpress.Utils.Locations.Top; + this.layoutControlItem9.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem9.TextVisible = false; + // + // layoutControlItem12 + // + this.layoutControlItem12.Control = this.btnRefresh; + this.layoutControlItem12.Location = new System.Drawing.Point(0, 128); + this.layoutControlItem12.Name = "layoutControlItem12"; + this.layoutControlItem12.Size = new System.Drawing.Size(102, 26); + this.layoutControlItem12.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem12.TextVisible = false; + // + // tmrDisplay + // + this.tmrDisplay.Tick += new System.EventHandler(this.tmrDisplay_Tick); + // + // fmxInventoryConfig2 + // + this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 14F); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.ClientSize = new System.Drawing.Size(798, 538); + this.Controls.Add(this.layoutControl1); + this.IconOptions.Image = ((System.Drawing.Image)(resources.GetObject("fmxInventoryConfig2.IconOptions.Image"))); + this.Name = "fmxInventoryConfig2"; + this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen; + this.Text = "Module Number Config"; + this.Load += new System.EventHandler(this.fmxInventoryConfig2_Load); + ((System.ComponentModel.ISupportInitialize)(this.layoutControl1)).EndInit(); + this.layoutControl1.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.mnView)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.groupControl2)).EndInit(); + this.groupControl2.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.layoutControl4)).EndInit(); + this.layoutControl4.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup3)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem7)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.groupControl1)).EndInit(); + this.groupControl1.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.layoutControl3)).EndInit(); + this.layoutControl3.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup2)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem6)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.gbSerialNo)).EndInit(); + this.gbSerialNo.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.layoutControl2)).EndInit(); + this.layoutControl2.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.nMdNo.Properties)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup1)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem3)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem4)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.Root)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem1)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem5)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem2)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem8)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem10)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.gbDvResult)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem11)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.emptySpaceItem1)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem9)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem12)).EndInit(); + this.ResumeLayout(false); + + } + + #endregion + + private DevExpress.XtraLayout.LayoutControl layoutControl1; + private DevExpress.XtraLayout.LayoutControlGroup Root; + private DevExpress.XtraEditors.GroupControl gbSerialNo; + private DevExpress.XtraLayout.LayoutControl layoutControl2; + private DevExpress.XtraEditors.TextEdit nMdNo; + private DevExpress.XtraEditors.LabelControl lbMdSerial; + private DevExpress.XtraLayout.LayoutControlGroup layoutControlGroup1; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem3; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem4; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem1; + private DevExpress.XtraEditors.SimpleButton btnClose; + private DevExpress.XtraEditors.SimpleButton btnInvWrite; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem5; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem2; + private DevExpress.XtraLayout.EmptySpaceItem emptySpaceItem1; + private System.Windows.Forms.Timer tmrDisplay; + private System.Windows.Forms.Timer tmrCmd; + private DevExpress.XtraEditors.GroupControl groupControl1; + private DevExpress.XtraLayout.LayoutControl layoutControl3; + private DevExpress.XtraEditors.LabelControl lbPcbSerial; + private DevExpress.XtraLayout.LayoutControlGroup layoutControlGroup2; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem6; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem8; + private DevExpress.XtraEditors.GroupControl groupControl2; + private DevExpress.XtraLayout.LayoutControl layoutControl4; + private DevExpress.XtraEditors.LabelControl lbResult; + private DevExpress.XtraLayout.LayoutControlGroup layoutControlGroup3; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem7; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem10; + private DevExpress.XtraEditors.SimpleButton btnExportExcel; + private System.Windows.Forms.DataGridView mnView; + private DevExpress.XtraLayout.LayoutControlGroup gbDvResult; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem11; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem9; + private DevExpress.XtraEditors.SimpleButton btnRefresh; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem12; + } +} \ No newline at end of file diff --git a/LFP_Manager_PRM/Forms/fmxInventoryConfig2.cs b/LFP_Manager_PRM/Forms/fmxInventoryConfig2.cs new file mode 100644 index 0000000..a55f679 --- /dev/null +++ b/LFP_Manager_PRM/Forms/fmxInventoryConfig2.cs @@ -0,0 +1,406 @@ +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Data; +using System.Drawing; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using System.Windows.Forms; + +using LFP_Manager.DataStructure; +using LFP_Manager.Function; +using LFP_Manager.Controls; +using LFP_Manager.Utils; + +namespace LFP_Manager.Forms +{ + public partial class fmxInventoryConfig2 : DevExpress.XtraEditors.XtraForm + { + #region VARIABLES + + private bool fBarCode = false; + private bool ctrlKey = false; + + private CommConfig Config; + private int SystemId = 0; + private int CmdResult = 0; + private int CellDivUnit = 0; + private DeviceSystemData SystemData; + private DeviceInforation wInvDate; + + private string oldMdSn; + + public event InvDataUpdateEvent OnUpdate = null; + public event InvDateCmdEvent OnCommand = null; + + #endregion + + #region CONSTRUCTORS + public fmxInventoryConfig2() + { + InitializeComponent(); + } + + public fmxInventoryConfig2(CommConfig aConfig, int sId, ref DeviceSystemData aSystemData, int aCellDivUnit) + { + InitializeComponent(); + + oldMdSn = ""; + Config = aConfig; + SystemId = sId; + SystemData = aSystemData; + SystemData.mNo = SystemId; + + CellDivUnit = aCellDivUnit; + + tmrDisplay.Enabled = true; + tmrCmd.Enabled = true; + + KeyPreview = true; + KeyDown += new KeyEventHandler(teBarCode_KeyDown); + KeyPress += new KeyPressEventHandler(teBarCode_KeyPress); + } + #endregion + + void InitData() + { + wInvDate = new DeviceInforation + { + module_sn = new byte[32] + }; + } + + #region TIMER ENVENT + + private void tmrDisplay_Tick(object sender, EventArgs e) + { + DisplayValue(); + OnUpdate?.Invoke(this); + } + + #endregion + + #region PUBLIC FUCTIONS + public void UpdateData(ref DeviceSystemData aSystemData) + { + SystemData = aSystemData; + } + + #endregion + + #region PROCESSING DATA + + private bool CheckMdSerialNo(string mSN) + { + bool result = false; + + csDbUtils.MdDbCreate(Config, mSN); + + DataTable dtMdData = new DataTable(); + DataTable dtMdMatch = new DataTable(); + DataTable dtErrorLog = new DataTable(); + + //string sql = String.Format("SELECT * FROM TInventoryData WHERE pcb_sn = {0}", bSN); + string sql = String.Format("SELECT * FROM TInventoryData"); + dtMdData = csDbUtils.GetDataTableBySelect(Config, mSN, sql, "TInventoryData"); + + if (dtMdData != null) + { + if (dtMdData.Rows.Count > 1) + { + DataRow[] arrRows = null; + arrRows = dtMdData.Select(String.Format("module_sn = '{0}'", mSN)); + if (arrRows.Length > 0) { result = true; } + } + } + return result; + } + private void CmdMDateWrite() + { + UInt32 mTimeStamp = csUtils.CalcKKTimeStamp(DateTime.Now); + wInvDate.ManufactureDate = mTimeStamp; + + OnCommand?.Invoke(SystemId, 999, 1, ref wInvDate); + } + + private void CheckResult() + { + byte[] a = Encoding.UTF8.GetBytes(nMdNo.Text); + byte[] b = SystemData.Information.pcb_sn; + + try + { + csDbUtils.MdLogDataInsert(ref Config, nMdNo.Text, ref SystemData, DateTime.Now, CellDivUnit); + csDbUtils.MdSnDataInsert(Config, SystemData, nMdNo.Text); + + oldMdSn = nMdNo.Text; + + //MessageBox.Show(String.Format("Module data insert complete - [{0}]", nMdNo.Text) + // , "Information" + // , MessageBoxButtons.OK + // , MessageBoxIcon.Information + // ); + lbResult.Text = String.Format("PASS: {0}", String.Format("Module data insert complete - [{0}]", nMdNo.Text)); + lbResult.ForeColor = Color.Blue; + } + catch (Exception ex) + { + throw new Exception(String.Format("Module data insert fail - [{0}] \r\n{1}", nMdNo.Text, ex.Message)); + //MessageBox.Show(String.Format("Module data insert fail - [{0}] \r\n{1}", nMdNo.Text, ex.Message) + // , "Warning" + // , MessageBoxButtons.OK + // , MessageBoxIcon.Warning + // ); + } + } + + private bool SelectModuleSN(string mSN) + { + bool result = false; + + //string sql = String.Format("SELECT * FROM TInventoryData WHERE pcb_sn = {0}", bSN); + string sql = String.Format("SELECT * FROM TModuleValue"); + DataTable dtMdData = csDbUtils.GetDataTableBySelect(Config, mSN, sql, "TModuleValue"); + + if (dtMdData != null) + { + if (dtMdData.Rows.Count > 0) + { + mnView.DataSource = dtMdData; + //DataRow[] arrRows = null; + //arrRows = dtMdData.Select(String.Format("module_sn = '{0}'", mSN)); + //if (arrRows.Length > 0) { result = true; } + } + gbDvResult.Text = string.Format("Module Number List ({0})", dtMdData.Rows.Count); + } + return result; + } + + #endregion + + #region BUTTON EVENT + + private void btnInvWrite_Click(object sender, EventArgs e) + { + string result = ""; + try + { + if (nMdNo.Text.Length == 24) + { + csDbUtils.MdDbCreate(Config, nMdNo.Text); + if ((SystemData.Information.pcb_sn == null) || (SystemData.Information.pcb_sn == null) || (SystemData.Information.pcb_sn[0] == 0)) + { + result = "No BMS Serial Number - Please check CAN communication"; + return; + } + + if (CheckMdSerialNo(nMdNo.Text) == false) + { + CheckResult(); + + //byte[] mSN = Encoding.UTF8.GetBytes(nMdNo.Text); + + //if (wInvDate.module_sn == null) wInvDate.module_sn = new byte[32]; + //for (int i = 0; i < wInvDate.module_sn.Length; i++) + //{ + // wInvDate.module_sn[i] = 0; + //} + //for (int i = 0; i < mSN.Length; i++) + //{ + // wInvDate.module_sn[i] = mSN[i]; + //} + //CmdMDateWrite(); + + //CmdResult = 1; + } + else + { + result = "Already used Module serial number"; + } + } + } + catch (Exception ex) + { + result = ex.Message; + } + finally + { + if (result != "") + { + //_ = MessageBox.Show(string.Format("{0} - [{1}]", result, nMdNo.Text) + // , "Warning" + // , MessageBoxButtons.OK + // , MessageBoxIcon.Warning + // ); + lbResult.Text = String.Format("Fail: {0}", result); + lbResult.ForeColor = Color.Red; + + csLog.SystemErrorLog(Config, result, DateTime.Now, Application.ExecutablePath); + } + oldMdSn = nMdNo.Text; + nMdNo.Text = ""; + } + } + #endregion + + #region DISPLAY DATA + + private void DisplayValue() + { + // Device PCB S/N + byte[] tmpPcbNo = new byte[SystemData.Information.pcb_sn.Length + 1]; + for (int i = 0; i < SystemData.Information.pcb_sn.Length; i++) + { + tmpPcbNo[i] = SystemData.Information.pcb_sn[i]; + } + tmpPcbNo[SystemData.Information.pcb_sn.Length] = 0; + + string strPcbSerial = Encoding.Default.GetString(tmpPcbNo).Trim('\0'); + lbPcbSerial.Text = String.Format("BMS S/N: {0}", strPcbSerial); + + // Device Module S/N + byte[] tmpMdNo = new byte[SystemData.Information.module_sn.Length + 1]; + for (int i = 0; i < SystemData.Information.module_sn.Length; i++) + { + tmpMdNo[i] = SystemData.Information.module_sn[i]; + } + tmpMdNo[SystemData.Information.module_sn.Length] = 0; + + string strMdSerial = Encoding.Default.GetString(tmpMdNo).Trim('\0'); + lbMdSerial.Text = String.Format("Module S/N: {0}", strMdSerial); + } + + #endregion + + #region GLOBAL KEYBOARD HOOK + private void fmxInventoryConfig2_Load(object sender, EventArgs e) + { + } + + private void teBarCode_KeyPress(object sender, KeyPressEventArgs e) + { + if (fBarCode == false) + { + if (e.KeyChar == 0x0D) + { + fBarCode = true; + + btnInvWrite_Click(sender, e); + //checkBarCode1(nMdNo.Text); + } + else if (e.KeyChar == 22) + { + //ctrlKey = true; + IDataObject ido = Clipboard.GetDataObject(); + if (ido.GetDataPresent(typeof(string))) + { + nMdNo.Text = (string)ido.GetData(typeof(string)); + } + } + else if (e.KeyChar > 0x20) + { + if (e.KeyChar == 'v') + { + if (ctrlKey) + { + IDataObject ido = Clipboard.GetDataObject(); + if (ido.GetDataPresent(typeof(string))) + { + nMdNo.Text = (string)ido.GetData(typeof(string)); + } + } + } + else + { + nMdNo.Text += e.KeyChar; + } + } + } + } + + private void teBarCode_KeyDown(object sender, KeyEventArgs e) + { + if (fBarCode) + { + nMdNo.Text = ""; + fBarCode = false; + } + } + + public void checkBarCode1(string code) + { + if (CheckMdSerialNo(code)) + { + + } + else + { + + } + + //if (dt.Rows.Count > 0) + //{ + // DataRow aRow = dt.Rows[0]; + + // MakeCellInformation(aRow); + // MakeCellAssyNo(aRow); + //} + //else + //{ + // MakeBarCodeForm("The data could" + Environment.NewLine + "not be found." + Environment.NewLine + "(无数据)", 1); + //} + } + + private void MakeBarCodeForm(string result, int flag) + { + lbResult.Text = result; + switch (flag) + { + case 0: + lbResult.ForeColor = Color.Blue; + break; + case 1: + lbResult.ForeColor = Color.Red; + break; + } + } + + #endregion + + #region BUTTON EVENT + + private void btnClose_Click(object sender, EventArgs e) + { + Close(); + } + + private void btnRefresh_Click(object sender, EventArgs e) + { + try + { + string lotNo; + if (oldMdSn == "") + { + lotNo = "01PPBCNA013006CAW0000019"; + } + else + { + lotNo = oldMdSn; + } + SelectModuleSN(lotNo); + mnView.AutoResizeColumns(); + } + catch (Exception ex) + { + MessageBox.Show(ex.Message, "Warning", MessageBoxButtons.OK, MessageBoxIcon.Warning); + } + } + + private void btnExportExcel_Click(object sender, EventArgs e) + { + // + } + #endregion + } +} \ No newline at end of file diff --git a/LFP_Manager_PRM/Forms/fmxInventoryConfig2.resx b/LFP_Manager_PRM/Forms/fmxInventoryConfig2.resx new file mode 100644 index 0000000..ae2c14f --- /dev/null +++ b/LFP_Manager_PRM/Forms/fmxInventoryConfig2.resx @@ -0,0 +1,154 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + 17, 17 + + + 128, 17 + + + + + iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO + wwAADsMBx2+oZAAABMxJREFUWEflVWtsFVUQPrdtSvilMRIVY8T4h1/aoDGKqIWCIBXR+IgaAmriD/CR + SIyVYjSSPmhLrVVTBa6tQNGIBSqYCEEera34KCqFEmgLNa34qPRaeqHv23G+2Z3tXrp3u/iHGCeZnN09 + M2e++WbOrKFLLP8dACMjI87qp2oTVAIBcB8Y8zncvRcUxEUxoIdGon3UdbbX0TPdvdR9vl/23HZBZFwA + euDQcEzedze00aSF79Ckx9+nKx8rc3Tyo2V0+GSn2AyzbVAgvgD0gFgsRsOsfQNDNPXZCjLpq8nc9xaZ + ucWW4vmuPJqZ9Rm8xDZIcEggBjT7VR8fJHNnLiUveNsKOr/EUn5Ovp+/MYhNe5vEFj5BWEgIQJ1BJ5qr + 5dcITcwsoZBmzIFDeBcA9jq7iK554gOK9PQJC8KEfVYiGbcEmv0Db1aTuTufkjKt7CXgvWu4BKw2C0lg + YUYevbTugPgM2iz4iScAzX5waFjePz/YSmZWgUWzBuJSLF+7nx7J3SlB5Rv2GMwEXrUhxyvFGABqiMaD + 87neAbrxqTCF5hRx9hbVoTlr6CrufDRly+kIpc4rpiQO6oCbWUDpWVvsJPxZGAsAyg5KffZHdXGNJ+s9 + +bRhz1HZh7xa8bU0oGMDEPxeufeY7PuxEAdAjfQeH2/vsrJj9coOB6PRengITVmyXpjRxgzZDfk3Dy3Y + gFGN4RbPEgAAZP7r26zGc+rL2fEt+Kn1TweA9smWmuNim8pDCgxgxfsKZgeiLFwoDgBs6qGQ7fUtdtcn + 6HAOjMxgj17AikFk0t7gkuWRmZ5L5o4cMrfnUE1jB9uOMusGIgD0g0w8NoqeH6Api9eTySi06LQpvW7R + Ojp7rl8Cs5P4uAX/hWwGmF1RJ5mv3FBHr5Tto+pvWmXfi4U4BpTOrPLa+KuFldn4lGmGACSGTUPzH7Tn + 0C9UsfsIlWxtoPCXjfTF96dox7etcnWhO787SZ981UT1TactXwbvZsHoi9JztO0vuceotwTH4OGun51d + JVmrHcB2MxsdnT104HA7vcYZX79orVUCph2ApRQzuBTTc+jyh96l385ExzQkA7AecDAkY0UVB1w9mj0r + bsKRtk4ZyQrAS/C9fFcjXc1/RsNzI3VhKaXwORMetBpycfEusXOXgksw2nib9x3j+5vvTDy511wK3HMI + slZHrKrICnua2YmOCE19+kOrh7SJsc4qpP0/t4uNgjB4wAGo6bVPMoUZRaONx1ncsCRMUZ6GsIFCFARE + QejzwOCQPDfzz+syvopJ87SUDCC9gG5etpFt+AZxXAA2vf2Ww3LuXtTMoR4OXPtt9c2yr9m7g7tF9uy1 + 3wZRWv3j2Gbm95Lth2Qf11duQeOpTmm8FM4agVMWlErN5q7cKoZe18dL1AaZwQd609KNMj1RTpydzP10 + xcPv0e9dUbbjEuBeT3u+0upcrhmMETyFJ96Jjq64xgsKAmqBJqrlISQ3gumXs3memNtWUSZPWYjJCtdS + 2nObaNoLlQLk1hc3Uxo3UGHVD2Lg1/V+Ah/tmZfDNZT2TLmcjRi3sCLmDvzmUYdEguw1+MWAcPv4+aH/ + nFGMYKryzvVR8TskkaiPnuUVA+JMQi+F6Ppv5MLzvNT5F1wq+b8DIPoHjJf5qaq9hPwAAAAASUVORK5C + YII= + + + \ No newline at end of file diff --git a/LFP_Manager_PRM/Forms/fmxMain.Designer.cs b/LFP_Manager_PRM/Forms/fmxMain.Designer.cs new file mode 100644 index 0000000..21e9099 --- /dev/null +++ b/LFP_Manager_PRM/Forms/fmxMain.Designer.cs @@ -0,0 +1,696 @@ +namespace LFP_Manager.Forms +{ + partial class fmxMain + { + /// + /// Required designer variable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Clean up any resources being used. + /// + /// true if managed resources should be disposed; otherwise, false. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Windows Form Designer generated code + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + this.components = new System.ComponentModel.Container(); + System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(fmxMain)); + this.menuStrip1 = new System.Windows.Forms.MenuStrip(); + this.fileToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.exitToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.configToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.commConfigToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.updateToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.firmwareUpdateCANToolStripMenuItem1 = new System.Windows.Forms.ToolStripMenuItem(); + this.firmwareImageConveterToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.historyToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.historyViewToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.databaseToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.checkDBToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.layoutControl1 = new DevExpress.XtraLayout.LayoutControl(); + this.edMaxModule = new DevExpress.XtraEditors.TextEdit(); + this.btnPrevID = new DevExpress.XtraEditors.SimpleButton(); + this.ModuleIdSet = new LFP_Manager.Controls.ucModuleIdSet(); + this.btnNextID = new DevExpress.XtraEditors.SimpleButton(); + this.ucCommConfig = new LFP_Manager.Controls.ucCommConfig2(); + this.chbPolling = new DevExpress.XtraEditors.CheckEdit(); + this.edSystemId = new DevExpress.XtraEditors.TextEdit(); + this.statusStrip1 = new System.Windows.Forms.StatusStrip(); + this.CommStausBar = new System.Windows.Forms.ToolStripStatusLabel(); + this.HeatBeatStatusBar = new System.Windows.Forms.ToolStripStatusLabel(); + this.LogStatusBar = new System.Windows.Forms.ToolStripStatusLabel(); + this.uDataLog = new LFP_Manager.Controls.ucDataLog(); + this.uEventLog = new LFP_Manager.Controls.ucEventLog(); + this.tabStatus = new DevExpress.XtraTab.XtraTabControl(); + this.pgSystem = new DevExpress.XtraTab.XtraTabPage(); + this.layoutControl2 = new DevExpress.XtraLayout.LayoutControl(); + this.ucSystem = new LFP_Manager.Controls.ucShelfStatus(); + this.layoutControlGroup2 = new DevExpress.XtraLayout.LayoutControlGroup(); + this.layoutControlItem3 = new DevExpress.XtraLayout.LayoutControlItem(); + this.layoutControlMain = new DevExpress.XtraLayout.LayoutControlGroup(); + this.layoutControlItem2 = new DevExpress.XtraLayout.LayoutControlItem(); + this.layoutControlItem6 = new DevExpress.XtraLayout.LayoutControlItem(); + this.layoutControlItem7 = new DevExpress.XtraLayout.LayoutControlItem(); + this.layoutControlItem8 = new DevExpress.XtraLayout.LayoutControlItem(); + this.lcitemSystemId = new DevExpress.XtraLayout.LayoutControlItem(); + this.layoutControlItem16 = new DevExpress.XtraLayout.LayoutControlItem(); + this.layoutControlItem1 = new DevExpress.XtraLayout.LayoutControlItem(); + this.layoutControlItem4 = new DevExpress.XtraLayout.LayoutControlItem(); + this.layoutControlItem5 = new DevExpress.XtraLayout.LayoutControlItem(); + this.layoutControlItem9 = new DevExpress.XtraLayout.LayoutControlItem(); + this.layoutControlItem10 = new DevExpress.XtraLayout.LayoutControlItem(); + this.tmrCheckThreadMsg = new System.Windows.Forms.Timer(this.components); + this.tmrTest = new System.Windows.Forms.Timer(this.components); + this.chkDcp = new DevExpress.XtraEditors.CheckEdit(); + this.layoutControlItem11 = new DevExpress.XtraLayout.LayoutControlItem(); + this.menuStrip1.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControl1)).BeginInit(); + this.layoutControl1.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.edMaxModule.Properties)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.chbPolling.Properties)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.edSystemId.Properties)).BeginInit(); + this.statusStrip1.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.tabStatus)).BeginInit(); + this.tabStatus.SuspendLayout(); + this.pgSystem.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControl2)).BeginInit(); + this.layoutControl2.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup2)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem3)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlMain)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem2)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem6)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem7)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem8)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.lcitemSystemId)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem16)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem1)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem4)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem5)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem9)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem10)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.chkDcp.Properties)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem11)).BeginInit(); + this.SuspendLayout(); + // + // menuStrip1 + // + this.menuStrip1.Items.AddRange(new System.Windows.Forms.ToolStripItem[] { + this.fileToolStripMenuItem, + this.configToolStripMenuItem, + this.updateToolStripMenuItem, + this.historyToolStripMenuItem, + this.databaseToolStripMenuItem}); + this.menuStrip1.Location = new System.Drawing.Point(0, 0); + this.menuStrip1.Name = "menuStrip1"; + this.menuStrip1.Size = new System.Drawing.Size(1334, 24); + this.menuStrip1.TabIndex = 0; + this.menuStrip1.Text = "menuStrip1"; + // + // fileToolStripMenuItem + // + this.fileToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] { + this.exitToolStripMenuItem}); + this.fileToolStripMenuItem.Name = "fileToolStripMenuItem"; + this.fileToolStripMenuItem.Size = new System.Drawing.Size(37, 20); + this.fileToolStripMenuItem.Text = "File"; + // + // exitToolStripMenuItem + // + this.exitToolStripMenuItem.Name = "exitToolStripMenuItem"; + this.exitToolStripMenuItem.Size = new System.Drawing.Size(93, 22); + this.exitToolStripMenuItem.Text = "Exit"; + this.exitToolStripMenuItem.Click += new System.EventHandler(this.exitToolStripMenuItem_Click); + // + // configToolStripMenuItem + // + this.configToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] { + this.commConfigToolStripMenuItem}); + this.configToolStripMenuItem.Name = "configToolStripMenuItem"; + this.configToolStripMenuItem.Size = new System.Drawing.Size(55, 20); + this.configToolStripMenuItem.Text = "Config"; + // + // commConfigToolStripMenuItem + // + this.commConfigToolStripMenuItem.Name = "commConfigToolStripMenuItem"; + this.commConfigToolStripMenuItem.Size = new System.Drawing.Size(150, 22); + this.commConfigToolStripMenuItem.Text = "Comm.Config"; + this.commConfigToolStripMenuItem.Click += new System.EventHandler(this.commConfigToolStripMenuItem_Click); + // + // updateToolStripMenuItem + // + this.updateToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] { + this.firmwareUpdateCANToolStripMenuItem1, + this.firmwareImageConveterToolStripMenuItem}); + this.updateToolStripMenuItem.Name = "updateToolStripMenuItem"; + this.updateToolStripMenuItem.Size = new System.Drawing.Size(57, 20); + this.updateToolStripMenuItem.Text = "Update"; + // + // firmwareUpdateCANToolStripMenuItem1 + // + this.firmwareUpdateCANToolStripMenuItem1.Name = "firmwareUpdateCANToolStripMenuItem1"; + this.firmwareUpdateCANToolStripMenuItem1.Size = new System.Drawing.Size(212, 22); + this.firmwareUpdateCANToolStripMenuItem1.Text = "Firmware Update (CAN)"; + this.firmwareUpdateCANToolStripMenuItem1.Click += new System.EventHandler(this.firmwareUpdateCANToolStripMenuItem_Click); + // + // firmwareImageConveterToolStripMenuItem + // + this.firmwareImageConveterToolStripMenuItem.Name = "firmwareImageConveterToolStripMenuItem"; + this.firmwareImageConveterToolStripMenuItem.Size = new System.Drawing.Size(212, 22); + this.firmwareImageConveterToolStripMenuItem.Text = "Firmware Image Conveter"; + this.firmwareImageConveterToolStripMenuItem.Click += new System.EventHandler(this.firmwareImageConveterToolStripMenuItem_Click); + // + // historyToolStripMenuItem + // + this.historyToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] { + this.historyViewToolStripMenuItem}); + this.historyToolStripMenuItem.Name = "historyToolStripMenuItem"; + this.historyToolStripMenuItem.Size = new System.Drawing.Size(57, 20); + this.historyToolStripMenuItem.Text = "History"; + // + // historyViewToolStripMenuItem + // + this.historyViewToolStripMenuItem.Name = "historyViewToolStripMenuItem"; + this.historyViewToolStripMenuItem.Size = new System.Drawing.Size(142, 22); + this.historyViewToolStripMenuItem.Text = "History View"; + this.historyViewToolStripMenuItem.Click += new System.EventHandler(this.historyViewToolStripMenuItem_Click); + // + // databaseToolStripMenuItem + // + this.databaseToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] { + this.checkDBToolStripMenuItem}); + this.databaseToolStripMenuItem.Name = "databaseToolStripMenuItem"; + this.databaseToolStripMenuItem.Size = new System.Drawing.Size(68, 20); + this.databaseToolStripMenuItem.Text = "Database"; + // + // checkDBToolStripMenuItem + // + this.checkDBToolStripMenuItem.Name = "checkDBToolStripMenuItem"; + this.checkDBToolStripMenuItem.Size = new System.Drawing.Size(127, 22); + this.checkDBToolStripMenuItem.Text = "Check DB"; + this.checkDBToolStripMenuItem.Click += new System.EventHandler(this.checkDBToolStripMenuItem_Click); + // + // layoutControl1 + // + this.layoutControl1.Controls.Add(this.chkDcp); + this.layoutControl1.Controls.Add(this.edMaxModule); + this.layoutControl1.Controls.Add(this.btnPrevID); + this.layoutControl1.Controls.Add(this.ModuleIdSet); + this.layoutControl1.Controls.Add(this.btnNextID); + this.layoutControl1.Controls.Add(this.ucCommConfig); + this.layoutControl1.Controls.Add(this.chbPolling); + this.layoutControl1.Controls.Add(this.edSystemId); + this.layoutControl1.Controls.Add(this.statusStrip1); + this.layoutControl1.Controls.Add(this.uDataLog); + this.layoutControl1.Controls.Add(this.uEventLog); + this.layoutControl1.Controls.Add(this.tabStatus); + this.layoutControl1.Dock = System.Windows.Forms.DockStyle.Fill; + this.layoutControl1.Location = new System.Drawing.Point(0, 24); + this.layoutControl1.Name = "layoutControl1"; + this.layoutControl1.OptionsCustomizationForm.DesignTimeCustomizationFormPositionAndSize = new System.Drawing.Rectangle(305, 211, 613, 350); + this.layoutControl1.Root = this.layoutControlMain; + this.layoutControl1.Size = new System.Drawing.Size(1334, 744); + this.layoutControl1.TabIndex = 1; + this.layoutControl1.Text = "layoutControl1"; + // + // edMaxModule + // + this.edMaxModule.EditValue = "1"; + this.edMaxModule.Location = new System.Drawing.Point(961, 555); + this.edMaxModule.Name = "edMaxModule"; + this.edMaxModule.Properties.Appearance.Font = new System.Drawing.Font("Tahoma", 10F); + this.edMaxModule.Properties.Appearance.Options.UseFont = true; + this.edMaxModule.Properties.Appearance.Options.UseTextOptions = true; + this.edMaxModule.Properties.Appearance.TextOptions.HAlignment = DevExpress.Utils.HorzAlignment.Far; + this.edMaxModule.Size = new System.Drawing.Size(82, 22); + this.edMaxModule.StyleController = this.layoutControl1; + this.edMaxModule.TabIndex = 10; + this.edMaxModule.EditValueChanged += new System.EventHandler(this.edMaxModule_EditValueChanged); + // + // btnPrevID + // + this.btnPrevID.Location = new System.Drawing.Point(1213, 555); + this.btnPrevID.Name = "btnPrevID"; + this.btnPrevID.Size = new System.Drawing.Size(57, 22); + this.btnPrevID.StyleController = this.layoutControl1; + this.btnPrevID.TabIndex = 9; + this.btnPrevID.Text = "Prev"; + this.btnPrevID.Click += new System.EventHandler(this.btnPrevID_Click); + // + // ModuleIdSet + // + this.ModuleIdSet.Location = new System.Drawing.Point(823, 581); + this.ModuleIdSet.Name = "ModuleIdSet"; + this.ModuleIdSet.Size = new System.Drawing.Size(220, 136); + this.ModuleIdSet.TabIndex = 8; + // + // btnNextID + // + this.btnNextID.Location = new System.Drawing.Point(1274, 555); + this.btnNextID.Name = "btnNextID"; + this.btnNextID.Size = new System.Drawing.Size(57, 22); + this.btnNextID.StyleController = this.layoutControl1; + this.btnNextID.TabIndex = 7; + this.btnNextID.Text = "Next"; + this.btnNextID.Click += new System.EventHandler(this.btnNextID_Click); + // + // ucCommConfig + // + this.ucCommConfig.Location = new System.Drawing.Point(1213, 605); + this.ucCommConfig.Name = "ucCommConfig"; + this.ucCommConfig.Size = new System.Drawing.Size(118, 112); + this.ucCommConfig.TabIndex = 6; + // + // chbPolling + // + this.chbPolling.Location = new System.Drawing.Point(1140, 555); + this.chbPolling.Name = "chbPolling"; + this.chbPolling.Properties.Caption = "Polling"; + this.chbPolling.Size = new System.Drawing.Size(69, 20); + this.chbPolling.StyleController = this.layoutControl1; + this.chbPolling.TabIndex = 4; + this.chbPolling.CheckedChanged += new System.EventHandler(this.chbPolling_CheckedChanged); + // + // edSystemId + // + this.edSystemId.EditValue = "1"; + this.edSystemId.Location = new System.Drawing.Point(1082, 555); + this.edSystemId.Name = "edSystemId"; + this.edSystemId.Properties.Appearance.Font = new System.Drawing.Font("Tahoma", 10F); + this.edSystemId.Properties.Appearance.Options.UseFont = true; + this.edSystemId.Properties.Appearance.Options.UseTextOptions = true; + this.edSystemId.Properties.Appearance.TextOptions.HAlignment = DevExpress.Utils.HorzAlignment.Far; + this.edSystemId.Size = new System.Drawing.Size(54, 22); + this.edSystemId.StyleController = this.layoutControl1; + this.edSystemId.TabIndex = 3; + this.edSystemId.KeyPress += new System.Windows.Forms.KeyPressEventHandler(this.edSystemId_KeyPress); + // + // statusStrip1 + // + this.statusStrip1.AutoSize = false; + this.statusStrip1.Dock = System.Windows.Forms.DockStyle.None; + this.statusStrip1.Items.AddRange(new System.Windows.Forms.ToolStripItem[] { + this.CommStausBar, + this.HeatBeatStatusBar, + this.LogStatusBar}); + this.statusStrip1.Location = new System.Drawing.Point(3, 721); + this.statusStrip1.Name = "statusStrip1"; + this.statusStrip1.Size = new System.Drawing.Size(1328, 20); + this.statusStrip1.TabIndex = 1; + this.statusStrip1.Text = "statusStrip1"; + // + // CommStausBar + // + this.CommStausBar.AutoSize = false; + this.CommStausBar.ForeColor = System.Drawing.Color.Black; + this.CommStausBar.Name = "CommStausBar"; + this.CommStausBar.Size = new System.Drawing.Size(200, 15); + this.CommStausBar.Text = "Comm: OFF"; + this.CommStausBar.TextAlign = System.Drawing.ContentAlignment.MiddleLeft; + // + // HeatBeatStatusBar + // + this.HeatBeatStatusBar.AutoSize = false; + this.HeatBeatStatusBar.ForeColor = System.Drawing.Color.Black; + this.HeatBeatStatusBar.Name = "HeatBeatStatusBar"; + this.HeatBeatStatusBar.Size = new System.Drawing.Size(200, 15); + this.HeatBeatStatusBar.TextAlign = System.Drawing.ContentAlignment.MiddleLeft; + // + // LogStatusBar + // + this.LogStatusBar.AutoSize = false; + this.LogStatusBar.Name = "LogStatusBar"; + this.LogStatusBar.Size = new System.Drawing.Size(650, 15); + this.LogStatusBar.Text = "Log Stop"; + this.LogStatusBar.TextAlign = System.Drawing.ContentAlignment.MiddleRight; + // + // uDataLog + // + this.uDataLog.Location = new System.Drawing.Point(1047, 581); + this.uDataLog.Name = "uDataLog"; + this.uDataLog.Size = new System.Drawing.Size(162, 136); + this.uDataLog.TabIndex = 5; + // + // uEventLog + // + this.uEventLog.Location = new System.Drawing.Point(3, 555); + this.uEventLog.Name = "uEventLog"; + this.uEventLog.Size = new System.Drawing.Size(816, 162); + this.uEventLog.TabIndex = 2; + // + // tabStatus + // + this.tabStatus.Location = new System.Drawing.Point(3, 3); + this.tabStatus.Name = "tabStatus"; + this.tabStatus.SelectedTabPage = this.pgSystem; + this.tabStatus.Size = new System.Drawing.Size(1328, 548); + this.tabStatus.TabIndex = 0; + this.tabStatus.TabPages.AddRange(new DevExpress.XtraTab.XtraTabPage[] { + this.pgSystem}); + // + // pgSystem + // + this.pgSystem.Controls.Add(this.layoutControl2); + this.pgSystem.Name = "pgSystem"; + this.pgSystem.Size = new System.Drawing.Size(1326, 522); + this.pgSystem.Text = "SYSTEM"; + // + // layoutControl2 + // + this.layoutControl2.Controls.Add(this.ucSystem); + this.layoutControl2.Dock = System.Windows.Forms.DockStyle.Fill; + this.layoutControl2.Location = new System.Drawing.Point(0, 0); + this.layoutControl2.Name = "layoutControl2"; + this.layoutControl2.Root = this.layoutControlGroup2; + this.layoutControl2.Size = new System.Drawing.Size(1326, 522); + this.layoutControl2.TabIndex = 0; + this.layoutControl2.Text = "layoutControl2"; + // + // ucSystem + // + this.ucSystem.Location = new System.Drawing.Point(3, 3); + this.ucSystem.Name = "ucSystem"; + this.ucSystem.Size = new System.Drawing.Size(1320, 516); + this.ucSystem.TabIndex = 4; + // + // layoutControlGroup2 + // + this.layoutControlGroup2.CustomizationFormText = "layoutControlGroup2"; + this.layoutControlGroup2.EnableIndentsWithoutBorders = DevExpress.Utils.DefaultBoolean.True; + this.layoutControlGroup2.GroupBordersVisible = false; + this.layoutControlGroup2.Items.AddRange(new DevExpress.XtraLayout.BaseLayoutItem[] { + this.layoutControlItem3}); + this.layoutControlGroup2.Name = "layoutControlGroup2"; + this.layoutControlGroup2.Padding = new DevExpress.XtraLayout.Utils.Padding(1, 1, 1, 1); + this.layoutControlGroup2.Size = new System.Drawing.Size(1326, 522); + this.layoutControlGroup2.TextVisible = false; + // + // layoutControlItem3 + // + this.layoutControlItem3.Control = this.ucSystem; + this.layoutControlItem3.CustomizationFormText = "layoutControlItem3"; + this.layoutControlItem3.Location = new System.Drawing.Point(0, 0); + this.layoutControlItem3.Name = "layoutControlItem3"; + this.layoutControlItem3.Size = new System.Drawing.Size(1324, 520); + this.layoutControlItem3.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem3.TextVisible = false; + // + // layoutControlMain + // + this.layoutControlMain.CustomizationFormText = "layoutControlGroup1"; + this.layoutControlMain.EnableIndentsWithoutBorders = DevExpress.Utils.DefaultBoolean.True; + this.layoutControlMain.GroupBordersVisible = false; + this.layoutControlMain.Items.AddRange(new DevExpress.XtraLayout.BaseLayoutItem[] { + this.layoutControlItem2, + this.layoutControlItem6, + this.layoutControlItem7, + this.layoutControlItem8, + this.lcitemSystemId, + this.layoutControlItem16, + this.layoutControlItem1, + this.layoutControlItem4, + this.layoutControlItem5, + this.layoutControlItem9, + this.layoutControlItem10, + this.layoutControlItem11}); + this.layoutControlMain.Name = "Root"; + this.layoutControlMain.Padding = new DevExpress.XtraLayout.Utils.Padding(1, 1, 1, 1); + this.layoutControlMain.Size = new System.Drawing.Size(1334, 744); + this.layoutControlMain.TextVisible = false; + // + // layoutControlItem2 + // + this.layoutControlItem2.Control = this.tabStatus; + this.layoutControlItem2.CustomizationFormText = "layoutControlItem2"; + this.layoutControlItem2.Location = new System.Drawing.Point(0, 0); + this.layoutControlItem2.Name = "layoutControlItem2"; + this.layoutControlItem2.Size = new System.Drawing.Size(1332, 552); + this.layoutControlItem2.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem2.TextVisible = false; + // + // layoutControlItem6 + // + this.layoutControlItem6.Control = this.uEventLog; + this.layoutControlItem6.CustomizationFormText = "layoutControlItem6"; + this.layoutControlItem6.Location = new System.Drawing.Point(0, 552); + this.layoutControlItem6.MaxSize = new System.Drawing.Size(0, 166); + this.layoutControlItem6.MinSize = new System.Drawing.Size(209, 166); + this.layoutControlItem6.Name = "layoutControlItem6"; + this.layoutControlItem6.Size = new System.Drawing.Size(820, 166); + this.layoutControlItem6.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem6.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem6.TextVisible = false; + // + // layoutControlItem7 + // + this.layoutControlItem7.Control = this.uDataLog; + this.layoutControlItem7.CustomizationFormText = "layoutControlItem7"; + this.layoutControlItem7.Location = new System.Drawing.Point(1044, 578); + this.layoutControlItem7.MaxSize = new System.Drawing.Size(166, 0); + this.layoutControlItem7.MinSize = new System.Drawing.Size(166, 24); + this.layoutControlItem7.Name = "layoutControlItem7"; + this.layoutControlItem7.Size = new System.Drawing.Size(166, 140); + this.layoutControlItem7.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem7.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem7.TextVisible = false; + // + // layoutControlItem8 + // + this.layoutControlItem8.Control = this.statusStrip1; + this.layoutControlItem8.CustomizationFormText = "layoutControlItem8"; + this.layoutControlItem8.Location = new System.Drawing.Point(0, 718); + this.layoutControlItem8.MaxSize = new System.Drawing.Size(0, 24); + this.layoutControlItem8.MinSize = new System.Drawing.Size(104, 24); + this.layoutControlItem8.Name = "layoutControlItem8"; + this.layoutControlItem8.Size = new System.Drawing.Size(1332, 24); + this.layoutControlItem8.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem8.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem8.TextVisible = false; + // + // lcitemSystemId + // + this.lcitemSystemId.Control = this.edSystemId; + this.lcitemSystemId.CustomizationFormText = "System Id"; + this.lcitemSystemId.Location = new System.Drawing.Point(1044, 552); + this.lcitemSystemId.MinSize = new System.Drawing.Size(57, 26); + this.lcitemSystemId.Name = "lcitemSystemId"; + this.lcitemSystemId.Size = new System.Drawing.Size(93, 26); + this.lcitemSystemId.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.lcitemSystemId.Text = " ID "; + this.lcitemSystemId.TextAlignMode = DevExpress.XtraLayout.TextAlignModeItem.CustomSize; + this.lcitemSystemId.TextSize = new System.Drawing.Size(30, 14); + this.lcitemSystemId.TextToControlDistance = 5; + // + // layoutControlItem16 + // + this.layoutControlItem16.Control = this.chbPolling; + this.layoutControlItem16.CustomizationFormText = "layoutControlItem16"; + this.layoutControlItem16.Location = new System.Drawing.Point(1137, 552); + this.layoutControlItem16.Name = "layoutControlItem16"; + this.layoutControlItem16.Size = new System.Drawing.Size(73, 26); + this.layoutControlItem16.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem16.TextVisible = false; + // + // layoutControlItem1 + // + this.layoutControlItem1.Control = this.ucCommConfig; + this.layoutControlItem1.CustomizationFormText = "layoutControlItem1"; + this.layoutControlItem1.Location = new System.Drawing.Point(1210, 602); + this.layoutControlItem1.MaxSize = new System.Drawing.Size(122, 0); + this.layoutControlItem1.MinSize = new System.Drawing.Size(122, 50); + this.layoutControlItem1.Name = "layoutControlItem1"; + this.layoutControlItem1.Size = new System.Drawing.Size(122, 116); + this.layoutControlItem1.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem1.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem1.TextVisible = false; + // + // layoutControlItem4 + // + this.layoutControlItem4.Control = this.btnNextID; + this.layoutControlItem4.Location = new System.Drawing.Point(1271, 552); + this.layoutControlItem4.MinSize = new System.Drawing.Size(60, 26); + this.layoutControlItem4.Name = "layoutControlItem4"; + this.layoutControlItem4.Size = new System.Drawing.Size(61, 26); + this.layoutControlItem4.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem4.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem4.TextVisible = false; + // + // layoutControlItem5 + // + this.layoutControlItem5.Control = this.ModuleIdSet; + this.layoutControlItem5.Location = new System.Drawing.Point(820, 578); + this.layoutControlItem5.MaxSize = new System.Drawing.Size(224, 0); + this.layoutControlItem5.MinSize = new System.Drawing.Size(224, 140); + this.layoutControlItem5.Name = "layoutControlItem5"; + this.layoutControlItem5.Size = new System.Drawing.Size(224, 140); + this.layoutControlItem5.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem5.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem5.TextVisible = false; + // + // layoutControlItem9 + // + this.layoutControlItem9.Control = this.btnPrevID; + this.layoutControlItem9.Location = new System.Drawing.Point(1210, 552); + this.layoutControlItem9.MinSize = new System.Drawing.Size(40, 26); + this.layoutControlItem9.Name = "layoutControlItem9"; + this.layoutControlItem9.Size = new System.Drawing.Size(61, 26); + this.layoutControlItem9.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem9.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem9.TextVisible = false; + // + // layoutControlItem10 + // + this.layoutControlItem10.Control = this.edMaxModule; + this.layoutControlItem10.Location = new System.Drawing.Point(820, 552); + this.layoutControlItem10.MinSize = new System.Drawing.Size(121, 26); + this.layoutControlItem10.Name = "layoutControlItem10"; + this.layoutControlItem10.Size = new System.Drawing.Size(224, 26); + this.layoutControlItem10.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem10.Text = " Max Module per String"; + this.layoutControlItem10.TextSize = new System.Drawing.Size(126, 14); + // + // tmrCheckThreadMsg + // + this.tmrCheckThreadMsg.Tick += new System.EventHandler(this.tmrCheckThreadMsg_Tick); + // + // tmrTest + // + this.tmrTest.Enabled = true; + this.tmrTest.Interval = 2000; + this.tmrTest.Tick += new System.EventHandler(this.tmrTest_Tick); + // + // chkDcp + // + this.chkDcp.Location = new System.Drawing.Point(1213, 581); + this.chkDcp.Name = "chkDcp"; + this.chkDcp.Properties.Caption = " DCP"; + this.chkDcp.Size = new System.Drawing.Size(118, 20); + this.chkDcp.StyleController = this.layoutControl1; + this.chkDcp.TabIndex = 11; + this.chkDcp.CheckedChanged += new System.EventHandler(this.chkDcp_CheckedChanged); + // + // layoutControlItem11 + // + this.layoutControlItem11.Control = this.chkDcp; + this.layoutControlItem11.Location = new System.Drawing.Point(1210, 578); + this.layoutControlItem11.Name = "layoutControlItem11"; + this.layoutControlItem11.Size = new System.Drawing.Size(122, 24); + this.layoutControlItem11.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem11.TextVisible = false; + // + // fmxMain + // + this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 14F); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.ClientSize = new System.Drawing.Size(1334, 768); + this.Controls.Add(this.layoutControl1); + this.Controls.Add(this.menuStrip1); + this.IconOptions.Icon = ((System.Drawing.Icon)(resources.GetObject("fmxMain.IconOptions.Icon"))); + this.MainMenuStrip = this.menuStrip1; + this.Name = "fmxMain"; + this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen; + this.Text = "LFP SYSTEM"; + this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.fmxMain_FormClosing); + this.Load += new System.EventHandler(this.fmxMain_Load); + this.menuStrip1.ResumeLayout(false); + this.menuStrip1.PerformLayout(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControl1)).EndInit(); + this.layoutControl1.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.edMaxModule.Properties)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.chbPolling.Properties)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.edSystemId.Properties)).EndInit(); + this.statusStrip1.ResumeLayout(false); + this.statusStrip1.PerformLayout(); + ((System.ComponentModel.ISupportInitialize)(this.tabStatus)).EndInit(); + this.tabStatus.ResumeLayout(false); + this.pgSystem.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.layoutControl2)).EndInit(); + this.layoutControl2.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup2)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem3)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlMain)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem2)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem6)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem7)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem8)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.lcitemSystemId)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem16)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem1)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem4)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem5)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem9)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem10)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.chkDcp.Properties)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem11)).EndInit(); + this.ResumeLayout(false); + this.PerformLayout(); + + } + + #endregion + + private System.Windows.Forms.MenuStrip menuStrip1; + private System.Windows.Forms.ToolStripMenuItem fileToolStripMenuItem; + private System.Windows.Forms.ToolStripMenuItem configToolStripMenuItem; + private DevExpress.XtraLayout.LayoutControl layoutControl1; + private DevExpress.XtraLayout.LayoutControlGroup layoutControlMain; + private System.Windows.Forms.ToolStripMenuItem commConfigToolStripMenuItem; + private DevExpress.XtraTab.XtraTabControl tabStatus; + private DevExpress.XtraTab.XtraTabPage pgSystem; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem2; + private DevExpress.XtraLayout.LayoutControl layoutControl2; + private DevExpress.XtraLayout.LayoutControlGroup layoutControlGroup2; + private Controls.ucShelfStatus ucSystem; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem3; + private Controls.ucEventLog uEventLog; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem6; + private System.Windows.Forms.Timer tmrCheckThreadMsg; + private Controls.ucDataLog uDataLog; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem7; + private System.Windows.Forms.StatusStrip statusStrip1; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem8; + private System.Windows.Forms.ToolStripMenuItem exitToolStripMenuItem; + private System.Windows.Forms.ToolStripStatusLabel CommStausBar; + private System.Windows.Forms.ToolStripStatusLabel LogStatusBar; + private System.Windows.Forms.ToolStripStatusLabel HeatBeatStatusBar; + private DevExpress.XtraEditors.TextEdit edSystemId; + private DevExpress.XtraLayout.LayoutControlItem lcitemSystemId; + private DevExpress.XtraEditors.CheckEdit chbPolling; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem16; + private System.Windows.Forms.ToolStripMenuItem updateToolStripMenuItem; + private System.Windows.Forms.ToolStripMenuItem firmwareUpdateCANToolStripMenuItem1; + private System.Windows.Forms.ToolStripMenuItem firmwareImageConveterToolStripMenuItem; + private Controls.ucCommConfig2 ucCommConfig; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem1; + private System.Windows.Forms.Timer tmrTest; + private System.Windows.Forms.ToolStripMenuItem databaseToolStripMenuItem; + private System.Windows.Forms.ToolStripMenuItem checkDBToolStripMenuItem; + private System.Windows.Forms.ToolStripMenuItem historyToolStripMenuItem; + private System.Windows.Forms.ToolStripMenuItem historyViewToolStripMenuItem; + private DevExpress.XtraEditors.SimpleButton btnNextID; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem4; + private Controls.ucModuleIdSet ModuleIdSet; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem5; + private DevExpress.XtraEditors.SimpleButton btnPrevID; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem9; + private DevExpress.XtraEditors.TextEdit edMaxModule; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem10; + private DevExpress.XtraEditors.CheckEdit chkDcp; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem11; + } +} \ No newline at end of file diff --git a/LFP_Manager_PRM/Forms/fmxMain.cs b/LFP_Manager_PRM/Forms/fmxMain.cs new file mode 100644 index 0000000..92af4c2 --- /dev/null +++ b/LFP_Manager_PRM/Forms/fmxMain.cs @@ -0,0 +1,836 @@ +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Data; +using System.Drawing; +using System.Text; +using System.Linq; +using System.Windows.Forms; +using DevExpress.XtraEditors; + +using LFP_Manager.Forms; +using LFP_Manager.Controls; +using LFP_Manager.DataStructure; +using LFP_Manager.Function; +using LFP_Manager.Threads; +using LFP_Manager.Utils; + +namespace LFP_Manager.Forms +{ + public partial class fmxMain : DevExpress.XtraEditors.XtraForm + { + #region VARIABLES + + private fmxFwUpdate FwUpdateForm = null; + private fmxExcelFile DbControlFrom = null; + + private CommConfig Config; + private DeviceSystemData SystemData; + + private csCanThread canThread = null; + private csValueCanThread ValueCanThread = null; + + private csDbThread dbThread = null; + + private ucShelfStatus SystemStatus; + + private bool Active = false; + + #endregion + + #region CONSTRUCTORS + + public fmxMain() + { + InitializeComponent(); + + ComponentInit(); + + StructDataInit(); + + IniLoad(); + + DataInit(); + + ucCommConfig.OnStart += StartButtonClick; + + uDataLog.OnUpdate += LogStatusUpdate; + + edSystemId.Enabled = false; + + SystemStatus.OnCommand += SetCmdToCan; + SystemStatus.OnMsgPrint += TestLogMessage; + SystemStatus.Start(0, ref Config, ref SystemData); + edSystemId.Enabled = true; + + ModuleIdSet.OnCommand += SetCmdToCan; + + //this.Text = String.Format("LFP SYSTEM [{0}] -- PR-LFP MODULE", Application.ProductVersion); + this.Text = String.Format("LFP SYSTEM [{0}] -- PR-LFP MODULE - [{1}]" + , Application.ProductVersion + , csConstData.CommType.CAN_MODEL[Config.TargetModelIndex] + ); + + tmrCheckThreadMsg.Start(); + } + + private void ComponentInit() + { + SystemStatus = ucSystem; + } + + private void IniLoad() + { + Config = csIniControlFunction.IniLoad(Application.ExecutablePath, Config); + ucCommConfig.UpdateConfig(ref Config); + TypeChangedUpdate(ref Config); + } + + private void StructDataInit() + { + SystemData = new DeviceSystemData(); + Config = new CommConfig(); + } + + private void DataInit() + { + DataFunction.DataInit(ref SystemData, ref Config); + } + #endregion + + #region BUTTON EVENT + + private void ConfigButtonClick(object sender, EventArgs e) + { + foreach (Form frm in Application.OpenForms) + { + if (frm.Name == "fmxCommConfig") + { + frm.Activate(); + return; + } + } + fmxCommConfig CommConfigForm = new fmxCommConfig(); + CommConfigForm.Owner = this; + + CommConfigForm.OnUpdate += UpdateConfig; + CommConfigForm.Show(); + } + + private void StopProcess() + { + if (canThread != null) + { + canThread.disposeThread(); + canThread = null; + } + + if (ValueCanThread != null) + { + ValueCanThread.disposeThread(); + ValueCanThread = null; + } + + if (dbThread != null) + { + dbThread.Stop(); + dbThread.disposeThread(); + dbThread = null; + } + + Active = false; + + edSystemId.Enabled = true; + chbPolling.Enabled = true; + + DataInit(); + UpdateData(this, ref SystemData); + } + + private void StartProcessCAN() + { + // CAN MODE + int sId = 0; + + if (edSystemId.Text != null) + sId = Convert.ToInt16(edSystemId.Text); + + ucSystem.SystemIdSet(sId); + + canThread = new csCanThread(sId, Config, ref SystemData); + canThread.OnUpdate += UpdateData; + canThread.OnDataRecv += CanRecvData; + canThread.OnPrint += PrintLogMessage; + + if (canThread.Start(ref Config, sId, chbPolling.Checked)) + { + Active = true; + edSystemId.Enabled = false; + chbPolling.Enabled = true; + + if (chbPolling.Checked) + edSystemId.Enabled = false; + else + edSystemId.Enabled = true; + + canThread.SetPolling(chbPolling.Checked, Convert.ToInt32(edSystemId.Text), ref SystemData); + SystemStatus.UpdateSystemId(Convert.ToInt32(edSystemId.Text)); + + dbThread = new csDbThread(ref Config, ref SystemData); + dbThread.Start(Config); + } + else + { + if (canThread != null) + { + canThread.disposeThread(); + canThread = null; + } + } + } + + private void StartProcessValueCAN() + { + int sId = 0; + + if (edSystemId.Text != null) + sId = Convert.ToInt16(edSystemId.Text); + + ucSystem.SystemIdSet(sId); + + ValueCanThread = new csValueCanThread(sId, Config, ref SystemData); + ValueCanThread.OnUpdate += UpdateData; + ValueCanThread.OnDataRecv += CanRecvData; + ValueCanThread.OnPrint += PrintLogMessage; + + if (ValueCanThread.Start(Config, sId, chbPolling.Checked)) + { + Active = true; + edSystemId.Enabled = false; + chbPolling.Enabled = true; + + if (chbPolling.Checked) + edSystemId.Enabled = false; + else + edSystemId.Enabled = true; + + ValueCanThread.SetPolling(chbPolling.Checked, Convert.ToInt32(edSystemId.Text), ref SystemData); + SystemStatus.UpdateSystemId(Convert.ToInt32(edSystemId.Text)); + + dbThread = new csDbThread(ref Config, ref SystemData); + dbThread.Start(Config); + } + else + { + if (ValueCanThread != null) + { + ValueCanThread.disposeThread(); + ValueCanThread = null; + } + } + } + + private void StartButtonClick(object sender, EventArgs e) + { + if (Active) + { + StopProcess(); + } + else + { + switch (Config.CommType) + { + case csConstData.CommType.COMM_USBCAN: + switch (csCanConstData.CanDeviceInfo.DeviceIds[Config.CanDevice]) + { + case csCanConstData.CanDeviceInfo.VCI_VALUE_CAN4_1: // CAN MODE - ValueCAN + try + { + StartProcessValueCAN(); + } + catch (Exception ex) + { + MessageBox.Show(ex.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); + + if (ValueCanThread != null) + { + ValueCanThread.disposeThread(); + ValueCanThread = null; + } + } + break; + default: // CAN MODE - USBCAN + try + { + StartProcessCAN(); + } + catch (Exception ex) + { + MessageBox.Show(ex.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); + + if (canThread != null) + { + canThread.disposeThread(); + canThread = null; + } + } + break; + } + break; + } + } + + if (canThread != null) + { + // USBCAN + ucCommConfig.UpdateStatus(Active, canThread.GetCommSystemId()); + } + else if (ValueCanThread != null) + { + // Value CAN + ucCommConfig.UpdateStatus(Active, ValueCanThread.GetCommSystemId()); + } + else + { ucCommConfig.UpdateStatus(Active, 0); } + + uDataLog.UpdateActiveStatus(Active, Config, ref SystemData); + } + #endregion + + #region UPDATE FUNCTIONS + + private void UpdateCommConfigStatus() + { + if (canThread != null) + { + // USBCAN + ucCommConfig.UpdateStatus(Active, canThread.GetCommSystemId()); + } + else if (ValueCanThread != null) + { + // Value CAN + ucCommConfig.UpdateStatus(Active, ValueCanThread.GetCommSystemId()); + } + else + { + ucCommConfig.UpdateStatus(Active, 0); + } + } + + private void TypeChangedUpdate(ref CommConfig aConfig) + { + this.Text = String.Format("LFP SYSTEM [{0}] -- PR-LFP MODULE - [{1}]" + , Application.ProductVersion + , csConstData.CommType.CAN_MODEL[aConfig.TargetModelIndex] + ); + + switch (Config.TargetModelIndex) + { + case 0: // PR-57150 + edMaxModule.Text = "18"; + break; + case 1: // PR-64150 + edMaxModule.Text = "3"; + break; + case 2: // LFPM-57080 + edMaxModule.Text = "18"; + break; + case 3: // PR-102150 + edMaxModule.Text = "11"; + break; + case 4: // PR-115300 + edMaxModule.Text = "10"; + break; + case 5: // PR-67150 + edMaxModule.Text = "3"; + break; + default: + break; + } + + DataInit(); + + switch (aConfig.CommType) + { + case csConstData.CommType.COMM_USBCAN: + SystemStatus.Start(0, ref Config, ref SystemData); + edSystemId.Enabled = true; + break; + case csConstData.CommType.COMM_UARTCAN: + SystemStatus.Start(0, ref Config, ref SystemData); + edSystemId.Enabled = true; + break; + } + } + + private void UpdateData(object sender, ref DeviceSystemData rData) + { + //SystemData = rData; + + //if (SystemStatus != null) + // SystemStatus.UpdateData(ref SystemData); + //if (uDataLog != null) + // uDataLog.UpdateData(ref SystemData); + //if (dbThread != null) + // dbThread.UpdateData(ref SystemData); + + if (edSystemId.Text != string.Empty) + ModuleIdSet.UpdateData(Convert.ToInt32(edSystemId.Text), SystemData.CalibriationData); + } + + private void CanRecvData(UInt32 hdr, byte[] data) + { + if (FwUpdateForm != null) + { + if (this.InvokeRequired) + { + this.Invoke(new MethodInvoker(delegate() + { + FwUpdateForm.RecvData(hdr, data); + })); + } + else + { + FwUpdateForm.RecvData(hdr, data); + } + } + } + + private void UpdateConfig(object aConfig) + { + Config = (CommConfig)aConfig; + + IniLoad(); + } + + #endregion + + #region MENU EVENT + + private void commConfigToolStripMenuItem_Click(object sender, EventArgs e) + { + ConfigButtonClick(sender, e); + } + + private void exitToolStripMenuItem_Click(object sender, EventArgs e) + { + Close(); + } + + private void testSendToolStripMenuItem_Click(object sender, EventArgs e) + { + csHistoryFunction.DbCreate(System.IO.Path.GetDirectoryName(Application.ExecutablePath)); + } + + private void firmwareUpdateCANToolStripMenuItem_Click(object sender, EventArgs e) + { + foreach (Form frm in Application.OpenForms) + { + if (frm.Name == "fmxFwUpdate") + { + frm.Activate(); + return; + } + } + FwUpdateForm = new fmxFwUpdate(Convert.ToUInt32(edSystemId.Text), Config); + + FwUpdateForm.OnAutoTxCanSet += SetAutoTxCan; + FwUpdateForm.OnSendDataCan += SendDataToCan; + FwUpdateForm.Show(); + } + + private void firmwareImageConveterToolStripMenuItem_Click(object sender, EventArgs e) + { + foreach (Form frm in Application.OpenForms) + { + if (frm.Name == "fmxFwImageConverter") + { + frm.Activate(); + return; + } + } + fmxFwImageConverter FwImageConverter = new fmxFwImageConverter(); + + FwImageConverter.Show(); + } + + private void historyViewToolStripMenuItem_Click(object sender, EventArgs e) + { + foreach (Form frm in Application.OpenForms) + { + if (frm.Name == "fmxHistory") + { + frm.Activate(); + return; + } + } + fmxHistory HistoryForm = new fmxHistory(Config); + + HistoryForm.Show(); + } + + private void checkDBToolStripMenuItem_Click(object sender, EventArgs e) + { + foreach (Form frm in Application.OpenForms) + { + if (frm.Name == "fmxExcelFile") + { + frm.Activate(); + return; + } + } + DbControlFrom = new fmxExcelFile(Config); + + DbControlFrom.Show(); + } + + #endregion + + #region FORM EVENT + + private void fmxMain_Load(object sender, EventArgs e) + { + } + + private void fmxMain_FormClosing(object sender, FormClosingEventArgs e) + { + if (canThread != null) + { + canThread.disposeThread(); + canThread = null; + } + + if (ValueCanThread != null) + { + ValueCanThread.disposeThread(); + ValueCanThread = null; + } + + if (dbThread != null) + { + dbThread.disposeThread(); + dbThread = null; + } + } + + #endregion + + #region TIMER EVENT + + private void tmrCheckThreadMsg_Tick(object sender, EventArgs e) + { + UpdateCommConfigStatus(); + + //if (snmpThread != null) + //{ + // string data = snmpThread.GetResult(); + + // if (data != "") + // { + // uEventLog.EventUpdate(data + "\r\n"); + // } + //} + + //if (uartThread != null) + //{ + // string data = uartThread.GetMsg(); + + // if (data != "") + // { + // uEventLog.EventUpdate(data + "\r\n"); + // } + //} + + //if (canThread != null) + //{ + // string data = canThread.GetMsg(); + + // if (data != "") + // { + // uEventLog.EventUpdate(data + "\r\n"); + // } + //} + + //if (dbThread != null) + //{ + // string data = dbThread.GetMsg(); + + // if (data != "") + // { + // uEventLog.EventUpdate(data + "\r\n"); + // } + //} + byte[] sn = new byte[17]; + + switch (Config.CommType) + { + case csConstData.CommType.COMM_SNMP: + // SNMP MODE + break; + case csConstData.CommType.COMM_UARTCAN: + // UARTCAN MODE + for (int i = 0; i < 16; i++) + sn[i] = SystemData.Information.pcb_sn[i]; + sn[16] = 0; + if (sn[0] == 0xFF) sn[0] = 0; + pgSystem.Text = String.Format("{0} [{1}.{2}.{3}.{4}] - {5}", "LFP SYSTEM" + , SystemData.ValueData.fw_ver[0] + , SystemData.ValueData.fw_ver[1] + , SystemData.ValueData.fw_ver[2] + , SystemData.ValueData.fw_ver[3] + , Encoding.Default.GetString(sn) + ); + break; + case csConstData.CommType.COMM_USBCAN: + // USBCAN MODE + for (int i = 0; i < 16; i++) + sn[i] = SystemData.Information.pcb_sn[i]; + sn[16] = 0; + if (sn[0] == 0xFF) sn[0] = 0; + pgSystem.Text = String.Format("{0} [{1}.{2}.{3}.{4}] - {5}", "LFP SYSTEM" + , SystemData.ValueData.fw_ver[0] + , SystemData.ValueData.fw_ver[1] + , SystemData.ValueData.fw_ver[2] + , SystemData.ValueData.fw_ver[3] + , Encoding.Default.GetString(sn) + ); + break; + } + DisplayCommStaus(); + } + + #endregion + + #region STATUS BAR EVENT + + void DisplayCommStaus() + { + if (Active == true) + CommStausBar.Text = "Comm: On"; + else + CommStausBar.Text = "Comm: Off"; + } + + void LogStatusUpdate(object sender, string msg, bool active, int aLogTime) + { + LogStatusBar.Text = msg; + } + + #endregion + + #region LOG PRINT FUCTION + + private void PrintLogMessage(object sender, string msg) + { + if (this.InvokeRequired) + { + this.Invoke(new MethodInvoker(delegate () + { + uEventLog.EventUpdate(msg + "\r\n"); + })); + } + else + { + uEventLog.EventUpdate(msg + "\r\n"); + } + } + + private void TestLogMessage(object sender, string msg) + { + if (this.InvokeRequired) + { + this.Invoke(new MethodInvoker(delegate () + { + uEventLog.MsgUpdate(msg + "\r\n"); + })); + } + else + { + uEventLog.MsgUpdate(msg + "\r\n"); + } + } + + #endregion + + #region CAN COMMAND AND SET + + private void SetCmdToCan(int sId, int mode, int flag, ref DeviceParamData aParam, ref DeviceCalibration aCalib) + { + if (canThread != null) + { + canThread.SendProcessFromApp(sId, mode, flag, 0, ref aParam, ref aCalib); + } + else if (ValueCanThread != null) + { + ValueCanThread.SendProcessFromApp(sId, mode, flag, 0, ref aParam, ref aCalib); + } + } + + private void chbPolling_CheckedChanged(object sender, EventArgs e) + { + if (edSystemId.Text != string.Empty) + { + if (canThread != null) + { + canThread.SetPolling(chbPolling.Checked, Convert.ToInt32(edSystemId.Text), ref SystemData); + } + + if (ValueCanThread != null) + { + ValueCanThread.SetPolling(chbPolling.Checked, Convert.ToInt32(edSystemId.Text), ref SystemData); + } + + SystemStatus.UpdateSystemId(Convert.ToInt32(edSystemId.Text)); + + if (chbPolling.Checked) + edSystemId.Enabled = false; + else + edSystemId.Enabled = true; + } + } + + private void chkDcp_CheckedChanged(object sender, EventArgs e) + { + if (canThread != null) + { + if (chkDcp.Checked) + canThread.SetDcp(1); + else + canThread.SetDcp(0); + } + + if (ValueCanThread != null) + { + if (chkDcp.Checked) + ValueCanThread.SetDCP(1); + else + ValueCanThread.SetDCP(0); + } + } + + private void edSystemId_KeyPress(object sender, KeyPressEventArgs e) + { + csUtils.TypingOnlyNumber(sender, e, false, false); + } + + private void SendDataToCan(UInt32 header, byte[] data) + { + if (canThread != null) + { + canThread.SendDataFromApp(header, data, 0); + } + else if (ValueCanThread != null) + { + ValueCanThread.SendDataFromApp(header, data); + } + } + + private void SetAutoTxCan(bool autoTx) + { + if (canThread != null) + { + canThread.SetAutoTx(autoTx); + } + else if (ValueCanThread != null) + { + ValueCanThread.SetAutoTx(autoTx); + } + } + + private void tmrTest_Tick(object sender, EventArgs e) + { + //string data = ""; + + //data += String.Format("S[{0}], ", SystemTotalData.AvgData.avgCellVoltage); + //data += String.Format("S[{0}], ", SystemTotalData.AvgData.maxCellVoltage); + //data += String.Format("S[{0}], ", SystemTotalData.AvgData.minCellVoltage); + //data += String.Format("S[{0}], ", SystemTotalData.AvgData.diffCellVoltage); + //data += String.Format("S[{0}], ", SystemTotalData.CellBalancingVoltage); + //for (int i = 0; i < Config.CanModelIndex + 1; i++) + //{ + // data += String.Format("M-{0:00}[{1}], ", i + 1, SystemData.StatusData.cellBalanceValue); + //} + + //if (data != "") + //{ + // uEventLog.EventUpdate(data + "\r\n"); + //} + } + + private void btnNextID_Click(object sender, EventArgs e) + { + if (edSystemId.Text == "") return; + if (edMaxModule.Text == "") return; + + int currID = Convert.ToInt32(edSystemId.Text); + int maxModule = Convert.ToInt32(edMaxModule.Text); + + if (currID == maxModule) + currID = 1; + else + currID++; + + edSystemId.Text = currID.ToString(); + SystemData.mNo = currID; + + if (canThread != null) + { + DataInit(); + SystemStatus.UpdateSystemId(Convert.ToInt32(edSystemId.Text)); + canThread.SetPolling(chbPolling.Checked, Convert.ToInt32(edSystemId.Text), ref SystemData); + } + else if (ValueCanThread != null) + { + DataInit(); + SystemStatus.UpdateSystemId(Convert.ToInt32(edSystemId.Text)); + ValueCanThread.SetPolling(chbPolling.Checked, Convert.ToInt32(edSystemId.Text), ref SystemData); + } + } + + private void btnPrevID_Click(object sender, EventArgs e) + { + if (edSystemId.Text == "") return; + if (edMaxModule.Text == "") return; + + int currID = Convert.ToInt32(edSystemId.Text); + int maxModule = Convert.ToInt32(edMaxModule.Text); + + if (currID == 1) + currID = maxModule; + else if (currID > 0) + currID--; + else + currID = 1; + + edSystemId.Text = currID.ToString(); + SystemData.mNo = currID; + + if (canThread != null) + { + DataInit(); + SystemStatus.UpdateSystemId(Convert.ToInt32(edSystemId.Text)); + canThread.SetPolling(chbPolling.Checked, Convert.ToInt32(edSystemId.Text), ref SystemData); + } + else if (ValueCanThread != null) + { + DataInit(); + SystemStatus.UpdateSystemId(Convert.ToInt32(edSystemId.Text)); + ValueCanThread.SetPolling(chbPolling.Checked, Convert.ToInt32(edSystemId.Text), ref SystemData); + } + } + + private void edMaxModule_EditValueChanged(object sender, EventArgs e) + { + try + { + int id = Convert.ToInt32(edMaxModule.Text); + ModuleIdSet.SetMaxModule(id); + } + catch (Exception ex) + { + MessageBox.Show("EditValue change error: " + ex.Message, "Exception", MessageBoxButtons.OK, MessageBoxIcon.Error); + } + } + #endregion + } +} \ No newline at end of file diff --git a/LFP_Manager_PRM/Forms/fmxMain.resx b/LFP_Manager_PRM/Forms/fmxMain.resx new file mode 100644 index 0000000..0d0bd9b --- /dev/null +++ b/LFP_Manager_PRM/Forms/fmxMain.resx @@ -0,0 +1,4586 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + 17, 17 + + + 300, 17 + + + 133, 17 + + + 417, 17 + + + 51 + + + + + AAABAAQAICAAAAEAGACoDAAARgAAADAwAAABABgAqBwAAO4MAACAgAAAAQAYACjIAACWKQAAAAAAAAEA + GAAoIAMAvvEAACgAAAAgAAAAQAAAAAEAGAAAAAAAgAwAAAAAAAAAAAAAAAAAAAAAAAD///////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + ///////////////////////////////////////////////////+/v7+/v7+/v7+/v7+/v7+/v7+/v7/ + ///+/v7////////////////////////////////////////////////////////+/v7+/v7+/v7+/v7+ + /v7+/v7+/v7+/v7+/v7////+/v7+/v3+/v3+/v3+/v7+/f3////////+/v7///////////////////// + ///////////////////////////+/v7////+/v7+/f3+/v7+/v3+/v3+/v3+/v7////7+ff///////// + ///////////////+/v3+/v7////+/v7////////////////////////////////////////+/v7////+ + /v7+/v7////////////////////////7+PbCnHejazCkbTKkbDKlbjSdYTDLrIr////9/Pz+/v7///// + ///////////////////////////////////////////+/v79/fz////BnHSeYjClbjSkbDKkbDOjazDc + x7L49PGkbDKEOACKQwCJQQCHPgCNRwTt49n+/v39/Pz+/v7+/v7///////////////////////////// + ///+/v7+/v79/Pv//v7j0sKHPgCJQACJQQCLRACCNgCufkv////////q3tKOSQePSgSPSwKRTQSHPgCt + e0f////9/Pv+/v7////////////////////////////////+/v7////9/f39/Pv9/PuiaS6JQQCQTQOP + SwKNSAOUUxLz7ef+/f37+Pb////AmnKGOwCQTAKOSQCPSwKHPwDaxa7////8+/r+/v7+/v7///////// + ///////////+/v7///7+/v77+vj////OsJGGPACQTAKOSQCQTAKGPADNr4/////7+ff9/Pv9/fz38u6Z + WhuLQwCPSgGPSgGLRQGcXyH59vP9/fz9/fz////+/v7////////+/v7+/v7////+/v77+vn////u5NqS + Tw+OSAKOSQCPSwKJQACiai/8+vn9/Pz9/f3+///9/Pv////WvqWHPQCQTAOOSQCQTQOGPADDn3j////8 + +/r+/v7////+/v7+/v7+/v79/fz8+/r9/f3////u49mdYSiKQwCPSwGOSQCPSwKKQgDi0L/////9/Pv+ + /v7//v7+/v79/Pz///+seUOIPwCQTAKOSQCOSQKNSAbq39P+/v39/Pz+/v7////////////////////+ + /v7SuJ6WVRiLRQCRTwaQTASSUAeHPgC4jV7////9/Pv+/v7////+/v7+/v79/Pz+/v7r39SOSQeOSgKO + SQCQSwKHPwCsekT+/v/9/Pz+/v78+/r49PDy6uPi0cDDn3yZXB9/MACEOACHPgCGOwCFPACEOgCTURDz + 7Ob9/fz9/f3////+/v7////////+/v78+/r////CnneGPACQTAKOSQCQTAKHPgDYwan////9/Pz38u7o + 2szgzbvTuZ/MrY/St5zeyrTcyLLcx7Hcx7HdybPVvKfl1cX////9/fz+/v7+/v7////////+/v7////9 + /f39/Pz59fObXiCKQwCPSgGPSgGLRAGaXB349PH9/fz+/v/////////////////28e3AmnrEn3rDn3nE + oXu+lnbcxrD////9/Pv+/v7////////////////////+/v7+/v79/Pv////bxa+HPgCPSwKOSQCQTAKG + PADAmnH////8+/r9/fz9/Pv7+ff9/Purd0F/MACGOwCFOgCEOQCEOADj0sH+/fz9/Pz+/v7+/v7///// + ///////////////////+/v79/Pz///+ufkqHPgCQTAKOSQCOSgKNRwPp3M/+/v79/Pv8+/r////YwaqH + PgCSTwaQTAOSTwaHPgDDn3n////9/Pv+/v7////////////////////////////+/v7+/v79/Pz+/v7t + 4tiNSAaNSAKOSQCQTAKJQQCqd0D+/v79/Pv9/fz49fKbXyCMRQGPSwGPSgGLRAGYWRn38+/9/fz9/f3/ + ///+/v7///////////////////////////////7+/v79/Pv////EoHqFOwCQTQOOSQCQTQOHPwDUu6H/ + ///////Dn3iGPQCQTQOOSQCQTAOGPQDWvaT////9/Pv+/v7+/v7///////////////////////////// + ///+/v7////9/f39/Pv59vScYCOLRQGPSwKPSgGMRQGWVhf7+ffu5duNSAaOSQKOSQCQTAKJQQCqd0D+ + /v79+/r+/v7////////////////////////////////////////////+/v7+/v78+/r////cx7GJQgCQ + TAOOSQCQTAKFOwC/mXKzhVSGPACQTAKOSQCPSgKOSQfq3dH////9/Pv+/v7+/v7///////////////// + ///////////////////////////////+/v79/Pv///+wgU6HPgCQSwKOSQCPSgGMRgCMRwCPSgCOSQCQ + TAKGPADAmnH////9/Pr+/v7////////////////////////////////////////////////////+/v7+ + /v79/Pz+/v3u5NuPSwmNRwGOSQCPSgCPSwGPSgGPSQCPSgGLRACYWRn38u79/fz9/fz///7+/v7///// + ///////////////////////////////////////////////////+/v79/Pv////HpoKFOwCQTQOOSQCP + SgCPSgCOSQCQTAOGPQDVvaP////9/Pv+/v7+/v7///////////////////////////////////////// + ///////////////+/v7////9/f39/fz7+fefZSiIQACOSQCNRwCNRwCOSQCGPQCrd0H+///9/fz+/v7/ + ///////////////////////////////////////////////////////////////////+/v7+/v79/Pv/ + ///fzLmSTxWXWBWWVhSWVhSWVhSWVRrq3dH////9/Pz+/v7+/v7///////////////////////////// + ///////////////////////////////////////////+/v7+/v7////38+728e328e328e328Oz49fD/ + ///+/v7+/v7///////////////////////////////////////////////////////////////////// + ///////+/v7////////+/v3////////////////////////+/v3////////+/v7///////////////// + ///////////////////////////////////////////////////////////+/v7////+/v7+/v7+/v7+ + /v7+/v7+/v7+/v7+/v7////+/v7///////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAACgAAAAwAAAAYAAAAAEAGAAAAAAAgBwAAAAAAAAAAAAAAAAAAAAAAAD///////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + ///////////////////+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7////+/v7+/v7///////// + ///////////////////////////////////////////////////////////////////////////////+ + /v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7///////////////////////////// + /////////v7+/v7///////////////////////////////////////////////////////////////// + ///////////////////////////+/v7////////+/v7///////////////////////////////////// + ///38u38+vn8+vj8+vj8+vj8+vj8+vj8+vj7+ff////+/v3+/v7+/v7+/v7///////////////////// + ///////////////////////////////////////////////////////////////+/v7+/v7+/v7////7 + +ff8+vj8+vj8+vj8+vj8+vj8+vj7+ff59fK7kmmbXh+cXyCcXyCcXyCcXyCbXyCdYSGWVR3Fon3////9 + /Pz+/v7///////////////////////////////////////////////////////////////////////// + ///////+/v7+/v79/f39/fz///+1iFqXVx2cYCGcXyCcXyCcXyCcXyCbXiCcYCPn2Mv7+fencTqDOACM + RgCLRACLRACLRACLRACKQwCMRQLq3tL////9/Pz+/v7///////////////////////////////////// + ///////////////////////////////////////////+/v79/Pz////Zw6uGOwCMRQCLRACLRACLRACL + QwCNRwCCNQC4jmH////////r39SNRwWOSgOOSgGPSgGPSgGPSgGQTAOIPwCpdD3////9/fz9/f3////+ + /v7////////////////////////////////////////////////////////////////+/v7+/v79/f3+ + /f359vOZWxyLRACQSwKPSgGPSgGPSgGPSgGMRQKXWBn49PD+/fz8+vn////BnHWFOgCQTAGOSQCPSgCP + SgCOSQCPTAKFOwDVvaT////9/Pv+/v7///////////////////////////////////////////////// + ///////////////////////+/v79/Pv////BnXaEOgCQTAKOSQCPSgCPSgCOSQCPSwGGOwDVvKL////8 + +/r9/Pz9/f349fKZXB2KQwCPSgGOSQCOSQCOSQCPSgGLRAGXWBj38+/+/f39/f3+/v7+/v7///////// + /////////////////////////////////////////////////v7+/v79/fz+/v7r39SMRwWNSAGOSQCO + SQCOSgCOSQCPSwGHPgCpdT7////9/Pz+/f3+/v79/Pv////YwquGPACPSwGOSQCPSgCPSgCOSQCQTAGF + OgC+l23////9/fz+/v7////+/v7////////////////////////////////////////////////+/v7+ + ///9/f39/Pv///+qdkGHPQCPSwGOSQCPSgCPSgCOSQCOSAGLRALp3dH////9/Pv+/v7+/v7+/f39/fz/ + //+se0aHPgCQTAKOSQCPSgCPSgCOSQCOSQKLRALn2s3//v79/Pz+/v7///////////////////////// + ///////////////////+/v7+/v7////+/v78+vn////Rt5qGPACQSwKOSQCPSgCPSgCOSQCQTAKFOwC/ + mXL////9/Pz+/v7////////+/v79/fz///7s4deNSAeNSAGOSQCOSQCOSQCOSQCQSwKHPgCnczv+/v79 + /Pz9/f3+/v7+/v7////////////////////////////+/v7+/v7////////9/f38+/r////j08KNSQiN + RgGOSgCOSQCOSQCOSQCPSgCLRACYWhv48/D+/f39/f3+/v7+/v7+/v7////+/v79/Pz////Dn3qFOgCQ + TAGOSQCPSgCPSgCOSQCQSwGGPADSuJ3////9/Pz+/v7////////////////////////+/v7+/v7///// + ///+/v79/Pv////////cx7KPTA2LRQCPSgCOSQCPSgCPSgCOSQCPSwGGPADWvqb////9/Pz+/v7///// + ///////////+/v79/f3+/f359/SbXiCKQgCPSgGOSQCOSQCOSQCPSgCLRQCVVBT18Oz+/f39/fz+/v7+ + /v7////+/v7+/v7+/v7+/v7+/f39/Pz9/Pv////////49PC/mHSKQgCMRQCPSgCOSQCPSgCPSgCOSQCQ + TAKGPQCreEL////9/Pz9/f3+/v7+/v7////////////////+/v79/Pv////axK6FPACPSwKOSQCPSgCP + SgCOSQCQTAKEOQC8lGn////9/Pv+/v7////////////////////////////////////49fLQs5ibXyWH + PgCPSwKQTQOQSwKQTAOQTAKQTAKPSwOOSgOMRQPq3tP////9/Pz+/v7////////////////////+/v7/ + ///+/v39/Pz///+vf0uHPgCQSwGOSQCOSgCPSgCOSQCOSQGLRAHm18n////9/fz+/v7////+/v36+Pb5 + 9fLz7ejo2s3RtpuwgFCNRwN9LQCCNQCHPgCGOwCFOwCGOwCGOwCGOwCFOwCGPAB/MADCnnj////9/Pz+ + /v7////+/v7////////////////////+/v7+/v79/fz///7v5t6PSgiNRwGOSQCPSgCOSQCOSQCPSwGJ + QAClbjX+/f39/f39/f3//v769/XfzbjZw67QtJrEoX67kmq6kGa/mXLDn3rEoHzEoHvEoHvEoHvEoHvE + oHvEoHvDoHvDnnvEoH369/X+/v79/f3+/v7+/v7////////////////////////////////+/v79/Pv/ + ///GpICFOgCQTAKOSQCPSgCPSgCOSQCQTAKGPADQtJf////9/Pz+/v7///////////////////////// + ///////////////////////////////////////////////////////+/v7+//////////////////// + ///////////////////+/v7+/v79/f3+/f36+PadYiSKQwCPSgCOSQCOSQCOSQCPSgGMRgGUVBP07uj+ + /v39/fz+/v7+/v7+/v3+/f39/fz9/Pv7+vj+/f3cyLSXVyGcYCKcXyCcXyCcXyCcXyCdYSKUUxzDn3z9 + /Pz9/Pz9/f3////+/v7////////////////////////////////////////+/v79/Pz////cx7KHPwCP + SgGOSQCPSgCPSgCOSQCQTAKGPAC5kGP////9/Pv+/v7//v7+/v7+/v7+/v79/f39/fz7+feeYyaGPACL + RQCLRACLRACLRACLRACIQACQTAnw59/+/v79/f3+/v7+/v7///////////////////////////////// + ///////+/v7///79/f39/Pv///+xglCGPACQSwGOSQCPSgCOSQCOSQCOSQGKQgDk1MT////9/fz+/v7/ + ///////+/v79/Pz////HpoOFOgCQTAKOSgCPSgGPSgGOSgGQTAKFOwDPs5b////9/Pv+/v7///////// + ///////////////////////////////////////////+/v/+/v79/Pz+/v7w59+PSgiMRgGOSgCPSgCP + SgCOSQCPSwGIQACiajD+/f39/f39/f3///7+/v79/fz+/v7w6OCPSgmNRwGOSQCOSQCOSQCOSQCPSwKI + PwCiaS79/fz9/fz9/f3+/v7+/v7///////////////////////////////////////////////////7/ + ///+/v79/Pv////Ip4WFOgCQTAKOSQCPSgCPSgCOSQCQTAKEOQDOsZP////9/Pv+/v7+/v79/Pv///+x + glGFOwCQTAKOSQCPSgCPSgCOSQCOSgKIQADj08L////9/Pz+/v7///////////////////////////// + ///////////////////////////////+/v7+/v79/f39/f38+vmeZCeJQQCPSwGOSQCOSQCOSQCPSgGM + RQGRTw7z7ef+/v39/f39/Pz////fzLiHPQCPSgGOSQCPSgCPSgCOSQCQTAGFOwC4jF/////9/fz+/v7+ + /v7+/v7////////////////////////////////////////////////////////////////+/v79/fz/ + ///fzLqHPgCOSgGOSQCPSgCPSgCOSQCQTAGFPAC3jF7////9/Pz+/f38+vifZCiJQQCPSwGOSQCOSQCP + SgCOSgGLRQGTURDz7ef+/v39/f3+/v7///////////////////////////////////////////////// + ///////////////////+/v7////+/v79/Pv///+zhVWFOwCQTAKOSQCPSgCPSgCOSQCOSgKJQQDi0cH+ + /v7////JqYeFOgCQTAKOSQCPSgCPSgCOSQCQTAKEOgDNsJH////9/Pv+/v7////+/v7///////////// + ///////////////////////////////////////////////////////+/v7+/v79/fz+/v3w6eGRTQyN + RwGOSQCOSQCOSQCOSQCPSwKJQQChaC7////x6eKRTgyNRgGPSgCPSgCOSQCOSQCPSwGJQQCiajD8+/r9 + /fz9/f3+/v7+/v7///////////////////////////////////////////////////////////////// + ///////////////+/v79/Pz////LrIuFPACQTAGOSQCPSgCPSgCOSQCQSwGFOwDPspW5j2SGPACQSwGO + SQCPSgCPSgCOSQCOSgGJQgDj0sL////9/Pz+/v7///////////////////////////////////////// + ///////////////////////////////////////////+/v7+/v79/f39/fz9/PygZyuJQACPSwGOSQCO + SQCOSQCOSQCOSACOSACNSACOSQCOSQCPSgCPSgCOSQCQTAKFOwC3i13////9/Pv+/v7////+/v7///// + //////////////////////////////////////////////////////////////////////////////// + ///+/v79/Pv////hz72JQACPSwKOSQCPSgCPSgCOSQCPSgCOSQCOSQCPSgCOSQCOSQCOSQCOSQCMRgGS + UA/y6+X+/v39/fz+/v7+/v7///////////////////////////////////////////////////////// + ///////////////////////////////+/v7////+/v79/fz///+1iVuGPACQSwGOSQCPSgCPSgCOSQCP + SgCPSgCOSQCPSgCPSgCOSQCQTAGFOgDNrpD////9/Pz+/v7///////////////////////////////// + ///////////////////////////////////////////////////////////////////+/v7+/v79/f3+ + /v3y6+SSUA6MRQGOSgCOSQCOSQCPSgCPSgCPSgCPSgCOSQCOSQCPSwGIQAChaS78+/r9/Pz9/f3+/v7+ + /v7///////////////////////////////////////////////////////////////////////////// + ///////////////////////////+/v79/Pv////NsJGFOwCQSwGOSQCPSgCPSgCPSgCPSgCOSQCPSgCO + SQCOSQGJQQDi0cD////9/Pv+/v7///////////////////////////////////////////////////// + ///////////////////////////////////////////////////////+/v7+/v79/f39/Pz8+/qiai+J + QACRTQSPSwKQSwKQSwKQSwKQSwKPSwKRTgSGPAC2iVr////9/Pv+/f3////+/v7///////////////// + //////////////////////////////////////////////////////////////////////////////// + ///////////////+/v79/Pv////j08KGPQCHPQCHPgCIPgCIPgCIPgCIPgCHPwCFOgCRTgvy6uP+/f39 + /fz+/v7+/v7///////////////////////////////////////////////////////////////////// + ///////////////////////////////////////////+/v7////+/v79/f3////JqIeufFOzhVezhFaz + hFazhFayhFazhVete1TWvqb////9/fz+/v7///////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + ///+/v7+/v7+/v3////////////////////////////////////////+/v3+/v7+/v7+/v7///////// + //////////////////////////////////////////////////////////////////////////////// + ///////////////////////////////////////////+/v7+/f3+/f3+/fz+/fz+/fz+/fz+/fz+/fz+ + /f3+/f3///////////////////////////////////////////////////////////////////////// + ///////////////////////////////////////////////////////////////////+/v7+/v7+/v7+ + /v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7///////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAoAAAAgAAAAAABAAABABgAAAAAAADIAAAAAAAAAAAAAAAA + AAAAAAAA//////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////v7+/////v7+/v7+//////////////////////////////////////////////////////////// + /////////////////////////////////////////fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7 + /fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/v39/v7+/v7+/v7+//////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////v7+/////v7+/////v7+/f38/fz7/fz7/fz7/fz7/fz7/fz7 + /fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/v7+//////// + //////////////////////////////////////////////////////////////////////////////// + /////////////v7+/////v7+/v7+/v7+//////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////v7+/////v7+ + /f39//////////////////////////////////////////////////////////////////////////// + ////////////////////////2MCn3Maw3Maw3Maw3Mew3Mew3Mew3Mew3Mew3Mew3Mew3Mew3Mew3Mew + 3Mew3Mew3Mew3Mew3Mew3Mew3Mew3Maw3Mex2cOs8uvk/v7+/f39/v7+/v7+//////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////v7+/v7+/v7+/f39////4tHA2sSs3Mex3Mew3Mew3Mew3Mew3Mew3Mew3Mew3Mew + 3Mew3Mew3Mew3Mew3Mew3Mew3Mew3Mew3Mew3Mex3Mew3Mex2cKr9vHtqXQ9ikIAiUEAiUEAikIAikIA + ikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAiUEAikMAgzgAq3hH/v39 + /fz8/v79/v7+/v7+//////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////v7+/v7+/v7+/v7+/fz8////49PCiUIBiUEAiUEA + ikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAiUIAiUEAi0MAgzkA + nmMq+vj1/v39sYJUhz4AkU0Ej0oBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sB + j0sBj0sBj0sBj0oBj0oBkEwDhz0A1buh/////fz7/v7+/v7+/v7+/v7+//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////v7+ + /v7+/v39/Pz8/Pr5pGw1iEAAkE0Dj0oBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sB + j0sBj0sBj0sBj0sBj0sBj0sBj0sDjEYG49LC////////7OLWkU4PjEYBj0oBjkkAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAjkkAj0sBikQAmFod9fDq/v39/v39/v7+ + /v7+//////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////7+/v7+/v7+/v7+/Pv6////za+QhjwAkEwCjkkAjkkAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAkEwChjsAuo9l////+/n4+ff1//// + x6aFhDsAkEwCjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + jkkAjkkAkEwChTwAv5dw/////Pz7/v7+/v7+/v7+//////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////v7+/v7+/f38/v798evik1IV + i0UBj0oBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkoA + j0oBi0QBlVQX8+zl/f39/fz8/fz8/fz8+vbzoGYuiEAAj0sBjkkAjkkAjkoAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAj0oAjkoAjkkAjUkBjEgG6NvN/////fz8/v7+/v7+/v7+/v7+ + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////7+/f7+/v7+/fz7////topehjwAkEwCjkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAj0sChTwA0LWY/////Pv7/v7+/v///Pz7////3sq3iEABjkoC + jkkAjkkAj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkAkEsC + hz8Ap3I//fz7/fz8/v79/v7+/v7+//////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////v7+/v7+/v39/v///Pz7////3867iEAAjkoCjkkAjkkAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjUkAkEsChz8ApnE5/fz8/Pz7 + /v7+/v7+/v7+/v7+/Pv7////tIZYhjwAkEwBjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAjkkAjkgAj0sChTwA0rec/////Pz7/v7+/v7+/v7+//////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////v7+/v7+/v79/fz8 + +/r4oWgwiEAAj0sBjkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kA + j0kAjkkAjkoAjkkBikQF5dbG/////fz7/v7+/v7+/v7+/v7+/fz8/v7+8OffkU8QjEYBj0oAjkkAjkoA + jkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oAjkkAj0oBikMAllcb9O/p + /v39/f38/v7+/v7+/v7+//////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////v7+/v7+/v7+/Pz7////yquLhTsAj0wCjkgAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAkEwChToAu5Nq/////Pz7//7+/v7+/v7+/v7+/v7+ + ///+/Pz7////y6yNhTsAkEwCjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAjkkAjkkAjkkAkEwBhTsAu5Rr/////Pz7/v7+/v7+/v7+/v7+//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////v7+/v7+/fz8/v7+7+bckU4PjEYBjkkBjkkA + j0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0kAjUkAj0oBi0QBllcb + 9e/p/v39/f38/v7+/v7+/////////v7+/v7+/v79/fz8+vj1oWgwiUEAj0sBjkgAjkkAjkkAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkCi0QF5NXG/////fz8/v7+ + /v7+//////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////v7+//7+/f39 + /v7+/fz7////tIdZhjwAkEwCjkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAjkkAjkkAj0sChj0A0rec/////Pz7/v7+/v7+/////v7+/v7+/////v7+/v7+/Pz7//// + 38y4ikIDj0oCjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkA + jkkAjkkAj0sBhz8Ap3I8/Pv5/fz8/v39/v79/v7+//////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////v7+/////v7+/v7+/Pz7////3sm2iUIBj0oBjkkAjkkAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjUkAkEsCiD8AqHM+/fz7/Pz8/v7+/v7+/v7+ + /v7+/////////v7+/v7+/v7+/v7+/Pv7////topehTwAkEwCjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkgAkEsChjwA0bWa/////Pv6/v7+/f39/////v7+ + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////v7+/v7+/f39/fz8+vj2n2UriUEA + j0sBjkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkoA + jkgBjEYG5tjJ/v7+/f37/v7+/v7+/////////////////////////v7+/v7+/f39/v398uriklETi0YB + j0oAjUkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkAj0oB + i0UAlVYZ8+3m/f79/f38/v7+/v7+//////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////v7+ + /v7+/v7+/v7+/Pv6////yKeFhTsAkEwCjkgAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAjkkAjkkAkEwChjwAvpZv/////Pz7/v/+/v7+/v7+/v7+//////////////// + /v7+/v7+/v7+/v7+/Pz7////za6QhTwAkEwCjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAkEwChTwAuZBm/////Pv6/v7+/v7+/v7+/v7+//////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////v79/v7+/fz7/v7+7ePYkU4QjEcBjkkBjkkAj0oAjkkAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkAj0oBi0QBmFof9e/p/f39/v39 + /v7+/v7+/////////////////////////////////v7+/v7+/v7+/fz8+/n3o2s1iUEAkEsBjkkAjkkA + jkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oAjkkAjkkAjkkCikQD5NPD + /////Pz7/v7+/v7+//////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////v7+/v7+/v79/Pv7/v/+ + sIFShjwAkEwCjkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + jkkAjkkAj0sChj0A1Lqg/////Pz7/v/+/v7+/////v7+/////////////////////////v7+/////v7+ + /v7+/fz7////4tHBikMEjkkCjkoAjkkAj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAjkkAjkkAjkkAj0sBiEAApW43/Pv5/fz7/v39/v7+/v7+//////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////v7+/v7+/////Pv6////2sawiD8Aj0sBjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAkEsChz8AqnhE/v79/Pz7/v7+/v7+/v7+/v7+//////// + /////////////////////////v7+/v7+/v7+/v7//fz7////uI1hhj0AkEwCjkkAjkkAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkgAj0wChj0AzrCT/////Pv6/v7+ + /f39/////v7+//////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////v7+/v7+/v7+/f38/f389vLtm18jikMAj0oBjkkAjkkA + jkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkAjkoAjUgBjUgH6NzO + /v7+/fz8/v/+/v7+/////////////////////////////////////////////////v7+/v7+/f38/v39 + 8uvjlFUWi0UBj0oBjUkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkA + j0oAjkkAj0oBjEYBlFMW8enh/v79/fz7/v7+/v7+//////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////v7+/v7//v7+//7+/f39 + /Pv6////t4thhjwAj0wBjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAjkkAjkkAkEwChTsAwJp0/////fz6/v7+/v7+/v7+/v7+//////////////////////////// + /////////////v7+/////v7+/v7//Pv7////zrGUhjwAj0wCjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkAkEwChjwAt4xg/////Pv7/v7+/v7+/v7+//// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////v7+/v7//v3+/Pr6////0bWYhj0Aj0sCjkkAjkkAj0oAjkkAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAjkkAjkkAj0sBi0MAmVsg9vHs/v39/f39/v7+/v7+//// + /////////////////////////////////////////////////v7+/v7+/v7+/v7+/f38/Pr4pW85iD8A + kEsCjUkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkA + jkoCikIC4tHA/////Pv7/v7+/v7+/v7+//////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////v7+/v7+/v7+/v7++/r5////38y4i0UHjUgBjkoA + jkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAjkkAjkkAj0wC + hz4A1r6m/////Pz7/v7+/v7+/////v7+//////////////////////////////////////////////// + /////////v7+/v7+/fz8////49LCjEYFjkkCjkoAjkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkAj0sBiEAAomoy+/n2/fz7/v39/v7+/v7+//////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////v7+/////v7+/v7+/v7+ + /v7++/r5////5NTCj0wQi0UAj0oAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAjkkAjkkAkEwChz8ArHpI/v7+/fz7/f79/v7+/v7+/v7+//////////////////// + /////////////////////////////////////v7+/////v7+/v7+/Pz7////upBnhTwAkEwCjUgAjkkA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkgAj0wChToAyqyM + /////Pv6/v7+/v7+/////v7+//////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////v7+/v7+/////v7+/v7+/v7+/f39/Pr5////4c+9kE0SikQAj0sBjkkAjkkAj0oAjkkAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjUkAj0oAjUgCjkoJ6d3R/v7+/f38/v7+ + /v7+/////////////////////////////////////////////////////////////////////v7+/v7+ + /v7+/v39/f399O3nl1gci0UBj0oBjkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAjkkAj0oAjkkAj0oAi0UBk1ET8Ofe/v39/fz7/v7+/v7+/////v7+//////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////v7+/////////v7+//7+/v7+/Pv6/f38////1LuijkkLi0QA + j0sBjkkAjkkAj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkA + jkkAkEwChjwAwp14/////Pv6/v7//v7+/////v7+//////////////////////////////////////// + /////////////////////////////////v7+/v7+/Pv6////0baahj4AkEwCjkkAjkkAj0oAj0kAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkAkEwBhTwAtYlc/////Pv6/v7+ + /v7+/v7+//////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////v7+/v7+/////v7+/v7+/v7+ + /v79+/v5////+/n1wJp1iEEAjUYAj0wBjkkAjkkAj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkAj0sBikMAnWAn9/Lu/fz7/f39/v7+/v7+/v7+//////////// + /////////////////////////////////////////////////////////////v7+/v7+/v7+/v7+/Pz7 + /Pv5p3I9iD4AkEwCjkkAjkkAjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjkkAjkkAj0oCiUEA3826/////Pv6/v7+/v7+/v7+/v7+//////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /v7+/v7+/////////v7+/v7+/v79/Pv6/f3+////6dzPpW89hjwAj0oBj0oBjkkAjkkAj0oAjkkAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oAjkkAjkkAj0sChz4A2MKq//// + /Pv6/v7+/v7+/v7+//////////////////////////////////////////////////////////////// + /////////////////////v7+/v7+/fz7////5dbGi0UGjkkCjkoAjkkAj0kAjkkAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkAj0sBiEAAoGct+vj1/fz7/v39/v7+/v7+//// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////v7+/v7+/v7+/////////v7+/v7+/f39/fz7/fz8////+vj0xaOCjkkJhz8A + j0sBj0oAjkkAjkkAj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjkkAjkkAkEwChz0Arn1L/////Pv6/v7+/v7+/v7+//////////////////////////////////// + /////////////////////////////////////////////////v7+/////v39/v/+/Pv6////vZZuhjsA + kEwDjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjUgA + j0wChDoAyKiI/////Pv6/v7+/v7+/v7+/v7+//////////////////////////////////////////// + /////////////////////////////////////////v7+/////v7+///////////+/v7+/v7+/v79/Pv6 + /f38////////28ayn2cyhTwAjEcAj0sCjkkAj0oAj0oAj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjUkAj0oAjUcCjkoK69/U/v7//fz7/v7+/v7+/////v7+ + //////////////////////////////////////////////////////////////////////////////// + /////v7+/v7+/v7+/f39/f399fDrl1kci0UBj0sBjUkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAjkkAj0oAjkkAjkoAjEUAkU4P7+bc/v79/fz7/v7+/v7+/////v7+//////// + /////////////////////////////////////////////////////////v7+/////v7+/v7+/////v7+ + /////v7+/v7+/v7+/fz8/Pv6/v7+////////4M68qnhHiD8AiUEAj0sCj0oAjkkAjkkAjkkAjkkAjkkA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAkE0DhjwA + xaJ//////Pv7/////v7+/v7+/v7+//////////////////////////////////////////////////// + /////////////////////////////////////////v7+/v7+/v7+/Pv6////07qghz4Aj0wDjkkAjkkA + j0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkAkEwBhjwAsoRU + /v///Pv6/v7+/v7+/v7+/////////////////////////////v7+/////v7+/v7+/v7+/v7+/v7+/v7+ + /v7+/v7+///+/v7+/v7+/////v7+/v7+/v79/fz8/Pv6/fz8////////+/n32sSvqnZHikIAhz8AjkoA + j0oBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAjkkAjkkAjUkAj0sCikMAnmMp+PXx/f38/f39/v7+/v7+//////////////////////////// + /////////////////////////////////////////////////////////////////////////////v7+ + /v7+/v7+/Pz7/f38qXVBiEAAkEwCjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAjkkAjkkAj0oBiD8A3cm0/////Pv6/////f39/v7+/v7+//////////////////// + /////////////////////////////v7+/////v7+/v7+/v7+/v39/fz7/Pv6/fz7/f7+//////////// + 7OHWyaiHn2UviD8Ahz4AjkkAj0sCjkkAjkkAjkoAjkoAjkkAjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAj0wDiEAA28Wv/////Pz7/v/+/v7+ + /////v7+//////////////////////////////////////////////////////////////////////// + /////////////////////////v7+/////v7+/v7+/fz7/v//6NrNjkkJjkkCj0kAjkkAjkkAjkkAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkAj0oBiUIAn2Ur+fb0/fz7/f39 + /v7+/v7+/////////////////////////v7+/v7+/v7+/v7+/f38/fv6/fz7/fz6/Pv6/fz8/fz8/v7/ + /////////////////Pz66dzPza6Qq3dGkE0Mhj0AikMAj0sCj0sCj0oAjkkAjkoAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkA + kEwChz4AsIJS/v7//Pv7/v7+/v7+/v7+/v7+//////////////////////////////////////////// + /////////////////////////////////////////////////////////////v7+/v7+/v7+/////Pv6 + ////v5lzhTwAkEwCjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjkkAjkgAkEwBhDoAxqSC/////Pv6/v7+/v79/v7+/v7+/////////////////v7+/////v7+/v7+ + /////////////////////////////v788+3l5NTE07icuY5moWgvj0sIhz4AiUIAj0oAkE0FkU0Dj0sC + kEsBkEsBkEsBkEsBkEsBkEsBkEsBkEsBkEsBkEsBkEsBkEsBkEsBkEsBkEsBkEsBkEsBkEsBkEsBkEsB + kEsBkEsBkEsBkEsBkEsBkEsBj0sBkEwCjEgBkE4O7eTa/v7+/fz8/v7+/v7+//////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////v7+/v7+/f38/f389vHsmVsgikMBj0oBjkkAjkkAjkkAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oAjkkAjkkAjEYBkEwN7ePY/v7+/fz7/v7+/f39//// + /v7+/////////////v7+/v7+/f38/v//28ayxqSAy6uKxKF6vJNssoReqHNEmVwlkEwKhjwAgTQAgDQA + hDoAiEAAikMAiUIAiEEAiEAAiEAAiEAAiEAAiEAAiEAAiEAAiEAAiEAAiEAAiEAAiEAAiEAAiEAAiEAA + iEAAiEAAiEAAiEAAiEAAiEAAiEAAiEAAiEAAiEAAiEAAiEAAiEAAiEAAiEAAiUIAgjYAx6WD/////Pv6 + /v7+/v7+/////v7+//////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////v7+/////v7+/v7+/Pv7////1r2khz4A + j0sCjkkAjUkAj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkA + kEwBhjwAsYFR/////fz7/v79/v7+/v7+/////////////////v7+/v7+/v39/v7+4M27za+O0bWW0LOU + z7OV0LOZ0bac07mg1ryk2MCo2cKr2cKs2MGq2MCp18Co18Co18Co18Co18Co18Co18Co18Co18Co18Co + 18Co18Co18Co18Co18Co18Co18Co18Co18Co18Co18Co18Co18Co18Co18Co18Co18Co18Co18Co18Co + 18Co18Co2MCo1r+n2MGq+vf0/v39/v79/v7+/v7+/v7+//////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////v7+/v7+/v7+/v7+/Pv6/v39rHpIhz4Aj0wBjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAj0oBiUEA3May/////Pv6/////f39/v7+/v7+//////// + /v7+/////v7+/v7+//////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////v7//v7+/////v7+//////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////v7+/v7+/fz7/v7+6d3RjUkJjUgBj0oAjkkA + jkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkAj0oBikIAnWIn + +PXx/fz8/f39///+/v7+/////////////////v7+/////////v39/fz7/fz7/fz7/fz7/fz7/fz7/fz7 + /fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz8/fz7+/n3+/n3+/n3+/n3+/n3+/n3 + +/n3+/n3+/n3+/n3+/n3+/n3+/n3+/n3+/n3+/n3+/n3+/n3+/n3+/n3+/n3+/n3+/n3/Pr4/fz7/fz8 + /fz8/v7+/////v7+/////v7+//////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////v7+/v7+ + /v7+/v7+/Pv7////wZx2hDsAkEwCjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAjkkAjkkAkE0ChjwAxKF8/////Pv6/v7+/v7+/v7+/v7+/////v7+/////v7+/v7+ + /v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+ + /v7+//////////////////////////////////////////////////////////////////////////// + /////////////////////////////v7+/v7+/v///v7+/////v7+//////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////v7+/v7+/f39/f389/Ltm14iiUIAj0oBjkkAjkkAjkkAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oAjkkAjkoAjUgCkE0N7OHW/v7+/f38 + /v7+/v7+/////v7+//////////////////////////////////////////////////////////////// + /////////////v7+/////v7+/v7+/f79/f39+vj20LSYzrCSz7GUzrGTz7GTz7GTz7GTz7GTz7GTz7GT + z7GTz7GTz7GTz7GTz7GTz7GTz7GTz7GTz7GTz7GTzrGTzrGTza+S0LSY+vj1/v7+/v79/v7+//////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////v7+/////v7+/v7//Pz7 + ////2cKriD8Aj0sCjkkAjkkAj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + jkkAjkkAjkkAkEwChz8Ar35O/v7+/fz8/v7+/v7+/v7+//////////////////////////////////// + /////////////////////////////////////////////////v7+/v7+/v7+/fz7////yaiIgDMAhz0A + hTsAhTsAhTsAhTsAhTsAhTsAhTsAhTsAhTsAhTsAhTsAhTsAhTsAhTsAhTsAhTsAhjsAhTsAhDsAhz4A + fS0AtIdb/f38/Pz8///+/v7+//////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////v7+/v7+/v7+/v7+/fz7/v//rn1Khz0Aj0wBjkkAjkkAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAj0sCiEAA2MGq/////Pz7/v///v7+/v7+ + /v7+/////////////////////////////////////////////////////////////////////v7+/v7+ + /v7+/v7+/f38/v797+bdkU8PjUkDkU4Fj0wDkEwDkE0DkE0DkE0DkE0DkE0DkE0DkE0DkE0DkE0DkE0D + kE0DkE0DkE0DkE0DkEwDkE0DkU4FjEcFmVwe9/Pu/v7+/v38/v7+/v7+//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////v7+/v7//fz7/v7+69/UjkoL + jUgBj0oAjkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkA + j0sCikMAm18j+PXw/f39/f39/v7+/v7+/////v7+//////////////////////////////////////// + /////////////////////////////v7+/v7+/v7+/fz7////tIZYhj0AkEwCjkgAjkkAj0oAjkkAjkkA + jkkAjkkAjkkAjkkAjkkAjkkAjkkAjkkAjkkAjkkAjkkAj0oAjkkAjkkAj0sChj0A0rec/////Pv7/v7+ + /v7+//////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////v7+/v7+/v7+/////Pv6////xKF9hTsAkEwCjkkAjkkAj0oAj0kAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAkEwChTsAw596/////Pz7/v7+/v7+/v7+//////////// + /////////////////////////////////////////////////////v7+/v7+/v7+/v7+/fz7////3sq3 + iUIAjkoCj0kAjkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAjkkA + jkkAj0wBiD8AqHM+/fz7/Pz7/v7+/v7+/v7+/v7+//////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////v7+/v3+/v39/fz8+PXxnWIpiUIAj0sBjkkA + jkkAjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkAjkoAjUgBjkoK + 6t7S/v7+/fz8/v7+/v7+/v7+/v7+//////////////////////////////////////////////////// + /////////v7+/v7+/f39/f38+vj1oGgviUEAj0sCjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAjkkAj0kAjkkAj0kAjkgCjEYH5tjJ/////fz7/v7+/v7+//////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////v7+//// + /v7+/v7+/Pv6////2cStiEAAj0oCjkkAjkkAj0kAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAjkkAjkgAkEwChz4ArHpH/f38/fz8/v7+/v7+/v7+//////////////////////// + /////////////////////////////////v7+/v7+/v7+/v7+/fz8////y6yNhTwAkEwCjkkAjkkAj0kA + jkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAkEwChTwAvZRs//// + /Pv7/////v7+/v7+/v7+//////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////v7+/v7+/v7+/v7+/Pv7/v7+r4FQhz0AkEwBjkkAjkkAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkgAj0kAkEsChz4A17+n/////Pz7 + /v7+/v7+/v7+/v7+/////////////////////////////////////////////////////v7+/v7+/f38 + /v798enfklISjEYBj0oBjkkAjkkAjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + jkkAjkkAjkkAj0oBi0QAl1gb9O/p/fz8/v38/v7+/v7+//////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////v7+/v7+/fz8 + /v7+7ePakE0NjEcBj0oAjkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjkkAjkkAj0sCikMBml0i9/Pu/f39/f39/v7+/v7+//////////////////////////////////// + /////////////v7+/v7+/v7+/v7+/Pz7////toldhj0AkEwCjkkAjkkAj0oAj0kAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAj0oAjUkAjkkAj0sChTwA0baa/////Pv7/v7+/v7+/////v7+ + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////v7+/v7+/v7+//7+/Pv6////x6SDhTsAkEwCjkkAjkkAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oAjUgAjkkAkEwChTwAwZx1/////Pv7//7+/f39/v7+ + /v7+/////////////////////////////////////v7+/////v39/v7+/fz7////4M67ikICj0oCjkoA + jkgAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAjkkAjkkAj0sBiD8A + pnA8/Pv6/fz7/v7+/v7+/v7+/v7+//////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////v7+/v7+/v79/fz8+fbznmMq + iEEAj0sBj0kAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkA + jkoAjUkCjUgI59rM/////fz8//7+/f39/////v7+/////////////////////////////////////v7+ + /v7+/v39/f38+vj1oWgwiUEAj0sBjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAjkkAj0kAjkkAj0kAjkkCi0QG5dXF/////fz7/v7//v7+//////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////v7+/////v7+/v///Pz7////3cm1iEAAjkoCjkkAjUgAj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAkEwChz8AqndD/fz7/fz7/v7+/v7+/v7+//////////// + /////////////////////v7+/v7+/v79/v7+/Pz7////y6uMhTwAkEwCjkkAjkkAjkoAjkkAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAkEwChTsAu5Fn/////Pz7/v7//v7+ + //7+/v7+//////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////v7+/v7+/v7+/v7+/Pz7////s4RVhjwAkEwCjkgA + jkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkAjkkAj0wChz4A + 1bui/////Pz7/v7+/f3+/v7+/v7+/////////////////////v7+/////f39/v7+/f38/v398Ojfk1ES + jUYBj0oBjkkAjkkAj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkA + j0oBi0UBllYa8+zl/fz9/v38/v7+/v7+/v////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /v7+/v7//f38/v797+XckE0OjEYAj0oAjUgAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAjkkAjkkAj0sBi0QBmVoe9vHr/f39/f39///+/f39/////v7+//////////////// + /////v7+/v7+/v7+/Pz7////tYldhj0AkEwCjkkAjkkAj0oAjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAjkkAj0oAjUkAjkkAj0wChTsA0bWZ/////Pv6/v7+/v7+/v7+//7+//////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////v7+/v7+/v7+/v7+/Pz7////yKiGhDoAkEwDjkkAjkkAj0oAjkkA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oAjkgAjkkAkEwChjwAv5dw/////Pv6 + /v7+/v7+/v7+/////////////////v7+/v7+/v7+///+/fz7////4dC/ikMDj0oCjkkAjkkAjkkAjkkA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAj0wCiD8ApW85/Pv5/fz7 + /v79/v7+/v7+//////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////v7+/v7+/v39 + /fz8+/j1oGYtiUEAj0sCjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + jkkAjkkAjkkAjkoAjkkCjEcG5tjK/////fv7//7+/v7+/v7+//7+/////////////v79/v7+/f39/fz8 + +/r4o2oziUAAj0sBjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkA + jkkAjkkAj0oAjkkCi0UF5NTE/////fz8/v7+/v7+/////v7+//////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////v7+/////v7+/v7+/fz7////3su4iUEBj0sCjkkAjkkAjkkAjkkAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjUkAkEwChz8AqHRA/f38/fz7/f39/v7+/v7+ + /v///////v7+/v7+/v7+/v/+/Pv7////za+RhTwAkEwCjkkAjkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAkE0ChjwAu5Jo/////Pz7/v7+/v7+/v7+/v7+//// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////v7+/v7+/v7+/v7+/fz7////tIdZ + hjwAkEwCjkgAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkA + jkkAj0wChjwA0rec/////Pv6/v7+/f7+//7+/v7+/////v7+/v7+/f38/v7+8erilFITjEYBj0oBjkkA + jkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkAj0oBi0UAl1YZ + 8+3m/f39/f39/v7+/v7+//////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////v7+/v7+/fz8/v398Offk1ISjEcBj0oAjUkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAj0sBi0QBl1ga9O7n/f38/f39/v7+/v7+/////v7+/v7+ + /v7+/Pv6////t4tfhjwAkEwCjkkAjkkAj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjkkAj0oAjkkAjkkAkEwChz4A0LWZ/////Pz7/v7//v7+/////v7+//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////v7+/////v7+/v7+/Pv7////zK2Ohj0AkEwDjkkA + jkkAj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oAjkkAjkgAkEwChjwA + u5Nq/////Pv6/v7+/v7+/v7+/v7+/v7+/Pz7////4dC+ikMCj0oCjkkAjkkAjkkAjkkAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAj0wCiEAAp3E7/Pv5/fz7/v79/v7//v7+ + /v7+//////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////v7+ + /v7+/////v7+/fz7+/j2o2sziUEAj0sBjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAjkkAjkkAjkkAjkoAjkkCjEcG5dbH/////Pz7/v7+/v7+/v7+/v39/fz8+/n3pG00iUEA + j0sBjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkAj0kA + jkkCikQE49PC/v7//fz8/v7+/v7+//////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////v7+/v7+/fz7////4c+9iUICj0oCj0kAjkkAjkkAjkkA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAj0sBiEAAp3E7/Pv5/fz8 + /v79/v7+/v7+/Pv6////zK+Qhj0AkEwCjkkAjkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAjkkAjkgAkE0ChTwAuY9j/////Pv6/v7+/v7+/v7+/v7+//////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////v7+/v7+/v7+/v7+ + /Pv6////t4xghjwAkEwCjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + jkkAjkkAjkkAjkkAkEwChj4Az7OX/////Pv7/v7+/f38/f398erilFQVi0YBj0oBjkkAjkkAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkAj0oBi0UBlVUW8+zl/v39/f39 + /v7+/v7+//////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////v7+/v7+/f38/v7+8+zllFQVi0UBj0oAjkkAjkkAjkkAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkgAj0sBi0UAlVUX8uzk/v39/fz8/Pz7//// + t4xhhjwAkEwCjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAj0oA + jkgAjkkAj0wChjwA0LOX/////fz7/////v7+/v7+//////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////v7+/v7+/v///fv7////zrGU + hjwAj0wCjkkAjUkAj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkA + jkkAkEwChTwAuI5k////+/r5////4tHAiUIDjkoCj0oAjUkAjkoAjkkAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAjkoAjkkAjkkAj0wCiUAApW84/Pv6/f38/v7+/////v7+//////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////v7+/v///v7+/f38+/r4pG02iEAAj0wBjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjUkAj0kAjkoCikMD4tC//v79+vj1pG02hz8AkEsBjkkAjkkA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0kAjkkAj0kAjkkCi0QF49TD + /////fz8//7//v7+//////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////v7+/////fz8////49TEi0UFjkkCj0oA + jkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAj0sBiEAA + oWkx////zrGThTsAj0sCjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAjkkAjkgAkEwChj0AupBl/////fz8/v///v7+/v7+/v7+//////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////v7+ + /v7+/v7+/v/+/fz8////uZBkhj0AkE0CjkgAjUkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0kAjkkAjkkAj0sAiEAAwZ12m18iikIAj0oBjkkAjkkAjkkAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjUkAj0oAjEYBlVYX8uzl/v79/v39/v7+/v7+//// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////v7+/v7+/f39/v398+zmllYXjEYBj0oBjkkAjkkAjkkA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAjkkAjkkAjkkAjkkAikMAjEYAjkkA + jkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAj0oAjkgAjkkAkEwC + hj0Az7SX/////fz7//7+/v7+//////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////v7+//7+ + /fz7////0bWZhz0Aj0wCjkkAjUgAj0oAj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAjkkAjkkAjkkAj0oBjkoAjkkAjkkAj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAjkoAjkkAjkkAj0wCiEAApW86/Pv5/fz8/v7+//7+/v7+//7+//////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////v7+/v7+//7+/v7+/fz8/fz7p3I+iD8Aj0wCjkkAjkkAjkoAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0kAjkkAjkkAj0kCikQF49PD/////Pz8//7+ + /v7+//////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////v7+//7+/fz8////5dbH + jEYHjkoCj0oAjkkAj0kAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oA + jkkAjkkAjkkAj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkA + jkkAkEwChj0AuI1i/////fv8/v/+/v7+/v7+/v7+//////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////v7+/v7+/v7+/v///fz7////vJRqhjwAkEwCjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAjkkAjkkAjUkAj0oBjEUBlFQW8uri/v7+/f39/v7+/v7+//////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////v7+/v7+/f39/f399O7ol1kci0QBj0sB + jkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAj0oAjUgAjkkAj0wChj0AzbCT//// + /Pz8/v7//v7+//////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////v7+/v7+/Pz7////07mfhj0Aj0wCjkkAjUgAj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + jkoAjkkAjkkAkEwCiEAAomw0/Pr4/f39/v7+/v7+/////v7+//////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////v7+/////v7+/v7+/fz8/fz8qHNAhz8AkEwCjkkAjkkAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0kAjkkAj0kAjkkCiUIC4dC+/////fz7/v7+/v7+//////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////v7+/v7+ + /fz8////5tjJi0YFjUgCj0oAjkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkgAkEwChTwA + t4tf/////fz7/v7+/v7+/v7+//////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////v7+/v7+/v7+/fz7////vZZuhTsAkE0CjkkAjkkAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAjkkAjkkAjkkAj0oBi0YBlFMT8eri/v7+/f38/v7+/v7+//////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////v7+/v7+/v39/f399vHs + mVseikQAkEsBjkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oAjkgAjkkAkEwChj0Aza+Q/////Pv6/v7+/v7+ + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////v7+/v7+/Pz7////1Luhhz4AkEwCjkkAjkkAj0oAjkkAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkA + j0sAiEAAo2w0/Pr4/fz8/f39/v7+/v7+/v7+//////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////v7+/v7+/v7+/v79/fz7/f38qndDhz8AkEsB + jkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAjkkAjkkAjkkAjkkAjkkBi0QD4c+9/////Pz7/v7+//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////v7+/v7+/fz7/v7+6NvNjUkIjUgBj0kAjkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAkEwBhTsAt4xf/////Pv6 + /v7+/v7+/v7+//////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////v7+/v7+/Pv6////wZt2hTsAkEwBjkkAjkkAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkA + jkkAjkkAj0oAi0UAlFIT8eri/v39/fz8/v7+/f39//////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////v7+/v7+/v7+ + /f38/fz89vHtmVsfikMAj0sAjkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAkEsChDoAy6uN/////Pv6/v7+/v7+/v7+//////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////v7+/f3+/v7+/Pv7////1r6lhj0Aj0oBjkkAjUkAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAj0sAiEAAoWkx + +/n3/fz8/f39/v7+/v7+//////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////v7+/v7+/v39/fz7/v7+ + rXtJhj0AkEwCj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oBjkkAj0oBjkoCiEEA4M68/////fz7/v7+/v39/////v7+//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////f39/v7+/fz7/v7+69/SjkgJi0UAjkgAjUcAjUgAjUgAjUgAjUgAjUgAjUgAjUgA + jUgAjUgAjUgAjUgAjUgAjUgAjUgAjUgAjUgAjUgAjUcAjUcAjkoAhDkAtYlb/////Pz6/f7+/v7+/v7+ + /v7+//////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////v7+/v7+/v39/v7+/Pz7////xKF9jEcSlVQW + k1IUlFIUlFIUlFIUlFIUlFIUlFIUlFIUlFIUlFIUlFIUlFIUlFIUlFIUlFIUlFIUlFIUlFIUk1IUlFMV + kU8TmVoj8ejg/v39/fz7/v7//f39/v////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////v7+/v///f39/f38/Pv67+bd8Ofe8Off8Off8Off8Off8Off8Off8Off8Off8Off8Off8Off8Off + 8Off8Off8Off8Off8Off8Off8Off8Off7uXd9O7o/////f39/v7+/v7+/v7+//7+//////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////v7+/v////7+/v7+/v7+/v7+//////////////////////// + /////////////////////////////////////////////////////////////////////////v39/v7+ + ///+/v7+//////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////7+/v////// + /////v7+/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39 + /v39/v39/v39/v39/v39/v79/////////v7+/////v7+//////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////v7+/////v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+ + /v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/////v7+//////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + ////////////////////////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAoAAAAAAEAAAACAAABABgAAAAAAAAgAwAAAAAAAAAAAAAA + AAAAAAAA//////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39 + /v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39 + /v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v7+/////v7+//////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////v7+/////v7+/v39/v39/v39/v39/v39/v39/v39 + /v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39 + /v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39 + /v79/v7+//////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////v7+//////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + ////////////////////////////////////////////////////////////////////////9/Lt9/Pu + 9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt + 9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt + 9/Lt9/Lt9/Lt9/Lt9/Lt9/Pt/v7+/v79/v7+/v7+/v7+//////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////v7+/v79/v799/Ls9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt + 9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt + 9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Pt9/Lt/v39pm80omkso2oto2oto2oto2ot + o2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2ot + o2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2ot + o2svnmMrzrGR/////fz7//////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////v7+/v7+/fz8//// + 1bygnGAqo2svo2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2ot + o2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2ot + o2oto2oto2oto2oto2oto2oto2svnWEruY9i/fz8wJpwkUwEiUIAi0QAi0QAi0QAi0QAi0QAi0QAi0QA + i0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QA + i0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0UAiUAAlVQT7uTZ + /v39/fz8/v7+//////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////f38/v7+9O3nmFkViD8Ai0UAi0QA + i0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QA + i0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QA + i0QAi0QAikMAi0MA3sq1/v7+/fz8wJhviD8AkU0Fj0sCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsC + kEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsC + kEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkU0EiD8AuItb/////f38/v7+/v7+ + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////v7+/v7+/fz7////vZNniD8AkU0EkEsCkEsCkEsCkEsCkEsCkEsC + kEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsC + kEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCj0sCkU4EiUAAuY9h + /////Pn4/v7+9e/pnF8ei0UAj0oBjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oBi0MA3cix/////fz7//////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////v7+/////Pz7////49G/j0oHjUgBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oBjEYBl1cU8urj/v39/fv6+vf0//// + 1LqfikIAj0sCj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAjkoAj0sBikIAoWcq9vLt/fz7/v39/v7+//////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////v7+ + /f38+/n3p3A0iUEAj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBiUEAzrCQ/////fz7/v7+/fz7/fz7+/n3q3hBiUAAkEsC + j0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAjkkAj0sBiEAAyKaB/////fz7/////v7+//////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////v7+/v7+/Pz7////z7GRiUEAkEwC + jkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAjkkAj0oBikIApnA0/fz7/v39/v7+/////////f38////6NrMkEwHjUgBjkoAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoA + jUgBlFIO7uTa/////f38//////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////v7+/////fz8/v398OfellYTjEYBj0oBj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkgB + jUYA4tG+/////fz7/////v7+/v7+/////fz8////wJpvhz4Aj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAkEsCiD8As4RR/fz7 + /fz7/v7+/v7+//////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////v7+/v38////uY9ghz4AkEwCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsBiD8Au5Fk/////f38/v7+ + /v7+/////////v7+/fz8/v389e/pnmMmi0MBj0sBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oCi0QB3Mav/////fz8/////v7+ + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////v7+ + /v7+/Pz8////4tG+jUgCjkkBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oBi0UAmFkW9e/o/v7+/f38//////////////////// + /////fv6////17+miUEAj0oBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBikMAoWgp+vfz/v7+/v79//////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////f39/fz8+/j2pW4z + iUAAj0sCj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0kAj0oBiUEA0ria/////fz8/v7+/v7+/////////////////v7+/v39/v39/v/+ + sH9LiEAAkEsCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAjkoAj0sCiD4Ax6Z//////fv6/v7+/v7+//////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////7+/v7//fz8////yqqHiD8Aj0sBjkkAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkA + j0sCiUIAqXU7/fz7/v39/v39/////////////////////////////v7+/fz7/v7+6t3PkU4NjkgCjkoB + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0kAj0oAjUcBkU0N7ODU/////f39/////v7+//////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////v7+/v///f38/v7+7+bdlVMOjEYBjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkBjUgB5dXG//// + /f38/////v7+//////////////////////////////7//fz7////w551iD4AkEwCjkkAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sB + hz4Ar35J/v39/fz8/v7+//////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////v7+/v39/fz7////tolYhz4Aj0sDjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEwBiEAAvZZq/////f37/v7+/v7+//////// + /////////////////////v7+/////f39/v7+9vHsnmMki0QAj0sAj0kAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oCi0QB2cKo//// + /fz7/v7+/v7+//////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////v7+/////fz8//// + 3su3jUcDjkoBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oBjEUBmlsZ9O7n/v79/f38//////////////////////////////// + /////////v7+/v7+/fz6////2cGpikIBj0oDjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0sBi0MAn2Qn+PTw/v79/f38/////v7+ + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////f39/fz8+vf0omosiUEAj0oBj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjkkAj0sCiD8A0reZ/////fz7/////v7+//////////////////////////////////////////// + /v7+/fz7/Pv6sH9KiD8AkEsBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsChj0Aw594/////fz7//7///////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////v7+/v7+/Pz7////yqmGiUAAj0sCjkkAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsBiUEAq3hA + /Pz6/f38/v39//7+/////////////////////////////////////////////v7+/////f37////7OLW + k1EOjUcBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAjkoBjUcCklAO6t7Q/v7+/fz7/v7+//////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////v7+/////f39//7/7ePYk1ENjUcAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAjUcBj0sG6NrL/////fz8/v///v7+ + /////////////////////////////////////////////////v7+/v7+/fz7////xqR+hz4Aj0sCjkkA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjkkAkEsBiUEAsIFN/v79/v39/v3+/v7+/v7+//////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////v79 + /Pz7/v7+s4RQiEAAkEwCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBhz4AwZty/////fz8/v7///7+//////////////////// + /////////////////////////////////////v7//v39/v399/PuoWgrikIAj0oBj0kAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sC + iEAA176j/////fz7//////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////v7+/v7+/fz8////2sSti0QBjkoC + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0kAj0sBi0QAm14d9vHr/v79/f39//////////////////////////////////////////// + ///////////////////////+/////fz8////3MawikMBj0oCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0sCi0QBnGAi9O7n/v38 + /fz8/v7+//////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////f39/v39+fbzoGcoikIAj0sBjkkAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sC + iUEA1buf/////fz8/v7+/v7+//////////////////////////////////////////////////////// + /////////v7+/f79/fz8/f39soNPhz4Aj0sCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEwChz0AwZxz/////f38/v7+/v7+//// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////v7+/Pz7////x6V/iD8AkEwBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0wBiEAArHpD/v7+/v38/v7+ + /////////////////////////////////////////////////////////////////////////////v7+ + /f38/v7+69/SlFIPjUcBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAjkgBkEwG6dvN/////fz8//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////v7+ + /////Pz7/v397ODUlFMRjUcCj0oBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkBkE0I6NvM//7+/fz8/////v7+//////////// + /////////////////////////////////////////////////////////////////////fz7////yKaB + hz0AkEwDjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAjkkAj0sCiUEArXtG/Pv5/fz7/v39/v7+//////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////v///f38////sH9K + hz8Aj0wCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAjkkAj0wChz8AwJlv/////f38/v7+/v7+//////////////////////////////// + /////////////////////////////////////////////v7+/v7+/f39/f389/Puomgti0MAj0sCj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0sDiD8A1r2i/////fz7/////v7+//////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////v7+/f38////18ClikMAj0sBjkkAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkA + j0oBi0QAnmIj9vHs/v39/v39//////////////////////////////////////////////////////// + /////////////////////////////////////v7+/fz8////3sq0jEYAjkoCjkkAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oAi0UA + nWAf9vHs/v7+/v79//////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////v7+/v7+/f38/f389vHsn2Qli0QBj0sBj0kAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oCikIA2MGo//// + /fz7/////v7+//////////////////////////////////////////////////////////////////// + /////////////////////////////fz8////tYhWhz4Aj0wBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsCiD8AwJpw/v7+/fz7 + /v7+/v7+//////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + ///////+/////fz7////xKF6hz4AkEwCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0wBiEAAsH9L/////f38/v79/v7+//////// + //////////////////////////////////////////////////////////////////////////////// + /////v7+/////fz7/v797uXblVQVjEYBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkCjkkG59jJ/////f38/////v7+//// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////v7+/v///f38//// + 6t3PkU4IjUcBjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjUgBkU4J6t7Q/v7+/fz8//////////////////////////////// + /////////////////////////////////////////////////////////////////////////v7+/v7+ + /fz7////yqqGiEAAj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsBiUEAqnY9/Pr4/v39/v7+//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + ///////////////////////////////////////////////////+/v39/fz7/fz7r39KiUEAj0sCj0kA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjkkAkEwChz0Aw553/////fz8/v7+/v7+//////////////////////////////////////////// + /////////////////////////////////////////////////////////////////f39/v79+/n3omor + ikEAj0sBj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAjkoAj0sCiEAA0raY/////fz6/v7+/v7+//////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////v7+/v7//fz7////1ryiiUIAj0oCjkoAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0sBikMBnmMm + +PTw/v39/f39//////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////v7+/v7+/fz7////38u2i0QEjkoDjkoAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0kAj0sBjEUAmVwb9e/p/v7+/f38//////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////f38/v7+9vHsnF8eikMAj0oAj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oBikMA2MCl/////fz7/////v7+ + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////v7+/fz8/v7+t4pZiD8AkEwCjkkAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEwChz4A + vpVq/////fz7/v/+/v7+//////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////v7+/v7+ + /Pz7////wJpwhz0Aj0wDjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsBiUAAr39J/v7+/v39/v7+/v7+//////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////v7+/////f39////8urillcTjEYAj0oAj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAjUgCjkgE5dXE/////fz7 + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////v7+/////fz8////59nLkEsHjUgB + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAjkoBjEcBk1AN7OLW/v///fz7//////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////v7+/v7+/Pz7////za6OiEAAj0sCjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEwBiUEAqnY8/f38/v39/v3+/v7+//////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////f39/fz8/fz7rHlCiUEAkEsBjkkAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sC + iD8AyKaB/////fz7/v///v7+//////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////v79 + /fz7+fXypW0xiUEAj0sBj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBiUEA0bWX/////fz8/////v7+//////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////v7+/v7+/fz7////z7OTikIAj0oCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAj0sBikMAn2Yl+vf0/v7+/f39 + //7///////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////v7+/////fz7////4tG+jEYC + jkoBjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oBjEUCl1gY8+vk/v79/fz7//////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////f38////7eLWlFEOjEcBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAjkoBi0QA28av/////fz7/v7//v7+//////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////v7+/v79/fz7/v7+uY5fiEAAj0wCjkkAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + jkkAkEsCiD8Auo9h/////fz8/v7+/v7+//////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////v7+/v7+/v79/fz8+/r4rHlE + iUEAkEsCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAjkkAj0sBiD8As4RR/f39/v39/v7+///+//////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////v7//f38/v7+7+fdl1cUjEYBjkoAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oBjkgB + 4tC+/////f38/////v7+//////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////v///v7+/Pz7////wp51hz4Aj0sCj0kAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjUcBk1EN7+Xb/////f39/////v7+//////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////fz8////z7GRhz4Aj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsCiUEAp3E4/Pv5/v38/v39 + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////v7+/v7+//7+/fz7////3ciwjEUAjkkBj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsChj0Ax6WA//// + /fz7/v7+/v7+//////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /v7+/v7+/f39/fz7+vj1qHI4iUEAj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAkEsCiD8Az7GR/////f38/v7+/v7+//////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + ///+/////fv7////7OHUlVQWjEYBj0oBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBikMAomks+PPv/v39/v79//////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////v7+/fz7 + ////5NPBj0oGjkgBj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oBjEYAl1gU8uri/v7+/fz8//////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////v7+/v7//f38////8uvj + n2QoiUEAkEwCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oCi0QB38u2/////fz7/////v7+//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////f38////u5Jlhz0A + kEwCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAjkkAj0sBiD8AupBi/////fz8/v7+/v7+//////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////v7+/////fz8/v7/+PTvq3dAiD8AkEwBjkkAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjkkAj0wCiEAAt4pa/v7+/f38/v79/v7+//////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////v7+/v7+/fz8/v398erimVwcjEUBj0sBj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjkkBjUgE4M66/////fz7/////v7+//////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////v7+/v7+/////fz8////+vj1rHpFiD8Aj0sCjkkAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAj0oAjUcBlVQR + 7+bd/v7+/f39//////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////v7+/fz7////0LSUiUEAj0sCjkkAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBikIAo2sv + +/n4/v39/v7+//////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////v39////+/n2tYhXhz4Aj0wDjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsChj0AyquI/////fz7/////v7+ + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////v7+/fz8/fz7qHM5iUEAj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsChz4Ay6uJ/////fz7/v7+ + /v7+//////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////v7+///+/v7+/fz7////+vf0 + rXtIikIAj0sDj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAj0sBikIAo2wx+PXx/f38/f38/v7+//////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /v7+/////Pz7////4tLAjkgHjUgCj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oBjEUBllYS8Oje/v7+/f38//////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////fv7////9/Puq3hChz4Aj0sBj0oAj0kA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAjkkAjkoBi0UA4M24/////fz7//////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////v7+/v7+/Pz6 + ////vpZqiD4Aj0wCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBiD8AuItc/////fz8/v7+/v7+//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////7+/////v7+/fz7////7+XaomoxiEAAkEwDj0oAjkkAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEwC + hz4AtolZ/////fz8/v3+/v7+//////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////f39/v7+9vHsnGAdi0MA + j0sBj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAjkkAjkkCjEYB38y3/////fz8/////v7+//////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////v7+/v7+ + /v///v39/Pz7////38y3mFkciUAAkEwCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oBjEYDllYX7+bc/v7+/f38 + /v7+//////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////v7+/v7+/fz7////1LqeiUEBj0sDjkoAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoA + j0sBikIApGww+vj1/v39/f39/v7+//////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////v7+/////////Pv6////////y6yJ + j0sEikMAkEsBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsCiD8Azq+O/////fz7//////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////v39/fz7/Pr5qnY9iD8Aj0wCj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBiD8AzK2M + /////Pz7/////v7+//////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////v7+/v7+/////v7+/fz7////8+zks4NTiUEAjUkAkEsCjkkAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0kAkEsBiUEApnA0/fv6/v39/f79/v7+/v7+//////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////v7+/v///f38////5tjJkUwIjkgAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjEYBlFIP7uTa/v7+/f38//// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////v7+/////v7+/fz7////////3Mixm14hiEAAj0sCj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + jkoAjkkCjkkG4c+7/////fz7/v7+/v7+//////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //7+/v7+/fz7////v5lviD8Aj0sDjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsCiUAAtIZV/////v39/v7+/v7+//////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////v7+/v7+///+/v39 + /fz8////+PTvvpZujUgDikQAkEwDj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsChz4AuI1d//// + /fz7/v7+//////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////7+/f38/f38 + 9O7nm10ci0QAj0oBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oBikMA3ciy/////fz8/////v7+//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////v7+/////v7+/fz7////////28aunmImhz4A + jkkAj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjEYAl1gW8+vk///+/f38/////v7+//// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////v7//Pz7////1LqdikIAj0sB + jkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAjkkAj0oBikMAoWgp+fby/f39/f39//////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////v7+/v7+/////v7+/fz7/v//////8OjdtolbjEUAikMAkEwCj0oAjkkAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsCiUEAzrGR/////fz7/v7+/v7+//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////v39/fz7/f38rn1HiD8Aj0sCj0kAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkA + j0sBiD8AyKiE/////fz8/v7+/v7+//////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////f38////////+/j2y62LlVQSiD8AjkoBj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjkkAj0oBiUEApW4z+vj1/v39/v39//////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////v7+/v7+/Pz7/v7+6d3Qkk8LjUcBjkoAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjUcBkk8J7eTZ + /v7+/f38/////v7+//////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////v7+/////v7+/f38/f39/////Pr4 + 2sSsomktiD8AjEcAkEwCj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAj0oAjkkAjkgD + 49PB/////fz8/////v7+//////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////v7+/f38////w552hz4Aj0wBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBiD4As4VS/////f39/v7+//// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////v7+/v7+/////f38/v7+////////38y3qXU+iUEAikMAkEsCj0sB + jkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsChz4AvJNm/////fz7/v7+/v7+ + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////v7+ + /////f39/f389vHrnGAgikMAj0sCj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkBjEYA3Mex/////fz7/v7+/v7+//////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /v7+/////////v39/fz8/v7/////////4tC9rntHjUgCiUIAkEsCj0sBj0oAjkkAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAj0oBjEUBmVsZ9O7m/v7+/f38//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////v7+/v7+/Pz7//// + 2MCnikMAj0oCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAjkkAj0oAi0MAnmMj+ffz/v39/f38//////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////v7+/v7+/v7+/v7+/v39/fv6//// + /////fz82MGnrXtIjUYAiUEAjkkAkEwCj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAjkkAj0sCikEA0bWX/////fz7/////v7+//////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////v7+/f39////r35IiUAAj0wC + jkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAjkkAj0sBiEAAxKF6/////fz8/v7+/v7+//////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////v7+/////v7+/f38/fz6/v7/////////8uvj0bWXomktjEUAiD4A + j0oBkEsBj0oAjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAkEsC + iUEAqHQ7+/j2/fz8/v39/v7+//////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////v7+/////fz7/v7+6NvNkEwIjUgBj0oBj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + jUgBkk8K7ODV/////fz7/////v7+//////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////v7+ + /////v7+/v7+/v7+/v39/v39/////////f3859jKvZVqnF8hiD8Ai0QAj0oAkEwEj0oAjkkAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkgBjkkE5dXE/////fz7 + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////v7+/v7+/Pz7////w551iD4Aj0wCjkkAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsCiUEAsIBL//// + /f38/v7+///+//////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////v7+/////v7+/fz8/fz6//////// + ////////69/T0baYqndBjkgAiUAAi0QAkEwDj0sBj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBiD8AvZRo/////fz7/////v7+//////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////v7+/f39+vbzn2UlikMAj0oBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sCi0QA2sOq/////fz7/v7//v7+ + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////v7+/////v7+/v7+/v79/v38/v38/f38/v///////////v398Ojf0bWXsYBNlVUShz0A + ikIAjkkAkEwCj0sCj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oBi0UBmlsc8eri/v39/fz8/v7+//////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////v7+ + /////Pz7////28avi0MBj0oCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0sBikMAnmIj+PXx/v39/f38///+//////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////v7+/////v7+/v79/f38 + /fz7/fz6/v7+/////////////////Pr55dXDyaqHr31Lkk8HikMAiUEAjUYAkEwDj0sBjkkAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + jkkAj0oBiUEA1Lqd/////fv6//////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////v7+/f79/fz7/f38 + sYJOiEAAj0sCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAjkkAj0sBiD8AxKB5/////fz8/v///v7+//////////////////////////// + /////////////////////////////////////////////////////////////////v7+/////v7+/v39 + /v39/v39/v39/v39/v39/v38/v38/fz8/fz8/f38/f38/v38/v38/v39////////////////////9vDq + 6d3P0baYtIZVn2Unkk8HhjsAiUAAjkgAj0sBkEsCj0sBj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsCiUAArHpD/f38 + /v39/v39/v7+//////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////fz8////7OHWkk8KjUcAjkoA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAjkkAjUgBkU4J6NrM/////fz8//////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + ////////////////////////////////////////9O3l49PB1Lqew552soNRnmIhikIAikIAiUEAikIA + jUgAkE0EkEwCj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoBjUgCj0wK59nK/////fz7/v7+//////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////v7+/v7+/fz7////xqR+hz4AkEwCjkkAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sC + iUEArnxG/v7+/f38/f39/v7+//////////////////////////////////////////////////////// + /////////////////////////////////v7+/////fz6+PXv+fXy+fXy+fXy+fbz9vDr8Oje8Oje6dzO + 5NXE2MCmzbCPv5dusIBMn2UnmlwZk1EJjEUAhz0AiUEAjUcAkEwEkE0EkU0EkU0EkEwDj0sCj0sCj0sC + j0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sC + j0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sC + j0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sC + j0sCj0sCj0sCj0sCj0sCj0sCj0sBkE0Ehz4Av5ht/v7+/fz7/v7+//////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + ///////////////////////////+/f39/f389/PuoGYnikIAj0sCj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsBiUAA1r2i//// + /Pz7/////v7+//////////////////////////////////////////////////////////////////// + /////////////////fz7////4M25l1YeoGYnn2MknmMkn2QmmVsYkUwEkU0FhTkAgzcAhDgAhDkAhDkA + hToAhToAhz0AiEAAikIAi0UAi0QAikIAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEA + iUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEA + iUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEA + iUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEA + iUEAiUEAikIAhz0Am1wc9O7o/v7+/f39/////v7+//////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////v7+//7//f38////2sSsi0QAj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oBi0UBnWEg9fDr/v39/f39//////// + //////////////////////////////////////////////////////////////////////////////// + /fz7////6NrMtIZYupFjuY9huo9huY9gupBjvJNnvJNnvpdsv5dtv5dtv5dsvpdsvpdsvpdsvpZrvpZr + vpVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVq + vZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVq + vZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVq + vZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvpdsuI1g + 4M24/////fz8/v7+/v7+//////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + ///////////////////////////////////////////////////////////////////////////////+ + /v7+/fz7////tIZUiD8Aj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsBiD8AwZxy/////fz7/v7+/v7+//////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////v7+//////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////v7+/v7+/fz7/v397ePY + llURjEYBj0oBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAjkgBkEsF6NrN/v7+/fz8/////v7+//////////////////////////// + /////////////////////////////////////////////////v7+/////v79/fz7/fz7/fz7/fz7/fz7 + /fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7 + /fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7 + /fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7 + /fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7 + /fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/v39/v7+/v7+/v7+//////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////v7+/Pv7////yaiEiD8Aj0sBjkkA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjkkAkEsCiUEArXpD/v7//f39/v7+//////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////v7+/////f39/v38+vf0oWgrikIAj0sBj0kAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oB + ikMA1bqf/////fz7/v7+/v7+//////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////v7+/v7+/fz7////3MiyjEYBjkkBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oBi0QAmlwa9O7n/v39 + /f38/////v7+//////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////v7+/f39////tIdViD8Aj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsBiD4Avpds/////f38/v7+//////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////v7+//// + /fz8/v7+7+XblFIOjEYBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjUgBjkoD5dbF/v7//fz7/v7+/v7+//////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////v7+/////v7+/v38/v39 + /v38/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39 + /v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39 + /v39/v39/v39/v39/v39/v39/////////v////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////v7+/v7+/fz8////y6uI + iUEAj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAjkkAj0sBiUEAq3c//fz7/v38/f79//////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////v7+//////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////v7+/v7+//////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////f39/v39/Pv6pGwuikEAj0sBjkkA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjkkAj0sCikIA1Lqd/////fz7/v///v7+//////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////v7+/v7++fbzqXY9nmImoGYnoGUnoGUnoGUnoGUnoGUnoGUnoGUn + oGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUn + oGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnn2UnoGUnnmMm4c+8//// + /fz8//////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////v7+/////fz7////4tC9jUgEjkkCjkoAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oBi0QA + mVsZ8+zl/v38/fz8//////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////v7+/fz7////xaJ8hToAi0QAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIA + ikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIA + ikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAi0QAhDoAqHI6+/n3/v39/v7+//////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////v7+/v7+/fz8////uIxciUAAkEsCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEwCiD8AvpZs/////fz7 + /v7+//7+//////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////v7+/////fz7/v7+ + 7ODUk1EPjUcCkEwDj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sB + j0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sB + j0sBj0sBj0sBj0sBj0sBj0sCkEsCjkkDkk4L6t7Q/////fz7//////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////f39/v7+8enhllYQjUYAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAjkkBjkkE49PB/////fz8/v///v7+//// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////v7+/f38////soJOiEAAj0sBjkkA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjkkAj0wBiD8Awp10/////fz8/v7+/v7+//////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////v7+//// + /Pz7////za+OikEAkEsBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAj0sDiEAAp3I3/Pr4/f38/v39/v7+//////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////v7+/Pz7////2cOri0QAj0oBjkkAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oBi0UAnWAf + 9vHs/v79/fz8//////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////v7+/f39/f38+/n3pm8z + iUEAj0sBj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAjkkAj0oCikIA0LOU/////fz8/////v7+//////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////v7+/v7+/f38/f38+PPvoGcqi0QBj0sBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0sCiUEA1r2i/////fz7/v7+/v7+ + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////v7+/////fz7////4tC9jkkDjkkBjkoAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAi0YAl1gT8+3l/v7+/f39//////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /fz7////x6V/iD8AkEsCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsCiEAArXtF/f38/f38/v7+//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////v7+/v7+/fz8////vJJmiD4AkEwCjkkAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sCiEAA + upFj/////fz8/v7+/v7+//////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////v7+/f38/v7+6t7RklALjUcB + jkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0kAjkgBkU0I6NrM/////f38/////v7+//////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////v7//fz8/v798eril1kVi0QAj0oBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkgBj0oG5NPC/////fz7 + /////v7+//////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////v7+/v79/f38/f38soNQiUEAj0sCj0kAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsC + hz4AwZty/////fz8/v7+/v7+//////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + ///////+/v///f37////0bWXiUEAj0sCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBiUEApm8z/fz6/f38/f39//////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////v7+/////fz7////3MexikMAj0sCjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oBi0MBnGEj9vLt/v39/f38 + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////f39 + /f38/Pr4qHM6iUEAj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oCiUEAz7KS/////fz7/v7+/v7+//////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////v39/f38+PXxomotikIAj0sBj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBiUIA1r2i/////fz7/////v7+//////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////v7+/v7+/fz7////49PBjUgC + jkkBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAjEYBllYU8ejf/v79/f38/////v7+//////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////v7+/v7+/fz7////y6yJ + hz8Aj0sCjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0kAkEsBiD8ArXpD/fz7/v38/v7+/v7+//////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////v7+/fz8////vJNmhz8Aj0sBjkkAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + jkkAkEsChz4At4ta/////fz8/v7+//////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////v7+/////f39////7ePZlFIPjEYAj0oAj0kAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + jkoAjUgCkEwL6dzO/////fz7//////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////v7+/////fz8/v398+vkmFoXi0UAj0oBj0kAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAjkkBjUcD + 38y3/////fz7/v7+/v7+//////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////v7+/fz7/f38tYdVhz8Aj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBiD8AwZtx//// + /fz8/////v7+//////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////v7+/v7+/fz8////0reaikIAjkoBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBiUEApGww+/j2/v38/f39 + /////v7+//////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////v7+/v7+/fz6////3su1jEUEjkoCjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oBi0QAnGAf9fDq/v79/f39//7+//////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////v79/v39/f39q3c+iUEAj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBiD8AzKyK/////Pz7/v7+//////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////v/+/f39/v79 + +fb0o2otikMAj0sBj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sCikIA07eb/////fz7/v7+/v7+//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////v7+/////fz8 + /v7/59fIjkoEjUkBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oBi0YBl1cV7+bc/f39/fz7/v7+/v7+//////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////v7+//7//fv7////yqmGiD8AkEwCjkkA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjkkAj0sBiEAAqXU7/Pv6/f38/v7+//////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////v7+/v7+/fz8////v5dtiD4A + kEsBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAjkkAj0sBiD8Atotb/////fz7/v7+///+//////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////7+/fz8/v7+7uTalVQUjUcCj0oBj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkCj0oK + 5tbG/////fz8/////v7+//////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////f39/v399O7om10ci0UBj0oBj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + jkkAj0oBjUcB4M25/////f38/v7///////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////v7+/////f38////tolXiD8AkEwCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEwCiD4Avpdr/////fz7/v39/v7+ + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////v7+/////fz8////07ibiUAAkEsBjkkAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0sCikIAomos + +PTw/fz8/f39/v7+//////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /fz7////3ciyikMAj0oCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAj0oAi0UAmlsY9O7n/v7+/v39/v////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////v7+/f39/f38/v79q3c/iUAAj0wCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEwChz4AyaiF/////fz7//// + /v7+//////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////v7+/f39/f38+fXxomoviUEA + kEwCjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAjkoAj0sCiUAA07mc/////fz7//////7+//////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////fz8////6NvMkEwHjUgBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAjUcAk1EL7uTa/////f39//////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////v7+/////f38////y6uJhz8Aj0sBjkkAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAj0sB + iUAAq3dA/Pr4/fz7/f39/v7+//////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////v7+/v///fz7 + ////wpxziD8AkEsBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAjkkAkEwCiD8AtIZU/v39/fz7/v39/v7+//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////f38/v7+7uPYlFMPjUcBjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkgBj0oC5dbG/////fz7 + /v7+//////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + ///////////////////////////////////////////////////////////+/fz8/v399/LunGAfi0MA + j0sBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAjkoAj0kBjEUC3cm0/////fz7/////v7+//////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /v7+/v79/f38/v7+tYhYiD8AkEsCj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0wChz0AvpZr/////fz8/v7+//////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////v7+/v///fz7////17+likMAj0oBjkkAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kA + j0oBikMAomgq+vf0/f39/v7+//////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////v7+/////Pz7////4M24 + i0UAj0oBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0sBi0QBm10f8+3m/f38/fz7/v7+/v7+//////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////7+/v79/f39////rnxGiUAAkEsCjkkAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sCiEAAyKWB + /////Pz7/v7+/v7+//////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////v79/f38+PTxomkti0MAj0sBjkkAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + jkkAkEwBiUEA0rea/////fz7/v7+//////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////v7+/v7//fz7////6t3QkE0IjUgBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oBjUcBkk8M69/T/v7+/fz7//// + /v7+//////////////////////////////////////////////////////////////////////////// + /////////////////////////v7+/v7+/fz7////y6yKhz4Aj0sCjkoAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sCiUAAqnU9/Pz7 + /v38/v39/////v7+//////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + ///+/v7+/fz7////wZtyhz8Aj0wCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBiEAAsoJP/////f38/v7+//////////////// + //////////////////////////////////////////////////////////////////////////////// + /////v7+/////f38/v7+8enhllYSjUcBj0oBj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjUgCj0sJ5dbG//7+/Pz7/v7+/v7+//// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////v7+/////f38/v79 + +PTwnGAfi0QAj0sAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAjkkAjkoCi0QA28St/////Pz7/v7+/v7+//////////////////////// + /////////////////////////////////////////////////////////////////////////v7+/f38 + ////uI1diD8AkEsCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsBhz8AvpZq/////fz7/v7+//////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////v7+/v7+/fz7////2sSsi0UAj0oB + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0kAj0sCikMAnmQl9/Lt/f38/f39/////v7+//////////////////////////////////// + /////////////////////////////////////////////////v7+/v7+/fz7////4tC+jUcCjkkBj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0kAj0oBi0QAmVsZ9O3m/v79/f38/////v7+//////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////v7+/f38////sYFMiD8Aj0sBjkkAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkA + kEwChz4AxaJ8/////fz7/v7+//////////////////////////////////////////////////////// + ///////////////////////////////////+/f39/f39+/n3pGwwikEAj0sBjkkAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAj0sCiUAA + 07mb/////Pz7/v7+/v7+//////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////v7+/////fz7/v7+7OHUkU0HjUgBj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oBjUcBk1AO6+DU + /v7+/Pz7/v7+/v7+//////////////////////////////////////////////////////////////// + /////////////v7+/v///f38////za+OiD8Aj0oBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsCiUEAq3c+/fz7/fz8/f79//// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////v7+/v7+/fz8////xqR/iD8Aj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0wChz4AsIBM/v79/fz7/v7+//// + //////////////////////////////////////////////////////////////////////////////7/ + /fz8/v7+8erillYSjEYBj0oBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkBjkkF5tfH/////fz8/////v7+//////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////f39/f39+PXwn2Qli0MAj0oBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oBikMA2cKp/////fz8/v7///////////////// + /////////////////////////////////////////////////////////v7+/v7+/fz8////uI1fiD8A + kEwCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAjkkAj0wDhz4AvpVq/////Pz7/v7+/v7+//////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////v7+/////fz8//// + 2sWtikEAj0oBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oBi0MAnWAg9vDq/f38/f38/v7+//////////////////////////// + /////////////////////////////////////////////fz7////4tC9jUcAjkkBjkkAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + jEQAm10b9O/p/v7+/f38//////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////v7+/v7+/v39/v7+soJPiUAAkEwC + jkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAjkkAj0sDhz8Aw552/////fz7/v7+//7+//////////////////////////////////////// + /////////////////////v7+/f39/f38/Pr4pW8yikIAj0sCj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sCiUAA07ib/////fz7 + /v7//v7+//////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////f38/v7+7OHWklAMjUcBj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkA + jUgAklAK6dzO/////f38/v////////////////////////////////////////////////////////// + /v7+/////fz7////za+OiUEAj0sCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0sCiEAAqXY9+/n3/fz7/v39///+//////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////v7+/////fz8////yamFiD8Aj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0wCiEAArXpD/Pv6 + /fz6/v39/v7+/////////////////////////////////////////////////////////f39/v7+8eng + lVMPjEYAj0oBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAjkkAjkkBkEwF5tjJ/////f38/v///v7+//////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////v7+/f39/v39+fXyomkrikMAj0sCj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAj0sDikMC17+l/////fz7/////v7+ + /////////////////////////////////////////////v7+/v7+/f38////uI1diEAAkEsDjkkAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + jkkAkEwBiD8Au5Jl/////fz8/v7+//7+//////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////v7+ + /////fz8////3ciyi0QAjkoCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAj0sBi0QAnmIi9vLt/v7+/v7+//////////////////// + /////////////////////////v7+/////fz8////4tC9jkgEjkkBj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oBjEUBmFoX8uvj + /v39/fz8/////v7+//////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////v7+/v7+/fz8//// + tYdViD8AkEsBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAjkkAj0wDhz4AwZtx/////fz7/v7+/v7+//////////////////////////// + /////////////v7+/v39/Pr4pG0vikMAj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBiEAAz7KT/////fz7/v7+/v7+//// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////fz7/v7+7uTalVQQjEYBj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oBjUgCkU4N59jI/////fz8/////v7+/////////////////////////////v7+/v7+/fz8 + ////za6NiUAAj0sCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sCiUEApm8z/Pv5/v39/f39//////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////v7+/v7+/fz7////yaiDhz4Aj0sCjkkAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sB + iUAAqnY9/fz8/f38/v7+/////////////////////////////v7+/////f38/v398enhllcVi0UBj0oB + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAjkgBjkkD5NTD/////fz8/v7+/v7+//////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////f39/v39+/j2oWgqikIAj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sCiUIA07mb//// + /fz7/v7+/////////////////////////////v7+/f38////t4tahz8AkEsBjkkAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sCiD8A + upFj/////fz8/v7+//////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////v7+/v7+/fz7////4M67jEYDjkkCj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0sBi0QBm18g8+3l/v39/f38/v7+/v7+ + /////////////v7+/v7+/Pz7////5NTEjkkEjUkCjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAj0oAjEUAllcT8+vk/v39/f38//// + /v7+//////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /v7+/fz8////uIxciD8Aj0sCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsChz0Avpdr/////fz7//////////////////////// + /f39/fz8+/n3p3E4iUEAj0sCj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAj0sBiUAA0LSV/////fz7/v7+/v7+//////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////v7+/////fz8/v7+8Ojf + llYSjEcBj0oAj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAjkkAjkgBkEwI5dfG/////fz7/v7+/////////////v7+/fz7////0LSWiEAA + kEsCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAjkkAj0sBikIAp3A1/Pr5/v39/v39//////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////v7+/v7+/fz7////za2Mhz8AkEsCjkkA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0kAj0sBiEEArHlC+/r4/fz8/v39/v7+/v7+/v7+/f38/v398+zkmVoZi0UBj0oBj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + jkkBjUcA49LA/////f38/////v7+//////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////v38/f39+/n3pG0yikEAj0sCjkoAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sC + iD8A0ria/////fz7//////7+/v7+/fz7////u5Jlhz0Aj0wDjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsBiD8Au5Jk/////f38 + /v7+/v7+//////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////v7+/////f38////38y3jUcAjkoBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0sBjEUBmlsb8eng/v79 + /f38/////f38////5NTDjkkEjkkBjkkAj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oBjEUBl1gV8uvk/v79/f38//////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////v7+/v7+/fz8////t4xchz4AkEwCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0wCiD4Au5Jm/////fz7/f39/fz8+/n3 + qXQ6iUIAj0sBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAjkkAkEsBiD8A0LOU/////fz8/////v7+//////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /fz7/v7+8engllYWjEYBj0oBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAjkkBjkgD5NTD/////Pr5////0bSXiEAAj0sDjkoAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0kAj0sCikIAp3E3/Pr4/v39/v39/v7+//////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////v7+/////fz8////0baX + iUAAkEsBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0kAj0sBiUAApnE2+fbz/f388uvjl1cTi0UAj0oAj0kAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAjkkBjkgE5NTD + /////fz8/v////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////v7+/v3+/v39/Pv5p3I4iUEAkEsBjkkA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjkoAj0sCiUAAz7GT////upFjiD8Aj0wCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEwCiD8Au5Fj/////fz8/v7///7+//// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////fz7////4tG/jUcDjkkCjkoAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAj0oAi0MA + nWEh1r2ikE0KjkgBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0sBjEYBl1gX8urj/v7+/f38///+//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////v7+/v/+/Pz7////u5FkiD8AkEwBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oAjkkAkU4FjUcAj0oA + jkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAjkkAj0sCiEAA0bWW/////fz7/v7+/v7+//////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////f38/v7+8+zlmFkZjEYBj0sBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkgAj0oAjkkAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBikIA + qHI4/Pv5/v39/v7+//////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////v7+/v7+ + /fz6////0LOTiD8AkEwCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oAj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kCjUcF49G//////f38//// + /v7+//////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////v7+/v39+/r3qnY+ + iUEAkEsBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sChz4Au5Nm/v///fz8/v7+/v7+//////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////v7+/////f38////5tfIjkkIjkkCj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAjkoAj0oAjEYAl1cU8+zl/v7+/v39//////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////v7+/v7+/fz7////v5huhz4Aj0sCjkkAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kA + kEsChz8Az7KS/////fz7/////v7+//////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////v79/v7+9O7pmlwZi0UAj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAkEsCikEApnA3+vf0/fz7 + /v39/v7+//////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////v7+/////fz7////07ibiD8AkEsDj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkoBjEUA38y3/////fz7//////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////v7+/v39 + /fz7+/n3q3hBiUEAkEsCj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAjkkAj0wChz4AuY1f/////f38/v7+/v7+//////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////fz8////59jIj0oD + jkkBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oBjEYCl1YV7+Xb/v39/fz7/v7+//////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////v7+/v7+/f37////vpdthz0Aj0wCj0kAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsBhz4Ay6uJ + /////fz8//////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////v7+/fz8/v399O/om18hi0QBj0oBj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBiUEApW40+vf0/v39/v39/v7+/v7+ + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////f38////1r2iiUAAj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAjkkCjEYE4M24/////fz7/v7+//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /v7+/v7+/v79/v38/v39rnxIiEAAkEsBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAjkkAkEwChz8At4tZ/v7+/fz7/v7+//////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////v7+/fz7 + /v7+6NrMkU0LjkgCjkoBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjEYB + llYW7+Xb/v7+/f38/////v7+//////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////7//fz7////wJpwhz0A + kEwCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sCiD8Aza6M/////fz7/v7+ + /v7+//////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////v7+/////f39/v799vLtnWIki0QAj0sBj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAj0sBiUEApG0x+vf0/f38/v7+//////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////v7+/v7+/fz7////1r6ii0MAj0oCjkkAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAjkoAj0kCjEYF38y3/////fz7/////v7+//////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////v7+/f38/fz8rXtEiUAAj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkA + j0wChz8AuIxc/v7+/fz7/v39/v7+//////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /v7+/////fz8////697Skk8MjUgBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAjkoAjUYAllYR8Ofe/v/+ + /v39/v////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////v7+/v7+/fv6 + ////xKF6iD4AkEsCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0wCiD8Ay6uJ/////v38//////7+//////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////v79/v7++fXyn2Qli0MA + j0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0kAj0sCiUEApW8z+fby/fz7/f39/v7+//////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////v7+/////fz8////2cKqikQAjkoCj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjkoAjkkBjEYA4M24/////fz8/v7+//////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////v7+/v7+/fz7/Pv6sH9LiD8AkEsCj0kAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0wChz4At4pa + /////f38//////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////f38////7OLWkk4KjUgBjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0sBjEUBl1cV7uXb/v39/Pz8/v7+/v7+ + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /v7+/////fz8////xaJ8iD8Aj0wCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsBiUAAzK2L/////Pz7/v7+//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////v7+/v39/fz7 + 9/LtomgsikIAj0sCj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAjkkAj0sBiUIApGww/Pn3/f38/f39//////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////fz7////3Mewi0QAj0oB + jkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkB + jUcE3sq2/////Pz7/v7+/v7+//////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////v7+/v7+/f38////tolXiD8Aj0wBjkkAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsBiD8AuIxb/////fz8/v7+ + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////v7+/fz7/v7+7eLWlVMSjUcCj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjUYBllYT8Ojf/v7+/f39/////v7+//////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////fz8////yKaBhz4AkEsBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAjkkAj0sBhz8AyaiF/////fz7/v7+/v7+//////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////v7+ + /v7+/v39/v39+PTxomktikIAj0sBj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oBikMAomgq+fXy/v39/f39//////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////v7+/fz7//// + 3Mixi0MBjkoCjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oBi0MA3ciy//// + /fz8/////v7+//////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////v7+/fz7/v79tIdVhz4AkEwC + jkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEwBhz8AtIdV/////f37/v7+/v7+//////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////v7+/////f38////7+belVUUjEYBj0oBj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAjkoAjUYBlFMO7uPZ/v7+/fz8//////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////v7+/v7+/fz7////y6yJiD8Aj0sCjkkAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjkkAkEwBhz4AyKaD/////fz7/v///v7+//////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////v7+/v38+ff0pW4yikEAj0sBj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0sBikIAoWgq + +vf1/f38/f39//7+//////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////v7+ + /////fz7////4M24jEUFj0kCjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkCjEYB3ciy/////fz7/////v7+ + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////v7+/v39/fz7/v39 + tolZhz4AkU4FkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwD + kEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwD + kEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwCkU0EiEAAtIVS/////f39/v7+///+//////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////v///v39////8OfdlVQQhDoAiD8A + iD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4A + iD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4A + iD4AiD4AiD4AiD8AhToAkU4K7+Xc/v7+/f38/////v7+//////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////7+/////v7+////38y4y6yNzrGQzrCQzrCQzrCQzrCQ + zrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQ + zrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrGS + yqqM38u2/////v79/v7+/v7+//////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////v7+/v7+/v7+/v79//////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////v79/v7+ + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////f38/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8 + /fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8 + /fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/f38/v7+/////v7+//////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + ////////////////////////////////////////////////////////////////////////AAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA= + + + \ No newline at end of file diff --git a/LFP_Manager_PRM/Forms/fmxParamConfig.Designer.cs b/LFP_Manager_PRM/Forms/fmxParamConfig.Designer.cs new file mode 100644 index 0000000..e9e2697 --- /dev/null +++ b/LFP_Manager_PRM/Forms/fmxParamConfig.Designer.cs @@ -0,0 +1,1136 @@ +namespace LFP_Manager.Forms +{ + partial class fmxParamConfig + { + /// + /// Required designer variable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Clean up any resources being used. + /// + /// true if managed resources should be disposed; otherwise, false. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Windows Form Designer generated code + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + this.components = new System.ComponentModel.Container(); + System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(fmxParamConfig)); + this.layoutControl1 = new DevExpress.XtraLayout.LayoutControl(); + this.gbModuleNo = new DevExpress.XtraEditors.GroupControl(); + this.layoutControl9 = new DevExpress.XtraLayout.LayoutControl(); + this.teMdNo = new DevExpress.XtraEditors.TextEdit(); + this.chkMdAll = new DevExpress.XtraEditors.CheckEdit(); + this.layoutControlGroup9 = new DevExpress.XtraLayout.LayoutControlGroup(); + this.layoutControlItem26 = new DevExpress.XtraLayout.LayoutControlItem(); + this.lcitemMdNo = new DevExpress.XtraLayout.LayoutControlItem(); + this.gbCvDiffParam = new DevExpress.XtraEditors.GroupControl(); + this.layoutControl8 = new DevExpress.XtraLayout.LayoutControl(); + this.layoutControlGroup8 = new DevExpress.XtraLayout.LayoutControlGroup(); + this.gbDefaultParam = new DevExpress.XtraEditors.GroupControl(); + this.layoutControl7 = new DevExpress.XtraLayout.LayoutControl(); + this.chbAll = new DevExpress.XtraEditors.CheckEdit(); + this.btnDefaultSet = new DevExpress.XtraEditors.SimpleButton(); + this.cbFactoryDefault = new DevExpress.XtraEditors.CheckEdit(); + this.layoutControlGroup7 = new DevExpress.XtraLayout.LayoutControlGroup(); + this.layoutControlItem21 = new DevExpress.XtraLayout.LayoutControlItem(); + this.layoutControlItem22 = new DevExpress.XtraLayout.LayoutControlItem(); + this.layoutControlItem24 = new DevExpress.XtraLayout.LayoutControlItem(); + this.btnGetAll = new DevExpress.XtraEditors.SimpleButton(); + this.gbSocParam = new DevExpress.XtraEditors.GroupControl(); + this.layoutControl6 = new DevExpress.XtraLayout.LayoutControl(); + this.layoutControlGroup6 = new DevExpress.XtraLayout.LayoutControlGroup(); + this.gbCurrentParam = new DevExpress.XtraEditors.GroupControl(); + this.layoutControl5 = new DevExpress.XtraLayout.LayoutControl(); + this.layoutControlGroup5 = new DevExpress.XtraLayout.LayoutControlGroup(); + this.gbDchTempParam = new DevExpress.XtraEditors.GroupControl(); + this.layoutControl4 = new DevExpress.XtraLayout.LayoutControl(); + this.layoutControlGroup4 = new DevExpress.XtraLayout.LayoutControlGroup(); + this.gbChaTempParam = new DevExpress.XtraEditors.GroupControl(); + this.layoutControl3 = new DevExpress.XtraLayout.LayoutControl(); + this.layoutControlGroup3 = new DevExpress.XtraLayout.LayoutControlGroup(); + this.gbVoltageParamSet = new DevExpress.XtraEditors.GroupControl(); + this.layoutControl2 = new DevExpress.XtraLayout.LayoutControl(); + this.layoutControlGroup2 = new DevExpress.XtraLayout.LayoutControlGroup(); + this.btnClose = new DevExpress.XtraEditors.SimpleButton(); + this.layoutControlGroup1 = new DevExpress.XtraLayout.LayoutControlGroup(); + this.layoutControlItem3 = new DevExpress.XtraLayout.LayoutControlItem(); + this.layoutControlItem1 = new DevExpress.XtraLayout.LayoutControlItem(); + this.layoutControlItem8 = new DevExpress.XtraLayout.LayoutControlItem(); + this.layoutControlItem11 = new DevExpress.XtraLayout.LayoutControlItem(); + this.layoutControlItem2 = new DevExpress.XtraLayout.LayoutControlItem(); + this.layoutControlItem16 = new DevExpress.XtraLayout.LayoutControlItem(); + this.layoutControlItem18 = new DevExpress.XtraLayout.LayoutControlItem(); + this.emptySpaceItem1 = new DevExpress.XtraLayout.EmptySpaceItem(); + this.layoutControlItem19 = new DevExpress.XtraLayout.LayoutControlItem(); + this.layoutControlItem20 = new DevExpress.XtraLayout.LayoutControlItem(); + this.layoutControlItem25 = new DevExpress.XtraLayout.LayoutControlItem(); + this.tmrDisplay = new System.Windows.Forms.Timer(this.components); + this.ucCvDiffParam = new LFP_Manager.Controls.ucParamSet(); + this.layoutControlItem23 = new DevExpress.XtraLayout.LayoutControlItem(); + this.ucLowSocParam = new LFP_Manager.Controls.ucParamSet(); + this.layoutControlItem17 = new DevExpress.XtraLayout.LayoutControlItem(); + this.ucDOCParam = new LFP_Manager.Controls.ucParamSet(); + this.ucCOCParam = new LFP_Manager.Controls.ucParamSet(); + this.layoutControlItem14 = new DevExpress.XtraLayout.LayoutControlItem(); + this.layoutControlItem15 = new DevExpress.XtraLayout.LayoutControlItem(); + this.ucDLTParam = new LFP_Manager.Controls.ucParamSet(); + this.ucDHTParam = new LFP_Manager.Controls.ucParamSet(); + this.layoutControlItem12 = new DevExpress.XtraLayout.LayoutControlItem(); + this.layoutControlItem13 = new DevExpress.XtraLayout.LayoutControlItem(); + this.ucCLTParam = new LFP_Manager.Controls.ucParamSet(); + this.ucCHTParam = new LFP_Manager.Controls.ucParamSet(); + this.layoutControlItem9 = new DevExpress.XtraLayout.LayoutControlItem(); + this.layoutControlItem10 = new DevExpress.XtraLayout.LayoutControlItem(); + this.ucSUVParam = new LFP_Manager.Controls.ucParamSet(); + this.ucSOVParam = new LFP_Manager.Controls.ucParamSet(); + this.ucCUVParam = new LFP_Manager.Controls.ucParamSet(); + this.ucCOVParam = new LFP_Manager.Controls.ucParamSet(); + this.layoutControlItem4 = new DevExpress.XtraLayout.LayoutControlItem(); + this.layoutControlItem5 = new DevExpress.XtraLayout.LayoutControlItem(); + this.layoutControlItem6 = new DevExpress.XtraLayout.LayoutControlItem(); + this.layoutControlItem7 = new DevExpress.XtraLayout.LayoutControlItem(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControl1)).BeginInit(); + this.layoutControl1.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.gbModuleNo)).BeginInit(); + this.gbModuleNo.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControl9)).BeginInit(); + this.layoutControl9.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.teMdNo.Properties)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.chkMdAll.Properties)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup9)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem26)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.lcitemMdNo)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.gbCvDiffParam)).BeginInit(); + this.gbCvDiffParam.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControl8)).BeginInit(); + this.layoutControl8.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup8)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.gbDefaultParam)).BeginInit(); + this.gbDefaultParam.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControl7)).BeginInit(); + this.layoutControl7.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.chbAll.Properties)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.cbFactoryDefault.Properties)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup7)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem21)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem22)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem24)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.gbSocParam)).BeginInit(); + this.gbSocParam.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControl6)).BeginInit(); + this.layoutControl6.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup6)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.gbCurrentParam)).BeginInit(); + this.gbCurrentParam.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControl5)).BeginInit(); + this.layoutControl5.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup5)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.gbDchTempParam)).BeginInit(); + this.gbDchTempParam.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControl4)).BeginInit(); + this.layoutControl4.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup4)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.gbChaTempParam)).BeginInit(); + this.gbChaTempParam.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControl3)).BeginInit(); + this.layoutControl3.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup3)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.gbVoltageParamSet)).BeginInit(); + this.gbVoltageParamSet.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControl2)).BeginInit(); + this.layoutControl2.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup2)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup1)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem3)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem1)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem8)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem11)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem2)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem16)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem18)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.emptySpaceItem1)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem19)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem20)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem25)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem23)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem17)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem14)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem15)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem12)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem13)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem9)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem10)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem4)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem5)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem6)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem7)).BeginInit(); + this.SuspendLayout(); + // + // layoutControl1 + // + this.layoutControl1.Controls.Add(this.gbModuleNo); + this.layoutControl1.Controls.Add(this.gbCvDiffParam); + this.layoutControl1.Controls.Add(this.gbDefaultParam); + this.layoutControl1.Controls.Add(this.btnGetAll); + this.layoutControl1.Controls.Add(this.gbSocParam); + this.layoutControl1.Controls.Add(this.gbCurrentParam); + this.layoutControl1.Controls.Add(this.gbDchTempParam); + this.layoutControl1.Controls.Add(this.gbChaTempParam); + this.layoutControl1.Controls.Add(this.gbVoltageParamSet); + this.layoutControl1.Controls.Add(this.btnClose); + this.layoutControl1.Dock = System.Windows.Forms.DockStyle.Fill; + this.layoutControl1.Location = new System.Drawing.Point(0, 0); + this.layoutControl1.Name = "layoutControl1"; + this.layoutControl1.OptionsCustomizationForm.DesignTimeCustomizationFormPositionAndSize = new System.Drawing.Rectangle(1251, 181, 576, 350); + this.layoutControl1.Root = this.layoutControlGroup1; + this.layoutControl1.Size = new System.Drawing.Size(919, 788); + this.layoutControl1.TabIndex = 0; + this.layoutControl1.Text = "layoutControl1"; + // + // gbModuleNo + // + this.gbModuleNo.Controls.Add(this.layoutControl9); + this.gbModuleNo.Location = new System.Drawing.Point(457, 645); + this.gbModuleNo.Name = "gbModuleNo"; + this.gbModuleNo.Size = new System.Drawing.Size(227, 91); + this.gbModuleNo.TabIndex = 15; + this.gbModuleNo.Text = "Module No"; + // + // layoutControl9 + // + this.layoutControl9.Controls.Add(this.teMdNo); + this.layoutControl9.Controls.Add(this.chkMdAll); + this.layoutControl9.Dock = System.Windows.Forms.DockStyle.Fill; + this.layoutControl9.Location = new System.Drawing.Point(2, 23); + this.layoutControl9.Name = "layoutControl9"; + this.layoutControl9.Root = this.layoutControlGroup9; + this.layoutControl9.Size = new System.Drawing.Size(223, 66); + this.layoutControl9.TabIndex = 0; + this.layoutControl9.Text = "layoutControl9"; + // + // teMdNo + // + this.teMdNo.Location = new System.Drawing.Point(77, 39); + this.teMdNo.Name = "teMdNo"; + this.teMdNo.Size = new System.Drawing.Size(139, 20); + this.teMdNo.StyleController = this.layoutControl9; + this.teMdNo.TabIndex = 5; + // + // chkMdAll + // + this.chkMdAll.Location = new System.Drawing.Point(7, 7); + this.chkMdAll.Name = "chkMdAll"; + this.chkMdAll.Properties.Caption = "All Module"; + this.chkMdAll.Size = new System.Drawing.Size(209, 20); + this.chkMdAll.StyleController = this.layoutControl9; + this.chkMdAll.TabIndex = 4; + // + // layoutControlGroup9 + // + this.layoutControlGroup9.CustomizationFormText = "layoutControlGroup9"; + this.layoutControlGroup9.EnableIndentsWithoutBorders = DevExpress.Utils.DefaultBoolean.True; + this.layoutControlGroup9.GroupBordersVisible = false; + this.layoutControlGroup9.Items.AddRange(new DevExpress.XtraLayout.BaseLayoutItem[] { + this.layoutControlItem26, + this.lcitemMdNo}); + this.layoutControlGroup9.Name = "layoutControlGroup9"; + this.layoutControlGroup9.Padding = new DevExpress.XtraLayout.Utils.Padding(5, 5, 5, 5); + this.layoutControlGroup9.Size = new System.Drawing.Size(223, 66); + this.layoutControlGroup9.TextVisible = false; + // + // layoutControlItem26 + // + this.layoutControlItem26.Control = this.chkMdAll; + this.layoutControlItem26.CustomizationFormText = "layoutControlItem26"; + this.layoutControlItem26.Location = new System.Drawing.Point(0, 0); + this.layoutControlItem26.MinSize = new System.Drawing.Size(87, 23); + this.layoutControlItem26.Name = "layoutControlItem26"; + this.layoutControlItem26.Size = new System.Drawing.Size(213, 32); + this.layoutControlItem26.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem26.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem26.TextVisible = false; + // + // lcitemMdNo + // + this.lcitemMdNo.Control = this.teMdNo; + this.lcitemMdNo.CustomizationFormText = "Module No"; + this.lcitemMdNo.Location = new System.Drawing.Point(0, 32); + this.lcitemMdNo.Name = "lcitemMdNo"; + this.lcitemMdNo.Size = new System.Drawing.Size(213, 24); + this.lcitemMdNo.Text = "Module No"; + this.lcitemMdNo.TextSize = new System.Drawing.Size(58, 14); + // + // gbCvDiffParam + // + this.gbCvDiffParam.Controls.Add(this.layoutControl8); + this.gbCvDiffParam.Location = new System.Drawing.Point(688, 431); + this.gbCvDiffParam.Name = "gbCvDiffParam"; + this.gbCvDiffParam.Size = new System.Drawing.Size(228, 210); + this.gbCvDiffParam.TabIndex = 14; + this.gbCvDiffParam.Text = "Cell Voltage Diff"; + // + // layoutControl8 + // + this.layoutControl8.Controls.Add(this.ucCvDiffParam); + this.layoutControl8.Dock = System.Windows.Forms.DockStyle.Fill; + this.layoutControl8.Location = new System.Drawing.Point(2, 23); + this.layoutControl8.Name = "layoutControl8"; + this.layoutControl8.Root = this.layoutControlGroup8; + this.layoutControl8.Size = new System.Drawing.Size(224, 185); + this.layoutControl8.TabIndex = 0; + this.layoutControl8.Text = "layoutControl8"; + // + // layoutControlGroup8 + // + this.layoutControlGroup8.CustomizationFormText = "layoutControlGroup8"; + this.layoutControlGroup8.EnableIndentsWithoutBorders = DevExpress.Utils.DefaultBoolean.True; + this.layoutControlGroup8.GroupBordersVisible = false; + this.layoutControlGroup8.Items.AddRange(new DevExpress.XtraLayout.BaseLayoutItem[] { + this.layoutControlItem23}); + this.layoutControlGroup8.Name = "layoutControlGroup8"; + this.layoutControlGroup8.Padding = new DevExpress.XtraLayout.Utils.Padding(0, 0, 0, 0); + this.layoutControlGroup8.Size = new System.Drawing.Size(224, 185); + this.layoutControlGroup8.TextVisible = false; + // + // gbDefaultParam + // + this.gbDefaultParam.Controls.Add(this.layoutControl7); + this.gbDefaultParam.Location = new System.Drawing.Point(688, 645); + this.gbDefaultParam.Name = "gbDefaultParam"; + this.gbDefaultParam.Size = new System.Drawing.Size(228, 91); + this.gbDefaultParam.TabIndex = 13; + this.gbDefaultParam.Text = " Default Paramter"; + // + // layoutControl7 + // + this.layoutControl7.Controls.Add(this.chbAll); + this.layoutControl7.Controls.Add(this.btnDefaultSet); + this.layoutControl7.Controls.Add(this.cbFactoryDefault); + this.layoutControl7.Dock = System.Windows.Forms.DockStyle.Fill; + this.layoutControl7.Location = new System.Drawing.Point(2, 23); + this.layoutControl7.Name = "layoutControl7"; + this.layoutControl7.OptionsCustomizationForm.DesignTimeCustomizationFormPositionAndSize = new System.Drawing.Rectangle(1212, 252, 250, 350); + this.layoutControl7.Root = this.layoutControlGroup7; + this.layoutControl7.Size = new System.Drawing.Size(224, 66); + this.layoutControl7.TabIndex = 0; + this.layoutControl7.Text = "layoutControl7"; + // + // chbAll + // + this.chbAll.Location = new System.Drawing.Point(5, 34); + this.chbAll.Name = "chbAll"; + this.chbAll.Properties.Caption = "All"; + this.chbAll.Size = new System.Drawing.Size(117, 20); + this.chbAll.StyleController = this.layoutControl7; + this.chbAll.TabIndex = 6; + // + // btnDefaultSet + // + this.btnDefaultSet.Location = new System.Drawing.Point(126, 5); + this.btnDefaultSet.Name = "btnDefaultSet"; + this.btnDefaultSet.Size = new System.Drawing.Size(93, 56); + this.btnDefaultSet.StyleController = this.layoutControl7; + this.btnDefaultSet.TabIndex = 5; + this.btnDefaultSet.Text = "Set"; + this.btnDefaultSet.Click += new System.EventHandler(this.btnDefaultSet_Click); + // + // cbFactoryDefault + // + this.cbFactoryDefault.Location = new System.Drawing.Point(5, 5); + this.cbFactoryDefault.Name = "cbFactoryDefault"; + this.cbFactoryDefault.Properties.Caption = "Factory"; + this.cbFactoryDefault.Size = new System.Drawing.Size(117, 20); + this.cbFactoryDefault.StyleController = this.layoutControl7; + this.cbFactoryDefault.TabIndex = 4; + // + // layoutControlGroup7 + // + this.layoutControlGroup7.CustomizationFormText = "layoutControlGroup7"; + this.layoutControlGroup7.EnableIndentsWithoutBorders = DevExpress.Utils.DefaultBoolean.True; + this.layoutControlGroup7.GroupBordersVisible = false; + this.layoutControlGroup7.Items.AddRange(new DevExpress.XtraLayout.BaseLayoutItem[] { + this.layoutControlItem21, + this.layoutControlItem22, + this.layoutControlItem24}); + this.layoutControlGroup7.Name = "layoutControlGroup7"; + this.layoutControlGroup7.Padding = new DevExpress.XtraLayout.Utils.Padding(3, 3, 3, 3); + this.layoutControlGroup7.Size = new System.Drawing.Size(224, 66); + this.layoutControlGroup7.TextVisible = false; + // + // layoutControlItem21 + // + this.layoutControlItem21.Control = this.cbFactoryDefault; + this.layoutControlItem21.CustomizationFormText = "layoutControlItem21"; + this.layoutControlItem21.Location = new System.Drawing.Point(0, 0); + this.layoutControlItem21.MinSize = new System.Drawing.Size(87, 23); + this.layoutControlItem21.Name = "layoutControlItem21"; + this.layoutControlItem21.Size = new System.Drawing.Size(121, 29); + this.layoutControlItem21.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem21.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem21.TextVisible = false; + // + // layoutControlItem22 + // + this.layoutControlItem22.Control = this.btnDefaultSet; + this.layoutControlItem22.CustomizationFormText = "layoutControlItem22"; + this.layoutControlItem22.Location = new System.Drawing.Point(121, 0); + this.layoutControlItem22.MinSize = new System.Drawing.Size(93, 26); + this.layoutControlItem22.Name = "layoutControlItem22"; + this.layoutControlItem22.Size = new System.Drawing.Size(97, 60); + this.layoutControlItem22.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem22.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem22.TextVisible = false; + // + // layoutControlItem24 + // + this.layoutControlItem24.Control = this.chbAll; + this.layoutControlItem24.CustomizationFormText = "layoutControlItem24"; + this.layoutControlItem24.Location = new System.Drawing.Point(0, 29); + this.layoutControlItem24.MinSize = new System.Drawing.Size(87, 23); + this.layoutControlItem24.Name = "layoutControlItem24"; + this.layoutControlItem24.Size = new System.Drawing.Size(121, 31); + this.layoutControlItem24.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem24.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem24.TextVisible = false; + // + // btnGetAll + // + this.btnGetAll.Location = new System.Drawing.Point(3, 740); + this.btnGetAll.Name = "btnGetAll"; + this.btnGetAll.Size = new System.Drawing.Size(450, 45); + this.btnGetAll.StyleController = this.layoutControl1; + this.btnGetAll.TabIndex = 12; + this.btnGetAll.Text = "Get All Param"; + this.btnGetAll.Click += new System.EventHandler(this.btnGetAll_Click); + // + // gbSocParam + // + this.gbSocParam.Controls.Add(this.layoutControl6); + this.gbSocParam.Location = new System.Drawing.Point(457, 431); + this.gbSocParam.Name = "gbSocParam"; + this.gbSocParam.Size = new System.Drawing.Size(227, 210); + this.gbSocParam.TabIndex = 11; + this.gbSocParam.Text = "SOC Parameter"; + // + // layoutControl6 + // + this.layoutControl6.Controls.Add(this.ucLowSocParam); + this.layoutControl6.Dock = System.Windows.Forms.DockStyle.Fill; + this.layoutControl6.Location = new System.Drawing.Point(2, 23); + this.layoutControl6.Name = "layoutControl6"; + this.layoutControl6.Root = this.layoutControlGroup6; + this.layoutControl6.Size = new System.Drawing.Size(223, 185); + this.layoutControl6.TabIndex = 0; + this.layoutControl6.Text = "layoutControl6"; + // + // layoutControlGroup6 + // + this.layoutControlGroup6.CustomizationFormText = "layoutControlGroup6"; + this.layoutControlGroup6.EnableIndentsWithoutBorders = DevExpress.Utils.DefaultBoolean.True; + this.layoutControlGroup6.GroupBordersVisible = false; + this.layoutControlGroup6.Items.AddRange(new DevExpress.XtraLayout.BaseLayoutItem[] { + this.layoutControlItem17}); + this.layoutControlGroup6.Name = "layoutControlGroup6"; + this.layoutControlGroup6.Padding = new DevExpress.XtraLayout.Utils.Padding(0, 0, 0, 0); + this.layoutControlGroup6.Size = new System.Drawing.Size(223, 185); + this.layoutControlGroup6.TextVisible = false; + // + // gbCurrentParam + // + this.gbCurrentParam.Controls.Add(this.layoutControl5); + this.gbCurrentParam.Location = new System.Drawing.Point(3, 431); + this.gbCurrentParam.Name = "gbCurrentParam"; + this.gbCurrentParam.Size = new System.Drawing.Size(450, 210); + this.gbCurrentParam.TabIndex = 10; + this.gbCurrentParam.Text = "Current Parameter"; + // + // layoutControl5 + // + this.layoutControl5.Controls.Add(this.ucDOCParam); + this.layoutControl5.Controls.Add(this.ucCOCParam); + this.layoutControl5.Dock = System.Windows.Forms.DockStyle.Fill; + this.layoutControl5.Location = new System.Drawing.Point(2, 23); + this.layoutControl5.Name = "layoutControl5"; + this.layoutControl5.OptionsCustomizationForm.DesignTimeCustomizationFormPositionAndSize = new System.Drawing.Rectangle(757, 268, 250, 350); + this.layoutControl5.Root = this.layoutControlGroup5; + this.layoutControl5.Size = new System.Drawing.Size(446, 185); + this.layoutControl5.TabIndex = 0; + this.layoutControl5.Text = "layoutControl5"; + // + // layoutControlGroup5 + // + this.layoutControlGroup5.CustomizationFormText = "layoutControlGroup5"; + this.layoutControlGroup5.EnableIndentsWithoutBorders = DevExpress.Utils.DefaultBoolean.True; + this.layoutControlGroup5.GroupBordersVisible = false; + this.layoutControlGroup5.Items.AddRange(new DevExpress.XtraLayout.BaseLayoutItem[] { + this.layoutControlItem14, + this.layoutControlItem15}); + this.layoutControlGroup5.Name = "layoutControlGroup5"; + this.layoutControlGroup5.Padding = new DevExpress.XtraLayout.Utils.Padding(0, 0, 0, 0); + this.layoutControlGroup5.Size = new System.Drawing.Size(446, 185); + this.layoutControlGroup5.TextVisible = false; + // + // gbDchTempParam + // + this.gbDchTempParam.Controls.Add(this.layoutControl4); + this.gbDchTempParam.Location = new System.Drawing.Point(457, 217); + this.gbDchTempParam.Name = "gbDchTempParam"; + this.gbDchTempParam.Size = new System.Drawing.Size(459, 210); + this.gbDchTempParam.TabIndex = 9; + this.gbDchTempParam.Text = "Discharge Temp Parameter"; + // + // layoutControl4 + // + this.layoutControl4.Controls.Add(this.ucDLTParam); + this.layoutControl4.Controls.Add(this.ucDHTParam); + this.layoutControl4.Dock = System.Windows.Forms.DockStyle.Fill; + this.layoutControl4.Location = new System.Drawing.Point(2, 23); + this.layoutControl4.Name = "layoutControl4"; + this.layoutControl4.OptionsCustomizationForm.DesignTimeCustomizationFormPositionAndSize = new System.Drawing.Rectangle(1218, 164, 650, 400); + this.layoutControl4.Root = this.layoutControlGroup4; + this.layoutControl4.Size = new System.Drawing.Size(455, 185); + this.layoutControl4.TabIndex = 0; + this.layoutControl4.Text = "layoutControl4"; + // + // layoutControlGroup4 + // + this.layoutControlGroup4.CustomizationFormText = "layoutControlGroup4"; + this.layoutControlGroup4.EnableIndentsWithoutBorders = DevExpress.Utils.DefaultBoolean.True; + this.layoutControlGroup4.GroupBordersVisible = false; + this.layoutControlGroup4.Items.AddRange(new DevExpress.XtraLayout.BaseLayoutItem[] { + this.layoutControlItem12, + this.layoutControlItem13}); + this.layoutControlGroup4.Name = "Root"; + this.layoutControlGroup4.Padding = new DevExpress.XtraLayout.Utils.Padding(0, 0, 0, 0); + this.layoutControlGroup4.Size = new System.Drawing.Size(455, 185); + this.layoutControlGroup4.TextVisible = false; + // + // gbChaTempParam + // + this.gbChaTempParam.Controls.Add(this.layoutControl3); + this.gbChaTempParam.Location = new System.Drawing.Point(3, 217); + this.gbChaTempParam.Name = "gbChaTempParam"; + this.gbChaTempParam.Size = new System.Drawing.Size(450, 210); + this.gbChaTempParam.TabIndex = 8; + this.gbChaTempParam.Text = "Charge Temp Parameter"; + // + // layoutControl3 + // + this.layoutControl3.Controls.Add(this.ucCLTParam); + this.layoutControl3.Controls.Add(this.ucCHTParam); + this.layoutControl3.Dock = System.Windows.Forms.DockStyle.Fill; + this.layoutControl3.Location = new System.Drawing.Point(2, 23); + this.layoutControl3.Name = "layoutControl3"; + this.layoutControl3.OptionsCustomizationForm.DesignTimeCustomizationFormPositionAndSize = new System.Drawing.Rectangle(1273, 246, 516, 350); + this.layoutControl3.Root = this.layoutControlGroup3; + this.layoutControl3.Size = new System.Drawing.Size(446, 185); + this.layoutControl3.TabIndex = 0; + this.layoutControl3.Text = "layoutControl3"; + // + // layoutControlGroup3 + // + this.layoutControlGroup3.CustomizationFormText = "layoutControlGroup3"; + this.layoutControlGroup3.EnableIndentsWithoutBorders = DevExpress.Utils.DefaultBoolean.True; + this.layoutControlGroup3.GroupBordersVisible = false; + this.layoutControlGroup3.Items.AddRange(new DevExpress.XtraLayout.BaseLayoutItem[] { + this.layoutControlItem9, + this.layoutControlItem10}); + this.layoutControlGroup3.Name = "Root"; + this.layoutControlGroup3.Padding = new DevExpress.XtraLayout.Utils.Padding(0, 0, 0, 0); + this.layoutControlGroup3.Size = new System.Drawing.Size(446, 185); + this.layoutControlGroup3.TextVisible = false; + // + // gbVoltageParamSet + // + this.gbVoltageParamSet.Controls.Add(this.layoutControl2); + this.gbVoltageParamSet.Location = new System.Drawing.Point(3, 3); + this.gbVoltageParamSet.Name = "gbVoltageParamSet"; + this.gbVoltageParamSet.Size = new System.Drawing.Size(913, 210); + this.gbVoltageParamSet.TabIndex = 7; + this.gbVoltageParamSet.Text = "Voltage Paramter Set"; + // + // layoutControl2 + // + this.layoutControl2.Controls.Add(this.ucSUVParam); + this.layoutControl2.Controls.Add(this.ucSOVParam); + this.layoutControl2.Controls.Add(this.ucCUVParam); + this.layoutControl2.Controls.Add(this.ucCOVParam); + this.layoutControl2.Dock = System.Windows.Forms.DockStyle.Fill; + this.layoutControl2.Location = new System.Drawing.Point(2, 23); + this.layoutControl2.Name = "layoutControl2"; + this.layoutControl2.OptionsCustomizationForm.DesignTimeCustomizationFormPositionAndSize = new System.Drawing.Rectangle(1225, 35, 650, 400); + this.layoutControl2.Root = this.layoutControlGroup2; + this.layoutControl2.Size = new System.Drawing.Size(909, 185); + this.layoutControl2.TabIndex = 0; + this.layoutControl2.Text = "layoutControl2"; + // + // layoutControlGroup2 + // + this.layoutControlGroup2.CustomizationFormText = "layoutControlGroup2"; + this.layoutControlGroup2.EnableIndentsWithoutBorders = DevExpress.Utils.DefaultBoolean.True; + this.layoutControlGroup2.GroupBordersVisible = false; + this.layoutControlGroup2.Items.AddRange(new DevExpress.XtraLayout.BaseLayoutItem[] { + this.layoutControlItem4, + this.layoutControlItem5, + this.layoutControlItem6, + this.layoutControlItem7}); + this.layoutControlGroup2.Name = "Root"; + this.layoutControlGroup2.Padding = new DevExpress.XtraLayout.Utils.Padding(0, 0, 0, 0); + this.layoutControlGroup2.Size = new System.Drawing.Size(909, 185); + this.layoutControlGroup2.TextVisible = false; + // + // btnClose + // + this.btnClose.Location = new System.Drawing.Point(457, 740); + this.btnClose.Name = "btnClose"; + this.btnClose.Size = new System.Drawing.Size(459, 45); + this.btnClose.StyleController = this.layoutControl1; + this.btnClose.TabIndex = 6; + this.btnClose.Text = "CLOSE"; + this.btnClose.Click += new System.EventHandler(this.btnCancel_Click); + // + // layoutControlGroup1 + // + this.layoutControlGroup1.CustomizationFormText = "layoutControlGroup1"; + this.layoutControlGroup1.EnableIndentsWithoutBorders = DevExpress.Utils.DefaultBoolean.True; + this.layoutControlGroup1.GroupBordersVisible = false; + this.layoutControlGroup1.Items.AddRange(new DevExpress.XtraLayout.BaseLayoutItem[] { + this.layoutControlItem3, + this.layoutControlItem1, + this.layoutControlItem8, + this.layoutControlItem11, + this.layoutControlItem2, + this.layoutControlItem16, + this.layoutControlItem18, + this.emptySpaceItem1, + this.layoutControlItem19, + this.layoutControlItem20, + this.layoutControlItem25}); + this.layoutControlGroup1.Name = "Root"; + this.layoutControlGroup1.Padding = new DevExpress.XtraLayout.Utils.Padding(1, 1, 1, 1); + this.layoutControlGroup1.Size = new System.Drawing.Size(919, 788); + this.layoutControlGroup1.TextVisible = false; + // + // layoutControlItem3 + // + this.layoutControlItem3.Control = this.btnClose; + this.layoutControlItem3.CustomizationFormText = "layoutControlItem3"; + this.layoutControlItem3.Location = new System.Drawing.Point(454, 737); + this.layoutControlItem3.MinSize = new System.Drawing.Size(93, 26); + this.layoutControlItem3.Name = "layoutControlItem3"; + this.layoutControlItem3.Size = new System.Drawing.Size(463, 49); + this.layoutControlItem3.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem3.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem3.TextVisible = false; + // + // layoutControlItem1 + // + this.layoutControlItem1.Control = this.gbVoltageParamSet; + this.layoutControlItem1.CustomizationFormText = "layoutControlItem1"; + this.layoutControlItem1.Location = new System.Drawing.Point(0, 0); + this.layoutControlItem1.MaxSize = new System.Drawing.Size(0, 214); + this.layoutControlItem1.MinSize = new System.Drawing.Size(424, 214); + this.layoutControlItem1.Name = "layoutControlItem1"; + this.layoutControlItem1.Size = new System.Drawing.Size(917, 214); + this.layoutControlItem1.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem1.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem1.TextVisible = false; + // + // layoutControlItem8 + // + this.layoutControlItem8.Control = this.gbChaTempParam; + this.layoutControlItem8.CustomizationFormText = "layoutControlItem8"; + this.layoutControlItem8.Location = new System.Drawing.Point(0, 214); + this.layoutControlItem8.MaxSize = new System.Drawing.Size(454, 214); + this.layoutControlItem8.MinSize = new System.Drawing.Size(454, 214); + this.layoutControlItem8.Name = "layoutControlItem8"; + this.layoutControlItem8.Size = new System.Drawing.Size(454, 214); + this.layoutControlItem8.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem8.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem8.TextVisible = false; + // + // layoutControlItem11 + // + this.layoutControlItem11.Control = this.gbDchTempParam; + this.layoutControlItem11.CustomizationFormText = "layoutControlItem11"; + this.layoutControlItem11.Location = new System.Drawing.Point(454, 214); + this.layoutControlItem11.MinSize = new System.Drawing.Size(216, 53); + this.layoutControlItem11.Name = "layoutControlItem11"; + this.layoutControlItem11.Size = new System.Drawing.Size(463, 214); + this.layoutControlItem11.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem11.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem11.TextVisible = false; + // + // layoutControlItem2 + // + this.layoutControlItem2.Control = this.gbCurrentParam; + this.layoutControlItem2.CustomizationFormText = "layoutControlItem2"; + this.layoutControlItem2.Location = new System.Drawing.Point(0, 428); + this.layoutControlItem2.MaxSize = new System.Drawing.Size(0, 214); + this.layoutControlItem2.MinSize = new System.Drawing.Size(216, 214); + this.layoutControlItem2.Name = "layoutControlItem2"; + this.layoutControlItem2.Size = new System.Drawing.Size(454, 214); + this.layoutControlItem2.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem2.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem2.TextVisible = false; + // + // layoutControlItem16 + // + this.layoutControlItem16.Control = this.gbSocParam; + this.layoutControlItem16.CustomizationFormText = "layoutControlItem16"; + this.layoutControlItem16.Location = new System.Drawing.Point(454, 428); + this.layoutControlItem16.Name = "layoutControlItem16"; + this.layoutControlItem16.Size = new System.Drawing.Size(231, 214); + this.layoutControlItem16.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem16.TextVisible = false; + // + // layoutControlItem18 + // + this.layoutControlItem18.Control = this.btnGetAll; + this.layoutControlItem18.CustomizationFormText = "layoutControlItem18"; + this.layoutControlItem18.Location = new System.Drawing.Point(0, 737); + this.layoutControlItem18.MinSize = new System.Drawing.Size(93, 26); + this.layoutControlItem18.Name = "layoutControlItem18"; + this.layoutControlItem18.Size = new System.Drawing.Size(454, 49); + this.layoutControlItem18.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem18.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem18.TextVisible = false; + // + // emptySpaceItem1 + // + this.emptySpaceItem1.AllowHotTrack = false; + this.emptySpaceItem1.CustomizationFormText = "emptySpaceItem1"; + this.emptySpaceItem1.Location = new System.Drawing.Point(0, 642); + this.emptySpaceItem1.Name = "emptySpaceItem1"; + this.emptySpaceItem1.Size = new System.Drawing.Size(454, 95); + this.emptySpaceItem1.TextSize = new System.Drawing.Size(0, 0); + // + // layoutControlItem19 + // + this.layoutControlItem19.Control = this.gbDefaultParam; + this.layoutControlItem19.CustomizationFormText = "layoutControlItem19"; + this.layoutControlItem19.Location = new System.Drawing.Point(685, 642); + this.layoutControlItem19.Name = "layoutControlItem19"; + this.layoutControlItem19.Size = new System.Drawing.Size(232, 95); + this.layoutControlItem19.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem19.TextVisible = false; + // + // layoutControlItem20 + // + this.layoutControlItem20.Control = this.gbCvDiffParam; + this.layoutControlItem20.CustomizationFormText = "layoutControlItem20"; + this.layoutControlItem20.Location = new System.Drawing.Point(685, 428); + this.layoutControlItem20.Name = "layoutControlItem20"; + this.layoutControlItem20.Size = new System.Drawing.Size(232, 214); + this.layoutControlItem20.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem20.TextVisible = false; + // + // layoutControlItem25 + // + this.layoutControlItem25.Control = this.gbModuleNo; + this.layoutControlItem25.CustomizationFormText = "layoutControlItem25"; + this.layoutControlItem25.Location = new System.Drawing.Point(454, 642); + this.layoutControlItem25.Name = "layoutControlItem25"; + this.layoutControlItem25.Size = new System.Drawing.Size(231, 95); + this.layoutControlItem25.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem25.TextVisible = false; + // + // tmrDisplay + // + this.tmrDisplay.Interval = 500; + this.tmrDisplay.Tick += new System.EventHandler(this.tmrDisplay_Tick); + // + // ucCvDiffParam + // + this.ucCvDiffParam.Location = new System.Drawing.Point(2, 2); + this.ucCvDiffParam.Name = "ucCvDiffParam"; + this.ucCvDiffParam.Size = new System.Drawing.Size(220, 181); + this.ucCvDiffParam.TabIndex = 4; + // + // layoutControlItem23 + // + this.layoutControlItem23.Control = this.ucCvDiffParam; + this.layoutControlItem23.CustomizationFormText = "layoutControlItem23"; + this.layoutControlItem23.Location = new System.Drawing.Point(0, 0); + this.layoutControlItem23.Name = "layoutControlItem23"; + this.layoutControlItem23.Size = new System.Drawing.Size(224, 185); + this.layoutControlItem23.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem23.TextVisible = false; + // + // ucLowSocParam + // + this.ucLowSocParam.Location = new System.Drawing.Point(2, 2); + this.ucLowSocParam.Name = "ucLowSocParam"; + this.ucLowSocParam.Size = new System.Drawing.Size(219, 181); + this.ucLowSocParam.TabIndex = 4; + // + // layoutControlItem17 + // + this.layoutControlItem17.Control = this.ucLowSocParam; + this.layoutControlItem17.CustomizationFormText = "layoutControlItem17"; + this.layoutControlItem17.Location = new System.Drawing.Point(0, 0); + this.layoutControlItem17.Name = "layoutControlItem17"; + this.layoutControlItem17.Size = new System.Drawing.Size(223, 185); + this.layoutControlItem17.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem17.TextVisible = false; + // + // ucDOCParam + // + this.ucDOCParam.Location = new System.Drawing.Point(225, 2); + this.ucDOCParam.Name = "ucDOCParam"; + this.ucDOCParam.Size = new System.Drawing.Size(219, 181); + this.ucDOCParam.TabIndex = 5; + // + // ucCOCParam + // + this.ucCOCParam.Location = new System.Drawing.Point(2, 2); + this.ucCOCParam.Name = "ucCOCParam"; + this.ucCOCParam.Size = new System.Drawing.Size(219, 181); + this.ucCOCParam.TabIndex = 4; + // + // layoutControlItem14 + // + this.layoutControlItem14.Control = this.ucCOCParam; + this.layoutControlItem14.CustomizationFormText = "layoutControlItem14"; + this.layoutControlItem14.Location = new System.Drawing.Point(0, 0); + this.layoutControlItem14.Name = "layoutControlItem14"; + this.layoutControlItem14.Size = new System.Drawing.Size(223, 185); + this.layoutControlItem14.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem14.TextVisible = false; + // + // layoutControlItem15 + // + this.layoutControlItem15.Control = this.ucDOCParam; + this.layoutControlItem15.CustomizationFormText = "layoutControlItem15"; + this.layoutControlItem15.Location = new System.Drawing.Point(223, 0); + this.layoutControlItem15.Name = "layoutControlItem15"; + this.layoutControlItem15.Size = new System.Drawing.Size(223, 185); + this.layoutControlItem15.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem15.TextVisible = false; + // + // ucDLTParam + // + this.ucDLTParam.Location = new System.Drawing.Point(230, 2); + this.ucDLTParam.Name = "ucDLTParam"; + this.ucDLTParam.Size = new System.Drawing.Size(223, 181); + this.ucDLTParam.TabIndex = 5; + // + // ucDHTParam + // + this.ucDHTParam.Location = new System.Drawing.Point(2, 2); + this.ucDHTParam.Name = "ucDHTParam"; + this.ucDHTParam.Size = new System.Drawing.Size(224, 181); + this.ucDHTParam.TabIndex = 4; + // + // layoutControlItem12 + // + this.layoutControlItem12.Control = this.ucDHTParam; + this.layoutControlItem12.CustomizationFormText = "layoutControlItem12"; + this.layoutControlItem12.Location = new System.Drawing.Point(0, 0); + this.layoutControlItem12.MinSize = new System.Drawing.Size(104, 24); + this.layoutControlItem12.Name = "layoutControlItem12"; + this.layoutControlItem12.Size = new System.Drawing.Size(228, 185); + this.layoutControlItem12.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem12.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem12.TextVisible = false; + // + // layoutControlItem13 + // + this.layoutControlItem13.Control = this.ucDLTParam; + this.layoutControlItem13.CustomizationFormText = "layoutControlItem13"; + this.layoutControlItem13.Location = new System.Drawing.Point(228, 0); + this.layoutControlItem13.MinSize = new System.Drawing.Size(104, 24); + this.layoutControlItem13.Name = "layoutControlItem13"; + this.layoutControlItem13.Size = new System.Drawing.Size(227, 185); + this.layoutControlItem13.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem13.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem13.TextVisible = false; + // + // ucCLTParam + // + this.ucCLTParam.Location = new System.Drawing.Point(225, 2); + this.ucCLTParam.Name = "ucCLTParam"; + this.ucCLTParam.Size = new System.Drawing.Size(219, 181); + this.ucCLTParam.TabIndex = 5; + // + // ucCHTParam + // + this.ucCHTParam.Location = new System.Drawing.Point(2, 2); + this.ucCHTParam.Name = "ucCHTParam"; + this.ucCHTParam.Size = new System.Drawing.Size(219, 181); + this.ucCHTParam.TabIndex = 4; + // + // layoutControlItem9 + // + this.layoutControlItem9.Control = this.ucCHTParam; + this.layoutControlItem9.CustomizationFormText = "layoutControlItem9"; + this.layoutControlItem9.Location = new System.Drawing.Point(0, 0); + this.layoutControlItem9.MinSize = new System.Drawing.Size(104, 24); + this.layoutControlItem9.Name = "layoutControlItem9"; + this.layoutControlItem9.Size = new System.Drawing.Size(223, 185); + this.layoutControlItem9.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem9.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem9.TextVisible = false; + // + // layoutControlItem10 + // + this.layoutControlItem10.Control = this.ucCLTParam; + this.layoutControlItem10.CustomizationFormText = "layoutControlItem10"; + this.layoutControlItem10.Location = new System.Drawing.Point(223, 0); + this.layoutControlItem10.MinSize = new System.Drawing.Size(104, 24); + this.layoutControlItem10.Name = "layoutControlItem10"; + this.layoutControlItem10.Size = new System.Drawing.Size(223, 185); + this.layoutControlItem10.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem10.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem10.TextVisible = false; + // + // ucSUVParam + // + this.ucSUVParam.Location = new System.Drawing.Point(683, 2); + this.ucSUVParam.Name = "ucSUVParam"; + this.ucSUVParam.Size = new System.Drawing.Size(224, 181); + this.ucSUVParam.TabIndex = 7; + // + // ucSOVParam + // + this.ucSOVParam.Location = new System.Drawing.Point(456, 2); + this.ucSOVParam.Name = "ucSOVParam"; + this.ucSOVParam.Size = new System.Drawing.Size(223, 181); + this.ucSOVParam.TabIndex = 6; + // + // ucCUVParam + // + this.ucCUVParam.Location = new System.Drawing.Point(229, 2); + this.ucCUVParam.Name = "ucCUVParam"; + this.ucCUVParam.Size = new System.Drawing.Size(223, 181); + this.ucCUVParam.TabIndex = 5; + // + // ucCOVParam + // + this.ucCOVParam.Location = new System.Drawing.Point(2, 2); + this.ucCOVParam.Name = "ucCOVParam"; + this.ucCOVParam.Size = new System.Drawing.Size(223, 181); + this.ucCOVParam.TabIndex = 4; + // + // layoutControlItem4 + // + this.layoutControlItem4.Control = this.ucCOVParam; + this.layoutControlItem4.CustomizationFormText = "layoutControlItem4"; + this.layoutControlItem4.Location = new System.Drawing.Point(0, 0); + this.layoutControlItem4.Name = "layoutControlItem4"; + this.layoutControlItem4.Size = new System.Drawing.Size(227, 185); + this.layoutControlItem4.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem4.TextVisible = false; + // + // layoutControlItem5 + // + this.layoutControlItem5.Control = this.ucCUVParam; + this.layoutControlItem5.CustomizationFormText = "layoutControlItem5"; + this.layoutControlItem5.Location = new System.Drawing.Point(227, 0); + this.layoutControlItem5.Name = "layoutControlItem5"; + this.layoutControlItem5.Size = new System.Drawing.Size(227, 185); + this.layoutControlItem5.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem5.TextVisible = false; + // + // layoutControlItem6 + // + this.layoutControlItem6.Control = this.ucSOVParam; + this.layoutControlItem6.CustomizationFormText = "layoutControlItem6"; + this.layoutControlItem6.Location = new System.Drawing.Point(454, 0); + this.layoutControlItem6.Name = "layoutControlItem6"; + this.layoutControlItem6.Size = new System.Drawing.Size(227, 185); + this.layoutControlItem6.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem6.TextVisible = false; + // + // layoutControlItem7 + // + this.layoutControlItem7.Control = this.ucSUVParam; + this.layoutControlItem7.CustomizationFormText = "layoutControlItem7"; + this.layoutControlItem7.Location = new System.Drawing.Point(681, 0); + this.layoutControlItem7.Name = "layoutControlItem7"; + this.layoutControlItem7.Size = new System.Drawing.Size(228, 185); + this.layoutControlItem7.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem7.TextVisible = false; + // + // fmxParamConfig + // + this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 14F); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.ClientSize = new System.Drawing.Size(919, 788); + this.Controls.Add(this.layoutControl1); + this.IconOptions.Icon = ((System.Drawing.Icon)(resources.GetObject("fmxParamConfig.IconOptions.Icon"))); + this.Name = "fmxParamConfig"; + this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen; + this.Text = "Parameter Config"; + ((System.ComponentModel.ISupportInitialize)(this.layoutControl1)).EndInit(); + this.layoutControl1.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.gbModuleNo)).EndInit(); + this.gbModuleNo.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.layoutControl9)).EndInit(); + this.layoutControl9.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.teMdNo.Properties)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.chkMdAll.Properties)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup9)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem26)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.lcitemMdNo)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.gbCvDiffParam)).EndInit(); + this.gbCvDiffParam.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.layoutControl8)).EndInit(); + this.layoutControl8.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup8)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.gbDefaultParam)).EndInit(); + this.gbDefaultParam.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.layoutControl7)).EndInit(); + this.layoutControl7.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.chbAll.Properties)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.cbFactoryDefault.Properties)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup7)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem21)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem22)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem24)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.gbSocParam)).EndInit(); + this.gbSocParam.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.layoutControl6)).EndInit(); + this.layoutControl6.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup6)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.gbCurrentParam)).EndInit(); + this.gbCurrentParam.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.layoutControl5)).EndInit(); + this.layoutControl5.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup5)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.gbDchTempParam)).EndInit(); + this.gbDchTempParam.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.layoutControl4)).EndInit(); + this.layoutControl4.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup4)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.gbChaTempParam)).EndInit(); + this.gbChaTempParam.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.layoutControl3)).EndInit(); + this.layoutControl3.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup3)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.gbVoltageParamSet)).EndInit(); + this.gbVoltageParamSet.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.layoutControl2)).EndInit(); + this.layoutControl2.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup2)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup1)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem3)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem1)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem8)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem11)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem2)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem16)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem18)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.emptySpaceItem1)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem19)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem20)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem25)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem23)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem17)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem14)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem15)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem12)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem13)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem9)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem10)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem4)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem5)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem6)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem7)).EndInit(); + this.ResumeLayout(false); + + } + + #endregion + + private DevExpress.XtraLayout.LayoutControl layoutControl1; + private DevExpress.XtraLayout.LayoutControlGroup layoutControlGroup1; + private DevExpress.XtraLayout.EmptySpaceItem emptySpaceItem1; + private DevExpress.XtraEditors.SimpleButton btnClose; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem3; + private System.Windows.Forms.Timer tmrDisplay; + private DevExpress.XtraEditors.GroupControl gbVoltageParamSet; + private DevExpress.XtraLayout.LayoutControl layoutControl2; + private DevExpress.XtraLayout.LayoutControlGroup layoutControlGroup2; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem1; + private Controls.ucParamSet ucCOVParam; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem4; + private Controls.ucParamSet ucCUVParam; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem5; + private Controls.ucParamSet ucSUVParam; + private Controls.ucParamSet ucSOVParam; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem6; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem7; + private DevExpress.XtraEditors.GroupControl gbChaTempParam; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem8; + private DevExpress.XtraLayout.LayoutControl layoutControl3; + private DevExpress.XtraLayout.LayoutControlGroup layoutControlGroup3; + private Controls.ucParamSet ucCLTParam; + private Controls.ucParamSet ucCHTParam; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem9; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem10; + private DevExpress.XtraEditors.GroupControl gbDchTempParam; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem11; + private DevExpress.XtraLayout.LayoutControl layoutControl4; + private Controls.ucParamSet ucDLTParam; + private Controls.ucParamSet ucDHTParam; + private DevExpress.XtraLayout.LayoutControlGroup layoutControlGroup4; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem12; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem13; + private DevExpress.XtraEditors.GroupControl gbCurrentParam; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem2; + private DevExpress.XtraLayout.LayoutControl layoutControl5; + private DevExpress.XtraLayout.LayoutControlGroup layoutControlGroup5; + private Controls.ucParamSet ucDOCParam; + private Controls.ucParamSet ucCOCParam; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem14; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem15; + private DevExpress.XtraEditors.GroupControl gbSocParam; + private DevExpress.XtraLayout.LayoutControl layoutControl6; + private DevExpress.XtraLayout.LayoutControlGroup layoutControlGroup6; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem16; + private Controls.ucParamSet ucLowSocParam; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem17; + private DevExpress.XtraEditors.SimpleButton btnGetAll; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem18; + private DevExpress.XtraEditors.GroupControl gbDefaultParam; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem19; + private DevExpress.XtraLayout.LayoutControl layoutControl7; + private DevExpress.XtraLayout.LayoutControlGroup layoutControlGroup7; + private DevExpress.XtraEditors.SimpleButton btnDefaultSet; + private DevExpress.XtraEditors.CheckEdit cbFactoryDefault; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem21; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem22; + private DevExpress.XtraEditors.GroupControl gbCvDiffParam; + private DevExpress.XtraLayout.LayoutControl layoutControl8; + private DevExpress.XtraLayout.LayoutControlGroup layoutControlGroup8; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem20; + private Controls.ucParamSet ucCvDiffParam; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem23; + private DevExpress.XtraEditors.CheckEdit chbAll; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem24; + private DevExpress.XtraEditors.GroupControl gbModuleNo; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem25; + private DevExpress.XtraLayout.LayoutControl layoutControl9; + private DevExpress.XtraLayout.LayoutControlGroup layoutControlGroup9; + private DevExpress.XtraEditors.TextEdit teMdNo; + private DevExpress.XtraEditors.CheckEdit chkMdAll; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem26; + private DevExpress.XtraLayout.LayoutControlItem lcitemMdNo; + } +} \ No newline at end of file diff --git a/LFP_Manager_PRM/Forms/fmxParamConfig.cs b/LFP_Manager_PRM/Forms/fmxParamConfig.cs new file mode 100644 index 0000000..7b67499 --- /dev/null +++ b/LFP_Manager_PRM/Forms/fmxParamConfig.cs @@ -0,0 +1,351 @@ +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Data; +using System.Drawing; +using System.Text; +using System.Linq; +using System.Windows.Forms; +using DevExpress.XtraEditors; + +using LFP_Manager.DataStructure; +using LFP_Manager.Function; +using LFP_Manager.Controls; + +namespace LFP_Manager.Forms +{ + public delegate void ParamUpdateEvent(object sendor); + public delegate void ParamCmdEvent(int sId, int mode, int flag, ref DeviceParamData aParam, ref DeviceCalibration aCalib); + + public partial class fmxParamConfig : DevExpress.XtraEditors.XtraForm + { + #region VARIABLES + + int SystemId = 0; + DeviceParamData Param; + DeviceCalibration Calib; + + public event ParamUpdateEvent OnUpdate = null; + public event ParamCmdEvent OnCommand = null; + + #endregion + + #region CONSTRUCTORS + + public fmxParamConfig() + { + InitializeComponent(); + } + + public fmxParamConfig(int sId, DeviceParamData aParam) + { + InitializeComponent(); + + SystemId = sId; + Param = aParam; + + InitComponent(); + + tmrDisplay.Enabled = true; + } + + public void InitComponent() + { + // Cell Voltage Parameter + ucCOVParam.SetParamName(0, "Cell Over Voltage"); + ucCOVParam.SetParamName(1, "mV"); + ucCOVParam.SetId(0); + ucCOVParam.OnCommand += OnCmdEvent; + + ucCUVParam.SetParamName(0, "Cell Under Voltage"); + ucCUVParam.SetParamName(1, "mV"); + ucCUVParam.SetId(1); + ucCUVParam.OnCommand += OnCmdEvent; + //ucCUVParam.EnableItem(0, false); + + // System Voltage Parameter + ucSOVParam.SetParamName(0, "System Over Voltage"); + ucSOVParam.SetParamName(1, "V"); + ucSOVParam.SetId(2); + ucSOVParam.OnCommand += OnCmdEvent; + + ucSUVParam.SetParamName(0, "System Under Voltage"); + ucSUVParam.SetParamName(1, "V"); + ucSUVParam.SetId(3); + ucSUVParam.OnCommand += OnCmdEvent; + //ucSUVParam.EnableItem(0, false); + + // Charge Temperature Parameter + ucCHTParam.SetParamName(0, "Charge High Temp"); + ucCHTParam.SetParamName(1, "C"); + ucCHTParam.SetId(4); + ucCHTParam.OnCommand += OnCmdEvent; + + ucCLTParam.SetParamName(0, "Charge Low Temp"); + ucCLTParam.SetParamName(1, "C"); + ucCLTParam.SetId(5); + ucCLTParam.OnCommand += OnCmdEvent; + + // Discharge Temperature Parameter + ucDHTParam.SetParamName(0, "Discharge High Temp"); + ucDHTParam.SetParamName(1, "C"); + ucDHTParam.SetId(6); + ucDHTParam.OnCommand += OnCmdEvent; + //ucDHTParam.EnableItem(0, false); + + ucDLTParam.SetParamName(0, "Discharge Low Temp"); + ucDLTParam.SetParamName(1, "C"); + ucDLTParam.SetId(7); + ucDLTParam.OnCommand += OnCmdEvent; + //ucDLTParam.EnableItem(0, false); + + // Discharge Temperature Parameter + ucCOCParam.SetParamName(0, "Charge Over Current"); + ucCOCParam.SetParamName(1, "A"); + ucCOCParam.SetId(8); + ucCOCParam.OnCommand += OnCmdEvent; + + ucDOCParam.SetParamName(0, "Discharge Over Current"); + ucDOCParam.SetParamName(1, "A"); + ucDOCParam.SetId(9); + ucDOCParam.OnCommand += OnCmdEvent; + //ucDOCParam.EnableItem(0, false); + + // SOC Parameter + ucLowSocParam.SetParamName(0, "Low SOC"); + ucLowSocParam.SetParamName(1, "%"); + ucLowSocParam.SetId(10); + ucLowSocParam.OnCommand += OnCmdEvent; + ucLowSocParam.EnableItem(0, false); + + // SOC Parameter + ucCvDiffParam.SetParamName(0, "Cell Voltage Diff"); + ucCvDiffParam.SetParamName(1, "mV"); + ucCvDiffParam.SetId(11); + ucCvDiffParam.OnCommand += OnCmdEvent; + //ucCvDiffParam.EnableItem(0, false); + } + + #endregion + + #region COMMAND EVENT + + private void OnCmdEvent(int mode, int flag, ParamData aParam) + { + int cmd = 0; + DeviceParamData wParam = Param; + + switch (mode) + { + case 0: // Cell Over Voltage + cmd = 5; + wParam.CellOverVoltageTrip = aParam.Fault; + wParam.CellOverVoltageWarning = aParam.Warning; + wParam.CellOverVoltageRelease = aParam.Release; + break; + case 1: // Cell Under Voltage + cmd = 5; + wParam.CellUnderVoltageTrip = aParam.Fault; + wParam.CellUnderVoltageWarning = aParam.Warning; + wParam.CellUnderVoltageRelease = aParam.Release; + break; + case 2: // System Over Voltage + cmd = 7; + wParam.SysOverVoltageTrip = aParam.Fault; + wParam.SysOverVoltageWarning = aParam.Warning; + wParam.SysOverVoltageRelease = aParam.Release; + break; + case 3: // System Under Voltage + cmd = 7; + wParam.SysUnderVoltageTrip = aParam.Fault; + wParam.SysUnderVoltageWarning = aParam.Warning; + wParam.SysUnderVoltageRelease = aParam.Release; + break; + case 4: // Charge High Temperature + cmd = 6; + wParam.ChaHighTempTrip = aParam.Fault; + wParam.ChaHighTempWarning = aParam.Warning; + wParam.ChaHighTempRelease = aParam.Release; + break; + case 5: // Charge Low Temperature + cmd = 6; + wParam.ChaLowTempTrip = aParam.Fault; + wParam.ChaLowTempWarning = aParam.Warning; + wParam.ChaLowTempRelease = aParam.Release; + break; + case 6: // Discharge High Temperature + cmd = 6; + wParam.DchHighTempTrip = aParam.Fault; + wParam.DchHighTempWarning = aParam.Warning; + wParam.DchHighTempRelease = aParam.Release; + break; + case 7: // Discharge Low Temperature + cmd = 6; + wParam.DchLowTempTrip = aParam.Fault; + wParam.DchLowTempWarning = aParam.Warning; + wParam.DchLowTempRelease = aParam.Release; + break; + case 8: // Charge Over Current + cmd = 22; + wParam.ChaOverCurrentTrip = aParam.Fault; + wParam.ChaOverCurrentWarning = aParam.Warning; + wParam.ChaOverCurrentRelease = aParam.Release; + break; + case 9: // Discharge Over Current + cmd = 22; + wParam.DchOverCurrentTrip = aParam.Fault; + wParam.DchOverCurrentWarning = aParam.Warning; + wParam.DchOverCurrentRelease = aParam.Release; + break; + case 10: // Low SOC + cmd = 14; + wParam.LowSocWarning = aParam.Warning; + wParam.LowSocRelease = aParam.Release; + break; + case 11: // Cell Voltage Difference + cmd = 2; + wParam.CellVoltageDifferenceTrip = aParam.Fault; + wParam.CellVoltageDifferenceWarning = aParam.Warning; + wParam.CellVoltageDifferenceRelease = aParam.Release; + break; + case 16: // Default Parameter + cmd = 16; + wParam.DefalutParamOption = aParam.Fault; + wParam.DefalutParamAll = aParam.Release; + break; + case 99: + cmd = 99; // All parameter read + break; + } + OnCommand?.Invoke(SystemId, cmd, flag, ref wParam, ref Calib); + } + + #endregion + + private void btnCancel_Click(object sender, EventArgs e) + { + this.Close(); + } + + public void UpdateData(DeviceParamData aParam, DeviceCalibration aCalib) + { + Param = aParam; + Calib = aCalib; + } + + private void tmrDisplay_Tick(object sender, EventArgs e) + { + DisplayValue(); + + OnUpdate?.Invoke(this); + } + + private void DisplayValue() + { + ParamData pData = new ParamData(); + + // Cell Voltage Parameter + pData.Fault = Param.CellOverVoltageTrip; + pData.Warning = Param.CellOverVoltageWarning; + pData.Release = Param.CellOverVoltageRelease; + + ucCOVParam.UpdateData(pData); + + pData.Fault = Param.CellUnderVoltageTrip; + pData.Warning = Param.CellUnderVoltageWarning; + pData.Release = Param.CellUnderVoltageRelease; + + ucCUVParam.UpdateData(pData); + + // System Voltage Parameter + pData.Fault = Param.SysOverVoltageTrip; + pData.Warning = Param.SysOverVoltageWarning; + pData.Release = Param.SysOverVoltageRelease; + + ucSOVParam.UpdateData(pData); + + pData.Fault = Param.SysUnderVoltageTrip; + pData.Warning = Param.SysUnderVoltageWarning; + pData.Release = Param.SysUnderVoltageRelease; + + ucSUVParam.UpdateData(pData); + + // Charge Temp Parameter + pData.Fault = Param.ChaHighTempTrip; + pData.Warning = Param.ChaHighTempWarning; + pData.Release = Param.ChaHighTempRelease; + + ucCHTParam.UpdateData(pData); + + pData.Fault = Param.ChaLowTempTrip; + pData.Warning = Param.ChaLowTempWarning; + pData.Release = Param.ChaLowTempRelease; + + ucCLTParam.UpdateData(pData); + + // Discharge Temp Parameter + pData.Fault = Param.DchHighTempTrip; + pData.Warning = Param.DchHighTempWarning; + pData.Release = Param.DchHighTempRelease; + + ucDHTParam.UpdateData(pData); + + pData.Fault = Param.DchLowTempTrip; + pData.Warning = Param.DchLowTempWarning; + pData.Release = Param.DchLowTempRelease; + + ucDLTParam.UpdateData(pData); + + // Charge Over Current + pData.Fault = Param.ChaOverCurrentTrip; + pData.Warning = Param.ChaOverCurrentWarning; + pData.Release = Param.ChaOverCurrentRelease; + + ucCOCParam.UpdateData(pData); + + // Discharge Over Current + pData.Fault = Param.DchOverCurrentTrip; + pData.Warning = Param.DchOverCurrentWarning; + pData.Release = Param.DchOverCurrentRelease; + + ucDOCParam.UpdateData(pData); + + // Low SOC + pData.Fault = Param.LowSocTrip; + pData.Warning = Param.LowSocWarning; + pData.Release = Param.LowSocRelease; + + ucLowSocParam.UpdateData(pData); + + // Cell Votage Difference + pData.Fault = Param.CellVoltageDifferenceTrip; + pData.Warning = Param.CellVoltageDifferenceWarning; + pData.Release = Param.CellVoltageDifferenceRelease; + + ucCvDiffParam.UpdateData(pData); + } + + private void btnGetAll_Click(object sender, EventArgs e) + { + ParamData aa = new ParamData(); + OnCmdEvent(99, 0, aa); + } + + private void btnDefaultSet_Click(object sender, EventArgs e) + { + ParamData aa = new ParamData(); + + if (cbFactoryDefault.Checked) + aa.Fault = 1; + else + aa.Fault = 0; + + if (chbAll.Checked) + aa.Release = 1; + else + aa.Release = 0; + + OnCmdEvent(16, 1, aa); + } + } +} \ No newline at end of file diff --git a/LFP_Manager_PRM/Forms/fmxParamConfig.resx b/LFP_Manager_PRM/Forms/fmxParamConfig.resx new file mode 100644 index 0000000..d0a61cc --- /dev/null +++ b/LFP_Manager_PRM/Forms/fmxParamConfig.resx @@ -0,0 +1,4574 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + 17, 17 + + + + + AAABAAQAICAAAAEAGACoDAAARgAAADAwAAABABgAqBwAAO4MAACAgAAAAQAYACjIAACWKQAAAAAAAAEA + GAAoIAMAvvEAACgAAAAgAAAAQAAAAAEAGAAAAAAAgAwAAAAAAAAAAAAAAAAAAAAAAAD///////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + ///////////////////////////////////////////////////+/v7+/v7+/v7+/v7+/v7+/v7+/v7/ + ///+/v7////////////////////////////////////////////////////////+/v7+/v7+/v7+/v7+ + /v7+/v7+/v7+/v7+/v7////+/v7+/v3+/v3+/v3+/v7+/f3////////+/v7///////////////////// + ///////////////////////////+/v7////+/v7+/f3+/v7+/v3+/v3+/v3+/v7////7+ff///////// + ///////////////+/v3+/v7////+/v7////////////////////////////////////////+/v7////+ + /v7+/v7////////////////////////7+PbCnHejazCkbTKkbDKlbjSdYTDLrIr////9/Pz+/v7///// + ///////////////////////////////////////////+/v79/fz////BnHSeYjClbjSkbDKkbDOjazDc + x7L49PGkbDKEOACKQwCJQQCHPgCNRwTt49n+/v39/Pz+/v7+/v7///////////////////////////// + ///+/v7+/v79/Pv//v7j0sKHPgCJQACJQQCLRACCNgCufkv////////q3tKOSQePSgSPSwKRTQSHPgCt + e0f////9/Pv+/v7////////////////////////////////+/v7////9/f39/Pv9/PuiaS6JQQCQTQOP + SwKNSAOUUxLz7ef+/f37+Pb////AmnKGOwCQTAKOSQCPSwKHPwDaxa7////8+/r+/v7+/v7///////// + ///////////+/v7///7+/v77+vj////OsJGGPACQTAKOSQCQTAKGPADNr4/////7+ff9/Pv9/fz38u6Z + WhuLQwCPSgGPSgGLRQGcXyH59vP9/fz9/fz////+/v7////////+/v7+/v7////+/v77+vn////u5NqS + Tw+OSAKOSQCPSwKJQACiai/8+vn9/Pz9/f3+///9/Pv////WvqWHPQCQTAOOSQCQTQOGPADDn3j////8 + +/r+/v7////+/v7+/v7+/v79/fz8+/r9/f3////u49mdYSiKQwCPSwGOSQCPSwKKQgDi0L/////9/Pv+ + /v7//v7+/v79/Pz///+seUOIPwCQTAKOSQCOSQKNSAbq39P+/v39/Pz+/v7////////////////////+ + /v7SuJ6WVRiLRQCRTwaQTASSUAeHPgC4jV7////9/Pv+/v7////+/v7+/v79/Pz+/v7r39SOSQeOSgKO + SQCQSwKHPwCsekT+/v/9/Pz+/v78+/r49PDy6uPi0cDDn3yZXB9/MACEOACHPgCGOwCFPACEOgCTURDz + 7Ob9/fz9/f3////+/v7////////+/v78+/r////CnneGPACQTAKOSQCQTAKHPgDYwan////9/Pz38u7o + 2szgzbvTuZ/MrY/St5zeyrTcyLLcx7Hcx7HdybPVvKfl1cX////9/fz+/v7+/v7////////+/v7////9 + /f39/Pz59fObXiCKQwCPSgGPSgGLRAGaXB349PH9/fz+/v/////////////////28e3AmnrEn3rDn3nE + oXu+lnbcxrD////9/Pv+/v7////////////////////+/v7+/v79/Pv////bxa+HPgCPSwKOSQCQTAKG + PADAmnH////8+/r9/fz9/Pv7+ff9/Purd0F/MACGOwCFOgCEOQCEOADj0sH+/fz9/Pz+/v7+/v7///// + ///////////////////+/v79/Pz///+ufkqHPgCQTAKOSQCOSgKNRwPp3M/+/v79/Pv8+/r////YwaqH + PgCSTwaQTAOSTwaHPgDDn3n////9/Pv+/v7////////////////////////////+/v7+/v79/Pz+/v7t + 4tiNSAaNSAKOSQCQTAKJQQCqd0D+/v79/Pv9/fz49fKbXyCMRQGPSwGPSgGLRAGYWRn38+/9/fz9/f3/ + ///+/v7///////////////////////////////7+/v79/Pv////EoHqFOwCQTQOOSQCQTQOHPwDUu6H/ + ///////Dn3iGPQCQTQOOSQCQTAOGPQDWvaT////9/Pv+/v7+/v7///////////////////////////// + ///+/v7////9/f39/Pv59vScYCOLRQGPSwKPSgGMRQGWVhf7+ffu5duNSAaOSQKOSQCQTAKJQQCqd0D+ + /v79+/r+/v7////////////////////////////////////////////+/v7+/v78+/r////cx7GJQgCQ + TAOOSQCQTAKFOwC/mXKzhVSGPACQTAKOSQCPSgKOSQfq3dH////9/Pv+/v7+/v7///////////////// + ///////////////////////////////+/v79/Pv///+wgU6HPgCQSwKOSQCPSgGMRgCMRwCPSgCOSQCQ + TAKGPADAmnH////9/Pr+/v7////////////////////////////////////////////////////+/v7+ + /v79/Pz+/v3u5NuPSwmNRwGOSQCPSgCPSwGPSgGPSQCPSgGLRACYWRn38u79/fz9/fz///7+/v7///// + ///////////////////////////////////////////////////+/v79/Pv////HpoKFOwCQTQOOSQCP + SgCPSgCOSQCQTAOGPQDVvaP////9/Pv+/v7+/v7///////////////////////////////////////// + ///////////////+/v7////9/f39/fz7+fefZSiIQACOSQCNRwCNRwCOSQCGPQCrd0H+///9/fz+/v7/ + ///////////////////////////////////////////////////////////////////+/v7+/v79/Pv/ + ///fzLmSTxWXWBWWVhSWVhSWVhSWVRrq3dH////9/Pz+/v7+/v7///////////////////////////// + ///////////////////////////////////////////+/v7+/v7////38+728e328e328e328Oz49fD/ + ///+/v7+/v7///////////////////////////////////////////////////////////////////// + ///////+/v7////////+/v3////////////////////////+/v3////////+/v7///////////////// + ///////////////////////////////////////////////////////////+/v7////+/v7+/v7+/v7+ + /v7+/v7+/v7+/v7+/v7////+/v7///////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAACgAAAAwAAAAYAAAAAEAGAAAAAAAgBwAAAAAAAAAAAAAAAAAAAAAAAD///////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + ///////////////////+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7////+/v7+/v7///////// + ///////////////////////////////////////////////////////////////////////////////+ + /v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7///////////////////////////// + /////////v7+/v7///////////////////////////////////////////////////////////////// + ///////////////////////////+/v7////////+/v7///////////////////////////////////// + ///38u38+vn8+vj8+vj8+vj8+vj8+vj8+vj7+ff////+/v3+/v7+/v7+/v7///////////////////// + ///////////////////////////////////////////////////////////////+/v7+/v7+/v7////7 + +ff8+vj8+vj8+vj8+vj8+vj8+vj7+ff59fK7kmmbXh+cXyCcXyCcXyCcXyCbXyCdYSGWVR3Fon3////9 + /Pz+/v7///////////////////////////////////////////////////////////////////////// + ///////+/v7+/v79/f39/fz///+1iFqXVx2cYCGcXyCcXyCcXyCcXyCbXiCcYCPn2Mv7+fencTqDOACM + RgCLRACLRACLRACLRACKQwCMRQLq3tL////9/Pz+/v7///////////////////////////////////// + ///////////////////////////////////////////+/v79/Pz////Zw6uGOwCMRQCLRACLRACLRACL + QwCNRwCCNQC4jmH////////r39SNRwWOSgOOSgGPSgGPSgGPSgGQTAOIPwCpdD3////9/fz9/f3////+ + /v7////////////////////////////////////////////////////////////////+/v7+/v79/f3+ + /f359vOZWxyLRACQSwKPSgGPSgGPSgGPSgGMRQKXWBn49PD+/fz8+vn////BnHWFOgCQTAGOSQCPSgCP + SgCOSQCPTAKFOwDVvaT////9/Pv+/v7///////////////////////////////////////////////// + ///////////////////////+/v79/Pv////BnXaEOgCQTAKOSQCPSgCPSgCOSQCPSwGGOwDVvKL////8 + +/r9/Pz9/f349fKZXB2KQwCPSgGOSQCOSQCOSQCPSgGLRAGXWBj38+/+/f39/f3+/v7+/v7///////// + /////////////////////////////////////////////////v7+/v79/fz+/v7r39SMRwWNSAGOSQCO + SQCOSgCOSQCPSwGHPgCpdT7////9/Pz+/f3+/v79/Pv////YwquGPACPSwGOSQCPSgCPSgCOSQCQTAGF + OgC+l23////9/fz+/v7////+/v7////////////////////////////////////////////////+/v7+ + ///9/f39/Pv///+qdkGHPQCPSwGOSQCPSgCPSgCOSQCOSAGLRALp3dH////9/Pv+/v7+/v7+/f39/fz/ + //+se0aHPgCQTAKOSQCPSgCPSgCOSQCOSQKLRALn2s3//v79/Pz+/v7///////////////////////// + ///////////////////+/v7+/v7////+/v78+vn////Rt5qGPACQSwKOSQCPSgCPSgCOSQCQTAKFOwC/ + mXL////9/Pz+/v7////////+/v79/fz///7s4deNSAeNSAGOSQCOSQCOSQCOSQCQSwKHPgCnczv+/v79 + /Pz9/f3+/v7+/v7////////////////////////////+/v7+/v7////////9/f38+/r////j08KNSQiN + RgGOSgCOSQCOSQCOSQCPSgCLRACYWhv48/D+/f39/f3+/v7+/v7+/v7////+/v79/Pz////Dn3qFOgCQ + TAGOSQCPSgCPSgCOSQCQSwGGPADSuJ3////9/Pz+/v7////////////////////////+/v7+/v7///// + ///+/v79/Pv////////cx7KPTA2LRQCPSgCOSQCPSgCPSgCOSQCPSwGGPADWvqb////9/Pz+/v7///// + ///////////+/v79/f3+/f359/SbXiCKQgCPSgGOSQCOSQCOSQCPSgCLRQCVVBT18Oz+/f39/fz+/v7+ + /v7////+/v7+/v7+/v7+/v7+/f39/Pz9/Pv////////49PC/mHSKQgCMRQCPSgCOSQCPSgCPSgCOSQCQ + TAKGPQCreEL////9/Pz9/f3+/v7+/v7////////////////+/v79/Pv////axK6FPACPSwKOSQCPSgCP + SgCOSQCQTAKEOQC8lGn////9/Pv+/v7////////////////////////////////////49fLQs5ibXyWH + PgCPSwKQTQOQSwKQTAOQTAKQTAKPSwOOSgOMRQPq3tP////9/Pz+/v7////////////////////+/v7/ + ///+/v39/Pz///+vf0uHPgCQSwGOSQCOSgCPSgCOSQCOSQGLRAHm18n////9/fz+/v7////+/v36+Pb5 + 9fLz7ejo2s3RtpuwgFCNRwN9LQCCNQCHPgCGOwCFOwCGOwCGOwCGOwCFOwCGPAB/MADCnnj////9/Pz+ + /v7////+/v7////////////////////+/v7+/v79/fz///7v5t6PSgiNRwGOSQCPSgCOSQCOSQCPSwGJ + QAClbjX+/f39/f39/f3//v769/XfzbjZw67QtJrEoX67kmq6kGa/mXLDn3rEoHzEoHvEoHvEoHvEoHvE + oHvEoHvDoHvDnnvEoH369/X+/v79/f3+/v7+/v7////////////////////////////////+/v79/Pv/ + ///GpICFOgCQTAKOSQCPSgCPSgCOSQCQTAKGPADQtJf////9/Pz+/v7///////////////////////// + ///////////////////////////////////////////////////////+/v7+//////////////////// + ///////////////////+/v7+/v79/f3+/f36+PadYiSKQwCPSgCOSQCOSQCOSQCPSgGMRgGUVBP07uj+ + /v39/fz+/v7+/v7+/v3+/f39/fz9/Pv7+vj+/f3cyLSXVyGcYCKcXyCcXyCcXyCcXyCdYSKUUxzDn3z9 + /Pz9/Pz9/f3////+/v7////////////////////////////////////////+/v79/Pz////cx7KHPwCP + SgGOSQCPSgCPSgCOSQCQTAKGPAC5kGP////9/Pv+/v7//v7+/v7+/v7+/v79/f39/fz7+feeYyaGPACL + RQCLRACLRACLRACLRACIQACQTAnw59/+/v79/f3+/v7+/v7///////////////////////////////// + ///////+/v7///79/f39/Pv///+xglCGPACQSwGOSQCPSgCOSQCOSQCOSQGKQgDk1MT////9/fz+/v7/ + ///////+/v79/Pz////HpoOFOgCQTAKOSgCPSgGPSgGOSgGQTAKFOwDPs5b////9/Pv+/v7///////// + ///////////////////////////////////////////+/v/+/v79/Pz+/v7w59+PSgiMRgGOSgCPSgCP + SgCOSQCPSwGIQACiajD+/f39/f39/f3///7+/v79/fz+/v7w6OCPSgmNRwGOSQCOSQCOSQCOSQCPSwKI + PwCiaS79/fz9/fz9/f3+/v7+/v7///////////////////////////////////////////////////7/ + ///+/v79/Pv////Ip4WFOgCQTAKOSQCPSgCPSgCOSQCQTAKEOQDOsZP////9/Pv+/v7+/v79/Pv///+x + glGFOwCQTAKOSQCPSgCPSgCOSQCOSgKIQADj08L////9/Pz+/v7///////////////////////////// + ///////////////////////////////+/v7+/v79/f39/f38+vmeZCeJQQCPSwGOSQCOSQCOSQCPSgGM + RQGRTw7z7ef+/v39/f39/Pz////fzLiHPQCPSgGOSQCPSgCPSgCOSQCQTAGFOwC4jF/////9/fz+/v7+ + /v7+/v7////////////////////////////////////////////////////////////////+/v79/fz/ + ///fzLqHPgCOSgGOSQCPSgCPSgCOSQCQTAGFPAC3jF7////9/Pz+/f38+vifZCiJQQCPSwGOSQCOSQCP + SgCOSgGLRQGTURDz7ef+/v39/f3+/v7///////////////////////////////////////////////// + ///////////////////+/v7////+/v79/Pv///+zhVWFOwCQTAKOSQCPSgCPSgCOSQCOSgKJQQDi0cH+ + /v7////JqYeFOgCQTAKOSQCPSgCPSgCOSQCQTAKEOgDNsJH////9/Pv+/v7////+/v7///////////// + ///////////////////////////////////////////////////////+/v7+/v79/fz+/v3w6eGRTQyN + RwGOSQCOSQCOSQCOSQCPSwKJQQChaC7////x6eKRTgyNRgGPSgCPSgCOSQCOSQCPSwGJQQCiajD8+/r9 + /fz9/f3+/v7+/v7///////////////////////////////////////////////////////////////// + ///////////////+/v79/Pz////LrIuFPACQTAGOSQCPSgCPSgCOSQCQSwGFOwDPspW5j2SGPACQSwGO + SQCPSgCPSgCOSQCOSgGJQgDj0sL////9/Pz+/v7///////////////////////////////////////// + ///////////////////////////////////////////+/v7+/v79/f39/fz9/PygZyuJQACPSwGOSQCO + SQCOSQCOSQCOSACOSACNSACOSQCOSQCPSgCPSgCOSQCQTAKFOwC3i13////9/Pv+/v7////+/v7///// + //////////////////////////////////////////////////////////////////////////////// + ///+/v79/Pv////hz72JQACPSwKOSQCPSgCPSgCOSQCPSgCOSQCOSQCPSgCOSQCOSQCOSQCOSQCMRgGS + UA/y6+X+/v39/fz+/v7+/v7///////////////////////////////////////////////////////// + ///////////////////////////////+/v7////+/v79/fz///+1iVuGPACQSwGOSQCPSgCPSgCOSQCP + SgCPSgCOSQCPSgCPSgCOSQCQTAGFOgDNrpD////9/Pz+/v7///////////////////////////////// + ///////////////////////////////////////////////////////////////////+/v7+/v79/f3+ + /v3y6+SSUA6MRQGOSgCOSQCOSQCPSgCPSgCPSgCPSgCOSQCOSQCPSwGIQAChaS78+/r9/Pz9/f3+/v7+ + /v7///////////////////////////////////////////////////////////////////////////// + ///////////////////////////+/v79/Pv////NsJGFOwCQSwGOSQCPSgCPSgCPSgCPSgCOSQCPSgCO + SQCOSQGJQQDi0cD////9/Pv+/v7///////////////////////////////////////////////////// + ///////////////////////////////////////////////////////+/v7+/v79/f39/Pz8+/qiai+J + QACRTQSPSwKQSwKQSwKQSwKQSwKPSwKRTgSGPAC2iVr////9/Pv+/f3////+/v7///////////////// + //////////////////////////////////////////////////////////////////////////////// + ///////////////+/v79/Pv////j08KGPQCHPQCHPgCIPgCIPgCIPgCIPgCHPwCFOgCRTgvy6uP+/f39 + /fz+/v7+/v7///////////////////////////////////////////////////////////////////// + ///////////////////////////////////////////+/v7////+/v79/f3////JqIeufFOzhVezhFaz + hFazhFayhFazhVete1TWvqb////9/fz+/v7///////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + ///+/v7+/v7+/v3////////////////////////////////////////+/v3+/v7+/v7+/v7///////// + //////////////////////////////////////////////////////////////////////////////// + ///////////////////////////////////////////+/v7+/f3+/f3+/fz+/fz+/fz+/fz+/fz+/fz+ + /f3+/f3///////////////////////////////////////////////////////////////////////// + ///////////////////////////////////////////////////////////////////+/v7+/v7+/v7+ + /v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7///////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAoAAAAgAAAAAABAAABABgAAAAAAADIAAAAAAAAAAAAAAAA + AAAAAAAA//////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////v7+/////v7+/v7+//////////////////////////////////////////////////////////// + /////////////////////////////////////////fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7 + /fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/v39/v7+/v7+/v7+//////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////v7+/////v7+/////v7+/f38/fz7/fz7/fz7/fz7/fz7/fz7 + /fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/v7+//////// + //////////////////////////////////////////////////////////////////////////////// + /////////////v7+/////v7+/v7+/v7+//////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////v7+/////v7+ + /f39//////////////////////////////////////////////////////////////////////////// + ////////////////////////2MCn3Maw3Maw3Maw3Mew3Mew3Mew3Mew3Mew3Mew3Mew3Mew3Mew3Mew + 3Mew3Mew3Mew3Mew3Mew3Mew3Mew3Maw3Mex2cOs8uvk/v7+/f39/v7+/v7+//////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////v7+/v7+/v7+/f39////4tHA2sSs3Mex3Mew3Mew3Mew3Mew3Mew3Mew3Mew3Mew + 3Mew3Mew3Mew3Mew3Mew3Mew3Mew3Mew3Mew3Mex3Mew3Mex2cKr9vHtqXQ9ikIAiUEAiUEAikIAikIA + ikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAiUEAikMAgzgAq3hH/v39 + /fz8/v79/v7+/v7+//////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////v7+/v7+/v7+/v7+/fz8////49PCiUIBiUEAiUEA + ikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAiUIAiUEAi0MAgzkA + nmMq+vj1/v39sYJUhz4AkU0Ej0oBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sB + j0sBj0sBj0sBj0oBj0oBkEwDhz0A1buh/////fz7/v7+/v7+/v7+/v7+//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////v7+ + /v7+/v39/Pz8/Pr5pGw1iEAAkE0Dj0oBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sB + j0sBj0sBj0sBj0sBj0sBj0sBj0sDjEYG49LC////////7OLWkU4PjEYBj0oBjkkAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAjkkAj0sBikQAmFod9fDq/v39/v39/v7+ + /v7+//////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////7+/v7+/v7+/v7+/Pv6////za+QhjwAkEwCjkkAjkkAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAkEwChjsAuo9l////+/n4+ff1//// + x6aFhDsAkEwCjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + jkkAjkkAkEwChTwAv5dw/////Pz7/v7+/v7+/v7+//////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////v7+/v7+/f38/v798evik1IV + i0UBj0oBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkoA + j0oBi0QBlVQX8+zl/f39/fz8/fz8/fz8+vbzoGYuiEAAj0sBjkkAjkkAjkoAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAj0oAjkoAjkkAjUkBjEgG6NvN/////fz8/v7+/v7+/v7+/v7+ + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////7+/f7+/v7+/fz7////topehjwAkEwCjkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAj0sChTwA0LWY/////Pv7/v7+/v///Pz7////3sq3iEABjkoC + jkkAjkkAj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkAkEsC + hz8Ap3I//fz7/fz8/v79/v7+/v7+//////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////v7+/v7+/v39/v///Pz7////3867iEAAjkoCjkkAjkkAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjUkAkEsChz8ApnE5/fz8/Pz7 + /v7+/v7+/v7+/v7+/Pv7////tIZYhjwAkEwBjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAjkkAjkgAj0sChTwA0rec/////Pz7/v7+/v7+/v7+//////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////v7+/v7+/v79/fz8 + +/r4oWgwiEAAj0sBjkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kA + j0kAjkkAjkoAjkkBikQF5dbG/////fz7/v7+/v7+/v7+/v7+/fz8/v7+8OffkU8QjEYBj0oAjkkAjkoA + jkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oAjkkAj0oBikMAllcb9O/p + /v39/f38/v7+/v7+/v7+//////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////v7+/v7+/v7+/Pz7////yquLhTsAj0wCjkgAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAkEwChToAu5Nq/////Pz7//7+/v7+/v7+/v7+/v7+ + ///+/Pz7////y6yNhTsAkEwCjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAjkkAjkkAjkkAkEwBhTsAu5Rr/////Pz7/v7+/v7+/v7+/v7+//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////v7+/v7+/fz8/v7+7+bckU4PjEYBjkkBjkkA + j0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0kAjUkAj0oBi0QBllcb + 9e/p/v39/f38/v7+/v7+/////////v7+/v7+/v79/fz8+vj1oWgwiUEAj0sBjkgAjkkAjkkAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkCi0QF5NXG/////fz8/v7+ + /v7+//////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////v7+//7+/f39 + /v7+/fz7////tIdZhjwAkEwCjkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAjkkAjkkAj0sChj0A0rec/////Pz7/v7+/v7+/////v7+/v7+/////v7+/v7+/Pz7//// + 38y4ikIDj0oCjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkA + jkkAjkkAj0sBhz8Ap3I8/Pv5/fz8/v39/v79/v7+//////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////v7+/////v7+/v7+/Pz7////3sm2iUIBj0oBjkkAjkkAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjUkAkEsCiD8AqHM+/fz7/Pz8/v7+/v7+/v7+ + /v7+/////////v7+/v7+/v7+/v7+/Pv7////topehTwAkEwCjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkgAkEsChjwA0bWa/////Pv6/v7+/f39/////v7+ + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////v7+/v7+/f39/fz8+vj2n2UriUEA + j0sBjkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkoA + jkgBjEYG5tjJ/v7+/f37/v7+/v7+/////////////////////////v7+/v7+/f39/v398uriklETi0YB + j0oAjUkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkAj0oB + i0UAlVYZ8+3m/f79/f38/v7+/v7+//////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////v7+ + /v7+/v7+/v7+/Pv6////yKeFhTsAkEwCjkgAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAjkkAjkkAkEwChjwAvpZv/////Pz7/v/+/v7+/v7+/v7+//////////////// + /v7+/v7+/v7+/v7+/Pz7////za6QhTwAkEwCjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAkEwChTwAuZBm/////Pv6/v7+/v7+/v7+/v7+//////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////v79/v7+/fz7/v7+7ePYkU4QjEcBjkkBjkkAj0oAjkkAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkAj0oBi0QBmFof9e/p/f39/v39 + /v7+/v7+/////////////////////////////////v7+/v7+/v7+/fz8+/n3o2s1iUEAkEsBjkkAjkkA + jkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oAjkkAjkkAjkkCikQD5NPD + /////Pz7/v7+/v7+//////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////v7+/v7+/v79/Pv7/v/+ + sIFShjwAkEwCjkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + jkkAjkkAj0sChj0A1Lqg/////Pz7/v/+/v7+/////v7+/////////////////////////v7+/////v7+ + /v7+/fz7////4tHBikMEjkkCjkoAjkkAj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAjkkAjkkAjkkAj0sBiEAApW43/Pv5/fz7/v39/v7+/v7+//////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////v7+/v7+/////Pv6////2sawiD8Aj0sBjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAkEsChz8AqnhE/v79/Pz7/v7+/v7+/v7+/v7+//////// + /////////////////////////v7+/v7+/v7+/v7//fz7////uI1hhj0AkEwCjkkAjkkAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkgAj0wChj0AzrCT/////Pv6/v7+ + /f39/////v7+//////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////v7+/v7+/v7+/f38/f389vLtm18jikMAj0oBjkkAjkkA + jkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkAjkoAjUgBjUgH6NzO + /v7+/fz8/v/+/v7+/////////////////////////////////////////////////v7+/v7+/f38/v39 + 8uvjlFUWi0UBj0oBjUkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkA + j0oAjkkAj0oBjEYBlFMW8enh/v79/fz7/v7+/v7+//////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////v7+/v7//v7+//7+/f39 + /Pv6////t4thhjwAj0wBjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAjkkAjkkAkEwChTsAwJp0/////fz6/v7+/v7+/v7+/v7+//////////////////////////// + /////////////v7+/////v7+/v7//Pv7////zrGUhjwAj0wCjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkAkEwChjwAt4xg/////Pv7/v7+/v7+/v7+//// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////v7+/v7//v3+/Pr6////0bWYhj0Aj0sCjkkAjkkAj0oAjkkAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAjkkAjkkAj0sBi0MAmVsg9vHs/v39/f39/v7+/v7+//// + /////////////////////////////////////////////////v7+/v7+/v7+/v7+/f38/Pr4pW85iD8A + kEsCjUkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkA + jkoCikIC4tHA/////Pv7/v7+/v7+/v7+//////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////v7+/v7+/v7+/v7++/r5////38y4i0UHjUgBjkoA + jkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAjkkAjkkAj0wC + hz4A1r6m/////Pz7/v7+/v7+/////v7+//////////////////////////////////////////////// + /////////v7+/v7+/fz8////49LCjEYFjkkCjkoAjkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkAj0sBiEAAomoy+/n2/fz7/v39/v7+/v7+//////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////v7+/////v7+/v7+/v7+ + /v7++/r5////5NTCj0wQi0UAj0oAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAjkkAjkkAkEwChz8ArHpI/v7+/fz7/f79/v7+/v7+/v7+//////////////////// + /////////////////////////////////////v7+/////v7+/v7+/Pz7////upBnhTwAkEwCjUgAjkkA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkgAj0wChToAyqyM + /////Pv6/v7+/v7+/////v7+//////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////v7+/v7+/////v7+/v7+/v7+/f39/Pr5////4c+9kE0SikQAj0sBjkkAjkkAj0oAjkkAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjUkAj0oAjUgCjkoJ6d3R/v7+/f38/v7+ + /v7+/////////////////////////////////////////////////////////////////////v7+/v7+ + /v7+/v39/f399O3nl1gci0UBj0oBjkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAjkkAj0oAjkkAj0oAi0UBk1ET8Ofe/v39/fz7/v7+/v7+/////v7+//////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////v7+/////////v7+//7+/v7+/Pv6/f38////1LuijkkLi0QA + j0sBjkkAjkkAj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkA + jkkAkEwChjwAwp14/////Pv6/v7//v7+/////v7+//////////////////////////////////////// + /////////////////////////////////v7+/v7+/Pv6////0baahj4AkEwCjkkAjkkAj0oAj0kAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkAkEwBhTwAtYlc/////Pv6/v7+ + /v7+/v7+//////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////v7+/v7+/////v7+/v7+/v7+ + /v79+/v5////+/n1wJp1iEEAjUYAj0wBjkkAjkkAj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkAj0sBikMAnWAn9/Lu/fz7/f39/v7+/v7+/v7+//////////// + /////////////////////////////////////////////////////////////v7+/v7+/v7+/v7+/Pz7 + /Pv5p3I9iD4AkEwCjkkAjkkAjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjkkAjkkAj0oCiUEA3826/////Pv6/v7+/v7+/v7+/v7+//////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /v7+/v7+/////////v7+/v7+/v79/Pv6/f3+////6dzPpW89hjwAj0oBj0oBjkkAjkkAj0oAjkkAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oAjkkAjkkAj0sChz4A2MKq//// + /Pv6/v7+/v7+/v7+//////////////////////////////////////////////////////////////// + /////////////////////v7+/v7+/fz7////5dbGi0UGjkkCjkoAjkkAj0kAjkkAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkAj0sBiEAAoGct+vj1/fz7/v39/v7+/v7+//// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////v7+/v7+/v7+/////////v7+/v7+/f39/fz7/fz8////+vj0xaOCjkkJhz8A + j0sBj0oAjkkAjkkAj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjkkAjkkAkEwChz0Arn1L/////Pv6/v7+/v7+/v7+//////////////////////////////////// + /////////////////////////////////////////////////v7+/////v39/v/+/Pv6////vZZuhjsA + kEwDjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjUgA + j0wChDoAyKiI/////Pv6/v7+/v7+/v7+/v7+//////////////////////////////////////////// + /////////////////////////////////////////v7+/////v7+///////////+/v7+/v7+/v79/Pv6 + /f38////////28ayn2cyhTwAjEcAj0sCjkkAj0oAj0oAj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjUkAj0oAjUcCjkoK69/U/v7//fz7/v7+/v7+/////v7+ + //////////////////////////////////////////////////////////////////////////////// + /////v7+/v7+/v7+/f39/f399fDrl1kci0UBj0sBjUkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAjkkAj0oAjkkAjkoAjEUAkU4P7+bc/v79/fz7/v7+/v7+/////v7+//////// + /////////////////////////////////////////////////////////v7+/////v7+/v7+/////v7+ + /////v7+/v7+/v7+/fz8/Pv6/v7+////////4M68qnhHiD8AiUEAj0sCj0oAjkkAjkkAjkkAjkkAjkkA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAkE0DhjwA + xaJ//////Pv7/////v7+/v7+/v7+//////////////////////////////////////////////////// + /////////////////////////////////////////v7+/v7+/v7+/Pv6////07qghz4Aj0wDjkkAjkkA + j0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkAkEwBhjwAsoRU + /v///Pv6/v7+/v7+/v7+/////////////////////////////v7+/////v7+/v7+/v7+/v7+/v7+/v7+ + /v7+/v7+///+/v7+/v7+/////v7+/v7+/v79/fz8/Pv6/fz8////////+/n32sSvqnZHikIAhz8AjkoA + j0oBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAjkkAjkkAjUkAj0sCikMAnmMp+PXx/f38/f39/v7+/v7+//////////////////////////// + /////////////////////////////////////////////////////////////////////////////v7+ + /v7+/v7+/Pz7/f38qXVBiEAAkEwCjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAjkkAjkkAj0oBiD8A3cm0/////Pv6/////f39/v7+/v7+//////////////////// + /////////////////////////////v7+/////v7+/v7+/v7+/v39/fz7/Pv6/fz7/f7+//////////// + 7OHWyaiHn2UviD8Ahz4AjkkAj0sCjkkAjkkAjkoAjkoAjkkAjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAj0wDiEAA28Wv/////Pz7/v/+/v7+ + /////v7+//////////////////////////////////////////////////////////////////////// + /////////////////////////v7+/////v7+/v7+/fz7/v//6NrNjkkJjkkCj0kAjkkAjkkAjkkAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkAj0oBiUIAn2Ur+fb0/fz7/f39 + /v7+/v7+/////////////////////////v7+/v7+/v7+/v7+/f38/fv6/fz7/fz6/Pv6/fz8/fz8/v7/ + /////////////////Pz66dzPza6Qq3dGkE0Mhj0AikMAj0sCj0sCj0oAjkkAjkoAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkA + kEwChz4AsIJS/v7//Pv7/v7+/v7+/v7+/v7+//////////////////////////////////////////// + /////////////////////////////////////////////////////////////v7+/v7+/v7+/////Pv6 + ////v5lzhTwAkEwCjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjkkAjkgAkEwBhDoAxqSC/////Pv6/v7+/v79/v7+/v7+/////////////////v7+/////v7+/v7+ + /////////////////////////////v788+3l5NTE07icuY5moWgvj0sIhz4AiUIAj0oAkE0FkU0Dj0sC + kEsBkEsBkEsBkEsBkEsBkEsBkEsBkEsBkEsBkEsBkEsBkEsBkEsBkEsBkEsBkEsBkEsBkEsBkEsBkEsB + kEsBkEsBkEsBkEsBkEsBkEsBj0sBkEwCjEgBkE4O7eTa/v7+/fz8/v7+/v7+//////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////v7+/v7+/f38/f389vHsmVsgikMBj0oBjkkAjkkAjkkAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oAjkkAjkkAjEYBkEwN7ePY/v7+/fz7/v7+/f39//// + /v7+/////////////v7+/v7+/f38/v//28ayxqSAy6uKxKF6vJNssoReqHNEmVwlkEwKhjwAgTQAgDQA + hDoAiEAAikMAiUIAiEEAiEAAiEAAiEAAiEAAiEAAiEAAiEAAiEAAiEAAiEAAiEAAiEAAiEAAiEAAiEAA + iEAAiEAAiEAAiEAAiEAAiEAAiEAAiEAAiEAAiEAAiEAAiEAAiEAAiEAAiEAAiUIAgjYAx6WD/////Pv6 + /v7+/v7+/////v7+//////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////v7+/////v7+/v7+/Pv7////1r2khz4A + j0sCjkkAjUkAj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkA + kEwBhjwAsYFR/////fz7/v79/v7+/v7+/////////////////v7+/v7+/v39/v7+4M27za+O0bWW0LOU + z7OV0LOZ0bac07mg1ryk2MCo2cKr2cKs2MGq2MCp18Co18Co18Co18Co18Co18Co18Co18Co18Co18Co + 18Co18Co18Co18Co18Co18Co18Co18Co18Co18Co18Co18Co18Co18Co18Co18Co18Co18Co18Co18Co + 18Co18Co2MCo1r+n2MGq+vf0/v39/v79/v7+/v7+/v7+//////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////v7+/v7+/v7+/v7+/Pv6/v39rHpIhz4Aj0wBjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAj0oBiUEA3May/////Pv6/////f39/v7+/v7+//////// + /v7+/////v7+/v7+//////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////v7//v7+/////v7+//////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////v7+/v7+/fz7/v7+6d3RjUkJjUgBj0oAjkkA + jkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkAj0oBikIAnWIn + +PXx/fz8/f39///+/v7+/////////////////v7+/////////v39/fz7/fz7/fz7/fz7/fz7/fz7/fz7 + /fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz8/fz7+/n3+/n3+/n3+/n3+/n3+/n3 + +/n3+/n3+/n3+/n3+/n3+/n3+/n3+/n3+/n3+/n3+/n3+/n3+/n3+/n3+/n3+/n3+/n3/Pr4/fz7/fz8 + /fz8/v7+/////v7+/////v7+//////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////v7+/v7+ + /v7+/v7+/Pv7////wZx2hDsAkEwCjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAjkkAjkkAkE0ChjwAxKF8/////Pv6/v7+/v7+/v7+/v7+/////v7+/////v7+/v7+ + /v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+ + /v7+//////////////////////////////////////////////////////////////////////////// + /////////////////////////////v7+/v7+/v///v7+/////v7+//////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////v7+/v7+/f39/f389/Ltm14iiUIAj0oBjkkAjkkAjkkAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oAjkkAjkoAjUgCkE0N7OHW/v7+/f38 + /v7+/v7+/////v7+//////////////////////////////////////////////////////////////// + /////////////v7+/////v7+/v7+/f79/f39+vj20LSYzrCSz7GUzrGTz7GTz7GTz7GTz7GTz7GTz7GT + z7GTz7GTz7GTz7GTz7GTz7GTz7GTz7GTz7GTz7GTzrGTzrGTza+S0LSY+vj1/v7+/v79/v7+//////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////v7+/////v7+/v7//Pz7 + ////2cKriD8Aj0sCjkkAjkkAj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + jkkAjkkAjkkAkEwChz8Ar35O/v7+/fz8/v7+/v7+/v7+//////////////////////////////////// + /////////////////////////////////////////////////v7+/v7+/v7+/fz7////yaiIgDMAhz0A + hTsAhTsAhTsAhTsAhTsAhTsAhTsAhTsAhTsAhTsAhTsAhTsAhTsAhTsAhTsAhTsAhjsAhTsAhDsAhz4A + fS0AtIdb/f38/Pz8///+/v7+//////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////v7+/v7+/v7+/v7+/fz7/v//rn1Khz0Aj0wBjkkAjkkAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAj0sCiEAA2MGq/////Pz7/v///v7+/v7+ + /v7+/////////////////////////////////////////////////////////////////////v7+/v7+ + /v7+/v7+/f38/v797+bdkU8PjUkDkU4Fj0wDkEwDkE0DkE0DkE0DkE0DkE0DkE0DkE0DkE0DkE0DkE0D + kE0DkE0DkE0DkE0DkEwDkE0DkU4FjEcFmVwe9/Pu/v7+/v38/v7+/v7+//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////v7+/v7//fz7/v7+69/UjkoL + jUgBj0oAjkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkA + j0sCikMAm18j+PXw/f39/f39/v7+/v7+/////v7+//////////////////////////////////////// + /////////////////////////////v7+/v7+/v7+/fz7////tIZYhj0AkEwCjkgAjkkAj0oAjkkAjkkA + jkkAjkkAjkkAjkkAjkkAjkkAjkkAjkkAjkkAjkkAjkkAj0oAjkkAjkkAj0sChj0A0rec/////Pv7/v7+ + /v7+//////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////v7+/v7+/v7+/////Pv6////xKF9hTsAkEwCjkkAjkkAj0oAj0kAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAkEwChTsAw596/////Pz7/v7+/v7+/v7+//////////// + /////////////////////////////////////////////////////v7+/v7+/v7+/v7+/fz7////3sq3 + iUIAjkoCj0kAjkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAjkkA + jkkAj0wBiD8AqHM+/fz7/Pz7/v7+/v7+/v7+/v7+//////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////v7+/v3+/v39/fz8+PXxnWIpiUIAj0sBjkkA + jkkAjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkAjkoAjUgBjkoK + 6t7S/v7+/fz8/v7+/v7+/v7+/v7+//////////////////////////////////////////////////// + /////////v7+/v7+/f39/f38+vj1oGgviUEAj0sCjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAjkkAj0kAjkkAj0kAjkgCjEYH5tjJ/////fz7/v7+/v7+//////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////v7+//// + /v7+/v7+/Pv6////2cStiEAAj0oCjkkAjkkAj0kAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAjkkAjkgAkEwChz4ArHpH/f38/fz8/v7+/v7+/v7+//////////////////////// + /////////////////////////////////v7+/v7+/v7+/v7+/fz8////y6yNhTwAkEwCjkkAjkkAj0kA + jkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAkEwChTwAvZRs//// + /Pv7/////v7+/v7+/v7+//////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////v7+/v7+/v7+/v7+/Pv7/v7+r4FQhz0AkEwBjkkAjkkAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkgAj0kAkEsChz4A17+n/////Pz7 + /v7+/v7+/v7+/v7+/////////////////////////////////////////////////////v7+/v7+/f38 + /v798enfklISjEYBj0oBjkkAjkkAjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + jkkAjkkAjkkAj0oBi0QAl1gb9O/p/fz8/v38/v7+/v7+//////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////v7+/v7+/fz8 + /v7+7ePakE0NjEcBj0oAjkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjkkAjkkAj0sCikMBml0i9/Pu/f39/f39/v7+/v7+//////////////////////////////////// + /////////////v7+/v7+/v7+/v7+/Pz7////toldhj0AkEwCjkkAjkkAj0oAj0kAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAj0oAjUkAjkkAj0sChTwA0baa/////Pv7/v7+/v7+/////v7+ + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////v7+/v7+/v7+//7+/Pv6////x6SDhTsAkEwCjkkAjkkAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oAjUgAjkkAkEwChTwAwZx1/////Pv7//7+/f39/v7+ + /v7+/////////////////////////////////////v7+/////v39/v7+/fz7////4M67ikICj0oCjkoA + jkgAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAjkkAjkkAj0sBiD8A + pnA8/Pv6/fz7/v7+/v7+/v7+/v7+//////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////v7+/v7+/v79/fz8+fbznmMq + iEEAj0sBj0kAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkA + jkoAjUkCjUgI59rM/////fz8//7+/f39/////v7+/////////////////////////////////////v7+ + /v7+/v39/f38+vj1oWgwiUEAj0sBjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAjkkAj0kAjkkAj0kAjkkCi0QG5dXF/////fz7/v7//v7+//////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////v7+/////v7+/v///Pz7////3cm1iEAAjkoCjkkAjUgAj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAkEwChz8AqndD/fz7/fz7/v7+/v7+/v7+//////////// + /////////////////////v7+/v7+/v79/v7+/Pz7////y6uMhTwAkEwCjkkAjkkAjkoAjkkAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAkEwChTsAu5Fn/////Pz7/v7//v7+ + //7+/v7+//////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////v7+/v7+/v7+/v7+/Pz7////s4RVhjwAkEwCjkgA + jkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkAjkkAj0wChz4A + 1bui/////Pz7/v7+/f3+/v7+/v7+/////////////////////v7+/////f39/v7+/f38/v398Ojfk1ES + jUYBj0oBjkkAjkkAj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkA + j0oBi0UBllYa8+zl/fz9/v38/v7+/v7+/v////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /v7+/v7//f38/v797+XckE0OjEYAj0oAjUgAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAjkkAjkkAj0sBi0QBmVoe9vHr/f39/f39///+/f39/////v7+//////////////// + /////v7+/v7+/v7+/Pz7////tYldhj0AkEwCjkkAjkkAj0oAjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAjkkAj0oAjUkAjkkAj0wChTsA0bWZ/////Pv6/v7+/v7+/v7+//7+//////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////v7+/v7+/v7+/v7+/Pz7////yKiGhDoAkEwDjkkAjkkAj0oAjkkA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oAjkgAjkkAkEwChjwAv5dw/////Pv6 + /v7+/v7+/v7+/////////////////v7+/v7+/v7+///+/fz7////4dC/ikMDj0oCjkkAjkkAjkkAjkkA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAj0wCiD8ApW85/Pv5/fz7 + /v79/v7+/v7+//////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////v7+/v7+/v39 + /fz8+/j1oGYtiUEAj0sCjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + jkkAjkkAjkkAjkoAjkkCjEcG5tjK/////fv7//7+/v7+/v7+//7+/////////////v79/v7+/f39/fz8 + +/r4o2oziUAAj0sBjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkA + jkkAjkkAj0oAjkkCi0UF5NTE/////fz8/v7+/v7+/////v7+//////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////v7+/////v7+/v7+/fz7////3su4iUEBj0sCjkkAjkkAjkkAjkkAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjUkAkEwChz8AqHRA/f38/fz7/f39/v7+/v7+ + /v///////v7+/v7+/v7+/v/+/Pv7////za+RhTwAkEwCjkkAjkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAkE0ChjwAu5Jo/////Pz7/v7+/v7+/v7+/v7+//// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////v7+/v7+/v7+/v7+/fz7////tIdZ + hjwAkEwCjkgAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkA + jkkAj0wChjwA0rec/////Pv6/v7+/f7+//7+/v7+/////v7+/v7+/f38/v7+8erilFITjEYBj0oBjkkA + jkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkAj0oBi0UAl1YZ + 8+3m/f39/f39/v7+/v7+//////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////v7+/v7+/fz8/v398Offk1ISjEcBj0oAjUkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAj0sBi0QBl1ga9O7n/f38/f39/v7+/v7+/////v7+/v7+ + /v7+/Pv6////t4tfhjwAkEwCjkkAjkkAj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjkkAj0oAjkkAjkkAkEwChz4A0LWZ/////Pz7/v7//v7+/////v7+//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////v7+/////v7+/v7+/Pv7////zK2Ohj0AkEwDjkkA + jkkAj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oAjkkAjkgAkEwChjwA + u5Nq/////Pv6/v7+/v7+/v7+/v7+/v7+/Pz7////4dC+ikMCj0oCjkkAjkkAjkkAjkkAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAj0wCiEAAp3E7/Pv5/fz7/v79/v7//v7+ + /v7+//////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////v7+ + /v7+/////v7+/fz7+/j2o2sziUEAj0sBjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAjkkAjkkAjkkAjkoAjkkCjEcG5dbH/////Pz7/v7+/v7+/v7+/v39/fz8+/n3pG00iUEA + j0sBjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkAj0kA + jkkCikQE49PC/v7//fz8/v7+/v7+//////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////v7+/v7+/fz7////4c+9iUICj0oCj0kAjkkAjkkAjkkA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAj0sBiEAAp3E7/Pv5/fz8 + /v79/v7+/v7+/Pv6////zK+Qhj0AkEwCjkkAjkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAjkkAjkgAkE0ChTwAuY9j/////Pv6/v7+/v7+/v7+/v7+//////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////v7+/v7+/v7+/v7+ + /Pv6////t4xghjwAkEwCjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + jkkAjkkAjkkAjkkAkEwChj4Az7OX/////Pv7/v7+/f38/f398erilFQVi0YBj0oBjkkAjkkAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkAj0oBi0UBlVUW8+zl/v39/f39 + /v7+/v7+//////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////v7+/v7+/f38/v7+8+zllFQVi0UBj0oAjkkAjkkAjkkAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkgAj0sBi0UAlVUX8uzk/v39/fz8/Pz7//// + t4xhhjwAkEwCjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAj0oA + jkgAjkkAj0wChjwA0LOX/////fz7/////v7+/v7+//////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////v7+/v7+/v///fv7////zrGU + hjwAj0wCjkkAjUkAj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkA + jkkAkEwChTwAuI5k////+/r5////4tHAiUIDjkoCj0oAjUkAjkoAjkkAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAjkoAjkkAjkkAj0wCiUAApW84/Pv6/f38/v7+/////v7+//////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////v7+/v///v7+/f38+/r4pG02iEAAj0wBjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjUkAj0kAjkoCikMD4tC//v79+vj1pG02hz8AkEsBjkkAjkkA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0kAjkkAj0kAjkkCi0QF49TD + /////fz8//7//v7+//////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////v7+/////fz8////49TEi0UFjkkCj0oA + jkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAj0sBiEAA + oWkx////zrGThTsAj0sCjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAjkkAjkgAkEwChj0AupBl/////fz8/v///v7+/v7+/v7+//////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////v7+ + /v7+/v7+/v/+/fz8////uZBkhj0AkE0CjkgAjUkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0kAjkkAjkkAj0sAiEAAwZ12m18iikIAj0oBjkkAjkkAjkkAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjUkAj0oAjEYBlVYX8uzl/v79/v39/v7+/v7+//// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////v7+/v7+/f39/v398+zmllYXjEYBj0oBjkkAjkkAjkkA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAjkkAjkkAjkkAjkkAikMAjEYAjkkA + jkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAj0oAjkgAjkkAkEwC + hj0Az7SX/////fz7//7+/v7+//////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////v7+//7+ + /fz7////0bWZhz0Aj0wCjkkAjUgAj0oAj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAjkkAjkkAjkkAj0oBjkoAjkkAjkkAj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAjkoAjkkAjkkAj0wCiEAApW86/Pv5/fz8/v7+//7+/v7+//7+//////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////v7+/v7+//7+/v7+/fz8/fz7p3I+iD8Aj0wCjkkAjkkAjkoAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0kAjkkAjkkAj0kCikQF49PD/////Pz8//7+ + /v7+//////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////v7+//7+/fz8////5dbH + jEYHjkoCj0oAjkkAj0kAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oA + jkkAjkkAjkkAj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkA + jkkAkEwChj0AuI1i/////fv8/v/+/v7+/v7+/v7+//////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////v7+/v7+/v7+/v///fz7////vJRqhjwAkEwCjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAjkkAjkkAjUkAj0oBjEUBlFQW8uri/v7+/f39/v7+/v7+//////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////v7+/v7+/f39/f399O7ol1kci0QBj0sB + jkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAj0oAjUgAjkkAj0wChj0AzbCT//// + /Pz8/v7//v7+//////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////v7+/v7+/Pz7////07mfhj0Aj0wCjkkAjUgAj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + jkoAjkkAjkkAkEwCiEAAomw0/Pr4/f39/v7+/v7+/////v7+//////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////v7+/////v7+/v7+/fz8/fz8qHNAhz8AkEwCjkkAjkkAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0kAjkkAj0kAjkkCiUIC4dC+/////fz7/v7+/v7+//////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////v7+/v7+ + /fz8////5tjJi0YFjUgCj0oAjkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkgAkEwChTwA + t4tf/////fz7/v7+/v7+/v7+//////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////v7+/v7+/v7+/fz7////vZZuhTsAkE0CjkkAjkkAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAjkkAjkkAjkkAj0oBi0YBlFMT8eri/v7+/f38/v7+/v7+//////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////v7+/v7+/v39/f399vHs + mVseikQAkEsBjkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oAjkgAjkkAkEwChj0Aza+Q/////Pv6/v7+/v7+ + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////v7+/v7+/Pz7////1Luhhz4AkEwCjkkAjkkAj0oAjkkAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkA + j0sAiEAAo2w0/Pr4/fz8/f39/v7+/v7+/v7+//////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////v7+/v7+/v7+/v79/fz7/f38qndDhz8AkEsB + jkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAjkkAjkkAjkkAjkkAjkkBi0QD4c+9/////Pz7/v7+//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////v7+/v7+/fz7/v7+6NvNjUkIjUgBj0kAjkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAkEwBhTsAt4xf/////Pv6 + /v7+/v7+/v7+//////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////v7+/v7+/Pv6////wZt2hTsAkEwBjkkAjkkAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkA + jkkAjkkAj0oAi0UAlFIT8eri/v39/fz8/v7+/f39//////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////v7+/v7+/v7+ + /f38/fz89vHtmVsfikMAj0sAjkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAkEsChDoAy6uN/////Pv6/v7+/v7+/v7+//////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////v7+/f3+/v7+/Pv7////1r6lhj0Aj0oBjkkAjUkAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAj0sAiEAAoWkx + +/n3/fz8/f39/v7+/v7+//////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////v7+/v7+/v39/fz7/v7+ + rXtJhj0AkEwCj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oBjkkAj0oBjkoCiEEA4M68/////fz7/v7+/v39/////v7+//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////f39/v7+/fz7/v7+69/SjkgJi0UAjkgAjUcAjUgAjUgAjUgAjUgAjUgAjUgAjUgA + jUgAjUgAjUgAjUgAjUgAjUgAjUgAjUgAjUgAjUgAjUcAjUcAjkoAhDkAtYlb/////Pz6/f7+/v7+/v7+ + /v7+//////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////v7+/v7+/v39/v7+/Pz7////xKF9jEcSlVQW + k1IUlFIUlFIUlFIUlFIUlFIUlFIUlFIUlFIUlFIUlFIUlFIUlFIUlFIUlFIUlFIUlFIUlFIUk1IUlFMV + kU8TmVoj8ejg/v39/fz7/v7//f39/v////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////v7+/v///f39/f38/Pv67+bd8Ofe8Off8Off8Off8Off8Off8Off8Off8Off8Off8Off8Off8Off + 8Off8Off8Off8Off8Off8Off8Off8Off7uXd9O7o/////f39/v7+/v7+/v7+//7+//////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////v7+/v////7+/v7+/v7+/v7+//////////////////////// + /////////////////////////////////////////////////////////////////////////v39/v7+ + ///+/v7+//////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////7+/v////// + /////v7+/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39 + /v39/v39/v39/v39/v39/v79/////////v7+/////v7+//////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////v7+/////v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+ + /v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/////v7+//////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + ////////////////////////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAoAAAAAAEAAAACAAABABgAAAAAAAAgAwAAAAAAAAAAAAAA + AAAAAAAA//////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39 + /v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39 + /v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v7+/////v7+//////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////v7+/////v7+/v39/v39/v39/v39/v39/v39/v39 + /v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39 + /v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39 + /v79/v7+//////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////v7+//////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + ////////////////////////////////////////////////////////////////////////9/Lt9/Pu + 9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt + 9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt + 9/Lt9/Lt9/Lt9/Lt9/Lt9/Pt/v7+/v79/v7+/v7+/v7+//////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////v7+/v79/v799/Ls9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt + 9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt + 9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Pt9/Lt/v39pm80omkso2oto2oto2oto2ot + o2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2ot + o2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2ot + o2svnmMrzrGR/////fz7//////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////v7+/v7+/fz8//// + 1bygnGAqo2svo2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2ot + o2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2ot + o2oto2oto2oto2oto2oto2oto2svnWEruY9i/fz8wJpwkUwEiUIAi0QAi0QAi0QAi0QAi0QAi0QAi0QA + i0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QA + i0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0UAiUAAlVQT7uTZ + /v39/fz8/v7+//////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////f38/v7+9O3nmFkViD8Ai0UAi0QA + i0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QA + i0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QA + i0QAi0QAikMAi0MA3sq1/v7+/fz8wJhviD8AkU0Fj0sCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsC + kEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsC + kEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkU0EiD8AuItb/////f38/v7+/v7+ + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////v7+/v7+/fz7////vZNniD8AkU0EkEsCkEsCkEsCkEsCkEsCkEsC + kEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsC + kEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCj0sCkU4EiUAAuY9h + /////Pn4/v7+9e/pnF8ei0UAj0oBjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oBi0MA3cix/////fz7//////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////v7+/////Pz7////49G/j0oHjUgBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oBjEYBl1cU8urj/v39/fv6+vf0//// + 1LqfikIAj0sCj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAjkoAj0sBikIAoWcq9vLt/fz7/v39/v7+//////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////v7+ + /f38+/n3p3A0iUEAj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBiUEAzrCQ/////fz7/v7+/fz7/fz7+/n3q3hBiUAAkEsC + j0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAjkkAj0sBiEAAyKaB/////fz7/////v7+//////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////v7+/v7+/Pz7////z7GRiUEAkEwC + jkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAjkkAj0oBikIApnA0/fz7/v39/v7+/////////f38////6NrMkEwHjUgBjkoAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoA + jUgBlFIO7uTa/////f38//////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////v7+/////fz8/v398OfellYTjEYBj0oBj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkgB + jUYA4tG+/////fz7/////v7+/v7+/////fz8////wJpvhz4Aj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAkEsCiD8As4RR/fz7 + /fz7/v7+/v7+//////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////v7+/v38////uY9ghz4AkEwCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsBiD8Au5Fk/////f38/v7+ + /v7+/////////v7+/fz8/v389e/pnmMmi0MBj0sBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oCi0QB3Mav/////fz8/////v7+ + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////v7+ + /v7+/Pz8////4tG+jUgCjkkBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oBi0UAmFkW9e/o/v7+/f38//////////////////// + /////fv6////17+miUEAj0oBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBikMAoWgp+vfz/v7+/v79//////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////f39/fz8+/j2pW4z + iUAAj0sCj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0kAj0oBiUEA0ria/////fz8/v7+/v7+/////////////////v7+/v39/v39/v/+ + sH9LiEAAkEsCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAjkoAj0sCiD4Ax6Z//////fv6/v7+/v7+//////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////7+/v7//fz8////yqqHiD8Aj0sBjkkAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkA + j0sCiUIAqXU7/fz7/v39/v39/////////////////////////////v7+/fz7/v7+6t3PkU4NjkgCjkoB + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0kAj0oAjUcBkU0N7ODU/////f39/////v7+//////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////v7+/v///f38/v7+7+bdlVMOjEYBjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkBjUgB5dXG//// + /f38/////v7+//////////////////////////////7//fz7////w551iD4AkEwCjkkAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sB + hz4Ar35J/v39/fz8/v7+//////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////v7+/v39/fz7////tolYhz4Aj0sDjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEwBiEAAvZZq/////f37/v7+/v7+//////// + /////////////////////v7+/////f39/v7+9vHsnmMki0QAj0sAj0kAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oCi0QB2cKo//// + /fz7/v7+/v7+//////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////v7+/////fz8//// + 3su3jUcDjkoBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oBjEUBmlsZ9O7n/v79/f38//////////////////////////////// + /////////v7+/v7+/fz6////2cGpikIBj0oDjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0sBi0MAn2Qn+PTw/v79/f38/////v7+ + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////f39/fz8+vf0omosiUEAj0oBj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjkkAj0sCiD8A0reZ/////fz7/////v7+//////////////////////////////////////////// + /v7+/fz7/Pv6sH9KiD8AkEsBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsChj0Aw594/////fz7//7///////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////v7+/v7+/Pz7////yqmGiUAAj0sCjkkAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsBiUEAq3hA + /Pz6/f38/v39//7+/////////////////////////////////////////////v7+/////f37////7OLW + k1EOjUcBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAjkoBjUcCklAO6t7Q/v7+/fz7/v7+//////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////v7+/////f39//7/7ePYk1ENjUcAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAjUcBj0sG6NrL/////fz8/v///v7+ + /////////////////////////////////////////////////v7+/v7+/fz7////xqR+hz4Aj0sCjkkA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjkkAkEsBiUEAsIFN/v79/v39/v3+/v7+/v7+//////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////v79 + /Pz7/v7+s4RQiEAAkEwCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBhz4AwZty/////fz8/v7///7+//////////////////// + /////////////////////////////////////v7//v39/v399/PuoWgrikIAj0oBj0kAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sC + iEAA176j/////fz7//////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////v7+/v7+/fz8////2sSti0QBjkoC + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0kAj0sBi0QAm14d9vHr/v79/f39//////////////////////////////////////////// + ///////////////////////+/////fz8////3MawikMBj0oCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0sCi0QBnGAi9O7n/v38 + /fz8/v7+//////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////f39/v39+fbzoGcoikIAj0sBjkkAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sC + iUEA1buf/////fz8/v7+/v7+//////////////////////////////////////////////////////// + /////////v7+/f79/fz8/f39soNPhz4Aj0sCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEwChz0AwZxz/////f38/v7+/v7+//// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////v7+/Pz7////x6V/iD8AkEwBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0wBiEAArHpD/v7+/v38/v7+ + /////////////////////////////////////////////////////////////////////////////v7+ + /f38/v7+69/SlFIPjUcBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAjkgBkEwG6dvN/////fz8//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////v7+ + /////Pz7/v397ODUlFMRjUcCj0oBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkBkE0I6NvM//7+/fz8/////v7+//////////// + /////////////////////////////////////////////////////////////////////fz7////yKaB + hz0AkEwDjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAjkkAj0sCiUEArXtG/Pv5/fz7/v39/v7+//////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////v///f38////sH9K + hz8Aj0wCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAjkkAj0wChz8AwJlv/////f38/v7+/v7+//////////////////////////////// + /////////////////////////////////////////////v7+/v7+/f39/f389/Puomgti0MAj0sCj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0sDiD8A1r2i/////fz7/////v7+//////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////v7+/f38////18ClikMAj0sBjkkAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkA + j0oBi0QAnmIj9vHs/v39/v39//////////////////////////////////////////////////////// + /////////////////////////////////////v7+/fz8////3sq0jEYAjkoCjkkAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oAi0UA + nWAf9vHs/v7+/v79//////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////v7+/v7+/f38/f389vHsn2Qli0QBj0sBj0kAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oCikIA2MGo//// + /fz7/////v7+//////////////////////////////////////////////////////////////////// + /////////////////////////////fz8////tYhWhz4Aj0wBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsCiD8AwJpw/v7+/fz7 + /v7+/v7+//////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + ///////+/////fz7////xKF6hz4AkEwCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0wBiEAAsH9L/////f38/v79/v7+//////// + //////////////////////////////////////////////////////////////////////////////// + /////v7+/////fz7/v797uXblVQVjEYBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkCjkkG59jJ/////f38/////v7+//// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////v7+/v///f38//// + 6t3PkU4IjUcBjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjUgBkU4J6t7Q/v7+/fz8//////////////////////////////// + /////////////////////////////////////////////////////////////////////////v7+/v7+ + /fz7////yqqGiEAAj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsBiUEAqnY9/Pr4/v39/v7+//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + ///////////////////////////////////////////////////+/v39/fz7/fz7r39KiUEAj0sCj0kA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjkkAkEwChz0Aw553/////fz8/v7+/v7+//////////////////////////////////////////// + /////////////////////////////////////////////////////////////////f39/v79+/n3omor + ikEAj0sBj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAjkoAj0sCiEAA0raY/////fz6/v7+/v7+//////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////v7+/v7//fz7////1ryiiUIAj0oCjkoAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0sBikMBnmMm + +PTw/v39/f39//////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////v7+/v7+/fz7////38u2i0QEjkoDjkoAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0kAj0sBjEUAmVwb9e/p/v7+/f38//////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////f38/v7+9vHsnF8eikMAj0oAj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oBikMA2MCl/////fz7/////v7+ + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////v7+/fz8/v7+t4pZiD8AkEwCjkkAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEwChz4A + vpVq/////fz7/v/+/v7+//////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////v7+/v7+ + /Pz7////wJpwhz0Aj0wDjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsBiUAAr39J/v7+/v39/v7+/v7+//////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////v7+/////f39////8urillcTjEYAj0oAj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAjUgCjkgE5dXE/////fz7 + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////v7+/////fz8////59nLkEsHjUgB + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAjkoBjEcBk1AN7OLW/v///fz7//////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////v7+/v7+/Pz7////za6OiEAAj0sCjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEwBiUEAqnY8/f38/v39/v3+/v7+//////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////f39/fz8/fz7rHlCiUEAkEsBjkkAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sC + iD8AyKaB/////fz7/v///v7+//////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////v79 + /fz7+fXypW0xiUEAj0sBj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBiUEA0bWX/////fz8/////v7+//////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////v7+/v7+/fz7////z7OTikIAj0oCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAj0sBikMAn2Yl+vf0/v7+/f39 + //7///////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////v7+/////fz7////4tG+jEYC + jkoBjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oBjEUCl1gY8+vk/v79/fz7//////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////f38////7eLWlFEOjEcBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAjkoBi0QA28av/////fz7/v7//v7+//////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////v7+/v79/fz7/v7+uY5fiEAAj0wCjkkAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + jkkAkEsCiD8Auo9h/////fz8/v7+/v7+//////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////v7+/v7+/v79/fz8+/r4rHlE + iUEAkEsCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAjkkAj0sBiD8As4RR/f39/v39/v7+///+//////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////v7//f38/v7+7+fdl1cUjEYBjkoAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oBjkgB + 4tC+/////f38/////v7+//////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////v///v7+/Pz7////wp51hz4Aj0sCj0kAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjUcBk1EN7+Xb/////f39/////v7+//////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////fz8////z7GRhz4Aj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsCiUEAp3E4/Pv5/v38/v39 + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////v7+/v7+//7+/fz7////3ciwjEUAjkkBj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsChj0Ax6WA//// + /fz7/v7+/v7+//////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /v7+/v7+/f39/fz7+vj1qHI4iUEAj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAkEsCiD8Az7GR/////f38/v7+/v7+//////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + ///+/////fv7////7OHUlVQWjEYBj0oBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBikMAomks+PPv/v39/v79//////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////v7+/fz7 + ////5NPBj0oGjkgBj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oBjEYAl1gU8uri/v7+/fz8//////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////v7+/v7//f38////8uvj + n2QoiUEAkEwCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oCi0QB38u2/////fz7/////v7+//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////f38////u5Jlhz0A + kEwCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAjkkAj0sBiD8AupBi/////fz8/v7+/v7+//////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////v7+/////fz8/v7/+PTvq3dAiD8AkEwBjkkAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjkkAj0wCiEAAt4pa/v7+/f38/v79/v7+//////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////v7+/v7+/fz8/v398erimVwcjEUBj0sBj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjkkBjUgE4M66/////fz7/////v7+//////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////v7+/v7+/////fz8////+vj1rHpFiD8Aj0sCjkkAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAj0oAjUcBlVQR + 7+bd/v7+/f39//////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////v7+/fz7////0LSUiUEAj0sCjkkAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBikIAo2sv + +/n4/v39/v7+//////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////v39////+/n2tYhXhz4Aj0wDjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsChj0AyquI/////fz7/////v7+ + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////v7+/fz8/fz7qHM5iUEAj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsChz4Ay6uJ/////fz7/v7+ + /v7+//////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////v7+///+/v7+/fz7////+vf0 + rXtIikIAj0sDj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAj0sBikIAo2wx+PXx/f38/f38/v7+//////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /v7+/////Pz7////4tLAjkgHjUgCj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oBjEUBllYS8Oje/v7+/f38//////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////fv7////9/Puq3hChz4Aj0sBj0oAj0kA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAjkkAjkoBi0UA4M24/////fz7//////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////v7+/v7+/Pz6 + ////vpZqiD4Aj0wCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBiD8AuItc/////fz8/v7+/v7+//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////7+/////v7+/fz7////7+XaomoxiEAAkEwDj0oAjkkAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEwC + hz4AtolZ/////fz8/v3+/v7+//////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////f39/v7+9vHsnGAdi0MA + j0sBj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAjkkAjkkCjEYB38y3/////fz8/////v7+//////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////v7+/v7+ + /v///v39/Pz7////38y3mFkciUAAkEwCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oBjEYDllYX7+bc/v7+/f38 + /v7+//////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////v7+/v7+/fz7////1LqeiUEBj0sDjkoAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoA + j0sBikIApGww+vj1/v39/f39/v7+//////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////v7+/////////Pv6////////y6yJ + j0sEikMAkEsBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsCiD8Azq+O/////fz7//////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////v39/fz7/Pr5qnY9iD8Aj0wCj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBiD8AzK2M + /////Pz7/////v7+//////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////v7+/v7+/////v7+/fz7////8+zks4NTiUEAjUkAkEsCjkkAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0kAkEsBiUEApnA0/fv6/v39/f79/v7+/v7+//////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////v7+/v///f38////5tjJkUwIjkgAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjEYBlFIP7uTa/v7+/f38//// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////v7+/////v7+/fz7////////3Mixm14hiEAAj0sCj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + jkoAjkkCjkkG4c+7/////fz7/v7+/v7+//////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //7+/v7+/fz7////v5lviD8Aj0sDjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsCiUAAtIZV/////v39/v7+/v7+//////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////v7+/v7+///+/v39 + /fz8////+PTvvpZujUgDikQAkEwDj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsChz4AuI1d//// + /fz7/v7+//////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////7+/f38/f38 + 9O7nm10ci0QAj0oBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oBikMA3ciy/////fz8/////v7+//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////v7+/////v7+/fz7////////28aunmImhz4A + jkkAj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjEYAl1gW8+vk///+/f38/////v7+//// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////v7//Pz7////1LqdikIAj0sB + jkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAjkkAj0oBikMAoWgp+fby/f39/f39//////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////v7+/v7+/////v7+/fz7/v//////8OjdtolbjEUAikMAkEwCj0oAjkkAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsCiUEAzrGR/////fz7/v7+/v7+//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////v39/fz7/f38rn1HiD8Aj0sCj0kAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkA + j0sBiD8AyKiE/////fz8/v7+/v7+//////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////f38////////+/j2y62LlVQSiD8AjkoBj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjkkAj0oBiUEApW4z+vj1/v39/v39//////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////v7+/v7+/Pz7/v7+6d3Qkk8LjUcBjkoAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjUcBkk8J7eTZ + /v7+/f38/////v7+//////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////v7+/////v7+/f38/f39/////Pr4 + 2sSsomktiD8AjEcAkEwCj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAj0oAjkkAjkgD + 49PB/////fz8/////v7+//////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////v7+/f38////w552hz4Aj0wBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBiD4As4VS/////f39/v7+//// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////v7+/v7+/////f38/v7+////////38y3qXU+iUEAikMAkEsCj0sB + jkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsChz4AvJNm/////fz7/v7+/v7+ + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////v7+ + /////f39/f389vHrnGAgikMAj0sCj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkBjEYA3Mex/////fz7/v7+/v7+//////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /v7+/////////v39/fz8/v7/////////4tC9rntHjUgCiUIAkEsCj0sBj0oAjkkAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAj0oBjEUBmVsZ9O7m/v7+/f38//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////v7+/v7+/Pz7//// + 2MCnikMAj0oCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAjkkAj0oAi0MAnmMj+ffz/v39/f38//////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////v7+/v7+/v7+/v7+/v39/fv6//// + /////fz82MGnrXtIjUYAiUEAjkkAkEwCj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAjkkAj0sCikEA0bWX/////fz7/////v7+//////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////v7+/f39////r35IiUAAj0wC + jkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAjkkAj0sBiEAAxKF6/////fz8/v7+/v7+//////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////v7+/////v7+/f38/fz6/v7/////////8uvj0bWXomktjEUAiD4A + j0oBkEsBj0oAjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAkEsC + iUEAqHQ7+/j2/fz8/v39/v7+//////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////v7+/////fz7/v7+6NvNkEwIjUgBj0oBj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + jUgBkk8K7ODV/////fz7/////v7+//////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////v7+ + /////v7+/v7+/v7+/v39/v39/////////f3859jKvZVqnF8hiD8Ai0QAj0oAkEwEj0oAjkkAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkgBjkkE5dXE/////fz7 + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////v7+/v7+/Pz7////w551iD4Aj0wCjkkAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsCiUEAsIBL//// + /f38/v7+///+//////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////v7+/////v7+/fz8/fz6//////// + ////////69/T0baYqndBjkgAiUAAi0QAkEwDj0sBj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBiD8AvZRo/////fz7/////v7+//////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////v7+/f39+vbzn2UlikMAj0oBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sCi0QA2sOq/////fz7/v7//v7+ + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////v7+/////v7+/v7+/v79/v38/v38/f38/v///////////v398Ojf0bWXsYBNlVUShz0A + ikIAjkkAkEwCj0sCj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oBi0UBmlsc8eri/v39/fz8/v7+//////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////v7+ + /////Pz7////28avi0MBj0oCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0sBikMAnmIj+PXx/v39/f38///+//////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////v7+/////v7+/v79/f38 + /fz7/fz6/v7+/////////////////Pr55dXDyaqHr31Lkk8HikMAiUEAjUYAkEwDj0sBjkkAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + jkkAj0oBiUEA1Lqd/////fv6//////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////v7+/f79/fz7/f38 + sYJOiEAAj0sCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAjkkAj0sBiD8AxKB5/////fz8/v///v7+//////////////////////////// + /////////////////////////////////////////////////////////////////v7+/////v7+/v39 + /v39/v39/v39/v39/v39/v38/v38/fz8/fz8/f38/f38/v38/v38/v39////////////////////9vDq + 6d3P0baYtIZVn2Unkk8HhjsAiUAAjkgAj0sBkEsCj0sBj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsCiUAArHpD/f38 + /v39/v39/v7+//////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////fz8////7OHWkk8KjUcAjkoA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAjkkAjUgBkU4J6NrM/////fz8//////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + ////////////////////////////////////////9O3l49PB1Lqew552soNRnmIhikIAikIAiUEAikIA + jUgAkE0EkEwCj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoBjUgCj0wK59nK/////fz7/v7+//////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////v7+/v7+/fz7////xqR+hz4AkEwCjkkAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sC + iUEArnxG/v7+/f38/f39/v7+//////////////////////////////////////////////////////// + /////////////////////////////////v7+/////fz6+PXv+fXy+fXy+fXy+fbz9vDr8Oje8Oje6dzO + 5NXE2MCmzbCPv5dusIBMn2UnmlwZk1EJjEUAhz0AiUEAjUcAkEwEkE0EkU0EkU0EkEwDj0sCj0sCj0sC + j0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sC + j0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sC + j0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sC + j0sCj0sCj0sCj0sCj0sCj0sCj0sBkE0Ehz4Av5ht/v7+/fz7/v7+//////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + ///////////////////////////+/f39/f389/PuoGYnikIAj0sCj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsBiUAA1r2i//// + /Pz7/////v7+//////////////////////////////////////////////////////////////////// + /////////////////fz7////4M25l1YeoGYnn2MknmMkn2QmmVsYkUwEkU0FhTkAgzcAhDgAhDkAhDkA + hToAhToAhz0AiEAAikIAi0UAi0QAikIAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEA + iUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEA + iUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEA + iUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEA + iUEAiUEAikIAhz0Am1wc9O7o/v7+/f39/////v7+//////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////v7+//7//f38////2sSsi0QAj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oBi0UBnWEg9fDr/v39/f39//////// + //////////////////////////////////////////////////////////////////////////////// + /fz7////6NrMtIZYupFjuY9huo9huY9gupBjvJNnvJNnvpdsv5dtv5dtv5dsvpdsvpdsvpdsvpZrvpZr + vpVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVq + vZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVq + vZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVq + vZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvpdsuI1g + 4M24/////fz8/v7+/v7+//////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + ///////////////////////////////////////////////////////////////////////////////+ + /v7+/fz7////tIZUiD8Aj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsBiD8AwZxy/////fz7/v7+/v7+//////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////v7+//////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////v7+/v7+/fz7/v397ePY + llURjEYBj0oBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAjkgBkEsF6NrN/v7+/fz8/////v7+//////////////////////////// + /////////////////////////////////////////////////v7+/////v79/fz7/fz7/fz7/fz7/fz7 + /fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7 + /fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7 + /fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7 + /fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7 + /fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/v39/v7+/v7+/v7+//////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////v7+/Pv7////yaiEiD8Aj0sBjkkA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjkkAkEsCiUEArXpD/v7//f39/v7+//////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////v7+/////f39/v38+vf0oWgrikIAj0sBj0kAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oB + ikMA1bqf/////fz7/v7+/v7+//////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////v7+/v7+/fz7////3MiyjEYBjkkBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oBi0QAmlwa9O7n/v39 + /f38/////v7+//////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////v7+/f39////tIdViD8Aj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsBiD4Avpds/////f38/v7+//////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////v7+//// + /fz8/v7+7+XblFIOjEYBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjUgBjkoD5dbF/v7//fz7/v7+/v7+//////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////v7+/////v7+/v38/v39 + /v38/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39 + /v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39 + /v39/v39/v39/v39/v39/v39/////////v////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////v7+/v7+/fz8////y6uI + iUEAj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAjkkAj0sBiUEAq3c//fz7/v38/f79//////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////v7+//////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////v7+/v7+//////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////f39/v39/Pv6pGwuikEAj0sBjkkA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjkkAj0sCikIA1Lqd/////fz7/v///v7+//////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////v7+/v7++fbzqXY9nmImoGYnoGUnoGUnoGUnoGUnoGUnoGUnoGUn + oGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUn + oGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnn2UnoGUnnmMm4c+8//// + /fz8//////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////v7+/////fz7////4tC9jUgEjkkCjkoAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oBi0QA + mVsZ8+zl/v38/fz8//////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////v7+/fz7////xaJ8hToAi0QAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIA + ikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIA + ikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAi0QAhDoAqHI6+/n3/v39/v7+//////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////v7+/v7+/fz8////uIxciUAAkEsCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEwCiD8AvpZs/////fz7 + /v7+//7+//////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////v7+/////fz7/v7+ + 7ODUk1EPjUcCkEwDj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sB + j0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sB + j0sBj0sBj0sBj0sBj0sBj0sCkEsCjkkDkk4L6t7Q/////fz7//////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////f39/v7+8enhllYQjUYAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAjkkBjkkE49PB/////fz8/v///v7+//// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////v7+/f38////soJOiEAAj0sBjkkA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjkkAj0wBiD8Awp10/////fz8/v7+/v7+//////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////v7+//// + /Pz7////za+OikEAkEsBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAj0sDiEAAp3I3/Pr4/f38/v39/v7+//////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////v7+/Pz7////2cOri0QAj0oBjkkAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oBi0UAnWAf + 9vHs/v79/fz8//////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////v7+/f39/f38+/n3pm8z + iUEAj0sBj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAjkkAj0oCikIA0LOU/////fz8/////v7+//////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////v7+/v7+/f38/f38+PPvoGcqi0QBj0sBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0sCiUEA1r2i/////fz7/v7+/v7+ + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////v7+/////fz7////4tC9jkkDjkkBjkoAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAi0YAl1gT8+3l/v7+/f39//////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /fz7////x6V/iD8AkEsCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsCiEAArXtF/f38/f38/v7+//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////v7+/v7+/fz8////vJJmiD4AkEwCjkkAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sCiEAA + upFj/////fz8/v7+/v7+//////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////v7+/f38/v7+6t7RklALjUcB + jkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0kAjkgBkU0I6NrM/////f38/////v7+//////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////v7//fz8/v798eril1kVi0QAj0oBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkgBj0oG5NPC/////fz7 + /////v7+//////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////v7+/v79/f38/f38soNQiUEAj0sCj0kAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsC + hz4AwZty/////fz8/v7+/v7+//////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + ///////+/v///f37////0bWXiUEAj0sCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBiUEApm8z/fz6/f38/f39//////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////v7+/////fz7////3MexikMAj0sCjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oBi0MBnGEj9vLt/v39/f38 + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////f39 + /f38/Pr4qHM6iUEAj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oCiUEAz7KS/////fz7/v7+/v7+//////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////v39/f38+PXxomotikIAj0sBj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBiUIA1r2i/////fz7/////v7+//////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////v7+/v7+/fz7////49PBjUgC + jkkBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAjEYBllYU8ejf/v79/f38/////v7+//////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////v7+/v7+/fz7////y6yJ + hz8Aj0sCjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0kAkEsBiD8ArXpD/fz7/v38/v7+/v7+//////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////v7+/fz8////vJNmhz8Aj0sBjkkAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + jkkAkEsChz4At4ta/////fz8/v7+//////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////v7+/////f39////7ePZlFIPjEYAj0oAj0kAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + jkoAjUgCkEwL6dzO/////fz7//////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////v7+/////fz8/v398+vkmFoXi0UAj0oBj0kAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAjkkBjUcD + 38y3/////fz7/v7+/v7+//////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////v7+/fz7/f38tYdVhz8Aj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBiD8AwZtx//// + /fz8/////v7+//////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////v7+/v7+/fz8////0reaikIAjkoBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBiUEApGww+/j2/v38/f39 + /////v7+//////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////v7+/v7+/fz6////3su1jEUEjkoCjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oBi0QAnGAf9fDq/v79/f39//7+//////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////v79/v39/f39q3c+iUEAj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBiD8AzKyK/////Pz7/v7+//////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////v/+/f39/v79 + +fb0o2otikMAj0sBj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sCikIA07eb/////fz7/v7+/v7+//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////v7+/////fz8 + /v7/59fIjkoEjUkBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oBi0YBl1cV7+bc/f39/fz7/v7+/v7+//////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////v7+//7//fv7////yqmGiD8AkEwCjkkA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjkkAj0sBiEAAqXU7/Pv6/f38/v7+//////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////v7+/v7+/fz8////v5dtiD4A + kEsBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAjkkAj0sBiD8Atotb/////fz7/v7+///+//////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////7+/fz8/v7+7uTalVQUjUcCj0oBj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkCj0oK + 5tbG/////fz8/////v7+//////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////f39/v399O7om10ci0UBj0oBj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + jkkAj0oBjUcB4M25/////f38/v7///////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////v7+/////f38////tolXiD8AkEwCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEwCiD4Avpdr/////fz7/v39/v7+ + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////v7+/////fz8////07ibiUAAkEsBjkkAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0sCikIAomos + +PTw/fz8/f39/v7+//////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /fz7////3ciyikMAj0oCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAj0oAi0UAmlsY9O7n/v7+/v39/v////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////v7+/f39/f38/v79q3c/iUAAj0wCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEwChz4AyaiF/////fz7//// + /v7+//////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////v7+/f39/f38+fXxomoviUEA + kEwCjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAjkoAj0sCiUAA07mc/////fz7//////7+//////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////fz8////6NvMkEwHjUgBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAjUcAk1EL7uTa/////f39//////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////v7+/////f38////y6uJhz8Aj0sBjkkAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAj0sB + iUAAq3dA/Pr4/fz7/f39/v7+//////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////v7+/v///fz7 + ////wpxziD8AkEsBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAjkkAkEwCiD8AtIZU/v39/fz7/v39/v7+//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////f38/v7+7uPYlFMPjUcBjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkgBj0oC5dbG/////fz7 + /v7+//////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + ///////////////////////////////////////////////////////////+/fz8/v399/LunGAfi0MA + j0sBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAjkoAj0kBjEUC3cm0/////fz7/////v7+//////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /v7+/v79/f38/v7+tYhYiD8AkEsCj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0wChz0AvpZr/////fz8/v7+//////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////v7+/v///fz7////17+likMAj0oBjkkAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kA + j0oBikMAomgq+vf0/f39/v7+//////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////v7+/////Pz7////4M24 + i0UAj0oBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0sBi0QBm10f8+3m/f38/fz7/v7+/v7+//////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////7+/v79/f39////rnxGiUAAkEsCjkkAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sCiEAAyKWB + /////Pz7/v7+/v7+//////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////v79/f38+PTxomkti0MAj0sBjkkAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + jkkAkEwBiUEA0rea/////fz7/v7+//////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////v7+/v7//fz7////6t3QkE0IjUgBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oBjUcBkk8M69/T/v7+/fz7//// + /v7+//////////////////////////////////////////////////////////////////////////// + /////////////////////////v7+/v7+/fz7////y6yKhz4Aj0sCjkoAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sCiUAAqnU9/Pz7 + /v38/v39/////v7+//////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + ///+/v7+/fz7////wZtyhz8Aj0wCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBiEAAsoJP/////f38/v7+//////////////// + //////////////////////////////////////////////////////////////////////////////// + /////v7+/////f38/v7+8enhllYSjUcBj0oBj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjUgCj0sJ5dbG//7+/Pz7/v7+/v7+//// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////v7+/////f38/v79 + +PTwnGAfi0QAj0sAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAjkkAjkoCi0QA28St/////Pz7/v7+/v7+//////////////////////// + /////////////////////////////////////////////////////////////////////////v7+/f38 + ////uI1diD8AkEsCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsBhz8AvpZq/////fz7/v7+//////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////v7+/v7+/fz7////2sSsi0UAj0oB + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0kAj0sCikMAnmQl9/Lt/f38/f39/////v7+//////////////////////////////////// + /////////////////////////////////////////////////v7+/v7+/fz7////4tC+jUcCjkkBj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0kAj0oBi0QAmVsZ9O3m/v79/f38/////v7+//////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////v7+/f38////sYFMiD8Aj0sBjkkAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkA + kEwChz4AxaJ8/////fz7/v7+//////////////////////////////////////////////////////// + ///////////////////////////////////+/f39/f39+/n3pGwwikEAj0sBjkkAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAj0sCiUAA + 07mb/////Pz7/v7+/v7+//////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////v7+/////fz7/v7+7OHUkU0HjUgBj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oBjUcBk1AO6+DU + /v7+/Pz7/v7+/v7+//////////////////////////////////////////////////////////////// + /////////////v7+/v///f38////za+OiD8Aj0oBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsCiUEAq3c+/fz7/fz8/f79//// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////v7+/v7+/fz8////xqR/iD8Aj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0wChz4AsIBM/v79/fz7/v7+//// + //////////////////////////////////////////////////////////////////////////////7/ + /fz8/v7+8erillYSjEYBj0oBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkBjkkF5tfH/////fz8/////v7+//////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////f39/f39+PXwn2Qli0MAj0oBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oBikMA2cKp/////fz8/v7///////////////// + /////////////////////////////////////////////////////////v7+/v7+/fz8////uI1fiD8A + kEwCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAjkkAj0wDhz4AvpVq/////Pz7/v7+/v7+//////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////v7+/////fz8//// + 2sWtikEAj0oBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oBi0MAnWAg9vDq/f38/f38/v7+//////////////////////////// + /////////////////////////////////////////////fz7////4tC9jUcAjkkBjkkAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + jEQAm10b9O/p/v7+/f38//////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////v7+/v7+/v39/v7+soJPiUAAkEwC + jkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAjkkAj0sDhz8Aw552/////fz7/v7+//7+//////////////////////////////////////// + /////////////////////v7+/f39/f38/Pr4pW8yikIAj0sCj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sCiUAA07ib/////fz7 + /v7//v7+//////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////f38/v7+7OHWklAMjUcBj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkA + jUgAklAK6dzO/////f38/v////////////////////////////////////////////////////////// + /v7+/////fz7////za+OiUEAj0sCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0sCiEAAqXY9+/n3/fz7/v39///+//////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////v7+/////fz8////yamFiD8Aj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0wCiEAArXpD/Pv6 + /fz6/v39/v7+/////////////////////////////////////////////////////////f39/v7+8eng + lVMPjEYAj0oBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAjkkAjkkBkEwF5tjJ/////f38/v///v7+//////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////v7+/f39/v39+fXyomkrikMAj0sCj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAj0sDikMC17+l/////fz7/////v7+ + /////////////////////////////////////////////v7+/v7+/f38////uI1diEAAkEsDjkkAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + jkkAkEwBiD8Au5Jl/////fz8/v7+//7+//////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////v7+ + /////fz8////3ciyi0QAjkoCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAj0sBi0QAnmIi9vLt/v7+/v7+//////////////////// + /////////////////////////v7+/////fz8////4tC9jkgEjkkBj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oBjEUBmFoX8uvj + /v39/fz8/////v7+//////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////v7+/v7+/fz8//// + tYdViD8AkEsBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAjkkAj0wDhz4AwZtx/////fz7/v7+/v7+//////////////////////////// + /////////////v7+/v39/Pr4pG0vikMAj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBiEAAz7KT/////fz7/v7+/v7+//// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////fz7/v7+7uTalVQQjEYBj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oBjUgCkU4N59jI/////fz8/////v7+/////////////////////////////v7+/v7+/fz8 + ////za6NiUAAj0sCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sCiUEApm8z/Pv5/v39/f39//////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////v7+/v7+/fz7////yaiDhz4Aj0sCjkkAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sB + iUAAqnY9/fz8/f38/v7+/////////////////////////////v7+/////f38/v398enhllcVi0UBj0oB + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAjkgBjkkD5NTD/////fz8/v7+/v7+//////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////f39/v39+/j2oWgqikIAj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sCiUIA07mb//// + /fz7/v7+/////////////////////////////v7+/f38////t4tahz8AkEsBjkkAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sCiD8A + upFj/////fz8/v7+//////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////v7+/v7+/fz7////4M67jEYDjkkCj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0sBi0QBm18g8+3l/v39/f38/v7+/v7+ + /////////////v7+/v7+/Pz7////5NTEjkkEjUkCjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAj0oAjEUAllcT8+vk/v39/f38//// + /v7+//////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /v7+/fz8////uIxciD8Aj0sCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsChz0Avpdr/////fz7//////////////////////// + /f39/fz8+/n3p3E4iUEAj0sCj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAj0sBiUAA0LSV/////fz7/v7+/v7+//////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////v7+/////fz8/v7+8Ojf + llYSjEcBj0oAj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAjkkAjkgBkEwI5dfG/////fz7/v7+/////////////v7+/fz7////0LSWiEAA + kEsCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAjkkAj0sBikIAp3A1/Pr5/v39/v39//////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////v7+/v7+/fz7////za2Mhz8AkEsCjkkA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0kAj0sBiEEArHlC+/r4/fz8/v39/v7+/v7+/v7+/f38/v398+zkmVoZi0UBj0oBj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + jkkBjUcA49LA/////f38/////v7+//////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////v38/f39+/n3pG0yikEAj0sCjkoAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sC + iD8A0ria/////fz7//////7+/v7+/fz7////u5Jlhz0Aj0wDjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsBiD8Au5Jk/////f38 + /v7+/v7+//////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////v7+/////f38////38y3jUcAjkoBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0sBjEUBmlsb8eng/v79 + /f38/////f38////5NTDjkkEjkkBjkkAj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oBjEUBl1gV8uvk/v79/f38//////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////v7+/v7+/fz8////t4xchz4AkEwCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0wCiD4Au5Jm/////fz7/f39/fz8+/n3 + qXQ6iUIAj0sBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAjkkAkEsBiD8A0LOU/////fz8/////v7+//////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /fz7/v7+8engllYWjEYBj0oBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAjkkBjkgD5NTD/////Pr5////0bSXiEAAj0sDjkoAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0kAj0sCikIAp3E3/Pr4/v39/v39/v7+//////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////v7+/////fz8////0baX + iUAAkEsBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0kAj0sBiUAApnE2+fbz/f388uvjl1cTi0UAj0oAj0kAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAjkkBjkgE5NTD + /////fz8/v////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////v7+/v3+/v39/Pv5p3I4iUEAkEsBjkkA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjkoAj0sCiUAAz7GT////upFjiD8Aj0wCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEwCiD8Au5Fj/////fz8/v7///7+//// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////fz7////4tG/jUcDjkkCjkoAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAj0oAi0MA + nWEh1r2ikE0KjkgBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0sBjEYBl1gX8urj/v7+/f38///+//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////v7+/v/+/Pz7////u5FkiD8AkEwBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oAjkkAkU4FjUcAj0oA + jkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAjkkAj0sCiEAA0bWW/////fz7/v7+/v7+//////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////f38/v7+8+zlmFkZjEYBj0sBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkgAj0oAjkkAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBikIA + qHI4/Pv5/v39/v7+//////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////v7+/v7+ + /fz6////0LOTiD8AkEwCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oAj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kCjUcF49G//////f38//// + /v7+//////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////v7+/v39+/r3qnY+ + iUEAkEsBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sChz4Au5Nm/v///fz8/v7+/v7+//////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////v7+/////f38////5tfIjkkIjkkCj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAjkoAj0oAjEYAl1cU8+zl/v7+/v39//////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////v7+/v7+/fz7////v5huhz4Aj0sCjkkAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kA + kEsChz8Az7KS/////fz7/////v7+//////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////v79/v7+9O7pmlwZi0UAj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAkEsCikEApnA3+vf0/fz7 + /v39/v7+//////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////v7+/////fz7////07ibiD8AkEsDj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkoBjEUA38y3/////fz7//////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////v7+/v39 + /fz7+/n3q3hBiUEAkEsCj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAjkkAj0wChz4AuY1f/////f38/v7+/v7+//////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////fz8////59jIj0oD + jkkBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oBjEYCl1YV7+Xb/v39/fz7/v7+//////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////v7+/v7+/f37////vpdthz0Aj0wCj0kAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsBhz4Ay6uJ + /////fz8//////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////v7+/fz8/v399O/om18hi0QBj0oBj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBiUEApW40+vf0/v39/v39/v7+/v7+ + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////f38////1r2iiUAAj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAjkkCjEYE4M24/////fz7/v7+//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /v7+/v7+/v79/v38/v39rnxIiEAAkEsBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAjkkAkEwChz8At4tZ/v7+/fz7/v7+//////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////v7+/fz7 + /v7+6NrMkU0LjkgCjkoBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjEYB + llYW7+Xb/v7+/f38/////v7+//////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////7//fz7////wJpwhz0A + kEwCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sCiD8Aza6M/////fz7/v7+ + /v7+//////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////v7+/////f39/v799vLtnWIki0QAj0sBj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAj0sBiUEApG0x+vf0/f38/v7+//////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////v7+/v7+/fz7////1r6ii0MAj0oCjkkAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAjkoAj0kCjEYF38y3/////fz7/////v7+//////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////v7+/f38/fz8rXtEiUAAj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkA + j0wChz8AuIxc/v7+/fz7/v39/v7+//////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /v7+/////fz8////697Skk8MjUgBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAjkoAjUYAllYR8Ofe/v/+ + /v39/v////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////v7+/v7+/fv6 + ////xKF6iD4AkEsCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0wCiD8Ay6uJ/////v38//////7+//////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////v79/v7++fXyn2Qli0MA + j0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0kAj0sCiUEApW8z+fby/fz7/f39/v7+//////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////v7+/////fz8////2cKqikQAjkoCj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjkoAjkkBjEYA4M24/////fz8/v7+//////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////v7+/v7+/fz7/Pv6sH9LiD8AkEsCj0kAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0wChz4At4pa + /////f38//////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////f38////7OLWkk4KjUgBjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0sBjEUBl1cV7uXb/v39/Pz8/v7+/v7+ + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /v7+/////fz8////xaJ8iD8Aj0wCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsBiUAAzK2L/////Pz7/v7+//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////v7+/v39/fz7 + 9/LtomgsikIAj0sCj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAjkkAj0sBiUIApGww/Pn3/f38/f39//////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////fz7////3Mewi0QAj0oB + jkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkB + jUcE3sq2/////Pz7/v7+/v7+//////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////v7+/v7+/f38////tolXiD8Aj0wBjkkAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsBiD8AuIxb/////fz8/v7+ + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////v7+/fz7/v7+7eLWlVMSjUcCj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjUYBllYT8Ojf/v7+/f39/////v7+//////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////fz8////yKaBhz4AkEsBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAjkkAj0sBhz8AyaiF/////fz7/v7+/v7+//////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////v7+ + /v7+/v39/v39+PTxomktikIAj0sBj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oBikMAomgq+fXy/v39/f39//////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////v7+/fz7//// + 3Mixi0MBjkoCjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oBi0MA3ciy//// + /fz8/////v7+//////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////v7+/fz7/v79tIdVhz4AkEwC + jkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEwBhz8AtIdV/////f37/v7+/v7+//////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////v7+/////f38////7+belVUUjEYBj0oBj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAjkoAjUYBlFMO7uPZ/v7+/fz8//////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////v7+/v7+/fz7////y6yJiD8Aj0sCjkkAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjkkAkEwBhz4AyKaD/////fz7/v///v7+//////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////v7+/v38+ff0pW4yikEAj0sBj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0sBikIAoWgq + +vf1/f38/f39//7+//////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////v7+ + /////fz7////4M24jEUFj0kCjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkCjEYB3ciy/////fz7/////v7+ + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////v7+/v39/fz7/v39 + tolZhz4AkU4FkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwD + kEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwD + kEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwCkU0EiEAAtIVS/////f39/v7+///+//////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////v///v39////8OfdlVQQhDoAiD8A + iD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4A + iD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4A + iD4AiD4AiD4AiD8AhToAkU4K7+Xc/v7+/f38/////v7+//////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////7+/////v7+////38y4y6yNzrGQzrCQzrCQzrCQzrCQ + zrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQ + zrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrGS + yqqM38u2/////v79/v7+/v7+//////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////v7+/v7+/v7+/v79//////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////v79/v7+ + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////f38/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8 + /fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8 + /fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/f38/v7+/////v7+//////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + ////////////////////////////////////////////////////////////////////////AAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA= + + + \ No newline at end of file diff --git a/LFP_Manager_PRM/Forms/fmxWait.Designer.cs b/LFP_Manager_PRM/Forms/fmxWait.Designer.cs new file mode 100644 index 0000000..b3ae6a2 --- /dev/null +++ b/LFP_Manager_PRM/Forms/fmxWait.Designer.cs @@ -0,0 +1,92 @@ +namespace LFP_Manager.Forms +{ + partial class fmxWait + { + /// + /// Required designer variable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Clean up any resources being used. + /// + /// true if managed resources should be disposed; otherwise, false. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Windows Form Designer generated code + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + this.progressPanel1 = new DevExpress.XtraWaitForm.ProgressPanel(); + this.tableLayoutPanel1 = new System.Windows.Forms.TableLayoutPanel(); + this.tableLayoutPanel1.SuspendLayout(); + this.SuspendLayout(); + // + // progressPanel1 + // + this.progressPanel1.Appearance.BackColor = System.Drawing.Color.Transparent; + this.progressPanel1.Appearance.Options.UseBackColor = true; + this.progressPanel1.AppearanceCaption.Font = new System.Drawing.Font("Microsoft Sans Serif", 12F); + this.progressPanel1.AppearanceCaption.Options.UseFont = true; + this.progressPanel1.AppearanceDescription.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F); + this.progressPanel1.AppearanceDescription.Options.UseFont = true; + this.progressPanel1.Dock = System.Windows.Forms.DockStyle.Fill; + this.progressPanel1.ImageHorzOffset = 20; + this.progressPanel1.Location = new System.Drawing.Point(0, 17); + this.progressPanel1.Margin = new System.Windows.Forms.Padding(0, 3, 0, 3); + this.progressPanel1.Name = "progressPanel1"; + this.progressPanel1.Size = new System.Drawing.Size(246, 39); + this.progressPanel1.TabIndex = 0; + this.progressPanel1.Text = "progressPanel1"; + // + // tableLayoutPanel1 + // + this.tableLayoutPanel1.AutoSize = true; + this.tableLayoutPanel1.AutoSizeMode = System.Windows.Forms.AutoSizeMode.GrowAndShrink; + this.tableLayoutPanel1.BackColor = System.Drawing.Color.Transparent; + this.tableLayoutPanel1.ColumnCount = 1; + this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 100F)); + this.tableLayoutPanel1.Controls.Add(this.progressPanel1, 0, 0); + this.tableLayoutPanel1.Dock = System.Windows.Forms.DockStyle.Fill; + this.tableLayoutPanel1.Location = new System.Drawing.Point(0, 0); + this.tableLayoutPanel1.Name = "tableLayoutPanel1"; + this.tableLayoutPanel1.Padding = new System.Windows.Forms.Padding(0, 14, 0, 14); + this.tableLayoutPanel1.RowCount = 1; + this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 100F)); + this.tableLayoutPanel1.Size = new System.Drawing.Size(246, 73); + this.tableLayoutPanel1.TabIndex = 1; + // + // Form1 + // + this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.AutoSize = true; + this.AutoSizeMode = System.Windows.Forms.AutoSizeMode.GrowAndShrink; + this.ClientSize = new System.Drawing.Size(246, 73); + this.Controls.Add(this.tableLayoutPanel1); + this.DoubleBuffered = true; + this.Name = "Form1"; + this.StartPosition = System.Windows.Forms.FormStartPosition.Manual; + this.Text = "Form1"; + this.tableLayoutPanel1.ResumeLayout(false); + this.ResumeLayout(false); + this.PerformLayout(); + } + + #endregion + + private DevExpress.XtraWaitForm.ProgressPanel progressPanel1; + private System.Windows.Forms.TableLayoutPanel tableLayoutPanel1; + } +} diff --git a/LFP_Manager_PRM/Forms/fmxWait.cs b/LFP_Manager_PRM/Forms/fmxWait.cs new file mode 100644 index 0000000..d7060f6 --- /dev/null +++ b/LFP_Manager_PRM/Forms/fmxWait.cs @@ -0,0 +1,43 @@ +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Data; +using System.Drawing; +using System.Text; +using System.Windows.Forms; +using DevExpress.XtraWaitForm; + +namespace LFP_Manager.Forms +{ + public partial class fmxWait : WaitForm + { + public fmxWait() + { + InitializeComponent(); + this.progressPanel1.AutoHeight = true; + } + + #region Overrides + + public override void SetCaption(string caption) + { + base.SetCaption(caption); + this.progressPanel1.Caption = caption; + } + public override void SetDescription(string description) + { + base.SetDescription(description); + this.progressPanel1.Description = description; + } + public override void ProcessCommand(Enum cmd, object arg) + { + base.ProcessCommand(cmd, arg); + } + + #endregion + + public enum WaitFormCommand + { + } + } +} \ No newline at end of file diff --git a/LFP_Manager_PRM/Forms/fmxWait.resx b/LFP_Manager_PRM/Forms/fmxWait.resx new file mode 100644 index 0000000..2260754 --- /dev/null +++ b/LFP_Manager_PRM/Forms/fmxWait.resx @@ -0,0 +1,120 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + \ No newline at end of file diff --git a/LFP_Manager_PRM/Function/csCanCommFunction.cs b/LFP_Manager_PRM/Function/csCanCommFunction.cs new file mode 100644 index 0000000..be432b6 --- /dev/null +++ b/LFP_Manager_PRM/Function/csCanCommFunction.cs @@ -0,0 +1,899 @@ +using System; + +using LFP_Manager.DataStructure; +using LFP_Manager.Utils; + +namespace LFP_Manager.Function +{ + // 1. Define the data type + public struct PACKET_HEADER + { + public byte Index; // 3 + public byte R; // 1 + public byte DP; // 1 + public byte PF; // 8 + public byte PS; // 8 + public byte SA; // 8 + } + + class csCanCommFunction + { + public static void CanRxProcess(ref CommConfig aConfig, int sId, UInt32 ExID, byte[] data, ref DeviceSystemData rSystemData, DateTime rTime) + { + PACKET_HEADER PacketHeader = CovertPtoH(ExID); + + if (PacketHeader.SA == (200 + sId)) + { + if (data.Length > 0) + { + int REF = 0; + + rSystemData.CommFail = false; + rSystemData.ShelfCommFail = false; + rSystemData.LastRxTime = rTime; + + switch (PacketHeader.PF) + { + case 201: // Device heartbeat + rSystemData.heatbeat = (UInt32)((data[0] << 24) + | (data[1] << 16) + | (data[2] << 8) + | (data[3] << 0)); + rSystemData.OneBuffTime = (data[4] << 8) | data[5]; + rSystemData.AllBuffTime = (data[6] << 8) | data[7]; + break; + case 1: // Send data 0x01 + break; + case 11: // Module Voltage, Current + rSystemData.ValueData.voltageOfPack = (short)((data[0] * 256) + data[1]); + //rSystemData.ValueData.rSOC = (short)(data[2]); + rSystemData.CalibriationData.ForcedBalancing.AutoB = (data[3] == 0x01) ? true : false; + rSystemData.StatusData.warning = (short)((data[4] << 8) | data[5]); + rSystemData.StatusData.protect = (short)((data[6] << 8) | data[7]); + break; + case 12: // Status code 2, Software version + rSystemData.StatusData.batteryStatusA = (short)((data[0] << 8) | data[1]); + rSystemData.StatusData.status = (short)(data[2]); // Op Status + + rSystemData.ValueData.fw_ver[0] = (byte)((((data[6] * 256) + data[7]) >> 12) & 0xf); + rSystemData.ValueData.fw_ver[1] = (byte)((((data[6] * 256) + data[7]) >> 8) & 0xf); + rSystemData.ValueData.fw_ver[2] = (byte)((((data[6] * 256) + data[7]) >> 4) & 0xf); + rSystemData.ValueData.fw_ver[3] = (byte)((((data[6] * 256) + data[7]) >> 0) & 0xf); + break; + case 13: // Status code 3 + rSystemData.StatusData.batteryStatusB = (short)((data[0] << 8) | data[1]); // Battery Status 1 + rSystemData.StatusData.protect1 = (short)((data[2] << 8) | data[3]); // Protection 1 + break; + + case 15: // Balancing Status - Active Balancing + rSystemData.StatusData.BalanceEnable = (uint)((data[0] << 24) | (data[1] << 16) | (data[2] << 8) | (data[3] << 0)); + rSystemData.StatusData.BalanceMode = (uint)((data[4] << 24) | (data[5] << 16) | (data[6] << 8) | (data[7] << 0)); + break; + + case 31: // Cell Temperature #1 ~ #4 + case 32: // Cell Temperature #5 ~ #8 + case 33: // Cell Temperature #9 ~ #12 + case 34: // Cell Temperature #13 ~ #16 + REF = PacketHeader.PF - 31; + for (int i = 0; i < 4; i++) + { + if (((REF * 4) + i) < rSystemData.tempQty) + rSystemData.ValueData.CellTemperature[(REF * 4) + i] = (short)(((data[(i * 2)] * 256) + data[(i * 2) + 1]) - 800); + } + MakeMaxAvgMinTemperature(ref rSystemData); + break; + case 41: + rSystemData.ValueData.rSOC = (short)((data[0] << 8) | data[1]); + break; + case 191: // Cell Voltage 1 ~ 4 + case 192: // Cell Voltage 5 ~ 8 + case 193: // Cell Voltage 9 ~ 12 + case 194: // Cell Voltage 13 ~ 16 + case 195: // Cell Voltage 17 ~ 20 + case 196: // Cell Voltage 21 ~ 24 + case 197: // Cell Voltage 25 ~ 28 + case 198: // Cell Voltage 29 ~ 32 + case 199: // Cell Voltage 33 ~ 36 + REF = PacketHeader.PF - 191; + for (int i = 0; i < 4; i++) + { + if (((REF * 4) + i) < rSystemData.cellQty) + rSystemData.ValueData.CellVoltage[(REF * 4) + i] = (ushort)((data[(i * 2)] * 256) + data[(i * 2) + 1]); + } + rSystemData = MakeMaxAvgMinCellVoltage(rSystemData); + break; + case 111: // Cell Balancing Status + switch (aConfig.TargetModelIndex) + { + case 0: // PR-57150 + rSystemData.StatusData.cellBalanceValue = (ushort)((data[0] << 8) + data[1]); + rSystemData.StatusData.cellBalanceEndGap = (short)(data[2]); + rSystemData.StatusData.cellBalanceFlag = (short)(data[3]); + rSystemData.StatusData.cellBallanceStatusLv = (uint)((data[4] << 0) | (data[5] << 8) | (data[6] << 16)); + rSystemData.StatusData.cellBalanceInterval = (short)(data[7]); + break; + case 3: // PR-102150 + rSystemData.StatusData.cellBalanceValue = (ushort)((data[0] << 8) + data[1]); + rSystemData.StatusData.cellBalanceEndGap = (short)(data[2] & 0x7F); + rSystemData.StatusData.cellBalanceFlag = (short)((data[2] >> 7) & 0x01); + rSystemData.StatusData.cellBalanceInterval = (short)(data[3]); + rSystemData.StatusData.cellBallanceStatusLv = (uint)((data[4] << 0) | (data[5] << 8) + | (data[6] << 16) | (data[7] << 24)); + break; + case 4: // PR-115300 + rSystemData.StatusData.cellBalanceValue = (ushort)((data[0] << 8) + data[1]); + rSystemData.StatusData.cellBalanceEndGap = (short)(data[2] & 0x7F); + rSystemData.StatusData.cellBalanceFlag = (short)((data[2] >> 7) & 0x01); + rSystemData.StatusData.cellBalanceInterval = (short)(data[3]); + rSystemData.StatusData.cellBallanceStatusLv = (uint)((data[4] << 0) | (data[5] << 8) + | (data[6] << 16) | (data[7] << 24)); + break; + case 5: // PR-67150 + rSystemData.StatusData.cellBalanceValue = (ushort)((data[0] << 8) + data[1]); + rSystemData.StatusData.cellBalanceEndGap = (short)(data[2] * 10); + rSystemData.StatusData.cellBalanceFlag = (short)((data[3] >> 7) & 0x01); + rSystemData.StatusData.cellBallanceStatusLv = (uint)((data[4] << 0) | (data[5] << 8) | (data[6] << 16)); + rSystemData.StatusData.cellBalanceInterval = (short)(data[7]); + break; + default: + rSystemData.StatusData.cellBalanceValue = (ushort)((data[0] << 8) + data[1]); + rSystemData.StatusData.cellBalanceFlag = (short)((data[2] >> 7) & 0x01); + rSystemData.StatusData.cellBalanceEndGap = (short)((data[2] & 0x7F) * 10); + rSystemData.StatusData.cellBalanceInterval = (short)(data[3]); + rSystemData.StatusData.cellBallanceStatusLv = (uint)((data[4] << 0) | (data[5] << 8) | (data[6] << 16) | (data[7] << 24)); + break; + } + break; + case 112: // Cell Balancing Status + rSystemData.StatusData.cellBallanceStatusHv = (uint)((data[0] << 0) | (data[1] << 8) | (data[2] << 16) | (data[3] << 24)); + break; + case 51: // Cell Voltage Parameter + rSystemData.ParamData.CellUnderVoltageWarning = (short)((data[0] * 256) + data[1]); + rSystemData.ParamData.CellUnderVoltageTrip = (short)((data[2] * 256) + data[3]); + rSystemData.ParamData.CellOverVoltageWarning = (short)((data[4] * 256) + data[5]); + rSystemData.ParamData.CellOverVoltageTrip = (short)((data[6] * 256) + data[7]); + break; + case 71: // System Voltage Parameter + rSystemData.ParamData.SysUnderVoltageWarning = (short)((data[0] * 256) + data[1]); + rSystemData.ParamData.SysUnderVoltageTrip = (short)((data[2] * 256) + data[3]); + rSystemData.ParamData.SysOverVoltageWarning = (short)((data[4] * 256) + data[5]); + rSystemData.ParamData.SysOverVoltageTrip = (short)((data[6] * 256) + data[7]); + break; + case 61: // Temperature Parameter + rSystemData.ParamData.ChaLowTempWarning = (short)(data[0] - 80); + rSystemData.ParamData.ChaLowTempTrip = (short)(data[1] - 80); + rSystemData.ParamData.ChaHighTempWarning = (short)(data[2] - 80); + rSystemData.ParamData.ChaHighTempTrip = (short)(data[3] - 80); + rSystemData.ParamData.DchLowTempWarning = (short)(data[4] - 80); + rSystemData.ParamData.DchLowTempTrip = (short)(data[5] - 80); + rSystemData.ParamData.DchHighTempWarning = (short)(data[6] - 80); + rSystemData.ParamData.DchHighTempTrip = (short)(data[7] - 80); + break; + case 141: // Soc Parameter, System Voltage Calibration K, B + rSystemData.ParamData.LowSocWarning = (short)(data[0]); + rSystemData.ParamData.LowSocRelease = (short)(data[1]); + rSystemData.CalibriationData.SystemVoltage.Calibration_K = (short)((data[4] * 256) + data[5]); + rSystemData.CalibriationData.SystemVoltage.Calibration_B = (short)((data[6] * 256) + data[7]); + break; + case 151: // Battery Option Parameter - Cell Voltage Offset + rSystemData.CalibriationData.CellVoltge.CvOffsetLow = (short)((data[0] << 8) | data[1]); + rSystemData.CalibriationData.CellVoltge.CvOffsetHigh = (short)((data[2] << 8) | data[3]); + break; + case 221: // Over Current Parameter + rSystemData.ParamData.ChaOverCurrentWarning = (short)((data[0] * 256) + data[1] - 30000); + rSystemData.ParamData.ChaOverCurrentTrip = (short)((data[2] * 256) + data[3] - 30000); + rSystemData.ParamData.DchOverCurrentWarning = (short)((data[4] * 256) + data[5] - 30000); + rSystemData.ParamData.DchOverCurrentTrip = (short)((data[6] * 256) + data[7] - 30000); + break; + case 231: // Voltage release Parameter + rSystemData.ParamData.CellUnderVoltageRelease = (short)((data[0] * 256) + data[1]); + rSystemData.ParamData.CellOverVoltageRelease = (short)((data[2] * 256) + data[3]); + rSystemData.ParamData.SysUnderVoltageRelease = (short)((data[4] * 256) + data[5]); + rSystemData.ParamData.SysOverVoltageRelease = (short)((data[6] * 256) + data[7]); + break; + case 241: // Temperature, Current release Parameter + rSystemData.ParamData.ChaLowTempRelease = (short)(data[0] - 80); + rSystemData.ParamData.ChaHighTempRelease = (short)(data[1] - 80); + rSystemData.ParamData.DchLowTempRelease = (short)(data[2] - 80); + rSystemData.ParamData.DchHighTempRelease = (short)(data[3] - 80); + + rSystemData.ParamData.ChaOverCurrentRelease = (short)((data[4] * 256) + data[5] - 30000); + rSystemData.ParamData.DchOverCurrentRelease = (short)((data[6] * 256) + data[7] - 30000); + break; + + case 81: // Battery Parameter + rSystemData.CalibriationData.Battery.CellQty = (short)(data[0]); + rSystemData.CalibriationData.Battery.TempQty = (short)(data[1]); + rSystemData.CalibriationData.Battery.Capacity = (UInt32)((data[2] * 256) + data[3]); + break; + case 91: // Device Address Setting + rSystemData.CalibriationData.SystemInfo.devAddr = (ushort)((data[0] * 256) + data[1]); + break; + case 171: // Cell Balancing Paramwter + rSystemData.CalibriationData.CbParam.Threadhold = (short)((data[0] * 256) + data[1]); + rSystemData.CalibriationData.CbParam.Window = (short)((data[2] * 256) + data[3]); + rSystemData.CalibriationData.CbParam.Min = (short)(data[4]); + rSystemData.CalibriationData.CbParam.Interval = (short)(data[5]); + break; + case 211: + DateTime dev = new DateTime(data[0] + 1970 + , data[1] + , data[2] + , data[3] + , data[4] + , data[5] + ); + rSystemData.CalibriationData.SystemInfo.devTime = dev; + break; + case 21: // Cell Voltage Difference Parameter + rSystemData.ParamData.CellVoltageDifferenceTrip = (short)((data[0] * 256) + data[1]); + rSystemData.ParamData.CellVoltageDifferenceWarning = (short)((data[2] * 256) + data[3]); + rSystemData.ParamData.CellVoltageDifferenceRelease = (short)((data[4] * 256) + data[5]); + rSystemData.ParamData.CellVoltageDifferenceTime = (short)((data[6] * 256) + data[7]); + break; + } + } + if (rSystemData.StatusData.protect != 0) + rSystemData.StatusData.alarm = 2; + else if (rSystemData.StatusData.warning != 0) + rSystemData.StatusData.alarm = 1; + else + rSystemData.StatusData.alarm = 0; + } + } + public static void CanInvRxProcess(int sId, UInt32 exID, byte[] rData, ref DeviceSystemData aSystemData, DateTime rTime) + { + PACKET_HEADER PacketHeader = CovertPtoH(exID); + + if (PacketHeader.SA == (200 + sId)) + { + if (rData.Length > 0) + { + aSystemData.CommFail = false; + aSystemData.ShelfCommFail = false; + aSystemData.LastRxTime = rTime; + + switch (PacketHeader.PF) + { + case 11: // Device ManufactureDate + aSystemData.Information.ManufactureDate = (UInt32)((rData[0] << 24) + | (rData[1] << 16) + | (rData[2] << 8) + | (rData[3] << 0)); + break; + case 21: // Device Serial Number MSB + for (int i = 0; i < 8; i++) + { + aSystemData.Information.pcb_sn[i] = rData[i]; + } + break; + case 31: // Device Serial Number LSB + for (int i = 0; i < 8; i++) + { + aSystemData.Information.pcb_sn[i + 8] = rData[i]; + } + break; + } + } + } + } + + public static PACKET_HEADER CovertPtoH(UInt32 id) + { + PACKET_HEADER hdr = new PACKET_HEADER(); + + hdr.Index = (byte)((id >> 26) & 0x07); + hdr.R = (byte)((id >> 25) & 0x01); + hdr.DP = (byte)((id >> 24) & 0x01); + hdr.PF = (byte)((id >> 16) & 0xFF); + hdr.PS = (byte)((id >> 8) & 0xFF); + hdr.SA = (byte)((id >> 0) & 0xFF); + + return hdr; + } + + public static UInt32 CovertHtoP(PACKET_HEADER hdr) + { + UInt32 Packet = 0; + + Packet = (((UInt32)hdr.Index << 26) + | ((UInt32)hdr.R << 25) + | ((UInt32)hdr.DP << 24) + | ((UInt32)hdr.PF << 16) + | ((UInt32)hdr.PS << 8) + | ((UInt32)hdr.SA << 0) + ); + return Packet; + } + + public static byte[] MakeSocRecoveryCanData(byte nSoc) + { + byte[] result = new byte[8]; + + for (int i = 0; i < 8; i++) + result[i] = 0xFF; + + result[0] = 0; + result[1] = nSoc; + + return result; + } + + public static byte[] MakeCanData(int mode, int flag, int dcp, ref DeviceParamData aParam, ref DeviceCalibration aCalib) + { + byte[] result = new byte[8]; + short temp = 0; + + for (int i = 0; i < 8; i++) + { result[i] = 0xFF; } + + switch (mode) + { + case 1: // Status Req + result[6] = (byte)dcp; + break; + //case 10: // Cell Balancing set + // aCalib.CellBalancingVoltage = 3600; + // aCalib.CellBalancingVoltageEndGap = 100; + // aCalib.CellBalancingVoltageInterval = 5; + // result[0] = (byte)(aCalib.CellBalancingVoltage >> 8); + // result[1] = (byte)(aCalib.CellBalancingVoltage >> 0); + // result[2] = (byte)(aCalib.CellBalancingVoltageEndGap / 10); + // result[3] = (byte)(aCalib.CellBalancingVoltageInterval << 1); + + // int ss = Convert.ToInt32(String.Format("{0:ss}", DateTime.Now)); + // if (ss == 0) + // { + // result[3] |= 1; + // UInt32 nTime = (UInt32)csUtils.UnixTimeNow(); + // result[4] = (byte)(nTime >> 24); + // result[5] = (byte)(nTime >> 16); + // result[6] = (byte)(nTime >> 8); + // result[7] = (byte)(nTime >> 0); + // } + // break; + //case 17: + // if (aCalib.Current.SelectSubItem != 2) + // result[7] = (byte)aCalib.Current.ChaAndDchSelect; + // break; + } + + // Parameter Set + if (flag == 1) + { + switch (mode) + { + case 25: + result[0] = (byte)1; + break; + case 10: // Cell Balancing set + result[0] = (byte)(aCalib.CellBalancingVoltage >> 8); + result[1] = (byte)(aCalib.CellBalancingVoltage >> 0); + result[2] = (byte)(aCalib.CellBalancingVoltageEndGap / 10); + result[3] = (byte)(aCalib.CellBalancingVoltageInterval << 1); + + int ss = Convert.ToInt32(String.Format("{0:ss}", DateTime.Now)); + if (ss == 0) + { + result[3] = 1; + UInt32 nTime = (UInt32)csUtils.UnixTimeNow(); + result[4] = (byte)(nTime >> 24); + result[5] = (byte)(nTime >> 16); + result[6] = (byte)(nTime >> 8); + result[7] = (byte)(nTime >> 0); + } + break; + case 5: // Cell Voltage Warning and Fault Parameter + result[0] = (byte)(aParam.CellUnderVoltageWarning >> 8); + result[1] = (byte)(aParam.CellUnderVoltageWarning >> 0); + + result[2] = (byte)(aParam.CellUnderVoltageTrip >> 8); + result[3] = (byte)(aParam.CellUnderVoltageTrip >> 0); + + result[4] = (byte)(aParam.CellOverVoltageWarning >> 8); + result[5] = (byte)(aParam.CellOverVoltageWarning >> 0); + + result[6] = (byte)(aParam.CellOverVoltageTrip >> 8); + result[7] = (byte)(aParam.CellOverVoltageTrip >> 0); + break; + case 6: // Temperature Warning and Fault Parameter + result[0] = (byte)(aParam.ChaLowTempWarning + 80); + result[1] = (byte)(aParam.ChaLowTempTrip + 80); + + result[2] = (byte)(aParam.ChaHighTempWarning + 80); + result[3] = (byte)(aParam.ChaHighTempTrip + 80); + + result[4] = (byte)(aParam.DchLowTempWarning + 80); + result[5] = (byte)(aParam.DchLowTempTrip + 80); + + result[6] = (byte)(aParam.DchHighTempWarning + 80); + result[7] = (byte)(aParam.DchHighTempTrip + 80); + break; + case 7: // System Voltage Warning and Fault Parameter + result[0] = (byte)(aParam.SysUnderVoltageWarning >> 8); + result[1] = (byte)(aParam.SysUnderVoltageWarning >> 0); + + result[2] = (byte)(aParam.SysUnderVoltageTrip >> 8); + result[3] = (byte)(aParam.SysUnderVoltageTrip >> 0); + + result[4] = (byte)(aParam.SysOverVoltageWarning >> 8); + result[5] = (byte)(aParam.SysOverVoltageWarning >> 0); + + result[6] = (byte)(aParam.SysOverVoltageTrip >> 8); + result[7] = (byte)(aParam.SysOverVoltageTrip >> 0); + break; + case 14: // SOC Warning and System Voltage Calibration K, B Parameter + result[0] = (byte)(aParam.LowSocWarning); + result[1] = (byte)(aParam.LowSocRelease); + result[2] = 0; + result[3] = 0; + result[4] = (byte)(aCalib.SystemVoltage.Calibration_K >> 8); + result[5] = (byte)(aCalib.SystemVoltage.Calibration_K >> 0); + result[6] = (byte)(aCalib.SystemVoltage.Calibration_B >> 8); + result[7] = (byte)(aCalib.SystemVoltage.Calibration_K >> 0); + break; + case 22: // Current Warning and Fault Parameter + temp = (short)(aParam.ChaOverCurrentWarning + 30000); + result[0] = (byte)(temp >> 8); + result[1] = (byte)(temp >> 0); + + temp = (short)(aParam.ChaOverCurrentTrip + 30000); + result[2] = (byte)(temp >> 8); + result[3] = (byte)(temp >> 0); + + temp = (short)(aParam.DchOverCurrentWarning + 30000); + result[4] = (byte)(temp >> 8); + result[5] = (byte)(temp >> 0); + + temp = (short)(aParam.DchOverCurrentTrip + 30000); + result[6] = (byte)(temp >> 8); + result[7] = (byte)(temp >> 0); + break; + case 23: // Cell and System Voltage Release Parameter + result[0] = (byte)(aParam.CellUnderVoltageRelease >> 8); + result[1] = (byte)(aParam.CellUnderVoltageRelease >> 0); + + result[2] = (byte)(aParam.CellOverVoltageRelease >> 8); + result[3] = (byte)(aParam.CellOverVoltageRelease >> 0); + + result[4] = (byte)(aParam.SysUnderVoltageRelease >> 8); + result[5] = (byte)(aParam.SysUnderVoltageRelease >> 0); + + result[6] = (byte)(aParam.SysOverVoltageRelease >> 8); + result[7] = (byte)(aParam.SysOverVoltageRelease >> 0); + break; + case 24: // Cell and System Voltage Release Parameter + result[0] = (byte)(aParam.ChaLowTempRelease + 80); + result[1] = (byte)(aParam.ChaHighTempRelease + 80); + + result[2] = (byte)(aParam.DchLowTempRelease + 80); + result[3] = (byte)(aParam.DchHighTempRelease + 80); + + temp = (short)(aParam.ChaOverCurrentRelease + 30000); + result[4] = (byte)(temp >> 8); + result[5] = (byte)(temp >> 0); + + temp = (short)(aParam.DchOverCurrentRelease + 30000); + result[6] = (byte)(temp >> 8); + result[7] = (byte)(temp >> 0); + break; + case 9: + result[0] = (byte)(aCalib.SystemInfo.devAddr >> 8); + result[1] = (byte)(aCalib.SystemInfo.devAddr >> 0); + break; + case 1: // Auto Cell Balancing Set Data (0: Off. 1: On) + //result[6] = (byte)((aCalib.ForcedBalancing.DCP) ? 0x01 : 0x00); + result[7] = (byte)((aCalib.ForcedBalancing.AutoB) ? 0x01 : 0x00); + break; + case 12: // Forced Cell Balancing + result[0] = (byte)(aCalib.ForcedBalancing2.Control); + result[1] = (byte)(aCalib.ForcedBalancing2.CellNo); + result[2] = (byte)(aCalib.ForcedBalancing2.Mode); + result[3] = (byte)(aCalib.ForcedBalancing2.Enable); + break; + case 8: // Battery Paramter + result[0] = (byte)(aCalib.Battery.CellQty); + result[1] = (byte)(aCalib.Battery.TempQty); + result[2] = (byte)(aCalib.Battery.Capacity >> 8); + result[3] = (byte)(aCalib.Battery.Capacity >> 0); + break; + case 17: // Cell Balancing Parameter + result[0] = (byte)(aCalib.CbParam.Threadhold >> 8); + result[1] = (byte)(aCalib.CbParam.Threadhold >> 0); + result[2] = (byte)(aCalib.CbParam.Window >> 8); + result[3] = (byte)(aCalib.CbParam.Window >> 0); + result[4] = (byte)(aCalib.CbParam.Min >> 0); + result[5] = (byte)(aCalib.CbParam.Interval >> 0); + break; + case 21: // System Information (Device Address) + result[0] = (byte)(aCalib.SystemInfo.devAddr >> 8); + result[1] = (byte)(aCalib.SystemInfo.devAddr >> 0); + break; + case 13: // Soc Calibration + result[0] = (byte)(aCalib.SocCalib.CellNo); + result[1] = (byte)(aCalib.SocCalib.SocValue); + break; + case 15: // Parameter Option + result[0] = (byte)(aCalib.CellVoltge.CvOffsetLow >> 8); + result[1] = (byte)(aCalib.CellVoltge.CvOffsetLow >> 0); + result[2] = (byte)(aCalib.CellVoltge.CvOffsetHigh >> 8); + result[3] = (byte)(aCalib.CellVoltge.CvOffsetHigh >> 0); + + result[7] = (byte)(0x01); + break; + case 16: // Default Parameter + result[0] = (byte)(aParam.DefalutParamOption); + break; + case 2: // Default Parameter + result[0] = (byte)(aParam.CellVoltageDifferenceTrip >> 8); + result[1] = (byte)(aParam.CellVoltageDifferenceTrip >> 0); + result[2] = (byte)(aParam.CellVoltageDifferenceWarning >> 8); + result[3] = (byte)(aParam.CellVoltageDifferenceWarning >> 0); + result[4] = (byte)(aParam.CellVoltageDifferenceRelease >> 8); + result[5] = (byte)(aParam.CellVoltageDifferenceRelease >> 0); + result[6] = (byte)(aParam.CellVoltageDifferenceTime >> 8); + result[7] = (byte)(aParam.CellVoltageDifferenceTime >> 0); + break; + case 900: + result[0] = (byte)(aCalib.InvData.ManufactureDate >> 24); + result[1] = (byte)(aCalib.InvData.ManufactureDate >> 16); + result[2] = (byte)(aCalib.InvData.ManufactureDate >> 8); + result[3] = (byte)(aCalib.InvData.ManufactureDate >> 0); + + result[7] = (byte)(1); + break; + case 901: + for (int i = 0; i < 8; i++) + { + result[i] = (byte)(aCalib.InvData.pcb_sn[i]); + } + break; + case 902: + for (int i = 0; i < 8; i++) + { + result[i] = (byte)(aCalib.InvData.pcb_sn[i + 8]); + } + break; + } + } + return result; + } + + private static DeviceSystemData MakeMaxAvgMinCellVoltage(DeviceSystemData rSystemData) + { + DeviceSystemData result = rSystemData; + int Max, Avg, Min, Sum; + int MaxNo, MinNo; + + Max = Avg = Min = Sum = 0; + MaxNo = MinNo = 0; + for (int i = 0; i < rSystemData.cellQty; i++) + { + if (i == 0) + { + Max = Min = rSystemData.ValueData.CellVoltage[i]; + } + Sum += rSystemData.ValueData.CellVoltage[i]; + + if (Max < rSystemData.ValueData.CellVoltage[i]) + { + Max = rSystemData.ValueData.CellVoltage[i]; + MaxNo = i; + } + if (Min > rSystemData.ValueData.CellVoltage[i]) + { + Min = rSystemData.ValueData.CellVoltage[i]; + MinNo = i; + } + } + if (rSystemData.cellQty > 0) + Avg = Sum / rSystemData.cellQty; + + result.AvgData.avgCellVoltage = (ushort)Avg; + result.AvgData.maxCellVoltage = (ushort)Max; + result.AvgData.maxCellNum = (short)(MaxNo + 1); + result.AvgData.minCellVoltage = (ushort)Min; + result.AvgData.minCellNum = (short)(MinNo + 1); + result.AvgData.diffCellVoltage = (ushort)(Max - Min); + + return result; + } + + private static void MakeMaxAvgMinTemperature(ref DeviceSystemData rSystemData) + { + int Max, Avg, Min, Sum; + int MaxNo, MinNo; + + Max = Avg = Min = Sum = 0; + MaxNo = MinNo = 0; + for (int i = 0; i < rSystemData.tempQty; i++) + { + if (i == 0) + { + Max = Min = rSystemData.ValueData.CellTemperature[i]; + } + Sum += rSystemData.ValueData.CellTemperature[i]; + + if (Max < rSystemData.ValueData.CellTemperature[i]) + { + Max = rSystemData.ValueData.CellTemperature[i]; + MaxNo = i; + } + if (Min > rSystemData.ValueData.CellTemperature[i]) + { + Min = rSystemData.ValueData.CellTemperature[i]; + MinNo = i; + } + } + if (rSystemData.tempQty > 0) + Avg = Sum / rSystemData.tempQty; + + rSystemData.AvgData.avgTemp = (short)Avg; + rSystemData.AvgData.maxTemp = (short)Max; + rSystemData.AvgData.maxTempNum = (short)(MaxNo + 1); + rSystemData.AvgData.minTemp = (short)Min; + rSystemData.AvgData.minTempNum = (short)(MinNo + 1); + rSystemData.AvgData.diffTemp = (short)(Max - Min); + } + + private static DeviceSystemData MakeAlarmTripData(int id, short ndata, DeviceSystemData rSystemData) + { + bool[] aData = csUtils.Int16ToBitArray(ndata); + short bFault = rSystemData.StatusData.protect; + short bWarning = rSystemData.StatusData.warning; + int i = 0; + + switch (id) + { + case 0: // Status Code 1 + if (aData[i++]) bWarning |= (1 << 4); // 00 Cell Over Voltage Warning + else bWarning &= ~(1 << 4); + if (aData[i++]) bWarning |= (1 << 5); // 01 Cell Under Voltage Warning + else bWarning &= ~(1 << 5); + if (aData[i++]) bWarning |= (1 << 0); // 02 High Temperature Warning + else bWarning &= ~(1 << 0); + if (aData[i++]) bWarning |= (1 << 1); // 03 Low Temperature Warning + else bWarning &= ~(1 << 1); + if (aData[i++]) bWarning |= (1 << 2); // 04 Module Over Voltage Warning + else bWarning &= ~(1 << 2); + if (aData[i++]) bWarning |= (1 << 3); // 05 Module Under Voltage Warning + else bWarning &= ~(1 << 3); + if (aData[i++]) bWarning |= (1 << 9); // 06 Cell Voltage Difference Warning + else bWarning &= ~(1 << 9); + i++; // 07 Reserved + + if (aData[i++]) bFault |= (1 << 4); // 08 Cell Over Voltage Fault + else bFault &= ~(1 << 4); + if (aData[i++]) bFault |= (1 << 5); // 09 Cell Under Voltage Fault + else bFault &= ~(1 << 5); + if (aData[i++]) bFault |= (1 << 0); // 10 High Temperature Warning + else bFault &= ~(1 << 0); + if (aData[i++]) bFault |= (1 << 1); // 11 Low Temperature Warning + else bFault &= ~(1 << 1); + if (aData[i++]) bFault |= (1 << 2); // 12 Module Over Voltage Warning + else bFault &= ~(1 << 2); + if (aData[i++]) bFault |= (1 << 3); // 13 Module Under Voltage Warning + else bFault &= ~(1 << 3); + if (aData[i++]) bFault |= (1 << 9); // 14 Cell Voltage Difference Fault + else bFault &= ~(1 << 9); + + break; + case 1: // Status Code 2 + i++; // 00 High SOC Warning + i++; // 01 High SOC Fault + if (aData[i++]) bWarning |= (1 << 11); // 02 Low SOC Warning + else bWarning &= ~(1 << 11); + i++; // 03 Low SOC Fault + i++; // 04 Reserved + i++; // 05 Reserved + i++; // 06 Reserved + i++; // 07 Reserved + if (aData[i++]) bWarning |= (1 << 6); // 08 Charge Over Current Warning + else bWarning &= ~(1 << 6); + if (aData[i++]) bFault |= (1 << 6); // 09 Charge Over Current Fault + else bFault &= ~(1 << 6); + if (aData[i++]) bWarning |= (1 << 7); // 10 Discharge Over Current Warning + else bWarning &= ~(1 << 7); + if (aData[i++]) bFault |= (1 << 7); // 11 Discharge Over Current Fault + else bFault &= ~(1 << 7); + break; + } + + rSystemData.StatusData.protect = bFault; + rSystemData.StatusData.warning = bWarning; + + return rSystemData; + } + + private static DeviceSystemData MakeWarningAlarmData(int id, short ndata, DeviceSystemData rSystemData) + { + bool[] aData = csUtils.Int16ToBitArray(ndata); + short bFault = rSystemData.StatusData.protect; + short bWarning = rSystemData.StatusData.warning; + int i = 0; + + switch (id) + { + case 0: // Status Code 1 + if (aData[i++]) bWarning |= (1 << 4); // 00 Cell Over Voltage Warning + else bWarning &= ~(1 << 4); + if (aData[i++]) bWarning |= (1 << 5); // 01 Cell Under Voltage Warning + else bWarning &= ~(1 << 5); + if (aData[i++]) bWarning |= (1 << 0); // 02 High Temperature Warning + else bWarning &= ~(1 << 0); + if (aData[i++]) bWarning |= (1 << 1); // 03 Low Temperature Warning + else bWarning &= ~(1 << 1); + if (aData[i++]) bWarning |= (1 << 2); // 04 Module Over Voltage Warning + else bWarning &= ~(1 << 2); + if (aData[i++]) bWarning |= (1 << 3); // 05 Module Under Voltage Warning + else bWarning &= ~(1 << 3); + if (aData[i++]) bWarning |= (1 << 9); // 06 Cell Voltage Difference Warning + else bWarning &= ~(1 << 9); + i++; // 07 Reserved + + if (aData[i++]) bFault |= (1 << 4); // 08 Cell Over Voltage Fault + else bFault &= ~(1 << 4); + if (aData[i++]) bFault |= (1 << 5); // 09 Cell Under Voltage Fault + else bFault &= ~(1 << 5); + if (aData[i++]) bFault |= (1 << 0); // 10 High Temperature Warning + else bFault &= ~(1 << 0); + if (aData[i++]) bFault |= (1 << 1); // 11 Low Temperature Warning + else bFault &= ~(1 << 1); + if (aData[i++]) bFault |= (1 << 2); // 12 Module Over Voltage Warning + else bFault &= ~(1 << 2); + if (aData[i++]) bFault |= (1 << 3); // 13 Module Under Voltage Warning + else bFault &= ~(1 << 3); + if (aData[i++]) bFault |= (1 << 9); // 14 Cell Voltage Difference Fault + else bFault &= ~(1 << 9); + + break; + case 1: // Status Code 2 + i++; // 00 High SOC Warning + i++; // 01 High SOC Fault + if (aData[i++]) bWarning |= (1 << 11); // 02 Low SOC Warning + else bWarning &= ~(1 << 11); + i++; // 03 Low SOC Fault + i++; // 04 Reserved + i++; // 05 Reserved + i++; // 06 Reserved + i++; // 07 Reserved + if (aData[i++]) bWarning |= (1 << 6); // 08 Charge Over Current Warning + else bWarning &= ~(1 << 6); + if (aData[i++]) bFault |= (1 << 6); // 09 Charge Over Current Fault + else bFault &= ~(1 << 6); + if (aData[i++]) bWarning |= (1 << 7); // 10 Discharge Over Current Warning + else bWarning &= ~(1 << 7); + if (aData[i++]) bFault |= (1 << 7); // 11 Discharge Over Current Fault + else bFault &= ~(1 << 7); + break; + } + + rSystemData.StatusData.protect = bFault; + rSystemData.StatusData.warning = bWarning; + + return rSystemData; + } + + public static string PacketToMsg(UInt32 exID, byte[] rData, int flag) + { + string result = ""; + PACKET_HEADER PacketHeader = CovertPtoH(exID); + + if (flag == 0) result = "RD: "; + else result = "TD: "; + result += String.Format(" ID:0x{0:X4}", exID); + result += String.Format("[PF({3:000}) PS({4:000}) SA({5:000})]" + , PacketHeader.Index + , PacketHeader.R + , PacketHeader.DP + , PacketHeader.PF + , PacketHeader.PS + , PacketHeader.SA + ); + + result += String.Format("Data({0}): ", rData.Length); + + for (int i = 0; i < rData.Length; i++) + { + result += String.Format("{0:X2} ", rData[i]); + } + + return result; + } + + unsafe public static string PacketToMsg(VCI_CAN_OBJ obj, int flag) + { + PACKET_HEADER PacketHeader = CovertPtoH(obj.ID); + string str; + + if (flag == 0) str = "RD: "; + else str = "TD: "; + str += String.Format(" ID:0x{0}", obj.ID.ToString("X4")); + //str += String.Format("[I({0}) R({1}) DP({2}) PF({3}) PS({4}) SA({5})]" + // , PacketHeader.Index + // , PacketHeader.R + // , PacketHeader.DP + // , PacketHeader.PF + // , PacketHeader.PS + // , PacketHeader.SA + // ); + str += String.Format("[PF({3:000}) PS({4:000}) SA({5:000})]" + , PacketHeader.Index + , PacketHeader.R + , PacketHeader.DP + , PacketHeader.PF + , PacketHeader.PS + , PacketHeader.SA + ); + + str += " Frame:"; + if (obj.RemoteFlag == 0) + str += "D-Frame "; + else + str += "R-Frame "; + //if (obj.ExternFlag == 0) + // str += "Std-Frame "; + //else + // str += "Ext-Frame "; + + ////////////////////////////////////////// + if (obj.RemoteFlag == 0) + { + byte len = (byte)(obj.DataLen % 9); + + str += String.Format("Data({0}): ", len); + + for (int i = 0; i < len; i++) + { + str += String.Format("{0} ", obj.Data[i].ToString("X2")); + } + } + + return str; + } + + unsafe public static string PacketToMsg1(VCI_CAN_OBJ obj) + { + string str; + + str = "Received data: "; + str += " Frame ID:0x" + System.Convert.ToString((Int32)obj.ID, 16); + str += " Frame format:"; + if (obj.RemoteFlag == 0) + str += "Data Frame "; + else + str += "Remote frame "; + if (obj.ExternFlag == 0) + str += "Standard frame "; + else + str += "Extended frame "; + + ////////////////////////////////////////// + if (obj.RemoteFlag == 0) + { + str += "Data: "; + byte len = (byte)(obj.DataLen % 9); + byte j = 0; + if (j++ < len) + str += " " + System.Convert.ToString(obj.Data[0], 16); + if (j++ < len) + str += " " + System.Convert.ToString(obj.Data[1], 16); + if (j++ < len) + str += " " + System.Convert.ToString(obj.Data[2], 16); + if (j++ < len) + str += " " + System.Convert.ToString(obj.Data[3], 16); + if (j++ < len) + str += " " + System.Convert.ToString(obj.Data[4], 16); + if (j++ < len) + str += " " + System.Convert.ToString(obj.Data[5], 16); + if (j++ < len) + str += " " + System.Convert.ToString(obj.Data[6], 16); + if (j++ < len) + str += " " + System.Convert.ToString(obj.Data[7], 16); + + } + + return str; + } + } +} diff --git a/LFP_Manager_PRM/Function/csCanFwUpdateFunction.cs b/LFP_Manager_PRM/Function/csCanFwUpdateFunction.cs new file mode 100644 index 0000000..93a1ffd --- /dev/null +++ b/LFP_Manager_PRM/Function/csCanFwUpdateFunction.cs @@ -0,0 +1,275 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; + +namespace LFP_Manager.Function +{ + // 1. Define the data type + public struct PACKET_HEADER_DN + { + public byte Rsvd; // 3 + public byte PR; // 3 Priority + public byte FC; // 4 Function Code + public byte NO; // 8 Number + public byte SID; // 7 Source ID + public byte DID; // 7 Destination ID + } + + public struct PACKET_DN + { + public UInt32 hdr; // Header + public byte[] data; // Data + } + + class csCanFwUpdateFunction + { + // Function Code Define + public const int DL_START_CODE = 0; // Start Fw Update + public const int DL_SECTOR_ERASE_CODE = 1; // Sector Erase Code + public const int DL_SET_ADDRESS_CODE = 2; // Flash Address Set Code + public const int DL_READ_DATA_CODE = 3; // Flash Data Read Code + public const int DL_WRITE_DATA_CODE = 4; // Flash Data Write Code + public const int DL_WRITE_DATA_CSUM_CODE = 5; // Flash Data Write Checksum Code + public const int DL_IMAGE_CSUM_CODE = 6; // Fw Image Checksum Code + public const int DL_RESTART_CODE = 7; // Restart + + public static PACKET_HEADER_DN CovertPtoH(UInt32 id) + { + PACKET_HEADER_DN hdr = new PACKET_HEADER_DN(); + + hdr.PR = (byte)((id >> 26) & 0x07); + hdr.FC = (byte)((id >> 22) & 0x07); + hdr.NO = (byte)((id >> 14) & 0xFF); + hdr.SID = (byte)((id >> 7) & 0x7F); + hdr.DID = (byte)((id >> 0) & 0x7F); + + return hdr; + } + + public static UInt32 CovertHtoP(PACKET_HEADER_DN hdr) + { + UInt32 Packet = 0; + + Packet = (((UInt32)hdr.PR << 26) + | ((UInt32)hdr.FC << 22) + | ((UInt32)hdr.NO << 14) + | ((UInt32)hdr.SID << 7) + | ((UInt32)hdr.DID << 0) + ); + return Packet; + } + + unsafe public static PACKET_DN FwUpdateStartPacket(UInt32 dev_id, byte[] fwver, UInt32 fwlen) + { + PACKET_DN result; + PACKET_HEADER_DN hdr; + + result = new PACKET_DN(); + result.data = new byte[8]; + + hdr = new PACKET_HEADER_DN(); + + hdr.PR = 4; + hdr.FC = DL_START_CODE; + hdr.NO = 0; + hdr.SID = 0; + hdr.DID = (byte)dev_id; + + result.hdr = CovertHtoP(hdr); + + result.data[0] = fwver[0]; + result.data[1] = fwver[1]; + result.data[2] = fwver[2]; + result.data[3] = fwver[3]; + + result.data[4] = (byte)(fwlen >> 24); + result.data[5] = (byte)(fwlen >> 16); + result.data[6] = (byte)(fwlen >> 8); + result.data[7] = (byte)(fwlen >> 0); + + return result; + } + + unsafe public static PACKET_DN SectorErasePacket(UInt32 dev_id, UInt32 fAddr) + { + PACKET_DN result; + PACKET_HEADER_DN hdr; + + result = new PACKET_DN(); + result.data = new byte[8]; + + hdr = new PACKET_HEADER_DN(); + + hdr.PR = 4; + hdr.FC = DL_SECTOR_ERASE_CODE; + hdr.NO = 0; + hdr.SID = 0; + hdr.DID = (byte)dev_id; + + result.hdr = CovertHtoP(hdr); + + result.data[0] = (byte)(fAddr >> 24); + result.data[1] = (byte)(fAddr >> 16); + result.data[2] = (byte)(fAddr >> 8); + result.data[3] = (byte)(fAddr >> 0); + + result.data[4] = 0; + result.data[5] = 0; + result.data[6] = 0; + result.data[7] = 0; + + return result; + } + + unsafe public static PACKET_DN SetAddrPacket(UInt32 dev_id, UInt32 sAddr, UInt32 sLen) + { + PACKET_DN result; + PACKET_HEADER_DN hdr; + + result = new PACKET_DN(); + result.data = new byte[8]; + + hdr = new PACKET_HEADER_DN(); + + hdr.PR = 4; + hdr.FC = DL_SET_ADDRESS_CODE; + hdr.NO = 0; + hdr.SID = 0; + hdr.DID = (byte)dev_id; + + result.hdr = CovertHtoP(hdr); + + result.data[0] = (byte)(sAddr >> 24); + result.data[1] = (byte)(sAddr >> 16); + result.data[2] = (byte)(sAddr >> 8); + result.data[3] = (byte)(sAddr >> 0); + + result.data[4] = (byte)(sLen >> 24); + result.data[5] = (byte)(sLen >> 16); + result.data[6] = (byte)(sLen >> 8); + result.data[7] = (byte)(sLen >> 0); + + return result; + } + + unsafe public static PACKET_DN WritePacket(UInt32 dev_id, byte dno, byte[] data) + { + PACKET_DN result; + PACKET_HEADER_DN hdr; + + result = new PACKET_DN(); + result.data = new byte[8]; + + hdr = new PACKET_HEADER_DN(); + + hdr.PR = 4; + hdr.FC = DL_WRITE_DATA_CODE; + hdr.NO = dno; + hdr.SID = 0; + hdr.DID = (byte)dev_id; + + result.hdr = CovertHtoP(hdr); + + for (int i = 0; i < 8; i++) + { + result.data[i] = data[i]; + } + + return result; + } + + unsafe public static PACKET_DN WriteChkSumPacket(UInt32 dev_id, UInt32 waddr, UInt32 csum) + { + PACKET_DN result; + PACKET_HEADER_DN hdr; + + result = new PACKET_DN(); + result.data = new byte[8]; + + hdr = new PACKET_HEADER_DN(); + + hdr.PR = 4; + hdr.FC = DL_WRITE_DATA_CSUM_CODE; + hdr.NO = 0; + hdr.SID = 0; + hdr.DID = (byte)dev_id; + + result.hdr = CovertHtoP(hdr); + + result.data[0] = (byte)(waddr >> 24); + result.data[1] = (byte)(waddr >> 16); + result.data[2] = (byte)(waddr >> 8); + result.data[3] = (byte)(waddr >> 0); + + result.data[4] = (byte)(csum >> 24); + result.data[5] = (byte)(csum >> 16); + result.data[6] = (byte)(csum >> 8); + result.data[7] = (byte)(csum >> 0); + + return result; + } + + unsafe public static PACKET_DN FwImageChkSumPacket(UInt32 dev_id, UInt32 fwlen, UInt32 csum) + { + PACKET_DN result; + PACKET_HEADER_DN hdr; + + result = new PACKET_DN(); + result.data = new byte[8]; + + hdr = new PACKET_HEADER_DN(); + + hdr.PR = 4; + hdr.FC = DL_IMAGE_CSUM_CODE; + hdr.NO = 0; + hdr.SID = 0; + hdr.DID = (byte)dev_id; + + result.hdr = CovertHtoP(hdr); + + result.data[0] = (byte)(fwlen >> 24); + result.data[1] = (byte)(fwlen >> 16); + result.data[2] = (byte)(fwlen >> 8); + result.data[3] = (byte)(fwlen >> 0); + + result.data[4] = (byte)(csum >> 24); + result.data[5] = (byte)(csum >> 16); + result.data[6] = (byte)(csum >> 8); + result.data[7] = (byte)(csum >> 0); + + return result; + } + + unsafe public static PACKET_DN UpdateRestartPacket(UInt32 dev_id, byte option) + { + PACKET_DN result; + PACKET_HEADER_DN hdr; + + result = new PACKET_DN(); + result.data = new byte[8]; + + hdr = new PACKET_HEADER_DN(); + + hdr.PR = 4; + hdr.FC = DL_RESTART_CODE; + hdr.NO = 0; + hdr.SID = 0; + hdr.DID = (byte)dev_id; + + result.hdr = CovertHtoP(hdr); + + result.data[0] = option; + result.data[1] = 0x00; + result.data[2] = 0x00; + result.data[3] = 0x00; + + result.data[4] = 0x00; + result.data[5] = 0x00; + result.data[6] = 0x00; + result.data[7] = 0x00; + + return result; + } + } +} diff --git a/LFP_Manager_PRM/Function/csExcelExport.cs b/LFP_Manager_PRM/Function/csExcelExport.cs new file mode 100644 index 0000000..a30c867 --- /dev/null +++ b/LFP_Manager_PRM/Function/csExcelExport.cs @@ -0,0 +1,84 @@ +using System; +using System.Collections.Generic; +using System.Data; +using System.Linq; +using System.IO; +using System.Data.OleDb; + +namespace LFP_Manager.Function +{ + public static class csExcelExport + { + public static void ExportToExcel(this DataTable dataTable, String filePath, bool overwiteFile = true) + { + if (Directory.Exists(Path.GetDirectoryName(filePath)) == false) + Directory.CreateDirectory(Path.GetDirectoryName(filePath)); + if (File.Exists(filePath) && overwiteFile) + File.Delete(filePath); + + //var conn = String.Format("Provider=Microsoft.Jet.OLEDB.4.0;Data Source={0};Extended Properties='Excel 8.0;HDR=Yes;IMEX=0';", filePath); + var conn = ""; + + if (filePath.IndexOf(".xlsx") > -1) // 확장자에 따라서 provider 주의 + conn = String.Format("Provider=Microsoft.ACE.OLEDB.12.0;Data Source={0};Extended Properties='Excel 12.0;HDR=Yes;IMEX=3';", filePath); + else + conn = String.Format("Provider=Microsoft.Jet.OLEDB.4.0;Data Source={0};Extended Properties='Excel 8.0;HDR=Yes;IMEX=3';", filePath); + + using (OleDbConnection connection = new OleDbConnection(conn)) + { + connection.Open(); + using (OleDbCommand command = new OleDbCommand()) + { + command.Connection = connection; + List columnNames = new List(); + List columnTypes = new List(); + foreach (DataColumn dataColumn in dataTable.Columns) + { + columnNames.Add(dataColumn.ColumnName); + string tName = "VARCHAR"; + switch (dataColumn.DataType.Name) + { + case "Int16": tName = "INTEGER"; break; + case "Int32": tName = "INTEGER"; break; + case "Int64": tName = "INTEGER"; break; + case "Double": tName = "DOUBLE"; break; + case "String": tName = "VARCHAR"; break; + default: tName = dataColumn.DataType.Name; break; + } + columnTypes.Add(tName); + } + String tableName = !String.IsNullOrWhiteSpace(dataTable.TableName) ? dataTable.TableName : Guid.NewGuid().ToString(); + //command.CommandText = @"CREATE TABLE [{tableName}] ({String.Join(",", columnNames.Select(c => $"[{c}] VARCHAR").ToArray())});"; + //string join = String.Join(",", columnNames.Select(c => String.Format("[{0}] VARCHAR", c)).ToArray()); + string join = ""; + for (int i = 0; i < columnNames.Count; i++) + { + join += String.Format("[{0}] {1}", columnNames[i], columnTypes[i]); + if (i < (columnNames.Count - 1)) join += ","; + } + command.CommandText = String.Format("CREATE TABLE [{0}] ({1});", + tableName, + join + ); + command.ExecuteNonQuery(); + + foreach (DataRow row in dataTable.Rows) + { + List rowValues = new List(); + foreach (DataColumn column in dataTable.Columns) + { + rowValues.Add((row[column] != null && row[column] != DBNull.Value) ? row[column].ToString() : String.Empty); + } + //command.CommandText = $"INSERT INTO [{tableName}]({String.Join(",", columnNames.Select(c => $"[{c}]"))}) VALUES ({String.Join(",", rowValues.Select(r => $"'{r}'").ToArray())});"; + string a = String.Join(",", columnNames.Select(c => String.Format("[{0}]", c))); + string b = String.Join(",", rowValues.Select(r => String.Format("'{0}'", (r == "") ? "0": r)).ToArray()); + command.CommandText = String.Format("INSERT INTO [{0}]({1}) VALUES ({2});", tableName, a, b); + command.ExecuteNonQuery(); + } + } + + connection.Close(); + } + } + } +} diff --git a/LFP_Manager_PRM/Function/csExcelFunction.cs b/LFP_Manager_PRM/Function/csExcelFunction.cs new file mode 100644 index 0000000..3f10aa2 --- /dev/null +++ b/LFP_Manager_PRM/Function/csExcelFunction.cs @@ -0,0 +1,145 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Data; +using System.Windows.Forms; + +using System.Data.OleDb; + +namespace LFP_Manager.Function +{ + public class csExcelFunction + { + public static DataTable[] ExcelImport(string Ps_FileName, string[] sheetName) + { + DataTable[] result = null; + + try + { + string ExcelConn = string.Empty; + + if (Ps_FileName.IndexOf(".xlsx") > -1) // 확장자에 따라서 provider 주의 + { + ExcelConn = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + Ps_FileName + + ";Extended Properties='Excel 12.0;HDR=YES'"; + } + else + { + ExcelConn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + Ps_FileName + + ";Extended Properties='Excel 8.0;HDR=YES'"; + } + + // 첫 번째 시트의 이름을 가져옮 + using (OleDbConnection con = new OleDbConnection(ExcelConn)) + { + using (OleDbCommand cmd = new OleDbCommand()) + { + cmd.Connection = con; + con.Open(); + + DataTable dtExcelSchema = con.GetOleDbSchemaTable(OleDbSchemaGuid.Tables, null); + + if (dtExcelSchema.Rows.Count > 0) + { + sheetName = new string[dtExcelSchema.Rows.Count]; + + for (int i = 0; i < dtExcelSchema.Rows.Count; i++) + sheetName[i] = dtExcelSchema.Rows[i]["TABLE_NAME"].ToString(); + } + con.Close(); + } + } + string msg = string.Empty; + for (int i = 0; i < sheetName.Length; i++) + msg += sheetName[i] + "\r\n"; + //MessageBox.Show("sheetName = " + msg); + + // 첫 번째 쉬트의 데이타를 읽어서 datagridview 에 보이게 함. + using (OleDbConnection con = new OleDbConnection(ExcelConn)) + { + using (OleDbCommand cmd = new OleDbCommand()) + { + using (OleDbDataAdapter oda = new OleDbDataAdapter()) + { + result = new DataTable[sheetName.Length]; + + for (int i = 0; i < sheetName.Length; i++) + { + result[i] = new DataTable(); + result[i].TableName = sheetName[i]; + cmd.CommandText = "SELECT * From [" + sheetName[i] + "]"; + cmd.Connection = con; + con.Open(); + oda.SelectCommand = cmd; + try + { + oda.Fill(result[i]); + } + catch (Exception) + { + //MessageBox.Show(e1.Message); + } + con.Close(); + } + } + } + } + } + catch (Exception e) + { + MessageBox.Show(e.Message, "Exception", MessageBoxButtons.OK, MessageBoxIcon.Error); + } + return result; + } + + public static void ExcelExport(string Ps_FileName, string[] sheetName) + { + string ExcelConn = string.Empty; + + if (Ps_FileName.IndexOf(".xlsx") > -1) // 확장자에 따라서 provider 주의 + { + ExcelConn = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + Ps_FileName + + ";Extended Properties='Excel 12.0;HDR=YES;IMEX=3;READONLY=FALSE'"; + } + else + { + ExcelConn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + Ps_FileName + + ";Extended Properties='Excel 8.0;HDR=YES;IMEX=3;READONLY=FALSE'"; + } + + // 첫 번째 시트의 이름을 가져옮 + using (OleDbConnection con = new OleDbConnection(ExcelConn)) + { + using (OleDbCommand cmd = new OleDbCommand()) + { + cmd.Connection = con; + con.Open(); + + DataTable dtExcelSchema = con.GetOleDbSchemaTable(OleDbSchemaGuid.Tables, null); + + if (dtExcelSchema.Rows.Count > 0) + { + sheetName = new string[dtExcelSchema.Rows.Count]; + + for (int i = 0; i < dtExcelSchema.Rows.Count; i++) + sheetName[i] = dtExcelSchema.Rows[i]["TABLE_NAME"].ToString(); + } + con.Close(); + } + } + using (OleDbConnection connection = + new OleDbConnection(@"Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + @"C:\Users\[...]\Classeur.xls" + + ";Extended Properties=\"Excel 8.0;HDR=NO;IMEX=1;READONLY=FALSE\"")) + { + connection.Open(); + OleDbCommand commande = new OleDbCommand( + "INSERT INTO [Feuil1$](F1,F2,F3) VALUES ('A3','B3','C3');", connection); + commande.ExecuteNonQuery(); + + connection.Close(); + connection.Dispose(); + } + } + } +} diff --git a/LFP_Manager_PRM/Function/csExtCANControlFunction.cs b/LFP_Manager_PRM/Function/csExtCANControlFunction.cs new file mode 100644 index 0000000..79fdcd5 --- /dev/null +++ b/LFP_Manager_PRM/Function/csExtCANControlFunction.cs @@ -0,0 +1,167 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Runtime.InteropServices; + +namespace LFP_Manager.Function +{ + // 1. The type of the ZLGCAN series interface card information. + public struct VCI_BOARD_INFO + { + public UInt16 hw_Version; + public UInt16 fw_Version; + public UInt16 dr_Version; + public UInt16 in_Version; + public UInt16 irq_Num; + public byte can_Num; + [MarshalAs(UnmanagedType.ByValArray, SizeConst = 20)] + public byte[] str_Serial_Num; + [MarshalAs(UnmanagedType.ByValArray, SizeConst = 40)] + public byte[] str_hw_Type; + [MarshalAs(UnmanagedType.ByValArray, SizeConst = 8)] + public byte[] Reserved; + } + + // 2. Define the data type of the CAN message frame. + unsafe public struct VCI_CAN_OBJ //Use unsafe code + { + public uint ID; + public uint TimeStamp; + public byte TimeFlag; + public byte SendType; + public byte RemoteFlag; //Whether it is a remore frame + public byte ExternFlag; //Whether it is a extended frame + public byte DataLen; + + public fixed byte Data[8]; + + public fixed byte Reserved[3]; + } + //2. Define the data type of the CAN message frame. + //public struct VCI_CAN_OBJ + //{ + // public UInt32 ID; + // public UInt32 TimeStamp; + // public byte TimeFlag; + // public byte SendType; + // public byte RemoteFlag;//Whether it is a remore frame + // public byte ExternFlag;//Whether it is a extended frame + // public byte DataLen; + // [MarshalAs(UnmanagedType.ByValArray, SizeConst = 8)] + // public byte[] Data; + // [MarshalAs(UnmanagedType.ByValArray, SizeConst = 3)] + // public byte[] Reserved; + + // public void Init() + // { + // Data = new byte[8]; + // Reserved = new byte[3]; + // } + //} + + // 3. Define the data type of the CAN controller status. + public struct VCI_CAN_STATUS + { + public byte ErrInterrupt; + public byte regMode; + public byte regStatus; + public byte regALCapture; + public byte regECCapture; + public byte regEWLimit; + public byte regRECounter; + public byte regTECounter; + [MarshalAs(UnmanagedType.ByValArray, SizeConst = 4)] + public byte[] Reserved; + } + + // 4. Define the data type of the error message. + public struct VCI_ERR_INFO + { + public UInt32 ErrCode; + public byte Passive_ErrData1; + public byte Passive_ErrData2; + public byte Passive_ErrData3; + public byte ArLost_ErrData; + } + + // 5. Define the data type for initializing CAN + public struct VCI_INIT_CONFIG + { + public UInt32 AccCode; + public UInt32 AccMask; + public UInt32 Reserved; + public byte Filter; + public byte Timing0; + public byte Timing1; + public byte Mode; + } + + public struct CHGDESIPANDPORT + { + [MarshalAs(UnmanagedType.ByValArray, SizeConst = 10)] + public byte[] szpwd; + [MarshalAs(UnmanagedType.ByValArray, SizeConst = 20)] + public byte[] szdesip; + public Int32 desport; + + public void Init() + { + szpwd = new byte[10]; + szdesip = new byte[20]; + } + } + + ///////// new add struct for filter ///////// + //typedef struct _VCI_FILTER_RECORD{ + // DWORD ExtFrame; //Whether it is an extended frame + // DWORD Start; + // DWORD End; + //}VCI_FILTER_RECORD,*PVCI_FILTER_RECORD; + public struct VCI_FILTER_RECORD + { + public UInt32 ExtFrame; + public UInt32 Start; + public UInt32 End; + } + + class csExtCANControlFunction + { + [DllImport("controlcan.dll")] + static extern UInt32 VCI_OpenDevice(UInt32 DeviceType, UInt32 DeviceInd, UInt32 Reserved); + [DllImport("controlcan.dll")] + static extern UInt32 VCI_CloseDevice(UInt32 DeviceType, UInt32 DeviceInd); + [DllImport("controlcan.dll")] + static extern UInt32 VCI_InitCAN(UInt32 DeviceType, UInt32 DeviceInd, UInt32 CANInd, ref VCI_INIT_CONFIG pInitConfig); + [DllImport("controlcan.dll")] + static extern UInt32 VCI_ReadBoardInfo(UInt32 DeviceType, UInt32 DeviceInd, ref VCI_BOARD_INFO pInfo); + [DllImport("controlcan.dll")] + static extern UInt32 VCI_ReadErrInfo(UInt32 DeviceType, UInt32 DeviceInd, UInt32 CANInd, ref VCI_ERR_INFO pErrInfo); + [DllImport("controlcan.dll")] + static extern UInt32 VCI_ReadCANStatus(UInt32 DeviceType, UInt32 DeviceInd, UInt32 CANInd, ref VCI_CAN_STATUS pCANStatus); + + [DllImport("controlcan.dll")] + static extern UInt32 VCI_GetReference(UInt32 DeviceType, UInt32 DeviceInd, UInt32 CANInd, UInt32 RefType, ref byte pData); + [DllImport("controlcan.dll")] + static extern UInt32 VCI_SetReference(UInt32 DeviceType, UInt32 DeviceInd, UInt32 CANInd, UInt32 RefType, ref byte pData); + //unsafe static extern UInt32 VCI_SetReference(UInt32 DeviceType, UInt32 DeviceInd, UInt32 CANInd, UInt32 RefType, byte* pData); + + [DllImport("controlcan.dll")] + static extern UInt32 VCI_GetReceiveNum(UInt32 DeviceType, UInt32 DeviceInd, UInt32 CANInd); + [DllImport("controlcan.dll")] + static extern UInt32 VCI_ClearBuffer(UInt32 DeviceType, UInt32 DeviceInd, UInt32 CANInd); + + [DllImport("controlcan.dll")] + static extern UInt32 VCI_StartCAN(UInt32 DeviceType, UInt32 DeviceInd, UInt32 CANInd); + [DllImport("controlcan.dll")] + static extern UInt32 VCI_ResetCAN(UInt32 DeviceType, UInt32 DeviceInd, UInt32 CANInd); + + [DllImport("controlcan.dll")] + static extern UInt32 VCI_Transmit(UInt32 DeviceType, UInt32 DeviceInd, UInt32 CANInd, ref VCI_CAN_OBJ pSend, UInt32 Len); + + //[DllImport("controlcan.dll")] + //static extern UInt32 VCI_Receive(UInt32 DeviceType, UInt32 DeviceInd, UInt32 CANInd, ref VCI_CAN_OBJ pReceive, UInt32 Len, Int32 WaitTime); + [DllImport("controlcan.dll", CharSet = CharSet.Ansi)] + static extern UInt32 VCI_Receive(UInt32 DeviceType, UInt32 DeviceInd, UInt32 CANInd, IntPtr pReceive, UInt32 Len, Int32 WaitTime); + } +} diff --git a/LFP_Manager_PRM/Function/csHistoryFunction.cs b/LFP_Manager_PRM/Function/csHistoryFunction.cs new file mode 100644 index 0000000..069b5f5 --- /dev/null +++ b/LFP_Manager_PRM/Function/csHistoryFunction.cs @@ -0,0 +1,114 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.IO; +using System.Data; + +using System.Data.SQLite; +using LFP_Manager.DataStructure; +using LFP_Manager.Utils; + +namespace LFP_Manager.Function +{ + class csHistoryFunction + { + #region DB CREATE + + public static void DbCreate(string mPath) + { + string dbFilename = mPath + csDbConstData.DataBase.FileName; + + if (Directory.Exists(System.IO.Path.GetDirectoryName(dbFilename)) == false) + Directory.CreateDirectory(System.IO.Path.GetDirectoryName(dbFilename)); + + if (File.Exists(dbFilename) == false) + // Create database + SQLiteConnection.CreateFile(dbFilename); + + // Open database + string strConn = @"Data Source=" + dbFilename; + using (var connection = new SQLiteConnection(strConn)) + { + connection.Open(); + try + { + // Create table + using (SQLiteCommand command = connection.CreateCommand()) + { + command.CommandText = csDbConstData.DataBase.CreateTable; + command.ExecuteNonQuery(); + } + } + catch (Exception) + { + } + finally + { + connection.Close(); + } + } + } + + #endregion + + #region DB INSERT DATA + private void IDInsert(DataTable aData, string mPath, string Quary) + { + string dbFilename = mPath + csDbConstData.DataBase.FileName; + + // Open database + string strConn = @"Data Source=" + dbFilename; + using (var connection = new SQLiteConnection(strConn)) + { + connection.Open(); + try + { + // Insert data + using (SQLiteCommand command = connection.CreateCommand()) + { + command.CommandText = "BEGIN;"; //명시적 트렌젝션 시작 + command.ExecuteNonQuery(); + + //sSQL = "insert into TrendTable ( TrendStamp, TagName, TagValue) Values ( " + IntToStr(stamp) + "," + name + "," + value + ");"; + //command.CommandText = "INSERT INTO " + csDbConstData.DataBase.TableName + "(id) " + " Values (@id);"; + command.CommandText = Quary; + SQLiteParameter p = new SQLiteParameter("@id", DbType.String); + + command.Parameters.Add(p); + + for (int i = 0; i < aData.Rows.Count; i++) + { + p.Value = String.Format("{0}", aData.Rows[i][0].ToString()); // id + + try + { + command.ExecuteNonQuery(); + } + catch (Exception) + { + //MessageBox.Show(e1.ToString() + ":" + i.ToString()); + } + finally + { + } + } + command.CommandText = "COMMIT;"; //명시적 트렌젝션 시작 + command.ExecuteNonQuery(); + } + } + catch (Exception) + { + //MessageBox.Show(e.ToString()); + } + finally + { + connection.Close(); + } + } + } + + #endregion + + } +} diff --git a/LFP_Manager_PRM/Function/csIniControlFunction.cs b/LFP_Manager_PRM/Function/csIniControlFunction.cs new file mode 100644 index 0000000..a8526c0 --- /dev/null +++ b/LFP_Manager_PRM/Function/csIniControlFunction.cs @@ -0,0 +1,204 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; + +using System.Runtime.InteropServices; +using System.IO; + +using LFP_Manager.DataStructure; + +namespace LFP_Manager.Function +{ + class csIniControlFunction + { + #region [Function] INI File Read Function(Section Setting) + public static string[] GetIniValue(string Section, string path) + { + byte[] ba = new byte[5000]; + uint Flag = GetPrivateProfileSection(Section, ba, 5000, path); + return Encoding.Default.GetString(ba).Split(new char[1] { '\0' }, StringSplitOptions.RemoveEmptyEntries); + } + #endregion + + #region [Function] INI File Read Function(Section and Key Setting) + public static string GetIniValue(string Section, string key, string path) + { + StringBuilder sb = new StringBuilder(500); + int Flag = GetPrivateProfileString(Section, key, "", sb, 500, path); + return sb.ToString(); + } + #endregion + + #region [Function] INI File Read Function(Section, Key, Value, Address Setting) + public bool SetIniValue(string Section, string Key, string Value, string path) + { + return (WritePrivateProfileString(Section, Key, Value, path)); + } + #endregion + + #region [DLL Function] INI DLL Load + [DllImport("kernel32")] + public static extern int GetPrivateProfileString(string lpAppName, string lpKeyName, string lpDefault, StringBuilder lpReturnedString, int nSize, string lpFileName); + [DllImport("kernel32")] + public static extern bool WritePrivateProfileString(string lpAppName, string lpKeyName, string lpString, string lpFileName); + [DllImport("kernel32")] + public static extern uint GetPrivateProfileInt(string lpAppName, string lpKeName, int nDefault, string lpFileName); + [DllImport("kernel32")] + public static extern uint GetPrivateProfileSection(string lpAppName, byte[] lpPairValues, uint nSize, string lpFileName); + [DllImport("kernel32")] + public static extern uint GetPrivateProfileSectionNames(byte[] lpSections, uint nSize, string lpFileName); + #endregion + + public static DateTime Delay(int MS) + { + DateTime thisMoment = DateTime.Now; + TimeSpan duration = new TimeSpan(0, 0, 0, 0, MS); + DateTime afterMoment = thisMoment.Add(duration); + + while (afterMoment >= thisMoment) + { + System.Windows.Forms.Application.DoEvents(); + + thisMoment = DateTime.Now; + } + + return DateTime.Now; + } + + public static CommConfig IniLoad(string AppPath, CommConfig aConfig) + { + string path; + path = Path.GetDirectoryName(AppPath); + + if (aConfig == null) + { + aConfig = new CommConfig(); + } + if (File.Exists(String.Format("{0}\\CommSet.ini", path))) + { + StringBuilder ret = new StringBuilder(); + string InIPath = String.Format("{0}\\CommSet.ini", path); + + // CommType = 0: USBCAN, 1: UARTCAN + aConfig.CommType = (int)csIniControlFunction.GetPrivateProfileInt("COMM TYPE", "TYPE", 0, InIPath); + + // SNMP Config + // IP + ret.Clear(); + csIniControlFunction.GetPrivateProfileString("SNMP", "IP", "(NONE)", ret, 32, InIPath); + aConfig.SnmpIP = ret.ToString(); + // Model + aConfig.SnmpModelIndex = (int)csIniControlFunction.GetPrivateProfileInt("SNMP", "MODEL", 2, InIPath); + // Module Quantity + aConfig.SnmpMdQty = (int)csIniControlFunction.GetPrivateProfileInt("SNMP", "MD_QTY", 2, InIPath); + + // CAN Config + // DEVICE + ret.Clear(); + aConfig.CanDevice = (int)csIniControlFunction.GetPrivateProfileInt("CAN", "DEVICE", 0, InIPath); + // INDEX + aConfig.CanIndex = (int)csIniControlFunction.GetPrivateProfileInt("CAN", "INDEX", 0, InIPath); + // CAN NO + aConfig.CanNo = (int)csIniControlFunction.GetPrivateProfileInt("CAN", "CAN_NO", 0, InIPath); + // SPEED + aConfig.CanBaudrate = (int)csIniControlFunction.GetPrivateProfileInt("CAN", "BAUDRATE", 0, InIPath); + // MODEL + aConfig.TargetModelIndex = (int)csIniControlFunction.GetPrivateProfileInt("CAN", "MODEL", 0, InIPath); + + // UART Config + // PORT + ret.Clear(); + csIniControlFunction.GetPrivateProfileString("UART", "PORT", "(NONE)", ret, 32, InIPath); + aConfig.UartPort = ret.ToString(); + // SPEED + aConfig.UartBaudrate = (int)csIniControlFunction.GetPrivateProfileInt("UART", "BAUDRATE", 0, InIPath); + + // Database Config + ret.Clear(); + // Log Period + aConfig.DbLogPeriod = (int)csIniControlFunction.GetPrivateProfileInt("DATABASE", "LOG_PERIOD", 5, InIPath); + + // CB Test Config + aConfig.CbTestGap = (int)csIniControlFunction.GetPrivateProfileInt("CB_TEST", "MAX_GAP", 1500, InIPath); + // CB Test Config + aConfig.CbTestTime = (int)csIniControlFunction.GetPrivateProfileInt("CB_TEST", "TIME", 3000, InIPath); + } + else + { + aConfig.CommType = csConstData.CommType.COMM_USBCAN; + + // MODEL + aConfig.TargetModelIndex = 0; + + // CAN DEVICE + aConfig.CanDevice = 0; + // CAN INDEX + aConfig.CanIndex = 0; + // CAN NO + aConfig.CanNo = 0; + // SPEED + aConfig.CanBaudrate = 0; + + // UART PORT + aConfig.UartPort = ""; + // SPEED + aConfig.UartBaudrate = 0; + + aConfig.DbLogPeriod = 5; + + aConfig.CbTestGap = 1500; + aConfig.CbTestTime = 3000; + } + + return aConfig; + } + + public static void IniSave(string AppPath, CommConfig aConfig) + { + string path = System.IO.Path.GetDirectoryName(AppPath); + string InIPath = String.Format("{0}\\CommSet.ini", path); + + // write ini + + // CommType = 0: SNMP, 1: UARTCAN, 2: USBCAN + csIniControlFunction.WritePrivateProfileString("COMM TYPE", "TYPE", aConfig.CommType.ToString(), InIPath); + + // SNMP Config + // IP + csIniControlFunction.WritePrivateProfileString("SNMP", "IP", aConfig.SnmpIP, InIPath); + // Model + csIniControlFunction.WritePrivateProfileString("SNMP", "MODEL", aConfig.SnmpModelIndex.ToString(), InIPath); + // Module Quantity + csIniControlFunction.WritePrivateProfileString("SNMP", "MD_QTY", aConfig.SnmpMdQty.ToString(), InIPath); + + // CAN Config + // DEVICE + csIniControlFunction.WritePrivateProfileString("CAN", "DEVICE", aConfig.CanDevice.ToString(), InIPath); + // INDEX + csIniControlFunction.WritePrivateProfileString("CAN", "INDEX", aConfig.CanIndex.ToString(), InIPath); + // CAN NO + csIniControlFunction.WritePrivateProfileString("CAN", "CAN_NO", aConfig.CanNo.ToString(), InIPath); + // SPEED + csIniControlFunction.WritePrivateProfileString("CAN", "BAUDRATE", aConfig.CanBaudrate.ToString(), InIPath); + // MODEL + csIniControlFunction.WritePrivateProfileString("CAN", "MODEL", aConfig.TargetModelIndex.ToString(), InIPath); + + // UART Config + // PORT + csIniControlFunction.WritePrivateProfileString("UART", "PORT", aConfig.UartPort.ToString(), InIPath); + // SPEED + csIniControlFunction.WritePrivateProfileString("UART", "BAUDRATE", aConfig.UartBaudrate.ToString(), InIPath); + + // Database Config + // Log Period + csIniControlFunction.WritePrivateProfileString("DATABASE", "LOG_PERIOD", aConfig.DbLogPeriod.ToString(), InIPath); + + // CB Test Config + // MAX GAP + csIniControlFunction.WritePrivateProfileString("CB_TEST", "MAX_GAP", aConfig.CbTestGap.ToString(), InIPath); + // TIME + csIniControlFunction.WritePrivateProfileString("CB_TEST", "TIME", aConfig.CbTestTime.ToString(), InIPath); + } + } +} diff --git a/LFP_Manager_PRM/Function/csMakeDataFunction.cs b/LFP_Manager_PRM/Function/csMakeDataFunction.cs new file mode 100644 index 0000000..098d215 --- /dev/null +++ b/LFP_Manager_PRM/Function/csMakeDataFunction.cs @@ -0,0 +1,87 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; + +using LFP_Manager.DataStructure; +using LFP_Manager.Utils; + +namespace LFP_Manager.Function +{ + class csMakeDataFunction + { + private static DeviceSystemData MakeAlarmTripData(int id, short ndata, DeviceSystemData rSystemData) + { + bool[] aData = csUtils.Int16ToBitArray(ndata); + short bFault = rSystemData.StatusData.protect; + short bWarning = rSystemData.StatusData.warning; + int i = 0; + + switch (id) + { + case 0: // Warning + if (aData[i++]) bWarning |= (1 << 2); // Bit 0 : Over voltage warning + else bWarning &= ~(1 << 2); + if (aData[i++]) bWarning |= (1 << 4); // Bit 1 : Cell Over voltage warning + else bWarning &= ~(1 << 4); + if (aData[i++]) bWarning |= (1 << 3); // Bit 2 : Low voltage warning + else bWarning &= ~(1 << 3); + if (aData[i++]) bWarning |= (1 << 5); // Bit 3 : Low cell voltage warning + else bWarning &= ~(1 << 5); + if (aData[i++]) bWarning |= (1 << 6); // Bit 4 : Charge over current warning + else bWarning &= ~(1 << 6); + if (aData[i++]) bWarning |= (1 << 7); // Bit 5 : Discharge over current warning + else bWarning &= ~(1 << 7); + i++; // 06 Abnormal balancing current + i++; // 07 Reserved + if ((aData[8]) || (aData[9])) bWarning |= (1 << 0); // Bit 8 : Charge over temperature warning, Bit 9 : Discharge over temperature warning + else bWarning &= ~(1 << 0); + i++; // 08 + i++; // 09 + if ((aData[10]) || (aData[11])) bWarning |= (1 << 1); // Bit 10 : Charge low temperature warning, Bit 11 : Discharge low temperature warning + else bWarning &= ~(1 << 1); + i++; // 10 + i++; // 11 + if (aData[i++]) bWarning |= (1 << 11); // 12 : Low capacity warning + else bWarning &= ~(1 << 11); + i++; // 13 + if (aData[i++]) bWarning |= (1 << 9); // 14 Cell Voltage Difference Warning + else bWarning &= ~(1 << 9); + break; + case 1: // Status Code 2 + if (aData[i++]) bFault |= (1 << 2); // Bit 0 : Over voltage warning + else bFault &= ~(1 << 2); + if (aData[i++]) bFault |= (1 << 4); // Bit 1 : Cell Over voltage warning + else bFault &= ~(1 << 4); + if (aData[i++]) bFault |= (1 << 3); // Bit 2 : Low voltage warning + else bFault &= ~(1 << 3); + if (aData[i++]) bFault |= (1 << 5); // Bit 3 : Low cell voltage warning + else bFault &= ~(1 << 5); + if (aData[i++]) bFault |= (1 << 6); // Bit 4 : Charge over current warning + else bFault &= ~(1 << 6); + if (aData[i++]) bFault |= (1 << 7); // Bit 5 : Discharge over current warning + else bFault &= ~(1 << 7); + i++; // 06 Abnormal balancing current + i++; // 07 Reserved + if ((aData[8]) || (aData[9])) bFault |= (1 << 0); // Bit 8 : Charge over temperature warning, Bit 9 : Discharge over temperature warning + else bFault &= ~(1 << 0); + i++; // 08 + i++; // 09 + if ((aData[10]) || (aData[11])) bFault |= (1 << 1); // Bit 10 : Charge low temperature warning, Bit 11 : Discharge low temperature warning + else bFault &= ~(1 << 1); + i++; // 10 + i++; // 11 + i++; // 12 + i++; // 13 + if (aData[i++]) bFault |= (1 << 9); // 14 Cell Voltage Difference Warning + else bFault &= ~(1 << 9); + break; + } + + rSystemData.StatusData.protect = bFault; + rSystemData.StatusData.warning = bWarning; + + return rSystemData; + } + } +} diff --git a/LFP_Manager_PRM/Function/csSbCanAPI.cs b/LFP_Manager_PRM/Function/csSbCanAPI.cs new file mode 100644 index 0000000..4e1a8b5 --- /dev/null +++ b/LFP_Manager_PRM/Function/csSbCanAPI.cs @@ -0,0 +1,627 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +using LFP_Manager.DataStructure; + +namespace LFP_Manager.Function +{ + public static class csSbCanAPI + { + #region CONST DATA + + /************************************* + define + **************************************/ + public static bool ISDAR(byte x) + { + return (x & 0x01) != 0x00; + } + + public static bool ISABOR(byte x) + { + return (x & 0x02) != 0x00; + } + + public static void SETDAR(ref byte x) + { + x |= 0x01; + } + public static void SETABOR(ref byte x) + { + x |= 0x02; + } + + // VCP Status Const data + public const byte CS_CANv2_ActiveMode = 0x11; + public const byte CS_CANv2_SetupMode = 0x10; + public const byte uCAN_VCOM = 0x21; + public const byte eCAN_VCOM = 0x31; + public const byte NotConnect = 0x00; + public const byte NotFind = 0xFF; + + // CAN + public const byte CR = 0x0D; + + // Error Code + public const byte Invalid_Arg = 0x01; + public const byte No_Error = 0x00; + + #endregion + + public static bool IsSTD(byte format) + { + if ((format & 0x06) == 0x04) + return true; + else + return false; + } + public static bool IsEXT(byte format) + { + if ((format & 0x06) == 0x06) + return true; + else + return false; + } + public static bool IsDATA(byte format) + { + if ((format & 0x05) == 0x04) + return true; + else + return false; + } + public static bool IsREMOTE(byte format) + { + if ((format & 0x05) == 0x05) + return true; + else + return false; + } + + public static byte SendCANTxFrame(CAN_Struct Tx, ref byte[] SerialBuffer, byte BufferSize, ref byte ConvertSize) + { + byte ind = 0; + byte tmp_index = 0; + byte[] buf = new byte[40]; + + switch (Tx.Format) + { + case (byte)CAN_StructFormat.TX_STD_DATA: buf[ind++] = (byte)CAN_SerialCommandHeader.STD_DATA; break; + case (byte)CAN_StructFormat.TX_STD_REMOTE: buf[ind++] = (byte)CAN_SerialCommandHeader.STD_REMOTE; break; + case (byte)CAN_StructFormat.TX_EXT_DATA: buf[ind++] = (byte)CAN_SerialCommandHeader.EXT_DATA; break; + case (byte)CAN_StructFormat.TX_EXT_REMOTE: buf[ind++] = (byte)CAN_SerialCommandHeader.EXT_REMOTE; break; + default: return Invalid_Arg; + } + + if (IsSTD(Tx.Format)) + tmp_index = 3; + else if (IsEXT(Tx.Format)) + tmp_index = 8; + + for (int i = 1; i <= tmp_index; i++) + { + buf[ind++] = toASCII_HEX(Div_4(Tx.ID, (byte)(tmp_index - i))); + } + + buf[ind++] = toASCII_HEX(Tx.DLC); + + if (IsDATA(Tx.Format)) + { + + for (int i = 0; i < Tx.DLC; i++) + { + buf[ind++] = toASCII_HEX(Div_4(Tx.DATA[i], 1)); + buf[ind++] = toASCII_HEX(Div_4(Tx.DATA[i], 0)); + } + } + + buf[ind++] = CR; + + if (ind > BufferSize) + return Invalid_Arg; + + ConvertSize = ind; + + for (int i = 0; i < ind; i++) + { + SerialBuffer[i] = buf[i]; + } + + return No_Error; + } + + public static byte SetSerialConfig(SerialConfigInfo info, ref byte[] SerialBuffer, byte BufferSize, ref byte ConvertSize) + { + + byte len; + byte[] buf = new byte[21]; + + buf[0] = (byte)'W'; + buf[1] = (byte)'S'; + switch (info.flow) + { + case (byte)FlowControl.NoFlowControl: buf[2] = (byte)'N'; break; + case (byte)FlowControl.HardwareControl: buf[2] = (byte)'H'; break; + default: return Invalid_Arg; + } + + switch (info.data) + { + case (byte)DataBits.Data8: buf[3] = (byte)'8'; break; + default: return Invalid_Arg; + } + + switch (info.parity) + { + case (byte)Parity.NoParity: buf[4] = (byte)'N'; break; + case (byte)Parity.EvenParity: buf[4] = (byte)'E'; break; + case (byte)Parity.OddParity: buf[4] = (byte)'O'; break; + case (byte)Parity.SpaceParity: buf[4] = (byte)'S'; break; + case (byte)Parity.MarkParity: buf[4] = (byte)'M'; break; + default: return Invalid_Arg; + } + + switch (info.stop) + { + case (byte)StopBits.OneStop: buf[5] = (byte)'1'; break; + case (byte)StopBits.TwoStop: buf[5] = (byte)'2'; break; + default: return Invalid_Arg; + } + byte[] value = new byte[20 - 6]; + len = int2ascii(info.Baudrate, ref value, 20 - 6); + if (len == 0) + { + return Invalid_Arg; + } + for (int i = 0; i < len; i++) + buf[6 + i] = value[i]; + + buf[6 + len] = CR; + + if ((len + 7) > BufferSize) + return Invalid_Arg; + + ConvertSize = (byte)(len + 7); + + for (int i = 0; i < (len + 7); i++) + { + SerialBuffer[i] = buf[i]; + } + + return No_Error; + } + + static byte SetCANConfig(CANConfigInfo info, ref byte[] SerialBuffer, byte BufferSize, ref byte ConvertSize) + { + byte len; + byte ind; + byte[] buf = new byte[31]; + byte[] value = new byte[30]; + byte function; + function = 0; + + buf[0] = (byte)'W'; + buf[1] = (byte)'C'; + switch (info.Spec) + { + case (byte)CANSpec.CAN_A: buf[2] = (byte)'A'; break; + case (byte)CANSpec.CAN_B: buf[2] = (byte)'B'; break; + default: return Invalid_Arg; + } + buf[3] = (byte)','; + + len = int2ascii(info.Baudrate, ref value, 4); + if (len == 0) + { + return Invalid_Arg; + } + for (int i = 0; i < len; i++) + buf[4 + i] = value[i]; + + buf[len + 4] = (byte)','; + ind = (byte)(len + 5); + + len = hex2ID(info.ID, info.Spec, ref value, 8); + if (len == 0) + { + return Invalid_Arg; + } + for (int i = 0; i < len; i++) + buf[ind + i] = value[i]; + + buf[len + ind] = (byte)','; + ind = (byte)(len + ind + 1); + + len = hex2ID(info.Mask, info.Spec, ref value, 8); + if (len == 0) + { + return Invalid_Arg; + } + for (int i = 0; i < len; i++) + buf[ind + i] = value[i]; + + buf[len + ind] = (byte)','; + ind = (byte)(len + ind + 1); + + if (info.DAR) + SETDAR(ref function); + if (info.ABOR) + SETABOR(ref function); + + buf[ind++] = toASCII_HEX(function); + buf[ind++] = CR; + + + if (ind > BufferSize) + return Invalid_Arg; + + ConvertSize = ind; + + for (int i = 0; i < ind; i++) + SerialBuffer[i] = buf[i]; + + return No_Error; + } + + static byte GetSerialConfig(ref byte[] SerialBuffer, byte BufferSize, ref byte ConvertSize) + { + if (3 > BufferSize) + return Invalid_Arg; + ConvertSize = 3; + + SerialBuffer[0] = (byte)'R'; + SerialBuffer[1] = (byte)'S'; + SerialBuffer[2] = CR; + + return No_Error; + } + + static byte GetCANConfig(ref byte[] SerialBuffer, byte BufferSize, ref byte ConvertSize) + { + if (3 > BufferSize) + return Invalid_Arg; + ConvertSize = 3; + + SerialBuffer[0] = (byte)'R'; + SerialBuffer[1] = (byte)'C'; + SerialBuffer[2] = CR; + + return No_Error; + } + + static byte SaveConfig(ref byte[] SerialBuffer, byte BufferSize, ref byte ConvertSize) + { + if (3 > BufferSize) + return Invalid_Arg; + ConvertSize = 3; + + SerialBuffer[0] = (byte)'S'; + SerialBuffer[1] = (byte)'V'; + SerialBuffer[2] = CR; + + return No_Error; + } + + static byte FirmwareUpgrade(ref byte[] SerialBuffer, byte BufferSize, ref byte ConvertSize) + { + if (3 > BufferSize) + return Invalid_Arg; + ConvertSize = 3; + + SerialBuffer[0] = (byte)'F'; + SerialBuffer[1] = (byte)'U'; + SerialBuffer[2] = CR; + + return No_Error; + } + static byte FirmwareVersion(ref byte[] SerialBuffer, byte BufferSize, ref byte ConvertSize) + { + if (3 > BufferSize) + return Invalid_Arg; + ConvertSize = 3; + + SerialBuffer[0] = (byte)'F'; + SerialBuffer[1] = (byte)'V'; + SerialBuffer[2] = CR; + + return No_Error; + } + + static byte GetErrorInfo(ref byte[] SerialBuffer, byte BufferSize, ref byte ConvertSize) + { + if (1 > BufferSize) + return Invalid_Arg; + ConvertSize = 1; + + SerialBuffer[0] = (byte)'!'; + + return No_Error; + } + + + + static byte ParsingSerialInfo(ref SerialConfigInfo info, ref byte[] SerialBuffer, byte BufferSize) + { + SerialConfigInfo tmp; + UInt32 baudrate; + byte flow, stop, data, parity; + + flow = SerialBuffer[0]; + data = SerialBuffer[1]; + parity = SerialBuffer[2]; + stop = SerialBuffer[3]; + + byte[] bBuf = new byte[BufferSize - 5]; + for (int i = 0; i < BufferSize - 5; i++) + bBuf[i] = SerialBuffer[4 + i]; + + baudrate = ascii2int(ref bBuf, (byte)(BufferSize - 5)); + + switch (flow) + { + case (byte)'N': tmp.flow = (byte)FlowControl.NoFlowControl; break; + case (byte)'H': tmp.flow = (byte)FlowControl.HardwareControl; break; + default: return Invalid_Arg; + } + + switch (data) + { + case (byte)'8': tmp.data = (byte)DataBits.Data8; break; + default: return Invalid_Arg; + } + + switch (parity) + { + case (byte)'N': tmp.parity = (byte)Parity.NoParity; break; + case (byte)'E': tmp.parity = (byte)Parity.EvenParity; break; + case (byte)'O': tmp.parity = (byte)Parity.OddParity; break; + case (byte)'S': tmp.parity = (byte)Parity.SpaceParity; break; + case (byte)'M': tmp.parity = (byte)Parity.MarkParity; break; + default: return Invalid_Arg; + } + switch (stop) + { + case (byte)'1': tmp.stop = (byte)StopBits.OneStop; break; + case (byte)'2': tmp.stop = (byte)StopBits.TwoStop; break; + default: return Invalid_Arg; + } + if ((baudrate % 100) > 0) + return Invalid_Arg; + else + { + tmp.Baudrate = baudrate; + } + + //*info = tmp; + info = tmp; + + return No_Error; + } + static byte ParsingCANInfo(ref CANConfigInfo info, ref byte[] SerialBuffer, byte BufferSize) + { + CANConfigInfo tmp; + byte[] org = new byte[50]; + byte[][] tt = new byte[5][]; + byte function; + + switch (SerialBuffer[0]) + { + case (byte)'A': + tmp.Spec = (byte)CANSpec.CAN_A; + if (14 >= BufferSize || BufferSize >= 18) + return Invalid_Arg; + break; + case (byte)'B': + if (24 >= BufferSize || BufferSize >= 28) + return Invalid_Arg; + tmp.Spec = (byte)CANSpec.CAN_B; + break; + default: return Invalid_Arg; + } + + org = SerialBuffer; + + //for (int i = 0; i < tt.GetLength(0); i++) + // for (int j = 0; j < tt.GetLength(1); j++) + // tt[i, j] = 0x00; + + string equation = Encoding.Default.GetString(org); + string[] equationTokens = equation.Split(new char[1] { ',' }); + + for (int i = 0; i < equationTokens.Length; i++) + { + tt[i] = Encoding.UTF8.GetBytes(equationTokens[i]); + } + + tmp.Baudrate = ascii2int(ref tt[0], (byte)tt[0].Length); + tmp.ID = (uint)ascii2ID_Rev(ref tt[1], tmp.Spec); + tmp.Mask = (uint)ascii2ID_Rev(ref tt[2], tmp.Spec); + function = (byte)ascii2int(ref tt[3], 1); + + if (function > 255) + return No_Error; + + if (ISDAR(function)) + tmp.DAR = true; + else + tmp.DAR = false; + + if (ISABOR(function)) + tmp.ABOR = true; + else + tmp.ABOR = false; + + //*info = tmp; + info = tmp; + + return No_Error; + } + + static byte ParsingErrorInfo(ref CANErorrInfo info, ref byte[] SerialBuffer, byte BufferSize) + { + CANErorrInfo tmp = new CANErorrInfo(); + + info = tmp; + + return No_Error; + } + + + + + /********************************************************************** + + private functions + + **********************************************************************/ + + + static byte Div_8(UInt32 data, byte index) + { + byte ret; + data = data >> (index * 8); + ret = (byte)(data & 0xFF); + return ret; + } + + public static int ascii2hex(byte ch) + { + if (0x30 <= ch && ch <= 0x39) + {//0~9 + ch &= 0x0f; + return ch; + } + else if (0x61 <= ch && ch <= 0x66) + { //a~f + ch &= 0x0f; + ch += 9; + return ch; + } + else if (0x41 <= ch && ch <= 0x46) + { //A~F + ch &= 0x0f; + ch += 9; + return ch; + } + else + return -1; + } + + static int ascii2ID_Rev(ref byte[] SourceBuffer, byte idCount) + { + int idTmp = 0; + int tmp = 0, i = 0; + for (i = 0; i < idCount; i++) + { + tmp = ascii2hex(SourceBuffer[i]); + if (tmp != -1) + { + idTmp = idTmp << 4; + idTmp |= tmp; + } + } + return idTmp; + } + + + + static byte Div_4(UInt32 data, byte index) + { + byte ret; + data = data >> (index * 4); + ret = (byte)(data & 0x0F); + return ret; + } + static byte int2ascii(UInt32 val, ref byte[] SourceBuffer, byte size) + { + UInt32 check = 10; + byte su = 1; + + if (val < 10) + return 0; + + while ((val / check) > 0) + { + su++; + check *= 10; + } + + if (su > size) + return 0; + + string tmpStr = String.Format("{0}", val); + + SourceBuffer = Encoding.UTF8.GetBytes(tmpStr); + + return su; + } + static UInt32 ascii2int(ref byte[] SourceBuffer, byte size) + { + UInt32 val = 0; + byte ind = 0; + int ret = 0; + UInt32 mul = 1; + + while (ret != -1) + { + ret = ascii2hex(SourceBuffer[ind++]); + } + ind--; + + while (ind > 0) + { + ind--; + ret = ascii2hex(SourceBuffer[ind]); + val = (UInt32)(val + (ret * mul)); + mul *= 10; + } + return val; + } + + + + static byte hex2ID(UInt32 val, byte idCount, ref byte[] SourceBuffer, byte size) + { + + UInt32 comp; + + switch (idCount) + { + case (byte)CANSpec.CAN_A: comp = 0x07ff; break; + case (byte)CANSpec.CAN_B: comp = 0x1fffffff; break; + default: return 0; + } + + if (val > comp) + return 0; + + if (idCount > size) + return 0; + + switch (idCount) + { + case (byte)CANSpec.CAN_A: SourceBuffer = Encoding.UTF8.GetBytes(String.Format("{0:X3}", val)); break; + case (byte)CANSpec.CAN_B: SourceBuffer = Encoding.UTF8.GetBytes(String.Format("{0:X8}", val)); break; + default: return 0; + } + + return idCount; + } + + static byte toASCII_HEX(byte int_hex) + { + byte ret = 0; + if (0 <= int_hex && int_hex <= 9) + { + ret = (byte)('0' + int_hex); + } + else if (0x0A <= int_hex && int_hex <= 0x0F) + { + ret = (byte)('A' + (int_hex % 10)); + } + return ret; + } + } +} diff --git a/LFP_Manager_PRM/Function/csValueCANAPI.cs b/LFP_Manager_PRM/Function/csValueCANAPI.cs new file mode 100644 index 0000000..596eb80 --- /dev/null +++ b/LFP_Manager_PRM/Function/csValueCANAPI.cs @@ -0,0 +1,2111 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using System.Runtime.InteropServices; + +static class Constants +{ + // Constants used to calculate the timestamp + public const double NEOVI_TIMESTAMP_2 = 0.1048576; + public const double NEOVI_TIMESTAMP_1 = 0.0000016; + + public const double NEOVIPRO_VCAN_TIMESTAMP_2 = 0.065536; + public const double NEOVIPRO_VCAN_TIMESTAMP_1 = 0.000001; + + public const double NEOVI6_VCAN_TIMESTAMP_2 = 0.065536; + public const double NEOVI6_VCAN_TIMESTAMP_1 = 0.000001; + + public const double NEOVI_RED_TIMESTAMP_2_25NS = 107.3741824; + public const double NEOVI_RED_TIMESTAMP_1_25NS = 0.000000025; + + public const double NEOVI_RED_TIMESTAMP_2_10NS = 429.4967296; + public const double NEOVI_RED_TIMESTAMP_1_10NS = 0.000000010; +} + +namespace LFP_Manager.Function +{ + public enum eHardwareTypes : uint + { + NEODEVICE_UNKNOWN = 0x00000000, + NEODEVICE_BLUE = 0x00000001, + NEODEVICE_ECU_AVB = 0x00000002, + NEODEVICE_RADSUPERMOON = 0x00000003, + NEODEVICE_DW_VCAN = 0x00000004, + NEODEVICE_RADMOON2 = 0x00000005, + NEODEVICE_RADGIGALOG = 0x00000006, + NEODEVICE_VCAN41 = 0x00000007, + NEODEVICE_FIRE = 0x00000008, + NEODEVICE_RADPLUTO = 0x00000009, + NEODEVICE_VCAN42_EL = 0x0000000a, + NEODEVICE_RADIO_CANHUB = 0x0000000b, + NEODEVICE_NEOECU12 = 0x0000000c, + NEODEVICE_OBD2_LCBADGE = 0x0000000d, + NEODEVICE_RAD_MOON_DUO = 0x0000000e, + NEODEVICE_VCAN3 = 0x00000010, + NEODEVICE_RADJUPITER = 0x00000011, + NEODEVICE_VCAN4_IND = 0x00000012, + NEODEVICE_GIGASTAR = 0x00000013, + NEODEVICE_ECU22 = 0x00000015, + NEODEVICE_RED = 0x00000040, + NEODEVICE_ECU = 0x00000080, + NEODEVICE_IEVB = 0x00000100, + NEODEVICE_PENDANT = 0x00000200, + NEODEVICE_OBD2_PRO = 0x00000400, + NEODEVICE_PLASMA = 0x00001000, + NEODEVICE_NEOANALOG = 0x00004000, + NEODEVICE_CT_OBD = 0x00008000, + NEODEVICE_ION = 0x00040000, + NEODEVICE_RADSTAR = 0x00080000, + NEODEVICE_VCAN44 = 0x00200000, + NEODEVICE_VCAN42 = 0x00400000, + NEODEVICE_CMPROBE = 0x00800000, + NEODEVICE_EEVB = 0x01000000, + NEODEVICE_VCANRF = 0x02000000, + NEODEVICE_FIRE2 = 0x04000000, + NEODEVICE_FLEX = 0x08000000, + NEODEVICE_RADGALAXY = 0x10000000, + NEODEVICE_RADSTAR2 = 0x20000000, + NEODEVICE_VIVIDCAN = 0x40000000, + NEODEVICE_OBD2_SIM = 0x80000000, + NEODEVICE_ALL = 0xFFFFBFFF, + } + + public enum EDeviceSettingsType : uint + { + DeviceFireSettingsType = 00, + DeviceFireVnetSettingsType = 01, + DeviceFire2SettingsType = 02, + DeviceVCAN3SettingsType = 03, + DeviceRADGalaxySettingsType = 04, + DeviceRADStar2SettingsType = 05, + DeviceVCAN4SettingsType = 06, + DeviceVCAN412SettingsType = 07, + DeviceVividCANSettingsType = 08, + DeviceECU_AVBSettingsType = 09, + DeviceRADSuperMoonSettingsType = 10, + DeviceRADMoon2SettingsType = 11, + DeviceRADPlutoSettingsType = 12, + DeviceRADGigalogSettingsType = 13, + DeviceVCANRFSettingsType = 14, + DeviceEEVBSettingsType = 15, + DeviceVCAN4IndSettingsType = 16, + DeviceNeoECU12SettingsType = 17, + DeviceFlexVnetzSettingsType = 18, + DeviceCANHUBSettingsType = 19, + DeviceIEVBSettingsType = 20, + DeviceOBD2SimSettingsType = 21, + DeviceCMProbeSettingsType = 22, + DeviceOBD2ProSettingsType = 23, + DevicePlaceHolder0SettingsType = 24, + DeviceRADPlutoSwitchSettingsType = 25, + DeviceRADGigastarSettingsType = 26, + DeviceRADJupiterSettingsType = 27, + DevicePlaceHolder1SettingsType = 28, + DeviceRadMoonDuoSettingsType = 29, + DeviceEtherBadgeSettingsType = 30, + DeviceRADA2BSettingsType = 31, + DeviceSettingsTypeMax = 32 + } + + public enum eDATA_STATUS_BITFIELD_1 : uint //: long + { + SPY_STATUS_GLOBAL_ERR = 0x01, + SPY_STATUS_TX_MSG = 0x02, + SPY_STATUS_XTD_FRAME = 0x04, + SPY_STATUS_REMOTE_FRAME = 0x08, + + SPY_STATUS_CRC_ERROR = 0x10, + SPY_STATUS_CAN_ERROR_PASSIVE = 0x20, + SPY_STATUS_INCOMPLETE_FRAME = 0x40, + SPY_STATUS_LOST_ARBITRATION = 0x80, + + SPY_STATUS_UNDEFINED_ERROR = 0x100, + SPY_STATUS_CAN_BUS_OFF = 0x200, + SPY_STATUS_CAN_ERROR_WARNING = 0x400, + SPY_STATUS_BUS_SHORTED_PLUS = 0x800, + + SPY_STATUS_BUS_SHORTED_GND = 0x1000, + SPY_STATUS_CHECKSUM_ERROR = 0x2000, + SPY_STATUS_BAD_MESSAGE_BIT_TIME_ERROR = 0x4000, + SPY_STATUS_IFR_DATA = 0x8000, + + SPY_STATUS_COMM_IN_OVERFLOW = 0x10000, + SPY_STATUS_COMM_OUT_OVERFLOW = 0x20000, + SPY_STATUS_COMM_MISC_ERROR = 0x40000, + SPY_STATUS_BREAK = 0x80000, + + SPY_STATUS_AVSI_REC_OVERFLOW = 0x100000, + SPY_STATUS_TEST_TRIGGER = 0x200000, + SPY_STATUS_AUDIO_COMMENT = 0x400000, + SPY_STATUS_GPS_DATA = 0x800000, + + SPY_STATUS_ANALOG_DIGITAL_INPUT = 0x1000000, + SPY_STATUS_TEXT_COMMENT = 0x2000000, + SPY_STATUS_NETWORK_MESSAGE_TYPE = 0x4000000, + SPY_STATUS_VSI_TX_UNDERRUN = 0x8000000, + + SPY_STATUS_VSI_IFR_CRC_BIT = 0x10000000, + SPY_STATUS_INIT_MESSAGE = 0x20000000, + SPY_STATUS_HIGH_SPEED = 0x40000000, + SPY_STATUS_FLEXRAY_SECOND_STARTUP_FRAME = 0x40000000, + SPY_STATUS_EXTENDED = 0x80000000, // if this bit is set than decode status bitfield3 in the ackbytes + } + + public enum eDATA_STATUS_BITFIELD_2 : uint + { + SPY_STATUS2_HAS_VALUE = 1, + SPY_STATUS2_VALUE_IS_BOOLEAN = 2, + SPY_STATUS2_HIGH_VOLTAGE = 4, + SPY_STATUS2_LONG_MESSAGE = 8, + SPY_STATUS2_GLOBAL_CHANGE = 0x10000, + SPY_STATUS2_ERROR_FRAME = 0x20000, + SPY_STATUS2_END_OF_LONG_MESSAGE = 0x100000, //for ISO and J1708, + //LIN/ISO Specific - check protocol before handling + SPY_STATUS2_LIN_ERR_RX_BREAK_NOT_0 = 0x200000, + SPY_STATUS2_LIN_ERR_RX_BREAK_TOO_SHORT = 0x400000, + SPY_STATUS2_LIN_ERR_RX_SYNC_NOT_55 = 0x800000, + SPY_STATUS2_LIN_ERR_RX_DATA_GREATER_8 = 0x1000000, + SPY_STATUS2_LIN_ERR_TX_RX_MISMATCH = 0x2000000, + SPY_STATUS2_LIN_ERR_MSG_ID_PARITY = 0x4000000, + SPY_STATUS2_ISO_FRAME_ERROR = 0x8000000, + SPY_STATUS2_LIN_SYNC_FRAME_ERROR = 0x8000000, + SPY_STATUS2_ISO_OVERFLOW_ERROR = 0x10000000, + SPY_STATUS2_LIN_ID_FRAME_ERROR = 0x10000000, + SPY_STATUS2_ISO_PARITY_ERROR = 0x20000000, + SPY_STATUS2_LIN_SLAVE_BYTE_ERROR = 0x20000000, + SPY_STATUS2_RX_TIMEOUT_ERROR = 0x40000000, + SPY_STATUS2_LIN_NO_SLAVE_DATA = 0x80000000, + //MOST Specific - check protocol before handling + SPY_STATUS2_MOST_PACKET_DATA = 0x200000, + SPY_STATUS2_MOST_STATUS = 0x400000, //reflects changes in light/lock/MPR/SBC/etc. + PY_STATUS2_MOST_LOW_LEVEL = 0x800000, //MOST low level message, allocs, deallocs, remote requests. + SPY_STATUS2_MOST_CONTROL_DATA = 0x1000000, + SPY_STATUS2_MOST_MHP_USER_DATA = 0x2000000, //MOST HIGH User Data Frame + SPY_STATUS2_MOST_MHP_CONTROL_DATA = 0x4000000, //MOST HIGH Control Data + SPY_STATUS2_MOST_I2S_DUMP = 0x8000000, + SPY_STATUS2_MOST_TOO_SHORT = 0x10000000, + SPY_STATUS2_MOST_MOST50 = 0x20000000, //absence of MOST50 and MOST150 implies it's MOST25 + SPY_STATUS2_MOST_MOST150 = 0x40000000, + SPY_STATUS2_MOST_CHANGED_PAR = 0x80000000, //first byte in ack reflects what changed + //Ethernet Specific - check protocol before handling + SPY_STATUS2_ETHERNET_CRC_ERROR = 0x200000, + SPY_STATUS2_ETHERNET_FRAME_TOO_SHORT = 0x400000, + SPY_STATUS2_ETHERNET_FCS_AVAILABLE = 0x800000, //This frame contains FCS (4 bytes) obtained from ICS Ethernet hardware (ex. RAD-STAR) + } + + public enum eDATA_STATUS_BITFIELD_3_LIN + { + SPY_STATUS3_LIN_JUST_BREAK_SYNC = 1, + SPY_STATUS3_LIN_SLAVE_DATA_TOO_SHORT = 2, + SPY_STATUS3_LIN_ONLY_UPDATE_SLAVE_TABLE_ONCE = 4, + } + + public enum eDATA_STATUS_BITFIELD_3_CANFD + { + SPY_STATUS3_CANFD_ESI = 0x01, + SPY_STATUS3_CANFD_IDE = 0x02, + SPY_STATUS3_CANFD_RTR = 0x04, + SPY_STATUS3_CANFD_FDF = 0x08, + SPY_STATUS3_CANFD_BRS = 0x10, + } + + public enum icsConfigSetup : short + { + NEO_CFG_MPIC_HS_CAN_CNF1 = 512 + 10, + NEO_CFG_MPIC_HS_CAN_CNF2 = 512 + 9, + NEO_CFG_MPIC_HS_CAN_CNF3 = 512 + 8, + NEO_CFG_MPIC_HS_CAN_MODE = 512 + 54, + + // med speed CAN + NEO_CFG_MPIC_MS_CAN_CNF1 = 512 + 22, + NEO_CFG_MPIC_MS_CAN_CNF2 = 512 + 21, + NEO_CFG_MPIC_MS_CAN_CNF3 = 512 + 20, + + NEO_CFG_MPIC_SW_CAN_CNF1 = 512 + 34, + NEO_CFG_MPIC_SW_CAN_CNF2 = 512 + 33, + NEO_CFG_MPIC_SW_CAN_CNF3 = 512 + 32, + + NEO_CFG_MPIC_LSFT_CAN_CNF1 = 512 + 46, + NEO_CFG_MPIC_LSFT_CAN_CNF2 = 512 + 45, + NEO_CFG_MPIC_LSFT_CAN_CNF3 = 512 + 44, + } + + // Network ID + public enum eNETWORK_ID : int + { + NETID_DEVICE = 0, + NETID_HSCAN = 1, + NETID_MSCAN = 2, + NETID_SWCAN = 3, + NETID_LSFTCAN = 4, + NETID_ISO = 9, + NETID_ISO2 = 14, + NETID_ISO14230 = 15, + NETID_LIN = 16, + NETID_OP_ETHERNET1 = 17, + NETID_OP_ETHERNET2 = 18, + NETID_OP_ETHERNET3 = 19, + NETID_ISO3 = 41, + NETID_HSCAN2 = 42, + NETID_HSCAN3 = 44, + NETID_OP_ETHERNET4 = 45, + NETID_OP_ETHERNET5 = 46, + NETID_ISO4 = 47, + NETID_LIN2 = 48, + NETID_LIN3 = 49, + NETID_LIN4 = 50, + NETID_MOST = 51, + NETID_CGI = 53, + NETID_HSCAN4 = 61, + NETID_HSCAN5 = 62, + NETID_UART = 64, + NETID_UART2 = 65, + NETID_UART3 = 66, + NETID_UART4 = 67, + NETID_SWCAN2 = 68, + NETID_ETHERNET_DAQ = 69, + NETID_OP_ETHERNET6 = 73, + NETID_OP_ETHERNET7 = 75, + NETID_OP_ETHERNET8 = 76, + NETID_OP_ETHERNET9 = 77, + NETID_OP_ETHERNET10 = 78, + NETID_OP_ETHERNET11 = 79, + NETID_FLEXRAY1A = 80, + NETID_FLEXRAY1B = 81, + NETID_FLEXRAY2A = 82, + NETID_FLEXRAY2B = 83, + NETID_LIN5 = 84, + NETID_FLEXRAY = 85, + NETID_FLEXRAY2 = 86, + NETID_OP_ETHERNET12 = 87, + NETID_MOST25 = 90, + NETID_MOST50 = 91, + NETID_MOST150 = 92, + NETID_ETHERNET = 93, + NETID_HSCAN6 = 96, + NETID_HSCAN7 = 97, + NETID_LIN6 = 98, + NETID_LSFTCAN2 = 99, + } + + //Vnet Enum for SlaveVnet types + public enum icsSpySlaveVNETAB : int + { + eNoVnet = 0, + eAinVnet = 2, + eFlexRayVnet = 3, + eSlaveFireVnet = 4, + eSlaveFireVnetEP = 5, + eSlaveFire2Vnet = 6, + eSlaveFire2VnetZ = 7, + eSlaveMost150 = 8, + } + + //ISO15765 Constants + public enum eISO15765_NetConst : int + { + ISO15765_2_NETWORK_HSCAN = 0x01, + ISO15765_2_NETWORK_MSCAN = 0x02, + ISO15765_2_NETWORK_HSCAN2 = 0x04, + ISO15765_2_NETWORK_HSCAN3 = 0x08, + ISO15765_2_NETWORK_SWCAN = 0x10, + ISO15765_2_NETWORK_HSCAN4 = 0x14, + ISO15765_2_NETWORK_HSCAN5 = 0x18, + ISO15765_2_NETWORK_HSCAN6 = 0x1C, + ISO15765_2_NETWORK_HSCAN7 = 0x20, + ISO15765_2_NETWORK_SWCAN2 = 0x24, + } + + //CoreMini Status + public enum eScriptStatus : int + { + SCRIPT_STATUS_STOPPED = 0, + SCRIPT_STATUS_RUNNING = 1, + } + + //CoreMini Location + public enum eScriptLocation : int + { + SCRIPT_LOCATION_FLASH_MEM = 0, + SCRIPT_LOCATION_SDCARD = 1, + SCRIPT_LOCATION_INTERNAL_FLASH = 2, + SCRIPT_LOCATION_VCAN3_MEM = 4, + } + + + // ePROTOCOL + public enum ePROTOCOL : int + { + SPY_PROTOCOL_CUSTOM = 0, + SPY_PROTOCOL_CAN = 1, + SPY_PROTOCOL_GMLAN = 2, + SPY_PROTOCOL_J1850VPW = 3, + SPY_PROTOCOL_J1850PWM = 4, + SPY_PROTOCOL_ISO9141 = 5, + SPY_PROTOCOL_Keyword2000 = 6, + SPY_PROTOCOL_GM_ALDL_UART = 7, + SPY_PROTOCOL_CHRYSLER_CCD = 8, + SPY_PROTOCOL_CHRYSLER_SCI = 9, + SPY_PROTOCOL_FORD_UBP = 10, + SPY_PROTOCOL_BEAN = 11, + SPY_PROTOCOL_LIN = 12, + SPY_PROTOCOL_J1708 = 13, + SPY_PROTOCOL_CHRYSLER_JVPW = 14, + SPY_PROTOCOL_J1939 = 15, + SPY_PROTOCOL_FLEXRAY = 16, + SPY_PROTOCOL_MOST = 17, + SPY_PROTOCOL_CGI = 18, + SPY_PROTOCOL_GME_CIM_SCL_KLINE = 19, + SPY_PROTOCOL_SPI = 20, + SPY_PROTOCOL_I2C = 21, + SPY_PROTOCOL_GENERIC_UART = 22, + SPY_PROTOCOL_JTAG = 23, + SPY_PROTOCOL_UNIO = 24, + SPY_PROTOCOL_DALLAS_1WIRE = 25, + SPY_PROTOCOL_GENERIC_MANCHSESTER = 26, + SPY_PROTOCOL_SENT_PROTOCOL = 27, + SPY_PROTOCOL_UART = 28, + SPY_PROTOCOL_ETHERNET = 29, + SPY_PROTOCOL_CANFD = 30, + SPY_PROTOCOL_GMFSA = 31, + SPY_PROTOCOL_TCP = 32, + } + + public enum icsEthernetLinkType : short + { + OPETH_LINK_AUTO = 0, + OPETH_LINK_MASTER = 1, + OPETH_LINK_SLAVE = 2, + } + + // Driver Type Constants + public enum eDRIVER_TYPE : short + { + INTREPIDCS_DRIVER_STANDARD = 0, + INTREPIDCS_DRIVER_TEST = 1, + } + + // Port Type Constants + public enum ePORT_TYPE : short + { + NEOVI_COMMTYPE_RS232 = 0, + NEOVI_COMMTYPE_USB_BULK = 1, + NEOVI_COMMTYPE_USB_ISO_DONT_USE = 2, + NEOVI_COMMTYPE_TCPIP = 3, + NEOVI_COMMTYPE_FIRE_USB = 5, + } + + [StructLayout(LayoutKind.Sequential)] + public struct icsSpyMessage //reff + { + public Int32 StatusBitField; //4 + public Int32 StatusBitField2; //new '4 + public Int32 TimeHardware; // 4 + public Int32 TimeHardware2; //new ' 4 + public Int32 TimeSystem; // 4 + public Int32 TimeSystem2; + public byte TimeStampHardwareID; //new ' 1 + public byte TimeStampSystemID; + public byte NetworkID; //new ' 1 + public byte NodeID; + public byte Protocol; + public byte MessagePieceID; // 1 + public byte ExtraDataPtrEnabled; //1 + public byte NumberBytesHeader; // 1 + public byte NumberBytesData; // 1 + public Int16 DescriptionID; // 2 + public Int32 ArbIDOrHeader; // Holds (up to 3 byte 1850 header or 29 bit CAN header) '4 + //public byte[] Data = new byte[8]; //(1 To 8); //8 + public byte Data1; + public byte Data2; + public byte Data3; + public byte Data4; + public byte Data5; + public byte Data6; + public byte Data7; + public byte Data8; + public Int32 StatusBitField3; + public Int32 StatusBitField4; + //public byte[] AckBytes = new byte[8]; //(1 To 8); //new '8 + public IntPtr iExtraDataPtr; // As Single ' 4 or 8 depending on system + public byte MiscData; + } + + + [StructLayout(LayoutKind.Sequential)] + public struct VSBSpyMessage //reff + { + public Int32 StatusBitField; //4 + public Int32 StatusBitField2; //new '4 + public Int32 TimeHardware; // 4 + public Int32 TimeHardware2; //new ' 4 + public Int32 TimeSystem; // 4 + public Int32 TimeSystem2; + public byte TimeStampHardwareID; //new ' 1 + public byte TimeStampSystemID; + public byte NetworkID; //new ' 1 + public byte NodeID; + public byte Protocol; + public byte MessagePieceID; // 1 + public byte ExtraDataPtrEnabled; //1 + public byte NumberBytesHeader; // 1 + public byte NumberBytesData; // 1 + public Int16 DescriptionID; // 2 + public Int32 ArbIDOrHeader; // Holds (up to 3 byte 1850 header or 29 bit CAN header) '4 + //public byte[] Data = new byte[8]; //(1 To 8); //8 + public byte Data1; + public byte Data2; + public byte Data3; + public byte Data4; + public byte Data5; + public byte Data6; + public byte Data7; + public byte Data8; + public Int32 StatusBitField3; + public Int32 StatusBitField4; + //public byte[] AckBytes = new byte[8]; //(1 To 8); //new '8 + public UInt32 iExtraDataPtr; // 4 + public byte MiscData; + } + + + [StructLayout(LayoutKind.Sequential, Pack = 1)] + public struct stAPIFirmwareInfo + { + public Int32 iType; // 1,2,3 for Generation of HW. + + // Date and Time type 1 and 2 + public Int32 iMainFirmDateDay; + public Int32 iMainFirmDateMonth; + public Int32 iMainFirmDateYear; + public Int32 iMainFirmDateHour; + public Int32 iMainFirmDateMin; + public Int32 iMainFirmDateSecond; + public Int32 iMainFirmChkSum; + + // Version data (only valid for type 3) + public byte iAppMajor; + public byte iAppMinor; + public byte iManufactureDay; + public byte iManufactureMonth; + public UInt16 iManufactureYear; + public byte iBoardRevMajor; + public byte iBoardRevMinor; + public byte iBootLoaderVersionMajor; + public byte iBootLoaderVersionMinor; + } + + + [StructLayout(LayoutKind.Sequential)] + public struct icsSpyMessageLong + { + public Int32 StatusBitField; // 4 + public Int32 StatusBitField2; //new '4 + public Int32 TimeHardware; + public Int32 TimeHardware2; //new ' 4 + public Int32 TimeSystem; //4 + public Int32 TimeSystem2; + public byte TimeStampHardwareID; //new ' 1 + public byte TimeStampSystemID; + public byte NetworkID; //new ' 1 + public byte NodeID; + public byte Protocol; + public byte MessagePieceID; // 1 + public byte ExtraDataPtrEnabled; // 1 + public byte NumberBytesHeader; // + public byte NumberBytesData; //2 + public Int16 DescriptionID; //2 + public Int32 ArbIDOrHeader;// Holds (up to 3 byte 1850 header or 29 bit CAN header) + public Int32 DataMsb; + public Int32 DataLsb; + public Int32 StatusBitField3; + public Int32 StatusBitField4; + public Single Value; // As Single + public byte MiscData; + + } + [StructLayout(LayoutKind.Sequential)] + public struct icsSpyMessageJ1850 + { + public Int32 StatusBitField; //4 + public Int32 StatusBitField2; //new '4 + public Int32 TimeHardware; //4 + public Int32 TimeHardware2; //new ' 4 + public Int32 TimeSystem; //4 + public Int32 TimeSystem2; + public byte TimeStampHardwareID; //new ' 1 + public byte TimeStampSystemID; + public byte NetworkID; //new ' 1 + public byte NodeID; + public byte Protocol; + public byte MessagePieceID; // 1 new + public byte ExtraDataPtrEnabled; // 1 + public byte NumberBytesHeader; //1 + public byte NumberBytesData; //1 + public Int16 DescriptionID; //2 + public byte Header1; //Holds (up to 3 byte 1850 header or 29 bit CAN header) + public byte Header2; + public byte Header3; + public byte Header4; + public byte Data1; + public byte Data2; + public byte Data3; + public byte Data4; + public byte Data5; + public byte Data6; + public byte Data7; + public byte Data8; + public byte ACK1; + public byte ACK2; + public byte ACK3; + public byte ACK4; + public byte ACK5; + public byte ACK6; + public byte ACK7; + public byte ACK8; + public IntPtr iExtraDataPtr; // As Single '4 or 8 depending on system + public byte MiscData; + } + + //Structure for neoVI device types + [StructLayout(LayoutKind.Sequential)] + public struct NeoDevice + { + public Int32 DeviceType; + public Int32 Handle; + public Int32 NumberOfClients; + public Int32 SerialNumber; + public Int32 MaxAllowedClients; + } + + [StructLayout(LayoutKind.Sequential)] + public struct NeoDeviceEx + { + public NeoDevice neoDevice; + public UInt32 FirmwareMajor; + public UInt32 FirmwareMinor; + public UInt32 Status; // bit 1 = CoreMini Running Status, bit 2 = In BootLoader? + public UInt32 Options; //Use icsSpyAttachedVNEts Enum for states + + public IntPtr pAvailWIFINetwork; + public IntPtr pWIFIInterfaceInfo; + public Int32 isEthernetDevice; + + public byte MACAddress0; + public byte MACAddress1; + public byte MACAddress2; + public byte MACAddress3; + public byte MACAddress4; + public byte MACAddress5; + + public UInt16 hardwareRev; + public UInt16 revReserved; + + public UInt32 Reserved0;// may be expanded in future revisions + public UInt32 Reserved1; + public UInt32 Reserved2; + public UInt32 Reserved3; + public UInt32 Reserved4; + public UInt32 Reserved5; + } + + [StructLayout(LayoutKind.Sequential)] + public struct OptionsNeoEx + { + Int32 CANOptions; + Int32 Reserved00; + Int32 Reserved01; + Int32 Reserved02; + Int32 Reserved03; + Int32 Reserved04; + Int32 Reserved05; + Int32 Reserved06; + Int32 Reserved07; + Int32 Reserved08; + Int32 Reserved09; + Int32 Reserved10; + Int32 Reserved11; + Int32 Reserved12; + Int32 Reserved13; + Int32 Reserved14; + Int32 Reserved15; + } + + [StructLayout(LayoutKind.Sequential, Pack = 2)] + public struct CAN_SETTINGS + { + public byte Mode; + public byte SetBaudrate; + public byte Baudrate; + public byte Transceiver_Mode; + public byte TqSeg1; + public byte TqSeg2; + public byte TqProp; + public byte TqSync; + public UInt16 BRP; + public byte auto_baud; + public byte innerFrameDelay25us; // 0 - 375us, 25us resolution + } + + [StructLayout(LayoutKind.Sequential, Pack = 2)] + public struct CANFD_SETTINGS + { + public byte FDMode; /* mode, secondary baudrate for canfd */ + public byte FDBaudrate; + public byte FDTqSeg1; + public byte FDTqSeg2; + public byte FDTqProp; + public byte FDTqSync; + public UInt16 FDBRP; + public byte FDTDC; + public byte reserved; + } + + [StructLayout(LayoutKind.Sequential, Pack = 2)] + public struct SWCAN_SETTINGS + { + public byte Mode; + public byte SetBaudrate; + public byte Baudrate; + public byte transceiver_mode; + public byte TqSeg1; + public byte TqSeg2; + public byte TqProp; + public byte TqSync; + public UInt16 BRP; + public UInt16 high_speed_auto_switch; + public byte auto_baud; + public byte Reserved; + } + + [StructLayout(LayoutKind.Sequential, Pack = 2)] + public struct SVCAN3Settings + { + public CAN_SETTINGS Can1; + public CAN_SETTINGS Can2; + public UInt16 Network_enables; + public UInt16 Network_enabled_on_boot; + public Int16 Iso15765_separation_time_offset; + public UInt16 Perf_en; + public UInt16 Misc_io_initial_ddr; + public UInt16 Misc_io_initial_latch; + public UInt16 Misc_io_report_period; + public UInt16 Misc_io_on_report_events; + } + + [StructLayout(LayoutKind.Sequential, Pack = 2)] + public struct SVCAN412Settings + { + /* Performance Test */ + public UInt16 perf_en; + + public CAN_SETTINGS can1; + public CANFD_SETTINGS canfd1; + public CAN_SETTINGS can2; + public CANFD_SETTINGS canfd2; + + public UInt64 network_enables; + public UInt64 termination_enables; + + public UInt32 pwr_man_timeout; + public UInt32 pwr_man_enable; + + public UInt16 network_enabled_on_boot; + + /* ISO15765-2 Transport Layer */ + public Int16 iso15765_separation_time_offset; + + public STextAPISettings text_api; + public UInt32 reserved; + } + + + [StructLayout(LayoutKind.Sequential, Pack = 2)] + public struct LIN_SETTINGS + { + public UInt32 Baudrate; + public UInt16 spbrg; + public byte brgh; + public byte NumBitsDelay; + public byte MasterResistor; + public byte Mode; + } + + // --- UART Settings + [StructLayout(LayoutKind.Sequential, Pack = 2)] + public struct UART_SETTINGS + { + public UInt16 Baudrate; + public UInt16 spbrg; + public UInt16 brgh; + public UInt16 parity; + public UInt16 stop_bits; + public byte flow_control; // 0- off, 1 - Simple CTS RTS, + public byte reserved_1; + public UInt32 bOptions; //AND to combind these values invert_tx = 1 invert_rx = 2 half_duplex = 4 + } + + [StructLayout(LayoutKind.Sequential, Pack = 2)] + public struct ETHERNET_SETTINGS + { + public byte duplex; //* 0 = half, 1 = full */ + public byte link_speed; + public byte auto_neg; + public byte led_mode; + public byte rsvd0; + public byte rsvd1; + public byte rsvd2; + public byte rsvd3; + } + + [StructLayout(LayoutKind.Sequential, Pack = 2)] + public struct SNeoMostGatewaySettings + { + public UInt16 netId; //Netid of CAN network to use. + public byte zero; + public byte Config; + //Bit 0: enable bit to enalbe most + //Bit 1-3: index of which miscio to use for timestamp sync. 0 => MISC1 + //Bit 4: Echo to CAN enable + //Bit 5-7: Reserve + } + + [StructLayout(LayoutKind.Sequential, Pack = 2)] + public struct OP_ETH_GENERAL_SETTINGS + { + byte ucInterfaceType; + byte reserved0; + byte reserved1; + byte reserved2; + UInt16 tapPair0; + UInt16 tapPair1; + UInt16 tapPair2; + UInt16 tapPair3; + UInt16 tapPair4; + UInt16 tapPair5; + UInt32 flags; // Bit field unsigned (bTapEnSwitch: 1; bTapEnPtp: 2; bEnReportLinkQuality: 4) + } + + [StructLayout(LayoutKind.Sequential, Pack = 2)] + public struct OP_ETH_SETTINGS + { + byte ucConfigMode; + byte preemption_en; + byte mac_addr1_0; + byte mac_addr1_1; + byte mac_addr1_2; + byte mac_addr1_3; + byte mac_addr1_4; + byte mac_addr1_5; + byte mac_addr2_0; + byte mac_addr2_1; + byte mac_addr2_2; + byte mac_addr2_3; + byte mac_addr2_4; + byte mac_addr2_5; + byte OpEthFlags; + //AND to combind these values + //mac_spoofing_en : 1 + //mac_spoofing_isDstOrSrc : 2 + //link_spd_A : 4 + //link_spd_B : 8 + //q2112_phy_mode : 16 + byte Reserved; + } + + + [StructLayout(LayoutKind.Sequential, Pack = 2)] + public struct J1708_SETTINGS + { + public UInt16 enable_convert_mode; + } + + + [StructLayout(LayoutKind.Sequential, Pack = 2)] + public struct SVCANRFSettings + { + public CAN_SETTINGS can1; + public CAN_SETTINGS can2; + public CAN_SETTINGS can3; + public CAN_SETTINGS can4; + + public LIN_SETTINGS lin1; + public LIN_SETTINGS lin2; + + public UInt16 network_enables; + public UInt16 network_enabled_on_boot; + + public UInt32 pwr_man_timeout; + public UInt16 pwr_man_enable; // 0 - off, 1 - sleep enabled, 2- idle enabled (fast wakeup) + + public UInt16 misc_io_initial_ddr; + public UInt16 misc_io_initial_latch; + public UInt16 misc_io_analog_enable; + public UInt16 misc_io_report_period; + public UInt16 misc_io_on_report_events; + + //ISO 15765-2 Transport Layer + public Int16 iso15765_separation_time_offset; + + //ISO9141 - KEYWORD 2000 1 + public Int16 iso9141_kwp_enable_reserved; + public ISO9141_KEYWORD2000_SETTINGS iso9141_kwp_settings; + + //Performance Test + public UInt16 perf_en; + + //ISO9141 - Parity + public UInt16 iso_parity; // 0 - no parity, 1 - event, 2 - odd + public UInt16 iso_msg_termination; // 0 - use inner frame time, 1 - GME CIM-SCL + public UInt16 iso_tester_pullup_enable; + + //Additional network enables + public UInt16 network_enables_2; + + public ISO9141_KEYWORD2000_SETTINGS iso9141_kwp_settings_2; + public UInt16 iso_parity_2; // 0 - no parity, 1 - event, 2 - odd + public UInt16 iso_msg_termination_2; // 0 - use inner frame time, 1 - GME CIM-SCL + + public UInt16 idle_wakeup_network_enables_1; + public UInt16 idle_wakeup_network_enables_2; + + public UInt16 reservedZero; + } + + [StructLayout(LayoutKind.Sequential, Pack = 2)] + public struct SEEVBSettings + { + public UInt32 ecu_id; + + public CAN_SETTINGS can1; + + public UInt16 network_enables; + public UInt16 network_enabled_on_boot; + + // ISO 15765-2 Transport layer + public UInt16 iso15765_separation_time_offset; + + // Performance test + public UInt16 perf_en; + + // Analog input + public UInt16 ain_sample_period; + public UInt16 ain_threshold; + + public UInt32 rsvd; + } + + [StructLayout(LayoutKind.Sequential, Pack = 2)] + public struct STextAPISettings + { + public UInt32 can1_tx_id; + public UInt32 can1_rx_id; + public UInt32 can1_options; // Set to 1 for Extended, 0 for standard + + public UInt32 can2_tx_id; + public UInt32 can2_rx_id; + public UInt32 can2_options; // Set to 1 for Extended, 0 for standard + + public UInt32 network_enables; + + public UInt32 can3_tx_id3; + public UInt32 can3_rx_id3; + public UInt32 can3_options; // Set to 1 for Extended, 0 for standard + + public UInt32 can4_tx_id4; + public UInt32 can4_rx_id4; + public UInt32 can4_options; // Set to 1 for Extended, 0 for standard + + public Int32 Reserved0; + public Int32 Reserved1; + public Int32 Reserved2; + public Int32 Reserved3; + public Int32 Reserved4; + } + + + [StructLayout(LayoutKind.Sequential, Pack = 2)] + public struct ISO9141_KEYWORD2000_SETTINGS + { + public UInt32 Baudrate; + public UInt16 spbrg; + public UInt16 brgh; + public ISO9141_KEYWORD2000__INIT_STEP Init_Step_0; + public ISO9141_KEYWORD2000__INIT_STEP Init_Step_1; + public ISO9141_KEYWORD2000__INIT_STEP Init_Step_2; + public ISO9141_KEYWORD2000__INIT_STEP Init_Step_3; + public ISO9141_KEYWORD2000__INIT_STEP Init_Step_4; + public ISO9141_KEYWORD2000__INIT_STEP Init_Step_5; + public ISO9141_KEYWORD2000__INIT_STEP Init_Step_6; + public ISO9141_KEYWORD2000__INIT_STEP Init_Step_7; + public ISO9141_KEYWORD2000__INIT_STEP Init_Step_8; + public ISO9141_KEYWORD2000__INIT_STEP Init_Step_9; + public ISO9141_KEYWORD2000__INIT_STEP Init_Step_10; + public ISO9141_KEYWORD2000__INIT_STEP Init_Step_11; + public ISO9141_KEYWORD2000__INIT_STEP Init_Step_12; + public ISO9141_KEYWORD2000__INIT_STEP Init_Step_13; + public ISO9141_KEYWORD2000__INIT_STEP Init_Step_14; + public ISO9141_KEYWORD2000__INIT_STEP Init_Step_15; + public byte init_step_count; + public UInt16 p2_500us; + public UInt16 p3_500us; + public UInt16 p4_500us; + public UInt16 chksum_enabled; + } + + [StructLayout(LayoutKind.Sequential, Pack = 2)] + public struct ISO9141_KEYWORD2000__INIT_STEP + { + public UInt16 time_500us; + public UInt16 k; + public UInt16 l; + } + + [StructLayout(LayoutKind.Sequential, Pack = 2)] + public struct TIMESYNC_ICSHARDWARE_SETTINGS + { + public byte MasterEnable; + public byte SlaveEnable; + public byte MasterNetwork; + public byte SlaveNetwork; + } + + [StructLayout(LayoutKind.Sequential, Pack = 2)] + public struct SRADSuperMoonSettingsPack + { + public UInt32 uiDevice; + public SRADSuperMoonSettings SuperMoonSettings; + } + + [StructLayout(LayoutKind.Sequential, Pack = 2)] + public struct SRADSuperMoonSettings + { + public UInt16 perf_en; + + public OP_ETH_GENERAL_SETTINGS opEthGen; + public OP_ETH_SETTINGS opEth1; + + public UInt16 network_enables; + public UInt16 network_enables_2; + public UInt16 network_enabled_on_boot; + public UInt16 network_enables_3; + + public STextAPISettings text_api; + + public UInt16 pc_com_mode; + public TIMESYNC_ICSHARDWARE_SETTINGS timeSyncSettings; + public UInt16 hwComLatencyTestEn; + } + + [StructLayout(LayoutKind.Sequential, Pack = 2)] + public struct SRADMoon2SettingsPack + { + public UInt32 uiDevice; + public SRADMoon2Settings Moon2Settings; + } + + [StructLayout(LayoutKind.Sequential, Pack = 2)] + public struct SRADMoon2Settings + { + public UInt16 perf_en; + public OP_ETH_GENERAL_SETTINGS opEthGen; + public OP_ETH_SETTINGS opEth1; + public UInt16 network_enables; + public UInt16 network_enables_2; + public UInt16 network_enabled_on_boot; + public UInt16 network_enables_3; + public STextAPISettings text_api; + public UInt16 pc_com_mode; + public TIMESYNC_ICSHARDWARE_SETTINGS timeSyncSettings; + public UInt16 hwComLatencyTestEn; + } + + [StructLayout(LayoutKind.Sequential, Pack = 2)] + public struct SRADGalaxySettings + { + public UInt16 perf_en; + + public OP_ETH_GENERAL_SETTINGS opEthGen; + public OP_ETH_SETTINGS opEth1; + public OP_ETH_SETTINGS opEth2; + public OP_ETH_SETTINGS opEth3; + public OP_ETH_SETTINGS opEth4; + public OP_ETH_SETTINGS opEth5; + public OP_ETH_SETTINGS opEth6; + public OP_ETH_SETTINGS opEth7; + public OP_ETH_SETTINGS opEth8; + public OP_ETH_SETTINGS opEth9; + public OP_ETH_SETTINGS opEth10; + public OP_ETH_SETTINGS opEth11; + public OP_ETH_SETTINGS opEth12; + + //CAN + public CAN_SETTINGS Can1; + public CANFD_SETTINGS Canfd1; + public CAN_SETTINGS Can2; + public CANFD_SETTINGS Canfd2; + public CAN_SETTINGS Can3; + public CANFD_SETTINGS Canfd3; + public CAN_SETTINGS Can4; + public CANFD_SETTINGS Canfd4; + public CAN_SETTINGS Can5; + public CANFD_SETTINGS Canfd5; + public CAN_SETTINGS Can6; + public CANFD_SETTINGS Canfd6; + public CAN_SETTINGS Can7; + public CANFD_SETTINGS Canfd7; + public CAN_SETTINGS Can8; + public CANFD_SETTINGS Canfd8; + + /* Native CAN are either LS1/LS2 or SW1/SW2 */ + public SWCAN_SETTINGS swcan1; + public UInt16 network_enables; + public SWCAN_SETTINGS swcan2; + public UInt16 network_enables_2; + + public LIN_SETTINGS lin1; + public UInt16 misc_io_initial_ddr; + public UInt16 misc_io_initial_latch; + public UInt16 misc_io_report_period; + public UInt16 misc_io_on_report_events; + public UInt16 misc_io_analog_enable; + public UInt16 ain_sample_period; + public UInt16 ain_threshold; + + public UInt32 pwr_man_timeout; + public UInt16 pwr_man_enable; + + public UInt16 network_enabled_on_boot; + + public UInt16 iso15765_separation_time_offset; + + public UInt16 iso_9141_kwp_enable_reserved; + public ISO9141_KEYWORD2000_SETTINGS iso9141_kwp_settings_1; + public UInt16 iso_parity_1; + + public UInt16 iso_msg_termination_1; + + public UInt16 idle_wakeup_network_enables_1; + public UInt16 idle_wakeup_network_enables_2; + + public UInt16 network_enables_3; + public UInt16 idle_wakeup_network_enables_3; + + public UInt16 can_switch_mode; + public STextAPISettings text_api; + public TIMESYNC_ICSHARDWARE_SETTINGS timeSyncSettings; + public UInt16 hwComLatencyTestEn; + } + + [StructLayout(LayoutKind.Sequential, Pack = 2)] + public struct SOBD2SimSettings + { + public UInt16 can1; + public UInt16 can2; + public UInt16 network_enables; + public UInt16 network_enabled_on_boot; + public UInt16 iso15765_separation_time_offset; + public UInt16 perf_en; + public UInt16 misc_io_initial_ddr; + public UInt16 misc_io_initial_latch; + public UInt16 misc_io_report_period; + public UInt16 misc_io_on_report_events; + public UInt16 misc_io_analog_enable; + public UInt16 ain_sample_period; + public UInt16 ain_threshold; + public UInt16 canfd1; + public UInt16 canfd2; + public UInt16 network_enables_2; + public UInt16 text_api; + } + + [StructLayout(LayoutKind.Sequential, Pack = 2)] + public struct SVividCANSettings + { + public UInt32 ecu_id; + public CAN_SETTINGS can1; + public SWCAN_SETTINGS swcan1; + public CAN_SETTINGS lsftcan1; + public UInt16 network_enables; + public UInt16 network_enabled_on_boot; + public UInt16 iso15765_separation_time_offset; + public UInt16 perf_en; + public UInt32 pwr_man_timeout; + public UInt16 pwr_man_enable; + public UInt16 can_switch_mode; + public UInt16 rsvd; + } + + [StructLayout(LayoutKind.Sequential, Pack = 2)] + public struct SRADStar2Settings + { + public UInt16 perf_en; + public OP_ETH_GENERAL_SETTINGS opEthGen; + public OP_ETH_SETTINGS opEth1; + public OP_ETH_SETTINGS opEth2; + public CAN_SETTINGS can1; + public CANFD_SETTINGS canfd1; + public CAN_SETTINGS can2; + public CANFD_SETTINGS canfd2; + public UInt16 network_enables; + public UInt16 network_enables_2; + public LIN_SETTINGS lin1; + public UInt16 misc_io_initial_ddr; + public UInt16 misc_io_initial_latch; + public UInt16 misc_io_report_period; + public UInt16 misc_io_on_report_events; + public UInt16 misc_io_analog_enable; + public UInt16 ain_sample_period; + public UInt16 ain_threshold; + public UInt32 pwr_man_timeout; + public UInt16 pwr_man_enable; + public UInt16 network_enabled_on_boot; + public UInt16 iso15765_separation_time_offset; + public UInt16 iso_9141_kwp_enable_reserved; + public ISO9141_KEYWORD2000_SETTINGS iso9141_kwp_settings_1; + public UInt16 iso_parity_1; + public UInt16 iso_msg_termination_1; + public UInt16 idle_wakeup_network_enables_1; + public UInt16 idle_wakeup_network_enables_2; + public UInt16 network_enables_3; + public UInt16 idle_wakeup_network_enables_3; + public UInt16 can_switch_mode; + public STextAPISettings text_api; + } + + [StructLayout(LayoutKind.Sequential, Pack = 2)] + public struct SFireSettings + { + public CAN_SETTINGS can1; + public CAN_SETTINGS can2; + public CAN_SETTINGS can3; + public CAN_SETTINGS can4; + public SWCAN_SETTINGS swcan; + public CAN_SETTINGS lsftcan; + public LIN_SETTINGS lin1; + public LIN_SETTINGS lin2; + public LIN_SETTINGS lin3; + public LIN_SETTINGS lin4; + + public UInt16 cgi_enable_reserved; + public UInt16 cgi_baud; + public UInt16 cgi_tx_ifs_bit_times; + public UInt16 cgi_rx_ifs_bit_times; + public UInt16 cgi_chksum_enable; + + public UInt16 network_enables; + public UInt16 network_enabled_on_boot; + + public UInt32 pwm_man_timeout; + public UInt16 pwr_man_enable; + + public UInt16 misc_io_initial_ddr; + public UInt16 misc_io_initial_latch; + public UInt16 misc_io_analog_enable; + public UInt16 misc_io_report_period; + public UInt16 misc_io_on_report_events; + public UInt16 ain_sample_period; + public UInt16 ain_threshold; + + //ISO 15765-2 Transport Layer + public UInt16 iso15765_separation_time_offset; + + //ISO9141 - KEYWORD 2000 + public UInt16 iso9141_kwp_enable_reserved; + public ISO9141_KEYWORD2000_SETTINGS iso9141_kwp_settings; + + //Performance Test + public UInt16 perf_en; + + //ISO9141 - Parity + public UInt16 iso_parity; // 0 - no parity, 1 - event, 2 - odd + public UInt16 iso_msg_termination; // 0 - use inner frame time, 1 - GME CIM-SCL + public UInt16 iso_tester_pullup_enable; + + //Additional network enables + public UInt16 network_enables_2; + + public ISO9141_KEYWORD2000_SETTINGS iso9141_kwp_settings_2; + public UInt16 iso_parity_2; // 0 - no parity, 1 - event, 2 - odd + public UInt16 iso_msg_termination_2; // 0 - use inner frame time, 1 - GME CIM-SCL + public ISO9141_KEYWORD2000_SETTINGS iso9141_kwp_settings_3; + public UInt16 iso_parity_3; // 0 - no parity, 1 - event, 2 - odd + public UInt16 iso_msg_termination_3; // 0 - use inner frame time, 1 - GME CIM-SCL + public ISO9141_KEYWORD2000_SETTINGS iso9141_kwp_settings_4; + public UInt16 iso_parity_4; // 0 - no parity, 1 - event, 2 - odd + public UInt16 iso_msg_termination_4; // 0 - use inner frame time, 1 - GME CIM-SCL + public UInt16 fast_init_network_enables_1; + public UInt16 fast_init_network_enables_2; + public UART_SETTINGS uart; + public UART_SETTINGS uart2; + public STextAPISettings text_api; + public SNeoMostGatewaySettings neoMostGateway; + public UInt16 vnetBits; //First bit enables Android Messages + } + + [StructLayout(LayoutKind.Sequential, Pack = 2)] + public struct SFire2Settings + { + public UInt16 perf_en; + public CAN_SETTINGS can1; + public CANFD_SETTINGS canfd1; + public CAN_SETTINGS can2; + public CANFD_SETTINGS canfd2; + public CAN_SETTINGS can3; + public CANFD_SETTINGS canfd3; + public CAN_SETTINGS can4; + public CANFD_SETTINGS canfd4; + public CAN_SETTINGS can5; + public CANFD_SETTINGS canfd5; + public CAN_SETTINGS can6; + public CANFD_SETTINGS canfd6; + public CAN_SETTINGS can7; + public CANFD_SETTINGS canfd7; + public CAN_SETTINGS can8; + public CANFD_SETTINGS canfd8; + public SWCAN_SETTINGS swcan1; + public UInt16 network_enables; + public SWCAN_SETTINGS swcan2; + public UInt16 network_enables_2; + public CAN_SETTINGS lsftcan1; + public CAN_SETTINGS lsftcan2; + public LIN_SETTINGS lin1; + public UInt16 misc_io_initial_ddr; + public LIN_SETTINGS lin2; + public UInt16 misc_io_initial_latch; + public LIN_SETTINGS lin3; + public UInt16 misc_io_report_period; + public LIN_SETTINGS lin4; + public UInt16 misc_io_on_report_events; + public LIN_SETTINGS lin5; + public UInt16 misc_io_analog_enable; + public UInt16 ain_sample_period; + public UInt16 ain_threshold; + public UInt32 pwr_man_timeout; + public UInt16 pwr_man_enable; + public UInt16 network_enabled_on_boot; + public UInt16 iso15765_separation_time_offset; + public UInt16 iso_9141_kwp_enable_reserved; + public ISO9141_KEYWORD2000_SETTINGS iso9141_kwp_settings_1; + public UInt16 iso_parity_1; + public ISO9141_KEYWORD2000_SETTINGS iso9141_kwp_settings_2; + public UInt16 iso_parity_2; + public ISO9141_KEYWORD2000_SETTINGS iso9141_kwp_settings_3; + public UInt16 iso_parity_3; + public ISO9141_KEYWORD2000_SETTINGS iso9141_kwp_settings_4; + public UInt16 iso_parity_4; + public UInt16 iso_msg_termination_1; + public UInt16 iso_msg_termination_2; + public UInt16 iso_msg_termination_3; + public UInt16 iso_msg_termination_4; + public UInt16 idle_wakeup_network_enables_1; + public UInt16 idle_wakeup_network_enables_2; + public UInt16 network_enables_3; + public UInt16 idle_wakeup_network_enables_3; + public UInt16 can_switch_mode; + public STextAPISettings text_api; + public UInt64 termination_enables; + public LIN_SETTINGS lin6; + public ETHERNET_SETTINGS ethernet; + public UInt16 slaveVnetA; + public UInt16 slaveVnetB; + public UInt32 flags; + public UInt16 digitalIoThresholdTicks; + public UInt16 digitalIoThresholdEnable; + } + + [StructLayout(LayoutKind.Sequential, Pack = 2)] + public struct SRADPlutoSettingsPack + { + public UInt32 uiDevice; + public SRADPlutoSettings PlutoSettings; + } + + [StructLayout(LayoutKind.Sequential, Pack = 2)] + public struct SRADPlutoSettings + { + public UInt16 perf_en; + public CAN_SETTINGS can1; + public CANFD_SETTINGS canfd1; + public CAN_SETTINGS can2; + public CANFD_SETTINGS canfd2; + public LIN_SETTINGS lin1; + + public UInt16 network_enables; + public UInt16 network_enables_2; + public UInt16 network_enables_3; + public UInt64 termination_enables; + public UInt16 misc_io_analog_enable; + + public UInt32 pwr_man_timeout; + public UInt16 pwr_man_enable; + + public UInt16 network_enabled_on_boot; + + //ISO15765-2 Transport Layer + public UInt16 iso15765_separation_time_offset; + public UInt16 iso9141_kwp_enable_reserved; + public UInt16 iso_tester_pullup_enable; + public UInt16 iso_parity; + public UInt16 iso_msg_termination; + public ISO9141_KEYWORD2000_SETTINGS iso9141_kwp_settings_1; + public ETHERNET_SETTINGS ethernet; + + public STextAPISettings text_api; + public UInt32 Flags; + //Flag values + //disableUsbCheckOnBoot 1 + //enableLatencyTest 2 + //enablePcEthernetComm 4 + public SPluto_CustomParams custom; + } + + [StructLayout(LayoutKind.Sequential, Pack = 2)] + public struct SPluto_CustomParams + { + public Byte mode0; + public Byte mode1; + public Byte mode2; + public Byte mode3; + public Byte mode4; + public Byte speed0; + public Byte speed1; + public Byte speed2; + public Byte speed3; + public Byte speed4; + public Byte PhyEnable0; + public Byte PhyEnable1; + public Byte PhyEnable2; + public Byte PhyEnable3; + public Byte PhyEnable4; + public Byte ae1Select; + public Byte usbSelect; + public Byte pad; + } + + + + //_stChipVersions + [StructLayout(LayoutKind.Sequential, Pack = 2)] + public struct fire_versions + { + public Byte mpic_maj; + public Byte mpic_min; + public Byte upic_maj; + public Byte upic_min; + public Byte lpic_maj; + public Byte lpic_min; + public Byte jpic_maj; + public Byte jpic_min; + } + + [StructLayout(LayoutKind.Sequential, Pack = 2)] + public struct plasma_fire_vnet + { + public Byte mpic_maj; + public Byte mpic_min; + public Byte core_maj; + public Byte core_min; + public Byte lpic_maj; + public Byte lpic_min; + public Byte hid_maj; + public Byte hid_min; + } + + [StructLayout(LayoutKind.Sequential, Pack = 2)] + public struct vcan3_versions + { + public Byte mpic_maj; + public Byte mpic_min; + public UInt32 Reserve; + public UInt16 Reserve2; + } + + + [StructLayout(LayoutKind.Sequential, Pack = 2)] + public struct stCM_ISO157652_TxMessage + { + //transmit message + public UInt16 vs_netid; //< The netid of the message (determines which network to transmit on), not supported + public byte padding; //< The padding byte to use to fill the unused portion of + // transmitted CAN frames (single frame, first frame, consecutive frame). + public byte reserved2; + public UInt32 id; //< arbId of transmitted frames (CAN id to transmit to). + public UInt32 fc_id; //< flow control arb id filter value (response id from receiver). + public UInt32 fc_id_mask; //< The flow control arb filter mask (response id from receiver). + public byte stMin;//< Overrides the stMin that the receiver reports, see overrideSTmin. Set to J2534's STMIN_TX if <= 0xFF. + public byte blockSize; //< Overrides the block size that the receiver reports, see overrideBlockSize. Set to J2534's BS_TX if <= 0xFF. + public byte flowControlExtendedAddress;//< Expected Extended Address byte of response from receiver. see fc_ext_address_enable, not supported. + public byte extendedAddress;//< Extended Address byte of transmitter. see ext_address_enable, not supported. + + //flow control timeouts + public UInt16 fs_timeout; //< max timeout (ms) for waiting on flow control respons. Set this to N_BS_MAX's value if J2534. + public UInt16 fs_wait; //< max timeout (ms) for waiting on flow control response after receiving flow control + ///with flow status set to WAIT. Set this to N_BS_MAX's value if J2534. + //****************************************************************************************************************** + [MarshalAs(UnmanagedType.ByValArray, SizeConst = 4095)] public byte[] data; + // call: stCM_ISO157652_TxMessage.data = new byte(4096) + //****************************************************************************************************************** + public UInt32 num_bytes; //< Number of data bytes + //option bits + public UInt16 flags; + //To set the flags, AND the parameter you want from the stCM_ISO157652_TxMessage_Flags Enum + public byte Reserved; + public byte tx_dl; + } + + public enum stCM_ISO157652_TxMessage_Flags : int + { + id_29_bit_enable = 1, //< Enables 29 bit arbId for transmitted frames. Set to 1 so transmitted frames use 29 bit ids, not supported. + fc_id_29_bit_enable = 2, //< Enables 29 bit arbId for Flow Control filter. Set to 1 if receiver response uses 29 bit ids, not supported. + ext_address_enable = 4, //< Enables Extended Addressing, Set to 1 if transmitted frames should have extended addres byte, not supported. + fc_ext_address_enable = 8, //< Enables Extended Addressing for Flow Control filter. Set to 1 if receiver responds with extended address byte, not supported. + overrideSTmin = 16, //< Uses member stMin and not receiver's flow control's stMin. + overrideBlockSize = 32, //< Uses member BlockSize and not receiver's flow control's BlockSize. + paddingEnable = 64, //< Enable's padding + iscanFD = 128, //Enables CAN FD + isBSREnabled = 256, //Enables BSR + } + + [StructLayout(LayoutKind.Sequential, Pack = 2)] + public struct stCM_ISO157652_RxMessage + { + //transmit message + public UInt16 vs_netid; //< The netid of the message (determines which network to decode receives), not supported + public byte padding;//< The padding byte to use to fill the unused portion of + /// transmitted CAN frames (flow control), see paddingEnable. + public UInt32 id; //< ArbId filter value for frames from transmitter (from ECU to neoVI). + public UInt32 id_mask; //< ArbId filter mask for frames from transmitter (from ECU to neoVI). + public UInt32 fc_id; //< flow control arbId to transmit in flow control (from neoVI to ECU). + public byte flowControlExtendedAddress; //< Extended Address byte used in flow control (from neoVI to ECU). see fc_ext_address_enable. + public byte extendedAddress; //< Expected Extended Address byte of frames sent by transmitter (from ECU to neoVI). see ext_address_enable. + public byte blockSize; //< Block Size to report in flow control response. + public byte stMin; //< Minimum seperation time (between consecutive frames) to report in flow control response. + //flow control timeouts + public UInt16 cf_timeout; //< max timeout (ms) for waiting on consecutive frame. Set this to N_CR_MAX's value in J2534. + //option bits + public UInt32 flags; + //To set the flags, AND the parameter you want from the stCM_ISO157652_RxMessage_Flags Enum + public byte reserved0; + public byte reserved1; + public byte reserved2; + public byte reserved3; + public byte reserved4; + public byte reserved5; + public byte reserved6; + public byte reserved7; + public byte reserved8; + public byte reserved9; + public byte reserved10; + public byte reserved11; + public byte reserved12; + public byte reserved13; + public byte reserved14; + public byte reserved15; + } + + + public enum stCM_ISO157652_RxMessage_Flags : int + { + id_29_bit_enable = 1, //< Enables 29 bit arbId filter for frames (from ECU to neoVI). + fc_id_29_bit_enable = 2, //< Enables 29 bit arbId for Flow Control (from neoVI to ECU). + ext_address_enable = 4, //< Enables Extended Addressing (from ECU to neoVI). + fc_ext_address_enable = 8, //< Enables Extended Addressing (from neoVI to ECU). + enableFlowControlTransmission = 16, //< Enables Flow Control frame transmission (from neoVI to ECU). + paddingEnable = 32, //< Enable's padding + iscanFD = 64, + isBRSEnabled = 128, + } + + [StructLayout(LayoutKind.Sequential)] + public struct PhyRegPktClauseMess_t + { + public byte phyAddrOrPort; //5 bits clause 22 uses Address, 45 Uses Port + public byte pageOrDevice; //5 bits clause 22 uses page, 45 Uses Device + public UInt16 regAddr; //5 bits + public UInt16 regVal; + } //6 bytes + + public enum PhyRegFlags : short + { + Enabled = 1, + WriteEnable = 2, + Clause45Enable = 4, + } + + [StructLayout(LayoutKind.Sequential)] + public struct PhyRegPkt_t + { + public UInt16 Flags; + public PhyRegPktClauseMess_t ClausePkt; + } + + public class icsNeoDll + { + public const double NEOVI_TIMEHARDWARE2_SCALING = 0.1048576; + public const double NEOVI_TIMEHARDWARE_SCALING = 0.0000016; + + public const double NEOVIPRO_VCAN_TIMEHARDWARE2_SCALING = 0.065536; + public const double NEOVIPRO_VCAN_TIMEHARDWARE_SCALING = 0.000001; + + // med speed CAN + public const Int16 NEO_CFG_MPIC_MS_CAN_CNF1 = 512 + 22; + public const Int16 NEO_CFG_MPIC_MS_CAN_CNF2 = 512 + 21; + public const Int16 NEO_CFG_MPIC_MS_CAN_CNF3 = 512 + 20; + + public const Int16 NEO_CFG_MPIC_SW_CAN_CNF1 = 512 + 34; + public const Int16 NEO_CFG_MPIC_SW_CAN_CNF2 = 512 + 33; + public const Int16 NEO_CFG_MPIC_SW_CAN_CNF3 = 512 + 32; + + public const Int16 NEO_CFG_MPIC_LSFT_CAN_CNF1 = 512 + 46; + public const Int16 NEO_CFG_MPIC_LSFT_CAN_CNF2 = 512 + 45; + public const Int16 NEO_CFG_MPIC_LSFT_CAN_CNF3 = 512 + 44; + + // Protocols + public const Int16 SPY_PROTOCOL_CUSTOM = 0; + public const Int16 SPY_PROTOCOL_CAN = 1; + public const Int16 SPY_PROTOCOL_GMLAN = 2; + public const Int16 SPY_PROTOCOL_J1850VPW = 3; + public const Int16 SPY_PROTOCOL_J1850PWM = 4; + public const Int16 SPY_PROTOCOL_ISO9141 = 5; + public const Int16 SPY_PROTOCOL_Keyword2000 = 6; + public const Int16 SPY_PROTOCOL_GM_ALDL_UART = 7; + public const Int16 SPY_PROTOCOL_CHRYSLER_CCD = 8; + public const Int16 SPY_PROTOCOL_CHRYSLER_SCI = 9; + public const Int16 SPY_PROTOCOL_FORD_UBP = 10; + public const Int16 SPY_PROTOCOL_BEAN = 11; + public const Int16 SPY_PROTOCOL_LIN = 12; + + + + [DllImport("icsneo40.dll")] + public static extern Int32 icsneoFindNeoDevices(UInt32 DeviceTypes, ref NeoDevice pNeoDevice, ref Int32 pNumDevices); + [DllImport("icsneo40.dll")] + public static extern Int32 icsneoFindDevices(ref NeoDeviceEx pNeoDevice, ref Int32 pNumDevices, UInt32 DeviceTypes, UInt32 numDeviceTypes, ref OptionsNeoEx pOptionsFindNeoEx, UInt32 reserved); + [DllImport("icsneo40.dll")] + public static extern Int32 icsneoOpenNeoDevice(ref NeoDevice pNeoDevice, ref IntPtr hObject, ref byte bNetworkIDs, Int32 bConfigRead, Int32 bSyncToPC); + [DllImport("icsneo40.dll")] + public static extern Int32 icsneoClosePort(IntPtr hObject, ref Int32 pNumberOfErrors); + [DllImport("icsneo40.dll")] + public static extern void icsneoFreeObject(IntPtr hObject); + [DllImport("icsneo40.dll")] + public static extern Int32 icsneoOpenPortEx(Int32 lPortNumber, Int32 lPortType, Int32 lDriverType, Int32 lIPAddressMSB, Int32 lIPAddressLSBOrBaudRate, Int32 bConfigRead, ref byte bNetworkID, ref IntPtr hObject); + [DllImport("icsneo40.dll")] + public static extern Int32 icsneoGetMessages(IntPtr hObject, ref icsSpyMessage pMsg, ref Int32 pNumberOfMessages, ref Int32 pNumberOfErrors); + [DllImport("icsneo40.dll")] + public static extern Int32 icsneoTxMessages(IntPtr hObject, ref icsSpyMessageJ1850 pMsg, Int32 lNetworkID, Int32 lNumMessages); + [DllImport("icsneo40.dll")] + public static extern Int32 icsneoTxMessagesEx(IntPtr hObject, ref icsSpyMessage pMsg, UInt32 lNetworkID, UInt32 lNumMessages, ref UInt32 NumTxed, UInt32 reserved); + [DllImport("icsneo40.dll")] + public static extern Int32 icsneoTxMessages(IntPtr hObject, ref icsSpyMessage pMsg, Int32 lNetworkID, Int32 lNumMessages); + [DllImport("icsneo40.dll")] + public static extern Int32 icsneoWaitForRxMessagesWithTimeOut(IntPtr hObject, UInt32 iTimeOut); + [DllImport("icsneo40.dll")] + public static extern Int32 icsneoEnableNetworkRXQueue(IntPtr hObject, Int32 iEnable); + [DllImport("icsneo40.dll")] + public static extern Int32 icsneoGetTimeStampForMsg(IntPtr hObject, ref icsSpyMessage pMsg, ref double pTimeStamp); + [DllImport("icsneo40.dll")] + public static extern void icsneoGetISO15765Status(IntPtr hObject, Int32 lNetwork, Int32 lClearTxStatus, Int32 lClearRxStatus, ref Int32 lTxStatus, ref Int32 lRxStatus); + [DllImport("icsneo40.dll")] + public static extern Int32 icsneoGetConfiguration(IntPtr hObject, ref byte pData, ref Int32 lNumBytes); + [DllImport("icsneo40.dll")] + public static extern Int32 icsneoSendConfiguration(IntPtr hObject, ref byte pData, Int32 lNumBytes); + + + [DllImport("icsneo40.dll")] + public static extern Int32 icsneoGetFireSettings(IntPtr hObject, ref SFireSettings pSettings, Int32 iNumBytes); + [DllImport("icsneo40.dll")] + public static extern Int32 icsneoSetFireSettings(IntPtr hObject, ref SFireSettings pSettings, Int32 iNumBytes, Int32 bSaveToEEPROM); + [DllImport("icsneo40.dll")] + public static extern Int32 icsneoGetVCAN3Settings(IntPtr hObject, ref SVCAN3Settings pSettings, Int32 iNumBytes); + [DllImport("icsneo40.dll")] + public static extern Int32 icsneoSetVCAN3Settings(IntPtr hObject, ref SVCAN3Settings pSettings, Int32 iNumBytes, Int32 bSaveToEEPROM); + + [DllImport("icsneo40.dll")] + public static extern Int32 icsneoGetVCAN412Settings(IntPtr hObject, ref SVCAN412Settings pSettings, Int32 iNumBytes); + [DllImport("icsneo40.dll")] + public static extern Int32 icsneoSetVCAN412Settings(IntPtr hObject, ref SVCAN412Settings pSettings, Int32 iNumBytes, Int32 bSaveToEEPROM); + + [DllImport("icsneo40.dll")] + public static extern Int32 icsneoGetFire2Settings(IntPtr hObject, ref SFire2Settings pSettings, Int32 iNumBytes); + [DllImport("icsneo40.dll")] + public static extern Int32 icsneoSetFire2Settings(IntPtr hObject, ref SFire2Settings pSettings, Int32 iNumBytes, Int32 bSaveToEEPROM); + + [DllImport("icsneo40.dll")] + public static extern Int32 icsneoGetRADStar2Settings(IntPtr hObject, ref SRADStar2Settings pSettings, Int32 iNumBytes); + [DllImport("icsneo40.dll")] + public static extern Int32 icsneoSetRADStar2Settings(IntPtr hObject, ref SRADStar2Settings pSettings, Int32 iNumBytes, Int32 bSaveToEEPROM); + + [DllImport("icsneo40.dll")] + public static extern Int32 icsneoGetRADGalaxySettings(IntPtr hObject, ref SRADGalaxySettings pSettings, Int32 iNumBytes); + [DllImport("icsneo40.dll")] + public static extern Int32 icsneoSetRADGalaxySettings(IntPtr hObject, ref SRADGalaxySettings pSettings, Int32 iNumBytes, Int32 bSaveToEEPROM); + + [DllImport("icsneo40.dll")] + public static extern Int32 icsneoGetVCANRFSettings(IntPtr hObject, ref SVCANRFSettings pSettings, Int32 iNumBytes); + [DllImport("icsneo40.dll")] + public static extern Int32 icsneoSetVCANRFSettings(IntPtr hObject, ref SVCANRFSettings pSettings, Int32 iNumBytes, Int32 bSaveToEEPROM); + [DllImport("icsneo40.dll")] + public static extern Int32 icsneoSetDeviceSettings(IntPtr hObject, ref SRADPlutoSettingsPack pSettings, Int32 iNumBytes, Int32 bSaveToEEPROM, Int32 VnetChan); + [DllImport("icsneo40.dll")] + public static extern Int32 icsneoGetDeviceSettings(IntPtr hObject, ref SRADPlutoSettingsPack pSettings, Int32 iNumBytes, Int32 VnetChan); + + + [DllImport("icsneo40.dll")] + public static extern Int32 icsneoSetBitRate(IntPtr hObject, Int32 BitRate, Int32 NetworkID); + [DllImport("icsneo40.dll")] + public static extern Int32 icsneoSetFDBitRate(IntPtr hObject, Int32 BitRate, Int32 NetworkID); + [DllImport("icsneo40.dll")] + public static extern Int32 icsneoGetDeviceParameters(IntPtr hObject, ref char pParameter, ref char pValues, Int16 ValuesLength); + [DllImport("icsneo40.dll")] + public static extern Int32 icsneoSetDeviceParameters(IntPtr hObject, ref char pParmValue, ref Int32 pErrorIndex, Int32 bSaveToEEPROM); + [DllImport("icsneo40.dll")] + public static extern Int32 icsneoGetLastAPIError(IntPtr hObject, ref UInt32 pErrorNumber); + [DllImport("icsneo40.dll")] + public static extern Int32 icsneoGetErrorMessages(IntPtr hObject, ref Int32 pErrorMsgs, ref Int32 pNumberOfErrors); + [DllImport("icsneo40.dll")] + public static extern int icsneoGetErrorInfo(int iErrorNumber, StringBuilder sErrorDescriptionShort, StringBuilder sErrorDescriptionLong, ref int iMaxLengthShort, ref int iMaxLengthLong, ref int lErrorSeverity, ref int lRestartNeeded); + [DllImport("icsneo40.dll")] + public static extern Int32 icsneoValidateHObject(IntPtr hObject); + [DllImport("icsneo40.dll")] + public static extern Int32 icsneoGetDLLVersion(); + [DllImport("icsneo40.dll")] + public static extern Int32 icsneoStartSockServer(IntPtr hObject, Int32 iPort); + [DllImport("icsneo40.dll")] + public static extern Int32 icsneoStopSockServer(IntPtr hObject); + [DllImport("icsneo40.dll")] + public static extern Int32 icsneoScriptStart(IntPtr hObject, Int32 iLocation); + [DllImport("icsneo40.dll")] + public static extern Int32 icsneoScriptStop(IntPtr hObject); + [DllImport("icsneo40.dll")] + public static extern Int32 icsneoScriptLoad(IntPtr hObject, ref byte bin, UInt32 len_bytes, Int32 iLocation); + [DllImport("icsneo40.dll")] + public static extern Int32 icsneoScriptClear(IntPtr hObject, Int32 iLocation); + [DllImport("icsneo40.dll")] + public static extern Int32 icsneoScriptStartFBlock(IntPtr hObject, UInt32 fb_index); + [DllImport("icsneo40.dll")] + public static extern Int32 icsneoScriptGetFBlockStatus(IntPtr hObject, UInt32 fb_index, ref Int32 piRunStatus); + [DllImport("icsneo40.dll")] + public static extern Int32 icsneoScriptStopFBlock(IntPtr hObject, UInt32 fb_index); + [DllImport("icsneo40.dll")] + public static extern Int32 icsneoScriptGetScriptStatus(IntPtr hObject, ref Int32 piStatus); + [DllImport("icsneo40.dll")] + public static extern Int32 icsneoOpenPort(Int32 lPortNumber, Int32 lPortType, Int32 lDriverType, ref byte bNetworkID, ref byte bSCPIDs, ref IntPtr hObject); + [DllImport("icsneo40.dll")] + public static extern Int32 icsneoEnableNetworkCom(IntPtr hObject, Int32 Enable); + [DllImport("icsneo40.dll")] + public static extern Int32 icsneoISO15765_DisableNetworks(IntPtr hObject); + [DllImport("icsneo40.dll")] + public static extern Int32 icsneoISO15765_EnableNetworks(IntPtr hObject, Int32 Network); + [DllImport("icsneo40.dll")] + public static extern Int32 icsneoFindAllCOMDevices(Int32 lDriverType, Int32 lGetSerialNumbers, Int32 lStopAtFirst, Int32 lUSBCommOnly, ref Int32 p_lDeviceTypes, ref Int32 p_lComPorts, ref Int32 p_lSerialNumbers, ref Int32 lNumDevices); + [DllImport("icsneo40.dll")] + public static extern Int32 icsneoISO15765_TransmitMessage(IntPtr hObject, Int32 ulNetworkID, ref stCM_ISO157652_TxMessage pMsg, Int32 ulBlockingTimeout); + [DllImport("icsneo40.dll")] + public static extern Int32 icsneoISO15765_ReceiveMessage(IntPtr hObject, Int32 ulNetworkID, ref stCM_ISO157652_RxMessage pMsg); + [DllImport("icsneo40.dll")] + public static extern Int32 icsneoSerialNumberToString(UInt32 Serial, ref byte Data, ref UInt32 DataSize); + [DllImport("icsneo40.dll")] + public static extern Int32 icsneoReadWritePHYSettings(IntPtr hObject, ref PhyRegPkt_t PHYSettings, IntPtr size, IntPtr NumEntries); + + public static double icsneoGetTimeStamp(long TimeHardware, long TimeHardware2) + { + return NEOVI_TIMEHARDWARE2_SCALING * TimeHardware2 + NEOVI_TIMEHARDWARE_SCALING * TimeHardware; + } + + public static void ConvertCANtoJ1850Message(ref icsSpyMessage icsCANStruct, ref icsSpyMessageJ1850 icsJ1850Struct) + { + icsJ1850Struct.StatusBitField = icsCANStruct.StatusBitField; + icsJ1850Struct.StatusBitField2 = icsCANStruct.StatusBitField2; + icsJ1850Struct.TimeHardware = icsCANStruct.TimeHardware; + icsJ1850Struct.TimeHardware2 = icsCANStruct.TimeHardware2; + icsJ1850Struct.TimeSystem = icsCANStruct.TimeSystem; + icsJ1850Struct.TimeSystem2 = icsCANStruct.TimeSystem2; + icsJ1850Struct.TimeStampHardwareID = icsCANStruct.TimeStampHardwareID; + icsJ1850Struct.TimeStampSystemID = icsCANStruct.TimeStampSystemID; + icsJ1850Struct.NetworkID = icsCANStruct.NetworkID; + icsJ1850Struct.NodeID = icsCANStruct.NodeID; + icsJ1850Struct.Protocol = icsCANStruct.Protocol; + icsJ1850Struct.MessagePieceID = icsCANStruct.MessagePieceID; + icsJ1850Struct.ExtraDataPtrEnabled = icsCANStruct.ExtraDataPtrEnabled; + icsJ1850Struct.NumberBytesHeader = icsCANStruct.NumberBytesHeader; + icsJ1850Struct.NumberBytesData = icsCANStruct.NumberBytesData; + icsJ1850Struct.DescriptionID = icsCANStruct.DescriptionID; + icsJ1850Struct.Header1 = Convert.ToByte(icsCANStruct.ArbIDOrHeader & 0xff); + icsJ1850Struct.Header2 = Convert.ToByte((0xFF00 & icsCANStruct.ArbIDOrHeader) / 256); + icsJ1850Struct.Header3 = Convert.ToByte((0xFF0000 & icsCANStruct.ArbIDOrHeader) / 65536); + icsJ1850Struct.Data1 = icsCANStruct.Data1; + icsJ1850Struct.Data2 = icsCANStruct.Data2; + icsJ1850Struct.Data3 = icsCANStruct.Data3; + icsJ1850Struct.Data4 = icsCANStruct.Data4; + icsJ1850Struct.Data5 = icsCANStruct.Data5; + icsJ1850Struct.Data6 = icsCANStruct.Data6; + icsJ1850Struct.Data7 = icsCANStruct.Data7; + icsJ1850Struct.Data8 = icsCANStruct.Data8; + icsJ1850Struct.ACK4 = Convert.ToByte((icsCANStruct.StatusBitField3 & 0xFF000000) >> 24); + icsJ1850Struct.ACK3 = Convert.ToByte((icsCANStruct.StatusBitField3 & 0xFF0000) >> 16); + icsJ1850Struct.ACK2 = Convert.ToByte((icsCANStruct.StatusBitField3 & 0xFF00) >> 8); + icsJ1850Struct.ACK1 = Convert.ToByte((icsCANStruct.StatusBitField3 & 0xFF)); + icsJ1850Struct.ACK8 = Convert.ToByte((icsCANStruct.StatusBitField4 & 0xFF000000) >> 24); + icsJ1850Struct.ACK7 = Convert.ToByte((icsCANStruct.StatusBitField4 & 0xFF0000) >> 16); + icsJ1850Struct.ACK6 = Convert.ToByte((icsCANStruct.StatusBitField4 & 0xFF00) >> 8); + icsJ1850Struct.ACK5 = Convert.ToByte((icsCANStruct.StatusBitField4 & 0xFF)); + icsJ1850Struct.iExtraDataPtr = icsCANStruct.iExtraDataPtr; + icsJ1850Struct.MiscData = icsCANStruct.MiscData; + } + + public static void ConvertJ1850toCAN(ref icsSpyMessage icsCANStruct, ref icsSpyMessageJ1850 icsJ1850Struct) + { + //Becuse memcopy is not available. + icsCANStruct.StatusBitField = icsJ1850Struct.StatusBitField; + icsCANStruct.StatusBitField2 = icsJ1850Struct.StatusBitField2; + icsCANStruct.TimeHardware = icsJ1850Struct.TimeHardware; + icsCANStruct.TimeHardware2 = icsJ1850Struct.TimeHardware2; + icsCANStruct.TimeSystem = icsJ1850Struct.TimeSystem; + icsCANStruct.TimeSystem2 = icsJ1850Struct.TimeSystem2; + icsCANStruct.TimeStampHardwareID = icsJ1850Struct.TimeStampHardwareID; + icsCANStruct.TimeStampSystemID = icsJ1850Struct.TimeStampSystemID; + icsCANStruct.NetworkID = icsJ1850Struct.NetworkID; + icsCANStruct.NodeID = icsJ1850Struct.NodeID; + icsCANStruct.Protocol = icsJ1850Struct.Protocol; + icsCANStruct.MessagePieceID = icsJ1850Struct.MessagePieceID; + icsCANStruct.ExtraDataPtrEnabled = icsJ1850Struct.ExtraDataPtrEnabled; + icsCANStruct.NumberBytesHeader = icsJ1850Struct.NumberBytesHeader; + icsCANStruct.NumberBytesData = icsJ1850Struct.NumberBytesData; + icsCANStruct.DescriptionID = icsJ1850Struct.DescriptionID; + icsCANStruct.ArbIDOrHeader = (icsJ1850Struct.Header3 * 65536) + (icsJ1850Struct.Header2 * 256) + icsJ1850Struct.Header1; + icsCANStruct.Data1 = icsJ1850Struct.Data1; + icsCANStruct.Data2 = icsJ1850Struct.Data2; + icsCANStruct.Data3 = icsJ1850Struct.Data3; + icsCANStruct.Data4 = icsJ1850Struct.Data4; + icsCANStruct.Data5 = icsJ1850Struct.Data5; + icsCANStruct.Data6 = icsJ1850Struct.Data6; + icsCANStruct.Data7 = icsJ1850Struct.Data7; + icsCANStruct.Data8 = icsJ1850Struct.Data8; + icsCANStruct.StatusBitField3 = (icsJ1850Struct.ACK1 << 24) + (icsJ1850Struct.ACK2 << 16) + (icsJ1850Struct.ACK3 << 8) + (icsJ1850Struct.ACK4); + icsCANStruct.StatusBitField4 = (icsJ1850Struct.ACK5 << 24) + (icsJ1850Struct.ACK6 << 16) + (icsJ1850Struct.ACK7 << 8) + (icsJ1850Struct.ACK8); + icsCANStruct.iExtraDataPtr = icsJ1850Struct.iExtraDataPtr; + icsCANStruct.MiscData = icsJ1850Struct.MiscData; + } + + public static string ConvertToHex(string sInput) + { + string sOut; + uint uiDecimal = 0; + + try + { + //Convert text string to unsigned Int32eger + uiDecimal = checked((uint)System.Convert.ToUInt32(sInput)); + } + catch (System.OverflowException) + { + sOut = "Overflow"; + return sOut; + } + //Format unsigned Int32eger value to hex + sOut = String.Format("{0:x2}", uiDecimal); + return sOut; + } + + public static Int32 ConvertFromHex(string num) + { + //To hold our converted unsigned Int32eger32 value + uint uiHex = 0; + try + { + // Convert hex string to unsigned Int32eger + uiHex = System.Convert.ToUInt32(num, 16); + } + catch (System.OverflowException) + { + // + } + return Convert.ToInt32(uiHex); + } + + public static Int32 GetNetworkIDfromString(ref string NetworkName) + { + switch (NetworkName) + { + case "DEVICE": + return ((int)eNETWORK_ID.NETID_DEVICE); + case "HSCAN": + return ((int)eNETWORK_ID.NETID_HSCAN); + case "MSCAN": + return ((int)eNETWORK_ID.NETID_MSCAN); + case "SWCAN": + return ((int)eNETWORK_ID.NETID_SWCAN); + case "LSFTCAN": + return ((int)eNETWORK_ID.NETID_LSFTCAN); + case "ISO": + return ((int)eNETWORK_ID.NETID_ISO); + case "ISO2": + return ((int)eNETWORK_ID.NETID_ISO2); + case "ISO14230": + return ((int)eNETWORK_ID.NETID_ISO14230); + case "LIN": + return ((int)eNETWORK_ID.NETID_LIN); + case "ISO3": + return ((int)eNETWORK_ID.NETID_ISO3); + case "HSCAN2": + return ((int)eNETWORK_ID.NETID_HSCAN2); + case "HSCAN3": + return ((int)eNETWORK_ID.NETID_HSCAN3); + case "ISO4": + return ((int)eNETWORK_ID.NETID_ISO4); + case "LIN2": + return ((int)eNETWORK_ID.NETID_LIN2); + case "LIN3": + return ((int)eNETWORK_ID.NETID_LIN3); + case "LIN4": + return ((int)eNETWORK_ID.NETID_LIN4); + case "LIN5": + return ((int)eNETWORK_ID.NETID_LIN5); + case "MOST": + return ((int)eNETWORK_ID.NETID_MOST); + case "CGI": + return ((int)eNETWORK_ID.NETID_CGI); + case "HSCAN4": + return ((int)eNETWORK_ID.NETID_HSCAN4); + case "HSCAN5": + return ((int)eNETWORK_ID.NETID_HSCAN5); + case "UART": + return ((int)eNETWORK_ID.NETID_UART); + case "UART2": + return ((int)eNETWORK_ID.NETID_UART2); + case "UART3": + return ((int)eNETWORK_ID.NETID_UART3); + case "UART4": + return ((int)eNETWORK_ID.NETID_UART4); + case "SWCAN2": + return ((int)eNETWORK_ID.NETID_SWCAN2); + case "ETHERNE": + return ((int)eNETWORK_ID.NETID_ETHERNET_DAQ); + case "FLEXRAY1A": + return ((int)eNETWORK_ID.NETID_FLEXRAY1A); + case "FLEXRAY1B": + return ((int)eNETWORK_ID.NETID_FLEXRAY1B); + case "FLEXRAY2A": + return ((int)eNETWORK_ID.NETID_FLEXRAY2A); + case "FLEXRAY2B": + return ((int)eNETWORK_ID.NETID_FLEXRAY2B); + case "FLEXRAY": + return ((int)eNETWORK_ID.NETID_FLEXRAY); + case "MOST25": + return ((int)eNETWORK_ID.NETID_MOST25); + case "MOST50": + return ((int)eNETWORK_ID.NETID_MOST50); + case "MOST150": + return ((int)eNETWORK_ID.NETID_MOST150); + case "ETHERNET": + return ((int)eNETWORK_ID.NETID_ETHERNET); + case "HSCAN6": + return ((int)eNETWORK_ID.NETID_HSCAN6); + case "HSCAN7": + return ((int)eNETWORK_ID.NETID_HSCAN7); + case "LIN6": + return ((int)eNETWORK_ID.NETID_LIN6); + case "LSFTCAN2": + return ((int)eNETWORK_ID.NETID_LSFTCAN2); + case "OP_ETHERNET1": + return ((int)eNETWORK_ID.NETID_OP_ETHERNET1); + case "OP_ETHERNET2": + return ((int)eNETWORK_ID.NETID_OP_ETHERNET2); + case "OP_ETHERNET3": + return ((int)eNETWORK_ID.NETID_OP_ETHERNET3); + case "OP_ETHERNET4": + return ((int)eNETWORK_ID.NETID_OP_ETHERNET4); + case "OP_ETHERNET5": + return ((int)eNETWORK_ID.NETID_OP_ETHERNET5); + case "OP_ETHERNET6": + return ((int)eNETWORK_ID.NETID_OP_ETHERNET6); + case "OP_ETHERNET7": + return ((int)eNETWORK_ID.NETID_OP_ETHERNET7); + case "OP_ETHERNET8": + return ((int)eNETWORK_ID.NETID_OP_ETHERNET8); + case "OP_ETHERNET9": + return ((int)eNETWORK_ID.NETID_OP_ETHERNET9); + case "OP_ETHERNET10": + return ((int)eNETWORK_ID.NETID_OP_ETHERNET10); + case "OP_ETHERNET11": + return ((int)eNETWORK_ID.NETID_OP_ETHERNET11); + case "OP_ETHERNET12": + return ((int)eNETWORK_ID.NETID_OP_ETHERNET12); + } + return (-1); + } + + + public static string GetStringForNetworkID(Int16 lNetworkID) + { + string sTempOutput = "N/A"; + switch (lNetworkID) + { + case (short)eNETWORK_ID.NETID_DEVICE: + sTempOutput = "DEVICE"; + break; + case (short)eNETWORK_ID.NETID_HSCAN: + sTempOutput = "HSCAN"; + break; + case (short)eNETWORK_ID.NETID_MSCAN: + sTempOutput = "MSCAN"; + break; + case (short)eNETWORK_ID.NETID_SWCAN: + sTempOutput = "SWCAN"; + break; + case (short)eNETWORK_ID.NETID_LSFTCAN: + sTempOutput = "LSFTCAN"; + break; + case (short)eNETWORK_ID.NETID_ISO: + sTempOutput = "ISO"; + break; + case (short)eNETWORK_ID.NETID_ISO2: + sTempOutput = "ISO2"; + break; + case (short)eNETWORK_ID.NETID_ISO14230: + sTempOutput = "ISO14230"; + break; + case (short)eNETWORK_ID.NETID_LIN: + sTempOutput = "LIN"; + break; + case (short)eNETWORK_ID.NETID_ISO3: + sTempOutput = "ISO3"; + break; + case (short)eNETWORK_ID.NETID_HSCAN2: + sTempOutput = "HSCAN2"; + break; + case (short)eNETWORK_ID.NETID_HSCAN3: + sTempOutput = "HSCAN3"; + break; + case (short)eNETWORK_ID.NETID_ISO4: + sTempOutput = "ISO4"; + break; + case (short)eNETWORK_ID.NETID_LIN2: + sTempOutput = "LIN2"; + break; + case (short)eNETWORK_ID.NETID_LIN3: + sTempOutput = "LIN3"; + break; + case (short)eNETWORK_ID.NETID_LIN4: + sTempOutput = "LIN4"; + break; + case (short)eNETWORK_ID.NETID_LIN5: + sTempOutput = "LIN5"; + break; + case (short)eNETWORK_ID.NETID_MOST: + sTempOutput = "MOST"; + break; + case (short)eNETWORK_ID.NETID_CGI: + sTempOutput = "CGI"; + break; + case (short)eNETWORK_ID.NETID_HSCAN4: + sTempOutput = "HSCAN4"; + break; + case (short)eNETWORK_ID.NETID_HSCAN5: + sTempOutput = "HSCAN5"; + break; + case (short)eNETWORK_ID.NETID_UART: + sTempOutput = "UART"; + break; + case (short)eNETWORK_ID.NETID_UART2: + sTempOutput = "UART2"; + break; + case (short)eNETWORK_ID.NETID_UART3: + sTempOutput = "UART3"; + break; + case (short)eNETWORK_ID.NETID_UART4: + sTempOutput = "UART4"; + break; + case (short)eNETWORK_ID.NETID_SWCAN2: + sTempOutput = "SWCAN2"; + break; + case (short)eNETWORK_ID.NETID_ETHERNET_DAQ: + sTempOutput = "ETHERNE"; + break; + case (short)eNETWORK_ID.NETID_FLEXRAY1A: + sTempOutput = "FLEXRAY1A"; + break; + case (short)eNETWORK_ID.NETID_FLEXRAY1B: + sTempOutput = "FLEXRAY1B"; + break; + case (short)eNETWORK_ID.NETID_FLEXRAY2A: + sTempOutput = "FLEXRAY2A"; + break; + case (short)eNETWORK_ID.NETID_FLEXRAY2B: + sTempOutput = "FLEXRAY2B"; + break; + case (short)eNETWORK_ID.NETID_FLEXRAY: + sTempOutput = "FLEXRAY"; + break; + case (short)eNETWORK_ID.NETID_MOST25: + sTempOutput = "MOST25"; + break; + case (short)eNETWORK_ID.NETID_MOST50: + sTempOutput = "MOST50"; + break; + case (short)eNETWORK_ID.NETID_MOST150: + sTempOutput = "MOST150"; + break; + case (short)eNETWORK_ID.NETID_ETHERNET: + sTempOutput = "ETHERNET"; + break; + case (short)eNETWORK_ID.NETID_HSCAN6: + sTempOutput = "HSCAN6"; + break; + case (short)eNETWORK_ID.NETID_HSCAN7: + sTempOutput = "HSCAN7"; + break; + case (short)eNETWORK_ID.NETID_LIN6: + sTempOutput = "LIN6"; + break; + case (short)eNETWORK_ID.NETID_LSFTCAN2: + sTempOutput = "LSFTCAN2"; + break; + case (short)eNETWORK_ID.NETID_OP_ETHERNET1: + sTempOutput = "OP_ETHERNET1"; + break; + case (short)eNETWORK_ID.NETID_OP_ETHERNET2: + sTempOutput = "OP_ETHERNET2"; + break; + case (short)eNETWORK_ID.NETID_OP_ETHERNET3: + sTempOutput = "OP_ETHERNET3"; + break; + case (short)eNETWORK_ID.NETID_OP_ETHERNET4: + sTempOutput = "OP_ETHERNET4"; + break; + case (short)eNETWORK_ID.NETID_OP_ETHERNET5: + sTempOutput = "OP_ETHERNET5"; + break; + case (short)eNETWORK_ID.NETID_OP_ETHERNET6: + sTempOutput = "OP_ETHERNET6"; + break; + case (short)eNETWORK_ID.NETID_OP_ETHERNET7: + sTempOutput = "OP_ETHERNET7"; + break; + case (short)eNETWORK_ID.NETID_OP_ETHERNET8: + sTempOutput = "OP_ETHERNET8"; + break; + case (short)eNETWORK_ID.NETID_OP_ETHERNET9: + sTempOutput = "OP_ETHERNET9"; + break; + case (short)eNETWORK_ID.NETID_OP_ETHERNET10: + sTempOutput = "OP_ETHERNET10"; + break; + case (short)eNETWORK_ID.NETID_OP_ETHERNET11: + sTempOutput = "OP_ETHERNET11"; + break; + case (short)eNETWORK_ID.NETID_OP_ETHERNET12: + sTempOutput = "OP_ETHERNET12"; + break; + default: + sTempOutput = "Other"; + break; + } + return sTempOutput; + } + + } +} diff --git a/LFP_Manager_PRM/LFP_Manager_PRM.csproj b/LFP_Manager_PRM/LFP_Manager_PRM.csproj new file mode 100644 index 0000000..c420589 --- /dev/null +++ b/LFP_Manager_PRM/LFP_Manager_PRM.csproj @@ -0,0 +1,470 @@ + + + + + Debug + AnyCPU + 9.0.21022 + 2.0 + {BE0785A4-0CCB-44C5-A8C0-1AA2245E71F4} + WinExe + Properties + LFP_Manager + LFP_Manager_PRM + v4.8 + 512 + + + 3.5 + + + + + + + + true + full + false + bin\Debug\ + DEBUG;TRACE + prompt + 4 + true + false + x86 + + + pdbonly + false + bin\Release\ + TRACE + prompt + 4 + true + x86 + false + + + Resources\AMO_LOGO.ico + + + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + + True + + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + + True + + + + True + + + ..\packages\EntityFramework.6.3.0\lib\net45\EntityFramework.dll + + + ..\packages\EntityFramework.6.3.0\lib\net45\EntityFramework.SqlServer.dll + + + dll\IPAddressControlLib.dll + + + False + dll\SnmpSharpNet.dll + + + + + + 3.5 + + + + ..\packages\Stub.System.Data.SQLite.Core.NetFramework.1.0.113.3\lib\net451\System.Data.SQLite.dll + + + ..\packages\System.Data.SQLite.EF6.1.0.113.0\lib\net451\System.Data.SQLite.EF6.dll + + + ..\packages\System.Data.SQLite.Linq.1.0.113.0\lib\net451\System.Data.SQLite.Linq.dll + + + + + + + + + 3.5 + + + 3.5 + + + + + + + + dll\Tftp.Net.dll + + + + + UserControl + + + ucCalibration.cs + + + UserControl + + + ucCommConfig.cs + + + UserControl + + + ucCommConfig2.cs + + + UserControl + + + ucDataLog.cs + + + UserControl + + + ucEventLog.cs + + + UserControl + + + ucHistroy.cs + + + UserControl + + + ucMainStatus.cs + + + UserControl + + + ucModuleIdSet.cs + + + + ucParamSet.cs + + + UserControl + + + ucShelfStatus.cs + + + UserControl + + + ucStatus.cs + + + UserControl + + + ucTargetControl.cs + + + UserControl + + + ucTftpClientcs.cs + + + + + + Form + + + fmxExcelFile.cs + + + Form + + + fmxFwImageConverter.cs + + + Form + + + fmxCalibration.cs + + + Form + + + fmxFwUpdate.cs + + + Form + + + fmxHistory.cs + + + Form + + + fmxInventoryConfig.cs + + + Form + + + fmxInventoryConfig2.cs + + + Form + + + fmxParamConfig.cs + + + Form + + + fmxWait.cs + + + + + + + + + + + + + + + Form + + + fmxCommConfig.cs + + + Form + + + fmxMain.cs + + + + + + + + + + + + ucCalibration.cs + + + ucCommConfig.cs + + + ucCommConfig2.cs + + + ucDataLog.cs + + + ucEventLog.cs + + + ucHistroy.cs + + + ucMainStatus.cs + + + ucModuleIdSet.cs + + + ucParamSet.cs + + + ucShelfStatus.cs + + + ucStatus.cs + + + ucTargetControl.cs + + + ucTftpClientcs.cs + + + fmxExcelFile.cs + + + fmxFwImageConverter.cs + + + fmxCalibration.cs + + + fmxCommConfig.cs + + + fmxFwUpdate.cs + + + fmxHistory.cs + + + fmxInventoryConfig.cs + + + fmxInventoryConfig2.cs + + + fmxMain.cs + + + fmxParamConfig.cs + + + fmxWait.cs + + + + ResXFileCodeGenerator + Resources.Designer.cs + Designer + + + True + Resources.resx + True + + + + + SettingsSingleFileGenerator + Settings.Designer.cs + + + True + Settings.settings + True + + + + + + + + + + + + + + + if not exist "$(TargetDir)\Library" mkdir "$(TargetDir)\Library" +if not exist "$(TargetDir)\Library\kerneldlls" mkdir "$(TargetDir)\Library\kerneldlls" +move "$(TargetDir)\*.dll" "$(TargetDir)\Library" +move "$(TargetDir)\*.pdb" "$(TargetDir)\Library" +move "$(TargetDir)\*.xml" "$(TargetDir)\Library" +copy "$(ProjectDir)\dll\*.dll" "$(TargetDir)\Library" +copy "$(ProjectDir)\dll\kerneldlls\*.*" "$(TargetDir)\Library\kerneldlls" + +if not exist "$(TargetDir)\sql" mkdir "$(TargetDir)\sql" +copy "$(ProjectDir)\DB Schema\*.sql" "$(TargetDir)\sql" + + + if exist "$(TargetDir)\library" rmdir /s /q "$(TargetDir)\library" +if exist "$(TargetDir)\sql" rmdir /s /q "$(TargetDir)\sql" + + + + 이 프로젝트는 이 컴퓨터에 없는 NuGet 패키지를 참조합니다. 해당 패키지를 다운로드하려면 NuGet 패키지 복원을 사용하십시오. 자세한 내용은 http://go.microsoft.com/fwlink/?LinkID=322105를 참조하십시오. 누락된 파일은 {0}입니다. + + + + + + + + + \ No newline at end of file diff --git a/LFP_Manager_PRM/LFP_Manager_PRM.csproj.bak b/LFP_Manager_PRM/LFP_Manager_PRM.csproj.bak new file mode 100644 index 0000000..5cac49d --- /dev/null +++ b/LFP_Manager_PRM/LFP_Manager_PRM.csproj.bak @@ -0,0 +1,474 @@ + + + + + Debug + AnyCPU + 9.0.21022 + 2.0 + {BE0785A4-0CCB-44C5-A8C0-1AA2245E71F4} + WinExe + Properties + LFP_Manager + LFP_Manager_PRM + v4.8 + 512 + + + 3.5 + + + + + + + + true + full + false + bin\Debug\ + DEBUG;TRACE + prompt + 4 + true + false + x86 + + + pdbonly + false + bin\Release\ + TRACE + prompt + 4 + true + x86 + false + + + Resources\AMO_LOGO.ico + + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + + True + + + True + + + True + + + True + + + True + + + True + + + True + + + + True + + + + True + + + ..\packages\EntityFramework.6.3.0\lib\net45\EntityFramework.dll + + + ..\packages\EntityFramework.6.3.0\lib\net45\EntityFramework.SqlServer.dll + + + dll\IPAddressControlLib.dll + + + False + dll\SnmpSharpNet.dll + + + + + + 3.5 + + + ..\packages\Stub.System.Data.SQLite.Core.NetFramework.1.0.113.3\lib\net451\System.Data.SQLite.dll + + + ..\packages\System.Data.SQLite.EF6.1.0.113.0\lib\net451\System.Data.SQLite.EF6.dll + + + ..\packages\System.Data.SQLite.Linq.1.0.113.0\lib\net451\System.Data.SQLite.Linq.dll + + + + + + 3.5 + + + 3.5 + + + + + + + + dll\Tftp.Net.dll + + + + + UserControl + + + ucCalibration.cs + + + UserControl + + + ucCommConfig.cs + + + UserControl + + + ucCommConfig2.cs + + + UserControl + + + ucDataLog.cs + + + UserControl + + + ucEventLog.cs + + + UserControl + + + ucHistroy.cs + + + UserControl + + + ucMainStatus.cs + + + UserControl + + + ucModuleIdSet.cs + + + UserControl + + + ucParamSet.cs + + + UserControl + + + ucShelfStatus.cs + + + UserControl + + + ucStatus.cs + + + UserControl + + + ucTargetControl.cs + + + UserControl + + + ucTftpClientcs.cs + + + + + + Form + + + fmxExcelFile.cs + + + Form + + + fmxFwImageConverter.cs + + + Form + + + fmxCalibration.cs + + + Form + + + fmxFwUpdate.cs + + + Form + + + fmxFwUpdateTftp.cs + + + Form + + + fmxHistory.cs + + + Form + + + fmxInventoryConfig.cs + + + Form + + + fmxInventoryConfig2.cs + + + Form + + + fmxParamConfig.cs + + + Form + + + fmxWait.cs + + + + + + + + + + + + + + + Form + + + fmxCommConfig.cs + + + Form + + + fmxMain.cs + + + + + + + + + + + + + + ucCalibration.cs + + + ucCommConfig.cs + + + ucCommConfig2.cs + + + ucDataLog.cs + + + ucEventLog.cs + + + ucHistroy.cs + + + ucMainStatus.cs + + + ucModuleIdSet.cs + + + ucParamSet.cs + + + ucShelfStatus.cs + + + ucStatus.cs + + + ucTargetControl.cs + + + ucTftpClientcs.cs + + + fmxExcelFile.cs + + + fmxFwImageConverter.cs + + + fmxCalibration.cs + + + fmxCommConfig.cs + + + fmxFwUpdate.cs + + + fmxFwUpdateTftp.cs + + + fmxHistory.cs + + + fmxInventoryConfig.cs + + + fmxInventoryConfig2.cs + + + fmxMain.cs + + + fmxParamConfig.cs + + + fmxWait.cs + + + + ResXFileCodeGenerator + Resources.Designer.cs + Designer + + + True + Resources.resx + True + + + + + SettingsSingleFileGenerator + Settings.Designer.cs + + + True + Settings.settings + True + + + + + + + + + + + + + + + if not exist "$(TargetDir)\Library" mkdir "$(TargetDir)\Library" +if not exist "$(TargetDir)\Library\kerneldlls" mkdir "$(TargetDir)\Library\kerneldlls" +move "$(TargetDir)\*.dll" "$(TargetDir)\Library" +move "$(TargetDir)\*.pdb" "$(TargetDir)\Library" +move "$(TargetDir)\*.xml" "$(TargetDir)\Library" +copy "$(ProjectDir)\dll\*.dll" "$(TargetDir)\Library" +copy "$(ProjectDir)\dll\kerneldlls\*.*" "$(TargetDir)\Library\kerneldlls" + +if not exist "$(TargetDir)\sql" mkdir "$(TargetDir)\sql" +copy "$(ProjectDir)\DB Schema\*.sql" "$(TargetDir)\sql" + + + if exist "$(TargetDir)\library" rmdir /s /q "$(TargetDir)\library" +if exist "$(TargetDir)\sql" rmdir /s /q "$(TargetDir)\sql" + + + + 이 프로젝트는 이 컴퓨터에 없는 NuGet 패키지를 참조합니다. 해당 패키지를 다운로드하려면 NuGet 패키지 복원을 사용하십시오. 자세한 내용은 http://go.microsoft.com/fwlink/?LinkID=322105를 참조하십시오. 누락된 파일은 {0}입니다. + + + + + + + + + \ No newline at end of file diff --git a/LFP_Manager_PRM/Program.cs b/LFP_Manager_PRM/Program.cs new file mode 100644 index 0000000..a0e08e6 --- /dev/null +++ b/LFP_Manager_PRM/Program.cs @@ -0,0 +1,23 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Windows.Forms; + +using LFP_Manager.Forms; + +namespace LFP_Manager +{ + static class Program + { + /// + /// The main entry point for the application. + /// + [STAThread] + static void Main() + { + Application.EnableVisualStyles(); + Application.SetCompatibleTextRenderingDefault(false); + Application.Run(new fmxMain()); + } + } +} diff --git a/LFP_Manager_PRM/Properties/AssemblyInfo.cs b/LFP_Manager_PRM/Properties/AssemblyInfo.cs new file mode 100644 index 0000000..987f608 --- /dev/null +++ b/LFP_Manager_PRM/Properties/AssemblyInfo.cs @@ -0,0 +1,36 @@ +using System.Reflection; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; + +// General Information about an assembly is controlled through the following +// set of attributes. Change these attribute values to modify the information +// associated with an assembly. +[assembly: AssemblyTitle("PR-LFP Monitor Program")] +[assembly: AssemblyDescription("")] +[assembly: AssemblyConfiguration("")] +[assembly: AssemblyCompany("Amogreentech")] +[assembly: AssemblyProduct("LFP_Manager_PRM")] +[assembly: AssemblyCopyright("Copyright 2020© Amogreentech. Co., Ltd.")] +[assembly: AssemblyTrademark("AMO ESS")] +[assembly: AssemblyCulture("")] + +// Setting ComVisible to false makes the types in this assembly not visible +// to COM components. If you need to access a type in this assembly from +// COM, set the ComVisible attribute to true on that type. +[assembly: ComVisible(false)] + +// The following GUID is for the ID of the typelib if this project is exposed to COM +[assembly: Guid("a97c6f26-af24-466a-888d-dfdba0e4bb78")] + +// Version information for an assembly consists of the following four values: +// +// Major Version +// Minor Version +// Build Number +// Revision +// +// You can specify all the values or you can default the Build and Revision Numbers +// by using the '*' as shown below: +// [assembly: AssemblyVersion("1.0.*")] +[assembly: AssemblyVersion("2.1.3.8")] +[assembly: AssemblyFileVersion("2.1.3.8")] diff --git a/LFP_Manager_PRM/Properties/Resources.Designer.cs b/LFP_Manager_PRM/Properties/Resources.Designer.cs new file mode 100644 index 0000000..c03bcdd --- /dev/null +++ b/LFP_Manager_PRM/Properties/Resources.Designer.cs @@ -0,0 +1,83 @@ +//------------------------------------------------------------------------------ +// +// 이 코드는 도구를 사용하여 생성되었습니다. +// 런타임 버전:4.0.30319.42000 +// +// 파일 내용을 변경하면 잘못된 동작이 발생할 수 있으며, 코드를 다시 생성하면 +// 이러한 변경 내용이 손실됩니다. +// +//------------------------------------------------------------------------------ + +namespace LFP_Manager.Properties { + using System; + + + /// + /// 지역화된 문자열 등을 찾기 위한 강력한 형식의 리소스 클래스입니다. + /// + // 이 클래스는 ResGen 또는 Visual Studio와 같은 도구를 통해 StronglyTypedResourceBuilder + // 클래스에서 자동으로 생성되었습니다. + // 멤버를 추가하거나 제거하려면 .ResX 파일을 편집한 다음 /str 옵션을 사용하여 ResGen을 + // 다시 실행하거나 VS 프로젝트를 다시 빌드하십시오. + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "17.0.0.0")] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] + internal class Resources { + + private static global::System.Resources.ResourceManager resourceMan; + + private static global::System.Globalization.CultureInfo resourceCulture; + + [global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")] + internal Resources() { + } + + /// + /// 이 클래스에서 사용하는 캐시된 ResourceManager 인스턴스를 반환합니다. + /// + [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)] + internal static global::System.Resources.ResourceManager ResourceManager { + get { + if (object.ReferenceEquals(resourceMan, null)) { + global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("LFP_Manager.Properties.Resources", typeof(Resources).Assembly); + resourceMan = temp; + } + return resourceMan; + } + } + + /// + /// 이 강력한 형식의 리소스 클래스를 사용하여 모든 리소스 조회에 대해 현재 스레드의 CurrentUICulture 속성을 + /// 재정의합니다. + /// + [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)] + internal static global::System.Globalization.CultureInfo Culture { + get { + return resourceCulture; + } + set { + resourceCulture = value; + } + } + + /// + /// (아이콘)과(와) 유사한 System.Drawing.Icon 형식의 지역화된 리소스를 찾습니다. + /// + internal static System.Drawing.Icon AMO_LOGO { + get { + object obj = ResourceManager.GetObject("AMO_LOGO", resourceCulture); + return ((System.Drawing.Icon)(obj)); + } + } + + /// + /// System.Drawing.Bitmap 형식의 지역화된 리소스를 찾습니다. + /// + internal static System.Drawing.Bitmap logo { + get { + object obj = ResourceManager.GetObject("logo", resourceCulture); + return ((System.Drawing.Bitmap)(obj)); + } + } + } +} diff --git a/LFP_Manager_PRM/Properties/Resources.resx b/LFP_Manager_PRM/Properties/Resources.resx new file mode 100644 index 0000000..8205b48 --- /dev/null +++ b/LFP_Manager_PRM/Properties/Resources.resx @@ -0,0 +1,127 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + + ..\Resources\AMO_LOGO.ico;System.Drawing.Icon, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + + ..\Resources\logo.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + \ No newline at end of file diff --git a/LFP_Manager_PRM/Properties/Settings.Designer.cs b/LFP_Manager_PRM/Properties/Settings.Designer.cs new file mode 100644 index 0000000..d696fde --- /dev/null +++ b/LFP_Manager_PRM/Properties/Settings.Designer.cs @@ -0,0 +1,26 @@ +//------------------------------------------------------------------------------ +// +// 이 코드는 도구를 사용하여 생성되었습니다. +// 런타임 버전:4.0.30319.42000 +// +// 파일 내용을 변경하면 잘못된 동작이 발생할 수 있으며, 코드를 다시 생성하면 +// 이러한 변경 내용이 손실됩니다. +// +//------------------------------------------------------------------------------ + +namespace LFP_Manager.Properties { + + + [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "17.3.0.0")] + internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase { + + private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings()))); + + public static Settings Default { + get { + return defaultInstance; + } + } + } +} diff --git a/LFP_Manager_PRM/Properties/Settings.settings b/LFP_Manager_PRM/Properties/Settings.settings new file mode 100644 index 0000000..3964565 --- /dev/null +++ b/LFP_Manager_PRM/Properties/Settings.settings @@ -0,0 +1,7 @@ + + + + + + + diff --git a/LFP_Manager_PRM/Properties/licenses.licx b/LFP_Manager_PRM/Properties/licenses.licx new file mode 100644 index 0000000..06ba6c9 --- /dev/null +++ b/LFP_Manager_PRM/Properties/licenses.licx @@ -0,0 +1,7 @@ +DevExpress.XtraEditors.ComboBoxEdit, DevExpress.XtraEditors.v22.2, Version=22.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a +DevExpress.XtraEditors.TextEdit, DevExpress.XtraEditors.v22.2, Version=22.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a +DevExpress.XtraCharts.ChartControl, DevExpress.XtraCharts.v22.2.UI, Version=22.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a +DevExpress.XtraEditors.CheckEdit, DevExpress.XtraEditors.v22.2, Version=22.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a +DevExpress.XtraGauges.Win.GaugeControl, DevExpress.XtraGauges.v22.2.Win, Version=22.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a +DevExpress.XtraLayout.LayoutControl, DevExpress.XtraLayout.v22.2, Version=22.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a +DevExpress.XtraEditors.ProgressBarControl, DevExpress.XtraEditors.v22.2, Version=22.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a diff --git a/LFP_Manager_PRM/Properties/licenses.licx.bak b/LFP_Manager_PRM/Properties/licenses.licx.bak new file mode 100644 index 0000000..bbfa386 --- /dev/null +++ b/LFP_Manager_PRM/Properties/licenses.licx.bak @@ -0,0 +1,8 @@ +DevExpress.XtraCharts.ChartControl, DevExpress.XtraCharts.v20.1.UI, Version=20.1.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a +DevExpress.XtraGrid.GridControl, DevExpress.XtraGrid.v20.1, Version=20.1.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a +DevExpress.XtraEditors.CheckEdit, DevExpress.XtraEditors.v20.1, Version=20.1.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a +DevExpress.XtraLayout.LayoutControl, DevExpress.XtraLayout.v20.1, Version=20.1.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a +DevExpress.XtraEditors.ComboBoxEdit, DevExpress.XtraEditors.v20.1, Version=20.1.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a +DevExpress.XtraGauges.Win.GaugeControl, DevExpress.XtraGauges.v20.1.Win, Version=20.1.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a +DevExpress.XtraEditors.TextEdit, DevExpress.XtraEditors.v20.1, Version=20.1.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a +DevExpress.XtraEditors.ProgressBarControl, DevExpress.XtraEditors.v20.1, Version=20.1.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a diff --git a/LFP_Manager_PRM/Resources/AMO_LOGO.ico b/LFP_Manager_PRM/Resources/AMO_LOGO.ico new file mode 100644 index 0000000..a18b5d2 Binary files /dev/null and b/LFP_Manager_PRM/Resources/AMO_LOGO.ico differ diff --git a/LFP_Manager_PRM/Resources/logo.png b/LFP_Manager_PRM/Resources/logo.png new file mode 100644 index 0000000..3e9d6ed Binary files /dev/null and b/LFP_Manager_PRM/Resources/logo.png differ diff --git a/LFP_Manager_PRM/Threads/csCanThread.cs b/LFP_Manager_PRM/Threads/csCanThread.cs new file mode 100644 index 0000000..646567c --- /dev/null +++ b/LFP_Manager_PRM/Threads/csCanThread.cs @@ -0,0 +1,791 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Runtime.InteropServices; + +using System.Threading; +using System.IO; +using System.IO.Ports; +using System.Windows.Forms; + +using LFP_Manager.DataStructure; +using LFP_Manager.Function; +using LFP_Manager.Utils; + +namespace LFP_Manager.Threads +{ + public delegate void CanDataUpdate(object sender, ref DeviceSystemData aSystemData); + public delegate void CanDataRecv(UInt32 hdr, byte[] data); + public delegate void CanDataPrint(object sender, string msg); + + class csCanThread + { + #region DLL FUNCTION + + [DllImport("library\\controlcan.dll")] + static extern UInt32 VCI_OpenDevice(UInt32 DeviceType, UInt32 DeviceInd, UInt32 Reserved); + [DllImport("library\\controlcan.dll")] + static extern UInt32 VCI_CloseDevice(UInt32 DeviceType, UInt32 DeviceInd); + [DllImport("library\\controlcan.dll")] + static extern UInt32 VCI_InitCAN(UInt32 DeviceType, UInt32 DeviceInd, UInt32 CANInd, ref VCI_INIT_CONFIG pInitConfig); + [DllImport("library\\controlcan.dll")] + static extern UInt32 VCI_ReadBoardInfo(UInt32 DeviceType, UInt32 DeviceInd, ref VCI_BOARD_INFO pInfo); + [DllImport("library\\controlcan.dll")] + static extern UInt32 VCI_ReadErrInfo(UInt32 DeviceType, UInt32 DeviceInd, UInt32 CANInd, ref VCI_ERR_INFO pErrInfo); + [DllImport("library\\controlcan.dll")] + static extern UInt32 VCI_ReadCANStatus(UInt32 DeviceType, UInt32 DeviceInd, UInt32 CANInd, ref VCI_CAN_STATUS pCANStatus); + + [DllImport("library\\controlcan.dll")] + static extern UInt32 VCI_GetReference(UInt32 DeviceType, UInt32 DeviceInd, UInt32 CANInd, UInt32 RefType, ref byte pData); + [DllImport("library\\controlcan.dll")] + //static extern UInt32 VCI_SetReference(UInt32 DeviceType, UInt32 DeviceInd, UInt32 CANInd, UInt32 RefType, ref byte pData); + unsafe static extern UInt32 VCI_SetReference(UInt32 DeviceType, UInt32 DeviceInd, UInt32 CANInd, UInt32 RefType, byte* pData); + + [DllImport("library\\controlcan.dll")] + static extern UInt32 VCI_GetReceiveNum(UInt32 DeviceType, UInt32 DeviceInd, UInt32 CANInd); + [DllImport("library\\controlcan.dll")] + static extern UInt32 VCI_ClearBuffer(UInt32 DeviceType, UInt32 DeviceInd, UInt32 CANInd); + + [DllImport("library\\controlcan.dll")] + static extern UInt32 VCI_StartCAN(UInt32 DeviceType, UInt32 DeviceInd, UInt32 CANInd); + [DllImport("library\\controlcan.dll")] + static extern UInt32 VCI_ResetCAN(UInt32 DeviceType, UInt32 DeviceInd, UInt32 CANInd); + + [DllImport("library\\controlcan.dll")] + static extern UInt32 VCI_Transmit(UInt32 DeviceType, UInt32 DeviceInd, UInt32 CANInd, ref VCI_CAN_OBJ pSend, UInt32 Len); + + //[DllImport("library\\controlcan.dll")] + //static extern UInt32 VCI_Receive(UInt32 DeviceType, UInt32 DeviceInd, UInt32 CANInd, ref VCI_CAN_OBJ pReceive, UInt32 Len, Int32 WaitTime); + [DllImport("library\\controlcan.dll", CharSet = CharSet.Ansi)] + static extern UInt32 VCI_Receive(UInt32 DeviceType, UInt32 DeviceInd, UInt32 CANInd, IntPtr pReceive, UInt32 Len, Int32 WaitTime); + + #endregion + + #region VARIABLES + + public delegate void invokeDelegate(); + + CommConfig Config; + DeviceSystemData SystemData; + + TCanTxBuff CanTxBuf; + + int SystemId = 0; + + Thread canCommTx = null; + Thread canCommRx = null; + //string Msg = ""; + + static UInt32 can_devtype = 21; //USBCAN-2e-u + + //////////////////////////////////////// + const UInt32 STATUS_OK = 1; + + bool can_bOpen = false; + UInt32 can_devind = 0; + UInt32 can_canind = 0; + + bool CanTxThreadEnd = true; + bool CanRxThreadEnd = true; + + bool CanPolling = false; + bool AutoCanTx = true; + + int dcp = 0; // Data Control Parameter + + public event CanDataUpdate OnUpdate = null; + public event CanDataPrint OnPrint = null; + public event CanDataRecv OnDataRecv = null; + + private object lockObject = new object(); + #endregion + + #region CONSTRUCTORS + public csCanThread(int sId, CommConfig aConfig, ref DeviceSystemData aSystemData) + { + SystemId = sId; + Config = aConfig; + SystemData = aSystemData; + + CanTxBuf = new TCanTxBuff(); + + canCommTx = new Thread(CanTxThread); + canCommRx = new Thread(CanRxThread); + } + + public void disposeThread() + { + CanTxThreadEnd = true; + if (canCommTx != null) + { + if (canCommTx.IsAlive) + { + canCommTx.Abort(); + } + canCommTx = null; + } + CanRxThreadEnd = true; + if (canCommRx != null) + { + if (canCommRx.IsAlive) + { + canCommRx.Abort(); + } + canCommRx = null; + } + + if (can_bOpen == true) + { + _ = VCI_CloseDevice(can_devtype, can_devind); + } + } + + public unsafe bool Start(ref CommConfig aConfig, int sId, bool aPolling) + { + bool result = false; + + SystemId = sId; + CanPolling = aPolling; + Config = aConfig; + + can_devtype = (UInt32)csCanConstData.CanDeviceInfo.DeviceIds[Config.CanDevice]; + can_devind = (UInt32)Config.CanIndex; + can_canind = (UInt32)Config.CanNo; + + try + { + if (VCI_OpenDevice(can_devtype, can_devind, 0) == 0) + throw new System.InvalidOperationException("Failed to open the device, please check if the device type and device index number are correct."); + + //USB-E-U Code + UInt32 baud; + VCI_INIT_CONFIG config = new VCI_INIT_CONFIG(); + + if (can_devtype == csCanConstData.CanDeviceInfo.VCI_USBCAN_2E_U) + { + baud = (UInt32)csCanConstData.BaudRate.BaudRates[aConfig.CanBaudrate]; + config.Timing0 = 0x00; + config.Timing1 = 0x14; + + if (VCI_SetReference(can_devtype, can_devind, can_canind, 0, (byte*)&baud) != STATUS_OK) + { + VCI_CloseDevice(can_devtype, can_devind); + throw new System.InvalidOperationException("Set baud rate error, failed to open device!"); + } + } + else + { + baud = (UInt32)csCanConstData.BaudRate.BaudRatesOther[aConfig.CanBaudrate]; + config.Timing0 = (byte)(baud >> 8); + config.Timing1 = (byte)(baud & 0xFF); + } + can_bOpen = true; + + //Config setting + config.AccCode = 0x00000000; + config.AccMask = 0xFFFFFFFF; + config.Filter = 1; + config.Mode = 0; + + VCI_InitCAN(can_devtype, can_devind, can_canind, ref config); + + ////Filter setting + //Int32 filterMode = comboBox_e_u_Filter.SelectedIndex; + //if (2 != filterMode)//Not disabled + //{ + // VCI_FILTER_RECORD filterRecord = new VCI_FILTER_RECORD(); + // filterRecord.ExtFrame = (UInt32)filterMode; + // filterRecord.Start = System.Convert.ToUInt32("0x" + textBox_e_u_startid.Text, 16); + // filterRecord.End = System.Convert.ToUInt32("0x" + textBox_e_u_endid.Text, 16); + // //Fill filter table + // VCI_SetReference(m_devtype, m_devind, m_canind, 1, (byte*)&filterRecord); + // //Make the filter table take effect + // byte tm = 0; + // if (VCI_SetReference(m_devtype, m_devind, m_canind, 2, &tm) != STATUS_OK) + // { + // MessageBox.Show("Set filter failed", "Error", MessageBoxButtons.OK, MessageBoxIcon.Exclamation); + // VCI_CloseDevice(m_devtype, m_devind); + // return; + // } + //} + //////////////////////////////////////////////////////////////////////////// + ////buttonConnect.Text = m_bOpen == 1 ? "DISCONNECT" : "CONNECT"; + ////timer_rec.Enabled = m_bOpen == 1 ? true : false; + + UInt32 res; + res = VCI_StartCAN(can_devtype, can_devind, can_canind); + + CanTxThreadEnd = false; + CanRxThreadEnd = false; + + canCommTx.Start(); + canCommRx.Start(); + + result = true; + } + catch (Exception ex) + { + System.Exception Ex = new System.Exception(ex.Message, ex); + throw Ex; + } + return result; + } + #endregion + + #region TX FUNCTION + public void SetAutoTx(bool autoTx) + { + AutoCanTx = autoTx; + } + + public void SetDcp(int aDcp) + { + dcp = aDcp; + } + + //public void SendProcessFromApp(int sId, int mode, int index, int flag, ref DeviceParamData aParam, ref DeviceCalibration aCalib, int type) + //{ + // if (can_bOpen == true) + // { + // TCanTRxData[] CanTRxData = csCanCommFunction.SendProcessFromAppPacket(sId, mode, index, flag, ref aParam, ref aCalib); + // if (CanTRxData != null) + // { + // for (int i = 0; i < CanTRxData.Length; i++) + // { + // CanTRxData[i].type = type; + // CanTxBuf.PutBuff(CanTRxData[i]); + // } + // } + // } + //} + public void SendDataFromApp(uint header, byte[] data, int type) + { + if (can_bOpen == true) + { + TCanTRxData CanTRxData = new TCanTRxData + { + exid = header + }; + for (int i = 0; i < data.Length; i++) + { + CanTRxData.data[i] = data[i]; + } + CanTxBuf.PutBuff(CanTRxData); + } + } + unsafe public void SendDataFromAppA(UInt32 header, byte[] data) + { + if (can_bOpen == false) return; + + VCI_CAN_OBJ sendobj = new VCI_CAN_OBJ(); + + sendobj.SendType = csCanConstData.SendType.Normal; + sendobj.ExternFlag = csCanConstData.FrameType.Extended; + sendobj.RemoteFlag = csCanConstData.FrameFormat.Data_Frame; + sendobj.ID = header; // 0x1815c9c8 + + int len = 8; + sendobj.DataLen = System.Convert.ToByte(len); + for (int i = 0; i < len; i++) + sendobj.Data[i] = data[i]; + + //int nTimeOut = 3000; + //if (can_devtype == csCanConstData.CanDeviceInfo.VCI_USBCAN_2E_U) + //{ + // VCI_SetReference(can_devtype, can_devind, can_canind, 3, (byte*)&nTimeOut); + //} + + if (VCI_Transmit(can_devtype, can_devind, can_canind, ref sendobj, 1) == 0) + { + throw new Exception("Failed to send"); + } + + OnPrint?.Invoke(this, csCanCommFunction.PacketToMsg(sendobj, 1)); + } + + public void SetPolling(bool flag, int sId, ref DeviceSystemData aSystemData) + { + SystemId = sId; + CanPolling = flag; + SystemData = aSystemData; + SystemData.mNo = SystemId; + } + + unsafe public void SendData() + { + if (can_bOpen == false) return; + + VCI_CAN_OBJ sendobj = new VCI_CAN_OBJ(); + sendobj.SendType = csCanConstData.SendType.Normal; + sendobj.ExternFlag = csCanConstData.FrameType.Extended; + sendobj.RemoteFlag = csCanConstData.FrameFormat.Data_Frame; + sendobj.ID = 0x1815c9c8; // 0x1815c9c8 + + int len = 8; + sendobj.DataLen = Convert.ToByte(len); + sendobj.Data[0] = 0xff; + sendobj.Data[1] = 0xff; + sendobj.Data[2] = 0xff; + sendobj.Data[3] = 0xff; + sendobj.Data[4] = 0xff; + sendobj.Data[5] = 0xff; + sendobj.Data[6] = 0xff; + sendobj.Data[7] = 0xff; + + //int nTimeOut = 3000; + //if (can_devtype == csCanConstData.CanDeviceInfo.VCI_USBCAN_2E_U) + //{ + // VCI_SetReference(can_devtype, can_devind, can_canind, 3, (byte*)&nTimeOut); + //} + + if (VCI_Transmit(can_devtype, can_devind, can_canind, ref sendobj, 1) == 0) + { + throw new Exception("Failed to send"); + } + } + + public void SendProcessFromApp(int sId, int mode, int flag, int dcp, ref DeviceParamData aParam, ref DeviceCalibration aCalib) + { + switch (mode) + { + case 5: // Cell Volatge Parameter + SendData(sId, 5, flag, dcp, ref aParam, ref aCalib); + SendData(sId, 23, flag, dcp, ref aParam, ref aCalib); + break; + case 7: + SendData(sId, 7, flag, dcp, ref aParam, ref aCalib); + SendData(sId, 23, flag, dcp, ref aParam, ref aCalib); + break; + case 6: + SendData(sId, 6, flag, dcp, ref aParam, ref aCalib); + SendData(sId, 24, flag, dcp, ref aParam, ref aCalib); + break; + case 22: + SendData(sId, 22, flag, dcp, ref aParam, ref aCalib); + SendData(sId, 24, flag, dcp, ref aParam, ref aCalib); + break; + case 14: + SendData(sId, 14, flag, dcp, ref aParam, ref aCalib); + break; + case 99: // All param read + SendData(sId, 5, flag, dcp, ref aParam, ref aCalib); + SendData(sId, 6, flag, dcp, ref aParam, ref aCalib); + SendData(sId, 7, flag, dcp, ref aParam, ref aCalib); + SendData(sId, 14, flag, dcp, ref aParam, ref aCalib); + SendData(sId, 22, flag, dcp, ref aParam, ref aCalib); + SendData(sId, 23, flag, dcp, ref aParam, ref aCalib); + SendData(sId, 24, flag, dcp, ref aParam, ref aCalib); + SendData(sId, 2, flag, dcp, ref aParam, ref aCalib); + break; + case 9: // Cell Voltage Calibration + SendData(sId, 9, flag, dcp, ref aParam, ref aCalib); + break; + case 1: // Cell Balancing Flag Set + SendData(sId, 1, flag, dcp, ref aParam, ref aCalib); + break; + case 12: // Cell Voltage Calibration + SendData(sId, 12, flag, dcp, ref aParam, ref aCalib); + break; + case 8: // Battery Parameter Setting + SendData(sId, 8, flag, dcp, ref aParam, ref aCalib); + break; + case 17: // Cell Balancing Parameter - 240531 + SendData(sId, 17, flag, dcp, ref aParam, ref aCalib); + break; + case 21: // System Information (Device Address) + SendData(sId, 21, flag, dcp, ref aParam, ref aCalib); + break; + case 13: // Soc Calibration + SendData(sId, 13, flag, dcp, ref aParam, ref aCalib); + break; + case 15: // Default Parameter + SendData(sId, 15, flag, dcp, ref aParam, ref aCalib); + break; + case 16: // Default Parameter + if (aParam.DefalutParamAll == 1) + SendData(0xFF, 16, flag, dcp, ref aParam, ref aCalib); + else + SendData(sId, 16, flag, dcp, ref aParam, ref aCalib); + break; + case 2: // Cell Voltage Difference Parameter + SendData(sId, 2, flag, dcp, ref aParam, ref aCalib); + break; + case 25: + SendData(sId, 25, flag, dcp, ref aParam, ref aCalib); + break; + + // Inventory Data Control + case 900: // Manufacturer Cmd + SendData(sId, 900, flag, dcp, ref aParam, ref aCalib); + break; + case 901: // Serial Number #1 Cmd + SendData(sId, 901, flag, dcp, ref aParam, ref aCalib); + break; + case 902: // Serial Number #2 Cmd + SendData(sId, 902, flag, dcp, ref aParam, ref aCalib); + break; + } + } + + //unsafe void SendData(int sId, int mode, int flag, ref DeviceParamData aParam, ref DeviceCalibration aCalib) + //{ + // if (can_bOpen == 0) return; + + // VCI_CAN_OBJ sendobj = MakeTxData(sId, mode, flag, ref aParam, ref aCalib); + + // Monitor.Enter(lockObject); + // try + // { + // OnPrint?.Invoke(this, csCanCommFunction.PacketToMsg(sendobj, 1)); + + // if (VCI_Transmit(can_devtype, can_devind, can_canind, ref sendobj, 1) == 0) + // { + // throw new Exception("Failed to send"); + // } + // } + // catch (Exception) + // { + // //throw new Exception(String.Format("CAN Transmit Exception", ex.Message)); + // } + // finally + // { + // Monitor.Exit(lockObject); + // } + //} + + void SendData(int sid, int mode, int flag, int dcp, ref DeviceParamData aParam, ref DeviceCalibration aCalib) + { + UInt32 exID; + byte[] sendData = new byte[8]; + + exID = MakeTxData(sid, mode, flag, dcp, ref aParam, ref aCalib, ref sendData); + + SendDataFromApp(exID, sendData, 0); + //SendCAN(exID, sendData); + } + + unsafe void SendCAN(UInt32 exID, byte[] data) + { + if (can_bOpen == false) return; + + VCI_CAN_OBJ sendobj = new VCI_CAN_OBJ(); + + sendobj.SendType = csCanConstData.SendType.Normal; + sendobj.RemoteFlag = csCanConstData.FrameFormat.Data_Frame; + sendobj.ExternFlag = csCanConstData.FrameType.Extended; + + sendobj.ID = exID; + sendobj.DataLen = (byte)data.Length; + for (int i = 0; i < data.Length; i++) + sendobj.Data[i] = data[i]; + + //Monitor.Enter(lockObject); + if (Monitor.TryEnter(lockObject, 2000)) + { + try + { + if (VCI_Transmit(can_devtype, can_devind, can_canind, ref sendobj, 1) == 0) + { + throw new Exception("Failed to send"); + } + OnPrint?.Invoke(this, csCanCommFunction.PacketToMsg(sendobj, 1)); + + //OnPrint?.Invoke(this, csCanCommFunction.PacketToMsg(sendobj, 1)); + } + catch (Exception) + { + //throw new Exception(String.Format("CAN Transmit Exception", ex.Message)); + } + finally + { + Monitor.Exit(lockObject); + } + } + else + { + //OnPrint?.Invoke(this, "CAN SEND FAIL"); + throw new Exception("CAN SEND FAIL"); + } + //try + //{ + // if (VCI_Transmit(can_devtype, can_devind, can_canind, ref sendobj, 1) == 0) + // { + // throw new Exception("Failed to send"); + // } + // OnPrint?.Invoke(this, csCanCommFunction.PacketToMsg(sendobj, 1)); + //} + //catch (Exception) + //{ + // //throw new Exception(String.Format("CAN Transmit Exception", ex.Message)); + //} + //finally + //{ + // Monitor.Exit(lockObject); + //} + } + + private UInt32 MakeID(int sId, int mode) + { + UInt32 result = 0; + PACKET_HEADER hdr = new PACKET_HEADER(); + + hdr.Index = 6; // Fixed 6 + hdr.R = 0; // Fixed 0 + hdr.DP = 0; // Fixed 0 + hdr.PF = (byte)mode; // Command + if (sId == 0xFF) hdr.PS = (byte)(sId); // PDU SPECIFIC + else hdr.PS = (byte)(sId + 200); // PDU SPECIFIC + hdr.SA = 200; // SOURCE ADDRESS + + result = csCanCommFunction.CovertHtoP(hdr); + return result; + } + + private UInt32 MakeInvID(int sId, int mode) + { + UInt32 result = 0; + PACKET_HEADER hdr = new PACKET_HEADER(); + + hdr.Index = 1; // Fixed 1 for Inventory Data + hdr.R = 0; // Fixed 0 + hdr.DP = 0; // Fixed 0 + hdr.PF = (byte)((mode % 900) + 1); // Command + if (sId == 0xFF) hdr.PS = (byte)(sId); // PDU SPECIFIC + else hdr.PS = (byte)(sId + 200); // PDU SPECIFIC + hdr.SA = 200; // SOURCE ADDRESS + + result = csCanCommFunction.CovertHtoP(hdr); + return result; + } + + unsafe private VCI_CAN_OBJ MakeTxData(int sId, int mode, int flag, int dcp, ref DeviceParamData aParam, ref DeviceCalibration aCalib) + { + VCI_CAN_OBJ sendobj = new VCI_CAN_OBJ(); + + sendobj.SendType = csCanConstData.SendType.Normal; + sendobj.RemoteFlag = csCanConstData.FrameFormat.Data_Frame; + sendobj.ExternFlag = csCanConstData.FrameType.Extended; + if (mode < 900) + { sendobj.ID = MakeID(sId, mode); } + else + { sendobj.ID = MakeInvID(sId, mode); } + sendobj.DataLen = (byte)(8); + + byte[] aData = csCanCommFunction.MakeCanData(mode, flag, dcp, ref aParam, ref aCalib); + for (int i = 0; i < 8; i++) + { sendobj.Data[i] = aData[i]; } + + return sendobj; + } + + private UInt32 MakeTxData(int sId, int mode, int flag, int dcp, ref DeviceParamData aParam, ref DeviceCalibration aCalib, ref byte[] wData) + { + UInt32 result = 0; + + if (mode < 900) + { result = MakeID(sId, mode); } + else + { result = MakeInvID(sId, mode); } + + wData = csCanCommFunction.MakeCanData(mode, flag, dcp, ref aParam, ref aCalib); + + return result; + } + + #endregion + + #region COMM TX THREAD + int current_cmd = 0; + int RxSystemId = 0; + + public int GetCommSystemId() + { + return RxSystemId; + } + + unsafe private void CanTxThread() + { + while (CanTxThreadEnd == false) + { + TCanTRxData tData = CanTxBuf.GetBuff(); + if (tData != null) + { + SendCanPacket(tData, tData.type); + //Thread.Sleep(1); + } + else + { + if ((CanPolling) && (AutoCanTx)) + { + int flag = 0; + + TxProcess(ref flag); + RxSystemId = SystemId; + SendData(SystemId, current_cmd, flag, dcp, ref SystemData.ParamData, ref SystemData.CalibriationData); + } + Thread.Sleep(50); + } + Thread.Sleep(1); + } + } + + int TxFlag = 0; + void TxProcess(ref int aflag) + { + switch (TxFlag) + { + case 0: + current_cmd = 900; + TxFlag = 1; + break; + case 1: + current_cmd = 901; + TxFlag = 2; + break; + case 2: + current_cmd = 902; + TxFlag = 3; + break; + default: + switch (current_cmd) + { + case 900: current_cmd = 901; break; // INV Manufacture Date + case 901: current_cmd = 902; break; // INV pcb sn MSB + case 902: current_cmd = 9; break; // INV pcb sn LSB + + case 9: current_cmd = 20; break; // Module Address get + + case 20: current_cmd = 1; break; + + case 1: current_cmd = 19; break; // Status + case 19: current_cmd = 3; break; + case 3: current_cmd = 4; break; + case 4: current_cmd = 11; break; + case 10: current_cmd = 11; break; + case 11: current_cmd = 15; break; + case 15: current_cmd = 16; break; + case 16: current_cmd = 900; break; + default: current_cmd = 900; break; + } + break; + } + } + private unsafe void SendCanPacket(TCanTRxData CanTxData, int type) + { + VCI_CAN_OBJ sendobj = new VCI_CAN_OBJ(); + + sendobj.SendType = csCanConstData.SendType.Normal; + sendobj.RemoteFlag = csCanConstData.FrameFormat.Data_Frame; + sendobj.ExternFlag = csCanConstData.FrameType.Extended; + sendobj.ID = CanTxData.exid; + sendobj.DataLen = (byte)(8); + + for (int i = 0; i < 8; i++) + { + sendobj.Data[i] = CanTxData.data[i]; + } + + Monitor.Enter(lockObject); + try + { + if (VCI_Transmit(can_devtype, can_devind, can_canind, ref sendobj, 1) == 0) + { + throw new Exception("Failed to send"); + } + //OnPrint?.Invoke(this, csCanConstData.PacketToMsg(CanTxData.exid, CanTxData.data, 1, type)); + } + catch (Exception) + { + } + finally + { + Monitor.Exit(lockObject); + } + } + + #endregion + + #region COMM RX THREAD + unsafe private void CanRxThread() + { + DateTime aTime; + + while (CanRxThreadEnd == false) + { + UInt32 res = new UInt32(); + aTime = DateTime.Now; + + res = VCI_GetReceiveNum(can_devtype, can_devind, can_canind); + if (res > 0) + { + // Received data + IntPtr pt = Marshal.AllocHGlobal(Marshal.SizeOf(typeof(VCI_CAN_OBJ)) * (Int32)res); + res = VCI_Receive(can_devtype, can_devind, can_canind, pt, res, 100); + + for (UInt32 i = 0; i < res; i++) + { + VCI_CAN_OBJ obj = (VCI_CAN_OBJ)Marshal.PtrToStructure((IntPtr)((UInt32)pt + i * Marshal.SizeOf(typeof(VCI_CAN_OBJ))), + typeof(VCI_CAN_OBJ)); + OnPrint?.Invoke(this, csCanCommFunction.PacketToMsg(obj, 0)); + + UInt32 exID = obj.ID; + byte[] adata = new byte[obj.DataLen]; + for (int j = 0; j < obj.DataLen; j++) adata[j] = obj.Data[j]; + + PACKET_HEADER pHeader = csCanCommFunction.CovertPtoH(exID); + + switch (pHeader.Index) + { + case 0x01: // Inventory Data Packet + if ((pHeader.SA == (200 + SystemId))) + { + RxSystemId = pHeader.SA - 200; + csCanCommFunction.CanInvRxProcess(RxSystemId, exID, adata, ref SystemData, aTime); + OnUpdate?.Invoke(this, ref SystemData); + } + break; + case 0x04: // Firmware Update Packet + OnDataRecv?.Invoke(exID, adata); + break; + case 0x06: // Normal Packet + if (pHeader.SA == (200 + SystemId)) + { + RxSystemId = pHeader.SA - 200; + csCanCommFunction.CanRxProcess(ref Config, RxSystemId, exID, adata, ref SystemData, aTime); + + OnUpdate?.Invoke(this, ref SystemData); + } + break; + } + } + Marshal.FreeHGlobal(pt); + + Thread.Sleep(1); + } + else if (res == 0) + { + TimeSpan dTime = DateTime.Now - SystemData.LastRxTime; + if (SystemData.ShelfCommFail == false) + { + if (dTime.TotalSeconds > 3) + { + SystemData.ShelfCommFail = true; + DataInit(); + } + } + OnUpdate?.Invoke(this, ref SystemData); + Thread.Sleep(100); + } + } + } + #endregion + + #region DATA INIT + private void DataInit() + { + DataFunction.DataInit(ref SystemData, ref Config); + } + #endregion + } +} diff --git a/LFP_Manager_PRM/Threads/csDbThread.cs b/LFP_Manager_PRM/Threads/csDbThread.cs new file mode 100644 index 0000000..cb901d6 --- /dev/null +++ b/LFP_Manager_PRM/Threads/csDbThread.cs @@ -0,0 +1,299 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.IO; +using System.Data; +using System.Runtime.InteropServices; + +using System.Threading; +using System.IO.Ports; +using System.Windows.Forms; + +using LFP_Manager.DataStructure; +using LFP_Manager.Function; +using LFP_Manager.Utils; + +using System.Data.SQLite; + +namespace LFP_Manager.Threads +{ + public delegate void DbDataPrint(object sender, string msg); + + class csDbThread + { + #region VARIABLES + + CommConfig Config; + DeviceSystemData SystemData; + short[] Status, oldStatus; + + bool Active = false; + + Thread dbProc = null; + + int CellDivUnit = csConstData.Unit.CELL_DIV_P3; + + //////////////////////////////////////// + bool DbThreadEnd = true; + + public event DbDataPrint OnPrint = null; + + #endregion + + #region CONSTRUCTORS + + public csDbThread(ref CommConfig aConfig, ref DeviceSystemData aSystemData) + { + Status = new short[2]; + oldStatus = new short[2]; + Config = aConfig; + SystemData = aSystemData; + + dbProc = new Thread(dbThreadProcess); + } + + public void disposeThread() + { + DbThreadEnd = true; + if (dbProc != null) + { + if (dbProc.IsAlive) + { + dbProc.Abort(); + } + dbProc = null; + } + } + + public unsafe bool Start(CommConfig aConfig) + { + bool result = false; + + Config = aConfig; + switch (Config.TargetModelIndex) + { + case 0: // PR-57150 + CellDivUnit = csConstData.Unit.CELL_DIV_P3; + break; + case 1: // PR-64150 + CellDivUnit = csConstData.Unit.CELL_DIV_P4; + break; + case 2: // LFPM-57080 + CellDivUnit = csConstData.Unit.CELL_DIV_P4; + break; + case 3: // PR-102150 + CellDivUnit = csConstData.Unit.CELL_DIV_P4; + break; + case 4: // PR-115300 + CellDivUnit = csConstData.Unit.CELL_DIV_P4; + break; + case 5: // PR-67150 + CellDivUnit = csConstData.Unit.CELL_DIV_P4; + break; + default: + CellDivUnit = csConstData.Unit.CELL_DIV_P3; + break; + } + + // DB Create with Path Create + csHistoryFunction.DbCreate(Path.GetDirectoryName(Application.ExecutablePath)); + + try + { + DbThreadEnd = false; + dbProc.Start(); + + Active = true; + } + catch (Exception ex) + { + OnPrint?.Invoke(this, ex.Message); + } + + return result; + } + + public void Stop() + { + DbThreadEnd = true; + + Active = false; + } + + public void UpdateStatus(short st1, short st2) + { + Status[0] = st1; + Status[1] = st2; + } + + #region UPDATE DATA + + public void UpdateData(ref DeviceSystemData aSystemData) + { + SystemData = aSystemData; + } + + #endregion + + #endregion + + #region MAKE ALARM HISTORY + + private void CheckAlarm() + { + bool[] Data1 = csUtils.Int16ToBitArray((short)Status[0]); + bool[] Data2 = csUtils.Int16ToBitArray((short)Status[1]); + bool[] oData1 = csUtils.Int16ToBitArray((short)oldStatus[0]); + bool[] oData2 = csUtils.Int16ToBitArray((short)oldStatus[1]); + + // Cell Over Voltage + if (oData2[0] != Data2[0]) + { + if (Data2[0] == true) + { + IDInsert("", csDbConstData.DB_ALARM.CELL_UNDER_VOLTAGE, csDbConstData.DB_ALARM.FLAG_TRIP); + } + else + { + if (oData1[0] != Data1[0]) + { + if (Data1[0] == true) + IDInsert("", csDbConstData.DB_ALARM.CELL_UNDER_VOLTAGE, csDbConstData.DB_ALARM.FLAG_WARNING); + else + IDInsert("", csDbConstData.DB_ALARM.CELL_UNDER_VOLTAGE, csDbConstData.DB_ALARM.FLAG_RELEASE); + } + else + { + if (Data1[0] == false) + IDInsert("", csDbConstData.DB_ALARM.CELL_UNDER_VOLTAGE, csDbConstData.DB_ALARM.FLAG_RELEASE); + } + } + } + else + { + if (oData1[0] != Data1[0]) + { + if (Data1[0] == true) + IDInsert("", csDbConstData.DB_ALARM.CELL_UNDER_VOLTAGE, csDbConstData.DB_ALARM.FLAG_WARNING); + else + IDInsert("", csDbConstData.DB_ALARM.CELL_UNDER_VOLTAGE, csDbConstData.DB_ALARM.FLAG_RELEASE); + } + } + oldStatus = Status; + } + + #endregion + + #region DB INSERT DATA + private void IDInsert(string mPath, int aCode, int fCode) + { + //string dbFilename = mPath + csDbConstData.DataBase.FileName; + string dbFilename = System.IO.Path.GetDirectoryName(Application.ExecutablePath) + csDbConstData.DataBase.FileName; + + // Open database + string strConn = @"Data Source=" + dbFilename; + using (var connection = new SQLiteConnection(strConn)) + { + connection.Open(); + try + { + // Insert data + using (SQLiteCommand command = connection.CreateCommand()) + { + command.CommandText = "BEGIN;"; //명시적 트렌젝션 시작 + command.ExecuteNonQuery(); + + //sSQL = "insert into TrendTable ( TrendStamp, TagName, TagValue) Values ( " + IntToStr(stamp) + "," + name + "," + value + ");"; + command.CommandText = "INSERT INTO " + csDbConstData.DataBase.TableName + "(HTime, model, sno, alarm_name, alarm_code, flag_name, flag, param1, param2) " + + " Values (@HTime, @model, @sno, @alarm_name, @alarm_code, @flag_name, @flag, @param1, @param2);"; + SQLiteParameter[] p = new SQLiteParameter[] + { + new SQLiteParameter("@HTime", DbType.DateTime), + new SQLiteParameter("@model", DbType.String), + new SQLiteParameter("@sno", DbType.Int16), + new SQLiteParameter("@alarm_name", DbType.String), + new SQLiteParameter("@alarm_code", DbType.Int16), + new SQLiteParameter("@flag_name", DbType.String), + new SQLiteParameter("@flag", DbType.Int16), + new SQLiteParameter("@param1", DbType.Decimal), + new SQLiteParameter("@param2", DbType.Decimal), + }; // end SQLiteParameter + + command.Parameters.AddRange(p); + + int result = 0; + + p[0].Value = DateTime.Now; // DateTime + p[1].Value = "AAA"; // Model Name + p[2].Value = 1; // System No + p[3].Value = csDbConstData.DB_ALARM.ALARM_NAME[aCode]; // alarm_name + p[4].Value = aCode; // alarm_code + p[5].Value = csDbConstData.DB_ALARM.FLAG_NAME[fCode]; // flag_name + p[6].Value = fCode; // flag_code + p[7].Value = 0.0; // param1 + p[8].Value = 0.0; // param2 + + try + { + result = command.ExecuteNonQuery(); + } + catch (Exception) + { + } + command.CommandText = "COMMIT;"; //명시적 트렌젝션 시작 + } + } + catch (Exception) + { + //MessageBox.Show(e.ToString()); + } + finally + { + connection.Close(); + } + } + } + + #endregion + + #region DB THREAD + + private void dbThreadProcess() + { + DateTime bakDateTime = DateTime.Now; + int ss = Config.DbLogPeriod; + + while (DbThreadEnd == false) + { + if (Active) + { + DateTime cDate = DateTime.Now; + + if ( + ((bakDateTime.Minute != cDate.Minute) + || (bakDateTime.Second != cDate.Second)) + && ((cDate.Second % ss) == 0) + ) + { + // Database Log Process + try + { + csDbUtils.LogDbCreate(csConstData.CommType.CAN_MODEL[Config.TargetModelIndex]); + csDbUtils.BmsLogDataInsert(ref Config, ref SystemData, cDate, CellDivUnit); + + bakDateTime = cDate; + } + catch (Exception ex) + { + MessageBox.Show(ex.Message); + } + } + } + Thread.Sleep(100); + } + } + + #endregion + } +} diff --git a/LFP_Manager_PRM/Threads/csValueCanThread.cs b/LFP_Manager_PRM/Threads/csValueCanThread.cs new file mode 100644 index 0000000..34b6d19 --- /dev/null +++ b/LFP_Manager_PRM/Threads/csValueCanThread.cs @@ -0,0 +1,941 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using System.Runtime.InteropServices; + +using System.Threading; +using System.Windows.Forms; + +using LFP_Manager.DataStructure; +using LFP_Manager.Function; +using LFP_Manager.Utils; +using static DevExpress.Utils.Drawing.Helpers.NativeMethods; + +namespace LFP_Manager.Threads +{ + class csValueCanThread + { + #region DLL FUNCTION + + #endregion + + #region VARIABLES + + int TxThreadPeriod = 10; + int RxThreadPeriod = 1; + + public delegate void invokeDelegate(); + + CommConfig Config; + DeviceSystemData SystemData; + + int SystemId = 0; + int DCP = 0; + + Thread canCommTx = null; + Thread canCommRx = null; + //string Msg = ""; + + // ValueCAN Variables + IntPtr m_hObject; // handle for device + NeoDevice ndNeoToOpen; + byte[] bNetwork = new byte[255]; // List of hardware IDs + + int iOpenDeviceType; // Storage for the device type that is open + + //////////////////////////////////////// + bool can_bOpen = false; + + bool CanTxThreadEnd = true; + bool CanRxThreadEnd = true; + + bool CanPolling = false; + bool AutoCanTx = true; + + // Message Queue + icsSpyMessage[] stMessages = new icsSpyMessage[20000]; // TempSpace for messages + + const int RX_QUEUE_MAX = 512; + icsSpyMessage[] RxMsgQueue = new icsSpyMessage[RX_QUEUE_MAX]; // RX Message Queue + int RxQueueFront = 0; + int RxQueueEnd = 0; + + void RxQueuePut(ref icsSpyMessage rxMsg) + { + RxMsgQueue[RxQueueFront++] = rxMsg; + RxQueueFront %= RX_QUEUE_MAX; + } + + bool RxQueueGet(ref icsSpyMessage rxMsg) + { + if (RxQueueFront != RxQueueEnd) + { + rxMsg = RxMsgQueue[RxQueueEnd++]; + RxQueueEnd %= RX_QUEUE_MAX; + + return true; + } + return false; + } + + public event CanDataUpdate OnUpdate = null; + public event CanDataPrint OnPrint = null; + public event CanDataRecv OnDataRecv = null; + + private object lockObject = new object(); + #endregion + + #region CONSTRUCTORS + public csValueCanThread(int sId, CommConfig aConfig, ref DeviceSystemData aSystemData) + { + SystemId = sId; + Config = aConfig; + SystemData = aSystemData; + + canCommTx = new Thread(canTxThread); + canCommRx = new Thread(canRxThread); + } + + public void disposeThread() + { + CanTxThreadEnd = true; + if (canCommTx != null) + { + if (canCommTx.IsAlive) + { + canCommTx.Abort(); + } + canCommTx = null; + } + CanRxThreadEnd = true; + if (canCommRx != null) + { + if (canCommRx.IsAlive) + { + canCommRx.Abort(); + } + canCommRx = null; + } + + //close the port + int iNumberOfErrors = 0; + int iResult = icsNeoDll.icsneoClosePort(m_hObject, ref iNumberOfErrors); + if (iResult == 1) + { + //MessageBox.Show("Port Closed OK!"); + } + else + { + throw new Exception(String.Format("ValueCAN - Problem ClosingPort")); + } + + //Clear device type and open flag + iOpenDeviceType = 0; + can_bOpen = false; + } + + public int CloseValueCAN() + { + int iNumberOfErrors = 0; + int iResult = icsNeoDll.icsneoClosePort(m_hObject, ref iNumberOfErrors); + if (iResult == 1) + { + //MessageBox.Show("Port Closed OK!"); + } + else + { + throw new Exception(String.Format("ValueCAN - Problem ClosingPort")); + } + + return iResult; + } + + public int ReOpenValueCAN() + { + int iNumberOfErrors = 0; + int iResult = icsNeoDll.icsneoClosePort(m_hObject, ref iNumberOfErrors); + if (iResult != 1) throw new Exception(String.Format("ValueCAN - Problem ClosingPort")); + + iResult = icsNeoDll.icsneoOpenNeoDevice(ref ndNeoToOpen, ref m_hObject, ref bNetwork[0], 1, 0); + if (iResult != 1) throw new Exception(String.Format("ValueCAN - Problem Opening Port")); + + return iResult; + } + + public int OpenValueCan() + { + int iResult; + NeoDeviceEx[] ndNeoToOpenex = new NeoDeviceEx[16]; //Struct holding detected hardware information + int iNumberOfDevices; //Number of hardware devices to look for + + OptionsNeoEx neoDeviceOption = new OptionsNeoEx(); + + //Set the number of devices to find, for this example look for 16. This example will only work with the first. + iNumberOfDevices = 15; + + iResult = icsNeoDll.icsneoFindDevices(ref ndNeoToOpenex[0], ref iNumberOfDevices, 0, 0, ref neoDeviceOption, 0); + if (iResult == 0) + { + throw new Exception(String.Format("ValueCAN - Problem finding devices")); + } + + if (iNumberOfDevices < 1) + { + throw new Exception(String.Format("ValueCAN - No devices found")); + } + + ndNeoToOpen = ndNeoToOpenex[0].neoDevice; + //Open the first found device + iResult = icsNeoDll.icsneoOpenNeoDevice(ref ndNeoToOpen, ref m_hObject, ref bNetwork[0], 1, 0); + if (iResult == 1) + { + //MessageBox.Show("Port Opened OK!"); + } + else + { + throw new Exception(String.Format("ValueCAN - Problem Opening Port")); + } + //Set the device type for later use + iOpenDeviceType = ndNeoToOpen.DeviceType; + + return 1; + } + + private void ConfigBitRate(CommConfig aConfig) + { + //Get the network name index to set the baud rate of + int iNetworkID = (int)eNETWORK_ID.NETID_HSCAN; + int iBitRateToUse = csCanConstData.BaudRate.BaudRateInts[aConfig.CanBaudrate]; + + //Set the bit rate + int iResult = icsNeoDll.icsneoSetBitRate(m_hObject, iBitRateToUse, iNetworkID); + if (iResult != 1) + { + throw new Exception(String.Format("ValueCAN - Problem setting bit rate")); + } + else + { + //MessageBox.Show("Bit Rate Set"); + } + } + + private void ConfigFDRate(CommConfig aConfig) + { + //Get the network name index to set the baud rate of + int iNetworkID = (int)eNETWORK_ID.NETID_HSCAN; + int iBitRateToUse = 10000000; + + //Set the bit rate + int iResult = icsNeoDll.icsneoSetFDBitRate(m_hObject, iBitRateToUse, iNetworkID); + if (iResult != 1) + { + throw new Exception(String.Format("ValueCAN - Problem setting FD bit rate")); + } + else + { + //MessageBox.Show("FD Bit Rate Set"); + } + } + + private void GetSetting(CommConfig aConfig) + { + SVCAN3Settings VcanReadSettings = new SVCAN3Settings(); + SFireSettings FireReadSettings = new SFireSettings(); + SFire2Settings Fire2ReadSettings = new SFire2Settings(); + SRADGalaxySettings RadGalaxyReadSettings = new SRADGalaxySettings(); + SVCANRFSettings VcanRFReadSettings = new SVCANRFSettings(); + SVCAN412Settings Vcan412ReadSettings = new SVCAN412Settings(); + SRADPlutoSettingsPack RADPlutoSettings = new SRADPlutoSettingsPack(); + + CAN_SETTINGS HSCanSettings = new CAN_SETTINGS(); + int iNumberOfBytes = 0; + int iResult; + + //Get the settigns of the connected hardware + switch (iOpenDeviceType) + { + case (int)eHardwareTypes.NEODEVICE_FIRE: //FIRE + //Get the settings + iNumberOfBytes = System.Runtime.InteropServices.Marshal.SizeOf(FireReadSettings); + iResult = icsNeoDll.icsneoGetFireSettings(m_hObject, ref FireReadSettings, iNumberOfBytes); + if (iResult == 0) + { + MessageBox.Show("Problem reading FIRE configuration"); + return; + } + //Copy the HS CAN settings from the structure to sub struct + HSCanSettings = FireReadSettings.can1; + break; + + case (int)eHardwareTypes.NEODEVICE_VCAN3: //Vcan3 + //Get the setting + iNumberOfBytes = System.Runtime.InteropServices.Marshal.SizeOf(VcanReadSettings); + iResult = icsNeoDll.icsneoGetVCAN3Settings(m_hObject, ref VcanReadSettings, iNumberOfBytes); + if (iResult == 0) + { + MessageBox.Show("Problem reading VCAN3 configuration"); + return; + } + //Copy the HS CAN settings from the structure to sub struct + HSCanSettings = VcanReadSettings.Can1; + break; + + case (int)eHardwareTypes.NEODEVICE_FIRE2: //FIRE2 + //Get the setting + iNumberOfBytes = System.Runtime.InteropServices.Marshal.SizeOf(Fire2ReadSettings); + iResult = icsNeoDll.icsneoGetFire2Settings(m_hObject, ref Fire2ReadSettings, iNumberOfBytes); + if (iResult == 0) + { + MessageBox.Show("Problem reading FIRE2 configuration"); + return; + } + //Copy the HS CAN settings from the structure to sub struct + HSCanSettings = Fire2ReadSettings.can1; + break; + + case (int)eHardwareTypes.NEODEVICE_RADGALAXY: //RadGalaxy + //Get the setting + iNumberOfBytes = System.Runtime.InteropServices.Marshal.SizeOf(RadGalaxyReadSettings); + iResult = icsNeoDll.icsneoGetRADGalaxySettings(m_hObject, ref RadGalaxyReadSettings, iNumberOfBytes); + if (iResult == 0) + { + MessageBox.Show("Problem reading RADGalaxy configuration"); + return; + } + //Copy the HS CAN settings from the structure to sub struct + HSCanSettings = RadGalaxyReadSettings.Can1; + break; + + case (int)eHardwareTypes.NEODEVICE_VCANRF: //VcanRF + //Get the setting + iNumberOfBytes = System.Runtime.InteropServices.Marshal.SizeOf(VcanRFReadSettings); + iResult = icsNeoDll.icsneoGetVCANRFSettings(m_hObject, ref VcanRFReadSettings, iNumberOfBytes); + if (iResult == 0) + { + MessageBox.Show("Problem reading VCANRF configuration"); + return; + } + //Copy the HS CAN settings from the structure to sub struct + HSCanSettings = VcanRFReadSettings.can1; + break; + + case (int)eHardwareTypes.NEODEVICE_VCAN42: //Vcan4-2 + case (int)eHardwareTypes.NEODEVICE_VCAN41: //Vcan4-1 (Same steps for both) + //Get the setting + iNumberOfBytes = System.Runtime.InteropServices.Marshal.SizeOf(Vcan412ReadSettings); + iResult = icsNeoDll.icsneoGetVCAN412Settings(m_hObject, ref Vcan412ReadSettings, iNumberOfBytes); + if (iResult == 0) + { + MessageBox.Show("Problem reading VCAN412 configuration"); + return; + } + //Copy the HS CAN settings from the structure to sub struct + HSCanSettings = Vcan412ReadSettings.can1; + break; + case (int)eHardwareTypes.NEODEVICE_RADPLUTO: //RAD Pluto + //Get the setting + RADPlutoSettings.uiDevice = (UInt32)EDeviceSettingsType.DeviceRADPlutoSettingsType; + iNumberOfBytes = System.Runtime.InteropServices.Marshal.SizeOf(RADPlutoSettings); + iResult = icsNeoDll.icsneoGetDeviceSettings(m_hObject, ref RADPlutoSettings, iNumberOfBytes, 0); + if (iResult == 0) + { + MessageBox.Show("Problem reading RAD Pluto configuration"); + return; + } + //Copy the HS CAN settings from the structure to sub struct + HSCanSettings = RADPlutoSettings.PlutoSettings.can1; + break; + default: + //Connected hardware does not support this command + MessageBox.Show("Problem reading configuration, unsupported device"); + return; + } + + //fill text boxes with data from sub struct + //txt3GPSeg1.Text = Convert.ToString(HSCanSettings.TqSeg1); + //txt3GPSeg2.Text = Convert.ToString(HSCanSettings.TqSeg2); + //txt3GPropDelay.Text = Convert.ToString(HSCanSettings.TqProp); + //txt3GSJumpW.Text = Convert.ToString(HSCanSettings.TqSync); + //txt3GBRP.Text = Convert.ToString(HSCanSettings.BRP); + + } + + public unsafe bool Start(CommConfig aConfig, int sId, bool aPolling) + { + bool result = false; + + SystemId = sId; + CanPolling = aPolling; + + try + { + if (OpenValueCan() == 0) + throw new System.InvalidOperationException("Failed to open the device, please check if the device type and device index number are correct."); + + // Baudrate Config + ConfigBitRate(aConfig); + + // FD Rate Config + ConfigFDRate(aConfig); + + // Get Setting Value + GetSetting(aConfig); + + can_bOpen = true; + + CanTxThreadEnd = false; + CanRxThreadEnd = false; + + canCommTx.Start(); + canCommRx.Start(); + + result = true; + } + catch (Exception ex) + { + System.Exception Ex = new System.Exception(ex.Message, ex); + throw Ex; + } + return result; + } + #endregion + + #region TX FUNCTION + + private int GetErrorValueCAN() + { + int result = 0; + int[] iErrors = new int[600]; //Array for Error Numbers + int iNumberOfErrors = 0; // Storage for number of errors + + // Read Out the errors + int iResult = icsNeoDll.icsneoGetErrorMessages(m_hObject, ref iErrors[0], ref iNumberOfErrors); + + // Test the returned result + if (iResult == 0) + { + MessageBox.Show("Problem Reading Errors"); + } + else + { + if (iNumberOfErrors != 0) + { + ReOpenValueCAN(); + for (int iCount = 0; iCount < iNumberOfErrors; iCount++) + { + if (iErrors[iCount] == 44) result++; + } + } + } + return result; + } + private void SendPacketByValueCAN(UInt32 ExID, byte[] Data) + { + Monitor.Enter(lockObject); + try + { + //OnPrint?.Invoke(this, csCanCommFunction.PacketToMsg(sendobj, 1)); + + long lResult; + icsSpyMessage stMessagesTx = new icsSpyMessage(); + long lNetworkID; + string sTempString; + + // Read the Network we will transmit on (indicated by lstNetwork ListBox) + sTempString = "HSCAN"; + lNetworkID = icsNeoDll.GetNetworkIDfromString(ref sTempString); + + // Is this a CAN network or a J1850/ISO one? + // load the message structure + + //Make id Extended + stMessagesTx.StatusBitField = Convert.ToInt16(eDATA_STATUS_BITFIELD_1.SPY_STATUS_XTD_FRAME); + + stMessagesTx.ArbIDOrHeader = (int)ExID; // The ArbID + stMessagesTx.NumberBytesData = (byte)Data.Length; // The number of Data Bytes + if (stMessagesTx.NumberBytesData > 8) stMessagesTx.NumberBytesData = 8; // You can only have 8 databytes with CAN + // Load all of the data bytes in the structure + + stMessagesTx.Data1 = Data[0]; + stMessagesTx.Data2 = Data[1]; + stMessagesTx.Data3 = Data[2]; + stMessagesTx.Data4 = Data[3]; + stMessagesTx.Data5 = Data[4]; + stMessagesTx.Data6 = Data[5]; + stMessagesTx.Data7 = Data[6]; + stMessagesTx.Data8 = Data[7]; + + // Transmit the assembled message + for (int i = 0; i < 5; i++) + { + lResult = icsNeoDll.icsneoTxMessages(m_hObject, ref stMessagesTx, Convert.ToInt32(lNetworkID), 1); + if (lResult == 1) + break; + else + { + if (GetErrorValueCAN() == 0) break; + //ReOpenValueCAN(); + } + } + //GetErrorValueCAN(); + } + catch (Exception) + { + //throw new Exception(String.Format("CAN Transmit Exception", ex.Message)); + } + finally + { + Monitor.Exit(lockObject); + } + + } + + private unsafe void SendPacketByValueCAN(ref VCI_CAN_OBJ senObj) + { + long lResult; + icsSpyMessage stMessagesTx = new icsSpyMessage(); + long lNetworkID; + string sTempString; + + // Read the Network we will transmit on (indicated by lstNetwork ListBox) + sTempString = "HSCAN"; + lNetworkID = icsNeoDll.GetNetworkIDfromString(ref sTempString); + + // Is this a CAN network or a J1850/ISO one? + // load the message structure + + //Make id Extended + stMessagesTx.StatusBitField = Convert.ToInt16(eDATA_STATUS_BITFIELD_1.SPY_STATUS_XTD_FRAME); + + stMessagesTx.ArbIDOrHeader = (int)senObj.ID; // The ArbID + stMessagesTx.NumberBytesData = (byte)senObj.DataLen; // The number of Data Bytes + if (stMessagesTx.NumberBytesData > 8) stMessagesTx.NumberBytesData = 8; // You can only have 8 databytes with CAN + // Load all of the data bytes in the structure + + stMessagesTx.Data1 = senObj.Data[0]; + stMessagesTx.Data2 = senObj.Data[1]; + stMessagesTx.Data3 = senObj.Data[2]; + stMessagesTx.Data4 = senObj.Data[3]; + stMessagesTx.Data5 = senObj.Data[4]; + stMessagesTx.Data6 = senObj.Data[5]; + stMessagesTx.Data7 = senObj.Data[6]; + stMessagesTx.Data8 = senObj.Data[7]; + + // Transmit the assembled message + lResult = icsNeoDll.icsneoTxMessages(m_hObject, ref stMessagesTx, Convert.ToInt32(lNetworkID), 1); + // Test the returned result + if (lResult != 1) + { + MessageBox.Show(String.Format("Problem Transmitting Message - ({0})", lResult)); + } + } + + public void SetAutoTx(bool autoTx) + { + AutoCanTx = autoTx; + } + + unsafe public void SendDataFromApp(UInt32 header, byte[] data) + { + if (can_bOpen == false) return; + + VCI_CAN_OBJ sendobj = new VCI_CAN_OBJ(); + + sendobj.SendType = csCanConstData.SendType.Normal; + sendobj.ExternFlag = csCanConstData.FrameType.Extended; + sendobj.RemoteFlag = csCanConstData.FrameFormat.Data_Frame; + sendobj.ID = header; // 0x1815c9c8 + + int len = 8; + sendobj.DataLen = System.Convert.ToByte(len); + for (int i = 0; i < len; i++) + sendobj.Data[i] = data[i]; + + SendPacketByValueCAN(sendobj.ID, data); + + OnPrint?.Invoke(this, csCanCommFunction.PacketToMsg(sendobj, 1)); + } + + public void SetPolling(bool flag, int sId, ref DeviceSystemData aSystemData) + { + SystemId = sId; + CanPolling = flag; + SystemData = aSystemData; + SystemData.mNo = SystemId; + } + + public void SetDCP(int aDCP) + { + DCP = aDCP; + } + + public void SendProcessFromApp(int sId, int mode, int flag, int dcp, ref DeviceParamData aParam, ref DeviceCalibration aCalib) + { + switch (mode) + { + case 5: // Cell Volatge Parameter + SendData(sId, 5, flag, dcp, ref aParam, ref aCalib); + SendData(sId, 23, flag, dcp, ref aParam, ref aCalib); + break; + case 7: + SendData(sId, 7, flag, dcp, ref aParam, ref aCalib); + SendData(sId, 23, flag, dcp, ref aParam, ref aCalib); + break; + case 6: + SendData(sId, 6, flag, dcp, ref aParam, ref aCalib); + SendData(sId, 24, flag, dcp, ref aParam, ref aCalib); + break; + case 22: + SendData(sId, 22, flag, dcp, ref aParam, ref aCalib); + SendData(sId, 24, flag, dcp, ref aParam, ref aCalib); + break; + case 14: + SendData(sId, 14, flag, dcp, ref aParam, ref aCalib); + break; + case 99: // All param read + SendData(sId, 5, flag, dcp, ref aParam, ref aCalib); + SendData(sId, 6, flag, dcp, ref aParam, ref aCalib); + SendData(sId, 7, flag, dcp, ref aParam, ref aCalib); + SendData(sId, 14, flag, dcp, ref aParam, ref aCalib); + SendData(sId, 22, flag, dcp, ref aParam, ref aCalib); + SendData(sId, 23, flag, dcp, ref aParam, ref aCalib); + SendData(sId, 24, flag, dcp, ref aParam, ref aCalib); + SendData(sId, 2, flag, dcp, ref aParam, ref aCalib); + break; + case 9: // Cell Voltage Calibration + SendData(sId, 9, flag, dcp, ref aParam, ref aCalib); + break; + case 1: // Cell Voltage Calibration + SendData(sId, 1, flag, dcp, ref aParam, ref aCalib); + break; + case 12: // Cell Voltage Calibration + SendData(sId, 12, flag, dcp, ref aParam, ref aCalib); + break; + case 8: // Battery Parameter Setting + SendData(sId, 8, flag, dcp, ref aParam, ref aCalib); + break; + case 17: // Cell Balancing Parameter - 240531 + SendData(sId, 17, flag, dcp, ref aParam, ref aCalib); + break; + case 21: // System Information (Device Address) + SendData(sId, 21, flag, dcp, ref aParam, ref aCalib); + break; + case 13: // Soc Calibration + SendData(sId, 13, flag, dcp, ref aParam, ref aCalib); + break; + case 15: // Default Parameter + SendData(sId, 15, flag, dcp, ref aParam, ref aCalib); + break; + case 16: // Default Parameter + if (aParam.DefalutParamAll == 1) + SendData(0xFF, 16, flag, dcp, ref aParam, ref aCalib); + else + SendData(sId, 16, flag, dcp, ref aParam, ref aCalib); + break; + case 2: // Cell Voltage Difference Parameter + SendData(sId, 2, flag, dcp, ref aParam, ref aCalib); + break; + case 25: + SendData(sId, 25, flag, dcp, ref aParam, ref aCalib); + break; + + // Inventory Data Control + case 900: // Manufacturer Cmd + SendData(sId, 900, flag, dcp, ref aParam, ref aCalib); + break; + case 901: // Serial Number #1 Cmd + SendData(sId, 901, flag, dcp, ref aParam, ref aCalib); + break; + case 902: // Serial Number #2 Cmd + SendData(sId, 902, flag, dcp, ref aParam, ref aCalib); + break; + } + } + + unsafe void SendData(int sId, int mode, int flag, int dcp, ref DeviceParamData aParam, ref DeviceCalibration aCalib) + { + if (can_bOpen == false) return; + + VCI_CAN_OBJ sendobj = MakeTxData(sId, mode, flag, dcp, ref aParam, ref aCalib); + + byte[] data = new byte[8]; + for (int i = 0; i < 8; i++) data[i] = sendobj.Data[i]; + + SendPacketByValueCAN(sendobj.ID, data); + } + + private UInt32 MakeID(int sId, int mode) + { + UInt32 result = 0; + PACKET_HEADER hdr = new PACKET_HEADER(); + + hdr.Index = 6; // Fixed 6 + hdr.R = 0; // Fixed 0 + hdr.DP = 0; // Fixed 0 + hdr.PF = (byte)mode; // Command + if (sId == 0xFF) hdr.PS = (byte)(sId); // PDU SPECIFIC + else hdr.PS = (byte)(sId + 200); // PDU SPECIFIC + hdr.SA = 200; // SOURCE ADDRESS + + result = csCanCommFunction.CovertHtoP(hdr); + return result; + } + + private UInt32 MakeInvID(int sId, int mode) + { + UInt32 result = 0; + PACKET_HEADER hdr = new PACKET_HEADER(); + + hdr.Index = 1; // Fixed 1 for Inventory Data + hdr.R = 0; // Fixed 0 + hdr.DP = 0; // Fixed 0 + hdr.PF = (byte)((mode % 900) + 1); // Command + if (sId == 0xFF) hdr.PS = (byte)(sId); // PDU SPECIFIC + else hdr.PS = (byte)(sId + 200); // PDU SPECIFIC + hdr.SA = 200; // SOURCE ADDRESS + + result = csCanCommFunction.CovertHtoP(hdr); + return result; + } + + unsafe private VCI_CAN_OBJ MakeTxData(int sId, int mode, int flag, int dcp, ref DeviceParamData aParam, ref DeviceCalibration aCalib) + { + VCI_CAN_OBJ sendobj = new VCI_CAN_OBJ(); + + sendobj.SendType = csCanConstData.SendType.Normal; + sendobj.RemoteFlag = csCanConstData.FrameFormat.Data_Frame; + sendobj.ExternFlag = csCanConstData.FrameType.Extended; + if (mode < 900) + sendobj.ID = MakeID(sId, mode); + else + sendobj.ID = MakeInvID(sId, mode); + sendobj.DataLen = (byte)(8); + + byte[] aData = csCanCommFunction.MakeCanData(mode, flag, dcp, ref aParam, ref aCalib); + for (int i = 0; i < 8; i++) + { sendobj.Data[i] = aData[i]; } + + return sendobj; + } + + #endregion + + #region COMM TX THREAD + + int current_cmd = 0; + int RxSystemId = 0; + + public int GetCommSystemId() + { + return RxSystemId; + } + + unsafe private void canTxThread() + { + int txTick = 0; + + while (CanTxThreadEnd == false) + { + txTick++; + if (txTick >= TxThreadPeriod) + { + if (CanPolling && AutoCanTx) + { + int flag = 0; + + TxProcess(ref flag); + RxSystemId = SystemId; + SendData(SystemId, current_cmd, flag, DCP, ref SystemData.ParamData, ref SystemData.CalibriationData); + //Thread.Sleep(1); + } + txTick %= TxThreadPeriod; + } + GetMessageBuff(); + + Thread.Sleep(1); + } + } + + void TxProcess(ref int aflag) + { + switch (current_cmd) + { + case 20: current_cmd = 900; break; + case 900: current_cmd = 901; break; + case 901: current_cmd = 902; break; + case 902: current_cmd = 1; break; + case 1: current_cmd = 19; break; + case 19: current_cmd = 3; break; + case 3: current_cmd = 4; break; + case 4: current_cmd = 11; break; + case 11: current_cmd = 16; break; + case 16: current_cmd = 20; break; + default: current_cmd = 20; break; + } + } + #endregion + + #region COMM RX THREAD + unsafe private void canRxThread() + { + while (CanRxThreadEnd == false) + { + DateTime aTime = DateTime.Now; + + if (GetMessageProcess()) + { + // Received data + SystemData.ShelfCommFail = false; + SystemData.LastRxTime = DateTime.Now; + } + else + { + TimeSpan dTime = DateTime.Now - SystemData.LastRxTime; + if (SystemData.ShelfCommFail == false) + { + if (dTime.TotalSeconds > 10) + { + SystemData.ShelfCommFail = true; + DataInit(); + OnUpdate?.Invoke(this, ref SystemData); + } + } + } + Thread.Sleep(RxThreadPeriod); + } + } + + unsafe private int GetMessageBuff() + { + int result = 0; + int lNumberOfMessages = 1; + int lNumberOfErrors = 0; + //double dTime = 0; + + // read the messages from the driver + int lResult = icsNeoDll.icsneoGetMessages(m_hObject, ref stMessages[0], ref lNumberOfMessages, ref lNumberOfErrors); + + // was the read successful? + if (lResult == 1) + { + for (int i = 0; i < lNumberOfMessages; i++) + { + // Calculate the messages timestamp + //lResult = icsNeoDll.icsneoGetTimeStampForMsg(m_hObject, ref stMessages[i], ref dTime); + if ((stMessages[i].StatusBitField & Convert.ToInt32(eDATA_STATUS_BITFIELD_1.SPY_STATUS_TX_MSG)) == 0) + { + // Rx Data + if (stMessages[i].ArbIDOrHeader != 0) + RxQueuePut(ref stMessages[i]); + } + } + } + return result; + } + + private bool GetMessageProcess() + { + bool result = false; + icsSpyMessage rxMsg = new icsSpyMessage(); + + if (RxQueueGet(ref rxMsg)) + { + switch (rxMsg.Protocol) + { + case (int)ePROTOCOL.SPY_PROTOCOL_CAN: + { + UInt32 exID = (UInt32)rxMsg.ArbIDOrHeader; + byte[] rData = new byte[8]; + + rData[0] = rxMsg.Data1; + rData[1] = rxMsg.Data2; + rData[2] = rxMsg.Data3; + rData[3] = rxMsg.Data4; + rData[4] = rxMsg.Data5; + rData[5] = rxMsg.Data6; + rData[6] = rxMsg.Data7; + rData[7] = rxMsg.Data8; + + OnPrint?.Invoke(this, csCanCommFunction.PacketToMsg(exID, rData, 0)); + + PACKET_HEADER pHeader = csCanCommFunction.CovertPtoH(exID); + switch (pHeader.Index) + { + case 0x01: // Inventory Data Packet + if ((pHeader.SA == (200 + SystemId))) + { + result = true; + + RxSystemId = pHeader.SA - 200; + csCanCommFunction.CanInvRxProcess(RxSystemId, exID, rData, ref SystemData, DateTime.Now); + OnUpdate?.Invoke(this, ref SystemData); + } + break; + case 0x04: // Firmware Update Packet + OnDataRecv?.Invoke(exID, rData); + break; + case 0x06: // Normal Packet + if (pHeader.SA == (200 + SystemId)) + { + result = true; + + RxSystemId = pHeader.SA - 200; + csCanCommFunction.CanRxProcess(ref Config, RxSystemId, exID, rData, ref SystemData, DateTime.Now); + OnUpdate?.Invoke(this, ref SystemData); + } + break; + } + } + break; + } + } + return result; + } + + #endregion + + #region DATA INIT + + private void DataInit() + { + SystemData.ShelfCommFail = true; + + for (int j = 0; j < csConstData.SystemInfo.MAX_MODULE_CELL_SIZE; j++) + { + SystemData.ValueData.CellVoltage[j] = 0; + } + for (int j = 0; j < csConstData.SystemInfo.MAX_MODULE_TEMP_SIZE; j++) + { + SystemData.ValueData.CellTemperature[j] = 0; + } + SystemData.ValueData.voltageOfPack = 0; + SystemData.ValueData.current = 0; + SystemData.ValueData.rSOC = 0; + SystemData.AvgData.maxCellVoltage = 0; + SystemData.AvgData.minCellVoltage = 0; + SystemData.AvgData.avgCellVoltage = 0; + SystemData.AvgData.maxTemp = 0; + SystemData.AvgData.minTemp = 0; + SystemData.AvgData.avgTemp = 0; + SystemData.heatbeat = 0; + SystemData.StatusData.warning = 0; + SystemData.StatusData.protect = 0; + + for (int j = 0; j < SystemData.Information.pcb_sn.Length; j++) + { + SystemData.Information.pcb_sn[j] = 0; + } + for (int j = 0; j < SystemData.Information.module_sn.Length; j++) + { + SystemData.Information.module_sn[j] = 0; + } + + SystemData.CalibriationData.Battery.Capacity = 0; + SystemData.CalibriationData.Current.ChaAndDchSelect = 0; + } + + #endregion + } +} diff --git a/LFP_Manager_PRM/Utils/csDBUtils.cs b/LFP_Manager_PRM/Utils/csDBUtils.cs new file mode 100644 index 0000000..0355ae0 --- /dev/null +++ b/LFP_Manager_PRM/Utils/csDBUtils.cs @@ -0,0 +1,1353 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.IO; +using System.Data; +using System.Windows.Forms; + +using System.Data.SQLite; +using System.Data.SqlClient; + +using LFP_Manager.DataStructure; + +namespace LFP_Manager.Utils +{ + class csDbUtils + { + // Query - SELECT * FROM TABLE_NAME like('%neon%',field_name) - 문자를 포함하는 데이터 검색 + public static string DbFileName = @"PR_57150.db"; + public static string DbFilePath = @"\db\"; + //public static string DbFileNameFormat = @"\db\{0}_PR_57150.db"; + public static string MdDbFileNameFormat = @"\db\{0}_{1}.db"; // 0: Lot no., 1: Module type + public static string DbSchemaTableFileName = @"\sql\DB_SCHEMA_TABLE.sql"; + public static string ModuleTableName = @"TModule"; + + public static string LogDbFilePath = @"\db"; + public static string LogDbFileNameFormat = @"\{0}\{1}_{2}_LOG.DB"; + public static string LogDbSchemaTableFileName = @"\sql\LOG_DB_SCHEMA_TABLE.sql"; + + public static DateTime Delay(int MS) + { + DateTime thisMoment = DateTime.Now; + TimeSpan duration = new TimeSpan(0, 0, 0, 0, MS); + DateTime afterMoment = thisMoment.Add(duration); + + while (afterMoment >= thisMoment) + { + System.Windows.Forms.Application.DoEvents(); + + thisMoment = DateTime.Now; + } + + return DateTime.Now; + } + + //트랜잭션 시작 + public static void BeginTran(SQLiteConnection conn) + { + SQLiteCommand command = new SQLiteCommand("Begin", conn); + command.ExecuteNonQuery(); + command.Dispose(); + } + + //트랜잭션 완료 + public static void CommitTran(SQLiteConnection conn) + { + SQLiteCommand command = new SQLiteCommand("Commit", conn); + command.ExecuteNonQuery(); + command.Dispose(); + } + + public static string GetDbFolder(string AppPath) + { + string path = System.IO.Path.GetDirectoryName(AppPath); + + if (Directory.Exists(path + DbFilePath) == false) + Directory.CreateDirectory(path + DbFilePath); + + return path + DbFilePath; + } + + #region CREATE DATABASE + + public static void MdDbCreate(CommConfig aConfig, string mSN) + { + string result = ""; + + string dbFilename = String.Format(MdDbFileNameFormat, MakeMdSnLotNumber(mSN), csConstData.CommType.CAN_MODEL[aConfig.TargetModelIndex]); + string dbFilePath = Path.GetDirectoryName(Application.ExecutablePath) + dbFilename; + + if (Directory.Exists(Path.GetDirectoryName(dbFilePath)) == false) + { + _ = Directory.CreateDirectory(Path.GetDirectoryName(dbFilePath)); + } + + if (File.Exists(dbFilePath) == true) + { + //throw new Exception("Already have db file - Failed to create db file"); + return; + } + else + { + // Create database + SQLiteConnection.CreateFile(dbFilePath); + } + + // Open database + string strConn = @"Data Source=" + dbFilePath; + using (var connection = new SQLiteConnection(strConn)) + { + connection.Open(); + try + { + // Create table + using (SQLiteCommand command = connection.CreateCommand()) + { + string schemaFile = Path.GetDirectoryName(Application.ExecutablePath) + DbSchemaTableFileName; + string query = File.ReadAllText(schemaFile); + + command.CommandText = query; + SQLiteDataReader reader = null; + reader = command.ExecuteReader(); + } + } + catch (Exception e) + { + result = e.Message; + } + finally + { + connection.Close(); + if (result != "") throw new Exception(result); + } + } + return; + } + + public static void LogDbCreate(string aModel) + { + string result = ""; + string ModelName = aModel; + //public static string LogDbFileNameFormat = @"\{0}\{1}_{2}_LOG.DB"; + string dbFilename = String.Format(LogDbFileNameFormat + , String.Format("{0:yyMM}", DateTime.Now) + , String.Format("{0:yyMMdd}", DateTime.Now) + , ModelName + ); + string dbFilePath = Path.GetDirectoryName(Application.ExecutablePath) + LogDbFilePath + dbFilename; + + if (Directory.Exists(System.IO.Path.GetDirectoryName(dbFilePath)) == false) + Directory.CreateDirectory(System.IO.Path.GetDirectoryName(dbFilePath)); + + if (File.Exists(dbFilePath) == true) + { + //throw new Exception("Already have db file - Failed to create db file"); + return; + } + else + { + // Create database + SQLiteConnection.CreateFile(dbFilePath); + } + + // Open database + string strConn = @"Data Source=" + dbFilePath; + using (var connection = new SQLiteConnection(strConn)) + { + connection.Open(); + try + { + // Create table + using (SQLiteCommand command = connection.CreateCommand()) + { + string schemaFile = Path.GetDirectoryName(Application.ExecutablePath) + LogDbSchemaTableFileName; + string query = File.ReadAllText(schemaFile); + + command.CommandText = query; + SQLiteDataReader reader = null; + reader = command.ExecuteReader(); + } + } + catch (Exception e) + { + result = e.Message; + } + finally + { + connection.Close(); + if (result != "") throw new Exception(result); + } + } + return; + } + #endregion + + #region MAKE LOT NUMBER + //public static string MakeLotNumber(string mSN) + //{ + // string LotNo = mSN.Substring(7, 4) + "0000"; + // return LotNo; + //} + + public static string MakeMdSnLotNumber(string mSN) + { + string LotNo = mSN.Substring(0, mSN.Length - 10) + "0000000000"; + return LotNo; + } + + #endregion + + #region Excute Database + public static DataTable DbSqlExcute(string path, string query, bool create_db_flag = false) + { + string result = ""; + DataTable dtResult = null; + string dbFilename = Path.GetDirectoryName(path) + DbFileName; + + if (Directory.Exists(Path.GetDirectoryName(dbFilename)) == false) + Directory.CreateDirectory(Path.GetDirectoryName(dbFilename)); + + // Create database + if (File.Exists(dbFilename) == false) + { + if (create_db_flag == true) + SQLiteConnection.CreateFile(dbFilename); + else + throw new Exception("No database file - " + DbFileName); + } + + // Open database + string strConn = @"Data Source=" + dbFilename; + using (var connection = new SQLiteConnection(strConn)) + { + connection.Open(); + try + { + // Create table + using (SQLiteCommand command = connection.CreateCommand()) + { + //command.CommandText = "CREATE TABLE File (Name text, Size bigint, Modified datetime);"; + command.CommandText = query; + SQLiteDataReader reader = null; + //command.ExecuteNonQuery(); + reader = command.ExecuteReader(); + dtResult = new DataTable(); + dtResult.Load(reader); + } + } + catch (Exception e) + { + result = e.Message; + } + finally + { + connection.Close(); + if (result != "") throw new Exception(result); + } + } + return dtResult; + } + + public static DataTable DbSqlExcuteA1(string path, string query) + { + DataTable dtResult = null; + string dbFilename = System.IO.Path.GetDirectoryName(path) + DbFileName; + + if (Directory.Exists(System.IO.Path.GetDirectoryName(dbFilename)) == false) + Directory.CreateDirectory(System.IO.Path.GetDirectoryName(dbFilename)); + + if (File.Exists(dbFilename) == false) + // Create database + SQLiteConnection.CreateFile(dbFilename); + + // Open database + string strConn = @"Data Source=" + dbFilename; + using (var connection = new SQLiteConnection(strConn)) + { + connection.Open(); + try + { + // Excute Query + var adpt = new SQLiteDataAdapter(query, connection); + DataSet ds = new DataSet(); + adpt.Fill(ds); + + dtResult = ds.Tables[0]; + } + catch (Exception e) + { + throw e; + } + finally + { + connection.Close(); + } + } + return dtResult; + } + + public static DataTable DbSqlExcuteA(CommConfig aConfig, string lot, string query, bool create_db_flag = false) + { + string result = ""; + DataTable dtResult = new DataTable(); + string lotNo = lot; + string dbFilename = String.Format(MdDbFileNameFormat, lotNo, csConstData.CommType.CAN_MODEL[aConfig.TargetModelIndex]); + string dbFilePath = Path.GetDirectoryName(Application.ExecutablePath) + dbFilename; + + if (Directory.Exists(Path.GetDirectoryName(dbFilePath)) == false) + { + if (create_db_flag) + Directory.CreateDirectory(Path.GetDirectoryName(dbFilePath)); + else + throw new Exception("No DB file path - " + Path.GetDirectoryName(dbFilePath)); + } + if (File.Exists(dbFilePath) == false) + { + if (create_db_flag) + SQLiteConnection.CreateFile(dbFilePath); + else + throw new Exception(String.Format("No DB file - DbSqlExcuteA ({0})", dbFilename)); + } + + // Open database + string strConn = @"Data Source=" + dbFilePath; + using (var connection = new SQLiteConnection(strConn)) + { + connection.Open(); + try + { + // Excute Query + var adpt = new SQLiteDataAdapter(query, connection); + DataSet ds = new DataSet(); + adpt.Fill(ds); + if (ds.Tables.Count > 0) + dtResult = ds.Tables[0]; + } + catch (Exception ex) + { + result = ex.Message; + } + finally + { + connection.Close(); + if (result != "") throw new Exception(result); + } + } + return dtResult; + } + + public static DataTable DbSqlExcuteA2(string dbFileName, string query, bool create_db_flag = false) + { + string result = ""; + DataTable dtResult = new DataTable(); + string lotNo = dbFileName.Substring(0, 9); + string dbFilename = String.Format(DbFilePath, lotNo) + dbFileName; + string dbFilePath = Path.GetDirectoryName(Application.ExecutablePath) + dbFilename; + + if (Directory.Exists(Path.GetDirectoryName(dbFilePath)) == false) + { + if (create_db_flag) + Directory.CreateDirectory(Path.GetDirectoryName(dbFilePath)); + else + throw new Exception("No DB file path - " + Path.GetDirectoryName(dbFilePath)); + } + if (File.Exists(dbFilePath) == false) + { + if (create_db_flag) + SQLiteConnection.CreateFile(dbFilePath); + else + throw new Exception(String.Format("No DB file - DbSqlExcuteA ({0})", dbFilename)); + } + + // Open database + string strConn = @"Data Source=" + dbFilePath; + using (var connection = new SQLiteConnection(strConn)) + { + connection.Open(); + try + { + // Excute Query + var adpt = new SQLiteDataAdapter(query, connection); + DataSet ds = new DataSet(); + adpt.Fill(ds); + if (ds.Tables.Count > 0) + dtResult = ds.Tables[0]; + } + catch (Exception ex) + { + result = ex.Message; + } + finally + { + connection.Close(); + if (result != "") throw new Exception(result); + } + } + return dtResult; + } + public static DataTable DbSqlExcuteA3(string dbFileName, string query, bool create_db_flag = false) + { + string result = ""; + DataTable dtResult = new DataTable(); + string dbFilePath = dbFileName; + + if (Directory.Exists(Path.GetDirectoryName(dbFilePath)) == false) + { + if (create_db_flag) + Directory.CreateDirectory(Path.GetDirectoryName(dbFilePath)); + else + throw new Exception("No DB file path - " + Path.GetDirectoryName(dbFilePath)); + } + if (File.Exists(dbFilePath) == false) + { + if (create_db_flag) + SQLiteConnection.CreateFile(dbFilePath); + else + throw new Exception(String.Format("No DB file - DbSqlExcuteA ({0})", dbFileName)); + } + + // Open database + string strConn = @"Data Source=" + dbFilePath; + using (var connection = new SQLiteConnection(strConn)) + { + connection.Open(); + try + { + // Excute Query + var adpt = new SQLiteDataAdapter(query, connection); + DataSet ds = new DataSet(); + adpt.Fill(ds); + if (ds.Tables.Count > 0) + dtResult = ds.Tables[0]; + } + catch (Exception ex) + { + result = ex.Message; + } + finally + { + connection.Close(); + if (result != "") throw new Exception(result); + } + } + return dtResult; + } + + public static DataTable DbSqlExcuteB(CommConfig aConfig, string mSN, string query, bool create_db_flag = false) + { + string result = ""; + DataTable dtResult = new DataTable(); + string lotNo = csDbUtils.MakeMdSnLotNumber(mSN); + string dbFilename = String.Format(MdDbFileNameFormat, lotNo); + string dbFilePath = Path.GetDirectoryName(Application.ExecutablePath) + dbFilename; + + if (Directory.Exists(Path.GetDirectoryName(dbFilePath)) == false) + { + if (create_db_flag) + Directory.CreateDirectory(Path.GetDirectoryName(dbFilePath)); + else + throw new Exception("No DB file path - " + Path.GetDirectoryName(dbFilePath)); + } + if (File.Exists(dbFilePath) == false) + { + if (create_db_flag) + SQLiteConnection.CreateFile(dbFilePath); + else + throw new Exception(String.Format("No DB file - DbSqlExcuteB ({0})", dbFilename)); + } + + // Open database + string strConn = @"Data Source=" + dbFilePath; + using (var connection = new SQLiteConnection(strConn)) + { + connection.Open(); + try + { + // Excute Query + var adpt = new SQLiteDataAdapter(query, connection); + DataSet ds = new DataSet(); + adpt.Fill(ds); + if (ds.Tables.Count > 0) + dtResult = ds.Tables[0]; + } + catch (Exception ex) + { + result = ex.Message; + } + finally + { + connection.Close(); + if (result != "") throw new Exception(result); + } + } + return dtResult; + } + + #endregion + + #region SELECT QUARY + + public static DataTable BmsDataSelectToDataTable(CommConfig aConfig, DateTime aDate, string qry) + { + string result = ""; + DataTable dtResult = null; + string ModelName = csConstData.CommType.CAN_MODEL[aConfig.TargetModelIndex]; + string dbFilename = String.Format(LogDbFileNameFormat + , String.Format("{0:yyMM}", aDate) + , String.Format("{0:yyMMdd}", aDate) + , ModelName + ); + string dbFilePath = Path.GetDirectoryName(Application.ExecutablePath) + LogDbFilePath + dbFilename; + + if (Directory.Exists(System.IO.Path.GetDirectoryName(dbFilePath)) == false) + return dtResult; + if (File.Exists(dbFilePath) == false) + return dtResult; + + string strConn = @"Data Source=" + dbFilePath; + using (var connection = new SQLiteConnection(strConn)) + { + try + { + connection.Open(); + BeginTran(connection); + + // Insert data + using (SQLiteCommand command = connection.CreateCommand()) + { + //sSQL = "insert into TrendTable ( TrendStamp, TagName, TagValue) Values ( " + IntToStr(stamp) + "," + name + "," + value + ");"; + command.CommandText = String.Format("SELECT * FROM TModuleValue {0}", qry); + SQLiteDataAdapter adapter = new SQLiteDataAdapter(command); + adapter.AcceptChangesDuringFill = false; + dtResult = new DataTable(); + adapter.Fill(dtResult); + dtResult.TableName = "TModuleValue"; + + CommitTran(connection); + + System.Windows.Forms.Application.DoEvents(); + } + } + catch (Exception e) + { + result = e.Message; + } + finally + { + if (connection.State == ConnectionState.Open) + connection.Close(); + if (result != "") throw new Exception(result); + } + } + return dtResult; + } + #endregion + + #region BMS DATA INSERT AND UPDATE + + public static void BmsDataInsert(CommConfig aConfig, DeviceSystemData aSystemData, string mSN) + { + string result = ""; + string lotNo = csDbUtils.MakeMdSnLotNumber(mSN); + string dbFilename = String.Format(MdDbFileNameFormat, lotNo, csConstData.CommType.CAN_MODEL[aConfig.TargetModelIndex]); + string dbFilePath = Path.GetDirectoryName(Application.ExecutablePath) + dbFilename; + + if (Directory.Exists(Path.GetDirectoryName(dbFilePath)) == false) + { + throw new Exception("No DB file path"); + } + if (File.Exists(dbFilePath) == false) + { + throw new Exception(String.Format("No DB file - BmsDataInsert ({0})", dbFilename)); + } + + // Open database + string strConn = @"Data Source=" + dbFilePath; + using (var connection = new SQLiteConnection(strConn)) + { + try + { + connection.Open(); + BeginTran(connection); + + // Insert data + using (SQLiteCommand command = connection.CreateCommand()) + { + //sSQL = "insert into TrendTable ( TrendStamp, TagName, TagValue) Values ( " + IntToStr(stamp) + "," + name + "," + value + ");"; + command.CommandText = "INSERT INTO" + + " TInventoryData" + + " (manufacture_date, pcb_sn," // 4 + + " create_date, modify_date)" // 2 + + " Values (?,?,?,?);"; + SQLiteParameter[] p = new SQLiteParameter[4]; + + for (int i = 0; i < 4; i++) + { + p[i] = new SQLiteParameter(); + command.Parameters.Add(p[i]); + } + + int j = 0; + p[j++].Value = aSystemData.Information.ManufactureDate; // manufacture date + p[j++].Value = Encoding.UTF8.GetString(aSystemData.Information.pcb_sn); // pcb_sn + p[j++].Value = DateTime.Now; // create_date + p[j++].Value = DateTime.Now; // modify_date + + command.ExecuteNonQuery(); + + CommitTran(connection); + } + } + catch (Exception e) + { + result = e.Message; + } + finally + { + if (connection.State == ConnectionState.Open) + { + connection.Close(); + } + if (result != "") + { + throw new Exception(result); + } + } + } + } + + public static void BmsLogDataInsert(ref CommConfig aConfig, ref DeviceSystemData aSystemData, DateTime dateTime, int cvUnit) + { + string result = ""; + string ModelName = csConstData.CommType.CAN_MODEL[aConfig.TargetModelIndex]; + //public static string LogDbFileNameFormat = @"\{0}\{1}_{2}_LOG.DB"; + string dbFilename = String.Format(LogDbFileNameFormat + , String.Format("{0:yyMM}", DateTime.Now) + , String.Format("{0:yyMMdd}", DateTime.Now) + , ModelName + ); + string dbFilePath = Path.GetDirectoryName(Application.ExecutablePath) + LogDbFilePath + dbFilename; + + if (Directory.Exists(System.IO.Path.GetDirectoryName(dbFilePath)) == false) + throw new Exception("No Log DB file path"); + if (File.Exists(dbFilePath) == false) + throw new Exception(String.Format("No Log DB file - BmsLogDataInsert ({0})", dbFilename)); + + // Open database + string strConn = @"Data Source=" + dbFilePath; + using (var connection = new SQLiteConnection(strConn)) + { + try + { + connection.Open(); + BeginTran(connection); + + // Insert data + using (SQLiteCommand command = connection.CreateCommand()) + { + //sSQL = "insert into TrendTable ( TrendStamp, TagName, TagValue) Values ( " + IntToStr(stamp) + "," + name + "," + value + ");"; + command.CommandText = String.Format("INSERT INTO TModuleValue ("); + command.CommandText += "create_date" // 0 + + ", module_no" // 1 + + ", pcb_sn" // 2 + + ", module_sn" // 3 + + ", comm_fail" // 4 + + ", op_status" // 5 + + ", alarm_status" // 6 + + ", module_voltage" // 7 + + ", module_current" // 8 + + ", module_soc" // 9 + + ", module_soh" // 10 + ; + for (int i = 0; i < aSystemData.cellQty; i++) + { + command.CommandText += String.Format(", cell_voltage_{0:00}", i + 1); + } + for (int i = 0; i < aSystemData.tempQty; i++) + { + command.CommandText += String.Format(", temperature_{0:00}", i + 1); + } + command.CommandText += + ", warning" // 37 + + ", fault" // 38 + + ")" + + " Values ("; + + int total = 11 + aSystemData.cellQty + aSystemData.tempQty + 2; + + for (int i = 0; i < (total - 1); i++) command.CommandText += "?,"; + command.CommandText += "?);"; + + SQLiteParameter[] p = new SQLiteParameter[total]; + + for (int i = 0; i < total; i++) + { + if (i == 0) + p[i] = new SQLiteParameter(DbType.DateTime); + else + p[i] = new SQLiteParameter(); + command.Parameters.Add(p[i]); + } + + int j = 0; + p[j++].Value = string.Format("{0:yyyy-MM-dd HH:mm:ss}", dateTime); // 0 create_date + p[j++].Value = aSystemData.mNo; // 1 Module No + p[j++].Value = Encoding.Default.GetString(aSystemData.Information.pcb_sn).Trim('\0'); // 2 pcb_sn + p[j++].Value = Encoding.Default.GetString(aSystemData.Information.module_sn).Trim('\0'); // 3 module_sn + p[j++].Value = aSystemData.ShelfCommFail; // 4 comm_fail + p[j++].Value = aSystemData.StatusData.status; // 5 op_status + p[j++].Value = aSystemData.StatusData.alarm; // 6 alarm_status + p[j++].Value = ((float)aSystemData.ValueData.voltageOfPack / 10).ToString(); // 7 module_voltage + p[j++].Value = ((float)aSystemData.ValueData.current / 10).ToString(); // 8 module_current + p[j++].Value = ((float)aSystemData.ValueData.rSOC / 10).ToString(); // 9 module_soc + p[j++].Value = ((float)aSystemData.ValueData.stateOfHealth / 10).ToString(); // 10 module_soh + + for (int i = 0; i < aSystemData.cellQty; i++) + { + p[j++].Value = ((float)aSystemData.ValueData.CellVoltage[i] / cvUnit).ToString(); // 11 cell_voltage_xx + } + for (int i = 0; i < aSystemData.tempQty; i++) + { + p[j++].Value = ((float)aSystemData.ValueData.CellTemperature[i] / 10).ToString(); // 29 temperature_01 + } + p[j++].Value = aSystemData.StatusData.warning; // 0 warning + p[j++].Value = aSystemData.StatusData.protect; // 1 fault + + command.ExecuteNonQuery(); + + CommitTran(connection); + } + } + catch (Exception e) + { + result = e.Message; + } + finally + { + if (connection.State == ConnectionState.Open) + connection.Close(); + if (result != "") throw new Exception(result); + } + } + } + + public static DataTable GetDataTable(CommConfig aConfig, string bSN, string aTableName) + { + string result = ""; + DataTable dtResult = null; + string lotNo = csDbUtils.MakeMdSnLotNumber(bSN); + string dbFilename = String.Format(MdDbFileNameFormat, lotNo, csConstData.CommType.CAN_MODEL[aConfig.TargetModelIndex]); + string dbFilePath = Path.GetDirectoryName(Application.ExecutablePath) + dbFilename; + + if (Directory.Exists(Path.GetDirectoryName(dbFilePath)) == false) + { + throw new Exception("No DB file path"); + } + + if (File.Exists(dbFilePath) == false) + { + throw new Exception("No DB file"); + } + // Open database + string strConn = @"Data Source=" + dbFilePath; + using (var connection = new SQLiteConnection(strConn)) + { + try + { + connection.Open(); + BeginTran(connection); + + // Insert data + using (SQLiteCommand command = connection.CreateCommand()) + { + //sSQL = "insert into TrendTable ( TrendStamp, TagName, TagValue) Values ( " + IntToStr(stamp) + "," + name + "," + value + ");"; + command.CommandText = String.Format("SELECT * FROM {0}", aTableName); + SQLiteDataAdapter adapter = new SQLiteDataAdapter(command); + adapter.AcceptChangesDuringFill = false; + dtResult = new DataTable(); + adapter.Fill(dtResult); + dtResult.TableName = aTableName; + + CommitTran(connection); + + System.Windows.Forms.Application.DoEvents(); + } + } + catch (Exception e) + { + result = e.Message; + } + finally + { + if (connection.State == ConnectionState.Open) + connection.Close(); + if (result != "") throw new Exception(result); + } + } + return dtResult; + } + + public static DataTable GetDataTableBySelect(CommConfig aConfig, string bSN, string sql, string aTableName) + { + string result = ""; + DataTable dtResult = null; + string lotNo = csDbUtils.MakeMdSnLotNumber(bSN); + string dbFilename = String.Format(MdDbFileNameFormat, lotNo, csConstData.CommType.CAN_MODEL[aConfig.TargetModelIndex]); + string dbFilePath = Path.GetDirectoryName(Application.ExecutablePath) + dbFilename; + + if (Directory.Exists(Path.GetDirectoryName(dbFilePath)) == false) + { + throw new Exception("No DB file path"); + } + + if (File.Exists(dbFilePath) == false) + { + throw new Exception(String.Format("No DB file - {0}", dbFilePath)); + } + // Open database + string strConn = @"Data Source=" + dbFilePath; + using (var connection = new SQLiteConnection(strConn)) + { + try + { + connection.Open(); + BeginTran(connection); + + // Insert data + using (SQLiteCommand command = connection.CreateCommand()) + { + //sSQL = "insert into TrendTable ( TrendStamp, TagName, TagValue) Values ( " + IntToStr(stamp) + "," + name + "," + value + ");"; + command.CommandText = sql; + SQLiteDataAdapter adapter = new SQLiteDataAdapter(command); + adapter.AcceptChangesDuringFill = false; + dtResult = new DataTable(); + adapter.Fill(dtResult); + dtResult.TableName = aTableName; + + System.Windows.Forms.Application.DoEvents(); + + CommitTran(connection); + } + } + catch (Exception e) + { + result = e.Message; + } + finally + { + if (connection.State == ConnectionState.Open) + connection.Close(); + if (result != "") + throw new Exception(result); + } + } + return dtResult; + } + + public static DataTable GetDataTableBySelectFromDbName(string dbFileName, string sql, string aTableName) + { + string result = ""; + DataTable dtResult = null; + + string lotNo = csDbUtils.MakeMdSnLotNumber(dbFileName.Substring(0, 8)); + string dbFilename = String.Format(@"\db\{0}\{1}", lotNo, dbFileName); + string dbFilePath = Path.GetDirectoryName(Application.ExecutablePath) + dbFilename; + + if (Directory.Exists(Path.GetDirectoryName(dbFilePath)) == false) + { + throw new Exception("No DB file path"); + } + + if (File.Exists(dbFilePath) == false) + { + throw new Exception(String.Format("No DB file - {0}", dbFilePath)); + } + // Open database + string strConn = @"Data Source=" + dbFilePath; + using (var connection = new SQLiteConnection(strConn)) + { + try + { + connection.Open(); + BeginTran(connection); + + // Insert data + using (SQLiteCommand command = connection.CreateCommand()) + { + //sSQL = "insert into TrendTable ( TrendStamp, TagName, TagValue) Values ( " + IntToStr(stamp) + "," + name + "," + value + ");"; + command.CommandText = sql; + SQLiteDataAdapter adapter = new SQLiteDataAdapter(command); + adapter.AcceptChangesDuringFill = false; + dtResult = new DataTable(); + adapter.Fill(dtResult); + dtResult.TableName = aTableName; + + System.Windows.Forms.Application.DoEvents(); + + CommitTran(connection); + } + } + catch (Exception e) + { + result = e.Message; + } + finally + { + if (connection.State == ConnectionState.Open) + connection.Close(); + if (result != "") + throw new Exception(result); + } + } + return dtResult; + } + + public static DataTable GetDataTableByFileName(string fileName, string sql, string aTableName) + { + string result = ""; + DataTable dtResult = null; + + if (Directory.Exists(System.IO.Path.GetDirectoryName(fileName)) == false) + throw new Exception("No DB file path"); + if (File.Exists(fileName) == false) + throw new Exception("No DB file"); + // Open database + string strConn = @"Data Source=" + fileName; + using (var connection = new SQLiteConnection(strConn)) + { + try + { + connection.Open(); + BeginTran(connection); + + // Insert data + using (SQLiteCommand command = connection.CreateCommand()) + { + //sSQL = "insert into TrendTable ( TrendStamp, TagName, TagValue) Values ( " + IntToStr(stamp) + "," + name + "," + value + ");"; + command.CommandText = sql; + SQLiteDataAdapter adapter = new SQLiteDataAdapter(command); + adapter.AcceptChangesDuringFill = false; + dtResult = new DataTable(); + adapter.Fill(dtResult); + dtResult.TableName = aTableName; + + System.Windows.Forms.Application.DoEvents(); + + CommitTran(connection); + } + } + catch (Exception e) + { + result = e.Message; + } + finally + { + if (connection.State == ConnectionState.Open) + connection.Close(); + if (result != "") + throw new Exception(result); + } + } + return dtResult; + } + + public static void BmsPcbMatchDataInsert(string dbFileName, DataRow sRow) + { + string result = ""; + int resultCode = (int)SQLiteErrorCode.Unknown; + + if (Directory.Exists(System.IO.Path.GetDirectoryName(dbFileName)) == false) + throw new Exception("No DB file path"); + if (File.Exists(dbFileName) == false) + throw new Exception(String.Format("No DB file - BmsDataInsert ({0})", dbFileName)); + + // Open database + string strConn = @"Data Source=" + dbFileName; + using (var connection = new SQLiteConnection(strConn)) + { + try + { + connection.Open(); + BeginTran(connection); + + // Insert data + using (SQLiteCommand command = connection.CreateCommand()) + { + //sSQL = "insert into TrendTable ( TrendStamp, TagName, TagValue) Values ( " + IntToStr(stamp) + "," + name + "," + value + ");"; + command.CommandText = "INSERT INTO" + + " TBmsPcbMatchTable" + + " (PCB1_SERIAL_NUMBER, MODULE_SERIAL_NUMBER, create_date, modify_date)" // 2 + + " Values (?,?,?,?);"; + SQLiteParameter[] p = new SQLiteParameter[4]; + + for (int i = 0; i < 4; i++) + { + p[i] = new SQLiteParameter(); + command.Parameters.Add(p[i]); + } + + int j = 0; + p[j++].Value = sRow["PCB1_SERIAL_NUMBER"]; // pcb_sn + p[j++].Value = sRow["MODULE_SERIAL_NUMBER"]; // module_sn + p[j++].Value = DateTime.Now; // create_date + p[j++].Value = DateTime.Now; // modify_date + + command.ExecuteNonQuery(); + + System.Windows.Forms.Application.DoEvents(); + + CommitTran(connection); + } + } + catch (SQLiteException sqle) + { + // Handle DB exception + result = sqle.Message; + resultCode = sqle.ErrorCode; + } + catch (IndexOutOfRangeException ie) + { + // If you think there might be a problem with index range in the loop, for example + result = ie.Message; + resultCode = 9999; + } + catch (Exception ex) + { + result = ex.Message; + resultCode = 9998; + } + finally + { + if (connection.State == ConnectionState.Open) + connection.Close(); + if (result != "") + { + if (resultCode == 9998) throw new Exception(result); + else if (resultCode == 9999) throw new IndexOutOfRangeException(result); + else throw new SQLiteException((SQLiteErrorCode)resultCode, result); + } + } + } + } + + public static void ErrorLogInsert(string dbFileName, DataRow sRow, string Process, string ErrType, string ErrMsg) + { + string result = ""; + + if (Directory.Exists(System.IO.Path.GetDirectoryName(dbFileName)) == false) + throw new Exception("No DB file path"); + if (File.Exists(dbFileName) == false) + throw new Exception(String.Format("No DB file - ErrorLogInsert ({0})", dbFileName)); + + // Open database + string strConn = @"Data Source=" + dbFileName; + using (var connection = new SQLiteConnection(strConn)) + { + try + { + connection.Open(); + BeginTran(connection); + + // Insert data + using (SQLiteCommand command = connection.CreateCommand()) + { + //sSQL = "insert into TrendTable ( TrendStamp, TagName, TagValue) Values ( " + IntToStr(stamp) + "," + name + "," + value + ");"; + command.CommandText = "INSERT INTO" + + " TErrorLogTable" + + " (create_date, MODULE_SERIAL_NUMBER, PCB1_SERIAL_NUMBER, PROCESS, ERROR_TYPE, ERROR_MSG)" // 2 + + " Values (?,?,?,?,?,?);"; + SQLiteParameter[] p = new SQLiteParameter[6]; + + for (int i = 0; i < 6; i++) + { + p[i] = new SQLiteParameter(); + command.Parameters.Add(p[i]); + } + + int j = 0; + p[j++].Value = DateTime.Now; // create_date + p[j++].Value = sRow["MODULE_SERIAL_NUMBER"]; // module_sn + p[j++].Value = sRow["PCB1_SERIAL_NUMBER"]; // pcb_sn + p[j++].Value = Process; // process + p[j++].Value = ErrType; // error type + p[j++].Value = ErrMsg; // error message + + command.ExecuteNonQuery(); + + CommitTran(connection); + } + } + catch (Exception e) + { + result = e.Message; + } + finally + { + if (connection.State == ConnectionState.Open) + connection.Close(); + if (result != "") throw new Exception(result); + } + } + } + + #endregion + + #region MODULE SN INSERT AND UPDATE + + public static void MdSnDataInsert(CommConfig aConfig, DeviceSystemData aSystemData, string mSN) + { + string result = ""; + string lotNo = csDbUtils.MakeMdSnLotNumber(mSN); + string dbFilename = String.Format(MdDbFileNameFormat, lotNo, csConstData.CommType.CAN_MODEL[aConfig.TargetModelIndex]); + string dbFilePath = Path.GetDirectoryName(Application.ExecutablePath) + dbFilename; + + if (Directory.Exists(Path.GetDirectoryName(dbFilePath)) == false) + { + throw new Exception("No DB file path"); + } + if (File.Exists(dbFilePath) == false) + { + throw new Exception(String.Format("No DB file - BmsDataInsert ({0})", dbFilename)); + } + + // Open database + string strConn = @"Data Source=" + dbFilePath; + using (var connection = new SQLiteConnection(strConn)) + { + try + { + connection.Open(); + BeginTran(connection); + + // Insert data + using (SQLiteCommand command = connection.CreateCommand()) + { + //sSQL = "insert into TrendTable ( TrendStamp, TagName, TagValue) Values ( " + IntToStr(stamp) + "," + name + "," + value + ");"; + command.CommandText = "INSERT INTO" + + " TInventoryData" + + " (" + + " manufacture_date," // 0 + + " module_name," // 1 + + " pcb_sn," // 2 + + " module_sn," // 3 + + " create_date," // 4 + + " modify_date" // 5 + + ")" + + " Values (?,?,?,?,?,?);"; + SQLiteParameter[] p = new SQLiteParameter[6]; + + for (int i = 0; i < 6; i++) + { + p[i] = new SQLiteParameter(); + command.Parameters.Add(p[i]); + } + + int j = 0; + p[j++].Value = aSystemData.Information.ManufactureDate; // manufacture date + p[j++].Value = csConstData.CommType.CAN_MODEL[aConfig.TargetModelIndex]; // module_name + p[j++].Value = Encoding.UTF8.GetString(aSystemData.Information.pcb_sn); // pcb_sn + p[j++].Value = mSN; // module_sn + p[j++].Value = DateTime.Now; // create_date + p[j++].Value = DateTime.Now; // modify_date + + command.ExecuteNonQuery(); + + Application.DoEvents(); + + CommitTran(connection); + } + } + catch (Exception e) + { + result = e.Message; + } + finally + { + if (connection.State == ConnectionState.Open) + connection.Close(); + if (result != "") throw new Exception(result); + } + } + } + + public static void MdLogDataInsert(ref CommConfig aConfig, string mSN, ref DeviceSystemData aSystemData, DateTime dateTime, int cvUnit) + { + string result = ""; + string ModelName = csConstData.CommType.CAN_MODEL[aConfig.TargetModelIndex]; + string lotNo = csDbUtils.MakeMdSnLotNumber(mSN); + string dbFilename = String.Format(MdDbFileNameFormat, lotNo, ModelName); + string dbFilePath = Path.GetDirectoryName(Application.ExecutablePath) + dbFilename; + + if (Directory.Exists(System.IO.Path.GetDirectoryName(dbFilePath)) == false) + throw new Exception("No Log DB file path"); + if (File.Exists(dbFilePath) == false) + throw new Exception(String.Format("No Log DB file - BmsLogDataInsert ({0})", dbFilename)); + + // Open database + string strConn = @"Data Source=" + dbFilePath; + using (var connection = new SQLiteConnection(strConn)) + { + try + { + connection.Open(); + BeginTran(connection); + + // Insert data + using (SQLiteCommand command = connection.CreateCommand()) + { + //sSQL = "insert into TrendTable ( TrendStamp, TagName, TagValue) Values ( " + IntToStr(stamp) + "," + name + "," + value + ");"; + command.CommandText = String.Format("INSERT INTO TModuleValue ("); + command.CommandText += "create_date" // 0 + + ", module_no" // 1 + + ", pcb_sn" // 2 + + ", module_sn" // 3 + + ", comm_fail" // 4 + + ", op_status" // 5 + + ", alarm_status" // 6 + + ", module_voltage" // 7 + + ", module_current" // 8 + + ", module_soc" // 9 + + ", module_soh" // 10 + ; + for (int i = 0; i < aSystemData.cellQty; i++) + { + command.CommandText += String.Format(", cell_voltage_{0:00}", i + 1); + } + for (int i = 0; i < aSystemData.tempQty; i++) + { + command.CommandText += String.Format(", temperature_{0:00}", i + 1); + } + command.CommandText += + ", warning" // 37 + + ", fault" // 38 + + ")" + + " Values ("; + + int total = 11 + aSystemData.cellQty + aSystemData.tempQty + 2; + + for (int i = 0; i < (total - 1); i++) command.CommandText += "?,"; + command.CommandText += "?);"; + + SQLiteParameter[] p = new SQLiteParameter[total]; + + for (int i = 0; i < total; i++) + { + if (i == 0) + p[i] = new SQLiteParameter(DbType.DateTime); + else + p[i] = new SQLiteParameter(); + command.Parameters.Add(p[i]); + } + + int j = 0; + p[j++].Value = dateTime; // 0 create_date + p[j++].Value = aSystemData.mNo; // 1 Module No + p[j++].Value = Encoding.UTF8.GetString(aSystemData.Information.pcb_sn); // 2 pcb_sn + p[j++].Value = mSN; // 3 module_sn + p[j++].Value = aSystemData.ShelfCommFail; // 4 comm_fail + p[j++].Value = aSystemData.StatusData.status; // 5 op_status + p[j++].Value = aSystemData.StatusData.alarm; // 6 alarm_status + p[j++].Value = ((float)aSystemData.ValueData.voltageOfPack / 10).ToString(); // 7 module_voltage + p[j++].Value = ((float)aSystemData.ValueData.current / 10).ToString(); // 8 module_current + p[j++].Value = ((float)aSystemData.ValueData.rSOC / 10).ToString(); // 9 module_soc + p[j++].Value = ((float)aSystemData.ValueData.stateOfHealth / 10).ToString(); // 10 module_soh + + for (int i = 0; i < aSystemData.cellQty; i++) + { + p[j++].Value = ((float)aSystemData.ValueData.CellVoltage[i] / cvUnit).ToString(); // 11 cell_voltage_xx + } + for (int i = 0; i < aSystemData.tempQty; i++) + { + p[j++].Value = ((float)aSystemData.ValueData.CellTemperature[i] / 10).ToString(); // 29 temperature_01 + } + p[j++].Value = aSystemData.StatusData.warning; // 0 warning + p[j++].Value = aSystemData.StatusData.protect; // 1 fault + + command.ExecuteNonQuery(); + + CommitTran(connection); + } + } + catch (Exception e) + { + result = e.Message; + } + finally + { + if (connection.State == ConnectionState.Open) + connection.Close(); + if (result != "") throw new Exception(result); + } + } + } + + #endregion + + #region SQLITE EXAMPLE + + public class SQLITE + { + private SQLiteConnection con; + private SQLiteCommand cmd; + private SQLiteDataAdapter adapter; + + public SQLITE(string databasename) + { + con = new SQLiteConnection(string.Format("Data Source={0};Compress=True;", databasename)); + } + + public int Execute(string sql_statement) + { + con.Open(); + cmd = con.CreateCommand(); + cmd.CommandText = sql_statement; + int row_updated; + try + { + row_updated = cmd.ExecuteNonQuery(); + } + catch + { + con.Close(); + return 0; + } + con.Close(); + return row_updated; + } + public DataTable GetDataTable(string tablename) + { + DataTable DT = new DataTable(); + con.Open(); + cmd = con.CreateCommand(); + cmd.CommandText = string.Format("SELECT * FROM {0}", tablename); + adapter = new SQLiteDataAdapter(cmd); + adapter.AcceptChangesDuringFill = false; + adapter.Fill(DT); + con.Close(); + DT.TableName = tablename; + return DT; + } + public void SaveDataTable(DataTable DT) + { + try + { + Execute(string.Format("DELETE FROM {0}", DT.TableName)); + con.Open(); + cmd = con.CreateCommand(); + cmd.CommandText = string.Format("SELECT * FROM {0}", DT.TableName); + adapter = new SQLiteDataAdapter(cmd); + SQLiteCommandBuilder builder = new SQLiteCommandBuilder(adapter); + adapter.Update(DT); + con.Close(); + } + catch (Exception Ex) + { + MessageBox.Show(Ex.Message); + } + } + } + + #endregion + } +} diff --git a/LFP_Manager_PRM/Utils/csExcelControl.cs b/LFP_Manager_PRM/Utils/csExcelControl.cs new file mode 100644 index 0000000..bd9d7ee --- /dev/null +++ b/LFP_Manager_PRM/Utils/csExcelControl.cs @@ -0,0 +1,299 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.IO; +using System.Data; +using System.Data.OleDb; + +namespace LFP_Manager.Utils +{ + class csExcelControl + { + /// + /// Excel Database Control Class + /// version 0.1.5 + /// + /// + /// 자유배포 + /// 황현우 [ LiA's Blog ] + /// http://blog.naver.com/exila + /// CoreBank Co.,Ltd. + /// 불펌금지효.. 만든 사람의 성의좀 생각을..-_-;; + /// + /*--------------------------------------------------------------------- + * Connection String 에는 어마어마한 옵션들이.. 주로 영문 사이트이긴 + * 하지만 좀더 상세한 제어를 원한다면 OleDB Connection String 옵션과 + * Extended Properties 에 들어가는 Excel Option 들을 살펴보는 것이 좋을 + * 듯.. HDR = 첫줄을 헤더로 사용할 것인지,IMEX = 데이터유형적용여부 등등 + *-------------------------------------------------------------------*/ + + // 확장명 XLS (Excel 97~2003 용) + private const string ConnectStrFrm_Excel97_2003 = + "Provider=Microsoft.Jet.OLEDB.4.0;" + + "Data Source=\"{0}\";" + + "Mode=ReadWrite|Share Deny None;" + + "Extended Properties='Excel 8.0; HDR={1}; IMEX={2}';" + + "Persist Security Info=False"; + + // 확장명 XLSX (Excel 2007 이상용) + private const string ConnectStrFrm_Excel = + "Provider=Microsoft.ACE.OLEDB.12.0;" + + "Data Source=\"{0}\";" + + "Mode=ReadWrite|Share Deny None;" + + "Extended Properties='Excel 12.0; HDR={1}; IMEX={2}';" + + "Persist Security Info=False"; + + + /// + /// Excel 파일의 형태를 반환한다. + /// -2 : Error + /// -1 : 엑셀파일아님 + /// 0 : 97-2003 엑셀 파일 (xls)0 + /// 1 : 2007 이상 파일 (xlsx) + /// + /// + /// Excel File 명 전체 경로입니다. + /// + public static int ExcelFileType(string XlsFile) + { + byte[,] ExcelHeader = { + { 0xD0, 0xCF, 0x11, 0xE0, 0xA1 }, // XLS File Header + { 0x50, 0x4B, 0x03, 0x04, 0x14 } // XLSX File Header + }; + + // result -2 = error, -1 = not excel , 0 = xls , 1 = xlsx + int result = -1; + FileInfo FI = new FileInfo(XlsFile); + FileStream FS = FI.Open(FileMode.Open); + + try + { + byte[] FH = new byte[5]; + FS.Read(FH, 0, 5); + for (int i = 0; i < 2; i++) + { + for (int j = 0; j < 5; j++) + { + if (FH[j] != ExcelHeader[i, j]) break; + else if (j == 4) result = i; + } + if (result >= 0) break; + } + } + catch + { + result = (-2); + //throw e; + } + finally + { + FS.Close(); + } + return result; + } + + /// + /// Excel 파일을 DataSet 으로 변환하여 반환한다. + /// + /// + /// Excel File 명 PullPath + /// + /// + /// 첫번째 줄을 Field 명으로 사용할 것이지 여부 + /// + private static DataSet OpenExcel(string FileName, bool UseHeader) + { + DataSet DS = null; + + string[] HDROpt = { "NO", "YES" }; + string HDR = ""; + string ConnStr = ""; + + if (UseHeader) + HDR = HDROpt[1]; + else + HDR = HDROpt[0]; + + int ExcelType = ExcelFileType(FileName); + switch (ExcelType) + { + case (-2): throw new Exception(FileName + "의 형식검사중 오류가 발생하였습니다."); // An error occurred during type inspection + case (-1): throw new Exception(FileName + "은 엑셀 파일형식이 아닙니다."); // Is not an Excel file format. + case ( 0): ConnStr = string.Format(ConnectStrFrm_Excel97_2003, FileName, HDR, "1"); break; + case ( 1): ConnStr = string.Format(ConnectStrFrm_Excel, FileName, HDR, "1"); break; + } + + OleDbConnection OleDBConn = null; + OleDbDataAdapter OleDBAdap = null; + DataTable Schema; + + try + { + OleDBConn = new OleDbConnection(ConnStr); + OleDBConn.Open(); + + Schema = OleDBConn.GetOleDbSchemaTable(OleDbSchemaGuid.Tables, new object[] { null, null, null, "TABLE" }); + + DS = new DataSet(); + + foreach (DataRow DR in Schema.Rows) + { + OleDBAdap = new OleDbDataAdapter(DR["TABLE_NAME"].ToString(), OleDBConn); + + OleDBAdap.SelectCommand.CommandType = CommandType.TableDirect; + OleDBAdap.AcceptChangesDuringFill = false; + + string TableName = DR["TABLE_NAME"].ToString().Replace("$", String.Empty).Replace("'", String.Empty); + + if (DR["TABLE_NAME"].ToString().Contains("$")) OleDBAdap.Fill(DS, TableName); + } + } + catch (Exception e) + { + throw e; + } + finally + { + if (OleDBConn != null) OleDBConn.Close(); + } + return DS; + } + + /// + /// DataSet 을 Excel 파일로 저장한다. + /// + /// + /// Excel File 명 PullPath + /// + /// + /// Excel 로 저장할 대상 DataSet 객체. + /// + /// + /// 동일한 파일명이 있을 때 삭제 할 것인지 여부, 파일이 있고 false 면 저장안하고 그냥 false 를 리턴. + /// + /// + /// xls 형태로 저장할 것인지 여부, false 이면 xlsx 형태로 저장함. + /// + private static bool SaveExcel(string FileName, DataSet DS, bool ExistDel, bool OldExcel) + { + bool result = true; + + if (File.Exists(FileName)) + if (ExistDel) File.Delete(FileName); + else return result; + + string TempFile = FileName; + // 파일 확장자가 xls 이나 xlsx 가 아니면 아예 파일을 안만들어서 + // 템프파일로 생성후 지정한 파일명으로 변경.. + + OleDbConnection OleDBConn = null; + + try + { + OleDbCommand Cmd = null; + string ConnStr = ""; + + if (OldExcel) + { + TempFile = TempFile + ".xls"; + ConnStr = string.Format(ConnectStrFrm_Excel97_2003, TempFile, "YES", "0"); + } + else + { + TempFile = TempFile + ".xlsx"; + ConnStr = string.Format(ConnectStrFrm_Excel, TempFile, "YES", "0"); + } + + OleDBConn = new OleDbConnection(ConnStr); + OleDBConn.Open(); + + // Create Table(s).. : 테이블 단위 처리 + foreach (DataTable DT in DS.Tables) + { + String TableName = DT.TableName; + + StringBuilder FldsInfo = new StringBuilder(); + StringBuilder Flds = new StringBuilder(); + + // Create Field(s) String : 현재 테이블의 Field 명 생성 + foreach (DataColumn Column in DT.Columns) + { + if (FldsInfo.Length > 0) + { + FldsInfo.Append(","); + Flds.Append(","); + } + + FldsInfo.Append("[" + Column.ColumnName.Replace("'", "''") + "] CHAR(255)"); + Flds.Append(Column.ColumnName.Replace("'", "''")); + } + + // Table Create + Cmd = new OleDbCommand("CREATE TABLE " + TableName + "(" + FldsInfo.ToString() + ")", OleDBConn); + Cmd.ExecuteNonQuery(); + + // Insert Data + foreach (DataRow DR in DT.Rows) + { + StringBuilder Values = new StringBuilder(); + foreach (DataColumn Column in DT.Columns) + { + if (Values.Length > 0) Values.Append(","); + Values.Append("'" + DR[Column.ColumnName].ToString().Replace("'", "''") + "'"); + } + + Cmd = new OleDbCommand( + "INSERT INTO [" + TableName + "$]" + + "(" + Flds.ToString() + ") " + + "VALUES (" + Values.ToString() + ")", + OleDBConn); + Cmd.ExecuteNonQuery(); + } + } + } + catch (Exception) + { + result = false; + } + finally + { + if (OleDBConn != null) OleDBConn.Close(); + try + { + if (File.Exists(TempFile)) + { + File.Move(TempFile, FileName); + } + } + catch { } + } + return result; + } + + /// + /// Excel 파일을 DataSet 으로 변환하여 반환한다. + /// + /// + /// 읽어올 Excel File 명(전체경로)입니다. + /// + public static DataSet OpenExcelDB(string ExcelFile) + { + return OpenExcel(ExcelFile, true); + } + + /// + /// DataSet 을 Excel 파일로 저장한다. 동일 파일명이 있으면 Overwrite 됩니다. + /// + /// + /// 저장할 Excel File 명(전체경로)입니다. + /// + /// + /// 저장할 대상 DataSet 입니다. + /// + public static bool SaveExcelDB(string ExcelFile, DataSet DS) + { + return SaveExcel(ExcelFile, DS, true, false); + } + } +} diff --git a/LFP_Manager_PRM/Utils/csLog.cs b/LFP_Manager_PRM/Utils/csLog.cs new file mode 100644 index 0000000..9882bd9 --- /dev/null +++ b/LFP_Manager_PRM/Utils/csLog.cs @@ -0,0 +1,564 @@ +using System; +using System.Text; +using System.IO; + +using LFP_Manager.DataStructure; + +namespace LFP_Manager.Utils +{ + class csLog + { + private static string SYSTEMLOG_FILE_DIR_M = "\\log\\systemlog"; + private static string SYSTEMLOG_FILE_DIR = "\\log\\systemlog"; + + public static string GetLogFolder(string AppPath) + { + string path = System.IO.Path.GetDirectoryName(AppPath); + + if (Directory.Exists(path + SYSTEMLOG_FILE_DIR_M) == false) + Directory.CreateDirectory(path + SYSTEMLOG_FILE_DIR_M); + + return path + SYSTEMLOG_FILE_DIR_M; + } + + public static void SystemErrorLog(CommConfig sConfig, string sEvent, DateTime aTime, string AppPath) + { + SYSTEMLOG_FILE_DIR = string.Format("{0}\\SystemErr\\{1}", "\\log", string.Format("{0:yyyyMM}", aTime)); + string path = Path.GetDirectoryName(AppPath); + string FileName = string.Format(path + SYSTEMLOG_FILE_DIR + "\\{0}_SYS_ERROR_LOG.txt", string.Format("{0:yyMMdd}", aTime)); + byte[] logData; + + if (Directory.Exists(path + SYSTEMLOG_FILE_DIR) == false) + { + Directory.CreateDirectory(path + SYSTEMLOG_FILE_DIR); + } + + FileStream logFile; + if (File.Exists(FileName) == false) + { + logFile = new FileStream(FileName, FileMode.CreateNew, FileAccess.ReadWrite); + logFile.Close(); + } + + logFile = new FileStream(FileName, FileMode.Open, FileAccess.ReadWrite, FileShare.ReadWrite); + + if (logFile != null) + { + logFile.Seek(0, SeekOrigin.End); + logData = WriteEventData(aTime, sEvent); + logFile.Write(logData, 0, logData.Length); + logFile.Close(); + } + } + + private static byte[] WriteEventData(DateTime aLog, String sEvent) + { + string tt; + string sdata; + + tt = aLog.ToString("yyyy-MM-dd HH:mm:ss"); + sdata = String.Format( + "{0} {1}\r\n" + , tt // 0 DATETIME + , sEvent // 1 Event Log Data + ); + + Byte[] info = + new UTF8Encoding(true).GetBytes(sdata); + + return info; + } + + + public static void SystemDataLog(int RackID, ref CommConfig sConfig, ref DeviceSystemData sData, DateTime aTime, string AppPath) + { + SYSTEMLOG_FILE_DIR = String.Format("{0}\\SHELF{1}\\{2}", "\\log\\systemlog", RackID, String.Format("{0:yyyyMM}", aTime)); + + FileStream logFile = null; + string path = System.IO.Path.GetDirectoryName(AppPath); + string FileName = String.Format(path + SYSTEMLOG_FILE_DIR + "\\SHELF{0}_LOG_{1}.csv", RackID, String.Format("{0:yyMMdd}", aTime)); + byte[] logData; + + if (Directory.Exists(path + SYSTEMLOG_FILE_DIR) == false) + Directory.CreateDirectory(path + SYSTEMLOG_FILE_DIR); + + if (File.Exists(FileName) == false) + { + logFile = new FileStream(FileName, FileMode.CreateNew, FileAccess.ReadWrite); + logData = WriteDataHeader(aTime); + logFile.Write(logData, 0, logData.Length); + logFile.Close(); + } + + logFile = null; + //logFile = new FileStream(FileName, FileMode.Open, FileAccess.ReadWrite); + logFile = new FileStream(FileName, FileMode.Open, FileAccess.ReadWrite, FileShare.ReadWrite); + + if (logFile != null) + { + logFile.Seek(0, SeekOrigin.End); + logData = WriteData(aTime, sConfig, sData); + logFile.Write(logData, 0, logData.Length); + logFile.Close(); + } + } + + public static void SystemTotalDataLog(CommConfig sConfig, DeviceSystemTotalData tData, DateTime aTime, string AppPath, string LogFileName) + { + SYSTEMLOG_FILE_DIR = String.Format("{0}\\MAIN\\{1}", "\\log\\systemlog", String.Format("{0:yyyyMM}", aTime)); + + FileStream logFile = null; + string path = System.IO.Path.GetDirectoryName(AppPath); + //string FileName = String.Format(path + SYSTEMLOG_FILE_DIR + "\\SHELF{0}_LOG_{1}.csv", RackID, String.Format("{0:yyMMdd}", aTime)); + string FileName = String.Format(path + SYSTEMLOG_FILE_DIR + "\\MAIN_LOG_{0}.csv", LogFileName); + byte[] logData; + + if (Directory.Exists(path + SYSTEMLOG_FILE_DIR) == false) + Directory.CreateDirectory(path + SYSTEMLOG_FILE_DIR); + + if (File.Exists(FileName) == false) + { + logFile = new FileStream(FileName, FileMode.CreateNew, FileAccess.ReadWrite); + logData = WriteTotalDataHeader(aTime); + logFile.Write(logData, 0, logData.Length); + logFile.Close(); + } + + logFile = null; + //logFile = new FileStream(FileName, FileMode.Open, FileAccess.ReadWrite); + logFile = new FileStream(FileName, FileMode.Open, FileAccess.ReadWrite, FileShare.ReadWrite); + + if (logFile != null) + { + logFile.Seek(0, SeekOrigin.End); + logData = WriteTotalData(aTime, sConfig, tData); + logFile.Write(logData, 0, logData.Length); + logFile.Close(); + } + } + + public static void SystemDataLog(int RackID, CommConfig sConfig, DeviceSystemData sData, DateTime aTime, string AppPath, string LogFileName) + { + SYSTEMLOG_FILE_DIR = String.Format("{0}\\SHELF{1}\\{2}", "\\log\\systemlog", RackID, String.Format("{0:yyyyMM}", aTime)); + + FileStream logFile = null; + string path = System.IO.Path.GetDirectoryName(AppPath); + //string FileName = String.Format(path + SYSTEMLOG_FILE_DIR + "\\SHELF{0}_LOG_{1}.csv", RackID, String.Format("{0:yyMMdd}", aTime)); + string FileName = String.Format(path + SYSTEMLOG_FILE_DIR + "\\SHELF{0}_LOG_{1}.csv", RackID, LogFileName); + byte[] logData; + + if (Directory.Exists(path + SYSTEMLOG_FILE_DIR) == false) + Directory.CreateDirectory(path + SYSTEMLOG_FILE_DIR); + + if (File.Exists(FileName) == false) + { + logFile = new FileStream(FileName, FileMode.CreateNew, FileAccess.ReadWrite); + logData = WriteDataHeader(aTime); + logFile.Write(logData, 0, logData.Length); + logFile.Close(); + } + + logFile = null; + //logFile = new FileStream(FileName, FileMode.Open, FileAccess.ReadWrite); + logFile = new FileStream(FileName, FileMode.Open, FileAccess.ReadWrite, FileShare.ReadWrite); + + if (logFile != null) + { + logFile.Seek(0, SeekOrigin.End); + logData = WriteData(aTime, sConfig, sData); + logFile.Write(logData, 0, logData.Length); + logFile.Close(); + } + } + + public static void MakeCosoleStrLog(CommConfig cConfig, string log) + { + DateTime aDate = DateTime.Now; + string mSN = ""; + if ((cConfig.mSN == null) || (cConfig.mSN == "")) + { + mSN = String.Format("00000000"); + } + else + { + mSN = cConfig.mSN; + } + + string filename = string.Format("{0}_CB_TEST_{1:yyMMddHH}.log", mSN, aDate); + string filepath = + Path.GetDirectoryName(cConfig.AppPath) + + String.Format(@"\test\{0:yyMMdd}\", aDate) + + filename; + + if (Directory.Exists(Path.GetDirectoryName(filepath)) == false) + Directory.CreateDirectory(Path.GetDirectoryName(filepath)); + + string strlog = log; + string flog = String.Format("[{0:yyyy-MM-dd HH:mm:ss}]: {1}\r\n", aDate, strlog); + byte[] bLog = Encoding.UTF8.GetBytes(flog); + FileStream logFile = null; + + if (File.Exists(filepath) == false) + { + logFile = new FileStream(filepath, FileMode.CreateNew, FileAccess.ReadWrite); + logFile.Seek(0, SeekOrigin.End); + logFile.Write(bLog, 0, bLog.Length); + logFile.Close(); + } + else + { + logFile = new FileStream(filepath, FileMode.Open, FileAccess.ReadWrite); + logFile.Seek(0, SeekOrigin.End); + logFile.Write(bLog, 0, bLog.Length); + logFile.Close(); + } + } + + #region SYSTEM DATE LOGGING + + private static byte[] WriteTotalDataHeader(DateTime aDateTime) + { + string tt; + string sdata; + + tt = aDateTime.ToString("yyyy-MM-dd HH:mm:ss"); + sdata = String.Format( + "{0};{1};{2};{3};{4};{5};{6};{7};{8};{9};" + , "DATETIME" // 0 + , "INTERFACE" // 1 + , "MODEL" // 2 + , "COMM STATUS" // 3 + , "STATUS" // 4 + , "ALARM" // 5 + , "VOLTAGE" // 6 + , "CURRENT" // 7 + , "SOC" // 8 + , "MAX. TEMP" // 9 + ); + sdata += "\r\n"; + + Byte[] info = + new UTF8Encoding(true).GetBytes(sdata); + + return info; + } + + private static byte[] WriteDataHeader(DateTime aDateTime) + { + string tt; + string sdata; + + tt = aDateTime.ToString("yyyy-MM-dd HH:mm:ss"); + sdata = String.Format( + "{0};{1};{2};{3};{4};{5};{6};{7};{8};" + , "DATETIME" // 0 + , "INTERFACE" // 1 + , "MODEL" // 2 + , "COMM STATUS" // 3 + , "STATUS" // 4 + , "ALARM" // 5 + , "VOLTAGE" // 6 + , "CURRENT" // 7 + , "SOC" // 8 + ); + + for (int i = 0; i < csConstData.SystemInfo.MAX_MODULE_CELL_SIZE; i++) + { + sdata += String.Format("{0},", String.Format("Cell_{0}", i + 1)); + } + + for (int i = 0; i < csConstData.SystemInfo.MAX_MODULE_TEMP_SIZE; i++) + { + sdata += String.Format("{0},", String.Format("Temp_{0}", i + 1)); + } + + sdata += String.Format("{0},", String.Format("CPU_Temp")); + + sdata += String.Format( + "{0};{1};{2};" + , "Warning" // 0 + , "Fault" // 1 + , "cellBallanceStatus" // 2 + ); + sdata += "\r\n"; + + Byte[] info = + new UTF8Encoding(true).GetBytes(sdata); + + return info; + } + + private static string GetStatusString(short aStatus) + { + string result = ""; + + if (aStatus == 0) + { + result = "STANDBY"; + } + else if (aStatus == 1) + { + result = "CHARGING"; + } + else if (aStatus == 2) + { + result = "DISCHARGING"; + } + else if (aStatus == 3) + { + result = "FLOATING"; + } + else + { + result = "UNKNOWN"; + } + return result; + } + + private static string GetAlarmString(short aAlarm) + { + string result = ""; + bool[] rackStatus = csUtils.Int16ToBitArray(aAlarm); + + if (aAlarm == 0) result = "NORMAL"; + else if (aAlarm == 1) result = "WARNING"; + else if (aAlarm == 2) result = "FAULT"; + else if (aAlarm == 3) result = "WARMING UP"; + else result = "UNKNOWN"; + + return result; + } + + private static string GetInterface(int sCommType) + { + string result = ""; + + if (sCommType == 0) result = "SNMP"; + else if (sCommType == 1) result = "UART"; + else result = "CAN"; + + return result; + } + + private static string GetModelName(CommConfig sConfig) + { + string result = ""; + + if (sConfig.CommType == 0) + { + // SNMP + switch (sConfig.SnmpModelIndex) + { + case 0: result = "LFPS-4850"; break; + case 1: result = "LFPS-4870"; break; + case 2: result = "LFPS-48100"; break; + case 3: result = "LFPR-48300"; break; + case 4: result = "LFPR-48600"; break; + case 5: result = "LFPR-48900"; break; + case 6: result = "LFPR-481000H"; break; + } + } + else if (sConfig.CommType == 1) + { + // UART + switch (sConfig.UartModelIndex) + { + case 0: result = "LFPS-48150"; break; + } + } + else + { + // CAN + result = "LFPS-48100H"; + } + + return result; + } + + private static string GetCommStatus(CommConfig sConfig, DeviceSystemData sData) + { + string result = ""; + + if (sConfig.CommType == 0) + { + // SNMP + if (sData.CommFail == false) + { + if (sData.ShelfCommFail == false) result = "NORM"; + else result = "FAIL"; + } + else + { + result = "OFF-LINE"; + } + } + else if (sConfig.CommType == 1) + { + // UART + if (sData.CommFail == false) + { + result = "NORM"; + } + else + { + result = "FAIL"; + } + } + else + { + // CAN + if (sData.CommFail == false) + { + result = "NORM"; + } + else + { + result = "FAIL"; + } + } + + return result; + } + + private static string GetCommStatus(DeviceSystemTotalData tData) + { + string result = ""; + + if (tData.CommFail) + result = "OFF-LINE"; + else + result = "NORM"; + + return result; + } + + private static byte[] WriteTotalData(DateTime aLog, CommConfig sConfig, DeviceSystemTotalData tData) + { + string tt; + string sdata; + + tt = aLog.ToString("yyyy-MM-dd HH:mm:ss"); + sdata = String.Format( + "{0};{1};{2};{3};{4};{5};{6};{7};{8};{9};" + , tt // 0 DATETIME + , GetInterface(sConfig.CommType) // 1 INTERFACE + , GetModelName(sConfig) // 2 MODEL + , GetCommStatus(tData) // 3 COMM STATUS + , GetStatusString(tData.StatusData.status) // 4 STATUS + , GetAlarmString(tData.StatusData.batteryStatus) // 5 ALARM + , String.Format("{0:#0.0}", Convert.ToDouble(tData.ValueData.TotalVoltage) / 10) // 6 voltageOfPack + , String.Format("{0:#0.0}", Convert.ToDouble(tData.ValueData.TotalCurrent) / 10) // 7 current + , String.Format("{0:#0.0}", Convert.ToDouble(tData.ValueData.TotalSOC) / 10) // 8 SOC + , String.Format("{0:#0.0}", Convert.ToDouble(tData.ValueData.TotalTemp) / 10) // 9 Max Temperature + ); + sdata += "\r\n"; + + Byte[] info = + new UTF8Encoding(true).GetBytes(sdata); + + return info; + } + + private static byte[] WriteData(DateTime aLog, CommConfig sConfig, DeviceSystemData sData) + { + string tt; + string sdata; + + tt = aLog.ToString("yyyy-MM-dd HH:mm:ss"); + sdata = String.Format( + "{0};{1};{2};{3};{4};{5};{6};{7};{8};" + , tt // 0 DATETIME + , GetInterface(sConfig.CommType) // 1 INTERFACE + , GetModelName(sConfig) // 2 MODEL + , GetCommStatus(sConfig, sData) // 3 COMM STATUS + , GetStatusString(sData.StatusData.status) // 4 STATUS + , GetAlarmString(sData.StatusData.alarm) // 5 ALARM + , String.Format("{0:#0.0}", Convert.ToDouble(sData.ValueData.voltageOfPack) / 10) // 6 voltageOfPack + , String.Format("{0:#0.0}", Convert.ToDouble(sData.ValueData.current) / 10) // 7 current + , String.Format("{0:#0.0}", Convert.ToDouble(sData.ValueData.rSOC) / 10) // 8 SOC + ); + + for (int i = 0; i < csConstData.SystemInfo.MAX_MODULE_CELL_SIZE; i++) + { + sdata += String.Format("{0:#0.000};", Convert.ToDouble(sData.ValueData.CellVoltage[i]) / 1000); // 27 Cell Voltage n + } + + for (int i = 0; i < csConstData.SystemInfo.MAX_MODULE_TEMP_SIZE; i++) + { + sdata += String.Format("{0:#0.0};", Convert.ToDouble(sData.ValueData.CellTemperature[i]) / 10); // 27 Cell Temperature n + } + + sdata += String.Format("{0:#0.0};", Convert.ToDouble(sData.ValueData.CpuTemperature) / 10); // 27 Cell Temperature n + + sdata += String.Format( + "{0};{1};{2};{3};" + , String.Format("0x{0}", sData.StatusData.warning.ToString("X4")) // 0 Warning + , String.Format("0x{0}", sData.StatusData.protect.ToString("X4")) // 1 Protection + , String.Format("0x{0}", sData.StatusData.cellBallanceStatusLv.ToString("X4")) // 2 cellBallanceStatusLv + , String.Format("0x{0}", sData.StatusData.cellBallanceStatusHv.ToString("X4")) // 3 cellBallanceStatusHv + ); + sdata += "\r\n"; + + Byte[] info = + new UTF8Encoding(true).GetBytes(sdata); + + return info; + } + #endregion + + #region DATA PRINT + + public static string data_print(byte[] data, int len) + { + byte[] ASC; + int i, j; + string result = ""; + + ASC = new byte[20]; + + if (len > 2) + { + if (ASC != null) + { + for (i = 0; i < (len / 16 + 1); i++) + { + result += String.Format("0x{0:X8} ", (int)(i * 16)); + for (j = 0; j < 16; j++) + { + if ((i * 16 + j) >= data.Length) + { + result += " "; + ASC[j] = (byte)' '; + } + else + { + result += String.Format("{0:X2} ", data[(i * 16) + j]); + if (data[i * 16 + j] < ' ') + ASC[j] = (byte)'.'; + else + { + if ((j == 15) && (data[i * 16 + j] > 128)) + ASC[j] = (byte)'.'; + else + ASC[j] = data[i * 16 + j]; + } + } + } + ASC[16] = 0x00; + result += "\r\n"; + //result += String.Format(" {0}\r\n", ASC.ToArray().ToString()); + } + } + result += "\r\n"; + //result += String.Format("ID: {0:X2}\r\n", data[6]); + //result += String.Format("CMD: {0:X2}\r\n", data[7]); + //result += String.Format("S-A: {0:X4}({0:d})\r\n", (data[8] << 8) | data[9]); + //result += String.Format("S-L: {0:X4}({0:d})\r\n", (data[10] << 8) | data[11]); + } + + return result; + } + + #endregion + } +} diff --git a/LFP_Manager_PRM/Utils/csUtils.cs b/LFP_Manager_PRM/Utils/csUtils.cs new file mode 100644 index 0000000..d470075 --- /dev/null +++ b/LFP_Manager_PRM/Utils/csUtils.cs @@ -0,0 +1,209 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Windows.Forms; + +using LFP_Manager.DataStructure; + +namespace LFP_Manager.Utils +{ + static class csUtils + { + public static int GetModuleQty(CommConfig aConfig) + { + int mQty = 1; + + switch (aConfig.CommType) + { + case csConstData.CommType.COMM_SNMP: + switch (aConfig.SnmpModelIndex) + { + case 6: // LFPR-481000H + mQty = aConfig.SnmpMdQty; + break; + case 5: // LFPR-48900 + mQty = 3; + break; + case 4: // LFPR-48600 + mQty = 2; + break; + default: + mQty = 1; + break; + } + break; + case csConstData.CommType.COMM_UARTCAN: + mQty = 1; + break; + case csConstData.CommType.COMM_USBCAN: + mQty = 1; + break; + } + + return mQty; + } + + public static void TypingOnlyNumber(object sender, KeyPressEventArgs e, bool includePoint, bool includeMinus) + { + bool isValidInput = false; + if (!char.IsControl(e.KeyChar) && !char.IsDigit(e.KeyChar)) + { + if (includePoint == true) { if (e.KeyChar == '.') isValidInput = true; } + if (includeMinus == true) { if (e.KeyChar == '-') isValidInput = true; } + + if (isValidInput == false) e.Handled = true; + } + + if (includePoint == true) + { + if (e.KeyChar == '.' && (string.IsNullOrEmpty((sender as DevExpress.XtraEditors.TextEdit).Text.Trim()) || (sender as DevExpress.XtraEditors.TextEdit).Text.IndexOf('.') > -1)) e.Handled = true; + } + if (includeMinus == true) + { + if (e.KeyChar == '-' && (!string.IsNullOrEmpty((sender as DevExpress.XtraEditors.TextEdit).Text.Trim()) || (sender as DevExpress.XtraEditors.TextEdit).Text.IndexOf('-') > -1)) e.Handled = true; + } + } + + public static bool[] Int16ToBitArray(Int16 data) + { + bool[] result = new bool[16]; + + for (int i = 0; i < 16; i++) + { + result[i] = (((data >> i) & 0x0001) == 0x0001) ? true : false; + } + + return result; + } + + public static byte[] GetCRC(byte[] pby, UInt16 nSize) + { + byte[] result = new byte[2]; + UInt16 uIndex, i; + UInt16 crc; + byte uchCRCHi = 0xff; + byte uchCRCLo = 0xff; + + for (i = 0; i < nSize; i++) + { + uIndex = (UInt16)(uchCRCHi ^ pby[i]); + uchCRCHi = (byte)(uchCRCLo ^ csConstData.CRC.AuchCRCHi[uIndex]); + uchCRCLo = csConstData.CRC.AuchCRCLo[uIndex]; + } + crc = (UInt16)(((UInt16)uchCRCHi << 8) | uchCRCLo); + + result[1] = (byte)(crc / 256); + result[0] = (byte)(crc % 256); + + return result; + } + + public static byte StrByte2toByte(byte a, byte b) + { + byte result = 0; + byte a1 = 0, b1 = 0; + + if ((a >= (byte)'0')&&(a <= (byte)'9')) + { + a1 = (byte)(a - (byte)'0'); + } + else if ((a >= (byte)'a')&&(a <= (byte)'f')) + { + a1 = (byte)(a - (byte)'a'); + } + else if ((a >= (byte)'A')&&(a <= (byte)'F')) + { + a1 = (byte)((a - (byte)'A') + 0x0A); + } + + if ((b >= (byte)'0') && (b <= (byte)'9')) + { + b1 = (byte)(b - (byte)'0'); + } + else if ((b >= (byte)'a') && (b <= (byte)'f')) + { + b1 = (byte)(b - (byte)'a'); + } + else if ((b >= (byte)'A') && (b <= (byte)'F')) + { + b1 = (byte)((b - (byte)'A') + 0x0A); + } + + result = (byte)((b1 << 4) | a1); + + return result; + } + + public static byte[] StrToByteArray(byte[] rData, int offset, int rlen) + { + int len = (rlen - 2) / 2; + byte[] result = new byte[len]; + + for (int i = 0; i < len; i++) + { + result[i] = StrByte2toByte(rData[(i * 2) + offset + 2], rData[(i * 2) + offset + 1]); + } + + return result; + } + + public static byte[] StringToByte(string str) + { + byte[] StrByte = Encoding.UTF8.GetBytes(str); return StrByte; + } + + public static long UnixTimeNow() + { + var timeSpan = (DateTime.UtcNow - new DateTime(1970, 1, 1, 0, 0, 0)); + return (long)timeSpan.TotalSeconds; + } + + #region OPERATING WARNING FUCTION + + public static bool BitCheck(short rData, int pos) + { + if (((rData >> pos) & 0x0001) == 0x0001) + return true; + else + return false; + } + + #endregion + public static UInt32 CalcKKTimeStamp(DateTime tDate) + { + //Time of test and calibration. Local time in seconds since 2000. + //Ex: + //Epoch time offset (1 January 2000 00:00:00) = 946684800 + //Current epoch time (1 October 2019 12:00:00) = 1569931200 + //Timestamp = 1569931200 - 946684800 = 623246400 + //(Used 'https://www.epochconverter.com/' for conversion) + DateTime baseDate = new DateTime(2000, 1, 1, 0, 0, 0); + + int bDate = ConvertToUnixTimestamp(baseDate); + int nDate = ConvertToUnixTimestamp(tDate); + + return (UInt32)(nDate - bDate); + } + + public static DateTime ConvertTimeStampToDateTime(UInt32 tStamp) + { + DateTime result = new DateTime(2000, 1, 1, 0, 0, 0, DateTimeKind.Utc); + + result = result.AddSeconds(tStamp); + + // DateTimeOffset.Now.ToUnixTimeSeconds() // (.NET Framework 4.6 +/.NET Core), + // older versions: + //var epoch = (DateTime.UtcNow - new DateTime(2000, 1, 1, 0, 0, 0, DateTimeKind.Utc)).TotalSeconds; + + return result; + } + + public static int ConvertToUnixTimestamp(DateTime date) + { + DateTime origin = new DateTime(1970, 1, 1, 0, 0, 0); + TimeSpan diff = date - origin; + return (int)Math.Floor(diff.TotalSeconds); + } + } +} diff --git a/LFP_Manager_PRM/Utils/globalKeyboardHook.cs b/LFP_Manager_PRM/Utils/globalKeyboardHook.cs new file mode 100644 index 0000000..f0d9301 --- /dev/null +++ b/LFP_Manager_PRM/Utils/globalKeyboardHook.cs @@ -0,0 +1,166 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Runtime.InteropServices; +using System.Windows.Forms; + +namespace LFP_Manager.Utils +{ + /// + /// A class that manages a global low level keyboard hook + /// + class globalKeyboardHook + { + #region Constant, Structure and Delegate Definitions + /// + /// defines the callback type for the hook + /// + public delegate int keyboardHookProc(int code, int wParam, ref keyboardHookStruct lParam); + + public struct keyboardHookStruct + { + public int vkCode; + public int scanCode; + public int flags; + public int time; + public int dwExtraInfo; + } + + const int WH_KEYBOARD_LL = 13; + const int WM_KEYDOWN = 0x100; + const int WM_KEYUP = 0x101; + const int WM_SYSKEYDOWN = 0x104; + const int WM_SYSKEYUP = 0x105; + #endregion + + #region Instance Variables + /// + /// The collections of keys to watch for + /// + public List HookedKeys = new List(); + /// + /// Handle to the hook, need this to unhook and call the next hook + /// + IntPtr hhook = IntPtr.Zero; + #endregion + + #region Events + /// + /// Occurs when one of the hooked keys is pressed + /// + public event KeyEventHandler KeyDown; + /// + /// Occurs when one of the hooked keys is released + /// + public event KeyEventHandler KeyUp; + #endregion + + #region Constructors and Destructors + /// + /// Initializes a new instance of the class and installs the keyboard hook. + /// + public globalKeyboardHook() + { + hook(); + } + + /// + /// Releases unmanaged resources and performs other cleanup operations before the + /// is reclaimed by garbage collection and uninstalls the keyboard hook. + /// + ~globalKeyboardHook() + { + unhook(); + } + #endregion + + #region Public Methods + /// + /// Installs the global hook + /// + public void hook() + { + IntPtr hInstance = LoadLibrary("User32"); + hhook = SetWindowsHookEx(WH_KEYBOARD_LL, hookProc, hInstance, 0); + } + + /// + /// Uninstalls the global hook + /// + public void unhook() + { + UnhookWindowsHookEx(hhook); + } + + /// + /// The callback for the keyboard hook + /// + /// The hook code, if it isn't >= 0, the function shouldn't do anyting + /// The event type + /// The keyhook event information + /// + public int hookProc(int code, int wParam, ref keyboardHookStruct lParam) + { + if (code >= 0) + { + Keys key = (Keys)lParam.vkCode; + if (HookedKeys.Contains(key)) + { + KeyEventArgs kea = new KeyEventArgs(key); + if ((wParam == WM_KEYDOWN || wParam == WM_SYSKEYDOWN) && (KeyDown != null)) + { + KeyDown(this, kea); + } + else if ((wParam == WM_KEYUP || wParam == WM_SYSKEYUP) && (KeyUp != null)) + { + KeyUp(this, kea); + } + if (kea.Handled) + return 1; + } + } + return CallNextHookEx(hhook, code, wParam, ref lParam); + } + #endregion + + #region DLL imports + /// + /// Sets the windows hook, do the desired event, one of hInstance or threadId must be non-null + /// + /// The id of the event you want to hook + /// The callback. + /// The handle you want to attach the event to, can be null + /// The thread you want to attach the event to, can be null + /// a handle to the desired hook + [DllImport("user32.dll")] + static extern IntPtr SetWindowsHookEx(int idHook, keyboardHookProc callback, IntPtr hInstance, uint threadId); + + /// + /// Unhooks the windows hook. + /// + /// The hook handle that was returned from SetWindowsHookEx + /// True if successful, false otherwise + [DllImport("user32.dll")] + static extern bool UnhookWindowsHookEx(IntPtr hInstance); + + /// + /// Calls the next hook. + /// + /// The hook id + /// The hook code + /// The wparam. + /// The lparam. + /// + [DllImport("user32.dll")] + static extern int CallNextHookEx(IntPtr idHook, int nCode, int wParam, ref keyboardHookStruct lParam); + + /// + /// Loads the library. + /// + /// Name of the library + /// A handle to the library + [DllImport("kernel32.dll")] + static extern IntPtr LoadLibrary(string lpFileName); + #endregion + } +} diff --git a/LFP_Manager_PRM/app.config b/LFP_Manager_PRM/app.config new file mode 100644 index 0000000..f7292df --- /dev/null +++ b/LFP_Manager_PRM/app.config @@ -0,0 +1,27 @@ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + diff --git a/LFP_Manager_PRM/dll/ControlCAN.dll b/LFP_Manager_PRM/dll/ControlCAN.dll new file mode 100644 index 0000000..5df15bc Binary files /dev/null and b/LFP_Manager_PRM/dll/ControlCAN.dll differ diff --git a/LFP_Manager_PRM/dll/IPAddressControlLib.dll b/LFP_Manager_PRM/dll/IPAddressControlLib.dll new file mode 100644 index 0000000..642eb20 Binary files /dev/null and b/LFP_Manager_PRM/dll/IPAddressControlLib.dll differ diff --git a/LFP_Manager_PRM/dll/SnmpSharpNet.dll b/LFP_Manager_PRM/dll/SnmpSharpNet.dll new file mode 100644 index 0000000..a6104ee Binary files /dev/null and b/LFP_Manager_PRM/dll/SnmpSharpNet.dll differ diff --git a/LFP_Manager_PRM/dll/Tftp.Net.dll b/LFP_Manager_PRM/dll/Tftp.Net.dll new file mode 100644 index 0000000..c1bcfed Binary files /dev/null and b/LFP_Manager_PRM/dll/Tftp.Net.dll differ diff --git a/LFP_Manager_PRM/dll/kerneldlls/CAN232.dll b/LFP_Manager_PRM/dll/kerneldlls/CAN232.dll new file mode 100644 index 0000000..f0f4fb6 Binary files /dev/null and b/LFP_Manager_PRM/dll/kerneldlls/CAN232.dll differ diff --git a/LFP_Manager_PRM/dll/kerneldlls/CANETE.dll b/LFP_Manager_PRM/dll/kerneldlls/CANETE.dll new file mode 100644 index 0000000..2c1b041 Binary files /dev/null and b/LFP_Manager_PRM/dll/kerneldlls/CANETE.dll differ diff --git a/LFP_Manager_PRM/dll/kerneldlls/CANET_TCP.dll b/LFP_Manager_PRM/dll/kerneldlls/CANET_TCP.dll new file mode 100644 index 0000000..060ac4a Binary files /dev/null and b/LFP_Manager_PRM/dll/kerneldlls/CANET_TCP.dll differ diff --git a/LFP_Manager_PRM/dll/kerneldlls/CANWIFI_TCP.dll b/LFP_Manager_PRM/dll/kerneldlls/CANWIFI_TCP.dll new file mode 100644 index 0000000..a1f566b Binary files /dev/null and b/LFP_Manager_PRM/dll/kerneldlls/CANWIFI_TCP.dll differ diff --git a/LFP_Manager_PRM/dll/kerneldlls/CANWIFI_UDP.dll b/LFP_Manager_PRM/dll/kerneldlls/CANWIFI_UDP.dll new file mode 100644 index 0000000..e715e5f Binary files /dev/null and b/LFP_Manager_PRM/dll/kerneldlls/CANWIFI_UDP.dll differ diff --git a/LFP_Manager_PRM/dll/kerneldlls/PC104C2.dll b/LFP_Manager_PRM/dll/kerneldlls/PC104C2.dll new file mode 100644 index 0000000..ca44ce8 Binary files /dev/null and b/LFP_Manager_PRM/dll/kerneldlls/PC104C2.dll differ diff --git a/LFP_Manager_PRM/dll/kerneldlls/PC104CAN.dll b/LFP_Manager_PRM/dll/kerneldlls/PC104CAN.dll new file mode 100644 index 0000000..e0ed7c5 Binary files /dev/null and b/LFP_Manager_PRM/dll/kerneldlls/PC104CAN.dll differ diff --git a/LFP_Manager_PRM/dll/kerneldlls/PCI5121.dll b/LFP_Manager_PRM/dll/kerneldlls/PCI5121.dll new file mode 100644 index 0000000..231017c Binary files /dev/null and b/LFP_Manager_PRM/dll/kerneldlls/PCI5121.dll differ diff --git a/LFP_Manager_PRM/dll/kerneldlls/PCI9820B.DLL b/LFP_Manager_PRM/dll/kerneldlls/PCI9820B.DLL new file mode 100644 index 0000000..784296e Binary files /dev/null and b/LFP_Manager_PRM/dll/kerneldlls/PCI9820B.DLL differ diff --git a/LFP_Manager_PRM/dll/kerneldlls/gisadll.dll b/LFP_Manager_PRM/dll/kerneldlls/gisadll.dll new file mode 100644 index 0000000..e657290 Binary files /dev/null and b/LFP_Manager_PRM/dll/kerneldlls/gisadll.dll differ diff --git a/LFP_Manager_PRM/dll/kerneldlls/gpcidll.dll b/LFP_Manager_PRM/dll/kerneldlls/gpcidll.dll new file mode 100644 index 0000000..1d3ae86 Binary files /dev/null and b/LFP_Manager_PRM/dll/kerneldlls/gpcidll.dll differ diff --git a/LFP_Manager_PRM/dll/kerneldlls/isa5420.dll b/LFP_Manager_PRM/dll/kerneldlls/isa5420.dll new file mode 100644 index 0000000..bace86a Binary files /dev/null and b/LFP_Manager_PRM/dll/kerneldlls/isa5420.dll differ diff --git a/LFP_Manager_PRM/dll/kerneldlls/kerneldll.ini b/LFP_Manager_PRM/dll/kerneldlls/kerneldll.ini new file mode 100644 index 0000000..3899f0e --- /dev/null +++ b/LFP_Manager_PRM/dll/kerneldlls/kerneldll.ini @@ -0,0 +1,31 @@ +[KERNELDLL] +COUNT=29 +1=PCI51XXE.dll +2=PCI9810B.dll +3=USBCAN.dll +4=USBCAN.dll +5=PCI9820B.dll +6=CAN232.dll +7=PCI51XXE.dll +8=CANLite.dll +9=ISA9620B.dll +10=ISA5420.dll +11=PC104CAN.dll +12=CANETE.dll +13=DNP9810B.dll +14=PCI9840B.dll +15=PC104C2.dll +16=PCI9820I.dll +17=CANET_TCP.dll +18=pec9920.dll +19=pci50xx_u.dll +20=USBCAN_E.dll +21=USBCAN_E.dll +22=pci50xx_u.dll +23=topcliff_can.dll +24=pcie9221.dll +25=CANWIFI_TCP.dll +26=CANWIFI_UDP.dll +27=pcie9120.dll +28=pcie9110.dll +29=pcie9140.dll diff --git a/LFP_Manager_PRM/dll/kerneldlls/usbcan.dll b/LFP_Manager_PRM/dll/kerneldlls/usbcan.dll new file mode 100644 index 0000000..838e490 Binary files /dev/null and b/LFP_Manager_PRM/dll/kerneldlls/usbcan.dll differ diff --git a/LFP_Manager_PRM/fmMain.Designer.cs b/LFP_Manager_PRM/fmMain.Designer.cs new file mode 100644 index 0000000..3be09af --- /dev/null +++ b/LFP_Manager_PRM/fmMain.Designer.cs @@ -0,0 +1,971 @@ +namespace LFP_Manager +{ + partial class fmMain + { + /// + /// Required designer variable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Clean up any resources being used. + /// + /// true if managed resources should be disposed; otherwise, false. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Windows Form Designer generated code + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + this.components = new System.ComponentModel.Container(); + System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(fmMain)); + this.tmrDisplay = new System.Windows.Forms.Timer(this.components); + this.lcMain = new DevExpress.XtraLayout.LayoutControl(); + this.gbDataLog = new DevExpress.XtraEditors.GroupControl(); + this.layoutControl6 = new DevExpress.XtraLayout.LayoutControl(); + this.btnOpenLogFolder = new DevExpress.XtraEditors.SimpleButton(); + this.btnLogStart = new DevExpress.XtraEditors.SimpleButton(); + this.cbLogTime = new DevExpress.XtraEditors.ComboBoxEdit(); + this.layoutControlGroup6 = new DevExpress.XtraLayout.LayoutControlGroup(); + this.lcitemLogTime = new DevExpress.XtraLayout.LayoutControlItem(); + this.layoutControlItem13 = new DevExpress.XtraLayout.LayoutControlItem(); + this.layoutControlItem12 = new DevExpress.XtraLayout.LayoutControlItem(); + this.tabSystemStatus = new DevExpress.XtraTab.XtraTabControl(); + this.pgSystem1 = new DevExpress.XtraTab.XtraTabPage(); + this.layoutControl4 = new DevExpress.XtraLayout.LayoutControl(); + this.ucShelfA = new LFP_Manager.Controls.ucShelfStatus(); + this.layoutControlGroup4 = new DevExpress.XtraLayout.LayoutControlGroup(); + this.layoutControlItem7 = new DevExpress.XtraLayout.LayoutControlItem(); + this.pgSystem2 = new DevExpress.XtraTab.XtraTabPage(); + this.layoutControl3 = new DevExpress.XtraLayout.LayoutControl(); + this.ucShelfB = new LFP_Manager.Controls.ucShelfStatus(); + this.layoutControlGroup3 = new DevExpress.XtraLayout.LayoutControlGroup(); + this.layoutControlItem9 = new DevExpress.XtraLayout.LayoutControlItem(); + this.pgSystem3 = new DevExpress.XtraTab.XtraTabPage(); + this.layoutControl5 = new DevExpress.XtraLayout.LayoutControl(); + this.ucShelfC = new LFP_Manager.Controls.ucShelfStatus(); + this.layoutControlGroup5 = new DevExpress.XtraLayout.LayoutControlGroup(); + this.layoutControlItem10 = new DevExpress.XtraLayout.LayoutControlItem(); + this.gcLogging = new DevExpress.XtraEditors.GroupControl(); + this.layoutControl2 = new DevExpress.XtraLayout.LayoutControl(); + this.btnLogClear = new DevExpress.XtraEditors.SimpleButton(); + this.tabDataLog = new DevExpress.XtraTab.XtraTabControl(); + this.tpDataLog = new DevExpress.XtraTab.XtraTabPage(); + this.panelControl1 = new DevExpress.XtraEditors.PanelControl(); + this.meDataLog = new DevExpress.XtraEditors.MemoEdit(); + this.layoutControlGroup2 = new DevExpress.XtraLayout.LayoutControlGroup(); + this.layoutControlItem6 = new DevExpress.XtraLayout.LayoutControlItem(); + this.layoutControlItem14 = new DevExpress.XtraLayout.LayoutControlItem(); + this.gcTargetConfig = new DevExpress.XtraEditors.GroupControl(); + this.layoutControl1 = new DevExpress.XtraLayout.LayoutControl(); + this.cbType = new DevExpress.XtraEditors.ComboBoxEdit(); + this.btnStart = new DevExpress.XtraEditors.SimpleButton(); + this.teTargetIP = new IPAddressControlLib.IPAddressControl(); + this.lbTargetIP = new DevExpress.XtraEditors.LabelControl(); + this.layoutControlGroup1 = new DevExpress.XtraLayout.LayoutControlGroup(); + this.emptySpaceItem2 = new DevExpress.XtraLayout.EmptySpaceItem(); + this.layoutControlItem2 = new DevExpress.XtraLayout.LayoutControlItem(); + this.layoutControlItem3 = new DevExpress.XtraLayout.LayoutControlItem(); + this.layoutControlItem4 = new DevExpress.XtraLayout.LayoutControlItem(); + this.lcitemType = new DevExpress.XtraLayout.LayoutControlItem(); + this.lcgMain = new DevExpress.XtraLayout.LayoutControlGroup(); + this.layoutControlItem1 = new DevExpress.XtraLayout.LayoutControlItem(); + this.layoutControlItem5 = new DevExpress.XtraLayout.LayoutControlItem(); + this.layoutControlItem8 = new DevExpress.XtraLayout.LayoutControlItem(); + this.layoutControlItem11 = new DevExpress.XtraLayout.LayoutControlItem(); + this.tmrLogging = new System.Windows.Forms.Timer(this.components); + this.menuStrip1 = new System.Windows.Forms.MenuStrip(); + this.toolStripMenuItem1 = new System.Windows.Forms.ToolStripMenuItem(); + this.serialPort1 = new System.IO.Ports.SerialPort(this.components); + ((System.ComponentModel.ISupportInitialize)(this.lcMain)).BeginInit(); + this.lcMain.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.gbDataLog)).BeginInit(); + this.gbDataLog.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControl6)).BeginInit(); + this.layoutControl6.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.cbLogTime.Properties)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup6)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.lcitemLogTime)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem13)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem12)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.tabSystemStatus)).BeginInit(); + this.tabSystemStatus.SuspendLayout(); + this.pgSystem1.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControl4)).BeginInit(); + this.layoutControl4.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup4)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem7)).BeginInit(); + this.pgSystem2.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControl3)).BeginInit(); + this.layoutControl3.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup3)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem9)).BeginInit(); + this.pgSystem3.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControl5)).BeginInit(); + this.layoutControl5.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup5)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem10)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.gcLogging)).BeginInit(); + this.gcLogging.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControl2)).BeginInit(); + this.layoutControl2.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.tabDataLog)).BeginInit(); + this.tabDataLog.SuspendLayout(); + this.tpDataLog.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.panelControl1)).BeginInit(); + this.panelControl1.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.meDataLog.Properties)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup2)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem6)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem14)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.gcTargetConfig)).BeginInit(); + this.gcTargetConfig.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControl1)).BeginInit(); + this.layoutControl1.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.cbType.Properties)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup1)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.emptySpaceItem2)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem2)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem3)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem4)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.lcitemType)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.lcgMain)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem1)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem5)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem8)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem11)).BeginInit(); + this.menuStrip1.SuspendLayout(); + this.SuspendLayout(); + // + // tmrDisplay + // + this.tmrDisplay.Interval = 50; + this.tmrDisplay.Tick += new System.EventHandler(this.tmrDisplay_Tick); + // + // lcMain + // + this.lcMain.Controls.Add(this.gbDataLog); + this.lcMain.Controls.Add(this.tabSystemStatus); + this.lcMain.Controls.Add(this.gcLogging); + this.lcMain.Controls.Add(this.gcTargetConfig); + this.lcMain.Dock = System.Windows.Forms.DockStyle.Fill; + this.lcMain.Location = new System.Drawing.Point(0, 0); + this.lcMain.Name = "lcMain"; + this.lcMain.OptionsCustomizationForm.DesignTimeCustomizationFormPositionAndSize = new System.Drawing.Rectangle(901, 311, 250, 350); + this.lcMain.Root = this.lcgMain; + this.lcMain.Size = new System.Drawing.Size(913, 729); + this.lcMain.TabIndex = 0; + this.lcMain.Text = "layoutControl1"; + // + // gbDataLog + // + this.gbDataLog.Controls.Add(this.layoutControl6); + this.gbDataLog.Location = new System.Drawing.Point(711, 580); + this.gbDataLog.Name = "gbDataLog"; + this.gbDataLog.Size = new System.Drawing.Size(199, 146); + this.gbDataLog.TabIndex = 8; + this.gbDataLog.Text = "Data Logging"; + // + // layoutControl6 + // + this.layoutControl6.Controls.Add(this.btnOpenLogFolder); + this.layoutControl6.Controls.Add(this.btnLogStart); + this.layoutControl6.Controls.Add(this.cbLogTime); + this.layoutControl6.Dock = System.Windows.Forms.DockStyle.Fill; + this.layoutControl6.Location = new System.Drawing.Point(2, 22); + this.layoutControl6.Name = "layoutControl6"; + this.layoutControl6.OptionsCustomizationForm.DesignTimeCustomizationFormPositionAndSize = new System.Drawing.Rectangle(1209, 389, 250, 350); + this.layoutControl6.Root = this.layoutControlGroup6; + this.layoutControl6.Size = new System.Drawing.Size(195, 122); + this.layoutControl6.TabIndex = 0; + this.layoutControl6.Text = "layoutControl6"; + // + // btnOpenLogFolder + // + this.btnOpenLogFolder.Location = new System.Drawing.Point(3, 77); + this.btnOpenLogFolder.Name = "btnOpenLogFolder"; + this.btnOpenLogFolder.Size = new System.Drawing.Size(189, 42); + this.btnOpenLogFolder.StyleController = this.layoutControl6; + this.btnOpenLogFolder.TabIndex = 6; + this.btnOpenLogFolder.Text = "Open Log Folder"; + this.btnOpenLogFolder.Click += new System.EventHandler(this.btnOpenLogFolder_Click); + // + // btnLogStart + // + this.btnLogStart.Location = new System.Drawing.Point(3, 27); + this.btnLogStart.Name = "btnLogStart"; + this.btnLogStart.Size = new System.Drawing.Size(189, 46); + this.btnLogStart.StyleController = this.layoutControl6; + this.btnLogStart.TabIndex = 5; + this.btnLogStart.Text = "Log Start"; + this.btnLogStart.Click += new System.EventHandler(this.btnLogStart_Click); + // + // cbLogTime + // + this.cbLogTime.EditValue = "5"; + this.cbLogTime.Location = new System.Drawing.Point(68, 3); + this.cbLogTime.Name = "cbLogTime"; + this.cbLogTime.Properties.Appearance.Options.UseTextOptions = true; + this.cbLogTime.Properties.Appearance.TextOptions.HAlignment = DevExpress.Utils.HorzAlignment.Far; + this.cbLogTime.Properties.Buttons.AddRange(new DevExpress.XtraEditors.Controls.EditorButton[] { + new DevExpress.XtraEditors.Controls.EditorButton(DevExpress.XtraEditors.Controls.ButtonPredefines.Combo)}); + this.cbLogTime.Properties.Items.AddRange(new object[] { + "1", + "5", + "10", + "15", + "30", + "60"}); + this.cbLogTime.Size = new System.Drawing.Size(124, 20); + this.cbLogTime.StyleController = this.layoutControl6; + this.cbLogTime.TabIndex = 4; + // + // layoutControlGroup6 + // + this.layoutControlGroup6.CustomizationFormText = "layoutControlGroup6"; + this.layoutControlGroup6.EnableIndentsWithoutBorders = DevExpress.Utils.DefaultBoolean.True; + this.layoutControlGroup6.GroupBordersVisible = false; + this.layoutControlGroup6.Items.AddRange(new DevExpress.XtraLayout.BaseLayoutItem[] { + this.lcitemLogTime, + this.layoutControlItem13, + this.layoutControlItem12}); + this.layoutControlGroup6.Location = new System.Drawing.Point(0, 0); + this.layoutControlGroup6.Name = "layoutControlGroup6"; + this.layoutControlGroup6.Padding = new DevExpress.XtraLayout.Utils.Padding(1, 1, 1, 1); + this.layoutControlGroup6.Size = new System.Drawing.Size(195, 122); + this.layoutControlGroup6.Text = "layoutControlGroup6"; + this.layoutControlGroup6.TextVisible = false; + // + // lcitemLogTime + // + this.lcitemLogTime.AppearanceItemCaption.Options.UseTextOptions = true; + this.lcitemLogTime.AppearanceItemCaption.TextOptions.HAlignment = DevExpress.Utils.HorzAlignment.Center; + this.lcitemLogTime.Control = this.cbLogTime; + this.lcitemLogTime.CustomizationFormText = "Log Time"; + this.lcitemLogTime.Location = new System.Drawing.Point(0, 0); + this.lcitemLogTime.MinSize = new System.Drawing.Size(119, 24); + this.lcitemLogTime.Name = "lcitemLogTime"; + this.lcitemLogTime.Size = new System.Drawing.Size(193, 24); + this.lcitemLogTime.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.lcitemLogTime.Text = "Log Time"; + this.lcitemLogTime.TextAlignMode = DevExpress.XtraLayout.TextAlignModeItem.CustomSize; + this.lcitemLogTime.TextSize = new System.Drawing.Size(60, 20); + this.lcitemLogTime.TextToControlDistance = 5; + // + // layoutControlItem13 + // + this.layoutControlItem13.Control = this.btnLogStart; + this.layoutControlItem13.CustomizationFormText = "layoutControlItem13"; + this.layoutControlItem13.Location = new System.Drawing.Point(0, 24); + this.layoutControlItem13.MinSize = new System.Drawing.Size(93, 26); + this.layoutControlItem13.Name = "layoutControlItem13"; + this.layoutControlItem13.Size = new System.Drawing.Size(193, 50); + this.layoutControlItem13.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem13.Text = "layoutControlItem13"; + this.layoutControlItem13.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem13.TextToControlDistance = 0; + this.layoutControlItem13.TextVisible = false; + // + // layoutControlItem12 + // + this.layoutControlItem12.Control = this.btnOpenLogFolder; + this.layoutControlItem12.CustomizationFormText = "layoutControlItem12"; + this.layoutControlItem12.Location = new System.Drawing.Point(0, 74); + this.layoutControlItem12.MinSize = new System.Drawing.Size(93, 26); + this.layoutControlItem12.Name = "layoutControlItem12"; + this.layoutControlItem12.Size = new System.Drawing.Size(193, 46); + this.layoutControlItem12.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem12.Text = "layoutControlItem12"; + this.layoutControlItem12.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem12.TextToControlDistance = 0; + this.layoutControlItem12.TextVisible = false; + // + // tabSystemStatus + // + this.tabSystemStatus.Location = new System.Drawing.Point(3, 65); + this.tabSystemStatus.Name = "tabSystemStatus"; + this.tabSystemStatus.SelectedTabPage = this.pgSystem1; + this.tabSystemStatus.Size = new System.Drawing.Size(907, 511); + this.tabSystemStatus.TabIndex = 7; + this.tabSystemStatus.TabPages.AddRange(new DevExpress.XtraTab.XtraTabPage[] { + this.pgSystem1, + this.pgSystem2, + this.pgSystem3}); + // + // pgSystem1 + // + this.pgSystem1.Controls.Add(this.layoutControl4); + this.pgSystem1.Name = "pgSystem1"; + this.pgSystem1.Size = new System.Drawing.Size(901, 482); + this.pgSystem1.Text = "SYSTEM #A"; + // + // layoutControl4 + // + this.layoutControl4.Controls.Add(this.ucShelfA); + this.layoutControl4.Dock = System.Windows.Forms.DockStyle.Fill; + this.layoutControl4.Location = new System.Drawing.Point(0, 0); + this.layoutControl4.Name = "layoutControl4"; + this.layoutControl4.Root = this.layoutControlGroup4; + this.layoutControl4.Size = new System.Drawing.Size(901, 482); + this.layoutControl4.TabIndex = 0; + this.layoutControl4.Text = "layoutControl4"; + // + // ucShelfA + // + this.ucShelfA.Location = new System.Drawing.Point(3, 3); + this.ucShelfA.Name = "ucShelfA"; + this.ucShelfA.Size = new System.Drawing.Size(895, 476); + this.ucShelfA.TabIndex = 4; + // + // layoutControlGroup4 + // + this.layoutControlGroup4.CustomizationFormText = "layoutControlGroup4"; + this.layoutControlGroup4.EnableIndentsWithoutBorders = DevExpress.Utils.DefaultBoolean.True; + this.layoutControlGroup4.GroupBordersVisible = false; + this.layoutControlGroup4.Items.AddRange(new DevExpress.XtraLayout.BaseLayoutItem[] { + this.layoutControlItem7}); + this.layoutControlGroup4.Location = new System.Drawing.Point(0, 0); + this.layoutControlGroup4.Name = "layoutControlGroup4"; + this.layoutControlGroup4.Padding = new DevExpress.XtraLayout.Utils.Padding(1, 1, 1, 1); + this.layoutControlGroup4.Size = new System.Drawing.Size(901, 482); + this.layoutControlGroup4.Text = "layoutControlGroup4"; + this.layoutControlGroup4.TextVisible = false; + // + // layoutControlItem7 + // + this.layoutControlItem7.Control = this.ucShelfA; + this.layoutControlItem7.CustomizationFormText = "layoutControlItem7"; + this.layoutControlItem7.Location = new System.Drawing.Point(0, 0); + this.layoutControlItem7.Name = "layoutControlItem7"; + this.layoutControlItem7.Size = new System.Drawing.Size(899, 480); + this.layoutControlItem7.Text = "layoutControlItem7"; + this.layoutControlItem7.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem7.TextToControlDistance = 0; + this.layoutControlItem7.TextVisible = false; + // + // pgSystem2 + // + this.pgSystem2.Controls.Add(this.layoutControl3); + this.pgSystem2.Name = "pgSystem2"; + this.pgSystem2.Size = new System.Drawing.Size(901, 482); + this.pgSystem2.Text = "SYSTEM #B"; + // + // layoutControl3 + // + this.layoutControl3.Controls.Add(this.ucShelfB); + this.layoutControl3.Dock = System.Windows.Forms.DockStyle.Fill; + this.layoutControl3.Location = new System.Drawing.Point(0, 0); + this.layoutControl3.Name = "layoutControl3"; + this.layoutControl3.Root = this.layoutControlGroup3; + this.layoutControl3.Size = new System.Drawing.Size(901, 482); + this.layoutControl3.TabIndex = 0; + this.layoutControl3.Text = "layoutControl3"; + // + // ucShelfB + // + this.ucShelfB.Location = new System.Drawing.Point(3, 3); + this.ucShelfB.Name = "ucShelfB"; + this.ucShelfB.Size = new System.Drawing.Size(895, 476); + this.ucShelfB.TabIndex = 4; + // + // layoutControlGroup3 + // + this.layoutControlGroup3.CustomizationFormText = "layoutControlGroup3"; + this.layoutControlGroup3.EnableIndentsWithoutBorders = DevExpress.Utils.DefaultBoolean.True; + this.layoutControlGroup3.GroupBordersVisible = false; + this.layoutControlGroup3.Items.AddRange(new DevExpress.XtraLayout.BaseLayoutItem[] { + this.layoutControlItem9}); + this.layoutControlGroup3.Location = new System.Drawing.Point(0, 0); + this.layoutControlGroup3.Name = "layoutControlGroup3"; + this.layoutControlGroup3.Padding = new DevExpress.XtraLayout.Utils.Padding(1, 1, 1, 1); + this.layoutControlGroup3.Size = new System.Drawing.Size(901, 482); + this.layoutControlGroup3.Text = "layoutControlGroup3"; + this.layoutControlGroup3.TextVisible = false; + // + // layoutControlItem9 + // + this.layoutControlItem9.Control = this.ucShelfB; + this.layoutControlItem9.CustomizationFormText = "layoutControlItem9"; + this.layoutControlItem9.Location = new System.Drawing.Point(0, 0); + this.layoutControlItem9.Name = "layoutControlItem9"; + this.layoutControlItem9.Size = new System.Drawing.Size(899, 480); + this.layoutControlItem9.Text = "layoutControlItem9"; + this.layoutControlItem9.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem9.TextToControlDistance = 0; + this.layoutControlItem9.TextVisible = false; + // + // pgSystem3 + // + this.pgSystem3.Controls.Add(this.layoutControl5); + this.pgSystem3.Name = "pgSystem3"; + this.pgSystem3.Size = new System.Drawing.Size(901, 482); + this.pgSystem3.Text = "SYSTEM #C"; + // + // layoutControl5 + // + this.layoutControl5.Controls.Add(this.ucShelfC); + this.layoutControl5.Dock = System.Windows.Forms.DockStyle.Fill; + this.layoutControl5.Location = new System.Drawing.Point(0, 0); + this.layoutControl5.Name = "layoutControl5"; + this.layoutControl5.Root = this.layoutControlGroup5; + this.layoutControl5.Size = new System.Drawing.Size(901, 482); + this.layoutControl5.TabIndex = 0; + this.layoutControl5.Text = "layoutControl5"; + // + // ucShelfC + // + this.ucShelfC.Location = new System.Drawing.Point(3, 3); + this.ucShelfC.Name = "ucShelfC"; + this.ucShelfC.Size = new System.Drawing.Size(895, 476); + this.ucShelfC.TabIndex = 4; + // + // layoutControlGroup5 + // + this.layoutControlGroup5.CustomizationFormText = "layoutControlGroup5"; + this.layoutControlGroup5.EnableIndentsWithoutBorders = DevExpress.Utils.DefaultBoolean.True; + this.layoutControlGroup5.GroupBordersVisible = false; + this.layoutControlGroup5.Items.AddRange(new DevExpress.XtraLayout.BaseLayoutItem[] { + this.layoutControlItem10}); + this.layoutControlGroup5.Location = new System.Drawing.Point(0, 0); + this.layoutControlGroup5.Name = "layoutControlGroup5"; + this.layoutControlGroup5.Padding = new DevExpress.XtraLayout.Utils.Padding(1, 1, 1, 1); + this.layoutControlGroup5.Size = new System.Drawing.Size(901, 482); + this.layoutControlGroup5.Text = "layoutControlGroup5"; + this.layoutControlGroup5.TextVisible = false; + // + // layoutControlItem10 + // + this.layoutControlItem10.Control = this.ucShelfC; + this.layoutControlItem10.CustomizationFormText = "layoutControlItem10"; + this.layoutControlItem10.Location = new System.Drawing.Point(0, 0); + this.layoutControlItem10.Name = "layoutControlItem10"; + this.layoutControlItem10.Size = new System.Drawing.Size(899, 480); + this.layoutControlItem10.Text = "layoutControlItem10"; + this.layoutControlItem10.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem10.TextToControlDistance = 0; + this.layoutControlItem10.TextVisible = false; + // + // gcLogging + // + this.gcLogging.Controls.Add(this.layoutControl2); + this.gcLogging.Location = new System.Drawing.Point(3, 580); + this.gcLogging.Name = "gcLogging"; + this.gcLogging.Size = new System.Drawing.Size(704, 146); + this.gcLogging.TabIndex = 5; + this.gcLogging.Text = "Event"; + // + // layoutControl2 + // + this.layoutControl2.Controls.Add(this.btnLogClear); + this.layoutControl2.Controls.Add(this.tabDataLog); + this.layoutControl2.Dock = System.Windows.Forms.DockStyle.Fill; + this.layoutControl2.Location = new System.Drawing.Point(2, 22); + this.layoutControl2.Name = "layoutControl2"; + this.layoutControl2.OptionsCustomizationForm.DesignTimeCustomizationFormPositionAndSize = new System.Drawing.Rectangle(1234, 235, 250, 350); + this.layoutControl2.Root = this.layoutControlGroup2; + this.layoutControl2.Size = new System.Drawing.Size(700, 122); + this.layoutControl2.TabIndex = 0; + this.layoutControl2.Text = "layoutControl2"; + // + // btnLogClear + // + this.btnLogClear.Location = new System.Drawing.Point(640, 4); + this.btnLogClear.Name = "btnLogClear"; + this.btnLogClear.Size = new System.Drawing.Size(56, 114); + this.btnLogClear.StyleController = this.layoutControl2; + this.btnLogClear.TabIndex = 5; + this.btnLogClear.Text = "Clear"; + this.btnLogClear.Click += new System.EventHandler(this.btnLogClear_Click); + // + // tabDataLog + // + this.tabDataLog.Location = new System.Drawing.Point(4, 4); + this.tabDataLog.Name = "tabDataLog"; + this.tabDataLog.SelectedTabPage = this.tpDataLog; + this.tabDataLog.Size = new System.Drawing.Size(632, 114); + this.tabDataLog.TabIndex = 4; + this.tabDataLog.TabPages.AddRange(new DevExpress.XtraTab.XtraTabPage[] { + this.tpDataLog}); + // + // tpDataLog + // + this.tpDataLog.Controls.Add(this.panelControl1); + this.tpDataLog.Name = "tpDataLog"; + this.tpDataLog.Size = new System.Drawing.Size(626, 85); + this.tpDataLog.Text = "Data Log"; + // + // panelControl1 + // + this.panelControl1.Controls.Add(this.meDataLog); + this.panelControl1.Dock = System.Windows.Forms.DockStyle.Fill; + this.panelControl1.Location = new System.Drawing.Point(0, 0); + this.panelControl1.Name = "panelControl1"; + this.panelControl1.Size = new System.Drawing.Size(626, 85); + this.panelControl1.TabIndex = 0; + // + // meDataLog + // + this.meDataLog.Dock = System.Windows.Forms.DockStyle.Fill; + this.meDataLog.Location = new System.Drawing.Point(2, 2); + this.meDataLog.Name = "meDataLog"; + this.meDataLog.Size = new System.Drawing.Size(622, 81); + this.meDataLog.TabIndex = 0; + // + // layoutControlGroup2 + // + this.layoutControlGroup2.CustomizationFormText = "layoutControlGroup2"; + this.layoutControlGroup2.EnableIndentsWithoutBorders = DevExpress.Utils.DefaultBoolean.True; + this.layoutControlGroup2.GroupBordersVisible = false; + this.layoutControlGroup2.Items.AddRange(new DevExpress.XtraLayout.BaseLayoutItem[] { + this.layoutControlItem6, + this.layoutControlItem14}); + this.layoutControlGroup2.Location = new System.Drawing.Point(0, 0); + this.layoutControlGroup2.Name = "layoutControlGroup2"; + this.layoutControlGroup2.Padding = new DevExpress.XtraLayout.Utils.Padding(2, 2, 2, 2); + this.layoutControlGroup2.Size = new System.Drawing.Size(700, 122); + this.layoutControlGroup2.Text = "layoutControlGroup2"; + this.layoutControlGroup2.TextVisible = false; + // + // layoutControlItem6 + // + this.layoutControlItem6.Control = this.tabDataLog; + this.layoutControlItem6.CustomizationFormText = "layoutControlItem6"; + this.layoutControlItem6.Location = new System.Drawing.Point(0, 0); + this.layoutControlItem6.MinSize = new System.Drawing.Size(104, 24); + this.layoutControlItem6.Name = "layoutControlItem6"; + this.layoutControlItem6.Size = new System.Drawing.Size(636, 118); + this.layoutControlItem6.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem6.Text = "layoutControlItem6"; + this.layoutControlItem6.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem6.TextToControlDistance = 0; + this.layoutControlItem6.TextVisible = false; + // + // layoutControlItem14 + // + this.layoutControlItem14.Control = this.btnLogClear; + this.layoutControlItem14.CustomizationFormText = "layoutControlItem14"; + this.layoutControlItem14.Location = new System.Drawing.Point(636, 0); + this.layoutControlItem14.MinSize = new System.Drawing.Size(60, 26); + this.layoutControlItem14.Name = "layoutControlItem14"; + this.layoutControlItem14.Size = new System.Drawing.Size(60, 118); + this.layoutControlItem14.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem14.Text = "layoutControlItem14"; + this.layoutControlItem14.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem14.TextToControlDistance = 0; + this.layoutControlItem14.TextVisible = false; + // + // gcTargetConfig + // + this.gcTargetConfig.Controls.Add(this.layoutControl1); + this.gcTargetConfig.Location = new System.Drawing.Point(3, 3); + this.gcTargetConfig.Name = "gcTargetConfig"; + this.gcTargetConfig.Size = new System.Drawing.Size(907, 58); + this.gcTargetConfig.TabIndex = 4; + this.gcTargetConfig.Text = "Target Config"; + this.gcTargetConfig.Paint += new System.Windows.Forms.PaintEventHandler(this.gcTargetConfig_Paint); + // + // layoutControl1 + // + this.layoutControl1.Controls.Add(this.cbType); + this.layoutControl1.Controls.Add(this.btnStart); + this.layoutControl1.Controls.Add(this.teTargetIP); + this.layoutControl1.Controls.Add(this.lbTargetIP); + this.layoutControl1.Dock = System.Windows.Forms.DockStyle.Fill; + this.layoutControl1.Location = new System.Drawing.Point(2, 22); + this.layoutControl1.Name = "layoutControl1"; + this.layoutControl1.OptionsCustomizationForm.DesignTimeCustomizationFormPositionAndSize = new System.Drawing.Rectangle(318, 219, 250, 350); + this.layoutControl1.Root = this.layoutControlGroup1; + this.layoutControl1.Size = new System.Drawing.Size(903, 34); + this.layoutControl1.TabIndex = 0; + this.layoutControl1.Text = "layoutControl1"; + // + // cbType + // + this.cbType.Location = new System.Drawing.Point(399, 4); + this.cbType.Name = "cbType"; + this.cbType.Properties.Appearance.Font = new System.Drawing.Font("Tahoma", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); + this.cbType.Properties.Appearance.Options.UseFont = true; + this.cbType.Properties.Buttons.AddRange(new DevExpress.XtraEditors.Controls.EditorButton[] { + new DevExpress.XtraEditors.Controls.EditorButton(DevExpress.XtraEditors.Controls.ButtonPredefines.Combo)}); + this.cbType.Properties.Items.AddRange(new object[] { + "LFPS-48100", + "LFPR-48300", + "LFPR-48600", + "LFPR-48900", + "LFPS-48150"}); + this.cbType.Size = new System.Drawing.Size(178, 26); + this.cbType.StyleController = this.layoutControl1; + this.cbType.TabIndex = 7; + this.cbType.SelectedIndexChanged += new System.EventHandler(this.cbType_SelectedIndexChanged); + // + // btnStart + // + this.btnStart.Location = new System.Drawing.Point(725, 4); + this.btnStart.Name = "btnStart"; + this.btnStart.Size = new System.Drawing.Size(174, 26); + this.btnStart.StyleController = this.layoutControl1; + this.btnStart.TabIndex = 6; + this.btnStart.Text = "START"; + this.btnStart.Click += new System.EventHandler(this.btnStart_ClickA); + // + // teTargetIP + // + this.teTargetIP.AllowInternalTab = false; + this.teTargetIP.AutoHeight = true; + this.teTargetIP.BackColor = System.Drawing.SystemColors.Window; + this.teTargetIP.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D; + this.teTargetIP.Cursor = System.Windows.Forms.Cursors.IBeam; + this.teTargetIP.Font = new System.Drawing.Font("Tahoma", 11.25F); + this.teTargetIP.Location = new System.Drawing.Point(101, 4); + this.teTargetIP.MinimumSize = new System.Drawing.Size(117, 26); + this.teTargetIP.Name = "teTargetIP"; + this.teTargetIP.ReadOnly = false; + this.teTargetIP.Size = new System.Drawing.Size(239, 26); + this.teTargetIP.TabIndex = 5; + this.teTargetIP.Text = "192.168.0.200"; + // + // lbTargetIP + // + this.lbTargetIP.Appearance.TextOptions.HAlignment = DevExpress.Utils.HorzAlignment.Center; + this.lbTargetIP.Location = new System.Drawing.Point(4, 4); + this.lbTargetIP.Name = "lbTargetIP"; + this.lbTargetIP.Size = new System.Drawing.Size(93, 26); + this.lbTargetIP.StyleController = this.layoutControl1; + this.lbTargetIP.TabIndex = 4; + this.lbTargetIP.Text = "IP Address"; + // + // layoutControlGroup1 + // + this.layoutControlGroup1.CustomizationFormText = "layoutControlGroup1"; + this.layoutControlGroup1.EnableIndentsWithoutBorders = DevExpress.Utils.DefaultBoolean.True; + this.layoutControlGroup1.GroupBordersVisible = false; + this.layoutControlGroup1.Items.AddRange(new DevExpress.XtraLayout.BaseLayoutItem[] { + this.emptySpaceItem2, + this.layoutControlItem2, + this.layoutControlItem3, + this.layoutControlItem4, + this.lcitemType}); + this.layoutControlGroup1.Location = new System.Drawing.Point(0, 0); + this.layoutControlGroup1.Name = "layoutControlGroup1"; + this.layoutControlGroup1.Padding = new DevExpress.XtraLayout.Utils.Padding(2, 2, 2, 2); + this.layoutControlGroup1.Size = new System.Drawing.Size(903, 34); + this.layoutControlGroup1.Text = "layoutControlGroup1"; + this.layoutControlGroup1.TextVisible = false; + // + // emptySpaceItem2 + // + this.emptySpaceItem2.AllowHotTrack = false; + this.emptySpaceItem2.CustomizationFormText = "emptySpaceItem2"; + this.emptySpaceItem2.Location = new System.Drawing.Point(577, 0); + this.emptySpaceItem2.Name = "emptySpaceItem2"; + this.emptySpaceItem2.Size = new System.Drawing.Size(144, 30); + this.emptySpaceItem2.Text = "emptySpaceItem2"; + this.emptySpaceItem2.TextSize = new System.Drawing.Size(0, 0); + // + // layoutControlItem2 + // + this.layoutControlItem2.Control = this.lbTargetIP; + this.layoutControlItem2.CustomizationFormText = "layoutControlItem2"; + this.layoutControlItem2.Location = new System.Drawing.Point(0, 0); + this.layoutControlItem2.MinSize = new System.Drawing.Size(74, 18); + this.layoutControlItem2.Name = "layoutControlItem2"; + this.layoutControlItem2.Size = new System.Drawing.Size(97, 30); + this.layoutControlItem2.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem2.Text = "layoutControlItem2"; + this.layoutControlItem2.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem2.TextToControlDistance = 0; + this.layoutControlItem2.TextVisible = false; + // + // layoutControlItem3 + // + this.layoutControlItem3.Control = this.teTargetIP; + this.layoutControlItem3.CustomizationFormText = "layoutControlItem3"; + this.layoutControlItem3.Location = new System.Drawing.Point(97, 0); + this.layoutControlItem3.MinSize = new System.Drawing.Size(121, 30); + this.layoutControlItem3.Name = "layoutControlItem3"; + this.layoutControlItem3.Size = new System.Drawing.Size(243, 30); + this.layoutControlItem3.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem3.Text = "layoutControlItem3"; + this.layoutControlItem3.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem3.TextToControlDistance = 0; + this.layoutControlItem3.TextVisible = false; + // + // layoutControlItem4 + // + this.layoutControlItem4.Control = this.btnStart; + this.layoutControlItem4.CustomizationFormText = "layoutControlItem4"; + this.layoutControlItem4.Location = new System.Drawing.Point(721, 0); + this.layoutControlItem4.MinSize = new System.Drawing.Size(93, 26); + this.layoutControlItem4.Name = "layoutControlItem4"; + this.layoutControlItem4.Size = new System.Drawing.Size(178, 30); + this.layoutControlItem4.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem4.Text = "layoutControlItem4"; + this.layoutControlItem4.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem4.TextToControlDistance = 0; + this.layoutControlItem4.TextVisible = false; + // + // lcitemType + // + this.lcitemType.AppearanceItemCaption.Options.UseTextOptions = true; + this.lcitemType.AppearanceItemCaption.TextOptions.HAlignment = DevExpress.Utils.HorzAlignment.Center; + this.lcitemType.Control = this.cbType; + this.lcitemType.CustomizationFormText = "Type"; + this.lcitemType.Location = new System.Drawing.Point(340, 0); + this.lcitemType.MinSize = new System.Drawing.Size(109, 28); + this.lcitemType.Name = "lcitemType"; + this.lcitemType.Size = new System.Drawing.Size(237, 30); + this.lcitemType.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.lcitemType.Text = "Type"; + this.lcitemType.TextAlignMode = DevExpress.XtraLayout.TextAlignModeItem.CustomSize; + this.lcitemType.TextSize = new System.Drawing.Size(50, 20); + this.lcitemType.TextToControlDistance = 5; + // + // lcgMain + // + this.lcgMain.CustomizationFormText = "lcgMain"; + this.lcgMain.EnableIndentsWithoutBorders = DevExpress.Utils.DefaultBoolean.True; + this.lcgMain.GroupBordersVisible = false; + this.lcgMain.Items.AddRange(new DevExpress.XtraLayout.BaseLayoutItem[] { + this.layoutControlItem1, + this.layoutControlItem5, + this.layoutControlItem8, + this.layoutControlItem11}); + this.lcgMain.Location = new System.Drawing.Point(0, 0); + this.lcgMain.Name = "Root"; + this.lcgMain.Padding = new DevExpress.XtraLayout.Utils.Padding(1, 1, 1, 1); + this.lcgMain.Size = new System.Drawing.Size(913, 729); + this.lcgMain.Text = "Root"; + this.lcgMain.TextVisible = false; + // + // layoutControlItem1 + // + this.layoutControlItem1.Control = this.gcTargetConfig; + this.layoutControlItem1.CustomizationFormText = "layoutControlItem1"; + this.layoutControlItem1.Location = new System.Drawing.Point(0, 0); + this.layoutControlItem1.MaxSize = new System.Drawing.Size(0, 62); + this.layoutControlItem1.MinSize = new System.Drawing.Size(104, 62); + this.layoutControlItem1.Name = "layoutControlItem1"; + this.layoutControlItem1.Size = new System.Drawing.Size(911, 62); + this.layoutControlItem1.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem1.Text = "layoutControlItem1"; + this.layoutControlItem1.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem1.TextToControlDistance = 0; + this.layoutControlItem1.TextVisible = false; + // + // layoutControlItem5 + // + this.layoutControlItem5.Control = this.gcLogging; + this.layoutControlItem5.CustomizationFormText = "layoutControlItem5"; + this.layoutControlItem5.Location = new System.Drawing.Point(0, 577); + this.layoutControlItem5.MaxSize = new System.Drawing.Size(0, 150); + this.layoutControlItem5.MinSize = new System.Drawing.Size(104, 150); + this.layoutControlItem5.Name = "layoutControlItem5"; + this.layoutControlItem5.Size = new System.Drawing.Size(708, 150); + this.layoutControlItem5.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem5.Text = "layoutControlItem5"; + this.layoutControlItem5.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem5.TextToControlDistance = 0; + this.layoutControlItem5.TextVisible = false; + // + // layoutControlItem8 + // + this.layoutControlItem8.Control = this.tabSystemStatus; + this.layoutControlItem8.CustomizationFormText = "layoutControlItem8"; + this.layoutControlItem8.Location = new System.Drawing.Point(0, 62); + this.layoutControlItem8.Name = "layoutControlItem8"; + this.layoutControlItem8.Size = new System.Drawing.Size(911, 515); + this.layoutControlItem8.Text = "layoutControlItem8"; + this.layoutControlItem8.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem8.TextToControlDistance = 0; + this.layoutControlItem8.TextVisible = false; + // + // layoutControlItem11 + // + this.layoutControlItem11.Control = this.gbDataLog; + this.layoutControlItem11.CustomizationFormText = "layoutControlItem11"; + this.layoutControlItem11.Location = new System.Drawing.Point(708, 577); + this.layoutControlItem11.MaxSize = new System.Drawing.Size(203, 150); + this.layoutControlItem11.MinSize = new System.Drawing.Size(203, 150); + this.layoutControlItem11.Name = "layoutControlItem11"; + this.layoutControlItem11.Size = new System.Drawing.Size(203, 150); + this.layoutControlItem11.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom; + this.layoutControlItem11.Text = "layoutControlItem11"; + this.layoutControlItem11.TextSize = new System.Drawing.Size(0, 0); + this.layoutControlItem11.TextToControlDistance = 0; + this.layoutControlItem11.TextVisible = false; + // + // tmrLogging + // + this.tmrLogging.Interval = 500; + this.tmrLogging.Tick += new System.EventHandler(this.tmrLogging_Tick); + // + // menuStrip1 + // + this.menuStrip1.Items.AddRange(new System.Windows.Forms.ToolStripItem[] { + this.toolStripMenuItem1}); + this.menuStrip1.Location = new System.Drawing.Point(1, 24); + this.menuStrip1.Name = "menuStrip1"; + this.menuStrip1.Size = new System.Drawing.Size(686, 24); + this.menuStrip1.TabIndex = 2; + this.menuStrip1.Text = "menuStrip1"; + // + // toolStripMenuItem1 + // + this.toolStripMenuItem1.Name = "toolStripMenuItem1"; + this.toolStripMenuItem1.Size = new System.Drawing.Size(127, 20); + this.toolStripMenuItem1.Text = "toolStripMenuItem1"; + // + // serialPort1 + // + this.serialPort1.ErrorReceived += new System.IO.Ports.SerialErrorReceivedEventHandler(this.serialPort1_ErrorReceived); + this.serialPort1.PinChanged += new System.IO.Ports.SerialPinChangedEventHandler(this.serialPort1_PinChanged); + this.serialPort1.DataReceived += new System.IO.Ports.SerialDataReceivedEventHandler(this.serialPort1_DataReceived); + // + // fmMain + // + this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 12F); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.ClientSize = new System.Drawing.Size(913, 729); + this.Controls.Add(this.lcMain); + this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon"))); + this.Name = "fmMain"; + this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen; + this.Text = "AMO LFP Monitor"; + this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.fmMain_FormClosing); + ((System.ComponentModel.ISupportInitialize)(this.lcMain)).EndInit(); + this.lcMain.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.gbDataLog)).EndInit(); + this.gbDataLog.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.layoutControl6)).EndInit(); + this.layoutControl6.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.cbLogTime.Properties)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup6)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.lcitemLogTime)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem13)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem12)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.tabSystemStatus)).EndInit(); + this.tabSystemStatus.ResumeLayout(false); + this.pgSystem1.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.layoutControl4)).EndInit(); + this.layoutControl4.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup4)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem7)).EndInit(); + this.pgSystem2.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.layoutControl3)).EndInit(); + this.layoutControl3.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup3)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem9)).EndInit(); + this.pgSystem3.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.layoutControl5)).EndInit(); + this.layoutControl5.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup5)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem10)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.gcLogging)).EndInit(); + this.gcLogging.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.layoutControl2)).EndInit(); + this.layoutControl2.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.tabDataLog)).EndInit(); + this.tabDataLog.ResumeLayout(false); + this.tpDataLog.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.panelControl1)).EndInit(); + this.panelControl1.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.meDataLog.Properties)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup2)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem6)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem14)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.gcTargetConfig)).EndInit(); + this.gcTargetConfig.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.layoutControl1)).EndInit(); + this.layoutControl1.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.cbType.Properties)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup1)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.emptySpaceItem2)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem2)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem3)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem4)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.lcitemType)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.lcgMain)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem1)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem5)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem8)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem11)).EndInit(); + this.menuStrip1.ResumeLayout(false); + this.menuStrip1.PerformLayout(); + this.ResumeLayout(false); + + } + + #endregion + + private System.Windows.Forms.Timer tmrDisplay; + private DevExpress.XtraLayout.LayoutControl lcMain; + private DevExpress.XtraLayout.LayoutControlGroup lcgMain; + private DevExpress.XtraEditors.GroupControl gcTargetConfig; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem1; + private DevExpress.XtraLayout.LayoutControl layoutControl1; + private DevExpress.XtraLayout.LayoutControlGroup layoutControlGroup1; + private DevExpress.XtraLayout.EmptySpaceItem emptySpaceItem2; + private DevExpress.XtraEditors.LabelControl lbTargetIP; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem2; + private IPAddressControlLib.IPAddressControl teTargetIP; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem3; + private DevExpress.XtraEditors.SimpleButton btnStart; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem4; + private DevExpress.XtraEditors.GroupControl gcLogging; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem5; + private DevExpress.XtraLayout.LayoutControl layoutControl2; + private DevExpress.XtraLayout.LayoutControlGroup layoutControlGroup2; + private DevExpress.XtraTab.XtraTabControl tabDataLog; + private DevExpress.XtraTab.XtraTabPage tpDataLog; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem6; + private DevExpress.XtraEditors.PanelControl panelControl1; + private DevExpress.XtraEditors.MemoEdit meDataLog; + private DevExpress.XtraTab.XtraTabControl tabSystemStatus; + private DevExpress.XtraTab.XtraTabPage pgSystem1; + private DevExpress.XtraTab.XtraTabPage pgSystem2; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem8; + private DevExpress.XtraLayout.LayoutControl layoutControl4; + private DevExpress.XtraLayout.LayoutControlGroup layoutControlGroup4; + private Controls.ucShelfStatus ucShelfA; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem7; + private DevExpress.XtraEditors.ComboBoxEdit cbType; + private DevExpress.XtraLayout.LayoutControlItem lcitemType; + private DevExpress.XtraLayout.LayoutControl layoutControl3; + private Controls.ucShelfStatus ucShelfB; + private DevExpress.XtraLayout.LayoutControlGroup layoutControlGroup3; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem9; + private DevExpress.XtraTab.XtraTabPage pgSystem3; + private DevExpress.XtraLayout.LayoutControl layoutControl5; + private DevExpress.XtraLayout.LayoutControlGroup layoutControlGroup5; + private Controls.ucShelfStatus ucShelfC; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem10; + private DevExpress.XtraEditors.GroupControl gbDataLog; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem11; + private DevExpress.XtraLayout.LayoutControl layoutControl6; + private DevExpress.XtraEditors.SimpleButton btnLogStart; + private DevExpress.XtraEditors.ComboBoxEdit cbLogTime; + private DevExpress.XtraLayout.LayoutControlGroup layoutControlGroup6; + private DevExpress.XtraLayout.LayoutControlItem lcitemLogTime; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem13; + private DevExpress.XtraEditors.SimpleButton btnOpenLogFolder; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem12; + private System.Windows.Forms.Timer tmrLogging; + private System.Windows.Forms.MenuStrip menuStrip1; + private System.Windows.Forms.ToolStripMenuItem toolStripMenuItem1; + private DevExpress.XtraEditors.SimpleButton btnLogClear; + private DevExpress.XtraLayout.LayoutControlItem layoutControlItem14; + private System.IO.Ports.SerialPort serialPort1; + } +} + diff --git a/LFP_Manager_PRM/fmMain.cs b/LFP_Manager_PRM/fmMain.cs new file mode 100644 index 0000000..6a63421 --- /dev/null +++ b/LFP_Manager_PRM/fmMain.cs @@ -0,0 +1,278 @@ +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Data; +using System.Drawing; +using System.Linq; +using System.Text; +using System.Windows.Forms; +using System.Net; +using SnmpSharpNet; + +using System.Threading; + +using LFP_Manager.DataStructure; +using LFP_Manager.Threads; +using LFP_Manager.Utils; + +using System.Diagnostics; + +namespace LFP_Manager +{ + public partial class fmMain : Form + { + DeviceSystemData[] SystemData; + csSnmpThread snmpThread; + + public fmMain() + { + InitializeComponent(); + + StructDataInit(); + + cbType.SelectedIndex = 0; + + ucShelfA.Start(0, SystemData[0]); + ucShelfB.Start(1, SystemData[1]); + ucShelfC.Start(2, SystemData[2]); + + tabSystemStatus.TabPages[1].PageVisible = false; + tabSystemStatus.TabPages[2].PageVisible = false; + + pgSystem1.Text = "SYSTEM"; + + tmrDisplay.Start(); + } + + private void StructDataInit() + { + SystemData = new DeviceSystemData[csConstData.SystemInfo.MAX_SYSTEM_SIZE]; + + for (int i = 0; i < csConstData.SystemInfo.MAX_SYSTEM_SIZE; i++) + { + SystemData[i] = new DeviceSystemData(); + SystemData[i].ValueData = new DeviceValueData(); + SystemData[i].ValueData.CellVoltage = new short[csConstData.SystemInfo.MAX_MODULE_CELL_SIZE]; + SystemData[i].ValueData.CellTemperature = new short[csConstData.SystemInfo.MAX_MODULE_TEMP_SIZE]; + + SystemData[i].AvgData = new DeviceAvgData(); + SystemData[i].StatusData = new DeviceStatusData(); + + SystemData[i].CalibriationData = new DeviceCalibration(); + SystemData[i].CalibriationData.CellVoltge = new CellVoltageCalib(); + SystemData[i].CalibriationData.SystemVoltage = new SystemVoltageCalib(); + SystemData[i].CalibriationData.ForcedBalancing = new ForcedBalControl(); + SystemData[i].CalibriationData.Battery = new BatteryParameter(); + } + } + + private void UpdateData(object sender, DeviceSystemData[] rData) + { + SystemData = rData; + ucShelfA.UpdateData(SystemData[0]); + ucShelfB.UpdateData(SystemData[1]); + ucShelfC.UpdateData(SystemData[2]); + } + + #region EVENT FUNCTION + + private void tmrDisplay_Tick(object sender, EventArgs e) + { + if (snmpThread != null) + { + string data = snmpThread.GetResult(); + + if (data != "") + { + meDataLog.Text = data + "\r\n" + meDataLog.Text; + } + } + } + + private void fmMain_FormClosing(object sender, FormClosingEventArgs e) + { + tmrDisplay.Stop(); + if (snmpThread != null) + snmpThread.disposeThread(); + } + + private void btnStart_Click(object sender, EventArgs e) + { + if (snmpThread.GetStatus()) + { + snmpThread.Start(teTargetIP.Text); + teTargetIP.Enabled = false; + btnStart.Text = "Stop"; + } + else + { + snmpThread.Stop(); + teTargetIP.Enabled = true; + btnStart.Text = "Start"; + } + } + + private void btnStart_ClickA(object sender, EventArgs e) + { + //if (snmpThread == null) + //{ + // snmpThread = new csSnmpThread(Config, SystemData); + // snmpThread.OnUpdate += UpdateData; + + // snmpThread.Start(teTargetIP.Text); + + // teTargetIP.Enabled = false; + // cbType.Enabled = false; + // btnStart.Text = "Stop"; + //} + //else + //{ + // snmpThread.Stop(); + // snmpThread.disposeThread(); + // snmpThread = null; + + // teTargetIP.Enabled = true; + // cbType.Enabled = true; + // btnStart.Text = "Start"; + //} + } + + #endregion + + #region SUB EVENT + + private void cbType_SelectedIndexChanged(object sender, EventArgs e) + { + switch (cbType.SelectedIndex) + { + case 0: // KT LFPS-48100 + case 1: // KT LFPR-48300 + case 4: // ESS LFPS-48150 + tabSystemStatus.TabPages[0].PageVisible = true; + tabSystemStatus.TabPages[1].PageVisible = false; + tabSystemStatus.TabPages[2].PageVisible = false; + + pgSystem1.Text = "SYSTEM"; + break; + case 2: // KT LFPR-48600 + tabSystemStatus.TabPages[0].PageVisible = true; + tabSystemStatus.TabPages[1].PageVisible = true; + tabSystemStatus.TabPages[2].PageVisible = false; + + pgSystem1.Text = "SYSTEM #A"; + pgSystem2.Text = "SYSTEM #B"; + break; + case 3: // KT LFPR-48900 + tabSystemStatus.TabPages[0].PageVisible = true; + tabSystemStatus.TabPages[1].PageVisible = true; + tabSystemStatus.TabPages[2].PageVisible = true; + + pgSystem1.Text = "SYSTEM #A"; + pgSystem2.Text = "SYSTEM #B"; + pgSystem3.Text = "SYSTEM #C"; + break; + } + } + + #endregion + + private void btnOpenLogFolder_Click(object sender, EventArgs e) + { + System.Diagnostics.Process ps = new System.Diagnostics.Process(); + ps.StartInfo.FileName = "explorer.exe"; + ps.StartInfo.Arguments = csLog.GetLogFolder(Application.ExecutablePath); + ps.StartInfo.WorkingDirectory = csLog.GetLogFolder(Application.ExecutablePath); + ps.StartInfo.WindowStyle = System.Diagnostics.ProcessWindowStyle.Normal; + + ps.Start(); + } + + #region LOG TIMER TICK EVENT + + DateTime bakDateTime; + + private void tmrLogging_Tick(object sender, EventArgs e) + { + DateTime cDate = DateTime.Now; + int ss; + + if (cbType.Enabled == false) + { + if (SystemData[0].CommFail == false) + { + ss = Convert.ToInt16(cbLogTime.Text); + + if ( + ((bakDateTime.Minute != cDate.Minute) + || (bakDateTime.Second != cDate.Second)) + && ((cDate.Second % ss) == 0) + ) + { + for (int i = 0; i < csConstData.SystemInfo.MAX_SYSTEM_SIZE; i++) + { + try + { + //csLog.SystemDataLog(i + 1, Config, SystemData[i], cDate, Application.ExecutablePath); + bakDateTime = cDate; + } + catch (Exception ex) + { + string snmpResult = "[" + DateTime.Now.ToString("yyyy-MM-dd hh:mm:ss") + "] " + String.Format("Exception : {0}", ex.Message); + + meDataLog.Text = snmpResult + "\r\n" + meDataLog.Text; + } + } + } + } + } + } + + #endregion + + bool logging = false; + + private void btnLogStart_Click(object sender, EventArgs e) + { + if (logging == true) + { + tmrLogging.Stop(); + cbLogTime.Enabled = true; + logging = false; + btnLogStart.Text = "Log Start"; + } + else + { + tmrLogging.Start(); + cbLogTime.Enabled = false; + logging = true; + btnLogStart.Text = "Log Stop"; + } + } + + private void btnLogClear_Click(object sender, EventArgs e) + { + meDataLog.Text = ""; + } + + private void serialPort1_DataReceived(object sender, System.IO.Ports.SerialDataReceivedEventArgs e) + { + + } + + private void serialPort1_ErrorReceived(object sender, System.IO.Ports.SerialErrorReceivedEventArgs e) + { + + } + + private void serialPort1_PinChanged(object sender, System.IO.Ports.SerialPinChangedEventArgs e) + { + + } + + private void gcTargetConfig_Paint(object sender, PaintEventArgs e) + { + + } + + } +} diff --git a/LFP_Manager_PRM/fmMain.resx b/LFP_Manager_PRM/fmMain.resx new file mode 100644 index 0000000..d9621e2 --- /dev/null +++ b/LFP_Manager_PRM/fmMain.resx @@ -0,0 +1,4586 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + 17, 17 + + + 128, 17 + + + 260, 16 + + + 376, 16 + + + 59 + + + + + AAABAAQAICAAAAEAGACoDAAARgAAADAwAAABABgAqBwAAO4MAACAgAAAAQAYACjIAACWKQAAAAAAAAEA + GAAoIAMAvvEAACgAAAAgAAAAQAAAAAEAGAAAAAAAgAwAAAAAAAAAAAAAAAAAAAAAAAD///////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + ///////////////////////////////////////////////////+/v7+/v7+/v7+/v7+/v7+/v7+/v7/ + ///+/v7////////////////////////////////////////////////////////+/v7+/v7+/v7+/v7+ + /v7+/v7+/v7+/v7+/v7////+/v7+/v3+/v3+/v3+/v7+/f3////////+/v7///////////////////// + ///////////////////////////+/v7////+/v7+/f3+/v7+/v3+/v3+/v3+/v7////7+ff///////// + ///////////////+/v3+/v7////+/v7////////////////////////////////////////+/v7////+ + /v7+/v7////////////////////////7+PbCnHejazCkbTKkbDKlbjSdYTDLrIr////9/Pz+/v7///// + ///////////////////////////////////////////+/v79/fz////BnHSeYjClbjSkbDKkbDOjazDc + x7L49PGkbDKEOACKQwCJQQCHPgCNRwTt49n+/v39/Pz+/v7+/v7///////////////////////////// + ///+/v7+/v79/Pv//v7j0sKHPgCJQACJQQCLRACCNgCufkv////////q3tKOSQePSgSPSwKRTQSHPgCt + e0f////9/Pv+/v7////////////////////////////////+/v7////9/f39/Pv9/PuiaS6JQQCQTQOP + SwKNSAOUUxLz7ef+/f37+Pb////AmnKGOwCQTAKOSQCPSwKHPwDaxa7////8+/r+/v7+/v7///////// + ///////////+/v7///7+/v77+vj////OsJGGPACQTAKOSQCQTAKGPADNr4/////7+ff9/Pv9/fz38u6Z + WhuLQwCPSgGPSgGLRQGcXyH59vP9/fz9/fz////+/v7////////+/v7+/v7////+/v77+vn////u5NqS + Tw+OSAKOSQCPSwKJQACiai/8+vn9/Pz9/f3+///9/Pv////WvqWHPQCQTAOOSQCQTQOGPADDn3j////8 + +/r+/v7////+/v7+/v7+/v79/fz8+/r9/f3////u49mdYSiKQwCPSwGOSQCPSwKKQgDi0L/////9/Pv+ + /v7//v7+/v79/Pz///+seUOIPwCQTAKOSQCOSQKNSAbq39P+/v39/Pz+/v7////////////////////+ + /v7SuJ6WVRiLRQCRTwaQTASSUAeHPgC4jV7////9/Pv+/v7////+/v7+/v79/Pz+/v7r39SOSQeOSgKO + SQCQSwKHPwCsekT+/v/9/Pz+/v78+/r49PDy6uPi0cDDn3yZXB9/MACEOACHPgCGOwCFPACEOgCTURDz + 7Ob9/fz9/f3////+/v7////////+/v78+/r////CnneGPACQTAKOSQCQTAKHPgDYwan////9/Pz38u7o + 2szgzbvTuZ/MrY/St5zeyrTcyLLcx7Hcx7HdybPVvKfl1cX////9/fz+/v7+/v7////////+/v7////9 + /f39/Pz59fObXiCKQwCPSgGPSgGLRAGaXB349PH9/fz+/v/////////////////28e3AmnrEn3rDn3nE + oXu+lnbcxrD////9/Pv+/v7////////////////////+/v7+/v79/Pv////bxa+HPgCPSwKOSQCQTAKG + PADAmnH////8+/r9/fz9/Pv7+ff9/Purd0F/MACGOwCFOgCEOQCEOADj0sH+/fz9/Pz+/v7+/v7///// + ///////////////////+/v79/Pz///+ufkqHPgCQTAKOSQCOSgKNRwPp3M/+/v79/Pv8+/r////YwaqH + PgCSTwaQTAOSTwaHPgDDn3n////9/Pv+/v7////////////////////////////+/v7+/v79/Pz+/v7t + 4tiNSAaNSAKOSQCQTAKJQQCqd0D+/v79/Pv9/fz49fKbXyCMRQGPSwGPSgGLRAGYWRn38+/9/fz9/f3/ + ///+/v7///////////////////////////////7+/v79/Pv////EoHqFOwCQTQOOSQCQTQOHPwDUu6H/ + ///////Dn3iGPQCQTQOOSQCQTAOGPQDWvaT////9/Pv+/v7+/v7///////////////////////////// + ///+/v7////9/f39/Pv59vScYCOLRQGPSwKPSgGMRQGWVhf7+ffu5duNSAaOSQKOSQCQTAKJQQCqd0D+ + /v79+/r+/v7////////////////////////////////////////////+/v7+/v78+/r////cx7GJQgCQ + TAOOSQCQTAKFOwC/mXKzhVSGPACQTAKOSQCPSgKOSQfq3dH////9/Pv+/v7+/v7///////////////// + ///////////////////////////////+/v79/Pv///+wgU6HPgCQSwKOSQCPSgGMRgCMRwCPSgCOSQCQ + TAKGPADAmnH////9/Pr+/v7////////////////////////////////////////////////////+/v7+ + /v79/Pz+/v3u5NuPSwmNRwGOSQCPSgCPSwGPSgGPSQCPSgGLRACYWRn38u79/fz9/fz///7+/v7///// + ///////////////////////////////////////////////////+/v79/Pv////HpoKFOwCQTQOOSQCP + SgCPSgCOSQCQTAOGPQDVvaP////9/Pv+/v7+/v7///////////////////////////////////////// + ///////////////+/v7////9/f39/fz7+fefZSiIQACOSQCNRwCNRwCOSQCGPQCrd0H+///9/fz+/v7/ + ///////////////////////////////////////////////////////////////////+/v7+/v79/Pv/ + ///fzLmSTxWXWBWWVhSWVhSWVhSWVRrq3dH////9/Pz+/v7+/v7///////////////////////////// + ///////////////////////////////////////////+/v7+/v7////38+728e328e328e328Oz49fD/ + ///+/v7+/v7///////////////////////////////////////////////////////////////////// + ///////+/v7////////+/v3////////////////////////+/v3////////+/v7///////////////// + ///////////////////////////////////////////////////////////+/v7////+/v7+/v7+/v7+ + /v7+/v7+/v7+/v7+/v7////+/v7///////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAACgAAAAwAAAAYAAAAAEAGAAAAAAAgBwAAAAAAAAAAAAAAAAAAAAAAAD///////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + ///////////////////+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7////+/v7+/v7///////// + ///////////////////////////////////////////////////////////////////////////////+ + /v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7///////////////////////////// + /////////v7+/v7///////////////////////////////////////////////////////////////// + ///////////////////////////+/v7////////+/v7///////////////////////////////////// + ///38u38+vn8+vj8+vj8+vj8+vj8+vj8+vj7+ff////+/v3+/v7+/v7+/v7///////////////////// + ///////////////////////////////////////////////////////////////+/v7+/v7+/v7////7 + +ff8+vj8+vj8+vj8+vj8+vj8+vj7+ff59fK7kmmbXh+cXyCcXyCcXyCcXyCbXyCdYSGWVR3Fon3////9 + /Pz+/v7///////////////////////////////////////////////////////////////////////// + ///////+/v7+/v79/f39/fz///+1iFqXVx2cYCGcXyCcXyCcXyCcXyCbXiCcYCPn2Mv7+fencTqDOACM + RgCLRACLRACLRACLRACKQwCMRQLq3tL////9/Pz+/v7///////////////////////////////////// + ///////////////////////////////////////////+/v79/Pz////Zw6uGOwCMRQCLRACLRACLRACL + QwCNRwCCNQC4jmH////////r39SNRwWOSgOOSgGPSgGPSgGPSgGQTAOIPwCpdD3////9/fz9/f3////+ + /v7////////////////////////////////////////////////////////////////+/v7+/v79/f3+ + /f359vOZWxyLRACQSwKPSgGPSgGPSgGPSgGMRQKXWBn49PD+/fz8+vn////BnHWFOgCQTAGOSQCPSgCP + SgCOSQCPTAKFOwDVvaT////9/Pv+/v7///////////////////////////////////////////////// + ///////////////////////+/v79/Pv////BnXaEOgCQTAKOSQCPSgCPSgCOSQCPSwGGOwDVvKL////8 + +/r9/Pz9/f349fKZXB2KQwCPSgGOSQCOSQCOSQCPSgGLRAGXWBj38+/+/f39/f3+/v7+/v7///////// + /////////////////////////////////////////////////v7+/v79/fz+/v7r39SMRwWNSAGOSQCO + SQCOSgCOSQCPSwGHPgCpdT7////9/Pz+/f3+/v79/Pv////YwquGPACPSwGOSQCPSgCPSgCOSQCQTAGF + OgC+l23////9/fz+/v7////+/v7////////////////////////////////////////////////+/v7+ + ///9/f39/Pv///+qdkGHPQCPSwGOSQCPSgCPSgCOSQCOSAGLRALp3dH////9/Pv+/v7+/v7+/f39/fz/ + //+se0aHPgCQTAKOSQCPSgCPSgCOSQCOSQKLRALn2s3//v79/Pz+/v7///////////////////////// + ///////////////////+/v7+/v7////+/v78+vn////Rt5qGPACQSwKOSQCPSgCPSgCOSQCQTAKFOwC/ + mXL////9/Pz+/v7////////+/v79/fz///7s4deNSAeNSAGOSQCOSQCOSQCOSQCQSwKHPgCnczv+/v79 + /Pz9/f3+/v7+/v7////////////////////////////+/v7+/v7////////9/f38+/r////j08KNSQiN + RgGOSgCOSQCOSQCOSQCPSgCLRACYWhv48/D+/f39/f3+/v7+/v7+/v7////+/v79/Pz////Dn3qFOgCQ + TAGOSQCPSgCPSgCOSQCQSwGGPADSuJ3////9/Pz+/v7////////////////////////+/v7+/v7///// + ///+/v79/Pv////////cx7KPTA2LRQCPSgCOSQCPSgCPSgCOSQCPSwGGPADWvqb////9/Pz+/v7///// + ///////////+/v79/f3+/f359/SbXiCKQgCPSgGOSQCOSQCOSQCPSgCLRQCVVBT18Oz+/f39/fz+/v7+ + /v7////+/v7+/v7+/v7+/v7+/f39/Pz9/Pv////////49PC/mHSKQgCMRQCPSgCOSQCPSgCPSgCOSQCQ + TAKGPQCreEL////9/Pz9/f3+/v7+/v7////////////////+/v79/Pv////axK6FPACPSwKOSQCPSgCP + SgCOSQCQTAKEOQC8lGn////9/Pv+/v7////////////////////////////////////49fLQs5ibXyWH + PgCPSwKQTQOQSwKQTAOQTAKQTAKPSwOOSgOMRQPq3tP////9/Pz+/v7////////////////////+/v7/ + ///+/v39/Pz///+vf0uHPgCQSwGOSQCOSgCPSgCOSQCOSQGLRAHm18n////9/fz+/v7////+/v36+Pb5 + 9fLz7ejo2s3RtpuwgFCNRwN9LQCCNQCHPgCGOwCFOwCGOwCGOwCGOwCFOwCGPAB/MADCnnj////9/Pz+ + /v7////+/v7////////////////////+/v7+/v79/fz///7v5t6PSgiNRwGOSQCPSgCOSQCOSQCPSwGJ + QAClbjX+/f39/f39/f3//v769/XfzbjZw67QtJrEoX67kmq6kGa/mXLDn3rEoHzEoHvEoHvEoHvEoHvE + oHvEoHvDoHvDnnvEoH369/X+/v79/f3+/v7+/v7////////////////////////////////+/v79/Pv/ + ///GpICFOgCQTAKOSQCPSgCPSgCOSQCQTAKGPADQtJf////9/Pz+/v7///////////////////////// + ///////////////////////////////////////////////////////+/v7+//////////////////// + ///////////////////+/v7+/v79/f3+/f36+PadYiSKQwCPSgCOSQCOSQCOSQCPSgGMRgGUVBP07uj+ + /v39/fz+/v7+/v7+/v3+/f39/fz9/Pv7+vj+/f3cyLSXVyGcYCKcXyCcXyCcXyCcXyCdYSKUUxzDn3z9 + /Pz9/Pz9/f3////+/v7////////////////////////////////////////+/v79/Pz////cx7KHPwCP + SgGOSQCPSgCPSgCOSQCQTAKGPAC5kGP////9/Pv+/v7//v7+/v7+/v7+/v79/f39/fz7+feeYyaGPACL + RQCLRACLRACLRACLRACIQACQTAnw59/+/v79/f3+/v7+/v7///////////////////////////////// + ///////+/v7///79/f39/Pv///+xglCGPACQSwGOSQCPSgCOSQCOSQCOSQGKQgDk1MT////9/fz+/v7/ + ///////+/v79/Pz////HpoOFOgCQTAKOSgCPSgGPSgGOSgGQTAKFOwDPs5b////9/Pv+/v7///////// + ///////////////////////////////////////////+/v/+/v79/Pz+/v7w59+PSgiMRgGOSgCPSgCP + SgCOSQCPSwGIQACiajD+/f39/f39/f3///7+/v79/fz+/v7w6OCPSgmNRwGOSQCOSQCOSQCOSQCPSwKI + PwCiaS79/fz9/fz9/f3+/v7+/v7///////////////////////////////////////////////////7/ + ///+/v79/Pv////Ip4WFOgCQTAKOSQCPSgCPSgCOSQCQTAKEOQDOsZP////9/Pv+/v7+/v79/Pv///+x + glGFOwCQTAKOSQCPSgCPSgCOSQCOSgKIQADj08L////9/Pz+/v7///////////////////////////// + ///////////////////////////////+/v7+/v79/f39/f38+vmeZCeJQQCPSwGOSQCOSQCOSQCPSgGM + RQGRTw7z7ef+/v39/f39/Pz////fzLiHPQCPSgGOSQCPSgCPSgCOSQCQTAGFOwC4jF/////9/fz+/v7+ + /v7+/v7////////////////////////////////////////////////////////////////+/v79/fz/ + ///fzLqHPgCOSgGOSQCPSgCPSgCOSQCQTAGFPAC3jF7////9/Pz+/f38+vifZCiJQQCPSwGOSQCOSQCP + SgCOSgGLRQGTURDz7ef+/v39/f3+/v7///////////////////////////////////////////////// + ///////////////////+/v7////+/v79/Pv///+zhVWFOwCQTAKOSQCPSgCPSgCOSQCOSgKJQQDi0cH+ + /v7////JqYeFOgCQTAKOSQCPSgCPSgCOSQCQTAKEOgDNsJH////9/Pv+/v7////+/v7///////////// + ///////////////////////////////////////////////////////+/v7+/v79/fz+/v3w6eGRTQyN + RwGOSQCOSQCOSQCOSQCPSwKJQQChaC7////x6eKRTgyNRgGPSgCPSgCOSQCOSQCPSwGJQQCiajD8+/r9 + /fz9/f3+/v7+/v7///////////////////////////////////////////////////////////////// + ///////////////+/v79/Pz////LrIuFPACQTAGOSQCPSgCPSgCOSQCQSwGFOwDPspW5j2SGPACQSwGO + SQCPSgCPSgCOSQCOSgGJQgDj0sL////9/Pz+/v7///////////////////////////////////////// + ///////////////////////////////////////////+/v7+/v79/f39/fz9/PygZyuJQACPSwGOSQCO + SQCOSQCOSQCOSACOSACNSACOSQCOSQCPSgCPSgCOSQCQTAKFOwC3i13////9/Pv+/v7////+/v7///// + //////////////////////////////////////////////////////////////////////////////// + ///+/v79/Pv////hz72JQACPSwKOSQCPSgCPSgCOSQCPSgCOSQCOSQCPSgCOSQCOSQCOSQCOSQCMRgGS + UA/y6+X+/v39/fz+/v7+/v7///////////////////////////////////////////////////////// + ///////////////////////////////+/v7////+/v79/fz///+1iVuGPACQSwGOSQCPSgCPSgCOSQCP + SgCPSgCOSQCPSgCPSgCOSQCQTAGFOgDNrpD////9/Pz+/v7///////////////////////////////// + ///////////////////////////////////////////////////////////////////+/v7+/v79/f3+ + /v3y6+SSUA6MRQGOSgCOSQCOSQCPSgCPSgCPSgCPSgCOSQCOSQCPSwGIQAChaS78+/r9/Pz9/f3+/v7+ + /v7///////////////////////////////////////////////////////////////////////////// + ///////////////////////////+/v79/Pv////NsJGFOwCQSwGOSQCPSgCPSgCPSgCPSgCOSQCPSgCO + SQCOSQGJQQDi0cD////9/Pv+/v7///////////////////////////////////////////////////// + ///////////////////////////////////////////////////////+/v7+/v79/f39/Pz8+/qiai+J + QACRTQSPSwKQSwKQSwKQSwKQSwKPSwKRTgSGPAC2iVr////9/Pv+/f3////+/v7///////////////// + //////////////////////////////////////////////////////////////////////////////// + ///////////////+/v79/Pv////j08KGPQCHPQCHPgCIPgCIPgCIPgCIPgCHPwCFOgCRTgvy6uP+/f39 + /fz+/v7+/v7///////////////////////////////////////////////////////////////////// + ///////////////////////////////////////////+/v7////+/v79/f3////JqIeufFOzhVezhFaz + hFazhFayhFazhVete1TWvqb////9/fz+/v7///////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + ///+/v7+/v7+/v3////////////////////////////////////////+/v3+/v7+/v7+/v7///////// + //////////////////////////////////////////////////////////////////////////////// + ///////////////////////////////////////////+/v7+/f3+/f3+/fz+/fz+/fz+/fz+/fz+/fz+ + /f3+/f3///////////////////////////////////////////////////////////////////////// + ///////////////////////////////////////////////////////////////////+/v7+/v7+/v7+ + /v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7///////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAoAAAAgAAAAAABAAABABgAAAAAAADIAAAAAAAAAAAAAAAA + AAAAAAAA//////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////v7+/////v7+/v7+//////////////////////////////////////////////////////////// + /////////////////////////////////////////fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7 + /fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/v39/v7+/v7+/v7+//////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////v7+/////v7+/////v7+/f38/fz7/fz7/fz7/fz7/fz7/fz7 + /fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/v7+//////// + //////////////////////////////////////////////////////////////////////////////// + /////////////v7+/////v7+/v7+/v7+//////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////v7+/////v7+ + /f39//////////////////////////////////////////////////////////////////////////// + ////////////////////////2MCn3Maw3Maw3Maw3Mew3Mew3Mew3Mew3Mew3Mew3Mew3Mew3Mew3Mew + 3Mew3Mew3Mew3Mew3Mew3Mew3Mew3Maw3Mex2cOs8uvk/v7+/f39/v7+/v7+//////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////v7+/v7+/v7+/f39////4tHA2sSs3Mex3Mew3Mew3Mew3Mew3Mew3Mew3Mew3Mew + 3Mew3Mew3Mew3Mew3Mew3Mew3Mew3Mew3Mew3Mex3Mew3Mex2cKr9vHtqXQ9ikIAiUEAiUEAikIAikIA + ikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAiUEAikMAgzgAq3hH/v39 + /fz8/v79/v7+/v7+//////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////v7+/v7+/v7+/v7+/fz8////49PCiUIBiUEAiUEA + ikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAiUIAiUEAi0MAgzkA + nmMq+vj1/v39sYJUhz4AkU0Ej0oBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sB + j0sBj0sBj0sBj0oBj0oBkEwDhz0A1buh/////fz7/v7+/v7+/v7+/v7+//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////v7+ + /v7+/v39/Pz8/Pr5pGw1iEAAkE0Dj0oBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sB + j0sBj0sBj0sBj0sBj0sBj0sBj0sDjEYG49LC////////7OLWkU4PjEYBj0oBjkkAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAjkkAj0sBikQAmFod9fDq/v39/v39/v7+ + /v7+//////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////7+/v7+/v7+/v7+/Pv6////za+QhjwAkEwCjkkAjkkAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAkEwChjsAuo9l////+/n4+ff1//// + x6aFhDsAkEwCjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + jkkAjkkAkEwChTwAv5dw/////Pz7/v7+/v7+/v7+//////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////v7+/v7+/f38/v798evik1IV + i0UBj0oBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkoA + j0oBi0QBlVQX8+zl/f39/fz8/fz8/fz8+vbzoGYuiEAAj0sBjkkAjkkAjkoAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAj0oAjkoAjkkAjUkBjEgG6NvN/////fz8/v7+/v7+/v7+/v7+ + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////7+/f7+/v7+/fz7////topehjwAkEwCjkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAj0sChTwA0LWY/////Pv7/v7+/v///Pz7////3sq3iEABjkoC + jkkAjkkAj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkAkEsC + hz8Ap3I//fz7/fz8/v79/v7+/v7+//////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////v7+/v7+/v39/v///Pz7////3867iEAAjkoCjkkAjkkAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjUkAkEsChz8ApnE5/fz8/Pz7 + /v7+/v7+/v7+/v7+/Pv7////tIZYhjwAkEwBjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAjkkAjkgAj0sChTwA0rec/////Pz7/v7+/v7+/v7+//////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////v7+/v7+/v79/fz8 + +/r4oWgwiEAAj0sBjkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kA + j0kAjkkAjkoAjkkBikQF5dbG/////fz7/v7+/v7+/v7+/v7+/fz8/v7+8OffkU8QjEYBj0oAjkkAjkoA + jkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oAjkkAj0oBikMAllcb9O/p + /v39/f38/v7+/v7+/v7+//////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////v7+/v7+/v7+/Pz7////yquLhTsAj0wCjkgAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAkEwChToAu5Nq/////Pz7//7+/v7+/v7+/v7+/v7+ + ///+/Pz7////y6yNhTsAkEwCjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAjkkAjkkAjkkAkEwBhTsAu5Rr/////Pz7/v7+/v7+/v7+/v7+//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////v7+/v7+/fz8/v7+7+bckU4PjEYBjkkBjkkA + j0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0kAjUkAj0oBi0QBllcb + 9e/p/v39/f38/v7+/v7+/////////v7+/v7+/v79/fz8+vj1oWgwiUEAj0sBjkgAjkkAjkkAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkCi0QF5NXG/////fz8/v7+ + /v7+//////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////v7+//7+/f39 + /v7+/fz7////tIdZhjwAkEwCjkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAjkkAjkkAj0sChj0A0rec/////Pz7/v7+/v7+/////v7+/v7+/////v7+/v7+/Pz7//// + 38y4ikIDj0oCjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkA + jkkAjkkAj0sBhz8Ap3I8/Pv5/fz8/v39/v79/v7+//////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////v7+/////v7+/v7+/Pz7////3sm2iUIBj0oBjkkAjkkAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjUkAkEsCiD8AqHM+/fz7/Pz8/v7+/v7+/v7+ + /v7+/////////v7+/v7+/v7+/v7+/Pv7////topehTwAkEwCjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkgAkEsChjwA0bWa/////Pv6/v7+/f39/////v7+ + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////v7+/v7+/f39/fz8+vj2n2UriUEA + j0sBjkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkoA + jkgBjEYG5tjJ/v7+/f37/v7+/v7+/////////////////////////v7+/v7+/f39/v398uriklETi0YB + j0oAjUkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkAj0oB + i0UAlVYZ8+3m/f79/f38/v7+/v7+//////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////v7+ + /v7+/v7+/v7+/Pv6////yKeFhTsAkEwCjkgAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAjkkAjkkAkEwChjwAvpZv/////Pz7/v/+/v7+/v7+/v7+//////////////// + /v7+/v7+/v7+/v7+/Pz7////za6QhTwAkEwCjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAkEwChTwAuZBm/////Pv6/v7+/v7+/v7+/v7+//////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////v79/v7+/fz7/v7+7ePYkU4QjEcBjkkBjkkAj0oAjkkAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkAj0oBi0QBmFof9e/p/f39/v39 + /v7+/v7+/////////////////////////////////v7+/v7+/v7+/fz8+/n3o2s1iUEAkEsBjkkAjkkA + jkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oAjkkAjkkAjkkCikQD5NPD + /////Pz7/v7+/v7+//////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////v7+/v7+/v79/Pv7/v/+ + sIFShjwAkEwCjkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + jkkAjkkAj0sChj0A1Lqg/////Pz7/v/+/v7+/////v7+/////////////////////////v7+/////v7+ + /v7+/fz7////4tHBikMEjkkCjkoAjkkAj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAjkkAjkkAjkkAj0sBiEAApW43/Pv5/fz7/v39/v7+/v7+//////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////v7+/v7+/////Pv6////2sawiD8Aj0sBjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAkEsChz8AqnhE/v79/Pz7/v7+/v7+/v7+/v7+//////// + /////////////////////////v7+/v7+/v7+/v7//fz7////uI1hhj0AkEwCjkkAjkkAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkgAj0wChj0AzrCT/////Pv6/v7+ + /f39/////v7+//////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////v7+/v7+/v7+/f38/f389vLtm18jikMAj0oBjkkAjkkA + jkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkAjkoAjUgBjUgH6NzO + /v7+/fz8/v/+/v7+/////////////////////////////////////////////////v7+/v7+/f38/v39 + 8uvjlFUWi0UBj0oBjUkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkA + j0oAjkkAj0oBjEYBlFMW8enh/v79/fz7/v7+/v7+//////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////v7+/v7//v7+//7+/f39 + /Pv6////t4thhjwAj0wBjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAjkkAjkkAkEwChTsAwJp0/////fz6/v7+/v7+/v7+/v7+//////////////////////////// + /////////////v7+/////v7+/v7//Pv7////zrGUhjwAj0wCjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkAkEwChjwAt4xg/////Pv7/v7+/v7+/v7+//// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////v7+/v7//v3+/Pr6////0bWYhj0Aj0sCjkkAjkkAj0oAjkkAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAjkkAjkkAj0sBi0MAmVsg9vHs/v39/f39/v7+/v7+//// + /////////////////////////////////////////////////v7+/v7+/v7+/v7+/f38/Pr4pW85iD8A + kEsCjUkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkA + jkoCikIC4tHA/////Pv7/v7+/v7+/v7+//////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////v7+/v7+/v7+/v7++/r5////38y4i0UHjUgBjkoA + jkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAjkkAjkkAj0wC + hz4A1r6m/////Pz7/v7+/v7+/////v7+//////////////////////////////////////////////// + /////////v7+/v7+/fz8////49LCjEYFjkkCjkoAjkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkAj0sBiEAAomoy+/n2/fz7/v39/v7+/v7+//////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////v7+/////v7+/v7+/v7+ + /v7++/r5////5NTCj0wQi0UAj0oAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAjkkAjkkAkEwChz8ArHpI/v7+/fz7/f79/v7+/v7+/v7+//////////////////// + /////////////////////////////////////v7+/////v7+/v7+/Pz7////upBnhTwAkEwCjUgAjkkA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkgAj0wChToAyqyM + /////Pv6/v7+/v7+/////v7+//////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////v7+/v7+/////v7+/v7+/v7+/f39/Pr5////4c+9kE0SikQAj0sBjkkAjkkAj0oAjkkAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjUkAj0oAjUgCjkoJ6d3R/v7+/f38/v7+ + /v7+/////////////////////////////////////////////////////////////////////v7+/v7+ + /v7+/v39/f399O3nl1gci0UBj0oBjkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAjkkAj0oAjkkAj0oAi0UBk1ET8Ofe/v39/fz7/v7+/v7+/////v7+//////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////v7+/////////v7+//7+/v7+/Pv6/f38////1LuijkkLi0QA + j0sBjkkAjkkAj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkA + jkkAkEwChjwAwp14/////Pv6/v7//v7+/////v7+//////////////////////////////////////// + /////////////////////////////////v7+/v7+/Pv6////0baahj4AkEwCjkkAjkkAj0oAj0kAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkAkEwBhTwAtYlc/////Pv6/v7+ + /v7+/v7+//////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////v7+/v7+/////v7+/v7+/v7+ + /v79+/v5////+/n1wJp1iEEAjUYAj0wBjkkAjkkAj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkAj0sBikMAnWAn9/Lu/fz7/f39/v7+/v7+/v7+//////////// + /////////////////////////////////////////////////////////////v7+/v7+/v7+/v7+/Pz7 + /Pv5p3I9iD4AkEwCjkkAjkkAjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjkkAjkkAj0oCiUEA3826/////Pv6/v7+/v7+/v7+/v7+//////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /v7+/v7+/////////v7+/v7+/v79/Pv6/f3+////6dzPpW89hjwAj0oBj0oBjkkAjkkAj0oAjkkAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oAjkkAjkkAj0sChz4A2MKq//// + /Pv6/v7+/v7+/v7+//////////////////////////////////////////////////////////////// + /////////////////////v7+/v7+/fz7////5dbGi0UGjkkCjkoAjkkAj0kAjkkAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkAj0sBiEAAoGct+vj1/fz7/v39/v7+/v7+//// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////v7+/v7+/v7+/////////v7+/v7+/f39/fz7/fz8////+vj0xaOCjkkJhz8A + j0sBj0oAjkkAjkkAj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjkkAjkkAkEwChz0Arn1L/////Pv6/v7+/v7+/v7+//////////////////////////////////// + /////////////////////////////////////////////////v7+/////v39/v/+/Pv6////vZZuhjsA + kEwDjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjUgA + j0wChDoAyKiI/////Pv6/v7+/v7+/v7+/v7+//////////////////////////////////////////// + /////////////////////////////////////////v7+/////v7+///////////+/v7+/v7+/v79/Pv6 + /f38////////28ayn2cyhTwAjEcAj0sCjkkAj0oAj0oAj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjUkAj0oAjUcCjkoK69/U/v7//fz7/v7+/v7+/////v7+ + //////////////////////////////////////////////////////////////////////////////// + /////v7+/v7+/v7+/f39/f399fDrl1kci0UBj0sBjUkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAjkkAj0oAjkkAjkoAjEUAkU4P7+bc/v79/fz7/v7+/v7+/////v7+//////// + /////////////////////////////////////////////////////////v7+/////v7+/v7+/////v7+ + /////v7+/v7+/v7+/fz8/Pv6/v7+////////4M68qnhHiD8AiUEAj0sCj0oAjkkAjkkAjkkAjkkAjkkA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAkE0DhjwA + xaJ//////Pv7/////v7+/v7+/v7+//////////////////////////////////////////////////// + /////////////////////////////////////////v7+/v7+/v7+/Pv6////07qghz4Aj0wDjkkAjkkA + j0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkAkEwBhjwAsoRU + /v///Pv6/v7+/v7+/v7+/////////////////////////////v7+/////v7+/v7+/v7+/v7+/v7+/v7+ + /v7+/v7+///+/v7+/v7+/////v7+/v7+/v79/fz8/Pv6/fz8////////+/n32sSvqnZHikIAhz8AjkoA + j0oBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAjkkAjkkAjUkAj0sCikMAnmMp+PXx/f38/f39/v7+/v7+//////////////////////////// + /////////////////////////////////////////////////////////////////////////////v7+ + /v7+/v7+/Pz7/f38qXVBiEAAkEwCjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAjkkAjkkAj0oBiD8A3cm0/////Pv6/////f39/v7+/v7+//////////////////// + /////////////////////////////v7+/////v7+/v7+/v7+/v39/fz7/Pv6/fz7/f7+//////////// + 7OHWyaiHn2UviD8Ahz4AjkkAj0sCjkkAjkkAjkoAjkoAjkkAjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAj0wDiEAA28Wv/////Pz7/v/+/v7+ + /////v7+//////////////////////////////////////////////////////////////////////// + /////////////////////////v7+/////v7+/v7+/fz7/v//6NrNjkkJjkkCj0kAjkkAjkkAjkkAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkAj0oBiUIAn2Ur+fb0/fz7/f39 + /v7+/v7+/////////////////////////v7+/v7+/v7+/v7+/f38/fv6/fz7/fz6/Pv6/fz8/fz8/v7/ + /////////////////Pz66dzPza6Qq3dGkE0Mhj0AikMAj0sCj0sCj0oAjkkAjkoAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkA + kEwChz4AsIJS/v7//Pv7/v7+/v7+/v7+/v7+//////////////////////////////////////////// + /////////////////////////////////////////////////////////////v7+/v7+/v7+/////Pv6 + ////v5lzhTwAkEwCjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjkkAjkgAkEwBhDoAxqSC/////Pv6/v7+/v79/v7+/v7+/////////////////v7+/////v7+/v7+ + /////////////////////////////v788+3l5NTE07icuY5moWgvj0sIhz4AiUIAj0oAkE0FkU0Dj0sC + kEsBkEsBkEsBkEsBkEsBkEsBkEsBkEsBkEsBkEsBkEsBkEsBkEsBkEsBkEsBkEsBkEsBkEsBkEsBkEsB + kEsBkEsBkEsBkEsBkEsBkEsBj0sBkEwCjEgBkE4O7eTa/v7+/fz8/v7+/v7+//////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////v7+/v7+/f38/f389vHsmVsgikMBj0oBjkkAjkkAjkkAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oAjkkAjkkAjEYBkEwN7ePY/v7+/fz7/v7+/f39//// + /v7+/////////////v7+/v7+/f38/v//28ayxqSAy6uKxKF6vJNssoReqHNEmVwlkEwKhjwAgTQAgDQA + hDoAiEAAikMAiUIAiEEAiEAAiEAAiEAAiEAAiEAAiEAAiEAAiEAAiEAAiEAAiEAAiEAAiEAAiEAAiEAA + iEAAiEAAiEAAiEAAiEAAiEAAiEAAiEAAiEAAiEAAiEAAiEAAiEAAiEAAiEAAiUIAgjYAx6WD/////Pv6 + /v7+/v7+/////v7+//////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////v7+/////v7+/v7+/Pv7////1r2khz4A + j0sCjkkAjUkAj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkA + kEwBhjwAsYFR/////fz7/v79/v7+/v7+/////////////////v7+/v7+/v39/v7+4M27za+O0bWW0LOU + z7OV0LOZ0bac07mg1ryk2MCo2cKr2cKs2MGq2MCp18Co18Co18Co18Co18Co18Co18Co18Co18Co18Co + 18Co18Co18Co18Co18Co18Co18Co18Co18Co18Co18Co18Co18Co18Co18Co18Co18Co18Co18Co18Co + 18Co18Co2MCo1r+n2MGq+vf0/v39/v79/v7+/v7+/v7+//////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////v7+/v7+/v7+/v7+/Pv6/v39rHpIhz4Aj0wBjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAj0oBiUEA3May/////Pv6/////f39/v7+/v7+//////// + /v7+/////v7+/v7+//////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////v7//v7+/////v7+//////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////v7+/v7+/fz7/v7+6d3RjUkJjUgBj0oAjkkA + jkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkAj0oBikIAnWIn + +PXx/fz8/f39///+/v7+/////////////////v7+/////////v39/fz7/fz7/fz7/fz7/fz7/fz7/fz7 + /fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz8/fz7+/n3+/n3+/n3+/n3+/n3+/n3 + +/n3+/n3+/n3+/n3+/n3+/n3+/n3+/n3+/n3+/n3+/n3+/n3+/n3+/n3+/n3+/n3+/n3/Pr4/fz7/fz8 + /fz8/v7+/////v7+/////v7+//////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////v7+/v7+ + /v7+/v7+/Pv7////wZx2hDsAkEwCjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAjkkAjkkAkE0ChjwAxKF8/////Pv6/v7+/v7+/v7+/v7+/////v7+/////v7+/v7+ + /v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+ + /v7+//////////////////////////////////////////////////////////////////////////// + /////////////////////////////v7+/v7+/v///v7+/////v7+//////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////v7+/v7+/f39/f389/Ltm14iiUIAj0oBjkkAjkkAjkkAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oAjkkAjkoAjUgCkE0N7OHW/v7+/f38 + /v7+/v7+/////v7+//////////////////////////////////////////////////////////////// + /////////////v7+/////v7+/v7+/f79/f39+vj20LSYzrCSz7GUzrGTz7GTz7GTz7GTz7GTz7GTz7GT + z7GTz7GTz7GTz7GTz7GTz7GTz7GTz7GTz7GTz7GTzrGTzrGTza+S0LSY+vj1/v7+/v79/v7+//////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////v7+/////v7+/v7//Pz7 + ////2cKriD8Aj0sCjkkAjkkAj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + jkkAjkkAjkkAkEwChz8Ar35O/v7+/fz8/v7+/v7+/v7+//////////////////////////////////// + /////////////////////////////////////////////////v7+/v7+/v7+/fz7////yaiIgDMAhz0A + hTsAhTsAhTsAhTsAhTsAhTsAhTsAhTsAhTsAhTsAhTsAhTsAhTsAhTsAhTsAhTsAhjsAhTsAhDsAhz4A + fS0AtIdb/f38/Pz8///+/v7+//////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////v7+/v7+/v7+/v7+/fz7/v//rn1Khz0Aj0wBjkkAjkkAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAj0sCiEAA2MGq/////Pz7/v///v7+/v7+ + /v7+/////////////////////////////////////////////////////////////////////v7+/v7+ + /v7+/v7+/f38/v797+bdkU8PjUkDkU4Fj0wDkEwDkE0DkE0DkE0DkE0DkE0DkE0DkE0DkE0DkE0DkE0D + kE0DkE0DkE0DkE0DkEwDkE0DkU4FjEcFmVwe9/Pu/v7+/v38/v7+/v7+//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////v7+/v7//fz7/v7+69/UjkoL + jUgBj0oAjkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkA + j0sCikMAm18j+PXw/f39/f39/v7+/v7+/////v7+//////////////////////////////////////// + /////////////////////////////v7+/v7+/v7+/fz7////tIZYhj0AkEwCjkgAjkkAj0oAjkkAjkkA + jkkAjkkAjkkAjkkAjkkAjkkAjkkAjkkAjkkAjkkAjkkAj0oAjkkAjkkAj0sChj0A0rec/////Pv7/v7+ + /v7+//////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////v7+/v7+/v7+/////Pv6////xKF9hTsAkEwCjkkAjkkAj0oAj0kAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAkEwChTsAw596/////Pz7/v7+/v7+/v7+//////////// + /////////////////////////////////////////////////////v7+/v7+/v7+/v7+/fz7////3sq3 + iUIAjkoCj0kAjkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAjkkA + jkkAj0wBiD8AqHM+/fz7/Pz7/v7+/v7+/v7+/v7+//////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////v7+/v3+/v39/fz8+PXxnWIpiUIAj0sBjkkA + jkkAjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkAjkoAjUgBjkoK + 6t7S/v7+/fz8/v7+/v7+/v7+/v7+//////////////////////////////////////////////////// + /////////v7+/v7+/f39/f38+vj1oGgviUEAj0sCjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAjkkAj0kAjkkAj0kAjkgCjEYH5tjJ/////fz7/v7+/v7+//////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////v7+//// + /v7+/v7+/Pv6////2cStiEAAj0oCjkkAjkkAj0kAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAjkkAjkgAkEwChz4ArHpH/f38/fz8/v7+/v7+/v7+//////////////////////// + /////////////////////////////////v7+/v7+/v7+/v7+/fz8////y6yNhTwAkEwCjkkAjkkAj0kA + jkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAkEwChTwAvZRs//// + /Pv7/////v7+/v7+/v7+//////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////v7+/v7+/v7+/v7+/Pv7/v7+r4FQhz0AkEwBjkkAjkkAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkgAj0kAkEsChz4A17+n/////Pz7 + /v7+/v7+/v7+/v7+/////////////////////////////////////////////////////v7+/v7+/f38 + /v798enfklISjEYBj0oBjkkAjkkAjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + jkkAjkkAjkkAj0oBi0QAl1gb9O/p/fz8/v38/v7+/v7+//////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////v7+/v7+/fz8 + /v7+7ePakE0NjEcBj0oAjkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjkkAjkkAj0sCikMBml0i9/Pu/f39/f39/v7+/v7+//////////////////////////////////// + /////////////v7+/v7+/v7+/v7+/Pz7////toldhj0AkEwCjkkAjkkAj0oAj0kAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAj0oAjUkAjkkAj0sChTwA0baa/////Pv7/v7+/v7+/////v7+ + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////v7+/v7+/v7+//7+/Pv6////x6SDhTsAkEwCjkkAjkkAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oAjUgAjkkAkEwChTwAwZx1/////Pv7//7+/f39/v7+ + /v7+/////////////////////////////////////v7+/////v39/v7+/fz7////4M67ikICj0oCjkoA + jkgAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAjkkAjkkAj0sBiD8A + pnA8/Pv6/fz7/v7+/v7+/v7+/v7+//////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////v7+/v7+/v79/fz8+fbznmMq + iEEAj0sBj0kAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkA + jkoAjUkCjUgI59rM/////fz8//7+/f39/////v7+/////////////////////////////////////v7+ + /v7+/v39/f38+vj1oWgwiUEAj0sBjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAjkkAj0kAjkkAj0kAjkkCi0QG5dXF/////fz7/v7//v7+//////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////v7+/////v7+/v///Pz7////3cm1iEAAjkoCjkkAjUgAj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAkEwChz8AqndD/fz7/fz7/v7+/v7+/v7+//////////// + /////////////////////v7+/v7+/v79/v7+/Pz7////y6uMhTwAkEwCjkkAjkkAjkoAjkkAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAkEwChTsAu5Fn/////Pz7/v7//v7+ + //7+/v7+//////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////v7+/v7+/v7+/v7+/Pz7////s4RVhjwAkEwCjkgA + jkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkAjkkAj0wChz4A + 1bui/////Pz7/v7+/f3+/v7+/v7+/////////////////////v7+/////f39/v7+/f38/v398Ojfk1ES + jUYBj0oBjkkAjkkAj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkA + j0oBi0UBllYa8+zl/fz9/v38/v7+/v7+/v////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /v7+/v7//f38/v797+XckE0OjEYAj0oAjUgAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAjkkAjkkAj0sBi0QBmVoe9vHr/f39/f39///+/f39/////v7+//////////////// + /////v7+/v7+/v7+/Pz7////tYldhj0AkEwCjkkAjkkAj0oAjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAjkkAj0oAjUkAjkkAj0wChTsA0bWZ/////Pv6/v7+/v7+/v7+//7+//////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////v7+/v7+/v7+/v7+/Pz7////yKiGhDoAkEwDjkkAjkkAj0oAjkkA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oAjkgAjkkAkEwChjwAv5dw/////Pv6 + /v7+/v7+/v7+/////////////////v7+/v7+/v7+///+/fz7////4dC/ikMDj0oCjkkAjkkAjkkAjkkA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAj0wCiD8ApW85/Pv5/fz7 + /v79/v7+/v7+//////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////v7+/v7+/v39 + /fz8+/j1oGYtiUEAj0sCjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + jkkAjkkAjkkAjkoAjkkCjEcG5tjK/////fv7//7+/v7+/v7+//7+/////////////v79/v7+/f39/fz8 + +/r4o2oziUAAj0sBjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkA + jkkAjkkAj0oAjkkCi0UF5NTE/////fz8/v7+/v7+/////v7+//////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////v7+/////v7+/v7+/fz7////3su4iUEBj0sCjkkAjkkAjkkAjkkAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjUkAkEwChz8AqHRA/f38/fz7/f39/v7+/v7+ + /v///////v7+/v7+/v7+/v/+/Pv7////za+RhTwAkEwCjkkAjkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAkE0ChjwAu5Jo/////Pz7/v7+/v7+/v7+/v7+//// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////v7+/v7+/v7+/v7+/fz7////tIdZ + hjwAkEwCjkgAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkA + jkkAj0wChjwA0rec/////Pv6/v7+/f7+//7+/v7+/////v7+/v7+/f38/v7+8erilFITjEYBj0oBjkkA + jkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkAj0oBi0UAl1YZ + 8+3m/f39/f39/v7+/v7+//////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////v7+/v7+/fz8/v398Offk1ISjEcBj0oAjUkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAj0sBi0QBl1ga9O7n/f38/f39/v7+/v7+/////v7+/v7+ + /v7+/Pv6////t4tfhjwAkEwCjkkAjkkAj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjkkAj0oAjkkAjkkAkEwChz4A0LWZ/////Pz7/v7//v7+/////v7+//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////v7+/////v7+/v7+/Pv7////zK2Ohj0AkEwDjkkA + jkkAj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oAjkkAjkgAkEwChjwA + u5Nq/////Pv6/v7+/v7+/v7+/v7+/v7+/Pz7////4dC+ikMCj0oCjkkAjkkAjkkAjkkAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAj0wCiEAAp3E7/Pv5/fz7/v79/v7//v7+ + /v7+//////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////v7+ + /v7+/////v7+/fz7+/j2o2sziUEAj0sBjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAjkkAjkkAjkkAjkoAjkkCjEcG5dbH/////Pz7/v7+/v7+/v7+/v39/fz8+/n3pG00iUEA + j0sBjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkAj0kA + jkkCikQE49PC/v7//fz8/v7+/v7+//////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////v7+/v7+/fz7////4c+9iUICj0oCj0kAjkkAjkkAjkkA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAj0sBiEAAp3E7/Pv5/fz8 + /v79/v7+/v7+/Pv6////zK+Qhj0AkEwCjkkAjkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAjkkAjkgAkE0ChTwAuY9j/////Pv6/v7+/v7+/v7+/v7+//////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////v7+/v7+/v7+/v7+ + /Pv6////t4xghjwAkEwCjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + jkkAjkkAjkkAjkkAkEwChj4Az7OX/////Pv7/v7+/f38/f398erilFQVi0YBj0oBjkkAjkkAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjkkAj0oBi0UBlVUW8+zl/v39/f39 + /v7+/v7+//////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////v7+/v7+/f38/v7+8+zllFQVi0UBj0oAjkkAjkkAjkkAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkgAj0sBi0UAlVUX8uzk/v39/fz8/Pz7//// + t4xhhjwAkEwCjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAj0oA + jkgAjkkAj0wChjwA0LOX/////fz7/////v7+/v7+//////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////v7+/v7+/v///fv7////zrGU + hjwAj0wCjkkAjUkAj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkA + jkkAkEwChTwAuI5k////+/r5////4tHAiUIDjkoCj0oAjUkAjkoAjkkAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAjkoAjkkAjkkAj0wCiUAApW84/Pv6/f38/v7+/////v7+//////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////v7+/v///v7+/f38+/r4pG02iEAAj0wBjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjUkAj0kAjkoCikMD4tC//v79+vj1pG02hz8AkEsBjkkAjkkA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0kAjkkAj0kAjkkCi0QF49TD + /////fz8//7//v7+//////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////v7+/////fz8////49TEi0UFjkkCj0oA + jkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAj0sBiEAA + oWkx////zrGThTsAj0sCjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAjkkAjkgAkEwChj0AupBl/////fz8/v///v7+/v7+/v7+//////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////v7+ + /v7+/v7+/v/+/fz8////uZBkhj0AkE0CjkgAjUkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0kAjkkAjkkAj0sAiEAAwZ12m18iikIAj0oBjkkAjkkAjkkAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAjUkAj0oAjEYBlVYX8uzl/v79/v39/v7+/v7+//// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////v7+/v7+/f39/v398+zmllYXjEYBj0oBjkkAjkkAjkkA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAjkkAjkkAjkkAjkkAikMAjEYAjkkA + jkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAj0oAjkgAjkkAkEwC + hj0Az7SX/////fz7//7+/v7+//////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////v7+//7+ + /fz7////0bWZhz0Aj0wCjkkAjUgAj0oAj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAjkkAjkkAjkkAj0oBjkoAjkkAjkkAj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAjkoAjkkAjkkAj0wCiEAApW86/Pv5/fz8/v7+//7+/v7+//7+//////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////v7+/v7+//7+/v7+/fz8/fz7p3I+iD8Aj0wCjkkAjkkAjkoAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0kAjkkAjkkAj0kCikQF49PD/////Pz8//7+ + /v7+//////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////v7+//7+/fz8////5dbH + jEYHjkoCj0oAjkkAj0kAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oA + jkkAjkkAjkkAj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkA + jkkAkEwChj0AuI1i/////fv8/v/+/v7+/v7+/v7+//////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////v7+/v7+/v7+/v///fz7////vJRqhjwAkEwCjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAjkkAjkkAjUkAj0oBjEUBlFQW8uri/v7+/f39/v7+/v7+//////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////v7+/v7+/f39/f399O7ol1kci0QBj0sB + jkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAj0oAjUgAjkkAj0wChj0AzbCT//// + /Pz8/v7//v7+//////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////v7+/v7+/Pz7////07mfhj0Aj0wCjkkAjUgAj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + jkoAjkkAjkkAkEwCiEAAomw0/Pr4/f39/v7+/v7+/////v7+//////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////v7+/////v7+/v7+/fz8/fz8qHNAhz8AkEwCjkkAjkkAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0kAjkkAj0kAjkkCiUIC4dC+/////fz7/v7+/v7+//////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////v7+/v7+ + /fz8////5tjJi0YFjUgCj0oAjkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkgAkEwChTwA + t4tf/////fz7/v7+/v7+/v7+//////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////v7+/v7+/v7+/fz7////vZZuhTsAkE0CjkkAjkkAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAjkkAjkkAjkkAj0oBi0YBlFMT8eri/v7+/f38/v7+/v7+//////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////v7+/v7+/v39/f399vHs + mVseikQAkEsBjkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oAjkgAjkkAkEwChj0Aza+Q/////Pv6/v7+/v7+ + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////v7+/v7+/Pz7////1Luhhz4AkEwCjkkAjkkAj0oAjkkAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkA + j0sAiEAAo2w0/Pr4/fz8/f39/v7+/v7+/v7+//////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////v7+/v7+/v7+/v79/fz7/f38qndDhz8AkEsB + jkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAjkkAjkkAjkkAjkkAjkkBi0QD4c+9/////Pz7/v7+//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////v7+/v7+/fz7/v7+6NvNjUkIjUgBj0kAjkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAkEwBhTsAt4xf/////Pv6 + /v7+/v7+/v7+//////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////v7+/v7+/Pv6////wZt2hTsAkEwBjkkAjkkAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkA + jkkAjkkAj0oAi0UAlFIT8eri/v39/fz8/v7+/f39//////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////v7+/v7+/v7+ + /f38/fz89vHtmVsfikMAj0sAjkkAjkkAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAkEsChDoAy6uN/////Pv6/v7+/v7+/v7+//////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////v7+/f3+/v7+/Pv7////1r6lhj0Aj0oBjkkAjUkAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkAj0sAiEAAoWkx + +/n3/fz8/f39/v7+/v7+//////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////v7+/v7+/v39/fz7/v7+ + rXtJhj0AkEwCj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oBjkkAj0oBjkoCiEEA4M68/////fz7/v7+/v39/////v7+//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////f39/v7+/fz7/v7+69/SjkgJi0UAjkgAjUcAjUgAjUgAjUgAjUgAjUgAjUgAjUgA + jUgAjUgAjUgAjUgAjUgAjUgAjUgAjUgAjUgAjUgAjUcAjUcAjkoAhDkAtYlb/////Pz6/f7+/v7+/v7+ + /v7+//////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////v7+/v7+/v39/v7+/Pz7////xKF9jEcSlVQW + k1IUlFIUlFIUlFIUlFIUlFIUlFIUlFIUlFIUlFIUlFIUlFIUlFIUlFIUlFIUlFIUlFIUlFIUk1IUlFMV + kU8TmVoj8ejg/v39/fz7/v7//f39/v////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////v7+/v///f39/f38/Pv67+bd8Ofe8Off8Off8Off8Off8Off8Off8Off8Off8Off8Off8Off8Off + 8Off8Off8Off8Off8Off8Off8Off8Off7uXd9O7o/////f39/v7+/v7+/v7+//7+//////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////v7+/v////7+/v7+/v7+/v7+//////////////////////// + /////////////////////////////////////////////////////////////////////////v39/v7+ + ///+/v7+//////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////7+/v////// + /////v7+/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39 + /v39/v39/v39/v39/v39/v79/////////v7+/////v7+//////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////v7+/////v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+ + /v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/////v7+//////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + ////////////////////////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAoAAAAAAEAAAACAAABABgAAAAAAAAgAwAAAAAAAAAAAAAA + AAAAAAAA//////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39 + /v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39 + /v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v7+/////v7+//////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////v7+/////v7+/v39/v39/v39/v39/v39/v39/v39 + /v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39 + /v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39 + /v79/v7+//////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////v7+//////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + ////////////////////////////////////////////////////////////////////////9/Lt9/Pu + 9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt + 9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt + 9/Lt9/Lt9/Lt9/Lt9/Lt9/Pt/v7+/v79/v7+/v7+/v7+//////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////v7+/v79/v799/Ls9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt + 9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt + 9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Lt9/Pt9/Lt/v39pm80omkso2oto2oto2oto2ot + o2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2ot + o2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2ot + o2svnmMrzrGR/////fz7//////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////v7+/v7+/fz8//// + 1bygnGAqo2svo2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2ot + o2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2oto2ot + o2oto2oto2oto2oto2oto2oto2svnWEruY9i/fz8wJpwkUwEiUIAi0QAi0QAi0QAi0QAi0QAi0QAi0QA + i0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QA + i0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0UAiUAAlVQT7uTZ + /v39/fz8/v7+//////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////f38/v7+9O3nmFkViD8Ai0UAi0QA + i0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QA + i0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QAi0QA + i0QAi0QAikMAi0MA3sq1/v7+/fz8wJhviD8AkU0Fj0sCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsC + kEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsC + kEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkU0EiD8AuItb/////f38/v7+/v7+ + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////v7+/v7+/fz7////vZNniD8AkU0EkEsCkEsCkEsCkEsCkEsCkEsC + kEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsC + kEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCkEsCj0sCkU4EiUAAuY9h + /////Pn4/v7+9e/pnF8ei0UAj0oBjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oBi0MA3cix/////fz7//////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////v7+/////Pz7////49G/j0oHjUgBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oBjEYBl1cU8urj/v39/fv6+vf0//// + 1LqfikIAj0sCj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAjkoAj0sBikIAoWcq9vLt/fz7/v39/v7+//////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////v7+ + /f38+/n3p3A0iUEAj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBiUEAzrCQ/////fz7/v7+/fz7/fz7+/n3q3hBiUAAkEsC + j0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAjkkAj0sBiEAAyKaB/////fz7/////v7+//////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////v7+/v7+/Pz7////z7GRiUEAkEwC + jkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAjkkAj0oBikIApnA0/fz7/v39/v7+/////////f38////6NrMkEwHjUgBjkoAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoA + jUgBlFIO7uTa/////f38//////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////v7+/////fz8/v398OfellYTjEYBj0oBj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkgB + jUYA4tG+/////fz7/////v7+/v7+/////fz8////wJpvhz4Aj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAkEsCiD8As4RR/fz7 + /fz7/v7+/v7+//////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////v7+/v38////uY9ghz4AkEwCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsBiD8Au5Fk/////f38/v7+ + /v7+/////////v7+/fz8/v389e/pnmMmi0MBj0sBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oCi0QB3Mav/////fz8/////v7+ + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////v7+ + /v7+/Pz8////4tG+jUgCjkkBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oBi0UAmFkW9e/o/v7+/f38//////////////////// + /////fv6////17+miUEAj0oBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBikMAoWgp+vfz/v7+/v79//////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////f39/fz8+/j2pW4z + iUAAj0sCj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0kAj0oBiUEA0ria/////fz8/v7+/v7+/////////////////v7+/v39/v39/v/+ + sH9LiEAAkEsCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAjkoAj0sCiD4Ax6Z//////fv6/v7+/v7+//////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////7+/v7//fz8////yqqHiD8Aj0sBjkkAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkA + j0sCiUIAqXU7/fz7/v39/v39/////////////////////////////v7+/fz7/v7+6t3PkU4NjkgCjkoB + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0kAj0oAjUcBkU0N7ODU/////f39/////v7+//////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////v7+/v///f38/v7+7+bdlVMOjEYBjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkBjUgB5dXG//// + /f38/////v7+//////////////////////////////7//fz7////w551iD4AkEwCjkkAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sB + hz4Ar35J/v39/fz8/v7+//////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////v7+/v39/fz7////tolYhz4Aj0sDjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEwBiEAAvZZq/////f37/v7+/v7+//////// + /////////////////////v7+/////f39/v7+9vHsnmMki0QAj0sAj0kAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oCi0QB2cKo//// + /fz7/v7+/v7+//////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////v7+/////fz8//// + 3su3jUcDjkoBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oBjEUBmlsZ9O7n/v79/f38//////////////////////////////// + /////////v7+/v7+/fz6////2cGpikIBj0oDjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0sBi0MAn2Qn+PTw/v79/f38/////v7+ + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////f39/fz8+vf0omosiUEAj0oBj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjkkAj0sCiD8A0reZ/////fz7/////v7+//////////////////////////////////////////// + /v7+/fz7/Pv6sH9KiD8AkEsBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsChj0Aw594/////fz7//7///////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////v7+/v7+/Pz7////yqmGiUAAj0sCjkkAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsBiUEAq3hA + /Pz6/f38/v39//7+/////////////////////////////////////////////v7+/////f37////7OLW + k1EOjUcBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAjkoBjUcCklAO6t7Q/v7+/fz7/v7+//////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////v7+/////f39//7/7ePYk1ENjUcAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAjUcBj0sG6NrL/////fz8/v///v7+ + /////////////////////////////////////////////////v7+/v7+/fz7////xqR+hz4Aj0sCjkkA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjkkAkEsBiUEAsIFN/v79/v39/v3+/v7+/v7+//////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////v79 + /Pz7/v7+s4RQiEAAkEwCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBhz4AwZty/////fz8/v7///7+//////////////////// + /////////////////////////////////////v7//v39/v399/PuoWgrikIAj0oBj0kAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sC + iEAA176j/////fz7//////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////v7+/v7+/fz8////2sSti0QBjkoC + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0kAj0sBi0QAm14d9vHr/v79/f39//////////////////////////////////////////// + ///////////////////////+/////fz8////3MawikMBj0oCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0sCi0QBnGAi9O7n/v38 + /fz8/v7+//////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////f39/v39+fbzoGcoikIAj0sBjkkAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sC + iUEA1buf/////fz8/v7+/v7+//////////////////////////////////////////////////////// + /////////v7+/f79/fz8/f39soNPhz4Aj0sCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEwChz0AwZxz/////f38/v7+/v7+//// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////v7+/Pz7////x6V/iD8AkEwBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0wBiEAArHpD/v7+/v38/v7+ + /////////////////////////////////////////////////////////////////////////////v7+ + /f38/v7+69/SlFIPjUcBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAjkgBkEwG6dvN/////fz8//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////v7+ + /////Pz7/v397ODUlFMRjUcCj0oBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkBkE0I6NvM//7+/fz8/////v7+//////////// + /////////////////////////////////////////////////////////////////////fz7////yKaB + hz0AkEwDjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAjkkAj0sCiUEArXtG/Pv5/fz7/v39/v7+//////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////v///f38////sH9K + hz8Aj0wCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAjkkAj0wChz8AwJlv/////f38/v7+/v7+//////////////////////////////// + /////////////////////////////////////////////v7+/v7+/f39/f389/Puomgti0MAj0sCj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0sDiD8A1r2i/////fz7/////v7+//////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////v7+/f38////18ClikMAj0sBjkkAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkA + j0oBi0QAnmIj9vHs/v39/v39//////////////////////////////////////////////////////// + /////////////////////////////////////v7+/fz8////3sq0jEYAjkoCjkkAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oAi0UA + nWAf9vHs/v7+/v79//////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////v7+/v7+/f38/f389vHsn2Qli0QBj0sBj0kAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oCikIA2MGo//// + /fz7/////v7+//////////////////////////////////////////////////////////////////// + /////////////////////////////fz8////tYhWhz4Aj0wBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsCiD8AwJpw/v7+/fz7 + /v7+/v7+//////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + ///////+/////fz7////xKF6hz4AkEwCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0wBiEAAsH9L/////f38/v79/v7+//////// + //////////////////////////////////////////////////////////////////////////////// + /////v7+/////fz7/v797uXblVQVjEYBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkCjkkG59jJ/////f38/////v7+//// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////v7+/v///f38//// + 6t3PkU4IjUcBjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjUgBkU4J6t7Q/v7+/fz8//////////////////////////////// + /////////////////////////////////////////////////////////////////////////v7+/v7+ + /fz7////yqqGiEAAj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsBiUEAqnY9/Pr4/v39/v7+//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + ///////////////////////////////////////////////////+/v39/fz7/fz7r39KiUEAj0sCj0kA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjkkAkEwChz0Aw553/////fz8/v7+/v7+//////////////////////////////////////////// + /////////////////////////////////////////////////////////////////f39/v79+/n3omor + ikEAj0sBj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAjkoAj0sCiEAA0raY/////fz6/v7+/v7+//////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////v7+/v7//fz7////1ryiiUIAj0oCjkoAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0sBikMBnmMm + +PTw/v39/f39//////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////v7+/v7+/fz7////38u2i0QEjkoDjkoAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0kAj0sBjEUAmVwb9e/p/v7+/f38//////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////f38/v7+9vHsnF8eikMAj0oAj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oBikMA2MCl/////fz7/////v7+ + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////v7+/fz8/v7+t4pZiD8AkEwCjkkAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEwChz4A + vpVq/////fz7/v/+/v7+//////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////v7+/v7+ + /Pz7////wJpwhz0Aj0wDjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsBiUAAr39J/v7+/v39/v7+/v7+//////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////v7+/////f39////8urillcTjEYAj0oAj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAjUgCjkgE5dXE/////fz7 + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////v7+/////fz8////59nLkEsHjUgB + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAjkoBjEcBk1AN7OLW/v///fz7//////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////v7+/v7+/Pz7////za6OiEAAj0sCjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEwBiUEAqnY8/f38/v39/v3+/v7+//////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////f39/fz8/fz7rHlCiUEAkEsBjkkAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sC + iD8AyKaB/////fz7/v///v7+//////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////v79 + /fz7+fXypW0xiUEAj0sBj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBiUEA0bWX/////fz8/////v7+//////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////v7+/v7+/fz7////z7OTikIAj0oCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAj0sBikMAn2Yl+vf0/v7+/f39 + //7///////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////v7+/////fz7////4tG+jEYC + jkoBjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oBjEUCl1gY8+vk/v79/fz7//////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////f38////7eLWlFEOjEcBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAjkoBi0QA28av/////fz7/v7//v7+//////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////v7+/v79/fz7/v7+uY5fiEAAj0wCjkkAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + jkkAkEsCiD8Auo9h/////fz8/v7+/v7+//////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////v7+/v7+/v79/fz8+/r4rHlE + iUEAkEsCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAjkkAj0sBiD8As4RR/f39/v39/v7+///+//////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////v7//f38/v7+7+fdl1cUjEYBjkoAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oBjkgB + 4tC+/////f38/////v7+//////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////v///v7+/Pz7////wp51hz4Aj0sCj0kAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjUcBk1EN7+Xb/////f39/////v7+//////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////fz8////z7GRhz4Aj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsCiUEAp3E4/Pv5/v38/v39 + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////v7+/v7+//7+/fz7////3ciwjEUAjkkBj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsChj0Ax6WA//// + /fz7/v7+/v7+//////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /v7+/v7+/f39/fz7+vj1qHI4iUEAj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAkEsCiD8Az7GR/////f38/v7+/v7+//////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + ///+/////fv7////7OHUlVQWjEYBj0oBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBikMAomks+PPv/v39/v79//////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////v7+/fz7 + ////5NPBj0oGjkgBj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oBjEYAl1gU8uri/v7+/fz8//////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////v7+/v7//f38////8uvj + n2QoiUEAkEwCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oCi0QB38u2/////fz7/////v7+//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////f38////u5Jlhz0A + kEwCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAjkkAj0sBiD8AupBi/////fz8/v7+/v7+//////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////v7+/////fz8/v7/+PTvq3dAiD8AkEwBjkkAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjkkAj0wCiEAAt4pa/v7+/f38/v79/v7+//////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////v7+/v7+/fz8/v398erimVwcjEUBj0sBj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjkkBjUgE4M66/////fz7/////v7+//////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////v7+/v7+/////fz8////+vj1rHpFiD8Aj0sCjkkAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAj0oAjUcBlVQR + 7+bd/v7+/f39//////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////v7+/fz7////0LSUiUEAj0sCjkkAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBikIAo2sv + +/n4/v39/v7+//////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////v39////+/n2tYhXhz4Aj0wDjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsChj0AyquI/////fz7/////v7+ + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////v7+/fz8/fz7qHM5iUEAj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsChz4Ay6uJ/////fz7/v7+ + /v7+//////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////v7+///+/v7+/fz7////+vf0 + rXtIikIAj0sDj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAj0sBikIAo2wx+PXx/f38/f38/v7+//////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /v7+/////Pz7////4tLAjkgHjUgCj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oBjEUBllYS8Oje/v7+/f38//////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////fv7////9/Puq3hChz4Aj0sBj0oAj0kA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAjkkAjkoBi0UA4M24/////fz7//////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////v7+/v7+/Pz6 + ////vpZqiD4Aj0wCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBiD8AuItc/////fz8/v7+/v7+//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////7+/////v7+/fz7////7+XaomoxiEAAkEwDj0oAjkkAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEwC + hz4AtolZ/////fz8/v3+/v7+//////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////f39/v7+9vHsnGAdi0MA + j0sBj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAjkkAjkkCjEYB38y3/////fz8/////v7+//////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////v7+/v7+ + /v///v39/Pz7////38y3mFkciUAAkEwCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oBjEYDllYX7+bc/v7+/f38 + /v7+//////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////v7+/v7+/fz7////1LqeiUEBj0sDjkoAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoA + j0sBikIApGww+vj1/v39/f39/v7+//////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////v7+/////////Pv6////////y6yJ + j0sEikMAkEsBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsCiD8Azq+O/////fz7//////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////v39/fz7/Pr5qnY9iD8Aj0wCj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBiD8AzK2M + /////Pz7/////v7+//////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////v7+/v7+/////v7+/fz7////8+zks4NTiUEAjUkAkEsCjkkAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0kAkEsBiUEApnA0/fv6/v39/f79/v7+/v7+//////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////v7+/v///f38////5tjJkUwIjkgAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjEYBlFIP7uTa/v7+/f38//// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////v7+/////v7+/fz7////////3Mixm14hiEAAj0sCj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + jkoAjkkCjkkG4c+7/////fz7/v7+/v7+//////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //7+/v7+/fz7////v5lviD8Aj0sDjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsCiUAAtIZV/////v39/v7+/v7+//////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////v7+/v7+///+/v39 + /fz8////+PTvvpZujUgDikQAkEwDj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsChz4AuI1d//// + /fz7/v7+//////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////7+/f38/f38 + 9O7nm10ci0QAj0oBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oBikMA3ciy/////fz8/////v7+//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////v7+/////v7+/fz7////////28aunmImhz4A + jkkAj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjEYAl1gW8+vk///+/f38/////v7+//// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////v7//Pz7////1LqdikIAj0sB + jkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAjkkAj0oBikMAoWgp+fby/f39/f39//////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////v7+/v7+/////v7+/fz7/v//////8OjdtolbjEUAikMAkEwCj0oAjkkAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsCiUEAzrGR/////fz7/v7+/v7+//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////v39/fz7/f38rn1HiD8Aj0sCj0kAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkA + j0sBiD8AyKiE/////fz8/v7+/v7+//////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////f38////////+/j2y62LlVQSiD8AjkoBj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjkkAj0oBiUEApW4z+vj1/v39/v39//////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////v7+/v7+/Pz7/v7+6d3Qkk8LjUcBjkoAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjUcBkk8J7eTZ + /v7+/f38/////v7+//////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////v7+/////v7+/f38/f39/////Pr4 + 2sSsomktiD8AjEcAkEwCj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAj0oAjkkAjkgD + 49PB/////fz8/////v7+//////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////v7+/f38////w552hz4Aj0wBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBiD4As4VS/////f39/v7+//// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////v7+/v7+/////f38/v7+////////38y3qXU+iUEAikMAkEsCj0sB + jkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsChz4AvJNm/////fz7/v7+/v7+ + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////v7+ + /////f39/f389vHrnGAgikMAj0sCj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkBjEYA3Mex/////fz7/v7+/v7+//////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /v7+/////////v39/fz8/v7/////////4tC9rntHjUgCiUIAkEsCj0sBj0oAjkkAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAj0oBjEUBmVsZ9O7m/v7+/f38//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////v7+/v7+/Pz7//// + 2MCnikMAj0oCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAjkkAj0oAi0MAnmMj+ffz/v39/f38//////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////v7+/v7+/v7+/v7+/v39/fv6//// + /////fz82MGnrXtIjUYAiUEAjkkAkEwCj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAjkkAj0sCikEA0bWX/////fz7/////v7+//////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////v7+/f39////r35IiUAAj0wC + jkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAjkkAj0sBiEAAxKF6/////fz8/v7+/v7+//////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////v7+/////v7+/f38/fz6/v7/////////8uvj0bWXomktjEUAiD4A + j0oBkEsBj0oAjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAkEsC + iUEAqHQ7+/j2/fz8/v39/v7+//////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////v7+/////fz7/v7+6NvNkEwIjUgBj0oBj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + jUgBkk8K7ODV/////fz7/////v7+//////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////v7+ + /////v7+/v7+/v7+/v39/v39/////////f3859jKvZVqnF8hiD8Ai0QAj0oAkEwEj0oAjkkAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkgBjkkE5dXE/////fz7 + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////v7+/v7+/Pz7////w551iD4Aj0wCjkkAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsCiUEAsIBL//// + /f38/v7+///+//////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////v7+/////v7+/fz8/fz6//////// + ////////69/T0baYqndBjkgAiUAAi0QAkEwDj0sBj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBiD8AvZRo/////fz7/////v7+//////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////v7+/f39+vbzn2UlikMAj0oBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sCi0QA2sOq/////fz7/v7//v7+ + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////v7+/////v7+/v7+/v79/v38/v38/f38/v///////////v398Ojf0bWXsYBNlVUShz0A + ikIAjkkAkEwCj0sCj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oBi0UBmlsc8eri/v39/fz8/v7+//////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////v7+ + /////Pz7////28avi0MBj0oCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0sBikMAnmIj+PXx/v39/f38///+//////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////v7+/////v7+/v79/f38 + /fz7/fz6/v7+/////////////////Pr55dXDyaqHr31Lkk8HikMAiUEAjUYAkEwDj0sBjkkAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + jkkAj0oBiUEA1Lqd/////fv6//////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////v7+/f79/fz7/f38 + sYJOiEAAj0sCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAjkkAj0sBiD8AxKB5/////fz8/v///v7+//////////////////////////// + /////////////////////////////////////////////////////////////////v7+/////v7+/v39 + /v39/v39/v39/v39/v39/v38/v38/fz8/fz8/f38/f38/v38/v38/v39////////////////////9vDq + 6d3P0baYtIZVn2Unkk8HhjsAiUAAjkgAj0sBkEsCj0sBj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsCiUAArHpD/f38 + /v39/v39/v7+//////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////fz8////7OHWkk8KjUcAjkoA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAjkkAjUgBkU4J6NrM/////fz8//////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + ////////////////////////////////////////9O3l49PB1Lqew552soNRnmIhikIAikIAiUEAikIA + jUgAkE0EkEwCj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoBjUgCj0wK59nK/////fz7/v7+//////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////v7+/v7+/fz7////xqR+hz4AkEwCjkkAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sC + iUEArnxG/v7+/f38/f39/v7+//////////////////////////////////////////////////////// + /////////////////////////////////v7+/////fz6+PXv+fXy+fXy+fXy+fbz9vDr8Oje8Oje6dzO + 5NXE2MCmzbCPv5dusIBMn2UnmlwZk1EJjEUAhz0AiUEAjUcAkEwEkE0EkU0EkU0EkEwDj0sCj0sCj0sC + j0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sC + j0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sC + j0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sCj0sC + j0sCj0sCj0sCj0sCj0sCj0sCj0sBkE0Ehz4Av5ht/v7+/fz7/v7+//////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + ///////////////////////////+/f39/f389/PuoGYnikIAj0sCj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsBiUAA1r2i//// + /Pz7/////v7+//////////////////////////////////////////////////////////////////// + /////////////////fz7////4M25l1YeoGYnn2MknmMkn2QmmVsYkUwEkU0FhTkAgzcAhDgAhDkAhDkA + hToAhToAhz0AiEAAikIAi0UAi0QAikIAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEA + iUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEA + iUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEA + iUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEAiUEA + iUEAiUEAikIAhz0Am1wc9O7o/v7+/f39/////v7+//////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////v7+//7//f38////2sSsi0QAj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oBi0UBnWEg9fDr/v39/f39//////// + //////////////////////////////////////////////////////////////////////////////// + /fz7////6NrMtIZYupFjuY9huo9huY9gupBjvJNnvJNnvpdsv5dtv5dtv5dsvpdsvpdsvpdsvpZrvpZr + vpVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVq + vZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVq + vZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVq + vZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvZVqvpdsuI1g + 4M24/////fz8/v7+/v7+//////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + ///////////////////////////////////////////////////////////////////////////////+ + /v7+/fz7////tIZUiD8Aj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsBiD8AwZxy/////fz7/v7+/v7+//////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////v7+//////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////v7+/v7+/fz7/v397ePY + llURjEYBj0oBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAjkgBkEsF6NrN/v7+/fz8/////v7+//////////////////////////// + /////////////////////////////////////////////////v7+/////v79/fz7/fz7/fz7/fz7/fz7 + /fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7 + /fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7 + /fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7 + /fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7 + /fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/fz7/v39/v7+/v7+/v7+//////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////v7+/Pv7////yaiEiD8Aj0sBjkkA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjkkAkEsCiUEArXpD/v7//f39/v7+//////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////v7+/////f39/v38+vf0oWgrikIAj0sBj0kAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oB + ikMA1bqf/////fz7/v7+/v7+//////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////v7+/v7+/fz7////3MiyjEYBjkkBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oBi0QAmlwa9O7n/v39 + /f38/////v7+//////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////v7+/f39////tIdViD8Aj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsBiD4Avpds/////f38/v7+//////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////v7+//// + /fz8/v7+7+XblFIOjEYBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjUgBjkoD5dbF/v7//fz7/v7+/v7+//////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////v7+/////v7+/v38/v39 + /v38/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39 + /v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39 + /v39/v39/v39/v39/v39/v39/////////v////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////v7+/v7+/fz8////y6uI + iUEAj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAjkkAj0sBiUEAq3c//fz7/v38/f79//////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////v7+//////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////v7+/v7+//////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////f39/v39/Pv6pGwuikEAj0sBjkkA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjkkAj0sCikIA1Lqd/////fz7/v///v7+//////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////v7+/v7++fbzqXY9nmImoGYnoGUnoGUnoGUnoGUnoGUnoGUnoGUn + oGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUn + oGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnoGUnn2UnoGUnnmMm4c+8//// + /fz8//////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////v7+/////fz7////4tC9jUgEjkkCjkoAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oBi0QA + mVsZ8+zl/v38/fz8//////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////v7+/fz7////xaJ8hToAi0QAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIA + ikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIA + ikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAikIAi0QAhDoAqHI6+/n3/v39/v7+//////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////v7+/v7+/fz8////uIxciUAAkEsCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEwCiD8AvpZs/////fz7 + /v7+//7+//////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////v7+/////fz7/v7+ + 7ODUk1EPjUcCkEwDj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sB + j0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sBj0sB + j0sBj0sBj0sBj0sBj0sBj0sCkEsCjkkDkk4L6t7Q/////fz7//////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////f39/v7+8enhllYQjUYAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAjkkBjkkE49PB/////fz8/v///v7+//// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////v7+/f38////soJOiEAAj0sBjkkA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjkkAj0wBiD8Awp10/////fz8/v7+/v7+//////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////v7+//// + /Pz7////za+OikEAkEsBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAj0sDiEAAp3I3/Pr4/f38/v39/v7+//////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////v7+/Pz7////2cOri0QAj0oBjkkAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oBi0UAnWAf + 9vHs/v79/fz8//////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////v7+/f39/f38+/n3pm8z + iUEAj0sBj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAjkkAj0oCikIA0LOU/////fz8/////v7+//////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////v7+/v7+/f38/f38+PPvoGcqi0QBj0sBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0sCiUEA1r2i/////fz7/v7+/v7+ + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////v7+/////fz7////4tC9jkkDjkkBjkoAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAi0YAl1gT8+3l/v7+/f39//////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /fz7////x6V/iD8AkEsCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsCiEAArXtF/f38/f38/v7+//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////v7+/v7+/fz8////vJJmiD4AkEwCjkkAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sCiEAA + upFj/////fz8/v7+/v7+//////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////v7+/f38/v7+6t7RklALjUcB + jkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0kAjkgBkU0I6NrM/////f38/////v7+//////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////v7//fz8/v798eril1kVi0QAj0oBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkgBj0oG5NPC/////fz7 + /////v7+//////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////v7+/v79/f38/f38soNQiUEAj0sCj0kAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsC + hz4AwZty/////fz8/v7+/v7+//////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + ///////+/v///f37////0bWXiUEAj0sCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBiUEApm8z/fz6/f38/f39//////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////v7+/////fz7////3MexikMAj0sCjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oBi0MBnGEj9vLt/v39/f38 + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////f39 + /f38/Pr4qHM6iUEAj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oCiUEAz7KS/////fz7/v7+/v7+//////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////v39/f38+PXxomotikIAj0sBj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBiUIA1r2i/////fz7/////v7+//////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////v7+/v7+/fz7////49PBjUgC + jkkBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAjEYBllYU8ejf/v79/f38/////v7+//////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////v7+/v7+/fz7////y6yJ + hz8Aj0sCjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0kAkEsBiD8ArXpD/fz7/v38/v7+/v7+//////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////v7+/fz8////vJNmhz8Aj0sBjkkAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + jkkAkEsChz4At4ta/////fz8/v7+//////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////v7+/////f39////7ePZlFIPjEYAj0oAj0kAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + jkoAjUgCkEwL6dzO/////fz7//////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////v7+/////fz8/v398+vkmFoXi0UAj0oBj0kAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAjkkBjUcD + 38y3/////fz7/v7+/v7+//////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////v7+/fz7/f38tYdVhz8Aj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBiD8AwZtx//// + /fz8/////v7+//////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////v7+/v7+/fz8////0reaikIAjkoBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBiUEApGww+/j2/v38/f39 + /////v7+//////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////v7+/v7+/fz6////3su1jEUEjkoCjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oBi0QAnGAf9fDq/v79/f39//7+//////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////v79/v39/f39q3c+iUEAj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBiD8AzKyK/////Pz7/v7+//////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////v/+/f39/v79 + +fb0o2otikMAj0sBj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sCikIA07eb/////fz7/v7+/v7+//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////v7+/////fz8 + /v7/59fIjkoEjUkBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oBi0YBl1cV7+bc/f39/fz7/v7+/v7+//////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////v7+//7//fv7////yqmGiD8AkEwCjkkA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjkkAj0sBiEAAqXU7/Pv6/f38/v7+//////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////v7+/v7+/fz8////v5dtiD4A + kEsBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAjkkAj0sBiD8Atotb/////fz7/v7+///+//////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////7+/fz8/v7+7uTalVQUjUcCj0oBj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkCj0oK + 5tbG/////fz8/////v7+//////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////f39/v399O7om10ci0UBj0oBj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + jkkAj0oBjUcB4M25/////f38/v7///////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////v7+/////f38////tolXiD8AkEwCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEwCiD4Avpdr/////fz7/v39/v7+ + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////v7+/////fz8////07ibiUAAkEsBjkkAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0sCikIAomos + +PTw/fz8/f39/v7+//////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /fz7////3ciyikMAj0oCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAj0oAi0UAmlsY9O7n/v7+/v39/v////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////v7+/f39/f38/v79q3c/iUAAj0wCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEwChz4AyaiF/////fz7//// + /v7+//////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////v7+/f39/f38+fXxomoviUEA + kEwCjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAjkoAj0sCiUAA07mc/////fz7//////7+//////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////fz8////6NvMkEwHjUgBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAjUcAk1EL7uTa/////f39//////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////v7+/////f38////y6uJhz8Aj0sBjkkAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAj0sB + iUAAq3dA/Pr4/fz7/f39/v7+//////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////v7+/v///fz7 + ////wpxziD8AkEsBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAjkkAkEwCiD8AtIZU/v39/fz7/v39/v7+//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////f38/v7+7uPYlFMPjUcBjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkgBj0oC5dbG/////fz7 + /v7+//////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + ///////////////////////////////////////////////////////////+/fz8/v399/LunGAfi0MA + j0sBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAjkoAj0kBjEUC3cm0/////fz7/////v7+//////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /v7+/v79/f38/v7+tYhYiD8AkEsCj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0wChz0AvpZr/////fz8/v7+//////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////v7+/v///fz7////17+likMAj0oBjkkAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kA + j0oBikMAomgq+vf0/f39/v7+//////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////v7+/////Pz7////4M24 + i0UAj0oBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0sBi0QBm10f8+3m/f38/fz7/v7+/v7+//////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////7+/v79/f39////rnxGiUAAkEsCjkkAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sCiEAAyKWB + /////Pz7/v7+/v7+//////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////v79/f38+PTxomkti0MAj0sBjkkAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + jkkAkEwBiUEA0rea/////fz7/v7+//////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////v7+/v7//fz7////6t3QkE0IjUgBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oBjUcBkk8M69/T/v7+/fz7//// + /v7+//////////////////////////////////////////////////////////////////////////// + /////////////////////////v7+/v7+/fz7////y6yKhz4Aj0sCjkoAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sCiUAAqnU9/Pz7 + /v38/v39/////v7+//////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + ///+/v7+/fz7////wZtyhz8Aj0wCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBiEAAsoJP/////f38/v7+//////////////// + //////////////////////////////////////////////////////////////////////////////// + /////v7+/////f38/v7+8enhllYSjUcBj0oBj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjUgCj0sJ5dbG//7+/Pz7/v7+/v7+//// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////v7+/////f38/v79 + +PTwnGAfi0QAj0sAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAjkkAjkoCi0QA28St/////Pz7/v7+/v7+//////////////////////// + /////////////////////////////////////////////////////////////////////////v7+/f38 + ////uI1diD8AkEsCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsBhz8AvpZq/////fz7/v7+//////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////v7+/v7+/fz7////2sSsi0UAj0oB + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0kAj0sCikMAnmQl9/Lt/f38/f39/////v7+//////////////////////////////////// + /////////////////////////////////////////////////v7+/v7+/fz7////4tC+jUcCjkkBj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0kAj0oBi0QAmVsZ9O3m/v79/f38/////v7+//////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////v7+/f38////sYFMiD8Aj0sBjkkAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkA + kEwChz4AxaJ8/////fz7/v7+//////////////////////////////////////////////////////// + ///////////////////////////////////+/f39/f39+/n3pGwwikEAj0sBjkkAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAj0sCiUAA + 07mb/////Pz7/v7+/v7+//////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////v7+/////fz7/v7+7OHUkU0HjUgBj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oBjUcBk1AO6+DU + /v7+/Pz7/v7+/v7+//////////////////////////////////////////////////////////////// + /////////////v7+/v///f38////za+OiD8Aj0oBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsCiUEAq3c+/fz7/fz8/f79//// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////v7+/v7+/fz8////xqR/iD8Aj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0wChz4AsIBM/v79/fz7/v7+//// + //////////////////////////////////////////////////////////////////////////////7/ + /fz8/v7+8erillYSjEYBj0oBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkBjkkF5tfH/////fz8/////v7+//////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////f39/f39+PXwn2Qli0MAj0oBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oBikMA2cKp/////fz8/v7///////////////// + /////////////////////////////////////////////////////////v7+/v7+/fz8////uI1fiD8A + kEwCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAjkkAj0wDhz4AvpVq/////Pz7/v7+/v7+//////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////v7+/////fz8//// + 2sWtikEAj0oBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oBi0MAnWAg9vDq/f38/f38/v7+//////////////////////////// + /////////////////////////////////////////////fz7////4tC9jUcAjkkBjkkAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + jEQAm10b9O/p/v7+/f38//////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////v7+/v7+/v39/v7+soJPiUAAkEwC + jkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAjkkAj0sDhz8Aw552/////fz7/v7+//7+//////////////////////////////////////// + /////////////////////v7+/f39/f38/Pr4pW8yikIAj0sCj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sCiUAA07ib/////fz7 + /v7//v7+//////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////f38/v7+7OHWklAMjUcBj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkA + jUgAklAK6dzO/////f38/v////////////////////////////////////////////////////////// + /v7+/////fz7////za+OiUEAj0sCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0sCiEAAqXY9+/n3/fz7/v39///+//////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////v7+/////fz8////yamFiD8Aj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0wCiEAArXpD/Pv6 + /fz6/v39/v7+/////////////////////////////////////////////////////////f39/v7+8eng + lVMPjEYAj0oBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAjkkAjkkBkEwF5tjJ/////f38/v///v7+//////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////v7+/f39/v39+fXyomkrikMAj0sCj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAj0sDikMC17+l/////fz7/////v7+ + /////////////////////////////////////////////v7+/v7+/f38////uI1diEAAkEsDjkkAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + jkkAkEwBiD8Au5Jl/////fz8/v7+//7+//////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////v7+ + /////fz8////3ciyi0QAjkoCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAj0sBi0QAnmIi9vLt/v7+/v7+//////////////////// + /////////////////////////v7+/////fz8////4tC9jkgEjkkBj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oBjEUBmFoX8uvj + /v39/fz8/////v7+//////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////v7+/v7+/fz8//// + tYdViD8AkEsBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAjkkAj0wDhz4AwZtx/////fz7/v7+/v7+//////////////////////////// + /////////////v7+/v39/Pr4pG0vikMAj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBiEAAz7KT/////fz7/v7+/v7+//// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////fz7/v7+7uTalVQQjEYBj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oBjUgCkU4N59jI/////fz8/////v7+/////////////////////////////v7+/v7+/fz8 + ////za6NiUAAj0sCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sCiUEApm8z/Pv5/v39/f39//////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////v7+/v7+/fz7////yaiDhz4Aj0sCjkkAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sB + iUAAqnY9/fz8/f38/v7+/////////////////////////////v7+/////f38/v398enhllcVi0UBj0oB + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAjkgBjkkD5NTD/////fz8/v7+/v7+//////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////f39/v39+/j2oWgqikIAj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sCiUIA07mb//// + /fz7/v7+/////////////////////////////v7+/f38////t4tahz8AkEsBjkkAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sCiD8A + upFj/////fz8/v7+//////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////v7+/v7+/fz7////4M67jEYDjkkCj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0sBi0QBm18g8+3l/v39/f38/v7+/v7+ + /////////////v7+/v7+/Pz7////5NTEjkkEjUkCjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAj0oAjEUAllcT8+vk/v39/f38//// + /v7+//////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /v7+/fz8////uIxciD8Aj0sCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsChz0Avpdr/////fz7//////////////////////// + /f39/fz8+/n3p3E4iUEAj0sCj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAj0sBiUAA0LSV/////fz7/v7+/v7+//////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////v7+/////fz8/v7+8Ojf + llYSjEcBj0oAj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAjkkAjkgBkEwI5dfG/////fz7/v7+/////////////v7+/fz7////0LSWiEAA + kEsCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAjkkAj0sBikIAp3A1/Pr5/v39/v39//////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////v7+/v7+/fz7////za2Mhz8AkEsCjkkA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0kAj0sBiEEArHlC+/r4/fz8/v39/v7+/v7+/v7+/f38/v398+zkmVoZi0UBj0oBj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + jkkBjUcA49LA/////f38/////v7+//////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////v38/f39+/n3pG0yikEAj0sCjkoAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sC + iD8A0ria/////fz7//////7+/v7+/fz7////u5Jlhz0Aj0wDjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsBiD8Au5Jk/////f38 + /v7+/v7+//////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////v7+/////f38////38y3jUcAjkoBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0sBjEUBmlsb8eng/v79 + /f38/////f38////5NTDjkkEjkkBjkkAj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oBjEUBl1gV8uvk/v79/f38//////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////v7+/v7+/fz8////t4xchz4AkEwCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0wCiD4Au5Jm/////fz7/f39/fz8+/n3 + qXQ6iUIAj0sBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAjkkAkEsBiD8A0LOU/////fz8/////v7+//////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /fz7/v7+8engllYWjEYBj0oBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAjkkBjkgD5NTD/////Pr5////0bSXiEAAj0sDjkoAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0kAj0sCikIAp3E3/Pr4/v39/v39/v7+//////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////v7+/////fz8////0baX + iUAAkEsBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0kAj0sBiUAApnE2+fbz/f388uvjl1cTi0UAj0oAj0kAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAjkkBjkgE5NTD + /////fz8/v////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////v7+/v3+/v39/Pv5p3I4iUEAkEsBjkkA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjkoAj0sCiUAAz7GT////upFjiD8Aj0wCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEwCiD8Au5Fj/////fz8/v7///7+//// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////fz7////4tG/jUcDjkkCjkoAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAj0oAi0MA + nWEh1r2ikE0KjkgBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0sBjEYBl1gX8urj/v7+/f38///+//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////v7+/v/+/Pz7////u5FkiD8AkEwBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oAjkkAkU4FjUcAj0oA + jkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAjkkAj0sCiEAA0bWW/////fz7/v7+/v7+//////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////f38/v7+8+zlmFkZjEYBj0sBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkgAj0oAjkkAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBikIA + qHI4/Pv5/v39/v7+//////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////v7+/v7+ + /fz6////0LOTiD8AkEwCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oAj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kCjUcF49G//////f38//// + /v7+//////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////v7+/v39+/r3qnY+ + iUEAkEsBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sChz4Au5Nm/v///fz8/v7+/v7+//////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////v7+/////f38////5tfIjkkIjkkCj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAjkoAj0oAjEYAl1cU8+zl/v7+/v39//////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////v7+/v7+/fz7////v5huhz4Aj0sCjkkAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kA + kEsChz8Az7KS/////fz7/////v7+//////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////v79/v7+9O7pmlwZi0UAj0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAkEsCikEApnA3+vf0/fz7 + /v39/v7+//////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////v7+/////fz7////07ibiD8AkEsDj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkoBjEUA38y3/////fz7//////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////v7+/v39 + /fz7+/n3q3hBiUEAkEsCj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAjkkAj0wChz4AuY1f/////f38/v7+/v7+//////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////fz8////59jIj0oD + jkkBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oBjEYCl1YV7+Xb/v39/fz7/v7+//////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////v7+/v7+/f37////vpdthz0Aj0wCj0kAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsBhz4Ay6uJ + /////fz8//////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////v7+/fz8/v399O/om18hi0QBj0oBj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sBiUEApW40+vf0/v39/v39/v7+/v7+ + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////f38////1r2iiUAAj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkoAjkkCjEYE4M24/////fz7/v7+//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /v7+/v7+/v79/v38/v39rnxIiEAAkEsBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAjkkAkEwChz8At4tZ/v7+/fz7/v7+//////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////v7+/fz7 + /v7+6NrMkU0LjkgCjkoBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjEYB + llYW7+Xb/v7+/f38/////v7+//////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////7//fz7////wJpwhz0A + kEwCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0sCiD8Aza6M/////fz7/v7+ + /v7+//////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////v7+/////f39/v799vLtnWIki0QAj0sBj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAj0sBiUEApG0x+vf0/f38/v7+//////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////v7+/v7+/fz7////1r6ii0MAj0oCjkkAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAjkoAj0kCjEYF38y3/////fz7/////v7+//////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////v7+/f38/fz8rXtEiUAAj0sBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkA + j0wChz8AuIxc/v7+/fz7/v39/v7+//////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /v7+/////fz8////697Skk8MjUgBj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0kAjkoAjUYAllYR8Ofe/v/+ + /v39/v////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////v7+/v7+/fv6 + ////xKF6iD4AkEsCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0wCiD8Ay6uJ/////v38//////7+//////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////v79/v7++fXyn2Qli0MA + j0oAjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0kAj0sCiUEApW8z+fby/fz7/f39/v7+//////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////v7+/////fz8////2cKqikQAjkoCj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjkoAjkkBjEYA4M24/////fz8/v7+//////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////v7+/v7+/fz7/Pv6sH9LiD8AkEsCj0kAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0wChz4At4pa + /////f38//////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////f38////7OLWkk4KjUgBjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0sBjEUBl1cV7uXb/v39/Pz8/v7+/v7+ + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /v7+/////fz8////xaJ8iD8Aj0wCjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsBiUAAzK2L/////Pz7/v7+//////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////v7+/v39/fz7 + 9/LtomgsikIAj0sCj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAjkkAj0sBiUIApGww/Pn3/f38/f39//////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////fz7////3Mewi0QAj0oB + jkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkB + jUcE3sq2/////Pz7/v7+/v7+//////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////v7+/v7+/f38////tolXiD8Aj0wBjkkAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEsBiD8AuIxb/////fz8/v7+ + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////v7+/fz7/v7+7eLWlVMSjUcCj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjUYBllYT8Ojf/v7+/f39/////v7+//////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////fz8////yKaBhz4AkEsBjkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAjkkAj0sBhz8AyaiF/////fz7/v7+/v7+//////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////v7+ + /v7+/v39/v39+PTxomktikIAj0sBj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oBikMAomgq+fXy/v39/f39//////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////v7+/fz7//// + 3Mixi0MBjkoCjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAj0oBi0MA3ciy//// + /fz8/////v7+//////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////v7+/fz7/v79tIdVhz4AkEwC + jkkAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAkEwBhz8AtIdV/////f37/v7+/v7+//////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////v7+/////f38////7+belVUUjEYBj0oBj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAjkoAjUYBlFMO7uPZ/v7+/fz8//////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////v7+/v7+/fz7////y6yJiD8Aj0sCjkkAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAjkkAkEwBhz4AyKaD/////fz7/v///v7+//////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////v7+/v38+ff0pW4yikEAj0sBj0kAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0sBikIAoWgq + +vf1/f38/f39//7+//////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////////v7+ + /////fz7////4M24jEUFj0kCjkoAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oA + j0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAj0oAjkkAjkkCjEYB3ciy/////fz7/////v7+ + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////v7+/v39/fz7/v39 + tolZhz4AkU4FkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwD + kEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwD + kEwDkEwDkEwDkEwDkEwDkEwDkEwDkEwCkU0EiEAAtIVS/////f39/v7+///+//////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////v///v39////8OfdlVQQhDoAiD8A + iD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4A + iD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4AiD4A + iD4AiD4AiD4AiD8AhToAkU4K7+Xc/v7+/f38/////v7+//////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////7+/////v7+////38y4y6yNzrGQzrCQzrCQzrCQzrCQ + zrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQ + zrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrCQzrGS + yqqM38u2/////v79/v7+/v7+//////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////v7+/v7+/v7+/v79//////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////////v79/v7+ + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + /////////////////////f38/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8 + /fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8 + /fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/fz8/f38/v7+/////v7+//////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + //////////////////////////////////////////////////////////////////////////////// + ////////////////////////////////////////////////////////////////////////AAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA= + + + \ No newline at end of file diff --git a/LFP_Manager_PRM/packages.config b/LFP_Manager_PRM/packages.config new file mode 100644 index 0000000..54f37c6 --- /dev/null +++ b/LFP_Manager_PRM/packages.config @@ -0,0 +1,9 @@ + + + + + + + + + \ No newline at end of file