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"]{-webkit-appearance:textfield;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::-webkit-input-placeholder{color:#6babd2}.nav-searchfield::-moz-placeholder{color:#6babd2}.nav-searchfield:-ms-input-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{-webkit-font-feature-settings:"kern", "liga", "tnum";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{-webkit-font-feature-settings:"kern", "liga", "tnum";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;-moz-align-items:center;-ms-align-items:center;-o-align-items:center;align-items:center;-ms-flex-align: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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGRmcy10ZW1wLmNzcyIsInNvdXJjZXMiOlsidGRmcy10ZW1wLnNjc3MiLCJfaW5jbHVkZS1tZWRpYS5zY3NzIiwiX25vcm1hbGl6ZS5zY3NzIiwiX2JvdXJib24uc2NzcyIsImJvdXJib24vaGVscGVycy9fYnV0dG9ucy1saXN0LnNjc3MiLCJib3VyYm9uL2hlbHBlcnMvX3NjYWxlcy5zY3NzIiwiYm91cmJvbi9oZWxwZXJzL190ZXh0LWlucHV0cy1saXN0LnNjc3MiLCJib3VyYm9uL3NldHRpbmdzL19zZXR0aW5ncy5zY3NzIiwiYm91cmJvbi92YWxpZGF0b3JzL19jb250YWlucy5zY3NzIiwiYm91cmJvbi92YWxpZGF0b3JzL19jb250YWlucy1mYWxzeS5zY3NzIiwiYm91cmJvbi92YWxpZGF0b3JzL19pcy1jb2xvci5zY3NzIiwiYm91cmJvbi92YWxpZGF0b3JzL19pcy1sZW5ndGguc2NzcyIsImJvdXJib24vdmFsaWRhdG9ycy9faXMtbnVtYmVyLnNjc3MiLCJib3VyYm9uL3ZhbGlkYXRvcnMvX2lzLXNpemUuc2NzcyIsImJvdXJib24vdXRpbGl0aWVzL19hc3NpZ24taW5wdXRzLnNjc3MiLCJib3VyYm9uL3V0aWxpdGllcy9fY29tcGFjdC1zaG9ydGhhbmQuc2NzcyIsImJvdXJib24vdXRpbGl0aWVzL19kaXJlY3Rpb25hbC1wcm9wZXJ0eS5zY3NzIiwiYm91cmJvbi91dGlsaXRpZXMvX2ZldGNoLWJvdXJib24tc2V0dGluZy5zY3NzIiwiYm91cmJvbi91dGlsaXRpZXMvX2ZvbnQtc291cmNlLWRlY2xhcmF0aW9uLnNjc3MiLCJib3VyYm9uL3V0aWxpdGllcy9fZ2FtbWEuc2NzcyIsImJvdXJib24vdXRpbGl0aWVzL19saWdodG5lc3Muc2NzcyIsImJvdXJib24vdXRpbGl0aWVzL19jb250cmFzdC1yYXRpby5zY3NzIiwiYm91cmJvbi91dGlsaXRpZXMvX3VucGFjay1zaG9ydGhhbmQuc2NzcyIsImJvdXJib24vbGlicmFyeS9fYm9yZGVyLWNvbG9yLnNjc3MiLCJib3VyYm9uL2xpYnJhcnkvX2JvcmRlci1yYWRpdXMuc2NzcyIsImJvdXJib24vbGlicmFyeS9fYm9yZGVyLXN0eWxlLnNjc3MiLCJib3VyYm9uL2xpYnJhcnkvX2JvcmRlci13aWR0aC5zY3NzIiwiYm91cmJvbi9saWJyYXJ5L19idXR0b25zLnNjc3MiLCJib3VyYm9uL2xpYnJhcnkvX2NsZWFyZml4LnNjc3MiLCJib3VyYm9uL2xpYnJhcnkvX2NvbnRyYXN0LXN3aXRjaC5zY3NzIiwiYm91cmJvbi9saWJyYXJ5L19lbGxpcHNpcy5zY3NzIiwiYm91cmJvbi9saWJyYXJ5L19mb250LWZhY2Uuc2NzcyIsImJvdXJib24vbGlicmFyeS9fZm9udC1zdGFja3Muc2NzcyIsImJvdXJib24vbGlicmFyeS9faGlkZS10ZXh0LnNjc3MiLCJib3VyYm9uL2xpYnJhcnkvX2hpZGUtdmlzdWFsbHkuc2NzcyIsImJvdXJib24vbGlicmFyeS9fbWFyZ2luLnNjc3MiLCJib3VyYm9uL2xpYnJhcnkvX21vZHVsYXItc2NhbGUuc2NzcyIsImJvdXJib24vbGlicmFyeS9fb3ZlcmZsb3ctd3JhcC5zY3NzIiwiYm91cmJvbi9saWJyYXJ5L19wYWRkaW5nLnNjc3MiLCJib3VyYm9uL2xpYnJhcnkvX3Bvc2l0aW9uLnNjc3MiLCJib3VyYm9uL2xpYnJhcnkvX3ByZWZpeGVyLnNjc3MiLCJib3VyYm9uL2xpYnJhcnkvX3NoYWRlLnNjc3MiLCJib3VyYm9uL2xpYnJhcnkvX3NpemUuc2NzcyIsImJvdXJib24vbGlicmFyeS9fc3RyaXAtdW5pdC5zY3NzIiwiYm91cmJvbi9saWJyYXJ5L190ZXh0LWlucHV0cy5zY3NzIiwiYm91cmJvbi9saWJyYXJ5L190aW1pbmctZnVuY3Rpb25zLnNjc3MiLCJib3VyYm9uL2xpYnJhcnkvX3RpbnQuc2NzcyIsImJvdXJib24vbGlicmFyeS9fdHJpYW5nbGUuc2NzcyIsImJvdXJib24vbGlicmFyeS9fdmFsdWUtcHJlZml4ZXIuc2NzcyIsImJpdHRlcnMvX2Jhc2Uuc2NzcyIsImJpdHRlcnMvX3ZhcmlhYmxlcy5zY3NzIiwiYml0dGVycy9fYnV0dG9ucy5zY3NzIiwiYml0dGVycy9fbmF2LWl0ZW1zLnNjc3MiLCJiaXR0ZXJzL19mb3Jtcy5zY3NzIiwiYml0dGVycy9fbGlzdHMuc2NzcyIsImJpdHRlcnMvX3RhYmxlcy5zY3NzIiwiYml0dGVycy9fdHlwb2dyYXBoeS5zY3NzIl0sInNvdXJjZXNDb250ZW50IjpbIkBpbXBvcnQgXCJpbmNsdWRlLW1lZGlhXCI7XG5AaW1wb3J0IFwibm9ybWFsaXplXCI7XG5AaW1wb3J0IFwiYm91cmJvblwiO1xuQGltcG9ydCBcImJpdHRlcnMvYmFzZVwiO1xuXG5cbmh0bWwsIGJvZHkge2hlaWdodDogMTAwJTtiYWNrZ3JvdW5kOiAkb2ZmLXdoaXRlO31cblxuLnRkZnMtaW5wdXQge1xuXG4gICAgJjpmb2N1czo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciB7XG4gICAgICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICB9XG4gICAgJjpmb2N1czotbW96LXBsYWNlaG9sZGVyIHtcbiAgICAgICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIH1cbiAgICAmOmZvY3VzOjotbW96LXBsYWNlaG9sZGVyIHtcbiAgICAgICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIH0mOmZvY3VzOi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7XG4gICAgICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICB9XG59XG5cblxuLmlubmVyLXRkZnMge1xuICAgIGhlaWdodDogMTAwdmg7XG4gICAgcGFkZGluZzogNSUgMi41JSAwJSAzNSU7XG5cbiAgICAmOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6IHVybCgvYnJvd3Nlci9pbWcvYXJ3LWRvdC1ncmF5LnN2Zyk7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAvLyBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRtZWRpdW0tZ3JheSwgLjE1KTtcbiAgICAgICAgLy8gLXdlYmtpdC1tYXNrOiB1cmwoL2Jyb3dzZXIvaW1nL2Fydy1kb3Quc3ZnKSBuby1yZXBlYXQ7XG4gICAgICAgIC8vIG1hc2s6IHVybCgvYnJvd3Nlci9pbWcvYXJ3LWRvdC5zdmcjYXJ3RG90KSBuby1yZXBlYXQ7XG4gICAgICAgIC8vIC13ZWJraXQtbWFzay1zaXplOiBjb3ZlcjtcbiAgICAgICAgLy8gICBtYXNrLXNpemU6IGNvdmVyO1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIGxlZnQ6IDAlO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHdpZHRoOiAzMCU7XG5cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKC1tcy1oaWdoLWNvbnRyYXN0OiBhY3RpdmUpLCAoLW1zLWhpZ2gtY29udHJhc3Q6IG5vbmUpIHtcbiAgICAgICAgICAgIG1hc2s6IG5vbmU7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRtZWRpdW0tZ3JheSwgMCk7XG4gICAgICAgICAgICBjb250ZW50OiB1cmwoL2Jyb3dzZXIvaW1nL2Fydy1kb3QtdHJhbnMuc3ZnKTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj0wZW1cIiwgXCI8cGhhYmxldFwiKSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj1waGFibGV0XCIsIFwiPDQ3LjUwZW1cIikge1xuICAgICAgICAgICAgd2lkdGg6IDE1JTtcbiAgICAgICAgfVxuICAgICAgICBAaW5jbHVkZSBtZWRpYShcIj49MTUwMHB4XCIpIHtcbiAgICAgICAgICAgIHdpZHRoOiAyMCU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYShcIj49MGVtXCIsIFwiPHBoYWJsZXRcIikge1xuICAgICAgcGFkZGluZzogNSUgMCAwO1xuICAgIH1cbiAgICBAaW5jbHVkZSBtZWRpYShcIj49cGhhYmxldFwiLCBcIjw0Ny41MGVtXCIpIHtcbiAgICAgIHBhZGRpbmc6IDUlIDUlIDAgMjAlO1xuICAgIH1cbiAgICBAaW5jbHVkZSBtZWRpYShcIj49MTUwMHB4XCIpIHtcbiAgICAgICAgbWF4LXdpZHRoOiAxMzYwcHg7XG4gICAgICAgIHBhZGRpbmc6IDUlIDIuNSUgMCUgMjUlOyBcbiAgICB9XG4gICAgXG59XG4gICAgLmgxLXRkZnMge1xuICAgICAgICBjb2xvcjogJGRhcmstZ3JheTtcbiAgICAgICAgZm9udC1mYW1pbHk6ICRiYXNlLWZvbnQtZmFtaWx5O1xuICAgICAgICBmb250LXNpemU6IDEuMzc1cmVtO1xuICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAuNWVtO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcblxuICAgICAgICBAaW5jbHVkZSBtZWRpYShcIj49MGVtXCIsIFwiPHBoYWJsZXRcIikge1xuICAgICAgICAgICAgcGFkZGluZzogMCAuNWVtO1xuICAgICAgICB9XG4gICAgfVxuICAgICAgICAuY29udGFpbi10ZGZzLW5hbWUge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogJGJhc2Utd2hpdGU7XG4gICAgICAgICAgICBib3JkZXI6MXB4IHNvbGlkICRsaWdodGVzdC1ncmF5O1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogLjNlbTtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IGluc2V0IDAgNXB4IDEwcHggcmdiYSgkYmFzZS1ibGFjaywgLjA1KTtcbiAgICAgICAgICAgIGNvbG9yOiAkYmx1ZTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjYyNXJlbTtcbiAgICAgICAgICAgIG1hcmdpbjogLjVlbSAwO1xuICAgICAgICAgICAgcGFkZGluZzogLjM1ZW0gLjVlbSAuMzVlbSA1MHB4O1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICAgICBzdHJvbmcge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkbGlnaHQtZ3JheTtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IHVybCgvYnJvd3Nlci9pbWcvZmF2ZS1vdXRsaW5lLWdyYXkuc3ZnKTtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAvLyBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRtZWRpdW0tZ3JheSwgLjQpO1xuICAgICAgICAgICAgICAgIC8vIC13ZWJraXQtbWFzazogdXJsKC9icm93c2VyL2ltZy9mYXZlLW91dGxpbmUuc3ZnKSBuby1yZXBlYXQ7XG4gICAgICAgICAgICAgICAgLy8gbWFzazogdXJsKC9icm93c2VyL2ltZy9mYXZlLW91dGxpbmUuc3ZnKSBuby1yZXBlYXQ7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAyNXB4O1xuICAgICAgICAgICAgICAgIGxlZnQ6IDE1cHg7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAyNXB4O1xuXG4gICAgICAgICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKC1tcy1oaWdoLWNvbnRyYXN0OiBhY3RpdmUpLCAoLW1zLWhpZ2gtY29udHJhc3Q6IG5vbmUpIHtcbiAgICAgICAgICAgICAgICAgICAgbWFzazogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkbWVkaXVtLWdyYXksIDApO1xuICAgICAgICAgICAgICAgICAgICBjb250ZW50OiB1cmwoL2Jyb3dzZXIvaW1nL2ZhdmUtb3V0bGluZS5zdmcpO1xuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAuNDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtZWRpYShcIj49MGVtXCIsIFwiPHBoYWJsZXRcIikge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PTBlbVwiLCBcIjxwaGFibGV0XCIpIHtcbiAgICAgICAgICAgICAgICBvdmVyZmxvdy14OiBzY3JvbGw7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogLjM1ZW0gLjVlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIC5jb250YWluLXR4dCB7XG4gICAgICAgIGNvbG9yOiAkbGlnaHQtZ3JheTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMS41ZW07XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PTBlbVwiLCBcIjxwaGFibGV0XCIpIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IC4zNWVtIC43NWVtO1xuICAgICAgICB9XG4gICAgfVxuICAgICAgICAudHh0LW9yaWctcHJpY2Uge1xuICAgICAgICAgICAgY29sb3I6ICRkYXJrLWdyYXk7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuMzVyZW07XG4gICAgICAgIH1cbiAgICAgICAgLnR4dC1zYXZlLW5vdyB7XG4gICAgICAgICAgICBjb2xvcjogJHJlZDtcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkYmFzZS1mb250LXRoaW47XG4gICAgICAgICAgICBmb250LXNpemU6IDEuMTI1ZW07XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBtZWRpYShcIj49MGVtXCIsIFwiPHBoYWJsZXRcIikge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICB9XG4uY29udGFpbi10ZGZzLWN0YSB7XG4gICAgLXdlYmtpdC1hbmltYXRpb246IGZhZGVJblVwIDMwMG1zIGVhc2UtaW4tb3V0O1xuICAgICAgICAgIGFuaW1hdGlvbjogZmFkZUluVXAgMzAwbXMgZWFzZS1pbi1vdXQ7XG4gICAgJi5uZy1oaWRlIHtcbiAgICAgICAgZGlzcGxheTpub25lOy8vIEBpbmNsdWRlIGFuaW1hdGlvbihmYWRlT3V0RG93biAzMDBtcyBlYXNlLWluLW91dCk7XG4gICAgfVxufVxuICAgIC50ZGZzLWN0YSB7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGFsaWduLXNlbGY6IHN0cmV0Y2g7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAzLjVlbTtcblxuICAgICAgICAuYnRuLWFkZC1jYXJ0LFxuICAgICAgICAuYnRuLW1ha2Utb2ZmZXIge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjM3NXJlbTtcbiAgICAgICAgICAgIG1hcmdpbjouMjVlbSAwO1xuICAgICAgICAgICAgLy8gcGFkZGluZzogLjI1ZW0gMS41ZW07XG5cbiAgICAgICAgICAgIFxuICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PTBlbVwiLCBcIjw0Ny41ZW1cIikge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgXG4gICAgICAgIH1cbiAgICAgICAgLnR4dC1vciB7XG4gICAgICAgICAgICBwYWRkaW5nOiAxZW07XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj0wZW1cIiwgXCI8NDcuNWVtXCIpIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PTBlbVwiLCBcIjw0Ny41ZW1cIikge1xuICAgICAgICAgICAgLXdlYmtpdC1mbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgICAgLW1zLWZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgMiU7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLnR4dC1jYWxsLXVzIHtcbiAgICAgICAgZm9udC1mYW1pbHk6ICRiYXNlLWZvbnQtdGhpbjtcbiAgICAgICAgZm9udC1zaXplOiAxLjc1MHJlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNWVtO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxLjVlbTtcblxuICAgICAgICBAaW5jbHVkZSBtZWRpYShcIj49MGVtXCIsIFwiPHBoYWJsZXRcIikge1xuICAgICAgICAgICAgcGFkZGluZzogLjVlbTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5jb250YWluLW5hbWUge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogcmdiYSgkbWVkaXVtLWdyYXksIC4xMik7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAuM2VtO1xuICAgICAgICAgICAgcGFkZGluZzogLjI1ZW07XG4gICAgICAgIH1cblxuICAgIC5jb250YWluLXRkZnMtb2ZmZXIge1xuICAgICAgICAtd2Via2l0LWFuaW1hdGlvbjogZmFkZUluRG93biAzMDBtcyBlYXNlLWluLW91dDtcbiAgICAgICAgICAgICAgYW5pbWF0aW9uOiBmYWRlSW5Eb3duIDMwMG1zIGVhc2UtaW4tb3V0O1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgJi5uZy1oaWRlIHtcbiAgICAgICAgICAgIC13ZWJraXQtYW5pbWF0aW9uOiBmYWRlT3V0VXAgMzAwbXMgZWFzZS1pbi1vdXQ7XG4gICAgICAgICAgICBhbmltYXRpb246IGZhZGVPdXRVcCAzMDBtcyBlYXNlLWluLW91dDtcbiAgICAgICAgfVxuICAgICAgICAuY29udGFpbi1vZmZlciB7XG4gICAgICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgICAgICAgei1pbmRleDogMjtcbiAgICAgICAgfVxuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBib3gtc2hhZG93OiBpbnNldCAwIDVweCA3cHggLTVweCByZ2JhKCRiYXNlLWJsYWNrLCAuMjUpO1xuICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIGhlaWdodDogNXB4O1xuICAgICAgICAgICAgbGVmdDogLTIlO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgd2lkdGg6IDEwNCU7XG4gICAgICAgICAgICB6LWluZGV4OiAzO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBtZWRpYShcIj49MGVtXCIsIFwiPHBoYWJsZXRcIikge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgLmlubmVyLXRkZnMgJiB7XG4gICAgICAgICAgICAgICAgYm94LXNoYWRvdzogMCAyMHB4IDI1cHggcmdiYSgkYmFzZS1ibGFjaywgLjM1KTtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMDBweDtcbiAgICAgICAgICAgICAgICBib3R0b206IDJweDtcbiAgICAgICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDUwcHg7XG4gICAgICAgICAgICAgICAgbGVmdDogMCU7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuY29udGFpbi10ZGZzLW9mZmVyQ29uZmlybSB7XG4gICAgICAgIC13ZWJraXQtYW5pbWF0aW9uOiBmYWRlSW5VcCAzMDBtcyBlYXNlLWluLW91dDtcbiAgICAgICAgICAgIGFuaW1hdGlvbjogZmFkZUluVXAgMzAwbXMgZWFzZS1pbi1vdXQ7XG4gICAgfVxuICAgICAgICAudGRmcy1vZmZlclZhbHVlIHtcbiAgICAgICAgICAgIGNvbG9yOiBzaGFkZSgkZ3JlZW4sIDEwJSk7XG4gICAgICAgIH1cblxuICAgIC5jb250YWluLXRkZnMtb2ZmZXItY3RhIHtcblxuICAgICAgICAtd2Via2l0LWZsZXgtd3JhcDogd3JhcDtcblxuICAgICAgICAgICAgLW1zLWZsZXgtd3JhcDogd3JhcDtcblxuICAgICAgICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDsgIC8qIE9MRCAtIGlPUyA2LSwgU2FmYXJpIDMuMS02LCBCQjcgKi9cbiAgICAgICAgZGlzcGxheTogLW1zLWZsZXhib3g7ICAvKiBUV0VFTkVSIC0gSUUgMTAgKi9cbiAgICAgICAgZGlzcGxheTogLXdlYmtpdC1mbGV4OyAvKiBORVcgLSBTYWZhcmkgNi4xKy4gaU9TIDcuMSssIEJCMTAgKi9cbiAgICAgICAgZGlzcGxheTogZmxleDsgICAgICAgICAvKiBORVcsIFNwZWMgLSBGaXJlZm94LCBDaHJvbWUsIE9wZXJhICovXG4gICAgICAgIGJveC1hbGlnbjogY2VudGVyO1xuICAgICAgICAtd2Via2l0LWFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIC1tb3otYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgLW1zLWFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIC1vLWFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgLW1zLWZsZXgtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAtd2Via2l0LWZsZXgtZmxvdzogcm93IHdyYXA7XG4gICAgICAgICAgIC1tcy1mbGV4LWZsb3c6IHJvdyB3cmFwO1xuICAgICAgICAgICAgICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICAgICAgICAgICAtd2Via2l0LWp1c3RpZnktY29udGVudDogZmxleC1zdGFydDsgLyogU2FmYXJpIDYuMSsgKi9cbiAgICAgICAgICAgLW1zLWZsZXgtcGFjazogc3RhcnQ7XG4gICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgICAgIFxuICAgIH1cblxuICAgICAgICAudGRmcy1waG9uZS1mb3JtIHtcbiAgICAgICAgICAgIGNvbG9yOiAkYmFzZS13aGl0ZTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4zNzVyZW07XG4gICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuXG4gICAgICAgICAgICAuY29udGFpbi10ZGZzLW9mZmVyLWN0YSAmIHtcbiAgICAgICAgICAgICAgICBmbGV4OiAwIDEgNTAlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGJhc2Utd2hpdGU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuXHQudGRmcy1kb21haW4tbmFtZSB7XG5cdFx0Zm9udC1zaXplOiAxLjlyZW07XG5cdFx0b3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgICAgICBAaW5jbHVkZSBtZWRpYShcIj49MGVtXCIsIFwiPHBoYWJsZXRcIikge1xuICAgICAgICAgICAgJi5zbWFsbCB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjRyZW07XG4gICAgICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIFxuICAgICAgICAgICAgJi5zbWFsbGVzdCB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjFyZW07XG4gICAgICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIFxuICAgICAgICAgICAgJi50aW55IHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXHR9XG5cdFxuXHRcblx0XHRcbiAgICAuY29udGFpbi1sb2dvLXRkZnMge1xuICAgICAgICBjb2xvcjogJGRhcmstZ3JheTtcbiAgICAgICAgbWFyZ2luLXRvcDogMS41ZW07XG4gICAgICAgIFxuICAgICAgICAuZm9vdC1sb2dvLXRkZnMge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBtYXgtaGVpZ2h0OiA3M3B4O1xuICAgICAgICAgICAgbWF4LXdpZHRoOiAyMDBweDtcbiAgICAgICAgfVxuICAgICAgICAgICAgLmxvZ28tYXJ3IHtcbiAgICAgICAgICAgICAgICBmaWxsOiAkb3JhbmdlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmxvZ28tbGV0dGVyIHtcbiAgICAgICAgICAgICAgICBmaWxsOiAkZGFyay1ncmF5O1xuICAgICAgICAgICAgfVxuICAgICAgICBAaW5jbHVkZSBtZWRpYShcIj49MGVtXCIsIFwiPHBoYWJsZXRcIikge1xuICAgICAgICAgICAgcGFkZGluZzogMCAyJTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAudHh0LWNvcHlyaWdodCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMC44MTNyZW07XG4gICAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgfSIsIkBjaGFyc2V0ICdVVEYtOCc7XG5cbi8vICAgICBfICAgICAgICAgICAgXyAgICAgICAgICAgXyAgICAgICAgICAgICAgICAgICAgICAgICAgIF8gX1xuLy8gICAgKF8pICAgICAgICAgIHwgfCAgICAgICAgIHwgfCAgICAgICAgICAgICAgICAgICAgICAgICB8IChfKVxuLy8gICAgIF8gXyBfXyAgIF9fX3wgfF8gICBfICBfX3wgfCBfX18gICBfIF9fIF9fXyAgIF9fXyAgX198IHxfICBfXyBfXG4vLyAgICB8IHwgJ18gXFwgLyBfX3wgfCB8IHwgfC8gX2AgfC8gXyBcXCB8ICdfIGAgXyBcXCAvIF8gXFwvIF9gIHwgfC8gX2AgfFxuLy8gICAgfCB8IHwgfCB8IChfX3wgfCB8X3wgfCAoX3wgfCAgX18vIHwgfCB8IHwgfCB8ICBfXy8gKF98IHwgfCAoX3wgfFxuLy8gICAgfF98X3wgfF98XFxfX198X3xcXF9fLF98XFxfXyxffFxcX19ffCB8X3wgfF98IHxffFxcX19ffFxcX18sX3xffFxcX18sX3xcbi8vXG4vLyAgICAgIFNpbXBsZSwgZWxlZ2FudCBhbmQgbWFpbnRhaW5hYmxlIG1lZGlhIHF1ZXJpZXMgaW4gU2Fzc1xuLy8gICAgICAgICAgICAgICAgICAgICAgICB2MS40LjJcbi8vXG4vLyAgICAgICAgICAgICAgICBodHRwOi8vaW5jbHVkZS1tZWRpYS5jb21cbi8vXG4vLyAgICAgICAgIEF1dGhvcnM6IEVkdWFyZG8gQm91Y2FzIChAZWR1YXJkb2JvdWNhcylcbi8vICAgICAgICAgICAgICAgICAgSHVnbyBHaXJhdWRlbCAoQGh1Z29naXJhdWRlbClcbi8vNjUyXG4vLyAgICAgIFRoaXMgcHJvamVjdCBpcyBsaWNlbnNlZCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIE1JVCBsaWNlbnNlXG5cblxuLy8vL1xuLy8vIGluY2x1ZGUtbWVkaWEgbGlicmFyeSBwdWJsaWMgY29uZmlndXJhdGlvblxuLy8vIEBhdXRob3IgRWR1YXJkbyBCb3VjYXNcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vL1xuXG5cbi8vL1xuLy8vIENyZWF0ZXMgYSBsaXN0IG9mIGdsb2JhbCBicmVha3BvaW50c1xuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIENyZWF0ZXMgYSBzaW5nbGUgYnJlYWtwb2ludCB3aXRoIHRoZSBsYWJlbCBgcGhvbmVgXG4vLy8gICRicmVha3BvaW50czogKCdwaG9uZSc6IDMyMHB4KTtcbi8vL1xuLy8vICdtb2JpbGUnIGlzIHBvcnRyYWl0IHdpZHRoXG4kYnJlYWtwb2ludHM6ICggXG4gICdtb2JpbGUtc20nOiAyMGVtLCAvLzMyMHB4XG4gICdtb2JpbGUtbWVkJzogMjMuNDM4ZW0sIC8vIDM5MHB4XG4gICdtb2JpbGUtbGcnOiAyNS44NzVlbSwgLy80MTRweFxuICAncGhhYmxldCc6IDM3LjVlbSwgLy82MDBweFxuICAndGFibGV0JzogNDhlbSwgLy83NjhweFxuICAnZGVza3RvcCc6IDY0ZW0sIC8vMTAyNFxuICAnZGVza3RvcC1sZyc6IDc1ZW0sIC8vMTIwMFxuKSAhZGVmYXVsdDtcblxuXG4vLy9cbi8vLyBDcmVhdGVzIGEgbGlzdCBvZiBzdGF0aWMgZXhwcmVzc2lvbnMgb3IgbWVkaWEgdHlwZXNcbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBDcmVhdGVzIGEgc2luZ2xlIG1lZGlhIHR5cGUgKHNjcmVlbilcbi8vLyAgJG1lZGlhLWV4cHJlc3Npb25zOiAoJ3NjcmVlbic6ICdzY3JlZW4nKTtcbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBDcmVhdGVzIGEgc3RhdGljIGV4cHJlc3Npb24gd2l0aCBsb2dpY2FsIGRpc2p1bmN0aW9uIChPUiBvcGVyYXRvcilcbi8vLyAgJG1lZGlhLWV4cHJlc3Npb25zOiAoXG4vLy8gICAgJ3JldGluYTJ4JzogJygtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDIpLCAobWluLXJlc29sdXRpb246IDE5MmRwaSknXG4vLy8gICk7XG4vLy9cbiRtZWRpYS1leHByZXNzaW9uczogKFxuICAnc2NyZWVuJzogJ3NjcmVlbicsXG4gICdwcmludCc6ICdwcmludCcsXG4gICdoYW5kaGVsZCc6ICdoYW5kaGVsZCcsXG4gICdsYW5kc2NhcGUnOiAnKG9yaWVudGF0aW9uOiBsYW5kc2NhcGUpJyxcbiAgJ3BvcnRyYWl0JzogJyhvcmllbnRhdGlvbjogcG9ydHJhaXQpJyxcbiAgJ3JldGluYTJ4JzogJygtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDIpLCAobWluLXJlc29sdXRpb246IDE5MmRwaSknLFxuICAncmV0aW5hM3gnOiAnKC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbzogMyksIChtaW4tcmVzb2x1dGlvbjogMzUwZHBpKSdcbikgIWRlZmF1bHQ7XG5cblxuLy8vXG4vLy8gRGVmaW5lcyBhIG51bWJlciB0byBiZSBhZGRlZCBvciBzdWJ0cmFjdGVkIGZyb20gZWFjaCB1bml0IHdoZW4gZGVjbGFyaW5nIGJyZWFrcG9pbnRzIHdpdGggZXhjbHVzaXZlIGludGVydmFsc1xuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIEludGVydmFsIGZvciBwaXhlbHMgaXMgZGVmaW5lZCBhcyBgMWAgYnkgZGVmYXVsdFxuLy8vICBAaW5jbHVkZSBtZWRpYSgnPjEyOHB4Jykge31cbi8vL1xuLy8vICAvKiBHZW5lcmF0ZXM6ICovXG4vLy8gIEBtZWRpYSAobWluLXdpZHRoOiAxMjlweCkge31cbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBJbnRlcnZhbCBmb3IgZW1zIGlzIGRlZmluZWQgYXMgYDAuMDFgIGJ5IGRlZmF1bHRcbi8vLyAgQGluY2x1ZGUgbWVkaWEoJz4yMGVtJykge31cbi8vL1xuLy8vICAvKiBHZW5lcmF0ZXM6ICovXG4vLy8gIEBtZWRpYSAobWluLXdpZHRoOiAyMC4wMWVtKSB7fVxuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIEludGVydmFsIGZvciByZW1zIGlzIGRlZmluZWQgYXMgYDAuMWAgYnkgZGVmYXVsdCwgdG8gYmUgdXNlZCB3aXRoIGBmb250LXNpemU6IDYyLjUlO2Bcbi8vLyAgQGluY2x1ZGUgbWVkaWEoJz4yLjByZW0nKSB7fVxuLy8vXG4vLy8gIC8qIEdlbmVyYXRlczogKi9cbi8vLyAgQG1lZGlhIChtaW4td2lkdGg6IDIuMXJlbSkge31cbi8vL1xuJHVuaXQtaW50ZXJ2YWxzOiAoXG4gICdweCc6IDEsXG4gICdlbSc6IDAuMDEsXG4gICdyZW0nOiAwLjFcbikgIWRlZmF1bHQ7XG5cbi8vL1xuLy8vIERlZmluZXMgd2hldGhlciBzdXBwb3J0IGZvciBtZWRpYSBxdWVyaWVzIGlzIGF2YWlsYWJsZSwgdXNlZnVsIGZvciBjcmVhdGluZyBzZXBhcmF0ZSBzdHlsZXNoZWV0c1xuLy8vIGZvciBicm93c2VycyB0aGF0IGRvbid0IHN1cHBvcnQgbWVkaWEgcXVlcmllcy5cbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBEaXNhYmxlcyBzdXBwb3J0IGZvciBtZWRpYSBxdWVyaWVzXG4vLy8gICRpbS1tZWRpYS1zdXBwb3J0OiBmYWxzZTtcbi8vLyAgQGluY2x1ZGUgbWVkaWEoJz49dGFibGV0Jykge1xuLy8vICAgIC5mb28ge1xuLy8vICAgICAgY29sb3I6IHRvbWF0bztcbi8vLyAgICB9XG4vLy8gIH1cbi8vL1xuLy8vICAvKiBHZW5lcmF0ZXM6ICovXG4vLy8gIC5mb28ge1xuLy8vICAgIGNvbG9yOiB0b21hdG87XG4vLy8gIH1cbi8vL1xuJGltLW1lZGlhLXN1cHBvcnQ6IHRydWUgIWRlZmF1bHQ7XG5cbi8vL1xuLy8vIFNlbGVjdHMgd2hpY2ggYnJlYWtwb2ludCB0byBlbXVsYXRlIHdoZW4gc3VwcG9ydCBmb3IgbWVkaWEgcXVlcmllcyBpcyBkaXNhYmxlZC4gTWVkaWEgcXVlcmllcyB0aGF0IHN0YXJ0IGF0IG9yXG4vLy8gaW50ZXJjZXB0IHRoZSBicmVha3BvaW50IHdpbGwgYmUgZGlzcGxheWVkLCBhbnkgb3RoZXJzIHdpbGwgYmUgaWdub3JlZC5cbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBUaGlzIG1lZGlhIHF1ZXJ5IHdpbGwgc2hvdyBiZWNhdXNlIGl0IGludGVyY2VwdHMgdGhlIHN0YXRpYyBicmVha3BvaW50XG4vLy8gICRpbS1tZWRpYS1zdXBwb3J0OiBmYWxzZTtcbi8vLyAgJGltLW5vLW1lZGlhLWJyZWFrcG9pbnQ6ICdkZXNrdG9wJztcbi8vLyAgQGluY2x1ZGUgbWVkaWEoJz49dGFibGV0Jykge1xuLy8vICAgIC5mb28ge1xuLy8vICAgICAgY29sb3I6IHRvbWF0bztcbi8vLyAgICB9XG4vLy8gIH1cbi8vL1xuLy8vICAvKiBHZW5lcmF0ZXM6ICovXG4vLy8gIC5mb28ge1xuLy8vICAgIGNvbG9yOiB0b21hdG87XG4vLy8gIH1cbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBUaGlzIG1lZGlhIHF1ZXJ5IHdpbGwgTk9UIHNob3cgYmVjYXVzZSBpdCBkb2VzIG5vdCBpbnRlcmNlcHQgdGhlIGRlc2t0b3AgYnJlYWtwb2ludFxuLy8vICAkaW0tbWVkaWEtc3VwcG9ydDogZmFsc2U7XG4vLy8gICRpbS1uby1tZWRpYS1icmVha3BvaW50OiAndGFibGV0Jztcbi8vLyAgQGluY2x1ZGUgbWVkaWEoJz49ZGVza3RvcCcpIHtcbi8vLyAgICAuZm9vIHtcbi8vLyAgICAgIGNvbG9yOiB0b21hdG87XG4vLy8gICAgfVxuLy8vICB9XG4vLy9cbi8vLyAgLyogTm8gb3V0cHV0ICovXG4vLy9cbiRpbS1uby1tZWRpYS1icmVha3BvaW50OiAnZGVza3RvcCcgIWRlZmF1bHQ7XG5cbi8vL1xuLy8vIFNlbGVjdHMgd2hpY2ggbWVkaWEgZXhwcmVzc2lvbnMgYXJlIGFsbG93ZWQgaW4gYW4gZXhwcmVzc2lvbiBmb3IgaXQgdG8gYmUgdXNlZCB3aGVuIG1lZGlhIHF1ZXJpZXNcbi8vLyBhcmUgbm90IHN1cHBvcnRlZC5cbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBUaGlzIG1lZGlhIHF1ZXJ5IHdpbGwgc2hvdyBiZWNhdXNlIGl0IGludGVyY2VwdHMgdGhlIHN0YXRpYyBicmVha3BvaW50IGFuZCBjb250YWlucyBvbmx5IGFjY2VwdGVkIG1lZGlhIGV4cHJlc3Npb25zXG4vLy8gICRpbS1tZWRpYS1zdXBwb3J0OiBmYWxzZTtcbi8vLyAgJGltLW5vLW1lZGlhLWJyZWFrcG9pbnQ6ICdkZXNrdG9wJztcbi8vLyAgJGltLW5vLW1lZGlhLWV4cHJlc3Npb25zOiAoJ3NjcmVlbicpO1xuLy8vICBAaW5jbHVkZSBtZWRpYSgnPj10YWJsZXQnLCAnc2NyZWVuJykge1xuLy8vICAgIC5mb28ge1xuLy8vICAgICAgY29sb3I6IHRvbWF0bztcbi8vLyAgICB9XG4vLy8gIH1cbi8vL1xuLy8vICAgLyogR2VuZXJhdGVzOiAqL1xuLy8vICAgLmZvbyB7XG4vLy8gICAgIGNvbG9yOiB0b21hdG87XG4vLy8gICB9XG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gVGhpcyBtZWRpYSBxdWVyeSB3aWxsIE5PVCBzaG93IGJlY2F1c2UgaXQgaW50ZXJjZXB0cyB0aGUgc3RhdGljIGJyZWFrcG9pbnQgYnV0IGNvbnRhaW5zIGEgbWVkaWEgZXhwcmVzc2lvbiB0aGF0IGlzIG5vdCBhY2NlcHRlZFxuLy8vICAkaW0tbWVkaWEtc3VwcG9ydDogZmFsc2U7XG4vLy8gICRpbS1uby1tZWRpYS1icmVha3BvaW50OiAnZGVza3RvcCc7XG4vLy8gICRpbS1uby1tZWRpYS1leHByZXNzaW9uczogKCdzY3JlZW4nKTtcbi8vLyAgQGluY2x1ZGUgbWVkaWEoJz49dGFibGV0JywgJ3JldGluYTJ4Jykge1xuLy8vICAgIC5mb28ge1xuLy8vICAgICAgY29sb3I6IHRvbWF0bztcbi8vLyAgICB9XG4vLy8gIH1cbi8vL1xuLy8vICAvKiBObyBvdXRwdXQgKi9cbi8vL1xuJGltLW5vLW1lZGlhLWV4cHJlc3Npb25zOiAoJ3NjcmVlbicsICdwb3J0cmFpdCcsICdsYW5kc2NhcGUnKSAhZGVmYXVsdDtcblxuLy8vL1xuLy8vIENyb3NzLWVuZ2luZSBsb2dnaW5nIGVuZ2luZVxuLy8vIEBhdXRob3IgSHVnbyBHaXJhdWRlbFxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vL1xuXG5cbi8vL1xuLy8vIExvZyBhIG1lc3NhZ2UgZWl0aGVyIHdpdGggYEBlcnJvcmAgaWYgc3VwcG9ydGVkXG4vLy8gZWxzZSB3aXRoIGBAd2FybmAsIHVzaW5nIGBmZWF0dXJlLWV4aXN0cygnYXQtZXJyb3InKWBcbi8vLyB0byBkZXRlY3Qgc3VwcG9ydC5cbi8vL1xuLy8vIEBwYXJhbSB7U3RyaW5nfSAkbWVzc2FnZSAtIE1lc3NhZ2UgdG8gbG9nXG4vLy9cbkBmdW5jdGlvbiBsb2coJG1lc3NhZ2UpIHtcbiAgQGlmIGZlYXR1cmUtZXhpc3RzKCdhdC1lcnJvcicpIHtcbiAgICBAZXJyb3IgJG1lc3NhZ2U7XG4gIH0gQGVsc2Uge1xuICAgIEB3YXJuICRtZXNzYWdlO1xuICAgICRfOiBub29wKCk7XG4gIH1cblxuICBAcmV0dXJuICRtZXNzYWdlO1xufVxuXG5cbi8vL1xuLy8vIFdyYXBwZXIgbWl4aW4gZm9yIHRoZSBsb2cgZnVuY3Rpb24gc28gaXQgY2FuIGJlIHVzZWQgd2l0aCBhIG1vcmUgZnJpZW5kbHlcbi8vLyBBUEkgdGhhbiBgQGlmIGxvZygnLi4nKSB7fWAgb3IgYCRfOiBsb2coJy4uJylgLiBCYXNpY2FsbHksIHVzZSB0aGUgZnVuY3Rpb25cbi8vLyB3aXRoaW4gZnVuY3Rpb25zIGJlY2F1c2UgaXQgaXMgbm90IHBvc3NpYmxlIHRvIGluY2x1ZGUgYSBtaXhpbiBpbiBhIGZ1bmN0aW9uXG4vLy8gYW5kIHVzZSB0aGUgbWl4aW4gZXZlcnl3aGVyZSBlbHNlIGJlY2F1c2UgaXQncyBtdWNoIG1vcmUgZWxlZ2FudC5cbi8vL1xuLy8vIEBwYXJhbSB7U3RyaW5nfSAkbWVzc2FnZSAtIE1lc3NhZ2UgdG8gbG9nXG4vLy9cbkBtaXhpbiBsb2coJG1lc3NhZ2UpIHtcbiAgQGlmIGxvZygkbWVzc2FnZSkge31cbn1cblxuXG4vLy9cbi8vLyBGdW5jdGlvbiB3aXRoIG5vIGBAcmV0dXJuYCBjYWxsZWQgbmV4dCB0byBgQHdhcm5gIGluIFNhc3MgMy4zXG4vLy8gdG8gdHJpZ2dlciBhIGNvbXBpbGluZyBlcnJvciBhbmQgc3RvcCB0aGUgcHJvY2Vzcy5cbi8vL1xuQGZ1bmN0aW9uIG5vb3AoKSB7fVxuXG4vLy9cbi8vLyBEZXRlcm1pbmVzIHdoZXRoZXIgYSBsaXN0IG9mIGNvbmRpdGlvbnMgaXMgaW50ZXJjZXB0ZWQgYnkgdGhlIHN0YXRpYyBicmVha3BvaW50LlxuLy8vXG4vLy8gQHBhcmFtIHtBcmdsaXN0fSAgICRjb25kaXRpb25zICAtIE1lZGlhIHF1ZXJ5IGNvbmRpdGlvbnNcbi8vL1xuLy8vIEByZXR1cm4ge0Jvb2xlYW59IC0gUmV0dXJucyB0cnVlIGlmIHRoZSBjb25kaXRpb25zIGFyZSBpbnRlcmNlcHRlZCBieSB0aGUgc3RhdGljIGJyZWFrcG9pbnRcbi8vL1xuQGZ1bmN0aW9uIGltLWludGVyY2VwdHMtc3RhdGljLWJyZWFrcG9pbnQoJGNvbmRpdGlvbnMuLi4pIHtcbiAgJG5vLW1lZGlhLWJyZWFrcG9pbnQtdmFsdWU6IG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAkaW0tbm8tbWVkaWEtYnJlYWtwb2ludCk7XG5cbiAgQGlmIG5vdCAkbm8tbWVkaWEtYnJlYWtwb2ludC12YWx1ZSB7XG4gICAgQGlmIGxvZygnYCN7JGltLW5vLW1lZGlhLWJyZWFrcG9pbnR9YCBpcyBub3QgYSB2YWxpZCBicmVha3BvaW50LicpIHt9XG4gIH1cblxuICBAZWFjaCAkY29uZGl0aW9uIGluICRjb25kaXRpb25zIHtcbiAgICBAaWYgbm90IG1hcC1oYXMta2V5KCRtZWRpYS1leHByZXNzaW9ucywgJGNvbmRpdGlvbikge1xuICAgICAgJG9wZXJhdG9yOiBnZXQtZXhwcmVzc2lvbi1vcGVyYXRvcigkY29uZGl0aW9uKTtcbiAgICAgICRwcmVmaXg6IGdldC1leHByZXNzaW9uLXByZWZpeCgkb3BlcmF0b3IpO1xuICAgICAgJHZhbHVlOiBnZXQtZXhwcmVzc2lvbi12YWx1ZSgkY29uZGl0aW9uLCAkb3BlcmF0b3IpO1xuXG4gICAgICAvLyBzY3NzLWxpbnQ6ZGlzYWJsZSBTcGFjZUFyb3VuZE9wZXJhdG9yXG4gICAgICBAaWYgKCRwcmVmaXggPT0gJ21heCcgYW5kICR2YWx1ZSA8PSAkbm8tbWVkaWEtYnJlYWtwb2ludC12YWx1ZSkgb3JcbiAgICAgICAgICAoJHByZWZpeCA9PSAnbWluJyBhbmQgJHZhbHVlID4gJG5vLW1lZGlhLWJyZWFrcG9pbnQtdmFsdWUpIHtcbiAgICAgICAgQHJldHVybiBmYWxzZTtcbiAgICAgIH1cbiAgICB9IEBlbHNlIGlmIG5vdCBpbmRleCgkaW0tbm8tbWVkaWEtZXhwcmVzc2lvbnMsICRjb25kaXRpb24pIHtcbiAgICAgIEByZXR1cm4gZmFsc2U7XG4gICAgfVxuICB9XG5cbiAgQHJldHVybiB0cnVlO1xufVxuXG4vLy8vXG4vLy8gUGFyc2luZyBlbmdpbmVcbi8vLyBAYXV0aG9yIEh1Z28gR2lyYXVkZWxcbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vLy9cblxuXG4vLy9cbi8vLyBHZXQgb3BlcmF0b3Igb2YgYW4gZXhwcmVzc2lvblxuLy8vXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRleHByZXNzaW9uIC0gRXhwcmVzc2lvbiB0byBleHRyYWN0IG9wZXJhdG9yIGZyb21cbi8vL1xuLy8vIEByZXR1cm4ge1N0cmluZ30gLSBBbnkgb2YgYD49YCwgYD5gLCBgPD1gLCBgPGAsIGDiiaVgLCBg4omkYFxuLy8vXG5AZnVuY3Rpb24gZ2V0LWV4cHJlc3Npb24tb3BlcmF0b3IoJGV4cHJlc3Npb24pIHtcbiAgQGVhY2ggJG9wZXJhdG9yIGluICgnPj0nLCAnPicsICc8PScsICc8JywgJ+KJpScsICfiiaQnKSB7XG4gICAgQGlmIHN0ci1pbmRleCgkZXhwcmVzc2lvbiwgJG9wZXJhdG9yKSB7XG4gICAgICBAcmV0dXJuICRvcGVyYXRvcjtcbiAgICB9XG4gIH1cblxuICAvLyBJdCBpcyBub3QgcG9zc2libGUgdG8gaW5jbHVkZSBhIG1peGluIGluc2lkZSBhIGZ1bmN0aW9uLCBzbyB3ZSBoYXZlIHRvXG4gIC8vIHJlbHkgb24gdGhlIGBsb2coLi4pYCBmdW5jdGlvbiByYXRoZXIgdGhhbiB0aGUgYGxvZyguLilgIG1peGluLiBCZWNhdXNlXG4gIC8vIGZ1bmN0aW9ucyBjYW5ub3QgYmUgY2FsbGVkIGFueXdoZXJlIGluIFNhc3MsIHdlIG5lZWQgdG8gaGFjayB0aGUgY2FsbCBpblxuICAvLyBhIGR1bW15IHZhcmlhYmxlLCBzdWNoIGFzIGAkX2AuIElmIGFueWJvZHkgZXZlciByYWlzZSBhIHNjb3BpbmcgaXNzdWUgd2l0aFxuICAvLyBTYXNzIDMuMywgY2hhbmdlIHRoaXMgbGluZSBpbiBgQGlmIGxvZyguLikge31gIGluc3RlYWQuXG4gICRfOiBsb2coJ05vIG9wZXJhdG9yIGZvdW5kIGluIGAjeyRleHByZXNzaW9ufWAuJyk7XG59XG5cblxuLy8vXG4vLy8gR2V0IGRpbWVuc2lvbiBvZiBhbiBleHByZXNzaW9uLCBiYXNlZCBvbiBhIGZvdW5kIG9wZXJhdG9yXG4vLy9cbi8vLyBAcGFyYW0ge1N0cmluZ30gJGV4cHJlc3Npb24gLSBFeHByZXNzaW9uIHRvIGV4dHJhY3QgZGltZW5zaW9uIGZyb21cbi8vLyBAcGFyYW0ge1N0cmluZ30gJG9wZXJhdG9yIC0gT3BlcmF0b3IgZnJvbSBgJGV4cHJlc3Npb25gXG4vLy9cbi8vLyBAcmV0dXJuIHtTdHJpbmd9IC0gYHdpZHRoYCBvciBgaGVpZ2h0YCAob3IgcG90ZW50aWFsbHkgYW55dGhpbmcgZWxzZSlcbi8vL1xuQGZ1bmN0aW9uIGdldC1leHByZXNzaW9uLWRpbWVuc2lvbigkZXhwcmVzc2lvbiwgJG9wZXJhdG9yKSB7XG4gICRvcGVyYXRvci1pbmRleDogc3RyLWluZGV4KCRleHByZXNzaW9uLCAkb3BlcmF0b3IpO1xuICAkcGFyc2VkLWRpbWVuc2lvbjogc3RyLXNsaWNlKCRleHByZXNzaW9uLCAwLCAkb3BlcmF0b3ItaW5kZXggLSAxKTtcbiAgJGRpbWVuc2lvbjogJ3dpZHRoJztcblxuICBAaWYgc3RyLWxlbmd0aCgkcGFyc2VkLWRpbWVuc2lvbikgPiAwIHtcbiAgICAkZGltZW5zaW9uOiAkcGFyc2VkLWRpbWVuc2lvbjtcbiAgfVxuXG4gIEByZXR1cm4gJGRpbWVuc2lvbjtcbn1cblxuXG4vLy9cbi8vLyBHZXQgZGltZW5zaW9uIHByZWZpeCBiYXNlZCBvbiBhbiBvcGVyYXRvclxuLy8vXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRvcGVyYXRvciAtIE9wZXJhdG9yXG4vLy9cbi8vLyBAcmV0dXJuIHtTdHJpbmd9IC0gYG1pbmAgb3IgYG1heGBcbi8vL1xuQGZ1bmN0aW9uIGdldC1leHByZXNzaW9uLXByZWZpeCgkb3BlcmF0b3IpIHtcbiAgQHJldHVybiBpZihpbmRleCgoJzwnLCAnPD0nLCAn4omkJyksICRvcGVyYXRvciksICdtYXgnLCAnbWluJyk7XG59XG5cblxuLy8vXG4vLy8gR2V0IHZhbHVlIG9mIGFuIGV4cHJlc3Npb24sIGJhc2VkIG9uIGEgZm91bmQgb3BlcmF0b3Jcbi8vL1xuLy8vIEBwYXJhbSB7U3RyaW5nfSAkZXhwcmVzc2lvbiAtIEV4cHJlc3Npb24gdG8gZXh0cmFjdCB2YWx1ZSBmcm9tXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRvcGVyYXRvciAtIE9wZXJhdG9yIGZyb20gYCRleHByZXNzaW9uYFxuLy8vXG4vLy8gQHJldHVybiB7TnVtYmVyfSAtIEEgbnVtZXJpYyB2YWx1ZVxuLy8vXG5AZnVuY3Rpb24gZ2V0LWV4cHJlc3Npb24tdmFsdWUoJGV4cHJlc3Npb24sICRvcGVyYXRvcikge1xuICAkb3BlcmF0b3ItaW5kZXg6IHN0ci1pbmRleCgkZXhwcmVzc2lvbiwgJG9wZXJhdG9yKTtcbiAgJHZhbHVlOiBzdHItc2xpY2UoJGV4cHJlc3Npb24sICRvcGVyYXRvci1pbmRleCArIHN0ci1sZW5ndGgoJG9wZXJhdG9yKSk7XG5cbiAgQGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgJHZhbHVlKSB7XG4gICAgJHZhbHVlOiBtYXAtZ2V0KCRicmVha3BvaW50cywgJHZhbHVlKTtcbiAgfSBAZWxzZSB7XG4gICAgJHZhbHVlOiB0by1udW1iZXIoJHZhbHVlKTtcbiAgfVxuXG4gICRpbnRlcnZhbDogbWFwLWdldCgkdW5pdC1pbnRlcnZhbHMsIHVuaXQoJHZhbHVlKSk7XG5cbiAgQGlmIG5vdCAkaW50ZXJ2YWwge1xuICAgIC8vIEl0IGlzIG5vdCBwb3NzaWJsZSB0byBpbmNsdWRlIGEgbWl4aW4gaW5zaWRlIGEgZnVuY3Rpb24sIHNvIHdlIGhhdmUgdG9cbiAgICAvLyByZWx5IG9uIHRoZSBgbG9nKC4uKWAgZnVuY3Rpb24gcmF0aGVyIHRoYW4gdGhlIGBsb2coLi4pYCBtaXhpbi4gQmVjYXVzZVxuICAgIC8vIGZ1bmN0aW9ucyBjYW5ub3QgYmUgY2FsbGVkIGFueXdoZXJlIGluIFNhc3MsIHdlIG5lZWQgdG8gaGFjayB0aGUgY2FsbCBpblxuICAgIC8vIGEgZHVtbXkgdmFyaWFibGUsIHN1Y2ggYXMgYCRfYC4gSWYgYW55Ym9keSBldmVyIHJhaXNlIGEgc2NvcGluZyBpc3N1ZSB3aXRoXG4gICAgLy8gU2FzcyAzLjMsIGNoYW5nZSB0aGlzIGxpbmUgaW4gYEBpZiBsb2coLi4pIHt9YCBpbnN0ZWFkLlxuICAgICRfOiBsb2coJ1Vua25vd24gdW5pdCBgI3t1bml0KCR2YWx1ZSl9YC4nKTtcbiAgfVxuXG4gIEBpZiAkb3BlcmF0b3IgPT0gJz4nIHtcbiAgICAkdmFsdWU6ICR2YWx1ZSArICRpbnRlcnZhbDtcbiAgfSBAZWxzZSBpZiAkb3BlcmF0b3IgPT0gJzwnIHtcbiAgICAkdmFsdWU6ICR2YWx1ZSAtICRpbnRlcnZhbDtcbiAgfVxuXG4gIEByZXR1cm4gJHZhbHVlO1xufVxuXG5cbi8vL1xuLy8vIFBhcnNlIGFuIGV4cHJlc3Npb24gdG8gcmV0dXJuIGEgdmFsaWQgbWVkaWEtcXVlcnkgZXhwcmVzc2lvblxuLy8vXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRleHByZXNzaW9uIC0gRXhwcmVzc2lvbiB0byBwYXJzZVxuLy8vXG4vLy8gQHJldHVybiB7U3RyaW5nfSAtIFZhbGlkIG1lZGlhIHF1ZXJ5XG4vLy9cbkBmdW5jdGlvbiBwYXJzZS1leHByZXNzaW9uKCRleHByZXNzaW9uKSB7XG4gIC8vIElmIGl0IGlzIHBhcnQgb2YgJG1lZGlhLWV4cHJlc3Npb25zLCBpdCBoYXMgbm8gb3BlcmF0b3JcbiAgLy8gdGhlbiB0aGVyZSBpcyBubyBuZWVkIHRvIGdvIGFueSBmdXJ0aGVyLCBqdXN0IHJldHVybiB0aGUgdmFsdWVcbiAgQGlmIG1hcC1oYXMta2V5KCRtZWRpYS1leHByZXNzaW9ucywgJGV4cHJlc3Npb24pIHtcbiAgICBAcmV0dXJuIG1hcC1nZXQoJG1lZGlhLWV4cHJlc3Npb25zLCAkZXhwcmVzc2lvbik7XG4gIH1cblxuICAkb3BlcmF0b3I6IGdldC1leHByZXNzaW9uLW9wZXJhdG9yKCRleHByZXNzaW9uKTtcbiAgJGRpbWVuc2lvbjogZ2V0LWV4cHJlc3Npb24tZGltZW5zaW9uKCRleHByZXNzaW9uLCAkb3BlcmF0b3IpO1xuICAkcHJlZml4OiBnZXQtZXhwcmVzc2lvbi1wcmVmaXgoJG9wZXJhdG9yKTtcbiAgJHZhbHVlOiBnZXQtZXhwcmVzc2lvbi12YWx1ZSgkZXhwcmVzc2lvbiwgJG9wZXJhdG9yKTtcblxuICBAcmV0dXJuICcoI3skcHJlZml4fS0jeyRkaW1lbnNpb259OiAjeyR2YWx1ZX0pJztcbn1cblxuLy8vXG4vLy8gU2xpY2UgYCRsaXN0YCBiZXR3ZWVuIGAkc3RhcnRgIGFuZCBgJGVuZGAgaW5kZXhlc1xuLy8vXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy9cbi8vLyBAcGFyYW0ge0xpc3R9ICRsaXN0IC0gTGlzdCB0byBzbGljZVxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkc3RhcnQgWzFdIC0gU3RhcnQgaW5kZXhcbi8vLyBAcGFyYW0ge051bWJlcn0gJGVuZCBbbGVuZ3RoKCRsaXN0KV0gLSBFbmQgaW5kZXhcbi8vL1xuLy8vIEByZXR1cm4ge0xpc3R9IFNsaWNlZCBsaXN0XG4vLy9cbkBmdW5jdGlvbiBzbGljZSgkbGlzdCwgJHN0YXJ0OiAxLCAkZW5kOiBsZW5ndGgoJGxpc3QpKSB7XG4gIEBpZiBsZW5ndGgoJGxpc3QpIDwgMSBvciAkc3RhcnQgPiAkZW5kIHtcbiAgICBAcmV0dXJuICgpO1xuICB9XG5cbiAgJHJlc3VsdDogKCk7XG5cbiAgQGZvciAkaSBmcm9tICRzdGFydCB0aHJvdWdoICRlbmQge1xuICAgICRyZXN1bHQ6IGFwcGVuZCgkcmVzdWx0LCBudGgoJGxpc3QsICRpKSk7XG4gIH1cblxuICBAcmV0dXJuICRyZXN1bHQ7XG59XG5cbi8vLy9cbi8vLyBTdHJpbmcgdG8gbnVtYmVyIGNvbnZlcnRlclxuLy8vIEBhdXRob3IgSHVnbyBHaXJhdWRlbFxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vL1xuXG5cbi8vL1xuLy8vIENhc3RzIGEgc3RyaW5nIGludG8gYSBudW1iZXJcbi8vL1xuLy8vIEBwYXJhbSB7U3RyaW5nIHwgTnVtYmVyfSAkdmFsdWUgLSBWYWx1ZSB0byBiZSBwYXJzZWRcbi8vL1xuLy8vIEByZXR1cm4ge051bWJlcn1cbi8vL1xuQGZ1bmN0aW9uIHRvLW51bWJlcigkdmFsdWUpIHtcbiAgQGlmIHR5cGUtb2YoJHZhbHVlKSA9PSAnbnVtYmVyJyB7XG4gICAgQHJldHVybiAkdmFsdWU7XG4gIH0gQGVsc2UgaWYgdHlwZS1vZigkdmFsdWUpICE9ICdzdHJpbmcnIHtcbiAgICAkXzogbG9nKCdWYWx1ZSBmb3IgYHRvLW51bWJlcmAgc2hvdWxkIGJlIGEgbnVtYmVyIG9yIGEgc3RyaW5nLicpO1xuICB9XG5cbiAgJHJlc3VsdDogMDtcbiAgJGRpZ2l0czogMDtcbiAgJG1pbnVzOiBzdHItc2xpY2UoJHZhbHVlLCAxLCAxKSA9PSAnLSc7XG4gICRudW1iZXJzOiAoJzAnOiAwLCAnMSc6IDEsICcyJzogMiwgJzMnOiAzLCAnNCc6IDQsICc1JzogNSwgJzYnOiA2LCAnNyc6IDcsICc4JzogOCwgJzknOiA5KTtcblxuICBAZm9yICRpIGZyb20gaWYoJG1pbnVzLCAyLCAxKSB0aHJvdWdoIHN0ci1sZW5ndGgoJHZhbHVlKSB7XG4gICAgJGNoYXJhY3Rlcjogc3RyLXNsaWNlKCR2YWx1ZSwgJGksICRpKTtcblxuICAgIEBpZiBub3QgKGluZGV4KG1hcC1rZXlzKCRudW1iZXJzKSwgJGNoYXJhY3Rlcikgb3IgJGNoYXJhY3RlciA9PSAnLicpIHtcbiAgICAgIEByZXR1cm4gdG8tbGVuZ3RoKGlmKCRtaW51cywgLSRyZXN1bHQsICRyZXN1bHQpLCBzdHItc2xpY2UoJHZhbHVlLCAkaSkpXG4gICAgfVxuXG4gICAgQGlmICRjaGFyYWN0ZXIgPT0gJy4nIHtcbiAgICAgICRkaWdpdHM6IDE7XG4gICAgfSBAZWxzZSBpZiAkZGlnaXRzID09IDAge1xuICAgICAgJHJlc3VsdDogJHJlc3VsdCAqIDEwICsgbWFwLWdldCgkbnVtYmVycywgJGNoYXJhY3Rlcik7XG4gICAgfSBAZWxzZSB7XG4gICAgICAkZGlnaXRzOiAkZGlnaXRzICogMTA7XG4gICAgICAkcmVzdWx0OiAkcmVzdWx0ICsgbWFwLWdldCgkbnVtYmVycywgJGNoYXJhY3RlcikgLyAkZGlnaXRzO1xuICAgIH1cbiAgfVxuXG4gIEByZXR1cm4gaWYoJG1pbnVzLCAtJHJlc3VsdCwgJHJlc3VsdCk7O1xufVxuXG5cbi8vL1xuLy8vIEFkZCBgJHVuaXRgIHRvIGAkdmFsdWVgXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJHZhbHVlIC0gVmFsdWUgdG8gYWRkIHVuaXQgdG9cbi8vLyBAcGFyYW0ge1N0cmluZ30gJHVuaXQgLSBTdHJpbmcgcmVwcmVzZW50YXRpb24gb2YgdGhlIHVuaXRcbi8vL1xuLy8vIEByZXR1cm4ge051bWJlcn0gLSBgJHZhbHVlYCBleHByZXNzZWQgaW4gYCR1bml0YFxuLy8vXG5AZnVuY3Rpb24gdG8tbGVuZ3RoKCR2YWx1ZSwgJHVuaXQpIHtcbiAgJHVuaXRzOiAoJ3B4JzogMXB4LCAnY20nOiAxY20sICdtbSc6IDFtbSwgJyUnOiAxJSwgJ2NoJzogMWNoLCAncGMnOiAxcGMsICdpbic6IDFpbiwgJ2VtJzogMWVtLCAncmVtJzogMXJlbSwgJ3B0JzogMXB0LCAnZXgnOiAxZXgsICd2dyc6IDF2dywgJ3ZoJzogMXZoLCAndm1pbic6IDF2bWluLCAndm1heCc6IDF2bWF4KTtcblxuICBAaWYgbm90IGluZGV4KG1hcC1rZXlzKCR1bml0cyksICR1bml0KSB7XG4gICAgJF86IGxvZygnSW52YWxpZCB1bml0IGAjeyR1bml0fWAuJyk7XG4gIH1cblxuICBAcmV0dXJuICR2YWx1ZSAqIG1hcC1nZXQoJHVuaXRzLCAkdW5pdCk7XG59XG5cbi8vL1xuLy8vIFRoaXMgbWl4aW4gYWltcyBhdCByZWRlZmluaW5nIHRoZSBjb25maWd1cmF0aW9uIGp1c3QgZm9yIHRoZSBzY29wZSBvZlxuLy8vIHRoZSBjYWxsLiBJdCBpcyBoZWxwZnVsIHdoZW4gaGF2aW5nIGEgY29tcG9uZW50IG5lZWRpbmcgYW4gZXh0ZW5kZWRcbi8vLyBjb25maWd1cmF0aW9uIHN1Y2ggYXMgY3VzdG9tIGJyZWFrcG9pbnRzIChyZWZlcnJlZCB0byBhcyB0d2Vha3BvaW50cylcbi8vLyBmb3IgaW5zdGFuY2UuXG4vLy9cbi8vLyBAYXV0aG9yIEh1Z28gR2lyYXVkZWxcbi8vL1xuLy8vIEBwYXJhbSB7TWFwfSAkdHdlYWtwb2ludHMgWygpXSAtIE1hcCBvZiB0d2Vha3BvaW50cyB0byBiZSBtZXJnZWQgd2l0aCBgJGJyZWFrcG9pbnRzYFxuLy8vIEBwYXJhbSB7TWFwfSAkdHdlYWstbWVkaWEtZXhwcmVzc2lvbnMgWygpXSAtIE1hcCBvZiB0d2Vha2VkIG1lZGlhIGV4cHJlc3Npb25zIHRvIGJlIG1lcmdlZCB3aXRoIGAkbWVkaWEtZXhwcmVzc2lvbmBcbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBFeHRlbmQgdGhlIGdsb2JhbCBicmVha3BvaW50cyB3aXRoIGEgdHdlYWtwb2ludFxuLy8vICBAaW5jbHVkZSBtZWRpYS1jb250ZXh0KCgnY3VzdG9tJzogNjc4cHgpKSB7XG4vLy8gICAgLmZvbyB7XG4vLy8gICAgICBAaW5jbHVkZSBtZWRpYSgnPnBob25lJywgJzw9Y3VzdG9tJykge1xuLy8vICAgICAgIC8vIC4uLlxuLy8vICAgICAgfVxuLy8vICAgIH1cbi8vLyAgfVxuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIEV4dGVuZCB0aGUgZ2xvYmFsIG1lZGlhIGV4cHJlc3Npb25zIHdpdGggYSBjdXN0b20gb25lXG4vLy8gIEBpbmNsdWRlIG1lZGlhLWNvbnRleHQoJHR3ZWFrLW1lZGlhLWV4cHJlc3Npb25zOiAoJ2FsbCc6ICdhbGwnKSkge1xuLy8vICAgIC5mb28ge1xuLy8vICAgICAgQGluY2x1ZGUgbWVkaWEoJ2FsbCcsICc+cGhvbmUnKSB7XG4vLy8gICAgICAgLy8gLi4uXG4vLy8gICAgICB9XG4vLy8gICAgfVxuLy8vICB9XG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gRXh0ZW5kIGJvdGggY29uZmlndXJhdGlvbiBtYXBzXG4vLy8gIEBpbmNsdWRlIG1lZGlhLWNvbnRleHQoKCdjdXN0b20nOiA2NzhweCksICgnYWxsJzogJ2FsbCcpKSB7XG4vLy8gICAgLmZvbyB7XG4vLy8gICAgICBAaW5jbHVkZSBtZWRpYSgnYWxsJywgJz5waG9uZScsICc8PWN1c3RvbScpIHtcbi8vLyAgICAgICAvLyAuLi5cbi8vLyAgICAgIH1cbi8vLyAgICB9XG4vLy8gIH1cbi8vL1xuQG1peGluIG1lZGlhLWNvbnRleHQoJHR3ZWFrcG9pbnRzOiAoKSwgJHR3ZWFrLW1lZGlhLWV4cHJlc3Npb25zOiAoKSkge1xuICAvLyBTYXZlIGdsb2JhbCBjb25maWd1cmF0aW9uXG4gICRnbG9iYWwtYnJlYWtwb2ludHM6ICRicmVha3BvaW50cztcbiAgJGdsb2JhbC1tZWRpYS1leHByZXNzaW9uczogJG1lZGlhLWV4cHJlc3Npb25zO1xuXG4gIC8vIFVwZGF0ZSBnbG9iYWwgY29uZmlndXJhdGlvblxuICAkYnJlYWtwb2ludHM6IG1hcC1tZXJnZSgkYnJlYWtwb2ludHMsICR0d2Vha3BvaW50cykgIWdsb2JhbDtcbiAgJG1lZGlhLWV4cHJlc3Npb25zOiBtYXAtbWVyZ2UoJG1lZGlhLWV4cHJlc3Npb25zLCAkdHdlYWstbWVkaWEtZXhwcmVzc2lvbnMpICFnbG9iYWw7XG5cbiAgQGNvbnRlbnQ7XG5cbiAgLy8gUmVzdG9yZSBnbG9iYWwgY29uZmlndXJhdGlvblxuICAkYnJlYWtwb2ludHM6ICRnbG9iYWwtYnJlYWtwb2ludHMgIWdsb2JhbDtcbiAgJG1lZGlhLWV4cHJlc3Npb25zOiAkZ2xvYmFsLW1lZGlhLWV4cHJlc3Npb25zICFnbG9iYWw7XG59XG5cbi8vLy9cbi8vLyBpbmNsdWRlLW1lZGlhIHB1YmxpYyBleHBvc2VkIEFQSVxuLy8vIEBhdXRob3IgRWR1YXJkbyBCb3VjYXNcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vL1xuXG5cbi8vL1xuLy8vIEdlbmVyYXRlcyBhIG1lZGlhIHF1ZXJ5IGJhc2VkIG9uIGEgbGlzdCBvZiBjb25kaXRpb25zXG4vLy9cbi8vLyBAcGFyYW0ge0FyZ2xpc3R9ICAgJGNvbmRpdGlvbnMgIC0gTWVkaWEgcXVlcnkgY29uZGl0aW9uc1xuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIFdpdGggYSBzaW5nbGUgc2V0IGJyZWFrcG9pbnRcbi8vLyAgQGluY2x1ZGUgbWVkaWEoJz5waG9uZScpIHsgfVxuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIFdpdGggdHdvIHNldCBicmVha3BvaW50c1xuLy8vICBAaW5jbHVkZSBtZWRpYSgnPnBob25lJywgJzw9dGFibGV0JykgeyB9XG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gV2l0aCBjdXN0b20gdmFsdWVzXG4vLy8gIEBpbmNsdWRlIG1lZGlhKCc+PTM1OHB4JywgJzw4NTBweCcpIHsgfVxuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIFdpdGggc2V0IGJyZWFrcG9pbnRzIHdpdGggY3VzdG9tIHZhbHVlc1xuLy8vICBAaW5jbHVkZSBtZWRpYSgnPmRlc2t0b3AnLCAnPD0xMzUwcHgnKSB7IH1cbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBXaXRoIGEgc3RhdGljIGV4cHJlc3Npb25cbi8vLyAgQGluY2x1ZGUgbWVkaWEoJ3JldGluYTJ4JykgeyB9XG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gTWl4aW5nIGV2ZXJ5dGhpbmdcbi8vLyAgQGluY2x1ZGUgbWVkaWEoJz49MzUwcHgnLCAnPHRhYmxldCcsICdyZXRpbmEzeCcpIHsgfVxuLy8vXG5AbWl4aW4gbWVkaWEoJGNvbmRpdGlvbnMuLi4pIHtcbiAgLy8gc2Nzcy1saW50OmRpc2FibGUgU3BhY2VBcm91bmRPcGVyYXRvclxuICBAaWYgKCRpbS1tZWRpYS1zdXBwb3J0IGFuZCBsZW5ndGgoJGNvbmRpdGlvbnMpID09IDApIG9yXG4gICAgICAobm90ICRpbS1tZWRpYS1zdXBwb3J0IGFuZCBpbS1pbnRlcmNlcHRzLXN0YXRpYy1icmVha3BvaW50KCRjb25kaXRpb25zLi4uKSkge1xuICAgIEBjb250ZW50O1xuICB9IEBlbHNlIGlmICgkaW0tbWVkaWEtc3VwcG9ydCBhbmQgbGVuZ3RoKCRjb25kaXRpb25zKSA+IDApIHtcbiAgICBAbWVkaWEgI3t1bnF1b3RlKHBhcnNlLWV4cHJlc3Npb24obnRoKCRjb25kaXRpb25zLCAxKSkpfSB7XG4gICAgICAvLyBSZWN1cnNpdmUgY2FsbFxuICAgICAgQGluY2x1ZGUgbWVkaWEoc2xpY2UoJGNvbmRpdGlvbnMsIDIpLi4uKSB7XG4gICAgICAgIEBjb250ZW50O1xuICAgICAgfVxuICAgIH1cbiAgfVxufSIsIi8vIFJlc2V0IGJveC1zaXppbmdcbmh0bWwgeyBib3gtc2l6aW5nOiBib3JkZXItYm94OyB9XG4qLCAqOjphZnRlciwgKjo6YmVmb3JlIHsgYm94LXNpemluZzogaW5oZXJpdDsgfVxuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gTm9ybWFsaXplLnNjc3MgYmFzZWQgb24gTmljb2xhcyBHYWxsYWdoZXIgYW5kIEpvbmF0aGFuIE5lYWwnc1xuLy8gbm9ybWFsaXplLmNzcyB2Mi4xLjMgfCBNSVQgTGljZW5zZSB8IGdpdC5pby9ub3JtYWxpemVcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBOb3JtYWxpemUuc2NzcyBzZXR0aW5nc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuXG4vLyBTZXQgdG8gdHJ1ZSBpZiB5b3Ugd2FudCB0byBhZGQgc3VwcG9ydCBmb3IgSUU2IGFuZCBJRTdcbi8vIE5vdGljZTogc2V0dGluZyB0byB0cnVlIG1pZ2h0IHJlbmRlciBzb21lIGVsZW1lbnRzXG4vLyBzbGlnaHRseSBkaWZmZXJlbnRseSB0aGFuIHdoZW4gc2V0IHRvIGZhbHNlXG4kbGVnYWN5X3N1cHBvcnRfZm9yX2llOiBmYWxzZSAhZGVmYXVsdDsgLy8gVXNlZCBhbHNvIGluIENvbXBhc3NcblxuXG4vLyBTZXQgdGhlIGRlZmF1bHQgZm9udCBmYW1pbHkgaGVyZSBzbyB5b3UgZG9uJ3QgaGF2ZSB0byBvdmVycmlkZSBpdCBsYXRlclxuJG5vcm1hbGl6ZWRfZm9udF9mYW1pbHk6IHNhbnMtc2VyaWYgIWRlZmF1bHQ7XG5cbiRub3JtYWxpemVfaGVhZGluZ3M6IHRydWUgIWRlZmF1bHQ7XG5cbiRoMV9mb250X3NpemU6IDJlbSAhZGVmYXVsdDtcbiRoMl9mb250X3NpemU6IDEuNWVtICFkZWZhdWx0O1xuJGgzX2ZvbnRfc2l6ZTogMS4xN2VtICFkZWZhdWx0O1xuJGg0X2ZvbnRfc2l6ZTogMWVtICFkZWZhdWx0O1xuJGg1X2ZvbnRfc2l6ZTogMC44M2VtICFkZWZhdWx0O1xuJGg2X2ZvbnRfc2l6ZTogMC43NWVtICFkZWZhdWx0O1xuXG4kaDFfbWFyZ2luOiAwLjY3ZW0gMCAhZGVmYXVsdDtcbiRoMl9tYXJnaW46IDAuODNlbSAwICFkZWZhdWx0O1xuJGgzX21hcmdpbjogMWVtIDAgIWRlZmF1bHQ7XG4kaDRfbWFyZ2luOiAxLjMzZW0gMCAhZGVmYXVsdDtcbiRoNV9tYXJnaW46IDEuNjdlbSAwICFkZWZhdWx0O1xuJGg2X21hcmdpbjogMi4zM2VtIDAgIWRlZmF1bHQ7XG5cbiRiYWNrZ3JvdW5kOiAjZmZmICFkZWZhdWx0O1xuJGNvbG9yOiAjMDAwICFkZWZhdWx0O1xuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gSFRNTDUgZGlzcGxheSBkZWZpbml0aW9uc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy8gQ29ycmVjdHMgYmxvY2sgZGlzcGxheSBub3QgZGVmaW5lZCBpbiBJRTYvNy84LzkgJiBGRjNcblxuYXJ0aWNsZSxcbmFzaWRlLFxuZGV0YWlscyxcbmZpZ2NhcHRpb24sXG5maWd1cmUsXG5mb290ZXIsXG5oZWFkZXIsXG5oZ3JvdXAsXG5uYXYsXG5zZWN0aW9uLFxuc3VtbWFyeSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8vIENvcnJlY3RzIGlubGluZS1ibG9jayBkaXNwbGF5IG5vdCBkZWZpbmVkIGluIElFNi83LzgvOSAmIEZGM1xuXG5hdWRpbyxcbmNhbnZhcyxcbnZpZGVvIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgQGlmICRsZWdhY3lfc3VwcG9ydF9mb3JfaWUge1xuICAgICAgICAqZGlzcGxheTogaW5saW5lO1xuICAgICAgICAqem9vbTogMTtcbiAgICB9XG59XG5cbi8vIDEuIFByZXZlbnRzIG1vZGVybiBicm93c2VycyBmcm9tIGRpc3BsYXlpbmcgJ2F1ZGlvJyB3aXRob3V0IGNvbnRyb2xzXG4vLyAyLiBSZW1vdmUgZXhjZXNzIGhlaWdodCBpbiBpT1M1IGRldmljZXNcblxuYXVkaW86bm90KFtjb250cm9sc10pIHtcbiAgICBkaXNwbGF5OiBub25lOyAvLyAxXG4gICAgaGVpZ2h0OiAwOyAvLyAyXG59XG5cbi8vXG4vLyBBZGRyZXNzIGBbaGlkZGVuXWAgc3R5bGluZyBub3QgcHJlc2VudCBpbiBJRSA4LzkuXG4vLyBIaWRlIHRoZSBgdGVtcGxhdGVgIGVsZW1lbnQgaW4gSUUsIFNhZmFyaSwgYW5kIEZpcmVmb3ggPCAyMi5cbi8vXG5cbltoaWRkZW5dLCB0ZW1wbGF0ZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbn1cblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIEJhc2Vcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vIDEuIENvcnJlY3RzIHRleHQgcmVzaXppbmcgb2RkbHkgaW4gSUU2Lzcgd2hlbiBib2R5IGZvbnQtc2l6ZSBpcyBzZXQgdXNpbmcgZW0gdW5pdHNcbi8vICAgIGh0dHA6Ly9jbGFnbnV0LmNvbS9ibG9nLzM0OC8jYzc5MFxuLy8gMi4gUHJldmVudHMgaU9TIHRleHQgc2l6ZSBhZGp1c3QgYWZ0ZXIgb3JpZW50YXRpb24gY2hhbmdlLCB3aXRob3V0IGRpc2FibGluZyB1c2VyIHpvb21cbi8vICAgIHd3dy40NTZiZXJlYXN0cmVldC5jb20vYXJjaGl2ZS8yMDEwMTIvY29udHJvbGxpbmdfdGV4dF9zaXplX2luX3NhZmFyaV9mb3JfaW9zX3dpdGhvdXRfZGlzYWJsaW5nX3VzZXJfem9vbS9cblxuaHRtbCB7XG4gICAgQGlmICRsZWdhY3lfc3VwcG9ydF9mb3JfaWUge1xuICAgICAgICBmb250LXNpemU6IDEwMCU7IC8vIDFcbiAgICB9XG5cdFx0Ly8gYmFja2dyb3VuZDogJGJhY2tncm91bmQ7XG5cdFx0Y29sb3I6ICRjb2xvcjtcbiAgICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7IC8vIDJcbiAgICAtbXMtdGV4dC1zaXplLWFkanVzdDogMTAwJTsgLy8gMlxufVxuXG4vLyBBZGRyZXNzZXMgZm9udC1mYW1pbHkgaW5jb25zaXN0ZW5jeSBiZXR3ZWVuICd0ZXh0YXJlYScgYW5kIG90aGVyIGZvcm0gZWxlbWVudHMuXG5cbmh0bWwsXG5idXR0b24sXG5pbnB1dCxcbnNlbGVjdCxcbnRleHRhcmVhIHtcbiAgICBmb250LWZhbWlseTogJG5vcm1hbGl6ZWRfZm9udF9mYW1pbHk7XG59XG5cbi8vIEFkZHJlc3NlcyBtYXJnaW5zIGhhbmRsZWQgaW5jb3JyZWN0bHkgaW4gSUU2LzdcblxuYm9keSB7XG4gICAgbWFyZ2luOiAwO1xufVxuXG5cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBMaW5rc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy8gMS4gUmVtb3ZlIHRoZSBncmF5IGJhY2tncm91bmQgY29sb3IgZnJvbSBhY3RpdmUgbGlua3MgaW4gSUUgMTAuXG4vLyAyLiBBZGRyZXNzZXMgb3V0bGluZSBkaXNwbGF5ZWQgb2RkbHkgaW4gQ2hyb21lXG4vLyAzLiBJbXByb3ZlcyByZWFkYWJpbGl0eSB3aGVuIGZvY3VzZWQgYW5kIGFsc28gbW91c2UgaG92ZXJlZCBpbiBhbGwgYnJvd3NlcnNcbi8vICAgIHBlb3BsZS5vcGVyYS5jb20vcGF0cmlja2wvZXhwZXJpbWVudHMva2V5Ym9hcmQvdGVzdFxuXG5hIHtcbiAgICAvLyAxXG4gICAgXG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG5cbiAgICAvLyAyXG5cbiAgICAmOmZvY3VzIHtcbiAgICAgICAgb3V0bGluZTogdGhpbiBkb3R0ZWQ7XG4gICAgfVxuXG4gICAgLy8gM1xuXG4gICAgJjpob3ZlcixcbiAgICAmOmFjdGl2ZSB7XG4gICAgICAgIG91dGxpbmU6IDA7XG4gICAgfVxufVxuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gVHlwb2dyYXBoeVxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy8gQWRkcmVzc2VzIGZvbnQgc2l6ZXMgYW5kIG1hcmdpbnMgc2V0IGRpZmZlcmVudGx5IGluIElFNi83XG4vLyBBZGRyZXNzZXMgZm9udCBzaXplcyB3aXRoaW4gJ3NlY3Rpb24nIGFuZCAnYXJ0aWNsZScgaW4gRkY0KywgQ2hyb21lLCBTNVxuXG5AaWYgJG5vcm1hbGl6ZV9oZWFkaW5ncyA9PSB0cnVlIHtcbiAgICBoMSB7XG4gICAgICAgIGZvbnQtc2l6ZTogJGgxX2ZvbnRfc2l6ZTtcbiAgICAgICAgbWFyZ2luOiAkaDFfbWFyZ2luO1xuICAgIH1cblxuICAgIGgyIHtcbiAgICAgICAgZm9udC1zaXplOiAkaDJfZm9udF9zaXplO1xuICAgICAgICBtYXJnaW46ICRoMl9tYXJnaW47XG4gICAgfVxuXG4gICAgaDMge1xuICAgICAgICBmb250LXNpemU6ICRoM19mb250X3NpemU7XG4gICAgICAgIG1hcmdpbjogJGgzX21hcmdpbjtcbiAgICB9XG5cbiAgICBoNCB7XG4gICAgICAgIGZvbnQtc2l6ZTogJGg0X2ZvbnRfc2l6ZTtcbiAgICAgICAgbWFyZ2luOiAkaDRfbWFyZ2luO1xuICAgIH1cblxuICAgIGg1IHtcbiAgICAgICAgZm9udC1zaXplOiAkaDVfZm9udF9zaXplO1xuICAgICAgICBtYXJnaW46ICRoNV9tYXJnaW47XG4gICAgfVxuXG4gICAgaDYge1xuICAgICAgICBmb250LXNpemU6ICRoNl9mb250X3NpemU7XG4gICAgICAgIG1hcmdpbjogJGg2X21hcmdpbjtcbiAgICB9XG59XG5cbi8vIEFkZHJlc3NlcyBzdHlsaW5nIG5vdCBwcmVzZW50IGluIElFIDgvOSwgUzUsIENocm9tZVxuXG5hYmJyW3RpdGxlXSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IGRvdHRlZDtcbn1cblxuLy8gQWRkcmVzc2VzIHN0eWxlIHNldCB0byAnYm9sZGVyJyBpbiBGRjMrLCBTNC81LCBDaHJvbWVcblxuYixcbnN0cm9uZyB7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbkBpZiAkbGVnYWN5X3N1cHBvcnRfZm9yX2llIHtcbiAgICBibG9ja3F1b3RlIHtcbiAgICAgICAgbWFyZ2luOiAxZW0gNDBweDtcbiAgICB9XG59XG5cbi8vIEFkZHJlc3NlcyBzdHlsaW5nIG5vdCBwcmVzZW50IGluIFM1LCBDaHJvbWVcblxuZGZuIHtcbiAgICBmb250LXN0eWxlOiBpdGFsaWM7XG59XG5cbi8vIEFkZHJlc3NlcyBzdHlsaW5nIG5vdCBwcmVzZW50IGluIElFNi83LzgvOVxuXG5tYXJrIHtcbiAgICBiYWNrZ3JvdW5kOiAjZmYwO1xuICAgIGNvbG9yOiAjMDAwO1xufVxuXG4vLyBBZGRyZXNzZXMgbWFyZ2lucyBzZXQgZGlmZmVyZW50bHkgaW4gSUU2LzdcbkBpZiAkbGVnYWN5X3N1cHBvcnRfZm9yX2llIHtcbiAgICBwLFxuICAgIHByZSB7XG4gICAgICAgIG1hcmdpbjogMWVtIDA7XG4gICAgfVxufVxuXG4vLyBDb3JyZWN0cyBmb250IGZhbWlseSBzZXQgb2RkbHkgaW4gSUU2LCBTNC81LCBDaHJvbWVcbi8vIGVuLndpa2lwZWRpYS5vcmcvd2lraS9Vc2VyOkRhdmlkZ290aGJlcmcvVGVzdDU5XG5cbmNvZGUsXG5rYmQsXG5wcmUsXG5zYW1wIHtcbiAgICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBzZXJpZjtcbiAgICBAaWYgJGxlZ2FjeV9zdXBwb3J0X2Zvcl9pZSB7XG4gICAgICAgIF9mb250LWZhbWlseTogJ2NvdXJpZXIgbmV3JywgbW9ub3NwYWNlO1xuICAgIH1cbiAgICBmb250LXNpemU6IDFlbTtcbn1cblxuLy8gSW1wcm92ZXMgcmVhZGFiaWxpdHkgb2YgcHJlLWZvcm1hdHRlZCB0ZXh0IGluIGFsbCBicm93c2Vyc1xuXG5wcmUge1xuICAgIHdoaXRlLXNwYWNlOiBwcmU7XG4gICAgd2hpdGUtc3BhY2U6IHByZS13cmFwO1xuICAgIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbn1cblxuLy8gU2V0IGNvbnNpc3RlbnQgcXVvdGUgdHlwZXMuXG5cbnEge1xuICAgIHF1b3RlczogXCJcXDIwMUNcIiBcIlxcMjAxRFwiIFwiXFwyMDE4XCIgXCJcXDIwMTlcIjtcbn1cblxuLy8gMS4gQWRkcmVzc2VzIENTUyBxdW90ZXMgbm90IHN1cHBvcnRlZCBpbiBJRTYvN1xuLy8gMi4gQWRkcmVzc2VzIHF1b3RlIHByb3BlcnR5IG5vdCBzdXBwb3J0ZWQgaW4gUzRcblxuLy8gMVxuQGlmICRsZWdhY3lfc3VwcG9ydF9mb3JfaWUge1xuICAgIHEge1xuICAgICAgICBxdW90ZXM6IG5vbmU7XG4gICAgfVxufVxuXG4vLyAyXG5xIHtcbiAgICAmOmJlZm9yZSwgXG4gICAgJjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBjb250ZW50OiBub25lO1x0XG4gICAgfVxufVxuXG4vLyBBZGRyZXNzIGluY29uc2lzdGVudCBhbmQgdmFyaWFibGUgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cblxuc21hbGwge1xuICAgIGZvbnQtc2l6ZTogODAlO1xufVxuXG4vLyBQcmV2ZW50cyBzdWIgYW5kIHN1cCBhZmZlY3RpbmcgbGluZS1oZWlnaHQgaW4gYWxsIGJyb3dzZXJzXG4vLyBnaXN0LmdpdGh1Yi5jb20vNDEzOTMwXG5cbnN1YixcbnN1cCB7XG4gICAgZm9udC1zaXplOiA3NSU7XG4gICAgbGluZS1oZWlnaHQ6IDA7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cblxuc3VwIHtcbiAgICB0b3A6IC0wLjVlbTtcbn1cblxuc3ViIHtcbiAgICBib3R0b206IC0wLjI1ZW07XG59XG5cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBMaXN0c1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy8gQWRkcmVzc2VzIG1hcmdpbnMgc2V0IGRpZmZlcmVudGx5IGluIElFNi83XG5AaWYgJGxlZ2FjeV9zdXBwb3J0X2Zvcl9pZSB7XG4gICAgZGwsXG4gICAgbWVudSxcbiAgICBvbCxcbiAgICB1bCB7XG4gICAgICAgIG1hcmdpbjogMWVtIDA7XG4gICAgfVxufVxuXG5AaWYgJGxlZ2FjeV9zdXBwb3J0X2Zvcl9pZSB7XG4gICAgZGQge1xuICAgICAgICBtYXJnaW46IDAgMCAwIDQwcHg7XG4gICAgfVxufVxuXG4vLyBBZGRyZXNzZXMgcGFkZGluZ3Mgc2V0IGRpZmZlcmVudGx5IGluIElFNi83XG5AaWYgJGxlZ2FjeV9zdXBwb3J0X2Zvcl9pZSB7XG4gICAgbWVudSxcbiAgICBvbCxcbiAgICB1bCB7XG4gICAgICAgIHBhZGRpbmc6IDAgMCAwIDQwcHg7XG4gICAgfVxufVxuXG4vLyBDb3JyZWN0cyBsaXN0IGltYWdlcyBoYW5kbGVkIGluY29ycmVjdGx5IGluIElFN1xuXG5uYXYge1xuICAgIHVsLFxuICAgIG9sIHtcbiAgICAgICAgQGlmICRsZWdhY3lfc3VwcG9ydF9mb3JfaWUge1xuICAgICAgICAgICAgbGlzdC1zdHlsZS1pbWFnZTogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIEVtYmVkZGVkIGNvbnRlbnRcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vIDEuIFJlbW92ZXMgYm9yZGVyIHdoZW4gaW5zaWRlICdhJyBlbGVtZW50IGluIElFNi83LzgvOSwgRkYzXG4vLyAyLiBJbXByb3ZlcyBpbWFnZSBxdWFsaXR5IHdoZW4gc2NhbGVkIGluIElFN1xuLy8gICAgY29kZS5mbGlja3IuY29tL2Jsb2cvMjAwOC8xMS8xMi9vbi11aS1xdWFsaXR5LXRoZS1saXR0bGUtdGhpbmdzLWNsaWVudC1zaWRlLWltYWdlLXJlc2l6aW5nL1xuXG5pbWcge1xuICAgIGJvcmRlcjogMDsgLy8gMVxuICAgIEBpZiAkbGVnYWN5X3N1cHBvcnRfZm9yX2llIHtcbiAgICAgICAgLW1zLWludGVycG9sYXRpb24tbW9kZTogYmljdWJpYzsgLy8gMlxuICAgIH1cbn1cblxuLy8gQ29ycmVjdHMgb3ZlcmZsb3cgZGlzcGxheWVkIG9kZGx5IGluIElFOVxuXG5zdmc6bm90KDpyb290KSB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cbnN2ZyB7XG4gICAgd2lkdGg6IDEwMCU7XG59XG5cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBGaWd1cmVzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vLyBBZGRyZXNzZXMgbWFyZ2luIG5vdCBwcmVzZW50IGluIElFNi83LzgvOSwgUzUsIE8xMVxuXG5maWd1cmUge1xuICAgIG1hcmdpbjogMDtcbn1cblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIEZvcm1zXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vLyBDb3JyZWN0cyBtYXJnaW4gZGlzcGxheWVkIG9kZGx5IGluIElFNi83XG5AaWYgJGxlZ2FjeV9zdXBwb3J0X2Zvcl9pZSB7XG4gICAgZm9ybSB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICB9XG59XG5cbi8vIERlZmluZSBjb25zaXN0ZW50IGJvcmRlciwgbWFyZ2luLCBhbmQgcGFkZGluZ1xuXG5maWVsZHNldCB7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIC8vIGJvcmRlcjogMXB4IHNvbGlkICNjMGMwYzA7XG4gICAgLy8gbWFyZ2luOiAwIDJweDtcbiAgICAvLyBwYWRkaW5nOiAwLjM1ZW0gMC42MjVlbSAwLjc1ZW07XG59XG5cbi8vIDEuIENvcnJlY3RzIGNvbG9yIG5vdCBiZWluZyBpbmhlcml0ZWQgaW4gSUU2LzcvOC85XG4vLyAyLiBSZW1vdmUgcGFkZGluZyBzbyBwZW9wbGUgYXJlbid0IGNhdWdodCBvdXQgaWYgdGhleSB6ZXJvIG91dCBmaWVsZHNldHMuXG4vLyAzLiBDb3JyZWN0cyB0ZXh0IG5vdCB3cmFwcGluZyBpbiBGRjNcbi8vIDQuIENvcnJlY3RzIGFsaWdubWVudCBkaXNwbGF5ZWQgb2RkbHkgaW4gSUU2LzdcblxubGVnZW5kIHtcbiAgICBib3JkZXI6IDA7IC8vIDFcbiAgICBwYWRkaW5nOiAwOyAvLyAyXG4gICAgd2hpdGUtc3BhY2U6IG5vcm1hbDsgLy8gM1xuICAgIEBpZiAkbGVnYWN5X3N1cHBvcnRfZm9yX2llIHtcbiAgICAgICAgKm1hcmdpbi1sZWZ0OiAtN3B4OyAvLyA0XG4gICAgfVxufVxuXG4vLyAxLiBDb3JyZWN0IGZvbnQgZmFtaWx5IG5vdCBiZWluZyBpbmhlcml0ZWQgaW4gYWxsIGJyb3dzZXJzLlxuLy8gMi4gQ29ycmVjdHMgZm9udCBzaXplIG5vdCBiZWluZyBpbmhlcml0ZWQgaW4gYWxsIGJyb3dzZXJzXG4vLyAzLiBBZGRyZXNzZXMgbWFyZ2lucyBzZXQgZGlmZmVyZW50bHkgaW4gSUU2LzcsIEZGMyssIFM1LCBDaHJvbWVcbi8vIDQuIEltcHJvdmVzIGFwcGVhcmFuY2UgYW5kIGNvbnNpc3RlbmN5IGluIGFsbCBicm93c2Vyc1xuXG5idXR0b24sXG5pbnB1dCxcbnNlbGVjdCxcbnRleHRhcmVhIHtcbiAgICBmb250LWZhbWlseTogaW5oZXJpdDsgLy8gMVxuICAgIGZvbnQtc2l6ZTogMTAwJTsgLy8gMlxuICAgIG1hcmdpbjogMDsgLy8gM1xuICAgIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTsgLy8gNFxuICAgIEBpZiAkbGVnYWN5X3N1cHBvcnRfZm9yX2llIHtcbiAgICAgICAgKnZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IC8vIDRcbiAgICB9XG59XG5cbi8vIEFkZHJlc3NlcyBGRjMvNCBzZXR0aW5nIGxpbmUtaGVpZ2h0IG9uICdpbnB1dCcgdXNpbmcgIWltcG9ydGFudCBpbiB0aGUgVUEgc3R5bGVzaGVldFxuXG5idXR0b24sIGlucHV0IHtcbiAgICBsaW5lLWhlaWdodDogbm9ybWFsO1xufVxuXG4vLyBBZGRyZXNzIGluY29uc2lzdGVudCBgdGV4dC10cmFuc2Zvcm1gIGluaGVyaXRhbmNlIGZvciBgYnV0dG9uYCBhbmQgYHNlbGVjdGAuXG4vLyBBbGwgb3RoZXIgZm9ybSBjb250cm9sIGVsZW1lbnRzIGRvIG5vdCBpbmhlcml0IGB0ZXh0LXRyYW5zZm9ybWAgdmFsdWVzLlxuLy8gQ29ycmVjdCBgYnV0dG9uYCBzdHlsZSBpbmhlcml0YW5jZSBpbiBDaHJvbWUsIFNhZmFyaSA1KywgYW5kIElFIDgrLlxuLy8gQ29ycmVjdCBgc2VsZWN0YCBzdHlsZSBpbmhlcml0YW5jZSBpbiBGaXJlZm94IDQrIGFuZCBPcGVyYS5cblxuYnV0dG9uLFxuc2VsZWN0IHtcbiAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbn1cblxuLy8gMS4gQXZvaWQgdGhlIFdlYktpdCBidWcgaW4gQW5kcm9pZCA0LjAuKiB3aGVyZSAoMikgZGVzdHJveXMgbmF0aXZlIGBhdWRpb2Bcbi8vICAgIGFuZCBgdmlkZW9gIGNvbnRyb2xzXG4vLyAyLiBDb3JyZWN0cyBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlICdpbnB1dCcgdHlwZXMgaW4gaU9TXG4vLyAzLiBJbXByb3ZlcyB1c2FiaWxpdHkgYW5kIGNvbnNpc3RlbmN5IG9mIGN1cnNvciBzdHlsZSBiZXR3ZWVuIGltYWdlLXR5cGVcbi8vICAgICdpbnB1dCcgYW5kIG90aGVyc1xuLy8gNC4gUmVtb3ZlcyBpbm5lciBzcGFjaW5nIGluIElFNyB3aXRob3V0IGFmZmVjdGluZyBub3JtYWwgdGV4dCBpbnB1dHNcbi8vICAgIEtub3duIGlzc3VlOiBpbm5lciBzcGFjaW5nIHJlbWFpbnMgaW4gSUU2XG5cbmJ1dHRvbixcbmh0bWwgaW5wdXRbdHlwZT1cImJ1dHRvblwiXSwgLy8gMVxuaW5wdXRbdHlwZT1cInJlc2V0XCJdLFxuaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247IC8vIDJcbiAgICBjdXJzb3I6IHBvaW50ZXI7IC8vIDNcbiAgICBAaWYgJGxlZ2FjeV9zdXBwb3J0X2Zvcl9pZSB7XG4gICAgICAgICpvdmVyZmxvdzogdmlzaWJsZTsgIC8vIDRcbiAgICB9XG59XG5cbi8vIFJlLXNldCBkZWZhdWx0IGN1cnNvciBmb3IgZGlzYWJsZWQgZWxlbWVudHNcblxuYnV0dG9uW2Rpc2FibGVkXSxcbmlucHV0W2Rpc2FibGVkXSB7XG4gICAgY3Vyc29yOiBkZWZhdWx0O1xufVxuXG4vLyBSZW1vdmVzIGlubmVyIHBhZGRpbmcgYW5kIGJvcmRlciBpbiBGRjMrXG4vLyB3d3cuc2l0ZXBlbi5jb20vYmxvZy8yMDA4LzA1LzE0L3RoZS1kZXZpbHMtaW4tdGhlLWRldGFpbHMtZml4aW5nLWRvam9zLXRvb2xiYXItYnV0dG9ucy9cblxuYnV0dG9uLCBpbnB1dCB7XG4gICAgJjo6LW1vei1mb2N1cy1pbm5lciB7XG4gICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICB9XG59XG5cbi8vIDEuIFJlbW92ZXMgZGVmYXVsdCB2ZXJ0aWNhbCBzY3JvbGxiYXIgaW4gSUU2LzcvOC85XG4vLyAyLiBJbXByb3ZlcyByZWFkYWJpbGl0eSBhbmQgYWxpZ25tZW50IGluIGFsbCBicm93c2Vyc1xuXG50ZXh0YXJlYSB7XG4gICAgb3ZlcmZsb3c6IGF1dG87IC8vIDFcbiAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wOyAvLyAyXG59XG5cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBUYWJsZXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vIFJlbW92ZSBtb3N0IHNwYWNpbmcgYmV0d2VlbiB0YWJsZSBjZWxsc1xuXG50YWJsZSB7XG4gICAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgICBib3JkZXItc3BhY2luZzogMDtcbn1cblxuaW5wdXQge1xuICAgIC8vIDEuIEFkZHJlc3NlcyBhcHBlYXJhbmNlIHNldCB0byBzZWFyY2hmaWVsZCBpbiBTNSwgQ2hyb21lXG4gICAgLy8gMi4gQWRkcmVzc2VzIGJveC1zaXppbmcgc2V0IHRvIGJvcmRlci1ib3ggaW4gUzUsIENocm9tZSAoaW5jbHVkZSAtbW96IHRvIGZ1dHVyZS1wcm9vZilcbiAgICAmW3R5cGU9XCJzZWFyY2hcIl0ge1xuICAgICAgICAtd2Via2l0LWFwcGVhcmFuY2U6IHRleHRmaWVsZDsgLy8gMVxuICAgICAgICAtbW96LWJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICAgICAgICAtd2Via2l0LWJveC1zaXppbmc6IGNvbnRlbnQtYm94OyAvLyAyXG4gICAgICAgIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICAgICAgICBcbiAgICBcdC8vIFJlbW92ZSBpbm5lciBwYWRkaW5nIGFuZCBzZWFyY2ggY2FuY2VsIGJ1dHRvbiBpbiBTYWZhcmkgNSBhbmQgQ2hyb21lXG4gICAgICAgIC8vIG9uIE9TIFguXG4gICAgICAgICY6Oi13ZWJraXQtc2VhcmNoLWNhbmNlbC1idXR0b24sXG4gICAgICAgICY6Oi13ZWJraXQtc2VhcmNoLWRlY29yYXRpb24ge1xuICAgICAgICAgICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC8vIDEuIEFkZHJlc3MgYm94IHNpemluZyBzZXQgdG8gYGNvbnRlbnQtYm94YCBpbiBJRSA4LzkvMTAuXG4gICAgLy8gMi4gUmVtb3ZlIGV4Y2VzcyBwYWRkaW5nIGluIElFIDgvOS8xMC5cbiAgICAvLyAzLiBSZW1vdmVzIGV4Y2VzcyBwYWRkaW5nIGluIElFN1xuICAgIC8vICAgIEtub3duIGlzc3VlOiBleGNlc3MgcGFkZGluZyByZW1haW5zIGluIElFNlxuICAgICZbdHlwZT1cImNoZWNrYm94XCJdLFxuICAgICZbdHlwZT1cInJhZGlvXCJdIHtcbiAgICBcdGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8vIDFcbiAgICBcdHBhZGRpbmc6IDA7IC8vIDJcbiAgICBcdEBpZiAkbGVnYWN5X3N1cHBvcnRfZm9yX2llIHtcbiAgICAgICAgXHQqaGVpZ2h0OiAxM3B4OyAvLyAzXG4gICAgICAgIFx0KndpZHRoOiAxM3B4OyAvLyAzXG4gICAgXHR9XG4gICAgfVxufVxuIiwiLy8gQm91cmJvbiA1LjAuMC1iZXRhLjhcbi8vIGh0dHA6Ly9ib3VyYm9uLmlvXG4vLyBDb3B5cmlnaHQgMjAxMS0yMDE3IHRob3VnaHRib3QsIGluYy5cbi8vIE1JVCBMaWNlbnNlXG5cbkBpbXBvcnQgXCJib3VyYm9uL2hlbHBlcnMvYnV0dG9ucy1saXN0XCI7XG5AaW1wb3J0IFwiYm91cmJvbi9oZWxwZXJzL3NjYWxlc1wiO1xuQGltcG9ydCBcImJvdXJib24vaGVscGVycy90ZXh0LWlucHV0cy1saXN0XCI7XG5cbkBpbXBvcnQgXCJib3VyYm9uL3NldHRpbmdzL3NldHRpbmdzXCI7XG5cbkBpbXBvcnQgXCJib3VyYm9uL3ZhbGlkYXRvcnMvY29udGFpbnNcIjtcbkBpbXBvcnQgXCJib3VyYm9uL3ZhbGlkYXRvcnMvY29udGFpbnMtZmFsc3lcIjtcbkBpbXBvcnQgXCJib3VyYm9uL3ZhbGlkYXRvcnMvaXMtY29sb3JcIjtcbkBpbXBvcnQgXCJib3VyYm9uL3ZhbGlkYXRvcnMvaXMtbGVuZ3RoXCI7XG5AaW1wb3J0IFwiYm91cmJvbi92YWxpZGF0b3JzL2lzLW51bWJlclwiO1xuQGltcG9ydCBcImJvdXJib24vdmFsaWRhdG9ycy9pcy1zaXplXCI7XG5cbkBpbXBvcnQgXCJib3VyYm9uL3V0aWxpdGllcy9hc3NpZ24taW5wdXRzXCI7XG5AaW1wb3J0IFwiYm91cmJvbi91dGlsaXRpZXMvY29tcGFjdC1zaG9ydGhhbmRcIjtcbkBpbXBvcnQgXCJib3VyYm9uL3V0aWxpdGllcy9kaXJlY3Rpb25hbC1wcm9wZXJ0eVwiO1xuQGltcG9ydCBcImJvdXJib24vdXRpbGl0aWVzL2ZldGNoLWJvdXJib24tc2V0dGluZ1wiO1xuQGltcG9ydCBcImJvdXJib24vdXRpbGl0aWVzL2ZvbnQtc291cmNlLWRlY2xhcmF0aW9uXCI7XG5AaW1wb3J0IFwiYm91cmJvbi91dGlsaXRpZXMvZ2FtbWFcIjtcbkBpbXBvcnQgXCJib3VyYm9uL3V0aWxpdGllcy9saWdodG5lc3NcIjtcbkBpbXBvcnQgXCJib3VyYm9uL3V0aWxpdGllcy9jb250cmFzdC1yYXRpb1wiO1xuQGltcG9ydCBcImJvdXJib24vdXRpbGl0aWVzL3VucGFjay1zaG9ydGhhbmRcIjtcblxuQGltcG9ydCBcImJvdXJib24vbGlicmFyeS9ib3JkZXItY29sb3JcIjtcbkBpbXBvcnQgXCJib3VyYm9uL2xpYnJhcnkvYm9yZGVyLXJhZGl1c1wiO1xuQGltcG9ydCBcImJvdXJib24vbGlicmFyeS9ib3JkZXItc3R5bGVcIjtcbkBpbXBvcnQgXCJib3VyYm9uL2xpYnJhcnkvYm9yZGVyLXdpZHRoXCI7XG5AaW1wb3J0IFwiYm91cmJvbi9saWJyYXJ5L2J1dHRvbnNcIjtcbkBpbXBvcnQgXCJib3VyYm9uL2xpYnJhcnkvY2xlYXJmaXhcIjtcbkBpbXBvcnQgXCJib3VyYm9uL2xpYnJhcnkvY29udHJhc3Qtc3dpdGNoXCI7XG5AaW1wb3J0IFwiYm91cmJvbi9saWJyYXJ5L2VsbGlwc2lzXCI7XG5AaW1wb3J0IFwiYm91cmJvbi9saWJyYXJ5L2ZvbnQtZmFjZVwiO1xuQGltcG9ydCBcImJvdXJib24vbGlicmFyeS9mb250LXN0YWNrc1wiO1xuQGltcG9ydCBcImJvdXJib24vbGlicmFyeS9oaWRlLXRleHRcIjtcbkBpbXBvcnQgXCJib3VyYm9uL2xpYnJhcnkvaGlkZS12aXN1YWxseVwiO1xuQGltcG9ydCBcImJvdXJib24vbGlicmFyeS9tYXJnaW5cIjtcbkBpbXBvcnQgXCJib3VyYm9uL2xpYnJhcnkvbW9kdWxhci1zY2FsZVwiO1xuQGltcG9ydCBcImJvdXJib24vbGlicmFyeS9vdmVyZmxvdy13cmFwXCI7XG5AaW1wb3J0IFwiYm91cmJvbi9saWJyYXJ5L3BhZGRpbmdcIjtcbkBpbXBvcnQgXCJib3VyYm9uL2xpYnJhcnkvcG9zaXRpb25cIjtcbkBpbXBvcnQgXCJib3VyYm9uL2xpYnJhcnkvcHJlZml4ZXJcIjtcbkBpbXBvcnQgXCJib3VyYm9uL2xpYnJhcnkvc2hhZGVcIjtcbkBpbXBvcnQgXCJib3VyYm9uL2xpYnJhcnkvc2l6ZVwiO1xuQGltcG9ydCBcImJvdXJib24vbGlicmFyeS9zdHJpcC11bml0XCI7XG5AaW1wb3J0IFwiYm91cmJvbi9saWJyYXJ5L3RleHQtaW5wdXRzXCI7XG5AaW1wb3J0IFwiYm91cmJvbi9saWJyYXJ5L3RpbWluZy1mdW5jdGlvbnNcIjtcbkBpbXBvcnQgXCJib3VyYm9uL2xpYnJhcnkvdGludFwiO1xuQGltcG9ydCBcImJvdXJib24vbGlicmFyeS90cmlhbmdsZVwiO1xuQGltcG9ydCBcImJvdXJib24vbGlicmFyeS92YWx1ZS1wcmVmaXhlclwiO1xuIiwiQGNoYXJzZXQgXCJVVEYtOFwiO1xuXG4vLy8gQSBsaXN0IG9mIGFsbCBIVE1MIGJ1dHRvbiBlbGVtZW50cy5cbi8vL1xuLy8vIEB0eXBlIGxpc3Rcbi8vL1xuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuXG4kX2J1dHRvbnMtbGlzdDogKFxuICBcImJ1dHRvblwiLFxuICBcIlt0eXBlPSdidXR0b24nXVwiLFxuICBcIlt0eXBlPSdyZXNldCddXCIsXG4gIFwiW3R5cGU9J3N1Ym1pdCddXCIsXG4pO1xuIiwiQGNoYXJzZXQgXCJVVEYtOFwiO1xuXG4vLy8vXG4vLy8gUHJlLWRlZmluZWQgc2NhbGVzIGZvciB1c2Ugd2l0aCB0aGUgYG1vZHVsYXItc2NhbGVgIGZ1bmN0aW9uLlxuLy8vXG4vLy8gQHR5cGUgbnVtYmVyICh1bml0bGVzcylcbi8vL1xuLy8vIEBzZWUge2Z1bmN0aW9ufSBtb2R1bGFyLXNjYWxlXG4vLy8vXG5cbiRtaW5vci1zZWNvbmQ6ICAgICAxLjA2NztcbiRtYWpvci1zZWNvbmQ6ICAgICAxLjEyNTtcbiRtaW5vci10aGlyZDogICAgICAxLjI7XG4kbWFqb3ItdGhpcmQ6ICAgICAgMS4yNTtcbiRwZXJmZWN0LWZvdXJ0aDogICAxLjMzMztcbiRhdWdtZW50ZWQtZm91cnRoOiAxLjQxNDtcbiRwZXJmZWN0LWZpZnRoOiAgICAxLjU7XG4kbWlub3Itc2l4dGg6ICAgICAgMS42O1xuJGdvbGRlbjogICAgICAgICAgIDEuNjE4O1xuJG1ham9yLXNpeHRoOiAgICAgIDEuNjY3O1xuJG1pbm9yLXNldmVudGg6ICAgIDEuNzc4O1xuJG1ham9yLXNldmVudGg6ICAgIDEuODc1O1xuJG9jdGF2ZTogICAgICAgICAgIDI7XG4kbWFqb3ItdGVudGg6ICAgICAgMi41O1xuJG1ham9yLWVsZXZlbnRoOiAgIDIuNjY3O1xuJG1ham9yLXR3ZWxmdGg6ICAgIDM7XG4kZG91YmxlLW9jdGF2ZTogICAgNDtcbiIsIkBjaGFyc2V0IFwiVVRGLThcIjtcblxuLy8vIEEgbGlzdCBvZiBhbGwgX3RleHQtYmFzZWRfIEhUTUwgaW5wdXRzLlxuLy8vXG4vLy8gQHR5cGUgbGlzdFxuLy8vXG4vLy8gQGFjY2VzcyBwcml2YXRlXG5cbiRfdGV4dC1pbnB1dHMtbGlzdDogKFxuICBcIlt0eXBlPSdjb2xvciddXCIsXG4gIFwiW3R5cGU9J2RhdGUnXVwiLFxuICBcIlt0eXBlPSdkYXRldGltZSddXCIsXG4gIFwiW3R5cGU9J2RhdGV0aW1lLWxvY2FsJ11cIixcbiAgXCJbdHlwZT0nZW1haWwnXVwiLFxuICBcIlt0eXBlPSdtb250aCddXCIsXG4gIFwiW3R5cGU9J251bWJlciddXCIsXG4gIFwiW3R5cGU9J3Bhc3N3b3JkJ11cIixcbiAgXCJbdHlwZT0nc2VhcmNoJ11cIixcbiAgXCJbdHlwZT0ndGVsJ11cIixcbiAgXCJbdHlwZT0ndGV4dCddXCIsXG4gIFwiW3R5cGU9J3RpbWUnXVwiLFxuICBcIlt0eXBlPSd1cmwnXVwiLFxuICBcIlt0eXBlPSd3ZWVrJ11cIixcbiAgXCJpbnB1dDpub3QoW3R5cGVdKVwiLFxuICBcInRleHRhcmVhXCIsXG4pO1xuIiwiQGNoYXJzZXQgXCJVVEYtOFwiO1xuXG4vLy8gRGVmYXVsdCBnbG9iYWwgQm91cmJvbiBzZXR0aW5ncy4gVmFsdWVzIGluIHRoaXMgbWFwIGFyZSBvdmVyd3JpdHRlbiBieSBhbnlcbi8vLyB2YWx1ZXMgc2V0IGluIHRoZSBgJGJvdXJib25gIG1hcC5cbi8vL1xuLy8vIEB0eXBlIG1hcFxuLy8vXG4vLy8gQHByb3BlcnR5IHtjb2xvcn0gY29udHJhc3Qtc3dpdGNoLWRhcmstY29sb3IgWyMwMDBdXG4vLy8gICBHbG9iYWwgZGFyayBjb2xvciBmb3IgdGhlIGBjb250cmFzdC1zd2l0Y2hgIGZ1bmN0aW9uLlxuLy8vXG4vLy8gQHByb3BlcnR5IHtjb2xvcn0gY29udHJhc3Qtc3dpdGNoLWxpZ2h0LWNvbG9yIFsjZmZmXVxuLy8vICAgR2xvYmFsIGxpZ2h0IGNvbG9yIGZvciB0aGUgYGNvbnRyYXN0LXN3aXRjaGAgZnVuY3Rpb24uXG4vLy9cbi8vLyBAcHJvcGVydHkge2xpc3R9IGdsb2JhbC1mb250LWZpbGUtZm9ybWF0cyBbKFwidHRmXCIsIFwid29mZjJcIiwgXCJ3b2ZmXCIpXVxuLy8vICAgR2xvYmFsIGZvbnQgZmlsZSBmb3JtYXRzIGZvciB0aGUgYGZvbnQtZmFjZWAgbWl4aW4uXG4vLy9cbi8vLyBAcHJvcGVydHkge251bWJlciAod2l0aCB1bml0KX0gbW9kdWxhci1zY2FsZS1iYXNlIFsxZW1dXG4vLy8gICBHbG9iYWwgYmFzZSB2YWx1ZSBmb3IgdGhlIGBtb2R1bGFyLXNjYWxlYCBmdW5jdGlvbi5cbi8vL1xuLy8vIEBwcm9wZXJ0eSB7bnVtYmVyICh1bml0bGVzcyl9IG1vZHVsYXItc2NhbGUtcmF0aW8gWyRtYWpvci10aGlyZCAoMS4yNSldXG4vLy8gICBHbG9iYWwgYmFzZSByYXRpbyBmb3IgdGhlIGBtb2R1bGFyLXNjYWxlYCBmdW5jdGlvbi5cbi8vL1xuLy8vIEBwcm9wZXJ0eSB7Ym9vbGVhbn0gcmFpbHMtYXNzZXQtcGlwZWxpbmUgW2ZhbHNlXVxuLy8vICAgU2V0IHRoaXMgdG8gYHRydWVgIHdoZW4gdXNpbmcgdGhlIFJhaWxzIEFzc2V0IFBpcGVsaW5lIGFuZCBCb3VyYm9uIHdpbGxcbi8vLyAgIHdyaXRlIGFzc2V0IHBhdGhzIHVzaW5nXG4vLy8gICBbc2Fzcy1yYWlsc+KAmSBhc3NldCBoZWxwZXJzXShodHRwczovL2dpdGh1Yi5jb20vcmFpbHMvc2Fzcy1yYWlscyNhc3NldC1oZWxwZXJzKS5cbi8vL1xuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuXG4kX2JvdXJib24tZGVmYXVsdHM6IChcbiAgXCJjb250cmFzdC1zd2l0Y2gtZGFyay1jb2xvclwiOiAjMDAwLFxuICBcImNvbnRyYXN0LXN3aXRjaC1saWdodC1jb2xvclwiOiAjZmZmLFxuICBcImdsb2JhbC1mb250LWZpbGUtZm9ybWF0c1wiOiAoXCJ0dGZcIiwgXCJ3b2ZmMlwiLCBcIndvZmZcIiksXG4gIFwibW9kdWxhci1zY2FsZS1iYXNlXCI6IDFlbSxcbiAgXCJtb2R1bGFyLXNjYWxlLXJhdGlvXCI6ICRtYWpvci10aGlyZCxcbiAgXCJyYWlscy1hc3NldC1waXBlbGluZVwiOiBmYWxzZSxcbik7XG5cbi8vLyBHbG9iYWwgQm91cmJvbiBzZXR0aW5ncy5cbi8vL1xuLy8vIEBuYW1lIFNldHRpbmdzXG4vLy9cbi8vLyBAdHlwZSBtYXBcbi8vL1xuLy8vIEBwcm9wZXJ0eSB7Y29sb3J9IGNvbnRyYXN0LXN3aXRjaC1kYXJrLWNvbG9yIFsjMDAwXVxuLy8vICAgR2xvYmFsIGRhcmsgY29sb3IgZm9yIHRoZSBgY29udHJhc3Qtc3dpdGNoYCBmdW5jdGlvbi5cbi8vL1xuLy8vIEBwcm9wZXJ0eSB7Y29sb3J9IGNvbnRyYXN0LXN3aXRjaC1saWdodC1jb2xvciBbI2ZmZl1cbi8vLyAgIEdsb2JhbCBsaWdodCBjb2xvciBmb3IgdGhlIGBjb250cmFzdC1zd2l0Y2hgIGZ1bmN0aW9uLlxuLy8vXG4vLy8gQHByb3BlcnR5IHtsaXN0fSBnbG9iYWwtZm9udC1maWxlLWZvcm1hdHMgWyhcInR0ZlwiLCBcIndvZmYyXCIsIFwid29mZlwiKV1cbi8vLyAgIEdsb2JhbCBmb250IGZpbGUgZm9ybWF0cyBmb3IgdGhlIGBmb250LWZhY2VgIG1peGluLlxuLy8vXG4vLy8gQHByb3BlcnR5IHtudW1iZXIgKHdpdGggdW5pdCl9IG1vZHVsYXItc2NhbGUtYmFzZSBbMWVtXVxuLy8vICAgR2xvYmFsIGJhc2UgdmFsdWUgZm9yIHRoZSBgbW9kdWxhci1zY2FsZWAgZnVuY3Rpb24uXG4vLy9cbi8vLyBAcHJvcGVydHkge251bWJlciAodW5pdGxlc3MpfSBtb2R1bGFyLXNjYWxlLXJhdGlvIFskbWFqb3ItdGhpcmQgKDEuMjUpXVxuLy8vICAgR2xvYmFsIGJhc2UgcmF0aW8gZm9yIHRoZSBgbW9kdWxhci1zY2FsZWAgZnVuY3Rpb24uXG4vLy9cbi8vLyBAcHJvcGVydHkge2Jvb2xlYW59IHJhaWxzLWFzc2V0LXBpcGVsaW5lIFtmYWxzZV1cbi8vLyAgIFNldCB0aGlzIHRvIGB0cnVlYCB3aGVuIHVzaW5nIHRoZSBSYWlscyBBc3NldCBQaXBlbGluZSBhbmQgQm91cmJvbiB3aWxsXG4vLy8gICB3cml0ZSBhc3NldCBwYXRocyB1c2luZ1xuLy8vICAgW3Nhc3MtcmFpbHPigJkgYXNzZXQgaGVscGVyc10oaHR0cHM6Ly9naXRodWIuY29tL3JhaWxzL3Nhc3MtcmFpbHMjYXNzZXQtaGVscGVycykuXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzXG4vLy8gICAkYm91cmJvbjogKFxuLy8vICAgICBcImNvbnRyYXN0LXN3aXRjaC1kYXJrLWNvbG9yXCI6ICMwMDAsXG4vLy8gICAgIFwiY29udHJhc3Qtc3dpdGNoLWxpZ2h0LWNvbG9yXCI6ICNmZmYsXG4vLy8gICAgIFwiZ2xvYmFsLWZvbnQtZmlsZS1mb3JtYXRzXCI6IChcInR0ZlwiLCBcIndvZmYyXCIsIFwid29mZlwiKSxcbi8vLyAgICAgXCJtb2R1bGFyLXNjYWxlLWJhc2VcIjogMWVtLFxuLy8vICAgICBcIm1vZHVsYXItc2NhbGUtcmF0aW9cIjogJG1ham9yLXRoaXJkLFxuLy8vICAgICBcInJhaWxzLWFzc2V0LXBpcGVsaW5lXCI6IGZhbHNlLFxuLy8vICAgKTtcblxuJGJvdXJib246ICgpICFkZWZhdWx0O1xuIiwiQGNoYXJzZXQgXCJVVEYtOFwiO1xuXG4vLy8gQ2hlY2tzIGlmIGEgbGlzdCBjb250YWlucyBhIHZhbHVlKHMpLlxuLy8vXG4vLy8gQGFyZ3VtZW50IHtsaXN0fSAkbGlzdFxuLy8vICAgVGhlIGxpc3QgdG8gY2hlY2sgYWdhaW5zdC5cbi8vL1xuLy8vIEBhcmd1bWVudCB7bGlzdH0gJHZhbHVlc1xuLy8vICAgQSBzaW5nbGUgdmFsdWUgb3IgbGlzdCBvZiB2YWx1ZXMgdG8gY2hlY2sgZm9yLlxuLy8vXG4vLy8gQHJldHVybiB7Ym9vbGVhbn1cbi8vL1xuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuXG5AZnVuY3Rpb24gX2NvbnRhaW5zKFxuICAkbGlzdCxcbiAgJHZhbHVlcy4uLlxuKSB7XG4gIEBlYWNoICR2YWx1ZSBpbiAkdmFsdWVzIHtcbiAgICBAaWYgdHlwZS1vZihpbmRleCgkbGlzdCwgJHZhbHVlKSkgIT0gXCJudW1iZXJcIiB7XG4gICAgICBAcmV0dXJuIGZhbHNlO1xuICAgIH1cbiAgfVxuXG4gIEByZXR1cm4gdHJ1ZTtcbn1cbiIsIkBjaGFyc2V0IFwiVVRGLThcIjtcblxuLy8vIENoZWNrcyBpZiBhIGxpc3QgZG9lcyBub3QgY29udGFpbiBhbnkgdmFsdWVzLlxuLy8vXG4vLy8gQGFyZ3VtZW50IHtsaXN0fSAkbGlzdFxuLy8vICAgVGhlIGxpc3QgdG8gY2hlY2sgYWdhaW5zdC5cbi8vL1xuLy8vIEByZXR1cm4ge2Jvb2xlYW59XG4vLy9cbi8vLyBAYWNjZXNzIHByaXZhdGVcblxuQGZ1bmN0aW9uIF9jb250YWlucy1mYWxzeSgkbGlzdCkge1xuICBAZWFjaCAkaXRlbSBpbiAkbGlzdCB7XG4gICAgQGlmIG5vdCAkaXRlbSB7XG4gICAgICBAcmV0dXJuIHRydWU7XG4gICAgfVxuICB9XG5cbiAgQHJldHVybiBmYWxzZTtcbn1cbiIsIkBjaGFyc2V0IFwiVVRGLThcIjtcblxuLy8vIENoZWNrcyBmb3IgYSB2YWxpZCBDU1MgY29sb3IuXG4vLy9cbi8vLyBAYXJndW1lbnQge3N0cmluZ30gJGNvbG9yXG4vLy9cbi8vLyBAcmV0dXJuIHtib29sZWFufVxuLy8vXG4vLy8gQGFjY2VzcyBwcml2YXRlXG5cbkBmdW5jdGlvbiBfaXMtY29sb3IoJGNvbG9yKSB7XG4gIEByZXR1cm4gKHR5cGUtb2YoJGNvbG9yKSA9PSBjb2xvcikgb3IgKCRjb2xvciA9PSBcImN1cnJlbnRDb2xvclwiKTtcbn1cbiIsIkBjaGFyc2V0IFwiVVRGLThcIjtcblxuLy8vIENoZWNrcyBmb3IgYSB2YWxpZCBDU1MgbGVuZ3RoLlxuLy8vXG4vLy8gQGFyZ3VtZW50IHtzdHJpbmd9ICR2YWx1ZVxuLy8vXG4vLy8gQHJldHVybiB7Ym9vbGVhbn1cbi8vL1xuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuXG5AZnVuY3Rpb24gX2lzLWxlbmd0aCgkdmFsdWUpIHtcbiAgQHJldHVybiB0eXBlLW9mKCR2YWx1ZSkgIT0gXCJudWxsXCIgYW5kIChzdHItc2xpY2UoJHZhbHVlICsgXCJcIiwgMSwgNCkgPT0gXCJjYWxjXCJcbiAgICAgICBvciBpbmRleChhdXRvIGluaGVyaXQgaW5pdGlhbCAwLCAkdmFsdWUpXG4gICAgICAgb3IgKHR5cGUtb2YoJHZhbHVlKSA9PSBcIm51bWJlclwiIGFuZCBub3QodW5pdGxlc3MoJHZhbHVlKSkpKTtcbn1cbiIsIkBjaGFyc2V0IFwiVVRGLThcIjtcblxuLy8vIENoZWNrcyBmb3IgYSB2YWxpZCBudW1iZXIuXG4vLy9cbi8vLyBAYXJndW1lbnQge251bWJlcn0gJHZhbHVlXG4vLy9cbi8vLyBAcmVxdWlyZSB7ZnVuY3Rpb259IF9jb250YWluc1xuLy8vXG4vLy8gQHJldHVybiB7Ym9vbGVhbn1cbi8vL1xuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuXG5AZnVuY3Rpb24gX2lzLW51bWJlcigkdmFsdWUpIHtcbiAgQHJldHVybiBfY29udGFpbnMoXCIwXCIgXCIxXCIgXCIyXCIgXCIzXCIgXCI0XCIgXCI1XCIgXCI2XCIgXCI3XCIgXCI4XCIgXCI5XCIgMCAxIDIgMyA0IDUgNiA3IDggOSwgJHZhbHVlKTtcbn1cbiIsIkBjaGFyc2V0IFwiVVRGLThcIjtcblxuLy8vIENoZWNrcyBmb3IgYSB2YWxpZCBDU1Mgc2l6ZS5cbi8vL1xuLy8vIEBhcmd1bWVudCB7c3RyaW5nfSAkdmFsdWVcbi8vL1xuLy8vIEByZXR1cm4ge2Jvb2xlYW59XG4vLy9cbi8vLyBAcmVxdWlyZSB7ZnVuY3Rpb259IF9jb250YWluc1xuLy8vXG4vLy8gQHJlcXVpcmUge2Z1bmN0aW9ufSBfaXMtbGVuZ3RoXG4vLy9cbi8vLyBAYWNjZXNzIHByaXZhdGVcblxuQGZ1bmN0aW9uIF9pcy1zaXplKCR2YWx1ZSkge1xuICBAcmV0dXJuIF9pcy1sZW5ndGgoJHZhbHVlKVxuICAgICAgICAgIG9yIF9jb250YWlucyhcImZpbGxcIiBcImZpdC1jb250ZW50XCIgXCJtaW4tY29udGVudFwiIFwibWF4LWNvbnRlbnRcIiwgJHZhbHVlKTtcbn1cbiIsIkBjaGFyc2V0IFwiVVRGLThcIjtcblxuLy8vIEFwcGVuZCBwc2V1ZG8tY2xhc3NlcyB0byBhIHNlbGVjdG9yKHMpLlxuLy8vXG4vLy8gQGFyZ3VtZW50IHtsaXN0IHwgc3RyaW5nfSAkaW5wdXRzXG4vLy8gICBBIHNlbGVjdG9yLCBvciBsaXN0IG9mIHNlbGVjdG9ycywgdG8gYXBwbHkgdGhlIHBzZXVkby1jbGFzcyB0by5cbi8vL1xuLy8vIEBhcmd1bWVudCB7cHNldWRvLWNsYXNzfSAkcHNldWRvIFtudWxsXVxuLy8vICAgVGhlIHBzZXVkby1jbGFzcyB0byBiZSBhcHBlbmRlZC5cbi8vL1xuLy8vIEByZXR1cm4ge2xpc3R9XG4vLy9cbi8vLyBAYWNjZXNzIHByaXZhdGVcblxuQGZ1bmN0aW9uIF9hc3NpZ24taW5wdXRzKFxuICAkaW5wdXRzLFxuICAkcHNldWRvOiBudWxsXG4pIHtcbiAgJGxpc3Q6ICgpO1xuXG4gIEBlYWNoICRpbnB1dCBpbiAkaW5wdXRzIHtcbiAgICAkaW5wdXQ6IHVucXVvdGUoJGlucHV0KTtcbiAgICAkaW5wdXQ6IGlmKCRwc2V1ZG8sICRpbnB1dCArIFwiOlwiICsgJHBzZXVkbywgJGlucHV0KTtcbiAgICAkbGlzdDogYXBwZW5kKCRsaXN0LCAkaW5wdXQsIGNvbW1hKTtcbiAgfVxuXG4gIEByZXR1cm4gJGxpc3Q7XG59XG4iLCJAY2hhcnNldCBcIlVURi04XCI7XG5cbi8vIHNjc3MtbGludDpkaXNhYmxlIEVsc2VQbGFjZW1lbnRcblxuLy8vIFRyYW5zZm9ybXMgc2hvcnRoYW5kIHRvIGl0cyBzaG9ydGVzdCBwb3NzaWJsZSBmb3JtLlxuLy8vXG4vLy8gQGFyZ3VtZW50IHtsaXN0fSAkdmFsdWVzXG4vLy8gICBMaXN0IG9mIGRpcmVjdGlvbmFsIHZhbHVlcy5cbi8vL1xuLy8vIEBleGFtcGxlIHNjc3Ncbi8vLyAgICR2YWx1ZXM6IF9jb21wYWN0LXNob3J0aGFuZCgxMHB4IDIwcHggMTBweCAyMHB4KTtcbi8vL1xuLy8vICAgLy8gT3V0cHV0XG4vLy8gICAkdmFsdWVzOiAxMHB4IDIwcHg7XG4vLy9cbi8vLyBAcmV0dXJuIHtsaXN0fVxuLy8vXG4vLy8gQGFjY2VzcyBwcml2YXRlXG5cbkBmdW5jdGlvbiBfY29tcGFjdC1zaG9ydGhhbmQoJHZhbHVlcykge1xuICAkb3V0cHV0OiBudWxsO1xuXG4gICRhOiBudGgoJHZhbHVlcywgMSk7XG4gICRiOiBpZihsZW5ndGgoJHZhbHVlcykgPCAyLCAkYSwgbnRoKCR2YWx1ZXMsIDIpKTtcbiAgJGM6IGlmKGxlbmd0aCgkdmFsdWVzKSA8IDMsICRhLCBudGgoJHZhbHVlcywgMykpO1xuICAkZDogaWYobGVuZ3RoKCR2YWx1ZXMpIDwgMiwgJGEsIG50aCgkdmFsdWVzLCBpZihsZW5ndGgoJHZhbHVlcykgPCA0LCAyLCA0KSkpO1xuXG4gIEBpZiAkYSA9PSAwIHsgJGE6IDA7IH1cbiAgQGlmICRiID09IDAgeyAkYjogMDsgfVxuICBAaWYgJGMgPT0gMCB7ICRjOiAwOyB9XG4gIEBpZiAkZCA9PSAwIHsgJGQ6IDA7IH1cblxuICBAaWYgJGEgPT0gJGIgYW5kICRhID09ICRjIGFuZCAkYSA9PSAkZCB7ICRvdXRwdXQ6ICRhOyAgICAgICAgICB9XG4gIEBlbHNlIGlmICRhID09ICRjIGFuZCAkYiA9PSAkZCAgICAgICAgIHsgJG91dHB1dDogJGEgJGI7ICAgICAgIH1cbiAgQGVsc2UgaWYgJGIgPT0gJGQgICAgICAgICAgICAgICAgICAgICAgeyAkb3V0cHV0OiAkYSAkYiAkYzsgICAgfVxuICBAZWxzZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7ICRvdXRwdXQ6ICRhICRiICRjICRkOyB9XG5cbiAgQHJldHVybiAkb3V0cHV0O1xufVxuIiwiQGNoYXJzZXQgXCJVVEYtOFwiO1xuXG4vLyBzY3NzLWxpbnQ6ZGlzYWJsZSBTcGFjZUFyb3VuZE9wZXJhdG9yXG5cbi8vLyBCdWlsZHMgZGlyZWN0aW9uYWwgcHJvcGVydGllcyBieSBwYXJzaW5nIENTUyBzaG9ydGhhbmQgdmFsdWVzLiBGb3IgZXhhbXBsZSxcbi8vLyBhIHZhbHVlIG9mIGAxMHB4IG51bGxgIHdpbGwgb3V0cHV0IHRvcCBhbmQgYm90dG9tIGRpcmVjdGlvbmFsIHByb3BlcnRpZXMsXG4vLy8gYnV0IHRoZSBgbnVsbGAgc2tpcHMgbGVmdCBhbmQgcmlnaHQgZnJvbSBiZWluZyBvdXRwdXQuXG4vLy9cbi8vLyBAYXJndW1lbnQge3N0cmluZ30gJHByb3BlcnR5XG4vLy8gICBCYXNlIHByb3BlcnR5LlxuLy8vXG4vLy8gQGFyZ3VtZW50IHtzdHJpbmd9ICRzdWZmaXhcbi8vLyAgIFN1ZmZpeCB0byBhcHBlbmQuIFVzZSBgbnVsbGAgdG8gb21pdC5cbi8vL1xuLy8vIEBhcmd1bWVudCB7bGlzdH0gJHZhbHVlc1xuLy8vICAgTGlzdCBvZiB2YWx1ZXMgdG8gc2V0IGZvciB0aGUgcHJvcGVydHkuXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzXG4vLy8gICAuZWxlbWVudCB7XG4vLy8gICAgIEBpbmNsdWRlIF9kaXJlY3Rpb25hbC1wcm9wZXJ0eShib3JkZXIsIHdpZHRoLCBudWxsIDVweCk7XG4vLy8gICB9XG4vLy9cbi8vLyAgIC8vIENTUyBPdXRwdXRcbi8vLyAgIC5lbGVtZW50IHtcbi8vLyAgICAgYm9yZGVyLXJpZ2h0LXdpZHRoOiA1cHg7XG4vLy8gICAgIGJvcmRlci1sZWZ0LXdpZHRoOiA1cHg7XG4vLy8gICB9XG4vLy9cbi8vLyBAcmVxdWlyZSB7ZnVuY3Rpb259IF9jb21wYWN0LXNob3J0aGFuZFxuLy8vXG4vLy8gQHJlcXVpcmUge2Z1bmN0aW9ufSBfY29udGFpbnMtZmFsc3lcbi8vL1xuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuXG5AbWl4aW4gX2RpcmVjdGlvbmFsLXByb3BlcnR5KFxuICAkcHJvcGVydHksXG4gICRzdWZmaXgsXG4gICR2YWx1ZXNcbikge1xuICAkdG9wOiAgICAkcHJvcGVydHkgKyBcIi10b3BcIiAgICArIGlmKCRzdWZmaXgsIFwiLSN7JHN1ZmZpeH1cIiwgXCJcIik7XG4gICRib3R0b206ICRwcm9wZXJ0eSArIFwiLWJvdHRvbVwiICsgaWYoJHN1ZmZpeCwgXCItI3skc3VmZml4fVwiLCBcIlwiKTtcbiAgJGxlZnQ6ICAgJHByb3BlcnR5ICsgXCItbGVmdFwiICAgKyBpZigkc3VmZml4LCBcIi0jeyRzdWZmaXh9XCIsIFwiXCIpO1xuICAkcmlnaHQ6ICAkcHJvcGVydHkgKyBcIi1yaWdodFwiICArIGlmKCRzdWZmaXgsIFwiLSN7JHN1ZmZpeH1cIiwgXCJcIik7XG4gICRhbGw6ICAgICRwcm9wZXJ0eSArICAgICAgICAgICAgIGlmKCRzdWZmaXgsIFwiLSN7JHN1ZmZpeH1cIiwgXCJcIik7XG5cbiAgJHZhbHVlczogX2NvbXBhY3Qtc2hvcnRoYW5kKCR2YWx1ZXMpO1xuXG4gIEBpZiBfY29udGFpbnMtZmFsc3koJHZhbHVlcykge1xuICAgIEBpZiBudGgoJHZhbHVlcywgMSkgeyAjeyR0b3B9OiBudGgoJHZhbHVlcywgMSk7IH1cblxuICAgIEBpZiBsZW5ndGgoJHZhbHVlcykgPT0gMSB7XG4gICAgICBAaWYgbnRoKCR2YWx1ZXMsIDEpIHsgI3skcmlnaHR9OiBudGgoJHZhbHVlcywgMSk7IH1cbiAgICB9IEBlbHNlIHtcbiAgICAgIEBpZiBudGgoJHZhbHVlcywgMikgeyAjeyRyaWdodH06IG50aCgkdmFsdWVzLCAyKTsgfVxuICAgIH1cblxuICAgIEBpZiBsZW5ndGgoJHZhbHVlcykgPT0gMiB7XG4gICAgICBAaWYgbnRoKCR2YWx1ZXMsIDEpIHsgI3skYm90dG9tfTogbnRoKCR2YWx1ZXMsIDEpOyB9XG4gICAgICBAaWYgbnRoKCR2YWx1ZXMsIDIpIHsgI3skbGVmdH06IG50aCgkdmFsdWVzLCAyKTsgfVxuICAgIH0gQGVsc2UgaWYgbGVuZ3RoKCR2YWx1ZXMpID09IDMge1xuICAgICAgQGlmIG50aCgkdmFsdWVzLCAzKSB7ICN7JGJvdHRvbX06IG50aCgkdmFsdWVzLCAzKTsgfVxuICAgICAgQGlmIG50aCgkdmFsdWVzLCAyKSB7ICN7JGxlZnR9OiBudGgoJHZhbHVlcywgMik7IH1cbiAgICB9IEBlbHNlIGlmIGxlbmd0aCgkdmFsdWVzKSA9PSA0IHtcbiAgICAgIEBpZiBudGgoJHZhbHVlcywgMykgeyAjeyRib3R0b219OiBudGgoJHZhbHVlcywgMyk7IH1cbiAgICAgIEBpZiBudGgoJHZhbHVlcywgNCkgeyAjeyRsZWZ0fTogbnRoKCR2YWx1ZXMsIDQpOyB9XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICAjeyRhbGx9OiAkdmFsdWVzO1xuICB9XG59XG4iLCJAY2hhcnNldCBcIlVURi04XCI7XG5cbi8vLyBSZXR1cm4gYSBCb3VyYm9uIHNldHRpbmcuXG4vLy9cbi8vLyBAYXJndW1lbnQge3N0cmluZ30gJHNldHRpbmdcbi8vL1xuLy8vIEByZXR1cm4ge2Jvb2xlYW4gfCBjb2xvciB8IGxpc3QgfCBudW1iZXIgfCBzdHJpbmd9XG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzXG4vLy8gICBfZmV0Y2gtYm91cmJvbi1zZXR0aW5nKHJhaWxzLWFzc2V0LXBpcGVsaW5lKVxuLy8vXG4vLy8gQGFjY2VzcyBwcml2YXRlXG5cbkBmdW5jdGlvbiBfZmV0Y2gtYm91cmJvbi1zZXR0aW5nKCRzZXR0aW5nKSB7XG4gIEByZXR1cm4gbWFwLWdldChtYXAtbWVyZ2UoJF9ib3VyYm9uLWRlZmF1bHRzLCAkYm91cmJvbiksICRzZXR0aW5nKTtcbn1cbiIsIkBjaGFyc2V0IFwiVVRGLThcIjtcblxuLy8vIEJ1aWxkcyB0aGUgYHNyY2AgbGlzdCBmb3IgYW4gYEBmb250LWZhY2VgIGRlY2xhcmF0aW9uLlxuLy8vXG4vLy8gQGxpbmsgaHR0cHM6Ly9nb28uZ2wvUnUxYktQXG4vLy9cbi8vLyBAYXJndW1lbnQge3N0cmluZ30gJGZvbnQtZmFtaWx5XG4vLy9cbi8vLyBAYXJndW1lbnQge3N0cmluZ30gJGZpbGUtcGF0aFxuLy8vXG4vLy8gQGFyZ3VtZW50IHtib29sZWFufSAkYXNzZXQtcGlwZWxpbmVcbi8vL1xuLy8vIEBhcmd1bWVudCB7bGlzdH0gJGZpbGUtZm9ybWF0c1xuLy8vXG4vLy8gQHJldHVybiB7bGlzdH1cbi8vL1xuLy8vIEByZXF1aXJlIHtmdW5jdGlvbn0gX2NvbnRhaW5zXG4vLy9cbi8vLyBAYWNjZXNzIHByaXZhdGVcblxuQGZ1bmN0aW9uIF9mb250LXNvdXJjZS1kZWNsYXJhdGlvbihcbiAgJGZvbnQtZmFtaWx5LFxuICAkZmlsZS1wYXRoLFxuICAkYXNzZXQtcGlwZWxpbmUsXG4gICRmaWxlLWZvcm1hdHNcbikge1xuICAkc3JjOiAoKTtcblxuICAkZm9ybWF0cy1tYXA6IChcbiAgICBlb3Q6ICAgXCIjeyRmaWxlLXBhdGh9LmVvdD8jaWVmaXhcIiBmb3JtYXQoXCJlbWJlZGRlZC1vcGVudHlwZVwiKSxcbiAgICB3b2ZmMjogXCIjeyRmaWxlLXBhdGh9LndvZmYyXCIgZm9ybWF0KFwid29mZjJcIiksXG4gICAgd29mZjogIFwiI3skZmlsZS1wYXRofS53b2ZmXCIgZm9ybWF0KFwid29mZlwiKSxcbiAgICB0dGY6ICAgXCIjeyRmaWxlLXBhdGh9LnR0ZlwiIGZvcm1hdChcInRydWV0eXBlXCIpLFxuICAgIHN2ZzogICBcIiN7JGZpbGUtcGF0aH0uc3ZnIyN7JGZvbnQtZmFtaWx5fVwiIGZvcm1hdChcInN2Z1wiKSxcbiAgKTtcblxuICBAZWFjaCAka2V5LCAkdmFsdWVzIGluICRmb3JtYXRzLW1hcCB7XG4gICAgQGlmIF9jb250YWlucygkZmlsZS1mb3JtYXRzLCAka2V5KSB7XG4gICAgICAkZmlsZS1wYXRoOiBudGgoJHZhbHVlcywgMSk7XG4gICAgICAkZm9udC1mb3JtYXQ6IG50aCgkdmFsdWVzLCAyKTtcblxuICAgICAgQGlmICRhc3NldC1waXBlbGluZSA9PSB0cnVlIHtcbiAgICAgICAgJHNyYzogYXBwZW5kKCRzcmMsIGZvbnQtdXJsKCRmaWxlLXBhdGgpICRmb250LWZvcm1hdCwgY29tbWEpO1xuICAgICAgfSBAZWxzZSB7XG4gICAgICAgICRzcmM6IGFwcGVuZCgkc3JjLCB1cmwoJGZpbGUtcGF0aCkgJGZvbnQtZm9ybWF0LCBjb21tYSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQHJldHVybiAkc3JjO1xufVxuIiwiQGNoYXJzZXQgXCJVVEYtOFwiO1xuXG4vLy8gUGVyZm9ybXMgZ2FtbWEgY29ycmVjdGlvbiBvbiBhIHNpbmdsZSBjb2xvciBjaGFubmVsLlxuLy8vXG4vLy8gTm90ZSB0aGF0IFNhc3MgZG9lcyBub3QgaGF2ZSBhIGBwb3coKWAgZnVuY3Rpb24sIHNvIHRoZSBjYWxjdWxhdGlvblxuLy8vIGlzIGFwcHJveGltYXRlLlxuLy8vXG4vLy8gQGFyZ3VtZW50IHtudW1iZXIgKDAtMSl9ICRjaGFubmVsXG4vLy9cbi8vLyBAcmV0dXJuIHtudW1iZXIgKDAtMSl9XG4vLy9cbi8vLyBAYWNjZXNzIHByaXZhdGVcblxuQGZ1bmN0aW9uIF9nYW1tYSgkY2hhbm5lbCkge1xuICBAaWYgJGNoYW5uZWwgPCAwLjAzOTI4IHtcbiAgICBAcmV0dXJuICRjaGFubmVsIC8gMTIuOTI7XG4gIH0gQGVsc2Uge1xuICAgICRjOiAoJGNoYW5uZWwgKyAwLjA1NSkgLyAxLjA1NTtcbiAgICBAcmV0dXJuICgxMzMgKiAkYyAqICRjICogJGMgKyAxNTUgKiAkYyAqICRjKSAvIDI4ODtcbiAgfVxufVxuIiwiQGNoYXJzZXQgXCJVVEYtOFwiO1xuXG4vLy8gUHJvZ3JhbWF0aWNhbGx5IGRldGVybWluZXMgdGhlIGxpZ2h0bmVzcyBvZiBhIGNvbG9yLlxuLy8vXG4vLy8gQGFyZ3VtZW50IHtjb2xvciAoaGV4KX0gJGhleC1jb2xvclxuLy8vXG4vLy8gQHJldHVybiB7bnVtYmVyICgwLTEpfVxuLy8vXG4vLy8gQGV4YW1wbGUgc2Nzc1xuLy8vICAgX2xpZ2h0bmVzcygkY29sb3IpXG4vLy9cbi8vLyBAYWNjZXNzIHByaXZhdGVcblxuQGZ1bmN0aW9uIF9saWdodG5lc3MoJGhleC1jb2xvcikge1xuICAkLWxvY2FsLXJlZC1yYXc6IHJlZChyZ2JhKCRoZXgtY29sb3IsIDEpKTtcbiAgJC1sb2NhbC1ncmVlbi1yYXc6IGdyZWVuKHJnYmEoJGhleC1jb2xvciwgMSkpO1xuICAkLWxvY2FsLWJsdWUtcmF3OiBibHVlKHJnYmEoJGhleC1jb2xvciwgMSkpO1xuXG4gICQtbG9jYWwtcmVkOiBfZ2FtbWEoJC1sb2NhbC1yZWQtcmF3IC8gMjU1KTtcbiAgJC1sb2NhbC1ncmVlbjogX2dhbW1hKCQtbG9jYWwtZ3JlZW4tcmF3IC8gMjU1KTtcbiAgJC1sb2NhbC1ibHVlOiBfZ2FtbWEoJC1sb2NhbC1ibHVlLXJhdyAvIDI1NSk7XG5cbiAgQHJldHVybiAkLWxvY2FsLXJlZCAqIDAuMjEyNiArICQtbG9jYWwtZ3JlZW4gKiAwLjcxNTIgKyAkLWxvY2FsLWJsdWUgKiAwLjA3MjI7XG59XG4iLCJAY2hhcnNldCBcIlVURi04XCI7XG5cbi8vLyBQcm9ncmFtYXRpY2FsbHkgZGV0ZXJtaW5lcyB0aGUgY29udHJhc3QgcmF0aW8gYmV0d2VlbiB0d28gY29sb3JzLlxuLy8vXG4vLy8gTm90ZSB0aGF0IHRoZSBhbHBoYSBjaGFubmVsIGlzIGlnbm9yZWQuXG4vLy9cbi8vLyBAbGluayBodHRwczovL2dvby5nbC81NGh0TFZcbi8vL1xuLy8vIEBhcmd1bWVudCB7Y29sb3IgKGhleCl9ICRjb2xvci0xXG4vLy9cbi8vLyBAYXJndW1lbnQge2NvbG9yIChoZXgpfSAkY29sb3ItMlxuLy8vXG4vLy8gQHJldHVybiB7bnVtYmVyICgxLTIxKX1cbi8vL1xuLy8vIEBleGFtcGxlIHNjc3Ncbi8vLyAgIF9jb250cmFzdC1yYXRpbyhibGFjaywgd2hpdGUpXG4vLy9cbi8vLyBAcmVxdWlyZSB7ZnVuY3Rpb259IF9saWdodG5lc3Ncbi8vL1xuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuXG5AZnVuY3Rpb24gX2NvbnRyYXN0LXJhdGlvKCRjb2xvci0xLCAkY29sb3ItMikge1xuICAkLWxvY2FsLWxpZ2h0bmVzcy0xOiBfbGlnaHRuZXNzKCRjb2xvci0xKSArIDAuMDU7XG4gICQtbG9jYWwtbGlnaHRuZXNzLTI6IF9saWdodG5lc3MoJGNvbG9yLTIpICsgMC4wNTtcblxuICBAaWYgJC1sb2NhbC1saWdodG5lc3MtMSA+ICQtbG9jYWwtbGlnaHRuZXNzLTIge1xuICAgIEByZXR1cm4gJC1sb2NhbC1saWdodG5lc3MtMSAvICQtbG9jYWwtbGlnaHRuZXNzLTI7XG4gIH0gQGVsc2Uge1xuICAgIEByZXR1cm4gJC1sb2NhbC1saWdodG5lc3MtMiAvICQtbG9jYWwtbGlnaHRuZXNzLTE7XG4gIH1cbn1cbiIsIkBjaGFyc2V0IFwiVVRGLThcIjtcblxuLy8vIFRyYW5zZm9ybXMgc2hvcnRoYW5kIHRoYXQgY2FuIHJhbmdlIGZyb20gMS10by00IHZhbHVlcyB0byBiZSA0IHZhbHVlcy5cbi8vL1xuLy8vIEBhcmd1bWVudCB7bGlzdH0gJHNob3J0aGFuZFxuLy8vXG4vLy8gQGV4YW1wbGUgc2Nzc1xuLy8vICAgLmVsZW1lbnQge1xuLy8vICAgICBtYXJnaW46IF91bnBhY2stc2hvcnRoYW5kKDFlbSAyZW0pO1xuLy8vICAgfVxuLy8vXG4vLy8gICAvLyBDU1MgT3V0cHV0XG4vLy8gICAuZWxlbWVudCB7XG4vLy8gICAgIG1hcmdpbjogMWVtIDJlbSAxZW0gMmVtO1xuLy8vICAgfVxuLy8vXG4vLy8gQGFjY2VzcyBwcml2YXRlXG5cbkBmdW5jdGlvbiBfdW5wYWNrLXNob3J0aGFuZCgkc2hvcnRoYW5kKSB7XG4gIEBpZiBsZW5ndGgoJHNob3J0aGFuZCkgPT0gMSB7XG4gICAgQHJldHVybiBudGgoJHNob3J0aGFuZCwgMSkgbnRoKCRzaG9ydGhhbmQsIDEpIG50aCgkc2hvcnRoYW5kLCAxKSBudGgoJHNob3J0aGFuZCwgMSk7XG4gIH0gQGVsc2UgaWYgbGVuZ3RoKCRzaG9ydGhhbmQpID09IDIge1xuICAgIEByZXR1cm4gbnRoKCRzaG9ydGhhbmQsIDEpIG50aCgkc2hvcnRoYW5kLCAyKSBudGgoJHNob3J0aGFuZCwgMSkgbnRoKCRzaG9ydGhhbmQsIDIpO1xuICB9IEBlbHNlIGlmIGxlbmd0aCgkc2hvcnRoYW5kKSA9PSAzIHtcbiAgICBAcmV0dXJuIG50aCgkc2hvcnRoYW5kLCAxKSBudGgoJHNob3J0aGFuZCwgMikgbnRoKCRzaG9ydGhhbmQsIDMpIG50aCgkc2hvcnRoYW5kLCAyKTtcbiAgfSBAZWxzZSB7XG4gICAgQHJldHVybiAkc2hvcnRoYW5kO1xuICB9XG59XG4iLCJAY2hhcnNldCBcIlVURi04XCI7XG5cbi8vLyBQcm92aWRlcyBhIGNvbmNpc2UsIG9uZS1saW5lIG1ldGhvZCBmb3Igc2V0dGluZyBgYm9yZGVyLWNvbG9yYCBvbiBzcGVjaWZpY1xuLy8vIGVkZ2VzIG9mIGEgYm94LiBVc2UgYSBgbnVsbGAgdmFsdWUgdG8g4oCcc2tpcOKAnSBlZGdlcyBvZiB0aGUgYm94IHdpdGggc3RhbmRhcmRcbi8vLyBDU1Mgc2hvcnRoYW5kLlxuLy8vXG4vLy8gQGFyZ3VtZW50IHtsaXN0fSAkdmFsdWVzXG4vLy8gICBMaXN0IG9mIGNvbG9yczsgYWNjZXB0cyBDU1Mgc2hvcnRoYW5kLlxuLy8vXG4vLy8gQGV4YW1wbGUgc2Nzc1xuLy8vICAgLmVsZW1lbnQge1xuLy8vICAgICBAaW5jbHVkZSBib3JkZXItY29sb3IoI2E2MGI1NSAjNzZjZDljIG51bGwgI2U4YWUxYSk7XG4vLy8gICB9XG4vLy9cbi8vLyAgIC8vIENTUyBPdXRwdXRcbi8vLyAgIC5lbGVtZW50IHtcbi8vLyAgICAgYm9yZGVyLWxlZnQtY29sb3I6ICNlOGFlMWE7XG4vLy8gICAgIGJvcmRlci1yaWdodC1jb2xvcjogIzc2Y2Q5Yztcbi8vLyAgICAgYm9yZGVyLXRvcC1jb2xvcjogI2E2MGI1NTtcbi8vLyAgIH1cbi8vL1xuLy8vIEByZXF1aXJlIHttaXhpbn0gX2RpcmVjdGlvbmFsLXByb3BlcnR5XG5cbkBtaXhpbiBib3JkZXItY29sb3IoJHZhbHVlcykge1xuICBAaW5jbHVkZSBfZGlyZWN0aW9uYWwtcHJvcGVydHkoYm9yZGVyLCBjb2xvciwgJHZhbHVlcyk7XG59XG4iLCJAY2hhcnNldCBcIlVURi04XCI7XG5cbi8vLyBQcm92aWRlcyBhIGNvbmNpc2UsIG9uZS1saW5lIG1ldGhvZCBmb3Igc2V0dGluZyBgYm9yZGVyLXJhZGl1c2Agb24gYm90aCB0aGVcbi8vLyB0b3AtbGVmdCBhbmQgdG9wLXJpZ2h0IG9mIGEgYm94LlxuLy8vXG4vLy8gQGFyZ3VtZW50IHtudW1iZXIgKHdpdGggdW5pdCl9ICRyYWRpaVxuLy8vXG4vLy8gQGV4YW1wbGUgc2Nzc1xuLy8vICAgLmVsZW1lbnQge1xuLy8vICAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cyg0cHgpO1xuLy8vICAgfVxuLy8vXG4vLy8gICAvLyBDU1MgT3V0cHV0XG4vLy8gICAuZWxlbWVudCB7XG4vLy8gICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDRweDtcbi8vLyAgICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDRweDtcbi8vLyAgIH1cblxuQG1peGluIGJvcmRlci10b3AtcmFkaXVzKCRyYWRpaSkge1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAkcmFkaWk7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAkcmFkaWk7XG59XG5cbi8vLyBQcm92aWRlcyBhIGNvbmNpc2UsIG9uZS1saW5lIG1ldGhvZCBmb3Igc2V0dGluZyBgYm9yZGVyLXJhZGl1c2Agb24gYm90aCB0aGVcbi8vLyB0b3AtcmlnaHQgYW5kIGJvdHRvbS1yaWdodCBvZiBhIGJveC5cbi8vL1xuLy8vIEBhcmd1bWVudCB7bnVtYmVyICh3aXRoIHVuaXQpfSAkcmFkaWlcbi8vL1xuLy8vIEBleGFtcGxlIHNjc3Ncbi8vLyAgIC5lbGVtZW50IHtcbi8vLyAgICAgQGluY2x1ZGUgYm9yZGVyLXJpZ2h0LXJhZGl1cygzcHgpO1xuLy8vICAgfVxuLy8vXG4vLy8gICAvLyBDU1MgT3V0cHV0XG4vLy8gICAuZWxlbWVudCB7XG4vLy8gICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAzcHg7XG4vLy8gICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAzcHg7XG4vLy8gICB9XG5cbkBtaXhpbiBib3JkZXItcmlnaHQtcmFkaXVzKCRyYWRpaSkge1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogJHJhZGlpO1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogJHJhZGlpO1xufVxuXG4vLy8gUHJvdmlkZXMgYSBjb25jaXNlLCBvbmUtbGluZSBtZXRob2QgZm9yIHNldHRpbmcgYGJvcmRlci1yYWRpdXNgIG9uIGJvdGggdGhlXG4vLy8gYm90dG9tLWxlZnQgYW5kIGJvdHRvbS1yaWdodCBvZiBhIGJveC5cbi8vL1xuLy8vIEBhcmd1bWVudCB7bnVtYmVyICh3aXRoIHVuaXQpfSAkcmFkaWlcbi8vL1xuLy8vIEBleGFtcGxlIHNjc3Ncbi8vLyAgIC5lbGVtZW50IHtcbi8vLyAgICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoMnB4KTtcbi8vLyAgIH1cbi8vL1xuLy8vICAgLy8gQ1NTIE91dHB1dFxuLy8vICAgLmVsZW1lbnQge1xuLy8vICAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAycHg7XG4vLy8gICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAycHg7XG4vLy8gICB9XG5cbkBtaXhpbiBib3JkZXItYm90dG9tLXJhZGl1cygkcmFkaWkpIHtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogJHJhZGlpO1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogJHJhZGlpO1xufVxuXG4vLy8gUHJvdmlkZXMgYSBjb25jaXNlLCBvbmUtbGluZSBtZXRob2QgZm9yIHNldHRpbmcgYGJvcmRlci1yYWRpdXNgIG9uIGJvdGggdGhlXG4vLy8gdG9wLWxlZnQgYW5kIGJvdHRvbS1sZWZ0IG9mIGEgYm94LlxuLy8vXG4vLy8gQGFyZ3VtZW50IHtudW1iZXIgKHdpdGggdW5pdCl9ICRyYWRpaVxuLy8vXG4vLy8gQGV4YW1wbGUgc2Nzc1xuLy8vICAgLmVsZW1lbnQge1xuLy8vICAgICBAaW5jbHVkZSBib3JkZXItbGVmdC1yYWRpdXMoMXB4KTtcbi8vLyAgIH1cbi8vL1xuLy8vICAgLy8gQ1NTIE91dHB1dFxuLy8vICAgLmVsZW1lbnQge1xuLy8vICAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAxcHg7XG4vLy8gICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDFweDtcbi8vLyAgIH1cblxuQG1peGluIGJvcmRlci1sZWZ0LXJhZGl1cygkcmFkaWkpIHtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogJHJhZGlpO1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAkcmFkaWk7XG59XG4iLCJAY2hhcnNldCBcIlVURi04XCI7XG5cbi8vLyBQcm92aWRlcyBhIGNvbmNpc2UsIG9uZS1saW5lIG1ldGhvZCBmb3Igc2V0dGluZyBgYm9yZGVyLXN0eWxlYCBvbiBzcGVjaWZpY1xuLy8vIGVkZ2VzIG9mIGEgYm94LiBVc2UgYSBgbnVsbGAgdmFsdWUgdG8g4oCcc2tpcOKAnSBlZGdlcyBvZiB0aGUgYm94IHdpdGggc3RhbmRhcmRcbi8vLyBDU1Mgc2hvcnRoYW5kLlxuLy8vXG4vLy8gQGFyZ3VtZW50IHtsaXN0fSAkdmFsdWVzXG4vLy8gICBMaXN0IG9mIGJvcmRlciBzdHlsZXM7IGFjY2VwdHMgQ1NTIHNob3J0aGFuZC5cbi8vL1xuLy8vIEBleGFtcGxlIHNjc3Ncbi8vLyAgIC5lbGVtZW50IHtcbi8vLyAgICAgQGluY2x1ZGUgYm9yZGVyLXN0eWxlKGRhc2hlZCBudWxsIHNvbGlkKTtcbi8vLyAgIH1cbi8vL1xuLy8vICAgLy8gQ1NTIE91dHB1dFxuLy8vICAgLmVsZW1lbnQge1xuLy8vICAgICBib3JkZXItYm90dG9tLXN0eWxlOiBzb2xpZDtcbi8vLyAgICAgYm9yZGVyLXRvcC1zdHlsZTogZGFzaGVkO1xuLy8vICAgfVxuLy8vXG4vLy8gQHJlcXVpcmUge21peGlufSBfZGlyZWN0aW9uYWwtcHJvcGVydHlcblxuQG1peGluIGJvcmRlci1zdHlsZSgkdmFsdWVzKSB7XG4gIEBpbmNsdWRlIF9kaXJlY3Rpb25hbC1wcm9wZXJ0eShib3JkZXIsIHN0eWxlLCAkdmFsdWVzKTtcbn1cbiIsIkBjaGFyc2V0IFwiVVRGLThcIjtcblxuLy8vIFByb3ZpZGVzIGEgY29uY2lzZSwgb25lLWxpbmUgbWV0aG9kIGZvciBzZXR0aW5nIGBib3JkZXItd2lkdGhgIG9uIHNwZWNpZmljXG4vLy8gZWRnZXMgb2YgYSBib3guIFVzZSBhIGBudWxsYCB2YWx1ZSB0byDigJxza2lw4oCdIGVkZ2VzIG9mIHRoZSBib3ggd2l0aCBzdGFuZGFyZFxuLy8vIENTUyBzaG9ydGhhbmQuXG4vLy9cbi8vLyBAYXJndW1lbnQge2xpc3R9ICR2YWx1ZXNcbi8vLyAgIExpc3Qgb2YgYm9yZGVyIHdpZHRoczsgYWNjZXB0cyBDU1Mgc2hvcnRoYW5kLlxuLy8vXG4vLy8gQGV4YW1wbGUgc2Nzc1xuLy8vICAgLmVsZW1lbnQge1xuLy8vICAgICBAaW5jbHVkZSBib3JkZXItd2lkdGgoMWVtIG51bGwgMjBweCk7XG4vLy8gICB9XG4vLy9cbi8vLyAgIC8vIENTUyBPdXRwdXRcbi8vLyAgIC5lbGVtZW50IHtcbi8vLyAgICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMjBweDtcbi8vLyAgICAgYm9yZGVyLXRvcC13aWR0aDogMWVtO1xuLy8vICAgfVxuLy8vXG4vLy8gQHJlcXVpcmUge21peGlufSBfZGlyZWN0aW9uYWwtcHJvcGVydHlcblxuQG1peGluIGJvcmRlci13aWR0aCgkdmFsdWVzKSB7XG4gIEBpbmNsdWRlIF9kaXJlY3Rpb25hbC1wcm9wZXJ0eShib3JkZXIsIHdpZHRoLCAkdmFsdWVzKTtcbn1cbiIsIkBjaGFyc2V0IFwiVVRGLThcIjtcblxuLy8vL1xuLy8vIEB0eXBlIGxpc3Rcbi8vL1xuLy8vIEByZXF1aXJlIHtmdW5jdGlvbn0gX2Fzc2lnbi1pbnB1dHNcbi8vL1xuLy8vIEByZXF1aXJlIHt2YXJpYWJsZX0gJF9idXR0b25zLWxpc3Rcbi8vLy9cblxuLy8vIEEgbGlzdCBvZiBhbGwgSFRNTCBidXR0b24gZWxlbWVudHMuIFBsZWFzZSBub3RlIHRoYXQgeW91IG11c3QgaW50ZXJwb2xhdGVcbi8vLyB0aGUgdmFyaWFibGUgKGAje31gKSB0byB1c2UgaXQgYXMgYSBzZWxlY3Rvci5cbi8vL1xuLy8vIEBleGFtcGxlIHNjc3Ncbi8vLyAgICN7JGFsbC1idXR0b25zfSB7XG4vLy8gICAgIGJhY2tncm91bmQtY29sb3I6ICNmMDA7XG4vLy8gICB9XG4vLy9cbi8vLyAgIC8vIENTUyBPdXRwdXRcbi8vLyAgIGJ1dHRvbixcbi8vLyAgIFt0eXBlPSdidXR0b24nXSxcbi8vLyAgIFt0eXBlPSdyZXNldCddLFxuLy8vICAgW3R5cGU9J3N1Ym1pdCddIHtcbi8vLyAgICAgYmFja2dyb3VuZC1jb2xvcjogI2YwMDtcbi8vLyAgIH1cblxuJGFsbC1idXR0b25zOiBfYXNzaWduLWlucHV0cygkX2J1dHRvbnMtbGlzdCk7XG5cbi8vLyBBIGxpc3Qgb2YgYWxsIEhUTUwgYnV0dG9uIGVsZW1lbnRzIHdpdGggdGhlIGA6YWN0aXZlYCBwc2V1ZG8tY2xhc3MgYXBwbGllZC5cbi8vLyBQbGVhc2Ugbm90ZSB0aGF0IHlvdSBtdXN0IGludGVycG9sYXRlIHRoZSB2YXJpYWJsZSAoYCN7fWApIHRvIHVzZSBpdCBhcyBhXG4vLy8gc2VsZWN0b3IuXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzXG4vLy8gICAjeyRhbGwtYnV0dG9ucy1hY3RpdmV9IHtcbi8vLyAgICAgYmFja2dyb3VuZC1jb2xvcjogIzAwZjtcbi8vLyAgIH1cbi8vL1xuLy8vICAgLy8gQ1NTIE91dHB1dFxuLy8vICAgYnV0dG9uOmFjdGl2ZSxcbi8vLyAgIFt0eXBlPSdidXR0b24nXTphY3RpdmUsXG4vLy8gICBbdHlwZT0ncmVzZXQnXTphY3RpdmUsXG4vLy8gICBbdHlwZT0nc3VibWl0J106YWN0aXZlIHtcbi8vLyAgICAgYmFja2dyb3VuZC1jb2xvcjogIzAwZjtcbi8vLyAgIH1cblxuJGFsbC1idXR0b25zLWFjdGl2ZTogX2Fzc2lnbi1pbnB1dHMoJF9idXR0b25zLWxpc3QsIGFjdGl2ZSk7XG5cbi8vLyBBIGxpc3Qgb2YgYWxsIEhUTUwgYnV0dG9uIGVsZW1lbnRzIHdpdGggdGhlIGA6Zm9jdXNgIHBzZXVkby1jbGFzcyBhcHBsaWVkLlxuLy8vIFBsZWFzZSBub3RlIHRoYXQgeW91IG11c3QgaW50ZXJwb2xhdGUgdGhlIHZhcmlhYmxlIChgI3t9YCkgdG8gdXNlIGl0IGFzIGFcbi8vLyBzZWxlY3Rvci5cbi8vL1xuLy8vIEBleGFtcGxlIHNjc3Ncbi8vLyAgICN7JGFsbC1idXR0b25zLWZvY3VzfSB7XG4vLy8gICAgIGJhY2tncm91bmQtY29sb3I6ICMwZjA7XG4vLy8gICB9XG4vLy9cbi8vLyAgIC8vIENTUyBPdXRwdXRcbi8vLyAgIGJ1dHRvbjpmb2N1cyxcbi8vLyAgIFt0eXBlPSdidXR0b24nXTpmb2N1cyxcbi8vLyAgIFt0eXBlPSdyZXNldCddOmZvY3VzLFxuLy8vICAgW3R5cGU9J3N1Ym1pdCddOmZvY3VzIHtcbi8vLyAgICAgYmFja2dyb3VuZC1jb2xvcjogIzBmMDtcbi8vLyAgIH1cblxuJGFsbC1idXR0b25zLWZvY3VzOiBfYXNzaWduLWlucHV0cygkX2J1dHRvbnMtbGlzdCwgZm9jdXMpO1xuXG4vLy8gQSBsaXN0IG9mIGFsbCBIVE1MIGJ1dHRvbiBlbGVtZW50cyB3aXRoIHRoZSBgOmhvdmVyYCBwc2V1ZG8tY2xhc3MgYXBwbGllZC5cbi8vLyBQbGVhc2Ugbm90ZSB0aGF0IHlvdSBtdXN0IGludGVycG9sYXRlIHRoZSB2YXJpYWJsZSAoYCN7fWApIHRvIHVzZSBpdCBhcyBhXG4vLy8gc2VsZWN0b3IuXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzXG4vLy8gICAjeyRhbGwtYnV0dG9ucy1ob3Zlcn0ge1xuLy8vICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGYwO1xuLy8vICAgfVxuLy8vXG4vLy8gICAvLyBDU1MgT3V0cHV0XG4vLy8gICBidXR0b246aG92ZXIsXG4vLy8gICBbdHlwZT0nYnV0dG9uJ106aG92ZXIsXG4vLy8gICBbdHlwZT0ncmVzZXQnXTpob3Zlcixcbi8vLyAgIFt0eXBlPSdzdWJtaXQnXTpob3ZlciB7XG4vLy8gICAgIGJhY2tncm91bmQtY29sb3I6ICMwZjA7XG4vLy8gICB9XG5cbiRhbGwtYnV0dG9ucy1ob3ZlcjogX2Fzc2lnbi1pbnB1dHMoJF9idXR0b25zLWxpc3QsIGhvdmVyKTtcbiIsIkBjaGFyc2V0IFwiVVRGLThcIjtcblxuLy8vIFByb3ZpZGVzIGFuIGVhc3kgd2F5IHRvIGluY2x1ZGUgYSBjbGVhcmZpeCBmb3IgY29udGFpbmluZyBmbG9hdHMuXG4vLy9cbi8vLyBAbGluayBodHRwczovL2dvby5nbC95UDVoaVpcbi8vL1xuLy8vIEBleGFtcGxlIHNjc3Ncbi8vLyAgIC5lbGVtZW50IHtcbi8vLyAgICAgQGluY2x1ZGUgY2xlYXJmaXg7XG4vLy8gICB9XG4vLy9cbi8vLyAgIC8vIENTUyBPdXRwdXRcbi8vLyAgIC5lbGVtZW50OjphZnRlciB7XG4vLy8gICAgIGNsZWFyOiBib3RoO1xuLy8vICAgICBjb250ZW50OiBcIlwiO1xuLy8vICAgICBkaXNwbGF5OiBibG9jaztcbi8vLyAgIH1cblxuQG1peGluIGNsZWFyZml4IHtcbiAgJjo6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cbiIsIkBjaGFyc2V0IFwiVVRGLThcIjtcblxuLy8vIFN3aXRjaGVzIGJldHdlZW4gdHdvIGNvbG9ycyBiYXNlZCBvbiB0aGUgY29udHJhc3QgdG8gYW5vdGhlciBjb2xvci4gSXTigJlzXG4vLy8gbGlrZSBhIFt0ZXJuYXJ5IG9wZXJhdG9yXSBmb3IgY29sb3IgY29udHJhc3QgYW5kIGNhbiBiZSB1c2VmdWwgZm9yIGJ1aWxkaW5nXG4vLy8gYSBidXR0b24gc3lzdGVtLlxuLy8vXG4vLy8gVGhlIGNhbGN1bGF0aW9uIG9mIHRoZSBjb250cmFzdCByYXRpbyBpcyBiYXNlZCBvbiB0aGUgW1dDQUcgMi4wXG4vLy8gc3BlY2lmaWNhdGlvbl0uIEhvd2V2ZXIsIHdlIGNhbm5vdCBndWFyYW50ZWUgZnVsbCBjb21wbGlhbmNlLCB0aG91Z2ggYWxsIG9mXG4vLy8gb3VyIG1hbnVhbCB0ZXN0aW5nIHBhc3NlZC5cbi8vL1xuLy8vICAgW3Rlcm5hcnkgb3BlcmF0b3JdOiBodHRwczovL2dvby5nbC9jY2ZMcWlcbi8vLyAgIFtXQ0FHIDIuMCBzcGVjaWZpY2F0aW9uXTogaHR0cHM6Ly9nb28uZ2wvemhRdVlBXG4vLy9cbi8vLyBAYXJndW1lbnQge2NvbG9yfSAkYmFzZS1jb2xvclxuLy8vICAgVGhlIGNvbG9yIHRvIGV2YWx1YXRlIGxpZ2h0bmVzcyBhZ2FpbnN0LlxuLy8vXG4vLy8gQGFyZ3VtZW50IHtjb2xvcn0gJGRhcmstY29sb3IgWyMwMDBdXG4vLy8gICBUaGUgY29sb3IgdG8gYmUgb3V0cHV0IHdoZW4gYCRiYXNlLWNvbG9yYCBpcyBsaWdodC4gQ2FuIGFsc28gYmUgc2V0XG4vLy8gICBnbG9iYWxseSB1c2luZyB0aGUgYGNvbnRyYXN0LXN3aXRjaC1kYXJrLWNvbG9yYCBrZXkgaW4gdGhlXG4vLy8gICBCb3VyYm9uIHNldHRpbmdzLlxuLy8vXG4vLy8gQGFyZ3VtZW50IHtjb2xvcn0gJGxpZ2h0LWNvbG9yIFsjZmZmXVxuLy8vICAgVGhlIGNvbG9yIHRvIGJlIG91dHB1dCB3aGVuIGAkYmFzZS1jb2xvcmAgaXMgZGFyay4gQ2FuIGFsc28gYmUgc2V0XG4vLy8gICBnbG9iYWxseSB1c2luZyB0aGUgYGNvbnRyYXN0LXN3aXRjaC1saWdodC1jb2xvcmAga2V5IGluIHRoZVxuLy8vICAgQm91cmJvbiBzZXR0aW5ncy5cbi8vL1xuLy8vIEByZXR1cm4ge2NvbG9yfVxuLy8vXG4vLy8gQGV4YW1wbGUgc2Nzc1xuLy8vICAgLmVsZW1lbnQge1xuLy8vICAgICBjb2xvcjogY29udHJhc3Qtc3dpdGNoKCNiYWU2ZTYpO1xuLy8vICAgfVxuLy8vXG4vLy8gICAvLyBDU1MgT3V0cHV0XG4vLy8gICAuZWxlbWVudCB7XG4vLy8gICAgIGNvbG9yOiAjMDAwO1xuLy8vICAgfVxuLy8vXG4vLy8gQGV4YW1wbGUgc2Nzc1xuLy8vICAgLmVsZW1lbnQge1xuLy8vICAgICAkYnV0dG9uLWNvbG9yOiAjMmQ3MmQ5O1xuLy8vICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnV0dG9uLWNvbG9yO1xuLy8vICAgICBjb2xvcjogY29udHJhc3Qtc3dpdGNoKCRidXR0b24tY29sb3IsICMyMjIsICNlZWUpO1xuLy8vICAgfVxuLy8vXG4vLy8gICAvLyBDU1MgT3V0cHV0XG4vLy8gICAuZWxlbWVudCB7XG4vLy8gICAgIGJhY2tncm91bmQtY29sb3I6ICMyZDcyZDk7XG4vLy8gICAgIGNvbG9yOiAjZWVlO1xuLy8vICAgfVxuLy8vXG4vLy8gQHJlcXVpcmUge2Z1bmN0aW9ufSBfZmV0Y2gtYm91cmJvbi1zZXR0aW5nXG4vLy9cbi8vLyBAcmVxdWlyZSB7ZnVuY3Rpb259IF9pcy1jb2xvclxuLy8vXG4vLy8gQHJlcXVpcmUge2Z1bmN0aW9ufSBfY29udHJhc3QtcmF0aW9cbi8vL1xuLy8vIEBzaW5jZSA1LjAuMFxuXG5AZnVuY3Rpb24gY29udHJhc3Qtc3dpdGNoKFxuICAkYmFzZS1jb2xvcixcbiAgJGRhcmstY29sb3I6IF9mZXRjaC1ib3VyYm9uLXNldHRpbmcoXCJjb250cmFzdC1zd2l0Y2gtZGFyay1jb2xvclwiKSxcbiAgJGxpZ2h0LWNvbG9yOiBfZmV0Y2gtYm91cmJvbi1zZXR0aW5nKFwiY29udHJhc3Qtc3dpdGNoLWxpZ2h0LWNvbG9yXCIpXG4pIHtcbiAgQGlmIG5vdCBfaXMtY29sb3IoJGJhc2UtY29sb3IpIHtcbiAgICBAZXJyb3IgXCJgI3skYmFzZS1jb2xvcn1gIGlzIG5vdCBhIHZhbGlkIGNvbG9yIGZvciB0aGUgYCRiYXNlLWNvbG9yYCBcIiArXG4gICAgICAgICAgIFwiYXJndW1lbnQgaW4gdGhlIGBjb250cmFzdC1zd2l0Y2hgIGZ1bmN0aW9uLlwiO1xuICB9IEBlbHNlIGlmIG5vdCBfaXMtY29sb3IoJGRhcmstY29sb3IpIHtcbiAgICBAZXJyb3IgXCJgI3skZGFyay1jb2xvcn1gIGlzIG5vdCBhIHZhbGlkIGNvbG9yIGZvciB0aGUgYCRkYXJrLWNvbG9yYCBcIiArXG4gICAgICAgICAgIFwiYXJndW1lbnQgaW4gdGhlIGBjb250cmFzdC1zd2l0Y2hgIGZ1bmN0aW9uLlwiO1xuICB9IEBlbHNlIGlmIG5vdCBfaXMtY29sb3IoJGxpZ2h0LWNvbG9yKSB7XG4gICAgQGVycm9yIFwiYCN7JGxpZ2h0LWNvbG9yfWAgaXMgbm90IGEgdmFsaWQgY29sb3IgZm9yIHRoZSBgJGxpZ2h0LWNvbG9yYCBcIiArXG4gICAgICAgICAgIFwiYXJndW1lbnQgaW4gdGhlIGBjb250cmFzdC1zd2l0Y2hgIGZ1bmN0aW9uLlwiO1xuICB9IEBlbHNlIHtcbiAgICAkLWNvbnRyYXN0LXRvLWRhcms6IF9jb250cmFzdC1yYXRpbygkYmFzZS1jb2xvciwgJGRhcmstY29sb3IpO1xuICAgICQtY29udHJhc3QtdG8tbGlnaHQ6IF9jb250cmFzdC1yYXRpbygkYmFzZS1jb2xvciwgJGxpZ2h0LWNvbG9yKTtcbiAgICAkLXByZWZlci1kYXJrOiAkLWNvbnRyYXN0LXRvLWRhcmsgPj0gJC1jb250cmFzdC10by1saWdodDtcblxuICAgIEByZXR1cm4gaWYoJC1wcmVmZXItZGFyaywgJGRhcmstY29sb3IsICRsaWdodC1jb2xvcik7XG4gIH1cbn1cbiIsIkBjaGFyc2V0IFwiVVRGLThcIjtcblxuLy8vIFRydW5jYXRlcyB0ZXh0IGFuZCBhZGRzIGFuIGVsbGlwc2lzIHRvIHJlcHJlc2VudCBvdmVyZmxvdy5cbi8vL1xuLy8vIEBhcmd1bWVudCB7bnVtYmVyfSAkd2lkdGggWzEwMCVdXG4vLy8gICBUaGUgYG1heC13aWR0aGAgZm9yIHRoZSBzdHJpbmcgdG8gcmVzcGVjdCBiZWZvcmUgYmVpbmcgdHJ1bmNhdGVkLlxuLy8vXG4vLy8gQGFyZ3VtZW50IHtzdHJpbmd9ICRkaXNwbGF5IFtpbmxpbmUtYmxvY2tdXG4vLy8gICBTZXRzIHRoZSBkaXNwbGF5LXZhbHVlIG9mIHRoZSBlbGVtZW50LlxuLy8vXG4vLy8gQGV4YW1wbGUgc2Nzc1xuLy8vICAgLmVsZW1lbnQge1xuLy8vICAgICBAaW5jbHVkZSBlbGxpcHNpcztcbi8vLyAgIH1cbi8vL1xuLy8vICAgLy8gQ1NTIE91dHB1dFxuLy8vICAgLmVsZW1lbnQge1xuLy8vICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4vLy8gICAgIG1heC13aWR0aDogMTAwJTtcbi8vLyAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbi8vLyAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4vLy8gICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4vLy8gICAgIHdvcmQtd3JhcDogbm9ybWFsO1xuLy8vICAgfVxuXG5AbWl4aW4gZWxsaXBzaXMoXG4gICR3aWR0aDogMTAwJSxcbiAgJGRpc3BsYXk6IGlubGluZS1ibG9ja1xuKSB7XG4gIGRpc3BsYXk6ICRkaXNwbGF5O1xuICBtYXgtd2lkdGg6ICR3aWR0aDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIHdvcmQtd3JhcDogbm9ybWFsO1xufVxuIiwiQGNoYXJzZXQgXCJVVEYtOFwiO1xuXG4vLy8gR2VuZXJhdGVzIGFuIGBAZm9udC1mYWNlYCBkZWNsYXJhdGlvbi4gWW91IGNhbiBjaG9vc2UgdGhlIHNwZWNpZmljIGZpbGVcbi8vLyBmb3JtYXRzIHlvdSBuZWVkIHRvIG91dHB1dDsgdGhlIG1peGluIHN1cHBvcnRzIGBlb3RgLCBgdHRmYCwgYHN2Z2AsIGB3b2ZmMmBcbi8vLyBhbmQgYHdvZmZgLiBUaGUgbWl4aW4gYWxzbyBzdXBwb3J0cyB1c2FnZSB3aXRoIHRoZSBSYWlscyBBc3NldCBQaXBlbGluZSxcbi8vLyB3aGljaCB5b3UgY2FuIGVuYWJsZSBwZXIgdXNlLCBvciBnbG9iYWxseSBpbiB0aGUgYCRib3VyYm9uKClgIHNldHRpbmdzLlxuLy8vXG4vLy8gQGFyZ3VtZW50IHtzdHJpbmd9ICRmb250LWZhbWlseVxuLy8vXG4vLy8gQGFyZ3VtZW50IHtzdHJpbmd9ICRmaWxlLXBhdGhcbi8vL1xuLy8vIEBhcmd1bWVudCB7c3RyaW5nfSAkYXNzZXQtcGlwZWxpbmUgW2ZhbHNlXVxuLy8vICAgU2V0IHRvIGB0cnVlYCBpZiB5b3XigJlyZSB1c2luZyB0aGUgUmFpbHMgQXNzZXQgUGlwZWxpbmUgKHBsYWNlIHRoZSBmb250c1xuLy8vICAgaW4gYGFwcC9hc3NldHMvZm9udHMvYCkuIENhbiBhbHNvIGJlIHNldCBnbG9iYWxseSB1c2luZyB0aGVcbi8vLyAgIGByYWlscy1hc3NldC1waXBlbGluZWAga2V5IGluIHRoZSBCb3VyYm9uIHNldHRpbmdzLlxuLy8vXG4vLy8gQGFyZ3VtZW50IHtzdHJpbmcgfCBsaXN0fSAkZmlsZS1mb3JtYXRzIFsoXCJ0dGZcIiwgXCJ3b2ZmMlwiLCBcIndvZmZcIildXG4vLy8gICBMaXN0IG9mIHRoZSBmb250IGZpbGUgZm9ybWF0cyB0byBpbmNsdWRlLiBDYW4gYWxzbyBiZSBzZXQgZ2xvYmFsbHkgdXNpbmdcbi8vLyAgIHRoZSBgZ2xvYmFsLWZvbnQtZmlsZS1mb3JtYXRzYCBrZXkgaW4gdGhlIEJvdXJib24gc2V0dGluZ3MuXG4vLy9cbi8vLyBAY29udGVudFxuLy8vICAgQW55IGFkZGl0aW9uYWwgQ1NTIHByb3BlcnRpZXMgdGhhdCBhcmUgaW5jbHVkZWQgaW4gdGhlIGBAaW5jbHVkZWBcbi8vLyAgIGRpcmVjdGl2ZSB3aWxsIGJlIG91dHB1dCB3aXRoaW4gdGhlIGBAZm9udC1mYWNlYCBkZWNsYXJhdGlvbiwgZS5nLiB5b3UgY2FuXG4vLy8gICBwYXNzIGluIGBmb250LXdlaWdodGAsIGBmb250LXN0eWxlYCBhbmQvb3IgYHVuaWNvZGUtcmFuZ2VgLlxuLy8vXG4vLy8gQGV4YW1wbGUgc2Nzc1xuLy8vICAgQGluY2x1ZGUgZm9udC1mYWNlKFxuLy8vICAgICBcInNvdXJjZS1zYW5zLXByb1wiLFxuLy8vICAgICBcImZvbnRzL3NvdXJjZS1zYW5zLXByby1yZWd1bGFyXCIsXG4vLy8gICAgIChcIndvZmYyXCIsIFwid29mZlwiKVxuLy8vICAgKSB7XG4vLy8gICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbi8vLyAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbi8vLyAgIH1cbi8vL1xuLy8vICAgLy8gQ1NTIE91dHB1dFxuLy8vICAgQGZvbnQtZmFjZSB7XG4vLy8gICAgIGZvbnQtZmFtaWx5OiBcInNvdXJjZS1zYW5zLXByb1wiO1xuLy8vICAgICBzcmM6IHVybChcImZvbnRzL3NvdXJjZS1zYW5zLXByby1yZWd1bGFyLndvZmYyXCIpIGZvcm1hdChcIndvZmYyXCIpLFxuLy8vICAgICAgICAgIHVybChcImZvbnRzL3NvdXJjZS1zYW5zLXByby1yZWd1bGFyLndvZmZcIikgZm9ybWF0KFwid29mZlwiKTtcbi8vLyAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xuLy8vICAgICBmb250LXdlaWdodDogNDAwO1xuLy8vICAgfVxuLy8vXG4vLy8gQHJlcXVpcmUge2Z1bmN0aW9ufSBfZm9udC1zb3VyY2UtZGVjbGFyYXRpb25cbi8vL1xuLy8vIEByZXF1aXJlIHtmdW5jdGlvbn0gX2ZldGNoLWJvdXJib24tc2V0dGluZ1xuXG5AbWl4aW4gZm9udC1mYWNlKFxuICAkZm9udC1mYW1pbHksXG4gICRmaWxlLXBhdGgsXG4gICRmaWxlLWZvcm1hdHM6IF9mZXRjaC1ib3VyYm9uLXNldHRpbmcoXCJnbG9iYWwtZm9udC1maWxlLWZvcm1hdHNcIiksXG4gICRhc3NldC1waXBlbGluZTogX2ZldGNoLWJvdXJib24tc2V0dGluZyhcInJhaWxzLWFzc2V0LXBpcGVsaW5lXCIpXG4pIHtcbiAgQGZvbnQtZmFjZSB7XG4gICAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseTtcbiAgICBzcmM6IF9mb250LXNvdXJjZS1kZWNsYXJhdGlvbihcbiAgICAgICRmb250LWZhbWlseSxcbiAgICAgICRmaWxlLXBhdGgsXG4gICAgICAkYXNzZXQtcGlwZWxpbmUsXG4gICAgICAkZmlsZS1mb3JtYXRzXG4gICAgKTtcbiAgICBAY29udGVudDtcbiAgfVxufVxuIiwiQGNoYXJzZXQgXCJVVEYtOFwiO1xuXG4vLy8gQSB2YXJpYWJsZSB0aGF0IG91dHB1dHMgYSBIZWx2ZXRpY2EgZm9udCBzdGFjay5cbi8vL1xuLy8vIEBsaW5rIGh0dHBzOi8vZ29vLmdsL3VTSnZaZVxuLy8vXG4vLy8gQHR5cGUgbGlzdFxuLy8vXG4vLy8gQGV4YW1wbGUgc2Nzc1xuLy8vICAgLmVsZW1lbnQge1xuLy8vICAgICBmb250LWZhbWlseTogJGZvbnQtc3RhY2staGVsdmV0aWNhO1xuLy8vICAgfVxuLy8vXG4vLy8gICAvLyBDU1MgT3V0cHV0XG4vLy8gICAuZWxlbWVudCB7XG4vLy8gICAgIGZvbnQtZmFtaWx5OiBcIkhlbHZldGljYSBOZXVlXCIsIFwiSGVsdmV0aWNhXCIsIFwiQXJpYWxcIiwgc2Fucy1zZXJpZjtcbi8vLyAgIH1cblxuJGZvbnQtc3RhY2staGVsdmV0aWNhOiAoXG4gIFwiSGVsdmV0aWNhIE5ldWVcIixcbiAgXCJIZWx2ZXRpY2FcIixcbiAgXCJBcmlhbFwiLFxuICBzYW5zLXNlcmlmLFxuKTtcblxuLy8vIEEgdmFyaWFibGUgdGhhdCBvdXRwdXRzIGEgTHVjaWRhIEdyYW5kZSBmb250IHN0YWNrLlxuLy8vXG4vLy8gQGxpbmsgaHR0cHM6Ly9nb28uZ2wvUjVVeVlFXG4vLy9cbi8vLyBAdHlwZSBsaXN0XG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzXG4vLy8gICAuZWxlbWVudCB7XG4vLy8gICAgIGZvbnQtZmFtaWx5OiAkZm9udC1zdGFjay1sdWNpZGEtZ3JhbmRlO1xuLy8vICAgfVxuLy8vXG4vLy8gICAvLyBDU1MgT3V0cHV0XG4vLy8gICAuZWxlbWVudCB7XG4vLy8gICAgIGZvbnQtZmFtaWx5OiBcIkx1Y2lkYSBHcmFuZGVcIiwgXCJMdWNpZGEgU2FucyBVbmljb2RlXCIsIFwiR2VuZXZhXCIsIFwiVmVyZGFuYVwiLCBzYW5zLXNlcmlmO1xuLy8vICAgfVxuXG4kZm9udC1zdGFjay1sdWNpZGEtZ3JhbmRlOiAoXG4gIFwiTHVjaWRhIEdyYW5kZVwiLFxuICBcIkx1Y2lkYSBTYW5zIFVuaWNvZGVcIixcbiAgXCJHZW5ldmFcIixcbiAgXCJWZXJkYW5hXCIsXG4gIHNhbnMtc2VyaWYsXG4pO1xuXG4vLy8gQSB2YXJpYWJsZSB0aGF0IG91dHB1dHMgYSBWZXJkYW5hIGZvbnQgc3RhY2suXG4vLy9cbi8vLyBAbGluayBodHRwczovL2dvby5nbC95R1hXU1Ncbi8vL1xuLy8vIEB0eXBlIGxpc3Rcbi8vL1xuLy8vIEBleGFtcGxlIHNjc3Ncbi8vLyAgIC5lbGVtZW50IHtcbi8vLyAgICAgZm9udC1mYW1pbHk6ICRmb250LXN0YWNrLXZlcmRhbmE7XG4vLy8gICB9XG4vLy9cbi8vLyAgIC8vIENTUyBPdXRwdXRcbi8vLyAgIC5lbGVtZW50IHtcbi8vLyAgICAgZm9udC1mYW1pbHk6IFwiVmVyZGFuYVwiLCBcIkdlbmV2YVwiLCBzYW5zLXNlcmlmO1xuLy8vICAgfVxuXG4kZm9udC1zdGFjay12ZXJkYW5hOiAoXG4gIFwiVmVyZGFuYVwiLFxuICBcIkdlbmV2YVwiLFxuICBzYW5zLXNlcmlmLFxuKTtcblxuLy8vIEEgdmFyaWFibGUgdGhhdCBvdXRwdXRzIGEgc3lzdGVtIGZvbnQgc3RhY2suXG4vLy9cbi8vLyBAbGluayBodHRwczovL2dvby5nbC9MSFJaSWZcbi8vL1xuLy8vIEB0eXBlIGxpc3Rcbi8vL1xuLy8vIEBleGFtcGxlIHNjc3Ncbi8vLyAgIC5lbGVtZW50IHtcbi8vLyAgICAgZm9udC1mYW1pbHk6ICRmb250LXN0YWNrLXN5c3RlbTtcbi8vLyAgIH1cbi8vL1xuLy8vICAgLy8gQ1NTIE91dHB1dFxuLy8vICAgLmVsZW1lbnQge1xuLy8vICAgICBmb250LWZhbWlseTogLWFwcGxlLXN5c3RlbSwgQmxpbmtNYWNTeXN0ZW1Gb250LCBcIkF2ZW5pciBOZXh0XCIsIFwiQXZlbmlyXCIsIFwiU2Vnb2UgVUlcIiwgXCJMdWNpZGEgR3JhbmRlXCIsIFwiSGVsdmV0aWNhIE5ldWVcIiwgXCJIZWx2ZXRpY2FcIiwgXCJGaXJhIFNhbnNcIiwgXCJSb2JvdG9cIiwgXCJOb3RvXCIsIFwiRHJvaWQgU2Fuc1wiLCBcIkNhbnRhcmVsbFwiLCBcIk94eWdlblwiLCBcIlVidW50dVwiLCBcIkZyYW5rbGluIEdvdGhpYyBNZWRpdW1cIiwgXCJDZW50dXJ5IEdvdGhpY1wiLCBcIkxpYmVyYXRpb24gU2Fuc1wiLCBzYW5zLXNlcmlmO1xuLy8vICAgfVxuXG4kZm9udC1zdGFjay1zeXN0ZW06IChcbiAgLWFwcGxlLXN5c3RlbSxcbiAgQmxpbmtNYWNTeXN0ZW1Gb250LFxuICBcIkF2ZW5pciBOZXh0XCIsXG4gIFwiQXZlbmlyXCIsXG4gIFwiU2Vnb2UgVUlcIixcbiAgXCJMdWNpZGEgR3JhbmRlXCIsXG4gIFwiSGVsdmV0aWNhIE5ldWVcIixcbiAgXCJIZWx2ZXRpY2FcIixcbiAgXCJGaXJhIFNhbnNcIixcbiAgXCJSb2JvdG9cIixcbiAgXCJOb3RvXCIsXG4gIFwiRHJvaWQgU2Fuc1wiLFxuICBcIkNhbnRhcmVsbFwiLFxuICBcIk94eWdlblwiLFxuICBcIlVidW50dVwiLFxuICBcIkZyYW5rbGluIEdvdGhpYyBNZWRpdW1cIixcbiAgXCJDZW50dXJ5IEdvdGhpY1wiLFxuICBcIkxpYmVyYXRpb24gU2Fuc1wiLFxuICBzYW5zLXNlcmlmLFxuKTtcblxuLy8vIEEgdmFyaWFibGUgdGhhdCBvdXRwdXRzIGEgR2FyYW1vbmQgZm9udCBzdGFjay5cbi8vL1xuLy8vIEBsaW5rIGh0dHBzOi8vZ29vLmdsL1FRRkVrVlxuLy8vXG4vLy8gQHR5cGUgbGlzdFxuLy8vXG4vLy8gQGV4YW1wbGUgc2Nzc1xuLy8vICAgLmVsZW1lbnQge1xuLy8vICAgICBmb250LWZhbWlseTogJGZvbnQtc3RhY2stZ2FyYW1vbmQ7XG4vLy8gICB9XG4vLy9cbi8vLyAgIC8vIENTUyBPdXRwdXRcbi8vLyAgIC5lbGVtZW50IHtcbi8vLyAgICAgZm9udC1mYW1pbHk6IFwiR2FyYW1vbmRcIiwgXCJCYXNrZXJ2aWxsZVwiLCBcIkJhc2tlcnZpbGxlIE9sZCBGYWNlXCIsIFwiSG9lZmxlciBUZXh0XCIsIFwiVGltZXMgTmV3IFJvbWFuXCIsIHNlcmlmO1xuLy8vICAgfVxuXG4kZm9udC1zdGFjay1nYXJhbW9uZDogKFxuICBcIkdhcmFtb25kXCIsXG4gIFwiQmFza2VydmlsbGVcIixcbiAgXCJCYXNrZXJ2aWxsZSBPbGQgRmFjZVwiLFxuICBcIkhvZWZsZXIgVGV4dFwiLFxuICBcIlRpbWVzIE5ldyBSb21hblwiLFxuICBzZXJpZixcbik7XG5cbi8vLyBBIHZhcmlhYmxlIHRoYXQgb3V0cHV0cyBhIEdlb3JnaWEgZm9udCBzdGFjay5cbi8vL1xuLy8vIEBsaW5rIGh0dHBzOi8vZ29vLmdsL3d0elZQeVxuLy8vXG4vLy8gQHR5cGUgbGlzdFxuLy8vXG4vLy8gQGV4YW1wbGUgc2Nzc1xuLy8vICAgLmVsZW1lbnQge1xuLy8vICAgICBmb250LWZhbWlseTogJGZvbnQtc3RhY2stZ2VvcmdpYTtcbi8vLyAgIH1cbi8vL1xuLy8vICAgLy8gQ1NTIE91dHB1dFxuLy8vICAgLmVsZW1lbnQge1xuLy8vICAgICBmb250LWZhbWlseTogXCJHZW9yZ2lhXCIsIFwiVGltZXNcIiwgXCJUaW1lcyBOZXcgUm9tYW5cIiwgc2VyaWY7XG4vLy8gICB9XG5cbiRmb250LXN0YWNrLWdlb3JnaWE6IChcbiAgXCJHZW9yZ2lhXCIsXG4gIFwiVGltZXNcIixcbiAgXCJUaW1lcyBOZXcgUm9tYW5cIixcbiAgc2VyaWYsXG4pO1xuXG4vLy8gQSB2YXJpYWJsZSB0aGF0IG91dHB1dHMgYSBIb2VmbGVyIFRleHQgZm9udCBzdGFjay5cbi8vL1xuLy8vIEBsaW5rIGh0dHBzOi8vZ29vLmdsL243VTd6eFxuLy8vXG4vLy8gQHR5cGUgbGlzdFxuLy8vXG4vLy8gQGV4YW1wbGUgc2Nzc1xuLy8vICAgLmVsZW1lbnQge1xuLy8vICAgICBmb250LWZhbWlseTogJGZvbnQtc3RhY2staG9lZmxlci10ZXh0O1xuLy8vICAgfVxuLy8vXG4vLy8gICAvLyBDU1MgT3V0cHV0XG4vLy8gICAuZWxlbWVudCB7XG4vLy8gICAgIGZvbnQtZmFtaWx5OiBcIkhvZWZsZXIgVGV4dFwiLCBcIkJhc2tlcnZpbGxlIE9sZCBGYWNlXCIsIFwiR2FyYW1vbmRcIiwgXCJUaW1lcyBOZXcgUm9tYW5cIiwgc2VyaWY7XG4vLy8gICB9XG5cbiRmb250LXN0YWNrLWhvZWZsZXItdGV4dDogKFxuICBcIkhvZWZsZXIgVGV4dFwiLFxuICBcIkJhc2tlcnZpbGxlIE9sZCBGYWNlXCIsXG4gIFwiR2FyYW1vbmRcIixcbiAgXCJUaW1lcyBOZXcgUm9tYW5cIixcbiAgc2VyaWYsXG4pO1xuXG4vLy8gQSB2YXJpYWJsZSB0aGF0IG91dHB1dHMgYSBDb25zb2xhcyBmb250IHN0YWNrLlxuLy8vXG4vLy8gQGxpbmsgaHR0cHM6Ly9nb28uZ2wvaUtydHF2XG4vLy9cbi8vLyBAdHlwZSBsaXN0XG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzXG4vLy8gICAuZWxlbWVudCB7XG4vLy8gICAgIGZvbnQtZmFtaWx5OiAkZm9udC1zdGFjay1jb25zb2xhcztcbi8vLyAgIH1cbi8vL1xuLy8vICAgLy8gQ1NTIE91dHB1dFxuLy8vICAgLmVsZW1lbnQge1xuLy8vICAgICBmb250LWZhbWlseTogXCJDb25zb2xhc1wiLCBcIm1vbmFjb1wiLCBtb25vc3BhY2U7XG4vLy8gICB9XG5cbiRmb250LXN0YWNrLWNvbnNvbGFzOiAoXG4gIFwiQ29uc29sYXNcIixcbiAgXCJtb25hY29cIixcbiAgbW9ub3NwYWNlLFxuKTtcblxuLy8vIEEgdmFyaWFibGUgdGhhdCBvdXRwdXRzIGEgQ291cmllciBOZXcgZm9udCBzdGFjay5cbi8vL1xuLy8vIEBsaW5rIGh0dHBzOi8vZ29vLmdsL2JIZldNUFxuLy8vXG4vLy8gQHR5cGUgbGlzdFxuLy8vXG4vLy8gQGV4YW1wbGUgc2Nzc1xuLy8vICAgLmVsZW1lbnQge1xuLy8vICAgICBmb250LWZhbWlseTogJGZvbnQtc3RhY2stY291cmllci1uZXc7XG4vLy8gICB9XG4vLy9cbi8vLyAgIC8vIENTUyBPdXRwdXRcbi8vLyAgIC5lbGVtZW50IHtcbi8vLyAgICAgZm9udC1mYW1pbHk6IFwiQ291cmllciBOZXdcIiwgXCJDb3VyaWVyXCIsIFwiTHVjaWRhIFNhbnMgVHlwZXdyaXRlclwiLCBcIkx1Y2lkYSBUeXBld3JpdGVyXCIsIG1vbm9zcGFjZTtcbi8vLyAgIH1cblxuJGZvbnQtc3RhY2stY291cmllci1uZXc6IChcbiAgXCJDb3VyaWVyIE5ld1wiLFxuICBcIkNvdXJpZXJcIixcbiAgXCJMdWNpZGEgU2FucyBUeXBld3JpdGVyXCIsXG4gIFwiTHVjaWRhIFR5cGV3cml0ZXJcIixcbiAgbW9ub3NwYWNlLFxuKTtcblxuLy8vIEEgdmFyaWFibGUgdGhhdCBvdXRwdXRzIGEgTW9uYWNvIGZvbnQgc3RhY2suXG4vLy9cbi8vLyBAbGluayBodHRwczovL2dvby5nbC85UGdLRE9cbi8vL1xuLy8vIEB0eXBlIGxpc3Rcbi8vL1xuLy8vIEBleGFtcGxlIHNjc3Ncbi8vLyAgIC5lbGVtZW50IHtcbi8vLyAgICAgZm9udC1mYW1pbHk6ICRmb250LXN0YWNrLW1vbmFjbztcbi8vLyAgIH1cbi8vL1xuLy8vICAgLy8gQ1NTIE91dHB1dFxuLy8vICAgLmVsZW1lbnQge1xuLy8vICAgICBmb250LWZhbWlseTogXCJNb25hY29cIiwgXCJDb25zb2xhc1wiLCBcIkx1Y2lkYSBDb25zb2xlXCIsIG1vbm9zcGFjZTtcbi8vLyAgIH1cblxuJGZvbnQtc3RhY2stbW9uYWNvOiAoXG4gIFwiTW9uYWNvXCIsXG4gIFwiQ29uc29sYXNcIixcbiAgXCJMdWNpZGEgQ29uc29sZVwiLFxuICBtb25vc3BhY2UsXG4pO1xuIiwiQGNoYXJzZXQgXCJVVEYtOFwiO1xuXG4vLy8gSGlkZXMgdGhlIHRleHQgaW4gYW4gZWxlbWVudCwgY29tbW9ubHkgdXNlZCB0byBzaG93IGFuIGltYWdlIGluc3RlYWQuIFNvbWVcbi8vLyBlbGVtZW50cyB3aWxsIG5lZWQgYmxvY2stbGV2ZWwgc3R5bGVzIGFwcGxpZWQuXG4vLy9cbi8vLyBAbGluayBodHRwczovL2dvby5nbC9FdkxSSXVcbi8vL1xuLy8vIEBleGFtcGxlIHNjc3Ncbi8vLyAgIC5lbGVtZW50IHtcbi8vLyAgICAgQGluY2x1ZGUgaGlkZS10ZXh0O1xuLy8vICAgfVxuLy8vXG4vLy8gICAvLyBDU1MgT3V0cHV0XG4vLy8gICAuZWxlbWVudCB7XG4vLy8gICAgIG92ZXJmbG93OiBoaWRkZW47XG4vLy8gICAgIHRleHQtaW5kZW50OiAxMDElO1xuLy8vICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuLy8vICAgfVxuXG5AbWl4aW4gaGlkZS10ZXh0IHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdGV4dC1pbmRlbnQ6IDEwMSU7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG4iLCJAY2hhcnNldCBcIlVURi04XCI7XG5cbi8vLyBIaWRlcyBhbiBlbGVtZW50IHZpc3VhbGx5IHdoaWxlIHN0aWxsIGFsbG93aW5nIHRoZSBjb250ZW50IHRvIGJlIGFjY2Vzc2libGVcbi8vLyB0byBhc3Npc3RpdmUgdGVjaG5vbG9neSwgZS5nLiBzY3JlZW4gcmVhZGVycy4gUGFzc2luZyBgdW5oaWRlYCB3aWxsIHJldmVyc2Vcbi8vLyB0aGUgYWZmZWN0cyBvZiB0aGUgaGlkaW5nLCB3aGljaCBpcyBoYW5keSBmb3Igc2hvd2luZyB0aGUgZWxlbWVudCBvbiBmb2N1cyxcbi8vLyBmb3IgZXhhbXBsZS5cbi8vL1xuLy8vIEBsaW5rIGh0dHBzOi8vZ29vLmdsL1ZmMVRHblxuLy8vXG4vLy8gQGFyZ3VtZW50IHtzdHJpbmd9ICR0b2dnbGUgW2hpZGVdXG4vLy8gICBBY2NlcHRzIGBoaWRlYCBvciBgdW5oaWRlYC4gYHVuaGlkZWAgcmV2ZXJzZXMgdGhlIGFmZmVjdHMgb2YgYGhpZGVgLlxuLy8vXG4vLy8gQGV4YW1wbGUgc2Nzc1xuLy8vICAgLmVsZW1lbnQge1xuLy8vICAgICBAaW5jbHVkZSBoaWRlLXZpc3VhbGx5O1xuLy8vXG4vLy8gICAgICY6YWN0aXZlLFxuLy8vICAgICAmOmZvY3VzIHtcbi8vLyAgICAgICBAaW5jbHVkZSBoaWRlLXZpc3VhbGx5KFwidW5oaWRlXCIpO1xuLy8vICAgICB9XG4vLy8gICB9XG4vLy9cbi8vLyAgIC8vIENTUyBPdXRwdXRcbi8vLyAgIC5lbGVtZW50IHtcbi8vLyAgICAgYm9yZGVyOiAwO1xuLy8vICAgICBjbGlwOiByZWN0KDFweCwgMXB4LCAxcHgsIDFweCk7XG4vLy8gICAgIGNsaXAtcGF0aDogaW5zZXQoMTAwJSk7XG4vLy8gICAgIGhlaWdodDogMXB4O1xuLy8vICAgICBvdmVyZmxvdzogaGlkZGVuO1xuLy8vICAgICBwYWRkaW5nOiAwO1xuLy8vICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4vLy8gICAgIHdpZHRoOiAxcHg7XG4vLy8gICB9XG4vLy9cbi8vLyAgIC5oaWRlLXZpc3VhbGx5OmFjdGl2ZSxcbi8vLyAgIC5oaWRlLXZpc3VhbGx5OmZvY3VzIHtcbi8vLyAgICAgY2xpcDogYXV0bztcbi8vLyAgICAgY2xpcC1wYXRoOiBub25lO1xuLy8vICAgICBoZWlnaHQ6IGF1dG87XG4vLy8gICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuLy8vICAgICBwb3NpdGlvbjogc3RhdGljO1xuLy8vICAgICB3aWR0aDogYXV0bztcbi8vLyAgIH1cbi8vL1xuLy8vIEBzaW5jZSA1LjAuMFxuXG5AbWl4aW4gaGlkZS12aXN1YWxseSgkdG9nZ2xlOiBcImhpZGVcIikge1xuICBAaWYgbm90IGluZGV4KFwiaGlkZVwiIFwidW5oaWRlXCIsICR0b2dnbGUpIHtcbiAgICBAZXJyb3IgXCJgI3skdG9nZ2xlfWAgaXMgbm90IGEgdmFsaWQgdmFsdWUgZm9yIHRoZSBgJHRvZ2dsZWAgYXJndW1lbnQgaW4gXCIgK1xuICAgICAgICAgICBcInRoZSBgaGlkZS12aXN1YWxseWAgbWl4aW4uIE11c3QgYmUgZWl0aGVyIGBoaWRlYCBvciBgdW5oaWRlYC5cIjtcbiAgfSBAZWxzZSBpZiAkdG9nZ2xlID09IFwiaGlkZVwiIHtcbiAgICBib3JkZXI6IDA7XG4gICAgY2xpcDogcmVjdCgxcHgsIDFweCwgMXB4LCAxcHgpO1xuICAgIGNsaXAtcGF0aDogaW5zZXQoMTAwJSk7XG4gICAgaGVpZ2h0OiAxcHg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBwYWRkaW5nOiAwO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIHdpZHRoOiAxcHg7XG4gIH0gQGVsc2UgaWYgJHRvZ2dsZSA9PSBcInVuaGlkZVwiIHtcbiAgICBjbGlwOiBhdXRvO1xuICAgIGNsaXAtcGF0aDogbm9uZTtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgICB3aGl0ZS1zcGFjZTogaW5oZXJpdDtcbiAgICB3aWR0aDogYXV0bztcbiAgfVxufVxuIiwiQGNoYXJzZXQgXCJVVEYtOFwiO1xuXG4vLy8gUHJvdmlkZXMgYSBjb25jaXNlLCBvbmUtbGluZSBtZXRob2QgZm9yIHNldHRpbmcgYG1hcmdpbmAgb24gc3BlY2lmaWMgZWRnZXNcbi8vLyBvZiBhIGJveC4gVXNlIGEgYG51bGxgIHZhbHVlIHRvIOKAnHNraXDigJ0gZWRnZXMgb2YgdGhlIGJveCB3aXRoIHN0YW5kYXJkXG4vLy8gQ1NTIHNob3J0aGFuZC5cbi8vL1xuLy8vIEBhcmd1bWVudCB7bGlzdH0gJHZhbHVlc1xuLy8vICAgTGlzdCBvZiBtYXJnaW4gdmFsdWVzOyBhY2NlcHRzIENTUyBzaG9ydGhhbmQuXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzXG4vLy8gICAuZWxlbWVudCB7XG4vLy8gICAgIEBpbmNsdWRlIG1hcmdpbihudWxsIGF1dG8pO1xuLy8vICAgfVxuLy8vXG4vLy8gICAvLyBDU1MgT3V0cHV0XG4vLy8gICAuZWxlbWVudCB7XG4vLy8gICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuLy8vICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4vLy8gICB9XG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzXG4vLy8gICAuZWxlbWVudCB7XG4vLy8gICAgIEBpbmNsdWRlIG1hcmdpbigxMHB4IDNlbSAyMHZoIG51bGwpO1xuLy8vICAgfVxuLy8vXG4vLy8gICAvLyBDU1MgT3V0cHV0XG4vLy8gICAuZWxlbWVudCB7XG4vLy8gICAgIG1hcmdpbi1ib3R0b206IDIwdmg7XG4vLy8gICAgIG1hcmdpbi1yaWdodDogM2VtO1xuLy8vICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuLy8vICAgfVxuLy8vXG4vLy8gQHJlcXVpcmUge21peGlufSBfZGlyZWN0aW9uYWwtcHJvcGVydHlcblxuQG1peGluIG1hcmdpbigkdmFsdWVzKSB7XG4gIEBpbmNsdWRlIF9kaXJlY3Rpb25hbC1wcm9wZXJ0eShtYXJnaW4sIG51bGwsICR2YWx1ZXMpO1xufVxuIiwiQGNoYXJzZXQgXCJVVEYtOFwiO1xuXG4vLy8gSW5jcmVtZW50cyB1cCBvciBkb3duIGEgZGVmaW5lZCBzY2FsZSBhbmQgcmV0dXJucyBhbiBhZGp1c3RlZCB2YWx1ZS4gVGhpc1xuLy8vIGhlbHBzIGVzdGFibGlzaCBjb25zaXN0ZW50IG1lYXN1cmVtZW50cyBhbmQgc3BhY2lhbCByZWxhdGlvbnNoaXBzIHRocm91Z2hvdXRcbi8vLyB5b3VyIHByb2plY3QuIFdlIHByb3ZpZGUgYSBsaXN0IG9mIGNvbW1vbmx5IHVzZWQgc2NhbGVzIGFzXG4vLy8gW3ByZS1kZWZpbmVkIHZhcmlhYmxlc11bc2NhbGVzXS5cbi8vL1xuLy8vIFtzY2FsZXNdOiBodHRwczovL2dpdGh1Yi5jb20vdGhvdWdodGJvdC9ib3VyYm9uL2Jsb2IvbWFzdGVyL2NvcmUvYm91cmJvbi9zZXR0aW5ncy9fc2NhbGVzLnNjc3Ncbi8vL1xuLy8vIEBhcmd1bWVudCB7bnVtYmVyICh1bml0bGVzcyl9ICRpbmNyZW1lbnRcbi8vLyAgIEhvdyBtYW55IHN0ZXBzIHRvIGluY3JlbWVudCB1cCBvciBkb3duIHRoZSBzY2FsZS5cbi8vL1xuLy8vIEBhcmd1bWVudCB7bnVtYmVyICh3aXRoIHVuaXQpIHwgbGlzdH0gJHZhbHVlIFsxZW1dXG4vLy8gICBUaGUgYmFzZSB2YWx1ZSB0aGUgc2NhbGUgc3RhcnRzIGF0LiBDYW4gYWxzbyBiZSBzZXQgZ2xvYmFsbHkgdXNpbmcgdGhlXG4vLy8gICBgbW9kdWxhci1zY2FsZS1iYXNlYCBrZXkgaW4gdGhlIEJvdXJib24gc2V0dGluZ3MuXG4vLy9cbi8vLyBAYXJndW1lbnQge251bWJlciAodW5pdGxlc3MpfSAkcmF0aW8gWzEuMjVdXG4vLy8gICBUaGUgcmF0aW8gdGhlIHNjYWxlIGlzIGJ1aWx0IG9uLiBDYW4gYWxzbyBiZSBzZXQgZ2xvYmFsbHkgdXNpbmcgdGhlXG4vLy8gICBgbW9kdWxhci1zY2FsZS1yYXRpb2Aga2V5IGluIHRoZSBCb3VyYm9uIHNldHRpbmdzLlxuLy8vXG4vLy8gQHJldHVybiB7bnVtYmVyICh3aXRoIHVuaXQpfVxuLy8vXG4vLy8gQGV4YW1wbGUgc2Nzc1xuLy8vICAgLmVsZW1lbnQge1xuLy8vICAgICBmb250LXNpemU6IG1vZHVsYXItc2NhbGUoMik7XG4vLy8gICB9XG4vLy9cbi8vLyAgIC8vIENTUyBPdXRwdXRcbi8vLyAgIC5lbGVtZW50IHtcbi8vLyAgICAgZm9udC1zaXplOiAxLjU2MjVlbTtcbi8vLyAgIH1cbi8vL1xuLy8vIEBleGFtcGxlIHNjc3Ncbi8vLyAgIC5lbGVtZW50IHtcbi8vLyAgICAgbWFyZ2luLXJpZ2h0OiBtb2R1bGFyLXNjYWxlKDMsIDJlbSk7XG4vLy8gICB9XG4vLy9cbi8vLyAgIC8vIENTUyBPdXRwdXRcbi8vLyAgIC5lbGVtZW50IHtcbi8vLyAgICAgbWFyZ2luLXJpZ2h0OiAzLjkwNjI1ZW07XG4vLy8gICB9XG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzXG4vLy8gICAuZWxlbWVudCB7XG4vLy8gICAgIGZvbnQtc2l6ZTogbW9kdWxhci1zY2FsZSgzLCAxZW0gMS42ZW0sICRtYWpvci1zZXZlbnRoKTtcbi8vLyAgIH1cbi8vL1xuLy8vICAgLy8gQ1NTIE91dHB1dFxuLy8vICAgLmVsZW1lbnQge1xuLy8vICAgICBmb250LXNpemU6IDNlbTtcbi8vLyAgIH1cbi8vL1xuLy8vIEBleGFtcGxlIHNjc3Ncbi8vLyAgIC8vIEdsb2JhbGx5IGNoYW5nZSB0aGUgYmFzZSByYXRpb1xuLy8vICAgJGJvdXJib246IChcbi8vLyAgICAgXCJtb2R1bGFyLXNjYWxlLXJhdGlvXCI6IDEuMixcbi8vLyAgICk7XG4vLy9cbi8vLyAgIC5lbGVtZW50IHtcbi8vLyAgICAgZm9udC1zaXplOiBtb2R1bGFyLXNjYWxlKDMpO1xuLy8vICAgfVxuLy8vXG4vLy8gICAvLyBDU1MgT3V0cHV0XG4vLy8gICAuZWxlbWVudCB7XG4vLy8gICAgIGZvbnQtc2l6ZTogMS43MjhlbTtcbi8vLyAgIH1cbi8vL1xuLy8vIEByZXF1aXJlIHtmdW5jdGlvbn0gX2ZldGNoLWJvdXJib24tc2V0dGluZ1xuXG5AZnVuY3Rpb24gbW9kdWxhci1zY2FsZShcbiAgJGluY3JlbWVudCxcbiAgJHZhbHVlOiBfZmV0Y2gtYm91cmJvbi1zZXR0aW5nKFwibW9kdWxhci1zY2FsZS1iYXNlXCIpLFxuICAkcmF0aW86IF9mZXRjaC1ib3VyYm9uLXNldHRpbmcoXCJtb2R1bGFyLXNjYWxlLXJhdGlvXCIpXG4pIHtcbiAgJHYxOiBudGgoJHZhbHVlLCAxKTtcbiAgJHYyOiBudGgoJHZhbHVlLCBsZW5ndGgoJHZhbHVlKSk7XG4gICR2YWx1ZTogJHYxO1xuXG4gIC8vIHNjYWxlICR2MiB0byBqdXN0IGFib3ZlICR2MVxuICBAd2hpbGUgJHYyID4gJHYxIHtcbiAgICAkdjI6ICgkdjIgLyAkcmF0aW8pOyAvLyB3aWxsIGJlIG9mZi1ieS0xXG4gIH1cbiAgQHdoaWxlICR2MiA8ICR2MSB7XG4gICAgJHYyOiAoJHYyICogJHJhdGlvKTsgLy8gd2lsbCBmaXggb2ZmLWJ5LTFcbiAgfVxuXG4gIC8vIGNoZWNrIEFGVEVSIHNjYWxpbmcgJHYyIHRvIHByZXZlbnQgZG91YmxlLWNvdW50aW5nIGNvcm5lci1jYXNlXG4gICRkb3VibGUtc3RyYW5kZWQ6ICR2MiA+ICR2MTtcblxuICBAaWYgJGluY3JlbWVudCA+IDAge1xuICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGluY3JlbWVudCB7XG4gICAgICBAaWYgJGRvdWJsZS1zdHJhbmRlZCBhbmQgKCR2MSAqICRyYXRpbykgPiAkdjIge1xuICAgICAgICAkdmFsdWU6ICR2MjtcbiAgICAgICAgJHYyOiAoJHYyICogJHJhdGlvKTtcbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICAkdjE6ICgkdjEgKiAkcmF0aW8pO1xuICAgICAgICAkdmFsdWU6ICR2MTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAaWYgJGluY3JlbWVudCA8IDAge1xuICAgIC8vIGFkanVzdCAkdjIgdG8ganVzdCBiZWxvdyAkdjFcbiAgICBAaWYgJGRvdWJsZS1zdHJhbmRlZCB7XG4gICAgICAkdjI6ICgkdjIgLyAkcmF0aW8pO1xuICAgIH1cblxuICAgIEBmb3IgJGkgZnJvbSAkaW5jcmVtZW50IHRocm91Z2ggLTEge1xuICAgICAgQGlmICRkb3VibGUtc3RyYW5kZWQgYW5kICgkdjEgLyAkcmF0aW8pIDwgJHYyIHtcbiAgICAgICAgJHZhbHVlOiAkdjI7XG4gICAgICAgICR2MjogKCR2MiAvICRyYXRpbyk7XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgJHYxOiAoJHYxIC8gJHJhdGlvKTtcbiAgICAgICAgJHZhbHVlOiAkdjE7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQHJldHVybiAkdmFsdWU7XG59XG4iLCJAY2hhcnNldCBcIlVURi04XCI7XG5cbi8vLyBPdXRwdXRzIHRoZSBgb3ZlcmZsb3ctd3JhcGAgcHJvcGVydHkgYW5kIGl0cyBsZWdhY3kgbmFtZSBgd29yZC13cmFwYCB0b1xuLy8vIHN1cHBvcnQgYnJvd3NlcnMgdGhhdCBkbyBub3QgeWV0IHVzZSBgb3ZlcmZsb3ctd3JhcGAuXG4vLy9cbi8vLyBAYXJndW1lbnQge3N0cmluZ30gJHdyYXAgW2JyZWFrLXdvcmRdXG4vLy8gICBBY2NlcHRlZCBDU1MgdmFsdWVzIGFyZSBgbm9ybWFsYCwgYGJyZWFrLXdvcmRgLCBgaW5oZXJpdGAsIGBpbml0aWFsYCxcbi8vLyAgIG9yIGB1bnNldGAuXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzXG4vLy8gICAud3JhcHBlciB7XG4vLy8gICAgIEBpbmNsdWRlIG92ZXJmbG93LXdyYXA7XG4vLy8gICB9XG4vLy9cbi8vLyAgIC8vIENTUyBPdXRwdXRcbi8vLyAgIC53cmFwcGVyIHtcbi8vLyAgICAgd29yZC13cmFwOiBicmVhay13b3JkO1xuLy8vICAgICBvdmVyZmxvdy13cmFwOiBicmVhay13b3JkO1xuLy8vICAgfVxuXG5AbWl4aW4gb3ZlcmZsb3ctd3JhcCgkd3JhcDogYnJlYWstd29yZCkge1xuICB3b3JkLXdyYXA6ICR3cmFwO1xuICBvdmVyZmxvdy13cmFwOiAkd3JhcDtcbn1cbiIsIkBjaGFyc2V0IFwiVVRGLThcIjtcblxuLy8vIFByb3ZpZGVzIGEgY29uY2lzZSBtZXRob2QgZm9yIHRhcmdldGluZyBgcGFkZGluZ2Agb24gc3BlY2lmaWMgc2lkZXMgb2YgYVxuLy8vIGJveC4gVXNlIGEgYG51bGxgIHZhbHVlIHRvIOKAnHNraXDigJ0gYSBzaWRlLlxuLy8vXG4vLy8gQGFyZ3VtZW50IHtsaXN0fSAkdmFsdWVzXG4vLy8gICBMaXN0IG9mIHBhZGRpbmcgdmFsdWVzOyBhY2NlcHRzIENTUyBzaG9ydGhhbmQuXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzXG4vLy8gICAuZWxlbWVudC1vbmUge1xuLy8vICAgICBAaW5jbHVkZSBwYWRkaW5nKG51bGwgMXJlbSk7XG4vLy8gICB9XG4vLy9cbi8vLyAgIC8vIENTUyBPdXRwdXRcbi8vLyAgIC5lbGVtZW50LW9uZSB7XG4vLy8gICAgIHBhZGRpbmctbGVmdDogMXJlbTtcbi8vLyAgICAgcGFkZGluZy1yaWdodDogMXJlbTtcbi8vLyAgIH1cbi8vL1xuLy8vIEBleGFtcGxlIHNjc3Ncbi8vLyAgIC5lbGVtZW50LXR3byB7XG4vLy8gICAgIEBpbmNsdWRlIHBhZGRpbmcoMTB2aCBudWxsIDEwcHggNSUpO1xuLy8vICAgfVxuLy8vXG4vLy8gICAvLyBDU1MgT3V0cHV0XG4vLy8gICAuZWxlbWVudC10d28ge1xuLy8vICAgICBwYWRkaW5nLWJvdHRvbTogMTBweDtcbi8vLyAgICAgcGFkZGluZy1sZWZ0OiA1JTtcbi8vLyAgICAgcGFkZGluZy10b3A6IDEwdmg7XG4vLy8gICB9XG4vLy9cbi8vLyBAcmVxdWlyZSB7bWl4aW59IF9kaXJlY3Rpb25hbC1wcm9wZXJ0eVxuXG5AbWl4aW4gcGFkZGluZygkdmFsdWVzKSB7XG4gIEBpbmNsdWRlIF9kaXJlY3Rpb25hbC1wcm9wZXJ0eShwYWRkaW5nLCBudWxsLCAkdmFsdWVzKTtcbn1cbiIsIkBjaGFyc2V0IFwiVVRGLThcIjtcblxuLy8vIFByb3ZpZGVzIGEgY29uY2lzZSwgb25lLWxpbmUgbWV0aG9kIGZvciBzZXR0aW5nIGFuIGVsZW1lbnTigJlzIHBvc2l0aW9uaW5nXG4vLy8gcHJvcGVydGllczogYHBvc2l0aW9uYCwgYHRvcGAsIGByaWdodGAsIGBib3R0b21gIGFuZCBgbGVmdGAuIFVzZSBhIGBudWxsYFxuLy8vIHZhbHVlIHRvIOKAnHNraXDigJ0gYW4gZWRnZSBvZiB0aGUgYm94LlxuLy8vXG4vLy8gQGFyZ3VtZW50IHtzdHJpbmd9ICRwb3NpdGlvblxuLy8vICAgQSBDU1MgcG9zaXRpb24gdmFsdWUuXG4vLy9cbi8vLyBAYXJndW1lbnQge2xpc3R9ICRib3gtZWRnZS12YWx1ZXNcbi8vLyAgIExpc3Qgb2YgbGVuZ3RoczsgYWNjZXB0cyBDU1Mgc2hvcnRoYW5kLlxuLy8vXG4vLy8gQGV4YW1wbGUgc2Nzc1xuLy8vICAgLmVsZW1lbnQge1xuLy8vICAgICBAaW5jbHVkZSBwb3NpdGlvbihyZWxhdGl2ZSwgMCBudWxsIG51bGwgMTBlbSk7XG4vLy8gICB9XG4vLy9cbi8vLyAgIC8vIENTUyBPdXRwdXRcbi8vLyAgIC5lbGVtZW50IHtcbi8vLyAgICAgbGVmdDogMTBlbTtcbi8vLyAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuLy8vICAgICB0b3A6IDA7XG4vLy8gICB9XG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzXG4vLy8gICAuZWxlbWVudCB7XG4vLy8gICAgIEBpbmNsdWRlIHBvc2l0aW9uKGFic29sdXRlLCAwKTtcbi8vLyAgIH1cbi8vL1xuLy8vICAgLy8gQ1NTIE91dHB1dFxuLy8vICAgLmVsZW1lbnQge1xuLy8vICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4vLy8gICAgIHRvcDogMDtcbi8vLyAgICAgcmlnaHQ6IDA7XG4vLy8gICAgIGJvdHRvbTogMDtcbi8vLyAgICAgbGVmdDogMDtcbi8vLyAgIH1cbi8vL1xuLy8vIEByZXF1aXJlIHtmdW5jdGlvbn0gX2lzLWxlbmd0aFxuLy8vXG4vLy8gQHJlcXVpcmUge2Z1bmN0aW9ufSBfdW5wYWNrLXNob3J0aGFuZFxuXG5AbWl4aW4gcG9zaXRpb24oXG4gICRwb3NpdGlvbixcbiAgJGJveC1lZGdlLXZhbHVlc1xuKSB7XG4gICRib3gtZWRnZS12YWx1ZXM6IF91bnBhY2stc2hvcnRoYW5kKCRib3gtZWRnZS12YWx1ZXMpO1xuICAkb2Zmc2V0czogKFxuICAgIHRvcDogICAgbnRoKCRib3gtZWRnZS12YWx1ZXMsIDEpLFxuICAgIHJpZ2h0OiAgbnRoKCRib3gtZWRnZS12YWx1ZXMsIDIpLFxuICAgIGJvdHRvbTogbnRoKCRib3gtZWRnZS12YWx1ZXMsIDMpLFxuICAgIGxlZnQ6ICAgbnRoKCRib3gtZWRnZS12YWx1ZXMsIDQpLFxuICApO1xuXG4gIHBvc2l0aW9uOiAkcG9zaXRpb247XG5cbiAgQGVhY2ggJG9mZnNldCwgJHZhbHVlIGluICRvZmZzZXRzIHtcbiAgICBAaWYgX2lzLWxlbmd0aCgkdmFsdWUpIHtcbiAgICAgICN7JG9mZnNldH06ICR2YWx1ZTtcbiAgICB9XG4gIH1cbn1cbiIsIkBjaGFyc2V0IFwiVVRGLThcIjtcblxuLy8vIEdlbmVyYXRlcyB2ZW5kb3IgcHJlZml4ZXMuXG4vLy9cbi8vLyBAYXJndW1lbnQge3N0cmluZ30gJHByb3BlcnR5XG4vLy8gICBQcm9wZXJ0eSB0byBwcmVmaXguXG4vLy9cbi8vLyBAYXJndW1lbnQge3N0cmluZ30gJHZhbHVlXG4vLy8gICBWYWx1ZSB0byB1c2UuXG4vLy9cbi8vLyBAYXJndW1lbnQge2xpc3R9ICRwcmVmaXhlc1xuLy8vICAgVmVuZG9yIHByZWZpeGVzIHRvIG91dHB1dC5cbi8vL1xuLy8vIEBleGFtcGxlIHNjc3Ncbi8vLyAgIC5lbGVtZW50IHtcbi8vLyAgICAgQGluY2x1ZGUgcHJlZml4ZXIoYXBwZWFyYW5jZSwgbm9uZSwgKFwid2Via2l0XCIsIFwibW96XCIpKTtcbi8vLyAgIH1cbi8vL1xuLy8vICAgLy8gQ1NTIE91dHB1dFxuLy8vICAgLmVsZW1lbnQge1xuLy8vICAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4vLy8gICAgIC1tb3otYXBwZWFyYW5jZTogbm9uZTtcbi8vLyAgICAgYXBwZWFyYW5jZTogbm9uZTtcbi8vLyAgIH1cbi8vL1xuLy8vIEBhdXRob3IgSHVnbyBHaXJhdWRlbFxuXG5AbWl4aW4gcHJlZml4ZXIoXG4gICRwcm9wZXJ0eSxcbiAgJHZhbHVlLFxuICAkcHJlZml4ZXM6ICgpXG4pIHtcbiAgQGVhY2ggJHByZWZpeCBpbiAkcHJlZml4ZXMge1xuICAgICN7XCItXCIgKyAkcHJlZml4ICsgXCItXCIgKyAkcHJvcGVydHl9OiAkdmFsdWU7XG4gIH1cbiAgI3skcHJvcGVydHl9OiAkdmFsdWU7XG59XG4iLCJAY2hhcnNldCBcIlVURi04XCI7XG5cbi8vLyBNaXhlcyBhIGNvbG9yIHdpdGggYmxhY2suXG4vLy9cbi8vLyBAYXJndW1lbnQge2NvbG9yfSAkY29sb3Jcbi8vL1xuLy8vIEBhcmd1bWVudCB7bnVtYmVyIChwZXJjZW50YWdlKX0gJHBlcmNlbnRcbi8vLyAgIFRoZSBhbW91bnQgb2YgYmxhY2sgdG8gYmUgbWl4ZWQgaW4uXG4vLy9cbi8vLyBAcmV0dXJuIHtjb2xvcn1cbi8vL1xuLy8vIEBleGFtcGxlIHNjc3Ncbi8vLyAgIC5lbGVtZW50IHtcbi8vLyAgICAgYmFja2dyb3VuZC1jb2xvcjogc2hhZGUoI2ZmYmI1MiwgNjAlKTtcbi8vLyAgIH1cbi8vL1xuLy8vICAgLy8gQ1NTIE91dHB1dFxuLy8vICAgLmVsZW1lbnQge1xuLy8vICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNjY0YTIwO1xuLy8vICAgfVxuXG5AZnVuY3Rpb24gc2hhZGUoXG4gICRjb2xvcixcbiAgJHBlcmNlbnRcbikge1xuICBAaWYgbm90IF9pcy1jb2xvcigkY29sb3IpIHtcbiAgICBAZXJyb3IgXCJgI3skY29sb3J9YCBpcyBub3QgYSB2YWxpZCBjb2xvciBmb3IgdGhlIGAkY29sb3JgIGFyZ3VtZW50IGluIFwiICtcbiAgICAgICAgICAgXCJ0aGUgYHNoYWRlYCBtaXhpbi5cIjtcbiAgfSBAZWxzZSB7XG4gICAgQHJldHVybiBtaXgoIzAwMCwgJGNvbG9yLCAkcGVyY2VudCk7XG4gIH1cbn1cbiIsIkBjaGFyc2V0IFwiVVRGLThcIjtcblxuLy8vIFNldHMgdGhlIGB3aWR0aGAgYW5kIGBoZWlnaHRgIG9mIHRoZSBlbGVtZW50IGluIG9uZSBzdGF0ZW1lbnQuXG4vLy9cbi8vLyBAYXJndW1lbnQge251bWJlciAod2l0aCB1bml0KSB8IHN0cmluZ30gJHdpZHRoXG4vLy9cbi8vLyBAYXJndW1lbnQge251bWJlciAod2l0aCB1bml0KSB8IHN0cmluZ30gJGhlaWdodCBbJHdpZHRoXVxuLy8vXG4vLy8gQGV4YW1wbGUgc2Nzc1xuLy8vICAgLmZpcnN0LWVsZW1lbnQge1xuLy8vICAgICBAaW5jbHVkZSBzaXplKDJlbSk7XG4vLy8gICB9XG4vLy9cbi8vLyAgIC8vIENTUyBPdXRwdXRcbi8vLyAgIC5maXJzdC1lbGVtZW50IHtcbi8vLyAgICAgd2lkdGg6IDJlbTtcbi8vLyAgICAgaGVpZ2h0OiAyZW07XG4vLy8gICB9XG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzXG4vLy8gICAuc2Vjb25kLWVsZW1lbnQge1xuLy8vICAgICBAaW5jbHVkZSBzaXplKGF1dG8sIDEwZW0pO1xuLy8vICAgfVxuLy8vXG4vLy8gICAvLyBDU1MgT3V0cHV0XG4vLy8gICAuc2Vjb25kLWVsZW1lbnQge1xuLy8vICAgICB3aWR0aDogYXV0bztcbi8vLyAgICAgaGVpZ2h0OiAxMGVtO1xuLy8vICAgfVxuLy8vXG4vLy8gQHJlcXVpcmUge2Z1bmN0aW9ufSBfaXMtc2l6ZVxuXG5AbWl4aW4gc2l6ZShcbiAgJHdpZHRoLFxuICAkaGVpZ2h0OiAkd2lkdGhcbikge1xuICBAaWYgX2lzLXNpemUoJGhlaWdodCkge1xuICAgIGhlaWdodDogJGhlaWdodDtcbiAgfSBAZWxzZSB7XG4gICAgQGVycm9yIFwiYCN7JGhlaWdodH1gIGlzIG5vdCBhIHZhbGlkIGxlbmd0aCBmb3IgdGhlIGAkaGVpZ2h0YCBhcmd1bWVudCBcIiArXG4gICAgICAgICAgIFwiaW4gdGhlIGBzaXplYCBtaXhpbi5cIjtcbiAgfVxuXG4gIEBpZiBfaXMtc2l6ZSgkd2lkdGgpIHtcbiAgICB3aWR0aDogJHdpZHRoO1xuICB9IEBlbHNlIHtcbiAgICBAZXJyb3IgXCJgI3skd2lkdGh9YCBpcyBub3QgYSB2YWxpZCBsZW5ndGggZm9yIHRoZSBgJHdpZHRoYCBhcmd1bWVudCBcIiArXG4gICAgICAgICAgIFwiaW4gdGhlIGBzaXplYCBtaXhpbi5cIjtcbiAgfVxufVxuIiwiQGNoYXJzZXQgXCJVVEYtOFwiO1xuXG4vLy8gU3RyaXBzIHRoZSB1bml0IGZyb20gYSBudW1iZXIuXG4vLy9cbi8vLyBAYXJndW1lbnQge251bWJlcn0gJHZhbHVlXG4vLy9cbi8vLyBAcmV0dXJuIHtudW1iZXIgKHVuaXRsZXNzKX1cbi8vL1xuLy8vIEBleGFtcGxlIHNjc3Ncbi8vLyAgICRkaW1lbnNpb246IHN0cmlwLXVuaXQoMTBlbSk7XG4vLy9cbi8vLyAgIC8vIE91dHB1dFxuLy8vICAgJGRpbWVuc2lvbjogMTA7XG5cbkBmdW5jdGlvbiBzdHJpcC11bml0KCR2YWx1ZSkge1xuICBAcmV0dXJuICgkdmFsdWUgLyAoJHZhbHVlICogMCArIDEpKTtcbn1cbiIsIkBjaGFyc2V0IFwiVVRGLThcIjtcblxuLy8vL1xuLy8vIEB0eXBlIGxpc3Rcbi8vL1xuLy8vIEByZXF1aXJlIHtmdW5jdGlvbn0gX2Fzc2lnbi1pbnB1dHNcbi8vL1xuLy8vIEByZXF1aXJlIHt2YXJpYWJsZX0gJF90ZXh0LWlucHV0cy1saXN0XG4vLy8vXG5cbi8vLyBBIGxpc3Qgb2YgYWxsIF90ZXh0LWJhc2VkXyBIVE1MIGlucHV0cy4gUGxlYXNlIG5vdGUgdGhhdCB5b3UgbXVzdFxuLy8vIGludGVycG9sYXRlIHRoZSB2YXJpYWJsZSAoYCN7fWApIHRvIHVzZSBpdCBhcyBhIHNlbGVjdG9yLlxuLy8vXG4vLy8gQGV4YW1wbGUgc2Nzc1xuLy8vICAgI3skYWxsLXRleHQtaW5wdXRzfSB7XG4vLy8gICAgIGJvcmRlcjogMXB4IHNvbGlkICNjY2M7XG4vLy8gICB9XG4vLy9cbi8vLyAgIC8vIENTUyBPdXRwdXRcbi8vLyAgIFt0eXBlPSdjb2xvciddLFxuLy8vICAgW3R5cGU9J2RhdGUnXSxcbi8vLyAgIFt0eXBlPSdkYXRldGltZSddLFxuLy8vICAgW3R5cGU9J2RhdGV0aW1lLWxvY2FsJ10sXG4vLy8gICBbdHlwZT0nZW1haWwnXSxcbi8vLyAgIFt0eXBlPSdtb250aCddLFxuLy8vICAgW3R5cGU9J251bWJlciddLFxuLy8vICAgW3R5cGU9J3Bhc3N3b3JkJ10sXG4vLy8gICBbdHlwZT0nc2VhcmNoJ10sXG4vLy8gICBbdHlwZT0ndGVsJ10sXG4vLy8gICBbdHlwZT0ndGV4dCddLFxuLy8vICAgW3R5cGU9J3RpbWUnXSxcbi8vLyAgIFt0eXBlPSd1cmwnXSxcbi8vLyAgIFt0eXBlPSd3ZWVrJ10sXG4vLy8gICBpbnB1dDpub3QoW3R5cGVdKSxcbi8vLyAgIHRleHRhcmVhIHtcbi8vLyAgICAgYm9yZGVyOiAxcHggc29saWQgI2NjYztcbi8vLyAgIH1cblxuJGFsbC10ZXh0LWlucHV0czogX2Fzc2lnbi1pbnB1dHMoJF90ZXh0LWlucHV0cy1saXN0KTtcblxuLy8vIEEgbGlzdCBvZiBhbGwgX3RleHQtYmFzZWRfIEhUTUwgaW5wdXRzIHdpdGggdGhlIGA6YWN0aXZlYCBwc2V1ZG8tY2xhc3Ncbi8vLyBhcHBsaWVkLiBQbGVhc2Ugbm90ZSB0aGF0IHlvdSBtdXN0IGludGVycG9sYXRlIHRoZSB2YXJpYWJsZSAoYCN7fWApIHRvIHVzZVxuLy8vIGl0IGFzIGEgc2VsZWN0b3IuXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzXG4vLy8gICAjeyRhbGwtdGV4dC1pbnB1dHMtYWN0aXZlfSB7XG4vLy8gICAgIGJvcmRlcjogMXB4IHNvbGlkICNhYWE7XG4vLy8gICB9XG4vLy9cbi8vLyAgIC8vIENTUyBPdXRwdXRcbi8vLyAgIFt0eXBlPSdjb2xvciddOmFjdGl2ZSxcbi8vLyAgIFt0eXBlPSdkYXRlJ106YWN0aXZlLFxuLy8vICAgW3R5cGU9J2RhdGV0aW1lJ106YWN0aXZlLFxuLy8vICAgW3R5cGU9J2RhdGV0aW1lLWxvY2FsJ106YWN0aXZlLFxuLy8vICAgW3R5cGU9J2VtYWlsJ106YWN0aXZlLFxuLy8vICAgW3R5cGU9J21vbnRoJ106YWN0aXZlLFxuLy8vICAgW3R5cGU9J251bWJlciddOmFjdGl2ZSxcbi8vLyAgIFt0eXBlPSdwYXNzd29yZCddOmFjdGl2ZSxcbi8vLyAgIFt0eXBlPSdzZWFyY2gnXTphY3RpdmUsXG4vLy8gICBbdHlwZT0ndGVsJ106YWN0aXZlLFxuLy8vICAgW3R5cGU9J3RleHQnXTphY3RpdmUsXG4vLy8gICBbdHlwZT0ndGltZSddOmFjdGl2ZSxcbi8vLyAgIFt0eXBlPSd1cmwnXTphY3RpdmUsXG4vLy8gICBbdHlwZT0nd2VlayddOmFjdGl2ZSxcbi8vLyAgIGlucHV0Om5vdChbdHlwZV0pOmFjdGl2ZSxcbi8vLyAgIHRleHRhcmVhOmFjdGl2ZSB7XG4vLy8gICAgIGJvcmRlcjogMXB4IHNvbGlkICNhYWE7XG4vLy8gICB9XG5cbiRhbGwtdGV4dC1pbnB1dHMtYWN0aXZlOiBfYXNzaWduLWlucHV0cygkX3RleHQtaW5wdXRzLWxpc3QsIGFjdGl2ZSk7XG5cbi8vLyBBIGxpc3Qgb2YgYWxsIF90ZXh0LWJhc2VkXyBIVE1MIGlucHV0cyB3aXRoIHRoZSBgOmZvY3VzYCBwc2V1ZG8tY2xhc3Ncbi8vLyBhcHBsaWVkLiBQbGVhc2Ugbm90ZSB0aGF0IHlvdSBtdXN0IGludGVycG9sYXRlIHRoZSB2YXJpYWJsZSAoYCN7fWApIHRvIHVzZVxuLy8vIGl0IGFzIGEgc2VsZWN0b3IuXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzXG4vLy8gICAjeyRhbGwtdGV4dC1pbnB1dHMtZm9jdXN9IHtcbi8vLyAgICAgYm9yZGVyOiAxcHggc29saWQgIzE1NjVjMDtcbi8vLyAgIH1cbi8vL1xuLy8vICAgLy8gQ1NTIE91dHB1dFxuLy8vICAgW3R5cGU9J2NvbG9yJ106Zm9jdXMsXG4vLy8gICBbdHlwZT0nZGF0ZSddOmZvY3VzLFxuLy8vICAgW3R5cGU9J2RhdGV0aW1lJ106Zm9jdXMsXG4vLy8gICBbdHlwZT0nZGF0ZXRpbWUtbG9jYWwnXTpmb2N1cyxcbi8vLyAgIFt0eXBlPSdlbWFpbCddOmZvY3VzLFxuLy8vICAgW3R5cGU9J21vbnRoJ106Zm9jdXMsXG4vLy8gICBbdHlwZT0nbnVtYmVyJ106Zm9jdXMsXG4vLy8gICBbdHlwZT0ncGFzc3dvcmQnXTpmb2N1cyxcbi8vLyAgIFt0eXBlPSdzZWFyY2gnXTpmb2N1cyxcbi8vLyAgIFt0eXBlPSd0ZWwnXTpmb2N1cyxcbi8vLyAgIFt0eXBlPSd0ZXh0J106Zm9jdXMsXG4vLy8gICBbdHlwZT0ndGltZSddOmZvY3VzLFxuLy8vICAgW3R5cGU9J3VybCddOmZvY3VzLFxuLy8vICAgW3R5cGU9J3dlZWsnXTpmb2N1cyxcbi8vLyAgIGlucHV0Om5vdChbdHlwZV0pOmZvY3VzLFxuLy8vICAgdGV4dGFyZWE6Zm9jdXMge1xuLy8vICAgICBib3JkZXI6IDFweCBzb2xpZCAjMTU2NWMwO1xuLy8vICAgfVxuXG4kYWxsLXRleHQtaW5wdXRzLWZvY3VzOiBfYXNzaWduLWlucHV0cygkX3RleHQtaW5wdXRzLWxpc3QsIGZvY3VzKTtcblxuLy8vIEEgbGlzdCBvZiBhbGwgX3RleHQtYmFzZWRfIEhUTUwgaW5wdXRzIHdpdGggdGhlIGA6aG92ZXJgIHBzZXVkby1jbGFzc1xuLy8vIGFwcGxpZWQuIFBsZWFzZSBub3RlIHRoYXQgeW91IG11c3QgaW50ZXJwb2xhdGUgdGhlIHZhcmlhYmxlIChgI3t9YCkgdG8gdXNlXG4vLy8gaXQgYXMgYSBzZWxlY3Rvci5cbi8vL1xuLy8vIEBleGFtcGxlIHNjc3Ncbi8vLyAgICN7JGFsbC10ZXh0LWlucHV0cy1ob3Zlcn0ge1xuLy8vICAgICBib3JkZXI6IDFweCBzb2xpZCAjYWFhO1xuLy8vICAgfVxuLy8vXG4vLy8gICAvLyBDU1MgT3V0cHV0XG4vLy8gICBbdHlwZT0nY29sb3InXTpob3Zlcixcbi8vLyAgIFt0eXBlPSdkYXRlJ106aG92ZXIsXG4vLy8gICBbdHlwZT0nZGF0ZXRpbWUnXTpob3Zlcixcbi8vLyAgIFt0eXBlPSdkYXRldGltZS1sb2NhbCddOmhvdmVyLFxuLy8vICAgW3R5cGU9J2VtYWlsJ106aG92ZXIsXG4vLy8gICBbdHlwZT0nbW9udGgnXTpob3Zlcixcbi8vLyAgIFt0eXBlPSdudW1iZXInXTpob3Zlcixcbi8vLyAgIFt0eXBlPSdwYXNzd29yZCddOmhvdmVyLFxuLy8vICAgW3R5cGU9J3NlYXJjaCddOmhvdmVyLFxuLy8vICAgW3R5cGU9J3RlbCddOmhvdmVyLFxuLy8vICAgW3R5cGU9J3RleHQnXTpob3Zlcixcbi8vLyAgIFt0eXBlPSd0aW1lJ106aG92ZXIsXG4vLy8gICBbdHlwZT0ndXJsJ106aG92ZXIsXG4vLy8gICBbdHlwZT0nd2VlayddOmhvdmVyLFxuLy8vICAgaW5wdXQ6bm90KFt0eXBlXSk6aG92ZXIsXG4vLy8gICB0ZXh0YXJlYTpob3ZlciB7XG4vLy8gICAgIGJvcmRlcjogMXB4IHNvbGlkICNhYWE7XG4vLy8gICB9XG5cbiRhbGwtdGV4dC1pbnB1dHMtaG92ZXI6IF9hc3NpZ24taW5wdXRzKCRfdGV4dC1pbnB1dHMtbGlzdCwgaG92ZXIpO1xuXG4vLy8gQSBsaXN0IG9mIGFsbCBfdGV4dC1iYXNlZF8gSFRNTCBpbnB1dHMgd2l0aCB0aGUgYDppbnZhbGlkYCBwc2V1ZG8tY2xhc3Ncbi8vLyBhcHBsaWVkLiBQbGVhc2Ugbm90ZSB0aGF0IHlvdSBtdXN0IGludGVycG9sYXRlIHRoZSB2YXJpYWJsZSAoYCN7fWApIHRvIHVzZVxuLy8vIGl0IGFzIGEgc2VsZWN0b3IuXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzXG4vLy8gICAjeyRhbGwtdGV4dC1pbnB1dHMtaW52YWxpZH0ge1xuLy8vICAgICBib3JkZXI6IDFweCBzb2xpZCAjMDBmO1xuLy8vICAgfVxuLy8vXG4vLy8gICAvLyBDU1MgT3V0cHV0XG4vLy8gICBbdHlwZT0nY29sb3InXTppbnZhbGlkLFxuLy8vICAgW3R5cGU9J2RhdGUnXTppbnZhbGlkLFxuLy8vICAgW3R5cGU9J2RhdGV0aW1lJ106aW52YWxpZCxcbi8vLyAgIFt0eXBlPSdkYXRldGltZS1sb2NhbCddOmludmFsaWQsXG4vLy8gICBbdHlwZT0nZW1haWwnXTppbnZhbGlkLFxuLy8vICAgW3R5cGU9J21vbnRoJ106aW52YWxpZCxcbi8vLyAgIFt0eXBlPSdudW1iZXInXTppbnZhbGlkLFxuLy8vICAgW3R5cGU9J3Bhc3N3b3JkJ106aW52YWxpZCxcbi8vLyAgIFt0eXBlPSdzZWFyY2gnXTppbnZhbGlkLFxuLy8vICAgW3R5cGU9J3RlbCddOmludmFsaWQsXG4vLy8gICBbdHlwZT0ndGV4dCddOmludmFsaWQsXG4vLy8gICBbdHlwZT0ndGltZSddOmludmFsaWQsXG4vLy8gICBbdHlwZT0ndXJsJ106aW52YWxpZCxcbi8vLyAgIFt0eXBlPSd3ZWVrJ106aW52YWxpZCxcbi8vLyAgIGlucHV0Om5vdChbdHlwZV0pOmludmFsaWQsXG4vLy8gICB0ZXh0YXJlYTppbnZhbGlkIHtcbi8vLyAgICAgYm9yZGVyOiAxcHggc29saWQgIzAwZjtcbi8vLyAgIH1cblxuJGFsbC10ZXh0LWlucHV0cy1pbnZhbGlkOiBfYXNzaWduLWlucHV0cygkX3RleHQtaW5wdXRzLWxpc3QsIGludmFsaWQpO1xuIiwiQGNoYXJzZXQgXCJVVEYtOFwiO1xuXG4vLyBzY3NzLWxpbnQ6ZGlzYWJsZSBTcGFjZUFmdGVyQ29tbWEsIFVubmVjZXNzYXJ5TWFudGlzc2EsIFRyYWlsaW5nWmVyb1xuXG4vLy8vXG4vLy8gQ1NTIGN1YmljLWJlemllciB0aW1pbmcgZnVuY3Rpb25zLlxuLy8vXG4vLy8gQGxpbmsgaHR0cHM6Ly9nb28uZ2wvcDh1NlNLXG4vLy9cbi8vLyBAdHlwZSBzdHJpbmdcbi8vLy9cblxuJGVhc2UtaW4tcXVhZDogICAgICBjdWJpYy1iZXppZXIoMC41NTAsICAwLjA4NSwgMC42ODAsIDAuNTMwKTtcbiRlYXNlLWluLWN1YmljOiAgICAgY3ViaWMtYmV6aWVyKDAuNTUwLCAgMC4wNTUsIDAuNjc1LCAwLjE5MCk7XG4kZWFzZS1pbi1xdWFydDogICAgIGN1YmljLWJlemllcigwLjg5NSwgIDAuMDMwLCAwLjY4NSwgMC4yMjApO1xuJGVhc2UtaW4tcXVpbnQ6ICAgICBjdWJpYy1iZXppZXIoMC43NTUsICAwLjA1MCwgMC44NTUsIDAuMDYwKTtcbiRlYXNlLWluLXNpbmU6ICAgICAgY3ViaWMtYmV6aWVyKDAuNDcwLCAgMC4wMDAsIDAuNzQ1LCAwLjcxNSk7XG4kZWFzZS1pbi1leHBvOiAgICAgIGN1YmljLWJlemllcigwLjk1MCwgIDAuMDUwLCAwLjc5NSwgMC4wMzUpO1xuJGVhc2UtaW4tY2lyYzogICAgICBjdWJpYy1iZXppZXIoMC42MDAsICAwLjA0MCwgMC45ODAsIDAuMzM1KTtcbiRlYXNlLWluLWJhY2s6ICAgICAgY3ViaWMtYmV6aWVyKDAuNjAwLCAtMC4yODAsIDAuNzM1LCAwLjA0NSk7XG5cbiRlYXNlLW91dC1xdWFkOiAgICAgY3ViaWMtYmV6aWVyKDAuMjUwLCAgMC40NjAsIDAuNDUwLCAwLjk0MCk7XG4kZWFzZS1vdXQtY3ViaWM6ICAgIGN1YmljLWJlemllcigwLjIxNSwgIDAuNjEwLCAwLjM1NSwgMS4wMDApO1xuJGVhc2Utb3V0LXF1YXJ0OiAgICBjdWJpYy1iZXppZXIoMC4xNjUsICAwLjg0MCwgMC40NDAsIDEuMDAwKTtcbiRlYXNlLW91dC1xdWludDogICAgY3ViaWMtYmV6aWVyKDAuMjMwLCAgMS4wMDAsIDAuMzIwLCAxLjAwMCk7XG4kZWFzZS1vdXQtc2luZTogICAgIGN1YmljLWJlemllcigwLjM5MCwgIDAuNTc1LCAwLjU2NSwgMS4wMDApO1xuJGVhc2Utb3V0LWV4cG86ICAgICBjdWJpYy1iZXppZXIoMC4xOTAsICAxLjAwMCwgMC4yMjAsIDEuMDAwKTtcbiRlYXNlLW91dC1jaXJjOiAgICAgY3ViaWMtYmV6aWVyKDAuMDc1LCAgMC44MjAsIDAuMTY1LCAxLjAwMCk7XG4kZWFzZS1vdXQtYmFjazogICAgIGN1YmljLWJlemllcigwLjE3NSwgIDAuODg1LCAwLjMyMCwgMS4yNzUpO1xuXG4kZWFzZS1pbi1vdXQtcXVhZDogIGN1YmljLWJlemllcigwLjQ1NSwgIDAuMDMwLCAwLjUxNSwgMC45NTUpO1xuJGVhc2UtaW4tb3V0LWN1YmljOiBjdWJpYy1iZXppZXIoMC42NDUsICAwLjA0NSwgMC4zNTUsIDEuMDAwKTtcbiRlYXNlLWluLW91dC1xdWFydDogY3ViaWMtYmV6aWVyKDAuNzcwLCAgMC4wMDAsIDAuMTc1LCAxLjAwMCk7XG4kZWFzZS1pbi1vdXQtcXVpbnQ6IGN1YmljLWJlemllcigwLjg2MCwgIDAuMDAwLCAwLjA3MCwgMS4wMDApO1xuJGVhc2UtaW4tb3V0LXNpbmU6ICBjdWJpYy1iZXppZXIoMC40NDUsICAwLjA1MCwgMC41NTAsIDAuOTUwKTtcbiRlYXNlLWluLW91dC1leHBvOiAgY3ViaWMtYmV6aWVyKDEuMDAwLCAgMC4wMDAsIDAuMDAwLCAxLjAwMCk7XG4kZWFzZS1pbi1vdXQtY2lyYzogIGN1YmljLWJlemllcigwLjc4NSwgIDAuMTM1LCAwLjE1MCwgMC44NjApO1xuJGVhc2UtaW4tb3V0LWJhY2s6ICBjdWJpYy1iZXppZXIoMC42ODAsIC0wLjU1MCwgMC4yNjUsIDEuNTUwKTtcbiIsIkBjaGFyc2V0IFwiVVRGLThcIjtcblxuLy8vIE1peGVzIGEgY29sb3Igd2l0aCB3aGl0ZS5cbi8vL1xuLy8vIEBhcmd1bWVudCB7Y29sb3J9ICRjb2xvclxuLy8vXG4vLy8gQGFyZ3VtZW50IHtudW1iZXIgKHBlcmNlbnRhZ2UpfSAkcGVyY2VudFxuLy8vICAgVGhlIGFtb3VudCBvZiB3aGl0ZSB0byBiZSBtaXhlZCBpbi5cbi8vL1xuLy8vIEByZXR1cm4ge2NvbG9yfVxuLy8vXG4vLy8gQGV4YW1wbGUgc2Nzc1xuLy8vICAgLmVsZW1lbnQge1xuLy8vICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0aW50KCM2ZWNhYTYsIDQwJSk7XG4vLy8gICB9XG4vLy9cbi8vLyAgIC8vIENTUyBPdXRwdXRcbi8vLyAgIC5lbGVtZW50IHtcbi8vLyAgICAgYmFja2dyb3VuZC1jb2xvcjogI2E4ZGZjOTtcbi8vLyAgIH1cblxuQGZ1bmN0aW9uIHRpbnQoXG4gICRjb2xvcixcbiAgJHBlcmNlbnRcbikge1xuICBAaWYgbm90IF9pcy1jb2xvcigkY29sb3IpIHtcbiAgICBAZXJyb3IgXCJgI3skY29sb3J9YCBpcyBub3QgYSB2YWxpZCBjb2xvciBmb3IgdGhlIGAkY29sb3JgIGFyZ3VtZW50IGluIFwiICtcbiAgICAgICAgICAgXCJ0aGUgYHRpbnRgIG1peGluLlwiO1xuICB9IEBlbHNlIHtcbiAgICBAcmV0dXJuIG1peCgjZmZmLCAkY29sb3IsICRwZXJjZW50KTtcbiAgfVxufVxuIiwiQGNoYXJzZXQgXCJVVEYtOFwiO1xuXG4vLy8gR2VuZXJhdGVzIGEgdHJpYW5nbGUgcG9pbnRpbmcgaW4gYSBzcGVjaWZpZWQgZGlyZWN0aW9uLlxuLy8vXG4vLy8gQGFyZ3VtZW50IHtzdHJpbmd9ICRkaXJlY3Rpb25cbi8vLyAgIFRoZSBkaXJlY3Rpb24gdGhlIHRyaWFuZ2xlIHNob3VsZCBwb2ludC4gQWNjZXB0cyBgdXBgLCBgdXAtcmlnaHRgLFxuLy8vICAgYHJpZ2h0YCwgYGRvd24tcmlnaHRgLCBgZG93bmAsIGBkb3duLWxlZnRgLCBgbGVmdGAgb3IgYHVwLWxlZnRgLlxuLy8vXG4vLy8gQGFyZ3VtZW50IHtudW1iZXIgKHdpdGggdW5pdCl9ICR3aWR0aFxuLy8vICAgV2lkdGggb2YgdGhlIHRyaWFuZ2xlLlxuLy8vXG4vLy8gQGFyZ3VtZW50IHtudW1iZXIgKHdpdGggdW5pdCl9ICRoZWlnaHRcbi8vLyAgIEhlaWdodCBvZiB0aGUgdHJpYW5nbGUuXG4vLy9cbi8vLyBAYXJndW1lbnQge2NvbG9yfSAkY29sb3Jcbi8vLyAgIENvbG9yIG9mIHRoZSB0cmlhbmdsZS5cbi8vL1xuLy8vIEBleGFtcGxlIHNjc3Ncbi8vLyAgIC5lbGVtZW50IHtcbi8vLyAgICAgJjo6YmVmb3JlIHtcbi8vLyAgICAgICBAaW5jbHVkZSB0cmlhbmdsZShcInVwXCIsIDJyZW0sIDFyZW0sICNiMjVjOWMpO1xuLy8vICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4vLy8gICAgIH1cbi8vLyAgIH1cbi8vL1xuLy8vICAgLy8gQ1NTIE91dHB1dFxuLy8vICAgLmVsZW1lbnQ6OmJlZm9yZSB7XG4vLy8gICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4vLy8gICAgIGhlaWdodDogMDtcbi8vLyAgICAgd2lkdGg6IDA7XG4vLy8gICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgI2IyNWM5Yztcbi8vLyAgICAgYm9yZGVyLXdpZHRoOiAwIDFyZW0gMXJlbTtcbi8vLyAgICAgY29udGVudDogXCJcIjtcbi8vLyAgIH1cblxuQG1peGluIHRyaWFuZ2xlKFxuICAkZGlyZWN0aW9uLFxuICAkd2lkdGgsXG4gICRoZWlnaHQsXG4gICRjb2xvclxuKSB7XG4gIEBpZiBub3QgaW5kZXgoXG4gICAgXCJ1cFwiIFwidXAtcmlnaHRcIiBcInJpZ2h0XCIgXCJkb3duLXJpZ2h0XCIgXCJkb3duXCIgXCJkb3duLWxlZnRcIiBcImxlZnRcIiBcInVwLWxlZnRcIixcbiAgICAkZGlyZWN0aW9uXG4gICkge1xuICAgIEBlcnJvciBcIkRpcmVjdGlvbiBtdXN0IGJlIGB1cGAsIGB1cC1yaWdodGAsIGByaWdodGAsIGBkb3duLXJpZ2h0YCwgXCIgK1xuICAgICAgICAgICBcImBkb3duYCwgYGRvd24tbGVmdGAsIGBsZWZ0YCBvciBgdXAtbGVmdGAuXCI7XG4gIH0gQGVsc2UgaWYgbm90IF9pcy1jb2xvcigkY29sb3IpIHtcbiAgICBAZXJyb3IgXCJgI3skY29sb3J9YCBpcyBub3QgYSB2YWxpZCBjb2xvciBmb3IgdGhlIGAkY29sb3JgIGFyZ3VtZW50IGluIFwiICtcbiAgICAgICAgICAgXCJ0aGUgYHRyaWFuZ2xlYCBtaXhpbi5cIjtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgd2lkdGg6IDA7XG5cbiAgICBAaWYgJGRpcmVjdGlvbiA9PSBcInVwXCIge1xuICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAkY29sb3I7XG4gICAgICBib3JkZXItd2lkdGg6IDAgKCR3aWR0aCAvIDIpICRoZWlnaHQ7XG4gICAgfSBAZWxzZSBpZiAkZGlyZWN0aW9uID09IFwidXAtcmlnaHRcIiB7XG4gICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50ICRjb2xvciB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlci13aWR0aDogMCAkd2lkdGggJHdpZHRoIDA7XG4gICAgfSBAZWxzZSBpZiAkZGlyZWN0aW9uID09IFwicmlnaHRcIiB7XG4gICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICRjb2xvcjtcbiAgICAgIGJvcmRlci13aWR0aDogKCRoZWlnaHQgLyAyKSAwICgkaGVpZ2h0IC8gMikgJHdpZHRoO1xuICAgIH0gQGVsc2UgaWYgJGRpcmVjdGlvbiA9PSBcImRvd24tcmlnaHRcIiB7XG4gICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICRjb2xvcjtcbiAgICAgIGJvcmRlci13aWR0aDogMCAwICR3aWR0aCAkd2lkdGg7XG4gICAgfSBAZWxzZSBpZiAkZGlyZWN0aW9uID09IFwiZG93blwiIHtcbiAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLXdpZHRoOiAkaGVpZ2h0ICgkd2lkdGggLyAyKSAwO1xuICAgIH0gQGVsc2UgaWYgJGRpcmVjdGlvbiA9PSBcImRvd24tbGVmdFwiIHtcbiAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgJGNvbG9yO1xuICAgICAgYm9yZGVyLXdpZHRoOiAkd2lkdGggMCAwICR3aWR0aDtcbiAgICB9IEBlbHNlIGlmICRkaXJlY3Rpb24gPT0gXCJsZWZ0XCIge1xuICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCAkY29sb3IgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXItd2lkdGg6ICgkaGVpZ2h0IC8gMikgJHdpZHRoICgkaGVpZ2h0IC8gMikgMDtcbiAgICB9IEBlbHNlIGlmICRkaXJlY3Rpb24gPT0gXCJ1cC1sZWZ0XCIge1xuICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3IgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXItd2lkdGg6ICR3aWR0aCAkd2lkdGggMCAwO1xuICAgIH1cbiAgfVxufVxuIiwiQGNoYXJzZXQgXCJVVEYtOFwiO1xuXG4vLy8gR2VuZXJhdGVzIHZlbmRvciBwcmVmaXhlcyBmb3IgdmFsdWVzLlxuLy8vXG4vLy8gQGFyZ3VtZW50IHtzdHJpbmd9ICRwcm9wZXJ0eVxuLy8vICAgUHJvcGVydHkgdG8gdXNlLlxuLy8vXG4vLy8gQGFyZ3VtZW50IHtzdHJpbmd9ICR2YWx1ZVxuLy8vICAgVmFsdWUgdG8gcHJlZml4LlxuLy8vXG4vLy8gQGFyZ3VtZW50IHtsaXN0fSAkcHJlZml4ZXNcbi8vLyAgIFZlbmRvciBwcmVmaXhlcyB0byBvdXRwdXQuXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzXG4vLy8gICAuZWxlbWVudCB7XG4vLy8gICAgIEBpbmNsdWRlIHZhbHVlLXByZWZpeGVyKGN1cnNvciwgZ3JhYiwgKFwid2Via2l0XCIsIFwibW96XCIpKTtcbi8vLyAgIH1cbi8vL1xuLy8vICAgLy8gQ1NTIE91dHB1dFxuLy8vICAgLmVsZW1lbnQge1xuLy8vICAgICBjdXJzb3I6IC13ZWJraXQtZ3JhYjtcbi8vLyAgICAgY3Vyc29yOiAtbW96LWdyYWI7XG4vLy8gICAgIGN1cnNvcjogZ3JhYjtcbi8vLyAgIH1cbi8vL1xuLy8vIEBhdXRob3IgTWF0dGhldyBUb2JpYXN6XG5cbkBtaXhpbiB2YWx1ZS1wcmVmaXhlcihcbiAgJHByb3BlcnR5LFxuICAkdmFsdWUsXG4gICRwcmVmaXhlczogKClcbikge1xuICBAZWFjaCAkcHJlZml4IGluICRwcmVmaXhlcyB7XG4gICAgI3skcHJvcGVydHl9OiAje1wiLVwiICsgJHByZWZpeCArIFwiLVwiICsgJHZhbHVlfTtcbiAgfVxuICAjeyRwcm9wZXJ0eX06ICR2YWx1ZTtcbn1cbiIsIi8vIEJpdHRlcnMgMS4wLjBcbi8vIGh0dHA6Ly9iaXR0ZXJzLmJvdXJib24uaW9cbi8vIENvcHlyaWdodCAyMDEzLTIwMTUgdGhvdWdodGJvdCwgaW5jLlxuLy8gTUlUIExpY2Vuc2VcblxuQGltcG9ydCBcInZhcmlhYmxlc1wiO1xuXG4vLyBOZWF0IFNldHRpbmdzIC0tIHVuY29tbWVudCBpZiB1c2luZyBOZWF0IC0tIG11c3QgYmUgaW1wb3J0ZWQgYmVmb3JlIE5lYXRcbi8vIEBpbXBvcnQgXCJncmlkLXNldHRpbmdzXCI7XG5cbkBpbXBvcnQgXCJidXR0b25zXCI7XG5AaW1wb3J0IFwibmF2LWl0ZW1zXCI7XG5AaW1wb3J0IFwiZm9ybXNcIjtcbkBpbXBvcnQgXCJsaXN0c1wiO1xuQGltcG9ydCBcInRhYmxlc1wiO1xuQGltcG9ydCBcInR5cG9ncmFwaHlcIjtcbiIsIi8vLyBSb2JvdG8gZm9udCBzdGFjay5cbi8vL1xuLy8vIEB0eXBlIExpc3RcblxuJHJvYm90bzogXCJSb2JvdG9cIiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBcIkhlbHZldGljYVwiLCBcIkFyaWFsXCIsIHNhbnMtc2VyaWY7XG4kcm9ib3RvQzogXCJSb2JvdG8gQ29uZGVuc2VkXCIsIFwiSGVsdmV0aWNhIE5ldWUgQ29uZGVuc2VkXCIsIFwiSGVsdmV0aWNhIENvbmRlbnNlZFwiLCBcIkFyaWFsIE5hcnJvd1wiLCBzYW5zLXNlcmlmO1xuXG4vLyBUeXBvZ3JhcGh5XG4kYmFzZS1mb250LWZhbWlseTogJHJvYm90bztcbiRiYXNlLWZvbnQtdGhpbjogJHJvYm90b0M7XG4kaGVhZGluZy1mb250LWZhbWlseTogJGJhc2UtZm9udC1mYW1pbHk7XG4kaGVhZGluZy1mb250LXRoaW46ICRyb2JvdG9DO1xuXG4vLyBGb250IFNpemVzXG4kYmFzZS1mb250LXNpemU6IDE4cHg7XG5cbi8vIExpbmUgaGVpZ2h0XG4kYmFzZS1saW5lLWhlaWdodDogMS41O1xuJGhlYWRpbmctbGluZS1oZWlnaHQ6IDEuMjtcblxuLy8gT3RoZXIgU2l6ZXNcbiRiYXNlLWJvcmRlci1yYWRpdXM6IC4yZW07XG4kYmFzZS1zcGFjaW5nOiAkYmFzZS1saW5lLWhlaWdodCAqIDFlbTtcbiRzbWFsbC1zcGFjaW5nOiAkYmFzZS1zcGFjaW5nIC8gMjtcbiRiYXNlLXotaW5kZXg6IDA7XG5cbi8vIENvbG9yc1xuJGJsdWU6ICM2YmFiZDI7XG4kYmx1ZS1zYXR1cmF0ZWQ6ICMyNDkwZDE7XG4kb3JhbmdlOiAjZTE3ZDFhO1xuJGdyZWVuOiAjODJjZTM5O1xuJHJlZDogI2I2NDQzNDtcbiR5ZWxsb3c6ICNmOWU5Mjc7XG4kdmlvbGV0OiAjNkUzQTc1O1xuJGZiQ29sb3I6ICMzYTY3YTE7XG4kaW5Db2xvcjogIzAwN2FiOTtcbiRncENvbG9yOiAjYzUzODI5O1xuXG4kZGFya2VzdC1ncmF5OiAjMjIyO1xuJGRhcmstZ3JheTogIzQyNDI0MjtcbiRtZWQtZGFyay1ncmF5OiAjMzUzNTM1O1xuJG1lZGl1bS1ncmF5OiAjOTk5O1xuJGxpZ2h0LWdyYXk6ICNhMWExYTE7XG4kbGlnaHRlc3QtZ3JheTogI2QzZDNkMztcbiRvZmYtd2hpdGU6ICNmOGY4Zjg7XG4kYmFzZS13aGl0ZTogI2ZmZjtcbiRiYXNlLWJsYWNrOiAjMDAwO1xuXG4vLyBGb250IENvbG9yc1xuJGJhc2UtYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiRiYXNlLWZvbnQtY29sb3I6ICRkYXJrLWdyYXk7XG4kYWN0aW9uLWNvbG9yOiAkYmx1ZTtcblxuLy8gQm9yZGVyXG4kYmFzZS1ib3JkZXItY29sb3I6ICRsaWdodC1ncmF5O1xuJGJhc2UtYm9yZGVyOiAxcHggc29saWQgJGJhc2UtYm9yZGVyLWNvbG9yO1xuXG4vLyBGb3Jtc1xuJGZvcm0tYm94LXNoYWRvdzogaW5zZXQgMCAxcHggM3B4IHJnYmEoJGJhc2UtYmxhY2ssIDAuMSk7XG4vLyAkZm9ybS1ib3gtc2hhZG93LWZvY3VzOiAkZm9ybS1ib3gtc2hhZG93LCAwIDAgNXB4IGFkanVzdC1jb2xvcigkYWN0aW9uLWNvbG9yLCAkbGlnaHRuZXNzOiAtNSUsICRhbHBoYTogLTAuMyk7XG4kZm9ybS1ib3gtc2hhZG93LWZvY3VzOiAwIDVweCAxMHB4ICByZ2JhKCRiYXNlLWJsYWNrLCAwLjEpO1xuXG5cbiRhc3NldHMtcGF0aDogXCJcIjtcbiIsIiN7JGFsbC1idXR0b25zfSxcbmJ1dHRvbiB7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRiYXNlLXdoaXRlLCAuMjUpO1xuICBib3JkZXItcmFkaXVzOiAkYmFzZS1ib3JkZXItcmFkaXVzO1xuICBib3JkZXI6IG5vbmU7XG4gIGNvbG9yOiAjZmZmO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZm9udC1mYW1pbHk6ICRiYXNlLWZvbnQtZmFtaWx5O1xuICBmb250LXNpemU6ICRiYXNlLWZvbnQtc2l6ZTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgY29sb3I6ICNmZmY7XG4gIH1cblxuICAmOmRpc2FibGVkIHtcbiAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICAgIG9wYWNpdHk6IDAuNTtcbiAgfVxufVxuXG4vKiBkZCBzdHlsaW5nICovXG4uY2xvc2Uge1xuICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKCRiYXNlLXdoaXRlLCAuMik7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDIlO1xuICB0b3A6IDIlO1xuICAmLmRhcmsge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGJhc2UtYmxhY2ssIC4yKTtcblxuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkYmFzZS1ibGFjaywgLjM1KTtcbiAgICB9XG4gIH1cbn1cblxuJWJ0bi1jdGEge1xuICB0cmFuc2l0aW9uOiBhbGwgMzBtcyBlYXNlO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICBmbGV4OiAxO1xuXG4gIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoJGJhc2UtYmxhY2ssIC4xKTtcbiAgYm9yZGVyLXRvcDogMnB4IHNvbGlkIHJnYmEoJGJhc2Utd2hpdGUsIDApO1xuICBib3JkZXItYm90dG9tOiAzcHggc29saWQgcmdiYSgkYmFzZS1ibGFjaywgLjEpO1xuICBib3JkZXItcmFkaXVzOiRiYXNlLWJvcmRlci1yYWRpdXM7XG4gIGNvbG9yOiByZ2JhKCRiYXNlLXdoaXRlLCAxKTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBtYXJnaW46IDAgMWVtIDFlbTtcbiAgcGFkZGluZzogLjVlbSAxZW07XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB0ZXh0LXNoYWRvdzogMXB4IC0xcHggMCByZ2JhKCRiYXNlLWJsYWNrLCAuMSk7XG5cbiAgXG4gIC5idG4tdHh0IHtcbiAgICAmOmJlZm9yZSB7XG4gICAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCByZ2JhKCRiYXNlLXdoaXRlLC41KTtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIGxlZnQ6IC0xMHB4O1xuICAgICAgbWFyZ2luLXJpZ2h0OiAuNWVtO1xuICAgICAgb3BhY2l0eTogLjc1O1xuICAgICAgcGFkZGluZy1yaWdodDogLjVlbTtcbiAgICAgIC8vIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICB3aWR0aDogMzBweDtcbiAgICAgIHotaW5kZXg6IDE7XG5cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kICgtbXMtaGlnaC1jb250cmFzdDogYWN0aXZlKSwgKC1tcy1oaWdoLWNvbnRyYXN0OiBub25lKSB7XG4gICAgICAgIGhlaWdodDogMzBweCAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICY6aG92ZXIge1xuICAgIGJveC1zaGFkb3c6IDAgNXB4IDEwcHggMnB4IHJnYmEoJGJhc2UtYmxhY2ssLjIpO1xuICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDNweDtcbiAgICBjb2xvcjogcmdiYSgkYmFzZS13aGl0ZSwgMSk7XG4gICAgdG9wOiAtMXB4O1xuICB9XG4gICY6YWN0aXZlIHt9XG5cbiAgLmJ1bmRsZWQtZGVhbCAmIHtcbiAgICBmbGV4OiBhdXRvO1xuICB9XG59XG4uYnRuLXNlYXJjaC1zaW1pbGFyIHtcbiAgQGV4dGVuZCAlYnRuLWN0YTtcblxuICBiYWNrZ3JvdW5kOiByZ2JhKCRibHVlLCAxKTtcblxuICAuYnRuLXR4dCB7XG4gICAgJjpiZWZvcmUge1xuICAgICAgY29udGVudDogdXJsKC9icm93c2VyL2ltZy9zZWFyY2guc3ZnKTtcbiAgICB9XG4gIH0gIFxufVxuLmJ0bi1hZGQtY2FydCB7XG4gIEBleHRlbmQgJWJ0bi1jdGE7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG5cbiAgYmFja2dyb3VuZDogcmdiYShkYXJrZW4oJGdyZWVuLCAxMCUpLCAxKTtcbiAgLmJ0bi10eHQge1xuICAgICY6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IHVybCgvYnJvd3Nlci9pbWcvY2FydC5zdmcpO1xuICAgIH1cbiAgfSAgICAgXG5cbiAgJjpob3ZlciB7fVxuXG4gICY6YWN0aXZlIHtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMzBtcyBsaW5lYXI7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHJnYmEoJGJhc2UtYmxhY2ssIC4yKTtcbiAgICBib3gtc2hhZG93OiBpbnNldCAwcHggM3B4IDVweCByZ2JhKCRiYXNlLWJsYWNrLDAuMyk7XG4gICAgYm9yZGVyLWJvdHRvbTogM3B4IHNvbGlkIHJnYmEoJGdyZWVuLCAuMSk7XG4gICAgY29sb3I6IHJnYmEoJGJhc2Utd2hpdGUsIDEpO1xuICAgIHRvcDogMXB4O1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBib3JkZXItdG9wOiAxcHggc29saWQgcmdiYSgkYmFzZS1ibGFjaywgLjIpO1xuICAgICAgYm94LXNoYWRvdzogaW5zZXQgMHB4IDNweCA1cHggcmdiYSgkYmFzZS1ibGFjaywwLjMpO1xuICAgICAgYm9yZGVyLWJvdHRvbTogM3B4IHNvbGlkIHJnYmEoJGdyZWVuLCAuMSk7XG4gICAgICBjb2xvcjogcmdiYSgkYmFzZS13aGl0ZSwgMSk7XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgbWVkaWEoXCI+PTBlbVwiLCBcIjw9cGhhYmxldFwiKSB7XG4gICAgZmxleDogMSAxIDEwMCU7XG4gIH1cblxuICAub3JnLWRvbWFpbi1jdGEgJiB7XG4gICAgYmFja2dyb3VuZDogcmdiYSgkZ3JlZW4sIC4zKTtcbiAgfVxufVxuXG4gIC5jb250YWluLWNhcnQtY3RhLFxuICAuY29udGFpbi1vZmZlci1jdGEge1xuICAgIGFsaWduLXNlbGY6IHN0cmV0Y2g7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG1hcmdpbi1yaWdodDogLjVlbTtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIHdpZHRoOiAyMHB4O1xuICB9XG4uYnRuLW1ha2Utb2ZmZXIge1xuICBAZXh0ZW5kICVidG4tY3RhO1xuICBiYWNrZ3JvdW5kOiBzaGFkZSgkbWVkaXVtLWdyYXksIDI1JSk7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG5cbiAgLm9yZy1kb21haW4tY3RhICYge1xuICAgIGJhY2tncm91bmQ6IHJnYmEoc2hhZGUoJG1lZGl1bS1ncmF5LCAyNSUpLCAuMyk7XG4gIH1cblxuICAuYnRuLXR4dCB7XG4gICAgJjpiZWZvcmUge1xuICAgICAgY29udGVudDogdXJsKC9icm93c2VyL2ltZy9vZmZlci1jaGF0LWJ1YmJsZS5zdmcpO1xuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKC1tcy1oaWdoLWNvbnRyYXN0OiBhY3RpdmUpLCAoLW1zLWhpZ2gtY29udHJhc3Q6IG5vbmUpIHsgIFxuICAgICAgICAgY29udGVudDogdXJsKC9icm93c2VyL2ltZy9vZmZlci1jaGF0LWJ1YmJsZS5wbmcpOyBcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmOmFjdGl2ZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgkYmFzZS13aGl0ZSwgMCk7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHJnYmEoJGJhc2UtYmxhY2ssIC4yKTtcbiAgICBib3gtc2hhZG93OiBpbnNldCAwcHggM3B4IDVweCByZ2JhKCRiYXNlLWJsYWNrLCAuMyk7XG4gICAgY29sb3I6IHJnYmEoJGJhc2Utd2hpdGUsIDEpO1xuICAgIHRvcDogMXB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgfVxufVxuXG5cblxuLmJ0bi1vdXRsaW5lIHtcbiAgdHJhbnNpdGlvbjogYWxsIDMwMG1zIGVhc2UtaW4tb3V0O1xuXG4gICBiYWNrZ3JvdW5kOiByZ2JhKCRiYXNlLXdoaXRlLCAuMSk7XG4gICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKCRiYXNlLXdoaXRlLCAxKTtcbiAgIGJvcmRlci1yYWRpdXM6ICRiYXNlLWJvcmRlci1yYWRpdXM7XG4gICBjb2xvcjogJGJhc2Utd2hpdGU7XG4gICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICBwYWRkaW5nOiAxZW0gMmVtO1xuXG4gICAmLmxhcmdlIHtcbiAgICBmb250LXNpemU6IDEuMnJlbTtcbiAgICBtYXJnaW4tdG9wOiAxcmVtO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEoXCI+PTBlbVwiLCBcIjxwaGFibGV0XCIpIHtcbiAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgIHBhZGRpbmc6IDFlbTtcbiAgICB9XG4gICB9XG4gICAmLnJlc2V0IHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKCRiYXNlLXdoaXRlLCAuMSk7XG4gICAgY29sb3I6IHJnYmEoJGJhc2Utd2hpdGUsIC41KTtcbiAgICBmb250LXNpemU6IDAuODEzcmVtO1xuICAgIG1hcmdpbjogLjVlbSBhdXRvO1xuICAgIHBhZGRpbmc6IC41ZW0gMWVtO1xuICAgfVxuICAgJjp2aXNpdGVkIHtcbiAgICBjb2xvcjogJGJhc2Utd2hpdGU7XG4gICB9XG5cbiAgICY6aG92ZXIge1xuICAgIGJhY2tncm91bmQ6IHJnYmEoJGJhc2Utd2hpdGUsIC4zNSk7XG4gICAgY29sb3I6ICRiYXNlLXdoaXRlO1xuICAgIHRleHQtc2hhZG93OiAwIDFweCAwIHJnYmEoJGJhc2UtYmxhY2ssIC4zNSk7XG5cbiAgICAuc3ZnLWFydy1md2Qge1xuICAgIH1cbiAgIH1cblxuICAuY29udGFpbi1tby1jdGEgJixcbiAgLmNvbnRhaW4tdGRmcy1vZmZlci1jdGEgJiB7XG4gICAgICBmbGV4OiAwIDEgNDAlO1xuXG4gICAgICBAaW5jbHVkZSBtZWRpYShcIj49MGVtXCIsIFwiPD1waGFibGV0XCIpIHtcbiAgICAgICAgZmxleDogMSAxIDEwMCU7XG4gICAgICB9XG4gIH1cblxuICAgJi5mYixcbiAgICYuaW4ge1xuICAgIHRyYW5zaXRpb246IGFsbCAzMG1zIGVhc2UtaW4tb3V0O1xuICAgIGJhY2tncm91bmQ6ICRmYkNvbG9yO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoJGJhc2UtYmxhY2ssIC4xKTtcbiAgICBib3JkZXItYm90dG9tLXdpZHRoOiAzcHg7XG4gICAgbWFyZ2luOiAwIC41ZW07XG4gICAgcGFkZGluZzogLjI1ZW0gMWVtO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZDogZGFya2VuKCRmYkNvbG9yLCA1JSk7XG4gICAgICBib3gtc2hhZG93OiBpbnNldCAwIDNweCAxNXB4IC01cHggcmdiYSgkYmFzZS13aGl0ZSwgLjMpLCAwIDNweCA1cHggLTJweCByZ2JhKCRiYXNlLWJsYWNrLCAuMyk7XG4gICAgICBib3JkZXItYm90dG9tLXdpZHRoOiAzcHg7XG4gICAgICB0b3A6IC0xcHg7XG4gICAgfVxuICAgICY6YWN0aXZlIHtcbiAgICAgIGJveC1zaGFkb3c6IGluc2V0IDAgM3B4IDE1cHggcmdiYSgkYmFzZS1ibGFjaywgLjMpO1xuICAgICAgY29sb3I6ICRiYXNlLXdoaXRlO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgdG9wOiAxcHg7XG5cbiAgICAgICY6aG92ZXIge1xuICAgICAgICBib3gtc2hhZG93OiBpbnNldCAwIDNweCAxNXB4IHJnYmEoJGJhc2UtYmxhY2ssIC4zKTtcbiAgICAgICAgY29sb3I6ICRiYXNlLXdoaXRlO1xuICAgICAgICB0b3A6IDFweDtcbiAgICAgIH1cbiAgICB9XG4gICB9XG4gICAmLmluIHtcbiAgICBiYWNrZ3JvdW5kOiAkaW5Db2xvcjtcblxuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZDogZGFya2VuKCRpbkNvbG9yLCA1JSk7XG4gICAgfVxuICAgfVxuXG4gICAuY29udGFpbi1hcnctZndkIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luLWxlZnQ6IDVweDtcbiAgICBoZWlnaHQ6IDE1cHg7XG4gICAgd2lkdGg6IDE1cHg7XG4gICB9XG4gICBcbiAgICAuc3ZnLWFydy1md2Qge1xuICAgICAgZmlsbDogJGJhc2Utd2hpdGU7XG4gICAgfVxufVxuXG4ucmVtb3ZlLXNlbGVjdGVkIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogMjVweDtcbiAgbGVmdDogOHB4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNXB4O1xuICB3aWR0aDogMjVweDtcbn1cbi5jb250YWluLXN2Zy1yZW1vdmUge1xuICBjbGlwLXJ1bGU6ZXZlbm9kZDtcbiAgZmlsbC1ydWxlOmV2ZW5vZGQ7XG4gIGZpbGw6IHJnYmEoJGxpZ2h0LWdyYXksIDEpO1xuICBcblxuICAmOmhvdmVyIHtcbiAgICBmaWxsOiByZ2JhKCRiYXNlLXdoaXRlLCAuOCk7XG4gIH1cbn1cblxuLmJ0bi1vcmctYnVuZGxlIHtcbiAgdHJhbnNpdGlvbjogYWxsIDMwbXMgZWFzZTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcblxuICBiYWNrZ3JvdW5kOiByZ2JhKCRiYXNlLWJsYWNrLC4yKTtcbiAgYm9yZGVyLXJhZGl1czokYmFzZS1ib3JkZXItcmFkaXVzO1xuICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKCRiYXNlLWJsYWNrLCAuMSk7XG4gIGNvbG9yOiByZ2JhKCRsaWdodC1ncmF5LCAxKTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQtc2l6ZTogLjlyZW07XG4gIG1pbi13aWR0aDo4MHB4O1xuICBwYWRkaW5nOiAuNjVlbSAxZW07XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuXG4gICY6aG92ZXIge1xuICAgIGJhY2tncm91bmQ6IHJnYmEoJGJhc2UtYmxhY2ssIC42KTtcbiAgICBjb2xvcjogcmdiYSgkYmFzZS13aGl0ZSwgLjgpO1xuICB9XG59XG4uYnRuLW9yZy1idW5kbGUtYWRkIHtcbiAgLy8gQGV4dGVuZCAuYnRuLW9yZy1idW5kbGU7XG4gIGNvbG9yOiByZ2JhKCRsaWdodC1ncmF5LCAxKTtcbiAgbWluLXdpZHRoOiA0MHB4O1xuXG4gICY6aG92ZXIge1xuICAgIGNvbG9yOiByZ2JhKCRiYXNlLXdoaXRlLCAuOCk7XG4gIH1cbn1cbiAgLmNvbnRhaW4tc3ZnLWJ1bmRsZSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHdpZHRoOiAxNXB4O1xuICB9XG5cbiAgLmJ0bi1hZG1pbi1kZWFsLW9mLWRheSxcbiAgLmJ0bi1hZG1pbi10b3AtZGVhbCB7XG4gICAgQGV4dGVuZCAlYnRuLWN0YTtcbiAgICBmb250LXNpemU6IDEuMnJlbTtcbiAgICBmb250LXdlaWdodDogNDAwO1xuXG4gICAgYmFja2dyb3VuZDogcmdiYSgkb3JhbmdlLCAxKTtcbiAgICAvLyBib3gtc2hhZG93OiAwIDNweCA1cHggcmdiYSgkYmFzZS1ibGFjaywwKTsgXG4gICAgLmJ0bi10eHQge1xuICAgICAgJjpiZWZvcmUge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuICAgIH0gICAgIFxuXG4gICAgJjpob3ZlciB7fVxuXG4gICAgJjphY3RpdmUge1xuICAgICAgdHJhbnNpdGlvbjogYWxsLCAzMG1zLCBsaW5lYXI7XG4gICAgICBib3JkZXItdG9wOiAxcHggc29saWQgcmdiYSgkYmFzZS1ibGFjaywgLjIpO1xuICAgICAgYm94LXNoYWRvdzogaW5zZXQgMHB4IDNweCA1cHggcmdiYSgkYmFzZS1ibGFjaywwLjMpO1xuICAgICAgYm9yZGVyLWJvdHRvbTogM3B4IHNvbGlkIHJnYmEoJGdyZWVuLCAuMSk7XG4gICAgICBjb2xvcjogcmdiYSgkYmFzZS13aGl0ZSwgMSk7XG4gICAgICB0b3A6IDFweDtcbiAgICAgICY6aG92ZXIge1xuICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgcmdiYSgkYmFzZS1ibGFjaywgLjIpO1xuICAgICAgICBib3gtc2hhZG93OiBpbnNldCAwcHggM3B4IDVweCByZ2JhKCRiYXNlLWJsYWNrLDAuMyk7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDNweCBzb2xpZCByZ2JhKCRncmVlbiwgLjEpO1xuICAgICAgICBjb2xvcjogcmdiYSgkYmFzZS13aGl0ZSwgMSk7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5idG4tYWRtaW4tdG9wLWRlYWwge1xuICAgIGJhY2tncm91bmQ6IHJnYmEoZGFya2VuKCRibHVlLCAxNSUpLDEpO1xuICB9XG5cbiAgLmNvbnRhaW4tc29jaWFsLWZvcm0tZmlsbCB7XG4gICAgdHJhbnNpdGlvbjogYWxsIDMwbXMgZWFzZTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG5cbiAgICAuY29udGFpbmVyLXJlc3VsdHMtcm93ICYge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICB9XG4gIH1cbiAgICAuYnRuLWZvcm0tZmlsbC1mYixcbiAgICAuYnRuLWZvcm0tZmlsbC1ncCB7XG4gICAgICBAZXh0ZW5kICVidG4tY3RhO1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogLjJlbSAxZW07XG4gICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgZm9udC1zaXplOiAxcmVtO1xuXG4gICAgICAmOmJlZm9yZSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgaGVpZ2h0OiAyNHB4O1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IC43NWVtO1xuICAgICAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICB0b3A6IC0uMDVlbTtcbiAgICAgICAgd2lkdGg6IDI0cHg7XG4gICAgICAgIHotaW5kZXg6IDE7XG4gICAgICB9XG5cbiAgICAgICYuZGlzYWJsZWQge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheSAhaW1wb3J0YW50O1xuICAgICAgICBib3JkZXItY29sb3I6ICRsaWdodC1ncmF5ICFpbXBvcnRhbnQ7XG4gICAgICAgIG9wYWNpdHk6IC43NTtcbiAgICAgICAgY3Vyc29yOiB0ZXh0O1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbS13aWR0aDogM3B4O1xuICAgICAgICAgIGNvbG9yOiByZ2JhKCRiYXNlLXdoaXRlLCAxKTtcbiAgICAgICAgICB0b3A6IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLmJ0bi1mb3JtLWZpbGwtZmIge1xuICAgICAgYmFja2dyb3VuZDogJGZiQ29sb3I7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIG1hcmdpbi1yaWdodDogLjVlbTtcblxuICAgICAgJjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiB1cmwoL2Jyb3dzZXIvaW1nL3NvY2lhbC1mYi5zdmcpO1xuICAgICAgfVxuICAgICAgJi5kaXNhYmxlZCB7XG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICBjb250ZW50OiB1cmwoL2Jyb3dzZXIvaW1nL3NvY2lhbC1mYi1ncmF5LnN2Zyk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLmJ0bi1mb3JtLWZpbGwtZ3Age1xuICAgICAgYmFja2dyb3VuZDogJGdwQ29sb3I7XG5cbiAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogdXJsKC9icm93c2VyL2ltZy9zb2NpYWwtZ3Auc3ZnKTtcbiAgICAgIH1cbiAgICB9XG5cblxuICAgIC5hLXR4dC11bmRlcmxpbmUge1xuICAgICAgY29sb3I6ICRiYXNlLXdoaXRlO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG5cbiAgICAgICY6aG92ZXIge1xuICAgICAgICBjb2xvcjogJGJhc2Utd2hpdGU7XG5cbiAgICAgIH1cbiAgICB9XG4iLCIubmF2LXNpbXBsZSB7XG5cdHRyYW5zaXRpb246IGFsbCAzMDBtcyBlYXNlLWluLW91dDtcblx0cG9zaXRpb246IGZpeGVkO1xuXHR3aWR0aDogMTAwJTtcblx0ei1pbmRleDogOTtcbn1cbi5zZWFyY2gtc2ltcGxlIHtcblx0QGV4dGVuZCAubmF2LXNpbXBsZTtcblxuXHRoZWlnaHQ6IDc3cHg7XG5cdHRvcDogODJweDtcblxuXHQmOmJlZm9yZSB7XG5cdFx0dHJhbnNpdGlvbjogYWxsIDMwMG1zIGVhc2UtaW4tb3V0O1xuXG5cdFx0YmFja2dyb3VuZDogcmdiYSgkZGFyay1ncmF5LC44KTtcblx0XHRib3gtc2hhZG93OiBpbnNldCAwIDVweCAxNXB4IHJnYmEoJGJhc2UtYmxhY2ssLjUpO1xuXHRcdGNvbnRlbnQ6ICcnO1xuXHRcdGhlaWdodDogMTAwJTtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdFx0ei1pbmRleDogLTE7XG5cdH1cbn1cblxuLyogbmF2IGhlYWRlciAqL1xuLm5hdi1oZWFkZXIsXG4ubmF2LWhlYWRlci1zZWFyY2gsXG4ubmF2LWZvb3RlciB7XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGZsZXgtZGlyZWN0aW9uOiByb3c7XG5cdGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcblxuXHQvLyBtYXgtd2lkdGg6IDE0MDBweDtcbn1cbi5uYXYtaGVhZGVyLFxuLm5hdi1oZWFkZXItc2VhcmNoIHtcblx0YWxpZ24taXRlbXM6IG1pZGRsZTtcblxuXHRoZWlnaHQ6IDEwMCU7XG5cblx0XG59XG5cbi5oZWFkcm9vbSB7XG5cdHRyYW5zaXRpb246IHRyYW5zZm9ybSAyMDBtcyBsaW5lYXI7XG4gICAgd2lsbC1jaGFuZ2U6IHRyYW5zZm9ybTtcbn1cbi5oZWFkcm9vbS0tcGlubmVkIHtcblx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKDAlKTtcbn1cbi5oZWFkcm9vbS0tdW5waW5uZWQge1xuXHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMCUpO1xufVxuXHQubmF2LWl0ZW0ge1xuXHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRwYWRkaW5nOiAuNWVtIDFlbTtcblxuXHRcdC8vIEBpbmNsdWRlIG1lZGlhKFwiPj0wZW1cIiwgXCI8PXBoYWJsZXRcIikge1xuXHRcdC8vIFx0QGluY2x1ZGUgZmxleCgwIDAgMjAlKTtcblxuXHRcdC8vIFx0Zm9udC1zaXplOiAwLjcyMmVtO1xuXHRcdC8vIFx0bGluZS1oZWlnaHQ6IDEuMWVtO1xuXHRcdC8vIFx0cGFkZGluZzogLjFlbTtcblx0XHQvLyB9XG5cdFx0Ly8gQGluY2x1ZGUgbWVkaWEoXCI+cGhhYmxldFwiLCBcIjx0YWJsZXRcIikge1xuXHRcdC8vIFx0QGluY2x1ZGUgZmxleCgwKTtcblxuXHRcdC8vIFx0Zm9udC1zaXplOiAwLjhlbTtcblx0XHQvLyBcdGxpbmUtaGVpZ2h0OiAxLjFlbTtcblx0XHQvLyBcdHBhZGRpbmc6IC4xZW07XG5cdFx0Ly8gfVxuXG5cdFx0YSB7XG5cdFx0XHR0cmFuc2l0aW9uOiBhbGwgMzAwbXMgZWFzZS1pbi1vdXQ7XG5cblx0XHRcdGJhY2tncm91bmQ6IHJnYmEoJGJhc2UtYmxhY2ssIC4yKTtcblx0XHRcdC8vIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoJGJhc2UtYmxhY2ssIDApO1xuXHRcdFx0Ym9yZGVyOjFweCBzb2xpZCByZ2JhKCRiYXNlLWJsYWNrLCAuMjUpO1xuXHRcdFx0Ym9yZGVyLXJhZGl1czokYmFzZS1ib3JkZXItcmFkaXVzO1xuXHRcdFx0Y29sb3I6IHJnYmEoJGJhc2Utd2hpdGUsIC41KTtcblx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0Zm9udC13ZWlnaHQ6IDQwMDtcblx0XHRcdHBhZGRpbmc6IC4zNWVtIDFlbTtcblx0XHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblxuXHRcdFx0Jjpob3ZlciB7XG5cdFx0XHRcdC8vIGJhY2tncm91bmQ6IHJnYmEoJGJhc2UtYmxhY2ssIC4yKTtcblx0XHRcdFx0Ly8gYm9yZGVyOjFweCBzb2xpZCByZ2JhKCRiYXNlLWJsYWNrLCAuMjUpO1xuXHRcdFx0XHRjb2xvcjogcmdiYSgkYmFzZS13aGl0ZSwgMSk7XG5cblx0XHRcdFx0LnN2Zy1idW5kbGUsXG5cdFx0XHRcdC5zdmctcmVjZW50IHtcblx0XHRcdFx0XHRmaWxsOiByZ2JhKCRiYXNlLXdoaXRlLCAxKTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0fVxuXHQvLyAubmF2LWl0ZW06bnRoLW9mLXR5cGUoMikge1xuXHQvLyBcdGJvcmRlci1yaWdodDogMXB4IHNvbGlkIHJnYmEoJGJhc2Utd2hpdGUsIC4yKTtcblx0Ly8gfVxuXHQuY29udGFpbmVyLW5hdi1waG9uZSB7XG5cdFx0ZmxleDogNjAgNDAgNjA7XG5cblx0XHRjb2xvcjogcmdiYSgkYmFzZS13aGl0ZSwgMSk7XG5cdFx0cGFkZGluZy1yaWdodDogMmVtO1xuXHRcdHRleHQtYWxpZ246IHJpZ2h0O1xuXG5cdFx0ZmxleC1ncm93OiAxO1xuXHRcdGEge1xuXHRcdFx0Y29sb3I6IHJnYmEoJGJhc2Utd2hpdGUsIDEpO1xuXHRcdFx0Zm9udC1zaXplOiAxLjM3NWVtO1xuXHRcdH1cblx0fVxuXHQuY29udGFpbmVyLW5hdi1jYXJ0IHtcblx0XHRmbGV4OiAyMCAyMCAyMDtcblx0fVxuXHRcdC5uYXYtY2FydCB7XG5cdFx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdGZsZXgtZGlyZWN0aW9uOiByb3c7XG5cdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG5cblx0XHRcdGJhY2tncm91bmQ6IHJnYmEoJGdyZWVuLCAuOCk7XG5cdFx0XHRib3gtc2hhZG93OiBpbnNldCAwIC0xcHggMCByZ2JhKCRiYXNlLWJsYWNrLC4xKTtcblx0XHRcdGhlaWdodDogNjNweDtcblx0XHRcdG1pbi13aWR0aDogMTAwcHg7XG5cblx0XHRcdCY6YWN0aXZlIHtcblx0XHRcdFx0dHJhbnNpdGlvbjogYWxsIDMwbXMgZWFzZS1pbi1vdXQ7XG5cblx0XHRcdFx0Ym9yZGVyLXRvcDogMXB4IHNvbGlkIHJnYmEoJGJhc2UtYmxhY2ssIC43KTtcblx0XHRcdFx0Ym94LXNoYWRvdzogaW5zZXQgMHB4IDNweCA1cHggcmdiYSgwLDAsMCwwLjMpO1xuXHRcdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XHRcdHRvcDogMXB4O1xuXHRcdFx0fVxuXG5cblx0XHRcdCY6aG92ZXIge1xuXHRcdFx0XHR0cmFuc2l0aW9uOiBhbGwgMzAwbXMgZWFzZS1pbi1vdXQ7XG5cblx0XHRcdFx0YmFja2dyb3VuZDogdGludCgkZ3JlZW4sIDUlKTtcblx0XHRcdFx0XG5cdFx0XHRcdC5zdmctY2FydCB7XG5cdFx0XHRcdFx0ZmlsbDogcmdiYSgkYmFzZS1ibGFjaywgLjI1KTtcblx0XHRcdFx0fVxuXG5cblx0XHRcdFx0LmNvbnRhaW5lci1udW1iLWNhcnQge1xuXHRcdFx0XHRcdGNvbG9yOiByZ2JhKCRiYXNlLXdoaXRlLCAxKTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0XHRcdC5jb250YWluZXItc3ZnLWNhcnQge1xuXHRcdFx0XHRtYXJnaW46IDAgMWVtO1xuXHRcdFx0XHR3aWR0aDogMzBweDtcblx0XHRcdH1cblx0XHRcdFx0LnN2Zy1jYXJ0IHtcblx0XHRcdFx0XHR0cmFuc2l0aW9uOiBhbGwgMzAwbXMgZWFzZS1pbi1vdXQ7XG5cblx0XHRcdFx0XHRmaWxsOiByZ2JhKCRiYXNlLWJsYWNrLCAuMjUpO1xuXHRcdFx0XHR9XG5cdFx0XHQuY29udGFpbmVyLW51bWItY2FydCB7XG5cdFx0XHRcdHRyYW5zaXRpb246IGFsbCAzMDBtcyBlYXNlLWluLW91dDtcblxuXHRcdFx0XHRiYWNrZ3JvdW5kOiByZ2JhKCRiYXNlLWJsYWNrLCAuMyk7XG5cdFx0XHRcdGNvbG9yOiByZ2JhKCRiYXNlLXdoaXRlLCAuNSk7XG5cdFx0XHRcdGhlaWdodDogMTAwJTtcblx0XHRcdFx0cGFkZGluZzoxZW0gO1xuXHRcdFx0fVxuXG5cblxuLyogU1ZHIGljb25zIGluIGhlYWRlciAqL1xuLnN2Zy1hcnctZG90IHtcblxufVxuLm5hdi1sb2dvIHtcblx0dHJhbnNpdGlvbjogYWxsIDMwMG1zIGVhc2UtaW4tb3V0O1xuXG5cdGJvcmRlci1sZWZ0OiA1cHggc29saWQgcmdiYSgkb3JhbmdlLCAuNSk7XG5cdGJvcmRlci1yaWdodDogMXB4IHNvbGlkIHJnYmEoJGJhc2Utd2hpdGUsIDApO1xuXHRib3gtc2hhZG93OiAtMTBweCAwcHggMTBweCAtNXB4IHJnYmEoJGJhc2UtYmxhY2ssIC4yNSk7XG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0cGFkZGluZzogLjQ1ZW0gMWVtO1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdHdpZHRoOiA3NXB4O1xuXHR6LWluZGV4OiAzO1xuXG5cdC1tcy1mbGV4LWl0ZW0tYWxpZ246IGF1dG87XG4gICAgLXdlYmtpdC1hbGlnbi1zZWxmOiBhdXRvO1xuXHRhbGlnbi1zZWxmOiBhdXRvO1xuXHQmOmhvdmVyLFxuXHQuc2VhcmNoLXNpbXBsZSAmIHtcblx0XHRiYWNrZ3JvdW5kOiByZ2JhKCRiYXNlLWJsYWNrLCAuNSk7XG5cdFx0Ym9yZGVyLWxlZnQ6IDVweCBzb2xpZCByZ2JhKCRvcmFuZ2UsIDEpO1xuXG5cdFx0Ly8gYm94LXNoYWRvdzogLTEwcHggMHB4IDVweCAtMnB4IHJnYmEoJGJhc2UtYmxhY2ssIC4yNSksIGluc2V0IDAgMCAxMHB4IDEwcHggcmdiYSgkYmFzZS1ibGFjaywgLjUpO1xuXHRcdC5sb2dvLWFydyB7XG5cdFx0XHR0cmFuc2l0aW9uOiBhbGwgMzAwbXMgZWFzZS1pbi1vdXQ7XG5cblx0XHRcdGZpbGw6ICNGRjczMDI7XG5cdFx0fVxuXG5cblx0XHQubG9nby1kb3Qge1xuXHRcdFx0dHJhbnNpdGlvbjogYWxsIDMwMG1zIGVhc2UtaW4tb3V0O1xuXG5cdFx0XHRmaWxsOiByZ2JhKCRiYXNlLXdoaXRlLCAxKTtcblx0XHR9XG5cdH1cblxuXG5cdC5jb250ZW50LWhvbWUgJiB7XG5cdFx0Ym9yZGVyLWxlZnQ6IDVweCBzb2xpZCByZ2JhKCRiYXNlLXdoaXRlLCAuMTUpO1xuXHRcdG1hcmdpbi1sZWZ0OiAzJTtcblx0fVxuXHRcbn1cblx0LmxvZ28tYXJ3LFxuXHQubG9nby1kb3QsXG5cdC5sb2dvLWxldHRlciB7XG5cdFx0dHJhbnNpdGlvbjogYWxsIDMwMG1zIGVhc2UtaW4tb3V0O1xuXG5cdFx0ZmlsbDogcmdiYSgkYmFzZS13aGl0ZSwgLjUpO1xuXHR9XG5cblx0Lm5hdi1jb250YWluLXBob25lIHtcblx0XHRmbGV4OiAxIDEgYXV0bztcblxuXHQgICAgY29sb3I6ICRiYXNlLXdoaXRlO1xuXHQgICAgZm9udC13ZWlnaHQ6IDQwMDtcblx0ICAgIHBhZGRpbmc6IC41ZW0gMmVtO1xuXHQgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG5cblx0ICAgIEBpbmNsdWRlIG1lZGlhKFwiPj0wZW1cIiwgXCI8PXBoYWJsZXRcIikge1xuXHQgICAgXHRmbGV4OiAxIDEgMTAwJTtcblx0ICAgIFx0YmFja2dyb3VuZDogcmdiYSgkbWVkLWRhcmstZ3JheSwgLjc1KTtcblx0ICAgIFx0Zm9udC1zaXplOiAwLjcyMmVtO1xuXHQgICAgXHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cblx0ICAgIFx0b3JkZXI6IC0xO1xuXHQgICAgfVxuXHQgICAgQGluY2x1ZGUgbWVkaWEoXCI+cGhhYmxldFwiLCBcIjx0YWJsZXRcIikge1xuXHQgICAgXHRmb250LXNpemU6IDFlbTtcblx0ICAgIFx0dGV4dC1hbGlnbjogcmlnaHQ7XG5cdCAgICB9XG5cblx0ICAgIGEge1xuXHQgICAgICAgIGNvbG9yOiAkYmFzZS13aGl0ZTtcblxuXHQgICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj0wZW1cIiwgXCI8dGFibGV0XCIpIHtcblx0ICAgICAgICAgIHBhZGRpbmc6IDA7XG5cdCAgICAgICAgfVxuXG5cdCAgICAgICAgJjpob3ZlciB7XG5cdCAgICAgICAgXHRjb2xvcjogJGJhc2Utd2hpdGU7XG5cdCAgICAgICAgfVxuXHQgICAgfVxuXHQgICAgXG5cdH1cbi5uYXYtYnVuZGxlLFxuLm5hdi1yZWNlbnQge1xuXHRzcGFuIHtcblx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0aGVpZ2h0OiAxNXB4O1xuXHRcdHdpZHRoOiAxNXB4O1xuXG5cdFx0QGluY2x1ZGUgbWVkaWEoXCI8PW1vYmlsZS1sZ1wiKSB7XG5cdFx0XHRkaXNwbGF5OiBub25lO1xuXHRcdH1cblx0fVxufVxuXG4ubmF2LWJ1bmRsZSB7XG5cdCY6aG92ZXIge1xuXHRcdGJhY2tncm91bmQ6IHJnYmEoJG9yYW5nZSwxKTtcblx0fSBcbn1cbi5uYXYtcmVjZW50IHtcblx0Jjpob3ZlciB7XG5cdFx0YmFja2dyb3VuZDogcmdiYSgkYmx1ZSwxKTtcblx0fSBcbn1cblx0XHQvLyAuc3ZnLWJ1bmRsZSxcblx0XHQvLyAuc3ZnLXJlY2VudCxcblx0XHQvLyAuc3ZnLXNlYXJjaCxcblx0XHQvLyAuc3ZnLWZhdmUsXG5cdFx0Ly8gLnN2Zy1mYXZlLWJ1bmRsZSB7XG5cdFx0Ly8gXHR0cmFuc2l0aW9uOiBhbGwgMzAwbXMgZWFzZS1pbi1vdXQ7XG5cdFx0Ly8gXHRmaWxsOiByZ2JhKCRiYXNlLXdoaXRlLCAuNSk7XG5cdFx0XHRcblxuXHRcdC8vIH1cblxuXG4vKiBuYXZpZ2F0aW9uIHNlYXJjaCBhcmVhICovXG5cblxuXHQubmF2LXNlYXJjaCB7XG5cdFx0QGV4dGVuZCAubmF2LWxvZ287XG5cblx0XHRib3JkZXItbGVmdDogNXB4IHNvbGlkIHJnYmEoJGJsdWUsIC41KTtcblxuXHRcdCY6aG92ZXIsXG5cdFx0LnNlYXJjaC1zaW1wbGUgJiB7XG5cdFx0XHRib3JkZXItbGVmdDogNXB4IHNvbGlkIHJnYmEoJGJsdWUsIDEpO1xuXHRcdH1cblx0fVxuXG5cdC5uYXYtc2VhcmNoZmllbGQge1xuXHRcdGZsZXg6IDAgMCA4MCU7XG5cblx0XHQmOjpwbGFjZWhvbGRlciB7XG5cdFx0XHRjb2xvcjogJGJsdWU7XG5cdFx0fVxuXG5cdFx0Ym9yZGVyLXJhZGl1czokYmFzZS1ib3JkZXItcmFkaXVzO1xuXHRcdGNvbG9yOiAkYmx1ZTtcblx0XHRmb250LXNpemU6IDEuNDVyZW07XG5cdFx0Zm9udC13ZWlnaHQ6IDMwMDtcblx0XHRtYXJnaW4tbGVmdDogMWVtO1xuXHRcdHBhZGRpbmc6IC4yNWVtIDFlbVxuXHR9XG5cdC5uYXYtc2VhcmNoLWJ0biB7XG5cdFx0ZmxleDogMCAwIGF1dG87XG5cblx0XHRiYWNrZ3JvdW5kOiByZ2JhKCRibHVlLCAxKTtcblx0XHRib3JkZXI6IDFweCBzb2xpZCByZ2JhKHNoYWRlKCRibHVlLCAxNSUpLCAxKTtcblx0XHRib3JkZXItYm90dG9tLXdpZHRoOiAzcHg7XG5cdFx0Ym9yZGVyLXJhZGl1czogLjNlbTtcblx0XHRib3JkZXItdG9wOiBub25lO1xuXHRcdGhlaWdodDogNDVweDtcblx0XHRtYXJnaW4tbGVmdDogLjc1ZW07XG5cdFx0cGFkZGluZzogLjVlbSAxLjVlbSAuNzVlbTtcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cblx0XHQmOmFjdGl2ZSB7fVxuXG5cblx0XHQmOmhvdmVyIHtcblx0XHRcdHRyYW5zaXRpb246IGFsbCAzMG1zIGVhc2UtaW4tb3V0O1xuXG5cdFx0XHRcdGJveC1zaGFkb3c6IDAgNXB4IDEwcHggMnB4IHJnYmEoJGJhc2UtYmxhY2ssLjIpO1xuXHRcdFx0XHR0b3A6IC0ycHg7XG5cdFx0fVxuXHR9XG5cblxuLyogbmF2IHNpZGUgKi9cbi5jb250YWluLW5hdi1zaWRlIHtcblx0YmFja2dyb3VuZDogJGRhcmstZ3JheTtcblx0aGVpZ2h0OiAxMDB2aDtcblx0bWluLXdpZHRoOiBjYWxjKDIuNSUgKyA3NXB4KTtcblx0cGFkZGluZy1sZWZ0OiAyLjUlO1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdHotaW5kZXg6IDQ7XG5cblx0LmJ0bi1zaWRlIHtcblx0XHRib3JkZXItdG9wOiAxcHggc29saWQgcmdiYSgkYmFzZS13aGl0ZSwgLjEpO1xuXHRcdGJveC1zaGFkb3c6IGluc2V0IDAgLTFweCAwIHJnYmEoJGJhc2UtYmxhY2ssMC4xKTtcblx0fVxufVxuXHQubmF2LXNpZGUge1xuXHRcdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKCRiYXNlLXdoaXRlLCAuMSk7XG5cdH1cblx0Lm5hdi1mYXZlIHtcblx0XHRAZXh0ZW5kIC5uYXYtbG9nbztcblxuXHRcdGJvcmRlci1sZWZ0OiA1cHggc29saWQgcmdiYSgkeWVsbG93LCAuNSk7XG5cdFx0cGFkZGluZzogLjc1ZW0gMS4yNWVtO1xuXG5cdFx0Jjpob3ZlciB7XG5cdFx0XHRiYWNrZ3JvdW5kOiByZ2JhKCRiYXNlLWJsYWNrLCAuMSk7XG5cdFx0XHRib3JkZXItbGVmdDogNXB4IHNvbGlkIHJnYmEoJHllbGxvdywgMSk7XG5cblx0XHRcdC5zdmctZmF2ZSB7XG5cdFx0XHRcdGZpbGw6IHJnYmEoJHllbGxvdywgMSk7XG5cdFx0XHR9XG5cblxuXHRcdFx0LmNvbnRhaW4tY291bnQge1xuXHRcdFx0XHRjb2xvcjogcmdiYSgkYmFzZS13aGl0ZSwgMSk7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0Lm5hdi1mYXZlLWJ1bmRsZSB7XG5cdFx0QGV4dGVuZCAubmF2LWZhdmU7XG5cblx0XHRib3JkZXItbGVmdDogNXB4IHNvbGlkIHJnYmEoJGdyZWVuLCAuNSk7XG5cblx0XHQmOmhvdmVyIHtcblx0XHRcdGJvcmRlci1sZWZ0OiA1cHggc29saWQgcmdiYSgkZ3JlZW4sIDEpO1xuXG5cdFx0XHQuc3ZnLWZhdmUtYnVuZGxlIHtcblx0XHRcdFx0ZmlsbDogcmdiYSgkYmFzZS13aGl0ZSwgMSk7XG5cdFx0XHR9XG5cblxuXHRcdFx0LmNvbnRhaW4tY291bnQge1xuXHRcdFx0XHRjb2xvcjogcmdiYSgkYmFzZS13aGl0ZSwgMSk7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cdFx0LmNvbnRhaW4tY291bnQge1xuXHRcdFx0YmFja2dyb3VuZDogcmdiYSgkYmFzZS1ibGFjaywgLjIpO1xuXHRcdFx0Ym9yZGVyOjFweCBzb2xpZCByZ2JhKCRiYXNlLWJsYWNrLCAuMjUpO1xuXHRcdFx0Y29sb3I6IHJnYmEoJGJhc2Utd2hpdGUsIC41KTtcblx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRcdH1cblxuLmNvbnRhaW4tbmF2LWNoYXQge1xuXHRhbGlnbi1zZWxmOiBjZW50ZXI7XG5cblx0dHJhbnNpdGlvbjogYWxsIDMwMG1zIGVhc2UtaW4tb3V0O1xuXG4gICAgYmFja2dyb3VuZDogcmdiYSgkdmlvbGV0LCAuOCk7XG4gICAgYm9yZGVyOjFweCBzb2xpZCByZ2JhKCRiYXNlLWJsYWNrLCAuMjUpO1xuICAgIGJvcmRlci1yYWRpdXM6JGJhc2UtYm9yZGVyLXJhZGl1cztcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcGFkZGluZzogLjJlbSAxZW07XG5cblxuICAgICY6aG92ZXIge1xuICAgIFx0YmFja2dyb3VuZDogcmdiYSgkdmlvbGV0LCAxKTtcblxuICAgIFx0Lm5hdi1jaGF0LXR4dCB7XG5cdFx0XHRjb2xvcjogcmdiYSgkYmFzZS13aGl0ZSwgMSk7XG5cblx0XHRcdCY6YmVmb3JlIHtcblx0XHRcdFx0b3BhY2l0eTogMTtcblx0XHRcdH1cblx0XHR9XG4gICAgfVxufVxuXHQubmF2LWNoYXQtdHh0IHtcblx0XHRjb2xvcjogcmdiYSgkYmFzZS13aGl0ZSwgLjg1KTtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRmb250LXdlaWdodDogNDAwO1xuXHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblxuXG5cblx0XHQmOmJlZm9yZSB7XG5cdFx0XHRjb250ZW50OiB1cmwoJy9icm93c2VyL2ltZy9jaGF0LnN2ZycpO1xuXHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdFx0aGVpZ2h0OiAyNnB4O1xuXHRcdFx0bWFyZ2luLXJpZ2h0OiAuNWVtO1xuXHRcdFx0b3BhY2l0eTogLjc1O1xuXHRcdFx0dmVydGljYWwtYWxpZ246IG1pZGRsZTtcblx0XHRcdHdpZHRoOiAyNHB4O1xuXG5cdFx0XHRAaW5jbHVkZSBtZWRpYSgnPD1tb2JpbGUtbGcnKSB7XG5cdFx0XHRcdG1hcmdpbi1yaWdodDogMDtcblx0XHRcdH1cblx0XHR9XG5cblx0XHRAaW5jbHVkZSBtZWRpYSgnPD1tb2JpbGUtbGcnKSB7XG5cdFx0XHQuY2hhdC10eHQge1xuXHRcdFx0XHRkaXNwbGF5OiBub25lO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXHRcdFxuXHRcdFx0XG4iLCJmaWVsZHNldCB7XG4gIC8vIGJhY2tncm91bmQtY29sb3I6IGxpZ2h0ZW4oJGJhc2UtYm9yZGVyLWNvbG9yLCAxMCUpO1xuICAvLyBib3JkZXI6ICRiYXNlLWJvcmRlcjtcbiAgbWFyZ2luOiAwIDAgJHNtYWxsLXNwYWNpbmc7XG4gIC8vIHBhZGRpbmc6ICRiYXNlLXNwYWNpbmc7XG59XG5cbmlucHV0LFxubGFiZWwsXG5zZWxlY3Qge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1mYW1pbHk6ICRiYXNlLWZvbnQtZmFtaWx5O1xuICAvLyBmb250LXNpemU6ICRiYXNlLWZvbnQtc2l6ZTtcblxuICAmLnNlbGVjdC1mYXZlIHtcbiAgICBcbiAgfVxuXG4gIFxufVxuKjpmb2N1cyB7XG4gIG91dGxpbmU6IG5vbmU7XG59XG5cbmxhYmVsIHtcbiAgY29sb3I6ICRiYXNlLXdoaXRlO1xuICBmb250LXdlaWdodDogNDAwO1xuICBtYXJnaW4tYm90dG9tOiAkc21hbGwtc3BhY2luZyAvIDI7XG5cbiAgJi5yZXF1aXJlZDo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiKlwiO1xuICB9XG5cbiAgYWJiciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4jeyRhbGwtdGV4dC1pbnB1dHN9LFxuc2VsZWN0W211bHRpcGxlPW11bHRpcGxlXSxcbnRleHRhcmVhIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJhc2Utd2hpdGU7XG4gIGJvcmRlcjogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogLjNlbTtcbiAgLy8gYm94LXNoYWRvdzogJGZvcm0tYm94LXNoYWRvdztcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgZm9udC1mYW1pbHk6ICRiYXNlLWZvbnQtZmFtaWx5O1xuICBmb250LXNpemU6ICRiYXNlLWZvbnQtc2l6ZTtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgcGFkZGluZzogMC41ZW07XG4gIHRyYW5zaXRpb246IGJvcmRlci1jb2xvcjtcbiAgd2lkdGg6IDEwMCU7XG5cbiAgJjpob3ZlciB7XG4gICAgLy8gYm9yZGVyLWNvbG9yOiBkYXJrZW4oJGJhc2UtYm9yZGVyLWNvbG9yLCAxMCUpO1xuICB9XG5cbiAgJjpmb2N1cyB7XG4gICAgdHJhbnNpdGlvbjogYWxsIDYwMG1zIGxpbmVhcjtcbiAgICBib3JkZXItY29sb3I6ICRhY3Rpb24tY29sb3I7XG4gICAgYm94LXNoYWRvdzogJGZvcm0tYm94LXNoYWRvdy1mb2N1cztcbiAgICBvdXRsaW5lOiBub25lO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IC0xcHg7XG4gIH1cbn1cblxudGV4dGFyZWEge1xuICByZXNpemU6IHZlcnRpY2FsO1xufVxuXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdIHtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdLFxuaW5wdXRbdHlwZT1cInJhZGlvXCJdIHtcbiAgZGlzcGxheTogaW5saW5lO1xuICBtYXJnaW4tcmlnaHQ6ICRzbWFsbC1zcGFjaW5nIC8gMjtcblxuICAmLnNlbGVjdC1mYXZlIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgZm9udC1zaXplOiAycmVtO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBvdXRsaW5lOiBub25lO1xuICB9XG59XG5cbmlucHV0W3R5cGU9XCJmaWxlXCJdIHtcbiAgcGFkZGluZy1ib3R0b206ICRzbWFsbC1zcGFjaW5nO1xuICB3aWR0aDogMTAwJTtcbn1cblxuc2VsZWN0IHtcbiAgLy8gbWFyZ2luLWJvdHRvbTogJGJhc2Utc3BhY2luZztcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICB3aWR0aDogYXV0bztcbn1cblxuXG5cbi8vIE9GRkVSIGZvcm1cbi5jb250YWluLWZvcm0tcHJpeyBwYWRkaW5nLWJvdHRvbTogMjBweDt9XG4ub2ZmZXItZm9ybSxcbi5hZG1pbi1sb2dpbi1mb3JtIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG5cbiAgXG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgcGFkZGluZzogMTBweCAwO1xuXG4gIGxpIHtcbiAgICBib3JkZXItcmFkaXVzOiAuNWVtO1xuICAgIGZsZXg6IDMwJTtcbiAgICBtYXJnaW46IDAgMWVtIDFlbSAwO1xuICAgIHBhZGRpbmc6IC41ZW07XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRyYW5zaXRpb246IGFsbCwgMzAwbXMsIGVhc2UtaW4tb3V0OyBcblxuICAgICYuc2VsZWN0ZWQge1xuICAgICAgYmFja2dyb3VuZDogcmdiYSgkYmFzZS13aGl0ZSwgLjIpO1xuICAgIH1cbiAgICAmLm8tY291bnRyeSB7XG4gICAgICBmbGV4OiAxMDAlO1xuICAgICAgbWFyZ2luOiAwZW0gMWVtIDFlbSAwO1xuXG4gICAgICBAaW5jbHVkZSBtZWRpYShcIj49NDcuNDllbVwiKSB7XG4gICAgICAgIC5jb250YWluLWRlYWwtcm93ICYge1xuICAgICAgICAgIG1heC13aWR0aDogY2FsYyg2Ni42JSAtIDFlbSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj0xMDVlbVwiKSB7XG4gICAgICAgIC5jb250YWluLWRlYWwtcm93ICYge1xuICAgICAgICAgIG1heC13aWR0aDogY2FsYygzMy4zJSAtIDFlbSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgJi5vLWNhcHRjaGEge1xuICAgICAgZmxleDogMTAwJTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYShcIj49MGVtXCIsIFwiPHBoYWJsZXRcIikge1xuICAgICAgICBmbGV4OiA1MCU7XG4gICAgICAgIG1hcmdpbjogMCAwIDFlbSAwO1xuICAgIH1cbiAgfSAgXG59XG5zZWxlY3Qge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gIC1tb3otYXBwZWFyYW5jZTogbm9uZTtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgYm9yZGVyOiBub25lO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBjb2xvcjogZGFya2VuKCRtZWRpdW0tZ3JheSwgMTAlKTtcbiAgQG1lZGlhIHNjcmVlbiBhbmQgKC1tcy1oaWdoLWNvbnRyYXN0OiBhY3RpdmUpLCAoLW1zLWhpZ2gtY29udHJhc3Q6IG5vbmUpIHtcbiAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgIHotaW5kZXg6IDI7XG4gICAvLyBiYWNrZ3JvdW5kOiByZ2JhKCRiYXNlLXdoaXRlLCAwKTtcbiAgfVxufVxuXG5sYWJlbFtmb3I9Y291bnRyeV0sXG5sYWJlbFtmb3I9cHJMb3ddLFxubGFiZWxbZm9yPXBySGlnaF0sXG5sYWJlbFtmb3I9c2VsZWN0Q2F0XSB7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGJvcmRlci1yYWRpdXM6IDAgLjNlbSAuM2VtIDA7XG4gICAgY29sb3I6IGRhcmtlbigkbWVkaXVtLWdyYXksIDEwJSk7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIC8vIHdpZHRoOiA0MDBweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgY3Vyc29yOiBwb2ludGVyO1xuXG4gIEBtZWRpYSBzY3JlZW4gYW5kICgtbXMtaGlnaC1jb250cmFzdDogYWN0aXZlKSwgKC1tcy1oaWdoLWNvbnRyYXN0OiBub25lKSB7XG4gICAgLy8gYmFja2dyb3VuZDogcmdiYSgkYmFzZS13aGl0ZSwgMCk7XG4gIH1cbn1cblxubGFiZWxbZm9yPWNvdW50cnldOjphZnRlcixcbmxhYmVsW2Zvcj1wckxvd106OmFmdGVyLFxubGFiZWxbZm9yPXBySGlnaF06OmFmdGVyLFxubGFiZWxbZm9yPXNlbGVjdENhdF06OmFmdGVyIHtcbiAgICBib3JkZXItcmFkaXVzOiAwIC4zZW0gLjNlbSAwO1xuICBjb250ZW50OiAnICc7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDA7XG4gIHRvcDogMDtcbiAgd2lkdGg6IDQwcHg7XG4gIGhlaWdodDogMTAwJTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGJhY2tncm91bmQ6IGRhcmtlbigkYmx1ZSwgMzUlKSB1cmwoJ2RhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBQlFBQUFBT0JBTUFBQUdxN1JGVkFBQUFKMUJNVkVYLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vOVJ1djBTQUFBQURIUlNUbE1BQ0FvUkVvS0R0N3k5emM1cXRab3lBQUFBY2tsRVFWUUlIUVhCc1FuQ1VBQUZ3Rk9DQ0tiSUFCYVdFUnppMXlhRkF6bUVwSFlFQzhHVUtWUUVrYnlodk9Pa1pxZFd0MC9RWUtxTHpRZUY3ZHY2eS9STHdhMndZdGs0WHh4ZSt0OHlkMVd1TS9yY1VjMmdZSEVlb1AwMnVtU2dUUjUweWJCUFJ1aVNaQVM2WkFRNGpnQ0FQeWpZSmlSSDRmeW1BQUFBQUVsRlRrU3VRbUNDJykgbm8tcmVwZWF0IGNlbnRlciBjZW50ZXI7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuXG4gIEBtZWRpYSBzY3JlZW4gYW5kICgtbXMtaGlnaC1jb250cmFzdDogYWN0aXZlKSwgKC1tcy1oaWdoLWNvbnRyYXN0OiBub25lKSB7XG4gICAgIHotaW5kZXg6IDE7XG4gIH1cblxufVxuXG5sYWJlbFtmb3I9Y291bnRyeV0gc2VsZWN0LFxubGFiZWxbZm9yPXByTG93XSBzZWxlY3QsXG5sYWJlbFtmb3I9cHJIaWdoXSBzZWxlY3QsXG5sYWJlbFtmb3I9c2VsZWN0Q2F0XSBzZWxlY3Qge1xuICBib3JkZXItcmFkaXVzOiAuM2VtO1xuICBiYWNrZ3JvdW5kOiAkYmFzZS13aGl0ZTtcbiAgcGFkZGluZzogLjVlbTtcbiAgd2lkdGg6IDEwMCU7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuXG4gIEBtZWRpYSBzY3JlZW4gYW5kICgtbXMtaGlnaC1jb250cmFzdDogYWN0aXZlKSwgKC1tcy1oaWdoLWNvbnRyYXN0OiBub25lKSB7XG4gICAgIC8vIGJhY2tncm91bmQ6IHJnYmEoJGJhc2Utd2hpdGUsIDApO1xuICAgICB6LWluZGV4OiAxO1xuICB9XG59XG5cbmxhYmVsW2Zvcj1jb3VudHJ5XSBzZWxlY3Q6Oi1tcy1leHBhbmQsXG5sYWJlbFtmb3I9cHJMb3ddIHNlbGVjdDo6LW1zLWV4cGFuZCxcbmxhYmVsW2Zvcj1wckhpZ2hdIHNlbGVjdDo6LW1zLWV4cGFuZCxcbmxhYmVsW2Zvcj1zZWxlY3RDYXRdIHNlbGVjdDo6LW1zLWV4cGFuZCB7XG4gICAgZGlzcGxheTogbm9uZTtcbn1cblxubGFiZWxbZm9yPWNvdW50cnldIDotbW96LWFueShzZWxlY3QpLFxubGFiZWxbZm9yPXByTG93XSA6LW1vei1hbnkoc2VsZWN0KSxcbmxhYmVsW2Zvcj1wckhpZ2hdIDotbW96LWFueShzZWxlY3QpLFxubGFiZWxbZm9yPXNlbGVjdENhdF0gOi1tb3otYW55KHNlbGVjdCkge1xuICB3aWR0aDogMTEwJTtcbn1cblxubGFiZWxbZm9yPWNvdW50cnldLmllOSBzZWxlY3QsXG5sYWJlbFtmb3I9cHJMb3ddLmllOSBzZWxlY3QsXG5sYWJlbFtmb3I9cHJIaWdoXS5pZTkgc2VsZWN0LFxubGFiZWxbZm9yPXNlbGVjdENhdF0uaWU5IHNlbGVjdCB7XG4gIHdpZHRoOiAxMTAlO1xufVxuXG5sYWJlbFtmb3I9Y291bnRyeV0gc2VsZWN0OmZvY3VzLFxubGFiZWxbZm9yPXByTG93XSBzZWxlY3Q6Zm9jdXMsXG5sYWJlbFtmb3I9cHJIaWdoXSBzZWxlY3Q6Zm9jdXMsXG5sYWJlbFtmb3I9c2VsZWN0Q2F0XSBzZWxlY3Q6Zm9jdXMge1xuICBvdXRsaW5lOiBub25lO1xufVxuLmJ1bmRsZS1mb3JtIHtcbiAgQGV4dGVuZCAub2ZmZXItZm9ybTtcblxuICBsaSxcbiAgbGkuby1jb3VudHJ5IHtcbiAgICBmbGV4OiA0NSU7XG4gIH1cbn1cbi5mb3JtLWNoZWNrYm94ZXMge1xuICBwIHtcbiAgICBwYWRkaW5nOiAwIDFlbTtcbiAgfVxuICBidXR0b24ge21hcmdpbjoxZW07fVxufVxuXG4uY29udGFpbi1jaGVja2JveCB7XG4gIC8vIGJhY2tncm91bmQ6IHJnYmEoJGJhc2UtYmxhY2ssLjEpO1xuICBib3JkZXItcmFkaXVzOiAuM2VtO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGhlaWdodDogMzVweDtcbiAgbGVmdDogMWVtO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMS4yNWVtO1xuICB3aWR0aDogNDBweDtcblxuICBsYWJlbCB7XG4gICAgYmFja2dyb3VuZDogJGJhc2Utd2hpdGU7XG4gICAgYm9yZGVyLXJhZGl1czogLjNlbTtcbiAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKCRsaWdodGVzdC1ncmF5LCAxKTtcbiAgICBib3gtc2hhZG93OiBpbnNldCAwcHggMnB4IDVweCByZ2JhKCRiYXNlLWJsYWNrLCAwLjEpO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBoZWlnaHQ6IDIwcHg7XG4gICAgbGVmdDogMTBweDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA3cHg7XG4gICAgd2lkdGg6IDIwcHg7XG5cbiAgICAmOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IHVybCgvYnJvd3Nlci9pbWcvY2hlY2ttYXJrLnN2Zyk7XG4gICAgICB3aWR0aDogMTJweDtcbiAgICAgIGhlaWdodDogMTJweDtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogLTJweDtcbiAgICAgIGxlZnQ6IDRweDtcbiAgICAgIC8vIGJvcmRlcjogM3B4IHNvbGlkICRncmVlbjtcbiAgICAgIGJvcmRlci10b3A6IG5vbmU7XG4gICAgICBib3JkZXItcmlnaHQ6IG5vbmU7XG4gICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAvLyAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XG4gICAgICAvLyAgICAgLW1zLXRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XG4gICAgICAvLyAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XG4gICAgfVxuXG4gICAgJjpob3ZlciB7XG4gICAgICAmOmFmdGVyIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBpbnB1dFt0eXBlPWNoZWNrYm94XSB7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuXG4gICAgJjpjaGVja2VkICsgbGFiZWw6YWZ0ZXIge1xuICAgICAgb3BhY2l0eTogMTtcbiAgICB9XG4gIH1cbn1cblxuLm9yZy1jb250YWluLWNoZWNrYm94IHtcblxuICBsYWJlbCB7XG4gICAgYmFja2dyb3VuZDogJGJhc2Utd2hpdGU7XG4gICAgYm9yZGVyLXJhZGl1czogLjNlbTtcbiAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKCRsaWdodGVzdC1ncmF5LCAxKTtcbiAgICBib3gtc2hhZG93OiBpbnNldCAwcHggMnB4IDVweCByZ2JhKCRiYXNlLWJsYWNrLCAwLjEpO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBoZWlnaHQ6IDIwcHg7XG4gICAgbGVmdDogMTBweDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA3cHg7XG4gICAgd2lkdGg6IDIwcHg7XG5cbiAgICAmOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IHVybCgvYnJvd3Nlci9pbWcvY2hlY2ttYXJrLnN2Zyk7XG4gICAgICB3aWR0aDogMTJweDtcbiAgICAgIGhlaWdodDogMTJweDtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogLTJweDtcbiAgICAgIGxlZnQ6IDRweDtcbiAgICAgIC8vIGJvcmRlcjogM3B4IHNvbGlkICRncmVlbjtcbiAgICAgIGJvcmRlci10b3A6IG5vbmU7XG4gICAgICBib3JkZXItcmlnaHQ6IG5vbmU7XG4gICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAvLyAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XG4gICAgICAvLyAgICAgLW1zLXRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XG4gICAgICAvLyAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XG4gICAgfVxuXG4gICAgJjpob3ZlciB7XG4gICAgICAmOmFmdGVyIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBpbnB1dFt0eXBlPWNoZWNrYm94XSB7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuXG4gICAgJjpjaGVja2VkICsgbGFiZWw6YWZ0ZXIge1xuICAgICAgb3BhY2l0eTogMTtcbiAgICB9XG4gIH1cbn1cblxuXG4vL1ZhbGlkYXRpb24gZXJyb3JzXG5cbi52YWxpZGF0ZS1lcnIge1xuICAgIGJhY2tncm91bmQ6ICRyZWQ7XG4gICAgYm9yZGVyLXJhZGl1czogMCAwIDEwcHggMTBweDtcbiAgICBjbGVhcjogYm90aDtcbiAgICBjb2xvcjogJGJhc2Utd2hpdGU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZm9udC1zaXplOiAwLjcyMmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgcGFkZGluZzogLjc1ZW07XG59XG5cbmlucHV0LnNlYXJjaC10ZXh0LWZpZWxkLmVycm9yLXRsZC10ZXh0Ym94OmZvY3VzLCBpbnB1dC5ob21lLXNlYXJjaGZpZWxkLmVycm9yLXRsZC10ZXh0Ym94OmZvY3VzLCBpbnB1dC5zZWFyY2gtdGV4dC1maWVsZC5lcnJvci10bGQtdGV4dGJveCwgaW5wdXQuaG9tZS1zZWFyY2hmaWVsZC5lcnJvci10bGQtdGV4dGJveCB7XG4gICAgYm9yZGVyOiAycHggc29saWQgI2QyMTMzNDtcbn1cbiIsInVsLFxub2wge1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcblxuICAmJWRlZmF1bHQtdWwge1xuICAgIGxpc3Qtc3R5bGUtdHlwZTogZGlzYztcbiAgICBtYXJnaW4tYm90dG9tOiAkc21hbGwtc3BhY2luZztcbiAgICBwYWRkaW5nLWxlZnQ6ICRiYXNlLXNwYWNpbmc7XG4gIH1cblxuICAmJWRlZmF1bHQtb2wge1xuICAgIGxpc3Qtc3R5bGUtdHlwZTogZGVjaW1hbDtcbiAgICBtYXJnaW4tYm90dG9tOiAkc21hbGwtc3BhY2luZztcbiAgICBwYWRkaW5nLWxlZnQ6ICRiYXNlLXNwYWNpbmc7XG4gIH1cbn1cblxuZGwge1xuICBtYXJnaW4tYm90dG9tOiAkc21hbGwtc3BhY2luZztcblxuICBkdCB7XG4gICAgbWFyZ2luLXRvcDogJHNtYWxsLXNwYWNpbmc7XG4gIH1cblxuICBkZCB7XG4gICAgbWFyZ2luOiAwO1xuICB9XG59XG4iLCJ0YWJsZSB7XG4gIGZvbnQtZmVhdHVyZS1zZXR0aW5nczogXCJrZXJuXCIsIFwibGlnYVwiLCBcInRudW1cIjtcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgbWFyZ2luOiAwO1xuICB0YWJsZS1sYXlvdXQ6IGZpeGVkO1xuICB3aWR0aDogMTAwJTtcbn1cblxudGgge1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgZGFya2VuKCRiYXNlLWJvcmRlci1jb2xvciwgMTUlKTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgcGFkZGluZzogJHNtYWxsLXNwYWNpbmcgMDtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cblxudGQge1xuICBib3JkZXItYm90dG9tOiAkYmFzZS1ib3JkZXI7XG4gIHBhZGRpbmc6ICRzbWFsbC1zcGFjaW5nIDA7XG59XG5cbnRyLFxudGQsXG50aCB7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG4iLCJib2R5IHtcbiAgZm9udC1mZWF0dXJlLXNldHRpbmdzOiBcImtlcm5cIiwgXCJsaWdhXCIsIFwidG51bVwiO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgY29sb3I6ICRiYXNlLWZvbnQtY29sb3I7XG4gIGZvbnQtZmFtaWx5OiAkYmFzZS1mb250LWZhbWlseTtcbiAgZm9udC1zaXplOiAkYmFzZS1mb250LXNpemU7XG4gIC8vIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIGxpbmUtaGVpZ2h0OiAkYmFzZS1saW5lLWhlaWdodDtcbn1cblxuaDEsXG5oMixcbmgzLFxuaDQsXG5oNSxcbmg2IHtcbiAgY29sb3I6ICRiYXNlLXdoaXRlO1xuICBmb250LWZhbWlseTogJGhlYWRpbmctZm9udC1mYW1pbHk7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgbGluZS1oZWlnaHQ6ICRoZWFkaW5nLWxpbmUtaGVpZ2h0O1xuICBtYXJnaW46IDAgMCAkc21hbGwtc3BhY2luZztcbiAgbWFyZ2luOiAwO1xufVxuaDEsXG5oMiB7XG4gIGZvbnQtZmFtaWx5OiAkaGVhZGluZy1mb250LXRoaW47XG4gIGZvbnQtc2l6ZTogNXJlbTtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cbmgyIHtcbiAgLy8gZm9udC1zaXplOiAycmVtO1xuICBtYXJnaW4tYm90dG9tOiAuNWVtO1xuXG4gIC5jb250ZW50LWhvbWUgJiB7XG4gICAgZm9udC1zaXplOiA1cmVtO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEoXCI+PTBlbVwiLCBcIjxtb2JpbGUtbWVkXCIpIHtcbiAgICAgIGZvbnQtc2l6ZTozcmVtO1xuICAgIH1cbiAgfVxuICAuY29udGFpbi1vZmZlciAmIHtcbiAgICBmb250LXNpemU6IDJyZW07XG4gIH1cbn1cbmgzIHtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcblxuICAuY29udGVudC1ob21lICYsXG4gIC5jb250ZW50LWhvbWUgJiB7XG4gICAgZm9udC1mYW1pbHk6ICRoZWFkaW5nLWZvbnQtdGhpbjtcbiAgICBmb250LXNpemU6IDMuNzUwcmVtO1xuICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG5cbiAgICBAaW5jbHVkZSBtZWRpYShcIj49MGVtXCIsIFwiPG1vYmlsZS1tZWRcIikge1xuICAgICAgZm9udC1zaXplOjNyZW07XG4gICAgfVxuICB9XG59XG5cbmg0IHtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgY29sb3I6ICRkYXJrLWdyYXk7XG59XG5cbnAge1xuICBmb250LXdlaWdodDogNTAwO1xuICBtYXJnaW46IDAgMCAkc21hbGwtc3BhY2luZztcblxuICAuaG9tZS1zcGVjaWFsaXN0ICYge1xuICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICB9XG4gIC5jb250YWluLW9mZmVyICYge1xuICAgIGNvbG9yOiAkYmFzZS13aGl0ZTtcbiAgfVxufVxuICAuc21hbGwge1xuICAgIGZvbnQtc2l6ZTogMC44cmVtO1xuICB9XG4gIC54bGFyZ2Uge1xuICAgIGZvbnQtc2l6ZTogMi4yNTByZW07XG4gIH1cbiAgLmxhcmdlIHtcbiAgICBmb250LXNpemU6IDEuNXJlbTsgICAgXG4gIH1cbiAgLm1lZCB7XG4gICAgZm9udC1zaXplOiAxLjI1cmVtO1xuICB9XG4gIC5ncmF5IHtcbiAgICBjb2xvcjogJGRhcmstZ3JheTtcbiAgfVxuICAudHh0LWxpZ2h0IHtcbiAgICBmb250LWZhbWlseTogJHJvYm90b0M7XG4gIH1cbiAgLnR4dC10aGluIHtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICB9XG4gIC5jb2xvci1kb21haW4ge1xuICAgIGNvbG9yOiAkYmx1ZTtcbiAgfVxuICAuY29sb3ItdGxkIHtcbiAgICBjb2xvcjogJG1lZGl1bS1ncmF5O1xuICB9XG5cblxuYSB7XG4gIGNvbG9yOiAkYWN0aW9uLWNvbG9yO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRyYW5zaXRpb246IGNvbG9yIDAuMXMgbGluZWFyO1xuXG4gICY6YWN0aXZlLFxuICAmOmZvY3VzLFxuICAmOmhvdmVyIHtcbiAgICBjb2xvcjogZGFya2VuKCRhY3Rpb24tY29sb3IsIDE1JSk7XG4gIH1cblxuICAmOmFjdGl2ZSxcbiAgJjpmb2N1cyB7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgfVxufVxuXG5ociB7XG4gIGJvcmRlci1ib3R0b206ICRiYXNlLWJvcmRlcjtcbiAgYm9yZGVyLWxlZnQ6IG5vbmU7XG4gIGJvcmRlci1yaWdodDogbm9uZTtcbiAgYm9yZGVyLXRvcDogbm9uZTtcbiAgbWFyZ2luOiAkYmFzZS1zcGFjaW5nIDA7XG5cbiAgJi53aGl0ZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoJGJhc2Utd2hpdGUsIC41KTtcbiAgfVxufVxuXG5pbWcsXG5waWN0dXJlIHtcbiAgbWFyZ2luOiAwO1xuICBtYXgtd2lkdGg6IDEwMCU7XG59XG4udHh0LWxpbmUtdGhydSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBsaW5lLXRocm91Z2g7XG59XG4udHh0LWNhbGwtdXMge1xuICAgIGZvbnQtZmFtaWx5OiAkaGVhZGluZy1mb250LXRoaW47XG4gICAgZm9udC1zaXplOiAxLjc1MHJlbTtcbiAgICBmb250LXdlaWdodDogMzAwO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjVlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjVlbTtcbiAgfVxuICAgIC50eHQtcGhvbmUtbGFyZ2UsXG4gICAgLnR4dC1waG9uZS1sYXJnZTpob3ZlciB7XG4gICAgICBjb2xvcjogZGFya2VuKCRncmVlbiwgMTAlKTtcbiAgICAgIGZvbnQtZmFtaWx5OiAkYmFzZS1mb250LWZhbWlseTtcbiAgICAgIGZvbnQtc2l6ZTogMi42MjVyZW07XG4gICAgfVxuICAgIC50eHQtcGhvbmUsXG4gICAgLnR4dC1waG9uZTpob3ZlciB7XG4gICAgICBjb2xvcjogZGFya2VuKCRncmVlbiwgMTAlKTtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIGZvbnQtZmFtaWx5OiAkYmFzZS1mb250LWZhbWlseTtcblxuICAgICAgLmNvbnRhaW4tdGRmcy1jdGEgJixcbiAgICAgIC5jb250YWluLXRkZnMtb2ZmZXJDb25maXJtICYge1xuICAgICAgICBjb2xvcjogc2hhZGUoJGdyZWVuLCAxMCUpO1xuICAgICAgICBmb250LXNpemU6IDIuNjI1cmVtO1xuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj0wZW1cIiwgXCI8NDcuNWVtXCIpIHtcbiAgICAgICAgICAgIFxuICAgICAgICAgICAgJiArIC50eHQtZ3JleSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogLTI1cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLmNvbnRhaW4tbWVzc2FnZSAmLFxuICAgICAgLnRkZnMtcGhvbmUtZm9ybSAmLFxuICAgICAgLm1vLXBob25lLXR4dCAmIHtcbiAgICAgICAgY29sb3I6ICRiYXNlLXdoaXRlO1xuICAgICAgfVxuICAgICAgXG4gICAgICAuaG9tZS1vZmZlcnMgJixcbiAgICAgIC5mLXBob25lICYge1xuICAgICAgICBjb2xvcjogJGJhc2Utd2hpdGU7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgcGFkZGluZzogLjI1ZW0gLjVlbTtcbiAgICAgIH1cblxuICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PTBlbVwiLCBcIjxtb2JpbGUtbWVkXCIpIHtcbiAgICAgICAgLmhvbWUtb2ZmZXJzICYge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIHBhZGRpbmc6IC4yNWVtIDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5ob21lLXNwZWNpYWxpc3QgJiB7XG4gICAgICAgIGNvbG9yOiAkZGFyay1ncmF5O1xuICAgICAgICBmb250LWZhbWlseTogJHJvYm90b0M7XG4gICAgICB9XG5cbiAgICAgIC5uYXYtY29udGFpbi1waG9uZSAmIHtcbiAgICAgICAgICBmb250LXNpemU6IDEuMzc1ZW07XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogLjVlbTtcbiAgICAgICAgICAvLyBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCByZ2JhKCRiYXNlLXdoaXRlLCAuMik7XG5cbiAgICAgICAgICBAaW5jbHVkZSBtZWRpYShcIj49MGVtXCIsIFwiPG1vYmlsZS1tZWRcIikge1xuICAgICAgICAgICAgYm9yZGVyLXJpZ2h0LXdpZHRoOiAwO1xuICAgICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAuY29udGFpbi1uYW1lIHtcbiAgICAgIGJhY2tncm91bmQ6IHJnYmEoJG1lZGl1bS1ncmF5LCAuMTIpO1xuICAgICAgYm9yZGVyLXJhZGl1czogLjNlbTtcbiAgICAgIHBhZGRpbmc6IC4yNWVtO1xuICAgIH1cbiAgICAub2ZmZXJWYWx1ZSB7XG4gICAgICBjb2xvcjogZGFya2VuKCRncmVlbiwgMTAlKTtcbiAgICB9XG4iXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFFQ0EsQUFBQSxJQUFJLEFBQUMsQ0FBRSxVQUFVLENBQUUsVUFBVSxDQUFJLEFBQ2pDLEFBQUEsQ0FBQyxDQUFFLENBQUMsQUFBQSxPQUFPLENBQUUsQ0FBQyxBQUFBLFFBQVEsQUFBQyxDQUFFLFVBQVUsQ0FBRSxPQUFPLENBQUksQUE4Q2hELEFBQUEsT0FBTyxDQUNQLEtBQUssQ0FDTCxPQUFPLENBQ1AsVUFBVSxDQUNWLE1BQU0sQ0FDTixNQUFNLENBQ04sTUFBTSxDQUNOLE1BQU0sQ0FDTixHQUFHLENBQ0gsT0FBTyxDQUNQLE9BQU8sQUFBQyxDQUNKLE9BQU8sQ0FBRSxLQUFLLENBQ2pCLEFBSUQsQUFBQSxLQUFLLENBQ0wsTUFBTSxDQUNOLEtBQUssQUFBQyxDQUNGLE9BQU8sQ0FBRSxZQUFZLENBS3hCLEFBS0QsQUFBQSxLQUFLLEFBQUEsSUFBSyxFQUFBLEFBQUEsUUFBQyxBQUFBLEVBQVcsQ0FDbEIsT0FBTyxDQUFFLElBQUksQ0FDYixNQUFNLENBQUUsQ0FBQyxDQUNaLENBT0QsQUFBQSxBQUFBLE1BQUMsQUFBQSxFQUFTLFFBQVEsQUFBQyxDQUNmLE9BQU8sQ0FBRSxJQUFJLENBQ2hCLEFBeEZELEFBQUEsSUFBSSxBQW1HQyxDQUtILEtBQUssQ0FqRUMsSUFBSSxDQWtFUix3QkFBd0IsQ0FBRSxJQUFJLENBQzlCLG9CQUFvQixDQUFFLElBQUksQ0FDN0IsQUFJRCxBQUFBLElBQUksQ0FDSixNQUFNLENBQ04sS0FBSyxDQUNMLE1BQU0sQ0FDTixRQUFRLEFBQUMsQ0FDTCxXQUFXLENBaEdVLFVBQVUsQ0FpR2xDLEFBSUQsQUFBQSxJQUFJLEFBQUMsQ0FDRCxNQUFNLENBQUUsQ0FBQyxDQUNa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 */
