diff --git a/File_Format_Library/GUI/BFLYT/LayoutEditor.Designer.cs b/File_Format_Library/GUI/BFLYT/LayoutEditor.Designer.cs
index 31eb404b..cbbae768 100644
--- a/File_Format_Library/GUI/BFLYT/LayoutEditor.Designer.cs
+++ b/File_Format_Library/GUI/BFLYT/LayoutEditor.Designer.cs
@@ -127,28 +127,28 @@
// openToolStripMenuItem
//
this.openToolStripMenuItem.Name = "openToolStripMenuItem";
- this.openToolStripMenuItem.Size = new System.Drawing.Size(180, 22);
+ this.openToolStripMenuItem.Size = new System.Drawing.Size(127, 22);
this.openToolStripMenuItem.Text = "Open";
this.openToolStripMenuItem.Click += new System.EventHandler(this.openToolStripMenuItem_Click);
//
// clearWorkspaceToolStripMenuItem
//
this.clearWorkspaceToolStripMenuItem.Name = "clearWorkspaceToolStripMenuItem";
- this.clearWorkspaceToolStripMenuItem.Size = new System.Drawing.Size(180, 22);
+ this.clearWorkspaceToolStripMenuItem.Size = new System.Drawing.Size(127, 22);
this.clearWorkspaceToolStripMenuItem.Text = "Clear Files";
this.clearWorkspaceToolStripMenuItem.Click += new System.EventHandler(this.clearWorkspaceToolStripMenuItem_Click);
//
// saveToolStripMenuItem1
//
this.saveToolStripMenuItem1.Name = "saveToolStripMenuItem1";
- this.saveToolStripMenuItem1.Size = new System.Drawing.Size(180, 22);
+ this.saveToolStripMenuItem1.Size = new System.Drawing.Size(127, 22);
this.saveToolStripMenuItem1.Text = "Save";
this.saveToolStripMenuItem1.Click += new System.EventHandler(this.saveToolStripMenuItem1_Click);
//
// saveToolStripMenuItem
//
this.saveToolStripMenuItem.Name = "saveToolStripMenuItem";
- this.saveToolStripMenuItem.Size = new System.Drawing.Size(180, 22);
+ this.saveToolStripMenuItem.Size = new System.Drawing.Size(127, 22);
this.saveToolStripMenuItem.Text = "Save As";
this.saveToolStripMenuItem.Click += new System.EventHandler(this.saveToolStripMenuItem_Click);
//
@@ -170,14 +170,14 @@
// textureListToolStripMenuItem
//
this.textureListToolStripMenuItem.Name = "textureListToolStripMenuItem";
- this.textureListToolStripMenuItem.Size = new System.Drawing.Size(150, 22);
+ this.textureListToolStripMenuItem.Size = new System.Drawing.Size(180, 22);
this.textureListToolStripMenuItem.Text = "Texture List";
this.textureListToolStripMenuItem.Click += new System.EventHandler(this.textureListToolStripMenuItem_Click);
//
// textConverterToolStripMenuItem
//
this.textConverterToolStripMenuItem.Name = "textConverterToolStripMenuItem";
- this.textConverterToolStripMenuItem.Size = new System.Drawing.Size(150, 22);
+ this.textConverterToolStripMenuItem.Size = new System.Drawing.Size(180, 22);
this.textConverterToolStripMenuItem.Text = "Text Converter";
this.textConverterToolStripMenuItem.Click += new System.EventHandler(this.textConverterToolStripMenuItem_Click);
//
diff --git a/File_Format_Library/GUI/BFLYT/LayoutEditor.cs b/File_Format_Library/GUI/BFLYT/LayoutEditor.cs
index 06066cda..c84ffab8 100644
--- a/File_Format_Library/GUI/BFLYT/LayoutEditor.cs
+++ b/File_Format_Library/GUI/BFLYT/LayoutEditor.cs
@@ -127,6 +127,11 @@ namespace LayoutBXLYT
private void OnProperyChanged()
{
+ Console.WriteLine("UpdateProperties");
+
+ if (LayoutProperties != null)
+ LayoutProperties.UpdateProperties();
+
if (ActiveViewport != null)
ActiveViewport.UpdateViewport();
}
@@ -416,15 +421,26 @@ namespace LayoutBXLYT
private void textConverterToolStripMenuItem_Click(object sender, EventArgs e)
{
- if (ActiveLayout.FileInfo is BFLYT)
+ if (!textConverterToolStripMenuItem.Checked)
{
- TextConverter = new LayoutTextDocked();
- TextConverter.Text = "Text Converter";
- TextConverter.LoadLayout((BFLYT)ActiveLayout.FileInfo);
- if (ActiveViewport != null)
- TextConverter.Show(ActiveViewport.Pane, DockAlignment.Bottom, 0.4);
- else
- TextConverter.Show(dockPanel1, DockState.DockLeft);
+ if (ActiveLayout.FileInfo is BFLYT)
+ {
+ if (TextConverter == null)
+ TextConverter = new LayoutTextDocked();
+ TextConverter.Text = "Text Converter";
+ TextConverter.LoadLayout((BFLYT)ActiveLayout.FileInfo);
+ if (ActiveViewport != null)
+ TextConverter.Show(ActiveViewport.Pane, DockAlignment.Bottom, 0.4);
+ else
+ TextConverter.Show(dockPanel1, DockState.DockLeft);
+ }
+
+ textConverterToolStripMenuItem.Checked = true;
+ }
+ else
+ {
+ textConverterToolStripMenuItem.Checked = false;
+ TextConverter.Hide();
}
}
diff --git a/File_Format_Library/GUI/BFLYT/LayoutEditor.resx b/File_Format_Library/GUI/BFLYT/LayoutEditor.resx
index 2fc09876..463cd52b 100644
--- a/File_Format_Library/GUI/BFLYT/LayoutEditor.resx
+++ b/File_Format_Library/GUI/BFLYT/LayoutEditor.resx
@@ -124,484 +124,483 @@
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
- YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAG+vSURBVHhe7Z0HuBzFlbZ312uvbfx7DTY2GZTDvcoo55wD
- KGehnDNKSEISSqCAJAQiCyUEEgIRDJgc19gGTBICgTA55yQQ7NZ/vpo+M2dqTk+6c6dHout53tt3Ok11
- d31fnaqu7vm3MIUpTGEKU5jCFKYwhSlMYQpTmMIUpjCFKUxhClOYwhSmMIUpTGEKU5jCFKYwhSlMYQpT
- mMIUpjCFKUxhClOYwhSmMIUpTGEKU5jCFKYwhSlMYQpTmMJ0dKcuXbqcRuxp3679G82aNfuxSZMmJtc0
- bdrUQvs3zZo2M82bNzfNmzU3LZq3sPOGDBli+g8YZIacM8KcM2K0OWfkGDNi9Fgzcsx4M27CZDNx0lQz
- efI0M2XqDDN12kwzY+ZsM504d/Y8M2vOeWbO3Plm3nkLzbz555v5CxabBQuXmEWLl5nFS5abJUtXmqXL
- LzLLiBUrV5sVF64xF666OI6LVq/zZdWa9VFWr90Qx5qLL1FZu26jD5eai9dfFmHDZWYdsf6STVE2bLxc
- 4Qqz4dIrzCWXXenLxk1XmUs3XW0uvTwCPmM+tsM+sG9818UbLjVr1lEeidUXb6BjihwfzsHKi9aaFRet
- McsvXG1ZtuIiOm8XmguWraRzuMIsWrLMY6lZuGiJWXD+YjN/4SLLvPkLzdzzFpi58+bbazEL14U4d/Zc
- M/Pc2XS9ZlmmzziXrt8Muo7TLZMmTzUTJk6OMGGSGTdughk7brxlzNhxZtToMZaRo0abESNGmnPOGW6G
- Dx9hhg07xwwdOswMHjzEMmjwYDNg4EBL/wEDTN9+/UzvPn1Mt27diW6mcePGarksTai8/9iubbt3unTu
- ctegQYPKe3IrrDSgb99hlMnvu3XtShdggjn//PPN2rVrzTVXX222XHed2bJli9m+bZtlx44dZuf111tu
- vOEGy+5duyx7brrJ7Nmzx9xy883m1r17LbffdpvljttvT2DvLbfYfV6y4RJig/n20Hfmg8++Nu9/ynwV
- 5YNPvzFffP29+eIrl++S8nkpoH1PIiKPyHcyvonwZZTDCXxl+cF89W36fA0O6Xxj+THGd+nxbSq+/984
- DvnwnR+Hdb4HPyTnm+9+MJ9+dch88sW3cXx16LD54osvzcZLyJTXrDFbqTyj3HIZRTlEmUXZvRlTKsc3
- 7d4dLdeAyzrg8g+ghx3bt0f1sW3rVquXbVu2mq3XbTGbr91srtu82Zbv/v36/9CnT5/5nuwKI40bM25K
- j+49zAUXXGAP5sorrjSbNlFNtH69WbFihVmxbHmpsGbVarP35lvMVfR9/fr2NaPI2b/6+lvzxDMvmsef
- 3qfy3L5XBAd8eRa8kAe879LyEEHmN8bzcbxqnn/Rh/2JvLD/YFL2gZeS8Vo8L8d40Yf9B1LxrwRecnkl
- wss+HHg1fV5xORjh6edfMk8+tz+Op4h9Bw6az8kARo8ebXr36mXOX7jQ/PXxx9VymTNIO6upjEP8B14+
- YD7++GPz7jvvmssuu8xMnDhxlSe/YNOkcyYdP2bMmMNzZs82kyZOIifca95//33z1JNPmUsv2WhGUKhV
- 2lywZImpe2Zd07ljJ6qJvjfPvPSmeXr/6+YphYNvfODxfhyvuryeZ8R3u3mL5Zl4M5HXLB+a197S+dfb
- HyXldfCOP29YPo7xbjxv+vHex+atJLwN3v8kgXd8eNeH9z6QfBrlfebDJHwU4wNi36tvx/HiwQivvvm+
- +fqbQ4aauLasTZ40yUyaMFEtj7lm6uQp5rFHHzP//Oc/zRNPPGHuvOPPMIEfJ48dW+zJMLi0cMGCu5DJ
- sdS+2kiCP3iQnPLzz83TTz1tLt14qRk3Zmyps3L5CtOgfgPTvWs3CvV+NK+885k58PanKh999h1xyHyY
- ik81vs0Byn617xcgv5F8E5/78/Hn35uPv0jOJ8yX/nxqORzPV/F85sfXh83nSfiCoaaI5EsXanowWtME
- xDdJfozi1yRJbGpEOCR444MvLG+CD2O898lXtmyd1eMsW9bOnTHTTJ0yVS2PuWbi+Anmogsvomhglblw
- xUr73Y88/LBZdP75T3gyDC4NHz78IMQ/feo0s/maa83jFBY9++yz5p6/3GMzqx1QrsnIABThqLDgPMNg
- NIFmgtxXOqJ2SUfkTCqhMyUSPBAC1/ATfSEJn/sVXOEXggFo3HXnnWbmjBn7PRkGlyaMG/+tlsF84hrA
- q2QAryjiB5pQEoDICE2ApQF/n5qXFKRTo0siYi+h4AlN6JJ8iT5XwrediofJABTxg0IzgNtuvc1Mnjjp
- kCfD4NIECk8QASRj8MBBpl3bdqZdm7amrQLmY/mQQYPV7VOBDpMG9esb3IGwBvAuGcA7n6pYIQjhaKIq
- JGReXTEnw1foitjTEXyqWh5kK/pCED6jiR9EDaB7D1vWqPa1bXOtPOaDm/fsoTzMNJR+7kkxmDRm1Gg1
- g0zvnr1M+XLlTeVKlUxRUZEpLiq2VCuuFv0f87G8fPnypk+v3up+kpGxAWSDK8aSoO0/C2Ii9xE6IPFm
- LHZCE7hLMsGDQEUPMhB+OgbwfQEZwE27b7KdkIEbwOiRo9QMMvXr1TdVq1Q19erWM40aNjSNGzW2NGkc
- mQLMx3Ks16hhI3U/ycjEAGLiiBeQJrAgic8f59kHEqyGJmwVIepUlJboQU6E74k+U+EDjBNwhf+WR+EZ
- wG479WQYXHIz5gJh16hewzRt0sS0bNHCtG7VyrRp3YZC/wj4jPlYjvUaNmig7icZGRkAFfg4NEEVCm5e
- FVRBJ0OIORWpxA4SBA9IzOkIHmQj+mTCjxd9TPgpBwiBH+INgMUfNYAfQgNISGgCJAMGULNGTdOsaVPT
- qmUrauu3NR07dCA62ik+Yz6W16pZ0zSs30DdTzKWL1tmI42uXVIbgCoKQhNXUGj5ywgh4kzIheBTiT5e
- 8LkRfdLaPk3hM1L0UT4iA/g0YgA9unW3ZW3G9BlmyqTJannMBxhZiKknw+CSmzEXuGXtWrXseH2IvVPH
- jlRTdzPdu3WzUzYBLK9dq7ZtAmj7SYY0AIRpB8kAXiWxM+kYwBGFEG02RIUOSMB+qGIHJOR0BQ9yKnqg
- it4RvhC6JCp6IIR/2MMVPhMagE9yM+aCWyZn1qlDYX5L06F9ByvSnmf3NL169bJThO2Yj+VYr3Gj3BuA
- RBOECwRm0cSXa8T3aXkpCekKHahCZ0jEuRR8qYk+HeEL0UvhxxmAEH6hGsCuG48QA7AdfPXq2bZ+506d
- zNlnn2369+9vBuJpK5riM+ZjeX1aD52D2n6SkWsDOBKIEzcgoaaLKnKGBJyJ2EFGggck6ExEnyj8DEUP
- SNzJhH/4x/+zaOIHoQH4JDdjLgjp0Q/QpnVrK9A+vfuYoUOGmhHDh9spPmM+lsMAmjZuou4nGQkG8N7n
- th9AI04MmpA8NNGVJloeLDK/GaCKW0LCzUbsIB3Bg2SCB9mK3grfE7lG2qIHJPofBJr4QeEZwI126skw
- uITbgMlABIATNmLECDPr3Flm/nnzzZLFi83SCy6wU3zG/Anjx9vavwkZgLafZCxbCgOoZ7p27mIN4DUy
- AEQBLgkGQOx/45MjjpfS5c2S83I2vKVzQOPtZMSP4sToTj9elSiRn8ZBQoo/HQPAaFOUtRnTpmMknloe
- 8wEeKcbUk2Fwyc2YCyKAHt27mxkzZphxY8eaqVOmmNkk+PPmzjOzZ80206ZMNePHjScDmGDGjRtnbwdq
- +0lGnAHQRfIzAODWhE+/8v5RyT+z4VWND1SeyRHPpuJgdjyn8dqHCUjx/+hjAG8TeJ9EaABKcjPmgk49
- dPQNGjjInDNsmJlAYj93+kxrAOfOPNc+6YSnCfv162cGDxpEBtBU3U8yMjIACmElmngKHVW8mZCB0IEm
- 3GxRRe5CYs2GdEUvscL/3xiu8JlCM4Abdh5BEQBu8fXq2csMP+ccW9vjyUE8TDF96nQb+o8YPsIM6N/f
- tGvTpuRNgBQG4LZnVYEkQRNkumj7KxVUgTO6yIEm2JKiCtyFhJot2YgePO8hxc8GIIUvDeBwaACJCW/h
- SUajBg1NjRo1TKdOncywocPMmNFjbK0/edJkO5Z57JgxZviwc0x/igCKi4ttP4C2n2Qsu2Cp7Wjs0qlz
- SgNAp1VJDCBQVEG76OKWaELNFarAXUikJaGkopew8P/XI1H8X1rwejkYAKJZlDVUYii/WnnMBzuv32mn
- ngyDS27GXGAAlStVtr38CPER7qP3EsLHFLU/ngLs26ePKXNGmTwYgOypJgNQRVRI6CJOhibM0kAVtwYJ
- tCSoggck4FRoopew8C3/Jw0gIvzCNYDr7dSTYXDJzZgLhvZWqljJtGrZMtrORySAWh99AhA/av9ePXua
- M04/wz4cpO0nGa4B/Ov9z8kEPjOvkeBdcFtKmoAmoEJEE2C+UEXtBwkzF6iCByTaVGhC9wOij2EShG/5
- +Ev7otnQAJTkZswFD/fAAJo3a2ZFjpd3or0/aMBAM7D/APrcz75kEUODc24ACu69aK3A/1RRBZ0KEmUu
- UMUOSKTpoInbl3/FgOhJ+1Gk6N8RFJoBXL/jCDEACL9ixYqmcuXK9hYf3uPfgsATgC2bt7CfMb9unTNN
- WWoCYEiwtp9kZGIA7sCTz77+rmD5vCR8o/NFSmKvGE981Xh6fCX5NkMOHbZ8nQbffOfPty7fS34whzyk
- +K0BOMJn3g8NQE8jqQ2fDLwNCE/5lS9XzpQrG8P9XI4+16xRwzYJtP0kY+mSC+ii1LVDijM1gCMKb4Rc
- MuJHz2nEj6iTJBtWqxE31Bb8oKOOwGN+jAzBlffj/cB9etlj7xLXngekaBnes8gTwGs1vOQKH4aAiIDv
- AmC0KcratKlTbWe2Vh7zwY7tO+zUk2Fwyc2YH8OGDE2Jtl06uAbwOhnAv0jsGpooNCEVAlpek6MLm7EC
- ByTWTElX7EAVOkMizpXgQS5EL5MUfaxDMDYOIDQAJ7kZCwJpAHDp19//gsQOE0hEE4YupqDR8ulPtsKW
- JIgckGj9UAUuIQHnV/D/p4ud8USuJSzDOlL0ksIzgO126skwuORmLAgSDOADMgBEAQpawbd4ItLElS+i
- NTTQ8lhCVIEDEmsyVHG7kHgzETvIheBpVqLQmYi2fROWR9aFcURwhc+jAvlZgEIxgO3bQgOIkhMDOMJR
- hc2QQFOhilqDRJup0EE6YgclEjyIaFtNWGax60YEH7dv2rkUvaTwDGCbnXoyDC7xzxcFCf80WKeOqQ1A
- FYiCJrLSRMtDUkiMmaCKORkk2GyEDrIWO3BFacWaBCtt/4TlsfV10QPOkyZ+EDWAzpGfBsNvAuC5Fq08
- 5oNtW7fZqSfD4JKbsSBwDQA/7YSOQNsZ6KCJ40hFFW66kEhLInJGCjoZcSKXuIKMitWHiK59E5Zb7Pqx
- 0D7uO7zvjs/j/1o08QNrAIdDA0hIbsaCIJkBuKhiyBBNjOmg7SvnkChzJW4m3RqdiRO4xBWiFWkKrKyT
- J6wT28Zf8CA+ryT6H/+XjjFGgvi99wPyD4MUjgFstVNPhsElN2NBkJEBUGFOQBNS0Gj59NBEWlIyFTmQ
- worDFaBFitQHT8zJEq8T2y5DwRNS8JLDRPSFoB78ivBCM4CtWwrEADCmP2iWLCYDqHOm6dShI4knuQFo
- hf9oJxtxM1JMCbjCiyIFmgQr6eQJ61h4G/qTIHjg5Sk+/xHBu7W8FLwlarw/xv0ugIQNAKNNUdamTp5i
- xo8dp5bHfLDlui126skwuORmLAgSDIAu2OsfkOCZo8gArJhBQmHPnjhRa2iCs0hhJsETcTrJrsvb0Z9s
- ang/wQNX8ACde4wmfvDeJ18WmAFcZ6eeDINLbsaCIKUBCOILzNGNFEpSXIHFIQWZAk/A6Sa7Pm9Lf1Sx
- A5HX+GNMU/BAiF4K3kLCBhB4TPSfW96gMgPe/Tg0ADW5GQsC1wBwAfnCuegFqbCRAsgITUxxGAv9mxme
- eNNNvH5sH9mIHWQn+ATRC8HH80Oc6CUwgEO0TmgATnIzFgRxBvBjCgPwKWwFjcxzWmQpbIkn2kwSbxO/
- r9ITO0hL8CBB7BHBA34yEGhlBkQM4IeCMYDrNheIAZwzdJgJmiWLFttfFerYvoMtDMkMgMpdFCpnAlEw
- AyeWL/qYezyhZpN42/h9xkSuCh3QwaQUO6GJnElb7CBNwUvwmLBbXrjpiIeEYAAYbYqyNmXyZDNuzFi1
- POaDzddutlNPhsElN2NBkGAAH6VnAEcNUphESVN0X/QnRrzIVaGTmJMLHWRYs4M0avdsBW/5jjlsy4js
- M+LOY2sAtG5oAE5yMxYErgFgAAd34rikStHCnw70Jy20bX0ozRT3XfQnnjQEzpCQcyV0kCh0kLx2z5Xg
- gXyRiBS9pPAM4Fo79WQYXHIzFgRqBEBiZzIxgCMlWRFLrIg1EoUNVGEzJODUAgeeyDMVOiix2EHJBW/B
- 24W8twzFRP+Z5V8eeEcA9lkwBnBNgRiA9mKPfLP4/EWmTu06pkP79lS4kncCxgtBE4wPmuiyhf5khsyz
- jipkFxKthi5uIASepshBSYSerdhBNoKP5/s40UvYADDaFGUNr7UfO3qMWh7zwbVXX2OnngyDS27GgiDO
- AKgwpX0XIAs08aWLtr+sIHGmQhe0JDtxM6lE7it0QIJOJfSciR2QuP0ED+Q7CTXx401SeEMQvrdQDOCa
- 0ABiuAaQ7UAgTUj5RstXejiC9kSdqbCZOIGDLEXuL3SQWuggUewg89pdEzzzpQcLnuF3Sb5FBoA8hAbg
- JDdjQZBgAEmfBYgJw6IJp1AQ+XQFmi0JwgZx4gZpCByQiEtF6MARejKxJ63dUwje4r3N+Mtvvot7gayk
- 8Azgajv1ZBhccjMWBJkawNGCKmaQIGgQEzWjilpC4k1P4CC90J1JFDpIHcYnE7tf7Q78BO++Fl0TPyg4
- A7iqQAxg6OAhJmgWLTyfLkpt075de1tw0dbnXlwXVxjvfPyVeYcubgIf5xHt+335whf3fXaZkPAcfAKf
- R5F3VdKGromG20djIaMGmoFr19TFbb/H+JTEHM9nXx8yX4jfU4gXvrfeu5/aR4OtAXToaMsafhgUP22n
- lcd8cPWVV9mpJ8PgkpuxIHANAG39uEIgiKvhiOdf03+pJhXqr9j4oG1fOLyfyKvp80yO0H8X8b0Yr/jz
- dCYciPCUx6dfHhI/qHIoKngXdCwXkgFcFRpAjEwMwA1dszWAwoWEqUGCyhRNqCVBFzkgIachdlXQqRBi
- 1/jki2/NZ18disKCP+hgDYCaIqEBOMnNWBAkGACFivGhXwy0P2V79fnXqLBrgklAE1tJ0L4jCSSUXKGJ
- M1foAmdIyClEzqhiToUi8FTAAD4l4TOu8BkYAPoiCscArrRTT4bBJfyUV9Ccv3ChqV2LDKBtO2sAePkn
- t+M0A5A8l2Nx5RNNgKWNLmyGxOtCwkyGKuR0UMScDR9/TgZAzYBPv/zWfEJo4n+VwK1lGABGm6Ks4XcB
- R48cpZbHfHDlFVfYqSfD4JKbsSBINADRgeMQ3+scMQCtoP8U0UUtIdFmKHCgCjhdSKS5EvtTLzPvWp4k
- Pvr8Gyt8hgXvUmgGcMXloQFEcQ3gdarpbVtOMYDobSUPhNeaGI4GdBFrkFA1SIDpoAo3U0igORM6iIod
- RMSu8dFn35iPqRnAxET/SYR3IuDuRGgASnIzFgQLFzgRABmAG8Yx7j1khNJSDJqQ8oXMR8kgYfpBYssU
- VbDZQMLMqciZNMWu8WHUAL4xHxEseMkrhGsA+FWgYA3gcjv1ZBhccjMWBAvnL4gZwOHkBoCRYXLgCELA
- 9Pk2B2j7Tc2HEiq0JeUDPz7V+Nryfga8l5SvLO+CT5LzjgvGbVi+9McbMxH5hV8Nb2wDhfXueWbBu1gD
- oAqjYAxgU4EYwOCBg0zQzD9vPl2UWqZdm7b21l5SA/BGhh0NxI1u8yM66s3luyjuaDhfvo4Ru3fuB+6v
- H7IDbeRtNj9kT3ykU45BJ12sjZ4A1d5AhvHxkLAZR+wgzlgJTfyADaBDu/a2rI0fN86MGjFSLY/54PLL
- NtmpJ8PgkpuxIJg/77y0DUAXg4cmoCDQ8qYSE3HGYpaQYNMXNiMEno3IQU6FDkjUPkIHrthjERFFOB6u
- 8A+8HQG3ltFkjBrA2HFm5IgRannMB5tCA4hx3tx5cQaA23+yB1eiCuBogYTpoos3GRFhZ1J7M8kFDlKI
- HJCQ0xZ6CcWeADVPWPDxfGyHGEsDGAcDGB4aQGEawLtkAO+Q4BX0Qh+PJqR8oOWlZMTEHBU0IHFmSoK4
- QTYCByTi1CIHJOashQ4UkTMkdq3vggXvkmAAY8YGbACX2aknw+CSm7EgmDdnrjCAH2yo74ZyDIvAFUci
- mqBKC+3744mKF5D4coEqapAgbJCmuAGJN5ciBwlCB+kIHShCjxHpkMRPfwEp+pcFGFsiDWDsmDHBGsCl
- BWIAgwYMNEEzd/YcU6tmLdO2TZvUBkAF/GhBFa9GEkFnJGxAok1f3AyJOA2RA3+RA0XcElXgknixu+Cu
- Q1T0b8WDfiXcNWrfrp0taxgGjB/n1MpjPrhs46V26skwuORmLAjmzJqdtgHoYvDQxJNvtHz5Ei/ijITs
- QkLNXNgA99FJvNkKnCkNoacQe5SPY7jCZ2AAuPPCBjB61KhADeDS0ABizJ41K20DUAv/0QIJ0kUXbTo4
- wk5D3EAVN4gTOFCE7aKKW0JizkToQIhdG0OgiR8kGMDI0ABscjMWBLPOjTcAdPYl9uRG0At7IpqYShMt
- D7lFETQgcaaLKmwmG4EDVdguJOZMhQ6iYk8UukQOEnKF/5IH7ixJAxhFBjD8nHPU8pgPLt240U49GQaX
- BvYfYILm3Bkz6aLUNG1at7E/34TRXLIzR8IFnwURQxNNUMTnLU6wLiS+bFGF7KIIO21xA1XQGiTkFCIH
- yYWeeoSgFLsLRgey4F96Mx42gHZtYQA17RgAvJdfK4/5YOOGS+zUk2Fwyc1YEMQZwPc/2FCfO3MSDIAK
- 9dGCKthkJIiZyVDUjCpkP76y5ELkqWp0oAlcEve6sw9juMJnXAMYEbABXBIaQIyZ02fEGwCF+m4oxyQU
- fk0ohYSbX1+yFLELiTUzYTMk3jQFDlKLHOjijqII28VP6Axe9CGRot//5kdRDr4XGUYeNYDhwwM2gA12
- 6skwuORmLAhmZGAAaqE/GiFRZidkiVNrpyFsRhU4yETgjCJsl1RCB67YLR9EsC8jJaToo7xBBvDup3aY
- NhsA2v+hAVByMxYEM6ZNT9sA9IKuwyJKC0V86aJ9d+5RxAxIlJmgipqJEzdQxOyHImqNkgpdil0DYtco
- OANYXyAGMKBffxM006ZMNTVrkAG0am0NAL390c4cBy74LIh4NOEEQXy+4gTrQsIrCaqQXRRhZyrudAUO
- shY5SFPoIP514xFY8C864DkSPICF0aYoa8OGDbPv5dfKYz7YsG69nXoyDC65GQuCqZkYABXoowVVrKlI
- EDOToagZEmwm4gZxAi9lkQNN6JLoW6Pf+yxB+EyCAVDtPzRAA1gfGkCMqZOnxBsAxC46cyQJBV8TSaHg
- 5jUpWQpYg0SaqaiZdMXNqAIHORY5kELXQE+/Jn6A14NJA4D48VZerTzmg/UXr7NTT4bBJTdjQTBFNYCP
- VNQCfzRCYiyJkF0ShF0ScQMh8HRFDjRhu6Qj9ATejbDvjQ9VQgPwSf379jNBg3e016xRw7Ru2cr+egs6
- +9TeXEIr3MmQQso12vflA1XMgISZDqqgXUpR4CAq8iyFDtCx5xIn/NdjYHAZDKBt6za2rA0h8eOVXFp5
- zAfr1l5sp54Mg0tuxoIAb2hN1wBkgdfEUYjIPCeFhJcNqoA1HFFnImxGE7MfWYscpBC6xL4sxntfhBQ9
- eMEDg8vw0pWoAXjv5tPKYz64ODSAGBMdA0BnH7fd5K0coAngSEUVabooYgaaaNNFE3Ey0hE4UAUOMhA5
- kELXeIVgwbu4BjB40KCADWCtnXoyDC65GQsCvKHVzwBcVDEcKSiCddGEWRI04aZDnLizFTjIscgBhM5P
- h1rejqGJHyQYwMCADWBNaABRJowfLwzgMBkAxP6hilbIj3Y0gWZDgqhTCBuoopYIgacrcpCx0IXIGfmU
- KGMF/y/JB5ZX3v44zgAGDRxIUUBoAP/Wr09fEzR4Q2uN6jVMq5Yt7S+4JjMAt1A/g18GSoOEH+ssAdr+
- 88t7Oq+mj/qjIy6vxKP+WEgJecrybowDiTzpx8vvmgNvYdRobOQoC5553gMPkuG9jW1at7ZlDaPw8Diu
- Vh7zwdrVa+zUk2Fwyc1YEOAFjdIA9pMBxPXmCmTtBQP46763CprHC40XEnmsFHnU8mY8z2fHIwosfB4o
- xoJ3gQHg/Y1sAAP69w/UANasXm2nngyDS27GgmCsawBvkgFQKKfhhqhqIf+pQOLS0IRYWuRS4EATucpz
- EdyBYpr4n3+NDIDMIc4A+gVsAKtCA4gydvSYtA3AtjXR9vRQhVGIkFDSRRNaEORa3IwqaA1P5MmQt4hx
- lwhiB885IEqQBtC/X79ADWB1wRhA7z4maMaMGkUXpbpp1aKl/QHHF+liur24jNuZpBXcEH9UUedI2Iwq
- Zj8UUeu8oeLeJXKFz0QM4JAdbYqy1p/EN6j/ALU85oPVF62yU0+GwaW+lImgwQsacVFasgHQhYzvyY3h
- 9hRrhfynQETIPmIGJK7SQBVxKlRBa+giBw/7YIX/OiLGCM+99r4K+gdgAK09A+jbp4/tCNTKYz5YRQaA
- qSfD4JKbsSDAjzTGGwDEHt+by0RuDcXQxFEoxEQqISGlAwknn6jCTQdVyH7o4mY0gafCbSI+S2KPcjAG
- +gfiDIDK3YBADeAiO/VkGFxyMxYEeEGjNAD09stOnDgDeDv+XrBWmENIbCVFFXAqdGEzmoCz5SEP2zQU
- EaIUvcQ1gD69egdrABeGBhAFP9EUNYBDiQYgcQd+aBf7iOBVf56Jot/DTxf13n6aPJ0M514+E7mnn4ID
- Lvq9f+De89d4nkQf4wP1XGPsxH4yAPwaU5wB9Ouvlsd8cNGFF9qpJ8PgUl86EUEzYtg5pkY1MoDmLVIa
- AN/3/SnA97bj8G53ZQNEEEP0njPUntaQnWwpEe3xCPEhuktcJ69Xi7u4Io/yWgzu7EscNOUYQMtWtqz1
- PrunGdC3n1oe88FFK8kAaOrJMLgEJwya4WQA1YUBoDDIHlyJVrAT0IRT2mj5KAXiRewjZIYE6Ycq3lRk
- KG6QjsCBr8h9hO5HLHoCsWgIx8wGgLLWiwwAQ3HdspgvLly50k49GQaX3IwFAV7OmK4BJArAH01AuUb7
- Xn9IfOlCBTYdVKFmQhaiZuLEDTwxa8QL3BE5Xdd0Bc48e1Aiwn0hetmkwbmSBtDzrLODNYAVoQFEwcsZ
- 2QDwE87JDACF1hXBkUCC8HINiTdRzJkJGiSIGpBgk5FU3I7AcyFySVyoT7W+FL0E16CQDGBlaAAxMjWA
- owISp79oGV2kmZAgZkAiTYdEYQNP1CUUN4gXePoi1/hnFH8DwK83swGc3eMsOxJPK4/5YOXyFXbqyTC4
- 1KdnLxM0QwcNNtWLq5mWzZp7BkCFQd7PFWiF/GhFFa+EBJkJuqCBJ+YcCZtJR9wgTuBACFsSE7kj9FcE
- cr4gagAtWtqydnb3HmQAfdTymA9WLl9up54Mg0u9KRNBg5cz4KK0YAOgAqgVFJBQsDVhFApuXnOALmDG
- E68LiVFDE206xAvb/1ox6QocpCVyQrsNCXh993Yloq5Pv/rWDjdHWevRrbu9DaeVx3ywYtlyO/VkGFxy
- MxYE8QbwPRV0/0KlF/zkaEIqKdr3ZA4JMR1IdH5oAs2GRFED/RpIMhE38BU4gIA9pHiT4Y4t0NYBhWYA
- y0MDiIGnsqQBoNAnFCwPLrCaGAoZKbbSRBcyo4vYRTvvmphd4sXtCJxEmLXAgRB5skFD2j6ANYAvYwbQ
- vWu3gA1gmZ16MgwuYUBE0OChjOrFxaZF02bmKxgAFWS1EBJaoT/S0cXqoos1Fdo5tJBA0yFR1MATdQnF
- zaQjcBA3MhAoIwOjhhEF8961g8usATRvYcta965d7UAcrTzmg+VLyQBo6skwuORmLAgG9uvvGAAKX+x+
- rkQr5EcrqnAlJMZM0QUNPDFLSEAlETZIFDeIFzaTIHCgiPwfCbwTRdsvQKeqNIBuXboEawAXLLVTT4bB
- pV6UiaDB/dhqdFGawwC+/Z5qRZ8CSWiFWhVH0Gj5zAG6eBn9nFlIiBqaaNMhWsOmKW6QvcBBTOT/eCnC
- 3xX8vhOdsp+QAeBWM8paVzKAPmQAblnMF0vJADD1ZBhccjMWBP0yMAC94KePJqpM0PaZHdqx+UBCS4Ym
- 0GzwFzWIF5YkTtASEq5GSoGnELnG38D+d/R8EK4BdOnc2bbBtfKYD5ZecIGdejIMLrkZCwIMyEjXAGSB
- 1cRQiMg854PkQga6kCWaiKKQYP3IRNzZCDyetxPwyyvu3EgD6NypU7AGsKRQDOCss03QoC1WrQgG0NQa
- AAb84D5uKgM4WogKFqiCddFF60eCKFw8kfihixoIUZdA3CBdgT+h8WIMvzzjzlLEAJrbsta5IxkAxKiU
- x3ywdMkSO/VkGFxyMxYEfVwDoDa0JhSgFfDUuALKFdp35Q5VrH5QIU8XVxzxCDGXUNSMFTdIIW4mmcAl
- f03gLT3/hDWAL2IG0KlDx0AN4ILFBWIAeCgiaBCKFdNFaUYG8OU33yU1AFuINQEUOsh3DtBFq6ELQYo5
- W0EzurCBLmyQIG5A4tVIFDh4K8a+xN9eUI+ZgAF8/PnXpgUZAMpaRzIAhOBaecwHSxYvtlNPhsElN2NB
- gAcz2ADeei8yBiAuLGZISHphzx5NZIy2fumhF9wESHC5FLGLLmigC5pRhQ1ItBopxe0j8FTgGLTzBgN4
- 7Y13ogbQvl17tSzmiyWLCsUASHxBc1a37nRRikyzxk3MxImTzc13PWz+vv+thHAYF1IWVk0MhYbMb76I
- 1sxAFTPQhSxRBc2QYP3QxQ0SxZ2pwFOB78E5kOJ/4sU3za33PGqmTJ5qx5oUVy0y7dq0Vctivlh8/iI7
- 9WQYXHIzFgQwgKpVqphGDRqa9nRhunTsZLp27mK6hYTkiC6dOpsObduZJo0am6qVq4QGwMnNWFBgdFbt
- mrXoAjWyzwTgdk1ISK5AmWpK4q9Tq7apVKGi6dG1m1oO80XBGADa34UALlLFChVM5UqVTVHVqrZJAHDP
- NhnVq1XLGrwd1g/8hHS61KpZMyfUrlUr72j5yAbtvPihnW9Gu06ZoJURgDJVpXJlU6F8edOwQQO1DOaT
- RQvPt1NPhsElN2NBgkc08fuA+A33Du3a23u13bp0tctwpwADhvDk4NDBQ+yLRPGDImPHjDETxo83kydN
- MtOnTjPnzphp5syabc6bO8+cv2ChWbxosR12uWL5CvtrLGvXrDHr160zl27caC7ftMlcdeVV5tprrjFb
- rttitm/bbnZev9PsunGXuXnPzebWvbeaO26/3dx9113m3nvuMQ/cf7958IEHzUMPPmgefvhh8+gjj5jH
- HnvM/PXxx80TTzxh/v63v5l//OMf5qknnzRPPfWU+efT/zTPPPOMefbZZ83zzz1nXnjhBbNv3z6zf/9+
- 89JLL5mXX37ZvHLggHnllVfMwYMHzWuvvWZef/1188Ybb5g333zTvP3WW+btt98277zzjnnv3XfNe++9
- Z95//33z4QcfRPjwQ/PRRx9FwWcLLfuAwPrY7l0C+8H+3iKwf3wPvu81+t5XX33V5gP5Qb6QvxdffNHs
- e2Gfef75581zzz5njwPHg+PC8eE4cbw4bhw/zsOjjz5qHnn4EfPQQw/Z8/TAAw+Ye++919x9993mz3fc
- YW677TZzy803m927dpsbdt5gdmzfYbZu2Urn/1p7HS7fdLm9LhvWrzcXr11rVq9aZV+dtWzpMrNk8RJz
- Polm/rzzzNzZc8ysmefa6z1l0mR7/fEL06NGjjLDzxluhg4ZagYNHGSHmKPcoLMNZQqVDJqWbrkLAhwL
- pp4Mg0t4M0oh44ZOmeDee3XhBzNKivu2l2zBgKh8o+UjG7Tzkg3adZJo1zkdtLIVJKicMPVkGFxyMxYS
- ElL6FIwBnEWZCAkJyS8L5y+wU0+GwSU3YyEhIaXPgtAAQkJ+uiyYP99OPRkGlzAIJyQkJL8smHeenXoy
- DC65GQsJCSl9CsYAcO89JCQkv2A8A6aeDINLbsZCQkJKn/PmzbNTT4bBJYyJDgkJyS/nzZlrp54Mg0tu
- xkJCQkqfeaEBhIT8dCkYA8BPJIWEhOSXuXPm2Kknw+CSm7GQkJDSB080YurJMLjUvUtXExISkl/wyDqm
- ngyDS27GQkJCSp85s2bZqSfD4JKbsZCQkNKnYAwAb9wJCQnJL7PPnWWnngyDS9obVENCQkoXvNIMU0+G
- wSU3YyEhIaXPrJkz7dSTYXDJzVhISEjpg5fXYurJMLjkZiwkJKT0KRgDwGuSQ0JC8stMMgBMPRkGl7p2
- 6mxCQkLyy8zp0+3Uk2Fwyc1YSEhI6TNjWmgAISE/WUIDCAn5CTNj2jQ79WQYXMJPcYdkB19M7tm1wzy7
- Rp73xgsf5S/B4Oepoj9xdXYE/BRW9Oe18DNd3s919evdJ0r/Pn3jGNC3X5SB/fr7039AcrRtCLl/97sB
- 5yv602KM+IkwPj7+KS95HnBe+Jl4+2QcRsahY8w7l9p5PhqZPnWqnXoyDC65GTuSYTGiYLEAUQit0Dxh
- oRBb8ZAIBg8YaIYMHGSGDhpshg0ZYoYPHWZGDDvHjBw+woweMdKMGTnKjB012v7w5ISx48zE8ePNpPET
- zOSJk8zUSZPNtClT7A9UzqRwDrd1MLgDQzznzpptX/hw3lwwz74AcsF5ERaeN9/+Kgx+GgosWgjOtz8X
- DZYsAovNBYuXWJYuWWKWLbkgwgVLzfKly8yKZcxyy8rlKywXrpCsTEFsXWzL++J943vwfRbv+5EX5An5
- ixDJM/IfIXJMOD4LHSuOGccPcC5wTvAoLMbCz555rj1nM6fPsCHx9ClTzdTJU8wUOr84xzjXE8aNN+PH
- jjXjRo+x1wLXZNSIEWbkOcPtD8SeM2SovXa4hoPpWg7yzI0NjH//EIbEZqSVnXwzjY4VU0+GwSU3Yz8F
- uLbhGpvNwtbSXDNTwUHh4ZqPTQMFDAVNGgcKIQqjNQ8qmNJAxsBAqPDCRFCQYSQo1FEzmTDRFnYUepgK
- BGCNhQoIzAXCADAZCAXAbNhwrOmQkCxkPhnD23piBLx//j58txUo5cdCeUMekVfkmQWLY8Ex4dhwjDjW
- OPFKAdM5YhHDeKWQcW5hzq6YYeAcbXCEwZEFRxQcTWjXvZDA+cPUk2Fwyc1YSEhI6RMaQEjIT5hpFD1h
- 6skwuNS5Q0dzNNC2VWvTqEFDM4/amHfeeae555574vnLXyx/Ye6+23I3c9ddcdxF+3DBfi1//rPlz8wd
- d1juYG6/3XK75LbbLLcxt95quZXZuzeOvbfcksAtN98cx80Oe/bsieOmm24yexxu2r07jt0Ou3btSuDG
- G2+M44Ybbohj586dKtdff30c27ZtM+PHjTMN6tc31YqLVYqLijKiqGrVRKpEqFqliqlauYqpXKmSqVyx
- kimuWmRq16pty4pWhvLJFGo6YerJMLjkZuxIpEnDRrbT6ZtvvjFhKuz0f//3f+bTTz81q1etMtWKSPRp
- YMVO4k1FRPgkek/4VSpXNlUqVbbir1SxoqlQvrwpX7YsUc40pspCK0v5YsqkSXbqyTC45GbsSANuPmL4
- iDjx//jjjyEFCqf333/fzJwxw1SnWh/UqFbNUrN6dVOrRo2kYB0/ahDVAe2rWjEBAyFzgClUoUjAGkE5
- GEE50ybASAAdp5h6MgwudWrfwRzJ1Kxew7zwwgvmww8/NAcOHDBPPfWUefzxx0MKlL///e/m+eefNwcP
- HjR/+9vfrDirUQ1fg8SKa1m7Rk1zJoXpdWvXScmZtWvbdSV1mJq1TG3CmoJnBvguRAUcDWCZVqbyAe6Y
- YOrJMLjkZuxIo26dM83+/fvVwhZS2Lz22msU3lOYz+In4eJ61q9bzzSs38D2FTSol5r69erZbeqfWTdK
- vTPPNHWJM2l/MAREDjYqILNB8wAmgL4BrUzlg0mhAZScju3am2ZNm5onn3xSLWAhhQ0MoEY1CvlJ/BBp
- PRJrQxI02udNGzWOowlo2CgpjRs2tNuiM7gRGQj21YCMoR4ZgjUCiggQDdhIoBJFAhUq2jKkla3SZtKE
- CXbqyTC4hBNwpNKhbTvTvGkztXCFFD5oBtREu56EeSaF9KjFIV6IvVmTpr40bdLENG3sTxOisTWERrQ/
- iiTICKwJ0HegiVGdTAedhegcRBnSylZpM3HceDv1ZBhccjN2JGENoFloAEcqMADU/GjPS/E3p6iuZbPm
- KWkBqAKQYNvmZBIARoH9ISpANIBmAfoN0NxA52AVagr85A0AJ+BIAicNvacYRIFp61atzV//+teM0Aoj
- eOyxx0qMtt+jgXTPYSZYAyBB1q1DBkDt+EYUwjdt3JiE3cy0atHC0hI0J8GnANtYpBnYiCESDaBJgL4B
- RAG1EAUUVzNVq1Q17du0VctZaTN+7Dg79WQYXHIzVqhA7Bizj/H6DMaAd6L56E1m0MucrID6LXv00UdV
- HnnkEfPwww9nxAMPPGB58MEHLXIZ9qkZB6PlTVvviSeeyBicn3/84x9RcK7kuePz54fcVhqBzBefN/cY
- NF599VUrfoTnDevXt+14iLZV8xamTctWCbRu2dK0buFPKyIuQvBMwEYCtG80BdAxiLsD6HsorhqkAYy1
+ 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
- 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
+ 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
- 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
+ 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
- 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
+ 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
- +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
+ +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
- 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
+ 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
- Xprwiy++SAZQx96ea1S/vmnasJFpQRFAaxJwWxI4Y0VPwtawoqf1XawBkPhbkPjt4CGvCdCgXj1754Gb
- ANi/Vu5KG7wxClNPhsElt1YtNOCS0RcpdBJ481ATSAGz6N2CmQw8p7/52mtzxrXXXGOuIa6+6ipz5RVX
- mMs3XW42bdpkNl0GLjOXEXh+HyLhfGqGkArXWCRyPe38pILXl+dJW+7uk9dlE3BFL+8e7Nu3L6MmgF+t
- j9t/HPozHAFgYFBTzwDsXQA2gJoYC1Bs96uVu9IGr0XD1JNhcMnNWKGBMN++4015zxuW44ER3JbiGkaC
- mkcWYI0lixfbwiHHlGcLahgedcYPpWD8OQqafUGF92x65YoV7Zj0eXPnRWtMP6TQgCZ2F3cbFiebAY7b
- FSx/lvPkPthM5GdMsR5HH341vRQ9j5HA7UQ8xenfBEg0AMZvPIBmABgcxBEADCASAWAsQE07FgD7c8tc
- PigYA3BPbiGiXWymARUcFrsLCiYXZj9wEVi4JQWFGNgHUKiQAXzmEWgYgIJRaACdUCiQLKhcAyGzKLMB
- 547R5jHyO1j80gBc0TMYU4DHglMNBErV1ndBnxALH+BZERhA7DYgGQD6AKwBVLP7kWUtX+CFqJh6Mgwu
- uRkrRBAFAIhVzsfFw2OjXAC51gSa2DU0IWeLawD8fDpqmqqVvTfTVKhgqVgelI+rHSUQjzQ2iE3Lf6bI
- mj4Zchs+p67w5TzXANgEXNEz9957r3nuuefimwCKAchrreEaAIAJuAYQbQLEGUB1uw/3u/LBiEIxAPeE
- FhoQPUb98eue+fYfmgRdO3e2NQQKomsAjCzIGnhaLFegFkOIaXuaqWarU4tqfCpoeNcdv42mohV/+cjr
- qcqVU/OcLdrxpSIT0bPIecoCZ0Hz+xbxjkW8hxHzXNEDfk/js88+G4kA6HzZCKARGQC12TH+34b5Dq2A
- 94yARHteoLlt/0fE3wxPCJK52AiAro8dBwADKK5mDUMrd6XN8GHD7NSTYXDJzVihAQPoZX9tJjIK0KVj
- +w5qOxignSoLtYYm5GyRBnAmFWyMO8c4dDyBhgJnX1tFoT+GoSL8xNtpICSISwo5W+RxcZtdttVdXPFj
- H1LwLHrGDenx2Q3vpRGwCUjRA17+zDPPqAYAUbduRbW+YwCMawDANQAMAMKTookGUN/2AXATIDADGFoo
- BoATUMDgVk9XqvG7UY3PdKdoALcAcSuwfbt2cQVZ4hZ4DQ7bcwG/gEK2+fm2E9q5CD9R0PHiCoSjDck0
- 0rlPz+u4YJnfMONkYFs2SDYHaSR+BiDnu8j1ODpAre+KHvCbmDHcmpsA1gDUPgBdQBzuS7jjz/YB2FuA
- MIAmphk6eW0Trb69BvXstfEiAFpXK3elzfAhQ+3Uk2FwSTuRhQQuNvcBaOBRT4hddoAx6ZgA+hByhX09
- FQoYev+p1scrriLt/8irqe1baCpWsu3/CtQUqEBTKRxNTPgMQXHfAEcMDI5Bmh4fN/8vIwFGHj8LXjMA
- mQ98r/vdMo9yHQaRgSv6u/DKdQ8YF2rjSAQQuQ2IGhtteNv559EKQPQOtsPPwb4jgED4b/Ha/zAXfAf3
- AdSm5hkiAJiFVu5Km2FkAJh6MgwuuRkrRLg20MAFlYWdxa8Vdg0p4JLiGgD+R+HFfWgYVUOqhTCfH0TB
- 8+hufvhYskXui4XoihO1M08ZNhgO6WVYz+18d7lcT7bzZa3vij762woEohHXACDaSB9AzAAiJqAYgA39
- 0zAArwmA77AGQN8JA8CLQQIzgMFD7NSTYXBJhk2FCE4SHgfGY78RIo9Ttm3dxoK2N2ogrr2kANIBos0V
- LP7IfebILb86VNtA8PattEXF9ocr5HvrkXeZH669NeR6fsfL8wHX1FxDsxFwre0u4+UMC941AhY6BA6h
- S4G7Qpf/A/4xFfyACpoiOFd16ZxhPAdMkiOATAUviYg/8lYgtP8RAeAuDZoZtoPWa57VpOgMzQSt3JU2
- +A1ETD0ZBpfcjBUiXNsj5If4MUXnIIDwUIhlwZe4AnFxRVwSXAOoQQUMgsftP4T76PUvW6asKXtGGVPG
- AyKTNTEjhchCxf9SrK5o5f9yXTnP3b9mAG40IA2Aa3Up7ugvJAkgcExd0TP4tSREaBwBuAZga33HAKwJ
- uAYAqIykNAAbAUSuUdQAqocG8G8YL13o8LjvLh062g5ACSIELRQGbq2pgU67XIHOP3Rq2QKGAT/2bbcR
- I8DrqGEG/Es1DIvMhUUoDQLihEjZ2HgqIwSex6YhBY598P7wHVLYQAvjOZTn2p579XmeDPEhdvzsGcTN
- P4Hmip7BMlwjORAInaMQLIRhO/oAXV+JFb4QEuAOP4ZD/+a0L2sAJH50AvIIzbron+EIAIZD6+cb/AIy
- pp4Mg0vuySs0cNHd8f8SOL0rfCYoA7B3AMgA0MuM105B6Oj4w6/RlCtThqIALwKgKYtTImtqhsWPqbuc
- jQKi5nksaL82OcTq1t6uWLGcxQ2wrTQCuX/5Pfxd2MYVPeDfQ8T1iTcAigCEAWi9/aoBYNCPU2749p9t
- /3tNABul0XdFxgFEDABG4W6bD/Dz55h6MgwuwQELGbhk5/YdTOcO3jvV27WPgr4BdO7I2k6SVhOACkSu
- qI9wlgoXRgDWptofBlANtT4ZAEb/RX6SqiyZAEEGADOAqJFPAEHAuLTxDLKDk83NhfcDXHNgg2DcWp/F
- zEgh8/9sHK5puMLeu3evuQU/aEpTdxkvBzj/iJZgmqidbQRAYsU159tlVvgkcsaKnpZLrKiccgPxY198
- B6Bxg8gITVyjurg+GJcBA6D13G3zwaD+A+zUk2FwyYZKBQwuONf2MID26ANoG7sNiPvvXHMyED8KP2pK
- V/AuqBFyBYf/9pdoYABUwGwkUC3yizR4F71tAthRgRFkXqSY+bNcLgXOBicNL1l0IA2Axe9nACx4NgCO
- HBgZFchIAp95OT67psDAHADyjNoY/QConWEAECwEnbTGZ9F7REN+gf2NAIifQGSBzmIMArKvBsf18fpo
- YBTutvlgYP/+durJMLjkZqzQwAXmX1PRaNK4cZxwUDvKGlMKSEMTcra4BgDRQ/AY+otav8zpZ5gzTjvd
- /o9hwUDmRYobuAJng2OhuzV5MgFLNDHjf3c5LwMsdBkByCYDL8O6bAaY74pe/pw5jkUagH0teIIBxIu/
- 5AZATQDPABABhAaAE1DAIEzicNCCe8TA+wzBSRFlCkLCXIHwH+FlHQova1Hhqk4GUK1qkSmuUtX+Gk11
- 75dqiyrjNmBli6y15f/8mf/Xwnb8z7U7/ucannHXdw0CYmdxQ7QsYLTXpbgBt+G1mtydt2fPniiu6OUy
- HBfEiGuI8ByjI5s2irwUJBbypw73mzeJLzO27U/Ct51/NvyPPKhl79LQdbJNNDyRCQOg9eS2+WJg3352
- 6skwuGTbSgWOvZg+4LVOEAALBbCQUGtqopegQOQKFGRbuLz2JfoA8OYZ/ApNEQb+eCMC8T4A5BtwPmTt
- L2t6NyrQIgE2CL8wXwqfa3lZ08vaHkbABqDV9Nyhx4bg175nc3BFf9NNN1l2795t8yt/GSgyGCgyHNjW
- 9GnW9gnlxSszED8bAA8CwnWyEZoXAWA9d/t80J8MAFNPhsElOGChAyf3A7WsK3wAgUA4UuwaqLVzBWr/
- M6lg2dqFxF2T2v4ocNF+AJqHuwLcIViR4BocosUx8Geusf1qbylmFq4UqxSoW0NLcUrc5e42/NmvTQ9Y
- 5DfeeKPZtWtXgugZLMMx44UpMM361DZHRyAEi5rRt7anZRIrKLe8eGUGt/4AOgCtAaCZRtfpTDyl6UUA
- 1gACoH/vPnbqyTC4ZE9WgSOd0wW1KNeSXFOyCeB/TfQS1D65AgUZBRrtf67heRxAZOiv7ASsaG8Psvgx
- lQbA893anA0hlSnImp3NwTUIgP8xn9vw7npyXQmbCyPXw2eYBAzBFT0Dg8Dx4H48zhGMMnInIHIrUK3p
- gXP98VNibnmRNb8N/3EHgPYNA8BtR/uYtjXliAFkQ/cuXU2fnr0svXv2tL9ZwfQ6+2z7OxZ4fF3bFvQj
- A8DUk2Fwyc1YoYELjxPpBwoFd/zJ22P4P51OQE3I2RJvAMW2hkGhRqHD2HNb6+AXaewPU1a2ZiCFnEzM
- mrAZCFebz8tYpFqo7tbkmMrlsnZ3owUpeGkYbAbYjyt6cMMNN1hwvIiOXANACJ+O+K0BOOUFnX6uAeCp
- y3gDoCYADIAM2t0+XWAA/Cs/PDpVglvUeIeFti0oHAPACS9gECbxSECNOnQh3fvmDExBE70EYXuuQPiP
- /EQ6AIttAUOhQwGH8O24AJoP7LsByCjcmh6fEb3IJg03cbToQEYI0kCkYUgzYKRQJdo8AJGz+Dmkl6CG
- Z2Hv3LnTbN++3Vx//fUJouflAPmsXaOGNU2E5tGOQLruqcJ8gA5Dt7xw2M+hvw3/SfzRMQD0PfZ6sAE4
- 26cLRqHijdXtW7eJg9/6i2V4dF3bFvSlCAFTT4bBJXbLQgUu6XYESRDGySaAiyZ6CWrtXIGCzL3LuAWI
- JoD9MUoqcNWrVYuG/6j9+WEgV9QsZo4MWMiy9peilp9Z3Py/K3o3vPebL4WPz9oyjioYjixkpOCaAgNj
- AMg3OknRDMDtQJgleutx3ZPV8gCdhW5ZQfTAtT6H/hhhaGt/dAAiAmAD8Jpp7j7SBbW7fM8/P5vCIApA
- hKptC9B0wNSTYXBJOmYhApd0O4IkcHF0+HEPeeYGgE6o3IDbf6jR0PkHA0CHnw357XDgiqZCuXLeSMDI
- cOCyZ5xhRQ/xo4ZPZQCaEUjYFFjULFRX1Dw/Vaiv9d5zbc/gMy9310fN74p+x44dUZBPnB+YAN6ahI5A
- vLSjiX0mgIRu2/eoBOKJiJ/KhwCDiLjGj9b8ZCbR2p/Eb+/UkFFH79JQJKaVuXRA7S5/u4DhyLRd69Zk
- AJ3UbQH6CjD1ZBhcko5ZqMjawK0REE5DMCwkCcJnTfQS1Aa5AgULhRk9/hA9an28g47fAYDPxTAGAg8G
- AQ7zAecbx8JIQ2BgDAyH/GwCWo3O/2MZGwSvy/A2cjuthmfDYNPgJgGbgTQHGIArfDQNGHwXXo+Gc4Zz
- hFF6qLExIMiKXMEK3QHro7Z3Qc3PtT8bALf/YTzop9HKWzqgduenVPm5BQmiADy/om0L8Do7TD0ZBpca
- k0sWMmjr9ejS1Xa68BTui7ALA4EQdkPIcjRgJp2A2D5XIPy3Q4ApKsHgH/T8491zCDXxuwAI+fkpwHIU
- CZShCMBts/vV9Fy7AxYo1+b4XxOwW+O7sKi1SIBDeKB15Ml2vRbeg23btiWIHvPA1q1bbR7RhMM5s+MB
- SKC2H4Cuuxsyu+E9gz4DrO/CNT/X/pH2vzdIy2umoZ9GK3PpgNfURQenechnFhAFYPi6ti3oddZZdurJ
- MLjkZqwQkZ0nAKETL8OPbSB85iaA2xTQRC/RhJwtrgFg7D+iAUxx28++Cdg+ERh5IAjNADYA4NbqMAF8
- lrW+XN81C0y1Zalqes0oYAqYyuX4LA2Ca3zNINgYXNEzW7ZssfuDAUCM6AdA+9w1AD/hA1vT07ouEL9r
- ABz+59oApOgZjGHAsqQG0KNADEA7gYUECgHe/GvxngC0bwjybr9gHQidx/8ziALSMQAUvFwRCS0jnUu2
- xidzwhQhf2X6v2KFiAkw5cuVjxOsDMshUFeUQKu1gTuPhcpiZWQbXQpY1uwsYFnDy888z631NbHL/yF6
- 5rrrrrP5xbmCCeD82Y5AEiza7hC+rd19sO17B/xIDIf90dCf4M4/dNRGrxN9J4Zpu+UtXSDuZM8n4DkG
- vMJe2xacTQaAqSfD4FIjOlGFDrf3tWVVK1WyEYDsCJRooufoAMtRa+cK1P5cs9jx/iR69AVgABB+D8A+
- EERhPzjj9NMt3CZnuMZNJfp0Bc4i96upeRnWw3xtO+xP7pv377dPNhCYgit6sHnzZgvyjnY4oiScPwgU
- YuUoQAN9BFzDS6zoaTsJ1/xylKaNABCl0XdaA6DtsgEvp7GjFZ1Oab51iUgAj7Fr24Kzu3W3U0+GwSXt
- ZBYabADaMtSy3ATAVCI7AaXoGZgGaoNcgdoftRk6JnGbDy8Bgehtu99GABVsPwB+KASDgYAWynObX5uH
- 9ZM1Bfz2x9szmuGwsbiGwgbBQOxu7Q+4vS87/Fj0UvjX4gdUCewf56IaiRHnDrdL0Q/AUUB87R6r2V24
- pnex4rdtf6r9CdtMIwNAxyMiDxiAVqbSoRMZQNxAJdFJDRAF4GlVbVvQgwwAU0+GwaWGdKIKGbSTOlKo
- D8eVILzCFKPGIGZ0+Pk1A1zRMzAI1Aa5ArW/HeyDYb8keLwIBB2BED/a/ngc+PTTTjOnnXqqOe2UU80p
- J5+c0MbmGp9releMACLFVM6TSLFyLS5ra7emdv/nMB//s8hZ1Fyzu4KX4T//j7DfFT3ALycD5A/nxw6M
- 8poBECtqbojDCpzKgB9W6LSuBovf1v61I+M0bPhP1wkmjVuA1ah5ppW5dIC4EwYmUbOFQRSAl9Zo2wL8
- 2hWmngyDS27GjjSKqaZ94P77rbghdq3Gd0UPOEpwRVwSXAOwISa1VxHWIkJAbYdbf5EOwQq2CcA1MWpl
- WVO7HXWaUbBZpNM80AxCzud5wDUNNgI2Bq32B+5ymIAr+quvvjoK9u0aAGpqbgb4kZbwHQPAXQZupkUN
- gL5bK1PpIA1ACt92XtI1T2kAXbraqSfD4JL2aqtCAicp2rnitbMkuOi4X86ClwbA4ndFD/ieO4bt5go8
- Acg1S1Wq/WEC9g4BFT6EndYAiopirwcrVy5qACBd0YNky9gQYACuOUiDkKagRQgsaBY1z9MMAJ+xjP8H
- MABX+FdddVUU7A93S/DatBp0biBOtNPtsGCnHAArchK1BovdJdLzT9eAxG8HacEA6DrZdzNQ5aF9j4aN
- Okn0oFP79uYsqsF5UA8je/nxGe18+Qo7wPvDUGJMPRkGlzhDhQo6StAEsNAJROiP/yN3Adra20G4TSZr
- +VSil4NtNCFng3381zMAFGqE/zAA1Gy4E4CRgHgzUOw2YGQ0oCZ6iFgTNmBho/aWNTVqbrc25/myVmeR
- S6FLsbN4AYf9HOLL0F726rttfBn2u6K/8sorLVdccYX9PogQhulnAMlED/yED2zoD/ErBoDaPxMDwDh/
- 3NpLJnqMYrRQmWW4xse4AGzP+8NQYkw9GQaXOHQqZGTnCUA0wLdfULtyBKC18zXR8+g6AIFqoJBkCncs
- 4Q4ABI8OSoS40TsA0T6ASD/AqaecGhW1rKFdIQOutTmkB1LYrsClqBnMY2FrITuQtboreIns3Ze1/OWX
- Xx4FIndFz2A5vgPnyr4xyTMAiNU2A1jcPqCzEP0FfsQ9nwEQ/ttRmpG7NPY60fdq5c2Pbl26xMYgWMHr
- dya0ZgtGDsp98WdPhsElzVULCXZPYMdbt4o8bcUgxENvd6qaXopeDqlFjV1SUKCqU4ECNvwn4VeiNn7l
- ChWtmeBWoP15cPqM8B93B2w/ADUDuP3PzQCOANgY2BxY/GwObBBurS7FL0WdrKaXooc5yFrdrdm5Pc8h
- PcMm4K4nhS/NYdOmTdZg8Fo0DJSCIBFB4W3KHAVooFbHNfcD20pQ89snNFH7e8ZuDYCuE8xHK3N+oMmJ
- 8mdrdobKJ+CaXcLbIXpA/4DcFwYSYerJMLikuWshAfdsQycd4AkrhP62KUAn0A60aNjQCplDfhn6S+Gz
- 6Fn4fCvNFgYA8TpAuCpUeDT43j9u+9k3/pDY0fbHQKDI039U2/FzALQ+xge44b8UvFvrs9jdmt8VvxS6
- awRS6IBreAidO+xYvAyLXAvlgbueXNcVPbjsssss+G5ESTg3iJQgTo4C4mpzrxc/GTbMV4iOz6DrYGt/
- zwBwvXCttDKXDAwAkjW7rNWBuz7moZy687EfTD0ZBpc0ly0k4JKynRWFwjA4Lzrb7qD2situFrgmegaR
- A2oCtAUh3iIqEAAFIx605wm0631Am78K1fCVqXbHq77w3v/yFPajdkMkgCcB7fBfDATC24ExEOi006OC
- h6jTFTCH5kD+7xeiy9qckTU1kPPkfGkELHjU5ixmIGt4fL700kstEDmvw6IHvBx5474SCBLRFPpT7KAg
- Em8qrMi9Gt4F+0A0UYuED2Ttj0gtYtaV1DKXDNT+qNFlbQ60dQE6/rTl6EzE1JNhcMnNWKGBUAqhvx1u
- yb3/TT3ofxQEdJhB5Mlqeil6OUimCM/mU0FAQYRQK1OtDREjhI+nvKlEwpZA6DHKmQply1nRQ/xlqK0P
- oSMaQMhflQo4xgPYz7ZDEE2B8nGdfdwHICMArv05/Jc1vazJAcyASWYKmhFookdN7opeChhs3LjRsmHD
- hijr16+3XHLJJQmil9vgO3HO7XgJEiSEiUepuRmgkUz0gIXPuAZgozvP9GE8WplLBTqhUS61ZRJUVHho
- TVtWMAYgQ61CBCGUfPECg0cu8aMReNwWEQDE74b8LH5X9HJUHAQJgUPE6KGP/nKPJ2QGP+gZ44wIJHCI
- PMLpJHrU6qeZ09HBd/LJtqMP4/9xuw8/BYZaH52Ap3MnIOEnYClkLGOx8zxGEzML2a3BAc9jMwCuUWAf
- vL4M62Vo7zYDOArgSABI4bPoYQoM9s8GgBoZ4sQQXW4GyDA+FWjjYzuXyJuXvJF/XlNPNte0MpcOaIpq
- 8yUYK6DNBx3bt7dTT4bBJa0jpdBg13Tno0aAq6Om5Bqexc2da5roeTlAzW5Fb0PziIBZxC6nnXJKAhA6
- c8pJJ1lOPvFEc+IJJ9j/cbuPx/6fRvtl4Z9K22Id1wCkEAEEKv9noWcjegZC1ua5Imdx8/raNu720iBg
- Aq7wZaSA9RFxVaGICJEYxgPgnQkQLG7ZpQPX8H6gfHDoH28AGKlZMaFMpQtu6aE5oC0DGAiECFVbBtCP
- haknw+CS1qFSSMAl0dki3VOC2mMPtZ8hcBY1QOcapproeTmA+CFQe3vOEzSG6FohS0jUJ0lIvBAwc8Kf
- /hThj380fyL+ePzx9jP2he2xzR9p/u9///sIxx1njjv22IR2vl9nHUcE/D9qbVmLsyEAjg5cI5HraMah
- CdwVNpsC/sd8zQB4HtZzRc/NA4DlaAbhzgjukqBzFIOl+CUhfnCt7ge2RyQBbKcf1/6eAdgOWdscq6iW
- uXRBp7Q2H0Dg2nwGEQSmngyDS24bq9BAzY+nruCo0YctxPhrtPvQNpY1vBS4JnrZ646QHiH5qSefQiIn
- oZ7giftPEWLCjon7T8dHgMgtf4hw/B/+YI7//R/MH0jgANthsI8N/b0I4BT6Hmsw1hhOtp1/bq8+PvNt
- Prnc/Zys51+aimw+uIbgil7iih9wWM81O9fuLOp169bFtftd0WM5uPjii21zIc4AqGaGSNFbHxfG0+d0
- 4NpeYjv9RM1vO3xJ/Oi4tQaglLl0wa09lEF3PkcH7nyJNQ+aejIMLrkZKzRgAPw7cfaFC81B7EUMeI8c
- mgDc3sdUhv2a6HkILUD73T6Yg1qaxG9FT2L3E7oVeVToMbGDWO0eqeHxP2r+E7FfGyXEDOVP3ndAuCxo
- KWopbCluLVLgKEFGChA51/ZS5PgM8WOetpxFDzDfbxkbAmpxbvNzJyGbAotfip5Zu3atXV8aADpKIVTU
- 2JrANTTRS+LE7xgAmgBamcsEvPvPnYc3ArvzXHAnAVOS4L8L8p7+vXaNmm+5PamFBAwAJxRgEAbcNfLe
- NUxb2OYBNwFkRx+miAY00cuBNmjvI+yH+K3wWfCiRpe1epzQAYsdHIuwPhLaH/e7Y6MGcBKaEF6ND7B/
- 3g8LVhOzFLUb1nPonyy053Bdds7x/4DFCyGyiBnMY2SNrnXqaeG9n+iZNWvW2P2g4xVjJjBIim8HQrSa
- mAHfx08FRB8nfEf89k4PGY9W5jIBt/gQofJnDE6DsOU6GlgPU2jQh1JP9otq1qxZoZBNAB0lCP9duDmA
- k42a020CcMiviZ7B7Tbciz+FRGlraKqRIc6UwreiBxHRR4RPoieOJeFH+J059r9/Z35HYFsbTaAZQbU/
- vgvDgdHv4Ibubo0P3Brfr9bn2lzW2oBNQBO4FDLPk+u5wpfi5+0Y1whgAK7owerVqy3YPpUBuMJOBote
- Ig0gWvPTd+XKAABGqaIcwgxQQWnruAgD+A9B3kwg7ouqV69eESbAt1QKCXSUtKITHG0GODSoV8/cSCLx
- C/U10TP43Kd3H9tJh/D8jyTS46nmj4T2EfFHRe8I/zjgI/zfARI+1juRIoATYC4Eev/LYUAQFXr0DfTv
- 3z9au2PqitoVOEcAstbnGt9FMwI3fOcQHkDoLGRN4NII5HLMl1ECg/VgBq7owapVqyxYzgaAcRG4Jcuj
- AqOddinAukmB8FHzEzAYO96D4GHZWpnLBkSl7dq0UZdp4G3CmJL+/pP4mUfejEDuHF/4s2qVqlWqXa36
- 23IQRSEAl+QHMDCwAp0uCQZANaZW+8MEXNHLATaY4tHhSRMnmvZt25m2bduaNtQ2a0PtutZobrRqZWlF
- F6tVy5amJUMXuwU1PyyUh+bNm0do1sw0Y5o2NU2JJk2amCaNG5vGgPLeGK+2JkaNHGWjFgjTT6xStFK4
- 2jyAfUjxy33K9Vn0APPc75bI9bnpICMEjhpc8QNEAa7owUUXXWRBswC3STF4CuMwMCaAowCtNgeyRk8G
- ix61PuOO2MT4D63MZQOiUnQKass0EDVgStr7BfFzgo1AM4GcJrljK36PnxdVKKpSaCYAA+CXLQCEWPw+
- doCnsXbvijQBZDMAwARc0ctRdeCRRx4xBw4c8OXll1+O8tJLL6XN/v37LS+++GIC+/btMy+88II1KK7J
- ZW3uJ2AWuhRwMlFKYcraW4bo8n/+7Ibycjlw2/SYh/VlMwBgHVf0F154YZRUBuCKOhVR0UvyZACZgv4r
- TEl3vyT+C/oj3GhAajVnSYqfDQBfDCf6r8plKxfXKq72tnzWPUhgANEhwA54FxvuAtxA7WN5m49rf4T/
- mujlLTb0H+Bzsn4CLXpIts9U4DtlOC9Dev6fzYDn+5kCgAEkEz0LH0iBSvyE7obwsiZ3xb1y5UqzYsWK
- KPjsil4C88BoSoy0rFC2rB1eDXFCrOiwSwcpcD8gfG77x8QfaXZoZS4fIHrFlDR3DPEraM/ToBsN5NwE
- pAGw+PGlyAAyckyF00+vWbO42jtupoMABhB59r+Z7W11aVC3rhWTFC7EKoXpCpRvuQHttpvWAZfqthvy
- wHBPPf7n9Xk9CZZD0LJ210JugM9+y4BW+wPMk8thDNyud8WfqqYHbAjyfzYHaRBaje+CbTMxAFfY6RI1
- gLjaHwZQXi1z+QC3sDElvf2W+A3xawLRQKmbgGsA+DJ8Kb4cbvT/iGPLnHJK3erF1d7V7r0GCV7ugDcE
- 8wtB6pMBQGRc47tGkG/Ru7W6W8OjVndrcKAJG4Ll5a45+JkBCx2wCUD08n83QuDoQIsYABuGNA0YhGsK
- rhFgqgmfwTYYh4HBWBiRyc0ACBVNgVxhhU+g8w/75we8YABaGcsHLajsYkpaO474b093rgmwAUgTKFGS
- 4gey9seXw4l+R/yBOOHUE09sWqOo+D1+3VUQwCUxqsriPQos38aCoaFbSWAsehY+QIgehOil2Bk3fJcG
- wOL2EzALXYod/7umIJdjO/4f++L13fV4ufw+oBmF/MzmICMHNgRpAprwGaxT5tTT7ENUbhTAtXYuiIb+
- wKv9bQRA36WVuXyAJiympLM/Eb/3dOeagBYFlChJA+DwX9b+CEfgSMjUKUSZP/7xj21rVC163z2AfIGO
- EoRLqO1jIwG9/wn8YCTE6rb/AUwgF6KXws9E9PjM27rb8Dy/7dkwpGmwYUjTYFFDwFK0Wg3OtbdErsdi
- 9qvV8VlrFviBbTThMzCIfBqANQEygGgTIEADQP8Vpp7O2AQQCaAS5j4BbgpwhV1iE3ANgGt/fKGs/U8k
- TicqEMV//P3ve1SrUvUD+RqsfIGThNo/+iIQB9xLvY4EA7Gjg45DfibfopeixTLeJ7aV22A5i5drYln7
- sii59nXh5VLc6bbfWdiYYj7WS3cb3k7W/H5ge034DPoIzjj1VGsC6AuwdwPKlrMClaItKSx6Fj6LH+MP
- tDKXD3A7G1PSVxmCTYCbA6iMtaZAqRkAwg7b9if+SCBDZYkqRC2iwe9/97vBxVWqfuQeSD5ARyA/EuyC
- 20UQjxvqyxo/n6KXYJlcV1tP1upsBtIAWOAAwscyvxCd12dxSoFC2PjMZgF4uRS9K3Zuy0t4HcDbSeR8
- TfhM0AYAtPKWDzCuBVPSViXiDOJk4ngCGuSmAEcBbABsAlmnZAYgw/9TifJEMXEm0Yxo/7vf/nZ8caXK
- n/ALMPMFXgrhFwVgGcJfrZ3vmgFwjcA1CHe5NAk2B2kQXJu7YpbhOcM1Pbe5/drdLGggxeqKmsXMIk5W
- g0sBQ9QsbG6n45Ydg1t4y5cvT4m85SfBsmXLltn/XdG7nH7KqdYEynIzgEwAzQAp2pLCopfiR+2PNzhp
- 5S0f4HV2mHoaQ6SNiBuRNzcFZBTg9gVknaQBcAcgvoQNAF9+AoHMVCSqE/WJlkRnou9vf/ObuUWVKn/m
- HlBpAZfEGGu8gonfwMpgHp75hqjS7el3a30paolb+8sIgGt0rtVdA2Dxp1rPNQqsw+syvD7WcaMDNgnM
- YxPBZxkx8HLehqMEnsJAMJUGw0hTYfNgg3ANQ34GbBCa6CVBGYA1gYAMAP1aKNP4nzSFCBuRNiJuRAGI
- wBEFyL6AUjEAjgBkByAMgNv/CE1qEA2J1kR3YiAx7jfHHLOqqGLlL90DKw1wFyDxlWCRV4Lj6UDcTtlM
- QuGef3ewjnv/nz+zSbA5SMNABACzYNPgKAERAaZsIn5GwuYhDYTNQxqIK3SYAJuBjBhY2IwUMgMhc43v
- 1vQMlsnPfK++pLiilkbgLnPJhwGAQjIARK4o1/if9FSPqEYgCjiNQAWMSBx61JoBrOGskmYAsgngGkBN
- AgbQhuhBDCYmEvOP+dWvrqH21dd4wWKQ4CIiBHbFynAoL8N5TaxuTe8K1xWrW5NLZK2OMD+ZaBmudeU6
- 2nIO/7Ww3y/UhxC5NpbilOE8g/UkvC72w80JF5lP5BvHgGPGZ1fwLngLE163hpeo4j2L5cuUIXGWixNs
- LsA9/6jw+QWuhFamShM8NYjoFf8XV67yA2kJ+oLOKhPoC4D+0BEvmwF5MwA4DxwIToQmACKABgRHADCA
- ScRCYv2vf/nLm6tUrPSte5C5BC6JUN8PDKZAQdNqZTYENgXXINgUpBFo5iANgg2BcWtzNgfXIKQpcK0u
- 2/xsEBJX9BCbK3DUwFLUjBSo3CZd5PYa3McA80FecQzcDGFgBproJUEaANDKXGmBO1oYxMafiypX+Zx0
- 1ISoTVQlcEfgJAKdga4B8O3AnBoAdgoDQFuD7wJwJyBCEoQmCFHQB9CFGECMJ+YT64ltv/rlL++nSOA7
- eaC5BAbAD1Bo4IEP1FyoaTlklv+z2CSa6LjWZdx5XMOxKFmYXPsyLA4pXLemlmAetmHhca0tkaE2xM1T
- hmtrdLwxS5cuteB/WcNfcMEFZsmSJWmD9V3c5XL/Eny3XFcjCAOwJpBnA0A5hvgR+vM8aka/QxpqSqCj
- vYjgfgAYAG7J59wAkFwDQC+jHAeAL0cmkBm4Uh0CmexA9CFGE3OItcRW4rb/+q//+iu1s76XB5wvcBHn
- zpljBSLFwoKR8DwWHotQ1myyFtT24YoOuIUeuEJhFi9ebFm0aFGU888/37JgwQIzd+5cyxw6Jmb27Nlx
- U3cZM2vWrDgw77zzzrP7Tcb8+fMzAvsEnNd58+ZFpwwvk/nTgPjxVqayp6MP4Ay6nhgSfHQZACoq/Gio
- FD+oUqHSftJPIAbAJoCdYufcEYiwg/sB0B7R+gGGETOIFcQ1xM3EfWQCT5aGCcA5tdc9W3BCafnUqVOt
- kDTBubD4WHRg4cKFCWgFXhZwCRdmFp0rxHPPPddMnz7dTJs2LQryzEyZMsUyefJky6RJk8zEiRPN+PHj
- fRk3bpxl7NixUTAf2zHYD+8zW9y8TJgwIa19Y3k6WEFakVaIPgeQ62cBJLx/RitzuQJ3sNDeR4+/tpzM
- 7xLSTl6bAEjSANx+ALcZgLEAcCYeC9CJ6EeMJRYQG4jtxG3EvWQCf8+1CeAkuq8Dcxk7ZowVGZg5c6Zl
- xowZFm0egAghSvyPqRQoRMmFGAVeQxPiGMoHM3r06ARGjRoVZeTIkb7L8T+LOtk+eT8Mbyvh/QB8xnoj
- RoxIYPjw4Qmfk4F1OL9Afo/8Pm1biXzaT7v+RxIoq7J5igFsaPdr65IZvfWzn/2sI+kmr52ASK4BcDNA
- RgE8HJijAO4MbEV0I4YQU4klBFzsOmIXccuvfvnLByi0+rRi2XJfAvqf+SpTsH3VChW/bFiv/leN69X/
- snH9Bl82adT4i2ZE8yZNv2zZtBnR9Ksa1aofqlm9+nc1q9f4rhaoUZP5vrZHrZoRanvUqlHjMK172E49
- anrTakXFh4uKig5XKy4+XKN6jR9ov4cB/X+YIo4IWE4Ue0TnR/iBlsVB68SoWvQjoPm+0HoxvPUlVatU
- +bFKpUoxKlb6sVKFij9IKles9AMtkxxmKguqVK4cPR6GvteegyhVqkYprlL0fYQq35NwI1Sp+h0t86hi
- qVSuwndUwx+qEKVchLLlDpUvU/ZQuTJlDtE+viYxfE35/7pyhQpfUSTwFW1DRMpPScuQh9xHRnAe0qFS
- 2XJfWMqV/5yaHZ/R9OPK5Sp8WLlc+Xcqlq/wCq3zz/Jlyz1y0gknrCStoEmNSjWvtwE5uSagRQHakOBG
- RFviLGIoMZlAh+CFBDoFNxFXEdcSMAX0EYBtBCKFHQrXi/+xDta1/Pu///tWiiq2li1b9saKFSteX716
- 9R0NGzbc3q5du52dO3e+oWfPnrsHDhy4l2qg26nG+TPVzHdSeHoX1d53U03+F6rJ76EaHtxLEcB91CZ9
- EFDb+UEK1R8iHqHPj1IY/xjxOIX5/wMo7P8r8QQ1Bf5OzYV/UNPhKWrTP7106VLwDKD2/rMXXnjhc6tW
- rXphzZo1+9auXbufeJF4Caxbt+4lmn+A/j9w8cUXvwLo/1dpepCmr9HUQuv9i6av07r/ovmYvqGxevVq
- C/3/+kUXXfT6ypUrX6c8/GvZsmWvMStWrHiN5h0kXqU8vkLNnZcp/y8R++lY9tP0RVq2n5btA3RMz9P0
- OZo+h2PyeNo71ifpuHHsf6f9/I22fYL4K6B9PU5Np8cWLFjwKPEwnauH6bw9RDxA5/N+Opf30bnFOb+b
- oiNcm9soGriVooa9Q4cO3TtgwIBbevXqdUunTp1uadas2S01a9a8uXz58ntOPPHEG4877rjrf/3rX2/7
- xS9+sZVqyC1UBlCOtnjI8sRlKlpeMgD74H2mA/Lgx2YPlHk0iVH+LyPWEcuJecQUYiSBTnRoBzU/OtZR
- ++d1IBAn1wC0KIBHBaIpUI5AGwVtFZgA9wfggNApiAOcTZxHnE9cQCwlcALgdgAmAS7ygZdj3RV04cHy
- Y445ZmWlSpUuLi4uXlevXr31rVq12nDWWWddNmTIkCupYG0moW8lQe+gQncDFcRdVDB3UYHdTYV4DxXi
- PSSMm0kYt1DB30ufb6H5mN5Kn2+j+bcTd5CY/kxivguQoP9CAruHxHYv/X8fCe7+DRs2PEQ8fMkll4BH
- L7300sc2btwIHqf//+eyyy77H5o+Qfxt06ZNf6fP/7j88sufpP+Zp4l/Apr/DPEs8dwVV1zxvMcLYmq5
- 8sor91111VX7rr76auYFQNvZ5ZgSz1Menqe8PUfT5yhvz9L0GUDz/rl+/fqniCfp/ydp+ndAhvMEGc5f
- yWz+h47tf2j6OB3rY3SsjxIP0bE/SPMfpG3AA7TNfYC2uYf4Cy27m7a5i7a5k9a9E+eOwHm8lc7fXpxr
- +oxzvofMYxcZwna6PtvIELaSEW8hU95CJn0dmfbmwYMHX9ujR4+r6ZpeUadOnUsrVKiwjkxg1X//93+v
- +NWvfrXs5z//+VIqAyhHyzxQngD6nxguX3JeMngf6cDfmwzkD6DMIyJeRKB5PJeYRowj0G+GpjM0A/Ej
- koaO0MHOQ4G59ofuZPif06HAMrkmwFGA+2QgjwuACUQfDiJaEDgYOBoODmMEhhMwBPQRTCAwaAjjBhAp
- ABiFBpoT/D/WwzaT/uM//mMSRQATqVaYeuqpp06vUqXKTIoA5nTs2HFBv379llKNchHV9muopllHBrCB
- aqBLyAA2kgFspMJ3GYl/E6CCeTlxJRXYq6jgXk2F+BoqxJsBCWILsZUK+TZiBxV6sJNEdAMJ6kaa7iJh
- 7yZR7wEk4lsAiXDvtddee8fWrVv/TNwJtm3bdvf27dv/QtN76PO9xH30//3EA8yOHTsevP766x8iHgb0
- +ZGdO3c+CujzY4D28ShD2yTA6xGPYnuPh2n9h7B/+t4HaX/4jgdvvPFG/P/ADTfccD9N76fpfcQ9gD7f
- TdxF29xF2+JYbt+yZcttxK2bN2/ee911191C7CFuos+7iRvpmG+kzzvp/+uvueaaHcR2OhdgGxnSVmIL
- nafNdM5wbq8kI7iEDHcDGe96ui7rKGJYR6Zw8fTp09dSdLCajHwFGfoFLVu2XECRwJwyZcpM/8Mf/jDl
- N7/5zfj//M//HE9lALedAZcnLlMMly05LxW8n1yBvAHkE2UfGoAWoAlo42wCQ+nbEdANix+hP8bb5O1h
- IJlcA4DLuE0BaQKIBBCmoLMCzwigYxAHggNqS6CDsCsBQ+hJ9CZw27AvgZPQPwVYB2D9PnTh+1AI2Pu3
- v/1tv/r164+iUHE0hYzjzz777IkU9k+lwjOLhE+aP28RFawlJHQL1VLLSLgrqCCuooK4hqZriXUMFdQN
- VLteQoX8MhLTJuIKQCK4krja4xoSz7XEZhLKZhLJdSSkLZjSvC00byv9v43mbd+9e/cOsGvXrutpupO4
- gf6/8aabbgK7iN179uy5idbdRez2uInWo0U37WH27t17CyX82UvL9xA30zo3Y+qBeQz2dxN9TxRKu+h7
- buTvx5TyuoPyej2x4+abb76B2EnrXE/rbqf/t99666076f+dtD7yvp32uZ3WxXHh+Ozx4vhxLuj/awB9
- voaWX03Tq+nzlTS9AtA52wRo3UvJTMAlZA5r6HosIsNdROZ7PpnwQoq8FpAZzKfrNo8igtkUxc2gJsFk
- atKNI3MfTiY/6KSTTupH170PRQG9qAz0ovKAssTlicuUhMtOOrjb5grkC3lEfiF41PbQAypJ6AMhf2MC
- bX5Uoqj5IX73cWC0/WXtn/P2PyfemWsC3BTQTAAZhVshZEE0ACNAs6AugfYMbmmgYwOmgDAHIwjRXMAJ
- AHBAP3gdrN+GLjxoTeFgGwoPezRu3PhsMoA+vXv37j9y5MhhFEaOoPB/FBWmCVTAJpPop5Lgp5LAp1Ho
- PI1qqplUU80koZ/LUA03i8Q+hwrnXEAFdh5xHhXa+VSYF5AIFhGLSSQWEskSml5ALCWhLKNly4kV9P9K
- ml4IaNmFJKBVJIJVJIzVNF1Dn9fSdC3texV974X0vRfR967CfNpmHW2/HtD/Gxie54HPG8gM1jus81h/
- ++23bwR33XXXpXffffdGQP9fQmwAd95553piHcBnWr6ewP8XE2sBLVtzxx13gNVkQBcSK2nfK4jlgI5/
- GY7dOwcW75zg/CyiPJ5Px7zQYwEd83w65jk4zzj3dC2m0HWZQBHVeIq8xlHENZaMYAxFBaMXLVo0iqK2
- 4XQNh9D17E/G3pOaAl2rV6/egaK9tnTdW1P015LKAMoRlyUuTwyXmSCR+UH+kFeIHRqAFiB6aAMagVag
- GWgHGuKaH+Ln0F+2/SF+aFLW/jkzACRpAGwC+FLNBJBBdFDgPiWiATgXDgIRAW4V4sBwOwMHiegABwy3
- w9OEaDIAnAg/eB2sD+pRCFiPwv8Gffv27Ths2LBOVOt3pVr/LKrxe1OIP4Bql2EUao4gwY+kkHQUFbrR
- VPhGUyG0kOhGUqEcQwKbQAV2AhXYiTSdBKiAYzqZCv0UQLXh1D//+c/TSRjTSSgzBDPBX/7yl3OJWffe
- e+8c5r777pt9zz33zMb0/vvvt595GeZjfRLZTED7PddjFnPbbbdNJ6YhH8ibhPMpoWOaQsc0VYDPU8jM
- JtNxW+izXY8MzULmNpnEOY3MZyqg/6cQk0nI0+m4z6XvBzPp+GcAmof50+j8TMU5wbmh/E8jppLh2HNF
- eZkMaB82n7Q/TMcD+o7x9Hkszjvl5xwygJ7UFOhJ1+rsVatWnU0GcBYZwFnUVOsxZ86cbmTknYcPH96O
- mgGtmjZt2qyoqKjxySefXJ8igLoUAdgyQGVBliVZngqJaLklkF9oAFqAJqAN1PgsfETSaFZDS9AUtAWN
- cejv1/bPqfg5pWMCcCWEJmifIBqAY7ER4MEhHBDGDCCkgSHgQNFpCGPAgQO0d1LB62K7op///OdFxxxz
- THGFChXqUfuwLkUBDajd34La/a2p8LSj9mRHKkydqZ3enYygx9VXX92DjKAHhZ5nkRlYqBD2JEH0JCH0
- AlSw+1Ih7qdBNWF/MoEBPAVU8AcCEvcwEvZQTPn/Bx54YOjDDz88lMQ/+MEHHxxEoh8AaNlAQNv1o330
- xZRENgDQ91tIXINIQHHQ/MGAP5OgBrqQsOKg4+tHNW1voidDx92HjMBCy3sDioj6AprXn6HzMpDEOoAM
- sj+ZTl9A//cB9F29AM3rCejcnUVG052260b76crQOe9GNXxnj45U07enplhbMun2FJ21IeE3o5q/KYm/
- GTUBmtKyprSsKV27xrNmzWo0evTohkOGDKlHTYA6dH1rFBcXV//Tn/5UdOyxxxb94he/qIoyQGXBLUvp
- lqd8Issu8gugBdxGh+jRh4YaH8JHrY+IGm1+hP1c80vxy9A/LwbgmgA3B7hjEO0SOBQyy0YA98KBwAzQ
- PGBDwIEiQgAwB4ATkApeF2DbMygULEvir1qvXr2qLVu2LKKCUjxo0KAaFDbWHD9+fM3p06fXolCyNtUo
- tSkqqLN06dLaZAp1qLDVpsJYh6FCeCag2qguPmM5Pq9fv76OH2QqdRkSVl0q7GdStFEH4H+GhFCXBFKf
- xNGApy4ktoaAP1PToCEgcTbyg/bd8PLLL68PSHyNqUZv6kL7bKKB9V1o/UZkGo0ZfGZoG5s/EntjMp8m
- mAIypEb0uSFDptCAIaOoD+j4a1NeawFqhlnIlGvSua6+cuXKIhJ9Vbo2RXSNqs6fP79o7ty5Van9X5Ui
- uipDhw6t3KtXr0pt2rSpULt27XKnnXZaGTKAMnTdy1ATwJYBryxkWpbyTULZJaAFCB66gOgxtgaVJ4TP
- tT4qVk38Wu0PSiXJL3BNAJmBCXA0II0ABwAHw8HgoGAIOECYAg4WwBwyhbc94de//vWJxAnHH3/8Caef
- fvoJtWrVOqlRo0YnUYE5iQrOyVR7nExmcMqkSZMs1KY8mWqWUwAZw8mACt4pEqqZTnWhgnqaC9Vap7tQ
- jXaGH1QDlkkGCaNsPtC+W6LlndGOWTs32jl0zzOff74euDZ8nXDNcO1wDXEtcU1xbckATsS1xjXHtUcZ
- EOVBKysA4goKLT/R8ktAD9AFix56kcKHnrjNH4j4Ockv0kyAowEYATLMTQOYAQ6GDQHRAcCBsjlkCm8L
- 7P6oRjiWCoelWrVqxzZp0uTYdu3aHUcFyEJNgyhUsxwroYJ3HENNh2MVfp8OVKj/kClU+x0fJFqeUqEd
- u4Y8rxrudZDXiK8brmGDBg2OwzXFtT3llFOOw7Xm6+6VgXTKESLSdNG2l2jb+KFt75Zf6AL6gE6gF67x
- oSPoSXb4QXN5Fz8n+YVAMwI/M4CTARwcG4MLToAf2vq8L3AM1Qy/ofDwmKpVq/6mevXqx4C2bdtaunTp
- 8msXKmC/AtTO/HUuofD1mKMR7VhLAp9/97rwNQN8HXFNcW1xjXGtnWvvlgut/BQKMp+cf9aGK3roSKv1
- AxG/TPLLOUPSCDQzYHBwDA42W+R+QPQ7ypcvH4UKzi+YOnXq/DwZvXv3/kVI6aOde0ZeLyCvpbzGhLz2
- Wvk4EpDHwMflip6F7yd+EFhyMyKNgOGDkKYgzSEb3P0w8ruAzAfg/P0HFcSfhRQO4tq41wy411W79lo5
- KXTcY5DHyMceLbOEq7eCSW7GgMw4kBe0tHC/k9HyF1L4aNcSaNfeRYqpkNDyKnGPVTsvaaZ/+7f/D1rc
- c8+szkpgAAAAAElFTkSuQmCC
+ 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
+ TkSuQmCC
diff --git a/File_Format_Library/GUI/BFLYT/LayoutProperties.cs b/File_Format_Library/GUI/BFLYT/LayoutProperties.cs
index 263595d4..eaa7a0dd 100644
--- a/File_Format_Library/GUI/BFLYT/LayoutProperties.cs
+++ b/File_Format_Library/GUI/BFLYT/LayoutProperties.cs
@@ -23,6 +23,11 @@ namespace LayoutBXLYT
stPropertyGrid1.LoadProperty(null);
}
+ public void UpdateProperties()
+ {
+ stPropertyGrid1.UpdateProperties();
+ }
+
public void LoadProperties(BasePane prop, Action propChanged)
{
LoadPropertyTab("Pane", prop, propChanged);
diff --git a/File_Format_Library/GUI/BFLYT/LayoutViewer.cs b/File_Format_Library/GUI/BFLYT/LayoutViewer.cs
index c93a4557..2e58ef32 100644
--- a/File_Format_Library/GUI/BFLYT/LayoutViewer.cs
+++ b/File_Format_Library/GUI/BFLYT/LayoutViewer.cs
@@ -226,9 +226,9 @@ namespace LayoutBXLYT
pane.ColorBottomLeft.Color,
};
+ var mat = pane.GetMaterial();
if (pane.TexCoords.Length > 0)
{
- var mat = pane.GetMaterial();
string textureMap0 = "";
if (mat.TextureMaps.Count > 0)
textureMap0 = mat.GetTexture(0);
@@ -305,17 +305,18 @@ namespace LayoutBXLYT
pane.ColorBottomLeft.Color,
};
+ var mat = pane.Material;
+
if (pane.TexCoords.Length > 0)
{
- var mat = pane.Material;
string textureMap0 = "";
if (mat.TextureMaps.Length > 0)
textureMap0 = mat.GetTexture(0);
if (Textures.ContainsKey(textureMap0))
BindGLTexture(mat.TextureMaps[0], Textures[textureMap0]);
- else
- GL.BindTexture(TextureTarget.Texture2D, RenderTools.uvTestPattern.RenderableTex.TexID);
+ // else
+ // GL.BindTexture(TextureTarget.Texture2D, RenderTools.uvTestPattern.RenderableTex.TexID);
TexCoords = new Vector2[] {
pane.TexCoords[0].TopLeft.ToTKVector2(),
@@ -335,7 +336,7 @@ namespace LayoutBXLYT
if (useLines)
{
GL.Begin(PrimitiveType.LineLoop);
- GL.Color3(colors[0]);
+ GL.Color4(colors[0]);
GL.Vertex2(rect.LeftPoint, rect.BottomPoint);
GL.Vertex2(rect.RightPoint, rect.BottomPoint);
GL.Vertex2(rect.RightPoint, rect.TopPoint);
@@ -345,16 +346,16 @@ namespace LayoutBXLYT
else
{
GL.Begin(PrimitiveType.Quads);
- GL.Color3(colors[0]);
+ GL.Color4(colors[0]);
GL.TexCoord2(texCoords[0]);
GL.Vertex2(rect.LeftPoint, rect.BottomPoint);
- GL.Color3(colors[1]);
+ GL.Color4(colors[1]);
GL.TexCoord2(texCoords[1]);
GL.Vertex2(rect.RightPoint, rect.BottomPoint);
- GL.Color3(colors[2]);
+ GL.Color4(colors[2]);
GL.TexCoord2(texCoords[2]);
GL.Vertex2(rect.RightPoint, rect.TopPoint);
- GL.Color3(colors[3]);
+ GL.Color4(colors[3]);
GL.TexCoord2(texCoords[3]);
GL.Vertex2(rect.LeftPoint, rect.TopPoint);
GL.End();
diff --git a/Switch_Toolbox_Library/Forms/ColorSelector.cs b/Switch_Toolbox_Library/Forms/ColorSelector.cs
index f49efca7..9a497f24 100644
--- a/Switch_Toolbox_Library/Forms/ColorSelector.cs
+++ b/Switch_Toolbox_Library/Forms/ColorSelector.cs
@@ -23,6 +23,16 @@ namespace Toolbox.Library.Forms
private HSVPixel _hsv = new HSVPixel(0, 100, 100);
+ public Color NewColor
+ {
+ get
+ {
+ return Color.FromArgb(Alpha, Color);
+ }
+ }
+
+ public STColor8 Color8 { get; set; }
+
///
/// The color the dialog gets and sets.
///
@@ -39,6 +49,14 @@ namespace Toolbox.Library.Forms
}
}
+ public Color AlphaColor
+ {
+ get
+ {
+ return Color.FromArgb(Alpha, Alpha, Alpha);
+ }
+ }
+
private int _alpha;
public int Alpha
{
@@ -111,7 +129,7 @@ namespace Toolbox.Library.Forms
| System.Windows.Forms.AnchorStyles.Left)));
this.colorSquare.Location = new System.Drawing.Point(3, 3);
this.colorSquare.Name = "colorSquare";
- this.colorSquare.Size = new System.Drawing.Size(180, 180);
+ this.colorSquare.Size = new System.Drawing.Size(180, 235);
this.colorSquare.TabIndex = 0;
this.colorSquare.Paint += new System.Windows.Forms.PaintEventHandler(this.colorSquare_Paint);
this.colorSquare.MouseDown += new System.Windows.Forms.MouseEventHandler(this.colorSquare_MouseDown);
@@ -124,7 +142,7 @@ namespace Toolbox.Library.Forms
| System.Windows.Forms.AnchorStyles.Left)));
this.huePanel.Location = new System.Drawing.Point(189, 3);
this.huePanel.Name = "huePanel";
- this.huePanel.Size = new System.Drawing.Size(16, 180);
+ this.huePanel.Size = new System.Drawing.Size(24, 235);
this.huePanel.TabIndex = 1;
this.huePanel.Paint += new System.Windows.Forms.PaintEventHandler(this.huePanel_Paint);
this.huePanel.MouseDown += new System.Windows.Forms.MouseEventHandler(this.huePanel_MouseDown);
@@ -135,9 +153,9 @@ namespace Toolbox.Library.Forms
//
this.alphaPanel.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
| System.Windows.Forms.AnchorStyles.Left)));
- this.alphaPanel.Location = new System.Drawing.Point(208, 3);
+ this.alphaPanel.Location = new System.Drawing.Point(219, 3);
this.alphaPanel.Name = "alphaPanel";
- this.alphaPanel.Size = new System.Drawing.Size(16, 180);
+ this.alphaPanel.Size = new System.Drawing.Size(24, 235);
this.alphaPanel.TabIndex = 2;
this.alphaPanel.Paint += new System.Windows.Forms.PaintEventHandler(this.alphaPanel_Paint);
this.alphaPanel.MouseDown += new System.Windows.Forms.MouseEventHandler(this.alphaPanel_MouseDown);
@@ -150,7 +168,7 @@ namespace Toolbox.Library.Forms
this.Controls.Add(this.huePanel);
this.Controls.Add(this.colorSquare);
this.Name = "ColorSelector";
- this.Size = new System.Drawing.Size(227, 188);
+ this.Size = new System.Drawing.Size(245, 243);
this.MouseMove += new System.Windows.Forms.MouseEventHandler(this.ColorSelector_MouseMove);
this.ResumeLayout(false);
@@ -310,6 +328,8 @@ namespace Toolbox.Library.Forms
protected virtual void OnColorChanged(bool hsvToRgb)
{
+ Color8 = new STColor8(NewColor);
+
colorSquare.Invalidate();
huePanel.Invalidate();
diff --git a/Switch_Toolbox_Library/Forms/Custom/STPropertyGrid.cs b/Switch_Toolbox_Library/Forms/Custom/STPropertyGrid.cs
index 0392499b..25649600 100644
--- a/Switch_Toolbox_Library/Forms/Custom/STPropertyGrid.cs
+++ b/Switch_Toolbox_Library/Forms/Custom/STPropertyGrid.cs
@@ -58,8 +58,15 @@ namespace Toolbox.Library.Forms
propertyGrid1.SelectedObject = selectedObject;
}
+ public void UpdateProperties()
+ {
+ propertyGrid1.Invalidate();
+ }
+
private void propertyGrid1_PropertyValueChanged(object s, PropertyValueChangedEventArgs e)
{
+ Console.WriteLine("PropertyValueChanged");
+
OnPropertyChanged?.Invoke();
OnPropertyChanged2?.Invoke();
}
diff --git a/Switch_Toolbox_Library/Forms/Dialogs/STColorDialog.Designer.cs b/Switch_Toolbox_Library/Forms/Dialogs/STColorDialog.Designer.cs
index c28598a1..7862da63 100644
--- a/Switch_Toolbox_Library/Forms/Dialogs/STColorDialog.Designer.cs
+++ b/Switch_Toolbox_Library/Forms/Dialogs/STColorDialog.Designer.cs
@@ -28,11 +28,55 @@
///
private void InitializeComponent()
{
- this.colorSelector1 = new Toolbox.Library.Forms.ColorSelector();
this.stPanel1 = new Toolbox.Library.Forms.STPanel();
+ this.alphaPB = new System.Windows.Forms.PictureBox();
+ this.colorPB = new System.Windows.Forms.PictureBox();
+ this.colorSelector1 = new Toolbox.Library.Forms.ColorSelector();
+ this.stButton1 = new Toolbox.Library.Forms.STButton();
+ this.numericUpDownUint1 = new Toolbox.Library.Forms.NumericUpDownUint();
+ this.numericUpDownUint2 = new Toolbox.Library.Forms.NumericUpDownUint();
+ this.numericUpDownUint3 = new Toolbox.Library.Forms.NumericUpDownUint();
this.stPanel1.SuspendLayout();
+ ((System.ComponentModel.ISupportInitialize)(this.alphaPB)).BeginInit();
+ ((System.ComponentModel.ISupportInitialize)(this.colorPB)).BeginInit();
+ ((System.ComponentModel.ISupportInitialize)(this.numericUpDownUint1)).BeginInit();
+ ((System.ComponentModel.ISupportInitialize)(this.numericUpDownUint2)).BeginInit();
+ ((System.ComponentModel.ISupportInitialize)(this.numericUpDownUint3)).BeginInit();
this.SuspendLayout();
//
+ // stPanel1
+ //
+ this.stPanel1.Controls.Add(this.numericUpDownUint3);
+ this.stPanel1.Controls.Add(this.numericUpDownUint2);
+ this.stPanel1.Controls.Add(this.numericUpDownUint1);
+ this.stPanel1.Controls.Add(this.stButton1);
+ this.stPanel1.Controls.Add(this.alphaPB);
+ this.stPanel1.Controls.Add(this.colorPB);
+ this.stPanel1.Controls.Add(this.colorSelector1);
+ this.stPanel1.Dock = System.Windows.Forms.DockStyle.Fill;
+ this.stPanel1.Location = new System.Drawing.Point(0, 0);
+ this.stPanel1.Name = "stPanel1";
+ this.stPanel1.Size = new System.Drawing.Size(350, 259);
+ this.stPanel1.TabIndex = 1;
+ //
+ // alphaPB
+ //
+ this.alphaPB.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
+ this.alphaPB.Location = new System.Drawing.Point(257, 48);
+ this.alphaPB.Name = "alphaPB";
+ this.alphaPB.Size = new System.Drawing.Size(39, 39);
+ this.alphaPB.TabIndex = 2;
+ this.alphaPB.TabStop = false;
+ //
+ // colorPB
+ //
+ this.colorPB.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
+ this.colorPB.Location = new System.Drawing.Point(257, 3);
+ this.colorPB.Name = "colorPB";
+ this.colorPB.Size = new System.Drawing.Size(39, 39);
+ this.colorPB.TabIndex = 1;
+ this.colorPB.TabStop = false;
+ //
// colorSelector1
//
this.colorSelector1.Alpha = 0;
@@ -44,26 +88,70 @@
this.colorSelector1.DisplayColor = true;
this.colorSelector1.Location = new System.Drawing.Point(3, 3);
this.colorSelector1.Name = "colorSelector1";
- this.colorSelector1.Size = new System.Drawing.Size(278, 258);
+ this.colorSelector1.Size = new System.Drawing.Size(248, 256);
this.colorSelector1.TabIndex = 0;
+ this.colorSelector1.ColorChanged += new System.EventHandler(this.colorSelector1_ColorChanged);
//
- // stPanel1
+ // stButton1
//
- this.stPanel1.Controls.Add(this.colorSelector1);
- this.stPanel1.Dock = System.Windows.Forms.DockStyle.Fill;
- this.stPanel1.Location = new System.Drawing.Point(0, 0);
- this.stPanel1.Name = "stPanel1";
- this.stPanel1.Size = new System.Drawing.Size(284, 261);
- this.stPanel1.TabIndex = 1;
+ this.stButton1.DialogResult = System.Windows.Forms.DialogResult.OK;
+ this.stButton1.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
+ this.stButton1.Location = new System.Drawing.Point(272, 233);
+ this.stButton1.Name = "stButton1";
+ this.stButton1.Size = new System.Drawing.Size(75, 23);
+ this.stButton1.TabIndex = 3;
+ this.stButton1.Text = "Ok";
+ this.stButton1.UseVisualStyleBackColor = false;
+ //
+ // numericUpDownUint1
+ //
+ this.numericUpDownUint1.Location = new System.Drawing.Point(257, 107);
+ this.numericUpDownUint1.Maximum = new decimal(new int[] {
+ 255,
+ 0,
+ 0,
+ 0});
+ this.numericUpDownUint1.Name = "numericUpDownUint1";
+ this.numericUpDownUint1.Size = new System.Drawing.Size(93, 20);
+ this.numericUpDownUint1.TabIndex = 4;
+ //
+ // numericUpDownUint2
+ //
+ this.numericUpDownUint2.Location = new System.Drawing.Point(257, 133);
+ this.numericUpDownUint2.Maximum = new decimal(new int[] {
+ 255,
+ 0,
+ 0,
+ 0});
+ this.numericUpDownUint2.Name = "numericUpDownUint2";
+ this.numericUpDownUint2.Size = new System.Drawing.Size(93, 20);
+ this.numericUpDownUint2.TabIndex = 5;
+ //
+ // numericUpDownUint3
+ //
+ this.numericUpDownUint3.Location = new System.Drawing.Point(257, 159);
+ this.numericUpDownUint3.Maximum = new decimal(new int[] {
+ 255,
+ 0,
+ 0,
+ 0});
+ this.numericUpDownUint3.Name = "numericUpDownUint3";
+ this.numericUpDownUint3.Size = new System.Drawing.Size(93, 20);
+ this.numericUpDownUint3.TabIndex = 6;
//
// STColorDialog
//
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
- this.ClientSize = new System.Drawing.Size(284, 261);
+ this.ClientSize = new System.Drawing.Size(350, 259);
this.Controls.Add(this.stPanel1);
this.Name = "STColorDialog";
this.stPanel1.ResumeLayout(false);
+ ((System.ComponentModel.ISupportInitialize)(this.alphaPB)).EndInit();
+ ((System.ComponentModel.ISupportInitialize)(this.colorPB)).EndInit();
+ ((System.ComponentModel.ISupportInitialize)(this.numericUpDownUint1)).EndInit();
+ ((System.ComponentModel.ISupportInitialize)(this.numericUpDownUint2)).EndInit();
+ ((System.ComponentModel.ISupportInitialize)(this.numericUpDownUint3)).EndInit();
this.ResumeLayout(false);
}
@@ -72,5 +160,11 @@
private ColorSelector colorSelector1;
private STPanel stPanel1;
+ private System.Windows.Forms.PictureBox colorPB;
+ private System.Windows.Forms.PictureBox alphaPB;
+ private STButton stButton1;
+ private NumericUpDownUint numericUpDownUint3;
+ private NumericUpDownUint numericUpDownUint2;
+ private NumericUpDownUint numericUpDownUint1;
}
}
diff --git a/Switch_Toolbox_Library/Forms/Dialogs/STColorDialog.cs b/Switch_Toolbox_Library/Forms/Dialogs/STColorDialog.cs
index 82e295b6..167e59e1 100644
--- a/Switch_Toolbox_Library/Forms/Dialogs/STColorDialog.cs
+++ b/Switch_Toolbox_Library/Forms/Dialogs/STColorDialog.cs
@@ -12,11 +12,16 @@ namespace Toolbox.Library.Forms
{
public partial class STColorDialog : Form
{
+ public EventHandler ColorChanged;
+
public STColorDialog(Color color)
{
InitializeComponent();
+ Text = "Color Dialog";
colorSelector1.Color = color;
+ colorSelector1.DisplayAlpha = true;
+ colorSelector1.Alpha = color.A;
}
public Color NewColor
@@ -25,6 +30,19 @@ namespace Toolbox.Library.Forms
{
return colorSelector1.Color;
}
+ set
+ {
+ colorSelector1.Color = value;
+ }
+ }
+
+ private void colorSelector1_ColorChanged(object sender, EventArgs e)
+ {
+ colorPB.BackColor = NewColor;
+ alphaPB.BackColor = colorSelector1.AlphaColor;
+
+ if (ColorChanged != null)
+ ColorChanged.Invoke(sender, e);
}
}
}
diff --git a/Switch_Toolbox_Library/Forms/Editors/TextEditor/TextEditor.cs b/Switch_Toolbox_Library/Forms/Editors/TextEditor/TextEditor.cs
index 8eb04871..a3e0f7ad 100644
--- a/Switch_Toolbox_Library/Forms/Editors/TextEditor/TextEditor.cs
+++ b/Switch_Toolbox_Library/Forms/Editors/TextEditor/TextEditor.cs
@@ -186,6 +186,8 @@ namespace Toolbox.Library.Forms
}
private void InitSyntaxColoring() {
+ if (scintilla1 == null || scintilla1.IsDisposed || scintilla1.Disposing)
+ return;
scintilla1.StyleResetDefault();
scintilla1.Styles[Style.Default].Font = "Consolas";
diff --git a/Switch_Toolbox_Library/IO/Colors/ColorEditor.cs b/Switch_Toolbox_Library/IO/Colors/ColorEditor.cs
index 8f32e0c9..48f47b50 100644
--- a/Switch_Toolbox_Library/IO/Colors/ColorEditor.cs
+++ b/Switch_Toolbox_Library/IO/Colors/ColorEditor.cs
@@ -5,6 +5,7 @@ using System.Drawing.Design;
using System.Windows.Forms;
using System.Windows.Forms.Design;
using Toolbox.Library.Forms;
+using System.Drawing.Drawing2D;
namespace Toolbox.Library.IO
{
@@ -12,60 +13,52 @@ namespace Toolbox.Library.IO
{
public override UITypeEditorEditStyle GetEditStyle(ITypeDescriptorContext context)
{
- return UITypeEditorEditStyle.Modal;
+ return UITypeEditorEditStyle.DropDown;
}
public override object EditValue(ITypeDescriptorContext context, IServiceProvider provider, object value)
{
- if (value.GetType() != typeof(STColor8) &&
+ if (value.GetType() != typeof(STColor8) &&
value.GetType() != typeof(STColor16) &&
value.GetType() != typeof(STColor))
{
return value;
}
- IWindowsFormsEditorService svc = (IWindowsFormsEditorService)provider.GetService(typeof(IWindowsFormsEditorService));
+ IWindowsFormsEditorService frmsvr = (IWindowsFormsEditorService)provider.GetService(typeof(IWindowsFormsEditorService));
+ if (frmsvr == null)
+ return null;
- if (svc != null)
- {
- Color color = Color.White;
- if (value is STColor8)
- color = ((STColor8)value).Color;
- if (value is STColor16)
- color = ((STColor16)value).Color;
- if (value is STColor)
- color = ((STColor)value).Color;
+ var control = new ColorSelector();
- using (ColorDialog form = new ColorDialog())
- {
- form.Color = color;
- if (form.ShowDialog() == DialogResult.OK)
- {
- if (value is STColor8)
- ((STColor8)value).Color = form.Color;
- if (value is STColor16)
- ((STColor16)value).Color = form.Color;
- if (value is STColor)
- ((STColor)value).Color = form.Color;
+ Color color = Color.White;
+ if (value is STColor8)
+ color = ((STColor8)value).Color;
+ if (value is STColor16)
+ color = ((STColor16)value).Color;
+ if (value is STColor)
+ color = ((STColor)value).Color;
- return value;
- }
- }
+ control.Color = color;
+ control.Alpha = color.A;
- //Todo custom dialog
- /* using (STColorDialog form = new STColorDialog(color))
- {
- if (svc.ShowDialog(form) == DialogResult.OK)
- {
- ((STColor)value).Color = form.NewColor;
- return value;
- }
- }*/
- }
+ frmsvr.DropDownControl(control);
+
+ if (value is STColor8)
+ return control.Color8;
+ if (value is STColor16)
+ return (STColor16)value;
+ if (value is STColor)
+ return (STColor)value;
return value;
}
+ private void OnColorChanged(object sender, EventArgs e)
+ {
+
+ }
+
public override bool GetPaintValueSupported(ITypeDescriptorContext context)
{
return true;
@@ -81,10 +74,18 @@ namespace Toolbox.Library.IO
if (e.Value is STColor)
color = ((STColor)e.Value).Color;
- using (SolidBrush brush = new SolidBrush(color))
- {
- e.Graphics.FillRectangle(brush, e.Bounds);
- }
+
+ e.Graphics.InterpolationMode = InterpolationMode.NearestNeighbor;
+ e.Graphics.PixelOffsetMode = PixelOffsetMode.Half;
+
+ Brush RGBColor = new SolidBrush(Color.FromArgb(255, color.R, color.G, color.B));
+ Brush AlphaColor = new SolidBrush(Color.FromArgb(color.A, color.R, color.G, color.B));
+
+ Point rgbPos = new Point(e.Bounds.X, e.Bounds.Y);
+ Point alphaPos = new Point(e.Bounds.X + e.Bounds.Width / 2, e.Bounds.Y);
+
+ e.Graphics.FillRectangle(RGBColor, new RectangleF(rgbPos.X, rgbPos.Y, e.Bounds.Width / 2, e.Bounds.Height));
+ e.Graphics.FillRectangle(AlphaColor, new RectangleF(alphaPos.X, alphaPos.Y, e.Bounds.Width / 2, e.Bounds.Height));
e.Graphics.DrawRectangle(Pens.Black, e.Bounds);
}
diff --git a/Switch_Toolbox_Library/IO/Colors/STColor.cs b/Switch_Toolbox_Library/IO/Colors/STColor.cs
index d50ecb7a..a7323ad5 100644
--- a/Switch_Toolbox_Library/IO/Colors/STColor.cs
+++ b/Switch_Toolbox_Library/IO/Colors/STColor.cs
@@ -60,6 +60,14 @@ namespace Toolbox.Library
return col;
}
+ public STColor(Color color)
+ {
+ R = color.R / 255f;
+ G = color.G / 255f;
+ B = color.B / 255f;
+ A = color.A / 255f;
+ }
+
public STColor()
{
R = 1;
diff --git a/Switch_Toolbox_Library/IO/Colors/STColor16.cs b/Switch_Toolbox_Library/IO/Colors/STColor16.cs
index 59d5e2db..a50fe519 100644
--- a/Switch_Toolbox_Library/IO/Colors/STColor16.cs
+++ b/Switch_Toolbox_Library/IO/Colors/STColor16.cs
@@ -51,6 +51,14 @@ namespace Toolbox.Library
A = 255;
}
+ public STColor16(Color color)
+ {
+ R = color.R;
+ G = color.G;
+ B = color.B;
+ A = color.A;
+ }
+
public STColor16(ushort r, ushort g, ushort b, ushort a)
{
R = r;
diff --git a/Switch_Toolbox_Library/IO/Colors/STColor8.cs b/Switch_Toolbox_Library/IO/Colors/STColor8.cs
index fa8d2a82..9b7ea22d 100644
--- a/Switch_Toolbox_Library/IO/Colors/STColor8.cs
+++ b/Switch_Toolbox_Library/IO/Colors/STColor8.cs
@@ -52,6 +52,14 @@ namespace Toolbox.Library
A = 255;
}
+ public STColor8(Color color)
+ {
+ R = color.R;
+ G = color.G;
+ B = color.B;
+ A = color.A;
+ }
+
public STColor8(byte r, byte g, byte b, byte a)
{
R = r;