@charset "UTF-8";
/*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */html{font-family:sans-serif;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}article,aside,details,figcaption,figure,footer,header,hgroup,main,menu,nav,section,summary{display:block}audio,canvas,progress,video{display:inline-block;vertical-align:baseline}audio:not([controls]){display:none;height:0}[hidden],template{display:none}a{background-color:transparent}a:active,a:hover{outline:0}abbr[title]{border-bottom:1px dotted}b,strong{font-weight:700}dfn{font-style:italic}h1{font-size:2em;margin:.67em 0}mark{background:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sup{top:-.5em}sub{bottom:-.25em}img{border:0}svg:not(:root){overflow:hidden}figure{margin:1em 40px}hr{box-sizing:content-box;height:0}pre{overflow:auto}code,kbd,pre,samp{font-family:monospace,monospace;font-size:1em}button,input,optgroup,select,textarea{color:inherit;font:inherit;margin:0}button{overflow:visible}button,select{text-transform:none}button,html input[type=button],input[type=reset],input[type=submit]{-webkit-appearance:button;cursor:pointer}button[disabled],html input[disabled]{cursor:default}button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0}input{line-height:normal}input[type=checkbox],input[type=radio]{box-sizing:border-box;padding:0}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{height:auto}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}fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}legend{border:0;padding:0}textarea{overflow:auto}optgroup{font-weight:700}table{border-collapse:collapse;border-spacing:0}td,th{padding:0}@font-face{font-family:Nexa;src:url(../fonts/nexa_light-webfont.eot);src:url(../fonts/nexa_light-webfont.eot?#iefix) format("embedded-opentype"),url(../fonts/nexa_light-webfont.woff2) format("woff2"),url(../fonts/nexa_light-webfont.woff) format("woff"),url(../fonts/nexa_light-webfont.ttf) format("truetype");font-weight:400;font-style:normal}@font-face{font-family:Nexa;src:url(../fonts/nexa_bold-webfont.eot);src:url(../fonts/nexa_bold-webfont.eot?#iefix) format("embedded-opentype"),url(../fonts/nexa_bold-webfont.woff2) format("woff2"),url(../fonts/nexa_bold-webfont.woff) format("woff"),url(../fonts/nexa_bold-webfont.ttf) format("truetype");font-weight:700;font-style:normal}@font-face{font-family:trackir-icons;src:url(../fonts/trackir-icons.eot?58733249);src:url(../fonts/trackir-icons.eot?58733249#iefix) format("embedded-opentype"),url(../fonts/trackir-icons.woff?58733249) format("woff"),url(../fonts/trackir-icons.ttf?58733249) format("truetype"),url(../fonts/trackir-icons.svg?58733249#trackir-icons) format("svg");font-weight:400;font-style:normal}[class*=" icon-"]:before,[class^=icon-]:before,header nav[role=navigation]>ul>li.cart a:after{font-family:trackir-icons;font-style:normal;font-weight:400;speak:none;display:inline-block;text-decoration:inherit;width:1em;margin-right:.2em;text-align:center;font-variant:normal;text-transform:none;margin-left:.2em}.icon-basket:before{content:""}.icon-chevron-small-right:before{content:""}.icon-twitch:before{content:""}.icon-youtube-play:before{content:""}.icon-twitter:before{content:""}.icon-facebook:before{content:""}.icon-refresh:before{content:""}.icon-link-ext:before{content:""}.icon-play-circled:before{content:""}.icon-block:before{content:""}.icon-ok-circled2:before{content:""}.icon-ok:before{content:""}.icon-up-open-big:before{content:""}.icon-down-open-big:before{content:""}body{color:#fae6cd;font-family:Arial,sans-serif;line-height:1.3}a{color:#fff;text-decoration:underline}h1,h2,h3,h4,h5,h6{color:#fff;font-weight:400}h1,h2{font-family:Nexa,sans-serif;text-transform:uppercase}h3{font-weight:700}code,label{color:#fff}code{background:hsla(0,0%,100%,.3) none repeat scroll 0 0;border-radius:5px;padding:1px 9px}body{font-size:16px}h1{font-size:45px}h2{font-size:36px}h3{font-size:18px}html{box-sizing:border-box;overflow-y:scroll}*,:after,:before{box-sizing:inherit}img{max-width:100%}body,html{height:100%}main{min-height:100%;margin-bottom:-240px}@media (min-width:768px){main{margin-bottom:-225px}}main:after{content:"";display:block;height:240px}@media (min-width:768px){main:after{height:225px}}body{background:#ec8a00;background-image:-webkit-linear-gradient(180deg,#ec8a00,#fa9b00 10%,#ffa600 20%,#ffa600 80%,#fa9b00 90%,#ec8a00),-webkit-radial-gradient(50% 50%,#ffa600 0,#ffa600 60%,#fa9b00 80%,#ec8a00 100%,#b65f00 135%);background-image:linear-gradient(-90deg,#ec8a00,#fa9b00 10%,#ffa600 20%,#ffa600 80%,#fa9b00 90%,#ec8a00),radial-gradient(50% 50%,#ffa600 0,#ffa600 60%,#fa9b00 80%,#ec8a00 100%,#b65f00 135%);background-position:left 0 top 12050px,top;background-repeat:no-repeat;background-size:auto 10000px,100% 12000px}@media (min-width:768px){h1,h2{margin-bottom:0}}input[type=email],input[type=tel],input[type=text],textarea{font-size:13px;line-height:inherit;padding:4px 10px;border:0;border-radius:5px;background:rgba(0,0,0,.1)}input[type=email]:active,input[type=email]:focus,input[type=tel]:active,input[type=tel]:focus,input[type=text]:active,input[type=text]:focus,textarea:active,textarea:focus{box-shadow:0 0 0 1px #fff;outline:none}button,input[type=submit]{background:transparent;-webkit-transition:all .2s ease-out;transition:all .2s ease-out;padding:10px 52px;border:1px solid #fae6cd;border-radius:40px;text-decoration:none}button:hover,input[type=submit]:hover{color:#fff;background:rgba(0,0,0,.1)}select{color:#000}header{-webkit-transition:background-color .5s ease-in-out;transition:background-color .5s ease-in-out;background-color:rgba(247,146,0,0);border-bottom:1px solid hsla(0,0%,100%,.35);position:fixed;width:100%;top:0;z-index:2;height:60px}@media (min-width:768px){header{height:75px}}header.main-nav-scrolled{background-color:rgba(247,146,0,.9)}header nav[role=navigation]{max-width:290px;margin-left:auto;margin-right:auto;padding:5px 0 7px}header nav[role=navigation]:after{content:" ";display:block;clear:both}@media (min-width:768px){header nav[role=navigation]{max-width:702px;margin-left:auto;margin-right:auto}header nav[role=navigation]:after{content:" ";display:block;clear:both}}@media (min-width:768px){header nav[role=navigation]{padding:30px 0 18px}}header nav[role=navigation] .trackir-logo a{margin-left:25.42373%}header nav[role=navigation] .trackir-logo img{width:144px;height:auto}@media (min-width:768px){header nav[role=navigation] .trackir-logo{display:none}}header nav[role=navigation] a{padding:0 4px;text-decoration:none;color:#fae6cd;font-size:13px}header nav[role=navigation] li:first-child a{padding-left:0}header nav[role=navigation] li:last-child a{padding-right:0}header nav[role=navigation]>ul{padding:0;margin-top:5px;list-style:none;text-align:justify}@media (min-width:768px){header nav[role=navigation]>ul{margin-top:-4px}}header nav[role=navigation]>ul>li{display:inline-block}header nav[role=navigation]>ul>li.cart a span{position:absolute;top:-99999px;left:-99999px}header nav[role=navigation]>ul>li.cart a:after{content:""}@media (max-width:767px){header nav[role=navigation]>ul li.inline-trackir-logo{display:none}}header nav[role=navigation]>ul li.inline-trackir-logo img{height:15px}header nav[role=navigation]>ul li:not(:last-child){margin-right:6px}header nav[role=navigation]>ul li:last-child{float:right}@media (min-width:768px){header nav[role=navigation]>ul li:nth-of-type(2),header nav[role=navigation]>ul li:nth-of-type(3){margin-left:62px}header nav[role=navigation]>ul li:nth-of-type(4),header nav[role=navigation]>ul li:nth-of-type(5){margin-left:22px}}main{padding-top:60px}@media (min-width:768px){main{padding-top:75px}}footer{background:#161616;font-size:13px;text-align:center;padding:25px 0;height:240px;margin-top:-240px}@media (min-width:768px){footer{padding:40px 0;height:225px;margin-top:-225px}}footer .social-links,footer .sosumi,footer nav.auxiliary{max-width:290px;margin-left:auto;margin-right:auto}footer .social-links:after,footer .sosumi:after,footer nav.auxiliary:after{content:" ";display:block;clear:both}@media (min-width:768px){footer .social-links,footer .sosumi,footer nav.auxiliary{max-width:702px;margin-left:auto;margin-right:auto}footer .social-links:after,footer .sosumi:after,footer nav.auxiliary:after{content:" ";display:block;clear:both}}footer a{text-decoration:none;color:#fff}footer .social-links{font-size:28px}footer .social-links a{color:hsla(0,0%,100%,.35)}footer .social-links ul{margin:0;padding:0}footer .social-links ul>li{display:inline;padding:0 10px}footer .social-links ul>li .icon-twitch{font-size:26px}footer .social-links ul>li .label{position:absolute;top:-99999px;left:-99999px}footer nav.auxiliary ul{padding:0}footer nav.auxiliary ul>li{display:inline;white-space:nowrap;margin-left:.5em;line-height:2.3em}footer nav.auxiliary ul>li:before{display:inline;content:"\2022";margin-right:.3em}footer nav.auxiliary ul>li:first-child{margin-left:0}footer nav.auxiliary ul>li:first-child:before{display:none}@media (max-width:767px){footer nav.auxiliary ul>li:nth-of-type(5),footer nav.auxiliary ul>li:nth-of-type(8){margin-left:0}footer nav.auxiliary ul>li:nth-of-type(5):before,footer nav.auxiliary ul>li:nth-of-type(8):before{display:none}}@media (min-width:768px){footer nav.auxiliary ul>li:nth-of-type(9){display:block;margin-left:0}footer nav.auxiliary ul>li:nth-of-type(9):before{display:none}}footer .all-rights-reserved,footer .copyright{color:hsla(0,0%,100%,.35)}@media (max-width:767px){footer .all-rights-reserved,footer .copyright{display:block}}body.home main{opacity:0;-webkit-animation-name:a;animation-name:a;-webkit-animation-duration:2s;animation-duration:2s;-webkit-animation-fill-mode:forwards;animation-fill-mode:forwards;overflow:hidden}@-webkit-keyframes a{0%{opacity:0}30%{opacity:0}to{opacity:1}}@keyframes a{0%{opacity:0}30%{opacity:0}to{opacity:1}}body.home main section{text-align:center}body.home main section a.cta{-webkit-transition:all .2s ease-out;transition:all .2s ease-out;padding:10px 52px;border:1px solid #fae6cd;border-radius:40px;text-decoration:none;display:inline-block}body.home main section a.cta:hover{color:#fff;background:rgba(0,0,0,.1)}body.home h1{font-size:36px}@media (min-width:768px){body.home h1{font-size:45px}}body.home h2{font-size:28px}@media (min-width:768px){body.home h2{font-size:45px}}body.home [id=intro]{max-width:290px;margin:60px auto 40px}body.home [id=intro]:after{content:" ";display:block;clear:both}@media (min-width:768px){body.home [id=intro]{max-width:702px;margin-left:auto;margin-right:auto}body.home [id=intro]:after{content:" ";display:block;clear:both}}@media (max-width:767px){body.home [id=intro]{min-height:98px}}body.home [id=intro] .typed span{font-size:14px;top:-22px;position:relative}body.home [id=intro] h1{font-size:36px}@media (min-width:768px){body.home [id=intro] h1{font-size:45px}}@media (min-width:768px){body.home [id=intro] h1 br{display:none}}body.home [id=intro] .content h3{margin-top:700px}body.home .monitor-container{max-width:290px;margin-left:auto;margin-right:auto;height:580px}body.home .monitor-container:after{content:" ";display:block;clear:both}@media (min-width:768px){body.home .monitor-container{max-width:702px;margin-left:auto;margin-right:auto}body.home .monitor-container:after{content:" ";display:block;clear:both}}@media (min-width:768px){body.home .monitor-container{height:530px}}@media (min-width:768px){body.home .monitor-container .static-fallback{display:none}}@media (max-width:767px){body.home .monitor-container .demo-video,body.home .monitor-container .display-surround{display:none}}body.home .monitor-container a{width:269.49153%;float:left;margin-right:1.69492%;margin-left:-84.74576%}@media (min-width:768px){body.home .monitor-container a{width:116.94915%;float:left;margin-right:1.69492%;margin-left:-8.47458%}}@media (min-width:768px){body.home .monitor-container img{margin-bottom:-201px;opacity:.99}}body.home .monitor-container video{margin-top:-1200px;margin-left:39px;width:746px}body.home [id=intro-cta]{max-width:290px;margin-left:auto;margin-right:auto;margin-bottom:50px}body.home [id=intro-cta]:after{content:" ";display:block;clear:both}@media (min-width:768px){body.home [id=intro-cta]{max-width:702px;margin-left:auto;margin-right:auto}body.home [id=intro-cta]:after{content:" ";display:block;clear:both}}@media (min-width:768px){body.home [id=intro-cta] .call-to-action{width:83.05085%;float:left;margin-right:1.69492%;margin-left:8.47458%}}body.home [id=intro-cta] .call-to-action a.cta{margin-top:20px}body.home [id=intro-cta] .call-to-action .call-to-action-links a{width:280px}body.home [id=featured-products]{background:rgba(0,0,0,.1)}body.home [id=gamer-testimonials]{max-width:290px;margin:50px auto}body.home [id=gamer-testimonials]:after{content:" ";display:block;clear:both}@media (min-width:768px){body.home [id=gamer-testimonials]{max-width:702px;margin-left:auto;margin-right:auto}body.home [id=gamer-testimonials]:after{content:" ";display:block;clear:both}}@media (min-width:768px){body.home [id=gamer-testimonials]{margin-top:80px}}body.home [id=gamer-testimonials] .testimonial-container{margin-top:50px;width:100%}body.home [id=gamer-testimonials] .testimonial{width:100%;float:left;margin-left:0;margin-right:0;margin-bottom:50px}@media (min-width:768px){body.home [id=gamer-testimonials] .testimonial{width:49.15254%;float:left}body.home [id=gamer-testimonials] .testimonial:nth-child(2n+1){margin-right:-100%;clear:both;margin-left:0}body.home [id=gamer-testimonials] .testimonial:nth-child(2n+2){margin-left:50.84746%;margin-right:-100%;clear:none}}body.home [id=gamer-testimonials] img{clear:both;width:15.25424%;float:left;margin-right:1.69492%;width:40px}body.home [id=gamer-testimonials] .quote{font-size:16px;margin-top:0;width:83.05085%;float:right;margin-right:0;text-align:left}body.home [id=gamer-testimonials] .quote a{margin-left:-2px}body.home [id=gamer-testimonials] .quote .person{font-weight:700;margin-top:12px;margin-bottom:0;color:#fff}body.home [id=featured-games]{background:#232323 none repeat 0 0;border-bottom:1px solid hsla(0,0%,100%,.35);padding-bottom:80px;padding-top:20px}@media (min-width:768px){body.home [id=featured-games]{padding:50px auto}}body.home [id=featured-games] .games-wrap{margin-bottom:20px}@media (min-width:768px){body.home [id=featured-games] .games-wrap{margin-bottom:60px;overflow:hidden;overflow-x:hidden}}@media (min-width:768px){body.home [id=featured-games] .games-wrap .games{position:relative;top:17px}}@media (min-width:768px){body.home [id=featured-games] .games-wrap .games .games-list{width:100%;white-space:nowrap}}body.home [id=featured-games] .games-wrap .games .games-list .game-background{background-image:url(../images/trackir-enhanced-games-vertical.png);background-position:50%;background-repeat:no-repeat;height:400px}@media (min-width:768px){body.home [id=featured-games] .games-wrap .games .games-list .game-background{background-image:url(../images/trackir-enhanced-games-horizontal.png);height:210px;background-size:cover;background-size:auto auto;background-position:50%;background-repeat:no-repeat}}body.home .typed-cursor{opacity:1;-webkit-animation:b 1s infinite;animation:b 1s infinite;font-family:Arial,sans-serif;font-weight:100}@-webkit-keyframes b{0%{opacity:1}50%{opacity:0}to{opacity:1}}@keyframes b{0%{opacity:1}50%{opacity:0}to{opacity:1}}body.home footer{opacity:.99;background:#232323 none repeat 0 0}body.cart .editcart{max-width:290px;margin-left:auto;margin-right:auto;text-align:center}body.cart .editcart:after{content:" ";display:block;clear:both}@media (min-width:768px){body.cart .editcart{max-width:702px;margin-left:auto;margin-right:auto}body.cart .editcart:after{content:" ";display:block;clear:both}}body.cart .editcart [id=continueShopping]{-webkit-transition:all .2s ease-out;transition:all .2s ease-out;padding:10px 52px;border:1px solid #fae6cd;border-radius:40px;text-decoration:none;display:inline-block;margin-top:35px;margin-bottom:35px}body.cart .editcart [id=continueShopping]:hover{color:#fff;background:rgba(0,0,0,.1)}@media (min-width:768px){body.cart .editcart [id=continueShopping]{float:left}}@media (min-width:768px){body.cart .editcart [id=continueShopping]+a{float:right}}body.cart .editcart .items{list-style:none;padding-left:0}body.cart .editcart .item{padding:25px 0;border-bottom:1px solid hsla(0,0%,100%,.5)}@media (min-width:768px){body.cart .editcart .item{position:relative;min-height:20px}}body.cart .editcart .item .moniker{text-align:left}@media (min-width:768px){body.cart .editcart .item .moniker{width:280px;position:absolute}body.cart .editcart .item .moniker h3{margin:0}}body.cart .editcart .item .moniker .part.number{display:none}body.cart .editcart .item .price{text-align:left}@media (min-width:768px){body.cart .editcart .item .price{left:340px;width:60px;position:absolute}}body.cart .editcart .item .multiply.sign{display:none}@media (min-width:768px){body.cart .editcart .item .multiply.sign{display:block;position:absolute;left:410px}}body.cart .editcart .item fieldset{border:none;position:relative}@media (max-width:767px){body.cart .editcart .item fieldset{padding:15px 0}}@media (min-width:768px){body.cart .editcart .item fieldset{padding:0}}@media (max-width:767px){body.cart .editcart .item fieldset input[name=quant]{margin-top:-40px;margin-right:90px;float:right;width:50px;text-align:right}}body.cart .editcart .item fieldset button[type=submit]{border:medium none;padding:15px 0}@media (max-width:767px){body.cart .editcart .item fieldset button[type=submit]{float:right}}@media (min-width:768px){body.cart .editcart .item fieldset button[type=submit]{padding:0}}body.cart .editcart .item fieldset button[type=submit]:active,body.cart .editcart .item fieldset button[type=submit]:hover{background:none}@media (max-width:767px){body.cart .editcart .item form.update.quantity{margin-top:-20px}body.cart .editcart .item form.update.quantity input[type=text]{margin-top:-20px;position:absolute;left:100px}}@media (min-width:768px){body.cart .editcart .item form.update.quantity{position:absolute;left:380px;width:200px}body.cart .editcart .item form.update.quantity input[type=text]{width:45px;margin-top:-5px;height:20px;text-align:right}}@media (min-width:768px) and (max-width:767px){body.cart .editcart .item form.update.quantity button{margin-top:-20px}}@media (min-width:768px) and (min-width:768px){body.cart .editcart .item form.update.quantity button{margin-left:5px}}@media (max-width:767px){body.cart .editcart .item form.remove button{margin-top:-50px}}@media (min-width:768px){body.cart .editcart .item form.remove{position:absolute;left:550px}body.cart .editcart .item form.remove:after{content:"|";position:absolute;left:-9px;top:0}}body.cart .editcart .item .line.total{float:right;height:20px}@media (max-width:767px){body.cart .editcart .item .line.total{margin-top:-112px}}body.cart .editcart .decision{padding-top:40px}body.cart .editcart .decision .checkout{padding:5px 0}body.cart .editcart .decision .checkout a{margin:10px 0;-webkit-transition:all .2s ease-out;transition:all .2s ease-out;padding:10px 52px;border:1px solid #fae6cd;border-radius:40px;text-decoration:none;display:inline-block}body.cart .editcart .decision .checkout a:hover{color:#fff;background:rgba(0,0,0,.1)}body.cart .editcart .decision .remove.all{display:none}body.cart .editcart .calculate.box{text-align:right}body.checkout h1,body.checkout h2{text-align:center}body.checkout h6{font-size:16px;font-weight:700;margin:15px 0}body.checkout fieldset{border:none}body.checkout hr{display:none}body.checkout .enc-store{max-width:290px;margin-left:auto;margin-right:auto}body.checkout .enc-store:after{content:" ";display:block;clear:both}@media (min-width:768px){body.checkout .enc-store{max-width:702px;margin-left:auto;margin-right:auto}body.checkout .enc-store:after{content:" ";display:block;clear:both}}body.checkout .enc-store .row{padding:9px 0}body.checkout .enc-store .row input,body.checkout .enc-store .row label{display:block}body.checkout .enc-store .row label:not(.error){padding-bottom:9px}body.checkout .enc-store .row input:not([type=radio]){width:100%!important}body.checkout .enc-store .row [id=billing_address1],body.checkout .enc-store .row [id=billing_address2],body.checkout .enc-store .row [id=street1],body.checkout .enc-store .row [id=street2]{margin-bottom:15px}body.checkout .enc-store .row select{width:180px}body.checkout .enc-store button.continue{margin-bottom:45px}body.checkout .enc-store [id=checkoutStep1] br{display:none}body.checkout .enc-store [id=checkoutStep1] .notice{padding:.35em .625em .75em}body.checkout .enc-store [id=checkoutStep1] .notice p:last-of-type{text-align:center}@media (min-width:768px){body.checkout .enc-store [id=checkoutStep1] .notice p:last-of-type{text-align:left}}body.checkout .enc-store [id=checkoutStep1] .left h2{border-bottom:1px solid hsla(0,0%,100%,.5)}@media (min-width:768px){body.checkout .enc-store [id=checkoutStep1] .left h2{margin-bottom:30px}}@media (min-width:768px){body.checkout .enc-store [id=checkoutStep1] .left{width:49.15254%;float:left;margin-right:1.69492%}}body.checkout .enc-store [id=checkoutStep1] .right h2{font-family:Arial,sans-serif;line-height:1.3;font-size:18px;font-weight:700;text-align:left;margin-bottom:-30px}@media (min-width:768px){body.checkout .enc-store [id=checkoutStep1] .right{padding-top:144px;width:49.15254%;float:right;margin-right:0}}@media (min-width:768px){body.checkout .enc-store [id=checkoutStep1] fieldset .continue{margin-top:600px;margin-left:-120px}}body.checkout .enc-store [id=checkoutStep2] br{display:none}body.checkout .enc-store [id=checkoutStep2] h2{border-bottom:1px solid hsla(0,0%,100%,.5)}body.checkout .enc-store [id=checkoutStep2] .shipping.method{width:inherit!important}body.checkout .enc-store [id=checkoutStep2] .shipping.method .notice p{font-size:16px!important}body.checkout .enc-store [id=checkoutStep2] .shipping.method ul{list-style:none;padding-left:0;margin-bottom:45px}body.checkout .enc-store [id=checkoutStep2] .international-tax-notice{margin-bottom:25px}@media (min-width:768px){body.checkout .enc-store [id=checkoutStep2] button.continue{margin-left:215px}}body.checkout .enc-store [id=checkoutStep2] button[disabled=""]{background:hsla(0,0%,100%,.35)}body.checkout .enc-store [id=checkoutStep2] button[disabled=""]:active,body.checkout .enc-store [id=checkoutStep2] button[disabled=""]:hover{background:hsla(0,0%,100%,.35);color:#fae6cd}body.checkout .enc-store [id=checkoutStep3] h2{border-bottom:1px solid hsla(0,0%,100%,.5)}@media (min-width:768px){body.checkout .enc-store [id=checkoutStep3] .left{width:49.15254%;float:left;margin-right:1.69492%;padding-top:47px}}@media (min-width:768px){body.checkout .enc-store [id=checkoutStep3] .right{width:49.15254%;float:right;margin-right:0}}body.checkout .enc-store [id=checkoutStep3] [id=copyAddress]{float:inherit!important;margin-top:inherit!important;margin-right:inherit!important;margin-bottom:25px!important;margin-left:inherit!important}@media (min-width:768px){body.checkout .enc-store [id=checkoutStep3] [id=copyAddress]{margin-left:33px!important}}body.checkout .enc-store [id=checkoutStep3] .row.credit.card ul{list-style:none;padding-left:0}body.checkout .enc-store [id=checkoutStep3] .row.credit.card li{padding-bottom:5px}body.checkout .enc-store [id=checkoutStep3] .row.credit.card input,body.checkout .enc-store [id=checkoutStep3] .row.credit.card label{display:inline}body.checkout .enc-store [id=checkoutStep3] .row.credit.card input{padding-right:12px}body.checkout .enc-store [id=checkoutStep3] .notice{padding:.35em .625em .75em}@media (min-width:768px){body.checkout .enc-store [id=checkoutStep3] button.continue{margin-top:355px;margin-left:-146px}}body.checkout .enc-store [id=checkoutStep4] h2{border-bottom:1px solid hsla(0,0%,100%,.5)}@media (min-width:768px){body.checkout .enc-store [id=checkoutStep4] .left.column{width:49.15254%;float:left;margin-right:1.69492%}}@media (min-width:768px){body.checkout .enc-store [id=checkoutStep4] .right.column{width:49.15254%;float:right;margin-right:0}}body.checkout .enc-store [id=checkoutStep4] .order.summary{width:100%;float:left;margin-left:0;margin-right:0}body.checkout .enc-store [id=checkoutStep4] .items{list-style:none;padding-left:0}body.checkout .enc-store [id=checkoutStep4] .item{height:76px;border-bottom:1px solid hsla(0,0%,100%,.5)}body.checkout .enc-store [id=checkoutStep4] .item ul.details{list-style:none;padding-left:0}body.checkout .enc-store [id=checkoutStep4] .item ul.details li:nth-child(1){padding-right:10px}body.checkout .enc-store [id=checkoutStep4] .item ul.details li:nth-child(1),body.checkout .enc-store [id=checkoutStep4] .item ul.details li:nth-child(2){float:left}body.checkout .enc-store [id=checkoutStep4] .item ul.details li:nth-child(3){float:right}body.checkout .enc-store [id=checkoutStep4] ul.totals{list-style:none;padding-left:none;float:right}body.checkout .enc-store [id=checkoutStep4] ul.totals li{text-align:right}@media (min-width:768px){body.checkout .enc-store [id=checkoutStep4] button.continue{margin-top:140px;margin-left:225px}}body.checkout .zip4-lookup-link{margin-top:9px;-webkit-transition:all .2s ease-out;transition:all .2s ease-out;padding:10px 52px;border:1px solid #fae6cd;border-radius:40px;text-decoration:none;display:inline-block;cursor:pointer}body.checkout .zip4-lookup-link:hover{color:#fff;background:rgba(0,0,0,.1)}body.checkout label.error{background-color:#fff;margin-top:-22px;margin-right:10px;font-size:13px;float:right;border-radius:4px;color:#d17900;padding:3px 5px 1px;text-transform:capitalize}body.checkout .error[for=billing_address1],body.checkout .error[for=street1]{margin-top:-37px}body.checkout .error[for=billing_stateprov],body.checkout .error[for=stateprov]{margin-top:-49px}@media (min-width:768px){body.checkout .error[for=billing_stateprov],body.checkout .error[for=stateprov]{margin-top:-25px}}body.checkout label.error[for=billing_address1]{margin-top:-40px}body.checkout label.error[for=billing_country],body.checkout label.error[for=billing_stateprov]{margin-top:-49px}@media (min-width:768px){body.checkout label.error[for=billing_country],body.checkout label.error[for=billing_stateprov]{margin-top:0}}body.checkout .costnondiscount{color:brown;text-decoration:line-through}body.checkout :not(button)>span.button{-webkit-transition:all .2s ease-out;transition:all .2s ease-out;padding:10px 52px;border:1px solid #fae6cd;border-radius:40px;text-decoration:none;display:inline-block;cursor:pointer}body.checkout :not(button)>span.button:hover{color:#fff;background:rgba(0,0,0,.1)}body.about{background:#5393d0;background-image:none}body.about header{background-color:rgba(83,147,208,0)}body.about header.main-nav-scrolled{background-color:rgba(83,147,208,.9)}body.about main{background-color:rgba(83,147,208,.9);background:-webkit-linear-gradient(top,hsla(0,0%,9%,0) 320px,#171717 370px),url(../images/about-background.jpg);background:linear-gradient(180deg,hsla(0,0%,9%,0) 320px,#171717 370px),url(../images/about-background.jpg);background-repeat:no-repeat,no-repeat;background-position:0 0,50% 0;background-size:100% 100%,599px 399px}@media (min-width:599px){body.about main{background:-webkit-linear-gradient(top,hsla(0,0%,9%,0) 400px,#171717 450px),url(../images/about-background.jpg);background:linear-gradient(180deg,hsla(0,0%,9%,0) 400px,#171717 450px),url(../images/about-background.jpg);background-repeat:no-repeat,no-repeat;background-position:100% 100%,50% 0;background-size:100% 100%,768px 511px}}@media (min-width:768px){body.about main{background:-webkit-linear-gradient(top,hsla(0,0%,9%,0) 500px,#171717 600px),url(../images/about-background.jpg);background:linear-gradient(180deg,hsla(0,0%,9%,0) 500px,#171717 600px),url(../images/about-background.jpg);background-repeat:no-repeat,no-repeat;background-position:100% 100%,50% -125px;background-size:100% 100%,1200px 798px}}@media (min-width:1200px){body.about main{background:-webkit-linear-gradient(top,hsla(0,0%,9%,0) 503px,#171717 630px),url(../images/about-background.jpg);background:linear-gradient(180deg,hsla(0,0%,9%,0) 503px,#171717 630px),url(../images/about-background.jpg);background-repeat:no-repeat,no-repeat;background-position:100% 100%,50% -225px;background-size:100% 100%,1700px 1132px}}@media (min-width:1699px){body.about main{background:-webkit-linear-gradient(top,hsla(0,0%,9%,0) 675px,#171717 800px),url(../images/about-background.jpg);background:linear-gradient(180deg,hsla(0,0%,9%,0) 675px,#171717 800px),url(../images/about-background.jpg);background-color:#5393d0;background-repeat:no-repeat,no-repeat;background-position:100% 100%,50% -425px,100% 100%;background-size:100% 100%,2400px 1530px,100% 100%}}body.about main .content{max-width:290px;margin-left:auto;margin-right:auto}body.about main .content:after{content:" ";display:block;clear:both}@media (min-width:768px){body.about main .content{max-width:702px;margin-left:auto;margin-right:auto}body.about main .content:after{content:" ";display:block;clear:both}}@media (max-width:767px){body.about main h1{margin:.3em 0 .67em}}body.about main section.intro{text-align:center}body.about .about-copy{margin-top:250px;margin-bottom:45px;text-align:center}@media (min-width:599px){body.about .about-copy{margin-top:300px;width:91.52542%;float:left;margin-right:1.69492%;margin-left:4.23729%}}@media (min-width:768px){body.about .about-copy{margin-top:450px}}@media (min-width:1699px){body.about .about-copy{margin-top:450px}}body.about .about-copy a,body.about .about-copy p{color:hsla(0,0%,100%,.5)}body.about footer{border-top:1px solid hsla(0,0%,100%,.15)}body.policy main{max-width:290px;margin-left:auto;margin-right:auto;margin-bottom:45px}body.policy main:after{content:" ";display:block;clear:both}@media (min-width:768px){body.policy main{max-width:702px;margin-left:auto;margin-right:auto}body.policy main:after{content:" ";display:block;clear:both}}body.policy main section ul{display:table;margin-left:0;padding-left:0;list-style:none}body.policy main section ul li{display:table-row}body.policy main section ul li:before{content:"•";display:table-cell;padding-right:.4em}body.policy h1,body.policy h1~p{text-align:center}body.policy h1{margin-bottom:0}body.policy h1~p{margin-top:0;margin-bottom:45px}body.policy h3{margin-bottom:0}body.policy h3~p{margin-top:0}body.terms main,body.warranty main{max-width:290px;margin-left:auto;margin-right:auto;margin-bottom:50px}body.terms main:after,body.warranty main:after{content:" ";display:block;clear:both}@media (min-width:768px){body.terms main,body.warranty main{max-width:702px;margin-left:auto;margin-right:auto}body.terms main:after,body.warranty main:after{content:" ";display:block;clear:both}}body.terms h1,body.warranty h1{text-align:center}body.terms h3,body.warranty h3{margin-bottom:0}body.terms h3~p,body.warranty h3~p{margin-top:0}body.products main{text-align:center}body.products main h2{margin-bottom:10px}body.products main .content{max-width:290px;margin-left:auto;margin-right:auto}body.products main .content:after{content:" ";display:block;clear:both}@media (min-width:768px){body.products main .content{max-width:702px;margin-left:auto;margin-right:auto}body.products main .content:after{content:" ";display:block;clear:both}}body.products main a.cta{-webkit-transition:all .2s ease-out;transition:all .2s ease-out;padding:10px 52px;border:1px solid #fae6cd;border-radius:40px;text-decoration:none;display:inline-block}body.products main a.cta:hover{color:#fff;background:rgba(0,0,0,.1)}body.products main section.intro{padding:55px 0}body.products main section.intro h2,body.products main section.intro p{margin-top:10px;width:100%;float:left;margin-left:0;margin-right:0}@media (min-width:768px){body.products main section.intro img{width:83.05085%;float:left;margin-right:1.69492%;margin-left:8.47458%;margin-bottom:50px}}@media (min-width:768px){body.products main section.intro p{margin-bottom:45px}}@media (min-width:768px){body.products main section.intro .intro-copy a{margin-top:15px}}body.products main section.accessories{background-image:-webkit-gradient(linear,left top,left bottom,from(#161616),to(#232323));background-image:-webkit-linear-gradient(top,#161616,#232323);background-image:linear-gradient(180deg,#161616 0,#232323);padding:70px 0}body.products main section.accessories img{width:83.05085%;float:left;margin-right:1.69492%;margin-left:8.47458%;float:none}body.products main section.accessories h2{margin-top:0}body.products main section.accessories .accessories-copy a{margin-top:15px}@media (min-width:768px){body.products main section.accessories img{width:66.10169%;float:left;margin-right:1.69492%;margin-left:0;margin-bottom:-40px;height:270px;width:auto}body.products main section.accessories .accessories-copy{width:32.20339%;float:left;margin-top:45px}body.products main section.accessories .accessories-copy a{margin-top:15px}}body.products main section.dealers{background-image:url(../images/dealers-map.png);background-repeat:no-repeat;background-position:50% 22px;background-size:658px 268px;padding:70px 0;height:312px}body.products main section.dealers h2{margin-top:15px;margin-bottom:20px}@media (min-width:768px){body.products main section.dealers h2{margin-top:115px;margin-bottom:25px}}@media (min-width:768px){body.products main section.dealers{background-position:50% 63px;background-size:877px 357px;height:483px}}body.products main section.dealers .content{width:300px}body.help a.cta{-webkit-transition:all .2s ease-out;transition:all .2s ease-out;padding:10px 52px;border:1px solid #fae6cd;border-radius:40px;text-decoration:none;display:inline-block}body.help a.cta:hover{color:#fff;background:rgba(0,0,0,.1)}body.help section.contact-form,body.help section.contact-section,body.help section.help-section{max-width:290px;margin-left:auto;margin-right:auto;text-align:center}body.help section.contact-form:after,body.help section.contact-section:after,body.help section.help-section:after{content:" ";display:block;clear:both}@media (min-width:768px){body.help section.contact-form,body.help section.contact-section,body.help section.help-section{max-width:702px;margin-left:auto;margin-right:auto}body.help section.contact-form:after,body.help section.contact-section:after,body.help section.help-section:after{content:" ";display:block;clear:both}}body.help section.contact-form:last-child,body.help section.contact-section:last-child,body.help section.help-section:last-child{margin-bottom:55px}body.help section.help-section div{width:100%;float:left;margin-left:0;margin-right:0}@media (min-width:768px){body.help section.help-section div{width:32.20339%;float:left;margin-right:1.69492%}body.help section.help-section div:last-child{width:32.20339%;float:right;margin-right:0}body.help section.help-section div a.cta{width:204px;margin-left:11px;padding:10px 5px}}body.help section.contact-section div{width:100%;float:left;margin-left:0;margin-right:0}@media (min-width:768px){body.help section.contact-section div{width:49.15254%;float:left;margin-right:1.69492%;margin-bottom:20px}body.help section.contact-section div:nth-child(2n+1){width:49.15254%;float:right;margin-right:0}}body.help section.contact-section h1,body.help section.contact-section h2,body.help section.help-section h1,body.help section.help-section h2{width:100%;float:left;margin-left:0;margin-right:0}body.help section.contact-section h1,body.help section.help-section h1{margin-bottom:25px}@media (max-width:767px){body.help section.help-section div:not(:first-of-type){margin:55px 0 0}}body.help section.help-section div a,body.help section.help-section div figure,body.help section.help-section div h3,body.help section.help-section div p{display:block}body.help section.help-section div h3{margin-bottom:0}body.help section.help-section div p{margin-top:5px}body.help section.help-section div figure{max-height:140px}body.help section.help-section div img{max-height:120px}body.help section.contact-section{max-width:290px;margin:25px auto 55px}body.help section.contact-section:after{content:" ";display:block;clear:both}@media (min-width:768px){body.help section.contact-section{max-width:702px;margin-left:auto;margin-right:auto}body.help section.contact-section:after{content:" ";display:block;clear:both}}@media (min-width:768px){body.help section.contact-section{margin-top:5px}}body.help section.contact-section h2{text-align:center}@media (min-width:768px){body.help section.contact-section h2{padding-top:30px}}@media (min-width:768px){body.help section.contact-section h2:after,body.help section.contact-section h2:before{content:"";border-bottom:1px solid hsla(0,0%,100%,.5);width:200px;margin-top:25px}}@media (min-width:768px){body.help section.contact-section h2:before{float:left}}@media (min-width:768px){body.help section.contact-section h2:after{float:right}}@media (min-width:768px){body.help section.contact-section div.modes-of-contact{width:100%}}@media (min-width:768px){body.help section.contact-section div.modes-of-contact div{width:49.15254%;float:left}body.help section.contact-section div.modes-of-contact div:nth-child(2n+1){margin-right:-100%;clear:both;margin-left:0}body.help section.contact-section div.modes-of-contact div:nth-child(2n+2){margin-left:50.84746%;margin-right:-100%;clear:none}body.help section.contact-section div.modes-of-contact div h3{margin-bottom:5px}body.help section.contact-section div.modes-of-contact div p{margin-top:0}}body.help address{font-style:normal}body.help a.cta-email,body.help a.cta-phone{color:#fae6cd;text-decoration:none}body.returns section{max-width:290px;margin-left:auto;margin-right:auto}body.returns section:after{content:" ";display:block;clear:both}@media (min-width:768px){body.returns section{max-width:702px;margin-left:auto;margin-right:auto}body.returns section:after{content:" ";display:block;clear:both}}body.returns section.intro{text-align:center}body.returns section.content{margin-bottom:45px}@media (min-width:768px){body.returns section.content{margin-bottom:70px}}body.returns section.content ul{display:table;margin-left:0;padding-left:0;list-style:none}body.returns section.content ul li{display:table-row}body.returns section.content ul li:before{content:"•";display:table-cell;padding-right:.4em}body.remote-support section{max-width:290px;margin-left:auto;margin-right:auto}body.remote-support section:after{content:" ";display:block;clear:both}@media (min-width:768px){body.remote-support section{max-width:702px;margin-left:auto;margin-right:auto}body.remote-support section:after{content:" ";display:block;clear:both}}body.remote-support section.intro{text-align:center}body.four-oh-four section.content{max-width:290px;margin-left:auto;margin-right:auto;text-align:center;margin-bottom:55px}body.four-oh-four section.content:after{content:" ";display:block;clear:both}@media (min-width:768px){body.four-oh-four section.content{max-width:702px;margin-left:auto;margin-right:auto}body.four-oh-four section.content:after{content:" ";display:block;clear:both}}body.four-oh-four section.content h1{margin-top:35px;margin-bottom:0}@media (min-width:768px){body.four-oh-four section.content h1{margin-top:125px}}body.four-oh-four section.content h2{margin-top:5px}body.four-oh-four section.content a.cta{-webkit-transition:all .2s ease-out;transition:all .2s ease-out;padding:10px 52px;border:1px solid #fae6cd;border-radius:40px;text-decoration:none;display:inline-block;margin-top:40px}body.four-oh-four section.content a.cta:hover{color:#fff;background:rgba(0,0,0,.1)}body.developers main a.cta{-webkit-transition:all .2s ease-out;transition:all .2s ease-out;padding:10px 52px;border:1px solid #fae6cd;border-radius:40px;text-decoration:none;display:inline-block}body.developers main a.cta:hover{color:#fff;background:rgba(0,0,0,.1)}body.developers main section{max-width:290px;margin-left:auto;margin-right:auto;text-align:center;margin-bottom:35px;padding-bottom:25px}body.developers main section:after{content:" ";display:block;clear:both}@media (min-width:768px){body.developers main section{max-width:702px;margin-left:auto;margin-right:auto}body.developers main section:after{content:" ";display:block;clear:both}}@media (min-width:768px){body.developers main section{padding-bottom:55px;margin-bottom:75px}}body.developers main section.intro{border-bottom:1px solid hsla(0,0%,100%,.5)}body.developers main section.intro div,body.developers main section.intro h1{width:100%;float:left;margin-left:0;margin-right:0}body.developers main section.intro div{text-align:left}@media (min-width:768px){body.developers main section.intro div{width:49.15254%;float:left;margin-right:1.69492%}body.developers main section.intro div:last-child{width:49.15254%;float:right;margin-right:0}}body.developers main section.phone-contact{border-bottom:1px solid hsla(0,0%,100%,.5)}body.developers main section.phone-contact h1{font-size:30px;margin-bottom:-10px}@media (min-width:768px){body.developers main section.phone-contact h1{font-size:36px}}body.developers main section.phone-contact a.cta-phone{text-decoration:none}body.developers main section.request-section h2{margin-bottom:-10px}body.developers main section.request-section a.cta{margin-top:15px}body.dealers main{background-image:url(../images/dealers-map.png);background-repeat:no-repeat;background-position:50% 85px;background-size:658px 268px;padding:70px 0}@media (min-width:768px){body.dealers main{background-position:50% 95px;background-size:1200px auto}}body.dealers main section{max-width:290px;margin-left:auto;margin-right:auto}body.dealers main section:after{content:" ";display:block;clear:both}@media (min-width:768px){body.dealers main section{max-width:702px;margin-left:auto;margin-right:auto}body.dealers main section:after{content:" ";display:block;clear:both}}body.dealers main section.intro{text-align:center}@media (min-width:768px){body.dealers main [id=dealers] ul,body.dealers main [id=distributors] ul{padding-left:0;margin-top:-30px}}body.dealers main [id=dealers] li,body.dealers main [id=distributors] li{list-style:none;margin-bottom:27px;margin-left:-32px}@media (min-width:768px){body.dealers main [id=dealers] li,body.dealers main [id=distributors] li{width:32.20339%;float:left;height:80px}body.dealers main [id=dealers] li:nth-child(3n+1),body.dealers main [id=distributors] li:nth-child(3n+1){margin-right:-100%;clear:both;margin-left:0}body.dealers main [id=dealers] li:nth-child(3n+2),body.dealers main [id=distributors] li:nth-child(3n+2){margin-left:33.89831%;margin-right:-100%;clear:none}body.dealers main [id=dealers] li:nth-child(3n+3),body.dealers main [id=distributors] li:nth-child(3n+3){margin-left:67.79661%;margin-right:-100%;clear:none}}body.dealers main [id=dealers] li span,body.dealers main [id=distributors] li span{display:block;text-align:center}body.dealers main [id=dealers] li span:first-child,body.dealers main [id=distributors] li span:first-child{font-weight:700;font-size:18px;margin-right:auto}body.dealers main [id=dealers] li span .icon-link-ext,body.dealers main [id=distributors] li span .icon-link-ext{display:inline;font-size:13px;padding-left:2px}body.dealers main [id=dealers] li span a,body.dealers main [id=distributors] li span a{text-decoration:none;color:#fae6cd}body.dealers main [id=distributors] h2{text-align:center}@media (min-width:768px){body.dealers main [id=distributors] h2{padding-top:30px}}@media (min-width:768px){body.dealers main [id=distributors] h2:after,body.dealers main [id=distributors] h2:before{content:"";border-bottom:1px solid hsla(0,0%,100%,.5);width:200px;margin-top:25px}}@media (min-width:768px){body.dealers main [id=distributors] h2:before{float:left}}@media (min-width:768px){body.dealers main [id=distributors] h2:after{float:right}}body.changelogs section{max-width:290px;margin-left:auto;margin-right:auto}body.changelogs section:after{content:" ";display:block;clear:both}@media (min-width:768px){body.changelogs section{max-width:702px;margin-left:auto;margin-right:auto}body.changelogs section:after{content:" ";display:block;clear:both}}body.changelogs [id=intro]{text-align:center}[id=changelogs]{max-width:290px;margin:35px auto}[id=changelogs]:after{content:" ";display:block;clear:both}@media (min-width:768px){[id=changelogs]{max-width:702px;margin-left:auto;margin-right:auto}[id=changelogs]:after{content:" ";display:block;clear:both}}[id=changelogs] .changelog{max-width:100%;margin-left:auto;margin-right:auto;padding-bottom:25px}[id=changelogs] .changelog:after{content:" ";display:block;clear:both}[id=changelogs] .changelog:not(:last-child){border-bottom:1px solid hsla(0,0%,100%,.5)}@media (min-width:768px){[id=changelogs] .changelog{padding-bottom:0}}[id=changelogs] .version-details{max-width:100%;margin-left:auto;margin-right:auto}[id=changelogs] .version-details:after{content:" ";display:block;clear:both}[id=changelogs] .version-details .posted-date{clear:both}@media (min-width:768px){[id=changelogs] .details{float:left}}[id=changelogs] .trigger-changelog div{cursor:pointer;width:44.44444%;float:left}[id=changelogs] .trigger-changelog div:first-child{width:24px}[id=changelogs] .toggle-indicator{width:24px;-webkit-transform:rotate(-90deg);transform:rotate(-90deg);-webkit-transition:all .3s ease;transition:all .3s ease;margin-top:19px}[id=changelogs] .toggle-indicator.open{-webkit-transform:rotate(0deg);transform:rotate(0deg)}[id=changelogs] h3{margin-bottom:10px}[id=changelogs] h3 a{text-decoration:none}[id=changelogs] p{margin-top:5px}[id=changelogs] .collapse-trigger{text-align:center}[id=changelogs] a.cta{-webkit-transition:all .2s ease-out;transition:all .2s ease-out;padding:10px 52px;border:1px solid #fae6cd;border-radius:40px;text-decoration:none;display:inline-block;width:235px}[id=changelogs] a.cta:hover{color:#fff;background:rgba(0,0,0,.1)}@media (min-width:768px){[id=changelogs] a.cta{float:right;margin-top:22px}}[id=changelogs] a.cta.download-link{margin-top:15px}@media (min-width:768px){[id=changelogs] a.cta.download-link{margin-top:22px;margin-right:15px}}[id=changelogs] .changes{display:none;min-width:100%;max-width:100%;margin-left:auto;margin-right:auto}[id=changelogs] .changes:after{content:" ";display:block;clear:both}[id=changelogs] .changes ul{display:table;margin-left:0;padding-left:0;list-style:none}[id=changelogs] .changes ul li{display:table-row}[id=changelogs] .changes ul li:before{content:"•";display:table-cell;padding-right:.4em}body.downloads section{max-width:290px;margin-left:auto;margin-right:auto}body.downloads section:after{content:" ";display:block;clear:both}@media (min-width:768px){body.downloads section{max-width:702px;margin-left:auto;margin-right:auto}body.downloads section:after{content:" ";display:block;clear:both}}body.downloads section a.cta{-webkit-transition:all .2s ease-out;transition:all .2s ease-out;padding:10px 52px;border:1px solid #fae6cd;border-radius:40px;text-decoration:none;display:inline-block;text-align:center}body.downloads section a.cta:hover{color:#fff;background:rgba(0,0,0,.1)}body.downloads section a{color:#fae6cd}body.downloads [id=intro] h1{text-align:center}@media (min-width:768px){body.downloads [id=trackir-software] .trackir-callout{width:66.10169%;float:left;margin-right:1.69492%;margin-left:16.94915%;text-align:center}}body.downloads [id=trackir-software] .trackir-callout img{margin-bottom:10px}body.downloads [id=trackir-software] .trackir-callout h3{font-size:18px}body.downloads [id=trackir-software] .trackir-callout .secondary{font-size:16px;margin-top:-20px;line-height:26px;margin-bottom:30px}body.downloads [id=trackir-software] .trackir-callout a.cta{margin-top:0;padding:10px 20px;width:100%;margin-bottom:20px}@media (min-width:768px){body.downloads [id=trackir-software] .trackir-callout a.cta{padding:10px 52px;width:70%}}body.downloads [id=alerts-and-requirements]{margin-top:50px}body.downloads [id=alerts-and-requirements] .alerts-and-notices,body.downloads [id=alerts-and-requirements] .system-requirements{text-align:left;width:100%;float:left;margin-left:0;margin-right:0}@media (min-width:768px){body.downloads [id=alerts-and-requirements] .alerts-and-notices,body.downloads [id=alerts-and-requirements] .system-requirements{width:49.15254%;float:left;margin-right:1.69492%}}body.downloads [id=alerts-and-requirements] .alerts-and-notices ul,body.downloads [id=alerts-and-requirements] .system-requirements ul{display:table;margin-left:0;padding-left:0;list-style:none}body.downloads [id=alerts-and-requirements] .alerts-and-notices ul li,body.downloads [id=alerts-and-requirements] .system-requirements ul li{display:table-row}body.downloads [id=alerts-and-requirements] .alerts-and-notices ul li:before,body.downloads [id=alerts-and-requirements] .system-requirements ul li:before{content:"•";display:table-cell;padding-right:.4em}@media (min-width:768px){body.downloads [id=alerts-and-requirements] .system-requirements{width:49.15254%;float:right;margin-right:0}}body.downloads [id=manuals] h2{text-align:center}@media (min-width:768px){body.downloads [id=manuals] h2{padding-top:30px}}@media (min-width:768px){body.downloads [id=manuals] h2:after,body.downloads [id=manuals] h2:before{content:"";border-bottom:1px solid hsla(0,0%,100%,.5);width:200px;margin-top:25px}}@media (min-width:768px){body.downloads [id=manuals] h2:before{float:left}}@media (min-width:768px){body.downloads [id=manuals] h2:after{float:right}}body.downloads [id=manuals] .manuals{margin-top:60px}body.downloads [id=manuals] .manuals figure{margin-bottom:50px;text-align:center}@media (min-width:768px){body.downloads [id=manuals] .manuals figure{width:32.20339%;float:left}body.downloads [id=manuals] .manuals figure:nth-child(3n+1){margin-right:-100%;clear:both;margin-left:0}body.downloads [id=manuals] .manuals figure:nth-child(3n+2){margin-left:33.89831%;margin-right:-100%;clear:none}body.downloads [id=manuals] .manuals figure:nth-child(3n+3){margin-left:67.79661%;margin-right:-100%;clear:none}}body.downloads [id=manuals] .manuals figure img{padding-bottom:15px;height:138px}body.downloads [id=manuals] .manuals figure span{margin:3px auto;display:block}body.downloads [id=manuals] .manuals figure span:first-of-type{font-weight:700}body.downloads [id=manuals] .manuals figure a.cta{margin-top:15px;padding:10px 20px;width:100%}@media (min-width:768px){body.downloads [id=manuals] .manuals figure a.cta{padding:10px 52px;width:auto;text-align:center}}body.software-news section{max-width:290px;margin-left:auto;margin-right:auto}body.software-news section:after{content:" ";display:block;clear:both}@media (min-width:768px){body.software-news section{max-width:702px;margin-left:auto;margin-right:auto}body.software-news section:after{content:" ";display:block;clear:both}}body.software-news [id=intro]{text-align:center}body.software-news .download-and-manual a{display:block;padding-top:10px}@media (min-width:768px){body.software-news .download-and-manual a{display:inline-block}body.software-news .download-and-manual a:last-child{padding-left:20px}}body.software-news [id=changelog]{margin-bottom:45px}body.previous-releases section{max-width:290px;margin-left:auto;margin-right:auto}body.previous-releases section:after{content:" ";display:block;clear:both}@media (min-width:768px){body.previous-releases section{max-width:702px;margin-left:auto;margin-right:auto}body.previous-releases section:after{content:" ";display:block;clear:both}}body.previous-releases section[id=intro]{text-align:center}body.previous-releases .return-link{margin:10px 0;display:block}body.previous-releases section[id=releases]{margin-bottom:35px}body.previous-releases section[id=releases] .download{max-width:100%;margin-left:auto;margin-right:auto;padding-bottom:25px}body.previous-releases section[id=releases] .download:after{content:" ";display:block;clear:both}body.previous-releases section[id=releases] .download:not(:last-child){border-bottom:1px solid hsla(0,0%,100%,.5)}@media (min-width:768px){body.previous-releases section[id=releases] .download{padding-bottom:0}}body.previous-releases section[id=releases] .details{text-align:center}@media (min-width:768px){body.previous-releases section[id=releases] .details{float:left;text-align:left}}body.previous-releases section[id=releases] h3{margin-bottom:10px}body.previous-releases section[id=releases] p{margin-top:5px}body.previous-releases section[id=releases] .download-link{text-align:center}body.previous-releases section[id=releases] a.cta{-webkit-transition:all .2s ease-out;transition:all .2s ease-out;padding:10px 52px;border:1px solid #fae6cd;border-radius:40px;text-decoration:none;display:inline-block}body.previous-releases section[id=releases] a.cta:hover{color:#fff;background:rgba(0,0,0,.1)}@media (min-width:768px){body.previous-releases section[id=releases] a.cta{float:right;margin-top:22px}}@-webkit-keyframes c{0%{background-position:0}to{background-position:-12000px}}@keyframes c{0%{background-position:0}to{background-position:-12000px}}[id=featured-products]{padding:25px 0 30px;background:rgba(0,0,0,.1);text-align:center}@media (min-width:768px){[id=featured-products]{padding:25px 0 65px}}[id=featured-products] a.cta{-webkit-transition:all .2s ease-out;transition:all .2s ease-out;padding:10px 52px;border:1px solid #fae6cd;border-radius:40px;text-decoration:none;display:inline-block}[id=featured-products] a.cta:hover{color:#fff;background:rgba(0,0,0,.1)}[id=featured-products] .products{max-width:290px;margin-left:auto;margin-right:auto}[id=featured-products] .products:after{content:" ";display:block;clear:both}@media (min-width:768px){[id=featured-products] .products{max-width:702px;margin-left:auto;margin-right:auto}[id=featured-products] .products:after{content:" ";display:block;clear:both}}[id=featured-products] .product{width:100%;float:left;margin-left:0;margin-right:0}@media (max-width:767px){[id=featured-products] .product{margin-bottom:65px}}@media (max-width:767px){[id=featured-products] .product:last-child{margin-bottom:35px}}@media (min-width:768px){[id=featured-products] .product{width:32.20339%;float:left;margin-right:1.69492%}[id=featured-products] .product:last-child{width:32.20339%;float:right;margin-right:0}}[id=featured-products] .product p{margin:10px 0 -5px}[id=featured-products] .product p.price{padding-top:0;margin-bottom:15px}[id=featured-products] .product figure{text-align:center;margin:0 auto 20px;height:175px;line-height:175px;width:280px}@media (min-width:768px){[id=featured-products] .product figure{width:220px}}[id=featured-products] .product figure img{max-width:100%;max-height:100%;vertical-align:bottom}@media (max-width:767px){[id=featured-products] .product[id=trackclip-pro] figure{height:225px;line-height:225px}}@media (min-width:768px){[id=featured-products] .product[id=trackclip-pro] figure img{height:140px}}[id=featured-products] .product[id=tir5] figure{width:210px}[id=featured-products] .product[id=tir5-pro-bundle] figure{width:280px}@media (min-width:768px){[id=featured-products] .product[id=tir5-pro-bundle] figure{margin-left:-29px}}body.trackir5 main{overflow:hidden}body.trackir5 section{max-width:290px;margin-left:auto;margin-right:auto}body.trackir5 section:after{content:" ";display:block;clear:both}@media (min-width:768px){body.trackir5 section{max-width:702px;margin-left:auto;margin-right:auto}body.trackir5 section:after{content:" ";display:block;clear:both}}body.trackir5 section.intro{text-align:center}body.trackir5 div.monitor{background-image:url(../images/trackir-5-for-monitor.png),url(../images/monitor-bezel.png),-webkit-radial-gradient(top,ellipse,#3b3b3b 0,#000 100%);background-image:url(../images/trackir-5-for-monitor.png),url(../images/monitor-bezel.png),radial-gradient(ellipse at top,#3b3b3b 0,#000 100%);background-repeat:no-repeat,repeat-x,no-repeat;background-position:50% 43px,0 265px,0 270px;background-size:370px,100% 65px,auto;padding-top:290px}@media (min-width:768px){body.trackir5 div.monitor{background-position:50% 44px,0 330px,0 344px;background-size:475px auto,100% 65px,auto auto;padding-top:390px}}body.trackir5 .sixdoF{text-align:center}body.trackir5 .sixdoF h2{margin-top:50px}@media (max-width:767px){body.trackir5 .sixdoF>h2 span{display:block}}body.trackir5 .sixdoF p{color:hsla(0,0%,100%,.5)}@media (min-width:768px){body.trackir5 .sixdoF p{width:66.10169%;float:left;margin-right:1.69492%;margin-left:16.94915%}}body.trackir5 .sixdoF div.heads{width:100%;float:left;margin-right:1.69492%;margin-bottom:45px;text-align:left}body.trackir5 .sixdoF div.heads .animation-spot{width:100px;margin:15px;display:inline-block;overflow:visible}@media (min-width:768px){body.trackir5 .sixdoF div.heads .animation-spot{width:15.25424%;float:left}body.trackir5 .sixdoF div.heads .animation-spot:nth-child(6n+1){margin-right:-100%;clear:both;margin-left:0}body.trackir5 .sixdoF div.heads .animation-spot:nth-child(6n+2){margin-left:16.94915%;margin-right:-100%;clear:none}body.trackir5 .sixdoF div.heads .animation-spot:nth-child(6n+3){margin-left:33.89831%;margin-right:-100%;clear:none}body.trackir5 .sixdoF div.heads .animation-spot:nth-child(6n+4){margin-left:50.84746%;margin-right:-100%;clear:none}body.trackir5 .sixdoF div.heads .animation-spot:nth-child(6n+5){margin-left:67.79661%;margin-right:-100%;clear:none}body.trackir5 .sixdoF div.heads .animation-spot:nth-child(6n+6){margin-left:84.74576%;margin-right:-100%;clear:none}}body.trackir5 .sixdoF div.heads .animation-spot.hover .sprite{visibility:visible;margin-top:-175px;-webkit-animation:c 2s steps(30) infinite;animation:c 2s steps(30) infinite;-webkit-transition-property:visibility;transition-property:visibility;-webkit-transition-duration:1s;transition-duration:1s}body.trackir5 .sixdoF div.heads .animation-spot.hover .ghost{opacity:0;-webkit-transition-property:opacity;transition-property:opacity;-webkit-transition-duration:1.5s;transition-duration:1.5s}body.trackir5 .sixdoF div.heads .animation-spot p{text-align:center;padding-left:25px;margin-top:-15px}body.trackir5 .sixdoF div.heads .animation-spot .sprite{width:100px;height:138px;margin:25px 15px;display:inline-block;margin-top:-175px;position:relative;background-position:0;-webkit-transform:scale(.82);transform:scale(.82)}body.trackir5 .sixdoF div.heads .animation-spot .ghost{background-position:50%;-webkit-transform:scale(1);transform:scale(1);width:120px;height:138px;margin:12px 15px 12px 5px;opacity:1;-webkit-transition-property:opacity;transition-property:opacity;-webkit-transition-duration:1s;transition-duration:1s}body.trackir5 .sixdoF div.heads .animation-spot .ghost.y{background-position:center 2px}body.trackir5 .sixdoF div.heads .animation-spot .ghost.pitch{background-position:center 0}body.trackir5 .sixdoF div.heads .animation-spot .z.ghost{-webkit-transform:scale(1.2);transform:scale(1.2)}body.trackir5 .sixdoF div.heads .animation-spot .yaw.sprite{background-image:url(../images/yaw-sprite.png)}body.trackir5 .sixdoF div.heads .animation-spot .yaw.ghost{background-image:url(../images/6dof-yaw.png);background-repeat:no-repeat}body.trackir5 .sixdoF div.heads .animation-spot .x.sprite{background-image:url(../images/x-sprite.png)}body.trackir5 .sixdoF div.heads .animation-spot .x.ghost{background-image:url(../images/6dof-x.png);background-repeat:no-repeat}body.trackir5 .sixdoF div.heads .animation-spot .pitch.sprite{background-image:url(../images/pitch-sprite.png)}body.trackir5 .sixdoF div.heads .animation-spot .pitch.ghost{background-image:url(../images/6dof-pitch.png);background-repeat:no-repeat}body.trackir5 .sixdoF div.heads .animation-spot .y.sprite{background-image:url(../images/y-sprite.png)}body.trackir5 .sixdoF div.heads .animation-spot .y.ghost{background-image:url(../images/6dof-y.png);background-repeat:no-repeat}body.trackir5 .sixdoF div.heads .animation-spot .roll.sprite{background-image:url(../images/roll-sprite.png)}body.trackir5 .sixdoF div.heads .animation-spot .roll.ghost{background-image:url(../images/6dof-roll.png);background-repeat:no-repeat}body.trackir5 .sixdoF div.heads .animation-spot .z.sprite{background-image:url(../images/z-sprite.png)}body.trackir5 .sixdoF div.heads .animation-spot .z.ghost{background-image:url(../images/6dof-z.png);background-repeat:no-repeat}body.trackir5 .sixdoF .sixdoF-videos{padding-top:40px;padding-bottom:40px;width:100%;float:left;margin-right:1.69492%}@media (min-width:768px){body.trackir5 .sixdoF .sixdoF-videos{padding-bottom:60px;border-top:1px solid hsla(0,0%,100%,.15)}}body.trackir5 .sixdoF .sixdoF-videos a{text-decoration:none;padding-bottom:35px}body.trackir5 .sixdoF .sixdoF-videos figure{-webkit-transform:scale(.88);transform:scale(.88);padding-bottom:35px}@media (min-width:768px){body.trackir5 .sixdoF .sixdoF-videos figure{display:inline-block;width:220px;-webkit-transform:scale(1);transform:scale(1)}}body.trackir5 .sixdoF .sixdoF-videos figure img{border-radius:10px;padding-bottom:15px}body.trackir5 .sixdoF .sixdoF-videos figure span:nth-child(1){display:block;font-weight:700}body.trackir5 .sixdoF .sixdoF-videos figure span:nth-child(2),body.trackir5 .sixdoF .sixdoF-videos figure span:nth-child(3){color:hsla(0,0%,100%,.35)}body.trackir5 .precise-tracking{margin-bottom:-5px;text-align:center}body.trackir5 .precise-tracking p{color:#fae6cd}@media (max-width:767px){body.trackir5 .precise-tracking p{margin-top:-20px;margin-bottom:80px}}@media (min-width:768px){body.trackir5 .precise-tracking p{margin:initial}}body.trackir5 .precise-tracking .precise-tracking-content{max-width:290px;margin-left:auto;margin-right:auto;padding-top:35px}body.trackir5 .precise-tracking .precise-tracking-content:after{content:" ";display:block;clear:both}@media (min-width:768px){body.trackir5 .precise-tracking .precise-tracking-content{max-width:702px;margin-left:auto;margin-right:auto}body.trackir5 .precise-tracking .precise-tracking-content:after{content:" ";display:block;clear:both}}@media (min-width:768px){body.trackir5 .precise-tracking .precise-tracking-content{padding-top:55px;height:500px}}body.trackir5 .precise-tracking .precise-tracking-content .precise-tracking-copy{margin-bottom:100px}@media (min-width:768px){body.trackir5 .precise-tracking .precise-tracking-content .precise-tracking-copy{text-align:left;width:500px;margin-bottom:0}}body.trackir5 .precise-tracking .precise-tracking-content .precise-tracking-copy .specs{margin-top:30px}body.trackir5 .precise-tracking .precise-tracking-content .precise-tracking-copy .spec{margin:70px auto}html.ie body.trackir5 .precise-tracking .precise-tracking-content .precise-tracking-copy .spec{margin-top:-70px}@media (min-width:768px){body.trackir5 .precise-tracking .precise-tracking-content .precise-tracking-copy .spec{width:250px;float:left;margin:5px auto}}@media (min-width:768px){body.trackir5 .precise-tracking .precise-tracking-content .precise-tracking-copy .spec h2{font-size:28px}}body.trackir5 .precise-tracking .precise-tracking-content .precise-tracking-copy .spec-title{margin-bottom:0}body.trackir5 .precise-tracking .precise-tracking-content .precise-tracking-copy .spec-title~p{color:#fae6cd;margin-top:-5px;text-transform:uppercase;font-size:13px;margin-bottom:0}body.trackir5 .precise-tracking .precise-tracking-image{max-width:none}body.trackir5 .precise-tracking .precise-tracking-image .trackir5-image{overflow:hidden;width:100%}@media (min-width:768px){body.trackir5 .precise-tracking .precise-tracking-image .trackir5-image{float:right;margin-top:-415px}}body.trackir5 .precise-tracking .precise-tracking-image .trackir5-image img{width:300px;height:auto;margin-left:-120px}@media (min-width:768px){body.trackir5 .precise-tracking .precise-tracking-image .trackir5-image img{float:left;left:50%;margin-left:150px;position:relative;width:500px}}body.trackir5 div.designed-for-gamers{padding:15px 0;background:#000;background-image:-webkit-gradient(linear,left bottom,left top,from(#4a4a4a),to(#161616));background-image:-webkit-linear-gradient(bottom,#4a4a4a,#161616);background-image:linear-gradient(0deg,#4a4a4a 0,#161616)}body.trackir5 div.designed-for-gamers .designed-for-gamers-content p{color:hsla(0,0%,100%,.5)}body.trackir5 div.designed-for-gamers .designed-for-gamers-content img{margin:25px 0 55px}@media (min-width:768px){body.trackir5 div.designed-for-gamers .designed-for-gamers-content img{width:83.05085%;float:left;margin-right:1.69492%;margin-left:-42.37288%;margin-bottom:-15px}}body.trackir5 div.designed-for-gamers .designed-for-gamers-content .designed-for-gamers-copy{text-align:center}@media (min-width:768px){body.trackir5 div.designed-for-gamers .designed-for-gamers-content .designed-for-gamers-copy{text-align:left;width:49.15254%;float:right;margin-right:0}}body.trackir5 section.fully-adjustable{padding-bottom:40px}@media (min-width:768px){body.trackir5 section.fully-adjustable{padding-top:80px;height:500px;padding-bottom:0}}body.trackir5 section.fully-adjustable img.tir-image{margin-top:40px;width:220px}@media (min-width:768px){body.trackir5 section.fully-adjustable img.tir-image{position:absolute;width:420px;margin-top:-60px;margin-left:-150px;left:60%}}body.trackir5 section.fully-adjustable div.fully-adjustable-copy{text-align:center}@media (min-width:768px){body.trackir5 section.fully-adjustable div.fully-adjustable-copy{width:57.62712%;float:left;margin-right:1.69492%;text-align:left}}@media (max-width:767px){body.trackir5 section.fully-adjustable div.fully-adjustable-copy p{margin-top:-20px}}body.trackir5 .tech-specs{padding-top:30px;padding-bottom:30px;background:rgba(0,0,0,.1)}body.trackir5 .tech-specs .tech-specs-content h2{text-align:center}@media (min-width:768px){body.trackir5 .tech-specs .tech-specs-content .tech-specs-images{width:32.20339%;float:left;margin-right:1.69492%}}body.trackir5 .tech-specs .tech-specs-content .tech-specs-images figure{text-align:center}@media (min-width:768px){body.trackir5 .tech-specs .tech-specs-content .tech-specs-images figure{margin-left:-50px}}body.trackir5 .tech-specs .tech-specs-content .tech-specs-images figure:first-child{margin-bottom:80px}@media (min-width:768px){body.trackir5 .tech-specs .tech-specs-content .tech-specs-images img{width:200px;margin-left:-100px;max-width:unset;position:-webkit-sticky;position:sticky;left:50%}}body.trackir5 .tech-specs .tech-specs-content .tech-specs-images figcaption{text-align:center;font-size:13px}@media (min-width:768px){body.trackir5 .tech-specs .tech-specs-content .tech-specs-copy{width:66.10169%;float:right;margin-right:0}}body.trackir5 .tech-specs .tech-specs-content .tech-specs-copy .specs{width:100%;float:left;margin-right:1.69492%}body.trackir5 .tech-specs .tech-specs-content .tech-specs-copy .specs div{width:100%;float:left;margin-right:1.69492%;margin-bottom:-23px}@media (min-width:768px){body.trackir5 .tech-specs .tech-specs-content .tech-specs-copy .specs div{margin-bottom:-15px}}body.trackir5 .tech-specs .tech-specs-content .tech-specs-copy .specs p:first-child{margin-bottom:-10px;margin-top:20px}@media (min-width:768px){body.trackir5 .tech-specs .tech-specs-content .tech-specs-copy .specs p:first-child{margin-bottom:14px;margin-top:14px;width:49.15254%;float:left}body.trackir5 .tech-specs .tech-specs-content .tech-specs-copy .specs p:first-child:nth-child(2n+1){margin-right:-100%;clear:both;margin-left:0}body.trackir5 .tech-specs .tech-specs-content .tech-specs-copy .specs p:first-child:nth-child(2n+2){margin-left:50.84746%;margin-right:-100%;clear:none}}body.trackir5 .tech-specs .tech-specs-content .tech-specs-copy .specs p:last-child{display:block;margin-top:10px}@media (min-width:768px){body.trackir5 .tech-specs .tech-specs-content .tech-specs-copy .specs p:last-child{display:inline-block;margin-top:12px;width:49.15254%;float:left}body.trackir5 .tech-specs .tech-specs-content .tech-specs-copy .specs p:last-child:nth-child(2n+1){margin-right:-100%;clear:both;margin-left:0}body.trackir5 .tech-specs .tech-specs-content .tech-specs-copy .specs p:last-child:nth-child(2n+2){margin-left:50.84746%;margin-right:-100%;clear:none}}body.trackir5 .tech-specs .tech-specs-content .tech-specs-copy .more-specs{width:100%;float:left;margin-right:1.69492%;margin-top:30px}@media (min-width:768px){body.trackir5 .tech-specs .tech-specs-content .tech-specs-copy .more-specs .in-box,body.trackir5 .tech-specs .tech-specs-content .tech-specs-copy .more-specs .sys-requirements{width:49.15254%;float:left}body.trackir5 .tech-specs .tech-specs-content .tech-specs-copy .more-specs .in-box:nth-child(2n+1),body.trackir5 .tech-specs .tech-specs-content .tech-specs-copy .more-specs .sys-requirements:nth-child(2n+1){margin-right:-100%;clear:both;margin-left:0}body.trackir5 .tech-specs .tech-specs-content .tech-specs-copy .more-specs .in-box:nth-child(2n+2),body.trackir5 .tech-specs .tech-specs-content .tech-specs-copy .more-specs .sys-requirements:nth-child(2n+2){margin-left:50.84746%;margin-right:-100%;clear:none}}body.trackir5 .tech-specs .tech-specs-content .tech-specs-copy .more-specs .in-box p,body.trackir5 .tech-specs .tech-specs-content .tech-specs-copy .more-specs .sys-requirements p{font-weight:700;color:#fff}body.trackir5 .tech-specs .tech-specs-content .tech-specs-copy .more-specs .in-box ul,body.trackir5 .tech-specs .tech-specs-content .tech-specs-copy .more-specs .sys-requirements ul{display:table;margin-left:0;padding-left:0;list-style:none}body.trackir5 .tech-specs .tech-specs-content .tech-specs-copy .more-specs .in-box ul li,body.trackir5 .tech-specs .tech-specs-content .tech-specs-copy .more-specs .sys-requirements ul li{display:table-row}body.trackir5 .tech-specs .tech-specs-content .tech-specs-copy .more-specs .in-box ul li:before,body.trackir5 .tech-specs .tech-specs-content .tech-specs-copy .more-specs .sys-requirements ul li:before{content:"•";display:table-cell;padding-right:.4em}body.trackir5 .tech-specs .tech-specs-content .tech-specs-copy .more-specs .in-box ul li,body.trackir5 .tech-specs .tech-specs-content .tech-specs-copy .more-specs .sys-requirements ul li{display:block;margin-bottom:8px}@media (min-width:768px){body.trackir5 .tech-specs .tech-specs-content .tech-specs-copy .more-specs .in-box ul li,body.trackir5 .tech-specs .tech-specs-content .tech-specs-copy .more-specs .sys-requirements ul li{margin-bottom:12px}}body.trackir5 .tech-specs .tech-specs-content .tech-specs-copy .more-specs .in-box ul li:before,body.trackir5 .tech-specs .tech-specs-content .tech-specs-copy .more-specs .sys-requirements ul li:before{content:none}body.trackir5 [id=featured-products]{background:transparent}@media (max-width:767px){body.accessories main h1{font-size:36px}}body.accessories main section{max-width:290px;margin-left:auto;margin-right:auto}body.accessories main section:after{content:" ";display:block;clear:both}@media (min-width:768px){body.accessories main section{max-width:702px;margin-left:auto;margin-right:auto}body.accessories main section:after{content:" ";display:block;clear:both}}body.accessories main section.intro{text-align:center;margin-top:35px}body.accessories main section.featured-items{padding-bottom:45px;margin-bottom:45px;border-bottom:1px solid hsla(0,0%,100%,.5)}body.accessories main section.featured-items .featured-item{width:100%;float:left;margin-left:0;margin-right:0}@media (max-width:767px){body.accessories main section.featured-items .featured-item:not(:first-child){margin-top:65px}}@media (min-width:768px){body.accessories main section.featured-items .featured-item[id=trackclippro] figure{margin:0;width:49.15254%;float:left;margin-right:1.69492%}}@media (min-width:768px){body.accessories main section.featured-items .featured-item[id=trackclippro] .copy{width:49.15254%;float:right;margin-right:0;margin-left:50.84746%;float:none}}body.accessories main section.featured-items .featured-item[id=trackclip]{margin-top:100px}@media (min-width:768px){body.accessories main section.featured-items .featured-item[id=trackclip] figure{width:49.15254%;float:left;margin-right:1.69492%;margin-left:50.84746%}}@media (min-width:768px){body.accessories main section.featured-items .featured-item[id=trackclip] .copy{width:49.15254%;float:left;margin-right:1.69492%;margin-left:-101.69492%}}body.accessories main section.featured-items .featured-item figure{text-align:center}@media (max-width:767px){body.accessories main section.featured-items .featured-item figure img{width:290px;max-width:none;position:relative;left:50%;margin-left:-210px}}@media (min-width:768px){body.accessories main section.featured-items .featured-item figure img{width:400px}}body.accessories main section.featured-items .featured-item div.copy{margin-top:35px}@media (min-width:768px){body.accessories main section.featured-items .featured-item div.copy{padding-right:15px}}body.accessories main section.featured-items .featured-item div.copy h3{display:inline}body.accessories main section.featured-items .featured-item div.copy p.price{margin-bottom:35px;display:inline;margin-left:20px}body.accessories main section.featured-items .featured-item div.copy ul{display:table;margin-left:0;padding-left:0;list-style:none}body.accessories main section.featured-items .featured-item div.copy ul li{display:table-row}body.accessories main section.featured-items .featured-item div.copy ul li:before{content:"•";display:table-cell;padding-right:.4em}body.accessories main section.featured-items .featured-item form{margin-top:55px}@media (max-width:767px){body.accessories main section.featured-items .featured-item form{text-align:center}}body.accessories main section.items{margin-bottom:55px;text-align:center}@media (min-width:768px){body.accessories main section.items{margin-bottom:75px}}body.accessories main section.items .item{width:100%;float:left;margin:15px 0}@media (min-width:768px){body.accessories main section.items .item{width:32.20339%;float:left;margin-right:1.69492%}body.accessories main section.items .item:nth-child(3n){width:32.20339%;float:right;margin-right:0}}body.accessories main section.items .item figure{height:150px;line-height:150px}body.accessories main section.items .item figure img{vertical-align:middle;width:150px}@media (min-width:768px){body.accessories main section.items .item figure img{vertical-align:bottom}}body.accessories main section.items .item h3{margin-bottom:5px}body.accessories main section.items .item p.price{margin-top:5px}body.accessories main section.items .item[id=tir5-base] figure{line-height:98px;height:98px}@media (min-width:768px){body.accessories main section.items .item[id=tir5-base] figure{height:150px;line-height:150px}}body.accessories main section.items .item[id=tir5-base] figure img{max-width:none;position:relative;left:50%;width:230px;margin-left:-208px}@media (min-width:768px){body.accessories main section.items .item[id=tir5-base] figure img{margin-left:-144px;width:230px}}body.games-list .intro{text-align:center;margin-top:35px;margin-bottom:35px}body.games-list .filter-and-sort{max-width:290px;margin-left:auto;margin-right:auto;text-align:center}body.games-list .filter-and-sort:after{content:" ";display:block;clear:both}@media (min-width:768px){body.games-list .filter-and-sort{max-width:702px;margin-left:auto;margin-right:auto}body.games-list .filter-and-sort:after{content:" ";display:block;clear:both}}body.games-list .filter-and-sort label.label-for-group{margin-top:45px;margin-bottom:20px;display:block}body.games-list .filter-and-sort div.radio-section input[type=radio]{display:none}body.games-list .filter-and-sort div.radio-section input[type=radio]:checked+label{background:hsla(0,0%,100%,.8);color:rgba(0,0,0,.9);color:#965b00}body.games-list .filter-and-sort div.radio-section label{-webkit-transition:all .2s ease-out;transition:all .2s ease-out;padding:10px 22px;border:1px solid #fae6cd;border-radius:40px;text-decoration:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;display:inline-block;width:90px;margin-bottom:15px}@media (min-width:768px){body.games-list .filter-and-sort div.radio-section label{margin-bottom:none}}body.games-list .filter-and-sort div.radio-section label:first-of-type{border-top-right-radius:0;border-bottom-right-radius:0;border-right:none;margin-right:-2px}body.games-list .filter-and-sort div.radio-section label:nth-of-type(2){border-radius:0;margin-left:-3px;margin-right:-3px}body.games-list .filter-and-sort div.radio-section label:last-of-type{border-top-left-radius:0;border-bottom-left-radius:0;border-left:none;margin-left:-2px}body.games-list .filter-and-sort div.radio-section label:hover{color:#fff;background:rgba(0,0,0,.1)}body.games-list .games-table{margin-bottom:70px}body.games-list .games-table .table-header{background-color:transparent;padding:25px 0}@media (max-width:767px){body.games-list .games-table .table-header{display:none}}@media (min-width:768px){body.games-list .games-table .table-header.fixed-header{position:fixed;width:100%;top:74px;background-color:rgba(247,146,0,.9);-webkit-transition:background-color .5s ease-in-out;transition:background-color .5s ease-in-out}}body.games-list .games-table .table-header .sort-by-section{display:inline-block}body.games-list .games-table .table-header .sort-by-section input[type=radio]{display:none}body.games-list .games-table .table-header .sort-by-section label{color:#fae6cd}body.games-list .games-table .table-header .sort-by-section label:first-of-type{margin-right:10px}body.games-list .games-table .table-header .sort-by-section label:not(:first-child){display:inline-block;padding:0 10px;border-radius:5px;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;text-decoration:none;background:rgba(0,0,0,.1)}body.games-list .games-table .table-header .sort-by-section label:nth-of-type(2){width:120px}body.games-list .games-table .table-header .sort-by-section label:last-of-type{width:135px}body.games-list .games-table .table-header .sort-by-section span.icon-down-open-big{display:inline-block;margin-right:-30px}body.games-list .games-table .table-header .sort-by-section span.icon-down-open-big.descending{-webkit-animation-name:e;animation-name:e;-webkit-animation-duration:.3s;animation-duration:.3s;-webkit-animation-fill-mode:forwards;animation-fill-mode:forwards}body.games-list .games-table .table-header .sort-by-section span.icon-down-open-big.ascending{-webkit-animation-name:d;animation-name:d;-webkit-animation-duration:.3s;animation-duration:.3s;-webkit-animation-fill-mode:forwards;animation-fill-mode:forwards}@-webkit-keyframes d{0%{-webkit-transform:rotateX(0deg);transform:rotateX(0deg)}to{-webkit-transform:rotateX(180deg);transform:rotateX(180deg)}}@keyframes d{0%{-webkit-transform:rotateX(0deg);transform:rotateX(0deg)}to{-webkit-transform:rotateX(180deg);transform:rotateX(180deg)}}@-webkit-keyframes e{0%{-webkit-transform:rotateX(180deg);transform:rotateX(180deg)}to{-webkit-transform:rotateX(0deg);transform:rotateX(0deg)}}@keyframes e{0%{-webkit-transform:rotateX(180deg);transform:rotateX(180deg)}to{-webkit-transform:rotateX(0deg);transform:rotateX(0deg)}}body.games-list .games-table .table-header p{float:right;margin-top:0;margin-bottom:0}body.games-list .games-table .table-header p span{display:inline-block;text-align:center;width:38px}@media (min-width:768px){body.games-list .games-table .table-header .table-header-content{max-width:290px;margin-left:auto;margin-right:auto}body.games-list .games-table .table-header .table-header-content:after{content:" ";display:block;clear:both}}@media (min-width:768px) and (min-width:768px){body.games-list .games-table .table-header .table-header-content{max-width:702px;margin-left:auto;margin-right:auto}body.games-list .games-table .table-header .table-header-content:after{content:" ";display:block;clear:both}}body.games-list .games-table table{max-width:290px;margin-left:auto;margin-right:auto;width:100%}body.games-list .games-table table:after{content:" ";display:block;clear:both}@media (min-width:768px){body.games-list .games-table table{max-width:702px;margin-left:auto;margin-right:auto}body.games-list .games-table table:after{content:" ";display:block;clear:both}}@media (min-width:768px){body.games-list .games-table .table-container.fixed-header{margin-top:73px}}body.games-list .games-table tr{border-bottom:1px solid hsla(0,0%,100%,.5)}body.games-list .games-table tr td{padding-top:10px;padding-bottom:10px}body.games-list .games-table tr td:first-child{width:442px}body.games-list .games-table tr td:not(:first-child){padding-left:15px}@media (max-width:767px){body.games-list .games-table tr td:not(:first-child){display:none}}body.games-list .games-table .filter tr{display:none}body.games-list .games-table .filter.driving tr.driving,body.games-list .games-table .filter.flight tr.flight,body.games-list .games-table .filter.fps tr.fps{display:table-row}body.remote-support main{max-width:290px;margin-left:auto;margin-right:auto;margin-bottom:45px}body.remote-support main:after{content:" ";display:block;clear:both}@media (min-width:768px){body.remote-support main{max-width:702px;margin-left:auto;margin-right:auto}body.remote-support main:after{content:" ";display:block;clear:both}}body.remote-support main section{text-align:center}@media (min-width:768px){body.remote-support main section.content{width:66.10169%;float:left;margin-right:1.69492%;margin-left:16.94915%}}body.remote-support main section.content a.cta{-webkit-transition:all .2s ease-out;transition:all .2s ease-out;padding:10px 52px;border:1px solid #fae6cd;border-radius:40px;text-decoration:none;position:relative;top:45px}body.remote-support main section.content a.cta:hover{color:#fff;background:rgba(0,0,0,.1)}body.promo main{max-width:290px;margin-left:auto;margin-right:auto;margin-top:25px}body.promo main:after{content:" ";display:block;clear:both}@media (min-width:768px){body.promo main{max-width:702px;margin-left:auto;margin-right:auto}body.promo main:after{content:" ";display:block;clear:both}}@media (min-width:768px){body.promo main h3,body.promo main p{text-align:center}}body.promo main ul{display:table;margin-left:0;padding-left:0;list-style:none;margin-bottom:45px}body.promo main ul li{display:table-row}body.promo main ul li:before{content:"•";display:table-cell;padding-right:.4em}@media (min-width:768px){body.promo main ul{margin-top:35px;margin-left:100px}}body.promo main .action-link{text-align:center}body.promo main .action-link a{-webkit-transition:all .2s ease-out;transition:all .2s ease-out;padding:10px 52px;border:1px solid #fae6cd;border-radius:40px;text-decoration:none}body.promo main .action-link a:hover{color:#fff;background:rgba(0,0,0,.1)}body.media [id=content].blur{-webkit-filter:blur(5px);filter:blur(5px)}body.media .modal{display:none;position:fixed;z-index:1;padding-top:60px;left:0;top:0;width:100%;height:100%;overflow:auto;background-color:#000;background-color:rgba(0,0,0,.4)}@media (min-width:768px){body.media .modal{padding-top:75px}}body.media .modal .modal-content{background-color:rgba(0,0,0,.75);margin:auto;padding:20px;width:100%;height:100%}@media (min-width:768px){body.media .modal .modal-content{width:80%;border-radius:3px;text-align:left;max-width:600px;height:auto}}body.media .modal .modal-content h3{margin-bottom:20px}body.media .modal .modal-content .download{margin-top:10px;margin-bottom:20px}body.media .modal .close{color:#aaa;float:right;font-size:28px;font-weight:700}body.media .modal .close:focus,body.media .modal .close:hover{color:#ccc;text-decoration:none;cursor:pointer}body.media main{max-width:290px;margin-left:auto;margin-right:auto;margin-bottom:45px}body.media main:after{content:" ";display:block;clear:both}@media (min-width:768px){body.media main{max-width:702px;margin-left:auto;margin-right:auto}body.media main:after{content:" ";display:block;clear:both}}body.media main section{margin-bottom:90px;text-align:center}body.media main section ul{display:table;margin-left:0;padding-left:0;list-style:none}body.media main section ul li{display:table-row}body.media main section ul li:before{content:"•";display:table-cell;padding-right:.4em}body.media main section a{cursor:pointer}body.media main section a.cta{-webkit-transition:all .2s ease-out;transition:all .2s ease-out;padding:10px 52px;border:1px solid #fae6cd;border-radius:40px;text-decoration:none;display:inline-block}body.media main section a.cta:hover{color:#fff;background:rgba(0,0,0,.1)}@media (min-width:768px){body.media main section a.cta{margin-top:30px}}body.media .image-downloads{overflow:auto}body.media .image-downloads a{padding-bottom:30px}body.media .image-downloads img{padding:20px 0 10px}body.media section[id=trackir-5] .image-downloads .modalBtn{width:44.44444%;float:left}body.media section[id=trackir-5] .image-downloads .modalBtn:nth-child(2n+1){margin-right:-100%;clear:both;margin-left:0}body.media section[id=trackir-5] .image-downloads .modalBtn:nth-child(2n+2){margin-left:55.55556%;margin-right:-100%;clear:none}@media (min-width:768px){body.media section[id=trackir-5] .image-downloads .modalBtn{width:28.57143%;float:left}body.media section[id=trackir-5] .image-downloads .modalBtn:nth-child(3n+1){margin-right:-100%;clear:both;margin-left:0}body.media section[id=trackir-5] .image-downloads .modalBtn:nth-child(3n+2){margin-left:35.71429%;margin-right:-100%;clear:none}body.media section[id=trackir-5] .image-downloads .modalBtn:nth-child(3n+3){margin-left:71.42857%;margin-right:-100%;clear:none}}@media (min-width:768px){body.media section[id=trackclip-pro] .image-downloads{max-width:400px;margin-left:auto;margin-right:auto}body.media section[id=trackclip-pro] .image-downloads:after{content:" ";display:block;clear:both}}body.media section[id=trackclip-pro] .image-downloads .modalBtn{width:44.44444%;float:left}body.media section[id=trackclip-pro] .image-downloads .modalBtn:nth-child(2n+1){margin-right:-100%;clear:both;margin-left:0}body.media section[id=trackclip-pro] .image-downloads .modalBtn:nth-child(2n+2){margin-left:55.55556%;margin-right:-100%;clear:none}body.media section[id=trackclip] .image-downloads .modalBtn{width:100%;float:left}body.media section[id=trackclip] .image-downloads .modalBtn:nth-child(1n+1){margin-left:0;margin-right:-100%;clear:none}@media (min-width:768px){body.media section[id=hats] .image-downloads{max-width:400px;margin-left:auto;margin-right:auto}body.media section[id=hats] .image-downloads:after{content:" ";display:block;clear:both}}body.media section[id=hats] .image-downloads .modalBtn{width:44.44444%;float:left}body.media section[id=hats] .image-downloads .modalBtn:nth-child(2n+1){margin-right:-100%;clear:both;margin-left:0}body.media section[id=hats] .image-downloads .modalBtn:nth-child(2n+2){margin-left:55.55556%;margin-right:-100%;clear:none}@media (min-width:768px){body.media section[id=visors] .image-downloads{max-width:400px;margin-left:auto;margin-right:auto}body.media section[id=visors] .image-downloads:after{content:" ";display:block;clear:both}}body.media section[id=visors] .image-downloads .modalBtn{width:44.44444%;float:left}body.media section[id=visors] .image-downloads .modalBtn:nth-child(2n+1){margin-right:-100%;clear:both;margin-left:0}body.media section[id=visors] .image-downloads .modalBtn:nth-child(2n+2){margin-left:55.55556%;margin-right:-100%;clear:none}
/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIl9mb250cy5zY3NzIiwiX25vcm1hbGl6ZS5zY3NzIiwibWFpbi5jc3MiLCJfdHlwb2dyYXBoeS5zY3NzIiwiLi4vLi4vc3RkaW4iLCJfY29tbW9uLnNjc3MiLCJ2ZW5kb3IvX2JyZWFrcG9pbnQuc2NzcyIsImhlbHBlcnMvX2J1dHRvbnMuc2NzcyIsIl9oZWFkZXIuc2NzcyIsInZlbmRvci9zdXN5L291dHB1dC9zdXBwb3J0L19yZW0uc2NzcyIsImhlbHBlcnMvX2NvbnRhaW5lci5zY3NzIiwidmVuZG9yL3N1c3kvbGFuZ3VhZ2Uvc3VzeS9fY29udGFpbmVyLnNjc3MiLCJ2ZW5kb3Ivc3VzeS9vdXRwdXQvc3VwcG9ydC9fY2xlYXJmaXguc2NzcyIsInZlbmRvci9zdXN5L2xhbmd1YWdlL3N1c3kvX3NwYW4uc2NzcyIsImhlbHBlcnMvX2hpZGUuc2NzcyIsIl9mb290ZXIuc2NzcyIsInBhZ2VzL19pbmRleC5zY3NzIiwidmVuZG9yL3N1c3kvb3V0cHV0L3NoYXJlZC9fZGlyZWN0aW9uLnNjc3MiLCJ2ZW5kb3Ivc3VzeS9sYW5ndWFnZS9zdXN5L19ndXR0ZXJzLnNjc3MiLCJ2ZW5kb3Ivc3VzeS9sYW5ndWFnZS9zdXN5L19tYXJnaW5zLnNjc3MiLCJ2ZW5kb3Ivc3VzeS9sYW5ndWFnZS9zdXN5L19nYWxsZXJ5LnNjc3MiLCJ2ZW5kb3Ivc3VzeS9sYW5ndWFnZS9zdXN5L19yb3dzLnNjc3MiLCJ2ZW5kb3Ivc3VzeS9vdXRwdXQvZmxvYXQvX2VuZC5zY3NzIiwicGFnZXMvX2NhcnQtYW5kLWNoZWNrb3V0LnNjc3MiLCJoZWxwZXJzL19ib3JkZXJzLnNjc3MiLCJwYWdlcy9fYWJvdXQuc2NzcyIsInBhZ2VzL19wb2xpY3kuc2NzcyIsImhlbHBlcnMvX2xpc3RzLnNjc3MiLCJwYWdlcy9fd2FycmFudHktYW5kLXRlcm1zLnNjc3MiLCJwYWdlcy9fcHJvZHVjdHMuc2NzcyIsInBhZ2VzL19oZWxwLnNjc3MiLCJwYXJ0aWFscy9faGVhZGluZ3Muc2NzcyIsInBhZ2VzL180MDQuc2NzcyIsInBhZ2VzL19kZXZlbG9wZXJzLnNjc3MiLCJwYWdlcy9fZGVhbGVycy5zY3NzIiwicGFydGlhbHMvX2NoYW5nZWxvZ3Muc2NzcyIsInBhZ2VzL19kb3dubG9hZHMuc2NzcyIsInBhZ2VzL190cmFja2lyNS5zY3NzIiwicGFydGlhbHMvX2ZlYXR1cmVkLXByb2R1Y3RzLnNjc3MiLCJwYWdlcy9fYWNjZXNzb3JpZXMuc2NzcyIsInBhZ2VzL19nYW1lcy1saXN0LnNjc3MiLCJwYWdlcy9fcmVtb3RlLXN1cHBvcnQuc2NzcyIsInBhZ2VzL19wcm9tby5zY3NzIiwicGFnZXMvX21lZGlhLnNjc3MiLCJ2ZW5kb3Ivc3VzeS9sYW5ndWFnZS9zdXN5L19pc29sYXRlLnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBeUVBLGlCQUQyQjtBQ3hFM0IsNEVBQTRFLEFBUTVFLEtBQ0ksdUJBQXdCLEFBQ3hCLDBCQUEyQixBQUMzQiw2QkFBK0IsQ0FDbEMsQUFNRCxLQUNJLFFBQVUsQ0FDYixBQVlELDJGQWFJLGFBQWUsQ0FDbEIsQUFPRCw0QkFJSSxxQkFBc0IsQUFDdEIsdUJBQXlCLENBQzVCLEFBT0Qsc0JBQ0ksYUFBYyxBQUNkLFFBQVUsQ0FDYixBQ0FELGtCRFNJLFlBQWMsQ0FDakIsQUFTRCxFQUNJLDRCQUE4QixDQUNqQyxBQU9ELGlCQUVJLFNBQVcsQ0FDZCxBQVNELFlBQ0ksd0JBQTBCLENBQzdCLEFBTUQsU0FFSSxlQUFrQixDQUNyQixBQU1ELElBQ0ksaUJBQW1CLENBQ3RCLEFBT0QsR0FDSSxjQUFlLEFBQ2YsY0FBaUIsQ0FDcEIsQUFNRCxLQUNJLGdCQUFpQixBQUNqQixVQUFZLENBQ2YsQUFNRCxNQUNJLGFBQWUsQ0FDbEIsQUFNRCxRQUVJLGNBQWUsQUFDZixjQUFlLEFBQ2Ysa0JBQW1CLEFBQ25CLHVCQUF5QixDQUM1QixBQUVELElBQ0ksU0FBWSxDQUNmLEFBRUQsSUFDSSxhQUFnQixDQUNuQixBQVNELElBQ0ksUUFBVSxDQUNiLEFBTUQsZUFDSSxlQUFpQixDQUNw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cEMsa0JFcURtRSxBS0MvRCxZQUFjLENBc0NqQixBQTdHTCxtQ0pVTSxZQUFhLEFBQ2IsY0FBZSxBQUNmLFVBQVksQ0FDYixBTmlERCx5QlU5REosNkJQaUJJLGdCQ2Y0QixBRGU1QixpQkVxRG9DLEFGckRwQyxpQkVxRG1FLENLdUNsRSxBQTdHTCxtQ0pVTSxZQUFhLEFBQ2IsY0FBZSxBQUNmLFVBQVksQ0FDYixDQUFBLEFOaURELHlCVTlESiw2QkEwRVksWUFBYyxDQW1DckIsQ0FBQSxBVi9DRCx5QlU5REosOENBOEVnQixZQUFjLENBRXJCLENBQUEsQVZsQkwseUJVOURKLHdGQXFGZ0IsWUFBYyxDQUVyQixDQUFBLEFBdkZULCtCUGlCSSxpQkl3SW9CLEFKeElwQixXUUE0RCxBUkE1RCxzQlM0RHdCLEFUNUR4QixzQlV5Q3VELENIdUNsRCxBVm5DTCx5QlU5REosK0JQaUJJLGlCSXdJb0IsQUp4SXBCLFdRQTRELEFSQTVELHNCUzREd0IsQVQ1RHhCLHFCVXlDdUQsQ0h1Q2xELENBQUEsQVZuQ0wseUJVOURKLGlDQW9HZ0IscUJBQXNCLEFBQ3RCLFdBQWEsQ0FFcEIsQ0FBQSxBQXZHVCxtQ0F5R1ksbUJBQW9CLEFBQ3BCLGlCQUFrQixBQUNsQixXQUFhLENBQ2hCLEFBNUdULHlCUGlCSSxnQkNsQndCLEFEa0J4QixpQkVxRG9DLEFGckRwQyxrQkVxRG1FLEFLMkMvRCxrQkFBb0IsQ0FldkIsQUFoSUwsK0JKVU0sWUFBYSxBQUNiLGNBQWUsQUFDZixVQUFZLENBQ2IsQU5pREQseUJVOURKLHlCUGlCSSxnQkNmNEIsQURlNUIsaUJFcURvQyxBRnJEcEMsaUJFcURtRSxDSzBEbEUsQUFoSUwsK0JKVU0sWUFBYSxBQUNiLGNBQWUsQUFDZixVQUFZLENBQ2IsQ0FBQSxBTmlERCx5QlU5REoseUNQaUJJLGdCSXdJb0IsQUp4SXBCLFdRQTRELEFSQTVELHNCUzREd0IsQVQ1RHhCLG9CSXdJb0IsQ0cxQmYsQ0FBQSxBQS9IVCwrQ0F3SGdCLGVBQWlCLENBQ3BCLEFBekhiLGlFQTRIb0IsV0FBYSxDQUNoQixBQTdIakIsaUNBbUlRLHlCQUFnQixDQUNuQixBQXBJTCxrQ1BpQkksZ0JDbEJ3QixBRGtCeEIsZ0JFcURvQyxDS3FHbkMsQUEzS0wsd0NKVU0sWUFBYSxBQUNiLGNBQWUsQUFDZixVQUFZLENBQ2IsQU5pREQseUJVOURKLGtDUGlCSSxnQkNmNEIsQURlNUIsaUJFcURvQyxBRnJEcEMsaUJFcURtRSxDS3FHbEUsQUEzS0wsd0NKVU0sWUFBYSxBQUNiLGNBQWUsQUFDZixVQUFZLENBQ2IsQ0FBQSxBTmlERCx5QlU5REosa0NBMklZLGVBQWlCLENBZ0N4QixDQUFBLEFBM0tMLHlEQThJWSxnQkFBaUIsQUFDakIsVUFBWSxDQUNmLEFBaEpULCtDUGlCSSxXSXdJb0IsQUp4SXBCLFdRQTRELEFSQTVELGNJK0VxQixBSi9FckIsZUlrRm9CLEFHZ0RaLGtCQUFvQixDQUl2QixBVnpGTCx5QlU5REosK0NQaUJJLGdCSXdJb0IsQUp4SXBCLFVRQTRELENEc0l2RCxBQXZKVCwrRFBpQkksbUJXb0Q2QixBWHBEN0IsV1laMEIsQVpZMUIsYWFnQitCLENGd0Q5QixBSnpGTCwrRFBpQkksc0JJd0lvQixBSnhJcEIsbUJXb0Q2QixBWHBEN0IsVVlKMEIsQ0Q0RXpCLENBQUEsQUp6Rkwsc0NQaUJJLFdZWjBCLEFaWTFCLGdCSXdJb0IsQUp4SXBCLFdRQTRELEFSQTVELHNCUzREd0IsQUY2RWhCLFVBQVksQ0FDZixBQTNKVCx5Q0E2SlksZUFBZ0IsQUFDaEIsYUFBZ0IsQVA3SXhCLGdCSXdJb0IsQUp4SXBCLFlRQXVFLEFSQXZFLGVJa0ZvQixBRzZEWixlQUFpQixDQVVwQixBQTFLVCwyQ0FrS2dCLGdCQUFrQixDQUNyQixBQW5LYixpREFxS2dCLGdCQUFrQixBQUNsQixnQkFBaUIsQUFDakIsZ0JBQW1CLEFBQ25CLFVaN0pXLENZOEpkLEFBektiLDhCQTZLUSxtQ0FBb0MsQUFDcEMsNENaL0prQixBWWdLbEIsb0JBQXFCLEFBQ3JCLGdCQUFrQixDQXNDckIsQVZ4SkQseUJVOURKLDhCQWtMWSxpQkFBbUIsQ0FvQzFCLENB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LEFHUnBCLG1CSG1Cc0IsQUdsQnRCLHFCQUFzQixBdUJGbEIsb0JBQXNCLENBQ3pCLEFBSkwsc0J2QlFRLFdIS21CLEFHSm5CLHlCSFdpQixDR1ZwQixBdUJWTCxnR3JCbUJJLGdCQ2xCd0IsQURrQnhCLGlCRXFEb0MsQUZyRHBDLGtCRXFEbUUsQW1CL0QvRCxpQkFBbUIsQ0FJdEIsQUFiTCxrSGxCWU0sWUFBYSxBQUNiLGNBQWUsQUFDZixVQUFZLENBQ2IsQU5pREQseUJ3QmhFSixnR3JCbUJJLGdCQ2Y0QixBRGU1QixpQkVxRG9DLEFGckRwQyxpQkVxRG1FLENtQjNEbEUsQUFiTCxrSGxCWU0sWUFBYSxBQUNiLGNBQWUsQUFDZixVQUFZLENBQ2IsQ0FBQSxBa0JmTCxpSUFXWSxrQkFBb0IsQ0FDdkIsQUFaVCxtQ3JCbUJJLFdJd0lvQixBSnhJcEIsV1FBNEQsQVJBNUQsY0krRXFCLEFKL0VyQixjSWtGb0IsQ2lCekVmLEF4Qm9DTCx5QndCaEVKLG1DckJtQkksZ0JJd0lvQixBSnhJcEIsV1FBNEQsQVJBNUQscUJTNER3QixDWW5EbkIsQUE1QlQsOENyQm1CSSxnQkl3SW9CLEFKeElwQixZUUF1RSxBUkF2RSxjSWtGb0IsQ2lCaEZQLEFBckJqQix5Q0F1Qm9CLFlBQWEsQUFDYixpQkFBa0IsQUFDbEIsZ0JBQWtCLENBQ3JCLENBQUEsQUExQmpCLHNDckJtQkksV0l3SW9CLEFKeElwQixXUUE0RCxBUkE1RCxjSStFcUIsQUovRXJCLGNJa0ZvQixDaUI3RGYsQXhCd0JMLHlCd0JoRUosc0NyQm1CSSxnQkl3SW9CLEFKeElwQixXUUE0RCxBUkE1RCxzQlM0RHdCLEFZNUNaLGtCQUFvQixDQUszQixBQXhDVCxzRHJCbUJJLGdCSXdJb0IsQUp4SXBCLFlRQXVFLEFSQXZFLGNJa0ZvQixDaUIvRFAsQ0FBQSxBQXRDakIsOElyQm1CSSxXSXdJb0IsQUp4SXBCLFdRQTRELEFSQTVELGNJK0VxQixBSi9FckIsY0lrRm9CLENpQnREZixBQS9DVCx1RUFpRFksa0JBQW9CLENBQ3ZCLEF4QmNMLHlCd0JoRUosdURB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bUUsQ3FCcERsRSxBQXBCTCx3Q3BCWU0sWUFBYSxBQUNiLGNBQWUsQUFDZixVQUFZLENBQ2IsQ0FBQSxBb0JmTCxxQ0FNWSxnQkFBaUIsQUFDakIsZUFBaUIsQ0FJcEIsQTFCcURMLHlCMEJoRUoscUNBU2dCLGdCQUFrQixDQUV6QixDQUFBLEFBWFQscUNBYVksY0FBZ0IsQ0FDbkIsQUFkVCx3Q3pCQ0ksb0NIS2tDLEFHTGxDLDRCSEtrQyxBR0psQyxrQkFBbUIsQUFDbkIseUJIU29CLEFHUnBCLG1CSG1Cc0IsQUdsQnRCLHFCQUFzQixBeUJZZCxxQkFBc0IsQUFDdEIsZUFBaUIsQ0FDcEIsQUFuQlQsOEN6QlFRLFdIS21CLEFHSm5CLHlCSFdpQixDR1ZwQixBMEJWTCwyQjFCQ0ksb0NIS2tDLEFHTGxDLDRCSEtrQyxBR0psQyxrQkFBbUIsQUFDbkIseUJIU29CLEFHUnBCLG1CSG1Cc0IsQUdsQnRCLHFCQUFzQixBMEJEZCxvQkFBc0IsQ0FDekIsQUFMVCxpQzFCUVEsV0hLbUIsQUdKbkIseUJIV2lCLENHVnBCLEEwQlZMLDZCeEJtQkksZ0JDbEJ3QixBRGtCeEIsaUJFcURvQyxBRnJEcEMsa0JFcURtRSxBc0JoRTNELGtCQUFtQixBQUNuQixtQkFBb0IsQUFDcEIsbUJBQXFCLENBS3hCLEFBZlQsbUNyQllNLFlBQWEsQUFDYixjQUFlLEFBQ2YsVUFBWSxDQUNiLEFOaURELHlCMkJoRUosNkJ4Qm1CSSxnQkNmNEIsQURlNUIsaUJFcURvQyxBRnJEcEMsaUJFcURtRSxDc0J6RDlELEFBZlQsbUNyQllNLFlBQWEsQUFDYixjQUFlLEFBQ2YsVUFBWSxDQUNiLENBQUEsQU5pREQseUIyQmhFSiw2QkFZZ0Isb0JBQXFCLEFBQ3JCLGtCQUFvQixDQUUzQixDQUFBLEFBZlQsbUNUQ0ksMENBQTZCLENTOEJ4QixBQS9CVCw2RXhCbUJJLFdJd0lvQixBSnhJcEIsV1FBNEQsQVJBNUQsY0krRXFCLEFKL0VyQixjSWtGb0IsQ29CakZYLEFBcEJiLHVDQXNCZ0IsZUFBaUIsQ0FPcEIsQTNCbUNULHlCMkJoRUosdUN4Qm1CSSxnQkl3SW9CLEFKeElwQixXUUE0RCxBUkE1RCxxQlM0RHdCLENlbERmLEFBN0JiLGtEeEJtQkksZ0JJd0lvQixBSnhJcEIsWVFBdUUsQVJBdkUsY0lrRm9CLENvQjFFSCxDQUFBLEFBM0JyQiwyQ1RDSSwwQ0FBNkIsQ1MyQ3hCLEFBNUNULDhDQWtDZ0IsZUFBZ0IsQUFDaEIsbUJBQXFCLENBSXhCLEEzQnlCVCx5QjJCaEVKLDhDQXFDb0IsY0FBZ0IsQ0FFdkIsQ0FBQSxBQXZDYix1REF5Q2dCLG9CQUFzQixDQUN6QixBQTFDYixnREErQ2dCLG1CQUFxQixDQUN4QixBQWhEYixtREFtRGdCLGVBQWlCLENBQ3BCLEFDcERiLGtCQUVRLGdEQUFxQixBQUNyQiw0QkFBNkIsQUFDN0IsNkJBQThCLEFBQzlCLDRCQUE2QixBQUM3QixjQUFnQixDQXFEbkIsQTVCS0QseUI0QmhFSixrQkFRWSw2QkFBOEIsQUFDOUIsMkJBQTZCLENBa0RwQyxDQUFBLEFBM0RMLDBCekJtQkksZ0JDbEJ3QixBRGtCeEIsaUJFcURvQyxBRnJEcEMsaUJFcURtRSxDdUIzRDlELEFBYlQsZ0N0QllNLFlBQWEsQUFDYixjQUFlLEFBQ2YsVUFBWSxDQUNiLEFOaURELHlCNEJoRUosMEJ6Qm1CSSxnQkNmNEIsQURlNUIsaUJFcURvQyxBRnJEcEMsaUJFcURtRSxDdUIzRDlELEFBYlQsZ0N0QllNLFlBQWEsQUFDYixjQUFlLEFBQ2YsVUFBWSxDQUNiLENBQUEsQXNCZkwsZ0NBZVksaUJBQW1CLENBQ3RCLEE1QmdETCx5QjRCaEVKLHlFQXFCb0IsZUFBZ0IsQUFDaEIsZ0JBQWtCLENBRXpCLENBQUEsQUF4QmIseUVBMEJnQixnQkFBaUIsQUFDakIsbUJBQW9CLEFBQ3BCLGlCQUFtQixDQXVCdEIsQTVCYVQseUI0QmhFSix5RXpCbUJJLGdCSXdJb0IsQUp4SXBCLFdRQTRELEFpQlk1QyxXQUFhLENBb0JwQixBQW5EYix5R3pCbUJJLG1CV29ENkIsQVhwRDdCLFdZWjBCLEFaWTFCLGFhZ0IrQixDRndEOUIsQWMzRkwseUd6Qm1CSSxzQkl3SW9CLEFKeElwQixtQldvRDZCLEFYcEQ3QixVWUowQixDRDRFekIsQWMzRkwseUd6Qm1CSSxzQkl3SW9CLEFKeElwQixtQldvRDZCLEFYcEQ3QixVWUowQixDRDRFekIsQ0FBQSxBYzNGTCxtRkFrQ29CLGNBQWUsQUFDZixpQkFBbUIsQ0FldEIsQUFsRGpCLDJHQXFDd0IsZ0JBQWlCLEFBQ2pCLGVBQWdCLEFBQ2hCLGlCQUFtQixDQUN0QixBQXhDckIsaUhBMEN3QixlQUFnQixBQUNoQixlQUFnQixBQUNoQixnQkFBa0IsQ0FDckIsQUE3Q3JCLHVGQStDd0IscUJBQXNCLEFBQ3RCLGE5QnBDQSxDOEJxQ0gsQUFqRHJCLHVDSENJLGlCQUFtQixDR3dEVixBNUJPVCx5QjRCaEVKLHVDSE1RLGdCQUFrQixDR21EYixDQUFBLEE1Qk9ULHlCNEJoRUosMkZIV1ksV0FBWSxBQUNaLDJDQUE2QixBQUM3QixZQVZrQixBQVdsQixlQUFpQixDQU94QixDQUFBLEF6QjJDRCx5QjRCaEVKLDhDSHdCWSxVQUFZLENBRW5CLENBQUEsQXpCc0NELHlCNEJoRUosNkNINkJZLFdBQWEsQ0FFcEIsQ0FBQSxBSS9CTCx3QjFCbUJJLGdCQ2xCd0IsQURrQnhCLGlCRXFEb0MsQUZyRHBDLGlCRXFEbUUsQ3dCckVsRSxBQUhMLDhCdkJZTSxZQUFhLEFBQ2IsY0FBZSxBQUNmLFVBQVksQ0FDYixBTmlERCx5QjZCaEVKLHdCMUJtQkksZ0JDZjRCLEFEZTVCLGlCRXFEb0MsQUZyRHBDLGlCRXFEbUUsQ3dCckVsRSxBQUhMLDhCdkJZTSxZQUFhLEFBQ2IsY0FBZSxBQUNmLFVBQVksQ0FDYixDQUFBLEF1QmZMLDJCQUtRLGlCQUFtQixDQUN0QixBakNndEVMLGdCT25zRUksZ0JDbEJ3QixBRGtCeEIsZ0JFcURvQyxDd0JldkMsQWpDcW9FQyxzQlVodEVJLFlBQWEsQUFDYixjQUFlLEFBQ2YsVUFBWSxDQUNiLEFOaURELHlCSmlxRUEsZ0JPOXNFQSxnQkNmNEIsQURlNUIsaUJFcURvQyxBRnJEcEMsaUJFcURtRSxDd0JldEUsQWpDOG9FSyxzQlV6dEVBLFlBQWEsQUFDYixjQUFlLEFBQ2YsVUFBWSxDQUNiLENBQUEsQVYwdEVILDJCT3R0RUUsZUV1Q2UsQUZ2Q2YsaUJFcURvQyxBRnJEcEMsa0JFcURtRSxBd0IxRC9ELG1CQUFxQixDQU94QixBakN5dEVELGlDVWx1RUUsWUFBYSxBQUNiLGNBQWUsQUFDZixVQUFZLENBQ2IsQVZtdUVELDRDc0JqdkVBLDBDQUE2QixDV2dCeEIsQTdCK0NMLHlCSnFyRUUsMkJpQ2x1RU0sZ0JBQWtCLENBRXpCLENBQUEsQWpDa3VFSCxpQ09wdUVFLGVFdUNlLEFGdkNmLGlCRXFEb0MsQUZyRHBDLGlCRXFEbUUsQ3dCN0NsRSxBakNndUVELHVDVS91RUUsWUFBYSxBQUNiLGNBQWUsQUFDZixVQUFZLENBQ2IsQVZndkVELDhDaUN0dUVRLFVBQVksQ0FDZixBN0JzQ0wseUJKa3NFQSx5QmlDcHVFUSxVQUFZLENBRW5CLENBQUEsQWpDb3VFSCx1Q2lDanVFVSxlQUFnQixBMUJoQnhCLGdCSXdJb0IsQUp4SXBCLFVRQTRELENrQnFCdkQsQWpDZ3VFTCxtRGlDbHVFWSxVQUFZLENBQ2YsQWpDbXVFWCxrQ2lDL3RFTSxXQUFZLEFBQ1osaUNBQWlCLEFBQWpCLHlCQUFpQixBQUNqQixnQ0FBeUIsQUFBekIsd0JBQXlCLEFBQ3pCLGVBQWlCLENBSXBCLEFqQzZ0RUQsdUNpQy90RVEsK0JBQWlCLEFBQWpCLHNCQUFpQixDQUNwQixBakNndUVQLG1CaUM3dEVNLGtCQUFvQixDQUl2QixBakMydEVELHFCaUM3dEVRLG9CQUFzQixDQUN6QixBakM4dEVQLGtCaUMzdEVNLGNBQWdCLENBQ25CLEFqQzR0RUgsa0NpQzF0RU0saUJBQW1CLENBQ3RCLEFqQzJ0RUgsc0JLeHhFRSxvQ0hLa0MsQUdMbEMsNEJIS2tDLEFHSmxDLGtCQUFtQixBQUNuQix5QkhTb0IsQUdScEIsbUJIbUJzQixBR2xCdEIscUJBQXNCLEE0QjREbEIscUJBQXNCLEFBQ3RCLFdBQWEsQ0FZaEIsQWpDbXRFRCw0Qkt6eEVJLFdIS21CLEFHSm5CLHlCSFdpQixDR1ZwQixBRHNERCx5QkpxdUVFLHNCaUNqdUVNLFlBQWEsQUFDYixlQUFpQixDQVN4QixDQUFBLEFqQzB0RUQsb0NpQ2h1RVEsZUFBaUIsQ0FLcEIsQTdCYkwseUJKMnVFSSxvQ2lDanVFUSxnQkFBaUIsQUFDakIsaUJBQW1CLENBRTFCLENBQUEsQWpDaXVFUCx5QmlDOXRFTSxhQUFjLEFBQ2QsZUFBZ0IsQTFCOURwQixlRXVDZSxBRnZDZixpQkVxRG9DLEFGckRwQyxpQkVxRG1FLEN3QmNsRSxBakM4dEVELCtCVXh5RUUsWUFBYSxBQUNiLGNBQWUsQUFDZixVQUFZLENBQ2IsQVZ5eUVELDRCeUIveUVBLGNBQWUsQUFDZixjQUFlLEFBQ2YsZUFBZ0IsQUFDaEIsZUFBaUIsQ1F5RVosQWpDd3VFSCwrQnlCL3lFRSxpQkFBbUIsQ0FNdEIsQXpCMnlFRyxzQ3lCL3lFSSxZQUFTLEFBQ1QsbUJBQW9CLEFBQ3BCLGtCQUFxQixDQUN4QixBU2RULHVCM0JjSSxnQkNsQndCLEFEa0J4QixpQkVxRG9DLEFGckRwQyxpQkVxRG1FLEN5QnhEbEUsQUFYTCw2QnhCT00sWUFBYSxBQUNiLGNBQWUsQUFDZixVQUFZLENBQ2IsQU5pREQseUI4QjNESix1QjNCY0ksZ0JDZjRCLEFEZTVCLGlCRXFEb0MsQUZyRHBDLGlCRXFEbUUsQ3lCeERsRSxBQVhMLDZCeEJPTSxZQUFhLEFBQ2IsY0FBZSxBQUNmLFVBQVksQ0FDYixDQUFBLEF3QlZMLDZCN0JKSSxvQ0hLa0MsQUdMbEMsNEJIS2tDLEFHSmxDLGtCQUFtQixBQUNuQix5QkhTb0IsQUdScEIsbUJIbUJzQixBR2xCdEIscUJBQXNCLEE2QktkLHFCQUFzQixBQUN0QixpQkFBbUIsQ0FDdEIsQUFQVCxtQzdCR1EsV0hLbUIsQUdKbkIseUJIV2lCLENHVnBCLEE2QkxMLHlCQVNZLGFoQ0ZZLENnQ0dmLEFBVlQsNkJBY1ksaUJBQW1CLENBQ3RCLEE5QjRDTCx5QjhCM0RKLHNEM0JjSSxnQkl3SW9CLEFKeElwQixXUUE0RCxBUkE1RCxzQlM0RHdCLEFUNUR4QixzQkl3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Z0IsQUFDaEIsaUJBQW1CLENBOEV0QixBaENqQkcseUJKeWlGQSx1Qm9DcG1GSSxtQkFBcUIsQ0E0RTVCLENBQUEsQXBDMGhGQyw2QksxbUZFLG9DSEtrQyxBR0xsQyw0QkhLa0MsQUdKbEMsa0JBQW1CLEFBQ25CLHlCSFNvQixBR1JwQixtQkhtQnNCLEFHbEJ0QixxQkFBc0IsQStCSWxCLG9CQUFzQixDQUN6QixBcEN3bUZELG1DSzFtRkksV0hLbUIsQUdKbkIseUJIV2lCLENHVnBCLEFMMm1GSCxpQ09sbUZFLGdCQ2xCd0IsQURrQnhCLGlCRXFEb0MsQUZyRHBDLGlCRXFEbUUsQzJCM0RsRSxBcEM0bUZELHVDVTdtRkUsWUFBYSxBQUNiLGNBQWUsQUFDZixVQUFZLENBQ2IsQU5pREQseUJKOGpGRSxpQ08zbUZGLGdCQ2Y0QixBRGU1QixpQkVxRG9DLEFGckRwQyxpQkVxRG1FLEMyQjNEbEUsQXBDcW5GRyx1Q1V0bkZGLFlBQWEsQUFDYixjQUFlLEFBQ2YsVUFBWSxDQUNiLENBQUEsQVZ1bkZILGdDT25uRkUsV0l3SW9CLEFKeElwQixXUUE0RCxBUkE1RCxjSStFcUIsQUovRXJCLGNJa0ZvQixDeUJyQm5CLEFoQ2hCRCx5Qko0a0ZFLGdDb0MzbkZNLGtCQUFvQixDQStEM0IsQ0FBQSxBaENoQkQseUJKK2tGRSwyQ29DMW5GVSxrQkFBb0IsQ0FFM0IsQ0FBQSxBaEN5Q0wseUJKa2xGRSxnQ08vbkZGLGdCSXdJb0IsQUp4SXBCLFdRQTRELEFSQTVELHFCUzREd0IsQ29CQ3ZCLEFwQ3NrRkcsMkNPbm9GSixnQkl3SW9CLEFKeElwQixZUUF1RSxBUkF2RSxjSWtGb0IsQ3lCekVYLENBQUEsQXBDOG5GVCxrQ29DM25GUSxrQkFBb0IsQ0FDdkIsQXBDNG5GTCx3Q29DMW5GUSxjQUFpQixBQUNqQixrQkFBb0IsQ0FDdkIsQXBDMm5GTCx1Q29DeG5GUSxrQkFBbUIsQUFDbkIsbUJBQW9CLEFBQ3BCLGFBSHFCLEFBSXJCLGtCQUpxQixBQUtyQixXQUFhLENBU2hCLEFoQ1lMLHlCSnNtRkksdUNvQ3puRlEsV0FB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QVhwRDdCLFdZWjBCLEFaWTFCLGFhZ0IrQixDRndEOUIsQWlCOUVMLG9HNUJNSSxzQkl3SW9CLEFKeElwQixtQldvRDZCLEFYcEQ3QixVWUowQixDRDRFekIsQ0FBQSxBaUI5RUwsbUZBOFh3QixjQUFlLEFBQ2YsZUFBaUIsQ0FNcEIsQS9CbFZqQix5QitCbkRKLG1GQWlZNEIscUJBQXNCLEFBQ3RCLGdCQUFpQixBNUI1WHpDLGdCSXdJb0IsQUp4SXBCLFVRQTRELENvQitYM0MsQUFyWXJCLG1HNUJNSSxtQldvRDZCLEFYcEQ3QixXWVowQixBWlkxQixhYWdCK0IsQ0Z3RDlCLEFpQjlFTCxtRzVCTUksc0JJd0lvQixBSnhJcEIsbUJXb0Q2QixBWHBEN0IsVVlKMEIsQ0Q0RXpCLENBQUEsQWlCOUVMLDJFNUJNSSxXNEJrWWtDLEE1QmxZbEMsV1FBNEQsQVJBNUQsc0JTNER3QixBbUJ1VVIsZUFBaUIsQ0F5QnBCLEEvQi9XYix5QitCbkRKLGdMNUJNSSxnQkl3SW9CLEFKeElwQixVUUE0RCxDb0IyWjNDLEFBamFyQixnTjVCTUksbUJXb0Q2QixBWHBEN0IsV1laMEIsQVpZMUIsYWFnQitCLENGd0Q5QixBaUI5RUwsZ041Qk1JLHNCSXdJb0IsQUp4SXBCLG1CV29ENkIsQVhwRDdCLFVZSjBCLENENEV6QixDQUFBLEFpQjlFTCxvTEFnWjRCLGdCQUFrQixBQUNsQixVQUFhLENBQ2hCLEFBbFp6QixzTFZKSSxjQUFlLEFBQ2YsY0FBZSxBQUNmLGVBQWdCLEFBQ2hCLGVBQWlCLENVaWFJLEFWaGFyQiw0TEFDSSxpQkFBbUIsQ0FNdEIsQUFQRCwwTUFHUSxZQUFTLEFBQ1QsbUJBQW9CLEFBQ3BCLGtCQUFxQixDQUN4QixBVU5ULDRMQXVaZ0MsY0FBZSxBQUNmLGlCQUFtQixDQU90QixBL0I1V3pCLHlCK0JuREosNExBMFpvQyxrQkFBb0IsQ0FLM0IsQ0FBQSxBQS9aN0IsME1BNlpvQyxZQUFjLENBQ2pCLEFBOVpqQyxxQ0F1YVEsc0JBQXdCLENBQzNCLEEvQnJYRCx5QmlDaEVKLHlCQUlnQixjQUFnQixDQUV2QixDQUFBLEFBTlQsOEI5Qm1CSSxnQkNsQndCLEFEa0J4QixpQkVxRG9DLEFGckRwQyxpQkVxRG1FLEM0Qi9EOUQsQUFUVCxvQzNCWU0sWUFBYSxBQUNiLGNBQWUsQUFDZixVQUFZLENBQ2IsQU5pREQseUJpQ2hFSiw4QjlCbUJJLGdCQ2Y0QixBRGU1QixpQkVxRG9DLEFGckRwQyxpQkVxRG1FLEM0Qi9EOUQsQUFUVCxvQzNCWU0sWUFBYSxBQUNiLGNBQWUsQUFDZixVQUFZLENBQ2IsQ0FBQSxBMkJmTCxvQ0FXWSxrQkFBbUIsQUFDbkIsZUFBaUIsQ0FDcEIsQUFiVCw2Q0FlWSxvQkFBcUIsQUFDckIsbUJBQW9CLEFmZjVCLDBDQUE2QixDZTZGeEIsQUE5RlQsNEQ5Qm1CSSxXSXdJb0IsQUp4SXBCLFdRQTRELEFSQTVELGNJK0VxQixBSi9FckIsY0lrRm9CLEMwQlJYLEFqQzdCVCx5QmlDaEVKLDhFQXNCd0IsZUFBaUIsQ0FFeEIsQ0FBQSxBakN3Q2IseUJpQ2hFSixvRkE0QjRCLFNBQVksQTlCVHBDLGdCSXdJb0IsQUp4SXBCLFdRQTRELEFSQTVELHFCUzREd0IsQ3FCaERQLENBQUEsQWpDaUNqQix5QmlDaEVKLG1GOUJtQkksZ0JJd0lvQixBSnhJcEIsWVFBdUUsQVJBdkUsZUlrRm9CLEFKbEZwQixzQkl3SW9CLEEwQnZISSxVQUFZLENBRW5CLENBQUEsQUF0Q3JCLDBFQXlDb0IsZ0JBQWtCLENBYXJCLEFqQ1ViLHlCaUNoRUosaUY5Qm1CSSxnQkl3SW9CLEFKeElwQixXUUE0RCxBUkE1RCxzQlM0RHdCLEFUNUR4QixxQkl3SW9CLEMwQjVHSCxDQUFBLEFqQ2lCakIseUJpQ2hFSixnRjlCbUJJLGdCSXdJb0IsQUp4SXBCLFdRQTRELEFSQTVELHNCUzREd0IsQVQ1RHhCLHVCSXdJb0IsQzBCdEdILENBQUEsQUFyRHJCLG1FQXdEb0IsaUJBQW1CLENBYXRCLEFqQ0xiLHlCaUNoRUosdUVBMkQ0QixZQUFhLEFBQ2IsZUFBbUIsQUFDbkIsa0JBQW1CLEFBQ25CLFNBQVUsQUFDVixrQkFBb0IsQ0FLM0Is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SXBCLFVRQTRELEMwQmdGbkQsQUFuR2IsNEVsQ21CSSxtQldvRDZCLEFYcEQ3QixXWVowQixBWlkxQixhYWdCK0IsQ0Z3RDlCLEF1QjNGTCw0RWxDbUJJLHNCSXdJb0IsQUp4SXBCLG1CV29ENkIsQVhwRDdCLFVZSjBCLENENEV6QixBdUIzRkwsNEVsQ21CSSxzQkl3SW9CLEFKeElwQixtQldvRDZCLEFYcEQ3QixVWUowQixDRDRFekIsQ0FBQSxBZDNCRCx5QnFDaEVKLHNEbENtQkksZ0JrQ3NGb0MsQWxDdEZwQyxpQkVxRG9DLEFGckRwQyxpQkVxRG1FLENnQ3NDOUQsQUE5R1QsNEQvQllNLFlBQWEsQUFDYixjQUFlLEFBQ2YsVUFBWSxDQUNiLENBQUEsQStCZkwsZ0VsQ21CSSxnQkl3SW9CLEFKeElwQixVUUE0RCxDMEIwRm5ELEFBN0diLGdGbENtQkksbUJXb0Q2QixBWHBEN0IsV1laMEIsQVpZMUIsYWFnQitCLENGd0Q5QixBdUIzRkwsZ0ZsQ21CSSxzQkl3SW9CLEFKeElwQixtQldvRDZCLEFYcEQ3QixVWUowQixDRDRFekIsQXVCM0ZMLDREbENtQkksV0l3SW9CLEFKeElwQixVUUE0RCxDMEJpR25ELEFBcEhiLDRFbENtQkksY21Dd0RpQixBbkN4RGpCLG1CV29ENkIsQVhwRDdCLFVZSjBCLENENEV6QixBZDNCRCx5QnFDaEVKLDZDbENtQkksZ0JrQ3VHb0MsQWxDdkdwQyxpQkVxRG9DLEFGckRwQyxpQkVxRG1FLENnQ3VEOUQsQUEvSFQsbUQvQllNLFlBQWEsQUFDYixjQUFlLEFBQ2YsVUFBWSxDQUNiLENBQUEsQStCZkwsdURsQ21CSSxnQkl3SW9CLEFKeElwQixVUUE0RCxDMEIyR25ELEFBOUhiLHVFbENtQkksbUJXb0Q2QixBWHBEN0IsV1laMEIsQVpZMUIsYWFnQitCLENGd0Q5QixBdUIzRkwsdUVsQ21CSSxzQkl3SW9CLEFKeElwQixtQldvRDZCLEFYcEQ3QixVWUowQixDRDRFekIsQWQzQkQseUJxQ2hFSiwrQ2xDbUJJLGdCa0NpSG9DLEFsQ2pIcEMsaUJFcURvQyxBRnJEcEMsaUJFcURtRSxDZ0NpRTlELEFBeklULHFEL0JZTSxZQUFhLEFBQ2IsY0FBZSxBQUNmLFVBQVksQ0FDYixDQUFBLEErQmZMLHlEbENtQkksZ0JJd0lvQixBSnhJcEIsVVFBNEQsQzBCcUhuRCxBQXhJYix5RWxDbUJJLG1CV29ENkIsQVhwRDdCLFdZWjBCLEFaWTFCLGFhZ0IrQixDRndEOUIsQXVCM0ZMLHlFbENtQkksc0JJd0lvQixBSnhJcEIsbUJXb0Q2QixBWHBEN0IsVVlKMEIsQ0Q0RXpCIiwiZmlsZSI6Im1haW4uY3NzIiwic291cmNlc0NvbnRlbnQiOlsiQGZvbnQtZmFjZSB7XG4gICAgZm9udC1mYW1pbHk6IFwiTmV4YVwiO1xuICAgIHNyYzogdXJsKFwiLi4vZm9udHMvbmV4YV9saWdodC13ZWJmb250LmVvdFwiKTtcbiAgICBzcmM6IHVybChcIi4uL2ZvbnRzL25leGFfbGlnaHQtd2ViZm9udC5lb3Q/I2llZml4XCIpIGZvcm1hdChcImVtYmVkZGVkLW9wZW50eXBlXCIpLFxuICAgICAgICAgdXJsKFwiLi4vZm9udHMvbmV4YV9saWdodC13ZWJmb250LndvZmYyXCIpIGZvcm1hdChcIndvZmYyXCIpLFxuICAgICAgICAgdXJsKFwiLi4vZm9udHMvbmV4YV9saWdodC13ZWJmb250LndvZmZcIikgZm9ybWF0KFwid29mZlwiKSxcbiAgICAgICAgIHVybChcIi4uL2ZvbnRzL25leGFfbGlnaHQtd2ViZm9udC50dGZcIikgZm9ybWF0KFwidHJ1ZXR5cGVcIik7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG59XG5cbkBmb250LWZhY2Uge1xuICAgIGZvbnQtZmFtaWx5OiBcIk5leGFcIjtcbiAgICBzcmM6IHVybChcIi4uL2ZvbnRzL25leGFfYm9sZC13ZWJmb250LmVvdFwiKTtcbiAgICBzcmM6IHVybChcIi4uL2ZvbnRzL25leGFfYm9sZC13ZWJmb250LmVvdD8jaWVmaXhcIikgZm9ybWF0KFwiZW1iZWRkZWQtb3BlbnR5cGVcIiksXG4gICAgICAgICB1cmwoXCIuLi9mb250cy9uZXhhX2JvbGQtd2ViZm9udC53b2ZmMlwiKSBmb3JtYXQoXCJ3b2ZmMlwiKSxcbiAgICAgICAgIHVybChcIi4uL2ZvbnRzL25leGFfYm9sZC13ZWJmb250LndvZmZcIikgZm9ybWF0KFwid29mZlwiKSxcbiAgICAgICAgIHVybChcIi4uL2ZvbnRzL25leGFfYm9sZC13ZWJmb250LnR0ZlwiKSBmb3JtYXQoXCJ0cnVldHlwZVwiKTtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG59XG5cbkBmb250LWZhY2Uge1xuICAgIGZvbnQtZmFtaWx5OiBcInRyYWNraXItaWNvbnNcIjtcbiAgICBzcmM6IHVybChcIi4uL2ZvbnRzL3RyYWNraXItaWNvbnMuZW90PzU4NzMzMjQ5XCIpO1xuICAgIHNyYzogdXJsKFwiLi4vZm9udHMvdHJhY2tpci1pY29ucy5lb3Q/NTg3MzMyNDkjaWVmaXhcIikgZm9ybWF0KFwiZW1iZWRkZWQtb3BlbnR5cGVcIiksXG4gICAgICAgICB1cmwoXCIuLi9mb250cy90cmFja2lyLWljb25zLndvZmY/NTg3MzMyNDlcIikgZm9ybWF0KFwid29mZlwiKSxcbiAgICAgICAgIHVybChcIi4uL2ZvbnRzL3RyYWNraXItaWNvbnMudHRmPzU4NzMzMjQ5XCIpIGZvcm1hdChcInRydWV0eXBlXCIpLFxuICAgICAgICAgdXJsKFwiLi4vZm9udHMvdHJhY2tpci1pY29ucy5zdmc/NTg3MzMyNDkjdHJhY2tpci1pY29uc1wiKSBmb3JtYXQoXCJzdmdcIik7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG59XG5cbi8vIEljb24gc3R5bGVzIGJlbG93IHRha2VuIGZyb20gRm9udGVsbG8gZ2VuZXJhdGVkIENTUy5cbi8vIFJlZmFjdG9yZWQgaW50byBTQ1NTIG1peGlucy92YXJpYWJsZXMgYW5kIHNsaWdodGx5IG1vZGlmaWVkLlxuLy8gTWF5IG5lZWQgbW9yZSBhdHRlbnRpb24hXG4laWNvbi1mb250IHtcbiAgICBmb250LWZhbWlseTogXCJ0cmFja2lyLWljb25zXCI7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgc3BlYWs6IG5vbmU7XG5cbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBpbmhlcml0O1xuICAgIHdpZHRoOiAxZW07XG4gICAgbWFyZ2luLXJpZ2h0OiAuMmVtO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgIC8qIEZvciBzYWZldHkgLSByZXNldCBwYXJlbnQgc3R5bGVzIHRoYXQgY2FuIGJyZWFrIGdseXBoIGNvZGVzICovXG4gICAgZm9udC12YXJpYW50OiBub3JtYWw7XG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG5cbiAgICAvKiBmaXggYnV0dG9ucyBoZWlnaHQsIGZvciB0d2l0dGVyIGJvb3RzdHJhcCAqL1xuICAgIC8vbGluZS1oZWlnaHQ6IDFlbTtcblxuICAgIC8qIEFuaW1hdGlvbiBjZW50ZXIgY29tcGVuc2F0aW9uIC0gbWFyZ2lucyBzaG91bGQgYmUgc3ltbWV0cmljICovXG4gICAgLyogcmVtb3ZlIGlmIG5vdCBuZWVkZWQgKi9cbiAgICBtYXJnaW4tbGVmdDogLjJlbTtcbn1cblxuQG1peGluIGljb24oJGdseXBoOiBudWxsKSB7XG4gICAgQGlmICgkZ2x5cGgpIHtcbiAgICAgICAgY29udGVudDogJGdseXBoO1xuICAgIH1cblxuICAgIEBleHRlbmQgJWljb24tZm9udDtcbn1cblxuW2NsYXNzXj1cImljb24tXCJdOmJlZm9yZSwgW2NsYXNzKj1cIiBpY29uLVwiXTpiZWZvcmUge1xuICAgIEBleHRlbmQgJWljb24tZm9udDtcbn1cblxuJGljb24tZ2x5cGgtYmFza2V0OiBcIlxcZTgwMFwiO1xuLmljb24tYmFza2V0OmJlZm9yZSB7IGNvbnRlbnQ6ICRpY29uLWdseXBoLWJhc2tldDsgfVxuXG4kaWNvbi1nbHlwaC1jaGV2cm9uLXNtYWxsLXJpZ2h0OiBcIlxcZTgwMVwiO1xuLmljb24tY2hldnJvbi1zbWFsbC1yaWdodDpiZWZvcmUgeyBjb250ZW50OiAkaWNvbi1nbHlwaC1jaGV2cm9uLXNtYWxsLXJpZ2h0OyB9XG5cbiRpY29uLWdseXBoLXR3aXRjaDogXCJcXGU5MDBcIjtcbi5pY29uLXR3aXRjaDpiZWZvcmUgeyBjb250ZW50OiAkaWNvbi1nbHlwaC10d2l0Y2g7IH1cblxuJGljb24tZ2x5cGgteW91dHViZTogXCJcXGU5MDFcIjtcbi5pY29uLXlvdXR1YmUtcGxheTpiZWZvcmUgeyBjb250ZW50OiAkaWNvbi1nbHlwaC15b3V0dWJlOyB9XG5cbiRpY29uLWdseXBoLXR3aXR0ZXI6IFwiXFxlOTAyXCI7XG4uaWNvbi10d2l0dGVyOmJlZm9yZSB7IGNvbnRlbnQ6ICRpY29uLWdseXBoLXR3aXR0ZXI7IH1cblxuJGljb24tZ2x5cGgtZmFjZWJvb2s6IFwiXFxlOTAzXCI7XG4uaWNvbi1mYWNlYm9vazpiZWZvcmUgeyBjb250ZW50OiAkaWNvbi1nbHlwaC1mYWNlYm9vazsgfVxuXG4kaWNvbi1nbHlwaC1yZWZyZXNoOiBcIlxcZTgwMlwiO1xuLmljb24tcmVmcmVzaDpiZWZvcmUgeyBjb250ZW50OiAkaWNvbi1nbHlwaC1yZWZyZXNoOyB9XG5cbiRpY29uLWdseXBoLWxpbmstZXh0OiBcIlxcZTgwM1wiO1xuLmljb24tbGluay1leHQ6YmVmb3JlIHsgY29udGVudDogJGljb24tZ2x5cGgtbGluay1leHQ7IH1cblxuJGljb24tZ2x5cGgtcGxheS1jaXJjbGVkOiBcIlxcZTgwNFwiO1xuLmljb24tcGxheS1jaXJjbGVkOmJlZm9yZSB7IGNvbnRlbnQ6ICRpY29uLWdseXBoLXBsYXktY2lyY2xlZDsgfVxuXG4kaWNvbi1nbHlwaC1ibG9jazogXCJcXGU4MDVcIjtcbi5pY29uLWJsb2NrOmJlZm9yZSB7IGNvbnRlbnQ6ICRpY29uLWdseXBoLWJsb2NrOyB9XG5cbiRpY29uLWdseXBoLW9rLWNpcmNsZWQyOiBcIlxcZTgwNlwiO1xuLmljb24tb2stY2lyY2xlZDI6YmVmb3JlIHsgY29udGVudDogJGljb24tZ2x5cGgtb2stY2lyY2xlZDI7IH1cblxuJGljb24tZ2x5cGgtb2s6IFwiXFxlODA3XCI7XG4uaWNvbi1vazpiZWZvcmUgeyBjb250ZW50OiAkaWNvbi1nbHlwaC1vazsgfVxuXG4kaWNvbi1nbHlwaC11cDogXCJcXGU4MDlcIjtcbi5pY29uLXVwLW9wZW4tYmlnOmJlZm9yZSB7IGNvbnRlbnQ6ICRpY29uLWdseXBoLXVwOyB9XG5cbiRpY29uLWdseXBoLWRvd246IFwiXFxlODA4XCI7XG4uaWNvbi1kb3duLW9wZW4tYmlnOmJlZm9yZSB7IGNvbnRlbnQ6ICRpY29uLWdseXBoLWRvd247IH1cbiIsIi8qISBub3JtYWxpemUuY3NzIHYzLjAuMyB8IE1JVCBMaWNlbnNlIHwgZ2l0aHViLmNvbS9uZWNvbGFzL25vcm1hbGl6ZS5jc3MgKi9cblxuLyoqXG4gKiAxLiBTZXQgZGVmYXVsdCBmb250IGZhbWlseSB0byBzYW5zLXNlcmlmLlxuICogMi4gUHJldmVudCBpT1MgYW5kIElFIHRleHQgc2l6ZSBhZGp1c3QgYWZ0ZXIgZGV2aWNlIG9yaWVudGF0aW9uIGNoYW5nZSxcbiAqICAgIHdpdGhvdXQgZGlzYWJsaW5nIHVzZXIgem9vbS5cbiAqL1xuXG5odG1sIHtcbiAgICBmb250LWZhbWlseTogc2Fucy1zZXJpZjsgLyogMSAqL1xuICAgIC1tcy10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvKiAyICovXG4gICAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvKiAyICovXG59XG5cbi8qKlxuICogUmVtb3ZlIGRlZmF1bHQgbWFyZ2luLlxuICovXG5cbmJvZHkge1xuICAgIG1hcmdpbjogMDtcbn1cblxuLyogSFRNTDUgZGlzcGxheSBkZWZpbml0aW9uc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBDb3JyZWN0IGBibG9ja2AgZGlzcGxheSBub3QgZGVmaW5lZCBmb3IgYW55IEhUTUw1IGVsZW1lbnQgaW4gSUUgOC85LlxuICogQ29ycmVjdCBgYmxvY2tgIGRpc3BsYXkgbm90IGRlZmluZWQgZm9yIGBkZXRhaWxzYCBvciBgc3VtbWFyeWAgaW4gSUUgMTAvMTFcbiAqIGFuZCBGaXJlZm94LlxuICogQ29ycmVjdCBgYmxvY2tgIGRpc3BsYXkgbm90IGRlZmluZWQgZm9yIGBtYWluYCBpbiBJRSAxMS5cbiAqL1xuXG5hcnRpY2xlLFxuYXNpZGUsXG5kZXRhaWxzLFxuZmlnY2FwdGlvbixcbmZpZ3VyZSxcbmZvb3RlcixcbmhlYWRlcixcbmhncm91cCxcbm1haW4sXG5tZW51LFxubmF2LFxuc2VjdGlvbixcbnN1bW1hcnkge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgYGlubGluZS1ibG9ja2AgZGlzcGxheSBub3QgZGVmaW5lZCBpbiBJRSA4LzkuXG4gKiAyLiBOb3JtYWxpemUgdmVydGljYWwgYWxpZ25tZW50IG9mIGBwcm9ncmVzc2AgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgT3BlcmEuXG4gKi9cblxuYXVkaW8sXG5jYW52YXMsXG5wcm9ncmVzcyxcbnZpZGVvIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IC8qIDEgKi9cbiAgICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBQcmV2ZW50IG1vZGVybiBicm93c2VycyBmcm9tIGRpc3BsYXlpbmcgYGF1ZGlvYCB3aXRob3V0IGNvbnRyb2xzLlxuICogUmVtb3ZlIGV4Y2VzcyBoZWlnaHQgaW4gaU9TIDUgZGV2aWNlcy5cbiAqL1xuXG5hdWRpbzpub3QoW2NvbnRyb2xzXSkge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgaGVpZ2h0OiAwO1xufVxuXG4vKipcbiAqIEFkZHJlc3MgYFtoaWRkZW5dYCBzdHlsaW5nIG5vdCBwcmVzZW50IGluIElFIDgvOS8xMC5cbiAqIEhpZGUgdGhlIGB0ZW1wbGF0ZWAgZWxlbWVudCBpbiBJRSA4LzkvMTAvMTEsIFNhZmFyaSwgYW5kIEZpcmVmb3ggPCAyMi5cbiAqL1xuXG5baGlkZGVuXSxcbnRlbXBsYXRlIHtcbiAgICBkaXNwbGF5OiBub25lO1xufVxuXG4vKiBMaW5rc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGdyYXkgYmFja2dyb3VuZCBjb2xvciBmcm9tIGFjdGl2ZSBsaW5rcyBpbiBJRSAxMC5cbiAqL1xuXG5hIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuLyoqXG4gKiBJbXByb3ZlIHJlYWRhYmlsaXR5IG9mIGZvY3VzZWQgZWxlbWVudHMgd2hlbiB0aGV5IGFyZSBhbHNvIGluIGFuXG4gKiBhY3RpdmUvaG92ZXIgc3RhdGUuXG4gKi9cblxuYTphY3RpdmUsXG5hOmhvdmVyIHtcbiAgICBvdXRsaW5lOiAwO1xufVxuXG4vKiBUZXh0LWxldmVsIHNlbWFudGljc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBBZGRyZXNzIHN0eWxpbmcgbm90IHByZXNlbnQgaW4gSUUgOC85LzEwLzExLCBTYWZhcmksIGFuZCBDaHJvbWUuXG4gKi9cblxuYWJiclt0aXRsZV0ge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBkb3R0ZWQ7XG59XG5cbi8qKlxuICogQWRkcmVzcyBzdHlsZSBzZXQgdG8gYGJvbGRlcmAgaW4gRmlyZWZveCA0KywgU2FmYXJpLCBhbmQgQ2hyb21lLlxuICovXG5cbmIsXG5zdHJvbmcge1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4vKipcbiAqIEFkZHJlc3Mgc3R5bGluZyBub3QgcHJlc2VudCBpbiBTYWZhcmkgYW5kIENocm9tZS5cbiAqL1xuXG5kZm4ge1xuICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbn1cblxuLyoqXG4gKiBBZGRyZXNzIHZhcmlhYmxlIGBoMWAgZm9udC1zaXplIGFuZCBtYXJnaW4gd2l0aGluIGBzZWN0aW9uYCBhbmQgYGFydGljbGVgXG4gKiBjb250ZXh0cyBpbiBGaXJlZm94IDQrLCBTYWZhcmksIGFuZCBDaHJvbWUuXG4gKi9cblxuaDEge1xuICAgIGZvbnQtc2l6ZTogMmVtO1xuICAgIG1hcmdpbjogMC42N2VtIDA7XG59XG5cbi8qKlxuICogQWRkcmVzcyBzdHlsaW5nIG5vdCBwcmVzZW50IGluIElFIDgvOS5cbiAqL1xuXG5tYXJrIHtcbiAgICBiYWNrZ3JvdW5kOiAjZmYwO1xuICAgIGNvbG9yOiAjMDAwO1xufVxuXG4vKipcbiAqIEFkZHJlc3MgaW5jb25zaXN0ZW50IGFuZCB2YXJpYWJsZSBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbnNtYWxsIHtcbiAgICBmb250LXNpemU6IDgwJTtcbn1cblxuLyoqXG4gKiBQcmV2ZW50IGBzdWJgIGFuZCBgc3VwYCBhZmZlY3RpbmcgYGxpbmUtaGVpZ2h0YCBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxuc3ViLFxuc3VwIHtcbiAgICBmb250LXNpemU6IDc1JTtcbiAgICBsaW5lLWhlaWdodDogMDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuXG5zdXAge1xuICAgIHRvcDogLTAuNWVtO1xufVxuXG5zdWIge1xuICAgIGJvdHRvbTogLTAuMjVlbTtcbn1cblxuLyogRW1iZWRkZWQgY29udGVudFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBSZW1vdmUgYm9yZGVyIHdoZW4gaW5zaWRlIGBhYCBlbGVtZW50IGluIElFIDgvOS8xMC5cbiAqL1xuXG5pbWcge1xuICAgIGJvcmRlcjogMDtcbn1cblxuLyoqXG4gKiBDb3JyZWN0IG92ZXJmbG93IG5vdCBoaWRkZW4gaW4gSUUgOS8xMC8xMS5cbiAqL1xuXG5zdmc6bm90KDpyb290KSB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLyogR3JvdXBpbmcgY29udGVudFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBBZGRyZXNzIG1hcmdpbiBub3QgcHJlc2VudCBpbiBJRSA4LzkgYW5kIFNhZmFyaS5cbiAqL1xuXG5maWd1cmUge1xuICAgIG1hcmdpbjogMWVtIDQwcHg7XG59XG5cbi8qKlxuICogQWRkcmVzcyBkaWZmZXJlbmNlcyBiZXR3ZWVuIEZpcmVmb3ggYW5kIG90aGVyIGJyb3dzZXJzLlxuICovXG5cbmhyIHtcbiAgICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgICBoZWlnaHQ6IDA7XG59XG5cbi8qKlxuICogQ29udGFpbiBvdmVyZmxvdyBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxucHJlIHtcbiAgICBvdmVyZmxvdzogYXV0bztcbn1cblxuLyoqXG4gKiBBZGRyZXNzIG9kZCBgZW1gLXVuaXQgZm9udCBzaXplIHJlbmRlcmluZyBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxuY29kZSxcbmtiZCxcbnByZSxcbnNhbXAge1xuICAgIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTtcbiAgICBmb250LXNpemU6IDFlbTtcbn1cblxuLyogRm9ybXNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogS25vd24gbGltaXRhdGlvbjogYnkgZGVmYXVsdCwgQ2hyb21lIGFuZCBTYWZhcmkgb24gT1MgWCBhbGxvdyB2ZXJ5IGxpbWl0ZWRcbiAqIHN0eWxpbmcgb2YgYHNlbGVjdGAsIHVubGVzcyBhIGBib3JkZXJgIHByb3BlcnR5IGlzIHNldC5cbiAqL1xuXG4vKipcbiAqIDEuIENvcnJlY3QgY29sb3Igbm90IGJlaW5nIGluaGVyaXRlZC5cbiAqICAgIEtub3duIGlzc3VlOiBhZmZlY3RzIGNvbG9yIG9mIGRpc2FibGVkIGVsZW1lbnRzLlxuICogMi4gQ29ycmVjdCBmb250IHByb3BlcnRpZXMgbm90IGJlaW5nIGluaGVyaXRlZC5cbiAqIDMuIEFkZHJlc3MgbWFyZ2lucyBzZXQgZGlmZmVyZW50bHkgaW4gRmlyZWZveCA0KywgU2FmYXJpLCBhbmQgQ2hyb21lLlxuICovXG5cbmJ1dHRvbixcbmlucHV0LFxub3B0Z3JvdXAsXG5zZWxlY3QsXG50ZXh0YXJlYSB7XG4gICAgY29sb3I6IGluaGVyaXQ7IC8qIDEgKi9cbiAgICBmb250OiBpbmhlcml0OyAvKiAyICovXG4gICAgbWFyZ2luOiAwOyAvKiAzICovXG59XG5cbi8qKlxuICogQWRkcmVzcyBgb3ZlcmZsb3dgIHNldCB0byBgaGlkZGVuYCBpbiBJRSA4LzkvMTAvMTEuXG4gKi9cblxuYnV0dG9uIHtcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbn1cblxuLyoqXG4gKiBBZGRyZXNzIGluY29uc2lzdGVudCBgdGV4dC10cmFuc2Zvcm1gIGluaGVyaXRhbmNlIGZvciBgYnV0dG9uYCBhbmQgYHNlbGVjdGAuXG4gKiBBbGwgb3RoZXIgZm9ybSBjb250cm9sIGVsZW1lbnRzIGRvIG5vdCBpbmhlcml0IGB0ZXh0LXRyYW5zZm9ybWAgdmFsdWVzLlxuICogQ29ycmVjdCBgYnV0dG9uYCBzdHlsZSBpbmhlcml0YW5jZSBpbiBGaXJlZm94LCBJRSA4LzkvMTAvMTEsIGFuZCBPcGVyYS5cbiAqIENvcnJlY3QgYHNlbGVjdGAgc3R5bGUgaW5oZXJpdGFuY2UgaW4gRmlyZWZveC5cbiAqL1xuXG5idXR0b24sXG5zZWxlY3Qge1xuICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xufVxuXG4vKipcbiAqIDEuIEF2b2lkIHRoZSBXZWJLaXQgYnVnIGluIEFuZHJvaWQgNC4wLiogd2hlcmUgKDIpIGRlc3Ryb3lzIG5hdGl2ZSBgYXVkaW9gXG4gKiAgICBhbmQgYHZpZGVvYCBjb250cm9scy5cbiAqIDIuIENvcnJlY3QgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSBgaW5wdXRgIHR5cGVzIGluIGlPUy5cbiAqIDMuIEltcHJvdmUgdXNhYmlsaXR5IGFuZCBjb25zaXN0ZW5jeSBvZiBjdXJzb3Igc3R5bGUgYmV0d2VlbiBpbWFnZS10eXBlXG4gKiAgICBgaW5wdXRgIGFuZCBvdGhlcnMuXG4gKi9cblxuYnV0dG9uLFxuaHRtbCBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdLCAvKiAxICovXG5pbnB1dFt0eXBlPVwicmVzZXRcIl0sXG5pbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjsgLyogMiAqL1xuICAgIGN1cnNvcjogcG9pbnRlcjsgLyogMyAqL1xufVxuXG4vKipcbiAqIFJlLXNldCBkZWZhdWx0IGN1cnNvciBmb3IgZGlzYWJsZWQgZWxlbWVudHMuXG4gKi9cblxuYnV0dG9uW2Rpc2FibGVkXSxcbmh0bWwgaW5wdXRbZGlzYWJsZWRdIHtcbiAgICBjdXJzb3I6IGRlZmF1bHQ7XG59XG5cbi8qKlxuICogUmVtb3ZlIGlubmVyIHBhZGRpbmcgYW5kIGJvcmRlciBpbiBGaXJlZm94IDQrLlxuICovXG5cbmJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lcixcbmlucHV0OjotbW96LWZvY3VzLWlubmVyIHtcbiAgICBib3JkZXI6IDA7XG4gICAgcGFkZGluZzogMDtcbn1cblxuLyoqXG4gKiBBZGRyZXNzIEZpcmVmb3ggNCsgc2V0dGluZyBgbGluZS1oZWlnaHRgIG9uIGBpbnB1dGAgdXNpbmcgYCFpbXBvcnRhbnRgIGluXG4gKiB0aGUgVUEgc3R5bGVzaGVldC5cbiAqL1xuXG5pbnB1dCB7XG4gICAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbn1cblxuLyoqXG4gKiBJdCdzIHJlY29tbWVuZGVkIHRoYXQgeW91IGRvbid0IGF0dGVtcHQgdG8gc3R5bGUgdGhlc2UgZWxlbWVudHMuXG4gKiBGaXJlZm94J3MgaW1wbGVtZW50YXRpb24gZG9lc24ndCByZXNwZWN0IGJveC1zaXppbmcsIHBhZGRpbmcsIG9yIHdpZHRoLlxuICpcbiAqIDEuIEFkZHJlc3MgYm94IHNpemluZyBzZXQgdG8gYGNvbnRlbnQtYm94YCBpbiBJRSA4LzkvMTAuXG4gKiAyLiBSZW1vdmUgZXhjZXNzIHBhZGRpbmcgaW4gSUUgOC85LzEwLlxuICovXG5cbmlucHV0W3R5cGU9XCJjaGVja2JveFwiXSxcbmlucHV0W3R5cGU9XCJyYWRpb1wiXSB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDsgLyogMSAqL1xuICAgIHBhZGRpbmc6IDA7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBGaXggdGhlIGN1cnNvciBzdHlsZSBmb3IgQ2hyb21lJ3MgaW5jcmVtZW50L2RlY3JlbWVudCBidXR0b25zLiBGb3IgY2VydGFpblxuICogYGZvbnQtc2l6ZWAgdmFsdWVzIG9mIHRoZSBgaW5wdXRgLCBpdCBjYXVzZXMgdGhlIGN1cnNvciBzdHlsZSBvZiB0aGVcbiAqIGRlY3JlbWVudCBidXR0b24gdG8gY2hhbmdlIGZyb20gYGRlZmF1bHRgIHRvIGB0ZXh0YC5cbiAqL1xuXG5pbnB1dFt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxuaW5wdXRbdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiB7XG4gICAgaGVpZ2h0OiBhdXRvO1xufVxuXG4vKipcbiAqIDEuIEFkZHJlc3MgYGFwcGVhcmFuY2VgIHNldCB0byBgc2VhcmNoZmllbGRgIGluIFNhZmFyaSBhbmQgQ2hyb21lLlxuICogMi4gQWRkcmVzcyBgYm94LXNpemluZ2Agc2V0IHRvIGBib3JkZXItYm94YCBpbiBTYWZhcmkgYW5kIENocm9tZS5cbiAqL1xuXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdIHtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IHRleHRmaWVsZDsgLyogMSAqL1xuICAgIGJveC1zaXppbmc6IGNvbnRlbnQtYm94OyAvKiAyICovXG59XG5cbi8qKlxuICogUmVtb3ZlIGlubmVyIHBhZGRpbmcgYW5kIHNlYXJjaCBjYW5jZWwgYnV0dG9uIGluIFNhZmFyaSBhbmQgQ2hyb21lIG9uIE9TIFguXG4gKiBTYWZhcmkgKGJ1dCBub3QgQ2hyb21lKSBjbGlwcyB0aGUgY2FuY2VsIGJ1dHRvbiB3aGVuIHRoZSBzZWFyY2ggaW5wdXQgaGFzXG4gKiBwYWRkaW5nIChhbmQgYHRleHRmaWVsZGAgYXBwZWFyYW5jZSkuXG4gKi9cblxuaW5wdXRbdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtY2FuY2VsLWJ1dHRvbixcbmlucHV0W3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWRlY29yYXRpb24ge1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuLyoqXG4gKiBEZWZpbmUgY29uc2lzdGVudCBib3JkZXIsIG1hcmdpbiwgYW5kIHBhZGRpbmcuXG4gKi9cblxuZmllbGRzZXQge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNjMGMwYzA7XG4gICAgbWFyZ2luOiAwIDJweDtcbiAgICBwYWRkaW5nOiAwLjM1ZW0gMC42MjVlbSAwLjc1ZW07XG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCBgY29sb3JgIG5vdCBiZWluZyBpbmhlcml0ZWQgaW4gSUUgOC85LzEwLzExLlxuICogMi4gUmVtb3ZlIHBhZGRpbmcgc28gcGVvcGxlIGFyZW4ndCBjYXVnaHQgb3V0IGlmIHRoZXkgemVybyBvdXQgZmllbGRzZXRzLlxuICovXG5cbmxlZ2VuZCB7XG4gICAgYm9yZGVyOiAwOyAvKiAxICovXG4gICAgcGFkZGluZzogMDsgLyogMiAqL1xufVxuXG4vKipcbiAqIFJlbW92ZSBkZWZhdWx0IHZlcnRpY2FsIHNjcm9sbGJhciBpbiBJRSA4LzkvMTAvMTEuXG4gKi9cblxudGV4dGFyZWEge1xuICAgIG92ZXJmbG93OiBhdXRvO1xufVxuXG4vKipcbiAqIERvbid0IGluaGVyaXQgdGhlIGBmb250LXdlaWdodGAgKGFwcGxpZWQgYnkgYSBydWxlIGFib3ZlKS5cbiAqIE5PVEU6IHRoZSBkZWZhdWx0IGNhbm5vdCBzYWZlbHkgYmUgY2hhbmdlZCBpbiBDaHJvbWUgYW5kIFNhZmFyaSBvbiBPUyBYLlxuICovXG5cbm9wdGdyb3VwIHtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbn1cblxuLyogVGFibGVzXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIFJlbW92ZSBtb3N0IHNwYWNpbmcgYmV0d2VlbiB0YWJsZSBjZWxscy5cbiAqL1xuXG50YWJsZSB7XG4gICAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgICBib3JkZXItc3BhY2luZzogMDtcbn1cblxudGQsXG50aCB7XG4gICAgcGFkZGluZzogMDtcbn1cbiIsIkBjaGFyc2V0IFwiVVRGLThcIjtcbi8qISBub3JtYWxpemUuY3NzIHYzLjAuMyB8IE1JVCBMaWNlbnNlIHwgZ2l0aHViLmNvbS9uZWNvbGFzL25vcm1hbGl6ZS5jc3MgKi9cbi8qKlxuICogMS4gU2V0IGRlZmF1bHQgZm9udCBmYW1pbHkgdG8gc2Fucy1zZXJpZi5cbiAqIDIuIFByZXZlbnQgaU9TIGFuZCBJRSB0ZXh0IHNpemUgYWRqdXN0IGFmdGVyIGRldmljZSBvcmllbnRhdGlvbiBjaGFuZ2UsXG4gKiAgICB3aXRob3V0IGRpc2FibGluZyB1c2VyIHpvb20uXG4gKi9cbmh0bWwge1xuICBmb250LWZhbWlseTogc2Fucy1zZXJpZjtcbiAgLyogMSAqL1xuICAtbXMtdGV4dC1zaXplLWFkanVzdDogMTAwJTtcbiAgLyogMiAqL1xuICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7XG4gIC8qIDIgKi8gfVxuXG4vKipcbiAqIFJlbW92ZSBkZWZhdWx0IG1hcmdpbi5cbiAqL1xuYm9keSB7XG4gIG1hcmdpbjogMDsgfVxuXG4vKiBIVE1MNSBkaXNwbGF5IGRlZmluaXRpb25zXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiBDb3JyZWN0IGBibG9ja2AgZGlzcGxheSBub3QgZGVmaW5lZCBmb3IgYW55IEhUTUw1IGVsZW1lbnQgaW4gSUUgOC85LlxuICogQ29ycmVjdCBgYmxvY2tgIGRpc3BsYXkgbm90IGRlZmluZWQgZm9yIGBkZXRhaWxzYCBvciBgc3VtbWFyeWAgaW4gSUUgMTAvMTFcbiAqIGFuZCBGaXJlZm94LlxuICogQ29ycmVjdCBgYmxvY2tgIGRpc3BsYXkgbm90IGRlZmluZWQgZm9yIGBtYWluYCBpbiBJRSAxMS5cbiAqL1xuYXJ0aWNsZSxcbmFzaWRlLFxuZGV0YWlscyxcbmZpZ2NhcHRpb24sXG5maWd1cmUsXG5mb290ZXIsXG5oZWFkZXIsXG5oZ3JvdXAsXG5tYWluLFxubWVudSxcbm5hdixcbnNlY3Rpb24sXG5zdW1tYXJ5IHtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IGBpbmxpbmUtYmxvY2tgIGRpc3BsYXkgbm90IGRlZmluZWQgaW4gSUUgOC85LlxuICogMi4gTm9ybWFsaXplIHZlcnRpY2FsIGFsaWdubWVudCBvZiBgcHJvZ3Jlc3NgIGluIENocm9tZSwgRmlyZWZveCwgYW5kIE9wZXJhLlxuICovXG5hdWRpbyxcbmNhbnZhcyxcbnByb2dyZXNzLFxudmlkZW8ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIC8qIDEgKi9cbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuICAvKiAyICovIH1cblxuLyoqXG4gKiBQcmV2ZW50IG1vZGVybiBicm93c2VycyBmcm9tIGRpc3BsYXlpbmcgYGF1ZGlvYCB3aXRob3V0IGNvbnRyb2xzLlxuICogUmVtb3ZlIGV4Y2VzcyBoZWlnaHQgaW4gaU9TIDUgZGV2aWNlcy5cbiAqL1xuYXVkaW86bm90KFtjb250cm9sc10pIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgaGVpZ2h0OiAwOyB9XG5cbi8qKlxuICogQWRkcmVzcyBgW2hpZGRlbl1gIHN0eWxpbmcgbm90IHByZXNlbnQgaW4gSUUgOC85LzEwLlxuICogSGlkZSB0aGUgYHRlbXBsYXRlYCBlbGVtZW50IGluIElFIDgvOS8xMC8xMSwgU2FmYXJpLCBhbmQgRmlyZWZveCA8IDIyLlxuICovXG5baGlkZGVuXSxcbnRlbXBsYXRlIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4vKiBMaW5rc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICogUmVtb3ZlIHRoZSBncmF5IGJhY2tncm91bmQgY29sb3IgZnJvbSBhY3RpdmUgbGlua3MgaW4gSUUgMTAuXG4gKi9cbmEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuXG4vKipcbiAqIEltcHJvdmUgcmVhZGFiaWxpdHkgb2YgZm9jdXNlZCBlbGVtZW50cyB3aGVuIHRoZXkgYXJlIGFsc28gaW4gYW5cbiAqIGFjdGl2ZS9ob3ZlciBzdGF0ZS5cbiAqL1xuYTphY3RpdmUsXG5hOmhvdmVyIHtcbiAgb3V0bGluZTogMDsgfVxuXG4vKiBUZXh0LWxldmVsIHNlbWFudGljc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICogQWRkcmVzcyBzdHlsaW5nIG5vdCBwcmVzZW50IGluIElFIDgvOS8xMC8xMSwgU2FmYXJpLCBhbmQgQ2hyb21lLlxuICovXG5hYmJyW3RpdGxlXSB7XG4gIGJvcmRlci1ib3R0b206IDFweCBkb3R0ZWQ7IH1cblxuLyoqXG4gKiBBZGRyZXNzIHN0eWxlIHNldCB0byBgYm9sZGVyYCBpbiBGaXJlZm94IDQrLCBTYWZhcmksIGFuZCBDaHJvbWUuXG4gKi9cbmIsXG5zdHJvbmcge1xuICBmb250LXdlaWdodDogYm9sZDsgfVxuXG4vKipcbiAqIEFkZHJlc3Mgc3R5bGluZyBub3QgcHJlc2VudCBpbiBTYWZhcmkgYW5kIENocm9tZS5cbiAqL1xuZGZuIHtcbiAgZm9udC1zdHlsZTogaXRhbGljOyB9XG5cbi8qKlxuICogQWRkcmVzcyB2YXJpYWJsZSBgaDFgIGZvbnQtc2l6ZSBhbmQgbWFyZ2luIHdpdGhpbiBgc2VjdGlvbmAgYW5kIGBhcnRpY2xlYFxuICogY29udGV4dHMgaW4gRmlyZWZveCA0KywgU2FmYXJpLCBhbmQgQ2hyb21lLlxuICovXG5oMSB7XG4gIGZvbnQtc2l6ZTogMmVtO1xuICBtYXJnaW46IDAuNjdlbSAwOyB9XG5cbi8qKlxuICogQWRkcmVzcyBzdHlsaW5nIG5vdCBwcmVzZW50IGluIElFIDgvOS5cbiAqL1xubWFyayB7XG4gIGJhY2tncm91bmQ6ICNmZjA7XG4gIGNvbG9yOiAjMDAwOyB9XG5cbi8qKlxuICogQWRkcmVzcyBpbmNvbnNpc3RlbnQgYW5kIHZhcmlhYmxlIGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cbnNtYWxsIHtcbiAgZm9udC1zaXplOiA4MCU7IH1cblxuLyoqXG4gKiBQcmV2ZW50IGBzdWJgIGFuZCBgc3VwYCBhZmZlY3RpbmcgYGxpbmUtaGVpZ2h0YCBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cbnN1YixcbnN1cCB7XG4gIGZvbnQtc2l6ZTogNzUlO1xuICBsaW5lLWhlaWdodDogMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7IH1cblxuc3VwIHtcbiAgdG9wOiAtMC41ZW07IH1cblxuc3ViIHtcbiAgYm90dG9tOiAtMC4yNWVtOyB9XG5cbi8qIEVtYmVkZGVkIGNvbnRlbnRcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIFJlbW92ZSBib3JkZXIgd2hlbiBpbnNpZGUgYGFgIGVsZW1lbnQgaW4gSUUgOC85LzEwLlxuICovXG5pbWcge1xuICBib3JkZXI6IDA7IH1cblxuLyoqXG4gKiBDb3JyZWN0IG92ZXJmbG93IG5vdCBoaWRkZW4gaW4gSUUgOS8xMC8xMS5cbiAqL1xuc3ZnOm5vdCg6cm9vdCkge1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG5cbi8qIEdyb3VwaW5nIGNvbnRlbnRcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIEFkZHJlc3MgbWFyZ2luIG5vdCBwcmVzZW50IGluIElFIDgvOSBhbmQgU2FmYXJpLlxuICovXG5maWd1cmUge1xuICBtYXJnaW46IDFlbSA0MHB4OyB9XG5cbi8qKlxuICogQWRkcmVzcyBkaWZmZXJlbmNlcyBiZXR3ZWVuIEZpcmVmb3ggYW5kIG90aGVyIGJyb3dzZXJzLlxuICovXG5ociB7XG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICBoZWlnaHQ6IDA7IH1cblxuLyoqXG4gKiBDb250YWluIG92ZXJmbG93IGluIGFsbCBicm93c2Vycy5cbiAqL1xucHJlIHtcbiAgb3ZlcmZsb3c6IGF1dG87IH1cblxuLyoqXG4gKiBBZGRyZXNzIG9kZCBgZW1gLXVuaXQgZm9udCBzaXplIHJlbmRlcmluZyBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cbmNvZGUsXG5rYmQsXG5wcmUsXG5zYW1wIHtcbiAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlO1xuICBmb250LXNpemU6IDFlbTsgfVxuXG4vKiBGb3Jtc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICogS25vd24gbGltaXRhdGlvbjogYnkgZGVmYXVsdCwgQ2hyb21lIGFuZCBTYWZhcmkgb24gT1MgWCBhbGxvdyB2ZXJ5IGxpbWl0ZWRcbiAqIHN0eWxpbmcgb2YgYHNlbGVjdGAsIHVubGVzcyBhIGBib3JkZXJgIHByb3BlcnR5IGlzIHNldC5cbiAqL1xuLyoqXG4gKiAxLiBDb3JyZWN0IGNvbG9yIG5vdCBiZWluZyBpbmhlcml0ZWQuXG4gKiAgICBLbm93biBpc3N1ZTogYWZmZWN0cyBjb2xvciBvZiBkaXNhYmxlZCBlbGVtZW50cy5cbiAqIDIuIENvcnJlY3QgZm9udCBwcm9wZXJ0aWVzIG5vdCBiZWluZyBpbmhlcml0ZWQuXG4gKiAzLiBBZGRyZXNzIG1hcmdpbnMgc2V0IGRpZmZlcmVudGx5IGluIEZpcmVmb3ggNCssIFNhZmFyaSwgYW5kIENocm9tZS5cbiAqL1xuYnV0dG9uLFxuaW5wdXQsXG5vcHRncm91cCxcbnNlbGVjdCxcbnRleHRhcmVhIHtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIC8qIDEgKi9cbiAgZm9udDogaW5oZXJpdDtcbiAgLyogMiAqL1xuICBtYXJnaW46IDA7XG4gIC8qIDMgKi8gfVxuXG4vKipcbiAqIEFkZHJlc3MgYG92ZXJmbG93YCBzZXQgdG8gYGhpZGRlbmAgaW4gSUUgOC85LzEwLzExLlxuICovXG5idXR0b24ge1xuICBvdmVyZmxvdzogdmlzaWJsZTsgfVxuXG4vKipcbiAqIEFkZHJlc3MgaW5jb25zaXN0ZW50IGB0ZXh0LXRyYW5zZm9ybWAgaW5oZXJpdGFuY2UgZm9yIGBidXR0b25gIGFuZCBgc2VsZWN0YC5cbiAqIEFsbCBvdGhlciBmb3JtIGNvbnRyb2wgZWxlbWVudHMgZG8gbm90IGluaGVyaXQgYHRleHQtdHJhbnNmb3JtYCB2YWx1ZXMuXG4gKiBDb3JyZWN0IGBidXR0b25gIHN0eWxlIGluaGVyaXRhbmNlIGluIEZpcmVmb3gsIElFIDgvOS8xMC8xMSwgYW5kIE9wZXJhLlxuICogQ29ycmVjdCBgc2VsZWN0YCBzdHlsZSBpbmhlcml0YW5jZSBpbiBGaXJlZm94LlxuICovXG5idXR0b24sXG5zZWxlY3Qge1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTsgfVxuXG4vKipcbiAqIDEuIEF2b2lkIHRoZSBXZWJLaXQgYnVnIGluIEFuZHJvaWQgNC4wLiogd2hlcmUgKDIpIGRlc3Ryb3lzIG5hdGl2ZSBgYXVkaW9gXG4gKiAgICBhbmQgYHZpZGVvYCBjb250cm9scy5cbiAqIDIuIENvcnJlY3QgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSBgaW5wdXRgIHR5cGVzIGluIGlPUy5cbiAqIDMuIEltcHJvdmUgdXNhYmlsaXR5IGFuZCBjb25zaXN0ZW5jeSBvZiBjdXJzb3Igc3R5bGUgYmV0d2VlbiBpbWFnZS10eXBlXG4gKiAgICBgaW5wdXRgIGFuZCBvdGhlcnMuXG4gKi9cbmJ1dHRvbixcbmh0bWwgaW5wdXRbdHlwZT1cImJ1dHRvblwiXSxcbmlucHV0W3R5cGU9XCJyZXNldFwiXSxcbmlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjtcbiAgLyogMiAqL1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIC8qIDMgKi8gfVxuXG4vKipcbiAqIFJlLXNldCBkZWZhdWx0IGN1cnNvciBmb3IgZGlzYWJsZWQgZWxlbWVudHMuXG4gKi9cbmJ1dHRvbltkaXNhYmxlZF0sXG5odG1sIGlucHV0W2Rpc2FibGVkXSB7XG4gIGN1cnNvcjogZGVmYXVsdDsgfVxuXG4vKipcbiAqIFJlbW92ZSBpbm5lciBwYWRkaW5nIGFuZCBib3JkZXIgaW4gRmlyZWZveCA0Ky5cbiAqL1xuYnV0dG9uOjotbW96LWZvY3VzLWlubmVyLFxuaW5wdXQ6Oi1tb3otZm9jdXMtaW5uZXIge1xuICBib3JkZXI6IDA7XG4gIHBhZGRpbmc6IDA7IH1cblxuLyoqXG4gKiBBZGRyZXNzIEZpcmVmb3ggNCsgc2V0dGluZyBgbGluZS1oZWlnaHRgIG9uIGBpbnB1dGAgdXNpbmcgYCFpbXBvcnRhbnRgIGluXG4gKiB0aGUgVUEgc3R5bGVzaGVldC5cbiAqL1xuaW5wdXQge1xuICBsaW5lLWhlaWdodDogbm9ybWFsOyB9XG5cbi8qKlxuICogSXQncyByZWNvbW1lbmRlZCB0aGF0IHlvdSBkb24ndCBhdHRlbXB0IHRvIHN0eWxlIHRoZXNlIGVsZW1lbnRzLlxuICogRmlyZWZveCdzIGltcGxlbWVudGF0aW9uIGRvZXNuJ3QgcmVzcGVjdCBib3gtc2l6aW5nLCBwYWRkaW5nLCBvciB3aWR0aC5cbiAqXG4gKiAxLiBBZGRyZXNzIGJveCBzaXppbmcgc2V0IHRvIGBjb250ZW50LWJveGAgaW4gSUUgOC85LzEwLlxuICogMi4gUmVtb3ZlIGV4Y2VzcyBwYWRkaW5nIGluIElFIDgvOS8xMC5cbiAqL1xuaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdLFxuaW5wdXRbdHlwZT1cInJhZGlvXCJdIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgLyogMSAqL1xuICBwYWRkaW5nOiAwO1xuICAvKiAyICovIH1cblxuLyoqXG4gKiBGaXggdGhlIGN1cnNvciBzdHlsZSBmb3IgQ2hyb21lJ3MgaW5jcmVtZW50L2RlY3JlbWVudCBidXR0b25zLiBGb3IgY2VydGFpblxuICogYGZvbnQtc2l6ZWAgdmFsdWVzIG9mIHRoZSBgaW5wdXRgLCBpdCBjYXVzZXMgdGhlIGN1cnNvciBzdHlsZSBvZiB0aGVcbiAqIGRlY3JlbWVudCBidXR0b24gdG8gY2hhbmdlIGZyb20gYGRlZmF1bHRgIHRvIGB0ZXh0YC5cbiAqL1xuaW5wdXRbdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcbmlucHV0W3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24ge1xuICBoZWlnaHQ6IGF1dG87IH1cblxuLyoqXG4gKiAxLiBBZGRyZXNzIGBhcHBlYXJhbmNlYCBzZXQgdG8gYHNlYXJjaGZpZWxkYCBpbiBTYWZhcmkgYW5kIENocm9tZS5cbiAqIDIuIEFkZHJlc3MgYGJveC1zaXppbmdgIHNldCB0byBgYm9yZGVyLWJveGAgaW4gU2FmYXJpIGFuZCBDaHJvbWUuXG4gKi9cbmlucHV0W3R5cGU9XCJzZWFyY2hcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IHRleHRmaWVsZDtcbiAgLyogMSAqL1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgLyogMiAqLyB9XG5cbi8qKlxuICogUmVtb3ZlIGlubmVyIHBhZGRpbmcgYW5kIHNlYXJjaCBjYW5jZWwgYnV0dG9uIGluIFNhZmFyaSBhbmQgQ2hyb21lIG9uIE9TIFguXG4gKiBTYWZhcmkgKGJ1dCBub3QgQ2hyb21lKSBjbGlwcyB0aGUgY2FuY2VsIGJ1dHRvbiB3aGVuIHRoZSBzZWFyY2ggaW5wdXQgaGFzXG4gKiBwYWRkaW5nIChhbmQgYHRleHRmaWVsZGAgYXBwZWFyYW5jZSkuXG4gKi9cbmlucHV0W3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWNhbmNlbC1idXR0b24sXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lOyB9XG5cbi8qKlxuICogRGVmaW5lIGNvbnNpc3RlbnQgYm9yZGVyLCBtYXJnaW4sIGFuZCBwYWRkaW5nLlxuICovXG5maWVsZHNldCB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjMGMwYzA7XG4gIG1hcmdpbjogMCAycHg7XG4gIHBhZGRpbmc6IDAuMzVlbSAwLjYyNWVtIDAuNzVlbTsgfVxuXG4vKipcbiAqIDEuIENvcnJlY3QgYGNvbG9yYCBub3QgYmVpbmcgaW5oZXJpdGVkIGluIElFIDgvOS8xMC8xMS5cbiAqIDIuIFJlbW92ZSBwYWRkaW5nIHNvIHBlb3BsZSBhcmVuJ3QgY2F1Z2h0IG91dCBpZiB0aGV5IHplcm8gb3V0IGZpZWxkc2V0cy5cbiAqL1xubGVnZW5kIHtcbiAgYm9yZGVyOiAwO1xuICAvKiAxICovXG4gIHBhZGRpbmc6IDA7XG4gIC8qIDIgKi8gfVxuXG4vKipcbiAqIFJlbW92ZSBkZWZhdWx0IHZlcnRpY2FsIHNjcm9sbGJhciBpbiBJRSA4LzkvMTAvMTEuXG4gKi9cbnRleHRhcmVhIHtcbiAgb3ZlcmZsb3c6IGF1dG87IH1cblxuLyoqXG4gKiBEb24ndCBpbmhlcml0IHRoZSBgZm9udC13ZWlnaHRgIChhcHBsaWVkIGJ5IGEgcnVsZSBhYm92ZSkuXG4gKiBOT1RFOiB0aGUgZGVmYXVsdCBjYW5ub3Qgc2FmZWx5IGJlIGNoYW5nZWQgaW4gQ2hyb21lIGFuZCBTYWZhcmkgb24gT1MgWC5cbiAqL1xub3B0Z3JvdXAge1xuICBmb250LXdlaWdodDogYm9sZDsgfVxuXG4vKiBUYWJsZXNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIFJlbW92ZSBtb3N0IHNwYWNpbmcgYmV0d2VlbiB0YWJsZSBjZWxscy5cbiAqL1xudGFibGUge1xuICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xuICBib3JkZXItc3BhY2luZzogMDsgfVxuXG50ZCxcbnRoIHtcbiAgcGFkZGluZzogMDsgfVxuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IFwiTmV4YVwiO1xuICBzcmM6IHVybChcIi4uL2ZvbnRzL25leGFfbGlnaHQtd2ViZm9udC5lb3RcIik7XG4gIHNyYzogdXJsKFwiLi4vZm9udHMvbmV4YV9saWdodC13ZWJmb250LmVvdD8jaWVmaXhcIikgZm9ybWF0KFwiZW1iZWRkZWQtb3BlbnR5cGVcIiksIHVybChcIi4uL2ZvbnRzL25leGFfbGlnaHQtd2ViZm9udC53b2ZmMlwiKSBmb3JtYXQoXCJ3b2ZmMlwiKSwgdXJsKFwiLi4vZm9udHMvbmV4YV9saWdodC13ZWJmb250LndvZmZcIikgZm9ybWF0KFwid29mZlwiKSwgdXJsKFwiLi4vZm9udHMvbmV4YV9saWdodC13ZWJmb250LnR0ZlwiKSBmb3JtYXQoXCJ0cnVldHlwZVwiKTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgZm9udC1zdHlsZTogbm9ybWFsOyB9XG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogXCJOZXhhXCI7XG4gIHNyYzogdXJsKFwiLi4vZm9udHMvbmV4YV9ib2xkLXdlYmZvbnQuZW90XCIpO1xuICBzcmM6IHVybChcIi4uL2ZvbnRzL25leGFfYm9sZC13ZWJmb250LmVvdD8jaWVmaXhcIikgZm9ybWF0KFwiZW1iZWRkZWQtb3BlbnR5cGVcIiksIHVybChcIi4uL2ZvbnRzL25leGFfYm9sZC13ZWJmb250LndvZmYyXCIpIGZvcm1hdChcIndvZmYyXCIpLCB1cmwoXCIuLi9mb250cy9uZXhhX2JvbGQtd2ViZm9udC53b2ZmXCIpIGZvcm1hdChcIndvZmZcIiksIHVybChcIi4uL2ZvbnRzL25leGFfYm9sZC13ZWJmb250LnR0ZlwiKSBmb3JtYXQoXCJ0cnVldHlwZVwiKTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDsgfVxuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IFwidHJhY2tpci1pY29uc1wiO1xuICBzcmM6IHVybChcIi4uL2ZvbnRzL3RyYWNraXItaWNvbnMuZW90PzU4NzMzMjQ5XCIpO1xuICBzcmM6IHVybChcIi4uL2ZvbnRzL3RyYWNraXItaWNvbnMuZW90PzU4NzMzMjQ5I2llZml4XCIpIGZvcm1hdChcImVtYmVkZGVkLW9wZW50eXBlXCIpLCB1cmwoXCIuLi9mb250cy90cmFja2lyLWljb25zLndvZmY/NTg3MzMyNDlcIikgZm9ybWF0KFwid29mZlwiKSwgdXJsKFwiLi4vZm9udHMvdHJhY2tpci1pY29ucy50dGY/NTg3MzMyNDlcIikgZm9ybWF0KFwidHJ1ZXR5cGVcIiksIHVybChcIi4uL2ZvbnRzL3RyYWNraXItaWNvbnMuc3ZnPzU4NzMzMjQ5I3RyYWNraXItaWNvbnNcIikgZm9ybWF0KFwic3ZnXCIpO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBmb250LXN0eWxlOiBub3JtYWw7IH1cblxuW2NsYXNzXj1cImljb24tXCJdOmJlZm9yZSwgW2NsYXNzKj1cIiBpY29uLVwiXTpiZWZvcmUsIGhlYWRlciBuYXZbcm9sZT1cIm5hdmlnYXRpb25cIl0gPiB1bCA+IGxpLmNhcnQgYTphZnRlciB7XG4gIGZvbnQtZmFtaWx5OiBcInRyYWNraXItaWNvbnNcIjtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBzcGVhazogbm9uZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB0ZXh0LWRlY29yYXRpb246IGluaGVyaXQ7XG4gIHdpZHRoOiAxZW07XG4gIG1hcmdpbi1yaWdodDogLjJlbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAvKiBGb3Igc2FmZXR5IC0gcmVzZXQgcGFyZW50IHN0eWxlcyB0aGF0IGNhbiBicmVhayBnbHlwaCBjb2RlcyAqL1xuICBmb250LXZhcmlhbnQ6IG5vcm1hbDtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIC8qIGZpeCBidXR0b25zIGhlaWdodCwgZm9yIHR3aXR0ZXIgYm9vdHN0cmFwICovXG4gIC8qIEFuaW1hdGlvbiBjZW50ZXIgY29tcGVuc2F0aW9uIC0gbWFyZ2lucyBzaG91bGQgYmUgc3ltbWV0cmljICovXG4gIC8qIHJlbW92ZSBpZiBub3QgbmVlZGVkICovXG4gIG1hcmdpbi1sZWZ0OiAuMmVtOyB9XG5cbi5pY29uLWJhc2tldDpiZWZvcmUge1xuICBjb250ZW50OiBcIu6ggFwiOyB9XG5cbi5pY29uLWNoZXZyb24tc21hbGwtcmlnaHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLuoIFcIjsgfVxuXG4uaWNvbi10d2l0Y2g6YmVmb3JlIHtcbiAgY29udGVudDogXCLupIBcIjsgfVxuXG4uaWNvbi15b3V0dWJlLXBsYXk6YmVmb3JlIHtcbiAgY29udGVudDogXCLupIFcIjsgfVxuXG4uaWNvbi10d2l0dGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7qSCXCI7IH1cblxuLmljb24tZmFjZWJvb2s6YmVmb3JlIHtcbiAgY29udGVudDogXCLupINcIjsgfVxuXG4uaWNvbi1yZWZyZXNoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7qCCXCI7IH1cblxuLmljb24tbGluay1leHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLuoINcIjsgfVxuXG4uaWNvbi1wbGF5LWNpcmNsZWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLuoIRcIjsgfVxuXG4uaWNvbi1ibG9jazpiZWZvcmUge1xuICBjb250ZW50OiBcIu6ghVwiOyB9XG5cbi5pY29uLW9rLWNpcmNsZWQyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7qCGXCI7IH1cblxuLmljb24tb2s6YmVmb3JlIHtcbiAgY29udGVudDogXCLuoIdcIjsgfVxuXG4uaWNvbi11cC1vcGVuLWJpZzpiZWZvcmUge1xuICBjb250ZW50OiBcIu6giVwiOyB9XG5cbi5pY29uLWRvd24tb3Blbi1iaWc6YmVmb3JlIHtcbiAgY29udGVudDogXCLuoIhcIjsgfVxuXG5ib2R5IHtcbiAgY29sb3I6ICNmYWU2Y2Q7XG4gIGZvbnQtZmFtaWx5OiBcIkFyaWFsXCIsIHNhbnMtc2VyaWY7XG4gIGxpbmUtaGVpZ2h0OiAxLjM7IH1cblxuYSB7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IH1cblxuaDEsIGgyLCBoMywgaDQsIGg1LCBoNiB7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDsgfVxuXG5oMSwgaDIge1xuICBmb250LWZhbWlseTogXCJOZXhhXCIsIHNhbnMtc2VyaWY7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cblxuaDMge1xuICBmb250LXdlaWdodDogYm9sZDsgfVxuXG5sYWJlbCB7XG4gIGNvbG9yOiB3aGl0ZTsgfVxuXG5jb2RlIHtcbiAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjMpIG5vbmUgcmVwZWF0IHNjcm9sbCAwJSAwJTtcbiAgY29sb3I6IHdoaXRlO1xuICBib3JkZXItcmFkaXVzOiA1cHg7XG4gIHBhZGRpbmc6IDFweCA5cHg7IH1cblxuYm9keSB7XG4gIGZvbnQtc2l6ZTogMTZweDsgfVxuXG5oMSB7XG4gIGZvbnQtc2l6ZTogNDVweDsgfVxuXG5oMiB7XG4gIGZvbnQtc2l6ZTogMzZweDsgfVxuXG5oMyB7XG4gIGZvbnQtc2l6ZTogMThweDsgfVxuXG4vKlxudWwge1xuICAgIEBpbmNsdWRlIGZsdXNoLWxpc3Q7XG59XG4qL1xuaHRtbCB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIG92ZXJmbG93LXk6IHNjcm9sbDsgfVxuXG4qLFxuKjpiZWZvcmUsXG4qOmFmdGVyIHtcbiAgYm94LXNpemluZzogaW5oZXJpdDsgfVxuXG5pbWcge1xuICBtYXgtd2lkdGg6IDEwMCU7IH1cblxuaHRtbCxcbmJvZHkge1xuICBoZWlnaHQ6IDEwMCU7IH1cblxubWFpbiB7XG4gIG1pbi1oZWlnaHQ6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206IC0yNDBweDsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICBtYWluIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IC0yMjVweDsgfSB9XG5cbm1haW46OmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogMjQwcHg7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgbWFpbjo6YWZ0ZXIge1xuICAgICAgaGVpZ2h0OiAyMjVweDsgfSB9XG5cbmJvZHkge1xuICBiYWNrZ3JvdW5kOiAjRUM4QTAwO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoLTkwZGVnLCAjRUM4QTAwIDAlLCAjRkE5QjAwIDEwJSwgI0ZGQTYwMCAyMCUsICNGRkE2MDAgODAlLCAjRkE5QjAwIDkwJSwgI0VDOEEwMCAxMDAlKSwgcmFkaWFsLWdyYWRpZW50KDUwJSA1MCUsICNGRkE2MDAgNTAlLCAjRkZBNjAwIDYwJSwgI0ZBOUIwMCA4MCUsICNFQzhBMDAgMTAwJSwgI0I2NUYwMCAxMzUlKTtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogbGVmdCAwIHRvcCAxMjA1MHB4LCB0b3AgY2VudGVyO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXNpemU6IGF1dG8gMTAwMDBweCwgMTAwJSAxMjAwMHB4OyB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICBoMSwgaDIge1xuICAgIG1hcmdpbi1ib3R0b206IDBweDsgfSB9XG5cbmlucHV0W3R5cGU9XCJ0ZXh0XCJdLFxuaW5wdXRbdHlwZT1cImVtYWlsXCJdLFxuaW5wdXRbdHlwZT1cInRlbFwiXSxcbnRleHRhcmVhIHtcbiAgZm9udC1zaXplOiAxM3B4O1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgcGFkZGluZzogNHB4IDEwcHg7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXJhZGl1czogNXB4O1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuMSk7IH1cbiAgaW5wdXRbdHlwZT1cInRleHRcIl06Zm9jdXMsIGlucHV0W3R5cGU9XCJ0ZXh0XCJdOmFjdGl2ZSxcbiAgaW5wdXRbdHlwZT1cImVtYWlsXCJdOmZvY3VzLFxuICBpbnB1dFt0eXBlPVwiZW1haWxcIl06YWN0aXZlLFxuICBpbnB1dFt0eXBlPVwidGVsXCJdOmZvY3VzLFxuICBpbnB1dFt0eXBlPVwidGVsXCJdOmFjdGl2ZSxcbiAgdGV4dGFyZWE6Zm9jdXMsXG4gIHRleHRhcmVhOmFjdGl2ZSB7XG4gICAgYm94LXNoYWRvdzogMCAwIDAgMXB4IHdoaXRlO1xuICAgIG91dGxpbmU6IG5vbmU7IH1cblxuaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSxcbmJ1dHRvbiB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLW91dDtcbiAgcGFkZGluZzogMTBweCA1MnB4O1xuICBib3JkZXI6IHNvbGlkIDFweCAjZmFlNmNkO1xuICBib3JkZXItcmFkaXVzOiA0MHB4O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cbiAgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXTpob3ZlcixcbiAgYnV0dG9uOmhvdmVyIHtcbiAgICBjb2xvcjogd2hpdGU7XG4gICAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjEpOyB9XG5cbnNlbGVjdCB7XG4gIGNvbG9yOiAjMDAwOyB9XG5cbmhlYWRlciB7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgNTAwbXMgZWFzZS1pbi1vdXQ7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjQ3LCAxNDYsIDAsIDApO1xuICBib3JkZXItYm90dG9tOiBzb2xpZCAxcHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjM1KTtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB3aWR0aDogMTAwJTtcbiAgdG9wOiAwO1xuICB6LWluZGV4OiAxMDAwO1xuICBoZWlnaHQ6IDYwcHg7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgaGVhZGVyIHtcbiAgICAgIGhlaWdodDogNzVweDsgfSB9XG4gIGhlYWRlci5tYWluLW5hdi1zY3JvbGxlZCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNDcsIDE0NiwgMCwgMC45KTsgfVxuICBoZWFkZXIgbmF2W3JvbGU9XCJuYXZpZ2F0aW9uXCJdIHtcbiAgICBtYXgtd2lkdGg6IDI5MHB4O1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICBwYWRkaW5nOiA1cHggMHB4IDdweDsgfVxuICAgIGhlYWRlciBuYXZbcm9sZT1cIm5hdmlnYXRpb25cIl06YWZ0ZXIge1xuICAgICAgY29udGVudDogXCIgXCI7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICBoZWFkZXIgbmF2W3JvbGU9XCJuYXZpZ2F0aW9uXCJdIHtcbiAgICAgICAgbWF4LXdpZHRoOiA3MDJweDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICAgIG1hcmdpbi1yaWdodDogYXV0bzsgfVxuICAgICAgICBoZWFkZXIgbmF2W3JvbGU9XCJuYXZpZ2F0aW9uXCJdOmFmdGVyIHtcbiAgICAgICAgICBjb250ZW50OiBcIiBcIjtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBjbGVhcjogYm90aDsgfSB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICBoZWFkZXIgbmF2W3JvbGU9XCJuYXZpZ2F0aW9uXCJdIHtcbiAgICAgICAgcGFkZGluZzogMzBweCAwIDE4cHg7IH0gfVxuICAgIGhlYWRlciBuYXZbcm9sZT1cIm5hdmlnYXRpb25cIl0gLnRyYWNraXItbG9nbyBhIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAyNS40MjM3MyU7IH1cbiAgICBoZWFkZXIgbmF2W3JvbGU9XCJuYXZpZ2F0aW9uXCJdIC50cmFja2lyLWxvZ28gaW1nIHtcbiAgICAgIHdpZHRoOiAxNDRweDtcbiAgICAgIGhlaWdodDogYXV0bzsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgaGVhZGVyIG5hdltyb2xlPVwibmF2aWdhdGlvblwiXSAudHJhY2tpci1sb2dvIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG4gICAgaGVhZGVyIG5hdltyb2xlPVwibmF2aWdhdGlvblwiXSBhIHtcbiAgICAgIHBhZGRpbmc6IDAgNHB4O1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgY29sb3I6ICNmYWU2Y2Q7XG4gICAgICBmb250LXNpemU6IDEzcHg7IH1cbiAgICBoZWFkZXIgbmF2W3JvbGU9XCJuYXZpZ2F0aW9uXCJdIGxpOmZpcnN0LWNoaWxkIGEge1xuICAgICAgcGFkZGluZy1sZWZ0OiAwOyB9XG4gICAgaGVhZGVyIG5hdltyb2xlPVwibmF2aWdhdGlvblwiXSBsaTpsYXN0LWNoaWxkIGEge1xuICAgICAgcGFkZGluZy1yaWdodDogMDsgfVxuICAgIGhlYWRlciBuYXZbcm9sZT1cIm5hdmlnYXRpb25cIl0gPiB1bCB7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgbWFyZ2luLXRvcDogNXB4O1xuICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgIHRleHQtYWxpZ246IGp1c3RpZnk7IH1cbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgICBoZWFkZXIgbmF2W3JvbGU9XCJuYXZpZ2F0aW9uXCJdID4gdWwge1xuICAgICAgICAgIG1hcmdpbi10b3A6IC00cHg7IH0gfVxuICAgICAgaGVhZGVyIG5hdltyb2xlPVwibmF2aWdhdGlvblwiXSA+IHVsID4gbGkge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cbiAgICAgICAgaGVhZGVyIG5hdltyb2xlPVwibmF2aWdhdGlvblwiXSA+IHVsID4gbGkuY2FydCBhIHNwYW4ge1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICB0b3A6IC05OTk5OXB4O1xuICAgICAgICAgIGxlZnQ6IC05OTk5OXB4OyB9XG4gICAgICAgIGhlYWRlciBuYXZbcm9sZT1cIm5hdmlnYXRpb25cIl0gPiB1bCA+IGxpLmNhcnQgYTphZnRlciB7XG4gICAgICAgICAgY29udGVudDogXCLuoIBcIjsgfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAgIGhlYWRlciBuYXZbcm9sZT1cIm5hdmlnYXRpb25cIl0gPiB1bCBsaS5pbmxpbmUtdHJhY2tpci1sb2dvIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lOyB9IH1cbiAgICAgIGhlYWRlciBuYXZbcm9sZT1cIm5hdmlnYXRpb25cIl0gPiB1bCBsaS5pbmxpbmUtdHJhY2tpci1sb2dvIGltZyB7XG4gICAgICAgIGhlaWdodDogMTVweDsgfVxuICAgICAgaGVhZGVyIG5hdltyb2xlPVwibmF2aWdhdGlvblwiXSA+IHVsIGxpOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDZweDsgfVxuICAgICAgaGVhZGVyIG5hdltyb2xlPVwibmF2aWdhdGlvblwiXSA+IHVsIGxpOmxhc3QtY2hpbGQge1xuICAgICAgICBmbG9hdDogcmlnaHQ7IH1cbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgICBoZWFkZXIgbmF2W3JvbGU9XCJuYXZpZ2F0aW9uXCJdID4gdWwgbGk6bnRoLW9mLXR5cGUoMiksXG4gICAgICAgIGhlYWRlciBuYXZbcm9sZT1cIm5hdmlnYXRpb25cIl0gPiB1bCBsaTpudGgtb2YtdHlwZSgzKSB7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDYycHg7IH1cbiAgICAgICAgaGVhZGVyIG5hdltyb2xlPVwibmF2aWdhdGlvblwiXSA+IHVsIGxpOm50aC1vZi10eXBlKDQpLFxuICAgICAgICBoZWFkZXIgbmF2W3JvbGU9XCJuYXZpZ2F0aW9uXCJdID4gdWwgbGk6bnRoLW9mLXR5cGUoNSkge1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAyMnB4OyB9IH1cblxubWFpbiB7XG4gIHBhZGRpbmctdG9wOiA2MHB4OyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIG1haW4ge1xuICAgICAgcGFkZGluZy10b3A6IDc1cHg7IH0gfVxuXG5mb290ZXIge1xuICBiYWNrZ3JvdW5kOiAjMTYxNjE2O1xuICBmb250LXNpemU6IDEzcHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgcGFkZGluZzogMjVweCAwO1xuICBoZWlnaHQ6IDI0MHB4O1xuICBtYXJnaW4tdG9wOiAtMjQwcHg7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgZm9vdGVyIHtcbiAgICAgIHBhZGRpbmc6IDQwcHggMDtcbiAgICAgIGhlaWdodDogMjI1cHg7XG4gICAgICBtYXJnaW4tdG9wOiAtMjI1cHg7IH0gfVxuICBmb290ZXIgLnNvY2lhbC1saW5rcywgZm9vdGVyIG5hdi5hdXhpbGlhcnksIGZvb3RlciAuc29zdW1pIHtcbiAgICBtYXgtd2lkdGg6IDI5MHB4O1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bzsgfVxuICAgIGZvb3RlciAuc29jaWFsLWxpbmtzOmFmdGVyLCBmb290ZXIgbmF2LmF1eGlsaWFyeTphZnRlciwgZm9vdGVyIC5zb3N1bWk6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCIgXCI7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICBmb290ZXIgLnNvY2lhbC1saW5rcywgZm9vdGVyIG5hdi5hdXhpbGlhcnksIGZvb3RlciAuc29zdW1pIHtcbiAgICAgICAgbWF4LXdpZHRoOiA3MDJweDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICAgIG1hcmdpbi1yaWdodDogYXV0bzsgfVxuICAgICAgICBmb290ZXIgLnNvY2lhbC1saW5rczphZnRlciwgZm9vdGVyIG5hdi5hdXhpbGlhcnk6YWZ0ZXIsIGZvb3RlciAuc29zdW1pOmFmdGVyIHtcbiAgICAgICAgICBjb250ZW50OiBcIiBcIjtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBjbGVhcjogYm90aDsgfSB9XG4gIGZvb3RlciBhIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgY29sb3I6IHdoaXRlOyB9XG4gIGZvb3RlciAuc29jaWFsLWxpbmtzIHtcbiAgICBmb250LXNpemU6IDI4cHg7IH1cbiAgICBmb290ZXIgLnNvY2lhbC1saW5rcyBhIHtcbiAgICAgIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMzUpOyB9XG4gICAgZm9vdGVyIC5zb2NpYWwtbGlua3MgdWwge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogMDsgfVxuICAgICAgZm9vdGVyIC5zb2NpYWwtbGlua3MgdWwgPiBsaSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICAgICAgcGFkZGluZzogMCAxMHB4OyB9XG4gICAgICAgIGZvb3RlciAuc29jaWFsLWxpbmtzIHVsID4gbGkgLmljb24tdHdpdGNoIHtcbiAgICAgICAgICBmb250LXNpemU6IDI2cHg7IH1cbiAgICAgICAgZm9vdGVyIC5zb2NpYWwtbGlua3MgdWwgPiBsaSAubGFiZWwge1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICB0b3A6IC05OTk5OXB4O1xuICAgICAgICAgIGxlZnQ6IC05OTk5OXB4OyB9XG4gIGZvb3RlciBuYXYuYXV4aWxpYXJ5IHVsIHtcbiAgICBwYWRkaW5nOiAwOyB9XG4gICAgZm9vdGVyIG5hdi5hdXhpbGlhcnkgdWwgPiBsaSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgbWFyZ2luLWxlZnQ6IDAuNWVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDIuM2VtOyB9XG4gICAgICBmb290ZXIgbmF2LmF1eGlsaWFyeSB1bCA+IGxpOmJlZm9yZSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICAgICAgY29udGVudDogXCJcXDIwMjJcIjtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwLjNlbTsgfVxuICAgICAgZm9vdGVyIG5hdi5hdXhpbGlhcnkgdWwgPiBsaTpmaXJzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwOyB9XG4gICAgICAgIGZvb3RlciBuYXYuYXV4aWxpYXJ5IHVsID4gbGk6Zmlyc3QtY2hpbGQ6YmVmb3JlIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgICAgZm9vdGVyIG5hdi5hdXhpbGlhcnkgdWwgPiBsaTpudGgtb2YtdHlwZSg1KSwgZm9vdGVyIG5hdi5hdXhpbGlhcnkgdWwgPiBsaTpudGgtb2YtdHlwZSg4KSB7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgICAgICAgICBmb290ZXIgbmF2LmF1eGlsaWFyeSB1bCA+IGxpOm50aC1vZi10eXBlKDUpOmJlZm9yZSwgZm9vdGVyIG5hdi5hdXhpbGlhcnkgdWwgPiBsaTpudGgtb2YtdHlwZSg4KTpiZWZvcmUge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgZm9vdGVyIG5hdi5hdXhpbGlhcnkgdWwgPiBsaTpudGgtb2YtdHlwZSg5KSB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgICAgICAgICBmb290ZXIgbmF2LmF1eGlsaWFyeSB1bCA+IGxpOm50aC1vZi10eXBlKDkpOmJlZm9yZSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lOyB9IH1cbiAgZm9vdGVyIC5jb3B5cmlnaHQsXG4gIGZvb3RlciAuYWxsLXJpZ2h0cy1yZXNlcnZlZCB7XG4gICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4zNSk7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgIGZvb3RlciAuY29weXJpZ2h0LFxuICAgICAgZm9vdGVyIC5hbGwtcmlnaHRzLXJlc2VydmVkIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7IH0gfVxuXG5baWQ9XCJmZWF0dXJlZC1wcm9kdWN0c1wiXSB7XG4gIHBhZGRpbmc6IDI1cHggMCAzMHB4O1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICBbaWQ9XCJmZWF0dXJlZC1wcm9kdWN0c1wiXSB7XG4gICAgICBwYWRkaW5nOiAyNXB4IDAgNjVweDsgfSB9XG4gIFtpZD1cImZlYXR1cmVkLXByb2R1Y3RzXCJdIGEuY3RhIHtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLW91dDtcbiAgICBwYWRkaW5nOiAxMHB4IDUycHg7XG4gICAgYm9yZGVyOiBzb2xpZCAxcHggI2ZhZTZjZDtcbiAgICBib3JkZXItcmFkaXVzOiA0MHB4O1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cbiAgICBbaWQ9XCJmZWF0dXJlZC1wcm9kdWN0c1wiXSBhLmN0YTpob3ZlciB7XG4gICAgICBjb2xvcjogd2hpdGU7XG4gICAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuMSk7IH1cbiAgW2lkPVwiZmVhdHVyZWQtcHJvZHVjdHNcIl0gLnByb2R1Y3RzIHtcbiAgICBtYXgtd2lkdGg6IDI5MHB4O1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bzsgfVxuICAgIFtpZD1cImZlYXR1cmVkLXByb2R1Y3RzXCJdIC5wcm9kdWN0czphZnRlciB7XG4gICAgICBjb250ZW50OiBcIiBcIjtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgIFtpZD1cImZlYXR1cmVkLXByb2R1Y3RzXCJdIC5wcm9kdWN0cyB7XG4gICAgICAgIG1heC13aWR0aDogNzAycHg7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87IH1cbiAgICAgICAgW2lkPVwiZmVhdHVyZWQtcHJvZHVjdHNcIl0gLnByb2R1Y3RzOmFmdGVyIHtcbiAgICAgICAgICBjb250ZW50OiBcIiBcIjtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBjbGVhcjogYm90aDsgfSB9XG4gIFtpZD1cImZlYXR1cmVkLXByb2R1Y3RzXCJdIC5wcm9kdWN0IHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgIFtpZD1cImZlYXR1cmVkLXByb2R1Y3RzXCJdIC5wcm9kdWN0IHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNjVweDsgfSB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICBbaWQ9XCJmZWF0dXJlZC1wcm9kdWN0c1wiXSAucHJvZHVjdDpsYXN0LWNoaWxkIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMzVweDsgfSB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICBbaWQ9XCJmZWF0dXJlZC1wcm9kdWN0c1wiXSAucHJvZHVjdCB7XG4gICAgICAgIHdpZHRoOiAzMi4yMDMzOSU7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDEuNjk0OTIlOyB9XG4gICAgICAgIFtpZD1cImZlYXR1cmVkLXByb2R1Y3RzXCJdIC5wcm9kdWN0Omxhc3QtY2hpbGQge1xuICAgICAgICAgIHdpZHRoOiAzMi4yMDMzOSU7XG4gICAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogMDsgfSB9XG4gICAgW2lkPVwiZmVhdHVyZWQtcHJvZHVjdHNcIl0gLnByb2R1Y3QgcCB7XG4gICAgICBtYXJnaW46IDEwcHggMCAtNXB4OyB9XG4gICAgW2lkPVwiZmVhdHVyZWQtcHJvZHVjdHNcIl0gLnByb2R1Y3QgcC5wcmljZSB7XG4gICAgICBwYWRkaW5nLXRvcDogMHB4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDsgfVxuICAgIFtpZD1cImZlYXR1cmVkLXByb2R1Y3RzXCJdIC5wcm9kdWN0IGZpZ3VyZSB7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBtYXJnaW46IDAgYXV0byAyMHB4O1xuICAgICAgaGVpZ2h0OiAxNzVweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxNzVweDtcbiAgICAgIHdpZHRoOiAyODBweDsgfVxuICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAgIFtpZD1cImZlYXR1cmVkLXByb2R1Y3RzXCJdIC5wcm9kdWN0IGZpZ3VyZSB7XG4gICAgICAgICAgd2lkdGg6IDIyMHB4OyB9IH1cbiAgICAgIFtpZD1cImZlYXR1cmVkLXByb2R1Y3RzXCJdIC5wcm9kdWN0IGZpZ3VyZSBpbWcge1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgIG1heC1oZWlnaHQ6IDEwMCU7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBib3R0b207IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgIFtpZD1cImZlYXR1cmVkLXByb2R1Y3RzXCJdIC5wcm9kdWN0W2lkPVwidHJhY2tjbGlwLXByb1wiXSBmaWd1cmUge1xuICAgICAgICBoZWlnaHQ6IDIyNXB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMjI1cHg7IH0gfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgW2lkPVwiZmVhdHVyZWQtcHJvZHVjdHNcIl0gLnByb2R1Y3RbaWQ9XCJ0cmFja2NsaXAtcHJvXCJdIGZpZ3VyZSBpbWcge1xuICAgICAgICBoZWlnaHQ6IDE0MHB4OyB9IH1cbiAgICBbaWQ9XCJmZWF0dXJlZC1wcm9kdWN0c1wiXSAucHJvZHVjdFtpZD1cInRpcjVcIl0gZmlndXJlIHtcbiAgICAgIHdpZHRoOiAyMTBweDsgfVxuICAgIFtpZD1cImZlYXR1cmVkLXByb2R1Y3RzXCJdIC5wcm9kdWN0W2lkPVwidGlyNS1wcm8tYnVuZGxlXCJdIGZpZ3VyZSB7XG4gICAgICB3aWR0aDogMjgwcHg7IH1cbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgICBbaWQ9XCJmZWF0dXJlZC1wcm9kdWN0c1wiXSAucHJvZHVjdFtpZD1cInRpcjUtcHJvLWJ1bmRsZVwiXSBmaWd1cmUge1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtMjlweDsgfSB9XG5cbmJvZHkuaG9tZSBtYWluIHtcbiAgb3BhY2l0eTogMDtcbiAgYW5pbWF0aW9uLW5hbWU6IGZhZGUtc2l0ZS1pbjtcbiAgYW5pbWF0aW9uLWR1cmF0aW9uOiAycztcbiAgYW5pbWF0aW9uLWZpbGwtbW9kZTogZm9yd2FyZHM7XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cblxuQGtleWZyYW1lcyBmYWRlLXNpdGUtaW4ge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDsgfVxuICAzMCUge1xuICAgIG9wYWNpdHk6IDA7IH1cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMTsgfSB9XG4gIGJvZHkuaG9tZSBtYWluIHNlY3Rpb24ge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAgIGJvZHkuaG9tZSBtYWluIHNlY3Rpb24gYS5jdGEge1xuICAgICAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1vdXQ7XG4gICAgICBwYWRkaW5nOiAxMHB4IDUycHg7XG4gICAgICBib3JkZXI6IHNvbGlkIDFweCAjZmFlNmNkO1xuICAgICAgYm9yZGVyLXJhZGl1czogNDBweDtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICAgICAgYm9keS5ob21lIG1haW4gc2VjdGlvbiBhLmN0YTpob3ZlciB7XG4gICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjEpOyB9XG5cbmJvZHkuaG9tZSBoMSB7XG4gIGZvbnQtc2l6ZTogMzZweDsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICBib2R5LmhvbWUgaDEge1xuICAgICAgZm9udC1zaXplOiA0NXB4OyB9IH1cblxuYm9keS5ob21lIGgyIHtcbiAgZm9udC1zaXplOiAyOHB4OyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIGJvZHkuaG9tZSBoMiB7XG4gICAgICBmb250LXNpemU6IDQ1cHg7IH0gfVxuXG5ib2R5LmhvbWUgW2lkPVwiaW50cm9cIl0ge1xuICBtYXgtd2lkdGg6IDI5MHB4O1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXJnaW4tdG9wOiA2MHB4O1xuICBtYXJnaW4tYm90dG9tOiA0MHB4OyB9XG4gIGJvZHkuaG9tZSBbaWQ9XCJpbnRyb1wiXTphZnRlciB7XG4gICAgY29udGVudDogXCIgXCI7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgYm9keS5ob21lIFtpZD1cImludHJvXCJdIHtcbiAgICAgIG1heC13aWR0aDogNzAycHg7XG4gICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgIG1hcmdpbi1yaWdodDogYXV0bzsgfVxuICAgICAgYm9keS5ob21lIFtpZD1cImludHJvXCJdOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCIgXCI7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBjbGVhcjogYm90aDsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgIGJvZHkuaG9tZSBbaWQ9XCJpbnRyb1wiXSB7XG4gICAgICBtaW4taGVpZ2h0OiA5OHB4OyB9IH1cbiAgYm9keS5ob21lIFtpZD1cImludHJvXCJdIC50eXBlZCBzcGFuIHtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gICAgdG9wOiAtMjJweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgYm9keS5ob21lIFtpZD1cImludHJvXCJdIGgxIHtcbiAgICBmb250LXNpemU6IDM2cHg7IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgIGJvZHkuaG9tZSBbaWQ9XCJpbnRyb1wiXSBoMSB7XG4gICAgICAgIGZvbnQtc2l6ZTogNDVweDsgfSB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICBib2R5LmhvbWUgW2lkPVwiaW50cm9cIl0gaDEgYnIge1xuICAgICAgICBkaXNwbGF5OiBub25lOyB9IH1cbiAgYm9keS5ob21lIFtpZD1cImludHJvXCJdIC5jb250ZW50IGgzIHtcbiAgICBtYXJnaW4tdG9wOiA3MDBweDsgfVxuXG5ib2R5LmhvbWUgLm1vbml0b3ItY29udGFpbmVyIHtcbiAgbWF4LXdpZHRoOiAyOTBweDtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgaGVpZ2h0OiA1ODBweDsgfVxuICBib2R5LmhvbWUgLm1vbml0b3ItY29udGFpbmVyOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIiBcIjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjbGVhcjogYm90aDsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICBib2R5LmhvbWUgLm1vbml0b3ItY29udGFpbmVyIHtcbiAgICAgIG1heC13aWR0aDogNzAycHg7XG4gICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgIG1hcmdpbi1yaWdodDogYXV0bzsgfVxuICAgICAgYm9keS5ob21lIC5tb25pdG9yLWNvbnRhaW5lcjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgY2xlYXI6IGJvdGg7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICBib2R5LmhvbWUgLm1vbml0b3ItY29udGFpbmVyIHtcbiAgICAgIGhlaWdodDogNTMwcHg7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICBib2R5LmhvbWUgLm1vbml0b3ItY29udGFpbmVyIC5zdGF0aWMtZmFsbGJhY2sge1xuICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgIGJvZHkuaG9tZSAubW9uaXRvci1jb250YWluZXIgLmRpc3BsYXktc3Vycm91bmQsXG4gICAgYm9keS5ob21lIC5tb25pdG9yLWNvbnRhaW5lciAuZGVtby12aWRlbyB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9IH1cbiAgYm9keS5ob21lIC5tb25pdG9yLWNvbnRhaW5lciBhIHtcbiAgICB3aWR0aDogMjY5LjQ5MTUzJTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBtYXJnaW4tcmlnaHQ6IDEuNjk0OTIlO1xuICAgIG1hcmdpbi1sZWZ0OiAtODQuNzQ1NzYlOyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICBib2R5LmhvbWUgLm1vbml0b3ItY29udGFpbmVyIGEge1xuICAgICAgICB3aWR0aDogMTE2Ljk0OTE1JTtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMS42OTQ5MiU7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAtOC40NzQ1OCU7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICBib2R5LmhvbWUgLm1vbml0b3ItY29udGFpbmVyIGltZyB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAtMjAxcHg7XG4gICAgICBvcGFjaXR5OiAuOTk7IH0gfVxuICBib2R5LmhvbWUgLm1vbml0b3ItY29udGFpbmVyIHZpZGVvIHtcbiAgICBtYXJnaW4tdG9wOiAtMTIwMHB4O1xuICAgIG1hcmdpbi1sZWZ0OiAzOXB4O1xuICAgIHdpZHRoOiA3NDZweDsgfVxuXG5ib2R5LmhvbWUgW2lkPVwiaW50cm8tY3RhXCJdIHtcbiAgbWF4LXdpZHRoOiAyOTBweDtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgbWFyZ2luLWJvdHRvbTogNTBweDsgfVxuICBib2R5LmhvbWUgW2lkPVwiaW50cm8tY3RhXCJdOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIiBcIjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjbGVhcjogYm90aDsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICBib2R5LmhvbWUgW2lkPVwiaW50cm8tY3RhXCJdIHtcbiAgICAgIG1heC13aWR0aDogNzAycHg7XG4gICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgIG1hcmdpbi1yaWdodDogYXV0bzsgfVxuICAgICAgYm9keS5ob21lIFtpZD1cImludHJvLWN0YVwiXTphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgY2xlYXI6IGJvdGg7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICBib2R5LmhvbWUgW2lkPVwiaW50cm8tY3RhXCJdIC5jYWxsLXRvLWFjdGlvbiB7XG4gICAgICB3aWR0aDogODMuMDUwODUlO1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDEuNjk0OTIlO1xuICAgICAgbWFyZ2luLWxlZnQ6IDguNDc0NTglOyB9IH1cbiAgYm9keS5ob21lIFtpZD1cImludHJvLWN0YVwiXSAuY2FsbC10by1hY3Rpb24gYS5jdGEge1xuICAgIG1hcmdpbi10b3A6IDIwcHg7IH1cbiAgYm9keS5ob21lIFtpZD1cImludHJvLWN0YVwiXSAuY2FsbC10by1hY3Rpb24gLmNhbGwtdG8tYWN0aW9uLWxpbmtzIGEge1xuICAgIHdpZHRoOiAyODBweDsgfVxuXG5ib2R5LmhvbWUgW2lkPVwiZmVhdHVyZWQtcHJvZHVjdHNcIl0ge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuMSk7IH1cblxuYm9keS5ob21lIFtpZD1cImdhbWVyLXRlc3RpbW9uaWFsc1wiXSB7XG4gIG1heC13aWR0aDogMjkwcHg7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1hcmdpbi10b3A6IDUwcHg7XG4gIG1hcmdpbi1ib3R0b206IDUwcHg7IH1cbiAgYm9keS5ob21lIFtpZD1cImdhbWVyLXRlc3RpbW9uaWFsc1wiXTphZnRlciB7XG4gICAgY29udGVudDogXCIgXCI7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgYm9keS5ob21lIFtpZD1cImdhbWVyLXRlc3RpbW9uaWFsc1wiXSB7XG4gICAgICBtYXgtd2lkdGg6IDcwMnB4O1xuICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87IH1cbiAgICAgIGJvZHkuaG9tZSBbaWQ9XCJnYW1lci10ZXN0aW1vbmlhbHNcIl06YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcIiBcIjtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGNsZWFyOiBib3RoOyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgYm9keS5ob21lIFtpZD1cImdhbWVyLXRlc3RpbW9uaWFsc1wiXSB7XG4gICAgICBtYXJnaW4tdG9wOiA4MHB4OyB9IH1cbiAgYm9keS5ob21lIFtpZD1cImdhbWVyLXRlc3RpbW9uaWFsc1wiXSAudGVzdGltb25pYWwtY29udGFpbmVyIHtcbiAgICBtYXJnaW4tdG9wOiA1MHB4O1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gIGJvZHkuaG9tZSBbaWQ9XCJnYW1lci10ZXN0aW1vbmlhbHNcIl0gLnRlc3RpbW9uaWFsIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWJvdHRvbTogNTBweDsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgYm9keS5ob21lIFtpZD1cImdhbWVyLXRlc3RpbW9uaWFsc1wiXSAudGVzdGltb25pYWwge1xuICAgICAgICB3aWR0aDogNDkuMTUyNTQlO1xuICAgICAgICBmbG9hdDogbGVmdDsgfVxuICAgICAgICBib2R5LmhvbWUgW2lkPVwiZ2FtZXItdGVzdGltb25pYWxzXCJdIC50ZXN0aW1vbmlhbDpudGgtY2hpbGQoMm4gKyAxKSB7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAtMTAwJTtcbiAgICAgICAgICBjbGVhcjogYm90aDtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogMDsgfVxuICAgICAgICBib2R5LmhvbWUgW2lkPVwiZ2FtZXItdGVzdGltb25pYWxzXCJdIC50ZXN0aW1vbmlhbDpudGgtY2hpbGQoMm4gKyAyKSB7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDUwLjg0NzQ2JTtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IC0xMDAlO1xuICAgICAgICAgIGNsZWFyOiBub25lOyB9IH1cbiAgYm9keS5ob21lIFtpZD1cImdhbWVyLXRlc3RpbW9uaWFsc1wiXSBpbWcge1xuICAgIGNsZWFyOiBib3RoO1xuICAgIHdpZHRoOiAxNS4yNTQyNCU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgbWFyZ2luLXJpZ2h0OiAxLjY5NDkyJTtcbiAgICB3aWR0aDogNDBweDsgfVxuICBib2R5LmhvbWUgW2lkPVwiZ2FtZXItdGVzdGltb25pYWxzXCJdIC5xdW90ZSB7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIG1hcmdpbi10b3A6IDBweDtcbiAgICB3aWR0aDogODMuMDUwODUlO1xuICAgIGZsb2F0OiByaWdodDtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgdGV4dC1hbGlnbjogbGVmdDsgfVxuICAgIGJvZHkuaG9tZSBbaWQ9XCJnYW1lci10ZXN0aW1vbmlhbHNcIl0gLnF1b3RlIGEge1xuICAgICAgbWFyZ2luLWxlZnQ6IC0ycHg7IH1cbiAgICBib2R5LmhvbWUgW2lkPVwiZ2FtZXItdGVzdGltb25pYWxzXCJdIC5xdW90ZSAucGVyc29uIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgbWFyZ2luLXRvcDogMTJweDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDBweDtcbiAgICAgIGNvbG9yOiB3aGl0ZTsgfVxuXG5ib2R5LmhvbWUgW2lkPVwiZmVhdHVyZWQtZ2FtZXNcIl0ge1xuICBiYWNrZ3JvdW5kOiAjMjMyMzIzIG5vbmUgcmVwZWF0IDAgMDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4zNSk7XG4gIHBhZGRpbmctYm90dG9tOiA4MHB4O1xuICBwYWRkaW5nLXRvcDogMjBweDsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICBib2R5LmhvbWUgW2lkPVwiZmVhdHVyZWQtZ2FtZXNcIl0ge1xuICAgICAgcGFkZGluZzogNTBweCBhdXRvOyB9IH1cbiAgYm9keS5ob21lIFtpZD1cImZlYXR1cmVkLWdhbWVzXCJdIC5nYW1lcy13cmFwIHtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4OyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICBib2R5LmhvbWUgW2lkPVwiZmVhdHVyZWQtZ2FtZXNcIl0gLmdhbWVzLXdyYXAge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA2MHB4O1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICBvdmVyZmxvdy14OiBoaWRkZW47IH0gfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgYm9keS5ob21lIFtpZD1cImZlYXR1cmVkLWdhbWVzXCJdIC5nYW1lcy13cmFwIC5nYW1lcyB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgdG9wOiAxN3B4OyB9IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgIGJvZHkuaG9tZSBbaWQ9XCJmZWF0dXJlZC1nYW1lc1wiXSAuZ2FtZXMtd3JhcCAuZ2FtZXMgLmdhbWVzLWxpc3Qge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgfSB9XG4gICAgYm9keS5ob21lIFtpZD1cImZlYXR1cmVkLWdhbWVzXCJdIC5nYW1lcy13cmFwIC5nYW1lcyAuZ2FtZXMtbGlzdCAuZ2FtZS1iYWNrZ3JvdW5kIHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvdHJhY2tpci1lbmhhbmNlZC1nYW1lcy12ZXJ0aWNhbC5wbmcpO1xuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgIGhlaWdodDogNDAwcHg7IH1cbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgICBib2R5LmhvbWUgW2lkPVwiZmVhdHVyZWQtZ2FtZXNcIl0gLmdhbWVzLXdyYXAgLmdhbWVzIC5nYW1lcy1saXN0IC5nYW1lLWJhY2tncm91bmQge1xuICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvdHJhY2tpci1lbmhhbmNlZC1nYW1lcy1ob3Jpem9udGFsLnBuZyk7XG4gICAgICAgICAgaGVpZ2h0OiAyMTBweDtcbiAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogYXV0byBhdXRvO1xuICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG4gICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDsgfSB9XG5cbmJvZHkuaG9tZSAudHlwZWQtY3Vyc29yIHtcbiAgb3BhY2l0eTogMTtcbiAgYW5pbWF0aW9uOiBjdXJzb3ItYmxpbmsgMXMgaW5maW5pdGU7XG4gIGZvbnQtZmFtaWx5OiBcIkFyaWFsXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiAxMDA7IH1cblxuQGtleWZyYW1lcyBjdXJzb3ItYmxpbmsge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMTsgfVxuICA1MCUge1xuICAgIG9wYWNpdHk6IDA7IH1cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMTsgfSB9XG5cbmJvZHkuaG9tZSBmb290ZXIge1xuICBvcGFjaXR5OiAuOTk7XG4gIGJhY2tncm91bmQ6ICMyMzIzMjMgbm9uZSByZXBlYXQgMCAwOyB9XG5cbmJvZHkuY2FydCAuZWRpdGNhcnQge1xuICBtYXgtd2lkdGg6IDI5MHB4O1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgYm9keS5jYXJ0IC5lZGl0Y2FydDphZnRlciB7XG4gICAgY29udGVudDogXCIgXCI7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgYm9keS5jYXJ0IC5lZGl0Y2FydCB7XG4gICAgICBtYXgtd2lkdGg6IDcwMnB4O1xuICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87IH1cbiAgICAgIGJvZHkuY2FydCAuZWRpdGNhcnQ6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcIiBcIjtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGNsZWFyOiBib3RoOyB9IH1cbiAgYm9keS5jYXJ0IC5lZGl0Y2FydCBbaWQ9XCJjb250aW51ZVNob3BwaW5nXCJdIHtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLW91dDtcbiAgICBwYWRkaW5nOiAxMHB4IDUycHg7XG4gICAgYm9yZGVyOiBzb2xpZCAxcHggI2ZhZTZjZDtcbiAgICBib3JkZXItcmFkaXVzOiA0MHB4O1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luLXRvcDogMzVweDtcbiAgICBtYXJnaW4tYm90dG9tOiAzNXB4OyB9XG4gICAgYm9keS5jYXJ0IC5lZGl0Y2FydCBbaWQ9XCJjb250aW51ZVNob3BwaW5nXCJdOmhvdmVyIHtcbiAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC4xKTsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgYm9keS5jYXJ0IC5lZGl0Y2FydCBbaWQ9XCJjb250aW51ZVNob3BwaW5nXCJdIHtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICBib2R5LmNhcnQgLmVkaXRjYXJ0IFtpZD1cImNvbnRpbnVlU2hvcHBpbmdcIl0gKyBhIHtcbiAgICAgIGZsb2F0OiByaWdodDsgfSB9XG4gIGJvZHkuY2FydCAuZWRpdGNhcnQgLml0ZW1zIHtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIHBhZGRpbmctbGVmdDogMDsgfVxuICBib2R5LmNhcnQgLmVkaXRjYXJ0IC5pdGVtIHtcbiAgICBwYWRkaW5nOiAyNXB4IDBweDtcbiAgICBib3JkZXItYm90dG9tOiBzb2xpZCAxcHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpOyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICBib2R5LmNhcnQgLmVkaXRjYXJ0IC5pdGVtIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBtaW4taGVpZ2h0OiAyMHB4OyB9IH1cbiAgICBib2R5LmNhcnQgLmVkaXRjYXJ0IC5pdGVtIC5tb25pa2VyIHtcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7IH1cbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgICBib2R5LmNhcnQgLmVkaXRjYXJ0IC5pdGVtIC5tb25pa2VyIHtcbiAgICAgICAgICB3aWR0aDogMjgwcHg7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlOyB9XG4gICAgICAgICAgYm9keS5jYXJ0IC5lZGl0Y2FydCAuaXRlbSAubW9uaWtlciBoMyB7XG4gICAgICAgICAgICBtYXJnaW46IDA7IH0gfVxuICAgICAgYm9keS5jYXJ0IC5lZGl0Y2FydCAuaXRlbSAubW9uaWtlciAucGFydC5udW1iZXIge1xuICAgICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgYm9keS5jYXJ0IC5lZGl0Y2FydCAuaXRlbSAucHJpY2Uge1xuICAgICAgdGV4dC1hbGlnbjogbGVmdDsgfVxuICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAgIGJvZHkuY2FydCAuZWRpdGNhcnQgLml0ZW0gLnByaWNlIHtcbiAgICAgICAgICBsZWZ0OiAzNDBweDtcbiAgICAgICAgICB3aWR0aDogNjBweDtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7IH0gfVxuICAgIGJvZHkuY2FydCAuZWRpdGNhcnQgLml0ZW0gLm11bHRpcGx5LnNpZ24ge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAgIGJvZHkuY2FydCAuZWRpdGNhcnQgLml0ZW0gLm11bHRpcGx5LnNpZ24ge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICBsZWZ0OiA0MTBweDsgfSB9XG4gICAgYm9keS5jYXJ0IC5lZGl0Y2FydCAuaXRlbSBmaWVsZHNldCB7XG4gICAgICBib3JkZXI6IG5vbmU7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgICBib2R5LmNhcnQgLmVkaXRjYXJ0IC5pdGVtIGZpZWxkc2V0IHtcbiAgICAgICAgICBwYWRkaW5nOiAxNXB4IDA7IH0gfVxuICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAgIGJvZHkuY2FydCAuZWRpdGNhcnQgLml0ZW0gZmllbGRzZXQge1xuICAgICAgICAgIHBhZGRpbmc6IDBweDsgfSB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgICAgYm9keS5jYXJ0IC5lZGl0Y2FydCAuaXRlbSBmaWVsZHNldCBpbnB1dFtuYW1lPVwicXVhbnRcIl0ge1xuICAgICAgICAgIG1hcmdpbi10b3A6IC00MHB4O1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogOTBweDtcbiAgICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgICAgd2lkdGg6IDUwcHg7XG4gICAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7IH0gfVxuICAgICAgYm9keS5jYXJ0IC5lZGl0Y2FydCAuaXRlbSBmaWVsZHNldCBidXR0b25bdHlwZT1cInN1Ym1pdFwiXSB7XG4gICAgICAgIGJvcmRlcjogbWVkaXVtIG5vbmU7XG4gICAgICAgIHBhZGRpbmc6IDE1cHggMHB4OyB9XG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgICAgIGJvZHkuY2FydCAuZWRpdGNhcnQgLml0ZW0gZmllbGRzZXQgYnV0dG9uW3R5cGU9XCJzdWJtaXRcIl0ge1xuICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0OyB9IH1cbiAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAgICAgYm9keS5jYXJ0IC5lZGl0Y2FydCAuaXRlbSBmaWVsZHNldCBidXR0b25bdHlwZT1cInN1Ym1pdFwiXSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAwcHggMHB4OyB9IH1cbiAgICAgIGJvZHkuY2FydCAuZWRpdGNhcnQgLml0ZW0gZmllbGRzZXQgYnV0dG9uW3R5cGU9XCJzdWJtaXRcIl06aG92ZXIsXG4gICAgICBib2R5LmNhcnQgLmVkaXRjYXJ0IC5pdGVtIGZpZWxkc2V0IGJ1dHRvblt0eXBlPVwic3VibWl0XCJdOmFjdGl2ZSB7XG4gICAgICAgIGJhY2tncm91bmQ6IG5vbmU7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgIGJvZHkuY2FydCAuZWRpdGNhcnQgLml0ZW0gZm9ybS51cGRhdGUucXVhbnRpdHkge1xuICAgICAgICBtYXJnaW4tdG9wOiAtMjBweDsgfVxuICAgICAgICBib2R5LmNhcnQgLmVkaXRjYXJ0IC5pdGVtIGZvcm0udXBkYXRlLnF1YW50aXR5IGlucHV0W3R5cGU9XCJ0ZXh0XCJdIHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAtMjBweDtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgbGVmdDogMTAwcHg7IH0gfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgYm9keS5jYXJ0IC5lZGl0Y2FydCAuaXRlbSBmb3JtLnVwZGF0ZS5xdWFudGl0eSB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgbGVmdDogMzgwcHg7XG4gICAgICAgIHdpZHRoOiAyMDBweDsgfVxuICAgICAgICBib2R5LmNhcnQgLmVkaXRjYXJ0IC5pdGVtIGZvcm0udXBkYXRlLnF1YW50aXR5IGlucHV0W3R5cGU9XCJ0ZXh0XCJdIHtcbiAgICAgICAgICB3aWR0aDogNDVweDtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAtNXB4O1xuICAgICAgICAgIGhlaWdodDogMjBweDtcbiAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgYm9keS5jYXJ0IC5lZGl0Y2FydCAuaXRlbSBmb3JtLnVwZGF0ZS5xdWFudGl0eSBidXR0b24ge1xuICAgICAgbWFyZ2luLXRvcDogLTIwcHg7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIGJvZHkuY2FydCAuZWRpdGNhcnQgLml0ZW0gZm9ybS51cGRhdGUucXVhbnRpdHkgYnV0dG9uIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiA1cHg7IH0gfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgYm9keS5jYXJ0IC5lZGl0Y2FydCAuaXRlbSBmb3JtLnJlbW92ZSBidXR0b24ge1xuICAgICAgICBtYXJnaW4tdG9wOiAtNTBweDsgfSB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICBib2R5LmNhcnQgLmVkaXRjYXJ0IC5pdGVtIGZvcm0ucmVtb3ZlIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBsZWZ0OiA1NTBweDsgfVxuICAgICAgICBib2R5LmNhcnQgLmVkaXRjYXJ0IC5pdGVtIGZvcm0ucmVtb3ZlOjphZnRlciB7XG4gICAgICAgICAgY29udGVudDogXCJ8XCI7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIGxlZnQ6IC05cHg7XG4gICAgICAgICAgdG9wOiAwOyB9IH1cbiAgICBib2R5LmNhcnQgLmVkaXRjYXJ0IC5pdGVtIC5saW5lLnRvdGFsIHtcbiAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgIGhlaWdodDogMjBweDsgfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAgIGJvZHkuY2FydCAuZWRpdGNhcnQgLml0ZW0gLmxpbmUudG90YWwge1xuICAgICAgICAgIG1hcmdpbi10b3A6IC0xMTJweDsgfSB9XG4gIGJvZHkuY2FydCAuZWRpdGNhcnQgLmRlY2lzaW9uIHtcbiAgICBwYWRkaW5nLXRvcDogNDBweDsgfVxuICAgIGJvZHkuY2FydCAuZWRpdGNhcnQgLmRlY2lzaW9uIC5jaGVja291dCB7XG4gICAgICBwYWRkaW5nOiA1cHggMDsgfVxuICAgICAgYm9keS5jYXJ0IC5lZGl0Y2FydCAuZGVjaXNpb24gLmNoZWNrb3V0IGEge1xuICAgICAgICBtYXJnaW46IDEwcHggMHB4O1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLW91dDtcbiAgICAgICAgcGFkZGluZzogMTBweCA1MnB4O1xuICAgICAgICBib3JkZXI6IHNvbGlkIDFweCAjZmFlNmNkO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA0MHB4O1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICAgICAgICBib2R5LmNhcnQgLmVkaXRjYXJ0IC5kZWNpc2lvbiAuY2hlY2tvdXQgYTpob3ZlciB7XG4gICAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC4xKTsgfVxuICAgIGJvZHkuY2FydCAuZWRpdGNhcnQgLmRlY2lzaW9uIC5yZW1vdmUuYWxsIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgYm9keS5jYXJ0IC5lZGl0Y2FydCAuY2FsY3VsYXRlLmJveCB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7IH1cblxuYm9keS5jaGVja291dCBoMSxcbmJvZHkuY2hlY2tvdXQgaDIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cblxuYm9keS5jaGVja291dCBoNiB7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIG1hcmdpbjogMTVweCAwOyB9XG5cbmJvZHkuY2hlY2tvdXQgZmllbGRzZXQge1xuICBib3JkZXI6IG5vbmU7IH1cblxuYm9keS5jaGVja291dCBociB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuYm9keS5jaGVja291dCAuZW5jLXN0b3JlIHtcbiAgbWF4LXdpZHRoOiAyOTBweDtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bzsgfVxuICBib2R5LmNoZWNrb3V0IC5lbmMtc3RvcmU6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIGJvZHkuY2hlY2tvdXQgLmVuYy1zdG9yZSB7XG4gICAgICBtYXgtd2lkdGg6IDcwMnB4O1xuICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87IH1cbiAgICAgIGJvZHkuY2hlY2tvdXQgLmVuYy1zdG9yZTphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgY2xlYXI6IGJvdGg7IH0gfVxuICBib2R5LmNoZWNrb3V0IC5lbmMtc3RvcmUgLnJvdyB7XG4gICAgcGFkZGluZzogOXB4IDA7IH1cbiAgICBib2R5LmNoZWNrb3V0IC5lbmMtc3RvcmUgLnJvdyBsYWJlbCxcbiAgICBib2R5LmNoZWNrb3V0IC5lbmMtc3RvcmUgLnJvdyBpbnB1dCB7XG4gICAgICBkaXNwbGF5OiBibG9jazsgfVxuICAgIGJvZHkuY2hlY2tvdXQgLmVuYy1zdG9yZSAucm93IGxhYmVsOm5vdCguZXJyb3IpIHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiA5cHg7IH1cbiAgICBib2R5LmNoZWNrb3V0IC5lbmMtc3RvcmUgLnJvdyBpbnB1dDpub3QoW3R5cGU9XCJyYWRpb1wiXSkge1xuICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDsgfVxuICAgIGJvZHkuY2hlY2tvdXQgLmVuYy1zdG9yZSAucm93IFtpZD1cInN0cmVldDFcIl0sXG4gICAgYm9keS5jaGVja291dCAuZW5jLXN0b3JlIC5yb3cgW2lkPVwic3RyZWV0MlwiXSxcbiAgICBib2R5LmNoZWNrb3V0IC5lbmMtc3RvcmUgLnJvdyBbaWQ9XCJiaWxsaW5nX2FkZHJlc3MxXCJdLFxuICAgIGJvZHkuY2hlY2tvdXQgLmVuYy1zdG9yZSAucm93IFtpZD1cImJpbGxpbmdfYWRkcmVzczJcIl0ge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDsgfVxuICAgIGJvZHkuY2hlY2tvdXQgLmVuYy1zdG9yZSAucm93IHNlbGVjdCB7XG4gICAgICB3aWR0aDogMTgwcHg7IH1cbiAgYm9keS5jaGVja291dCAuZW5jLXN0b3JlIGJ1dHRvbi5jb250aW51ZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogNDVweDsgfVxuICBib2R5LmNoZWNrb3V0IC5lbmMtc3RvcmUgW2lkPVwiY2hlY2tvdXRTdGVwMVwiXSBiciB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICBib2R5LmNoZWNrb3V0IC5lbmMtc3RvcmUgW2lkPVwiY2hlY2tvdXRTdGVwMVwiXSAubm90aWNlIHtcbiAgICBwYWRkaW5nOiAuMzVlbSAuNjI1ZW0gLjc1ZW07IH1cbiAgICBib2R5LmNoZWNrb3V0IC5lbmMtc3RvcmUgW2lkPVwiY2hlY2tvdXRTdGVwMVwiXSAubm90aWNlIHA6bGFzdC1vZi10eXBlIHtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAgIGJvZHkuY2hlY2tvdXQgLmVuYy1zdG9yZSBbaWQ9XCJjaGVja291dFN0ZXAxXCJdIC5ub3RpY2UgcDpsYXN0LW9mLXR5cGUge1xuICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7IH0gfVxuICBib2R5LmNoZWNrb3V0IC5lbmMtc3RvcmUgW2lkPVwiY2hlY2tvdXRTdGVwMVwiXSAubGVmdCBoMiB7XG4gICAgYm9yZGVyLWJvdHRvbTogc29saWQgMXB4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgYm9keS5jaGVja291dCAuZW5jLXN0b3JlIFtpZD1cImNoZWNrb3V0U3RlcDFcIl0gLmxlZnQgaDIge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4OyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgYm9keS5jaGVja291dCAuZW5jLXN0b3JlIFtpZD1cImNoZWNrb3V0U3RlcDFcIl0gLmxlZnQge1xuICAgICAgd2lkdGg6IDQ5LjE1MjU0JTtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgbWFyZ2luLXJpZ2h0OiAxLjY5NDkyJTsgfSB9XG4gIGJvZHkuY2hlY2tvdXQgLmVuYy1zdG9yZSBbaWQ9XCJjaGVja291dFN0ZXAxXCJdIC5yaWdodCBoMiB7XG4gICAgZm9udC1mYW1pbHk6IFwiQXJpYWxcIiwgc2Fucy1zZXJpZjtcbiAgICBsaW5lLWhlaWdodDogMS4zO1xuICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIG1hcmdpbi1ib3R0b206IC0zMHB4OyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIGJvZHkuY2hlY2tvdXQgLmVuYy1zdG9yZSBbaWQ9XCJjaGVja291dFN0ZXAxXCJdIC5yaWdodCB7XG4gICAgICBwYWRkaW5nLXRvcDogMTQ0cHg7XG4gICAgICB3aWR0aDogNDkuMTUyNTQlO1xuICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwOyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgYm9keS5jaGVja291dCAuZW5jLXN0b3JlIFtpZD1cImNoZWNrb3V0U3RlcDFcIl0gZmllbGRzZXQgLmNvbnRpbnVlIHtcbiAgICAgIG1hcmdpbi10b3A6IDYwMHB4O1xuICAgICAgbWFyZ2luLWxlZnQ6IC0xMjBweDsgfSB9XG4gIGJvZHkuY2hlY2tvdXQgLmVuYy1zdG9yZSBbaWQ9XCJjaGVja291dFN0ZXAyXCJdIGJyIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIGJvZHkuY2hlY2tvdXQgLmVuYy1zdG9yZSBbaWQ9XCJjaGVja291dFN0ZXAyXCJdIGgyIHtcbiAgICBib3JkZXItYm90dG9tOiBzb2xpZCAxcHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpOyB9XG4gIGJvZHkuY2hlY2tvdXQgLmVuYy1zdG9yZSBbaWQ9XCJjaGVja291dFN0ZXAyXCJdIC5zaGlwcGluZy5tZXRob2Qge1xuICAgIHdpZHRoOiBpbmhlcml0ICFpbXBvcnRhbnQ7IH1cbiAgICBib2R5LmNoZWNrb3V0IC5lbmMtc3RvcmUgW2lkPVwiY2hlY2tvdXRTdGVwMlwiXSAuc2hpcHBpbmcubWV0aG9kIC5ub3RpY2UgcCB7XG4gICAgICBmb250LXNpemU6IDE2cHggIWltcG9ydGFudDsgfVxuICAgIGJvZHkuY2hlY2tvdXQgLmVuYy1zdG9yZSBbaWQ9XCJjaGVja291dFN0ZXAyXCJdIC5zaGlwcGluZy5tZXRob2QgdWwge1xuICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDQ1cHg7IH1cbiAgYm9keS5jaGVja291dCAuZW5jLXN0b3JlIFtpZD1cImNoZWNrb3V0U3RlcDJcIl0gLmludGVybmF0aW9uYWwtdGF4LW5vdGljZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMjVweDsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICBib2R5LmNoZWNrb3V0IC5lbmMtc3RvcmUgW2lkPVwiY2hlY2tvdXRTdGVwMlwiXSBidXR0b24uY29udGludWUge1xuICAgICAgbWFyZ2luLWxlZnQ6IDIxNXB4OyB9IH1cbiAgYm9keS5jaGVja291dCAuZW5jLXN0b3JlIFtpZD1cImNoZWNrb3V0U3RlcDJcIl0gYnV0dG9uW2Rpc2FibGVkPVwiXCJdIHtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMzUpOyB9XG4gICAgYm9keS5jaGVja291dCAuZW5jLXN0b3JlIFtpZD1cImNoZWNrb3V0U3RlcDJcIl0gYnV0dG9uW2Rpc2FibGVkPVwiXCJdOmhvdmVyLCBib2R5LmNoZWNrb3V0IC5lbmMtc3RvcmUgW2lkPVwiY2hlY2tvdXRTdGVwMlwiXSBidXR0b25bZGlzYWJsZWQ9XCJcIl06YWN0aXZlIHtcbiAgICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4zNSk7XG4gICAgICBjb2xvcjogI2ZhZTZjZDsgfVxuICBib2R5LmNoZWNrb3V0IC5lbmMtc3RvcmUgW2lkPVwiY2hlY2tvdXRTdGVwM1wiXSBoMiB7XG4gICAgYm9yZGVyLWJvdHRvbTogc29saWQgMXB4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICBib2R5LmNoZWNrb3V0IC5lbmMtc3RvcmUgW2lkPVwiY2hlY2tvdXRTdGVwM1wiXSAubGVmdCB7XG4gICAgICB3aWR0aDogNDkuMTUyNTQlO1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDEuNjk0OTIlO1xuICAgICAgcGFkZGluZy10b3A6IDQ3cHg7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICBib2R5LmNoZWNrb3V0IC5lbmMtc3RvcmUgW2lkPVwiY2hlY2tvdXRTdGVwM1wiXSAucmlnaHQge1xuICAgICAgd2lkdGg6IDQ5LjE1MjU0JTtcbiAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgIG1hcmdpbi1yaWdodDogMDsgfSB9XG4gIGJvZHkuY2hlY2tvdXQgLmVuYy1zdG9yZSBbaWQ9XCJjaGVja291dFN0ZXAzXCJdIFtpZD1cImNvcHlBZGRyZXNzXCJdIHtcbiAgICBmbG9hdDogaW5oZXJpdCAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi10b3A6IGluaGVyaXQgIWltcG9ydGFudDtcbiAgICBtYXJnaW4tcmlnaHQ6IGluaGVyaXQgIWltcG9ydGFudDtcbiAgICBtYXJnaW4tYm90dG9tOiAyNXB4ICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLWxlZnQ6IGluaGVyaXQgIWltcG9ydGFudDsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgYm9keS5jaGVja291dCAuZW5jLXN0b3JlIFtpZD1cImNoZWNrb3V0U3RlcDNcIl0gW2lkPVwiY29weUFkZHJlc3NcIl0ge1xuICAgICAgICBtYXJnaW4tbGVmdDogMzNweCAhaW1wb3J0YW50OyB9IH1cbiAgYm9keS5jaGVja291dCAuZW5jLXN0b3JlIFtpZD1cImNoZWNrb3V0U3RlcDNcIl0gLnJvdy5jcmVkaXQuY2FyZCB1bCB7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7IH1cbiAgYm9keS5jaGVja291dCAuZW5jLXN0b3JlIFtpZD1cImNoZWNrb3V0U3RlcDNcIl0gLnJvdy5jcmVkaXQuY2FyZCBsaSB7XG4gICAgcGFkZGluZy1ib3R0b206IDVweDsgfVxuICBib2R5LmNoZWNrb3V0IC5lbmMtc3RvcmUgW2lkPVwiY2hlY2tvdXRTdGVwM1wiXSAucm93LmNyZWRpdC5jYXJkIGxhYmVsLFxuICBib2R5LmNoZWNrb3V0IC5lbmMtc3RvcmUgW2lkPVwiY2hlY2tvdXRTdGVwM1wiXSAucm93LmNyZWRpdC5jYXJkIGlucHV0IHtcbiAgICBkaXNwbGF5OiBpbmxpbmU7IH1cbiAgYm9keS5jaGVja291dCAuZW5jLXN0b3JlIFtpZD1cImNoZWNrb3V0U3RlcDNcIl0gLnJvdy5jcmVkaXQuY2FyZCBpbnB1dCB7XG4gICAgcGFkZGluZy1yaWdodDogMTJweDsgfVxuICBib2R5LmNoZWNrb3V0IC5lbmMtc3RvcmUgW2lkPVwiY2hlY2tvdXRTdGVwM1wiXSAubm90aWNlIHtcbiAgICBwYWRkaW5nOiAuMzVlbSAuNjI1ZW0gLjc1ZW07IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgYm9keS5jaGVja291dCAuZW5jLXN0b3JlIFtpZD1cImNoZWNrb3V0U3RlcDNcIl0gYnV0dG9uLmNvbnRpbnVlIHtcbiAgICAgIG1hcmdpbi10b3A6IDM1NXB4O1xuICAgICAgbWFyZ2luLWxlZnQ6IC0xNDZweDsgfSB9XG4gIGJvZHkuY2hlY2tvdXQgLmVuYy1zdG9yZSBbaWQ9XCJjaGVja291dFN0ZXA0XCJdIGgyIHtcbiAgICBib3JkZXItYm90dG9tOiBzb2xpZCAxcHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIGJvZHkuY2hlY2tvdXQgLmVuYy1zdG9yZSBbaWQ9XCJjaGVja291dFN0ZXA0XCJdIC5sZWZ0LmNvbHVtbiB7XG4gICAgICB3aWR0aDogNDkuMTUyNTQlO1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDEuNjk0OTIlOyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgYm9keS5jaGVja291dCAuZW5jLXN0b3JlIFtpZD1cImNoZWNrb3V0U3RlcDRcIl0gLnJpZ2h0LmNvbHVtbiB7XG4gICAgICB3aWR0aDogNDkuMTUyNTQlO1xuICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwOyB9IH1cbiAgYm9keS5jaGVja291dCAuZW5jLXN0b3JlIFtpZD1cImNoZWNrb3V0U3RlcDRcIl0gLm9yZGVyLnN1bW1hcnkge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIG1hcmdpbi1yaWdodDogMDsgfVxuICBib2R5LmNoZWNrb3V0IC5lbmMtc3RvcmUgW2lkPVwiY2hlY2tvdXRTdGVwNFwiXSAuaXRlbXMge1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgcGFkZGluZy1sZWZ0OiAwOyB9XG4gIGJvZHkuY2hlY2tvdXQgLmVuYy1zdG9yZSBbaWQ9XCJjaGVja291dFN0ZXA0XCJdIC5pdGVtIHtcbiAgICBoZWlnaHQ6IDc2cHg7XG4gICAgYm9yZGVyLWJvdHRvbTogc29saWQgMXB4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTsgfVxuICAgIGJvZHkuY2hlY2tvdXQgLmVuYy1zdG9yZSBbaWQ9XCJjaGVja291dFN0ZXA0XCJdIC5pdGVtIHVsLmRldGFpbHMge1xuICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgIHBhZGRpbmctbGVmdDogMDsgfVxuICAgICAgYm9keS5jaGVja291dCAuZW5jLXN0b3JlIFtpZD1cImNoZWNrb3V0U3RlcDRcIl0gLml0ZW0gdWwuZGV0YWlscyBsaTpudGgtY2hpbGQoMSkge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxMHB4OyB9XG4gICAgICBib2R5LmNoZWNrb3V0IC5lbmMtc3RvcmUgW2lkPVwiY2hlY2tvdXRTdGVwNFwiXSAuaXRlbSB1bC5kZXRhaWxzIGxpOm50aC1jaGlsZCgxKSxcbiAgICAgIGJvZHkuY2hlY2tvdXQgLmVuYy1zdG9yZSBbaWQ9XCJjaGVja291dFN0ZXA0XCJdIC5pdGVtIHVsLmRldGFpbHMgbGk6bnRoLWNoaWxkKDIpIHtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7IH1cbiAgICAgIGJvZHkuY2hlY2tvdXQgLmVuYy1zdG9yZSBbaWQ9XCJjaGVja291dFN0ZXA0XCJdIC5pdGVtIHVsLmRldGFpbHMgbGk6bnRoLWNoaWxkKDMpIHtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0OyB9XG4gIGJvZHkuY2hlY2tvdXQgLmVuYy1zdG9yZSBbaWQ9XCJjaGVja291dFN0ZXA0XCJdIHVsLnRvdGFscyB7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBwYWRkaW5nLWxlZnQ6IG5vbmU7XG4gICAgZmxvYXQ6IHJpZ2h0OyB9XG4gICAgYm9keS5jaGVja291dCAuZW5jLXN0b3JlIFtpZD1cImNoZWNrb3V0U3RlcDRcIl0gdWwudG90YWxzIGxpIHtcbiAgICAgIHRleHQtYWxpZ246IHJpZ2h0OyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIGJvZHkuY2hlY2tvdXQgLmVuYy1zdG9yZSBbaWQ9XCJjaGVja291dFN0ZXA0XCJdIGJ1dHRvbi5jb250aW51ZSB7XG4gICAgICBtYXJnaW4tdG9wOiAxNDBweDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAyMjVweDsgfSB9XG5cbmJvZHkuY2hlY2tvdXQgLnppcDQtbG9va3VwLWxpbmsge1xuICBtYXJnaW4tdG9wOiA5cHg7XG4gIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2Utb3V0O1xuICBwYWRkaW5nOiAxMHB4IDUycHg7XG4gIGJvcmRlcjogc29saWQgMXB4ICNmYWU2Y2Q7XG4gIGJvcmRlci1yYWRpdXM6IDQwcHg7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBjdXJzb3I6IHBvaW50ZXI7IH1cbiAgYm9keS5jaGVja291dCAuemlwNC1sb29rdXAtbGluazpob3ZlciB7XG4gICAgY29sb3I6IHdoaXRlO1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC4xKTsgfVxuXG5ib2R5LmNoZWNrb3V0IGxhYmVsLmVycm9yIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gIG1hcmdpbi10b3A6IC0yMnB4O1xuICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gIGZvbnQtc2l6ZTogMTNweDtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG4gIGNvbG9yOiAjZDE3OTAwO1xuICBwYWRkaW5nOiAzcHggNXB4IDFweDtcbiAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7IH1cblxuYm9keS5jaGVja291dCAuZXJyb3JbZm9yPVwic3RyZWV0MVwiXSxcbmJvZHkuY2hlY2tvdXQgLmVycm9yW2Zvcj1cImJpbGxpbmdfYWRkcmVzczFcIl0ge1xuICBtYXJnaW4tdG9wOiAtMzdweDsgfVxuXG5ib2R5LmNoZWNrb3V0IC5lcnJvcltmb3I9XCJzdGF0ZXByb3ZcIl0sXG5ib2R5LmNoZWNrb3V0IC5lcnJvcltmb3I9XCJiaWxsaW5nX3N0YXRlcHJvdlwiXSB7XG4gIG1hcmdpbi10b3A6IC00OXB4OyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIGJvZHkuY2hlY2tvdXQgLmVycm9yW2Zvcj1cInN0YXRlcHJvdlwiXSxcbiAgICBib2R5LmNoZWNrb3V0IC5lcnJvcltmb3I9XCJiaWxsaW5nX3N0YXRlcHJvdlwiXSB7XG4gICAgICBtYXJnaW4tdG9wOiAtMjVweDsgfSB9XG5cbmJvZHkuY2hlY2tvdXQgbGFiZWwuZXJyb3JbZm9yPVwiYmlsbGluZ19hZGRyZXNzMVwiXSB7XG4gIG1hcmdpbi10b3A6IC00MHB4OyB9XG5cbmJvZHkuY2hlY2tvdXQgbGFiZWwuZXJyb3JbZm9yPVwiYmlsbGluZ19zdGF0ZXByb3ZcIl0sXG5ib2R5LmNoZWNrb3V0IGxhYmVsLmVycm9yW2Zvcj1cImJpbGxpbmdfY291bnRyeVwiXSB7XG4gIG1hcmdpbi10b3A6IC00OXB4OyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIGJvZHkuY2hlY2tvdXQgbGFiZWwuZXJyb3JbZm9yPVwiYmlsbGluZ19zdGF0ZXByb3ZcIl0sXG4gICAgYm9keS5jaGVja291dCBsYWJlbC5lcnJvcltmb3I9XCJiaWxsaW5nX2NvdW50cnlcIl0ge1xuICAgICAgbWFyZ2luLXRvcDogMDsgfSB9XG5cbmJvZHkuY2hlY2tvdXQgLmNvc3Rub25kaXNjb3VudCB7XG4gIGNvbG9yOiBicm93bjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBsaW5lLXRocm91Z2g7IH1cblxuYm9keS5jaGVja291dCA6bm90KGJ1dHRvbikgPiBzcGFuLmJ1dHRvbiB7XG4gIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2Utb3V0O1xuICBwYWRkaW5nOiAxMHB4IDUycHg7XG4gIGJvcmRlcjogc29saWQgMXB4ICNmYWU2Y2Q7XG4gIGJvcmRlci1yYWRpdXM6IDQwcHg7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBjdXJzb3I6IHBvaW50ZXI7IH1cbiAgYm9keS5jaGVja291dCA6bm90KGJ1dHRvbikgPiBzcGFuLmJ1dHRvbjpob3ZlciB7XG4gICAgY29sb3I6IHdoaXRlO1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC4xKTsgfVxuXG5ib2R5LmFib3V0IHtcbiAgYmFja2dyb3VuZDogIzUzOTNkMDtcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTsgfVxuICBib2R5LmFib3V0IGhlYWRlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSg4MywgMTQ3LCAyMDgsIDApOyB9XG4gICAgYm9keS5hYm91dCBoZWFkZXIubWFpbi1uYXYtc2Nyb2xsZWQge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSg4MywgMTQ3LCAyMDgsIDAuOSk7IH1cbiAgYm9keS5hYm91dCBtYWluIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDgzLCAxNDcsIDIwOCwgMC45KTtcbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCByZ2JhKDIzLCAyMywgMjMsIDApIDMyMHB4LCAjMTcxNzE3IDM3MHB4KSwgdXJsKFwiLi4vaW1hZ2VzL2Fib3V0LWJhY2tncm91bmQuanBnXCIpO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQsIG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwJSAwJSwgNTAlIDAlO1xuICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJSAxMDAlLCA1OTlweCAzOTlweDsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA1OTlweCkge1xuICAgICAgYm9keS5hYm91dCBtYWluIHtcbiAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgcmdiYSgyMywgMjMsIDIzLCAwKSA0MDBweCwgIzE3MTcxNyA0NTBweCksIHVybChcIi4uL2ltYWdlcy9hYm91dC1iYWNrZ3JvdW5kLmpwZ1wiKTtcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdCwgbm8tcmVwZWF0O1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAxMDAlIDEwMCUsIDUwJSAwJTtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiAxMDAlIDEwMCUsIDc2OHB4IDUxMXB4OyB9IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgIGJvZHkuYWJvdXQgbWFpbiB7XG4gICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sIHJnYmEoMjMsIDIzLCAyMywgMCkgNTAwcHgsICMxNzE3MTcgNjAwcHgpLCB1cmwoXCIuLi9pbWFnZXMvYWJvdXQtYmFja2dyb3VuZC5qcGdcIik7XG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQsIG5vLXJlcGVhdDtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMTAwJSAxMDAlLCA1MCUgLTEyNXB4O1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCUgMTAwJSwgMTIwMHB4IDc5OHB4OyB9IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gICAgICBib2R5LmFib3V0IG1haW4ge1xuICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCByZ2JhKDIzLCAyMywgMjMsIDApIDUwM3B4LCAjMTcxNzE3IDYzMHB4KSwgdXJsKFwiLi4vaW1hZ2VzL2Fib3V0LWJhY2tncm91bmQuanBnXCIpO1xuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0LCBuby1yZXBlYXQ7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDEwMCUgMTAwJSwgNTAlIC0yMjVweDtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiAxMDAlIDEwMCUsIDE3MDBweCAxMTMycHg7IH0gfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAxNjk5cHgpIHtcbiAgICAgIGJvZHkuYWJvdXQgbWFpbiB7XG4gICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sIHJnYmEoMjMsIDIzLCAyMywgMCkgNjc1cHgsICMxNzE3MTcgODAwcHgpLCB1cmwoXCIuLi9pbWFnZXMvYWJvdXQtYmFja2dyb3VuZC5qcGdcIik7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICM1MzkzZDA7XG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQsIG5vLXJlcGVhdDtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMTAwJSAxMDAlLCA1MCUgLTQyNXB4LCAxMDAlIDEwMCU7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJSAxMDAlLCAyNDAwcHggMTUzMHB4LCAxMDAlIDEwMCU7IH0gfVxuICAgIGJvZHkuYWJvdXQgbWFpbiAuY29udGVudCB7XG4gICAgICBtYXgtd2lkdGg6IDI5MHB4O1xuICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87IH1cbiAgICAgIGJvZHkuYWJvdXQgbWFpbiAuY29udGVudDphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgICBib2R5LmFib3V0IG1haW4gLmNvbnRlbnQge1xuICAgICAgICAgIG1heC13aWR0aDogNzAycHg7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9XG4gICAgICAgICAgYm9keS5hYm91dCBtYWluIC5jb250ZW50OmFmdGVyIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBjbGVhcjogYm90aDsgfSB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICBib2R5LmFib3V0IG1haW4gaDEge1xuICAgICAgICBtYXJnaW46IC4zZW0gMCAuNjdlbTsgfSB9XG4gICAgYm9keS5hYm91dCBtYWluIHNlY3Rpb24uaW50cm8ge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIGJvZHkuYWJvdXQgLmFib3V0LWNvcHkge1xuICAgIG1hcmdpbi10b3A6IDI1MHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDQ1cHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDU5OXB4KSB7XG4gICAgICBib2R5LmFib3V0IC5hYm91dC1jb3B5IHtcbiAgICAgICAgbWFyZ2luLXRvcDogMzAwcHg7XG4gICAgICAgIHdpZHRoOiA5MS41MjU0MiU7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDEuNjk0OTIlO1xuICAgICAgICBtYXJnaW4tbGVmdDogNC4yMzcyOSU7IH0gfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgYm9keS5hYm91dCAuYWJvdXQtY29weSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDQ1MHB4OyB9IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogMTY5OXB4KSB7XG4gICAgICBib2R5LmFib3V0IC5hYm91dC1jb3B5IHtcbiAgICAgICAgbWFyZ2luLXRvcDogNDUwcHg7IH0gfVxuICAgIGJvZHkuYWJvdXQgLmFib3V0LWNvcHkgcCxcbiAgICBib2R5LmFib3V0IC5hYm91dC1jb3B5IGEge1xuICAgICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTsgfVxuICBib2R5LmFib3V0IGZvb3RlciB7XG4gICAgYm9yZGVyLXRvcDogc29saWQgMXB4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xNSk7IH1cblxuYm9keS5wb2xpY3kgbWFpbiB7XG4gIG1heC13aWR0aDogMjkwcHg7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1hcmdpbi1ib3R0b206IDQ1cHg7IH1cbiAgYm9keS5wb2xpY3kgbWFpbjphZnRlciB7XG4gICAgY29udGVudDogXCIgXCI7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgYm9keS5wb2xpY3kgbWFpbiB7XG4gICAgICBtYXgtd2lkdGg6IDcwMnB4O1xuICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87IH1cbiAgICAgIGJvZHkucG9saWN5IG1haW46YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcIiBcIjtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGNsZWFyOiBib3RoOyB9IH1cbiAgYm9keS5wb2xpY3kgbWFpbiBzZWN0aW9uIHVsIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgbGlzdC1zdHlsZTogbm9uZTsgfVxuICAgIGJvZHkucG9saWN5IG1haW4gc2VjdGlvbiB1bCBsaSB7XG4gICAgICBkaXNwbGF5OiB0YWJsZS1yb3c7IH1cbiAgICAgIGJvZHkucG9saWN5IG1haW4gc2VjdGlvbiB1bCBsaTpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiBcIuKAolwiO1xuICAgICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjRlbTsgfVxuXG5ib2R5LnBvbGljeSBoMSxcbmJvZHkucG9saWN5IGgxIH4gcCB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuXG5ib2R5LnBvbGljeSBoMSB7XG4gIG1hcmdpbi1ib3R0b206IDBweDsgfVxuXG5ib2R5LnBvbGljeSBoMSB+IHAge1xuICBtYXJnaW4tdG9wOiAwcHg7XG4gIG1hcmdpbi1ib3R0b206IDQ1cHg7IH1cblxuYm9keS5wb2xpY3kgaDMge1xuICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIGJvZHkucG9saWN5IGgzIH4gcCB7XG4gICAgbWFyZ2luLXRvcDogMHB4OyB9XG5cbmJvZHkud2FycmFudHkgbWFpbixcbmJvZHkudGVybXMgbWFpbiB7XG4gIG1heC13aWR0aDogMjkwcHg7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1hcmdpbi1ib3R0b206IDUwcHg7IH1cbiAgYm9keS53YXJyYW50eSBtYWluOmFmdGVyLFxuICBib2R5LnRlcm1zIG1haW46YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIGJvZHkud2FycmFudHkgbWFpbixcbiAgICBib2R5LnRlcm1zIG1haW4ge1xuICAgICAgbWF4LXdpZHRoOiA3MDJweDtcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9XG4gICAgICBib2R5LndhcnJhbnR5IG1haW46YWZ0ZXIsXG4gICAgICBib2R5LnRlcm1zIG1haW46YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcIiBcIjtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGNsZWFyOiBib3RoOyB9IH1cblxuYm9keS53YXJyYW50eSBoMSxcbmJvZHkud2FycmFudHkgaDEsXG5ib2R5LnRlcm1zIGgxLFxuYm9keS50ZXJtcyBoMSB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuXG5ib2R5LndhcnJhbnR5IGgxLFxuYm9keS50ZXJtcyBoMSB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuXG5ib2R5LndhcnJhbnR5IGgzLFxuYm9keS50ZXJtcyBoMyB7XG4gIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgYm9keS53YXJyYW50eSBoMyB+IHAsXG4gIGJvZHkudGVybXMgaDMgfiBwIHtcbiAgICBtYXJnaW4tdG9wOiAwcHg7IH1cblxuYm9keS5wcm9kdWN0cyBtYWluIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIGJvZHkucHJvZHVjdHMgbWFpbiBoMiB7XG4gICAgbWFyZ2luLWJvdHRvbTogMTBweDsgfVxuICBib2R5LnByb2R1Y3RzIG1haW4gLmNvbnRlbnQge1xuICAgIG1heC13aWR0aDogMjkwcHg7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9XG4gICAgYm9keS5wcm9kdWN0cyBtYWluIC5jb250ZW50OmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgYm9keS5wcm9kdWN0cyBtYWluIC5jb250ZW50IHtcbiAgICAgICAgbWF4LXdpZHRoOiA3MDJweDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICAgIG1hcmdpbi1yaWdodDogYXV0bzsgfVxuICAgICAgICBib2R5LnByb2R1Y3RzIG1haW4gLmNvbnRlbnQ6YWZ0ZXIge1xuICAgICAgICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIGNsZWFyOiBib3RoOyB9IH1cbiAgYm9keS5wcm9kdWN0cyBtYWluIGEuY3RhIHtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLW91dDtcbiAgICBwYWRkaW5nOiAxMHB4IDUycHg7XG4gICAgYm9yZGVyOiBzb2xpZCAxcHggI2ZhZTZjZDtcbiAgICBib3JkZXItcmFkaXVzOiA0MHB4O1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cbiAgICBib2R5LnByb2R1Y3RzIG1haW4gYS5jdGE6aG92ZXIge1xuICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjEpOyB9XG4gIGJvZHkucHJvZHVjdHMgbWFpbiBzZWN0aW9uLmludHJvIHtcbiAgICBwYWRkaW5nOiA1NXB4IDA7IH1cbiAgICBib2R5LnByb2R1Y3RzIG1haW4gc2VjdGlvbi5pbnRybyBwLFxuICAgIGJvZHkucHJvZHVjdHMgbWFpbiBzZWN0aW9uLmludHJvIGgyIHtcbiAgICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgIGJvZHkucHJvZHVjdHMgbWFpbiBzZWN0aW9uLmludHJvIGltZyB7XG4gICAgICAgIHdpZHRoOiA4My4wNTA4NSU7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDEuNjk0OTIlO1xuICAgICAgICBtYXJnaW4tbGVmdDogOC40NzQ1OCU7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDUwcHg7IH0gfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgYm9keS5wcm9kdWN0cyBtYWluIHNlY3Rpb24uaW50cm8gcCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDQ1cHg7IH0gfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgYm9keS5wcm9kdWN0cyBtYWluIHNlY3Rpb24uaW50cm8gLmludHJvLWNvcHkgYSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDE1cHg7IH0gfVxuICBib2R5LnByb2R1Y3RzIG1haW4gc2VjdGlvbi5hY2Nlc3NvcmllcyB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgIzE2MTYxNiAwJSwgIzIzMjMyMyAxMDAlKTtcbiAgICBwYWRkaW5nOiA3MHB4IDA7IH1cbiAgICBib2R5LnByb2R1Y3RzIG1haW4gc2VjdGlvbi5hY2Nlc3NvcmllcyBpbWcge1xuICAgICAgd2lkdGg6IDgzLjA1MDg1JTtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgbWFyZ2luLXJpZ2h0OiAxLjY5NDkyJTtcbiAgICAgIG1hcmdpbi1sZWZ0OiA4LjQ3NDU4JTtcbiAgICAgIGZsb2F0OiBub25lOyB9XG4gICAgYm9keS5wcm9kdWN0cyBtYWluIHNlY3Rpb24uYWNjZXNzb3JpZXMgaDIge1xuICAgICAgbWFyZ2luLXRvcDogMDsgfVxuICAgIGJvZHkucHJvZHVjdHMgbWFpbiBzZWN0aW9uLmFjY2Vzc29yaWVzIC5hY2Nlc3Nvcmllcy1jb3B5IGEge1xuICAgICAgbWFyZ2luLXRvcDogMTVweDsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgYm9keS5wcm9kdWN0cyBtYWluIHNlY3Rpb24uYWNjZXNzb3JpZXMgaW1nIHtcbiAgICAgICAgd2lkdGg6IDY2LjEwMTY5JTtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMS42OTQ5MiU7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwJTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogLTQwcHg7XG4gICAgICAgIGhlaWdodDogMjcwcHg7XG4gICAgICAgIHdpZHRoOiBhdXRvOyB9XG4gICAgICBib2R5LnByb2R1Y3RzIG1haW4gc2VjdGlvbi5hY2Nlc3NvcmllcyAuYWNjZXNzb3JpZXMtY29weSB7XG4gICAgICAgIHdpZHRoOiAzMi4yMDMzOSU7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBtYXJnaW4tdG9wOiA0NXB4OyB9XG4gICAgICAgIGJvZHkucHJvZHVjdHMgbWFpbiBzZWN0aW9uLmFjY2Vzc29yaWVzIC5hY2Nlc3Nvcmllcy1jb3B5IGEge1xuICAgICAgICAgIG1hcmdpbi10b3A6IDE1cHg7IH0gfVxuICBib2R5LnByb2R1Y3RzIG1haW4gc2VjdGlvbi5kZWFsZXJzIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWFnZXMvZGVhbGVycy1tYXAucG5nXCIpO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogNTAlIDIycHg7XG4gICAgYmFja2dyb3VuZC1zaXplOiA2NThweCAyNjhweDtcbiAgICBwYWRkaW5nOiA3MHB4IDA7XG4gICAgaGVpZ2h0OiAzMTJweDsgfVxuICAgIGJvZHkucHJvZHVjdHMgbWFpbiBzZWN0aW9uLmRlYWxlcnMgaDIge1xuICAgICAgbWFyZ2luLXRvcDogMTVweDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7IH1cbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgICBib2R5LnByb2R1Y3RzIG1haW4gc2VjdGlvbi5kZWFsZXJzIGgyIHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAxMTVweDtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyNXB4OyB9IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgIGJvZHkucHJvZHVjdHMgbWFpbiBzZWN0aW9uLmRlYWxlcnMge1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA1MCUgNjNweDtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiA4NzdweCAzNTdweDtcbiAgICAgICAgaGVpZ2h0OiA0ODNweDsgfSB9XG4gICAgYm9keS5wcm9kdWN0cyBtYWluIHNlY3Rpb24uZGVhbGVycyAuY29udGVudCB7XG4gICAgICB3aWR0aDogMzAwcHg7IH1cblxuYm9keS5oZWxwIGEuY3RhIHtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1vdXQ7XG4gIHBhZGRpbmc6IDEwcHggNTJweDtcbiAgYm9yZGVyOiBzb2xpZCAxcHggI2ZhZTZjZDtcbiAgYm9yZGVyLXJhZGl1czogNDBweDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cbiAgYm9keS5oZWxwIGEuY3RhOmhvdmVyIHtcbiAgICBjb2xvcjogd2hpdGU7XG4gICAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjEpOyB9XG5cbmJvZHkuaGVscCBzZWN0aW9uLmhlbHAtc2VjdGlvbixcbmJvZHkuaGVscCBzZWN0aW9uLmNvbnRhY3Qtc2VjdGlvbixcbmJvZHkuaGVscCBzZWN0aW9uLmNvbnRhY3QtZm9ybSB7XG4gIG1heC13aWR0aDogMjkwcHg7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICBib2R5LmhlbHAgc2VjdGlvbi5oZWxwLXNlY3Rpb246YWZ0ZXIsXG4gIGJvZHkuaGVscCBzZWN0aW9uLmNvbnRhY3Qtc2VjdGlvbjphZnRlcixcbiAgYm9keS5oZWxwIHNlY3Rpb24uY29udGFjdC1mb3JtOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIiBcIjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjbGVhcjogYm90aDsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICBib2R5LmhlbHAgc2VjdGlvbi5oZWxwLXNlY3Rpb24sXG4gICAgYm9keS5oZWxwIHNlY3Rpb24uY29udGFjdC1zZWN0aW9uLFxuICAgIGJvZHkuaGVscCBzZWN0aW9uLmNvbnRhY3QtZm9ybSB7XG4gICAgICBtYXgtd2lkdGg6IDcwMnB4O1xuICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87IH1cbiAgICAgIGJvZHkuaGVscCBzZWN0aW9uLmhlbHAtc2VjdGlvbjphZnRlcixcbiAgICAgIGJvZHkuaGVscCBzZWN0aW9uLmNvbnRhY3Qtc2VjdGlvbjphZnRlcixcbiAgICAgIGJvZHkuaGVscCBzZWN0aW9uLmNvbnRhY3QtZm9ybTphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgY2xlYXI6IGJvdGg7IH0gfVxuICBib2R5LmhlbHAgc2VjdGlvbi5oZWxwLXNlY3Rpb246bGFzdC1jaGlsZCxcbiAgYm9keS5oZWxwIHNlY3Rpb24uY29udGFjdC1zZWN0aW9uOmxhc3QtY2hpbGQsXG4gIGJvZHkuaGVscCBzZWN0aW9uLmNvbnRhY3QtZm9ybTpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiA1NXB4OyB9XG5cbmJvZHkuaGVscCBzZWN0aW9uLmhlbHAtc2VjdGlvbiBkaXYge1xuICB3aWR0aDogMTAwJTtcbiAgZmxvYXQ6IGxlZnQ7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBtYXJnaW4tcmlnaHQ6IDA7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgYm9keS5oZWxwIHNlY3Rpb24uaGVscC1zZWN0aW9uIGRpdiB7XG4gICAgICB3aWR0aDogMzIuMjAzMzklO1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDEuNjk0OTIlOyB9XG4gICAgICBib2R5LmhlbHAgc2VjdGlvbi5oZWxwLXNlY3Rpb24gZGl2Omxhc3QtY2hpbGQge1xuICAgICAgICB3aWR0aDogMzIuMjAzMzklO1xuICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMDsgfVxuICAgICAgYm9keS5oZWxwIHNlY3Rpb24uaGVscC1zZWN0aW9uIGRpdiBhLmN0YSB7XG4gICAgICAgIHdpZHRoOiAyMDRweDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDExcHg7XG4gICAgICAgIHBhZGRpbmc6IDEwcHggNXB4OyB9IH1cblxuYm9keS5oZWxwIHNlY3Rpb24uY29udGFjdC1zZWN0aW9uIGRpdiB7XG4gIHdpZHRoOiAxMDAlO1xuICBmbG9hdDogbGVmdDtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIG1hcmdpbi1yaWdodDogMDsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICBib2R5LmhlbHAgc2VjdGlvbi5jb250YWN0LXNlY3Rpb24gZGl2IHtcbiAgICAgIHdpZHRoOiA0OS4xNTI1NCU7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIG1hcmdpbi1yaWdodDogMS42OTQ5MiU7XG4gICAgICBtYXJnaW4tYm90dG9tOiAyMHB4OyB9XG4gICAgICBib2R5LmhlbHAgc2VjdGlvbi5jb250YWN0LXNlY3Rpb24gZGl2Om50aC1jaGlsZCgybisxKSB7XG4gICAgICAgIHdpZHRoOiA0OS4xNTI1NCU7XG4gICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwOyB9IH1cblxuYm9keS5oZWxwIHNlY3Rpb24uaGVscC1zZWN0aW9uIGgxLFxuYm9keS5oZWxwIHNlY3Rpb24uaGVscC1zZWN0aW9uIGgyLFxuYm9keS5oZWxwIHNlY3Rpb24uY29udGFjdC1zZWN0aW9uIGgxLFxuYm9keS5oZWxwIHNlY3Rpb24uY29udGFjdC1zZWN0aW9uIGgyIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGZsb2F0OiBsZWZ0O1xuICBtYXJnaW4tbGVmdDogMDtcbiAgbWFyZ2luLXJpZ2h0OiAwOyB9XG5cbmJvZHkuaGVscCBzZWN0aW9uLmhlbHAtc2VjdGlvbiBoMSxcbmJvZHkuaGVscCBzZWN0aW9uLmNvbnRhY3Qtc2VjdGlvbiBoMSB7XG4gIG1hcmdpbi1ib3R0b206IDI1cHg7IH1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIGJvZHkuaGVscCBzZWN0aW9uLmhlbHAtc2VjdGlvbiBkaXY6bm90KDpmaXJzdC1vZi10eXBlKSB7XG4gICAgbWFyZ2luOiA1NXB4IDAgMDsgfSB9XG5cbmJvZHkuaGVscCBzZWN0aW9uLmhlbHAtc2VjdGlvbiBkaXYgZmlndXJlLFxuYm9keS5oZWxwIHNlY3Rpb24uaGVscC1zZWN0aW9uIGRpdiBoMyxcbmJvZHkuaGVscCBzZWN0aW9uLmhlbHAtc2VjdGlvbiBkaXYgcCxcbmJvZHkuaGVscCBzZWN0aW9uLmhlbHAtc2VjdGlvbiBkaXYgYSB7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbmJvZHkuaGVscCBzZWN0aW9uLmhlbHAtc2VjdGlvbiBkaXYgaDMge1xuICBtYXJnaW4tYm90dG9tOiAwOyB9XG5cbmJvZHkuaGVscCBzZWN0aW9uLmhlbHAtc2VjdGlvbiBkaXYgcCB7XG4gIG1hcmdpbi10b3A6IDVweDsgfVxuXG5ib2R5LmhlbHAgc2VjdGlvbi5oZWxwLXNlY3Rpb24gZGl2IGZpZ3VyZSB7XG4gIG1heC1oZWlnaHQ6IDE0MHB4OyB9XG5cbmJvZHkuaGVscCBzZWN0aW9uLmhlbHAtc2VjdGlvbiBkaXYgaW1nIHtcbiAgbWF4LWhlaWdodDogMTIwcHg7IH1cblxuYm9keS5oZWxwIHNlY3Rpb24uY29udGFjdC1zZWN0aW9uIHtcbiAgbWF4LXdpZHRoOiAyOTBweDtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgbWFyZ2luLXRvcDogMjVweDtcbiAgbWFyZ2luLWJvdHRvbTogNTVweDsgfVxuICBib2R5LmhlbHAgc2VjdGlvbi5jb250YWN0LXNlY3Rpb246YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIGJvZHkuaGVscCBzZWN0aW9uLmNvbnRhY3Qtc2VjdGlvbiB7XG4gICAgICBtYXgtd2lkdGg6IDcwMnB4O1xuICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87IH1cbiAgICAgIGJvZHkuaGVscCBzZWN0aW9uLmNvbnRhY3Qtc2VjdGlvbjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgY2xlYXI6IGJvdGg7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICBib2R5LmhlbHAgc2VjdGlvbi5jb250YWN0LXNlY3Rpb24ge1xuICAgICAgbWFyZ2luLXRvcDogNXB4OyB9IH1cbiAgYm9keS5oZWxwIHNlY3Rpb24uY29udGFjdC1zZWN0aW9uIGgyIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgIGJvZHkuaGVscCBzZWN0aW9uLmNvbnRhY3Qtc2VjdGlvbiBoMiB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAzMHB4OyB9IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgIGJvZHkuaGVscCBzZWN0aW9uLmNvbnRhY3Qtc2VjdGlvbiBoMjo6YmVmb3JlLCBib2R5LmhlbHAgc2VjdGlvbi5jb250YWN0LXNlY3Rpb24gaDI6OmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogc29saWQgMXB4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTtcbiAgICAgICAgd2lkdGg6IDIwMHB4O1xuICAgICAgICBtYXJnaW4tdG9wOiAyNXB4OyB9IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgIGJvZHkuaGVscCBzZWN0aW9uLmNvbnRhY3Qtc2VjdGlvbiBoMjo6YmVmb3JlLCBib2R5LmhlbHAgc2VjdGlvbi5jb250YWN0LXNlY3Rpb24gaDI6OmFmdGVyIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMjVweDsgfSB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICBib2R5LmhlbHAgc2VjdGlvbi5jb250YWN0LXNlY3Rpb24gaDI6OmJlZm9yZSB7XG4gICAgICAgIGZsb2F0OiBsZWZ0OyB9IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgIGJvZHkuaGVscCBzZWN0aW9uLmNvbnRhY3Qtc2VjdGlvbiBoMjo6YWZ0ZXIge1xuICAgICAgICBmbG9hdDogcmlnaHQ7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICBib2R5LmhlbHAgc2VjdGlvbi5jb250YWN0LXNlY3Rpb24gZGl2Lm1vZGVzLW9mLWNvbnRhY3Qge1xuICAgICAgd2lkdGg6IDEwMCU7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICBib2R5LmhlbHAgc2VjdGlvbi5jb250YWN0LXNlY3Rpb24gZGl2Lm1vZGVzLW9mLWNvbnRhY3QgZGl2IHtcbiAgICAgIHdpZHRoOiA0OS4xNTI1NCU7XG4gICAgICBmbG9hdDogbGVmdDsgfVxuICAgICAgYm9keS5oZWxwIHNlY3Rpb24uY29udGFjdC1zZWN0aW9uIGRpdi5tb2Rlcy1vZi1jb250YWN0IGRpdjpudGgtY2hpbGQoMm4gKyAxKSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IC0xMDAlO1xuICAgICAgICBjbGVhcjogYm90aDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgICAgIGJvZHkuaGVscCBzZWN0aW9uLmNvbnRhY3Qtc2VjdGlvbiBkaXYubW9kZXMtb2YtY29udGFjdCBkaXY6bnRoLWNoaWxkKDJuICsgMikge1xuICAgICAgICBtYXJnaW4tbGVmdDogNTAuODQ3NDYlO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IC0xMDAlO1xuICAgICAgICBjbGVhcjogbm9uZTsgfVxuICAgICAgYm9keS5oZWxwIHNlY3Rpb24uY29udGFjdC1zZWN0aW9uIGRpdi5tb2Rlcy1vZi1jb250YWN0IGRpdiBoMyB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDVweDsgfVxuICAgICAgYm9keS5oZWxwIHNlY3Rpb24uY29udGFjdC1zZWN0aW9uIGRpdi5tb2Rlcy1vZi1jb250YWN0IGRpdiBwIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMHB4OyB9IH1cblxuYm9keS5oZWxwIGFkZHJlc3Mge1xuICBmb250LXN0eWxlOiBub3JtYWw7IH1cblxuYm9keS5oZWxwIGEuY3RhLXBob25lLFxuYm9keS5oZWxwIGEuY3RhLWVtYWlsIHtcbiAgY29sb3I6ICNmYWU2Y2Q7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuXG5ib2R5LnJldHVybnMgc2VjdGlvbiB7XG4gIG1heC13aWR0aDogMjkwcHg7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87IH1cbiAgYm9keS5yZXR1cm5zIHNlY3Rpb246YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIGJvZHkucmV0dXJucyBzZWN0aW9uIHtcbiAgICAgIG1heC13aWR0aDogNzAycHg7XG4gICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgIG1hcmdpbi1yaWdodDogYXV0bzsgfVxuICAgICAgYm9keS5yZXR1cm5zIHNlY3Rpb246YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcIiBcIjtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGNsZWFyOiBib3RoOyB9IH1cblxuYm9keS5yZXR1cm5zIHNlY3Rpb24uaW50cm8ge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cblxuYm9keS5yZXR1cm5zIHNlY3Rpb24uY29udGVudCB7XG4gIG1hcmdpbi1ib3R0b206IDQ1cHg7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgYm9keS5yZXR1cm5zIHNlY3Rpb24uY29udGVudCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiA3MHB4OyB9IH1cbiAgYm9keS5yZXR1cm5zIHNlY3Rpb24uY29udGVudCB1bCB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7IH1cbiAgICBib2R5LnJldHVybnMgc2VjdGlvbi5jb250ZW50IHVsIGxpIHtcbiAgICAgIGRpc3BsYXk6IHRhYmxlLXJvdzsgfVxuICAgICAgYm9keS5yZXR1cm5zIHNlY3Rpb24uY29udGVudCB1bCBsaTpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiBcIuKAolwiO1xuICAgICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjRlbTsgfVxuXG5ib2R5LnJlbW90ZS1zdXBwb3J0IHNlY3Rpb24ge1xuICBtYXgtd2lkdGg6IDI5MHB4O1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9XG4gIGJvZHkucmVtb3RlLXN1cHBvcnQgc2VjdGlvbjphZnRlciB7XG4gICAgY29udGVudDogXCIgXCI7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgYm9keS5yZW1vdGUtc3VwcG9ydCBzZWN0aW9uIHtcbiAgICAgIG1heC13aWR0aDogNzAycHg7XG4gICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgIG1hcmdpbi1yaWdodDogYXV0bzsgfVxuICAgICAgYm9keS5yZW1vdGUtc3VwcG9ydCBzZWN0aW9uOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCIgXCI7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBjbGVhcjogYm90aDsgfSB9XG5cbmJvZHkucmVtb3RlLXN1cHBvcnQgc2VjdGlvbi5pbnRybyB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuXG5ib2R5LmZvdXItb2gtZm91ciBzZWN0aW9uLmNvbnRlbnQge1xuICBtYXgtd2lkdGg6IDI5MHB4O1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG1hcmdpbi1ib3R0b206IDU1cHg7IH1cbiAgYm9keS5mb3VyLW9oLWZvdXIgc2VjdGlvbi5jb250ZW50OmFmdGVyIHtcbiAgICBjb250ZW50OiBcIiBcIjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjbGVhcjogYm90aDsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICBib2R5LmZvdXItb2gtZm91ciBzZWN0aW9uLmNvbnRlbnQge1xuICAgICAgbWF4LXdpZHRoOiA3MDJweDtcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9XG4gICAgICBib2R5LmZvdXItb2gtZm91ciBzZWN0aW9uLmNvbnRlbnQ6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcIiBcIjtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGNsZWFyOiBib3RoOyB9IH1cbiAgYm9keS5mb3VyLW9oLWZvdXIgc2VjdGlvbi5jb250ZW50IGgxIHtcbiAgICBtYXJnaW4tdG9wOiAzNXB4O1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgIGJvZHkuZm91ci1vaC1mb3VyIHNlY3Rpb24uY29udGVudCBoMSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDEyNXB4OyB9IH1cbiAgYm9keS5mb3VyLW9oLWZvdXIgc2VjdGlvbi5jb250ZW50IGgyIHtcbiAgICBtYXJnaW4tdG9wOiA1cHg7IH1cbiAgYm9keS5mb3VyLW9oLWZvdXIgc2VjdGlvbi5jb250ZW50IGEuY3RhIHtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLW91dDtcbiAgICBwYWRkaW5nOiAxMHB4IDUycHg7XG4gICAgYm9yZGVyOiBzb2xpZCAxcHggI2ZhZTZjZDtcbiAgICBib3JkZXItcmFkaXVzOiA0MHB4O1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luLXRvcDogNDBweDsgfVxuICAgIGJvZHkuZm91ci1vaC1mb3VyIHNlY3Rpb24uY29udGVudCBhLmN0YTpob3ZlciB7XG4gICAgICBjb2xvcjogd2hpdGU7XG4gICAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuMSk7IH1cblxuYm9keS5kZXZlbG9wZXJzIG1haW4gYS5jdGEge1xuICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLW91dDtcbiAgcGFkZGluZzogMTBweCA1MnB4O1xuICBib3JkZXI6IHNvbGlkIDFweCAjZmFlNmNkO1xuICBib3JkZXItcmFkaXVzOiA0MHB4O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICBib2R5LmRldmVsb3BlcnMgbWFpbiBhLmN0YTpob3ZlciB7XG4gICAgY29sb3I6IHdoaXRlO1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC4xKTsgfVxuXG5ib2R5LmRldmVsb3BlcnMgbWFpbiBzZWN0aW9uIHtcbiAgbWF4LXdpZHRoOiAyOTBweDtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBtYXJnaW4tYm90dG9tOiAzNXB4O1xuICBwYWRkaW5nLWJvdHRvbTogMjVweDsgfVxuICBib2R5LmRldmVsb3BlcnMgbWFpbiBzZWN0aW9uOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIiBcIjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjbGVhcjogYm90aDsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICBib2R5LmRldmVsb3BlcnMgbWFpbiBzZWN0aW9uIHtcbiAgICAgIG1heC13aWR0aDogNzAycHg7XG4gICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgIG1hcmdpbi1yaWdodDogYXV0bzsgfVxuICAgICAgYm9keS5kZXZlbG9wZXJzIG1haW4gc2VjdGlvbjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgY2xlYXI6IGJvdGg7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICBib2R5LmRldmVsb3BlcnMgbWFpbiBzZWN0aW9uIHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiA1NXB4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogNzVweDsgfSB9XG5cbmJvZHkuZGV2ZWxvcGVycyBtYWluIHNlY3Rpb24uaW50cm8ge1xuICBib3JkZXItYm90dG9tOiBzb2xpZCAxcHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpOyB9XG4gIGJvZHkuZGV2ZWxvcGVycyBtYWluIHNlY3Rpb24uaW50cm8gaDEsXG4gIGJvZHkuZGV2ZWxvcGVycyBtYWluIHNlY3Rpb24uaW50cm8gZGl2IHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7IH1cbiAgYm9keS5kZXZlbG9wZXJzIG1haW4gc2VjdGlvbi5pbnRybyBkaXYge1xuICAgIHRleHQtYWxpZ246IGxlZnQ7IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgIGJvZHkuZGV2ZWxvcGVycyBtYWluIHNlY3Rpb24uaW50cm8gZGl2IHtcbiAgICAgICAgd2lkdGg6IDQ5LjE1MjU0JTtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMS42OTQ5MiU7IH1cbiAgICAgICAgYm9keS5kZXZlbG9wZXJzIG1haW4gc2VjdGlvbi5pbnRybyBkaXY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgd2lkdGg6IDQ5LjE1MjU0JTtcbiAgICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwOyB9IH1cblxuYm9keS5kZXZlbG9wZXJzIG1haW4gc2VjdGlvbi5waG9uZS1jb250YWN0IHtcbiAgYm9yZGVyLWJvdHRvbTogc29saWQgMXB4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTsgfVxuICBib2R5LmRldmVsb3BlcnMgbWFpbiBzZWN0aW9uLnBob25lLWNvbnRhY3QgaDEge1xuICAgIGZvbnQtc2l6ZTogMzBweDtcbiAgICBtYXJnaW4tYm90dG9tOiAtMTBweDsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgYm9keS5kZXZlbG9wZXJzIG1haW4gc2VjdGlvbi5waG9uZS1jb250YWN0IGgxIHtcbiAgICAgICAgZm9udC1zaXplOiAzNnB4OyB9IH1cbiAgYm9keS5kZXZlbG9wZXJzIG1haW4gc2VjdGlvbi5waG9uZS1jb250YWN0IGEuY3RhLXBob25lIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cblxuYm9keS5kZXZlbG9wZXJzIG1haW4gc2VjdGlvbi5yZXF1ZXN0LXNlY3Rpb24gaDIge1xuICBtYXJnaW4tYm90dG9tOiAtMTBweDsgfVxuXG5ib2R5LmRldmVsb3BlcnMgbWFpbiBzZWN0aW9uLnJlcXVlc3Qtc2VjdGlvbiBhLmN0YSB7XG4gIG1hcmdpbi10b3A6IDE1cHg7IH1cblxuYm9keS5kZWFsZXJzIG1haW4ge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWFnZXMvZGVhbGVycy1tYXAucG5nXCIpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA1MCUgODVweDtcbiAgYmFja2dyb3VuZC1zaXplOiA2NThweCAyNjhweDtcbiAgcGFkZGluZzogNzBweCAwOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIGJvZHkuZGVhbGVycyBtYWluIHtcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDUwJSA5NXB4O1xuICAgICAgYmFja2dyb3VuZC1zaXplOiAxMjAwcHggYXV0bzsgfSB9XG4gIGJvZHkuZGVhbGVycyBtYWluIHNlY3Rpb24ge1xuICAgIG1heC13aWR0aDogMjkwcHg7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9XG4gICAgYm9keS5kZWFsZXJzIG1haW4gc2VjdGlvbjphZnRlciB7XG4gICAgICBjb250ZW50OiBcIiBcIjtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgIGJvZHkuZGVhbGVycyBtYWluIHNlY3Rpb24ge1xuICAgICAgICBtYXgtd2lkdGg6IDcwMnB4O1xuICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9XG4gICAgICAgIGJvZHkuZGVhbGVycyBtYWluIHNlY3Rpb246YWZ0ZXIge1xuICAgICAgICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIGNsZWFyOiBib3RoOyB9IH1cbiAgYm9keS5kZWFsZXJzIG1haW4gc2VjdGlvbi5pbnRybyB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIGJvZHkuZGVhbGVycyBtYWluIFtpZD1cImRlYWxlcnNcIl0gdWwsXG4gICAgYm9keS5kZWFsZXJzIG1haW4gW2lkPVwiZGlzdHJpYnV0b3JzXCJdIHVsIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgIG1hcmdpbi10b3A6IC0zMHB4OyB9IH1cbiAgYm9keS5kZWFsZXJzIG1haW4gW2lkPVwiZGVhbGVyc1wiXSBsaSxcbiAgYm9keS5kZWFsZXJzIG1haW4gW2lkPVwiZGlzdHJpYnV0b3JzXCJdIGxpIHtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIG1hcmdpbi1ib3R0b206IDI3cHg7XG4gICAgbWFyZ2luLWxlZnQ6IC0zMnB4OyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICBib2R5LmRlYWxlcnMgbWFpbiBbaWQ9XCJkZWFsZXJzXCJdIGxpLFxuICAgICAgYm9keS5kZWFsZXJzIG1haW4gW2lkPVwiZGlzdHJpYnV0b3JzXCJdIGxpIHtcbiAgICAgICAgd2lkdGg6IDMyLjIwMzM5JTtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIGhlaWdodDogODBweDsgfVxuICAgICAgICBib2R5LmRlYWxlcnMgbWFpbiBbaWQ9XCJkZWFsZXJzXCJdIGxpOm50aC1jaGlsZCgzbiArIDEpLFxuICAgICAgICBib2R5LmRlYWxlcnMgbWFpbiBbaWQ9XCJkaXN0cmlidXRvcnNcIl0gbGk6bnRoLWNoaWxkKDNuICsgMSkge1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogLTEwMCU7XG4gICAgICAgICAgY2xlYXI6IGJvdGg7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgICAgICAgYm9keS5kZWFsZXJzIG1haW4gW2lkPVwiZGVhbGVyc1wiXSBsaTpudGgtY2hpbGQoM24gKyAyKSxcbiAgICAgICAgYm9keS5kZWFsZXJzIG1haW4gW2lkPVwiZGlzdHJpYnV0b3JzXCJdIGxpOm50aC1jaGlsZCgzbiArIDIpIHtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogMzMuODk4MzElO1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogLTEwMCU7XG4gICAgICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAgICAgYm9keS5kZWFsZXJzIG1haW4gW2lkPVwiZGVhbGVyc1wiXSBsaTpudGgtY2hpbGQoM24gKyAzKSxcbiAgICAgICAgYm9keS5kZWFsZXJzIG1haW4gW2lkPVwiZGlzdHJpYnV0b3JzXCJdIGxpOm50aC1jaGlsZCgzbiArIDMpIHtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogNjcuNzk2NjElO1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogLTEwMCU7XG4gICAgICAgICAgY2xlYXI6IG5vbmU7IH0gfVxuICAgIGJvZHkuZGVhbGVycyBtYWluIFtpZD1cImRlYWxlcnNcIl0gbGkgc3BhbixcbiAgICBib2R5LmRlYWxlcnMgbWFpbiBbaWQ9XCJkaXN0cmlidXRvcnNcIl0gbGkgc3BhbiB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAgICAgYm9keS5kZWFsZXJzIG1haW4gW2lkPVwiZGVhbGVyc1wiXSBsaSBzcGFuOmZpcnN0LWNoaWxkLFxuICAgICAgYm9keS5kZWFsZXJzIG1haW4gW2lkPVwiZGlzdHJpYnV0b3JzXCJdIGxpIHNwYW46Zmlyc3QtY2hpbGQge1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgIG1hcmdpbi1yaWdodDogYXV0bzsgfVxuICAgICAgYm9keS5kZWFsZXJzIG1haW4gW2lkPVwiZGVhbGVyc1wiXSBsaSBzcGFuIC5pY29uLWxpbmstZXh0LFxuICAgICAgYm9keS5kZWFsZXJzIG1haW4gW2lkPVwiZGlzdHJpYnV0b3JzXCJdIGxpIHNwYW4gLmljb24tbGluay1leHQge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAycHg7IH1cbiAgICAgIGJvZHkuZGVhbGVycyBtYWluIFtpZD1cImRlYWxlcnNcIl0gbGkgc3BhbiBhLFxuICAgICAgYm9keS5kZWFsZXJzIG1haW4gW2lkPVwiZGlzdHJpYnV0b3JzXCJdIGxpIHNwYW4gYSB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgY29sb3I6ICNmYWU2Y2Q7IH1cbiAgYm9keS5kZWFsZXJzIG1haW4gW2lkPVwiZGlzdHJpYnV0b3JzXCJdIGgyIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICBib2R5LmRlYWxlcnMgbWFpbiBbaWQ9XCJkaXN0cmlidXRvcnNcIl0gaDIge1xuICAgICAgICBwYWRkaW5nLXRvcDogMzBweDsgfSB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICBib2R5LmRlYWxlcnMgbWFpbiBbaWQ9XCJkaXN0cmlidXRvcnNcIl0gaDI6OmJlZm9yZSwgYm9keS5kZWFsZXJzIG1haW4gW2lkPVwiZGlzdHJpYnV0b3JzXCJdIGgyOjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIGJvcmRlci1ib3R0b206IHNvbGlkIDFweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSk7XG4gICAgICAgIHdpZHRoOiAyMDBweDtcbiAgICAgICAgbWFyZ2luLXRvcDogMjVweDsgfSB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICBib2R5LmRlYWxlcnMgbWFpbiBbaWQ9XCJkaXN0cmlidXRvcnNcIl0gaDI6OmJlZm9yZSwgYm9keS5kZWFsZXJzIG1haW4gW2lkPVwiZGlzdHJpYnV0b3JzXCJdIGgyOjphZnRlciB7XG4gICAgICAgIG1hcmdpbi10b3A6IDI1cHg7IH0gfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgYm9keS5kZWFsZXJzIG1haW4gW2lkPVwiZGlzdHJpYnV0b3JzXCJdIGgyOjpiZWZvcmUge1xuICAgICAgICBmbG9hdDogbGVmdDsgfSB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICBib2R5LmRlYWxlcnMgbWFpbiBbaWQ9XCJkaXN0cmlidXRvcnNcIl0gaDI6OmFmdGVyIHtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0OyB9IH1cblxuLypcbnVsIHtcbiAgICBAaW5jbHVkZSBmbHVzaC1saXN0O1xufVxuKi9cbmJvZHkuY2hhbmdlbG9ncyBzZWN0aW9uIHtcbiAgbWF4LXdpZHRoOiAyOTBweDtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bzsgfVxuICBib2R5LmNoYW5nZWxvZ3Mgc2VjdGlvbjphZnRlciB7XG4gICAgY29udGVudDogXCIgXCI7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgYm9keS5jaGFuZ2Vsb2dzIHNlY3Rpb24ge1xuICAgICAgbWF4LXdpZHRoOiA3MDJweDtcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9XG4gICAgICBib2R5LmNoYW5nZWxvZ3Mgc2VjdGlvbjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgY2xlYXI6IGJvdGg7IH0gfVxuXG5ib2R5LmNoYW5nZWxvZ3MgW2lkPVwiaW50cm9cIl0ge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cblxuW2lkPVwiY2hhbmdlbG9nc1wiXSB7XG4gIG1heC13aWR0aDogMjkwcHg7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1hcmdpbi10b3A6IDM1cHg7XG4gIG1hcmdpbi1ib3R0b206IDM1cHg7IH1cbiAgW2lkPVwiY2hhbmdlbG9nc1wiXTphZnRlciB7XG4gICAgY29udGVudDogXCIgXCI7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgW2lkPVwiY2hhbmdlbG9nc1wiXSB7XG4gICAgICBtYXgtd2lkdGg6IDcwMnB4O1xuICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87IH1cbiAgICAgIFtpZD1cImNoYW5nZWxvZ3NcIl06YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcIiBcIjtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGNsZWFyOiBib3RoOyB9IH1cbiAgW2lkPVwiY2hhbmdlbG9nc1wiXSAuY2hhbmdlbG9nIHtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIHBhZGRpbmctYm90dG9tOiAyNXB4OyB9XG4gICAgW2lkPVwiY2hhbmdlbG9nc1wiXSAuY2hhbmdlbG9nOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIFtpZD1cImNoYW5nZWxvZ3NcIl0gLmNoYW5nZWxvZzpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgIGJvcmRlci1ib3R0b206IHNvbGlkIDFweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSk7IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgIFtpZD1cImNoYW5nZWxvZ3NcIl0gLmNoYW5nZWxvZyB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAwOyB9IH1cbiAgW2lkPVwiY2hhbmdlbG9nc1wiXSAudmVyc2lvbi1kZXRhaWxzIHtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9XG4gICAgW2lkPVwiY2hhbmdlbG9nc1wiXSAudmVyc2lvbi1kZXRhaWxzOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIFtpZD1cImNoYW5nZWxvZ3NcIl0gLnZlcnNpb24tZGV0YWlscyAucG9zdGVkLWRhdGUge1xuICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgW2lkPVwiY2hhbmdlbG9nc1wiXSAuZGV0YWlscyB7XG4gICAgICBmbG9hdDogbGVmdDsgfSB9XG4gIFtpZD1cImNoYW5nZWxvZ3NcIl0gLnRyaWdnZXItY2hhbmdlbG9nIGRpdiB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHdpZHRoOiA0NC40NDQ0NCU7XG4gICAgZmxvYXQ6IGxlZnQ7IH1cbiAgICBbaWQ9XCJjaGFuZ2Vsb2dzXCJdIC50cmlnZ2VyLWNoYW5nZWxvZyBkaXY6Zmlyc3QtY2hpbGQge1xuICAgICAgd2lkdGg6IDI0cHg7IH1cbiAgW2lkPVwiY2hhbmdlbG9nc1wiXSAudG9nZ2xlLWluZGljYXRvciB7XG4gICAgd2lkdGg6IDI0cHg7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2U7XG4gICAgbWFyZ2luLXRvcDogMTlweDsgfVxuICAgIFtpZD1cImNoYW5nZWxvZ3NcIl0gLnRvZ2dsZS1pbmRpY2F0b3Iub3BlbiB7XG4gICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTsgfVxuICBbaWQ9XCJjaGFuZ2Vsb2dzXCJdIGgzIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4OyB9XG4gICAgW2lkPVwiY2hhbmdlbG9nc1wiXSBoMyBhIHtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuICBbaWQ9XCJjaGFuZ2Vsb2dzXCJdIHAge1xuICAgIG1hcmdpbi10b3A6IDVweDsgfVxuICBbaWQ9XCJjaGFuZ2Vsb2dzXCJdIC5jb2xsYXBzZS10cmlnZ2VyIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgW2lkPVwiY2hhbmdlbG9nc1wiXSBhLmN0YSB7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1vdXQ7XG4gICAgcGFkZGluZzogMTBweCA1MnB4O1xuICAgIGJvcmRlcjogc29saWQgMXB4ICNmYWU2Y2Q7XG4gICAgYm9yZGVyLXJhZGl1czogNDBweDtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHdpZHRoOiAyMzVweDsgfVxuICAgIFtpZD1cImNoYW5nZWxvZ3NcIl0gYS5jdGE6aG92ZXIge1xuICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjEpOyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICBbaWQ9XCJjaGFuZ2Vsb2dzXCJdIGEuY3RhIHtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICBtYXJnaW4tdG9wOiAyMnB4OyB9IH1cbiAgICBbaWQ9XCJjaGFuZ2Vsb2dzXCJdIGEuY3RhLmRvd25sb2FkLWxpbmsge1xuICAgICAgbWFyZ2luLXRvcDogMTVweDsgfVxuICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAgIFtpZD1cImNoYW5nZWxvZ3NcIl0gYS5jdGEuZG93bmxvYWQtbGluayB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogMjJweDtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDE1cHg7IH0gfVxuICBbaWQ9XCJjaGFuZ2Vsb2dzXCJdIC5jaGFuZ2VzIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIG1pbi13aWR0aDogMTAwJTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9XG4gICAgW2lkPVwiY2hhbmdlbG9nc1wiXSAuY2hhbmdlczphZnRlciB7XG4gICAgICBjb250ZW50OiBcIiBcIjtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICBbaWQ9XCJjaGFuZ2Vsb2dzXCJdIC5jaGFuZ2VzIHVsIHtcbiAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICBsaXN0LXN0eWxlOiBub25lOyB9XG4gICAgICBbaWQ9XCJjaGFuZ2Vsb2dzXCJdIC5jaGFuZ2VzIHVsIGxpIHtcbiAgICAgICAgZGlzcGxheTogdGFibGUtcm93OyB9XG4gICAgICAgIFtpZD1cImNoYW5nZWxvZ3NcIl0gLmNoYW5nZXMgdWwgbGk6YmVmb3JlIHtcbiAgICAgICAgICBjb250ZW50OiBcIuKAolwiO1xuICAgICAgICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogMC40ZW07IH1cblxuYm9keS5kb3dubG9hZHMgc2VjdGlvbiB7XG4gIG1heC13aWR0aDogMjkwcHg7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87IH1cbiAgYm9keS5kb3dubG9hZHMgc2VjdGlvbjphZnRlciB7XG4gICAgY29udGVudDogXCIgXCI7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgYm9keS5kb3dubG9hZHMgc2VjdGlvbiB7XG4gICAgICBtYXgtd2lkdGg6IDcwMnB4O1xuICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87IH1cbiAgICAgIGJvZHkuZG93bmxvYWRzIHNlY3Rpb246YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcIiBcIjtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGNsZWFyOiBib3RoOyB9IH1cbiAgYm9keS5kb3dubG9hZHMgc2VjdGlvbiBhLmN0YSB7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1vdXQ7XG4gICAgcGFkZGluZzogMTBweCA1MnB4O1xuICAgIGJvcmRlcjogc29saWQgMXB4ICNmYWU2Y2Q7XG4gICAgYm9yZGVyLXJhZGl1czogNDBweDtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAgIGJvZHkuZG93bmxvYWRzIHNlY3Rpb24gYS5jdGE6aG92ZXIge1xuICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjEpOyB9XG4gIGJvZHkuZG93bmxvYWRzIHNlY3Rpb24gYSB7XG4gICAgY29sb3I6ICNmYWU2Y2Q7IH1cblxuYm9keS5kb3dubG9hZHMgW2lkPVwiaW50cm9cIl0gaDEge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIGJvZHkuZG93bmxvYWRzIFtpZD1cInRyYWNraXItc29mdHdhcmVcIl0gLnRyYWNraXItY2FsbG91dCB7XG4gICAgd2lkdGg6IDY2LjEwMTY5JTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBtYXJnaW4tcmlnaHQ6IDEuNjk0OTIlO1xuICAgIG1hcmdpbi1sZWZ0OiAxNi45NDkxNSU7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9IH1cblxuYm9keS5kb3dubG9hZHMgW2lkPVwidHJhY2tpci1zb2Z0d2FyZVwiXSAudHJhY2tpci1jYWxsb3V0IGltZyB7XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7IH1cblxuYm9keS5kb3dubG9hZHMgW2lkPVwidHJhY2tpci1zb2Z0d2FyZVwiXSAudHJhY2tpci1jYWxsb3V0IGgzIHtcbiAgZm9udC1zaXplOiAxOHB4OyB9XG5cbmJvZHkuZG93bmxvYWRzIFtpZD1cInRyYWNraXItc29mdHdhcmVcIl0gLnRyYWNraXItY2FsbG91dCAuc2Vjb25kYXJ5IHtcbiAgZm9udC1zaXplOiAxNnB4O1xuICBtYXJnaW4tdG9wOiAtMjBweDtcbiAgbGluZS1oZWlnaHQ6IDI2cHg7XG4gIG1hcmdpbi1ib3R0b206IDMwcHg7IH1cblxuYm9keS5kb3dubG9hZHMgW2lkPVwidHJhY2tpci1zb2Z0d2FyZVwiXSAudHJhY2tpci1jYWxsb3V0IGEuY3RhIHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgcGFkZGluZzogMTBweCAyMHB4O1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICBib2R5LmRvd25sb2FkcyBbaWQ9XCJ0cmFja2lyLXNvZnR3YXJlXCJdIC50cmFja2lyLWNhbGxvdXQgYS5jdGEge1xuICAgICAgcGFkZGluZzogMTBweCA1MnB4O1xuICAgICAgd2lkdGg6IDcwJTsgfSB9XG5cbmJvZHkuZG93bmxvYWRzIFtpZD1cImFsZXJ0cy1hbmQtcmVxdWlyZW1lbnRzXCJdIHtcbiAgbWFyZ2luLXRvcDogNTBweDsgfVxuICBib2R5LmRvd25sb2FkcyBbaWQ9XCJhbGVydHMtYW5kLXJlcXVpcmVtZW50c1wiXSAuYWxlcnRzLWFuZC1ub3RpY2VzLFxuICBib2R5LmRvd25sb2FkcyBbaWQ9XCJhbGVydHMtYW5kLXJlcXVpcmVtZW50c1wiXSAuc3lzdGVtLXJlcXVpcmVtZW50cyB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgIGJvZHkuZG93bmxvYWRzIFtpZD1cImFsZXJ0cy1hbmQtcmVxdWlyZW1lbnRzXCJdIC5hbGVydHMtYW5kLW5vdGljZXMsXG4gICAgICBib2R5LmRvd25sb2FkcyBbaWQ9XCJhbGVydHMtYW5kLXJlcXVpcmVtZW50c1wiXSAuc3lzdGVtLXJlcXVpcmVtZW50cyB7XG4gICAgICAgIHdpZHRoOiA0OS4xNTI1NCU7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDEuNjk0OTIlOyB9IH1cbiAgICBib2R5LmRvd25sb2FkcyBbaWQ9XCJhbGVydHMtYW5kLXJlcXVpcmVtZW50c1wiXSAuYWxlcnRzLWFuZC1ub3RpY2VzIHVsLFxuICAgIGJvZHkuZG93bmxvYWRzIFtpZD1cImFsZXJ0cy1hbmQtcmVxdWlyZW1lbnRzXCJdIC5zeXN0ZW0tcmVxdWlyZW1lbnRzIHVsIHtcbiAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICBsaXN0LXN0eWxlOiBub25lOyB9XG4gICAgICBib2R5LmRvd25sb2FkcyBbaWQ9XCJhbGVydHMtYW5kLXJlcXVpcmVtZW50c1wiXSAuYWxlcnRzLWFuZC1ub3RpY2VzIHVsIGxpLFxuICAgICAgYm9keS5kb3dubG9hZHMgW2lkPVwiYWxlcnRzLWFuZC1yZXF1aXJlbWVudHNcIl0gLnN5c3RlbS1yZXF1aXJlbWVudHMgdWwgbGkge1xuICAgICAgICBkaXNwbGF5OiB0YWJsZS1yb3c7IH1cbiAgICAgICAgYm9keS5kb3dubG9hZHMgW2lkPVwiYWxlcnRzLWFuZC1yZXF1aXJlbWVudHNcIl0gLmFsZXJ0cy1hbmQtbm90aWNlcyB1bCBsaTpiZWZvcmUsXG4gICAgICAgIGJvZHkuZG93bmxvYWRzIFtpZD1cImFsZXJ0cy1hbmQtcmVxdWlyZW1lbnRzXCJdIC5zeXN0ZW0tcmVxdWlyZW1lbnRzIHVsIGxpOmJlZm9yZSB7XG4gICAgICAgICAgY29udGVudDogXCLigKJcIjtcbiAgICAgICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNGVtOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIGJvZHkuZG93bmxvYWRzIFtpZD1cImFsZXJ0cy1hbmQtcmVxdWlyZW1lbnRzXCJdIC5zeXN0ZW0tcmVxdWlyZW1lbnRzIHtcbiAgICAgIHdpZHRoOiA0OS4xNTI1NCU7XG4gICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7IH0gfVxuXG5ib2R5LmRvd25sb2FkcyBbaWQ9XCJtYW51YWxzXCJdIGgyIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIGJvZHkuZG93bmxvYWRzIFtpZD1cIm1hbnVhbHNcIl0gaDIge1xuICAgICAgcGFkZGluZy10b3A6IDMwcHg7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICBib2R5LmRvd25sb2FkcyBbaWQ9XCJtYW51YWxzXCJdIGgyOjpiZWZvcmUsIGJvZHkuZG93bmxvYWRzIFtpZD1cIm1hbnVhbHNcIl0gaDI6OmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBib3JkZXItYm90dG9tOiBzb2xpZCAxcHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpO1xuICAgICAgd2lkdGg6IDIwMHB4O1xuICAgICAgbWFyZ2luLXRvcDogMjVweDsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIGJvZHkuZG93bmxvYWRzIFtpZD1cIm1hbnVhbHNcIl0gaDI6OmJlZm9yZSwgYm9keS5kb3dubG9hZHMgW2lkPVwibWFudWFsc1wiXSBoMjo6YWZ0ZXIge1xuICAgICAgbWFyZ2luLXRvcDogMjVweDsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIGJvZHkuZG93bmxvYWRzIFtpZD1cIm1hbnVhbHNcIl0gaDI6OmJlZm9yZSB7XG4gICAgICBmbG9hdDogbGVmdDsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIGJvZHkuZG93bmxvYWRzIFtpZD1cIm1hbnVhbHNcIl0gaDI6OmFmdGVyIHtcbiAgICAgIGZsb2F0OiByaWdodDsgfSB9XG5cbmJvZHkuZG93bmxvYWRzIFtpZD1cIm1hbnVhbHNcIl0gLm1hbnVhbHMge1xuICBtYXJnaW4tdG9wOiA2MHB4OyB9XG4gIGJvZHkuZG93bmxvYWRzIFtpZD1cIm1hbnVhbHNcIl0gLm1hbnVhbHMgZmlndXJlIHtcbiAgICBtYXJnaW4tYm90dG9tOiA1MHB4O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgYm9keS5kb3dubG9hZHMgW2lkPVwibWFudWFsc1wiXSAubWFudWFscyBmaWd1cmUge1xuICAgICAgICB3aWR0aDogMzIuMjAzMzklO1xuICAgICAgICBmbG9hdDogbGVmdDsgfVxuICAgICAgICBib2R5LmRvd25sb2FkcyBbaWQ9XCJtYW51YWxzXCJdIC5tYW51YWxzIGZpZ3VyZTpudGgtY2hpbGQoM24gKyAxKSB7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAtMTAwJTtcbiAgICAgICAgICBjbGVhcjogYm90aDtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogMDsgfVxuICAgICAgICBib2R5LmRvd25sb2FkcyBbaWQ9XCJtYW51YWxzXCJdIC5tYW51YWxzIGZpZ3VyZTpudGgtY2hpbGQoM24gKyAyKSB7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDMzLjg5ODMxJTtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IC0xMDAlO1xuICAgICAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgICAgIGJvZHkuZG93bmxvYWRzIFtpZD1cIm1hbnVhbHNcIl0gLm1hbnVhbHMgZmlndXJlOm50aC1jaGlsZCgzbiArIDMpIHtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogNjcuNzk2NjElO1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogLTEwMCU7XG4gICAgICAgICAgY2xlYXI6IG5vbmU7IH0gfVxuICAgIGJvZHkuZG93bmxvYWRzIFtpZD1cIm1hbnVhbHNcIl0gLm1hbnVhbHMgZmlndXJlIGltZyB7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMTVweDtcbiAgICAgIGhlaWdodDogMTM4cHg7IH1cbiAgICBib2R5LmRvd25sb2FkcyBbaWQ9XCJtYW51YWxzXCJdIC5tYW51YWxzIGZpZ3VyZSBzcGFuIHtcbiAgICAgIG1hcmdpbjogM3B4IGF1dG87XG4gICAgICBkaXNwbGF5OiBibG9jazsgfVxuICAgICAgYm9keS5kb3dubG9hZHMgW2lkPVwibWFudWFsc1wiXSAubWFudWFscyBmaWd1cmUgc3BhbjpmaXJzdC1vZi10eXBlIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7IH1cbiAgICBib2R5LmRvd25sb2FkcyBbaWQ9XCJtYW51YWxzXCJdIC5tYW51YWxzIGZpZ3VyZSBhLmN0YSB7XG4gICAgICBtYXJnaW4tdG9wOiAxNXB4O1xuICAgICAgcGFkZGluZzogMTBweCAyMHB4O1xuICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgICBib2R5LmRvd25sb2FkcyBbaWQ9XCJtYW51YWxzXCJdIC5tYW51YWxzIGZpZ3VyZSBhLmN0YSB7XG4gICAgICAgICAgcGFkZGluZzogMTBweCA1MnB4O1xuICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfSB9XG5cbmJvZHkuc29mdHdhcmUtbmV3cyBzZWN0aW9uIHtcbiAgbWF4LXdpZHRoOiAyOTBweDtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bzsgfVxuICBib2R5LnNvZnR3YXJlLW5ld3Mgc2VjdGlvbjphZnRlciB7XG4gICAgY29udGVudDogXCIgXCI7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgYm9keS5zb2Z0d2FyZS1uZXdzIHNlY3Rpb24ge1xuICAgICAgbWF4LXdpZHRoOiA3MDJweDtcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9XG4gICAgICBib2R5LnNvZnR3YXJlLW5ld3Mgc2VjdGlvbjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgY2xlYXI6IGJvdGg7IH0gfVxuXG5ib2R5LnNvZnR3YXJlLW5ld3MgW2lkPVwiaW50cm9cIl0ge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cblxuYm9keS5zb2Z0d2FyZS1uZXdzIHNlY3Rpb24ge1xuICBtYXgtd2lkdGg6IDI5MHB4O1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9XG4gIGJvZHkuc29mdHdhcmUtbmV3cyBzZWN0aW9uOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIiBcIjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjbGVhcjogYm90aDsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICBib2R5LnNvZnR3YXJlLW5ld3Mgc2VjdGlvbiB7XG4gICAgICBtYXgtd2lkdGg6IDcwMnB4O1xuICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87IH1cbiAgICAgIGJvZHkuc29mdHdhcmUtbmV3cyBzZWN0aW9uOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCIgXCI7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBjbGVhcjogYm90aDsgfSB9XG5cbmJvZHkuc29mdHdhcmUtbmV3cyBbaWQ9XCJpbnRyb1wiXSB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuXG5ib2R5LnNvZnR3YXJlLW5ld3MgLmRvd25sb2FkLWFuZC1tYW51YWwgYSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nLXRvcDogMTBweDsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICBib2R5LnNvZnR3YXJlLW5ld3MgLmRvd25sb2FkLWFuZC1tYW51YWwgYSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cbiAgICAgIGJvZHkuc29mdHdhcmUtbmV3cyAuZG93bmxvYWQtYW5kLW1hbnVhbCBhOmxhc3QtY2hpbGQge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7IH0gfVxuXG5ib2R5LnNvZnR3YXJlLW5ld3MgW2lkPVwiY2hhbmdlbG9nXCJdIHtcbiAgbWFyZ2luLWJvdHRvbTogNDVweDsgfVxuXG5ib2R5LnByZXZpb3VzLXJlbGVhc2VzIHNlY3Rpb24ge1xuICBtYXgtd2lkdGg6IDI5MHB4O1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9XG4gIGJvZHkucHJldmlvdXMtcmVsZWFzZXMgc2VjdGlvbjphZnRlciB7XG4gICAgY29udGVudDogXCIgXCI7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgYm9keS5wcmV2aW91cy1yZWxlYXNlcyBzZWN0aW9uIHtcbiAgICAgIG1heC13aWR0aDogNzAycHg7XG4gICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgIG1hcmdpbi1yaWdodDogYXV0bzsgfVxuICAgICAgYm9keS5wcmV2aW91cy1yZWxlYXNlcyBzZWN0aW9uOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCIgXCI7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBjbGVhcjogYm90aDsgfSB9XG5cbmJvZHkucHJldmlvdXMtcmVsZWFzZXMgc2VjdGlvbltpZD1cImludHJvXCJdIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG5cbmJvZHkucHJldmlvdXMtcmVsZWFzZXMgLnJldHVybi1saW5rIHtcbiAgbWFyZ2luOiAxMHB4IDA7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbmJvZHkucHJldmlvdXMtcmVsZWFzZXMgc2VjdGlvbltpZD1cInJlbGVhc2VzXCJdIHtcbiAgbWFyZ2luLWJvdHRvbTogMzVweDsgfVxuICBib2R5LnByZXZpb3VzLXJlbGVhc2VzIHNlY3Rpb25baWQ9XCJyZWxlYXNlc1wiXSAuZG93bmxvYWQge1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgcGFkZGluZy1ib3R0b206IDI1cHg7IH1cbiAgICBib2R5LnByZXZpb3VzLXJlbGVhc2VzIHNlY3Rpb25baWQ9XCJyZWxlYXNlc1wiXSAuZG93bmxvYWQ6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCIgXCI7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgYm9keS5wcmV2aW91cy1yZWxlYXNlcyBzZWN0aW9uW2lkPVwicmVsZWFzZXNcIl0gLmRvd25sb2FkOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgYm9yZGVyLWJvdHRvbTogc29saWQgMXB4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgYm9keS5wcmV2aW91cy1yZWxlYXNlcyBzZWN0aW9uW2lkPVwicmVsZWFzZXNcIl0gLmRvd25sb2FkIHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDA7IH0gfVxuICBib2R5LnByZXZpb3VzLXJlbGVhc2VzIHNlY3Rpb25baWQ9XCJyZWxlYXNlc1wiXSAuZGV0YWlscyB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICBib2R5LnByZXZpb3VzLXJlbGVhc2VzIHNlY3Rpb25baWQ9XCJyZWxlYXNlc1wiXSAuZGV0YWlscyB7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9IH1cbiAgYm9keS5wcmV2aW91cy1yZWxlYXNlcyBzZWN0aW9uW2lkPVwicmVsZWFzZXNcIl0gaDMge1xuICAgIG1hcmdpbi1ib3R0b206IDEwcHg7IH1cbiAgYm9keS5wcmV2aW91cy1yZWxlYXNlcyBzZWN0aW9uW2lkPVwicmVsZWFzZXNcIl0gcCB7XG4gICAgbWFyZ2luLXRvcDogNXB4OyB9XG4gIGJvZHkucHJldmlvdXMtcmVsZWFzZXMgc2VjdGlvbltpZD1cInJlbGVhc2VzXCJdIC5kb3dubG9hZC1saW5rIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgYm9keS5wcmV2aW91cy1yZWxlYXNlcyBzZWN0aW9uW2lkPVwicmVsZWFzZXNcIl0gYS5jdGEge1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2Utb3V0O1xuICAgIHBhZGRpbmc6IDEwcHggNTJweDtcbiAgICBib3JkZXI6IHNvbGlkIDFweCAjZmFlNmNkO1xuICAgIGJvcmRlci1yYWRpdXM6IDQwcHg7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICAgIGJvZHkucHJldmlvdXMtcmVsZWFzZXMgc2VjdGlvbltpZD1cInJlbGVhc2VzXCJdIGEuY3RhOmhvdmVyIHtcbiAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC4xKTsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgYm9keS5wcmV2aW91cy1yZWxlYXNlcyBzZWN0aW9uW2lkPVwicmVsZWFzZXNcIl0gYS5jdGEge1xuICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgIG1hcmdpbi10b3A6IDIycHg7IH0gfVxuXG5Aa2V5ZnJhbWVzIG1vdmVoZWFkIHtcbiAgZnJvbSB7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogbGVmdCBjZW50ZXI7IH1cbiAgdG8ge1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0xMjAwMHB4OyB9IH1cblxuW2lkPVwiZmVhdHVyZWQtcHJvZHVjdHNcIl0ge1xuICBwYWRkaW5nOiAyNXB4IDAgMzBweDtcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjEpO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgW2lkPVwiZmVhdHVyZWQtcHJvZHVjdHNcIl0ge1xuICAgICAgcGFkZGluZzogMjVweCAwIDY1cHg7IH0gfVxuICBbaWQ9XCJmZWF0dXJlZC1wcm9kdWN0c1wiXSBhLmN0YSB7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1vdXQ7XG4gICAgcGFkZGluZzogMTBweCA1MnB4O1xuICAgIGJvcmRlcjogc29saWQgMXB4ICNmYWU2Y2Q7XG4gICAgYm9yZGVyLXJhZGl1czogNDBweDtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG4gICAgW2lkPVwiZmVhdHVyZWQtcHJvZHVjdHNcIl0gYS5jdGE6aG92ZXIge1xuICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjEpOyB9XG4gIFtpZD1cImZlYXR1cmVkLXByb2R1Y3RzXCJdIC5wcm9kdWN0cyB7XG4gICAgbWF4LXdpZHRoOiAyOTBweDtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87IH1cbiAgICBbaWQ9XCJmZWF0dXJlZC1wcm9kdWN0c1wiXSAucHJvZHVjdHM6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCIgXCI7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICBbaWQ9XCJmZWF0dXJlZC1wcm9kdWN0c1wiXSAucHJvZHVjdHMge1xuICAgICAgICBtYXgtd2lkdGg6IDcwMnB4O1xuICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9XG4gICAgICAgIFtpZD1cImZlYXR1cmVkLXByb2R1Y3RzXCJdIC5wcm9kdWN0czphZnRlciB7XG4gICAgICAgICAgY29udGVudDogXCIgXCI7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgY2xlYXI6IGJvdGg7IH0gfVxuICBbaWQ9XCJmZWF0dXJlZC1wcm9kdWN0c1wiXSAucHJvZHVjdCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgbWFyZ2luLXJpZ2h0OiAwOyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICBbaWQ9XCJmZWF0dXJlZC1wcm9kdWN0c1wiXSAucHJvZHVjdCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDY1cHg7IH0gfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgW2lkPVwiZmVhdHVyZWQtcHJvZHVjdHNcIl0gLnByb2R1Y3Q6bGFzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDM1cHg7IH0gfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgW2lkPVwiZmVhdHVyZWQtcHJvZHVjdHNcIl0gLnByb2R1Y3Qge1xuICAgICAgICB3aWR0aDogMzIuMjAzMzklO1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxLjY5NDkyJTsgfVxuICAgICAgICBbaWQ9XCJmZWF0dXJlZC1wcm9kdWN0c1wiXSAucHJvZHVjdDpsYXN0LWNoaWxkIHtcbiAgICAgICAgICB3aWR0aDogMzIuMjAzMzklO1xuICAgICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7IH0gfVxuICAgIFtpZD1cImZlYXR1cmVkLXByb2R1Y3RzXCJdIC5wcm9kdWN0IHAge1xuICAgICAgbWFyZ2luOiAxMHB4IDAgLTVweDsgfVxuICAgIFtpZD1cImZlYXR1cmVkLXByb2R1Y3RzXCJdIC5wcm9kdWN0IHAucHJpY2Uge1xuICAgICAgcGFkZGluZy10b3A6IDBweDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7IH1cbiAgICBbaWQ9XCJmZWF0dXJlZC1wcm9kdWN0c1wiXSAucHJvZHVjdCBmaWd1cmUge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgbWFyZ2luOiAwIGF1dG8gMjBweDtcbiAgICAgIGhlaWdodDogMTc1cHg7XG4gICAgICBsaW5lLWhlaWdodDogMTc1cHg7XG4gICAgICB3aWR0aDogMjgwcHg7IH1cbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgICBbaWQ9XCJmZWF0dXJlZC1wcm9kdWN0c1wiXSAucHJvZHVjdCBmaWd1cmUge1xuICAgICAgICAgIHdpZHRoOiAyMjBweDsgfSB9XG4gICAgICBbaWQ9XCJmZWF0dXJlZC1wcm9kdWN0c1wiXSAucHJvZHVjdCBmaWd1cmUgaW1nIHtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tOyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICBbaWQ9XCJmZWF0dXJlZC1wcm9kdWN0c1wiXSAucHJvZHVjdFtpZD1cInRyYWNrY2xpcC1wcm9cIl0gZmlndXJlIHtcbiAgICAgICAgaGVpZ2h0OiAyMjVweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDIyNXB4OyB9IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgIFtpZD1cImZlYXR1cmVkLXByb2R1Y3RzXCJdIC5wcm9kdWN0W2lkPVwidHJhY2tjbGlwLXByb1wiXSBmaWd1cmUgaW1nIHtcbiAgICAgICAgaGVpZ2h0OiAxNDBweDsgfSB9XG4gICAgW2lkPVwiZmVhdHVyZWQtcHJvZHVjdHNcIl0gLnByb2R1Y3RbaWQ9XCJ0aXI1XCJdIGZpZ3VyZSB7XG4gICAgICB3aWR0aDogMjEwcHg7IH1cbiAgICBbaWQ9XCJmZWF0dXJlZC1wcm9kdWN0c1wiXSAucHJvZHVjdFtpZD1cInRpcjUtcHJvLWJ1bmRsZVwiXSBmaWd1cmUge1xuICAgICAgd2lkdGg6IDI4MHB4OyB9XG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgW2lkPVwiZmVhdHVyZWQtcHJvZHVjdHNcIl0gLnByb2R1Y3RbaWQ9XCJ0aXI1LXByby1idW5kbGVcIl0gZmlndXJlIHtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogLTI5cHg7IH0gfVxuXG5ib2R5LnRyYWNraXI1IHtcbiAgLyogQmFja2dyb3VuZDogKi8gfVxuICBib2R5LnRyYWNraXI1IG1haW4ge1xuICAgIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgYm9keS50cmFja2lyNSBzZWN0aW9uIHtcbiAgICBtYXgtd2lkdGg6IDI5MHB4O1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bzsgfVxuICAgIGJvZHkudHJhY2tpcjUgc2VjdGlvbjphZnRlciB7XG4gICAgICBjb250ZW50OiBcIiBcIjtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgIGJvZHkudHJhY2tpcjUgc2VjdGlvbiB7XG4gICAgICAgIG1heC13aWR0aDogNzAycHg7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87IH1cbiAgICAgICAgYm9keS50cmFja2lyNSBzZWN0aW9uOmFmdGVyIHtcbiAgICAgICAgICBjb250ZW50OiBcIiBcIjtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBjbGVhcjogYm90aDsgfSB9XG4gIGJvZHkudHJhY2tpcjUgc2VjdGlvbi5pbnRybyB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIGJvZHkudHJhY2tpcjUgZGl2Lm1vbml0b3Ige1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltYWdlcy90cmFja2lyLTUtZm9yLW1vbml0b3IucG5nXCIpLCB1cmwoXCIuLi9pbWFnZXMvbW9uaXRvci1iZXplbC5wbmdcIiksIHJhZGlhbC1ncmFkaWVudChlbGxpcHNlIGF0IHRvcCwgIzNiM2IzYiAwJSwgYmxhY2sgMTAwJSk7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdCwgcmVwZWF0LXgsIG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA1MCUgNDNweCwgMHB4IDI2NXB4LCAwcHggMjcwcHg7XG4gICAgYmFja2dyb3VuZC1zaXplOiAzNzBweCwgMTAwJSA2NXB4LCBhdXRvO1xuICAgIHBhZGRpbmctdG9wOiAyOTBweDsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgYm9keS50cmFja2lyNSBkaXYubW9uaXRvciB7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDUwJSA0NHB4LCAwcHggMzMwcHgsIDBweCAzNDRweDtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiA0NzVweCBhdXRvLCAxMDAlIDY1cHgsIGF1dG8gYXV0bztcbiAgICAgICAgcGFkZGluZy10b3A6IDM5MHB4OyB9IH1cbiAgYm9keS50cmFja2lyNSAuc2l4ZG9GIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgICBib2R5LnRyYWNraXI1IC5zaXhkb0YgaDIge1xuICAgICAgbWFyZ2luLXRvcDogNTBweDsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgYm9keS50cmFja2lyNSAuc2l4ZG9GID4gaDIgc3BhbiB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrOyB9IH1cbiAgICBib2R5LnRyYWNraXI1IC5zaXhkb0YgcCB7XG4gICAgICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpOyB9XG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgYm9keS50cmFja2lyNSAuc2l4ZG9GIHAge1xuICAgICAgICAgIHdpZHRoOiA2Ni4xMDE2OSU7XG4gICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxLjY5NDkyJTtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogMTYuOTQ5MTUlOyB9IH1cbiAgICBib2R5LnRyYWNraXI1IC5zaXhkb0YgZGl2LmhlYWRzIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDEuNjk0OTIlO1xuICAgICAgbWFyZ2luLWJvdHRvbTogNDVweDtcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7IH1cbiAgICAgIGJvZHkudHJhY2tpcjUgLnNpeGRvRiBkaXYuaGVhZHMgLmFuaW1hdGlvbi1zcG90IHtcbiAgICAgICAgd2lkdGg6IDEwMHB4O1xuICAgICAgICBtYXJnaW46IDE1cHggMTVweDtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBvdmVyZmxvdzogdmlzaWJsZTsgfVxuICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgICBib2R5LnRyYWNraXI1IC5zaXhkb0YgZGl2LmhlYWRzIC5hbmltYXRpb24tc3BvdCB7XG4gICAgICAgICAgICB3aWR0aDogMTUuMjU0MjQlO1xuICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7IH1cbiAgICAgICAgICAgIGJvZHkudHJhY2tpcjUgLnNpeGRvRiBkaXYuaGVhZHMgLmFuaW1hdGlvbi1zcG90Om50aC1jaGlsZCg2biArIDEpIHtcbiAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogLTEwMCU7XG4gICAgICAgICAgICAgIGNsZWFyOiBib3RoO1xuICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMDsgfVxuICAgICAgICAgICAgYm9keS50cmFja2lyNSAuc2l4ZG9GIGRpdi5oZWFkcyAuYW5pbWF0aW9uLXNwb3Q6bnRoLWNoaWxkKDZuICsgMikge1xuICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMTYuOTQ5MTUlO1xuICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IC0xMDAlO1xuICAgICAgICAgICAgICBjbGVhcjogbm9uZTsgfVxuICAgICAgICAgICAgYm9keS50cmFja2lyNSAuc2l4ZG9GIGRpdi5oZWFkcyAuYW5pbWF0aW9uLXNwb3Q6bnRoLWNoaWxkKDZuICsgMykge1xuICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMzMuODk4MzElO1xuICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IC0xMDAlO1xuICAgICAgICAgICAgICBjbGVhcjogbm9uZTsgfVxuICAgICAgICAgICAgYm9keS50cmFja2lyNSAuc2l4ZG9GIGRpdi5oZWFkcyAuYW5pbWF0aW9uLXNwb3Q6bnRoLWNoaWxkKDZuICsgNCkge1xuICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogNTAuODQ3NDYlO1xuICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IC0xMDAlO1xuICAgICAgICAgICAgICBjbGVhcjogbm9uZTsgfVxuICAgICAgICAgICAgYm9keS50cmFja2lyNSAuc2l4ZG9GIGRpdi5oZWFkcyAuYW5pbWF0aW9uLXNwb3Q6bnRoLWNoaWxkKDZuICsgNSkge1xuICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogNjcuNzk2NjElO1xuICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IC0xMDAlO1xuICAgICAgICAgICAgICBjbGVhcjogbm9uZTsgfVxuICAgICAgICAgICAgYm9keS50cmFja2lyNSAuc2l4ZG9GIGRpdi5oZWFkcyAuYW5pbWF0aW9uLXNwb3Q6bnRoLWNoaWxkKDZuICsgNikge1xuICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogODQuNzQ1NzYlO1xuICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IC0xMDAlO1xuICAgICAgICAgICAgICBjbGVhcjogbm9uZTsgfSB9XG4gICAgICAgIGJvZHkudHJhY2tpcjUgLnNpeGRvRiBkaXYuaGVhZHMgLmFuaW1hdGlvbi1zcG90LmhvdmVyIC5zcHJpdGUge1xuICAgICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgICAgICAgbWFyZ2luLXRvcDogLTE3NXB4O1xuICAgICAgICAgIGFuaW1hdGlvbjogbW92ZWhlYWQgMnMgc3RlcHMoMzApIGluZmluaXRlO1xuICAgICAgICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IHZpc2liaWxpdHk7XG4gICAgICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMXM7IH1cbiAgICAgICAgYm9keS50cmFja2lyNSAuc2l4ZG9GIGRpdi5oZWFkcyAuYW5pbWF0aW9uLXNwb3QuaG92ZXIgLmdob3N0IHtcbiAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IG9wYWNpdHk7XG4gICAgICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMS41czsgfVxuICAgICAgICBib2R5LnRyYWNraXI1IC5zaXhkb0YgZGl2LmhlYWRzIC5hbmltYXRpb24tc3BvdCBwIHtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiAyNXB4O1xuICAgICAgICAgIG1hcmdpbi10b3A6IC0xNXB4OyB9XG4gICAgICAgIGJvZHkudHJhY2tpcjUgLnNpeGRvRiBkaXYuaGVhZHMgLmFuaW1hdGlvbi1zcG90IC5zcHJpdGUge1xuICAgICAgICAgIHdpZHRoOiAxMDBweDtcbiAgICAgICAgICBoZWlnaHQ6IDEzOHB4O1xuICAgICAgICAgIG1hcmdpbjogMjVweCAxNXB4O1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICBtYXJnaW4tdG9wOiAtMTc1cHg7XG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGxlZnQgY2VudGVyO1xuICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMC44Mik7IH1cbiAgICAgICAgYm9keS50cmFja2lyNSAuc2l4ZG9GIGRpdi5oZWFkcyAuYW5pbWF0aW9uLXNwb3QgLmdob3N0IHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgICAgICAgd2lkdGg6IDEyMHB4O1xuICAgICAgICAgIGhlaWdodDogMTM4cHg7XG4gICAgICAgICAgbWFyZ2luOiAxMnB4IDE1cHggMTJweCA1cHg7XG4gICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiBvcGFjaXR5O1xuICAgICAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDFzOyB9XG4gICAgICAgICAgYm9keS50cmFja2lyNSAuc2l4ZG9GIGRpdi5oZWFkcyAuYW5pbWF0aW9uLXNwb3QgLmdob3N0Lnkge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIDJweDsgfVxuICAgICAgICAgIGJvZHkudHJhY2tpcjUgLnNpeGRvRiBkaXYuaGVhZHMgLmFuaW1hdGlvbi1zcG90IC5naG9zdC5waXRjaCB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgMHB4OyB9XG4gICAgICAgIGJvZHkudHJhY2tpcjUgLnNpeGRvRiBkaXYuaGVhZHMgLmFuaW1hdGlvbi1zcG90IC56Lmdob3N0IHtcbiAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMik7IH1cbiAgICAgICAgYm9keS50cmFja2lyNSAuc2l4ZG9GIGRpdi5oZWFkcyAuYW5pbWF0aW9uLXNwb3QgLnlhdy5zcHJpdGUge1xuICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltYWdlcy95YXctc3ByaXRlLnBuZ1wiKTsgfVxuICAgICAgICBib2R5LnRyYWNraXI1IC5zaXhkb0YgZGl2LmhlYWRzIC5hbmltYXRpb24tc3BvdCAueWF3Lmdob3N0IHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWFnZXMvNmRvZi15YXcucG5nXCIpO1xuICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7IH1cbiAgICAgICAgYm9keS50cmFja2lyNSAuc2l4ZG9GIGRpdi5oZWFkcyAuYW5pbWF0aW9uLXNwb3QgLnguc3ByaXRlIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWFnZXMveC1zcHJpdGUucG5nXCIpOyB9XG4gICAgICAgIGJvZHkudHJhY2tpcjUgLnNpeGRvRiBkaXYuaGVhZHMgLmFuaW1hdGlvbi1zcG90IC54Lmdob3N0IHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWFnZXMvNmRvZi14LnBuZ1wiKTtcbiAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0OyB9XG4gICAgICAgIGJvZHkudHJhY2tpcjUgLnNpeGRvRiBkaXYuaGVhZHMgLmFuaW1hdGlvbi1zcG90IC5waXRjaC5zcHJpdGUge1xuICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltYWdlcy9waXRjaC1zcHJpdGUucG5nXCIpOyB9XG4gICAgICAgIGJvZHkudHJhY2tpcjUgLnNpeGRvRiBkaXYuaGVhZHMgLmFuaW1hdGlvbi1zcG90IC5waXRjaC5naG9zdCB7XG4gICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1hZ2VzLzZkb2YtcGl0Y2gucG5nXCIpO1xuICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7IH1cbiAgICAgICAgYm9keS50cmFja2lyNSAuc2l4ZG9GIGRpdi5oZWFkcyAuYW5pbWF0aW9uLXNwb3QgLnkuc3ByaXRlIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWFnZXMveS1zcHJpdGUucG5nXCIpOyB9XG4gICAgICAgIGJvZHkudHJhY2tpcjUgLnNpeGRvRiBkaXYuaGVhZHMgLmFuaW1hdGlvbi1zcG90IC55Lmdob3N0IHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWFnZXMvNmRvZi15LnBuZ1wiKTtcbiAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0OyB9XG4gICAgICAgIGJvZHkudHJhY2tpcjUgLnNpeGRvRiBkaXYuaGVhZHMgLmFuaW1hdGlvbi1zcG90IC5yb2xsLnNwcml0ZSB7XG4gICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1hZ2VzL3JvbGwtc3ByaXRlLnBuZ1wiKTsgfVxuICAgICAgICBib2R5LnRyYWNraXI1IC5zaXhkb0YgZGl2LmhlYWRzIC5hbmltYXRpb24tc3BvdCAucm9sbC5naG9zdCB7XG4gICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1hZ2VzLzZkb2Ytcm9sbC5wbmdcIik7XG4gICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDsgfVxuICAgICAgICBib2R5LnRyYWNraXI1IC5zaXhkb0YgZGl2LmhlYWRzIC5hbmltYXRpb24tc3BvdCAuei5zcHJpdGUge1xuICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltYWdlcy96LXNwcml0ZS5wbmdcIik7IH1cbiAgICAgICAgYm9keS50cmFja2lyNSAuc2l4ZG9GIGRpdi5oZWFkcyAuYW5pbWF0aW9uLXNwb3QgLnouZ2hvc3Qge1xuICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltYWdlcy82ZG9mLXoucG5nXCIpO1xuICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7IH1cbiAgICBib2R5LnRyYWNraXI1IC5zaXhkb0YgLnNpeGRvRi12aWRlb3Mge1xuICAgICAgcGFkZGluZy10b3A6IDQwcHg7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogNDBweDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDEuNjk0OTIlOyB9XG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgYm9keS50cmFja2lyNSAuc2l4ZG9GIC5zaXhkb0YtdmlkZW9zIHtcbiAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogNjBweDtcbiAgICAgICAgICBib3JkZXItdG9wOiBzb2xpZCAxcHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE1KTsgfSB9XG4gICAgICBib2R5LnRyYWNraXI1IC5zaXhkb0YgLnNpeGRvRi12aWRlb3MgYSB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDM1cHg7IH1cbiAgICAgIGJvZHkudHJhY2tpcjUgLnNpeGRvRiAuc2l4ZG9GLXZpZGVvcyBmaWd1cmUge1xuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDAuODgpO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMzVweDsgfVxuICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgICBib2R5LnRyYWNraXI1IC5zaXhkb0YgLnNpeGRvRi12aWRlb3MgZmlndXJlIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIHdpZHRoOiAyMjBweDtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7IH0gfVxuICAgICAgICBib2R5LnRyYWNraXI1IC5zaXhkb0YgLnNpeGRvRi12aWRlb3MgZmlndXJlIGltZyB7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTVweDsgfVxuICAgICAgICBib2R5LnRyYWNraXI1IC5zaXhkb0YgLnNpeGRvRi12aWRlb3MgZmlndXJlIHNwYW46bnRoLWNoaWxkKDEpIHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBmb250LXdlaWdodDogYm9sZDsgfVxuICAgICAgICBib2R5LnRyYWNraXI1IC5zaXhkb0YgLnNpeGRvRi12aWRlb3MgZmlndXJlIHNwYW46bnRoLWNoaWxkKDIpLFxuICAgICAgICBib2R5LnRyYWNraXI1IC5zaXhkb0YgLnNpeGRvRi12aWRlb3MgZmlndXJlIHNwYW46bnRoLWNoaWxkKDMpIHtcbiAgICAgICAgICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjM1KTsgfVxuICBib2R5LnRyYWNraXI1IC5wcmVjaXNlLXRyYWNraW5nIHtcbiAgICBtYXJnaW4tYm90dG9tOiAtNXB4O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAgIGJvZHkudHJhY2tpcjUgLnByZWNpc2UtdHJhY2tpbmcgcCB7XG4gICAgICBjb2xvcjogI2ZhZTZjZDsgfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAgIGJvZHkudHJhY2tpcjUgLnByZWNpc2UtdHJhY2tpbmcgcCB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogLTIwcHg7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogODBweDsgfSB9XG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgYm9keS50cmFja2lyNSAucHJlY2lzZS10cmFja2luZyBwIHtcbiAgICAgICAgICBtYXJnaW46IGluaXRpYWw7IH0gfVxuICAgIGJvZHkudHJhY2tpcjUgLnByZWNpc2UtdHJhY2tpbmcgLnByZWNpc2UtdHJhY2tpbmctY29udGVudCB7XG4gICAgICBtYXgtd2lkdGg6IDI5MHB4O1xuICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgICBwYWRkaW5nLXRvcDogMzVweDsgfVxuICAgICAgYm9keS50cmFja2lyNSAucHJlY2lzZS10cmFja2luZyAucHJlY2lzZS10cmFja2luZy1jb250ZW50OmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCIgXCI7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBjbGVhcjogYm90aDsgfVxuICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAgIGJvZHkudHJhY2tpcjUgLnByZWNpc2UtdHJhY2tpbmcgLnByZWNpc2UtdHJhY2tpbmctY29udGVudCB7XG4gICAgICAgICAgbWF4LXdpZHRoOiA3MDJweDtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87IH1cbiAgICAgICAgICBib2R5LnRyYWNraXI1IC5wcmVjaXNlLXRyYWNraW5nIC5wcmVjaXNlLXRyYWNraW5nLWNvbnRlbnQ6YWZ0ZXIge1xuICAgICAgICAgICAgY29udGVudDogXCIgXCI7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIGNsZWFyOiBib3RoOyB9IH1cbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgICBib2R5LnRyYWNraXI1IC5wcmVjaXNlLXRyYWNraW5nIC5wcmVjaXNlLXRyYWNraW5nLWNvbnRlbnQge1xuICAgICAgICAgIHBhZGRpbmctdG9wOiA1NXB4O1xuICAgICAgICAgIGhlaWdodDogNTAwcHg7IH0gfVxuICAgICAgYm9keS50cmFja2lyNSAucHJlY2lzZS10cmFja2luZyAucHJlY2lzZS10cmFja2luZy1jb250ZW50IC5wcmVjaXNlLXRyYWNraW5nLWNvcHkge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxMDBweDsgfVxuICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgICBib2R5LnRyYWNraXI1IC5wcmVjaXNlLXRyYWNraW5nIC5wcmVjaXNlLXRyYWNraW5nLWNvbnRlbnQgLnByZWNpc2UtdHJhY2tpbmctY29weSB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgICAgd2lkdGg6IDUwMHB4O1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogaW5pdGlhbDsgfSB9XG4gICAgICAgIGJvZHkudHJhY2tpcjUgLnByZWNpc2UtdHJhY2tpbmcgLnByZWNpc2UtdHJhY2tpbmctY29udGVudCAucHJlY2lzZS10cmFja2luZy1jb3B5IC5zcGVjcyB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogMzBweDsgfVxuICAgICAgICBib2R5LnRyYWNraXI1IC5wcmVjaXNlLXRyYWNraW5nIC5wcmVjaXNlLXRyYWNraW5nLWNvbnRlbnQgLnByZWNpc2UtdHJhY2tpbmctY29weSAuc3BlYyB7XG4gICAgICAgICAgbWFyZ2luOiA3MHB4IGF1dG87IH1cbiAgICAgICAgICBodG1sLmllIGJvZHkudHJhY2tpcjUgLnByZWNpc2UtdHJhY2tpbmcgLnByZWNpc2UtdHJhY2tpbmctY29udGVudCAucHJlY2lzZS10cmFja2luZy1jb3B5IC5zcGVjIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IC03MHB4OyB9XG4gICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAgICAgICBib2R5LnRyYWNraXI1IC5wcmVjaXNlLXRyYWNraW5nIC5wcmVjaXNlLXRyYWNraW5nLWNvbnRlbnQgLnByZWNpc2UtdHJhY2tpbmctY29weSAuc3BlYyB7XG4gICAgICAgICAgICAgIHdpZHRoOiAyNTBweDtcbiAgICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICAgIG1hcmdpbjogNXB4IGF1dG87IH0gfVxuICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgICAgICAgYm9keS50cmFja2lyNSAucHJlY2lzZS10cmFja2luZyAucHJlY2lzZS10cmFja2luZy1jb250ZW50IC5wcmVjaXNlLXRyYWNraW5nLWNvcHkgLnNwZWMgaDIge1xuICAgICAgICAgICAgICBmb250LXNpemU6IDI4cHg7IH0gfVxuICAgICAgICBib2R5LnRyYWNraXI1IC5wcmVjaXNlLXRyYWNraW5nIC5wcmVjaXNlLXRyYWNraW5nLWNvbnRlbnQgLnByZWNpc2UtdHJhY2tpbmctY29weSAuc3BlYy10aXRsZSB7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMHB4OyB9XG4gICAgICAgICAgYm9keS50cmFja2lyNSAucHJlY2lzZS10cmFja2luZyAucHJlY2lzZS10cmFja2luZy1jb250ZW50IC5wcmVjaXNlLXRyYWNraW5nLWNvcHkgLnNwZWMtdGl0bGUgfiBwIHtcbiAgICAgICAgICAgIGNvbG9yOiAjZmFlNmNkO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogLTVweDtcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICBmb250LXNpemU6IDEzcHg7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiBpbml0aWFsOyB9XG4gICAgYm9keS50cmFja2lyNSAucHJlY2lzZS10cmFja2luZyAucHJlY2lzZS10cmFja2luZy1pbWFnZSB7XG4gICAgICBtYXgtd2lkdGg6IG5vbmU7IH1cbiAgICAgIGJvZHkudHJhY2tpcjUgLnByZWNpc2UtdHJhY2tpbmcgLnByZWNpc2UtdHJhY2tpbmctaW1hZ2UgLnRyYWNraXI1LWltYWdlIHtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAgICAgYm9keS50cmFja2lyNSAucHJlY2lzZS10cmFja2luZyAucHJlY2lzZS10cmFja2luZy1pbWFnZSAudHJhY2tpcjUtaW1hZ2Uge1xuICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogLTQxNXB4OyB9IH1cbiAgICAgICAgYm9keS50cmFja2lyNSAucHJlY2lzZS10cmFja2luZyAucHJlY2lzZS10cmFja2luZy1pbWFnZSAudHJhY2tpcjUtaW1hZ2UgaW1nIHtcbiAgICAgICAgICB3aWR0aDogMzAwcHg7XG4gICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtMTIwcHg7IH1cbiAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgICAgIGJvZHkudHJhY2tpcjUgLnByZWNpc2UtdHJhY2tpbmcgLnByZWNpc2UtdHJhY2tpbmctaW1hZ2UgLnRyYWNraXI1LWltYWdlIGltZyB7XG4gICAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxNTBweDtcbiAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICB3aWR0aDogNTAwcHg7IH0gfVxuICBib2R5LnRyYWNraXI1IGRpdi5kZXNpZ25lZC1mb3ItZ2FtZXJzIHtcbiAgICBwYWRkaW5nOiAxNXB4IDA7XG4gICAgYmFja2dyb3VuZDogYmxhY2s7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHRvcCwgIzRhNGE0YSAwJSwgIzE2MTYxNiAxMDAlKTsgfVxuICAgIGJvZHkudHJhY2tpcjUgZGl2LmRlc2lnbmVkLWZvci1nYW1lcnMgLmRlc2lnbmVkLWZvci1nYW1lcnMtY29udGVudCBwIHtcbiAgICAgIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSk7IH1cbiAgICBib2R5LnRyYWNraXI1IGRpdi5kZXNpZ25lZC1mb3ItZ2FtZXJzIC5kZXNpZ25lZC1mb3ItZ2FtZXJzLWNvbnRlbnQgaW1nIHtcbiAgICAgIG1hcmdpbjogMjVweCAwIDU1cHg7IH1cbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgICBib2R5LnRyYWNraXI1IGRpdi5kZXNpZ25lZC1mb3ItZ2FtZXJzIC5kZXNpZ25lZC1mb3ItZ2FtZXJzLWNvbnRlbnQgaW1nIHtcbiAgICAgICAgICB3aWR0aDogODMuMDUwODUlO1xuICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogMS42OTQ5MiU7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IC00Mi4zNzI4OCU7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogLTE1cHg7IH0gfVxuICAgIGJvZHkudHJhY2tpcjUgZGl2LmRlc2lnbmVkLWZvci1nYW1lcnMgLmRlc2lnbmVkLWZvci1nYW1lcnMtY29udGVudCAuZGVzaWduZWQtZm9yLWdhbWVycy1jb3B5IHtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAgIGJvZHkudHJhY2tpcjUgZGl2LmRlc2lnbmVkLWZvci1nYW1lcnMgLmRlc2lnbmVkLWZvci1nYW1lcnMtY29udGVudCAuZGVzaWduZWQtZm9yLWdhbWVycy1jb3B5IHtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgIHdpZHRoOiA0OS4xNTI1NCU7XG4gICAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogMDsgfSB9XG4gIGJvZHkudHJhY2tpcjUgc2VjdGlvbi5mdWxseS1hZGp1c3RhYmxlIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogNDBweDsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgYm9keS50cmFja2lyNSBzZWN0aW9uLmZ1bGx5LWFkanVzdGFibGUge1xuICAgICAgICBwYWRkaW5nLXRvcDogODBweDtcbiAgICAgICAgaGVpZ2h0OiA1MDBweDtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDBweDsgfSB9XG4gICAgYm9keS50cmFja2lyNSBzZWN0aW9uLmZ1bGx5LWFkanVzdGFibGUgaW1nLnRpci1pbWFnZSB7XG4gICAgICBtYXJnaW4tdG9wOiA0MHB4O1xuICAgICAgd2lkdGg6IDIyMHB4OyB9XG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgYm9keS50cmFja2lyNSBzZWN0aW9uLmZ1bGx5LWFkanVzdGFibGUgaW1nLnRpci1pbWFnZSB7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIHdpZHRoOiA0MjBweDtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAtNjBweDtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogLTE1MHB4O1xuICAgICAgICAgIGxlZnQ6IDYwJTsgfSB9XG4gICAgYm9keS50cmFja2lyNSBzZWN0aW9uLmZ1bGx5LWFkanVzdGFibGUgZGl2LmZ1bGx5LWFkanVzdGFibGUtY29weSB7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgICBib2R5LnRyYWNraXI1IHNlY3Rpb24uZnVsbHktYWRqdXN0YWJsZSBkaXYuZnVsbHktYWRqdXN0YWJsZS1jb3B5IHtcbiAgICAgICAgICB3aWR0aDogNTcuNjI3MTIlO1xuICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogMS42OTQ5MiU7XG4gICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDsgfSB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgICAgYm9keS50cmFja2lyNSBzZWN0aW9uLmZ1bGx5LWFkanVzdGFibGUgZGl2LmZ1bGx5LWFkanVzdGFibGUtY29weSBwIHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAtMjBweDsgfSB9XG4gIGJvZHkudHJhY2tpcjUgLnRlY2gtc3BlY3Mge1xuICAgIHBhZGRpbmctdG9wOiAzMHB4O1xuICAgIHBhZGRpbmctYm90dG9tOiAzMHB4O1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC4xKTsgfVxuICAgIGJvZHkudHJhY2tpcjUgLnRlY2gtc3BlY3MgLnRlY2gtc3BlY3MtY29udGVudCBoMiB7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgIGJvZHkudHJhY2tpcjUgLnRlY2gtc3BlY3MgLnRlY2gtc3BlY3MtY29udGVudCAudGVjaC1zcGVjcy1pbWFnZXMge1xuICAgICAgICB3aWR0aDogMzIuMjAzMzklO1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxLjY5NDkyJTsgfSB9XG4gICAgYm9keS50cmFja2lyNSAudGVjaC1zcGVjcyAudGVjaC1zcGVjcy1jb250ZW50IC50ZWNoLXNwZWNzLWltYWdlcyBmaWd1cmUge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgYm9keS50cmFja2lyNSAudGVjaC1zcGVjcyAudGVjaC1zcGVjcy1jb250ZW50IC50ZWNoLXNwZWNzLWltYWdlcyBmaWd1cmUge1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtNTBweDsgfSB9XG4gICAgICBib2R5LnRyYWNraXI1IC50ZWNoLXNwZWNzIC50ZWNoLXNwZWNzLWNvbnRlbnQgLnRlY2gtc3BlY3MtaW1hZ2VzIGZpZ3VyZTpmaXJzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDgwcHg7IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgIGJvZHkudHJhY2tpcjUgLnRlY2gtc3BlY3MgLnRlY2gtc3BlY3MtY29udGVudCAudGVjaC1zcGVjcy1pbWFnZXMgaW1nIHtcbiAgICAgICAgd2lkdGg6IDIwMHB4O1xuICAgICAgICBtYXJnaW4tbGVmdDogLTEwMHB4O1xuICAgICAgICBtYXgtd2lkdGg6IHVuc2V0O1xuICAgICAgICBwb3NpdGlvbjogc3RpY2t5O1xuICAgICAgICBsZWZ0OiA1MCU7IH0gfVxuICAgIGJvZHkudHJhY2tpcjUgLnRlY2gtc3BlY3MgLnRlY2gtc3BlY3MtY29udGVudCAudGVjaC1zcGVjcy1pbWFnZXMgZmlnY2FwdGlvbiB7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBmb250LXNpemU6IDEzcHg7IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgIGJvZHkudHJhY2tpcjUgLnRlY2gtc3BlY3MgLnRlY2gtc3BlY3MtY29udGVudCAudGVjaC1zcGVjcy1jb3B5IHtcbiAgICAgICAgd2lkdGg6IDY2LjEwMTY5JTtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7IH0gfVxuICAgIGJvZHkudHJhY2tpcjUgLnRlY2gtc3BlY3MgLnRlY2gtc3BlY3MtY29udGVudCAudGVjaC1zcGVjcy1jb3B5IC5zcGVjcyB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgbWFyZ2luLXJpZ2h0OiAxLjY5NDkyJTsgfVxuICAgICAgYm9keS50cmFja2lyNSAudGVjaC1zcGVjcyAudGVjaC1zcGVjcy1jb250ZW50IC50ZWNoLXNwZWNzLWNvcHkgLnNwZWNzIGRpdiB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxLjY5NDkyJTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogLTIzcHg7IH1cbiAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAgICAgYm9keS50cmFja2lyNSAudGVjaC1zcGVjcyAudGVjaC1zcGVjcy1jb250ZW50IC50ZWNoLXNwZWNzLWNvcHkgLnNwZWNzIGRpdiB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAtMTVweDsgfSB9XG4gICAgICBib2R5LnRyYWNraXI1IC50ZWNoLXNwZWNzIC50ZWNoLXNwZWNzLWNvbnRlbnQgLnRlY2gtc3BlY3MtY29weSAuc3BlY3MgcDpmaXJzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IC0xMHB4O1xuICAgICAgICBtYXJnaW4tdG9wOiAyMHB4OyB9XG4gICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgICAgIGJvZHkudHJhY2tpcjUgLnRlY2gtc3BlY3MgLnRlY2gtc3BlY3MtY29udGVudCAudGVjaC1zcGVjcy1jb3B5IC5zcGVjcyBwOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDE0cHg7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAxNHB4O1xuICAgICAgICAgICAgd2lkdGg6IDQ5LjE1MjU0JTtcbiAgICAgICAgICAgIGZsb2F0OiBsZWZ0OyB9XG4gICAgICAgICAgICBib2R5LnRyYWNraXI1IC50ZWNoLXNwZWNzIC50ZWNoLXNwZWNzLWNvbnRlbnQgLnRlY2gtc3BlY3MtY29weSAuc3BlY3MgcDpmaXJzdC1jaGlsZDpudGgtY2hpbGQoMm4gKyAxKSB7XG4gICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IC0xMDAlO1xuICAgICAgICAgICAgICBjbGVhcjogYm90aDtcbiAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgICAgICAgICAgIGJvZHkudHJhY2tpcjUgLnRlY2gtc3BlY3MgLnRlY2gtc3BlY3MtY29udGVudCAudGVjaC1zcGVjcy1jb3B5IC5zcGVjcyBwOmZpcnN0LWNoaWxkOm50aC1jaGlsZCgybiArIDIpIHtcbiAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDUwLjg0NzQ2JTtcbiAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAtMTAwJTtcbiAgICAgICAgICAgICAgY2xlYXI6IG5vbmU7IH0gfVxuICAgICAgYm9keS50cmFja2lyNSAudGVjaC1zcGVjcyAudGVjaC1zcGVjcy1jb250ZW50IC50ZWNoLXNwZWNzLWNvcHkgLnNwZWNzIHA6bGFzdC1jaGlsZCB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBtYXJnaW4tdG9wOiAxMHB4OyB9XG4gICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgICAgIGJvZHkudHJhY2tpcjUgLnRlY2gtc3BlY3MgLnRlY2gtc3BlY3MtY29udGVudCAudGVjaC1zcGVjcy1jb3B5IC5zcGVjcyBwOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMTJweDtcbiAgICAgICAgICAgIHdpZHRoOiA0OS4xNTI1NCU7XG4gICAgICAgICAgICBmbG9hdDogbGVmdDsgfVxuICAgICAgICAgICAgYm9keS50cmFja2lyNSAudGVjaC1zcGVjcyAudGVjaC1zcGVjcy1jb250ZW50IC50ZWNoLXNwZWNzLWNvcHkgLnNwZWNzIHA6bGFzdC1jaGlsZDpudGgtY2hpbGQoMm4gKyAxKSB7XG4gICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IC0xMDAlO1xuICAgICAgICAgICAgICBjbGVhcjogYm90aDtcbiAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgICAgICAgICAgIGJvZHkudHJhY2tpcjUgLnRlY2gtc3BlY3MgLnRlY2gtc3BlY3MtY29udGVudCAudGVjaC1zcGVjcy1jb3B5IC5zcGVjcyBwOmxhc3QtY2hpbGQ6bnRoLWNoaWxkKDJuICsgMikge1xuICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogNTAuODQ3NDYlO1xuICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IC0xMDAlO1xuICAgICAgICAgICAgICBjbGVhcjogbm9uZTsgfSB9XG4gICAgYm9keS50cmFja2lyNSAudGVjaC1zcGVjcyAudGVjaC1zcGVjcy1jb250ZW50IC50ZWNoLXNwZWNzLWNvcHkgLm1vcmUtc3BlY3Mge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIG1hcmdpbi1yaWdodDogMS42OTQ5MiU7XG4gICAgICBtYXJnaW4tdG9wOiAzMHB4OyB9XG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgYm9keS50cmFja2lyNSAudGVjaC1zcGVjcyAudGVjaC1zcGVjcy1jb250ZW50IC50ZWNoLXNwZWNzLWNvcHkgLm1vcmUtc3BlY3MgLmluLWJveCxcbiAgICAgICAgYm9keS50cmFja2lyNSAudGVjaC1zcGVjcyAudGVjaC1zcGVjcy1jb250ZW50IC50ZWNoLXNwZWNzLWNvcHkgLm1vcmUtc3BlY3MgLnN5cy1yZXF1aXJlbWVudHMge1xuICAgICAgICAgIHdpZHRoOiA0OS4xNTI1NCU7XG4gICAgICAgICAgZmxvYXQ6IGxlZnQ7IH1cbiAgICAgICAgICBib2R5LnRyYWNraXI1IC50ZWNoLXNwZWNzIC50ZWNoLXNwZWNzLWNvbnRlbnQgLnRlY2gtc3BlY3MtY29weSAubW9yZS1zcGVjcyAuaW4tYm94Om50aC1jaGlsZCgybiArIDEpLFxuICAgICAgICAgIGJvZHkudHJhY2tpcjUgLnRlY2gtc3BlY3MgLnRlY2gtc3BlY3MtY29udGVudCAudGVjaC1zcGVjcy1jb3B5IC5tb3JlLXNwZWNzIC5zeXMtcmVxdWlyZW1lbnRzOm50aC1jaGlsZCgybiArIDEpIHtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAtMTAwJTtcbiAgICAgICAgICAgIGNsZWFyOiBib3RoO1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgICAgICAgICBib2R5LnRyYWNraXI1IC50ZWNoLXNwZWNzIC50ZWNoLXNwZWNzLWNvbnRlbnQgLnRlY2gtc3BlY3MtY29weSAubW9yZS1zcGVjcyAuaW4tYm94Om50aC1jaGlsZCgybiArIDIpLFxuICAgICAgICAgIGJvZHkudHJhY2tpcjUgLnRlY2gtc3BlY3MgLnRlY2gtc3BlY3MtY29udGVudCAudGVjaC1zcGVjcy1jb3B5IC5tb3JlLXNwZWNzIC5zeXMtcmVxdWlyZW1lbnRzOm50aC1jaGlsZCgybiArIDIpIHtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiA1MC44NDc0NiU7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IC0xMDAlO1xuICAgICAgICAgICAgY2xlYXI6IG5vbmU7IH0gfVxuICAgICAgYm9keS50cmFja2lyNSAudGVjaC1zcGVjcyAudGVjaC1zcGVjcy1jb250ZW50IC50ZWNoLXNwZWNzLWNvcHkgLm1vcmUtc3BlY3MgLmluLWJveCBwLFxuICAgICAgYm9keS50cmFja2lyNSAudGVjaC1zcGVjcyAudGVjaC1zcGVjcy1jb250ZW50IC50ZWNoLXNwZWNzLWNvcHkgLm1vcmUtc3BlY3MgLnN5cy1yZXF1aXJlbWVudHMgcCB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICBjb2xvcjogd2hpdGU7IH1cbiAgICAgIGJvZHkudHJhY2tpcjUgLnRlY2gtc3BlY3MgLnRlY2gtc3BlY3MtY29udGVudCAudGVjaC1zcGVjcy1jb3B5IC5tb3JlLXNwZWNzIC5pbi1ib3ggdWwsXG4gICAgICBib2R5LnRyYWNraXI1IC50ZWNoLXNwZWNzIC50ZWNoLXNwZWNzLWNvbnRlbnQgLnRlY2gtc3BlY3MtY29weSAubW9yZS1zcGVjcyAuc3lzLXJlcXVpcmVtZW50cyB1bCB7XG4gICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICBsaXN0LXN0eWxlOiBub25lOyB9XG4gICAgICAgIGJvZHkudHJhY2tpcjUgLnRlY2gtc3BlY3MgLnRlY2gtc3BlY3MtY29udGVudCAudGVjaC1zcGVjcy1jb3B5IC5tb3JlLXNwZWNzIC5pbi1ib3ggdWwgbGksXG4gICAgICAgIGJvZHkudHJhY2tpcjUgLnRlY2gtc3BlY3MgLnRlY2gtc3BlY3MtY29udGVudCAudGVjaC1zcGVjcy1jb3B5IC5tb3JlLXNwZWNzIC5zeXMtcmVxdWlyZW1lbnRzIHVsIGxpIHtcbiAgICAgICAgICBkaXNwbGF5OiB0YWJsZS1yb3c7IH1cbiAgICAgICAgICBib2R5LnRyYWNraXI1IC50ZWNoLXNwZWNzIC50ZWNoLXNwZWNzLWNvbnRlbnQgLnRlY2gtc3BlY3MtY29weSAubW9yZS1zcGVjcyAuaW4tYm94IHVsIGxpOmJlZm9yZSxcbiAgICAgICAgICBib2R5LnRyYWNraXI1IC50ZWNoLXNwZWNzIC50ZWNoLXNwZWNzLWNvbnRlbnQgLnRlY2gtc3BlY3MtY29weSAubW9yZS1zcGVjcyAuc3lzLXJlcXVpcmVtZW50cyB1bCBsaTpiZWZvcmUge1xuICAgICAgICAgICAgY29udGVudDogXCLigKJcIjtcbiAgICAgICAgICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjRlbTsgfVxuICAgICAgICBib2R5LnRyYWNraXI1IC50ZWNoLXNwZWNzIC50ZWNoLXNwZWNzLWNvbnRlbnQgLnRlY2gtc3BlY3MtY29weSAubW9yZS1zcGVjcyAuaW4tYm94IHVsIGxpLFxuICAgICAgICBib2R5LnRyYWNraXI1IC50ZWNoLXNwZWNzIC50ZWNoLXNwZWNzLWNvbnRlbnQgLnRlY2gtc3BlY3MtY29weSAubW9yZS1zcGVjcyAuc3lzLXJlcXVpcmVtZW50cyB1bCBsaSB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogOHB4OyB9XG4gICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAgICAgICBib2R5LnRyYWNraXI1IC50ZWNoLXNwZWNzIC50ZWNoLXNwZWNzLWNvbnRlbnQgLnRlY2gtc3BlY3MtY29weSAubW9yZS1zcGVjcyAuaW4tYm94IHVsIGxpLFxuICAgICAgICAgICAgYm9keS50cmFja2lyNSAudGVjaC1zcGVjcyAudGVjaC1zcGVjcy1jb250ZW50IC50ZWNoLXNwZWNzLWNvcHkgLm1vcmUtc3BlY3MgLnN5cy1yZXF1aXJlbWVudHMgdWwgbGkge1xuICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMnB4OyB9IH1cbiAgICAgICAgICBib2R5LnRyYWNraXI1IC50ZWNoLXNwZWNzIC50ZWNoLXNwZWNzLWNvbnRlbnQgLnRlY2gtc3BlY3MtY29weSAubW9yZS1zcGVjcyAuaW4tYm94IHVsIGxpOjpiZWZvcmUsXG4gICAgICAgICAgYm9keS50cmFja2lyNSAudGVjaC1zcGVjcyAudGVjaC1zcGVjcy1jb250ZW50IC50ZWNoLXNwZWNzLWNvcHkgLm1vcmUtc3BlY3MgLnN5cy1yZXF1aXJlbWVudHMgdWwgbGk6OmJlZm9yZSB7XG4gICAgICAgICAgICBjb250ZW50OiBub25lOyB9XG4gIGJvZHkudHJhY2tpcjUgW2lkPVwiZmVhdHVyZWQtcHJvZHVjdHNcIl0ge1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50OyB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICBib2R5LmFjY2Vzc29yaWVzIG1haW4gaDEge1xuICAgIGZvbnQtc2l6ZTogMzZweDsgfSB9XG5cbmJvZHkuYWNjZXNzb3JpZXMgbWFpbiBzZWN0aW9uIHtcbiAgbWF4LXdpZHRoOiAyOTBweDtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bzsgfVxuICBib2R5LmFjY2Vzc29yaWVzIG1haW4gc2VjdGlvbjphZnRlciB7XG4gICAgY29udGVudDogXCIgXCI7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgYm9keS5hY2Nlc3NvcmllcyBtYWluIHNlY3Rpb24ge1xuICAgICAgbWF4LXdpZHRoOiA3MDJweDtcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9XG4gICAgICBib2R5LmFjY2Vzc29yaWVzIG1haW4gc2VjdGlvbjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgY2xlYXI6IGJvdGg7IH0gfVxuXG5ib2R5LmFjY2Vzc29yaWVzIG1haW4gc2VjdGlvbi5pbnRybyB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbWFyZ2luLXRvcDogMzVweDsgfVxuXG5ib2R5LmFjY2Vzc29yaWVzIG1haW4gc2VjdGlvbi5mZWF0dXJlZC1pdGVtcyB7XG4gIHBhZGRpbmctYm90dG9tOiA0NXB4O1xuICBtYXJnaW4tYm90dG9tOiA0NXB4O1xuICBib3JkZXItYm90dG9tOiBzb2xpZCAxcHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpOyB9XG4gIGJvZHkuYWNjZXNzb3JpZXMgbWFpbiBzZWN0aW9uLmZlYXR1cmVkLWl0ZW1zIC5mZWF0dXJlZC1pdGVtIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgIGJvZHkuYWNjZXNzb3JpZXMgbWFpbiBzZWN0aW9uLmZlYXR1cmVkLWl0ZW1zIC5mZWF0dXJlZC1pdGVtOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgbWFyZ2luLXRvcDogNjVweDsgfSB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICBib2R5LmFjY2Vzc29yaWVzIG1haW4gc2VjdGlvbi5mZWF0dXJlZC1pdGVtcyAuZmVhdHVyZWQtaXRlbVtpZD1cInRyYWNrY2xpcHByb1wiXSBmaWd1cmUge1xuICAgICAgICBtYXJnaW46IDBweDtcbiAgICAgICAgd2lkdGg6IDQ5LjE1MjU0JTtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMS42OTQ5MiU7IH0gfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgYm9keS5hY2Nlc3NvcmllcyBtYWluIHNlY3Rpb24uZmVhdHVyZWQtaXRlbXMgLmZlYXR1cmVkLWl0ZW1baWQ9XCJ0cmFja2NsaXBwcm9cIl0gLmNvcHkge1xuICAgICAgICB3aWR0aDogNDkuMTUyNTQlO1xuICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDUwLjg0NzQ2JTtcbiAgICAgICAgZmxvYXQ6IG5vbmU7IH0gfVxuICAgIGJvZHkuYWNjZXNzb3JpZXMgbWFpbiBzZWN0aW9uLmZlYXR1cmVkLWl0ZW1zIC5mZWF0dXJlZC1pdGVtW2lkPVwidHJhY2tjbGlwXCJdIHtcbiAgICAgIG1hcmdpbi10b3A6IDEwMHB4OyB9XG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgYm9keS5hY2Nlc3NvcmllcyBtYWluIHNlY3Rpb24uZmVhdHVyZWQtaXRlbXMgLmZlYXR1cmVkLWl0ZW1baWQ9XCJ0cmFja2NsaXBcIl0gZmlndXJlIHtcbiAgICAgICAgICB3aWR0aDogNDkuMTUyNTQlO1xuICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogMS42OTQ5MiU7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDUwLjg0NzQ2JTsgfSB9XG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgYm9keS5hY2Nlc3NvcmllcyBtYWluIHNlY3Rpb24uZmVhdHVyZWQtaXRlbXMgLmZlYXR1cmVkLWl0ZW1baWQ9XCJ0cmFja2NsaXBcIl0gLmNvcHkge1xuICAgICAgICAgIHdpZHRoOiA0OS4xNTI1NCU7XG4gICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxLjY5NDkyJTtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogLTEwMS42OTQ5MiU7IH0gfVxuICAgIGJvZHkuYWNjZXNzb3JpZXMgbWFpbiBzZWN0aW9uLmZlYXR1cmVkLWl0ZW1zIC5mZWF0dXJlZC1pdGVtIGZpZ3VyZSB7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgICBib2R5LmFjY2Vzc29yaWVzIG1haW4gc2VjdGlvbi5mZWF0dXJlZC1pdGVtcyAuZmVhdHVyZWQtaXRlbSBmaWd1cmUgaW1nIHtcbiAgICAgICAgICB3aWR0aDogMjkwcHg7XG4gICAgICAgICAgbWF4LXdpZHRoOiBpbml0aWFsO1xuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IC0yMTBweDsgfSB9XG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgYm9keS5hY2Nlc3NvcmllcyBtYWluIHNlY3Rpb24uZmVhdHVyZWQtaXRlbXMgLmZlYXR1cmVkLWl0ZW0gZmlndXJlIGltZyB7XG4gICAgICAgICAgd2lkdGg6IDQwMHB4OyB9IH1cbiAgICBib2R5LmFjY2Vzc29yaWVzIG1haW4gc2VjdGlvbi5mZWF0dXJlZC1pdGVtcyAuZmVhdHVyZWQtaXRlbSBkaXYuY29weSB7XG4gICAgICBtYXJnaW4tdG9wOiAzNXB4OyB9XG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgYm9keS5hY2Nlc3NvcmllcyBtYWluIHNlY3Rpb24uZmVhdHVyZWQtaXRlbXMgLmZlYXR1cmVkLWl0ZW0gZGl2LmNvcHkge1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDE1cHg7IH0gfVxuICAgICAgYm9keS5hY2Nlc3NvcmllcyBtYWluIHNlY3Rpb24uZmVhdHVyZWQtaXRlbXMgLmZlYXR1cmVkLWl0ZW0gZGl2LmNvcHkgaDMge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmU7IH1cbiAgICAgIGJvZHkuYWNjZXNzb3JpZXMgbWFpbiBzZWN0aW9uLmZlYXR1cmVkLWl0ZW1zIC5mZWF0dXJlZC1pdGVtIGRpdi5jb3B5IHAucHJpY2Uge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAzNXB4O1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAyMHB4OyB9XG4gICAgICBib2R5LmFjY2Vzc29yaWVzIG1haW4gc2VjdGlvbi5mZWF0dXJlZC1pdGVtcyAuZmVhdHVyZWQtaXRlbSBkaXYuY29weSB1bCB7XG4gICAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICBsaXN0LXN0eWxlOiBub25lOyB9XG4gICAgICAgIGJvZHkuYWNjZXNzb3JpZXMgbWFpbiBzZWN0aW9uLmZlYXR1cmVkLWl0ZW1zIC5mZWF0dXJlZC1pdGVtIGRpdi5jb3B5IHVsIGxpIHtcbiAgICAgICAgICBkaXNwbGF5OiB0YWJsZS1yb3c7IH1cbiAgICAgICAgICBib2R5LmFjY2Vzc29yaWVzIG1haW4gc2VjdGlvbi5mZWF0dXJlZC1pdGVtcyAuZmVhdHVyZWQtaXRlbSBkaXYuY29weSB1bCBsaTpiZWZvcmUge1xuICAgICAgICAgICAgY29udGVudDogXCLigKJcIjtcbiAgICAgICAgICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjRlbTsgfVxuICAgIGJvZHkuYWNjZXNzb3JpZXMgbWFpbiBzZWN0aW9uLmZlYXR1cmVkLWl0ZW1zIC5mZWF0dXJlZC1pdGVtIGZvcm0ge1xuICAgICAgbWFyZ2luLXRvcDogNTVweDsgfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAgIGJvZHkuYWNjZXNzb3JpZXMgbWFpbiBzZWN0aW9uLmZlYXR1cmVkLWl0ZW1zIC5mZWF0dXJlZC1pdGVtIGZvcm0ge1xuICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfSB9XG5cbmJvZHkuYWNjZXNzb3JpZXMgbWFpbiBzZWN0aW9uLml0ZW1zIHtcbiAgbWFyZ2luLWJvdHRvbTogNTVweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIGJvZHkuYWNjZXNzb3JpZXMgbWFpbiBzZWN0aW9uLml0ZW1zIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDc1cHg7IH0gfVxuICBib2R5LmFjY2Vzc29yaWVzIG1haW4gc2VjdGlvbi5pdGVtcyAuaXRlbSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgICBtYXJnaW4tdG9wOiAxNXB4O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIG1hcmdpbi1yaWdodDogMDsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgYm9keS5hY2Nlc3NvcmllcyBtYWluIHNlY3Rpb24uaXRlbXMgLml0ZW0ge1xuICAgICAgICB3aWR0aDogMzIuMjAzMzklO1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxLjY5NDkyJTsgfVxuICAgICAgICBib2R5LmFjY2Vzc29yaWVzIG1haW4gc2VjdGlvbi5pdGVtcyAuaXRlbTpudGgtY2hpbGQoM24pIHtcbiAgICAgICAgICB3aWR0aDogMzIuMjAzMzklO1xuICAgICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7IH0gfVxuICAgIGJvZHkuYWNjZXNzb3JpZXMgbWFpbiBzZWN0aW9uLml0ZW1zIC5pdGVtIGZpZ3VyZSB7XG4gICAgICBoZWlnaHQ6IDE1MHB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDE1MHB4OyB9XG4gICAgICBib2R5LmFjY2Vzc29yaWVzIG1haW4gc2VjdGlvbi5pdGVtcyAuaXRlbSBmaWd1cmUgaW1nIHtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgd2lkdGg6IDE1MHB4OyB9XG4gICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgICAgIGJvZHkuYWNjZXNzb3JpZXMgbWFpbiBzZWN0aW9uLml0ZW1zIC5pdGVtIGZpZ3VyZSBpbWcge1xuICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IGJvdHRvbTsgfSB9XG4gICAgYm9keS5hY2Nlc3NvcmllcyBtYWluIHNlY3Rpb24uaXRlbXMgLml0ZW0gaDMge1xuICAgICAgbWFyZ2luLWJvdHRvbTogNXB4OyB9XG4gICAgYm9keS5hY2Nlc3NvcmllcyBtYWluIHNlY3Rpb24uaXRlbXMgLml0ZW0gcC5wcmljZSB7XG4gICAgICBtYXJnaW4tdG9wOiA1cHg7IH1cbiAgICBib2R5LmFjY2Vzc29yaWVzIG1haW4gc2VjdGlvbi5pdGVtcyAuaXRlbVtpZD1cInRpcjUtYmFzZVwiXSBmaWd1cmUge1xuICAgICAgbGluZS1oZWlnaHQ6IDk4cHg7XG4gICAgICBoZWlnaHQ6IDk4cHg7IH1cbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgICBib2R5LmFjY2Vzc29yaWVzIG1haW4gc2VjdGlvbi5pdGVtcyAuaXRlbVtpZD1cInRpcjUtYmFzZVwiXSBmaWd1cmUge1xuICAgICAgICAgIGhlaWdodDogMTUwcHg7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDE1MHB4OyB9IH1cbiAgICAgIGJvZHkuYWNjZXNzb3JpZXMgbWFpbiBzZWN0aW9uLml0ZW1zIC5pdGVtW2lkPVwidGlyNS1iYXNlXCJdIGZpZ3VyZSBpbWcge1xuICAgICAgICBtYXgtd2lkdGg6IGluaXRpYWw7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICB3aWR0aDogMjMwcHg7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAtMjA4cHg7IH1cbiAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAgICAgYm9keS5hY2Nlc3NvcmllcyBtYWluIHNlY3Rpb24uaXRlbXMgLml0ZW1baWQ9XCJ0aXI1LWJhc2VcIl0gZmlndXJlIGltZyB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogLTE0NHB4O1xuICAgICAgICAgICAgd2lkdGg6IDIzMHB4OyB9IH1cblxuYm9keS5nYW1lcy1saXN0IC5pbnRybyB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbWFyZ2luLXRvcDogMzVweDtcbiAgbWFyZ2luLWJvdHRvbTogMzVweDsgfVxuXG5ib2R5LmdhbWVzLWxpc3QgLmZpbHRlci1hbmQtc29ydCB7XG4gIG1heC13aWR0aDogMjkwcHg7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICBib2R5LmdhbWVzLWxpc3QgLmZpbHRlci1hbmQtc29ydDphZnRlciB7XG4gICAgY29udGVudDogXCIgXCI7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgYm9keS5nYW1lcy1saXN0IC5maWx0ZXItYW5kLXNvcnQge1xuICAgICAgbWF4LXdpZHRoOiA3MDJweDtcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9XG4gICAgICBib2R5LmdhbWVzLWxpc3QgLmZpbHRlci1hbmQtc29ydDphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgY2xlYXI6IGJvdGg7IH0gfVxuICBib2R5LmdhbWVzLWxpc3QgLmZpbHRlci1hbmQtc29ydCBsYWJlbC5sYWJlbC1mb3ItZ3JvdXAge1xuICAgIG1hcmdpbi10b3A6IDQ1cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuICBib2R5LmdhbWVzLWxpc3QgLmZpbHRlci1hbmQtc29ydCBkaXYucmFkaW8tc2VjdGlvbiBpbnB1dFt0eXBlPVwicmFkaW9cIl0ge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgYm9keS5nYW1lcy1saXN0IC5maWx0ZXItYW5kLXNvcnQgZGl2LnJhZGlvLXNlY3Rpb24gaW5wdXRbdHlwZT1cInJhZGlvXCJdOmNoZWNrZWQgKyBsYWJlbCB7XG4gICAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjgpO1xuICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOSk7XG4gICAgY29sb3I6ICM5NjVCMDA7IH1cbiAgYm9keS5nYW1lcy1saXN0IC5maWx0ZXItYW5kLXNvcnQgZGl2LnJhZGlvLXNlY3Rpb24gbGFiZWwge1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2Utb3V0O1xuICAgIHBhZGRpbmc6IDEwcHggMjJweDtcbiAgICBib3JkZXI6IHNvbGlkIDFweCAjZmFlNmNkO1xuICAgIGJvcmRlci1yYWRpdXM6IDQwcHg7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIHVzZXItc2VsZWN0OiBub25lO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB3aWR0aDogOTBweDtcbiAgICBtYXJnaW4tYm90dG9tOiAxNXB4OyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICBib2R5LmdhbWVzLWxpc3QgLmZpbHRlci1hbmQtc29ydCBkaXYucmFkaW8tc2VjdGlvbiBsYWJlbCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IG5vbmU7IH0gfVxuICAgIGJvZHkuZ2FtZXMtbGlzdCAuZmlsdGVyLWFuZC1zb3J0IGRpdi5yYWRpby1zZWN0aW9uIGxhYmVsOmZpcnN0LW9mLXR5cGUge1xuICAgICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDBweDtcbiAgICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwcHg7XG4gICAgICBib3JkZXItcmlnaHQ6IG5vbmU7XG4gICAgICBtYXJnaW4tcmlnaHQ6IC0ycHg7IH1cbiAgICBib2R5LmdhbWVzLWxpc3QgLmZpbHRlci1hbmQtc29ydCBkaXYucmFkaW8tc2VjdGlvbiBsYWJlbDpudGgtb2YtdHlwZSgyKSB7XG4gICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgICAgbWFyZ2luLWxlZnQ6IC0zcHg7XG4gICAgICBtYXJnaW4tcmlnaHQ6IC0zcHg7IH1cbiAgICBib2R5LmdhbWVzLWxpc3QgLmZpbHRlci1hbmQtc29ydCBkaXYucmFkaW8tc2VjdGlvbiBsYWJlbDpsYXN0LW9mLXR5cGUge1xuICAgICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMHB4O1xuICAgICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMHB4O1xuICAgICAgYm9yZGVyLWxlZnQ6IG5vbmU7XG4gICAgICBtYXJnaW4tbGVmdDogLTJweDsgfVxuICAgIGJvZHkuZ2FtZXMtbGlzdCAuZmlsdGVyLWFuZC1zb3J0IGRpdi5yYWRpby1zZWN0aW9uIGxhYmVsOmhvdmVyIHtcbiAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC4xKTsgfVxuXG5ib2R5LmdhbWVzLWxpc3QgLmdhbWVzLXRhYmxlIHtcbiAgbWFyZ2luLWJvdHRvbTogNzBweDsgfVxuICBib2R5LmdhbWVzLWxpc3QgLmdhbWVzLXRhYmxlIC50YWJsZS1oZWFkZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIHBhZGRpbmc6IDI1cHggMHB4OyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICBib2R5LmdhbWVzLWxpc3QgLmdhbWVzLXRhYmxlIC50YWJsZS1oZWFkZXIge1xuICAgICAgICBkaXNwbGF5OiBub25lOyB9IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgIGJvZHkuZ2FtZXMtbGlzdCAuZ2FtZXMtdGFibGUgLnRhYmxlLWhlYWRlci5maXhlZC1oZWFkZXIge1xuICAgICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB0b3A6IDc0cHg7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjQ3LCAxNDYsIDAsIDAuOSk7XG4gICAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgNTAwbXMgZWFzZS1pbi1vdXQ7IH0gfVxuICAgIGJvZHkuZ2FtZXMtbGlzdCAuZ2FtZXMtdGFibGUgLnRhYmxlLWhlYWRlciAuc29ydC1ieS1zZWN0aW9uIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICAgICAgYm9keS5nYW1lcy1saXN0IC5nYW1lcy10YWJsZSAudGFibGUtaGVhZGVyIC5zb3J0LWJ5LXNlY3Rpb24gaW5wdXRbdHlwZT1cInJhZGlvXCJdIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgICAgYm9keS5nYW1lcy1saXN0IC5nYW1lcy10YWJsZSAudGFibGUtaGVhZGVyIC5zb3J0LWJ5LXNlY3Rpb24gbGFiZWwge1xuICAgICAgICBjb2xvcjogI2ZhZTZjZDsgfVxuICAgICAgYm9keS5nYW1lcy1saXN0IC5nYW1lcy10YWJsZSAudGFibGUtaGVhZGVyIC5zb3J0LWJ5LXNlY3Rpb24gbGFiZWw6Zmlyc3Qtb2YtdHlwZSB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMTBweDsgfVxuICAgICAgYm9keS5nYW1lcy1saXN0IC5nYW1lcy10YWJsZSAudGFibGUtaGVhZGVyIC5zb3J0LWJ5LXNlY3Rpb24gbGFiZWw6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHBhZGRpbmc6IDBweCAxMHB4O1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgICAgIHVzZXItc2VsZWN0OiBub25lO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC4xKTsgfVxuICAgICAgYm9keS5nYW1lcy1saXN0IC5nYW1lcy10YWJsZSAudGFibGUtaGVhZGVyIC5zb3J0LWJ5LXNlY3Rpb24gbGFiZWw6bnRoLW9mLXR5cGUoMikge1xuICAgICAgICB3aWR0aDogMTIwcHg7IH1cbiAgICAgIGJvZHkuZ2FtZXMtbGlzdCAuZ2FtZXMtdGFibGUgLnRhYmxlLWhlYWRlciAuc29ydC1ieS1zZWN0aW9uIGxhYmVsOmxhc3Qtb2YtdHlwZSB7XG4gICAgICAgIHdpZHRoOiAxMzVweDsgfVxuICAgICAgYm9keS5nYW1lcy1saXN0IC5nYW1lcy10YWJsZSAudGFibGUtaGVhZGVyIC5zb3J0LWJ5LXNlY3Rpb24gc3Bhbi5pY29uLWRvd24tb3Blbi1iaWcge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIG1hcmdpbi1yaWdodDogLTMwcHg7IH1cbiAgICAgICAgYm9keS5nYW1lcy1saXN0IC5nYW1lcy10YWJsZSAudGFibGUtaGVhZGVyIC5zb3J0LWJ5LXNlY3Rpb24gc3Bhbi5pY29uLWRvd24tb3Blbi1iaWcuZGVzY2VuZGluZyB7XG4gICAgICAgICAgYW5pbWF0aW9uLW5hbWU6IGFuaW1hdGlvblRvRGVzY2VuZGluZztcbiAgICAgICAgICBhbmltYXRpb24tZHVyYXRpb246IDMwMG1zO1xuICAgICAgICAgIGFuaW1hdGlvbi1maWxsLW1vZGU6IGZvcndhcmRzOyB9XG4gICAgICAgIGJvZHkuZ2FtZXMtbGlzdCAuZ2FtZXMtdGFibGUgLnRhYmxlLWhlYWRlciAuc29ydC1ieS1zZWN0aW9uIHNwYW4uaWNvbi1kb3duLW9wZW4tYmlnLmFzY2VuZGluZyB7XG4gICAgICAgICAgYW5pbWF0aW9uLW5hbWU6IGFuaW1hdGlvblRvQXNjZW5kaW5nO1xuICAgICAgICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogMzAwbXM7XG4gICAgICAgICAgYW5pbWF0aW9uLWZpbGwtbW9kZTogZm9yd2FyZHM7IH1cblxuQGtleWZyYW1lcyBhbmltYXRpb25Ub0FzY2VuZGluZyB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZVgoMGRlZyk7IH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGVYKDE4MGRlZyk7IH0gfVxuXG5Aa2V5ZnJhbWVzIGFuaW1hdGlvblRvRGVzY2VuZGluZyB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZVgoMTgwZGVnKTsgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZVgoMGRlZyk7IH0gfVxuICAgIGJvZHkuZ2FtZXMtbGlzdCAuZ2FtZXMtdGFibGUgLnRhYmxlLWhlYWRlciBwIHtcbiAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgIG1hcmdpbi10b3A6IDBweDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDBweDsgfVxuICAgICAgYm9keS5nYW1lcy1saXN0IC5nYW1lcy10YWJsZSAudGFibGUtaGVhZGVyIHAgc3BhbiB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICB3aWR0aDogMzhweDsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgYm9keS5nYW1lcy1saXN0IC5nYW1lcy10YWJsZSAudGFibGUtaGVhZGVyIC50YWJsZS1oZWFkZXItY29udGVudCB7XG4gICAgICAgIG1heC13aWR0aDogMjkwcHg7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87IH1cbiAgICAgICAgYm9keS5nYW1lcy1saXN0IC5nYW1lcy10YWJsZSAudGFibGUtaGVhZGVyIC50YWJsZS1oZWFkZXItY29udGVudDphZnRlciB7XG4gICAgICAgICAgY29udGVudDogXCIgXCI7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgY2xlYXI6IGJvdGg7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIGJvZHkuZ2FtZXMtbGlzdCAuZ2FtZXMtdGFibGUgLnRhYmxlLWhlYWRlciAudGFibGUtaGVhZGVyLWNvbnRlbnQge1xuICAgICAgbWF4LXdpZHRoOiA3MDJweDtcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9XG4gICAgICBib2R5LmdhbWVzLWxpc3QgLmdhbWVzLXRhYmxlIC50YWJsZS1oZWFkZXIgLnRhYmxlLWhlYWRlci1jb250ZW50OmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCIgXCI7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBjbGVhcjogYm90aDsgfSB9XG4gIGJvZHkuZ2FtZXMtbGlzdCAuZ2FtZXMtdGFibGUgdGFibGUge1xuICAgIG1heC13aWR0aDogMjkwcHg7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgYm9keS5nYW1lcy1saXN0IC5nYW1lcy10YWJsZSB0YWJsZTphZnRlciB7XG4gICAgICBjb250ZW50OiBcIiBcIjtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgIGJvZHkuZ2FtZXMtbGlzdCAuZ2FtZXMtdGFibGUgdGFibGUge1xuICAgICAgICBtYXgtd2lkdGg6IDcwMnB4O1xuICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9XG4gICAgICAgIGJvZHkuZ2FtZXMtbGlzdCAuZ2FtZXMtdGFibGUgdGFibGU6YWZ0ZXIge1xuICAgICAgICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIGNsZWFyOiBib3RoOyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgYm9keS5nYW1lcy1saXN0IC5nYW1lcy10YWJsZSAudGFibGUtY29udGFpbmVyLmZpeGVkLWhlYWRlciB7XG4gICAgICBtYXJnaW4tdG9wOiA3M3B4OyB9IH1cbiAgYm9keS5nYW1lcy1saXN0IC5nYW1lcy10YWJsZSB0ciB7XG4gICAgYm9yZGVyLWJvdHRvbTogc29saWQgMXB4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTsgfVxuICAgIGJvZHkuZ2FtZXMtbGlzdCAuZ2FtZXMtdGFibGUgdHIgdGQge1xuICAgICAgcGFkZGluZy10b3A6IDEwcHg7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMTBweDsgfVxuICAgIGJvZHkuZ2FtZXMtbGlzdCAuZ2FtZXMtdGFibGUgdHIgdGQ6Zmlyc3QtY2hpbGQge1xuICAgICAgd2lkdGg6IDQ0MnB4OyB9XG4gICAgYm9keS5nYW1lcy1saXN0IC5nYW1lcy10YWJsZSB0ciB0ZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDE1cHg7IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgICBib2R5LmdhbWVzLWxpc3QgLmdhbWVzLXRhYmxlIHRyIHRkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lOyB9IH1cbiAgYm9keS5nYW1lcy1saXN0IC5nYW1lcy10YWJsZSAuZmlsdGVyIHRyIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIGJvZHkuZ2FtZXMtbGlzdCAuZ2FtZXMtdGFibGUgLmZpbHRlci5mcHMgdHIuZnBzIHtcbiAgICBkaXNwbGF5OiB0YWJsZS1yb3c7IH1cbiAgYm9keS5nYW1lcy1saXN0IC5nYW1lcy10YWJsZSAuZmlsdGVyLmRyaXZpbmcgdHIuZHJpdmluZyB7XG4gICAgZGlzcGxheTogdGFibGUtcm93OyB9XG4gIGJvZHkuZ2FtZXMtbGlzdCAuZ2FtZXMtdGFibGUgLmZpbHRlci5mbGlnaHQgdHIuZmxpZ2h0IHtcbiAgICBkaXNwbGF5OiB0YWJsZS1yb3c7IH1cblxuYm9keS5yZW1vdGUtc3VwcG9ydCBtYWluIHtcbiAgbWF4LXdpZHRoOiAyOTBweDtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgbWFyZ2luLWJvdHRvbTogNDVweDsgfVxuICBib2R5LnJlbW90ZS1zdXBwb3J0IG1haW46YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIGJvZHkucmVtb3RlLXN1cHBvcnQgbWFpbiB7XG4gICAgICBtYXgtd2lkdGg6IDcwMnB4O1xuICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87IH1cbiAgICAgIGJvZHkucmVtb3RlLXN1cHBvcnQgbWFpbjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgY2xlYXI6IGJvdGg7IH0gfVxuICBib2R5LnJlbW90ZS1zdXBwb3J0IG1haW4gc2VjdGlvbiB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICBib2R5LnJlbW90ZS1zdXBwb3J0IG1haW4gc2VjdGlvbi5jb250ZW50IHtcbiAgICAgICAgd2lkdGg6IDY2LjEwMTY5JTtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMS42OTQ5MiU7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAxNi45NDkxNSU7IH0gfVxuICAgIGJvZHkucmVtb3RlLXN1cHBvcnQgbWFpbiBzZWN0aW9uLmNvbnRlbnQgYS5jdGEge1xuICAgICAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1vdXQ7XG4gICAgICBwYWRkaW5nOiAxMHB4IDUycHg7XG4gICAgICBib3JkZXI6IHNvbGlkIDFweCAjZmFlNmNkO1xuICAgICAgYm9yZGVyLXJhZGl1czogNDBweDtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHRvcDogNDVweDsgfVxuICAgICAgYm9keS5yZW1vdGUtc3VwcG9ydCBtYWluIHNlY3Rpb24uY29udGVudCBhLmN0YTpob3ZlciB7XG4gICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjEpOyB9XG5cbmJvZHkucHJvbW8gbWFpbiB7XG4gIG1heC13aWR0aDogMjkwcHg7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1hcmdpbi10b3A6IDI1cHg7IH1cbiAgYm9keS5wcm9tbyBtYWluOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIiBcIjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjbGVhcjogYm90aDsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICBib2R5LnByb21vIG1haW4ge1xuICAgICAgbWF4LXdpZHRoOiA3MDJweDtcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9XG4gICAgICBib2R5LnByb21vIG1haW46YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcIiBcIjtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGNsZWFyOiBib3RoOyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgYm9keS5wcm9tbyBtYWluIGgzLFxuICAgIGJvZHkucHJvbW8gbWFpbiBwIHtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfSB9XG4gIGJvZHkucHJvbW8gbWFpbiB1bCB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgbWFyZ2luLWJvdHRvbTogNDVweDsgfVxuICAgIGJvZHkucHJvbW8gbWFpbiB1bCBsaSB7XG4gICAgICBkaXNwbGF5OiB0YWJsZS1yb3c7IH1cbiAgICAgIGJvZHkucHJvbW8gbWFpbiB1bCBsaTpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiBcIuKAolwiO1xuICAgICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjRlbTsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgYm9keS5wcm9tbyBtYWluIHVsIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMzVweDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDEwMHB4OyB9IH1cbiAgYm9keS5wcm9tbyBtYWluIC5hY3Rpb24tbGluayB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgYm9keS5wcm9tbyBtYWluIC5hY3Rpb24tbGluayBhIHtcbiAgICAgIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2Utb3V0O1xuICAgICAgcGFkZGluZzogMTBweCA1MnB4O1xuICAgICAgYm9yZGVyOiBzb2xpZCAxcHggI2ZhZTZjZDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDQwcHg7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cbiAgICAgIGJvZHkucHJvbW8gbWFpbiAuYWN0aW9uLWxpbmsgYTpob3ZlciB7XG4gICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjEpOyB9XG5cbmJvZHkubWVkaWEgW2lkPVwiY29udGVudFwiXS5ibHVyIHtcbiAgZmlsdGVyOiBibHVyKDVweCk7IH1cblxuYm9keS5tZWRpYSAubW9kYWwge1xuICBkaXNwbGF5OiBub25lO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHotaW5kZXg6IDE7XG4gIHBhZGRpbmctdG9wOiA2MHB4O1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG92ZXJmbG93OiBhdXRvO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBibGFjaztcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjQpO1xuICAvKiBNb2RhbCBDb250ZW50ICovXG4gIC8qIFRoZSBNb2RhbCBDbG9zZSBCdXR0b24gKi8gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICBib2R5Lm1lZGlhIC5tb2RhbCB7XG4gICAgICBwYWRkaW5nLXRvcDogNzVweDsgfSB9XG4gIGJvZHkubWVkaWEgLm1vZGFsIC5tb2RhbC1jb250ZW50IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNzUpO1xuICAgIG1hcmdpbjogYXV0bztcbiAgICBwYWRkaW5nOiAyMHB4O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgYm9keS5tZWRpYSAubW9kYWwgLm1vZGFsLWNvbnRlbnQge1xuICAgICAgICB3aWR0aDogODAlO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAzcHg7XG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgIG1heC13aWR0aDogNjAwcHg7XG4gICAgICAgIGhlaWdodDogYXV0bzsgfSB9XG4gICAgYm9keS5tZWRpYSAubW9kYWwgLm1vZGFsLWNvbnRlbnQgaDMge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDsgfVxuICAgIGJvZHkubWVkaWEgLm1vZGFsIC5tb2RhbC1jb250ZW50IC5kb3dubG9hZCB7XG4gICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDsgfVxuICBib2R5Lm1lZGlhIC5tb2RhbCAuY2xvc2Uge1xuICAgIGNvbG9yOiAjYWFhYWFhO1xuICAgIGZsb2F0OiByaWdodDtcbiAgICBmb250LXNpemU6IDI4cHg7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7IH1cbiAgICBib2R5Lm1lZGlhIC5tb2RhbCAuY2xvc2U6aG92ZXIsIGJvZHkubWVkaWEgLm1vZGFsIC5jbG9zZTpmb2N1cyB7XG4gICAgICBjb2xvcjogI2NjY2NjYztcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjsgfVxuXG5ib2R5Lm1lZGlhIG1haW4ge1xuICBtYXgtd2lkdGg6IDI5MHB4O1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXJnaW4tYm90dG9tOiA0NXB4OyB9XG4gIGJvZHkubWVkaWEgbWFpbjphZnRlciB7XG4gICAgY29udGVudDogXCIgXCI7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgYm9keS5tZWRpYSBtYWluIHtcbiAgICAgIG1heC13aWR0aDogNzAycHg7XG4gICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgIG1hcmdpbi1yaWdodDogYXV0bzsgfVxuICAgICAgYm9keS5tZWRpYSBtYWluOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCIgXCI7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBjbGVhcjogYm90aDsgfSB9XG4gIGJvZHkubWVkaWEgbWFpbiBzZWN0aW9uIHtcbiAgICBtYXJnaW4tYm90dG9tOiA5MHB4O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAgIGJvZHkubWVkaWEgbWFpbiBzZWN0aW9uIHVsIHtcbiAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICBsaXN0LXN0eWxlOiBub25lOyB9XG4gICAgICBib2R5Lm1lZGlhIG1haW4gc2VjdGlvbiB1bCBsaSB7XG4gICAgICAgIGRpc3BsYXk6IHRhYmxlLXJvdzsgfVxuICAgICAgICBib2R5Lm1lZGlhIG1haW4gc2VjdGlvbiB1bCBsaTpiZWZvcmUge1xuICAgICAgICAgIGNvbnRlbnQ6IFwi4oCiXCI7XG4gICAgICAgICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjRlbTsgfVxuICAgIGJvZHkubWVkaWEgbWFpbiBzZWN0aW9uIGEge1xuICAgICAgY3Vyc29yOiBwb2ludGVyOyB9XG4gICAgICBib2R5Lm1lZGlhIG1haW4gc2VjdGlvbiBhLmN0YSB7XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2Utb3V0O1xuICAgICAgICBwYWRkaW5nOiAxMHB4IDUycHg7XG4gICAgICAgIGJvcmRlcjogc29saWQgMXB4ICNmYWU2Y2Q7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDQwcHg7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG4gICAgICAgIGJvZHkubWVkaWEgbWFpbiBzZWN0aW9uIGEuY3RhOmhvdmVyIHtcbiAgICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgICAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjEpOyB9XG4gICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgICAgIGJvZHkubWVkaWEgbWFpbiBzZWN0aW9uIGEuY3RhIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDMwcHg7IH0gfVxuXG5ib2R5Lm1lZGlhIC5pbWFnZS1kb3dubG9hZHMge1xuICBvdmVyZmxvdzogYXV0bzsgfVxuICBib2R5Lm1lZGlhIC5pbWFnZS1kb3dubG9hZHMgYSB7XG4gICAgcGFkZGluZy1ib3R0b206IDMwcHg7IH1cbiAgYm9keS5tZWRpYSAuaW1hZ2UtZG93bmxvYWRzIGltZyB7XG4gICAgcGFkZGluZzogMjBweCAwIDEwcHg7IH1cblxuYm9keS5tZWRpYSBzZWN0aW9uW2lkPVwidHJhY2tpci01XCJdIC5pbWFnZS1kb3dubG9hZHMgLm1vZGFsQnRuIHtcbiAgd2lkdGg6IDQ0LjQ0NDQ0JTtcbiAgZmxvYXQ6IGxlZnQ7IH1cbiAgYm9keS5tZWRpYSBzZWN0aW9uW2lkPVwidHJhY2tpci01XCJdIC5pbWFnZS1kb3dubG9hZHMgLm1vZGFsQnRuOm50aC1jaGlsZCgybiArIDEpIHtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBtYXJnaW4tcmlnaHQ6IC0xMDAlO1xuICAgIGNsZWFyOiBib3RoO1xuICAgIG1hcmdpbi1sZWZ0OiAwOyB9XG4gIGJvZHkubWVkaWEgc2VjdGlvbltpZD1cInRyYWNraXItNVwiXSAuaW1hZ2UtZG93bmxvYWRzIC5tb2RhbEJ0bjpudGgtY2hpbGQoMm4gKyAyKSB7XG4gICAgbWFyZ2luLWxlZnQ6IDU1LjU1NTU2JTtcbiAgICBtYXJnaW4tcmlnaHQ6IC0xMDAlO1xuICAgIGNsZWFyOiBub25lOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIGJvZHkubWVkaWEgc2VjdGlvbltpZD1cInRyYWNraXItNVwiXSAuaW1hZ2UtZG93bmxvYWRzIC5tb2RhbEJ0biB7XG4gICAgICB3aWR0aDogMjguNTcxNDMlO1xuICAgICAgZmxvYXQ6IGxlZnQ7IH1cbiAgICAgIGJvZHkubWVkaWEgc2VjdGlvbltpZD1cInRyYWNraXItNVwiXSAuaW1hZ2UtZG93bmxvYWRzIC5tb2RhbEJ0bjpudGgtY2hpbGQoM24gKyAxKSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IC0xMDAlO1xuICAgICAgICBjbGVhcjogYm90aDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgICAgIGJvZHkubWVkaWEgc2VjdGlvbltpZD1cInRyYWNraXItNVwiXSAuaW1hZ2UtZG93bmxvYWRzIC5tb2RhbEJ0bjpudGgtY2hpbGQoM24gKyAyKSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAzNS43MTQyOSU7XG4gICAgICAgIG1hcmdpbi1yaWdodDogLTEwMCU7XG4gICAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgICBib2R5Lm1lZGlhIHNlY3Rpb25baWQ9XCJ0cmFja2lyLTVcIl0gLmltYWdlLWRvd25sb2FkcyAubW9kYWxCdG46bnRoLWNoaWxkKDNuICsgMykge1xuICAgICAgICBtYXJnaW4tbGVmdDogNzEuNDI4NTclO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IC0xMDAlO1xuICAgICAgICBjbGVhcjogbm9uZTsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICBib2R5Lm1lZGlhIHNlY3Rpb25baWQ9XCJ0cmFja2NsaXAtcHJvXCJdIC5pbWFnZS1kb3dubG9hZHMge1xuICAgIG1heC13aWR0aDogNDAwcHg7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9XG4gICAgYm9keS5tZWRpYSBzZWN0aW9uW2lkPVwidHJhY2tjbGlwLXByb1wiXSAuaW1hZ2UtZG93bmxvYWRzOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBjbGVhcjogYm90aDsgfSB9XG5cbmJvZHkubWVkaWEgc2VjdGlvbltpZD1cInRyYWNrY2xpcC1wcm9cIl0gLmltYWdlLWRvd25sb2FkcyAubW9kYWxCdG4ge1xuICB3aWR0aDogNDQuNDQ0NDQlO1xuICBmbG9hdDogbGVmdDsgfVxuICBib2R5Lm1lZGlhIHNlY3Rpb25baWQ9XCJ0cmFja2NsaXAtcHJvXCJdIC5pbWFnZS1kb3dubG9hZHMgLm1vZGFsQnRuOm50aC1jaGlsZCgybiArIDEpIHtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBtYXJnaW4tcmlnaHQ6IC0xMDAlO1xuICAgIGNsZWFyOiBib3RoO1xuICAgIG1hcmdpbi1sZWZ0OiAwOyB9XG4gIGJvZHkubWVkaWEgc2VjdGlvbltpZD1cInRyYWNrY2xpcC1wcm9cIl0gLmltYWdlLWRvd25sb2FkcyAubW9kYWxCdG46bnRoLWNoaWxkKDJuICsgMikge1xuICAgIG1hcmdpbi1sZWZ0OiA1NS41NTU1NiU7XG4gICAgbWFyZ2luLXJpZ2h0OiAtMTAwJTtcbiAgICBjbGVhcjogbm9uZTsgfVxuXG5ib2R5Lm1lZGlhIHNlY3Rpb25baWQ9XCJ0cmFja2NsaXBcIl0gLmltYWdlLWRvd25sb2FkcyAubW9kYWxCdG4ge1xuICB3aWR0aDogMTAwJTtcbiAgZmxvYXQ6IGxlZnQ7IH1cbiAgYm9keS5tZWRpYSBzZWN0aW9uW2lkPVwidHJhY2tjbGlwXCJdIC5pbWFnZS1kb3dubG9hZHMgLm1vZGFsQnRuOm50aC1jaGlsZCgxbiArIDEpIHtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBtYXJnaW4tcmlnaHQ6IC0xMDAlO1xuICAgIGNsZWFyOiBub25lOyB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICBib2R5Lm1lZGlhIHNlY3Rpb25baWQ9XCJoYXRzXCJdIC5pbWFnZS1kb3dubG9hZHMge1xuICAgIG1heC13aWR0aDogNDAwcHg7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9XG4gICAgYm9keS5tZWRpYSBzZWN0aW9uW2lkPVwiaGF0c1wiXSAuaW1hZ2UtZG93bmxvYWRzOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBjbGVhcjogYm90aDsgfSB9XG5cbmJvZHkubWVkaWEgc2VjdGlvbltpZD1cImhhdHNcIl0gLmltYWdlLWRvd25sb2FkcyAubW9kYWxCdG4ge1xuICB3aWR0aDogNDQuNDQ0NDQlO1xuICBmbG9hdDogbGVmdDsgfVxuICBib2R5Lm1lZGlhIHNlY3Rpb25baWQ9XCJoYXRzXCJdIC5pbWFnZS1kb3dubG9hZHMgLm1vZGFsQnRuOm50aC1jaGlsZCgybiArIDEpIHtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBtYXJnaW4tcmlnaHQ6IC0xMDAlO1xuICAgIGNsZWFyOiBib3RoO1xuICAgIG1hcmdpbi1sZWZ0OiAwOyB9XG4gIGJvZHkubWVkaWEgc2VjdGlvbltpZD1cImhhdHNcIl0gLmltYWdlLWRvd25sb2FkcyAubW9kYWxCdG46bnRoLWNoaWxkKDJuICsgMikge1xuICAgIG1hcmdpbi1sZWZ0OiA1NS41NTU1NiU7XG4gICAgbWFyZ2luLXJpZ2h0OiAtMTAwJTtcbiAgICBjbGVhcjogbm9uZTsgfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgYm9keS5tZWRpYSBzZWN0aW9uW2lkPVwidmlzb3JzXCJdIC5pbWFnZS1kb3dubG9hZHMge1xuICAgIG1heC13aWR0aDogNDAwcHg7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9XG4gICAgYm9keS5tZWRpYSBzZWN0aW9uW2lkPVwidmlzb3JzXCJdIC5pbWFnZS1kb3dubG9hZHM6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCIgXCI7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGNsZWFyOiBib3RoOyB9IH1cblxuYm9keS5tZWRpYSBzZWN0aW9uW2lkPVwidmlzb3JzXCJdIC5pbWFnZS1kb3dubG9hZHMgLm1vZGFsQnRuIHtcbiAgd2lkdGg6IDQ0LjQ0NDQ0JTtcbiAgZmxvYXQ6IGxlZnQ7IH1cbiAgYm9keS5tZWRpYSBzZWN0aW9uW2lkPVwidmlzb3JzXCJdIC5pbWFnZS1kb3dubG9hZHMgLm1vZGFsQnRuOm50aC1jaGlsZCgybiArIDEpIHtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBtYXJnaW4tcmlnaHQ6IC0xMDAlO1xuICAgIGNsZWFyOiBib3RoO1xuICAgIG1hcmdpbi1sZWZ0OiAwOyB9XG4gIGJvZHkubWVkaWEgc2VjdGlvbltpZD1cInZpc29yc1wiXSAuaW1hZ2UtZG93bmxvYWRzIC5tb2RhbEJ0bjpudGgtY2hpbGQoMm4gKyAyKSB7XG4gICAgbWFyZ2luLWxlZnQ6IDU1LjU1NTU2JTtcbiAgICBtYXJnaW4tcmlnaHQ6IC0xMDAlO1xuICAgIGNsZWFyOiBub25lOyB9XG4iLCJAaW1wb3J0IFwidmVuZG9yL2JyZWFrcG9pbnRcIjtcblxuXG4kdGV4dC1zaXplLWhlYWRpbmctbGFyZ2UtbW9iaWxlOiA0NXB4O1xuJHRleHQtc2l6ZS1oZWFkaW5nLW1lZGl1bS1tb2JpbGU6IDM2cHg7XG4kdGV4dC1zaXplLWhlYWRpbmctc21hbGwtbW9iaWxlOiAxOHB4O1xuJHRleHQtc2l6ZS1jb3B5LWxhcmdlLW1vYmlsZTogMThweDtcbiR0ZXh0LXNpemUtY29weS1ub3JtYWwtbW9iaWxlOiAxNnB4O1xuJHRleHQtc2l6ZS1jb3B5LXNtYWxsLW1vYmlsZTogMTNweDtcblxuYm9keSB7XG4gICAgY29sb3I6ICRjb2xvci10ZXh0LWRlZmF1bHQ7XG4gICAgZm9udC1mYW1pbHk6ICRmb250LXN0YWNrLWRlZmF1bHQ7XG4gICAgbGluZS1oZWlnaHQ6IDEuMztcbn1cblxuYSB7XG4gICAgY29sb3I6ICRjb2xvci10ZXh0LWVtcGhhc2l6ZWQ7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG59XG5cbmgxLCBoMiwgaDMsIGg0LCBoNSwgaDYge1xuICAgIGNvbG9yOiAkY29sb3ItdGV4dC1lbXBoYXNpemVkO1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG59XG5cbmgxLCBoMiB7XG4gICAgZm9udC1mYW1pbHk6ICRmb250LXN0YWNrLWhlYWRpbmc7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cbmgzIHtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbn1cbmxhYmVsIHtcbiAgICBjb2xvcjogJGNvbG9yLXRleHQtZW1waGFzaXplZDtcbn1cbmNvZGUge1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4zKSBub25lIHJlcGVhdCBzY3JvbGwgMCUgMCU7XG4gICAgY29sb3I6IHdoaXRlO1xuICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICBwYWRkaW5nOiAxcHggOXB4O1xufVxuXG4vLyBNb2JpbGUtZmlyc3QgKCsgdGFibGV0KSB0eXBlIHNpemVzLlxuYm9keSB7IGZvbnQtc2l6ZTogJHRleHQtc2l6ZS1jb3B5LW5vcm1hbC1tb2JpbGU7IH1cbmgxIHsgZm9udC1zaXplOiAkdGV4dC1zaXplLWhlYWRpbmctbGFyZ2UtbW9iaWxlOyB9XG5oMiB7IGZvbnQtc2l6ZTogJHRleHQtc2l6ZS1oZWFkaW5nLW1lZGl1bS1tb2JpbGU7IH1cbmgzIHsgZm9udC1zaXplOiAkdGV4dC1zaXplLWhlYWRpbmctc21hbGwtbW9iaWxlOyB9XG4iLCIvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBEZWZpbmUgc29tZSBjb25zdGFudHMvY29uZmlndXJhdGlvbi5cblxuJGRlZmF1bHQtYm94LXNpemluZzogYm9yZGVyLWJveDtcblxuJGRlZmF1bHQtdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4ycztcbiRkZWZhdWx0LXRyYW5zaXRpb24tZnVuY3Rpb246IGVhc2Utb3V0O1xuXG4kZm9udC1zdGFjay1kZWZhdWx0OiBcIkFyaWFsXCIsIHNhbnMtc2VyaWY7XG4kZm9udC1zdGFjay1oZWFkaW5nOiBcIk5leGFcIiwgc2Fucy1zZXJpZjtcblxuJGNvbG9yLWJnLWRhcms6IHJnYigyMiwgMjIsIDIyKTtcbiRjb2xvci10ZXh0LWRlZmF1bHQ6IHJnYigyNTAsIDIzMCwgMjA1KTtcbiRjb2xvci10ZXh0LWVtcGhhc2l6ZWQ6IHJnYigyNTUsIDI1NSwgMjU1KTtcbiRjb2xvci10ZXh0LWV2ZW5sZXNzZGltOiAkY29sb3ItdGV4dC1kZWZhdWx0O1xuJGNvbG9yLXRleHQtbGVzc2RpbTogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjY2KTtcbiRjb2xvci10ZXh0LWRpbTogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpO1xuJGNvbG9yLXRleHQtZXh0cmFkaW06IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4zNSk7XG5cbiRjb2xvci1pbnB1dC10ZXh0OiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNyk7XG4kY29sb3ItaW5wdXQtZGFya2VuOiByZ2JhKDAsIDAsIDAsIDAuMSk7XG5cbiRib3JkZXItcmFkaXVzLXNtYWxsOiA1cHg7XG4kYm9yZGVyLXJhZGl1cy1sYXJnZTogNDBweDtcblxuJGZvb3Rlci1oZWlnaHQtbW9iaWxlOiAyNDBweDtcbiRmb290ZXItaGVpZ2h0LXRhYmxldDogMjI1cHg7XG5cblxuLy8gU3VzeSBnbG9iYWwgY29uZmlndXJhdGlvbi5cbiRzdXN5OiAoXG4gICAgY29sdW1uczogMTIsXG4gICAgZ2xvYmFsLWJveC1zaXppbmc6ICRkZWZhdWx0LWJveC1zaXppbmcsXG4pO1xuXG5cbi8vIEJyZWFrcG9pbnQuc2NzcyBtZWRpYSBxdWVyeSB2YXJpYWJsZXMuXG4kYnAtZGVza3RvcC1taW4td2lkdGg6IDEyMDBweDtcbiRicC10YWJsZXQtbWF4LXdpZHRoOiAoJGJwLWRlc2t0b3AtbWluLXdpZHRoIC0gMXB4KTtcbiRicC10YWJsZXQtbWluLXdpZHRoOiA3NjhweDtcbiRicC1tb2JpbGUtbWF4LXdpZHRoOiAoJGJwLXRhYmxldC1taW4td2lkdGggLSAxcHgpO1xuXG4kYnAtbW9iaWxlLW9ubHk6IG1heC13aWR0aCAkYnAtbW9iaWxlLW1heC13aWR0aDtcblxuJGJwLXRhYmxldC11cDogJGJwLXRhYmxldC1taW4td2lkdGg7XG4kYnAtdGFibGV0LWRvd246IG1heC13aWR0aCAkYnAtdGFibGV0LW1heC13aWR0aDtcbiRicC1kZXNrdG9wLW9ubHk6ICRicC1kZXNrdG9wLW1pbi13aWR0aDtcblxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gQ29tcG9zZSBhbmQgb3V0cHV0IHBhcnRpYWxzLlxuXG4vLyBWZW5kb3Igc3R5bGVzLlxuQGltcG9ydCBcIm5vcm1hbGl6ZVwiO1xuXG4vLyBDb21tb24gc3R5bGVzLlxuQGltcG9ydCBcImZvbnRzXCI7XG5AaW1wb3J0IFwidHlwb2dyYXBoeVwiO1xuQGltcG9ydCBcImNvbW1vblwiO1xuXG4vLyBUZW1wbGF0ZSBwYXJ0aWFscy5cbkBpbXBvcnQgXCJoZWFkZXJcIjtcbkBpbXBvcnQgXCJmb290ZXJcIjtcblxuLy8gUGFnZS1zcGVjaWZpYyBzdHlsZXMuXG5AaW1wb3J0IFwicGFnZXMvaW5kZXhcIjtcbkBpbXBvcnQgXCJwYWdlcy9jYXJ0LWFuZC1jaGVja291dFwiO1xuQGltcG9ydCBcInBhZ2VzL2Fib3V0XCI7XG5AaW1wb3J0IFwicGFnZXMvcG9saWN5XCI7XG5AaW1wb3J0IFwicGFnZXMvd2FycmFudHktYW5kLXRlcm1zXCI7XG5AaW1wb3J0IFwicGFnZXMvcHJvZHVjdHNcIjtcbkBpbXBvcnQgXCJwYWdlcy9oZWxwXCI7XG5AaW1wb3J0IFwicGFnZXMvNDA0XCI7XG5AaW1wb3J0IFwicGFnZXMvZGV2ZWxvcGVyc1wiO1xuQGltcG9ydCBcInBhZ2VzL2RlYWxlcnNcIjtcbkBpbXBvcnQgXCJwYWdlcy9kb3dubG9hZHNcIjtcbkBpbXBvcnQgXCJwYWdlcy90cmFja2lyNVwiO1xuQGltcG9ydCBcInBhZ2VzL2FjY2Vzc29yaWVzXCI7XG5AaW1wb3J0IFwicGFnZXMvZ2FtZXMtbGlzdFwiO1xuQGltcG9ydCBcInBhZ2VzL3JlbW90ZS1zdXBwb3J0XCI7XG5AaW1wb3J0IFwicGFnZXMvcHJvbW9cIjtcbkBpbXBvcnQgXCJwYWdlcy9tZWRpYVwiO1xuIiwiQGltcG9ydCBcInZlbmRvci9icmVha3BvaW50XCI7XG5AaW1wb3J0IFwidmVuZG9yL3N1c3lcIjtcblxuQGltcG9ydCBcImhlbHBlcnMvZGV2ZWxvcG1lbnRcIjtcbkBpbXBvcnQgXCJoZWxwZXJzL2NvbnRhaW5lclwiO1xuQGltcG9ydCBcImhlbHBlcnMvbGlzdHNcIjtcbkBpbXBvcnQgXCJoZWxwZXJzL2hpZGVcIjtcbkBpbXBvcnQgXCJoZWxwZXJzL2J1dHRvbnNcIjtcbkBpbXBvcnQgXCJoZWxwZXJzL2JvcmRlcnNcIjtcblxuQGltcG9ydCBcInBhcnRpYWxzL2hlYWRpbmdzXCI7XG5cblxuXG4vLyBHbG9iYWwgYm94LXNpemluZyBpbiBhIHdheSB0aGF0J3MgZWFzaWVyIHRvIG92ZXJyaWRlIG9uIGEgcGVyLWNvbXBvbmVudCBiYXNpcyB3aGVuIG5lY2Vzc2FyeS5cbi8vIGh0dHBzOi8vY3NzLXRyaWNrcy5jb20vaW5oZXJpdGluZy1ib3gtc2l6aW5nLXByb2JhYmx5LXNsaWdodGx5LWJldHRlci1iZXN0LXByYWN0aWNlL1xuaHRtbCB7XG4gICAgYm94LXNpemluZzogJGRlZmF1bHQtYm94LXNpemluZztcbiAgICBvdmVyZmxvdy15OiBzY3JvbGw7XG59XG5cbiosXG4qOmJlZm9yZSxcbio6YWZ0ZXIge1xuICAgIGJveC1zaXppbmc6IGluaGVyaXQ7XG59XG5cblxuaW1nIHtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG59XG5cbmh0bWwsXG5ib2R5IHtcbiAgICBoZWlnaHQ6IDEwMCU7XG59XG5cbi8vIFRvIGFjY29tb2RhdGUgdGhlIHN0aWNreSBmb290ZXIuXG4kR0xPQkFMX2Zvb3Rlci1oZWlnaHQtbW9iaWxlOiAyMDBweDtcbiRHTE9CQUxfZm9vdGVyLWhlaWdodC10YWJsZXQ6ICRHTE9CQUxfZm9vdGVyLWhlaWdodC1tb2JpbGU7XG5tYWluIHtcbiAgICBtaW4taGVpZ2h0OiAxMDAlO1xuICAgIG1hcmdpbi1ib3R0b206ICAtJGZvb3Rlci1oZWlnaHQtbW9iaWxlO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAgLSRmb290ZXItaGVpZ2h0LXRhYmxldDtcbiAgICB9XG59XG5tYWluOjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBoZWlnaHQ6ICAkZm9vdGVyLWhlaWdodC1tb2JpbGU7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgaGVpZ2h0OiAgJGZvb3Rlci1oZWlnaHQtdGFibGV0O1xuICB9XG59XG5cbmJvZHkge1xuICAgIGJhY2tncm91bmQ6ICNFQzhBMDA7XG4gICAgYmFja2dyb3VuZC1pbWFnZTpcbiAgICAgICAgbGluZWFyLWdyYWRpZW50KC05MGRlZywgI0VDOEEwMCAwJSwgI0ZBOUIwMCAxMCUsICNGRkE2MDAgMjAlLCAjRkZBNjAwIDgwJSwgI0ZBOUIwMCA5MCUsICNFQzhBMDAgMTAwJSksXG4gICAgICAgIHJhZGlhbC1ncmFkaWVudCg1MCUgNTAlLCAjRkZBNjAwIDUwJSwgI0ZGQTYwMCA2MCUsICNGQTlCMDAgODAlLCAjRUM4QTAwIDEwMCUsICNCNjVGMDAgMTM1JSk7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogbGVmdCAwIHRvcCAxMjA1MHB4LCB0b3AgY2VudGVyO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiAgbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtc2l6ZTogYXV0byAxMDAwMHB4LCAxMDAlIDEyMDAwcHg7XG59XG5oMSwgaDIge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwcHg7XG4gICAgfVxufVxuXG5pbnB1dFt0eXBlPVwidGV4dFwiXSxcbmlucHV0W3R5cGU9XCJlbWFpbFwiXSxcbmlucHV0W3R5cGU9XCJ0ZWxcIl0sXG50ZXh0YXJlYSxcbiB7XG4gICAgZm9udC1zaXplOiAkdGV4dC1zaXplLWNvcHktc21hbGwtbW9iaWxlO1xuICAgIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICAgIHBhZGRpbmc6IDRweCAxMHB4O1xuICAgIGJvcmRlcjogMDtcbiAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1zbWFsbDtcbiAgICBiYWNrZ3JvdW5kOiAkY29sb3ItaW5wdXQtZGFya2VuO1xuICAgICY6Zm9jdXMsXG4gICAgJjphY3RpdmUge1xuICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAxcHggJGNvbG9yLXRleHQtZW1waGFzaXplZDtcbiAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICB9XG59XG5cbmlucHV0W3R5cGU9XCJzdWJtaXRcIl0sXG5idXR0b24ge1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIEBpbmNsdWRlIGJ0bjtcbn1cblxuLy8gRklYTUU6IG5vcm1hbGl6ZS5jc3MgYWRkcyBjb2xvcjogaW5oZXJpdCAoLT4gd2hpdGUgYm9keSB0ZXh0KSwgYW5kIHdlIGNhbid0IGVhc2lseSBzdHlsZSB0aGUgYmFja2dyb3VuZCBvZiBzZWxlY3Qvb3B0aW9uIGVsZW1lbnRzIGluIGEgY3Jvc3MtYnJvd3Nlci1mcmllbmRseSB3YXkuXG5zZWxlY3Qge1xuICAgIGNvbG9yOiAjMDAwO1xufVxuIiwiLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBEZWZhdWx0IFZhcmlhYmxlc1xuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4kQnJlYWtwb2ludC1TZXR0aW5nczogKFxuICAnZGVmYXVsdCBtZWRpYSc6IGFsbCxcbiAgJ2RlZmF1bHQgZmVhdHVyZSc6IG1pbi13aWR0aCxcbiAgJ2RlZmF1bHQgcGFpcic6IHdpZHRoLFxuXG4gICdmb3JjZSBhbGwgbWVkaWEgdHlwZSc6IGZhbHNlLFxuICAndG8gZW1zJzogZmFsc2UsXG4gICd0cmFuc2Zvcm0gcmVzb2x1dGlvbnMnOiB0cnVlLFxuXG4gICdubyBxdWVyaWVzJzogZmFsc2UsXG4gICdubyBxdWVyeSBmYWxsYmFja3MnOiBmYWxzZSxcblxuICAnYmFzZSBmb250IHNpemUnOiAxNnB4LFxuXG4gICdsZWdhY3kgc3ludGF4JzogZmFsc2Vcbik7XG5cbiRicmVha3BvaW50OiAoKSAhZGVmYXVsdDtcblxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBJbXBvcnRzXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbkBpbXBvcnQgXCJicmVha3BvaW50L3NldHRpbmdzXCI7XG5AaW1wb3J0ICdicmVha3BvaW50L2NvbnRleHQnO1xuQGltcG9ydCAnYnJlYWtwb2ludC9oZWxwZXJzJztcbkBpbXBvcnQgJ2JyZWFrcG9pbnQvcGFyc2Vycyc7XG5AaW1wb3J0ICdicmVha3BvaW50L25vLXF1ZXJ5JztcblxuQGltcG9ydCAnYnJlYWtwb2ludC9yZXNwb25kLXRvJztcblxuQGltcG9ydCBcImJyZWFrcG9pbnQvbGVnYWN5LXNldHRpbmdzXCI7XG5cbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gQnJlYWtwb2ludCBNaXhpblxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG5cbkBtaXhpbiBicmVha3BvaW50KCRxdWVyeSwgJG5vLXF1ZXJ5OiBmYWxzZSkge1xuICBAaW5jbHVkZSBsZWdhY3ktc2V0dGluZ3Mtd2FybmluZztcblxuICAvLyBSZXNldCBjb250ZXh0c1xuICBAaW5jbHVkZSBwcml2YXRlLWJyZWFrcG9pbnQtcmVzZXQtY29udGV4dHMoKTtcblxuICAkYnJlYWtwb2ludDogYnJlYWtwb2ludCgkcXVlcnksIGZhbHNlKTtcblxuICAkcXVlcnktc3RyaW5nOiBtYXAtZ2V0KCRicmVha3BvaW50LCAncXVlcnknKTtcbiAgJHF1ZXJ5LWZhbGxiYWNrOiBtYXAtZ2V0KCRicmVha3BvaW50LCAnZmFsbGJhY2snKTtcblxuICAkcHJpdmF0ZS1icmVha3BvaW50LWNvbnRleHQtaG9sZGVyOiBtYXAtZ2V0KCRicmVha3BvaW50LCAnY29udGV4dCBob2xkZXInKSAhZ2xvYmFsO1xuICAkcHJpdmF0ZS1icmVha3BvaW50LXF1ZXJ5LWNvdW50OiBtYXAtZ2V0KCRicmVha3BvaW50LCAncXVlcnkgY291bnQnKSAhZ2xvYmFsO1xuXG4gIC8vIEFsbG93IGZvciBhbiBhcy1uZWVkZWQgb3ZlcnJpZGUgb3IgdXNhZ2Ugb2Ygbm8gcXVlcnkgZmFsbGJhY2suXG4gIEBpZiAkbm8tcXVlcnkgIT0gZmFsc2Uge1xuICAgICRxdWVyeS1mYWxsYmFjazogJG5vLXF1ZXJ5O1xuICB9XG5cbiAgQGlmICRxdWVyeS1mYWxsYmFjayAhPSBmYWxzZSB7XG4gICAgJGNvbnRleHQtc2V0dGVyOiBwcml2YXRlLWJyZWFrcG9pbnQtc2V0LWNvbnRleHQoJ25vLXF1ZXJ5JywgJHF1ZXJ5LWZhbGxiYWNrKTtcbiAgfVxuXG4gIC8vIFByaW50IE91dCBRdWVyeSBTdHJpbmdcbiAgQGlmIG5vdCBicmVha3BvaW50LWdldCgnbm8gcXVlcmllcycpIHtcbiAgICBAbWVkaWEgI3skcXVlcnktc3RyaW5nfSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cblxuICBAaWYgYnJlYWtwb2ludC1nZXQoJ25vIHF1ZXJ5IGZhbGxiYWNrcycpICE9IGZhbHNlIG9yIGJyZWFrcG9pbnQtZ2V0KCdubyBxdWVyaWVzJykgPT0gdHJ1ZSB7XG5cbiAgICAkdHlwZTogdHlwZS1vZihicmVha3BvaW50LWdldCgnbm8gcXVlcnkgZmFsbGJhY2tzJykpO1xuICAgICRwcmludDogZmFsc2U7XG5cbiAgICBAaWYgKCR0eXBlID09ICdib29sJykge1xuICAgICAgJHByaW50OiB0cnVlO1xuICAgIH1cbiAgICBAZWxzZSBpZiAoJHR5cGUgPT0gJ3N0cmluZycpIHtcbiAgICAgIEBpZiAkcXVlcnktZmFsbGJhY2sgPT0gYnJlYWtwb2ludC1nZXQoJ25vIHF1ZXJ5IGZhbGxiYWNrcycpIHtcbiAgICAgICAgJHByaW50OiB0cnVlO1xuICAgICAgfVxuICAgIH1cbiAgICBAZWxzZSBpZiAoJHR5cGUgPT0gJ2xpc3QnKSB7XG4gICAgICBAZWFjaCAkd3JhcHBlciBpbiBicmVha3BvaW50LWdldCgnbm8gcXVlcnkgZmFsbGJhY2tzJykge1xuICAgICAgICBAaWYgJHF1ZXJ5LWZhbGxiYWNrID09ICR3cmFwcGVyIHtcbiAgICAgICAgICAkcHJpbnQ6IHRydWU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBXcml0ZSBGYWxsYmFja1xuICAgIEBpZiAoJHF1ZXJ5LWZhbGxiYWNrICE9IGZhbHNlKSBhbmQgKCRwcmludCA9PSB0cnVlKSB7XG4gICAgICAkdHlwZS1mYWxsYmFjazogdHlwZS1vZigkcXVlcnktZmFsbGJhY2spO1xuXG4gICAgICBAaWYgKCR0eXBlLWZhbGxiYWNrICE9ICdib29sJykge1xuICAgICAgICAjeyRxdWVyeS1mYWxsYmFja30gJiB7XG4gICAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgQGNvbnRlbnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgcHJpdmF0ZS1icmVha3BvaW50LXJlc2V0LWNvbnRleHRzKCk7XG59XG5cblxuQG1peGluIG1xKCRxdWVyeSwgJG5vLXF1ZXJ5OiBmYWxzZSkge1xuICBAaW5jbHVkZSBicmVha3BvaW50KCRxdWVyeSwgJG5vLXF1ZXJ5KSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cbiIsIkBtaXhpbiBidG4ge1xuICAgIHRyYW5zaXRpb246IGFsbCAkZGVmYXVsdC10cmFuc2l0aW9uLWR1cmF0aW9uICRkZWZhdWx0LXRyYW5zaXRpb24tZnVuY3Rpb247XG4gICAgcGFkZGluZzogMTBweCA1MnB4O1xuICAgIGJvcmRlcjogc29saWQgMXB4ICRjb2xvci10ZXh0LWRlZmF1bHQ7XG4gICAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMtbGFyZ2U7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICAgIGNvbG9yOiAkY29sb3ItdGV4dC1lbXBoYXNpemVkO1xuICAgICAgICBiYWNrZ3JvdW5kOiAkY29sb3ItaW5wdXQtZGFya2VuO1xuICAgIH1cbn1cbiIsIi8vIFNldCB0aGUgaGVpZ2h0IG9mIHRoZSBoZWFkZXIgc28gdGhhdCBpdCBjYW4gYmUgcHVzaGVkIFwiZG93blwiIHcvIHBhZGRpbmcgc2luY2UgaXQgaXMgZml4ZWRcbi8vIHRvIHRoZSB0b3AuXG4kaGVhZGVyLWhlaWdodC1tb2JpbGU6IDYwcHg7XG4kaGVhZGVyLWhlaWdodC10YWJsZXQ6IDc1cHg7XG5cbmhlYWRlciB7XG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciA1MDBtcyBlYXNlLWluLW91dDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI0NywgMTQ2LCAwLCAwLjApO1xuICAgIGJvcmRlci1ib3R0b206IHNvbGlkIDFweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMzUpO1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICB0b3A6IDA7XG4gICAgei1pbmRleDogMTAwMDtcbiAgICBoZWlnaHQ6ICRoZWFkZXItaGVpZ2h0LW1vYmlsZTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgaGVpZ2h0OiAkaGVhZGVyLWhlaWdodC10YWJsZXQ7XG4gICAgfVxuICAgICYubWFpbi1uYXYtc2Nyb2xsZWQge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI0NywgMTQ2LCAwLCAwLjkpO1xuICAgIH1cbiAgICBuYXZbcm9sZT1cIm5hdmlnYXRpb25cIl0ge1xuICAgICAgICBAaW5jbHVkZSBhZGFwdGl2ZS1jb250YWluZXI7XG4gICAgICAgIHBhZGRpbmc6IDVweCAwcHggN3B4O1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDMwcHggMCAxOHB4O1xuICAgICAgICB9XG4gICAgICAgIC50cmFja2lyLWxvZ28ge1xuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgcHVzaCgzKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDE0NHB4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgYSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAwIDRweDtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItdGV4dC1kZWZhdWx0O1xuICAgICAgICAgICAgZm9udC1zaXplOiAkdGV4dC1zaXplLWNvcHktc21hbGwtbW9iaWxlO1xuICAgICAgICB9XG4gICAgICAgIGxpOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICB9XG4gICAgICAgIGxpOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgYXtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgID4gdWwge1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDVweDtcbiAgICAgICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBqdXN0aWZ5O1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogLTRweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgID4gbGkge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICAmLmNhcnQgYSB7XG4gICAgICAgICAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgdmlzdWFsbHktaGlkZGVuO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgaWNvbigkaWNvbi1nbHlwaC1iYXNrZXQpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgbGkuaW5saW5lLXRyYWNraXItbG9nbyB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtbW9iaWxlLW9ubHkpIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxNXB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGxpOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogNnB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgbGk6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG4gICAgICAgICAgICAgICAgbGk6bnRoLW9mLXR5cGUoMiksXG4gICAgICAgICAgICAgICAgbGk6bnRoLW9mLXR5cGUoMykge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogNjJweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgbGk6bnRoLW9mLXR5cGUoNCksXG4gICAgICAgICAgICAgICAgbGk6bnRoLW9mLXR5cGUoNSkge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMjJweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG4vLyBUaGlzIHB1c2hlcyB0aGUgbWFpbiBkaXYgZG93biBiZWxvdyB0aGUgaGVhZGVyIHdoaWNoIGlzIGZpeGVkLlxubWFpbiB7XG4gICAgcGFkZGluZy10b3A6ICRoZWFkZXItaGVpZ2h0LW1vYmlsZTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgcGFkZGluZy10b3A6ICRoZWFkZXItaGVpZ2h0LXRhYmxldDtcbiAgICB9XG59XG4iLCIvLyByZW0gU3VwcG9ydFxuLy8gPT09PT09PT09PT1cblxuLy8gcmVtXG4vLyAtLS1cbi8vIENoZWNrIGZvciBhbiBleGlzdGluZyBzdXBwb3J0IG1peGluLCBvciBvdXRwdXQgZGlyZWN0bHkuXG4vLyAtICRwcm9wICA6IDxjc3MgcHJvcGVydHk+XG4vLyAtICR2YWwgICA6IDxjc3MgdmFsdWU+XG5AbWl4aW4gc3VzeS1yZW0oXG4gICRwcm9wLFxuICAkdmFsXG4pIHtcbiAgJF9yZXFzOiAoXG4gICAgdmFyaWFibGU6IHJoeXRobS11bml0IHJlbS13aXRoLXB4LWZhbGxiYWNrLFxuICAgIG1peGluOiByZW0sXG4gICk7XG4gIEBpZiBzdXN5LXN1cHBvcnQocmVtLCAkX3JlcXMsICR3YXJuOiBmYWxzZSkgYW5kICRyaHl0aG0tdW5pdCA9PSByZW0ge1xuICAgIEBpbmNsdWRlIHJlbSgkcHJvcCwgJHZhbCk7XG4gIH0gQGVsc2Uge1xuICAgICN7JHByb3B9OiAkdmFsO1xuICB9XG59XG4iLCJAbWl4aW4gYWRhcHRpdmUtY29udGFpbmVyIHtcbiAgICBAaW5jbHVkZSBjb250YWluZXIoMjkwcHgpO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG4gICAgICAgIEBpbmNsdWRlIGNvbnRhaW5lcig3MDJweCk7XG4gICAgfVxufVxuIiwiLy8gQ29udGFpbmVyIFN5bnRheFxuLy8gPT09PT09PT09PT09PT09PVxuXG4vLyBDb250YWluZXIgW21peGluXVxuLy8gLS0tLS0tLS0tLS0tLS0tLS1cbi8vIFNldCBhIGNvbnRhaW5lciBlbGVtZW50XG4vLyAtIFskbGF5b3V0XSAgOiA8c2V0dGluZ3M+XG5AbWl4aW4gY29udGFpbmVyKFxuICAkbGF5b3V0OiAkc3VzeVxuKSB7XG4gICRpbnNwZWN0ICAgIDogJGxheW91dDtcbiAgJGxheW91dCAgICAgOiBwYXJzZS1ncmlkKCRsYXlvdXQpO1xuXG4gICRfd2lkdGggICAgIDogZ2V0LWNvbnRhaW5lci13aWR0aCgkbGF5b3V0KTtcbiAgJF9qdXN0aWZ5ICAgOiBwYXJzZS1jb250YWluZXItcG9zaXRpb24oc3VzeS1nZXQoY29udGFpbmVyLXBvc2l0aW9uLCAkbGF5b3V0KSk7XG4gICRfcHJvcGVydHkgIDogaWYoc3VzeS1nZXQobWF0aCwgJGxheW91dCkgPT0gc3RhdGljLCB3aWR0aCwgbWF4LXdpZHRoKTtcblxuICAkX2JveCAgICAgICA6IHN1c3ktZ2V0KGJveC1zaXppbmcsICRsYXlvdXQpO1xuXG4gIEBpZiAkX2JveCB7XG4gICAgQGluY2x1ZGUgb3V0cHV0KChib3gtc2l6aW5nOiAkX2JveCkpO1xuICB9XG5cbiAgQGluY2x1ZGUgc3VzeS1pbnNwZWN0KGNvbnRhaW5lciwgJGluc3BlY3QpO1xuICBAaW5jbHVkZSBmbG9hdC1jb250YWluZXIoJF93aWR0aCwgJF9qdXN0aWZ5LCAkX3Byb3BlcnR5KTtcbiAgQGluY2x1ZGUgc2hvdy1ncmlkKCRsYXlvdXQpO1xufVxuXG4vLyBDb250YWluZXIgW2Z1bmN0aW9uXVxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIFJldHVybiBjb250YWluZXIgd2lkdGhcbi8vIC0gWyRsYXlvdXRdICA6IDxzZXR0aW5ncz5cbkBmdW5jdGlvbiBjb250YWluZXIoXG4gICRsYXlvdXQ6ICRzdXN5XG4pIHtcbiAgJGxheW91dDogcGFyc2UtZ3JpZCgkbGF5b3V0KTtcbiAgQHJldHVybiBnZXQtY29udGFpbmVyLXdpZHRoKCRsYXlvdXQpO1xufVxuXG4vLyBHZXQgQ29udGFpbmVyIFdpZHRoXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBDYWxjdWxhdGUgdGhlIGNvbnRhaW5lciB3aWR0aFxuLy8gLSBbJGxheW91dF06IDxzZXR0aW5ncz5cbkBmdW5jdGlvbiBnZXQtY29udGFpbmVyLXdpZHRoKFxuICAkbGF5b3V0OiAkc3VzeVxuKSB7XG4gICRsYXlvdXQgICAgICAgICA6IHBhcnNlLWdyaWQoJGxheW91dCk7XG4gICRfd2lkdGggICAgICAgICA6IHN1c3ktZ2V0KGNvbnRhaW5lciwgJGxheW91dCk7XG4gICRfY29sdW1uLXdpZHRoICA6IHN1c3ktZ2V0KGNvbHVtbi13aWR0aCwgJGxheW91dCk7XG4gICRfbWF0aCAgICAgICAgICA6IHN1c3ktZ2V0KG1hdGgsICRsYXlvdXQpO1xuXG4gIEBpZiBub3QoJF93aWR0aCkgb3IgJF93aWR0aCA9PSBhdXRvIHtcbiAgICBAaWYgdmFsaWQtY29sdW1uLW1hdGgoJF9tYXRoLCAkX2NvbHVtbi13aWR0aCkge1xuICAgICAgJF9jb2x1bW5zICAgOiBzdXN5LWdldChjb2x1bW5zLCAkbGF5b3V0KTtcbiAgICAgICRfZ3V0dGVycyAgIDogc3VzeS1nZXQoZ3V0dGVycywgJGxheW91dCk7XG4gICAgICAkX3NwcmVhZCAgICA6IGlmKGlzLXNwbGl0KCRsYXlvdXQpLCB3aWRlLCBuYXJyb3cpO1xuICAgICAgJF93aWR0aCAgICAgOiBzdXN5LXN1bSgkX2NvbHVtbnMsICRfZ3V0dGVycywgJF9zcHJlYWQpICogJF9jb2x1bW4td2lkdGg7XG4gICAgfSBAZWxzZSB7XG4gICAgICAkX3dpZHRoOiAxMDAlO1xuICAgIH1cbiAgfVxuXG4gIEByZXR1cm4gJF93aWR0aDtcbn1cblxuLy8gUGFyc2UgQ29udGFpbmVyIFBvc2l0aW9uXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIFBhcnNlIHRoZSAkY29udGFpbmVyLXBvc2l0aW9uIGludG8gbWFyZ2luIHZhbHVlcy5cbi8vIC0gWyRqdXN0aWZ5XSAgIDogbGVmdCB8IGNlbnRlciB8IHJpZ2h0IHwgPGxlbmd0aD4gWzxsZW5ndGg+XVxuQGZ1bmN0aW9uIHBhcnNlLWNvbnRhaW5lci1wb3NpdGlvbihcbiAgJGp1c3RpZnk6IG1hcC1nZXQoJHN1c3ktZGVmYXVsdHMsIGNvbnRhaW5lci1wb3NpdGlvbilcbikge1xuICAkX3JldHVybjogaWYoJGp1c3RpZnkgPT0gbGVmdCwgMCwgYXV0bykgaWYoJGp1c3RpZnkgPT0gcmlnaHQsIDAsIGF1dG8pO1xuXG4gIEBpZiBub3QoaW5kZXgobGVmdCByaWdodCBjZW50ZXIsICRqdXN0aWZ5KSkge1xuICAgICRfcmV0dXJuOiBudGgoJGp1c3RpZnksIDEpO1xuICAgICRfcmV0dXJuOiAkX3JldHVybiBpZihsZW5ndGgoJGp1c3RpZnkpID4gMSwgbnRoKCRqdXN0aWZ5LCAyKSwgJF9yZXR1cm4pO1xuICB9XG5cbiAgQHJldHVybiAkX3JldHVybjtcbn1cbiIsIi8vIFN1c3kgRmFsbGJhY2sgQ2xlYXJmaXhcbi8vID09PT09PT09PT09PT09PT09PT09PT1cblxuXG4vLyBDbGVhcmZpeFxuLy8gLS0tLS0tLS1cbi8vIENoZWNrIGZvciBhbiBleGlzdGluZyBzdXBwb3J0IG1peGluLCBvciBwcm92aWRlIGEgc2ltcGxlIGZhbGxiYWNrLlxuQG1peGluIHN1c3ktY2xlYXJmaXgge1xuICBAaWYgc3VzeS1zdXBwb3J0KGNsZWFyZml4LCAobWl4aW46IGNsZWFyZml4KSkge1xuICAgIEBpbmNsdWRlIGNsZWFyZml4O1xuICB9IEBlbHNlIHtcbiAgICAmOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBjbGVhcjogYm90aDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIFNwYW4gU3ludGF4XG4vLyA9PT09PT09PT09PVxuXG4vLyBTcGFuIFttaXhpbl1cbi8vIC0tLS0tLS0tLS0tLVxuLy8gU2V0IGEgc3Bhbm5pbmcgZWxlbWVudCB1c2luZyBzaG9ydGhhbmQgc3ludGF4LlxuLy8gLSAkc3BhbiAgOiA8c3Bhbj5cbkBtaXhpbiBzcGFuKFxuICAkc3BhblxuKSB7XG4gICRpbnNwZWN0OiAkc3BhbjtcbiAgJHNwYW46IHBhcnNlLXNwYW4oJHNwYW4pO1xuICAkb3V0cHV0OiBzcGFuLW1hdGgoJHNwYW4pO1xuICAkbmVzdGluZzogc3VzeS1nZXQoc3BhbiwgJHNwYW4pO1xuICAkY2xlYXI6IHN1c3ktZ2V0KGNsZWFyLCAkc3Bhbik7XG5cbiAgJGJveDogc3VzeS1nZXQoYm94LXNpemluZywgJHNwYW4pO1xuICAkY29udGVudC1ib3g6IGlmKHN1c3ktZ2V0KGdsb2JhbC1ib3gtc2l6aW5nKSAhPSAnYm9yZGVyLWJveCcsIHRydWUsIGZhbHNlKTtcbiAgJGJveDogJGJveCBvciBpZihpcy1pbnNpZGUoJHNwYW4pIGFuZCAkY29udGVudC1ib3gsIGJvcmRlci1ib3gsIG51bGwpO1xuXG4gIEBpZiAkY2xlYXIgPT0gYnJlYWsge1xuICAgIEBpbmNsdWRlIGJyZWFrO1xuICB9IEBlbHNlIGlmICRjbGVhciA9PSBub2JyZWFrIHtcbiAgICBAaW5jbHVkZSBub2JyZWFrO1xuICB9XG5cbiAgQGluY2x1ZGUgc3VzeS1pbnNwZWN0KHNwYW4sICRpbnNwZWN0KTtcbiAgQGluY2x1ZGUgb3V0cHV0KChib3gtc2l6aW5nOiAkYm94KSk7XG4gIEBpbmNsdWRlIGZsb2F0LXNwYW4tb3V0cHV0KCRvdXRwdXQuLi4pO1xuXG4gIEBpZiB2YWxpZC1jb2x1bW5zKCRuZXN0aW5nLCBzaWxlbnQpIHtcbiAgICBAaW5jbHVkZSBuZXN0ZWQoJHNwYW4pIHsgQGNvbnRlbnQ7IH1cbiAgfSBAZWxzZSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuLy8gU3BhbiBbZnVuY3Rpb25dXG4vLyAtLS0tLS0tLS0tLS0tLS1cbi8vIFJldHVybiB0aGUgd2lkdGggb2YgYSBzcGFuLlxuLy8gLSAkc3BhbiAgOiA8c3Bhbj5cbkBmdW5jdGlvbiBzcGFuKFxuICAkc3BhblxuKSB7XG4gIEByZXR1cm4gZ2V0LXNwYW4td2lkdGgoJHNwYW4pO1xufVxuXG4vLyBTcGFuIE1hdGhcbi8vIC0tLS0tLS0tLVxuLy8gR2V0IGFsbCB0aGUgc3BhbiByZXN1bHRzLlxuLy8gLSAkc3BhbjogPG1hcD5cbkBmdW5jdGlvbiBzcGFuLW1hdGgoXG4gICRzcGFuXG4pIHtcbiAgJG5lc3QgICAgICAgICAgICAgOiBpZihzdXN5LWdldChyb2xlLCAkc3BhbikgPT0gbmVzdCwgdHJ1ZSwgZmFsc2UpO1xuICAkc3BsaXQtbmVzdCAgICAgICA6IGlmKGlzLXNwbGl0KCRzcGFuKSBhbmQgJG5lc3QsIHRydWUsIGZhbHNlKTtcbiAgJGVkZ2UgICAgICAgICAgICAgOiBnZXQtZWRnZSgkc3Bhbik7XG4gICRsb2NhdGlvbiAgICAgICAgIDogZ2V0LWxvY2F0aW9uKCRzcGFuKTtcblxuICAkZmxvYXQgICAgICAgICAgICA6IGZyb207XG4gICRwYWRkaW5nLWJlZm9yZSAgIDogbnVsbDtcbiAgJHBhZGRpbmctYWZ0ZXIgICAgOiBudWxsO1xuICAkbWFyZ2luLWJlZm9yZSAgICA6IG51bGw7XG4gICRtYXJnaW4tYWZ0ZXIgICAgIDogbnVsbDtcblxuICAvLyBjYWxjdWxhdGUgd2lkdGhzXG4gICRzcHJlYWQ6IGluZGV4KG1hcC12YWx1ZXMoJHNwYW4pLCBzcHJlYWQpO1xuICAkc3BhbjogaWYoJHNwbGl0LW5lc3QgYW5kIG5vdCgkc3ByZWFkKSwgbWFwLW1lcmdlKCRzcGFuLCAoc3ByZWFkOiB3aWRlKSksICRzcGFuKTtcbiAgJHdpZHRoOiBnZXQtc3Bhbi13aWR0aCgkc3Bhbik7XG4gICRndXR0ZXJzOiBnZXQtZ3V0dGVycygkc3Bhbik7XG5cbiAgLy8gYXBwbHkgZ3V0dGVyc1xuICBAaWYgaXMtaW5zaWRlKCRzcGFuKSB7XG4gICAgQGlmIG5vdChzdXN5LWdldChyb2xlLCAkc3BhbikpIHtcbiAgICAgICRwYWRkaW5nLWJlZm9yZTogbWFwLWdldCgkZ3V0dGVycywgYmVmb3JlKTtcbiAgICAgICRwYWRkaW5nLWFmdGVyOiBtYXAtZ2V0KCRndXR0ZXJzLCBhZnRlcik7XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICBAaWYgbm90KCRzcGxpdC1uZXN0KSB7XG4gICAgICAkbWFyZ2luLWJlZm9yZTogbWFwLWdldCgkZ3V0dGVycywgYmVmb3JlKTtcbiAgICAgICRtYXJnaW4tYWZ0ZXI6IG1hcC1nZXQoJGd1dHRlcnMsIGFmdGVyKTtcbiAgICB9XG4gIH1cblxuICAvLyBzcGVjaWFsIG1hcmdpbiBoYW5kbGluZ1xuICBAaWYgc3VzeS1nZXQob3V0cHV0LCAkc3BhbikgPT0gaXNvbGF0ZSBhbmQgJGxvY2F0aW9uIHtcbiAgICAkbWFyZ2luLWJlZm9yZTogZ2V0LWlzb2xhdGlvbigkc3Bhbik7XG4gICAgJG1hcmdpbi1hZnRlcjogLTEwMCU7XG4gIH0gQGVsc2UgaWYgJGVkZ2Uge1xuICAgICRpcy1zcGxpdDogaXMtc3BsaXQoJHNwYW4pO1xuICAgICRwb3M6IHN1c3ktZ2V0KGd1dHRlci1wb3NpdGlvbiwgJHNwYW4pO1xuXG4gICAgQGlmICRlZGdlID09IGxhc3Qge1xuICAgICAgJGZsb2F0OiBzdXN5LWdldChsYXN0LWZsb3csICRzcGFuKTtcbiAgICB9XG5cbiAgICBAaWYgbm90KCRpcy1zcGxpdCkge1xuICAgICAgQGlmICRlZGdlID09IGZ1bGwgb3IgKCRlZGdlID09IGZpcnN0IGFuZCAkcG9zID09IGJlZm9yZSkge1xuICAgICAgICAkbWFyZ2luLWJlZm9yZTogMDtcbiAgICAgIH1cbiAgICAgIEBpZiAkZWRnZSA9PSBmdWxsIG9yICgkZWRnZSA9PSBsYXN0IGFuZCAkcG9zID09IGFmdGVyKSB7XG4gICAgICAgICRtYXJnaW4tYWZ0ZXI6IDA7XG4gICAgICB9XG4gICAgfVxuXG4gIH1cblxuICBAcmV0dXJuIChcbiAgICB3aWR0aCAgICAgICAgICAgOiAkd2lkdGgsXG4gICAgZmxvYXQgICAgICAgICAgIDogJGZsb2F0LFxuICAgIG1hcmdpbi1iZWZvcmUgICA6ICRtYXJnaW4tYmVmb3JlLFxuICAgIG1hcmdpbi1hZnRlciAgICA6ICRtYXJnaW4tYWZ0ZXIsXG4gICAgcGFkZGluZy1iZWZvcmUgIDogJHBhZGRpbmctYmVmb3JlLFxuICAgIHBhZGRpbmctYWZ0ZXIgICA6ICRwYWRkaW5nLWFmdGVyLFxuICAgIGZsb3cgICAgICAgICAgICA6IHN1c3ktZ2V0KGZsb3csICRzcGFuKSxcbiAgKTtcbn1cblxuLy8gR2V0IFNwYW4gV2lkdGhcbi8vIC0tLS0tLS0tLS0tLS0tXG4vLyBSZXR1cm4gc3BhbiB3aWR0aC5cbi8vIC0gJHNwYW46IDxtYXA+XG5AZnVuY3Rpb24gZ2V0LXNwYW4td2lkdGgoXG4gICRzcGFuXG4pIHtcbiAgJHNwYW4gICAgIDogcGFyc2Utc3Bhbigkc3Bhbik7XG5cbiAgJG4gICAgICAgIDogc3VzeS1nZXQoc3BhbiwgJHNwYW4pO1xuICAkbG9jYXRpb24gOiBnZXQtbG9jYXRpb24oJHNwYW4pO1xuICAkY29sdW1ucyAgOiBzdXN5LWdldChjb2x1bW5zLCAkc3Bhbik7XG4gICRndXR0ZXJzICA6IHN1c3ktZ2V0KGd1dHRlcnMsICRzcGFuKTtcbiAgJHNwcmVhZCAgIDogc3VzeS1nZXQoc3ByZWFkLCAkc3Bhbik7XG5cbiAgJGNvbnRleHQgIDogbnVsbDtcbiAgJHNwYW4tc3VtIDogbnVsbDtcbiAgJHdpZHRoICAgIDogbnVsbDtcblxuICBAaWYgJG4gPT0gJ2Z1bGwnIHtcbiAgICAkcG9zOiBzdXN5LWdldChndXR0ZXItcG9zaXRpb24sICRzcGFuKTtcbiAgICAkcm9sZTogc3VzeS1nZXQocm9sZSwgJHNwYW4pO1xuICAgICRuOiBpZigkcG9zID09IHNwbGl0IGFuZCAkcm9sZSAhPSBuZXN0LCBzdXN5LWNvdW50KCRjb2x1bW5zKSwgMTAwJSk7XG4gIH1cblxuICBAaWYgdHlwZS1vZigkbikgIT0gbnVtYmVyIHtcbiAgICBAd2FybiBcIigje3R5cGUtb2YoJG4pfSkgI3skbn0gaXMgbm90IGEgdmFsaWQgc3Bhbi5cIjtcbiAgfSBAZWxzZSBpZiB1bml0bGVzcygkbikge1xuICAgICRjb250ZXh0OiBzdXN5LXN1bSgkY29sdW1ucywgJGd1dHRlcnMsIGlmKGlzLXNwbGl0KCRzcGFuKSwgd2lkZSwgbmFycm93KSk7XG4gICAgJHNwcmVhZDogaWYoaXMtaW5zaWRlKCRzcGFuKSwgJHNwcmVhZCBvciB3aWRlLCAkc3ByZWFkKTtcbiAgICAkc3Bhbi1zdW06IHN1c3koJG4sICRsb2NhdGlvbiwgJGNvbHVtbnMsICRndXR0ZXJzLCAkc3ByZWFkKTtcblxuICAgICRfbWF0aDogc3VzeS1nZXQobWF0aCwgJHNwYW4pO1xuICAgICRfY29sdW1uLXdpZHRoOiBzdXN5LWdldChjb2x1bW4td2lkdGgsICRzcGFuKTtcbiAgICBAaWYgJF9tYXRoID09IHN0YXRpYyB7XG4gICAgICAkd2lkdGg6ICRzcGFuLXN1bSAqIHZhbGlkLWNvbHVtbi1tYXRoKCRfbWF0aCwgJF9jb2x1bW4td2lkdGgpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgJHdpZHRoOiBwZXJjZW50YWdlKCRzcGFuLXN1bSAvICRjb250ZXh0KTtcbiAgICB9XG4gIH0gQGVsc2Uge1xuICAgICR3aWR0aDogJG47XG4gIH1cblxuICBAcmV0dXJuICR3aWR0aDtcbn1cbiIsIi8vIEZvciBzY3JlZW4gcmVhZGVyczsgbm90IHZpc2libGUgdG8gc2lnaHRlZCB1c2Vycy4gRklYTUU6IEJldHRlciBhcHByb2FjaCB0byB0aGlzPyBSZWZlcmVuY2UgZS5nLiBINUJQIG9yIEJvb3RzdHJhcD9cbkBtaXhpbiB2aXN1YWxseS1oaWRkZW4ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IC05OTk5OXB4O1xuICAgIGxlZnQ6IC05OTk5OXB4O1xufVxuIiwiZm9vdGVyIHtcbiAgICBiYWNrZ3JvdW5kOiAkY29sb3ItYmctZGFyaztcbiAgICBmb250LXNpemU6ICR0ZXh0LXNpemUtY29weS1zbWFsbC1tb2JpbGU7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHBhZGRpbmc6IDI1cHggMDtcbiAgICBoZWlnaHQ6ICAkZm9vdGVyLWhlaWdodC1tb2JpbGU7XG4gICAgbWFyZ2luLXRvcDogLSRmb290ZXItaGVpZ2h0LW1vYmlsZTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgcGFkZGluZzogNDBweCAwO1xuICAgICAgICBoZWlnaHQ6ICAkZm9vdGVyLWhlaWdodC10YWJsZXQ7XG4gICAgICAgIG1hcmdpbi10b3A6IC0kZm9vdGVyLWhlaWdodC10YWJsZXQ7XG4gICAgfVxuICAgIC5zb2NpYWwtbGlua3MsIG5hdi5hdXhpbGlhcnksIC5zb3N1bWkge1xuICAgICAgICBAaW5jbHVkZSBhZGFwdGl2ZS1jb250YWluZXI7XG4gICAgfVxuICAgIGEge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIGNvbG9yOiAkY29sb3ItdGV4dC1lbXBoYXNpemVkO1xuICAgIH1cbiAgICAuc29jaWFsLWxpbmtzIHtcbiAgICAgICAgZm9udC1zaXplOiAyOHB4O1xuICAgICAgICBhIHtcbiAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItdGV4dC1leHRyYWRpbTtcbiAgICAgICAgfVxuICAgICAgICB1bCB7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgPiBsaSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgMTBweDtcbiAgICAgICAgICAgICAgICAvLyBTcGVjaWFsIHN0eWxpbmcgZm9yIGFuIG9kZCBhcHBlYXJlbmNlIG9mIHRoZSBUd2ljaCBpY29uXG4gICAgICAgICAgICAgICAgLmljb24tdHdpdGNoIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAyNnB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAubGFiZWwge1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSB2aXN1YWxseS1oaWRkZW47XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIG5hdi5hdXhpbGlhcnkge1xuICAgICAgICB1bCB7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgPiBsaSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lO1xuICAgICAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDAuNWVtO1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyLjNlbTtcbiAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogXCJcXDIwMjJcIjsgLy8gUm91bmQgYnVsbGV0XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMC4zZW07XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIC8vIE5vIGJ1bGxldCB0byB0aGUgbGVmdCBvZiB0aGUgZmlyc3QgaXRlbS5cbiAgICAgICAgICAgICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgLy8gTm8gYnVsbGV0IHRvIHRoZSBsZWZ0IG9mIGl0ZW1zIHRoYXQgc3RhcnQgbmV3IGxpbmVzIG9uIG1vYmlsZS5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC1tb2JpbGUtb25seSkge1xuICAgICAgICAgICAgICAgICAgICAmOm50aC1vZi10eXBlKDUpLFxuICAgICAgICAgICAgICAgICAgICAmOm50aC1vZi10eXBlKDgpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgLy8gTm8gYnVsbGV0IHRvIHRoZSBsZWZ0IG9mIGl0ZW1zIHRoYXQgc3RhcnQgbmV3IGxpbmVzIG9uIHRhYmxldC5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgICAgICAgICAgJjpudGgtb2YtdHlwZSg5KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgLmNvcHlyaWdodCxcbiAgICAuYWxsLXJpZ2h0cy1yZXNlcnZlZCB7XG4gICAgICAgIGNvbG9yOiAkY29sb3ItdGV4dC1leHRyYWRpbTtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtbW9iaWxlLW9ubHkpIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiQGltcG9ydCBcIi4uL3BhcnRpYWxzL2ZlYXR1cmVkLXByb2R1Y3RzXCI7XG5cbmJvZHkuaG9tZSB7XG5cbiAgICBtYWluIHtcbiAgICAgICAgLy8gVGhlIGhvbWVwYWdlIHN0YXJ0cyB3aXRoIGEgemVybyBvcGFjaXR5IHNvIHRoYXQgaXQgaGFzIGEgY2hhbmNlIHRvIHdyaXRlIHBhaW50IHRoZSBET00uIFRoZW4gaXQgd2lsbCBmYWRlIGluLlxuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICBhbmltYXRpb24tbmFtZTogZmFkZS1zaXRlLWluO1xuICAgICAgICBhbmltYXRpb24tZHVyYXRpb246IDJzO1xuICAgICAgICBhbmltYXRpb24tZmlsbC1tb2RlOiBmb3J3YXJkcztcbiAgICAgICAgQGtleWZyYW1lcyBmYWRlLXNpdGUtaW4ge1xuICAgICAgICAgICAgMCUgICB7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIDMwJSB7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIDEwMCUge1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgc2VjdGlvbiAge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgYS5jdGEge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJ0bjtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgaDEge1xuICAgICAgICBmb250LXNpemU6IDM2cHg7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgICAgICAgZm9udC1zaXplOiA0NXB4O1xuICAgICAgICB9XG4gICAgfVxuICAgIGgyIHtcbiAgICAgICAgZm9udC1zaXplOiAyOHB4O1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogNDVweDtcbiAgICAgICAgfVxuICAgIH1cbiAgICBbaWQ9XCJpbnRyb1wiXSB7XG4gICAgICAgIEBpbmNsdWRlIGFkYXB0aXZlLWNvbnRhaW5lcjtcbiAgICAgICAgbWFyZ2luLXRvcDogNjBweDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNDBweDtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtbW9iaWxlLW9ubHkpIHtcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDk4cHg7XG4gICAgICAgIH1cbiAgICAgICAgLnR5cGVkIHtcbiAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgICAgICAgICB0b3A6IC0yMnB4O1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBoMSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDM2cHg7XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDQ1cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBiciB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5jb250ZW50IGgzIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDcwMHB4O1xuICAgICAgICB9XG4gICAgfVxuICAgIC5tb25pdG9yLWNvbnRhaW5lciB7XG4gICAgICAgIEBpbmNsdWRlIGFkYXB0aXZlLWNvbnRhaW5lcjtcbiAgICAgICAgaGVpZ2h0OiA1ODBweDtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgIGhlaWdodDogNTMwcHg7XG4gICAgICAgIH1cbiAgICAgICAgLnN0YXRpYy1mYWxsYmFjayB7XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmRpc3BsYXktc3Vycm91bmQsXG4gICAgICAgIC5kZW1vLXZpZGVvIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLW1vYmlsZS1vbmx5KSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIGEge1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBzcGFuKDMyIG9mIDEyKTtcbiAgICAgICAgICAgIEBpbmNsdWRlIHB1bGwoMTApO1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgc3BhbigxNCBvZiAxMik7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgcHVsbCgxKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBpbWcge1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogLTIwMXB4O1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IC45OTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICB2aWRlbyB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAtMTIwMHB4O1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDM5cHg7XG4gICAgICAgICAgICB3aWR0aDogNzQ2cHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBbaWQ9XCJpbnRyby1jdGFcIl0ge1xuICAgICAgICBAaW5jbHVkZSBhZGFwdGl2ZS1jb250YWluZXI7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDUwcHg7XG4gICAgICAgIC5jYWxsLXRvLWFjdGlvbiB7XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBzcGFuKDEwKTtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBwdXNoKDEpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgYS5jdGEge1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuY2FsbC10by1hY3Rpb24tbGlua3Mge1xuICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMjgwcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgW2lkPVwiZmVhdHVyZWQtcHJvZHVjdHNcIl0ge1xuICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsMCwwLC4xKTtcbiAgICB9XG5cbiAgICBbaWQ9XCJnYW1lci10ZXN0aW1vbmlhbHNcIl0ge1xuICAgICAgICBAaW5jbHVkZSBhZGFwdGl2ZS1jb250YWluZXI7XG4gICAgICAgIG1hcmdpbi10b3A6IDUwcHg7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDUwcHg7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogODBweDtcbiAgICAgICAgfVxuICAgICAgICAudGVzdGltb25pYWwtY29udGFpbmVyIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDUwcHg7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuICAgICAgICAudGVzdGltb25pYWwge1xuICAgICAgICAgICAgQGluY2x1ZGUgc3BhbigxMik7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA1MHB4O1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgZ2FsbGVyeSg2IG9mIDEyKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBpbWcge1xuICAgICAgICAgICAgQGluY2x1ZGUgc3BhbigyIGJyZWFrKTtcbiAgICAgICAgICAgIHdpZHRoOiA0MHB4O1xuICAgICAgICB9XG4gICAgICAgIC5xdW90ZSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAwcHg7XG4gICAgICAgICAgICBAaW5jbHVkZSBzcGFuKDEwIGxhc3QpO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtMnB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLnBlcnNvbiB7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMTJweDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwcHg7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRjb2xvci10ZXh0LWVtcGhhc2l6ZWQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgW2lkPVwiZmVhdHVyZWQtZ2FtZXNcIl0ge1xuICAgICAgICBiYWNrZ3JvdW5kOiAjMjMyMzIzIG5vbmUgcmVwZWF0IDAgMDtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRjb2xvci10ZXh0LWV4dHJhZGltO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogODBweDtcbiAgICAgICAgcGFkZGluZy10b3A6IDIwcHg7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgICAgICAgcGFkZGluZzogNTBweCBhdXRvO1xuICAgICAgICB9XG4gICAgICAgIC5nYW1lcy13cmFwIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA2MHB4O1xuICAgICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICAgICAgb3ZlcmZsb3cteDogaGlkZGVuO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmdhbWVzIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgICAgICB0b3A6IDE3cHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIC5nYW1lcy1saXN0IHtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgLmdhbWUtYmFja2dyb3VuZCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL3RyYWNraXItZW5oYW5jZWQtZ2FtZXMtdmVydGljYWwucG5nKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDQwMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy90cmFja2lyLWVuaGFuY2VkLWdhbWVzLWhvcml6b250YWwucG5nKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDIxMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiBhdXRvIGF1dG87XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIC50eXBlZC1jdXJzb3J7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIGFuaW1hdGlvbjogY3Vyc29yLWJsaW5rIDFzIGluZmluaXRlO1xuICAgICAgICBmb250LWZhbWlseTogJGZvbnQtc3RhY2stZGVmYXVsdDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDEwMDtcbiAgICAgICAgQGtleWZyYW1lcyBjdXJzb3ItYmxpbmsge1xuICAgICAgICAgICAgMCUgeyBvcGFjaXR5OjE7IH1cbiAgICAgICAgICAgIDUwJSB7IG9wYWNpdHk6MDsgfVxuICAgICAgICAgICAgMTAwJSB7IG9wYWNpdHk6MTsgfVxuICAgICAgICB9XG4gICAgfVxuICAgIGZvb3RlciB7XG4gICAgICAgIG9wYWNpdHk6IC45OTtcbiAgICAgICAgYmFja2dyb3VuZDogIzIzMjMyMyBub25lIHJlcGVhdCAwIDA7XG4gICAgfVxufVxuIiwiLy8gRGlyZWN0aW9uIEhlbHBlcnNcbi8vID09PT09PT09PT09PT09PT09XG5cbi8vIFN1c3kgRmxvdyBEZWZhdWx0c1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyAtIFBSSVZBVEVcbkBpbmNsdWRlIHN1c3ktZGVmYXVsdHMoKFxuICBmbG93OiBsdHIsXG4pKTtcblxuLy8gR2V0IERpcmVjdGlvblxuLy8gLS0tLS0tLS0tLS0tLVxuLy8gUmV0dXJuIHRoZSAnZnJvbScgb3IgJ3RvJyBkaXJlY3Rpb24gb2YgYSBsdHIgb3IgcnRsIGZsb3cuXG4vLyAtIFskZmxvd10gIDogbHRyIHwgcnRsXG4vLyAtIFska2V5XSAgIDogZnJvbSB8IHRvXG5AZnVuY3Rpb24gZ2V0LWRpcmVjdGlvbihcbiAgJGZsb3c6IG1hcC1nZXQoJHN1c3ktZGVmYXVsdHMsIGZsb3cpLFxuICAka2V5OiBmcm9tXG4pIHtcbiAgJHJldHVybjogaWYoJGZsb3cgPT0gcnRsLCAoZnJvbTogcmlnaHQsIHRvOiBsZWZ0KSwgKGZyb206IGxlZnQsIHRvOiByaWdodCkpO1xuICBAcmV0dXJuIG1hcC1nZXQoJHJldHVybiwgJGtleSk7XG59XG5cbi8vIFRvXG4vLyAtLVxuLy8gUmV0dXJuIHRoZSAndG8nIGRpcmVjdGlvbiBvZiBhIGZsb3dcbi8vIC0gWyRmbG93XSAgOiBsdHIgfCBydGxcbkBmdW5jdGlvbiB0byhcbiAgJGZsb3c6IG1hcC1nZXQoJHN1c3ktZGVmYXVsdHMsIGZsb3cpXG4pIHtcbiAgQHJldHVybiBnZXQtZGlyZWN0aW9uKCRmbG93LCB0byk7XG59XG5cbi8vIEZyb21cbi8vIC0tLS1cbi8vIFJldHVybiB0aGUgJ2Zyb20nIGRpcmVjdGlvbiBvZiBhIGZsb3dcbi8vIC0gWyRmbG93XSAgOiBsdHIgfCBydGxcbkBmdW5jdGlvbiBmcm9tKFxuICAkZmxvdzogbWFwLWdldCgkc3VzeS1kZWZhdWx0cywgZmxvdylcbikge1xuICBAcmV0dXJuIGdldC1kaXJlY3Rpb24oJGZsb3csIGZyb20pO1xufVxuIiwiLy8gR3V0dGVyIFN5bnRheFxuLy8gPT09PT09PT09PT09PVxuXG5cbi8vIEd1dHRlcnNcbi8vIC0tLS0tLS1cbi8vIFNldCBndXR0ZXJzIG9uIGFuIGVsZW1lbnQuXG4vLyAtIFskc3Bhbl0gICA6IDxzZXR0aW5ncz5cbkBtaXhpbiBndXR0ZXJzKFxuICAkc3BhbjogJHN1c3lcbikge1xuICAkaW5zcGVjdCAgOiAkc3BhbjtcbiAgJHNwYW4gICAgIDogcGFyc2UtZ3V0dGVycygkc3Bhbik7XG4gICRfZ3V0dGVycyA6IGdldC1ndXR0ZXJzKCRzcGFuKTtcblxuICAkX291dHB1dDogKFxuICAgIGJlZm9yZTogbWFwLWdldCgkX2d1dHRlcnMsIGJlZm9yZSksXG4gICAgYWZ0ZXI6IG1hcC1nZXQoJF9ndXR0ZXJzLCBhZnRlciksXG4gICAgZmxvdzogc3VzeS1nZXQoZmxvdywgJHNwYW4pLFxuICApO1xuXG4gIEBpbmNsdWRlIHN1c3ktaW5zcGVjdChndXR0ZXJzLCAkaW5zcGVjdCk7XG5cbiAgQGlmIGlzLWluc2lkZSgkc3Bhbikge1xuICAgIEBpbmNsdWRlIHBhZGRpbmctb3V0cHV0KCRfb3V0cHV0Li4uKTtcbiAgfSBAZWxzZSB7XG4gICAgQGluY2x1ZGUgbWFyZ2luLW91dHB1dCgkX291dHB1dC4uLik7XG4gIH1cbn1cblxuQG1peGluIGd1dHRlcihcbiAgJHNwYW46ICRzdXN5XG4pIHtcbiAgQGluY2x1ZGUgZ3V0dGVycygkc3Bhbik7XG59XG5cblxuLy8gR3V0dGVyXG4vLyAtLS0tLS1cbi8vIFJldHVybiB0aGUgd2lkdGggb2YgYSBndXR0ZXIuXG4vLyAtIFskc3Bhbl0gICA6IDxzZXR0aW5ncz5cbkBmdW5jdGlvbiBndXR0ZXIoXG4gICRzcGFuOiAkc3VzeVxuKSB7XG4gICRzcGFuOiBwYXJzZS1ndXR0ZXJzKCRzcGFuKTtcblxuICAkX2d1dHRlcnM6IGdldC1ndXR0ZXJzKCRzcGFuKTtcbiAgJF9ndXR0ZXJzOiBtYXAtZ2V0KCRfZ3V0dGVycywgYmVmb3JlKSBvciBtYXAtZ2V0KCRfZ3V0dGVycywgYWZ0ZXIpO1xuXG4gIEByZXR1cm4gJF9ndXR0ZXJzO1xufVxuXG5AZnVuY3Rpb24gZ3V0dGVycyhcbiAgJHNwYW46ICRzdXN5XG4pIHtcbiAgQHJldHVybiBndXR0ZXIoJHNwYW4pO1xufVxuXG5cbi8vIEdldCBHdXR0ZXIgV2lkdGhcbi8vIC0tLS0tLS0tLS0tLS0tLS1cbi8vIFJldHVybiBndXR0ZXIgd2lkdGguXG4vLyAtIFskY29udGV4dF06IDxjb250ZXh0PlxuQGZ1bmN0aW9uIGdldC1ndXR0ZXItd2lkdGgoXG4gICRjb250ZXh0OiAkc3VzeVxuKSB7XG4gICRjb250ZXh0ICA6IHBhcnNlLWd1dHRlcnMoJGNvbnRleHQpO1xuXG4gICRfZ3V0dGVycyA6IHN1c3ktZ2V0KGd1dHRlcnMsICRjb250ZXh0KTtcbiAgJF9ndXR0ZXIgIDogc3VzeS1nZXQoZ3V0dGVyLW92ZXJyaWRlLCAkY29udGV4dCk7XG5cbiAgQGlmICRfZ3V0dGVycyBhbmQgKCRfZ3V0dGVycyA+IDApIGFuZCBub3QoJF9ndXR0ZXIpIHtcbiAgICAkX2NvbHVtbi13aWR0aDogc3VzeS1nZXQoY29sdW1uLXdpZHRoLCAkY29udGV4dCk7XG4gICAgJF9tYXRoOiBndXR0ZXItbWF0aCgkY29udGV4dCk7XG4gICAgQGlmICRfbWF0aCA9PSBzdGF0aWMge1xuICAgICAgJF9ndXR0ZXI6ICRfZ3V0dGVycyAqIHZhbGlkLWNvbHVtbi1tYXRoKCRfbWF0aCwgJF9jb2x1bW4td2lkdGgpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgJF9jb2x1bW5zIDogc3VzeS1nZXQoY29sdW1ucywgJGNvbnRleHQpO1xuICAgICAgJF9zcHJlYWQgIDogaWYoaXMtc3BsaXQoJGNvbnRleHQpLCB3aWRlLCBzdXN5LWdldChzcHJlYWQsICRjb250ZXh0KSk7XG4gICAgICAkX2d1dHRlciAgOiBwZXJjZW50YWdlKCRfZ3V0dGVycyAvIHN1c3ktc3VtKCRfY29sdW1ucywgJF9ndXR0ZXJzLCAkX3NwcmVhZCkpO1xuICAgIH1cbiAgfVxuXG4gICRfZ3V0dGVyOiBpZigkX2d1dHRlciA9PSAnbm8tZ3V0dGVycycgb3IgJF9ndXR0ZXIgPT0gJ25vLWd1dHRlcicsIG51bGwsICRfZ3V0dGVyKTtcblxuICBAcmV0dXJuICRfZ3V0dGVyO1xufVxuXG5cbi8vIEdldCBHdXR0ZXJzXG4vLyAtLS0tLS0tLS0tLVxuLy8gUmV0dXJuIGJlZm9yZSBhbmQgYWZ0ZXIgZ3V0dGVyIHZhbHVlcy5cbi8vIC0gWyRjb250ZXh0XTogPGNvbnRleHQ+XG5AZnVuY3Rpb24gZ2V0LWd1dHRlcnMoXG4gICRjb250ZXh0OiAkc3VzeVxuKSB7XG4gICRjb250ZXh0ICAgICAgICAgICAgOiBwYXJzZS1ndXR0ZXJzKCRjb250ZXh0KTtcblxuICAkX2d1dHRlci1wb3NpdGlvbiAgIDogc3VzeS1nZXQoZ3V0dGVyLXBvc2l0aW9uLCAkY29udGV4dCk7XG4gICRfZ3V0dGVyICAgICAgICAgICAgOiBnZXQtZ3V0dGVyLXdpZHRoKCRjb250ZXh0KTtcblxuICAkX3JldHVybiAgICAgICAgICAgIDogKGJlZm9yZTogbnVsbCwgYWZ0ZXI6IG51bGwpO1xuXG4gIEBpZiBpcy1zcGxpdCgkY29udGV4dCkgYW5kICRfZ3V0dGVyIHtcbiAgICAkX2d1dHRlcjogJF9ndXR0ZXIgLyAyO1xuICAgICRfcmV0dXJuOiBtYXAtbWVyZ2UoJF9yZXR1cm4sIChiZWZvcmU6ICRfZ3V0dGVyLCBhZnRlcjogJF9ndXR0ZXIpKTtcbiAgfSBAZWxzZSB7XG4gICAgJF9yZXR1cm46IG1hcC1tZXJnZSgkX3JldHVybiwgKCRfZ3V0dGVyLXBvc2l0aW9uOiAkX2d1dHRlcikpO1xuICB9XG5cbiAgQHJldHVybiAkX3JldHVybjtcbn1cblxuXG4vLyBJcyBJbnNpZGVcbi8vIC0tLS0tLS0tLVxuLy8gUmV0dXJucyB0cnVlIGlmIGd1dHRlcnMgYXJlIGluc2lkZS5cbi8vICRjb250ZXh0OiA8Y29udGV4dD5cbkBmdW5jdGlvbiBpcy1pbnNpZGUoXG4gICRjb250ZXh0XG4pIHtcbiAgJF9pbnNpZGU6IGluc2lkZSBpbnNpZGUtc3RhdGljO1xuICAkX2d1dHRlci1wb3NpdGlvbjogc3VzeS1nZXQoZ3V0dGVyLXBvc2l0aW9uLCAkY29udGV4dCk7XG5cbiAgQHJldHVybiBpZihpbmRleCgkX2luc2lkZSwgJF9ndXR0ZXItcG9zaXRpb24pLCB0cnVlLCBmYWxzZSk7XG59XG5cblxuLy8gSXMgU3BsaXRcbi8vIC0tLS0tLS0tXG4vLyBSZXR1cm5zIHRydWUgaWYgZ3V0dGVycyBhcmUgc3BsaXQuXG4vLyAkY29udGV4dDogPGNvbnRleHQ+XG5AZnVuY3Rpb24gaXMtc3BsaXQoXG4gICRjb250ZXh0XG4pIHtcbiAgJF9zcGxpdDogc3BsaXQgaW5zaWRlIGluc2lkZS1zdGF0aWM7XG4gICRfZ3V0dGVyLXBvc2l0aW9uOiBzdXN5LWdldChndXR0ZXItcG9zaXRpb24sICRjb250ZXh0KTtcblxuICBAcmV0dXJuIGlmKGluZGV4KCRfc3BsaXQsICRfZ3V0dGVyLXBvc2l0aW9uKSwgdHJ1ZSwgZmFsc2UpO1xufVxuXG5cbi8vIEd1dHRlciBNYXRoXG4vLyAtLS0tLS0tLS0tLVxuLy8gUmV0dXJuIHRoZSBtYXRoIHRvIHVzZSBmb3IgZ3V0dGVyIGNhbGN1bGF0aW9uc1xuLy8gJGNvbnRleHQ6IDxjb250ZXh0PlxuQGZ1bmN0aW9uIGd1dHRlci1tYXRoKFxuICAkY29udGV4dDogJHN1c3lcbikge1xuICAkX3JldHVybiAgOiBzdXN5LWdldChtYXRoLCAkY29udGV4dCk7XG4gICRfcmV0dXJuICA6IGlmKHN1c3ktZ2V0KGd1dHRlci1wb3NpdGlvbiwgJGNvbnRleHQpID09IGluc2lkZS1zdGF0aWMsIHN0YXRpYywgJF9yZXR1cm4pO1xuXG4gIEByZXR1cm4gJF9yZXR1cm47XG59XG4iLCIvLyBNYXJnaW4gU3ludGF4XG4vLyA9PT09PT09PT09PT09XG5cbi8vIFByZVxuLy8gLS0tXG4vLyBBZGQgc3Bhbm5pbmctbWFyZ2lucyBiZWZvcmUgYW4gZWxlbWVudC5cbi8vIC0gJHNwYW4gIDogPHNwYW4+XG5AbWl4aW4gcHJlKFxuICAkc3BhblxuKSB7XG4gICRpbnNwZWN0OiAkc3BhbjtcbiAgJHNwYW4gICA6IG1hcC1tZXJnZSgoc3ByZWFkOiB3aWRlKSwgcGFyc2Utc3Bhbigkc3BhbikpO1xuICAkZmxvdyAgIDogc3VzeS1nZXQoZmxvdywgJHNwYW4pO1xuICAkc3BsaXQgIDogaWYoc3VzeS1nZXQoZ3V0dGVyLXBvc2l0aW9uLCAkc3BhbikgPT0gc3BsaXQsIHRydWUsIGZhbHNlKTtcbiAgJGd1dHRlciA6IGd1dHRlcigkc3Bhbik7XG4gICRzcGFuICAgOiBzcGFuKCRzcGFuKTtcbiAgJHdpZHRoICA6IGlmKCRzcGxpdCBhbmQgJGd1dHRlciwgJHNwYW4gKyAkZ3V0dGVyLCAkc3Bhbik7XG5cbiAgQGluY2x1ZGUgc3VzeS1pbnNwZWN0KHByZSwgJGluc3BlY3QpO1xuICBAaW5jbHVkZSBtYXJnaW4tb3V0cHV0KCR3aWR0aCwgbnVsbCwgJGZsb3cpO1xufVxuXG4vLyBQb3N0XG4vLyAtLS0tXG4vLyBBZGQgc3Bhbm5pbmctbWFyZ2lucyBhZnRlciBhbiBlbGVtZW50LlxuLy8gLSAkc3BhbiAgOiA8c3Bhbj5cbkBtaXhpbiBwb3N0KFxuICAkc3BhblxuKSB7XG4gICRpbnNwZWN0ICA6ICRzcGFuO1xuICAkc3BhbiAgICAgOiBtYXAtbWVyZ2UoKHNwcmVhZDogd2lkZSksIHBhcnNlLXNwYW4oJHNwYW4pKTtcbiAgJGZsb3cgICAgIDogc3VzeS1nZXQoZmxvdywgJHNwYW4pO1xuICAkc3BsaXQgICAgOiBpZihzdXN5LWdldChndXR0ZXItcG9zaXRpb24sICRzcGFuKSA9PSBzcGxpdCwgdHJ1ZSwgZmFsc2UpO1xuICAkd2lkdGggICAgOiBpZigkc3BsaXQsIHNwYW4oJHNwYW4pICsgZ3V0dGVyKCRzcGFuKSwgc3Bhbigkc3BhbikpO1xuXG4gIEBpbmNsdWRlIHN1c3ktaW5zcGVjdChwb3N0LCAkaW5zcGVjdCk7XG4gIEBpbmNsdWRlIG1hcmdpbi1vdXRwdXQobnVsbCwgJHdpZHRoLCAkZmxvdyk7XG59XG5cbi8vIFB1c2hcbi8vIC0tLS1cbi8vIFNpbXBsZSBzeW5vbnltbiBmb3IgcHJlLlxuLy8gLSAkc3BhbiAgOiA8c3Bhbj5cbkBtaXhpbiBwdXNoKFxuICAkc3BhblxuKSB7XG4gIEBpbmNsdWRlIHByZSgkc3Bhbik7XG59XG5cbi8vIFB1bGxcbi8vIC0tLS1cbi8vIEFkZCBuZWdhdGl2ZSBzcGFubmluZy1tYXJnaW5zIGJlZm9yZSBhbiBlbGVtZW50LlxuLy8gLSAkc3BhbiAgOiA8c3Bhbj5cbkBtaXhpbiBwdWxsKFxuICAkc3BhblxuKSB7XG4gICRpbnNwZWN0ICA6ICRzcGFuO1xuICAkc3BhbiAgICAgOiBtYXAtbWVyZ2UoKHNwcmVhZDogd2lkZSksIHBhcnNlLXNwYW4oJHNwYW4pKTtcbiAgJGZsb3cgICAgIDogc3VzeS1nZXQoZmxvdywgJHNwYW4pO1xuICAkc3BsaXQgICAgOiBpZihzdXN5LWdldChndXR0ZXItcG9zaXRpb24sICRzcGFuKSA9PSBzcGxpdCwgdHJ1ZSwgZmFsc2UpO1xuICAkd2lkdGggICAgOiBpZigkc3BsaXQsIDAgLSBzcGFuKCRzcGFuKSArIGd1dHRlcigkc3BhbiksIDAgLSBzcGFuKCRzcGFuKSk7XG5cbiAgQGluY2x1ZGUgc3VzeS1pbnNwZWN0KHB1bGwsICRpbnNwZWN0KTtcbiAgQGluY2x1ZGUgbWFyZ2luLW91dHB1dCgkd2lkdGgsIG51bGwsICRmbG93KTtcbn1cblxuLy8gU3F1aXNoXG4vLyAtLS0tLS1cbi8vIEFkZCBzcGFubmluZy1tYXJnaW5zIGJlZm9yZSBhbmQgYWZ0ZXIgYW4gZWxlbWVudC5cbi8vIC0gJHByZSAgICAgOiA8c3Bhbj5cbi8vIC0gWyRwb3N0XSAgOiA8c3Bhbj5cbkBtaXhpbiBzcXVpc2goXG4gICRwcmUsXG4gICRwb3N0OiBmYWxzZVxuKSB7XG4gICRpbnNwZWN0ICAgICAgOiAkcHJlLCAkcG9zdDtcbiAgJHByZSAgICAgICAgICA6IG1hcC1tZXJnZSgoc3ByZWFkOiB3aWRlKSwgcGFyc2Utc3BhbigkcHJlKSk7XG5cbiAgQGlmICRwb3N0IHtcbiAgICAkcG9zdDogbWFwLW1lcmdlKChzcHJlYWQ6IHdpZGUpLCBwYXJzZS1zcGFuKCRwb3N0KSk7XG4gIH0gQGVsc2Uge1xuICAgICRzcGFuOiBzdXN5LWdldChzcGFuLCAkcHJlKTtcbiAgICBAaWYgbGVuZ3RoKCRzcGFuKSA+IDEge1xuICAgICAgJHByZTogbWFwLW1lcmdlKCRwcmUsIChzcGFuOiBudGgoJHNwYW4sIDEpKSk7XG4gICAgICAkcG9zdDogbWFwLW1lcmdlKCRwcmUsIChzcGFuOiBudGgoJHNwYW4sIDIpKSk7XG4gICAgfSBAZWxzZSB7XG4gICAgICAkcG9zdDogJHByZTtcbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSBzdXN5LWluc3BlY3Qoc3F1aXNoLCAkaW5zcGVjdC4uLik7XG4gIEBpbmNsdWRlIHByZSgkcHJlKTtcbiAgQGluY2x1ZGUgcG9zdCgkcG9zdCk7XG59XG4iLCIvLyBHYWxsZXJ5IFN5bnRheFxuLy8gPT09PT09PT09PT09PT1cblxuLy8gR2FsbGVyeVxuLy8gLS0tLS0tLVxuLy8gQ3JlYXRlIGFuIGlzb2xhdGVkIGdhbGxlcnlcbi8vIC0gJHNwYW4gICAgICAgIDogPHNwYW4+XG4vLyAtIFskc2VsZWN0b3JdICA6IGNoaWxkIHwgb2YtdHlwZVxuQG1peGluIGdhbGxlcnkoXG4gICRzcGFuLFxuICAkc2VsZWN0b3I6IGNoaWxkXG4pIHtcbiAgJGluc3BlY3QgICAgOiAkc3BhbjtcbiAgJHNwYW4gICAgICAgOiBwYXJzZS1zcGFuKCRzcGFuKTtcbiAgJHNwYW4gICAgICAgOiBtYXAtbWVyZ2UoJHNwYW4sIChsb2NhdGlvbjogMSkpO1xuXG4gICRuICAgICAgICAgICAgOiBzdXN5LWdldChzcGFuLCAkc3Bhbik7XG4gICRjb2x1bW5zICAgICAgOiBzdXN5LWdldChjb2x1bW5zLCAkc3Bhbik7XG4gICRjb250ZXh0ICAgICAgOiBzdXN5LWNvdW50KCRjb2x1bW5zKTtcbiAgJGZsb3cgICAgICAgICA6IHN1c3ktZ2V0KGZsb3csICRzcGFuKTtcblxuICAkaW5zaWRlICAgICAgIDogaXMtaW5zaWRlKCRzcGFuKTtcbiAgJGZyb20gICAgICAgICA6IGZyb20oJGZsb3cpO1xuICAkbGluZSAgICAgICAgIDogZmxvb3IoJGNvbnRleHQgLyAkbik7XG4gICRzeW1tZXRyaWNhbCAgOiBpcy1zeW1tZXRyaWNhbCgkY29sdW1ucyk7XG5cbiAgJG91dHB1dDogKFxuICAgIHdpZHRoICAgICAgICAgICAgIDogbnVsbCxcbiAgICBmbG9hdCAgICAgICAgICAgICA6IGZyb20sXG4gICAgbWFyZ2luLWJlZm9yZSAgICAgOiBudWxsLFxuICAgIG1hcmdpbi1hZnRlciAgICAgIDogbnVsbCxcbiAgICBwYWRkaW5nLWJlZm9yZSAgICA6IG51bGwsXG4gICAgcGFkZGluZy1hZnRlciAgICAgOiBudWxsLFxuICAgIGZsb3cgICAgICAgICAgICAgIDogJGZsb3csXG4gICk7XG5cbiAgQGlmICRpbnNpZGUge1xuICAgICRndXR0ZXJzOiBnZXQtZ3V0dGVycygkc3Bhbik7XG4gICAgJG91dHB1dDogbWFwLW1lcmdlKCRvdXRwdXQsIChcbiAgICAgIHBhZGRpbmctYmVmb3JlOiBtYXAtZ2V0KCRndXR0ZXJzLCBiZWZvcmUpLFxuICAgICAgcGFkZGluZy1hZnRlcjogbWFwLWdldCgkZ3V0dGVycywgYWZ0ZXIpLFxuICAgICkpO1xuICB9XG5cbiAgQGlmICRzeW1tZXRyaWNhbCB7XG4gICAgJG91dHB1dDogbWFwLW1lcmdlKCRvdXRwdXQsICh3aWR0aDogZ2V0LXNwYW4td2lkdGgoJHNwYW4pKSk7XG4gIH1cblxuICAkYm94ICAgICAgICAgIDogc3VzeS1nZXQoYm94LXNpemluZywgJHNwYW4pO1xuICAkZ2xvYmFsLWJveCAgIDogaWYoc3VzeS1nZXQoZ2xvYmFsLWJveC1zaXppbmcpID09ICdib3JkZXItYm94JywgdHJ1ZSwgZmFsc2UpO1xuXG4gIEBpbmNsdWRlIHN1c3ktaW5zcGVjdChnYWxsZXJ5LCAkaW5zcGVjdCk7XG5cbiAgLy8gQ29sbGVjdGl2ZSBPdXRwdXRcbiAgQGlmICRib3ggPT0gYm9yZGVyLWJveCBvciAoJGluc2lkZSBhbmQgbm90KCRib3gpIGFuZCBub3QoJGdsb2JhbC1ib3gpKSB7XG4gICAgQGluY2x1ZGUgb3V0cHV0KChib3gtc2l6aW5nOiBib3JkZXItYm94KSk7XG4gIH0gQGVsc2UgaWYgJGJveCA9PSBjb250ZW50LWJveCB7XG4gICAgQGluY2x1ZGUgb3V0cHV0KChib3gtc2l6aW5nOiBjb250ZW50LWJveCkpO1xuICB9XG5cbiAgQGluY2x1ZGUgZmxvYXQtc3Bhbi1vdXRwdXQoJG91dHB1dC4uLik7XG5cbiAgLy8gSW5kaXZpZHVhbCBMb29wXG4gIEBmb3IgJGl0ZW0gZnJvbSAxIHRocm91Z2ggJGxpbmUge1xuICAgICRudGg6ICcjeyRsaW5lfW4gKyAjeyRpdGVtfSc7XG4gICAgJjpudGgtI3skc2VsZWN0b3J9KCN7JG50aH0pIHtcbiAgICAgIC8vIEluZGl2aWR1YWwgUHJlcFxuICAgICAgJG91dHB1dDogKFxuICAgICAgICB3aWR0aCAgICAgICAgICAgICA6IGlmKCRzeW1tZXRyaWNhbCwgbnVsbCwgZ2V0LXNwYW4td2lkdGgoJHNwYW4pKSxcbiAgICAgICAgZmxvYXQgICAgICAgICAgICAgOiBudWxsLFxuICAgICAgICBtYXJnaW4tYmVmb3JlICAgICA6IGdldC1pc29sYXRpb24oJHNwYW4pLFxuICAgICAgICBtYXJnaW4tYWZ0ZXIgICAgICA6IC0xMDAlLFxuICAgICAgICBwYWRkaW5nLWJlZm9yZSAgICA6IG51bGwsXG4gICAgICAgIHBhZGRpbmctYWZ0ZXIgICAgIDogbnVsbCxcbiAgICAgICAgZmxvdyAgICAgICAgICAgICAgOiAkZmxvdyxcbiAgICAgICk7XG5cbiAgICAgIC8vIEluZGl2aWR1YWwgT3V0cHV0XG4gICAgICBAaW5jbHVkZSBmbG9hdC1zcGFuLW91dHB1dCgkb3V0cHV0Li4uKTtcblxuICAgICAgQGlmIGdldC1lZGdlKCRzcGFuKSA9PSBmaXJzdCB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrO1xuICAgICAgICBAaW5jbHVkZSBmaXJzdCgkc3Bhbik7XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgQGluY2x1ZGUgbm9icmVhaztcbiAgICAgIH1cblxuICAgICAgLy8gSW5kaXZpZHVhbCBMb2NhdGlvbiBJbmNyZW1lbnRcbiAgICAgICRsb2NhdGlvbjogZ2V0LWxvY2F0aW9uKCRzcGFuKSArICRuO1xuICAgICAgJGxvY2F0aW9uOiBpZigkbG9jYXRpb24gPiAkY29udGV4dCwgMSwgJGxvY2F0aW9uKTtcbiAgICAgICRzcGFuOiBtYXAtbWVyZ2UoJHNwYW4sIChsb2NhdGlvbjogJGxvY2F0aW9uKSk7XG4gICAgfVxuICB9XG59XG4iLCIvLyBSb3cgU3RhcnQgJiBFbmRcbi8vID09PT09PT09PT09PT09PVxuXG4vLyBCcmVha1xuLy8gLS0tLS1cbi8vIEFwcGx5IHRvIGFueSBlbGVtZW50IHRoYXQgc2hvdWxkIGZvcmNlIGEgbGluZSBicmVhay5cbkBtaXhpbiBicmVhayB7XG4gIEBpbmNsdWRlIG91dHB1dCgoY2xlYXI6IGJvdGgpKTtcbn1cblxuXG4vLyBOb0JyZWFrXG4vLyAtLS0tLS0tXG4vLyBDYW5jZWwgdGhlIGJyZWFrKCkgZWZmZWN0LCBlLmcuIHdoZW4gdXNpbmcgbWVkaWEgcXVlcmllcy5cbkBtaXhpbiBub2JyZWFrIHtcbiAgQGluY2x1ZGUgb3V0cHV0KChjbGVhcjogbm9uZSkpO1xufVxuXG5cbi8vIEZ1bGxcbi8vIC0tLS1cbi8vIC0gWyRjb250ZXh0XTogPGxheW91dCBzaG9ydGhhbmQ+XG5AbWl4aW4gZnVsbChcbiAgJGNvbnRleHQ6ICRzdXN5XG4pIHtcbiAgJGluc3BlY3QgOiAkY29udGV4dDtcbiAgQGluY2x1ZGUgc3VzeS1pbnNwZWN0KGZ1bGwsICRpbnNwZWN0KTtcbiAgQGluY2x1ZGUgc3BhbihmdWxsIG9mIHBhcnNlLWdyaWQoJGNvbnRleHQpIGJyZWFrKTtcbn1cblxuXG4vLyBGaXJzdFxuLy8gLS0tLS1cbi8vIC0gWyRjb250ZXh0XTogPHNldHRpbmdzPlxuQG1peGluIGZpcnN0KFxuICAkY29udGV4dDogJHN1c3lcbikge1xuICAkaW5zcGVjdCAgOiAkY29udGV4dDtcbiAgJGNvbnRleHQgIDogcGFyc2UtZ3JpZCgkY29udGV4dCk7XG4gICRmbG93ICAgICA6IHN1c3ktZ2V0KGZsb3csICRjb250ZXh0KTtcblxuICBAaW5jbHVkZSBzdXN5LWluc3BlY3QoZmlyc3QsICRpbnNwZWN0KTtcbiAgQGlmIG5vdChpcy1zcGxpdCgkY29udGV4dCkpIHtcbiAgICBAaW5jbHVkZSBmbG9hdC1maXJzdCgkZmxvdyk7XG4gIH1cbn1cblxuQG1peGluIGFscGhhKFxuICAkY29udGV4dDogJHN1c3lcbikge1xuICBAaW5jbHVkZSBmaXJzdCgkY29udGV4dCk7XG59XG5cblxuLy8gTGFzdFxuLy8gLS0tLVxuLy8gLSBbJGNvbnRleHRdOiA8c2V0dGluZ3M+XG5AbWl4aW4gbGFzdChcbiAgJGNvbnRleHQ6ICRzdXN5XG4pIHtcbiAgJGluc3BlY3QgIDogJGNvbnRleHQ7XG4gICRjb250ZXh0ICA6IHBhcnNlLWdyaWQoJGNvbnRleHQpO1xuXG4gIEBpbmNsdWRlIHN1c3ktaW5zcGVjdChsYXN0LCAkaW5zcGVjdCk7XG5cbiAgJG91dHB1dDogKFxuICAgIGZsb3c6IHN1c3ktZ2V0KGZsb3csICRjb250ZXh0KSxcbiAgICBsYXN0LWZsb3c6IHN1c3ktZ2V0KGxhc3QtZmxvdywgJGNvbnRleHQpLFxuICAgIG1hcmdpbjogaWYoaXMtc3BsaXQoJGNvbnRleHQpLCBudWxsLCAwKSxcbiAgKTtcblxuICBAaW5jbHVkZSBmbG9hdC1sYXN0KCRvdXRwdXQuLi4pO1xufVxuXG5AbWl4aW4gb21lZ2EoXG4gICRjb250ZXh0OiAkc3VzeVxuKSB7XG4gIEBpbmNsdWRlIGxhc3QoJGNvbnRleHQpO1xufVxuXG5cbi8vIEdldCBFZGdlXG4vLyAtLS0tLS0tLVxuLy8gQ2FsY3VsYXRlIGVkZ2UgdmFsdWUgYmFzZWQgb24gbG9jYXRpb24sIGlmIHBvc3NpYmxlXG5AZnVuY3Rpb24gZ2V0LWVkZ2UoXG4gICRzcGFuXG4pIHtcbiAgJHNwYW4gICAgICAgOiBwYXJzZS1zcGFuKCRzcGFuKTtcbiAgJGVkZ2UgICAgICAgOiBzdXN5LWdldChlZGdlLCAkc3Bhbik7XG5cbiAgQGlmIG5vdCgkZWRnZSkge1xuICAgICRjb3VudDogc3VzeS1jb3VudChzdXN5LWdldChjb2x1bW5zLCAkc3BhbikpO1xuICAgICRsb2NhdGlvbjogc3VzeS1nZXQobG9jYXRpb24sICRzcGFuKTtcbiAgICAkbjogc3VzeS1nZXQoc3BhbiwgJHNwYW4pO1xuXG4gICAgJG51bWJlcjogaWYodHlwZS1vZigkbG9jYXRpb24pID09IG51bWJlciwgdHJ1ZSwgZmFsc2UpO1xuICAgICRpbmRleDogaWYoJG51bWJlciBhbmQgdW5pdGxlc3MoJGxvY2F0aW9uKSwgdHJ1ZSwgZmFsc2UpO1xuXG4gICAgQGlmICRuID09ICRjb3VudCB7XG4gICAgICAkZWRnZTogZnVsbDtcbiAgICB9IEBlbHNlIGlmICRsb2NhdGlvbiBhbmQgJG4gYW5kICRpbmRleCB7XG4gICAgICBAaWYgJGxvY2F0aW9uID09IDEge1xuICAgICAgICAkZWRnZTogaWYoJG4gPT0gJGNvdW50LCBmdWxsLCBmaXJzdCk7XG4gICAgICB9IEBlbHNlIGlmICRsb2NhdGlvbiArICRuIC0gMSA9PSAkY291bnQge1xuICAgICAgICAkZWRnZTogbGFzdDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAaWYgJGVkZ2UgPT0gYWxwaGEgb3IgJGVkZ2UgPT0gb21lZ2Ege1xuICAgICRlZGdlOiBpZigkZWRnZSA9PSBhbHBoYSwgZmlyc3QsIGxhc3QpO1xuICB9XG5cbiAgQHJldHVybiAkZWRnZTtcbn1cblxuXG4vLyBHZXQgTG9jYXRpb25cbi8vIC0tLS0tLS0tLS0tLVxuLy8gQ2FsY3VsYXRlIGxvY2F0aW9uIHZhbHVlIGJhc2VkIG9uIGVkZ2UsIGlmIHBvc3NpYmxlXG5AZnVuY3Rpb24gZ2V0LWxvY2F0aW9uKFxuICAkc3BhblxuKSB7XG4gICRzcGFuICAgICAgIDogcGFyc2Utc3Bhbigkc3Bhbik7XG4gICRsb2NhdGlvbiAgIDogc3VzeS1nZXQobG9jYXRpb24sICRzcGFuKTtcbiAgJGVkZ2UgICAgICAgOiBnZXQtZWRnZSgkc3Bhbik7XG4gICRuICAgICAgICAgIDogc3VzeS1nZXQoc3BhbiwgJHNwYW4pO1xuXG4gIEBpZiAkZWRnZSBhbmQgbm90KCRsb2NhdGlvbikgYW5kIHR5cGUtb2YoJG4pID09IG51bWJlciBhbmQgdW5pdGxlc3MoJG4pIHtcbiAgICBAaWYgJGVkZ2UgPT0gZmlyc3Qge1xuICAgICAgJGxvY2F0aW9uOiAxO1xuICAgIH0gQGVsc2UgaWYgJGVkZ2UgPT0gbGFzdCB7XG4gICAgICAkbG9jYXRpb246IHN1c3ktY291bnQoc3VzeS1nZXQoY29sdW1ucywgJHNwYW4pKSAtICRuICsgMTtcbiAgICB9XG4gIH1cblxuICBAcmV0dXJuICRsb2NhdGlvblxufVxuIiwiLy8gRmxvYXQgRW5kcyBBUElcbi8vID09PT09PT09PT09PT09XG5cbi8vIFN1c3kgRW5kIERlZmF1bHRzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLVxuLy8gLSBQUklWQVRFXG5AaW5jbHVkZSBzdXN5LWRlZmF1bHRzKChcbiAgbGFzdC1mbG93OiB0byxcbikpO1xuXG4vLyBGbG9hdCBMYXN0XG4vLyAtLS0tLS0tLS0tXG4vLyAtIFskZmxvd10gIDogbHRyIHwgcnRsXG5AbWl4aW4gZmxvYXQtbGFzdChcbiAgJGZsb3c6IG1hcC1nZXQoJHN1c3ktZGVmYXVsdHMsIGZsb3cpLFxuICAkbGFzdC1mbG93OiBtYXAtZ2V0KCRzdXN5LWRlZmF1bHRzLCBsYXN0LWZsb3cpLFxuICAkbWFyZ2luOiAwXG4pIHtcbiAgJHRvOiB0bygkZmxvdyk7XG5cbiAgJG91dHB1dDogKFxuICAgIGZsb2F0OiBpZigkbGFzdC1mbG93ID09IHRvLCAkdG8sIG51bGwpLFxuICAgIG1hcmdpbi0jeyR0b306ICRtYXJnaW4sXG4gICk7XG5cbiAgQGluY2x1ZGUgb3V0cHV0KCRvdXRwdXQpO1xufVxuXG4vLyBGbG9hdCBGaXJzdFxuLy8gLS0tLS0tLS0tLS1cbi8vIC0gWyRmbG93XSAgOiBsdHIgfCBydGxcbkBtaXhpbiBmbG9hdC1maXJzdChcbiAgJGZsb3c6IG1hcC1nZXQoJHN1c3ktZGVmYXVsdHMsIGZsb3cpXG4pIHtcbiAgJG91dHB1dDogKFxuICAgIG1hcmdpbi0je2Zyb20oJGZsb3cpfTogMCxcbiAgKTtcblxuICBAaW5jbHVkZSBvdXRwdXQoJG91dHB1dCk7XG59XG4iLCJib2R5LmNhcnQge1xuICAgIC5lZGl0Y2FydCB7XG4gICAgICAgIEBpbmNsdWRlIGFkYXB0aXZlLWNvbnRhaW5lcjtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAgIFtpZD1cImNvbnRpbnVlU2hvcHBpbmdcIl0ge1xuICAgICAgICAgICAgQGluY2x1ZGUgYnRuO1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMzVweDtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDM1cHg7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLy8gVGhpcyB0YXJnZXRzIHRoZSBcImNoZWNrb3V0XCIgYnV0dG9uLlxuICAgICAgICBbaWQ9XCJjb250aW51ZVNob3BwaW5nXCJdICsgYSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuaXRlbXMge1xuICAgICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgfVxuICAgICAgICAuaXRlbSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAyNXB4IDBweDtcbiAgICAgICAgICAgIEBpbmNsdWRlIGFkZC1ib3JkZXItYm90dG9tO1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDIwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAubW9uaWtlciB7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMjgwcHg7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgaDMge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIC5wYXJ0Lm51bWJlciB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLnByaWNlIHtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiAzNDBweDtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDYwcHg7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAubXVsdGlwbHkuc2lnbiB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogNDEwcHhcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBmaWVsZHNldCB7XG4gICAgICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC1tb2JpbGUtb25seSkge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAxNXB4IDA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGlucHV0W25hbWU9XCJxdWFudFwiXSB7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLW1vYmlsZS1vbmx5KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAtNDBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogOTBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiA1MHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgYnV0dG9uW3R5cGU9XCJzdWJtaXRcIl0ge1xuICAgICAgICAgICAgICAgICAgICBib3JkZXI6IG1lZGl1bSBub25lO1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAxNXB4IDBweDtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtbW9iaWxlLW9ubHkpIHtcblxuICAgICAgICAgICAgICAgICAgICAgICBmbG9hdDogcmlnaHQ7XG5cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDBweCAwcHg7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBidXR0b25bdHlwZT1cInN1Ym1pdFwiXTpob3ZlcixcbiAgICAgICAgICAgICAgICBidXR0b25bdHlwZT1cInN1Ym1pdFwiXTphY3RpdmUge1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgZm9ybS51cGRhdGUucXVhbnRpdHkge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLW1vYmlsZS1vbmx5KSB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IC0yMHB4O1xuICAgICAgICAgICAgICAgICAgICBpbnB1dFt0eXBlPVwidGV4dFwiXSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAtMjBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IDEwMHB4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDM4MHB4O1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMjAwcHg7XG4gICAgICAgICAgICAgICAgICAgIGlucHV0W3R5cGU9XCJ0ZXh0XCJdIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiA0NXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogLTVweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogMjBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIGJ1dHRvbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC1tb2JpbGUtb25seSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IC0yMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiA1cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBmb3JtLnJlbW92ZSB7XG4gICAgICAgICAgICAgICAgYnV0dG9uIHtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtbW9iaWxlLW9ubHkpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IC01MHB4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDU1MHB4O1xuICAgICAgICAgICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb250ZW50OiBcInxcIjtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IC05cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAubGluZS50b3RhbCB7XG4gICAgICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICAgICAgICAgIGhlaWdodDogMjBweDtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC1tb2JpbGUtb25seSkge1xuXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IC0xMTJweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLmRlY2lzaW9uIHtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiA0MHB4O1xuICAgICAgICAgICAgXG4gICAgICAgICAgICAuY2hlY2tvdXQge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDVweCAwO1xuICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDEwcHggMHB4O1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBidG47XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAucmVtb3ZlLmFsbCB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuY2FsY3VsYXRlLmJveCB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuYm9keS5jaGVja291dCB7XG4gICAgaDEsXG4gICAgaDIge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgfVxuICAgIGg2IHtcbiAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgbWFyZ2luOiAxNXB4IDA7XG4gICAgfVxuICAgIGZpZWxkc2V0IHtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgIH1cbiAgICBociB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICAgIC5lbmMtc3RvcmUge1xuICAgICAgICBAaW5jbHVkZSBhZGFwdGl2ZS1jb250YWluZXI7XG4gICAgICAgIC5yb3cge1xuICAgICAgICAgICAgcGFkZGluZzogOXB4IDA7XG4gICAgICAgICAgICBsYWJlbCxcbiAgICAgICAgICAgIGlucHV0IHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGxhYmVsOm5vdCguZXJyb3IpIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogOXB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaW5wdXQ6bm90KFt0eXBlPVwicmFkaW9cIl0pICAge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC8vIHNwZWNpYWwgc3R5bGVzIGZvciB0aGUgYWRkcmVzc1xuICAgICAgICAgICAgW2lkPVwic3RyZWV0MVwiXSxcbiAgICAgICAgICAgIFtpZD1cInN0cmVldDJcIl0sXG4gICAgICAgICAgICBbaWQ9XCJiaWxsaW5nX2FkZHJlc3MxXCJdLFxuICAgICAgICAgICAgW2lkPVwiYmlsbGluZ19hZGRyZXNzMlwiXSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHNlbGVjdCB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDE4MHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGJ1dHRvbi5jb250aW51ZSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA0NXB4O1xuICAgICAgICB9XG4gICAgICAgIFtpZD1cImNoZWNrb3V0U3RlcDFcIl0ge1xuICAgICAgICAgICAgYnIge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAubm90aWNlIHtcbiAgICAgICAgICAgICAgICAvLyBhZGRzIHRoZSBzYW1lIHBhZGRpbmcgdGhhdCB0aGUgZmllbGRzZXQgaGFzXG4gICAgICAgICAgICAgICAgcGFkZGluZzogLjM1ZW0gLjYyNWVtIC43NWVtO1xuICAgICAgICAgICAgICAgIHA6bGFzdC1vZi10eXBlIHtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAubGVmdCB7XG4gICAgICAgICAgICAgICAgLy8gVGFyZ2V0cyB0aGUgXCJzaGlwcGluZyBhZGRyZXNzXCJcbiAgICAgICAgICAgICAgICBoMiB7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGFkZC1ib3JkZXItYm90dG9tO1xuXG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBzcGFuKGZpcnN0IDYpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5yaWdodCB7XG4gICAgICAgICAgICAgICAgaDIge1xuICAgICAgICAgICAgICAgICAgICBmb250LWZhbWlseTogJGZvbnQtc3RhY2stZGVmYXVsdDtcbiAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMztcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogLTMwcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogMTQ0cHg7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHNwYW4obGFzdCA2KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBmaWVsZHNldCB7XG4gICAgICAgICAgICAgICAgLmNvbnRpbnVlIHtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiA2MDBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtMTIwcHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgW2lkPVwiY2hlY2tvdXRTdGVwMlwiXSB7XG4gICAgICAgICAgICBiciB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGgyIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBhZGQtYm9yZGVyLWJvdHRvbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5zaGlwcGluZy5tZXRob2Qge1xuICAgICAgICAgICAgICAgIHdpZHRoOiBpbmhlcml0IWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAubm90aWNlIHtcbiAgICAgICAgICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE2cHghaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHVsICB7XG4gICAgICAgICAgICAgICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNDVweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuaW50ZXJuYXRpb25hbC10YXgtbm90aWNlIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyNXB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgYnV0dG9uLmNvbnRpbnVlIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDIxNXB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGJ1dHRvbltkaXNhYmxlZD1cIlwiXSB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJGNvbG9yLXRleHQtZXh0cmFkaW07XG4gICAgICAgICAgICAgICAgJjpob3ZlcixcbiAgICAgICAgICAgICAgICAmOmFjdGl2ZSB7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICRjb2xvci10ZXh0LWV4dHJhZGltO1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGNvbG9yLXRleHQtZGVmYXVsdDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgW2lkPVwiY2hlY2tvdXRTdGVwM1wiXSB7XG4gICAgICAgICAgICBoMiB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYWRkLWJvcmRlci1ib3R0b207XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAubGVmdCB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHNwYW4oZmlyc3QgNik7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiA0N3B4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5yaWdodCB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHNwYW4obGFzdCA2KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBbaWQ9XCJjb3B5QWRkcmVzc1wiXSB7XG4gICAgICAgICAgICAgICAgZmxvYXQ6IGluaGVyaXQhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IGluaGVyaXQhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogaW5oZXJpdCFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjVweCFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IGluaGVyaXQhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMzNweCFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLnJvdy5jcmVkaXQuY2FyZCB7XG4gICAgICAgICAgICAgICAgdWwge1xuICAgICAgICAgICAgICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDVweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgbGFiZWwsXG4gICAgICAgICAgICAgICAgaW5wdXQge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGlucHV0IHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMTJweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAubm90aWNlIHtcbiAgICAgICAgICAgICAgICAvLyBhZGRzIHRoZSBzYW1lIHBhZGRpbmcgdGhhdCB0aGUgZmllbGRzZXQgaGFzXG4gICAgICAgICAgICAgICAgcGFkZGluZzogLjM1ZW0gLjYyNWVtIC43NWVtO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgYnV0dG9uLmNvbnRpbnVlIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMzU1cHg7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtMTQ2cHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIFtpZD1cImNoZWNrb3V0U3RlcDRcIl0ge1xuICAgICAgICAgICAgaDIge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGFkZC1ib3JkZXItYm90dG9tO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmxlZnQuY29sdW1uIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgc3BhbihmaXJzdCA2KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAucmlnaHQuY29sdW1uIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgc3BhbihsYXN0IDYpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5vcmRlci5zdW1tYXJ5IHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBzcGFuKDEyKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5pdGVtcyB7XG4gICAgICAgICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuaXRlbSB7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA3NnB4O1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGFkZC1ib3JkZXItYm90dG9tO1xuICAgICAgICAgICAgICAgIHVsLmRldGFpbHMge1xuICAgICAgICAgICAgICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgICAgIGxpOm50aC1jaGlsZCgxKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxMHB4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIGxpOm50aC1jaGlsZCgxKSxcbiAgICAgICAgICAgICAgICAgICAgbGk6bnRoLWNoaWxkKDIpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIGxpOm50aC1jaGlsZCgzKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICB1bC50b3RhbHMge1xuICAgICAgICAgICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiBub25lO1xuICAgICAgICAgICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGJ1dHRvbi5jb250aW51ZSB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDE0MHB4O1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMjI1cHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIC56aXA0LWxvb2t1cC1saW5rIHtcbiAgICAgICAgbWFyZ2luLXRvcDogOXB4O1xuICAgICAgICBAaW5jbHVkZSBidG47XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIH1cbiAgICBsYWJlbC5lcnJvciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICAgICAgICBtYXJnaW4tdG9wOiAtMjJweDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgICAgICBmb250LXNpemU6IDEzcHg7XG4gICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAgICAgICBjb2xvcjogcmdiKDIwOSwgMTIxLCAwKTtcbiAgICAgICAgcGFkZGluZzogM3B4IDVweCAxcHg7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICAgIH1cblxuICAgIC5lcnJvcltmb3I9XCJzdHJlZXQxXCJdLFxuICAgIC5lcnJvcltmb3I9XCJiaWxsaW5nX2FkZHJlc3MxXCJdIHtcbiAgICAgICAgbWFyZ2luLXRvcDogLTM3cHg7XG4gICAgfVxuXG4gICAgLmVycm9yW2Zvcj1cInN0YXRlcHJvdlwiXSxcbiAgICAuZXJyb3JbZm9yPVwiYmlsbGluZ19zdGF0ZXByb3ZcIl0ge1xuICAgICAgICBtYXJnaW4tdG9wOiAtNDlweDtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IC0yNXB4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgbGFiZWwuZXJyb3JbZm9yPVwiYmlsbGluZ19hZGRyZXNzMVwiXSB7XG4gICAgICAgIG1hcmdpbi10b3A6IC00MHB4O1xuICAgIH1cblxuICAgIGxhYmVsLmVycm9yW2Zvcj1cImJpbGxpbmdfc3RhdGVwcm92XCJdLFxuICAgIGxhYmVsLmVycm9yW2Zvcj1cImJpbGxpbmdfY291bnRyeVwiXSB7XG4gICAgICAgIG1hcmdpbi10b3A6IC00OXB4O1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5jb3N0bm9uZGlzY291bnQge1xuICAgICAgICBjb2xvcjogYnJvd247XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbGluZS10aHJvdWdoO1xuICAgIH1cbiAgICAvLyBXb3JrIGFyb3VuZCByZWR1bmRhbnQgYnV0dG9uID4gc3Bhbi5idXR0b24gbWFya3VwXG4gICAgOm5vdChidXR0b24pID4gc3Bhbi5idXR0b24ge1xuICAgICAgICBAaW5jbHVkZSBidG47XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIH1cbn1cbiIsIkBtaXhpbiBhZGQtYm9yZGVyLWJvdHRvbSB7XG4gICAgYm9yZGVyLWJvdHRvbTogc29saWQgMXB4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTtcbn1cbiIsImJvZHkuYWJvdXQge1xuICAgIC8vIHRoaXMgb3ZlcnJpZGVzIHRoZSBvcmFnbmUgYmFja2dyb3VuZCBmb3IgdGhlIHJlc3Qgb2YgdGhlIHNpdGUuXG4gICAgYmFja2dyb3VuZDogIzUzOTNkMDtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuXG4gICAgLy8gQ3VzdG9tIGJyZWFrcG9pbnRzXG4gICAgJGJwLW1pZC10YWJsZXQ6IDU5OXB4OyAvLyBvbmUgcGl4ZWwgc2h5IG9mIGluaXRpYWwgaW1hZ2Ugc2l6ZVxuICAgICRicC1yZWFsbHktYmlnOiAxNjk5cHg7IC8vIG9uZSBwaXhlbCBzaHkgb2YgbGFzdCBpbWFnZSBzaXplIGJlZm9yZSBnb2luZyB0byBhY3R1YWwgc2l6ZS5cbiAgICAkYnAtZGVza3RvcC1vbmx5OiAxMjAwcHg7XG4gICAgLy8gU2V0IGEgY3VzdG9tIGhlYWRlciBjb2xvciAoYmx1ZSkgc2luY2Ugb3JhbmdlIHdvdWxkIGxvb2sgb2RkIGhlcmUuXG4gICAgaGVhZGVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSg4MywgMTQ3LCAyMDgsIDAuMCk7XG4gICAgICAgICYubWFpbi1uYXYtc2Nyb2xsZWQge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSg4MywgMTQ3LCAyMDgsIDAuOSk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgbWFpbiB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoODMsIDE0NywgMjA4LCAuOSk7XG4gICAgICAgIGJhY2tncm91bmQ6XG4gICAgICAgICAgICBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCByZ2JhKDIzLCAyMywgMjMsIDAuMCkgMzIwcHgsIHJnYmEoMjMsIDIzLCAyMywgMS4wKSAzNzBweCksXG4gICAgICAgICAgICB1cmwoXCIuLi9pbWFnZXMvYWJvdXQtYmFja2dyb3VuZC5qcGdcIik7XG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQsIG5vLXJlcGVhdDtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCUgMCUsIDUwJSAwJTtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiAxMDAlIDEwMCUsIDU5OXB4IDM5OXB4O1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC1taWQtdGFibGV0KSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOlxuICAgICAgICAgICAgICAgIGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sIHJnYmEoMjMsIDIzLCAyMywgMC4wKSA0MDBweCwgcmdiYSgyMywgMjMsIDIzLCAxLjApIDQ1MHB4KSxcbiAgICAgICAgICAgICAgICB1cmwoXCIuLi9pbWFnZXMvYWJvdXQtYmFja2dyb3VuZC5qcGdcIik7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0LCBuby1yZXBlYXQ7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAxMDAlIDEwMCUsIDUwJSAwJTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJSAxMDAlLCA3NjhweCA1MTFweDtcbiAgICAgICAgfVxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6XG4gICAgICAgICAgICAgICAgbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgcmdiYSgyMywgMjMsIDIzLCAwLjApIDUwMHB4LCByZ2JhKDIzLCAyMywgMjMsIDEuMCkgNjAwcHgpLFxuICAgICAgICAgICAgICAgIHVybChcIi4uL2ltYWdlcy9hYm91dC1iYWNrZ3JvdW5kLmpwZ1wiKTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQsIG5vLXJlcGVhdDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDEwMCUgMTAwJSwgNTAlIC0xMjVweDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJSAxMDAlLCAxMjAwcHggNzk4cHg7XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtZGVza3RvcC1vbmx5KSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOlxuICAgICAgICAgICAgICAgIGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sIHJnYmEoMjMsIDIzLCAyMywgMCkgNTAzcHgsIHJnYmEoMjMsIDIzLCAyMywgMS4wKSA2MzBweCksXG4gICAgICAgICAgICAgICAgdXJsKFwiLi4vaW1hZ2VzL2Fib3V0LWJhY2tncm91bmQuanBnXCIpO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdCwgbm8tcmVwZWF0O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMTAwJSAxMDAlLCA1MCUgLTIyNXB4O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAxMDAlIDEwMCUsIDE3MDBweCAxMTMycHg7XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtcmVhbGx5LWJpZykge1xuICAgICAgICAgICAgYmFja2dyb3VuZDpcbiAgICAgICAgICAgICAgICBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCByZ2JhKDIzLCAyMywgMjMsIDAuMCkgNjc1cHgsIHJnYmEoMjMsIDIzLCAyMywgMS4wKSA4MDBweCksXG4gICAgICAgICAgICAgICAgdXJsKFwiLi4vaW1hZ2VzL2Fib3V0LWJhY2tncm91bmQuanBnXCIpO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDgzLCAxNDcsIDIwOCk7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0LCBuby1yZXBlYXQ7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAxMDAlIDEwMCUsIDUwJSAtNDI1cHgsIDEwMCUgMTAwJTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJSAxMDAlLCAyNDAwcHggMTUzMHB4LCAxMDAlIDEwMCU7XG4gICAgICAgIH1cblxuICAgICAgICAuY29udGVudCB7XG4gICAgICAgICAgICBAaW5jbHVkZSBhZGFwdGl2ZS1jb250YWluZXI7XG4gICAgICAgIH1cblxuICAgICAgICBoMSB7XG4gICAgICAgICAgICAvLyBvbiBtb2JpbGUgb25seSB0aGUgaDEgbmVlZHMgdG8gYmUgcHVsbGVkIHVwIGp1c3QgYSBsaXR0bGUuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC1tb2JpbGUtb25seSkge1xuICAgICAgICAgICAgICAgIG1hcmdpbjogLjNlbSAwIC42N2VtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHNlY3Rpb24uaW50cm8ge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICB9XG5cbiAgICB9XG4gICAgLmFib3V0LWNvcHkge1xuICAgICAgICBtYXJnaW4tdG9wOiAyNTBweDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNDVweDtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC1taWQtdGFibGV0KSB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAzMDBweDtcbiAgICAgICAgICAgIEBpbmNsdWRlIHNwYW4oMTEgb2YgMTIpO1xuICAgICAgICAgICAgQGluY2x1ZGUgcHVzaCgwLjUpO1xuICAgICAgICB9XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogNDUwcHg7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC1yZWFsbHktYmlnKSB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiA0NTBweDtcbiAgICAgICAgfVxuICAgICAgICBwLFxuICAgICAgICBhIHtcbiAgICAgICAgICAgIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLy8gV2UncmUgYWJsZSB0byB1c2UgdGhlIGJhY2tncm91bmQgY29sb3IgZnJvbSB0aGUgbWFpbiBwYWdlIGZvciB0aGlzIGluc3RlYWQuXG4gICAgLy8gVGhlcmUgaXMgYWxzbyBhIGJvcmRlciBhZGRlZCB0byBib290XG4gICAgZm9vdGVyIHtcbiAgICAgICAgYm9yZGVyLXRvcDogc29saWQgMXB4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xNSk7XG4gICAgfVxufVxuIiwiYm9keS5wb2xpY3kge1xuICAgIG1haW4ge1xuICAgICAgICBAaW5jbHVkZSBhZGFwdGl2ZS1jb250YWluZXI7XG5cbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNDVweDtcblxuICAgICAgICBzZWN0aW9uIHtcblxuICAgICAgICAgICAgdWwge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZsdXNoLWxpc3Q7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgaDEsXG4gICAgaDEgfiBwIHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIH1cbiAgICBoMSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDBweDtcbiAgICB9XG4gICAgaDEgfiBwe1xuICAgICAgICBtYXJnaW4tdG9wOiAwcHg7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDQ1cHg7XG4gICAgfVxuICAgIGgzIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgfiBwIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDBweDtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi8vIHRoaXMgaXMgdG8gZ28gb24gdGhlIHVsIHJ1bGVcblxuLypcbnVsIHtcbiAgICBAaW5jbHVkZSBmbHVzaC1saXN0O1xufVxuKi9cblxuQG1peGluIGZsdXNoLWxpc3Qge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIGxpIHtcbiAgICAgICAgZGlzcGxheTogdGFibGUtcm93O1xuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBjb250ZW50OiBcIuKAolwiO1xuICAgICAgICAgICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNGVtO1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiYm9keS53YXJyYW50eSxcbmJvZHkudGVybXMge1xuICAgIG1haW4ge1xuICAgICAgICBAaW5jbHVkZSBhZGFwdGl2ZS1jb250YWluZXI7XG5cbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNTBweDtcbiAgICB9XG4gICAgaDEsXG4gICAgaDF7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB9XG4gICAgaDEge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgfVxuICAgIGgzIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgfiBwIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDBweDtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsImJvZHkucHJvZHVjdHMge1xuICAgIG1haW4ge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIGgyIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICAgIH1cbiAgICAgICAgLmNvbnRlbnQge1xuICAgICAgICAgICAgQGluY2x1ZGUgYWRhcHRpdmUtY29udGFpbmVyO1xuICAgICAgICB9XG4gICAgICAgIGEuY3RhIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJ0bjtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgfVxuICAgICAgICBzZWN0aW9uLmludHJvIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDU1cHggMDtcbiAgICAgICAgICAgIHAsXG4gICAgICAgICAgICBoMiB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBzcGFuKDEyKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHNwYW4oMTApO1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBwdXNoKDEpO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA1MHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHAge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA0NXB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5pbnRyby1jb3B5IHtcbiAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxNXB4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHNlY3Rpb24uYWNjZXNzb3JpZXMge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTpcbiAgICAgICAgICAgICAgICBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCByZ2JhKDIyLDIyLDIyLDEpIDAlLCByZ2JhKDM1LCAzNSwgMzUsIDEpIDEwMCUpO1xuICAgICAgICAgICAgcGFkZGluZzogNzBweCAwO1xuICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBzcGFuKDEwKTtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBwdXNoKDEpO1xuICAgICAgICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaDIge1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuYWNjZXNzb3JpZXMtY29weSB7XG4gICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDE1cHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG4gICAgICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgc3Bhbig4KTtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgcHVzaCgwKTsgLy8gb3ZlcnJpZGVzIHB1c2goMikgZnJvbSBtb2JpbGVcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogLTQwcHg7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogMjcwcHg7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAuYWNjZXNzb3JpZXMtY29weSB7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHNwYW4oNCBuby1ndXR0ZXIpO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiA0NXB4O1xuICAgICAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDE1cHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgc2VjdGlvbi5kZWFsZXJzIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltYWdlcy9kZWFsZXJzLW1hcC5wbmdcIik7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogNTAlIDIycHg7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDY1OHB4IDI2OHB4O1xuICAgICAgICAgICAgcGFkZGluZzogNzBweCAwO1xuICAgICAgICAgICAgaGVpZ2h0OiAzMTJweDtcbiAgICAgICAgICAgIGgyIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxNXB4O1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDExNXB4O1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyNXB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDUwJSA2M3B4O1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogODc3cHggMzU3cHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA0ODNweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5jb250ZW50IHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMzAwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCJib2R5LmhlbHAge1xuICAgIGEuY3RhIHtcbiAgICAgICAgQGluY2x1ZGUgYnRuO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgfVxuICAgIHNlY3Rpb24uaGVscC1zZWN0aW9uLFxuICAgIHNlY3Rpb24uY29udGFjdC1zZWN0aW9uLFxuICAgIHNlY3Rpb24uY29udGFjdC1mb3JtIHtcbiAgICAgICAgQGluY2x1ZGUgYWRhcHRpdmUtY29udGFpbmVyO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA1NXB4O1xuICAgICAgICB9XG4gICAgfVxuICAgIHNlY3Rpb24uaGVscC1zZWN0aW9uLHtcbiAgICAgICAgZGl2IHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHNwYW4oMTIpO1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgc3Bhbig0KTtcbiAgICAgICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBzcGFuKGxhc3QgNCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGEuY3RhIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDIwNHB4O1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMTFweDtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMTBweCA1cHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIHNlY3Rpb24uY29udGFjdC1zZWN0aW9uIHtcbiAgICAgICAgZGl2IHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHNwYW4oMTIpO1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgc3Bhbig2KTtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgICAgICAgICAgICY6bnRoLWNoaWxkKDJuKzEpIHtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgc3BhbihsYXN0IDYpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICBzZWN0aW9uLmhlbHAtc2VjdGlvbixcbiAgICBzZWN0aW9uLmNvbnRhY3Qtc2VjdGlvbiB7XG4gICAgICAgIGgxLFxuICAgICAgICBoMiB7XG4gICAgICAgICAgICBAaW5jbHVkZSBzcGFuKDEyKTtcbiAgICAgICAgfVxuICAgICAgICBoMSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyNXB4O1xuICAgICAgICB9XG4gICAgfVxuICAgIHNlY3Rpb24uaGVscC1zZWN0aW9uIHtcbiAgICAgICAgZGl2IHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLW1vYmlsZS1vbmx5KSB7XG4gICAgICAgICAgICAgICAgJjpub3QoOmZpcnN0LW9mLXR5cGUpIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiA1NXB4IDAgMDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBmaWd1cmUsXG4gICAgICAgICAgICBoMyxcbiAgICAgICAgICAgIHAsXG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGgzIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogNXB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZmlndXJlIHtcbiAgICAgICAgICAgICAgICBtYXgtaGVpZ2h0OiAxNDBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgbWF4LWhlaWdodDogMTIwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgc2VjdGlvbi5jb250YWN0LXNlY3Rpb24ge1xuICAgICAgICBAaW5jbHVkZSBhZGFwdGl2ZS1jb250YWluZXI7XG4gICAgICAgIG1hcmdpbi10b3A6IDI1cHg7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDU1cHg7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogNXB4O1xuICAgICAgICB9XG4gICAgICAgIGgyIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGhlYWRpbmctbGluZXMoJGhlYWRpbmc6IDIpO1xuICAgICAgICB9XG5cbiAgICAgICAgZGl2Lm1vZGVzLW9mLWNvbnRhY3Qge1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBkaXYge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBnYWxsZXJ5KDYgb2YgMTIpO1xuICAgICAgICAgICAgICAgICAgICBoMyB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAwcHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgYWRkcmVzcyB7XG4gICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICB9XG4gICAgYS5jdGEtcGhvbmUsXG4gICAgYS5jdGEtZW1haWwge1xuICAgICAgICBjb2xvcjogJGNvbG9yLXRleHQtZGVmYXVsdDtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIH1cbn1cblxuLy8gUkVUVVJOUyBQQUdFXG5ib2R5LnJldHVybnMge1xuICAgIHNlY3Rpb24ge1xuICAgICAgICBAaW5jbHVkZSBhZGFwdGl2ZS1jb250YWluZXI7XG4gICAgfVxuICAgIHNlY3Rpb24uaW50cm8ge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgfVxuICAgIHNlY3Rpb24uY29udGVudCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDQ1cHg7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNzBweDtcbiAgICAgICAgfVxuICAgICAgICB1bCB7XG4gICAgICAgICAgICBAaW5jbHVkZSBmbHVzaC1saXN0O1xuICAgICAgICB9XG4gICAgfVxufVxuXG4vLyBSRU1PVEUgU1VQUE9SVCBQQUdFXG5ib2R5LnJlbW90ZS1zdXBwb3J0IHtcbiAgICBzZWN0aW9uIHtcbiAgICAgICAgQGluY2x1ZGUgYWRhcHRpdmUtY29udGFpbmVyO1xuICAgIH1cbiAgICBzZWN0aW9uLmludHJvIHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIH1cbn1cbiIsIkBtaXhpbiBoZWFkaW5nLWxpbmVzKCR3aWR0aC1vZi1saW5lczogbnVsbCwgJGhlYWRpbmc6IDEpIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgQGlmICR3aWR0aC1vZi1saW5lcyA9PSBudWxsIHtcbiAgICAgICAgJHdpZHRoLW9mLWxpbmVzOiAyMDBweDtcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAzMHB4O1xuICAgIH1cbiAgICAmOjpiZWZvcmUsXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiBzb2xpZCAxcHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpO1xuICAgICAgICAgICAgd2lkdGg6ICR3aWR0aC1vZi1saW5lcztcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDI1cHg7XG4gICAgICAgIH1cbiAgICAgICAgQGlmICRoZWFkaW5nID09IDIge1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMjVweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAmOjpiZWZvcmUge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICB9XG4gICAgfVxuICAgICY6OmFmdGVyIHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG4gICAgICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCJib2R5LmZvdXItb2gtZm91ciB7XG4gICAgc2VjdGlvbi5jb250ZW50IHtcbiAgICAgICAgQGluY2x1ZGUgYWRhcHRpdmUtY29udGFpbmVyO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDU1cHg7XG4gICAgICAgIGgxIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDM1cHg7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMTI1cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgaDIge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogNXB4O1xuICAgICAgICB9XG4gICAgICAgIGEuY3RhIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJ0bjtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDQwcHg7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCJib2R5LmRldmVsb3BlcnMge1xuICAgIG1haW4ge1xuICAgICAgICBhLmN0YSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBidG47XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIH1cbiAgICAgICAgc2VjdGlvbiB7XG4gICAgICAgICAgICBAaW5jbHVkZSBhZGFwdGl2ZS1jb250YWluZXI7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzNXB4O1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDI1cHg7XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogNTVweDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA3NXB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHNlY3Rpb24uaW50cm8ge1xuICAgICAgICAgICAgaDEsXG4gICAgICAgICAgICBkaXYge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHNwYW4oMTIpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZGl2IHtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBzcGFuKDYpO1xuICAgICAgICAgICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgc3BhbihsYXN0IDYpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgQGluY2x1ZGUgYWRkLWJvcmRlci1ib3R0b207XG4gICAgICAgIH1cbiAgICAgICAgc2VjdGlvbi5waG9uZS1jb250YWN0IHtcbiAgICAgICAgICAgIGgxIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDMwcHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogLTEwcHg7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMzZweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBhLmN0YS1waG9uZSB7XG4gICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgQGluY2x1ZGUgYWRkLWJvcmRlci1ib3R0b207XG4gICAgICAgIH1cbiAgICAgICAgc2VjdGlvbi5yZXF1ZXN0LXNlY3Rpb24ge1xuICAgICAgICAgICAgaDIge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IC0xMHB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBhLmN0YSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMTVweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICB9XG4gICAgfVxufVxuIiwiYm9keS5kZWFsZXJzIHtcbiAgICBtYWluIHtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1hZ2VzL2RlYWxlcnMtbWFwLnBuZ1wiKTtcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogNTAlIDg1cHg7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogNjU4cHggMjY4cHg7XG4gICAgICAgIHBhZGRpbmc6IDcwcHggMDtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA1MCUgOTVweDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogMTIwMHB4IGF1dG87XG4gICAgICAgIH1cbiAgICAgICAgc2VjdGlvbiB7XG4gICAgICAgICAgICBAaW5jbHVkZSBhZGFwdGl2ZS1jb250YWluZXI7XG4gICAgICAgIH1cbiAgICAgICAgc2VjdGlvbi5pbnRybyB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIH1cbiAgICAgICAgW2lkPVwiZGVhbGVyc1wiXSxcbiAgICAgICAgW2lkPVwiZGlzdHJpYnV0b3JzXCJdIHtcbiAgICAgICAgICAgIHVsIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAtMzBweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyN3B4O1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtMzJweDtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgZ2FsbGVyeSg0KTtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiA4MHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIC5pY29uLWxpbmstZXh0IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMnB4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRjb2xvci10ZXh0LWRlZmF1bHQ7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgW2lkPVwiZGlzdHJpYnV0b3JzXCJdIHtcbiAgICAgICAgICAgIGgyIHtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgaGVhZGluZy1saW5lcygkaGVhZGluZzoyKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbiIsImJvZHkuY2hhbmdlbG9ncyB7XG4gICAgc2VjdGlvbiB7XG4gICAgICAgIEBpbmNsdWRlIGFkYXB0aXZlLWNvbnRhaW5lcjtcbiAgICB9XG4gICAgW2lkPVwiaW50cm9cIl0ge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgfVxufVxuW2lkPVwiY2hhbmdlbG9nc1wiXSB7XG4gICAgQGluY2x1ZGUgYWRhcHRpdmUtY29udGFpbmVyO1xuICAgIG1hcmdpbi10b3A6IDM1cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMzVweDtcbiAgICAuY2hhbmdlbG9nIHtcbiAgICAgICAgQGluY2x1ZGUgY29udGFpbmVyO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMjVweDtcbiAgICAgICAgJjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGFkZC1ib3JkZXItYm90dG9tO1xuICAgICAgICB9XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLnZlcnNpb24tZGV0YWlscyB7XG4gICAgICAgIEBpbmNsdWRlIGNvbnRhaW5lcjtcbiAgICAgICAgLnBvc3RlZC1kYXRlIHtcbiAgICAgICAgICAgIGNsZWFyOiBib3RoO1xuICAgICAgICB9XG4gICAgfVxuICAgIC5kZXRhaWxzIHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG4gICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgfVxuICAgIH1cbiAgICAudHJpZ2dlci1jaGFuZ2Vsb2cge1xuICAgICAgICBkaXYge1xuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgQGluY2x1ZGUgc3BhbigxIG9mIDIgbm8tZ3V0dGVycyk7XG4gICAgICAgICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMjRweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAudG9nZ2xlLWluZGljYXRvciB7XG4gICAgICAgIHdpZHRoOiAyNHB4O1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpO1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2U7XG4gICAgICAgIG1hcmdpbi10b3A6IDE5cHg7XG4gICAgICAgICYub3BlbiB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBoMyB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICAgIGEge1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICB9XG4gICAgfVxuICAgIHAge1xuICAgICAgICBtYXJnaW4tdG9wOiA1cHg7XG4gICAgfVxuICAgIC5jb2xsYXBzZS10cmlnZ2VyIHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIH1cbiAgICBhLmN0YSB7XG4gICAgICAgIEBpbmNsdWRlIGJ0bjtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB3aWR0aDogMjM1cHg7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMjJweDtcbiAgICAgICAgfVxuICAgICAgICAmLmRvd25sb2FkLWxpbmsge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMTVweDtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDIycHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxNXB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIC5jaGFuZ2VzIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgbWluLXdpZHRoOiAxMDAlO1xuICAgICAgICBAaW5jbHVkZSBjb250YWluZXI7XG4gICAgICAgIHVsIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGZsdXNoLWxpc3Q7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCJAaW1wb3J0IFwiLi4vaGVscGVycy9idXR0b25zXCI7XG5AaW1wb3J0IFwiLi4vaGVscGVycy9ib3JkZXJzXCI7XG5AaW1wb3J0IFwiLi4vaGVscGVycy9saXN0c1wiO1xuQGltcG9ydCBcIi4uL3BhcnRpYWxzL2NoYW5nZWxvZ3NcIjtcblxuYm9keS5kb3dubG9hZHMge1xuICAgIHNlY3Rpb24ge1xuICAgICAgICBAaW5jbHVkZSBhZGFwdGl2ZS1jb250YWluZXI7XG4gICAgICAgIGEuY3RhIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJ0bjtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgfVxuICAgICAgICBhIHtcbiAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItdGV4dC1kZWZhdWx0O1xuICAgICAgICB9XG4gICAgfVxuICAgIFtpZD1cImludHJvXCJdIHtcbiAgICAgICAgaDEge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICB9XG4gICAgfVxuICAgIFtpZD1cInRyYWNraXItc29mdHdhcmVcIl0ge1xuICAgICAgICAudHJhY2tpci1jYWxsb3V0IHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHNwYW4oOCk7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgcHVzaCgyKTtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBoMyB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLnNlY29uZGFyeSB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IC0yMHB4O1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyNnB4O1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBhLmN0YSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDIwcHg7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMTBweCA1MnB4O1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogNzAlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICBbaWQ9XCJhbGVydHMtYW5kLXJlcXVpcmVtZW50c1wiXSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDUwcHg7XG5cbiAgICAgICAgLmFsZXJ0cy1hbmQtbm90aWNlcyxcbiAgICAgICAgLnN5c3RlbS1yZXF1aXJlbWVudHMge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgIEBpbmNsdWRlIHNwYW4oMTIpO1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgc3Bhbig2KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHVsIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBmbHVzaC1saXN0O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5zeXN0ZW0tcmVxdWlyZW1lbnRzIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHNwYW4obGFzdCA2KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICBbaWQ9XCJtYW51YWxzXCJdIHtcbiAgICAgICAgaDIge1xuICAgICAgICAgICAgQGluY2x1ZGUgaGVhZGluZy1saW5lcygkaGVhZGluZzogMik7XG4gICAgICAgIH1cbiAgICAgICAgLm1hbnVhbHMge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogNjBweDtcbiAgICAgICAgICAgIGZpZ3VyZSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNTBweDtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGdhbGxlcnkoNCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAxNXB4O1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDEzOHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAzcHggYXV0bztcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgICY6Zmlyc3Qtb2YtdHlwZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBhLmN0YSB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDE1cHg7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDEwcHggMjBweDtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMTBweCA1MnB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbmJvZHkuc29mdHdhcmUtbmV3cyB7XG4gICAgc2VjdGlvbiB7XG4gICAgICAgIEBpbmNsdWRlIGFkYXB0aXZlLWNvbnRhaW5lcjtcbiAgICB9XG4gICAgW2lkPVwiaW50cm9cIl0ge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgfVxufVxuXG5ib2R5LnNvZnR3YXJlLW5ld3Mge1xuICAgIHNlY3Rpb24ge1xuICAgICAgICBAaW5jbHVkZSBhZGFwdGl2ZS1jb250YWluZXI7XG4gICAgfVxuICAgIFtpZD1cImludHJvXCJdIHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIH1cbiAgICAuZG93bmxvYWQtYW5kLW1hbnVhbCBhIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHBhZGRpbmctdG9wOiAxMHB4O1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIFtpZD1cImNoYW5nZWxvZ1wiXSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDQ1cHg7XG4gICAgfVxuXG5cbn1cblxuYm9keS5wcmV2aW91cy1yZWxlYXNlcyB7XG4gICAgc2VjdGlvbiB7XG4gICAgICAgIEBpbmNsdWRlIGFkYXB0aXZlLWNvbnRhaW5lcjtcbiAgICB9XG4gICAgc2VjdGlvbltpZD1cImludHJvXCJdIHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIH1cbiAgICAucmV0dXJuLWxpbmsge1xuICAgICAgICBtYXJnaW46IDEwcHggMDtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuICAgIHNlY3Rpb25baWQ9XCJyZWxlYXNlc1wiXSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDM1cHg7XG4gICAgICAgIC5kb3dubG9hZCB7XG4gICAgICAgICAgICBAaW5jbHVkZSBjb250YWluZXI7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMjVweDtcbiAgICAgICAgICAgICY6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYWRkLWJvcmRlci1ib3R0b207XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuZGV0YWlscyB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGgzIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICAgIH1cbiAgICAgICAgcCB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiA1cHg7XG4gICAgICAgIH1cbiAgICAgICAgLmRvd25sb2FkLWxpbmsge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICB9XG4gICAgICAgIGEuY3RhIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJ0bjtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgICAgICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAyMnB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuIiwiLy8gQW5pbWF0ZSA2RE9GIE1vdmluZyBIZWFkc1xuQGtleWZyYW1lcyBtb3ZlaGVhZCB7XG4gICAgZnJvbSB7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGxlZnQgY2VudGVyO1xuICAgIH1cbiAgICB0byB7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0xMjAwMHB4O1xuICAgIH1cbn1cblxuXG5AaW1wb3J0IFwiLi4vcGFydGlhbHMvZmVhdHVyZWQtcHJvZHVjdHNcIjtcblxuYm9keS50cmFja2lyNSB7XG4gICAgbWFpbiB7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgfVxuICAgIHNlY3Rpb24ge1xuICAgICAgICBAaW5jbHVkZSBhZGFwdGl2ZS1jb250YWluZXI7XG4gICAgfVxuXG4gICAgc2VjdGlvbi5pbnRybyB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB9XG5cbiAgICAvKiBCYWNrZ3JvdW5kOiAqL1xuICAgIGRpdi5tb25pdG9yIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6XG4gICAgICAgICAgICAgICAgdXJsKFwiLi4vaW1hZ2VzL3RyYWNraXItNS1mb3ItbW9uaXRvci5wbmdcIiksXG4gICAgICAgICAgICAgICAgdXJsKFwiLi4vaW1hZ2VzL21vbml0b3ItYmV6ZWwucG5nXCIpLFxuICAgICAgICAgICAgICAgIHJhZGlhbC1ncmFkaWVudChlbGxpcHNlIGF0IHRvcCwgcmdiYSg1OSw1OSw1OSwxKSAwJSwgcmdiYSgwLDAsMCwxKSAxMDAlKTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OlxuICAgICAgICAgICAgICAgIG5vLXJlcGVhdCxcbiAgICAgICAgICAgICAgICByZXBlYXQteCxcbiAgICAgICAgICAgICAgICBuby1yZXBlYXQ7XG5cbiAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246XG4gICAgICAgICAgICAgICAgNTAlIDQzcHgsXG4gICAgICAgICAgICAgICAgMHB4IDI2NXB4LFxuICAgICAgICAgICAgICAgIDBweCAyNzBweDtcblxuICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOlxuICAgICAgICAgICAgICAgIDM3MHB4LFxuICAgICAgICAgICAgICAgIDEwMCUgNjVweCxcbiAgICAgICAgICAgICAgICBhdXRvO1xuXG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogMjkwcHg7XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOlxuICAgICAgICAgICAgICAgICAgICA1MCUgNDRweCxcbiAgICAgICAgICAgICAgICAgICAgMHB4IDMzMHB4LFxuICAgICAgICAgICAgICAgICAgICAwcHggMzQ0cHg7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOlxuICAgICAgICAgICAgICAgICAgICA0NzVweCBhdXRvLFxuICAgICAgICAgICAgICAgICAgICAxMDAlIDY1cHgsXG4gICAgICAgICAgICAgICAgICAgIGF1dG8gYXV0bztcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogMzkwcHg7XG4gICAgICAgICAgICB9XG4gICAgfVxuXG4gICAgLnNpeGRvRiB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgaDIge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogNTBweDtcbiAgICAgICAgfVxuICAgICAgICA+IGgyIHNwYW4ge1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtbW9iaWxlLW9ubHkpIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBwIHtcbiAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItdGV4dC1kaW07XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBzcGFuKDgpO1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHB1c2goMik7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBkaXYuaGVhZHMge1xuICAgICAgICAgICAgQGluY2x1ZGUgc3BhbigxMDAlKTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDQ1cHg7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgICAgLmFuaW1hdGlvbi1zcG90IHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwcHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAxNXB4IDE1cHg7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBnYWxsZXJ5KDIpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAmLmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgLnNwcml0ZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogLTE3NXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgYW5pbWF0aW9uOiBtb3ZlaGVhZCAycyBzdGVwcygzMCkgaW5maW5pdGU7XG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiB2aXNpYmlsaXR5O1xuICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMXM7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgLmdob3N0IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiBvcGFjaXR5O1xuICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMS41cztcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDI1cHg7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IC0xNXB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAuc3ByaXRlIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMHB4O1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDEzOHB4O1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDI1cHggMTVweDtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAtMTc1cHg7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogbGVmdCBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoLjgyKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgLmdob3N0IHtcbiAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTIwcHg7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogMTM4cHg7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMTJweCAxNXB4IDEycHggNXB4O1xuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiBvcGFjaXR5O1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAxcztcbiAgICAgICAgICAgICAgICAgICAgJi55IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciAycHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgJi5waXRjaCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgMHB4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIC8vIFNwZWNpYWwgc3R5bGUgdG8gZW5sYXJnZSB0aGUgWiBnaG9zdCB0byBtYWtlIGl0IG1vcmUgb2J2aW91c1xuICAgICAgICAgICAgICAgIC56Lmdob3N0IHtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjIpO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIEBtaXhpbiBzaXhEb0YtYW5pbWF0aW9uKCRtb3ZlbWVudHMpIHtcbiAgICAgICAgICAgICAgICAgICAgQGVhY2ggJG1vdmVtZW50IGluICRtb3ZlbWVudHMge1xuICAgICAgICAgICAgICAgICAgICAgICAgLiN7JG1vdmVtZW50fS5zcHJpdGUge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltYWdlcy8jeyRtb3ZlbWVudH0tc3ByaXRlLnBuZ1wiKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIC4jeyRtb3ZlbWVudH0uZ2hvc3Qge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltYWdlcy82ZG9mLSN7JG1vdmVtZW50fS5wbmdcIik7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBzaXhEb0YtYW5pbWF0aW9uKHlhdyB4IHBpdGNoIHkgcm9sbCB6KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5zaXhkb0YtdmlkZW9zIHtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiA0MHB4O1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDQwcHg7XG4gICAgICAgICAgICBAaW5jbHVkZSBzcGFuKDEwMCUpO1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDYwcHg7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXRvcDogc29saWQgMXB4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xNSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDM1cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBmaWd1cmUge1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoLjg4KTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMzVweDtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMjIwcHg7XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAxNXB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBzcGFuOm50aC1jaGlsZCgxKSB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgc3BhbjpudGgtY2hpbGQoMiksXG4gICAgICAgICAgICAgICAgc3BhbjpudGgtY2hpbGQoMykge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGNvbG9yLXRleHQtZXh0cmFkaW07XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnByZWNpc2UtdHJhY2tpbmcge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAtNXB4O1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIHAge1xuICAgICAgICAgICAgY29sb3I6ICRjb2xvci10ZXh0LWV2ZW5sZXNzZGltO1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtbW9iaWxlLW9ubHkpIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAtMjBweDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA4MHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiBpbml0aWFsO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnByZWNpc2UtdHJhY2tpbmctY29udGVudCB7XG4gICAgICAgICAgICBAaW5jbHVkZSBhZGFwdGl2ZS1jb250YWluZXI7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogMzVweDtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiA1NXB4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogNTAwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAucHJlY2lzZS10cmFja2luZy1jb3B5IHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMDBweDtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDUwMHB4O1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiBpbml0aWFsO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAuc3BlY3Mge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAzMHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAuc3BlYyB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogNzBweCBhdXRvO1xuICAgICAgICAgICAgICAgICAgICBodG1sLmllICYge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogLTcwcHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMjUwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjogNXB4IGF1dG87XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgaDIge1xuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAyOHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIC5zcGVjLXRpdGxlIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMHB4O1xuICAgICAgICAgICAgICAgICAgICB+IHAge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRjb2xvci10ZXh0LWV2ZW5sZXNzZGltO1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogLTVweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEzcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiBpbml0aWFsO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5wcmVjaXNlLXRyYWNraW5nLWltYWdlIHtcbiAgICAgICAgICAgIG1heC13aWR0aDogbm9uZTtcbiAgICAgICAgICAgIC50cmFja2lyNS1pbWFnZSB7XG4gICAgICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAtNDE1cHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAzMDBweDtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogLTEyMHB4O1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDE1MHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDUwMHB4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG5cbiAgICBkaXYuZGVzaWduZWQtZm9yLWdhbWVycyB7XG4gICAgICAgIHBhZGRpbmc6IDE1cHggMDtcbiAgICAgICAgYmFja2dyb3VuZDogYmxhY2s7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6bGluZWFyLWdyYWRpZW50KHRvIHRvcCwgcmdiKDc0LCA3NCwgNzQpIDAlLCByZ2IoMjIsIDIyLCAyMikgMTAwJSk7XG5cbiAgICAgICAgLmRlc2lnbmVkLWZvci1nYW1lcnMtY29udGVudCB7XG4gICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGNvbG9yLXRleHQtZGltO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDI1cHggMCA1NXB4O1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBzcGFuKDEwKTtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgcHVzaCgtNSk7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IC0xNXB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5kZXNpZ25lZC1mb3ItZ2FtZXJzLWNvcHkge1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgc3BhbihsYXN0IDYpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIHNlY3Rpb24uZnVsbHktYWRqdXN0YWJsZSB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiA0MHB4O1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiA4MHB4O1xuICAgICAgICAgICAgaGVpZ2h0OiA1MDBweDtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAwcHg7XG4gICAgICAgIH1cbiAgICAgICAgaW1nLnRpci1pbWFnZSB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiA0MHB4O1xuICAgICAgICAgICAgd2lkdGg6IDIyMHB4O1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHdpZHRoOiA0MjBweDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAtNjBweDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogLTE1MHB4O1xuICAgICAgICAgICAgICAgIGxlZnQ6IDYwJTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIGRpdi5mdWxseS1hZGp1c3RhYmxlLWNvcHkge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgc3Bhbig3KTtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtbW9iaWxlLW9ubHkpIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogLTIwcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnRlY2gtc3BlY3Mge1xuICAgICAgICBwYWRkaW5nLXRvcDogMzBweDtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDMwcHg7XG4gICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMCwwLDAsMC4xKTtcblxuICAgICAgICAudGVjaC1zcGVjcy1jb250ZW50IHtcbiAgICAgICAgICAgIGgyIHtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAudGVjaC1zcGVjcy1pbWFnZXMge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBzcGFuKDQgZmlyc3QpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBmaWd1cmUge1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC01MHB4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogODBweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAyMDBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtMTAwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IHVuc2V0O1xuICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHN0aWNreTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBmaWdjYXB0aW9uIHtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEzcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLnRlY2gtc3BlY3MtY29weSB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHNwYW4obGFzdCA4KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgLnNwZWNzIHtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgc3BhbigxMDAlKTtcbiAgICAgICAgICAgICAgICAgICAgZGl2IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHNwYW4oMTAwJSk7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAtMjNweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IC0xNXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIHA6Zmlyc3QtY2hpbGR7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAtMTBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxNHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDE0cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgZ2FsbGVyeSg2KTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBwOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDEycHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgZ2FsbGVyeSg2KTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAubW9yZS1zcGVjcyB7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHNwYW4oMTAwJSk7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDMwcHg7XG4gICAgICAgICAgICAgICAgICAgIC5pbi1ib3gsXG4gICAgICAgICAgICAgICAgICAgIC5zeXMtcmVxdWlyZW1lbnRzIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGdhbGxlcnkoNik7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB1bCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBmbHVzaC1saXN0O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDhweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMnB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb250ZW50OiBub25lO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIFtpZD1cImZlYXR1cmVkLXByb2R1Y3RzXCJdIHtcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgfVxufVxuIiwiW2lkPVwiZmVhdHVyZWQtcHJvZHVjdHNcIl0ge1xuICAgIHBhZGRpbmc6IDI1cHggMCAzMHB4O1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMCwwLDAsMC4xKTsgICAgXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgICBwYWRkaW5nOiAyNXB4IDAgNjVweDtcbiAgICB9XG4gICAgYS5jdGEge1xuICAgICAgICBAaW5jbHVkZSBidG47XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB9XG4gICAgLnByb2R1Y3RzIHtcbiAgICAgICAgQGluY2x1ZGUgYWRhcHRpdmUtY29udGFpbmVyO1xuICAgIH1cbiAgICAucHJvZHVjdCB7XG4gICAgICAgIEBpbmNsdWRlIHNwYW4oMTIpO1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC1tb2JpbGUtb25seSkge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNjVweDtcbiAgICAgICAgfVxuICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtbW9iaWxlLW9ubHkpIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzNXB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgICAgICAgQGluY2x1ZGUgc3Bhbig0KTtcbiAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgc3BhbihsYXN0IDQpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHAge1xuICAgICAgICAgICAgbWFyZ2luOiAxMHB4IDAgLTVweDtcbiAgICAgICAgfVxuICAgICAgICBwLnByaWNlIHtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiAwcHg7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICAgICAgICB9XG4gICAgICAgIGZpZ3VyZSB7XG4gICAgICAgICAgICAkZmlndXJlLWhlaWdodDogMTc1cHg7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICBtYXJnaW46IDAgYXV0byAyMHB4O1xuICAgICAgICAgICAgaGVpZ2h0OiAkZmlndXJlLWhlaWdodDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAkZmlndXJlLWhlaWdodDtcbiAgICAgICAgICAgIHdpZHRoOiAyODBweDtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAyMjBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIG1heC1oZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IGJvdHRvbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAmW2lkPVwidHJhY2tjbGlwLXByb1wiXSB7XG4gICAgICAgICAgICBmaWd1cmUge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLW1vYmlsZS1vbmx5KSB7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogMjI1cHg7XG4gICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyMjVweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG4gICAgICAgICAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDE0MHB4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgICZbaWQ9XCJ0aXI1XCJdIHtcbiAgICAgICAgICAgIGZpZ3VyZSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDIxMHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgICZbaWQ9XCJ0aXI1LXByby1idW5kbGVcIl0ge1xuICAgICAgICAgICAgZmlndXJlIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMjgwcHg7XG4gICAgICAgICAgICAgICAgLy8gbWFyZ2luLWxlZnQ6IC0yOXB4O1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogLTI5cHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuIiwiYm9keS5hY2Nlc3NvcmllcyB7XG4gICAgbWFpbiB7XG4gICAgICAgIGgxIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLW1vYmlsZS1vbmx5KSB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAzNnB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHNlY3Rpb24ge1xuICAgICAgICAgICAgQGluY2x1ZGUgYWRhcHRpdmUtY29udGFpbmVyO1xuICAgICAgICB9XG4gICAgICAgIHNlY3Rpb24uaW50cm8ge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMzVweDtcbiAgICAgICAgfVxuICAgICAgICBzZWN0aW9uLmZlYXR1cmVkLWl0ZW1zIHtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiA0NXB4O1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNDVweDtcbiAgICAgICAgICAgIEBpbmNsdWRlIGFkZC1ib3JkZXItYm90dG9tO1xuICAgICAgICAgICAgLmZlYXR1cmVkLWl0ZW0ge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHNwYW4oMTIpO1xuICAgICAgICAgICAgICAgICY6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC1tb2JpbGUtb25seSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogNjVweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAmW2lkPVwidHJhY2tjbGlwcHJvXCJdIHtcbiAgICAgICAgICAgICAgICAgICAgZmlndXJlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHNwYW4oZmlyc3QgNik7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgLmNvcHkge1xuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgc3BhbihsYXN0IDYpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHB1c2goNik7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgJltpZD1cInRyYWNrY2xpcFwiXSB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDEwMHB4O1xuICAgICAgICAgICAgICAgICAgICBmaWd1cmUge1xuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgc3BhbiggNik7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgcHVzaCg2KTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAuY29weSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBzcGFuKCA2KTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBwdXNoKC0xMik7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgZmlndXJlIHtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtbW9iaWxlLW9ubHkpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMjkwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWF4LXdpZHRoOiBpbml0aWFsO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC0yMTBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiA0MDBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBkaXYuY29weSB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDM1cHg7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMTVweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBoMyB7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgcC5wcmljZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzNXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lO1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDIwcHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgdWwge1xuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgZmx1c2gtbGlzdDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBmb3JtIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogNTVweDtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtbW9iaWxlLW9ubHkpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBzZWN0aW9uLml0ZW1zIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDU1cHg7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA3NXB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLml0ZW0ge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMTVweDtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBzcGFuKDEyKTtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcblxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBzcGFuKDQpO1xuXG4gICAgICAgICAgICAgICAgICAgICY6bnRoLWNoaWxkKDNuKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBzcGFuKGxhc3QgNCk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgZmlndXJlIHtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxNTBweDtcbiAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE1MHB4O1xuICAgICAgICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxNTBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBib3R0b207XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgaDMge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHAucHJpY2Uge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiA1cHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICZbaWQ9XCJ0aXI1LWJhc2VcIl0ge1xuICAgICAgICAgICAgICAgICAgICBmaWd1cmUge1xuICAgICAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDk4cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDk4cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDE1MHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxNTBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIGltZyB7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IGluaXRpYWw7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAyMzBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogLTIwOHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogLTE0NHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMjMwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCJib2R5LmdhbWVzLWxpc3Qge1xuICAgIC5pbnRybyB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgbWFyZ2luLXRvcDogMzVweDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMzVweDtcbiAgICB9XG5cbiAgICAuZmlsdGVyLWFuZC1zb3J0IHtcbiAgICAgICAgQGluY2x1ZGUgYWRhcHRpdmUtY29udGFpbmVyO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIGxhYmVsLmxhYmVsLWZvci1ncm91cCB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiA0NXB4O1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9XG4gICAgICAgIGRpdi5yYWRpby1zZWN0aW9uIHtcbiAgICAgICAgICAgIGlucHV0W3R5cGU9XCJyYWRpb1wiXXtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaW5wdXRbdHlwZT1cInJhZGlvXCJdOmNoZWNrZWQgKyBsYWJlbCB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjgpO1xuICAgICAgICAgICAgICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOSk7XG4gICAgICAgICAgICAgICAgY29sb3I6ICM5NjVCMDA7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBsYWJlbCB7XG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsICRkZWZhdWx0LXRyYW5zaXRpb24tZHVyYXRpb24gJGRlZmF1bHQtdHJhbnNpdGlvbi1mdW5jdGlvbjtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDIycHg7XG4gICAgICAgICAgICAgICAgYm9yZGVyOiBzb2xpZCAxcHggJGNvbG9yLXRleHQtZGVmYXVsdDtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1sYXJnZTtcbiAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICAgICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgIHdpZHRoOiA5MHB4O1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IG5vbmU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICY6Zmlyc3Qtb2YtdHlwZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1yaWdodDogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogLTJweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgJjpudGgtb2YtdHlwZSgyKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC0zcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IC0zcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICY6bGFzdC1vZi10eXBlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1sZWZ0OiBub25lO1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC0ycHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGNvbG9yLXRleHQtZW1waGFzaXplZDtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJGNvbG9yLWlucHV0LWRhcmtlbjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgLmdhbWVzLXRhYmxlIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNzBweDtcbiAgICAgICAgLnRhYmxlLWhlYWRlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDI1cHggMHB4O1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtbW9iaWxlLW9ubHkpIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJi5maXhlZC1oZWFkZXIge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICB0b3A6IDc0cHg7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjQ3LCAxNDYsIDAsIDAuOSk7XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgNTAwbXMgZWFzZS1pbi1vdXQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLnNvcnQtYnktc2VjdGlvbiB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgIGlucHV0W3R5cGU9XCJyYWRpb1wiXSB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGxhYmVsIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRjb2xvci10ZXh0LWRlZmF1bHQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGxhYmVsOmZpcnN0LW9mLXR5cGUge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGxhYmVsOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwcHggMTBweDtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgICAgICAgICAgICAgICAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkY29sb3ItaW5wdXQtZGFya2VuO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBsYWJlbDpudGgtb2YtdHlwZSgyKSB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMjBweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgbGFiZWw6bGFzdC1vZi10eXBlIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEzNXB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBzcGFuLmljb24tZG93bi1vcGVuLWJpZyB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAtMzBweDtcbiAgICAgICAgICAgICAgICAgICAgJi5kZXNjZW5kaW5nIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGFuaW1hdGlvbi1uYW1lOiBhbmltYXRpb25Ub0Rlc2NlbmRpbmc7XG4gICAgICAgICAgICAgICAgICAgICAgICBhbmltYXRpb24tZHVyYXRpb246IDMwMG1zO1xuICAgICAgICAgICAgICAgICAgICAgICAgYW5pbWF0aW9uLWZpbGwtbW9kZTogZm9yd2FyZHM7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgJi5hc2NlbmRpbmcge1xuICAgICAgICAgICAgICAgICAgICAgICAgYW5pbWF0aW9uLW5hbWU6IGFuaW1hdGlvblRvQXNjZW5kaW5nO1xuICAgICAgICAgICAgICAgICAgICAgICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAzMDBtcztcbiAgICAgICAgICAgICAgICAgICAgICAgIGFuaW1hdGlvbi1maWxsLW1vZGU6IGZvcndhcmRzO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIEBrZXlmcmFtZXMgYW5pbWF0aW9uVG9Bc2NlbmRpbmd7XG4gICAgICAgICAgICAgICAgICAgICAgICAwJSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGVYKDBkZWcpO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgMTAwJSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGVYKDE4MGRlZyk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgQGtleWZyYW1lcyBhbmltYXRpb25Ub0Rlc2NlbmRpbmd7XG4gICAgICAgICAgICAgICAgICAgICAgICAwJSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGVYKDE4MGRlZyk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAxMDAlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZVgoMGRlZyk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMHB4O1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDBweDtcbiAgICAgICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAzOHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnRhYmxlLWhlYWRlci1jb250ZW50IHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgYWRhcHRpdmUtY29udGFpbmVyO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICB0YWJsZSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBhZGFwdGl2ZS1jb250YWluZXI7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuICAgICAgICAudGFibGUtY29udGFpbmVyIHtcbiAgICAgICAgICAgICYuZml4ZWQtaGVhZGVyIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogNzNweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgdHIge1xuICAgICAgICAgICAgQGluY2x1ZGUgYWRkLWJvcmRlci1ib3R0b207XG4gICAgICAgICAgICB0ZCB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy10b3A6IDEwcHg7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDEwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICB0ZDpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDQ0MnB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgdGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMTVweDtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC1tb2JpbGUtb25seSkge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8vIGZvciBmaWx0ZXJpbmdcbiAgICAgICAgLmZpbHRlciB7XG4gICAgICAgICAgICB0ciB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuZmlsdGVyLmZwcyB7XG4gICAgICAgICAgICB0ci5mcHMge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IHRhYmxlLXJvdztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuZmlsdGVyLmRyaXZpbmcge1xuICAgICAgICAgICAgdHIuZHJpdmluZyB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogdGFibGUtcm93O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5maWx0ZXIuZmxpZ2h0IHtcbiAgICAgICAgICAgIHRyLmZsaWdodCB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogdGFibGUtcm93O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuIiwiYm9keS5yZW1vdGUtc3VwcG9ydCB7XG4gbWFpbiB7XG4gICAgICAgIEBpbmNsdWRlIGFkYXB0aXZlLWNvbnRhaW5lcjtcblxuICAgICAgICBtYXJnaW4tYm90dG9tOiA0NXB4O1xuXG4gICAgICAgIHNlY3Rpb24ge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgJi5pbnRybyB7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmLmNvbnRlbnQge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBzcGFuKDgpO1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBwdXNoKDIpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBhLmN0YSB7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJ0bjtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgICAgICB0b3A6IDQ1cHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICB9XG59IiwiYm9keS5wcm9tbyB7XG4gICAgbWFpbiB7XG4gICAgICAgIEBpbmNsdWRlIGFkYXB0aXZlLWNvbnRhaW5lcjtcbiAgICAgICAgbWFyZ2luLXRvcDogMjVweDtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgIGgzLFxuICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgdWwge1xuICAgICAgICAgICAgQGluY2x1ZGUgZmx1c2gtbGlzdDtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDQ1cHg7XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAzNXB4O1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxMDBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuYWN0aW9uLWxpbmsge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBidG47XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuXG4gICAgfVxufVxuIiwiYm9keS5tZWRpYSB7XG4gICAgLy8gYmx1ciB0aGUgI2NvbnRlbnQgZGl2IHdoZW4gbW9kYWwgb3BlbnNcbiAgICBbaWQ9XCJjb250ZW50XCJdIHtcbiAgICAgICAgJi5ibHVyIHtcbiAgICAgICAgICAgIGZpbHRlcjogYmx1cig1cHgpO1xuICAgICAgICB9XG4gICAgfVxuICAgIC8vIG1vZGFsIGRpc3BsYXkgY29kZVxuICAgIC5tb2RhbCB7XG4gICAgICAgIC8vIG1vZGFsIGlzIGhpZGRlbiBhbmQgbWFkZSB2aXNpYmxlIHdpdGgganF1ZXJ5XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgcGFkZGluZy10b3A6IDYwcHg7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgb3ZlcmZsb3c6IGF1dG87XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYigwLDAsMCk7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwwLDAsLjQpO1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiA3NXB4O1xuICAgICAgICB9XG4gICAgICAgIC8qIE1vZGFsIENvbnRlbnQgKi9cbiAgICAgICAgLm1vZGFsLWNvbnRlbnQge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLDAsMCwuNzUpO1xuICAgICAgICAgICAgbWFyZ2luOiBhdXRvO1xuICAgICAgICAgICAgcGFkZGluZzogMjBweDtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDgwJTtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAzcHg7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDYwMHB4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGgzIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmRvd25sb2FkIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAvKiBUaGUgTW9kYWwgQ2xvc2UgQnV0dG9uICovXG4gICAgICAgIC5jbG9zZSB7XG4gICAgICAgICAgICBjb2xvcjogI2FhYWFhYTtcbiAgICAgICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjhweDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgJjpob3ZlcixcbiAgICAgICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAjY2NjY2NjO1xuICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBtYWluIHtcbiAgICAgICAgQGluY2x1ZGUgYWRhcHRpdmUtY29udGFpbmVyO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA0NXB4O1xuICAgICAgICBzZWN0aW9uIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDkwcHg7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICB1bCB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgZmx1c2gtbGlzdDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgICAgICAmLmN0YSB7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJ0bjtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDMwcHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgLmltYWdlLWRvd25sb2FkcyB7XG4gICAgICAgIG92ZXJmbG93OiBhdXRvO1xuICAgICAgICBhIHtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAzMHB4O1xuICAgICAgICB9XG4gICAgICAgIGltZyB7XG4gICAgICAgICAgICBwYWRkaW5nOiAyMHB4IDAgMTBweDtcbiAgICAgICAgfVxuICAgIH1cbiAgICBzZWN0aW9uW2lkPVwidHJhY2tpci01XCJdIHtcbiAgICAgICAgLmltYWdlLWRvd25sb2FkcyB7XG4gICAgICAgICAgICAgLm1vZGFsQnRuIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBnYWxsZXJ5KDEgb2YgMik7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGdhbGxlcnkoMSBvZiAzKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgc2VjdGlvbltpZD1cInRyYWNrY2xpcC1wcm9cIl0ge1xuICAgICAgICAuaW1hZ2UtZG93bmxvYWRzIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGNvbnRhaW5lcig0MDBweCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAgLm1vZGFsQnRuIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBnYWxsZXJ5KDEgb2YgMik7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgc2VjdGlvbltpZD1cInRyYWNrY2xpcFwiXSB7XG4gICAgICAgIC5pbWFnZS1kb3dubG9hZHMge1xuICAgICAgICAgICAgIC5tb2RhbEJ0biB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgZ2FsbGVyeSgxIG9mIDEpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIHNlY3Rpb25baWQ9XCJoYXRzXCJdIHtcbiAgICAgICAgLmltYWdlLWRvd25sb2FkcyB7XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBjb250YWluZXIoNDAwcHgpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgIC5tb2RhbEJ0biB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgZ2FsbGVyeSgxIG9mIDIpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIHNlY3Rpb25baWQ9XCJ2aXNvcnNcIl0ge1xuICAgICAgICAuaW1hZ2UtZG93bmxvYWRzIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGNvbnRhaW5lcig0MDBweCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAgLm1vZGFsQnRuIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBnYWxsZXJ5KDEgb2YgMik7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIvLyBJc29sYXRpb24gU3ludGF4XG4vLyA9PT09PT09PT09PT09PT09XG5cblxuLy8gSXNvbGF0ZSBbTWl4aW5dXG4vLyAtLS0tLS0tLS0tLS0tLS1cbi8vIFNldCBpc29sYXRpb24gYXMgYW4gb3ZlcnJpZGUuXG4vLyAtICRsb2NhdGlvbjogPHNwYW4+XG5AbWl4aW4gaXNvbGF0ZShcbiAgJGlzb2xhdGU6IDFcbikge1xuICAkaW5zcGVjdDogJGlzb2xhdGU7XG5cbiAgJG91dHB1dDogKFxuICAgIHB1c2g6IGlzb2xhdGUoJGlzb2xhdGUpLFxuICAgIGZsb3c6IHN1c3ktZ2V0KGZsb3csICRpc29sYXRlKSxcbiAgKTtcblxuICBAaW5jbHVkZSBzdXN5LWluc3BlY3QoaXNvbGF0ZSwgJGluc3BlY3QpO1xuICBAaW5jbHVkZSBpc29sYXRlLW91dHB1dCgkb3V0cHV0Li4uKTtcbn1cblxuXG4vLyBJc29sYXRlIFtmdW5jdGlvbl1cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gUmV0dXJuIGFuIGlzb2xhdGlvbiBvZmZzZXQgd2lkdGguXG4vLyAtICRsb2NhdGlvbjogPHNwYW4+XG5AZnVuY3Rpb24gaXNvbGF0ZShcbiAgJGlzb2xhdGU6IDFcbikge1xuICAkaXNvbGF0ZTogcGFyc2Utc3BhbigkaXNvbGF0ZSk7XG4gICRpc29sYXRpb246IHN1c3ktZ2V0KHNwYW4sICRpc29sYXRlKTtcblxuICBAaWYgJGlzb2xhdGlvbiBhbmQgbm90KGdldC1sb2NhdGlvbigkaXNvbGF0ZSkpIHtcbiAgICAkbmV3OiAoXG4gICAgICBzcGFuOiBudWxsLFxuICAgICAgbG9jYXRpb246ICRpc29sYXRpb24sXG4gICAgKTtcbiAgICAkaXNvbGF0ZTogbWFwLW1lcmdlKCRpc29sYXRlLCAkbmV3KTtcbiAgfVxuXG4gIEByZXR1cm4gZ2V0LWlzb2xhdGlvbigkaXNvbGF0ZSk7XG59XG5cblxuLy8gR2V0IElzb2xhdGlvblxuLy8gLS0tLS0tLS0tLS0tLVxuLy8gUmV0dXJuIHRoZSBpc29sYXRpb24gb2Zmc2V0IHdpZHRoXG4vLyAtICRpbnB1dDogPG1hcD5cbkBmdW5jdGlvbiBnZXQtaXNvbGF0aW9uKFxuICAkaW5wdXRcbikge1xuICAkbG9jYXRpb24gICA6IGdldC1sb2NhdGlvbigkaW5wdXQpO1xuICAkY29sdW1ucyAgICA6IHN1c3ktZ2V0KGNvbHVtbnMsICRpbnB1dCk7XG4gICR3aWR0aCAgICAgIDogbnVsbDtcblxuICBAaWYgdHlwZS1vZigkbG9jYXRpb24pID09IG51bWJlciBhbmQgbm90KHVuaXRsZXNzKCRsb2NhdGlvbikpIHtcbiAgICAkd2lkdGg6ICRsb2NhdGlvbjtcbiAgfSBAZWxzZSBpZiAkbG9jYXRpb24ge1xuICAgICRwdXNoOiAkbG9jYXRpb24gLSAxO1xuICAgIEBpZiAkcHVzaCA+IDAge1xuICAgICAgJHB1c2g6IG1hcC1tZXJnZSgkaW5wdXQsIChcbiAgICAgICAgc3BhbjogJHB1c2gsXG4gICAgICAgIGxvY2F0aW9uOiAxLFxuICAgICAgICBzcHJlYWQ6IHdpZGUsXG4gICAgICApKTtcbiAgICAgICR3aWR0aDogZ2V0LXNwYW4td2lkdGgoJHB1c2gpO1xuICAgIH1cbiAgfVxuXG4gIEBpZiBzdXN5LWdldChndXR0ZXItcG9zaXRpb24sICRpbnB1dCkgPT0gc3BsaXRcbiAgICAgIGFuZCBzdXN5LWdldChndXR0ZXJzLCAkaW5wdXQpID4gMCB7XG4gICAgJHdpZHRoOiBpZigkd2lkdGggPT0gbnVsbCwgZ3V0dGVycygkaW5wdXQpLCAkd2lkdGggKyBndXR0ZXJzKCRpbnB1dCkpO1xuICB9XG5cbiAgQHJldHVybiAkd2lkdGggb3IgMDtcbn1cbiJdLCJzb3VyY2VSb290IjoiL3NvdXJjZS8ifQ== */