html{box-sizing:border-box}*,*::after,*::before{box-sizing:inherit}article,aside,details,figcaption,figure,footer,header,hgroup,nav,section,summary{display:block}audio,canvas,video{display:inline-block}audio:not([controls]){display:none;height:0}[hidden],template{display:none}html{color:#000;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%}html,button,input,select,textarea{font-family:sans-serif}body{margin:0}a{background:transparent}a:focus{outline:thin dotted}a:hover,a:active{outline:0}h1{font-size:2em;margin:0.67em 0}h2{font-size:1.5em;margin:0.83em 0}h3{font-size:1.17em;margin:1em 0}h4{font-size:1em;margin:1.33em 0}h5{font-size:.83em;margin:1.67em 0}h6{font-size:.75em;margin:2.33em 0}abbr[title]{border-bottom:1px dotted}b,strong{font-weight:bold}dfn{font-style:italic}mark{background:#ff0;color:#000}code,kbd,pre,samp{font-family:monospace, serif;font-size:1em}pre{white-space:pre;white-space:pre-wrap;word-wrap:break-word}q{quotes:"\201C" "\201D" "\2018" "\2019"}q:before,q:after{content:'';content:none}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sup{top:-0.5em}sub{bottom:-0.25em}img{border:0}svg:not(:root){overflow:hidden}svg{width:100%}figure{margin:0}fieldset{border:none;margin:0;padding:0}legend{border:0;padding:0;white-space:normal}button,input,select,textarea{font-family:inherit;font-size:100%;margin:0;vertical-align:baseline}button,input{line-height:normal}button,select{text-transform:none}button,html input[type="button"],input[type="reset"],input[type="submit"]{-webkit-appearance:button;cursor:pointer}button[disabled],input[disabled]{cursor:default}button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0}textarea{overflow:auto;vertical-align:top}table{border-collapse:collapse;border-spacing:0}input[type="search"]{box-sizing:content-box}input[type="search"]::-webkit-search-cancel-button,input[type="search"]::-webkit-search-decoration{-webkit-appearance:none}input[type="checkbox"],input[type="radio"]{box-sizing:border-box;padding:0}button,[type='button'],[type='reset'],[type='submit'],button{-webkit-appearance:none;-moz-appearance:none;appearance:none;-webkit-font-smoothing:antialiased;background-color:rgba(255,255,255,0.25);border-radius:.2em;border:none;color:#fff;cursor:pointer;display:inline-block;font-family:"Roboto","Helvetica Neue","Helvetica","Arial",sans-serif;font-size:18px;font-weight:600;line-height:1;text-decoration:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;vertical-align:middle;white-space:nowrap}button:hover,button:focus,[type='button']:hover,[type='button']:focus,[type='reset']:hover,[type='reset']:focus,[type='submit']:hover,[type='submit']:focus,button:hover,button:focus{color:#fff}button:disabled,[type='button']:disabled,[type='reset']:disabled,[type='submit']:disabled,button:disabled{cursor:not-allowed;opacity:0.5}.close{border:1px solid rgba(255,255,255,0.2);position:absolute;right:2%;top:2%}.close.dark{background-color:rgba(0,0,0,0.2)}.close.dark:hover{background-color:rgba(0,0,0,0.35)}.btn-search-similar,.btn-add-cart,.btn-make-offer,.btn-admin-deal-of-day,.btn-admin-top-deal,.btn-form-fill-fb,.btn-form-fill-gp{transition:all 30ms ease;justify-content:flex-end;flex:1;border:1px solid rgba(0,0,0,0.1);border-top:2px solid rgba(255,255,255,0);border-bottom:3px solid rgba(0,0,0,0.1);border-radius:.2em;color:#fff;cursor:pointer;margin:0 1em 1em;padding:.5em 1em;position:relative;text-align:center;white-space:nowrap;text-shadow:1px -1px 0 rgba(0,0,0,0.1)}.btn-search-similar .btn-txt:before,.btn-add-cart .btn-txt:before,.btn-make-offer .btn-txt:before,.btn-admin-deal-of-day .btn-txt:before,.btn-admin-top-deal .btn-txt:before,.btn-form-fill-fb .btn-txt:before,.btn-form-fill-gp .btn-txt:before{border-right:1px solid rgba(255,255,255,0.5);display:inline-block;left:-10px;margin-right:.5em;opacity:.75;padding-right:.5em;vertical-align:middle;width:30px;z-index:1}@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none){.btn-search-similar .btn-txt:before,.btn-add-cart .btn-txt:before,.btn-make-offer .btn-txt:before,.btn-admin-deal-of-day .btn-txt:before,.btn-admin-top-deal .btn-txt:before,.btn-form-fill-fb .btn-txt:before,.btn-form-fill-gp .btn-txt:before{height:30px !important}}.btn-search-similar:hover,.btn-add-cart:hover,.btn-make-offer:hover,.btn-admin-deal-of-day:hover,.btn-admin-top-deal:hover,.btn-form-fill-fb:hover,.btn-form-fill-gp:hover{box-shadow:0 5px 10px 2px rgba(0,0,0,0.2);border-bottom-width:3px;color:#fff;top:-1px}.bundled-deal .btn-search-similar,.bundled-deal .btn-add-cart,.bundled-deal .btn-make-offer,.bundled-deal .btn-admin-deal-of-day,.bundled-deal .btn-admin-top-deal,.bundled-deal .btn-form-fill-fb,.bundled-deal .btn-form-fill-gp{flex:auto}.btn-search-similar{background:#6babd2}.btn-search-similar .btn-txt:before{content:url(/browser/img/search.svg)}.btn-add-cart{font-weight:400;background:#69aa2a}.btn-add-cart .btn-txt:before{content:url(/browser/img/cart.svg)}.btn-add-cart:active{transition:all 30ms linear;border-top:1px solid rgba(0,0,0,0.2);box-shadow:inset 0px 3px 5px rgba(0,0,0,0.3);border-bottom:3px solid rgba(130,206,57,0.1);color:#fff;top:1px}.btn-add-cart:active:hover{border-top:1px solid rgba(0,0,0,0.2);box-shadow:inset 0px 3px 5px rgba(0,0,0,0.3);border-bottom:3px solid rgba(130,206,57,0.1);color:#fff}@media (min-width: 0em) and (max-width: 37.5em){.btn-add-cart{flex:1 1 100%}}.org-domain-cta .btn-add-cart{background:rgba(130,206,57,0.3)}.contain-cart-cta,.contain-offer-cta{align-self:stretch;display:inline-block;margin-right:.5em;vertical-align:middle;width:20px}.btn-make-offer{background:#737373;font-weight:400}.org-domain-cta .btn-make-offer{background:rgba(115,115,115,0.3)}.btn-make-offer .btn-txt:before{content:url(/browser/img/offer-chat-bubble.svg)}@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none){.btn-make-offer .btn-txt:before{content:url(/browser/img/offer-chat-bubble.png)}}.btn-make-offer:active{border:1px solid rgba(255,255,255,0);border-top:1px solid rgba(0,0,0,0.2);box-shadow:inset 0px 3px 5px rgba(0,0,0,0.3);color:#fff;top:1px;position:relative}.btn-outline{transition:all 300ms ease-in-out;background:rgba(255,255,255,0.1);border:1px solid #fff;border-radius:.2em;color:#fff;display:inline-block;padding:1em 2em}.btn-outline.large{font-size:1.2rem;margin-top:1rem}@media (min-width: 0em) and (max-width: 37.49em){.btn-outline.large{font-size:1rem;padding:1em}}.btn-outline.reset{border:1px solid rgba(255,255,255,0.1);color:rgba(255,255,255,0.5);font-size:0.813rem;margin:.5em auto;padding:.5em 1em}.btn-outline:visited{color:#fff}.btn-outline:hover{background:rgba(255,255,255,0.35);color:#fff;text-shadow:0 1px 0 rgba(0,0,0,0.35)}.contain-mo-cta .btn-outline,.contain-tdfs-offer-cta .btn-outline{flex:0 1 40%}@media (min-width: 0em) and (max-width: 37.5em){.contain-mo-cta .btn-outline,.contain-tdfs-offer-cta .btn-outline{flex:1 1 100%}}.btn-outline.fb,.btn-outline.in{transition:all 30ms ease-in-out;background:#3a67a1;border:1px solid rgba(0,0,0,0.1);border-bottom-width:3px;margin:0 .5em;padding:.25em 1em;position:relative}.btn-outline.fb:hover,.btn-outline.in:hover{background:#335b8e;box-shadow:inset 0 3px 15px -5px rgba(255,255,255,0.3),0 3px 5px -2px rgba(0,0,0,0.3);border-bottom-width:3px;top:-1px}.btn-outline.fb:active,.btn-outline.in:active{box-shadow:inset 0 3px 15px rgba(0,0,0,0.3);color:#fff;position:relative;top:1px}.btn-outline.fb:active:hover,.btn-outline.in:active:hover{box-shadow:inset 0 3px 15px rgba(0,0,0,0.3);color:#fff;top:1px}.btn-outline.in{background:#007ab9}.btn-outline.in:hover{background:#0069a0}.btn-outline .contain-arw-fwd{display:inline-block;margin-left:5px;height:15px;width:15px}.btn-outline .svg-arw-fwd{fill:#fff}.remove-selected{display:block;height:25px;left:8px;position:absolute;top:5px;width:25px}.contain-svg-remove{clip-rule:evenodd;fill-rule:evenodd;fill:#a1a1a1}.contain-svg-remove:hover{fill:rgba(255,255,255,0.8)}.btn-org-bundle{transition:all 30ms ease;display:flex;flex-direction:row;justify-content:flex-end;background:rgba(0,0,0,0.2);border-radius:.2em;border:1px solid rgba(0,0,0,0.1);color:#a1a1a1;cursor:pointer;display:inline-block;font-size:.9rem;min-width:80px;padding:.65em 1em;position:relative;text-align:center;white-space:nowrap}.btn-org-bundle:hover{background:rgba(0,0,0,0.6);color:rgba(255,255,255,0.8)}.btn-org-bundle-add{color:#a1a1a1;min-width:40px}.btn-org-bundle-add:hover{color:rgba(255,255,255,0.8)}.contain-svg-bundle{display:inline-block;width:15px}.btn-admin-deal-of-day,.btn-admin-top-deal{font-size:1.2rem;font-weight:400;background:#e17d1a}.btn-admin-deal-of-day .btn-txt:before,.btn-admin-top-deal .btn-txt:before{display:none}.btn-admin-deal-of-day:active,.btn-admin-top-deal:active{transition:all, 30ms, linear;border-top:1px solid rgba(0,0,0,0.2);box-shadow:inset 0px 3px 5px rgba(0,0,0,0.3);border-bottom:3px solid rgba(130,206,57,0.1);color:#fff;top:1px}.btn-admin-deal-of-day:active:hover,.btn-admin-top-deal:active:hover{border-top:1px solid rgba(0,0,0,0.2);box-shadow:inset 0px 3px 5px rgba(0,0,0,0.3);border-bottom:3px solid rgba(130,206,57,0.1);color:#fff}.btn-admin-top-deal{background:#3888b8}.contain-social-form-fill{transition:all 30ms ease;display:flex;flex-direction:row}.container-results-row .contain-social-form-fill{margin-bottom:20px}.btn-form-fill-fb,.btn-form-fill-gp{margin:0;padding:.2em 1em;font-weight:400;font-size:1rem}.btn-form-fill-fb:before,.btn-form-fill-gp:before{display:inline-block;height:24px;margin-right:.75em;overflow:visible;position:relative;vertical-align:middle;top:-.05em;width:24px;z-index:1}.btn-form-fill-fb.disabled,.btn-form-fill-gp.disabled{background:#a1a1a1 !important;border-color:#a1a1a1 !important;opacity:.75;cursor:text}.btn-form-fill-fb.disabled:hover,.btn-form-fill-gp.disabled:hover{box-shadow:none;border-bottom-width:3px;color:#fff;top:0}.btn-form-fill-fb{background:#3a67a1;display:block;margin-right:.5em}.btn-form-fill-fb:before{content:url(/browser/img/social-fb.svg)}.btn-form-fill-fb.disabled:before{content:url(/browser/img/social-fb-gray.svg)}.btn-form-fill-gp{background:#c53829}.btn-form-fill-gp:before{content:url(/browser/img/social-gp.svg)}.a-txt-underline{color:#fff;text-decoration:underline}.a-txt-underline:hover{color:#fff}.nav-simple,.search-simple{transition:all 300ms ease-in-out;position:fixed;width:100%;z-index:9}.search-simple{height:77px;top:82px}.search-simple:before{transition:all 300ms ease-in-out;background:rgba(66,66,66,0.8);box-shadow:inset 0 5px 15px rgba(0,0,0,0.5);content:'';height:100%;position:absolute;width:100%;z-index:-1}.nav-header,.nav-header-search,.nav-footer{align-items:center;display:flex;flex-direction:row;justify-content:flex-start}.nav-header,.nav-header-search{align-items:middle;height:100%}.headroom{transition:transform 200ms linear;will-change:transform}.headroom--pinned{transform:translateY(0%)}.headroom--unpinned{transform:translateY(-100%)}.nav-item{display:inline-block;padding:.5em 1em}.nav-item a{transition:all 300ms ease-in-out;background:rgba(0,0,0,0.2);border:1px solid rgba(0,0,0,0.25);border-radius:.2em;color:rgba(255,255,255,0.5);display:block;font-weight:400;padding:.35em 1em;text-align:center}.nav-item a:hover{color:#fff}.nav-item a:hover .svg-bundle,.nav-item a:hover .svg-recent{fill:#fff}.container-nav-phone{flex:60 40 60;color:#fff;padding-right:2em;text-align:right;flex-grow:1}.container-nav-phone a{color:#fff;font-size:1.375em}.container-nav-cart{flex:20 20 20}.nav-cart{align-items:center;display:flex;flex-direction:row;justify-content:flex-start;background:rgba(130,206,57,0.8);box-shadow:inset 0 -1px 0 rgba(0,0,0,0.1);height:63px;min-width:100px}.nav-cart:active{transition:all 30ms ease-in-out;border-top:1px solid rgba(0,0,0,0.7);box-shadow:inset 0px 3px 5px rgba(0,0,0,0.3);position:relative;top:1px}.nav-cart:hover{transition:all 300ms ease-in-out;background:#88d043}.nav-cart:hover .svg-cart{fill:rgba(0,0,0,0.25)}.nav-cart:hover .container-numb-cart{color:#fff}.container-svg-cart{margin:0 1em;width:30px}.svg-cart{transition:all 300ms ease-in-out;fill:rgba(0,0,0,0.25)}.container-numb-cart{transition:all 300ms ease-in-out;background:rgba(0,0,0,0.3);color:rgba(255,255,255,0.5);height:100%;padding:1em}.nav-logo,.nav-search,.nav-fave,.nav-fave-bundle{transition:all 300ms ease-in-out;border-left:5px solid rgba(225,125,26,0.5);border-right:1px solid rgba(255,255,255,0);box-shadow:-10px 0px 10px -5px rgba(0,0,0,0.25);display:inline-block;padding:.45em 1em;position:relative;width:75px;z-index:3;align-self:auto}.nav-logo:hover,.nav-search:hover,.nav-fave:hover,.nav-fave-bundle:hover,.search-simple .nav-logo,.search-simple .nav-search,.search-simple .nav-fave,.search-simple .nav-fave-bundle{background:rgba(0,0,0,0.5);border-left:5px solid #e17d1a}.nav-logo:hover .logo-arw,.nav-search:hover .logo-arw,.nav-fave:hover .logo-arw,.nav-fave-bundle:hover .logo-arw,.search-simple .nav-logo .logo-arw,.search-simple .nav-search .logo-arw,.search-simple .nav-fave .logo-arw,.search-simple .nav-fave-bundle .logo-arw{transition:all 300ms ease-in-out;fill:#FF7302}.nav-logo:hover .logo-dot,.nav-search:hover .logo-dot,.nav-fave:hover .logo-dot,.nav-fave-bundle:hover .logo-dot,.search-simple .nav-logo .logo-dot,.search-simple .nav-search .logo-dot,.search-simple .nav-fave .logo-dot,.search-simple .nav-fave-bundle .logo-dot{transition:all 300ms ease-in-out;fill:#fff}.content-home .nav-logo,.content-home .nav-search,.content-home .nav-fave,.content-home .nav-fave-bundle{border-left:5px solid rgba(255,255,255,0.15);margin-left:3%}.logo-arw,.logo-dot,.logo-letter{transition:all 300ms ease-in-out;fill:rgba(255,255,255,0.5)}.nav-contain-phone{flex:1 1 auto;color:#fff;font-weight:400;padding:.5em 2em;text-align:right}@media (min-width: 0em) and (max-width: 37.5em){.nav-contain-phone{flex:1 1 100%;background:rgba(53,53,53,0.75);font-size:0.722em;text-align:center;order:-1}}@media (min-width: 37.51em) and (max-width: 47.99em){.nav-contain-phone{font-size:1em;text-align:right}}.nav-contain-phone a{color:#fff}@media (min-width: 0em) and (max-width: 47.99em){.nav-contain-phone a{padding:0}}.nav-contain-phone a:hover{color:#fff}.nav-bundle span,.nav-recent span{display:inline-block;height:15px;width:15px}@media (max-width: 25.875em){.nav-bundle span,.nav-recent span{display:none}}.nav-bundle:hover{background:#e17d1a}.nav-recent:hover{background:#6babd2}.nav-search{border-left:5px solid rgba(107,171,210,0.5)}.nav-search:hover,.search-simple .nav-search{border-left:5px solid #6babd2}.nav-searchfield{flex:0 0 80%;border-radius:.2em;color:#6babd2;font-size:1.45rem;font-weight:300;margin-left:1em;padding:.25em 1em}.nav-searchfield::-moz-placeholder{color:#6babd2}.nav-searchfield:-ms-input-placeholder{color:#6babd2}.nav-searchfield::placeholder{color:#6babd2}.nav-search-btn{flex:0 0 auto;background:#6babd2;border:1px solid #5b91b3;border-bottom-width:3px;border-radius:.3em;border-top:none;height:45px;margin-left:.75em;padding:.5em 1.5em .75em;position:relative}.nav-search-btn:hover{transition:all 30ms ease-in-out;box-shadow:0 5px 10px 2px rgba(0,0,0,0.2);top:-2px}.contain-nav-side{background:#424242;height:100vh;min-width:calc(2.5% + 75px);padding-left:2.5%;position:absolute;z-index:4}.contain-nav-side .btn-side{border-top:1px solid rgba(255,255,255,0.1);box-shadow:inset 0 -1px 0 rgba(0,0,0,0.1)}.nav-side{border-bottom:1px solid rgba(255,255,255,0.1)}.nav-fave,.nav-fave-bundle{border-left:5px solid rgba(249,233,39,0.5);padding:.75em 1.25em}.nav-fave:hover,.nav-fave-bundle:hover{background:rgba(0,0,0,0.1);border-left:5px solid #f9e927}.nav-fave:hover .svg-fave,.nav-fave-bundle:hover .svg-fave{fill:#f9e927}.nav-fave:hover .contain-count,.nav-fave-bundle:hover .contain-count{color:#fff}.nav-fave-bundle{border-left:5px solid rgba(130,206,57,0.5)}.nav-fave-bundle:hover{border-left:5px solid #82ce39}.nav-fave-bundle:hover .svg-fave-bundle{fill:#fff}.nav-fave-bundle:hover .contain-count{color:#fff}.contain-count{background:rgba(0,0,0,0.2);border:1px solid rgba(0,0,0,0.25);color:rgba(255,255,255,0.5);display:block;text-align:center}.contain-nav-chat{align-self:center;transition:all 300ms ease-in-out;background:rgba(110,58,117,0.8);border:1px solid rgba(0,0,0,0.25);border-radius:.2em;display:inline-block;padding:.2em 1em}.contain-nav-chat:hover{background:#6e3a75}.contain-nav-chat:hover .nav-chat-txt{color:#fff}.contain-nav-chat:hover .nav-chat-txt:before{opacity:1}.nav-chat-txt{color:rgba(255,255,255,0.85);display:block;font-weight:400;text-align:center}.nav-chat-txt:before{content:url("/browser/img/chat.svg");display:inline-block;height:26px;margin-right:.5em;opacity:.75;vertical-align:middle;width:24px}@media (max-width: 25.875em){.nav-chat-txt:before{margin-right:0}}@media (max-width: 25.875em){.nav-chat-txt .chat-txt{display:none}}fieldset{margin:0 0 .75em}input,label,select{display:block;font-family:"Roboto","Helvetica Neue","Helvetica","Arial",sans-serif}*:focus{outline:none}label{color:#fff;font-weight:400;margin-bottom:.375em}label.required::after{content:"*"}label abbr{display:none}[type='color'],[type='date'],[type='datetime'],[type='datetime-local'],[type='email'],[type='month'],[type='number'],[type='password'],[type='search'],[type='tel'],[type='text'],[type='time'],[type='url'],[type='week'],input:not([type]),textarea,select[multiple=multiple],textarea{background-color:#fff;border:none;border-radius:.3em;box-sizing:border-box;font-family:"Roboto","Helvetica Neue","Helvetica","Arial",sans-serif;font-size:18px;margin-bottom:0;padding:0.5em;transition:border-color;width:100%}[type='color']:focus,[type='date']:focus,[type='datetime']:focus,[type='datetime-local']:focus,[type='email']:focus,[type='month']:focus,[type='number']:focus,[type='password']:focus,[type='search']:focus,[type='tel']:focus,[type='text']:focus,[type='time']:focus,[type='url']:focus,[type='week']:focus,input:not([type]):focus,textarea:focus,select[multiple=multiple]:focus,textarea:focus{transition:all 600ms linear;border-color:#6babd2;box-shadow:0 5px 10px rgba(0,0,0,0.1);outline:none;position:relative;top:-1px}textarea{resize:vertical}input[type="search"]{-webkit-appearance:none;-moz-appearance:none;appearance:none}input[type="checkbox"],input[type="radio"]{display:inline;margin-right:.375em}input[type="checkbox"].select-fave,input[type="radio"].select-fave{display:inline-block;font-size:2rem;border:none;outline:none}input[type="file"]{padding-bottom:.75em;width:100%}select{max-width:100%;width:auto}.contain-form-pri{padding-bottom:20px}.offer-form,.bundle-form,.admin-login-form{display:flex;align-items:flex-start;justify-content:space-between;flex-flow:row wrap;padding:10px 0}.offer-form li,.bundle-form li,.admin-login-form li{border-radius:.5em;flex:30%;margin:0 1em 1em 0;padding:.5em;position:relative;transition:all, 300ms, ease-in-out}.offer-form li.selected,.bundle-form li.selected,.admin-login-form li.selected{background:rgba(255,255,255,0.2)}.offer-form li.o-country,.bundle-form li.o-country,.admin-login-form li.o-country{flex:100%;margin:0em 1em 1em 0}@media (min-width: 47.49em){.contain-deal-row .offer-form li.o-country,.contain-deal-row .bundle-form li.o-country,.contain-deal-row .admin-login-form li.o-country{max-width:calc(66.6% - 1em)}}@media (min-width: 105em){.contain-deal-row .offer-form li.o-country,.contain-deal-row .bundle-form li.o-country,.contain-deal-row .admin-login-form li.o-country{max-width:calc(33.3% - 1em)}}.offer-form li.o-captcha,.bundle-form li.o-captcha,.admin-login-form li.o-captcha{flex:100%}@media (min-width: 0em) and (max-width: 37.49em){.offer-form li,.bundle-form li,.admin-login-form li{flex:50%;margin:0 0 1em 0}}select{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;border-radius:0;color:gray}@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none){select{position:relative;z-index:2}}label[for=country],label[for=prLow],label[for=prHigh],label[for=selectCat]{border:none;border-radius:0 .3em .3em 0;color:gray;position:relative;display:block;overflow:hidden;cursor:pointer}label[for=country]::after,label[for=prLow]::after,label[for=prHigh]::after,label[for=selectCat]::after{border-radius:0 .3em .3em 0;content:' ';position:absolute;right:0;top:0;width:40px;height:100%;display:block;background:#204e6a url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAOBAMAAAGq7RFVAAAAJ1BMVEX///////////////////////////////////////////////////9Ruv0SAAAADHRSTlMACAoREoKDt7y9zc5qtZoyAAAAcklEQVQIHQXBsQnCUAAFwFOCCKbIABaWERzi1yaFAzmEpHYEC8GUKVQEkbyhvOOkZqdWt0/QYKqLzQeF7dv6y/RLwa2wYtk4Xxxe+t8yd1WuM/rcUc2gYHEeoP02umSgTR50ybBPRuiSZAS6ZAQ4jgCAPyjYJiRH4fymAAAAAElFTkSuQmCC") no-repeat center center;pointer-events:none}@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none){label[for=country]::after,label[for=prLow]::after,label[for=prHigh]::after,label[for=selectCat]::after{z-index:1}}label[for=country] select,label[for=prLow] select,label[for=prHigh] select,label[for=selectCat] select{border-radius:.3em;background:#fff;padding:.5em;width:100%;font-size:1rem;cursor:pointer}@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none){label[for=country] select,label[for=prLow] select,label[for=prHigh] select,label[for=selectCat] select{z-index:1}}label[for=country] select::-ms-expand,label[for=prLow] select::-ms-expand,label[for=prHigh] select::-ms-expand,label[for=selectCat] select::-ms-expand{display:none}label[for=country] :-moz-any(select),label[for=prLow] :-moz-any(select),label[for=prHigh] :-moz-any(select),label[for=selectCat] :-moz-any(select){width:110%}label[for=country].ie9 select,label[for=prLow].ie9 select,label[for=prHigh].ie9 select,label[for=selectCat].ie9 select{width:110%}label[for=country] select:focus,label[for=prLow] select:focus,label[for=prHigh] select:focus,label[for=selectCat] select:focus{outline:none}.bundle-form li,.bundle-form li.o-country{flex:45%}.form-checkboxes p{padding:0 1em}.form-checkboxes button{margin:1em}.contain-checkbox{border-radius:.3em;display:inline-block;height:35px;left:1em;position:absolute;top:1.25em;width:40px}.contain-checkbox label{background:#fff;border-radius:.3em;border:1px solid #d3d3d3;box-shadow:inset 0px 2px 5px rgba(0,0,0,0.1);cursor:pointer;height:20px;left:10px;position:absolute;top:7px;width:20px}.contain-checkbox label:after{content:url(/browser/img/checkmark.svg);width:12px;height:12px;position:absolute;top:-2px;left:4px;border-top:none;border-right:none;background:transparent;opacity:0}.contain-checkbox label:hover:after{opacity:1}.contain-checkbox input[type=checkbox]{visibility:hidden}.contain-checkbox input[type=checkbox]:checked+label:after{opacity:1}.org-contain-checkbox label{background:#fff;border-radius:.3em;border:1px solid #d3d3d3;box-shadow:inset 0px 2px 5px rgba(0,0,0,0.1);cursor:pointer;height:20px;left:10px;position:absolute;top:7px;width:20px}.org-contain-checkbox label:after{content:url(/browser/img/checkmark.svg);width:12px;height:12px;position:absolute;top:-2px;left:4px;border-top:none;border-right:none;background:transparent;opacity:0}.org-contain-checkbox label:hover:after{opacity:1}.org-contain-checkbox input[type=checkbox]{visibility:hidden}.org-contain-checkbox input[type=checkbox]:checked+label:after{opacity:1}.validate-err{background:#b64434;border-radius:0 0 10px 10px;clear:both;color:#fff;display:block;font-size:0.722em;font-weight:500;padding:.75em}input.search-text-field.error-tld-textbox:focus,input.home-searchfield.error-tld-textbox:focus,input.search-text-field.error-tld-textbox,input.home-searchfield.error-tld-textbox{border:2px solid #d21334}ul,ol{list-style-type:none;margin:0;padding:0}dl{margin-bottom:.75em}dl dt{margin-top:.75em}dl dd{margin:0}table{font-feature-settings:"kern", "liga", "tnum";border-collapse:collapse;margin:0;table-layout:fixed;width:100%}th{border-bottom:1px solid #7b7b7b;font-weight:600;padding:.75em 0;text-align:left}td{border-bottom:1px solid #a1a1a1;padding:.75em 0}tr,td,th{vertical-align:middle}body{font-feature-settings:"kern", "liga", "tnum";-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:#424242;font-family:"Roboto","Helvetica Neue","Helvetica","Arial",sans-serif;font-size:18px;line-height:1.5}h1,h2,h3,h4,h5,h6{color:#fff;font-family:"Roboto","Helvetica Neue","Helvetica","Arial",sans-serif;font-size:1rem;line-height:1.2;margin:0 0 .75em;margin:0}h1,h2{font-family:"Roboto Condensed","Helvetica Neue Condensed","Helvetica Condensed","Arial Narrow",sans-serif;font-size:5rem;font-weight:300;text-transform:uppercase}h2{margin-bottom:.5em}.content-home h2{font-size:5rem}@media (min-width: 0em) and (max-width: 23.428em){.content-home h2{font-size:3rem}}.contain-offer h2{font-size:2rem}h3{font-weight:500}.content-home h3,.content-home h3{font-family:"Roboto Condensed","Helvetica Neue Condensed","Helvetica Condensed","Arial Narrow",sans-serif;font-size:3.750rem;font-weight:300}@media (min-width: 0em) and (max-width: 23.428em){.content-home h3,.content-home h3{font-size:3rem}}h4{text-transform:uppercase;color:#424242}p{font-weight:500;margin:0 0 .75em}.home-specialist p{font-size:1.5rem}.contain-offer p{color:#fff}.small{font-size:0.8rem}.xlarge{font-size:2.250rem}.large{font-size:1.5rem}.med{font-size:1.25rem}.gray{color:#424242}.txt-light{font-family:"Roboto Condensed","Helvetica Neue Condensed","Helvetica Condensed","Arial Narrow",sans-serif}.txt-thin{font-weight:400}.color-domain{color:#6babd2}.color-tld{color:#999}a{color:#6babd2;text-decoration:none;transition:color 0.1s linear}a:active,a:focus,a:hover{color:#3888b8}a:active,a:focus{outline:none}hr{border-bottom:1px solid #a1a1a1;border-left:none;border-right:none;border-top:none;margin:1.5em 0}hr.white{border-bottom:1px solid rgba(255,255,255,0.5)}img,picture{margin:0;max-width:100%}.txt-line-thru{text-decoration:line-through}.txt-call-us{font-family:"Roboto Condensed","Helvetica Neue Condensed","Helvetica Condensed","Arial Narrow",sans-serif;font-size:1.750rem;font-weight:300;line-height:1.5em;margin-bottom:1.5em}.txt-phone-large,.txt-phone-large:hover{color:#69aa2a;font-family:"Roboto","Helvetica Neue","Helvetica","Arial",sans-serif;font-size:2.625rem}.txt-phone,.txt-phone:hover{color:#69aa2a;display:inline-block;font-family:"Roboto","Helvetica Neue","Helvetica","Arial",sans-serif}.contain-tdfs-cta .txt-phone,.contain-tdfs-offerConfirm .txt-phone,.contain-tdfs-cta .txt-phone:hover,.contain-tdfs-offerConfirm .txt-phone:hover{color:#75b933;font-size:2.625rem}@media (min-width: 0em) and (max-width: 47.49em){.contain-tdfs-cta .txt-phone+.txt-grey,.contain-tdfs-offerConfirm .txt-phone+.txt-grey,.contain-tdfs-cta .txt-phone:hover+.txt-grey,.contain-tdfs-offerConfirm .txt-phone:hover+.txt-grey{display:block;margin-bottom:-25px}}.contain-message .txt-phone,.tdfs-phone-form .txt-phone,.mo-phone-txt .txt-phone,.contain-message .txt-phone:hover,.tdfs-phone-form .txt-phone:hover,.mo-phone-txt .txt-phone:hover{color:#fff}.home-offers .txt-phone,.f-phone .txt-phone,.home-offers .txt-phone:hover,.f-phone .txt-phone:hover{color:#fff;display:inline-block;padding:.25em .5em}@media (min-width: 0em) and (max-width: 23.428em){.home-offers .txt-phone,.home-offers .txt-phone:hover{display:block;padding:.25em 0}}.home-specialist .txt-phone,.home-specialist .txt-phone:hover{color:#424242;font-family:"Roboto Condensed","Helvetica Neue Condensed","Helvetica Condensed","Arial Narrow",sans-serif}.nav-contain-phone .txt-phone,.nav-contain-phone .txt-phone:hover{font-size:1.375em;padding-right:.5em}@media (min-width: 0em) and (max-width: 23.428em){.nav-contain-phone .txt-phone,.nav-contain-phone .txt-phone:hover{border-right-width:0}}.contain-name{background:rgba(153,153,153,0.12);border-radius:.3em;padding:.25em}.offerValue{color:#69aa2a}html,body{height:100%;background:#f8f8f8}.tdfs-input:focus::-webkit-input-placeholder{color:transparent}.tdfs-input:focus:-moz-placeholder{color:transparent}.tdfs-input:focus::-moz-placeholder{color:transparent}.tdfs-input:focus:-ms-input-placeholder{color:transparent}.inner-tdfs{height:100vh;padding:5% 2.5% 0% 35%}.inner-tdfs:before{content:url(/browser/img/arw-dot-gray.svg);display:block;height:auto;left:0%;position:absolute;width:30%}@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none){.inner-tdfs:before{-webkit-mask:none;mask:none;background-color:rgba(153,153,153,0);content:url(/browser/img/arw-dot-trans.svg)}}@media (min-width: 0em) and (max-width: 37.49em){.inner-tdfs:before{display:none}}@media (min-width: 37.5em) and (max-width: 47.49em){.inner-tdfs:before{width:15%}}@media (min-width: 1500px){.inner-tdfs:before{width:20%}}@media (min-width: 0em) and (max-width: 37.49em){.inner-tdfs{padding:5% 0 0}}@media (min-width: 37.5em) and (max-width: 47.49em){.inner-tdfs{padding:5% 5% 0 20%}}@media (min-width: 1500px){.inner-tdfs{max-width:1360px;padding:5% 2.5% 0% 25%}}.h1-tdfs{color:#424242;font-family:"Roboto","Helvetica Neue","Helvetica","Arial",sans-serif;font-size:1.375rem;font-weight:400;margin-bottom:.5em;text-transform:none}@media (min-width: 0em) and (max-width: 37.49em){.h1-tdfs{padding:0 .5em}}.contain-tdfs-name{background:#fff;border:1px solid #d3d3d3;border-radius:.3em;box-shadow:inset 0 5px 10px rgba(0,0,0,0.05);color:#6babd2;display:block;font-size:1.625rem;margin:.5em 0;padding:.35em .5em .35em 50px;position:relative}.contain-tdfs-name strong{color:#a1a1a1;font-weight:400}.contain-tdfs-name:before{content:url(/browser/img/fave-outline-gray.svg);display:block;height:25px;left:15px;position:absolute;width:25px}@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none){.contain-tdfs-name:before{-webkit-mask:none;mask:none;background-color:rgba(153,153,153,0);content:url(/browser/img/fave-outline.svg);opacity:.4}}@media (min-width: 0em) and (max-width: 37.49em){.contain-tdfs-name:before{display:none}}@media (min-width: 0em) and (max-width: 37.49em){.contain-tdfs-name{overflow-x:scroll;padding:.35em .5em}}.contain-txt{color:#a1a1a1;margin-bottom:1.5em}@media (min-width: 0em) and (max-width: 37.49em){.contain-txt{padding:.35em .75em}}.txt-orig-price{color:#424242;font-size:1.35rem}.txt-save-now{color:#b64434;font-family:"Roboto Condensed","Helvetica Neue Condensed","Helvetica Condensed","Arial Narrow",sans-serif;font-size:1.125em;text-transform:uppercase}@media (min-width: 0em) and (max-width: 37.49em){.txt-save-now{padding-left:0}}.contain-tdfs-cta{-webkit-animation:fadeInUp 300ms ease-in-out;animation:fadeInUp 300ms ease-in-out}.contain-tdfs-cta.ng-hide{display:none}.tdfs-cta{align-items:center;align-self:stretch;display:flex;flex-flow:row wrap;flex-wrap:wrap;justify-content:flex-start;margin-bottom:3.5em}.tdfs-cta .btn-add-cart,.tdfs-cta .btn-make-offer{font-size:1.375rem;margin:.25em 0}@media (min-width: 0em) and (max-width: 47.49em){.tdfs-cta .btn-add-cart,.tdfs-cta .btn-make-offer{width:100%}}.tdfs-cta .txt-or{padding:1em}@media (min-width: 0em) and (max-width: 47.49em){.tdfs-cta .txt-or{display:none}}@media (min-width: 0em) and (max-width: 47.49em){.tdfs-cta{flex-direction:column;padding:0 2%}}.txt-call-us{font-family:"Roboto Condensed","Helvetica Neue Condensed","Helvetica Condensed","Arial Narrow",sans-serif;font-size:1.750rem;font-weight:300;line-height:1.5em;margin-bottom:1.5em}@media (min-width: 0em) and (max-width: 37.49em){.txt-call-us{padding:.5em}}.contain-name{background:rgba(153,153,153,0.12);border-radius:.3em;padding:.25em}.contain-tdfs-offer{-webkit-animation:fadeInDown 300ms ease-in-out;animation:fadeInDown 300ms ease-in-out;position:relative}.contain-tdfs-offer.ng-hide{-webkit-animation:fadeOutUp 300ms ease-in-out;animation:fadeOutUp 300ms ease-in-out}.contain-tdfs-offer .contain-offer{box-shadow:none;z-index:2}.contain-tdfs-offer:before{box-shadow:inset 0 5px 7px -5px rgba(0,0,0,0.25);top:0;content:'';display:block;height:5px;left:-2%;position:absolute;width:104%;z-index:3}@media (min-width: 0em) and (max-width: 37.49em){.contain-tdfs-offer:before{width:100%}}.inner-tdfs .contain-tdfs-offer:after{box-shadow:0 20px 25px rgba(0,0,0,0.35);border-radius:100px;bottom:2px;content:'';display:block;height:50px;left:0%;position:absolute;width:100%;z-index:1}.contain-tdfs-offerConfirm{-webkit-animation:fadeInUp 300ms ease-in-out;animation:fadeInUp 300ms ease-in-out}.tdfs-offerValue{color:#75b933}.contain-tdfs-offer-cta{flex-wrap:wrap;display:flex;box-align:center;align-items:center;flex-flow:row wrap;justify-content:flex-start}.tdfs-phone-form{color:#fff;font-size:1.375rem;font-weight:400}.contain-tdfs-offer-cta .tdfs-phone-form{flex:0 1 50%}.tdfs-phone-form a{color:#fff}.tdfs-domain-name{font-size:1.9rem;overflow:hidden}@media (min-width: 0em) and (max-width: 37.49em){.tdfs-domain-name.small{font-size:1.4rem;overflow:hidden}.tdfs-domain-name.smallest{font-size:1.1rem;overflow:hidden}.tdfs-domain-name.tiny{font-size:1rem;overflow:hidden}}.contain-logo-tdfs{color:#424242;margin-top:1.5em}.contain-logo-tdfs .foot-logo-tdfs{display:block;max-height:73px;max-width:200px}.contain-logo-tdfs .logo-arw{fill:#e17d1a}.contain-logo-tdfs .logo-letter{fill:#424242}@media (min-width: 0em) and (max-width: 37.49em){.contain-logo-tdfs{padding:0 2%}}.txt-copyright{font-size:0.813rem;font-weight:300}

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGRmcy10ZW1wLmNzcyIsInNvdXJjZXMiOlsidGRmcy10ZW1wLnNjc3MiLCJfaW5jbHVkZS1tZWRpYS5zY3NzIiwiX25vcm1hbGl6ZS5zY3NzIiwiX2JvdXJib24uc2NzcyIsImJvdXJib24vaGVscGVycy9fYnV0dG9ucy1saXN0LnNjc3MiLCJib3VyYm9uL2hlbHBlcnMvX3NjYWxlcy5zY3NzIiwiYm91cmJvbi9oZWxwZXJzL190ZXh0LWlucHV0cy1saXN0LnNjc3MiLCJib3VyYm9uL3NldHRpbmdzL19zZXR0aW5ncy5zY3NzIiwiYm91cmJvbi92YWxpZGF0b3JzL19jb250YWlucy5zY3NzIiwiYm91cmJvbi92YWxpZGF0b3JzL19jb250YWlucy1mYWxzeS5zY3NzIiwiYm91cmJvbi92YWxpZGF0b3JzL19pcy1jb2xvci5zY3NzIiwiYm91cmJvbi92YWxpZGF0b3JzL19pcy1sZW5ndGguc2NzcyIsImJvdXJib24vdmFsaWRhdG9ycy9faXMtbnVtYmVyLnNjc3MiLCJib3VyYm9uL3ZhbGlkYXRvcnMvX2lzLXNpemUuc2NzcyIsImJvdXJib24vdXRpbGl0aWVzL19hc3NpZ24taW5wdXRzLnNjc3MiLCJib3VyYm9uL3V0aWxpdGllcy9fY29tcGFjdC1zaG9ydGhhbmQuc2NzcyIsImJvdXJib24vdXRpbGl0aWVzL19kaXJlY3Rpb25hbC1wcm9wZXJ0eS5zY3NzIiwiYm91cmJvbi91dGlsaXRpZXMvX2ZldGNoLWJvdXJib24tc2V0dGluZy5zY3NzIiwiYm91cmJvbi91dGlsaXRpZXMvX2ZvbnQtc291cmNlLWRlY2xhcmF0aW9uLnNjc3MiLCJib3VyYm9uL3V0aWxpdGllcy9fZ2FtbWEuc2NzcyIsImJvdXJib24vdXRpbGl0aWVzL19saWdodG5lc3Muc2NzcyIsImJvdXJib24vdXRpbGl0aWVzL19jb250cmFzdC1yYXRpby5zY3NzIiwiYm91cmJvbi91dGlsaXRpZXMvX3VucGFjay1zaG9ydGhhbmQuc2NzcyIsImJvdXJib24vbGlicmFyeS9fYm9yZGVyLWNvbG9yLnNjc3MiLCJib3VyYm9uL2xpYnJhcnkvX2JvcmRlci1yYWRpdXMuc2NzcyIsImJvdXJib24vbGlicmFyeS9fYm9yZGVyLXN0eWxlLnNjc3MiLCJib3VyYm9uL2xpYnJhcnkvX2JvcmRlci13aWR0aC5zY3NzIiwiYm91cmJvbi9saWJyYXJ5L19idXR0b25zLnNjc3MiLCJib3VyYm9uL2xpYnJhcnkvX2NsZWFyZml4LnNjc3MiLCJib3VyYm9uL2xpYnJhcnkvX2NvbnRyYXN0LXN3aXRjaC5zY3NzIiwiYm91cmJvbi9saWJyYXJ5L19lbGxpcHNpcy5zY3NzIiwiYm91cmJvbi9saWJyYXJ5L19mb250LWZhY2Uuc2NzcyIsImJvdXJib24vbGlicmFyeS9fZm9udC1zdGFja3Muc2NzcyIsImJvdXJib24vbGlicmFyeS9faGlkZS10ZXh0LnNjc3MiLCJib3VyYm9uL2xpYnJhcnkvX2hpZGUtdmlzdWFsbHkuc2NzcyIsImJvdXJib24vbGlicmFyeS9fbWFyZ2luLnNjc3MiLCJib3VyYm9uL2xpYnJhcnkvX21vZHVsYXItc2NhbGUuc2NzcyIsImJvdXJib24vbGlicmFyeS9fb3ZlcmZsb3ctd3JhcC5zY3NzIiwiYm91cmJvbi9saWJyYXJ5L19wYWRkaW5nLnNjc3MiLCJib3VyYm9uL2xpYnJhcnkvX3Bvc2l0aW9uLnNjc3MiLCJib3VyYm9uL2xpYnJhcnkvX3ByZWZpeGVyLnNjc3MiLCJib3VyYm9uL2xpYnJhcnkvX3NoYWRlLnNjc3MiLCJib3VyYm9uL2xpYnJhcnkvX3NpemUuc2NzcyIsImJvdXJib24vbGlicmFyeS9fc3RyaXAtdW5pdC5zY3NzIiwiYm91cmJvbi9saWJyYXJ5L190ZXh0LWlucHV0cy5zY3NzIiwiYm91cmJvbi9saWJyYXJ5L190aW1pbmctZnVuY3Rpb25zLnNjc3MiLCJib3VyYm9uL2xpYnJhcnkvX3RpbnQuc2NzcyIsImJvdXJib24vbGlicmFyeS9fdHJpYW5nbGUuc2NzcyIsImJvdXJib24vbGlicmFyeS9fdmFsdWUtcHJlZml4ZXIuc2NzcyIsImJpdHRlcnMvX2Jhc2Uuc2NzcyIsImJpdHRlcnMvX3ZhcmlhYmxlcy5zY3NzIiwiYml0dGVycy9fYnV0dG9ucy5zY3NzIiwiYml0dGVycy9fbmF2LWl0ZW1zLnNjc3MiLCJiaXR0ZXJzL19mb3Jtcy5zY3NzIiwiYml0dGVycy9fbGlzdHMuc2NzcyIsImJpdHRlcnMvX3RhYmxlcy5zY3NzIiwiYml0dGVycy9fdHlwb2dyYXBoeS5zY3NzIl0sInNvdXJjZXNDb250ZW50IjpbIkBpbXBvcnQgXCJpbmNsdWRlLW1lZGlhXCI7XG5AaW1wb3J0IFwibm9ybWFsaXplXCI7XG5AaW1wb3J0IFwiYm91cmJvblwiO1xuQGltcG9ydCBcImJpdHRlcnMvYmFzZVwiO1xuXG5cbmh0bWwsIGJvZHkge2hlaWdodDogMTAwJTtiYWNrZ3JvdW5kOiAkb2ZmLXdoaXRlO31cblxuLnRkZnMtaW5wdXQge1xuXG4gICAgJjpmb2N1czo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciB7XG4gICAgICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICB9XG4gICAgJjpmb2N1czotbW96LXBsYWNlaG9sZGVyIHtcbiAgICAgICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIH1cbiAgICAmOmZvY3VzOjotbW96LXBsYWNlaG9sZGVyIHtcbiAgICAgICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIH1cbiAgICAmOmZvY3VzOi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7XG4gICAgICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICB9XG59XG5cblxuLmlubmVyLXRkZnMge1xuICAgIGhlaWdodDogMTAwdmg7XG4gICAgcGFkZGluZzogNSUgMi41JSAwJSAzNSU7XG5cbiAgICAmOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6IHVybCgvYnJvd3Nlci9pbWcvYXJ3LWRvdC1ncmF5LnN2Zyk7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIGxlZnQ6IDAlO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHdpZHRoOiAzMCU7XG5cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKC1tcy1oaWdoLWNvbnRyYXN0OiBhY3RpdmUpLCAoLW1zLWhpZ2gtY29udHJhc3Q6IG5vbmUpIHtcbiAgICAgICAgICAgIG1hc2s6IG5vbmU7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRtZWRpdW0tZ3JheSwgMCk7XG4gICAgICAgICAgICBjb250ZW50OiB1cmwoL2Jyb3dzZXIvaW1nL2Fydy1kb3QtdHJhbnMuc3ZnKTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj0wZW1cIiwgXCI8cGhhYmxldFwiKSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj1waGFibGV0XCIsIFwiPDQ3LjUwZW1cIikge1xuICAgICAgICAgICAgd2lkdGg6IDE1JTtcbiAgICAgICAgfVxuICAgICAgICBAaW5jbHVkZSBtZWRpYShcIj49MTUwMHB4XCIpIHtcbiAgICAgICAgICAgIHdpZHRoOiAyMCU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYShcIj49MGVtXCIsIFwiPHBoYWJsZXRcIikge1xuICAgICAgcGFkZGluZzogNSUgMCAwO1xuICAgIH1cbiAgICBAaW5jbHVkZSBtZWRpYShcIj49cGhhYmxldFwiLCBcIjw0Ny41MGVtXCIpIHtcbiAgICAgIHBhZGRpbmc6IDUlIDUlIDAgMjAlO1xuICAgIH1cbiAgICBAaW5jbHVkZSBtZWRpYShcIj49MTUwMHB4XCIpIHtcbiAgICAgICAgbWF4LXdpZHRoOiAxMzYwcHg7XG4gICAgICAgIHBhZGRpbmc6IDUlIDIuNSUgMCUgMjUlOyBcbiAgICB9XG4gICAgXG59XG4gICAgLmgxLXRkZnMge1xuICAgICAgICBjb2xvcjogJGRhcmstZ3JheTtcbiAgICAgICAgZm9udC1mYW1pbHk6ICRiYXNlLWZvbnQtZmFtaWx5O1xuICAgICAgICBmb250LXNpemU6IDEuMzc1cmVtO1xuICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAuNWVtO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcblxuICAgICAgICBAaW5jbHVkZSBtZWRpYShcIj49MGVtXCIsIFwiPHBoYWJsZXRcIikge1xuICAgICAgICAgICAgcGFkZGluZzogMCAuNWVtO1xuICAgICAgICB9XG4gICAgfVxuICAgICAgICAuY29udGFpbi10ZGZzLW5hbWUge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogJGJhc2Utd2hpdGU7XG4gICAgICAgICAgICBib3JkZXI6MXB4IHNvbGlkICRsaWdodGVzdC1ncmF5O1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogLjNlbTtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IGluc2V0IDAgNXB4IDEwcHggcmdiYSgkYmFzZS1ibGFjaywgLjA1KTtcbiAgICAgICAgICAgIGNvbG9yOiAkYmx1ZTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjYyNXJlbTtcbiAgICAgICAgICAgIG1hcmdpbjogLjVlbSAwO1xuICAgICAgICAgICAgcGFkZGluZzogLjM1ZW0gLjVlbSAuMzVlbSA1MHB4O1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICAgICBzdHJvbmcge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkbGlnaHQtZ3JheTtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IHVybCgvYnJvd3Nlci9pbWcvZmF2ZS1vdXRsaW5lLWdyYXkuc3ZnKTtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAvLyBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRtZWRpdW0tZ3JheSwgLjQpO1xuICAgICAgICAgICAgICAgIC8vIC13ZWJraXQtbWFzazogdXJsKC9icm93c2VyL2ltZy9mYXZlLW91dGxpbmUuc3ZnKSBuby1yZXBlYXQ7XG4gICAgICAgICAgICAgICAgLy8gbWFzazogdXJsKC9icm93c2VyL2ltZy9mYXZlLW91dGxpbmUuc3ZnKSBuby1yZXBlYXQ7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAyNXB4O1xuICAgICAgICAgICAgICAgIGxlZnQ6IDE1cHg7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAyNXB4O1xuXG4gICAgICAgICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKC1tcy1oaWdoLWNvbnRyYXN0OiBhY3RpdmUpLCAoLW1zLWhpZ2gtY29udHJhc3Q6IG5vbmUpIHtcbiAgICAgICAgICAgICAgICAgICAgbWFzazogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkbWVkaXVtLWdyYXksIDApO1xuICAgICAgICAgICAgICAgICAgICBjb250ZW50OiB1cmwoL2Jyb3dzZXIvaW1nL2ZhdmUtb3V0bGluZS5zdmcpO1xuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAuNDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtZWRpYShcIj49MGVtXCIsIFwiPHBoYWJsZXRcIikge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PTBlbVwiLCBcIjxwaGFibGV0XCIpIHtcbiAgICAgICAgICAgICAgICBvdmVyZmxvdy14OiBzY3JvbGw7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogLjM1ZW0gLjVlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIC5jb250YWluLXR4dCB7XG4gICAgICAgIGNvbG9yOiAkbGlnaHQtZ3JheTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMS41ZW07XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PTBlbVwiLCBcIjxwaGFibGV0XCIpIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IC4zNWVtIC43NWVtO1xuICAgICAgICB9XG4gICAgfVxuICAgICAgICAudHh0LW9yaWctcHJpY2Uge1xuICAgICAgICAgICAgY29sb3I6ICRkYXJrLWdyYXk7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuMzVyZW07XG4gICAgICAgIH1cbiAgICAgICAgLnR4dC1zYXZlLW5vdyB7XG4gICAgICAgICAgICBjb2xvcjogJHJlZDtcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkYmFzZS1mb250LXRoaW47XG4gICAgICAgICAgICBmb250LXNpemU6IDEuMTI1ZW07XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBtZWRpYShcIj49MGVtXCIsIFwiPHBoYWJsZXRcIikge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICB9XG4uY29udGFpbi10ZGZzLWN0YSB7XG4gICAgYW5pbWF0aW9uOiBmYWRlSW5VcCAzMDBtcyBlYXNlLWluLW91dDtcbiAgICAmLm5nLWhpZGUge1xuICAgICAgICBkaXNwbGF5Om5vbmU7Ly8gQGluY2x1ZGUgYW5pbWF0aW9uKGZhZGVPdXREb3duIDMwMG1zIGVhc2UtaW4tb3V0KTtcbiAgICB9XG59XG4gICAgLnRkZnMtY3RhIHtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgYWxpZ24tc2VsZjogc3RyZXRjaDtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDMuNWVtO1xuXG4gICAgICAgIC5idG4tYWRkLWNhcnQsXG4gICAgICAgIC5idG4tbWFrZS1vZmZlciB7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuMzc1cmVtO1xuICAgICAgICAgICAgbWFyZ2luOi4yNWVtIDA7XG4gICAgICAgICAgICAvLyBwYWRkaW5nOiAuMjVlbSAxLjVlbTtcblxuICAgICAgICAgICAgXG4gICAgICAgICAgICBAaW5jbHVkZSBtZWRpYShcIj49MGVtXCIsIFwiPDQ3LjVlbVwiKSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBcbiAgICAgICAgfVxuICAgICAgICAudHh0LW9yIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDFlbTtcblxuICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PTBlbVwiLCBcIjw0Ny41ZW1cIikge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtZWRpYShcIj49MGVtXCIsIFwiPDQ3LjVlbVwiKSB7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgICAgcGFkZGluZzogMCAyJTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAudHh0LWNhbGwtdXMge1xuICAgICAgICBmb250LWZhbWlseTogJGJhc2UtZm9udC10aGluO1xuICAgICAgICBmb250LXNpemU6IDEuNzUwcmVtO1xuICAgICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgICBsaW5lLWhlaWdodDogMS41ZW07XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEuNWVtO1xuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj0wZW1cIiwgXCI8cGhhYmxldFwiKSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAuNWVtO1xuICAgICAgICB9XG4gICAgfVxuICAgICAgICBcbiAgICAgICAgLmNvbnRhaW4tbmFtZSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKCRtZWRpdW0tZ3JheSwgLjEyKTtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IC4zZW07XG4gICAgICAgICAgICBwYWRkaW5nOiAuMjVlbTtcbiAgICAgICAgfVxuXG4gICAgLmNvbnRhaW4tdGRmcy1vZmZlciB7XG4gICAgICAgIGFuaW1hdGlvbjogZmFkZUluRG93biAzMDBtcyBlYXNlLWluLW91dDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICYubmctaGlkZSB7XG4gICAgICAgICAgICBhbmltYXRpb246IGZhZGVPdXRVcCAzMDBtcyBlYXNlLWluLW91dDtcbiAgICAgICAgfVxuICAgICAgICAuY29udGFpbi1vZmZlciB7XG4gICAgICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgICAgICAgei1pbmRleDogMjtcbiAgICAgICAgfVxuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBib3gtc2hhZG93OiBpbnNldCAwIDVweCA3cHggLTVweCByZ2JhKCRiYXNlLWJsYWNrLCAuMjUpO1xuICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIGhlaWdodDogNXB4O1xuICAgICAgICAgICAgbGVmdDogLTIlO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgd2lkdGg6IDEwNCU7XG4gICAgICAgICAgICB6LWluZGV4OiAzO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBtZWRpYShcIj49MGVtXCIsIFwiPHBoYWJsZXRcIikge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgLmlubmVyLXRkZnMgJiB7XG4gICAgICAgICAgICAgICAgYm94LXNoYWRvdzogMCAyMHB4IDI1cHggcmdiYSgkYmFzZS1ibGFjaywgLjM1KTtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMDBweDtcbiAgICAgICAgICAgICAgICBib3R0b206IDJweDtcbiAgICAgICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDUwcHg7XG4gICAgICAgICAgICAgICAgbGVmdDogMCU7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuY29udGFpbi10ZGZzLW9mZmVyQ29uZmlybSB7XG4gICAgICAgIGFuaW1hdGlvbjogZmFkZUluVXAgMzAwbXMgZWFzZS1pbi1vdXQ7XG4gICAgfVxuICAgIFxuICAgIC50ZGZzLW9mZmVyVmFsdWUge1xuICAgICAgICBjb2xvcjogc2hhZGUoJGdyZWVuLCAxMCUpO1xuICAgIH1cblxuICAgIC5jb250YWluLXRkZnMtb2ZmZXItY3RhIHtcbiAgICAgICAgZmxleC13cmFwOiB3cmFwOyAgLyogT0xEIC0gaU9TIDYtLCBTYWZhcmkgMy4xLTYsIEJCNyAqL1xuICAgICAgICBkaXNwbGF5OiBmbGV4OyAgICAgICAgIC8qIE5FVywgU3BlYyAtIEZpcmVmb3gsIENocm9tZSwgT3BlcmEgKi9cbiAgICAgICAgYm94LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICAgICAgXG4gICAgfVxuXG4gICAgICAgIC50ZGZzLXBob25lLWZvcm0ge1xuICAgICAgICAgICAgY29sb3I6ICRiYXNlLXdoaXRlO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjM3NXJlbTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG5cbiAgICAgICAgICAgIC5jb250YWluLXRkZnMtb2ZmZXItY3RhICYge1xuICAgICAgICAgICAgICAgIGZsZXg6IDAgMSA1MCU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkYmFzZS13aGl0ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG5cdC50ZGZzLWRvbWFpbi1uYW1lIHtcblx0XHRmb250LXNpemU6IDEuOXJlbTtcblx0XHRvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj0wZW1cIiwgXCI8cGhhYmxldFwiKSB7XG4gICAgICAgICAgICAmLnNtYWxsIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuNHJlbTtcbiAgICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgXG4gICAgICAgICAgICAmLnNtYWxsZXN0IHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuMXJlbTtcbiAgICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgXG4gICAgICAgICAgICAmLnRpbnkge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cdH1cblx0XG5cdFxuXHRcdFxuICAgIC5jb250YWluLWxvZ28tdGRmcyB7XG4gICAgICAgIGNvbG9yOiAkZGFyay1ncmF5O1xuICAgICAgICBtYXJnaW4tdG9wOiAxLjVlbTtcbiAgICAgICAgXG4gICAgICAgIC5mb290LWxvZ28tdGRmcyB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIG1heC1oZWlnaHQ6IDczcHg7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDIwMHB4O1xuICAgICAgICB9XG4gICAgICAgICAgICAubG9nby1hcncge1xuICAgICAgICAgICAgICAgIGZpbGw6ICRvcmFuZ2U7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAubG9nby1sZXR0ZXIge1xuICAgICAgICAgICAgICAgIGZpbGw6ICRkYXJrLWdyYXk7XG4gICAgICAgICAgICB9XG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj0wZW1cIiwgXCI8cGhhYmxldFwiKSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAwIDIlO1xuICAgICAgICB9XG4gICAgfVxuICAgIC50eHQtY29weXJpZ2h0IHtcbiAgICAgICAgZm9udC1zaXplOiAwLjgxM3JlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICB9XG4iLCJAY2hhcnNldCAnVVRGLTgnO1xuXG4vLyAgICAgXyAgICAgICAgICAgIF8gICAgICAgICAgIF8gICAgICAgICAgICAgICAgICAgICAgICAgICBfIF9cbi8vICAgIChfKSAgICAgICAgICB8IHwgICAgICAgICB8IHwgICAgICAgICAgICAgICAgICAgICAgICAgfCAoXylcbi8vICAgICBfIF8gX18gICBfX198IHxfICAgXyAgX198IHwgX19fICAgXyBfXyBfX18gICBfX18gIF9ffCB8XyAgX18gX1xuLy8gICAgfCB8ICdfIFxcIC8gX198IHwgfCB8IHwvIF9gIHwvIF8gXFwgfCAnXyBgIF8gXFwgLyBfIFxcLyBfYCB8IHwvIF9gIHxcbi8vICAgIHwgfCB8IHwgfCAoX198IHwgfF98IHwgKF98IHwgIF9fLyB8IHwgfCB8IHwgfCAgX18vIChffCB8IHwgKF98IHxcbi8vICAgIHxffF98IHxffFxcX19ffF98XFxfXyxffFxcX18sX3xcXF9fX3wgfF98IHxffCB8X3xcXF9fX3xcXF9fLF98X3xcXF9fLF98XG4vL1xuLy8gICAgICBTaW1wbGUsIGVsZWdhbnQgYW5kIG1haW50YWluYWJsZSBtZWRpYSBxdWVyaWVzIGluIFNhc3Ncbi8vICAgICAgICAgICAgICAgICAgICAgICAgdjEuNC4yXG4vL1xuLy8gICAgICAgICAgICAgICAgaHR0cDovL2luY2x1ZGUtbWVkaWEuY29tXG4vL1xuLy8gICAgICAgICBBdXRob3JzOiBFZHVhcmRvIEJvdWNhcyAoQGVkdWFyZG9ib3VjYXMpXG4vLyAgICAgICAgICAgICAgICAgIEh1Z28gR2lyYXVkZWwgKEBodWdvZ2lyYXVkZWwpXG4vLzY1MlxuLy8gICAgICBUaGlzIHByb2plY3QgaXMgbGljZW5zZWQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBNSVQgbGljZW5zZVxuXG5cbi8vLy9cbi8vLyBpbmNsdWRlLW1lZGlhIGxpYnJhcnkgcHVibGljIGNvbmZpZ3VyYXRpb25cbi8vLyBAYXV0aG9yIEVkdWFyZG8gQm91Y2FzXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLy9cblxuXG4vLy9cbi8vLyBDcmVhdGVzIGEgbGlzdCBvZiBnbG9iYWwgYnJlYWtwb2ludHNcbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBDcmVhdGVzIGEgc2luZ2xlIGJyZWFrcG9pbnQgd2l0aCB0aGUgbGFiZWwgYHBob25lYFxuLy8vICAkYnJlYWtwb2ludHM6ICgncGhvbmUnOiAzMjBweCk7XG4vLy9cbi8vLyAnbW9iaWxlJyBpcyBwb3J0cmFpdCB3aWR0aFxuJGJyZWFrcG9pbnRzOiAoIFxuICAnbW9iaWxlLXNtJzogMjBlbSwgLy8zMjBweFxuICAnbW9iaWxlLW1lZCc6IDIzLjQzOGVtLCAvLyAzOTBweFxuICAnbW9iaWxlLWxnJzogMjUuODc1ZW0sIC8vNDE0cHhcbiAgJ3BoYWJsZXQnOiAzNy41ZW0sIC8vNjAwcHhcbiAgJ3RhYmxldCc6IDQ4ZW0sIC8vNzY4cHhcbiAgJ2Rlc2t0b3AnOiA2NGVtLCAvLzEwMjRcbiAgJ2Rlc2t0b3AtbGcnOiA3NWVtLCAvLzEyMDBcbikgIWRlZmF1bHQ7XG5cblxuLy8vXG4vLy8gQ3JlYXRlcyBhIGxpc3Qgb2Ygc3RhdGljIGV4cHJlc3Npb25zIG9yIG1lZGlhIHR5cGVzXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gQ3JlYXRlcyBhIHNpbmdsZSBtZWRpYSB0eXBlIChzY3JlZW4pXG4vLy8gICRtZWRpYS1leHByZXNzaW9uczogKCdzY3JlZW4nOiAnc2NyZWVuJyk7XG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gQ3JlYXRlcyBhIHN0YXRpYyBleHByZXNzaW9uIHdpdGggbG9naWNhbCBkaXNqdW5jdGlvbiAoT1Igb3BlcmF0b3IpXG4vLy8gICRtZWRpYS1leHByZXNzaW9uczogKFxuLy8vICAgICdyZXRpbmEyeCc6ICcoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAyKSwgKG1pbi1yZXNvbHV0aW9uOiAxOTJkcGkpJ1xuLy8vICApO1xuLy8vXG4kbWVkaWEtZXhwcmVzc2lvbnM6IChcbiAgJ3NjcmVlbic6ICdzY3JlZW4nLFxuICAncHJpbnQnOiAncHJpbnQnLFxuICAnaGFuZGhlbGQnOiAnaGFuZGhlbGQnLFxuICAnbGFuZHNjYXBlJzogJyhvcmllbnRhdGlvbjogbGFuZHNjYXBlKScsXG4gICdwb3J0cmFpdCc6ICcob3JpZW50YXRpb246IHBvcnRyYWl0KScsXG4gICdyZXRpbmEyeCc6ICcoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAyKSwgKG1pbi1yZXNvbHV0aW9uOiAxOTJkcGkpJyxcbiAgJ3JldGluYTN4JzogJygtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDMpLCAobWluLXJlc29sdXRpb246IDM1MGRwaSknXG4pICFkZWZhdWx0O1xuXG5cbi8vL1xuLy8vIERlZmluZXMgYSBudW1iZXIgdG8gYmUgYWRkZWQgb3Igc3VidHJhY3RlZCBmcm9tIGVhY2ggdW5pdCB3aGVuIGRlY2xhcmluZyBicmVha3BvaW50cyB3aXRoIGV4Y2x1c2l2ZSBpbnRlcnZhbHNcbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBJbnRlcnZhbCBmb3IgcGl4ZWxzIGlzIGRlZmluZWQgYXMgYDFgIGJ5IGRlZmF1bHRcbi8vLyAgQGluY2x1ZGUgbWVkaWEoJz4xMjhweCcpIHt9XG4vLy9cbi8vLyAgLyogR2VuZXJhdGVzOiAqL1xuLy8vICBAbWVkaWEgKG1pbi13aWR0aDogMTI5cHgpIHt9XG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gSW50ZXJ2YWwgZm9yIGVtcyBpcyBkZWZpbmVkIGFzIGAwLjAxYCBieSBkZWZhdWx0XG4vLy8gIEBpbmNsdWRlIG1lZGlhKCc+MjBlbScpIHt9XG4vLy9cbi8vLyAgLyogR2VuZXJhdGVzOiAqL1xuLy8vICBAbWVkaWEgKG1pbi13aWR0aDogMjAuMDFlbSkge31cbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBJbnRlcnZhbCBmb3IgcmVtcyBpcyBkZWZpbmVkIGFzIGAwLjFgIGJ5IGRlZmF1bHQsIHRvIGJlIHVzZWQgd2l0aCBgZm9udC1zaXplOiA2Mi41JTtgXG4vLy8gIEBpbmNsdWRlIG1lZGlhKCc+Mi4wcmVtJykge31cbi8vL1xuLy8vICAvKiBHZW5lcmF0ZXM6ICovXG4vLy8gIEBtZWRpYSAobWluLXdpZHRoOiAyLjFyZW0pIHt9XG4vLy9cbiR1bml0LWludGVydmFsczogKFxuICAncHgnOiAxLFxuICAnZW0nOiAwLjAxLFxuICAncmVtJzogMC4xXG4pICFkZWZhdWx0O1xuXG4vLy9cbi8vLyBEZWZpbmVzIHdoZXRoZXIgc3VwcG9ydCBmb3IgbWVkaWEgcXVlcmllcyBpcyBhdmFpbGFibGUsIHVzZWZ1bCBmb3IgY3JlYXRpbmcgc2VwYXJhdGUgc3R5bGVzaGVldHNcbi8vLyBmb3IgYnJvd3NlcnMgdGhhdCBkb24ndCBzdXBwb3J0IG1lZGlhIHF1ZXJpZXMuXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gRGlzYWJsZXMgc3VwcG9ydCBmb3IgbWVkaWEgcXVlcmllc1xuLy8vICAkaW0tbWVkaWEtc3VwcG9ydDogZmFsc2U7XG4vLy8gIEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcpIHtcbi8vLyAgICAuZm9vIHtcbi8vLyAgICAgIGNvbG9yOiB0b21hdG87XG4vLy8gICAgfVxuLy8vICB9XG4vLy9cbi8vLyAgLyogR2VuZXJhdGVzOiAqL1xuLy8vICAuZm9vIHtcbi8vLyAgICBjb2xvcjogdG9tYXRvO1xuLy8vICB9XG4vLy9cbiRpbS1tZWRpYS1zdXBwb3J0OiB0cnVlICFkZWZhdWx0O1xuXG4vLy9cbi8vLyBTZWxlY3RzIHdoaWNoIGJyZWFrcG9pbnQgdG8gZW11bGF0ZSB3aGVuIHN1cHBvcnQgZm9yIG1lZGlhIHF1ZXJpZXMgaXMgZGlzYWJsZWQuIE1lZGlhIHF1ZXJpZXMgdGhhdCBzdGFydCBhdCBvclxuLy8vIGludGVyY2VwdCB0aGUgYnJlYWtwb2ludCB3aWxsIGJlIGRpc3BsYXllZCwgYW55IG90aGVycyB3aWxsIGJlIGlnbm9yZWQuXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gVGhpcyBtZWRpYSBxdWVyeSB3aWxsIHNob3cgYmVjYXVzZSBpdCBpbnRlcmNlcHRzIHRoZSBzdGF0aWMgYnJlYWtwb2ludFxuLy8vICAkaW0tbWVkaWEtc3VwcG9ydDogZmFsc2U7XG4vLy8gICRpbS1uby1tZWRpYS1icmVha3BvaW50OiAnZGVza3RvcCc7XG4vLy8gIEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcpIHtcbi8vLyAgICAuZm9vIHtcbi8vLyAgICAgIGNvbG9yOiB0b21hdG87XG4vLy8gICAgfVxuLy8vICB9XG4vLy9cbi8vLyAgLyogR2VuZXJhdGVzOiAqL1xuLy8vICAuZm9vIHtcbi8vLyAgICBjb2xvcjogdG9tYXRvO1xuLy8vICB9XG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gVGhpcyBtZWRpYSBxdWVyeSB3aWxsIE5PVCBzaG93IGJlY2F1c2UgaXQgZG9lcyBub3QgaW50ZXJjZXB0IHRoZSBkZXNrdG9wIGJyZWFrcG9pbnRcbi8vLyAgJGltLW1lZGlhLXN1cHBvcnQ6IGZhbHNlO1xuLy8vICAkaW0tbm8tbWVkaWEtYnJlYWtwb2ludDogJ3RhYmxldCc7XG4vLy8gIEBpbmNsdWRlIG1lZGlhKCc+PWRlc2t0b3AnKSB7XG4vLy8gICAgLmZvbyB7XG4vLy8gICAgICBjb2xvcjogdG9tYXRvO1xuLy8vICAgIH1cbi8vLyAgfVxuLy8vXG4vLy8gIC8qIE5vIG91dHB1dCAqL1xuLy8vXG4kaW0tbm8tbWVkaWEtYnJlYWtwb2ludDogJ2Rlc2t0b3AnICFkZWZhdWx0O1xuXG4vLy9cbi8vLyBTZWxlY3RzIHdoaWNoIG1lZGlhIGV4cHJlc3Npb25zIGFyZSBhbGxvd2VkIGluIGFuIGV4cHJlc3Npb24gZm9yIGl0IHRvIGJlIHVzZWQgd2hlbiBtZWRpYSBxdWVyaWVzXG4vLy8gYXJlIG5vdCBzdXBwb3J0ZWQuXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gVGhpcyBtZWRpYSBxdWVyeSB3aWxsIHNob3cgYmVjYXVzZSBpdCBpbnRlcmNlcHRzIHRoZSBzdGF0aWMgYnJlYWtwb2ludCBhbmQgY29udGFpbnMgb25seSBhY2NlcHRlZCBtZWRpYSBleHByZXNzaW9uc1xuLy8vICAkaW0tbWVkaWEtc3VwcG9ydDogZmFsc2U7XG4vLy8gICRpbS1uby1tZWRpYS1icmVha3BvaW50OiAnZGVza3RvcCc7XG4vLy8gICRpbS1uby1tZWRpYS1leHByZXNzaW9uczogKCdzY3JlZW4nKTtcbi8vLyAgQGluY2x1ZGUgbWVkaWEoJz49dGFibGV0JywgJ3NjcmVlbicpIHtcbi8vLyAgICAuZm9vIHtcbi8vLyAgICAgIGNvbG9yOiB0b21hdG87XG4vLy8gICAgfVxuLy8vICB9XG4vLy9cbi8vLyAgIC8qIEdlbmVyYXRlczogKi9cbi8vLyAgIC5mb28ge1xuLy8vICAgICBjb2xvcjogdG9tYXRvO1xuLy8vICAgfVxuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIFRoaXMgbWVkaWEgcXVlcnkgd2lsbCBOT1Qgc2hvdyBiZWNhdXNlIGl0IGludGVyY2VwdHMgdGhlIHN0YXRpYyBicmVha3BvaW50IGJ1dCBjb250YWlucyBhIG1lZGlhIGV4cHJlc3Npb24gdGhhdCBpcyBub3QgYWNjZXB0ZWRcbi8vLyAgJGltLW1lZGlhLXN1cHBvcnQ6IGZhbHNlO1xuLy8vICAkaW0tbm8tbWVkaWEtYnJlYWtwb2ludDogJ2Rlc2t0b3AnO1xuLy8vICAkaW0tbm8tbWVkaWEtZXhwcmVzc2lvbnM6ICgnc2NyZWVuJyk7XG4vLy8gIEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcsICdyZXRpbmEyeCcpIHtcbi8vLyAgICAuZm9vIHtcbi8vLyAgICAgIGNvbG9yOiB0b21hdG87XG4vLy8gICAgfVxuLy8vICB9XG4vLy9cbi8vLyAgLyogTm8gb3V0cHV0ICovXG4vLy9cbiRpbS1uby1tZWRpYS1leHByZXNzaW9uczogKCdzY3JlZW4nLCAncG9ydHJhaXQnLCAnbGFuZHNjYXBlJykgIWRlZmF1bHQ7XG5cbi8vLy9cbi8vLyBDcm9zcy1lbmdpbmUgbG9nZ2luZyBlbmdpbmVcbi8vLyBAYXV0aG9yIEh1Z28gR2lyYXVkZWxcbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vLy9cblxuXG4vLy9cbi8vLyBMb2cgYSBtZXNzYWdlIGVpdGhlciB3aXRoIGBAZXJyb3JgIGlmIHN1cHBvcnRlZFxuLy8vIGVsc2Ugd2l0aCBgQHdhcm5gLCB1c2luZyBgZmVhdHVyZS1leGlzdHMoJ2F0LWVycm9yJylgXG4vLy8gdG8gZGV0ZWN0IHN1cHBvcnQuXG4vLy9cbi8vLyBAcGFyYW0ge1N0cmluZ30gJG1lc3NhZ2UgLSBNZXNzYWdlIHRvIGxvZ1xuLy8vXG5AZnVuY3Rpb24gbG9nKCRtZXNzYWdlKSB7XG4gIEBpZiBmZWF0dXJlLWV4aXN0cygnYXQtZXJyb3InKSB7XG4gICAgQGVycm9yICRtZXNzYWdlO1xuICB9IEBlbHNlIHtcbiAgICBAd2FybiAkbWVzc2FnZTtcbiAgICAkXzogbm9vcCgpO1xuICB9XG5cbiAgQHJldHVybiAkbWVzc2FnZTtcbn1cblxuXG4vLy9cbi8vLyBXcmFwcGVyIG1peGluIGZvciB0aGUgbG9nIGZ1bmN0aW9uIHNvIGl0IGNhbiBiZSB1c2VkIHdpdGggYSBtb3JlIGZyaWVuZGx5XG4vLy8gQVBJIHRoYW4gYEBpZiBsb2coJy4uJykge31gIG9yIGAkXzogbG9nKCcuLicpYC4gQmFzaWNhbGx5LCB1c2UgdGhlIGZ1bmN0aW9uXG4vLy8gd2l0aGluIGZ1bmN0aW9ucyBiZWNhdXNlIGl0IGlzIG5vdCBwb3NzaWJsZSB0byBpbmNsdWRlIGEgbWl4aW4gaW4gYSBmdW5jdGlvblxuLy8vIGFuZCB1c2UgdGhlIG1peGluIGV2ZXJ5d2hlcmUgZWxzZSBiZWNhdXNlIGl0J3MgbXVjaCBtb3JlIGVsZWdhbnQuXG4vLy9cbi8vLyBAcGFyYW0ge1N0cmluZ30gJG1lc3NhZ2UgLSBNZXNzYWdlIHRvIGxvZ1xuLy8vXG5AbWl4aW4gbG9nKCRtZXNzYWdlKSB7XG4gIEBpZiBsb2coJG1lc3NhZ2UpIHt9XG59XG5cblxuLy8vXG4vLy8gRnVuY3Rpb24gd2l0aCBubyBgQHJldHVybmAgY2FsbGVkIG5leHQgdG8gYEB3YXJuYCBpbiBTYXNzIDMuM1xuLy8vIHRvIHRyaWdnZXIgYSBjb21waWxpbmcgZXJyb3IgYW5kIHN0b3AgdGhlIHByb2Nlc3MuXG4vLy9cbkBmdW5jdGlvbiBub29wKCkge31cblxuLy8vXG4vLy8gRGV0ZXJtaW5lcyB3aGV0aGVyIGEgbGlzdCBvZiBjb25kaXRpb25zIGlzIGludGVyY2VwdGVkIGJ5IHRoZSBzdGF0aWMgYnJlYWtwb2ludC5cbi8vL1xuLy8vIEBwYXJhbSB7QXJnbGlzdH0gICAkY29uZGl0aW9ucyAgLSBNZWRpYSBxdWVyeSBjb25kaXRpb25zXG4vLy9cbi8vLyBAcmV0dXJuIHtCb29sZWFufSAtIFJldHVybnMgdHJ1ZSBpZiB0aGUgY29uZGl0aW9ucyBhcmUgaW50ZXJjZXB0ZWQgYnkgdGhlIHN0YXRpYyBicmVha3BvaW50XG4vLy9cbkBmdW5jdGlvbiBpbS1pbnRlcmNlcHRzLXN0YXRpYy1icmVha3BvaW50KCRjb25kaXRpb25zLi4uKSB7XG4gICRuby1tZWRpYS1icmVha3BvaW50LXZhbHVlOiBtYXAtZ2V0KCRicmVha3BvaW50cywgJGltLW5vLW1lZGlhLWJyZWFrcG9pbnQpO1xuXG4gIEBpZiBub3QgJG5vLW1lZGlhLWJyZWFrcG9pbnQtdmFsdWUge1xuICAgIEBpZiBsb2coJ2AjeyRpbS1uby1tZWRpYS1icmVha3BvaW50fWAgaXMgbm90IGEgdmFsaWQgYnJlYWtwb2ludC4nKSB7fVxuICB9XG5cbiAgQGVhY2ggJGNvbmRpdGlvbiBpbiAkY29uZGl0aW9ucyB7XG4gICAgQGlmIG5vdCBtYXAtaGFzLWtleSgkbWVkaWEtZXhwcmVzc2lvbnMsICRjb25kaXRpb24pIHtcbiAgICAgICRvcGVyYXRvcjogZ2V0LWV4cHJlc3Npb24tb3BlcmF0b3IoJGNvbmRpdGlvbik7XG4gICAgICAkcHJlZml4OiBnZXQtZXhwcmVzc2lvbi1wcmVmaXgoJG9wZXJhdG9yKTtcbiAgICAgICR2YWx1ZTogZ2V0LWV4cHJlc3Npb24tdmFsdWUoJGNvbmRpdGlvbiwgJG9wZXJhdG9yKTtcblxuICAgICAgLy8gc2Nzcy1saW50OmRpc2FibGUgU3BhY2VBcm91bmRPcGVyYXRvclxuICAgICAgQGlmICgkcHJlZml4ID09ICdtYXgnIGFuZCAkdmFsdWUgPD0gJG5vLW1lZGlhLWJyZWFrcG9pbnQtdmFsdWUpIG9yXG4gICAgICAgICAgKCRwcmVmaXggPT0gJ21pbicgYW5kICR2YWx1ZSA+ICRuby1tZWRpYS1icmVha3BvaW50LXZhbHVlKSB7XG4gICAgICAgIEByZXR1cm4gZmFsc2U7XG4gICAgICB9XG4gICAgfSBAZWxzZSBpZiBub3QgaW5kZXgoJGltLW5vLW1lZGlhLWV4cHJlc3Npb25zLCAkY29uZGl0aW9uKSB7XG4gICAgICBAcmV0dXJuIGZhbHNlO1xuICAgIH1cbiAgfVxuXG4gIEByZXR1cm4gdHJ1ZTtcbn1cblxuLy8vL1xuLy8vIFBhcnNpbmcgZW5naW5lXG4vLy8gQGF1dGhvciBIdWdvIEdpcmF1ZGVsXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy8vXG5cblxuLy8vXG4vLy8gR2V0IG9wZXJhdG9yIG9mIGFuIGV4cHJlc3Npb25cbi8vL1xuLy8vIEBwYXJhbSB7U3RyaW5nfSAkZXhwcmVzc2lvbiAtIEV4cHJlc3Npb24gdG8gZXh0cmFjdCBvcGVyYXRvciBmcm9tXG4vLy9cbi8vLyBAcmV0dXJuIHtTdHJpbmd9IC0gQW55IG9mIGA+PWAsIGA+YCwgYDw9YCwgYDxgLCBg4omlYCwgYOKJpGBcbi8vL1xuQGZ1bmN0aW9uIGdldC1leHByZXNzaW9uLW9wZXJhdG9yKCRleHByZXNzaW9uKSB7XG4gIEBlYWNoICRvcGVyYXRvciBpbiAoJz49JywgJz4nLCAnPD0nLCAnPCcsICfiiaUnLCAn4omkJykge1xuICAgIEBpZiBzdHItaW5kZXgoJGV4cHJlc3Npb24sICRvcGVyYXRvcikge1xuICAgICAgQHJldHVybiAkb3BlcmF0b3I7XG4gICAgfVxuICB9XG5cbiAgLy8gSXQgaXMgbm90IHBvc3NpYmxlIHRvIGluY2x1ZGUgYSBtaXhpbiBpbnNpZGUgYSBmdW5jdGlvbiwgc28gd2UgaGF2ZSB0b1xuICAvLyByZWx5IG9uIHRoZSBgbG9nKC4uKWAgZnVuY3Rpb24gcmF0aGVyIHRoYW4gdGhlIGBsb2coLi4pYCBtaXhpbi4gQmVjYXVzZVxuICAvLyBmdW5jdGlvbnMgY2Fubm90IGJlIGNhbGxlZCBhbnl3aGVyZSBpbiBTYXNzLCB3ZSBuZWVkIHRvIGhhY2sgdGhlIGNhbGwgaW5cbiAgLy8gYSBkdW1teSB2YXJpYWJsZSwgc3VjaCBhcyBgJF9gLiBJZiBhbnlib2R5IGV2ZXIgcmFpc2UgYSBzY29waW5nIGlzc3VlIHdpdGhcbiAgLy8gU2FzcyAzLjMsIGNoYW5nZSB0aGlzIGxpbmUgaW4gYEBpZiBsb2coLi4pIHt9YCBpbnN0ZWFkLlxuICAkXzogbG9nKCdObyBvcGVyYXRvciBmb3VuZCBpbiBgI3skZXhwcmVzc2lvbn1gLicpO1xufVxuXG5cbi8vL1xuLy8vIEdldCBkaW1lbnNpb24gb2YgYW4gZXhwcmVzc2lvbiwgYmFzZWQgb24gYSBmb3VuZCBvcGVyYXRvclxuLy8vXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRleHByZXNzaW9uIC0gRXhwcmVzc2lvbiB0byBleHRyYWN0IGRpbWVuc2lvbiBmcm9tXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRvcGVyYXRvciAtIE9wZXJhdG9yIGZyb20gYCRleHByZXNzaW9uYFxuLy8vXG4vLy8gQHJldHVybiB7U3RyaW5nfSAtIGB3aWR0aGAgb3IgYGhlaWdodGAgKG9yIHBvdGVudGlhbGx5IGFueXRoaW5nIGVsc2UpXG4vLy9cbkBmdW5jdGlvbiBnZXQtZXhwcmVzc2lvbi1kaW1lbnNpb24oJGV4cHJlc3Npb24sICRvcGVyYXRvcikge1xuICAkb3BlcmF0b3ItaW5kZXg6IHN0ci1pbmRleCgkZXhwcmVzc2lvbiwgJG9wZXJhdG9yKTtcbiAgJHBhcnNlZC1kaW1lbnNpb246IHN0ci1zbGljZSgkZXhwcmVzc2lvbiwgMCwgJG9wZXJhdG9yLWluZGV4IC0gMSk7XG4gICRkaW1lbnNpb246ICd3aWR0aCc7XG5cbiAgQGlmIHN0ci1sZW5ndGgoJHBhcnNlZC1kaW1lbnNpb24pID4gMCB7XG4gICAgJGRpbWVuc2lvbjogJHBhcnNlZC1kaW1lbnNpb247XG4gIH1cblxuICBAcmV0dXJuICRkaW1lbnNpb247XG59XG5cblxuLy8vXG4vLy8gR2V0IGRpbWVuc2lvbiBwcmVmaXggYmFzZWQgb24gYW4gb3BlcmF0b3Jcbi8vL1xuLy8vIEBwYXJhbSB7U3RyaW5nfSAkb3BlcmF0b3IgLSBPcGVyYXRvclxuLy8vXG4vLy8gQHJldHVybiB7U3RyaW5nfSAtIGBtaW5gIG9yIGBtYXhgXG4vLy9cbkBmdW5jdGlvbiBnZXQtZXhwcmVzc2lvbi1wcmVmaXgoJG9wZXJhdG9yKSB7XG4gIEByZXR1cm4gaWYoaW5kZXgoKCc8JywgJzw9JywgJ+KJpCcpLCAkb3BlcmF0b3IpLCAnbWF4JywgJ21pbicpO1xufVxuXG5cbi8vL1xuLy8vIEdldCB2YWx1ZSBvZiBhbiBleHByZXNzaW9uLCBiYXNlZCBvbiBhIGZvdW5kIG9wZXJhdG9yXG4vLy9cbi8vLyBAcGFyYW0ge1N0cmluZ30gJGV4cHJlc3Npb24gLSBFeHByZXNzaW9uIHRvIGV4dHJhY3QgdmFsdWUgZnJvbVxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkb3BlcmF0b3IgLSBPcGVyYXRvciBmcm9tIGAkZXhwcmVzc2lvbmBcbi8vL1xuLy8vIEByZXR1cm4ge051bWJlcn0gLSBBIG51bWVyaWMgdmFsdWVcbi8vL1xuQGZ1bmN0aW9uIGdldC1leHByZXNzaW9uLXZhbHVlKCRleHByZXNzaW9uLCAkb3BlcmF0b3IpIHtcbiAgJG9wZXJhdG9yLWluZGV4OiBzdHItaW5kZXgoJGV4cHJlc3Npb24sICRvcGVyYXRvcik7XG4gICR2YWx1ZTogc3RyLXNsaWNlKCRleHByZXNzaW9uLCAkb3BlcmF0b3ItaW5kZXggKyBzdHItbGVuZ3RoKCRvcGVyYXRvcikpO1xuXG4gIEBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsICR2YWx1ZSkge1xuICAgICR2YWx1ZTogbWFwLWdldCgkYnJlYWtwb2ludHMsICR2YWx1ZSk7XG4gIH0gQGVsc2Uge1xuICAgICR2YWx1ZTogdG8tbnVtYmVyKCR2YWx1ZSk7XG4gIH1cblxuICAkaW50ZXJ2YWw6IG1hcC1nZXQoJHVuaXQtaW50ZXJ2YWxzLCB1bml0KCR2YWx1ZSkpO1xuXG4gIEBpZiBub3QgJGludGVydmFsIHtcbiAgICAvLyBJdCBpcyBub3QgcG9zc2libGUgdG8gaW5jbHVkZSBhIG1peGluIGluc2lkZSBhIGZ1bmN0aW9uLCBzbyB3ZSBoYXZlIHRvXG4gICAgLy8gcmVseSBvbiB0aGUgYGxvZyguLilgIGZ1bmN0aW9uIHJhdGhlciB0aGFuIHRoZSBgbG9nKC4uKWAgbWl4aW4uIEJlY2F1c2VcbiAgICAvLyBmdW5jdGlvbnMgY2Fubm90IGJlIGNhbGxlZCBhbnl3aGVyZSBpbiBTYXNzLCB3ZSBuZWVkIHRvIGhhY2sgdGhlIGNhbGwgaW5cbiAgICAvLyBhIGR1bW15IHZhcmlhYmxlLCBzdWNoIGFzIGAkX2AuIElmIGFueWJvZHkgZXZlciByYWlzZSBhIHNjb3BpbmcgaXNzdWUgd2l0aFxuICAgIC8vIFNhc3MgMy4zLCBjaGFuZ2UgdGhpcyBsaW5lIGluIGBAaWYgbG9nKC4uKSB7fWAgaW5zdGVhZC5cbiAgICAkXzogbG9nKCdVbmtub3duIHVuaXQgYCN7dW5pdCgkdmFsdWUpfWAuJyk7XG4gIH1cblxuICBAaWYgJG9wZXJhdG9yID09ICc+JyB7XG4gICAgJHZhbHVlOiAkdmFsdWUgKyAkaW50ZXJ2YWw7XG4gIH0gQGVsc2UgaWYgJG9wZXJhdG9yID09ICc8JyB7XG4gICAgJHZhbHVlOiAkdmFsdWUgLSAkaW50ZXJ2YWw7XG4gIH1cblxuICBAcmV0dXJuICR2YWx1ZTtcbn1cblxuXG4vLy9cbi8vLyBQYXJzZSBhbiBleHByZXNzaW9uIHRvIHJldHVybiBhIHZhbGlkIG1lZGlhLXF1ZXJ5IGV4cHJlc3Npb25cbi8vL1xuLy8vIEBwYXJhbSB7U3RyaW5nfSAkZXhwcmVzc2lvbiAtIEV4cHJlc3Npb24gdG8gcGFyc2Vcbi8vL1xuLy8vIEByZXR1cm4ge1N0cmluZ30gLSBWYWxpZCBtZWRpYSBxdWVyeVxuLy8vXG5AZnVuY3Rpb24gcGFyc2UtZXhwcmVzc2lvbigkZXhwcmVzc2lvbikge1xuICAvLyBJZiBpdCBpcyBwYXJ0IG9mICRtZWRpYS1leHByZXNzaW9ucywgaXQgaGFzIG5vIG9wZXJhdG9yXG4gIC8vIHRoZW4gdGhlcmUgaXMgbm8gbmVlZCB0byBnbyBhbnkgZnVydGhlciwganVzdCByZXR1cm4gdGhlIHZhbHVlXG4gIEBpZiBtYXAtaGFzLWtleSgkbWVkaWEtZXhwcmVzc2lvbnMsICRleHByZXNzaW9uKSB7XG4gICAgQHJldHVybiBtYXAtZ2V0KCRtZWRpYS1leHByZXNzaW9ucywgJGV4cHJlc3Npb24pO1xuICB9XG5cbiAgJG9wZXJhdG9yOiBnZXQtZXhwcmVzc2lvbi1vcGVyYXRvcigkZXhwcmVzc2lvbik7XG4gICRkaW1lbnNpb246IGdldC1leHByZXNzaW9uLWRpbWVuc2lvbigkZXhwcmVzc2lvbiwgJG9wZXJhdG9yKTtcbiAgJHByZWZpeDogZ2V0LWV4cHJlc3Npb24tcHJlZml4KCRvcGVyYXRvcik7XG4gICR2YWx1ZTogZ2V0LWV4cHJlc3Npb24tdmFsdWUoJGV4cHJlc3Npb24sICRvcGVyYXRvcik7XG5cbiAgQHJldHVybiAnKCN7JHByZWZpeH0tI3skZGltZW5zaW9ufTogI3skdmFsdWV9KSc7XG59XG5cbi8vL1xuLy8vIFNsaWNlIGAkbGlzdGAgYmV0d2VlbiBgJHN0YXJ0YCBhbmQgYCRlbmRgIGluZGV4ZXNcbi8vL1xuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vXG4vLy8gQHBhcmFtIHtMaXN0fSAkbGlzdCAtIExpc3QgdG8gc2xpY2Vcbi8vLyBAcGFyYW0ge051bWJlcn0gJHN0YXJ0IFsxXSAtIFN0YXJ0IGluZGV4XG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRlbmQgW2xlbmd0aCgkbGlzdCldIC0gRW5kIGluZGV4XG4vLy9cbi8vLyBAcmV0dXJuIHtMaXN0fSBTbGljZWQgbGlzdFxuLy8vXG5AZnVuY3Rpb24gc2xpY2UoJGxpc3QsICRzdGFydDogMSwgJGVuZDogbGVuZ3RoKCRsaXN0KSkge1xuICBAaWYgbGVuZ3RoKCRsaXN0KSA8IDEgb3IgJHN0YXJ0ID4gJGVuZCB7XG4gICAgQHJldHVybiAoKTtcbiAgfVxuXG4gICRyZXN1bHQ6ICgpO1xuXG4gIEBmb3IgJGkgZnJvbSAkc3RhcnQgdGhyb3VnaCAkZW5kIHtcbiAgICAkcmVzdWx0OiBhcHBlbmQoJHJlc3VsdCwgbnRoKCRsaXN0LCAkaSkpO1xuICB9XG5cbiAgQHJldHVybiAkcmVzdWx0O1xufVxuXG4vLy8vXG4vLy8gU3RyaW5nIHRvIG51bWJlciBjb252ZXJ0ZXJcbi8vLyBAYXV0aG9yIEh1Z28gR2lyYXVkZWxcbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vLy9cblxuXG4vLy9cbi8vLyBDYXN0cyBhIHN0cmluZyBpbnRvIGEgbnVtYmVyXG4vLy9cbi8vLyBAcGFyYW0ge1N0cmluZyB8IE51bWJlcn0gJHZhbHVlIC0gVmFsdWUgdG8gYmUgcGFyc2VkXG4vLy9cbi8vLyBAcmV0dXJuIHtOdW1iZXJ9XG4vLy9cbkBmdW5jdGlvbiB0by1udW1iZXIoJHZhbHVlKSB7XG4gIEBpZiB0eXBlLW9mKCR2YWx1ZSkgPT0gJ251bWJlcicge1xuICAgIEByZXR1cm4gJHZhbHVlO1xuICB9IEBlbHNlIGlmIHR5cGUtb2YoJHZhbHVlKSAhPSAnc3RyaW5nJyB7XG4gICAgJF86IGxvZygnVmFsdWUgZm9yIGB0by1udW1iZXJgIHNob3VsZCBiZSBhIG51bWJlciBvciBhIHN0cmluZy4nKTtcbiAgfVxuXG4gICRyZXN1bHQ6IDA7XG4gICRkaWdpdHM6IDA7XG4gICRtaW51czogc3RyLXNsaWNlKCR2YWx1ZSwgMSwgMSkgPT0gJy0nO1xuICAkbnVtYmVyczogKCcwJzogMCwgJzEnOiAxLCAnMic6IDIsICczJzogMywgJzQnOiA0LCAnNSc6IDUsICc2JzogNiwgJzcnOiA3LCAnOCc6IDgsICc5JzogOSk7XG5cbiAgQGZvciAkaSBmcm9tIGlmKCRtaW51cywgMiwgMSkgdGhyb3VnaCBzdHItbGVuZ3RoKCR2YWx1ZSkge1xuICAgICRjaGFyYWN0ZXI6IHN0ci1zbGljZSgkdmFsdWUsICRpLCAkaSk7XG5cbiAgICBAaWYgbm90IChpbmRleChtYXAta2V5cygkbnVtYmVycyksICRjaGFyYWN0ZXIpIG9yICRjaGFyYWN0ZXIgPT0gJy4nKSB7XG4gICAgICBAcmV0dXJuIHRvLWxlbmd0aChpZigkbWludXMsIC0kcmVzdWx0LCAkcmVzdWx0KSwgc3RyLXNsaWNlKCR2YWx1ZSwgJGkpKVxuICAgIH1cblxuICAgIEBpZiAkY2hhcmFjdGVyID09ICcuJyB7XG4gICAgICAkZGlnaXRzOiAxO1xuICAgIH0gQGVsc2UgaWYgJGRpZ2l0cyA9PSAwIHtcbiAgICAgICRyZXN1bHQ6ICRyZXN1bHQgKiAxMCArIG1hcC1nZXQoJG51bWJlcnMsICRjaGFyYWN0ZXIpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgJGRpZ2l0czogJGRpZ2l0cyAqIDEwO1xuICAgICAgJHJlc3VsdDogJHJlc3VsdCArIG1hcC1nZXQoJG51bWJlcnMsICRjaGFyYWN0ZXIpIC8gJGRpZ2l0cztcbiAgICB9XG4gIH1cblxuICBAcmV0dXJuIGlmKCRtaW51cywgLSRyZXN1bHQsICRyZXN1bHQpOztcbn1cblxuXG4vLy9cbi8vLyBBZGQgYCR1bml0YCB0byBgJHZhbHVlYFxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR2YWx1ZSAtIFZhbHVlIHRvIGFkZCB1bml0IHRvXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICR1bml0IC0gU3RyaW5nIHJlcHJlc2VudGF0aW9uIG9mIHRoZSB1bml0XG4vLy9cbi8vLyBAcmV0dXJuIHtOdW1iZXJ9IC0gYCR2YWx1ZWAgZXhwcmVzc2VkIGluIGAkdW5pdGBcbi8vL1xuQGZ1bmN0aW9uIHRvLWxlbmd0aCgkdmFsdWUsICR1bml0KSB7XG4gICR1bml0czogKCdweCc6IDFweCwgJ2NtJzogMWNtLCAnbW0nOiAxbW0sICclJzogMSUsICdjaCc6IDFjaCwgJ3BjJzogMXBjLCAnaW4nOiAxaW4sICdlbSc6IDFlbSwgJ3JlbSc6IDFyZW0sICdwdCc6IDFwdCwgJ2V4JzogMWV4LCAndncnOiAxdncsICd2aCc6IDF2aCwgJ3ZtaW4nOiAxdm1pbiwgJ3ZtYXgnOiAxdm1heCk7XG5cbiAgQGlmIG5vdCBpbmRleChtYXAta2V5cygkdW5pdHMpLCAkdW5pdCkge1xuICAgICRfOiBsb2coJ0ludmFsaWQgdW5pdCBgI3skdW5pdH1gLicpO1xuICB9XG5cbiAgQHJldHVybiAkdmFsdWUgKiBtYXAtZ2V0KCR1bml0cywgJHVuaXQpO1xufVxuXG4vLy9cbi8vLyBUaGlzIG1peGluIGFpbXMgYXQgcmVkZWZpbmluZyB0aGUgY29uZmlndXJhdGlvbiBqdXN0IGZvciB0aGUgc2NvcGUgb2Zcbi8vLyB0aGUgY2FsbC4gSXQgaXMgaGVscGZ1bCB3aGVuIGhhdmluZyBhIGNvbXBvbmVudCBuZWVkaW5nIGFuIGV4dGVuZGVkXG4vLy8gY29uZmlndXJhdGlvbiBzdWNoIGFzIGN1c3RvbSBicmVha3BvaW50cyAocmVmZXJyZWQgdG8gYXMgdHdlYWtwb2ludHMpXG4vLy8gZm9yIGluc3RhbmNlLlxuLy8vXG4vLy8gQGF1dGhvciBIdWdvIEdpcmF1ZGVsXG4vLy9cbi8vLyBAcGFyYW0ge01hcH0gJHR3ZWFrcG9pbnRzIFsoKV0gLSBNYXAgb2YgdHdlYWtwb2ludHMgdG8gYmUgbWVyZ2VkIHdpdGggYCRicmVha3BvaW50c2Bcbi8vLyBAcGFyYW0ge01hcH0gJHR3ZWFrLW1lZGlhLWV4cHJlc3Npb25zIFsoKV0gLSBNYXAgb2YgdHdlYWtlZCBtZWRpYSBleHByZXNzaW9ucyB0byBiZSBtZXJnZWQgd2l0aCBgJG1lZGlhLWV4cHJlc3Npb25gXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gRXh0ZW5kIHRoZSBnbG9iYWwgYnJlYWtwb2ludHMgd2l0aCBhIHR3ZWFrcG9pbnRcbi8vLyAgQGluY2x1ZGUgbWVkaWEtY29udGV4dCgoJ2N1c3RvbSc6IDY3OHB4KSkge1xuLy8vICAgIC5mb28ge1xuLy8vICAgICAgQGluY2x1ZGUgbWVkaWEoJz5waG9uZScsICc8PWN1c3RvbScpIHtcbi8vLyAgICAgICAvLyAuLi5cbi8vLyAgICAgIH1cbi8vLyAgICB9XG4vLy8gIH1cbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBFeHRlbmQgdGhlIGdsb2JhbCBtZWRpYSBleHByZXNzaW9ucyB3aXRoIGEgY3VzdG9tIG9uZVxuLy8vICBAaW5jbHVkZSBtZWRpYS1jb250ZXh0KCR0d2Vhay1tZWRpYS1leHByZXNzaW9uczogKCdhbGwnOiAnYWxsJykpIHtcbi8vLyAgICAuZm9vIHtcbi8vLyAgICAgIEBpbmNsdWRlIG1lZGlhKCdhbGwnLCAnPnBob25lJykge1xuLy8vICAgICAgIC8vIC4uLlxuLy8vICAgICAgfVxuLy8vICAgIH1cbi8vLyAgfVxuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIEV4dGVuZCBib3RoIGNvbmZpZ3VyYXRpb24gbWFwc1xuLy8vICBAaW5jbHVkZSBtZWRpYS1jb250ZXh0KCgnY3VzdG9tJzogNjc4cHgpLCAoJ2FsbCc6ICdhbGwnKSkge1xuLy8vICAgIC5mb28ge1xuLy8vICAgICAgQGluY2x1ZGUgbWVkaWEoJ2FsbCcsICc+cGhvbmUnLCAnPD1jdXN0b20nKSB7XG4vLy8gICAgICAgLy8gLi4uXG4vLy8gICAgICB9XG4vLy8gICAgfVxuLy8vICB9XG4vLy9cbkBtaXhpbiBtZWRpYS1jb250ZXh0KCR0d2Vha3BvaW50czogKCksICR0d2Vhay1tZWRpYS1leHByZXNzaW9uczogKCkpIHtcbiAgLy8gU2F2ZSBnbG9iYWwgY29uZmlndXJhdGlvblxuICAkZ2xvYmFsLWJyZWFrcG9pbnRzOiAkYnJlYWtwb2ludHM7XG4gICRnbG9iYWwtbWVkaWEtZXhwcmVzc2lvbnM6ICRtZWRpYS1leHByZXNzaW9ucztcblxuICAvLyBVcGRhdGUgZ2xvYmFsIGNvbmZpZ3VyYXRpb25cbiAgJGJyZWFrcG9pbnRzOiBtYXAtbWVyZ2UoJGJyZWFrcG9pbnRzLCAkdHdlYWtwb2ludHMpICFnbG9iYWw7XG4gICRtZWRpYS1leHByZXNzaW9uczogbWFwLW1lcmdlKCRtZWRpYS1leHByZXNzaW9ucywgJHR3ZWFrLW1lZGlhLWV4cHJlc3Npb25zKSAhZ2xvYmFsO1xuXG4gIEBjb250ZW50O1xuXG4gIC8vIFJlc3RvcmUgZ2xvYmFsIGNvbmZpZ3VyYXRpb25cbiAgJGJyZWFrcG9pbnRzOiAkZ2xvYmFsLWJyZWFrcG9pbnRzICFnbG9iYWw7XG4gICRtZWRpYS1leHByZXNzaW9uczogJGdsb2JhbC1tZWRpYS1leHByZXNzaW9ucyAhZ2xvYmFsO1xufVxuXG4vLy8vXG4vLy8gaW5jbHVkZS1tZWRpYSBwdWJsaWMgZXhwb3NlZCBBUElcbi8vLyBAYXV0aG9yIEVkdWFyZG8gQm91Y2FzXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLy9cblxuXG4vLy9cbi8vLyBHZW5lcmF0ZXMgYSBtZWRpYSBxdWVyeSBiYXNlZCBvbiBhIGxpc3Qgb2YgY29uZGl0aW9uc1xuLy8vXG4vLy8gQHBhcmFtIHtBcmdsaXN0fSAgICRjb25kaXRpb25zICAtIE1lZGlhIHF1ZXJ5IGNvbmRpdGlvbnNcbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBXaXRoIGEgc2luZ2xlIHNldCBicmVha3BvaW50XG4vLy8gIEBpbmNsdWRlIG1lZGlhKCc+cGhvbmUnKSB7IH1cbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBXaXRoIHR3byBzZXQgYnJlYWtwb2ludHNcbi8vLyAgQGluY2x1ZGUgbWVkaWEoJz5waG9uZScsICc8PXRhYmxldCcpIHsgfVxuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIFdpdGggY3VzdG9tIHZhbHVlc1xuLy8vICBAaW5jbHVkZSBtZWRpYSgnPj0zNThweCcsICc8ODUwcHgnKSB7IH1cbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBXaXRoIHNldCBicmVha3BvaW50cyB3aXRoIGN1c3RvbSB2YWx1ZXNcbi8vLyAgQGluY2x1ZGUgbWVkaWEoJz5kZXNrdG9wJywgJzw9MTM1MHB4JykgeyB9XG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gV2l0aCBhIHN0YXRpYyBleHByZXNzaW9uXG4vLy8gIEBpbmNsdWRlIG1lZGlhKCdyZXRpbmEyeCcpIHsgfVxuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIE1peGluZyBldmVyeXRoaW5nXG4vLy8gIEBpbmNsdWRlIG1lZGlhKCc+PTM1MHB4JywgJzx0YWJsZXQnLCAncmV0aW5hM3gnKSB7IH1cbi8vL1xuQG1peGluIG1lZGlhKCRjb25kaXRpb25zLi4uKSB7XG4gIC8vIHNjc3MtbGludDpkaXNhYmxlIFNwYWNlQXJvdW5kT3BlcmF0b3JcbiAgQGlmICgkaW0tbWVkaWEtc3VwcG9ydCBhbmQgbGVuZ3RoKCRjb25kaXRpb25zKSA9PSAwKSBvclxuICAgICAgKG5vdCAkaW0tbWVkaWEtc3VwcG9ydCBhbmQgaW0taW50ZXJjZXB0cy1zdGF0aWMtYnJlYWtwb2ludCgkY29uZGl0aW9ucy4uLikpIHtcbiAgICBAY29udGVudDtcbiAgfSBAZWxzZSBpZiAoJGltLW1lZGlhLXN1cHBvcnQgYW5kIGxlbmd0aCgkY29uZGl0aW9ucykgPiAwKSB7XG4gICAgQG1lZGlhICN7dW5xdW90ZShwYXJzZS1leHByZXNzaW9uKG50aCgkY29uZGl0aW9ucywgMSkpKX0ge1xuICAgICAgLy8gUmVjdXJzaXZlIGNhbGxcbiAgICAgIEBpbmNsdWRlIG1lZGlhKHNsaWNlKCRjb25kaXRpb25zLCAyKS4uLikge1xuICAgICAgICBAY29udGVudDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn0iLCIvLyBSZXNldCBib3gtc2l6aW5nXG5odG1sIHsgYm94LXNpemluZzogYm9yZGVyLWJveDsgfVxuKiwgKjo6YWZ0ZXIsICo6OmJlZm9yZSB7IGJveC1zaXppbmc6IGluaGVyaXQ7IH1cblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIE5vcm1hbGl6ZS5zY3NzIGJhc2VkIG9uIE5pY29sYXMgR2FsbGFnaGVyIGFuZCBKb25hdGhhbiBOZWFsJ3Ncbi8vIG5vcm1hbGl6ZS5jc3MgdjIuMS4zIHwgTUlUIExpY2Vuc2UgfCBnaXQuaW8vbm9ybWFsaXplXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gTm9ybWFsaXplLnNjc3Mgc2V0dGluZ3Ncbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuLy8gU2V0IHRvIHRydWUgaWYgeW91IHdhbnQgdG8gYWRkIHN1cHBvcnQgZm9yIElFNiBhbmQgSUU3XG4vLyBOb3RpY2U6IHNldHRpbmcgdG8gdHJ1ZSBtaWdodCByZW5kZXIgc29tZSBlbGVtZW50c1xuLy8gc2xpZ2h0bHkgZGlmZmVyZW50bHkgdGhhbiB3aGVuIHNldCB0byBmYWxzZVxuJGxlZ2FjeV9zdXBwb3J0X2Zvcl9pZTogZmFsc2UgIWRlZmF1bHQ7IC8vIFVzZWQgYWxzbyBpbiBDb21wYXNzXG5cblxuLy8gU2V0IHRoZSBkZWZhdWx0IGZvbnQgZmFtaWx5IGhlcmUgc28geW91IGRvbid0IGhhdmUgdG8gb3ZlcnJpZGUgaXQgbGF0ZXJcbiRub3JtYWxpemVkX2ZvbnRfZmFtaWx5OiBzYW5zLXNlcmlmICFkZWZhdWx0O1xuXG4kbm9ybWFsaXplX2hlYWRpbmdzOiB0cnVlICFkZWZhdWx0O1xuXG4kaDFfZm9udF9zaXplOiAyZW0gIWRlZmF1bHQ7XG4kaDJfZm9udF9zaXplOiAxLjVlbSAhZGVmYXVsdDtcbiRoM19mb250X3NpemU6IDEuMTdlbSAhZGVmYXVsdDtcbiRoNF9mb250X3NpemU6IDFlbSAhZGVmYXVsdDtcbiRoNV9mb250X3NpemU6IDAuODNlbSAhZGVmYXVsdDtcbiRoNl9mb250X3NpemU6IDAuNzVlbSAhZGVmYXVsdDtcblxuJGgxX21hcmdpbjogMC42N2VtIDAgIWRlZmF1bHQ7XG4kaDJfbWFyZ2luOiAwLjgzZW0gMCAhZGVmYXVsdDtcbiRoM19tYXJnaW46IDFlbSAwICFkZWZhdWx0O1xuJGg0X21hcmdpbjogMS4zM2VtIDAgIWRlZmF1bHQ7XG4kaDVfbWFyZ2luOiAxLjY3ZW0gMCAhZGVmYXVsdDtcbiRoNl9tYXJnaW46IDIuMzNlbSAwICFkZWZhdWx0O1xuXG4kYmFja2dyb3VuZDogI2ZmZiAhZGVmYXVsdDtcbiRjb2xvcjogIzAwMCAhZGVmYXVsdDtcblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIEhUTUw1IGRpc3BsYXkgZGVmaW5pdGlvbnNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vIENvcnJlY3RzIGJsb2NrIGRpc3BsYXkgbm90IGRlZmluZWQgaW4gSUU2LzcvOC85ICYgRkYzXG5cbmFydGljbGUsXG5hc2lkZSxcbmRldGFpbHMsXG5maWdjYXB0aW9uLFxuZmlndXJlLFxuZm9vdGVyLFxuaGVhZGVyLFxuaGdyb3VwLFxubmF2LFxuc2VjdGlvbixcbnN1bW1hcnkge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4vLyBDb3JyZWN0cyBpbmxpbmUtYmxvY2sgZGlzcGxheSBub3QgZGVmaW5lZCBpbiBJRTYvNy84LzkgJiBGRjNcblxuYXVkaW8sXG5jYW52YXMsXG52aWRlbyB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIEBpZiAkbGVnYWN5X3N1cHBvcnRfZm9yX2llIHtcbiAgICAgICAgKmRpc3BsYXk6IGlubGluZTtcbiAgICAgICAgKnpvb206IDE7XG4gICAgfVxufVxuXG4vLyAxLiBQcmV2ZW50cyBtb2Rlcm4gYnJvd3NlcnMgZnJvbSBkaXNwbGF5aW5nICdhdWRpbycgd2l0aG91dCBjb250cm9sc1xuLy8gMi4gUmVtb3ZlIGV4Y2VzcyBoZWlnaHQgaW4gaU9TNSBkZXZpY2VzXG5cbmF1ZGlvOm5vdChbY29udHJvbHNdKSB7XG4gICAgZGlzcGxheTogbm9uZTsgLy8gMVxuICAgIGhlaWdodDogMDsgLy8gMlxufVxuXG4vL1xuLy8gQWRkcmVzcyBgW2hpZGRlbl1gIHN0eWxpbmcgbm90IHByZXNlbnQgaW4gSUUgOC85LlxuLy8gSGlkZSB0aGUgYHRlbXBsYXRlYCBlbGVtZW50IGluIElFLCBTYWZhcmksIGFuZCBGaXJlZm94IDwgMjIuXG4vL1xuXG5baGlkZGVuXSwgdGVtcGxhdGUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG59XG5cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBCYXNlXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vLyAxLiBDb3JyZWN0cyB0ZXh0IHJlc2l6aW5nIG9kZGx5IGluIElFNi83IHdoZW4gYm9keSBmb250LXNpemUgaXMgc2V0IHVzaW5nIGVtIHVuaXRzXG4vLyAgICBodHRwOi8vY2xhZ251dC5jb20vYmxvZy8zNDgvI2M3OTBcbi8vIDIuIFByZXZlbnRzIGlPUyB0ZXh0IHNpemUgYWRqdXN0IGFmdGVyIG9yaWVudGF0aW9uIGNoYW5nZSwgd2l0aG91dCBkaXNhYmxpbmcgdXNlciB6b29tXG4vLyAgICB3d3cuNDU2YmVyZWFzdHJlZXQuY29tL2FyY2hpdmUvMjAxMDEyL2NvbnRyb2xsaW5nX3RleHRfc2l6ZV9pbl9zYWZhcmlfZm9yX2lvc193aXRob3V0X2Rpc2FibGluZ191c2VyX3pvb20vXG5cbmh0bWwge1xuICAgIEBpZiAkbGVnYWN5X3N1cHBvcnRfZm9yX2llIHtcbiAgICAgICAgZm9udC1zaXplOiAxMDAlOyAvLyAxXG4gICAgfVxuXHRcdC8vIGJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kO1xuXHRcdGNvbG9yOiAkY29sb3I7XG4gICAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvLyAyXG4gICAgLW1zLXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7IC8vIDJcbn1cblxuLy8gQWRkcmVzc2VzIGZvbnQtZmFtaWx5IGluY29uc2lzdGVuY3kgYmV0d2VlbiAndGV4dGFyZWEnIGFuZCBvdGhlciBmb3JtIGVsZW1lbnRzLlxuXG5odG1sLFxuYnV0dG9uLFxuaW5wdXQsXG5zZWxlY3QsXG50ZXh0YXJlYSB7XG4gICAgZm9udC1mYW1pbHk6ICRub3JtYWxpemVkX2ZvbnRfZmFtaWx5O1xufVxuXG4vLyBBZGRyZXNzZXMgbWFyZ2lucyBoYW5kbGVkIGluY29ycmVjdGx5IGluIElFNi83XG5cbmJvZHkge1xuICAgIG1hcmdpbjogMDtcbn1cblxuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gTGlua3Ncbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vIDEuIFJlbW92ZSB0aGUgZ3JheSBiYWNrZ3JvdW5kIGNvbG9yIGZyb20gYWN0aXZlIGxpbmtzIGluIElFIDEwLlxuLy8gMi4gQWRkcmVzc2VzIG91dGxpbmUgZGlzcGxheWVkIG9kZGx5IGluIENocm9tZVxuLy8gMy4gSW1wcm92ZXMgcmVhZGFiaWxpdHkgd2hlbiBmb2N1c2VkIGFuZCBhbHNvIG1vdXNlIGhvdmVyZWQgaW4gYWxsIGJyb3dzZXJzXG4vLyAgICBwZW9wbGUub3BlcmEuY29tL3BhdHJpY2tsL2V4cGVyaW1lbnRzL2tleWJvYXJkL3Rlc3RcblxuYSB7XG4gICAgLy8gMVxuICAgIFxuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuXG4gICAgLy8gMlxuXG4gICAgJjpmb2N1cyB7XG4gICAgICAgIG91dGxpbmU6IHRoaW4gZG90dGVkO1xuICAgIH1cblxuICAgIC8vIDNcblxuICAgICY6aG92ZXIsXG4gICAgJjphY3RpdmUge1xuICAgICAgICBvdXRsaW5lOiAwO1xuICAgIH1cbn1cblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIFR5cG9ncmFwaHlcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vIEFkZHJlc3NlcyBmb250IHNpemVzIGFuZCBtYXJnaW5zIHNldCBkaWZmZXJlbnRseSBpbiBJRTYvN1xuLy8gQWRkcmVzc2VzIGZvbnQgc2l6ZXMgd2l0aGluICdzZWN0aW9uJyBhbmQgJ2FydGljbGUnIGluIEZGNCssIENocm9tZSwgUzVcblxuQGlmICRub3JtYWxpemVfaGVhZGluZ3MgPT0gdHJ1ZSB7XG4gICAgaDEge1xuICAgICAgICBmb250LXNpemU6ICRoMV9mb250X3NpemU7XG4gICAgICAgIG1hcmdpbjogJGgxX21hcmdpbjtcbiAgICB9XG5cbiAgICBoMiB7XG4gICAgICAgIGZvbnQtc2l6ZTogJGgyX2ZvbnRfc2l6ZTtcbiAgICAgICAgbWFyZ2luOiAkaDJfbWFyZ2luO1xuICAgIH1cblxuICAgIGgzIHtcbiAgICAgICAgZm9udC1zaXplOiAkaDNfZm9udF9zaXplO1xuICAgICAgICBtYXJnaW46ICRoM19tYXJnaW47XG4gICAgfVxuXG4gICAgaDQge1xuICAgICAgICBmb250LXNpemU6ICRoNF9mb250X3NpemU7XG4gICAgICAgIG1hcmdpbjogJGg0X21hcmdpbjtcbiAgICB9XG5cbiAgICBoNSB7XG4gICAgICAgIGZvbnQtc2l6ZTogJGg1X2ZvbnRfc2l6ZTtcbiAgICAgICAgbWFyZ2luOiAkaDVfbWFyZ2luO1xuICAgIH1cblxuICAgIGg2IHtcbiAgICAgICAgZm9udC1zaXplOiAkaDZfZm9udF9zaXplO1xuICAgICAgICBtYXJnaW46ICRoNl9tYXJnaW47XG4gICAgfVxufVxuXG4vLyBBZGRyZXNzZXMgc3R5bGluZyBub3QgcHJlc2VudCBpbiBJRSA4LzksIFM1LCBDaHJvbWVcblxuYWJiclt0aXRsZV0ge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBkb3R0ZWQ7XG59XG5cbi8vIEFkZHJlc3NlcyBzdHlsZSBzZXQgdG8gJ2JvbGRlcicgaW4gRkYzKywgUzQvNSwgQ2hyb21lXG5cbmIsXG5zdHJvbmcge1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG5AaWYgJGxlZ2FjeV9zdXBwb3J0X2Zvcl9pZSB7XG4gICAgYmxvY2txdW90ZSB7XG4gICAgICAgIG1hcmdpbjogMWVtIDQwcHg7XG4gICAgfVxufVxuXG4vLyBBZGRyZXNzZXMgc3R5bGluZyBub3QgcHJlc2VudCBpbiBTNSwgQ2hyb21lXG5cbmRmbiB7XG4gICAgZm9udC1zdHlsZTogaXRhbGljO1xufVxuXG4vLyBBZGRyZXNzZXMgc3R5bGluZyBub3QgcHJlc2VudCBpbiBJRTYvNy84LzlcblxubWFyayB7XG4gICAgYmFja2dyb3VuZDogI2ZmMDtcbiAgICBjb2xvcjogIzAwMDtcbn1cblxuLy8gQWRkcmVzc2VzIG1hcmdpbnMgc2V0IGRpZmZlcmVudGx5IGluIElFNi83XG5AaWYgJGxlZ2FjeV9zdXBwb3J0X2Zvcl9pZSB7XG4gICAgcCxcbiAgICBwcmUge1xuICAgICAgICBtYXJnaW46IDFlbSAwO1xuICAgIH1cbn1cblxuLy8gQ29ycmVjdHMgZm9udCBmYW1pbHkgc2V0IG9kZGx5IGluIElFNiwgUzQvNSwgQ2hyb21lXG4vLyBlbi53aWtpcGVkaWEub3JnL3dpa2kvVXNlcjpEYXZpZGdvdGhiZXJnL1Rlc3Q1OVxuXG5jb2RlLFxua2JkLFxucHJlLFxuc2FtcCB7XG4gICAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgc2VyaWY7XG4gICAgQGlmICRsZWdhY3lfc3VwcG9ydF9mb3JfaWUge1xuICAgICAgICBfZm9udC1mYW1pbHk6ICdjb3VyaWVyIG5ldycsIG1vbm9zcGFjZTtcbiAgICB9XG4gICAgZm9udC1zaXplOiAxZW07XG59XG5cbi8vIEltcHJvdmVzIHJlYWRhYmlsaXR5IG9mIHByZS1mb3JtYXR0ZWQgdGV4dCBpbiBhbGwgYnJvd3NlcnNcblxucHJlIHtcbiAgICB3aGl0ZS1zcGFjZTogcHJlO1xuICAgIHdoaXRlLXNwYWNlOiBwcmUtd3JhcDtcbiAgICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG59XG5cbi8vIFNldCBjb25zaXN0ZW50IHF1b3RlIHR5cGVzLlxuXG5xIHtcbiAgICBxdW90ZXM6IFwiXFwyMDFDXCIgXCJcXDIwMURcIiBcIlxcMjAxOFwiIFwiXFwyMDE5XCI7XG59XG5cbi8vIDEuIEFkZHJlc3NlcyBDU1MgcXVvdGVzIG5vdCBzdXBwb3J0ZWQgaW4gSUU2Lzdcbi8vIDIuIEFkZHJlc3NlcyBxdW90ZSBwcm9wZXJ0eSBub3Qgc3VwcG9ydGVkIGluIFM0XG5cbi8vIDFcbkBpZiAkbGVnYWN5X3N1cHBvcnRfZm9yX2llIHtcbiAgICBxIHtcbiAgICAgICAgcXVvdGVzOiBub25lO1xuICAgIH1cbn1cblxuLy8gMlxucSB7XG4gICAgJjpiZWZvcmUsIFxuICAgICY6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgY29udGVudDogbm9uZTtcdFxuICAgIH1cbn1cblxuLy8gQWRkcmVzcyBpbmNvbnNpc3RlbnQgYW5kIHZhcmlhYmxlIGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG5cbnNtYWxsIHtcbiAgICBmb250LXNpemU6IDgwJTtcbn1cblxuLy8gUHJldmVudHMgc3ViIGFuZCBzdXAgYWZmZWN0aW5nIGxpbmUtaGVpZ2h0IGluIGFsbCBicm93c2Vyc1xuLy8gZ2lzdC5naXRodWIuY29tLzQxMzkzMFxuXG5zdWIsXG5zdXAge1xuICAgIGZvbnQtc2l6ZTogNzUlO1xuICAgIGxpbmUtaGVpZ2h0OiAwO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cbnN1cCB7XG4gICAgdG9wOiAtMC41ZW07XG59XG5cbnN1YiB7XG4gICAgYm90dG9tOiAtMC4yNWVtO1xufVxuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gTGlzdHNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vIEFkZHJlc3NlcyBtYXJnaW5zIHNldCBkaWZmZXJlbnRseSBpbiBJRTYvN1xuQGlmICRsZWdhY3lfc3VwcG9ydF9mb3JfaWUge1xuICAgIGRsLFxuICAgIG1lbnUsXG4gICAgb2wsXG4gICAgdWwge1xuICAgICAgICBtYXJnaW46IDFlbSAwO1xuICAgIH1cbn1cblxuQGlmICRsZWdhY3lfc3VwcG9ydF9mb3JfaWUge1xuICAgIGRkIHtcbiAgICAgICAgbWFyZ2luOiAwIDAgMCA0MHB4O1xuICAgIH1cbn1cblxuLy8gQWRkcmVzc2VzIHBhZGRpbmdzIHNldCBkaWZmZXJlbnRseSBpbiBJRTYvN1xuQGlmICRsZWdhY3lfc3VwcG9ydF9mb3JfaWUge1xuICAgIG1lbnUsXG4gICAgb2wsXG4gICAgdWwge1xuICAgICAgICBwYWRkaW5nOiAwIDAgMCA0MHB4O1xuICAgIH1cbn1cblxuLy8gQ29ycmVjdHMgbGlzdCBpbWFnZXMgaGFuZGxlZCBpbmNvcnJlY3RseSBpbiBJRTdcblxubmF2IHtcbiAgICB1bCxcbiAgICBvbCB7XG4gICAgICAgIEBpZiAkbGVnYWN5X3N1cHBvcnRfZm9yX2llIHtcbiAgICAgICAgICAgIGxpc3Qtc3R5bGUtaW1hZ2U6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBFbWJlZGRlZCBjb250ZW50XG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vLyAxLiBSZW1vdmVzIGJvcmRlciB3aGVuIGluc2lkZSAnYScgZWxlbWVudCBpbiBJRTYvNy84LzksIEZGM1xuLy8gMi4gSW1wcm92ZXMgaW1hZ2UgcXVhbGl0eSB3aGVuIHNjYWxlZCBpbiBJRTdcbi8vICAgIGNvZGUuZmxpY2tyLmNvbS9ibG9nLzIwMDgvMTEvMTIvb24tdWktcXVhbGl0eS10aGUtbGl0dGxlLXRoaW5ncy1jbGllbnQtc2lkZS1pbWFnZS1yZXNpemluZy9cblxuaW1nIHtcbiAgICBib3JkZXI6IDA7IC8vIDFcbiAgICBAaWYgJGxlZ2FjeV9zdXBwb3J0X2Zvcl9pZSB7XG4gICAgICAgIC1tcy1pbnRlcnBvbGF0aW9uLW1vZGU6IGJpY3ViaWM7IC8vIDJcbiAgICB9XG59XG5cbi8vIENvcnJlY3RzIG92ZXJmbG93IGRpc3BsYXllZCBvZGRseSBpbiBJRTlcblxuc3ZnOm5vdCg6cm9vdCkge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG59XG5zdmcge1xuICAgIHdpZHRoOiAxMDAlO1xufVxuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gRmlndXJlc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy8gQWRkcmVzc2VzIG1hcmdpbiBub3QgcHJlc2VudCBpbiBJRTYvNy84LzksIFM1LCBPMTFcblxuZmlndXJlIHtcbiAgICBtYXJnaW46IDA7XG59XG5cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBGb3Jtc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy8gQ29ycmVjdHMgbWFyZ2luIGRpc3BsYXllZCBvZGRseSBpbiBJRTYvN1xuQGlmICRsZWdhY3lfc3VwcG9ydF9mb3JfaWUge1xuICAgIGZvcm0ge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgfVxufVxuXG4vLyBEZWZpbmUgY29uc2lzdGVudCBib3JkZXIsIG1hcmdpbiwgYW5kIHBhZGRpbmdcblxuZmllbGRzZXQge1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICAvLyBib3JkZXI6IDFweCBzb2xpZCAjYzBjMGMwO1xuICAgIC8vIG1hcmdpbjogMCAycHg7XG4gICAgLy8gcGFkZGluZzogMC4zNWVtIDAuNjI1ZW0gMC43NWVtO1xufVxuXG4vLyAxLiBDb3JyZWN0cyBjb2xvciBub3QgYmVpbmcgaW5oZXJpdGVkIGluIElFNi83LzgvOVxuLy8gMi4gUmVtb3ZlIHBhZGRpbmcgc28gcGVvcGxlIGFyZW4ndCBjYXVnaHQgb3V0IGlmIHRoZXkgemVybyBvdXQgZmllbGRzZXRzLlxuLy8gMy4gQ29ycmVjdHMgdGV4dCBub3Qgd3JhcHBpbmcgaW4gRkYzXG4vLyA0LiBDb3JyZWN0cyBhbGlnbm1lbnQgZGlzcGxheWVkIG9kZGx5IGluIElFNi83XG5cbmxlZ2VuZCB7XG4gICAgYm9yZGVyOiAwOyAvLyAxXG4gICAgcGFkZGluZzogMDsgLy8gMlxuICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7IC8vIDNcbiAgICBAaWYgJGxlZ2FjeV9zdXBwb3J0X2Zvcl9pZSB7XG4gICAgICAgICptYXJnaW4tbGVmdDogLTdweDsgLy8gNFxuICAgIH1cbn1cblxuLy8gMS4gQ29ycmVjdCBmb250IGZhbWlseSBub3QgYmVpbmcgaW5oZXJpdGVkIGluIGFsbCBicm93c2Vycy5cbi8vIDIuIENvcnJlY3RzIGZvbnQgc2l6ZSBub3QgYmVpbmcgaW5oZXJpdGVkIGluIGFsbCBicm93c2Vyc1xuLy8gMy4gQWRkcmVzc2VzIG1hcmdpbnMgc2V0IGRpZmZlcmVudGx5IGluIElFNi83LCBGRjMrLCBTNSwgQ2hyb21lXG4vLyA0LiBJbXByb3ZlcyBhcHBlYXJhbmNlIGFuZCBjb25zaXN0ZW5jeSBpbiBhbGwgYnJvd3NlcnNcblxuYnV0dG9uLFxuaW5wdXQsXG5zZWxlY3QsXG50ZXh0YXJlYSB7XG4gICAgZm9udC1mYW1pbHk6IGluaGVyaXQ7IC8vIDFcbiAgICBmb250LXNpemU6IDEwMCU7IC8vIDJcbiAgICBtYXJnaW46IDA7IC8vIDNcbiAgICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7IC8vIDRcbiAgICBAaWYgJGxlZ2FjeV9zdXBwb3J0X2Zvcl9pZSB7XG4gICAgICAgICp2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyAvLyA0XG4gICAgfVxufVxuXG4vLyBBZGRyZXNzZXMgRkYzLzQgc2V0dGluZyBsaW5lLWhlaWdodCBvbiAnaW5wdXQnIHVzaW5nICFpbXBvcnRhbnQgaW4gdGhlIFVBIHN0eWxlc2hlZXRcbmJ1dHRvbiwgaW5wdXQge1xuICAgIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG59XG5cbi8vIEFkZHJlc3MgaW5jb25zaXN0ZW50IGB0ZXh0LXRyYW5zZm9ybWAgaW5oZXJpdGFuY2UgZm9yIGBidXR0b25gIGFuZCBgc2VsZWN0YC5cbi8vIEFsbCBvdGhlciBmb3JtIGNvbnRyb2wgZWxlbWVudHMgZG8gbm90IGluaGVyaXQgYHRleHQtdHJhbnNmb3JtYCB2YWx1ZXMuXG4vLyBDb3JyZWN0IGBidXR0b25gIHN0eWxlIGluaGVyaXRhbmNlIGluIENocm9tZSwgU2FmYXJpIDUrLCBhbmQgSUUgOCsuXG4vLyBDb3JyZWN0IGBzZWxlY3RgIHN0eWxlIGluaGVyaXRhbmNlIGluIEZpcmVmb3ggNCsgYW5kIE9wZXJhLlxuYnV0dG9uLFxuc2VsZWN0IHtcbiAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbn1cblxuLy8gMS4gQXZvaWQgdGhlIFdlYktpdCBidWcgaW4gQW5kcm9pZCA0LjAuKiB3aGVyZSAoMikgZGVzdHJveXMgbmF0aXZlIGBhdWRpb2Bcbi8vICAgIGFuZCBgdmlkZW9gIGNvbnRyb2xzXG4vLyAyLiBDb3JyZWN0cyBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlICdpbnB1dCcgdHlwZXMgaW4gaU9TXG4vLyAzLiBJbXByb3ZlcyB1c2FiaWxpdHkgYW5kIGNvbnNpc3RlbmN5IG9mIGN1cnNvciBzdHlsZSBiZXR3ZWVuIGltYWdlLXR5cGVcbi8vICAgICdpbnB1dCcgYW5kIG90aGVyc1xuLy8gNC4gUmVtb3ZlcyBpbm5lciBzcGFjaW5nIGluIElFNyB3aXRob3V0IGFmZmVjdGluZyBub3JtYWwgdGV4dCBpbnB1dHNcbi8vICAgIEtub3duIGlzc3VlOiBpbm5lciBzcGFjaW5nIHJlbWFpbnMgaW4gSUU2XG5cbmJ1dHRvbixcbmh0bWwgaW5wdXRbdHlwZT1cImJ1dHRvblwiXSwgLy8gMVxuaW5wdXRbdHlwZT1cInJlc2V0XCJdLFxuaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247IC8vIDJcbiAgICBjdXJzb3I6IHBvaW50ZXI7IC8vIDNcbiAgICBAaWYgJGxlZ2FjeV9zdXBwb3J0X2Zvcl9pZSB7XG4gICAgICAgICpvdmVyZmxvdzogdmlzaWJsZTsgIC8vIDRcbiAgICB9XG59XG5cbi8vIFJlLXNldCBkZWZhdWx0IGN1cnNvciBmb3IgZGlzYWJsZWQgZWxlbWVudHNcbmJ1dHRvbltkaXNhYmxlZF0sXG5pbnB1dFtkaXNhYmxlZF0ge1xuICAgIGN1cnNvcjogZGVmYXVsdDtcbn1cblxuLy8gUmVtb3ZlcyBpbm5lciBwYWRkaW5nIGFuZCBib3JkZXIgaW4gRkYzK1xuLy8gd3d3LnNpdGVwZW4uY29tL2Jsb2cvMjAwOC8wNS8xNC90aGUtZGV2aWxzLWluLXRoZS1kZXRhaWxzLWZpeGluZy1kb2pvcy10b29sYmFyLWJ1dHRvbnMvXG5idXR0b24sIGlucHV0IHtcbiAgICAmOjotbW96LWZvY3VzLWlubmVyIHtcbiAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgIH1cbn1cblxuLy8gMS4gUmVtb3ZlcyBkZWZhdWx0IHZlcnRpY2FsIHNjcm9sbGJhciBpbiBJRTYvNy84Lzlcbi8vIDIuIEltcHJvdmVzIHJlYWRhYmlsaXR5IGFuZCBhbGlnbm1lbnQgaW4gYWxsIGJyb3dzZXJzXG5cbnRleHRhcmVhIHtcbiAgICBvdmVyZmxvdzogYXV0bzsgLy8gMVxuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7IC8vIDJcbn1cblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIFRhYmxlc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy8gUmVtb3ZlIG1vc3Qgc3BhY2luZyBiZXR3ZWVuIHRhYmxlIGNlbGxzXG5cbnRhYmxlIHtcbiAgICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xuICAgIGJvcmRlci1zcGFjaW5nOiAwO1xufVxuXG5pbnB1dCB7XG4gICAgLy8gMS4gQWRkcmVzc2VzIGFwcGVhcmFuY2Ugc2V0IHRvIHNlYXJjaGZpZWxkIGluIFM1LCBDaHJvbWVcbiAgICAvLyAyLiBBZGRyZXNzZXMgYm94LXNpemluZyBzZXQgdG8gYm9yZGVyLWJveCBpbiBTNSwgQ2hyb21lIChpbmNsdWRlIC1tb3ogdG8gZnV0dXJlLXByb29mKVxuICAgICZbdHlwZT1cInNlYXJjaFwiXSB7XG4gICAgICAgIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICAgICAgICBcbiAgICBcdC8vIFJlbW92ZSBpbm5lciBwYWRkaW5nIGFuZCBzZWFyY2ggY2FuY2VsIGJ1dHRvbiBpbiBTYWZhcmkgNSBhbmQgQ2hyb21lXG4gICAgICAgIC8vIG9uIE9TIFguXG4gICAgICAgICY6Oi13ZWJraXQtc2VhcmNoLWNhbmNlbC1idXR0b24sXG4gICAgICAgICY6Oi13ZWJraXQtc2VhcmNoLWRlY29yYXRpb24ge1xuICAgICAgICAgICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC8vIDEuIEFkZHJlc3MgYm94IHNpemluZyBzZXQgdG8gYGNvbnRlbnQtYm94YCBpbiBJRSA4LzkvMTAuXG4gICAgLy8gMi4gUmVtb3ZlIGV4Y2VzcyBwYWRkaW5nIGluIElFIDgvOS8xMC5cbiAgICAvLyAzLiBSZW1vdmVzIGV4Y2VzcyBwYWRkaW5nIGluIElFN1xuICAgIC8vICAgIEtub3duIGlzc3VlOiBleGNlc3MgcGFkZGluZyByZW1haW5zIGluIElFNlxuICAgICZbdHlwZT1cImNoZWNrYm94XCJdLFxuICAgICZbdHlwZT1cInJhZGlvXCJdIHtcbiAgICBcdGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8vIDFcbiAgICBcdHBhZGRpbmc6IDA7IC8vIDJcbiAgICBcdEBpZiAkbGVnYWN5X3N1cHBvcnRfZm9yX2llIHtcbiAgICAgICAgXHQqaGVpZ2h0OiAxM3B4OyAvLyAzXG4gICAgICAgIFx0KndpZHRoOiAxM3B4OyAvLyAzXG4gICAgXHR9XG4gICAgfVxufVxuIiwiLy8gQm91cmJvbiA1LjAuMC1iZXRhLjhcbi8vIGh0dHA6Ly9ib3VyYm9uLmlvXG4vLyBDb3B5cmlnaHQgMjAxMS0yMDE3IHRob3VnaHRib3QsIGluYy5cbi8vIE1JVCBMaWNlbnNlXG5cbkBpbXBvcnQgXCJib3VyYm9uL2hlbHBlcnMvYnV0dG9ucy1saXN0XCI7XG5AaW1wb3J0IFwiYm91cmJvbi9oZWxwZXJzL3NjYWxlc1wiO1xuQGltcG9ydCBcImJvdXJib24vaGVscGVycy90ZXh0LWlucHV0cy1saXN0XCI7XG5cbkBpbXBvcnQgXCJib3VyYm9uL3NldHRpbmdzL3NldHRpbmdzXCI7XG5cbkBpbXBvcnQgXCJib3VyYm9uL3ZhbGlkYXRvcnMvY29udGFpbnNcIjtcbkBpbXBvcnQgXCJib3VyYm9uL3ZhbGlkYXRvcnMvY29udGFpbnMtZmFsc3lcIjtcbkBpbXBvcnQgXCJib3VyYm9uL3ZhbGlkYXRvcnMvaXMtY29sb3JcIjtcbkBpbXBvcnQgXCJib3VyYm9uL3ZhbGlkYXRvcnMvaXMtbGVuZ3RoXCI7XG5AaW1wb3J0IFwiYm91cmJvbi92YWxpZGF0b3JzL2lzLW51bWJlclwiO1xuQGltcG9ydCBcImJvdXJib24vdmFsaWRhdG9ycy9pcy1zaXplXCI7XG5cbkBpbXBvcnQgXCJib3VyYm9uL3V0aWxpdGllcy9hc3NpZ24taW5wdXRzXCI7XG5AaW1wb3J0IFwiYm91cmJvbi91dGlsaXRpZXMvY29tcGFjdC1zaG9ydGhhbmRcIjtcbkBpbXBvcnQgXCJib3VyYm9uL3V0aWxpdGllcy9kaXJlY3Rpb25hbC1wcm9wZXJ0eVwiO1xuQGltcG9ydCBcImJvdXJib24vdXRpbGl0aWVzL2ZldGNoLWJvdXJib24tc2V0dGluZ1wiO1xuQGltcG9ydCBcImJvdXJib24vdXRpbGl0aWVzL2ZvbnQtc291cmNlLWRlY2xhcmF0aW9uXCI7XG5AaW1wb3J0IFwiYm91cmJvbi91dGlsaXRpZXMvZ2FtbWFcIjtcbkBpbXBvcnQgXCJib3VyYm9uL3V0aWxpdGllcy9saWdodG5lc3NcIjtcbkBpbXBvcnQgXCJib3VyYm9uL3V0aWxpdGllcy9jb250cmFzdC1yYXRpb1wiO1xuQGltcG9ydCBcImJvdXJib24vdXRpbGl0aWVzL3VucGFjay1zaG9ydGhhbmRcIjtcblxuQGltcG9ydCBcImJvdXJib24vbGlicmFyeS9ib3JkZXItY29sb3JcIjtcbkBpbXBvcnQgXCJib3VyYm9uL2xpYnJhcnkvYm9yZGVyLXJhZGl1c1wiO1xuQGltcG9ydCBcImJvdXJib24vbGlicmFyeS9ib3JkZXItc3R5bGVcIjtcbkBpbXBvcnQgXCJib3VyYm9uL2xpYnJhcnkvYm9yZGVyLXdpZHRoXCI7XG5AaW1wb3J0IFwiYm91cmJvbi9saWJyYXJ5L2J1dHRvbnNcIjtcbkBpbXBvcnQgXCJib3VyYm9uL2xpYnJhcnkvY2xlYXJmaXhcIjtcbkBpbXBvcnQgXCJib3VyYm9uL2xpYnJhcnkvY29udHJhc3Qtc3dpdGNoXCI7XG5AaW1wb3J0IFwiYm91cmJvbi9saWJyYXJ5L2VsbGlwc2lzXCI7XG5AaW1wb3J0IFwiYm91cmJvbi9saWJyYXJ5L2ZvbnQtZmFjZVwiO1xuQGltcG9ydCBcImJvdXJib24vbGlicmFyeS9mb250LXN0YWNrc1wiO1xuQGltcG9ydCBcImJvdXJib24vbGlicmFyeS9oaWRlLXRleHRcIjtcbkBpbXBvcnQgXCJib3VyYm9uL2xpYnJhcnkvaGlkZS12aXN1YWxseVwiO1xuQGltcG9ydCBcImJvdXJib24vbGlicmFyeS9tYXJnaW5cIjtcbkBpbXBvcnQgXCJib3VyYm9uL2xpYnJhcnkvbW9kdWxhci1zY2FsZVwiO1xuQGltcG9ydCBcImJvdXJib24vbGlicmFyeS9vdmVyZmxvdy13cmFwXCI7XG5AaW1wb3J0IFwiYm91cmJvbi9saWJyYXJ5L3BhZGRpbmdcIjtcbkBpbXBvcnQgXCJib3VyYm9uL2xpYnJhcnkvcG9zaXRpb25cIjtcbkBpbXBvcnQgXCJib3VyYm9uL2xpYnJhcnkvcHJlZml4ZXJcIjtcbkBpbXBvcnQgXCJib3VyYm9uL2xpYnJhcnkvc2hhZGVcIjtcbkBpbXBvcnQgXCJib3VyYm9uL2xpYnJhcnkvc2l6ZVwiO1xuQGltcG9ydCBcImJvdXJib24vbGlicmFyeS9zdHJpcC11bml0XCI7XG5AaW1wb3J0IFwiYm91cmJvbi9saWJyYXJ5L3RleHQtaW5wdXRzXCI7XG5AaW1wb3J0IFwiYm91cmJvbi9saWJyYXJ5L3RpbWluZy1mdW5jdGlvbnNcIjtcbkBpbXBvcnQgXCJib3VyYm9uL2xpYnJhcnkvdGludFwiO1xuQGltcG9ydCBcImJvdXJib24vbGlicmFyeS90cmlhbmdsZVwiO1xuQGltcG9ydCBcImJvdXJib24vbGlicmFyeS92YWx1ZS1wcmVmaXhlclwiO1xuIiwiQGNoYXJzZXQgXCJVVEYtOFwiO1xuXG4vLy8gQSBsaXN0IG9mIGFsbCBIVE1MIGJ1dHRvbiBlbGVtZW50cy5cbi8vL1xuLy8vIEB0eXBlIGxpc3Rcbi8vL1xuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuXG4kX2J1dHRvbnMtbGlzdDogKFxuICBcImJ1dHRvblwiLFxuICBcIlt0eXBlPSdidXR0b24nXVwiLFxuICBcIlt0eXBlPSdyZXNldCddXCIsXG4gIFwiW3R5cGU9J3N1Ym1pdCddXCIsXG4pO1xuIiwiQGNoYXJzZXQgXCJVVEYtOFwiO1xuXG4vLy8vXG4vLy8gUHJlLWRlZmluZWQgc2NhbGVzIGZvciB1c2Ugd2l0aCB0aGUgYG1vZHVsYXItc2NhbGVgIGZ1bmN0aW9uLlxuLy8vXG4vLy8gQHR5cGUgbnVtYmVyICh1bml0bGVzcylcbi8vL1xuLy8vIEBzZWUge2Z1bmN0aW9ufSBtb2R1bGFyLXNjYWxlXG4vLy8vXG5cbiRtaW5vci1zZWNvbmQ6ICAgICAxLjA2NztcbiRtYWpvci1zZWNvbmQ6ICAgICAxLjEyNTtcbiRtaW5vci10aGlyZDogICAgICAxLjI7XG4kbWFqb3ItdGhpcmQ6ICAgICAgMS4yNTtcbiRwZXJmZWN0LWZvdXJ0aDogICAxLjMzMztcbiRhdWdtZW50ZWQtZm91cnRoOiAxLjQxNDtcbiRwZXJmZWN0LWZpZnRoOiAgICAxLjU7XG4kbWlub3Itc2l4dGg6ICAgICAgMS42O1xuJGdvbGRlbjogICAgICAgICAgIDEuNjE4O1xuJG1ham9yLXNpeHRoOiAgICAgIDEuNjY3O1xuJG1pbm9yLXNldmVudGg6ICAgIDEuNzc4O1xuJG1ham9yLXNldmVudGg6ICAgIDEuODc1O1xuJG9jdGF2ZTogICAgICAgICAgIDI7XG4kbWFqb3ItdGVudGg6ICAgICAgMi41O1xuJG1ham9yLWVsZXZlbnRoOiAgIDIuNjY3O1xuJG1ham9yLXR3ZWxmdGg6ICAgIDM7XG4kZG91YmxlLW9jdGF2ZTogICAgNDtcbiIsIkBjaGFyc2V0IFwiVVRGLThcIjtcblxuLy8vIEEgbGlzdCBvZiBhbGwgX3RleHQtYmFzZWRfIEhUTUwgaW5wdXRzLlxuLy8vXG4vLy8gQHR5cGUgbGlzdFxuLy8vXG4vLy8gQGFjY2VzcyBwcml2YXRlXG5cbiRfdGV4dC1pbnB1dHMtbGlzdDogKFxuICBcIlt0eXBlPSdjb2xvciddXCIsXG4gIFwiW3R5cGU9J2RhdGUnXVwiLFxuICBcIlt0eXBlPSdkYXRldGltZSddXCIsXG4gIFwiW3R5cGU9J2RhdGV0aW1lLWxvY2FsJ11cIixcbiAgXCJbdHlwZT0nZW1haWwnXVwiLFxuICBcIlt0eXBlPSdtb250aCddXCIsXG4gIFwiW3R5cGU9J251bWJlciddXCIsXG4gIFwiW3R5cGU9J3Bhc3N3b3JkJ11cIixcbiAgXCJbdHlwZT0nc2VhcmNoJ11cIixcbiAgXCJbdHlwZT0ndGVsJ11cIixcbiAgXCJbdHlwZT0ndGV4dCddXCIsXG4gIFwiW3R5cGU9J3RpbWUnXVwiLFxuICBcIlt0eXBlPSd1cmwnXVwiLFxuICBcIlt0eXBlPSd3ZWVrJ11cIixcbiAgXCJpbnB1dDpub3QoW3R5cGVdKVwiLFxuICBcInRleHRhcmVhXCIsXG4pO1xuIiwiQGNoYXJzZXQgXCJVVEYtOFwiO1xuXG4vLy8gRGVmYXVsdCBnbG9iYWwgQm91cmJvbiBzZXR0aW5ncy4gVmFsdWVzIGluIHRoaXMgbWFwIGFyZSBvdmVyd3JpdHRlbiBieSBhbnlcbi8vLyB2YWx1ZXMgc2V0IGluIHRoZSBgJGJvdXJib25gIG1hcC5cbi8vL1xuLy8vIEB0eXBlIG1hcFxuLy8vXG4vLy8gQHByb3BlcnR5IHtjb2xvcn0gY29udHJhc3Qtc3dpdGNoLWRhcmstY29sb3IgWyMwMDBdXG4vLy8gICBHbG9iYWwgZGFyayBjb2xvciBmb3IgdGhlIGBjb250cmFzdC1zd2l0Y2hgIGZ1bmN0aW9uLlxuLy8vXG4vLy8gQHByb3BlcnR5IHtjb2xvcn0gY29udHJhc3Qtc3dpdGNoLWxpZ2h0LWNvbG9yIFsjZmZmXVxuLy8vICAgR2xvYmFsIGxpZ2h0IGNvbG9yIGZvciB0aGUgYGNvbnRyYXN0LXN3aXRjaGAgZnVuY3Rpb24uXG4vLy9cbi8vLyBAcHJvcGVydHkge2xpc3R9IGdsb2JhbC1mb250LWZpbGUtZm9ybWF0cyBbKFwidHRmXCIsIFwid29mZjJcIiwgXCJ3b2ZmXCIpXVxuLy8vICAgR2xvYmFsIGZvbnQgZmlsZSBmb3JtYXRzIGZvciB0aGUgYGZvbnQtZmFjZWAgbWl4aW4uXG4vLy9cbi8vLyBAcHJvcGVydHkge251bWJlciAod2l0aCB1bml0KX0gbW9kdWxhci1zY2FsZS1iYXNlIFsxZW1dXG4vLy8gICBHbG9iYWwgYmFzZSB2YWx1ZSBmb3IgdGhlIGBtb2R1bGFyLXNjYWxlYCBmdW5jdGlvbi5cbi8vL1xuLy8vIEBwcm9wZXJ0eSB7bnVtYmVyICh1bml0bGVzcyl9IG1vZHVsYXItc2NhbGUtcmF0aW8gWyRtYWpvci10aGlyZCAoMS4yNSldXG4vLy8gICBHbG9iYWwgYmFzZSByYXRpbyBmb3IgdGhlIGBtb2R1bGFyLXNjYWxlYCBmdW5jdGlvbi5cbi8vL1xuLy8vIEBwcm9wZXJ0eSB7Ym9vbGVhbn0gcmFpbHMtYXNzZXQtcGlwZWxpbmUgW2ZhbHNlXVxuLy8vICAgU2V0IHRoaXMgdG8gYHRydWVgIHdoZW4gdXNpbmcgdGhlIFJhaWxzIEFzc2V0IFBpcGVsaW5lIGFuZCBCb3VyYm9uIHdpbGxcbi8vLyAgIHdyaXRlIGFzc2V0IHBhdGhzIHVzaW5nXG4vLy8gICBbc2Fzcy1yYWlsc+KAmSBhc3NldCBoZWxwZXJzXShodHRwczovL2dpdGh1Yi5jb20vcmFpbHMvc2Fzcy1yYWlscyNhc3NldC1oZWxwZXJzKS5cbi8vL1xuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuXG4kX2JvdXJib24tZGVmYXVsdHM6IChcbiAgXCJjb250cmFzdC1zd2l0Y2gtZGFyay1jb2xvclwiOiAjMDAwLFxuICBcImNvbnRyYXN0LXN3aXRjaC1saWdodC1jb2xvclwiOiAjZmZmLFxuICBcImdsb2JhbC1mb250LWZpbGUtZm9ybWF0c1wiOiAoXCJ0dGZcIiwgXCJ3b2ZmMlwiLCBcIndvZmZcIiksXG4gIFwibW9kdWxhci1zY2FsZS1iYXNlXCI6IDFlbSxcbiAgXCJtb2R1bGFyLXNjYWxlLXJhdGlvXCI6ICRtYWpvci10aGlyZCxcbiAgXCJyYWlscy1hc3NldC1waXBlbGluZVwiOiBmYWxzZSxcbik7XG5cbi8vLyBHbG9iYWwgQm91cmJvbiBzZXR0aW5ncy5cbi8vL1xuLy8vIEBuYW1lIFNldHRpbmdzXG4vLy9cbi8vLyBAdHlwZSBtYXBcbi8vL1xuLy8vIEBwcm9wZXJ0eSB7Y29sb3J9IGNvbnRyYXN0LXN3aXRjaC1kYXJrLWNvbG9yIFsjMDAwXVxuLy8vICAgR2xvYmFsIGRhcmsgY29sb3IgZm9yIHRoZSBgY29udHJhc3Qtc3dpdGNoYCBmdW5jdGlvbi5cbi8vL1xuLy8vIEBwcm9wZXJ0eSB7Y29sb3J9IGNvbnRyYXN0LXN3aXRjaC1saWdodC1jb2xvciBbI2ZmZl1cbi8vLyAgIEdsb2JhbCBsaWdodCBjb2xvciBmb3IgdGhlIGBjb250cmFzdC1zd2l0Y2hgIGZ1bmN0aW9uLlxuLy8vXG4vLy8gQHByb3BlcnR5IHtsaXN0fSBnbG9iYWwtZm9udC1maWxlLWZvcm1hdHMgWyhcInR0ZlwiLCBcIndvZmYyXCIsIFwid29mZlwiKV1cbi8vLyAgIEdsb2JhbCBmb250IGZpbGUgZm9ybWF0cyBmb3IgdGhlIGBmb250LWZhY2VgIG1peGluLlxuLy8vXG4vLy8gQHByb3BlcnR5IHtudW1iZXIgKHdpdGggdW5pdCl9IG1vZHVsYXItc2NhbGUtYmFzZSBbMWVtXVxuLy8vICAgR2xvYmFsIGJhc2UgdmFsdWUgZm9yIHRoZSBgbW9kdWxhci1zY2FsZWAgZnVuY3Rpb24uXG4vLy9cbi8vLyBAcHJvcGVydHkge251bWJlciAodW5pdGxlc3MpfSBtb2R1bGFyLXNjYWxlLXJhdGlvIFskbWFqb3ItdGhpcmQgKDEuMjUpXVxuLy8vICAgR2xvYmFsIGJhc2UgcmF0aW8gZm9yIHRoZSBgbW9kdWxhci1zY2FsZWAgZnVuY3Rpb24uXG4vLy9cbi8vLyBAcHJvcGVydHkge2Jvb2xlYW59IHJhaWxzLWFzc2V0LXBpcGVsaW5lIFtmYWxzZV1cbi8vLyAgIFNldCB0aGlzIHRvIGB0cnVlYCB3aGVuIHVzaW5nIHRoZSBSYWlscyBBc3NldCBQaXBlbGluZSBhbmQgQm91cmJvbiB3aWxsXG4vLy8gICB3cml0ZSBhc3NldCBwYXRocyB1c2luZ1xuLy8vICAgW3Nhc3MtcmFpbHPigJkgYXNzZXQgaGVscGVyc10oaHR0cHM6Ly9naXRodWIuY29tL3JhaWxzL3Nhc3MtcmFpbHMjYXNzZXQtaGVscGVycykuXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzXG4vLy8gICAkYm91cmJvbjogKFxuLy8vICAgICBcImNvbnRyYXN0LXN3aXRjaC1kYXJrLWNvbG9yXCI6ICMwMDAsXG4vLy8gICAgIFwiY29udHJhc3Qtc3dpdGNoLWxpZ2h0LWNvbG9yXCI6ICNmZmYsXG4vLy8gICAgIFwiZ2xvYmFsLWZvbnQtZmlsZS1mb3JtYXRzXCI6IChcInR0ZlwiLCBcIndvZmYyXCIsIFwid29mZlwiKSxcbi8vLyAgICAgXCJtb2R1bGFyLXNjYWxlLWJhc2VcIjogMWVtLFxuLy8vICAgICBcIm1vZHVsYXItc2NhbGUtcmF0aW9cIjogJG1ham9yLXRoaXJkLFxuLy8vICAgICBcInJhaWxzLWFzc2V0LXBpcGVsaW5lXCI6IGZhbHNlLFxuLy8vICAgKTtcblxuJGJvdXJib246ICgpICFkZWZhdWx0O1xuIiwiQGNoYXJzZXQgXCJVVEYtOFwiO1xuXG4vLy8gQ2hlY2tzIGlmIGEgbGlzdCBjb250YWlucyBhIHZhbHVlKHMpLlxuLy8vXG4vLy8gQGFyZ3VtZW50IHtsaXN0fSAkbGlzdFxuLy8vICAgVGhlIGxpc3QgdG8gY2hlY2sgYWdhaW5zdC5cbi8vL1xuLy8vIEBhcmd1bWVudCB7bGlzdH0gJHZhbHVlc1xuLy8vICAgQSBzaW5nbGUgdmFsdWUgb3IgbGlzdCBvZiB2YWx1ZXMgdG8gY2hlY2sgZm9yLlxuLy8vXG4vLy8gQHJldHVybiB7Ym9vbGVhbn1cbi8vL1xuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuXG5AZnVuY3Rpb24gX2NvbnRhaW5zKFxuICAkbGlzdCxcbiAgJHZhbHVlcy4uLlxuKSB7XG4gIEBlYWNoICR2YWx1ZSBpbiAkdmFsdWVzIHtcbiAgICBAaWYgdHlwZS1vZihpbmRleCgkbGlzdCwgJHZhbHVlKSkgIT0gXCJudW1iZXJcIiB7XG4gICAgICBAcmV0dXJuIGZhbHNlO1xuICAgIH1cbiAgfVxuXG4gIEByZXR1cm4gdHJ1ZTtcbn1cbiIsIkBjaGFyc2V0IFwiVVRGLThcIjtcblxuLy8vIENoZWNrcyBpZiBhIGxpc3QgZG9lcyBub3QgY29udGFpbiBhbnkgdmFsdWVzLlxuLy8vXG4vLy8gQGFyZ3VtZW50IHtsaXN0fSAkbGlzdFxuLy8vICAgVGhlIGxpc3QgdG8gY2hlY2sgYWdhaW5zdC5cbi8vL1xuLy8vIEByZXR1cm4ge2Jvb2xlYW59XG4vLy9cbi8vLyBAYWNjZXNzIHByaXZhdGVcblxuQGZ1bmN0aW9uIF9jb250YWlucy1mYWxzeSgkbGlzdCkge1xuICBAZWFjaCAkaXRlbSBpbiAkbGlzdCB7XG4gICAgQGlmIG5vdCAkaXRlbSB7XG4gICAgICBAcmV0dXJuIHRydWU7XG4gICAgfVxuICB9XG5cbiAgQHJldHVybiBmYWxzZTtcbn1cbiIsIkBjaGFyc2V0IFwiVVRGLThcIjtcblxuLy8vIENoZWNrcyBmb3IgYSB2YWxpZCBDU1MgY29sb3IuXG4vLy9cbi8vLyBAYXJndW1lbnQge3N0cmluZ30gJGNvbG9yXG4vLy9cbi8vLyBAcmV0dXJuIHtib29sZWFufVxuLy8vXG4vLy8gQGFjY2VzcyBwcml2YXRlXG5cbkBmdW5jdGlvbiBfaXMtY29sb3IoJGNvbG9yKSB7XG4gIEByZXR1cm4gKHR5cGUtb2YoJGNvbG9yKSA9PSBjb2xvcikgb3IgKCRjb2xvciA9PSBcImN1cnJlbnRDb2xvclwiKTtcbn1cbiIsIkBjaGFyc2V0IFwiVVRGLThcIjtcblxuLy8vIENoZWNrcyBmb3IgYSB2YWxpZCBDU1MgbGVuZ3RoLlxuLy8vXG4vLy8gQGFyZ3VtZW50IHtzdHJpbmd9ICR2YWx1ZVxuLy8vXG4vLy8gQHJldHVybiB7Ym9vbGVhbn1cbi8vL1xuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuXG5AZnVuY3Rpb24gX2lzLWxlbmd0aCgkdmFsdWUpIHtcbiAgQHJldHVybiB0eXBlLW9mKCR2YWx1ZSkgIT0gXCJudWxsXCIgYW5kIChzdHItc2xpY2UoJHZhbHVlICsgXCJcIiwgMSwgNCkgPT0gXCJjYWxjXCJcbiAgICAgICBvciBpbmRleChhdXRvIGluaGVyaXQgaW5pdGlhbCAwLCAkdmFsdWUpXG4gICAgICAgb3IgKHR5cGUtb2YoJHZhbHVlKSA9PSBcIm51bWJlclwiIGFuZCBub3QodW5pdGxlc3MoJHZhbHVlKSkpKTtcbn1cbiIsIkBjaGFyc2V0IFwiVVRGLThcIjtcblxuLy8vIENoZWNrcyBmb3IgYSB2YWxpZCBudW1iZXIuXG4vLy9cbi8vLyBAYXJndW1lbnQge251bWJlcn0gJHZhbHVlXG4vLy9cbi8vLyBAcmVxdWlyZSB7ZnVuY3Rpb259IF9jb250YWluc1xuLy8vXG4vLy8gQHJldHVybiB7Ym9vbGVhbn1cbi8vL1xuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuXG5AZnVuY3Rpb24gX2lzLW51bWJlcigkdmFsdWUpIHtcbiAgQHJldHVybiBfY29udGFpbnMoXCIwXCIgXCIxXCIgXCIyXCIgXCIzXCIgXCI0XCIgXCI1XCIgXCI2XCIgXCI3XCIgXCI4XCIgXCI5XCIgMCAxIDIgMyA0IDUgNiA3IDggOSwgJHZhbHVlKTtcbn1cbiIsIkBjaGFyc2V0IFwiVVRGLThcIjtcblxuLy8vIENoZWNrcyBmb3IgYSB2YWxpZCBDU1Mgc2l6ZS5cbi8vL1xuLy8vIEBhcmd1bWVudCB7c3RyaW5nfSAkdmFsdWVcbi8vL1xuLy8vIEByZXR1cm4ge2Jvb2xlYW59XG4vLy9cbi8vLyBAcmVxdWlyZSB7ZnVuY3Rpb259IF9jb250YWluc1xuLy8vXG4vLy8gQHJlcXVpcmUge2Z1bmN0aW9ufSBfaXMtbGVuZ3RoXG4vLy9cbi8vLyBAYWNjZXNzIHByaXZhdGVcblxuQGZ1bmN0aW9uIF9pcy1zaXplKCR2YWx1ZSkge1xuICBAcmV0dXJuIF9pcy1sZW5ndGgoJHZhbHVlKVxuICAgICAgICAgIG9yIF9jb250YWlucyhcImZpbGxcIiBcImZpdC1jb250ZW50XCIgXCJtaW4tY29udGVudFwiIFwibWF4LWNvbnRlbnRcIiwgJHZhbHVlKTtcbn1cbiIsIkBjaGFyc2V0IFwiVVRGLThcIjtcblxuLy8vIEFwcGVuZCBwc2V1ZG8tY2xhc3NlcyB0byBhIHNlbGVjdG9yKHMpLlxuLy8vXG4vLy8gQGFyZ3VtZW50IHtsaXN0IHwgc3RyaW5nfSAkaW5wdXRzXG4vLy8gICBBIHNlbGVjdG9yLCBvciBsaXN0IG9mIHNlbGVjdG9ycywgdG8gYXBwbHkgdGhlIHBzZXVkby1jbGFzcyB0by5cbi8vL1xuLy8vIEBhcmd1bWVudCB7cHNldWRvLWNsYXNzfSAkcHNldWRvIFtudWxsXVxuLy8vICAgVGhlIHBzZXVkby1jbGFzcyB0byBiZSBhcHBlbmRlZC5cbi8vL1xuLy8vIEByZXR1cm4ge2xpc3R9XG4vLy9cbi8vLyBAYWNjZXNzIHByaXZhdGVcblxuQGZ1bmN0aW9uIF9hc3NpZ24taW5wdXRzKFxuICAkaW5wdXRzLFxuICAkcHNldWRvOiBudWxsXG4pIHtcbiAgJGxpc3Q6ICgpO1xuXG4gIEBlYWNoICRpbnB1dCBpbiAkaW5wdXRzIHtcbiAgICAkaW5wdXQ6IHVucXVvdGUoJGlucHV0KTtcbiAgICAkaW5wdXQ6IGlmKCRwc2V1ZG8sICRpbnB1dCArIFwiOlwiICsgJHBzZXVkbywgJGlucHV0KTtcbiAgICAkbGlzdDogYXBwZW5kKCRsaXN0LCAkaW5wdXQsIGNvbW1hKTtcbiAgfVxuXG4gIEByZXR1cm4gJGxpc3Q7XG59XG4iLCJAY2hhcnNldCBcIlVURi04XCI7XG5cbi8vIHNjc3MtbGludDpkaXNhYmxlIEVsc2VQbGFjZW1lbnRcblxuLy8vIFRyYW5zZm9ybXMgc2hvcnRoYW5kIHRvIGl0cyBzaG9ydGVzdCBwb3NzaWJsZSBmb3JtLlxuLy8vXG4vLy8gQGFyZ3VtZW50IHtsaXN0fSAkdmFsdWVzXG4vLy8gICBMaXN0IG9mIGRpcmVjdGlvbmFsIHZhbHVlcy5cbi8vL1xuLy8vIEBleGFtcGxlIHNjc3Ncbi8vLyAgICR2YWx1ZXM6IF9jb21wYWN0LXNob3J0aGFuZCgxMHB4IDIwcHggMTBweCAyMHB4KTtcbi8vL1xuLy8vICAgLy8gT3V0cHV0XG4vLy8gICAkdmFsdWVzOiAxMHB4IDIwcHg7XG4vLy9cbi8vLyBAcmV0dXJuIHtsaXN0fVxuLy8vXG4vLy8gQGFjY2VzcyBwcml2YXRlXG5cbkBmdW5jdGlvbiBfY29tcGFjdC1zaG9ydGhhbmQoJHZhbHVlcykge1xuICAkb3V0cHV0OiBudWxsO1xuXG4gICRhOiBudGgoJHZhbHVlcywgMSk7XG4gICRiOiBpZihsZW5ndGgoJHZhbHVlcykgPCAyLCAkYSwgbnRoKCR2YWx1ZXMsIDIpKTtcbiAgJGM6IGlmKGxlbmd0aCgkdmFsdWVzKSA8IDMsICRhLCBudGgoJHZhbHVlcywgMykpO1xuICAkZDogaWYobGVuZ3RoKCR2YWx1ZXMpIDwgMiwgJGEsIG50aCgkdmFsdWVzLCBpZihsZW5ndGgoJHZhbHVlcykgPCA0LCAyLCA0KSkpO1xuXG4gIEBpZiAkYSA9PSAwIHsgJGE6IDA7IH1cbiAgQGlmICRiID09IDAgeyAkYjogMDsgfVxuICBAaWYgJGMgPT0gMCB7ICRjOiAwOyB9XG4gIEBpZiAkZCA9PSAwIHsgJGQ6IDA7IH1cblxuICBAaWYgJGEgPT0gJGIgYW5kICRhID09ICRjIGFuZCAkYSA9PSAkZCB7ICRvdXRwdXQ6ICRhOyAgICAgICAgICB9XG4gIEBlbHNlIGlmICRhID09ICRjIGFuZCAkYiA9PSAkZCAgICAgICAgIHsgJG91dHB1dDogJGEgJGI7ICAgICAgIH1cbiAgQGVsc2UgaWYgJGIgPT0gJGQgICAgICAgICAgICAgICAgICAgICAgeyAkb3V0cHV0OiAkYSAkYiAkYzsgICAgfVxuICBAZWxzZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7ICRvdXRwdXQ6ICRhICRiICRjICRkOyB9XG5cbiAgQHJldHVybiAkb3V0cHV0O1xufVxuIiwiQGNoYXJzZXQgXCJVVEYtOFwiO1xuXG4vLyBzY3NzLWxpbnQ6ZGlzYWJsZSBTcGFjZUFyb3VuZE9wZXJhdG9yXG5cbi8vLyBCdWlsZHMgZGlyZWN0aW9uYWwgcHJvcGVydGllcyBieSBwYXJzaW5nIENTUyBzaG9ydGhhbmQgdmFsdWVzLiBGb3IgZXhhbXBsZSxcbi8vLyBhIHZhbHVlIG9mIGAxMHB4IG51bGxgIHdpbGwgb3V0cHV0IHRvcCBhbmQgYm90dG9tIGRpcmVjdGlvbmFsIHByb3BlcnRpZXMsXG4vLy8gYnV0IHRoZSBgbnVsbGAgc2tpcHMgbGVmdCBhbmQgcmlnaHQgZnJvbSBiZWluZyBvdXRwdXQuXG4vLy9cbi8vLyBAYXJndW1lbnQge3N0cmluZ30gJHByb3BlcnR5XG4vLy8gICBCYXNlIHByb3BlcnR5LlxuLy8vXG4vLy8gQGFyZ3VtZW50IHtzdHJpbmd9ICRzdWZmaXhcbi8vLyAgIFN1ZmZpeCB0byBhcHBlbmQuIFVzZSBgbnVsbGAgdG8gb21pdC5cbi8vL1xuLy8vIEBhcmd1bWVudCB7bGlzdH0gJHZhbHVlc1xuLy8vICAgTGlzdCBvZiB2YWx1ZXMgdG8gc2V0IGZvciB0aGUgcHJvcGVydHkuXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzXG4vLy8gICAuZWxlbWVudCB7XG4vLy8gICAgIEBpbmNsdWRlIF9kaXJlY3Rpb25hbC1wcm9wZXJ0eShib3JkZXIsIHdpZHRoLCBudWxsIDVweCk7XG4vLy8gICB9XG4vLy9cbi8vLyAgIC8vIENTUyBPdXRwdXRcbi8vLyAgIC5lbGVtZW50IHtcbi8vLyAgICAgYm9yZGVyLXJpZ2h0LXdpZHRoOiA1cHg7XG4vLy8gICAgIGJvcmRlci1sZWZ0LXdpZHRoOiA1cHg7XG4vLy8gICB9XG4vLy9cbi8vLyBAcmVxdWlyZSB7ZnVuY3Rpb259IF9jb21wYWN0LXNob3J0aGFuZFxuLy8vXG4vLy8gQHJlcXVpcmUge2Z1bmN0aW9ufSBfY29udGFpbnMtZmFsc3lcbi8vL1xuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuXG5AbWl4aW4gX2RpcmVjdGlvbmFsLXByb3BlcnR5KFxuICAkcHJvcGVydHksXG4gICRzdWZmaXgsXG4gICR2YWx1ZXNcbikge1xuICAkdG9wOiAgICAkcHJvcGVydHkgKyBcIi10b3BcIiAgICArIGlmKCRzdWZmaXgsIFwiLSN7JHN1ZmZpeH1cIiwgXCJcIik7XG4gICRib3R0b206ICRwcm9wZXJ0eSArIFwiLWJvdHRvbVwiICsgaWYoJHN1ZmZpeCwgXCItI3skc3VmZml4fVwiLCBcIlwiKTtcbiAgJGxlZnQ6ICAgJHByb3BlcnR5ICsgXCItbGVmdFwiICAgKyBpZigkc3VmZml4LCBcIi0jeyRzdWZmaXh9XCIsIFwiXCIpO1xuICAkcmlnaHQ6ICAkcHJvcGVydHkgKyBcIi1yaWdodFwiICArIGlmKCRzdWZmaXgsIFwiLSN7JHN1ZmZpeH1cIiwgXCJcIik7XG4gICRhbGw6ICAgICRwcm9wZXJ0eSArICAgICAgICAgICAgIGlmKCRzdWZmaXgsIFwiLSN7JHN1ZmZpeH1cIiwgXCJcIik7XG5cbiAgJHZhbHVlczogX2NvbXBhY3Qtc2hvcnRoYW5kKCR2YWx1ZXMpO1xuXG4gIEBpZiBfY29udGFpbnMtZmFsc3koJHZhbHVlcykge1xuICAgIEBpZiBudGgoJHZhbHVlcywgMSkgeyAjeyR0b3B9OiBudGgoJHZhbHVlcywgMSk7IH1cblxuICAgIEBpZiBsZW5ndGgoJHZhbHVlcykgPT0gMSB7XG4gICAgICBAaWYgbnRoKCR2YWx1ZXMsIDEpIHsgI3skcmlnaHR9OiBudGgoJHZhbHVlcywgMSk7IH1cbiAgICB9IEBlbHNlIHtcbiAgICAgIEBpZiBudGgoJHZhbHVlcywgMikgeyAjeyRyaWdodH06IG50aCgkdmFsdWVzLCAyKTsgfVxuICAgIH1cblxuICAgIEBpZiBsZW5ndGgoJHZhbHVlcykgPT0gMiB7XG4gICAgICBAaWYgbnRoKCR2YWx1ZXMsIDEpIHsgI3skYm90dG9tfTogbnRoKCR2YWx1ZXMsIDEpOyB9XG4gICAgICBAaWYgbnRoKCR2YWx1ZXMsIDIpIHsgI3skbGVmdH06IG50aCgkdmFsdWVzLCAyKTsgfVxuICAgIH0gQGVsc2UgaWYgbGVuZ3RoKCR2YWx1ZXMpID09IDMge1xuICAgICAgQGlmIG50aCgkdmFsdWVzLCAzKSB7ICN7JGJvdHRvbX06IG50aCgkdmFsdWVzLCAzKTsgfVxuICAgICAgQGlmIG50aCgkdmFsdWVzLCAyKSB7ICN7JGxlZnR9OiBudGgoJHZhbHVlcywgMik7IH1cbiAgICB9IEBlbHNlIGlmIGxlbmd0aCgkdmFsdWVzKSA9PSA0IHtcbiAgICAgIEBpZiBudGgoJHZhbHVlcywgMykgeyAjeyRib3R0b219OiBudGgoJHZhbHVlcywgMyk7IH1cbiAgICAgIEBpZiBudGgoJHZhbHVlcywgNCkgeyAjeyRsZWZ0fTogbnRoKCR2YWx1ZXMsIDQpOyB9XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICAjeyRhbGx9OiAkdmFsdWVzO1xuICB9XG59XG4iLCJAY2hhcnNldCBcIlVURi04XCI7XG5cbi8vLyBSZXR1cm4gYSBCb3VyYm9uIHNldHRpbmcuXG4vLy9cbi8vLyBAYXJndW1lbnQge3N0cmluZ30gJHNldHRpbmdcbi8vL1xuLy8vIEByZXR1cm4ge2Jvb2xlYW4gfCBjb2xvciB8IGxpc3QgfCBudW1iZXIgfCBzdHJpbmd9XG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzXG4vLy8gICBfZmV0Y2gtYm91cmJvbi1zZXR0aW5nKHJhaWxzLWFzc2V0LXBpcGVsaW5lKVxuLy8vXG4vLy8gQGFjY2VzcyBwcml2YXRlXG5cbkBmdW5jdGlvbiBfZmV0Y2gtYm91cmJvbi1zZXR0aW5nKCRzZXR0aW5nKSB7XG4gIEByZXR1cm4gbWFwLWdldChtYXAtbWVyZ2UoJF9ib3VyYm9uLWRlZmF1bHRzLCAkYm91cmJvbiksICRzZXR0aW5nKTtcbn1cbiIsIkBjaGFyc2V0IFwiVVRGLThcIjtcblxuLy8vIEJ1aWxkcyB0aGUgYHNyY2AgbGlzdCBmb3IgYW4gYEBmb250LWZhY2VgIGRlY2xhcmF0aW9uLlxuLy8vXG4vLy8gQGxpbmsgaHR0cHM6Ly9nb28uZ2wvUnUxYktQXG4vLy9cbi8vLyBAYXJndW1lbnQge3N0cmluZ30gJGZvbnQtZmFtaWx5XG4vLy9cbi8vLyBAYXJndW1lbnQge3N0cmluZ30gJGZpbGUtcGF0aFxuLy8vXG4vLy8gQGFyZ3VtZW50IHtib29sZWFufSAkYXNzZXQtcGlwZWxpbmVcbi8vL1xuLy8vIEBhcmd1bWVudCB7bGlzdH0gJGZpbGUtZm9ybWF0c1xuLy8vXG4vLy8gQHJldHVybiB7bGlzdH1cbi8vL1xuLy8vIEByZXF1aXJlIHtmdW5jdGlvbn0gX2NvbnRhaW5zXG4vLy9cbi8vLyBAYWNjZXNzIHByaXZhdGVcblxuQGZ1bmN0aW9uIF9mb250LXNvdXJjZS1kZWNsYXJhdGlvbihcbiAgJGZvbnQtZmFtaWx5LFxuICAkZmlsZS1wYXRoLFxuICAkYXNzZXQtcGlwZWxpbmUsXG4gICRmaWxlLWZvcm1hdHNcbikge1xuICAkc3JjOiAoKTtcblxuICAkZm9ybWF0cy1tYXA6IChcbiAgICBlb3Q6ICAgXCIjeyRmaWxlLXBhdGh9LmVvdD8jaWVmaXhcIiBmb3JtYXQoXCJlbWJlZGRlZC1vcGVudHlwZVwiKSxcbiAgICB3b2ZmMjogXCIjeyRmaWxlLXBhdGh9LndvZmYyXCIgZm9ybWF0KFwid29mZjJcIiksXG4gICAgd29mZjogIFwiI3skZmlsZS1wYXRofS53b2ZmXCIgZm9ybWF0KFwid29mZlwiKSxcbiAgICB0dGY6ICAgXCIjeyRmaWxlLXBhdGh9LnR0ZlwiIGZvcm1hdChcInRydWV0eXBlXCIpLFxuICAgIHN2ZzogICBcIiN7JGZpbGUtcGF0aH0uc3ZnIyN7JGZvbnQtZmFtaWx5fVwiIGZvcm1hdChcInN2Z1wiKSxcbiAgKTtcblxuICBAZWFjaCAka2V5LCAkdmFsdWVzIGluICRmb3JtYXRzLW1hcCB7XG4gICAgQGlmIF9jb250YWlucygkZmlsZS1mb3JtYXRzLCAka2V5KSB7XG4gICAgICAkZmlsZS1wYXRoOiBudGgoJHZhbHVlcywgMSk7XG4gICAgICAkZm9udC1mb3JtYXQ6IG50aCgkdmFsdWVzLCAyKTtcblxuICAgICAgQGlmICRhc3NldC1waXBlbGluZSA9PSB0cnVlIHtcbiAgICAgICAgJHNyYzogYXBwZW5kKCRzcmMsIGZvbnQtdXJsKCRmaWxlLXBhdGgpICRmb250LWZvcm1hdCwgY29tbWEpO1xuICAgICAgfSBAZWxzZSB7XG4gICAgICAgICRzcmM6IGFwcGVuZCgkc3JjLCB1cmwoJGZpbGUtcGF0aCkgJGZvbnQtZm9ybWF0LCBjb21tYSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQHJldHVybiAkc3JjO1xufVxuIiwiQGNoYXJzZXQgXCJVVEYtOFwiO1xuXG4vLy8gUGVyZm9ybXMgZ2FtbWEgY29ycmVjdGlvbiBvbiBhIHNpbmdsZSBjb2xvciBjaGFubmVsLlxuLy8vXG4vLy8gTm90ZSB0aGF0IFNhc3MgZG9lcyBub3QgaGF2ZSBhIGBwb3coKWAgZnVuY3Rpb24sIHNvIHRoZSBjYWxjdWxhdGlvblxuLy8vIGlzIGFwcHJveGltYXRlLlxuLy8vXG4vLy8gQGFyZ3VtZW50IHtudW1iZXIgKDAtMSl9ICRjaGFubmVsXG4vLy9cbi8vLyBAcmV0dXJuIHtudW1iZXIgKDAtMSl9XG4vLy9cbi8vLyBAYWNjZXNzIHByaXZhdGVcblxuQGZ1bmN0aW9uIF9nYW1tYSgkY2hhbm5lbCkge1xuICBAaWYgJGNoYW5uZWwgPCAwLjAzOTI4IHtcbiAgICBAcmV0dXJuICRjaGFubmVsIC8gMTIuOTI7XG4gIH0gQGVsc2Uge1xuICAgICRjOiAoJGNoYW5uZWwgKyAwLjA1NSkgLyAxLjA1NTtcbiAgICBAcmV0dXJuICgxMzMgKiAkYyAqICRjICogJGMgKyAxNTUgKiAkYyAqICRjKSAvIDI4ODtcbiAgfVxufVxuIiwiQGNoYXJzZXQgXCJVVEYtOFwiO1xuXG4vLy8gUHJvZ3JhbWF0aWNhbGx5IGRldGVybWluZXMgdGhlIGxpZ2h0bmVzcyBvZiBhIGNvbG9yLlxuLy8vXG4vLy8gQGFyZ3VtZW50IHtjb2xvciAoaGV4KX0gJGhleC1jb2xvclxuLy8vXG4vLy8gQHJldHVybiB7bnVtYmVyICgwLTEpfVxuLy8vXG4vLy8gQGV4YW1wbGUgc2Nzc1xuLy8vICAgX2xpZ2h0bmVzcygkY29sb3IpXG4vLy9cbi8vLyBAYWNjZXNzIHByaXZhdGVcblxuQGZ1bmN0aW9uIF9saWdodG5lc3MoJGhleC1jb2xvcikge1xuICAkLWxvY2FsLXJlZC1yYXc6IHJlZChyZ2JhKCRoZXgtY29sb3IsIDEpKTtcbiAgJC1sb2NhbC1ncmVlbi1yYXc6IGdyZWVuKHJnYmEoJGhleC1jb2xvciwgMSkpO1xuICAkLWxvY2FsLWJsdWUtcmF3OiBibHVlKHJnYmEoJGhleC1jb2xvciwgMSkpO1xuXG4gICQtbG9jYWwtcmVkOiBfZ2FtbWEoJC1sb2NhbC1yZWQtcmF3IC8gMjU1KTtcbiAgJC1sb2NhbC1ncmVlbjogX2dhbW1hKCQtbG9jYWwtZ3JlZW4tcmF3IC8gMjU1KTtcbiAgJC1sb2NhbC1ibHVlOiBfZ2FtbWEoJC1sb2NhbC1ibHVlLXJhdyAvIDI1NSk7XG5cbiAgQHJldHVybiAkLWxvY2FsLXJlZCAqIDAuMjEyNiArICQtbG9jYWwtZ3JlZW4gKiAwLjcxNTIgKyAkLWxvY2FsLWJsdWUgKiAwLjA3MjI7XG59XG4iLCJAY2hhcnNldCBcIlVURi04XCI7XG5cbi8vLyBQcm9ncmFtYXRpY2FsbHkgZGV0ZXJtaW5lcyB0aGUgY29udHJhc3QgcmF0aW8gYmV0d2VlbiB0d28gY29sb3JzLlxuLy8vXG4vLy8gTm90ZSB0aGF0IHRoZSBhbHBoYSBjaGFubmVsIGlzIGlnbm9yZWQuXG4vLy9cbi8vLyBAbGluayBodHRwczovL2dvby5nbC81NGh0TFZcbi8vL1xuLy8vIEBhcmd1bWVudCB7Y29sb3IgKGhleCl9ICRjb2xvci0xXG4vLy9cbi8vLyBAYXJndW1lbnQge2NvbG9yIChoZXgpfSAkY29sb3ItMlxuLy8vXG4vLy8gQHJldHVybiB7bnVtYmVyICgxLTIxKX1cbi8vL1xuLy8vIEBleGFtcGxlIHNjc3Ncbi8vLyAgIF9jb250cmFzdC1yYXRpbyhibGFjaywgd2hpdGUpXG4vLy9cbi8vLyBAcmVxdWlyZSB7ZnVuY3Rpb259IF9saWdodG5lc3Ncbi8vL1xuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuXG5AZnVuY3Rpb24gX2NvbnRyYXN0LXJhdGlvKCRjb2xvci0xLCAkY29sb3ItMikge1xuICAkLWxvY2FsLWxpZ2h0bmVzcy0xOiBfbGlnaHRuZXNzKCRjb2xvci0xKSArIDAuMDU7XG4gICQtbG9jYWwtbGlnaHRuZXNzLTI6IF9saWdodG5lc3MoJGNvbG9yLTIpICsgMC4wNTtcblxuICBAaWYgJC1sb2NhbC1saWdodG5lc3MtMSA+ICQtbG9jYWwtbGlnaHRuZXNzLTIge1xuICAgIEByZXR1cm4gJC1sb2NhbC1saWdodG5lc3MtMSAvICQtbG9jYWwtbGlnaHRuZXNzLTI7XG4gIH0gQGVsc2Uge1xuICAgIEByZXR1cm4gJC1sb2NhbC1saWdodG5lc3MtMiAvICQtbG9jYWwtbGlnaHRuZXNzLTE7XG4gIH1cbn1cbiIsIkBjaGFyc2V0IFwiVVRGLThcIjtcblxuLy8vIFRyYW5zZm9ybXMgc2hvcnRoYW5kIHRoYXQgY2FuIHJhbmdlIGZyb20gMS10by00IHZhbHVlcyB0byBiZSA0IHZhbHVlcy5cbi8vL1xuLy8vIEBhcmd1bWVudCB7bGlzdH0gJHNob3J0aGFuZFxuLy8vXG4vLy8gQGV4YW1wbGUgc2Nzc1xuLy8vICAgLmVsZW1lbnQge1xuLy8vICAgICBtYXJnaW46IF91bnBhY2stc2hvcnRoYW5kKDFlbSAyZW0pO1xuLy8vICAgfVxuLy8vXG4vLy8gICAvLyBDU1MgT3V0cHV0XG4vLy8gICAuZWxlbWVudCB7XG4vLy8gICAgIG1hcmdpbjogMWVtIDJlbSAxZW0gMmVtO1xuLy8vICAgfVxuLy8vXG4vLy8gQGFjY2VzcyBwcml2YXRlXG5cbkBmdW5jdGlvbiBfdW5wYWNrLXNob3J0aGFuZCgkc2hvcnRoYW5kKSB7XG4gIEBpZiBsZW5ndGgoJHNob3J0aGFuZCkgPT0gMSB7XG4gICAgQHJldHVybiBudGgoJHNob3J0aGFuZCwgMSkgbnRoKCRzaG9ydGhhbmQsIDEpIG50aCgkc2hvcnRoYW5kLCAxKSBudGgoJHNob3J0aGFuZCwgMSk7XG4gIH0gQGVsc2UgaWYgbGVuZ3RoKCRzaG9ydGhhbmQpID09IDIge1xuICAgIEByZXR1cm4gbnRoKCRzaG9ydGhhbmQsIDEpIG50aCgkc2hvcnRoYW5kLCAyKSBudGgoJHNob3J0aGFuZCwgMSkgbnRoKCRzaG9ydGhhbmQsIDIpO1xuICB9IEBlbHNlIGlmIGxlbmd0aCgkc2hvcnRoYW5kKSA9PSAzIHtcbiAgICBAcmV0dXJuIG50aCgkc2hvcnRoYW5kLCAxKSBudGgoJHNob3J0aGFuZCwgMikgbnRoKCRzaG9ydGhhbmQsIDMpIG50aCgkc2hvcnRoYW5kLCAyKTtcbiAgfSBAZWxzZSB7XG4gICAgQHJldHVybiAkc2hvcnRoYW5kO1xuICB9XG59XG4iLCJAY2hhcnNldCBcIlVURi04XCI7XG5cbi8vLyBQcm92aWRlcyBhIGNvbmNpc2UsIG9uZS1saW5lIG1ldGhvZCBmb3Igc2V0dGluZyBgYm9yZGVyLWNvbG9yYCBvbiBzcGVjaWZpY1xuLy8vIGVkZ2VzIG9mIGEgYm94LiBVc2UgYSBgbnVsbGAgdmFsdWUgdG8g4oCcc2tpcOKAnSBlZGdlcyBvZiB0aGUgYm94IHdpdGggc3RhbmRhcmRcbi8vLyBDU1Mgc2hvcnRoYW5kLlxuLy8vXG4vLy8gQGFyZ3VtZW50IHtsaXN0fSAkdmFsdWVzXG4vLy8gICBMaXN0IG9mIGNvbG9yczsgYWNjZXB0cyBDU1Mgc2hvcnRoYW5kLlxuLy8vXG4vLy8gQGV4YW1wbGUgc2Nzc1xuLy8vICAgLmVsZW1lbnQge1xuLy8vICAgICBAaW5jbHVkZSBib3JkZXItY29sb3IoI2E2MGI1NSAjNzZjZDljIG51bGwgI2U4YWUxYSk7XG4vLy8gICB9XG4vLy9cbi8vLyAgIC8vIENTUyBPdXRwdXRcbi8vLyAgIC5lbGVtZW50IHtcbi8vLyAgICAgYm9yZGVyLWxlZnQtY29sb3I6ICNlOGFlMWE7XG4vLy8gICAgIGJvcmRlci1yaWdodC1jb2xvcjogIzc2Y2Q5Yztcbi8vLyAgICAgYm9yZGVyLXRvcC1jb2xvcjogI2E2MGI1NTtcbi8vLyAgIH1cbi8vL1xuLy8vIEByZXF1aXJlIHttaXhpbn0gX2RpcmVjdGlvbmFsLXByb3BlcnR5XG5cbkBtaXhpbiBib3JkZXItY29sb3IoJHZhbHVlcykge1xuICBAaW5jbHVkZSBfZGlyZWN0aW9uYWwtcHJvcGVydHkoYm9yZGVyLCBjb2xvciwgJHZhbHVlcyk7XG59XG4iLCJAY2hhcnNldCBcIlVURi04XCI7XG5cbi8vLyBQcm92aWRlcyBhIGNvbmNpc2UsIG9uZS1saW5lIG1ldGhvZCBmb3Igc2V0dGluZyBgYm9yZGVyLXJhZGl1c2Agb24gYm90aCB0aGVcbi8vLyB0b3AtbGVmdCBhbmQgdG9wLXJpZ2h0IG9mIGEgYm94LlxuLy8vXG4vLy8gQGFyZ3VtZW50IHtudW1iZXIgKHdpdGggdW5pdCl9ICRyYWRpaVxuLy8vXG4vLy8gQGV4YW1wbGUgc2Nzc1xuLy8vICAgLmVsZW1lbnQge1xuLy8vICAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cyg0cHgpO1xuLy8vICAgfVxuLy8vXG4vLy8gICAvLyBDU1MgT3V0cHV0XG4vLy8gICAuZWxlbWVudCB7XG4vLy8gICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDRweDtcbi8vLyAgICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDRweDtcbi8vLyAgIH1cblxuQG1peGluIGJvcmRlci10b3AtcmFkaXVzKCRyYWRpaSkge1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAkcmFkaWk7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAkcmFkaWk7XG59XG5cbi8vLyBQcm92aWRlcyBhIGNvbmNpc2UsIG9uZS1saW5lIG1ldGhvZCBmb3Igc2V0dGluZyBgYm9yZGVyLXJhZGl1c2Agb24gYm90aCB0aGVcbi8vLyB0b3AtcmlnaHQgYW5kIGJvdHRvbS1yaWdodCBvZiBhIGJveC5cbi8vL1xuLy8vIEBhcmd1bWVudCB7bnVtYmVyICh3aXRoIHVuaXQpfSAkcmFkaWlcbi8vL1xuLy8vIEBleGFtcGxlIHNjc3Ncbi8vLyAgIC5lbGVtZW50IHtcbi8vLyAgICAgQGluY2x1ZGUgYm9yZGVyLXJpZ2h0LXJhZGl1cygzcHgpO1xuLy8vICAgfVxuLy8vXG4vLy8gICAvLyBDU1MgT3V0cHV0XG4vLy8gICAuZWxlbWVudCB7XG4vLy8gICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAzcHg7XG4vLy8gICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAzcHg7XG4vLy8gICB9XG5cbkBtaXhpbiBib3JkZXItcmlnaHQtcmFkaXVzKCRyYWRpaSkge1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogJHJhZGlpO1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogJHJhZGlpO1xufVxuXG4vLy8gUHJvdmlkZXMgYSBjb25jaXNlLCBvbmUtbGluZSBtZXRob2QgZm9yIHNldHRpbmcgYGJvcmRlci1yYWRpdXNgIG9uIGJvdGggdGhlXG4vLy8gYm90dG9tLWxlZnQgYW5kIGJvdHRvbS1yaWdodCBvZiBhIGJveC5cbi8vL1xuLy8vIEBhcmd1bWVudCB7bnVtYmVyICh3aXRoIHVuaXQpfSAkcmFkaWlcbi8vL1xuLy8vIEBleGFtcGxlIHNjc3Ncbi8vLyAgIC5lbGVtZW50IHtcbi8vLyAgICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoMnB4KTtcbi8vLyAgIH1cbi8vL1xuLy8vICAgLy8gQ1NTIE91dHB1dFxuLy8vICAgLmVsZW1lbnQge1xuLy8vICAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAycHg7XG4vLy8gICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAycHg7XG4vLy8gICB9XG5cbkBtaXhpbiBib3JkZXItYm90dG9tLXJhZGl1cygkcmFkaWkpIHtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogJHJhZGlpO1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogJHJhZGlpO1xufVxuXG4vLy8gUHJvdmlkZXMgYSBjb25jaXNlLCBvbmUtbGluZSBtZXRob2QgZm9yIHNldHRpbmcgYGJvcmRlci1yYWRpdXNgIG9uIGJvdGggdGhlXG4vLy8gdG9wLWxlZnQgYW5kIGJvdHRvbS1sZWZ0IG9mIGEgYm94LlxuLy8vXG4vLy8gQGFyZ3VtZW50IHtudW1iZXIgKHdpdGggdW5pdCl9ICRyYWRpaVxuLy8vXG4vLy8gQGV4YW1wbGUgc2Nzc1xuLy8vICAgLmVsZW1lbnQge1xuLy8vICAgICBAaW5jbHVkZSBib3JkZXItbGVmdC1yYWRpdXMoMXB4KTtcbi8vLyAgIH1cbi8vL1xuLy8vICAgLy8gQ1NTIE91dHB1dFxuLy8vICAgLmVsZW1lbnQge1xuLy8vICAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAxcHg7XG4vLy8gICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDFweDtcbi8vLyAgIH1cblxuQG1peGluIGJvcmRlci1sZWZ0LXJhZGl1cygkcmFkaWkpIHtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogJHJhZGlpO1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAkcmFkaWk7XG59XG4iLCJAY2hhcnNldCBcIlVURi04XCI7XG5cbi8vLyBQcm92aWRlcyBhIGNvbmNpc2UsIG9uZS1saW5lIG1ldGhvZCBmb3Igc2V0dGluZyBgYm9yZGVyLXN0eWxlYCBvbiBzcGVjaWZpY1xuLy8vIGVkZ2VzIG9mIGEgYm94LiBVc2UgYSBgbnVsbGAgdmFsdWUgdG8g4oCcc2tpcOKAnSBlZGdlcyBvZiB0aGUgYm94IHdpdGggc3RhbmRhcmRcbi8vLyBDU1Mgc2hvcnRoYW5kLlxuLy8vXG4vLy8gQGFyZ3VtZW50IHtsaXN0fSAkdmFsdWVzXG4vLy8gICBMaXN0IG9mIGJvcmRlciBzdHlsZXM7IGFjY2VwdHMgQ1NTIHNob3J0aGFuZC5cbi8vL1xuLy8vIEBleGFtcGxlIHNjc3Ncbi8vLyAgIC5lbGVtZW50IHtcbi8vLyAgICAgQGluY2x1ZGUgYm9yZGVyLXN0eWxlKGRhc2hlZCBudWxsIHNvbGlkKTtcbi8vLyAgIH1cbi8vL1xuLy8vICAgLy8gQ1NTIE91dHB1dFxuLy8vICAgLmVsZW1lbnQge1xuLy8vICAgICBib3JkZXItYm90dG9tLXN0eWxlOiBzb2xpZDtcbi8vLyAgICAgYm9yZGVyLXRvcC1zdHlsZTogZGFzaGVkO1xuLy8vICAgfVxuLy8vXG4vLy8gQHJlcXVpcmUge21peGlufSBfZGlyZWN0aW9uYWwtcHJvcGVydHlcblxuQG1peGluIGJvcmRlci1zdHlsZSgkdmFsdWVzKSB7XG4gIEBpbmNsdWRlIF9kaXJlY3Rpb25hbC1wcm9wZXJ0eShib3JkZXIsIHN0eWxlLCAkdmFsdWVzKTtcbn1cbiIsIkBjaGFyc2V0IFwiVVRGLThcIjtcblxuLy8vIFByb3ZpZGVzIGEgY29uY2lzZSwgb25lLWxpbmUgbWV0aG9kIGZvciBzZXR0aW5nIGBib3JkZXItd2lkdGhgIG9uIHNwZWNpZmljXG4vLy8gZWRnZXMgb2YgYSBib3guIFVzZSBhIGBudWxsYCB2YWx1ZSB0byDigJxza2lw4oCdIGVkZ2VzIG9mIHRoZSBib3ggd2l0aCBzdGFuZGFyZFxuLy8vIENTUyBzaG9ydGhhbmQuXG4vLy9cbi8vLyBAYXJndW1lbnQge2xpc3R9ICR2YWx1ZXNcbi8vLyAgIExpc3Qgb2YgYm9yZGVyIHdpZHRoczsgYWNjZXB0cyBDU1Mgc2hvcnRoYW5kLlxuLy8vXG4vLy8gQGV4YW1wbGUgc2Nzc1xuLy8vICAgLmVsZW1lbnQge1xuLy8vICAgICBAaW5jbHVkZSBib3JkZXItd2lkdGgoMWVtIG51bGwgMjBweCk7XG4vLy8gICB9XG4vLy9cbi8vLyAgIC8vIENTUyBPdXRwdXRcbi8vLyAgIC5lbGVtZW50IHtcbi8vLyAgICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMjBweDtcbi8vLyAgICAgYm9yZGVyLXRvcC13aWR0aDogMWVtO1xuLy8vICAgfVxuLy8vXG4vLy8gQHJlcXVpcmUge21peGlufSBfZGlyZWN0aW9uYWwtcHJvcGVydHlcblxuQG1peGluIGJvcmRlci13aWR0aCgkdmFsdWVzKSB7XG4gIEBpbmNsdWRlIF9kaXJlY3Rpb25hbC1wcm9wZXJ0eShib3JkZXIsIHdpZHRoLCAkdmFsdWVzKTtcbn1cbiIsIkBjaGFyc2V0IFwiVVRGLThcIjtcblxuLy8vL1xuLy8vIEB0eXBlIGxpc3Rcbi8vL1xuLy8vIEByZXF1aXJlIHtmdW5jdGlvbn0gX2Fzc2lnbi1pbnB1dHNcbi8vL1xuLy8vIEByZXF1aXJlIHt2YXJpYWJsZX0gJF9idXR0b25zLWxpc3Rcbi8vLy9cblxuLy8vIEEgbGlzdCBvZiBhbGwgSFRNTCBidXR0b24gZWxlbWVudHMuIFBsZWFzZSBub3RlIHRoYXQgeW91IG11c3QgaW50ZXJwb2xhdGVcbi8vLyB0aGUgdmFyaWFibGUgKGAje31gKSB0byB1c2UgaXQgYXMgYSBzZWxlY3Rvci5cbi8vL1xuLy8vIEBleGFtcGxlIHNjc3Ncbi8vLyAgICN7JGFsbC1idXR0b25zfSB7XG4vLy8gICAgIGJhY2tncm91bmQtY29sb3I6ICNmMDA7XG4vLy8gICB9XG4vLy9cbi8vLyAgIC8vIENTUyBPdXRwdXRcbi8vLyAgIGJ1dHRvbixcbi8vLyAgIFt0eXBlPSdidXR0b24nXSxcbi8vLyAgIFt0eXBlPSdyZXNldCddLFxuLy8vICAgW3R5cGU9J3N1Ym1pdCddIHtcbi8vLyAgICAgYmFja2dyb3VuZC1jb2xvcjogI2YwMDtcbi8vLyAgIH1cblxuJGFsbC1idXR0b25zOiBfYXNzaWduLWlucHV0cygkX2J1dHRvbnMtbGlzdCk7XG5cbi8vLyBBIGxpc3Qgb2YgYWxsIEhUTUwgYnV0dG9uIGVsZW1lbnRzIHdpdGggdGhlIGA6YWN0aXZlYCBwc2V1ZG8tY2xhc3MgYXBwbGllZC5cbi8vLyBQbGVhc2Ugbm90ZSB0aGF0IHlvdSBtdXN0IGludGVycG9sYXRlIHRoZSB2YXJpYWJsZSAoYCN7fWApIHRvIHVzZSBpdCBhcyBhXG4vLy8gc2VsZWN0b3IuXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzXG4vLy8gICAjeyRhbGwtYnV0dG9ucy1hY3RpdmV9IHtcbi8vLyAgICAgYmFja2dyb3VuZC1jb2xvcjogIzAwZjtcbi8vLyAgIH1cbi8vL1xuLy8vICAgLy8gQ1NTIE91dHB1dFxuLy8vICAgYnV0dG9uOmFjdGl2ZSxcbi8vLyAgIFt0eXBlPSdidXR0b24nXTphY3RpdmUsXG4vLy8gICBbdHlwZT0ncmVzZXQnXTphY3RpdmUsXG4vLy8gICBbdHlwZT0nc3VibWl0J106YWN0aXZlIHtcbi8vLyAgICAgYmFja2dyb3VuZC1jb2xvcjogIzAwZjtcbi8vLyAgIH1cblxuJGFsbC1idXR0b25zLWFjdGl2ZTogX2Fzc2lnbi1pbnB1dHMoJF9idXR0b25zLWxpc3QsIGFjdGl2ZSk7XG5cbi8vLyBBIGxpc3Qgb2YgYWxsIEhUTUwgYnV0dG9uIGVsZW1lbnRzIHdpdGggdGhlIGA6Zm9jdXNgIHBzZXVkby1jbGFzcyBhcHBsaWVkLlxuLy8vIFBsZWFzZSBub3RlIHRoYXQgeW91IG11c3QgaW50ZXJwb2xhdGUgdGhlIHZhcmlhYmxlIChgI3t9YCkgdG8gdXNlIGl0IGFzIGFcbi8vLyBzZWxlY3Rvci5cbi8vL1xuLy8vIEBleGFtcGxlIHNjc3Ncbi8vLyAgICN7JGFsbC1idXR0b25zLWZvY3VzfSB7XG4vLy8gICAgIGJhY2tncm91bmQtY29sb3I6ICMwZjA7XG4vLy8gICB9XG4vLy9cbi8vLyAgIC8vIENTUyBPdXRwdXRcbi8vLyAgIGJ1dHRvbjpmb2N1cyxcbi8vLyAgIFt0eXBlPSdidXR0b24nXTpmb2N1cyxcbi8vLyAgIFt0eXBlPSdyZXNldCddOmZvY3VzLFxuLy8vICAgW3R5cGU9J3N1Ym1pdCddOmZvY3VzIHtcbi8vLyAgICAgYmFja2dyb3VuZC1jb2xvcjogIzBmMDtcbi8vLyAgIH1cblxuJGFsbC1idXR0b25zLWZvY3VzOiBfYXNzaWduLWlucHV0cygkX2J1dHRvbnMtbGlzdCwgZm9jdXMpO1xuXG4vLy8gQSBsaXN0IG9mIGFsbCBIVE1MIGJ1dHRvbiBlbGVtZW50cyB3aXRoIHRoZSBgOmhvdmVyYCBwc2V1ZG8tY2xhc3MgYXBwbGllZC5cbi8vLyBQbGVhc2Ugbm90ZSB0aGF0IHlvdSBtdXN0IGludGVycG9sYXRlIHRoZSB2YXJpYWJsZSAoYCN7fWApIHRvIHVzZSBpdCBhcyBhXG4vLy8gc2VsZWN0b3IuXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzXG4vLy8gICAjeyRhbGwtYnV0dG9ucy1ob3Zlcn0ge1xuLy8vICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGYwO1xuLy8vICAgfVxuLy8vXG4vLy8gICAvLyBDU1MgT3V0cHV0XG4vLy8gICBidXR0b246aG92ZXIsXG4vLy8gICBbdHlwZT0nYnV0dG9uJ106aG92ZXIsXG4vLy8gICBbdHlwZT0ncmVzZXQnXTpob3Zlcixcbi8vLyAgIFt0eXBlPSdzdWJtaXQnXTpob3ZlciB7XG4vLy8gICAgIGJhY2tncm91bmQtY29sb3I6ICMwZjA7XG4vLy8gICB9XG5cbiRhbGwtYnV0dG9ucy1ob3ZlcjogX2Fzc2lnbi1pbnB1dHMoJF9idXR0b25zLWxpc3QsIGhvdmVyKTtcbiIsIkBjaGFyc2V0IFwiVVRGLThcIjtcblxuLy8vIFByb3ZpZGVzIGFuIGVhc3kgd2F5IHRvIGluY2x1ZGUgYSBjbGVhcmZpeCBmb3IgY29udGFpbmluZyBmbG9hdHMuXG4vLy9cbi8vLyBAbGluayBodHRwczovL2dvby5nbC95UDVoaVpcbi8vL1xuLy8vIEBleGFtcGxlIHNjc3Ncbi8vLyAgIC5lbGVtZW50IHtcbi8vLyAgICAgQGluY2x1ZGUgY2xlYXJmaXg7XG4vLy8gICB9XG4vLy9cbi8vLyAgIC8vIENTUyBPdXRwdXRcbi8vLyAgIC5lbGVtZW50OjphZnRlciB7XG4vLy8gICAgIGNsZWFyOiBib3RoO1xuLy8vICAgICBjb250ZW50OiBcIlwiO1xuLy8vICAgICBkaXNwbGF5OiBibG9jaztcbi8vLyAgIH1cblxuQG1peGluIGNsZWFyZml4IHtcbiAgJjo6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cbiIsIkBjaGFyc2V0IFwiVVRGLThcIjtcblxuLy8vIFN3aXRjaGVzIGJldHdlZW4gdHdvIGNvbG9ycyBiYXNlZCBvbiB0aGUgY29udHJhc3QgdG8gYW5vdGhlciBjb2xvci4gSXTigJlzXG4vLy8gbGlrZSBhIFt0ZXJuYXJ5IG9wZXJhdG9yXSBmb3IgY29sb3IgY29udHJhc3QgYW5kIGNhbiBiZSB1c2VmdWwgZm9yIGJ1aWxkaW5nXG4vLy8gYSBidXR0b24gc3lzdGVtLlxuLy8vXG4vLy8gVGhlIGNhbGN1bGF0aW9uIG9mIHRoZSBjb250cmFzdCByYXRpbyBpcyBiYXNlZCBvbiB0aGUgW1dDQUcgMi4wXG4vLy8gc3BlY2lmaWNhdGlvbl0uIEhvd2V2ZXIsIHdlIGNhbm5vdCBndWFyYW50ZWUgZnVsbCBjb21wbGlhbmNlLCB0aG91Z2ggYWxsIG9mXG4vLy8gb3VyIG1hbnVhbCB0ZXN0aW5nIHBhc3NlZC5cbi8vL1xuLy8vICAgW3Rlcm5hcnkgb3BlcmF0b3JdOiBodHRwczovL2dvby5nbC9jY2ZMcWlcbi8vLyAgIFtXQ0FHIDIuMCBzcGVjaWZpY2F0aW9uXTogaHR0cHM6Ly9nb28uZ2wvemhRdVlBXG4vLy9cbi8vLyBAYXJndW1lbnQge2NvbG9yfSAkYmFzZS1jb2xvclxuLy8vICAgVGhlIGNvbG9yIHRvIGV2YWx1YXRlIGxpZ2h0bmVzcyBhZ2FpbnN0LlxuLy8vXG4vLy8gQGFyZ3VtZW50IHtjb2xvcn0gJGRhcmstY29sb3IgWyMwMDBdXG4vLy8gICBUaGUgY29sb3IgdG8gYmUgb3V0cHV0IHdoZW4gYCRiYXNlLWNvbG9yYCBpcyBsaWdodC4gQ2FuIGFsc28gYmUgc2V0XG4vLy8gICBnbG9iYWxseSB1c2luZyB0aGUgYGNvbnRyYXN0LXN3aXRjaC1kYXJrLWNvbG9yYCBrZXkgaW4gdGhlXG4vLy8gICBCb3VyYm9uIHNldHRpbmdzLlxuLy8vXG4vLy8gQGFyZ3VtZW50IHtjb2xvcn0gJGxpZ2h0LWNvbG9yIFsjZmZmXVxuLy8vICAgVGhlIGNvbG9yIHRvIGJlIG91dHB1dCB3aGVuIGAkYmFzZS1jb2xvcmAgaXMgZGFyay4gQ2FuIGFsc28gYmUgc2V0XG4vLy8gICBnbG9iYWxseSB1c2luZyB0aGUgYGNvbnRyYXN0LXN3aXRjaC1saWdodC1jb2xvcmAga2V5IGluIHRoZVxuLy8vICAgQm91cmJvbiBzZXR0aW5ncy5cbi8vL1xuLy8vIEByZXR1cm4ge2NvbG9yfVxuLy8vXG4vLy8gQGV4YW1wbGUgc2Nzc1xuLy8vICAgLmVsZW1lbnQge1xuLy8vICAgICBjb2xvcjogY29udHJhc3Qtc3dpdGNoKCNiYWU2ZTYpO1xuLy8vICAgfVxuLy8vXG4vLy8gICAvLyBDU1MgT3V0cHV0XG4vLy8gICAuZWxlbWVudCB7XG4vLy8gICAgIGNvbG9yOiAjMDAwO1xuLy8vICAgfVxuLy8vXG4vLy8gQGV4YW1wbGUgc2Nzc1xuLy8vICAgLmVsZW1lbnQge1xuLy8vICAgICAkYnV0dG9uLWNvbG9yOiAjMmQ3MmQ5O1xuLy8vICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnV0dG9uLWNvbG9yO1xuLy8vICAgICBjb2xvcjogY29udHJhc3Qtc3dpdGNoKCRidXR0b24tY29sb3IsICMyMjIsICNlZWUpO1xuLy8vICAgfVxuLy8vXG4vLy8gICAvLyBDU1MgT3V0cHV0XG4vLy8gICAuZWxlbWVudCB7XG4vLy8gICAgIGJhY2tncm91bmQtY29sb3I6ICMyZDcyZDk7XG4vLy8gICAgIGNvbG9yOiAjZWVlO1xuLy8vICAgfVxuLy8vXG4vLy8gQHJlcXVpcmUge2Z1bmN0aW9ufSBfZmV0Y2gtYm91cmJvbi1zZXR0aW5nXG4vLy9cbi8vLyBAcmVxdWlyZSB7ZnVuY3Rpb259IF9pcy1jb2xvclxuLy8vXG4vLy8gQHJlcXVpcmUge2Z1bmN0aW9ufSBfY29udHJhc3QtcmF0aW9cbi8vL1xuLy8vIEBzaW5jZSA1LjAuMFxuXG5AZnVuY3Rpb24gY29udHJhc3Qtc3dpdGNoKFxuICAkYmFzZS1jb2xvcixcbiAgJGRhcmstY29sb3I6IF9mZXRjaC1ib3VyYm9uLXNldHRpbmcoXCJjb250cmFzdC1zd2l0Y2gtZGFyay1jb2xvclwiKSxcbiAgJGxpZ2h0LWNvbG9yOiBfZmV0Y2gtYm91cmJvbi1zZXR0aW5nKFwiY29udHJhc3Qtc3dpdGNoLWxpZ2h0LWNvbG9yXCIpXG4pIHtcbiAgQGlmIG5vdCBfaXMtY29sb3IoJGJhc2UtY29sb3IpIHtcbiAgICBAZXJyb3IgXCJgI3skYmFzZS1jb2xvcn1gIGlzIG5vdCBhIHZhbGlkIGNvbG9yIGZvciB0aGUgYCRiYXNlLWNvbG9yYCBcIiArXG4gICAgICAgICAgIFwiYXJndW1lbnQgaW4gdGhlIGBjb250cmFzdC1zd2l0Y2hgIGZ1bmN0aW9uLlwiO1xuICB9IEBlbHNlIGlmIG5vdCBfaXMtY29sb3IoJGRhcmstY29sb3IpIHtcbiAgICBAZXJyb3IgXCJgI3skZGFyay1jb2xvcn1gIGlzIG5vdCBhIHZhbGlkIGNvbG9yIGZvciB0aGUgYCRkYXJrLWNvbG9yYCBcIiArXG4gICAgICAgICAgIFwiYXJndW1lbnQgaW4gdGhlIGBjb250cmFzdC1zd2l0Y2hgIGZ1bmN0aW9uLlwiO1xuICB9IEBlbHNlIGlmIG5vdCBfaXMtY29sb3IoJGxpZ2h0LWNvbG9yKSB7XG4gICAgQGVycm9yIFwiYCN7JGxpZ2h0LWNvbG9yfWAgaXMgbm90IGEgdmFsaWQgY29sb3IgZm9yIHRoZSBgJGxpZ2h0LWNvbG9yYCBcIiArXG4gICAgICAgICAgIFwiYXJndW1lbnQgaW4gdGhlIGBjb250cmFzdC1zd2l0Y2hgIGZ1bmN0aW9uLlwiO1xuICB9IEBlbHNlIHtcbiAgICAkLWNvbnRyYXN0LXRvLWRhcms6IF9jb250cmFzdC1yYXRpbygkYmFzZS1jb2xvciwgJGRhcmstY29sb3IpO1xuICAgICQtY29udHJhc3QtdG8tbGlnaHQ6IF9jb250cmFzdC1yYXRpbygkYmFzZS1jb2xvciwgJGxpZ2h0LWNvbG9yKTtcbiAgICAkLXByZWZlci1kYXJrOiAkLWNvbnRyYXN0LXRvLWRhcmsgPj0gJC1jb250cmFzdC10by1saWdodDtcblxuICAgIEByZXR1cm4gaWYoJC1wcmVmZXItZGFyaywgJGRhcmstY29sb3IsICRsaWdodC1jb2xvcik7XG4gIH1cbn1cbiIsIkBjaGFyc2V0IFwiVVRGLThcIjtcblxuLy8vIFRydW5jYXRlcyB0ZXh0IGFuZCBhZGRzIGFuIGVsbGlwc2lzIHRvIHJlcHJlc2VudCBvdmVyZmxvdy5cbi8vL1xuLy8vIEBhcmd1bWVudCB7bnVtYmVyfSAkd2lkdGggWzEwMCVdXG4vLy8gICBUaGUgYG1heC13aWR0aGAgZm9yIHRoZSBzdHJpbmcgdG8gcmVzcGVjdCBiZWZvcmUgYmVpbmcgdHJ1bmNhdGVkLlxuLy8vXG4vLy8gQGFyZ3VtZW50IHtzdHJpbmd9ICRkaXNwbGF5IFtpbmxpbmUtYmxvY2tdXG4vLy8gICBTZXRzIHRoZSBkaXNwbGF5LXZhbHVlIG9mIHRoZSBlbGVtZW50LlxuLy8vXG4vLy8gQGV4YW1wbGUgc2Nzc1xuLy8vICAgLmVsZW1lbnQge1xuLy8vICAgICBAaW5jbHVkZSBlbGxpcHNpcztcbi8vLyAgIH1cbi8vL1xuLy8vICAgLy8gQ1NTIE91dHB1dFxuLy8vICAgLmVsZW1lbnQge1xuLy8vICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4vLy8gICAgIG1heC13aWR0aDogMTAwJTtcbi8vLyAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbi8vLyAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4vLy8gICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4vLy8gICAgIHdvcmQtd3JhcDogbm9ybWFsO1xuLy8vICAgfVxuXG5AbWl4aW4gZWxsaXBzaXMoXG4gICR3aWR0aDogMTAwJSxcbiAgJGRpc3BsYXk6IGlubGluZS1ibG9ja1xuKSB7XG4gIGRpc3BsYXk6ICRkaXNwbGF5O1xuICBtYXgtd2lkdGg6ICR3aWR0aDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIHdvcmQtd3JhcDogbm9ybWFsO1xufVxuIiwiQGNoYXJzZXQgXCJVVEYtOFwiO1xuXG5AbWl4aW4gZm9udC1mYWNlKFxuICAkZm9udC1mYW1pbHksXG4gICRmaWxlLXBhdGgsXG4gICRmaWxlLWZvcm1hdHM6IF9mZXRjaC1ib3VyYm9uLXNldHRpbmcoXCJnbG9iYWwtZm9udC1maWxlLWZvcm1hdHNcIiksXG4gICRhc3NldC1waXBlbGluZTogX2ZldGNoLWJvdXJib24tc2V0dGluZyhcInJhaWxzLWFzc2V0LXBpcGVsaW5lXCIpXG4pIHtcbiAgQGZvbnQtZmFjZSB7XG4gICAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseTtcbiAgICBzcmM6IF9mb250LXNvdXJjZS1kZWNsYXJhdGlvbihcbiAgICAgICRmb250LWZhbWlseSxcbiAgICAgICRmaWxlLXBhdGgsXG4gICAgICAkYXNzZXQtcGlwZWxpbmUsXG4gICAgICAkZmlsZS1mb3JtYXRzXG4gICAgKTtcbiAgICBAY29udGVudDtcbiAgfVxufVxuIiwiQGNoYXJzZXQgXCJVVEYtOFwiO1xuXG4vLy8gQSB2YXJpYWJsZSB0aGF0IG91dHB1dHMgYSBIZWx2ZXRpY2EgZm9udCBzdGFjay5cbi8vL1xuLy8vIEBsaW5rIGh0dHBzOi8vZ29vLmdsL3VTSnZaZVxuLy8vXG4vLy8gQHR5cGUgbGlzdFxuLy8vXG4vLy8gQGV4YW1wbGUgc2Nzc1xuLy8vICAgLmVsZW1lbnQge1xuLy8vICAgICBmb250LWZhbWlseTogJGZvbnQtc3RhY2staGVsdmV0aWNhO1xuLy8vICAgfVxuLy8vXG4vLy8gICAvLyBDU1MgT3V0cHV0XG4vLy8gICAuZWxlbWVudCB7XG4vLy8gICAgIGZvbnQtZmFtaWx5OiBcIkhlbHZldGljYSBOZXVlXCIsIFwiSGVsdmV0aWNhXCIsIFwiQXJpYWxcIiwgc2Fucy1zZXJpZjtcbi8vLyAgIH1cblxuJGZvbnQtc3RhY2staGVsdmV0aWNhOiAoXG4gIFwiSGVsdmV0aWNhIE5ldWVcIixcbiAgXCJIZWx2ZXRpY2FcIixcbiAgXCJBcmlhbFwiLFxuICBzYW5zLXNlcmlmLFxuKTtcblxuLy8vIEEgdmFyaWFibGUgdGhhdCBvdXRwdXRzIGEgTHVjaWRhIEdyYW5kZSBmb250IHN0YWNrLlxuLy8vXG4vLy8gQGxpbmsgaHR0cHM6Ly9nb28uZ2wvUjVVeVlFXG4vLy9cbi8vLyBAdHlwZSBsaXN0XG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzXG4vLy8gICAuZWxlbWVudCB7XG4vLy8gICAgIGZvbnQtZmFtaWx5OiAkZm9udC1zdGFjay1sdWNpZGEtZ3JhbmRlO1xuLy8vICAgfVxuLy8vXG4vLy8gICAvLyBDU1MgT3V0cHV0XG4vLy8gICAuZWxlbWVudCB7XG4vLy8gICAgIGZvbnQtZmFtaWx5OiBcIkx1Y2lkYSBHcmFuZGVcIiwgXCJMdWNpZGEgU2FucyBVbmljb2RlXCIsIFwiR2VuZXZhXCIsIFwiVmVyZGFuYVwiLCBzYW5zLXNlcmlmO1xuLy8vICAgfVxuXG4kZm9udC1zdGFjay1sdWNpZGEtZ3JhbmRlOiAoXG4gIFwiTHVjaWRhIEdyYW5kZVwiLFxuICBcIkx1Y2lkYSBTYW5zIFVuaWNvZGVcIixcbiAgXCJHZW5ldmFcIixcbiAgXCJWZXJkYW5hXCIsXG4gIHNhbnMtc2VyaWYsXG4pO1xuXG4vLy8gQSB2YXJpYWJsZSB0aGF0IG91dHB1dHMgYSBWZXJkYW5hIGZvbnQgc3RhY2suXG4vLy9cbi8vLyBAbGluayBodHRwczovL2dvby5nbC95R1hXU1Ncbi8vL1xuLy8vIEB0eXBlIGxpc3Rcbi8vL1xuLy8vIEBleGFtcGxlIHNjc3Ncbi8vLyAgIC5lbGVtZW50IHtcbi8vLyAgICAgZm9udC1mYW1pbHk6ICRmb250LXN0YWNrLXZlcmRhbmE7XG4vLy8gICB9XG4vLy9cbi8vLyAgIC8vIENTUyBPdXRwdXRcbi8vLyAgIC5lbGVtZW50IHtcbi8vLyAgICAgZm9udC1mYW1pbHk6IFwiVmVyZGFuYVwiLCBcIkdlbmV2YVwiLCBzYW5zLXNlcmlmO1xuLy8vICAgfVxuXG4kZm9udC1zdGFjay12ZXJkYW5hOiAoXG4gIFwiVmVyZGFuYVwiLFxuICBcIkdlbmV2YVwiLFxuICBzYW5zLXNlcmlmLFxuKTtcblxuLy8vIEEgdmFyaWFibGUgdGhhdCBvdXRwdXRzIGEgc3lzdGVtIGZvbnQgc3RhY2suXG4vLy9cbi8vLyBAbGluayBodHRwczovL2dvby5nbC9MSFJaSWZcbi8vL1xuLy8vIEB0eXBlIGxpc3Rcbi8vL1xuLy8vIEBleGFtcGxlIHNjc3Ncbi8vLyAgIC5lbGVtZW50IHtcbi8vLyAgICAgZm9udC1mYW1pbHk6ICRmb250LXN0YWNrLXN5c3RlbTtcbi8vLyAgIH1cbi8vL1xuLy8vICAgLy8gQ1NTIE91dHB1dFxuLy8vICAgLmVsZW1lbnQge1xuLy8vICAgICBmb250LWZhbWlseTogLWFwcGxlLXN5c3RlbSwgQmxpbmtNYWNTeXN0ZW1Gb250LCBcIkF2ZW5pciBOZXh0XCIsIFwiQXZlbmlyXCIsIFwiU2Vnb2UgVUlcIiwgXCJMdWNpZGEgR3JhbmRlXCIsIFwiSGVsdmV0aWNhIE5ldWVcIiwgXCJIZWx2ZXRpY2FcIiwgXCJGaXJhIFNhbnNcIiwgXCJSb2JvdG9cIiwgXCJOb3RvXCIsIFwiRHJvaWQgU2Fuc1wiLCBcIkNhbnRhcmVsbFwiLCBcIk94eWdlblwiLCBcIlVidW50dVwiLCBcIkZyYW5rbGluIEdvdGhpYyBNZWRpdW1cIiwgXCJDZW50dXJ5IEdvdGhpY1wiLCBcIkxpYmVyYXRpb24gU2Fuc1wiLCBzYW5zLXNlcmlmO1xuLy8vICAgfVxuXG4kZm9udC1zdGFjay1zeXN0ZW06IChcbiAgLWFwcGxlLXN5c3RlbSxcbiAgQmxpbmtNYWNTeXN0ZW1Gb250LFxuICBcIkF2ZW5pciBOZXh0XCIsXG4gIFwiQXZlbmlyXCIsXG4gIFwiU2Vnb2UgVUlcIixcbiAgXCJMdWNpZGEgR3JhbmRlXCIsXG4gIFwiSGVsdmV0aWNhIE5ldWVcIixcbiAgXCJIZWx2ZXRpY2FcIixcbiAgXCJGaXJhIFNhbnNcIixcbiAgXCJSb2JvdG9cIixcbiAgXCJOb3RvXCIsXG4gIFwiRHJvaWQgU2Fuc1wiLFxuICBcIkNhbnRhcmVsbFwiLFxuICBcIk94eWdlblwiLFxuICBcIlVidW50dVwiLFxuICBcIkZyYW5rbGluIEdvdGhpYyBNZWRpdW1cIixcbiAgXCJDZW50dXJ5IEdvdGhpY1wiLFxuICBcIkxpYmVyYXRpb24gU2Fuc1wiLFxuICBzYW5zLXNlcmlmLFxuKTtcblxuLy8vIEEgdmFyaWFibGUgdGhhdCBvdXRwdXRzIGEgR2FyYW1vbmQgZm9udCBzdGFjay5cbi8vL1xuLy8vIEBsaW5rIGh0dHBzOi8vZ29vLmdsL1FRRkVrVlxuLy8vXG4vLy8gQHR5cGUgbGlzdFxuLy8vXG4vLy8gQGV4YW1wbGUgc2Nzc1xuLy8vICAgLmVsZW1lbnQge1xuLy8vICAgICBmb250LWZhbWlseTogJGZvbnQtc3RhY2stZ2FyYW1vbmQ7XG4vLy8gICB9XG4vLy9cbi8vLyAgIC8vIENTUyBPdXRwdXRcbi8vLyAgIC5lbGVtZW50IHtcbi8vLyAgICAgZm9udC1mYW1pbHk6IFwiR2FyYW1vbmRcIiwgXCJCYXNrZXJ2aWxsZVwiLCBcIkJhc2tlcnZpbGxlIE9sZCBGYWNlXCIsIFwiSG9lZmxlciBUZXh0XCIsIFwiVGltZXMgTmV3IFJvbWFuXCIsIHNlcmlmO1xuLy8vICAgfVxuXG4kZm9udC1zdGFjay1nYXJhbW9uZDogKFxuICBcIkdhcmFtb25kXCIsXG4gIFwiQmFza2VydmlsbGVcIixcbiAgXCJCYXNrZXJ2aWxsZSBPbGQgRmFjZVwiLFxuICBcIkhvZWZsZXIgVGV4dFwiLFxuICBcIlRpbWVzIE5ldyBSb21hblwiLFxuICBzZXJpZixcbik7XG5cbi8vLyBBIHZhcmlhYmxlIHRoYXQgb3V0cHV0cyBhIEdlb3JnaWEgZm9udCBzdGFjay5cbi8vL1xuLy8vIEBsaW5rIGh0dHBzOi8vZ29vLmdsL3d0elZQeVxuLy8vXG4vLy8gQHR5cGUgbGlzdFxuLy8vXG4vLy8gQGV4YW1wbGUgc2Nzc1xuLy8vICAgLmVsZW1lbnQge1xuLy8vICAgICBmb250LWZhbWlseTogJGZvbnQtc3RhY2stZ2VvcmdpYTtcbi8vLyAgIH1cbi8vL1xuLy8vICAgLy8gQ1NTIE91dHB1dFxuLy8vICAgLmVsZW1lbnQge1xuLy8vICAgICBmb250LWZhbWlseTogXCJHZW9yZ2lhXCIsIFwiVGltZXNcIiwgXCJUaW1lcyBOZXcgUm9tYW5cIiwgc2VyaWY7XG4vLy8gICB9XG5cbiRmb250LXN0YWNrLWdlb3JnaWE6IChcbiAgXCJHZW9yZ2lhXCIsXG4gIFwiVGltZXNcIixcbiAgXCJUaW1lcyBOZXcgUm9tYW5cIixcbiAgc2VyaWYsXG4pO1xuXG4vLy8gQSB2YXJpYWJsZSB0aGF0IG91dHB1dHMgYSBIb2VmbGVyIFRleHQgZm9udCBzdGFjay5cbi8vL1xuLy8vIEBsaW5rIGh0dHBzOi8vZ29vLmdsL243VTd6eFxuLy8vXG4vLy8gQHR5cGUgbGlzdFxuLy8vXG4vLy8gQGV4YW1wbGUgc2Nzc1xuLy8vICAgLmVsZW1lbnQge1xuLy8vICAgICBmb250LWZhbWlseTogJGZvbnQtc3RhY2staG9lZmxlci10ZXh0O1xuLy8vICAgfVxuLy8vXG4vLy8gICAvLyBDU1MgT3V0cHV0XG4vLy8gICAuZWxlbWVudCB7XG4vLy8gICAgIGZvbnQtZmFtaWx5OiBcIkhvZWZsZXIgVGV4dFwiLCBcIkJhc2tlcnZpbGxlIE9sZCBGYWNlXCIsIFwiR2FyYW1vbmRcIiwgXCJUaW1lcyBOZXcgUm9tYW5cIiwgc2VyaWY7XG4vLy8gICB9XG5cbiRmb250LXN0YWNrLWhvZWZsZXItdGV4dDogKFxuICBcIkhvZWZsZXIgVGV4dFwiLFxuICBcIkJhc2tlcnZpbGxlIE9sZCBGYWNlXCIsXG4gIFwiR2FyYW1vbmRcIixcbiAgXCJUaW1lcyBOZXcgUm9tYW5cIixcbiAgc2VyaWYsXG4pO1xuXG4vLy8gQSB2YXJpYWJsZSB0aGF0IG91dHB1dHMgYSBDb25zb2xhcyBmb250IHN0YWNrLlxuLy8vXG4vLy8gQGxpbmsgaHR0cHM6Ly9nb28uZ2wvaUtydHF2XG4vLy9cbi8vLyBAdHlwZSBsaXN0XG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzXG4vLy8gICAuZWxlbWVudCB7XG4vLy8gICAgIGZvbnQtZmFtaWx5OiAkZm9udC1zdGFjay1jb25zb2xhcztcbi8vLyAgIH1cbi8vL1xuLy8vICAgLy8gQ1NTIE91dHB1dFxuLy8vICAgLmVsZW1lbnQge1xuLy8vICAgICBmb250LWZhbWlseTogXCJDb25zb2xhc1wiLCBcIm1vbmFjb1wiLCBtb25vc3BhY2U7XG4vLy8gICB9XG5cbiRmb250LXN0YWNrLWNvbnNvbGFzOiAoXG4gIFwiQ29uc29sYXNcIixcbiAgXCJtb25hY29cIixcbiAgbW9ub3NwYWNlLFxuKTtcblxuLy8vIEEgdmFyaWFibGUgdGhhdCBvdXRwdXRzIGEgQ291cmllciBOZXcgZm9udCBzdGFjay5cbi8vL1xuLy8vIEBsaW5rIGh0dHBzOi8vZ29vLmdsL2JIZldNUFxuLy8vXG4vLy8gQHR5cGUgbGlzdFxuLy8vXG4vLy8gQGV4YW1wbGUgc2Nzc1xuLy8vICAgLmVsZW1lbnQge1xuLy8vICAgICBmb250LWZhbWlseTogJGZvbnQtc3RhY2stY291cmllci1uZXc7XG4vLy8gICB9XG4vLy9cbi8vLyAgIC8vIENTUyBPdXRwdXRcbi8vLyAgIC5lbGVtZW50IHtcbi8vLyAgICAgZm9udC1mYW1pbHk6IFwiQ291cmllciBOZXdcIiwgXCJDb3VyaWVyXCIsIFwiTHVjaWRhIFNhbnMgVHlwZXdyaXRlclwiLCBcIkx1Y2lkYSBUeXBld3JpdGVyXCIsIG1vbm9zcGFjZTtcbi8vLyAgIH1cblxuJGZvbnQtc3RhY2stY291cmllci1uZXc6IChcbiAgXCJDb3VyaWVyIE5ld1wiLFxuICBcIkNvdXJpZXJcIixcbiAgXCJMdWNpZGEgU2FucyBUeXBld3JpdGVyXCIsXG4gIFwiTHVjaWRhIFR5cGV3cml0ZXJcIixcbiAgbW9ub3NwYWNlLFxuKTtcblxuLy8vIEEgdmFyaWFibGUgdGhhdCBvdXRwdXRzIGEgTW9uYWNvIGZvbnQgc3RhY2suXG4vLy9cbi8vLyBAbGluayBodHRwczovL2dvby5nbC85UGdLRE9cbi8vL1xuLy8vIEB0eXBlIGxpc3Rcbi8vL1xuLy8vIEBleGFtcGxlIHNjc3Ncbi8vLyAgIC5lbGVtZW50IHtcbi8vLyAgICAgZm9udC1mYW1pbHk6ICRmb250LXN0YWNrLW1vbmFjbztcbi8vLyAgIH1cbi8vL1xuLy8vICAgLy8gQ1NTIE91dHB1dFxuLy8vICAgLmVsZW1lbnQge1xuLy8vICAgICBmb250LWZhbWlseTogXCJNb25hY29cIiwgXCJDb25zb2xhc1wiLCBcIkx1Y2lkYSBDb25zb2xlXCIsIG1vbm9zcGFjZTtcbi8vLyAgIH1cblxuJGZvbnQtc3RhY2stbW9uYWNvOiAoXG4gIFwiTW9uYWNvXCIsXG4gIFwiQ29uc29sYXNcIixcbiAgXCJMdWNpZGEgQ29uc29sZVwiLFxuICBtb25vc3BhY2UsXG4pO1xuIiwiQGNoYXJzZXQgXCJVVEYtOFwiO1xuXG4vLy8gSGlkZXMgdGhlIHRleHQgaW4gYW4gZWxlbWVudCwgY29tbW9ubHkgdXNlZCB0byBzaG93IGFuIGltYWdlIGluc3RlYWQuIFNvbWVcbi8vLyBlbGVtZW50cyB3aWxsIG5lZWQgYmxvY2stbGV2ZWwgc3R5bGVzIGFwcGxpZWQuXG4vLy9cbi8vLyBAbGluayBodHRwczovL2dvby5nbC9FdkxSSXVcbi8vL1xuLy8vIEBleGFtcGxlIHNjc3Ncbi8vLyAgIC5lbGVtZW50IHtcbi8vLyAgICAgQGluY2x1ZGUgaGlkZS10ZXh0O1xuLy8vICAgfVxuLy8vXG4vLy8gICAvLyBDU1MgT3V0cHV0XG4vLy8gICAuZWxlbWVudCB7XG4vLy8gICAgIG92ZXJmbG93OiBoaWRkZW47XG4vLy8gICAgIHRleHQtaW5kZW50OiAxMDElO1xuLy8vICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuLy8vICAgfVxuXG5AbWl4aW4gaGlkZS10ZXh0IHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdGV4dC1pbmRlbnQ6IDEwMSU7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG4iLCJAY2hhcnNldCBcIlVURi04XCI7XG5cbi8vLyBIaWRlcyBhbiBlbGVtZW50IHZpc3VhbGx5IHdoaWxlIHN0aWxsIGFsbG93aW5nIHRoZSBjb250ZW50IHRvIGJlIGFjY2Vzc2libGVcbi8vLyB0byBhc3Npc3RpdmUgdGVjaG5vbG9neSwgZS5nLiBzY3JlZW4gcmVhZGVycy4gUGFzc2luZyBgdW5oaWRlYCB3aWxsIHJldmVyc2Vcbi8vLyB0aGUgYWZmZWN0cyBvZiB0aGUgaGlkaW5nLCB3aGljaCBpcyBoYW5keSBmb3Igc2hvd2luZyB0aGUgZWxlbWVudCBvbiBmb2N1cyxcbi8vLyBmb3IgZXhhbXBsZS5cbi8vL1xuLy8vIEBsaW5rIGh0dHBzOi8vZ29vLmdsL1ZmMVRHblxuLy8vXG4vLy8gQGFyZ3VtZW50IHtzdHJpbmd9ICR0b2dnbGUgW2hpZGVdXG4vLy8gICBBY2NlcHRzIGBoaWRlYCBvciBgdW5oaWRlYC4gYHVuaGlkZWAgcmV2ZXJzZXMgdGhlIGFmZmVjdHMgb2YgYGhpZGVgLlxuLy8vXG4vLy8gQGV4YW1wbGUgc2Nzc1xuLy8vICAgLmVsZW1lbnQge1xuLy8vICAgICBAaW5jbHVkZSBoaWRlLXZpc3VhbGx5O1xuLy8vXG4vLy8gICAgICY6YWN0aXZlLFxuLy8vICAgICAmOmZvY3VzIHtcbi8vLyAgICAgICBAaW5jbHVkZSBoaWRlLXZpc3VhbGx5KFwidW5oaWRlXCIpO1xuLy8vICAgICB9XG4vLy8gICB9XG4vLy9cbi8vLyAgIC8vIENTUyBPdXRwdXRcbi8vLyAgIC5lbGVtZW50IHtcbi8vLyAgICAgYm9yZGVyOiAwO1xuLy8vICAgICBjbGlwOiByZWN0KDFweCwgMXB4LCAxcHgsIDFweCk7XG4vLy8gICAgIGNsaXAtcGF0aDogaW5zZXQoMTAwJSk7XG4vLy8gICAgIGhlaWdodDogMXB4O1xuLy8vICAgICBvdmVyZmxvdzogaGlkZGVuO1xuLy8vICAgICBwYWRkaW5nOiAwO1xuLy8vICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4vLy8gICAgIHdpZHRoOiAxcHg7XG4vLy8gICB9XG4vLy9cbi8vLyAgIC5oaWRlLXZpc3VhbGx5OmFjdGl2ZSxcbi8vLyAgIC5oaWRlLXZpc3VhbGx5OmZvY3VzIHtcbi8vLyAgICAgY2xpcDogYXV0bztcbi8vLyAgICAgY2xpcC1wYXRoOiBub25lO1xuLy8vICAgICBoZWlnaHQ6IGF1dG87XG4vLy8gICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuLy8vICAgICBwb3NpdGlvbjogc3RhdGljO1xuLy8vICAgICB3aWR0aDogYXV0bztcbi8vLyAgIH1cbi8vL1xuLy8vIEBzaW5jZSA1LjAuMFxuXG5AbWl4aW4gaGlkZS12aXN1YWxseSgkdG9nZ2xlOiBcImhpZGVcIikge1xuICBAaWYgbm90IGluZGV4KFwiaGlkZVwiIFwidW5oaWRlXCIsICR0b2dnbGUpIHtcbiAgICBAZXJyb3IgXCJgI3skdG9nZ2xlfWAgaXMgbm90IGEgdmFsaWQgdmFsdWUgZm9yIHRoZSBgJHRvZ2dsZWAgYXJndW1lbnQgaW4gXCIgK1xuICAgICAgICAgICBcInRoZSBgaGlkZS12aXN1YWxseWAgbWl4aW4uIE11c3QgYmUgZWl0aGVyIGBoaWRlYCBvciBgdW5oaWRlYC5cIjtcbiAgfSBAZWxzZSBpZiAkdG9nZ2xlID09IFwiaGlkZVwiIHtcbiAgICBib3JkZXI6IDA7XG4gICAgY2xpcDogcmVjdCgxcHgsIDFweCwgMXB4LCAxcHgpO1xuICAgIGNsaXAtcGF0aDogaW5zZXQoMTAwJSk7XG4gICAgaGVpZ2h0OiAxcHg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBwYWRkaW5nOiAwO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIHdpZHRoOiAxcHg7XG4gIH0gQGVsc2UgaWYgJHRvZ2dsZSA9PSBcInVuaGlkZVwiIHtcbiAgICBjbGlwOiBhdXRvO1xuICAgIGNsaXAtcGF0aDogbm9uZTtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgICB3aGl0ZS1zcGFjZTogaW5oZXJpdDtcbiAgICB3aWR0aDogYXV0bztcbiAgfVxufVxuIiwiQGNoYXJzZXQgXCJVVEYtOFwiO1xuXG4vLy8gUHJvdmlkZXMgYSBjb25jaXNlLCBvbmUtbGluZSBtZXRob2QgZm9yIHNldHRpbmcgYG1hcmdpbmAgb24gc3BlY2lmaWMgZWRnZXNcbi8vLyBvZiBhIGJveC4gVXNlIGEgYG51bGxgIHZhbHVlIHRvIOKAnHNraXDigJ0gZWRnZXMgb2YgdGhlIGJveCB3aXRoIHN0YW5kYXJkXG4vLy8gQ1NTIHNob3J0aGFuZC5cbi8vL1xuLy8vIEBhcmd1bWVudCB7bGlzdH0gJHZhbHVlc1xuLy8vICAgTGlzdCBvZiBtYXJnaW4gdmFsdWVzOyBhY2NlcHRzIENTUyBzaG9ydGhhbmQuXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzXG4vLy8gICAuZWxlbWVudCB7XG4vLy8gICAgIEBpbmNsdWRlIG1hcmdpbihudWxsIGF1dG8pO1xuLy8vICAgfVxuLy8vXG4vLy8gICAvLyBDU1MgT3V0cHV0XG4vLy8gICAuZWxlbWVudCB7XG4vLy8gICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuLy8vICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4vLy8gICB9XG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzXG4vLy8gICAuZWxlbWVudCB7XG4vLy8gICAgIEBpbmNsdWRlIG1hcmdpbigxMHB4IDNlbSAyMHZoIG51bGwpO1xuLy8vICAgfVxuLy8vXG4vLy8gICAvLyBDU1MgT3V0cHV0XG4vLy8gICAuZWxlbWVudCB7XG4vLy8gICAgIG1hcmdpbi1ib3R0b206IDIwdmg7XG4vLy8gICAgIG1hcmdpbi1yaWdodDogM2VtO1xuLy8vICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuLy8vICAgfVxuLy8vXG4vLy8gQHJlcXVpcmUge21peGlufSBfZGlyZWN0aW9uYWwtcHJvcGVydHlcblxuQG1peGluIG1hcmdpbigkdmFsdWVzKSB7XG4gIEBpbmNsdWRlIF9kaXJlY3Rpb25hbC1wcm9wZXJ0eShtYXJnaW4sIG51bGwsICR2YWx1ZXMpO1xufVxuIiwiQGNoYXJzZXQgXCJVVEYtOFwiO1xuXG4vLy8gSW5jcmVtZW50cyB1cCBvciBkb3duIGEgZGVmaW5lZCBzY2FsZSBhbmQgcmV0dXJucyBhbiBhZGp1c3RlZCB2YWx1ZS4gVGhpc1xuLy8vIGhlbHBzIGVzdGFibGlzaCBjb25zaXN0ZW50IG1lYXN1cmVtZW50cyBhbmQgc3BhY2lhbCByZWxhdGlvbnNoaXBzIHRocm91Z2hvdXRcbi8vLyB5b3VyIHByb2plY3QuIFdlIHByb3ZpZGUgYSBsaXN0IG9mIGNvbW1vbmx5IHVzZWQgc2NhbGVzIGFzXG4vLy8gW3ByZS1kZWZpbmVkIHZhcmlhYmxlc11bc2NhbGVzXS5cbi8vL1xuLy8vIFtzY2FsZXNdOiBodHRwczovL2dpdGh1Yi5jb20vdGhvdWdodGJvdC9ib3VyYm9uL2Jsb2IvbWFzdGVyL2NvcmUvYm91cmJvbi9zZXR0aW5ncy9fc2NhbGVzLnNjc3Ncbi8vL1xuLy8vIEBhcmd1bWVudCB7bnVtYmVyICh1bml0bGVzcyl9ICRpbmNyZW1lbnRcbi8vLyAgIEhvdyBtYW55IHN0ZXBzIHRvIGluY3JlbWVudCB1cCBvciBkb3duIHRoZSBzY2FsZS5cbi8vL1xuLy8vIEBhcmd1bWVudCB7bnVtYmVyICh3aXRoIHVuaXQpIHwgbGlzdH0gJHZhbHVlIFsxZW1dXG4vLy8gICBUaGUgYmFzZSB2YWx1ZSB0aGUgc2NhbGUgc3RhcnRzIGF0LiBDYW4gYWxzbyBiZSBzZXQgZ2xvYmFsbHkgdXNpbmcgdGhlXG4vLy8gICBgbW9kdWxhci1zY2FsZS1iYXNlYCBrZXkgaW4gdGhlIEJvdXJib24gc2V0dGluZ3MuXG4vLy9cbi8vLyBAYXJndW1lbnQge251bWJlciAodW5pdGxlc3MpfSAkcmF0aW8gWzEuMjVdXG4vLy8gICBUaGUgcmF0aW8gdGhlIHNjYWxlIGlzIGJ1aWx0IG9uLiBDYW4gYWxzbyBiZSBzZXQgZ2xvYmFsbHkgdXNpbmcgdGhlXG4vLy8gICBgbW9kdWxhci1zY2FsZS1yYXRpb2Aga2V5IGluIHRoZSBCb3VyYm9uIHNldHRpbmdzLlxuLy8vXG4vLy8gQHJldHVybiB7bnVtYmVyICh3aXRoIHVuaXQpfVxuLy8vXG4vLy8gQGV4YW1wbGUgc2Nzc1xuLy8vICAgLmVsZW1lbnQge1xuLy8vICAgICBmb250LXNpemU6IG1vZHVsYXItc2NhbGUoMik7XG4vLy8gICB9XG4vLy9cbi8vLyAgIC8vIENTUyBPdXRwdXRcbi8vLyAgIC5lbGVtZW50IHtcbi8vLyAgICAgZm9udC1zaXplOiAxLjU2MjVlbTtcbi8vLyAgIH1cbi8vL1xuLy8vIEBleGFtcGxlIHNjc3Ncbi8vLyAgIC5lbGVtZW50IHtcbi8vLyAgICAgbWFyZ2luLXJpZ2h0OiBtb2R1bGFyLXNjYWxlKDMsIDJlbSk7XG4vLy8gICB9XG4vLy9cbi8vLyAgIC8vIENTUyBPdXRwdXRcbi8vLyAgIC5lbGVtZW50IHtcbi8vLyAgICAgbWFyZ2luLXJpZ2h0OiAzLjkwNjI1ZW07XG4vLy8gICB9XG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzXG4vLy8gICAuZWxlbWVudCB7XG4vLy8gICAgIGZvbnQtc2l6ZTogbW9kdWxhci1zY2FsZSgzLCAxZW0gMS42ZW0sICRtYWpvci1zZXZlbnRoKTtcbi8vLyAgIH1cbi8vL1xuLy8vICAgLy8gQ1NTIE91dHB1dFxuLy8vICAgLmVsZW1lbnQge1xuLy8vICAgICBmb250LXNpemU6IDNlbTtcbi8vLyAgIH1cbi8vL1xuLy8vIEBleGFtcGxlIHNjc3Ncbi8vLyAgIC8vIEdsb2JhbGx5IGNoYW5nZSB0aGUgYmFzZSByYXRpb1xuLy8vICAgJGJvdXJib246IChcbi8vLyAgICAgXCJtb2R1bGFyLXNjYWxlLXJhdGlvXCI6IDEuMixcbi8vLyAgICk7XG4vLy9cbi8vLyAgIC5lbGVtZW50IHtcbi8vLyAgICAgZm9udC1zaXplOiBtb2R1bGFyLXNjYWxlKDMpO1xuLy8vICAgfVxuLy8vXG4vLy8gICAvLyBDU1MgT3V0cHV0XG4vLy8gICAuZWxlbWVudCB7XG4vLy8gICAgIGZvbnQtc2l6ZTogMS43MjhlbTtcbi8vLyAgIH1cbi8vL1xuLy8vIEByZXF1aXJlIHtmdW5jdGlvbn0gX2ZldGNoLWJvdXJib24tc2V0dGluZ1xuXG5AZnVuY3Rpb24gbW9kdWxhci1zY2FsZShcbiAgJGluY3JlbWVudCxcbiAgJHZhbHVlOiBfZmV0Y2gtYm91cmJvbi1zZXR0aW5nKFwibW9kdWxhci1zY2FsZS1iYXNlXCIpLFxuICAkcmF0aW86IF9mZXRjaC1ib3VyYm9uLXNldHRpbmcoXCJtb2R1bGFyLXNjYWxlLXJhdGlvXCIpXG4pIHtcbiAgJHYxOiBudGgoJHZhbHVlLCAxKTtcbiAgJHYyOiBudGgoJHZhbHVlLCBsZW5ndGgoJHZhbHVlKSk7XG4gICR2YWx1ZTogJHYxO1xuXG4gIC8vIHNjYWxlICR2MiB0byBqdXN0IGFib3ZlICR2MVxuICBAd2hpbGUgJHYyID4gJHYxIHtcbiAgICAkdjI6ICgkdjIgLyAkcmF0aW8pOyAvLyB3aWxsIGJlIG9mZi1ieS0xXG4gIH1cbiAgQHdoaWxlICR2MiA8ICR2MSB7XG4gICAgJHYyOiAoJHYyICogJHJhdGlvKTsgLy8gd2lsbCBmaXggb2ZmLWJ5LTFcbiAgfVxuXG4gIC8vIGNoZWNrIEFGVEVSIHNjYWxpbmcgJHYyIHRvIHByZXZlbnQgZG91YmxlLWNvdW50aW5nIGNvcm5lci1jYXNlXG4gICRkb3VibGUtc3RyYW5kZWQ6ICR2MiA+ICR2MTtcblxuICBAaWYgJGluY3JlbWVudCA+IDAge1xuICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGluY3JlbWVudCB7XG4gICAgICBAaWYgJGRvdWJsZS1zdHJhbmRlZCBhbmQgKCR2MSAqICRyYXRpbykgPiAkdjIge1xuICAgICAgICAkdmFsdWU6ICR2MjtcbiAgICAgICAgJHYyOiAoJHYyICogJHJhdGlvKTtcbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICAkdjE6ICgkdjEgKiAkcmF0aW8pO1xuICAgICAgICAkdmFsdWU6ICR2MTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAaWYgJGluY3JlbWVudCA8IDAge1xuICAgIC8vIGFkanVzdCAkdjIgdG8ganVzdCBiZWxvdyAkdjFcbiAgICBAaWYgJGRvdWJsZS1zdHJhbmRlZCB7XG4gICAgICAkdjI6ICgkdjIgLyAkcmF0aW8pO1xuICAgIH1cblxuICAgIEBmb3IgJGkgZnJvbSAkaW5jcmVtZW50IHRocm91Z2ggLTEge1xuICAgICAgQGlmICRkb3VibGUtc3RyYW5kZWQgYW5kICgkdjEgLyAkcmF0aW8pIDwgJHYyIHtcbiAgICAgICAgJHZhbHVlOiAkdjI7XG4gICAgICAgICR2MjogKCR2MiAvICRyYXRpbyk7XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgJHYxOiAoJHYxIC8gJHJhdGlvKTtcbiAgICAgICAgJHZhbHVlOiAkdjE7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQHJldHVybiAkdmFsdWU7XG59XG4iLCJAY2hhcnNldCBcIlVURi04XCI7XG5cbi8vLyBPdXRwdXRzIHRoZSBgb3ZlcmZsb3ctd3JhcGAgcHJvcGVydHkgYW5kIGl0cyBsZWdhY3kgbmFtZSBgd29yZC13cmFwYCB0b1xuLy8vIHN1cHBvcnQgYnJvd3NlcnMgdGhhdCBkbyBub3QgeWV0IHVzZSBgb3ZlcmZsb3ctd3JhcGAuXG4vLy9cbi8vLyBAYXJndW1lbnQge3N0cmluZ30gJHdyYXAgW2JyZWFrLXdvcmRdXG4vLy8gICBBY2NlcHRlZCBDU1MgdmFsdWVzIGFyZSBgbm9ybWFsYCwgYGJyZWFrLXdvcmRgLCBgaW5oZXJpdGAsIGBpbml0aWFsYCxcbi8vLyAgIG9yIGB1bnNldGAuXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzXG4vLy8gICAud3JhcHBlciB7XG4vLy8gICAgIEBpbmNsdWRlIG92ZXJmbG93LXdyYXA7XG4vLy8gICB9XG4vLy9cbi8vLyAgIC8vIENTUyBPdXRwdXRcbi8vLyAgIC53cmFwcGVyIHtcbi8vLyAgICAgd29yZC13cmFwOiBicmVhay13b3JkO1xuLy8vICAgICBvdmVyZmxvdy13cmFwOiBicmVhay13b3JkO1xuLy8vICAgfVxuXG5AbWl4aW4gb3ZlcmZsb3ctd3JhcCgkd3JhcDogYnJlYWstd29yZCkge1xuICB3b3JkLXdyYXA6ICR3cmFwO1xuICBvdmVyZmxvdy13cmFwOiAkd3JhcDtcbn1cbiIsIkBjaGFyc2V0IFwiVVRGLThcIjtcblxuLy8vIFByb3ZpZGVzIGEgY29uY2lzZSBtZXRob2QgZm9yIHRhcmdldGluZyBgcGFkZGluZ2Agb24gc3BlY2lmaWMgc2lkZXMgb2YgYVxuLy8vIGJveC4gVXNlIGEgYG51bGxgIHZhbHVlIHRvIOKAnHNraXDigJ0gYSBzaWRlLlxuLy8vXG4vLy8gQGFyZ3VtZW50IHtsaXN0fSAkdmFsdWVzXG4vLy8gICBMaXN0IG9mIHBhZGRpbmcgdmFsdWVzOyBhY2NlcHRzIENTUyBzaG9ydGhhbmQuXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzXG4vLy8gICAuZWxlbWVudC1vbmUge1xuLy8vICAgICBAaW5jbHVkZSBwYWRkaW5nKG51bGwgMXJlbSk7XG4vLy8gICB9XG4vLy9cbi8vLyAgIC8vIENTUyBPdXRwdXRcbi8vLyAgIC5lbGVtZW50LW9uZSB7XG4vLy8gICAgIHBhZGRpbmctbGVmdDogMXJlbTtcbi8vLyAgICAgcGFkZGluZy1yaWdodDogMXJlbTtcbi8vLyAgIH1cbi8vL1xuLy8vIEBleGFtcGxlIHNjc3Ncbi8vLyAgIC5lbGVtZW50LXR3byB7XG4vLy8gICAgIEBpbmNsdWRlIHBhZGRpbmcoMTB2aCBudWxsIDEwcHggNSUpO1xuLy8vICAgfVxuLy8vXG4vLy8gICAvLyBDU1MgT3V0cHV0XG4vLy8gICAuZWxlbWVudC10d28ge1xuLy8vICAgICBwYWRkaW5nLWJvdHRvbTogMTBweDtcbi8vLyAgICAgcGFkZGluZy1sZWZ0OiA1JTtcbi8vLyAgICAgcGFkZGluZy10b3A6IDEwdmg7XG4vLy8gICB9XG4vLy9cbi8vLyBAcmVxdWlyZSB7bWl4aW59IF9kaXJlY3Rpb25hbC1wcm9wZXJ0eVxuXG5AbWl4aW4gcGFkZGluZygkdmFsdWVzKSB7XG4gIEBpbmNsdWRlIF9kaXJlY3Rpb25hbC1wcm9wZXJ0eShwYWRkaW5nLCBudWxsLCAkdmFsdWVzKTtcbn1cbiIsIkBjaGFyc2V0IFwiVVRGLThcIjtcblxuLy8vIFByb3ZpZGVzIGEgY29uY2lzZSwgb25lLWxpbmUgbWV0aG9kIGZvciBzZXR0aW5nIGFuIGVsZW1lbnTigJlzIHBvc2l0aW9uaW5nXG4vLy8gcHJvcGVydGllczogYHBvc2l0aW9uYCwgYHRvcGAsIGByaWdodGAsIGBib3R0b21gIGFuZCBgbGVmdGAuIFVzZSBhIGBudWxsYFxuLy8vIHZhbHVlIHRvIOKAnHNraXDigJ0gYW4gZWRnZSBvZiB0aGUgYm94LlxuLy8vXG4vLy8gQGFyZ3VtZW50IHtzdHJpbmd9ICRwb3NpdGlvblxuLy8vICAgQSBDU1MgcG9zaXRpb24gdmFsdWUuXG4vLy9cbi8vLyBAYXJndW1lbnQge2xpc3R9ICRib3gtZWRnZS12YWx1ZXNcbi8vLyAgIExpc3Qgb2YgbGVuZ3RoczsgYWNjZXB0cyBDU1Mgc2hvcnRoYW5kLlxuLy8vXG4vLy8gQGV4YW1wbGUgc2Nzc1xuLy8vICAgLmVsZW1lbnQge1xuLy8vICAgICBAaW5jbHVkZSBwb3NpdGlvbihyZWxhdGl2ZSwgMCBudWxsIG51bGwgMTBlbSk7XG4vLy8gICB9XG4vLy9cbi8vLyAgIC8vIENTUyBPdXRwdXRcbi8vLyAgIC5lbGVtZW50IHtcbi8vLyAgICAgbGVmdDogMTBlbTtcbi8vLyAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuLy8vICAgICB0b3A6IDA7XG4vLy8gICB9XG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzXG4vLy8gICAuZWxlbWVudCB7XG4vLy8gICAgIEBpbmNsdWRlIHBvc2l0aW9uKGFic29sdXRlLCAwKTtcbi8vLyAgIH1cbi8vL1xuLy8vICAgLy8gQ1NTIE91dHB1dFxuLy8vICAgLmVsZW1lbnQge1xuLy8vICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4vLy8gICAgIHRvcDogMDtcbi8vLyAgICAgcmlnaHQ6IDA7XG4vLy8gICAgIGJvdHRvbTogMDtcbi8vLyAgICAgbGVmdDogMDtcbi8vLyAgIH1cbi8vL1xuLy8vIEByZXF1aXJlIHtmdW5jdGlvbn0gX2lzLWxlbmd0aFxuLy8vXG4vLy8gQHJlcXVpcmUge2Z1bmN0aW9ufSBfdW5wYWNrLXNob3J0aGFuZFxuXG5AbWl4aW4gcG9zaXRpb24oXG4gICRwb3NpdGlvbixcbiAgJGJveC1lZGdlLXZhbHVlc1xuKSB7XG4gICRib3gtZWRnZS12YWx1ZXM6IF91bnBhY2stc2hvcnRoYW5kKCRib3gtZWRnZS12YWx1ZXMpO1xuICAkb2Zmc2V0czogKFxuICAgIHRvcDogICAgbnRoKCRib3gtZWRnZS12YWx1ZXMsIDEpLFxuICAgIHJpZ2h0OiAgbnRoKCRib3gtZWRnZS12YWx1ZXMsIDIpLFxuICAgIGJvdHRvbTogbnRoKCRib3gtZWRnZS12YWx1ZXMsIDMpLFxuICAgIGxlZnQ6ICAgbnRoKCRib3gtZWRnZS12YWx1ZXMsIDQpLFxuICApO1xuXG4gIHBvc2l0aW9uOiAkcG9zaXRpb247XG5cbiAgQGVhY2ggJG9mZnNldCwgJHZhbHVlIGluICRvZmZzZXRzIHtcbiAgICBAaWYgX2lzLWxlbmd0aCgkdmFsdWUpIHtcbiAgICAgICN7JG9mZnNldH06ICR2YWx1ZTtcbiAgICB9XG4gIH1cbn1cbiIsIkBjaGFyc2V0IFwiVVRGLThcIjtcblxuLy8vIEdlbmVyYXRlcyB2ZW5kb3IgcHJlZml4ZXMuXG4vLy9cbi8vLyBAYXJndW1lbnQge3N0cmluZ30gJHByb3BlcnR5XG4vLy8gICBQcm9wZXJ0eSB0byBwcmVmaXguXG4vLy9cbi8vLyBAYXJndW1lbnQge3N0cmluZ30gJHZhbHVlXG4vLy8gICBWYWx1ZSB0byB1c2UuXG4vLy9cbi8vLyBAYXJndW1lbnQge2xpc3R9ICRwcmVmaXhlc1xuLy8vICAgVmVuZG9yIHByZWZpeGVzIHRvIG91dHB1dC5cbi8vL1xuLy8vIEBleGFtcGxlIHNjc3Ncbi8vLyAgIC5lbGVtZW50IHtcbi8vLyAgICAgQGluY2x1ZGUgcHJlZml4ZXIoYXBwZWFyYW5jZSwgbm9uZSwgKFwid2Via2l0XCIsIFwibW96XCIpKTtcbi8vLyAgIH1cbi8vL1xuLy8vICAgLy8gQ1NTIE91dHB1dFxuLy8vICAgLmVsZW1lbnQge1xuLy8vICAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4vLy8gICAgIC1tb3otYXBwZWFyYW5jZTogbm9uZTtcbi8vLyAgICAgYXBwZWFyYW5jZTogbm9uZTtcbi8vLyAgIH1cbi8vL1xuLy8vIEBhdXRob3IgSHVnbyBHaXJhdWRlbFxuXG5AbWl4aW4gcHJlZml4ZXIoXG4gICRwcm9wZXJ0eSxcbiAgJHZhbHVlLFxuICAkcHJlZml4ZXM6ICgpXG4pIHtcbiAgQGVhY2ggJHByZWZpeCBpbiAkcHJlZml4ZXMge1xuICAgICN7XCItXCIgKyAkcHJlZml4ICsgXCItXCIgKyAkcHJvcGVydHl9OiAkdmFsdWU7XG4gIH1cbiAgI3skcHJvcGVydHl9OiAkdmFsdWU7XG59XG4iLCJAY2hhcnNldCBcIlVURi04XCI7XG5cbi8vLyBNaXhlcyBhIGNvbG9yIHdpdGggYmxhY2suXG4vLy9cbi8vLyBAYXJndW1lbnQge2NvbG9yfSAkY29sb3Jcbi8vL1xuLy8vIEBhcmd1bWVudCB7bnVtYmVyIChwZXJjZW50YWdlKX0gJHBlcmNlbnRcbi8vLyAgIFRoZSBhbW91bnQgb2YgYmxhY2sgdG8gYmUgbWl4ZWQgaW4uXG4vLy9cbi8vLyBAcmV0dXJuIHtjb2xvcn1cbi8vL1xuLy8vIEBleGFtcGxlIHNjc3Ncbi8vLyAgIC5lbGVtZW50IHtcbi8vLyAgICAgYmFja2dyb3VuZC1jb2xvcjogc2hhZGUoI2ZmYmI1MiwgNjAlKTtcbi8vLyAgIH1cbi8vL1xuLy8vICAgLy8gQ1NTIE91dHB1dFxuLy8vICAgLmVsZW1lbnQge1xuLy8vICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNjY0YTIwO1xuLy8vICAgfVxuXG5AZnVuY3Rpb24gc2hhZGUoXG4gICRjb2xvcixcbiAgJHBlcmNlbnRcbikge1xuICBAaWYgbm90IF9pcy1jb2xvcigkY29sb3IpIHtcbiAgICBAZXJyb3IgXCJgI3skY29sb3J9YCBpcyBub3QgYSB2YWxpZCBjb2xvciBmb3IgdGhlIGAkY29sb3JgIGFyZ3VtZW50IGluIFwiICtcbiAgICAgICAgICAgXCJ0aGUgYHNoYWRlYCBtaXhpbi5cIjtcbiAgfSBAZWxzZSB7XG4gICAgQHJldHVybiBtaXgoIzAwMCwgJGNvbG9yLCAkcGVyY2VudCk7XG4gIH1cbn1cbiIsIkBjaGFyc2V0IFwiVVRGLThcIjtcblxuLy8vIFNldHMgdGhlIGB3aWR0aGAgYW5kIGBoZWlnaHRgIG9mIHRoZSBlbGVtZW50IGluIG9uZSBzdGF0ZW1lbnQuXG4vLy9cbi8vLyBAYXJndW1lbnQge251bWJlciAod2l0aCB1bml0KSB8IHN0cmluZ30gJHdpZHRoXG4vLy9cbi8vLyBAYXJndW1lbnQge251bWJlciAod2l0aCB1bml0KSB8IHN0cmluZ30gJGhlaWdodCBbJHdpZHRoXVxuLy8vXG4vLy8gQGV4YW1wbGUgc2Nzc1xuLy8vICAgLmZpcnN0LWVsZW1lbnQge1xuLy8vICAgICBAaW5jbHVkZSBzaXplKDJlbSk7XG4vLy8gICB9XG4vLy9cbi8vLyAgIC8vIENTUyBPdXRwdXRcbi8vLyAgIC5maXJzdC1lbGVtZW50IHtcbi8vLyAgICAgd2lkdGg6IDJlbTtcbi8vLyAgICAgaGVpZ2h0OiAyZW07XG4vLy8gICB9XG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzXG4vLy8gICAuc2Vjb25kLWVsZW1lbnQge1xuLy8vICAgICBAaW5jbHVkZSBzaXplKGF1dG8sIDEwZW0pO1xuLy8vICAgfVxuLy8vXG4vLy8gICAvLyBDU1MgT3V0cHV0XG4vLy8gICAuc2Vjb25kLWVsZW1lbnQge1xuLy8vICAgICB3aWR0aDogYXV0bztcbi8vLyAgICAgaGVpZ2h0OiAxMGVtO1xuLy8vICAgfVxuLy8vXG4vLy8gQHJlcXVpcmUge2Z1bmN0aW9ufSBfaXMtc2l6ZVxuXG5AbWl4aW4gc2l6ZShcbiAgJHdpZHRoLFxuICAkaGVpZ2h0OiAkd2lkdGhcbikge1xuICBAaWYgX2lzLXNpemUoJGhlaWdodCkge1xuICAgIGhlaWdodDogJGhlaWdodDtcbiAgfSBAZWxzZSB7XG4gICAgQGVycm9yIFwiYCN7JGhlaWdodH1gIGlzIG5vdCBhIHZhbGlkIGxlbmd0aCBmb3IgdGhlIGAkaGVpZ2h0YCBhcmd1bWVudCBcIiArXG4gICAgICAgICAgIFwiaW4gdGhlIGBzaXplYCBtaXhpbi5cIjtcbiAgfVxuXG4gIEBpZiBfaXMtc2l6ZSgkd2lkdGgpIHtcbiAgICB3aWR0aDogJHdpZHRoO1xuICB9IEBlbHNlIHtcbiAgICBAZXJyb3IgXCJgI3skd2lkdGh9YCBpcyBub3QgYSB2YWxpZCBsZW5ndGggZm9yIHRoZSBgJHdpZHRoYCBhcmd1bWVudCBcIiArXG4gICAgICAgICAgIFwiaW4gdGhlIGBzaXplYCBtaXhpbi5cIjtcbiAgfVxufVxuIiwiQGNoYXJzZXQgXCJVVEYtOFwiO1xuXG4vLy8gU3RyaXBzIHRoZSB1bml0IGZyb20gYSBudW1iZXIuXG4vLy9cbi8vLyBAYXJndW1lbnQge251bWJlcn0gJHZhbHVlXG4vLy9cbi8vLyBAcmV0dXJuIHtudW1iZXIgKHVuaXRsZXNzKX1cbi8vL1xuLy8vIEBleGFtcGxlIHNjc3Ncbi8vLyAgICRkaW1lbnNpb246IHN0cmlwLXVuaXQoMTBlbSk7XG4vLy9cbi8vLyAgIC8vIE91dHB1dFxuLy8vICAgJGRpbWVuc2lvbjogMTA7XG5cbkBmdW5jdGlvbiBzdHJpcC11bml0KCR2YWx1ZSkge1xuICBAcmV0dXJuICgkdmFsdWUgLyAoJHZhbHVlICogMCArIDEpKTtcbn1cbiIsIkBjaGFyc2V0IFwiVVRGLThcIjtcblxuLy8vL1xuLy8vIEB0eXBlIGxpc3Rcbi8vL1xuLy8vIEByZXF1aXJlIHtmdW5jdGlvbn0gX2Fzc2lnbi1pbnB1dHNcbi8vL1xuLy8vIEByZXF1aXJlIHt2YXJpYWJsZX0gJF90ZXh0LWlucHV0cy1saXN0XG4vLy8vXG5cbi8vLyBBIGxpc3Qgb2YgYWxsIF90ZXh0LWJhc2VkXyBIVE1MIGlucHV0cy4gUGxlYXNlIG5vdGUgdGhhdCB5b3UgbXVzdFxuLy8vIGludGVycG9sYXRlIHRoZSB2YXJpYWJsZSAoYCN7fWApIHRvIHVzZSBpdCBhcyBhIHNlbGVjdG9yLlxuLy8vXG4vLy8gQGV4YW1wbGUgc2Nzc1xuLy8vICAgI3skYWxsLXRleHQtaW5wdXRzfSB7XG4vLy8gICAgIGJvcmRlcjogMXB4IHNvbGlkICNjY2M7XG4vLy8gICB9XG4vLy9cbi8vLyAgIC8vIENTUyBPdXRwdXRcbi8vLyAgIFt0eXBlPSdjb2xvciddLFxuLy8vICAgW3R5cGU9J2RhdGUnXSxcbi8vLyAgIFt0eXBlPSdkYXRldGltZSddLFxuLy8vICAgW3R5cGU9J2RhdGV0aW1lLWxvY2FsJ10sXG4vLy8gICBbdHlwZT0nZW1haWwnXSxcbi8vLyAgIFt0eXBlPSdtb250aCddLFxuLy8vICAgW3R5cGU9J251bWJlciddLFxuLy8vICAgW3R5cGU9J3Bhc3N3b3JkJ10sXG4vLy8gICBbdHlwZT0nc2VhcmNoJ10sXG4vLy8gICBbdHlwZT0ndGVsJ10sXG4vLy8gICBbdHlwZT0ndGV4dCddLFxuLy8vICAgW3R5cGU9J3RpbWUnXSxcbi8vLyAgIFt0eXBlPSd1cmwnXSxcbi8vLyAgIFt0eXBlPSd3ZWVrJ10sXG4vLy8gICBpbnB1dDpub3QoW3R5cGVdKSxcbi8vLyAgIHRleHRhcmVhIHtcbi8vLyAgICAgYm9yZGVyOiAxcHggc29saWQgI2NjYztcbi8vLyAgIH1cblxuJGFsbC10ZXh0LWlucHV0czogX2Fzc2lnbi1pbnB1dHMoJF90ZXh0LWlucHV0cy1saXN0KTtcblxuLy8vIEEgbGlzdCBvZiBhbGwgX3RleHQtYmFzZWRfIEhUTUwgaW5wdXRzIHdpdGggdGhlIGA6YWN0aXZlYCBwc2V1ZG8tY2xhc3Ncbi8vLyBhcHBsaWVkLiBQbGVhc2Ugbm90ZSB0aGF0IHlvdSBtdXN0IGludGVycG9sYXRlIHRoZSB2YXJpYWJsZSAoYCN7fWApIHRvIHVzZVxuLy8vIGl0IGFzIGEgc2VsZWN0b3IuXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzXG4vLy8gICAjeyRhbGwtdGV4dC1pbnB1dHMtYWN0aXZlfSB7XG4vLy8gICAgIGJvcmRlcjogMXB4IHNvbGlkICNhYWE7XG4vLy8gICB9XG4vLy9cbi8vLyAgIC8vIENTUyBPdXRwdXRcbi8vLyAgIFt0eXBlPSdjb2xvciddOmFjdGl2ZSxcbi8vLyAgIFt0eXBlPSdkYXRlJ106YWN0aXZlLFxuLy8vICAgW3R5cGU9J2RhdGV0aW1lJ106YWN0aXZlLFxuLy8vICAgW3R5cGU9J2RhdGV0aW1lLWxvY2FsJ106YWN0aXZlLFxuLy8vICAgW3R5cGU9J2VtYWlsJ106YWN0aXZlLFxuLy8vICAgW3R5cGU9J21vbnRoJ106YWN0aXZlLFxuLy8vICAgW3R5cGU9J251bWJlciddOmFjdGl2ZSxcbi8vLyAgIFt0eXBlPSdwYXNzd29yZCddOmFjdGl2ZSxcbi8vLyAgIFt0eXBlPSdzZWFyY2gnXTphY3RpdmUsXG4vLy8gICBbdHlwZT0ndGVsJ106YWN0aXZlLFxuLy8vICAgW3R5cGU9J3RleHQnXTphY3RpdmUsXG4vLy8gICBbdHlwZT0ndGltZSddOmFjdGl2ZSxcbi8vLyAgIFt0eXBlPSd1cmwnXTphY3RpdmUsXG4vLy8gICBbdHlwZT0nd2VlayddOmFjdGl2ZSxcbi8vLyAgIGlucHV0Om5vdChbdHlwZV0pOmFjdGl2ZSxcbi8vLyAgIHRleHRhcmVhOmFjdGl2ZSB7XG4vLy8gICAgIGJvcmRlcjogMXB4IHNvbGlkICNhYWE7XG4vLy8gICB9XG5cbiRhbGwtdGV4dC1pbnB1dHMtYWN0aXZlOiBfYXNzaWduLWlucHV0cygkX3RleHQtaW5wdXRzLWxpc3QsIGFjdGl2ZSk7XG5cbi8vLyBBIGxpc3Qgb2YgYWxsIF90ZXh0LWJhc2VkXyBIVE1MIGlucHV0cyB3aXRoIHRoZSBgOmZvY3VzYCBwc2V1ZG8tY2xhc3Ncbi8vLyBhcHBsaWVkLiBQbGVhc2Ugbm90ZSB0aGF0IHlvdSBtdXN0IGludGVycG9sYXRlIHRoZSB2YXJpYWJsZSAoYCN7fWApIHRvIHVzZVxuLy8vIGl0IGFzIGEgc2VsZWN0b3IuXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzXG4vLy8gICAjeyRhbGwtdGV4dC1pbnB1dHMtZm9jdXN9IHtcbi8vLyAgICAgYm9yZGVyOiAxcHggc29saWQgIzE1NjVjMDtcbi8vLyAgIH1cbi8vL1xuLy8vICAgLy8gQ1NTIE91dHB1dFxuLy8vICAgW3R5cGU9J2NvbG9yJ106Zm9jdXMsXG4vLy8gICBbdHlwZT0nZGF0ZSddOmZvY3VzLFxuLy8vICAgW3R5cGU9J2RhdGV0aW1lJ106Zm9jdXMsXG4vLy8gICBbdHlwZT0nZGF0ZXRpbWUtbG9jYWwnXTpmb2N1cyxcbi8vLyAgIFt0eXBlPSdlbWFpbCddOmZvY3VzLFxuLy8vICAgW3R5cGU9J21vbnRoJ106Zm9jdXMsXG4vLy8gICBbdHlwZT0nbnVtYmVyJ106Zm9jdXMsXG4vLy8gICBbdHlwZT0ncGFzc3dvcmQnXTpmb2N1cyxcbi8vLyAgIFt0eXBlPSdzZWFyY2gnXTpmb2N1cyxcbi8vLyAgIFt0eXBlPSd0ZWwnXTpmb2N1cyxcbi8vLyAgIFt0eXBlPSd0ZXh0J106Zm9jdXMsXG4vLy8gICBbdHlwZT0ndGltZSddOmZvY3VzLFxuLy8vICAgW3R5cGU9J3VybCddOmZvY3VzLFxuLy8vICAgW3R5cGU9J3dlZWsnXTpmb2N1cyxcbi8vLyAgIGlucHV0Om5vdChbdHlwZV0pOmZvY3VzLFxuLy8vICAgdGV4dGFyZWE6Zm9jdXMge1xuLy8vICAgICBib3JkZXI6IDFweCBzb2xpZCAjMTU2NWMwO1xuLy8vICAgfVxuXG4kYWxsLXRleHQtaW5wdXRzLWZvY3VzOiBfYXNzaWduLWlucHV0cygkX3RleHQtaW5wdXRzLWxpc3QsIGZvY3VzKTtcblxuLy8vIEEgbGlzdCBvZiBhbGwgX3RleHQtYmFzZWRfIEhUTUwgaW5wdXRzIHdpdGggdGhlIGA6aG92ZXJgIHBzZXVkby1jbGFzc1xuLy8vIGFwcGxpZWQuIFBsZWFzZSBub3RlIHRoYXQgeW91IG11c3QgaW50ZXJwb2xhdGUgdGhlIHZhcmlhYmxlIChgI3t9YCkgdG8gdXNlXG4vLy8gaXQgYXMgYSBzZWxlY3Rvci5cbi8vL1xuLy8vIEBleGFtcGxlIHNjc3Ncbi8vLyAgICN7JGFsbC10ZXh0LWlucHV0cy1ob3Zlcn0ge1xuLy8vICAgICBib3JkZXI6IDFweCBzb2xpZCAjYWFhO1xuLy8vICAgfVxuLy8vXG4vLy8gICAvLyBDU1MgT3V0cHV0XG4vLy8gICBbdHlwZT0nY29sb3InXTpob3Zlcixcbi8vLyAgIFt0eXBlPSdkYXRlJ106aG92ZXIsXG4vLy8gICBbdHlwZT0nZGF0ZXRpbWUnXTpob3Zlcixcbi8vLyAgIFt0eXBlPSdkYXRldGltZS1sb2NhbCddOmhvdmVyLFxuLy8vICAgW3R5cGU9J2VtYWlsJ106aG92ZXIsXG4vLy8gICBbdHlwZT0nbW9udGgnXTpob3Zlcixcbi8vLyAgIFt0eXBlPSdudW1iZXInXTpob3Zlcixcbi8vLyAgIFt0eXBlPSdwYXNzd29yZCddOmhvdmVyLFxuLy8vICAgW3R5cGU9J3NlYXJjaCddOmhvdmVyLFxuLy8vICAgW3R5cGU9J3RlbCddOmhvdmVyLFxuLy8vICAgW3R5cGU9J3RleHQnXTpob3Zlcixcbi8vLyAgIFt0eXBlPSd0aW1lJ106aG92ZXIsXG4vLy8gICBbdHlwZT0ndXJsJ106aG92ZXIsXG4vLy8gICBbdHlwZT0nd2VlayddOmhvdmVyLFxuLy8vICAgaW5wdXQ6bm90KFt0eXBlXSk6aG92ZXIsXG4vLy8gICB0ZXh0YXJlYTpob3ZlciB7XG4vLy8gICAgIGJvcmRlcjogMXB4IHNvbGlkICNhYWE7XG4vLy8gICB9XG5cbiRhbGwtdGV4dC1pbnB1dHMtaG92ZXI6IF9hc3NpZ24taW5wdXRzKCRfdGV4dC1pbnB1dHMtbGlzdCwgaG92ZXIpO1xuXG4vLy8gQSBsaXN0IG9mIGFsbCBfdGV4dC1iYXNlZF8gSFRNTCBpbnB1dHMgd2l0aCB0aGUgYDppbnZhbGlkYCBwc2V1ZG8tY2xhc3Ncbi8vLyBhcHBsaWVkLiBQbGVhc2Ugbm90ZSB0aGF0IHlvdSBtdXN0IGludGVycG9sYXRlIHRoZSB2YXJpYWJsZSAoYCN7fWApIHRvIHVzZVxuLy8vIGl0IGFzIGEgc2VsZWN0b3IuXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzXG4vLy8gICAjeyRhbGwtdGV4dC1pbnB1dHMtaW52YWxpZH0ge1xuLy8vICAgICBib3JkZXI6IDFweCBzb2xpZCAjMDBmO1xuLy8vICAgfVxuLy8vXG4vLy8gICAvLyBDU1MgT3V0cHV0XG4vLy8gICBbdHlwZT0nY29sb3InXTppbnZhbGlkLFxuLy8vICAgW3R5cGU9J2RhdGUnXTppbnZhbGlkLFxuLy8vICAgW3R5cGU9J2RhdGV0aW1lJ106aW52YWxpZCxcbi8vLyAgIFt0eXBlPSdkYXRldGltZS1sb2NhbCddOmludmFsaWQsXG4vLy8gICBbdHlwZT0nZW1haWwnXTppbnZhbGlkLFxuLy8vICAgW3R5cGU9J21vbnRoJ106aW52YWxpZCxcbi8vLyAgIFt0eXBlPSdudW1iZXInXTppbnZhbGlkLFxuLy8vICAgW3R5cGU9J3Bhc3N3b3JkJ106aW52YWxpZCxcbi8vLyAgIFt0eXBlPSdzZWFyY2gnXTppbnZhbGlkLFxuLy8vICAgW3R5cGU9J3RlbCddOmludmFsaWQsXG4vLy8gICBbdHlwZT0ndGV4dCddOmludmFsaWQsXG4vLy8gICBbdHlwZT0ndGltZSddOmludmFsaWQsXG4vLy8gICBbdHlwZT0ndXJsJ106aW52YWxpZCxcbi8vLyAgIFt0eXBlPSd3ZWVrJ106aW52YWxpZCxcbi8vLyAgIGlucHV0Om5vdChbdHlwZV0pOmludmFsaWQsXG4vLy8gICB0ZXh0YXJlYTppbnZhbGlkIHtcbi8vLyAgICAgYm9yZGVyOiAxcHggc29saWQgIzAwZjtcbi8vLyAgIH1cblxuJGFsbC10ZXh0LWlucHV0cy1pbnZhbGlkOiBfYXNzaWduLWlucHV0cygkX3RleHQtaW5wdXRzLWxpc3QsIGludmFsaWQpO1xuIiwiQGNoYXJzZXQgXCJVVEYtOFwiO1xuXG4vLyBzY3NzLWxpbnQ6ZGlzYWJsZSBTcGFjZUFmdGVyQ29tbWEsIFVubmVjZXNzYXJ5TWFudGlzc2EsIFRyYWlsaW5nWmVyb1xuXG4vLy8vXG4vLy8gQ1NTIGN1YmljLWJlemllciB0aW1pbmcgZnVuY3Rpb25zLlxuLy8vXG4vLy8gQGxpbmsgaHR0cHM6Ly9nb28uZ2wvcDh1NlNLXG4vLy9cbi8vLyBAdHlwZSBzdHJpbmdcbi8vLy9cblxuJGVhc2UtaW4tcXVhZDogICAgICBjdWJpYy1iZXppZXIoMC41NTAsICAwLjA4NSwgMC42ODAsIDAuNTMwKTtcbiRlYXNlLWluLWN1YmljOiAgICAgY3ViaWMtYmV6aWVyKDAuNTUwLCAgMC4wNTUsIDAuNjc1LCAwLjE5MCk7XG4kZWFzZS1pbi1xdWFydDogICAgIGN1YmljLWJlemllcigwLjg5NSwgIDAuMDMwLCAwLjY4NSwgMC4yMjApO1xuJGVhc2UtaW4tcXVpbnQ6ICAgICBjdWJpYy1iZXppZXIoMC43NTUsICAwLjA1MCwgMC44NTUsIDAuMDYwKTtcbiRlYXNlLWluLXNpbmU6ICAgICAgY3ViaWMtYmV6aWVyKDAuNDcwLCAgMC4wMDAsIDAuNzQ1LCAwLjcxNSk7XG4kZWFzZS1pbi1leHBvOiAgICAgIGN1YmljLWJlemllcigwLjk1MCwgIDAuMDUwLCAwLjc5NSwgMC4wMzUpO1xuJGVhc2UtaW4tY2lyYzogICAgICBjdWJpYy1iZXppZXIoMC42MDAsICAwLjA0MCwgMC45ODAsIDAuMzM1KTtcbiRlYXNlLWluLWJhY2s6ICAgICAgY3ViaWMtYmV6aWVyKDAuNjAwLCAtMC4yODAsIDAuNzM1LCAwLjA0NSk7XG5cbiRlYXNlLW91dC1xdWFkOiAgICAgY3ViaWMtYmV6aWVyKDAuMjUwLCAgMC40NjAsIDAuNDUwLCAwLjk0MCk7XG4kZWFzZS1vdXQtY3ViaWM6ICAgIGN1YmljLWJlemllcigwLjIxNSwgIDAuNjEwLCAwLjM1NSwgMS4wMDApO1xuJGVhc2Utb3V0LXF1YXJ0OiAgICBjdWJpYy1iZXppZXIoMC4xNjUsICAwLjg0MCwgMC40NDAsIDEuMDAwKTtcbiRlYXNlLW91dC1xdWludDogICAgY3ViaWMtYmV6aWVyKDAuMjMwLCAgMS4wMDAsIDAuMzIwLCAxLjAwMCk7XG4kZWFzZS1vdXQtc2luZTogICAgIGN1YmljLWJlemllcigwLjM5MCwgIDAuNTc1LCAwLjU2NSwgMS4wMDApO1xuJGVhc2Utb3V0LWV4cG86ICAgICBjdWJpYy1iZXppZXIoMC4xOTAsICAxLjAwMCwgMC4yMjAsIDEuMDAwKTtcbiRlYXNlLW91dC1jaXJjOiAgICAgY3ViaWMtYmV6aWVyKDAuMDc1LCAgMC44MjAsIDAuMTY1LCAxLjAwMCk7XG4kZWFzZS1vdXQtYmFjazogICAgIGN1YmljLWJlemllcigwLjE3NSwgIDAuODg1LCAwLjMyMCwgMS4yNzUpO1xuXG4kZWFzZS1pbi1vdXQtcXVhZDogIGN1YmljLWJlemllcigwLjQ1NSwgIDAuMDMwLCAwLjUxNSwgMC45NTUpO1xuJGVhc2UtaW4tb3V0LWN1YmljOiBjdWJpYy1iZXppZXIoMC42NDUsICAwLjA0NSwgMC4zNTUsIDEuMDAwKTtcbiRlYXNlLWluLW91dC1xdWFydDogY3ViaWMtYmV6aWVyKDAuNzcwLCAgMC4wMDAsIDAuMTc1LCAxLjAwMCk7XG4kZWFzZS1pbi1vdXQtcXVpbnQ6IGN1YmljLWJlemllcigwLjg2MCwgIDAuMDAwLCAwLjA3MCwgMS4wMDApO1xuJGVhc2UtaW4tb3V0LXNpbmU6ICBjdWJpYy1iZXppZXIoMC40NDUsICAwLjA1MCwgMC41NTAsIDAuOTUwKTtcbiRlYXNlLWluLW91dC1leHBvOiAgY3ViaWMtYmV6aWVyKDEuMDAwLCAgMC4wMDAsIDAuMDAwLCAxLjAwMCk7XG4kZWFzZS1pbi1vdXQtY2lyYzogIGN1YmljLWJlemllcigwLjc4NSwgIDAuMTM1LCAwLjE1MCwgMC44NjApO1xuJGVhc2UtaW4tb3V0LWJhY2s6ICBjdWJpYy1iZXppZXIoMC42ODAsIC0wLjU1MCwgMC4yNjUsIDEuNTUwKTtcbiIsIkBjaGFyc2V0IFwiVVRGLThcIjtcblxuLy8vIE1peGVzIGEgY29sb3Igd2l0aCB3aGl0ZS5cbi8vL1xuLy8vIEBhcmd1bWVudCB7Y29sb3J9ICRjb2xvclxuLy8vXG4vLy8gQGFyZ3VtZW50IHtudW1iZXIgKHBlcmNlbnRhZ2UpfSAkcGVyY2VudFxuLy8vICAgVGhlIGFtb3VudCBvZiB3aGl0ZSB0byBiZSBtaXhlZCBpbi5cbi8vL1xuLy8vIEByZXR1cm4ge2NvbG9yfVxuLy8vXG4vLy8gQGV4YW1wbGUgc2Nzc1xuLy8vICAgLmVsZW1lbnQge1xuLy8vICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0aW50KCM2ZWNhYTYsIDQwJSk7XG4vLy8gICB9XG4vLy9cbi8vLyAgIC8vIENTUyBPdXRwdXRcbi8vLyAgIC5lbGVtZW50IHtcbi8vLyAgICAgYmFja2dyb3VuZC1jb2xvcjogI2E4ZGZjOTtcbi8vLyAgIH1cblxuQGZ1bmN0aW9uIHRpbnQoXG4gICRjb2xvcixcbiAgJHBlcmNlbnRcbikge1xuICBAaWYgbm90IF9pcy1jb2xvcigkY29sb3IpIHtcbiAgICBAZXJyb3IgXCJgI3skY29sb3J9YCBpcyBub3QgYSB2YWxpZCBjb2xvciBmb3IgdGhlIGAkY29sb3JgIGFyZ3VtZW50IGluIFwiICtcbiAgICAgICAgICAgXCJ0aGUgYHRpbnRgIG1peGluLlwiO1xuICB9IEBlbHNlIHtcbiAgICBAcmV0dXJuIG1peCgjZmZmLCAkY29sb3IsICRwZXJjZW50KTtcbiAgfVxufVxuIiwiQGNoYXJzZXQgXCJVVEYtOFwiO1xuXG4vLy8gR2VuZXJhdGVzIGEgdHJpYW5nbGUgcG9pbnRpbmcgaW4gYSBzcGVjaWZpZWQgZGlyZWN0aW9uLlxuLy8vXG4vLy8gQGFyZ3VtZW50IHtzdHJpbmd9ICRkaXJlY3Rpb25cbi8vLyAgIFRoZSBkaXJlY3Rpb24gdGhlIHRyaWFuZ2xlIHNob3VsZCBwb2ludC4gQWNjZXB0cyBgdXBgLCBgdXAtcmlnaHRgLFxuLy8vICAgYHJpZ2h0YCwgYGRvd24tcmlnaHRgLCBgZG93bmAsIGBkb3duLWxlZnRgLCBgbGVmdGAgb3IgYHVwLWxlZnRgLlxuLy8vXG4vLy8gQGFyZ3VtZW50IHtudW1iZXIgKHdpdGggdW5pdCl9ICR3aWR0aFxuLy8vICAgV2lkdGggb2YgdGhlIHRyaWFuZ2xlLlxuLy8vXG4vLy8gQGFyZ3VtZW50IHtudW1iZXIgKHdpdGggdW5pdCl9ICRoZWlnaHRcbi8vLyAgIEhlaWdodCBvZiB0aGUgdHJpYW5nbGUuXG4vLy9cbi8vLyBAYXJndW1lbnQge2NvbG9yfSAkY29sb3Jcbi8vLyAgIENvbG9yIG9mIHRoZSB0cmlhbmdsZS5cbi8vL1xuLy8vIEBleGFtcGxlIHNjc3Ncbi8vLyAgIC5lbGVtZW50IHtcbi8vLyAgICAgJjo6YmVmb3JlIHtcbi8vLyAgICAgICBAaW5jbHVkZSB0cmlhbmdsZShcInVwXCIsIDJyZW0sIDFyZW0sICNiMjVjOWMpO1xuLy8vICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4vLy8gICAgIH1cbi8vLyAgIH1cbi8vL1xuLy8vICAgLy8gQ1NTIE91dHB1dFxuLy8vICAgLmVsZW1lbnQ6OmJlZm9yZSB7XG4vLy8gICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4vLy8gICAgIGhlaWdodDogMDtcbi8vLyAgICAgd2lkdGg6IDA7XG4vLy8gICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgI2IyNWM5Yztcbi8vLyAgICAgYm9yZGVyLXdpZHRoOiAwIDFyZW0gMXJlbTtcbi8vLyAgICAgY29udGVudDogXCJcIjtcbi8vLyAgIH1cblxuQG1peGluIHRyaWFuZ2xlKFxuICAkZGlyZWN0aW9uLFxuICAkd2lkdGgsXG4gICRoZWlnaHQsXG4gICRjb2xvclxuKSB7XG4gIEBpZiBub3QgaW5kZXgoXG4gICAgXCJ1cFwiIFwidXAtcmlnaHRcIiBcInJpZ2h0XCIgXCJkb3duLXJpZ2h0XCIgXCJkb3duXCIgXCJkb3duLWxlZnRcIiBcImxlZnRcIiBcInVwLWxlZnRcIixcbiAgICAkZGlyZWN0aW9uXG4gICkge1xuICAgIEBlcnJvciBcIkRpcmVjdGlvbiBtdXN0IGJlIGB1cGAsIGB1cC1yaWdodGAsIGByaWdodGAsIGBkb3duLXJpZ2h0YCwgXCIgK1xuICAgICAgICAgICBcImBkb3duYCwgYGRvd24tbGVmdGAsIGBsZWZ0YCBvciBgdXAtbGVmdGAuXCI7XG4gIH0gQGVsc2UgaWYgbm90IF9pcy1jb2xvcigkY29sb3IpIHtcbiAgICBAZXJyb3IgXCJgI3skY29sb3J9YCBpcyBub3QgYSB2YWxpZCBjb2xvciBmb3IgdGhlIGAkY29sb3JgIGFyZ3VtZW50IGluIFwiICtcbiAgICAgICAgICAgXCJ0aGUgYHRyaWFuZ2xlYCBtaXhpbi5cIjtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgd2lkdGg6IDA7XG5cbiAgICBAaWYgJGRpcmVjdGlvbiA9PSBcInVwXCIge1xuICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAkY29sb3I7XG4gICAgICBib3JkZXItd2lkdGg6IDAgKCR3aWR0aCAvIDIpICRoZWlnaHQ7XG4gICAgfSBAZWxzZSBpZiAkZGlyZWN0aW9uID09IFwidXAtcmlnaHRcIiB7XG4gICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50ICRjb2xvciB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlci13aWR0aDogMCAkd2lkdGggJHdpZHRoIDA7XG4gICAgfSBAZWxzZSBpZiAkZGlyZWN0aW9uID09IFwicmlnaHRcIiB7XG4gICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICRjb2xvcjtcbiAgICAgIGJvcmRlci13aWR0aDogKCRoZWlnaHQgLyAyKSAwICgkaGVpZ2h0IC8gMikgJHdpZHRoO1xuICAgIH0gQGVsc2UgaWYgJGRpcmVjdGlvbiA9PSBcImRvd24tcmlnaHRcIiB7XG4gICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICRjb2xvcjtcbiAgICAgIGJvcmRlci13aWR0aDogMCAwICR3aWR0aCAkd2lkdGg7XG4gICAgfSBAZWxzZSBpZiAkZGlyZWN0aW9uID09IFwiZG93blwiIHtcbiAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLXdpZHRoOiAkaGVpZ2h0ICgkd2lkdGggLyAyKSAwO1xuICAgIH0gQGVsc2UgaWYgJGRpcmVjdGlvbiA9PSBcImRvd24tbGVmdFwiIHtcbiAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgJGNvbG9yO1xuICAgICAgYm9yZGVyLXdpZHRoOiAkd2lkdGggMCAwICR3aWR0aDtcbiAgICB9IEBlbHNlIGlmICRkaXJlY3Rpb24gPT0gXCJsZWZ0XCIge1xuICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCAkY29sb3IgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXItd2lkdGg6ICgkaGVpZ2h0IC8gMikgJHdpZHRoICgkaGVpZ2h0IC8gMikgMDtcbiAgICB9IEBlbHNlIGlmICRkaXJlY3Rpb24gPT0gXCJ1cC1sZWZ0XCIge1xuICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3IgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXItd2lkdGg6ICR3aWR0aCAkd2lkdGggMCAwO1xuICAgIH1cbiAgfVxufVxuIiwiQGNoYXJzZXQgXCJVVEYtOFwiO1xuXG4vLy8gR2VuZXJhdGVzIHZlbmRvciBwcmVmaXhlcyBmb3IgdmFsdWVzLlxuLy8vXG4vLy8gQGFyZ3VtZW50IHtzdHJpbmd9ICRwcm9wZXJ0eVxuLy8vICAgUHJvcGVydHkgdG8gdXNlLlxuLy8vXG4vLy8gQGFyZ3VtZW50IHtzdHJpbmd9ICR2YWx1ZVxuLy8vICAgVmFsdWUgdG8gcHJlZml4LlxuLy8vXG4vLy8gQGFyZ3VtZW50IHtsaXN0fSAkcHJlZml4ZXNcbi8vLyAgIFZlbmRvciBwcmVmaXhlcyB0byBvdXRwdXQuXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzXG4vLy8gICAuZWxlbWVudCB7XG4vLy8gICAgIEBpbmNsdWRlIHZhbHVlLXByZWZpeGVyKGN1cnNvciwgZ3JhYiwgKFwid2Via2l0XCIsIFwibW96XCIpKTtcbi8vLyAgIH1cbi8vL1xuLy8vICAgLy8gQ1NTIE91dHB1dFxuLy8vICAgLmVsZW1lbnQge1xuLy8vICAgICBjdXJzb3I6IC13ZWJraXQtZ3JhYjtcbi8vLyAgICAgY3Vyc29yOiAtbW96LWdyYWI7XG4vLy8gICAgIGN1cnNvcjogZ3JhYjtcbi8vLyAgIH1cbi8vL1xuLy8vIEBhdXRob3IgTWF0dGhldyBUb2JpYXN6XG5cbkBtaXhpbiB2YWx1ZS1wcmVmaXhlcihcbiAgJHByb3BlcnR5LFxuICAkdmFsdWUsXG4gICRwcmVmaXhlczogKClcbikge1xuICBAZWFjaCAkcHJlZml4IGluICRwcmVmaXhlcyB7XG4gICAgI3skcHJvcGVydHl9OiAje1wiLVwiICsgJHByZWZpeCArIFwiLVwiICsgJHZhbHVlfTtcbiAgfVxuICAjeyRwcm9wZXJ0eX06ICR2YWx1ZTtcbn1cbiIsIi8vIEJpdHRlcnMgMS4wLjBcbi8vIGh0dHA6Ly9iaXR0ZXJzLmJvdXJib24uaW9cbi8vIENvcHlyaWdodCAyMDEzLTIwMTUgdGhvdWdodGJvdCwgaW5jLlxuLy8gTUlUIExpY2Vuc2VcblxuQGltcG9ydCBcInZhcmlhYmxlc1wiO1xuXG4vLyBOZWF0IFNldHRpbmdzIC0tIHVuY29tbWVudCBpZiB1c2luZyBOZWF0IC0tIG11c3QgYmUgaW1wb3J0ZWQgYmVmb3JlIE5lYXRcbi8vIEBpbXBvcnQgXCJncmlkLXNldHRpbmdzXCI7XG5cbkBpbXBvcnQgXCJidXR0b25zXCI7XG5AaW1wb3J0IFwibmF2LWl0ZW1zXCI7XG5AaW1wb3J0IFwiZm9ybXNcIjtcbkBpbXBvcnQgXCJsaXN0c1wiO1xuQGltcG9ydCBcInRhYmxlc1wiO1xuQGltcG9ydCBcInR5cG9ncmFwaHlcIjtcbiIsIi8vLyBSb2JvdG8gZm9udCBzdGFjay5cbi8vL1xuLy8vIEB0eXBlIExpc3RcblxuJHJvYm90bzogXCJSb2JvdG9cIiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBcIkhlbHZldGljYVwiLCBcIkFyaWFsXCIsIHNhbnMtc2VyaWY7XG4kcm9ib3RvQzogXCJSb2JvdG8gQ29uZGVuc2VkXCIsIFwiSGVsdmV0aWNhIE5ldWUgQ29uZGVuc2VkXCIsIFwiSGVsdmV0aWNhIENvbmRlbnNlZFwiLCBcIkFyaWFsIE5hcnJvd1wiLCBzYW5zLXNlcmlmO1xuXG4vLyBUeXBvZ3JhcGh5XG4kYmFzZS1mb250LWZhbWlseTogJHJvYm90bztcbiRiYXNlLWZvbnQtdGhpbjogJHJvYm90b0M7XG4kaGVhZGluZy1mb250LWZhbWlseTogJGJhc2UtZm9udC1mYW1pbHk7XG4kaGVhZGluZy1mb250LXRoaW46ICRyb2JvdG9DO1xuXG4vLyBGb250IFNpemVzXG4kYmFzZS1mb250LXNpemU6IDE4cHg7XG5cbi8vIExpbmUgaGVpZ2h0XG4kYmFzZS1saW5lLWhlaWdodDogMS41O1xuJGhlYWRpbmctbGluZS1oZWlnaHQ6IDEuMjtcblxuLy8gT3RoZXIgU2l6ZXNcbiRiYXNlLWJvcmRlci1yYWRpdXM6IC4yZW07XG4kYmFzZS1zcGFjaW5nOiAkYmFzZS1saW5lLWhlaWdodCAqIDFlbTtcbiRzbWFsbC1zcGFjaW5nOiAkYmFzZS1zcGFjaW5nIC8gMjtcbiRiYXNlLXotaW5kZXg6IDA7XG5cbi8vIENvbG9yc1xuJGJsdWU6ICM2YmFiZDI7XG4kYmx1ZS1zYXR1cmF0ZWQ6ICMyNDkwZDE7XG4kb3JhbmdlOiAjZTE3ZDFhO1xuJGdyZWVuOiAjODJjZTM5O1xuJHJlZDogI2I2NDQzNDtcbiR5ZWxsb3c6ICNmOWU5Mjc7XG4kdmlvbGV0OiAjNkUzQTc1O1xuJGZiQ29sb3I6ICMzYTY3YTE7XG4kaW5Db2xvcjogIzAwN2FiOTtcbiRncENvbG9yOiAjYzUzODI5O1xuXG4kZGFya2VzdC1ncmF5OiAjMjIyO1xuJGRhcmstZ3JheTogIzQyNDI0MjtcbiRtZWQtZGFyay1ncmF5OiAjMzUzNTM1O1xuJG1lZGl1bS1ncmF5OiAjOTk5O1xuJGxpZ2h0LWdyYXk6ICNhMWExYTE7XG4kbGlnaHRlc3QtZ3JheTogI2QzZDNkMztcbiRvZmYtd2hpdGU6ICNmOGY4Zjg7XG4kYmFzZS13aGl0ZTogI2ZmZjtcbiRiYXNlLWJsYWNrOiAjMDAwO1xuXG4vLyBGb250IENvbG9yc1xuJGJhc2UtYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiRiYXNlLWZvbnQtY29sb3I6ICRkYXJrLWdyYXk7XG4kYWN0aW9uLWNvbG9yOiAkYmx1ZTtcblxuLy8gQm9yZGVyXG4kYmFzZS1ib3JkZXItY29sb3I6ICRsaWdodC1ncmF5O1xuJGJhc2UtYm9yZGVyOiAxcHggc29saWQgJGJhc2UtYm9yZGVyLWNvbG9yO1xuXG4vLyBGb3Jtc1xuJGZvcm0tYm94LXNoYWRvdzogaW5zZXQgMCAxcHggM3B4IHJnYmEoJGJhc2UtYmxhY2ssIDAuMSk7XG4vLyAkZm9ybS1ib3gtc2hhZG93LWZvY3VzOiAkZm9ybS1ib3gtc2hhZG93LCAwIDAgNXB4IGFkanVzdC1jb2xvcigkYWN0aW9uLWNvbG9yLCAkbGlnaHRuZXNzOiAtNSUsICRhbHBoYTogLTAuMyk7XG4kZm9ybS1ib3gtc2hhZG93LWZvY3VzOiAwIDVweCAxMHB4ICByZ2JhKCRiYXNlLWJsYWNrLCAwLjEpO1xuXG5cbiRhc3NldHMtcGF0aDogXCJcIjtcbiIsIiN7JGFsbC1idXR0b25zfSxcbmJ1dHRvbiB7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRiYXNlLXdoaXRlLCAuMjUpO1xuICBib3JkZXItcmFkaXVzOiAkYmFzZS1ib3JkZXItcmFkaXVzO1xuICBib3JkZXI6IG5vbmU7XG4gIGNvbG9yOiAjZmZmO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZm9udC1mYW1pbHk6ICRiYXNlLWZvbnQtZmFtaWx5O1xuICBmb250LXNpemU6ICRiYXNlLWZvbnQtc2l6ZTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgY29sb3I6ICNmZmY7XG4gIH1cblxuICAmOmRpc2FibGVkIHtcbiAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICAgIG9wYWNpdHk6IDAuNTtcbiAgfVxufVxuXG4vKiBkZCBzdHlsaW5nICovXG4uY2xvc2Uge1xuICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKCRiYXNlLXdoaXRlLCAuMik7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDIlO1xuICB0b3A6IDIlO1xuICAmLmRhcmsge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGJhc2UtYmxhY2ssIC4yKTtcblxuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkYmFzZS1ibGFjaywgLjM1KTtcbiAgICB9XG4gIH1cbn1cblxuJWJ0bi1jdGEge1xuICB0cmFuc2l0aW9uOiBhbGwgMzBtcyBlYXNlO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICBmbGV4OiAxO1xuXG4gIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoJGJhc2UtYmxhY2ssIC4xKTtcbiAgYm9yZGVyLXRvcDogMnB4IHNvbGlkIHJnYmEoJGJhc2Utd2hpdGUsIDApO1xuICBib3JkZXItYm90dG9tOiAzcHggc29saWQgcmdiYSgkYmFzZS1ibGFjaywgLjEpO1xuICBib3JkZXItcmFkaXVzOiRiYXNlLWJvcmRlci1yYWRpdXM7XG4gIGNvbG9yOiByZ2JhKCRiYXNlLXdoaXRlLCAxKTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBtYXJnaW46IDAgMWVtIDFlbTtcbiAgcGFkZGluZzogLjVlbSAxZW07XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB0ZXh0LXNoYWRvdzogMXB4IC0xcHggMCByZ2JhKCRiYXNlLWJsYWNrLCAuMSk7XG5cbiAgXG4gIC5idG4tdHh0IHtcbiAgICAmOmJlZm9yZSB7XG4gICAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCByZ2JhKCRiYXNlLXdoaXRlLC41KTtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIGxlZnQ6IC0xMHB4O1xuICAgICAgbWFyZ2luLXJpZ2h0OiAuNWVtO1xuICAgICAgb3BhY2l0eTogLjc1O1xuICAgICAgcGFkZGluZy1yaWdodDogLjVlbTtcbiAgICAgIC8vIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICB3aWR0aDogMzBweDtcbiAgICAgIHotaW5kZXg6IDE7XG5cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kICgtbXMtaGlnaC1jb250cmFzdDogYWN0aXZlKSwgKC1tcy1oaWdoLWNvbnRyYXN0OiBub25lKSB7XG4gICAgICAgIGhlaWdodDogMzBweCAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICY6aG92ZXIge1xuICAgIGJveC1zaGFkb3c6IDAgNXB4IDEwcHggMnB4IHJnYmEoJGJhc2UtYmxhY2ssLjIpO1xuICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDNweDtcbiAgICBjb2xvcjogcmdiYSgkYmFzZS13aGl0ZSwgMSk7XG4gICAgdG9wOiAtMXB4O1xuICB9XG4gICY6YWN0aXZlIHt9XG5cbiAgLmJ1bmRsZWQtZGVhbCAmIHtcbiAgICBmbGV4OiBhdXRvO1xuICB9XG59XG4uYnRuLXNlYXJjaC1zaW1pbGFyIHtcbiAgQGV4dGVuZCAlYnRuLWN0YTtcblxuICBiYWNrZ3JvdW5kOiByZ2JhKCRibHVlLCAxKTtcblxuICAuYnRuLXR4dCB7XG4gICAgJjpiZWZvcmUge1xuICAgICAgY29udGVudDogdXJsKC9icm93c2VyL2ltZy9zZWFyY2guc3ZnKTtcbiAgICB9XG4gIH0gIFxufVxuLmJ0bi1hZGQtY2FydCB7XG4gIEBleHRlbmQgJWJ0bi1jdGE7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG5cbiAgYmFja2dyb3VuZDogcmdiYShkYXJrZW4oJGdyZWVuLCAxMCUpLCAxKTtcbiAgLmJ0bi10eHQge1xuICAgICY6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IHVybCgvYnJvd3Nlci9pbWcvY2FydC5zdmcpO1xuICAgIH1cbiAgfSAgICAgXG5cbiAgJjpob3ZlciB7fVxuXG4gICY6YWN0aXZlIHtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMzBtcyBsaW5lYXI7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHJnYmEoJGJhc2UtYmxhY2ssIC4yKTtcbiAgICBib3gtc2hhZG93OiBpbnNldCAwcHggM3B4IDVweCByZ2JhKCRiYXNlLWJsYWNrLDAuMyk7XG4gICAgYm9yZGVyLWJvdHRvbTogM3B4IHNvbGlkIHJnYmEoJGdyZWVuLCAuMSk7XG4gICAgY29sb3I6IHJnYmEoJGJhc2Utd2hpdGUsIDEpO1xuICAgIHRvcDogMXB4O1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBib3JkZXItdG9wOiAxcHggc29saWQgcmdiYSgkYmFzZS1ibGFjaywgLjIpO1xuICAgICAgYm94LXNoYWRvdzogaW5zZXQgMHB4IDNweCA1cHggcmdiYSgkYmFzZS1ibGFjaywwLjMpO1xuICAgICAgYm9yZGVyLWJvdHRvbTogM3B4IHNvbGlkIHJnYmEoJGdyZWVuLCAuMSk7XG4gICAgICBjb2xvcjogcmdiYSgkYmFzZS13aGl0ZSwgMSk7XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgbWVkaWEoXCI+PTBlbVwiLCBcIjw9cGhhYmxldFwiKSB7XG4gICAgZmxleDogMSAxIDEwMCU7XG4gIH1cblxuICAub3JnLWRvbWFpbi1jdGEgJiB7XG4gICAgYmFja2dyb3VuZDogcmdiYSgkZ3JlZW4sIC4zKTtcbiAgfVxufVxuXG4gIC5jb250YWluLWNhcnQtY3RhLFxuICAuY29udGFpbi1vZmZlci1jdGEge1xuICAgIGFsaWduLXNlbGY6IHN0cmV0Y2g7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG1hcmdpbi1yaWdodDogLjVlbTtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIHdpZHRoOiAyMHB4O1xuICB9XG4uYnRuLW1ha2Utb2ZmZXIge1xuICBAZXh0ZW5kICVidG4tY3RhO1xuICBiYWNrZ3JvdW5kOiBzaGFkZSgkbWVkaXVtLWdyYXksIDI1JSk7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG5cbiAgLm9yZy1kb21haW4tY3RhICYge1xuICAgIGJhY2tncm91bmQ6IHJnYmEoc2hhZGUoJG1lZGl1bS1ncmF5LCAyNSUpLCAuMyk7XG4gIH1cblxuICAuYnRuLXR4dCB7XG4gICAgJjpiZWZvcmUge1xuICAgICAgY29udGVudDogdXJsKC9icm93c2VyL2ltZy9vZmZlci1jaGF0LWJ1YmJsZS5zdmcpO1xuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKC1tcy1oaWdoLWNvbnRyYXN0OiBhY3RpdmUpLCAoLW1zLWhpZ2gtY29udHJhc3Q6IG5vbmUpIHsgIFxuICAgICAgICAgY29udGVudDogdXJsKC9icm93c2VyL2ltZy9vZmZlci1jaGF0LWJ1YmJsZS5wbmcpOyBcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmOmFjdGl2ZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgkYmFzZS13aGl0ZSwgMCk7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHJnYmEoJGJhc2UtYmxhY2ssIC4yKTtcbiAgICBib3gtc2hhZG93OiBpbnNldCAwcHggM3B4IDVweCByZ2JhKCRiYXNlLWJsYWNrLCAuMyk7XG4gICAgY29sb3I6IHJnYmEoJGJhc2Utd2hpdGUsIDEpO1xuICAgIHRvcDogMXB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgfVxufVxuXG5cblxuLmJ0bi1vdXRsaW5lIHtcbiAgdHJhbnNpdGlvbjogYWxsIDMwMG1zIGVhc2UtaW4tb3V0O1xuXG4gICBiYWNrZ3JvdW5kOiByZ2JhKCRiYXNlLXdoaXRlLCAuMSk7XG4gICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKCRiYXNlLXdoaXRlLCAxKTtcbiAgIGJvcmRlci1yYWRpdXM6ICRiYXNlLWJvcmRlci1yYWRpdXM7XG4gICBjb2xvcjogJGJhc2Utd2hpdGU7XG4gICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICBwYWRkaW5nOiAxZW0gMmVtO1xuXG4gICAmLmxhcmdlIHtcbiAgICBmb250LXNpemU6IDEuMnJlbTtcbiAgICBtYXJnaW4tdG9wOiAxcmVtO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEoXCI+PTBlbVwiLCBcIjxwaGFibGV0XCIpIHtcbiAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgIHBhZGRpbmc6IDFlbTtcbiAgICB9XG4gICB9XG4gICAmLnJlc2V0IHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKCRiYXNlLXdoaXRlLCAuMSk7XG4gICAgY29sb3I6IHJnYmEoJGJhc2Utd2hpdGUsIC41KTtcbiAgICBmb250LXNpemU6IDAuODEzcmVtO1xuICAgIG1hcmdpbjogLjVlbSBhdXRvO1xuICAgIHBhZGRpbmc6IC41ZW0gMWVtO1xuICAgfVxuICAgJjp2aXNpdGVkIHtcbiAgICBjb2xvcjogJGJhc2Utd2hpdGU7XG4gICB9XG5cbiAgICY6aG92ZXIge1xuICAgIGJhY2tncm91bmQ6IHJnYmEoJGJhc2Utd2hpdGUsIC4zNSk7XG4gICAgY29sb3I6ICRiYXNlLXdoaXRlO1xuICAgIHRleHQtc2hhZG93OiAwIDFweCAwIHJnYmEoJGJhc2UtYmxhY2ssIC4zNSk7XG5cbiAgICAuc3ZnLWFydy1md2Qge1xuICAgIH1cbiAgIH1cblxuICAuY29udGFpbi1tby1jdGEgJixcbiAgLmNvbnRhaW4tdGRmcy1vZmZlci1jdGEgJiB7XG4gICAgICBmbGV4OiAwIDEgNDAlO1xuXG4gICAgICBAaW5jbHVkZSBtZWRpYShcIj49MGVtXCIsIFwiPD1waGFibGV0XCIpIHtcbiAgICAgICAgZmxleDogMSAxIDEwMCU7XG4gICAgICB9XG4gIH1cblxuICAgJi5mYixcbiAgICYuaW4ge1xuICAgIHRyYW5zaXRpb246IGFsbCAzMG1zIGVhc2UtaW4tb3V0O1xuICAgIGJhY2tncm91bmQ6ICRmYkNvbG9yO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoJGJhc2UtYmxhY2ssIC4xKTtcbiAgICBib3JkZXItYm90dG9tLXdpZHRoOiAzcHg7XG4gICAgbWFyZ2luOiAwIC41ZW07XG4gICAgcGFkZGluZzogLjI1ZW0gMWVtO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZDogZGFya2VuKCRmYkNvbG9yLCA1JSk7XG4gICAgICBib3gtc2hhZG93OiBpbnNldCAwIDNweCAxNXB4IC01cHggcmdiYSgkYmFzZS13aGl0ZSwgLjMpLCAwIDNweCA1cHggLTJweCByZ2JhKCRiYXNlLWJsYWNrLCAuMyk7XG4gICAgICBib3JkZXItYm90dG9tLXdpZHRoOiAzcHg7XG4gICAgICB0b3A6IC0xcHg7XG4gICAgfVxuICAgICY6YWN0aXZlIHtcbiAgICAgIGJveC1zaGFkb3c6IGluc2V0IDAgM3B4IDE1cHggcmdiYSgkYmFzZS1ibGFjaywgLjMpO1xuICAgICAgY29sb3I6ICRiYXNlLXdoaXRlO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgdG9wOiAxcHg7XG5cbiAgICAgICY6aG92ZXIge1xuICAgICAgICBib3gtc2hhZG93OiBpbnNldCAwIDNweCAxNXB4IHJnYmEoJGJhc2UtYmxhY2ssIC4zKTtcbiAgICAgICAgY29sb3I6ICRiYXNlLXdoaXRlO1xuICAgICAgICB0b3A6IDFweDtcbiAgICAgIH1cbiAgICB9XG4gICB9XG4gICAmLmluIHtcbiAgICBiYWNrZ3JvdW5kOiAkaW5Db2xvcjtcblxuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZDogZGFya2VuKCRpbkNvbG9yLCA1JSk7XG4gICAgfVxuICAgfVxuXG4gICAuY29udGFpbi1hcnctZndkIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luLWxlZnQ6IDVweDtcbiAgICBoZWlnaHQ6IDE1cHg7XG4gICAgd2lkdGg6IDE1cHg7XG4gICB9XG4gICBcbiAgICAuc3ZnLWFydy1md2Qge1xuICAgICAgZmlsbDogJGJhc2Utd2hpdGU7XG4gICAgfVxufVxuXG4ucmVtb3ZlLXNlbGVjdGVkIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogMjVweDtcbiAgbGVmdDogOHB4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNXB4O1xuICB3aWR0aDogMjVweDtcbn1cbi5jb250YWluLXN2Zy1yZW1vdmUge1xuICBjbGlwLXJ1bGU6ZXZlbm9kZDtcbiAgZmlsbC1ydWxlOmV2ZW5vZGQ7XG4gIGZpbGw6IHJnYmEoJGxpZ2h0LWdyYXksIDEpO1xuICBcblxuICAmOmhvdmVyIHtcbiAgICBmaWxsOiByZ2JhKCRiYXNlLXdoaXRlLCAuOCk7XG4gIH1cbn1cblxuLmJ0bi1vcmctYnVuZGxlIHtcbiAgdHJhbnNpdGlvbjogYWxsIDMwbXMgZWFzZTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcblxuICBiYWNrZ3JvdW5kOiByZ2JhKCRiYXNlLWJsYWNrLC4yKTtcbiAgYm9yZGVyLXJhZGl1czokYmFzZS1ib3JkZXItcmFkaXVzO1xuICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKCRiYXNlLWJsYWNrLCAuMSk7XG4gIGNvbG9yOiByZ2JhKCRsaWdodC1ncmF5LCAxKTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQtc2l6ZTogLjlyZW07XG4gIG1pbi13aWR0aDo4MHB4O1xuICBwYWRkaW5nOiAuNjVlbSAxZW07XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuXG4gICY6aG92ZXIge1xuICAgIGJhY2tncm91bmQ6IHJnYmEoJGJhc2UtYmxhY2ssIC42KTtcbiAgICBjb2xvcjogcmdiYSgkYmFzZS13aGl0ZSwgLjgpO1xuICB9XG59XG4uYnRuLW9yZy1idW5kbGUtYWRkIHtcbiAgLy8gQGV4dGVuZCAuYnRuLW9yZy1idW5kbGU7XG4gIGNvbG9yOiByZ2JhKCRsaWdodC1ncmF5LCAxKTtcbiAgbWluLXdpZHRoOiA0MHB4O1xuXG4gICY6aG92ZXIge1xuICAgIGNvbG9yOiByZ2JhKCRiYXNlLXdoaXRlLCAuOCk7XG4gIH1cbn1cbiAgLmNvbnRhaW4tc3ZnLWJ1bmRsZSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHdpZHRoOiAxNXB4O1xuICB9XG5cbiAgLmJ0bi1hZG1pbi1kZWFsLW9mLWRheSxcbiAgLmJ0bi1hZG1pbi10b3AtZGVhbCB7XG4gICAgQGV4dGVuZCAlYnRuLWN0YTtcbiAgICBmb250LXNpemU6IDEuMnJlbTtcbiAgICBmb250LXdlaWdodDogNDAwO1xuXG4gICAgYmFja2dyb3VuZDogcmdiYSgkb3JhbmdlLCAxKTtcbiAgICAvLyBib3gtc2hhZG93OiAwIDNweCA1cHggcmdiYSgkYmFzZS1ibGFjaywwKTsgXG4gICAgLmJ0bi10eHQge1xuICAgICAgJjpiZWZvcmUge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuICAgIH0gICAgIFxuXG4gICAgJjpob3ZlciB7fVxuXG4gICAgJjphY3RpdmUge1xuICAgICAgdHJhbnNpdGlvbjogYWxsLCAzMG1zLCBsaW5lYXI7XG4gICAgICBib3JkZXItdG9wOiAxcHggc29saWQgcmdiYSgkYmFzZS1ibGFjaywgLjIpO1xuICAgICAgYm94LXNoYWRvdzogaW5zZXQgMHB4IDNweCA1cHggcmdiYSgkYmFzZS1ibGFjaywwLjMpO1xuICAgICAgYm9yZGVyLWJvdHRvbTogM3B4IHNvbGlkIHJnYmEoJGdyZWVuLCAuMSk7XG4gICAgICBjb2xvcjogcmdiYSgkYmFzZS13aGl0ZSwgMSk7XG4gICAgICB0b3A6IDFweDtcbiAgICAgICY6aG92ZXIge1xuICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgcmdiYSgkYmFzZS1ibGFjaywgLjIpO1xuICAgICAgICBib3gtc2hhZG93OiBpbnNldCAwcHggM3B4IDVweCByZ2JhKCRiYXNlLWJsYWNrLDAuMyk7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDNweCBzb2xpZCByZ2JhKCRncmVlbiwgLjEpO1xuICAgICAgICBjb2xvcjogcmdiYSgkYmFzZS13aGl0ZSwgMSk7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5idG4tYWRtaW4tdG9wLWRlYWwge1xuICAgIGJhY2tncm91bmQ6IHJnYmEoZGFya2VuKCRibHVlLCAxNSUpLDEpO1xuICB9XG5cbiAgLmNvbnRhaW4tc29jaWFsLWZvcm0tZmlsbCB7XG4gICAgdHJhbnNpdGlvbjogYWxsIDMwbXMgZWFzZTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG5cbiAgICAuY29udGFpbmVyLXJlc3VsdHMtcm93ICYge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICB9XG4gIH1cbiAgICAuYnRuLWZvcm0tZmlsbC1mYixcbiAgICAuYnRuLWZvcm0tZmlsbC1ncCB7XG4gICAgICBAZXh0ZW5kICVidG4tY3RhO1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogLjJlbSAxZW07XG4gICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgZm9udC1zaXplOiAxcmVtO1xuXG4gICAgICAmOmJlZm9yZSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgaGVpZ2h0OiAyNHB4O1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IC43NWVtO1xuICAgICAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICB0b3A6IC0uMDVlbTtcbiAgICAgICAgd2lkdGg6IDI0cHg7XG4gICAgICAgIHotaW5kZXg6IDE7XG4gICAgICB9XG5cbiAgICAgICYuZGlzYWJsZWQge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheSAhaW1wb3J0YW50O1xuICAgICAgICBib3JkZXItY29sb3I6ICRsaWdodC1ncmF5ICFpbXBvcnRhbnQ7XG4gICAgICAgIG9wYWNpdHk6IC43NTtcbiAgICAgICAgY3Vyc29yOiB0ZXh0O1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbS13aWR0aDogM3B4O1xuICAgICAgICAgIGNvbG9yOiByZ2JhKCRiYXNlLXdoaXRlLCAxKTtcbiAgICAgICAgICB0b3A6IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLmJ0bi1mb3JtLWZpbGwtZmIge1xuICAgICAgYmFja2dyb3VuZDogJGZiQ29sb3I7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIG1hcmdpbi1yaWdodDogLjVlbTtcblxuICAgICAgJjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiB1cmwoL2Jyb3dzZXIvaW1nL3NvY2lhbC1mYi5zdmcpO1xuICAgICAgfVxuICAgICAgJi5kaXNhYmxlZCB7XG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICBjb250ZW50OiB1cmwoL2Jyb3dzZXIvaW1nL3NvY2lhbC1mYi1ncmF5LnN2Zyk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLmJ0bi1mb3JtLWZpbGwtZ3Age1xuICAgICAgYmFja2dyb3VuZDogJGdwQ29sb3I7XG5cbiAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogdXJsKC9icm93c2VyL2ltZy9zb2NpYWwtZ3Auc3ZnKTtcbiAgICAgIH1cbiAgICB9XG5cblxuICAgIC5hLXR4dC11bmRlcmxpbmUge1xuICAgICAgY29sb3I6ICRiYXNlLXdoaXRlO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG5cbiAgICAgICY6aG92ZXIge1xuICAgICAgICBjb2xvcjogJGJhc2Utd2hpdGU7XG5cbiAgICAgIH1cbiAgICB9XG4iLCIubmF2LXNpbXBsZSB7XG5cdHRyYW5zaXRpb246IGFsbCAzMDBtcyBlYXNlLWluLW91dDtcblx0cG9zaXRpb246IGZpeGVkO1xuXHR3aWR0aDogMTAwJTtcblx0ei1pbmRleDogOTtcbn1cbi5zZWFyY2gtc2ltcGxlIHtcblx0QGV4dGVuZCAubmF2LXNpbXBsZTtcblx0aGVpZ2h0OiA3N3B4O1xuXHR0b3A6IDgycHg7XG5cdCY6YmVmb3JlIHtcblx0XHR0cmFuc2l0aW9uOiBhbGwgMzAwbXMgZWFzZS1pbi1vdXQ7XG5cdFx0YmFja2dyb3VuZDogcmdiYSgkZGFyay1ncmF5LC44KTtcblx0XHRib3gtc2hhZG93OiBpbnNldCAwIDVweCAxNXB4IHJnYmEoJGJhc2UtYmxhY2ssLjUpO1xuXHRcdGNvbnRlbnQ6ICcnO1xuXHRcdGhlaWdodDogMTAwJTtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdFx0ei1pbmRleDogLTE7XG5cdH1cbn1cblxuLyogbmF2IGhlYWRlciAqL1xuLm5hdi1oZWFkZXIsXG4ubmF2LWhlYWRlci1zZWFyY2gsXG4ubmF2LWZvb3RlciB7XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGZsZXgtZGlyZWN0aW9uOiByb3c7XG5cdGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcblx0Ly8gbWF4LXdpZHRoOiAxNDAwcHg7XG59XG4ubmF2LWhlYWRlcixcbi5uYXYtaGVhZGVyLXNlYXJjaCB7XG5cdGFsaWduLWl0ZW1zOiBtaWRkbGU7XG5cdGhlaWdodDogMTAwJTtcbn1cblxuLmhlYWRyb29tIHtcblx0dHJhbnNpdGlvbjogdHJhbnNmb3JtIDIwMG1zIGxpbmVhcjtcbiAgICB3aWxsLWNoYW5nZTogdHJhbnNmb3JtO1xufVxuLmhlYWRyb29tLS1waW5uZWQge1xuXHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCUpO1xufVxuLmhlYWRyb29tLS11bnBpbm5lZCB7XG5cdHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAwJSk7XG59XG5cdC5uYXYtaXRlbSB7XG5cdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdHBhZGRpbmc6IC41ZW0gMWVtO1xuXHRcdFxuXHRcdGEge1xuXHRcdFx0dHJhbnNpdGlvbjogYWxsIDMwMG1zIGVhc2UtaW4tb3V0O1xuXG5cdFx0XHRiYWNrZ3JvdW5kOiByZ2JhKCRiYXNlLWJsYWNrLCAuMik7XG5cdFx0XHQvLyBib3JkZXI6IDFweCBzb2xpZCByZ2JhKCRiYXNlLWJsYWNrLCAwKTtcblx0XHRcdGJvcmRlcjoxcHggc29saWQgcmdiYSgkYmFzZS1ibGFjaywgLjI1KTtcblx0XHRcdGJvcmRlci1yYWRpdXM6JGJhc2UtYm9yZGVyLXJhZGl1cztcblx0XHRcdGNvbG9yOiByZ2JhKCRiYXNlLXdoaXRlLCAuNSk7XG5cdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdGZvbnQtd2VpZ2h0OiA0MDA7XG5cdFx0XHRwYWRkaW5nOiAuMzVlbSAxZW07XG5cdFx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cblx0XHRcdCY6aG92ZXIge1xuXHRcdFx0XHQvLyBiYWNrZ3JvdW5kOiByZ2JhKCRiYXNlLWJsYWNrLCAuMik7XG5cdFx0XHRcdC8vIGJvcmRlcjoxcHggc29saWQgcmdiYSgkYmFzZS1ibGFjaywgLjI1KTtcblx0XHRcdFx0Y29sb3I6IHJnYmEoJGJhc2Utd2hpdGUsIDEpO1xuXG5cdFx0XHRcdC5zdmctYnVuZGxlLFxuXHRcdFx0XHQuc3ZnLXJlY2VudCB7XG5cdFx0XHRcdFx0ZmlsbDogcmdiYSgkYmFzZS13aGl0ZSwgMSk7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdH1cblx0Ly8gLm5hdi1pdGVtOm50aC1vZi10eXBlKDIpIHtcblx0Ly8gXHRib3JkZXItcmlnaHQ6IDFweCBzb2xpZCByZ2JhKCRiYXNlLXdoaXRlLCAuMik7XG5cdC8vIH1cblx0LmNvbnRhaW5lci1uYXYtcGhvbmUge1xuXHRcdGZsZXg6IDYwIDQwIDYwO1xuXG5cdFx0Y29sb3I6IHJnYmEoJGJhc2Utd2hpdGUsIDEpO1xuXHRcdHBhZGRpbmctcmlnaHQ6IDJlbTtcblx0XHR0ZXh0LWFsaWduOiByaWdodDtcblxuXHRcdGZsZXgtZ3JvdzogMTtcblx0XHRhIHtcblx0XHRcdGNvbG9yOiByZ2JhKCRiYXNlLXdoaXRlLCAxKTtcblx0XHRcdGZvbnQtc2l6ZTogMS4zNzVlbTtcblx0XHR9XG5cdH1cblx0LmNvbnRhaW5lci1uYXYtY2FydCB7XG5cdFx0ZmxleDogMjAgMjAgMjA7XG5cdH1cblx0XHQubmF2LWNhcnQge1xuXHRcdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRmbGV4LWRpcmVjdGlvbjogcm93O1xuXHRcdFx0anVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuXG5cdFx0XHRiYWNrZ3JvdW5kOiByZ2JhKCRncmVlbiwgLjgpO1xuXHRcdFx0Ym94LXNoYWRvdzogaW5zZXQgMCAtMXB4IDAgcmdiYSgkYmFzZS1ibGFjaywuMSk7XG5cdFx0XHRoZWlnaHQ6IDYzcHg7XG5cdFx0XHRtaW4td2lkdGg6IDEwMHB4O1xuXG5cdFx0XHQmOmFjdGl2ZSB7XG5cdFx0XHRcdHRyYW5zaXRpb246IGFsbCAzMG1zIGVhc2UtaW4tb3V0O1xuXG5cdFx0XHRcdGJvcmRlci10b3A6IDFweCBzb2xpZCByZ2JhKCRiYXNlLWJsYWNrLCAuNyk7XG5cdFx0XHRcdGJveC1zaGFkb3c6IGluc2V0IDBweCAzcHggNXB4IHJnYmEoMCwwLDAsMC4zKTtcblx0XHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdFx0XHR0b3A6IDFweDtcblx0XHRcdH1cblxuXG5cdFx0XHQmOmhvdmVyIHtcblx0XHRcdFx0dHJhbnNpdGlvbjogYWxsIDMwMG1zIGVhc2UtaW4tb3V0O1xuXG5cdFx0XHRcdGJhY2tncm91bmQ6IHRpbnQoJGdyZWVuLCA1JSk7XG5cdFx0XHRcdFxuXHRcdFx0XHQuc3ZnLWNhcnQge1xuXHRcdFx0XHRcdGZpbGw6IHJnYmEoJGJhc2UtYmxhY2ssIC4yNSk7XG5cdFx0XHRcdH1cblxuXG5cdFx0XHRcdC5jb250YWluZXItbnVtYi1jYXJ0IHtcblx0XHRcdFx0XHRjb2xvcjogcmdiYSgkYmFzZS13aGl0ZSwgMSk7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdFx0XHQuY29udGFpbmVyLXN2Zy1jYXJ0IHtcblx0XHRcdFx0bWFyZ2luOiAwIDFlbTtcblx0XHRcdFx0d2lkdGg6IDMwcHg7XG5cdFx0XHR9XG5cdFx0XHRcdC5zdmctY2FydCB7XG5cdFx0XHRcdFx0dHJhbnNpdGlvbjogYWxsIDMwMG1zIGVhc2UtaW4tb3V0O1xuXG5cdFx0XHRcdFx0ZmlsbDogcmdiYSgkYmFzZS1ibGFjaywgLjI1KTtcblx0XHRcdFx0fVxuXHRcdFx0LmNvbnRhaW5lci1udW1iLWNhcnQge1xuXHRcdFx0XHR0cmFuc2l0aW9uOiBhbGwgMzAwbXMgZWFzZS1pbi1vdXQ7XG5cblx0XHRcdFx0YmFja2dyb3VuZDogcmdiYSgkYmFzZS1ibGFjaywgLjMpO1xuXHRcdFx0XHRjb2xvcjogcmdiYSgkYmFzZS13aGl0ZSwgLjUpO1xuXHRcdFx0XHRoZWlnaHQ6IDEwMCU7XG5cdFx0XHRcdHBhZGRpbmc6MWVtIDtcblx0XHRcdH1cblxuXG5cbi8qIFNWRyBpY29ucyBpbiBoZWFkZXIgKi9cbi5zdmctYXJ3LWRvdCB7XG5cbn1cbi5uYXYtbG9nbyB7XG5cdHRyYW5zaXRpb246IGFsbCAzMDBtcyBlYXNlLWluLW91dDtcblxuXHRib3JkZXItbGVmdDogNXB4IHNvbGlkIHJnYmEoJG9yYW5nZSwgLjUpO1xuXHRib3JkZXItcmlnaHQ6IDFweCBzb2xpZCByZ2JhKCRiYXNlLXdoaXRlLCAwKTtcblx0Ym94LXNoYWRvdzogLTEwcHggMHB4IDEwcHggLTVweCByZ2JhKCRiYXNlLWJsYWNrLCAuMjUpO1xuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdHBhZGRpbmc6IC40NWVtIDFlbTtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHR3aWR0aDogNzVweDtcblx0ei1pbmRleDogMztcblx0YWxpZ24tc2VsZjogYXV0bztcblx0Jjpob3Zlcixcblx0LnNlYXJjaC1zaW1wbGUgJiB7XG5cdFx0YmFja2dyb3VuZDogcmdiYSgkYmFzZS1ibGFjaywgLjUpO1xuXHRcdGJvcmRlci1sZWZ0OiA1cHggc29saWQgcmdiYSgkb3JhbmdlLCAxKTtcblxuXHRcdC8vIGJveC1zaGFkb3c6IC0xMHB4IDBweCA1cHggLTJweCByZ2JhKCRiYXNlLWJsYWNrLCAuMjUpLCBpbnNldCAwIDAgMTBweCAxMHB4IHJnYmEoJGJhc2UtYmxhY2ssIC41KTtcblx0XHQubG9nby1hcncge1xuXHRcdFx0dHJhbnNpdGlvbjogYWxsIDMwMG1zIGVhc2UtaW4tb3V0O1xuXG5cdFx0XHRmaWxsOiAjRkY3MzAyO1xuXHRcdH1cblxuXG5cdFx0LmxvZ28tZG90IHtcblx0XHRcdHRyYW5zaXRpb246IGFsbCAzMDBtcyBlYXNlLWluLW91dDtcblxuXHRcdFx0ZmlsbDogcmdiYSgkYmFzZS13aGl0ZSwgMSk7XG5cdFx0fVxuXHR9XG5cblxuXHQuY29udGVudC1ob21lICYge1xuXHRcdGJvcmRlci1sZWZ0OiA1cHggc29saWQgcmdiYSgkYmFzZS13aGl0ZSwgLjE1KTtcblx0XHRtYXJnaW4tbGVmdDogMyU7XG5cdH1cblx0XG59XG5cdC5sb2dvLWFydyxcblx0LmxvZ28tZG90LFxuXHQubG9nby1sZXR0ZXIge1xuXHRcdHRyYW5zaXRpb246IGFsbCAzMDBtcyBlYXNlLWluLW91dDtcblxuXHRcdGZpbGw6IHJnYmEoJGJhc2Utd2hpdGUsIC41KTtcblx0fVxuXG5cdC5uYXYtY29udGFpbi1waG9uZSB7XG5cdFx0ZmxleDogMSAxIGF1dG87XG5cblx0ICAgIGNvbG9yOiAkYmFzZS13aGl0ZTtcblx0ICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG5cdCAgICBwYWRkaW5nOiAuNWVtIDJlbTtcblx0ICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuXG5cdCAgICBAaW5jbHVkZSBtZWRpYShcIj49MGVtXCIsIFwiPD1waGFibGV0XCIpIHtcblx0ICAgIFx0ZmxleDogMSAxIDEwMCU7XG5cdCAgICBcdGJhY2tncm91bmQ6IHJnYmEoJG1lZC1kYXJrLWdyYXksIC43NSk7XG5cdCAgICBcdGZvbnQtc2l6ZTogMC43MjJlbTtcblx0ICAgIFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXG5cdCAgICBcdG9yZGVyOiAtMTtcblx0ICAgIH1cblx0ICAgIEBpbmNsdWRlIG1lZGlhKFwiPnBoYWJsZXRcIiwgXCI8dGFibGV0XCIpIHtcblx0ICAgIFx0Zm9udC1zaXplOiAxZW07XG5cdCAgICBcdHRleHQtYWxpZ246IHJpZ2h0O1xuXHQgICAgfVxuXG5cdCAgICBhIHtcblx0ICAgICAgICBjb2xvcjogJGJhc2Utd2hpdGU7XG5cblx0ICAgICAgICBAaW5jbHVkZSBtZWRpYShcIj49MGVtXCIsIFwiPHRhYmxldFwiKSB7XG5cdCAgICAgICAgICBwYWRkaW5nOiAwO1xuXHQgICAgICAgIH1cblxuXHQgICAgICAgICY6aG92ZXIge1xuXHQgICAgICAgIFx0Y29sb3I6ICRiYXNlLXdoaXRlO1xuXHQgICAgICAgIH1cblx0ICAgIH1cblx0ICAgIFxuXHR9XG4ubmF2LWJ1bmRsZSxcbi5uYXYtcmVjZW50IHtcblx0c3BhbiB7XG5cdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdGhlaWdodDogMTVweDtcblx0XHR3aWR0aDogMTVweDtcblxuXHRcdEBpbmNsdWRlIG1lZGlhKFwiPD1tb2JpbGUtbGdcIikge1xuXHRcdFx0ZGlzcGxheTogbm9uZTtcblx0XHR9XG5cdH1cbn1cblxuLm5hdi1idW5kbGUge1xuXHQmOmhvdmVyIHtcblx0XHRiYWNrZ3JvdW5kOiByZ2JhKCRvcmFuZ2UsMSk7XG5cdH0gXG59XG4ubmF2LXJlY2VudCB7XG5cdCY6aG92ZXIge1xuXHRcdGJhY2tncm91bmQ6IHJnYmEoJGJsdWUsMSk7XG5cdH0gXG59XG5cbi8qIG5hdmlnYXRpb24gc2VhcmNoIGFyZWEgKi9cblxuXHQubmF2LXNlYXJjaCB7XG5cdFx0QGV4dGVuZCAubmF2LWxvZ287XG5cblx0XHRib3JkZXItbGVmdDogNXB4IHNvbGlkIHJnYmEoJGJsdWUsIC41KTtcblxuXHRcdCY6aG92ZXIsXG5cdFx0LnNlYXJjaC1zaW1wbGUgJiB7XG5cdFx0XHRib3JkZXItbGVmdDogNXB4IHNvbGlkIHJnYmEoJGJsdWUsIDEpO1xuXHRcdH1cblx0fVxuXG5cdC5uYXYtc2VhcmNoZmllbGQge1xuXHRcdGZsZXg6IDAgMCA4MCU7XG5cblx0XHQmOjpwbGFjZWhvbGRlciB7XG5cdFx0XHRjb2xvcjogJGJsdWU7XG5cdFx0fVxuXG5cdFx0Ym9yZGVyLXJhZGl1czokYmFzZS1ib3JkZXItcmFkaXVzO1xuXHRcdGNvbG9yOiAkYmx1ZTtcblx0XHRmb250LXNpemU6IDEuNDVyZW07XG5cdFx0Zm9udC13ZWlnaHQ6IDMwMDtcblx0XHRtYXJnaW4tbGVmdDogMWVtO1xuXHRcdHBhZGRpbmc6IC4yNWVtIDFlbVxuXHR9XG5cdC5uYXYtc2VhcmNoLWJ0biB7XG5cdFx0ZmxleDogMCAwIGF1dG87XG5cblx0XHRiYWNrZ3JvdW5kOiByZ2JhKCRibHVlLCAxKTtcblx0XHRib3JkZXI6IDFweCBzb2xpZCByZ2JhKHNoYWRlKCRibHVlLCAxNSUpLCAxKTtcblx0XHRib3JkZXItYm90dG9tLXdpZHRoOiAzcHg7XG5cdFx0Ym9yZGVyLXJhZGl1czogLjNlbTtcblx0XHRib3JkZXItdG9wOiBub25lO1xuXHRcdGhlaWdodDogNDVweDtcblx0XHRtYXJnaW4tbGVmdDogLjc1ZW07XG5cdFx0cGFkZGluZzogLjVlbSAxLjVlbSAuNzVlbTtcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cblx0XHQmOmFjdGl2ZSB7fVxuXG5cblx0XHQmOmhvdmVyIHtcblx0XHRcdHRyYW5zaXRpb246IGFsbCAzMG1zIGVhc2UtaW4tb3V0O1xuXG5cdFx0XHRcdGJveC1zaGFkb3c6IDAgNXB4IDEwcHggMnB4IHJnYmEoJGJhc2UtYmxhY2ssLjIpO1xuXHRcdFx0XHR0b3A6IC0ycHg7XG5cdFx0fVxuXHR9XG5cblxuLyogbmF2IHNpZGUgKi9cbi5jb250YWluLW5hdi1zaWRlIHtcblx0YmFja2dyb3VuZDogJGRhcmstZ3JheTtcblx0aGVpZ2h0OiAxMDB2aDtcblx0bWluLXdpZHRoOiBjYWxjKDIuNSUgKyA3NXB4KTtcblx0cGFkZGluZy1sZWZ0OiAyLjUlO1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdHotaW5kZXg6IDQ7XG5cblx0LmJ0bi1zaWRlIHtcblx0XHRib3JkZXItdG9wOiAxcHggc29saWQgcmdiYSgkYmFzZS13aGl0ZSwgLjEpO1xuXHRcdGJveC1zaGFkb3c6IGluc2V0IDAgLTFweCAwIHJnYmEoJGJhc2UtYmxhY2ssMC4xKTtcblx0fVxufVxuXHQubmF2LXNpZGUge1xuXHRcdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKCRiYXNlLXdoaXRlLCAuMSk7XG5cdH1cblx0Lm5hdi1mYXZlIHtcblx0XHRAZXh0ZW5kIC5uYXYtbG9nbztcblxuXHRcdGJvcmRlci1sZWZ0OiA1cHggc29saWQgcmdiYSgkeWVsbG93LCAuNSk7XG5cdFx0cGFkZGluZzogLjc1ZW0gMS4yNWVtO1xuXG5cdFx0Jjpob3ZlciB7XG5cdFx0XHRiYWNrZ3JvdW5kOiByZ2JhKCRiYXNlLWJsYWNrLCAuMSk7XG5cdFx0XHRib3JkZXItbGVmdDogNXB4IHNvbGlkIHJnYmEoJHllbGxvdywgMSk7XG5cblx0XHRcdC5zdmctZmF2ZSB7XG5cdFx0XHRcdGZpbGw6IHJnYmEoJHllbGxvdywgMSk7XG5cdFx0XHR9XG5cblxuXHRcdFx0LmNvbnRhaW4tY291bnQge1xuXHRcdFx0XHRjb2xvcjogcmdiYSgkYmFzZS13aGl0ZSwgMSk7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0Lm5hdi1mYXZlLWJ1bmRsZSB7XG5cdFx0QGV4dGVuZCAubmF2LWZhdmU7XG5cblx0XHRib3JkZXItbGVmdDogNXB4IHNvbGlkIHJnYmEoJGdyZWVuLCAuNSk7XG5cblx0XHQmOmhvdmVyIHtcblx0XHRcdGJvcmRlci1sZWZ0OiA1cHggc29saWQgcmdiYSgkZ3JlZW4sIDEpO1xuXG5cdFx0XHQuc3ZnLWZhdmUtYnVuZGxlIHtcblx0XHRcdFx0ZmlsbDogcmdiYSgkYmFzZS13aGl0ZSwgMSk7XG5cdFx0XHR9XG5cblxuXHRcdFx0LmNvbnRhaW4tY291bnQge1xuXHRcdFx0XHRjb2xvcjogcmdiYSgkYmFzZS13aGl0ZSwgMSk7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cdFx0LmNvbnRhaW4tY291bnQge1xuXHRcdFx0YmFja2dyb3VuZDogcmdiYSgkYmFzZS1ibGFjaywgLjIpO1xuXHRcdFx0Ym9yZGVyOjFweCBzb2xpZCByZ2JhKCRiYXNlLWJsYWNrLCAuMjUpO1xuXHRcdFx0Y29sb3I6IHJnYmEoJGJhc2Utd2hpdGUsIC41KTtcblx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRcdH1cblxuLmNvbnRhaW4tbmF2LWNoYXQge1xuXHRhbGlnbi1zZWxmOiBjZW50ZXI7XG5cblx0dHJhbnNpdGlvbjogYWxsIDMwMG1zIGVhc2UtaW4tb3V0O1xuXG4gICAgYmFja2dyb3VuZDogcmdiYSgkdmlvbGV0LCAuOCk7XG4gICAgYm9yZGVyOjFweCBzb2xpZCByZ2JhKCRiYXNlLWJsYWNrLCAuMjUpO1xuICAgIGJvcmRlci1yYWRpdXM6JGJhc2UtYm9yZGVyLXJhZGl1cztcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcGFkZGluZzogLjJlbSAxZW07XG5cblxuICAgICY6aG92ZXIge1xuICAgIFx0YmFja2dyb3VuZDogcmdiYSgkdmlvbGV0LCAxKTtcblxuICAgIFx0Lm5hdi1jaGF0LXR4dCB7XG5cdFx0XHRjb2xvcjogcmdiYSgkYmFzZS13aGl0ZSwgMSk7XG5cblx0XHRcdCY6YmVmb3JlIHtcblx0XHRcdFx0b3BhY2l0eTogMTtcblx0XHRcdH1cblx0XHR9XG4gICAgfVxufVxuLm5hdi1jaGF0LXR4dCB7XG5cdGNvbG9yOiByZ2JhKCRiYXNlLXdoaXRlLCAuODUpO1xuXHRkaXNwbGF5OiBibG9jaztcblx0Zm9udC13ZWlnaHQ6IDQwMDtcblx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHQmOmJlZm9yZSB7XG5cdFx0Y29udGVudDogdXJsKCcvYnJvd3Nlci9pbWcvY2hhdC5zdmcnKTtcblx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0aGVpZ2h0OiAyNnB4O1xuXHRcdG1hcmdpbi1yaWdodDogLjVlbTtcblx0XHRvcGFjaXR5OiAuNzU7XG5cdFx0dmVydGljYWwtYWxpZ246IG1pZGRsZTtcblx0XHR3aWR0aDogMjRweDtcblxuXHRcdEBpbmNsdWRlIG1lZGlhKCc8PW1vYmlsZS1sZycpIHtcblx0XHRcdG1hcmdpbi1yaWdodDogMDtcblx0XHR9XG5cdH1cblxuXHRAaW5jbHVkZSBtZWRpYSgnPD1tb2JpbGUtbGcnKSB7XG5cdFx0LmNoYXQtdHh0IHtcblx0XHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0fVxuXHR9XG59XHRcbiIsImZpZWxkc2V0IHtcbiAgbWFyZ2luOiAwIDAgJHNtYWxsLXNwYWNpbmc7XG59XG5cbmlucHV0LFxubGFiZWwsXG5zZWxlY3Qge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1mYW1pbHk6ICRiYXNlLWZvbnQtZmFtaWx5O1xuICAvLyBmb250LXNpemU6ICRiYXNlLWZvbnQtc2l6ZTtcblxuICAmLnNlbGVjdC1mYXZlIHtcbiAgICBcbiAgfVxuXG4gIFxufVxuKjpmb2N1cyB7XG4gIG91dGxpbmU6IG5vbmU7XG59XG5cbmxhYmVsIHtcbiAgY29sb3I6ICRiYXNlLXdoaXRlO1xuICBmb250LXdlaWdodDogNDAwO1xuICBtYXJnaW4tYm90dG9tOiAkc21hbGwtc3BhY2luZyAvIDI7XG5cbiAgJi5yZXF1aXJlZDo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiKlwiO1xuICB9XG5cbiAgYWJiciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4jeyRhbGwtdGV4dC1pbnB1dHN9LFxuc2VsZWN0W211bHRpcGxlPW11bHRpcGxlXSxcbnRleHRhcmVhIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJhc2Utd2hpdGU7XG4gIGJvcmRlcjogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogLjNlbTtcbiAgLy8gYm94LXNoYWRvdzogJGZvcm0tYm94LXNoYWRvdztcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgZm9udC1mYW1pbHk6ICRiYXNlLWZvbnQtZmFtaWx5O1xuICBmb250LXNpemU6ICRiYXNlLWZvbnQtc2l6ZTtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgcGFkZGluZzogMC41ZW07XG4gIHRyYW5zaXRpb246IGJvcmRlci1jb2xvcjtcbiAgd2lkdGg6IDEwMCU7XG5cbiAgJjpob3ZlciB7XG4gICAgLy8gYm9yZGVyLWNvbG9yOiBkYXJrZW4oJGJhc2UtYm9yZGVyLWNvbG9yLCAxMCUpO1xuICB9XG5cbiAgJjpmb2N1cyB7XG4gICAgdHJhbnNpdGlvbjogYWxsIDYwMG1zIGxpbmVhcjtcbiAgICBib3JkZXItY29sb3I6ICRhY3Rpb24tY29sb3I7XG4gICAgYm94LXNoYWRvdzogJGZvcm0tYm94LXNoYWRvdy1mb2N1cztcbiAgICBvdXRsaW5lOiBub25lO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IC0xcHg7XG4gIH1cbn1cblxudGV4dGFyZWEge1xuICByZXNpemU6IHZlcnRpY2FsO1xufVxuXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdIHtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdLFxuaW5wdXRbdHlwZT1cInJhZGlvXCJdIHtcbiAgZGlzcGxheTogaW5saW5lO1xuICBtYXJnaW4tcmlnaHQ6ICRzbWFsbC1zcGFjaW5nIC8gMjtcblxuICAmLnNlbGVjdC1mYXZlIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgZm9udC1zaXplOiAycmVtO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBvdXRsaW5lOiBub25lO1xuICB9XG59XG5cbmlucHV0W3R5cGU9XCJmaWxlXCJdIHtcbiAgcGFkZGluZy1ib3R0b206ICRzbWFsbC1zcGFjaW5nO1xuICB3aWR0aDogMTAwJTtcbn1cblxuc2VsZWN0IHtcbiAgLy8gbWFyZ2luLWJvdHRvbTogJGJhc2Utc3BhY2luZztcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICB3aWR0aDogYXV0bztcbn1cblxuXG5cbi8vIE9GRkVSIGZvcm1cbi5jb250YWluLWZvcm0tcHJpeyBwYWRkaW5nLWJvdHRvbTogMjBweDt9XG4ub2ZmZXItZm9ybSxcbi5hZG1pbi1sb2dpbi1mb3JtIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG5cbiAgXG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgcGFkZGluZzogMTBweCAwO1xuXG4gIGxpIHtcbiAgICBib3JkZXItcmFkaXVzOiAuNWVtO1xuICAgIGZsZXg6IDMwJTtcbiAgICBtYXJnaW46IDAgMWVtIDFlbSAwO1xuICAgIHBhZGRpbmc6IC41ZW07XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRyYW5zaXRpb246IGFsbCwgMzAwbXMsIGVhc2UtaW4tb3V0OyBcblxuICAgICYuc2VsZWN0ZWQge1xuICAgICAgYmFja2dyb3VuZDogcmdiYSgkYmFzZS13aGl0ZSwgLjIpO1xuICAgIH1cbiAgICAmLm8tY291bnRyeSB7XG4gICAgICBmbGV4OiAxMDAlO1xuICAgICAgbWFyZ2luOiAwZW0gMWVtIDFlbSAwO1xuXG4gICAgICBAaW5jbHVkZSBtZWRpYShcIj49NDcuNDllbVwiKSB7XG4gICAgICAgIC5jb250YWluLWRlYWwtcm93ICYge1xuICAgICAgICAgIG1heC13aWR0aDogY2FsYyg2Ni42JSAtIDFlbSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj0xMDVlbVwiKSB7XG4gICAgICAgIC5jb250YWluLWRlYWwtcm93ICYge1xuICAgICAgICAgIG1heC13aWR0aDogY2FsYygzMy4zJSAtIDFlbSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgJi5vLWNhcHRjaGEge1xuICAgICAgZmxleDogMTAwJTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYShcIj49MGVtXCIsIFwiPHBoYWJsZXRcIikge1xuICAgICAgICBmbGV4OiA1MCU7XG4gICAgICAgIG1hcmdpbjogMCAwIDFlbSAwO1xuICAgIH1cbiAgfSAgXG59XG5zZWxlY3Qge1xuICBhcHBlYXJhbmNlOiBub25lO1xuICBib3JkZXI6IG5vbmU7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGNvbG9yOiBkYXJrZW4oJG1lZGl1bS1ncmF5LCAxMCUpO1xuICBAbWVkaWEgc2NyZWVuIGFuZCAoLW1zLWhpZ2gtY29udHJhc3Q6IGFjdGl2ZSksICgtbXMtaGlnaC1jb250cmFzdDogbm9uZSkge1xuICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgei1pbmRleDogMjtcbiAgIC8vIGJhY2tncm91bmQ6IHJnYmEoJGJhc2Utd2hpdGUsIDApO1xuICB9XG59XG5cbmxhYmVsW2Zvcj1jb3VudHJ5XSxcbmxhYmVsW2Zvcj1wckxvd10sXG5sYWJlbFtmb3I9cHJIaWdoXSxcbmxhYmVsW2Zvcj1zZWxlY3RDYXRdIHtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgYm9yZGVyLXJhZGl1czogMCAuM2VtIC4zZW0gMDtcbiAgICBjb2xvcjogZGFya2VuKCRtZWRpdW0tZ3JheSwgMTAlKTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgLy8gd2lkdGg6IDQwMHB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKC1tcy1oaWdoLWNvbnRyYXN0OiBhY3RpdmUpLCAoLW1zLWhpZ2gtY29udHJhc3Q6IG5vbmUpIHtcbiAgICAvLyBiYWNrZ3JvdW5kOiByZ2JhKCRiYXNlLXdoaXRlLCAwKTtcbiAgfVxufVxuXG5sYWJlbFtmb3I9Y291bnRyeV06OmFmdGVyLFxubGFiZWxbZm9yPXByTG93XTo6YWZ0ZXIsXG5sYWJlbFtmb3I9cHJIaWdoXTo6YWZ0ZXIsXG5sYWJlbFtmb3I9c2VsZWN0Q2F0XTo6YWZ0ZXIge1xuICAgIGJvcmRlci1yYWRpdXM6IDAgLjNlbSAuM2VtIDA7XG4gIGNvbnRlbnQ6ICcgJztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMDtcbiAgdG9wOiAwO1xuICB3aWR0aDogNDBweDtcbiAgaGVpZ2h0OiAxMDAlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgYmFja2dyb3VuZDogZGFya2VuKCRibHVlLCAzNSUpIHVybCgnZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFCUUFBQUFPQkFNQUFBR3E3UkZWQUFBQUoxQk1WRVgvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy85UnV2MFNBQUFBREhSU1RsTUFDQW9SRW9LRHQ3eTl6YzVxdFpveUFBQUFja2xFUVZRSUhRWEJzUW5DVUFBRndGT0NDS2JJQUJhV0VSemkxeWFGQXptRXBIWUVDOEdVS1ZRRWtieWh2T09rWnFkV3QwL1FZS3FMelFlRjdkdjZ5L1JMd2Eyd1l0azRYeHhlK3Q4eWQxV3VNL3JjVWMyZ1lIRWVvUDAydW1TZ1RSNTB5YkJQUnVpU1pBUzZaQVE0amdDQVB5allKaVJINGZ5bUFBQUFBRWxGVGtTdVFtQ0MnKSBuby1yZXBlYXQgY2VudGVyIGNlbnRlcjtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKC1tcy1oaWdoLWNvbnRyYXN0OiBhY3RpdmUpLCAoLW1zLWhpZ2gtY29udHJhc3Q6IG5vbmUpIHtcbiAgICAgei1pbmRleDogMTtcbiAgfVxuXG59XG5cbmxhYmVsW2Zvcj1jb3VudHJ5XSBzZWxlY3QsXG5sYWJlbFtmb3I9cHJMb3ddIHNlbGVjdCxcbmxhYmVsW2Zvcj1wckhpZ2hdIHNlbGVjdCxcbmxhYmVsW2Zvcj1zZWxlY3RDYXRdIHNlbGVjdCB7XG4gIGJvcmRlci1yYWRpdXM6IC4zZW07XG4gIGJhY2tncm91bmQ6ICRiYXNlLXdoaXRlO1xuICBwYWRkaW5nOiAuNWVtO1xuICB3aWR0aDogMTAwJTtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKC1tcy1oaWdoLWNvbnRyYXN0OiBhY3RpdmUpLCAoLW1zLWhpZ2gtY29udHJhc3Q6IG5vbmUpIHtcbiAgICAgLy8gYmFja2dyb3VuZDogcmdiYSgkYmFzZS13aGl0ZSwgMCk7XG4gICAgIHotaW5kZXg6IDE7XG4gIH1cbn1cblxubGFiZWxbZm9yPWNvdW50cnldIHNlbGVjdDo6LW1zLWV4cGFuZCxcbmxhYmVsW2Zvcj1wckxvd10gc2VsZWN0OjotbXMtZXhwYW5kLFxubGFiZWxbZm9yPXBySGlnaF0gc2VsZWN0OjotbXMtZXhwYW5kLFxubGFiZWxbZm9yPXNlbGVjdENhdF0gc2VsZWN0OjotbXMtZXhwYW5kIHtcbiAgICBkaXNwbGF5OiBub25lO1xufVxuXG5sYWJlbFtmb3I9Y291bnRyeV0gOi1tb3otYW55KHNlbGVjdCksXG5sYWJlbFtmb3I9cHJMb3ddIDotbW96LWFueShzZWxlY3QpLFxubGFiZWxbZm9yPXBySGlnaF0gOi1tb3otYW55KHNlbGVjdCksXG5sYWJlbFtmb3I9c2VsZWN0Q2F0XSA6LW1vei1hbnkoc2VsZWN0KSB7XG4gIHdpZHRoOiAxMTAlO1xufVxuXG5sYWJlbFtmb3I9Y291bnRyeV0uaWU5IHNlbGVjdCxcbmxhYmVsW2Zvcj1wckxvd10uaWU5IHNlbGVjdCxcbmxhYmVsW2Zvcj1wckhpZ2hdLmllOSBzZWxlY3QsXG5sYWJlbFtmb3I9c2VsZWN0Q2F0XS5pZTkgc2VsZWN0IHtcbiAgd2lkdGg6IDExMCU7XG59XG5cbmxhYmVsW2Zvcj1jb3VudHJ5XSBzZWxlY3Q6Zm9jdXMsXG5sYWJlbFtmb3I9cHJMb3ddIHNlbGVjdDpmb2N1cyxcbmxhYmVsW2Zvcj1wckhpZ2hdIHNlbGVjdDpmb2N1cyxcbmxhYmVsW2Zvcj1zZWxlY3RDYXRdIHNlbGVjdDpmb2N1cyB7XG4gIG91dGxpbmU6IG5vbmU7XG59XG4uYnVuZGxlLWZvcm0ge1xuICBAZXh0ZW5kIC5vZmZlci1mb3JtO1xuXG4gIGxpLFxuICBsaS5vLWNvdW50cnkge1xuICAgIGZsZXg6IDQ1JTtcbiAgfVxufVxuLmZvcm0tY2hlY2tib3hlcyB7XG4gIHAge1xuICAgIHBhZGRpbmc6IDAgMWVtO1xuICB9XG4gIGJ1dHRvbiB7bWFyZ2luOjFlbTt9XG59XG5cbi5jb250YWluLWNoZWNrYm94IHtcbiAgLy8gYmFja2dyb3VuZDogcmdiYSgkYmFzZS1ibGFjaywuMSk7XG4gIGJvcmRlci1yYWRpdXM6IC4zZW07XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgaGVpZ2h0OiAzNXB4O1xuICBsZWZ0OiAxZW07XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAxLjI1ZW07XG4gIHdpZHRoOiA0MHB4O1xuXG4gIGxhYmVsIHtcbiAgICBiYWNrZ3JvdW5kOiAkYmFzZS13aGl0ZTtcbiAgICBib3JkZXItcmFkaXVzOiAuM2VtO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoJGxpZ2h0ZXN0LWdyYXksIDEpO1xuICAgIGJveC1zaGFkb3c6IGluc2V0IDBweCAycHggNXB4IHJnYmEoJGJhc2UtYmxhY2ssIDAuMSk7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGhlaWdodDogMjBweDtcbiAgICBsZWZ0OiAxMHB4O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDdweDtcbiAgICB3aWR0aDogMjBweDtcblxuICAgICY6YWZ0ZXIge1xuICAgICAgY29udGVudDogdXJsKC9icm93c2VyL2ltZy9jaGVja21hcmsuc3ZnKTtcbiAgICAgIHdpZHRoOiAxMnB4O1xuICAgICAgaGVpZ2h0OiAxMnB4O1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAtMnB4O1xuICAgICAgbGVmdDogNHB4O1xuICAgICAgLy8gYm9yZGVyOiAzcHggc29saWQgJGdyZWVuO1xuICAgICAgYm9yZGVyLXRvcDogbm9uZTtcbiAgICAgIGJvcmRlci1yaWdodDogbm9uZTtcbiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgb3BhY2l0eTogMDtcbiAgICB9XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgICY6YWZ0ZXIge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIGlucHV0W3R5cGU9Y2hlY2tib3hdIHtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG5cbiAgICAmOmNoZWNrZWQgKyBsYWJlbDphZnRlciB7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgIH1cbiAgfVxufVxuXG4ub3JnLWNvbnRhaW4tY2hlY2tib3gge1xuXG4gIGxhYmVsIHtcbiAgICBiYWNrZ3JvdW5kOiAkYmFzZS13aGl0ZTtcbiAgICBib3JkZXItcmFkaXVzOiAuM2VtO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoJGxpZ2h0ZXN0LWdyYXksIDEpO1xuICAgIGJveC1zaGFkb3c6IGluc2V0IDBweCAycHggNXB4IHJnYmEoJGJhc2UtYmxhY2ssIDAuMSk7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGhlaWdodDogMjBweDtcbiAgICBsZWZ0OiAxMHB4O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDdweDtcbiAgICB3aWR0aDogMjBweDtcblxuICAgICY6YWZ0ZXIge1xuICAgICAgY29udGVudDogdXJsKC9icm93c2VyL2ltZy9jaGVja21hcmsuc3ZnKTtcbiAgICAgIHdpZHRoOiAxMnB4O1xuICAgICAgaGVpZ2h0OiAxMnB4O1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAtMnB4O1xuICAgICAgbGVmdDogNHB4O1xuICAgICAgLy8gYm9yZGVyOiAzcHggc29saWQgJGdyZWVuO1xuICAgICAgYm9yZGVyLXRvcDogbm9uZTtcbiAgICAgIGJvcmRlci1yaWdodDogbm9uZTtcbiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgb3BhY2l0eTogMDtcbiAgICB9XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgICY6YWZ0ZXIge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIGlucHV0W3R5cGU9Y2hlY2tib3hdIHtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG5cbiAgICAmOmNoZWNrZWQgKyBsYWJlbDphZnRlciB7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgIH1cbiAgfVxufVxuXG4vL1ZhbGlkYXRpb24gZXJyb3JzXG4udmFsaWRhdGUtZXJyIHtcbiAgICBiYWNrZ3JvdW5kOiAkcmVkO1xuICAgIGJvcmRlci1yYWRpdXM6IDAgMCAxMHB4IDEwcHg7XG4gICAgY2xlYXI6IGJvdGg7XG4gICAgY29sb3I6ICRiYXNlLXdoaXRlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZvbnQtc2l6ZTogMC43MjJlbTtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICAgIHBhZGRpbmc6IC43NWVtO1xufVxuXG5pbnB1dC5zZWFyY2gtdGV4dC1maWVsZC5lcnJvci10bGQtdGV4dGJveDpmb2N1cywgaW5wdXQuaG9tZS1zZWFyY2hmaWVsZC5lcnJvci10bGQtdGV4dGJveDpmb2N1cywgaW5wdXQuc2VhcmNoLXRleHQtZmllbGQuZXJyb3ItdGxkLXRleHRib3gsIGlucHV0LmhvbWUtc2VhcmNoZmllbGQuZXJyb3ItdGxkLXRleHRib3gge1xuICAgIGJvcmRlcjogMnB4IHNvbGlkICNkMjEzMzQ7XG59XG4iLCJ1bCxcbm9sIHtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG5cbiAgJiVkZWZhdWx0LXVsIHtcbiAgICBsaXN0LXN0eWxlLXR5cGU6IGRpc2M7XG4gICAgbWFyZ2luLWJvdHRvbTogJHNtYWxsLXNwYWNpbmc7XG4gICAgcGFkZGluZy1sZWZ0OiAkYmFzZS1zcGFjaW5nO1xuICB9XG5cbiAgJiVkZWZhdWx0LW9sIHtcbiAgICBsaXN0LXN0eWxlLXR5cGU6IGRlY2ltYWw7XG4gICAgbWFyZ2luLWJvdHRvbTogJHNtYWxsLXNwYWNpbmc7XG4gICAgcGFkZGluZy1sZWZ0OiAkYmFzZS1zcGFjaW5nO1xuICB9XG59XG5cbmRsIHtcbiAgbWFyZ2luLWJvdHRvbTogJHNtYWxsLXNwYWNpbmc7XG5cbiAgZHQge1xuICAgIG1hcmdpbi10b3A6ICRzbWFsbC1zcGFjaW5nO1xuICB9XG5cbiAgZGQge1xuICAgIG1hcmdpbjogMDtcbiAgfVxufVxuIiwidGFibGUge1xuICBmb250LWZlYXR1cmUtc2V0dGluZ3M6IFwia2VyblwiLCBcImxpZ2FcIiwgXCJ0bnVtXCI7XG4gIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG4gIG1hcmdpbjogMDtcbiAgdGFibGUtbGF5b3V0OiBmaXhlZDtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbnRoIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIGRhcmtlbigkYmFzZS1ib3JkZXItY29sb3IsIDE1JSk7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIHBhZGRpbmc6ICRzbWFsbC1zcGFjaW5nIDA7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG59XG5cbnRkIHtcbiAgYm9yZGVyLWJvdHRvbTogJGJhc2UtYm9yZGVyO1xuICBwYWRkaW5nOiAkc21hbGwtc3BhY2luZyAwO1xufVxuXG50cixcbnRkLFxudGgge1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuIiwiYm9keSB7XG4gIGZvbnQtZmVhdHVyZS1zZXR0aW5nczogXCJrZXJuXCIsIFwibGlnYVwiLCBcInRudW1cIjtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gIGNvbG9yOiAkYmFzZS1mb250LWNvbG9yO1xuICBmb250LWZhbWlseTogJGJhc2UtZm9udC1mYW1pbHk7XG4gIGZvbnQtc2l6ZTogJGJhc2UtZm9udC1zaXplO1xuICBsaW5lLWhlaWdodDogJGJhc2UtbGluZS1oZWlnaHQ7XG59XG5cbmgxLFxuaDIsXG5oMyxcbmg0LFxuaDUsXG5oNiB7XG4gIGNvbG9yOiAkYmFzZS13aGl0ZTtcbiAgZm9udC1mYW1pbHk6ICRoZWFkaW5nLWZvbnQtZmFtaWx5O1xuICBmb250LXNpemU6IDFyZW07XG4gIGxpbmUtaGVpZ2h0OiAkaGVhZGluZy1saW5lLWhlaWdodDtcbiAgbWFyZ2luOiAwIDAgJHNtYWxsLXNwYWNpbmc7XG4gIG1hcmdpbjogMDtcbn1cbmgxLFxuaDIge1xuICBmb250LWZhbWlseTogJGhlYWRpbmctZm9udC10aGluO1xuICBmb250LXNpemU6IDVyZW07XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5oMiB7XG4gIC8vIGZvbnQtc2l6ZTogMnJlbTtcbiAgbWFyZ2luLWJvdHRvbTogLjVlbTtcblxuICAuY29udGVudC1ob21lICYge1xuICAgIGZvbnQtc2l6ZTogNXJlbTtcblxuICAgIEBpbmNsdWRlIG1lZGlhKFwiPj0wZW1cIiwgXCI8bW9iaWxlLW1lZFwiKSB7XG4gICAgICBmb250LXNpemU6M3JlbTtcbiAgICB9XG4gIH1cbiAgLmNvbnRhaW4tb2ZmZXIgJiB7XG4gICAgZm9udC1zaXplOiAycmVtO1xuICB9XG59XG5oMyB7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG5cbiAgLmNvbnRlbnQtaG9tZSAmLFxuICAuY29udGVudC1ob21lICYge1xuICAgIGZvbnQtZmFtaWx5OiAkaGVhZGluZy1mb250LXRoaW47XG4gICAgZm9udC1zaXplOiAzLjc1MHJlbTtcbiAgICBmb250LXdlaWdodDogMzAwO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEoXCI+PTBlbVwiLCBcIjxtb2JpbGUtbWVkXCIpIHtcbiAgICAgIGZvbnQtc2l6ZTozcmVtO1xuICAgIH1cbiAgfVxufVxuXG5oNCB7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGNvbG9yOiAkZGFyay1ncmF5O1xufVxuXG5wIHtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgbWFyZ2luOiAwIDAgJHNtYWxsLXNwYWNpbmc7XG5cbiAgLmhvbWUtc3BlY2lhbGlzdCAmIHtcbiAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgfVxuICAuY29udGFpbi1vZmZlciAmIHtcbiAgICBjb2xvcjogJGJhc2Utd2hpdGU7XG4gIH1cbn1cbiAgLnNtYWxsIHtcbiAgICBmb250LXNpemU6IDAuOHJlbTtcbiAgfVxuICAueGxhcmdlIHtcbiAgICBmb250LXNpemU6IDIuMjUwcmVtO1xuICB9XG4gIC5sYXJnZSB7XG4gICAgZm9udC1zaXplOiAxLjVyZW07ICAgIFxuICB9XG4gIC5tZWQge1xuICAgIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgfVxuICAuZ3JheSB7XG4gICAgY29sb3I6ICRkYXJrLWdyYXk7XG4gIH1cbiAgLnR4dC1saWdodCB7XG4gICAgZm9udC1mYW1pbHk6ICRyb2JvdG9DO1xuICB9XG4gIC50eHQtdGhpbiB7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgfVxuICAuY29sb3ItZG9tYWluIHtcbiAgICBjb2xvcjogJGJsdWU7XG4gIH1cbiAgLmNvbG9yLXRsZCB7XG4gICAgY29sb3I6ICRtZWRpdW0tZ3JheTtcbiAgfVxuXG5cbmEge1xuICBjb2xvcjogJGFjdGlvbi1jb2xvcjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0cmFuc2l0aW9uOiBjb2xvciAwLjFzIGxpbmVhcjtcblxuICAmOmFjdGl2ZSxcbiAgJjpmb2N1cyxcbiAgJjpob3ZlciB7XG4gICAgY29sb3I6IGRhcmtlbigkYWN0aW9uLWNvbG9yLCAxNSUpO1xuICB9XG5cbiAgJjphY3RpdmUsXG4gICY6Zm9jdXMge1xuICAgIG91dGxpbmU6IG5vbmU7XG4gIH1cbn1cblxuaHIge1xuICBib3JkZXItYm90dG9tOiAkYmFzZS1ib3JkZXI7XG4gIGJvcmRlci1sZWZ0OiBub25lO1xuICBib3JkZXItcmlnaHQ6IG5vbmU7XG4gIGJvcmRlci10b3A6IG5vbmU7XG4gIG1hcmdpbjogJGJhc2Utc3BhY2luZyAwO1xuXG4gICYud2hpdGUge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKCRiYXNlLXdoaXRlLCAuNSk7XG4gIH1cbn1cblxuaW1nLFxucGljdHVyZSB7XG4gIG1hcmdpbjogMDtcbiAgbWF4LXdpZHRoOiAxMDAlO1xufVxuLnR4dC1saW5lLXRocnUge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbGluZS10aHJvdWdoO1xufVxuLnR4dC1jYWxsLXVzIHtcbiAgICBmb250LWZhbWlseTogJGhlYWRpbmctZm9udC10aGluO1xuICAgIGZvbnQtc2l6ZTogMS43NTByZW07XG4gICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICBsaW5lLWhlaWdodDogMS41ZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMS41ZW07XG4gIH1cbiAgICAudHh0LXBob25lLWxhcmdlLFxuICAgIC50eHQtcGhvbmUtbGFyZ2U6aG92ZXIge1xuICAgICAgY29sb3I6IGRhcmtlbigkZ3JlZW4sIDEwJSk7XG4gICAgICBmb250LWZhbWlseTogJGJhc2UtZm9udC1mYW1pbHk7XG4gICAgICBmb250LXNpemU6IDIuNjI1cmVtO1xuICAgIH1cbiAgICAudHh0LXBob25lLFxuICAgIC50eHQtcGhvbmU6aG92ZXIge1xuICAgICAgY29sb3I6IGRhcmtlbigkZ3JlZW4sIDEwJSk7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBmb250LWZhbWlseTogJGJhc2UtZm9udC1mYW1pbHk7XG5cbiAgICAgIC5jb250YWluLXRkZnMtY3RhICYsXG4gICAgICAuY29udGFpbi10ZGZzLW9mZmVyQ29uZmlybSAmIHtcbiAgICAgICAgY29sb3I6IHNoYWRlKCRncmVlbiwgMTAlKTtcbiAgICAgICAgZm9udC1zaXplOiAyLjYyNXJlbTtcblxuICAgICAgICBAaW5jbHVkZSBtZWRpYShcIj49MGVtXCIsIFwiPDQ3LjVlbVwiKSB7XG4gICAgICAgICAgICBcbiAgICAgICAgICAgICYgKyAudHh0LWdyZXkge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IC0yNXB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC5jb250YWluLW1lc3NhZ2UgJixcbiAgICAgIC50ZGZzLXBob25lLWZvcm0gJixcbiAgICAgIC5tby1waG9uZS10eHQgJiB7XG4gICAgICAgIGNvbG9yOiAkYmFzZS13aGl0ZTtcbiAgICAgIH1cbiAgICAgIFxuICAgICAgLmhvbWUtb2ZmZXJzICYsXG4gICAgICAuZi1waG9uZSAmIHtcbiAgICAgICAgY29sb3I6ICRiYXNlLXdoaXRlO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHBhZGRpbmc6IC4yNWVtIC41ZW07XG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj0wZW1cIiwgXCI8bW9iaWxlLW1lZFwiKSB7XG4gICAgICAgIC5ob21lLW9mZmVycyAmIHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBwYWRkaW5nOiAuMjVlbSAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAuaG9tZS1zcGVjaWFsaXN0ICYge1xuICAgICAgICBjb2xvcjogJGRhcmstZ3JheTtcbiAgICAgICAgZm9udC1mYW1pbHk6ICRyb2JvdG9DO1xuICAgICAgfVxuXG4gICAgICAubmF2LWNvbnRhaW4tcGhvbmUgJiB7XG4gICAgICAgICAgZm9udC1zaXplOiAxLjM3NWVtO1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IC41ZW07XG4gICAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PTBlbVwiLCBcIjxtb2JpbGUtbWVkXCIpIHtcbiAgICAgICAgICAgIGJvcmRlci1yaWdodC13aWR0aDogMDtcbiAgICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmNvbnRhaW4tbmFtZSB7XG4gICAgICBiYWNrZ3JvdW5kOiByZ2JhKCRtZWRpdW0tZ3JheSwgLjEyKTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IC4zZW07XG4gICAgICBwYWRkaW5nOiAuMjVlbTtcbiAgICB9XG4gICAgLm9mZmVyVmFsdWUge1xuICAgICAgY29sb3I6IGRhcmtlbigkZ3JlZW4sIDEwJSk7XG4gICAgfVxuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBRUNBLEFBQUEsSUFBSSxBQUFDLENBQUUsVUFBVSxDQUFFLFVBQVUsQ0FBSSxBQUNqQyxBQUFBLENBQUMsQ0FBRSxDQUFDLEFBQUEsT0FBTyxDQUFFLENBQUMsQUFBQSxRQUFRLEFBQUMsQ0FBRSxVQUFVLENBQUUsT0FBTyxDQUFJLEFBOENoRCxBQUFBLE9BQU8sQ0FDUCxLQUFLLENBQ0wsT0FBTyxDQUNQLFVBQVUsQ0FDVixNQUFNLENBQ04sTUFBTSxDQUNOLE1BQU0sQ0FDTixNQUFNLENBQ04sR0FBRyxDQUNILE9BQU8sQ0FDUCxPQUFPLEFBQUMsQ0FDSixPQUFPLENBQUUsS0FBSyxDQUNqQixBQUlELEFBQUEsS0FBSyxDQUNMLE1BQU0sQ0FDTixLQUFLLEFBQUMsQ0FDRixPQUFPLENBQUUsWUFBWSxDQUt4QixBQUtELEFBQUEsS0FBSyxBQUFBLElBQUssRUFBQSxBQUFBLFFBQUMsQUFBQSxFQUFXLENBQ2xCLE9BQU8sQ0FBRSxJQUFJLENBQ2IsTUFBTSxDQUFFLENBQUMsQ0FDWixDQU9ELEFBQUEsQUFBQSxNQUFDLEFBQUEsRUFBUyxRQUFRLEFBQUMsQ0FDZixPQUFPLENBQUUsSUFBSSxDQUNoQixBQXhGRCxBQUFBLElBQUksQUFtR0MsQ0FLSCxLQUFLLENBakVDLElBQUksQ0FrRVIsd0JB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 */
