Index: branches/testa/css/font.css
===================================================================
--- branches/testa/css/font.css	(revision 23)
+++ branches/testa/css/font.css	(revision 23)
@@ -0,0 +1,14 @@
+.box1 {
+    display: inline-block;
+    width: 14em;
+    padding: .25em .5em;
+    margin: .5em 1em .5em 0;
+    text-align:left;
+    
+}
+.box1 span { 
+    font-size:2em;
+    position: relative;
+    top: 0.25em;
+    margin-right: 0.1em;
+}
Index: branches/testa/css/menu.css
===================================================================
--- branches/testa/css/menu.css	(revision 23)
+++ branches/testa/css/menu.css	(revision 23)
@@ -0,0 +1,57 @@
+.nav {
+    overflow: hidden;
+    width 750px;
+    margin: 0 auto;
+    padding: 0;
+    display: flex;
+}
+.nav li {
+    list-style: none;
+    z-index: var(--menu-z-index);
+}
+.nav li a {
+    display: block;
+    width: 150px;
+    height: 40px;
+    text-align: center;
+    color: #fff;
+    font-size: 14px;
+    line-height: 2.8;
+    background: #9fb7d4;
+    text-decoration: none;
+    border-right: 1px solid #eee;
+    box-sizing: border-box;
+    z-index: var(--menu-z-index);
+}
+
+.nav > li:hover > a {/*layer-1*/
+  color: orange;
+  background: #afc6e2;
+}
+
+.nav > li.disabled > a {/*layer-1*/
+  color: white;
+  background: white;
+}
+
+.nav li ul {
+  width: 150px;
+  display: none;
+/*  margin-left: -40px;*/
+  position: absolute;
+    z-index: var(--menu-z-index);
+
+  hight: 30px;
+}
+
+.nav > li li:hover > a {/*layer-2*/
+  color: olive;
+  background: #afc6e2;
+
+}
+.nav li ul li a {
+  border-top: 1px solid #eee;
+    z-index: var(--menu-z-index);
+
+}
+
Index: branches/testa/css/style-3.css
===================================================================
--- branches/testa/css/style-3.css	(revision 23)
+++ branches/testa/css/style-3.css	(revision 23)
@@ -0,0 +1,148 @@
+:root {
+    --menu-z-index: 9;
+    --root-height: 600;
+    --part-height: 600;
+}
+body {
+    width:980px;
+    margin:0 auto;
+}
+
+.disabled {
+    background-color: white;
+}
+#all {
+}
+
+#data-menubar , #setting-menubar , #output-menubar{ 
+display: float
+}
+
+#data-bar , #setting-bar , #output-bar{
+    display: grid;
+/*    grid-template-rows:    30px 30px 30px 30px 30px;*/
+    grid-template-rows:    30px 30px;
+/*    grid-template-columns: 80px 80px 80px 80px 80px 80px 80px 80px 80px 80px 80px 80px;*/
+    grid-template-columns: 80px 80px 80px 80px 80px 80px 80px 80px 80px 80px 80px;
+
+/* height:128px; */
+ height:60px;
+/* background-color:#000000;*/
+/* background-color:#009f9f;*/
+}
+
+#data-select-host {
+    grid-row: 1 / 2;
+    grid-column: 1/6;
+    backgroud-color: #fff;
+}
+
+#data-filelist_key, #setting-filelist_key, #output-filelist_key {
+/*    display: none;*/
+    grid-row: 2 / 3;
+    grid-column:  1/6;
+}
+
+#data-bookmark_label{
+    grid-row: 2/3;
+    grid-column:  6/7;
+}
+
+#data-bookmark_op{
+    grid-row: 2/3;
+    grid-column:  6/7;
+}
+
+#down-download {
+    grid-row:  2/3;
+    grid-column:  7/8;
+}
+
+#data-editor-t, #setting-editor-t, #output-editor-t {
+    display: none;
+    grid-row: 2 / 3;
+    grid-column: 7/8;
+    backgroud-color: #f00;
+}
+
+/*
+#icon_star_container {
+    grid-row: 1 / 2;
+    grid-column:  6/7;
+}
+#icon_star {
+    grid-row: 1 / 2;
+    grid-column:  6/7;
+}
+*/
+/*
+#x {
+    grid-row: 1 / 2;
+    grid-column:  7/8;
+}*/
+
+.xxbutton {
+  background-color: ButtonFace;
+  border-radius: 5px;
+  color: ButtonText;
+  margin: 5px;
+/*  padding: 5px;*/
+  padding-left: .5em;
+  padding-right: .5em;
+  text-decoration: none;
+  text-align: center;
+}
+
+.xxbutton:focus,
+.xxbutton:hover {
+  background-color: Highlight;
+  color: HighlightText;
+}
+
+#data-menu2, #setting-menu2, #output-menu2 {
+    position: relative;
+    overflow: scroll;
+    width: 250px;
+    height: var(--part-height);
+    height: 600px;
+}
+
+#data-editor {
+/*    height: var(--part-height);*/
+        margin: 0;
+/*        position: absolute;*/
+        top: 0;
+        bottom: 0;
+        left: 0;
+        right: 0;
+}
+
+#data-side , #setting-side , #output-side{
+ width:250px;
+ min-height: var(--root-height);;
+ height:auto;
+/*  background-color:#009b9f; */
+ float:left;
+/* margin-top:10px;*/
+/* margin-top:0px;*/
+}
+#data-work , #setting-work , #output-work{ 
+ margin-left:260px;
+ width:720px;
+ min-height: var(--root-height);;
+ height:auto;
+/* background-color:#009b9f; */
+/* margin-top:10px;*/
+}
+
+#editor-div , #data-editor, #setting-editor, #output-editor, #editor{
+    height: var(root-height);
+/*    width: 660px;*/
+
+    margin: 0;
+    top: 0;
+    bottom: 0;
+    left: 0;
+    right: 0;
+
+}
Index: branches/testa/css/style.css
===================================================================
--- branches/testa/css/style.css	(revision 23)
+++ branches/testa/css/style.css	(revision 23)
@@ -0,0 +1,175 @@
+@font-face {
+	font-family: 'linecons';
+	src:url('fonts/linecons.eot');
+}
+@font-face {
+	font-family: 'linecons';
+	src: url(data:font/svg;charset=utf-8;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBzdGFuZGFsb25lPSJubyI/Pgo8IURPQ1RZUEUgc3ZnIFBVQkxJQyAiLS8vVzNDLy9EVEQgU1ZHIDEuMS8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9HcmFwaGljcy9TVkcvMS4xL0RURC9zdmcxMS5kdGQiID4KPHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPgo8bWV0YWRhdGE+ClRoaXMgaXMgYSBjdXN0b20gU1ZHIGZvbnQgZ2VuZXJhdGVkIGJ5IEljb01vb24uCjxpY29uc2V0IGlkPSJsaW5lY29ucyIgbmFtZT0ibGluZWNvbnMiIGhyZWY9Imh0dHA6Ly9kZXNpZ25tb2RvLmNvbS9saW5lY29ucyI+PC9pY29uc2V0PjxhdXRob3IgbmFtZT0iU2VyZ2V5IFNobWlkdCIgaHJlZj0iaHR0cDovL3NobWlkdC5pbiI+PC9hdXRob3I+PGxpY2Vuc2UgbmFtZT0iQ3JlYXRpdmUgQ29tbW9ucyBBdHRyaWJ1dGlvbi1TaGFyZUFsaWtlIDMuMCIgaHJlZj0iaHR0cDovL2NyZWF0aXZlY29tbW9ucy5vcmcvbGljZW5zZXMvYnktc2EvMy4wLyI+PC9saWNlbnNlPgo8L21ldGFkYXRhPgo8ZGVmcz4KPGZvbnQgaWQ9ImxpbmVjb25zIiBob3Jpei1hZHYteD0iNTEyIiA+Cjxmb250LWZhY2UgdW5pdHMtcGVyLWVtPSI1MTIiIGFzY2VudD0iNDgwIiBkZXNjZW50PSItMzIiIC8+CjxtaXNzaW5nLWdseXBoIGhvcml6LWFkdi14PSI1MTIiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hlMDAwOyIgZD0iTSA0NjcuMDg4LDM5NS43NmMtNTguMDY0LDU3LjUzNi0xNTAuOTEyLDU4LjczNi0yMTEuMDU2LDQuNjA4CgkJQyAxOTUuODcyLDQ1NC40OTYsIDEwMy4wNTYsNDUzLjI5NiwgNDQuOTYsMzk1Ljc2Yy01OS44NTYtNTkuMjY0LTU5Ljg1Ni0xNTUuMzQ0LDAuMDAtMjE0LjY0YyAxNy4xMDQtMTYuOTQ0LCAxNzYuODQ4LTE3NS4wNTYsIDE3Ni44NDgtMTc1LjA1NgoJCWMgMTguOTI4LTE4Ljc1MiwgNDkuNTM2LTE4Ljc1MiwgNjguNDQ4LDAuMDBjMC4wMCwwLjAwLCAxNzQuOTEyLDE3My4xNTIsIDE3Ni44NDgsMTc1LjA1NkMgNTI2Ljk3NiwyNDAuNDE2LCA1MjYuOTc2LDMzNi40OTYsIDQ2Ny4wODgsMzk1Ljc2eiBNIDQ0NC4yODgsMjAzLjcxMgoJCUwgMjY3LjQ0LDI4LjY1NmMtNi4yODgtNi4yNTYtMTYuNTQ0LTYuMjU2LTIyLjgwLDAuMDBMIDY3Ljc5MiwyMDMuNzEyYy00Ny4yMCw0Ni43Mi00Ny4yMCwxMjIuNzM2LDAuMDAsMTY5LjQ1NgoJCWMgNDUuNTA0LDQ1LjA0LCAxMTguNjU2LDQ2LjYyNCwgMTY2LjU0NCwzLjU1MmwgMjEuNjk2LTE5LjUybCAyMS42OCwxOS41MmMgNDcuOTA0LDQzLjA3MiwgMTIxLjA1Niw0MS41MDQsIDE2Ni41Ni0zLjU1MgoJCUMgNDkxLjQ3MiwzMjYuNDY0LCA0OTEuNDcyLDI1MC40NDgsIDQ0NC4yODgsMjAzLjcxMnpNIDE0OC4wNDgsMzU5Ljk4NCBDIDE1Mi40OCwzNTkuOTg0IDE1Ni4wNDgsMzU2LjQwIDE1Ni4wNDgsMzUxLjk4NCBDIDE1Ni4wNDgsMzQ3LjU2OCAxNTIuNDY0LDM0My45ODQgMTQ4LjA0OCwzNDMuOTg0IEwgMTQ4LjAzMiwzNDMuOTg0IEMgMTE5LjMyOCwzNDMuOTg0IDk2LjA0OCwzMjAuNzA0IDk2LjA0OCwyOTIuMDAgTCA5Ni4wNDgsMjkxLjk4NCBDIDk2LjA0OCwyODcuNTY4IDkyLjQ2NCwyODMuOTg0IDg4LjA0OCwyODMuOTg0IEMgODMuNjMyLDI4My45ODQgODAuMDQ4LDI4Ny41NjggODAuMDQ4LDI5MS45ODQgTCA4MC4wNDgsMjkxLjk4NCBDIDgwLjA0OCwzMjkuNTIgMTEwLjQ2NCwzNTkuOTM2IDE0Ny45ODQsMzU5Ljk2OCBDIDE0OC4wMTYsMzU5Ljk2OCAxNDguMDE2LDM1OS45ODQgMTQ4LjA0OCwzNTkuOTg0IFoiIGRhdGEtdGFncz0iaGVhcnQiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hlMDAxOyIgZD0iTSA0MTQuNjI0LDI2OS43MTJDIDQwNy42MzIsMzQyLjcyLCAzNDYuODQ4LDQwMC4wMCwgMjcyLjAwLDQwMC4wMAoJYy01Ny45MDQsMC4wMC0xMDcuNDcyLTM0LjM2OC0xMzAuMzM2LTgzLjY4QyAxMzQuNzg0LDMxOC40OTYsIDEyNy42MTYsMzIwLjAwLCAxMjAuMDE2LDMyMC4wMGMtMzkuNzYsMC4wMC03Mi4wMC0zMi4yNTYtNzIuMDAtNzIuMDBjMC4wMC03LjkwNCwgMS41ODQtMTUuMzc2LCAzLjkzNi0yMi40NjQKCWMtMzAuOTI4LTE4LjAzMi01MS45MzYtNTEuMTItNTEuOTM2LTg5LjUwNGMwLjAwLTU3LjQ0LCA0Ni41Ni0xMDQuMDAsIDEwNC4wMC0xMDQuMDBMIDEwNC4wMTYsMzIuMDAgTCAzOTIuMDAsMzIuMDAgbDAuMDAsMC4wMzIgYyA2Ni4yODgsMC4wMCwgMTIwLjAwLDUzLjcxMiwgMTIwLjAwLDEyMC4wMAoJQyA1MTIuMDAsMjEwLjUyOCwgNDcwLjA2NCwyNTkuMTIsIDQxNC42MjQsMjY5LjcxMnogTSAzOTIuMDAsNjQuMDMyTCAzOTIuMDAsNjQuMDAgTCAxMDQuMDE2LDY0LjAwIGMtMzkuNjk2LDAuMDMyLTcyLjAwLDMyLjMyLTcyLjAwLDcyLjAzMmMwLjAwLDI1LjYwLCAxMy40ODgsNDguNzIsIDM2LjA2NCw2MS44NzIKCWMgMjEuOTM2LDEyLjU5MiwgMjMuNDQsMTUuMDg4LCAxNC4yNCwzNy43MTJjLTEuNTUyLDQuNjU2LTIuMzA0LDguNzA0LTIuMzA0LDEyLjM2OGMwLjAwLDIyLjA2NCwgMTcuOTM2LDQwLjAwLCA0MC4wMCw0MC4wMGMwLjAwLDAuMDAsIDEwLjQ5NiwwLjc1MiwgMjEuNjQ4LTMuNjgKCWMgMTguMzUyLTcuMzEyLCAyMC4zNTItMC4zMiwgMjkuMDI0LDE4LjU0NEMgMTg5LjA0LDM0Mi40MTYsIDIyOC44MCwzNjguMDAsIDI3Mi4wMCwzNjguMDBjIDU3LjYwLDAuMDAsIDEwNS4yMTYtNDMuNTY4LCAxMTAuNzg0LTEwMS4zNDRjIDEuOTY4LTIyLjkxMiwgMS45NjgtMjIuOTEyLCAyNS44NC0yOC4zNjgKCUMgNDUwLjAwLDIzMC4zODQsIDQ4MC4wMCwxOTQuMDk2LCA0ODAuMDAsMTUyLjAzMkMgNDgwLjAwLDEwMy41MDQsIDQ0MC41MjgsNjQuMDMyLCAzOTIuMDAsNjQuMDMyeiIgZGF0YS10YWdzPSJjbG91ZCIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGUwMDI7IiBkPSJNIDUxMC4wOTYsMjc5LjA4OGMtNC40MzIsMTIuNzg0LTE1LjgwOCwyMi4xNDQtMjkuNTA0LDI0LjE3NmwtMTMzLjIxNiwxOS44MDhsLTU3LjkwNCwxMjAuMjI0CglDIDI4My4zNzYsNDU1LjkyLCAyNzAuMzM2LDQ2NC4wMCwgMjU2LjAwLDQ2NC4wMGMtMTQuMzM2LDAuMDAtMjcuMzc2LTguMDgtMzMuNDcyLTIwLjcwNGwtNTcuOTA0LTEyMC4yMjRsLTEzMy4yMzItMTkuODA4Yy0xMy42OC0yLjAzMi0yNS4wNTYtMTEuMzkyLTI5LjQ3Mi0yNC4xNzYKCWMtNC40MC0xMi44MTYtMS4wNzItMjYuOTI4LCA4LjU5Mi0zNi41NmwgOTcuNjMyLTk3LjQ3MmwtMjIuNjQtMTM1LjIxNkMgODMuMjAtMy43NzYsIDg5LjEwNC0xNy40NCwgMTAwLjY3Mi0yNS40MDgKCUMgMTA3LjAyNC0yOS43NzYsIDExNC40OTYtMzIuMDAsIDEyMS45NjgtMzIuMDBjIDYuMTQ0LDAuMDAsIDEyLjMwNCwxLjUwNCwgMTcuODg4LDQuNDk2TCAyNTYuMDAsMzUuMDI0bCAxMTYuMTYtNjIuNTI4QyAzNzcuNzQ0LTMwLjQ5NiwgMzgzLjkwNC0zMi4wMCwgMzkwLjAzMi0zMi4wMAoJYyA3LjQ3MiwwLjAwLCAxNC45NDQsMi4yMjQsIDIxLjMxMiw2LjU5MmMgMTEuNTY4LDcuOTY4LCAxNy40NCwyMS42MzIsIDE1LjE1MiwzNS4yNDhsLTIyLjY1NiwxMzUuMjE2bCA5Ny42NjQsOTcuNDcyCglDIDUxMS4xNTIsMjUyLjE3NiwgNTE0LjQ2NCwyNjYuMjg4LCA1MTAuMDk2LDI3OS4wODh6IE0gMzc3LjQwOCwxNzAuMTkyYy04LjE5Mi04LjE2LTExLjkwNC0xOS42NjQtMTAuMDMyLTMwLjk0NGwgMjIuNjU2LTEzNS4yMTZsLTExNi4xNiw2Mi40OTYKCWMtNS41NjgsMy4wMDgtMTEuNzEyLDQuNDk2LTE3Ljg4OCw0LjQ5NmMtNi4xNDQsMC4wMC0xMi4zMDQtMS41MDQtMTcuODcyLTQuNDk2bC0xMTYuMTYtNjIuNDk2bCAyMi42NTYsMTM1LjIxNgoJYyAxLjg4OCwxMS4yOC0xLjgyNCwyMi43ODQtMTAuMDE2LDMwLjk0NGwtOTcuNjMyLDk3LjQ3MmwgMTMzLjIxNiwxOS44NGMgMTIuMTc2LDEuODA4LCAyMi42NTYsOS40MjQsIDI3Ljg4OCwyMC4yODhMIDI1Ni4wMCw0MjcuOTg0bCA1Ny45Mi0xMjAuMjA4CgljIDUuMjQ4LTEwLjg2NCwgMTUuNzEyLTE4LjQ2NCwgMjcuODcyLTIwLjI4OGwgMTMzLjI0OC0xOS44NEwgMzc3LjQwOCwxNzAuMTkyeiIgZGF0YS10YWdzPSJzdGFyIiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZTAwMzsiIGQ9Ik0gMzU0LjcyLDM0Mi4wMTZjLTQzLjMxMiw4LjkxMi04Ny4yOCwxMy40MjQtMTMwLjY0LDEzLjQyNGMtNDMuMzYsMC4wMC04Ny4zMTItNC41MTItMTMwLjY0LTEzLjQyNAoJCUMgODcuODQsMzQwLjg2NCwgODMuMjY0LDMzNi44MCwgODEuNDU2LDMzMS4zNDRjLTIzLjA3Mi03MC4wOTYtMjMuMDcyLTE0MS4xNjgsMC4wMC0yMTEuMjY0YyAxLjc5Mi01LjQ0LCA2LjM2OC05LjUwNCwgMTEuOTg0LTEwLjY1NgoJCUMgMTM2Ljc2OCwxMDAuNTI4LCAxODAuNzIsOTYuMDAsIDIyNC4wOCw5Ni4wMGMgNDMuMzQ0LDAuMDAsIDg3LjMyOCw0LjUyOCwgMTMwLjY0LDEzLjQ0YyA1LjYzMiwxLjE1MiwgMTAuMTkyLDUuMjE2LCAxMi4wMCwxMC42NTYKCQljIDIzLjA1Niw3MC4wOTYsIDIzLjA1NiwxNDEuMTY4LDAuMDAsMjExLjI2NEMgMzY0LjkxMiwzMzYuODAsIDM2MC4zMzYsMzQwLjg2NCwgMzU0LjcyLDM0Mi4wMTZ6IE0gMzUxLjUwNCwxMjUuMDg4Yy04NC45NDQtMTcuNDQtMTY5LjkwNC0xNy40NC0yNTQuODMyLDAuMDAKCQljLTIyLjA5Niw2Ny4wODgtMjIuMDk2LDEzNC4xNiwwLjAwLDIwMS4yNjRjIDg0Ljk0NCwxNy40NTYsIDE2OS45MDQsMTcuNDU2LCAyNTQuODMyLDAuMDBDIDM3My42MCwyNTkuMjY0LCAzNzMuNjAsMTkyLjE5MiwgMzUxLjUwNCwxMjUuMDg4ek0gNDkzLjY2NCwzNzguODhjLTMuMDg4LDEzLjAyNC0xNC4wMCwyMi43NTItMjcuMjgsMjQuMzUyQyAzOTYuNjI0LDQxMS43MTIsIDMyNS44NzIsNDE2LjAwLCAyNTYuMDgsNDE2LjAwCgkJQyAxODYuMzA0LDQxNi4wMCwgMTE1LjU1Miw0MTEuNzEyLCA0NS43OTIsNDAzLjI0OEMgMzIuNTEyLDQwMS42MzIsIDIxLjYxNiwzOTEuOTIsIDE4LjUyOCwzNzguODhjLTI0LjQ2NC0xMDIuNzY4LTI0LjQ2NC0yMDYuOTc2LDAuMDAtMzA5Ljc2CgkJYyAzLjA4OC0xMy4wMjQsIDEzLjk4NC0yMi43NTIsIDI3LjI2NC0yNC4zMzZjIDMzLjYxNi00LjA5NiwgNjcuNDU2LTcuMDg4LCAxMDEuMjk2LTkuMjE2QyAxNDUuMjY0LDM0LjQwLCAxNDQuMDgsMzMuMjE2LCAxNDQuMDgsMzIuMDBjMC4wMC04Ljg0OCwgNTAuMTQ0LTE2LjAwLCAxMTIuMDAtMTYuMDAKCQljIDYxLjg1NiwwLjAwLCAxMTIuMDAsNy4xNTIsIDExMi4wMCwxNi4wMGMwLjAwLDEuMjE2LTEuMTg0LDIuNDAtMy4wMDgsMy41NjhjIDMzLjg0LDIuMTI4LCA2Ny42OCw1LjEyLCAxMDEuMjgsOS4yMTZjIDEzLjI4LDEuNjAsIDI0LjE5MiwxMS4zMTIsIDI3LjI4LDI0LjMzNgoJCUMgNTE4LjEyOCwxNzEuOTA0LCA1MTguMTI4LDI3Ni4xMTIsIDQ5My42NjQsMzc4Ljg4eiBNIDQ2Mi41MjgsNzYuNTI4Yy0xMzcuNjMyLTE2LjY4OC0yNzUuMjY0LTE2LjY4OC00MTIuODgsMC4wMGMtMjMuNDA4LDk4LjMyLTIzLjQwOCwxOTYuNjQsMC4wMCwyOTQuOTQ0CgkJYyAxMzcuNjMyLDE2LjcwNCwgMjc1LjI2NCwxNi43MDQsIDQxMi44OCwwLjAwQyA0ODUuOTM2LDI3My4xNjgsIDQ4NS45MzYsMTc0Ljg0OCwgNDYyLjUyOCw3Ni41Mjh6TSA0MjQuMDk2LDI4OC4wMGMgMTMuMjQ4LDAuMDAsIDI0LjAwLDEwLjc1MiwgMjQuMDAsMjQuMDBTIDQzNy4zNDQsMzM2LjAwLCA0MjQuMDk2LDMzNi4wMHMtMjQuMDAtMTAuNzUyLTI0LjAwLTI0LjAwUyA0MTAuODQ4LDI4OC4wMCwgNDI0LjA5NiwyODguMDB6CgkJIE0gNDI0LjA5NiwzMjAuMDBjIDQuNDAsMC4wMCwgOC4wMC0zLjYwLCA4LjAwLTguMDBzLTMuNjAtOC4wMC04LjAwLTguMDBzLTguMDAsMy42MC04LjAwLDguMDBTIDQxOS42OCwzMjAuMDAsIDQyNC4wOTYsMzIwLjAwek0gNDQwLjA5NiwxMjguMDAgQyA0NDQuNDk2LDEyOC4wMCA0NDguMDk2LDEyNC40MzIgNDQ4LjA5NiwxMjAuMDAgQyA0NDguMDk2LDExNS42MCA0NDQuNDk2LDExMi4wMCA0NDAuMDk2LDExMi4wMCBMIDM5Mi4wOTYsMTEyLjAwIEMgMzg3LjY2NCwxMTIuMDAgMzg0LjA5NiwxMTUuNjAgMzg0LjA5NiwxMjAuMDAgQyAzODQuMDk2LDEyNC40MzIgMzg3LjY2NCwxMjguMDAgMzkyLjA5NiwxMjguMDAgTCA0NDAuMDk2LDEyOC4wMCBaTSA0NTYuMDk2LDE3Ni4wMCBDIDQ2MC40OTYsMTc2LjAwIDQ2NC4wOTYsMTcyLjQzMiA0NjQuMDk2LDE2OC4wMCBDIDQ2NC4wOTYsMTYzLjYwIDQ2MC40OTYsMTYwLjAwIDQ1Ni4wOTYsMTYwLjAwIEwgNDA4LjA5NiwxNjAuMDAgQyA0MDMuNjY0LDE2MC4wMCA0MDAuMDk2LDE2My42MCA0MDAuMDk2LDE2OC4wMCBDIDQwMC4wOTYsMTcyLjQzMiA0MDMuNjY0LDE3Ni4wMCA0MDguMDk2LDE3Ni4wMCBMIDQ1Ni4wOTYsMTc2LjAwIFpNIDQ1Ni4wOTYsMjI0LjAwIEMgNDYwLjQ5NiwyMjQuMDAgNDY0LjA5NiwyMjAuNDE2IDQ2NC4wOTYsMjE2LjAwIEMgNDY0LjA5NiwyMTEuNTg0IDQ2MC40OTYsMjA4LjAwIDQ1Ni4wOTYsMjA4LjAwIEwgNDA4LjA5NiwyMDguMDAgQyA0MDMuNjY0LDIwOC4wMCA0MDAuMDk2LDIxMS41ODQgNDAwLjA5NiwyMTYuMDAgQyA0MDAuMDk2LDIyMC40MTYgNDAzLjY2NCwyMjQuMDAgNDA4LjA5NiwyMjQuMDAgTCA0NTYuMDk2LDIyNC4wMCBaTSAyMTYuMDgsMjkxLjEzNiBDIDIyMC40OTYsMjkxLjMxMiAyMjQuMDgsMjg3Ljg3MiAyMjQuMDgsMjgzLjQ1NiBDIDIyNC4wOCwyNzkuMDQgMjIwLjQ4LDI3NS4zMjggMjE2LjA4LDI3NS4xNjggTCAxNTYuMDk2LDI3MS4wNTYgQyAxNTEuNzI4LDI3MC42MDggMTQ3LjY2NCwyNjYuNjcyIDE0Ny4wNzIsMjYyLjMyIEwgMTQ0LjQwLDIzMi4wMCBDIDE0NC4yMjQsMjI3LjYwIDE0MC40OCwyMjQuMDAgMTM2LjExMiwyMjQuMDAgQyAxMzEuNzI4LDIyNC4wMCAxMjguMzIsMjI3LjYwIDEyOC41NDQsMjMyLjAwIEwgMTMzLjQyNCwyNzYuNTc2IEMgMTM0LjE2LDI4MC45MjggMTM4LjMzNiwyODQuODk2IDE0Mi43MDQsMjg1LjM5MiBMIDIxNi4wOCwyOTEuMTM2IFoiIGRhdGEtdGFncz0idHYiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hlMDA0OyIgZD0iTSA0MzEuOTY4LDI1NS45NTIgQyA0MzEuOTY4LDMzNS4zNDQgMzY3LjM3NiwzOTkuOTUyIDI4Ny45NjgsMzk5LjkzNiBMIDI4Ny45NjgsNDAwLjAwIEMgMjgzLjU2OCw0MDAuMDE2IDI4MC4wMCw0MDMuNjAgMjgwLjAwLDQwOC4wMCBDIDI4MC4wMCw0MTIuNDE2IDI4My41NjgsNDE2LjAwIDI4OC4wMCw0MTYuMDAgQyAyODguMTYsNDE2LjAwIDI4OC4yODgsNDE1LjkzNiAyODguNDAsNDE1LjkwNCBDIDM3Ni41MjgsNDE1LjY5NiA0NDcuODcyLDM0NC4yNzIgNDQ3Ljk2OCwyNTYuMTI4IEMgNDQ3Ljk2OCwyNTYuMDggNDQ4LjAwLDI1Ni4wNDggNDQ4LjAwLDI1Ni4wMCBDIDQ0OC4wMCwyNTEuNTg0IDQ0NC40MCwyNDguMDE2IDQ0MC4wMCwyNDguMDE2IEMgNDM1LjYwLDI0OC4wMTYgNDMyLjAzMiwyNTEuNTY4IDQzMi4wMCwyNTUuOTUyIEwgNDMxLjk2OCwyNTUuOTUyIFpNIDE0NS45MzYsNDY1Ljk1MkMgMTM2Ljc2OCw0NzUuMTM2LCAxMjQuNDgsNDgwLjAwLCAxMTEuOTg0LDQ4MC4wMEMgMTA1LjgwOCw0ODAuMDAsIDk5LjU4NCw0NzguODE2LCA5My42NDgsNDc2LjM1MkMgNzUuNjk2LDQ2OC45MjgsIDY0LjAwLDQ1MS40MjQsIDY0LjAwLDQzMi4wMAoJCUwgNjMuOTg0LDIxMS44ODhsLTQ5LjkyLTQ5Ljk1MmMtMTguNzUyLTE4LjcyLTE4Ljc1Mi00OS4xMiwwLjAwLTY3Ljg3MmwgMTEyLjAwLTExMi4wMEMgMTM1LjQ0LTI3LjMxMiwgMTQ3LjcxMi0zMi4wMCwgMTYwLjAwLTMyLjAwcyAyNC41Niw0LjY4OCwgMzMuOTM2LDE0LjA2NEwgMjQzLjg3MiwzMi4wMAoJCWwgMjIwLjA5NiwwLjAwIGMgMTkuNDQsMC4wMCwgMzYuOTQ0LDExLjY4LCA0NC4zMzYsMjkuNjMyYyA3LjQ0LDE3LjkzNiwgMy4zNDQsMzguNTkyLTEwLjQwLDUyLjMyTCAxNDUuOTM2LDQ2NS45NTJ6IE0gMjIxLjI0OCw1NC42MjRsLTQ5LjkzNi00OS45MzYKCQlDIDE2Ny4yMzIsMC42MjQsIDE2Mi40NjQsMC4wMCwgMTYwLjAwLDAuMDBzLTcuMjMyLDAuNjI0LTExLjMxMiw0LjY4OGwtMTEyLjAwLDExMi4wMEMgMzIuNjA4LDEyMC43ODQsIDMyLjAwLDEyNS41MzYsIDMyLjAwLDEyOC4wMHMgMC42MDgsNy4yNDgsIDQuNjg4LDExLjMxMmwgNDkuOTIsNDkuOTM2CgkJYyAwLjE0NCwwLjE2LCAwLjE5MiwwLjMzNiwgMC4zMzYsMC40OTZsIDEzNC44MC0xMzQuODE2QyAyMjEuNjAsNTQuODE2LCAyMjEuMzkyLDU0Ljc4NCwgMjIxLjI0OCw1NC42MjR6IE0gMjQzLjg3Miw2NC4wMAoJCWMtMi40OCwwLjAwLTQuNzg0LTAuODgtNy4xNTItMS40MDhMIDk0LjU2LDIwNC43NTJjIDAuNTQ0LDIuMzY4LCAxLjQyNCw0LjY3MiwgMS40MjQsNy4xMzZMIDk2LjAwLDQwNC42MjRMIDQzNi41OTIsNjQuMDBMIDI0My44NzIsNjQuMDAgeiBNIDQ3OC43NTIsNzMuODcyCgkJQyA0NzYuMjg4LDY3Ljg3MiwgNDcwLjQ2NCw2NC4wMCwgNDYzLjk2OCw2NC4wMGwtNC43NTIsMC4wMCBMIDk2LjAwLDQyNy4yNDhMIDk2LjAwLDQzMi4wMCBjMC4wMCw2LjQ5NiwgMy44NzIsMTIuMzA0LCA5Ljg3MiwxNC43ODRDIDEwNy44NCw0NDcuNjAsIDEwOS44ODgsNDQ4LjAwLCAxMTEuOTg0LDQ0OC4wMAoJCWMgNC4yODgsMC4wMCwgOC4zMDQtMS42NjQsIDExLjMxMi00LjY3MmwgMzUxLjk4NC0zNTIuMDE2QyA0NzkuODcyLDg2LjcyLCA0ODEuMjQ4LDc5Ljg3MiwgNDc4Ljc1Miw3My44NzJ6TSAyODcuOTY4LDQ0OC4wMCBDIDI3OS4xNTIsNDQ4LjAxNiAyNzIuMDAsNDU1LjE4NCAyNzIuMDAsNDY0LjAwIEMgMjcyLjAwLDQ3Mi44NDggMjc5LjE1Miw0ODAuMDAgMjg4LjAwLDQ4MC4wMCBDIDI4OC4xNiw0ODAuMDAgMjg4LjI4OCw0NzkuOTM2IDI4OC40MCw0NzkuOTIgQyA0MTEuODcyLDQ3OS42OTYgNTExLjg3MiwzNzkuNjE2IDUxMS45NjgsMjU2LjEyOCBDIDUxMS45NjgsMjU2LjA4IDUxMi4wMCwyNTYuMDQ4IDUxMi4wMCwyNTYuMDAgQyA1MTIuMDAsMjQ3LjE1MiA1MDQuODQ4LDI0MC4wMCA0OTYuMDAsMjQwLjAwIEMgNDg3LjE4NCwyNDAuMDAgNDgwLjAzMiwyNDcuMTM2IDQ4MC4wMCwyNTUuOTM2IEwgNDc5Ljk2OCwyNTUuOTM2IEMgNDc5Ljk2OCwzNjEuODA4IDM5My44NCw0NDcuOTM2IDI4Ny45NjgsNDQ3LjkzNiBMIDI4Ny45NjgsNDQ4LjAwIFoiIGRhdGEtdGFncz0ic291bmQiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hlMDA1OyIgZD0iTSA0ODAuMDAsMzg0LjAwbC0xNC4xOTIsMC4wMCBjLTguNDAsMC4wMC0xNi40NjQtMy4zMTItMjIuNDY0LTkuMjE2TCA0MDAuMDAsMzMyLjAzMkwgNDAwLjAwLDM1Mi4wMCBjMC4wMCwyNi41MTItMjEuNTA0LDQ4LjAwLTQ4LjAwLDQ4LjAwTCA0OC4wMCw0MDAuMDAgCglDIDIxLjUzNiw0MDAuMDAsMC4wMCwzNzguNDgsMC4wMCwzNTIuMDBsMC4wMC0xMTEuNTUyIEwwLjAwLDk2LjAwIGMwLjAwLTI2LjQ5NiwgMjEuNDg4LTQ4LjAwLCA0OC4wMC00OC4wMGwgMzA0LjAwLDAuMDAgYyAyNi40OTYsMC4wMCwgNDguMDAsMjEuNTA0LCA0OC4wMCw0OC4wMGwwLjAwLDE5LjUzNiBsIDQzLjM0NC00Mi43NTJjIDYuMDAtNS45MDQsIDE0LjA2NC05LjIxNiwgMjIuNDY0LTkuMjE2CglMIDQ4MC4wMCw2My41NjggYyAxNy42NjQsMC4wMCwgMzIuMDAsMTQuMzIsIDMyLjAwLDMyLjAwTCA1MTIuMDAsMzUyLjAwIEMgNTEyLjAwLDM2OS42OCwgNDk3LjY2NCwzODQuMDAsIDQ4MC4wMCwzODQuMDB6IE0gNDguMDAsODAuMDBjLTguODMyLDAuMDAtMTYuMDAsNy4xODQtMTYuMDAsMTYuMDBMIDMyLjAwLDM1Mi4wMCBjMC4wMCw4Ljg0OCwgNy4xNTIsMTYuMDAsIDE2LjAwLDE2LjAwbCAzMDQuMDAsMC4wMCBjIDguODE2LDAuMDAsIDE2LjAwLTcuMTY4LCAxNi4wMC0xNi4wMGwwLjAwLTI1Ni4wMCAKCWMwLjAwLTguODE2LTcuMTg0LTE2LjAwLTE2LjAwLTE2LjAwTCA0OC4wMCw4MC4wMCB6IE0gNDgwLjAwLDk1LjU2OGwtMTQuMTkyLDAuMDAgTCA0NjQuMDAsOTUuNTY4IGwtNjQuMDAsNjQuMDBMIDQwMC4wMCwxNjAuMDAgbC0xNi4wMCwxNi4wMGwwLjAwLDk2LjAwIGwgODAuMDAsODAuMDBsIDEuODA4LDAuMDAgTCA0ODAuMDAsMzUyLjAwIEwgNDgwLjAwLDk1LjU2OCB6IiBkYXRhLXRhZ3M9InZpZGVvIiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZTAwNjsiIGQ9Ik0gNDc5LjY4LDM3MC44OTZjLTEuNTM2LDI1LjEyLTIyLjE5Miw0NS4wNTYtNDcuNjgsNDUuMDU2bC00OC4wMCwwLjAwIGwwLjAwLDE2LjAwIEwgMzg0LjAwLDQzMS45ODQgCgkJYzAuMDAsMjYuNTEyLTIxLjUwNCw0OC4wMC00OC4wMCw0OC4wMEwgMTc2LjAwLDQ3OS45ODQgYy0yNi41MTIsMC4wMC00OC4wMC0yMS40ODgtNDguMDAtNDguMDBsMC4wMC0wLjAxNiBsMC4wMC0xNi4wMCBMIDgwLjAwLDQxNS45NjggYy0yNS41MiwwLjAwLTQ2LjE2LTE5LjkzNi00Ny42OTYtNDUuMDU2TCAzMi4wMCwzNzAuOTEyIGwwLjAwLTE4LjkyOCBsMC4wMC0xNi4wMCBjMC4wMC0xNy42NjQsIDE0LjMzNi0zMi4wMCwgMzIuMDAtMzIuMDBsMC4wMCwwLjAwbDAuMDAtMjcyLjAwIAoJCWMwLjAwLTM1LjM0NCwgMjguNjU2LTY0LjAwLCA2NC4wMC02NC4wMGwgMjU2LjAwLDAuMDAgYyAzNS4zNDQsMC4wMCwgNjQuMDAsMjguNjU2LCA2NC4wMCw2NC4wMGwwLjAwLDI3Mi4wMCBsMC4wMCwwLjAwYyAxNy42NjQsMC4wMCwgMzIuMDAsMTQuMzM2LCAzMi4wMCwzMi4wMGwwLjAwLDE2LjAwIEwgNDgwLjAwLDM3MC44OTYgTCA0NzkuNjgsMzcwLjg5NiB6IE0gMTYwLjAwLDQzMS45NjhjMC4wMCw4Ljg0OCwgNy4xNTIsMTYuMDAsIDE2LjAwLDE2LjAwbCAxNjAuMDAsMC4wMCAKCQljIDguODQ4LDAuMDAsIDE2LjAwLTcuMTUyLCAxNi4wMC0xNi4wMGwwLjAwLTE2LjAwIEwgMTYwLjAwLDQxNS45NjggTCAxNjAuMDAsNDMxLjk2OCB6IE0gNDE2LjAwLDMxLjk2OGMwLjAwLTE3LjYzMi0xNC4zNjgtMzIuMDAtMzIuMDAtMzIuMDBMIDEyOC4wMC0wLjAzMiBjLTE3LjY0OCwwLjAwLTMyLjAwLDE0LjM2OC0zMi4wMCwzMi4wMGwwLjAwLDI3Mi4wMCBsIDMyMC4wMCwwLjAwIEwgNDE2LjAwLDMxLjk2OCB6IE0gNDQ4LjAwLDM1MS45ODRsMC4wMC0xNi4wMCBMIDY0LjAwLDMzNS45ODQgbDAuMDAsMTYuMDAgTCA2NC4wMCwzNjcuOTY4IAoJCWMwLjAwLDguODQ4LCA3LjE1MiwxNi4wMCwgMTYuMDAsMTYuMDBsIDM1Mi4wMCwwLjAwIGMgOC44NDgsMC4wMCwgMTYuMDAtNy4xNTIsIDE2LjAwLTE2LjAwTCA0NDguMDAsMzUxLjk4NCB6TSAxNDQuMDAsMzEuOTA0bCAzMi4wMCwwLjAwIGMgOC44NDgsMC4wMCwgMTYuMDAsNy4xNTIsIDE2LjAwLDE2LjAwbDAuMDAsMjA4LjAwIGMwLjAwLDguODQ4LTcuMTUyLDE2LjAwLTE2LjAwLDE2LjAwTCAxNDQuMDAsMjcxLjkwNCAKCQljLTguODQ4LDAuMDAtMTYuMDAtNy4xNTItMTYuMDAtMTYuMDBsMC4wMC0yMDguMDAgQyAxMjguMDAsMzkuMDU2LCAxMzUuMTUyLDMxLjkwNCwgMTQ0LjAwLDMxLjkwNHogTSAxNDQuMDAsMjU1LjkybCAzMi4wMCwwLjAwIGwwLjAwLTIwOC4wMCBMIDE0NC4wMCw0Ny45MiBMIDE0NC4wMCwyNTUuOTIgek0gMjQwLjAwLDMxLjkwNGwgMzIuMDAsMC4wMCBjIDguODQ4LDAuMDAsIDE2LjAwLDcuMTUyLCAxNi4wMCwxNi4wMGwwLjAwLDIwOC4wMCBjMC4wMCw4Ljg0OC03LjE1MiwxNi4wMC0xNi4wMCwxNi4wMGwtMzIuMDAsMC4wMCAKCQljLTguODQ4LDAuMDAtMTYuMDAtNy4xNTItMTYuMDAtMTYuMDBsMC4wMC0yMDguMDAgQyAyMjQuMDAsMzkuMDU2LCAyMzEuMTUyLDMxLjkwNCwgMjQwLjAwLDMxLjkwNHogTSAyNDAuMDAsMjU1LjkybCAzMi4wMCwwLjAwIGwwLjAwLTIwOC4wMCBsLTMyLjAwLDAuMDAgTCAyNDAuMDAsMjU1LjkyIHpNIDMzNi4wMCwzMS45MDRsIDMyLjAwLDAuMDAgYyA4Ljg0OCwwLjAwLCAxNi4wMCw3LjE1MiwgMTYuMDAsMTYuMDBsMC4wMCwyMDguMDAgYzAuMDAsOC44NDgtNy4xNTIsMTYuMDAtMTYuMDAsMTYuMDBsLTMyLjAwLDAuMDAgCgkJYy04Ljg0OCwwLjAwLTE2LjAwLTcuMTUyLTE2LjAwLTE2LjAwbDAuMDAtMjA4LjAwIEMgMzIwLjAwLDM5LjA1NiwgMzI3LjE1MiwzMS45MDQsIDMzNi4wMCwzMS45MDR6IE0gMzM2LjAwLDI1NS45MmwgMzIuMDAsMC4wMCBsMC4wMC0yMDguMDAgbC0zMi4wMCwwLjAwIEwgMzM2LjAwLDI1NS45MiB6IiBkYXRhLXRhZ3M9InRyYXNoIiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZTAwNzsiIGQ9Ik0gNDk3Ljc2LDI2LjYyNGMtMy4yMTYsMi4xMjgtNjEuNTY4LDQwLjQwLTE0OC4zNjgsNTkuMTg0YyAzMS44NCw0MC4zMzYsIDUyLjI4OCw5NC41OTIsIDYwLjk3NiwxMzAuNzA0CgljIDEyLjA2NCw1MC4wNDgsIDcuMzc2LDE0Ny45NjgtNDAuNjg4LDIwOC45OTJDIDM0MS41ODQsNDYxLjE2OCwgMzAyLjI3Miw0ODAuMDAsIDI1Ni4wMCw0ODAuMDBjLTQ2LjI3MiwwLjAwLTg1LjU4NC0xOC44NDgtMTEzLjY2NC01NC40OTYKCUMgOTQuMjcyLDM2NC40OTYsIDg5LjYwLDI2Ni41NzYsIDEwMS42NDgsMjE2LjUyOGMgOC42ODgtMzYuMTEyLCAyOS4xMi05MC4zNjgsIDYwLjk3Ni0xMzAuNzA0Yy04Ni44MC0xOC43ODQtMTQ1LjE1Mi01Ny4wNTYtMTQ4LjM1Mi01OS4xODQKCWMtMTEuNzI4LTcuODA4LTE2Ljk3Ni0yMi40MC0xMi44OC0zNS44NzJDIDUuNDU2LTIyLjc1MiwgMTcuOTItMzIuMDAsIDMyLjAwLTMyLjAwbCA0NDguMDAsMC4wMCBjIDE0LjA5NiwwLjAwLCAyNi41MjgsOS4yNDgsIDMwLjYyNCwyMi43NTIKCUMgNTE0LjczNiw0LjIyNCwgNTA5LjQ4OCwxOC44MTYsIDQ5Ny43NiwyNi42MjR6IE0gMzI0LjI3MiwxMDUuNjMybC01LjIxNi02LjYyNGMtMzguMTYtNDMuODQtODcuOTItNDMuODQtMTI2LjA2NCwwLjAwbC01LjIzMiw2LjYyNAoJYy00NC41Niw1Ni40NjQtNjYuNjcyLDEzMS4xNTItNTcuMTUyLDIwMi40MEMgMTM5LjMyOCwzNzYuNDk2LCAxNzguNTYsNDQ4LjAwLCAyNTYuMDAsNDQ4LjAwYyA3Ny40NCwwLjAwLCAxMTYuNjg4LTcxLjUyLCAxMjUuNDA4LTEzOS45ODQKCUMgMzkwLjg5NiwyMzYuNzM2LCAzNjguODY0LDE2Mi4xMjgsIDMyNC4yNzIsMTA1LjYzMnogTSAzMi4wMCwwLjAwYyAyLjIwOCwxLjQ3MiwgNTYuNDE2LDM3LjAyNCwgMTM3LjM3Niw1NC41MjhsIDM5Ljc0NCw4LjU5MkMgMjIzLjMxMiw1My44MDgsIDIzOC44OCw0OC4wMCwgMjU2LjAwLDQ4LjAwCgljIDE3LjEzNiwwLjAwLCAzMi42ODgsNS44MDgsIDQ2Ljg4LDE1LjEybCAzOS43NDQtOC41OTJjIDgwLjMyLTE3LjM3NiwgMTM0LjMzNi01Mi41MjgsIDEzNy4zNzYtNTQuNTI4TCAzMi4wMCwwLjAwIHoiIGRhdGEtdGFncz0idXNlciIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGUwMDg7IiBkPSJNIDM1Mi4wNjQsNDgwLjAwYy04OC4zNjgsMC4wMC0xNjAuMDAtNzEuNjQ4LTE2MC4wMC0xNjAuMDBjMC4wMC0yMC41NiwgNC4zMDQtNDAuMDE2LCAxMS40MDgtNTguMDY0TCA5LjA4OCw2Ny41NjgKCQlDIDMuNDcyLDYxLjkzNiwgMC4wMCw1Ni41OTIsIDAuMDAsNDguMDBsMC4wMC00OC4wMCBjMC4wMC0xNy4xMiwgMTQuODY0LTMyLjAwLCAzMi4wMC0zMi4wMGwgNDguMDAsMC4wMCBjIDguNTc2LDAuMDAsIDE0LjAwLDMuNDQsIDE5LjYxNiw5LjAyNEwgMTIyLjU3NiwwLjAwbCAzNy40ODgsMC4wMCBjIDE3LjY2NCwwLjAwLCAzMi4wMCwxNC4zMzYsIDMyLjAwLDMyLjAwbDAuMDAsMzIuMDAgbCAzMi4wMCwwLjAwIAoJCWMgMTcuNjY0LDAuMDAsIDMyLjAwLDE0LjMzNiwgMzIuMDAsMzIuMDBsMC4wMCwzNy41MDQgbCAzNy45MDQsMzcuOTM2QyAzMTIuMDMyLDE2NC4zMiwgMzMxLjQ3MiwxNjAuMDAsIDM1Mi4wNjQsMTYwLjAwYyA4OC4zMzYsMC4wMCwgMTYwLjAwLDcxLjY0OCwgMTYwLjAwLDE2MC4wMFMgNDQwLjQwLDQ4MC4wMCwgMzUyLjA2NCw0ODAuMDB6IE0gMzUyLjA2NCwxOTIuMDAKCQljLTIzLjY4LDAuMDAtNDUuNjMyLDYuODgtNjQuNjU2LDE4LjExMmwtNS41MDQtNS40ODhsLTE4LjAwLTE4LjAwbC0zMC40OC0zMC40OTZjLTYuMDAtNi4wMC05LjM3Ni0xNC4xMjgtOS4zNzYtMjIuNjI0TCAyMjQuMDQ4LDk2LjAwIGwtMzIuMDAsMC4wMCAKCQljLTE3LjY2NCwwLjAwLTMyLjAwLTE0LjMyLTMyLjAwLTMyLjAwbDAuMDAtMzIuMDAgTCAxMjIuNTc2LDMyLjAwIGMtOC40OCwwLjAwLTE2LjYyNC0zLjM3Ni0yMi42MjQtOS4zNzZsLTIyLjY4OC0yMi42ODhMIDMyLjA0OCwwLjAwTCAzMi4wMCw0NS42MGwgMTg2LjY0LDE4Ni4zMDQKCQljMC4wMCwwLjAwLDAuMDAtMC4wMTYsIDAuMDE2LTAuMDMybCAyMy41MDQsMjMuNTA0Yy0xMS4yMzIsMTkuMDI0LTE4LjExMiw0MC45Ni0xOC4xMTIsNjQuNjRjMC4wMCw3MC42ODgsIDU3LjMyOCwxMjguMDAsIDEyOC4wMCwxMjguMDBzIDEyOC4wMC01Ny4zMTIsIDEyOC4wMC0xMjguMDBTIDQyMi43NTIsMTkyLjAwLCAzNTIuMDY0LDE5Mi4wMHpNIDQ0NS4xMiwzNDguMTc2Yy0xNy45MzYsMjQuOTkyLTM5Ljc3Niw0Ni44MC02NC44OCw2NC44NjRDIDM3Ni4xNiw0MTYuMDAsIDM3MC44OCw0MTYuNzM2LCAzNjYuMTI4LDQxNS4wNzIKCQljLTIyLjIyNC03LjgyNC0zNy40NC0yMy4wMjQtNDUuMjE2LTQ1LjI0OGMtMC41OTItMS42NjQtMC44OC0zLjM5Mi0wLjg4LTUuMTA0YzAuMDAtMy4xODQsIDAuOTkyLTYuMzM2LCAyLjkxMi05LjAwOAoJCWMgMTguMDAtMjUuMDI0LCAzOS44MDgtNDYuODQ4LCA2NC44NDgtNjQuODQ4YyA0LjA5Ni0yLjk0NCwgOS4zNDQtMy42OTYsIDE0LjA5Ni0yLjA0OGMgMjIuMjU2LDcuNzc2LCAzNy40NzIsMjMuMDA4LCA0NS4yOCw0NS4yNDgKCQljIDAuNTkyLDEuNjY0LCAwLjg4LDMuMzkyLCAwLjg4LDUuMTA0QyA0NDguMDMyLDM0Mi4zNTIsIDQ0Ny4wMjQsMzQ1LjUwNCwgNDQ1LjEyLDM0OC4xNzZ6IE0gMzk3LjEyLDMwMy44NEMgMzczLjQ3MiwzMjAuODQ4LCAzNTIuODgsMzQxLjQ0LCAzMzYuMDAsMzY0LjUyOAoJCWMgNi4xOTIsMTcuNjQ4LCAxNy43NzYsMjkuMjMyLCAzNC45MTIsMzUuNTM2YyAyMy42NjQtMTcuMDQsIDQ0LjIyNC0zNy41ODQsIDYxLjA1Ni02MC45NzZDIDQyNS43MTIsMzIxLjU2OCwgNDE0LjE2LDMxMC4wNDgsIDM5Ny4xMiwzMDMuODR6IiBkYXRhLXRhZ3M9ImtleSIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGUwMDk7IiBkPSJNIDMyMC4wMCw0NzkuOTJjLTEwNi4wMzIsMC4wMC0xOTIuMDAtODUuOTY4LTE5Mi4wMC0xOTIuMDBjMC4wMC0zMi40MTYsIDguMTEyLTYyLjkyOCwgMjIuMzItODkuNzI4bC0xMzMuNTA0LTEzMy40NzJsIDAuMTEyLTAuMDk2CgkJQyA2LjQ5Niw1NC4zNjgsMC4wMCw0MC4xNiwwLjAwLDI0LjM2OGMwLjAwLTMxLjE4NCwgMjUuMjgtNTYuNDY0LCA1Ni40NjQtNTYuNDY0YyAxNS43NiwwLjAwLCAyOS45ODQsNi40OTYsIDQwLjI0LDE2Ljk0NGwtMC4wMzIsMC4wMzJsIDEzMy40NTYsMTMzLjQ0CgkJYyAyNi44MTYtMTQuMjU2LCA1Ny4zNzYtMjIuNDAsIDg5Ljg3Mi0yMi40MGMgMTA2LjAzMiwwLjAwLCAxOTIuMDAsODUuOTY4LCAxOTIuMDAsMTkyLjAwQyA1MTIuMDAsMzkzLjk1MiwgNDI2LjAzMiw0NzkuOTIsIDMyMC4wMCw0NzkuOTJ6IE0gNzYuNzIsNC44NDgKCQljLTUuMTUyLTUuMzQ0LTEyLjI4OC04LjY4OC0yMC4yNTYtOC42ODhjLTE1LjYwLDAuMDAtMjguMjQsMTIuNjI0LTI4LjI0LDI4LjIyNGMwLjAwLDcuOTY4LCAzLjM2LDE1LjA4OCwgOC42ODgsMjAuMjU2bC0wLjE0NCwwLjEyOGwgMTI5LjA1NiwxMjkuMDU2CgkJYyAxMS4yOC0xNS4yMTYsIDI0LjcyLTI4LjY1NiwgMzkuOTA0LTM5Ljk2OEwgNzYuNzIsNC44NDh6IE0gMzIwLjAwLDEyNy45MDRjLTg4LjM1MiwwLjAwLTE2MC4wMCw3MS42NjQtMTYwLjAwLDE2MC4wMGMwLjAwLDg4LjM1MiwgNzEuNjQ4LDE2MC4wMCwgMTYwLjAwLDE2MC4wMAoJCWMgODguMzM2LDAuMDAsIDE2MC4wMC03MS42NDgsIDE2MC4wMC0xNjAuMDBDIDQ4MC4wMCwxOTkuNTY4LCA0MDguMzM2LDEyNy45MDQsIDMyMC4wMCwxMjcuOTA0ek0gMzIwLjAwLDM5OS45MiBDIDMyNC40MCwzOTkuOTIgMzI4LjAwLDM5Ni4zMzYgMzI4LjAwLDM5MS45MiBDIDMyOC4wMCwzODcuNTA0IDMyNC40MCwzODMuOTIgMzIwLjAwLDM4My45MiBDIDI2Ni45NzYsMzgzLjkyIDIyNC4wMCwzNDAuOTI4IDIyNC4wMCwyODcuOTIgQyAyMjQuMDAsMjgzLjUwNCAyMjAuNDE2LDI3OS45MiAyMTYuMDAsMjc5LjkyIEMgMjExLjU4NCwyNzkuOTIgMjA4LjAwLDI4My41MDQgMjA4LjAwLDI4Ny45MiBDIDIwOC4wMCwzNDkuNzc2IDI1OC4xMjgsMzk5LjkyIDMyMC4wMCwzOTkuOTIgWiIgZGF0YS10YWdzPSJzZWFyY2giIC8+CjxnbHlwaCB1bmljb2RlPSImI3hlMDBhOyIgZD0iTSA0ODYuMjU2LDI3Ny4xMmwtNDkuMDI0LDkuODI0Yy0yLjQ2NCw3LjA4OC01LjM3NiwxMy45NjgtOC41OTIsMjAuNjI0bCAyNy43NzYsNDEuNjY0CgkJYyA4LjQ2NCwxMi42ODgsIDYuNzg0LDI5LjYwLTQuMDAsNDAuMzY4bC0zMC43ODQsMzAuNzg0Yy02LjE5Miw2LjE5Mi0xNC4zNjgsOS4zNzYtMjIuNjU2LDkuMzc2Yy02LjEyOCwwLjAwLTEyLjMyLTEuNzYtMTcuNzEyLTUuMzc2CgkJbC00MS42NjQtMjcuNzZjLTYuNjg4LDMuMjMyLTEzLjU2OCw2LjExMi0yMC42NTYsOC41NzZMIDMwOS4xMiw0NTQuMjRjLTIuOTc2LDE0Ljk3Ni0xNi4xMjgsMjUuNzI4LTMxLjM3NiwyNS43MjhsLTQzLjUyLDAuMDAgCgkJYy0xNS4yNDgsMC4wMC0yOC4zODQtMTAuNzY4LTMxLjM3Ni0yNS43MjhsLTkuODI0LTQ5LjA0Yy03LjA4OC0yLjQ2NC0xMy45NjgtNS4zNi0yMC42MjQtOC41NzZMIDEzMC43NTIsNDI0LjM4NAoJCUMgMTI1LjMyOCw0MjguMDAsIDExOS4xNTIsNDI5Ljc2LCAxMTMuMDA4LDQyOS43NmMtOC4yNzIsMC4wMC0xNi40NDgtMy4xODQtMjIuNjQtOS4zNzZMIDU5LjYwLDM4OS42MGMtMTAuNzg0LTEwLjc4NC0xMi40NjQtMjcuNjgtNC4wMC00MC4zNjhsIDI3Ljc2LTQxLjY2NAoJCWMtMy4yMzItNi42NzItNi4xMTItMTMuNTUyLTguNTc2LTIwLjY0TCAyNS43MjgsMjc3LjEyQyAxMC43NjgsMjc0LjEyOCwwLjAwLDI2MC45OTIsMC4wMCwyNDUuNzQ0bDAuMDAtNDMuNTIgYzAuMDAtMTUuMjQ4LCAxMC43NjgtMjguNDAsIDI1LjcyOC0zMS4zNzYKCQlsIDQ5LjA0LTkuODRjIDIuNDY0LTcuMDg4LCA1LjM2LTEzLjk2OCwgOC41NzYtMjAuNjI0TCA1NS42MCw5OC43MmMtOC40NjQtMTIuNjg4LTYuNzg0LTI5LjYwLCA0LjAwLTQwLjM2OGwgMzAuNzg0LTMwLjc4NAoJCWMgNi4xOTItNi4xOTIsIDE0LjM2OC05LjM3NiwgMjIuNjQtOS4zNzZjIDYuMTQ0LDAuMDAsIDEyLjMzNiwxLjc3NiwgMTcuNzI4LDUuMzc2bCA0MS42NjQsMjcuNzc2YyA2LjY3Mi0zLjI0OCwgMTMuNTUyLTYuMTI4LCAyMC42NC04LjU5MgoJCWwgOS44MDgtNDkuMDI0YyAyLjk5Mi0xNC45NzYsIDE2LjEyOC0yNS43NDQsIDMxLjM3Ni0yNS43NDRsIDQzLjUyLDAuMDAgYyAxNS4yNDgsMC4wMCwgMjguNDAsMTAuNzg0LCAzMS4zNzYsMjUuNzQ0bCA5Ljg0LDQ5LjAyNAoJCWMgNy4wODgsMi40NjQsIDEzLjk2OCw1LjM3NiwgMjAuNjI0LDguNTkybCA0MS42NjQtMjcuNzc2YyA1LjQwOC0zLjYwLCAxMS42MC01LjM3NiwgMTcuNzEyLTUuMzc2YyA4LjI4OCwwLjAwLCAxNi40NjQsMy4xODQsIDIyLjY1Niw5LjM3NgoJCWwgMzAuNzg0LDMwLjc4NGMgMTAuNzg0LDEwLjc4NCwgMTIuNDY0LDI3LjY4LCA0LjAwLDQwLjM2OGwtMjcuNzc2LDQxLjY2NGMgMy4yNDgsNi42ODgsIDYuMTI4LDEzLjU2OCwgOC41OTIsMjAuNjU2bCA0OS4wMjQsOS44MDgKCQlDIDUwMS4yMTYsMTczLjgwOCwgNTEyLjAwLDE4Ni45NzYsIDUxMi4wMCwyMDIuMjI0bDAuMDAsNDMuNTIgQyA1MTIuMDAsMjYwLjk5MiwgNTAxLjIxNiwyNzQuMTI4LCA0ODYuMjU2LDI3Ny4xMnogTSA0MzAuOTQ0LDE5Mi40MAoJCWMtMTEuMTItMi4yMjQtMjAuMjI0LTEwLjE2LTIzLjkzNi0yMC44OGMtMi4wNjQtNS45MDQtNC40NjQtMTEuNjMyLTcuMTUyLTE3LjE4NGMtNC45NzYtMTAuMjI0LTQuMTI4LTIyLjI4OCwgMi4xNi0zMS43MTJsIDI3Ljc3Ni00MS42NjQKCQlsLTMwLjc4NC0zMC43ODRsLTQxLjY2NCwyNy43NzZjLTUuMzQ0LDMuNTY4LTExLjUzNiw1LjM3Ni0xNy43NDQsNS4zNzZjLTQuNzUyLDAuMDAtOS41MzYtMS4wNTYtMTMuOTM2LTMuMTg0CgkJYy01LjU2OC0yLjY4OC0xMS4yOC01LjEyLTE3LjIxNi03LjE4NGMtMTAuNjg4LTMuNzEyLTE4LjYyNC0xMi44MTYtMjAuODQ4LTIzLjkzNmwtOS44NC00OS4wNTZsLTQzLjUyLDAuMDAgbC05LjgwOCw0OS4wNTYKCQljLTIuMjI0LDExLjEyLTEwLjE2LDIwLjIyNC0yMC44NjQsMjMuOTM2Yy01LjkwNCwyLjA2NC0xMS42NDgsNC40NjQtMTcuMjAsNy4xNTJjLTQuNDE2LDIuMTYtOS4xODQsMy4yMTYtMTMuOTUyLDMuMjE2CgkJYy02LjIyNCwwLjAwLTEyLjQwLTEuODA4LTE3Ljc0NC01LjM3NmwtNDEuNjY0LTI3Ljc3NmwtMzAuNzg0LDMwLjc4NGwgMjcuNzYsNDEuNjY0YyA2LjI4OCw5LjQ0LCA3LjEwNCwyMS41MDQsIDIuMTkyLDMxLjY4CgkJYy0yLjY4OCw1LjU2OC01LjEwNCwxMS4yOC03LjE2OCwxNy4yMTZjLTMuNzEyLDEwLjY4OC0xMi44MzIsMTguNjI0LTIzLjkzNiwyMC44NDhsLTQ5LjA0LDkuODRMIDMyLjAwLDI0NS43NDRsIDQ5LjA1Niw5LjgwOAoJCWMgMTEuMTA0LDIuMjI0LCAyMC4yMjQsMTAuMTYsIDIzLjkzNiwyMC44NjRjIDIuMDY0LDUuOTA0LCA0LjQ0OCwxMS42NDgsIDcuMTUyLDE3LjIwYyA0Ljk2LDEwLjIwOCwgNC4xMjgsMjIuMjcyLTIuMTc2LDMxLjY5NkwgODIuMjI0LDM2Ni45NzYKCQlMIDExMi45OTIsMzk3Ljc2bCA0MS42NjQtMjcuNzZDIDE2MC4wMCwzNjYuNDMyLCAxNjYuMTkyLDM2NC42MjQsIDE3Mi40MCwzNjQuNjI0YyA0Ljc1MiwwLjAwLCA5LjUyLDEuMDU2LCAxMy45MzYsMy4xODRjIDUuNTUyLDIuNjg4LCAxMS4yOCw1LjEwNCwgMTcuMjAsNy4xNjgKCQljIDEwLjcwNCwzLjcxMiwgMTguNjQsMTIuODMyLCAyMC44NjQsMjMuOTM2bCA5LjgyNCw0OS4wNGwgNDMuNTIsMC4wMTZsIDkuODA4LTQ5LjA1NmMgMi4yMjQtMTEuMTA0LCAxMC4xNi0yMC4yMjQsIDIwLjg4LTIzLjkzNgoJCWMgNS45MDQtMi4wNjQsIDExLjYzMi00LjQ0OCwgMTcuMTg0LTcuMTUyYyA0LjQzMi0yLjE0NCwgOS4xODQtMy4yMCwgMTMuOTY4LTMuMjBjIDYuMjI0LDAuMDAsIDEyLjQwLDEuODA4LCAxNy43NDQsNS4zNzZsIDQxLjY2NCwyNy43NmwgMzAuNzg0LTMwLjc4NAoJCWwtMjcuNzc2LTQxLjY2NGMtNi4yODgtOS40NC03LjA4OC0yMS40ODgtMi4xOTItMzEuNjhjIDIuNjg4LTUuNTUyLCA1LjEyLTExLjI4LCA3LjE4NC0xNy4yMGMgMy43MTItMTAuNzA0LCAxMi44MTYtMTguNjQsIDIzLjkzNi0yMC44NjQKCQlsIDQ5LjAyNC05LjgyNEwgNDgwLjAwLDIwMi4yMjRMIDQzMC45NDQsMTkyLjQwek0gMjU2LjAwLDMzNS45ODRjLTYxLjg0LDAuMDAtMTEyLjAwLTUwLjE2LTExMi4wMC0xMTIuMDBjMC4wMC02MS44NTYsIDUwLjE2LTExMi4wMCwgMTEyLjAwLTExMi4wMHMgMTEyLjAwLDUwLjE2LCAxMTIuMDAsMTEyLjAwQyAzNjguMDAsMjg1LjgyNCwgMzE3Ljg0LDMzNS45ODQsIDI1Ni4wMCwzMzUuOTg0egoJCSBNIDI1Ni4wMCwxMjUuOTY4Yy01NC4xMTIsMC4wMC05OC4wMCw0My45MDQtOTguMDAsOTguMDBjMC4wMCw1NC4xMTIsIDQzLjg4OCw5OC4wMCwgOTguMDAsOTguMDBjIDU0LjA5NiwwLjAwLCA5OC4wMC00My44ODgsIDk4LjAwLTk4LjAwCgkJQyAzNTQuMDAsMTY5Ljg3MiwgMzEwLjA5NiwxMjUuOTY4LCAyNTYuMDAsMTI1Ljk2OHpNIDI1Ni4wMCwyODcuOTg0Yy0zNS4zNiwwLjAwLTY0LjAwLTI4LjY0LTY0LjAwLTY0LjAwYzAuMDAtMzUuMzQ0LCAyOC42NC02NC4wMCwgNjQuMDAtNjQuMDBjIDM1LjM0NCwwLjAwLCA2NC4wMCwyOC42NTYsIDY0LjAwLDY0LjAwQyAzMjAuMDAsMjU5LjMyOCwgMjkxLjM0NCwyODcuOTg0LCAyNTYuMDAsMjg3Ljk4NHoKCQkgTSAyNTYuMDAsMTc1Ljk2OGMtMjYuNDk2LDAuMDAtNDguMDAsMjEuNTA0LTQ4LjAwLDQ4LjAwYzAuMDAsMjYuNDk2LCAyMS41MDQsNDguMDAsIDQ4LjAwLDQ4LjAwcyA0OC4wMC0yMS41MDQsIDQ4LjAwLTQ4LjAwQyAzMDQuMDAsMTk3LjQ3MiwgMjgyLjQ5NiwxNzUuOTY4LCAyNTYuMDAsMTc1Ljk2OHoiIGRhdGEtdGFncz0ic2V0dGluZ3MiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hlMDBiOyIgZD0iTSAyNTYuMDAsMzE5Ljk4NGMtNzAuNzA0LDAuMDAtMTI4LjAwLTU3LjI5Ni0xMjguMDAtMTI4LjAwYzAuMDAtNzAuNjg4LCA1Ny4yOTYtMTI4LjAwLCAxMjguMDAtMTI4LjAwCgkJYyA3MC42ODgsMC4wMCwgMTI4LjAwLDU3LjMxMiwgMTI4LjAwLDEyOC4wMEMgMzg0LjAwLDI2Mi42NzIsIDMyNi42ODgsMzE5Ljk4NCwgMjU2LjAwLDMxOS45ODR6IE0gMzI4Ljg4LDEyOS41MDRjLTM0LjQ5Ni00MC4yNTYtOTUuMDg4LTQ0LjkxMi0xMzUuMzQ0LTEwLjQwCgkJYy00MC4yNzIsMzQuNDk2LTQ0LjkxMiw5NS4xMDQtMTAuNDAsMTM1LjM0NGMgMzQuNDgsNDAuMjcyLCA5NS4wODgsNDQuOTEyLCAxMzUuMzQ0LDEwLjQwQyAzNTguNzIsMjMwLjM2OCwgMzYzLjM3NiwxNjkuNzQ0LCAzMjguODgsMTI5LjUwNHpNIDI1Ni4wMCwyNTUuOTg0IEMgMjYwLjQxNiwyNTUuOTg0IDI2NC4wMCwyNTIuNDAgMjY0LjAwLDI0Ny45ODQgQyAyNjQuMDAsMjQzLjU2OCAyNjAuNDE2LDIzOS45ODQgMjU2LjAwLDIzOS45ODQgQyAyMjkuNDg4LDIzOS45ODQgMjA4LjAxNiwyMTguNDk2IDIwOC4wMCwxOTIuMDAgTCAyMDguMDAsMTkxLjk2OCBDIDIwOC4wMCwxODcuNTY4IDIwNC40MTYsMTgzLjk2OCAyMDAuMDAsMTgzLjk2OCBDIDE5NS41ODQsMTgzLjk2OCAxOTIuMDAsMTg3LjU2OCAxOTIuMDAsMTkxLjk2OCBMIDE5Mi4wMCwxOTIuMDAgQyAxOTIuMDE2LDIyNy4zMjggMjIwLjY1NiwyNTUuOTg0IDI1Ni4wMCwyNTUuOTg0IFpNIDQ3MS44NzIsMzM1LjMyOGwtNjkuMzQ0LDExLjU2OGwtMjEuOTY4LDU0Ljk0NAoJCUMgMzczLjIxNiw0MjAuMTYsIDM1NS43MTIsNDMyLjAwLCAzMzYuMDAsNDMyLjAwTCAxNzYuMDAsNDMyLjAwIEMgMTU2LjI4OCw0MzIuMDAsIDEzOC43ODQsNDIwLjE2LCAxMzEuNDI0LDQwMS44MjRMIDEwOS40NzIsMzQ2Ljg5NkwgNDAuMTQ0LDMzNS4zMjhDIDE2Ljg4LDMzMS40NzIsMC4wMCwzMTEuNTY4LDAuMDAsMjg4LjAwbDAuMDAtMjQwLjAwIAoJCWMwLjAwLTI2LjQ2NCwgMjEuNTM2LTQ4LjAwLCA0OC4wMC00OC4wMGwgNDE2LjAwLDAuMDAgYyAyNi40NjQsMC4wMCwgNDguMDAsMjEuNTM2LCA0OC4wMCw0OC4wMEwgNTEyLjAwLDI4OC4wMCBDIDUxMi4wMCwzMTEuNTY4LCA0OTUuMTIsMzMxLjQ3MiwgNDcxLjg3MiwzMzUuMzI4eiBNIDQ4MC4wMCw0OC4wMGMwLjAwLTguODQ4LTcuMTUyLTE2LjAwLTE2LjAwLTE2LjAwTCA0OC4wMCwzMi4wMCAKCQljLTguODQ4LDAuMDAtMTYuMDAsNy4xNTItMTYuMDAsMTYuMDBMIDMyLjAwLDI4OC4wMCBjMC4wMCw3LjgyNCwgNS42NjQsMTQuNDk2LCAxMy4zNzYsMTUuNzc2bCA4Ny4xMDQsMTQuNTEybCAyOC42NTYsNzEuNjQ4QyAxNjMuNTg0LDM5Ni4wMCwgMTY5LjQ1Niw0MDAuMDAsIDE3Ni4wMCw0MDAuMDBsIDE2MC4wMCwwLjAwIAoJCWMgNi41MjgsMC4wMCwgMTIuNDAtMy45ODQsIDE0Ljg0OC0xMC4wNjRsIDI4LjY1Ni03MS42NDhsIDg3LjEyLTE0LjUxMkMgNDc0LjMzNiwzMDIuNDk2LCA0ODAuMDAsMjk1LjgyNCwgNDgwLjAwLDI4OC4wMEwgNDgwLjAwLDQ4LjAwIHoiIGRhdGEtdGFncz0iY2FtZXJhIiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZTAwYzsiIGQ9Ik0gNTAyLjI1NiwyNTcuODcybC04MC4wMCwxMjguMDBjLTExLjY4LDE4LjcwNC0zMi4xOTIsMzAuMDgtNTQuMjU2LDMwLjA4TCA2NC4wMCw0MTUuOTUyIAoJCWMtMzUuMzQ0LDAuMDAtNjQuMDAtMjguNjU2LTY0LjAwLTY0LjAwbDAuMDAtMjU2LjAwIGMwLjAwLTM1LjM0NCwgMjguNjU2LTY0LjAwLCA2NC4wMC02NC4wMGwgMzA0LjAwLDAuMDAgYyAyMi4wNjQsMC4wMCwgNDIuNTYsMTEuMzc2LCA1NC4yNTYsMzAuMDk2bCA4MC4wMCwxMjguMDBDIDUxNS4yNDgsMjEwLjc2OCwgNTE1LjI0OCwyMzcuMTIsIDUwMi4yNTYsMjU3Ljg3MnoKCQkgTSA0NzUuMTIsMjA3LjAwOGwtODAuMDAtMTI4LjAzMmMtNS44NzItOS40MDgtMTYuMDMyLTE1LjAyNC0yNy4xMi0xNS4wMjRMIDY0LjAwLDYzLjk1MiBjLTE3LjY0OCwwLjAwLTMyLjAwLDE0LjM2OC0zMi4wMCwzMi4wMGwwLjAwLDI1Ni4wMCBjMC4wMCwxNy42NDgsIDE0LjM1MiwzMi4wMCwgMzIuMDAsMzIuMDBsIDMwNC4wMCwwLjAwIAoJCWMgMTEuMDg4LDAuMDAsIDIxLjI0OC01LjYzMiwgMjcuMTItMTUuMDI0bCA4MC4wMC0xMjguMDBDIDQ4MS41NjgsMjMwLjYwOCwgNDgxLjU2OCwyMTcuMjk2LCA0NzUuMTIsMjA3LjAwOHpNIDM2OC4wMCwyNzEuOTUyYy0yNi41MjgsMC4wMC00OC4wMC0yMS40ODgtNDguMDAtNDguMDBjMC4wMC0yNi41MTIsIDIxLjQ3Mi00OC4wMCwgNDguMDAtNDguMDAKCQljIDI2LjQ5NiwwLjAwLCA0OC4wMCwyMS41MDQsIDQ4LjAwLDQ4LjAwQyA0MTYuMDAsMjUwLjQ2NCwgMzk0LjQ5NiwyNzEuOTUyLCAzNjguMDAsMjcxLjk1MnogTSAzNjguMDAsMTkxLjkzNmMtMTcuNjgsMC4wMC0zMi4wMCwxNC4zMzYtMzIuMDAsMzIuMDBjMC4wMCwxNy42NjQsIDE0LjMyLDMyLjAwLCAzMi4wMCwzMi4wMAoJCWMgMTcuNjY0LDAuMDAsIDMyLjAwLTE0LjMzNiwgMzIuMDAtMzIuMDBDIDQwMC4wMCwyMDYuMjg4LCAzODUuNjY0LDE5MS45MzYsIDM2OC4wMCwxOTEuOTM2eiIgZGF0YS10YWdzPSJ0YWciIC8+CjxnbHlwaCB1bmljb2RlPSImI3hlMDBkOyIgZD0iTSA0MDAuMDAsMjcyLjAwTCA0MDAuMDAsMzM2LjAwIGMwLjAwLDc5LjUzNi02NC40NjQsMTQ0LjAwLTE0NC4wMCwxNDQuMDBjLTc5LjUzNiwwLjAwLTE0NC4wMC02NC40NjQtMTQ0LjAwLTE0NC4wMGwwLjAwLTY0LjAwIGMtMjYuNTEyLDAuMDAtNDguMDAtMjEuNDg4LTQ4LjAwLTQ4LjAwbDAuMDAtNDguMDAgbDAuMDAtMTYuMDAgbDAuMDAtMzIuMDAgbDAuMDAtMTYuMDAgYzAuMDAtNzkuNTM2LCA2NC40NjQtMTQ0LjAwLCAxNDQuMDAtMTQ0LjAwbCA5Ni4wMCwwLjAwIAoJCWMgNzkuNTM2LDAuMDAsIDE0NC4wMCw2NC40NjQsIDE0NC4wMCwxNDQuMDBsMC4wMCwxNi4wMCBsMC4wMCwzMi4wMCBsMC4wMCwxNi4wMCBsMC4wMCw0OC4wMCBDIDQ0OC4wMCwyNTAuNTI4LCA0MjYuNDk2LDI3Mi4wMCwgNDAwLjAwLDI3Mi4wMHogTSAxNDQuMDAsMzM2LjAwYzAuMDAsNjEuODU2LCA1MC4xNDQsMTEyLjAwLCAxMTIuMDAsMTEyLjAwYyA2MS44NTYsMC4wMCwgMTEyLjAwLTUwLjE0NCwgMTEyLjAwLTExMi4wMGwwLjAwLTY0LjAwIGwtMzIuMDAsMC4wMCBMIDMzNi4wMCwzMzUuOTY4IAoJCWMwLjAwLDQ0LjE5Mi0zNS44MDgsODAuMDAtODAuMDAsODAuMDBjLTQ0LjE5MiwwLjAwLTgwLjAwLTM1LjgwOC04MC4wMC04MC4wMEwgMTc2LjAwLDI3Mi4wMCBMIDE0NC4wMCwyNzIuMDAgTCAxNDQuMDAsMzM2LjAwIHogTSAzMjAuMDAsMzM2LjAwbDAuMDAtMC4wNDggTCAzMjAuMDAsMjcyLjAwIGwtMTI4LjAwLDAuMDAgTCAxOTIuMDAsMzM1Ljk2OCBMIDE5Mi4wMCwzMzYuMDAgYzAuMDAsMzUuMzQ0LCAyOC42NTYsNjQuMDAsIDY0LjAwLDY0LjAwQyAyOTEuMzQ0LDQwMC4wMCwgMzIwLjAwLDM3MS4zNDQsIDMyMC4wMCwzMzYuMDB6IE0gNDE2LjAwLDE3Ni4wMAoJCWwwLjAwLTE2LjAwIGwwLjAwLTMyLjAwIGwwLjAwLTE2LjAwIGMwLjAwLTYxLjc0NC01MC4yNTYtMTEyLjAwLTExMi4wMC0xMTIuMDBsLTk2LjAwLDAuMDAgYy02MS43NDQsMC4wMC0xMTIuMDAsNTAuMjU2LTExMi4wMCwxMTIuMDBsMC4wMCwxNi4wMCBsMC4wMCwzMi4wMCBsMC4wMCwxNi4wMCBsMC4wMCw0OC4wMCBjMC4wMCw4LjgzMiwgNy4xNjgsMTYuMDAsIDE2LjAwLDE2LjAwYyAxMC42NzIsMC4wMCwgMjEuMzI4LDAuMDAsIDMyLjAwLDAuMDBsIDIyNC4wMCwwLjAwIGMgMTAuNjU2LDAuMDAsIDIxLjMxMiwwLjAwLCAzMi4wMCwwLjAwCgkJYyA4LjgxNiwwLjAwLCAxNi4wMC03LjE2OCwgMTYuMDAtMTYuMDBMIDQxNi4wMCwxNzYuMDAgek0gMjU2LjAwLDE3Ni4wMCBDIDI3My42NjQsMTc2LjAwIDI4OC4wMCwxNjEuNjggMjg4LjAwLDE0NC4wMCBDIDI4OC4wMCwxMzQuMjU2IDI4Mi43NTIsMTE1LjcxMiAyNzcuMzQ0LDEwMS4wODggQyAyNzIuOTc2LDg5LjI4IDI2OC41MTIsODAuMDMyIDI1Ni4wMCw4MC4wMzIgQyAyNDQuNDk2LDgwLjAzMiAyMzkuMDI0LDg5LjM3NiAyMzQuNjcyLDEwMS4yNDggQyAyMjkuMzI4LDExNS44NCAyMjQuMDAsMTM0LjI4OCAyMjQuMDAsMTQ0LjAwIEMgMjI0LjAwLDE2MS42OCAyMzguMzM2LDE3Ni4wMCAyNTYuMDAsMTc2LjAwIFoiIGRhdGEtdGFncz0ibG9jayIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGUwMGU7IiBkPSJNIDI1Ni4wMCw0ODAuMDBDIDE1OC43ODQsNDgwLjAwLCA4MC4wMCw0MDEuMjE2LCA4MC4wMCwzMDQuMDBjMC4wMC02NC40OTYsIDU5LjAwOC0xMzIuODQ4LCA4MC40OTYtMTkyLjg4QyAxOTIuNTQ0LDIxLjYwLCAxODguOTkyLTMyLjAwLCAyNTYuMDAtMzIuMDAKCQljIDY4LjAwLDAuMDAsIDYzLjQ0LDUzLjM0NCwgOTUuNTA0LDE0Mi43NTJDIDM3My4wNTYsMTcwLjkxMiwgNDMyLjAwLDI0MC4wMCwgNDMyLjAwLDMwNC4wMEMgNDMyLjAwLDQwMS4yMTYsIDM1My4xODQsNDgwLjAwLCAyNTYuMDAsNDgwLjAweiBNIDI5Ny40NzIsNDUuMTg0bC03OS4zMjgtOS45MDQKCQljLTIuODMyLDguMTkyLTUuODcyLDE3Ljc3Ni05LjU2OCwzMC4yODhjLTAuMDQ4LDAuMTYtMC4xMTIsMC4zMzYtMC4xNDQsMC40OTZsIDk5LjAwOCwxMi4zNjhjLTEuNDA4LTQuNzItMi45MTItOS42OC00LjIyNC0xNC4xMjgKCQlDIDMwMS4xMiw1Ny4xMiwgMjk5LjI0OCw1MC44OCwgMjk3LjQ3Miw0NS4xODR6IE0gMjAzLjc3Niw4MS40NzJjLTIuOTEyLDkuNjMyLTYuMTkyLDE5Ljc3Ni05Ljg0LDMwLjUyOGwgMTI0LjI1NiwwLjAwIAoJCWMtMS45NjgtNS43NDQtMy45MzYtMTEuNTA0LTUuNjMyLTE2Ljk0NEwgMjAzLjc3Niw4MS40NzJ6IE0gMjU2LjAwLDAuMDBjLTE2LjIwOCwwLjAwLTIzLjY2NCwxLjg3Mi0zMS45NTIsMjAuMDBsIDY3LjgwOCw4LjQ5NgoJCUMgMjgyLjAzMiwyLjAzMiwgMjc0Ljg4LDAuMDAsIDI1Ni4wMCwwLjAweiBNIDMzMC43NTIsMTQ0LjAwbC0xNDkuMzI4LDAuMDAgYy03Ljk2OCwxNy4yOC0xNy41MzYsMzQuNTYtMjYuOTc2LDUxLjQ3MkMgMTMzLjU2OCwyMzIuODMyLCAxMTIuMDAsMjcxLjQ3MiwgMTEyLjAwLDMwNC4wMAoJCWMwLjAwLDc5LjQwOCwgNjQuNTkyLDE0NC4wMCwgMTQ0LjAwLDE0NC4wMGMgNzkuNDA4LDAuMDAsIDE0NC4wMC02NC41OTIsIDE0NC4wMC0xNDQuMDBjMC4wMC0zMi4yODgtMjEuNjAtNzEuMTM2LTQyLjQ5Ni0xMDguNzJDIDM0OC4xNiwxNzguNDMyLCAzMzguNjU2LDE2MS4xODQsIDMzMC43NTIsMTQ0LjAwek0gMjU2LjAwLDQwMC4wMCBDIDI2MC40MCw0MDAuMDAgMjY0LjAwLDM5Ni40MTYgMjY0LjAwLDM5Mi4wMCBDIDI2NC4wMCwzODcuNTg0IDI2MC40MTYsMzg0LjAwIDI1Ni4wMCwzODQuMDAgQyAyMTEuODg4LDM4NC4wMCAxNzYuMDAsMzQ4LjExMiAxNzYuMDAsMzA0LjAwIEMgMTc2LjAwLDI5OS41ODQgMTcyLjQxNiwyOTYuMDAgMTY4LjAwLDI5Ni4wMCBDIDE2My41ODQsMjk2LjAwIDE2MC4wMCwyOTkuNTg0IDE2MC4wMCwzMDQuMDAgQyAxNjAuMDAsMzU2Ljk0NCAyMDMuMDU2LDQwMC4wMCAyNTYuMDAsNDAwLjAwIFoiIGRhdGEtdGFncz0iYnVsYiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGUwMGY7IiBkPSJNIDQ3MC4zMiw0MzguNzJDIDQ0NC4wMCw0NjUuMDA4LCA0MDkuMzQ0LDQ4MC4wMCwgMzc1LjE4NCw0ODAuMDBjLTI4LjgxNiwwLjAwLTU1LjM0NC0xMC42ODgtNzQuNzItMzAuMDMybC03Ny44NzItNzguNDY0CgljLTAuMjQtMC4yMjQtMC41MTItMC4zNjgtMC43NTItMC42MDhjLTAuMTI4LTAuMTI4LTAuMjA4LTAuMzA0LTAuMzM2LTAuNDE2bCAwLjAzMi0wLjAzMkwgNTYuMjcyLDIwMy45MDQKCWMtNy42MTYtNy41NjgtMTMuMTM2LTE2Ljk5Mi0xNi4yMDgtMjcuMjhsLTM3LjU4NC0xMzYuMTI4QyAyLjQ0OCw0MC4xMjgsMC4wMCwyOS40NCwwLjAwLDI0LjAwQzAuMDAtNi45MTIsIDI1LjEwNC0zMi4wMCwgNTYuMDY0LTMyLjAwCgljIDYuMTYsMC4wMCwgMTguMDgsMi45NDQsIDE4LjUxMiwzLjAwOGwgMTM1LjY0OCwzNS42NjRjIDEwLjMwNCwzLjA1NiwgMTkuNjY0LDguNjI0LCAyNy4yOCwxNi4yNTZsIDI0NC4yMDgsMjQ2LjEyOAoJQyA1MjYuMTI4LDMxMy41MDQsIDUyMS4xMiwzODguMDAsIDQ3MC4zMiw0MzguNzJ6IE0gMjU2LjIyNCw5OS4yOGMtMS4zMTIsMTQuNDMyLTUuMzkyLDI4LjU5Mi0xMS41MDQsNDIuMDMybCAxNTEuMjgsMTUxLjI2NAoJYyA5LjI0OC0yOS4yMTYsIDQuNDk2LTU5Ljc3Ni0xNS43NzYtODAuMDY0Yy0wLjEyOC0wLjEyOC0wLjI4OC0wLjIwOC0wLjQwLTAuMzM2bCAwLjIyNC0wLjIwOGwtMTIzLjY0OC0xMjQuNjQKCUMgMjU2LjQwLDkxLjMxMiwgMjU2LjU5Miw5NS4yMTYsIDI1Ni4yMjQsOTkuMjh6IE0gMjM2LjY4OCwxNTUuOTA0Yy01Ljk2OCw5LjgwOC0xMi43NTIsMTkuMjgtMjEuMTUyLDI3LjY2NAoJYy05Ljc3Niw5Ljc3Ni0yMC45OTIsMTcuNDQtMzIuNzA0LDIzLjg3MmwgMTUyLjUxMiwxNTIuNTEyYyAxMS45NjgtNS4zMTIsIDIzLjQ0LTEyLjg4LCAzMy41NjgtMjMuMDA4YyA4LjY1Ni04LjYyNCwgMTUuMzQ0LTE4LjI4OCwgMjAuNDk2LTI4LjMzNgoJTCAyMzYuNjg4LDE1NS45MDR6IE0gMTY3Ljc3NiwyMTUuMDA4Yy0xNC44MTYsNS45NjgtMzAuMzM2LDkuMzc2LTQ1Ljg4OCw5LjU4NGwgMTIzLjI0OCwxMjQuMTkyYyAxOC44NjQsMTguNDAsIDQ2LjMzNiwyMy42OTYsIDczLjM5MiwxNi45OTIKCUwgMTY3Ljc3NiwyMTUuMDA4eiBNIDY2LjY3MiwyLjAzMkMgNjQuOTI4LDEuNjMyLCA1OS41MDQsMC4yNTYsIDU1LjgyNCwwLjAwQyA0Mi42NzIsMC4xNiwgMzIuMDAsMTAuODQ4LCAzMi4wMCwyNC4wMAoJYyAwLjE5MiwyLjY4OCwgMS4yNjQsNy4zMTIsIDEuNjMyLDguOTkybCAxNi44NDgsNjEuMDI0YyAxOC4yODgsMC40OTYsIDM3Ljk2OC02LjYyNCwgNTMuNDQtMjIuMTI4YyAxNS43MTItMTUuNjgsIDIzLjEwNC0zNS43NDQsIDIyLjMwNC01NC4yNTYKCUwgNjYuNjcyLDIuMDMyeiBNIDE0MS45ODQsMjEuODA4Yy0wLjM4NCwyMS40NzItOS4xMiw0My44MDgtMjYuNzUyLDYxLjQwOEMgOTguNTYsOTkuOTA0LCA3Ni43MzYsMTA5LjUzNiwgNTQuOTc2LDExMC40MGwgMTUuOTM2LDU3LjcxMgoJYyAxLjE1MiwzLjg0LCAzLjQ0LDcuNjMyLCA2LjI1NiwxMC45NDRjIDMyLjA5NiwyMi45NzYsIDgxLjQ1NiwxNi4xOTIsIDExNS43NDQtMTguMTI4YyAzNi4yNzItMzYuMjU2LCA0MS44NzItODkuMzc2LCAxMy45MzYtMTIxLjA4OAoJYy0xLjg1Ni0wLjk3Ni0zLjcyOC0xLjkwNC01Ljc0NC0yLjQ5NkwgMTQxLjk4NCwyMS44MDh6IE0gNDU5LjA1NiwyOTEuNjQ4bC0yNi45NDQtMjcuMTUyYzAuMDAsMy42MTYsIDAuNDMyLDcuMDg4LCAwLjA5NiwxMC43ODQKCWMtMi44MTYsMzAuOTYtMTcuMjQ4LDYwLjg5Ni00MC42ODgsODQuMzA0Yy0yNi4wNjQsMjYuMDgtNjAuNjI0LDQxLjA0LTk0Ljg0OCw0MS4xMzZsIDI2LjQ5NiwyNi43MkMgMzM2LjQzMiw0NDAuNjcyLCAzNTQuOTQ0LDQ0OC4wMCwgMzc1LjE4NCw0NDguMDAKCWMgMjUuNzQ0LDAuMDAsIDUyLjE5Mi0xMS42NDgsIDcyLjUyOC0zMS45MmMgMTkuMDg4LTE5LjA1NiwgMzAuNDY0LTQyLjczNiwgMzIuMDk2LTY2LjY4OEMgNDgxLjMxMiwzMjcuMDQsIDQ3My45MzYsMzA2LjU0NCwgNDU5LjA1NiwyOTEuNjQ4eiIgZGF0YS10YWdzPSJwZW4iIC8+CjxnbHlwaCB1bmljb2RlPSImI3hlMDEwOyIgZD0iTSA1MDIuNjI0LDMyNS4xNjhsLTgxLjI4LDgxLjI5NkMgNDE1LjM0NCw0MTIuNDY0LCA0MDcuMTg0LDQxNS44NCwgMzk4LjcyLDQxNS44NEwgMTEzLjI5Niw0MTUuODQgCgljLTguNDgsMC4wMC0xNi42MjQtMy4zNzYtMjIuNjI0LTkuMzc2bC04MS4yOC04MS4yOTZDIDMuMTA0LDMxOC44OTYtMC4wMzIsMzEwLjYyNCwwLjAwLDMwMi4zMzZjIDAuMDQ4LTcuNTIsIDIuNzM2LTE1LjAyNCwgOC4wOTYtMjEuMDU2CglsIDIyMy45ODQtMjM4LjUyOEMgMjM4LjE2LDM1LjkwNCwgMjQ2Ljg2NCwzMi4wMCwgMjU2LjAwLDMyLjAwYyA5LjEzNiwwLjAwLCAxNy44NCwzLjkwNCwgMjMuOTA0LDEwLjc1MmwgMjI0LjAwLDIzOC41MjhjIDUuNDcyLDYuMTYsIDguMTYsMTMuODcyLCA4LjA5NiwyMS41NjgKCUMgNTExLjkzNiwzMTAuOTQ0LCA1MDguNzg0LDMxOS4wMDgsIDUwMi42MjQsMzI1LjE2OHogTSAyOTEuNTA0LDMwMy44NEwgMjIwLjQ4LDMwMy44NCBMIDI1Ni4wMCwzMzMuNDI0TCAyOTEuNTA0LDMwMy44NHogTSAyNjguNTEyLDM0My44NGwgNDMuNzEyLDM2LjQ0OGwgMzIuMjg4LTMyLjI4OAoJTCAzMDQuMDAsMzE0LjI1NkwgMjY4LjUxMiwzNDMuODR6IE0gMjA4LjAwLDMxNC4yNTZMIDE2Ny40ODgsMzQ4LjAwbCAzMi4yODgsMzIuMjg4bCA0My43MjgtMzYuNDQ4TCAyMDguMDAsMzE0LjI1NnogTSAyOTUuODQsMjg3Ljg0TCAyNTYuMDAsODguNTkyTCAyMTYuMTYsMjg3Ljg0TCAyOTUuODQsMjg3Ljg0IHoKCSBNIDMxMi4xNiwyODcuODRsIDc4LjQ5NiwwLjAwIGwtMTE3Ljc0NC0xOTYuMzA0TCAzMTIuMTYsMjg3Ljg0eiBNIDMxNi40NjQsMzAzLjg0bCAzOS40MDgsMzIuODE2bCAzMi44MTYtMzIuODE2TCAzMTYuNDY0LDMwMy44NCB6IE0gMzMxLjMxMiwzODMuODRsIDU2LjE5MiwwLjAwIGwtMzAuNjU2LTI1LjU1MgoJTCAzMzEuMzEyLDM4My44NHogTSAyNTYuMDAsMzU0LjI0bC0zNS41MiwyOS42MGwgNzEuMDA4LDAuMDAgTCAyNTYuMDAsMzU0LjI0eiBNIDE1NS4xMzYsMzU4LjI4OEwgMTI0LjQ4LDM4My44NGwgNTYuMjA4LDAuMDAgTCAxNTUuMTM2LDM1OC4yODh6IE0gMTU2LjEyOCwzMzYuNjU2bCAzOS4zOTItMzIuODE2TCAxMjMuMzEyLDMwMy44NCAKCUwgMTU2LjEyOCwzMzYuNjU2eiBNIDE5OS44NCwyODcuODRsIDM5LjI0OC0xOTYuMzA0TCAxMjEuMzI4LDI4Ny44NEwgMTk5Ljg0LDI4Ny44NCB6IE0gMjAzLjI2NCwxMjAuMTkyTCA0NS44MjQsMjg3Ljg0bCA1Ni44NjQsMC4wMCBMIDIwMy4yNjQsMTIwLjE5MnogTSA0MDkuMzEyLDI4Ny44NGwgNTYuODgsMC4wMCAKCWwtMTU3LjQ3Mi0xNjcuNjhMIDQwOS4zMTIsMjg3Ljg0eiBNIDQxMS4zMTIsMzAzLjg0bC00My4wODgsNDMuMDg4bCAzNi43NTIsMzAuNjRsIDczLjcxMi03My43MjhMIDQxMS4zMTIsMzAzLjg0IHogTSAxMDYuOTc2LDM3Ny42MGwgMzYuODE2LTMwLjY3MkwgMTAwLjY4OCwzMDMuODRMIDMyLjA5NiwzMDMuODQgCglMIDEwNi45NzYsMzc3LjYweiIgZGF0YS10YWdzPSJkaWFtb25kIiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZTAxMTsiIGQ9Ik0gNDMyLjAwLDQwMC4wNjRMIDgwLjAwLDQwMC4wMEMgNzEuMTUyLDQwMC4wMCwgNjQuMDAsMzkyLjkxMiwgNjQuMDAsMzg0LjA2NGwwLjAwLTIyNC4wMCBjMC4wMC04Ljg0OCwgNy4xNTItMTYuMDAsIDE2LjAwLTE2LjAwbCAzNTIuMDAsMC4wMCBjIDguODQ4LDAuMDAsIDE2LjAwLDcuMTUyLCAxNi4wMCwxNi4wMGwwLjAwLDIyNC4wMCAKCQlDIDQ0OC4wMCwzOTIuOTEyLCA0NDAuODQ4LDQwMC4wNjQsIDQzMi4wMCw0MDAuMDY0eiBNIDQzMi4wMCwxNjAuMDBMIDgwLjAwLDE2MC4wMCBMIDgwLjAwLDM4NC4wNjQgbCAzNTIuMDAsMC4wMCBMIDQzMi4wMCwxNjAuMDAgek0gNDY0LjAwLDQ2NC4wMEwgNDguMDAsNDY0LjAwIEMgMjEuNDg4LDQ2NC4wMCwwLjAwLDQ0Mi41MjgsMC4wMCw0MTYuMDBsMC4wMC0zMjAuMDAgYzAuMDAtMjYuNDY0LCAyMS40MDgtNDcuOTA0LCA0Ny44NC00Ny45NjhMIDIwOC4wMCw0OC4wMzIgbDAuMDAtMTkuNDcyIGwtOTkuODcyLTEyLjk3NgoJCUMgMTAwLjk5MiwxMy44MDgsIDk2LjAwLDcuNDA4LCA5Ni4wMCwwLjA2NGMwLjAwLTguODQ4LCA3LjE1Mi0xNi4wMCwgMTYuMDAtMTYuMDBsIDI4OC4wMCwwLjAwIGMgOC44NDgsMC4wMCwgMTYuMDAsNy4xNTIsIDE2LjAwLDE2LjAwYzAuMDAsNy4zNDQtNC45OTIsMTMuNzQ0LTEyLjEyOCwxNS41MzZMIDMwNC4wMCwyOC41NmwwLjAwLDE5LjQ3MiAKCQlsIDE2MC4xNiwwLjAwIEMgNDkwLjU5Miw0OC4wOTYsIDUxMi4wMCw2OS41MzYsIDUxMi4wMCw5Ni4wMEwgNTEyLjAwLDQxNi4wMCBDIDUxMi4wMCw0NDIuNTI4LCA0OTAuNDk2LDQ2NC4wMCwgNDY0LjAwLDQ2NC4wMHogTSA0ODAuMDAsOTYuMDBjMC4wMC04LjgxNi03LjE4NC0xNi4wMC0xNi4wMC0xNi4wMGwtMTQ0LjAwLDAuMDAgbC0xMjguMDAsMC4wMCBMIDQ4LjAwLDgwLjAwIGMtOC44MzIsMC4wMC0xNi4wMCw3LjE4NC0xNi4wMCwxNi4wMEwgMzIuMDAsNDE2LjAwIAoJCWMwLjAwLDguODMyLCA3LjE2OCwxNi4wMCwgMTYuMDAsMTYuMDBsIDQxNi4wMCwwLjAwIGMgOC44MTYsMC4wMCwgMTYuMDAtNy4xNjgsIDE2LjAwLTE2LjAwTCA0ODAuMDAsOTYuMDAgeiIgZGF0YS10YWdzPSJkaXNwbGF5IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZTAxMjsiIGQ9Ik0gMjU2LjAzMiwxOTYuMDY0YyA1Mi45NDQsMC4wMCwgOTYuMDAsNDMuMDcyLCA5Ni4wMCw5Ni4wMHMtNDMuMDU2LDk2LjAwLTk2LjAwLDk2LjAwCgkJYy01Mi45NDQsMC4wMC05Ni4wMC00My4wNTYtOTYuMDAtOTYuMDBTIDIwMy4wODgsMTk2LjA2NCwgMjU2LjAzMiwxOTYuMDY0eiBNIDI1Ni4wMzIsMzcyLjA2NGMgNDQuMTI4LDAuMDAsIDgwLjAwLTM1Ljg3MiwgODAuMDAtODAuMDBzLTM1Ljg3Mi04MC4wMC04MC4wMC04MC4wMGMtNDQuMTI4LDAuMDAtODAuMDAsMzUuODcyLTgwLjAwLDgwLjAwCgkJUyAyMTEuOTA0LDM3Mi4wNjQsIDI1Ni4wMzIsMzcyLjA2NHpNIDI1Ni4wMCw0ODAuMDBDIDE1MC4xMTIsNDgwLjAwLCA2NC4wMCwzOTQuOTQ0LCA2NC4wMCwyODcuOTg0YzAuMDAtMTEyLjAwLCA5Ni4wMTYtMjI2LjU3NiwgMTY2LjAxNi0zMDcuMTA0CgkJQyAyMzAuMjcyLTE5LjQ0LCAyNDEuNTA0LTMyLjAwLCAyNTUuMzkyLTMyLjAwYyAwLjAzMiwwLjAwLCAxLjE2OCwwLjAwLCAxLjIzMiwwLjAwYyAxMy44NzIsMC4wMCwgMjUuMTIsMTIuNTYsIDI1LjM3NiwxMi44OAoJCWMgNzAuMDMyLDgwLjUyOCwgMTY2LjAzMiwxOTUuMDg4LCAxNjYuMDMyLDMwNy4xMDRDIDQ0OC4wMzIsMzk0Ljk0NCwgMzYxLjkwNCw0ODAuMDAsIDI1Ni4wMCw0ODAuMDB6IE0gMjU3Ljg3MiwxLjg3MmMtMC4zMzYtMC4zMi0xLjMxMi0xLjAyNC0yLjE2LTEuNTY4CgkJYy0wLjE2LDAuNDMyLTEuMzQ0LDEuMzc2LTIuMDY0LDIuMTI4QyAxOTUuMDA4LDY5LjkwNCwgOTYuMDAsMTgzLjc3NiwgOTYuMDAsMjg3Ljk4NEMgOTYuMDAsMzc2LjIwOCwgMTY3Ljc5Miw0NDguMDAsIDI1Ni4wMCw0NDguMDBjIDg4LjI1NiwwLjAwLCAxNjAuMDMyLTcxLjc5MiwgMTYwLjAzMi0xNjAuMDMyCgkJQyA0MTYuMDMyLDE4My43NzYsIDMxNy4wMjQsNjkuOTA0LCAyNTcuODcyLDEuODcyeiIgZGF0YS10YWdzPSJsb2NhdGlvbiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGUwMTM7IiBkPSJNIDUxMS40NCwyMjcuNTg0Yy0wLjE2LDAuNjcyLTAuMDY0LDEuMzkyLTAuMzIsMi4wNDhjLTAuMDk2LDAuMjcyLTAuMzM2LDAuNDE2LTAuNDMyLDAuNjcyCgkJYy0wLjE2LDAuMzg0LTAuMTI4LDAuODE2LTAuMzM2LDEuMTg0Yy00Ni40MCw4OC44MTYtMTQ3LjQwOCwxNTIuNDQ4LTI1My45NjgsMTUyLjQ0OGMtMTA2LjU3NiwwLjAwLTIwNy41NjgtNjMuNTM2LTI1NC4wMC0xNTIuMzM2CgkJYy0wLjIwOC0wLjM2OC0wLjE3Ni0wLjgwLTAuMzM2LTEuMTg0Yy0wLjExMi0wLjI1Ni0wLjMzNi0wLjQwLTAuNDMyLTAuNjcyYy0wLjI1Ni0wLjY1Ni0wLjE2LTEuMzc2LTAuMzItMi4wNDgKCQljLTAuMjg4LTEuMjAtMC41Ni0yLjM1Mi0wLjU2LTMuNTg0cyAwLjI4OC0yLjM2OCwgMC41Ni0zLjU4NGMgMC4xNi0wLjY3MiwgMC4wNjQtMS4zOTIsIDAuMzItMi4wNDgKCQljIDAuMDk2LTAuMjcyLCAwLjMzNi0wLjQxNiwgMC40MzItMC42NzJjIDAuMTYtMC4zODQsIDAuMTI4LTAuODE2LCAwLjMzNi0xLjE4NGMgNDYuNDE2LTg4LjgxNiwgMTQ3LjQyNC0xNTIuNDQ4LCAyNTQuMDAtMTUyLjQ0OAoJCWMgMTA2LjU2LDAuMDAsIDIwNy41NjgsNjMuNTM2LCAyNTMuOTY4LDE1Mi4zMzZjIDAuMjI0LDAuMzY4LCAwLjE5MiwwLjgwLCAwLjMzNiwxLjE4NGMgMC4wOTYsMC4yNTYsIDAuMzM2LDAuNDAsIDAuNDMyLDAuNjcyCgkJYyAwLjI1NiwwLjY1NiwgMC4xNiwxLjM3NiwgMC4zMiwyLjA0OEMgNTExLjcxMiwyMjEuNjMyLCA1MTIuMDAsMjIyLjc4NCwgNTEyLjAwLDIyNC4wMFMgNTExLjcxMiwyMjYuMzg0LCA1MTEuNDQsMjI3LjU4NHogTSAyNTYuMzY4LDk2LjE5MgoJCWMtODkuODQsMC4wMC0xNzcuNzkyLDUxLjA1Ni0yMjEuNjE2LDEyNy45MmMgNDQuMDY0LDc2Ljk2LCAxMzEuODg4LDEyNy44NCwgMjIxLjYxNiwxMjcuODRjIDg5LjgwOCwwLjAwLCAxNzcuNzc2LTUxLjA3MiwgMjIxLjYwLTEyNy45MgoJCUMgNDMzLjkwNCwxNDcuMDU2LCAzNDYuMDk2LDk2LjE5MiwgMjU2LjM2OCw5Ni4xOTJ6TSAyNTYuMzY4LDI4OC4wMTYgQyAyNjAuNzg0LDI4OC4wMTYgMjY0LjMzNiwyODQuNDQ4IDI2NC4zMzYsMjgwLjAxNiBDIDI2NC4zMzYsMjc1LjYxNiAyNjAuNzY4LDI3Mi4wMzIgMjU2LjM2OCwyNzIuMDMyIEwgMjU2LjM2OCwyNzIuMDE2IEMgMjI5LjkwNCwyNzIuMDE2IDIwOC4zODQsMjUwLjQ5NiAyMDguMzg0LDIyNC4wNjQgQyAyMDguMzg0LDIxOS42NDggMjA0LjgwLDIxNi4wNjQgMjAwLjQwLDIxNi4wNjQgQyAxOTUuOTg0LDIxNi4wNjQgMTkyLjQwLDIxOS42NDggMTkyLjQwLDIyNC4wNjQgQyAxOTIuNDAsMjU5LjM0NCAyMjAuOTkyLDI4Ny45MzYgMjU2LjI3MiwyODguMDAgQyAyNTYuMzA0LDI4OC4wMCAyNTYuMzM2LDI4OC4wMTYgMjU2LjM2OCwyODguMDE2IFpNIDI1Ni4wMCwzMzYuMDBjLTYxLjg3MiwwLjAwLTExMi4wMC01MC4xNDQtMTEyLjAwLTExMi4wMGMwLjAwLTYxLjg1NiwgNTAuMTQ0LTExMi4wMCwgMTEyLjAwLTExMi4wMGMgNjEuODQsMC4wMCwgMTEyLjAwLDUwLjE2LCAxMTIuMDAsMTEyLjAwQyAzNjguMDAsMjg1Ljg3MiwgMzE3Ljg0LDMzNi4wMCwgMjU2LjAwLDMzNi4wMHogTSAyNTYuMDAsMTI4LjAwCgkJYy01Mi45NDQsMC4wMC05Ni4wMCw0My4wNTYtOTYuMDAsOTYuMDBjMC4wMCw1Mi45NDQsIDQzLjA1Niw5Ni4wMCwgOTYuMDAsOTYuMDBjIDUyLjk0NCwwLjAwLCA5Ni4wMC00My4wNTYsIDk2LjAwLTk2LjAwQyAzNTIuMDAsMTcxLjA1NiwgMzA4Ljk0NCwxMjguMDAsIDI1Ni4wMCwxMjguMDB6IiBkYXRhLXRhZ3M9ImV5ZSIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGUwMTQ7IiBkPSJNIDI1Ni4wMCwzNjguMDAgQyAyNjAuNDE2LDM2OC4wMCAyNjQuMDAsMzY0LjQxNiAyNjQuMDAsMzYwLjAwIEMgMjY0LjAwLDM1NS41ODQgMjYwLjQwLDM1Mi4wMCAyNTYuMDAsMzUyLjAwIEMgMTcwLjc2OCwzNTIuMDAgOTYuMDAsMzA3LjEzNiA5Ni4wMCwyNTYuMDAgQyA5Ni4wMCwyNTEuNTg0IDkyLjQxNiwyNDguMDAgODguMDAsMjQ4LjAwIEMgODMuNTg0LDI0OC4wMCA4MC4wMCwyNTEuNTg0IDgwLjAwLDI1Ni4wMCBDIDgwLjAwLDMxNi43MDQgMTYwLjU5MiwzNjguMDAgMjU2LjAwLDM2OC4wMCBaTSAyNTYuMDAsNDQ4LjAwQyAxMTQuNjA4LDQ0OC4wMCwwLjAwLDM2Mi4wMzIsMC4wMCwyNTYuMDBjMC4wMC02Ni4wMzIsIDQ0LjQ2NC0xMjQuMjU2LCAxMTIuMTI4LTE1OC44MTYKCQlDIDExMi4xMjgsOTYuNzUyLCAxMTIuMDAsOTYuNDY0LCAxMTIuMDAsOTYuMDBjMC4wMC0yOC42ODgtMjEuNDI0LTU5LjU2OC0zMC44NDgtNzUuNzc2YyAwLjAxNiwwLjAwLCAwLjAzMiwwLjAwLCAwLjAzMiwwLjAwQyA4MC40MzIsMTguNDY0LCA4MC4wMCwxNi41MjgsIDgwLjAwLDE0LjQ5NgoJCUMgODAuMDAsNi40OTYsIDg2LjQ4LDAuMDAsIDk0LjQ5NiwwLjAwQyA5Ni4wMCwwLjAwLCA5OC42NCwwLjQwLCA5OC41NzYsMC4yMjRjIDUwLjAwLDguMTkyLCA5Ny4xMDQsNTQuMTI4LCAxMDguMDQ4LDY3LjQ0QyAyMjIuNjA4LDY1LjMxMiwgMjM5LjA4OCw2NC4wMCwgMjU2LjAwLDY0LjAwCgkJYyAxNDEuMzYsMC4wMCwgMjU2LjAwLDg1Ljk2OCwgMjU2LjAwLDE5Mi4wMEMgNTEyLjAwLDM2Mi4wMzIsIDM5Ny4zNzYsNDQ4LjAwLCAyNTYuMDAsNDQ4LjAweiBNIDI1Ni4wMCw5Ni4wMGMtMTQuNjcyLDAuMDAtMjkuNzI4LDEuMTItNDQuNzM2LDMuMzEyYy0xLjU1MiwwLjI1Ni0zLjEwNCwwLjMzNi00LjY0LDAuMzM2CgkJYy05LjUwNCwwLjAwLTE4LjYwOC00LjIyNC0yNC43MzYtMTEuNjhjLTYuODQ4LTguMzM2LTI2LjMzNi0yNi45NDQtNDkuMzYtNDAuNjI0YyA2LjI0LDE0LjMyLCAxMS4xMiwzMC4zNjgsIDExLjQ1Niw0Ni45MTIKCQljIDAuMDk2LDEuMDI0LCAwLjE0NCwyLjA2NCwgMC4xNDQsMi45NDRjMC4wMCwxMi4wMzItNi43MzYsMjMuMDI0LTE3LjQ0LDI4LjQ5NkMgNjcuMzkyLDE1NS45NjgsIDMyLjAwLDIwNC42ODgsIDMyLjAwLDI1Ni4wMEMgMzIuMDAsMzQ0LjIyNCwgMTMyLjQ4LDQxNi4wMCwgMjU2LjAwLDQxNi4wMAoJCWMgMTIzLjQ4OCwwLjAwLCAyMjQuMDAtNzEuNzc2LCAyMjQuMDAtMTYwLjAwQyA0ODAuMDAsMTY3Ljc3NiwgMzc5LjUwNCw5Ni4wMCwgMjU2LjAwLDk2LjAweiIgZGF0YS10YWdzPSJidWJibGUiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hlMDE1OyIgZD0iTSA1MTAuNzg0LDE4NC43MkwgNDQ2Ljc1Miw0MjQuODE2QyA0NDIuODgsNDM4LjQ2NCwgNDMwLjIyNCw0NDguMDAsIDQxNi4wMCw0NDguMDBMIDI1Ni4wMCw0NDguMDAgTCA5Ni4wMCw0NDguMDAgQyA4MS43Niw0NDguMDAsIDY5LjEyLDQzOC40NjQsIDY1LjI0OCw0MjQuODE2TCAxLjIxNiwxODQuNzIKCQlDIDAuNDAsMTgxLjgwOCwwLjAwLDE3OC44OCwwLjAwLDE3Ni4wMGwwLjAwLTExMi4wMCBjMC4wMC0zNS4zNDQsIDI4LjY1Ni02NC4wMCwgNjQuMDAtNjQuMDBsIDM4NC4wMCwwLjAwIGMgMzUuMzQ0LDAuMDAsIDY0LjAwLDI4LjY1NiwgNjQuMDAsNjQuMDBsMC4wMCwxMTIuMDAgQyA1MTIuMDAsMTc4Ljg4LCA1MTEuNjAsMTgxLjgwOCwgNTEwLjc4NCwxODQuNzJ6IE0gNDgwLjAwLDY0LjAwCgkJYzAuMDAtMTcuNjMyLTE0LjM2OC0zMi4wMC0zMi4wMC0zMi4wMEwgNjQuMDAsMzIuMDAgYy0xNy42NDgsMC4wMC0zMi4wMCwxNC4zNjgtMzIuMDAsMzIuMDBsMC4wMCwxMTIuMDAgTCA5Ni4wMTYsNDE2LjAxNmwgMzE5Ljk1MiwwLjAwIEwgNDgwLjAwLDE3Ni4wMEwgNDgwLjAwLDY0LjAwIHpNIDM3OS44NzIsMzg0LjAwTCAxMzIuMTI4LDM4NC4wMCBjLTcuMjQ4LDAuMDAtMTMuNjAtNC44OC0xNS40NzItMTEuODg4bC01NS4xMi0xOTIuMDBjLTEuMjY0LTQuODE2LTAuMjU2LTkuOTM2LCAyLjc4NC0xMy44NzIKCQlTIDcyLjAzMiwxNjAuMDAsIDc2Ljk5MiwxNjAuMDBsIDQ2LjQ5NiwwLjAwIGwgMTguMjU2LDAuMDAgbCA4LjMzNiwwLjAwIGwgMjMuMTUyLTQ2LjMyQyAxNzguNjcyLDEwMi44NDgsIDE4OS43NDQsOTYuMDAsIDIwMS44NzIsOTYuMDBsIDEwOC4yNTYsMC4wMCBjIDEyLjEyOCwwLjAwLCAyMy4xODQsNi44NDgsIDI4LjYyNCwxNy42OAoJCUwgMzYxLjkwNCwxNjAuMDBsIDguMzM2LDAuMDAgbCAxOC4yNTYsMC4wMCBsIDQ2LjQ5NiwwLjAwIGMgNC45NzYsMC4wMCwgOS42NjQsMi4zMiwgMTIuNjg4LDYuMjU2cyA0LjAzMiw5LjA1NiwgMi43ODQsMTMuODcybC01NS4xMiwxOTIuMDBDIDM5My40NzIsMzc5LjEzNiwgMzg3LjEyLDM4NC4wMCwgMzc5Ljg3MiwzODQuMDB6CgkJIE0gMzg4LjQ5NiwxOTIuMDBsLTI2LjU5MiwwLjAwIGMtMTIuMTkyLDAuMDAtMjMuMTUyLTYuNzUyLTI4LjYyNC0xNy42OEwgMzEwLjEyOCwxMjguMDBsLTEwOC4yNTYsMC4wMCBsLTIzLjE1Miw0Ni4zMkMgMTczLjI0OCwxODUuMjQ4LCAxNjIuMjg4LDE5Mi4wMCwgMTUwLjA5NiwxOTIuMDBMIDEyMy41MDQsMTkyLjAwIEwgODUuMzQ0LDE5Mi4wMCAKCQlMIDEzMi4xMjgsMzY4LjAwbCAyNDcuNzQ0LDAuMDAgbCA0Ni43ODQtMTc2LjAwTCAzODguNDk2LDE5Mi4wMCB6IiBkYXRhLXRhZ3M9InN0YWNrIiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZTAxNjsiIGQ9Ik0gNDQ5Ljc3NiwzOTkuNjQ4bC0xOS40NCw1OC40OEMgNDI2LjAwLDQ3MS4yMCwgNDEzLjc3Niw0ODAuMDAsIDQwMC4wMCw0ODAuMDBMIDExMi4wMCw0ODAuMDAgQyA5OC4yMDgsNDgwLjAwLCA4Ni4wMCw0NzEuMjAsIDgxLjYzMiw0NTguMTI4CglMIDYyLjAzMiwzOTkuNjE2QyA0NS4zMjgsMzk4LjU0NCwgMzIuMDAsMzg0Ljk3NiwgMzIuMDAsMzY4LjAwbDAuMDAtNDguMDAgYzAuMDAtMTcuNjY0LCAxNC4zMzYtMzIuMDAsIDMyLjAwLTMyLjAwbCAxNi41NDQsMC4wMCBjMC4wMC0xLjIwLTAuNDgtMi4zMzYtMC4zMzYtMy41MzZsIDMyLjAwLTI4OC4wMEMgMTE0LjAwLTE5LjcxMiwgMTI3LjY4LTMyLjAwLCAxNDQuMDAtMzIuMDAKCWwgMjI0LjAwLDAuMDAgYyAxNi4zMiwwLjAwLCAzMC4wMCwxMi4yODgsIDMxLjc3NiwyOC40NjRsIDMyLjAwLDI4OC4wMGMgMC4xNiwxLjIwLTAuMzM2LDIuMzM2LTAuMzM2LDMuNTM2TCA0NDguMDAsMjg4LjAwIGMgMTcuNjY0LDAuMDAsIDMyLjAwLDE0LjMzNiwgMzIuMDAsMzIuMDBMIDQ4MC4wMCwzNjguMDAgCglDIDQ4MC4wMCwzODUuMDQsIDQ2Ni41NiwzOTguNjcyLCA0NDkuNzc2LDM5OS42NDh6IE0gMTEyLjAwLDQ0OC4wMGwgMjg4LjAwLDAuMDAgbCAxNi4wMC00OC4wMEwgOTYuMDAsNDAwLjAwIEwgMTEyLjAwLDQ0OC4wMHogTSAxNDQuMDAsMC4wMGwtNS4zMjgsNDguMDBsIDIzNC42NTYsMC4wMCBMIDM2OC4wMCwwLjAwTCAxNDQuMDAsMC4wMCB6IE0gMzc1LjA4OCw2NC4wMEwgMTM2Ljg4LDY0LjAwIEwgMTE5LjEwNCwyMjQuMDBsIDI3My43NzYsMC4wMCAKCUwgMzc1LjA4OCw2NC4wMHogTSAzOTQuNjU2LDI0MC4wMEwgMTE3LjMyOCwyNDAuMDAgTCAxMTIuMDAsMjg4LjAwbCAyODguMDAsMC4wMCBMIDM5NC42NTYsMjQwLjAweiBNIDQ0OC4wMCwzMjAuMDBMIDY0LjAwLDMyMC4wMCBMIDY0LjAwLDM2OC4wMCBsIDM4NC4wMCwwLjAwIEwgNDQ4LjAwLDMyMC4wMCB6IiBkYXRhLXRhZ3M9ImN1cCIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGUwMTc7IiBkPSJNIDM4NC4wMCw0ODAuMDBMIDEyOC4wMCw0ODAuMDBDIDEwMS40NzIsNDgwLjAwLCA4MC4wMCw0NTguNTEyLCA4MC4wMCw0MzIuMDBsMC4wMC00MTYuMDAgYzAuMDAtMjYuNTI4LCAyMS40ODgtNDguMDAsIDQ4LjAwLTQ4LjAwbCAyNTYuMDAsMC4wMCBjIDI2LjQ5NiwwLjAwLCA0OC4wMCwyMS41MDQsIDQ4LjAwLDQ4LjAwTCA0MzIuMDAsNDMyLjAwIEMgNDMyLjAwLDQ1OC41MjgsIDQxMC40OTYsNDgwLjAwLCAzODQuMDAsNDgwLjAwegoJCSBNIDQwMC4wMCwxNi4wMGMwLjAwLTguODE2LTcuMTg0LTE2LjAwLTE2LjAwLTE2LjAwTCAxMjguMDAsMC4wMCBjLTguODMyLDAuMDAtMTYuMDAsNy4xNTItMTYuMDAsMTYuMDBsMC4wMCwzMi4wNjQgbCAyODguMDAsMC4wMCBMIDQwMC4wMCwxNi4wMCB6IE0gNDAwLjAwLDY0LjA2NEwgMTEyLjAwLDY0LjA2NCBMIDExMi4wMCwzODQuMDAgTCA0MDAuMDAsMzg0LjAwTCA0MDAuMDAsNjQuMDY0IHogTSA0MDAuMDAsNDAwLjAwTCAxMTIuMDAsNDAwLjAwTCAxMTIuMDAsNDMyLjAwIGMwLjAwLDguODMyLCA3LjE2OCwxNi4wMCwgMTYuMDAsMTYuMDAKCQlMIDM4NC4wMCw0NDguMDBjIDguODE2LDAuMDAsIDE2LjAwLTcuMTY4LCAxNi4wMC0xNi4wMEwgNDAwLjAwLDQwMC4wMCB6TSAyODguMDAsNDI0LjAwQyAyODguMDAsNDE5LjU4NCwgMjg0LjQwLDQxNi4wMCwgMjgwLjAwLDQxNi4wMGwtNDguMDAsMC4wMCBDIDIyNy41NjgsNDE2LjAwLCAyMjQuMDAsNDE5LjU4NCwgMjI0LjAwLDQyNC4wMGwwLjAwLDAuMDBDIDIyNC4wMCw0MjguNDMyLCAyMjcuNTY4LDQzMi4wMCwgMjMyLjAwLDQzMi4wMGwgNDguMDAsMC4wMCAKCQlDIDI4NC40MCw0MzIuMDAsIDI4OC4wMCw0MjguNDMyLCAyODguMDAsNDI0LjAwTCAyODguMDAsNDI0LjAwek0gMjcyLjAwLDI0LjA2NGMwLjAwLTQuNDAtMy42MC04LjAwLTguMDAtOC4wMGwtMTYuMDAsMC4wMCBjLTQuNDE2LDAuMDAtOC4wMCwzLjYwLTguMDAsOC4wMGwwLjAwLDAuMDBjMC4wMCw0LjQzMiwgMy41ODQsOC4wMCwgOC4wMCw4LjAwbCAxNi4wMCwwLjAwIAoJCUMgMjY4LjQwLDMyLjA2NCwgMjcyLjAwLDI4LjQ5NiwgMjcyLjAwLDI0LjA2NEwgMjcyLjAwLDI0LjA2NHoiIGRhdGEtdGFncz0icGhvbmUiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hlMDE4OyIgZD0iTSA0NjQuMDAsNDgwLjAwTCAxMTIuMDAsNDgwLjAwIEMgODUuNDg4LDQ4MC4wMCwgNjQuMDAsNDU4LjUyOCwgNjQuMDAsNDMyLjAwbDAuMDAtMzIuMDAgTCA0OC4wMCw0MDAuMDAgQyAyMS40ODgsNDAwLjAwLDAuMDAsMzc4LjUyOCwwLjAwLDM1Mi4wMGwwLjAwLTMyMC4wMCAKCQljMC4wMC0zNS4zNDQsIDI4LjY1Ni02NC4wMCwgNjQuMDAtNjQuMDBsIDM4NC4wMCwwLjAwIGMgMzUuMzQ0LDAuMDAsIDY0LjAwLDI4LjY1NiwgNjQuMDAsNjQuMDBMIDUxMi4wMCw0MzIuMDAgQyA1MTIuMDAsNDU4LjUyOCwgNDkwLjQ5Niw0ODAuMDAsIDQ2NC4wMCw0ODAuMDB6IE0gNDgwLjAwLDMyLjAwYzAuMDAtMTcuNjMyLTE0LjM2OC0zMi4wMC0zMi4wMC0zMi4wMEwgNjQuMDAsMC4wMCBjLTE3LjY0OCwwLjAwLTMyLjAwLDE0LjM2OC0zMi4wMCwzMi4wMEwgMzIuMDAsMzUyLjAwIAoJCWMwLjAwLDguODMyLCA3LjE2OCwxNi4wMCwgMTYuMDAsMTYuMDBsIDE2LjAwLDAuMDAgbDAuMDAtMzIwLjAwIGMwLjAwLTguODQ4LCA3LjE1Mi0xNi4wMCwgMTYuMDAtMTYuMDBzIDE2LjAwLDcuMTUyLCAxNi4wMCwxNi4wMEwgOTYuMDAsNDMyLjAwIGMwLjAwLDguODMyLCA3LjE2OCwxNi4wMCwgMTYuMDAsMTYuMDBsIDM1Mi4wMCwwLjAwIGMgOC44MTYsMC4wMCwgMTYuMDAtNy4xNjgsIDE2LjAwLTE2LjAwTCA0ODAuMDAsMzIuMDAgek0gMzExLjk2OCwyNzEuOTIgQyAzMDcuNTY4LDI3MS45MiAzMDMuOTY4LDI3NS41MDQgMzAzLjk2OCwyNzkuOTIgQyAzMDMuOTY4LDI4NC4zMzYgMzA3LjU2OCwyODcuOTIgMzExLjk2OCwyODcuOTIgTCA0MzkuOTY4LDI4Ny45MiBDIDQ0NC40MCwyODcuOTIgNDQ3Ljk2OCwyODQuMzM2IDQ0Ny45NjgsMjc5LjkyIEMgNDQ3Ljk2OCwyNzUuNTA0IDQ0NC40MCwyNzEuOTIgNDM5Ljk2OCwyNzEuOTIgTCAzMTEuOTY4LDI3MS45MiBaTSAzMTEuOTY4LDMxOS45MiBDIDMwNy41NjgsMzE5LjkyIDMwMy45NjgsMzIzLjUwNCAzMDMuOTY4LDMyNy45MiBDIDMwMy45NjgsMzMyLjMzNiAzMDcuNTY4LDMzNS45MiAzMTEuOTY4LDMzNS45MiBMIDQzOS45NjgsMzM1LjkyIEMgNDQ0LjQwLDMzNS45MiA0NDcuOTY4LDMzMi4zMzYgNDQ3Ljk2OCwzMjcuOTIgQyA0NDcuOTY4LDMyMy41MDQgNDQ0LjQwLDMxOS45MiA0MzkuOTY4LDMxOS45MiBMIDMxMS45NjgsMzE5LjkyIFpNIDMxMS45NjgsMzY3LjkyIEMgMzA3LjU2OCwzNjcuOTIgMzAzLjk2OCwzNzEuNTA0IDMwMy45NjgsMzc1LjkyIEMgMzAzLjk2OCwzODAuMzM2IDMwNy41NjgsMzgzLjkyIDMxMS45NjgsMzgzLjkyIEwgNDM5Ljk2OCwzODMuOTIgQyA0NDQuNDAsMzgzLjkyIDQ0Ny45NjgsMzgwLjMzNiA0NDcuOTY4LDM3NS45MiBDIDQ0Ny45NjgsMzcxLjUwNCA0NDQuNDAsMzY3LjkyIDQzOS45NjgsMzY3LjkyIEwgMzExLjk2OCwzNjcuOTIgWk0gMjY0LjAwLDQ3LjkzNiBDIDI2OC40MTYsNDcuOTM2IDI3Mi4wMCw0NC4zMzYgMjcyLjAwLDM5LjkzNiBDIDI3Mi4wMCwzNS41MDQgMjY4LjQwLDMxLjkzNiAyNjQuMDAsMzEuOTM2IEwgMTM2LjAwLDMxLjkzNiBDIDEzMS41ODQsMzEuOTM2IDEyOC4wMCwzNS41MDQgMTI4LjAwLDM5LjkzNiBDIDEyOC4wMCw0NC4zMzYgMTMxLjU4NCw0Ny45MzYgMTM2LjAwLDQ3LjkzNiBMIDI2NC4wMCw0Ny45MzYgWk0gMjY0LjAwLDk1LjkzNiBDIDI2OC40MTYsOTUuOTM2IDI3Mi4wMCw5Mi4zMzYgMjcyLjAwLDg3LjkzNiBDIDI3Mi4wMCw4My41MDQgMjY4LjQwLDc5LjkzNiAyNjQuMDAsNzkuOTM2IEwgMTM2LjAwLDc5LjkzNiBDIDEzMS41ODQsNzkuOTM2IDEyOC4wMCw4My41MDQgMTI4LjAwLDg3LjkzNiBDIDEyOC4wMCw5Mi4zMzYgMTMxLjU4NCw5NS45MzYgMTM2LjAwLDk1LjkzNiBMIDI2NC4wMCw5NS45MzYgWk0gMjY0LjAwLDE0My45MzYgQyAyNjguNDE2LDE0My45MzYgMjcyLjAwLDE0MC4zMzYgMjcyLjAwLDEzNS45MzYgQyAyNzIuMDAsMTMxLjUwNCAyNjguNDAsMTI3LjkzNiAyNjQuMDAsMTI3LjkzNiBMIDEzNi4wMCwxMjcuOTM2IEMgMTMxLjU4NCwxMjcuOTM2IDEyOC4wMCwxMzEuNTA0IDEyOC4wMCwxMzUuOTM2IEMgMTI4LjAwLDE0MC4zMzYgMTMxLjU4NCwxNDMuOTM2IDEzNi4wMCwxNDMuOTM2IEwgMjY0LjAwLDE0My45MzYgWk0gNDQwLjAwLDQ3LjkzNiBDIDQ0NC40MCw0Ny45MzYgNDQ4LjAwLDQ0LjMzNiA0NDguMDAsMzkuOTM2IEMgNDQ4LjAwLDM1LjUwNCA0NDQuNDAsMzEuOTM2IDQ0MC4wMCwzMS45MzYgTCAzMTIuMDAsMzEuOTM2IEMgMzA3LjU2OCwzMS45MzYgMzA0LjAwLDM1LjUwNCAzMDQuMDAsMzkuOTM2IEMgMzA0LjAwLDQ0LjMzNiAzMDcuNTY4LDQ3LjkzNiAzMTIuMDAsNDcuOTM2IEwgNDQwLjAwLDQ3LjkzNiBaTSA0NDAuMDAsOTUuOTM2IEMgNDQ0LjQwLDk1LjkzNiA0NDguMDAsOTIuMzM2IDQ0OC4wMCw4Ny45MzYgQyA0NDguMDAsODMuNTA0IDQ0NC40MCw3OS45MzYgNDQwLjAwLDc5LjkzNiBMIDMxMi4wMCw3OS45MzYgQyAzMDcuNTY4LDc5LjkzNiAzMDQuMDAsODMuNTA0IDMwNC4wMCw4Ny45MzYgQyAzMDQuMDAsOTIuMzM2IDMwNy41NjgsOTUuOTM2IDMxMi4wMCw5NS45MzYgTCA0NDAuMDAsOTUuOTM2IFpNIDQ0MC4wMCwxNDMuOTM2IEMgNDQ0LjQwLDE0My45MzYgNDQ4LjAwLDE0MC4zMzYgNDQ4LjAwLDEzNS45MzYgQyA0NDguMDAsMTMxLjUwNCA0NDQuNDAsMTI3LjkzNiA0NDAuMDAsMTI3LjkzNiBMIDMxMi4wMCwxMjcuOTM2IEMgMzA3LjU2OCwxMjcuOTM2IDMwNC4wMCwxMzEuNTA0IDMwNC4wMCwxMzUuOTM2IEMgMzA0LjAwLDE0MC4zMzYgMzA3LjU2OCwxNDMuOTM2IDMxMi4wMCwxNDMuOTM2IEwgNDQwLjAwLDE0My45MzYgWk0gNDQwLjAwLDIzOS45MzYgQyA0NDQuNDAsMjM5LjkzNiA0NDguMDAsMjM2LjM1MiA0NDguMDAsMjMxLjkzNiBDIDQ0OC4wMCwyMjcuNTIgNDQ0LjQwLDIyMy45MzYgNDQwLjAwLDIyMy45MzYgTCAxMzYuMDAsMjIzLjkzNiBDIDEzMS41ODQsMjIzLjkzNiAxMjguMDAsMjI3LjUyIDEyOC4wMCwyMzEuOTM2IEMgMTI4LjAwLDIzNi4zNTIgMTMxLjU4NCwyMzkuOTM2IDEzNi4wMCwyMzkuOTM2IEwgNDQwLjAwLDIzOS45MzYgWk0gNDQwLjAwLDE5MS45MzYgQyA0NDQuNDAsMTkxLjkzNiA0NDguMDAsMTg4LjMzNiA0NDguMDAsMTgzLjkzNiBDIDQ0OC4wMCwxNzkuNTA0IDQ0NC40MCwxNzUuOTM2IDQ0MC4wMCwxNzUuOTM2IEwgMTM2LjAwLDE3NS45MzYgQyAxMzEuNTg0LDE3NS45MzYgMTI4LjAwLDE3OS41MDQgMTI4LjAwLDE4My45MzYgQyAxMjguMDAsMTg4LjMzNiAxMzEuNTg0LDE5MS45MzYgMTM2LjAwLDE5MS45MzYgTCA0NDAuMDAsMTkxLjkzNiBaTSAxNDQuMDAsMjcyLjAwbCAxMTIuMDAsMC4wMCBjIDguODQ4LDAuMDAsIDE2LjAwLDcuMTUyLCAxNi4wMCwxNi4wMEwgMjcyLjAwLDM5OS45MzYgYzAuMDAsOC44NDgtNy4xNTIsMTYuMDAtMTYuMDAsMTYuMDBMIDE0NC4wMCw0MTUuOTM2IAoJCWMtOC44NDgsMC4wMC0xNi4wMC03LjE1Mi0xNi4wMC0xNi4wMEwgMTI4LjAwLDI4OC4wMCBDIDEyOC4wMCwyNzkuMTY4LCAxMzUuMTUyLDI3Mi4wMCwgMTQ0LjAwLDI3Mi4wMHogTSAxNjAuMDAsMzg0LjAwbCA4MC4wMCwwLjAwIGwwLjAwLTgwLjAwIGwtODAuMDAsMC4wMCBMIDE2MC4wMCwzODQuMDAgeiIgZGF0YS10YWdzPSJuZXdzIiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZTAxOTsiIGQ9Ik0gNDQ4LjAwLDQwMC4wMEwgNjQuMDAsNDAwLjAwIEMgMjguNjU2LDQwMC4wMCwwLjAwLDM3MS4zMjgsMC4wMCwzMzYuMDBsMC4wMC0yMDguMDAgYzAuMDAtMzUuMzQ0LCAyOC42NTYtNjQuMDAsIDY0LjAwLTY0LjAwbCAzODQuMDAsMC4wMCBjIDM1LjM0NCwwLjAwLCA2NC4wMCwyOC42NTYsIDY0LjAwLDY0LjAwTCA1MTIuMDAsMzM2LjAwIAoJQyA1MTIuMDAsMzcxLjMyOCwgNDgzLjM0NCw0MDAuMDAsIDQ0OC4wMCw0MDAuMDB6IE0gMzIuMDAsMzE2LjAwbCAxMTEuOTg0LTg0LjAwTCAzMi4wMCwxNDguMDBMIDMyLjAwLDMxNi4wMCB6IE0gNDgwLjAwLDEyOC4wMGMwLjAwLTE3LjY2NC0xNC4zNjgtMzIuMDAtMzIuMDAtMzIuMDBMIDY0LjAwLDk2LjAwIGMtMTcuNjQ4LDAuMDAtMzIuMDAsMTQuMzM2LTMyLjAwLDMyLjAwbCAxMjUuMzEyLDk0LjAwCglsIDY5Ljg4OC01Mi40MzJjIDguNTI4LTYuMzY4LCAxOC42NTYtOS42MCwgMjguODAtOS42MGMgMTAuMTI4LDAuMDAsIDIwLjI1NiwzLjIxNiwgMjguNzg0LDkuNjBsIDY5LjkwNCw1Mi40MzJMIDQ4MC4wMCwxMjguMDBMIDQ4MC4wMCwxMjguMDB6IE0gNDgwLjAwLDE0OC4wMGwtMTEyLjAwLDg0LjAwbCAxMTIuMDAsODQuMDAKCUwgNDgwLjAwLDE0OC4wMCB6IE0gMjc1LjE4NCwxODIuMzY4Yy01LjU4NC00LjE5Mi0xMi4yMDgtNi40MC0xOS4xODQtNi40MGMtNi45NzYsMC4wMC0xMy42MTYsMi4yMjQtMTkuMjAsNi40MEwgMTcwLjY0LDIzMi4wMGwtMTMuMzI4LDEwLjAwTCAzMi4wMCwzMzUuOTg0TCAzMi4wMCwzMzYuMDAgCgljMC4wMCwxNy42NDgsIDE0LjM1MiwzMi4wMCwgMzIuMDAsMzIuMDBsIDM4NC4wMCwwLjAwIGMgMTcuNjMyLDAuMDAsIDMyLjAwLTE0LjM1MiwgMzIuMDAtMzIuMDBMIDI3NS4xODQsMTgyLjM2OHoiIGRhdGEtdGFncz0ibWFpbCIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGUwMWE7IiBkPSJNIDQ2Ni42MjQsMzEyLjQ0OGMtMjAuMDAsNS4yNDgtNjcuMDI0LDUuMTg0LTEzNS44MDgsNy4wMDgKCQljIDMuMjQ4LDE1LjAwOCwgNC4wMCwyOC41NDQsIDQuMDAsNTIuNTc2QyAzMzQuODE2LDQyOS40NCwgMjkyLjk5Miw0ODAuMDAsIDI1Ni4wMCw0ODAuMDBjLTI2LjEyOCwwLjAwLTQ3LjY2NC0yMS4zNi00OC4wMC00Ny42MzJjLTAuMzUyLTMyLjIyNC0xMC4zMi04Ny44NzItNjQuMDAtMTE2LjA5NgoJCWMtMy45MzYtMi4wOC0xNS4yMC03LjYzMi0xNi44NDgtOC4zNTJMIDEyOC4wMCwzMDcuMjBDIDExOS42MCwzMTQuNDQ4LCAxMDcuOTUyLDMyMC4wMCwgOTYuMDAsMzIwLjAwTCA0OC4wMCwzMjAuMDAgYy0yNi40NjQsMC4wMC00OC4wMC0yMS41MzYtNDguMDAtNDguMDBsMC4wMC0yNTYuMDAgYzAuMDAtMjYuNDY0LCAyMS41MzYtNDguMDAsIDQ4LjAwLTQ4LjAwbCA0OC4wMCwwLjAwIAoJCWMgMTkuMDQsMC4wMCwgMzQuOTc2LDExLjUwNCwgNDIuNjg4LDI3LjYzMmMgMC4xOTItMC4wNjQsIDAuNTI4LTAuMTYsIDAuNzUyLTAuMTkyYyAxLjA1Ni0wLjI4OCwgMi4zMDQtMC41OTIsIDMuODI0LTAuOTkyCgkJQyAxNDMuNTUyLTUuNjMyLCAxNDMuNjk2LTUuNjY0LCAxNDQuMDAtNS43NDRjIDkuMjE2LTIuMjg4LCAyNi45Ni02LjUyOCwgNjQuODgtMTUuMjQ4QyAyMTcuMDA4LTIyLjg0OCwgMjU5Ljk1Mi0zMi4wMCwgMzA0LjQzMi0zMi4wMGwgODcuNDcyLDAuMDAgCgkJYyAyNi42NTYsMC4wMCwgNDUuODcyLDEwLjI1NiwgNTcuMzEyLDMwLjg0OGMgMC4xNiwwLjMyLCAzLjg0LDcuNTA0LCA2Ljg0OCwxNy4yMTZjIDIuMjU2LDcuMzEyLCAzLjA4OCwxNy42NjQsIDAuMzY4LDI4LjE2CgkJYyAxNy4xODQsMTEuODA4LCAyMi43MiwyOS42NjQsIDI2LjMyLDQxLjI4YyA2LjAzMiwxOS4wNTYsIDQuMjI0LDMzLjM3NiwgMC4wMzIsNDMuNjMyYyA5LjY2NCw5LjEyLCAxNy45MDQsMjMuMDI0LCAyMS4zNzYsNDQuMjU2CgkJYyAyLjE2LDEzLjE1Mi0wLjE2LDI2LjY4OC02LjIyNCwzNy45NTJjIDkuMDU2LDEwLjE3NiwgMTMuMTg0LDIyLjk3NiwgMTMuNjY0LDM0LjgxNmwgMC4xOTIsMy4zNDRDIDUxMS45MDQsMjUxLjYwLCA1MTIuMDAsMjUyLjg5NiwgNTEyLjAwLDI1Ny41MDQKCQlDIDUxMi4wMCwyNzcuNzEyLCA0OTguMDAsMzAzLjQ4OCwgNDY2LjYyNCwzMTIuNDQ4eiBNIDExMi4wMCwxNi4wMGMwLjAwLTguODQ4LTcuMTUyLTE2LjAwLTE2LjAwLTE2LjAwTCA0OC4wMCwwLjAwIGMtOC44NDgsMC4wMC0xNi4wMCw3LjE1Mi0xNi4wMCwxNi4wMEwgMzIuMDAsMjcyLjAwIGMwLjAwLDguODQ4LCA3LjE1MiwxNi4wMCwgMTYuMDAsMTYuMDBsIDQ4LjAwLDAuMDAgCgkJYyA4Ljg0OCwwLjAwLCAxNi4wMC03LjE1MiwgMTYuMDAtMTYuMDBMIDExMi4wMCwxNi4wMCB6IE0gNDc5LjYzMiwyNDcuNDRDIDQ3OS4zMTIsMjM5LjUzNiwgNDc2LjAwLDIyNC4wMCwgNDQ4LjAwLDIyNC4wMGMtMjQuMDAsMC4wMC0zMi4wMCwwLjAwLTMyLjAwLDAuMDBjLTQuNDMyLDAuMDAtOC4wMC0zLjU4NC04LjAwLTguMDBTIDQxMS41NjgsMjA4LjAwLCA0MTYuMDAsMjA4LjAwCgkJYzAuMDAsMC4wMCwgNy4wMDgsMC4wMCwgMzEuMDA4LDAuMDBzIDI3LjE1Mi0xOS45MDQsIDI1LjYwLTI5LjUwNEMgNDcwLjYyNCwxNjYuNTYsIDQ2NS4wMjQsMTQ0LjAwLCA0MzguMDAsMTQ0LjAwQyA0MTEuMDA4LDE0NC4wMCwgNDAwLjAwLDE0NC4wMCwgNDAwLjAwLDE0NC4wMGMtNC40MzIsMC4wMC04LjAwLTMuNTY4LTguMDAtOC4wMAoJCWMwLjAwLTQuNDAsIDMuNTY4LTguMDAsIDguMDAtOC4wMGMwLjAwLDAuMDAsIDE5LjAwOCwwLjAwLCAzMS41MDQsMC4wMGMgMjcuMDA4LDAuMDAsIDI0LjYyNC0yMC41OTIsIDIwLjc1Mi0zMi44OEMgNDQ3LjE1Miw3OC45NzYsIDQ0NC4wMzIsNjQuMDAsIDQxMC4wMCw2NC4wMAoJCWMtMTEuNTA0LDAuMDAtMjYuMDk2LDAuMDAtMjYuMDk2LDAuMDBjLTQuNDMyLDAuMDAtOC4wMC0zLjU2OC04LjAwLTguMDBjMC4wMC00LjQwLCAzLjU2OC04LjAwLCA4LjAwLTguMDBjMC4wMCwwLjAwLCAxMS4wODgsMC4wMCwgMjUuMDg4LDAuMDAKCQljIDE3LjUwNCwwLjAwLCAxOC4zMi0xNi41NiwgMTYuNDk2LTIyLjQ5NmMtMi4wMC02LjQ5Ni00LjM2OC0xMS4zMTItNC40NjQtMTEuNTM2QyA0MTYuMTkyLDUuMjQ4LCA0MDguNDAsMC4wMCwgMzkxLjkwNCwwLjAwbC04Ny40NzIsMC4wMCAKCQljLTQzLjkzNiwwLjAwLTg3LjUyLDkuOTY4LTg4LjY0LDEwLjIyNGMtNjYuNDY0LDE1LjMxMi02OS45NjgsMTYuNDk2LTc0LjE0NCwxNy42OGMwLjAwLDAuMDAtMTMuNTM2LDIuMjg4LTEzLjUzNiwxNC4wOTZMIDEyOC4wMCwyNjIuOTkyCgkJYzAuMDAsNy41MDQsIDQuNzg0LDE0LjI4OCwgMTIuNzA0LDE2LjY3MmMgMC45OTIsMC4zODQsIDIuMzM2LDAuODAsIDMuMjk2LDEuMjBjIDczLjA4OCwzMC4yNzIsIDk1LjM0NCw5Ni42NCwgOTYuMDAsMTUxLjEzNmMgMC4wOTYsNy42NjQsIDYuMDAsMTYuMDAsIDE2LjAwLDE2LjAwCgkJYyAxNi45MTIsMC4wMCwgNDYuODE2LTMzLjk1MiwgNDYuODE2LTc1Ljk2OEMgMzAyLjgxNiwzMzQuMDk2LCAzMDEuMjgsMzI3LjUzNiwgMjg4LjAwLDI4OC4wMGMgMTYwLjAwLDAuMDAsIDE1OC44OC0yLjMwNCwgMTcyLjk5Mi02LjAwQyA0NzguNDk2LDI3Ni45OTIsIDQ4MC4wMCwyNjIuNDk2LCA0ODAuMDAsMjU3LjUwNAoJCUMgNDgwLjAwLDI1Mi4wMTYsIDQ3OS44NCwyNTIuODE2LCA0NzkuNjMyLDI0Ny40NHpNIDcyLjAwLDY0LjAwQyA1OC43NTIsNjQuMDAsIDQ4LjAwLDUzLjI0OCwgNDguMDAsNDAuMDBTIDU4Ljc1MiwxNi4wMCwgNzIuMDAsMTYuMDAKCQlTIDk2LjAwLDI2Ljc1MiwgOTYuMDAsNDAuMDBTIDg1LjI0OCw2NC4wMCwgNzIuMDAsNjQuMDB6IE0gNzIuMDAsMzIuMDBDIDY3LjYwLDMyLjAwLCA2NC4wMCwzNS42MCwgNjQuMDAsNDAuMDBTIDY3LjYwLDQ4LjAwLCA3Mi4wMCw0OC4wMFMgODAuMDAsNDQuNDAsIDgwLjAwLDQwLjAwUyA3Ni40MCwzMi4wMCwgNzIuMDAsMzIuMDB6IiBkYXRhLXRhZ3M9Imxpa2UiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hlMDFiOyIgZD0iTSA0MzIuMDAsNDgwLjAwTCA4MC4wMCw0ODAuMDAgQyA0NC42NTYsNDgwLjAwLCAxNi4wMCw0NTEuMzQ0LCAxNi4wMCw0MTYuMDBsMC4wMC0zODQuMDAgYzAuMDAtMzUuMzQ0LCAyOC42NTYtNjQuMDAsIDY0LjAwLTY0LjAwbCAzNTIuMDAsMC4wMCBjIDM1LjM0NCwwLjAwLCA2NC4wMCwyOC42NTYsIDY0LjAwLDY0LjAwTCA0OTYuMDAsNDE2LjAwIEMgNDk2LjAwLDQ1MS4zNDQsIDQ2Ny4zNDQsNDgwLjAwLCA0MzIuMDAsNDgwLjAwegoJCSBNIDQ2NC4wMCwzMi4wMGMwLjAwLTE3LjYzMi0xNC4zNjgtMzIuMDAtMzIuMDAtMzIuMDBMIDgwLjAwLDAuMDAgYy0xNy42NDgsMC4wMC0zMi4wMCwxNC4zNjgtMzIuMDAsMzIuMDBMIDQ4LjAwLDQxNi4wMCBjMC4wMCwxNy42NDgsIDE0LjM1MiwzMi4wMCwgMzIuMDAsMzIuMDBsIDM1Mi4wMCwwLjAwIGMgMTcuNjMyLDAuMDAsIDMyLjAwLTE0LjM1MiwgMzIuMDAtMzIuMDBMIDQ2NC4wMCwzMi4wMCB6TSA0MTYuMDAsNDE2LjAwTCA5Ni4wMCw0MTYuMDAgQyA4Ny4xNTIsNDE2LjAwLCA4MC4wMCw0MDguODQ4LCA4MC4wMCw0MDAuMDBsMC4wMC0yODguMDAgYzAuMDAtOC44NDgsIDcuMTUyLTE2LjAwLCAxNi4wMC0xNi4wMGwgMzIwLjAwLDAuMDAgYyA4Ljg0OCwwLjAwLCAxNi4wMCw3LjE1MiwgMTYuMDAsMTYuMDBMIDQzMi4wMCw0MDAuMDAgQyA0MzIuMDAsNDA4Ljg0OCwgNDI0Ljg0OCw0MTYuMDAsIDQxNi4wMCw0MTYuMDB6CgkJIE0gNDE2LjAwLDQwMC4wMGwwLjAwLTIyMS45MDQgbC01Mi4wMCw1Ni40OEMgMzYwLjk0NCwyMzguMDMyLCAzNTYuNTkyLDI0MC4wMCwgMzUyLjAwLDI0MC4wMHMtOC45NzYtMS45NjgtMTIuMDAtNS40MjRsLTQxLjY2NC00Ny4yMGwtMTI2LjMzNiwxNDMuMjAKCQlDIDE2OC45NiwzMzQuMDMyLCAxNjQuNTkyLDMzNi4wMCwgMTYwLjAwLDMzNi4wMFMgMTUxLjA0LDMzNC4wMzIsIDE0OC4wMCwzMzAuNTc2TCA5Ni4wMCwyNzAuNjA4TCA5Ni4wMCw0MDAuMDAgTCA0MTYuMDAsNDAwLjAwIHogTSA5Ni4wMCwyNDYuNDBsIDY0LjAwLDczLjYwbCAxMjkuMDU2LTE0Ni4yODhsIDkuMjgtMTAuNTI4TCAzNDIuNTI4LDExMi4wMEwgOTYuMDAsMTEyLjAwIEwgOTYuMDAsMjQ2LjQwIHoKCQkgTSAzNjMuODQsMTEyLjAwbC01NC44NDgsNjMuMjhMIDM1Mi4wMCwyMjQuMDBsIDY0LjAwLTcwLjA2NEwgNDE2LjAwLDExMi4wMCBMIDM2My44NCwxMTIuMDAgek0gMzIwLjAwLDI3Mi4wMGMgMjYuNDk2LDAuMDAsIDQ4LjAwLDIxLjQ4OCwgNDguMDAsNDguMDBzLTIxLjUwNCw0OC4wMC00OC4wMCw0OC4wMGMtMjYuNTI4LDAuMDAtNDguMDAtMjEuNDg4LTQ4LjAwLTQ4LjAwUyAyOTMuNDcyLDI3Mi4wMCwgMzIwLjAwLDI3Mi4wMHogTSAzMjAuMDAsMzUyLjAwYyAxNy42MzIsMC4wMCwgMzIuMDAtMTQuMzUyLCAzMi4wMC0zMi4wMAoJCXMtMTQuMzY4LTMyLjAwLTMyLjAwLTMyLjAwYy0xNy42NjQsMC4wMC0zMi4wMCwxNC4zNTItMzIuMDAsMzIuMDBTIDMwMi4zMzYsMzUyLjAwLCAzMjAuMDAsMzUyLjAweiIgZGF0YS10YWdzPSJwaG90byIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGUwMWM7IiBkPSJNIDUwMi42MjQsMzU4LjY0bC05Ni4wMCw5Ni4wMEMgNDAwLjYyNCw0NjAuNjQsIDM5Mi40NjQsNDY0LjAwLCAzODQuMDAsNDY0LjAwTCA0OC4wMCw0NjQuMDAgCgkJQyAyMS41MzYsNDY0LjAwLDAuMDAsNDQyLjQ4LDAuMDAsNDE2LjAwbDAuMDAtMzg0LjAwIGMwLjAwLTI2LjQ2NCwgMjEuNTM2LTQ4LjAwLCA0OC4wMC00OC4wMGwgNDE2LjAwLDAuMDAgYyAyNi40NjQsMC4wMCwgNDguMDAsMjEuNTM2LCA0OC4wMCw0OC4wMEwgNTEyLjAwLDMzNi4wMCBDIDUxMi4wMCwzNDQuNDk2LCA1MDguNjI0LDM1Mi42NCwgNTAyLjYyNCwzNTguNjR6IE0gNDgwLjAwLDMyLjAwCgkJYzAuMDAtOC44NDgtNy4xNTItMTYuMDAtMTYuMDAtMTYuMDBMIDQ4LjAwLDE2LjAwIGMtOC44NDgsMC4wMC0xNi4wMCw3LjE1Mi0xNi4wMCwxNi4wMEwgMzIuMDAsNDE2LjAwIGMwLjAwLDguODQ4LCA3LjE1MiwxNi4wMCwgMTYuMDAsMTYuMDBsIDMyMC4wMCwwLjAwIGwwLjAwLTY0LjAwIGwtMC4wMzIsMC4wMCBjMC4wMC0yNi41MTIsIDIxLjUwNC00OC4wMCwgNDguMDAtNDguMDBsIDE2LjAwLDAuMDAgTCA0ODAuMDAsMzIwLjAwIEwgNDgwLjAwLDMyLjAwIHogTSA0MzEuOTY4LDMzNi4wMGwtMTYuMDAsMC4wMCAKCQljLTE3LjYzMiwwLjAwLTMyLjAwLDE0LjM1Mi0zMi4wMCwzMi4wMEwgMzg0LjAwLDM2OC4wMCBMIDM4NC4wMCw0MzIuMDAgbCA5Ni4wMC05Ni4wMEwgNDMxLjk2OCwzMzYuMDAgek0gMjQ4LjAwLDM1Mi4wMCBDIDI0My41ODQsMzUyLjAwIDI0MC4wMCwzNTUuNTY4IDI0MC4wMCwzNjAuMDAgQyAyNDAuMDAsMzY0LjQzMiAyNDMuNTg0LDM2OC4wMCAyNDguMDAsMzY4LjAwIEwgMzI4LjAwLDM2OC4wMCBDIDMzMi40MCwzNjguMDAgMzM2LjAwLDM2NC40MTYgMzM2LjAwLDM2MC4wMCBDIDMzNi4wMCwzNTUuNTg0IDMzMi40MCwzNTIuMDAgMzI4LjAwLDM1Mi4wMCBMIDI0OC4wMCwzNTIuMDAgWk0gMjQ4LjAwLDMwNC4wMCBDIDI0My41ODQsMzA0LjAwIDI0MC4wMCwzMDcuNTg0IDI0MC4wMCwzMTIuMDAgQyAyNDAuMDAsMzE2LjQxNiAyNDMuNTg0LDMyMC4wMCAyNDguMDAsMzIwLjAwIEwgMzI4LjAwLDMyMC4wMCBDIDMzMi40MCwzMjAuMDAgMzM2LjAwLDMxNi40MTYgMzM2LjAwLDMxMi4wMCBDIDMzNi4wMCwzMDcuNTg0IDMzMi40MCwzMDQuMDAgMzI4LjAwLDMwNC4wMCBMIDI0OC4wMCwzMDQuMDAgWk0gMjQwLjAwLDI2NC4wMCBDIDI0MC4wMCwyNjguNDMyIDI0My41ODQsMjcyLjAwIDI0OC4wMCwyNzIuMDAgTCA0NDAuMDAsMjcyLjAwIEMgNDQ0LjQwLDI3Mi4wMCA0NDguMDAsMjY4LjQxNiA0NDguMDAsMjY0LjAwIEMgNDQ4LjAwLDI1OS41ODQgNDQ0LjQwLDI1Ni4wMCA0NDAuMDAsMjU2LjAwIEwgMjQ4LjAwLDI1Ni4wMCBDIDI0My41ODQsMjU2LjAwIDI0MC4wMCwyNTkuNTg0IDI0MC4wMCwyNjQuMDAgWk0gNDQwLjAwLDE3Ni4wMCBDIDQ0NC40MCwxNzYuMDAgNDQ4LjAwLDE3Mi40MzIgNDQ4LjAwLDE2OC4wMCBDIDQ0OC4wMCwxNjMuNjAgNDQ0LjQwLDE2MC4wMCA0NDAuMDAsMTYwLjAwIEwgNzIuMDAsMTYwLjAwIEMgNjcuNTg0LDE2MC4wMCA2NC4wMCwxNjMuNjAgNjQuMDAsMTY4LjAwIEMgNjQuMDAsMTcyLjQzMiA2Ny41ODQsMTc2LjAwIDcyLjAwLDE3Ni4wMCBMIDQ0MC4wMCwxNzYuMDAgWk0gNDQwLjAwLDEyOC4wMCBDIDQ0NC40MCwxMjguMDAgNDQ4LjAwLDEyNC40MzIgNDQ4LjAwLDEyMC4wMCBDIDQ0OC4wMCwxMTUuNjAgNDQ0LjQwLDExMi4wMCA0NDAuMDAsMTEyLjAwIEwgNzIuMDAsMTEyLjAwIEMgNjcuNTg0LDExMi4wMCA2NC4wMCwxMTUuNjAgNjQuMDAsMTIwLjAwIEMgNjQuMDAsMTI0LjQzMiA2Ny41ODQsMTI4LjAwIDcyLjAwLDEyOC4wMCBMIDQ0MC4wMCwxMjguMDAgWk0gNDQwLjAwLDgwLjAwIEMgNDQ0LjQwLDgwLjAwIDQ0OC4wMCw3Ni40MzIgNDQ4LjAwLDcyLjAwIEMgNDQ4LjAwLDY3LjYwIDQ0NC40MCw2NC4wMCA0NDAuMDAsNjQuMDAgTCA3Mi4wMCw2NC4wMCBDIDY3LjU4NCw2NC4wMCA2NC4wMCw2Ny42MCA2NC4wMCw3Mi4wMCBDIDY0LjAwLDc2LjQzMiA2Ny41ODQsODAuMDAgNzIuMDAsODAuMDAgTCA0NDAuMDAsODAuMDAgWk0gNDQwLjAwLDIyNC4wMCBDIDQ0NC40MCwyMjQuMDAgNDQ4LjAwLDIyMC40MTYgNDQ4LjAwLDIxNi4wMCBDIDQ0OC4wMCwyMTEuNTg0IDQ0NC40MCwyMDguMDAgNDQwLjAwLDIwOC4wMCBMIDcyLjAwLDIwOC4wMCBDIDY3LjU4NCwyMDguMDAgNjQuMDAsMjExLjU2OCA2NC4wMCwyMTYuMDAgQyA2NC4wMCwyMjAuNDMyIDY3LjU4NCwyMjQuMDAgNzIuMDAsMjI0LjAwIEwgNDQwLjAwLDIyNC4wMCBaTSA4MC4wMCwyNTYuMDBsIDExMi4wMCwwLjAwIGMgOC44NDgsMC4wMCwgMTYuMDAsNy4xNTIsIDE2LjAwLDE2LjAwTCAyMDguMDAsMzY4LjAwIGMwLjAwLDguODQ4LTcuMTUyLDE2LjAwLTE2LjAwLDE2LjAwTCA4MC4wMCwzODQuMDAgCgkJQyA3MS4xNTIsMzg0LjAwLCA2NC4wMCwzNzYuODQ4LCA2NC4wMCwzNjguMDBsMC4wMC05Ni4wMCBDIDY0LjAwLDI2My4xNjgsIDcxLjE1MiwyNTYuMDAsIDgwLjAwLDI1Ni4wMHogTSA5Ni4wMCwzNTIuMDBsIDgwLjAwLDAuMDAgbDAuMDAtNjQuMDAgTCA5Ni4wMCwyODguMDAgTCA5Ni4wMCwzNTIuMDAgeiIgZGF0YS10YWdzPSJub3RlIiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZTAxZDsiIGQ9Ik0gMjQwLjAwLDMyMC4wMEExNi4wMCwxNi4wMCAxODAuMDAgMSwwIDI3Mi4wMCwzMjBBMTYuMDAsMTYuMDAgMTgwLjAwIDEsMCAyNDAuMDAsMzIwek0gMjQwLjAwLDEyOC4wMEExNi4wMCwxNi4wMCAxODAuMDAgMSwwIDI3Mi4wMCwxMjhBMTYuMDAsMTYuMDAgMTgwLjAwIDEsMCAyNDAuMDAsMTI4ek0gMTQ0LjAwLDIyNC4wMEExNi4wMCwxNi4wMCAxODAuMDAgMSwwIDE3Ni4wMCwyMjRBMTYuMDAsMTYuMDAgMTgwLjAwIDEsMCAxNDQuMDAsMjI0ek0gMzM2LjAwLDIyNC4wMEExNi4wMCwxNi4wMCAxODAuMDAgMSwwIDM2OC4wMCwyMjRBMTYuMDAsMTYuMDAgMTgwLjAwIDEsMCAzMzYuMDAsMjI0ek0gMTcyLjExMiwxNTYuMTI4QTE2LjAwLDE2LjAwIDE4MC4wMCAxLDAgMjA0LjExMiwxNTYuMTI4QTE2LjAwLDE2LjAwIDE4MC4wMCAxLDAgMTcyLjExMiwxNTYuMTI4ek0gMTcyLjExMiwyOTEuODg4QTE2LjAwLDE2LjAwIDE4MC4wMCAxLDAgMjA0LjExMiwyOTEuODg4MDAwMDAwMDAwMDNBMTYuMDAsMTYuMDAgMTgwLjAwIDEsMCAxNzIuMTEyLDI5MS44ODgwMDAwMDAwMDAwM3pNIDMwNy44NzIsMTU2LjEyOEExNi4wMCwxNi4wMCAxODAuMDAgMSwwIDMzOS44NzIsMTU2LjEyOEExNi4wMCwxNi4wMCAxODAuMDAgMSwwIDMwNy44NzIsMTU2LjEyOHpNIDQxNi4wMCwyNTYuMDBjLTEuMTIsMC4wMC0yLjA2NC0wLjUyOC0zLjE1Mi0wLjY0Yy01LjU2OCwyNy45Mi0xOC43Miw1Mi44OTYtMzYuNzUyLDczLjUwNEwgMzUzLjEyLDQ1My44NTYKCQlDIDM1MC4zMiw0NjkuMDA4LCAzMzcuMDg4LDQ4MC4wMCwgMzIxLjY2NCw0ODAuMDBsLTEyOC4wMCwwLjAwIGMtMTUuNDI0LDAuMDAtMjguNjQtMTEuMDA4LTMxLjQ3Mi0yNi4xNmwtMjIuNDAtMTIwLjc4NEMgMTEyLjkxMiwzMDQuNDY0LCA5Ni4wMCwyNjYuMzY4LCA5Ni4wMCwyMjQuMDAKCQljMC4wMC00MS4zMjgsIDE2LjIyNC03OC40OCwgNDEuOTM2LTEwNi44NDhsIDIyLjU5Mi0xMjMuMDA4QyAxNjMuMzQ0LTIwLjk5MiwgMTc2LjU3Ni0zMi4wMCwgMTkyLjAwLTMyLjAwbCAxMjguMDAsMC4wMCBjIDE1LjQwOCwwLjAwLCAyOC42MjQsMTEuMDA4LCAzMS40NzIsMjYuMTZsIDIyLjc4NCwxMjIuOTEyCgkJYyAxOS4wMjQsMjAuOTc2LCAzMi44NDgsNDYuNzIsIDM4LjU5Miw3NS42MEMgNDEzLjkzNiwxOTIuNTI4LCA0MTQuODgsMTkyLjAwLCA0MTYuMDAsMTkyLjAwYyAxNy42NjQsMC4wMCwgMzIuMDAsMTQuMzM2LCAzMi4wMCwzMi4wMEMgNDQ4LjAwLDI0MS42OCwgNDMzLjY2NCwyNTYuMDAsIDQxNi4wMCwyNTYuMDB6IE0gMTkzLjY2NCw0NDguMDBsIDEyOC4wMCwwLjAwIAoJCWwgMTYuMDAtODYuMTkyQyAzMTQuMDMyLDM3NS41NTIsIDI4Ni45NzYsMzg0LjAwLCAyNTcuNjY0LDM4NC4wMGMtMjkuMjk2LDAuMDAtNTYuMzY4LTguNDQ4LTgwLjAwLTIyLjE5MkwgMTkzLjY2NCw0NDguMDB6IE0gMzIwLjAwLDAuMDBsLTEyOC4wMCwwLjAwIGwtMTYuMDAsODYuMTkyCgkJQyAxOTkuNjE2LDcyLjQ2NCwgMjI2LjY4OCw2NC4wMCwgMjU2LjAwLDY0LjAwYyAyOS4yOTYsMC4wMCwgNTYuMzg0LDguNDY0LCA4MC4wMCwyMi4xOTJMIDMyMC4wMCwwLjAweiBNIDI1Ni4wMCw5Ni4wMGMtNzAuNTc2LDAuMDAtMTI4LjAwLDU3LjQ0LTEyOC4wMCwxMjguMDBjMC4wMCw3MC41NzYsIDU3LjQyNCwxMjguMDAsIDEyOC4wMCwxMjguMDAKCQljIDcwLjU3NiwwLjAwLCAxMjguMDAtNTcuNDI0LCAxMjguMDAtMTI4LjAwQyAzODQuMDAsMTUzLjQ0LCAzMjYuNTYsOTYuMDAsIDI1Ni4wMCw5Ni4wMHpNIDMzNS4wNTYsMzAzLjU4NCBDIDMzNi45OTIsMzAxLjY0OCAzMzcuMTg0LDI5OC41MjggMzM1LjUwNCwyOTYuNDAgTCAyOTYuNjg4LDI0OC4wNjQgTCAyNjcuMTIsMjEyLjQ2NCBDIDI2NC4wOTYsMjA5LjU1MiAyNTkuOTM2LDIwOC4wNjQgMjU1LjkzNiwyMDguMDMyIEMgMjUxLjYzMiwyMDguMDY0IDI0Ny42MTYsMjA5LjcyOCAyNDQuNjI0LDIxMi43MDQgQyAyNDEuNjMyLDIxNS42OCAyNDAuMDAsMjE5LjY2NCAyNDAuMDAsMjIzLjg3MiBDIDI0MC4wMCwyMjguMjI0IDI0MS42OCwyMzIuMjg4IDI0NC43MzYsMjM1LjM2IEwgMzI3LjgwOCwzMDMuOTIgQyAzMzAuMDAsMzA1LjY4IDMzMy4xMiwzMDUuNTIgMzM1LjA1NiwzMDMuNTg0IFoiIGRhdGEtdGFncz0iY2xvY2siIC8+CjxnbHlwaCB1bmljb2RlPSImI3hlMDFlOyIgZD0iTSA1MDQuNjg4LDQ3Ny40NEMgNTAyLjAzMiw0NzkuMTUyLCA0OTkuMDA4LDQ4MC4wMCwgNDk2LjAwLDQ4MC4wMGMtMy4wODgsMC4wMC02LjE5Mi0wLjg4LTguODgtMi42ODhsLTQ4MC4wMC0zMjAuMDAKCWMtNC45NDQtMy4yOC03LjY2NC05LjA1Ni03LjAyNC0xNC45NzZjIDAuNjA4LTUuOTA0LCA0LjQ0OC0xMS4wMDgsIDkuOTY4LTEzLjE4NGwgMTI1LjE4NC01MC4wOTZsIDU4Ljg2NC0xMDMuMDA4CgljIDIuODE2LTQuOTQ0LCA4LjA0OC04LjAwLCAxMy43MTItOC4wNjRjIDAuMDY0LDAuMDAsIDAuMTEyLDAuMDAsIDAuMTc2LDAuMDBjIDUuNjE2LDAuMDAsIDEwLjgzMiwyLjk3NiwgMTMuNzEyLDcuNzc2bCAzMy4yMzIsNTUuNDA4bCAxNTUuMTItNjIuMDMyCglDIDQxMS45NjgtMzEuNjMyLCA0MTMuOTY4LTMyLjAwLCA0MTYuMDAtMzIuMDBjIDIuNzIsMC4wMCwgNS40MDgsMC42ODgsIDcuODQsMi4wNjRjIDQuMjI0LDIuMzY4LCA3LjEyLDYuNTI4LCA3LjkzNiwxMS4zMTJsIDgwLjAwLDQ4MC4wMAoJQyA1MTIuODE2LDQ2Ny42NjQsIDUxMC4wMzIsNDczLjk2OCwgNTA0LjY4OCw0NzcuNDR6IE0gNTAuMTc2LDE0Ny41NjhMIDQyMC45NzYsMzk0Ljc4NEwgMTUxLjM3NiwxMDYuMTkyYy0xLjQyNCwwLjg0OC0yLjY4OCwxLjk2OC00LjI1NiwyLjU5MgoJTCA1MC4xNzYsMTQ3LjU2OHogTSAxNjMuMDI0LDk0Ljk0NGMtMC4wMzIsMC4wNjQtMC4wOCwwLjA5Ni0wLjExMiwwLjE2TCA0NjYuMDAsNDE5LjUwNEwgMjA3LjYxNiwxNi45MTJMIDE2My4wMjQsOTQuOTQ0eiBNIDQwMy40NzIsNi4yNTYKCWwtMTM2LjY1Niw1NC42NTZjLTMuMjQ4LDEuMjgtNi42MjQsMS43MTItOS45NjgsMS45MDRMIDQ2Ny4yOCwzODkuMDI0TCA0MDMuNDcyLDYuMjU2eiIgZGF0YS10YWdzPSJwYXBlcnBsYW5lIiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZTAxZjsiIGQ9Ik0gMTI4LjAwLDM4My42NjRMIDEyOC4wMCw0MzIuMDAgYzAuMDAsMjYuNDY0LTIxLjUzNiw0OC4wMC00OC4wMCw0OC4wMFMgMzIuMDAsNDU4LjQ2NCwgMzIuMDAsNDMyLjAwbDAuMDAtNDguMzM2IAoJCUMgMTIuNjcyLDM2OS4wMjQsMC4wMCwzNDYuMDk2LDAuMDAsMzIwLjAwcyAxMi42NzItNDkuMDI0LCAzMi4wMC02My42MzJMIDMyLjAwLDE2LjAwIGMwLjAwLTI2LjQ2NCwgMjEuNTM2LTQ4LjAwLCA0OC4wMC00OC4wMHMgNDguMDAsMjEuNTM2LCA0OC4wMCw0OC4wMEwgMTI4LjAwLDI1Ni4zNjggYyAxOS4zMjgsMTQuNTkyLCAzMi4wMCwzNy41MzYsIDMyLjAwLDYzLjYzMgoJCVMgMTQ3LjMyOCwzNjkuMDI0LCAxMjguMDAsMzgzLjY2NHogTSA2NC4wMCw0MzIuMDBjMC4wMCw4Ljg0OCwgNy4xNTIsMTYuMDAsIDE2LjAwLDE2LjAwcyAxNi4wMC03LjE1MiwgMTYuMDAtMTYuMDBsMC4wMC0zMy42MCBDIDkwLjgzMiwzOTkuNDQsIDg1LjQ4OCw0MDAuMDAsIDgwLjAwLDQwMC4wMFMgNjkuMTY4LDM5OS40NCwgNjQuMDAsMzk4LjQwTCA2NC4wMCw0MzIuMDAgeiBNIDk2LjAwLDE2LjAwCgkJYzAuMDAtOC44NDgtNy4xNTItMTYuMDAtMTYuMDAtMTYuMDBzLTE2LjAwLDcuMTUyLTE2LjAwLDE2LjAwTCA2NC4wMCwyNDEuNjMyIEMgNjkuMTY4LDI0MC41NiwgNzQuNTEyLDI0MC4wMCwgODAuMDAsMjQwLjAwcyAxMC44MzIsMC41NiwgMTYuMDAsMS42MzJMIDk2LjAwLDE2LjAwIHogTSAxMjUuODQsMzA2LjU2CgkJYy0wLjI1Ni0wLjg0OC0wLjQ4LTEuNjgtMC43ODQtMi41MjhjLTEuNTItNC4yMjQtMy40NzItOC4yMjQtNi4wNDgtMTEuNzc2Yy0wLjA2NC0wLjA5Ni0wLjE2LTAuMTYtMC4yMjQtMC4yNTYKCQljLTIuNzg0LTMuODA4LTYuMDk2LTcuMTg0LTkuODU2LTEwLjAzMmMtMC4wNjQtMC4wNjQtMC4xMTItMC4wOTYtMC4xNi0wLjEyOGMtMy44NTYtMi45MTItOC4xNi01LjI0OC0xMi43ODQtNi44OAoJCUMgOTAuOTc2LDI3My4xNTIsIDg1LjY0OCwyNzIuMDAsIDgwLjAwLDI3Mi4wMHMtMTAuOTc2LDEuMTUyLTE2LjAwLDIuOTc2Yy00LjYyNCwxLjYzMi04LjkyOCwzLjk2OC0xMi43ODQsNi44OGMtMC4wNDgsMC4wMzItMC4wOTYsMC4wNjQtMC4xNiwwLjEyOAoJCWMtMy43NiwyLjg0OC03LjA3Miw2LjIyNC05Ljg1NiwxMC4wMzJjLTAuMDY0LDAuMDk2LTAuMTYsMC4xNi0wLjIyNCwwLjI1NmMtMi41NzYsMy41NjgtNC41MjgsNy41NjgtNi4wNDgsMTEuNzc2CgkJYy0wLjMwNCwwLjg0OC0wLjUyOCwxLjY4LTAuNzg0LDIuNTI4QyAzMi44OCwzMTAuODQ4LCAzMi4wMCwzMTUuMzEyLCAzMi4wMCwzMjAuMDBjMC4wMCw0LjcyLCAwLjg4LDkuMTg0LCAyLjE2LDEzLjQ3MgoJCWMgMC4yNTYsMC44NDgsIDAuNDgsMS42OCwgMC43ODQsMi40OTZDIDM2LjQ0OCwzNDAuMTkyLCAzOC40MCwzNDQuMTkyLCA0MC45OTIsMzQ3Ljc3NmMgMC4wNjQsMC4wOTYsIDAuMTYsMC4xNiwgMC4yMjQsMC4yNTYKCQljIDIuNzg0LDMuNzc2LCA2LjA5Niw3LjE4NCwgOS44NTYsMTAuMDMyYyAwLjA2NCwwLjAzMiwgMC4xMTIsMC4wOTYsIDAuMTYsMC4xMjhDIDU1LjA3MiwzNjEuMDU2LCA1OS4zNzYsMzYzLjQwOCwgNjQuMDAsMzY1LjA1NgoJCUMgNjkuMDI0LDM2Ni44NDgsIDc0LjM1MiwzNjguMDAsIDgwLjAwLDM2OC4wMHMgMTAuOTc2LTEuMTUyLCAxNi4wMC0yLjk0NGMgNC42MjQtMS42NjQsIDguOTI4LTQuMDAsIDEyLjc4NC02Ljg4YyAwLjA0OC0wLjAzMiwgMC4wOTYtMC4wOTYsIDAuMTYtMC4xMjgKCQljIDMuNzYtMi44NDgsIDcuMDcyLTYuMjU2LCA5Ljg1Ni0xMC4wMzJjIDAuMDY0LTAuMDk2LCAwLjE2LTAuMTYsIDAuMjI0LTAuMjU2QyAxMjEuNjAsMzQ0LjE5MiwgMTIzLjU1MiwzNDAuMTkyLCAxMjUuMDU2LDMzNS45NjgKCQlDIDEyNS4zNiwzMzUuMTUyLCAxMjUuNjAsMzM0LjMyLCAxMjUuODQsMzMzLjQ3MkMgMTI3LjEyLDMyOS4xODQsIDEyOC4wMCwzMjQuNzIsIDEyOC4wMCwzMjAuMDBDIDEyOC4wMCwzMTUuMzEyLCAxMjcuMTIsMzEwLjg0OCwgMTI1Ljg0LDMwNi41NnpNIDQ4MC4wMCwzODMuNjY0TCA0ODAuMDAsNDMyLjAwIGMwLjAwLDI2LjQ2NC0yMS41MzYsNDguMDAtNDguMDAsNDguMDBzLTQ4LjAwLTIxLjUzNi00OC4wMC00OC4wMGwwLjAwLTQ4LjMzNiAKCQlDIDM2NC42NTYsMzY5LjAyNCwgMzUyLjAwLDM0Ni4wOTYsIDM1Mi4wMCwzMjAuMDBzIDEyLjY1Ni00OS4wMjQsIDMyLjAwLTYzLjYzMkwgMzg0LjAwLDE2LjAwIGMwLjAwLTI2LjQ2NCwgMjEuNTM2LTQ4LjAwLCA0OC4wMC00OC4wMHMgNDguMDAsMjEuNTM2LCA0OC4wMCw0OC4wMEwgNDgwLjAwLDI1Ni4zNjggYyAxOS4zMTIsMTQuNTkyLCAzMi4wMCwzNy41MzYsIDMyLjAwLDYzLjYzMgoJCVMgNDk5LjMxMiwzNjkuMDI0LCA0ODAuMDAsMzgzLjY2NHogTSA0MTYuMDAsNDMyLjAwYzAuMDAsOC44NDgsIDcuMTUyLDE2LjAwLCAxNi4wMCwxNi4wMHMgMTYuMDAtNy4xNTIsIDE2LjAwLTE2LjAwbDAuMDAtMzMuNjAgQyA0NDIuODE2LDM5OS40NCwgNDM3LjQ3Miw0MDAuMDAsIDQzMi4wMCw0MDAuMDBjLTUuNTA0LDAuMDAtMTAuODQ4LTAuNTYtMTYuMDAtMS42MEwgNDE2LjAwLDQzMi4wMCB6CgkJIE0gNDQ4LjAwLDE2LjAwYzAuMDAtOC44NDgtNy4xNTItMTYuMDAtMTYuMDAtMTYuMDBzLTE2LjAwLDcuMTUyLTE2LjAwLDE2LjAwTCA0MTYuMDAsMjQxLjYzMiBDIDQyMS4xNTIsMjQwLjU2LCA0MjYuNDk2LDI0MC4wMCwgNDMyLjAwLDI0MC4wMGMgNS40NzIsMC4wMCwgMTAuODE2LDAuNTYsIDE2LjAwLDEuNjMyTCA0NDguMDAsMTYuMDAgeiBNIDQ3Ny44NCwzMDYuNTYKCQljLTAuMjU2LTAuODQ4LTAuNDk2LTEuNjgtMC43ODQtMi41MjhjLTEuNTM2LTQuMjI0LTMuNDcyLTguMjI0LTYuMDY0LTExLjc3NmMtMC4wNjQtMC4wOTYtMC4xNi0wLjE2LTAuMjI0LTAuMjU2CgkJYy0yLjc4NC0zLjgwOC02LjA5Ni03LjE4NC05Ljg0LTEwLjAzMmMtMC4wNjQtMC4wNjQtMC4xMjgtMC4wOTYtMC4xNi0wLjEyOGMtMy44NzItMi45MTItOC4xNi01LjI0OC0xMi43ODQtNi44OAoJCUMgNDQyLjk3NiwyNzMuMTUyLCA0MzcuNjMyLDI3Mi4wMCwgNDMyLjAwLDI3Mi4wMGMtNS42NjQsMC4wMC0xMC45NzYsMS4xNTItMTYuMDAsMi45NzZjLTQuNjI0LDEuNjMyLTguOTQ0LDMuOTY4LTEyLjc4NCw2Ljg4CgkJYy0wLjA2NCwwLjAzMi0wLjA5NiwwLjA2NC0wLjE2LDAuMTI4Yy0zLjc3NiwyLjg0OC03LjA4OCw2LjIyNC05Ljg3MiwxMC4wMzJjLTAuMDY0LDAuMDk2LTAuMTYsMC4xNi0wLjIyNCwwLjI1NgoJCWMtMi41NiwzLjU2OC00LjUyOCw3LjU2OC02LjAzMiwxMS43NzZjLTAuMzIsMC44NDgtMC41MjgsMS42OC0wLjc4NCwyLjUyOEMgMzg0Ljg4LDMxMC44NDgsIDM4NC4wMCwzMTUuMzEyLCAzODQuMDAsMzIwLjAwCgkJYzAuMDAsNC43MiwgMC44OCw5LjE4NCwgMi4xNiwxMy40NzJjIDAuMjU2LDAuODQ4LCAwLjQ2NCwxLjY4LCAwLjc4NCwyLjQ5NmMgMS41MDQsNC4yMjQsIDMuNDcyLDguMjI0LCA2LjAzMiwxMS44MDgKCQljIDAuMDY0LDAuMDk2LCAwLjE2LDAuMTYsIDAuMjI0LDAuMjU2YyAyLjc4NCwzLjc3NiwgNi4wOTYsNy4xODQsIDkuODcyLDEwLjAzMmMgMC4wNjQsMC4wMzIsIDAuMDk2LDAuMDk2LCAwLjE2LDAuMTI4CgkJYyAzLjg0LDIuODgsIDguMTYsNS4yMTYsIDEyLjc4NCw2Ljg4QyA0MjEuMDI0LDM2Ni44NDgsIDQyNi4zMzYsMzY4LjAwLCA0MzIuMDAsMzY4LjAwYyA1LjYzMiwwLjAwLCAxMC45NzYtMS4xNTIsIDE2LjAwLTIuOTQ0YyA0LjYyNC0xLjY2NCwgOC45MTItNC4wMCwgMTIuNzg0LTYuODgKCQljIDAuMDMyLTAuMDMyLCAwLjA5Ni0wLjA5NiwgMC4xNi0wLjEyOGMgMy43NDQtMi44NDgsIDcuMDU2LTYuMjU2LCA5Ljg0LTEwLjAzMmMgMC4wNjQtMC4wOTYsIDAuMTYtMC4xNiwgMC4yMjQtMC4yNTYKCQljIDIuNTkyLTMuNjAsIDQuNTI4LTcuNjAsIDYuMDY0LTExLjgwOGMgMC4yODgtMC44MTYsIDAuNTI4LTEuNjY0LCAwLjc4NC0yLjQ5NkMgNDc5LjEyLDMyOS4xODQsIDQ4MC4wMCwzMjQuNzIsIDQ4MC4wMCwzMjAuMDAKCQlDIDQ4MC4wMCwzMTUuMzEyLCA0NzkuMTIsMzEwLjg0OCwgNDc3Ljg0LDMwNi41NnpNIDMwNC4wMCwxOTEuNjY0TCAzMDQuMDAsNDMyLjAwIGMwLjAwLDI2LjQ2NC0yMS41MzYsNDguMDAtNDguMDAsNDguMDBzLTQ4LjAwLTIxLjUzNi00OC4wMC00OC4wMGwwLjAwLTI0MC4zMzYgCgkJYy0xOS4zMjgtMTQuNjI0LTMyLjAwLTM3LjU2OC0zMi4wMC02My42NjRzIDEyLjY3Mi00OS4wMjQsIDMyLjAwLTYzLjYzMkwgMjA4LjAwLDE2LjAwIGMwLjAwLTI2LjQ2NCwgMjEuNTM2LTQ4LjAwLCA0OC4wMC00OC4wMHMgNDguMDAsMjEuNTM2LCA0OC4wMCw0OC4wMGwwLjAwLDQ4LjM2OCBjIDE5LjMxMiwxNC41OTIsIDMyLjAwLDM3LjUzNiwgMzIuMDAsNjMuNjMyCgkJUyAzMjMuMzEyLDE3Ny4wMjQsIDMwNC4wMCwxOTEuNjY0eiBNIDI0MC4wMCw0MzIuMDBjMC4wMCw4Ljg0OCwgNy4xNTIsMTYuMDAsIDE2LjAwLDE2LjAwYyA4Ljg0OCwwLjAwLCAxNi4wMC03LjE1MiwgMTYuMDAtMTYuMDBsMC4wMC0yMjUuNjAgYy01LjE4NCwxLjAyNC0xMC41MjgsMS42MC0xNi4wMCwxLjYwCgkJYy01LjQ4OCwwLjAwLTEwLjgzMi0wLjU2LTE2LjAwLTEuNjBMIDI0MC4wMCw0MzIuMDAgeiBNIDI3Mi4wMCwxNi4wMGMwLjAwLTguODQ4LTcuMTUyLTE2LjAwLTE2LjAwLTE2LjAwYy04Ljg0OCwwLjAwLTE2LjAwLDcuMTUyLTE2LjAwLDE2LjAwbDAuMDAsMzMuNjMyIEMgMjQ1LjE2OCw0OC41NiwgMjUwLjUxMiw0OC4wMCwgMjU2LjAwLDQ4LjAwCgkJYyA1LjQ3MiwwLjAwLCAxMC44MTYsMC41NiwgMTYuMDAsMS42MzJMIDI3Mi4wMCwxNi4wMCB6IE0gMzAxLjg0LDExNC41NmMtMC4yNTYtMC44NDgtMC40OTYtMS42OC0wLjc4NC0yLjUyOGMtMS41MzYtNC4yMjQtMy40NzItOC4yMjQtNi4wNjQtMTEuNzc2CgkJYy0wLjA2NC0wLjA5Ni0wLjE2LTAuMTYtMC4yMjQtMC4yNTZjLTIuNzg0LTMuODA4LTYuMDk2LTcuMTg0LTkuODQtMTAuMDMyYy0wLjA2NC0wLjA2NC0wLjEyOC0wLjA5Ni0wLjE2LTAuMTI4CgkJYy0zLjg3Mi0yLjkxMi04LjE2LTUuMjQ4LTEyLjc4NC02Ljg4QyAyNjYuOTc2LDgxLjE1MiwgMjYxLjYzMiw4MC4wMCwgMjU2LjAwLDgwLjAwYy01LjY0OCwwLjAwLTEwLjk3NiwxLjE1Mi0xNi4wMCwyLjk3NgoJCWMtNC42MjQsMS42MzItOC45MjgsMy45NjgtMTIuNzg0LDYuODhjLTAuMDQ4LDAuMDMyLTAuMDk2LDAuMDY0LTAuMTYsMC4xMjhjLTMuNzYsMi44NDgtNy4wNzIsNi4yMjQtOS44NTYsMTAuMDMyCgkJYy0wLjA2NCwwLjA5Ni0wLjE2LDAuMTYtMC4yMjQsMC4yNTZjLTIuNTc2LDMuNTY4LTQuNTI4LDcuNTY4LTYuMDQ4LDExLjc3NmMtMC4zMDQsMC44NDgtMC41MjgsMS42OC0wLjc4NCwyLjUyOAoJCUMgMjA4Ljg4LDExOC44NDgsIDIwOC4wMCwxMjMuMzEyLCAyMDguMDAsMTI4LjAwYzAuMDAsNC43MiwgMC44OCw5LjE4NCwgMi4xNiwxMy40NzJjIDAuMjU2LDAuODQ4LCAwLjQ4LDEuNjgsIDAuNzg0LDIuNDk2CgkJYyAxLjUyLDQuMjI0LCAzLjQ3Miw4LjIyNCwgNi4wNDgsMTEuODA4YyAwLjA2NCwwLjA5NiwgMC4xNiwwLjE2LCAwLjIyNCwwLjI1NmMgMi43ODQsMy43NzYsIDYuMDk2LDcuMTg0LCA5Ljg1NiwxMC4wMzIKCQljIDAuMDY0LDAuMDMyLCAwLjExMiwwLjA5NiwgMC4xNiwwLjEyOGMgMy44NTYsMi44OCwgOC4xNiw1LjIxNiwgMTIuNzg0LDYuODhDIDI0NS4wMjQsMTc0Ljg0OCwgMjUwLjM1MiwxNzYuMDAsIDI1Ni4wMCwxNzYuMDBjIDUuNjMyLDAuMDAsIDEwLjk3Ni0xLjE1MiwgMTYuMDAtMi45NDQKCQljIDQuNjI0LTEuNjY0LCA4LjkxMi00LjAwLCAxMi43ODQtNi44OGMgMC4wMzItMC4wMzIsIDAuMDk2LTAuMDk2LCAwLjE2LTAuMTI4YyAzLjc0NC0yLjg0OCwgNy4wNTYtNi4yNTYsIDkuODQtMTAuMDMyCgkJYyAwLjA2NC0wLjA5NiwgMC4xNi0wLjE2LCAwLjIyNC0wLjI1NmMgMi41OTItMy42MCwgNC41MjgtNy42MCwgNi4wNjQtMTEuODA4YyAwLjI4OC0wLjgxNiwgMC41MjgtMS42NjQsIDAuNzg0LTIuNDk2CgkJQyAzMDMuMTIsMTM3LjE4NCwgMzA0LjAwLDEzMi43MiwgMzA0LjAwLDEyOC4wMEMgMzA0LjAwLDEyMy4zMTIsIDMwMy4xMiwxMTguODQ4LCAzMDEuODQsMTE0LjU2eiIgZGF0YS10YWdzPSJwYXJhbXMiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hlMDIwOyIgZD0iTSA1MDIuNjQsMzEwLjYyNGwtMTYwLjAwLDE2MC4wMEMgMzM0LjcwNCw0NzguNTYsIDMyMy4yMCw0ODEuNzQ0LCAzMTIuMzA0LDQ3OS4wNTYKCQljLTUuNzQ0LTEuNDA4LTEwLjg4LTQuMzY4LTE0Ljk0NC04LjQzMmMtMy42MzItMy42MzItNi4zNjgtOC4xMjgtNy45MzYtMTMuMTUyYy03LjI0OC0yMy41MDQtMTkuNzc2LTQzLjkzNi0zOC4zMi02Mi40NjQKCQlDIDIyNi4zMzYsMzcwLjI1NiwgMTk0LjA4LDM1MS41MDQsIDE1OS45NTIsMzMxLjY4Yy0zNi4yMjQtMjAuOTkyLTczLjY0OC00Mi43NTItMTA0LjMyLTczLjQwOGMtMjYuMDY0LTI2LjA5Ni00My44MDgtNTUuMTItNTQuMjA4LTg4LjgxNgoJCWMtMy41MDQtMTEuMzc2LTAuNDQ4LTIzLjY4LCA3LjkzNi0zMi4wOTZsIDE2MC4wMC0xNjAuMDBjIDcuOTM2LTcuOTM2LCAxOS40NC0xMS4xMiwgMzAuMzM2LTguNDMyYyA1Ljc0NCwxLjQ0LCAxMC44OCw0LjM2OCwgMTQuOTQ0LDguNDMyCgkJYyAzLjYzMiwzLjYzMiwgNi4zNjgsOC4xMjgsIDcuOTM2LDEzLjE4NGMgNy4yNjQsMjMuNTA0LCAxOS43OTIsNDMuOTM2LCAzOC4zNTIsNjIuNDY0YyAyNC43NTIsMjQuNzUyLCA1Ni45OTIsNDMuNDcyLCA5MS4xNTIsNjMuMjgKCQljIDM2LjE5MiwyMS4wMjQsIDczLjYzMiw0Mi43ODQsIDEwNC4yODgsNzMuNDRjIDI2LjA2NCwyNi4wNjQsIDQzLjgwOCw1NS4xMiwgNTQuMjI0LDg4LjgxNkMgNTE0LjA4LDI4OS45MDQsIDUxMS4wMDgsMzAyLjI1NiwgNTAyLjY0LDMxMC42MjR6IE0gMTkyLjAwLDAuMDAKCQlDIDEzOS4wMDgsNTIuOTkyLCA4NC45OTIsMTA3LjAyNCwgMzIuMDAsMTYwLjAwYyA0NS40NzIsMTQ3LjIxNiwgMjQyLjU2LDE0MC43ODQsIDI4OC4wMCwyODguMDBjIDUyLjk5Mi01Mi45NzYsIDEwNy4wMjQtMTA3LjAwOCwgMTYwLjAzMi0xNjAuMDAKCQlDIDQzNC41NDQsMTQwLjgxNiwgMjM3LjQ1NiwxNDcuMjE2LCAxOTIuMDAsMC4wMHpNIDMxMi45OTIsMjQxLjYwYy01LjIxNiw0LjM2OC0xMC40NjQsNy4zNDQtMTUuNzQ0LDguODE2CgkJYy01LjI0OCwxLjQ3Mi0xMC40OTYsMi4wNjQtMTUuODA4LDEuNjhjLTUuMjQ4LTAuNDAtMTAuNjI0LTEuNjAtMTYuMDAtMy42NjRjLTUuMzc2LTIuMDk2LTEwLjc4NC00LjM2OC0xNi4yMjQtNy4wMDgKCQljLTguNTkyLDkuODcyLTE3LjE4NCwxOS42MzItMjUuNzc2LDI4LjY4OGMgMy44NzIsMy41MDQsIDcuNjMyLDUuMjgsIDExLjI0OCw1LjQwOGMgMy42MzIsMC4xNiwgNy4xMi0wLjIyNCwgMTAuNDMyLTEuMDU2CgkJYyAzLjM3Ni0wLjg0OCwgNi40NjQtMS41NjgsIDkuMzEyLTIuMTI4YyAyLjg4LTAuNTYsIDUuMzc2LDAuMDY0LCA3LjU2OCwxLjkwNGMgMi4zMiwyLjAwLCAzLjYwLDQuNTkyLCAzLjc3Niw3LjcxMgoJCWMgMC4xNiwzLjE1Mi0xLjAyNCw2LjIyNC0zLjY2NCw5LjIxNmMtMy4zNzYsMy44NzItNy40NCw2LjIyNC0xMi4zMiw3LjA4OGMtNC44MTYsMC44NDgtOS43NDQsMC43ODQtMTQuODgtMC4zMzYKCQljLTUuMDU2LTEuMTUyLTkuODcyLTMuMDU2LTE0LjQzMi01Ljc0NHMtOC4yMjQtNS40NC0xMC45NDQtOC4xMjhjLTEuMDQsMC45OTItMi4wOCwxLjk2OC0zLjEyLDIuOTQ0CgkJYy0xLjE1MiwxLjA1Ni0yLjU5MiwxLjYzMi00LjMyLDEuNjBjLTEuNzQ0LDAuMDAtMy4xODQtMC43NTItNC4zNjgtMi4xMjhjLTEuMTUyLTEuMzQ0LTEuNjgtMi45MTItMS40NzItNC41NgoJCWMgMC4xNi0xLjcxMiwgMC44NDgtMy4wMjQsIDIuMDMyLTQuMDMyYyAxLjA0LTAuODgsIDIuMDgtMS43NDQsIDMuMTItMi42NTZjLTQuMDk2LTQuOTQ0LTcuNDcyLTEwLjQwLTEwLjEyOC0xNi4xNgoJCWMtMi42ODgtNS43NzYtNC4yODgtMTEuNTA0LTQuODgtMTcuMDU2Yy0wLjYyNC01LjYwLTAuMDMyLTEwLjcyLCAxLjY4LTE1LjQ3MmMgMS43MTItNC43ODQsIDQuODgtOC44NDgsIDkuNTA0LTEyLjY4OAoJCWMgNy41MzYtNi4yNTYsIDE2LjQwLTguOTEyLCAyNi42ODgtOC4zMmMgMTAuMjU2LDAuNjI0LCAyMS4zMTIsMy42OCwgMzMuMjAsMTAuMDY0YyA5LjQ0LTEwLjkxMiwgMTguOTEyLTIxLjc0NCwgMjguMzY4LTMxLjgwOAoJCWMtNC4wMC0zLjM3Ni03LjUwNC01LjMxMi0xMC41OTItNS45MzZjLTMuMDg4LTAuNjU2LTUuODQtMC41OTItOC4zMzYsMC4xNmMtMi40OTYsMC43ODQtNC44MTYsMS45MDQtNi45NDQsMy4zNDQKCQljLTIuMTI4LDEuNDcyLTQuMjI0LDIuNzItNi4zMiwzLjc0NGMtMi4wNjQsMS4wMjQtNC4xOTIsMS42MC02LjM2OCwxLjYzMnMtNC40OTYtMS4wMjQtNy4wNTYtMy4yMTYKCQljLTIuNjI0LTIuMjg4LTMuOTM2LTQuOTQ0LTMuOTM2LTcuOTM2YzAuMDAtMi45NzYsIDEuMzc2LTYuMDAsIDQuMDY0LTkuMDU2YyAyLjcyLTMuMDU2LCA2LjI1Ni01LjYzMiwgMTAuNTI4LTcuNjY0CgkJcyA5LjEwNC0zLjMxMiwgMTQuNDE2LTMuNjY0YyA1LjMxMi0wLjM2OCwgMTAuOTEyLDAuNDMyLCAxNi44MTYsMi42MjRjIDUuOTM2LDIuMTYsIDExLjgwOCw2LjA2NCwgMTcuNjAsMTEuODcyCgkJYyAyLjc4NC0yLjcyLCA1LjYwLTUuMzEyLCA4LjQwLTcuODA4YyAxLjE4NC0xLjAyNCwgMi42MjQtMS41MzYsIDQuMzY4LTEuNDA4YyAxLjY4LDAuMDY0LCAzLjE1MiwwLjg0OCwgNC4zMiwyLjI1NgoJCWMgMS4xODQsMS40NCwgMS42OCwzLjAyNCwgMS41MDQsNC42ODhjLTAuMTYsMS42OC0wLjg0OCwyLjk3Ni0yLjAwLDMuOTA0Yy0yLjgxNiwyLjI1Ni01LjYzMiw0LjYyNC04LjQzMiw3LjEyCgkJYyA0Ljc4NCw1Ljg3MiwgOC42MjQsMTIuMDY0LCAxMS40NzIsMTguMTkyYyAyLjg0OCw2LjE2LCA0LjUyOCwxMi4wOTYsIDUuMDg4LDE3LjYwYyAwLjU2LDUuNTM2LTAuMDk2LDEwLjUyOC0xLjkwNCwxNS4wNTYKCQlDIDMyMC43MzYsMjMzLjg3MiwgMzE3LjU1MiwyMzcuODA4LCAzMTIuOTkyLDI0MS42MHogTSAyMjMuNTM2LDIzMC43NTJjLTQuNTI4LTAuMTkyLTguNDgsMS4zMTItMTEuOTM2LDQuNjU2CgkJYy0xLjQ3MiwxLjQwOC0yLjQ5NiwzLjEyLTMuMTIsNS4xNTJjLTAuNjU2LDIuMDMyLTAuODgsNC4yNTYtMC42MjQsNi42ODhjIDAuMjI0LDIuNDAsIDAuOTQ0LDQuOTEyLCAyLjE5Miw3LjQ0CgkJYyAxLjE4NCwyLjUyOCwgMi45NDQsNS4wNTYsIDUuMTg0LDcuNTA0YyA4LjExMi04LjA2NCwgMTYuMjA4LTE2LjkxMiwgMjQuMzItMjYuMDY0QyAyMzMuNDA4LDIzMi43NTIsIDIyOC4wNjQsMjMwLjk0NCwgMjIzLjUzNiwyMzAuNzUyegoJCSBNIDI5OS4wMDgsMTk4LjcyYy0xLjQ0LTIuNjU2LTMuMDg4LTUuMDI0LTUuMDI0LTcuMDg4Yy04Ljk3Niw5LjA1Ni0xNy45MzYsMTkuMDA4LTI2Ljg4LDI5LjIxNmMgMi4yODgsMS4wMjQsIDQuNjg4LDIuMDk2LCA3LjI4LDMuMTg0CgkJcyA1LjE4NCwxLjgwOCwgNy43NzYsMi4yNTZjIDIuNjU2LDAuNDAsIDUuMjgsMC4yODgsIDcuOTA0LTAuMzM2YyAyLjU5Mi0wLjY1NiwgNS4wNTYtMi4wNjQsIDcuMzQ0LTQuMjg4CgkJYyAyLjI1Ni0yLjI1NiwgMy42OC00LjU5MiwgNC4yNTYtNy4xMmMgMC42MjQtMi41NiwgMC42NTYtNS4xNTIsIDAuMjI0LTcuODA4QyAzMDEuNDI0LDIwNC4wNjQsIDMwMC40OCwyMDEuNDA4LCAyOTkuMDA4LDE5OC43MnpNIDIzNS40NzIsMTI1LjEyIEMgMjM4LjYyNCwxMjcuNjY0IDI0My4yNjQsMTI3LjUzNiAyNDYuMTYsMTI0LjU5MiBDIDI0OS4yOTYsMTIxLjQ3MiAyNDkuMjk2LDExNi4zNjggMjQ2LjE2LDExMy4yNDggQyAyNDUuOTA0LDExMi45OTIgMjQ1LjYzMiwxMTIuODE2IDI0NS4zNDQsMTEyLjU5MiBMIDI0NS4zNzYsMTEyLjU2IEMgMjM1LjI0OCwxMDQuODY0IDIyNi45MjgsOTcuOTM2IDIxNy45NTIsODguOTYgQyAyMDkuODQsODAuODY0IDIwMi41MTIsNzIuMzM2IDE5Ni4xNzYsNjMuNjggTCAxODUuOTUyLDQ5LjY4IEMgMTg1LjYzMiw0OS4xMDQgMTg1LjI0OCw0OC41NzYgMTg0Ljc2OCw0OC4wOCBDIDE4MS42MzIsNDQuOTYgMTc2LjUyOCw0NC45NiAxNzMuNDA4LDQ4LjA4IEMgMTcwLjY4OCw1MC44MCAxNzAuMzUyLDU0Ljk5MiAxNzIuMzUyLDU4LjExMiBMIDE3Mi4zMiw1OC4xNDQgTCAxODMuMjY0LDczLjA4OCBDIDE5MC4wOTYsODIuNDMyIDE5Ny45NTIsOTEuNTg0IDIwNi42NCwxMDAuMjcyIEMgMjE1LjY4LDEwOS4zNDQgMjI1LjQ0LDExNy40NCAyMzUuNDQsMTI1LjEyIEwgMjM1LjQ3MiwxMjUuMTIgWk0gMjk0LjA0OCwzNTYuNTYgQyAzMDIuMTQ0LDM2NC42NTYgMzA5LjQ1NiwzNzMuMTUyIDMxNS44MDgsMzgxLjg1NiBMIDMyNi40MzIsMzk2LjQxNiBDIDMyNi44MTYsMzk3LjEwNCAzMjcuMjQ4LDM5Ny43OTIgMzI3Ljg0LDM5OC4zODQgQyAzMzAuOTkyLDQwMS41MzYgMzM2LjA5Niw0MDEuNTM2IDMzOS4yNDgsMzk4LjM4NCBDIDM0Mi4yNCwzOTUuMzc2IDM0Mi4zNjgsMzkwLjYyNCAzMzkuNjQ4LDM4Ny40NCBMIDMzOS42OCwzODcuNDA4IEwgMzI4LjczNiwzNzIuNDAgQyAzMjEuODg4LDM2My4wNTYgMzE0LjA0OCwzNTMuOTM2IDMwNS4zNiwzNDUuMjQ4IEMgMjk2LjMyLDMzNi4yMDggMjg2LjU3NiwzMjguMDggMjc2LjU3NiwzMjAuNDAgTCAyNzYuNTEyLDMyMC40MzIgQyAyNzMuMzI4LDMxNy41MDQgMjY4LjM4NCwzMTcuNTY4IDI2NS4zMjgsMzIwLjY1NiBDIDI2Mi4xNzYsMzIzLjgwOCAyNjIuMTc2LDMyOC45NDQgMjY1LjMyOCwzMzIuMDk2IEMgMjY1Ljg4OCwzMzIuNjg4IDI2Ni41NDQsMzMzLjEwNCAyNjcuMjAsMzMzLjQ3MiBDIDI3Ni42MDgsMzQwLjY1NiAyODUuNjgsMzQ4LjE5MiAyOTQuMDQ4LDM1Ni41NiBaIiBkYXRhLXRhZ3M9ImJhbmtub3RlIiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZTAyMTsiIGQ9Ik0gMjU2LjAwLDQ4MC4wMEMgMTQ4LjA5Niw0ODAuMDAsIDMyLjAwLDQ0Ny40NzIsIDMyLjAwLDM3Ni4wMGwwLjAwLTMwNC4wMCBDIDMyLjAwLDAuNTYsIDE0OC4wOTYtMzIuMDAsIDI1Ni4wMC0zMi4wMGMgMTA3Ljg4OCwwLjAwLCAyMjQuMDAsMzIuNTYsIDIyNC4wMCwxMDQuMDBsMC4wMCwzMDQuMDAgCgkJQyA0ODAuMDAsNDQ3LjQ3MiwgMzYzLjg3Miw0ODAuMDAsIDI1Ni4wMCw0ODAuMDB6IE0gNDQ4LjAwLDcyLjAwYzAuMDAtMzkuNzQ0LTg1Ljk2OC03Mi4wMC0xOTIuMDAtNzIuMDBjLTEwNi4wNDgsMC4wMC0xOTIuMDAsMzIuMjU2LTE5Mi4wMCw3Mi4wMGwwLjAwLDU5Ljc3NiBDIDk3LjA1Niw5Ny43MTIsIDE3Ni44MCw4MC4wMCwgMjU2LjAwLDgwLjAwCgkJYyA3OS4yMCwwLjAwLCAxNTguOTQ0LDE3LjcxMiwgMTkyLjAwLDUxLjc3NkwgNDQ4LjAwLDcyLjAwIHogTSA0NDguMDAsMTY4LjAwbC0wLjA2NCwwLjAwIGMwLjAwLTAuMTYsIDAuMDY0LTAuMzM2LCAwLjA2NC0wLjQ5NkMgNDQ4LjAwLDEyOC4wMCwgMzYyLjAzMiw5Ni4wMCwgMjU2LjAwLDk2LjAwYy0xMDYuMDMyLDAuMDAtMTkyLjAwLDMyLjAwLTE5Mi4wMCw3MS41MDQKCQljMC4wMCwwLjE2LCAwLjA2NCwwLjMzNiwgMC4wNjQsMC40OTZMIDY0LjAwLDE2OC4wMCBsMC4wMCw1OS43NzYgQyA5Ny4wNTYsMTkzLjcxMiwgMTc2LjgwLDE3Ni4wMCwgMjU2LjAwLDE3Ni4wMGMgNzkuMjAsMC4wMCwgMTU4Ljk0NCwxNy43MTIsIDE5Mi4wMCw1MS43NzZMIDQ0OC4wMCwxNjguMDAgeiBNIDQ0OC4wMCwyNjQuMDBsLTAuMDY0LDAuMDAgCgkJYzAuMDAtMC4xNiwgMC4wNjQtMC4zMzYsIDAuMDY0LTAuNDk2QyA0NDguMDAsMjI0LjAwLCAzNjIuMDMyLDE5Mi4wMCwgMjU2LjAwLDE5Mi4wMGMtMTA2LjAzMiwwLjAwLTE5Mi4wMCwzMi4wMC0xOTIuMDAsNzEuNTA0YzAuMDAsMC4xNiwgMC4wNjQsMC4zMzYsIDAuMDY0LDAuNDk2TCA2NC4wMCwyNjQuMDAgbDAuMDAsNTQuOTc2IAoJCUMgMTA1LjkzNiwyODcuMDI0LCAxODIuODAsMjcyLjAwLCAyNTYuMDAsMjcyLjAwYyA3My4yMCwwLjAwLCAxNTAuMDY0LDE1LjAyNCwgMTkyLjAwLDQ2Ljk3NkwgNDQ4LjAwLDI2NC4wMCB6IE0gMjU2LjAwLDMwNC4wMEMgMTQ5Ljk1MiwzMDQuMDAsIDY0LjAwLDMzNi4yNTYsIDY0LjAwLDM3Ni4wMEMgNjQuMDAsNDE1Ljc3NiwgMTQ5Ljk1Miw0NDguMDAsIDI1Ni4wMCw0NDguMDAKCQljIDEwNi4wMzIsMC4wMCwgMTkyLjAwLTMyLjIyNCwgMTkyLjAwLTcyLjAwQyA0NDguMDAsMzM2LjI1NiwgMzYyLjAzMiwzMDQuMDAsIDI1Ni4wMCwzMDQuMDB6TSAzODQuMDAsNjQuMDBBMTYuMDAsMTYuMDAgMTgwLjAwIDEsMCA0MTYuMDAsNjRBMTYuMDAsMTYuMDAgMTgwLjAwIDEsMCAzODQuMDAsNjR6TSAzODQuMDAsMTYwLjAwQTE2LjAwLDE2LjAwIDE4MC4wMCAxLDAgNDE2LjAwLDE2MEExNi4wMCwxNi4wMCAxODAuMDAgMSwwIDM4NC4wMCwxNjB6TSAzODQuMDAsMjU2LjAwQTE2LjAwLDE2LjAwIDE4MC4wMCAxLDAgNDE2LjAwLDI1NkExNi4wMCwxNi4wMCAxODAuMDAgMSwwIDM4NC4wMCwyNTZ6IiBkYXRhLXRhZ3M9ImRhdGEiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hlMDIyOyIgZD0iTSA1MDAuNTc2LDQ3Mi40OTZDIDQ5NC43NjgsNDc3LjM3NiwgNDg3LjQ4OCw0ODAuMDAsIDQ4MC4wMTYsNDgwLjAwYy0xLjg0LDAuMDAtMy43MTItMC4xNi01LjU2OC0wLjQ5NmwtMjcyLjAzMi00OC4wMAoJQyAxODcuMTIsNDI4LjgxNiwgMTc1Ljk4NCw0MTUuNTM2LCAxNzUuOTg0LDQwMC4wMGwwLjAwLTMyLjAwIGwwLjAwLTE2LjAwIGwwLjAwLTIyNi43MiBDIDE1OS43NDQsMTM3LjA1NiwgMTM4LjY3MiwxNDQuMDAsIDExNS4yOCwxNDQuMDBjLTEzLjYwLDAuMDAtMjcuMjAtMi4yNTYtNDAuNDY0LTYuNjU2CglDIDQ0LjQ0OCwxMjcuMjE2LCAyMC4wOTYsMTA2LjkxMiwgOC4wMCw4MS42MGMtOS4zNDQtMTkuNTY4LTEwLjU0NC00MC44NDgtMy40MjQtNTkuOTM2QyAxNi43NTItMTAuOTQ0LCA1MS4zNDQtMzIuMDAsIDkyLjcwNC0zMi4wMAoJYyAxMy42MCwwLjAwLCAyNy4yMCwyLjIyNCwgNDAuNDQ4LDYuNjU2YyAzMC4zNTIsMTAuMDk2LCA1NC43MDQsMzAuNDAsIDY2LjgwLDU1LjY4YyA1LjIwLDEwLjkxMiwgNy42MzIsMjIuMzM2LCA3LjcyOCwzMy42NjRsIDAuMjg4LDAuMDAgTCAyMDcuOTY4LDMyMC4wMCAKCWMgMS44NCwwLjAwLCAzLjcxMiwwLjE2LCA1LjU2OCwwLjQ2NGwgMjY2LjQ4LDQ3LjAyNEwgNDgwLjAxNiwxNzMuMjggQyA0NjMuNzYsMTg1LjA1NiwgNDQyLjcwNCwxOTIuMDAsIDQxOS4yOTYsMTkyLjAwYy0xMy42MCwwLjAwLTI3LjIxNi0yLjI1Ni00MC40NjQtNi42NTYKCWMtMzAuMzY4LTEwLjEyOC01NC43Mi0zMC40MzItNjYuNzg0LTU1Ljc0NGMtOS4zNDQtMTkuNTY4LTEwLjU2LTQwLjg0OC0zLjQ0LTU5LjkzNkMgMzIwLjgwLDM3LjA1NiwgMzU1LjM2LDE2LjAwLCAzOTYuNzM2LDE2LjAwCgljIDEzLjYwLDAuMDAsIDI3LjIxNiwyLjIyNCwgNDAuNDY0LDYuNjU2YyAzMC4zMzYsMTAuMDk2LCA1NC42ODgsMzAuNDAsIDY2Ljc4NCw1NS42OGMgNS4yMTYsMTAuOTEyLCA3LjYzMiwyMi4zMzYsIDcuNzQ0LDMzLjY2NGwgMC4yODgsMC4wMCBMIDUxMi4wMTYsNDAwLjAwIEwgNTEyLjAxNiw0MTYuMDAgTCA1MTIuMDE2LDQ0OC4wMCAKCUMgNTEyLjAxNiw0NTcuNDQsIDUwNy44MjQsNDY2LjQzMiwgNTAwLjU3Niw0NzIuNDk2eiBNIDEyMy4wMDgsNC45OTJjLTM4LjMzNi0xMi43ODQtNzcuOTY4LTAuMjg4LTg4LjQ2NCwyNy44NGMtMTAuNTI4LDI4LjE2LCAxMi4wMTYsNjEuMzQ0LCA1MC4zMzYsNzQuMTI4CgljIDM4LjMzNiwxMi43ODQsIDc3Ljk2OCwwLjMyLCA4OC40NjQtMjcuODRDIDE4My44ODgsNTAuOTc2LCAxNjEuMzQ0LDE3Ljc3NiwgMTIzLjAwOCw0Ljk5MnogTSA0MjYuNDQ4LDUyLjk5MmMtMzguMzY4LTEyLjc4NC03OC4wMC0wLjI4OC04OC40OTYsMjcuODQKCWMtMTAuNTI4LDI4LjE2LCAxMi4wMzIsNjEuMzQ0LCA1MC4zMzYsNzQuMTI4YyAzOC4zNjgsMTIuNzg0LCA3OC4wMCwwLjMyLCA4OC40OTYtMjcuODRDIDQ4Ny4zMjgsOTguOTc2LCA0NjQuODAsNjUuNzc2LCA0MjYuNDQ4LDUyLjk5MnogTSA0NzkuMzYsNDAwLjAwCglMIDIwNy4zMjgsMzUyLjAwTCAyMDcuMzI4LDM2OC4wMCBMIDIwNy4zMjgsNDAwLjAwIEwgNDc5LjM2LDQ0OC4wMGwwLjAwLTMyLjAwIEwgNDc5LjM2LDQwMC4wMCB6IiBkYXRhLXRhZ3M9Im11c2ljIiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZTAyMzsiIGQ9Ik0gNDAwLjAwLDQ4MC4wMGMtMzIuODQ4LDAuMDAtNTguNjU2LTIyLjU2LTc3LjE4NC01Ny4zNzZsLTAuMzM2LDAuMTkyQyAyOTUuNTY4LDM3MC4xMjgsIDI1NS41MDQsMzM2LjAwLCAyMTEuNjE2LDMzNi4wMGwtMTAuNjA4LDAuMDAgCglMIDEzMC40OTYsMzM2LjAwIEwgNjQuMDAsMzM2LjAwIGMtMzUuODg4LDAuMDAtNjQuMDAtMzUuMTUyLTY0LjAwLTgwLjAwYzAuMDAtNDQuODgsIDI4LjExMi04MC4wMCwgNjQuMDAtODAuMDBjIDE3LjY0OC0wLjA2NCwgMzEuOTItMTQuMzM2LCAzMS45Mi0zMi4wMGwwLjAwLTE0NC4wMCBjMC4wMC0xNy42OCwgMTQuMzM2LTMyLjAwLCAzMi4wMC0zMi4wMGwgNjQuMDAsMC4wMCBjIDE3LjY2NCwwLjAwLCAzMi4wMCwxNC4zMiwgMzIuMDAsMzIuMDAKCWwwLjAwLDE2LjAwIGMwLjAwLDE2LjAwLTE2LjAwLDIzLjE1Mi0xNi4wMCwzMi4wMGwwLjAwLDExMi4wMCBjMC4wMCwwLjM2OCwgMC4yNTYsMC42MjQsIDAuMjg4LDAuOTkyYyAwLjE2LDIuMjg4LCAwLjc4NCw0LjQwLCAxLjc5Miw2LjMyYyAwLjI4OCwwLjUyOCwgMC41OTIsMC45NDQsIDAuOTQ0LDEuNDA4CgljIDEuMjgsMS45MDQsIDIuODk2LDMuNDcyLCA0Ljg2NCw0LjY4OGMgMC4wOTYsMC4wNjQsIDAuMTI4LDAuMTYsIDAuMjI0LDAuMjI0YyAwLjA2NCwwLjAwLCAwLjExMiwwLjA2NCwgMC4xNzYsMC4wNjQKCWMgMS4yOCwwLjcyLCAyLjgxNiwwLjg4LCA0LjI1NiwxLjI4YyA0MC4zODQtNC4yODgsIDc2Ljk0NC0zNi44OCwgMTAyLjAzMi04NS45NjhsIDAuNDAsMC4xOTJDIDM0MS40NCw1NC40OTYsIDM2Ny4xODQsMzIuMDAsIDQwMC4wMCwzMi4wMAoJYyA3My41MzYsMC4wMCwgMTEyLjAwLDExMi42ODgsIDExMi4wMCwyMjQuMDBTIDQ3My41MzYsNDgwLjAwLCA0MDAuMDAsNDgwLjAweiBNIDMyMC4wMCwyNTYuMDBjMC4wMCwxNi41OTIsIDAuOTc2LDMyLjYyNCwgMi42MjQsNDguMDBMIDM2OC4wMCwzMDQuMDAgYyAxNy42NjQsMC4wMCwgMzIuMDAtMjEuNTA0LCAzMi4wMC00OC4wMGMwLjAwLTI2LjUyOC0xNC4zMzYtNDguMDAtMzIuMDAtNDguMDBsLTQ1LjM3NiwwLjAwIAoJQyAzMjAuOTc2LDIyMy4zNzYsIDMyMC4wMCwyMzkuMzc2LCAzMjAuMDAsMjU2LjAweiBNIDMyLjAwLDI1Ni4wMGMwLjAwLDI2LjQ5NiwgMTQuMzM2LDQ4LjAwLCAzMi4wMCw0OC4wMGwgNjYuNDk2LDAuMDAgTCAxNDQuMDAsMzA0LjAwIGwgMzIuMjI0LDAuMDAgQyAxNjYuMzA0LDI5Mi4zMzYsIDE2MC4wMCwyNzUuNDA4LCAxNjAuMDAsMjU2LjAwCgljMC4wMC0xOS40NCwgNi4zMDQtMzYuMzY4LCAxNi4yMjQtNDguMDBMIDE0NC4wMCwyMDguMDAgTCA2NC4wMCwyMDguMDAgQyA0Ni4zMzYsMjA4LjAwLCAzMi4wMCwyMjkuNDcyLCAzMi4wMCwyNTYuMDB6IE0gMTkxLjkyLDAuMDBsLTY0LjAwLDAuMDAgbDAuMDAsMTQ0LjAwIGMwLjAwLDExLjY2NC0zLjEyLDIyLjU2LTguNTkyLDMyLjAwbCAxMS4xNjgsMC4wMCBsMC4wMC0wLjE5MiBsIDQ4LjEyOCwwLjAwIAoJYy0xLjcxMi00Ljk3Ni0yLjcwNC0xMC4yNTYtMi43MDQtMTUuODA4bDAuMDAtMTEyLjAwIGMwLjAwLTE1LjQwOCwgOC42MDgtMjUuNjY0LCAxMy43NDQtMzEuNzc2YyAwLjcwNC0wLjg0OCwgMS41MzYtMS43MTIsIDIuMjU2LTIuNjU2TCAxOTEuOTIsMC4wMCB6IE0gMjExLjYxNiwyMDcuODA4CglMIDIwOC4wMCwyMDcuODA4IEwgMjA4LjAwLDIwOC4wMCBjLTE3LjY2NCwwLjAwLTMyLjAwLDIxLjQ3Mi0zMi4wMCw0OC4wMGMwLjAwLDI2LjQ5NiwgMTQuMzM2LDQ4LjAwLCAzMi4wMCw0OC4wMGwgMy42MTYsMC4wMCBjIDMwLjE3NiwwLjAwLCA1OC40MzIsMTEuODcyLCA4My4yOTYsMzIuMjg4QyAyOTAuMzM2LDMxMC41MjgsIDI4OC4wMCwyODMuMjQ4LCAyODguMDAsMjU2LjAwCgljMC4wMC0yNy4zNDQsIDIuMzM2LTU0LjcyLCA2Ljk0NC04MC40OTZDIDI3MC4wNjQsMTk1LjkzNiwgMjQxLjc5MiwyMDcuODA4LCAyMTEuNjE2LDIwNy44MDh6IE0gNDAwLjAwLDY0LjAwYy0zMi4yODgsMC4wMC02MC4wMCw0NS45MzYtNzIuNjU2LDExMi4wMEwgMzY4LjAwLDE3Ni4wMCAKCWMgMzUuODcyLDAuMDAsIDY0LjAwLDM1LjEyLCA2NC4wMCw4MC4wMGMwLjAwLDQ0Ljg0OC0yOC4xMjgsODAuMDAtNjQuMDAsODAuMDBsLTQwLjY1NiwwLjAwIEMgMzQwLjAwLDQwMi4wMzIsIDM2Ny43MTIsNDQ4LjAwLCA0MDAuMDAsNDQ4LjAwYyA0NC4xOTIsMC4wMCwgODAuMDAtODUuOTY4LCA4MC4wMC0xOTIuMDBTIDQ0NC4xOTIsNjQuMDAsIDQwMC4wMCw2NC4wMHoiIGRhdGEtdGFncz0ibWVnYXBob25lIiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZTAyNDsiIGQ9Ik0gNTEyLjAwLDM1Mi4wMGMwLjAwLDIyLjQ5Ni0xNS4zMTIsNDEuNzI4LTM3LjIxNiw0Ni43ODRMIDI2Ni41NzYsNDQ2LjgzMkMgMjYzLjA4OCw0NDcuNjE2LCAyNTkuNTM2LDQ0OC4wMCwgMjU2LjAwLDQ0OC4wMAoJCWMtMy41MzYsMC4wMC03LjA4OC0wLjM4NC0xMC44MC0xLjIxNmwtMjA3Ljk4NC00OC4wMEMgMTUuMjk2LDM5My43MjgsMC4wMCwzNzQuNDk2LDAuMDAsMzUyLjAwcyAxNS4zMTItNDEuNzI4LCAzNy4yMC00Ni43ODRMIDgwLjAwLDI5NS4zNDRMIDgwLjAwLDE2MC4wMCBjMC4wMC00Mi40NjQsIDQ4LjYwOC04MC4wMCwgMTc2LjAwLTgwLjAwCgkJcyAxNzYuMDAsMzcuNTM2LCAxNzYuMDAsODAuMDBsMC4wMCwxMzUuMzQ0IGwgNDIuNzg0LDkuODcyQyA0OTYuNjg4LDMxMC4yNzIsIDUxMi4wMCwzMjkuNTA0LCA1MTIuMDAsMzUyLjAweiBNIDQwMC4wMCwxNjAuMDBjMC4wMC0xNy42OC00OC4wMC00OC4wMC0xNDQuMDAtNDguMDBjLTk2LjAwLDAuMDAtMTQ0LjAwLDMwLjMyLTE0NC4wMCw0OC4wMGwwLjAwLDEyNy45NTIgbCAxMzMuNDA4LTMwLjc4NAoJCUMgMjQ4Ljg5NiwyNTYuMzg0LCAyNTIuNDY0LDI1Ni4wMCwgMjU2LjAwLDI1Ni4wMGMgMy41MzYsMC4wMCwgNy4xMDQsMC4zODQsIDEwLjc4NCwxLjIxNkwgNDAwLjAwLDI4Ny45NTJMIDQwMC4wMCwxNjAuMDAgeiBNIDI1OS42MCwyODguNDBDIDI1OC40MCwyODguMTQ0LCAyNTcuMjAsMjg4LjAwLCAyNTYuMDAsMjg4LjAwCgkJcy0yLjQxNiwwLjE0NC0zLjYwLDAuNDBsLTIwOC4wMCw0OC4wMEMgMzcuMTM2LDMzOC4wOCwgMzIuMDAsMzQ0LjU0NCwgMzIuMDAsMzUyLjAwcyA1LjEzNiwxMy45MiwgMTIuNDAsMTUuNjBsIDIwOC4wMCw0OC4wMEMgMjUzLjU4NCw0MTUuODU2LCAyNTQuNzg0LDQxNi4wMCwgMjU2LjAwLDQxNi4wMAoJCXMgMi40MTYtMC4xNDQsIDMuNjAtMC40MGwgMjA4LjAwLTQ4LjAwQyA0NzQuODQ4LDM2NS45MiwgNDgwLjAwLDM1OS40NTYsIDQ4MC4wMCwzNTIuMDBzLTUuMTUyLTEzLjkyLTEyLjQwLTE1LjYwTCAyNTkuNjAsMjg4LjQwek0gNDY0LjAwLDI3Mi4wMCBDIDQ2NC4wMCwyODAuODQ4IDQ3MS4xNTIsMjg4LjAwIDQ4MC4wMCwyODguMDAgQyA0ODguODMyLDI4OC4wMCA0OTYuMDAsMjgwLjg0OCA0OTYuMDAsMjcyLjAwIEwgNDk2LjAwLDEyOC4wMCBDIDQ5Ni4wMCwxMTkuMTUyIDQ4OC44MzIsMTEyLjAwIDQ4MC4wMCwxMTIuMDAgQyA0NzEuMTUyLDExMi4wMCA0NjQuMDAsMTE5LjE1MiA0NjQuMDAsMTI4LjAwIEwgNDY0LjAwLDI3Mi4wMCBaTSA0ODAuMDAsOTYuMDAgQyA0OTcuNjY0LDk2LjAwIDUxMi4wMCw0OS42NjQgNTEyLjAwLDMyLjAwIEMgNTEyLjAwLDE0LjMzNiA0OTcuNjY0LDAuMDAgNDgwLjAwLDAuMDAgQyA0NjIuMzIsMC4wMCA0NDguMDAsMTQuMzM2IDQ0OC4wMCwzMi4wMCBDIDQ0OC4wMCw0OS42NjQgNDYyLjMyLDk2LjAwIDQ4MC4wMCw5Ni4wMCBaIiBkYXRhLXRhZ3M9InN0dWR5IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZTAyNTsiIGQ9Ik0gMzMwLjkxMiw0MjAuMjg4QyAzMjMuMzQ0LDQyNy44NCwgMzEzLjMxMiw0MzIuMDAsIDMwMi42MjQsNDMyLjAwcy0yMC43Mi00LjE2LTI4LjMyLTExLjcyOGwtMjIuNTYtMjIuNTkyCgkJQyAyNDQuMTc2LDM5MC4xMjgsIDI0MC4wMCwzODAuMDgsIDI0MC4wMCwzNjkuMzc2YzAuMDAtNy41MzYsIDIuMDY0LTE0Ljc1MiwgNS45MzYtMjEuMDA4TCAyOC43MDQsMjYxLjM0NGMtMTQuNTI4LTYuMzg0LTI0Ljk0NC0xOS40ODgtMjcuODcyLTM1LjAyNAoJCWMtMi45Ni0xNS42MzIsIDIuMDAtMzEuNjY0LCAxMy4zNDQtNDIuOTkybCAyMDMuNTItMjAxLjI4YyA4Ljc2OC04Ljc2OCwgMjAuNDE2LTEzLjc0NCwgMzIuNzItMTQuMDMyQyAyNTAuNzA0LTMyLjAwLCAyNTEuMzc2LTMyLjAwLCAyNTEuNjY0LTMyLjAwCgkJYyAzLjIzMiwwLjAwLCA2LjUxMiwwLjMzNiwgOS43NiwwLjk5MmMgMTUuOTA0LDMuMjk2LCAyOC45MjgsMTQuMjg4LCAzNC44MzIsMjkuMjQ4bCA4NS40NzIsMjE0LjAxNmMgNi40MzItNC4yNCwgMTQuMDAtNi41MTIsIDIxLjg3Mi02LjUxMgoJCWMgMTAuNzIsMC4wMCwgMjAuNzUyLDQuMTc2LCAyOC4yODgsMTEuNzI4TCA0NTQuNDAsMjQwLjAwYyA3LjYzMiw3LjU4NCwgMTEuODA4LDE3LjY0OCwgMTEuODA4LDI4LjM2OHMtNC4xOTIsMjAuODAtMTEuNzEyLDI4LjI4OEwgMzMwLjkxMiw0MjAuMjg4egoJCSBNIDI2Ni41NDQsMTAuMTI4Yy0xLjk4NC01LjAwOC02LjM1Mi04LjcwNC0xMS42MzItOS43OTJjLTEuMjE2LTAuMjU2LTIuNDQ4LTAuMzUyLTMuNjY0LTAuMzM2Yy00LjA2NCwwLjA5Ni03Ljk4NCwxLjcyOC0xMC45MTIsNC42NzIKCQlMIDM2LjY4OCwyMDYuMDhjLTMuNzQ0LDMuNzI4LTUuMzkyLDkuMDcyLTQuNDAsMTQuMjg4YyAwLjk3Niw1LjE4NCwgNC40NjQsOS41NjgsIDkuMzEyLDExLjY4bCA5OS40NzIsMzkuODQKCQljIDY3LjAyNC0yMi4yODgsIDEzNC4wNjQtMC44MTYsIDIwMS4xMi03Mi4zNTJMIDI2Ni41NDQsMTAuMTI4eiBNIDQzMS44NzIsMjYyLjcybC0yMi42MjQtMjIuNjA4Yy0zLjEyLTMuMTM2LTguMTkyLTMuMTM2LTExLjMxMiwwLjAwbC0yOC4yODgsMjguMjcyCgkJbC0yMi45MTItNTcuNDI0bCAxLjkwNCw0Ljg0OGMtNDguMTYsNDguMDgtOTcuMTA0LDU0LjE0NC0xNDEuMjY0LDU5LjU2OGMtMTQuMTkyLDEuNzQ0LTI3Ljk1MiwzLjU2OC00MS40NzIsNi40OGwgMTM1Ljg1Niw1NC40MTZsLTI3LjQ0LDI3LjQ0CgkJYy0zLjEyLDMuMTItMy4xMiw4LjE5MiwwLjAwLDExLjMxMmwgMjIuNjI0LDIyLjY0YyAzLjEyLDMuMTIsIDguMTkyLDMuMTIsIDExLjMxMiwwLjAwbCAxMjMuNjAtMTIzLjYzMgoJCUMgNDM1LjAyNCwyNzAuOTEyLCA0MzUuMDI0LDI2NS44NCwgNDMxLjg3MiwyNjIuNzJ6TSAyNjQuMDAsMTQ0LjAwYyAyMi4wNDgsMC4wMCwgNDAuMDAsMTcuOTM2LCA0MC4wMCw0MC4wMFMgMjg2LjA2NCwyMjQuMDAsIDI2NC4wMCwyMjQuMDBjLTIyLjA2NCwwLjAwLTQwLjAwLTE3LjkzNi00MC4wMC00MC4wMFMgMjQxLjk1MiwxNDQuMDAsIDI2NC4wMCwxNDQuMDB6CgkJIE0gMjY0LjAwLDIwOC4wMGMgMTMuMjQ4LDAuMDAsIDI0LjAwLTEwLjc1MiwgMjQuMDAtMjQuMDBTIDI3Ny4yNDgsMTYwLjAwLCAyNjQuMDAsMTYwLjAwYy0xMy4yNjQsMC4wMC0yNC4wMCwxMC43NTItMjQuMDAsMjQuMDBTIDI1MC43MzYsMjA4LjAwLCAyNjQuMDAsMjA4LjAwek0gNDcyLjAwLDQ4MC4wMEMgNDQ5LjkzNiw0ODAuMDAsIDQzMi4wMCw0NjIuMDY0LCA0MzIuMDAsNDQwLjAwUyA0NDkuOTM2LDQwMC4wMCwgNDcyLjAwLDQwMC4wMFMgNTEyLjAwLDQxNy45MzYsIDUxMi4wMCw0NDAuMDBTIDQ5NC4wNjQsNDgwLjAwLCA0NzIuMDAsNDgwLjAweiBNIDQ3Mi4wMCw0MTYuMDAKCQlDIDQ1OC43NTIsNDE2LjAwLCA0NDguMDAsNDI2Ljc1MiwgNDQ4LjAwLDQ0MC4wMFMgNDU4Ljc1Miw0NjQuMDAsIDQ3Mi4wMCw0NjQuMDBTIDQ5Ni4wMCw0NTMuMjQ4LCA0OTYuMDAsNDQwLjAwUyA0ODUuMjQ4LDQxNi4wMCwgNDcyLjAwLDQxNi4wMHpNIDEyOC4wMCwyMDguMDBjMC4wMC0xNy42NDgsIDE0LjM1Mi0zMi4wMCwgMzIuMDAtMzIuMDBzIDMyLjAwLDE0LjM1MiwgMzIuMDAsMzIuMDBzLTE0LjM1MiwzMi4wMC0zMi4wMCwzMi4wMFMgMTI4LjAwLDIyNS42NDgsIDEyOC4wMCwyMDguMDB6IE0gMTYwLjAwLDIyNC4wMGMgOC44MzIsMC4wMCwgMTYuMDAtNy4xNTIsIDE2LjAwLTE2LjAwCgkJcy03LjE2OC0xNi4wMC0xNi4wMC0xNi4wMHMtMTYuMDAsNy4xNTItMTYuMDAsMTYuMDBTIDE1MS4xNjgsMjI0LjAwLCAxNjAuMDAsMjI0LjAwek0gMTkyLjAwLDExMi4wMEExNi4wMCwxNi4wMCAxODAuMDAgMSwwIDIyNC4wMCwxMTJBMTYuMDAsMTYuMDAgMTgwLjAwIDEsMCAxOTIuMDAsMTEyek0gNDQ4LjAwLDM1Mi4wMEExNi4wMCwxNi4wMCAxODAuMDAgMSwwIDQ4MC4wMCwzNTJBMTYuMDAsMTYuMDAgMTgwLjAwIDEsMCA0NDguMDAsMzUyeiIgZGF0YS10YWdzPSJsYWIiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hlMDI2OyIgZD0iTSA0NzIuMDAsMTQ0LjAwbC00My4wNTYsMC4wMCBjLTAuNzIsMy44MjQtMS42MCw3LjU2OC0yLjU2LDExLjI5NmwgNzYuNzg0LDM4LjM4NGMgNy45MDQsMy45NTIsIDExLjA4OCwxMy41NjgsIDcuMTUyLDIxLjQ3MgoJCWMtMy45NjgsNy45MDQtMTMuNTM2LDExLjA3Mi0yMS40NzIsNy4xNTJsLTczLjI0OC0zNi42MDhDIDM4Ny42NjQsMjQ1Ljk4NCwgMzI2LjcyLDI4OC4wMCwgMjU2LjAwLDI4OC4wMGMtODYuMTEyLDAuMDAtMTU3Ljg0LTYyLjIwOC0xNzIuOTQ0LTE0NC4wMEwgNDAuMDAsMTQ0LjAwIAoJCUMgMTcuOTUyLDE0NC4wMCwwLjAwLDEyNi4wNjQsMC4wMCwxMDQuMDBjMC4wMC03Ljg0LCAyLjg4LTE1LjQwOCwgOC4wOC0yMS4yNjRMIDY0LjAwLDE5LjgyNEwgNjQuMDAsOC4wMCBDIDY0LjAwLTE0LjA2NCwgODEuOTUyLTMyLjAwLCAxMDQuMDAtMzIuMDBsIDMwNC4wMCwwLjAwIGMgMjIuMDY0LDAuMDAsIDQwLjAwLDE3LjkzNiwgNDAuMDAsNDAuMDAKCQlsMC4wMCwxMS44MjQgbCA1NS45MDQsNjIuOTEyQyA1MDkuMTIsODguNTkyLCA1MTIuMDAsOTYuMTYsIDUxMi4wMCwxMDQuMDBDIDUxMi4wMCwxMjYuMDY0LCA0OTQuMDY0LDE0NC4wMCwgNDcyLjAwLDE0NC4wMHogTSA0MTIuNzg0LDE0NC4wMGwtOC45OTIsMC4wMCBsIDcuOTY4LDQuMDAKCQlDIDQxMi4wNjQsMTQ2LjY1NiwgNDEyLjQ5NiwxNDUuMzYsIDQxMi43ODQsMTQ0LjAweiBNIDI1Ni4wMCwyNzIuMDBjIDY0LjQ2NCwwLjAwLCAxMjAuMDAtMzguNDAsIDE0NS4zMTItOTMuNDU2bC0xNC4yNTYtNy4xMkMgMzY0LjQwLDIyMS4yNjQsIDMxNC4zMiwyNTYuMDAsIDI1Ni4wMCwyNTYuMDAKCQljLTY4LjUxMiwwLjAwLTEyNS43NDQtNDcuODg4LTE0MC4zMi0xMTIuMDBMIDk5LjIzMiwxNDQuMDAgQyAxMTQuMDk2LDIxNi45NDQsIDE3OC43MzYsMjcyLjAwLCAyNTYuMDAsMjcyLjAweiBNIDMyOS4yMTYsMTQ0LjAwYy0xMi4zNjgsMjguMjA4LTQwLjQ5Niw0OC4wMC03My4yMTYsNDguMDBzLTYwLjgzMi0xOS43OTItNzMuMjE2LTQ4LjAwCgkJTCAxNjUuNjAsMTQ0LjAwIGMgMTMuMjE2LDM3LjIxNiwgNDguNjg4LDY0LjAwLCA5MC40MCw2NC4wMGMgMzkuNDQsMC4wMCwgNzMuNDA4LTIzLjkzNiwgODguMTI4LTU4LjAzMkwgMzMyLjIyNCwxNDQuMDBMIDMyOS4yMTYsMTQ0LjAwIHogTSAyNTYuMDAsMTYwLjAwYy0xNC4xMjgsMC4wMC0yNi43Mi02LjI1Ni0zNS41Mi0xNi4wMGwtMTkuNTg0LDAuMDAgCgkJYyAxMS4xMDQsMTkuMDI0LCAzMS41MiwzMi4wMCwgNTUuMTA0LDMyLjAwYyAyMy41NjgsMC4wMCwgNDQuMDAtMTIuOTc2LCA1NS4wODgtMzIuMDBsLTE5LjYwLDAuMDAgQyAyODIuNzIsMTUzLjc0NCwgMjcwLjEyOCwxNjAuMDAsIDI1Ni4wMCwxNjAuMDB6IE0gMjU2LjAwLDIyNC4wMAoJCWMtNTAuNjQsMC4wMC05My40NzItMzMuNzkyLTEwNy4yOC04MC4wMEwgMTMyLjIwOCwxNDQuMDAgYyAxNC4yNzIsNTUuMTA0LCA2NC4yNzIsOTYuMDAsIDEyMy43OTIsOTYuMDBjIDUxLjkzNiwwLjAwLCA5Ni42ODgtMzEuMTY4LCAxMTYuNzItNzUuNzQ0bC0xNC4yODgtNy4xMzYKCQlDIDM0MS4wMjQsMTk2LjQzMiwgMzAxLjY4LDIyNC4wMCwgMjU2LjAwLDIyNC4wMHogTSA0MTYuMDAsMzIuMDBsMC4wMC0yNC4wMCBjMC4wMC00LjQxNi0zLjYwLTguMDAtOC4wMC04LjAwbC0zMDQuMDAsMC4wMCBDIDk5LjU4NCwwLjAwLCA5Ni4wMCwzLjU4NCwgOTYuMDAsOC4wMEwgOTYuMDAsMzIuMDAgbC02NC4wMCw3Mi4wMAoJCUMgMzIuMDAsMTA4LjQxNiwgMzUuNTg0LDExMi4wMCwgNDAuMDAsMTEyLjAwTCA4MC4wMCwxMTIuMDAgbCAxNi4wMCwwLjAwIGwgMTYuMDAsMC4wMCBsIDE2LjAwLDAuMDAgbCAxNi4wMCwwLjAwIGwgMTYuMDAsMC4wMCBsIDE2LjAwLDAuMDAgbCAxNi4wMCwwLjAwIGwgMTYuMDAsMC4wMCBsIDk2LjAwLDAuMDAgbCAxNi4wMCwwLjAwIGwgMTYuMDAsMC4wMCBsIDE2LjAwLDAuMDAgbCAxNi4wMCwwLjAwIGwgMTYuMDAsMC4wMCBsIDE2LjAwLDAuMDAgbCAxNi4wMCwwLjAwIGwgMTYuMDAsMC4wMCBsIDQwLjAwLDAuMDAgYyA0LjQwLDAuMDAsIDguMDAtMy41ODQsIDguMDAtOC4wMEwgNDE2LjAwLDMyLjAwek0gMTI3LjYzMiwyOTIuNjA4IEMgMTI3LjUyLDI5Mi44MzIgMTI3LjQ0LDI5My4wNCAxMjcuMzQ0LDI5My4yOCBDIDExOS4wNCwzMTMuMzI4IDEyNy4yOTYsMzMyLjk5MiAxMzQuNzUyLDM1MC43MzYgQyAxNDEuODA4LDM2Ny41NjggMTQ4LjA2NCwzODIuNDggMTQxLjYwLDM5Ny4wMjQgQyAxNDEuNTY4LDM5Ny4wODggMTQxLjU1MiwzOTcuMTUyIDE0MS41MiwzOTcuMjE2IEMgMTQxLjUwNCwzOTcuMjY0IDE0MS40ODgsMzk3LjMxMiAxNDEuNDcyLDM5Ny4zNiBDIDE0MS40NTYsMzk3LjM5MiAxNDEuNDU2LDM5Ny40MjQgMTQxLjQ1NiwzOTcuNDU2IEMgMTQxLjEzNiwzOTguMzA0IDE0MC45NDQsMzk5LjIwIDE0MC45NDQsNDAwLjE2IEMgMTQwLjk0NCw0MDQuNDggMTQ0LjQ0OCw0MDguMDAgMTQ4Ljc4NCw0MDguMDAgQyAxNTIuMTEyLDQwOC4wMCAxNTQuOTQ0LDQwNS45MiAxNTYuMDgsNDAyLjk5MiBDIDE2NS4wMDgsMzgyLjY1NiAxNTYuODk2LDM2Mi42NTYgMTQ5LjMyOCwzNDQuNjQgQyAxNDIuMzIsMzI3Ljk2OCAxMzYuNjI0LDMxMi40OCAxNDIuNjI0LDI5OC4zNjggQyAxNDIuNjU2LDI5OC4yNTYgMTQyLjY1NiwyOTguMTYgMTQyLjYyNCwyOTguMDQ4IEMgMTQyLjgwLDI5Ny40MDggMTQyLjkxMiwyOTYuNzM2IDE0Mi45MTIsMjk2LjA0OCBDIDE0Mi45MTIsMjkxLjYxNiAxMzkuMzEyLDI4OC4wMCAxMzQuODgsMjg4LjAwIEMgMTMxLjc3NiwyODguMDAgMTI5LjEyLDI4OS43NiAxMjcuNzkyLDI5Mi4zMiBDIDEyNy43NzYsMjkyLjMyIDEyNy43NiwyOTIuMzIgMTI3Ljc2LDI5Mi4zMiBDIDEyNy43MTIsMjkyLjQxNiAxMjcuNjgsMjkyLjUxMiAxMjcuNjMyLDI5Mi42MDggWk0gMzIyLjQ2NCwyOTQuOTQ0IEMgMzIyLjM2OCwyOTUuMTUyIDMyMi4yODgsMjk1LjM3NiAzMjIuMjA4LDI5NS41ODQgQyAzMTMuOTA0LDMxNS42MzIgMzIyLjE0NCwzMzUuMzEyIDMyOS41ODQsMzUzLjA1NiBDIDMzNi42NTYsMzY5Ljg4OCAzNDIuODk2LDM4NC44MCAzMzYuNDMyLDM5OS4zNDQgQyAzMzYuNDMyLDM5OS40MDggMzM2LjQwLDM5OS40NzIgMzM2LjM2OCwzOTkuNTM2IEMgMzM2LjMzNiwzOTkuNTg0IDMzNi4zMzYsMzk5LjYzMiAzMzYuMzA0LDM5OS42OCBDIDMzNi4zMDQsMzk5LjcxMiAzMzYuMzA0LDM5OS43NDQgMzM2LjMwNCwzOTkuNzc2IEMgMzM2LjAwLDQwMC42MjQgMzM1Ljc3Niw0MDEuNTIgMzM1Ljc3Niw0MDIuNDggQyAzMzUuNzc2LDQwNi44MCAzMzkuMjk2LDQxMC4zMiAzNDMuNjE2LDQxMC4zMiBDIDM0Ni45Niw0MTAuMzIgMzQ5Ljc3Niw0MDguMjU2IDM1MC45MjgsNDA1LjMxMiBDIDM1OS44NTYsMzg0Ljk3NiAzNTEuNzQ0LDM2NC45NzYgMzQ0LjE3NiwzNDYuOTYgQyAzMzcuMTY4LDMzMC4yODggMzMxLjQ4OCwzMTQuODAgMzM3LjQ1NiwzMDAuNjg4IEMgMzM3LjUyLDMwMC41NzYgMzM3LjUyLDMwMC40OCAzMzcuNDg4LDMwMC4zNjggQyAzMzcuNjQ4LDI5OS43MjggMzM3Ljc3NiwyOTkuMDU2IDMzNy43NzYsMjk4LjM2OCBDIDMzNy43NzYsMjkzLjkzNiAzMzQuMTQ0LDI5MC4zMiAzMjkuNzEyLDI5MC4zMiBDIDMyNi42MjQsMjkwLjMyIDMyMy45NjgsMjkyLjA5NiAzMjIuNjI0LDI5NC42NTYgTCAzMjIuNTkyLDI5NC42NTYgQyAzMjIuNTYsMjk0Ljc1MiAzMjIuNTI4LDI5NC44NDggMzIyLjQ2NCwyOTQuOTQ0IFpNIDI0MC4zMDQsMzY0LjYwOCBDIDI0MC4xOTIsMzY0LjgzMiAyNDAuMTEyLDM2NS4wNCAyNDAuMDAsMzY1LjI2NCBDIDIzMS42OCwzODUuMzEyIDIzOS45MzYsNDA0Ljk5MiAyNDcuMzkyLDQyMi43MzYgQyAyNTQuNDQ4LDQzOS41NjggMjYwLjcwNCw0NTQuNDggMjU0LjI0LDQ2OS4wMjQgQyAyNTQuMjI0LDQ2OS4wODggMjU0LjE5Miw0NjkuMTUyIDI1NC4xNzYsNDY5LjIxNiBDIDI1NC4xNiw0NjkuMjY0IDI1NC4xNDQsNDY5LjMxMiAyNTQuMTI4LDQ2OS4zNiBDIDI1NC4xMTIsNDY5LjM5MiAyNTQuMTEyLDQ2OS40MjQgMjU0LjExMiw0NjkuNDU2IEMgMjUzLjc5Miw0NzAuMzA0IDI1My42MCw0NzEuMjAgMjUzLjYwLDQ3Mi4xNiBDIDI1My42MCw0NzYuNDggMjU3LjEyLDQ4MC4wMCAyNjEuNDQsNDgwLjAwIEMgMjY0Ljc4NCw0ODAuMDAgMjY3LjYwLDQ3Ny45MiAyNjguNzUyLDQ3NC45NzYgQyAyNzcuNjgsNDU0LjY0IDI2OS41NjgsNDM0LjY0IDI2Mi4wMCw0MTYuNjI0IEMgMjU0Ljk5MiwzOTkuOTUyIDI0OS4yOTYsMzg0LjQ2NCAyNTUuMjk2LDM3MC4zNTIgQyAyNTUuMzI4LDM3MC4yNCAyNTUuMzI4LDM3MC4xNDQgMjU1LjI5NiwzNzAuMDMyIEMgMjU1LjQ3MiwzNjkuMzkyIDI1NS41ODQsMzY4LjcyIDI1NS41ODQsMzY4LjAzMiBDIDI1NS41ODQsMzYzLjYwIDI1MS45ODQsMzU5Ljk4NCAyNDcuNTUyLDM1OS45ODQgQyAyNDQuNDY0LDM1OS45ODQgMjQxLjgwOCwzNjEuNzYgMjQwLjQ2NCwzNjQuMzIgQyAyNDAuNDQ4LDM2NC4zMiAyNDAuNDMyLDM2NC4zMiAyNDAuNDMyLDM2NC4zMiBDIDI0MC4zODQsMzY0LjQxNiAyNDAuMzUyLDM2NC41MTIgMjQwLjMwNCwzNjQuNjA4IFoiIGRhdGEtdGFncz0iZm9vZCIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGUwMjc7IiBkPSJNIDUwMC4wMCwzNzYuOTkybC04MC4wMCw2NC4wMEMgNDE0LjMyLDQ0NS41MzYsIDQwNy4yNDgsNDQ4LjAwLCA0MDAuMDAsNDQ4LjAwTCAxMTIuMDAsNDQ4LjAwIAoJCUMgMTA0LjczNiw0NDguMDAsIDk3LjY4LDQ0NS41MzYsIDkyLjAwLDQ0MC45OTJsLTgwLjAwLTY0LjAwQyAxLjUzNiwzNjguNjA4LTIuNTkyLDM1NC41OTIsIDEuNjQ4LDM0MS44NzJsIDMyLjAwLTk2LjAwYyAzLjE1Mi05LjQ1NiwgMTAuNTQ0LTE2LjkxMiwgMTkuOTg0LTIwLjE0NAoJCUMgNTYuOTkyLDIyNC41NzYsIDYwLjUxMiwyMjQuMDAsIDY0LjAwLDIyNC4wMGMgNS41NjgsMC4wMCwgMTEuMDg4LDEuNDU2LCAxNi4wMCw0LjI4OEwgODAuMDAsMzIuMDAgYzAuMDAtMTcuNjY0LCAxNC4zMzYtMzIuMDAsIDMyLjAwLTMyLjAwbCAyODguMDAsMC4wMCBjIDE3LjY2NCwwLjAwLCAzMi4wMCwxNC4zMzYsIDMyLjAwLDMyLjAwTCA0MzIuMDAsMjI4LjI4OCAKCQlDIDQzNi45MTIsMjI1LjQ1NiwgNDQyLjQzMiwyMjQuMDAsIDQ0OC4wMCwyMjQuMDBjIDMuNTA0LDAuMDAsIDcuMDA4LDAuNTc2LCAxMC4zNjgsMS43MjhjIDkuNDQsMy4yMzIsIDE2LjgxNiwxMC42ODgsIDE5Ljk2OCwyMC4xNDRsIDMyLjAwLDk2LjAwCgkJQyA1MTQuNTkyLDM1NC41OTIsIDUxMC40NjQsMzY4LjYwOCwgNTAwLjAwLDM3Ni45OTJ6IE0gMzE2LjA2NCw0MTYuMDBDIDMwNy4yMTYsMzk3LjQyNCwgMjgzLjc3NiwzODQuMDAsIDI1Ni4wMCwzODQuMDBjLTI3Ljc3NiwwLjAwLTUxLjIzMiwxMy40MjQtNjAuMDY0LDMyLjAwTCAzMTYuMDY0LDQxNi4wMCB6IE0gNDQ4LjAwLDI1Ni4wMGwtNDguMDAsMzIuMDAKCQlsMC4wMC0yNTYuMDAgTCAxMTIuMDAsMzIuMDAgTCAxMTIuMDAsMjg4LjAwIGwtNDguMDAtMzIuMDBMIDMyLjAwLDM1Mi4wMGwgODAuMDAsNjQuMDBsIDY2LjgzMiwwLjAwIEMgMTg3Ljc0NCwzODguNDQ4LCAyMTguNzY4LDM2OC4wMCwgMjU2LjAwLDM2OC4wMGMgMzcuMjE2LDAuMDAsIDY4LjI1NiwyMC40NDgsIDc3LjE1Miw0OC4wMEwgNDAwLjAwLDQxNi4wMCBsIDgwLjAwLTY0LjAwTCA0NDguMDAsMjU2LjAweiIgZGF0YS10YWdzPSJ0LXNoaXJ0IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZTAyODsiIGQ9Ik0gMzUyLjAwLDMzNi4wMGMtMC45OTItNDIuODAtMzMuMTItNzguOTQ0LTMzLjEyLTc4Ljk0NEMgMzE4Ljg4LDMzNi42NzIsIDI1Ni4wMCw0MDAuMDAsIDI1Ni4wMCw0MDAuMDBzLTAuODQ4LTQ3LjM5Mi0zMi42ODgtOTUuMTY4CgkJCUMgMTkxLjQ3Miw0MTYuMzA0LCA5NS45Miw0ODAuMDAsIDk1LjkyLDQ4MC4wMEMgMTQzLjY5NiwzMDQuODMyLCA4MC4wMCwyNDEuMTIsIDgwLjAwLDExMy43MjhDIDgwLjAwLDM4Ljk5MiwgMTQzLjI2NC0zMi4wMCwgMjQwLjAwLTMyLjAwYyAxNDMuMzEyLDAuMDAsIDE3MS4wMjQsNTIuNjA4LCAxODUuODQsMTExLjg4OAoJCQlDIDQ0Ni4yNTYsMTYxLjUwNCwgNDE1LjY4LDI1Ni4zODQsIDM1Mi4wMCwzMzYuMDB6IE0gMzk0LjgxNiw4Ny42NjRDIDM4NC41MjgsNDYuNTYsIDM3Mi45MTIsMC4wMCwgMjQwLjAwLDAuMDBjLTgwLjEyOCwwLjAwLTEyOC4wMCw1Ny44MjQtMTI4LjAwLDExMy43MjgKCQkJYzAuMDAsNDIuODE2LCA3LjgwOCw3Ny45NjgsIDE2LjA2NCwxMTUuMTg0YyAxMC40OTYsNDcuMTg0LCAyMS4yNDgsOTUuNDg4LCAxNi41OTIsMTU5LjM3NmMgNDkuMzQ0LTY4LjMwNCwgNjYuOTEyLTE1OC44MCwgNjYuOTEyLTE1OC44MAoJCQlzIDQ1LjkzNiw2NC40OTYsIDU4LjI4OCw5NC40NDhDIDI3OS4zMTIsMzA0LjY4OCwgMjg4LjAwLDI0MC4wMCwgMjg4LjAwLDE3Ni4wMGMwLjAwLDAuMDAsIDQyLjQ5NiwzNS4wMDgsIDc0LjM2OCw4Ny42NDhDIDM5NS45MzYsMjAzLjQ1NiwgNDA4LjAzMiwxNDAuNTI4LCAzOTQuODE2LDg3LjY2NHpNIDM1OC45MTIsMjExLjI4IEwgMzYxLjg4OCwxOTQuNzIgQyAzNjguNTQ0LDE1Ny42MzIgMzY0LjgxNiwxMTMuNzkyIDM1Mi40MTYsODMuMDA4IEMgMzUxLjE2OCw3OS44ODggMzQ4LjE2LDc4LjAwIDM0NS4wMDgsNzguMDAgQyAzNDQuMDAsNzguMDAgMzQyLjk3Niw3OC4xOTIgMzQyLjAwLDc4LjU3NiBDIDMzNy45MDQsODAuMjI0IDMzNS45MDQsODQuODggMzM3LjU2OCw4OC45NzYgQyAzNDYuOTEyLDExMi4xNiAzNTAuODQ4LDE0NC44MCAzNDguMzUyLDE3NC42MjQgQyAzMzIuMjg4LDE1Ni42NzIgMzEyLjA0OCwxMzcuOTY4IDI2OC44MCwxMTcuNDI0IEwgMjYwLjcwNCwxMTMuNjAgTCAyNTcuNzkyLDEyMi4wNDggQyAyNTIuMDAsMTM4Ljg0OCAyNDYuMTYsMTU1LjgyNCAyNDMuNjMyLDE3OS40ODggQyAyMzQuOTc2LDE2NS44NCAyMjcuMDcyLDE1My42OCAyMTMuNzkyLDEzNS42MCBMIDIwNS42NjQsMTI0LjUyOCBMIDIwMC4wMzIsMTM3LjA3MiBDIDE4Ni4yNTYsMTY3Ljg3MiAxNzUuNzYsMTkxLjkyIDE2Ny40NCwyMTMuMDcyIEMgMTU5Ljc0NCwxODguMzUyIDE1NC4wMCwxNTkuNzYgMTU0LjAwLDEwMi4wMTYgQyAxNTQuMDAsOTcuNjAgMTUwLjQwLDk0LjAxNiAxNDYuMDAsOTQuMDE2IEMgMTQxLjU2OCw5NC4wMTYgMTM4LjAwLDk3LjYwIDEzOC4wMCwxMDIuMDE2IEMgMTM4LjAwLDE3Ny4zNiAxNDguMDAsMjA2LjM4NCAxNTguNTYsMjM3LjEyIEwgMTY2Ljg4LDI2MS4yOCBMIDE3NC41NDQsMjM5LjY4IEMgMTgyLjc4NCwyMTYuNDY0IDE5My42MzIsMTkwLjg4IDIwOC45NzYsMTU2LjI4OCBDIDIxOS4wODgsMTcwLjU3NiAyMjUuODcyLDE4MS4zMjggMjM0LjA2NCwxOTQuMzA0IEwgMjU4LjM1MiwyMzIuMzUyIEwgMjU4LjM1MiwyMDUuMDA4IEMgMjU4LjM1MiwxNzQuMjI0IDI2My44ODgsMTU0LjExMiAyNjkuOTg0LDEzNS44NCBDIDMxMi41MjgsMTU3LjI0OCAzMjguNDY0LDE3NS44NzIgMzQ1LjMxMiwxOTUuNTIgTCAzNTguOTEyLDIxMS4yOCBaIiBkYXRhLXRhZ3M9ImZpcmUiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hlMDI5OyIgZD0iTSA0NjkuODA4LDQwNS44MDggQyA1MjYuMDY0LDM0OS41ODQgNTI2LjA2NCwyNTguNDAgNDY5LjgwOCwyMDIuMTc2IEwgMjk0LjMzNiwyNi42ODggQyAyODguMDgsMjAuNDE2IDI3Ny45NjgsMjAuNDE2IDI3MS43MTIsMjYuNjg4IEMgMjY1LjQyNCwzMi45NDQgMjY1LjQyNCw0My4wNCAyNzEuNzEyLDQ5LjMxMiBMIDQ0NC45MjgsMjIyLjU0NCBDIDQ4OC42NzIsMjY2LjI4OCA0ODguNjcyLDMzNy4xNjggNDQ0Ljg5NiwzODAuOTI4IEMgNDAxLjIxNiw0MjQuNjcyIDMzMC4yNzIsNDI0LjY3MiAyODYuNTI4LDM4MC45MjggTCA1NS4zNzYsMTUyLjQ5NiBDIDI0LjEyOCwxMjEuMjY0IDI0LjEyOCw3MC42MDggNTUuMzc2LDM5LjM3NiBDIDg2LjYyNCw4LjEyOCAxMzcuMjQ4LDguMTI4IDE2OC40OTYsMzkuMzc2IEwgNDAxLjkzNiwyNzAuMDQ4IEMgNDIwLjY1NiwyODguNzY4IDQyMC42NTYsMzE5LjIxNiA0MDEuOTM2LDMzNy45MzYgQyAzODMuMjE2LDM1Ni42NCAzNTIuNzg0LDM1Ni42NCAzMzQuMDY0LDMzNy45MzYgTCAxNTguNTYsMTYyLjQzMiBDIDE1Mi4zMDQsMTU2LjE3NiAxNDIuMTkyLDE1Ni4xNzYgMTM1LjkzNiwxNjIuNDMyIEMgMTI5LjY4LDE2OC43MDQgMTI5LjY4LDE3OC44MCAxMzUuOTM2LDE4NS4wNzIgTCAzMTEuNDI0LDM2MC41NiBDIDM0Mi42NCwzOTEuNzkyIDM5My4yOTYsMzkxLjc5MiA0MjQuNTQ0LDM2MC41NiBDIDQ1NS43OTIsMzI5LjMxMiA0NTUuNzkyLDI3OC42NzIgNDI0LjU0NCwyNDcuNDI0IEwgMTkxLjEwNCwxNi43MzYgQyAxNDcuNDU2LTI2LjkyOCA3Ni40MC0yNi45MjggMzIuNzM2LDE2LjczNiBDIC0xMC45MjgsNjAuNDAgLTEwLjkyOCwxMzEuNDcyIDMyLjczNiwxNzUuMTM2IEwgMjY2LjE3Niw0MDUuODA4IEMgMzIyLjQwLDQ2Mi4wNjQgNDEzLjU4NCw0NjIuMDY0IDQ2OS44MDgsNDA1LjgwOCBaIiBkYXRhLXRhZ3M9ImNsaXAiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hlMDJhOyIgZD0iTSA1MDIuNDAsMzAwLjgwbC00OC4wMCw2My45NjhjLTEuODcyLDIuNTEyLTQuMDk2LDQuNjg4LTYuNDAsNi43NjhMIDQ0OC4wMCw0NDguMDAgYzAuMDAsMTcuNjY0LTE0LjMzNiwzMi4wMC0zMi4wMCwzMi4wMEwgOTYuMDAsNDgwLjAwIAoJQyA3OC4zMiw0ODAuMDAsIDY0LjAwLDQ2NS42NjQsIDY0LjAwLDQ0OC4wMGwwLjAwLTc2LjQ4IEMgNjEuNjk2LDM2OS40NTYsIDU5LjQ3MiwzNjcuMjk2LCA1Ny42MCwzNjQuODBsLTQ3Ljk4NC02My45ODRDIDMuNDA4LDI5Mi41NiwwLjAwLDI4Mi4zMzYsMC4wMCwyNzIuMDBsMC4wMC0xNi4wMCBjMC4wMC0yNi40NjQsIDIxLjUzNi00OC4wMCwgNDguMDAtNDguMDBsMC4wMCwwLjAwIGwwLjAwLTIwOC4wMCAKCWMwLjAwLTE3LjY2NCwgMTQuMzM2LTMyLjAwLCAzMi4wMC0zMi4wMGwgMzUyLjAwLDAuMDAgYyAxNy42NjQsMC4wMCwgMzIuMDAsMTQuMzM2LCAzMi4wMCwzMi4wMEwgNDY0LjAwLDIwOC4wMCBsMC4wMCwwLjAwYyAyNi40NjQsMC4wMCwgNDguMDAsMjEuNTM2LCA0OC4wMCw0OC4wMGwwLjAwLDE2LjAwIEMgNTEyLjAwLDI4Mi4zMzYsIDUwOC41OTIsMjkyLjU2LCA1MDIuNDAsMzAwLjgweiBNIDQxNi4wMCw0NDguMDBsMC4wMC02NC4wMCBMIDk2LjAwLDM4NC4wMCBsMC4wMCwwLjAwIEwgOTYuMDAsNDQ4LjAwIEwgNDE2LjAwLDQ0OC4wMCB6CgkgTSAxNjMuMDg4LDI0MC4wMEwgOTYuMDY0LDI0MC4wMCBsIDY0LjAwLDExMi4wMGwgMzUuMDI0LDAuMDAgTCAxNjMuMDg4LDI0MC4wMHogTSAyMTEuNzQ0LDM1Mi4wMEwgMjQ4LjAwLDM1Mi4wMCBsMC4wMC0xMTIuMDAgbC02OC4yNTYsMC4wMCBMIDIxMS43NDQsMzUyLjAweiBNIDI2NC4wMCwzNTIuMDBsIDM2LjI1NiwwLjAwIGwgMzIuMDAtMTEyLjAwTCAyNjQuMDAsMjQwLjAwIEwgMjY0LjAwLDM1Mi4wMCB6IE0gMzE2Ljg4LDM1Mi4wMGwgMzUuMDI0LDAuMDAgbCA2NC4wMC0xMTIuMDBsLTY3LjAyNCwwLjAwIAoJTCAzMTYuODgsMzUyLjAweiBNIDMyLjAwLDI1Ni4wMGwwLjAwLDE2LjAwIGMwLjAwLDMuNDcyLCAxLjEyLDYuODMyLCAzLjIwLDkuNjBsIDQ4LjAwLDY0LjAwQyA4Ni4yMjQsMzQ5LjYzMiwgOTAuOTYsMzUyLjAwLCA5Ni4wMCwzNTIuMDBsIDQ1LjYzMiwwLjAwIGwtNjQuMDAtMTEyLjAwTCA0OC4wMCwyNDAuMDAgQyAzOS4xNjgsMjQwLjAwLCAzMi4wMCwyNDcuMTUyLCAzMi4wMCwyNTYuMDB6IE0gMzIwLjAwLDAuMDBsLTEyMC4wMCwwLjAwIEwgMjAwLjAwLDE2MC4wMCAKCUwgMzIwLjAwLDE2MC4wMCBMIDMyMC4wMCwwLjAwIHogTSA0MzIuMDAsMC4wMGwtOTYuMDAsMC4wMCBMIDMzNi4wMCwxNjAuMDAgYzAuMDAsOC44NDgtNy4xODQsMTYuMDAtMTYuMDAsMTYuMDBsLTEyMC4wMCwwLjAwIGMtOC44MzIsMC4wMC0xNi4wMC03LjE1Mi0xNi4wMC0xNi4wMGwwLjAwLTE2MC4wMCBMIDgwLjAwLDAuMDAgTCA4MC4wMCwyMDguMDAgbCAzNTIuMDAsMC4wMCBMIDQzMi4wMCwwLjAwIHogTSA0ODAuMDAsMjU2LjAwYzAuMDAtOC44NDgtNy4xNTItMTYuMDAtMTYuMDAtMTYuMDBsLTI5LjY2NCwwLjAwIGwtNjQuMDAsMTEyLjAwTCA0MTYuMDAsMzUyLjAwIGwwLjAwLDAuMDAKCWMgNS4wMjQsMC4wMCwgOS43NzYtMi4zNjgsIDEyLjc4NC02LjQwbCA0OC4wMC02NC4wMEMgNDc4Ljg4LDI3OC44MzIsIDQ4MC4wMCwyNzUuNDcyLCA0ODAuMDAsMjcyLjAwTCA0ODAuMDAsMjU2LjAwIHoiIGRhdGEtdGFncz0ic2hvcCIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGUwMmI7IiBkPSJNIDQ2OS4zNDQsNDMyLjAwTCA0MDAuMDAsNDMyLjAwIEwgNDAwLjAwLDQ2NC4wMCBjMC4wMCw4Ljg0OC03LjE1MiwxNi4wMC0xNi4wMCwxNi4wMHMtMTYuMDAtNy4xNTItMTYuMDAtMTYuMDBsMC4wMC0zMi4wMCBsLTk2LjAwLDAuMDAgTCAyNzIuMDAsNDY0LjAwIGMwLjAwLDguODQ4LTcuMTY4LDE2LjAwLTE2LjAwLDE2LjAwcy0xNi4wMC03LjE1Mi0xNi4wMC0xNi4wMGwwLjAwLTMyLjAwIEwgMTQ0LjAwLDQzMi4wMCBMIDE0NC4wMCw0NjQuMDAgCgkJYzAuMDAsOC44NDgtNy4xNjgsMTYuMDAtMTYuMDAsMTYuMDBTIDExMi4wMCw0NzIuODQ4LCAxMTIuMDAsNDY0LjAwbDAuMDAtMzIuMDAgTCA0Mi42NzIsNDMyLjAwIEMgMTkuMTA0LDQzMi4wMCwwLjAwLDQxMi45MTIsMC4wMCwzODkuMzQ0bDAuMDAtMzc4LjY3MiBDMC4wMC0xMi44OTYsIDE5LjEwNC0zMi4wMCwgNDIuNjcyLTMyLjAwbCA0MjYuNjcyLDAuMDAgCgkJQyA0OTIuOTEyLTMyLjAwLCA1MTIuMDAtMTIuODk2LCA1MTIuMDAsMTAuNjcyTCA1MTIuMDAsMzg5LjM0NCBDIDUxMi4wMCw0MTIuOTEyLCA0OTIuOTEyLDQzMi4wMCwgNDY5LjM0NCw0MzIuMDB6IE0gNDgwLjAwLDEwLjY3MkMgNDgwLjAwLDQuNzg0LCA0NzUuMjE2LDAuMDAsIDQ2OS4zNDQsMC4wMEwgNDIuNjcyLDAuMDAgCgkJQyAzNi43ODQsMC4wMCwgMzIuMDAsNC43ODQsIDMyLjAwLDEwLjY3MkwgMzIuMDAsMzg5LjM0NCBDIDMyLjAwLDM5NS4yMTYsIDM2Ljc4NCw0MDAuMDAsIDQyLjY3Miw0MDAuMDBMIDExMi4wMCw0MDAuMDAgbDAuMDAtMzIuMDAgYzAuMDAtOC44NDgsIDcuMTY4LTE2LjAwLCAxNi4wMC0xNi4wMHMgMTYuMDAsNy4xNTIsIDE2LjAwLDE2LjAwTCAxNDQuMDAsNDAwLjAwIGwgOTYuMDAsMC4wMCBsMC4wMC0zMi4wMCBjMC4wMC04Ljg0OCwgNy4xNjgtMTYuMDAsIDE2LjAwLTE2LjAwCgkJcyAxNi4wMCw3LjE1MiwgMTYuMDAsMTYuMDBMIDI3Mi4wMCw0MDAuMDAgbCA5Ni4wMCwwLjAwIGwwLjAwLTMyLjAwIGMwLjAwLTguODQ4LCA3LjE1Mi0xNi4wMCwgMTYuMDAtMTYuMDBzIDE2LjAwLDcuMTUyLCAxNi4wMCwxNi4wMEwgNDAwLjAwLDQwMC4wMCBsIDY5LjM0NCwwLjAwIEMgNDc1LjIxNiw0MDAuMDAsIDQ4MC4wMCwzOTUuMjE2LCA0ODAuMDAsMzg5LjM0NEwgNDgwLjAwLDEwLjY3MiB6TSAxMTIuMDAsMjg4LjAwTCAxNzYuMDAsMjg4LjAwTCAxNzYuMDAsMjQwLjAwTCAxMTIuMDAsMjQwLjAwek0gMTEyLjAwLDIwOC4wMEwgMTc2LjAwLDIwOC4wMEwgMTc2LjAwLDE2MC4wMEwgMTEyLjAwLDE2MC4wMHpNIDExMi4wMCwxMjguMDBMIDE3Ni4wMCwxMjguMDBMIDE3Ni4wMCw4MC4wMEwgMTEyLjAwLDgwLjAwek0gMjI0LjAwLDEyOC4wMEwgMjg4LjAwLDEyOC4wMEwgMjg4LjAwLDgwLjAwTCAyMjQuMDAsODAuMDB6TSAyMjQuMDAsMjA4LjAwTCAyODguMDAsMjA4LjAwTCAyODguMDAsMTYwLjAwTCAyMjQuMDAsMTYwLjAwek0gMjI0LjAwLDI4OC4wMEwgMjg4LjAwLDI4OC4wMEwgMjg4LjAwLDI0MC4wMEwgMjI0LjAwLDI0MC4wMHpNIDMzNi4wMCwxMjguMDBMIDQwMC4wMCwxMjguMDBMIDQwMC4wMCw4MC4wMEwgMzM2LjAwLDgwLjAwek0gMzM2LjAwLDIwOC4wMEwgNDAwLjAwLDIwOC4wMEwgNDAwLjAwLDE2MC4wMEwgMzM2LjAwLDE2MC4wMHpNIDMzNi4wMCwyODguMDBMIDQwMC4wMCwyODguMDBMIDQwMC4wMCwyNDAuMDBMIDMzNi4wMCwyNDAuMDB6IiBkYXRhLXRhZ3M9ImNhbGVuZGFyIiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZTAyYzsiIGQ9Ik0gMjU2LjAwLDE2MC4wMEEzMi4wMCwzMi4wMCAxODAuMDAgMSwwIDMyMC4wMCwxNjBBMzIuMDAsMzIuMDAgMTgwLjAwIDEsMCAyNTYuMDAsMTYwek0gNDY0LjAxNiwyNzIuMDBDIDQ2NC4wMCwyNzIuMDAsIDQ2NC4wMCwyNzIuMDAsIDQ2NC4wMTYsMjcyLjAwTCA0NjQuMDAsMzY4LjAwTCA0NjQuMDAsMzc2LjAwIEwgNDY0LjAwLDQxNi4wMCBjMC4wMCwyNi41MTItMjEuNTA0LDQ4LjAwLTQ4LjAwLDQ4LjAwbC02NC4wMCwwLjAwIEwgODguMDAsNDY0LjAwIEMgMzkuNDcyLDQ2NC4wMCwwLjAwLDQyNC41MTIsMC4wMCwzNzYuMDBsMC4wMC0zMjAuMDAgCgkJQzAuMDAsNy40ODgsIDM5LjQ3Mi0zMi4wMCwgODguMDAtMzIuMDBsIDI4OC4wMCwwLjAwIGMgNDguNTEyLDAuMDAsIDg4LjAwLDM5LjQ4OCwgODguMDAsODguMDBMIDQ2NC4wMCw4MC4wMCBjMC4wMCwwLjAwLDAuMDAsMC4wMCwgMC4wMTYsMC4wMEMgNTI3Ljk4NCwxMjguMDE2LCA1MjcuOTg0LDIyMy45ODQsIDQ2NC4wMTYsMjcyLjAweiBNIDg4LjAwLDQzMi4wMEwgMzUyLjAwLDQzMi4wMCBsIDY0LjAwLDAuMDAgCgkJYyA4LjgxNiwwLjAwLCAxNi4wMC03LjE2OCwgMTYuMDAtMTYuMDBsMC4wMC00MC4wMCBMIDQzMi4wMCwzNjguMDAgbDAuMDAtNTAuOTQ0IEMgNDI2Ljk3NiwzMTguODQ4LCA0MjEuNjMyLDMyMC4wMCwgNDE2LjAwLDMyMC4wMGwtMC4wMTYsMC4wMCBMIDQxNS45ODQsMzM2LjAwIEwgNDE1Ljk4NCwzNjguMDAgTCA0MTUuOTg0LDQwMC4wMCBjMC4wMCw4Ljg0OC03LjE2OCwxNi4wMC0xNi4wMCwxNi4wMGwtMzM2LjAwLDAuMDAgYy04LjgzMiwwLjAwLTE2LjAwLTcuMTUyLTE2LjAwLTE2LjAwbDAuMDAtMzIuMDAgCgkJbDAuMDAtMzEuMDg4IEMgMzguMTEyLDM0Ny4wMDgsIDMyLjAwLDM2MC43NjgsIDMyLjAwLDM3Ni4wMEMgMzIuMDAsNDA2LjkyOCwgNTcuMDU2LDQzMi4wMCwgODguMDAsNDMyLjAweiBNIDM5OS45ODQsMzg0LjAwbC0zMzYuMDAsMC4wMCBMIDYzLjk4NCw0MDAuMDAgbCAzMzYuMDAsMC4wMCBMIDM5OS45ODQsMzg0LjAwIHogTSAzOTkuOTg0LDM2OC4wMGwwLjAwLTE2LjAwIGwtMzM2LjAwLDAuMDAgTCA2My45ODQsMzY4LjAwIEwgMzk5Ljk4NCwzNjguMDAgeiBNIDM5OS45ODQsMzM2LjAwbDAuMDAtMTYuMDAgTCAzNTIuMDAsMzIwLjAwIEwgODguMDAsMzIwLjAwIAoJCWMtOC42NCwwLjAwLTE2LjcwNCwyLjExMi0yNC4wMCw1LjYwTCA2NC4wMCwzMzYuMDAgTCAzOTkuOTg0LDMzNi4wMCB6IE0gNDMyLjAwLDU2LjAwYzAuMDAtMzAuOTI4LTI1LjA3Mi01Ni4wMC01Ni4wMC01Ni4wMGwtMjg4LjAwLDAuMDAgQyA1Ny4wNTYsMC4wMCwgMzIuMDAsMjUuMDcyLCAzMi4wMCw1Ni4wMEwgMzIuMDAsMzA4LjE3NiAKCQlDIDQ3LjIxNiwyOTUuNTg0LCA2Ni43MzYsMjg4LjAwLCA4OC4wMCwyODguMDBMIDM1Mi4wMCwyODguMDAgbCA2NC4wMCwwLjAwIGMgOC44MTYsMC4wMCwgMTYuMDAtNy4xNjgsIDE2LjAwLTE2LjAwbDAuMDAtMzIuMDAgbC0xNDQuMDAsMC4wMCBjLTQ0LjE5MiwwLjAwLTgwLjAwLTM1LjgwOC04MC4wMC04MC4wMHMgMzUuODI0LTgwLjAwLCA4MC4wMC04MC4wMGwgMTQ0LjAwLDAuMDAgTCA0MzIuMDAsNTYuMDAgeiBNIDQ1Mi40MzIsMTEyLjAwTCAyODguMDAsMTEyLjAwIAoJCWMtMjYuNDY0LDAuMDAtNDguMDAsMjEuNTM2LTQ4LjAwLDQ4LjAwcyAyMS41MzYsNDguMDAsIDQ4LjAwLDQ4LjAwbCAxNDQuMDAsMC4wMCBjIDkuODcyLDAuMTI4LCAxOS42NjQsNC45MTIsIDI1LjYzMiwxMi44NjRjIDEuNjY0LDIuMjQsIDIuOTYsNC43NTIsIDQuMDAsNy4zNzYKCQljIDAuMTQ0LDAuMzUyLCAwLjQwLDAuNjI0LCAwLjUyOCwwLjk5MkMgNDczLjY2NCwyMTQuMTQ0LCA0ODAuMDAsMTk1LjY0OCwgNDgwLjAwLDE3Ni4wMEMgNDgwLjAwLDE1MS4zOTIsIDQ3MC4wNjQsMTI4LjU2LCA0NTIuNDMyLDExMi4wMHoiIGRhdGEtdGFncz0idmFsbGV0IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZTAyZDsiIGQ9Ik0gMzUxLjIxNiw0NjEuNjBjLTEzMS4yMzIsNTIuNTQ0LTI4MC4yNC0xMS4yMzItMzMyLjgwLTE0Mi40OAoJCWMtNTIuNTc2LTEzMS4yNjQsIDExLjIzMi0yODAuMjg4LCAxNDIuNDgtMzMyLjgzMmMgMTMxLjI0OC01Mi41NiwgMjgwLjI1NiwxMS4yMzIsIDMzMi44MTYsMTQyLjQ4QyA1NDYuMjg4LDI2MC4wMzIsIDQ4Mi40NjQsNDA5LjAyNCwgMzUxLjIxNiw0NjEuNjB6CgkJIE0gMTcyLjgwLDE1Ljk4NEMgNTguMTQ0LDYxLjkwNCwgMi4yMDgsMTkyLjUyOCwgNDguMTEyLDMwNy4yMGMgNDUuOTIsMTE0LjY1NiwgMTc2LjU2LDE3MC42MDgsIDI5MS4yMzIsMTI0LjY3MmMgMTE0LjY1Ni00NS45MDQsIDE3MC41OTItMTc2LjU0NCwgMTI0LjY4OC0yOTEuMjAKCQlDIDQxOC4wOTYsMjYuMDAsIDI4Ny40NzItMjkuOTIsIDE3Mi44MCwxNS45ODR6TSAyNjcuOTg0LDI1My42NDhjLTE2LjQwLDYuNTc2LTM1LjA0LTEuNDA4LTQxLjYxNi0xNy44MDgKCQlzIDEuNDA4LTM1LjAyNCwgMTcuNzkyLTQxLjYwYyAxNi40MC02LjU3NiwgMzUuMDU2LDEuNDA4LCA0MS42MTYsMTcuNzkyQyAyOTIuMzM2LDIyOC40MzIsIDI4NC4zNjgsMjQ3LjA1NiwgMjY3Ljk4NCwyNTMuNjQ4eiBNIDI1MC4xMTIsMjA5LjA3MgoJCWMtOC4xOTIsMy4yOTYtMTIuMTc2LDEyLjYwOC04LjkxMiwyMC44MTZjIDMuMjk2LDguMTkyLCAxMi42MjQsMTIuMTc2LCAyMC44MTYsOC45MTJjIDguMTc2LTMuMjgsIDEyLjE2LTEyLjYwOCwgOC44OTYtMjAuODE2CgkJQyAyNjcuNjMyLDIwOS43OTIsIDI1OC4zMDQsMjA1LjgwOCwgMjUwLjExMiwyMDkuMDcyek0gMjkxLjc0NCwzMTMuMDRjLTQ5LjIxNiwxOS43MTItMTA1LjA4OC00LjIyNC0xMjQuODAtNTMuNDI0CgkJYy0xOS43MTItNDkuMjE2LCA0LjIyNC0xMDUuMDg4LCA1My40MjQtMTI0LjgwYyA0OS4yMTYtMTkuNzEyLCAxMDUuMDg4LDQuMjA4LCAxMjQuODAsNTMuNDI0UyAzNDAuOTc2LDI5My4zNDQsIDI5MS43NDQsMzEzLjA0eiBNIDIzMi4yODgsMTY0LjUyOAoJCWMtMzIuNzY4LDEzLjEwNC00OC43MzYsNTAuNDQ4LTM1LjYzMiw4My4yMGMgMTMuMTIsMzIuNzUyLCA1MC40MzIsNDguNzM2LCA4My4xODQsMzUuNjMyYyAzMi43ODQtMTMuMTIsIDQ4Ljc1Mi01MC40NjQsIDM1LjY2NC04My4yMTYKCQlDIDMwMi4zNjgsMTY3LjM5MiwgMjY1LjA0LDE1MS4zOTIsIDIzMi4yODgsMTY0LjUyOHpNIDM3NC45MTIsMTc2LjM1MiBMIDM3NC44OCwxNzYuMzUyIEMgMzYxLjgwOCwxNDMuNzI4IDMzNi43NTIsMTE5LjQ1NiAzMDYuNzg0LDEwNi40OTYgQyAzMDYuNjcyLDEwNi40NDggMzA2LjYwOCwxMDYuMzIgMzA2LjQ0OCwxMDYuMjU2IEMgMzAyLjM4NCwxMDQuNTI4IDI5Ny42OTYsMTA2LjQwIDI5NS45NTIsMTEwLjQ4IEMgMjk0LjIwOCwxMTQuNTI4IDI5Ni4xMTIsMTE5LjIzMiAzMDAuMTQ0LDEyMC45NiBDIDMyNi40OCwxMzIuMjQgMzQ4LjU0NCwxNTMuNTY4IDM2MC4wNDgsMTgyLjMwNCBMIDM2MC4wNDgsMTgyLjI4OCBDIDM2MS42OTYsMTg2LjQwIDM2Ni4zNTIsMTg4LjQwIDM3MC40NDgsMTg2LjczNiBDIDM3NC41NDQsMTg1LjEwNCAzNzYuNTQ0LDE4MC40NDggMzc0LjkxMiwxNzYuMzUyIFpNIDQyOS44NCwxNjIuOTc2IEMgNDMzLjkzNiwxNjEuMzI4IDQzNS45MzYsMTU2LjY3MiA0MzQuMzA0LDE1Mi41NzYgQyA0MTQuNzA0LDEwMy42NDggMzc3LjA4OCw2Ny4yMTYgMzMyLjE0NCw0Ny44MDggQyAzMzEuOTUyLDQ3LjcyOCAzMzEuODA4LDQ3LjU1MiAzMzEuNjE2LDQ3LjQ1NiBDIDMyNy41NTIsNDUuNzI4IDMyMi44NjQsNDcuNTg0IDMyMS4xMiw1MS42NjQgQyAzMTkuMzc2LDU1LjcyOCAzMjEuMjgsNjAuNDMyIDMyNS4zMTIsNjIuMTYgQyAzNjYuNzIsNzkuODg4IDQwMS4zNzYsMTEzLjQwOCA0MTkuNDQsMTU4LjUyOCBDIDQyMS4wODgsMTYyLjYyNCA0MjUuNzQ0LDE2NC42MjQgNDI5Ljg0LDE2Mi45NzYgWk0gNDAwLjEyOCwxNzQuODY0IEMgNDA0LjIyNCwxNzMuMjE2IDQwNi4yMjQsMTY4LjU2IDQwNC41OTIsMTY0LjQ2NCBDIDM4OC4yNTYsMTIzLjY4IDM1Ni45MTIsOTMuMzQ0IDMxOS40NzIsNzcuMTY4IEMgMzE5LjI5Niw3Ny4wNzIgMzE5LjIwLDc2LjkyOCAzMTkuMDQsNzYuODQ4IEMgMzE0Ljk3Niw3NS4xMiAzMTAuMjg4LDc2Ljk5MiAzMDguNTQ0LDgxLjA1NiBDIDMwNi44MCw4NS4xMiAzMDguNzA0LDg5LjgyNCAzMTIuNzY4LDkxLjU2OCBMIDMxMi43MzYsOTEuNTY4IEMgMzQ2LjY0LDEwNi4wOCAzNzQuOTc2LDEzMy40ODggMzg5LjcyOCwxNzAuNDE2IEMgMzkxLjM3NiwxNzQuNTI4IDM5Ni4wMzIsMTc2LjUxMiA0MDAuMTI4LDE3NC44NjQgWk0gMjE2LjIwOCwzMzcuNDA4IEMgMjE3Ljk1MiwzMzMuMzI4IDIxNi4wNjQsMzI4LjY0IDIxMi4wMCwzMjYuODggQyAxODUuNjY0LDMxNS42MTYgMTYzLjYwLDI5NC4yNzIgMTUyLjExMiwyNjUuNTY4IEwgMTUyLjA5NiwyNjUuNTY4IEMgMTUwLjQ2NCwyNjEuNDcyIDE0NS44MDgsMjU5LjQ3MiAxNDEuNjk2LDI2MS4xMiBDIDEzNy42MCwyNjIuNzY4IDEzNS42MCwyNjcuNDA4IDEzNy4yNDgsMjcxLjUyIEwgMTM3LjI2NCwyNzEuNTIgQyAxNTAuMzIsMzA0LjEyOCAxNzUuMzkyLDMyOC40MTYgMjA1LjM2LDM0MS4zNzYgQyAyMDUuNDcyLDM0MS40MjQgMjA1LjU1MiwzNDEuNTUyIDIwNS42OTYsMzQxLjYwIEMgMjA5Ljc2LDM0My4zNDQgMjE0LjQ2NCwzNDEuNDg4IDIxNi4yMDgsMzM3LjQwOCBaTSAxOTEuMDA4LDM5Ni4yNCBDIDE5Mi43NTIsMzkyLjE3NiAxOTAuODY0LDM4Ny40ODggMTg2LjgxNiwzODUuNzI4IEMgMTQ1LjQwOCwzNjguMDAgMTEwLjc2OCwzMzQuNDggOTIuNjg4LDI4OS4zNzYgQyA5MS4wNCwyODUuMjY0IDg2LjM4NCwyODMuMjggODIuMjg4LDI4NC45MjggQyA3OC4xNzYsMjg2LjU2IDc2LjE3NiwyOTEuMjE2IDc3Ljg0LDI5NS4zNDQgQyA5Ny40NCwzNDQuMjcyIDEzNS4wNCwzODAuNjg4IDE4MC4wMCw0MDAuMTEyIEMgMTgwLjE2LDQwMC4xOTIgMTgwLjMwNCw0MDAuMzY4IDE4MC40OTYsNDAwLjQ0OCBDIDE4NC41Niw0MDIuMTc2IDE4OS4yNjQsNDAwLjMwNCAxOTEuMDA4LDM5Ni4yNCBaTSAxOTkuMzkyLDM1Ni4zMzYgTCAxOTkuMzkyLDM1Ni4yODggQyAxNjUuNTIsMzQxLjc5MiAxMzcuMTY4LDMxNC4zNjggMTIyLjQwLDI3Ny40NCBDIDEyMC43NTIsMjczLjMyOCAxMTYuMDk2LDI3MS4zNiAxMTIuMDAsMjcyLjk5MiBDIDEwNy45MiwyNzQuNjU2IDEwNS45MDQsMjc5LjI5NiAxMDcuNTY4LDI4My40MDggQyAxMjMuODg4LDMyNC4xNzYgMTU1LjIzMiwzNTQuNTQ0IDE5Mi42ODgsMzcwLjczNiBDIDE5Mi44NDgsMzcwLjgwIDE5Mi45NDQsMzcwLjk2IDE5My4xMDQsMzcxLjAyNCBDIDE5Ny4xNjgsMzcyLjc2OCAyMDEuODcyLDM3MC44OCAyMDMuNjE2LDM2Ni44MzIgQyAyMDUuMzYsMzYyLjc1MiAyMDMuNDU2LDM1OC4wNjQgMTk5LjQwOCwzNTYuMzM2IFoiIGRhdGEtdGFncz0idnluaWwiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hlMDJlOyIgZD0iTSAzOTcuMzEyLDI5Ni44OEMgMzk0LjMzNiwzMDEuMzI4LCAzODkuMzQ0LDMwNC4wMCwgMzg0LjAwLDMwNC4wMGwtMTYuMDAsMC4wMCBjLTguODQ4LDAuMDAtMTYuMDAtNy4xNTItMTYuMDAtMTYuMDBsMC4wMC05Ni4wMCBjMC4wMC04Ljg0OCwgNy4xNTItMTYuMDAsIDE2LjAwLTE2LjAwbCA2NC4wMCwwLjAwIAoJCWMgOC44NDgsMC4wMCwgMTYuMDAsNy4xNTIsIDE2LjAwLDE2LjAwbDAuMDAsMjQuMDAgYzAuMDAsMy4xNTItMC45NDQsNi4yNTYtMi42ODgsOC44OEwgMzk3LjMxMiwyOTYuODh6IE0gNDMyLjAwLDE5Mi4wMGwtNjQuMDAsMC4wMCBsMC4wMCw5Ni4wMCBsIDE2LjAwLDAuMDAgbCA0OC4wMC03Mi4wMEwgNDMyLjAwLDE5Mi4wMCB6TSA1MDMuOTM2LDIzNC42MjRsLTY0LjAwLDk2LjAwQyA0MzEuMDA4LDM0NC4wMTYsIDQxNi4wNjQsMzUyLjAwLCA0MDAuMDAsMzUyLjAwbC02NC4wMCwwLjAwIEwgMzM2LjAwLDM4NC4wMCBjMC4wMCwyNi40NjQtMjEuNTM2LDQ4LjAwLTQ4LjAwLDQ4LjAwTCA0OC4wMCw0MzIuMDAgQyAyMS41MzYsNDMyLjAwLDAuMDAsNDEwLjQ2NCwwLjAwLDM4NC4wMGwwLjAwLTE3Ni4wMCAKCQljMC4wMC0yNi40NjQsIDIxLjUzNi00OC4wMCwgNDguMDAtNDguMDBsMC4wMCwwLjAwIGwwLjAwLTQ4LjAwIGMwLjAwLTI2LjQ2NCwgMjEuNTM2LTQ4LjAwLCA0OC4wMC00OC4wMGwgMTguMjcyLDAuMDAgYyA3LjE1Mi0yNy41MzYsIDMyLjAwLTQ4LjAwLCA2MS43NDQtNDguMDBjIDI5LjcxMiwwLjAwLCA1NC41NiwyMC40NjQsIDYxLjcxMiw0OC4wMGwgODQuNTEyLDAuMDAgCgkJYyA3LjE1Mi0yNy41MzYsIDMyLjAwLTQ4LjAwLCA2MS43NDQtNDguMDBjIDI5LjcxMiwwLjAwLCA1NC41NiwyMC40NjQsIDYxLjcxMiw0OC4wMEwgNDY0LjAwLDY0LjAwIGMgMjYuNDY0LDAuMDAsIDQ4LjAwLDIxLjUzNiwgNDguMDAsNDguMDBsMC4wMCw5Ni4wMCBDIDUxMi4wMCwyMTcuNTA0LCA1MDkuMjE2LDIyNi43MiwgNTAzLjkzNiwyMzQuNjI0eiBNIDQ4LjAwLDE5Mi4wMAoJCWMtOC44MzIsMC4wMC0xNi4wMCw3LjE1Mi0xNi4wMCwxNi4wMEwgMzIuMDAsMzg0LjAwIGMwLjAwLDguODQ4LCA3LjE2OCwxNi4wMCwgMTYuMDAsMTYuMDBsIDI0MC4wMCwwLjAwIGMgOC44NDgsMC4wMCwgMTYuMDAtNy4xNTIsIDE2LjAwLTE2LjAwbDAuMDAtMzIuMDAgbDAuMDAtMzIuMDAgbDAuMDAtMTEyLjAwIGMwLjAwLTguODQ4LTcuMTUyLTE2LjAwLTE2LjAwLTE2LjAwTCA0OC4wMCwxOTIuMDAgeiBNIDE3Ni4wMTYsNDguMDAKCQljLTE3LjY4LDAuMDAtMzIuMDAsMTQuMzM2LTMyLjAwLDMyLjAwcyAxNC4zMiwzMi4wMCwgMzIuMDAsMzIuMDBjIDE3LjY2NCwwLjAwLCAzMi4wMC0xNC4zMzYsIDMyLjAwLTMyLjAwUyAxOTMuNjY0LDQ4LjAwLCAxNzYuMDE2LDQ4LjAweiBNIDM4NC4wMCw0OC4wMGMtMTcuNjgsMC4wMC0zMi4wMCwxNC4zMzYtMzIuMDAsMzIuMDBzIDE0LjMyLDMyLjAwLCAzMi4wMCwzMi4wMAoJCWMgMTcuNjY0LDAuMDAsIDMyLjAwLTE0LjMzNiwgMzIuMDAtMzIuMDBTIDQwMS42NjQsNDguMDAsIDM4NC4wMCw0OC4wMHogTSA0ODAuMDAsMTEyLjAwYzAuMDAtOC44NDgtNy4xNTItMTYuMDAtMTYuMDAtMTYuMDBsLTE4LjI4OCwwLjAwIGMtNy4xNTIsMjcuNTM2LTMyLjAwLDQ4LjAwLTYxLjcxMiw0OC4wMGMtMjkuNzQ0LDAuMDAtNTQuNTkyLTIwLjQ2NC02MS43NDQtNDguMDAKCQlsLTg0LjUxMiwwLjAwIGMtNy4xNTIsMjcuNTM2LTMyLjAwLDQ4LjAwLTYxLjcxMiw0OC4wMGMtMjkuNzQ0LDAuMDAtNTQuNTkyLTIwLjQ2NC02MS43NDQtNDguMDBMIDk2LjAwLDk2LjAwIGMtOC44MzIsMC4wMC0xNi4wMCw3LjE1Mi0xNi4wMCwxNi4wMGwwLjAwLDQ4LjAwIGwgMjA4LjAwLDAuMDAgYyAyNi40NjQsMC4wMCwgNDguMDAsMjEuNTM2LCA0OC4wMCw0OC4wMGwwLjAwLDExMi4wMCBsIDY0LjAwLDAuMDAgCgkJYyA1LjM0NCwwLjAwLCAxMC4zMzYtMi42NzIsIDEzLjMxMi03LjEybCA2NC4wMC05Ni4wMEMgNDc5LjA1NiwyMTQuMjU2LCA0ODAuMDAsMjExLjE1MiwgNDgwLjAwLDIwOC4wMEwgNDgwLjAwLDExMi4wMCB6IiBkYXRhLXRhZ3M9InRydWNrIiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZTAyZjsiIGQ9Ik0gMjQ4LjAwLDQ4MC4wMEMgMTExLjAyNCw0ODAuMDAsMC4wMCwzNjguOTc2LDAuMDAsMjMyLjAwUyAxMTEuMDI0LTE2LjAwLCAyNDguMDAtMTYuMDBTIDQ5Ni4wMCw5NS4wMjQsIDQ5Ni4wMCwyMzIuMDBTIDM4NC45NzYsNDgwLjAwLCAyNDguMDAsNDgwLjAweiBNIDQ2My42MCwyNDAuMDAKCWwtOTUuOTM2LDAuMDAgYy0wLjg4LDM1LjQ0LTcuMTg0LDY5LjI5Ni0xOC4zNjgsMTAwLjI4OGMgMjEuNjAsOS4wMDgsIDQxLjU2OCwyMC45OTIsIDU5Ljc3NiwzNS4xNTJDIDQ0MS40NCwzMzkuMTA0LCA0NjEuNjgsMjkxLjkyLCA0NjMuNjAsMjQwLjAwegoJIE0gMjM5LjE1MiwxNi40NDhjLTI2LjU5MiwyMi4xNDQtNDguODk2LDUwLjg5Ni02NS4yMTYsODQuMjg4YyAyMC45NDQsNi41NDQsIDQzLjEzNiwxMC4xMjgsIDY2LjA2NCwxMC44NjRsMC4wMC05NS4xODQgCglDIDIzOS43MTIsMTYuNDE2LCAyMzkuNDQsMTYuNDMyLCAyMzkuMTUyLDE2LjQ0OHogTSAyNTYuODE2LDQ0Ny41NTJjIDMwLjE3Ni0yNS4xMiwgNTQuODAtNTguNzY4LCA3MS40NTYtOTguMDE2Yy0yMi44MTYtNy43OTItNDcuMDU2LTEyLjMyLTcyLjI4OC0xMy4xMgoJTCAyNTUuOTg0LDQ0Ny42MCBDIDI1Ni4yODgsNDQ3LjU4NCwgMjU2LjU0NCw0NDcuNTY4LCAyNTYuODE2LDQ0Ny41NTJ6IE0gMjgzLjQ3Miw0NDQuODMyYyA0NC4xNi03LjM0NCwgODMuNzc2LTI3Ljk2OCwgMTE0LjYyNC01Ny44MjQKCWMtMTYuNzUyLTEyLjg0OC0zNS4wNTYtMjMuNzI4LTU0Ljg0OC0zMS45NjhDIDMyOC42ODgsMzg5LjU1MiwgMzA4LjI1Niw0MjAuMDY0LCAyODMuNDcyLDQ0NC44MzJ6IE0gMjQwLjAwLDQ0Ny42MGwwLjAwLTExMS4xODQgCgljLTI1LjIzMiwwLjgxNi00OS40ODgsNS4zMjgtNzIuMjg4LDEzLjEyYyAxNi42NTYsMzkuMjQ4LCA0MS4yOCw3Mi44OTYsIDcxLjQ1Niw5OC4wMTZDIDIzOS40NTYsNDQ3LjU2OCwgMjM5LjcxMiw0NDcuNTg0LCAyNDAuMDAsNDQ3LjYweiBNIDE1Mi43MzYsMzU1LjAyNAoJYy0xOS43Niw4LjI0LTM4LjA4LDE5LjEyLTU0LjgzMiwzMS45NjhjIDMwLjgzMiwyOS44NTYsIDcwLjQ2NCw1MC40OCwgMTE0LjYyNCw1Ny44MjRDIDE4Ny43MjgsNDIwLjA2NCwgMTY3LjMxMiwzODkuNTUyLCAxNTIuNzM2LDM1NS4wMjR6IE0gMTYxLjY4LDMzNC43ODQKCUMgMTg2LjM1MiwzMjYuMjI0LCAyMTIuNjQsMzIxLjIzMiwgMjQwLjAwLDMyMC40MEwgMjQwLjAwLDI0MC4wMCBMIDE0NC4zMzYsMjQwLjAwIEMgMTQ1LjIwLDI3My41MDQsIDE1MS4xMzYsMzA1LjUyLCAxNjEuNjgsMzM0Ljc4NHogTSAyNDAuMDAsMjI0LjAwbDAuMDAtOTYuNDAgCgljLTI1LjIzMi0wLjc2OC00OS42MzItNC44OTYtNzIuNjI0LTEyLjMwNEMgMTUzLjUyLDE0OC4yODgsIDE0NS4zNDQsMTg1LjA0LCAxNDQuMzM2LDIyNC4wMEwgMjQwLjAwLDIyNC4wMCB6IE0gMjEyLjUyOCwxOS4xNjgKCWMtMzkuNTY4LDYuNTc2LTc1LjUwNCwyMy44MDgtMTA0LjcyLDQ4LjgzMmMgMTUuNzYsMTAuOTI4LCAzMi44MCwyMC4xNzYsIDUxLjAwOCwyNy4yMEMgMTcyLjc2OCw2Ni4yNzIsIDE5MS4wMjQsNDAuNTkyLCAyMTIuNTI4LDE5LjE2OHogTSAyNTYuMDAsMTYuNDAKCWwwLjAwLDk1LjE4NCBjIDIyLjkxMi0wLjczNiwgNDUuMTItNC4zMiwgNjYuMDY0LTEwLjg2NGMtMTYuMzM2LTMzLjM5Mi0zOC42MjQtNjIuMTQ0LTY1LjIxNi04NC4yODhDIDI1Ni41NzYsMTYuNDMyLCAyNTYuMjg4LDE2LjQxNiwgMjU2LjAwLDE2LjQwegoJIE0gMzM3LjE4NCw5NS4yMGMgMTguMTkyLTcuMDI0LCAzNS4yMTYtMTYuMjg4LCA1MS4wMDgtMjcuMjBjLTI5LjIxNi0yNS4wMDgtNjUuMTUyLTQyLjI1Ni0xMDQuNzItNDguODMyQyAzMDQuOTc2LDQwLjU5MiwgMzIzLjIxNiw2Ni4yNzIsIDMzNy4xODQsOTUuMjB6CgkgTSAzMjguNjI0LDExNS4yOTZjLTIzLjAwOCw3LjQwOC00Ny40MDgsMTEuNTM2LTcyLjYyNCwxMi4zMDRMIDI1Ni4wMCwyMjQuMDAgbCA5NS42NjQsMC4wMCBDIDM1MC42NTYsMTg1LjA0LCAzNDIuNDY0LDE0OC4yODgsIDMyOC42MjQsMTE1LjI5NnogTSAyNTYuMDAsMjQwLjAwTCAyNTYuMDAsMzIwLjQwIAoJYyAyNy4zNDQsMC44MzIsIDUzLjYzMiw1LjgwOCwgNzguMzIsMTQuMzY4YyAxMC41MjgtMjkuMjY0LCAxNi40NjQtNjEuMjgsIDE3LjM0NC05NC43ODRMIDI1Ni4wMCwyMzkuOTg0IHogTSA4Ni45NDQsMzc1LjQ0QyAxMDUuMTUyLDM2MS4yOCwgMTI1LjEyLDM0OS4yOTYsIDE0Ni43MDQsMzQwLjI4OAoJQyAxMzUuNTIsMzA5LjI5NiwgMTI5LjIxNiwyNzUuNDQsIDEyOC4zMzYsMjQwLjAwTCAzMi40MCwyNDAuMDAgQyAzNC4zMiwyOTEuOTIsIDU0LjU2LDMzOS4xMDQsIDg2Ljk0NCwzNzUuNDR6IE0gMzIuNDAsMjI0LjAwbCA5NS45MzYsMC4wMCAKCWMgMC45OTItNDAuODgsIDkuNTM2LTc5LjQ4OCwgMjQuMDQ4LTExNC4xOTJjLTIwLjI3Mi03LjkwNC0zOS4xNjgtMTguNDMyLTU2LjYwOC0zMC44OTZDIDU4LjIwOCwxMTYuMzA0LCAzNC40OTYsMTY3LjQyNCwgMzIuNDAsMjI0LjAweiBNIDQwMC4yMjQsNzguOTI4CgljLTE3LjQ0LDEyLjQ0OC0zNi4zMzYsMjIuOTkyLTU2LjYyNCwzMC44OTZjIDE0LjUyOCwzNC43MDQsIDIzLjA1Niw3My4zMTIsIDI0LjA2NCwxMTQuMTkybCA5NS45MzYsMC4wMCBDIDQ2MS41MDQsMTY3LjQyNCwgNDM3Ljc3NiwxMTYuMzA0LCA0MDAuMjI0LDc4LjkyOHoiIGRhdGEtdGFncz0id29ybGQiIC8+CjxnbHlwaCBjbGFzcz0iaGlkZGVuIiB1bmljb2RlPSImI3hmMDAwOyIgZD0iTTAsNDgwTCA1MTIgLTMyTDAgLTMyIHoiIGhvcml6LWFkdi14PSIwIiAvPgo8L2ZvbnQ+PC9kZWZzPjwvc3ZnPg==) format('svg'),
+		 url(data:font/ttf;charset=utf-8;base64,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) format('truetype');
+	font-weight: normal;
+	font-style: normal;
+}
+
+/* Use the following CSS code if you want to use data attributes for inserting your icons */
+[data-icon]:before {
+	font-family: 'linecons';
+	content: attr(data-icon);
+	speak: none;
+	font-weight: normal;
+	line-height: 1;
+	-webkit-font-smoothing: antialiased;
+}
+
+/* Use the following CSS code if you want to have a class per icon */
+[class^="li_"]:before, [class*=" li_"]:before {
+	font-family: 'linecons';
+	font-style: normal;
+	speak: none;
+	font-weight: normal;
+	line-height: 1;
+	-webkit-font-smoothing: antialiased;
+}
+.li_heart:before {
+	content: "\e000";
+}
+.li_cloud:before {
+	content: "\e001";
+}
+.li_star:before {
+	content: "\e002";
+}
+.li_tv:before {
+	content: "\e003";
+}
+.li_sound:before {
+	content: "\e004";
+}
+.li_video:before {
+	content: "\e005";
+}
+.li_trash:before {
+	content: "\e006";
+}
+.li_user:before {
+	content: "\e007";
+}
+.li_key:before {
+	content: "\e008";
+}
+.li_search:before {
+	content: "\e009";
+}
+.li_settings:before {
+	content: "\e00a";
+}
+.li_camera:before {
+	content: "\e00b";
+}
+.li_tag:before {
+	content: "\e00c";
+}
+.li_lock:before {
+	content: "\e00d";
+}
+.li_bulb:before {
+	content: "\e00e";
+}
+.li_pen:before {
+	content: "\e00f";
+}
+.li_diamond:before {
+	content: "\e010";
+}
+.li_display:before {
+	content: "\e011";
+}
+.li_location:before {
+	content: "\e012";
+}
+.li_eye:before {
+	content: "\e013";
+}
+.li_bubble:before {
+	content: "\e014";
+}
+.li_stack:before {
+	content: "\e015";
+}
+.li_cup:before {
+	content: "\e016";
+}
+.li_phone:before {
+	content: "\e017";
+}
+.li_news:before {
+	content: "\e018";
+}
+.li_mail:before {
+	content: "\e019";
+}
+.li_like:before {
+	content: "\e01a";
+}
+.li_photo:before {
+	content: "\e01b";
+}
+.li_note:before {
+	content: "\e01c";
+}
+.li_clock:before {
+	content: "\e01d";
+}
+.li_paperplane:before {
+	content: "\e01e";
+}
+.li_params:before {
+	content: "\e01f";
+}
+.li_banknote:before {
+	content: "\e020";
+}
+.li_data:before {
+	content: "\e021";
+}
+.li_music:before {
+	content: "\e022";
+}
+.li_megaphone:before {
+	content: "\e023";
+}
+.li_study:before {
+	content: "\e024";
+}
+.li_lab:before {
+	content: "\e025";
+}
+.li_food:before {
+	content: "\e026";
+}
+.li_t-shirt:before {
+	content: "\e027";
+}
+.li_fire:before {
+	content: "\e028";
+}
+.li_clip:before {
+	content: "\e029";
+}
+.li_shop:before {
+	content: "\e02a";
+}
+.li_calendar:before {
+	content: "\e02b";
+}
+.li_vallet:before {
+	content: "\e02c";
+}
+.li_vynil:before {
+	content: "\e02d";
+}
+.li_truck:before {
+	content: "\e02e";
+}
+.li_world:before {
+	content: "\e02f";
+}
Index: branches/testa/css/style3.css
===================================================================
--- branches/testa/css/style3.css	(revision 23)
+++ branches/testa/css/style3.css	(revision 23)
@@ -0,0 +1,7 @@
+body {
+    font-family: "Lato", sans-serif;
+    margin:0 auto;
+    background-color: #070181;
+}
+
+
Index: branches/testa/css/tab.css
===================================================================
--- branches/testa/css/tab.css	(revision 23)
+++ branches/testa/css/tab.css	(revision 23)
@@ -0,0 +1,46 @@
+ul {
+    list-style: none;
+    margin: 0;
+    padding: 0;
+
+}
+/*
+ul .tab-group {
+    list-style: none;
+    margin: 0;
+    padding: 0;
+
+}
+*/
+.tab-group{
+    display: flex;
+    justify-content: center;
+/*    height: var(root-height);*/
+}
+.tab{
+    flex-grow: 1;
+/*    padding:5px;*/
+    padding:0px;
+    list-style:none;
+    border:solid 1px #CCC;
+    text-align:center;
+    cursor:pointer;
+}
+.panel-group{
+    height:var(part-height);
+    border:solid 1px #CCC;
+    border-top:none;
+    background:#eee;
+}
+.panel{
+    display:none;
+}
+.tab.is-active{
+    background: Highlight;
+    color: HighlightText;
+    transition: all 0.2s ease-out;
+}
+.panel.is-show{
+    display:block;
+}
+
Index: branches/testa/index.php
===================================================================
--- branches/testa/index.php	(revision 23)
+++ branches/testa/index.php	(revision 23)
@@ -0,0 +1,134 @@
+<?php
+  header("Access-Control-Allow-Origin: *");
+?>
+<!DOCTYPE html>
+<html lang="en">
+  <head>
+    <meta charset="UTF-8">
+    <meta name="viewport" content="width=device-width, initial-scale=1">
+    <title>md2site</title>
+
+    <link rel="stylesheet" href="./css/style.css" />
+    <link href='https://fonts.googleapis.com/css?family=Varela+Round' rel='stylesheet' type='text/css'>
+    <link rel="stylesheet" href="css/style-3.css">
+    <link rel="stylesheet" href="css/tab.css">
+    <link rel="stylesheet" href="css/menu.css">
+    <link href="https://code.jquery.com/ui/1.12.1/themes/base/jquery-ui.css" rel="stylesheet" />
+    <script src="https://code.jquery.com/jquery-3.2.1.min.js"></script>
+    <script src="https://code.jquery.com/ui/1.12.1/jquery-ui.min.js"></script>
+    <script src="https://cdnjs.cloudflare.com/ajax/libs/ace/1.4.5/ace.js"></script>
+    <script src="js/remote.js"></script>
+    <script src="js/menux.js"></script>
+    <script src="js/storage.js"></script>
+    <script src="js/bookmarkmgr.js"></script>
+    <script src="js/bookmark.js"></script>
+
+    <!--    <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery.ui-contextmenu/1.18.1/jquery.ui-contextmenu.min.js" integrity="sha256-cI6Q7epHX696CtqUt0dJouTIkNh0w67o5YOhUZygI/s=" crossorigin="anonymous"></script> -->
+  </head>
+
+  <body>
+    <ul class="tab-group">
+      <li class="tab is-active">data</li>
+      <li class="tab">setting</li>
+      <li class="tab">output</li>
+    </ul>
+    <div id="all" class="panel-group">
+      <div id="area-data" class="panel is-show">
+	<div id="data-menubar">
+	  <ul class="nav">
+	    <li><a href="#">File</a>
+	      <ul>
+		<li><a onclick="upload_to_host('data')">Save on host</a></li>
+		<li><a onclick="download_cmd('part')">Download</a></li>
+		<li><a class="disabled" >-Rename</a></li>
+		<li><a class="disabled" >-Move</a></li>
+		<li><a class="disabled" >-Delete</a></li>
+		<li><a class="disabled" >-Duplicate</a></li>
+	      </ul>
+	    </li>
+	    <li><a href="#">Dir</a>
+	      <ul>
+		<li><a class="disabled" href="#">-Create</a></li>
+		<li><a class="disabled" href="#">-Rename</a></li>
+		<li><a class="disabled" href="#">-Move</a></li>
+		<li><a class="disabled" href="#">-Delete</a></li>
+		<li><a class="disabled" href="#">-Duplicate</a></li>
+	      </ul>
+	    </li>
+	    <li><a href="#">Build</a>
+	      <ul>
+		<li><a href="#">Build</a></li>
+		<li><a href="#" onclick="get_filelist()">Get FileList</a></li>
+		<li><a href="#" onclick="update_filelist()">Forced to get FileList</a></li>
+		<li><a href="#" onclick="restore_filelist(0, '/rtk/fmp_kernel')">Restore FileList</a></li>
+	      </ul>
+	    </li>
+	    <li class="disabled"><a href="#">History</a>
+	      <ul>
+              </ul>
+
+	    <li><a href="#">Bookmark</a>
+              <ul id="data-bookmark">
+	      </ul>
+	    </li>
+	  </ul>
+	</div>
+	<div id="data-bar">
+	  <select id="data-select-host">
+	  </select>
+
+	  <textarea id="data-editor-t" name="data-editor-t"></textarea>
+
+	  <input type="text" id="data-filelist_key" value="/" />
+	  <label id="data-bookmark_label">
+	    <input type="checkbox" id="data-bookmark_op" value="2" onclick="bookmark_op('data')">
+	    BK
+	  </label>
+	  <a id="down-download" class="xxbutton" role="button" download="some.txt" >DL</a>
+	</div>
+	<div id="data-side"  ></div>
+	<div id="data-work">
+	  <div id="data-editor" style="height: 600px"></div>
+<!--	  <div id="data-editor" ></div> -->
+	</div>
+      </div>
+      <div id="area-setting" class="panel">
+	<div id="setting-menubar"></div>
+	<div id="setting-bar">
+	  <textarea id="setting-editor" name="setting-editor"></textarea>
+	</div>
+	<div id="setting-side"></div>
+	<div id="setting-work">
+	  <div id="setting-editor"></div>
+	</div>
+      </div>
+      <div id="area-output" class="panel">
+	<div id="output-menubar"></div>
+	<div id="output-bar">
+	  <textarea id="output-editor" name="output-editor"></textarea>
+	</div>
+	<div id="output-side"></div>
+	<div id="output-work">
+	  <div id="output-editor"></div>
+        </div>
+      </div>
+    </div>
+
+    <div id="bookmarkDlg" title="Bookmark registration">
+      <table>
+	<tr>
+	  <th>display name</th>
+	  <td><input type="text" id="bookmark_displayname" size="10" maxlength="10"></td>
+	</tr>   
+	<tr>
+	  <th>path</th>
+	  <td><input type="text" id="bookmark_path" size="20" maxlength="50" disabled/></td>
+	</tr>
+      </table>
+      
+    </div>
+    <script src="js/main.js"></script>
+    <script src="js/tab.js"></script>
+    <script src="js/topmenu.js"></script>
+  </body>
+</html>
Index: branches/testa/js/bookmark.js
===================================================================
--- branches/testa/js/bookmark.js	(revision 23)
+++ branches/testa/js/bookmark.js	(revision 23)
@@ -0,0 +1,15 @@
+class Bookmark {
+    constructor( path , max_display_name_length, display_name = null ){
+	this.path = path
+	if( display_name == null ){
+	    this.display_name = path.substr(0, max_display_name_length)
+	}
+	else{
+	    this.display_name = display_name
+	}
+    }
+
+    display_name() {
+	return this.display_name
+    }
+}
Index: branches/testa/js/bookmarkmgr.js
===================================================================
--- branches/testa/js/bookmarkmgr.js	(revision 23)
+++ branches/testa/js/bookmarkmgr.js	(revision 23)
@@ -0,0 +1,48 @@
+class BookmarkMgr {
+    constructor( max_display_name_length ) {
+	this.paths = []
+	this.items = {}
+	this.max_display_name_length = max_display_name_length
+    }
+
+    add( path , display_name ){
+	let result = this.paths.indexOf( path )
+	if( result < 0 ){
+	    this.paths.push( path )
+	    this.items[ path ] = new Bookmark( path , this.max_display_name_length , display_name )
+	}
+	return this.items[ path ]
+    }
+
+    remove( path ){
+	let result = this.paths.indexOf( path )
+	if( result >= 0 ){
+	    delete this.items[ path ]
+	    delete this.paths[ result ]
+	}
+    }
+
+    display_name( path ){
+	let result = this.paths.indexOf( path )
+	let disp = null
+	if( result >= 0 ){
+	    disp = this.items[ path ].display_name
+	}
+	return disp
+    }
+
+    get_paths(){
+	return this.paths
+    }
+
+    get_display_names(){
+	const array = thils.paths
+	return array.map( function( path ){ 
+	    return this.items[ path ].display_name
+	} )
+    }
+
+    get_restricted_display_name( path ){
+	return path.substr( -this.max_display_name_length )
+    }
+}
Index: branches/testa/js/context-menu.js
===================================================================
--- branches/testa/js/context-menu.js	(revision 23)
+++ branches/testa/js/context-menu.js	(revision 23)
@@ -0,0 +1,109 @@
+function contextmenux2( menu_sel ) {
+	$(menu_sel).contextmenu({
+		delegate: ".hasmenu",
+		hide: { effect: "explode", duration: "slow" },
+		menu: "#options",
+//        position: {my: "left top", at: "left bottom"},
+		position: function(event, ui){
+			return {my: "left top", at: "left bottom", of: ui.target};
+		},
+		preventSelect: true,
+		show: { effect: "fold", duration: "slow"},
+		taphold: true,
+		uiMenuOptions: { // Additional options, used when UI Menu is created
+			position: { my: "left top", at: "right+10 top+10" }
+		},
+		focus: function(event, ui) {
+			var menuId = ui.item.find(">a").attr("href");
+			$("#info").text("focus " + menuId);
+			console.log("focus", ui.item);
+		},
+		blur: function(event, ui) {
+			$("#info").text("");
+			console.log("blur", ui.item);
+		},
+		beforeOpen: function(event, ui) {
+//			$("#container").contextmenu("replaceMenu", "#options2");
+//			$("#container").contextmenu("replaceMenu", [{title: "aaa"}, {title: "bbb"}]);
+		},
+		open: function(event, ui) {
+//          alert("open on " + ui.target.text());
+		},
+		select: function(event, ui) {
+			alert("select " + ui.cmd + " on " + ui.target.text());
+		}
+	});
+}
+
+function contextmenux( menu_sel ) {
+	$(menu_sel).contextmenu({
+		delegate: ".hasmenu",
+		autoFocus: true,
+		preventContextMenuForPopup: true,
+		preventSelect: true,
+		taphold: true,
+		menu: [
+			{title: "Menu Header", cmd: "cat1", isHeader: true},
+			{title: "Cut <kbd>Ctrl+X</kbd>", cmd: "cut", uiIcon: "ui-icon-scissors"},
+			{title: "Copy <kbd>Ctrl+C</kbd>", cmd: "copy", uiIcon: "ui-icon-copy"},
+			{title: "Paste <kbd>Ctrl+V</kbd>", cmd: "paste", uiIcon: "ui-icon-clipboard", disabled: true },
+			{title: "----"},
+			{title: "More", children: [
+				{title: "Sub 1 (callback)", action: function(event, ui) { alert("action callback sub1");} },
+				{title: "Sub 2 (dynamic state)", cmd: "sub2", disabled: function(event, ui) {
+					return true;
+				} },
+				{title: "Sub 3 (dynamic hide)", cmd: "sub3", disabled: function(event, ui) {
+					return "hide";
+				} },
+				{title: "Sub 4 (tooltip)", cmd: "sub4", tooltip: "My tooltip"},
+				{title: "Sub 5 (dynamic tooltip)", cmd: "sub5", tooltip: function(event, ui) {
+					return ui.item.text() + " !!!";
+				} },
+				{cmd: "sub6", title: function(event, ui) {
+					return "Sub 6 (dynamic title): " + ui.target.text();
+				} }
+				]}
+			],
+		// Handle menu selection to implement a fake-clipboard
+		select: function(event, ui) {
+			var $target = ui.target;
+			switch(ui.cmd){
+			case "copy":
+				CLIPBOARD = $target.text();
+				break
+			case "paste":
+				CLIPBOARD = "";
+				break
+			}
+			alert("select " + ui.cmd + " on " + $target.text());
+			// Optionally return false, to prevent closing the menu now
+		},
+		// Implement the beforeOpen callback to dynamically change the entries
+		beforeOpen: function(event, ui) {
+			var $menu = ui.menu,
+				$target = ui.target,
+				extraData = ui.extraData; // passed when menu was opened by call to open()
+
+			// console.log("beforeOpen", event, ui, event.originalEvent.type);
+
+			// NOTE: zIndex() was removed in jQuery 1.12:
+			// https://jqueryui.com/upgrade-guide/1.12/#removed-zindex
+//			ui.menu.zIndex( $(event.target).zIndex() + 1);
+
+			$(document)
+//				.contextmenu("replaceMenu", [{title: "aaa"}, {title: "bbb"}])
+//				.contextmenu("replaceMenu", "#options2")
+//				.contextmenu("updateEntry", "cut", {title: "Cuty", uiIcon: "ui-icon-heart", disabled: true})
+				.contextmenu("setTitle", "copy", "Copy '" + $target.text() + "'")
+				.contextmenu("setTitle", "paste", "Paste" + (CLIPBOARD ? " '" + CLIPBOARD + "'" : ""))
+				.contextmenu("enableEntry", "paste", (CLIPBOARD !== ""));
+
+			// $(document)
+			// 	.contextmenu("setIcon", "paste", "ui-icon-heart")
+			// 	.contextmenu("setTooltip", "paste", "ui-icon-heart");
+
+			// Optionally return false, to prevent opening the menu now
+		}
+	});
+}
Index: branches/testa/js/main.js
===================================================================
--- branches/testa/js/main.js	(revision 23)
+++ branches/testa/js/main.js	(revision 23)
@@ -0,0 +1,83 @@
+let Globalx = {};
+
+function main() {
+      Globalx.num = 0;
+      Globalx.index = 0;
+      Globalx.parts = ["data", "setting", "output"]
+
+      Globalx.parts.map( function( value ){
+	  set_globalx_editor(value)
+      } )
+      editor_func("data");
+      make_ul_for_menu('data' , '#data-side')
+      menux( "data" )
+
+      $('#down-download').on('click', {part: "data"}, handleDownload)
+      $( Globalx['data'].textarea_sel ).val("");
+
+      editor_func("setting");
+      make_ul_for_menu("setting" , '#setting-side')
+
+      editor_func("output");
+      make_ul_for_menu("output" , '#output-side')
+}
+
+function set_globalx_editor(part) {
+      Globalx[part] = {
+	  editor_id: `${part}-editor`,
+	  editor: null,
+	  textarea_sel: `textarea[name=${part}-editor-t`,
+/**/
+	  menu_id: `${part}-menu2`,
+          bookmark_id: `${part}-bookmark`,
+          bookmark_op_id: `${part}-bookmark_op`,
+          item_name: "",
+/**/
+	  bookmarks: [],
+	  bookmark_displayname_max_length: 18,
+          key_indicate_file: false,
+	  key: '/',
+	  key_sel: `#${part}-filelist_key`,
+          download_sel: `#${part}-download_sel`
+      }
+      Globalx[part].menu_sel = `#${Globalx[part].menu_id}`
+      Globalx[part].bookmark_sel = `#${Globalx[part].bookmark_id}`
+      Globalx[part].bookmark_op_sel = `#${Globalx[part].bookmark_op_id}`
+      Globalx[part].bookmark_mgr = new BookmarkMgr( Globalx[part].bookmark_displayname_max_length )
+
+      $( '#bookmark_displayname' ).prop( 'maxlength' , Globalx[part].bookmark_displayname_max_length)
+	  $('#bookmarkDlg').dialog({
+	      autoOpen: false,
+	      modal: true,
+	      buttons: {
+		  "OK": function() {
+		      part = Globalx.parts[ Globalx.index ]
+
+		      Globalx[part].bookmark_mgr.add( $( '#bookmark_path' ).val() , $( '#bookmark_displayname' ).val() )
+		      $(this).dialog("close")},
+		  "Cancel": function() {
+		      $(this).dislog("close")
+		  }
+	      }
+	  }) 
+}
+
+function editor_func(part) {
+    console.log(`Globalx[#{name}].editor_id=` + Globalx[part].editor_id )
+      let editor = ace.edit( Globalx[part].editor_id )
+    console.log( editor )
+      editor.setTheme("ace/theme/monokai");
+      editor.setFontSize(14);
+      editor.getSession().setMode("ace/mode/markdown");
+      editor.getSession().setUseWrapMode(true);
+      editor.getSession().setTabSize(2);
+      Globalx[part].editor = editor;
+      let textarea = $( Globalx[part].textarea_sel );
+    console.log( "textarea=" + textarea )
+      Globalx[part].textarea = textarea;
+      editor.getSession().on("change", function () {
+          Globalx[part].textarea.val(editor.getSession().getValue());
+      });
+}
+
+main()
Index: branches/testa/js/menux.js
===================================================================
--- branches/testa/js/menux.js	(revision 23)
+++ branches/testa/js/menux.js	(revision 23)
@@ -0,0 +1,180 @@
+function make_ul_for_menu( part, sel ) {
+    let content = `<ul id="${Globalx[part].menu_id}"></ul>`
+    let v = $(sel).append( content )
+}
+
+function set_globalx_item_name( part, item_name ) {
+    Globalx[part].item_name = item_name
+    let dl = $( '#download' )
+    dl.attr('download' , Globalx[part].item_name)
+    dl.removeAttr('href')
+}
+
+function menu_action( part, item_name , up_flag = false ) {
+    let realData = get_filelist( Globalx.num )
+    Globalx[part].key_indicate_file = false;
+    if( up_flag ){
+	set_globalx_item_name(part, "")
+	Globalx[part].editor.getSession().setValue( "" );
+	$( Globalx[part].textarea_sel ).val( "" );
+	if( Globalx[part].key != '/' ){
+	    let array = Globalx[part].key.split("/")
+	    array.pop()
+	    if( array.length > 1 ){
+		Globalx[part].key_type = false;
+		set_globalx_item_name( part, array[array.length - 1] )
+
+		Globalx[part].key = array.join('/')
+		$( Globalx[part].menu_sel ).empty()
+	    }
+	    else {
+		Globalx[part].key = '/'
+		set_globalx_item_name( part, "" )
+	    }
+	}
+    }
+    else{
+	if( Globalx[part].key == '/' ){
+	    Globalx[part].key = Globalx[part].key + item_name
+	}
+	else{
+	    Globalx[part].key = Globalx[part].key + '/' + item_name
+	}
+    }
+    set_globalx_item_name(part, item_name)
+
+    const bookmark_cb = $( Globalx[part].bookmark_op_sel )
+    if( Globalx[part].bookmarks.indexOf( Globalx[part].key ) >= 0 ){
+	bookmark_cb.prop('checked', true)
+    }
+    else{
+	bookmark_cb.prop('checked', false)
+    }
+
+    $( Globalx[part].key_sel ).val( Globalx[part].key )
+    $( Globalx[part].menu_sel ).empty()
+
+    make_menu_item_list(part, realData)
+
+    if( realData[Globalx[part].key].length == 0 ){
+	Globalx[part].key_indicate_file = true;
+	get_content( Globalx[part].key , function(content) {
+	    Globalx[part].editor.getSession().setValue( content );
+	    $( Globalx[part].textarea_sel ).val( content );
+	});
+    }
+} 
+
+function make_menu_item_list( part, realData ) {
+    let content = null
+    let ary = realData[ Globalx[part].key ]
+
+    let name = '..(Up)'
+    content = `<li class="ui-menu-item"><div class="ui-menu-item-wrapper hasmenu" onclick="menu_action( '${part}', '${name}', true)">${name}</div></li>`;
+    $( Globalx[part].menu_sel ).append(content);
+
+    ary.map( function( item_name ){
+	content = `<li class="ui-menu-item"><div class="ui-menu-item-wrapper hasmenu" onclick="menu_action( '${part}', '${item_name}' , false)">${item_name}</div></li>`;
+	$( Globalx[part].menu_sel ).append(content);
+    })
+}
+
+async function get_filelist_async( num )
+{
+     let realData = get_filelist( Globalx.num )
+     if( realData === undefined ){
+	await get_filelist_from_remote()
+	realData = get_filelist( Globalx.num )
+    }
+
+    return realData
+}
+
+function menux( part ) {
+    get_filelist_async( Globalx.num ).then( (data) => {
+	make_menu_item_list( part, data )
+	$( Globalx[part].menu_sel ).menu({
+	    classes: {
+		"ui-menu": "highlight"
+	    }
+	})
+    })
+}
+
+function contextmenux0( menu_sel ) {
+    $( menu_sel ).contextmenu({
+	delegate: ".hasmenu",
+	menu: [
+	    {title: "Copy", cmd: "copy", uiIcon: "ui-icon-copy"},
+	    {title: "----"},
+	    {title: "More", childern: [
+		{title: "Sub 1", cmd: "sub1"},
+		{title: "Sub 2", cmd: "sub1"}
+	    ]}
+	],
+	select: function(event, ui) {
+	    alert("select " + ui.cmd + " on " + ui.target.text());
+	}
+    });
+}
+
+function bookmark_op(part) {
+    if( $( Globalx[part].bookmark_op_sel ).is(':checked') == true ){
+	console.log( Globalx[part].key +" add_bookmark" )
+	add_bookmark(part)
+    }
+    else{
+	console.log( Globalx[part].key +" remove_bookmark")
+	remove_bookmark(part)
+    }
+}
+
+function add_bookmark( part ) {
+    Globalx[part].bookmark_mgr.add( Globalx[part].key )
+    rebuild_bookmark_menu( part )
+    $( '#bookmark_displayname' ).val( Globalx[part].bookmark_mgr.get_restricted_display_name( Globalx[part].key ) )
+    $( '#bookmark_path' ).val( Globalx[part].key )
+    $('#bookmarkDlg').dialog("open")
+    
+}
+
+function remove_bookmark(part) {
+    Globalx[part].bookmark_mgr.remove( Globalx[part].key )
+    rebuild_bookmark_menu(part)
+}
+
+function rebuild_bookmark_menu(part) {
+    $( Globalx[part].bookmark_sel ).empty()
+
+    const mgr = Globalx[part].bookmark_mgr
+    const array = mgr.get_paths()
+
+    array.map( function( path ){
+	const display_name = mgr.display_name( path )
+	content = `<li><a href="#" onclick="bookmark_action( '${part}' , '${path}' )">${display_name}</a></li>`;
+	$( Globalx[part].bookmark_sel ).append(content);
+    })
+}
+
+function bookmark_action( part, key ) {
+    if( key === null || key === "" ){
+	alert("illeagal key=" + key )
+	return
+    }
+    let realData = get_filelist( Globalx.num )
+    Globalx[part].key = key
+    Globalx[part].key_indicate_file = false;
+
+    set_globalx_item_name( part, key )
+    $( Globalx[part].key_sel ).val( key )
+
+    if( realData[Globalx[part].key].length == 0 ){
+	Globalx[part].key_indicate_file = true;
+	get_content( Globalx[part].key , function(content) {
+	    Globalx[part].editor.getSession().setValue( content );
+	    $( Globalx[part].textarea_sel ).val( content );
+	});
+    }
+    const bookmark_cb = $( Globalx[part].bookmark_op_sel )
+    bookmark_cb.prop('checked', true)
+}
Index: branches/testa/js/remote.js
===================================================================
--- branches/testa/js/remote.js	(revision 23)
+++ branches/testa/js/remote.js	(revision 23)
@@ -0,0 +1,148 @@
+function upload_to_host(part) {
+    if( Globalx[part].key_indicate_file === true ){
+	let textarea = $( Globalx[part].textarea_sel )
+	upload_content(textarea.val(), Globalx[part].key, Globalx.num)
+    }
+}
+
+function upload_content(content, path, num) {
+    let form = document.createElement('form');
+    let req_content = document.createElement('input');
+    let req_path = document.createElement('input');
+    let req_cmd = document.createElement('input');
+    let req_num = document.createElement('input');
+
+    document.body.appendChild(form);
+    req_content.type = 'hidden';
+    req_content.name = 'mytext';
+    req_content.value = content;
+    
+    req_path.type = 'hidden';
+    req_path.name = 'path';
+    req_path.value = path;
+    
+    req_cmd.type = 'hidden';
+    req_cmd.name = 'cmd';
+    req_cmd.value = 'upload_content';
+    
+    req_num.type = 'hidden';
+    req_num.name = 'num';
+    req_num.value = num + '';
+    
+    form.appendChild(req_content);
+    form.appendChild(req_path);
+    form.appendChild(req_cmd);
+    form.appendChild(req_num);
+    
+    // FormDataオブジェクトを作成する
+    var form_data = new FormData(form);
+
+    fetch('php/content.php', {
+	method: 'POST',
+	mode: 'same-origin', /* 'no-cors' 'cors' 'same-origin' */
+	body: form_data
+    })
+    .then((response) => response.text())
+    .then((data) => console.log(data))
+    .catch((error) => console.log(error));
+}
+
+function make_url_params( arrayx ){
+      let params = new URLSearchParams();
+      arrayx.reduce(function(acc, element, index, array) {
+	  acc.append(element[0], element[1]);
+	  return acc;
+      }, params)
+      return params;
+}
+
+function get_filelist_from_remote() {
+    let param_array = [['cmd', 'get_filelist'], ['num', Globalx.num ]];
+    let params = make_url_params( param_array );
+    let filename = "php/content.php"
+    fetch(`${filename}?${params}`)
+    .then((response) => response.text())
+    .then((str) => save_filelist_to_local_storage(str, num))
+    .catch((error) => console.log(error));
+}
+
+function update_filelist() {
+    let param_array = [['cmd', 'update_filelist'], ['num', Globalx.num ]];
+    let params = make_url_params( param_array );
+    let filename = "php/content.php"
+    fetch(`${filename}?${params}`)
+    .then((response) => response.text())
+    .then((text) => save_filelist_to_local_storage(text, num))
+    .catch((error) => console.log(error));
+}
+
+function get_content(path , func) {
+    console.log( "path:" + path )
+    let param_array = [['cmd', 'get_content'], ['num', Globalx.num ], ['path', path]];
+    let params = make_url_params( param_array );
+    let filename = "php/content.php"
+    fetch(`${filename}?${params}`)
+    .then((response) => response.text())
+    .then((text) => {func(text)})
+    .catch((error) => console.log(error));
+}
+
+//
+//
+function restore_filelist(num, key){
+    const data = get_filelist(num);
+    if( data !== null ){
+//	display_filelist( data, '#filelist' );
+//	console.log( data['/'] );
+//	console.log( data['/rtk'] );
+//	console.log( data['/rtk/fmp_kernel'] );
+//	console.log( data['/rtk/fmp_kernel/data'] );
+//	console.log( data['/rtk/fmp_kernel/data/fmp-kernel.md'] );
+	console.log( data[key] );
+    }
+    else{
+	console.log("null returned!");
+    }
+}
+function handleDownload(e) {
+    let dl = document.getElementById("down-download")
+    if( Globalx[ e.data.part ].key_indicate_file === true ){
+	console.log("handleDownload-file")
+	console.log(Globalx[ e.data.part ])
+
+	get_content( Globalx[ e.data.part ].key , function(content) {
+	    let blob = new Blob([ content ], { "type" : "text/plain" });
+
+	    if (window.navigator.msSaveBlob) { 
+		window.navigator.msSaveBlob(blob, Globalx[ e.data.part ].item_name); 
+		console.log("handleDownload=" + Globalx[ e.data.part ].item_name)
+		
+		// msSaveOrOpenBlobの場合はファイルを保存せずに開ける
+		window.navigator.msSaveOrOpenBlob(blob, Globalx[ e.data.part ].item_name); 
+	    } else {
+		console.log( "handleDownLoad-1-2" )
+		console.log("handleDownload=" + Globalx[ e.data.part ].item_name)
+		dl.download = Globalx[ e.data.part ].item_name
+		dl.href = window.URL.createObjectURL(blob);
+	    }
+	})
+    }
+    else{
+	e.preventDefault()
+	console.log("handleDownload-Not file")
+	dl.href = ""
+	dl.download = ""
+    }
+}
+
+function download_cmd(part) {
+    if( Globalx[part].key_indicate_file === true ){
+	console.log("download_cmd filename=" + Globalx[part].filename)
+
+	let dl = $( Globalx[part].download_sel )
+
+	console.log( dl.attr('download') )
+	dl.trigger('click')
+    }
+}
+
Index: branches/testa/js/storage.js
===================================================================
--- branches/testa/js/storage.js	(revision 23)
+++ branches/testa/js/storage.js	(revision 23)
@@ -0,0 +1,28 @@
+let _globalStorage = {}
+
+function save_info_to_local_storage(info){
+    _globalStorage["info"] = info
+    save_to_local_storage(JSON.stringify(info), "info")
+}
+
+function save_filelist_to_local_storage(text , num){
+    let num_s = num + ''
+    save_to_local_storage(text, key)
+}
+
+function save_to_local_storage(str, key) {
+    _globalStorage[key] = str
+    localStorage.setItem(key , str)
+}
+
+function get_filelist(num) {
+    let num_s = num + ''
+    if( _globalStorage[num_s] === undefined ){
+	oldData = localStorage.getItem(num_s)
+	if( oldData ){
+	    _globalStorage[num_s] = JSON.parse(oldData)
+	}
+    }
+    return _globalStorage[num_s]
+}
+
Index: branches/testa/js/tab.js
===================================================================
--- branches/testa/js/tab.js	(revision 23)
+++ branches/testa/js/tab.js	(revision 23)
@@ -0,0 +1,13 @@
+jQuery(function($){
+    $('.tab').click(function(){
+        $('.is-active').removeClass('is-active');
+        $(this).addClass('is-active');
+        $('.is-show').removeClass('is-show');
+        // クリックしたタブからインデックス番号を取得
+        const index = $(this).index();
+	Globalx.index = index;
+	Globalx.part = Globalx.parts[index];
+        // クリックしたタブと同じインデックス番号をもつコンテンツを表示
+        $('.panel').eq(index).addClass('is-show');
+    });
+});
Index: branches/testa/php/NorthernCross/ns/PathInfo.php
===================================================================
--- branches/testa/php/NorthernCross/ns/PathInfo.php	(revision 23)
+++ branches/testa/php/NorthernCross/ns/PathInfo.php	(revision 23)
@@ -0,0 +1,85 @@
+<?php
+
+namespace ns;
+
+class PathInfo {
+    protected $root;
+    public $hier_hash;
+    protected $root_path;
+
+    function __construct( $root_path ){
+        $this->root_path = $root_path;
+        $this->root = new PathItem( "/" , "/");
+        $this->hier_hash = array();
+        $this->hier_hash["/"] = $this->root;
+    }
+
+    public function register( $path ){
+        $path2 = trim($path);
+        if( strlen($path2) == 0 ){
+            echo "size is 0 - A\n";
+            exit(0);
+        }
+        if( array_key_exists($path2,  $this->hier_hash)){
+            return;
+        }
+        $array = explode("/", $path2);
+        $name = array_pop($array);
+        $item = new PathItem( $name, $path2 , $path2 );
+        $this->hier_hash[$path2] = $item;
+
+        $child_item = $item;
+
+        $dosenot_exist = TRUE;
+        while( count($array) > 0 && $dosenot_exist ){
+            $hier = implode("/" , $array);
+            if( strlen($hier) == 0 ){
+                break;
+            }
+            if (array_key_exists($hier,  $this->hier_hash)){
+                $item = $this->hier_hash[$hier];
+                $dosenot_exist = FALSE;
+            }
+            else {
+                $name = array_pop($array);
+                $item = new PathItem( $name, $hier);
+                $this->hier_hash[$hier] = $item;
+            }
+
+            $child_item->set_parent($item);
+            $child_item = $item;
+        }
+        if( $dosenot_exist ){
+            $child_item->set_parent($this->root);
+        }
+    }
+
+    public function get_pathitem_name( $item ){
+        return $item->get_name();
+    }
+
+    public function pathinfo_list_in_json(){
+        $array = array();
+        foreach( $this->hier_hash as $a => $b ){
+            $names = array_map(array($this, 'get_pathitem_name'), $b->get_children());
+            $array[$a]=$names;
+        }
+        return json_encode($array);
+    }
+
+    public function dump() {
+        #       var_dump($this->hier_hash);
+        foreach( $this->hier_hash as $a => $b ){
+            echo "###########\n";
+            echo "key=" . $a . "\n";
+            echo $b->dump();
+            echo $b->dump_children();
+        }
+    }
+
+    public function dump_root(){
+        $this->root->dump_children();
+    }
+}
+
+?>
Index: branches/testa/php/NorthernCross/ns/PathItem.php
===================================================================
--- branches/testa/php/NorthernCross/ns/PathItem.php	(revision 23)
+++ branches/testa/php/NorthernCross/ns/PathItem.php	(revision 23)
@@ -0,0 +1,60 @@
+<?php
+
+namespace ns;
+
+class PathItem {
+    public $name = NULL;
+    public $hier = NULL;
+    public $id = NULL;
+    protected $parent = NULL;
+    protected $children = array();
+    protected $file_path = NULL;
+    static $inst_count = 0;
+
+    function __construct($name, $hier, $file_path = NULL , $parent = NULL){
+        $this->name = $name;
+        $this->hier = $hier;
+        $this->file_path = $file_path;
+        $this->parent = $parent;
+        $this->id = PathItem::$inst_count++;
+    }
+
+    public function get_name(){
+        return $this->name;
+    }
+
+    public function get_children(){
+        return $this->children;
+    }
+
+    public function set_parent($parent){
+        if( $this->parent == NULL ){
+            $this->parent = $parent;
+            $this->parent->add_child($this);
+        }
+    }
+
+    public function add_child($child){
+        if( !array_search($child,  $this->children, TRUE) ){
+            array_push($this->children, $child);
+        }
+    }
+
+    public function dump(){
+        echo "id=" . $this->id . "\n";
+        echo "name=" . $this->name . "\n";
+        echo "hier=" . $this->hier . "\n";
+        echo "filepath=" . $this->file_path . "\n";
+    }
+
+    public function dump_children(){
+        foreach($this->children as $item){
+            echo "child id=" . $item->id . "\n";
+            echo "child name=" . $item->name . "\n";
+            echo "child hier=" . $item->hier . "\n";
+        }
+        echo "\n";
+    }
+}
+
+?>
Index: branches/testa/php/content.php
===================================================================
--- branches/testa/php/content.php	(revision 23)
+++ branches/testa/php/content.php	(revision 23)
@@ -0,0 +1,213 @@
+<?php
+
+header("Access-Control-Allow-Origin: *");
+#namespace ns;
+
+require_once( dirname(__FILE__) . '/func.php');
+
+require_once( dirname(__FILE__) . '/NorthernCross/ns/PathItem.php');
+require_once( dirname(__FILE__) . '/NorthernCross/ns/PathInfo.php');
+require_once( dirname(__FILE__) . "/spyc-0.5/spyc.php"); // ★の部分にはspyc.phpを置いたパスを入れます
+
+
+function get_url_data_array()
+{
+        $yaml= spyc_load_file( dirname(__FILE__) . "/../settings.yml");// ☆の部分にはyamlファイルがあるパスを入れます
+        return $yaml;
+}
+
+function get_url_data_array0()
+{
+	$array = array(
+        array('url' => 'https://toppers.jp', 'path' =>	'/var/www/vhosts/devconf.northern-cross.info/httpdocs/a/tmp/devconf-guest-4/tmp/md2site-x/_xtest/wtjx/t12/src') );
+
+	return $array;
+}
+
+function get_url_data( $num ){
+    $array = get_url_data_array();
+    return $array[$num];
+}
+
+function dump_url_data( $num ){
+    print_r( get_url_data( $num ));	 
+}
+
+function get_path_from_url_data( $num ){
+    return get_url_data( $num )['path'];
+}
+
+function get_path_list_by_url( $num ){
+    $pattern = "*.md";
+    $top_path = get_path_from_url_data($num);
+    $cmd_line_items = array("find" , $top_path , "-name", $pattern);
+    $cmd_line = implode(" " , $cmd_line_items);
+
+    $array = array();
+    $handle = popen( $cmd_line , "r");
+    while (( $buffer = fgets($handle, 4096)) !== false){
+        $line = trim($buffer);
+        $data = explode($top_path,  $line)[1];
+        array_push($array , $data);
+    }
+    if (!feof($handle)) {
+	    echo "Error: unexpected fgets() fail\n";
+    }
+    pclose($handle);
+    
+    return array( "top_path" => $top_path, "file_list" => $array);
+}
+
+
+function dump_hier_list($pathinfo){
+    foreach( array_keys($pathinfo->hier_hash) as $v ){
+        $v2 = trim($v);
+        if(is_null($v2)){
+            echo "found null\n";
+            exit(0);
+        }
+        echo $v . "||(" . strlen($v) . ")\n";
+   }
+}
+
+function dump_hier($pathinfo) {
+    foreach( array_keys($pathinfo->hier_hash) as $v ){
+        echo $v . "\n";
+        $item = $pathinfo->hier_hash[$v];
+        $item->dump();
+        echo "--dump_children\n";
+        $item->dump_children();
+        echo "#==========\n";
+    }
+}
+
+function get_path_info( $num ){
+    $path_info = get_path_list_by_url( $num );
+    $pathinfo = new ns\PathInfo($path_info["top_path"]);
+#    $pathinfo = new PathInfo($path_info["top_path"]);
+    foreach($path_info["file_list"] as $path){
+        $pathinfo->register($path);
+    }
+    return $pathinfo->pathinfo_list_in_json();
+#    $pathinfo->dump();
+#    $pathinfo->dump_root();
+#    dump_hier_list($pathinfo);
+}
+
+function print_get_path_info( $num ){
+    echo get_path_info( $num );
+}
+
+function ensure_dir( $dir ) {
+    if( !file_exists( $dir ) ){
+        mkdir( $dir );
+    }
+}
+
+function ensure_storage_dir( $storage_dir , $num, $filename ) {
+    $dir = implode( "/" , array( $storage_dir , $num) );
+    mkdir($dir);
+    $path = implode( "/" , array( $dir , $filename) );
+    ensure_dir( $dir );
+
+    return $path;
+}
+
+function get_content( $num , $path ) {
+    $top_dir = get_path_from_url_data( $num );
+    $full_path = implode( '/', [$top_dir, $path]);
+    $result = input_file( $full_path );
+    return $result;
+}
+
+function cmdx(){
+    $filelist_filename = "filelist.json";
+    $storage_dir = dirname(__FILE__) . '/../storage';
+
+    $content = NULL;
+    if (isset($_GET['cmd'])) {
+        $cmd = $_GET['cmd'];
+        if (isset($_GET['num'])) {
+            $num = $_GET['num'];
+
+            switch ($cmd) {
+            case 'get_content':
+                if (isset($_GET['path'])) {
+                    $path = $_GET['path'];
+                    $content = get_content( $num , $path );
+                }
+                break;
+            case 'update_filelist':
+                $path = ensure_storage_dir( $storage_dir , $num, $filelist_filename );
+                $content = get_path_info( $num );
+                output_file( $path , $content );
+                break;
+            case 'get_filelist':
+                $path = ensure_storage_dir( $storage_dir , $num, $filelist_filename );
+                if( file_exists($path) ){
+                    $content = input_file( $filename );
+                }
+                else {
+                    $content = get_path_info( $num );
+                    output_file( $path , $content );
+                }
+                break;
+            default:
+                break;
+            }
+        }
+    }
+    elseif (isset($_POST['cmd'])) {
+        $cmd = $_POST['cmd'];
+        if (isset($_POST['num'])) {
+            $num = $_POST['num'];
+
+            switch ($cmd) {
+            case 'upload_content':
+                $array = get_lines_from_formdata( "mytext" );
+                $upload_content = implode( "\n" , $array );
+                if (isset($_POST['path'])) {
+                    $path = $_POST['path'];
+                    $top_path = get_path_from_url_data( $num );
+                    $filename_abs_path = $top_path . DIRECTORY_SEPARATOR . $path;
+
+                    output_file( $filename_abs_path , $upload_content );
+                    $content = "P-UPLOAD_CONTENT-OK=" . $filename_abs_path;
+                }
+                else{
+                    $content = "P-UPLOAD_CONTENT-NO-PATH";
+                }
+
+            default:
+                debug_x("P-DEFAULT");
+                /* $content = "P-DEFAULT";*/
+                break;
+            }
+        }
+        else{
+            $content = "P-NO_NUM";
+        }
+    }
+    else{
+        debug_x('DEFAULT');
+    }
+
+    if(!is_null($content)){
+        echo( $content );
+    }
+}
+
+function debug_x($mes) {
+    ob_start();
+    echo $mes . "\n";
+    var_dump($_GET);
+    var_dump($_POST);
+    ob_end_clean();
+    $content = ob_get_contents();
+    error_log($content,3, './debug.txt');
+}
+#print_get_path_info( 0 );
+#print_get_path_info( 1 );
+cmdx();
+
+?>
Index: branches/testa/php/func.php
===================================================================
--- branches/testa/php/func.php	(revision 23)
+++ branches/testa/php/func.php	(revision 23)
@@ -0,0 +1,55 @@
+<?php
+function get_lines_from_formdata( $name ) {
+	$lines_array = array();
+	
+	if($_SERVER['REQUEST_METHOD'] == "POST"){
+		$str = $_POST[$name];      // テキストエリアの値を取得
+		$cr = array("\r\n", "\r");   // 改行コード置換用配列を作成しておく
+		
+		$str = trim($str);         // 文頭文末の空白を削除
+		
+		// 改行コードを統一
+		//str_replace ("検索文字列", "置換え文字列", "対象文字列");
+		$str = str_replace($cr, "\n", $str);
+		
+		//改行コードで分割（結果は配列に入る）
+		$lines_array = explode("\n", $str);
+	}
+	return $lines_array;
+}
+
+function get_fname( $name ){
+	$str = "";
+	
+	if($_SERVER['REQUEST_METHOD'] == "POST"){
+		$str = $_POST[$name];      // テキストエリアの値を取得
+	}
+	return $str;
+}
+
+function output_file_from_lines( $fname , $lines ) {
+	$file = fopen($fname, "w");
+	foreach($lines as $line){
+		fwrite( $file, $line . "\n" );
+	}
+	fflush($file);
+	fclose($file);
+}
+
+function output_file( $fname , $content ) {
+	$file = fopen($fname, "w");
+	fwrite( $file, $content . "\n" );
+	fflush($file);
+	fclose($file);
+}
+
+function input_file( $fname ) {
+	$file = fopen($fname, "r");
+	$content = fread( $file, filesize($fname) );
+	fclose($file);
+
+	return $content;
+}
+
+
+?>
Index: branches/testa/php/spyc-0.5/COPYING
===================================================================
--- branches/testa/php/spyc-0.5/COPYING	(revision 23)
+++ branches/testa/php/spyc-0.5/COPYING	(revision 23)
@@ -0,0 +1,21 @@
+The MIT License
+
+Copyright (c) 2011 Vladimir Andersen
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in
+all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+THE SOFTWARE.
Index: branches/testa/php/spyc-0.5/README
===================================================================
--- branches/testa/php/spyc-0.5/README	(revision 23)
+++ branches/testa/php/spyc-0.5/README	(revision 23)
@@ -0,0 +1,159 @@
+#
+#    S P Y C
+#      a simple php yaml class
+#
+# Load this README!
+# >> $readme = Spyc::YAMLLoad('README');
+#
+--- %YAML:1.1
+title: Spyc -- a Simple PHP YAML Class
+version: 0.5
+authors: [chris wanstrath (chris@ozmm.org), vlad andersen (vlad.andersen@gmail.com)]
+websites: [http://www.yaml.org, http://spyc.sourceforge.net]
+license: [MIT License, http://www.opensource.org/licenses/mit-license.php]
+copyright: "(c) 2005-2006 Chris Wanstrath, 2006-2011 Vlad Andersen"
+tested on: [php 5.2.x]
+
+installation: >
+  Copy spyc.php to a directory you can
+  access with your YAML-ready PHP script.
+
+  That's it!
+
+about: >
+  From www.yaml.org:
+
+  "YAML(tm) (rhymes with 'camel') is a human-friendly, cross language,
+  Unicode based data serialization language designed around the common
+  native data structures of agile programming languages. It is broadly
+  useful for programming needs ranging from configuration files to
+  Internet messaging to object persistence to data auditing. Together
+  with the Unicode standard for characters, the YAML specification provides
+  all the information necessary to understand YAML Version 1.1 and to
+  creating programs that process YAML information.
+
+  YAML(tm) is a balance of the following design goals:
+    - YAML documents are very readable by humans.
+    - YAML interacts well with scripting languages.
+    - YAML uses host languages' native data structures.
+    - YAML has a consistent information model.
+    - YAML enables stream-based processing.
+    - YAML is expressive and extensible.
+    - YAML is easy to implement."
+
+  YAML makes a lot of sense.  It's easy to use, easy to learn, and cool.
+  As the lucky stiff named why once said, "YAML is a beacon of light."
+
+  If you're new to YAML, may we suggest YAML In Five Minutes:
+    - http://yaml.kwiki.org/?YamlInFiveMinutes
+
+  If you don't have five minutes, realize that this README is a completely
+  valid YAML document.  Dig in, load this or any YAML file into an array
+  with Spyc and see how easy it is to translate friendly text into usable
+  data.
+
+  The purpose of Spyc is to provide a pure PHP alternative to Syck, a
+  simple API for loading and dumping YAML documents, a YAML loader which
+  understands a usable subset of the YAML spec, and to further spread
+  the glory of YAML to the PHP masses.
+
+  If you're at all hesitant ("usable subset of YAML?!"), navigate
+  http://yaml.org/start.html.  Spyc completely understands the YAML
+  document shown there, a document which has features way beyond the
+  scope of what normal config files might require.  Try it for yourself,
+  and then start enjoying the peace of mind YAML brings to your life.
+
+meat and a few potatoes:
+  - concept: Loading a YAML document into PHP
+    brief: >
+      $yaml will become an array of all the data in wicked.yaml
+    code: |
+
+      include('spyc.php');
+
+      $yaml = Spyc::YAMLLoad('wicked.yaml');
+
+  - concept: Loading a YAML string into PHP
+    brief: >
+      $array will look like this:
+        array('A YAML','document in a','string')
+    code: |
+
+      include('spyc.php');
+
+      $yaml  = '- A YAML\n- document in a\n- string.';
+      $array = Spyc::YAMLLoad($yaml);
+
+  - concept: Dumping a PHP array to YAML
+    brief: >
+      $yaml will become a string of a YAML document created from
+      $array.
+    code: |
+
+      include('spyc.php');
+
+      $array['name']  = 'chris';
+      $array['sport'] = 'curbing';
+
+      $yaml = Spyc::YAMLDump($array);
+
+prior art:
+  - who: [Brian Ingerson, Clark Evans, Oren Ben-Kiki]
+    why?: >
+      The YAML spec is really a piece of work, and these guys
+      did a great job on it.  A simple and elegant language like
+      YAML was a long time coming and it's refreshing to know
+      such able minded individuals took the task to heart and
+      executed it with cunning and strength.  In addition to
+      their various noteworthy contributions to YAML parsers
+      and related projects, YAML.pm's README is a treasure trove
+      of information for knowledge seekers.  Thanks, guys.
+
+  - who: why the lucky stiff
+    why?: >
+      As the author of Syck, the code used in Ruby for the language's
+      YAML class and methods, why is indirectly (directly?) responsible
+      for my first exposure to YAML (as a config file in a Ruby web-app)
+      and the countless hours I spent playing with this sheik new data
+      format afterwards.  Syck's README is a YAML file and thus the
+      inspiration for this file and, even, this very piece of software.
+
+  - who: Steve Howell
+    why?: >
+      Python's YAML implementation.  PyYAML's README file is also YAML,
+      so it too inspired the YAML format of this README file.
+
+  - who: [Rasmus Lerdorf, Zeev Suraski, Andi Gutmans, et al]
+    why?: >
+      PHP is great at what it does best.  It's also paid a lot of my bills.
+      Thanks.
+
+bugs:
+  report: >
+    Please see Spyc's Sourceforge project page for information on reporting bugs.
+  speed: >
+    This implementation was not designed for speed.  Rather, it
+    was designed for those who need a pure PHP implementation of
+    a YAML parser and who are not overly concerned with performance.
+    If you want speed, check out Syck.
+  depth: >
+    This parser is by no means a comprehensive YAML parser.  For supported
+    features and future plans, check the website.
+  unicode: >
+    YAML is supposed to be unicode, but for now we're just using ASCII.
+    PHP has crappy unicode support but who knows what the future holds.
+
+resources:
+  - http://www.yaml.org
+  - http://www.yaml.org/spec/
+  - http://yaml.kwiki.org/?YamlInFiveMinutes
+  - http://www.whytheluckystiff.net/syck/
+  - http://yaml4r.sourceforge.net/cookbook/
+
+thanks:
+  - Adam Wood
+  - Daniel Ferreira
+  - Aaron Jensen
+  - Mike Thornton
+  - Fabien Potencier
+  - Mustafa Kumas
Index: branches/testa/php/spyc-0.5/examples/yaml-dump.php
===================================================================
--- branches/testa/php/spyc-0.5/examples/yaml-dump.php	(revision 23)
+++ branches/testa/php/spyc-0.5/examples/yaml-dump.php	(revision 23)
@@ -0,0 +1,25 @@
+<?php
+
+#
+#    S P Y C
+#      a simple php yaml class
+#
+# Feel free to dump an array to YAML, and then to load that YAML back into an
+# array.  This is a good way to test the limitations of the parser and maybe
+# learn some basic YAML.
+#
+
+include('../spyc.php');
+
+$array[] = 'Sequence item';
+$array['The Key'] = 'Mapped value';
+$array[] = array('A sequence','of a sequence');
+$array[] = array('first' => 'A sequence','second' => 'of mapped values');
+$array['Mapped'] = array('A sequence','which is mapped');
+$array['A Note'] = 'What if your text is too long?';
+$array['Another Note'] = 'If that is the case, the dumper will probably fold your text by using a block.  Kinda like this.';
+$array['The trick?'] = 'The trick is that we overrode the default indent, 2, to 4 and the default wordwrap, 40, to 60.';
+$array['Old Dog'] = "And if you want\n to preserve line breaks, \ngo ahead!";
+$array['key:withcolon'] = "Should support this to";
+
+$yaml = Spyc::YAMLDump($array,4,60);
Index: branches/testa/php/spyc-0.5/examples/yaml-load.php
===================================================================
--- branches/testa/php/spyc-0.5/examples/yaml-load.php	(revision 23)
+++ branches/testa/php/spyc-0.5/examples/yaml-load.php	(revision 23)
@@ -0,0 +1,21 @@
+<?php
+
+#
+#    S P Y C
+#      a simple php yaml class
+#
+# license: [MIT License, http://www.opensource.org/licenses/mit-license.php]
+#
+
+include('../spyc.php');
+
+$array = Spyc::YAMLLoad('../spyc.yaml');
+
+echo '<pre><a href="spyc.yaml">spyc.yaml</a> loaded into PHP:<br/>';
+print_r($array);
+echo '</pre>';
+
+
+echo '<pre>YAML Data dumped back:<br/>';
+echo Spyc::YAMLDump($array);
+echo '</pre>';
Index: branches/testa/php/spyc-0.5/php4/5to4.php
===================================================================
--- branches/testa/php/spyc-0.5/php4/5to4.php	(revision 23)
+++ branches/testa/php/spyc-0.5/php4/5to4.php	(revision 23)
@@ -0,0 +1,17 @@
+<?php
+
+php5to4 ("../spyc.php", 'spyc-latest.php4');
+
+function php5to4 ($src, $dest) {
+  $code = file_get_contents ($src);
+  $code = preg_replace ('#(public|private|protected)\s+\$#i', 'var \$', $code);
+  $code = preg_replace ('#(public|private|protected)\s+static\s+\$#i', 'var \$', $code);
+  $code = preg_replace ('#(public|private|protected)\s+function#i', 'function', $code);
+  $code = preg_replace ('#(public|private|protected)\s+static\s+function#i', 'function', $code);
+  $code = preg_replace ('#throw new Exception\\(([^)]*)\\)#i', 'trigger_error($1,E_USER_ERROR)', $code);
+  $code = str_replace ('self::', '$this->', $code);
+  $f = fopen ($dest, 'w');
+  fwrite($f, $code);
+  fclose ($f);
+  print "Written to $dest.\n";
+}
Index: branches/testa/php/spyc-0.5/php4/spyc.php4
===================================================================
--- branches/testa/php/spyc-0.5/php4/spyc.php4	(revision 23)
+++ branches/testa/php/spyc-0.5/php4/spyc.php4	(revision 23)
@@ -0,0 +1,1023 @@
+<?php
+/**
+   * Spyc -- A Simple PHP YAML Class
+   * @version 0.4.5
+   * @author Vlad Andersen <vlad.andersen@gmail.com>
+   * @author Chris Wanstrath <chris@ozmm.org>
+   * @link http://code.google.com/p/spyc/
+   * @copyright Copyright 2005-2006 Chris Wanstrath, 2006-2009 Vlad Andersen
+   * @license http://www.opensource.org/licenses/mit-license.php MIT License
+   * @package Spyc
+   */
+
+if (!function_exists('spyc_load')) {
+  /**
+   * Parses YAML to array.
+   * @param string $string YAML string.
+   * @return array
+   */
+  function spyc_load ($string) {
+    return Spyc::YAMLLoadString($string);
+  }
+}
+
+if (!function_exists('spyc_load_file')) {
+  /**
+   * Parses YAML to array.
+   * @param string $file Path to YAML file.
+   * @return array
+   */
+  function spyc_load_file ($file) {
+    return Spyc::YAMLLoad($file);
+  }
+}
+
+/**
+   * The Simple PHP YAML Class.
+   *
+   * This class can be used to read a YAML file and convert its contents
+   * into a PHP array.  It currently supports a very limited subsection of
+   * the YAML spec.
+   *
+   * Usage:
+   * <code>
+   *   $Spyc  = new Spyc;
+   *   $array = $Spyc->load($file);
+   * </code>
+   * or:
+   * <code>
+   *   $array = Spyc::YAMLLoad($file);
+   * </code>
+   * or:
+   * <code>
+   *   $array = spyc_load_file($file);
+   * </code>
+   * @package Spyc
+   */
+class Spyc {
+
+  // SETTINGS
+
+  /**
+   * Setting this to true will force YAMLDump to enclose any string value in
+   * quotes.  False by default.
+   * 
+   * @var bool
+   */
+  var $setting_dump_force_quotes = false;
+
+  /**
+   * Setting this to true will forse YAMLLoad to use syck_load function when
+   * possible. False by default.
+   * @var bool
+   */
+  var $setting_use_syck_is_possible = false;
+
+
+
+  /**#@+
+  * @access private
+  * @var mixed
+  */
+  var $_dumpIndent;
+  var $_dumpWordWrap;
+  var $_containsGroupAnchor = false;
+  var $_containsGroupAlias = false;
+  var $path;
+  var $result;
+  var $LiteralPlaceHolder = '___YAML_Literal_Block___';
+  var $SavedGroups = array();
+  var $indent;
+  /**
+   * Path modifier that should be applied after adding current element.
+   * @var array
+   */
+  var $delayedPath = array();
+
+  /**#@+
+  * @access public
+  * @var mixed
+  */
+  var $_nodeId;
+
+/**
+ * Load a valid YAML string to Spyc.
+ * @param string $input
+ * @return array
+ */
+  function load ($input) {
+    return $this->__loadString($input);
+  }
+
+ /**
+ * Load a valid YAML file to Spyc.
+ * @param string $file
+ * @return array
+ */
+  function loadFile ($file) {
+    return $this->__load($file);
+  }
+
+  /**
+     * Load YAML into a PHP array statically
+     *
+     * The load method, when supplied with a YAML stream (string or file),
+     * will do its best to convert YAML in a file into a PHP array.  Pretty
+     * simple.
+     *  Usage:
+     *  <code>
+     *   $array = Spyc::YAMLLoad('lucky.yaml');
+     *   print_r($array);
+     *  </code>
+     * @access public
+     * @return array
+     * @param string $input Path of YAML file or string containing YAML
+     */
+  function YAMLLoad($input) {
+    $Spyc = new Spyc;
+    return $Spyc->__load($input);
+  }
+
+  /**
+     * Load a string of YAML into a PHP array statically
+     *
+     * The load method, when supplied with a YAML string, will do its best 
+     * to convert YAML in a string into a PHP array.  Pretty simple.
+     *
+     * Note: use this function if you don't want files from the file system
+     * loaded and processed as YAML.  This is of interest to people concerned
+     * about security whose input is from a string.
+     *
+     *  Usage:
+     *  <code>
+     *   $array = Spyc::YAMLLoadString("---\n0: hello world\n");
+     *   print_r($array);
+     *  </code>
+     * @access public
+     * @return array
+     * @param string $input String containing YAML
+     */
+  function YAMLLoadString($input) {
+    $Spyc = new Spyc;
+    return $Spyc->__loadString($input);
+  }
+
+  /**
+     * Dump YAML from PHP array statically
+     *
+     * The dump method, when supplied with an array, will do its best
+     * to convert the array into friendly YAML.  Pretty simple.  Feel free to
+     * save the returned string as nothing.yaml and pass it around.
+     *
+     * Oh, and you can decide how big the indent is and what the wordwrap
+     * for folding is.  Pretty cool -- just pass in 'false' for either if
+     * you want to use the default.
+     *
+     * Indent's default is 2 spaces, wordwrap's default is 40 characters.  And
+     * you can turn off wordwrap by passing in 0.
+     *
+     * @access public
+     * @return string
+     * @param array $array PHP array
+     * @param int $indent Pass in false to use the default, which is 2
+     * @param int $wordwrap Pass in 0 for no wordwrap, false for default (40)
+     */
+  function YAMLDump($array,$indent = false,$wordwrap = false) {
+    $spyc = new Spyc;
+    return $spyc->dump($array,$indent,$wordwrap);
+  }
+
+
+  /**
+     * Dump PHP array to YAML
+     *
+     * The dump method, when supplied with an array, will do its best
+     * to convert the array into friendly YAML.  Pretty simple.  Feel free to
+     * save the returned string as tasteful.yaml and pass it around.
+     *
+     * Oh, and you can decide how big the indent is and what the wordwrap
+     * for folding is.  Pretty cool -- just pass in 'false' for either if
+     * you want to use the default.
+     *
+     * Indent's default is 2 spaces, wordwrap's default is 40 characters.  And
+     * you can turn off wordwrap by passing in 0.
+     *
+     * @access public
+     * @return string
+     * @param array $array PHP array
+     * @param int $indent Pass in false to use the default, which is 2
+     * @param int $wordwrap Pass in 0 for no wordwrap, false for default (40)
+     */
+  function dump($array,$indent = false,$wordwrap = false) {
+    // Dumps to some very clean YAML.  We'll have to add some more features
+    // and options soon.  And better support for folding.
+
+    // New features and options.
+    if ($indent === false or !is_numeric($indent)) {
+      $this->_dumpIndent = 2;
+    } else {
+      $this->_dumpIndent = $indent;
+    }
+
+    if ($wordwrap === false or !is_numeric($wordwrap)) {
+      $this->_dumpWordWrap = 40;
+    } else {
+      $this->_dumpWordWrap = $wordwrap;
+    }
+
+    // New YAML document
+    $string = "---\n";
+
+    // Start at the base of the array and move through it.
+    if ($array) {
+      $array = (array)$array;
+      $first_key = key($array);
+      
+      $previous_key = -1;
+      foreach ($array as $key => $value) {
+        $string .= $this->_yamlize($key,$value,0,$previous_key, $first_key);
+        $previous_key = $key;
+      }
+    }
+    return $string;
+  }
+
+  /**
+     * Attempts to convert a key / value array item to YAML
+     * @access private
+     * @return string
+     * @param $key The name of the key
+     * @param $value The value of the item
+     * @param $indent The indent of the current node
+     */
+  function _yamlize($key,$value,$indent, $previous_key = -1, $first_key = 0) {
+    if (is_array($value)) {
+      if (empty ($value))
+        return $this->_dumpNode($key, array(), $indent, $previous_key, $first_key);
+      // It has children.  What to do?
+      // Make it the right kind of item
+      $string = $this->_dumpNode($key, NULL, $indent, $previous_key, $first_key);
+      // Add the indent
+      $indent += $this->_dumpIndent;
+      // Yamlize the array
+      $string .= $this->_yamlizeArray($value,$indent);
+    } elseif (!is_array($value)) {
+      // It doesn't have children.  Yip.
+      $string = $this->_dumpNode($key, $value, $indent, $previous_key, $first_key);
+    }
+    return $string;
+  }
+
+  /**
+     * Attempts to convert an array to YAML
+     * @access private
+     * @return string
+     * @param $array The array you want to convert
+     * @param $indent The indent of the current level
+     */
+  function _yamlizeArray($array,$indent) {
+    if (is_array($array)) {
+      $string = '';
+      $previous_key = -1;
+      $first_key = key($array);
+      foreach ($array as $key => $value) {
+        $string .= $this->_yamlize($key, $value, $indent, $previous_key, $first_key);
+        $previous_key = $key;
+      }
+      return $string;
+    } else {
+      return false;
+    }
+  }
+
+  /**
+     * Returns YAML from a key and a value
+     * @access private
+     * @return string
+     * @param $key The name of the key
+     * @param $value The value of the item
+     * @param $indent The indent of the current node
+     */
+  function _dumpNode($key, $value, $indent, $previous_key = -1, $first_key = 0) {
+    // do some folding here, for blocks
+    if (is_string ($value) && ((strpos($value,"\n") !== false || strpos($value,": ") !== false || strpos($value,"- ") !== false ||
+      strpos($value,"*") !== false || strpos($value,"#") !== false || strpos($value,"<") !== false || strpos($value,">") !== false ||
+      strpos($value,"[") !== false || strpos($value,"]") !== false || strpos($value,"{") !== false || strpos($value,"}") !== false) || substr ($value, -1, 1) == ':')) {
+      $value = $this->_doLiteralBlock($value,$indent);
+    } else {
+      $value  = $this->_doFolding($value,$indent);
+      if (is_bool($value)) {
+        $value = ($value) ? "true" : "false";
+      }
+    }
+
+    if ($value === array()) $value = '[ ]';
+
+    $spaces = str_repeat(' ',$indent);
+
+    if (is_int($key) && $key - 1 == $previous_key && $first_key===0) {
+      // It's a sequence
+      $string = $spaces.'- '.$value."\n";
+    } else {
+      if ($first_key===0)  throw new Exception('Keys are all screwy.  The first one was zero, now it\'s "'. $key .'"');
+      // It's mapped
+      if (strpos($key, ":") !== false) { $key = '"' . $key . '"'; }
+      $string = $spaces.$key.': '.$value."\n";
+    }
+    return $string;
+  }
+
+  /**
+     * Creates a literal block for dumping
+     * @access private
+     * @return string
+     * @param $value
+     * @param $indent int The value of the indent
+     */
+  function _doLiteralBlock($value,$indent) {
+    if (strpos($value, "\n") === false && strpos($value, "'") === false) {
+      return sprintf ("'%s'", $value);
+    }
+    if (strpos($value, "\n") === false && strpos($value, '"') === false) {
+      return sprintf ('"%s"', $value);
+    }
+    $exploded = explode("\n",$value);
+    $newValue = '|';
+    $indent  += $this->_dumpIndent;
+    $spaces   = str_repeat(' ',$indent);
+    foreach ($exploded as $line) {
+      $newValue .= "\n" . $spaces . trim($line);
+    }
+    return $newValue;
+  }
+
+  /**
+     * Folds a string of text, if necessary
+     * @access private
+     * @return string
+     * @param $value The string you wish to fold
+     */
+  function _doFolding($value,$indent) {
+    // Don't do anything if wordwrap is set to 0
+
+    if ($this->_dumpWordWrap !== 0 && is_string ($value) && strlen($value) > $this->_dumpWordWrap) {
+      $indent += $this->_dumpIndent;
+      $indent = str_repeat(' ',$indent);
+      $wrapped = wordwrap($value,$this->_dumpWordWrap,"\n$indent");
+      $value   = ">\n".$indent.$wrapped;
+    } else {
+      if ($this->setting_dump_force_quotes && is_string ($value))
+        $value = '"' . $value . '"';
+    }
+
+
+    return $value;
+  }
+
+// LOADING FUNCTIONS
+
+  function __load($input) {
+    $Source = $this->loadFromSource($input);
+    return $this->loadWithSource($Source);
+  }
+
+  function __loadString($input) {
+    $Source = $this->loadFromString($input);
+    return $this->loadWithSource($Source);
+  }
+
+  function loadWithSource($Source) {
+    if (empty ($Source)) return array();
+    if ($this->setting_use_syck_is_possible && function_exists ('syck_load')) {
+      $array = syck_load (implode ('', $Source));
+      return is_array($array) ? $array : array();
+    }
+
+    $this->path = array();
+    $this->result = array();
+
+    $cnt = count($Source);
+    for ($i = 0; $i < $cnt; $i++) {
+      $line = $Source[$i];
+      
+      $this->indent = strlen($line) - strlen(ltrim($line));
+      $tempPath = $this->getParentPathByIndent($this->indent);
+      $line = $this->stripIndent($line, $this->indent);
+      if ($this->isComment($line)) continue;
+      if ($this->isEmpty($line)) continue;
+      $this->path = $tempPath;
+
+      $literalBlockStyle = $this->startsLiteralBlock($line);
+      if ($literalBlockStyle) {
+        $line = rtrim ($line, $literalBlockStyle . " \n");
+        $literalBlock = '';
+        $line .= $this->LiteralPlaceHolder;
+
+        while (++$i < $cnt && $this->literalBlockContinues($Source[$i], $this->indent)) {
+          $literalBlock = $this->addLiteralLine($literalBlock, $Source[$i], $literalBlockStyle);
+        }
+        $i--;
+      }
+
+      while (++$i < $cnt && $this->greedilyNeedNextLine($line)) {
+        $line = rtrim ($line, " \n\t\r") . ' ' . ltrim ($Source[$i], " \t");
+      }
+      $i--;
+
+
+
+      if (strpos ($line, '#')) {
+        if (strpos ($line, '"') === false && strpos ($line, "'") === false)
+          $line = preg_replace('/\s+#(.+)$/','',$line);
+      }
+
+      $lineArray = $this->_parseLine($line);
+
+      if ($literalBlockStyle)
+        $lineArray = $this->revertLiteralPlaceHolder ($lineArray, $literalBlock);
+
+      $this->addArray($lineArray, $this->indent);
+
+      foreach ($this->delayedPath as $indent => $delayedPath)
+        $this->path[$indent] = $delayedPath;
+
+      $this->delayedPath = array();
+
+    }
+    return $this->result;
+  }
+
+  function loadFromSource ($input) {
+    if (!empty($input) && strpos($input, "\n") === false && file_exists($input))
+    return file($input);
+
+    return $this->loadFromString($input);
+  }
+
+  function loadFromString ($input) {
+    $lines = explode("\n",$input);
+    foreach ($lines as $k => $_) {
+      $lines[$k] = rtrim ($_, "\r");
+    }
+    return $lines;
+  }
+
+  /**
+     * Parses YAML code and returns an array for a node
+     * @access private
+     * @return array
+     * @param string $line A line from the YAML file
+     */
+  function _parseLine($line) {
+    if (!$line) return array();
+    $line = trim($line);
+
+    if (!$line) return array();
+    $array = array();
+
+    $group = $this->nodeContainsGroup($line);
+    if ($group) {
+      $this->addGroup($line, $group);
+      $line = $this->stripGroup ($line, $group);
+    }
+
+    if ($this->startsMappedSequence($line))
+      return $this->returnMappedSequence($line);
+
+    if ($this->startsMappedValue($line))
+      return $this->returnMappedValue($line);
+
+    if ($this->isArrayElement($line))
+     return $this->returnArrayElement($line);
+
+    if ($this->isPlainArray($line))
+     return $this->returnPlainArray($line); 
+     
+     
+    return $this->returnKeyValuePair($line);
+
+  }
+
+  /**
+     * Finds the type of the passed value, returns the value as the new type.
+     * @access private
+     * @param string $value
+     * @return mixed
+     */
+  function _toType($value) {
+    if ($value === '') return null;
+    $first_character = $value[0];
+    $last_character = substr($value, -1, 1);
+
+    $is_quoted = false;
+    do {
+      if (!$value) break;
+      if ($first_character != '"' && $first_character != "'") break;
+      if ($last_character != '"' && $last_character != "'") break;
+      $is_quoted = true;
+    } while (0);
+
+    if ($is_quoted)
+      return strtr(substr ($value, 1, -1), array ('\\"' => '"', '\'\'' => '\'', '\\\'' => '\''));
+    
+    if (strpos($value, ' #') !== false)
+      $value = preg_replace('/\s+#(.+)$/','',$value);
+
+    if ($first_character == '[' && $last_character == ']') {
+      // Take out strings sequences and mappings
+      $innerValue = trim(substr ($value, 1, -1));
+      if ($innerValue === '') return array();
+      $explode = $this->_inlineEscape($innerValue);
+      // Propagate value array
+      $value  = array();
+      foreach ($explode as $v) {
+        $value[] = $this->_toType($v);
+      }
+      return $value;
+    }
+
+    if (strpos($value,': ')!==false && $first_character != '{') {
+      $array = explode(': ',$value);
+      $key   = trim($array[0]);
+      array_shift($array);
+      $value = trim(implode(': ',$array));
+      $value = $this->_toType($value);
+      return array($key => $value);
+    }
+    
+    if ($first_character == '{' && $last_character == '}') {
+      $innerValue = trim(substr ($value, 1, -1));
+      if ($innerValue === '') return array();
+      // Inline Mapping
+      // Take out strings sequences and mappings
+      $explode = $this->_inlineEscape($innerValue);
+      // Propagate value array
+      $array = array();
+      foreach ($explode as $v) {
+        $SubArr = $this->_toType($v);
+        if (empty($SubArr)) continue;
+        if (is_array ($SubArr)) {
+          $array[key($SubArr)] = $SubArr[key($SubArr)]; continue;
+        }
+        $array[] = $SubArr;
+      }
+      return $array;
+    }
+
+    if ($value == 'null' || $value == 'NULL' || $value == 'Null' || $value == '' || $value == '~') {
+      return null;
+    }
+
+    if (intval($first_character) > 0 && preg_match ('/^[1-9]+[0-9]*$/', $value)) {
+      $intvalue = (int)$value;
+      if ($intvalue != PHP_INT_MAX)
+        $value = $intvalue;
+      return $value;
+    }
+
+    if (in_array($value,
+                 array('true', 'on', '+', 'yes', 'y', 'True', 'TRUE', 'On', 'ON', 'YES', 'Yes', 'Y'))) {
+      return true;
+    }
+
+    if (in_array(strtolower($value),
+                 array('false', 'off', '-', 'no', 'n'))) {
+      return false;
+    }
+
+    if (is_numeric($value)) {
+      if ($value === '0') return 0;
+      if (trim ($value, 0) === $value)
+        $value = (float)$value;
+      return $value;
+    }
+    
+    return $value;
+  }
+
+  /**
+     * Used in inlines to check for more inlines or quoted strings
+     * @access private
+     * @return array
+     */
+  function _inlineEscape($inline) {
+    // There's gotta be a cleaner way to do this...
+    // While pure sequences seem to be nesting just fine,
+    // pure mappings and mappings with sequences inside can't go very
+    // deep.  This needs to be fixed.
+
+    $seqs = array();
+    $maps = array();
+    $saved_strings = array();
+
+    // Check for strings
+    $regex = '/(?:(")|(?:\'))((?(1)[^"]+|[^\']+))(?(1)"|\')/';
+    if (preg_match_all($regex,$inline,$strings)) {
+      $saved_strings = $strings[0];
+      $inline  = preg_replace($regex,'YAMLString',$inline);
+    }
+    unset($regex);
+
+    $i = 0;
+    do {
+
+    // Check for sequences
+    while (preg_match('/\[([^{}\[\]]+)\]/U',$inline,$matchseqs)) {
+      $seqs[] = $matchseqs[0];
+      $inline = preg_replace('/\[([^{}\[\]]+)\]/U', ('YAMLSeq' . (count($seqs) - 1) . 's'), $inline, 1);
+    }
+
+    // Check for mappings
+    while (preg_match('/{([^\[\]{}]+)}/U',$inline,$matchmaps)) {
+      $maps[] = $matchmaps[0];
+      $inline = preg_replace('/{([^\[\]{}]+)}/U', ('YAMLMap' . (count($maps) - 1) . 's'), $inline, 1);
+    }
+
+    if ($i++ >= 10) break;
+
+    } while (strpos ($inline, '[') !== false || strpos ($inline, '{') !== false);
+
+    $explode = explode(', ',$inline);
+    $stringi = 0; $i = 0;
+
+    while (1) {
+
+    // Re-add the sequences
+    if (!empty($seqs)) {
+      foreach ($explode as $key => $value) {
+        if (strpos($value,'YAMLSeq') !== false) {
+          foreach ($seqs as $seqk => $seq) {
+            $explode[$key] = str_replace(('YAMLSeq'.$seqk.'s'),$seq,$value);
+            $value = $explode[$key];
+          }
+        }
+      }
+    }
+
+    // Re-add the mappings
+    if (!empty($maps)) {
+      foreach ($explode as $key => $value) {
+        if (strpos($value,'YAMLMap') !== false) {
+          foreach ($maps as $mapk => $map) {
+            $explode[$key] = str_replace(('YAMLMap'.$mapk.'s'), $map, $value);
+            $value = $explode[$key];
+          }
+        }
+      }
+    }
+
+
+    // Re-add the strings
+    if (!empty($saved_strings)) {
+      foreach ($explode as $key => $value) {
+        while (strpos($value,'YAMLString') !== false) {
+          $explode[$key] = preg_replace('/YAMLString/',$saved_strings[$stringi],$value, 1);
+          unset($saved_strings[$stringi]);
+          ++$stringi;
+          $value = $explode[$key];
+        }
+      }
+    }
+
+    $finished = true;
+    foreach ($explode as $key => $value) {
+      if (strpos($value,'YAMLSeq') !== false) {
+        $finished = false; break;
+      }
+      if (strpos($value,'YAMLMap') !== false) {
+        $finished = false; break;
+      }
+      if (strpos($value,'YAMLString') !== false) {
+        $finished = false; break;
+      }
+    }
+    if ($finished) break;
+
+    $i++;
+    if ($i > 10) 
+      break; // Prevent infinite loops.
+    }
+
+    return $explode;
+  }
+
+  function literalBlockContinues ($line, $lineIndent) {
+    if (!trim($line)) return true;
+    if (strlen($line) - strlen(ltrim($line)) > $lineIndent) return true;
+    return false;
+  }
+
+  function referenceContentsByAlias ($alias) {
+    do {
+      if (!isset($this->SavedGroups[$alias])) { echo "Bad group name: $alias."; break; }
+      $groupPath = $this->SavedGroups[$alias];
+      $value = $this->result;
+      foreach ($groupPath as $k) {
+        $value = $value[$k];
+      }
+    } while (false);
+    return $value;
+  }
+
+  function addArrayInline ($array, $indent) {
+      $CommonGroupPath = $this->path;
+      if (empty ($array)) return false;
+      
+      foreach ($array as $k => $_) {
+        $this->addArray(array($k => $_), $indent);
+        $this->path = $CommonGroupPath;
+      }
+      return true;
+  }
+
+  function addArray ($incoming_data, $incoming_indent) {
+
+   // print_r ($incoming_data);
+
+    if (count ($incoming_data) > 1)
+      return $this->addArrayInline ($incoming_data, $incoming_indent);
+    
+    $key = key ($incoming_data);
+    $value = isset($incoming_data[$key]) ? $incoming_data[$key] : null;
+    if ($key === '__!YAMLZero') $key = '0';
+
+    if ($incoming_indent == 0 && !$this->_containsGroupAlias && !$this->_containsGroupAnchor) { // Shortcut for root-level values.
+      if ($key || $key === '' || $key === '0') {
+        $this->result[$key] = $value;
+      } else {
+        $this->result[] = $value; end ($this->result); $key = key ($this->result);
+      }
+      $this->path[$incoming_indent] = $key;
+      return;
+    }
+
+
+    
+    $history = array();
+    // Unfolding inner array tree.
+    $history[] = $_arr = $this->result;
+    foreach ($this->path as $k) {
+      $history[] = $_arr = $_arr[$k];
+    }
+
+    if ($this->_containsGroupAlias) {
+      $value = $this->referenceContentsByAlias($this->_containsGroupAlias);
+      $this->_containsGroupAlias = false;
+    }
+
+
+    // Adding string or numeric key to the innermost level or $this->arr.
+    if (is_string($key) && $key == '<<') {
+      if (!is_array ($_arr)) { $_arr = array (); }
+      $_arr = array_merge ($_arr, $value);
+    } else if ($key || $key === '' || $key === '0') {
+      $_arr[$key] = $value;
+    } else {
+      if (!is_array ($_arr)) { $_arr = array ($value); $key = 0; }
+      else { $_arr[] = $value; end ($_arr); $key = key ($_arr); }
+    }
+
+    $reverse_path = array_reverse($this->path);
+    $reverse_history = array_reverse ($history);
+    $reverse_history[0] = $_arr;
+    $cnt = count($reverse_history) - 1;
+    for ($i = 0; $i < $cnt; $i++) {
+      $reverse_history[$i+1][$reverse_path[$i]] = $reverse_history[$i];
+    }
+    $this->result = $reverse_history[$cnt];
+
+    $this->path[$incoming_indent] = $key;
+
+    if ($this->_containsGroupAnchor) {
+      $this->SavedGroups[$this->_containsGroupAnchor] = $this->path;
+      if (is_array ($value)) {
+        $k = key ($value);
+        if (!is_int ($k)) {
+          $this->SavedGroups[$this->_containsGroupAnchor][$incoming_indent + 2] = $k;
+        }
+      }
+      $this->_containsGroupAnchor = false;
+    }
+
+  }
+
+  function startsLiteralBlock ($line) {
+    $lastChar = substr (trim($line), -1);
+    if ($lastChar != '>' && $lastChar != '|') return false;
+    if ($lastChar == '|') return $lastChar;
+    // HTML tags should not be counted as literal blocks.
+    if (preg_match ('#<.*?>$#', $line)) return false;
+    return $lastChar;
+  }
+
+  function greedilyNeedNextLine($line) {
+    $line = trim ($line);
+    if (!strlen($line)) return false;
+    if (substr ($line, -1, 1) == ']') return false;
+    if ($line[0] == '[') return true;
+    if (preg_match ('#^[^:]+?:\s*\[#', $line)) return true;
+    return false;
+  }
+
+  function addLiteralLine ($literalBlock, $line, $literalBlockStyle) {
+    $line = $this->stripIndent($line);
+    $line = rtrim ($line, "\r\n\t ") . "\n";
+    if ($literalBlockStyle == '|') {
+      return $literalBlock . $line;
+    }
+    if (strlen($line) == 0)
+      return rtrim($literalBlock, ' ') . "\n";
+    if ($line == "\n" && $literalBlockStyle == '>') {
+      return rtrim ($literalBlock, " \t") . "\n";
+    }
+    if ($line != "\n")
+      $line = trim ($line, "\r\n ") . " ";
+    return $literalBlock . $line;
+  }
+
+   function revertLiteralPlaceHolder ($lineArray, $literalBlock) {
+     foreach ($lineArray as $k => $_) {
+      if (is_array($_))
+        $lineArray[$k] = $this->revertLiteralPlaceHolder ($_, $literalBlock);
+      else if (substr($_, -1 * strlen ($this->LiteralPlaceHolder)) == $this->LiteralPlaceHolder)
+	       $lineArray[$k] = rtrim ($literalBlock, " \r\n");
+     }
+     return $lineArray;
+   }
+
+  function stripIndent ($line, $indent = -1) {
+    if ($indent == -1) $indent = strlen($line) - strlen(ltrim($line));
+    return substr ($line, $indent);
+  }
+
+  function getParentPathByIndent ($indent) {
+    if ($indent == 0) return array();
+    $linePath = $this->path;
+    do {
+      end($linePath); $lastIndentInParentPath = key($linePath);
+      if ($indent <= $lastIndentInParentPath) array_pop ($linePath);
+    } while ($indent <= $lastIndentInParentPath);
+    return $linePath;
+  }
+
+
+  function clearBiggerPathValues ($indent) {
+
+
+    if ($indent == 0) $this->path = array();
+    if (empty ($this->path)) return true;
+
+    foreach ($this->path as $k => $_) {
+      if ($k > $indent) unset ($this->path[$k]);
+    }
+
+    return true;
+  }
+
+
+  function isComment ($line) {
+    if (!$line) return false;
+    if ($line[0] == '#') return true;
+    if (trim($line, " \r\n\t") == '---') return true;
+    return false;
+  }
+
+  function isEmpty ($line) {
+    return (trim ($line) === '');
+  }
+
+
+  function isArrayElement ($line) {
+    if (!$line) return false;
+    if ($line[0] != '-') return false;
+    if (strlen ($line) > 3)
+      if (substr($line,0,3) == '---') return false;
+    
+    return true;
+  }
+
+  function isHashElement ($line) {
+    return strpos($line, ':');
+  }
+
+  function isLiteral ($line) {
+    if ($this->isArrayElement($line)) return false;
+    if ($this->isHashElement($line)) return false;
+    return true;
+  }
+
+
+  function unquote ($value) {
+    if (!$value) return $value;
+    if (!is_string($value)) return $value;
+    if ($value[0] == '\'') return trim ($value, '\'');
+    if ($value[0] == '"') return trim ($value, '"');
+    return $value;
+  }
+
+  function startsMappedSequence ($line) {
+    return ($line[0] == '-' && substr ($line, -1, 1) == ':');
+  }
+
+  function returnMappedSequence ($line) {
+    $array = array();
+    $key         = $this->unquote(trim(substr($line,1,-1)));
+    $array[$key] = array();
+    $this->delayedPath = array(strpos ($line, $key) + $this->indent => $key);
+    return array($array);
+  }
+
+  function returnMappedValue ($line) {
+    $array = array();
+    $key         = $this->unquote (trim(substr($line,0,-1)));
+    $array[$key] = '';
+    return $array;
+  }
+
+  function startsMappedValue ($line) {
+    return (substr ($line, -1, 1) == ':');
+  }
+  
+  function isPlainArray ($line) {
+    return ($line[0] == '[' && substr ($line, -1, 1) == ']');
+  }
+  
+  function returnPlainArray ($line) {
+    return $this->_toType($line); 
+  }  
+
+  function returnKeyValuePair ($line) {
+    $array = array();
+    $key = '';
+    if (strpos ($line, ':')) {
+      // It's a key/value pair most likely
+      // If the key is in double quotes pull it out
+      if (($line[0] == '"' || $line[0] == "'") && preg_match('/^(["\'](.*)["\'](\s)*:)/',$line,$matches)) {
+        $value = trim(str_replace($matches[1],'',$line));
+        $key   = $matches[2];
+      } else {
+        // Do some guesswork as to the key and the value
+        $explode = explode(':',$line);
+        $key     = trim($explode[0]);
+        array_shift($explode);
+        $value   = trim(implode(':',$explode));
+      }
+      // Set the type of the value.  Int, string, etc
+      $value = $this->_toType($value);
+      if ($key === '0') $key = '__!YAMLZero';
+      $array[$key] = $value;
+    } else {
+      $array = array ($line);
+    }
+    return $array;
+
+  }
+
+
+  function returnArrayElement ($line) {
+     if (strlen($line) <= 1) return array(array()); // Weird %)
+     $array = array();
+     $value   = trim(substr($line,1));
+     $value   = $this->_toType($value);
+     $array[] = $value;
+     return $array;
+  }
+
+
+  function nodeContainsGroup ($line) {    
+    $symbolsForReference = 'A-z0-9_\-';
+    if (strpos($line, '&') === false && strpos($line, '*') === false) return false; // Please die fast ;-)
+    if ($line[0] == '&' && preg_match('/^(&['.$symbolsForReference.']+)/', $line, $matches)) return $matches[1];
+    if ($line[0] == '*' && preg_match('/^(\*['.$symbolsForReference.']+)/', $line, $matches)) return $matches[1];
+    if (preg_match('/(&['.$symbolsForReference.']+)$/', $line, $matches)) return $matches[1];
+    if (preg_match('/(\*['.$symbolsForReference.']+$)/', $line, $matches)) return $matches[1];
+    if (preg_match ('#^\s*<<\s*:\s*(\*[^\s]+).*$#', $line, $matches)) return $matches[1];
+    return false;
+
+  }
+
+  function addGroup ($line, $group) {
+    if ($group[0] == '&') $this->_containsGroupAnchor = substr ($group, 1);
+    if ($group[0] == '*') $this->_containsGroupAlias = substr ($group, 1);
+    //print_r ($this->path);
+  }
+
+  function stripGroup ($line, $group) {
+    $line = trim(str_replace($group, '', $line));
+    return $line;
+  }
+}
+
+// Enable use of Spyc from command line
+// The syntax is the following: php spyc.php spyc.yaml
+
+define ('SPYC_FROM_COMMAND_LINE', false);
+
+do {
+  if (!SPYC_FROM_COMMAND_LINE) break;
+  if (empty ($_SERVER['argc']) || $_SERVER['argc'] < 2) break;
+  if (empty ($_SERVER['PHP_SELF']) || $_SERVER['PHP_SELF'] != 'spyc.php') break;
+  $file = $argv[1];
+  printf ("Spyc loading file: %s\n", $file);
+  print_r (spyc_load_file ($file));
+} while (0);
Index: branches/testa/php/spyc-0.5/php4/test.php4
===================================================================
--- branches/testa/php/spyc-0.5/php4/test.php4	(revision 23)
+++ branches/testa/php/spyc-0.5/php4/test.php4	(revision 23)
@@ -0,0 +1,162 @@
+<?php
+#
+#    S P Y C
+#      a simple php yaml class
+#   v0.3
+#
+# author: [chris wanstrath, chris@ozmm.org]
+# websites: [http://www.yaml.org, http://spyc.sourceforge.net/]
+# license: [MIT License, http://www.opensource.org/licenses/mit-license.php]
+# copyright: (c) 2005-2006 Chris Wanstrath
+#
+# We're gonna load a file into memory and see if we get what we expect.
+# If not, we're gonna complain.
+#
+# Pretty lo-fi.  Let's see if we can't get some unit testing going in the next,
+# I dunno, 20 months?  Alright.  Go team.
+#
+
+error_reporting(E_ALL);
+
+include('spyc.php4');
+
+$yaml = Spyc::YAMLLoad('../spyc.yaml');
+
+// print_r ($yaml);
+
+# Added in .2
+if ($yaml[1040] != "Ooo, a numeric key!")
+	die('Key: 1040 failed');
+
+# Test mappings / types
+if ($yaml['String'] != "Anyone's name, really.")
+	die('Key: String failed');
+
+if ($yaml['Int'] !== 13)
+	die('Key: Int failed');
+
+if ($yaml['True'] !== true)
+	die('Key: True failed');
+
+if ($yaml['False'] !== false)
+	die('Key: False failed');
+
+if ($yaml['Zero'] !== 0)
+	die('Key: Zero failed');
+
+if (isset($yaml['Null']))
+	die('Key: Null failed');
+
+if ($yaml['Float'] !== 5.34)
+	die('Key: Float failed');
+
+
+# Test sequences
+if ($yaml[0] != "PHP Class")
+	die('Sequence 0 failed');
+
+if ($yaml[1] != "Basic YAML Loader")
+	die('Sequence 1 failed');
+
+if ($yaml[2] != "Very Basic YAML Dumper")
+	die('Sequence 2 failed');
+
+# A sequence of a sequence
+if ($yaml[3] != array("YAML is so easy to learn.",
+											"Your config files will never be the same."))
+	die('Sequence 3 failed');
+
+# Sequence of mappings
+if ($yaml[4] != array("cpu" => "1.5ghz", "ram" => "1 gig",
+											"os" => "os x 10.4.1"))
+	die('Sequence 4 failed');
+
+# Mapped sequence
+if ($yaml['domains'] != array("yaml.org", "php.net"))
+	die("Key: 'domains' failed");
+
+# A sequence like this.
+if ($yaml[5] != array("program" => "Adium", "platform" => "OS X",
+											"type" => "Chat Client"))
+	die('Sequence 5 failed');
+
+# A folded block as a mapped value
+if ($yaml['no time'] != "There isn't any time for your tricks!\nDo you understand?")
+	die("Key: 'no time' failed");
+
+# A literal block as a mapped value
+if ($yaml['some time'] != "There is nothing but time\nfor your tricks.")
+	die("Key: 'some time' failed");
+
+# Crazy combinations
+if ($yaml['databases'] != array( array("name" => "spartan", "notes" =>
+																			array( "Needs to be backed up",
+																						 "Needs to be normalized" ),
+																			 "type" => "mysql" )))
+  die("Key: 'databases' failed");
+
+# You can be a bit tricky
+if ($yaml["if: you'd"] != "like")
+	die("Key: 'if: you\'d' failed");
+
+# Inline sequences
+if ($yaml[6] != array("One", "Two", "Three", "Four"))
+	die("Sequence 6 failed");
+
+# Nested Inline Sequences
+if ($yaml[7] != array("One", array("Two", "And", "Three"), "Four", "Five"))
+	die("Sequence 7 failed");
+
+# Nested Nested Inline Sequences
+if ($yaml[8] != array( "This", array("Is", "Getting", array("Ridiculous", "Guys")),
+									"Seriously", array("Show", "Mercy")))
+	die("Sequence 8 failed");
+
+# Inline mappings
+if ($yaml[9] != array("name" => "chris", "age" => "young", "brand" => "lucky strike"))
+	die("Sequence 9 failed");
+
+# Nested inline mappings
+if ($yaml[10] != array("name" => "mark", "age" => "older than chris",
+											 "brand" => array("marlboro", "lucky strike")))
+	die("Sequence 10 failed");
+
+# References -- they're shaky, but functional
+if ($yaml['dynamic languages'] != array('Perl', 'Python', 'PHP', 'Ruby'))
+	die("Key: 'dynamic languages' failed");
+
+if ($yaml['compiled languages'] != array('C/C++', 'Java'))
+	die("Key: 'compiled languages' failed");
+
+if ($yaml['all languages'] != array(
+																		array('Perl', 'Python', 'PHP', 'Ruby'),
+																		array('C/C++', 'Java')
+																	 ))
+	die("Key: 'all languages' failed");
+
+# Added in .2.2: Escaped quotes
+if ($yaml[11] != "you know, this shouldn't work.  but it does.")
+	die("Sequence 11 failed.");
+
+if ($yaml[12] != "that's my value.")
+	die("Sequence 12 failed.");
+
+if ($yaml[13] != "again, that's my value.")
+	die("Sequence 13 failed.");
+
+if ($yaml[14] != "here's to \"quotes\", boss.")
+	die("Sequence 14 failed.");
+
+if ($yaml[15] != array( 'name' => "Foo, Bar's", 'age' => 20))
+	die("Sequence 15 failed.");
+
+if ($yaml[16] != array( 0 => "a", 1 => array (0 => 1, 1 => 2), 2 => "b"))
+	die("Sequence 16 failed.");
+
+if ($yaml['endloop'] != "Does this line in the end indeed make Spyc go to an infinite loop?")
+	die("[endloop] failed.");
+
+
+print "spyc.yaml parsed correctly\n";
+
+?>
Index: branches/testa/php/spyc-0.5/spyc.php
===================================================================
--- branches/testa/php/spyc-0.5/spyc.php	(revision 23)
+++ branches/testa/php/spyc-0.5/spyc.php	(revision 23)
@@ -0,0 +1,1046 @@
+<?php
+/**
+   * Spyc -- A Simple PHP YAML Class
+   * @version 0.5
+   * @author Vlad Andersen <vlad.andersen@gmail.com>
+   * @author Chris Wanstrath <chris@ozmm.org>
+   * @link http://code.google.com/p/spyc/
+   * @copyright Copyright 2005-2006 Chris Wanstrath, 2006-2011 Vlad Andersen
+   * @license http://www.opensource.org/licenses/mit-license.php MIT License
+   * @package Spyc
+   */
+
+if (!function_exists('spyc_load')) {
+  /**
+   * Parses YAML to array.
+   * @param string $string YAML string.
+   * @return array
+   */
+  function spyc_load ($string) {
+    return Spyc::YAMLLoadString($string);
+  }
+}
+
+if (!function_exists('spyc_load_file')) {
+  /**
+   * Parses YAML to array.
+   * @param string $file Path to YAML file.
+   * @return array
+   */
+  function spyc_load_file ($file) {
+    return Spyc::YAMLLoad($file);
+  }
+}
+
+/**
+   * The Simple PHP YAML Class.
+   *
+   * This class can be used to read a YAML file and convert its contents
+   * into a PHP array.  It currently supports a very limited subsection of
+   * the YAML spec.
+   *
+   * Usage:
+   * <code>
+   *   $Spyc  = new Spyc;
+   *   $array = $Spyc->load($file);
+   * </code>
+   * or:
+   * <code>
+   *   $array = Spyc::YAMLLoad($file);
+   * </code>
+   * or:
+   * <code>
+   *   $array = spyc_load_file($file);
+   * </code>
+   * @package Spyc
+   */
+class Spyc {
+
+  // SETTINGS
+
+  const REMPTY = "\0\0\0\0\0";
+
+  /**
+   * Setting this to true will force YAMLDump to enclose any string value in
+   * quotes.  False by default.
+   * 
+   * @var bool
+   */
+  public $setting_dump_force_quotes = false;
+
+  /**
+   * Setting this to true will forse YAMLLoad to use syck_load function when
+   * possible. False by default.
+   * @var bool
+   */
+  public $setting_use_syck_is_possible = false;
+
+
+
+  /**#@+
+  * @access private
+  * @var mixed
+  */
+  private $_dumpIndent;
+  private $_dumpWordWrap;
+  private $_containsGroupAnchor = false;
+  private $_containsGroupAlias = false;
+  private $path;
+  private $result;
+  private $LiteralPlaceHolder = '___YAML_Literal_Block___';
+  private $SavedGroups = array();
+  private $indent;
+  /**
+   * Path modifier that should be applied after adding current element.
+   * @var array
+   */
+  private $delayedPath = array();
+
+  /**#@+
+  * @access public
+  * @var mixed
+  */
+  public $_nodeId;
+
+/**
+ * Load a valid YAML string to Spyc.
+ * @param string $input
+ * @return array
+ */
+  public function load ($input) {
+    return $this->__loadString($input);
+  }
+
+ /**
+ * Load a valid YAML file to Spyc.
+ * @param string $file
+ * @return array
+ */
+  public function loadFile ($file) {
+    return $this->__load($file);
+  }
+
+  /**
+     * Load YAML into a PHP array statically
+     *
+     * The load method, when supplied with a YAML stream (string or file),
+     * will do its best to convert YAML in a file into a PHP array.  Pretty
+     * simple.
+     *  Usage:
+     *  <code>
+     *   $array = Spyc::YAMLLoad('lucky.yaml');
+     *   print_r($array);
+     *  </code>
+     * @access public
+     * @return array
+     * @param string $input Path of YAML file or string containing YAML
+     */
+  public static function YAMLLoad($input) {
+    $Spyc = new Spyc;
+    return $Spyc->__load($input);
+  }
+
+  /**
+     * Load a string of YAML into a PHP array statically
+     *
+     * The load method, when supplied with a YAML string, will do its best 
+     * to convert YAML in a string into a PHP array.  Pretty simple.
+     *
+     * Note: use this function if you don't want files from the file system
+     * loaded and processed as YAML.  This is of interest to people concerned
+     * about security whose input is from a string.
+     *
+     *  Usage:
+     *  <code>
+     *   $array = Spyc::YAMLLoadString("---\n0: hello world\n");
+     *   print_r($array);
+     *  </code>
+     * @access public
+     * @return array
+     * @param string $input String containing YAML
+     */
+  public static function YAMLLoadString($input) {
+    $Spyc = new Spyc;
+    return $Spyc->__loadString($input);
+  }
+
+  /**
+     * Dump YAML from PHP array statically
+     *
+     * The dump method, when supplied with an array, will do its best
+     * to convert the array into friendly YAML.  Pretty simple.  Feel free to
+     * save the returned string as nothing.yaml and pass it around.
+     *
+     * Oh, and you can decide how big the indent is and what the wordwrap
+     * for folding is.  Pretty cool -- just pass in 'false' for either if
+     * you want to use the default.
+     *
+     * Indent's default is 2 spaces, wordwrap's default is 40 characters.  And
+     * you can turn off wordwrap by passing in 0.
+     *
+     * @access public
+     * @return string
+     * @param array $array PHP array
+     * @param int $indent Pass in false to use the default, which is 2
+     * @param int $wordwrap Pass in 0 for no wordwrap, false for default (40)
+     */
+  public static function YAMLDump($array,$indent = false,$wordwrap = false) {
+    $spyc = new Spyc;
+    return $spyc->dump($array,$indent,$wordwrap);
+  }
+
+
+  /**
+     * Dump PHP array to YAML
+     *
+     * The dump method, when supplied with an array, will do its best
+     * to convert the array into friendly YAML.  Pretty simple.  Feel free to
+     * save the returned string as tasteful.yaml and pass it around.
+     *
+     * Oh, and you can decide how big the indent is and what the wordwrap
+     * for folding is.  Pretty cool -- just pass in 'false' for either if
+     * you want to use the default.
+     *
+     * Indent's default is 2 spaces, wordwrap's default is 40 characters.  And
+     * you can turn off wordwrap by passing in 0.
+     *
+     * @access public
+     * @return string
+     * @param array $array PHP array
+     * @param int $indent Pass in false to use the default, which is 2
+     * @param int $wordwrap Pass in 0 for no wordwrap, false for default (40)
+     */
+  public function dump($array,$indent = false,$wordwrap = false) {
+    // Dumps to some very clean YAML.  We'll have to add some more features
+    // and options soon.  And better support for folding.
+
+    // New features and options.
+    if ($indent === false or !is_numeric($indent)) {
+      $this->_dumpIndent = 2;
+    } else {
+      $this->_dumpIndent = $indent;
+    }
+
+    if ($wordwrap === false or !is_numeric($wordwrap)) {
+      $this->_dumpWordWrap = 40;
+    } else {
+      $this->_dumpWordWrap = $wordwrap;
+    }
+
+    // New YAML document
+    $string = "---\n";
+
+    // Start at the base of the array and move through it.
+    if ($array) {
+      $array = (array)$array; 
+      $previous_key = -1;
+      foreach ($array as $key => $value) {
+        if (!isset($first_key)) $first_key = $key;
+        $string .= $this->_yamlize($key,$value,0,$previous_key, $first_key, $array);
+        $previous_key = $key;
+      }
+    }
+    return $string;
+  }
+
+  /**
+     * Attempts to convert a key / value array item to YAML
+     * @access private
+     * @return string
+     * @param $key The name of the key
+     * @param $value The value of the item
+     * @param $indent The indent of the current node
+     */
+  private function _yamlize($key,$value,$indent, $previous_key = -1, $first_key = 0, $source_array = null) {
+    if (is_array($value)) {
+      if (empty ($value))
+        return $this->_dumpNode($key, array(), $indent, $previous_key, $first_key, $source_array);
+      // It has children.  What to do?
+      // Make it the right kind of item
+      $string = $this->_dumpNode($key, self::REMPTY, $indent, $previous_key, $first_key, $source_array);
+      // Add the indent
+      $indent += $this->_dumpIndent;
+      // Yamlize the array
+      $string .= $this->_yamlizeArray($value,$indent);
+    } elseif (!is_array($value)) {
+      // It doesn't have children.  Yip.
+      $string = $this->_dumpNode($key, $value, $indent, $previous_key, $first_key, $source_array);
+    }
+    return $string;
+  }
+
+  /**
+     * Attempts to convert an array to YAML
+     * @access private
+     * @return string
+     * @param $array The array you want to convert
+     * @param $indent The indent of the current level
+     */
+  private function _yamlizeArray($array,$indent) {
+    if (is_array($array)) {
+      $string = '';
+      $previous_key = -1;
+      foreach ($array as $key => $value) {
+        if (!isset($first_key)) $first_key = $key;
+        $string .= $this->_yamlize($key, $value, $indent, $previous_key, $first_key, $array);
+        $previous_key = $key;
+      }
+      return $string;
+    } else {
+      return false;
+    }
+  }
+
+  /**
+     * Returns YAML from a key and a value
+     * @access private
+     * @return string
+     * @param $key The name of the key
+     * @param $value The value of the item
+     * @param $indent The indent of the current node
+     */
+  private function _dumpNode($key, $value, $indent, $previous_key = -1, $first_key = 0, $source_array = null) {
+    // do some folding here, for blocks
+    if (is_string ($value) && ((strpos($value,"\n") !== false || strpos($value,": ") !== false || strpos($value,"- ") !== false ||
+      strpos($value,"*") !== false || strpos($value,"#") !== false || strpos($value,"<") !== false || strpos($value,">") !== false || strpos ($value, '  ') !== false ||
+      strpos($value,"[") !== false || strpos($value,"]") !== false || strpos($value,"{") !== false || strpos($value,"}") !== false) || strpos($value,"&") !== false || strpos($value, "'") !== false || strpos($value, "!") === 0 ||
+      substr ($value, -1, 1) == ':')
+    ) {
+      $value = $this->_doLiteralBlock($value,$indent);
+    } else {
+      $value  = $this->_doFolding($value,$indent);
+    }
+
+    if ($value === array()) $value = '[ ]';
+    if (in_array ($value, array ('true', 'TRUE', 'false', 'FALSE', 'y', 'Y', 'n', 'N', 'null', 'NULL'), true)) {
+       $value = $this->_doLiteralBlock($value,$indent);
+    }
+    if (trim ($value) != $value)
+       $value = $this->_doLiteralBlock($value,$indent);
+
+    if (is_bool($value)) {
+       $value = ($value) ? "true" : "false";
+    }
+    
+    if ($value === null) $value = 'null';
+    if ($value === "'" . self::REMPTY . "'") $value = null;
+
+    $spaces = str_repeat(' ',$indent);
+
+    //if (is_int($key) && $key - 1 == $previous_key && $first_key===0) {
+    if (is_array ($source_array) && array_keys($source_array) === range(0, count($source_array) - 1)) {
+      // It's a sequence
+      $string = $spaces.'- '.$value."\n";
+    } else {
+      // if ($first_key===0)  throw new Exception('Keys are all screwy.  The first one was zero, now it\'s "'. $key .'"');
+      // It's mapped
+      if (strpos($key, ":") !== false || strpos($key, "#") !== false) { $key = '"' . $key . '"'; }
+      $string = rtrim ($spaces.$key.': '.$value)."\n";
+    }
+    return $string;
+  }
+
+  /**
+     * Creates a literal block for dumping
+     * @access private
+     * @return string
+     * @param $value
+     * @param $indent int The value of the indent
+     */
+  private function _doLiteralBlock($value,$indent) {
+    if ($value === "\n") return '\n';
+    if (strpos($value, "\n") === false && strpos($value, "'") === false) {
+      return sprintf ("'%s'", $value);
+    }
+    if (strpos($value, "\n") === false && strpos($value, '"') === false) {
+      return sprintf ('"%s"', $value);
+    }
+    $exploded = explode("\n",$value);
+    $newValue = '|';
+    $indent  += $this->_dumpIndent;
+    $spaces   = str_repeat(' ',$indent);
+    foreach ($exploded as $line) {
+      $newValue .= "\n" . $spaces . ($line);
+    }
+    return $newValue;
+  }
+
+  /**
+     * Folds a string of text, if necessary
+     * @access private
+     * @return string
+     * @param $value The string you wish to fold
+     */
+  private function _doFolding($value,$indent) {
+    // Don't do anything if wordwrap is set to 0
+
+    if ($this->_dumpWordWrap !== 0 && is_string ($value) && strlen($value) > $this->_dumpWordWrap) {
+      $indent += $this->_dumpIndent;
+      $indent = str_repeat(' ',$indent);
+      $wrapped = wordwrap($value,$this->_dumpWordWrap,"\n$indent");
+      $value   = ">\n".$indent.$wrapped;
+    } else {
+      if ($this->setting_dump_force_quotes && is_string ($value) && $value !== self::REMPTY)
+        $value = '"' . $value . '"';
+    }
+
+
+    return $value;
+  }
+
+// LOADING FUNCTIONS
+
+  private function __load($input) {
+    $Source = $this->loadFromSource($input);
+    return $this->loadWithSource($Source);
+  }
+
+  private function __loadString($input) {
+    $Source = $this->loadFromString($input);
+    return $this->loadWithSource($Source);
+  }
+
+  private function loadWithSource($Source) {
+    if (empty ($Source)) return array();
+    if ($this->setting_use_syck_is_possible && function_exists ('syck_load')) {
+      $array = syck_load (implode ('', $Source));
+      return is_array($array) ? $array : array();
+    }
+
+    $this->path = array();
+    $this->result = array();
+
+    $cnt = count($Source);
+    for ($i = 0; $i < $cnt; $i++) {
+      $line = $Source[$i];
+      
+      $this->indent = strlen($line) - strlen(ltrim($line));
+      $tempPath = $this->getParentPathByIndent($this->indent);
+      $line = self::stripIndent($line, $this->indent);
+      if (self::isComment($line)) continue;
+      if (self::isEmpty($line)) continue;
+      $this->path = $tempPath;
+
+      $literalBlockStyle = self::startsLiteralBlock($line);
+      if ($literalBlockStyle) {
+        $line = rtrim ($line, $literalBlockStyle . " \n");
+        $literalBlock = '';
+        $line .= $this->LiteralPlaceHolder;
+        $literal_block_indent = strlen($Source[$i+1]) - strlen(ltrim($Source[$i+1]));
+        while (++$i < $cnt && $this->literalBlockContinues($Source[$i], $this->indent)) {
+          $literalBlock = $this->addLiteralLine($literalBlock, $Source[$i], $literalBlockStyle, $literal_block_indent);
+        }
+        $i--;
+      }
+
+      while (++$i < $cnt && self::greedilyNeedNextLine($line)) {
+        $line = rtrim ($line, " \n\t\r") . ' ' . ltrim ($Source[$i], " \t");
+      }
+      $i--;
+
+
+
+      if (strpos ($line, '#')) {
+        if (strpos ($line, '"') === false && strpos ($line, "'") === false)
+          $line = preg_replace('/\s+#(.+)$/','',$line);
+      }
+
+      $lineArray = $this->_parseLine($line);
+
+      if ($literalBlockStyle)
+        $lineArray = $this->revertLiteralPlaceHolder ($lineArray, $literalBlock);
+
+      $this->addArray($lineArray, $this->indent);
+
+      foreach ($this->delayedPath as $indent => $delayedPath)
+        $this->path[$indent] = $delayedPath;
+
+      $this->delayedPath = array();
+
+    }
+    return $this->result;
+  }
+
+  private function loadFromSource ($input) {
+    if (!empty($input) && strpos($input, "\n") === false && file_exists($input))
+    return file($input);
+
+    return $this->loadFromString($input);
+  }
+
+  private function loadFromString ($input) {
+    $lines = explode("\n",$input);
+    foreach ($lines as $k => $_) {
+      $lines[$k] = rtrim ($_, "\r");
+    }
+    return $lines;
+  }
+
+  /**
+     * Parses YAML code and returns an array for a node
+     * @access private
+     * @return array
+     * @param string $line A line from the YAML file
+     */
+  private function _parseLine($line) {
+    if (!$line) return array();
+    $line = trim($line);
+    if (!$line) return array();
+
+    $array = array();
+
+    $group = $this->nodeContainsGroup($line);
+    if ($group) {
+      $this->addGroup($line, $group);
+      $line = $this->stripGroup ($line, $group);
+    }
+
+    if ($this->startsMappedSequence($line))
+      return $this->returnMappedSequence($line);
+
+    if ($this->startsMappedValue($line))
+      return $this->returnMappedValue($line);
+
+    if ($this->isArrayElement($line))
+     return $this->returnArrayElement($line);
+
+    if ($this->isPlainArray($line))
+     return $this->returnPlainArray($line); 
+     
+     
+    return $this->returnKeyValuePair($line);
+
+  }
+
+  /**
+     * Finds the type of the passed value, returns the value as the new type.
+     * @access private
+     * @param string $value
+     * @return mixed
+     */
+  private function _toType($value) {
+    if ($value === '') return null;
+    $first_character = $value[0];
+    $last_character = substr($value, -1, 1);
+
+    $is_quoted = false;
+    do {
+      if (!$value) break;
+      if ($first_character != '"' && $first_character != "'") break;
+      if ($last_character != '"' && $last_character != "'") break;
+      $is_quoted = true;
+    } while (0);
+
+    if ($is_quoted)
+      return strtr(substr ($value, 1, -1), array ('\\"' => '"', '\'\'' => '\'', '\\\'' => '\''));
+    
+    if (strpos($value, ' #') !== false && !$is_quoted)
+      $value = preg_replace('/\s+#(.+)$/','',$value);
+
+    if (!$is_quoted) $value = str_replace('\n', "\n", $value);
+
+    if ($first_character == '[' && $last_character == ']') {
+      // Take out strings sequences and mappings
+      $innerValue = trim(substr ($value, 1, -1));
+      if ($innerValue === '') return array();
+      $explode = $this->_inlineEscape($innerValue);
+      // Propagate value array
+      $value  = array();
+      foreach ($explode as $v) {
+        $value[] = $this->_toType($v);
+      }
+      return $value;
+    }
+
+    if (strpos($value,': ')!==false && $first_character != '{') {
+      $array = explode(': ',$value);
+      $key   = trim($array[0]);
+      array_shift($array);
+      $value = trim(implode(': ',$array));
+      $value = $this->_toType($value);
+      return array($key => $value);
+    }
+    
+    if ($first_character == '{' && $last_character == '}') {
+      $innerValue = trim(substr ($value, 1, -1));
+      if ($innerValue === '') return array();
+      // Inline Mapping
+      // Take out strings sequences and mappings
+      $explode = $this->_inlineEscape($innerValue);
+      // Propagate value array
+      $array = array();
+      foreach ($explode as $v) {
+        $SubArr = $this->_toType($v);
+        if (empty($SubArr)) continue;
+        if (is_array ($SubArr)) {
+          $array[key($SubArr)] = $SubArr[key($SubArr)]; continue;
+        }
+        $array[] = $SubArr;
+      }
+      return $array;
+    }
+
+    if ($value == 'null' || $value == 'NULL' || $value == 'Null' || $value == '' || $value == '~') {
+      return null;
+    }
+
+    if ( is_numeric($value) && preg_match ('/^(-|)[1-9]+[0-9]*$/', $value) ){
+      $intvalue = (int)$value;
+      if ($intvalue != PHP_INT_MAX)
+        $value = $intvalue;
+      return $value;
+    }
+
+    if (in_array($value,
+                 array('true', 'on', '+', 'yes', 'y', 'True', 'TRUE', 'On', 'ON', 'YES', 'Yes', 'Y'))) {
+      return true;
+    }
+
+    if (in_array(strtolower($value),
+                 array('false', 'off', '-', 'no', 'n'))) {
+      return false;
+    }
+
+    if (is_numeric($value)) {
+      if ($value === '0') return 0;
+      if (rtrim ($value, 0) === $value)
+        $value = (float)$value;
+      return $value;
+    }
+    
+    return $value;
+  }
+
+  /**
+     * Used in inlines to check for more inlines or quoted strings
+     * @access private
+     * @return array
+     */
+  private function _inlineEscape($inline) {
+    // There's gotta be a cleaner way to do this...
+    // While pure sequences seem to be nesting just fine,
+    // pure mappings and mappings with sequences inside can't go very
+    // deep.  This needs to be fixed.
+
+    $seqs = array();
+    $maps = array();
+    $saved_strings = array();
+
+    // Check for strings
+    $regex = '/(?:(")|(?:\'))((?(1)[^"]+|[^\']+))(?(1)"|\')/';
+    if (preg_match_all($regex,$inline,$strings)) {
+      $saved_strings = $strings[0];
+      $inline  = preg_replace($regex,'YAMLString',$inline);
+    }
+    unset($regex);
+
+    $i = 0;
+    do {
+
+    // Check for sequences
+    while (preg_match('/\[([^{}\[\]]+)\]/U',$inline,$matchseqs)) {
+      $seqs[] = $matchseqs[0];
+      $inline = preg_replace('/\[([^{}\[\]]+)\]/U', ('YAMLSeq' . (count($seqs) - 1) . 's'), $inline, 1);
+    }
+
+    // Check for mappings
+    while (preg_match('/{([^\[\]{}]+)}/U',$inline,$matchmaps)) {
+      $maps[] = $matchmaps[0];
+      $inline = preg_replace('/{([^\[\]{}]+)}/U', ('YAMLMap' . (count($maps) - 1) . 's'), $inline, 1);
+    }
+
+    if ($i++ >= 10) break;
+
+    } while (strpos ($inline, '[') !== false || strpos ($inline, '{') !== false);
+
+    $explode = explode(', ',$inline);
+    $stringi = 0; $i = 0;
+
+    while (1) {
+
+    // Re-add the sequences
+    if (!empty($seqs)) {
+      foreach ($explode as $key => $value) {
+        if (strpos($value,'YAMLSeq') !== false) {
+          foreach ($seqs as $seqk => $seq) {
+            $explode[$key] = str_replace(('YAMLSeq'.$seqk.'s'),$seq,$value);
+            $value = $explode[$key];
+          }
+        }
+      }
+    }
+
+    // Re-add the mappings
+    if (!empty($maps)) {
+      foreach ($explode as $key => $value) {
+        if (strpos($value,'YAMLMap') !== false) {
+          foreach ($maps as $mapk => $map) {
+            $explode[$key] = str_replace(('YAMLMap'.$mapk.'s'), $map, $value);
+            $value = $explode[$key];
+          }
+        }
+      }
+    }
+
+
+    // Re-add the strings
+    if (!empty($saved_strings)) {
+      foreach ($explode as $key => $value) {
+        while (strpos($value,'YAMLString') !== false) {
+          $explode[$key] = preg_replace('/YAMLString/',$saved_strings[$stringi],$value, 1);
+          unset($saved_strings[$stringi]);
+          ++$stringi;
+          $value = $explode[$key];
+        }
+      }
+    }
+
+    $finished = true;
+    foreach ($explode as $key => $value) {
+      if (strpos($value,'YAMLSeq') !== false) {
+        $finished = false; break;
+      }
+      if (strpos($value,'YAMLMap') !== false) {
+        $finished = false; break;
+      }
+      if (strpos($value,'YAMLString') !== false) {
+        $finished = false; break;
+      }
+    }
+    if ($finished) break;
+
+    $i++;
+    if ($i > 10) 
+      break; // Prevent infinite loops.
+    }
+
+    return $explode;
+  }
+
+  private function literalBlockContinues ($line, $lineIndent) {
+    if (!trim($line)) return true;
+    if (strlen($line) - strlen(ltrim($line)) > $lineIndent) return true;
+    return false;
+  }
+
+  private function referenceContentsByAlias ($alias) {
+    do {
+      if (!isset($this->SavedGroups[$alias])) { echo "Bad group name: $alias."; break; }
+      $groupPath = $this->SavedGroups[$alias];
+      $value = $this->result;
+      foreach ($groupPath as $k) {
+        $value = $value[$k];
+      }
+    } while (false);
+    return $value;
+  }
+
+  private function addArrayInline ($array, $indent) {
+      $CommonGroupPath = $this->path;
+      if (empty ($array)) return false;
+      
+      foreach ($array as $k => $_) {
+        $this->addArray(array($k => $_), $indent);
+        $this->path = $CommonGroupPath;
+      }
+      return true;
+  }
+
+  private function addArray ($incoming_data, $incoming_indent) {
+
+   // print_r ($incoming_data);
+
+    if (count ($incoming_data) > 1)
+      return $this->addArrayInline ($incoming_data, $incoming_indent);
+    
+    $key = key ($incoming_data);
+    $value = isset($incoming_data[$key]) ? $incoming_data[$key] : null;
+    if ($key === '__!YAMLZero') $key = '0';
+
+    if ($incoming_indent == 0 && !$this->_containsGroupAlias && !$this->_containsGroupAnchor) { // Shortcut for root-level values.
+      if ($key || $key === '' || $key === '0') {
+        $this->result[$key] = $value;
+      } else {
+        $this->result[] = $value; end ($this->result); $key = key ($this->result);
+      }
+      $this->path[$incoming_indent] = $key;
+      return;
+    }
+
+
+    
+    $history = array();
+    // Unfolding inner array tree.
+    $history[] = $_arr = $this->result;
+    foreach ($this->path as $k) {
+      $history[] = $_arr = $_arr[$k];
+    }
+
+    if ($this->_containsGroupAlias) {
+      $value = $this->referenceContentsByAlias($this->_containsGroupAlias);
+      $this->_containsGroupAlias = false;
+    }
+
+
+    // Adding string or numeric key to the innermost level or $this->arr.
+    if (is_string($key) && $key == '<<') {
+      if (!is_array ($_arr)) { $_arr = array (); }
+
+      $_arr = array_merge ($_arr, $value);
+    } else if ($key || $key === '' || $key === '0') {
+      if (!is_array ($_arr))
+        $_arr = array ($key=>$value);
+      else
+        $_arr[$key] = $value;
+    } else {
+      if (!is_array ($_arr)) { $_arr = array ($value); $key = 0; }
+      else { $_arr[] = $value; end ($_arr); $key = key ($_arr); }
+    }
+
+    $reverse_path = array_reverse($this->path);
+    $reverse_history = array_reverse ($history);
+    $reverse_history[0] = $_arr;
+    $cnt = count($reverse_history) - 1;
+    for ($i = 0; $i < $cnt; $i++) {
+      $reverse_history[$i+1][$reverse_path[$i]] = $reverse_history[$i];
+    }
+    $this->result = $reverse_history[$cnt];
+
+    $this->path[$incoming_indent] = $key;
+
+    if ($this->_containsGroupAnchor) {
+      $this->SavedGroups[$this->_containsGroupAnchor] = $this->path;
+      if (is_array ($value)) {
+        $k = key ($value);
+        if (!is_int ($k)) {
+          $this->SavedGroups[$this->_containsGroupAnchor][$incoming_indent + 2] = $k;
+        }
+      }
+      $this->_containsGroupAnchor = false;
+    }
+
+  }
+
+  private static function startsLiteralBlock ($line) {
+    $lastChar = substr (trim($line), -1);
+    if ($lastChar != '>' && $lastChar != '|') return false;
+    if ($lastChar == '|') return $lastChar;
+    // HTML tags should not be counted as literal blocks.
+    if (preg_match ('#<.*?>$#', $line)) return false;
+    return $lastChar;
+  }
+
+  private static function greedilyNeedNextLine($line) {
+    $line = trim ($line);
+    if (!strlen($line)) return false;
+    if (substr ($line, -1, 1) == ']') return false;
+    if ($line[0] == '[') return true;
+    if (preg_match ('#^[^:]+?:\s*\[#', $line)) return true;
+    return false;
+  }
+
+  private function addLiteralLine ($literalBlock, $line, $literalBlockStyle, $indent = -1) {
+    $line = self::stripIndent($line, $indent);
+    if ($literalBlockStyle !== '|') {
+        $line = self::stripIndent($line);
+    }
+    $line = rtrim ($line, "\r\n\t ") . "\n";
+    if ($literalBlockStyle == '|') {
+      return $literalBlock . $line;
+    }
+    if (strlen($line) == 0)
+      return rtrim($literalBlock, ' ') . "\n";
+    if ($line == "\n" && $literalBlockStyle == '>') {
+      return rtrim ($literalBlock, " \t") . "\n";
+    }
+    if ($line != "\n")
+      $line = trim ($line, "\r\n ") . " ";
+    return $literalBlock . $line;
+  }
+
+   function revertLiteralPlaceHolder ($lineArray, $literalBlock) {
+     foreach ($lineArray as $k => $_) {
+      if (is_array($_))
+        $lineArray[$k] = $this->revertLiteralPlaceHolder ($_, $literalBlock);
+      else if (substr($_, -1 * strlen ($this->LiteralPlaceHolder)) == $this->LiteralPlaceHolder)
+	       $lineArray[$k] = rtrim ($literalBlock, " \r\n");
+     }
+     return $lineArray;
+   }
+
+  private static function stripIndent ($line, $indent = -1) {
+    if ($indent == -1) $indent = strlen($line) - strlen(ltrim($line));
+    return substr ($line, $indent);
+  }
+
+  private function getParentPathByIndent ($indent) {
+    if ($indent == 0) return array();
+    $linePath = $this->path;
+    do {
+      end($linePath); $lastIndentInParentPath = key($linePath);
+      if ($indent <= $lastIndentInParentPath) array_pop ($linePath);
+    } while ($indent <= $lastIndentInParentPath);
+    return $linePath;
+  }
+
+
+  private function clearBiggerPathValues ($indent) {
+
+
+    if ($indent == 0) $this->path = array();
+    if (empty ($this->path)) return true;
+
+    foreach ($this->path as $k => $_) {
+      if ($k > $indent) unset ($this->path[$k]);
+    }
+
+    return true;
+  }
+
+
+  private static function isComment ($line) {
+    if (!$line) return false;
+    if ($line[0] == '#') return true;
+    if (trim($line, " \r\n\t") == '---') return true;
+    return false;
+  }
+
+  private static function isEmpty ($line) {
+    return (trim ($line) === '');
+  }
+
+
+  private function isArrayElement ($line) {
+    if (!$line) return false;
+    if ($line[0] != '-') return false;
+    if (strlen ($line) > 3)
+      if (substr($line,0,3) == '---') return false;
+    
+    return true;
+  }
+
+  private function isHashElement ($line) {
+    return strpos($line, ':');
+  }
+
+  private function isLiteral ($line) {
+    if ($this->isArrayElement($line)) return false;
+    if ($this->isHashElement($line)) return false;
+    return true;
+  }
+
+
+  private static function unquote ($value) {
+    if (!$value) return $value;
+    if (!is_string($value)) return $value;
+    if ($value[0] == '\'') return trim ($value, '\'');
+    if ($value[0] == '"') return trim ($value, '"');
+    return $value;
+  }
+
+  private function startsMappedSequence ($line) {
+    return ($line[0] == '-' && substr ($line, -1, 1) == ':');
+  }
+
+  private function returnMappedSequence ($line) {
+    $array = array();
+    $key         = self::unquote(trim(substr($line,1,-1)));
+    $array[$key] = array();
+    $this->delayedPath = array(strpos ($line, $key) + $this->indent => $key);
+    return array($array);
+  }
+
+  private function returnMappedValue ($line) {
+    $array = array();
+    $key         = self::unquote (trim(substr($line,0,-1)));
+    $array[$key] = '';
+    return $array;
+  }
+
+  private function startsMappedValue ($line) {
+    return (substr ($line, -1, 1) == ':');
+  }
+  
+  private function isPlainArray ($line) {
+    return ($line[0] == '[' && substr ($line, -1, 1) == ']');
+  }
+  
+  private function returnPlainArray ($line) {
+    return $this->_toType($line); 
+  }  
+
+  private function returnKeyValuePair ($line) {
+    $array = array();
+    $key = '';
+    if (strpos ($line, ':')) {
+      // It's a key/value pair most likely
+      // If the key is in double quotes pull it out
+      if (($line[0] == '"' || $line[0] == "'") && preg_match('/^(["\'](.*)["\'](\s)*:)/',$line,$matches)) {
+        $value = trim(str_replace($matches[1],'',$line));
+        $key   = $matches[2];
+      } else {
+        // Do some guesswork as to the key and the value
+        $explode = explode(':',$line);
+        $key     = trim($explode[0]);
+        array_shift($explode);
+        $value   = trim(implode(':',$explode));
+      }
+      // Set the type of the value.  Int, string, etc
+      $value = $this->_toType($value);
+      if ($key === '0') $key = '__!YAMLZero';
+      $array[$key] = $value;
+    } else {
+      $array = array ($line);
+    }
+    return $array;
+
+  }
+
+
+  private function returnArrayElement ($line) {
+     if (strlen($line) <= 1) return array(array()); // Weird %)
+     $array = array();
+     $value   = trim(substr($line,1));
+     $value   = $this->_toType($value);
+     $array[] = $value;
+     return $array;
+  }
+
+
+  private function nodeContainsGroup ($line) {    
+    $symbolsForReference = 'A-z0-9_\-';
+    if (strpos($line, '&') === false && strpos($line, '*') === false) return false; // Please die fast ;-)
+    if ($line[0] == '&' && preg_match('/^(&['.$symbolsForReference.']+)/', $line, $matches)) return $matches[1];
+    if ($line[0] == '*' && preg_match('/^(\*['.$symbolsForReference.']+)/', $line, $matches)) return $matches[1];
+    if (preg_match('/(&['.$symbolsForReference.']+)$/', $line, $matches)) return $matches[1];
+    if (preg_match('/(\*['.$symbolsForReference.']+$)/', $line, $matches)) return $matches[1];
+    if (preg_match ('#^\s*<<\s*:\s*(\*[^\s]+).*$#', $line, $matches)) return $matches[1];
+    return false;
+
+  }
+
+  private function addGroup ($line, $group) {
+    if ($group[0] == '&') $this->_containsGroupAnchor = substr ($group, 1);
+    if ($group[0] == '*') $this->_containsGroupAlias = substr ($group, 1);
+    //print_r ($this->path);
+  }
+
+  private function stripGroup ($line, $group) {
+    $line = trim(str_replace($group, '', $line));
+    return $line;
+  }
+}
+
+// Enable use of Spyc from command line
+// The syntax is the following: php spyc.php spyc.yaml
+
+define ('SPYC_FROM_COMMAND_LINE', false);
+
+do {
+  if (!SPYC_FROM_COMMAND_LINE) break;
+  if (empty ($_SERVER['argc']) || $_SERVER['argc'] < 2) break;
+  if (empty ($_SERVER['PHP_SELF']) || $_SERVER['PHP_SELF'] != 'spyc.php') break;
+  $file = $argv[1];
+  printf ("Spyc loading file: %s\n", $file);
+  print_r (spyc_load_file ($file));
+} while (0);
Index: branches/testa/php/spyc-0.5/spyc.yaml
===================================================================
--- branches/testa/php/spyc-0.5/spyc.yaml	(revision 23)
+++ branches/testa/php/spyc-0.5/spyc.yaml	(revision 23)
@@ -0,0 +1,203 @@
+#
+#    S P Y C
+#      a simple php yaml class
+#
+# authors: [vlad andersen (vlad.andersen@gmail.com), chris wanstrath (chris@ozmm.org)]
+# websites: [http://www.yaml.org, http://spyc.sourceforge.net/]
+# license: [MIT License, http://www.opensource.org/licenses/mit-license.php]
+# copyright: (c) 2005-2006 Chris Wanstrath, 2006-2011 Vlad Andersen
+#
+# spyc.yml - A file containing the YAML that Spyc understands.
+
+---
+
+# Mappings - with proper types
+String: Anyone's name, really.
+Int: 13
+True: true
+False: false
+Zero: 0
+Null: NULL
+NotNull: 'null'
+NotTrue: 'y'
+NotBoolTrue: 'true'
+NotInt: '5'
+Float: 5.34
+Negative: -90
+SmallFloat: 0.7
+NewLine: \n
+
+# A sequence
+- PHP Class
+- Basic YAML Loader
+- Very Basic YAML Dumper
+
+# A sequence of a sequence
+-
+  - YAML is so easy to learn.
+  - Your config files will never be the same.
+
+# Sequence of mappings
+-
+  cpu: 1.5ghz
+  ram: 1 gig
+  os : os x 10.4.1
+
+# Mapped sequence
+domains:
+  - yaml.org
+  - php.net
+
+# A sequence like this.
+- program: Adium
+  platform: OS X
+  type: Chat Client
+
+# A folded block as a mapped value
+no time: >
+  There isn't any time
+  for your tricks!
+
+  Do you understand?
+
+# A literal block as a mapped value
+some time: |
+  There is nothing but time
+  for your tricks.
+
+# Crazy combinations
+databases:
+  - name: spartan
+    notes:
+      - Needs to be backed up
+      - Needs to be normalized
+    type: mysql
+
+# You can be a bit tricky
+"if: you'd": like
+
+# Inline sequences
+- [One, Two, Three, Four]
+
+# Nested Inline Sequences
+- [One, [Two, And, Three], Four, Five]
+
+# Nested Nested Inline Sequences
+- [This, [Is, Getting, [Ridiculous, Guys]], Seriously, [Show, Mercy]]
+
+# Inline mappings
+- {name: chris, age: young, brand: lucky strike}
+
+# Nested inline mappings
+- {name: mark, age: older than chris, brand: [marlboro, lucky strike]}
+
+# References -- they're shaky, but functional
+dynamic languages: &DLANGS
+  - Perl
+  - Python
+  - PHP
+  - Ruby
+compiled languages: &CLANGS
+  - C/C++
+  - Java
+all languages:
+  - *DLANGS
+  - *CLANGS
+
+# Added in .2.2: Escaped quotes
+- you know, this shouldn't work.  but it does.
+- 'that''s my value.'
+- 'again, that\'s my value.'
+- "here's to \"quotes\", boss."
+
+# added in .2.3
+- {name: "Foo, Bar's", age: 20}
+
+# Added in .2.4: bug [ 1418193 ] Quote Values in Nested Arrays
+- [a, ['1', "2"], b]
+
+# Added in .2.4: malformed YAML
+all
+  javascripts:     [dom1.js, dom.js]
+
+# Added in .2
+1040: Ooo, a numeric key! # And working comments? Wow! Colons in comments: a menace (0.3).
+
+hash_1: Hash #and a comment
+hash_2: "Hash #and a comment"
+"hash#3": "Hash (#) can appear in key too"
+
+float_test: 1.0
+float_test_with_quotes: '1.0'
+float_inverse_test: 001
+
+a_really_large_number: 115792089237316195423570985008687907853269984665640564039457584007913129639936 # 2^256
+
+int array: [ 1, 2, 3 ]
+
+array on several lines:
+  [ 0,  1,  2,  3,  4,  5,  6,  7,  8,  9,
+    10, 11, 12, 13, 14, 15, 16, 17, 18, 19 ]
+
+morelesskey: "<value>"
+
+array_of_zero: [0]
+sophisticated_array_of_zero: {rx: {tx: [0]} }
+
+switches:
+  - { row: 0, col: 0, func: {tx: [0, 1]} }
+
+empty_sequence: [ ]
+empty_hash: { }
+
+special_characters: "[{]]{{]]"
+
+asterisks: "*"
+
+empty_key:
+  :
+    key: value
+
+trailing_colon: "foo:"
+
+multiline_items:
+  - type: SomeItem
+    values: [blah, blah, blah,
+      blah]
+    ints: [2, 54, 12,
+      2143]
+
+many_lines: |
+  A quick
+  fox
+
+
+  jumped
+  over
+
+
+
+
+
+  a lazy
+
+
+
+  dog
+
+
+werte:
+  1: nummer 1
+  0: Stunde 0
+
+noindent_records:
+- record1: value1
+- record2: value2
+
+"a:1": [1000]
+"a:2":
+  - 2000
+
+# [Endloop]
+endloop: |
+  Does this line in the end indeed make Spyc go to an infinite loop?
Index: branches/testa/settings.yml
===================================================================
--- branches/testa/settings.yml	(revision 23)
+++ branches/testa/settings.yml	(revision 23)
@@ -0,0 +1,6 @@
+-
+  url: https://toppers.jp
+  path: /var/www/vhosts/devconf.northern-cross.info/httpdocs/a/tmp/devconf-guest-4/tmp/md2site-x/_xtest/wtjx/t12/src
+-
+  url: https://toppers.jp
+  path: /var/www/vhosts/devconf.northern-cross.info/httpdocs/a/tmp/devconf-guest-4/tmp/md2site-x/_xtest/wtjx/t12/src
Index: branches/testa/storage/0/filelist.json
===================================================================
--- branches/testa/storage/0/filelist.json	(revision 23)
+++ branches/testa/storage/0/filelist.json	(revision 23)
@@ -0,0 +1,1 @@
+{"\/":["rtk","members","document","project","autosar","edu","download","top","attempt","product","community","appliction","etc"],"\/rtk\/etrobo_jsp\/data\/etrobo-jsp.md":[],"\/rtk\/etrobo_jsp\/data":["etrobo-jsp.md"],"\/rtk\/etrobo_jsp":["data"],"\/rtk":["etrobo_jsp","fmp-old-download","jsp-download","fmp_old_download","hrp2_kernel","hrp-kernel","hrp_kernel","fmp-d-download","asp_e_download","fmp-kernel","hrp3_kernel","hrp_download","fdmp_download","asp3_kernel","jsp_download","asp3_d_download","fmp_kernel","asp-e-download","asp3-kernel","hrp2_download","asp3-d-download","atk1","hrp2-kernel","fmp-e-download","etrobo-jsp","asp_kernel","asp3_e_download","fdmp_kernel","hrp-download","fdmp-kernel","fi4-download","asp-d-download","fmp_e_download","fi4_download","cfg_download","atk1_download","hrp2-download","atk1-download","asp3-e-download","asp_d_download","fi4-kernel","fi4_kernel","jsp_kernel","fdmp-download","hrp3-kernel","jsp-kernel","fmp_d_download","asp-kernel","cfg-download"],"\/rtk\/fmp-old-download\/data\/fmp-old-download.md":[],"\/rtk\/fmp-old-download\/data":["fmp-old-download.md","fmp-old-download_orig.md"],"\/rtk\/fmp-old-download":["data"],"\/rtk\/fmp-old-download\/data\/fmp-old-download_orig.md":[],"\/rtk\/jsp-download\/data\/jsp-download.md":[],"\/rtk\/jsp-download\/data":["jsp-download.md","jsp-download_orig.md"],"\/rtk\/jsp-download":["data"],"\/rtk\/jsp-download\/data\/jsp-download_orig.md":[],"\/rtk\/fmp_old_download\/data\/fmp-old-download.md":[],"\/rtk\/fmp_old_download\/data":["fmp-old-download.md"],"\/rtk\/fmp_old_download":["data"],"\/rtk\/hrp2_kernel\/data\/hrp2-kernel.md":[],"\/rtk\/hrp2_kernel\/data":["hrp2-kernel.md"],"\/rtk\/hrp2_kernel":["data"],"\/rtk\/hrp-kernel\/data\/hrp-kernel.md":[],"\/rtk\/hrp-kernel\/data":["hrp-kernel.md","hrp-kernel_orig.md"],"\/rtk\/hrp-kernel":["data"],"\/rtk\/hrp-kernel\/data\/hrp-kernel_orig.md":[],"\/rtk\/hrp_kernel\/data\/hrp-kernel.md":[],"\/rtk\/hrp_kernel\/data":["hrp-kernel.md"],"\/rtk\/hrp_kernel":["data"],"\/rtk\/fmp-d-download\/data\/fmp-d-download_orig.md":[],"\/rtk\/fmp-d-download\/data":["fmp-d-download_orig.md","fmp-d-download.md"],"\/rtk\/fmp-d-download":["data"],"\/rtk\/fmp-d-download\/data\/fmp-d-download.md":[],"\/rtk\/asp_e_download\/data\/asp-e-download.md":[],"\/rtk\/asp_e_download\/data":["asp-e-download.md"],"\/rtk\/asp_e_download":["data"],"\/rtk\/fmp-kernel\/data\/fmp-kernel_orig.md":[],"\/rtk\/fmp-kernel\/data":["fmp-kernel_orig.md","fmp-kernel.md"],"\/rtk\/fmp-kernel":["data"],"\/rtk\/fmp-kernel\/data\/fmp-kernel.md":[],"\/rtk\/hrp3_kernel\/data\/hrp3-kernel.md":[],"\/rtk\/hrp3_kernel\/data":["hrp3-kernel.md"],"\/rtk\/hrp3_kernel":["data"],"\/rtk\/hrp_download\/data\/hrp-download.md":[],"\/rtk\/hrp_download\/data":["hrp-download.md"],"\/rtk\/hrp_download":["data"],"\/rtk\/fdmp_download\/data\/fdmp-download.md":[],"\/rtk\/fdmp_download\/data":["fdmp-download.md"],"\/rtk\/fdmp_download":["data"],"\/rtk\/asp3_kernel\/data\/asp3-kernel.md":[],"\/rtk\/asp3_kernel\/data":["asp3-kernel.md"],"\/rtk\/asp3_kernel":["data"],"\/rtk\/jsp_download\/data\/jsp-download.md":[],"\/rtk\/jsp_download\/data":["jsp-download.md"],"\/rtk\/jsp_download":["data"],"\/rtk\/asp3_d_download\/data\/asp3-d-download.md":[],"\/rtk\/asp3_d_download\/data":["asp3-d-download.md"],"\/rtk\/asp3_d_download":["data"],"\/rtk\/fmp_kernel\/data\/fmp-kernel.md":[],"\/rtk\/fmp_kernel\/data":["fmp-kernel.md"],"\/rtk\/fmp_kernel":["data"],"\/rtk\/asp-e-download\/data\/asp-e-download.md":[],"\/rtk\/asp-e-download\/data":["asp-e-download.md","asp-e-download_orig.md"],"\/rtk\/asp-e-download":["data"],"\/rtk\/asp-e-download\/data\/asp-e-download_orig.md":[],"\/rtk\/asp3-kernel\/data\/asp3-kernel_orig.md":[],"\/rtk\/asp3-kernel\/data":["asp3-kernel_orig.md","asp3-kernel.md"],"\/rtk\/asp3-kernel":["data"],"\/rtk\/asp3-kernel\/data\/asp3-kernel.md":[],"\/rtk\/hrp2_download\/data\/hrp2-download.md":[],"\/rtk\/hrp2_download\/data":["hrp2-download.md"],"\/rtk\/hrp2_download":["data"],"\/rtk\/asp3-d-download\/data\/asp3-d-download_orig.md":[],"\/rtk\/asp3-d-download\/data":["asp3-d-download_orig.md","asp3-d-download.md"],"\/rtk\/asp3-d-download":["data"],"\/rtk\/asp3-d-download\/data\/asp3-d-download.md":[],"\/rtk\/atk1\/data\/atk1_orig.md":[],"\/rtk\/atk1\/data":["atk1_orig.md","atk1.md"],"\/rtk\/atk1":["data"],"\/rtk\/atk1\/data\/atk1.md":[],"\/rtk\/hrp2-kernel\/data\/hrp2-kernel.md":[],"\/rtk\/hrp2-kernel\/data":["hrp2-kernel.md","hrp2-kernel_orig.md"],"\/rtk\/hrp2-kernel":["data"],"\/rtk\/hrp2-kernel\/data\/hrp2-kernel_orig.md":[],"\/rtk\/fmp-e-download\/data\/fmp-e-download.md":[],"\/rtk\/fmp-e-download\/data":["fmp-e-download.md","fmp-e-download_orig.md"],"\/rtk\/fmp-e-download":["data"],"\/rtk\/fmp-e-download\/data\/fmp-e-download_orig.md":[],"\/rtk\/etrobo-jsp\/data\/etrobo-jsp_orig.md":[],"\/rtk\/etrobo-jsp\/data":["etrobo-jsp_orig.md","etrobo-jsp.md"],"\/rtk\/etrobo-jsp":["data"],"\/rtk\/etrobo-jsp\/data\/etrobo-jsp.md":[],"\/rtk\/asp_kernel\/data\/asp-kernel.md":[],"\/rtk\/asp_kernel\/data":["asp-kernel.md"],"\/rtk\/asp_kernel":["data"],"\/rtk\/asp3_e_download\/data\/asp3-e-download.md":[],"\/rtk\/asp3_e_download\/data":["asp3-e-download.md"],"\/rtk\/asp3_e_download":["data"],"\/rtk\/fdmp_kernel\/data\/fdmp-kernel.md":[],"\/rtk\/fdmp_kernel\/data":["fdmp-kernel.md"],"\/rtk\/fdmp_kernel":["data"],"\/rtk\/hrp-download\/data\/hrp-download.md":[],"\/rtk\/hrp-download\/data":["hrp-download.md","hrp-download_orig.md"],"\/rtk\/hrp-download":["data"],"\/rtk\/hrp-download\/data\/hrp-download_orig.md":[],"\/rtk\/fdmp-kernel\/data\/fdmp-kernel_orig.md":[],"\/rtk\/fdmp-kernel\/data":["fdmp-kernel_orig.md","fdmp-kernel.md"],"\/rtk\/fdmp-kernel":["data"],"\/rtk\/fdmp-kernel\/data\/fdmp-kernel.md":[],"\/rtk\/fi4-download\/data\/fi4-download_orig.md":[],"\/rtk\/fi4-download\/data":["fi4-download_orig.md","fi4-download.md"],"\/rtk\/fi4-download":["data"],"\/rtk\/fi4-download\/data\/fi4-download.md":[],"\/rtk\/asp-d-download\/data\/asp-d-download.md":[],"\/rtk\/asp-d-download\/data":["asp-d-download.md","asp-d-download_orig.md"],"\/rtk\/asp-d-download":["data"],"\/rtk\/asp-d-download\/data\/asp-d-download_orig.md":[],"\/rtk\/fmp_e_download\/data\/fmp-e-download.md":[],"\/rtk\/fmp_e_download\/data":["fmp-e-download.md"],"\/rtk\/fmp_e_download":["data"],"\/rtk\/fi4_download\/data\/fi4-download.md":[],"\/rtk\/fi4_download\/data":["fi4-download.md"],"\/rtk\/fi4_download":["data"],"\/rtk\/cfg_download\/data\/cfg-download.md":[],"\/rtk\/cfg_download\/data":["cfg-download.md"],"\/rtk\/cfg_download":["data"],"\/rtk\/atk1_download\/data\/atk1-download.md":[],"\/rtk\/atk1_download\/data":["atk1-download.md"],"\/rtk\/atk1_download":["data"],"\/rtk\/hrp2-download\/data\/hrp2-download.md":[],"\/rtk\/hrp2-download\/data":["hrp2-download.md","hrp2-download_orig.md"],"\/rtk\/hrp2-download":["data"],"\/rtk\/hrp2-download\/data\/hrp2-download_orig.md":[],"\/rtk\/atk1-download\/data\/atk1-download.md":[],"\/rtk\/atk1-download\/data":["atk1-download.md","atk1-download_orig.md"],"\/rtk\/atk1-download":["data"],"\/rtk\/atk1-download\/data\/atk1-download_orig.md":[],"\/rtk\/asp3-e-download\/data\/asp3-e-download_orig.md":[],"\/rtk\/asp3-e-download\/data":["asp3-e-download_orig.md","asp3-e-download.md"],"\/rtk\/asp3-e-download":["data"],"\/rtk\/asp3-e-download\/data\/asp3-e-download.md":[],"\/rtk\/asp_d_download\/data\/asp-d-download.md":[],"\/rtk\/asp_d_download\/data":["asp-d-download.md"],"\/rtk\/asp_d_download":["data"],"\/rtk\/fi4-kernel\/data\/fi4-kernel_orig.md":[],"\/rtk\/fi4-kernel\/data":["fi4-kernel_orig.md","fi4-kernel.md"],"\/rtk\/fi4-kernel":["data"],"\/rtk\/fi4-kernel\/data\/fi4-kernel.md":[],"\/rtk\/fi4_kernel\/data\/fi4-kernel.md":[],"\/rtk\/fi4_kernel\/data":["fi4-kernel.md"],"\/rtk\/fi4_kernel":["data"],"\/rtk\/jsp_kernel\/data\/jsp-kernel.md":[],"\/rtk\/jsp_kernel\/data":["jsp-kernel.md"],"\/rtk\/jsp_kernel":["data"],"\/rtk\/fdmp-download\/data\/fdmp-download.md":[],"\/rtk\/fdmp-download\/data":["fdmp-download.md","fdmp-download_orig.md"],"\/rtk\/fdmp-download":["data"],"\/rtk\/fdmp-download\/data\/fdmp-download_orig.md":[],"\/rtk\/hrp3-kernel\/data\/hrp3-kernel_orig.md":[],"\/rtk\/hrp3-kernel\/data":["hrp3-kernel_orig.md","hrp3-kernel.md"],"\/rtk\/hrp3-kernel":["data"],"\/rtk\/hrp3-kernel\/data\/hrp3-kernel.md":[],"\/rtk\/jsp-kernel\/data\/jsp-kernel_orig.md":[],"\/rtk\/jsp-kernel\/data":["jsp-kernel_orig.md","jsp-kernel.md"],"\/rtk\/jsp-kernel":["data"],"\/rtk\/jsp-kernel\/data\/jsp-kernel.md":[],"\/rtk\/fmp_d_download\/data\/fmp-d-download.md":[],"\/rtk\/fmp_d_download\/data":["fmp-d-download.md"],"\/rtk\/fmp_d_download":["data"],"\/rtk\/asp-kernel\/data\/asp-kernel_orig.md":[],"\/rtk\/asp-kernel\/data":["asp-kernel_orig.md","asp-kernel.md"],"\/rtk\/asp-kernel":["data"],"\/rtk\/asp-kernel\/data\/asp-kernel.md":[],"\/rtk\/cfg-download\/data\/cfg-download.md":[],"\/rtk\/cfg-download\/data":["cfg-download.md","cfg-download_orig.md"],"\/rtk\/cfg-download":["data"],"\/rtk\/cfg-download\/data\/cfg-download_orig.md":[],"\/members\/members\/data\/members_orig.md":[],"\/members\/members\/data":["members_orig.md","members.md"],"\/members\/members":["data"],"\/members":["members","events_members"],"\/members\/members\/data\/members.md":[],"\/members\/events_members\/data\/events_members_orig.md":[],"\/members\/events_members\/data":["events_members_orig.md","events_members.md"],"\/members\/events_members":["data"],"\/members\/events_members\/data\/events_members.md":[],"\/document\/documents\/data\/documents.md":[],"\/document\/documents\/data":["documents.md","documents_orig.md"],"\/document\/documents":["data"],"\/document":["documents"],"\/document\/documents\/data\/documents_orig.md":[],"\/project\/joinus\/data\/joinus_orig.md":[],"\/project\/joinus\/data":["joinus_orig.md","joinus.md"],"\/project\/joinus":["data"],"\/project":["joinus","mascot","events_public","prize","project","projmembers","index","rulebook","contacts","logo","old_wg","license","faq","org"],"\/project\/joinus\/data\/joinus.md":[],"\/project\/mascot\/data\/mascot.md":[],"\/project\/mascot\/data":["mascot.md","mascot_orig.md"],"\/project\/mascot":["data"],"\/project\/mascot\/data\/mascot_orig.md":[],"\/project\/events_public\/data\/events_public_orig.md":[],"\/project\/events_public\/data":["events_public_orig.md","events_public.md"],"\/project\/events_public":["data"],"\/project\/events_public\/data\/events_public.md":[],"\/project\/prize\/data\/prize.md":[],"\/project\/prize\/data":["prize.md","prize_orig.md"],"\/project\/prize":["data"],"\/project\/prize\/data\/prize_orig.md":[],"\/project\/project\/data\/project_orig.md":[],"\/project\/project\/data":["project_orig.md","project.md"],"\/project\/project":["data"],"\/project\/project\/data\/project.md":[],"\/project\/projmembers\/data\/projmembers.md":[],"\/project\/projmembers\/data":["projmembers.md","projmembers_orig.md"],"\/project\/projmembers":["data"],"\/project\/projmembers\/data\/projmembers_orig.md":[],"\/project\/index\/data\/index.md":[],"\/project\/index\/data":["index.md"],"\/project\/index":["data"],"\/project\/rulebook\/data\/rulebook.md":[],"\/project\/rulebook\/data":["rulebook.md","rulebook_orig.md"],"\/project\/rulebook":["data"],"\/project\/rulebook\/data\/rulebook_orig.md":[],"\/project\/contacts\/data\/contacts_orig.md":[],"\/project\/contacts\/data":["contacts_orig.md","contacts.md"],"\/project\/contacts":["data"],"\/project\/contacts\/data\/contacts.md":[],"\/project\/logo\/data\/logo_orig.md":[],"\/project\/logo\/data":["logo_orig.md","logo.md"],"\/project\/logo":["data"],"\/project\/logo\/data\/logo.md":[],"\/project\/old_wg\/data\/old_wg.md":[],"\/project\/old_wg\/data":["old_wg.md","old_wg_orig.md"],"\/project\/old_wg":["data"],"\/project\/old_wg\/data\/old_wg_orig.md":[],"\/project\/license\/data\/license.md":[],"\/project\/license\/data":["license.md","license_orig.md"],"\/project\/license":["data"],"\/project\/license\/data\/license_orig.md":[],"\/project\/faq\/index\/data\/index_orig.md":[],"\/project\/faq\/index\/data":["index_orig.md","faq","index.md"],"\/project\/faq\/index":["data"],"\/project\/faq":["index"],"\/project\/faq\/index\/data\/faq\/index.md":[],"\/project\/faq\/index\/data\/faq":["index.md"],"\/project\/faq\/index\/data\/index.md":[],"\/project\/org\/data\/org.md":[],"\/project\/org\/data":["org.md","org_orig.md"],"\/project\/org":["data"],"\/project\/org\/data\/org_orig.md":[],"\/autosar\/a-rtegen-download\/work\/a-rtegen-download.md":[],"\/autosar\/a-rtegen-download\/work":["a-rtegen-download.md"],"\/autosar\/a-rtegen-download":["work","data"],"\/autosar":["a-rtegen-download","atk2-e-download","atk2-download","a_comstack_download","a-wdg-download","atk2_download","a_can_download","a_rtegen","a-can-download","a_rtegen_download","a-comstack-download","a_comstack","a-rtegen","atk2_e_download","a_wdgstack","a-comstack","a_osbench","a-osbench","atk2","a-wdgstack","a_wdg_download"],"\/autosar\/a-rtegen-download\/data\/a-rtegen-download_orig.md":[],"\/autosar\/a-rtegen-download\/data":["a-rtegen-download_orig.md","a-rtegen-download.md"],"\/autosar\/a-rtegen-download\/data\/a-rtegen-download.md":[],"\/autosar\/atk2-e-download\/work\/atk2-e-download.md":[],"\/autosar\/atk2-e-download\/work":["atk2-e-download.md"],"\/autosar\/atk2-e-download":["work","data"],"\/autosar\/atk2-e-download\/data\/atk2-e-download.md":[],"\/autosar\/atk2-e-download\/data":["atk2-e-download.md","atk2-e-download_orig.md"],"\/autosar\/atk2-e-download\/data\/atk2-e-download_orig.md":[],"\/autosar\/atk2-download\/work\/atk2-download.md":[],"\/autosar\/atk2-download\/work":["atk2-download.md"],"\/autosar\/atk2-download":["work","data"],"\/autosar\/atk2-download\/data\/atk2-download.md":[],"\/autosar\/atk2-download\/data":["atk2-download.md","atk2-download_orig.md"],"\/autosar\/atk2-download\/data\/atk2-download_orig.md":[],"\/autosar\/a_comstack_download\/data\/a-comstack-download.md":[],"\/autosar\/a_comstack_download\/data":["a-comstack-download.md"],"\/autosar\/a_comstack_download":["data"],"\/autosar\/a-wdg-download\/work\/a-wdg-download.md":[],"\/autosar\/a-wdg-download\/work":["a-wdg-download.md"],"\/autosar\/a-wdg-download":["work","data"],"\/autosar\/a-wdg-download\/data\/a-wdg-download.md":[],"\/autosar\/a-wdg-download\/data":["a-wdg-download.md","a-wdg-download_orig.md"],"\/autosar\/a-wdg-download\/data\/a-wdg-download_orig.md":[],"\/autosar\/atk2_download\/data\/atk2-download.md":[],"\/autosar\/atk2_download\/data":["atk2-download.md"],"\/autosar\/atk2_download":["data"],"\/autosar\/a_can_download\/data\/a-can-download.md":[],"\/autosar\/a_can_download\/data":["a-can-download.md"],"\/autosar\/a_can_download":["data"],"\/autosar\/a_rtegen\/data\/a-rtegen.md":[],"\/autosar\/a_rtegen\/data":["a-rtegen.md"],"\/autosar\/a_rtegen":["data"],"\/autosar\/a-can-download\/work\/a-can-download.md":[],"\/autosar\/a-can-download\/work":["a-can-download.md"],"\/autosar\/a-can-download":["work","data"],"\/autosar\/a-can-download\/data\/a-can-download.md":[],"\/autosar\/a-can-download\/data":["a-can-download.md","a-can-download_orig.md"],"\/autosar\/a-can-download\/data\/a-can-download_orig.md":[],"\/autosar\/a_rtegen_download\/data\/a-rtegen-download.md":[],"\/autosar\/a_rtegen_download\/data":["a-rtegen-download.md"],"\/autosar\/a_rtegen_download":["data"],"\/autosar\/a-comstack-download\/work\/a-comstack-download.md":[],"\/autosar\/a-comstack-download\/work":["a-comstack-download.md"],"\/autosar\/a-comstack-download":["work","data"],"\/autosar\/a-comstack-download\/data\/a-comstack-download_orig.md":[],"\/autosar\/a-comstack-download\/data":["a-comstack-download_orig.md","a-comstack-download.md"],"\/autosar\/a-comstack-download\/data\/a-comstack-download.md":[],"\/autosar\/a_comstack\/data\/a-comstack.md":[],"\/autosar\/a_comstack\/data":["a-comstack.md"],"\/autosar\/a_comstack":["data"],"\/autosar\/a-rtegen\/work\/a-rtegen.md":[],"\/autosar\/a-rtegen\/work":["a-rtegen.md"],"\/autosar\/a-rtegen":["work","data"],"\/autosar\/a-rtegen\/data\/a-rtegen.md":[],"\/autosar\/a-rtegen\/data":["a-rtegen.md","a-rtegen_orig.md"],"\/autosar\/a-rtegen\/data\/a-rtegen_orig.md":[],"\/autosar\/atk2_e_download\/data\/atk2-e-download.md":[],"\/autosar\/atk2_e_download\/data":["atk2-e-download.md"],"\/autosar\/atk2_e_download":["data"],"\/autosar\/a_wdgstack\/data\/a-wdgstack.md":[],"\/autosar\/a_wdgstack\/data":["a-wdgstack.md"],"\/autosar\/a_wdgstack":["data"],"\/autosar\/a-comstack\/work\/a-comstack.md":[],"\/autosar\/a-comstack\/work":["a-comstack.md"],"\/autosar\/a-comstack":["work","data"],"\/autosar\/a-comstack\/data\/a-comstack_orig.md":[],"\/autosar\/a-comstack\/data":["a-comstack_orig.md","a-comstack.md"],"\/autosar\/a-comstack\/data\/a-comstack.md":[],"\/autosar\/a_osbench\/data\/a-osbench.md":[],"\/autosar\/a_osbench\/data":["a-osbench.md"],"\/autosar\/a_osbench":["data"],"\/autosar\/a-osbench\/work\/a-osbench.md":[],"\/autosar\/a-osbench\/work":["a-osbench.md"],"\/autosar\/a-osbench":["work","data"],"\/autosar\/a-osbench\/data\/a-osbench.md":[],"\/autosar\/a-osbench\/data":["a-osbench.md","a-osbench_orig.md"],"\/autosar\/a-osbench\/data\/a-osbench_orig.md":[],"\/autosar\/atk2\/work\/atk2.md":[],"\/autosar\/atk2\/work":["atk2.md"],"\/autosar\/atk2":["work","data"],"\/autosar\/atk2\/data\/atk2_orig.md":[],"\/autosar\/atk2\/data":["atk2_orig.md","atk2.md"],"\/autosar\/atk2\/data\/atk2.md":[],"\/autosar\/a-wdgstack\/work\/a-wdgstack.md":[],"\/autosar\/a-wdgstack\/work":["a-wdgstack.md"],"\/autosar\/a-wdgstack":["work","data"],"\/autosar\/a-wdgstack\/data\/a-wdgstack.md":[],"\/autosar\/a-wdgstack\/data":["a-wdgstack.md","a-wdgstack_orig.md"],"\/autosar\/a-wdgstack\/data\/a-wdgstack_orig.md":[],"\/autosar\/a_wdg_download\/data\/a-wdg-download.md":[],"\/autosar\/a_wdg_download\/data":["a-wdg-download.md"],"\/autosar\/a_wdg_download":["data"],"\/edu\/edu-base3\/data\/edu-base3_orig.md":[],"\/edu\/edu-base3\/data":["edu-base3_orig.md","edu-base3.md"],"\/edu\/edu-base3":["data"],"\/edu":["edu-base3","edu-middle","edu-base1","edu-robot","edu-base12_2015","edu-download","edu-begin","edu-base12_2014","edu-baseplatform","edu-base12_2016","edu-basebp","edu-basehd","edu-shishi","edu-base2","edu-base123_2013"],"\/edu\/edu-base3\/data\/edu-base3.md":[],"\/edu\/edu-middle\/data\/edu-middle_orig.md":[],"\/edu\/edu-middle\/data":["edu-middle_orig.md","edu-middle.md"],"\/edu\/edu-middle":["data"],"\/edu\/edu-middle\/data\/edu-middle.md":[],"\/edu\/edu-base1\/data\/edu-base1_orig.md":[],"\/edu\/edu-base1\/data":["edu-base1_orig.md","edu-base1.md"],"\/edu\/edu-base1":["data"],"\/edu\/edu-base1\/data\/edu-base1.md":[],"\/edu\/edu-robot\/data\/edu-robot_orig.md":[],"\/edu\/edu-robot\/data":["edu-robot_orig.md","edu-robot.md"],"\/edu\/edu-robot":["data"],"\/edu\/edu-robot\/data\/edu-robot.md":[],"\/edu\/edu-base12_2015\/data\/edu-base12_2015.md":[],"\/edu\/edu-base12_2015\/data":["edu-base12_2015.md","edu-base12_2015_orig.md"],"\/edu\/edu-base12_2015":["data"],"\/edu\/edu-base12_2015\/data\/edu-base12_2015_orig.md":[],"\/edu\/edu-download\/data\/edu-download.md":[],"\/edu\/edu-download\/data":["edu-download.md","edu-download_orig.md"],"\/edu\/edu-download":["data"],"\/edu\/edu-download\/data\/edu-download_orig.md":[],"\/edu\/edu-begin\/data\/edu-begin_orig.md":[],"\/edu\/edu-begin\/data":["edu-begin_orig.md","edu-begin.md"],"\/edu\/edu-begin":["data"],"\/edu\/edu-begin\/data\/edu-begin.md":[],"\/edu\/edu-base12_2014\/data\/edu-base12_2014.md":[],"\/edu\/edu-base12_2014\/data":["edu-base12_2014.md","edu-base12_2014_orig.md"],"\/edu\/edu-base12_2014":["data"],"\/edu\/edu-base12_2014\/data\/edu-base12_2014_orig.md":[],"\/edu\/edu-baseplatform\/data\/edu-baseplatform.md":[],"\/edu\/edu-baseplatform\/data":["edu-baseplatform.md","edu-baseplatform_orig.md"],"\/edu\/edu-baseplatform":["data"],"\/edu\/edu-baseplatform\/data\/edu-baseplatform_orig.md":[],"\/edu\/edu-base12_2016\/data\/edu-base12_2016.md":[],"\/edu\/edu-base12_2016\/data":["edu-base12_2016.md","edu-base12_2016_orig.md"],"\/edu\/edu-base12_2016":["data"],"\/edu\/edu-base12_2016\/data\/edu-base12_2016_orig.md":[],"\/edu\/edu-basebp\/data\/edu-basebp.md":[],"\/edu\/edu-basebp\/data":["edu-basebp.md","edu-basebp_orig.md"],"\/edu\/edu-basebp":["data"],"\/edu\/edu-basebp\/data\/edu-basebp_orig.md":[],"\/edu\/edu-basehd\/data\/edu-basehd.md":[],"\/edu\/edu-basehd\/data":["edu-basehd.md","edu-basehd_orig.md"],"\/edu\/edu-basehd":["data"],"\/edu\/edu-basehd\/data\/edu-basehd_orig.md":[],"\/edu\/edu-shishi\/data\/edu-shishi_orig.md":[],"\/edu\/edu-shishi\/data":["edu-shishi_orig.md","edu-shishi.md"],"\/edu\/edu-shishi":["data"],"\/edu\/edu-shishi\/data\/edu-shishi.md":[],"\/edu\/edu-base2\/edu-base2.md":[],"\/edu\/edu-base2":["edu-base2.md","data"],"\/edu\/edu-base2\/data\/edu-base2.md":[],"\/edu\/edu-base2\/data":["edu-base2.md","edu-base2_orig.md"],"\/edu\/edu-base2\/data\/edu-base2_orig.md":[],"\/edu\/edu-base123_2013\/data\/edu-base123_2013_orig.md":[],"\/edu\/edu-base123_2013\/data":["edu-base123_2013_orig.md","edu-base123_2013.md"],"\/edu\/edu-base123_2013":["data"],"\/edu\/edu-base123_2013\/data\/edu-base123_2013.md":[],"\/download\/download\/data\/download.md":[],"\/download\/download\/data":["download.md","download_orig.md"],"\/download\/download":["data"],"\/download":["download"],"\/download\/download\/data\/download_orig.md":[],"\/top\/index\/data\/index_orig.md":[],"\/top\/index\/data":["index_orig.md","index.md"],"\/top\/index":["data"],"\/top":["index"],"\/top\/index\/data\/index.md":[],"\/attempt\/newsletter\/work\/newsletter.md":[],"\/attempt\/newsletter\/work":["newsletter.md"],"\/attempt\/newsletter":["work","data"],"\/attempt":["newsletter","puboffer","contest_archive","contest2016","contest2014","entrust","devconf2016","public_funding","press","contest2012","contest2011","contest2013","devconf2018","etrobo","contest2018","conference2018","contest2015","devconf2017","contest","contest2017"],"\/attempt\/newsletter\/data\/newsletter_orig.md":[],"\/attempt\/newsletter\/data":["newsletter_orig.md","newsletter.md"],"\/attempt\/newsletter\/data\/newsletter.md":[],"\/attempt\/puboffer\/work\/puboffer.md":[],"\/attempt\/puboffer\/work":["puboffer.md"],"\/attempt\/puboffer":["work","data"],"\/attempt\/puboffer\/data\/puboffer.md":[],"\/attempt\/puboffer\/data":["puboffer.md","puboffer_orig.md"],"\/attempt\/puboffer\/data\/puboffer_orig.md":[],"\/attempt\/contest_archive\/data\/contest_archive.md":[],"\/attempt\/contest_archive\/data":["contest_archive.md"],"\/attempt\/contest_archive":["data"],"\/attempt\/contest2016\/data\/contest2016.md":[],"\/attempt\/contest2016\/data":["contest2016.md"],"\/attempt\/contest2016":["data"],"\/attempt\/contest2014\/data\/contest2014.md":[],"\/attempt\/contest2014\/data":["contest2014.md"],"\/attempt\/contest2014":["data"],"\/attempt\/entrust\/work\/entrust.md":[],"\/attempt\/entrust\/work":["entrust.md"],"\/attempt\/entrust":["work","data"],"\/attempt\/entrust\/data\/entrust.md":[],"\/attempt\/entrust\/data":["entrust.md","entrust_orig.md"],"\/attempt\/entrust\/data\/entrust_orig.md":[],"\/attempt\/devconf2016\/data\/devconf2016_orig.md":[],"\/attempt\/devconf2016\/data":["devconf2016_orig.md","devconf2016.md"],"\/attempt\/devconf2016":["data"],"\/attempt\/devconf2016\/data\/devconf2016.md":[],"\/attempt\/public_funding\/work\/public_funding.md":[],"\/attempt\/public_funding\/work":["public_funding.md"],"\/attempt\/public_funding":["work","data"],"\/attempt\/public_funding\/data\/public_funding.md":[],"\/attempt\/public_funding\/data":["public_funding.md","public_funding_orig.md"],"\/attempt\/public_funding\/data\/public_funding_orig.md":[],"\/attempt\/press\/work\/press.md":[],"\/attempt\/press\/work":["press.md"],"\/attempt\/press":["work","data"],"\/attempt\/press\/data\/press_orig.md":[],"\/attempt\/press\/data":["press_orig.md","press.md"],"\/attempt\/press\/data\/press.md":[],"\/attempt\/contest2012\/data\/contest2012.md":[],"\/attempt\/contest2012\/data":["contest2012.md"],"\/attempt\/contest2012":["data"],"\/attempt\/contest2011\/data\/contest2011.md":[],"\/attempt\/contest2011\/data":["contest2011.md"],"\/attempt\/contest2011":["data"],"\/attempt\/contest2013\/data\/contest2013.md":[],"\/attempt\/contest2013\/data":["contest2013.md"],"\/attempt\/contest2013":["data"],"\/attempt\/devconf2018\/work\/timetable_day1.md":[],"\/attempt\/devconf2018\/work":["timetable_day1.md","devconf2018.md","timetable_day2.md","timetable_day3.md"],"\/attempt\/devconf2018":["work","data"],"\/attempt\/devconf2018\/work\/devconf2018.md":[],"\/attempt\/devconf2018\/work\/timetable_day2.md":[],"\/attempt\/devconf2018\/work\/timetable_day3.md":[],"\/attempt\/devconf2018\/data\/devconf2018.md":[],"\/attempt\/devconf2018\/data":["devconf2018.md","devconf2018_orig.md"],"\/attempt\/devconf2018\/data\/devconf2018_orig.md":[],"\/attempt\/etrobo\/work\/etrobo.md":[],"\/attempt\/etrobo\/work":["etrobo.md"],"\/attempt\/etrobo":["work","data"],"\/attempt\/etrobo\/data\/etrobo.md":[],"\/attempt\/etrobo\/data":["etrobo.md","etrobo_orig.md"],"\/attempt\/etrobo\/data\/etrobo_orig.md":[],"\/attempt\/contest2018\/data\/contest2018.md":[],"\/attempt\/contest2018\/data":["contest2018.md"],"\/attempt\/contest2018":["data"],"\/attempt\/conference2018\/work\/conference2018.md":[],"\/attempt\/conference2018\/work":["conference2018.md"],"\/attempt\/conference2018":["work","data"],"\/attempt\/conference2018\/data\/conference2018.md":[],"\/attempt\/conference2018\/data":["conference2018.md","conference2018_orig.md"],"\/attempt\/conference2018\/data\/conference2018_orig.md":[],"\/attempt\/contest2015\/data\/contest2015.md":[],"\/attempt\/contest2015\/data":["contest2015.md"],"\/attempt\/contest2015":["data"],"\/attempt\/devconf2017\/data\/devconf2017.md":[],"\/attempt\/devconf2017\/data":["devconf2017.md","devconf2017_orig.md"],"\/attempt\/devconf2017":["data"],"\/attempt\/devconf2017\/data\/devconf2017_orig.md":[],"\/attempt\/contest\/data\/contest.md":[],"\/attempt\/contest\/data":["contest.md","contest_orig.md"],"\/attempt\/contest":["data"],"\/attempt\/contest\/data\/contest_orig.md":[],"\/attempt\/contest2017\/data\/contest2017.md":[],"\/attempt\/contest2017\/data":["contest2017.md"],"\/attempt\/contest2017":["data"],"\/product\/tecs\/data\/tecs.md":[],"\/product\/tecs\/data":["tecs.md","tecs_orig.md"],"\/product\/tecs":["data"],"\/product":["tecs","clm","tecs_archive","testsuites_download","ssp_kernel","mda_download","tinet","ecnl","clm_download","builder","fatfs_download","tlv","ssp-kernel","safeg","products","cxx-download","cxx-api","testsuites-download","mdcom","cxx_download","testsuites","ecnl-download","rll","park","tinet-download","dlm","cxx_api","fatfs-download","ttsp","clm-download","mda-download","cfg","fatfs","sim","mda","tinet_download","ecnl_download"],"\/product\/tecs\/data\/tecs_orig.md":[],"\/product\/clm\/data\/clm_orig.md":[],"\/product\/clm\/data":["clm_orig.md","clm.md"],"\/product\/clm":["data"],"\/product\/clm\/data\/clm.md":[],"\/product\/tecs_archive\/data\/tecs_archive.md":[],"\/product\/tecs_archive\/data":["tecs_archive.md"],"\/product\/tecs_archive":["data"],"\/product\/testsuites_download\/data\/testsuites-download.md":[],"\/product\/testsuites_download\/data":["testsuites-download.md"],"\/product\/testsuites_download":["data"],"\/product\/ssp_kernel\/data\/ssp-kernel.md":[],"\/product\/ssp_kernel\/data":["ssp-kernel.md"],"\/product\/ssp_kernel":["data"],"\/product\/mda_download\/data\/mda-download.md":[],"\/product\/mda_download\/data":["mda-download.md"],"\/product\/mda_download":["data"],"\/product\/tinet\/data\/tinet.md":[],"\/product\/tinet\/data":["tinet.md","tinet_orig.md"],"\/product\/tinet":["data"],"\/product\/tinet\/data\/tinet_orig.md":[],"\/product\/ecnl\/data\/ecnl_orig.md":[],"\/product\/ecnl\/data":["ecnl_orig.md","ecnl.md"],"\/product\/ecnl":["data"],"\/product\/ecnl\/data\/ecnl.md":[],"\/product\/clm_download\/data\/clm-download.md":[],"\/product\/clm_download\/data":["clm-download.md"],"\/product\/clm_download":["data"],"\/product\/builder\/data\/builder.md":[],"\/product\/builder\/data":["builder.md","builder_orig.md"],"\/product\/builder":["data"],"\/product\/builder\/data\/builder_orig.md":[],"\/product\/fatfs_download\/data\/fatfs-download.md":[],"\/product\/fatfs_download\/data":["fatfs-download.md"],"\/product\/fatfs_download":["data"],"\/product\/tlv\/data\/tlv_orig.md":[],"\/product\/tlv\/data":["tlv_orig.md","tlv.md"],"\/product\/tlv":["data"],"\/product\/tlv\/data\/tlv.md":[],"\/product\/ssp-kernel\/data\/ssp-kernel.md":[],"\/product\/ssp-kernel\/data":["ssp-kernel.md","ssp-kernel_orig.md"],"\/product\/ssp-kernel":["data"],"\/product\/ssp-kernel\/data\/ssp-kernel_orig.md":[],"\/product\/safeg\/data\/safeg.md":[],"\/product\/safeg\/data":["safeg.md","safeg_orig.md"],"\/product\/safeg":["data"],"\/product\/safeg\/data\/safeg_orig.md":[],"\/product\/products\/data\/products.md":[],"\/product\/products\/data":["products.md","products_orig.md"],"\/product\/products":["data"],"\/product\/products\/data\/products_orig.md":[],"\/product\/cxx-download\/data\/cxx-download.md":[],"\/product\/cxx-download\/data":["cxx-download.md","cxx-download_orig.md"],"\/product\/cxx-download":["data"],"\/product\/cxx-download\/data\/cxx-download_orig.md":[],"\/product\/cxx-api\/data\/cxx-api.md":[],"\/product\/cxx-api\/data":["cxx-api.md","cxx-api_orig.md"],"\/product\/cxx-api":["data"],"\/product\/cxx-api\/data\/cxx-api_orig.md":[],"\/product\/testsuites-download\/data\/testsuites-download.md":[],"\/product\/testsuites-download\/data":["testsuites-download.md","testsuites-download_orig.md"],"\/product\/testsuites-download":["data"],"\/product\/testsuites-download\/data\/testsuites-download_orig.md":[],"\/product\/mdcom\/data\/mdcom.md":[],"\/product\/mdcom\/data":["mdcom.md","mdcom_orig.md"],"\/product\/mdcom":["data"],"\/product\/mdcom\/data\/mdcom_orig.md":[],"\/product\/cxx_download\/data\/cxx-download.md":[],"\/product\/cxx_download\/data":["cxx-download.md"],"\/product\/cxx_download":["data"],"\/product\/testsuites\/data\/testsuites_orig.md":[],"\/product\/testsuites\/data":["testsuites_orig.md","testsuites.md"],"\/product\/testsuites":["data"],"\/product\/testsuites\/data\/testsuites.md":[],"\/product\/ecnl-download\/data\/ecnl-download_orig.md":[],"\/product\/ecnl-download\/data":["ecnl-download_orig.md","ecnl-download.md"],"\/product\/ecnl-download":["data"],"\/product\/ecnl-download\/data\/ecnl-download.md":[],"\/product\/rll\/data\/rll.md":[],"\/product\/rll\/data":["rll.md","rll_orig.md"],"\/product\/rll":["data"],"\/product\/rll\/data\/rll_orig.md":[],"\/product\/park\/data\/park.md":[],"\/product\/park\/data":["park.md","park_orig.md"],"\/product\/park":["data"],"\/product\/park\/data\/park_orig.md":[],"\/product\/tinet-download\/data\/tinet-download.md":[],"\/product\/tinet-download\/data":["tinet-download.md","tinet-download_orig.md"],"\/product\/tinet-download":["data"],"\/product\/tinet-download\/data\/tinet-download_orig.md":[],"\/product\/dlm\/data\/dlm.md":[],"\/product\/dlm\/data":["dlm.md","dlm_orig.md"],"\/product\/dlm":["data"],"\/product\/dlm\/data\/dlm_orig.md":[],"\/product\/cxx_api\/data\/cxx-api.md":[],"\/product\/cxx_api\/data":["cxx-api.md"],"\/product\/cxx_api":["data"],"\/product\/fatfs-download\/data\/fatfs-download.md":[],"\/product\/fatfs-download\/data":["fatfs-download.md","fatfs-download_orig.md"],"\/product\/fatfs-download":["data"],"\/product\/fatfs-download\/data\/fatfs-download_orig.md":[],"\/product\/ttsp\/data\/ttsp.md":[],"\/product\/ttsp\/data":["ttsp.md","ttsp_orig.md"],"\/product\/ttsp":["data"],"\/product\/ttsp\/data\/ttsp_orig.md":[],"\/product\/clm-download\/data\/clm-download_orig.md":[],"\/product\/clm-download\/data":["clm-download_orig.md","clm-download.md"],"\/product\/clm-download":["data"],"\/product\/clm-download\/data\/clm-download.md":[],"\/product\/mda-download\/data\/mda-download_orig.md":[],"\/product\/mda-download\/data":["mda-download_orig.md","mda-download.md"],"\/product\/mda-download":["data"],"\/product\/mda-download\/data\/mda-download.md":[],"\/product\/cfg\/data\/cfg.md":[],"\/product\/cfg\/data":["cfg.md","cfg_orig.md"],"\/product\/cfg":["data"],"\/product\/cfg\/data\/cfg_orig.md":[],"\/product\/fatfs\/data\/fatfs_orig.md":[],"\/product\/fatfs\/data":["fatfs_orig.md","fatfs.md"],"\/product\/fatfs":["data"],"\/product\/fatfs\/data\/fatfs.md":[],"\/product\/sim\/data\/sim.md":[],"\/product\/sim\/data":["sim.md","sim_orig.md"],"\/product\/sim":["data"],"\/product\/sim\/data\/sim_orig.md":[],"\/product\/mda\/data\/mda_orig.md":[],"\/product\/mda\/data":["mda_orig.md","mda.md"],"\/product\/mda":["data"],"\/product\/mda\/data\/mda.md":[],"\/product\/tinet_download\/data\/tinet-download.md":[],"\/product\/tinet_download\/data":["tinet-download.md"],"\/product\/tinet_download":["data"],"\/product\/ecnl_download\/data\/ecnl-download.md":[],"\/product\/ecnl_download\/data":["ecnl-download.md"],"\/product\/ecnl_download":["data"],"\/community\/software\/work\/software.md":[],"\/community\/software\/work":["software.md"],"\/community\/software":["work","data"],"\/community":["software","ide","community"],"\/community\/software\/data\/software_orig.md":[],"\/community\/software\/data":["software_orig.md","software.md"],"\/community\/software\/data\/software.md":[],"\/community\/ide\/work\/ide.md":[],"\/community\/ide\/work":["ide.md"],"\/community\/ide":["work","data"],"\/community\/ide\/data\/ide.md":[],"\/community\/ide\/data":["ide.md","ide_orig.md"],"\/community\/ide\/data\/ide_orig.md":[],"\/community\/community\/work\/community.md":[],"\/community\/community\/work":["community.md"],"\/community\/community":["work","data"],"\/community\/community\/data\/community.md":[],"\/community\/community\/data":["community.md","community_orig.md"],"\/community\/community\/data\/community_orig.md":[],"\/appliction\/applications\/work\/applications.md":[],"\/appliction\/applications\/work":["applications.md"],"\/appliction\/applications":["work","data"],"\/appliction":["applications"],"\/appliction\/applications\/data\/applications.md":[],"\/appliction\/applications\/data":["applications.md","applications_orig.md"],"\/appliction\/applications\/data\/applications_orig.md":[],"\/etc\/books\/data\/books.md":[],"\/etc\/books\/data":["books.md","books_orig.md"],"\/etc\/books":["data"],"\/etc":["books"],"\/etc\/books\/data\/books_orig.md":[]}
