mirror of
https://github.com/VueFileManager/vuefilemanager.git
synced 2026-05-19 11:45:01 +00:00
2 lines
285 KiB
JavaScript
Vendored
2 lines
285 KiB
JavaScript
Vendored
(window.webpackJsonp=window.webpackJsonp||[]).push([[30],{"1nld":function(n,t,a){var e=a("krgs");"string"==typeof e&&(e=[[n.i,e,""]]);var i={hmr:!0,transform:void 0,insertInto:void 0};a("aET+")(e,i);e.locals&&(n.exports=e.locals)},"2cvT":function(n,t,a){"use strict";var e=a("a/4p");a.n(e).a},"4gjb":function(n,t,a){(n.exports=a("I1BE")(!1)).push([n.i,".landing-page[data-v-60fe571b] {\n overflow-x: hidden;\n}\n.page-wrapper[data-v-60fe571b] {\n position: relative;\n margin: 0 auto;\n padding-left: 25px;\n padding-right: 25px;\n}\n.page-wrapper.large[data-v-60fe571b] {\n width: 1490px;\n}\n.page-wrapper.medium[data-v-60fe571b] {\n width: 1150px;\n}\n.page-wrapper.small[data-v-60fe571b] {\n width: 890px;\n}\n@media only screen and (max-width: 1390px) {\n.page-wrapper.large[data-v-60fe571b] {\n width: 100%;\n}\n}\n@media only screen and (max-width: 1190px) {\n.page-wrapper.large[data-v-60fe571b] {\n width: 100%;\n}\n.page-wrapper.medium[data-v-60fe571b] {\n width: 100%;\n}\n}\n@media only screen and (max-width: 960px) {\n.page-wrapper[data-v-60fe571b] {\n padding-left: 25px;\n padding-right: 25px;\n}\n.page-wrapper.small[data-v-60fe571b] {\n width: 100%;\n}\n}\n",""])},"5JKU":function(n,t,a){(n.exports=a("I1BE")(!1)).push([n.i,".landing-page[data-v-6163db28] {\n overflow-x: hidden;\n}\n.page-wrapper[data-v-6163db28] {\n position: relative;\n margin: 0 auto;\n padding-left: 25px;\n padding-right: 25px;\n}\n.page-wrapper.large[data-v-6163db28] {\n width: 1490px;\n}\n.page-wrapper.medium[data-v-6163db28] {\n width: 1150px;\n}\n.page-wrapper.small[data-v-6163db28] {\n width: 890px;\n}\n@media only screen and (max-width: 1390px) {\n.page-wrapper.large[data-v-6163db28] {\n width: 100%;\n}\n}\n@media only screen and (max-width: 1190px) {\n.page-wrapper.large[data-v-6163db28] {\n width: 100%;\n}\n.page-wrapper.medium[data-v-6163db28] {\n width: 100%;\n}\n}\n@media only screen and (max-width: 960px) {\n.page-wrapper[data-v-6163db28] {\n padding-left: 25px;\n padding-right: 25px;\n}\n.page-wrapper.small[data-v-6163db28] {\n width: 100%;\n}\n}\nfooter[data-v-6163db28] {\n text-align: center;\n padding-top: 80px;\n}\n.logo[data-v-6163db28] {\n margin-bottom: 15px;\n cursor: pointer;\n}\n.logo img[data-v-6163db28] {\n height: 38px;\n width: auto;\n}\n.logo .logo-text[data-v-6163db28] {\n font-weight: 800;\n font-size: 1.5625em;\n}\n.navigation-links[data-v-6163db28] {\n display: inline-block;\n}\n.navigation-links li[data-v-6163db28] {\n display: inline-block;\n}\n.navigation-links li a[data-v-6163db28] {\n display: block;\n padding: 19px;\n font-weight: 700;\n font-size: 1.0625em;\n transition: 150ms all ease;\n}\n.copyright[data-v-6163db28] {\n font-size: 1.0625em;\n color: rgba(27, 37, 57, 0.7);\n padding-top: 50px;\n padding-bottom: 20px;\n}\n.copyright[data-v-6163db28] a {\n font-weight: 700;\n}\n@media only screen and (max-width: 960px) {\n.navigation-links[data-v-6163db28] {\n display: block;\n}\n.navigation-links li[data-v-6163db28] {\n display: block;\n}\n.navigation-links li a[data-v-6163db28] {\n padding: 10px 0;\n}\n}\n@media (prefers-color-scheme: dark) {\n.copyright[data-v-6163db28] {\n color: #7d858c;\n}\n}\n",""])},"9j+S":function(n,t,a){"use strict";var e=a("brvx");a.n(e).a},AMRr:function(n,t,a){"use strict";var e=a("P0S2");a.n(e).a},ASoH:function(n,t,a){"use strict";var e={name:"AuthContent",props:["loading","icon","text"],data:function(){return{isVisible:!1}},created:function(){this.isVisible=this.visible}},i=(a("RLEU"),a("KHd+")),r=Object(i.a)(e,(function(){var n=this,t=n.$createElement,a=n._self._c||t;return a("button",{staticClass:"button outline hover-text-theme hover-border-theme"},[a("span",{staticClass:"text-label"},[n._v(n._s(n.text))]),n._v(" "),n.loading?a("span",{staticClass:"icon"},[a("FontAwesomeIcon",{staticClass:"sync-alt svg-color-theme",attrs:{icon:"sync-alt"}})],1):n._e(),n._v(" "),!n.loading&&n.icon?a("span",{staticClass:"icon"},[a("FontAwesomeIcon",{staticClass:"svg-color-theme",attrs:{icon:n.icon}})],1):n._e()])}),[],!1,null,"16e9ad58",null);t.a=r.exports},Bn5E:function(n,t,a){"use strict";var e=a("L+0x");a.n(e).a},CeMC:function(n,t,a){var e=a("4gjb");"string"==typeof e&&(e=[[n.i,e,""]]);var i={hmr:!0,transform:void 0,insertInto:void 0};a("aET+")(e,i);e.locals&&(n.exports=e.locals)},JHC5:function(n,t,a){var e=a("YUi1");"string"==typeof e&&(e=[[n.i,e,""]]);var i={hmr:!0,transform:void 0,insertInto:void 0};a("aET+")(e,i);e.locals&&(n.exports=e.locals)},"L+0x":function(n,t,a){var e=a("rlDX");"string"==typeof e&&(e=[[n.i,e,""]]);var i={hmr:!0,transform:void 0,insertInto:void 0};a("aET+")(e,i);e.locals&&(n.exports=e.locals)},OMxy:function(n,t,a){(n.exports=a("I1BE")(!1)).push([n.i,".landing-page[data-v-4631c5f6] {\n overflow-x: hidden;\n}\n.page-wrapper[data-v-4631c5f6] {\n position: relative;\n margin: 0 auto;\n padding-left: 25px;\n padding-right: 25px;\n}\n.page-wrapper.large[data-v-4631c5f6] {\n width: 1490px;\n}\n.page-wrapper.medium[data-v-4631c5f6] {\n width: 1150px;\n}\n.page-wrapper.small[data-v-4631c5f6] {\n width: 890px;\n}\n@media only screen and (max-width: 1390px) {\n.page-wrapper.large[data-v-4631c5f6] {\n width: 100%;\n}\n}\n@media only screen and (max-width: 1190px) {\n.page-wrapper.large[data-v-4631c5f6] {\n width: 100%;\n}\n.page-wrapper.medium[data-v-4631c5f6] {\n width: 100%;\n}\n}\n@media only screen and (max-width: 960px) {\n.page-wrapper[data-v-4631c5f6] {\n padding-left: 25px;\n padding-right: 25px;\n}\n.page-wrapper.small[data-v-4631c5f6] {\n width: 100%;\n}\n}\n.page-title[data-v-4631c5f6] {\n position: relative;\n z-index: 1;\n}\n.page-title.center[data-v-4631c5f6] {\n text-align: center;\n}\n.page-title.center .title[data-v-4631c5f6] {\n margin-left: auto;\n margin-right: auto;\n max-width: 780px;\n}\n.page-title.center .description[data-v-4631c5f6] {\n margin-left: auto;\n margin-right: auto;\n}\n.page-title .title[data-v-4631c5f6] {\n max-width: 580px;\n font-size: 48px;\n font-weight: 800;\n line-height: 1.3;\n margin-bottom: 15px;\n}\n.page-title .title[data-v-4631c5f6] span {\n font-size: 48px;\n}\n.page-title .description[data-v-4631c5f6] {\n max-width: 580px;\n font-size: 1.25em;\n font-weight: 500;\n line-height: 1.65;\n margin-bottom: 30px;\n}\n@media only screen and (max-width: 960px) {\n.page-title .title[data-v-4631c5f6] {\n max-width: 100%;\n font-size: 32px;\n line-height: 1.25;\n margin-bottom: 15px;\n}\n.page-title .title[data-v-4631c5f6] span {\n font-size: 32px;\n}\n.page-title .description[data-v-4631c5f6] {\n max-width: 100%;\n font-size: 1em;\n line-height: 1.6;\n margin-bottom: 30px;\n}\n}\n",""])},P0S2:function(n,t,a){var e=a("5JKU");"string"==typeof e&&(e=[[n.i,e,""]]);var i={hmr:!0,transform:void 0,insertInto:void 0};a("aET+")(e,i);e.locals&&(n.exports=e.locals)},QGMT:function(n,t,a){(n.exports=a("I1BE")(!1)).push([n.i,".landing-page[data-v-410600b2] {\n overflow-x: hidden;\n}\n.page-wrapper[data-v-410600b2] {\n position: relative;\n margin: 0 auto;\n padding-left: 25px;\n padding-right: 25px;\n}\n.page-wrapper.large[data-v-410600b2] {\n width: 1490px;\n}\n.page-wrapper.medium[data-v-410600b2] {\n width: 1150px;\n}\n.page-wrapper.small[data-v-410600b2] {\n width: 890px;\n}\n@media only screen and (max-width: 1390px) {\n.page-wrapper.large[data-v-410600b2] {\n width: 100%;\n}\n}\n@media only screen and (max-width: 1190px) {\n.page-wrapper.large[data-v-410600b2] {\n width: 100%;\n}\n.page-wrapper.medium[data-v-410600b2] {\n width: 100%;\n}\n}\n@media only screen and (max-width: 960px) {\n.page-wrapper[data-v-410600b2] {\n padding-left: 25px;\n padding-right: 25px;\n}\n.page-wrapper.small[data-v-410600b2] {\n width: 100%;\n}\n}\n.icons .icon[data-v-410600b2] {\n z-index: 0;\n position: absolute;\n}\n.icons .icon[data-v-410600b2]:nth-child(1) {\n top: -14%;\n right: 2%;\n}\n.icons .icon[data-v-410600b2]:nth-child(2) {\n top: -5%;\n right: 14%;\n transform: rotate(19deg);\n}\n.icons .icon[data-v-410600b2]:nth-child(3) {\n top: -6.5%;\n right: 28.5%;\n transform: rotate(-12deg);\n}\n.icons .icon:nth-child(3) line[data-v-410600b2], .icons .icon:nth-child(3) path[data-v-410600b2] {\n stroke: #00BC7E;\n}\n.icons .icon[data-v-410600b2]:nth-child(4) {\n top: -9.5%;\n right: 41.5%;\n transform: rotate(13deg);\n}\n.icons .icon:nth-child(4) path[data-v-410600b2], .icons .icon:nth-child(4) line[data-v-410600b2] {\n stroke: #FFBD2D;\n}\n.icons .icon[data-v-410600b2]:nth-child(5) {\n top: -16%;\n right: 26%;\n}\n.icons .icon:nth-child(5) circle[data-v-410600b2], .icons .icon:nth-child(5) path[data-v-410600b2] {\n stroke: #FE6057;\n}\n.icons .icon[data-v-410600b2]:nth-child(6) {\n top: -13%;\n right: 49%;\n}\n.icons .icon[data-v-410600b2]:nth-child(7) {\n top: 2.5%;\n right: 46%;\n}\n.icons .icon:nth-child(7) polygon[data-v-410600b2] {\n stroke: #9D66FE;\n}\n.icons .icon[data-v-410600b2]:nth-child(8) {\n top: 13%;\n right: 2.5%;\n transform: rotate(22deg);\n}\n.icons .icon:nth-child(8) polyline[data-v-410600b2], .icons .icon:nth-child(8) path[data-v-410600b2], .icons .icon:nth-child(8) line[data-v-410600b2] {\n stroke: #FE6057;\n}\n.icons .icon[data-v-410600b2]:nth-child(9) {\n top: 14%;\n right: 11%;\n}\n.icons .icon:nth-child(9) circle[data-v-410600b2], .icons .icon:nth-child(9) line[data-v-410600b2] {\n stroke: #9D66FE;\n}\n.icons .icon[data-v-410600b2]:nth-child(10) {\n top: 29%;\n right: 7%;\n transform: rotate(19deg);\n}\n.icons .icon[data-v-410600b2]:nth-child(11) {\n top: 38%;\n right: 3%;\n}\n.icons .icon:nth-child(11) polygon[data-v-410600b2] {\n stroke: #FFBD2D;\n}\n.icons .icon[data-v-410600b2]:nth-child(12) {\n top: 50%;\n right: 11.5%;\n transform: rotate(-22deg);\n}\n.icons .icon[data-v-410600b2]:nth-child(13) {\n top: 34%;\n right: 16%;\n transform: rotate(13deg);\n}\n.icons .icon:nth-child(13) rect[data-v-410600b2] {\n stroke: #00BC7E;\n}\n.hero-screenshot[data-v-410600b2] {\n position: relative;\n z-index: 1;\n padding-top: 75px;\n padding-bottom: 130px;\n}\n.hero-screenshot img[data-v-410600b2] {\n border-radius: 8px;\n width: 80%;\n box-shadow: 0 7px 255px rgba(25, 54, 60, 0.1);\n}\n.hero-screenshot img.hero-dark[data-v-410600b2] {\n display: none;\n}\n@media only screen and (max-width: 890px) {\n.icons[data-v-410600b2] {\n display: none;\n}\n.hero-screenshot[data-v-410600b2] {\n padding-top: 40px;\n padding-bottom: 90px;\n}\n.hero-screenshot img[data-v-410600b2] {\n width: 100%;\n}\n}\n@media (prefers-color-scheme: dark) {\n.hero-screenshot img.hero-light[data-v-410600b2] {\n display: none;\n}\n.hero-screenshot img.hero-dark[data-v-410600b2] {\n display: block;\n box-shadow: 0 7px 185px rgba(0, 0, 0, 0.8);\n}\n}\n",""])},R1dO:function(n,t,a){(n.exports=a("I1BE")(!1)).push([n.i,".landing-page[data-v-675c0802] {\n overflow-x: hidden;\n}\n.page-wrapper[data-v-675c0802] {\n position: relative;\n margin: 0 auto;\n padding-left: 25px;\n padding-right: 25px;\n}\n.page-wrapper.large[data-v-675c0802] {\n width: 1490px;\n}\n.page-wrapper.medium[data-v-675c0802] {\n width: 1150px;\n}\n.page-wrapper.small[data-v-675c0802] {\n width: 890px;\n}\n@media only screen and (max-width: 1390px) {\n.page-wrapper.large[data-v-675c0802] {\n width: 100%;\n}\n}\n@media only screen and (max-width: 1190px) {\n.page-wrapper.large[data-v-675c0802] {\n width: 100%;\n}\n.page-wrapper.medium[data-v-675c0802] {\n width: 100%;\n}\n}\n@media only screen and (max-width: 960px) {\n.page-wrapper[data-v-675c0802] {\n padding-left: 25px;\n padding-right: 25px;\n}\n.page-wrapper.small[data-v-675c0802] {\n width: 100%;\n}\n}\n.icons .icon[data-v-675c0802] {\n position: absolute;\n}\n.icons .icon[data-v-675c0802]:nth-child(20) {\n bottom: -37%;\n left: 37%;\n transform: rotate(0deg);\n}\n.icons .icon:nth-child(20) circle[data-v-675c0802], .icons .icon:nth-child(20) line[data-v-675c0802] {\n stroke: #FFBD2D;\n}\n.icons .icon[data-v-675c0802]:nth-child(19) {\n bottom: -21%;\n left: 23.5%;\n transform: rotate(-20deg);\n}\n.icons .icon:nth-child(19) path[data-v-675c0802], .icons .icon:nth-child(19) line[data-v-675c0802] {\n stroke: #9D66FE;\n}\n.icons .icon[data-v-675c0802]:nth-child(18) {\n bottom: -4%;\n left: 26.5%;\n transform: rotate(0deg);\n}\n.icons .icon:nth-child(18) path[data-v-675c0802] {\n stroke: #00BC7E;\n}\n.icons .icon[data-v-675c0802]:nth-child(17) {\n bottom: -5%;\n left: 8.5%;\n transform: rotate(0deg);\n}\n.icons .icon[data-v-675c0802]:nth-child(16) {\n top: 86%;\n left: 17%;\n transform: rotate(18deg);\n}\n.icons .icon[data-v-675c0802]:nth-child(15) {\n top: 64%;\n left: 17%;\n transform: rotate(0deg);\n}\n.icons .icon:nth-child(15) polyline[data-v-675c0802], .icons .icon:nth-child(15) line[data-v-675c0802], .icons .icon:nth-child(15) path[data-v-675c0802] {\n stroke: #FE6057;\n}\n.icons .icon[data-v-675c0802]:nth-child(14) {\n top: 44%;\n left: 28%;\n transform: rotate(0deg);\n}\n.icons .icon:nth-child(14) polygon[data-v-675c0802] {\n stroke: #9D66FE;\n}\n.icons .icon[data-v-675c0802]:nth-child(13) {\n top: 33%;\n left: 16%;\n transform: rotate(0deg);\n}\n.icons .icon[data-v-675c0802]:nth-child(12) {\n top: 23%;\n left: 32%;\n transform: rotate(13deg);\n}\n.icons .icon:nth-child(12) line[data-v-675c0802], .icons .icon:nth-child(12) path[data-v-675c0802] {\n stroke: #FFBD2D;\n}\n.icons .icon[data-v-675c0802]:nth-child(1) {\n top: 35%;\n right: 49%;\n transform: rotate(-11deg);\n}\n.icons .icon:nth-child(1) line[data-v-675c0802], .icons .icon:nth-child(1) path[data-v-675c0802] {\n stroke: #00BC7E;\n}\n.icons .icon[data-v-675c0802]:nth-child(2) {\n top: 12%;\n right: 45%;\n transform: rotate(0);\n}\n.icons .icon:nth-child(2) circle[data-v-675c0802], .icons .icon:nth-child(2) path[data-v-675c0802] {\n stroke: #FE6057;\n}\n.icons .icon[data-v-675c0802]:nth-child(3) {\n top: 30%;\n right: 30%;\n transform: rotate(20deg);\n}\n.icons .icon[data-v-675c0802]:nth-child(4) {\n top: 14%;\n right: 14.5%;\n transform: rotate(-1deg);\n}\n.icons .icon[data-v-675c0802]:nth-child(5) {\n top: 62%;\n right: 15.5%;\n transform: rotate(21deg);\n}\n.icons .icon:nth-child(5) polyline[data-v-675c0802], .icons .icon:nth-child(5) path[data-v-675c0802], .icons .icon:nth-child(5) line[data-v-675c0802] {\n stroke: #FE6057;\n}\n.icons .icon[data-v-675c0802]:nth-child(6) {\n top: 66%;\n right: 26.5%;\n transform: rotate(0deg);\n}\n.icons .icon[data-v-675c0802]:nth-child(7) {\n bottom: 3%;\n right: 21.5%;\n transform: rotate(16deg);\n}\n.icons .icon[data-v-675c0802]:nth-child(8) {\n bottom: -13%;\n right: 16.5%;\n transform: rotate(0deg);\n}\n.icons .icon:nth-child(8) polygon[data-v-675c0802] {\n stroke: #FFBD2D;\n}\n.icons .icon[data-v-675c0802]:nth-child(9) {\n bottom: -32%;\n right: 27%;\n transform: rotate(-20deg);\n}\n.icons .icon[data-v-675c0802]:nth-child(10) {\n bottom: -5%;\n right: 34%;\n transform: rotate(16deg);\n}\n.icons .icon:nth-child(10) rect[data-v-675c0802] {\n stroke: #9D66FE;\n}\n.icons .icon[data-v-675c0802]:nth-child(11) {\n bottom: -28%;\n right: 44%;\n transform: rotate(-12deg);\n}\n.icons .icon:nth-child(11) polyline[data-v-675c0802], .icons .icon:nth-child(11) line[data-v-675c0802], .icons .icon:nth-child(11) path[data-v-675c0802] {\n stroke: #FE6057;\n}\n.cloud-bg[data-v-675c0802] {\n z-index: 0;\n position: absolute;\n top: 70px;\n right: 60px;\n transform: scale(-1, 1) rotate(13deg);\n opacity: 0.1;\n}\n.cloud-bg path[data-v-675c0802] {\n stroke: none;\n}\n.page-title[data-v-675c0802] {\n padding-top: 340px;\n}\n.get-started-button[data-v-675c0802] {\n display: flex;\n align-items: center;\n outline: none;\n border: none;\n margin-left: auto;\n margin-right: auto;\n cursor: pointer;\n padding: 20px 36px;\n border-radius: 6px;\n margin-bottom: 395px;\n transition: 150ms all ease;\n position: relative;\n z-index: 1;\n}\n.get-started-button .content[data-v-675c0802] {\n font-size: 1.1875em;\n font-weight: 700;\n margin-right: 8px;\n color: white;\n}\n.get-started-button polyline[data-v-675c0802] {\n stroke: white;\n}\n@media only screen and (max-width: 1190px) {\n.get-started-button[data-v-675c0802] {\n margin-bottom: 280px;\n}\n}\n@media only screen and (max-width: 960px) {\n.page-title[data-v-675c0802] {\n padding-top: 20px;\n}\n.get-started-button[data-v-675c0802] {\n margin-bottom: 30px;\n}\n.cloud-bg[data-v-675c0802],\n .icons[data-v-675c0802] {\n display: none;\n}\n}\n",""])},RLEU:function(n,t,a){"use strict";var e=a("JHC5");a.n(e).a},"UV+N":function(n,t,a){"use strict";var e=a("hbX3");a.n(e).a},YUi1:function(n,t,a){(n.exports=a("I1BE")(!1)).push([n.i,".button[data-v-16e9ad58] {\n cursor: pointer;\n border-radius: 8px;\n text-decoration: none;\n padding: 12px 32px;\n display: inline-block;\n margin-left: 15px;\n margin-right: 15px;\n white-space: nowrap;\n transition: 150ms all ease;\n background: transparent;\n}\n.button .text-label[data-v-16e9ad58] {\n transition: 150ms all ease;\n font-size: 1.0625em;\n font-weight: 800;\n line-height: 0;\n}\n.button .icon[data-v-16e9ad58] {\n margin-left: 12px;\n font-size: 1em;\n}\n.button.solid[data-v-16e9ad58] {\n background: #00BC7E;\n border: 2px solid #00BC7E;\n}\n.button.solid .text-label[data-v-16e9ad58] {\n color: white;\n}\n.button.outline[data-v-16e9ad58] {\n border: 2px solid #1B2539;\n}\n.button.outline .text-label[data-v-16e9ad58] {\n color: #1B2539;\n}\n.button.outline .icon path[data-v-16e9ad58] {\n fill: inherit;\n}\n.button.outline[data-v-16e9ad58]:hover {\n border-color: inherit;\n}\n.button.outline:hover .text-label[data-v-16e9ad58] {\n color: inherit;\n}\n@media (prefers-color-scheme: dark) {\n.button.outline[data-v-16e9ad58] {\n background: #131414;\n border-color: #bec6cf;\n}\n.button.outline .text-label[data-v-16e9ad58] {\n color: #bec6cf;\n}\n}\n.sync-alt[data-v-16e9ad58] {\n -webkit-animation: spin-data-v-16e9ad58 1s linear infinite;\n animation: spin-data-v-16e9ad58 1s linear infinite;\n}\n@-webkit-keyframes spin-data-v-16e9ad58 {\n0% {\n transform: rotate(0);\n}\n100% {\n transform: rotate(360deg);\n}\n}\n@keyframes spin-data-v-16e9ad58 {\n0% {\n transform: rotate(0);\n}\n100% {\n transform: rotate(360deg);\n}\n}\n",""])},Za8N:function(n,t,a){(n.exports=a("I1BE")(!1)).push([n.i,".landing-page[data-v-36bfcd3c] {\n overflow-x: hidden;\n}\n.page-wrapper[data-v-36bfcd3c] {\n position: relative;\n margin: 0 auto;\n padding-left: 25px;\n padding-right: 25px;\n}\n.page-wrapper.large[data-v-36bfcd3c] {\n width: 1490px;\n}\n.page-wrapper.medium[data-v-36bfcd3c] {\n width: 1150px;\n}\n.page-wrapper.small[data-v-36bfcd3c] {\n width: 890px;\n}\n@media only screen and (max-width: 1390px) {\n.page-wrapper.large[data-v-36bfcd3c] {\n width: 100%;\n}\n}\n@media only screen and (max-width: 1190px) {\n.page-wrapper.large[data-v-36bfcd3c] {\n width: 100%;\n}\n.page-wrapper.medium[data-v-36bfcd3c] {\n width: 100%;\n}\n}\n@media only screen and (max-width: 960px) {\n.page-wrapper[data-v-36bfcd3c] {\n padding-left: 25px;\n padding-right: 25px;\n}\n.page-wrapper.small[data-v-36bfcd3c] {\n width: 100%;\n}\n}\n.features[data-v-36bfcd3c] {\n padding-left: 75px;\n}\n.features .feature[data-v-36bfcd3c] {\n margin-bottom: 25px;\n}\n.features .feature .title[data-v-36bfcd3c] {\n font-size: 1.625em;\n font-weight: 800;\n margin-bottom: 4px;\n}\n.features .feature .description[data-v-36bfcd3c] {\n line-height: 1.5;\n color: rgba(27, 37, 57, 0.7);\n font-size: 1.125em;\n}\n.features .feature .icon[data-v-36bfcd3c] {\n border-radius: 12px;\n width: 44px;\n height: 44px;\n display: flex;\n align-items: center;\n margin-bottom: 18px;\n}\n.features .feature .icon svg[data-v-36bfcd3c] {\n margin: 0 auto;\n}\n.features .feature:nth-child(1) .icon[data-v-36bfcd3c] {\n background: rgba(255, 189, 45, 0.1);\n}\n.features .feature:nth-child(1) .icon path[data-v-36bfcd3c], .features .feature:nth-child(1) .icon line[data-v-36bfcd3c], .features .feature:nth-child(1) .icon polyline[data-v-36bfcd3c], .features .feature:nth-child(1) .icon rect[data-v-36bfcd3c], .features .feature:nth-child(1) .icon circle[data-v-36bfcd3c] {\n stroke: #FFBD2D;\n}\n.features .feature:nth-child(2) .icon[data-v-36bfcd3c] {\n background: rgba(0, 188, 126, 0.1);\n}\n.features .feature:nth-child(2) .icon path[data-v-36bfcd3c], .features .feature:nth-child(2) .icon line[data-v-36bfcd3c], .features .feature:nth-child(2) .icon polyline[data-v-36bfcd3c], .features .feature:nth-child(2) .icon rect[data-v-36bfcd3c], .features .feature:nth-child(2) .icon circle[data-v-36bfcd3c] {\n stroke: #00BC7E;\n}\n.features .feature:nth-child(3) .icon[data-v-36bfcd3c] {\n background: rgba(157, 102, 254, 0.1);\n}\n.features .feature:nth-child(3) .icon path[data-v-36bfcd3c], .features .feature:nth-child(3) .icon line[data-v-36bfcd3c], .features .feature:nth-child(3) .icon polyline[data-v-36bfcd3c], .features .feature:nth-child(3) .icon rect[data-v-36bfcd3c], .features .feature:nth-child(3) .icon circle[data-v-36bfcd3c] {\n stroke: #9D66FE;\n}\n.content[data-v-36bfcd3c] {\n margin-top: 107px;\n display: flex;\n}\n@media only screen and (max-width: 1190px) {\n.hero[data-v-36bfcd3c] {\n flex: 0 0 60%;\n}\n.hero img[data-v-36bfcd3c] {\n width: 100%;\n}\n.features[data-v-36bfcd3c] {\n padding-left: 25px;\n margin-top: 0px;\n}\n}\n@media only screen and (max-width: 960px) {\n.content[data-v-36bfcd3c] {\n display: block;\n margin-top: 40px;\n}\n.features[data-v-36bfcd3c] {\n margin-top: 50px;\n padding-left: 0;\n}\n.features .feature[data-v-36bfcd3c] {\n margin-bottom: 35px;\n}\n.features .feature .title[data-v-36bfcd3c] {\n font-size: 1.375em;\n}\n.features .feature .description[data-v-36bfcd3c] {\n font-size: 1em;\n}\n}\n@media (prefers-color-scheme: dark) {\n.features .feature .description[data-v-36bfcd3c] {\n color: #7d858c;\n}\n}\n",""])},"a/4p":function(n,t,a){var e=a("Za8N");"string"==typeof e&&(e=[[n.i,e,""]]);var i={hmr:!0,transform:void 0,insertInto:void 0};a("aET+")(e,i);e.locals&&(n.exports=e.locals)},brvx:function(n,t,a){var e=a("tClz");"string"==typeof e&&(e=[[n.i,e,""]]);var i={hmr:!0,transform:void 0,insertInto:void 0};a("aET+")(e,i);e.locals&&(n.exports=e.locals)},cByo:function(n,t,a){"use strict";var e=a("CeMC");a.n(e).a},"cYu/":function(n,t,a){"use strict";var e={name:"IndexPageTile",props:["title","description","type"]},i=(a("UV+N"),a("KHd+")),r=Object(i.a)(e,(function(){var n=this,t=n.$createElement,a=n._self._c||t;return a("div",{staticClass:"page-title left",class:n.type},[a("h1",{staticClass:"title",domProps:{innerHTML:n._s(n.title)}}),n._v(" "),n.description?a("h2",{staticClass:"description"},[n._v("\n "+n._s(n.description)+"\n ")]):n._e()])}),[],!1,null,"4631c5f6",null);t.a=r.exports},g6yA:function(n,t,a){"use strict";var e=a("wIs7");a.n(e).a},gtA2:function(n,t,a){"use strict";var e=a("uINO");a.n(e).a},hbX3:function(n,t,a){var e=a("OMxy");"string"==typeof e&&(e=[[n.i,e,""]]);var i={hmr:!0,transform:void 0,insertInto:void 0};a("aET+")(e,i);e.locals&&(n.exports=e.locals)},izjo:function(n,t,a){"use strict";var e=a("L2JU");function i(n,t){var a=Object.keys(n);if(Object.getOwnPropertySymbols){var e=Object.getOwnPropertySymbols(n);t&&(e=e.filter((function(t){return Object.getOwnPropertyDescriptor(n,t).enumerable}))),a.push.apply(a,e)}return a}function r(n,t,a){return t in n?Object.defineProperty(n,t,{value:a,enumerable:!0,configurable:!0,writable:!0}):n[t]=a,n}var o={name:"IndexPageFooter",computed:function(n){for(var t=1;t<arguments.length;t++){var a=null!=arguments[t]?arguments[t]:{};t%2?i(Object(a),!0).forEach((function(t){r(n,t,a[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(a)):i(Object(a)).forEach((function(t){Object.defineProperty(n,t,Object.getOwnPropertyDescriptor(a,t))}))}return n}({},Object(e.b)(["config"]))},s=(a("AMRr"),a("KHd+")),c=Object(s.a)(o,(function(){var n=this,t=n.$createElement,a=n._self._c||t;return a("footer",{staticClass:"page-wrapper medium"},[a("router-link",{staticClass:"logo",attrs:{to:{name:"Homepage"},tag:"div"}},[n.config.app_logo_horizontal?a("img",{attrs:{src:n.$getImage(n.config.app_logo_horizontal),alt:n.config.app_name}}):n._e(),n._v(" "),n.config.app_logo_horizontal?n._e():a("b",{staticClass:"logo-text"},[n._v(n._s(n.config.app_name))])]),n._v(" "),a("ul",{staticClass:"navigation-links"},[a("li",[a("router-link",{staticClass:"hover-text-theme",attrs:{to:{name:"ContactUs"}}},[n._v("\n "+n._s(n.$t("page_index.menu.contact_us"))+"\n ")])],1)]),n._v(" "),a("ul",{staticClass:"navigation-links"},n._l(n.config.legal,(function(t,e){return t.visibility?a("li",{key:e},[a("router-link",{staticClass:"hover-text-theme",attrs:{to:{name:"DynamicPage",params:{slug:t.slug}}}},[n._v("\n "+n._s(t.title)+"\n ")])],1):n._e()})),0),n._v(" "),a("p",{staticClass:"copyright",domProps:{innerHTML:n._s(n.config.app_footer)}})],1)}),[],!1,null,"6163db28",null);t.a=c.exports},j0t8:function(n,t,a){(n.exports=a("I1BE")(!1)).push([n.i,".plans-wrapper[data-v-a63f90ac] {\n box-shadow: 0 7px 20px 5px rgba(26, 36, 55, 0.05);\n border-radius: 8px;\n background: white;\n}\n.plan[data-v-a63f90ac] {\n text-align: center;\n flex: 0 0 33%;\n padding: 55px 25px 75px;\n}\n.plan[data-v-a63f90ac]:last-child {\n border-right: none;\n}\n.plan .plan-header .icon path[data-v-a63f90ac], .plan .plan-header .icon line[data-v-a63f90ac], .plan .plan-header .icon polyline[data-v-a63f90ac], .plan .plan-header .icon rect[data-v-a63f90ac], .plan .plan-header .icon circle[data-v-a63f90ac] {\n color: inherit;\n}\n.plan .plan-header .title[data-v-a63f90ac] {\n font-size: 1.375em;\n font-weight: 800;\n padding-top: 10px;\n}\n.plan .plan-header .description[data-v-a63f90ac] {\n font-size: 0.875em;\n font-weight: 600;\n}\n.plan .plan-features[data-v-a63f90ac] {\n margin: 55px 0;\n}\n.plan .plan-features .storage-size[data-v-a63f90ac] {\n font-size: 3em;\n font-weight: 900;\n line-height: 1.1;\n}\n.plan .plan-features .storage-description[data-v-a63f90ac] {\n display: block;\n font-size: 0.9375em;\n font-weight: 800;\n}\n.plan .plan-footer .sign-in-button[data-v-a63f90ac] {\n width: 100%;\n text-align: center;\n}\n.plan .plan-footer .price[data-v-a63f90ac] {\n font-size: 1.125em;\n display: block;\n padding-top: 5px;\n}\n.plan .plan-footer .price .vat-disclaimer[data-v-a63f90ac] {\n font-size: 0.6875em;\n color: #1B2539;\n display: block;\n font-weight: 300;\n opacity: 0.45;\n margin-top: 5px;\n}\n.plans-wrapper[data-v-a63f90ac] {\n display: flex;\n flex-wrap: wrap;\n justify-content: space-around;\n}\n@media only screen and (max-width: 960px) {\n.plans-wrapper[data-v-a63f90ac] {\n display: block;\n margin: 0;\n}\n.plans-wrapper .plan[data-v-a63f90ac] {\n padding: 30px 25px;\n border-bottom: 1px solid #F7F7F7;\n border-right: none;\n}\n}\n@media (prefers-color-scheme: dark) {\n.plans-wrapper[data-v-a63f90ac] {\n background: #1e2024;\n}\n.plan[data-v-a63f90ac] {\n border-color: rgba(255, 255, 255, 0.02) !important;\n}\n.plan .plan-wrapper[data-v-a63f90ac] {\n background: #1e2024;\n}\n.plan .plan-header .title[data-v-a63f90ac] {\n color: #bec6cf;\n}\n.plan .plan-header .description[data-v-a63f90ac] {\n color: #7d858c;\n}\n.plan .plan-features .storage-size[data-v-a63f90ac] {\n color: #bec6cf;\n}\n.plan .plan-features .storage-description[data-v-a63f90ac] {\n color: #bec6cf;\n}\n.plan .plan-footer .sign-in-button[data-v-a63f90ac] {\n background: rgba(0, 188, 126, 0.1);\n}\n.plan .plan-footer .sign-in-button[data-v-a63f90ac] .content {\n color: #00BC7E;\n}\n.plan .plan-footer .price .vat-disclaimer[data-v-a63f90ac] {\n color: #bec6cf;\n}\n}\n",""])},k2Kc:function(n,t,a){var e=a("ufz3");"string"==typeof e&&(e=[[n.i,e,""]]);var i={hmr:!0,transform:void 0,insertInto:void 0};a("aET+")(e,i);e.locals&&(n.exports=e.locals)},krgs:function(n,t,a){(n.exports=a("I1BE")(!1)).push([n.i,"#loading-bar-spinner.spinner[data-v-1df66002] {\n left: 50%;\n margin-left: -20px;\n top: 50%;\n margin-top: -20px;\n position: absolute;\n z-index: 19 !important;\n -webkit-animation: loading-bar-spinner-data-v-1df66002 400ms linear infinite;\n animation: loading-bar-spinner-data-v-1df66002 400ms linear infinite;\n}\n#loading-bar-spinner.spinner .spinner-icon[data-v-1df66002] {\n width: 40px;\n height: 40px;\n border: solid 4px transparent;\n border-radius: 50%;\n}\n@-webkit-keyframes loading-bar-spinner-data-v-1df66002 {\n0% {\n transform: rotate(0deg);\n}\n100% {\n transform: rotate(360deg);\n}\n}\n@keyframes loading-bar-spinner-data-v-1df66002 {\n0% {\n transform: rotate(0deg);\n}\n100% {\n transform: rotate(360deg);\n}\n}\n",""])},l2BQ:function(n,t,a){"use strict";var e=a("k2Kc");a.n(e).a},mi1m:function(n,t,a){var e=a("QGMT");"string"==typeof e&&(e=[[n.i,e,""]]);var i={hmr:!0,transform:void 0,insertInto:void 0};a("aET+")(e,i);e.locals&&(n.exports=e.locals)},pRWf:function(n,t,a){"use strict";var e=a("mi1m");a.n(e).a},rlDX:function(n,t,a){(n.exports=a("I1BE")(!1)).push([n.i,".landing-page[data-v-6746e233] {\n overflow-x: hidden;\n}\n.page-wrapper[data-v-6746e233] {\n position: relative;\n margin: 0 auto;\n padding-left: 25px;\n padding-right: 25px;\n}\n.page-wrapper.large[data-v-6746e233] {\n width: 1490px;\n}\n.page-wrapper.medium[data-v-6746e233] {\n width: 1150px;\n}\n.page-wrapper.small[data-v-6746e233] {\n width: 890px;\n}\n@media only screen and (max-width: 1390px) {\n.page-wrapper.large[data-v-6746e233] {\n width: 100%;\n}\n}\n@media only screen and (max-width: 1190px) {\n.page-wrapper.large[data-v-6746e233] {\n width: 100%;\n}\n.page-wrapper.medium[data-v-6746e233] {\n width: 100%;\n}\n}\n@media only screen and (max-width: 960px) {\n.page-wrapper[data-v-6746e233] {\n padding-left: 25px;\n padding-right: 25px;\n}\n.page-wrapper.small[data-v-6746e233] {\n width: 100%;\n}\n}\n.main-navigation[data-v-6746e233] {\n justify-content: space-between;\n padding-bottom: 25px;\n align-items: center;\n padding-top: 25px;\n display: flex;\n}\n.logo[data-v-6746e233] {\n cursor: pointer;\n}\n.logo img[data-v-6746e233] {\n cursor: pointer;\n height: 38px;\n width: auto;\n}\n.logo .logo-text[data-v-6746e233] {\n font-weight: 800;\n font-size: 1.5625em;\n}\n.navigation-links[data-v-6746e233] {\n display: inline-block;\n margin-left: 25px;\n}\n.navigation-links[data-v-6746e233]:first-child {\n margin-left: 0;\n}\n.navigation-links li[data-v-6746e233] {\n display: inline-block;\n}\n.navigation-links li a[data-v-6746e233] {\n padding: 14px;\n font-weight: 700;\n font-size: 1.0625em;\n transition: 150ms all ease;\n}\n.cta-button[data-v-6746e233] {\n border-radius: 6px;\n padding: 8px 23px;\n font-size: 1.0625em;\n font-weight: 700;\n}\n.cta-button.log-in[data-v-6746e233] {\n display: none;\n}\n@media only screen and (max-width: 690px) {\n.navigation[data-v-6746e233] {\n display: none;\n}\n.logo img[data-v-6746e233] {\n height: auto;\n width: 190px;\n}\n.cta-button.log-in[data-v-6746e233] {\n display: block;\n}\n}\n",""])},s2Id:function(n,t,a){"use strict";a.r(t);var e=a("L2JU"),i=a("CjXH");function r(n,t){var a=Object.keys(n);if(Object.getOwnPropertySymbols){var e=Object.getOwnPropertySymbols(n);t&&(e=e.filter((function(t){return Object.getOwnPropertyDescriptor(n,t).enumerable}))),a.push.apply(a,e)}return a}function o(n,t,a){return t in n?Object.defineProperty(n,t,{value:a,enumerable:!0,configurable:!0,writable:!0}):n[t]=a,n}var s={name:"IndexHeroScreenshot",components:{FolderPlusIcon:i.y,HardDriveIcon:i.A,SettingsIcon:i.V,Trash2Icon:i.Z,SearchIcon:i.T,ImageIcon:i.C,GridIcon:i.z,LinkIcon:i.F,StarIcon:i.Y,EyeIcon:i.t},computed:function(n){for(var t=1;t<arguments.length;t++){var a=null!=arguments[t]?arguments[t]:{};t%2?r(Object(a),!0).forEach((function(t){o(n,t,a[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(a)):r(Object(a)).forEach((function(t){Object.defineProperty(n,t,Object.getOwnPropertyDescriptor(a,t))}))}return n}({},Object(e.b)(["config"]))},c=(a("pRWf"),a("KHd+")),d=Object(c.a)(s,(function(){var n=this,t=n.$createElement,a=n._self._c||t;return a("div",{staticClass:"page-wrapper large hero-screenshot"},[a("img",{staticClass:"hero-light",attrs:{src:"/assets/images/vuefilemanager-screenshot-light.png",alt:n.config.app_name}}),n._v(" "),a("img",{staticClass:"hero-dark",attrs:{src:"/assets/images/vuefilemanager-screenshot-dark.png",alt:n.config.app_name}}),n._v(" "),a("div",{staticClass:"icons"},[a("link-icon",{staticClass:"icon",attrs:{size:"20"}}),n._v(" "),a("image-icon",{staticClass:"icon",attrs:{size:"38"}}),n._v(" "),a("hard-drive-icon",{staticClass:"icon",attrs:{size:"34"}}),n._v(" "),a("folder-plus-icon",{staticClass:"icon",attrs:{size:"40"}}),n._v(" "),a("settings-icon",{staticClass:"icon",attrs:{size:"18"}}),n._v(" "),a("search-icon",{staticClass:"icon",attrs:{size:"24"}}),n._v(" "),a("star-icon",{staticClass:"icon",attrs:{size:"18"}}),n._v(" "),a("trash2-icon",{staticClass:"icon",attrs:{size:"32"}}),n._v(" "),a("search-icon",{staticClass:"icon",attrs:{size:"18"}}),n._v(" "),a("eye-icon",{staticClass:"icon",attrs:{size:"30"}}),n._v(" "),a("star-icon",{staticClass:"icon",attrs:{size:"30"}}),n._v(" "),a("folder-plus-icon",{staticClass:"icon",attrs:{size:"16"}}),n._v(" "),a("grid-icon",{staticClass:"icon",attrs:{size:"20"}})],1)])}),[],!1,null,"410600b2",null).exports,p=a("vDqi"),l=a.n(p),g={name:"PricingTables",components:{HardDriveIcon:i.A},data:function(){return{plans:void 0}},created:function(){var n=this;l.a.get("/api/pricing").then((function(t){n.plans=t.data,n.$emit("load",t.data)}))}},f=(a("gtA2"),Object(c.a)(g,(function(){var n=this,t=n.$createElement,a=n._self._c||t;return n.plans?a("div",{staticClass:"plans-wrapper"},n._l(n.plans,(function(t,e){return a("article",{key:e,staticClass:"plan"},[a("div",{staticClass:"plan-wrapper"},[a("header",{staticClass:"plan-header"},[a("div",{staticClass:"icon"},[a("hard-drive-icon",{staticClass:"text-theme",attrs:{size:"26"}})],1),n._v(" "),a("h1",{staticClass:"title"},[n._v(n._s(t.data.attributes.name))]),n._v(" "),a("h2",{staticClass:"description"},[n._v(n._s(t.data.attributes.description))])]),n._v(" "),a("section",{staticClass:"plan-features"},[a("b",{staticClass:"storage-size"},[n._v(n._s(t.data.attributes.capacity_formatted))]),n._v(" "),a("span",{staticClass:"storage-description"},[n._v(n._s(n.$t("page_pricing_tables.storage_capacity")))])]),n._v(" "),a("footer",{staticClass:"plan-footer"},[a("b",{staticClass:"price text-theme"},[n._v("\n "+n._s(t.data.attributes.price)+"/"+n._s(n.$t("global.monthly_ac"))+"\n "),t.data.attributes.tax_rates.length>0?a("small",{staticClass:"vat-disclaimer"},[n._v(n._s(n.$t("page_pricing_tables.vat_excluded")))]):n._e()])])])])})),0):n._e()}),[],!1,null,"a63f90ac",null).exports),h=a("ASoH");function v(n,t){var a=Object.keys(n);if(Object.getOwnPropertySymbols){var e=Object.getOwnPropertySymbols(n);t&&(e=e.filter((function(t){return Object.getOwnPropertyDescriptor(n,t).enumerable}))),a.push.apply(a,e)}return a}function u(n,t,a){return t in n?Object.defineProperty(n,t,{value:a,enumerable:!0,configurable:!0,writable:!0}):n[t]=a,n}var m={name:"IndexPricingTables",components:{PricingTables:f,AuthButton:h.a,CloudIcon:i.j},computed:function(n){for(var t=1;t<arguments.length;t++){var a=null!=arguments[t]?arguments[t]:{};t%2?v(Object(a),!0).forEach((function(t){u(n,t,a[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(a)):v(Object(a)).forEach((function(t){Object.defineProperty(n,t,Object.getOwnPropertyDescriptor(a,t))}))}return n}({},Object(e.b)(["index","config"])),data:function(){return{isEmpty:!1}},methods:{pricingLoaded:function(n){0===n.length&&(this.isEmpty=!0)}}},b=(a("l2BQ"),Object(c.a)(m,(function(){var n=this,t=n.$createElement,a=n._self._c||t;return!n.isEmpty&&"1"===n.index.section_pricing_content&&n.config.stripe_public_key?a("div",{staticClass:"page-wrapper medium pricing"},[a("div",{staticClass:"page-title center",attrs:{id:"pricing"}},[a("h1",{staticClass:"title",domProps:{innerHTML:n._s(n.index.pricing_title)}})]),n._v(" "),a("PricingTables",{staticClass:"pricing-tables",on:{load:n.pricingLoaded}}),n._v(" "),a("div",{staticClass:"page-title center"},[a("h2",{staticClass:"description"},[n._v("\n "+n._s(n.index.pricing_description)+"\n ")]),n._v(" "),a("router-link",{staticClass:"sign-up-button",attrs:{to:{name:"SignUp"}}},[a("AuthButton",{staticClass:"button",attrs:{icon:"chevron-right",text:n.$t("page_index.sign_up_button")}})],1)],1),n._v(" "),a("cloud-icon",{staticClass:"cloud-bg",attrs:{size:"800"}}),n._v(" "),a("cloud-icon",{staticClass:"cloud-bg",attrs:{size:"560"}})],1):n._e()}),[],!1,null,"f6f45e84",null).exports),x=a("cYu/");function w(n,t){var a=Object.keys(n);if(Object.getOwnPropertySymbols){var e=Object.getOwnPropertySymbols(n);t&&(e=e.filter((function(t){return Object.getOwnPropertyDescriptor(n,t).enumerable}))),a.push.apply(a,e)}return a}function _(n,t,a){return t in n?Object.defineProperty(n,t,{value:a,enumerable:!0,configurable:!0,writable:!0}):n[t]=a,n}var y={name:"IndexMainFeatures",components:{PageTitle:x.a,HardDriveIcon:i.A,CloudIcon:i.j,UserIcon:i.db},computed:function(n){for(var t=1;t<arguments.length;t++){var a=null!=arguments[t]?arguments[t]:{};t%2?w(Object(a),!0).forEach((function(t){_(n,t,a[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(a)):w(Object(a)).forEach((function(t){Object.defineProperty(n,t,Object.getOwnPropertyDescriptor(a,t))}))}return n}({},Object(e.b)(["index"]))},O=(a("2cvT"),Object(c.a)(y,(function(){var n=this,t=n.$createElement,a=n._self._c||t;return a("section",{staticClass:"main-features page-wrapper medium"},["1"===n.index.section_features?a("PageTitle",{attrs:{type:"center",title:n.index.features_title,description:n.index.features_description}}):n._e(),n._v(" "),"1"===n.index.section_feature_boxes?a("div",{staticClass:"content"},[n._m(0),n._v(" "),a("div",{staticClass:"features"},[a("div",{staticClass:"feature"},[a("div",{staticClass:"icon"},[a("cloud-icon",{attrs:{size:"24"}})],1),n._v(" "),a("h3",{staticClass:"title"},[n._v("\n "+n._s(n.index.feature_title_1)+"\n ")]),n._v(" "),a("p",{staticClass:"description"},[n._v("\n "+n._s(n.index.feature_description_1)+"\n ")])]),n._v(" "),a("div",{staticClass:"feature"},[a("div",{staticClass:"icon"},[a("user-icon",{attrs:{size:"24"}})],1),n._v(" "),a("h3",{staticClass:"title"},[n._v("\n "+n._s(n.index.feature_title_2)+"\n ")]),n._v(" "),a("p",{staticClass:"description"},[n._v("\n "+n._s(n.index.feature_description_2)+"\n ")])]),n._v(" "),a("div",{staticClass:"feature"},[a("div",{staticClass:"icon"},[a("hard-drive-icon",{attrs:{size:"24"}})],1),n._v(" "),a("h3",{staticClass:"title"},[n._v("\n "+n._s(n.index.feature_title_3)+"\n ")]),n._v(" "),a("p",{staticClass:"description"},[n._v("\n "+n._s(n.index.feature_description_3)+"\n ")])])])]):n._e()],1)}),[function(){var n=this.$createElement,t=this._self._c||n;return t("div",{staticClass:"hero"},[t("img",{attrs:{src:"/assets/images/hero-Illustration.svg",alt:"Hero"}})])}],!1,null,"36bfcd3c",null).exports),C=a("v9i2"),j=a("kvrn"),k=a.n(j),z={name:"HardDriveIcon",props:{size:{type:String,default:"24",validator:function(n){return!isNaN(n)||n.length>=2&&!isNaN(n.slice(0,n.length-1))&&"x"===n.slice(-1)}}},functional:!0,render:function(n,t){var a="x"===t.props.size.slice(-1)?t.props.size.slice(0,t.props.size.length-1)+"em":parseInt(t.props.size)+"px",e=t.data.attrs||{};return e.width=e.width||a,e.height=e.height||a,t.data.attrs=e,n("svg",k()([{attrs:{xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round"},class:"feather feather-hard-drive"},t.data]),[n("line",{attrs:{x1:"22",y1:"12",x2:"2",y2:"12"}}),n("path",{attrs:{d:"M5.45 5.11L2 12v6a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2v-6l-3.45-6.89A2 2 0 0 0 16.76 4H7.24a2 2 0 0 0-1.79 1.11z"}}),n("line",{attrs:{x1:"6",y1:"16",x2:"6.01",y2:"16"}}),n("line",{attrs:{x1:"10",y1:"16",x2:"10.01",y2:"16"}})])}};function P(n,t){var a=Object.keys(n);if(Object.getOwnPropertySymbols){var e=Object.getOwnPropertySymbols(n);t&&(e=e.filter((function(t){return Object.getOwnPropertyDescriptor(n,t).enumerable}))),a.push.apply(a,e)}return a}function E(n,t,a){return t in n?Object.defineProperty(n,t,{value:a,enumerable:!0,configurable:!0,writable:!0}):n[t]=a,n}var I={name:"IndexPageHeader",components:{PageTitle:x.a,CreditCardIcon:i.n,HardDriveIcon:z,AuthButton:h.a},computed:function(n){for(var t=1;t<arguments.length;t++){var a=null!=arguments[t]?arguments[t]:{};t%2?P(Object(a),!0).forEach((function(t){E(n,t,a[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(a)):P(Object(a)).forEach((function(t){Object.defineProperty(n,t,Object.getOwnPropertyDescriptor(a,t))}))}return n}({},Object(e.b)(["index","config"]))},D=(a("9j+S"),Object(c.a)(I,(function(){var n=this,t=n.$createElement,a=n._self._c||t;return a("header",{staticClass:"main-header page-wrapper medium"},[a("PageTitle",{attrs:{title:n.index.header_title,description:n.index.header_description}}),n._v(" "),n.config.isAuthenticated?n._e():a("div",[n.config.userRegistration?a("router-link",{staticClass:"sign-up-button",attrs:{to:{name:"SignUp"}}},[a("AuthButton",{staticClass:"button",attrs:{icon:"chevron-right",text:n.$t("page_index.sign_up_button")}})],1):n._e(),n._v(" "),n.config.userRegistration?n._e():a("router-link",{staticClass:"sign-up-button",attrs:{to:{name:"SignIn"}}},[a("AuthButton",{staticClass:"button",attrs:{icon:"chevron-right",text:n.$t("page_index.menu.log_in")}})],1),n._v(" "),n.config.isSaaS?a("div",{staticClass:"features"},[a("div",{staticClass:"feature"},[a("credit-card-icon",{staticClass:"feature-icon",attrs:{size:"19"}}),n._v(" "),a("b",{staticClass:"feature-title"},[n._v(n._s(n.$t("page_index.sign_feature_1")))])],1),n._v(" "),a("div",{staticClass:"feature"},[a("hard-drive-icon",{staticClass:"feature-icon",attrs:{size:"19"}}),n._v(" "),a("b",{staticClass:"feature-title"},[n._v(n._s(n.$t("page_index.sign_feature_2",{defaultSpace:n.config.storageDefaultSpaceFormatted})))])],1)]):n._e()],1)],1)}),[],!1,null,"0534f3dd",null).exports);function S(n,t){var a=Object.keys(n);if(Object.getOwnPropertySymbols){var e=Object.getOwnPropertySymbols(n);t&&(e=e.filter((function(t){return Object.getOwnPropertyDescriptor(n,t).enumerable}))),a.push.apply(a,e)}return a}function F(n,t,a){return t in n?Object.defineProperty(n,t,{value:a,enumerable:!0,configurable:!0,writable:!0}):n[t]=a,n}var B={name:"IndexGetStarted",components:{InfoIcon:i.D,UploadCloudIcon:i.cb,ShareIcon:i.W,ChevronRightIcon:i.h,FolderPlusIcon:i.y,HardDriveIcon:i.A,SettingsIcon:i.V,Trash2Icon:i.Z,SearchIcon:i.T,CloudIcon:i.j,PageTitle:x.a,ImageIcon:i.C,GridIcon:i.z,LinkIcon:i.F,StarIcon:i.Y,EyeIcon:i.t},computed:function(n){for(var t=1;t<arguments.length;t++){var a=null!=arguments[t]?arguments[t]:{};t%2?S(Object(a),!0).forEach((function(t){F(n,t,a[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(a)):S(Object(a)).forEach((function(t){Object.defineProperty(n,t,Object.getOwnPropertyDescriptor(a,t))}))}return n}({},Object(e.b)(["index"]))},T=(a("g6yA"),Object(c.a)(B,(function(){var n=this,t=n.$createElement,a=n._self._c||t;return"1"===n.index.section_get_started?a("div",{staticClass:"page-wrapper large get-started"},[a("PageTitle",{staticClass:"page-title",attrs:{type:"center",title:n.index.get_started_title,description:n.index.get_started_description}}),n._v(" "),a("router-link",{staticClass:"get-started-button bg-theme-800 hover-bg-theme shadow-theme",attrs:{tag:"button",to:{name:"SignUp"}}},[a("span",{staticClass:"content"},[n._v(n._s(n.$t("page_index.get_started_button")))]),n._v(" "),a("chevron-right-icon",{attrs:{size:"22"}})],1),n._v(" "),a("cloud-icon",{staticClass:"cloud-bg svg-color-theme",attrs:{size:"790"}}),n._v(" "),a("div",{staticClass:"icons"},[a("hard-drive-icon",{staticClass:"icon",attrs:{size:"42"}}),n._v(" "),a("settings-icon",{staticClass:"icon",attrs:{size:"22"}}),n._v(" "),a("image-icon",{staticClass:"icon",attrs:{size:"50"}}),n._v(" "),a("link-icon",{staticClass:"icon",attrs:{size:"24"}}),n._v(" "),a("trash2-icon",{staticClass:"icon",attrs:{size:"40"}}),n._v(" "),a("search-icon",{staticClass:"icon",attrs:{size:"18"}}),n._v(" "),a("eye-icon",{staticClass:"icon",attrs:{size:"36"}}),n._v(" "),a("star-icon",{staticClass:"icon",attrs:{size:"34"}}),n._v(" "),a("folder-plus-icon",{staticClass:"icon",attrs:{size:"20"}}),n._v(" "),a("grid-icon",{staticClass:"icon",attrs:{size:"28"}}),n._v(" "),a("share-icon",{staticClass:"icon",attrs:{size:"32"}}),n._v(" "),a("folder-plus-icon",{staticClass:"icon",attrs:{size:"48"}}),n._v(" "),a("search-icon",{staticClass:"icon",attrs:{size:"34"}}),n._v(" "),a("star-icon",{staticClass:"icon",attrs:{size:"22"}}),n._v(" "),a("upload-cloud-icon",{staticClass:"icon",attrs:{size:"42"}}),n._v(" "),a("grid-icon",{staticClass:"icon",attrs:{size:"18"}}),n._v(" "),a("settings-icon",{staticClass:"icon",attrs:{size:"32"}}),n._v(" "),a("link-icon",{staticClass:"icon",attrs:{size:"36"}}),n._v(" "),a("hard-drive-icon",{staticClass:"icon",attrs:{size:"22"}}),n._v(" "),a("info-icon",{staticClass:"icon",attrs:{size:"36"}})],1)],1):n._e()}),[],!1,null,"675c0802",null).exports),$=a("izjo"),H=a("zTYo");function A(n,t){var a=Object.keys(n);if(Object.getOwnPropertySymbols){var e=Object.getOwnPropertySymbols(n);t&&(e=e.filter((function(t){return Object.getOwnPropertyDescriptor(n,t).enumerable}))),a.push.apply(a,e)}return a}function L(n,t,a){return t in n?Object.defineProperty(n,t,{value:a,enumerable:!0,configurable:!0,writable:!0}):n[t]=a,n}var U={name:"Homepage",components:{HeroScreenshot:d,PricingTables:b,MainFeatures:O,GetStarted:T,Navigation:C.a,PageHeader:D,PageFooter:$.a,Spinner:H.a},computed:function(n){for(var t=1;t<arguments.length;t++){var a=null!=arguments[t]?arguments[t]:{};t%2?A(Object(a),!0).forEach((function(t){L(n,t,a[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(a)):A(Object(a)).forEach((function(t){Object.defineProperty(n,t,Object.getOwnPropertyDescriptor(a,t))}))}return n}({},Object(e.b)(["config"])),data:function(){return{isLoading:!0}},mounted:function(){var n=this;this.config.allowHomepage||this.$router.push({name:"SignIn"}),l.a.get("/api/content",{params:{column:"allow_homepage|footer_content|get_started_description|get_started_title|pricing_description|pricing_title|feature_description_3|feature_title_3|feature_description_2|feature_title_2|feature_description_1|feature_title_1|features_description|features_title|header_description|header_title|section_get_started|section_pricing_content|section_feature_boxes|section_features"}}).then((function(t){n.$store.commit("SET_INDEX_CONTENT",t.data)})).finally((function(){n.isLoading=!1}))},created:function(){this.$scrollTop()}},N=(a("cByo"),Object(c.a)(U,(function(){var n=this,t=n.$createElement,a=n._self._c||t;return a("div",{staticClass:"landing-page"},[n.isLoading?n._e():a("div",[a("Navigation",{staticClass:"page-wrapper medium"}),n._v(" "),a("PageHeader"),n._v(" "),a("HeroScreenshot"),n._v(" "),a("MainFeatures"),n._v(" "),n.config.isSaaS?a("PricingTables"):n._e(),n._v(" "),a("GetStarted"),n._v(" "),a("PageFooter")],1),n._v(" "),n.isLoading?a("div",[a("Spinner")],1):n._e()])}),[],!1,null,"60fe571b",null));t.default=N.exports},tClz:function(n,t,a){(n.exports=a("I1BE")(!1)).push([n.i,".landing-page[data-v-0534f3dd] {\n overflow-x: hidden;\n}\n.page-wrapper[data-v-0534f3dd] {\n position: relative;\n margin: 0 auto;\n padding-left: 25px;\n padding-right: 25px;\n}\n.page-wrapper.large[data-v-0534f3dd] {\n width: 1490px;\n}\n.page-wrapper.medium[data-v-0534f3dd] {\n width: 1150px;\n}\n.page-wrapper.small[data-v-0534f3dd] {\n width: 890px;\n}\n@media only screen and (max-width: 1390px) {\n.page-wrapper.large[data-v-0534f3dd] {\n width: 100%;\n}\n}\n@media only screen and (max-width: 1190px) {\n.page-wrapper.large[data-v-0534f3dd] {\n width: 100%;\n}\n.page-wrapper.medium[data-v-0534f3dd] {\n width: 100%;\n}\n}\n@media only screen and (max-width: 960px) {\n.page-wrapper[data-v-0534f3dd] {\n padding-left: 25px;\n padding-right: 25px;\n}\n.page-wrapper.small[data-v-0534f3dd] {\n width: 100%;\n}\n}\n.features[data-v-0534f3dd] {\n display: flex;\n margin-top: 35px;\n}\n.features .feature[data-v-0534f3dd] {\n display: flex;\n margin-right: 35px;\n}\n.features .feature:nth-child(1) path[data-v-0534f3dd], .features .feature:nth-child(1) line[data-v-0534f3dd], .features .feature:nth-child(1) polyline[data-v-0534f3dd], .features .feature:nth-child(1) rect[data-v-0534f3dd], .features .feature:nth-child(1) circle[data-v-0534f3dd] {\n stroke: #FFBD2D;\n}\n.features .feature:nth-child(2) path[data-v-0534f3dd], .features .feature:nth-child(2) line[data-v-0534f3dd], .features .feature:nth-child(2) polyline[data-v-0534f3dd], .features .feature:nth-child(2) rect[data-v-0534f3dd], .features .feature:nth-child(2) circle[data-v-0534f3dd] {\n stroke: #9D66FE;\n}\n.features .feature[data-v-0534f3dd]:last-child {\n margin-right: 0;\n}\n.features .feature .feature-title[data-v-0534f3dd] {\n font-size: 0.875em;\n font-weight: 700;\n}\n.features .feature .feature-icon[data-v-0534f3dd] {\n margin-right: 10px;\n}\n.main-header[data-v-0534f3dd] {\n padding-top: 70px;\n}\n.sign-up-button[data-v-0534f3dd] {\n margin-top: 65px;\n display: block;\n}\n.sign-up-button .button[data-v-0534f3dd] {\n margin-left: 0;\n margin-right: 0;\n}\n@media only screen and (max-width: 690px) {\n.main-header[data-v-0534f3dd] {\n padding-top: 50px;\n}\n.features[data-v-0534f3dd] {\n display: block;\n}\n.features .feature[data-v-0534f3dd] {\n margin-right: 0;\n margin-bottom: 15px;\n}\n.features .feature[data-v-0534f3dd]:last-child {\n margin-bottom: 0;\n}\n.sign-up-button[data-v-0534f3dd] {\n margin-top: 30px;\n}\n}\n",""])},ts7n:function(n,t,a){"use strict";var e=a("1nld");a.n(e).a},uINO:function(n,t,a){var e=a("j0t8");"string"==typeof e&&(e=[[n.i,e,""]]);var i={hmr:!0,transform:void 0,insertInto:void 0};a("aET+")(e,i);e.locals&&(n.exports=e.locals)},ufz3:function(n,t,a){(n.exports=a("I1BE")(!1)).push([n.i,".landing-page[data-v-f6f45e84] {\n overflow-x: hidden;\n}\n.page-wrapper[data-v-f6f45e84] {\n position: relative;\n margin: 0 auto;\n padding-left: 25px;\n padding-right: 25px;\n}\n.page-wrapper.large[data-v-f6f45e84] {\n width: 1490px;\n}\n.page-wrapper.medium[data-v-f6f45e84] {\n width: 1150px;\n}\n.page-wrapper.small[data-v-f6f45e84] {\n width: 890px;\n}\n@media only screen and (max-width: 1390px) {\n.page-wrapper.large[data-v-f6f45e84] {\n width: 100%;\n}\n}\n@media only screen and (max-width: 1190px) {\n.page-wrapper.large[data-v-f6f45e84] {\n width: 100%;\n}\n.page-wrapper.medium[data-v-f6f45e84] {\n width: 100%;\n}\n}\n@media only screen and (max-width: 960px) {\n.page-wrapper[data-v-f6f45e84] {\n padding-left: 25px;\n padding-right: 25px;\n}\n.page-wrapper.small[data-v-f6f45e84] {\n width: 100%;\n}\n}\n.pricing .cloud-bg[data-v-f6f45e84] {\n z-index: 0;\n}\n.pricing .cloud-bg path[data-v-f6f45e84] {\n stroke: none;\n fill: rgba(0, 188, 126, 0.05);\n}\n.pricing .cloud-bg[data-v-f6f45e84]:first-of-type {\n position: absolute;\n top: 30px;\n right: -130px;\n transform: scale(-1, 1) rotate(-17deg);\n}\n.pricing .cloud-bg[data-v-f6f45e84]:last-of-type {\n position: absolute;\n bottom: 160px;\n left: -230px;\n transform: rotate(13deg);\n}\n.page-title[data-v-f6f45e84] {\n position: relative;\n z-index: 1;\n}\n.page-title.center[data-v-f6f45e84] {\n text-align: center;\n}\n.page-title.center .title[data-v-f6f45e84] {\n margin-left: auto;\n margin-right: auto;\n}\n.page-title.center .description[data-v-f6f45e84] {\n margin-left: auto;\n margin-right: auto;\n}\n.page-title .title[data-v-f6f45e84] {\n max-width: 580px;\n font-size: 48px;\n font-weight: 800;\n line-height: 1.25;\n margin-bottom: 15px;\n}\n.page-title .title[data-v-f6f45e84] span {\n font-size: 48px;\n}\n.page-title .description[data-v-f6f45e84] {\n max-width: 580px;\n font-size: 1.25em;\n font-weight: 500;\n line-height: 1.6;\n margin-bottom: 30px;\n}\n.pricing[data-v-f6f45e84] {\n padding-top: 250px;\n padding-bottom: 120px;\n}\n.pricing-tables[data-v-f6f45e84] {\n margin-top: 50px;\n margin-bottom: 60px;\n position: relative;\n z-index: 1;\n}\n.sign-up-button[data-v-f6f45e84] {\n padding-top: 10px;\n display: block;\n}\n@media only screen and (max-width: 1190px) {\n.cloud-bg[data-v-f6f45e84] {\n display: none;\n}\n.pricing[data-v-f6f45e84] {\n padding-top: 150px;\n padding-bottom: 60px;\n}\n}\n@media only screen and (max-width: 960px) {\n.page-title .title[data-v-f6f45e84] {\n font-size: 28px;\n line-height: 1.25;\n margin-bottom: 15px;\n}\n.page-title .title[data-v-f6f45e84] span {\n font-size: 28px;\n}\n.page-title .description[data-v-f6f45e84] {\n font-size: 1em;\n line-height: 1.6;\n margin-bottom: 30px;\n}\n.pricing[data-v-f6f45e84] {\n padding-top: 50px;\n padding-bottom: 120px;\n}\n}\n",""])},v9i2:function(n,t,a){"use strict";var e=a("L2JU");function i(n,t){var a=Object.keys(n);if(Object.getOwnPropertySymbols){var e=Object.getOwnPropertySymbols(n);t&&(e=e.filter((function(t){return Object.getOwnPropertyDescriptor(n,t).enumerable}))),a.push.apply(a,e)}return a}function r(n,t,a){return t in n?Object.defineProperty(n,t,{value:a,enumerable:!0,configurable:!0,writable:!0}):n[t]=a,n}var o={name:"IndexNavigation",computed:function(n){for(var t=1;t<arguments.length;t++){var a=null!=arguments[t]?arguments[t]:{};t%2?i(Object(a),!0).forEach((function(t){r(n,t,a[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(a)):i(Object(a)).forEach((function(t){Object.defineProperty(n,t,Object.getOwnPropertyDescriptor(a,t))}))}return n}({},Object(e.b)(["config","index"]))},s=(a("Bn5E"),a("KHd+")),c=Object(s.a)(o,(function(){var n=this,t=n.$createElement,a=n._self._c||t;return a("nav",{staticClass:"main-navigation"},[a("router-link",{staticClass:"logo",attrs:{to:{name:"Homepage"},tag:"div"}},[n.config.app_logo_horizontal?a("img",{attrs:{src:n.$getImage(n.config.app_logo_horizontal),alt:n.config.app_name}}):n._e(),n._v(" "),n.config.app_logo_horizontal?n._e():a("b",{staticClass:"logo-text"},[n._v(n._s(n.config.app_name))])]),n._v(" "),a("div",{staticClass:"navigation"},[a("ul",{staticClass:"navigation-links"},[a("li",[a("router-link",{staticClass:"hover-text-theme",attrs:{to:{name:"ContactUs"}}},[n._v("\n "+n._s(n.$t("page_index.menu.contact_us"))+"\n ")])],1)]),n._v(" "),n.config.isAuthenticated?n._e():a("ul",{staticClass:"navigation-links"},[a("li",[a("router-link",{staticClass:"hover-text-theme",attrs:{to:{name:"SignIn"}}},[n._v("\n "+n._s(n.$t("page_index.menu.log_in"))+"\n ")])],1),n._v(" "),n.config.userRegistration?a("li",[a("router-link",{staticClass:"cta-button text-theme bg-theme-100",attrs:{to:{name:"SignUp"}}},[n._v("\n "+n._s(n.$t("page_index.menu.sign_in"))+"\n ")])],1):n._e()]),n._v(" "),n.config.isAuthenticated?a("ul",{staticClass:"navigation-links"},[n.config.userRegistration?a("li",[a("router-link",{staticClass:"cta-button text-theme bg-theme-100",attrs:{to:{name:"Files"}}},[n._v("\n Go to Files ")])],1):n._e()]):n._e()]),n._v(" "),a("router-link",{staticClass:"cta-button log-in text-theme bg-theme-100",attrs:{to:{name:"SignIn"}}},[n._v("\n "+n._s(n.$t("page_index.menu.log_in"))+"\n ")])],1)}),[],!1,null,"6746e233",null);t.a=c.exports},wIs7:function(n,t,a){var e=a("R1dO");"string"==typeof e&&(e=[[n.i,e,""]]);var i={hmr:!0,transform:void 0,insertInto:void 0};a("aET+")(e,i);e.locals&&(n.exports=e.locals)},zTYo:function(n,t,a){"use strict";var e={name:"Spinner"},i=(a("ts7n"),a("KHd+")),r=Object(i.a)(e,(function(){var n=this.$createElement;this._self._c;return this._m(0)}),[function(){var n=this.$createElement,t=this._self._c||n;return t("div",{staticClass:"spinner",attrs:{id:"loading-bar-spinner"}},[t("div",{staticClass:"spinner-icon border-top-theme border-left-theme"})])}],!1,null,"1df66002",null);t.a=r.exports}}]);
|
|
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvanMvY29tcG9uZW50cy9GaWxlc1ZpZXcvU3Bpbm5lci52dWU/ODhjYSIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvanMvY29tcG9uZW50cy9JbmRleC9JbmRleE1haW5GZWF0dXJlcy52dWU/MmE1ZCIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvanMvdmlld3MvRnJvbnRwYWdlL0hvbWVwYWdlLnZ1ZT8zMDExIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9qcy9jb21wb25lbnRzL0luZGV4L0luZGV4UGFnZUZvb3Rlci52dWU/MjE4YiIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvanMvY29tcG9uZW50cy9JbmRleC9JbmRleFBhZ2VIZWFkZXIudnVlPzU2MTYiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL2pzL2NvbXBvbmVudHMvSW5kZXgvSW5kZXhQYWdlRm9vdGVyLnZ1ZT9mMDNiIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9qcy9jb21wb25lbnRzL0F1dGgvQXV0aEJ1dHRvbi52dWU/M2Q4ZSIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvanMvY29tcG9uZW50cy9BdXRoL0F1dGhCdXR0b24udnVlPzA1NDEiLCJ3ZWJwYWNrOi8vL3Jlc291cmNlcy9qcy9jb21wb25lbnRzL0F1dGgvQXV0aEJ1dHRvbi52dWUiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL2pzL2NvbXBvbmVudHMvQXV0aC9BdXRoQnV0dG9uLnZ1ZSIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvanMvY29tcG9uZW50cy9JbmRleC9JbmRleE5hdmlnYXRpb24udnVlPzZjN2IiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL2pzL3ZpZXdzL0Zyb250cGFnZS9Ib21lcGFnZS52dWU/NDY3MSIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvanMvY29tcG9uZW50cy9BdXRoL0F1dGhCdXR0b24udnVlP2MyNTkiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL2pzL2NvbXBvbmVudHMvSW5kZXgvSW5kZXhOYXZpZ2F0aW9uLnZ1ZT9lZjRmIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9qcy9jb21wb25lbnRzL0luZGV4L0NvbXBvbmVudHMvUGFnZVRpdGxlLnZ1ZT8wMDJiIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9qcy9jb21wb25lbnRzL0luZGV4L0luZGV4UGFnZUZvb3Rlci52dWU/ZTk4ZCIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvanMvY29tcG9uZW50cy9JbmRleC9JbmRleEhlcm9TY3JlZW5zaG90LnZ1ZT8zMmFmIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9qcy9jb21wb25lbnRzL0luZGV4L0luZGV4R2V0U3RhcnRlZC52dWU/ZDYxMyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvanMvY29tcG9uZW50cy9BdXRoL0F1dGhCdXR0b24udnVlPzIwNDEiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL2pzL2NvbXBvbmVudHMvSW5kZXgvQ29tcG9uZW50cy9QYWdlVGl0bGUudnVlPzM0MjkiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL2pzL2NvbXBvbmVudHMvQXV0aC9BdXRoQnV0dG9uLnZ1ZT84NWNmIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9qcy9jb21wb25lbnRzL0luZGV4L0luZGV4TWFpbkZlYXR1cmVzLnZ1ZT8wZjUwIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9qcy9jb21wb25lbnRzL0luZGV4L0luZGV4TWFpbkZlYXR1cmVzLnZ1ZT8zZTEzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9qcy9jb21wb25lbnRzL0luZGV4L0luZGV4UGFnZUhlYWRlci52dWU/NjY4OSIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvanMvdmlld3MvRnJvbnRwYWdlL0hvbWVwYWdlLnZ1ZT9hMzZlIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9qcy9jb21wb25lbnRzL0luZGV4L0NvbXBvbmVudHMvUGFnZVRpdGxlLnZ1ZT9hZjI5Iiwid2VicGFjazovLy8uL3Jlc291cmNlcy9qcy9jb21wb25lbnRzL0luZGV4L0NvbXBvbmVudHMvUGFnZVRpdGxlLnZ1ZT9kN2MwIiwid2VicGFjazovLy9yZXNvdXJjZXMvanMvY29tcG9uZW50cy9JbmRleC9Db21wb25lbnRzL1BhZ2VUaXRsZS52dWUiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL2pzL2NvbXBvbmVudHMvSW5kZXgvQ29tcG9uZW50cy9QYWdlVGl0bGUudnVlIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9qcy9jb21wb25lbnRzL0luZGV4L0luZGV4R2V0U3RhcnRlZC52dWU/ZjI4MiIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvanMvY29tcG9uZW50cy9JbmRleC9Db21wb25lbnRzL1ByaWNpbmdUYWJsZXMudnVlPzU1OTciLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL2pzL2NvbXBvbmVudHMvSW5kZXgvQ29tcG9uZW50cy9QYWdlVGl0bGUudnVlP2NmNTEiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL2pzL2NvbXBvbmVudHMvSW5kZXgvSW5kZXhQYWdlRm9vdGVyLnZ1ZT84YzgyIiwid2VicGFjazovLy9yZXNvdXJjZXMvanMvY29tcG9uZW50cy9JbmRleC9JbmRleFBhZ2VGb290ZXIudnVlIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9qcy9jb21wb25lbnRzL0luZGV4L0luZGV4UGFnZUZvb3Rlci52dWU/OGNhZCIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvanMvY29tcG9uZW50cy9JbmRleC9JbmRleFBhZ2VGb290ZXIudnVlIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9qcy9jb21wb25lbnRzL0luZGV4L0NvbXBvbmVudHMvUHJpY2luZ1RhYmxlcy52dWU/YTRmNSIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvanMvY29tcG9uZW50cy9JbmRleC9JbmRleFByaWNpbmdUYWJsZXMudnVlPzhkNTAiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL2pzL2NvbXBvbmVudHMvRmlsZXNWaWV3L1NwaW5uZXIudnVlPzQwNTMiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL2pzL2NvbXBvbmVudHMvSW5kZXgvSW5kZXhQcmljaW5nVGFibGVzLnZ1ZT9jMzVlIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9qcy9jb21wb25lbnRzL0luZGV4L0luZGV4SGVyb1NjcmVlbnNob3QudnVlPzNjNmUiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL2pzL2NvbXBvbmVudHMvSW5kZXgvSW5kZXhIZXJvU2NyZWVuc2hvdC52dWU/ZjhlYSIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvanMvY29tcG9uZW50cy9JbmRleC9JbmRleE5hdmlnYXRpb24udnVlPzNkNDYiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL2pzL3ZpZXdzL0Zyb250cGFnZS9Ib21lcGFnZS52dWU/YzcyOSIsIndlYnBhY2s6Ly8vcmVzb3VyY2VzL2pzL2NvbXBvbmVudHMvSW5kZXgvSW5kZXhIZXJvU2NyZWVuc2hvdC52dWUiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL2pzL2NvbXBvbmVudHMvSW5kZXgvSW5kZXhIZXJvU2NyZWVuc2hvdC52dWU/NmMxMyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvanMvY29tcG9uZW50cy9JbmRleC9JbmRleEhlcm9TY3JlZW5zaG90LnZ1ZSIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvanMvY29tcG9uZW50cy9JbmRleC9JbmRleEhlcm9TY3JlZW5zaG90LnZ1ZT9lZDg3Iiwid2VicGFjazovLy8uL3Jlc291cmNlcy9qcy9jb21wb25lbnRzL0luZGV4L0NvbXBvbmVudHMvUHJpY2luZ1RhYmxlcy52dWU/N2ZjMSIsIndlYnBhY2s6Ly8vcmVzb3VyY2VzL2pzL2NvbXBvbmVudHMvSW5kZXgvQ29tcG9uZW50cy9QcmljaW5nVGFibGVzLnZ1ZSIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvanMvY29tcG9uZW50cy9JbmRleC9Db21wb25lbnRzL1ByaWNpbmdUYWJsZXMudnVlIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9qcy9jb21wb25lbnRzL0luZGV4L0NvbXBvbmVudHMvUHJpY2luZ1RhYmxlcy52dWU/ODkyYiIsIndlYnBhY2s6Ly8vcmVzb3VyY2VzL2pzL2NvbXBvbmVudHMvSW5kZXgvSW5kZXhQcmljaW5nVGFibGVzLnZ1ZSIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvanMvY29tcG9uZW50cy9JbmRleC9JbmRleFByaWNpbmdUYWJsZXMudnVlP2M4NDQiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL2pzL2NvbXBvbmVudHMvSW5kZXgvSW5kZXhQcmljaW5nVGFibGVzLnZ1ZSIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvanMvY29tcG9uZW50cy9JbmRleC9JbmRleFByaWNpbmdUYWJsZXMudnVlPzBkYTEiLCJ3ZWJwYWNrOi8vL3Jlc291cmNlcy9qcy9jb21wb25lbnRzL0luZGV4L0luZGV4TWFpbkZlYXR1cmVzLnZ1ZSIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvanMvY29tcG9uZW50cy9JbmRleC9JbmRleE1haW5GZWF0dXJlcy52dWU/NTM3OSIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvanMvY29tcG9uZW50cy9JbmRleC9JbmRleE1haW5GZWF0dXJlcy52dWUiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL2pzL2NvbXBvbmVudHMvSW5kZXgvSW5kZXhNYWluRmVhdHVyZXMudnVlP2E5MDciLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL3Z1ZS1mZWF0aGVyLWljb25zL2ljb25zL0hhcmREcml2ZUljb24uanMiLCJ3ZWJwYWNrOi8vL3Jlc291cmNlcy9qcy9jb21wb25lbnRzL0luZGV4L0luZGV4UGFnZUhlYWRlci52dWUiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL2pzL2NvbXBvbmVudHMvSW5kZXgvSW5kZXhQYWdlSGVhZGVyLnZ1ZT9mN2VjIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9qcy9jb21wb25lbnRzL0luZGV4L0luZGV4UGFnZUhlYWRlci52dWUiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL2pzL2NvbXBvbmVudHMvSW5kZXgvSW5kZXhQYWdlSGVhZGVyLnZ1ZT82MWI2Iiwid2VicGFjazovLy9yZXNvdXJjZXMvanMvY29tcG9uZW50cy9JbmRleC9JbmRleEdldFN0YXJ0ZWQudnVlIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9qcy9jb21wb25lbnRzL0luZGV4L0luZGV4R2V0U3RhcnRlZC52dWU/MTE3YSIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvanMvY29tcG9uZW50cy9JbmRleC9JbmRleEdldFN0YXJ0ZWQudnVlIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9qcy9jb21wb25lbnRzL0luZGV4L0luZGV4R2V0U3RhcnRlZC52dWU/ODgyYiIsIndlYnBhY2s6Ly8vcmVzb3VyY2VzL2pzL3ZpZXdzL0Zyb250cGFnZS9Ib21lcGFnZS52dWUiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL2pzL3ZpZXdzL0Zyb250cGFnZS9Ib21lcGFnZS52dWU/ZTFmZCIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvanMvdmlld3MvRnJvbnRwYWdlL0hvbWVwYWdlLnZ1ZSIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvanMvY29tcG9uZW50cy9JbmRleC9JbmRleFBhZ2VIZWFkZXIudnVlPzM3NTAiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL2pzL2NvbXBvbmVudHMvRmlsZXNWaWV3L1NwaW5uZXIudnVlPzA2NzIiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL2pzL2NvbXBvbmVudHMvSW5kZXgvQ29tcG9uZW50cy9QcmljaW5nVGFibGVzLnZ1ZT81ZjIyIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9qcy9jb21wb25lbnRzL0luZGV4L0luZGV4UHJpY2luZ1RhYmxlcy52dWU/YWE1NiIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvanMvY29tcG9uZW50cy9JbmRleC9JbmRleE5hdmlnYXRpb24udnVlPzI5MjIiLCJ3ZWJwYWNrOi8vL3Jlc291cmNlcy9qcy9jb21wb25lbnRzL0luZGV4L0luZGV4TmF2aWdhdGlvbi52dWUiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL2pzL2NvbXBvbmVudHMvSW5kZXgvSW5kZXhOYXZpZ2F0aW9uLnZ1ZT81NjQ5Iiwid2VicGFjazovLy8uL3Jlc291cmNlcy9qcy9jb21wb25lbnRzL0luZGV4L0luZGV4TmF2aWdhdGlvbi52dWUiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL2pzL2NvbXBvbmVudHMvSW5kZXgvSW5kZXhHZXRTdGFydGVkLnZ1ZT8zN2IxIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9qcy9jb21wb25lbnRzL0ZpbGVzVmlldy9TcGlubmVyLnZ1ZT80MDFlIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9qcy9jb21wb25lbnRzL0ZpbGVzVmlldy9TcGlubmVyLnZ1ZT8zM2M3Iiwid2VicGFjazovLy9yZXNvdXJjZXMvanMvY29tcG9uZW50cy9GaWxlc1ZpZXcvU3Bpbm5lci52dWUiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL2pzL2NvbXBvbmVudHMvRmlsZXNWaWV3L1NwaW5uZXIudnVlIl0sIm5hbWVzIjpbImNvbnRlbnQiLCJtb2R1bGUiLCJpIiwib3B0aW9ucyIsInRyYW5zZm9ybSIsInVuZGVmaW5lZCIsImxvY2FscyIsImV4cG9ydHMiLCJwdXNoIiwiY29tcG9uZW50IiwiX3ZtIiwidGhpcyIsIl9oIiwiJGNyZWF0ZUVsZW1lbnQiLCJfYyIsIl9zZWxmIiwic3RhdGljQ2xhc3MiLCJfdiIsIl9zIiwidGV4dCIsImF0dHJzIiwiX2UiLCJsb2FkaW5nIiwiaWNvbiIsImNsYXNzIiwidHlwZSIsImRvbVByb3BzIiwidGl0bGUiLCJkZXNjcmlwdGlvbiIsIm5hbWUiLCJjb25maWciLCIkZ2V0SW1hZ2UiLCJhcHBfbG9nb19ob3Jpem9udGFsIiwiYXBwX25hbWUiLCIkdCIsIl9sIiwibGVnYWwiLCJpbmRleCIsImtleSIsInBhcmFtcyIsInNsdWciLCJhcHBfZm9vdGVyIiwicGxhbiIsImRhdGEiLCJhdHRyaWJ1dGVzIiwiY2FwYWNpdHlfZm9ybWF0dGVkIiwicHJpY2UiLCJ0YXhfcmF0ZXMiLCJsZW5ndGgiLCJpc0VtcHR5Iiwic2VjdGlvbl9wcmljaW5nX2NvbnRlbnQiLCJzdHJpcGVfcHVibGljX2tleSIsInByaWNpbmdfdGl0bGUiLCJvbiIsInByaWNpbmdMb2FkZWQiLCJwcmljaW5nX2Rlc2NyaXB0aW9uIiwic2VjdGlvbl9mZWF0dXJlcyIsImZlYXR1cmVzX3RpdGxlIiwiZmVhdHVyZXNfZGVzY3JpcHRpb24iLCJzZWN0aW9uX2ZlYXR1cmVfYm94ZXMiLCJfbSIsImZlYXR1cmVfdGl0bGVfMSIsImZlYXR1cmVfZGVzY3JpcHRpb25fMSIsImZlYXR1cmVfdGl0bGVfMiIsImZlYXR1cmVfZGVzY3JpcHRpb25fMiIsImZlYXR1cmVfdGl0bGVfMyIsImZlYXR1cmVfZGVzY3JpcHRpb25fMyIsInByb3BzIiwic2l6ZSIsIlN0cmluZyIsImRlZmF1bHQiLCJ2YWxpZGF0b3IiLCJzIiwiaXNOYU4iLCJzbGljZSIsImZ1bmN0aW9uYWwiLCJyZW5kZXIiLCJoIiwiY3R4IiwicGFyc2VJbnQiLCJ3aWR0aCIsImhlaWdodCIsInhtbG5zIiwidmlld0JveCIsImZpbGwiLCJzdHJva2UiLCJ4MSIsInkxIiwieDIiLCJ5MiIsImQiLCJoZWFkZXJfdGl0bGUiLCJoZWFkZXJfZGVzY3JpcHRpb24iLCJpc0F1dGhlbnRpY2F0ZWQiLCJ1c2VyUmVnaXN0cmF0aW9uIiwiZGVmYXVsdFNwYWNlIiwic3RvcmFnZURlZmF1bHRTcGFjZUZvcm1hdHRlZCIsInNlY3Rpb25fZ2V0X3N0YXJ0ZWQiLCJnZXRfc3RhcnRlZF90aXRsZSIsImdldF9zdGFydGVkX2Rlc2NyaXB0aW9uIiwiaXNMb2FkaW5nIl0sIm1hcHBpbmdzIjoiaUZBQ0EsSUFBSUEsRUFBVSxFQUFRLFFBRUEsaUJBQVpBLElBQXNCQSxFQUFVLENBQUMsQ0FBQ0MsRUFBT0MsRUFBSUYsRUFBUyxNQU9oRSxJQUFJRyxFQUFVLENBQUMsS0FBTSxFQUVyQixlQVBJQyxFQVFKLGdCQUFxQkMsR0FFUixFQUFRLE9BQVIsQ0FBbUVMLEVB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WUFBWSxPQUFPSSxNQUFNLENBQUMsS0FBTyxRQUFRVixFQUFJTyxHQUFHLEtBQUtILEVBQUcsZ0JBQWdCLENBQUNFLFlBQVksT0FBT0ksTUFBTSxDQUFDLEtBQU8sUUFBUVYsRUFBSU8sR0FBRyxLQUFLSCxFQUFHLGFBQWEsQ0FBQ0UsWUFBWSxPQUFPSSxNQUFNLENBQUMsS0FBTyxRQUFRVixFQUFJTyxHQUFHLEtBQUtILEVBQUcsWUFBWSxDQUFDRSxZQUFZLE9BQU9JLE1BQU0sQ0FBQyxLQUFPLFFBQVFWLEVBQUlPLEdBQUcsS0FBS0gsRUFBRyxjQUFjLENBQUNFLFlBQVksT0FBT0ksTUFBTSxDQUFDLEtBQU8sUUFBUVYsRUFBSU8sR0FBRyxLQUFLSCxFQUFHLGNBQWMsQ0FBQ0UsWUFBWSxPQUFPSSxNQUFNLENBQUMsS0FBTyxRQUFRVixFQUFJTyxHQUFHLEtBQUtILEVBQUcsV0FBVyxDQUFDRSxZQUFZLE9BQU9JLE1BQU0sQ0FBQyxLQUFPLFFBQVFWLEVBQUlPLEdBQUcsS0FBS0gsRUFBRyxZQUFZLENBQUNFLFlBQVksT0FBT0ksTUFBTSxDQUFDLEtBQU8sUUFBUVYsRUFBSU8sR0FBRyxLQUFLSCxFQUFHLG1CQUFtQixDQUFDRSxZQUFZLE9BQU9JLE1BQU0sQ0FBQyxLQUFPLFFBQVFWLEVBQUlPLEdBQUcsS0FBS0gsRUFBRyxZQUFZLENBQUNFLFlBQVksT0FBT0ksTUFBTSxDQUFDLEtBQU8sUUFBUVYsRUFBSU8sR0FBRyxLQUFLSCxFQUFHLGFBQWEsQ0FBQ0UsWUFBWSxPQUFPSSxNQUFNLENBQUMsS0FBTyxRQUFRVixFQUFJTyxHQUFHLEtBQUtILEVBQUcsbUJBQW1CLENBQUNFLFlBQVksT0FBT0ksTUFBTSxDQUFDLEtBQU8sUUFBUVYsRUFBSU8sR0FBRyxLQUFLSCxFQUFHLGNBQWMsQ0FBQ0UsWUFBWSxPQUFPSSxNQUFNLENBQUMsS0FBTyxRQUFRVixFQUFJTyxHQUFHLEtBQUtILEVBQUcsWUFBWSxDQUFDRSxZQUFZLE9BQU9JLE1BQU0sQ0FBQyxLQUFPLFFBQVFWLEVBQUlPLEdBQUcsS0FBS0gs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T0FBT0UsRUFBRyxNQUFNLENBQUNFLFlBQVksVUFBVUksTUFBTSxDQUFDLEdBQUssd0JBQXdCLENBQUNOLEVBQUcsTUFBTSxDQUFDRSxZQUFZLHlER1duTSxFQUNBLEtBQ0EsV0FDQSxNQUlhLElBQUFQLEUiLCJmaWxlIjoiY2h1bmtzL2hvbWVwYWdlLmpzP2lkPTM2MzAyYTYxNTIxZWEzODVkOWUzIiwic291cmNlc0NvbnRlbnQiOlsiXG52YXIgY29udGVudCA9IHJlcXVpcmUoXCIhIS4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9jc3MtbG9hZGVyL2luZGV4LmpzIS4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9sb2FkZXJzL3N0eWxlUG9zdExvYWRlci5qcyEuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvcG9zdGNzcy1sb2FkZXIvc3JjL2luZGV4LmpzPz9yZWYtLTctMiEuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvc2Fzcy1sb2FkZXIvZGlzdC9janMuanM/P3JlZi0tNy0zIS4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9pbmRleC5qcz8/dnVlLWxvYWRlci1vcHRpb25zIS4vU3Bpbm5lci52dWU/dnVlJnR5cGU9c3R5bGUmaW5kZXg9MCZpZD0xZGY2NjAwMiZzY29wZWQ9dHJ1ZSZsYW5nPXNjc3MmXCIpO1xuXG5pZih0eXBlb2YgY29udGVudCA9PT0gJ3N0cmluZycpIGNvbnRlbnQgPSBbW21vZHVsZS5pZCwgY29udGVudCwgJyddXTtcblxudmFyIHRyYW5zZm9ybTtcbnZhciBpbnNlcnRJbnRvO1xuXG5cblxudmFyIG9wdGlvbnMgPSB7XCJobXJcIjp0cnVlfVxuXG5vcHRpb25zLnRyYW5zZm9ybSA9IHRyYW5zZm9ybVxub3B0aW9ucy5pbnNlcnRJbnRvID0gdW5kZWZpbmVkO1xuXG52YXIgdXBkYXRlID0gcmVxdWlyZShcIiEuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvc3R5bGUtbG9hZGVyL2xpYi9hZGRTdHlsZXMuanNcIikoY29udGVudCwgb3B0aW9ucyk7XG5cbmlmKGNvbnRlbnQubG9jYWxzKSBtb2R1bGUuZXhwb3J0cyA9IGNvbnRlbnQubG9jYWxzO1xuXG5pZihtb2R1bGUuaG90KSB7XG5cdG1vZHVsZS5ob3QuYWNjZXB0KFwiISEuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9pbmRleC5qcyEuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvbG9hZGVycy9zdHlsZVBvc3RMb2FkZXIuanMhLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL3Bvc3Rjc3MtbG9hZGVyL3NyYy9pbmRleC5qcz8/cmVmLS03LTIhLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL3Nhc3MtbG9hZGVyL2Rpc3QvY2pzLmpzPz9yZWYtLTctMyEuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvaW5kZXguanM/P3Z1ZS1sb2FkZXItb3B0aW9ucyEuL1NwaW5uZXIudnVlP3Z1ZSZ0eXBlPXN0eWxlJmluZGV4PTAmaWQ9MWRmNjYwMDImc2NvcGVkPXRydWUmbGFuZz1zY3NzJlwiLCBmdW5jdGlvbigpIHtcblx0XHR2YXIgbmV3Q29udGVudCA9IHJlcXVpcmUoXCIhIS4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9jc3MtbG9hZGVyL2luZGV4LmpzIS4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9sb2FkZXJzL3N0eWxlUG9zdExvYWRlci5qcyEuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvcG9zdGNzcy1sb2FkZXIvc3JjL2luZGV4LmpzPz9yZWYtLTctMiEuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvc2Fzcy1sb2FkZXIvZGlzdC9janMuanM/P3JlZi0tNy0zIS4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9pbmRleC5qcz8/dnVlLWxvYWRlci1vcHRpb25zIS4vU3Bpbm5lci52dWU/dnVlJnR5cGU9c3R5bGUmaW5kZXg9MCZpZD0xZGY2NjAwMiZzY29wZWQ9dHJ1ZSZsYW5nPXNjc3MmXCIpO1xuXG5cdFx0aWYodHlwZW9mIG5ld0NvbnRlbnQgPT09ICdzdHJpbmcnKSBuZXdDb250ZW50ID0gW1ttb2R1bGUuaWQsIG5ld0NvbnRlbnQsICcnXV07XG5cblx0XHR2YXIgbG9jYWxzID0gKGZ1bmN0aW9uKGEsIGIpIHtcblx0XHRcdHZhciBrZXksIGlkeCA9IDA7XG5cblx0XHRcdGZvcihrZXkgaW4gYSkge1xuXHRcdFx0XHRpZighYiB8fCBhW2tleV0gIT09IGJba2V5XSkgcmV0dXJuIGZhbHNlO1xuXHRcdFx0XHRpZHgrKztcblx0XHRcdH1cblxuXHRcdFx0Zm9yKGtleSBpbiBiKSBpZHgtLTtcblxuXHRcdFx0cmV0dXJuIGlkeCA9PT0gMDtcblx0XHR9KGNvbnRlbnQubG9jYWxzLCBuZXdDb250ZW50LmxvY2FscykpO1xuXG5cdFx0aWYoIWxvY2FscykgdGhyb3cgbmV3IEVycm9yKCdBYm9ydGluZyBDU1MgSE1SIGR1ZSB0byBjaGFuZ2VkIGNzcy1tb2R1bGVzIGxvY2Fscy4nKTtcblxuXHRcdHVwZGF0ZShuZXdDb250ZW50KTtcblx0fSk7XG5cblx0bW9kdWxlLmhvdC5kaXNwb3NlKGZ1bmN0aW9uKCkgeyB1cGRhdGUoKTsgfSk7XG59IiwiaW1wb3J0IG1vZCBmcm9tIFwiLSEuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvc3R5bGUtbG9hZGVyL2luZGV4LmpzIS4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9jc3MtbG9hZGVyL2luZGV4LmpzIS4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9sb2FkZXJzL3N0eWxlUG9zdExvYWRlci5qcyEuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvcG9zdGNzcy1sb2FkZXIvc3JjL2luZGV4LmpzPz9yZWYtLTctMiEuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvc2Fzcy1sb2FkZXIvZGlzdC9janMuanM/P3JlZi0tNy0zIS4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9pbmRleC5qcz8/dnVlLWxvYWRlci1vcHRpb25zIS4vSW5kZXhNYWluRmVhdHVyZXMudnVlP3Z1ZSZ0eXBlPXN0eWxlJmluZGV4PTAmaWQ9MzZiZmNkM2MmbGFuZz1zY3NzJnNjb3BlZD10cnVlJlwiOyBleHBvcnQgZGVmYXVsdCBtb2Q7IGV4cG9ydCAqIGZyb20gXCItIS4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9zdHlsZS1sb2FkZXIvaW5kZXguanMhLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Nzcy1sb2FkZXIvaW5kZXguanMhLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL2xvYWRlcnMvc3R5bGVQb3N0TG9hZGVyLmpzIS4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9wb3N0Y3NzLWxvYWRlci9zcmMvaW5kZXguanM/P3JlZi0tNy0yIS4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9zYXNzLWxvYWRlci9kaXN0L2Nqcy5qcz8/cmVmLS03LTMhLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL2luZGV4LmpzPz92dWUtbG9hZGVyLW9wdGlvbnMhLi9JbmRleE1haW5GZWF0dXJlcy52dWU/dnVlJnR5cGU9c3R5bGUmaW5kZXg9MCZpZD0zNmJmY2QzYyZsYW5nPXNjc3Mmc2NvcGVkPXRydWUmXCIiLCJleHBvcnRzID0gbW9kdWxlLmV4cG9ydHMgPSByZXF1aXJlKFwiLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Nzcy1sb2FkZXIvbGliL2Nzcy1iYXNlLmpzXCIpKGZhbHNlKTtcbi8vIGltcG9ydHNcblxuXG4vLyBtb2R1bGVcbmV4cG9ydHMucHVzaChbbW9kdWxlLmlkLCBcIi5sYW5kaW5nLXBhZ2VbZGF0YS12LTYwZmU1NzFiXSB7XFxuICBvdmVyZmxvdy14OiBoaWRkZW47XFxufVxcbi5wYWdlLXdyYXBwZXJbZGF0YS12LTYwZmU1NzFiXSB7XFxuICBwb3NpdGlvbjogcmVsYXRpdmU7XFxuICBtYXJnaW46IDAgYXV0bztcXG4gIHBhZGRpbmctbGVmdDogMjVweDtcXG4gIHBhZGRpbmctcmlnaHQ6IDI1cHg7XFxufVxcbi5wYWdlLXdyYXBwZXIubGFyZ2VbZGF0YS12LTYwZmU1NzFiXSB7XFxuICB3aWR0aDogMTQ5MHB4O1xcbn1cXG4ucGFnZS13cmFwcGVyLm1lZGl1bVtkYXRhLXYtNjBmZTU3MWJdIHtcXG4gIHdpZHRoOiAxMTUwcHg7XFxufVxcbi5wYWdlLXdyYXBwZXIuc21hbGxbZGF0YS12LTYwZmU1NzFiXSB7XFxuICB3aWR0aDogODkwcHg7XFxufVxcbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTM5MHB4KSB7XFxuLnBhZ2Utd3JhcHBlci5sYXJnZVtkYXRhLXYtNjBmZTU3MWJdIHtcXG4gICAgd2lkdGg6IDEwMCU7XFxufVxcbn1cXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDExOTBweCkge1xcbi5wYWdlLXdyYXBwZXIubGFyZ2VbZGF0YS12LTYwZmU1NzFiXSB7XFxuICAgIHdpZHRoOiAxMDAlO1xcbn1cXG4ucGFnZS13cmFwcGVyLm1lZGl1bVtkYXRhLXYtNjBmZTU3MWJdIHtcXG4gICAgd2lkdGg6IDEwMCU7XFxufVxcbn1cXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk2MHB4KSB7XFxuLnBhZ2Utd3JhcHBlcltkYXRhLXYtNjBmZTU3MWJdIHtcXG4gICAgcGFkZGluZy1sZWZ0OiAyNXB4O1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAyNXB4O1xcbn1cXG4ucGFnZS13cmFwcGVyLnNtYWxsW2RhdGEtdi02MGZlNTcxYl0ge1xcbiAgICB3aWR0aDogMTAwJTtcXG59XFxufVxcblwiLCBcIlwiXSk7XG5cbi8vIGV4cG9ydHNcbiIsImV4cG9ydHMgPSBtb2R1bGUuZXhwb3J0cyA9IHJlcXVpcmUoXCIuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9saWIvY3NzLWJhc2UuanNcIikoZmFsc2UpO1xuLy8gaW1wb3J0c1xuXG5cbi8vIG1vZHVsZVxuZXhwb3J0cy5wdXNoKFttb2R1bGUuaWQsIFwiLmxhbmRpbmctcGFnZVtkYXRhLXYtNjE2M2RiMjhdIHtcXG4gIG92ZXJmbG93LXg6IGhpZGRlbjtcXG59XFxuLnBhZ2Utd3JhcHBlcltkYXRhLXYtNjE2M2RiMjhdIHtcXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcXG4gIG1hcmdpbjogMCBhdXRvO1xcbiAgcGFkZGluZy1sZWZ0OiAyNXB4O1xcbiAgcGFkZGluZy1yaWdodDogMjVweDtcXG59XFxuLnBhZ2Utd3JhcHBlci5sYXJnZVtkYXRhLXYtNjE2M2RiMjhdIHtcXG4gIHdpZHRoOiAxNDkwcHg7XFxufVxcbi5wYWdlLXdyYXBwZXIubWVkaXVtW2RhdGEtdi02MTYzZGIyOF0ge1xcbiAgd2lkdGg6IDExNTBweDtcXG59XFxuLnBhZ2Utd3JhcHBlci5zbWFsbFtkYXRhLXYtNjE2M2RiMjhdIHtcXG4gIHdpZHRoOiA4OTBweDtcXG59XFxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMzkwcHgpIHtcXG4ucGFnZS13cmFwcGVyLmxhcmdlW2RhdGEtdi02MTYzZGIyOF0ge1xcbiAgICB3aWR0aDogMTAwJTtcXG59XFxufVxcbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTE5MHB4KSB7XFxuLnBhZ2Utd3JhcHBlci5sYXJnZVtkYXRhLXYtNjE2M2RiMjhdIHtcXG4gICAgd2lkdGg6IDEwMCU7XFxufVxcbi5wYWdlLXdyYXBwZXIubWVkaXVtW2RhdGEtdi02MTYzZGIyOF0ge1xcbiAgICB3aWR0aDogMTAwJTtcXG59XFxufVxcbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTYwcHgpIHtcXG4ucGFnZS13cmFwcGVyW2RhdGEtdi02MTYzZGIyOF0ge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDI1cHg7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDI1cHg7XFxufVxcbi5wYWdlLXdyYXBwZXIuc21hbGxbZGF0YS12LTYxNjNkYjI4XSB7XFxuICAgIHdpZHRoOiAxMDAlO1xcbn1cXG59XFxuZm9vdGVyW2RhdGEtdi02MTYzZGIyOF0ge1xcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xcbiAgcGFkZGluZy10b3A6IDgwcHg7XFxufVxcbi5sb2dvW2RhdGEtdi02MTYzZGIyOF0ge1xcbiAgbWFyZ2luLWJvdHRvbTogMTVweDtcXG4gIGN1cnNvcjogcG9pbnRlcjtcXG59XFxuLmxvZ28gaW1nW2RhdGEtdi02MTYzZGIyOF0ge1xcbiAgaGVpZ2h0OiAzOHB4O1xcbiAgd2lkdGg6IGF1dG87XFxufVxcbi5sb2dvIC5sb2dvLXRleHRbZGF0YS12LTYxNjNkYjI4XSB7XFxuICBmb250LXdlaWdodDogODAwO1xcbiAgZm9udC1zaXplOiAxLjU2MjVlbTtcXG59XFxuLm5hdmlnYXRpb24tbGlua3NbZGF0YS12LTYxNjNkYjI4XSB7XFxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XFxufVxcbi5uYXZpZ2F0aW9uLWxpbmtzIGxpW2RhdGEtdi02MTYzZGIyOF0ge1xcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xcbn1cXG4ubmF2aWdhdGlvbi1saW5rcyBsaSBhW2RhdGEtdi02MTYzZGIyOF0ge1xcbiAgZGlzcGxheTogYmxvY2s7XFxuICBwYWRkaW5nOiAxOXB4O1xcbiAgZm9udC13ZWlnaHQ6IDcwMDtcXG4gIGZvbnQtc2l6ZTogMS4wNjI1ZW07XFxuICB0cmFuc2l0aW9uOiAxNTBtcyBhbGwgZWFzZTtcXG59XFxuLmNvcHlyaWdodFtkYXRhLXYtNjE2M2RiMjhdIHtcXG4gIGZvbnQtc2l6ZTogMS4wNjI1ZW07XFxuICBjb2xvcjogcmdiYSgyNywgMzcsIDU3LCAwLjcpO1xcbiAgcGFkZGluZy10b3A6IDUwcHg7XFxuICBwYWRkaW5nLWJvdHRvbTogMjBweDtcXG59XFxuLmNvcHlyaWdodFtkYXRhLXYtNjE2M2RiMjhdIGEge1xcbiAgZm9udC13ZWlnaHQ6IDcwMDtcXG59XFxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5NjBweCkge1xcbi5uYXZpZ2F0aW9uLWxpbmtzW2RhdGEtdi02MTYzZGIyOF0ge1xcbiAgICBkaXNwbGF5OiBibG9jaztcXG59XFxuLm5hdmlnYXRpb24tbGlua3MgbGlbZGF0YS12LTYxNjNkYjI4XSB7XFxuICAgIGRpc3BsYXk6IGJsb2NrO1xcbn1cXG4ubmF2aWdhdGlvbi1saW5rcyBsaSBhW2RhdGEtdi02MTYzZGIyOF0ge1xcbiAgICBwYWRkaW5nOiAxMHB4IDA7XFxufVxcbn1cXG5AbWVkaWEgKHByZWZlcnMtY29sb3Itc2NoZW1lOiBkYXJrKSB7XFxuLmNvcHlyaWdodFtkYXRhLXYtNjE2M2RiMjhdIHtcXG4gICAgY29sb3I6ICM3ZDg1OGM7XFxufVxcbn1cXG5cIiwgXCJcIl0pO1xuXG4vLyBleHBvcnRzXG4iLCJpbXBvcnQgbW9kIGZyb20gXCItIS4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9zdHlsZS1sb2FkZXIvaW5kZXguanMhLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Nzcy1sb2FkZXIvaW5kZXguanMhLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL2xvYWRlcnMvc3R5bGVQb3N0TG9hZGVyLmpzIS4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9wb3N0Y3NzLWxvYWRlci9zcmMvaW5kZXguanM/P3JlZi0tNy0yIS4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9zYXNzLWxvYWRlci9kaXN0L2Nqcy5qcz8/cmVmLS03LTMhLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL2luZGV4LmpzPz92dWUtbG9hZGVyLW9wdGlvbnMhLi9JbmRleFBhZ2VIZWFkZXIudnVlP3Z1ZSZ0eXBlPXN0eWxlJmluZGV4PTAmaWQ9MDUzNGYzZGQmbGFuZz1zY3NzJnNjb3BlZD10cnVlJlwiOyBleHBvcnQgZGVmYXVsdCBtb2Q7IGV4cG9ydCAqIGZyb20gXCItIS4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9zdHlsZS1sb2FkZXIvaW5kZXguanMhLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Nzcy1sb2FkZXIvaW5kZXguanMhLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL2xvYWRlcnMvc3R5bGVQb3N0TG9hZGVyLmpzIS4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9wb3N0Y3NzLWxvYWRlci9zcmMvaW5kZXguanM/P3JlZi0tNy0yIS4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9zYXNzLWxvYWRlci9kaXN0L2Nqcy5qcz8/cmVmLS03LTMhLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL2luZGV4LmpzPz92dWUtbG9hZGVyLW9wdGlvbnMhLi9JbmRleFBhZ2VIZWFkZXIudnVlP3Z1ZSZ0eXBlPXN0eWxlJmluZGV4PTAmaWQ9MDUzNGYzZGQmbGFuZz1zY3NzJnNjb3BlZD10cnVlJlwiIiwiaW1wb3J0IG1vZCBmcm9tIFwiLSEuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvc3R5bGUtbG9hZGVyL2luZGV4LmpzIS4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9jc3MtbG9hZGVyL2luZGV4LmpzIS4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9sb2FkZXJzL3N0eWxlUG9zdExvYWRlci5qcyEuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvcG9zdGNzcy1sb2FkZXIvc3JjL2luZGV4LmpzPz9yZWYtLTctMiEuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvc2Fzcy1sb2FkZXIvZGlzdC9janMuanM/P3JlZi0tNy0zIS4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9pbmRleC5qcz8/dnVlLWxvYWRlci1vcHRpb25zIS4vSW5kZXhQYWdlRm9vdGVyLnZ1ZT92dWUmdHlwZT1zdHlsZSZpbmRleD0wJmlkPTYxNjNkYjI4Jmxhbmc9c2NzcyZzY29wZWQ9dHJ1ZSZcIjsgZXhwb3J0IGRlZmF1bHQgbW9kOyBleHBvcnQgKiBmcm9tIFwiLSEuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvc3R5bGUtbG9hZGVyL2luZGV4LmpzIS4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9jc3MtbG9hZGVyL2luZGV4LmpzIS4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9sb2FkZXJzL3N0eWxlUG9zdExvYWRlci5qcyEuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvcG9zdGNzcy1sb2FkZXIvc3JjL2luZGV4LmpzPz9yZWYtLTctMiEuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvc2Fzcy1sb2FkZXIvZGlzdC9janMuanM/P3JlZi0tNy0zIS4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9pbmRleC5qcz8/dnVlLWxvYWRlci1vcHRpb25zIS4vSW5kZXhQYWdlRm9vdGVyLnZ1ZT92dWUmdHlwZT1zdHlsZSZpbmRleD0wJmlkPTYxNjNkYjI4Jmxhbmc9c2NzcyZzY29wZWQ9dHJ1ZSZcIiIsInZhciByZW5kZXIgPSBmdW5jdGlvbiAoKSB7dmFyIF92bT10aGlzO3ZhciBfaD1fdm0uJGNyZWF0ZUVsZW1lbnQ7dmFyIF9jPV92bS5fc2VsZi5fY3x8X2g7cmV0dXJuIF9jKCdidXR0b24nLHtzdGF0aWNDbGFzczpcImJ1dHRvbiBvdXRsaW5lIGhvdmVyLXRleHQtdGhlbWUgaG92ZXItYm9yZGVyLXRoZW1lXCJ9LFtfYygnc3Bhbicse3N0YXRpY0NsYXNzOlwidGV4dC1sYWJlbFwifSxbX3ZtLl92KF92bS5fcyhfdm0udGV4dCkpXSksX3ZtLl92KFwiIFwiKSwoX3ZtLmxvYWRpbmcpP19jKCdzcGFuJyx7c3RhdGljQ2xhc3M6XCJpY29uXCJ9LFtfYygnRm9udEF3ZXNvbWVJY29uJyx7c3RhdGljQ2xhc3M6XCJzeW5jLWFsdCBzdmctY29sb3ItdGhlbWVcIixhdHRyczp7XCJpY29uXCI6XCJzeW5jLWFsdFwifX0pXSwxKTpfdm0uX2UoKSxfdm0uX3YoXCIgXCIpLCghIF92bS5sb2FkaW5nICYmIF92bS5pY29uKT9fYygnc3Bhbicse3N0YXRpY0NsYXNzOlwiaWNvblwifSxbX2MoJ0ZvbnRBd2Vzb21lSWNvbicse3N0YXRpY0NsYXNzOlwic3ZnLWNvbG9yLXRoZW1lXCIsYXR0cnM6e1wiaWNvblwiOl92bS5pY29ufX0pXSwxKTpfdm0uX2UoKV0pfVxudmFyIHN0YXRpY1JlbmRlckZucyA9IFtdXG5cbmV4cG9ydCB7IHJlbmRlciwgc3RhdGljUmVuZGVyRm5zIH0iLCJpbXBvcnQgbW9kIGZyb20gXCItIS4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9iYWJlbC1sb2FkZXIvbGliL2luZGV4LmpzPz9yZWYtLTQtMCEuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvaW5kZXguanM/P3Z1ZS1sb2FkZXItb3B0aW9ucyEuL0F1dGhCdXR0b24udnVlP3Z1ZSZ0eXBlPXNjcmlwdCZsYW5nPWpzJlwiOyBleHBvcnQgZGVmYXVsdCBtb2Q7IGV4cG9ydCAqIGZyb20gXCItIS4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9iYWJlbC1sb2FkZXIvbGliL2luZGV4LmpzPz9yZWYtLTQtMCEuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvaW5kZXguanM/P3Z1ZS1sb2FkZXItb3B0aW9ucyEuL0F1dGhCdXR0b24udnVlP3Z1ZSZ0eXBlPXNjcmlwdCZsYW5nPWpzJlwiIiwiPHRlbXBsYXRlPlxuICAgIDxidXR0b24gY2xhc3M9XCJidXR0b24gb3V0bGluZSBob3Zlci10ZXh0LXRoZW1lIGhvdmVyLWJvcmRlci10aGVtZVwiPlxuICAgICAgICA8c3BhbiBjbGFzcz1cInRleHQtbGFiZWxcIj57eyB0ZXh0IH19PC9zcGFuPlxuXG4gICAgICAgIDxzcGFuIHYtaWY9XCJsb2FkaW5nXCIgY2xhc3M9XCJpY29uXCI+XG5cdFx0XHQ8Rm9udEF3ZXNvbWVJY29uIGljb249XCJzeW5jLWFsdFwiIGNsYXNzPVwic3luYy1hbHQgc3ZnLWNvbG9yLXRoZW1lXCIvPlxuXHRcdDwvc3Bhbj5cbiAgICAgICAgPHNwYW4gdi1pZj1cIiEgbG9hZGluZyAmJiBpY29uXCIgY2xhc3M9XCJpY29uXCI+XG5cdFx0XHQ8Rm9udEF3ZXNvbWVJY29uIDppY29uPVwiaWNvblwiIGNsYXNzPVwic3ZnLWNvbG9yLXRoZW1lXCIvPlxuXHRcdDwvc3Bhbj5cbiAgICA8L2J1dHRvbj5cbjwvdGVtcGxhdGU+XG5cbjxzY3JpcHQ+XG5cbiAgICBleHBvcnQgZGVmYXVsdCB7XG4gICAgICAgIG5hbWU6ICdBdXRoQ29udGVudCcsXG4gICAgICAgIHByb3BzOiBbJ2xvYWRpbmcnLCAnaWNvbicsICd0ZXh0J10sXG4gICAgICAgIGRhdGEoKSB7XG4gICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAgIGlzVmlzaWJsZTogZmFsc2UsXG4gICAgICAgICAgICB9XG4gICAgICAgIH0sXG4gICAgICAgIGNyZWF0ZWQoKSB7XG4gICAgICAgICAgICB0aGlzLmlzVmlzaWJsZSA9IHRoaXMudmlzaWJsZVxuICAgICAgICB9XG4gICAgfVxuPC9zY3JpcHQ+XG5cbjxzdHlsZSBzY29wZWQgbGFuZz1cInNjc3NcIj5cbiAgICBAaW1wb3J0ICdAYXNzZXRzL3Z1ZWZpbGVtYW5hZ2VyL192YXJpYWJsZXMnO1xuICAgIEBpbXBvcnQgJ0Bhc3NldHMvdnVlZmlsZW1hbmFnZXIvX21peGlucyc7XG5cbiAgICAuYnV0dG9uIHtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA4cHg7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgcGFkZGluZzogMTJweCAzMnB4O1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAxNXB4O1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDE1cHg7XG4gICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oMTUwbXMpO1xuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcblxuICAgICAgICAudGV4dC1sYWJlbCB7XG4gICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKDE1MG1zKTtcbiAgICAgICAgICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgxNyk7XG4gICAgICAgICAgICBmb250LXdlaWdodDogODAwO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDA7XG4gICAgICAgIH1cblxuICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMTJweDtcbiAgICAgICAgICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgxNik7XG4gICAgICAgIH1cblxuICAgICAgICAmLnNvbGlkIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICR0aGVtZTtcbiAgICAgICAgICAgIGJvcmRlcjogMnB4IHNvbGlkICR0aGVtZTtcblxuICAgICAgICAgICAgLnRleHQtbGFiZWwge1xuICAgICAgICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYub3V0bGluZSB7XG4gICAgICAgICAgICBib3JkZXI6IDJweCBzb2xpZCAkdGV4dDtcblxuICAgICAgICAgICAgLnRleHQtbGFiZWwge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkdGV4dDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmljb24ge1xuXG4gICAgICAgICAgICAgICAgcGF0aCB7XG4gICAgICAgICAgICAgICAgICAgIGZpbGw6IGluaGVyaXQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6IGluaGVyaXQ7XG5cbiAgICAgICAgICAgICAgICAudGV4dC1sYWJlbCB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBtZWRpYSAocHJlZmVycy1jb2xvci1zY2hlbWU6IGRhcmspIHtcbiAgICAgICAgLmJ1dHRvbiB7XG5cbiAgICAgICAgICAgICYub3V0bGluZSB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJGRhcmtfbW9kZV9iYWNrZ3JvdW5kO1xuICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogJGRhcmtfbW9kZV90ZXh0X3ByaW1hcnk7XG5cbiAgICAgICAgICAgICAgICAudGV4dC1sYWJlbCB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkZGFya19tb2RlX3RleHRfcHJpbWFyeTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuc3luYy1hbHQge1xuICAgICAgICBhbmltYXRpb246IHNwaW4gMXMgbGluZWFyIGluZmluaXRlO1xuICAgIH1cblxuICAgIEBrZXlmcmFtZXMgc3BpbiB7XG4gICAgICAgIDAlIHtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDApO1xuICAgICAgICB9XG4gICAgICAgIDEwMCUge1xuICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgICAgICAgfVxuICAgIH1cblxuPC9zdHlsZT5cbiIsImltcG9ydCB7IHJlbmRlciwgc3RhdGljUmVuZGVyRm5zIH0gZnJvbSBcIi4vQXV0aEJ1dHRvbi52dWU/dnVlJnR5cGU9dGVtcGxhdGUmaWQ9MTZlOWFkNTgmc2NvcGVkPXRydWUmXCJcbmltcG9ydCBzY3JpcHQgZnJvbSBcIi4vQXV0aEJ1dHRvbi52dWU/dnVlJnR5cGU9c2NyaXB0Jmxhbmc9anMmXCJcbmV4cG9ydCAqIGZyb20gXCIuL0F1dGhCdXR0b24udnVlP3Z1ZSZ0eXBlPXNjcmlwdCZsYW5nPWpzJlwiXG5pbXBvcnQgc3R5bGUwIGZyb20gXCIuL0F1dGhCdXR0b24udnVlP3Z1ZSZ0eXBlPXN0eWxlJmluZGV4PTAmaWQ9MTZlOWFkNTgmc2NvcGVkPXRydWUmbGFuZz1zY3NzJlwiXG5cblxuLyogbm9ybWFsaXplIGNvbXBvbmVudCAqL1xuaW1wb3J0IG5vcm1hbGl6ZXIgZnJvbSBcIiEuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvcnVudGltZS9jb21wb25lbnROb3JtYWxpemVyLmpzXCJcbnZhciBjb21wb25lbnQgPSBub3JtYWxpemVyKFxuICBzY3JpcHQsXG4gIHJlbmRlcixcbiAgc3RhdGljUmVuZGVyRm5zLFxuICBmYWxzZSxcbiAgbnVsbCxcbiAgXCIxNmU5YWQ1OFwiLFxuICBudWxsXG4gIFxuKVxuXG5leHBvcnQgZGVmYXVsdCBjb21wb25lbnQuZXhwb3J0cyIsImltcG9ydCBtb2QgZnJvbSBcIi0hLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL3N0eWxlLWxvYWRlci9pbmRleC5qcyEuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9pbmRleC5qcyEuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvbG9hZGVycy9zdHlsZVBvc3RMb2FkZXIuanMhLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL3Bvc3Rjc3MtbG9hZGVyL3NyYy9pbmRleC5qcz8/cmVmLS03LTIhLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL3Nhc3MtbG9hZGVyL2Rpc3QvY2pzLmpzPz9yZWYtLTctMyEuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvaW5kZXguanM/P3Z1ZS1sb2FkZXItb3B0aW9ucyEuL0luZGV4TmF2aWdhdGlvbi52dWU/dnVlJnR5cGU9c3R5bGUmaW5kZXg9MCZpZD02NzQ2ZTIzMyZsYW5nPXNjc3Mmc2NvcGVkPXRydWUmXCI7IGV4cG9ydCBkZWZhdWx0IG1vZDsgZXhwb3J0ICogZnJvbSBcIi0hLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL3N0eWxlLWxvYWRlci9pbmRleC5qcyEuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9pbmRleC5qcyEuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvbG9hZGVycy9zdHlsZVBvc3RMb2FkZXIuanMhLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL3Bvc3Rjc3MtbG9hZGVyL3NyYy9pbmRleC5qcz8/cmVmLS03LTIhLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL3Nhc3MtbG9hZGVyL2Rpc3QvY2pzLmpzPz9yZWYtLTctMyEuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvaW5kZXguanM/P3Z1ZS1sb2FkZXItb3B0aW9ucyEuL0luZGV4TmF2aWdhdGlvbi52dWU/dnVlJnR5cGU9c3R5bGUmaW5kZXg9MCZpZD02NzQ2ZTIzMyZsYW5nPXNjc3Mmc2NvcGVkPXRydWUmXCIiLCJcbnZhciBjb250ZW50ID0gcmVxdWlyZShcIiEhLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Nzcy1sb2FkZXIvaW5kZXguanMhLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL2xvYWRlcnMvc3R5bGVQb3N0TG9hZGVyLmpzIS4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9wb3N0Y3NzLWxvYWRlci9zcmMvaW5kZXguanM/P3JlZi0tNy0yIS4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9zYXNzLWxvYWRlci9kaXN0L2Nqcy5qcz8/cmVmLS03LTMhLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL2luZGV4LmpzPz92dWUtbG9hZGVyLW9wdGlvbnMhLi9Ib21lcGFnZS52dWU/dnVlJnR5cGU9c3R5bGUmaW5kZXg9MCZpZD02MGZlNTcxYiZsYW5nPXNjc3Mmc2NvcGVkPXRydWUmXCIpO1xuXG5pZih0eXBlb2YgY29udGVudCA9PT0gJ3N0cmluZycpIGNvbnRlbnQgPSBbW21vZHVsZS5pZCwgY29udGVudCwgJyddXTtcblxudmFyIHRyYW5zZm9ybTtcbnZhciBpbnNlcnRJbnRvO1xuXG5cblxudmFyIG9wdGlvbnMgPSB7XCJobXJcIjp0cnVlfVxuXG5vcHRpb25zLnRyYW5zZm9ybSA9IHRyYW5zZm9ybVxub3B0aW9ucy5pbnNlcnRJbnRvID0gdW5kZWZpbmVkO1xuXG52YXIgdXBkYXRlID0gcmVxdWlyZShcIiEuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvc3R5bGUtbG9hZGVyL2xpYi9hZGRTdHlsZXMuanNcIikoY29udGVudCwgb3B0aW9ucyk7XG5cbmlmKGNvbnRlbnQubG9jYWxzKSBtb2R1bGUuZXhwb3J0cyA9IGNvbnRlbnQubG9jYWxzO1xuXG5pZihtb2R1bGUuaG90KSB7XG5cdG1vZHVsZS5ob3QuYWNjZXB0KFwiISEuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9pbmRleC5qcyEuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvbG9hZGVycy9zdHlsZVBvc3RMb2FkZXIuanMhLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL3Bvc3Rjc3MtbG9hZGVyL3NyYy9pbmRleC5qcz8/cmVmLS03LTIhLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL3Nhc3MtbG9hZGVyL2Rpc3QvY2pzLmpzPz9yZWYtLTctMyEuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvaW5kZXguanM/P3Z1ZS1sb2FkZXItb3B0aW9ucyEuL0hvbWVwYWdlLnZ1ZT92dWUmdHlwZT1zdHlsZSZpbmRleD0wJmlkPTYwZmU1NzFiJmxhbmc9c2NzcyZzY29wZWQ9dHJ1ZSZcIiwgZnVuY3Rpb24oKSB7XG5cdFx0dmFyIG5ld0NvbnRlbnQgPSByZXF1aXJlKFwiISEuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9pbmRleC5qcyEuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvbG9hZGVycy9zdHlsZVBvc3RMb2FkZXIuanMhLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL3Bvc3Rjc3MtbG9hZGVyL3NyYy9pbmRleC5qcz8/cmVmLS03LTIhLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL3Nhc3MtbG9hZGVyL2Rpc3QvY2pzLmpzPz9yZWYtLTctMyEuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvaW5kZXguanM/P3Z1ZS1sb2FkZXItb3B0aW9ucyEuL0hvbWVwYWdlLnZ1ZT92dWUmdHlwZT1zdHlsZSZpbmRleD0wJmlkPTYwZmU1NzFiJmxhbmc9c2NzcyZzY29wZWQ9dHJ1ZSZcIik7XG5cblx0XHRpZih0eXBlb2YgbmV3Q29udGVudCA9PT0gJ3N0cmluZycpIG5ld0NvbnRlbnQgPSBbW21vZHVsZS5pZCwgbmV3Q29udGVudCwgJyddXTtcblxuXHRcdHZhciBsb2NhbHMgPSAoZnVuY3Rpb24oYSwgYikge1xuXHRcdFx0dmFyIGtleSwgaWR4ID0gMDtcblxuXHRcdFx0Zm9yKGtleSBpbiBhKSB7XG5cdFx0XHRcdGlmKCFiIHx8IGFba2V5XSAhPT0gYltrZXldKSByZXR1cm4gZmFsc2U7XG5cdFx0XHRcdGlkeCsrO1xuXHRcdFx0fVxuXG5cdFx0XHRmb3Ioa2V5IGluIGIpIGlkeC0tO1xuXG5cdFx0XHRyZXR1cm4gaWR4ID09PSAwO1xuXHRcdH0oY29udGVudC5sb2NhbHMsIG5ld0NvbnRlbnQubG9jYWxzKSk7XG5cblx0XHRpZighbG9jYWxzKSB0aHJvdyBuZXcgRXJyb3IoJ0Fib3J0aW5nIENTUyBITVIgZHVlIHRvIGNoYW5nZWQgY3NzLW1vZHVsZXMgbG9jYWxzLicpO1xuXG5cdFx0dXBkYXRlKG5ld0NvbnRlbnQpO1xuXHR9KTtcblxuXHRtb2R1bGUuaG90LmRpc3Bvc2UoZnVuY3Rpb24oKSB7IHVwZGF0ZSgpOyB9KTtcbn0iLCJcbnZhciBjb250ZW50ID0gcmVxdWlyZShcIiEhLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Nzcy1sb2FkZXIvaW5kZXguanMhLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL2xvYWRlcnMvc3R5bGVQb3N0TG9hZGVyLmpzIS4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9wb3N0Y3NzLWxvYWRlci9zcmMvaW5kZXguanM/P3JlZi0tNy0yIS4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9zYXNzLWxvYWRlci9kaXN0L2Nqcy5qcz8/cmVmLS03LTMhLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL2luZGV4LmpzPz92dWUtbG9hZGVyLW9wdGlvbnMhLi9BdXRoQnV0dG9uLnZ1ZT92dWUmdHlwZT1zdHlsZSZpbmRleD0wJmlkPTE2ZTlhZDU4JnNjb3BlZD10cnVlJmxhbmc9c2NzcyZcIik7XG5cbmlmKHR5cGVvZiBjb250ZW50ID09PSAnc3RyaW5nJykgY29udGVudCA9IFtbbW9kdWxlLmlkLCBjb250ZW50LCAnJ11dO1xuXG52YXIgdHJhbnNmb3JtO1xudmFyIGluc2VydEludG87XG5cblxuXG52YXIgb3B0aW9ucyA9IHtcImhtclwiOnRydWV9XG5cbm9wdGlvbnMudHJhbnNmb3JtID0gdHJhbnNmb3JtXG5vcHRpb25zLmluc2VydEludG8gPSB1bmRlZmluZWQ7XG5cbnZhciB1cGRhdGUgPSByZXF1aXJlKFwiIS4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9zdHlsZS1sb2FkZXIvbGliL2FkZFN0eWxlcy5qc1wiKShjb250ZW50LCBvcHRpb25zKTtcblxuaWYoY29udGVudC5sb2NhbHMpIG1vZHVsZS5leHBvcnRzID0gY29udGVudC5sb2NhbHM7XG5cbmlmKG1vZHVsZS5ob3QpIHtcblx0bW9kdWxlLmhvdC5hY2NlcHQoXCIhIS4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9jc3MtbG9hZGVyL2luZGV4LmpzIS4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9sb2FkZXJzL3N0eWxlUG9zdExvYWRlci5qcyEuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvcG9zdGNzcy1sb2FkZXIvc3JjL2luZGV4LmpzPz9yZWYtLTctMiEuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvc2Fzcy1sb2FkZXIvZGlzdC9janMuanM/P3JlZi0tNy0zIS4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9pbmRleC5qcz8/dnVlLWxvYWRlci1vcHRpb25zIS4vQXV0aEJ1dHRvbi52dWU/dnVlJnR5cGU9c3R5bGUmaW5kZXg9MCZpZD0xNmU5YWQ1OCZzY29wZWQ9dHJ1ZSZsYW5nPXNjc3MmXCIsIGZ1bmN0aW9uKCkge1xuXHRcdHZhciBuZXdDb250ZW50ID0gcmVxdWlyZShcIiEhLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Nzcy1sb2FkZXIvaW5kZXguanMhLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL2xvYWRlcnMvc3R5bGVQb3N0TG9hZGVyLmpzIS4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9wb3N0Y3NzLWxvYWRlci9zcmMvaW5kZXguanM/P3JlZi0tNy0yIS4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9zYXNzLWxvYWRlci9kaXN0L2Nqcy5qcz8/cmVmLS03LTMhLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL2luZGV4LmpzPz92dWUtbG9hZGVyLW9wdGlvbnMhLi9BdXRoQnV0dG9uLnZ1ZT92dWUmdHlwZT1zdHlsZSZpbmRleD0wJmlkPTE2ZTlhZDU4JnNjb3BlZD10cnVlJmxhbmc9c2NzcyZcIik7XG5cblx0XHRpZih0eXBlb2YgbmV3Q29udGVudCA9PT0gJ3N0cmluZycpIG5ld0NvbnRlbnQgPSBbW21vZHVsZS5pZCwgbmV3Q29udGVudCwgJyddXTtcblxuXHRcdHZhciBsb2NhbHMgPSAoZnVuY3Rpb24oYSwgYikge1xuXHRcdFx0dmFyIGtleSwgaWR4ID0gMDtcblxuXHRcdFx0Zm9yKGtleSBpbiBhKSB7XG5cdFx0XHRcdGlmKCFiIHx8IGFba2V5XSAhPT0gYltrZXldKSByZXR1cm4gZmFsc2U7XG5cdFx0XHRcdGlkeCsrO1xuXHRcdFx0fVxuXG5cdFx0XHRmb3Ioa2V5IGluIGIpIGlkeC0tO1xuXG5cdFx0XHRyZXR1cm4gaWR4ID09PSAwO1xuXHRcdH0oY29udGVudC5sb2NhbHMsIG5ld0NvbnRlbnQubG9jYWxzKSk7XG5cblx0XHRpZighbG9jYWxzKSB0aHJvdyBuZXcgRXJyb3IoJ0Fib3J0aW5nIENTUyBITVIgZHVlIHRvIGNoYW5nZWQgY3NzLW1vZHVsZXMgbG9jYWxzLicpO1xuXG5cdFx0dXBkYXRlKG5ld0NvbnRlbnQpO1xuXHR9KTtcblxuXHRtb2R1bGUuaG90LmRpc3Bvc2UoZnVuY3Rpb24oKSB7IHVwZGF0ZSgpOyB9KTtcbn0iLCJcbnZhciBjb250ZW50ID0gcmVxdWlyZShcIiEhLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Nzcy1sb2FkZXIvaW5kZXguanMhLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL2xvYWRlcnMvc3R5bGVQb3N0TG9hZGVyLmpzIS4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9wb3N0Y3NzLWxvYWRlci9zcmMvaW5kZXguanM/P3JlZi0tNy0yIS4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9zYXNzLWxvYWRlci9kaXN0L2Nqcy5qcz8/cmVmLS03LTMhLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL2luZGV4LmpzPz92dWUtbG9hZGVyLW9wdGlvbnMhLi9JbmRleE5hdmlnYXRpb24udnVlP3Z1ZSZ0eXBlPXN0eWxlJmluZGV4PTAmaWQ9Njc0NmUyMzMmbGFuZz1zY3NzJnNjb3BlZD10cnVlJlwiKTtcblxuaWYodHlwZW9mIGNvbnRlbnQgPT09ICdzdHJpbmcnKSBjb250ZW50ID0gW1ttb2R1bGUuaWQsIGNvbnRlbnQsICcnXV07XG5cbnZhciB0cmFuc2Zvcm07XG52YXIgaW5zZXJ0SW50bztcblxuXG5cbnZhciBvcHRpb25zID0ge1wiaG1yXCI6dHJ1ZX1cblxub3B0aW9ucy50cmFuc2Zvcm0gPSB0cmFuc2Zvcm1cbm9wdGlvbnMuaW5zZXJ0SW50byA9IHVuZGVmaW5lZDtcblxudmFyIHVwZGF0ZSA9IHJlcXVpcmUoXCIhLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL3N0eWxlLWxvYWRlci9saWIvYWRkU3R5bGVzLmpzXCIpKGNvbnRlbnQsIG9wdGlvbnMpO1xuXG5pZihjb250ZW50LmxvY2FscykgbW9kdWxlLmV4cG9ydHMgPSBjb250ZW50LmxvY2FscztcblxuaWYobW9kdWxlLmhvdCkge1xuXHRtb2R1bGUuaG90LmFjY2VwdChcIiEhLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Nzcy1sb2FkZXIvaW5kZXguanMhLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL2xvYWRlcnMvc3R5bGVQb3N0TG9hZGVyLmpzIS4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9wb3N0Y3NzLWxvYWRlci9zcmMvaW5kZXguanM/P3JlZi0tNy0yIS4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9zYXNzLWxvYWRlci9kaXN0L2Nqcy5qcz8/cmVmLS03LTMhLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL2luZGV4LmpzPz92dWUtbG9hZGVyLW9wdGlvbnMhLi9JbmRleE5hdmlnYXRpb24udnVlP3Z1ZSZ0eXBlPXN0eWxlJmluZGV4PTAmaWQ9Njc0NmUyMzMmbGFuZz1zY3NzJnNjb3BlZD10cnVlJlwiLCBmdW5jdGlvbigpIHtcblx0XHR2YXIgbmV3Q29udGVudCA9IHJlcXVpcmUoXCIhIS4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9jc3MtbG9hZGVyL2luZGV4LmpzIS4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9sb2FkZXJzL3N0eWxlUG9zdExvYWRlci5qcyEuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvcG9zdGNzcy1sb2FkZXIvc3JjL2luZGV4LmpzPz9yZWYtLTctMiEuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvc2Fzcy1sb2FkZXIvZGlzdC9janMuanM/P3JlZi0tNy0zIS4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9pbmRleC5qcz8/dnVlLWxvYWRlci1vcHRpb25zIS4vSW5kZXhOYXZpZ2F0aW9uLnZ1ZT92dWUmdHlwZT1zdHlsZSZpbmRleD0wJmlkPTY3NDZlMjMzJmxhbmc9c2NzcyZzY29wZWQ9dHJ1ZSZcIik7XG5cblx0XHRpZih0eXBlb2YgbmV3Q29udGVudCA9PT0gJ3N0cmluZycpIG5ld0NvbnRlbnQgPSBbW21vZHVsZS5pZCwgbmV3Q29udGVudCwgJyddXTtcblxuXHRcdHZhciBsb2NhbHMgPSAoZnVuY3Rpb24oYSwgYikge1xuXHRcdFx0dmFyIGtleSwgaWR4ID0gMDtcblxuXHRcdFx0Zm9yKGtleSBpbiBhKSB7XG5cdFx0XHRcdGlmKCFiIHx8IGFba2V5XSAhPT0gYltrZXldKSByZXR1cm4gZmFsc2U7XG5cdFx0XHRcdGlkeCsrO1xuXHRcdFx0fVxuXG5cdFx0XHRmb3Ioa2V5IGluIGIpIGlkeC0tO1xuXG5cdFx0XHRyZXR1cm4gaWR4ID09PSAwO1xuXHRcdH0oY29udGVudC5sb2NhbHMsIG5ld0NvbnRlbnQubG9jYWxzKSk7XG5cblx0XHRpZighbG9jYWxzKSB0aHJvdyBuZXcgRXJyb3IoJ0Fib3J0aW5nIENTUyBITVIgZHVlIHRvIGNoYW5nZWQgY3NzLW1vZHVsZXMgbG9jYWxzLicpO1xuXG5cdFx0dXBkYXRlKG5ld0NvbnRlbnQpO1xuXHR9KTtcblxuXHRtb2R1bGUuaG90LmRpc3Bvc2UoZnVuY3Rpb24oKSB7IHVwZGF0ZSgpOyB9KTtcbn0iLCJleHBvcnRzID0gbW9kdWxlLmV4cG9ydHMgPSByZXF1aXJlKFwiLi4vLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Nzcy1sb2FkZXIvbGliL2Nzcy1iYXNlLmpzXCIpKGZhbHNlKTtcbi8vIGltcG9ydHNcblxuXG4vLyBtb2R1bGVcbmV4cG9ydHMucHVzaChbbW9kdWxlLmlkLCBcIi5sYW5kaW5nLXBhZ2VbZGF0YS12LTQ2MzFjNWY2XSB7XFxuICBvdmVyZmxvdy14OiBoaWRkZW47XFxufVxcbi5wYWdlLXdyYXBwZXJbZGF0YS12LTQ2MzFjNWY2XSB7XFxuICBwb3NpdGlvbjogcmVsYXRpdmU7XFxuICBtYXJnaW46IDAgYXV0bztcXG4gIHBhZGRpbmctbGVmdDogMjVweDtcXG4gIHBhZGRpbmctcmlnaHQ6IDI1cHg7XFxufVxcbi5wYWdlLXdyYXBwZXIubGFyZ2VbZGF0YS12LTQ2MzFjNWY2XSB7XFxuICB3aWR0aDogMTQ5MHB4O1xcbn1cXG4ucGFnZS13cmFwcGVyLm1lZGl1bVtkYXRhLXYtNDYzMWM1ZjZdIHtcXG4gIHdpZHRoOiAxMTUwcHg7XFxufVxcbi5wYWdlLXdyYXBwZXIuc21hbGxbZGF0YS12LTQ2MzFjNWY2XSB7XFxuICB3aWR0aDogODkwcHg7XFxufVxcbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTM5MHB4KSB7XFxuLnBhZ2Utd3JhcHBlci5sYXJnZVtkYXRhLXYtNDYzMWM1ZjZdIHtcXG4gICAgd2lkdGg6IDEwMCU7XFxufVxcbn1cXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDExOTBweCkge1xcbi5wYWdlLXdyYXBwZXIubGFyZ2VbZGF0YS12LTQ2MzFjNWY2XSB7XFxuICAgIHdpZHRoOiAxMDAlO1xcbn1cXG4ucGFnZS13cmFwcGVyLm1lZGl1bVtkYXRhLXYtNDYzMWM1ZjZdIHtcXG4gICAgd2lkdGg6IDEwMCU7XFxufVxcbn1cXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk2MHB4KSB7XFxuLnBhZ2Utd3JhcHBlcltkYXRhLXYtNDYzMWM1ZjZdIHtcXG4gICAgcGFkZGluZy1sZWZ0OiAyNXB4O1xcbiAgICBwYWRkaW5nLXJpZ2h0OiAyNXB4O1xcbn1cXG4ucGFnZS13cmFwcGVyLnNtYWxsW2RhdGEtdi00NjMxYzVmNl0ge1xcbiAgICB3aWR0aDogMTAwJTtcXG59XFxufVxcbi5wYWdlLXRpdGxlW2RhdGEtdi00NjMxYzVmNl0ge1xcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xcbiAgei1pbmRleDogMTtcXG59XFxuLnBhZ2UtdGl0bGUuY2VudGVyW2RhdGEtdi00NjMxYzVmNl0ge1xcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xcbn1cXG4ucGFnZS10aXRsZS5jZW50ZXIgLnRpdGxlW2RhdGEtdi00NjMxYzVmNl0ge1xcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XFxuICBtYXJnaW4tcmlnaHQ6IGF1dG87XFxuICBtYXgtd2lkdGg6IDc4MHB4O1xcbn1cXG4ucGFnZS10aXRsZS5jZW50ZXIgLmRlc2NyaXB0aW9uW2RhdGEtdi00NjMxYzVmNl0ge1xcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XFxuICBtYXJnaW4tcmlnaHQ6IGF1dG87XFxufVxcbi5wYWdlLXRpdGxlIC50aXRsZVtkYXRhLXYtNDYzMWM1ZjZdIHtcXG4gIG1heC13aWR0aDogNTgwcHg7XFxuICBmb250LXNpemU6IDQ4cHg7XFxuICBmb250LXdlaWdodDogODAwO1xcbiAgbGluZS1oZWlnaHQ6IDEuMztcXG4gIG1hcmdpbi1ib3R0b206IDE1cHg7XFxufVxcbi5wYWdlLXRpdGxlIC50aXRsZVtkYXRhLXYtNDYzMWM1ZjZdIHNwYW4ge1xcbiAgZm9udC1zaXplOiA0OHB4O1xcbn1cXG4ucGFnZS10aXRsZSAuZGVzY3JpcHRpb25bZGF0YS12LTQ2MzFjNWY2XSB7XFxuICBtYXgtd2lkdGg6IDU4MHB4O1xcbiAgZm9udC1zaXplOiAxLjI1ZW07XFxuICBmb250LXdlaWdodDogNTAwO1xcbiAgbGluZS1oZWlnaHQ6IDEuNjU7XFxuICBtYXJnaW4tYm90dG9tOiAzMHB4O1xcbn1cXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk2MHB4KSB7XFxuLnBhZ2UtdGl0bGUgLnRpdGxlW2RhdGEtdi00NjMxYzVmNl0ge1xcbiAgICBtYXgtd2lkdGg6IDEwMCU7XFxuICAgIGZvbnQtc2l6ZTogMzJweDtcXG4gICAgbGluZS1oZWlnaHQ6IDEuMjU7XFxuICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XFxufVxcbi5wYWdlLXRpdGxlIC50aXRsZVtkYXRhLXYtNDYzMWM1ZjZdIHNwYW4ge1xcbiAgICBmb250LXNpemU6IDMycHg7XFxufVxcbi5wYWdlLXRpdGxlIC5kZXNjcmlwdGlvbltkYXRhLXYtNDYzMWM1ZjZdIHtcXG4gICAgbWF4LXdpZHRoOiAxMDAlO1xcbiAgICBmb250LXNpemU6IDFlbTtcXG4gICAgbGluZS1oZWlnaHQ6IDEuNjtcXG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDtcXG59XFxufVxcblwiLCBcIlwiXSk7XG5cbi8vIGV4cG9ydHNcbiIsIlxudmFyIGNvbnRlbnQgPSByZXF1aXJlKFwiISEuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9pbmRleC5qcyEuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvbG9hZGVycy9zdHlsZVBvc3RMb2FkZXIuanMhLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL3Bvc3Rjc3MtbG9hZGVyL3NyYy9pbmRleC5qcz8/cmVmLS03LTIhLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL3Nhc3MtbG9hZGVyL2Rpc3QvY2pzLmpzPz9yZWYtLTctMyEuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvaW5kZXguanM/P3Z1ZS1sb2FkZXItb3B0aW9ucyEuL0luZGV4UGFnZUZvb3Rlci52dWU/dnVlJnR5cGU9c3R5bGUmaW5kZXg9MCZpZD02MTYzZGIyOCZsYW5nPXNjc3Mmc2NvcGVkPXRydWUmXCIpO1xuXG5pZih0eXBlb2YgY29udGVudCA9PT0gJ3N0cmluZycpIGNvbnRlbnQgPSBbW21vZHVsZS5pZCwgY29udGVudCwgJyddXTtcblxudmFyIHRyYW5zZm9ybTtcbnZhciBpbnNlcnRJbnRvO1xuXG5cblxudmFyIG9wdGlvbnMgPSB7XCJobXJcIjp0cnVlfVxuXG5vcHRpb25zLnRyYW5zZm9ybSA9IHRyYW5zZm9ybVxub3B0aW9ucy5pbnNlcnRJbnRvID0gdW5kZWZpbmVkO1xuXG52YXIgdXBkYXRlID0gcmVxdWlyZShcIiEuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvc3R5bGUtbG9hZGVyL2xpYi9hZGRTdHlsZXMuanNcIikoY29udGVudCwgb3B0aW9ucyk7XG5cbmlmKGNvbnRlbnQubG9jYWxzKSBtb2R1bGUuZXhwb3J0cyA9IGNvbnRlbnQubG9jYWxzO1xuXG5pZihtb2R1bGUuaG90KSB7XG5cdG1vZHVsZS5ob3QuYWNjZXB0KFwiISEuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9pbmRleC5qcyEuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvbG9hZGVycy9zdHlsZVBvc3RMb2FkZXIuanMhLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL3Bvc3Rjc3MtbG9hZGVyL3NyYy9pbmRleC5qcz8/cmVmLS03LTIhLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL3Nhc3MtbG9hZGVyL2Rpc3QvY2pzLmpzPz9yZWYtLTctMyEuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvaW5kZXguanM/P3Z1ZS1sb2FkZXItb3B0aW9ucyEuL0luZGV4UGFnZUZvb3Rlci52dWU/dnVlJnR5cGU9c3R5bGUmaW5kZXg9MCZpZD02MTYzZGIyOCZsYW5nPXNjc3Mmc2NvcGVkPXRydWUmXCIsIGZ1bmN0aW9uKCkge1xuXHRcdHZhciBuZXdDb250ZW50ID0gcmVxdWlyZShcIiEhLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Nzcy1sb2FkZXIvaW5kZXguanMhLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL2xvYWRlcnMvc3R5bGVQb3N0TG9hZGVyLmpzIS4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9wb3N0Y3NzLWxvYWRlci9zcmMvaW5kZXguanM/P3JlZi0tNy0yIS4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9zYXNzLWxvYWRlci9kaXN0L2Nqcy5qcz8/cmVmLS03LTMhLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL2luZGV4LmpzPz92dWUtbG9hZGVyLW9wdGlvbnMhLi9JbmRleFBhZ2VGb290ZXIudnVlP3Z1ZSZ0eXBlPXN0eWxlJmluZGV4PTAmaWQ9NjE2M2RiMjgmbGFuZz1zY3NzJnNjb3BlZD10cnVlJlwiKTtcblxuXHRcdGlmKHR5cGVvZiBuZXdDb250ZW50ID09PSAnc3RyaW5nJykgbmV3Q29udGVudCA9IFtbbW9kdWxlLmlkLCBuZXdDb250ZW50LCAnJ11dO1xuXG5cdFx0dmFyIGxvY2FscyA9IChmdW5jdGlvbihhLCBiKSB7XG5cdFx0XHR2YXIga2V5LCBpZHggPSAwO1xuXG5cdFx0XHRmb3Ioa2V5IGluIGEpIHtcblx0XHRcdFx0aWYoIWIgfHwgYVtrZXldICE9PSBiW2tleV0pIHJldHVybiBmYWxzZTtcblx0XHRcdFx0aWR4Kys7XG5cdFx0XHR9XG5cblx0XHRcdGZvcihrZXkgaW4gYikgaWR4LS07XG5cblx0XHRcdHJldHVybiBpZHggPT09IDA7XG5cdFx0fShjb250ZW50LmxvY2FscywgbmV3Q29udGVudC5sb2NhbHMpKTtcblxuXHRcdGlmKCFsb2NhbHMpIHRocm93IG5ldyBFcnJvcignQWJvcnRpbmcgQ1NTIEhNUiBkdWUgdG8gY2hhbmdlZCBjc3MtbW9kdWxlcyBsb2NhbHMuJyk7XG5cblx0XHR1cGRhdGUobmV3Q29udGVudCk7XG5cdH0pO1xuXG5cdG1vZHVsZS5ob3QuZGlzcG9zZShmdW5jdGlvbigpIHsgdXBkYXRlKCk7IH0pO1xufSIsImV4cG9ydHMgPSBtb2R1bGUuZXhwb3J0cyA9IHJlcXVpcmUoXCIuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9saWIvY3NzLWJhc2UuanNcIikoZmFsc2UpO1xuLy8gaW1wb3J0c1xuXG5cbi8vIG1vZHVsZVxuZXhwb3J0cy5wdXNoKFttb2R1bGUuaWQsIFwiLmxhbmRpbmctcGFnZVtkYXRhLXYtNDEwNjAwYjJdIHtcXG4gIG92ZXJmbG93LXg6IGhpZGRlbjtcXG59XFxuLnBhZ2Utd3JhcHBlcltkYXRhLXYtNDEwNjAwYjJdIHtcXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcXG4gIG1hcmdpbjogMCBhdXRvO1xcbiAgcGFkZGluZy1sZWZ0OiAyNXB4O1xcbiAgcGFkZGluZy1yaWdodDogMjVweDtcXG59XFxuLnBhZ2Utd3JhcHBlci5sYXJnZVtkYXRhLXYtNDEwNjAwYjJdIHtcXG4gIHdpZHRoOiAxNDkwcHg7XFxufVxcbi5wYWdlLXdyYXBwZXIubWVkaXVtW2RhdGEtdi00MTA2MDBiMl0ge1xcbiAgd2lkdGg6IDExNTBweDtcXG59XFxuLnBhZ2Utd3JhcHBlci5zbWFsbFtkYXRhLXYtNDEwNjAwYjJdIHtcXG4gIHdpZHRoOiA4OTBweDtcXG59XFxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMzkwcHgpIHtcXG4ucGFnZS13cmFwcGVyLmxhcmdlW2RhdGEtdi00MTA2MDBiMl0ge1xcbiAgICB3aWR0aDogMTAwJTtcXG59XFxufVxcbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTE5MHB4KSB7XFxuLnBhZ2Utd3JhcHBlci5sYXJnZVtkYXRhLXYtNDEwNjAwYjJdIHtcXG4gICAgd2lkdGg6IDEwMCU7XFxufVxcbi5wYWdlLXdyYXBwZXIubWVkaXVtW2RhdGEtdi00MTA2MDBiMl0ge1xcbiAgICB3aWR0aDogMTAwJTtcXG59XFxufVxcbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTYwcHgpIHtcXG4ucGFnZS13cmFwcGVyW2RhdGEtdi00MTA2MDBiMl0ge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDI1cHg7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDI1cHg7XFxufVxcbi5wYWdlLXdyYXBwZXIuc21hbGxbZGF0YS12LTQxMDYwMGIyXSB7XFxuICAgIHdpZHRoOiAxMDAlO1xcbn1cXG59XFxuLmljb25zIC5pY29uW2RhdGEtdi00MTA2MDBiMl0ge1xcbiAgei1pbmRleDogMDtcXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcXG59XFxuLmljb25zIC5pY29uW2RhdGEtdi00MTA2MDBiMl06bnRoLWNoaWxkKDEpIHtcXG4gIHRvcDogLTE0JTtcXG4gIHJpZ2h0OiAyJTtcXG59XFxuLmljb25zIC5pY29uW2RhdGEtdi00MTA2MDBiMl06bnRoLWNoaWxkKDIpIHtcXG4gIHRvcDogLTUlO1xcbiAgcmlnaHQ6IDE0JTtcXG4gIHRyYW5zZm9ybTogcm90YXRlKDE5ZGVnKTtcXG59XFxuLmljb25zIC5pY29uW2RhdGEtdi00MTA2MDBiMl06bnRoLWNoaWxkKDMpIHtcXG4gIHRvcDogLTYuNSU7XFxuICByaWdodDogMjguNSU7XFxuICB0cmFuc2Zvcm06IHJvdGF0ZSgtMTJkZWcpO1xcbn1cXG4uaWNvbnMgLmljb246bnRoLWNoaWxkKDMpIGxpbmVbZGF0YS12LTQxMDYwMGIyXSwgLmljb25zIC5pY29uOm50aC1jaGlsZCgzKSBwYXRoW2RhdGEtdi00MTA2MDBiMl0ge1xcbiAgc3Ryb2tlOiAjMDBCQzdFO1xcbn1cXG4uaWNvbnMgLmljb25bZGF0YS12LTQxMDYwMGIyXTpudGgtY2hpbGQoNCkge1xcbiAgdG9wOiAtOS41JTtcXG4gIHJpZ2h0OiA0MS41JTtcXG4gIHRyYW5zZm9ybTogcm90YXRlKDEzZGVnKTtcXG59XFxuLmljb25zIC5pY29uOm50aC1jaGlsZCg0KSBwYXRoW2RhdGEtdi00MTA2MDBiMl0sIC5pY29ucyAuaWNvbjpudGgtY2hpbGQoNCkgbGluZVtkYXRhLXYtNDEwNjAwYjJdIHtcXG4gIHN0cm9rZTogI0ZGQkQyRDtcXG59XFxuLmljb25zIC5pY29uW2RhdGEtdi00MTA2MDBiMl06bnRoLWNoaWxkKDUpIHtcXG4gIHRvcDogLTE2JTtcXG4gIHJpZ2h0OiAyNiU7XFxufVxcbi5pY29ucyAuaWNvbjpudGgtY2hpbGQoNSkgY2lyY2xlW2RhdGEtdi00MTA2MDBiMl0sIC5pY29ucyAuaWNvbjpudGgtY2hpbGQoNSkgcGF0aFtkYXRhLXYtNDEwNjAwYjJdIHtcXG4gIHN0cm9rZTogI0ZFNjA1NztcXG59XFxuLmljb25zIC5pY29uW2RhdGEtdi00MTA2MDBiMl06bnRoLWNoaWxkKDYpIHtcXG4gIHRvcDogLTEzJTtcXG4gIHJpZ2h0OiA0OSU7XFxufVxcbi5pY29ucyAuaWNvbltkYXRhLXYtNDEwNjAwYjJdOm50aC1jaGlsZCg3KSB7XFxuICB0b3A6IDIuNSU7XFxuICByaWdodDogNDYlO1xcbn1cXG4uaWNvbnMgLmljb246bnRoLWNoaWxkKDcpIHBvbHlnb25bZGF0YS12LTQxMDYwMGIyXSB7XFxuICBzdHJva2U6ICM5RDY2RkU7XFxufVxcbi5pY29ucyAuaWNvbltkYXRhLXYtNDEwNjAwYjJdOm50aC1jaGlsZCg4KSB7XFxuICB0b3A6IDEzJTtcXG4gIHJpZ2h0OiAyLjUlO1xcbiAgdHJhbnNmb3JtOiByb3RhdGUoMjJkZWcpO1xcbn1cXG4uaWNvbnMgLmljb246bnRoLWNoaWxkKDgpIHBvbHlsaW5lW2RhdGEtdi00MTA2MDBiMl0sIC5pY29ucyAuaWNvbjpudGgtY2hpbGQoOCkgcGF0aFtkYXRhLXYtNDEwNjAwYjJdLCAuaWNvbnMgLmljb246bnRoLWNoaWxkKDgpIGxpbmVbZGF0YS12LTQxMDYwMGIyXSB7XFxuICBzdHJva2U6ICNGRTYwNTc7XFxufVxcbi5pY29ucyAuaWNvbltkYXRhLXYtNDEwNjAwYjJdOm50aC1jaGlsZCg5KSB7XFxuICB0b3A6IDE0JTtcXG4gIHJpZ2h0OiAxMSU7XFxufVxcbi5pY29ucyAuaWNvbjpudGgtY2hpbGQoOSkgY2lyY2xlW2RhdGEtdi00MTA2MDBiMl0sIC5pY29ucyAuaWNvbjpudGgtY2hpbGQoOSkgbGluZVtkYXRhLXYtNDEwNjAwYjJdIHtcXG4gIHN0cm9rZTogIzlENjZGRTtcXG59XFxuLmljb25zIC5pY29uW2RhdGEtdi00MTA2MDBiMl06bnRoLWNoaWxkKDEwKSB7XFxuICB0b3A6IDI5JTtcXG4gIHJpZ2h0OiA3JTtcXG4gIHRyYW5zZm9ybTogcm90YXRlKDE5ZGVnKTtcXG59XFxuLmljb25zIC5pY29uW2RhdGEtdi00MTA2MDBiMl06bnRoLWNoaWxkKDExKSB7XFxuICB0b3A6IDM4JTtcXG4gIHJpZ2h0OiAzJTtcXG59XFxuLmljb25zIC5pY29uOm50aC1jaGlsZCgxMSkgcG9seWdvbltkYXRhLXYtNDEwNjAwYjJdIHtcXG4gIHN0cm9rZTogI0ZGQkQyRDtcXG59XFxuLmljb25zIC5pY29uW2RhdGEtdi00MTA2MDBiMl06bnRoLWNoaWxkKDEyKSB7XFxuICB0b3A6IDUwJTtcXG4gIHJpZ2h0OiAxMS41JTtcXG4gIHRyYW5zZm9ybTogcm90YXRlKC0yMmRlZyk7XFxufVxcbi5pY29ucyAuaWNvbltkYXRhLXYtNDEwNjAwYjJdOm50aC1jaGlsZCgxMykge1xcbiAgdG9wOiAzNCU7XFxuICByaWdodDogMTYlO1xcbiAgdHJhbnNmb3JtOiByb3RhdGUoMTNkZWcpO1xcbn1cXG4uaWNvbnMgLmljb246bnRoLWNoaWxkKDEzKSByZWN0W2RhdGEtdi00MTA2MDBiMl0ge1xcbiAgc3Ryb2tlOiAjMDBCQzdFO1xcbn1cXG4uaGVyby1zY3JlZW5zaG90W2RhdGEtdi00MTA2MDBiMl0ge1xcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xcbiAgei1pbmRleDogMTtcXG4gIHBhZGRpbmctdG9wOiA3NXB4O1xcbiAgcGFkZGluZy1ib3R0b206IDEzMHB4O1xcbn1cXG4uaGVyby1zY3JlZW5zaG90IGltZ1tkYXRhLXYtNDEwNjAwYjJdIHtcXG4gIGJvcmRlci1yYWRpdXM6IDhweDtcXG4gIHdpZHRoOiA4MCU7XFxuICBib3gtc2hhZG93OiAwIDdweCAyNTVweCByZ2JhKDI1LCA1NCwgNjAsIDAuMSk7XFxufVxcbi5oZXJvLXNjcmVlbnNob3QgaW1nLmhlcm8tZGFya1tkYXRhLXYtNDEwNjAwYjJdIHtcXG4gIGRpc3BsYXk6IG5vbmU7XFxufVxcbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogODkwcHgpIHtcXG4uaWNvbnNbZGF0YS12LTQxMDYwMGIyXSB7XFxuICAgIGRpc3BsYXk6IG5vbmU7XFxufVxcbi5oZXJvLXNjcmVlbnNob3RbZGF0YS12LTQxMDYwMGIyXSB7XFxuICAgIHBhZGRpbmctdG9wOiA0MHB4O1xcbiAgICBwYWRkaW5nLWJvdHRvbTogOTBweDtcXG59XFxuLmhlcm8tc2NyZWVuc2hvdCBpbWdbZGF0YS12LTQxMDYwMGIyXSB7XFxuICAgIHdpZHRoOiAxMDAlO1xcbn1cXG59XFxuQG1lZGlhIChwcmVmZXJzLWNvbG9yLXNjaGVtZTogZGFyaykge1xcbi5oZXJvLXNjcmVlbnNob3QgaW1nLmhlcm8tbGlnaHRbZGF0YS12LTQxMDYwMGIyXSB7XFxuICAgIGRpc3BsYXk6IG5vbmU7XFxufVxcbi5oZXJvLXNjcmVlbnNob3QgaW1nLmhlcm8tZGFya1tkYXRhLXYtNDEwNjAwYjJdIHtcXG4gICAgZGlzcGxheTogYmxvY2s7XFxuICAgIGJveC1zaGFkb3c6IDAgN3B4IDE4NXB4IHJnYmEoMCwgMCwgMCwgMC44KTtcXG59XFxufVxcblwiLCBcIlwiXSk7XG5cbi8vIGV4cG9ydHNcbiIsImV4cG9ydHMgPSBtb2R1bGUuZXhwb3J0cyA9IHJlcXVpcmUoXCIuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9saWIvY3NzLWJhc2UuanNcIikoZmFsc2UpO1xuLy8gaW1wb3J0c1xuXG5cbi8vIG1vZHVsZVxuZXhwb3J0cy5wdXNoKFttb2R1bGUuaWQsIFwiLmxhbmRpbmctcGFnZVtkYXRhLXYtNjc1YzA4MDJdIHtcXG4gIG92ZXJmbG93LXg6IGhpZGRlbjtcXG59XFxuLnBhZ2Utd3JhcHBlcltkYXRhLXYtNjc1YzA4MDJdIHtcXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcXG4gIG1hcmdpbjogMCBhdXRvO1xcbiAgcGFkZGluZy1sZWZ0OiAyNXB4O1xcbiAgcGFkZGluZy1yaWdodDogMjVweDtcXG59XFxuLnBhZ2Utd3JhcHBlci5sYXJnZVtkYXRhLXYtNjc1YzA4MDJdIHtcXG4gIHdpZHRoOiAxNDkwcHg7XFxufVxcbi5wYWdlLXdyYXBwZXIubWVkaXVtW2RhdGEtdi02NzVjMDgwMl0ge1xcbiAgd2lkdGg6IDExNTBweDtcXG59XFxuLnBhZ2Utd3JhcHBlci5zbWFsbFtkYXRhLXYtNjc1YzA4MDJdIHtcXG4gIHdpZHRoOiA4OTBweDtcXG59XFxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMzkwcHgpIHtcXG4ucGFnZS13cmFwcGVyLmxhcmdlW2RhdGEtdi02NzVjMDgwMl0ge1xcbiAgICB3aWR0aDogMTAwJTtcXG59XFxufVxcbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTE5MHB4KSB7XFxuLnBhZ2Utd3JhcHBlci5sYXJnZVtkYXRhLXYtNjc1YzA4MDJdIHtcXG4gICAgd2lkdGg6IDEwMCU7XFxufVxcbi5wYWdlLXdyYXBwZXIubWVkaXVtW2RhdGEtdi02NzVjMDgwMl0ge1xcbiAgICB3aWR0aDogMTAwJTtcXG59XFxufVxcbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTYwcHgpIHtcXG4ucGFnZS13cmFwcGVyW2RhdGEtdi02NzVjMDgwMl0ge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDI1cHg7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDI1cHg7XFxufVxcbi5wYWdlLXdyYXBwZXIuc21hbGxbZGF0YS12LTY3NWMwODAyXSB7XFxuICAgIHdpZHRoOiAxMDAlO1xcbn1cXG59XFxuLmljb25zIC5pY29uW2RhdGEtdi02NzVjMDgwMl0ge1xcbiAgcG9zaXRpb246IGFic29sdXRlO1xcbn1cXG4uaWNvbnMgLmljb25bZGF0YS12LTY3NWMwODAyXTpudGgtY2hpbGQoMjApIHtcXG4gIGJvdHRvbTogLTM3JTtcXG4gIGxlZnQ6IDM3JTtcXG4gIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xcbn1cXG4uaWNvbnMgLmljb246bnRoLWNoaWxkKDIwKSBjaXJjbGVbZGF0YS12LTY3NWMwODAyXSwgLmljb25zIC5pY29uOm50aC1jaGlsZCgyMCkgbGluZVtkYXRhLXYtNjc1YzA4MDJdIHtcXG4gIHN0cm9rZTogI0ZGQkQyRDtcXG59XFxuLmljb25zIC5pY29uW2RhdGEtdi02NzVjMDgwMl06bnRoLWNoaWxkKDE5KSB7XFxuICBib3R0b206IC0yMSU7XFxuICBsZWZ0OiAyMy41JTtcXG4gIHRyYW5zZm9ybTogcm90YXRlKC0yMGRlZyk7XFxufVxcbi5pY29ucyAuaWNvbjpudGgtY2hpbGQoMTkpIHBhdGhbZGF0YS12LTY3NWMwODAyXSwgLmljb25zIC5pY29uOm50aC1jaGlsZCgxOSkgbGluZVtkYXRhLXYtNjc1YzA4MDJdIHtcXG4gIHN0cm9rZTogIzlENjZGRTtcXG59XFxuLmljb25zIC5pY29uW2RhdGEtdi02NzVjMDgwMl06bnRoLWNoaWxkKDE4KSB7XFxuICBib3R0b206IC00JTtcXG4gIGxlZnQ6IDI2LjUlO1xcbiAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XFxufVxcbi5pY29ucyAuaWNvbjpudGgtY2hpbGQoMTgpIHBhdGhbZGF0YS12LTY3NWMwODAyXSB7XFxuICBzdHJva2U6ICMwMEJDN0U7XFxufVxcbi5pY29ucyAuaWNvbltkYXRhLXYtNjc1YzA4MDJdOm50aC1jaGlsZCgxNykge1xcbiAgYm90dG9tOiAtNSU7XFxuICBsZWZ0OiA4LjUlO1xcbiAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XFxufVxcbi5pY29ucyAuaWNvbltkYXRhLXYtNjc1YzA4MDJdOm50aC1jaGlsZCgxNikge1xcbiAgdG9wOiA4NiU7XFxuICBsZWZ0OiAxNyU7XFxuICB0cmFuc2Zvcm06IHJvdGF0ZSgxOGRlZyk7XFxufVxcbi5pY29ucyAuaWNvbltkYXRhLXYtNjc1YzA4MDJdOm50aC1jaGlsZCgxNSkge1xcbiAgdG9wOiA2NCU7XFxuICBsZWZ0OiAxNyU7XFxuICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcXG59XFxuLmljb25zIC5pY29uOm50aC1jaGlsZCgxNSkgcG9seWxpbmVbZGF0YS12LTY3NWMwODAyXSwgLmljb25zIC5pY29uOm50aC1jaGlsZCgxNSkgbGluZVtkYXRhLXYtNjc1YzA4MDJdLCAuaWNvbnMgLmljb246bnRoLWNoaWxkKDE1KSBwYXRoW2RhdGEtdi02NzVjMDgwMl0ge1xcbiAgc3Ryb2tlOiAjRkU2MDU3O1xcbn1cXG4uaWNvbnMgLmljb25bZGF0YS12LTY3NWMwODAyXTpudGgtY2hpbGQoMTQpIHtcXG4gIHRvcDogNDQlO1xcbiAgbGVmdDogMjglO1xcbiAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XFxufVxcbi5pY29ucyAuaWNvbjpudGgtY2hpbGQoMTQpIHBvbHlnb25bZGF0YS12LTY3NWMwODAyXSB7XFxuICBzdHJva2U6ICM5RDY2RkU7XFxufVxcbi5pY29ucyAuaWNvbltkYXRhLXYtNjc1YzA4MDJdOm50aC1jaGlsZCgxMykge1xcbiAgdG9wOiAzMyU7XFxuICBsZWZ0OiAxNiU7XFxuICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcXG59XFxuLmljb25zIC5pY29uW2RhdGEtdi02NzVjMDgwMl06bnRoLWNoaWxkKDEyKSB7XFxuICB0b3A6IDIzJTtcXG4gIGxlZnQ6IDMyJTtcXG4gIHRyYW5zZm9ybTogcm90YXRlKDEzZGVnKTtcXG59XFxuLmljb25zIC5pY29uOm50aC1jaGlsZCgxMikgbGluZVtkYXRhLXYtNjc1YzA4MDJdLCAuaWNvbnMgLmljb246bnRoLWNoaWxkKDEyKSBwYXRoW2RhdGEtdi02NzVjMDgwMl0ge1xcbiAgc3Ryb2tlOiAjRkZCRDJEO1xcbn1cXG4uaWNvbnMgLmljb25bZGF0YS12LTY3NWMwODAyXTpudGgtY2hpbGQoMSkge1xcbiAgdG9wOiAzNSU7XFxuICByaWdodDogNDklO1xcbiAgdHJhbnNmb3JtOiByb3RhdGUoLTExZGVnKTtcXG59XFxuLmljb25zIC5pY29uOm50aC1jaGlsZCgxKSBsaW5lW2RhdGEtdi02NzVjMDgwMl0sIC5pY29ucyAuaWNvbjpudGgtY2hpbGQoMSkgcGF0aFtkYXRhLXYtNjc1YzA4MDJdIHtcXG4gIHN0cm9rZTogIzAwQkM3RTtcXG59XFxuLmljb25zIC5pY29uW2RhdGEtdi02NzVjMDgwMl06bnRoLWNoaWxkKDIpIHtcXG4gIHRvcDogMTIlO1xcbiAgcmlnaHQ6IDQ1JTtcXG4gIHRyYW5zZm9ybTogcm90YXRlKDApO1xcbn1cXG4uaWNvbnMgLmljb246bnRoLWNoaWxkKDIpIGNpcmNsZVtkYXRhLXYtNjc1YzA4MDJdLCAuaWNvbnMgLmljb246bnRoLWNoaWxkKDIpIHBhdGhbZGF0YS12LTY3NWMwODAyXSB7XFxuICBzdHJva2U6ICNGRTYwNTc7XFxufVxcbi5pY29ucyAuaWNvbltkYXRhLXYtNjc1YzA4MDJdOm50aC1jaGlsZCgzKSB7XFxuICB0b3A6IDMwJTtcXG4gIHJpZ2h0OiAzMCU7XFxuICB0cmFuc2Zvcm06IHJvdGF0ZSgyMGRlZyk7XFxufVxcbi5pY29ucyAuaWNvbltkYXRhLXYtNjc1YzA4MDJdOm50aC1jaGlsZCg0KSB7XFxuICB0b3A6IDE0JTtcXG4gIHJpZ2h0OiAxNC41JTtcXG4gIHRyYW5zZm9ybTogcm90YXRlKC0xZGVnKTtcXG59XFxuLmljb25zIC5pY29uW2RhdGEtdi02NzVjMDgwMl06bnRoLWNoaWxkKDUpIHtcXG4gIHRvcDogNjIlO1xcbiAgcmlnaHQ6IDE1LjUlO1xcbiAgdHJhbnNmb3JtOiByb3RhdGUoMjFkZWcpO1xcbn1cXG4uaWNvbnMgLmljb246bnRoLWNoaWxkKDUpIHBvbHlsaW5lW2RhdGEtdi02NzVjMDgwMl0sIC5pY29ucyAuaWNvbjpudGgtY2hpbGQoNSkgcGF0aFtkYXRhLXYtNjc1YzA4MDJdLCAuaWNvbnMgLmljb246bnRoLWNoaWxkKDUpIGxpbmVbZGF0YS12LTY3NWMwODAyXSB7XFxuICBzdHJva2U6ICNGRTYwNTc7XFxufVxcbi5pY29ucyAuaWNvbltkYXRhLXYtNjc1YzA4MDJdOm50aC1jaGlsZCg2KSB7XFxuICB0b3A6IDY2JTtcXG4gIHJpZ2h0OiAyNi41JTtcXG4gIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xcbn1cXG4uaWNvbnMgLmljb25bZGF0YS12LTY3NWMwODAyXTpudGgtY2hpbGQoNykge1xcbiAgYm90dG9tOiAzJTtcXG4gIHJpZ2h0OiAyMS41JTtcXG4gIHRyYW5zZm9ybTogcm90YXRlKDE2ZGVnKTtcXG59XFxuLmljb25zIC5pY29uW2RhdGEtdi02NzVjMDgwMl06bnRoLWNoaWxkKDgpIHtcXG4gIGJvdHRvbTogLTEzJTtcXG4gIHJpZ2h0OiAxNi41JTtcXG4gIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xcbn1cXG4uaWNvbnMgLmljb246bnRoLWNoaWxkKDgpIHBvbHlnb25bZGF0YS12LTY3NWMwODAyXSB7XFxuICBzdHJva2U6ICNGRkJEMkQ7XFxufVxcbi5pY29ucyAuaWNvbltkYXRhLXYtNjc1YzA4MDJdOm50aC1jaGlsZCg5KSB7XFxuICBib3R0b206IC0zMiU7XFxuICByaWdodDogMjclO1xcbiAgdHJhbnNmb3JtOiByb3RhdGUoLTIwZGVnKTtcXG59XFxuLmljb25zIC5pY29uW2RhdGEtdi02NzVjMDgwMl06bnRoLWNoaWxkKDEwKSB7XFxuICBib3R0b206IC01JTtcXG4gIHJpZ2h0OiAzNCU7XFxuICB0cmFuc2Zvcm06IHJvdGF0ZSgxNmRlZyk7XFxufVxcbi5pY29ucyAuaWNvbjpudGgtY2hpbGQoMTApIHJlY3RbZGF0YS12LTY3NWMwODAyXSB7XFxuICBzdHJva2U6ICM5RDY2RkU7XFxufVxcbi5pY29ucyAuaWNvbltkYXRhLXYtNjc1YzA4MDJdOm50aC1jaGlsZCgxMSkge1xcbiAgYm90dG9tOiAtMjglO1xcbiAgcmlnaHQ6IDQ0JTtcXG4gIHRyYW5zZm9ybTogcm90YXRlKC0xMmRlZyk7XFxufVxcbi5pY29ucyAuaWNvbjpudGgtY2hpbGQoMTEpIHBvbHlsaW5lW2RhdGEtdi02NzVjMDgwMl0sIC5pY29ucyAuaWNvbjpudGgtY2hpbGQoMTEpIGxpbmVbZGF0YS12LTY3NWMwODAyXSwgLmljb25zIC5pY29uOm50aC1jaGlsZCgxMSkgcGF0aFtkYXRhLXYtNjc1YzA4MDJdIHtcXG4gIHN0cm9rZTogI0ZFNjA1NztcXG59XFxuLmNsb3VkLWJnW2RhdGEtdi02NzVjMDgwMl0ge1xcbiAgei1pbmRleDogMDtcXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcXG4gIHRvcDogNzBweDtcXG4gIHJpZ2h0OiA2MHB4O1xcbiAgdHJhbnNmb3JtOiBzY2FsZSgtMSwgMSkgcm90YXRlKDEzZGVnKTtcXG4gIG9wYWNpdHk6IDAuMTtcXG59XFxuLmNsb3VkLWJnIHBhdGhbZGF0YS12LTY3NWMwODAyXSB7XFxuICBzdHJva2U6IG5vbmU7XFxufVxcbi5wYWdlLXRpdGxlW2RhdGEtdi02NzVjMDgwMl0ge1xcbiAgcGFkZGluZy10b3A6IDM0MHB4O1xcbn1cXG4uZ2V0LXN0YXJ0ZWQtYnV0dG9uW2RhdGEtdi02NzVjMDgwMl0ge1xcbiAgZGlzcGxheTogZmxleDtcXG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XFxuICBvdXRsaW5lOiBub25lO1xcbiAgYm9yZGVyOiBub25lO1xcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XFxuICBtYXJnaW4tcmlnaHQ6IGF1dG87XFxuICBjdXJzb3I6IHBvaW50ZXI7XFxuICBwYWRkaW5nOiAyMHB4IDM2cHg7XFxuICBib3JkZXItcmFkaXVzOiA2cHg7XFxuICBtYXJnaW4tYm90dG9tOiAzOTVweDtcXG4gIHRyYW5zaXRpb246IDE1MG1zIGFsbCBlYXNlO1xcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xcbiAgei1pbmRleDogMTtcXG59XFxuLmdldC1zdGFydGVkLWJ1dHRvbiAuY29udGVudFtkYXRhLXYtNjc1YzA4MDJdIHtcXG4gIGZvbnQtc2l6ZTogMS4xODc1ZW07XFxuICBmb250LXdlaWdodDogNzAwO1xcbiAgbWFyZ2luLXJpZ2h0OiA4cHg7XFxuICBjb2xvcjogd2hpdGU7XFxufVxcbi5nZXQtc3RhcnRlZC1idXR0b24gcG9seWxpbmVbZGF0YS12LTY3NWMwODAyXSB7XFxuICBzdHJva2U6IHdoaXRlO1xcbn1cXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDExOTBweCkge1xcbi5nZXQtc3RhcnRlZC1idXR0b25bZGF0YS12LTY3NWMwODAyXSB7XFxuICAgIG1hcmdpbi1ib3R0b206IDI4MHB4O1xcbn1cXG59XFxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5NjBweCkge1xcbi5wYWdlLXRpdGxlW2RhdGEtdi02NzVjMDgwMl0ge1xcbiAgICBwYWRkaW5nLXRvcDogMjBweDtcXG59XFxuLmdldC1zdGFydGVkLWJ1dHRvbltkYXRhLXYtNjc1YzA4MDJdIHtcXG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDtcXG59XFxuLmNsb3VkLWJnW2RhdGEtdi02NzVjMDgwMl0sXFxuICAuaWNvbnNbZGF0YS12LTY3NWMwODAyXSB7XFxuICAgIGRpc3BsYXk6IG5vbmU7XFxufVxcbn1cXG5cIiwgXCJcIl0pO1xuXG4vLyBleHBvcnRzXG4iLCJpbXBvcnQgbW9kIGZyb20gXCItIS4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9zdHlsZS1sb2FkZXIvaW5kZXguanMhLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Nzcy1sb2FkZXIvaW5kZXguanMhLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL2xvYWRlcnMvc3R5bGVQb3N0TG9hZGVyLmpzIS4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9wb3N0Y3NzLWxvYWRlci9zcmMvaW5kZXguanM/P3JlZi0tNy0yIS4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9zYXNzLWxvYWRlci9kaXN0L2Nqcy5qcz8/cmVmLS03LTMhLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL2luZGV4LmpzPz92dWUtbG9hZGVyLW9wdGlvbnMhLi9BdXRoQnV0dG9uLnZ1ZT92dWUmdHlwZT1zdHlsZSZpbmRleD0wJmlkPTE2ZTlhZDU4JnNjb3BlZD10cnVlJmxhbmc9c2NzcyZcIjsgZXhwb3J0IGRlZmF1bHQgbW9kOyBleHBvcnQgKiBmcm9tIFwiLSEuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvc3R5bGUtbG9hZGVyL2luZGV4LmpzIS4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9jc3MtbG9hZGVyL2luZGV4LmpzIS4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9sb2FkZXJzL3N0eWxlUG9zdExvYWRlci5qcyEuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvcG9zdGNzcy1sb2FkZXIvc3JjL2luZGV4LmpzPz9yZWYtLTctMiEuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvc2Fzcy1sb2FkZXIvZGlzdC9janMuanM/P3JlZi0tNy0zIS4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9pbmRleC5qcz8/dnVlLWxvYWRlci1vcHRpb25zIS4vQXV0aEJ1dHRvbi52dWU/dnVlJnR5cGU9c3R5bGUmaW5kZXg9MCZpZD0xNmU5YWQ1OCZzY29wZWQ9dHJ1ZSZsYW5nPXNjc3MmXCIiLCJpbXBvcnQgbW9kIGZyb20gXCItIS4uLy4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9zdHlsZS1sb2FkZXIvaW5kZXguanMhLi4vLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Nzcy1sb2FkZXIvaW5kZXguanMhLi4vLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL2xvYWRlcnMvc3R5bGVQb3N0TG9hZGVyLmpzIS4uLy4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9wb3N0Y3NzLWxvYWRlci9zcmMvaW5kZXguanM/P3JlZi0tNy0yIS4uLy4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9zYXNzLWxvYWRlci9kaXN0L2Nqcy5qcz8/cmVmLS03LTMhLi4vLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL2luZGV4LmpzPz92dWUtbG9hZGVyLW9wdGlvbnMhLi9QYWdlVGl0bGUudnVlP3Z1ZSZ0eXBlPXN0eWxlJmluZGV4PTAmaWQ9NDYzMWM1ZjYmbGFuZz1zY3NzJnNjb3BlZD10cnVlJlwiOyBleHBvcnQgZGVmYXVsdCBtb2Q7IGV4cG9ydCAqIGZyb20gXCItIS4uLy4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9zdHlsZS1sb2FkZXIvaW5kZXguanMhLi4vLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Nzcy1sb2FkZXIvaW5kZXguanMhLi4vLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL2xvYWRlcnMvc3R5bGVQb3N0TG9hZGVyLmpzIS4uLy4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9wb3N0Y3NzLWxvYWRlci9zcmMvaW5kZXguanM/P3JlZi0tNy0yIS4uLy4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9zYXNzLWxvYWRlci9kaXN0L2Nqcy5qcz8/cmVmLS03LTMhLi4vLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL2luZGV4LmpzPz92dWUtbG9hZGVyLW9wdGlvbnMhLi9QYWdlVGl0bGUudnVlP3Z1ZSZ0eXBlPXN0eWxlJmluZGV4PTAmaWQ9NDYzMWM1ZjYmbGFuZz1zY3NzJnNjb3BlZD10cnVlJlwiIiwiZXhwb3J0cyA9IG1vZHVsZS5leHBvcnRzID0gcmVxdWlyZShcIi4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9jc3MtbG9hZGVyL2xpYi9jc3MtYmFzZS5qc1wiKShmYWxzZSk7XG4vLyBpbXBvcnRzXG5cblxuLy8gbW9kdWxlXG5leHBvcnRzLnB1c2goW21vZHVsZS5pZCwgXCIuYnV0dG9uW2RhdGEtdi0xNmU5YWQ1OF0ge1xcbiAgY3Vyc29yOiBwb2ludGVyO1xcbiAgYm9yZGVyLXJhZGl1czogOHB4O1xcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xcbiAgcGFkZGluZzogMTJweCAzMnB4O1xcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xcbiAgbWFyZ2luLWxlZnQ6IDE1cHg7XFxuICBtYXJnaW4tcmlnaHQ6IDE1cHg7XFxuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xcbiAgdHJhbnNpdGlvbjogMTUwbXMgYWxsIGVhc2U7XFxuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcXG59XFxuLmJ1dHRvbiAudGV4dC1sYWJlbFtkYXRhLXYtMTZlOWFkNThdIHtcXG4gIHRyYW5zaXRpb246IDE1MG1zIGFsbCBlYXNlO1xcbiAgZm9udC1zaXplOiAxLjA2MjVlbTtcXG4gIGZvbnQtd2VpZ2h0OiA4MDA7XFxuICBsaW5lLWhlaWdodDogMDtcXG59XFxuLmJ1dHRvbiAuaWNvbltkYXRhLXYtMTZlOWFkNThdIHtcXG4gIG1hcmdpbi1sZWZ0OiAxMnB4O1xcbiAgZm9udC1zaXplOiAxZW07XFxufVxcbi5idXR0b24uc29saWRbZGF0YS12LTE2ZTlhZDU4XSB7XFxuICBiYWNrZ3JvdW5kOiAjMDBCQzdFO1xcbiAgYm9yZGVyOiAycHggc29saWQgIzAwQkM3RTtcXG59XFxuLmJ1dHRvbi5zb2xpZCAudGV4dC1sYWJlbFtkYXRhLXYtMTZlOWFkNThdIHtcXG4gIGNvbG9yOiB3aGl0ZTtcXG59XFxuLmJ1dHRvbi5vdXRsaW5lW2RhdGEtdi0xNmU5YWQ1OF0ge1xcbiAgYm9yZGVyOiAycHggc29saWQgIzFCMjUzOTtcXG59XFxuLmJ1dHRvbi5vdXRsaW5lIC50ZXh0LWxhYmVsW2RhdGEtdi0xNmU5YWQ1OF0ge1xcbiAgY29sb3I6ICMxQjI1Mzk7XFxufVxcbi5idXR0b24ub3V0bGluZSAuaWNvbiBwYXRoW2RhdGEtdi0xNmU5YWQ1OF0ge1xcbiAgZmlsbDogaW5oZXJpdDtcXG59XFxuLmJ1dHRvbi5vdXRsaW5lW2RhdGEtdi0xNmU5YWQ1OF06aG92ZXIge1xcbiAgYm9yZGVyLWNvbG9yOiBpbmhlcml0O1xcbn1cXG4uYnV0dG9uLm91dGxpbmU6aG92ZXIgLnRleHQtbGFiZWxbZGF0YS12LTE2ZTlhZDU4XSB7XFxuICBjb2xvcjogaW5oZXJpdDtcXG59XFxuQG1lZGlhIChwcmVmZXJzLWNvbG9yLXNjaGVtZTogZGFyaykge1xcbi5idXR0b24ub3V0bGluZVtkYXRhLXYtMTZlOWFkNThdIHtcXG4gICAgYmFja2dyb3VuZDogIzEzMTQxNDtcXG4gICAgYm9yZGVyLWNvbG9yOiAjYmVjNmNmO1xcbn1cXG4uYnV0dG9uLm91dGxpbmUgLnRleHQtbGFiZWxbZGF0YS12LTE2ZTlhZDU4XSB7XFxuICAgIGNvbG9yOiAjYmVjNmNmO1xcbn1cXG59XFxuLnN5bmMtYWx0W2RhdGEtdi0xNmU5YWQ1OF0ge1xcbiAgLXdlYmtpdC1hbmltYXRpb246IHNwaW4tZGF0YS12LTE2ZTlhZDU4IDFzIGxpbmVhciBpbmZpbml0ZTtcXG4gICAgICAgICAgYW5pbWF0aW9uOiBzcGluLWRhdGEtdi0xNmU5YWQ1OCAxcyBsaW5lYXIgaW5maW5pdGU7XFxufVxcbkAtd2Via2l0LWtleWZyYW1lcyBzcGluLWRhdGEtdi0xNmU5YWQ1OCB7XFxuMCUge1xcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwKTtcXG59XFxuMTAwJSB7XFxuICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XFxufVxcbn1cXG5Aa2V5ZnJhbWVzIHNwaW4tZGF0YS12LTE2ZTlhZDU4IHtcXG4wJSB7XFxuICAgIHRyYW5zZm9ybTogcm90YXRlKDApO1xcbn1cXG4xMDAlIHtcXG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcXG59XFxufVxcblwiLCBcIlwiXSk7XG5cbi8vIGV4cG9ydHNcbiIsImV4cG9ydHMgPSBtb2R1bGUuZXhwb3J0cyA9IHJlcXVpcmUoXCIuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9saWIvY3NzLWJhc2UuanNcIikoZmFsc2UpO1xuLy8gaW1wb3J0c1xuXG5cbi8vIG1vZHVsZVxuZXhwb3J0cy5wdXNoKFttb2R1bGUuaWQsIFwiLmxhbmRpbmctcGFnZVtkYXRhLXYtMzZiZmNkM2NdIHtcXG4gIG92ZXJmbG93LXg6IGhpZGRlbjtcXG59XFxuLnBhZ2Utd3JhcHBlcltkYXRhLXYtMzZiZmNkM2NdIHtcXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcXG4gIG1hcmdpbjogMCBhdXRvO1xcbiAgcGFkZGluZy1sZWZ0OiAyNXB4O1xcbiAgcGFkZGluZy1yaWdodDogMjVweDtcXG59XFxuLnBhZ2Utd3JhcHBlci5sYXJnZVtkYXRhLXYtMzZiZmNkM2NdIHtcXG4gIHdpZHRoOiAxNDkwcHg7XFxufVxcbi5wYWdlLXdyYXBwZXIubWVkaXVtW2RhdGEtdi0zNmJmY2QzY10ge1xcbiAgd2lkdGg6IDExNTBweDtcXG59XFxuLnBhZ2Utd3JhcHBlci5zbWFsbFtkYXRhLXYtMzZiZmNkM2NdIHtcXG4gIHdpZHRoOiA4OTBweDtcXG59XFxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMzkwcHgpIHtcXG4ucGFnZS13cmFwcGVyLmxhcmdlW2RhdGEtdi0zNmJmY2QzY10ge1xcbiAgICB3aWR0aDogMTAwJTtcXG59XFxufVxcbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTE5MHB4KSB7XFxuLnBhZ2Utd3JhcHBlci5sYXJnZVtkYXRhLXYtMzZiZmNkM2NdIHtcXG4gICAgd2lkdGg6IDEwMCU7XFxufVxcbi5wYWdlLXdyYXBwZXIubWVkaXVtW2RhdGEtdi0zNmJmY2QzY10ge1xcbiAgICB3aWR0aDogMTAwJTtcXG59XFxufVxcbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTYwcHgpIHtcXG4ucGFnZS13cmFwcGVyW2RhdGEtdi0zNmJmY2QzY10ge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDI1cHg7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDI1cHg7XFxufVxcbi5wYWdlLXdyYXBwZXIuc21hbGxbZGF0YS12LTM2YmZjZDNjXSB7XFxuICAgIHdpZHRoOiAxMDAlO1xcbn1cXG59XFxuLmZlYXR1cmVzW2RhdGEtdi0zNmJmY2QzY10ge1xcbiAgcGFkZGluZy1sZWZ0OiA3NXB4O1xcbn1cXG4uZmVhdHVyZXMgLmZlYXR1cmVbZGF0YS12LTM2YmZjZDNjXSB7XFxuICBtYXJnaW4tYm90dG9tOiAyNXB4O1xcbn1cXG4uZmVhdHVyZXMgLmZlYXR1cmUgLnRpdGxlW2RhdGEtdi0zNmJmY2QzY10ge1xcbiAgZm9udC1zaXplOiAxLjYyNWVtO1xcbiAgZm9udC13ZWlnaHQ6IDgwMDtcXG4gIG1hcmdpbi1ib3R0b206IDRweDtcXG59XFxuLmZlYXR1cmVzIC5mZWF0dXJlIC5kZXNjcmlwdGlvbltkYXRhLXYtMzZiZmNkM2NdIHtcXG4gIGxpbmUtaGVpZ2h0OiAxLjU7XFxuICBjb2xvcjogcmdiYSgyNywgMzcsIDU3LCAwLjcpO1xcbiAgZm9udC1zaXplOiAxLjEyNWVtO1xcbn1cXG4uZmVhdHVyZXMgLmZlYXR1cmUgLmljb25bZGF0YS12LTM2YmZjZDNjXSB7XFxuICBib3JkZXItcmFkaXVzOiAxMnB4O1xcbiAgd2lkdGg6IDQ0cHg7XFxuICBoZWlnaHQ6IDQ0cHg7XFxuICBkaXNwbGF5OiBmbGV4O1xcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcXG4gIG1hcmdpbi1ib3R0b206IDE4cHg7XFxufVxcbi5mZWF0dXJlcyAuZmVhdHVyZSAuaWNvbiBzdmdbZGF0YS12LTM2YmZjZDNjXSB7XFxuICBtYXJnaW46IDAgYXV0bztcXG59XFxuLmZlYXR1cmVzIC5mZWF0dXJlOm50aC1jaGlsZCgxKSAuaWNvbltkYXRhLXYtMzZiZmNkM2NdIHtcXG4gIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAxODksIDQ1LCAwLjEpO1xcbn1cXG4uZmVhdHVyZXMgLmZlYXR1cmU6bnRoLWNoaWxkKDEpIC5pY29uIHBhdGhbZGF0YS12LTM2YmZjZDNjXSwgLmZlYXR1cmVzIC5mZWF0dXJlOm50aC1jaGlsZCgxKSAuaWNvbiBsaW5lW2RhdGEtdi0zNmJmY2QzY10sIC5mZWF0dXJlcyAuZmVhdHVyZTpudGgtY2hpbGQoMSkgLmljb24gcG9seWxpbmVbZGF0YS12LTM2YmZjZDNjXSwgLmZlYXR1cmVzIC5mZWF0dXJlOm50aC1jaGlsZCgxKSAuaWNvbiByZWN0W2RhdGEtdi0zNmJmY2QzY10sIC5mZWF0dXJlcyAuZmVhdHVyZTpudGgtY2hpbGQoMSkgLmljb24gY2lyY2xlW2RhdGEtdi0zNmJmY2QzY10ge1xcbiAgc3Ryb2tlOiAjRkZCRDJEO1xcbn1cXG4uZmVhdHVyZXMgLmZlYXR1cmU6bnRoLWNoaWxkKDIpIC5pY29uW2RhdGEtdi0zNmJmY2QzY10ge1xcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAxODgsIDEyNiwgMC4xKTtcXG59XFxuLmZlYXR1cmVzIC5mZWF0dXJlOm50aC1jaGlsZCgyKSAuaWNvbiBwYXRoW2RhdGEtdi0zNmJmY2QzY10sIC5mZWF0dXJlcyAuZmVhdHVyZTpudGgtY2hpbGQoMikgLmljb24gbGluZVtkYXRhLXYtMzZiZmNkM2NdLCAuZmVhdHVyZXMgLmZlYXR1cmU6bnRoLWNoaWxkKDIpIC5pY29uIHBvbHlsaW5lW2RhdGEtdi0zNmJmY2QzY10sIC5mZWF0dXJlcyAuZmVhdHVyZTpudGgtY2hpbGQoMikgLmljb24gcmVjdFtkYXRhLXYtMzZiZmNkM2NdLCAuZmVhdHVyZXMgLmZlYXR1cmU6bnRoLWNoaWxkKDIpIC5pY29uIGNpcmNsZVtkYXRhLXYtMzZiZmNkM2NdIHtcXG4gIHN0cm9rZTogIzAwQkM3RTtcXG59XFxuLmZlYXR1cmVzIC5mZWF0dXJlOm50aC1jaGlsZCgzKSAuaWNvbltkYXRhLXYtMzZiZmNkM2NdIHtcXG4gIGJhY2tncm91bmQ6IHJnYmEoMTU3LCAxMDIsIDI1NCwgMC4xKTtcXG59XFxuLmZlYXR1cmVzIC5mZWF0dXJlOm50aC1jaGlsZCgzKSAuaWNvbiBwYXRoW2RhdGEtdi0zNmJmY2QzY10sIC5mZWF0dXJlcyAuZmVhdHVyZTpudGgtY2hpbGQoMykgLmljb24gbGluZVtkYXRhLXYtMzZiZmNkM2NdLCAuZmVhdHVyZXMgLmZlYXR1cmU6bnRoLWNoaWxkKDMpIC5pY29uIHBvbHlsaW5lW2RhdGEtdi0zNmJmY2QzY10sIC5mZWF0dXJlcyAuZmVhdHVyZTpudGgtY2hpbGQoMykgLmljb24gcmVjdFtkYXRhLXYtMzZiZmNkM2NdLCAuZmVhdHVyZXMgLmZlYXR1cmU6bnRoLWNoaWxkKDMpIC5pY29uIGNpcmNsZVtkYXRhLXYtMzZiZmNkM2NdIHtcXG4gIHN0cm9rZTogIzlENjZGRTtcXG59XFxuLmNvbnRlbnRbZGF0YS12LTM2YmZjZDNjXSB7XFxuICBtYXJnaW4tdG9wOiAxMDdweDtcXG4gIGRpc3BsYXk6IGZsZXg7XFxufVxcbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTE5MHB4KSB7XFxuLmhlcm9bZGF0YS12LTM2YmZjZDNjXSB7XFxuICAgIGZsZXg6IDAgMCA2MCU7XFxufVxcbi5oZXJvIGltZ1tkYXRhLXYtMzZiZmNkM2NdIHtcXG4gICAgd2lkdGg6IDEwMCU7XFxufVxcbi5mZWF0dXJlc1tkYXRhLXYtMzZiZmNkM2NdIHtcXG4gICAgcGFkZGluZy1sZWZ0OiAyNXB4O1xcbiAgICBtYXJnaW4tdG9wOiAwcHg7XFxufVxcbn1cXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk2MHB4KSB7XFxuLmNvbnRlbnRbZGF0YS12LTM2YmZjZDNjXSB7XFxuICAgIGRpc3BsYXk6IGJsb2NrO1xcbiAgICBtYXJnaW4tdG9wOiA0MHB4O1xcbn1cXG4uZmVhdHVyZXNbZGF0YS12LTM2YmZjZDNjXSB7XFxuICAgIG1hcmdpbi10b3A6IDUwcHg7XFxuICAgIHBhZGRpbmctbGVmdDogMDtcXG59XFxuLmZlYXR1cmVzIC5mZWF0dXJlW2RhdGEtdi0zNmJmY2QzY10ge1xcbiAgICBtYXJnaW4tYm90dG9tOiAzNXB4O1xcbn1cXG4uZmVhdHVyZXMgLmZlYXR1cmUgLnRpdGxlW2RhdGEtdi0zNmJmY2QzY10ge1xcbiAgICBmb250LXNpemU6IDEuMzc1ZW07XFxufVxcbi5mZWF0dXJlcyAuZmVhdHVyZSAuZGVzY3JpcHRpb25bZGF0YS12LTM2YmZjZDNjXSB7XFxuICAgIGZvbnQtc2l6ZTogMWVtO1xcbn1cXG59XFxuQG1lZGlhIChwcmVmZXJzLWNvbG9yLXNjaGVtZTogZGFyaykge1xcbi5mZWF0dXJlcyAuZmVhdHVyZSAuZGVzY3JpcHRpb25bZGF0YS12LTM2YmZjZDNjXSB7XFxuICAgIGNvbG9yOiAjN2Q4NThjO1xcbn1cXG59XFxuXCIsIFwiXCJdKTtcblxuLy8gZXhwb3J0c1xuIiwiXG52YXIgY29udGVudCA9IHJlcXVpcmUoXCIhIS4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9jc3MtbG9hZGVyL2luZGV4LmpzIS4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9sb2FkZXJzL3N0eWxlUG9zdExvYWRlci5qcyEuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvcG9zdGNzcy1sb2FkZXIvc3JjL2luZGV4LmpzPz9yZWYtLTctMiEuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvc2Fzcy1sb2FkZXIvZGlzdC9janMuanM/P3JlZi0tNy0zIS4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9pbmRleC5qcz8/dnVlLWxvYWRlci1vcHRpb25zIS4vSW5kZXhNYWluRmVhdHVyZXMudnVlP3Z1ZSZ0eXBlPXN0eWxlJmluZGV4PTAmaWQ9MzZiZmNkM2MmbGFuZz1zY3NzJnNjb3BlZD10cnVlJlwiKTtcblxuaWYodHlwZW9mIGNvbnRlbnQgPT09ICdzdHJpbmcnKSBjb250ZW50ID0gW1ttb2R1bGUuaWQsIGNvbnRlbnQsICcnXV07XG5cbnZhciB0cmFuc2Zvcm07XG52YXIgaW5zZXJ0SW50bztcblxuXG5cbnZhciBvcHRpb25zID0ge1wiaG1yXCI6dHJ1ZX1cblxub3B0aW9ucy50cmFuc2Zvcm0gPSB0cmFuc2Zvcm1cbm9wdGlvbnMuaW5zZXJ0SW50byA9IHVuZGVmaW5lZDtcblxudmFyIHVwZGF0ZSA9IHJlcXVpcmUoXCIhLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL3N0eWxlLWxvYWRlci9saWIvYWRkU3R5bGVzLmpzXCIpKGNvbnRlbnQsIG9wdGlvbnMpO1xuXG5pZihjb250ZW50LmxvY2FscykgbW9kdWxlLmV4cG9ydHMgPSBjb250ZW50LmxvY2FscztcblxuaWYobW9kdWxlLmhvdCkge1xuXHRtb2R1bGUuaG90LmFjY2VwdChcIiEhLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Nzcy1sb2FkZXIvaW5kZXguanMhLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL2xvYWRlcnMvc3R5bGVQb3N0TG9hZGVyLmpzIS4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9wb3N0Y3NzLWxvYWRlci9zcmMvaW5kZXguanM/P3JlZi0tNy0yIS4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9zYXNzLWxvYWRlci9kaXN0L2Nqcy5qcz8/cmVmLS03LTMhLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL2luZGV4LmpzPz92dWUtbG9hZGVyLW9wdGlvbnMhLi9JbmRleE1haW5GZWF0dXJlcy52dWU/dnVlJnR5cGU9c3R5bGUmaW5kZXg9MCZpZD0zNmJmY2QzYyZsYW5nPXNjc3Mmc2NvcGVkPXRydWUmXCIsIGZ1bmN0aW9uKCkge1xuXHRcdHZhciBuZXdDb250ZW50ID0gcmVxdWlyZShcIiEhLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Nzcy1sb2FkZXIvaW5kZXguanMhLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL2xvYWRlcnMvc3R5bGVQb3N0TG9hZGVyLmpzIS4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9wb3N0Y3NzLWxvYWRlci9zcmMvaW5kZXguanM/P3JlZi0tNy0yIS4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9zYXNzLWxvYWRlci9kaXN0L2Nqcy5qcz8/cmVmLS03LTMhLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL2luZGV4LmpzPz92dWUtbG9hZGVyLW9wdGlvbnMhLi9JbmRleE1haW5GZWF0dXJlcy52dWU/dnVlJnR5cGU9c3R5bGUmaW5kZXg9MCZpZD0zNmJmY2QzYyZsYW5nPXNjc3Mmc2NvcGVkPXRydWUmXCIpO1xuXG5cdFx0aWYodHlwZW9mIG5ld0NvbnRlbnQgPT09ICdzdHJpbmcnKSBuZXdDb250ZW50ID0gW1ttb2R1bGUuaWQsIG5ld0NvbnRlbnQsICcnXV07XG5cblx0XHR2YXIgbG9jYWxzID0gKGZ1bmN0aW9uKGEsIGIpIHtcblx0XHRcdHZhciBrZXksIGlkeCA9IDA7XG5cblx0XHRcdGZvcihrZXkgaW4gYSkge1xuXHRcdFx0XHRpZighYiB8fCBhW2tleV0gIT09IGJba2V5XSkgcmV0dXJuIGZhbHNlO1xuXHRcdFx0XHRpZHgrKztcblx0XHRcdH1cblxuXHRcdFx0Zm9yKGtleSBpbiBiKSBpZHgtLTtcblxuXHRcdFx0cmV0dXJuIGlkeCA9PT0gMDtcblx0XHR9KGNvbnRlbnQubG9jYWxzLCBuZXdDb250ZW50LmxvY2FscykpO1xuXG5cdFx0aWYoIWxvY2FscykgdGhyb3cgbmV3IEVycm9yKCdBYm9ydGluZyBDU1MgSE1SIGR1ZSB0byBjaGFuZ2VkIGNzcy1tb2R1bGVzIGxvY2Fscy4nKTtcblxuXHRcdHVwZGF0ZShuZXdDb250ZW50KTtcblx0fSk7XG5cblx0bW9kdWxlLmhvdC5kaXNwb3NlKGZ1bmN0aW9uKCkgeyB1cGRhdGUoKTsgfSk7XG59IiwiXG52YXIgY29udGVudCA9IHJlcXVpcmUoXCIhIS4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9jc3MtbG9hZGVyL2luZGV4LmpzIS4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9sb2FkZXJzL3N0eWxlUG9zdExvYWRlci5qcyEuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvcG9zdGNzcy1sb2FkZXIvc3JjL2luZGV4LmpzPz9yZWYtLTctMiEuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvc2Fzcy1sb2FkZXIvZGlzdC9janMuanM/P3JlZi0tNy0zIS4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9pbmRleC5qcz8/dnVlLWxvYWRlci1vcHRpb25zIS4vSW5kZXhQYWdlSGVhZGVyLnZ1ZT92dWUmdHlwZT1zdHlsZSZpbmRleD0wJmlkPTA1MzRmM2RkJmxhbmc9c2NzcyZzY29wZWQ9dHJ1ZSZcIik7XG5cbmlmKHR5cGVvZiBjb250ZW50ID09PSAnc3RyaW5nJykgY29udGVudCA9IFtbbW9kdWxlLmlkLCBjb250ZW50LCAnJ11dO1xuXG52YXIgdHJhbnNmb3JtO1xudmFyIGluc2VydEludG87XG5cblxuXG52YXIgb3B0aW9ucyA9IHtcImhtclwiOnRydWV9XG5cbm9wdGlvbnMudHJhbnNmb3JtID0gdHJhbnNmb3JtXG5vcHRpb25zLmluc2VydEludG8gPSB1bmRlZmluZWQ7XG5cbnZhciB1cGRhdGUgPSByZXF1aXJlKFwiIS4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9zdHlsZS1sb2FkZXIvbGliL2FkZFN0eWxlcy5qc1wiKShjb250ZW50LCBvcHRpb25zKTtcblxuaWYoY29udGVudC5sb2NhbHMpIG1vZHVsZS5leHBvcnRzID0gY29udGVudC5sb2NhbHM7XG5cbmlmKG1vZHVsZS5ob3QpIHtcblx0bW9kdWxlLmhvdC5hY2NlcHQoXCIhIS4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9jc3MtbG9hZGVyL2luZGV4LmpzIS4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9sb2FkZXJzL3N0eWxlUG9zdExvYWRlci5qcyEuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvcG9zdGNzcy1sb2FkZXIvc3JjL2luZGV4LmpzPz9yZWYtLTctMiEuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvc2Fzcy1sb2FkZXIvZGlzdC9janMuanM/P3JlZi0tNy0zIS4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9pbmRleC5qcz8/dnVlLWxvYWRlci1vcHRpb25zIS4vSW5kZXhQYWdlSGVhZGVyLnZ1ZT92dWUmdHlwZT1zdHlsZSZpbmRleD0wJmlkPTA1MzRmM2RkJmxhbmc9c2NzcyZzY29wZWQ9dHJ1ZSZcIiwgZnVuY3Rpb24oKSB7XG5cdFx0dmFyIG5ld0NvbnRlbnQgPSByZXF1aXJlKFwiISEuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9pbmRleC5qcyEuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvbG9hZGVycy9zdHlsZVBvc3RMb2FkZXIuanMhLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL3Bvc3Rjc3MtbG9hZGVyL3NyYy9pbmRleC5qcz8/cmVmLS03LTIhLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL3Nhc3MtbG9hZGVyL2Rpc3QvY2pzLmpzPz9yZWYtLTctMyEuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvaW5kZXguanM/P3Z1ZS1sb2FkZXItb3B0aW9ucyEuL0luZGV4UGFnZUhlYWRlci52dWU/dnVlJnR5cGU9c3R5bGUmaW5kZXg9MCZpZD0wNTM0ZjNkZCZsYW5nPXNjc3Mmc2NvcGVkPXRydWUmXCIpO1xuXG5cdFx0aWYodHlwZW9mIG5ld0NvbnRlbnQgPT09ICdzdHJpbmcnKSBuZXdDb250ZW50ID0gW1ttb2R1bGUuaWQsIG5ld0NvbnRlbnQsICcnXV07XG5cblx0XHR2YXIgbG9jYWxzID0gKGZ1bmN0aW9uKGEsIGIpIHtcblx0XHRcdHZhciBrZXksIGlkeCA9IDA7XG5cblx0XHRcdGZvcihrZXkgaW4gYSkge1xuXHRcdFx0XHRpZighYiB8fCBhW2tleV0gIT09IGJba2V5XSkgcmV0dXJuIGZhbHNlO1xuXHRcdFx0XHRpZHgrKztcblx0XHRcdH1cblxuXHRcdFx0Zm9yKGtleSBpbiBiKSBpZHgtLTtcblxuXHRcdFx0cmV0dXJuIGlkeCA9PT0gMDtcblx0XHR9KGNvbnRlbnQubG9jYWxzLCBuZXdDb250ZW50LmxvY2FscykpO1xuXG5cdFx0aWYoIWxvY2FscykgdGhyb3cgbmV3IEVycm9yKCdBYm9ydGluZyBDU1MgSE1SIGR1ZSB0byBjaGFuZ2VkIGNzcy1tb2R1bGVzIGxvY2Fscy4nKTtcblxuXHRcdHVwZGF0ZShuZXdDb250ZW50KTtcblx0fSk7XG5cblx0bW9kdWxlLmhvdC5kaXNwb3NlKGZ1bmN0aW9uKCkgeyB1cGRhdGUoKTsgfSk7XG59IiwiaW1wb3J0IG1vZCBmcm9tIFwiLSEuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvc3R5bGUtbG9hZGVyL2luZGV4LmpzIS4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9jc3MtbG9hZGVyL2luZGV4LmpzIS4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9sb2FkZXJzL3N0eWxlUG9zdExvYWRlci5qcyEuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvcG9zdGNzcy1sb2FkZXIvc3JjL2luZGV4LmpzPz9yZWYtLTctMiEuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvc2Fzcy1sb2FkZXIvZGlzdC9janMuanM/P3JlZi0tNy0zIS4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9pbmRleC5qcz8/dnVlLWxvYWRlci1vcHRpb25zIS4vSG9tZXBhZ2UudnVlP3Z1ZSZ0eXBlPXN0eWxlJmluZGV4PTAmaWQ9NjBmZTU3MWImbGFuZz1zY3NzJnNjb3BlZD10cnVlJlwiOyBleHBvcnQgZGVmYXVsdCBtb2Q7IGV4cG9ydCAqIGZyb20gXCItIS4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9zdHlsZS1sb2FkZXIvaW5kZXguanMhLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Nzcy1sb2FkZXIvaW5kZXguanMhLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL2xvYWRlcnMvc3R5bGVQb3N0TG9hZGVyLmpzIS4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9wb3N0Y3NzLWxvYWRlci9zcmMvaW5kZXguanM/P3JlZi0tNy0yIS4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9zYXNzLWxvYWRlci9kaXN0L2Nqcy5qcz8/cmVmLS03LTMhLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL2luZGV4LmpzPz92dWUtbG9hZGVyLW9wdGlvbnMhLi9Ib21lcGFnZS52dWU/dnVlJnR5cGU9c3R5bGUmaW5kZXg9MCZpZD02MGZlNTcxYiZsYW5nPXNjc3Mmc2NvcGVkPXRydWUmXCIiLCJ2YXIgcmVuZGVyID0gZnVuY3Rpb24gKCkge3ZhciBfdm09dGhpczt2YXIgX2g9X3ZtLiRjcmVhdGVFbGVtZW50O3ZhciBfYz1fdm0uX3NlbGYuX2N8fF9oO3JldHVybiBfYygnZGl2Jyx7c3RhdGljQ2xhc3M6XCJwYWdlLXRpdGxlIGxlZnRcIixjbGFzczpfdm0udHlwZX0sW19jKCdoMScse3N0YXRpY0NsYXNzOlwidGl0bGVcIixkb21Qcm9wczp7XCJpbm5lckhUTUxcIjpfdm0uX3MoX3ZtLnRpdGxlKX19KSxfdm0uX3YoXCIgXCIpLChfdm0uZGVzY3JpcHRpb24pP19jKCdoMicse3N0YXRpY0NsYXNzOlwiZGVzY3JpcHRpb25cIn0sW192bS5fdihcIlxcbiAgICAgICAgXCIrX3ZtLl9zKF92bS5kZXNjcmlwdGlvbikrXCJcXG4gICAgXCIpXSk6X3ZtLl9lKCldKX1cbnZhciBzdGF0aWNSZW5kZXJGbnMgPSBbXVxuXG5leHBvcnQgeyByZW5kZXIsIHN0YXRpY1JlbmRlckZucyB9IiwiaW1wb3J0IG1vZCBmcm9tIFwiLSEuLi8uLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvYmFiZWwtbG9hZGVyL2xpYi9pbmRleC5qcz8/cmVmLS00LTAhLi4vLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL2luZGV4LmpzPz92dWUtbG9hZGVyLW9wdGlvbnMhLi9QYWdlVGl0bGUudnVlP3Z1ZSZ0eXBlPXNjcmlwdCZsYW5nPWpzJlwiOyBleHBvcnQgZGVmYXVsdCBtb2Q7IGV4cG9ydCAqIGZyb20gXCItIS4uLy4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9iYWJlbC1sb2FkZXIvbGliL2luZGV4LmpzPz9yZWYtLTQtMCEuLi8uLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvaW5kZXguanM/P3Z1ZS1sb2FkZXItb3B0aW9ucyEuL1BhZ2VUaXRsZS52dWU/dnVlJnR5cGU9c2NyaXB0Jmxhbmc9anMmXCIiLCI8dGVtcGxhdGU+XG4gICAgPGRpdiBjbGFzcz1cInBhZ2UtdGl0bGUgbGVmdFwiIDpjbGFzcz1cInR5cGVcIj5cbiAgICAgICAgPGgxIGNsYXNzPVwidGl0bGVcIiB2LWh0bWw9XCJ0aXRsZVwiPjwvaDE+XG4gICAgICAgIDxoMiBjbGFzcz1cImRlc2NyaXB0aW9uXCIgdi1pZj1cImRlc2NyaXB0aW9uXCI+XG4gICAgICAgICAgICB7eyBkZXNjcmlwdGlvbiB9fVxuICAgICAgICA8L2gyPlxuICAgIDwvZGl2PlxuPC90ZW1wbGF0ZT5cblxuPHNjcmlwdD5cbiAgICBleHBvcnQgZGVmYXVsdCB7XG4gICAgICAgIG5hbWU6ICdJbmRleFBhZ2VUaWxlJyxcbiAgICAgICAgcHJvcHM6IFsndGl0bGUnLCAnZGVzY3JpcHRpb24nLCAndHlwZSddXG4gICAgfVxuPC9zY3JpcHQ+XG5cbjxzdHlsZSBsYW5nPVwic2Nzc1wiIHNjb3BlZD5cbiAgICBAaW1wb3J0ICdAYXNzZXRzL3Z1ZWZpbGVtYW5hZ2VyL19sYW5kaW5nLXBhZ2UnO1xuICAgIEBpbXBvcnQgJ0Bhc3NldHMvdnVlZmlsZW1hbmFnZXIvX3ZhcmlhYmxlcyc7XG4gICAgQGltcG9ydCAnQGFzc2V0cy92dWVmaWxlbWFuYWdlci9fbWl4aW5zJztcblxuICAgIC5wYWdlLXRpdGxlIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB6LWluZGV4OiAxO1xuXG4gICAgICAgICYuY2VudGVyIHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICAgICAgICAgLnRpdGxlIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiA3ODBweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmRlc2NyaXB0aW9uIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAudGl0bGUge1xuICAgICAgICAgICAgbWF4LXdpZHRoOiA1ODBweDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogNDhweDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA4MDA7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS4zO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDtcblxuICAgICAgICAgICAgL2RlZXAvIHNwYW4ge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogNDhweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5kZXNjcmlwdGlvbiB7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDU4MHB4O1xuICAgICAgICAgICAgQGluY2x1ZGUgZm9udC1zaXplKDIwKTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS42NTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk2MHB4KSB7XG4gICAgICAgIC5wYWdlLXRpdGxlIHtcblxuICAgICAgICAgICAgLnRpdGxlIHtcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAzMnB4O1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjI1O1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG5cbiAgICAgICAgICAgICAgICAvZGVlcC8gc3BhbiB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMzJweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5kZXNjcmlwdGlvbiB7XG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgxNik7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuPC9zdHlsZT5cbiIsImltcG9ydCB7IHJlbmRlciwgc3RhdGljUmVuZGVyRm5zIH0gZnJvbSBcIi4vUGFnZVRpdGxlLnZ1ZT92dWUmdHlwZT10ZW1wbGF0ZSZpZD00NjMxYzVmNiZzY29wZWQ9dHJ1ZSZcIlxuaW1wb3J0IHNjcmlwdCBmcm9tIFwiLi9QYWdlVGl0bGUudnVlP3Z1ZSZ0eXBlPXNjcmlwdCZsYW5nPWpzJlwiXG5leHBvcnQgKiBmcm9tIFwiLi9QYWdlVGl0bGUudnVlP3Z1ZSZ0eXBlPXNjcmlwdCZsYW5nPWpzJlwiXG5pbXBvcnQgc3R5bGUwIGZyb20gXCIuL1BhZ2VUaXRsZS52dWU/dnVlJnR5cGU9c3R5bGUmaW5kZXg9MCZpZD00NjMxYzVmNiZsYW5nPXNjc3Mmc2NvcGVkPXRydWUmXCJcblxuXG4vKiBub3JtYWxpemUgY29tcG9uZW50ICovXG5pbXBvcnQgbm9ybWFsaXplciBmcm9tIFwiIS4uLy4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9ydW50aW1lL2NvbXBvbmVudE5vcm1hbGl6ZXIuanNcIlxudmFyIGNvbXBvbmVudCA9IG5vcm1hbGl6ZXIoXG4gIHNjcmlwdCxcbiAgcmVuZGVyLFxuICBzdGF0aWNSZW5kZXJGbnMsXG4gIGZhbHNlLFxuICBudWxsLFxuICBcIjQ2MzFjNWY2XCIsXG4gIG51bGxcbiAgXG4pXG5cbmV4cG9ydCBkZWZhdWx0IGNvbXBvbmVudC5leHBvcnRzIiwiaW1wb3J0IG1vZCBmcm9tIFwiLSEuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvc3R5bGUtbG9hZGVyL2luZGV4LmpzIS4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9jc3MtbG9hZGVyL2luZGV4LmpzIS4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9sb2FkZXJzL3N0eWxlUG9zdExvYWRlci5qcyEuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvcG9zdGNzcy1sb2FkZXIvc3JjL2luZGV4LmpzPz9yZWYtLTctMiEuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvc2Fzcy1sb2FkZXIvZGlzdC9janMuanM/P3JlZi0tNy0zIS4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9pbmRleC5qcz8/dnVlLWxvYWRlci1vcHRpb25zIS4vSW5kZXhHZXRTdGFydGVkLnZ1ZT92dWUmdHlwZT1zdHlsZSZpbmRleD0wJmlkPTY3NWMwODAyJmxhbmc9c2NzcyZzY29wZWQ9dHJ1ZSZcIjsgZXhwb3J0IGRlZmF1bHQgbW9kOyBleHBvcnQgKiBmcm9tIFwiLSEuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvc3R5bGUtbG9hZGVyL2luZGV4LmpzIS4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9jc3MtbG9hZGVyL2luZGV4LmpzIS4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9sb2FkZXJzL3N0eWxlUG9zdExvYWRlci5qcyEuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvcG9zdGNzcy1sb2FkZXIvc3JjL2luZGV4LmpzPz9yZWYtLTctMiEuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvc2Fzcy1sb2FkZXIvZGlzdC9janMuanM/P3JlZi0tNy0zIS4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9pbmRleC5qcz8/dnVlLWxvYWRlci1vcHRpb25zIS4vSW5kZXhHZXRTdGFydGVkLnZ1ZT92dWUmdHlwZT1zdHlsZSZpbmRleD0wJmlkPTY3NWMwODAyJmxhbmc9c2NzcyZzY29wZWQ9dHJ1ZSZcIiIsImltcG9ydCBtb2QgZnJvbSBcIi0hLi4vLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL3N0eWxlLWxvYWRlci9pbmRleC5qcyEuLi8uLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9pbmRleC5qcyEuLi8uLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvbG9hZGVycy9zdHlsZVBvc3RMb2FkZXIuanMhLi4vLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL3Bvc3Rjc3MtbG9hZGVyL3NyYy9pbmRleC5qcz8/cmVmLS03LTIhLi4vLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL3Nhc3MtbG9hZGVyL2Rpc3QvY2pzLmpzPz9yZWYtLTctMyEuLi8uLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvaW5kZXguanM/P3Z1ZS1sb2FkZXItb3B0aW9ucyEuL1ByaWNpbmdUYWJsZXMudnVlP3Z1ZSZ0eXBlPXN0eWxlJmluZGV4PTAmaWQ9YTYzZjkwYWMmbGFuZz1zY3NzJnNjb3BlZD10cnVlJlwiOyBleHBvcnQgZGVmYXVsdCBtb2Q7IGV4cG9ydCAqIGZyb20gXCItIS4uLy4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9zdHlsZS1sb2FkZXIvaW5kZXguanMhLi4vLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Nzcy1sb2FkZXIvaW5kZXguanMhLi4vLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL2xvYWRlcnMvc3R5bGVQb3N0TG9hZGVyLmpzIS4uLy4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9wb3N0Y3NzLWxvYWRlci9zcmMvaW5kZXguanM/P3JlZi0tNy0yIS4uLy4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9zYXNzLWxvYWRlci9kaXN0L2Nqcy5qcz8/cmVmLS03LTMhLi4vLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL2luZGV4LmpzPz92dWUtbG9hZGVyLW9wdGlvbnMhLi9QcmljaW5nVGFibGVzLnZ1ZT92dWUmdHlwZT1zdHlsZSZpbmRleD0wJmlkPWE2M2Y5MGFjJmxhbmc9c2NzcyZzY29wZWQ9dHJ1ZSZcIiIsIlxudmFyIGNvbnRlbnQgPSByZXF1aXJlKFwiISEuLi8uLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9pbmRleC5qcyEuLi8uLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvbG9hZGVycy9zdHlsZVBvc3RMb2FkZXIuanMhLi4vLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL3Bvc3Rjc3MtbG9hZGVyL3NyYy9pbmRleC5qcz8/cmVmLS03LTIhLi4vLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL3Nhc3MtbG9hZGVyL2Rpc3QvY2pzLmpzPz9yZWYtLTctMyEuLi8uLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvaW5kZXguanM/P3Z1ZS1sb2FkZXItb3B0aW9ucyEuL1BhZ2VUaXRsZS52dWU/dnVlJnR5cGU9c3R5bGUmaW5kZXg9MCZpZD00NjMxYzVmNiZsYW5nPXNjc3Mmc2NvcGVkPXRydWUmXCIpO1xuXG5pZih0eXBlb2YgY29udGVudCA9PT0gJ3N0cmluZycpIGNvbnRlbnQgPSBbW21vZHVsZS5pZCwgY29udGVudCwgJyddXTtcblxudmFyIHRyYW5zZm9ybTtcbnZhciBpbnNlcnRJbnRvO1xuXG5cblxudmFyIG9wdGlvbnMgPSB7XCJobXJcIjp0cnVlfVxuXG5vcHRpb25zLnRyYW5zZm9ybSA9IHRyYW5zZm9ybVxub3B0aW9ucy5pbnNlcnRJbnRvID0gdW5kZWZpbmVkO1xuXG52YXIgdXBkYXRlID0gcmVxdWlyZShcIiEuLi8uLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvc3R5bGUtbG9hZGVyL2xpYi9hZGRTdHlsZXMuanNcIikoY29udGVudCwgb3B0aW9ucyk7XG5cbmlmKGNvbnRlbnQubG9jYWxzKSBtb2R1bGUuZXhwb3J0cyA9IGNvbnRlbnQubG9jYWxzO1xuXG5pZihtb2R1bGUuaG90KSB7XG5cdG1vZHVsZS5ob3QuYWNjZXB0KFwiISEuLi8uLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9pbmRleC5qcyEuLi8uLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvbG9hZGVycy9zdHlsZVBvc3RMb2FkZXIuanMhLi4vLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL3Bvc3Rjc3MtbG9hZGVyL3NyYy9pbmRleC5qcz8/cmVmLS03LTIhLi4vLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL3Nhc3MtbG9hZGVyL2Rpc3QvY2pzLmpzPz9yZWYtLTctMyEuLi8uLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvaW5kZXguanM/P3Z1ZS1sb2FkZXItb3B0aW9ucyEuL1BhZ2VUaXRsZS52dWU/dnVlJnR5cGU9c3R5bGUmaW5kZXg9MCZpZD00NjMxYzVmNiZsYW5nPXNjc3Mmc2NvcGVkPXRydWUmXCIsIGZ1bmN0aW9uKCkge1xuXHRcdHZhciBuZXdDb250ZW50ID0gcmVxdWlyZShcIiEhLi4vLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Nzcy1sb2FkZXIvaW5kZXguanMhLi4vLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL2xvYWRlcnMvc3R5bGVQb3N0TG9hZGVyLmpzIS4uLy4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9wb3N0Y3NzLWxvYWRlci9zcmMvaW5kZXguanM/P3JlZi0tNy0yIS4uLy4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9zYXNzLWxvYWRlci9kaXN0L2Nqcy5qcz8/cmVmLS03LTMhLi4vLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL2luZGV4LmpzPz92dWUtbG9hZGVyLW9wdGlvbnMhLi9QYWdlVGl0bGUudnVlP3Z1ZSZ0eXBlPXN0eWxlJmluZGV4PTAmaWQ9NDYzMWM1ZjYmbGFuZz1zY3NzJnNjb3BlZD10cnVlJlwiKTtcblxuXHRcdGlmKHR5cGVvZiBuZXdDb250ZW50ID09PSAnc3RyaW5nJykgbmV3Q29udGVudCA9IFtbbW9kdWxlLmlkLCBuZXdDb250ZW50LCAnJ11dO1xuXG5cdFx0dmFyIGxvY2FscyA9IChmdW5jdGlvbihhLCBiKSB7XG5cdFx0XHR2YXIga2V5LCBpZHggPSAwO1xuXG5cdFx0XHRmb3Ioa2V5IGluIGEpIHtcblx0XHRcdFx0aWYoIWIgfHwgYVtrZXldICE9PSBiW2tleV0pIHJldHVybiBmYWxzZTtcblx0XHRcdFx0aWR4Kys7XG5cdFx0XHR9XG5cblx0XHRcdGZvcihrZXkgaW4gYikgaWR4LS07XG5cblx0XHRcdHJldHVybiBpZHggPT09IDA7XG5cdFx0fShjb250ZW50LmxvY2FscywgbmV3Q29udGVudC5sb2NhbHMpKTtcblxuXHRcdGlmKCFsb2NhbHMpIHRocm93IG5ldyBFcnJvcignQWJvcnRpbmcgQ1NTIEhNUiBkdWUgdG8gY2hhbmdlZCBjc3MtbW9kdWxlcyBsb2NhbHMuJyk7XG5cblx0XHR1cGRhdGUobmV3Q29udGVudCk7XG5cdH0pO1xuXG5cdG1vZHVsZS5ob3QuZGlzcG9zZShmdW5jdGlvbigpIHsgdXBkYXRlKCk7IH0pO1xufSIsInZhciByZW5kZXIgPSBmdW5jdGlvbiAoKSB7dmFyIF92bT10aGlzO3ZhciBfaD1fdm0uJGNyZWF0ZUVsZW1lbnQ7dmFyIF9jPV92bS5fc2VsZi5fY3x8X2g7cmV0dXJuIF9jKCdmb290ZXInLHtzdGF0aWNDbGFzczpcInBhZ2Utd3JhcHBlciBtZWRpdW1cIn0sW19jKCdyb3V0ZXItbGluaycse3N0YXRpY0NsYXNzOlwibG9nb1wiLGF0dHJzOntcInRvXCI6e25hbWU6ICdIb21lcGFnZSd9LFwidGFnXCI6XCJkaXZcIn19LFsoX3ZtLmNvbmZpZy5hcHBfbG9nb19ob3Jpem9udGFsKT9fYygnaW1nJyx7YXR0cnM6e1wic3JjXCI6X3ZtLiRnZXRJbWFnZShfdm0uY29uZmlnLmFwcF9sb2dvX2hvcml6b250YWwpLFwiYWx0XCI6X3ZtLmNvbmZpZy5hcHBfbmFtZX19KTpfdm0uX2UoKSxfdm0uX3YoXCIgXCIpLCghIF92bS5jb25maWcuYXBwX2xvZ29faG9yaXpvbnRhbCk/X2MoJ2InLHtzdGF0aWNDbGFzczpcImxvZ28tdGV4dFwifSxbX3ZtLl92KF92bS5fcyhfdm0uY29uZmlnLmFwcF9uYW1lKSldKTpfdm0uX2UoKV0pLF92bS5fdihcIiBcIiksX2MoJ3VsJyx7c3RhdGljQ2xhc3M6XCJuYXZpZ2F0aW9uLWxpbmtzXCJ9LFtfYygnbGknLFtfYygncm91dGVyLWxpbmsnLHtzdGF0aWNDbGFzczpcImhvdmVyLXRleHQtdGhlbWVcIixhdHRyczp7XCJ0b1wiOntuYW1lOiAnQ29udGFjdFVzJ319fSxbX3ZtLl92KFwiXFxuICAgICAgICAgICAgICAgICAgICBcIitfdm0uX3MoX3ZtLiR0KCdwYWdlX2luZGV4Lm1lbnUuY29udGFjdF91cycpKStcIlxcbiAgICAgICAgICAgICAgICBcIildKV0sMSldKSxfdm0uX3YoXCIgXCIpLF9jKCd1bCcse3N0YXRpY0NsYXNzOlwibmF2aWdhdGlvbi1saW5rc1wifSxfdm0uX2woKF92bS5jb25maWcubGVnYWwpLGZ1bmN0aW9uKGxlZ2FsLGluZGV4KXtyZXR1cm4gKGxlZ2FsLnZpc2liaWxpdHkpP19jKCdsaScse2tleTppbmRleH0sW19jKCdyb3V0ZXItbGluaycse3N0YXRpY0NsYXNzOlwiaG92ZXItdGV4dC10aGVtZVwiLGF0dHJzOntcInRvXCI6e25hbWU6ICdEeW5hbWljUGFnZScsIHBhcmFtczoge3NsdWc6IGxlZ2FsLnNsdWcgfX19fSxbX3ZtLl92KFwiXFxuICAgICAgICAgICAgICAgICAgICBcIitfdm0uX3MobGVnYWwudGl0bGUpK1wiXFxuICAgICAgICAgICAgICAgIFwiKV0pXSwxKTpfdm0uX2UoKX0pLDApLF92bS5fdihcIiBcIiksX2MoJ3AnLHtzdGF0aWNDbGFzczpcImNvcHlyaWdodFwiLGRvbVByb3BzOntcImlubmVySFRNTFwiOl92bS5fcyhfdm0uY29uZmlnLmFwcF9mb290ZXIpfX0pXSwxKX1cbnZhciBzdGF0aWNSZW5kZXJGbnMgPSBbXVxuXG5leHBvcnQgeyByZW5kZXIsIHN0YXRpY1JlbmRlckZucyB9IiwiPHRlbXBsYXRlPlxuICAgIDxmb290ZXIgY2xhc3M9XCJwYWdlLXdyYXBwZXIgbWVkaXVtXCI+XG4gICAgICAgIDxyb3V0ZXItbGluayA6dG89XCJ7bmFtZTogJ0hvbWVwYWdlJ31cIiB0YWc9XCJkaXZcIiBjbGFzcz1cImxvZ29cIj5cbiAgICAgICAgICAgIDxpbWcgdi1pZj1cImNvbmZpZy5hcHBfbG9nb19ob3Jpem9udGFsXCIgOnNyYz1cIiRnZXRJbWFnZShjb25maWcuYXBwX2xvZ29faG9yaXpvbnRhbClcIiA6YWx0PVwiY29uZmlnLmFwcF9uYW1lXCI+XG4gICAgICAgICAgICA8YiB2LWlmPVwiISBjb25maWcuYXBwX2xvZ29faG9yaXpvbnRhbFwiIGNsYXNzPVwibG9nby10ZXh0XCI+e3sgY29uZmlnLmFwcF9uYW1lIH19PC9iPlxuICAgICAgICA8L3JvdXRlci1saW5rPlxuICAgICAgICA8dWwgY2xhc3M9XCJuYXZpZ2F0aW9uLWxpbmtzXCI+XG48IS0tICAgICAgICAgICAgPGxpPlxuICAgICAgICAgICAgICAgIDxhIGhyZWY9XCIvI3ByaWNpbmdcIj5cbiAgICAgICAgICAgICAgICAgICAge3sgJHQoJ3BhZ2VfaW5kZXgubWVudS5wcmljaW5nJykgfX1cbiAgICAgICAgICAgICAgICA8L2E+XG4gICAgICAgICAgICA8L2xpPi0tPlxuICAgICAgICAgICAgPGxpPlxuICAgICAgICAgICAgICAgIDxyb3V0ZXItbGluayA6dG89XCJ7bmFtZTogJ0NvbnRhY3RVcyd9XCIgY2xhc3M9XCJob3Zlci10ZXh0LXRoZW1lXCI+XG4gICAgICAgICAgICAgICAgICAgIHt7ICR0KCdwYWdlX2luZGV4Lm1lbnUuY29udGFjdF91cycpIH19XG4gICAgICAgICAgICAgICAgPC9yb3V0ZXItbGluaz5cbiAgICAgICAgICAgIDwvbGk+XG4gICAgICAgIDwvdWw+XG4gICAgICAgIDx1bCBjbGFzcz1cIm5hdmlnYXRpb24tbGlua3NcIj5cbiAgICAgICAgICAgIDxsaSB2LWlmPVwibGVnYWwudmlzaWJpbGl0eVwiIHYtZm9yPVwiKGxlZ2FsLCBpbmRleCkgaW4gY29uZmlnLmxlZ2FsXCIgOmtleT1cImluZGV4XCI+XG4gICAgICAgICAgICAgICAgPHJvdXRlci1saW5rIDp0bz1cIntuYW1lOiAnRHluYW1pY1BhZ2UnLCBwYXJhbXM6IHtzbHVnOiBsZWdhbC5zbHVnIH19XCIgY2xhc3M9XCJob3Zlci10ZXh0LXRoZW1lXCI+XG4gICAgICAgICAgICAgICAgICAgIHt7IGxlZ2FsLnRpdGxlIH19XG4gICAgICAgICAgICAgICAgPC9yb3V0ZXItbGluaz5cbiAgICAgICAgICAgIDwvbGk+XG4gICAgICAgIDwvdWw+XG4gICAgICAgIDxwIGNsYXNzPVwiY29weXJpZ2h0XCIgdi1odG1sPVwiY29uZmlnLmFwcF9mb290ZXJcIj48L3A+XG4gICAgPC9mb290ZXI+XG48L3RlbXBsYXRlPlxuXG48c2NyaXB0PlxuICAgIGltcG9ydCB7IG1hcEdldHRlcnMgfSBmcm9tICd2dWV4J1xuXG4gICAgZXhwb3J0IGRlZmF1bHQge1xuICAgICAgICBuYW1lOiAnSW5kZXhQYWdlRm9vdGVyJyxcbiAgICAgICAgY29tcHV0ZWQ6IHtcbiAgICAgICAgICAgIC4uLm1hcEdldHRlcnMoWydjb25maWcnXSksXG4gICAgICAgIH0sXG4gICAgfVxuPC9zY3JpcHQ+XG5cbjxzdHlsZSBsYW5nPVwic2Nzc1wiIHNjb3BlZD5cbiAgICBAaW1wb3J0ICdAYXNzZXRzL3Z1ZWZpbGVtYW5hZ2VyL19sYW5kaW5nLXBhZ2UnO1xuICAgIEBpbXBvcnQgJ0Bhc3NldHMvdnVlZmlsZW1hbmFnZXIvX3ZhcmlhYmxlcyc7XG4gICAgQGltcG9ydCAnQGFzc2V0cy92dWVmaWxlbWFuYWdlci9fbWl4aW5zJztcblxuICAgIGZvb3RlciB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgcGFkZGluZy10b3A6IDgwcHg7XG4gICAgfVxuXG4gICAgLmxvZ28ge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIGhlaWdodDogMzhweDtcbiAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICB9XG5cbiAgICAgICAgLmxvZ28tdGV4dCB7XG4gICAgICAgICAgICBmb250LXdlaWdodDogODAwO1xuICAgICAgICAgICAgQGluY2x1ZGUgZm9udC1zaXplKDI1KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5uYXZpZ2F0aW9uLWxpbmtzIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXG4gICAgICAgIGxpIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcblxuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMTlweDtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgxNyk7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbigxNTBtcyk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuY29weXJpZ2h0IHtcbiAgICAgICAgQGluY2x1ZGUgZm9udC1zaXplKDE3KTtcbiAgICAgICAgY29sb3I6ICR0ZXh0LW11dGVkO1xuICAgICAgICBwYWRkaW5nLXRvcDogNTBweDtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDIwcHg7XG5cbiAgICAgICAgL2RlZXAvIGEge1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTYwcHgpIHtcbiAgICAgICAgLm5hdmlnYXRpb24tbGlua3Mge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBcbiAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcblxuICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgQG1lZGlhIChwcmVmZXJzLWNvbG9yLXNjaGVtZTogZGFyaykge1xuXG4gICAgICAgIC5jb3B5cmlnaHQge1xuICAgICAgICAgICAgY29sb3I6ICRkYXJrX21vZGVfdGV4dF9zZWNvbmRhcnk7XG4gICAgICAgIH1cbiAgICB9XG48L3N0eWxlPlxuIiwiaW1wb3J0IG1vZCBmcm9tIFwiLSEuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvYmFiZWwtbG9hZGVyL2xpYi9pbmRleC5qcz8/cmVmLS00LTAhLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL2luZGV4LmpzPz92dWUtbG9hZGVyLW9wdGlvbnMhLi9JbmRleFBhZ2VGb290ZXIudnVlP3Z1ZSZ0eXBlPXNjcmlwdCZsYW5nPWpzJlwiOyBleHBvcnQgZGVmYXVsdCBtb2Q7IGV4cG9ydCAqIGZyb20gXCItIS4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9iYWJlbC1sb2FkZXIvbGliL2luZGV4LmpzPz9yZWYtLTQtMCEuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvaW5kZXguanM/P3Z1ZS1sb2FkZXItb3B0aW9ucyEuL0luZGV4UGFnZUZvb3Rlci52dWU/dnVlJnR5cGU9c2NyaXB0Jmxhbmc9anMmXCIiLCJpbXBvcnQgeyByZW5kZXIsIHN0YXRpY1JlbmRlckZucyB9IGZyb20gXCIuL0luZGV4UGFnZUZvb3Rlci52dWU/dnVlJnR5cGU9dGVtcGxhdGUmaWQ9NjE2M2RiMjgmc2NvcGVkPXRydWUmXCJcbmltcG9ydCBzY3JpcHQgZnJvbSBcIi4vSW5kZXhQYWdlRm9vdGVyLnZ1ZT92dWUmdHlwZT1zY3JpcHQmbGFuZz1qcyZcIlxuZXhwb3J0ICogZnJvbSBcIi4vSW5kZXhQYWdlRm9vdGVyLnZ1ZT92dWUmdHlwZT1zY3JpcHQmbGFuZz1qcyZcIlxuaW1wb3J0IHN0eWxlMCBmcm9tIFwiLi9JbmRleFBhZ2VGb290ZXIudnVlP3Z1ZSZ0eXBlPXN0eWxlJmluZGV4PTAmaWQ9NjE2M2RiMjgmbGFuZz1zY3NzJnNjb3BlZD10cnVlJlwiXG5cblxuLyogbm9ybWFsaXplIGNvbXBvbmVudCAqL1xuaW1wb3J0IG5vcm1hbGl6ZXIgZnJvbSBcIiEuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvcnVudGltZS9jb21wb25lbnROb3JtYWxpemVyLmpzXCJcbnZhciBjb21wb25lbnQgPSBub3JtYWxpemVyKFxuICBzY3JpcHQsXG4gIHJlbmRlcixcbiAgc3RhdGljUmVuZGVyRm5zLFxuICBmYWxzZSxcbiAgbnVsbCxcbiAgXCI2MTYzZGIyOFwiLFxuICBudWxsXG4gIFxuKVxuXG5leHBvcnQgZGVmYXVsdCBjb21wb25lbnQuZXhwb3J0cyIsImV4cG9ydHMgPSBtb2R1bGUuZXhwb3J0cyA9IHJlcXVpcmUoXCIuLi8uLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9saWIvY3NzLWJhc2UuanNcIikoZmFsc2UpO1xuLy8gaW1wb3J0c1xuXG5cbi8vIG1vZHVsZVxuZXhwb3J0cy5wdXNoKFttb2R1bGUuaWQsIFwiLnBsYW5zLXdyYXBwZXJbZGF0YS12LWE2M2Y5MGFjXSB7XFxuICBib3gtc2hhZG93OiAwIDdweCAyMHB4IDVweCByZ2JhKDI2LCAzNiwgNTUsIDAuMDUpO1xcbiAgYm9yZGVyLXJhZGl1czogOHB4O1xcbiAgYmFja2dyb3VuZDogd2hpdGU7XFxufVxcbi5wbGFuW2RhdGEtdi1hNjNmOTBhY10ge1xcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xcbiAgZmxleDogMCAwIDMzJTtcXG4gIHBhZGRpbmc6IDU1cHggMjVweCA3NXB4O1xcbn1cXG4ucGxhbltkYXRhLXYtYTYzZjkwYWNdOmxhc3QtY2hpbGQge1xcbiAgYm9yZGVyLXJpZ2h0OiBub25lO1xcbn1cXG4ucGxhbiAucGxhbi1oZWFkZXIgLmljb24gcGF0aFtkYXRhLXYtYTYzZjkwYWNdLCAucGxhbiAucGxhbi1oZWFkZXIgLmljb24gbGluZVtkYXRhLXYtYTYzZjkwYWNdLCAucGxhbiAucGxhbi1oZWFkZXIgLmljb24gcG9seWxpbmVbZGF0YS12LWE2M2Y5MGFjXSwgLnBsYW4gLnBsYW4taGVhZGVyIC5pY29uIHJlY3RbZGF0YS12LWE2M2Y5MGFjXSwgLnBsYW4gLnBsYW4taGVhZGVyIC5pY29uIGNpcmNsZVtkYXRhLXYtYTYzZjkwYWNdIHtcXG4gIGNvbG9yOiBpbmhlcml0O1xcbn1cXG4ucGxhbiAucGxhbi1oZWFkZXIgLnRpdGxlW2RhdGEtdi1hNjNmOTBhY10ge1xcbiAgZm9udC1zaXplOiAxLjM3NWVtO1xcbiAgZm9udC13ZWlnaHQ6IDgwMDtcXG4gIHBhZGRpbmctdG9wOiAxMHB4O1xcbn1cXG4ucGxhbiAucGxhbi1oZWFkZXIgLmRlc2NyaXB0aW9uW2RhdGEtdi1hNjNmOTBhY10ge1xcbiAgZm9udC1zaXplOiAwLjg3NWVtO1xcbiAgZm9udC13ZWlnaHQ6IDYwMDtcXG59XFxuLnBsYW4gLnBsYW4tZmVhdHVyZXNbZGF0YS12LWE2M2Y5MGFjXSB7XFxuICBtYXJnaW46IDU1cHggMDtcXG59XFxuLnBsYW4gLnBsYW4tZmVhdHVyZXMgLnN0b3JhZ2Utc2l6ZVtkYXRhLXYtYTYzZjkwYWNdIHtcXG4gIGZvbnQtc2l6ZTogM2VtO1xcbiAgZm9udC13ZWlnaHQ6IDkwMDtcXG4gIGxpbmUtaGVpZ2h0OiAxLjE7XFxufVxcbi5wbGFuIC5wbGFuLWZlYXR1cmVzIC5zdG9yYWdlLWRlc2NyaXB0aW9uW2RhdGEtdi1hNjNmOTBhY10ge1xcbiAgZGlzcGxheTogYmxvY2s7XFxuICBmb250LXNpemU6IDAuOTM3NWVtO1xcbiAgZm9udC13ZWlnaHQ6IDgwMDtcXG59XFxuLnBsYW4gLnBsYW4tZm9vdGVyIC5zaWduLWluLWJ1dHRvbltkYXRhLXYtYTYzZjkwYWNdIHtcXG4gIHdpZHRoOiAxMDAlO1xcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xcbn1cXG4ucGxhbiAucGxhbi1mb290ZXIgLnByaWNlW2RhdGEtdi1hNjNmOTBhY10ge1xcbiAgZm9udC1zaXplOiAxLjEyNWVtO1xcbiAgZGlzcGxheTogYmxvY2s7XFxuICBwYWRkaW5nLXRvcDogNXB4O1xcbn1cXG4ucGxhbiAucGxhbi1mb290ZXIgLnByaWNlIC52YXQtZGlzY2xhaW1lcltkYXRhLXYtYTYzZjkwYWNdIHtcXG4gIGZvbnQtc2l6ZTogMC42ODc1ZW07XFxuICBjb2xvcjogIzFCMjUzOTtcXG4gIGRpc3BsYXk6IGJsb2NrO1xcbiAgZm9udC13ZWlnaHQ6IDMwMDtcXG4gIG9wYWNpdHk6IDAuNDU7XFxuICBtYXJnaW4tdG9wOiA1cHg7XFxufVxcbi5wbGFucy13cmFwcGVyW2RhdGEtdi1hNjNmOTBhY10ge1xcbiAgZGlzcGxheTogZmxleDtcXG4gIGZsZXgtd3JhcDogd3JhcDtcXG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kO1xcbn1cXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk2MHB4KSB7XFxuLnBsYW5zLXdyYXBwZXJbZGF0YS12LWE2M2Y5MGFjXSB7XFxuICAgIGRpc3BsYXk6IGJsb2NrO1xcbiAgICBtYXJnaW46IDA7XFxufVxcbi5wbGFucy13cmFwcGVyIC5wbGFuW2RhdGEtdi1hNjNmOTBhY10ge1xcbiAgICBwYWRkaW5nOiAzMHB4IDI1cHg7XFxuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjRjdGN0Y3O1xcbiAgICBib3JkZXItcmlnaHQ6IG5vbmU7XFxufVxcbn1cXG5AbWVkaWEgKHByZWZlcnMtY29sb3Itc2NoZW1lOiBkYXJrKSB7XFxuLnBsYW5zLXdyYXBwZXJbZGF0YS12LWE2M2Y5MGFjXSB7XFxuICAgIGJhY2tncm91bmQ6ICMxZTIwMjQ7XFxufVxcbi5wbGFuW2RhdGEtdi1hNjNmOTBhY10ge1xcbiAgICBib3JkZXItY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wMikgIWltcG9ydGFudDtcXG59XFxuLnBsYW4gLnBsYW4td3JhcHBlcltkYXRhLXYtYTYzZjkwYWNdIHtcXG4gICAgYmFja2dyb3VuZDogIzFlMjAyNDtcXG59XFxuLnBsYW4gLnBsYW4taGVhZGVyIC50aXRsZVtkYXRhLXYtYTYzZjkwYWNdIHtcXG4gICAgY29sb3I6ICNiZWM2Y2Y7XFxufVxcbi5wbGFuIC5wbGFuLWhlYWRlciAuZGVzY3JpcHRpb25bZGF0YS12LWE2M2Y5MGFjXSB7XFxuICAgIGNvbG9yOiAjN2Q4NThjO1xcbn1cXG4ucGxhbiAucGxhbi1mZWF0dXJlcyAuc3RvcmFnZS1zaXplW2RhdGEtdi1hNjNmOTBhY10ge1xcbiAgICBjb2xvcjogI2JlYzZjZjtcXG59XFxuLnBsYW4gLnBsYW4tZmVhdHVyZXMgLnN0b3JhZ2UtZGVzY3JpcHRpb25bZGF0YS12LWE2M2Y5MGFjXSB7XFxuICAgIGNvbG9yOiAjYmVjNmNmO1xcbn1cXG4ucGxhbiAucGxhbi1mb290ZXIgLnNpZ24taW4tYnV0dG9uW2RhdGEtdi1hNjNmOTBhY10ge1xcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDE4OCwgMTI2LCAwLjEpO1xcbn1cXG4ucGxhbiAucGxhbi1mb290ZXIgLnNpZ24taW4tYnV0dG9uW2RhdGEtdi1hNjNmOTBhY10gLmNvbnRlbnQge1xcbiAgICBjb2xvcjogIzAwQkM3RTtcXG59XFxuLnBsYW4gLnBsYW4tZm9vdGVyIC5wcmljZSAudmF0LWRpc2NsYWltZXJbZGF0YS12LWE2M2Y5MGFjXSB7XFxuICAgIGNvbG9yOiAjYmVjNmNmO1xcbn1cXG59XFxuXCIsIFwiXCJdKTtcblxuLy8gZXhwb3J0c1xuIiwiXG52YXIgY29udGVudCA9IHJlcXVpcmUoXCIhIS4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9jc3MtbG9hZGVyL2luZGV4LmpzIS4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9sb2FkZXJzL3N0eWxlUG9zdExvYWRlci5qcyEuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvcG9zdGNzcy1sb2FkZXIvc3JjL2luZGV4LmpzPz9yZWYtLTctMiEuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvc2Fzcy1sb2FkZXIvZGlzdC9janMuanM/P3JlZi0tNy0zIS4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9pbmRleC5qcz8/dnVlLWxvYWRlci1vcHRpb25zIS4vSW5kZXhQcmljaW5nVGFibGVzLnZ1ZT92dWUmdHlwZT1zdHlsZSZpbmRleD0wJmlkPWY2ZjQ1ZTg0Jmxhbmc9c2NzcyZzY29wZWQ9dHJ1ZSZcIik7XG5cbmlmKHR5cGVvZiBjb250ZW50ID09PSAnc3RyaW5nJykgY29udGVudCA9IFtbbW9kdWxlLmlkLCBjb250ZW50LCAnJ11dO1xuXG52YXIgdHJhbnNmb3JtO1xudmFyIGluc2VydEludG87XG5cblxuXG52YXIgb3B0aW9ucyA9IHtcImhtclwiOnRydWV9XG5cbm9wdGlvbnMudHJhbnNmb3JtID0gdHJhbnNmb3JtXG5vcHRpb25zLmluc2VydEludG8gPSB1bmRlZmluZWQ7XG5cbnZhciB1cGRhdGUgPSByZXF1aXJlKFwiIS4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9zdHlsZS1sb2FkZXIvbGliL2FkZFN0eWxlcy5qc1wiKShjb250ZW50LCBvcHRpb25zKTtcblxuaWYoY29udGVudC5sb2NhbHMpIG1vZHVsZS5leHBvcnRzID0gY29udGVudC5sb2NhbHM7XG5cbmlmKG1vZHVsZS5ob3QpIHtcblx0bW9kdWxlLmhvdC5hY2NlcHQoXCIhIS4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9jc3MtbG9hZGVyL2luZGV4LmpzIS4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9sb2FkZXJzL3N0eWxlUG9zdExvYWRlci5qcyEuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvcG9zdGNzcy1sb2FkZXIvc3JjL2luZGV4LmpzPz9yZWYtLTctMiEuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvc2Fzcy1sb2FkZXIvZGlzdC9janMuanM/P3JlZi0tNy0zIS4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9pbmRleC5qcz8/dnVlLWxvYWRlci1vcHRpb25zIS4vSW5kZXhQcmljaW5nVGFibGVzLnZ1ZT92dWUmdHlwZT1zdHlsZSZpbmRleD0wJmlkPWY2ZjQ1ZTg0Jmxhbmc9c2NzcyZzY29wZWQ9dHJ1ZSZcIiwgZnVuY3Rpb24oKSB7XG5cdFx0dmFyIG5ld0NvbnRlbnQgPSByZXF1aXJlKFwiISEuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9pbmRleC5qcyEuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvbG9hZGVycy9zdHlsZVBvc3RMb2FkZXIuanMhLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL3Bvc3Rjc3MtbG9hZGVyL3NyYy9pbmRleC5qcz8/cmVmLS03LTIhLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL3Nhc3MtbG9hZGVyL2Rpc3QvY2pzLmpzPz9yZWYtLTctMyEuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvaW5kZXguanM/P3Z1ZS1sb2FkZXItb3B0aW9ucyEuL0luZGV4UHJpY2luZ1RhYmxlcy52dWU/dnVlJnR5cGU9c3R5bGUmaW5kZXg9MCZpZD1mNmY0NWU4NCZsYW5nPXNjc3Mmc2NvcGVkPXRydWUmXCIpO1xuXG5cdFx0aWYodHlwZW9mIG5ld0NvbnRlbnQgPT09ICdzdHJpbmcnKSBuZXdDb250ZW50ID0gW1ttb2R1bGUuaWQsIG5ld0NvbnRlbnQsICcnXV07XG5cblx0XHR2YXIgbG9jYWxzID0gKGZ1bmN0aW9uKGEsIGIpIHtcblx0XHRcdHZhciBrZXksIGlkeCA9IDA7XG5cblx0XHRcdGZvcihrZXkgaW4gYSkge1xuXHRcdFx0XHRpZighYiB8fCBhW2tleV0gIT09IGJba2V5XSkgcmV0dXJuIGZhbHNlO1xuXHRcdFx0XHRpZHgrKztcblx0XHRcdH1cblxuXHRcdFx0Zm9yKGtleSBpbiBiKSBpZHgtLTtcblxuXHRcdFx0cmV0dXJuIGlkeCA9PT0gMDtcblx0XHR9KGNvbnRlbnQubG9jYWxzLCBuZXdDb250ZW50LmxvY2FscykpO1xuXG5cdFx0aWYoIWxvY2FscykgdGhyb3cgbmV3IEVycm9yKCdBYm9ydGluZyBDU1MgSE1SIGR1ZSB0byBjaGFuZ2VkIGNzcy1tb2R1bGVzIGxvY2Fscy4nKTtcblxuXHRcdHVwZGF0ZShuZXdDb250ZW50KTtcblx0fSk7XG5cblx0bW9kdWxlLmhvdC5kaXNwb3NlKGZ1bmN0aW9uKCkgeyB1cGRhdGUoKTsgfSk7XG59IiwiZXhwb3J0cyA9IG1vZHVsZS5leHBvcnRzID0gcmVxdWlyZShcIi4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9jc3MtbG9hZGVyL2xpYi9jc3MtYmFzZS5qc1wiKShmYWxzZSk7XG4vLyBpbXBvcnRzXG5cblxuLy8gbW9kdWxlXG5leHBvcnRzLnB1c2goW21vZHVsZS5pZCwgXCIjbG9hZGluZy1iYXItc3Bpbm5lci5zcGlubmVyW2RhdGEtdi0xZGY2NjAwMl0ge1xcbiAgbGVmdDogNTAlO1xcbiAgbWFyZ2luLWxlZnQ6IC0yMHB4O1xcbiAgdG9wOiA1MCU7XFxuICBtYXJnaW4tdG9wOiAtMjBweDtcXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcXG4gIHotaW5kZXg6IDE5ICFpbXBvcnRhbnQ7XFxuICAtd2Via2l0LWFuaW1hdGlvbjogbG9hZGluZy1iYXItc3Bpbm5lci1kYXRhLXYtMWRmNjYwMDIgNDAwbXMgbGluZWFyIGluZmluaXRlO1xcbiAgICAgICAgICBhbmltYXRpb246IGxvYWRpbmctYmFyLXNwaW5uZXItZGF0YS12LTFkZjY2MDAyIDQwMG1zIGxpbmVhciBpbmZpbml0ZTtcXG59XFxuI2xvYWRpbmctYmFyLXNwaW5uZXIuc3Bpbm5lciAuc3Bpbm5lci1pY29uW2RhdGEtdi0xZGY2NjAwMl0ge1xcbiAgd2lkdGg6IDQwcHg7XFxuICBoZWlnaHQ6IDQwcHg7XFxuICBib3JkZXI6IHNvbGlkIDRweCB0cmFuc3BhcmVudDtcXG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcXG59XFxuQC13ZWJraXQta2V5ZnJhbWVzIGxvYWRpbmctYmFyLXNwaW5uZXItZGF0YS12LTFkZjY2MDAyIHtcXG4wJSB7XFxuICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xcbn1cXG4xMDAlIHtcXG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcXG59XFxufVxcbkBrZXlmcmFtZXMgbG9hZGluZy1iYXItc3Bpbm5lci1kYXRhLXYtMWRmNjYwMDIge1xcbjAlIHtcXG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XFxufVxcbjEwMCUge1xcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xcbn1cXG59XFxuXCIsIFwiXCJdKTtcblxuLy8gZXhwb3J0c1xuIiwiaW1wb3J0IG1vZCBmcm9tIFwiLSEuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvc3R5bGUtbG9hZGVyL2luZGV4LmpzIS4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9jc3MtbG9hZGVyL2luZGV4LmpzIS4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9sb2FkZXJzL3N0eWxlUG9zdExvYWRlci5qcyEuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvcG9zdGNzcy1sb2FkZXIvc3JjL2luZGV4LmpzPz9yZWYtLTctMiEuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvc2Fzcy1sb2FkZXIvZGlzdC9janMuanM/P3JlZi0tNy0zIS4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9pbmRleC5qcz8/dnVlLWxvYWRlci1vcHRpb25zIS4vSW5kZXhQcmljaW5nVGFibGVzLnZ1ZT92dWUmdHlwZT1zdHlsZSZpbmRleD0wJmlkPWY2ZjQ1ZTg0Jmxhbmc9c2NzcyZzY29wZWQ9dHJ1ZSZcIjsgZXhwb3J0IGRlZmF1bHQgbW9kOyBleHBvcnQgKiBmcm9tIFwiLSEuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvc3R5bGUtbG9hZGVyL2luZGV4LmpzIS4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9jc3MtbG9hZGVyL2luZGV4LmpzIS4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9sb2FkZXJzL3N0eWxlUG9zdExvYWRlci5qcyEuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvcG9zdGNzcy1sb2FkZXIvc3JjL2luZGV4LmpzPz9yZWYtLTctMiEuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvc2Fzcy1sb2FkZXIvZGlzdC9janMuanM/P3JlZi0tNy0zIS4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9pbmRleC5qcz8/dnVlLWxvYWRlci1vcHRpb25zIS4vSW5kZXhQcmljaW5nVGFibGVzLnZ1ZT92dWUmdHlwZT1zdHlsZSZpbmRleD0wJmlkPWY2ZjQ1ZTg0Jmxhbmc9c2NzcyZzY29wZWQ9dHJ1ZSZcIiIsIlxudmFyIGNvbnRlbnQgPSByZXF1aXJlKFwiISEuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9pbmRleC5qcyEuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvbG9hZGVycy9zdHlsZVBvc3RMb2FkZXIuanMhLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL3Bvc3Rjc3MtbG9hZGVyL3NyYy9pbmRleC5qcz8/cmVmLS03LTIhLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL3Nhc3MtbG9hZGVyL2Rpc3QvY2pzLmpzPz9yZWYtLTctMyEuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvaW5kZXguanM/P3Z1ZS1sb2FkZXItb3B0aW9ucyEuL0luZGV4SGVyb1NjcmVlbnNob3QudnVlP3Z1ZSZ0eXBlPXN0eWxlJmluZGV4PTAmaWQ9NDEwNjAwYjImbGFuZz1zY3NzJnNjb3BlZD10cnVlJlwiKTtcblxuaWYodHlwZW9mIGNvbnRlbnQgPT09ICdzdHJpbmcnKSBjb250ZW50ID0gW1ttb2R1bGUuaWQsIGNvbnRlbnQsICcnXV07XG5cbnZhciB0cmFuc2Zvcm07XG52YXIgaW5zZXJ0SW50bztcblxuXG5cbnZhciBvcHRpb25zID0ge1wiaG1yXCI6dHJ1ZX1cblxub3B0aW9ucy50cmFuc2Zvcm0gPSB0cmFuc2Zvcm1cbm9wdGlvbnMuaW5zZXJ0SW50byA9IHVuZGVmaW5lZDtcblxudmFyIHVwZGF0ZSA9IHJlcXVpcmUoXCIhLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL3N0eWxlLWxvYWRlci9saWIvYWRkU3R5bGVzLmpzXCIpKGNvbnRlbnQsIG9wdGlvbnMpO1xuXG5pZihjb250ZW50LmxvY2FscykgbW9kdWxlLmV4cG9ydHMgPSBjb250ZW50LmxvY2FscztcblxuaWYobW9kdWxlLmhvdCkge1xuXHRtb2R1bGUuaG90LmFjY2VwdChcIiEhLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Nzcy1sb2FkZXIvaW5kZXguanMhLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL2xvYWRlcnMvc3R5bGVQb3N0TG9hZGVyLmpzIS4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9wb3N0Y3NzLWxvYWRlci9zcmMvaW5kZXguanM/P3JlZi0tNy0yIS4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9zYXNzLWxvYWRlci9kaXN0L2Nqcy5qcz8/cmVmLS03LTMhLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL2luZGV4LmpzPz92dWUtbG9hZGVyLW9wdGlvbnMhLi9JbmRleEhlcm9TY3JlZW5zaG90LnZ1ZT92dWUmdHlwZT1zdHlsZSZpbmRleD0wJmlkPTQxMDYwMGIyJmxhbmc9c2NzcyZzY29wZWQ9dHJ1ZSZcIiwgZnVuY3Rpb24oKSB7XG5cdFx0dmFyIG5ld0NvbnRlbnQgPSByZXF1aXJlKFwiISEuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9pbmRleC5qcyEuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvbG9hZGVycy9zdHlsZVBvc3RMb2FkZXIuanMhLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL3Bvc3Rjc3MtbG9hZGVyL3NyYy9pbmRleC5qcz8/cmVmLS03LTIhLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL3Nhc3MtbG9hZGVyL2Rpc3QvY2pzLmpzPz9yZWYtLTctMyEuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvaW5kZXguanM/P3Z1ZS1sb2FkZXItb3B0aW9ucyEuL0luZGV4SGVyb1NjcmVlbnNob3QudnVlP3Z1ZSZ0eXBlPXN0eWxlJmluZGV4PTAmaWQ9NDEwNjAwYjImbGFuZz1zY3NzJnNjb3BlZD10cnVlJlwiKTtcblxuXHRcdGlmKHR5cGVvZiBuZXdDb250ZW50ID09PSAnc3RyaW5nJykgbmV3Q29udGVudCA9IFtbbW9kdWxlLmlkLCBuZXdDb250ZW50LCAnJ11dO1xuXG5cdFx0dmFyIGxvY2FscyA9IChmdW5jdGlvbihhLCBiKSB7XG5cdFx0XHR2YXIga2V5LCBpZHggPSAwO1xuXG5cdFx0XHRmb3Ioa2V5IGluIGEpIHtcblx0XHRcdFx0aWYoIWIgfHwgYVtrZXldICE9PSBiW2tleV0pIHJldHVybiBmYWxzZTtcblx0XHRcdFx0aWR4Kys7XG5cdFx0XHR9XG5cblx0XHRcdGZvcihrZXkgaW4gYikgaWR4LS07XG5cblx0XHRcdHJldHVybiBpZHggPT09IDA7XG5cdFx0fShjb250ZW50LmxvY2FscywgbmV3Q29udGVudC5sb2NhbHMpKTtcblxuXHRcdGlmKCFsb2NhbHMpIHRocm93IG5ldyBFcnJvcignQWJvcnRpbmcgQ1NTIEhNUiBkdWUgdG8gY2hhbmdlZCBjc3MtbW9kdWxlcyBsb2NhbHMuJyk7XG5cblx0XHR1cGRhdGUobmV3Q29udGVudCk7XG5cdH0pO1xuXG5cdG1vZHVsZS5ob3QuZGlzcG9zZShmdW5jdGlvbigpIHsgdXBkYXRlKCk7IH0pO1xufSIsImltcG9ydCBtb2QgZnJvbSBcIi0hLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL3N0eWxlLWxvYWRlci9pbmRleC5qcyEuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9pbmRleC5qcyEuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvbG9hZGVycy9zdHlsZVBvc3RMb2FkZXIuanMhLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL3Bvc3Rjc3MtbG9hZGVyL3NyYy9pbmRleC5qcz8/cmVmLS03LTIhLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL3Nhc3MtbG9hZGVyL2Rpc3QvY2pzLmpzPz9yZWYtLTctMyEuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvaW5kZXguanM/P3Z1ZS1sb2FkZXItb3B0aW9ucyEuL0luZGV4SGVyb1NjcmVlbnNob3QudnVlP3Z1ZSZ0eXBlPXN0eWxlJmluZGV4PTAmaWQ9NDEwNjAwYjImbGFuZz1zY3NzJnNjb3BlZD10cnVlJlwiOyBleHBvcnQgZGVmYXVsdCBtb2Q7IGV4cG9ydCAqIGZyb20gXCItIS4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9zdHlsZS1sb2FkZXIvaW5kZXguanMhLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Nzcy1sb2FkZXIvaW5kZXguanMhLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL2xvYWRlcnMvc3R5bGVQb3N0TG9hZGVyLmpzIS4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9wb3N0Y3NzLWxvYWRlci9zcmMvaW5kZXguanM/P3JlZi0tNy0yIS4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9zYXNzLWxvYWRlci9kaXN0L2Nqcy5qcz8/cmVmLS03LTMhLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL2luZGV4LmpzPz92dWUtbG9hZGVyLW9wdGlvbnMhLi9JbmRleEhlcm9TY3JlZW5zaG90LnZ1ZT92dWUmdHlwZT1zdHlsZSZpbmRleD0wJmlkPTQxMDYwMGIyJmxhbmc9c2NzcyZzY29wZWQ9dHJ1ZSZcIiIsImV4cG9ydHMgPSBtb2R1bGUuZXhwb3J0cyA9IHJlcXVpcmUoXCIuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9saWIvY3NzLWJhc2UuanNcIikoZmFsc2UpO1xuLy8gaW1wb3J0c1xuXG5cbi8vIG1vZHVsZVxuZXhwb3J0cy5wdXNoKFttb2R1bGUuaWQsIFwiLmxhbmRpbmctcGFnZVtkYXRhLXYtNjc0NmUyMzNdIHtcXG4gIG92ZXJmbG93LXg6IGhpZGRlbjtcXG59XFxuLnBhZ2Utd3JhcHBlcltkYXRhLXYtNjc0NmUyMzNdIHtcXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcXG4gIG1hcmdpbjogMCBhdXRvO1xcbiAgcGFkZGluZy1sZWZ0OiAyNXB4O1xcbiAgcGFkZGluZy1yaWdodDogMjVweDtcXG59XFxuLnBhZ2Utd3JhcHBlci5sYXJnZVtkYXRhLXYtNjc0NmUyMzNdIHtcXG4gIHdpZHRoOiAxNDkwcHg7XFxufVxcbi5wYWdlLXdyYXBwZXIubWVkaXVtW2RhdGEtdi02NzQ2ZTIzM10ge1xcbiAgd2lkdGg6IDExNTBweDtcXG59XFxuLnBhZ2Utd3JhcHBlci5zbWFsbFtkYXRhLXYtNjc0NmUyMzNdIHtcXG4gIHdpZHRoOiA4OTBweDtcXG59XFxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMzkwcHgpIHtcXG4ucGFnZS13cmFwcGVyLmxhcmdlW2RhdGEtdi02NzQ2ZTIzM10ge1xcbiAgICB3aWR0aDogMTAwJTtcXG59XFxufVxcbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTE5MHB4KSB7XFxuLnBhZ2Utd3JhcHBlci5sYXJnZVtkYXRhLXYtNjc0NmUyMzNdIHtcXG4gICAgd2lkdGg6IDEwMCU7XFxufVxcbi5wYWdlLXdyYXBwZXIubWVkaXVtW2RhdGEtdi02NzQ2ZTIzM10ge1xcbiAgICB3aWR0aDogMTAwJTtcXG59XFxufVxcbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTYwcHgpIHtcXG4ucGFnZS13cmFwcGVyW2RhdGEtdi02NzQ2ZTIzM10ge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDI1cHg7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDI1cHg7XFxufVxcbi5wYWdlLXdyYXBwZXIuc21hbGxbZGF0YS12LTY3NDZlMjMzXSB7XFxuICAgIHdpZHRoOiAxMDAlO1xcbn1cXG59XFxuLm1haW4tbmF2aWdhdGlvbltkYXRhLXYtNjc0NmUyMzNdIHtcXG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcXG4gIHBhZGRpbmctYm90dG9tOiAyNXB4O1xcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcXG4gIHBhZGRpbmctdG9wOiAyNXB4O1xcbiAgZGlzcGxheTogZmxleDtcXG59XFxuLmxvZ29bZGF0YS12LTY3NDZlMjMzXSB7XFxuICBjdXJzb3I6IHBvaW50ZXI7XFxufVxcbi5sb2dvIGltZ1tkYXRhLXYtNjc0NmUyMzNdIHtcXG4gIGN1cnNvcjogcG9pbnRlcjtcXG4gIGhlaWdodDogMzhweDtcXG4gIHdpZHRoOiBhdXRvO1xcbn1cXG4ubG9nbyAubG9nby10ZXh0W2RhdGEtdi02NzQ2ZTIzM10ge1xcbiAgZm9udC13ZWlnaHQ6IDgwMDtcXG4gIGZvbnQtc2l6ZTogMS41NjI1ZW07XFxufVxcbi5uYXZpZ2F0aW9uLWxpbmtzW2RhdGEtdi02NzQ2ZTIzM10ge1xcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xcbiAgbWFyZ2luLWxlZnQ6IDI1cHg7XFxufVxcbi5uYXZpZ2F0aW9uLWxpbmtzW2RhdGEtdi02NzQ2ZTIzM106Zmlyc3QtY2hpbGQge1xcbiAgbWFyZ2luLWxlZnQ6IDA7XFxufVxcbi5uYXZpZ2F0aW9uLWxpbmtzIGxpW2RhdGEtdi02NzQ2ZTIzM10ge1xcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xcbn1cXG4ubmF2aWdhdGlvbi1saW5rcyBsaSBhW2RhdGEtdi02NzQ2ZTIzM10ge1xcbiAgcGFkZGluZzogMTRweDtcXG4gIGZvbnQtd2VpZ2h0OiA3MDA7XFxuICBmb250LXNpemU6IDEuMDYyNWVtO1xcbiAgdHJhbnNpdGlvbjogMTUwbXMgYWxsIGVhc2U7XFxufVxcbi5jdGEtYnV0dG9uW2RhdGEtdi02NzQ2ZTIzM10ge1xcbiAgYm9yZGVyLXJhZGl1czogNnB4O1xcbiAgcGFkZGluZzogOHB4IDIzcHg7XFxuICBmb250LXNpemU6IDEuMDYyNWVtO1xcbiAgZm9udC13ZWlnaHQ6IDcwMDtcXG59XFxuLmN0YS1idXR0b24ubG9nLWluW2RhdGEtdi02NzQ2ZTIzM10ge1xcbiAgZGlzcGxheTogbm9uZTtcXG59XFxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2OTBweCkge1xcbi5uYXZpZ2F0aW9uW2RhdGEtdi02NzQ2ZTIzM10ge1xcbiAgICBkaXNwbGF5OiBub25lO1xcbn1cXG4ubG9nbyBpbWdbZGF0YS12LTY3NDZlMjMzXSB7XFxuICAgIGhlaWdodDogYXV0bztcXG4gICAgd2lkdGg6IDE5MHB4O1xcbn1cXG4uY3RhLWJ1dHRvbi5sb2ctaW5bZGF0YS12LTY3NDZlMjMzXSB7XFxuICAgIGRpc3BsYXk6IGJsb2NrO1xcbn1cXG59XFxuXCIsIFwiXCJdKTtcblxuLy8gZXhwb3J0c1xuIiwidmFyIHJlbmRlciA9IGZ1bmN0aW9uICgpIHt2YXIgX3ZtPXRoaXM7dmFyIF9oPV92bS4kY3JlYXRlRWxlbWVudDt2YXIgX2M9X3ZtLl9zZWxmLl9jfHxfaDtyZXR1cm4gX2MoJ2Rpdicse3N0YXRpY0NsYXNzOlwibGFuZGluZy1wYWdlXCJ9LFsoISBfdm0uaXNMb2FkaW5nKT9fYygnZGl2JyxbX2MoJ05hdmlnYXRpb24nLHtzdGF0aWNDbGFzczpcInBhZ2Utd3JhcHBlciBtZWRpdW1cIn0pLF92bS5fdihcIiBcIiksX2MoJ1BhZ2VIZWFkZXInKSxfdm0uX3YoXCIgXCIpLF9jKCdIZXJvU2NyZWVuc2hvdCcpLF92bS5fdihcIiBcIiksX2MoJ01haW5GZWF0dXJlcycpLF92bS5fdihcIiBcIiksKF92bS5jb25maWcuaXNTYWFTKT9fYygnUHJpY2luZ1RhYmxlcycpOl92bS5fZSgpLF92bS5fdihcIiBcIiksX2MoJ0dldFN0YXJ0ZWQnKSxfdm0uX3YoXCIgXCIpLF9jKCdQYWdlRm9vdGVyJyldLDEpOl92bS5fZSgpLF92bS5fdihcIiBcIiksKF92bS5pc0xvYWRpbmcpP19jKCdkaXYnLFtfYygnU3Bpbm5lcicpXSwxKTpfdm0uX2UoKV0pfVxudmFyIHN0YXRpY1JlbmRlckZucyA9IFtdXG5cbmV4cG9ydCB7IHJlbmRlciwgc3RhdGljUmVuZGVyRm5zIH0iLCI8dGVtcGxhdGU+XG4gICAgPGRpdiBjbGFzcz1cInBhZ2Utd3JhcHBlciBsYXJnZSBoZXJvLXNjcmVlbnNob3RcIj5cbiAgICAgICAgPGltZyBjbGFzcz1cImhlcm8tbGlnaHRcIiBzcmM9XCIvYXNzZXRzL2ltYWdlcy92dWVmaWxlbWFuYWdlci1zY3JlZW5zaG90LWxpZ2h0LnBuZ1wiIDphbHQ9XCJjb25maWcuYXBwX25hbWVcIj5cbiAgICAgICAgPGltZyBjbGFzcz1cImhlcm8tZGFya1wiIHNyYz1cIi9hc3NldHMvaW1hZ2VzL3Z1ZWZpbGVtYW5hZ2VyLXNjcmVlbnNob3QtZGFyay5wbmdcIiA6YWx0PVwiY29uZmlnLmFwcF9uYW1lXCI+XG5cbiAgICAgICAgPGRpdiBjbGFzcz1cImljb25zXCI+XG4gICAgICAgICAgICA8bGluay1pY29uIHNpemU9XCIyMFwiIGNsYXNzPVwiaWNvblwiPjwvbGluay1pY29uPlxuICAgICAgICAgICAgPGltYWdlLWljb24gc2l6ZT1cIjM4XCIgY2xhc3M9XCJpY29uXCI+PC9pbWFnZS1pY29uPlxuICAgICAgICAgICAgPGhhcmQtZHJpdmUtaWNvbiBzaXplPVwiMzRcIiBjbGFzcz1cImljb25cIj48L2hhcmQtZHJpdmUtaWNvbj5cbiAgICAgICAgICAgIDxmb2xkZXItcGx1cy1pY29uIHNpemU9XCI0MFwiIGNsYXNzPVwiaWNvblwiPjwvZm9sZGVyLXBsdXMtaWNvbj5cbiAgICAgICAgICAgIDxzZXR0aW5ncy1pY29uIHNpemU9XCIxOFwiIGNsYXNzPVwiaWNvblwiPjwvc2V0dGluZ3MtaWNvbj5cbiAgICAgICAgICAgIDxzZWFyY2gtaWNvbiBzaXplPVwiMjRcIiBjbGFzcz1cImljb25cIj48L3NlYXJjaC1pY29uPlxuICAgICAgICAgICAgPHN0YXItaWNvbiBzaXplPVwiMThcIiBjbGFzcz1cImljb25cIj48L3N0YXItaWNvbj5cbiAgICAgICAgICAgIDx0cmFzaDItaWNvbiBzaXplPVwiMzJcIiBjbGFzcz1cImljb25cIj48L3RyYXNoMi1pY29uPlxuICAgICAgICAgICAgPHNlYXJjaC1pY29uIHNpemU9XCIxOFwiIGNsYXNzPVwiaWNvblwiPjwvc2VhcmNoLWljb24+XG4gICAgICAgICAgICA8ZXllLWljb24gc2l6ZT1cIjMwXCIgY2xhc3M9XCJpY29uXCI+PC9leWUtaWNvbj5cbiAgICAgICAgICAgIDxzdGFyLWljb24gc2l6ZT1cIjMwXCIgY2xhc3M9XCJpY29uXCI+PC9zdGFyLWljb24+XG4gICAgICAgICAgICA8Zm9sZGVyLXBsdXMtaWNvbiBzaXplPVwiMTZcIiBjbGFzcz1cImljb25cIj48L2ZvbGRlci1wbHVzLWljb24+XG4gICAgICAgICAgICA8Z3JpZC1pY29uIHNpemU9XCIyMFwiIGNsYXNzPVwiaWNvblwiPjwvZ3JpZC1pY29uPlxuICAgICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbjwvdGVtcGxhdGU+XG5cbjxzY3JpcHQ+XG4gICAgaW1wb3J0IHsgbWFwR2V0dGVycyB9IGZyb20gJ3Z1ZXgnXG4gICAgaW1wb3J0IHtcbiAgICAgICAgRm9sZGVyUGx1c0ljb24sXG4gICAgICAgIEhhcmREcml2ZUljb24sXG4gICAgICAgIFNldHRpbmdzSWNvbixcbiAgICAgICAgVHJhc2gySWNvbixcbiAgICAgICAgU2VhcmNoSWNvbixcbiAgICAgICAgSW1hZ2VJY29uLFxuICAgICAgICBHcmlkSWNvbixcbiAgICAgICAgTGlua0ljb24sXG4gICAgICAgIFN0YXJJY29uLFxuICAgICAgICBFeWVJY29uLFxuICAgIH0gZnJvbSAndnVlLWZlYXRoZXItaWNvbnMnXG5cbiAgICBleHBvcnQgZGVmYXVsdCB7XG4gICAgICAgIG5hbWU6ICdJbmRleEhlcm9TY3JlZW5zaG90JyxcbiAgICAgICAgY29tcG9uZW50czoge1xuICAgICAgICAgICAgRm9sZGVyUGx1c0ljb24sXG4gICAgICAgICAgICBIYXJkRHJpdmVJY29uLFxuICAgICAgICAgICAgU2V0dGluZ3NJY29uLFxuICAgICAgICAgICAgVHJhc2gySWNvbixcbiAgICAgICAgICAgIFNlYXJjaEljb24sXG4gICAgICAgICAgICBJbWFnZUljb24sXG4gICAgICAgICAgICBHcmlkSWNvbixcbiAgICAgICAgICAgIExpbmtJY29uLFxuICAgICAgICAgICAgU3Rhckljb24sXG4gICAgICAgICAgICBFeWVJY29uLFxuICAgICAgICB9LFxuICAgICAgICBjb21wdXRlZDoge1xuICAgICAgICAgICAgLi4ubWFwR2V0dGVycyhbJ2NvbmZpZyddKSxcbiAgICAgICAgfSxcbiAgICB9XG48L3NjcmlwdD5cblxuPHN0eWxlIGxhbmc9XCJzY3NzXCIgc2NvcGVkPlxuICAgIEBpbXBvcnQgJ0Bhc3NldHMvdnVlZmlsZW1hbmFnZXIvX2xhbmRpbmctcGFnZSc7XG4gICAgQGltcG9ydCAnQGFzc2V0cy92dWVmaWxlbWFuYWdlci9fdmFyaWFibGVzJztcbiAgICBAaW1wb3J0ICdAYXNzZXRzL3Z1ZWZpbGVtYW5hZ2VyL19taXhpbnMnO1xuXG4gICAgLmljb25zIHtcblxuICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgICB6LWluZGV4OiAwO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuXG4gICAgICAgICAgICAmOm50aC1jaGlsZCgxKSB7XG4gICAgICAgICAgICAgICAgdG9wOiAtMTQlO1xuICAgICAgICAgICAgICAgIHJpZ2h0OiAyJTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjpudGgtY2hpbGQoMikge1xuICAgICAgICAgICAgICAgIHRvcDogLTUlO1xuICAgICAgICAgICAgICAgIHJpZ2h0OiAxNCU7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMTlkZWcpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOm50aC1jaGlsZCgzKSB7XG4gICAgICAgICAgICAgICAgdG9wOiAtNi41JTtcbiAgICAgICAgICAgICAgICByaWdodDogMjguNSU7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTEyZGVnKTtcblxuICAgICAgICAgICAgICAgIGxpbmUsIHBhdGgge1xuICAgICAgICAgICAgICAgICAgICBzdHJva2U6ICR0aGVtZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6bnRoLWNoaWxkKDQpIHtcbiAgICAgICAgICAgICAgICB0b3A6IC05LjUlO1xuICAgICAgICAgICAgICAgIHJpZ2h0OiA0MS41JTtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxM2RlZyk7XG5cbiAgICAgICAgICAgICAgICBwYXRoLCBsaW5lIHtcbiAgICAgICAgICAgICAgICAgICAgc3Ryb2tlOiAkeWVsbG93O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjpudGgtY2hpbGQoNSkge1xuICAgICAgICAgICAgICAgIHRvcDogLTE2JTtcbiAgICAgICAgICAgICAgICByaWdodDogMjYlO1xuXG4gICAgICAgICAgICAgICAgY2lyY2xlLCBwYXRoIHtcbiAgICAgICAgICAgICAgICAgICAgc3Ryb2tlOiAkcmVkO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjpudGgtY2hpbGQoNikge1xuICAgICAgICAgICAgICAgIHRvcDogLTEzJTtcbiAgICAgICAgICAgICAgICByaWdodDogNDklO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOm50aC1jaGlsZCg3KSB7XG4gICAgICAgICAgICAgICAgdG9wOiAyLjUlO1xuICAgICAgICAgICAgICAgIHJpZ2h0OiA0NiU7XG5cbiAgICAgICAgICAgICAgICBwb2x5Z29uIHtcbiAgICAgICAgICAgICAgICAgICAgc3Ryb2tlOiAkcHVycGxlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjpudGgtY2hpbGQoOCkge1xuICAgICAgICAgICAgICAgIHRvcDogMTMlO1xuICAgICAgICAgICAgICAgIHJpZ2h0OiAyLjUlO1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDIyZGVnKTtcblxuICAgICAgICAgICAgICAgIHBvbHlsaW5lLCBwYXRoLCBsaW5lIHtcbiAgICAgICAgICAgICAgICAgICAgc3Ryb2tlOiAkcmVkO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjpudGgtY2hpbGQoOSkge1xuICAgICAgICAgICAgICAgIHRvcDogMTQlO1xuICAgICAgICAgICAgICAgIHJpZ2h0OiAxMSU7XG5cbiAgICAgICAgICAgICAgICBjaXJjbGUsIGxpbmUge1xuICAgICAgICAgICAgICAgICAgICBzdHJva2U6ICRwdXJwbGU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOm50aC1jaGlsZCgxMCkge1xuICAgICAgICAgICAgICAgIHRvcDogMjklO1xuICAgICAgICAgICAgICAgIHJpZ2h0OiA3JTtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxOWRlZyk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6bnRoLWNoaWxkKDExKSB7XG4gICAgICAgICAgICAgICAgdG9wOiAzOCU7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDMlO1xuXG4gICAgICAgICAgICAgICAgcG9seWdvbiB7XG4gICAgICAgICAgICAgICAgICAgIHN0cm9rZTogJHllbGxvdztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6bnRoLWNoaWxkKDEyKSB7XG4gICAgICAgICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDExLjUlO1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC0yMmRlZyk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6bnRoLWNoaWxkKDEzKSB7XG4gICAgICAgICAgICAgICAgdG9wOiAzNCU7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDE2JTtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxM2RlZyk7XG5cbiAgICAgICAgICAgICAgICByZWN0IHtcbiAgICAgICAgICAgICAgICAgICAgc3Ryb2tlOiAkdGhlbWU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmhlcm8tc2NyZWVuc2hvdCB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgcGFkZGluZy10b3A6IDc1cHg7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAxMzBweDtcblxuICAgICAgICBpbWcge1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogOHB4O1xuICAgICAgICAgICAgd2lkdGg6IDgwJTtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgN3B4IDI1NXB4IHJnYmEoIzE5MzYzQywgMC4xKTtcblxuICAgICAgICAgICAgJi5oZXJvLWRhcmsge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDg5MHB4KSB7XG5cbiAgICAgICAgLmljb25zIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICAuaGVyby1zY3JlZW5zaG90IHtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiA0MHB4O1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDkwcHg7XG5cbiAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAbWVkaWEgKHByZWZlcnMtY29sb3Itc2NoZW1lOiBkYXJrKSB7XG5cbiAgICAgICAgLmhlcm8tc2NyZWVuc2hvdCB7XG5cbiAgICAgICAgICAgIGltZyB7XG5cbiAgICAgICAgICAgICAgICAmLmhlcm8tbGlnaHQge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICYuaGVyby1kYXJrIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgN3B4IDE4NXB4IHJnYmEoMCwgMCwgMCwgMC44KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG48L3N0eWxlPlxuIiwiaW1wb3J0IG1vZCBmcm9tIFwiLSEuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvYmFiZWwtbG9hZGVyL2xpYi9pbmRleC5qcz8/cmVmLS00LTAhLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL2luZGV4LmpzPz92dWUtbG9hZGVyLW9wdGlvbnMhLi9JbmRleEhlcm9TY3JlZW5zaG90LnZ1ZT92dWUmdHlwZT1zY3JpcHQmbGFuZz1qcyZcIjsgZXhwb3J0IGRlZmF1bHQgbW9kOyBleHBvcnQgKiBmcm9tIFwiLSEuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvYmFiZWwtbG9hZGVyL2xpYi9pbmRleC5qcz8/cmVmLS00LTAhLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL2luZGV4LmpzPz92dWUtbG9hZGVyLW9wdGlvbnMhLi9JbmRleEhlcm9TY3JlZW5zaG90LnZ1ZT92dWUmdHlwZT1zY3JpcHQmbGFuZz1qcyZcIiIsImltcG9ydCB7IHJlbmRlciwgc3RhdGljUmVuZGVyRm5zIH0gZnJvbSBcIi4vSW5kZXhIZXJvU2NyZWVuc2hvdC52dWU/dnVlJnR5cGU9dGVtcGxhdGUmaWQ9NDEwNjAwYjImc2NvcGVkPXRydWUmXCJcbmltcG9ydCBzY3JpcHQgZnJvbSBcIi4vSW5kZXhIZXJvU2NyZWVuc2hvdC52dWU/dnVlJnR5cGU9c2NyaXB0Jmxhbmc9anMmXCJcbmV4cG9ydCAqIGZyb20gXCIuL0luZGV4SGVyb1NjcmVlbnNob3QudnVlP3Z1ZSZ0eXBlPXNjcmlwdCZsYW5nPWpzJlwiXG5pbXBvcnQgc3R5bGUwIGZyb20gXCIuL0luZGV4SGVyb1NjcmVlbnNob3QudnVlP3Z1ZSZ0eXBlPXN0eWxlJmluZGV4PTAmaWQ9NDEwNjAwYjImbGFuZz1zY3NzJnNjb3BlZD10cnVlJlwiXG5cblxuLyogbm9ybWFsaXplIGNvbXBvbmVudCAqL1xuaW1wb3J0IG5vcm1hbGl6ZXIgZnJvbSBcIiEuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvcnVudGltZS9jb21wb25lbnROb3JtYWxpemVyLmpzXCJcbnZhciBjb21wb25lbnQgPSBub3JtYWxpemVyKFxuICBzY3JpcHQsXG4gIHJlbmRlcixcbiAgc3RhdGljUmVuZGVyRm5zLFxuICBmYWxzZSxcbiAgbnVsbCxcbiAgXCI0MTA2MDBiMlwiLFxuICBudWxsXG4gIFxuKVxuXG5leHBvcnQgZGVmYXVsdCBjb21wb25lbnQuZXhwb3J0cyIsInZhciByZW5kZXIgPSBmdW5jdGlvbiAoKSB7dmFyIF92bT10aGlzO3ZhciBfaD1fdm0uJGNyZWF0ZUVsZW1lbnQ7dmFyIF9jPV92bS5fc2VsZi5fY3x8X2g7cmV0dXJuIF9jKCdkaXYnLHtzdGF0aWNDbGFzczpcInBhZ2Utd3JhcHBlciBsYXJnZSBoZXJvLXNjcmVlbnNob3RcIn0sW19jKCdpbWcnLHtzdGF0aWNDbGFzczpcImhlcm8tbGlnaHRcIixhdHRyczp7XCJzcmNcIjpcIi9hc3NldHMvaW1hZ2VzL3Z1ZWZpbGVtYW5hZ2VyLXNjcmVlbnNob3QtbGlnaHQucG5nXCIsXCJhbHRcIjpfdm0uY29uZmlnLmFwcF9uYW1lfX0pLF92bS5fdihcIiBcIiksX2MoJ2ltZycse3N0YXRpY0NsYXNzOlwiaGVyby1kYXJrXCIsYXR0cnM6e1wic3JjXCI6XCIvYXNzZXRzL2ltYWdlcy92dWVmaWxlbWFuYWdlci1zY3JlZW5zaG90LWRhcmsucG5nXCIsXCJhbHRcIjpfdm0uY29uZmlnLmFwcF9uYW1lfX0pLF92bS5fdihcIiBcIiksX2MoJ2Rpdicse3N0YXRpY0NsYXNzOlwiaWNvbnNcIn0sW19jKCdsaW5rLWljb24nLHtzdGF0aWNDbGFzczpcImljb25cIixhdHRyczp7XCJzaXplXCI6XCIyMFwifX0pLF92bS5fdihcIiBcIiksX2MoJ2ltYWdlLWljb24nLHtzdGF0aWNDbGFzczpcImljb25cIixhdHRyczp7XCJzaXplXCI6XCIzOFwifX0pLF92bS5fdihcIiBcIiksX2MoJ2hhcmQtZHJpdmUtaWNvbicse3N0YXRpY0NsYXNzOlwiaWNvblwiLGF0dHJzOntcInNpemVcIjpcIjM0XCJ9fSksX3ZtLl92KFwiIFwiKSxfYygnZm9sZGVyLXBsdXMtaWNvbicse3N0YXRpY0NsYXNzOlwiaWNvblwiLGF0dHJzOntcInNpemVcIjpcIjQwXCJ9fSksX3ZtLl92KFwiIFwiKSxfYygnc2V0dGluZ3MtaWNvbicse3N0YXRpY0NsYXNzOlwiaWNvblwiLGF0dHJzOntcInNpemVcIjpcIjE4XCJ9fSksX3ZtLl92KFwiIFwiKSxfYygnc2VhcmNoLWljb24nLHtzdGF0aWNDbGFzczpcImljb25cIixhdHRyczp7XCJzaXplXCI6XCIyNFwifX0pLF92bS5fdihcIiBcIiksX2MoJ3N0YXItaWNvbicse3N0YXRpY0NsYXNzOlwiaWNvblwiLGF0dHJzOntcInNpemVcIjpcIjE4XCJ9fSksX3ZtLl92KFwiIFwiKSxfYygndHJhc2gyLWljb24nLHtzdGF0aWNDbGFzczpcImljb25cIixhdHRyczp7XCJzaXplXCI6XCIzMlwifX0pLF92bS5fdihcIiBcIiksX2MoJ3NlYXJjaC1pY29uJyx7c3RhdGljQ2xhc3M6XCJpY29uXCIsYXR0cnM6e1wic2l6ZVwiOlwiMThcIn19KSxfdm0uX3YoXCIgXCIpLF9jKCdleWUtaWNvbicse3N0YXRpY0NsYXNzOlwiaWNvblwiLGF0dHJzOntcInNpemVcIjpcIjMwXCJ9fSksX3ZtLl92KFwiIFwiKSxfYygnc3Rhci1pY29uJyx7c3RhdGljQ2xhc3M6XCJpY29uXCIsYXR0cnM6e1wic2l6ZVwiOlwiMzBcIn19KSxfdm0uX3YoXCIgXCIpLF9jKCdmb2xkZXItcGx1cy1pY29uJyx7c3RhdGljQ2xhc3M6XCJpY29uXCIsYXR0cnM6e1wic2l6ZVwiOlwiMTZcIn19KSxfdm0uX3YoXCIgXCIpLF9jKCdncmlkLWljb24nLHtzdGF0aWNDbGFzczpcImljb25cIixhdHRyczp7XCJzaXplXCI6XCIyMFwifX0pXSwxKV0pfVxudmFyIHN0YXRpY1JlbmRlckZucyA9IFtdXG5cbmV4cG9ydCB7IHJlbmRlciwgc3RhdGljUmVuZGVyRm5zIH0iLCJpbXBvcnQgbW9kIGZyb20gXCItIS4uLy4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9iYWJlbC1sb2FkZXIvbGliL2luZGV4LmpzPz9yZWYtLTQtMCEuLi8uLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvaW5kZXguanM/P3Z1ZS1sb2FkZXItb3B0aW9ucyEuL1ByaWNpbmdUYWJsZXMudnVlP3Z1ZSZ0eXBlPXNjcmlwdCZsYW5nPWpzJlwiOyBleHBvcnQgZGVmYXVsdCBtb2Q7IGV4cG9ydCAqIGZyb20gXCItIS4uLy4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9iYWJlbC1sb2FkZXIvbGliL2luZGV4LmpzPz9yZWYtLTQtMCEuLi8uLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvaW5kZXguanM/P3Z1ZS1sb2FkZXItb3B0aW9ucyEuL1ByaWNpbmdUYWJsZXMudnVlP3Z1ZSZ0eXBlPXNjcmlwdCZsYW5nPWpzJlwiIiwiPHRlbXBsYXRlPlxuICAgIDxkaXYgY2xhc3M9XCJwbGFucy13cmFwcGVyXCIgdi1pZj1cInBsYW5zXCI+XG4gICAgICAgIDxhcnRpY2xlIGNsYXNzPVwicGxhblwiIHYtZm9yPVwiKHBsYW4sIGkpIGluIHBsYW5zXCIgOmtleT1cImlcIj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJwbGFuLXdyYXBwZXJcIj5cbiAgICAgICAgICAgICAgICA8aGVhZGVyIGNsYXNzPVwicGxhbi1oZWFkZXJcIj5cbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImljb25cIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxoYXJkLWRyaXZlLWljb24gY2xhc3M9XCJ0ZXh0LXRoZW1lXCIgc2l6ZT1cIjI2XCIgLz5cbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgIDxoMSBjbGFzcz1cInRpdGxlXCI+e3sgcGxhbi5kYXRhLmF0dHJpYnV0ZXMubmFtZSB9fTwvaDE+XG4gICAgICAgICAgICAgICAgICAgIDxoMiBjbGFzcz1cImRlc2NyaXB0aW9uXCI+e3sgcGxhbi5kYXRhLmF0dHJpYnV0ZXMuZGVzY3JpcHRpb24gfX08L2gyPlxuICAgICAgICAgICAgICAgIDwvaGVhZGVyPlxuICAgICAgICAgICAgICAgIDxzZWN0aW9uIGNsYXNzPVwicGxhbi1mZWF0dXJlc1wiPlxuICAgICAgICAgICAgICAgICAgICA8YiBjbGFzcz1cInN0b3JhZ2Utc2l6ZVwiPnt7IHBsYW4uZGF0YS5hdHRyaWJ1dGVzLmNhcGFjaXR5X2Zvcm1hdHRlZCB9fTwvYj5cbiAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJzdG9yYWdlLWRlc2NyaXB0aW9uXCI+e3sgJHQoJ3BhZ2VfcHJpY2luZ190YWJsZXMuc3RvcmFnZV9jYXBhY2l0eScpIH19PC9zcGFuPlxuICAgICAgICAgICAgICAgIDwvc2VjdGlvbj5cbiAgICAgICAgICAgICAgICA8Zm9vdGVyIGNsYXNzPVwicGxhbi1mb290ZXJcIj5cbiAgICAgICAgICAgICAgICAgICAgPGIgY2xhc3M9XCJwcmljZSB0ZXh0LXRoZW1lXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICB7eyBwbGFuLmRhdGEuYXR0cmlidXRlcy5wcmljZSB9fS97eyAkdCgnZ2xvYmFsLm1vbnRobHlfYWMnKSB9fVxuICAgICAgICAgICAgICAgICAgICAgICAgPHNtYWxsIHYtaWY9XCJwbGFuLmRhdGEuYXR0cmlidXRlcy50YXhfcmF0ZXMubGVuZ3RoID4gMFwiIGNsYXNzPVwidmF0LWRpc2NsYWltZXJcIj57eyAkdCgncGFnZV9wcmljaW5nX3RhYmxlcy52YXRfZXhjbHVkZWQnKSB9fTwvc21hbGw+XG4gICAgICAgICAgICAgICAgICAgIDwvYj5cbiAgICAgICAgICAgICAgICA8L2Zvb3Rlcj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2FydGljbGU+XG4gICAgPC9kaXY+XG48L3RlbXBsYXRlPlxuXG48c2NyaXB0PlxuICAgIGltcG9ydCB7SGFyZERyaXZlSWNvbn0gZnJvbSBcInZ1ZS1mZWF0aGVyLWljb25zXCJcbiAgICBpbXBvcnQgYXhpb3MgZnJvbSAnYXhpb3MnXG5cbiAgICBleHBvcnQgZGVmYXVsdCB7XG4gICAgICAgIG5hbWU6ICdQcmljaW5nVGFibGVzJyxcbiAgICAgICAgY29tcG9uZW50czoge1xuICAgICAgICAgICAgSGFyZERyaXZlSWNvbixcbiAgICAgICAgfSxcbiAgICAgICAgZGF0YSgpIHtcbiAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgcGxhbnM6IHVuZGVmaW5lZCxcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSxcbiAgICAgICAgY3JlYXRlZCgpIHtcbiAgICAgICAgICAgIGF4aW9zLmdldCgnL2FwaS9wcmljaW5nJylcbiAgICAgICAgICAgICAgICAudGhlbihyZXNwb25zZSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMucGxhbnMgPSByZXNwb25zZS5kYXRhXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuJGVtaXQoJ2xvYWQnLCByZXNwb25zZS5kYXRhKVxuICAgICAgICAgICAgICAgIH0pXG4gICAgICAgIH1cbiAgICB9XG48L3NjcmlwdD5cblxuPHN0eWxlIGxhbmc9XCJzY3NzXCIgc2NvcGVkPlxuICAgIEBpbXBvcnQgJ0Bhc3NldHMvdnVlZmlsZW1hbmFnZXIvX3ZhcmlhYmxlcyc7XG4gICAgQGltcG9ydCAnQGFzc2V0cy92dWVmaWxlbWFuYWdlci9fbWl4aW5zJztcblxuICAgIC5wbGFucy13cmFwcGVyIHtcbiAgICAgICAgYm94LXNoYWRvdzogMCA3cHggMjBweCA1cHggaHNsYSgyMjAsIDM2JSwgMTYlLCAwLjA1KTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogOHB4O1xuICAgICAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgICB9XG5cbiAgICAucGxhbiB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgZmxleDogMCAwIDMzJTtcbiAgICAgICAgcGFkZGluZzogNTVweCAyNXB4IDc1cHg7XG4gICAgICAgIC8vYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgI0Y3RjdGNztcblxuICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgYm9yZGVyLXJpZ2h0OiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgLnBsYW4taGVhZGVyIHtcblxuICAgICAgICAgICAgLmljb24ge1xuXG4gICAgICAgICAgICAgICAgcGF0aCwgbGluZSwgcG9seWxpbmUsIHJlY3QsIGNpcmNsZSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnRpdGxlIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBmb250LXNpemUoMjIpO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA4MDA7XG4gICAgICAgICAgICAgICAgcGFkZGluZy10b3A6IDEwcHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5kZXNjcmlwdGlvbiB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgZm9udC1zaXplKDE0KTtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnBsYW4tZmVhdHVyZXMge1xuICAgICAgICAgICAgbWFyZ2luOiA1NXB4IDA7XG5cbiAgICAgICAgICAgIC5zdG9yYWdlLXNpemUge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSg0OCk7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS4xO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuc3RvcmFnZS1kZXNjcmlwdGlvbiB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgZm9udC1zaXplKDE1KTtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogODAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnBsYW4tZm9vdGVyIHtcblxuICAgICAgICAgICAgLnNpZ24taW4tYnV0dG9uIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5wcmljZSB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgZm9udC1zaXplKDE4KTtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogNXB4O1xuXG4gICAgICAgICAgICAgICAgLnZhdC1kaXNjbGFpbWVyIHtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgZm9udC1zaXplKDExKTtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR0ZXh0O1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMC40NTtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogNXB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5wbGFucy13cmFwcGVyIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWFyb3VuZDtcbiAgICB9XG5cbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk2MHB4KSB7XG5cbiAgICAgICAgLnBsYW5zLXdyYXBwZXIge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG5cbiAgICAgICAgICAgIC5wbGFuIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAzMHB4IDI1cHg7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNGN0Y3Rjc7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJpZ2h0OiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgQG1lZGlhIChwcmVmZXJzLWNvbG9yLXNjaGVtZTogZGFyaykge1xuXG4gICAgICAgIC5wbGFucy13cmFwcGVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICRkYXJrX21vZGVfZm9yZWdyb3VuZDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5wbGFuIHtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogJGRhcmtfbW9kZV9ib3JkZXJfY29sb3IgIWltcG9ydGFudDtcblxuICAgICAgICAgICAgLnBsYW4td3JhcHBlciB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJGRhcmtfbW9kZV9mb3JlZ3JvdW5kO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAucGxhbi1oZWFkZXIge1xuXG4gICAgICAgICAgICAgICAgLnRpdGxlIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRkYXJrX21vZGVfdGV4dF9wcmltYXJ5O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5kZXNjcmlwdGlvbiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkZGFya19tb2RlX3RleHRfc2Vjb25kYXJ5O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnBsYW4tZmVhdHVyZXMge1xuXG4gICAgICAgICAgICAgICAgLnN0b3JhZ2Utc2l6ZSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkZGFya19tb2RlX3RleHRfcHJpbWFyeTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAuc3RvcmFnZS1kZXNjcmlwdGlvbiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkZGFya19tb2RlX3RleHRfcHJpbWFyeTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5wbGFuLWZvb3RlciB7XG5cbiAgICAgICAgICAgICAgICAuc2lnbi1pbi1idXR0b24ge1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKCR0aGVtZSwgMC4xKTtcblxuICAgICAgICAgICAgICAgICAgICAvZGVlcC8gLmNvbnRlbnQge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR0aGVtZTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5wcmljZSB7XG5cbiAgICAgICAgICAgICAgICAgICAgLnZhdC1kaXNjbGFpbWVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkZGFya19tb2RlX3RleHRfcHJpbWFyeTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbjwvc3R5bGU+XG4iLCJpbXBvcnQgeyByZW5kZXIsIHN0YXRpY1JlbmRlckZucyB9IGZyb20gXCIuL1ByaWNpbmdUYWJsZXMudnVlP3Z1ZSZ0eXBlPXRlbXBsYXRlJmlkPWE2M2Y5MGFjJnNjb3BlZD10cnVlJlwiXG5pbXBvcnQgc2NyaXB0IGZyb20gXCIuL1ByaWNpbmdUYWJsZXMudnVlP3Z1ZSZ0eXBlPXNjcmlwdCZsYW5nPWpzJlwiXG5leHBvcnQgKiBmcm9tIFwiLi9QcmljaW5nVGFibGVzLnZ1ZT92dWUmdHlwZT1zY3JpcHQmbGFuZz1qcyZcIlxuaW1wb3J0IHN0eWxlMCBmcm9tIFwiLi9QcmljaW5nVGFibGVzLnZ1ZT92dWUmdHlwZT1zdHlsZSZpbmRleD0wJmlkPWE2M2Y5MGFjJmxhbmc9c2NzcyZzY29wZWQ9dHJ1ZSZcIlxuXG5cbi8qIG5vcm1hbGl6ZSBjb21wb25lbnQgKi9cbmltcG9ydCBub3JtYWxpemVyIGZyb20gXCIhLi4vLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL3J1bnRpbWUvY29tcG9uZW50Tm9ybWFsaXplci5qc1wiXG52YXIgY29tcG9uZW50ID0gbm9ybWFsaXplcihcbiAgc2NyaXB0LFxuICByZW5kZXIsXG4gIHN0YXRpY1JlbmRlckZucyxcbiAgZmFsc2UsXG4gIG51bGwsXG4gIFwiYTYzZjkwYWNcIixcbiAgbnVsbFxuICBcbilcblxuZXhwb3J0IGRlZmF1bHQgY29tcG9uZW50LmV4cG9ydHMiLCJ2YXIgcmVuZGVyID0gZnVuY3Rpb24gKCkge3ZhciBfdm09dGhpczt2YXIgX2g9X3ZtLiRjcmVhdGVFbGVtZW50O3ZhciBfYz1fdm0uX3NlbGYuX2N8fF9oO3JldHVybiAoX3ZtLnBsYW5zKT9fYygnZGl2Jyx7c3RhdGljQ2xhc3M6XCJwbGFucy13cmFwcGVyXCJ9LF92bS5fbCgoX3ZtLnBsYW5zKSxmdW5jdGlvbihwbGFuLGkpe3JldHVybiBfYygnYXJ0aWNsZScse2tleTppLHN0YXRpY0NsYXNzOlwicGxhblwifSxbX2MoJ2Rpdicse3N0YXRpY0NsYXNzOlwicGxhbi13cmFwcGVyXCJ9LFtfYygnaGVhZGVyJyx7c3RhdGljQ2xhc3M6XCJwbGFuLWhlYWRlclwifSxbX2MoJ2Rpdicse3N0YXRpY0NsYXNzOlwiaWNvblwifSxbX2MoJ2hhcmQtZHJpdmUtaWNvbicse3N0YXRpY0NsYXNzOlwidGV4dC10aGVtZVwiLGF0dHJzOntcInNpemVcIjpcIjI2XCJ9fSldLDEpLF92bS5fdihcIiBcIiksX2MoJ2gxJyx7c3RhdGljQ2xhc3M6XCJ0aXRsZVwifSxbX3ZtLl92KF92bS5fcyhwbGFuLmRhdGEuYXR0cmlidXRlcy5uYW1lKSldKSxfdm0uX3YoXCIgXCIpLF9jKCdoMicse3N0YXRpY0NsYXNzOlwiZGVzY3JpcHRpb25cIn0sW192bS5fdihfdm0uX3MocGxhbi5kYXRhLmF0dHJpYnV0ZXMuZGVzY3JpcHRpb24pKV0pXSksX3ZtLl92KFwiIFwiKSxfYygnc2VjdGlvbicse3N0YXRpY0NsYXNzOlwicGxhbi1mZWF0dXJlc1wifSxbX2MoJ2InLHtzdGF0aWNDbGFzczpcInN0b3JhZ2Utc2l6ZVwifSxbX3ZtLl92KF92bS5fcyhwbGFuLmRhdGEuYXR0cmlidXRlcy5jYXBhY2l0eV9mb3JtYXR0ZWQpKV0pLF92bS5fdihcIiBcIiksX2MoJ3NwYW4nLHtzdGF0aWNDbGFzczpcInN0b3JhZ2UtZGVzY3JpcHRpb25cIn0sW192bS5fdihfdm0uX3MoX3ZtLiR0KCdwYWdlX3ByaWNpbmdfdGFibGVzLnN0b3JhZ2VfY2FwYWNpdHknKSkpXSldKSxfdm0uX3YoXCIgXCIpLF9jKCdmb290ZXInLHtzdGF0aWNDbGFzczpcInBsYW4tZm9vdGVyXCJ9LFtfYygnYicse3N0YXRpY0NsYXNzOlwicHJpY2UgdGV4dC10aGVtZVwifSxbX3ZtLl92KFwiXFxuICAgICAgICAgICAgICAgICAgICBcIitfdm0uX3MocGxhbi5kYXRhLmF0dHJpYnV0ZXMucHJpY2UpK1wiL1wiK192bS5fcyhfdm0uJHQoJ2dsb2JhbC5tb250aGx5X2FjJykpK1wiXFxuICAgICAgICAgICAgICAgICAgICBcIiksKHBsYW4uZGF0YS5hdHRyaWJ1dGVzLnRheF9yYXRlcy5sZW5ndGggPiAwKT9fYygnc21hbGwnLHtzdGF0aWNDbGFzczpcInZhdC1kaXNjbGFpbWVyXCJ9LFtfdm0uX3YoX3ZtLl9zKF92bS4kdCgncGFnZV9wcmljaW5nX3RhYmxlcy52YXRfZXhjbHVkZWQnKSkpXSk6X3ZtLl9lKCldKV0pXSldKX0pLDApOl92bS5fZSgpfVxudmFyIHN0YXRpY1JlbmRlckZucyA9IFtdXG5cbmV4cG9ydCB7IHJlbmRlciwgc3RhdGljUmVuZGVyRm5zIH0iLCI8dGVtcGxhdGU+XG4gICAgPGRpdiBjbGFzcz1cInBhZ2Utd3JhcHBlciBtZWRpdW0gcHJpY2luZ1wiIHYtaWY9XCIhIGlzRW1wdHkgJiYgaW5kZXguc2VjdGlvbl9wcmljaW5nX2NvbnRlbnQgPT09ICcxJyAmJiBjb25maWcuc3RyaXBlX3B1YmxpY19rZXlcIj5cbiAgICAgICAgPGRpdiBpZD1cInByaWNpbmdcIiBjbGFzcz1cInBhZ2UtdGl0bGUgY2VudGVyXCI+XG4gICAgICAgICAgICA8aDEgY2xhc3M9XCJ0aXRsZVwiIHYtaHRtbD1cImluZGV4LnByaWNpbmdfdGl0bGVcIj48L2gxPlxuICAgICAgICA8L2Rpdj5cblxuICAgICAgICA8UHJpY2luZ1RhYmxlcyBjbGFzcz1cInByaWNpbmctdGFibGVzXCIgQGxvYWQ9XCJwcmljaW5nTG9hZGVkXCIvPlxuXG4gICAgICAgIDxkaXYgY2xhc3M9XCJwYWdlLXRpdGxlIGNlbnRlclwiPlxuICAgICAgICAgICAgPGgyIGNsYXNzPVwiZGVzY3JpcHRpb25cIj5cbiAgICAgICAgICAgICAgICB7eyBpbmRleC5wcmljaW5nX2Rlc2NyaXB0aW9uIH19XG4gICAgICAgICAgICA8L2gyPlxuICAgICAgICAgICAgPHJvdXRlci1saW5rIGNsYXNzPVwic2lnbi11cC1idXR0b25cIiA6dG89XCJ7bmFtZTogJ1NpZ25VcCd9XCI+XG4gICAgICAgICAgICAgICAgPEF1dGhCdXR0b24gY2xhc3M9XCJidXR0b25cIiBpY29uPVwiY2hldnJvbi1yaWdodFwiIDp0ZXh0PVwiJHQoJ3BhZ2VfaW5kZXguc2lnbl91cF9idXR0b24nKVwiIC8+XG4gICAgICAgICAgICA8L3JvdXRlci1saW5rPlxuICAgICAgICA8L2Rpdj5cblxuICAgICAgICA8Y2xvdWQtaWNvbiBzaXplPVwiODAwXCIgY2xhc3M9XCJjbG91ZC1iZ1wiPjwvY2xvdWQtaWNvbj5cbiAgICAgICAgPGNsb3VkLWljb24gc2l6ZT1cIjU2MFwiIGNsYXNzPVwiY2xvdWQtYmdcIj48L2Nsb3VkLWljb24+XG4gICAgPC9kaXY+XG48L3RlbXBsYXRlPlxuXG48c2NyaXB0PlxuICAgIGltcG9ydCBQcmljaW5nVGFibGVzIGZyb20gJ0AvY29tcG9uZW50cy9JbmRleC9Db21wb25lbnRzL1ByaWNpbmdUYWJsZXMnXG4gICAgaW1wb3J0IEF1dGhCdXR0b24gZnJvbSAnQC9jb21wb25lbnRzL0F1dGgvQXV0aEJ1dHRvbidcbiAgICBpbXBvcnQgeyBDbG91ZEljb24gfSBmcm9tICd2dWUtZmVhdGhlci1pY29ucydcbiAgICBpbXBvcnQgeyBtYXBHZXR0ZXJzIH0gZnJvbSAndnVleCdcblxuICAgIGV4cG9ydCBkZWZhdWx0IHtcbiAgICAgICAgbmFtZTogJ0luZGV4UHJpY2luZ1RhYmxlcycsXG4gICAgICAgIGNvbXBvbmVudHM6IHtcbiAgICAgICAgICAgIFByaWNpbmdUYWJsZXMsXG4gICAgICAgICAgICBBdXRoQnV0dG9uLFxuICAgICAgICAgICAgQ2xvdWRJY29uLFxuICAgICAgICB9LFxuICAgICAgICBjb21wdXRlZDoge1xuICAgICAgICAgICAgLi4ubWFwR2V0dGVycyhbJ2luZGV4JywgJ2NvbmZpZyddKSxcbiAgICAgICAgfSxcbiAgICAgICAgZGF0YSgpIHtcbiAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgaXNFbXB0eTogZmFsc2UsXG4gICAgICAgICAgICB9XG4gICAgICAgIH0sXG4gICAgICAgIG1ldGhvZHM6IHtcbiAgICAgICAgICAgIHByaWNpbmdMb2FkZWQocHJpY2luZykge1xuICAgICAgICAgICAgICAgIGlmIChwcmljaW5nLmxlbmd0aCA9PT0gMClcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5pc0VtcHR5ID0gdHJ1ZVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuPC9zY3JpcHQ+XG5cbjxzdHlsZSBsYW5nPVwic2Nzc1wiIHNjb3BlZD5cbiAgICBAaW1wb3J0ICdAYXNzZXRzL3Z1ZWZpbGVtYW5hZ2VyL19sYW5kaW5nLXBhZ2UnO1xuICAgIEBpbXBvcnQgJ0Bhc3NldHMvdnVlZmlsZW1hbmFnZXIvX3ZhcmlhYmxlcyc7XG4gICAgQGltcG9ydCAnQGFzc2V0cy92dWVmaWxlbWFuYWdlci9fbWl4aW5zJztcblxuICAgIC5wcmljaW5nIHtcbiAgICAgICAgLmNsb3VkLWJnIHtcbiAgICAgICAgICAgIHotaW5kZXg6IDA7XG5cbiAgICAgICAgICAgIHBhdGgge1xuICAgICAgICAgICAgICAgIHN0cm9rZTogbm9uZTtcbiAgICAgICAgICAgICAgICBmaWxsOiByZ2JhKCR0aGVtZSwgMC4wNSk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6Zmlyc3Qtb2YtdHlwZSB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHRvcDogMzBweDtcbiAgICAgICAgICAgICAgICByaWdodDogLTEzMHB4O1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoLTEsIDEpIHJvdGF0ZSgtMTdkZWcpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOmxhc3Qtb2YtdHlwZSB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIGJvdHRvbTogMTYwcHg7XG4gICAgICAgICAgICAgICAgbGVmdDogLTIzMHB4O1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDEzZGVnKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5wYWdlLXRpdGxlIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB6LWluZGV4OiAxO1xuXG4gICAgICAgICYuY2VudGVyIHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICAgICAgICAgLnRpdGxlIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5kZXNjcmlwdGlvbiB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnRpdGxlIHtcbiAgICAgICAgICAgIG1heC13aWR0aDogNTgwcHg7XG4gICAgICAgICAgICBmb250LXNpemU6IDQ4cHg7XG4gICAgICAgICAgICBmb250LXdlaWdodDogODAwO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMjU7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuXG4gICAgICAgICAgICAvZGVlcC8gc3BhbiB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiA0OHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmRlc2NyaXB0aW9uIHtcbiAgICAgICAgICAgIG1heC13aWR0aDogNTgwcHg7XG4gICAgICAgICAgICBAaW5jbHVkZSBmb250LXNpemUoMjApO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjY7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnByaWNpbmcge1xuICAgICAgICBwYWRkaW5nLXRvcDogMjUwcHg7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAxMjBweDtcbiAgICB9XG5cbiAgICAucHJpY2luZy10YWJsZXMge1xuICAgICAgICBtYXJnaW4tdG9wOiA1MHB4O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA2MHB4O1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHotaW5kZXg6IDE7XG4gICAgfVxuXG4gICAgLnNpZ24tdXAtYnV0dG9uIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDEwcHg7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cblxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTE5MHB4KSB7XG5cbiAgICAgICAgLmNsb3VkLWJnIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICAucHJpY2luZyB7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogMTUwcHg7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogNjBweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTYwcHgpIHtcblxuICAgICAgICAucGFnZS10aXRsZSB7XG5cbiAgICAgICAgICAgIC50aXRsZSB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAyOHB4O1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjI1O1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG5cbiAgICAgICAgICAgICAgICAvZGVlcC8gc3BhbiB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjhweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5kZXNjcmlwdGlvbiB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgZm9udC1zaXplKDE2KTtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS42O1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAucHJpY2luZyB7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogNTBweDtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAxMjBweDtcbiAgICAgICAgfVxuICAgIH1cbjwvc3R5bGU+XG4iLCJpbXBvcnQgbW9kIGZyb20gXCItIS4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9iYWJlbC1sb2FkZXIvbGliL2luZGV4LmpzPz9yZWYtLTQtMCEuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvaW5kZXguanM/P3Z1ZS1sb2FkZXItb3B0aW9ucyEuL0luZGV4UHJpY2luZ1RhYmxlcy52dWU/dnVlJnR5cGU9c2NyaXB0Jmxhbmc9anMmXCI7IGV4cG9ydCBkZWZhdWx0IG1vZDsgZXhwb3J0ICogZnJvbSBcIi0hLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2JhYmVsLWxvYWRlci9saWIvaW5kZXguanM/P3JlZi0tNC0wIS4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9pbmRleC5qcz8/dnVlLWxvYWRlci1vcHRpb25zIS4vSW5kZXhQcmljaW5nVGFibGVzLnZ1ZT92dWUmdHlwZT1zY3JpcHQmbGFuZz1qcyZcIiIsImltcG9ydCB7IHJlbmRlciwgc3RhdGljUmVuZGVyRm5zIH0gZnJvbSBcIi4vSW5kZXhQcmljaW5nVGFibGVzLnZ1ZT92dWUmdHlwZT10ZW1wbGF0ZSZpZD1mNmY0NWU4NCZzY29wZWQ9dHJ1ZSZcIlxuaW1wb3J0IHNjcmlwdCBmcm9tIFwiLi9JbmRleFByaWNpbmdUYWJsZXMudnVlP3Z1ZSZ0eXBlPXNjcmlwdCZsYW5nPWpzJlwiXG5leHBvcnQgKiBmcm9tIFwiLi9JbmRleFByaWNpbmdUYWJsZXMudnVlP3Z1ZSZ0eXBlPXNjcmlwdCZsYW5nPWpzJlwiXG5pbXBvcnQgc3R5bGUwIGZyb20gXCIuL0luZGV4UHJpY2luZ1RhYmxlcy52dWU/dnVlJnR5cGU9c3R5bGUmaW5kZXg9MCZpZD1mNmY0NWU4NCZsYW5nPXNjc3Mmc2NvcGVkPXRydWUmXCJcblxuXG4vKiBub3JtYWxpemUgY29tcG9uZW50ICovXG5pbXBvcnQgbm9ybWFsaXplciBmcm9tIFwiIS4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9ydW50aW1lL2NvbXBvbmVudE5vcm1hbGl6ZXIuanNcIlxudmFyIGNvbXBvbmVudCA9IG5vcm1hbGl6ZXIoXG4gIHNjcmlwdCxcbiAgcmVuZGVyLFxuICBzdGF0aWNSZW5kZXJGbnMsXG4gIGZhbHNlLFxuICBudWxsLFxuICBcImY2ZjQ1ZTg0XCIsXG4gIG51bGxcbiAgXG4pXG5cbmV4cG9ydCBkZWZhdWx0IGNvbXBvbmVudC5leHBvcnRzIiwidmFyIHJlbmRlciA9IGZ1bmN0aW9uICgpIHt2YXIgX3ZtPXRoaXM7dmFyIF9oPV92bS4kY3JlYXRlRWxlbWVudDt2YXIgX2M9X3ZtLl9zZWxmLl9jfHxfaDtyZXR1cm4gKCEgX3ZtLmlzRW1wdHkgJiYgX3ZtLmluZGV4LnNlY3Rpb25fcHJpY2luZ19jb250ZW50ID09PSAnMScgJiYgX3ZtLmNvbmZpZy5zdHJpcGVfcHVibGljX2tleSk/X2MoJ2Rpdicse3N0YXRpY0NsYXNzOlwicGFnZS13cmFwcGVyIG1lZGl1bSBwcmljaW5nXCJ9LFtfYygnZGl2Jyx7c3RhdGljQ2xhc3M6XCJwYWdlLXRpdGxlIGNlbnRlclwiLGF0dHJzOntcImlkXCI6XCJwcmljaW5nXCJ9fSxbX2MoJ2gxJyx7c3RhdGljQ2xhc3M6XCJ0aXRsZVwiLGRvbVByb3BzOntcImlubmVySFRNTFwiOl92bS5fcyhfdm0uaW5kZXgucHJpY2luZ190aXRsZSl9fSldKSxfdm0uX3YoXCIgXCIpLF9jKCdQcmljaW5nVGFibGVzJyx7c3RhdGljQ2xhc3M6XCJwcmljaW5nLXRhYmxlc1wiLG9uOntcImxvYWRcIjpfdm0ucHJpY2luZ0xvYWRlZH19KSxfdm0uX3YoXCIgXCIpLF9jKCdkaXYnLHtzdGF0aWNDbGFzczpcInBhZ2UtdGl0bGUgY2VudGVyXCJ9LFtfYygnaDInLHtzdGF0aWNDbGFzczpcImRlc2NyaXB0aW9uXCJ9LFtfdm0uX3YoXCJcXG4gICAgICAgICAgICBcIitfdm0uX3MoX3ZtLmluZGV4LnByaWNpbmdfZGVzY3JpcHRpb24pK1wiXFxuICAgICAgICBcIildKSxfdm0uX3YoXCIgXCIpLF9jKCdyb3V0ZXItbGluaycse3N0YXRpY0NsYXNzOlwic2lnbi11cC1idXR0b25cIixhdHRyczp7XCJ0b1wiOntuYW1lOiAnU2lnblVwJ319fSxbX2MoJ0F1dGhCdXR0b24nLHtzdGF0aWNDbGFzczpcImJ1dHRvblwiLGF0dHJzOntcImljb25cIjpcImNoZXZyb24tcmlnaHRcIixcInRleHRcIjpfdm0uJHQoJ3BhZ2VfaW5kZXguc2lnbl91cF9idXR0b24nKX19KV0sMSldLDEpLF92bS5fdihcIiBcIiksX2MoJ2Nsb3VkLWljb24nLHtzdGF0aWNDbGFzczpcImNsb3VkLWJnXCIsYXR0cnM6e1wic2l6ZVwiOlwiODAwXCJ9fSksX3ZtLl92KFwiIFwiKSxfYygnY2xvdWQtaWNvbicse3N0YXRpY0NsYXNzOlwiY2xvdWQtYmdcIixhdHRyczp7XCJzaXplXCI6XCI1NjBcIn19KV0sMSk6X3ZtLl9lKCl9XG52YXIgc3RhdGljUmVuZGVyRm5zID0gW11cblxuZXhwb3J0IHsgcmVuZGVyLCBzdGF0aWNSZW5kZXJGbnMgfSIsIjx0ZW1wbGF0ZT5cbiAgICA8c2VjdGlvbiBjbGFzcz1cIm1haW4tZmVhdHVyZXMgcGFnZS13cmFwcGVyIG1lZGl1bVwiPlxuICAgICAgICA8UGFnZVRpdGxlXG4gICAgICAgICAgICAgICAgdi1pZj1cImluZGV4LnNlY3Rpb25fZmVhdHVyZXMgPT09ICcxJ1wiXG4gICAgICAgICAgICAgICAgdHlwZT1cImNlbnRlclwiXG4gICAgICAgICAgICAgICAgOnRpdGxlPVwiaW5kZXguZmVhdHVyZXNfdGl0bGVcIlxuICAgICAgICAgICAgICAgIDpkZXNjcmlwdGlvbj1cImluZGV4LmZlYXR1cmVzX2Rlc2NyaXB0aW9uXCJcbiAgICAgICAgPjwvUGFnZVRpdGxlPlxuICAgICAgICA8ZGl2IHYtaWY9XCJpbmRleC5zZWN0aW9uX2ZlYXR1cmVfYm94ZXMgPT09ICcxJ1wiIGNsYXNzPVwiY29udGVudFwiPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImhlcm9cIj5cbiAgICAgICAgICAgICAgICA8aW1nIHNyYz1cIi9hc3NldHMvaW1hZ2VzL2hlcm8tSWxsdXN0cmF0aW9uLnN2Z1wiIGFsdD1cIkhlcm9cIj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZlYXR1cmVzXCI+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZlYXR1cmVcIj5cbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImljb25cIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxjbG91ZC1pY29uIHNpemU9XCIyNFwiPjwvY2xvdWQtaWNvbj5cbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgIDxoMyBjbGFzcz1cInRpdGxlXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICB7eyBpbmRleC5mZWF0dXJlX3RpdGxlXzEgfX1cbiAgICAgICAgICAgICAgICAgICAgPC9oMz5cbiAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9XCJkZXNjcmlwdGlvblwiPlxuICAgICAgICAgICAgICAgICAgICAgICAge3sgaW5kZXguZmVhdHVyZV9kZXNjcmlwdGlvbl8xIH19XG4gICAgICAgICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmVhdHVyZVwiPlxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiaWNvblwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHVzZXItaWNvbiBzaXplPVwiMjRcIj48L3VzZXItaWNvbj5cbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgIDxoMyBjbGFzcz1cInRpdGxlXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICB7eyBpbmRleC5mZWF0dXJlX3RpdGxlXzIgfX1cbiAgICAgICAgICAgICAgICAgICAgPC9oMz5cbiAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9XCJkZXNjcmlwdGlvblwiPlxuICAgICAgICAgICAgICAgICAgICAgICAge3sgaW5kZXguZmVhdHVyZV9kZXNjcmlwdGlvbl8yIH19XG4gICAgICAgICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmVhdHVyZVwiPlxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiaWNvblwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPGhhcmQtZHJpdmUtaWNvbiBzaXplPVwiMjRcIj48L2hhcmQtZHJpdmUtaWNvbj5cbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgIDxoMyBjbGFzcz1cInRpdGxlXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICB7eyBpbmRleC5mZWF0dXJlX3RpdGxlXzMgfX1cbiAgICAgICAgICAgICAgICAgICAgPC9oMz5cbiAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9XCJkZXNjcmlwdGlvblwiPlxuICAgICAgICAgICAgICAgICAgICAgICAge3sgaW5kZXguZmVhdHVyZV9kZXNjcmlwdGlvbl8zIH19XG4gICAgICAgICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICA8L3NlY3Rpb24+XG48L3RlbXBsYXRlPlxuXG48c2NyaXB0PlxuICAgIGltcG9ydCB7IFVzZXJJY29uLCBDbG91ZEljb24sIEhhcmREcml2ZUljb24gfSBmcm9tICd2dWUtZmVhdGhlci1pY29ucydcbiAgICBpbXBvcnQgUGFnZVRpdGxlIGZyb20gJ0AvY29tcG9uZW50cy9JbmRleC9Db21wb25lbnRzL1BhZ2VUaXRsZSdcbiAgICBpbXBvcnQgeyBtYXBHZXR0ZXJzIH0gZnJvbSAndnVleCdcblxuICAgIGV4cG9ydCBkZWZhdWx0IHtcbiAgICAgICAgbmFtZTogJ0luZGV4TWFpbkZlYXR1cmVzJyxcbiAgICAgICAgY29tcG9uZW50czoge1xuICAgICAgICAgICAgUGFnZVRpdGxlLFxuICAgICAgICAgICAgSGFyZERyaXZlSWNvbixcbiAgICAgICAgICAgIENsb3VkSWNvbixcbiAgICAgICAgICAgIFVzZXJJY29uLFxuICAgICAgICB9LFxuICAgICAgICBjb21wdXRlZDoge1xuICAgICAgICAgICAgLi4ubWFwR2V0dGVycyhbJ2luZGV4J10pLFxuICAgICAgICB9LFxuICAgIH1cbjwvc2NyaXB0PlxuXG48c3R5bGUgbGFuZz1cInNjc3NcIiBzY29wZWQ+XG4gICAgQGltcG9ydCAnQGFzc2V0cy92dWVmaWxlbWFuYWdlci9fbGFuZGluZy1wYWdlJztcbiAgICBAaW1wb3J0ICdAYXNzZXRzL3Z1ZWZpbGVtYW5hZ2VyL192YXJpYWJsZXMnO1xuICAgIEBpbXBvcnQgJ0Bhc3NldHMvdnVlZmlsZW1hbmFnZXIvX21peGlucyc7XG5cbiAgICAuZmVhdHVyZXMge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDc1cHg7XG5cbiAgICAgICAgLmZlYXR1cmUge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjVweDtcblxuICAgICAgICAgICAgLnRpdGxlIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBmb250LXNpemUoMjYpO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA4MDA7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNHB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuZGVzY3JpcHRpb24ge1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgICAgICAgICAgICAgY29sb3I6ICR0ZXh0LW11dGVkO1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgxOCk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5pY29uIHtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMnB4O1xuICAgICAgICAgICAgICAgIHdpZHRoOiA0NHB4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogNDRweDtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMThweDtcblxuICAgICAgICAgICAgICAgIHN2ZyB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjpudGgtY2hpbGQoMSkgLmljb24ge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHJnYmEoJHllbGxvdywgMC4xKTtcblxuICAgICAgICAgICAgICAgIHBhdGgsIGxpbmUsIHBvbHlsaW5lLCByZWN0LCBjaXJjbGUge1xuICAgICAgICAgICAgICAgICAgICBzdHJva2U6ICR5ZWxsb3c7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOm50aC1jaGlsZCgyKSAuaWNvbiB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogcmdiYSgkdGhlbWUsIDAuMSk7XG5cbiAgICAgICAgICAgICAgICBwYXRoLCBsaW5lLCBwb2x5bGluZSwgcmVjdCwgY2lyY2xlIHtcbiAgICAgICAgICAgICAgICAgICAgc3Ryb2tlOiAkdGhlbWU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOm50aC1jaGlsZCgzKSAuaWNvbiB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogcmdiYSgkcHVycGxlLCAwLjEpO1xuXG4gICAgICAgICAgICAgICAgcGF0aCwgbGluZSwgcG9seWxpbmUsIHJlY3QsIGNpcmNsZSB7XG4gICAgICAgICAgICAgICAgICAgIHN0cm9rZTogJHB1cnBsZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuY29udGVudCB7XG4gICAgICAgIG1hcmdpbi10b3A6IDEwN3B4O1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgIH1cblxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTE5MHB4KSB7XG5cbiAgICAgICAgLmhlcm8ge1xuICAgICAgICAgICAgZmxleDogMCAwIDYwJTtcblxuICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5mZWF0dXJlcyB7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDI1cHg7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAwcHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk2MHB4KSB7XG5cbiAgICAgICAgLmNvbnRlbnQge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiA0MHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgLmZlYXR1cmVzIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDUwcHg7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG5cbiAgICAgICAgICAgIC5mZWF0dXJlIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzNXB4O1xuXG4gICAgICAgICAgICAgICAgLnRpdGxlIHtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgZm9udC1zaXplKDIyKTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAuZGVzY3JpcHRpb24ge1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBmb250LXNpemUoMTYpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBtZWRpYSAocHJlZmVycy1jb2xvci1zY2hlbWU6IGRhcmspIHtcblxuICAgICAgICAuZmVhdHVyZXMge1xuXG4gICAgICAgICAgICAuZmVhdHVyZSB7XG5cbiAgICAgICAgICAgICAgICAuZGVzY3JpcHRpb24ge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGRhcmtfbW9kZV90ZXh0X3NlY29uZGFyeTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbjwvc3R5bGU+XG4iLCJpbXBvcnQgbW9kIGZyb20gXCItIS4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9iYWJlbC1sb2FkZXIvbGliL2luZGV4LmpzPz9yZWYtLTQtMCEuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvaW5kZXguanM/P3Z1ZS1sb2FkZXItb3B0aW9ucyEuL0luZGV4TWFpbkZlYXR1cmVzLnZ1ZT92dWUmdHlwZT1zY3JpcHQmbGFuZz1qcyZcIjsgZXhwb3J0IGRlZmF1bHQgbW9kOyBleHBvcnQgKiBmcm9tIFwiLSEuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvYmFiZWwtbG9hZGVyL2xpYi9pbmRleC5qcz8/cmVmLS00LTAhLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL2luZGV4LmpzPz92dWUtbG9hZGVyLW9wdGlvbnMhLi9JbmRleE1haW5GZWF0dXJlcy52dWU/dnVlJnR5cGU9c2NyaXB0Jmxhbmc9anMmXCIiLCJpbXBvcnQgeyByZW5kZXIsIHN0YXRpY1JlbmRlckZucyB9IGZyb20gXCIuL0luZGV4TWFpbkZlYXR1cmVzLnZ1ZT92dWUmdHlwZT10ZW1wbGF0ZSZpZD0zNmJmY2QzYyZzY29wZWQ9dHJ1ZSZcIlxuaW1wb3J0IHNjcmlwdCBmcm9tIFwiLi9JbmRleE1haW5GZWF0dXJlcy52dWU/dnVlJnR5cGU9c2NyaXB0Jmxhbmc9anMmXCJcbmV4cG9ydCAqIGZyb20gXCIuL0luZGV4TWFpbkZlYXR1cmVzLnZ1ZT92dWUmdHlwZT1zY3JpcHQmbGFuZz1qcyZcIlxuaW1wb3J0IHN0eWxlMCBmcm9tIFwiLi9JbmRleE1haW5GZWF0dXJlcy52dWU/dnVlJnR5cGU9c3R5bGUmaW5kZXg9MCZpZD0zNmJmY2QzYyZsYW5nPXNjc3Mmc2NvcGVkPXRydWUmXCJcblxuXG4vKiBub3JtYWxpemUgY29tcG9uZW50ICovXG5pbXBvcnQgbm9ybWFsaXplciBmcm9tIFwiIS4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9ydW50aW1lL2NvbXBvbmVudE5vcm1hbGl6ZXIuanNcIlxudmFyIGNvbXBvbmVudCA9IG5vcm1hbGl6ZXIoXG4gIHNjcmlwdCxcbiAgcmVuZGVyLFxuICBzdGF0aWNSZW5kZXJGbnMsXG4gIGZhbHNlLFxuICBudWxsLFxuICBcIjM2YmZjZDNjXCIsXG4gIG51bGxcbiAgXG4pXG5cbmV4cG9ydCBkZWZhdWx0IGNvbXBvbmVudC5leHBvcnRzIiwidmFyIHJlbmRlciA9IGZ1bmN0aW9uICgpIHt2YXIgX3ZtPXRoaXM7dmFyIF9oPV92bS4kY3JlYXRlRWxlbWVudDt2YXIgX2M9X3ZtLl9zZWxmLl9jfHxfaDtyZXR1cm4gX2MoJ3NlY3Rpb24nLHtzdGF0aWNDbGFzczpcIm1haW4tZmVhdHVyZXMgcGFnZS13cmFwcGVyIG1lZGl1bVwifSxbKF92bS5pbmRleC5zZWN0aW9uX2ZlYXR1cmVzID09PSAnMScpP19jKCdQYWdlVGl0bGUnLHthdHRyczp7XCJ0eXBlXCI6XCJjZW50ZXJcIixcInRpdGxlXCI6X3ZtLmluZGV4LmZlYXR1cmVzX3RpdGxlLFwiZGVzY3JpcHRpb25cIjpfdm0uaW5kZXguZmVhdHVyZXNfZGVzY3JpcHRpb259fSk6X3ZtLl9lKCksX3ZtLl92KFwiIFwiKSwoX3ZtLmluZGV4LnNlY3Rpb25fZmVhdHVyZV9ib3hlcyA9PT0gJzEnKT9fYygnZGl2Jyx7c3RhdGljQ2xhc3M6XCJjb250ZW50XCJ9LFtfdm0uX20oMCksX3ZtLl92KFwiIFwiKSxfYygnZGl2Jyx7c3RhdGljQ2xhc3M6XCJmZWF0dXJlc1wifSxbX2MoJ2Rpdicse3N0YXRpY0NsYXNzOlwiZmVhdHVyZVwifSxbX2MoJ2Rpdicse3N0YXRpY0NsYXNzOlwiaWNvblwifSxbX2MoJ2Nsb3VkLWljb24nLHthdHRyczp7XCJzaXplXCI6XCIyNFwifX0pXSwxKSxfdm0uX3YoXCIgXCIpLF9jKCdoMycse3N0YXRpY0NsYXNzOlwidGl0bGVcIn0sW192bS5fdihcIlxcbiAgICAgICAgICAgICAgICAgICAgXCIrX3ZtLl9zKF92bS5pbmRleC5mZWF0dXJlX3RpdGxlXzEpK1wiXFxuICAgICAgICAgICAgICAgIFwiKV0pLF92bS5fdihcIiBcIiksX2MoJ3AnLHtzdGF0aWNDbGFzczpcImRlc2NyaXB0aW9uXCJ9LFtfdm0uX3YoXCJcXG4gICAgICAgICAgICAgICAgICAgIFwiK192bS5fcyhfdm0uaW5kZXguZmVhdHVyZV9kZXNjcmlwdGlvbl8xKStcIlxcbiAgICAgICAgICAgICAgICBcIildKV0pLF92bS5fdihcIiBcIiksX2MoJ2Rpdicse3N0YXRpY0NsYXNzOlwiZmVhdHVyZVwifSxbX2MoJ2Rpdicse3N0YXRpY0NsYXNzOlwiaWNvblwifSxbX2MoJ3VzZXItaWNvbicse2F0dHJzOntcInNpemVcIjpcIjI0XCJ9fSldLDEpLF92bS5fdihcIiBcIiksX2MoJ2gzJyx7c3RhdGljQ2xhc3M6XCJ0aXRsZVwifSxbX3ZtLl92KFwiXFxuICAgICAgICAgICAgICAgICAgICBcIitfdm0uX3MoX3ZtLmluZGV4LmZlYXR1cmVfdGl0bGVfMikrXCJcXG4gICAgICAgICAgICAgICAgXCIpXSksX3ZtLl92KFwiIFwiKSxfYygncCcse3N0YXRpY0NsYXNzOlwiZGVzY3JpcHRpb25cIn0sW192bS5fdihcIlxcbiAgICAgICAgICAgICAgICAgICAgXCIrX3ZtLl9zKF92bS5pbmRleC5mZWF0dXJlX2Rlc2NyaXB0aW9uXzIpK1wiXFxuICAgICAgICAgICAgICAgIFwiKV0pXSksX3ZtLl92KFwiIFwiKSxfYygnZGl2Jyx7c3RhdGljQ2xhc3M6XCJmZWF0dXJlXCJ9LFtfYygnZGl2Jyx7c3RhdGljQ2xhc3M6XCJpY29uXCJ9LFtfYygnaGFyZC1kcml2ZS1pY29uJyx7YXR0cnM6e1wic2l6ZVwiOlwiMjRcIn19KV0sMSksX3ZtLl92KFwiIFwiKSxfYygnaDMnLHtzdGF0aWNDbGFzczpcInRpdGxlXCJ9LFtfdm0uX3YoXCJcXG4gICAgICAgICAgICAgICAgICAgIFwiK192bS5fcyhfdm0uaW5kZXguZmVhdHVyZV90aXRsZV8zKStcIlxcbiAgICAgICAgICAgICAgICBcIildKSxfdm0uX3YoXCIgXCIpLF9jKCdwJyx7c3RhdGljQ2xhc3M6XCJkZXNjcmlwdGlvblwifSxbX3ZtLl92KFwiXFxuICAgICAgICAgICAgICAgICAgICBcIitfdm0uX3MoX3ZtLmluZGV4LmZlYXR1cmVfZGVzY3JpcHRpb25fMykrXCJcXG4gICAgICAgICAgICAgICAgXCIpXSldKV0pXSk6X3ZtLl9lKCldLDEpfVxudmFyIHN0YXRpY1JlbmRlckZucyA9IFtmdW5jdGlvbiAoKSB7dmFyIF92bT10aGlzO3ZhciBfaD1fdm0uJGNyZWF0ZUVsZW1lbnQ7dmFyIF9jPV92bS5fc2VsZi5fY3x8X2g7cmV0dXJuIF9jKCdkaXYnLHtzdGF0aWNDbGFzczpcImhlcm9cIn0sW19jKCdpbWcnLHthdHRyczp7XCJzcmNcIjpcIi9hc3NldHMvaW1hZ2VzL2hlcm8tSWxsdXN0cmF0aW9uLnN2Z1wiLFwiYWx0XCI6XCJIZXJvXCJ9fSldKX1dXG5cbmV4cG9ydCB7IHJlbmRlciwgc3RhdGljUmVuZGVyRm5zIH0iLCJpbXBvcnQgX21lcmdlSlNYUHJvcHMgZnJvbSBcImJhYmVsLWhlbHBlci12dWUtanN4LW1lcmdlLXByb3BzXCI7XG5leHBvcnQgZGVmYXVsdCB7XG4gIG5hbWU6ICdIYXJkRHJpdmVJY29uJyxcbiAgcHJvcHM6IHtcbiAgICBzaXplOiB7XG4gICAgICB0eXBlOiBTdHJpbmcsXG4gICAgICBkZWZhdWx0OiAnMjQnLFxuICAgICAgdmFsaWRhdG9yOiBmdW5jdGlvbiB2YWxpZGF0b3Iocykge1xuICAgICAgICByZXR1cm4gIWlzTmFOKHMpIHx8IHMubGVuZ3RoID49IDIgJiYgIWlzTmFOKHMuc2xpY2UoMCwgcy5sZW5ndGggLSAxKSkgJiYgcy5zbGljZSgtMSkgPT09ICd4JztcbiAgICAgIH1cbiAgICB9XG4gIH0sXG4gIGZ1bmN0aW9uYWw6IHRydWUsXG4gIHJlbmRlcjogZnVuY3Rpb24gcmVuZGVyKGgsIGN0eCkge1xuICAgIHZhciBzaXplID0gY3R4LnByb3BzLnNpemUuc2xpY2UoLTEpID09PSAneCcgPyBjdHgucHJvcHMuc2l6ZS5zbGljZSgwLCBjdHgucHJvcHMuc2l6ZS5sZW5ndGggLSAxKSArICdlbScgOiBwYXJzZUludChjdHgucHJvcHMuc2l6ZSkgKyAncHgnO1xuICAgIHZhciBhdHRycyA9IGN0eC5kYXRhLmF0dHJzIHx8IHt9O1xuICAgIGF0dHJzLndpZHRoID0gYXR0cnMud2lkdGggfHwgc2l6ZTtcbiAgICBhdHRycy5oZWlnaHQgPSBhdHRycy5oZWlnaHQgfHwgc2l6ZTtcbiAgICBjdHguZGF0YS5hdHRycyA9IGF0dHJzO1xuICAgIHJldHVybiBoKFwic3ZnXCIsIF9tZXJnZUpTWFByb3BzKFt7XG4gICAgICBhdHRyczoge1xuICAgICAgICB4bWxuczogXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiLFxuICAgICAgICB3aWR0aDogXCIyNFwiLFxuICAgICAgICBoZWlnaHQ6IFwiMjRcIixcbiAgICAgICAgdmlld0JveDogXCIwIDAgMjQgMjRcIixcbiAgICAgICAgZmlsbDogXCJub25lXCIsXG4gICAgICAgIHN0cm9rZTogXCJjdXJyZW50Q29sb3JcIixcbiAgICAgICAgXCJzdHJva2Utd2lkdGhcIjogXCIyXCIsXG4gICAgICAgIFwic3Ryb2tlLWxpbmVjYXBcIjogXCJyb3VuZFwiLFxuICAgICAgICBcInN0cm9rZS1saW5lam9pblwiOiBcInJvdW5kXCJcbiAgICAgIH0sXG4gICAgICBcImNsYXNzXCI6IFwiZmVhdGhlciBmZWF0aGVyLWhhcmQtZHJpdmVcIlxuICAgIH0sIGN0eC5kYXRhXSksIFtoKFwibGluZVwiLCB7XG4gICAgICBhdHRyczoge1xuICAgICAgICB4MTogXCIyMlwiLFxuICAgICAgICB5MTogXCIxMlwiLFxuICAgICAgICB4MjogXCIyXCIsXG4gICAgICAgIHkyOiBcIjEyXCJcbiAgICAgIH1cbiAgICB9KSwgaChcInBhdGhcIiwge1xuICAgICAgYXR0cnM6IHtcbiAgICAgICAgZDogXCJNNS40NSA1LjExTDIgMTJ2NmEyIDIgMCAwIDAgMiAyaDE2YTIgMiAwIDAgMCAyLTJ2LTZsLTMuNDUtNi44OUEyIDIgMCAwIDAgMTYuNzYgNEg3LjI0YTIgMiAwIDAgMC0xLjc5IDEuMTF6XCJcbiAgICAgIH1cbiAgICB9KSwgaChcImxpbmVcIiwge1xuICAgICAgYXR0cnM6IHtcbiAgICAgICAgeDE6IFwiNlwiLFxuICAgICAgICB5MTogXCIxNlwiLFxuICAgICAgICB4MjogXCI2LjAxXCIsXG4gICAgICAgIHkyOiBcIjE2XCJcbiAgICAgIH1cbiAgICB9KSwgaChcImxpbmVcIiwge1xuICAgICAgYXR0cnM6IHtcbiAgICAgICAgeDE6IFwiMTBcIixcbiAgICAgICAgeTE6IFwiMTZcIixcbiAgICAgICAgeDI6IFwiMTAuMDFcIixcbiAgICAgICAgeTI6IFwiMTZcIlxuICAgICAgfVxuICAgIH0pXSk7XG4gIH1cbn07IiwiPHRlbXBsYXRlPlxuICAgIDxoZWFkZXIgY2xhc3M9XCJtYWluLWhlYWRlciBwYWdlLXdyYXBwZXIgbWVkaXVtXCI+XG4gICAgICAgIDxQYWdlVGl0bGVcbiAgICAgICAgICAgIDp0aXRsZT1cImluZGV4LmhlYWRlcl90aXRsZVwiXG4gICAgICAgICAgICA6ZGVzY3JpcHRpb249XCJpbmRleC5oZWFkZXJfZGVzY3JpcHRpb25cIlxuICAgICAgICAvPlxuXG4gICAgICAgIDxkaXYgdi1pZj1cIiEgY29uZmlnLmlzQXV0aGVudGljYXRlZFwiPlxuXG4gICAgICAgICAgICA8IS0tVXNlciByZWdpc3RyYXRpb24gYnV0dG9uLS0+XG4gICAgICAgICAgICA8cm91dGVyLWxpbmsgdi1pZj1cImNvbmZpZy51c2VyUmVnaXN0cmF0aW9uXCIgY2xhc3M9XCJzaWduLXVwLWJ1dHRvblwiIDp0bz1cIntuYW1lOiAnU2lnblVwJ31cIj5cbiAgICAgICAgICAgICAgICA8QXV0aEJ1dHRvbiBjbGFzcz1cImJ1dHRvblwiIGljb249XCJjaGV2cm9uLXJpZ2h0XCIgOnRleHQ9XCIkdCgncGFnZV9pbmRleC5zaWduX3VwX2J1dHRvbicpXCIgLz5cbiAgICAgICAgICAgIDwvcm91dGVyLWxpbms+XG5cbiAgICAgICAgICAgIDwhLS1Vc2VyIGxvZ2luIGJ1dHRvbi0tPlxuICAgICAgICAgICAgPHJvdXRlci1saW5rIHYtaWY9XCIhIGNvbmZpZy51c2VyUmVnaXN0cmF0aW9uXCIgY2xhc3M9XCJzaWduLXVwLWJ1dHRvblwiIDp0bz1cIntuYW1lOiAnU2lnbkluJ31cIj5cbiAgICAgICAgICAgICAgICA8QXV0aEJ1dHRvbiBjbGFzcz1cImJ1dHRvblwiIGljb249XCJjaGV2cm9uLXJpZ2h0XCIgOnRleHQ9XCIkdCgncGFnZV9pbmRleC5tZW51LmxvZ19pbicpXCIgLz5cbiAgICAgICAgICAgIDwvcm91dGVyLWxpbms+XG5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmZWF0dXJlc1wiIHYtaWY9XCJjb25maWcuaXNTYWFTXCI+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZlYXR1cmVcIj5cbiAgICAgICAgICAgICAgICAgICAgPGNyZWRpdC1jYXJkLWljb24gc2l6ZT1cIjE5XCIgY2xhc3M9XCJmZWF0dXJlLWljb25cIj48L2NyZWRpdC1jYXJkLWljb24+XG4gICAgICAgICAgICAgICAgICAgIDxiIGNsYXNzPVwiZmVhdHVyZS10aXRsZVwiPnt7ICR0KCdwYWdlX2luZGV4LnNpZ25fZmVhdHVyZV8xJykgfX08L2I+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZlYXR1cmVcIj5cbiAgICAgICAgICAgICAgICAgICAgPGhhcmQtZHJpdmUtaWNvbiBzaXplPVwiMTlcIiBjbGFzcz1cImZlYXR1cmUtaWNvblwiPjwvaGFyZC1kcml2ZS1pY29uPlxuICAgICAgICAgICAgICAgICAgICA8YiBjbGFzcz1cImZlYXR1cmUtdGl0bGVcIj57eyAkdCgncGFnZV9pbmRleC5zaWduX2ZlYXR1cmVfMicsIHtkZWZhdWx0U3BhY2U6IGNvbmZpZy5zdG9yYWdlRGVmYXVsdFNwYWNlRm9ybWF0dGVkfSkgfX08L2I+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgPC9oZWFkZXI+XG48L3RlbXBsYXRlPlxuXG48c2NyaXB0PlxuICAgIGltcG9ydCBIYXJkRHJpdmVJY29uIGZyb20gXCJ2dWUtZmVhdGhlci1pY29ucy9pY29ucy9IYXJkRHJpdmVJY29uXCI7XG4gICAgaW1wb3J0IFBhZ2VUaXRsZSBmcm9tICdAL2NvbXBvbmVudHMvSW5kZXgvQ29tcG9uZW50cy9QYWdlVGl0bGUnXG4gICAgaW1wb3J0IEF1dGhCdXR0b24gZnJvbSAnQC9jb21wb25lbnRzL0F1dGgvQXV0aEJ1dHRvbidcbiAgICBpbXBvcnQgeyBDcmVkaXRDYXJkSWNvbiB9IGZyb20gJ3Z1ZS1mZWF0aGVyLWljb25zJ1xuICAgIGltcG9ydCB7IG1hcEdldHRlcnMgfSBmcm9tICd2dWV4J1xuXG4gICAgZXhwb3J0IGRlZmF1bHQge1xuICAgICAgICBuYW1lOiAnSW5kZXhQYWdlSGVhZGVyJyxcbiAgICAgICAgY29tcG9uZW50czoge1xuICAgICAgICAgICAgUGFnZVRpdGxlLFxuICAgICAgICAgICAgQ3JlZGl0Q2FyZEljb24sXG4gICAgICAgICAgICBIYXJkRHJpdmVJY29uLFxuICAgICAgICAgICAgQXV0aEJ1dHRvbixcbiAgICAgICAgfSxcbiAgICAgICAgY29tcHV0ZWQ6IHtcbiAgICAgICAgICAgIC4uLm1hcEdldHRlcnMoWydpbmRleCcsICdjb25maWcnXSksXG4gICAgICAgIH0sXG4gICAgfVxuPC9zY3JpcHQ+XG5cbjxzdHlsZSBsYW5nPVwic2Nzc1wiIHNjb3BlZD5cbiAgICBAaW1wb3J0ICdAYXNzZXRzL3Z1ZWZpbGVtYW5hZ2VyL19sYW5kaW5nLXBhZ2UnO1xuICAgIEBpbXBvcnQgJ0Bhc3NldHMvdnVlZmlsZW1hbmFnZXIvX3ZhcmlhYmxlcyc7XG4gICAgQGltcG9ydCAnQGFzc2V0cy92dWVmaWxlbWFuYWdlci9fbWl4aW5zJztcblxuICAgIC5mZWF0dXJlcyB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIG1hcmdpbi10b3A6IDM1cHg7XG5cbiAgICAgICAgLmZlYXR1cmUge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMzVweDtcblxuICAgICAgICAgICAgJjpudGgtY2hpbGQoMSkge1xuICAgICAgICAgICAgICAgIHBhdGgsIGxpbmUsIHBvbHlsaW5lLCByZWN0LCBjaXJjbGUge1xuICAgICAgICAgICAgICAgICAgICBzdHJva2U6ICR5ZWxsb3c7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOm50aC1jaGlsZCgyKSB7XG4gICAgICAgICAgICAgICAgcGF0aCwgbGluZSwgcG9seWxpbmUsIHJlY3QsIGNpcmNsZSB7XG4gICAgICAgICAgICAgICAgICAgIHN0cm9rZTogJHB1cnBsZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuZmVhdHVyZS10aXRsZSB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgZm9udC1zaXplKDE0KTtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuZmVhdHVyZS1pY29uIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAubWFpbi1oZWFkZXIge1xuICAgICAgICBwYWRkaW5nLXRvcDogNzBweDtcbiAgICB9XG5cbiAgICAuc2lnbi11cC1idXR0b24ge1xuICAgICAgICBtYXJnaW4tdG9wOiA2NXB4O1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcblxuICAgICAgICAuYnV0dG9uIHtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2OTBweCkge1xuXG4gICAgICAgIC5tYWluLWhlYWRlciB7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogNTBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5mZWF0dXJlcyB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcblxuICAgICAgICAgICAgLmZlYXR1cmUge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuXG4gICAgICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuc2lnbi11cC1idXR0b24ge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMzBweDtcbiAgICAgICAgfVxuICAgIH1cbjwvc3R5bGU+XG4iLCJpbXBvcnQgbW9kIGZyb20gXCItIS4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9iYWJlbC1sb2FkZXIvbGliL2luZGV4LmpzPz9yZWYtLTQtMCEuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvaW5kZXguanM/P3Z1ZS1sb2FkZXItb3B0aW9ucyEuL0luZGV4UGFnZUhlYWRlci52dWU/dnVlJnR5cGU9c2NyaXB0Jmxhbmc9anMmXCI7IGV4cG9ydCBkZWZhdWx0IG1vZDsgZXhwb3J0ICogZnJvbSBcIi0hLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2JhYmVsLWxvYWRlci9saWIvaW5kZXguanM/P3JlZi0tNC0wIS4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9pbmRleC5qcz8/dnVlLWxvYWRlci1vcHRpb25zIS4vSW5kZXhQYWdlSGVhZGVyLnZ1ZT92dWUmdHlwZT1zY3JpcHQmbGFuZz1qcyZcIiIsImltcG9ydCB7IHJlbmRlciwgc3RhdGljUmVuZGVyRm5zIH0gZnJvbSBcIi4vSW5kZXhQYWdlSGVhZGVyLnZ1ZT92dWUmdHlwZT10ZW1wbGF0ZSZpZD0wNTM0ZjNkZCZzY29wZWQ9dHJ1ZSZcIlxuaW1wb3J0IHNjcmlwdCBmcm9tIFwiLi9JbmRleFBhZ2VIZWFkZXIudnVlP3Z1ZSZ0eXBlPXNjcmlwdCZsYW5nPWpzJlwiXG5leHBvcnQgKiBmcm9tIFwiLi9JbmRleFBhZ2VIZWFkZXIudnVlP3Z1ZSZ0eXBlPXNjcmlwdCZsYW5nPWpzJlwiXG5pbXBvcnQgc3R5bGUwIGZyb20gXCIuL0luZGV4UGFnZUhlYWRlci52dWU/dnVlJnR5cGU9c3R5bGUmaW5kZXg9MCZpZD0wNTM0ZjNkZCZsYW5nPXNjc3Mmc2NvcGVkPXRydWUmXCJcblxuXG4vKiBub3JtYWxpemUgY29tcG9uZW50ICovXG5pbXBvcnQgbm9ybWFsaXplciBmcm9tIFwiIS4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9ydW50aW1lL2NvbXBvbmVudE5vcm1hbGl6ZXIuanNcIlxudmFyIGNvbXBvbmVudCA9IG5vcm1hbGl6ZXIoXG4gIHNjcmlwdCxcbiAgcmVuZGVyLFxuICBzdGF0aWNSZW5kZXJGbnMsXG4gIGZhbHNlLFxuICBudWxsLFxuICBcIjA1MzRmM2RkXCIsXG4gIG51bGxcbiAgXG4pXG5cbmV4cG9ydCBkZWZhdWx0IGNvbXBvbmVudC5leHBvcnRzIiwidmFyIHJlbmRlciA9IGZ1bmN0aW9uICgpIHt2YXIgX3ZtPXRoaXM7dmFyIF9oPV92bS4kY3JlYXRlRWxlbWVudDt2YXIgX2M9X3ZtLl9zZWxmLl9jfHxfaDtyZXR1cm4gX2MoJ2hlYWRlcicse3N0YXRpY0NsYXNzOlwibWFpbi1oZWFkZXIgcGFnZS13cmFwcGVyIG1lZGl1bVwifSxbX2MoJ1BhZ2VUaXRsZScse2F0dHJzOntcInRpdGxlXCI6X3ZtLmluZGV4LmhlYWRlcl90aXRsZSxcImRlc2NyaXB0aW9uXCI6X3ZtLmluZGV4LmhlYWRlcl9kZXNjcmlwdGlvbn19KSxfdm0uX3YoXCIgXCIpLCghIF92bS5jb25maWcuaXNBdXRoZW50aWNhdGVkKT9fYygnZGl2JyxbKF92bS5jb25maWcudXNlclJlZ2lzdHJhdGlvbik/X2MoJ3JvdXRlci1saW5rJyx7c3RhdGljQ2xhc3M6XCJzaWduLXVwLWJ1dHRvblwiLGF0dHJzOntcInRvXCI6e25hbWU6ICdTaWduVXAnfX19LFtfYygnQXV0aEJ1dHRvbicse3N0YXRpY0NsYXNzOlwiYnV0dG9uXCIsYXR0cnM6e1wiaWNvblwiOlwiY2hldnJvbi1yaWdodFwiLFwidGV4dFwiOl92bS4kdCgncGFnZV9pbmRleC5zaWduX3VwX2J1dHRvbicpfX0pXSwxKTpfdm0uX2UoKSxfdm0uX3YoXCIgXCIpLCghIF92bS5jb25maWcudXNlclJlZ2lzdHJhdGlvbik/X2MoJ3JvdXRlci1saW5rJyx7c3RhdGljQ2xhc3M6XCJzaWduLXVwLWJ1dHRvblwiLGF0dHJzOntcInRvXCI6e25hbWU6ICdTaWduSW4nfX19LFtfYygnQXV0aEJ1dHRvbicse3N0YXRpY0NsYXNzOlwiYnV0dG9uXCIsYXR0cnM6e1wiaWNvblwiOlwiY2hldnJvbi1yaWdodFwiLFwidGV4dFwiOl92bS4kdCgncGFnZV9pbmRleC5tZW51LmxvZ19pbicpfX0pXSwxKTpfdm0uX2UoKSxfdm0uX3YoXCIgXCIpLChfdm0uY29uZmlnLmlzU2FhUyk/X2MoJ2Rpdicse3N0YXRpY0NsYXNzOlwiZmVhdHVyZXNcIn0sW19jKCdkaXYnLHtzdGF0aWNDbGFzczpcImZlYXR1cmVcIn0sW19jKCdjcmVkaXQtY2FyZC1pY29uJyx7c3RhdGljQ2xhc3M6XCJmZWF0dXJlLWljb25cIixhdHRyczp7XCJzaXplXCI6XCIxOVwifX0pLF92bS5fdihcIiBcIiksX2MoJ2InLHtzdGF0aWNDbGFzczpcImZlYXR1cmUtdGl0bGVcIn0sW192bS5fdihfdm0uX3MoX3ZtLiR0KCdwYWdlX2luZGV4LnNpZ25fZmVhdHVyZV8xJykpKV0pXSwxKSxfdm0uX3YoXCIgXCIpLF9jKCdkaXYnLHtzdGF0aWNDbGFzczpcImZlYXR1cmVcIn0sW19jKCdoYXJkLWRyaXZlLWljb24nLHtzdGF0aWNDbGFzczpcImZlYXR1cmUtaWNvblwiLGF0dHJzOntcInNpemVcIjpcIjE5XCJ9fSksX3ZtLl92KFwiIFwiKSxfYygnYicse3N0YXRpY0NsYXNzOlwiZmVhdHVyZS10aXRsZVwifSxbX3ZtLl92KF92bS5fcyhfdm0uJHQoJ3BhZ2VfaW5kZXguc2lnbl9mZWF0dXJlXzInLCB7ZGVmYXVsdFNwYWNlOiBfdm0uY29uZmlnLnN0b3JhZ2VEZWZhdWx0U3BhY2VGb3JtYXR0ZWR9KSkpXSldLDEpXSk6X3ZtLl9lKCldLDEpOl92bS5fZSgpXSwxKX1cbnZhciBzdGF0aWNSZW5kZXJGbnMgPSBbXVxuXG5leHBvcnQgeyByZW5kZXIsIHN0YXRpY1JlbmRlckZucyB9IiwiPHRlbXBsYXRlPlxuICAgIDxkaXYgY2xhc3M9XCJwYWdlLXdyYXBwZXIgbGFyZ2UgZ2V0LXN0YXJ0ZWRcIiB2LWlmPVwiaW5kZXguc2VjdGlvbl9nZXRfc3RhcnRlZCA9PT0gJzEnXCI+XG5cbiAgICAgICAgPFBhZ2VUaXRsZVxuICAgICAgICAgICAgICAgIGNsYXNzPVwicGFnZS10aXRsZVwiXG4gICAgICAgICAgICAgICAgdHlwZT1cImNlbnRlclwiXG4gICAgICAgICAgICAgICAgOnRpdGxlPVwiaW5kZXguZ2V0X3N0YXJ0ZWRfdGl0bGVcIlxuICAgICAgICAgICAgICAgIDpkZXNjcmlwdGlvbj1cImluZGV4LmdldF9zdGFydGVkX2Rlc2NyaXB0aW9uXCJcbiAgICAgICAgPjwvUGFnZVRpdGxlPlxuXG4gICAgICAgIDxyb3V0ZXItbGluayB0YWc9XCJidXR0b25cIiBjbGFzcz1cImdldC1zdGFydGVkLWJ1dHRvbiBiZy10aGVtZS04MDAgaG92ZXItYmctdGhlbWUgc2hhZG93LXRoZW1lXCIgOnRvPVwie25hbWU6ICdTaWduVXAnfVwiPlxuICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJjb250ZW50XCI+e3sgJHQoJ3BhZ2VfaW5kZXguZ2V0X3N0YXJ0ZWRfYnV0dG9uJykgfX08L3NwYW4+XG4gICAgICAgICAgICA8Y2hldnJvbi1yaWdodC1pY29uIHNpemU9XCIyMlwiPjwvY2hldnJvbi1yaWdodC1pY29uPlxuICAgICAgICA8L3JvdXRlci1saW5rPlxuXG4gICAgICAgIDxjbG91ZC1pY29uIHNpemU9XCI3OTBcIiBjbGFzcz1cImNsb3VkLWJnIHN2Zy1jb2xvci10aGVtZVwiIC8+XG5cbiAgICAgICAgPGRpdiBjbGFzcz1cImljb25zXCI+XG4gICAgICAgICAgICA8aGFyZC1kcml2ZS1pY29uIHNpemU9XCI0MlwiIGNsYXNzPVwiaWNvblwiPjwvaGFyZC1kcml2ZS1pY29uPlxuICAgICAgICAgICAgPHNldHRpbmdzLWljb24gc2l6ZT1cIjIyXCIgY2xhc3M9XCJpY29uXCI+PC9zZXR0aW5ncy1pY29uPlxuICAgICAgICAgICAgPGltYWdlLWljb24gc2l6ZT1cIjUwXCIgY2xhc3M9XCJpY29uXCI+PC9pbWFnZS1pY29uPlxuICAgICAgICAgICAgPGxpbmstaWNvbiBzaXplPVwiMjRcIiBjbGFzcz1cImljb25cIj48L2xpbmstaWNvbj5cbiAgICAgICAgICAgIDx0cmFzaDItaWNvbiBzaXplPVwiNDBcIiBjbGFzcz1cImljb25cIj48L3RyYXNoMi1pY29uPlxuICAgICAgICAgICAgPHNlYXJjaC1pY29uIHNpemU9XCIxOFwiIGNsYXNzPVwiaWNvblwiPjwvc2VhcmNoLWljb24+XG4gICAgICAgICAgICA8ZXllLWljb24gc2l6ZT1cIjM2XCIgY2xhc3M9XCJpY29uXCI+PC9leWUtaWNvbj5cbiAgICAgICAgICAgIDxzdGFyLWljb24gc2l6ZT1cIjM0XCIgY2xhc3M9XCJpY29uXCI+PC9zdGFyLWljb24+XG4gICAgICAgICAgICA8Zm9sZGVyLXBsdXMtaWNvbiBzaXplPVwiMjBcIiBjbGFzcz1cImljb25cIj48L2ZvbGRlci1wbHVzLWljb24+XG4gICAgICAgICAgICA8Z3JpZC1pY29uIHNpemU9XCIyOFwiIGNsYXNzPVwiaWNvblwiPjwvZ3JpZC1pY29uPlxuICAgICAgICAgICAgPHNoYXJlLWljb24gc2l6ZT1cIjMyXCIgY2xhc3M9XCJpY29uXCI+PC9zaGFyZS1pY29uPlxuICAgICAgICAgICAgPGZvbGRlci1wbHVzLWljb24gc2l6ZT1cIjQ4XCIgY2xhc3M9XCJpY29uXCI+PC9mb2xkZXItcGx1cy1pY29uPlxuICAgICAgICAgICAgPHNlYXJjaC1pY29uIHNpemU9XCIzNFwiIGNsYXNzPVwiaWNvblwiPjwvc2VhcmNoLWljb24+XG4gICAgICAgICAgICA8c3Rhci1pY29uIHNpemU9XCIyMlwiIGNsYXNzPVwiaWNvblwiPjwvc3Rhci1pY29uPlxuICAgICAgICAgICAgPHVwbG9hZC1jbG91ZC1pY29uIHNpemU9XCI0MlwiIGNsYXNzPVwiaWNvblwiPjwvdXBsb2FkLWNsb3VkLWljb24+XG4gICAgICAgICAgICA8Z3JpZC1pY29uIHNpemU9XCIxOFwiIGNsYXNzPVwiaWNvblwiPjwvZ3JpZC1pY29uPlxuICAgICAgICAgICAgPHNldHRpbmdzLWljb24gc2l6ZT1cIjMyXCIgY2xhc3M9XCJpY29uXCI+PC9zZXR0aW5ncy1pY29uPlxuICAgICAgICAgICAgPGxpbmstaWNvbiBzaXplPVwiMzZcIiBjbGFzcz1cImljb25cIj48L2xpbmstaWNvbj5cbiAgICAgICAgICAgIDxoYXJkLWRyaXZlLWljb24gc2l6ZT1cIjIyXCIgY2xhc3M9XCJpY29uXCI+PC9oYXJkLWRyaXZlLWljb24+XG4gICAgICAgICAgICA8aW5mby1pY29uIHNpemU9XCIzNlwiIGNsYXNzPVwiaWNvblwiPjwvaW5mby1pY29uPlxuICAgICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbjwvdGVtcGxhdGU+XG5cbjxzY3JpcHQ+XG4gICAgaW1wb3J0IFBhZ2VUaXRsZSBmcm9tICdAL2NvbXBvbmVudHMvSW5kZXgvQ29tcG9uZW50cy9QYWdlVGl0bGUnXG4gICAgaW1wb3J0IHtcbiAgICAgICAgQ2hldnJvblJpZ2h0SWNvbixcbiAgICAgICAgVXBsb2FkQ2xvdWRJY29uLFxuICAgICAgICBGb2xkZXJQbHVzSWNvbixcbiAgICAgICAgSGFyZERyaXZlSWNvbixcbiAgICAgICAgU2V0dGluZ3NJY29uLFxuICAgICAgICBUcmFzaDJJY29uLFxuICAgICAgICBTZWFyY2hJY29uLFxuICAgICAgICBTaGFyZUljb24sXG4gICAgICAgIENsb3VkSWNvbixcbiAgICAgICAgSW1hZ2VJY29uLFxuICAgICAgICBJbmZvSWNvbixcbiAgICAgICAgR3JpZEljb24sXG4gICAgICAgIExpbmtJY29uLFxuICAgICAgICBTdGFySWNvbixcbiAgICAgICAgRXllSWNvbixcbiAgICB9IGZyb20gJ3Z1ZS1mZWF0aGVyLWljb25zJ1xuICAgIGltcG9ydCB7IG1hcEdldHRlcnMgfSBmcm9tICd2dWV4J1xuXG4gICAgZXhwb3J0IGRlZmF1bHQge1xuICAgICAgICBuYW1lOiAnSW5kZXhHZXRTdGFydGVkJyxcbiAgICAgICAgY29tcG9uZW50czoge1xuICAgICAgICAgICAgSW5mb0ljb24sXG4gICAgICAgICAgICBVcGxvYWRDbG91ZEljb24sXG4gICAgICAgICAgICBTaGFyZUljb24sXG4gICAgICAgICAgICBDaGV2cm9uUmlnaHRJY29uLFxuICAgICAgICAgICAgRm9sZGVyUGx1c0ljb24sXG4gICAgICAgICAgICBIYXJkRHJpdmVJY29uLFxuICAgICAgICAgICAgU2V0dGluZ3NJY29uLFxuICAgICAgICAgICAgVHJhc2gySWNvbixcbiAgICAgICAgICAgIFNlYXJjaEljb24sXG4gICAgICAgICAgICBDbG91ZEljb24sXG4gICAgICAgICAgICBQYWdlVGl0bGUsXG4gICAgICAgICAgICBJbWFnZUljb24sXG4gICAgICAgICAgICBHcmlkSWNvbixcbiAgICAgICAgICAgIExpbmtJY29uLFxuICAgICAgICAgICAgU3Rhckljb24sXG4gICAgICAgICAgICBFeWVJY29uLFxuICAgICAgICB9LFxuICAgICAgICBjb21wdXRlZDoge1xuICAgICAgICAgICAgLi4ubWFwR2V0dGVycyhbJ2luZGV4J10pLFxuICAgICAgICB9LFxuICAgIH1cbjwvc2NyaXB0PlxuXG48c3R5bGUgbGFuZz1cInNjc3NcIiBzY29wZWQ+XG4gICAgQGltcG9ydCAnQGFzc2V0cy92dWVmaWxlbWFuYWdlci9fbGFuZGluZy1wYWdlJztcbiAgICBAaW1wb3J0ICdAYXNzZXRzL3Z1ZWZpbGVtYW5hZ2VyL192YXJpYWJsZXMnO1xuICAgIEBpbXBvcnQgJ0Bhc3NldHMvdnVlZmlsZW1hbmFnZXIvX21peGlucyc7XG5cbiAgICAuaWNvbnMge1xuXG4gICAgICAgIC5pY29uIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcblxuICAgICAgICAgICAgJjpudGgtY2hpbGQoMjApIHtcbiAgICAgICAgICAgICAgICBib3R0b206IC0zNyU7XG4gICAgICAgICAgICAgICAgbGVmdDogMzclO1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuXG4gICAgICAgICAgICAgICAgY2lyY2xlLCBsaW5lIHtcbiAgICAgICAgICAgICAgICAgICAgc3Ryb2tlOiAkeWVsbG93O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjpudGgtY2hpbGQoMTkpIHtcbiAgICAgICAgICAgICAgICBib3R0b206IC0yMSU7XG4gICAgICAgICAgICAgICAgbGVmdDogMjMuNSU7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTIwZGVnKTtcblxuICAgICAgICAgICAgICAgIHBhdGgsIGxpbmUge1xuICAgICAgICAgICAgICAgICAgICBzdHJva2U6ICRwdXJwbGU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOm50aC1jaGlsZCgxOCkge1xuICAgICAgICAgICAgICAgIGJvdHRvbTogLTQlO1xuICAgICAgICAgICAgICAgIGxlZnQ6IDI2LjUlO1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuXG4gICAgICAgICAgICAgICAgcGF0aCB7XG4gICAgICAgICAgICAgICAgICAgIHN0cm9rZTogJHRoZW1lO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjpudGgtY2hpbGQoMTcpIHtcbiAgICAgICAgICAgICAgICBib3R0b206IC01JTtcbiAgICAgICAgICAgICAgICBsZWZ0OiA4LjUlO1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOm50aC1jaGlsZCgxNikge1xuICAgICAgICAgICAgICAgIHRvcDogODYlO1xuICAgICAgICAgICAgICAgIGxlZnQ6IDE3JTtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxOGRlZyk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6bnRoLWNoaWxkKDE1KSB7XG4gICAgICAgICAgICAgICAgdG9wOiA2NCU7XG4gICAgICAgICAgICAgICAgbGVmdDogMTclO1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuXG4gICAgICAgICAgICAgICAgcG9seWxpbmUsIGxpbmUsIHBhdGgge1xuICAgICAgICAgICAgICAgICAgICBzdHJva2U6ICRyZWQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOm50aC1jaGlsZCgxNCkge1xuICAgICAgICAgICAgICAgIHRvcDogNDQlO1xuICAgICAgICAgICAgICAgIGxlZnQ6IDI4JTtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcblxuICAgICAgICAgICAgICAgIHBvbHlnb24ge1xuICAgICAgICAgICAgICAgICAgICBzdHJva2U6ICRwdXJwbGU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOm50aC1jaGlsZCgxMykge1xuICAgICAgICAgICAgICAgIHRvcDogMzMlO1xuICAgICAgICAgICAgICAgIGxlZnQ6IDE2JTtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjpudGgtY2hpbGQoMTIpIHtcbiAgICAgICAgICAgICAgICB0b3A6IDIzJTtcbiAgICAgICAgICAgICAgICBsZWZ0OiAzMiU7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMTNkZWcpO1xuXG4gICAgICAgICAgICAgICAgbGluZSwgcGF0aCB7XG4gICAgICAgICAgICAgICAgICAgIHN0cm9rZTogJHllbGxvdztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6bnRoLWNoaWxkKDEpIHtcbiAgICAgICAgICAgICAgICB0b3A6IDM1JTtcbiAgICAgICAgICAgICAgICByaWdodDogNDklO1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC0xMWRlZyk7XG5cbiAgICAgICAgICAgICAgICBsaW5lLCBwYXRoIHtcbiAgICAgICAgICAgICAgICAgICAgc3Ryb2tlOiAkdGhlbWU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOm50aC1jaGlsZCgyKSB7XG4gICAgICAgICAgICAgICAgdG9wOiAxMiU7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDQ1JTtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwKTtcblxuICAgICAgICAgICAgICAgIGNpcmNsZSwgcGF0aCB7XG4gICAgICAgICAgICAgICAgICAgIHN0cm9rZTogJHJlZDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6bnRoLWNoaWxkKDMpIHtcbiAgICAgICAgICAgICAgICB0b3A6IDMwJTtcbiAgICAgICAgICAgICAgICByaWdodDogMzAlO1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDIwZGVnKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjpudGgtY2hpbGQoNCkge1xuICAgICAgICAgICAgICAgIHRvcDogMTQlO1xuICAgICAgICAgICAgICAgIHJpZ2h0OiAxNC41JTtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtMWRlZyk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6bnRoLWNoaWxkKDUpIHtcbiAgICAgICAgICAgICAgICB0b3A6IDYyJTtcbiAgICAgICAgICAgICAgICByaWdodDogMTUuNSU7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMjFkZWcpO1xuXG4gICAgICAgICAgICAgICAgcG9seWxpbmUsIHBhdGgsIGxpbmUge1xuICAgICAgICAgICAgICAgICAgICBzdHJva2U6ICRyZWQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOm50aC1jaGlsZCg2KSB7XG4gICAgICAgICAgICAgICAgdG9wOiA2NiU7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDI2LjUlO1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOm50aC1jaGlsZCg3KSB7XG4gICAgICAgICAgICAgICAgYm90dG9tOiAzJTtcbiAgICAgICAgICAgICAgICByaWdodDogMjEuNSU7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMTZkZWcpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOm50aC1jaGlsZCg4KSB7XG4gICAgICAgICAgICAgICAgYm90dG9tOiAtMTMlO1xuICAgICAgICAgICAgICAgIHJpZ2h0OiAxNi41JTtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcblxuICAgICAgICAgICAgICAgIHBvbHlnb24ge1xuICAgICAgICAgICAgICAgICAgICBzdHJva2U6ICR5ZWxsb3c7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOm50aC1jaGlsZCg5KSB7XG4gICAgICAgICAgICAgICAgYm90dG9tOiAtMzIlO1xuICAgICAgICAgICAgICAgIHJpZ2h0OiAyNyU7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTIwZGVnKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjpudGgtY2hpbGQoMTApIHtcbiAgICAgICAgICAgICAgICBib3R0b206IC01JTtcbiAgICAgICAgICAgICAgICByaWdodDogMzQlO1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDE2ZGVnKTtcblxuICAgICAgICAgICAgICAgIHJlY3Qge1xuICAgICAgICAgICAgICAgICAgICBzdHJva2U6ICRwdXJwbGU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOm50aC1jaGlsZCgxMSkge1xuICAgICAgICAgICAgICAgIGJvdHRvbTogLTI4JTtcbiAgICAgICAgICAgICAgICByaWdodDogNDQlO1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC0xMmRlZyk7XG5cbiAgICAgICAgICAgICAgICBwb2x5bGluZSwgbGluZSwgcGF0aCB7XG4gICAgICAgICAgICAgICAgICAgIHN0cm9rZTogJHJlZDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5jbG91ZC1iZyB7XG4gICAgICAgIHotaW5kZXg6IDA7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiA3MHB4O1xuICAgICAgICByaWdodDogNjBweDtcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgtMSwgMSkgcm90YXRlKDEzZGVnKTtcbiAgICAgICAgb3BhY2l0eTogMC4xO1xuXG4gICAgICAgIHBhdGgge1xuICAgICAgICAgICAgc3Ryb2tlOiBub25lO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnBhZ2UtdGl0bGUge1xuICAgICAgICBwYWRkaW5nLXRvcDogMzQwcHg7XG4gICAgfVxuXG4gICAgLmdldC1zdGFydGVkLWJ1dHRvbiB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICBwYWRkaW5nOiAyMHB4IDM2cHg7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDZweDtcbiAgICAgICAgLy9ib3gtc2hhZG93OiAwIDVweCAxMHB4IDJweCByZ2JhKCR0aGVtZSwgMC4zNCk7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDM5NXB4O1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKDE1MG1zKTtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB6LWluZGV4OiAxO1xuXG4gICAgICAgIC5jb250ZW50IHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgxOSk7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA4cHg7XG4gICAgICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgIH1cblxuICAgICAgICBwb2x5bGluZSB7XG4gICAgICAgICAgICBzdHJva2U6IHdoaXRlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMTkwcHgpIHtcbiAgICAgICAgLmdldC1zdGFydGVkLWJ1dHRvbiB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyODBweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTYwcHgpIHtcbiAgICAgICAgLnBhZ2UtdGl0bGUge1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IDIwcHg7XG4gICAgICAgIH1cblxuICAgICAgICAuZ2V0LXN0YXJ0ZWQtYnV0dG9uIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgICAgIH1cblxuICAgICAgICAuY2xvdWQtYmcsXG4gICAgICAgIC5pY29ucyB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgfVxuPC9zdHlsZT5cbiIsImltcG9ydCBtb2QgZnJvbSBcIi0hLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2JhYmVsLWxvYWRlci9saWIvaW5kZXguanM/P3JlZi0tNC0wIS4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9pbmRleC5qcz8/dnVlLWxvYWRlci1vcHRpb25zIS4vSW5kZXhHZXRTdGFydGVkLnZ1ZT92dWUmdHlwZT1zY3JpcHQmbGFuZz1qcyZcIjsgZXhwb3J0IGRlZmF1bHQgbW9kOyBleHBvcnQgKiBmcm9tIFwiLSEuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvYmFiZWwtbG9hZGVyL2xpYi9pbmRleC5qcz8/cmVmLS00LTAhLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL2luZGV4LmpzPz92dWUtbG9hZGVyLW9wdGlvbnMhLi9JbmRleEdldFN0YXJ0ZWQudnVlP3Z1ZSZ0eXBlPXNjcmlwdCZsYW5nPWpzJlwiIiwiaW1wb3J0IHsgcmVuZGVyLCBzdGF0aWNSZW5kZXJGbnMgfSBmcm9tIFwiLi9JbmRleEdldFN0YXJ0ZWQudnVlP3Z1ZSZ0eXBlPXRlbXBsYXRlJmlkPTY3NWMwODAyJnNjb3BlZD10cnVlJlwiXG5pbXBvcnQgc2NyaXB0IGZyb20gXCIuL0luZGV4R2V0U3RhcnRlZC52dWU/dnVlJnR5cGU9c2NyaXB0Jmxhbmc9anMmXCJcbmV4cG9ydCAqIGZyb20gXCIuL0luZGV4R2V0U3RhcnRlZC52dWU/dnVlJnR5cGU9c2NyaXB0Jmxhbmc9anMmXCJcbmltcG9ydCBzdHlsZTAgZnJvbSBcIi4vSW5kZXhHZXRTdGFydGVkLnZ1ZT92dWUmdHlwZT1zdHlsZSZpbmRleD0wJmlkPTY3NWMwODAyJmxhbmc9c2NzcyZzY29wZWQ9dHJ1ZSZcIlxuXG5cbi8qIG5vcm1hbGl6ZSBjb21wb25lbnQgKi9cbmltcG9ydCBub3JtYWxpemVyIGZyb20gXCIhLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL3J1bnRpbWUvY29tcG9uZW50Tm9ybWFsaXplci5qc1wiXG52YXIgY29tcG9uZW50ID0gbm9ybWFsaXplcihcbiAgc2NyaXB0LFxuICByZW5kZXIsXG4gIHN0YXRpY1JlbmRlckZucyxcbiAgZmFsc2UsXG4gIG51bGwsXG4gIFwiNjc1YzA4MDJcIixcbiAgbnVsbFxuICBcbilcblxuZXhwb3J0IGRlZmF1bHQgY29tcG9uZW50LmV4cG9ydHMiLCJ2YXIgcmVuZGVyID0gZnVuY3Rpb24gKCkge3ZhciBfdm09dGhpczt2YXIgX2g9X3ZtLiRjcmVhdGVFbGVtZW50O3ZhciBfYz1fdm0uX3NlbGYuX2N8fF9oO3JldHVybiAoX3ZtLmluZGV4LnNlY3Rpb25fZ2V0X3N0YXJ0ZWQgPT09ICcxJyk/X2MoJ2Rpdicse3N0YXRpY0NsYXNzOlwicGFnZS13cmFwcGVyIGxhcmdlIGdldC1zdGFydGVkXCJ9LFtfYygnUGFnZVRpdGxlJyx7c3RhdGljQ2xhc3M6XCJwYWdlLXRpdGxlXCIsYXR0cnM6e1widHlwZVwiOlwiY2VudGVyXCIsXCJ0aXRsZVwiOl92bS5pbmRleC5nZXRfc3RhcnRlZF90aXRsZSxcImRlc2NyaXB0aW9uXCI6X3ZtLmluZGV4LmdldF9zdGFydGVkX2Rlc2NyaXB0aW9ufX0pLF92bS5fdihcIiBcIiksX2MoJ3JvdXRlci1saW5rJyx7c3RhdGljQ2xhc3M6XCJnZXQtc3RhcnRlZC1idXR0b24gYmctdGhlbWUtODAwIGhvdmVyLWJnLXRoZW1lIHNoYWRvdy10aGVtZVwiLGF0dHJzOntcInRhZ1wiOlwiYnV0dG9uXCIsXCJ0b1wiOntuYW1lOiAnU2lnblVwJ319fSxbX2MoJ3NwYW4nLHtzdGF0aWNDbGFzczpcImNvbnRlbnRcIn0sW192bS5fdihfdm0uX3MoX3ZtLiR0KCdwYWdlX2luZGV4LmdldF9zdGFydGVkX2J1dHRvbicpKSldKSxfdm0uX3YoXCIgXCIpLF9jKCdjaGV2cm9uLXJpZ2h0LWljb24nLHthdHRyczp7XCJzaXplXCI6XCIyMlwifX0pXSwxKSxfdm0uX3YoXCIgXCIpLF9jKCdjbG91ZC1pY29uJyx7c3RhdGljQ2xhc3M6XCJjbG91ZC1iZyBzdmctY29sb3ItdGhlbWVcIixhdHRyczp7XCJzaXplXCI6XCI3OTBcIn19KSxfdm0uX3YoXCIgXCIpLF9jKCdkaXYnLHtzdGF0aWNDbGFzczpcImljb25zXCJ9LFtfYygnaGFyZC1kcml2ZS1pY29uJyx7c3RhdGljQ2xhc3M6XCJpY29uXCIsYXR0cnM6e1wic2l6ZVwiOlwiNDJcIn19KSxfdm0uX3YoXCIgXCIpLF9jKCdzZXR0aW5ncy1pY29uJyx7c3RhdGljQ2xhc3M6XCJpY29uXCIsYXR0cnM6e1wic2l6ZVwiOlwiMjJcIn19KSxfdm0uX3YoXCIgXCIpLF9jKCdpbWFnZS1pY29uJyx7c3RhdGljQ2xhc3M6XCJpY29uXCIsYXR0cnM6e1wic2l6ZVwiOlwiNTBcIn19KSxfdm0uX3YoXCIgXCIpLF9jKCdsaW5rLWljb24nLHtzdGF0aWNDbGFzczpcImljb25cIixhdHRyczp7XCJzaXplXCI6XCIyNFwifX0pLF92bS5fdihcIiBcIiksX2MoJ3RyYXNoMi1pY29uJyx7c3RhdGljQ2xhc3M6XCJpY29uXCIsYXR0cnM6e1wic2l6ZVwiOlwiNDBcIn19KSxfdm0uX3YoXCIgXCIpLF9jKCdzZWFyY2gtaWNvbicse3N0YXRpY0NsYXNzOlwiaWNvblwiLGF0dHJzOntcInNpemVcIjpcIjE4XCJ9fSksX3ZtLl92KFwiIFwiKSxfYygnZXllLWljb24nLHtzdGF0aWNDbGFzczpcImljb25cIixhdHRyczp7XCJzaXplXCI6XCIzNlwifX0pLF92bS5fdihcIiBcIiksX2MoJ3N0YXItaWNvbicse3N0YXRpY0NsYXNzOlwiaWNvblwiLGF0dHJzOntcInNpemVcIjpcIjM0XCJ9fSksX3ZtLl92KFwiIFwiKSxfYygnZm9sZGVyLXBsdXMtaWNvbicse3N0YXRpY0NsYXNzOlwiaWNvblwiLGF0dHJzOntcInNpemVcIjpcIjIwXCJ9fSksX3ZtLl92KFwiIFwiKSxfYygnZ3JpZC1pY29uJyx7c3RhdGljQ2xhc3M6XCJpY29uXCIsYXR0cnM6e1wic2l6ZVwiOlwiMjhcIn19KSxfdm0uX3YoXCIgXCIpLF9jKCdzaGFyZS1pY29uJyx7c3RhdGljQ2xhc3M6XCJpY29uXCIsYXR0cnM6e1wic2l6ZVwiOlwiMzJcIn19KSxfdm0uX3YoXCIgXCIpLF9jKCdmb2xkZXItcGx1cy1pY29uJyx7c3RhdGljQ2xhc3M6XCJpY29uXCIsYXR0cnM6e1wic2l6ZVwiOlwiNDhcIn19KSxfdm0uX3YoXCIgXCIpLF9jKCdzZWFyY2gtaWNvbicse3N0YXRpY0NsYXNzOlwiaWNvblwiLGF0dHJzOntcInNpemVcIjpcIjM0XCJ9fSksX3ZtLl92KFwiIFwiKSxfYygnc3Rhci1pY29uJyx7c3RhdGljQ2xhc3M6XCJpY29uXCIsYXR0cnM6e1wic2l6ZVwiOlwiMjJcIn19KSxfdm0uX3YoXCIgXCIpLF9jKCd1cGxvYWQtY2xvdWQtaWNvbicse3N0YXRpY0NsYXNzOlwiaWNvblwiLGF0dHJzOntcInNpemVcIjpcIjQyXCJ9fSksX3ZtLl92KFwiIFwiKSxfYygnZ3JpZC1pY29uJyx7c3RhdGljQ2xhc3M6XCJpY29uXCIsYXR0cnM6e1wic2l6ZVwiOlwiMThcIn19KSxfdm0uX3YoXCIgXCIpLF9jKCdzZXR0aW5ncy1pY29uJyx7c3RhdGljQ2xhc3M6XCJpY29uXCIsYXR0cnM6e1wic2l6ZVwiOlwiMzJcIn19KSxfdm0uX3YoXCIgXCIpLF9jKCdsaW5rLWljb24nLHtzdGF0aWNDbGFzczpcImljb25cIixhdHRyczp7XCJzaXplXCI6XCIzNlwifX0pLF92bS5fdihcIiBcIiksX2MoJ2hhcmQtZHJpdmUtaWNvbicse3N0YXRpY0NsYXNzOlwiaWNvblwiLGF0dHJzOntcInNpemVcIjpcIjIyXCJ9fSksX3ZtLl92KFwiIFwiKSxfYygnaW5mby1pY29uJyx7c3RhdGljQ2xhc3M6XCJpY29uXCIsYXR0cnM6e1wic2l6ZVwiOlwiMzZcIn19KV0sMSldLDEpOl92bS5fZSgpfVxudmFyIHN0YXRpY1JlbmRlckZucyA9IFtdXG5cbmV4cG9ydCB7IHJlbmRlciwgc3RhdGljUmVuZGVyRm5zIH0iLCI8dGVtcGxhdGU+XG4gICAgPGRpdiBjbGFzcz1cImxhbmRpbmctcGFnZVwiPlxuICAgICAgICA8ZGl2IHYtaWY9XCIhIGlzTG9hZGluZ1wiPlxuICAgICAgICAgICAgPCEtLU5hdmlnYXRpb24tLT5cbiAgICAgICAgICAgIDxOYXZpZ2F0aW9uIGNsYXNzPVwicGFnZS13cmFwcGVyIG1lZGl1bVwiIC8+XG5cbiAgICAgICAgICAgIDwhLS1IZWFkZXItLT5cbiAgICAgICAgICAgIDxQYWdlSGVhZGVyIC8+XG5cbiAgICAgICAgICAgIDwhLS1WdWVGaWxlTWFuYWdlciBTY3JlZW5TaG90LS0+XG4gICAgICAgICAgICA8SGVyb1NjcmVlbnNob3QgLz5cblxuICAgICAgICAgICAgPCEtLU1haW4gRmVhdHVyZXMtLT5cbiAgICAgICAgICAgIDxNYWluRmVhdHVyZXMgLz5cblxuICAgICAgICAgICAgPCEtLVByaWNpbmcgVGFibGVzLS0+XG4gICAgICAgICAgICA8UHJpY2luZ1RhYmxlcyB2LWlmPVwiY29uZmlnLmlzU2FhU1wiIC8+XG5cbiAgICAgICAgICAgIDwhLS1HZXQgU3RhcnRlZCBDYWxsIFRvIEFjdGlvbi0tPlxuICAgICAgICAgICAgPEdldFN0YXJ0ZWQgLz5cblxuICAgICAgICAgICAgPCEtLUZvb3Rlci0tPlxuICAgICAgICAgICAgPFBhZ2VGb290ZXIgLz5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXYgdi1pZj1cImlzTG9hZGluZ1wiPlxuICAgICAgICAgICAgPFNwaW5uZXI+PC9TcGlubmVyPlxuICAgICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbjwvdGVtcGxhdGU+XG5cbjxzY3JpcHQ+XG4gICAgaW1wb3J0IEhlcm9TY3JlZW5zaG90IGZyb20gJ0AvY29tcG9uZW50cy9JbmRleC9JbmRleEhlcm9TY3JlZW5zaG90J1xuICAgIGltcG9ydCBQcmljaW5nVGFibGVzIGZyb20gJ0AvY29tcG9uZW50cy9JbmRleC9JbmRleFByaWNpbmdUYWJsZXMnXG4gICAgaW1wb3J0IE1haW5GZWF0dXJlcyBmcm9tICdAL2NvbXBvbmVudHMvSW5kZXgvSW5kZXhNYWluRmVhdHVyZXMnXG4gICAgaW1wb3J0IE5hdmlnYXRpb24gZnJvbSAnQC9jb21wb25lbnRzL0luZGV4L0luZGV4TmF2aWdhdGlvbidcbiAgICBpbXBvcnQgUGFnZUhlYWRlciBmcm9tICdAL2NvbXBvbmVudHMvSW5kZXgvSW5kZXhQYWdlSGVhZGVyJ1xuICAgIGltcG9ydCBHZXRTdGFydGVkIGZyb20gJ0AvY29tcG9uZW50cy9JbmRleC9JbmRleEdldFN0YXJ0ZWQnXG4gICAgaW1wb3J0IFBhZ2VGb290ZXIgZnJvbSAnQC9jb21wb25lbnRzL0luZGV4L0luZGV4UGFnZUZvb3RlcidcbiAgICBpbXBvcnQgU3Bpbm5lciBmcm9tICdAL2NvbXBvbmVudHMvRmlsZXNWaWV3L1NwaW5uZXInXG4gICAgaW1wb3J0IHsgbWFwR2V0dGVycyB9IGZyb20gJ3Z1ZXgnXG4gICAgaW1wb3J0IGF4aW9zIGZyb20gJ2F4aW9zJ1xuXG4gICAgZXhwb3J0IGRlZmF1bHQge1xuICAgICAgICBuYW1lOiAnSG9tZXBhZ2UnLFxuICAgICAgICBjb21wb25lbnRzOiB7XG4gICAgICAgICAgICBIZXJvU2NyZWVuc2hvdCxcbiAgICAgICAgICAgIFByaWNpbmdUYWJsZXMsXG4gICAgICAgICAgICBNYWluRmVhdHVyZXMsXG4gICAgICAgICAgICBHZXRTdGFydGVkLFxuICAgICAgICAgICAgTmF2aWdhdGlvbixcbiAgICAgICAgICAgIFBhZ2VIZWFkZXIsXG4gICAgICAgICAgICBQYWdlRm9vdGVyLFxuICAgICAgICAgICAgU3Bpbm5lcixcbiAgICAgICAgfSxcbiAgICAgICAgY29tcHV0ZWQ6IHtcbiAgICAgICAgICAgIC4uLm1hcEdldHRlcnMoWydjb25maWcnXSksXG4gICAgICAgIH0sXG4gICAgICAgIGRhdGEoKSB7XG4gICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAgIGlzTG9hZGluZzogdHJ1ZSxcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSxcbiAgICAgICAgbW91bnRlZCgpIHtcblxuICAgICAgICAgICAgaWYgKCEgdGhpcy5jb25maWcuYWxsb3dIb21lcGFnZSlcbiAgICAgICAgICAgICAgICB0aGlzLiRyb3V0ZXIucHVzaCh7bmFtZTogJ1NpZ25Jbid9KVxuXG4gICAgICAgICAgICAvLyBHZXQgcGFnZSBjb250ZW50XG4gICAgICAgICAgICBheGlvcy5nZXQoJy9hcGkvY29udGVudCcsIHtcbiAgICAgICAgICAgICAgICBwYXJhbXM6IHtcbiAgICAgICAgICAgICAgICAgICAgY29sdW1uOiAnYWxsb3dfaG9tZXBhZ2V8Zm9vdGVyX2NvbnRlbnR8Z2V0X3N0YXJ0ZWRfZGVzY3JpcHRpb258Z2V0X3N0YXJ0ZWRfdGl0bGV8cHJpY2luZ19kZXNjcmlwdGlvbnxwcmljaW5nX3RpdGxlfGZlYXR1cmVfZGVzY3JpcHRpb25fM3xmZWF0dXJlX3RpdGxlXzN8ZmVhdHVyZV9kZXNjcmlwdGlvbl8yfGZlYXR1cmVfdGl0bGVfMnxmZWF0dXJlX2Rlc2NyaXB0aW9uXzF8ZmVhdHVyZV90aXRsZV8xfGZlYXR1cmVzX2Rlc2NyaXB0aW9ufGZlYXR1cmVzX3RpdGxlfGhlYWRlcl9kZXNjcmlwdGlvbnxoZWFkZXJfdGl0bGV8c2VjdGlvbl9nZXRfc3RhcnRlZHxzZWN0aW9uX3ByaWNpbmdfY29udGVudHxzZWN0aW9uX2ZlYXR1cmVfYm94ZXN8c2VjdGlvbl9mZWF0dXJlcydcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KVxuICAgICAgICAgICAgICAgIC50aGVuKHJlc3BvbnNlID0+IHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy4kc3RvcmUuY29tbWl0KCdTRVRfSU5ERVhfQ09OVEVOVCcsIHJlc3BvbnNlLmRhdGEpXG4gICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICAuZmluYWxseSgoKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuaXNMb2FkaW5nID0gZmFsc2VcbiAgICAgICAgICAgICAgICB9KVxuICAgICAgICB9LFxuICAgICAgICBjcmVhdGVkKCkge1xuICAgICAgICAgICAgdGhpcy4kc2Nyb2xsVG9wKClcbiAgICAgICAgfVxuICAgIH1cbjwvc2NyaXB0PlxuXG48c3R5bGUgbGFuZz1cInNjc3NcIiBzY29wZWQ+XG4gICAgQGltcG9ydCAnQGFzc2V0cy92dWVmaWxlbWFuYWdlci9fbGFuZGluZy1wYWdlJztcbiAgICBAaW1wb3J0ICdAYXNzZXRzL3Z1ZWZpbGVtYW5hZ2VyL192YXJpYWJsZXMnO1xuICAgIEBpbXBvcnQgJ0Bhc3NldHMvdnVlZmlsZW1hbmFnZXIvX21peGlucyc7XG48L3N0eWxlPlxuIiwiaW1wb3J0IG1vZCBmcm9tIFwiLSEuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvYmFiZWwtbG9hZGVyL2xpYi9pbmRleC5qcz8/cmVmLS00LTAhLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL2luZGV4LmpzPz92dWUtbG9hZGVyLW9wdGlvbnMhLi9Ib21lcGFnZS52dWU/dnVlJnR5cGU9c2NyaXB0Jmxhbmc9anMmXCI7IGV4cG9ydCBkZWZhdWx0IG1vZDsgZXhwb3J0ICogZnJvbSBcIi0hLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2JhYmVsLWxvYWRlci9saWIvaW5kZXguanM/P3JlZi0tNC0wIS4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9pbmRleC5qcz8/dnVlLWxvYWRlci1vcHRpb25zIS4vSG9tZXBhZ2UudnVlP3Z1ZSZ0eXBlPXNjcmlwdCZsYW5nPWpzJlwiIiwiaW1wb3J0IHsgcmVuZGVyLCBzdGF0aWNSZW5kZXJGbnMgfSBmcm9tIFwiLi9Ib21lcGFnZS52dWU/dnVlJnR5cGU9dGVtcGxhdGUmaWQ9NjBmZTU3MWImc2NvcGVkPXRydWUmXCJcbmltcG9ydCBzY3JpcHQgZnJvbSBcIi4vSG9tZXBhZ2UudnVlP3Z1ZSZ0eXBlPXNjcmlwdCZsYW5nPWpzJlwiXG5leHBvcnQgKiBmcm9tIFwiLi9Ib21lcGFnZS52dWU/dnVlJnR5cGU9c2NyaXB0Jmxhbmc9anMmXCJcbmltcG9ydCBzdHlsZTAgZnJvbSBcIi4vSG9tZXBhZ2UudnVlP3Z1ZSZ0eXBlPXN0eWxlJmluZGV4PTAmaWQ9NjBmZTU3MWImbGFuZz1zY3NzJnNjb3BlZD10cnVlJlwiXG5cblxuLyogbm9ybWFsaXplIGNvbXBvbmVudCAqL1xuaW1wb3J0IG5vcm1hbGl6ZXIgZnJvbSBcIiEuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvcnVudGltZS9jb21wb25lbnROb3JtYWxpemVyLmpzXCJcbnZhciBjb21wb25lbnQgPSBub3JtYWxpemVyKFxuICBzY3JpcHQsXG4gIHJlbmRlcixcbiAgc3RhdGljUmVuZGVyRm5zLFxuICBmYWxzZSxcbiAgbnVsbCxcbiAgXCI2MGZlNTcxYlwiLFxuICBudWxsXG4gIFxuKVxuXG5leHBvcnQgZGVmYXVsdCBjb21wb25lbnQuZXhwb3J0cyIsImV4cG9ydHMgPSBtb2R1bGUuZXhwb3J0cyA9IHJlcXVpcmUoXCIuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9saWIvY3NzLWJhc2UuanNcIikoZmFsc2UpO1xuLy8gaW1wb3J0c1xuXG5cbi8vIG1vZHVsZVxuZXhwb3J0cy5wdXNoKFttb2R1bGUuaWQsIFwiLmxhbmRpbmctcGFnZVtkYXRhLXYtMDUzNGYzZGRdIHtcXG4gIG92ZXJmbG93LXg6IGhpZGRlbjtcXG59XFxuLnBhZ2Utd3JhcHBlcltkYXRhLXYtMDUzNGYzZGRdIHtcXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcXG4gIG1hcmdpbjogMCBhdXRvO1xcbiAgcGFkZGluZy1sZWZ0OiAyNXB4O1xcbiAgcGFkZGluZy1yaWdodDogMjVweDtcXG59XFxuLnBhZ2Utd3JhcHBlci5sYXJnZVtkYXRhLXYtMDUzNGYzZGRdIHtcXG4gIHdpZHRoOiAxNDkwcHg7XFxufVxcbi5wYWdlLXdyYXBwZXIubWVkaXVtW2RhdGEtdi0wNTM0ZjNkZF0ge1xcbiAgd2lkdGg6IDExNTBweDtcXG59XFxuLnBhZ2Utd3JhcHBlci5zbWFsbFtkYXRhLXYtMDUzNGYzZGRdIHtcXG4gIHdpZHRoOiA4OTBweDtcXG59XFxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMzkwcHgpIHtcXG4ucGFnZS13cmFwcGVyLmxhcmdlW2RhdGEtdi0wNTM0ZjNkZF0ge1xcbiAgICB3aWR0aDogMTAwJTtcXG59XFxufVxcbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTE5MHB4KSB7XFxuLnBhZ2Utd3JhcHBlci5sYXJnZVtkYXRhLXYtMDUzNGYzZGRdIHtcXG4gICAgd2lkdGg6IDEwMCU7XFxufVxcbi5wYWdlLXdyYXBwZXIubWVkaXVtW2RhdGEtdi0wNTM0ZjNkZF0ge1xcbiAgICB3aWR0aDogMTAwJTtcXG59XFxufVxcbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTYwcHgpIHtcXG4ucGFnZS13cmFwcGVyW2RhdGEtdi0wNTM0ZjNkZF0ge1xcbiAgICBwYWRkaW5nLWxlZnQ6IDI1cHg7XFxuICAgIHBhZGRpbmctcmlnaHQ6IDI1cHg7XFxufVxcbi5wYWdlLXdyYXBwZXIuc21hbGxbZGF0YS12LTA1MzRmM2RkXSB7XFxuICAgIHdpZHRoOiAxMDAlO1xcbn1cXG59XFxuLmZlYXR1cmVzW2RhdGEtdi0wNTM0ZjNkZF0ge1xcbiAgZGlzcGxheTogZmxleDtcXG4gIG1hcmdpbi10b3A6IDM1cHg7XFxufVxcbi5mZWF0dXJlcyAuZmVhdHVyZVtkYXRhLXYtMDUzNGYzZGRdIHtcXG4gIGRpc3BsYXk6IGZsZXg7XFxuICBtYXJnaW4tcmlnaHQ6IDM1cHg7XFxufVxcbi5mZWF0dXJlcyAuZmVhdHVyZTpudGgtY2hpbGQoMSkgcGF0aFtkYXRhLXYtMDUzNGYzZGRdLCAuZmVhdHVyZXMgLmZlYXR1cmU6bnRoLWNoaWxkKDEpIGxpbmVbZGF0YS12LTA1MzRmM2RkXSwgLmZlYXR1cmVzIC5mZWF0dXJlOm50aC1jaGlsZCgxKSBwb2x5bGluZVtkYXRhLXYtMDUzNGYzZGRdLCAuZmVhdHVyZXMgLmZlYXR1cmU6bnRoLWNoaWxkKDEpIHJlY3RbZGF0YS12LTA1MzRmM2RkXSwgLmZlYXR1cmVzIC5mZWF0dXJlOm50aC1jaGlsZCgxKSBjaXJjbGVbZGF0YS12LTA1MzRmM2RkXSB7XFxuICBzdHJva2U6ICNGRkJEMkQ7XFxufVxcbi5mZWF0dXJlcyAuZmVhdHVyZTpudGgtY2hpbGQoMikgcGF0aFtkYXRhLXYtMDUzNGYzZGRdLCAuZmVhdHVyZXMgLmZlYXR1cmU6bnRoLWNoaWxkKDIpIGxpbmVbZGF0YS12LTA1MzRmM2RkXSwgLmZlYXR1cmVzIC5mZWF0dXJlOm50aC1jaGlsZCgyKSBwb2x5bGluZVtkYXRhLXYtMDUzNGYzZGRdLCAuZmVhdHVyZXMgLmZlYXR1cmU6bnRoLWNoaWxkKDIpIHJlY3RbZGF0YS12LTA1MzRmM2RkXSwgLmZlYXR1cmVzIC5mZWF0dXJlOm50aC1jaGlsZCgyKSBjaXJjbGVbZGF0YS12LTA1MzRmM2RkXSB7XFxuICBzdHJva2U6ICM5RDY2RkU7XFxufVxcbi5mZWF0dXJlcyAuZmVhdHVyZVtkYXRhLXYtMDUzNGYzZGRdOmxhc3QtY2hpbGQge1xcbiAgbWFyZ2luLXJpZ2h0OiAwO1xcbn1cXG4uZmVhdHVyZXMgLmZlYXR1cmUgLmZlYXR1cmUtdGl0bGVbZGF0YS12LTA1MzRmM2RkXSB7XFxuICBmb250LXNpemU6IDAuODc1ZW07XFxuICBmb250LXdlaWdodDogNzAwO1xcbn1cXG4uZmVhdHVyZXMgLmZlYXR1cmUgLmZlYXR1cmUtaWNvbltkYXRhLXYtMDUzNGYzZGRdIHtcXG4gIG1hcmdpbi1yaWdodDogMTBweDtcXG59XFxuLm1haW4taGVhZGVyW2RhdGEtdi0wNTM0ZjNkZF0ge1xcbiAgcGFkZGluZy10b3A6IDcwcHg7XFxufVxcbi5zaWduLXVwLWJ1dHRvbltkYXRhLXYtMDUzNGYzZGRdIHtcXG4gIG1hcmdpbi10b3A6IDY1cHg7XFxuICBkaXNwbGF5OiBibG9jaztcXG59XFxuLnNpZ24tdXAtYnV0dG9uIC5idXR0b25bZGF0YS12LTA1MzRmM2RkXSB7XFxuICBtYXJnaW4tbGVmdDogMDtcXG4gIG1hcmdpbi1yaWdodDogMDtcXG59XFxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2OTBweCkge1xcbi5tYWluLWhlYWRlcltkYXRhLXYtMDUzNGYzZGRdIHtcXG4gICAgcGFkZGluZy10b3A6IDUwcHg7XFxufVxcbi5mZWF0dXJlc1tkYXRhLXYtMDUzNGYzZGRdIHtcXG4gICAgZGlzcGxheTogYmxvY2s7XFxufVxcbi5mZWF0dXJlcyAuZmVhdHVyZVtkYXRhLXYtMDUzNGYzZGRdIHtcXG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xcbiAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xcbn1cXG4uZmVhdHVyZXMgLmZlYXR1cmVbZGF0YS12LTA1MzRmM2RkXTpsYXN0LWNoaWxkIHtcXG4gICAgbWFyZ2luLWJvdHRvbTogMDtcXG59XFxuLnNpZ24tdXAtYnV0dG9uW2RhdGEtdi0wNTM0ZjNkZF0ge1xcbiAgICBtYXJnaW4tdG9wOiAzMHB4O1xcbn1cXG59XFxuXCIsIFwiXCJdKTtcblxuLy8gZXhwb3J0c1xuIiwiaW1wb3J0IG1vZCBmcm9tIFwiLSEuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvc3R5bGUtbG9hZGVyL2luZGV4LmpzIS4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9jc3MtbG9hZGVyL2luZGV4LmpzIS4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9sb2FkZXJzL3N0eWxlUG9zdExvYWRlci5qcyEuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvcG9zdGNzcy1sb2FkZXIvc3JjL2luZGV4LmpzPz9yZWYtLTctMiEuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvc2Fzcy1sb2FkZXIvZGlzdC9janMuanM/P3JlZi0tNy0zIS4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9pbmRleC5qcz8/dnVlLWxvYWRlci1vcHRpb25zIS4vU3Bpbm5lci52dWU/dnVlJnR5cGU9c3R5bGUmaW5kZXg9MCZpZD0xZGY2NjAwMiZzY29wZWQ9dHJ1ZSZsYW5nPXNjc3MmXCI7IGV4cG9ydCBkZWZhdWx0IG1vZDsgZXhwb3J0ICogZnJvbSBcIi0hLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL3N0eWxlLWxvYWRlci9pbmRleC5qcyEuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9pbmRleC5qcyEuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvbG9hZGVycy9zdHlsZVBvc3RMb2FkZXIuanMhLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL3Bvc3Rjc3MtbG9hZGVyL3NyYy9pbmRleC5qcz8/cmVmLS03LTIhLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL3Nhc3MtbG9hZGVyL2Rpc3QvY2pzLmpzPz9yZWYtLTctMyEuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvaW5kZXguanM/P3Z1ZS1sb2FkZXItb3B0aW9ucyEuL1NwaW5uZXIudnVlP3Z1ZSZ0eXBlPXN0eWxlJmluZGV4PTAmaWQ9MWRmNjYwMDImc2NvcGVkPXRydWUmbGFuZz1zY3NzJlwiIiwiXG52YXIgY29udGVudCA9IHJlcXVpcmUoXCIhIS4uLy4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9jc3MtbG9hZGVyL2luZGV4LmpzIS4uLy4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9sb2FkZXJzL3N0eWxlUG9zdExvYWRlci5qcyEuLi8uLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvcG9zdGNzcy1sb2FkZXIvc3JjL2luZGV4LmpzPz9yZWYtLTctMiEuLi8uLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvc2Fzcy1sb2FkZXIvZGlzdC9janMuanM/P3JlZi0tNy0zIS4uLy4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9pbmRleC5qcz8/dnVlLWxvYWRlci1vcHRpb25zIS4vUHJpY2luZ1RhYmxlcy52dWU/dnVlJnR5cGU9c3R5bGUmaW5kZXg9MCZpZD1hNjNmOTBhYyZsYW5nPXNjc3Mmc2NvcGVkPXRydWUmXCIpO1xuXG5pZih0eXBlb2YgY29udGVudCA9PT0gJ3N0cmluZycpIGNvbnRlbnQgPSBbW21vZHVsZS5pZCwgY29udGVudCwgJyddXTtcblxudmFyIHRyYW5zZm9ybTtcbnZhciBpbnNlcnRJbnRvO1xuXG5cblxudmFyIG9wdGlvbnMgPSB7XCJobXJcIjp0cnVlfVxuXG5vcHRpb25zLnRyYW5zZm9ybSA9IHRyYW5zZm9ybVxub3B0aW9ucy5pbnNlcnRJbnRvID0gdW5kZWZpbmVkO1xuXG52YXIgdXBkYXRlID0gcmVxdWlyZShcIiEuLi8uLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvc3R5bGUtbG9hZGVyL2xpYi9hZGRTdHlsZXMuanNcIikoY29udGVudCwgb3B0aW9ucyk7XG5cbmlmKGNvbnRlbnQubG9jYWxzKSBtb2R1bGUuZXhwb3J0cyA9IGNvbnRlbnQubG9jYWxzO1xuXG5pZihtb2R1bGUuaG90KSB7XG5cdG1vZHVsZS5ob3QuYWNjZXB0KFwiISEuLi8uLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9pbmRleC5qcyEuLi8uLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvbG9hZGVycy9zdHlsZVBvc3RMb2FkZXIuanMhLi4vLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL3Bvc3Rjc3MtbG9hZGVyL3NyYy9pbmRleC5qcz8/cmVmLS03LTIhLi4vLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL3Nhc3MtbG9hZGVyL2Rpc3QvY2pzLmpzPz9yZWYtLTctMyEuLi8uLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvaW5kZXguanM/P3Z1ZS1sb2FkZXItb3B0aW9ucyEuL1ByaWNpbmdUYWJsZXMudnVlP3Z1ZSZ0eXBlPXN0eWxlJmluZGV4PTAmaWQ9YTYzZjkwYWMmbGFuZz1zY3NzJnNjb3BlZD10cnVlJlwiLCBmdW5jdGlvbigpIHtcblx0XHR2YXIgbmV3Q29udGVudCA9IHJlcXVpcmUoXCIhIS4uLy4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9jc3MtbG9hZGVyL2luZGV4LmpzIS4uLy4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9sb2FkZXJzL3N0eWxlUG9zdExvYWRlci5qcyEuLi8uLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvcG9zdGNzcy1sb2FkZXIvc3JjL2luZGV4LmpzPz9yZWYtLTctMiEuLi8uLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvc2Fzcy1sb2FkZXIvZGlzdC9janMuanM/P3JlZi0tNy0zIS4uLy4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9pbmRleC5qcz8/dnVlLWxvYWRlci1vcHRpb25zIS4vUHJpY2luZ1RhYmxlcy52dWU/dnVlJnR5cGU9c3R5bGUmaW5kZXg9MCZpZD1hNjNmOTBhYyZsYW5nPXNjc3Mmc2NvcGVkPXRydWUmXCIpO1xuXG5cdFx0aWYodHlwZW9mIG5ld0NvbnRlbnQgPT09ICdzdHJpbmcnKSBuZXdDb250ZW50ID0gW1ttb2R1bGUuaWQsIG5ld0NvbnRlbnQsICcnXV07XG5cblx0XHR2YXIgbG9jYWxzID0gKGZ1bmN0aW9uKGEsIGIpIHtcblx0XHRcdHZhciBrZXksIGlkeCA9IDA7XG5cblx0XHRcdGZvcihrZXkgaW4gYSkge1xuXHRcdFx0XHRpZighYiB8fCBhW2tleV0gIT09IGJba2V5XSkgcmV0dXJuIGZhbHNlO1xuXHRcdFx0XHRpZHgrKztcblx0XHRcdH1cblxuXHRcdFx0Zm9yKGtleSBpbiBiKSBpZHgtLTtcblxuXHRcdFx0cmV0dXJuIGlkeCA9PT0gMDtcblx0XHR9KGNvbnRlbnQubG9jYWxzLCBuZXdDb250ZW50LmxvY2FscykpO1xuXG5cdFx0aWYoIWxvY2FscykgdGhyb3cgbmV3IEVycm9yKCdBYm9ydGluZyBDU1MgSE1SIGR1ZSB0byBjaGFuZ2VkIGNzcy1tb2R1bGVzIGxvY2Fscy4nKTtcblxuXHRcdHVwZGF0ZShuZXdDb250ZW50KTtcblx0fSk7XG5cblx0bW9kdWxlLmhvdC5kaXNwb3NlKGZ1bmN0aW9uKCkgeyB1cGRhdGUoKTsgfSk7XG59IiwiZXhwb3J0cyA9IG1vZHVsZS5leHBvcnRzID0gcmVxdWlyZShcIi4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9jc3MtbG9hZGVyL2xpYi9jc3MtYmFzZS5qc1wiKShmYWxzZSk7XG4vLyBpbXBvcnRzXG5cblxuLy8gbW9kdWxlXG5leHBvcnRzLnB1c2goW21vZHVsZS5pZCwgXCIubGFuZGluZy1wYWdlW2RhdGEtdi1mNmY0NWU4NF0ge1xcbiAgb3ZlcmZsb3cteDogaGlkZGVuO1xcbn1cXG4ucGFnZS13cmFwcGVyW2RhdGEtdi1mNmY0NWU4NF0ge1xcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xcbiAgbWFyZ2luOiAwIGF1dG87XFxuICBwYWRkaW5nLWxlZnQ6IDI1cHg7XFxuICBwYWRkaW5nLXJpZ2h0OiAyNXB4O1xcbn1cXG4ucGFnZS13cmFwcGVyLmxhcmdlW2RhdGEtdi1mNmY0NWU4NF0ge1xcbiAgd2lkdGg6IDE0OTBweDtcXG59XFxuLnBhZ2Utd3JhcHBlci5tZWRpdW1bZGF0YS12LWY2ZjQ1ZTg0XSB7XFxuICB3aWR0aDogMTE1MHB4O1xcbn1cXG4ucGFnZS13cmFwcGVyLnNtYWxsW2RhdGEtdi1mNmY0NWU4NF0ge1xcbiAgd2lkdGg6IDg5MHB4O1xcbn1cXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEzOTBweCkge1xcbi5wYWdlLXdyYXBwZXIubGFyZ2VbZGF0YS12LWY2ZjQ1ZTg0XSB7XFxuICAgIHdpZHRoOiAxMDAlO1xcbn1cXG59XFxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMTkwcHgpIHtcXG4ucGFnZS13cmFwcGVyLmxhcmdlW2RhdGEtdi1mNmY0NWU4NF0ge1xcbiAgICB3aWR0aDogMTAwJTtcXG59XFxuLnBhZ2Utd3JhcHBlci5tZWRpdW1bZGF0YS12LWY2ZjQ1ZTg0XSB7XFxuICAgIHdpZHRoOiAxMDAlO1xcbn1cXG59XFxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5NjBweCkge1xcbi5wYWdlLXdyYXBwZXJbZGF0YS12LWY2ZjQ1ZTg0XSB7XFxuICAgIHBhZGRpbmctbGVmdDogMjVweDtcXG4gICAgcGFkZGluZy1yaWdodDogMjVweDtcXG59XFxuLnBhZ2Utd3JhcHBlci5zbWFsbFtkYXRhLXYtZjZmNDVlODRdIHtcXG4gICAgd2lkdGg6IDEwMCU7XFxufVxcbn1cXG4ucHJpY2luZyAuY2xvdWQtYmdbZGF0YS12LWY2ZjQ1ZTg0XSB7XFxuICB6LWluZGV4OiAwO1xcbn1cXG4ucHJpY2luZyAuY2xvdWQtYmcgcGF0aFtkYXRhLXYtZjZmNDVlODRdIHtcXG4gIHN0cm9rZTogbm9uZTtcXG4gIGZpbGw6IHJnYmEoMCwgMTg4LCAxMjYsIDAuMDUpO1xcbn1cXG4ucHJpY2luZyAuY2xvdWQtYmdbZGF0YS12LWY2ZjQ1ZTg0XTpmaXJzdC1vZi10eXBlIHtcXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcXG4gIHRvcDogMzBweDtcXG4gIHJpZ2h0OiAtMTMwcHg7XFxuICB0cmFuc2Zvcm06IHNjYWxlKC0xLCAxKSByb3RhdGUoLTE3ZGVnKTtcXG59XFxuLnByaWNpbmcgLmNsb3VkLWJnW2RhdGEtdi1mNmY0NWU4NF06bGFzdC1vZi10eXBlIHtcXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcXG4gIGJvdHRvbTogMTYwcHg7XFxuICBsZWZ0OiAtMjMwcHg7XFxuICB0cmFuc2Zvcm06IHJvdGF0ZSgxM2RlZyk7XFxufVxcbi5wYWdlLXRpdGxlW2RhdGEtdi1mNmY0NWU4NF0ge1xcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xcbiAgei1pbmRleDogMTtcXG59XFxuLnBhZ2UtdGl0bGUuY2VudGVyW2RhdGEtdi1mNmY0NWU4NF0ge1xcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xcbn1cXG4ucGFnZS10aXRsZS5jZW50ZXIgLnRpdGxlW2RhdGEtdi1mNmY0NWU4NF0ge1xcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XFxuICBtYXJnaW4tcmlnaHQ6IGF1dG87XFxufVxcbi5wYWdlLXRpdGxlLmNlbnRlciAuZGVzY3JpcHRpb25bZGF0YS12LWY2ZjQ1ZTg0XSB7XFxuICBtYXJnaW4tbGVmdDogYXV0bztcXG4gIG1hcmdpbi1yaWdodDogYXV0bztcXG59XFxuLnBhZ2UtdGl0bGUgLnRpdGxlW2RhdGEtdi1mNmY0NWU4NF0ge1xcbiAgbWF4LXdpZHRoOiA1ODBweDtcXG4gIGZvbnQtc2l6ZTogNDhweDtcXG4gIGZvbnQtd2VpZ2h0OiA4MDA7XFxuICBsaW5lLWhlaWdodDogMS4yNTtcXG4gIG1hcmdpbi1ib3R0b206IDE1cHg7XFxufVxcbi5wYWdlLXRpdGxlIC50aXRsZVtkYXRhLXYtZjZmNDVlODRdIHNwYW4ge1xcbiAgZm9udC1zaXplOiA0OHB4O1xcbn1cXG4ucGFnZS10aXRsZSAuZGVzY3JpcHRpb25bZGF0YS12LWY2ZjQ1ZTg0XSB7XFxuICBtYXgtd2lkdGg6IDU4MHB4O1xcbiAgZm9udC1zaXplOiAxLjI1ZW07XFxuICBmb250LXdlaWdodDogNTAwO1xcbiAgbGluZS1oZWlnaHQ6IDEuNjtcXG4gIG1hcmdpbi1ib3R0b206IDMwcHg7XFxufVxcbi5wcmljaW5nW2RhdGEtdi1mNmY0NWU4NF0ge1xcbiAgcGFkZGluZy10b3A6IDI1MHB4O1xcbiAgcGFkZGluZy1ib3R0b206IDEyMHB4O1xcbn1cXG4ucHJpY2luZy10YWJsZXNbZGF0YS12LWY2ZjQ1ZTg0XSB7XFxuICBtYXJnaW4tdG9wOiA1MHB4O1xcbiAgbWFyZ2luLWJvdHRvbTogNjBweDtcXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcXG4gIHotaW5kZXg6IDE7XFxufVxcbi5zaWduLXVwLWJ1dHRvbltkYXRhLXYtZjZmNDVlODRdIHtcXG4gIHBhZGRpbmctdG9wOiAxMHB4O1xcbiAgZGlzcGxheTogYmxvY2s7XFxufVxcbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTE5MHB4KSB7XFxuLmNsb3VkLWJnW2RhdGEtdi1mNmY0NWU4NF0ge1xcbiAgICBkaXNwbGF5OiBub25lO1xcbn1cXG4ucHJpY2luZ1tkYXRhLXYtZjZmNDVlODRdIHtcXG4gICAgcGFkZGluZy10b3A6IDE1MHB4O1xcbiAgICBwYWRkaW5nLWJvdHRvbTogNjBweDtcXG59XFxufVxcbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTYwcHgpIHtcXG4ucGFnZS10aXRsZSAudGl0bGVbZGF0YS12LWY2ZjQ1ZTg0XSB7XFxuICAgIGZvbnQtc2l6ZTogMjhweDtcXG4gICAgbGluZS1oZWlnaHQ6IDEuMjU7XFxuICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XFxufVxcbi5wYWdlLXRpdGxlIC50aXRsZVtkYXRhLXYtZjZmNDVlODRdIHNwYW4ge1xcbiAgICBmb250LXNpemU6IDI4cHg7XFxufVxcbi5wYWdlLXRpdGxlIC5kZXNjcmlwdGlvbltkYXRhLXYtZjZmNDVlODRdIHtcXG4gICAgZm9udC1zaXplOiAxZW07XFxuICAgIGxpbmUtaGVpZ2h0OiAxLjY7XFxuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XFxufVxcbi5wcmljaW5nW2RhdGEtdi1mNmY0NWU4NF0ge1xcbiAgICBwYWRkaW5nLXRvcDogNTBweDtcXG4gICAgcGFkZGluZy1ib3R0b206IDEyMHB4O1xcbn1cXG59XFxuXCIsIFwiXCJdKTtcblxuLy8gZXhwb3J0c1xuIiwidmFyIHJlbmRlciA9IGZ1bmN0aW9uICgpIHt2YXIgX3ZtPXRoaXM7dmFyIF9oPV92bS4kY3JlYXRlRWxlbWVudDt2YXIgX2M9X3ZtLl9zZWxmLl9jfHxfaDtyZXR1cm4gX2MoJ25hdicse3N0YXRpY0NsYXNzOlwibWFpbi1uYXZpZ2F0aW9uXCJ9LFtfYygncm91dGVyLWxpbmsnLHtzdGF0aWNDbGFzczpcImxvZ29cIixhdHRyczp7XCJ0b1wiOntuYW1lOiAnSG9tZXBhZ2UnfSxcInRhZ1wiOlwiZGl2XCJ9fSxbKF92bS5jb25maWcuYXBwX2xvZ29faG9yaXpvbnRhbCk/X2MoJ2ltZycse2F0dHJzOntcInNyY1wiOl92bS4kZ2V0SW1hZ2UoX3ZtLmNvbmZpZy5hcHBfbG9nb19ob3Jpem9udGFsKSxcImFsdFwiOl92bS5jb25maWcuYXBwX25hbWV9fSk6X3ZtLl9lKCksX3ZtLl92KFwiIFwiKSwoISBfdm0uY29uZmlnLmFwcF9sb2dvX2hvcml6b250YWwpP19jKCdiJyx7c3RhdGljQ2xhc3M6XCJsb2dvLXRleHRcIn0sW192bS5fdihfdm0uX3MoX3ZtLmNvbmZpZy5hcHBfbmFtZSkpXSk6X3ZtLl9lKCldKSxfdm0uX3YoXCIgXCIpLF9jKCdkaXYnLHtzdGF0aWNDbGFzczpcIm5hdmlnYXRpb25cIn0sW19jKCd1bCcse3N0YXRpY0NsYXNzOlwibmF2aWdhdGlvbi1saW5rc1wifSxbX2MoJ2xpJyxbX2MoJ3JvdXRlci1saW5rJyx7c3RhdGljQ2xhc3M6XCJob3Zlci10ZXh0LXRoZW1lXCIsYXR0cnM6e1widG9cIjp7bmFtZTogJ0NvbnRhY3RVcyd9fX0sW192bS5fdihcIlxcbiAgICAgICAgICAgICAgICAgICAgXCIrX3ZtLl9zKF92bS4kdCgncGFnZV9pbmRleC5tZW51LmNvbnRhY3RfdXMnKSkrXCJcXG4gICAgICAgICAgICAgICAgXCIpXSldLDEpXSksX3ZtLl92KFwiIFwiKSwoISBfdm0uY29uZmlnLmlzQXV0aGVudGljYXRlZCk/X2MoJ3VsJyx7c3RhdGljQ2xhc3M6XCJuYXZpZ2F0aW9uLWxpbmtzXCJ9LFtfYygnbGknLFtfYygncm91dGVyLWxpbmsnLHtzdGF0aWNDbGFzczpcImhvdmVyLXRleHQtdGhlbWVcIixhdHRyczp7XCJ0b1wiOntuYW1lOiAnU2lnbkluJ319fSxbX3ZtLl92KFwiXFxuICAgICAgICAgICAgICAgICAgICBcIitfdm0uX3MoX3ZtLiR0KCdwYWdlX2luZGV4Lm1lbnUubG9nX2luJykpK1wiXFxuICAgICAgICAgICAgICAgIFwiKV0pXSwxKSxfdm0uX3YoXCIgXCIpLChfdm0uY29uZmlnLnVzZXJSZWdpc3RyYXRpb24pP19jKCdsaScsW19jKCdyb3V0ZXItbGluaycse3N0YXRpY0NsYXNzOlwiY3RhLWJ1dHRvbiB0ZXh0LXRoZW1lIGJnLXRoZW1lLTEwMFwiLGF0dHJzOntcInRvXCI6e25hbWU6ICdTaWduVXAnfX19LFtfdm0uX3YoXCJcXG4gICAgICAgICAgICAgICAgICAgIFwiK192bS5fcyhfdm0uJHQoJ3BhZ2VfaW5kZXgubWVudS5zaWduX2luJykpK1wiXFxuICAgICAgICAgICAgICAgIFwiKV0pXSwxKTpfdm0uX2UoKV0pOl92bS5fZSgpLF92bS5fdihcIiBcIiksKF92bS5jb25maWcuaXNBdXRoZW50aWNhdGVkKT9fYygndWwnLHtzdGF0aWNDbGFzczpcIm5hdmlnYXRpb24tbGlua3NcIn0sWyhfdm0uY29uZmlnLnVzZXJSZWdpc3RyYXRpb24pP19jKCdsaScsW19jKCdyb3V0ZXItbGluaycse3N0YXRpY0NsYXNzOlwiY3RhLWJ1dHRvbiB0ZXh0LXRoZW1lIGJnLXRoZW1lLTEwMFwiLGF0dHJzOntcInRvXCI6e25hbWU6ICdGaWxlcyd9fX0sW192bS5fdihcIlxcbiAgICAgICAgICAgICAgICAgICAgR28gdG8gRmlsZXMgXCIpXSldLDEpOl92bS5fZSgpXSk6X3ZtLl9lKCldKSxfdm0uX3YoXCIgXCIpLF9jKCdyb3V0ZXItbGluaycse3N0YXRpY0NsYXNzOlwiY3RhLWJ1dHRvbiBsb2ctaW4gdGV4dC10aGVtZSBiZy10aGVtZS0xMDBcIixhdHRyczp7XCJ0b1wiOntuYW1lOiAnU2lnbkluJ319fSxbX3ZtLl92KFwiXFxuICAgICAgICBcIitfdm0uX3MoX3ZtLiR0KCdwYWdlX2luZGV4Lm1lbnUubG9nX2luJykpK1wiXFxuICAgIFwiKV0pXSwxKX1cbnZhciBzdGF0aWNSZW5kZXJGbnMgPSBbXVxuXG5leHBvcnQgeyByZW5kZXIsIHN0YXRpY1JlbmRlckZucyB9IiwiPHRlbXBsYXRlPlxuICAgIDxuYXYgY2xhc3M9XCJtYWluLW5hdmlnYXRpb25cIj5cbiAgICAgICAgPHJvdXRlci1saW5rIDp0bz1cIntuYW1lOiAnSG9tZXBhZ2UnfVwiIHRhZz1cImRpdlwiIGNsYXNzPVwibG9nb1wiPlxuICAgICAgICAgICAgPGltZyB2LWlmPVwiY29uZmlnLmFwcF9sb2dvX2hvcml6b250YWxcIiA6c3JjPVwiJGdldEltYWdlKGNvbmZpZy5hcHBfbG9nb19ob3Jpem9udGFsKVwiIDphbHQ9XCJjb25maWcuYXBwX25hbWVcIj5cbiAgICAgICAgICAgIDxiIHYtaWY9XCIhIGNvbmZpZy5hcHBfbG9nb19ob3Jpem9udGFsXCIgY2xhc3M9XCJsb2dvLXRleHRcIj57eyBjb25maWcuYXBwX25hbWUgfX08L2I+XG4gICAgICAgIDwvcm91dGVyLWxpbms+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJuYXZpZ2F0aW9uXCI+XG4gICAgICAgICAgICA8dWwgY2xhc3M9XCJuYXZpZ2F0aW9uLWxpbmtzXCI+XG4gICAgICAgICAgICAgICAgPCEtLTxsaSB2LWlmPVwiY29uZmlnLnN0cmlwZV9wdWJsaWNfa2V5XCI+XG4gICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9XCIvI3ByaWNpbmdcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIHt7ICR0KCdwYWdlX2luZGV4Lm1lbnUucHJpY2luZycpIH19XG4gICAgICAgICAgICAgICAgICAgIDwvYT5cbiAgICAgICAgICAgICAgICA8L2xpPi0tPlxuICAgICAgICAgICAgICAgIDxsaT5cbiAgICAgICAgICAgICAgICAgICAgPHJvdXRlci1saW5rIDp0bz1cIntuYW1lOiAnQ29udGFjdFVzJ31cIiBjbGFzcz1cImhvdmVyLXRleHQtdGhlbWVcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIHt7ICR0KCdwYWdlX2luZGV4Lm1lbnUuY29udGFjdF91cycpIH19XG4gICAgICAgICAgICAgICAgICAgIDwvcm91dGVyLWxpbms+XG4gICAgICAgICAgICAgICAgPC9saT5cbiAgICAgICAgICAgIDwvdWw+XG4gICAgICAgICAgICA8dWwgdi1pZj1cIiEgY29uZmlnLmlzQXV0aGVudGljYXRlZFwiIGNsYXNzPVwibmF2aWdhdGlvbi1saW5rc1wiPlxuICAgICAgICAgICAgICAgIDxsaT5cbiAgICAgICAgICAgICAgICAgICAgPHJvdXRlci1saW5rIDp0bz1cIntuYW1lOiAnU2lnbkluJ31cIiBjbGFzcz1cImhvdmVyLXRleHQtdGhlbWVcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIHt7ICR0KCdwYWdlX2luZGV4Lm1lbnUubG9nX2luJykgfX1cbiAgICAgICAgICAgICAgICAgICAgPC9yb3V0ZXItbGluaz5cbiAgICAgICAgICAgICAgICA8L2xpPlxuICAgICAgICAgICAgICAgIDxsaSB2LWlmPVwiY29uZmlnLnVzZXJSZWdpc3RyYXRpb25cIj5cbiAgICAgICAgICAgICAgICAgICAgPHJvdXRlci1saW5rIGNsYXNzPVwiY3RhLWJ1dHRvbiB0ZXh0LXRoZW1lIGJnLXRoZW1lLTEwMFwiIDp0bz1cIntuYW1lOiAnU2lnblVwJ31cIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIHt7ICR0KCdwYWdlX2luZGV4Lm1lbnUuc2lnbl9pbicpIH19XG4gICAgICAgICAgICAgICAgICAgIDwvcm91dGVyLWxpbms+XG4gICAgICAgICAgICAgICAgPC9saT5cbiAgICAgICAgICAgIDwvdWw+XG4gICAgICAgICAgICA8dWwgdi1pZj1cImNvbmZpZy5pc0F1dGhlbnRpY2F0ZWRcIiBjbGFzcz1cIm5hdmlnYXRpb24tbGlua3NcIj5cbiAgICAgICAgICAgICAgICA8bGkgdi1pZj1cImNvbmZpZy51c2VyUmVnaXN0cmF0aW9uXCI+XG4gICAgICAgICAgICAgICAgICAgIDxyb3V0ZXItbGluayBjbGFzcz1cImN0YS1idXR0b24gdGV4dC10aGVtZSBiZy10aGVtZS0xMDBcIiA6dG89XCJ7bmFtZTogJ0ZpbGVzJ31cIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIEdvIHRvIEZpbGVzIDwhLS10b2RvOiBwcmVrbGFkLS0+XG4gICAgICAgICAgICAgICAgICAgIDwvcm91dGVyLWxpbms+XG4gICAgICAgICAgICAgICAgPC9saT5cbiAgICAgICAgICAgIDwvdWw+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8cm91dGVyLWxpbmsgY2xhc3M9XCJjdGEtYnV0dG9uIGxvZy1pbiB0ZXh0LXRoZW1lIGJnLXRoZW1lLTEwMFwiIDp0bz1cIntuYW1lOiAnU2lnbkluJ31cIj5cbiAgICAgICAgICAgIHt7ICR0KCdwYWdlX2luZGV4Lm1lbnUubG9nX2luJykgfX1cbiAgICAgICAgPC9yb3V0ZXItbGluaz5cbiAgICA8L25hdj5cbjwvdGVtcGxhdGU+XG5cbjxzY3JpcHQ+XG4gICAgaW1wb3J0IHsgbWFwR2V0dGVycyB9IGZyb20gJ3Z1ZXgnXG5cbiAgICBleHBvcnQgZGVmYXVsdCB7XG4gICAgICAgIG5hbWU6ICdJbmRleE5hdmlnYXRpb24nLFxuICAgICAgICBjb21wdXRlZDoge1xuICAgICAgICAgICAgLi4ubWFwR2V0dGVycyhbJ2NvbmZpZycsICdpbmRleCddKSxcbiAgICAgICAgfSxcbiAgICB9XG48L3NjcmlwdD5cblxuPHN0eWxlIGxhbmc9XCJzY3NzXCIgc2NvcGVkPlxuICAgIEBpbXBvcnQgJ0Bhc3NldHMvdnVlZmlsZW1hbmFnZXIvX2xhbmRpbmctcGFnZSc7XG4gICAgQGltcG9ydCAnQGFzc2V0cy92dWVmaWxlbWFuYWdlci9fdmFyaWFibGVzJztcbiAgICBAaW1wb3J0ICdAYXNzZXRzL3Z1ZWZpbGVtYW5hZ2VyL19taXhpbnMnO1xuXG4gICAgLm1haW4tbmF2aWdhdGlvbiB7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDI1cHg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIHBhZGRpbmctdG9wOiAyNXB4O1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgIH1cblxuICAgIC5sb2dvIHtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgICAgIGltZyB7XG4gICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICBoZWlnaHQ6IDM4cHg7XG4gICAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgfVxuXG4gICAgICAgIC5sb2dvLXRleHQge1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDgwMDtcbiAgICAgICAgICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgyNSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAubmF2aWdhdGlvbi1saW5rcyB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDI1cHg7XG5cbiAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgfVxuXG4gICAgICAgIGxpIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcblxuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMTRweDtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgxNyk7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbigxNTBtcyk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuY3RhLWJ1dHRvbiB7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDZweDtcbiAgICAgICAgcGFkZGluZzogOHB4IDIzcHg7XG4gICAgICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgxNyk7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG5cbiAgICAgICAgJi5sb2ctaW4ge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjkwcHgpIHtcblxuICAgICAgICAubmF2aWdhdGlvbiB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgLmxvZ28ge1xuXG4gICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgICAgICB3aWR0aDogMTkwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuY3RhLWJ1dHRvbi5sb2ctaW4ge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIH1cbiAgICB9XG48L3N0eWxlPlxuIiwiaW1wb3J0IG1vZCBmcm9tIFwiLSEuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvYmFiZWwtbG9hZGVyL2xpYi9pbmRleC5qcz8/cmVmLS00LTAhLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL2luZGV4LmpzPz92dWUtbG9hZGVyLW9wdGlvbnMhLi9JbmRleE5hdmlnYXRpb24udnVlP3Z1ZSZ0eXBlPXNjcmlwdCZsYW5nPWpzJlwiOyBleHBvcnQgZGVmYXVsdCBtb2Q7IGV4cG9ydCAqIGZyb20gXCItIS4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9iYWJlbC1sb2FkZXIvbGliL2luZGV4LmpzPz9yZWYtLTQtMCEuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvaW5kZXguanM/P3Z1ZS1sb2FkZXItb3B0aW9ucyEuL0luZGV4TmF2aWdhdGlvbi52dWU/dnVlJnR5cGU9c2NyaXB0Jmxhbmc9anMmXCIiLCJpbXBvcnQgeyByZW5kZXIsIHN0YXRpY1JlbmRlckZucyB9IGZyb20gXCIuL0luZGV4TmF2aWdhdGlvbi52dWU/dnVlJnR5cGU9dGVtcGxhdGUmaWQ9Njc0NmUyMzMmc2NvcGVkPXRydWUmXCJcbmltcG9ydCBzY3JpcHQgZnJvbSBcIi4vSW5kZXhOYXZpZ2F0aW9uLnZ1ZT92dWUmdHlwZT1zY3JpcHQmbGFuZz1qcyZcIlxuZXhwb3J0ICogZnJvbSBcIi4vSW5kZXhOYXZpZ2F0aW9uLnZ1ZT92dWUmdHlwZT1zY3JpcHQmbGFuZz1qcyZcIlxuaW1wb3J0IHN0eWxlMCBmcm9tIFwiLi9JbmRleE5hdmlnYXRpb24udnVlP3Z1ZSZ0eXBlPXN0eWxlJmluZGV4PTAmaWQ9Njc0NmUyMzMmbGFuZz1zY3NzJnNjb3BlZD10cnVlJlwiXG5cblxuLyogbm9ybWFsaXplIGNvbXBvbmVudCAqL1xuaW1wb3J0IG5vcm1hbGl6ZXIgZnJvbSBcIiEuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvcnVudGltZS9jb21wb25lbnROb3JtYWxpemVyLmpzXCJcbnZhciBjb21wb25lbnQgPSBub3JtYWxpemVyKFxuICBzY3JpcHQsXG4gIHJlbmRlcixcbiAgc3RhdGljUmVuZGVyRm5zLFxuICBmYWxzZSxcbiAgbnVsbCxcbiAgXCI2NzQ2ZTIzM1wiLFxuICBudWxsXG4gIFxuKVxuXG5leHBvcnQgZGVmYXVsdCBjb21wb25lbnQuZXhwb3J0cyIsIlxudmFyIGNvbnRlbnQgPSByZXF1aXJlKFwiISEuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9pbmRleC5qcyEuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvbG9hZGVycy9zdHlsZVBvc3RMb2FkZXIuanMhLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL3Bvc3Rjc3MtbG9hZGVyL3NyYy9pbmRleC5qcz8/cmVmLS03LTIhLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL3Nhc3MtbG9hZGVyL2Rpc3QvY2pzLmpzPz9yZWYtLTctMyEuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvaW5kZXguanM/P3Z1ZS1sb2FkZXItb3B0aW9ucyEuL0luZGV4R2V0U3RhcnRlZC52dWU/dnVlJnR5cGU9c3R5bGUmaW5kZXg9MCZpZD02NzVjMDgwMiZsYW5nPXNjc3Mmc2NvcGVkPXRydWUmXCIpO1xuXG5pZih0eXBlb2YgY29udGVudCA9PT0gJ3N0cmluZycpIGNvbnRlbnQgPSBbW21vZHVsZS5pZCwgY29udGVudCwgJyddXTtcblxudmFyIHRyYW5zZm9ybTtcbnZhciBpbnNlcnRJbnRvO1xuXG5cblxudmFyIG9wdGlvbnMgPSB7XCJobXJcIjp0cnVlfVxuXG5vcHRpb25zLnRyYW5zZm9ybSA9IHRyYW5zZm9ybVxub3B0aW9ucy5pbnNlcnRJbnRvID0gdW5kZWZpbmVkO1xuXG52YXIgdXBkYXRlID0gcmVxdWlyZShcIiEuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvc3R5bGUtbG9hZGVyL2xpYi9hZGRTdHlsZXMuanNcIikoY29udGVudCwgb3B0aW9ucyk7XG5cbmlmKGNvbnRlbnQubG9jYWxzKSBtb2R1bGUuZXhwb3J0cyA9IGNvbnRlbnQubG9jYWxzO1xuXG5pZihtb2R1bGUuaG90KSB7XG5cdG1vZHVsZS5ob3QuYWNjZXB0KFwiISEuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9pbmRleC5qcyEuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvbG9hZGVycy9zdHlsZVBvc3RMb2FkZXIuanMhLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL3Bvc3Rjc3MtbG9hZGVyL3NyYy9pbmRleC5qcz8/cmVmLS03LTIhLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL3Nhc3MtbG9hZGVyL2Rpc3QvY2pzLmpzPz9yZWYtLTctMyEuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvaW5kZXguanM/P3Z1ZS1sb2FkZXItb3B0aW9ucyEuL0luZGV4R2V0U3RhcnRlZC52dWU/dnVlJnR5cGU9c3R5bGUmaW5kZXg9MCZpZD02NzVjMDgwMiZsYW5nPXNjc3Mmc2NvcGVkPXRydWUmXCIsIGZ1bmN0aW9uKCkge1xuXHRcdHZhciBuZXdDb250ZW50ID0gcmVxdWlyZShcIiEhLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Nzcy1sb2FkZXIvaW5kZXguanMhLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL2xvYWRlcnMvc3R5bGVQb3N0TG9hZGVyLmpzIS4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9wb3N0Y3NzLWxvYWRlci9zcmMvaW5kZXguanM/P3JlZi0tNy0yIS4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9zYXNzLWxvYWRlci9kaXN0L2Nqcy5qcz8/cmVmLS03LTMhLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvbGliL2luZGV4LmpzPz92dWUtbG9hZGVyLW9wdGlvbnMhLi9JbmRleEdldFN0YXJ0ZWQudnVlP3Z1ZSZ0eXBlPXN0eWxlJmluZGV4PTAmaWQ9Njc1YzA4MDImbGFuZz1zY3NzJnNjb3BlZD10cnVlJlwiKTtcblxuXHRcdGlmKHR5cGVvZiBuZXdDb250ZW50ID09PSAnc3RyaW5nJykgbmV3Q29udGVudCA9IFtbbW9kdWxlLmlkLCBuZXdDb250ZW50LCAnJ11dO1xuXG5cdFx0dmFyIGxvY2FscyA9IChmdW5jdGlvbihhLCBiKSB7XG5cdFx0XHR2YXIga2V5LCBpZHggPSAwO1xuXG5cdFx0XHRmb3Ioa2V5IGluIGEpIHtcblx0XHRcdFx0aWYoIWIgfHwgYVtrZXldICE9PSBiW2tleV0pIHJldHVybiBmYWxzZTtcblx0XHRcdFx0aWR4Kys7XG5cdFx0XHR9XG5cblx0XHRcdGZvcihrZXkgaW4gYikgaWR4LS07XG5cblx0XHRcdHJldHVybiBpZHggPT09IDA7XG5cdFx0fShjb250ZW50LmxvY2FscywgbmV3Q29udGVudC5sb2NhbHMpKTtcblxuXHRcdGlmKCFsb2NhbHMpIHRocm93IG5ldyBFcnJvcignQWJvcnRpbmcgQ1NTIEhNUiBkdWUgdG8gY2hhbmdlZCBjc3MtbW9kdWxlcyBsb2NhbHMuJyk7XG5cblx0XHR1cGRhdGUobmV3Q29udGVudCk7XG5cdH0pO1xuXG5cdG1vZHVsZS5ob3QuZGlzcG9zZShmdW5jdGlvbigpIHsgdXBkYXRlKCk7IH0pO1xufSIsInZhciByZW5kZXIgPSBmdW5jdGlvbiAoKSB7dmFyIF92bT10aGlzO3ZhciBfaD1fdm0uJGNyZWF0ZUVsZW1lbnQ7dmFyIF9jPV92bS5fc2VsZi5fY3x8X2g7cmV0dXJuIF92bS5fbSgwKX1cbnZhciBzdGF0aWNSZW5kZXJGbnMgPSBbZnVuY3Rpb24gKCkge3ZhciBfdm09dGhpczt2YXIgX2g9X3ZtLiRjcmVhdGVFbGVtZW50O3ZhciBfYz1fdm0uX3NlbGYuX2N8fF9oO3JldHVybiBfYygnZGl2Jyx7c3RhdGljQ2xhc3M6XCJzcGlubmVyXCIsYXR0cnM6e1wiaWRcIjpcImxvYWRpbmctYmFyLXNwaW5uZXJcIn19LFtfYygnZGl2Jyx7c3RhdGljQ2xhc3M6XCJzcGlubmVyLWljb24gYm9yZGVyLXRvcC10aGVtZSBib3JkZXItbGVmdC10aGVtZVwifSldKX1dXG5cbmV4cG9ydCB7IHJlbmRlciwgc3RhdGljUmVuZGVyRm5zIH0iLCJpbXBvcnQgbW9kIGZyb20gXCItIS4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9iYWJlbC1sb2FkZXIvbGliL2luZGV4LmpzPz9yZWYtLTQtMCEuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvaW5kZXguanM/P3Z1ZS1sb2FkZXItb3B0aW9ucyEuL1NwaW5uZXIudnVlP3Z1ZSZ0eXBlPXNjcmlwdCZsYW5nPWpzJlwiOyBleHBvcnQgZGVmYXVsdCBtb2Q7IGV4cG9ydCAqIGZyb20gXCItIS4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9iYWJlbC1sb2FkZXIvbGliL2luZGV4LmpzPz9yZWYtLTQtMCEuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9saWIvaW5kZXguanM/P3Z1ZS1sb2FkZXItb3B0aW9ucyEuL1NwaW5uZXIudnVlP3Z1ZSZ0eXBlPXNjcmlwdCZsYW5nPWpzJlwiIiwiPHRlbXBsYXRlPlxuICAgIDxkaXYgaWQ9XCJsb2FkaW5nLWJhci1zcGlubmVyXCIgY2xhc3M9XCJzcGlubmVyXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJzcGlubmVyLWljb24gYm9yZGVyLXRvcC10aGVtZSBib3JkZXItbGVmdC10aGVtZVwiPjwvZGl2PlxuICAgIDwvZGl2PlxuPC90ZW1wbGF0ZT5cblxuPHNjcmlwdD5cbiAgICBleHBvcnQgZGVmYXVsdCB7XG4gICAgICAgIG5hbWU6ICdTcGlubmVyJ1xuICAgIH1cbjwvc2NyaXB0PlxuXG48c3R5bGUgc2NvcGVkIGxhbmc9XCJzY3NzXCI+XG4gICAgQGltcG9ydCAnQGFzc2V0cy92dWVmaWxlbWFuYWdlci9fdmFyaWFibGVzJztcbiAgICBAaW1wb3J0ICdAYXNzZXRzL3Z1ZWZpbGVtYW5hZ2VyL19taXhpbnMnO1xuXG4gICAgI2xvYWRpbmctYmFyLXNwaW5uZXIuc3Bpbm5lciB7XG4gICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC0yMHB4O1xuICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgbWFyZ2luLXRvcDogLTIwcHg7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgei1pbmRleDogMTkgIWltcG9ydGFudDtcbiAgICAgICAgYW5pbWF0aW9uOiBsb2FkaW5nLWJhci1zcGlubmVyIDQwMG1zIGxpbmVhciBpbmZpbml0ZTtcbiAgICB9XG5cbiAgICAjbG9hZGluZy1iYXItc3Bpbm5lci5zcGlubmVyIC5zcGlubmVyLWljb24ge1xuICAgICAgICB3aWR0aDogNDBweDtcbiAgICAgICAgaGVpZ2h0OiA0MHB4O1xuICAgICAgICBib3JkZXI6IHNvbGlkIDRweCB0cmFuc3BhcmVudDtcbiAgICAgICAgLy9ib3JkZXItdG9wLWNvbG9yOiAkdGhlbWUgIWltcG9ydGFudDtcbiAgICAgICAgLy9ib3JkZXItbGVmdC1jb2xvcjogJHRoZW1lICFpbXBvcnRhbnQ7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICB9XG5cbiAgICBAa2V5ZnJhbWVzIGxvYWRpbmctYmFyLXNwaW5uZXIge1xuICAgICAgICAwJSB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICAgICAgfVxuICAgICAgICAxMDAlIHtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gICAgICAgIH1cbiAgICB9XG48L3N0eWxlPlxuIiwiaW1wb3J0IHsgcmVuZGVyLCBzdGF0aWNSZW5kZXJGbnMgfSBmcm9tIFwiLi9TcGlubmVyLnZ1ZT92dWUmdHlwZT10ZW1wbGF0ZSZpZD0xZGY2NjAwMiZzY29wZWQ9dHJ1ZSZcIlxuaW1wb3J0IHNjcmlwdCBmcm9tIFwiLi9TcGlubmVyLnZ1ZT92dWUmdHlwZT1zY3JpcHQmbGFuZz1qcyZcIlxuZXhwb3J0ICogZnJvbSBcIi4vU3Bpbm5lci52dWU/dnVlJnR5cGU9c2NyaXB0Jmxhbmc9anMmXCJcbmltcG9ydCBzdHlsZTAgZnJvbSBcIi4vU3Bpbm5lci52dWU/dnVlJnR5cGU9c3R5bGUmaW5kZXg9MCZpZD0xZGY2NjAwMiZzY29wZWQ9dHJ1ZSZsYW5nPXNjc3MmXCJcblxuXG4vKiBub3JtYWxpemUgY29tcG9uZW50ICovXG5pbXBvcnQgbm9ybWFsaXplciBmcm9tIFwiIS4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2xpYi9ydW50aW1lL2NvbXBvbmVudE5vcm1hbGl6ZXIuanNcIlxudmFyIGNvbXBvbmVudCA9IG5vcm1hbGl6ZXIoXG4gIHNjcmlwdCxcbiAgcmVuZGVyLFxuICBzdGF0aWNSZW5kZXJGbnMsXG4gIGZhbHNlLFxuICBudWxsLFxuICBcIjFkZjY2MDAyXCIsXG4gIG51bGxcbiAgXG4pXG5cbmV4cG9ydCBkZWZhdWx0IGNvbXBvbmVudC5leHBvcnRzIl0sInNvdXJjZVJvb3QiOiIifQ==
|