@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(odd){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:first-child{padding-right:10px}body.checkout .enc-store [id=checkoutStep4] .item ul.details li:first-child,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(odd){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(odd){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 main section{max-width:290px;margin-left:auto;margin-right:auto}body.downloads main section:after{content:" ";display:block;clear:both}@media (min-width:768px){body.downloads main section{max-width:702px;margin-left:auto;margin-right:auto}body.downloads main section:after{content:" ";display:block;clear:both}}body.downloads 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;text-align:center}body.downloads main section a.cta:hover{color:#fff;background:rgba(0,0,0,.1)}body.downloads main 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=drivers]{margin-top:50px}body.downloads [id=drivers] h2{text-align:center}@media (min-width:768px){body.downloads [id=drivers] h2{padding-top:30px}}@media (min-width:768px){body.downloads [id=drivers] h2:after,body.downloads [id=drivers] h2:before{content:"";border-bottom:1px solid hsla(0,0%,100%,.5);width:200px;margin-top:25px}}@media (min-width:768px){body.downloads [id=drivers] h2:before{float:left}}@media (min-width:768px){body.downloads [id=drivers] h2:after{float:right}}body.downloads [id=drivers] .button{margin-top:60px;text-align:center;width:100%;float:left;margin-left:0;margin-right:0}@media (min-width:768px){body.downloads [id=drivers] .button{width:49.15254%;float:left;margin-right:1.69492%}}@media (min-width:768px){body.downloads [id=drivers] .button:last-of-type{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:first-child{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(odd){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(odd){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(odd),body.trackir5 .tech-specs .tech-specs-content .tech-specs-copy .more-specs .sys-requirements:nth-child(odd){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(odd){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(odd){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(odd){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(odd){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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cEMsa0JFcURtRSxBS0MvRCxZQUFjLENBc0NqQixBQTdHTCxtQ0pVTSxZQUFhLEFBQ2IsY0FBZSxBQUNmLFVBQVksQ0FDYixBTmlERCx5QlU5REosNkJQaUJJLGdCQ2Y0QixBRGU1QixpQkVxRG9DLEFGckRwQyxpQkVxRG1FLENLdUNsRSxBQTdHTCxtQ0pVTSxZQUFhLEFBQ2IsY0FBZSxBQUNmLFVBQVksQ0FDYixDQUFBLEFOaURELHlCVTlESiw2QkEwRVksWUFBYyxDQW1DckIsQ0FBQSxBVi9DRCx5QlU5REosOENBOEVnQixZQUFjLENBRXJCLENBQUEsQVZsQkwseUJVOURKLHdGQXFGZ0IsWUFBYyxDQUVyQixDQUFBLEFBdkZULCtCUGlCSSxpQkl3SW9CLEFKeElwQixXUUE0RCxBUkE1RCxzQlM0RHdCLEFUNUR4QixzQlV5Q3VELENIdUNsRCxBVm5DTCx5QlU5REosK0JQaUJJLGlCSXdJb0IsQUp4SXBCLFdRQTRELEFSQTVELHNCUzREd0IsQVQ1RHhCLHFCVXlDdUQsQ0h1Q2xELENBQUEsQVZuQ0wseUJVOURKLGlDQW9HZ0IscUJBQXNCLEFBQ3RCLFdBQWEsQ0FFcEIsQ0FBQSxBQXZHVCxtQ0F5R1ksbUJBQW9CLEFBQ3BCLGlCQUFrQixBQUNsQixXQUFhLENBQ2hCLEFBNUdULHlCUGlCSSxnQkNsQndCLEFEa0J4QixpQkVxRG9DLEFGckRwQyxrQkVxRG1FLEFLMkMvRCxrQkFBb0IsQ0FldkIsQUFoSUwsK0JKVU0sWUFBYSxBQUNiLGNBQWUsQUFDZixVQUFZLENBQ2IsQU5pREQseUJVOURKLHlCUGlCSSxnQkNmNEIsQURlNUIsaUJFcURvQyxBRnJEcEMsaUJFcURtRSxDSzBEbEUsQUFoSUwsK0JKVU0sWUFBYSxBQUNiLGNBQWUsQUFDZixVQUFZLENBQ2IsQ0FBQSxBTmlERCx5QlU5REoseUNQaUJJLGdCSXdJb0IsQUp4SXBCLFdRQTRELEFSQTVELHNCUzREd0IsQVQ1RHhCLG9CSXdJb0IsQ0cxQmYsQ0FBQSxBQS9IVCwrQ0F3SGdCLGVBQWlCLENBQ3BCLEFBekhiLGlFQTRIb0IsV0FBYSxDQUNoQixBQTdIakIsaUNBbUlRLHlCQUFnQixDQUNuQixBQXBJTCxrQ1BpQkksZ0JDbEJ3QixBRGtCeEIsZ0JFcURvQyxDS3FHbkMsQUEzS0wsd0NKVU0sWUFBYSxBQUNiLGNBQWUsQUFDZixVQUFZLENBQ2IsQU5pREQseUJVOURKLGtDUGlCSSxnQkNmNEIsQURlNUIsaUJFcURvQyxBRnJEcEMsaUJFcURtRSxDS3FHbEUsQUEzS0wsd0NKVU0sWUFBYSxBQUNiLGNBQWUsQUFDZixVQUFZLENBQ2IsQ0FBQSxBTmlERCx5QlU5REosa0NBMklZLGVBQWlCLENBZ0N4QixDQUFBLEFBM0tMLHlEQThJWSxnQkFBaUIsQUFDakIsVUFBWSxDQUNmLEFBaEpULCtDUGlCSSxXSXdJb0IsQUp4SXBCLFdRQTRELEFSQTVELGNJK0VxQixBSi9FckIsZUlrRm9CLEFHZ0RaLGtCQUFvQixDQUl2QixBVnpGTCx5QlU5REosK0NQaUJJLGdCSXdJb0IsQUp4SXBCLFVRQTRELENEc0l2RCxBQXZKVCw4RFBpQkksbUJXb0Q2QixBWHBEN0IsV1laMEIsQVpZMUIsYWFnQitCLENGd0Q5QixBSnpGTCwrRFBpQkksc0JJd0lvQixBSnhJcEIsbUJXb0Q2QixBWHBEN0IsVVlKMEIsQ0Q0RXpCLENBQUEsQUp6Rkwsc0NQaUJJLFdZWjBCLEFaWTFCLGdCSXdJb0IsQUp4SXBCLFdRQTRELEFSQTVELHNCUzREd0IsQUY2RWhCLFVBQVksQ0FDZixBQTNKVCx5Q0E2SlksZUFBZ0IsQUFDaEIsYUFBZ0IsQVA3SXhCLGdCSXdJb0IsQUp4SXBCLFlRQXVFLEFSQXZFLGVJa0ZvQixBRzZEWixlQUFpQixDQVVwQixBQTFLVCwyQ0FrS2dCLGdCQUFrQixDQUNyQixBQW5LYixpREFxS2dCLGdCQUFrQixBQUNsQixnQkFBaUIsQUFDakIsZ0JBQW1CLEFBQ25CLFVaN0pXLENZOEpkLEFBektiLDhCQTZLUSxtQ0FBb0MsQUFDcEMsNENaL0prQixBWWdLbEIsb0JBQXFCLEFBQ3JCLGdCQUFrQixDQXNDckIsQVZ4SkQseUJVOURKLDhCQWtMWSxpQkFBbUIsQ0FvQzFCLENB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LEFHUnBCLG1CSG1Cc0IsQUdsQnRCLHFCQUFzQixBdUJGbEIsb0JBQXNCLENBQ3pCLEFBSkwsc0J2QlFRLFdIS21CLEFHSm5CLHlCSFdpQixDR1ZwQixBdUJWTCxnR3JCbUJJLGdCQ2xCd0IsQURrQnhCLGlCRXFEb0MsQUZyRHBDLGtCRXFEbUUsQW1CL0QvRCxpQkFBbUIsQ0FJdEIsQUFiTCxrSGxCWU0sWUFBYSxBQUNiLGNBQWUsQUFDZixVQUFZLENBQ2IsQU5pREQseUJ3QmhFSixnR3JCbUJJLGdCQ2Y0QixBRGU1QixpQkVxRG9DLEFGckRwQyxpQkVxRG1FLENtQjNEbEUsQUFiTCxrSGxCWU0sWUFBYSxBQUNiLGNBQWUsQUFDZixVQUFZLENBQ2IsQ0FBQSxBa0JmTCxpSUFXWSxrQkFBb0IsQ0FDdkIsQUFaVCxtQ3JCbUJJLFdJd0lvQixBSnhJcEIsV1FBNEQsQVJBNUQsY0krRXFCLEFKL0VyQixjSWtGb0IsQ2lCekVmLEF4Qm9DTCx5QndCaEVKLG1DckJtQkksZ0JJd0lvQixBSnhJcEIsV1FBNEQsQVJBNUQscUJTNER3QixDWW5EbkIsQUE1QlQsOENyQm1CSSxnQkl3SW9CLEFKeElwQixZUUF1RSxBUkF2RSxjSWtGb0IsQ2lCaEZQLEFBckJqQix5Q0F1Qm9CLFlBQWEsQUFDYixpQkFBa0IsQUFDbEIsZ0JBQWtCLENBQ3JCLENBQUEsQUExQmpCLHNDckJtQkksV0l3SW9CLEFKeElwQixXUUE0RCxBUkE1RCxjSStFcUIsQUovRXJCLGNJa0ZvQixDaUI3RGYsQXhCd0JMLHlCd0JoRUosc0NyQm1CSSxnQkl3SW9CLEFKeElwQixXUUE0RCxBUkE1RCxzQlM0RHdCLEFZNUNaLGtCQUFvQixDQUszQixBQXhDVCxxRHJCbUJJLGdCSXdJb0IsQUp4SXBCLFlRQXVFLEFSQXZFLGNJa0ZvQixDaUIvRFAsQ0FBQSxBQXRDakIsOElyQm1CSSxXSXdJb0IsQUp4SXBCLFdRQTRELEFSQTVELGNJK0VxQixBSi9FckIsY0lrRm9CLENpQnREZixBQS9DVCx1RUFpRFksa0JBQW9CLENBQ3ZCLEF4QmNMLHlCd0JoRUosdURB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bUUsQ3FCcERsRSxBQXBCTCx3Q3BCWU0sWUFBYSxBQUNiLGNBQWUsQUFDZixVQUFZLENBQ2IsQ0FBQSxBb0JmTCxxQ0FNWSxnQkFBaUIsQUFDakIsZUFBaUIsQ0FJcEIsQTFCcURMLHlCMEJoRUoscUNBU2dCLGdCQUFrQixDQUV6QixDQUFBLEFBWFQscUNBYVksY0FBZ0IsQ0FDbkIsQUFkVCx3Q3pCQ0ksb0NIS2tDLEFHTGxDLDRCSEtrQyxBR0psQyxrQkFBbUIsQUFDbkIseUJIU29CLEFHUnBCLG1CSG1Cc0IsQUdsQnRCLHFCQUFzQixBeUJZZCxxQkFBc0IsQUFDdEIsZUFBaUIsQ0FDcEIsQUFuQlQsOEN6QlFRLFdIS21CLEFHSm5CLHlCSFdpQixDR1ZwQixBMEJWTCwyQjFCQ0ksb0NIS2tDLEFHTGxDLDRCSEtrQyxBR0psQyxrQkFBbUIsQUFDbkIseUJIU29CLEFHUnBCLG1CSG1Cc0IsQUdsQnRCLHFCQUFzQixBMEJEZCxvQkFBc0IsQ0FDekIsQUFMVCxpQzFCUVEsV0hLbUIsQUdKbkIseUJIV2lCLENHVnBCLEEwQlZMLDZCeEJtQkksZ0JDbEJ3QixBRGtCeEIsaUJFcURvQyxBRnJEcEMsa0JFcURtRSxBc0JoRTNELGtCQUFtQixBQUNuQixtQkFBb0IsQUFDcEIsbUJBQXFCLENBS3hCLEFBZlQsbUNyQllNLFlBQWEsQUFDYixjQUFlLEFBQ2YsVUFBWSxDQUNiLEFOaURELHlCMkJoRUosNkJ4Qm1CSSxnQkNmNEIsQURlNUIsaUJFcURvQyxBRnJEcEMsaUJFcURtRSxDc0J6RDlELEFBZlQsbUNyQllNLFlBQWEsQUFDYixjQUFlLEFBQ2YsVUFBWSxDQUNiLENBQUEsQU5pREQseUIyQmhFSiw2QkFZZ0Isb0JBQXFCLEFBQ3JCLGtCQUFvQixDQUUzQixDQUFBLEFBZlQsbUNUQ0ksMENBQTZCLENTOEJ4QixBQS9CVCw2RXhCbUJJLFdJd0lvQixBSnhJcEIsV1FBNEQsQVJBNUQsY0krRXFCLEFKL0VyQixjSWtGb0IsQ29CakZYLEFBcEJiLHVDQXNCZ0IsZUFBaUIsQ0FPcEIsQTNCbUNULHlCMkJoRUosdUN4Qm1CSSxnQkl3SW9CLEFKeElwQixXUUE0RCxBUkE1RCxxQlM0RHdCLENlbERmLEFBN0JiLGtEeEJtQkksZ0JJd0lvQixBSnhJcEIsWVFBdUUsQVJBdkUsY0lrRm9CLENvQjFFSCxDQUFBLEFBM0JyQiwyQ1RDSSwwQ0FBNkIsQ1MyQ3hCLEFBNUNULDhDQWtDZ0IsZUFBZ0IsQUFDaEIsbUJBQXFCLENBSXhCLEEzQnlCVCx5QjJCaEVKLDhDQXFDb0IsY0FBZ0IsQ0FFdkIsQ0FBQSxBQXZDYix1REF5Q2dCLG9CQUFzQixDQUN6QixBQTFDYixnREErQ2dCLG1CQUFxQixDQUN4QixBQWhEYixtREFtRGdCLGVBQWlCLENBQ3BCLEFDcERiLGtCQUVRLGdEQUFxQixBQUNyQiw0QkFBNkIsQUFDN0IsNkJBQThCLEFBQzlCLDRCQUE2QixBQUM3QixjQUFnQixDQXFEbkIsQTVCS0QseUI0QmhFSixrQkFRWSw2QkFBOEIsQUFDOUIsMkJBQTZCLENBa0RwQyxDQUFBLEFBM0RMLDBCekJtQkksZ0JDbEJ3QixBRGtCeEIsaUJFcURvQyxBRnJEcEMsaUJFcURtRSxDdUIzRDlELEFBYlQsZ0N0QllNLFlBQWEsQUFDYixjQUFlLEFBQ2YsVUFBWSxDQUNiLEFOaURELHlCNEJoRUosMEJ6Qm1CSSxnQkNmNEIsQURlNUIsaUJFcURvQyxBRnJEcEMsaUJFcURtRSxDdUIzRDlELEFBYlQsZ0N0QllNLFlBQWEsQUFDYixjQUFlLEFBQ2YsVUFBWSxDQUNiLENBQUEsQXNCZkwsZ0NBZVksaUJBQW1CLENBQ3RCLEE1QmdETCx5QjRCaEVKLHlFQXFCb0IsZUFBZ0IsQUFDaEIsZ0JBQWtCLENBRXpCLENBQUEsQUF4QmIseUVBMEJnQixnQkFBaUIsQUFDakIsbUJBQW9CLEFBQ3BCLGlCQUFtQixDQXVCdEIsQTVCYVQseUI0QmhFSix5RXpCbUJJLGdCSXdJb0IsQUp4SXBCLFdRQTRELEFpQlk1QyxXQUFhLENBb0JwQixBQW5EYix5R3pCbUJJLG1CV29ENkIsQVhwRDdCLFdZWjBCLEFaWTFCLGFhZ0IrQixDRndEOUIsQWMzRkwseUd6Qm1CSSxzQkl3SW9CLEFKeElwQixtQldvRDZCLEFYcEQ3QixVWUowQixDRDRFekIsQWMzRkwseUd6Qm1CSSxzQkl3SW9CLEFKeElwQixtQldvRDZCLEFYcEQ3QixVWUowQixDRDRFekIsQ0FBQSxBYzNGTCxtRkFrQ29CLGNBQWUsQUFDZixpQkFBbUIsQ0FldEIsQUFsRGpCLDJHQXFDd0IsZ0JBQWlCLEFBQ2pCLGVBQWdCLEFBQ2hCLGlCQUFtQixDQUN0QixBQXhDckIsaUhBMEN3QixlQUFnQixBQUNoQixlQUFnQixBQUNoQixnQkFBa0IsQ0FDckIsQUE3Q3JCLHVGQStDd0IscUJBQXNCLEFBQ3RCLGE5QnBDQSxDOEJxQ0gsQUFqRHJCLHVDSENJLGlCQUFtQixDR3dEVixBNUJPVCx5QjRCaEVKLHVDSE1RLGdCQUFrQixDR21EYixDQUFBLEE1Qk9ULHlCNEJoRUosMkZIV1ksV0FBWSxBQUNaLDJDQUE2QixBQUM3QixZQVZrQixBQVdsQixlQUFpQixDQU94QixDQUFBLEF6QjJDRCx5QjRCaEVKLDhDSHdCWSxVQUFZLENBRW5CLENBQUEsQXpCc0NELHlCNEJoRUosNkNINkJZLFdBQWEsQ0FFcEIsQ0FBQSxBSS9CTCx3QjFCbUJJLGdCQ2xCd0IsQURrQnhCLGlCRXFEb0MsQUZyRHBDLGlCRXFEbUUsQ3dCckVsRSxBQUhMLDhCdkJZTSxZQUFhLEFBQ2IsY0FBZSxBQUNmLFVBQVksQ0FDYixBTmlERCx5QjZCaEVKLHdCMUJtQkksZ0JDZjRCLEFEZTVCLGlCRXFEb0MsQUZyRHBDLGlCRXFEbUUsQ3dCckVsRSxBQUhMLDhCdkJZTSxZQUFhLEFBQ2IsY0FBZSxBQUNmLFVBQVksQ0FDYixDQUFBLEF1QmZMLDJCQUtRLGlCQUFtQixDQUN0QixBakNndEVMLGdCT25zRUksZ0JDbEJ3QixBRGtCeEIsZ0JFcURvQyxDd0JldkMsQWpDcW9FQyxzQlVodEVJLFlBQWEsQUFDYixjQUFlLEFBQ2YsVUFBWSxDQUNiLEFOaURELHlCSmlxRUEsZ0JPOXNFQSxnQkNmNEIsQURlNUIsaUJFcURvQyxBRnJEcEMsaUJFcURtRSxDd0JldEUsQWpDOG9FSyxzQlV6dEVBLFlBQWEsQUFDYixjQUFlLEFBQ2YsVUFBWSxDQUNiLENBQUEsQVYwdEVILDJCT3R0RUUsZUV1Q2UsQUZ2Q2YsaUJFcURvQyxBRnJEcEMsa0JFcURtRSxBd0IxRC9ELG1CQUFxQixDQU94QixBakN5dEVELGlDVWx1RUUsWUFBYSxBQUNiLGNBQWUsQUFDZixVQUFZLENBQ2IsQVZtdUVELDRDc0JqdkVBLDBDQUE2QixDV2dCeEIsQTdCK0NMLHlCSnFyRUUsMkJpQ2x1RU0sZ0JBQWtCLENBRXpCLENBQUEsQWpDa3VFSCxpQ09wdUVFLGVFdUNlLEFGdkNmLGlCRXFEb0MsQUZyRHBDLGlCRXFEbUUsQ3dCN0NsRSxBakNndUVELHVDVS91RUUsWUFBYSxBQUNiLGNBQWUsQUFDZixVQUFZLENBQ2IsQVZndkVELDhDaUN0dUVRLFVBQVksQ0FDZixBN0JzQ0wseUJKa3NFQSx5QmlDcHVFUSxVQUFZLENBRW5CLENBQUEsQWpDb3VFSCx1Q2lDanVFVSxlQUFnQixBMUJoQnhCLGdCSXdJb0IsQUp4SXBCLFVRQTRELENrQnFCdkQsQWpDZ3VFTCxtRGlDbHVFWSxVQUFZLENBQ2YsQWpDbXVFWCxrQ2lDL3RFTSxXQUFZLEFBQ1osaUNBQWlCLEFBQWpCLHlCQUFpQixBQUNqQixnQ0FBeUIsQUFBekIsd0JBQXlCLEFBQ3pCLGVBQWlCLENBSXBCLEFqQzZ0RUQsdUNpQy90RVEsK0JBQWlCLEFBQWpCLHNCQUFpQixDQUNwQixBakNndUVQLG1CaUM3dEVNLGtCQUFvQixDQUl2QixBakMydEVELHFCaUM3dEVRLG9CQUFzQixDQUN6QixBakM4dEVQLGtCaUMzdEVNLGNBQWdCLENBQ25CLEFqQzR0RUgsa0NpQzF0RU0saUJBQW1CLENBQ3RCLEFqQzJ0RUgsc0JLeHhFRSxvQ0hLa0MsQUdMbEMsNEJIS2tDLEFHSmxDLGtCQUFtQixBQUNuQix5QkhTb0IsQUdScEIsbUJIbUJzQixBR2xCdEIscUJBQXNCLEE0QjREbEIscUJBQXNCLEFBQ3RCLFdBQWEsQ0FZaEIsQWpDbXRFRCw0Qkt6eEVJLFdIS21CLEFHSm5CLHlCSFdpQixDR1ZwQixBRHNERCx5QkpxdUVFLHNCaUNqdUVNLFlBQWEsQUFDYixlQUFpQixDQVN4QixDQUFBLEFqQzB0RUQsb0NpQ2h1RVEsZUFBaUIsQ0FLcEIsQTdCYkwseUJKMnVFSSxvQ2lDanVFUSxnQkFBaUIsQUFDakIsaUJBQW1CLENBRTFCLENBQUEsQWpDaXVFUCx5QmlDOXRFTSxhQUFjLEFBQ2QsZUFBZ0IsQTFCOURwQixlRXVDZSxBRnZDZixpQkVxRG9DLEFGckRwQyxpQkVxRG1FLEN3QmNsRSxBakM4dEVELCtCVXh5RUUsWUFBYSxBQUNiLGNBQWUsQUFDZixVQUFZLENBQ2IsQVZ5eUVELDRCeUIveUVBLGNBQWUsQUFDZixjQUFlLEFBQ2YsZUFBZ0IsQUFDaEIsZUFBaUIsQ1F5RVosQWpDd3VFSCwrQnlCL3lFRSxpQkFBbUIsQ0FNdEIsQXpCMnlFRyxzQ3lCL3lFSSxZQUFTLEFBQ1QsbUJBQW9CLEFBQ3BCLGtCQUFxQixDQUN4QixBU2RULDRCM0JjSSxnQkNsQndCLEFEa0J4QixpQkVxRG9DLEFGckRwQyxpQkVxRG1FLEN5QnZEMUQsQUFaYixrQ3hCT00sWUFBYSxBQUNiLGNBQWUsQUFDZixVQUFZLENBQ2IsQU5pREQseUI4QjNESiw0QjNCY0ksZ0JDZjRCLEFEZTVCLGlCRXFEb0MsQUZyRHBDLGlCRXFEbUUsQ3lCdkQxRCxBQVpiLGtDeEJPTSxZQUFhLEFBQ2IsY0FBZSxBQUNmLFVBQVksQ0FDYixDQUFBLEF3QlZMLGtDN0JKSSxvQ0hLa0MsQUdMbEMsNEJIS2tDLEFHSmxDLGtCQUFtQixBQUNuQix5QkhTb0IsQUdScEIsbUJIbUJzQixBR2xCdEIscUJBQXNCLEE2Qk1OLHFCQUFzQixBQUN0QixpQkFBbUIsQ0FDdEIsQUFSakIsd0M3QkdRLFdIS21CLEFHSm5CLHlCSFdpQixDR1ZwQixBNkJMTCw4QkFVb0IsYWhDSEksQ2dDSVAsQUFYakIsNkJBaUJZLGlCQUFtQixDQUN0QixBOUJ5Q0wseUI4QjNESixzRDNCY0ksZ0JJd0lvQixBSnhJcEIsV1FBNEQsQVJBNUQsc0JTNER3QixBVDVEeEIsc0JJd0lvQixBdUI3SFIsaUJBQW1CLENBd0IxQixDQUFBLEFBakRULDBEQTRCZ0Isa0JBQW9CLENBQ3ZCLEFBN0JiLHlEQStCZ0IsY0FBZ0IsQ0FDbkIsQUFoQ2IsaUVBa0NnQixlQUFnQixBQUNoQixpQkFBa0IsQUFDbEIsaUJBQWtCLEFBQ2xCLGtCQUFvQixDQUN2QixBQXRDYiw0REF3Q2dCLGFBQWMsQUFDZCxrQkFBbUIsQUFDbkIsV0FBWSxBQUNaLGtCQUFvQixDQUt2QixBOUJXVCx5QjhCM0RKLDREQTZDb0Isa0JBQW1CLEFBQ25CLFNBQVcsQ0FFbEIsQ0FBQSxBQWhEYiw0Q0FvRFEsZUFBaUIsQ0FrQnBCLEFBdEVMLGlJQXdEWSxnQkFBaUIsQTNCMUN6QixXSXdJb0IsQUp4SXBCLFdRQTRELEFSQTVELGNJK0VxQixBSi9FckIsY0lrRm9CLEN1QmhDZixBOUJMTCx5QjhCM0RKLGlJM0JjSSxnQkl3SW9CLEFKeElwQixXUUE0RCxBUkE1RCxxQlM0RHdCLENrQlZuQixDQUFBLEFBaEVULHVJVElJLGNBQWUsQUFDZixjQUFlLEFBQ2YsZUFBZ0IsQUFDaEIsZUFBaUIsQ1N3RFIsQVR2RFQsNklBQ0ksaUJBQW1CLENBTXRCLEFBUEQsMkpBR1EsWUFBUyxBQUNULG1CQUFvQixBQUNwQixrQkFBcUIsQ0FDeEIsQXJCNkNMLHlCOEIzREosaUUzQmNJLGdCSXdJb0IsQUp4SXBCLFlRQXVFLEFSQXZFLGNJa0ZvQixDdUIzQmYsQ0FBQSxBQXJFVCw0QkF3RVEsZUFBaUIsQ0FrQnBCLEFBMUZMLCtCTEpJLGlCQUFtQixDS2dGZCxBOUJqQkwseUI4QjNESiwrQkxDUSxnQkFBa0IsQ0syRWpCLENBQUEsQTlCakJMLHlCOEIzREosMkVMTVksV0FBWSxBQUNaLDJDQUE2QixBQUM3QixZQVZrQixBQVdsQixlQUFpQixDQU94QixDQUFBLEF6QjJDRCx5QjhCM0RKLHNDTG1CWSxVQUFZLENBRW5CLENBQUEsQXpCc0NELHlCOEIzREoscUNMd0JZLFdBQWEsQ0FFcEIsQ0FBQSxBSzFCTCxvQ0E4RVksZ0JBQWlCLEFBQ2pCLGtCQUFtQixBM0JqRTNCLFdJd0lvQixBSnhJcEIsV1FBNEQsQVJBNUQsY0krRXFCLEFKL0VyQixjSWtGb0IsQ3VCWmYsQTlCekJMLHlCOEIzREosb0MzQmNJLGdCSXdJb0IsQUp4SXBCLFdRQTRELEFSQTVELHFCUzREd0IsQ2tCVW5CLENBQUEsQTlCekJMLHlCOEIzREosaUQzQmNJLGdCSXdJb0IsQUp4SXBCLFlRQXVFLEFSQXZFLGNJa0ZvQixDdUJQZixDQUFBLEFBekZULCtCTEpJLGlCQUFtQixDS2tHZCxBOUJuQ0wseUI4QjNESiwrQkxDUSxnQkFBa0IsQ0s2RmpCLENBQUEsQTlCbkNMLHlCOEIzREosMkVMTVksV0FBWSxBQUNaLDJDQUE2QixBQUM3QixZQVZrQixBQVdsQixlQUFpQixDQU94QixDQUFBLEF6QjJDRCx5QjhCM0RKLHNDTG1CWSxVQUFZLENBRW5CLENBQUEsQXpCc0NELHlCOEIzREoscUNMd0JZLFdBQWEsQ0FFcEIsQ0FBQSxBSzFCTCxxQ0FnR1ksZUFBaUIsQ0E2QnBCLEFBN0hULDRDQWtHZ0IsbUJBQW9CLEFBQ3BCLGlCQUFtQixDQXlCdEIsQTlCakVULHlCOEIzREosNEMzQmNJLGdCSXdJb0IsQUp4SXBCLFVRQTRELENtQjhHbkQsQUE1SGIsNEQzQmNJLG1CV29ENkIsQVhwRDdCLFdZWjBCLEFaWTFCLGFhZ0IrQixDRndEOUIsQWdCdEZMLDREM0JjSSxzQkl3SW9CLEFKeElwQixtQldvRDZCLEFYcEQ3QixVWUowQixDRDRFekIsQWdCdEZMLDREM0JjSSxzQkl3SW9CLEFKeElwQixtQldvRDZCLEFYcEQ3QixVWUowQixDRDRFekIsQ0FBQSxBZ0J0RkwsZ0RBd0dvQixvQkFBcUIsQUFDckIsWUFBYyxDQUNqQixBQTFHakIsaURBNEdvQixnQkFBaUIsQUFDakIsYUFBZSxDQUlsQixBQWpIakIsK0RBK0d3QixlQUFrQixDQUNyQixBQWhIckIsa0RBbUhvQixnQkFBaUIsQUFDakIsa0JBQW1CLEFBQ25CLFVBQVksQ0FNZixBOUJoRWIseUI4QjNESixrREF1SHdCLGtCQUFtQixBQUNu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ZixVQUFZLENBQ2IsQ0FBQSxBVitwRkgsZ0NPM3BGRSxXSXdJb0IsQUp4SXBCLFdRQTRELEFSQTVELGNJK0VxQixBSi9FckIsY0lrRm9CLEN5QnJCbkIsQWhDaEJELHlCSm9uRkUsZ0NvQ25xRk0sa0JBQW9CLENBK0QzQixDQUFBLEFoQ2hCRCx5Qkp1bkZFLDJDb0NscUZVLGtCQUFvQixDQUUzQixDQUFBLEFoQ3lDTCx5QkowbkZFLGdDT3ZxRkYsZ0JJd0lvQixBSnhJcEIsV1FBNEQsQVJBNUQscUJTNER3QixDb0JDdkIsQXBDOG1GRywyQ08zcUZKLGdCSXdJb0IsQUp4SXBCLFlRQXVFLEFSQXZFLGNJa0ZvQixDeUJ6RVgsQ0FBQSxBcENzcUZULGtDb0NucUZRLGtCQUFvQixDQUN2QixBcENvcUZMLHdDb0NscUZRLGNBQWlCLEFBQ2pCLGtCQUFvQixDQUN2QixBcENtcUZMLHVDb0NocUZRLGtCQUFtQixBQUNuQixtQkFBb0IsQUFDcEIsYUFIcUIsQUFJckIsa0JBSnFCLEFBS3JCLFdBQWEsQ0FTaEIsQWhDWUwseUJKOG9GSSx1Q29DanFGUSxXQUFhLENBT3BCLENBQUEsQXBDNHBGSCwyQ29DaHFGVSxlQUFnQixBQUNoQixnQkFBaUIsQUFDakIscUJBQXVCLENBQzFCLEFoQ2FULHlCSnFwRkUseURvQzdwRmMsYUFBYyxBQUNkLGlCQUFtQixDQU8xQixDQUFBLEFoQ0FULHlCSnlwRkUsNkRvQzVwRmtCLFlBQWMsQ0FDakIsQ0FBQSxBcEM2cEZqQixnRG9DdnBGWSxXQUFhLENBQ2hCLEFwQ3dwRlQsMkRvQ3BwRlksV0FBYSxDQUtoQixBaENkVCx5QkpncUZJLDJEb0NwcEZZLGlCQUFtQixDQUUxQixDQUFBLEFEakViLG1CQUVRLGVBQWlCLENBQ3BCLEFBSEwsc0I1Qk1JLGdCQ2xCd0IsQURrQnhCLGlCRXFEb0MsQUZyRHBDLGlCRXFEbUUsQzBCckRsRSxBQU5MLDRCekJETSxZQUFhLEFBQ2IsY0FBZSxBQUNmLFVBQVksQ0FDYixBTmlERCx5QitCbkRKLHNCNUJNSSxnQkNmNEIsQURlNUIsaUJFcURvQyxBRnJEcEMsaUJFcURtRSxDMEJyRGxFLEFBTkwsNEJ6QkRNLFlBQWEsQUFDYixjQUFlLEFBQ2YsVUFBWSxDQUNiLENBQUEsQXlCRkwsNEJBU1EsaUJBQW1CLENBQ3RCLEFBVkwsMEJBY1ksb0pBR21CLEFBSG5CLCtJQUdtQixBQUNuQiwrQ0FHYyxBQUVkLDZDQUdjLEFBRWQscUNBR1MsQUFFVCxpQkFBbUIsQ0FZMUIsQS9CTUQseUIrQm5ESiwwQkFtQ2dCLDZDQUdjLEFBQ2QsK0NBR2MsQUFDZCxpQkFBbUIsQ0FFOUIsQ0FBQSxBQTdDTCxzQkFnRFEsaUJBQW1CLENBZ0l0QixBQWhMTCx5QkFrRFksZUFBaUIsQ0FDcEIsQS9CQUwseUIrQm5ESiw4QkFzRGdCLGFBQWUsQ0FFdEIsQ0FBQSxBQXhEVCx3QkEwRFksd0JqQ3ZEUyxDaUM0RFosQS9CWkwseUIrQm5ESix3QjVCTUksZ0JJd0lvQixBSnhJcEIsV1FBNEQsQVJBNUQsc0JTNER3QixBVDVEeEIscUJJd0lvQixDd0IvRWYsQ0FBQSxBQS9EVCxnQzVCTUksVzRCNEQwQixBNUI1RDFCLFdRQTRELEFSQTVELHNCUzREd0IsQW1CQ2hCLG1CQUFvQixBQUNwQixlQUFpQixDQXdFcEIsQUE1SVQsZ0RBc0VnQixZQUFhLEFBQ2IsWUFBa0IsQUFDbEIscUJBQXNCLEFBQ3RCLGdCQUFrQixDQWtFckIsQS9CeEZULHlCK0JuREosZ0Q1Qk1JLGdCSXdJb0IsQUp4SXBCLFVRQTRELENvQnFJbkQsQUEzSWIsZ0U1Qk1JLG1CV29ENkIsQVhwRDdCLFdZWjBCLEFaWTFCLGFhZ0IrQixDRndEOUIsQWlCOUVMLGdFNUJNSSxzQkl3SW9CLEFKeElwQixtQldvRDZCLEFYcEQ3QixVWUowQixDRDRFekIsQWlCOUVMLGdFNUJNSSxzQkl3SW9CLEFKeElwQixtQldvRDZCLEFYcEQ3QixVWUowQixDRDRFekIsQWlCOUVMLGdFNUJNSSxzQkl3SW9CLEFKeElwQixtQldvRDZCLEFYcEQ3QixVWUowQixDRDRFekIsQWlCOUVMLGdFNUJNSSxzQkl3SW9CLEFKeElwQixtQldvRDZCLEFYcEQ3QixVWUowQixDRDRFekIsQWlCOUVMLGdFNUJNSSxzQkl3SW9CLEFKeElwQixtQldvRDZCLEFYcEQ3QixVWUowQixDRDRFekIsQ0FBQSxBaUI5RUwsOERBK0V3QixtQkFBb0IsQUFDcEIsa0JBQW1CLEFBQ25CLDBDQUF5QyxBQUF6QyxrQ0FBeUMsQUFDekMsdUNBQWdDLEFBQWhDLCtCQUFnQyxBQUNoQywrQkFBd0IsQUFBeEIsc0JBQXdCLENBQzNCLEFBcEZyQiw2REFzRndCLFVBQVcsQUFDWCxvQ0FBNkIsQUFBN0IsNEJBQTZCLEFBQzdCLGlDQUEwQixBQUExQix3QkFBMEIsQ0FDN0IsQUF6RnJCLGtEQTRGb0Isa0JBQW1CLEFBQ25CLGtCQUFtQixBQUNuQixnQkFBa0IsQ0FDckIsQUEvRmpCLHdEQWlHb0IsWUFBYSxBQUNiLGFBQWMsQUFDZCxpQkFBa0IsQUFDbEIscUJBQXNCLEFBQ3RCLGtCQUFtQixBQUNuQixrQkFBbUIsQUFDbkIsc0JBQWlDLEFBQ2pDLDZCQUFnQixBQUFoQixvQkFBZ0IsQ0FDbkIsQUF6R2pCLHVEQTJHbUIsd0JBQW1DLEFBQ2xDLDJCQUFnQixBQUFoQixtQkFBZ0IsQUFDaEIsWUFBYSxBQUNiLGFBQWMsQUFDZCwwQkFBMkIsQUFDM0IsVUFBVyxBQUNYLG9DQUE2QixBQUE3Qiw0QkFBNkIsQUFDN0IsK0JBQXdCLEFBQXhCLHNCQUF3QixDQU8zQixBQXpIakIseURBb0h3Qiw4QkFBZ0MsQ0FDbkMsQUFySHJCLDZEQXVId0IsNEJBQWdDLENBQ25DLEFBeEhyQix5REE0SG9CLDZCQUFnQixBQUFoQixvQkFBZ0IsQ0FDbkIsQUE3SGpCLDREQWtJNEIsOENBQXFCLENBQ3hCLEFBbkl6QiwyREFxSTRCLDZDQUFxQixBQUNyQiwyQkFBNkIsQ0FDaEMsQUF2SXpCLDBEQWtJNEIsNENBQXFCLENBQ3hCLEFBbkl6Qix5REFxSTRCLDJDQUFxQixBQUNyQiwyQkFBNkIsQ0FDaEMsQUF2SXpCLDhEQWtJNEIsZ0RBQXFCLENBQ3hCLEFBbkl6Qiw2REFxSTRCLCtDQUFxQixBQUNyQiwyQkFBNkIsQ0FDaEMsQUF2SXpCLDBEQWtJNEIsNENBQXFCLENBQ3hCLEFBbkl6Qix5REFxSTRCLDJDQUFxQixBQUNyQiwyQkFBNkIsQ0FDaEMsQUF2SXpCLDZEQWtJNEIsK0NBQXFCLENBQ3hCLEFBbkl6Qiw0REFxSTRCLDhDQUFxQixBQUNyQiwyQkFBNkIsQ0FDaEMsQUF2SXpCLDBEQWtJNEIsNENBQXFCLENBQ3hCLEFBbkl6Qix5REFxSTRCLDJDQUFxQixBQUNyQiwyQkFBNkIsQ0FDaEMsQUF2SXpCLHFDQStJWSxpQkFBa0IsQUFDbEIsb0JBQXFCLEE1QjFJN0IsVzRCMkkwQixBNUIzSTFCLFdRQTRELEFSQTVELHFCUzREd0IsQ21CNkduQixBL0I1SEwseUIrQm5ESixxQ0FtSmdCLG9CQUFxQixBQUNyQix3Q0FBMEIsQ0EyQmpDLENBQUEsQUEvS1QsdUNBdUpnQixxQkFBc0IsQUFDdEIsbUJBQXFCLENBQ3hCLEFBekpiLDRDQTJKZ0IsNkJBQWdCLEFBQWhCLHFCQUFnQixBQUNoQixtQkFBcUIsQ0FrQnhCLEEvQjNIVCx5QitCbkRKLDRDQThKb0IscUJBQXNCLEFBQ3RCLFlBQWEsQUFDYiwyQkFBZ0IsQUFBaEIsa0JBQWdCLENBY3ZCLENBQUEsQUE5S2IsZ0RBbUtvQixtQkFBb0IsQUFDcEIsbUJBQXFCLENBQ3hCLEFBcktqQiw2REF1S29CLGNBQWUsQUFDZixlQUFrQixDQUNyQixBQXpLakIsNEhBNEtvQix5QmpDeEtNLENpQ3lLVCxBQTdLakIsZ0NBbUxRLG1CQUFvQixBQUNwQixpQkFBbUIsQ0FnRnRCLEFBcFFMLGtDQXNMWSxhakN2TFksQ2lDK0xmLEEvQjNJTCx5QitCbkRKLGtDQXdMZ0IsaUJBQWtCLEFBQ2xCLGtCQUFvQixDQUszQixDQUFBLEEvQjNJTCx5QitCbkRKLGtDQTRMZ0IsY0FBZ0IsQ0FFdkIsQ0FBQSxBQTlMVCwwRDVCTUksZ0JDbEJ3QixBRGtCeEIsaUJFcURvQyxBRnJEcEMsa0JFcURtRSxBMEJ1STNELGdCQUFrQixDQTBDckIsQUE1T1QsZ0V6QkRNLFlBQWEsQUFDYixjQUFlLEFBQ2YsVUFBWSxDQUNiLEFOaURELHlCK0JuREosMEQ1Qk1JLGdCQ2Y0QixBRGU1QixpQkVxRG9DLEFGckRwQyxpQkVxRG1FLEMwQmlMOUQsQUE1T1QsZ0V6QkRNLFlBQWEsQUFDYixjQUFlLEFBQ2YsVUFBWSxDQUNiLENBQUEsQU5pREQseUIrQm5ESiwwREFvTWdCLGlCQUFrQixBQUNsQixZQUFjLENBdUNyQixDQUFBLEFBNU9ULGlGQXdNZ0IsbUJBQXFCLENBbUN4QixBL0J4TFQseUIrQm5ESixpRkEwTW9CLGdCQUFpQixBQUNqQixZQUFhLEFBQ2IsZUFBdUIsQ0ErQjlCLENBQUEsQUEzT2Isd0ZBK01vQixlQUFpQixDQUNwQixBQWhOakIsdUZBa05vQixnQkFBa0IsQ0FjckIsQUFmRCwrRkFHUSxnQkFBa0IsQ0FDckIsQS9CbEtqQix5QitCbkRKLHVGQXVOd0IsWUFBYSxBQUNiLFdBQVksQUFDWixlQUFpQixDQU94QixDQUFBLEEvQjdLYix5QitCbkRKLDBGQTZONEIsY0FBZ0IsQ0FFdkIsQ0FBQSxBQS9OckIsNkZBa09vQixlQUFtQixDQVF0QixBQTFPakIsK0ZBb093QixjakNyT0EsQWlDc09BLGdCQUFpQixBQUNqQix5QkFBMEIsQUFDMUIsZUFBZ0IsQUFDaEIsZUFBdUIsQ0FDMUIsQUF6T3JCLHdEQThPWSxjQUFnQixDQXFCbkIsQUFuUVQsd0VBZ1BnQixnQkFBaUIsQUFDakIsVUFBWSxDQWlCZixBL0IvTVQseUIrQm5ESix3RUFtUG9CLFlBQWEsQUFDYixpQkFBbUIsQ0FjMUIsQ0FBQSxBQWxRYiw0RUF1UG9CLFlBQWEsQUFDYixZQUFhLEFBQ2Isa0JBQW9CLENBUXZCLEEvQjlNYix5QitCbkRKLDRFQTJQd0IsV0FBWSxBQUNaLFNBQVUsQUFDVixrQkFBbUIsQUFDbkIsa0JBQW1CLEFBQ25CLFdBQWEsQ0FFcEIsQ0FBQSxBQWpRakIsc0NBd1FRLGVBQWdCLEFBQ2hCLGdCQUFrQixBQUNsQix5RkFBZ0MsQUFBaEMsaUVBQWdDLEFBQWhDLHdEQUFnQyxDQXNCbkMsQUFoU0wscUVBOFFnQix3QmpDM1FLLENpQzRRUixBQS9RYix1RUFpUmdCLGtCQUFvQixDQU12QixBL0JwT1QseUIrQm5ESix1RTVCTUksZ0JJd0lvQixBSnhJcEIsV1FBNEQsQVJBNUQsc0JTNER3QixBVDVEeEIsdUJJd0lvQixBd0J1SUosbUJBQXFCLENBRTVCLENBQUEsQUF2UmIsNkZBeVJnQixpQkFBbUIsQ0FLdEIsQS9CM09ULHlCK0JuREosNkZBMlJvQixnQkFBaUIsQTVCclJqQyxnQkl3SW9CLEFKeElwQixZUUF1RSxBUkF2RSxjSWtGb0IsQ3dCc01YLENBQUEsQUE5UmIsdUNBbVNRLG1CQUFxQixDQThCeEIsQS9COVFELHlCK0JuREosdUNBcVNZLGlCQUFrQixBQUNsQixhQUFjLEFBQ2QsZ0JBQW9CLENBMEIzQixDQUFBLEFBalVMLHFEQTBTWSxnQkFBaUIsQUFDakIsV0FBYSxDQVFoQixBL0JoUUwseUIrQm5ESixxREE2U2dCLGtCQUFtQixBQUNuQixZQUFhLEFBQ2IsaUJBQWtCLEFBQ2xCLG1CQUFvQixBQUNwQixRQUFVLENBRWpCLENBQUEsQUFuVFQsaUVBc1RZLGlCQUFtQixDQVV0QixBL0I3UUwseUIrQm5ESixpRTVCTUksZ0JJd0lvQixBSnhJcEIsV1FBNEQsQVJBNUQsc0JTNER3QixBbUJ1UFosZUFBaUIsQ0FPeEIsQ0FBQSxBL0I3UUwseUIrQm5ESixtRUE2VG9CLGdCQUFrQixDQUV6QixDQUFBLEFBL1RiLDBCQW9VUSxpQkFBa0IsQUFDbEIsb0JBQXFCLEFBQ3JCLHlCQUFnQixDQStGbkIsQUFyYUwsaURBMFVnQixpQkFBbUIsQ0FDdEIsQS9CeFJULHlCK0JuREosaUU1Qk1JLGdCSXdJb0IsQUp4SXBCLFdRQTRELEFSQTVELHFCUzREd0IsQ21Cb1NmLENBQUEsQUF0V2Isd0VBaVZvQixpQkFBbUIsQ0FPdEIsQS9CclNiLHlCK0JuREosd0VBbVZ3QixpQkFBbUIsQ0FLMUIsQ0FBQSxBQXhWakIsb0ZBc1Z3QixrQkFBb0IsQ0FDdkIsQS9CcFNqQix5QitCbkRKLHFFQTJWd0IsWUFBYSxBQUNiLG1CQUFvQixBQUNwQixnQkFBaUIsQUFDakIsd0JBQWlCLEFBQWpCLGdCQUFpQixBQUNqQixRQUFVLENBRWpCLENBQUEsQUFqV2pCLDRFQW1Xb0Isa0JBQW1CLEFBQ25CLGNBQWdCLENBQ25CLEEvQmxUYix5QitCbkRKLCtENUJNSSxnQkl3SW9CLEFKeElwQixZUUF1RSxBUkF2RSxjSWtGb0IsQ3dCMlVYLENBQUEsQUFuYWIsc0U1Qk1JLFc0QnNXa0MsQTVCdFdsQyxXUUE0RCxBUkE1RCxxQlM0RHdCLENtQm9VWCxBQXRZakIsMEU1Qk1JLFc0QndXc0MsQTVCeFd0QyxXUUE0RCxBUkE1RCxzQlM0RHdCLEFtQjZTSixtQkFBcUIsQ0FJeEIsQS9CaFVqQix5QitCbkRKLDBFQWlYNEIsbUJBQXFCLENBRTVCLENBQUEsQUFuWHJCLG9GQXFYd0Isb0JBQXFCLEFBQ3JCLGVBQWlCLENBTXBCLEEvQnpVakIseUIrQm5ESixvRkF3WDRCLG1CQUFvQixBQUNwQixnQkFBaUIsQTVCblh6QyxnQkl3SW9CLEFKeElwQixVUUE0RCxDb0JzWDNDLEFBNVhyQixtRzVCTUksbUJXb0Q2QixBWHBEN0IsV1laMEIsQVpZMUIsYWFnQitCLENGd0Q5QixBaUI5RUwsb0c1Qk1JLHNCSXdJb0IsQUp4SXBCLG1CV29ENkIsQVhwRDdCLFVZSjBCLENENEV6QixDQUFBLEFpQjlFTCxtRkE4WHdCLGNBQWUsQUFDZixlQUFpQixDQU1wQixBL0JsVmpCLHlCK0JuREosbUZBaVk0QixxQkFBc0IsQUFDdEIsZ0JBQWlCLEE1QjVYekMsZ0JJd0lvQixBSnhJcEIsVVFBNEQsQ29CK1gzQyxBQXJZckIsa0c1Qk1JLG1CV29ENkIsQVhwRDdCLFdZWjBCLEFaWTFCLGFhZ0IrQixDRndEOUIsQWlCOUVMLG1HNUJNSSxzQkl3SW9CLEFKeElwQixtQldvRDZCLEFYcEQ3QixVWUowQixDRDRFekIsQ0FBQSxBaUI5RUwsMkU1Qk1JLFc0QmtZa0MsQTVCbFlsQyxXUUE0RCxBUkE1RCxzQlM0RHdCLEFtQnVVUixlQUFpQixDQXlCcEIsQS9CL1diLHlCK0JuREosZ0w1Qk1JLGdCSXdJb0IsQUp4SXBCLFVRQTRELENvQjJaM0MsQUFqYXJCLDhNNUJNSSxtQldvRDZCLEFYcEQ3QixXWVowQixBWlkxQixhYWdCK0IsQ0Z3RDlCLEFpQjlFTCxnTjVCTUksc0JJd0lvQixBSnhJcEIsbUJXb0Q2QixBWHBEN0IsVVlKMEIsQ0Q0RXpCLENBQUEsQWlCOUVMLG9MQWdaNEIsZ0JBQWtCLEFBQ2xCLFVBQWEsQ0FDaEIsQUFsWnpCLHNMVkpJLGNBQWUsQUFDZixjQUFlLEFBQ2YsZUFBZ0IsQUFDaEIsZUFBaUIsQ1VpYUksQVZoYXJCLDRMQUNJLGlCQUFtQixDQU10QixBQVBELDBNQUdRLFlBQVMsQUFDVCxtQkFBb0IsQUFDcEIsa0JBQXFCLENBQ3hCLEFVTlQsNExBdVpnQyxjQUFlLEFBQ2YsaUJBQW1CLENBT3RCLEEvQjVXekIseUIrQm5ESiw0TEEwWm9DLGtCQUFvQixDQUszQixDQUFBLEFBL1o3QiwwTUE2Wm9DLFlBQWMsQ0FDakIsQUE5WmpDLHFDQXVhUSxzQkFBd0IsQ0FDM0IsQS9CclhELHlCaUNoRUoseUJBSWdCLGNBQWdCLENBRXZCLENBQUEsQUFOVCw4QjlCbUJJLGdCQ2xCd0IsQURrQnhCLGlCRXFEb0MsQUZyRHBDLGlCRXFEbUUsQzRCL0Q5RCxBQVRULG9DM0JZTSxZQUFhLEFBQ2IsY0FBZSxBQUNmLFVBQVksQ0FDYixBTmlERCx5QmlDaEVKLDhCOUJtQkksZ0JDZjRCLEFEZTVCLGlCRXFEb0MsQUZyRHBDLGlCRXFEbUUsQzRCL0Q5RCxBQVRULG9DM0JZTSxZQUFhLEFBQ2IsY0FBZSxBQUNmLFVBQVksQ0FDYixDQUFBLEEyQmZMLG9DQVdZLGtCQUFtQixBQUNuQixlQUFpQixDQUNwQixBQWJULDZDQWVZLG9CQUFxQixBQUNyQixtQkFBb0IsQWZmNUIsMENBQTZCLENlNkZ4QixBQTlGVCw0RDlCbUJJLFdJd0lvQixBSnhJcEIsV1FBNEQsQVJBNUQsY0krRXFCLEFKL0VyQixjSWtGb0IsQzBCUlgsQWpDN0JULHlCaUNoRUosOEVBc0J3QixlQUFpQixDQUV4QixDQUFBLEFqQ3dDYix5QmlDaEVKLG9GQTRCNEIsU0FBWSxBOUJUcEMsZ0JJd0lvQixBSnhJcEIsV1FBNEQsQVJBNUQscUJTNER3QixDcUJoRFAsQ0FBQSxBakNpQ2pCLHlCaUNoRUosbUY5Qm1CSSxnQkl3SW9CLEFKeElwQixZUUF1RSxBUkF2RSxlSWtGb0IsQUpsRnBCLHNCSXdJb0IsQTBCdkhJLFVBQVksQ0FFbkIsQ0FBQSxBQXRDckIsMEVBeUNvQixnQkFBa0IsQ0FhckIsQWpDVWIseUJpQ2hFSixpRjlCbUJJLGdCSXdJb0IsQUp4SXBCLFdRQTRELEFSQTVELHNCUzREd0IsQVQ1RHhCLHFCSXdJb0IsQzBCNUdILENBQUEsQWpDaUJqQix5QmlDaEVKLGdGOUJtQkksZ0JJd0lvQixBSnhJcEIsV1FBNEQsQVJBNUQsc0JTNER3QixBVDVEeEIsdUJJd0lvQixDMEJ0R0gsQ0FBQSxBQXJEckIsbUVBd0RvQixpQkFBbUIsQ0FhdEIsQWpDTGIseUJpQ2hFSix1RUEyRDRCLFlBQWEsQUFDYixlQUFtQixBQUNuQixrQkFBbUIsQUFDbkIsU0FBVSxBQUNWLGtCQUFvQixDQUszQixDQUFBLEFqQ0pqQix5QmlDaEVKLHVFQWtFNEIsV0FBYSxDQUVwQixDQUFBLEFBcEVyQixxRUF1RW9CLGVBQWlCLENBZXBCLEFqQ3RCYix5QmlDaEVKLHFFQXlFd0Isa0JBQW9CLENBYTNCLENBQUEsQUF0RmpCLHdFQTRFd0IsY0FBZ0IsQ0FDbkIsQUE3RXJCLDZFQStFd0IsbUJBQW9CLEFBQ3BCLGVBQWdCLEFBQ2hCLGdCQUFrQixDQUNyQixBQWxGckIsd0VaU0ksY0FBZSxBQUNmLGNBQWUsQUFDZixlQUFnQixBQUNoQixlQUFpQixDWXlFQSxBWnhFakIsMkVBQ0ksaUJBQW1CLENBTXRCLEFBUEQsa0ZBR1EsWUFBUyxBQUNULG1CQUFvQixBQUNwQixrQkFBcUIsQ0FDeEIsQVluQlQsaUVBd0ZvQixlQUFpQixDQUlwQixBakM1QmIseUJpQ2hFSixpRUEwRndCLGlCQUFtQixDQUUxQixDQUFBLEFBNUZqQixvQ0FnR1ksbUJBQW9CLEFBQ3BCLGlCQUFtQixDQTBEdEIsQWpDM0ZMLHlCaUNoRUosb0NBbUdnQixrQkFBb0IsQ0F3RDNCLENBQUEsQUEzSlQsMEM5Qm1CSSxXSXdJb0IsQUp4SXBCLFdRQTRELEFSQTVELGFJK0VxQixDMEJ3RFosQWpDMUZULHlCaUNoRUosMEM5Qm1CSSxnQkl3SW9CLEFKeElwQixXUUE0RCxBUkE1RCxxQlM0RHdCLENxQjJFZixBQTFKYix3RDlCbUJJLGdCSXdJb0IsQUp4SXBCLFlRQXVFLEFSQXZFLGNJa0ZvQixDMEJVSCxDQUFBLEFBL0dyQixpREFrSG9CLGFBQWMsQUFDZCxpQkFBbUIsQ0FRdEIsQUEzSGpCLHFEQXFId0Isc0JBQXVCLEFBQ3ZCLFdBQWEsQ0FJaEIsQWpDMURqQix5QmlDaEVKLHFEQXdINEIscUJBQXVCLENBRTlCLENBQUEsQUExSHJCLDZDQTZIb0IsaUJBQW1CLENBQ3RCLEFBOUhqQixrREFnSW9CLGNBQWdCLENBQ25CLEFBaklqQiwrREFvSXdCLGlCQUFrQixBQUNsQixXQUFhLENBa0JoQixBakN2RmpCLHlCaUNoRUosK0RBdUk0QixhQUFjLEFBQ2QsaUJBQW1CLENBZTFCLENBQUEsQUF2SnJCLG1FQTRJNEIsZUFBbUIsQUFDbkIsa0JBQW1CLEFBRW5CLFNBQVUsQUFDVixZQUFhLEFBQ2Isa0JBQW9CLENBS3ZCLEFqQ3RGckIseUJpQ2hFSixtRUFtSmdDLG1CQUFvQixBQUNwQixXQUFhLENBRXBCLENBQUEsQUN0SnpCLHVCQUVRLGtCQUFtQixBQUNuQixnQkFBaUIsQUFDakIsa0JBQW9CLENBQ3ZCLEFBTEwsaUMvQm1CSSxnQkNsQndCLEFEa0J4QixpQkVxRG9DLEFGckRwQyxrQkVxRG1FLEE2Qi9EL0QsaUJBQW1CLENBbUR0QixBQTVETCx1QzVCWU0sWUFBYSxBQUNiLGNBQWUsQUFDZixVQUFZLENBQ2IsQU5pREQseUJrQ2hFSixpQy9CbUJJLGdCQ2Y0QixBRGU1QixpQkVxRG9DLEFGckRwQyxpQkVxRG1FLEM2QlpsRSxBQTVETCx1QzVCWU0sWUFBYSxBQUNiLGNBQWUsQUFDZixVQUFZLENBQ2IsQ0FBQSxBNEJmTCx1REFXWSxnQkFBaUIsQUFDakIsbUJBQW9CLEFBQ3BCLGFBQWUsQ0FDbEIsQUFkVCxxRUFpQmdCLFlBQWMsQ0FDakIsQUFsQmIsbUZBb0JnQiw4QkFBZ0IsQUFDaEIscUJBQVcsQUFDWCxhQUFlLENBQ2xCLEFBdkJiLHlEQXlCZ0Isb0NwQ25Cc0IsQW9DbUJ0Qiw0QnBDbkJzQixBb0NvQnRCLGtCQUFtQixBQUNuQix5QnBDZlEsQW9DZ0JSLG1CcENMVSxBb0NNVixxQkFBc0IsQUFDdEIseUJBQWtCLEFBQWxCLHNCQUFrQixBQUFsQixxQkFBa0IsQUFBbEIsaUJBQWtCLEFBQ2xCLHFCQUFzQixBQUN0QixXQUFZLEFBQ1osa0JBQW9CLENBeUJ2QixBbENNVCx5QmtDaEVKLHlEQW1Db0Isa0JBQW9CLENBdUIzQixDQUFBLEFBMURiLHVFQXNDd0IsMEJBQTZCLEFBQzdCLDZCQUFnQyxBQUNoQyxrQkFBbUIsQUFDbkIsaUJBQW1CLENBQzFCLEFBMUNqQix3RUE0Q3dCLGdCQUFpQixBQUNqQixpQkFBa0IsQUFDbEIsaUJBQW1CLENBQzFCLEFBL0NqQixzRUFpRHdCLHlCQUE0QixBQUM1Qiw0QkFBK0IsQUFDL0IsaUJBQWtCLEFBQ2xCLGdCQUFrQixDQUN6QixBQXJEakIsK0RBdURvQixXcEMxQ08sQW9DMkNQLHlCcENwQ0ssQ29DcUNSLEFBekRqQiw2QkE4RFEsa0JBQW9CLENBMEl2QixBQXhNTCwyQ0FnRVksNkJBQThCLEFBQzlCLGNBQWtCLENBcUZyQixBbEN0RkwseUJrQ2hFSiwyQ0FtRWdCLFlBQWMsQ0FtRnJCLENBQUEsQWxDdEZMLHlCa0NoRUosd0RBdUVvQixlQUFnQixBQUNoQixXQUFZLEFBQ1osU0FBVSxBQUNWLG9DQUFzQixBQUN0QixvREFBK0MsQUFBL0MsMkNBQStDLENBRXRELENBQUEsQUE3RWIsNERBK0VnQixvQkFBc0IsQ0FzRHpCLEFBckliLDhFQWlGb0IsWUFBYyxDQUNqQixBQWxGakIsa0VBb0ZvQixhcEN4RUksQ29DeUVQLEFBckZqQixnRkF1Rm9CLGlCQUFtQixDQUN0QixBQXhGakIsb0ZBMEZvQixxQkFBc0IsQUFDdEIsZUFBa0IsQUFDbEIsa0JBQW1CLEFBQ25CLHlCQUFrQixBQUFsQixzQkFBa0IsQUFBbEIscUJBQWtCLEFBQWxCLGlCQUFrQixBQUNsQixxQkFBc0IsQUFDdEIseUJwQzNFSyxDb0M0RVIsQUFoR2pCLGlGQWtHb0IsV0FBYSxDQUNoQixBQW5HakIsK0VBcUdvQixXQUFhLENBQ2hCLEFBdEdqQixvRkF3R29CLHFCQUFzQixBQUN0QixrQkFBb0IsQ0EyQnZCLEFBcElqQiwrRkEyR3dCLHlCQUFzQyxBQUF0QyxpQkFBc0MsQUFDdEMsK0JBQTBCLEFBQTFCLHVCQUEwQixBQUMxQixxQ0FBOEIsQUFBOUIsNEJBQThCLENBQ2pDLEFBOUdyQiw4RkFnSHdCLHlCQUFxQyxBQUFyQyxpQkFBcUMsQUFDckMsK0JBQTBCLEFBQTFCLHVCQUEwQixBQUMxQixxQ0FBOEIsQUFBOUIsNEJBQThCLENBQ2pDLEFBQ0QscUJBQ0ksR0FDSSxnQ0FBa0IsQUFBbEIsdUJBQWtCLENBQUEsQUFFdEIsR0FDSSxrQ0FBa0IsQUFBbEIseUJBQWtCLENBQUEsQ0FBQSxBQUwxQixhQUNJLEdBQ0ksZ0NBQWtCLEFBQWxCLHVCQUFrQixDQUFBLEFBRXRCLEdBQ0ksa0NBQWtCLEFBQWxCLHlCQUFrQixDQUFBLENBQUEsQUFHMUIscUJBQ0ksR0FDSSxrQ0FBa0IsQUFBbEIseUJBQWtCLENBQUEsQUFFdEIsR0FDSSxnQ0FBa0IsQUFBbEIsdUJBQWtCLENBQUEsQ0FBQSxBQUwxQixhQUNJLEdBQ0ksa0NBQWtCLEFBQWxCLHlCQUFrQixDQUFBLEFBRXRCLEdBQ0ksZ0NBQWtCLEFBQWxCLHVCQUFrQixDQUFBLENBQUEsQUFqSTlDLDZDQXVJZ0IsWUFBYSxBQUNiLGFBQWdCLEFBQ2hCLGVBQW1CLENBTXRCLEFBL0liLGtEQTJJb0IscUJBQXNCLEFBQ3RCLGtCQUFtQixBQUNuQixVQUFZLENBQ2YsQWxDOUViLHlCa0NoRUosaUUvQm1CSSxnQkNsQndCLEFEa0J4QixpQkVxRG9DLEFGckRwQyxpQkVxRG1FLEM2QjZFMUQsQUFySmIsdUU1QllNLFlBQWEsQUFDYixjQUFlLEFBQ2YsVUFBWSxDQUNiLENBQUEsQU5pREQsK0NrQ2hFSixpRS9CbUJJLGdCQ2Y0QixBRGU1QixpQkVxRG9DLEFGckRwQyxpQkVxRG1FLEM2QjZFMUQsQUFySmIsdUU1QllNLFlBQWEsQUFDYixjQUFlLEFBQ2YsVUFBWSxDQUNiLENBQUEsQTRCZkwsbUMvQm1CSSxnQkNsQndCLEFEa0J4QixpQkVxRG9DLEFGckRwQyxrQkVxRG1FLEE2QmlGM0QsVUFBWSxDQUNmLEFBMUpULHlDNUJZTSxZQUFhLEFBQ2IsY0FBZSxBQUNmLFVBQVksQ0FDYixBTmlERCx5QmtDaEVKLG1DL0JtQkksZ0JDZjRCLEFEZTVCLGlCRXFEb0MsQUZyRHBDLGlCRXFEbUUsQzZCa0Y5RCxBQTFKVCx5QzVCWU0sWUFBYSxBQUNiLGNBQWUsQUFDZixVQUFZLENBQ2IsQ0FBQSxBTmlERCx5QmtDaEVKLDJEQThKb0IsZUFBaUIsQ0FFeEIsQ0FBQSxBQWhLYixnQ2hCQ0ksMENBQTZCLENnQmdMeEIsQUFqTFQsbUNBcUtnQixpQkFBa0IsQUFDbEIsbUJBQXFCLENBQ3hCLEFBdktiLCtDQXlLZ0IsV0FBYSxDQUNoQixBQTFLYixxREE0S2dCLGlCQUFtQixDQUl0QixBbENoSFQseUJrQ2hFSixxREE4S29CLFlBQWMsQ0FFckIsQ0FBQSxBQWhMYix3Q0FzTGdCLFlBQWMsQ0FDakIsQUF2TGIsOEpBcU1nQixpQkFBbUIsQ0FDdEIsQUN0TWIseUJoQ21CSSxnQkNsQndCLEFEa0J4QixpQkVxRG9DLEFGckRwQyxrQkVxRG1FLEE4QnBFL0Qsa0JBQW9CLENBbUJ2QixBQXZCTCwrQjdCWU0sWUFBYSxBQUNiLGNBQWUsQUFDZixVQUFZLENBQ2IsQU5pREQseUJtQ2hFSix5QmhDbUJJLGdCQ2Y0QixBRGU1QixpQkVxRG9DLEFGckRwQyxpQkVxRG1FLEM4QmpEbEUsQUF2QkwsK0I3QllNLFlBQWEsQUFDYixjQUFlLEFBQ2YsVUFBWSxDQUNiLENBQUEsQTZCZkwsaUNBT1ksaUJBQW1CLENBY3RCLEFuQzJDTCx5Qm1DaEVKLHlDaENtQkksZ0JJd0lvQixBSnhJcEIsV1FBNEQsQVJBNUQsc0JTNER3QixBVDVEeEIscUJJd0lvQixDNEJ2SVgsQ0FBQSxBQXBCYiwrQ2xDQ0ksb0NIS2tDLEFHTGxDLDRCSEtrQyxBR0psQyxrQkFBbUIsQUFDbkIseUJIU29CLEFHUnBCLG1CSG1Cc0IsQUdsQnRCLHFCQUFzQixBa0NZTixrQkFBbUIsQUFDbkIsUUFBVSxDQUNiLEFBbkJqQixxRGxDUVEsV0hLbUIsQUdKbkIseUJIV2lCLENHVnBCLEFtQ1ZMLGdCakNtQkksZ0JDbEJ3QixBRGtCeEIsaUJFcURvQyxBRnJEcEMsa0JFcURtRSxBK0JyRS9ELGVBQWlCLENBMEJwQixBQTdCTCxzQjlCWU0sWUFBYSxBQUNiLGNBQWUsQUFDZixVQUFZLENBQ2IsQU5pREQseUJvQ2hFSixnQmpDbUJJLGdCQ2Y0QixBRGU1QixpQkVxRG9DLEFGckRwQyxpQkVxRG1FLEMrQjNDbEUsQUE3Qkwsc0I5QllNLFlBQWEsQUFDYixjQUFlLEFBQ2YsVUFBWSxDQUNiLENBQUEsQU5pREQseUJvQ2hFSixxQ0FRZ0IsaUJBQW1CLENBQ3RCLENBQUEsQUFUYixtQmZTSSxjQUFlLEFBQ2YsY0FBZSxBQUNmLGVBQWdCLEFBQ2hCLGdCQUFpQixBZUVULGtCQUFvQixDQUt2QixBZk5MLHNCQUNJLGlCQUFtQixDQU10QixBQVBELDZCQUdRLFlBQVMsQUFDVCxtQkFBb0IsQUFDcEIsa0JBQXFCLENBQ3hCLEFyQjZDTCx5Qm9DaEVKLG1CQWdCZ0IsZ0JBQWlCLEFBQ2pCLGlCQUFtQixDQUUxQixDQUFBLEFBbkJULDZCQXFCWSxpQkFBbUIsQ0FLdEIsQUExQlQsK0JuQ0NJLG9DSEtrQyxBR0xsQyw0QkhLa0MsQUdKbEMsa0JBQW1CLEFBQ25CLHlCSFNvQixBR1JwQixtQkhtQnNCLEFHbEJ0QixvQkFBc0IsQ21Db0JiLEFBekJiLHFDbkNRUSxXSEttQixBR0puQix5QkhXaUIsQ0dWcEIsQW9DVkwsNkJBSVkseUJBQVksQUFBWixnQkFBWSxDQUNmLEFBTFQsa0JBVVEsYUFBYyxBQUNkLGVBQWdCLEFBQ2hCLFVBQVcsQUFDWCxpQkFBa0IsQUFDbEIsT0FBUSxBQUNSLE1BQU8sQUFDUCxXQUFZLEFBQ1osWUFBYSxBQUNiLGNBQWUsQUFDZixzQkFBcUIsQUFDckIsK0JBQXNCLENBd0N6QixBckNJRCx5QnFDaEVKLGtCQXNCWSxnQkFBa0IsQ0FzQ3pCLENBQUEsQUE1REwsaUNBMEJZLGlDQUFzQixBQUN0QixZQUFhLEFBQ2IsYUFBYyxBQUNkLFdBQVksQUFDWixXQUFhLENBZWhCLEFyQ21CTCx5QnFDaEVKLGlDQWdDZ0IsVUFBVyxBQUNYLGtCQUFtQixBQUNuQixnQkFBaUIsQUFDakIsZ0JBQWlCLEFBQ2pCLFdBQWEsQ0FTcEIsQ0FBQSxBQTdDVCxvQ0F1Q2dCLGtCQUFvQixDQUN2QixBQXhDYiwyQ0EwQ2dCLGdCQUFpQixBQUNqQixrQkFBb0IsQ0FDdkIsQUE1Q2IseUJBaURZLFdBQWUsQUFDZixZQUFhLEFBQ2IsZUFBZ0IsQUFDaEIsZUFBa0IsQ0FPckIsQUEzRFQsOERBdURnQixXQUFlLEFBQ2YscUJBQXNCLEFBQ3RCLGNBQWdCLENBQ25CLEFBMURiLGdCbENtQkksZ0JDbEJ3QixBRGtCeEIsaUJFcURvQyxBRnJEcEMsa0JFcURtRSxBZ0NSL0Qsa0JBQW9CLENBa0J2QixBQWxGTCxzQi9CWU0sWUFBYSxBQUNiLGNBQWUsQUFDZixVQUFZLENBQ2IsQU5pREQseUJxQ2hFSixnQmxDbUJJLGdCQ2Y0QixBRGU1QixpQkVxRG9DLEFGckRwQyxpQkVxRG1FLENnQ1VsRSxBQWxGTCxzQi9CWU0sWUFBYSxBQUNiLGNBQWUsQUFDZixVQUFZLENBQ2IsQ0FBQSxBK0JmTCx3QkFrRVksbUJBQW9CLEFBQ3BCLGlCQUFtQixDQWN0QixBQWpGVCwyQmhCU0ksY0FBZSxBQUNmLGNBQWUsQUFDZixlQUFnQixBQUNoQixlQUFpQixDZ0IwRFIsQWhCekRULDhCQUNJLGlCQUFtQixDQU10QixBQVBELHFDQUdRLFlBQVMsQUFDVCxtQkFBb0IsQUFDcEIsa0JBQXFCLENBQ3hCLEFnQm5CVCwwQkF3RWdCLGNBQWdCLENBUW5CLEFBaEZiLDhCcENDSSxvQ0hLa0MsQUdMbEMsNEJIS2tDLEFHSmxDLGtCQUFtQixBQUNuQix5QkhTb0IsQUdScEIsbUJIbUJzQixBR2xCdEIscUJBQXNCLEFvQ3NFTixvQkFBc0IsQ0FJekIsQUEvRWpCLG9DcENRUSxXSEttQixBR0puQix5QkhXaUIsQ0dWcEIsQURzREQseUJxQ2hFSiw4QkE2RXdCLGVBQWlCLENBRXhCLENBQUEsQUEvRWpCLDRCQW9GUSxhQUFlLENBT2xCLEFBM0ZMLDhCQXNGWSxtQkFBcUIsQ0FDeEIsQUF2RlQsZ0NBeUZZLG1CQUFxQixDQUN4QixBQTFGVCw0RGxDbUJJLGdCSXdJb0IsQUp4SXBCLFVRQTRELEMwQmdGbkQsQUFuR2IsMkVsQ21CSSxtQldvRDZCLEFYcEQ3QixXWVowQixBWlkxQixhYWdCK0IsQ0Z3RDlCLEF1QjNGTCw0RWxDbUJJLHNCSXdJb0IsQUp4SXBCLG1CV29ENkIsQVhwRDdCLFVZSjBCLENENEV6QixBZDNCRCx5QnFDaEVKLDREbENtQkksZ0JJd0lvQixBSnhJcEIsVVFBNEQsQzBCZ0ZuRCxBQW5HYiw0RWxDbUJJLG1CV29ENkIsQVhwRDdCLFdZWjBCLEFaWTFCLGFhZ0IrQixDRndEOUIsQXVCM0ZMLDRFbENtQkksc0JJd0lvQixBSnhJcEIsbUJXb0Q2QixBWHBEN0IsVVlKMEIsQ0Q0RXpCLEF1QjNGTCw0RWxDbUJJLHNCSXdJb0IsQUp4SXBCLG1CV29ENkIsQVhwRDdCLFVZSjBCLENENEV6QixDQUFBLEFkM0JELHlCcUNoRUosc0RsQ21CSSxnQmtDc0ZvQyxBbEN0RnBDLGlCRXFEb0MsQUZyRHBDLGlCRXFEbUUsQ2dDc0M5RCxBQTlHVCw0RC9CWU0sWUFBYSxBQUNiLGNBQWUsQUFDZixVQUFZLENBQ2IsQ0FBQSxBK0JmTCxnRWxDbUJJLGdCSXdJb0IsQUp4SXBCLFVRQTRELEMwQjBGbkQsQUE3R2IsK0VsQ21CSSxtQldvRDZCLEFYcEQ3QixXWVowQixBWlkxQixhYWdCK0IsQ0Z3RDlCLEF1QjNGTCxnRmxDbUJJLHNCSXdJb0IsQUp4SXBCLG1CV29ENkIsQVhwRDdCLFVZSjBCLENENEV6QixBdUIzRkwsNERsQ21CSSxXSXdJb0IsQUp4SXBCLFVRQTRELEMwQmlHbkQsQUFwSGIsNEVsQ21CSSxjbUN3RGlCLEFuQ3hEakIsbUJXb0Q2QixBWHBEN0IsVVlKMEIsQ0Q0RXpCLEFkM0JELHlCcUNoRUosNkNsQ21CSSxnQmtDdUdvQyxBbEN2R3BDLGlCRXFEb0MsQUZyRHBDLGlCRXFEbUUsQ2dDdUQ5RCxBQS9IVCxtRC9CWU0sWUFBYSxBQUNiLGNBQWUsQUFDZixVQUFZLENBQ2IsQ0FBQSxBK0JmTCx1RGxDbUJJLGdCSXdJb0IsQUp4SXBCLFVRQTRELEMwQjJHbkQsQUE5SGIsc0VsQ21CSSxtQldvRDZCLEFYcEQ3QixXWVowQixBWlkxQixhYWdCK0IsQ0Z3RDlCLEF1QjNGTCx1RWxDbUJJLHNCSXdJb0IsQUp4SXBCLG1CV29ENkIsQVhwRDdCLFVZSjBCLENENEV6QixBZDNCRCx5QnFDaEVKLCtDbENtQkksZ0JrQ2lIb0MsQWxDakhwQyxpQkVxRG9DLEFGckRwQyxpQkVxRG1FLENnQ2lFOUQsQUF6SVQscUQvQllNLFlBQWEsQUFDYixjQUFlLEFBQ2YsVUFBWSxDQUNiLENBQUEsQStCZkwseURsQ21CSSxnQkl3SW9CLEFKeElwQixVUUE0RCxDMEJxSG5ELEFBeEliLHdFbENtQkksbUJXb0Q2QixBWHBEN0IsV1laMEIsQVpZMUIsYWFnQitCLENGd0Q5QixBdUIzRkwseUVsQ21CSSxzQkl3SW9CLEFKeElwQixtQldvRDZCLEFYcEQ3QixVWUowQixDRDRFekIiLCJmaWxlIjoibWFpbi5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyJAZm9udC1mYWNlIHtcbiAgICBmb250LWZhbWlseTogXCJOZXhhXCI7XG4gICAgc3JjOiB1cmwoXCIuLi9mb250cy9uZXhhX2xpZ2h0LXdlYmZvbnQuZW90XCIpO1xuICAgIHNyYzogdXJsKFwiLi4vZm9udHMvbmV4YV9saWdodC13ZWJmb250LmVvdD8jaWVmaXhcIikgZm9ybWF0KFwiZW1iZWRkZWQtb3BlbnR5cGVcIiksXG4gICAgICAgICB1cmwoXCIuLi9mb250cy9uZXhhX2xpZ2h0LXdlYmZvbnQud29mZjJcIikgZm9ybWF0KFwid29mZjJcIiksXG4gICAgICAgICB1cmwoXCIuLi9mb250cy9uZXhhX2xpZ2h0LXdlYmZvbnQud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpLFxuICAgICAgICAgdXJsKFwiLi4vZm9udHMvbmV4YV9saWdodC13ZWJmb250LnR0ZlwiKSBmb3JtYXQoXCJ0cnVldHlwZVwiKTtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cblxuQGZvbnQtZmFjZSB7XG4gICAgZm9udC1mYW1pbHk6IFwiTmV4YVwiO1xuICAgIHNyYzogdXJsKFwiLi4vZm9udHMvbmV4YV9ib2xkLXdlYmZvbnQuZW90XCIpO1xuICAgIHNyYzogdXJsKFwiLi4vZm9udHMvbmV4YV9ib2xkLXdlYmZvbnQuZW90PyNpZWZpeFwiKSBmb3JtYXQoXCJlbWJlZGRlZC1vcGVudHlwZVwiKSxcbiAgICAgICAgIHVybChcIi4uL2ZvbnRzL25leGFfYm9sZC13ZWJmb250LndvZmYyXCIpIGZvcm1hdChcIndvZmYyXCIpLFxuICAgICAgICAgdXJsKFwiLi4vZm9udHMvbmV4YV9ib2xkLXdlYmZvbnQud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpLFxuICAgICAgICAgdXJsKFwiLi4vZm9udHMvbmV4YV9ib2xkLXdlYmZvbnQudHRmXCIpIGZvcm1hdChcInRydWV0eXBlXCIpO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cblxuQGZvbnQtZmFjZSB7XG4gICAgZm9udC1mYW1pbHk6IFwidHJhY2tpci1pY29uc1wiO1xuICAgIHNyYzogdXJsKFwiLi4vZm9udHMvdHJhY2tpci1pY29ucy5lb3Q/NTg3MzMyNDlcIik7XG4gICAgc3JjOiB1cmwoXCIuLi9mb250cy90cmFja2lyLWljb25zLmVvdD81ODczMzI0OSNpZWZpeFwiKSBmb3JtYXQoXCJlbWJlZGRlZC1vcGVudHlwZVwiKSxcbiAgICAgICAgIHVybChcIi4uL2ZvbnRzL3RyYWNraXItaWNvbnMud29mZj81ODczMzI0OVwiKSBmb3JtYXQoXCJ3b2ZmXCIpLFxuICAgICAgICAgdXJsKFwiLi4vZm9udHMvdHJhY2tpci1pY29ucy50dGY/NTg3MzMyNDlcIikgZm9ybWF0KFwidHJ1ZXR5cGVcIiksXG4gICAgICAgICB1cmwoXCIuLi9mb250cy90cmFja2lyLWljb25zLnN2Zz81ODczMzI0OSN0cmFja2lyLWljb25zXCIpIGZvcm1hdChcInN2Z1wiKTtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cblxuLy8gSWNvbiBzdHlsZXMgYmVsb3cgdGFrZW4gZnJvbSBGb250ZWxsbyBnZW5lcmF0ZWQgQ1NTLlxuLy8gUmVmYWN0b3JlZCBpbnRvIFNDU1MgbWl4aW5zL3ZhcmlhYmxlcyBhbmQgc2xpZ2h0bHkgbW9kaWZpZWQuXG4vLyBNYXkgbmVlZCBtb3JlIGF0dGVudGlvbiFcbiVpY29uLWZvbnQge1xuICAgIGZvbnQtZmFtaWx5OiBcInRyYWNraXItaWNvbnNcIjtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICBzcGVhazogbm9uZTtcblxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB0ZXh0LWRlY29yYXRpb246IGluaGVyaXQ7XG4gICAgd2lkdGg6IDFlbTtcbiAgICBtYXJnaW4tcmlnaHQ6IC4yZW07XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgLyogRm9yIHNhZmV0eSAtIHJlc2V0IHBhcmVudCBzdHlsZXMgdGhhdCBjYW4gYnJlYWsgZ2x5cGggY29kZXMgKi9cbiAgICBmb250LXZhcmlhbnQ6IG5vcm1hbDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcblxuICAgIC8qIGZpeCBidXR0b25zIGhlaWdodCwgZm9yIHR3aXR0ZXIgYm9vdHN0cmFwICovXG4gICAgLy9saW5lLWhlaWdodDogMWVtO1xuXG4gICAgLyogQW5pbWF0aW9uIGNlbnRlciBjb21wZW5zYXRpb24gLSBtYXJnaW5zIHNob3VsZCBiZSBzeW1tZXRyaWMgKi9cbiAgICAvKiByZW1vdmUgaWYgbm90IG5lZWRlZCAqL1xuICAgIG1hcmdpbi1sZWZ0OiAuMmVtO1xufVxuXG5AbWl4aW4gaWNvbigkZ2x5cGg6IG51bGwpIHtcbiAgICBAaWYgKCRnbHlwaCkge1xuICAgICAgICBjb250ZW50OiAkZ2x5cGg7XG4gICAgfVxuXG4gICAgQGV4dGVuZCAlaWNvbi1mb250O1xufVxuXG5bY2xhc3NePVwiaWNvbi1cIl06YmVmb3JlLCBbY2xhc3MqPVwiIGljb24tXCJdOmJlZm9yZSB7XG4gICAgQGV4dGVuZCAlaWNvbi1mb250O1xufVxuXG4kaWNvbi1nbHlwaC1iYXNrZXQ6IFwiXFxlODAwXCI7XG4uaWNvbi1iYXNrZXQ6YmVmb3JlIHsgY29udGVudDogJGljb24tZ2x5cGgtYmFza2V0OyB9XG5cbiRpY29uLWdseXBoLWNoZXZyb24tc21hbGwtcmlnaHQ6IFwiXFxlODAxXCI7XG4uaWNvbi1jaGV2cm9uLXNtYWxsLXJpZ2h0OmJlZm9yZSB7IGNvbnRlbnQ6ICRpY29uLWdseXBoLWNoZXZyb24tc21hbGwtcmlnaHQ7IH1cblxuJGljb24tZ2x5cGgtdHdpdGNoOiBcIlxcZTkwMFwiO1xuLmljb24tdHdpdGNoOmJlZm9yZSB7IGNvbnRlbnQ6ICRpY29uLWdseXBoLXR3aXRjaDsgfVxuXG4kaWNvbi1nbHlwaC15b3V0dWJlOiBcIlxcZTkwMVwiO1xuLmljb24teW91dHViZS1wbGF5OmJlZm9yZSB7IGNvbnRlbnQ6ICRpY29uLWdseXBoLXlvdXR1YmU7IH1cblxuJGljb24tZ2x5cGgtdHdpdHRlcjogXCJcXGU5MDJcIjtcbi5pY29uLXR3aXR0ZXI6YmVmb3JlIHsgY29udGVudDogJGljb24tZ2x5cGgtdHdpdHRlcjsgfVxuXG4kaWNvbi1nbHlwaC1mYWNlYm9vazogXCJcXGU5MDNcIjtcbi5pY29uLWZhY2Vib29rOmJlZm9yZSB7IGNvbnRlbnQ6ICRpY29uLWdseXBoLWZhY2Vib29rOyB9XG5cbiRpY29uLWdseXBoLXJlZnJlc2g6IFwiXFxlODAyXCI7XG4uaWNvbi1yZWZyZXNoOmJlZm9yZSB7IGNvbnRlbnQ6ICRpY29uLWdseXBoLXJlZnJlc2g7IH1cblxuJGljb24tZ2x5cGgtbGluay1leHQ6IFwiXFxlODAzXCI7XG4uaWNvbi1saW5rLWV4dDpiZWZvcmUgeyBjb250ZW50OiAkaWNvbi1nbHlwaC1saW5rLWV4dDsgfVxuXG4kaWNvbi1nbHlwaC1wbGF5LWNpcmNsZWQ6IFwiXFxlODA0XCI7XG4uaWNvbi1wbGF5LWNpcmNsZWQ6YmVmb3JlIHsgY29udGVudDogJGljb24tZ2x5cGgtcGxheS1jaXJjbGVkOyB9XG5cbiRpY29uLWdseXBoLWJsb2NrOiBcIlxcZTgwNVwiO1xuLmljb24tYmxvY2s6YmVmb3JlIHsgY29udGVudDogJGljb24tZ2x5cGgtYmxvY2s7IH1cblxuJGljb24tZ2x5cGgtb2stY2lyY2xlZDI6IFwiXFxlODA2XCI7XG4uaWNvbi1vay1jaXJjbGVkMjpiZWZvcmUgeyBjb250ZW50OiAkaWNvbi1nbHlwaC1vay1jaXJjbGVkMjsgfVxuXG4kaWNvbi1nbHlwaC1vazogXCJcXGU4MDdcIjtcbi5pY29uLW9rOmJlZm9yZSB7IGNvbnRlbnQ6ICRpY29uLWdseXBoLW9rOyB9XG5cbiRpY29uLWdseXBoLXVwOiBcIlxcZTgwOVwiO1xuLmljb24tdXAtb3Blbi1iaWc6YmVmb3JlIHsgY29udGVudDogJGljb24tZ2x5cGgtdXA7IH1cblxuJGljb24tZ2x5cGgtZG93bjogXCJcXGU4MDhcIjtcbi5pY29uLWRvd24tb3Blbi1iaWc6YmVmb3JlIHsgY29udGVudDogJGljb24tZ2x5cGgtZG93bjsgfVxuIiwiLyohIG5vcm1hbGl6ZS5jc3MgdjMuMC4zIHwgTUlUIExpY2Vuc2UgfCBnaXRodWIuY29tL25lY29sYXMvbm9ybWFsaXplLmNzcyAqL1xuXG4vKipcbiAqIDEuIFNldCBkZWZhdWx0IGZvbnQgZmFtaWx5IHRvIHNhbnMtc2VyaWYuXG4gKiAyLiBQcmV2ZW50IGlPUyBhbmQgSUUgdGV4dCBzaXplIGFkanVzdCBhZnRlciBkZXZpY2Ugb3JpZW50YXRpb24gY2hhbmdlLFxuICogICAgd2l0aG91dCBkaXNhYmxpbmcgdXNlciB6b29tLlxuICovXG5cbmh0bWwge1xuICAgIGZvbnQtZmFtaWx5OiBzYW5zLXNlcmlmOyAvKiAxICovXG4gICAgLW1zLXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7IC8qIDIgKi9cbiAgICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBSZW1vdmUgZGVmYXVsdCBtYXJnaW4uXG4gKi9cblxuYm9keSB7XG4gICAgbWFyZ2luOiAwO1xufVxuXG4vKiBIVE1MNSBkaXNwbGF5IGRlZmluaXRpb25zXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIENvcnJlY3QgYGJsb2NrYCBkaXNwbGF5IG5vdCBkZWZpbmVkIGZvciBhbnkgSFRNTDUgZWxlbWVudCBpbiBJRSA4LzkuXG4gKiBDb3JyZWN0IGBibG9ja2AgZGlzcGxheSBub3QgZGVmaW5lZCBmb3IgYGRldGFpbHNgIG9yIGBzdW1tYXJ5YCBpbiBJRSAxMC8xMVxuICogYW5kIEZpcmVmb3guXG4gKiBDb3JyZWN0IGBibG9ja2AgZGlzcGxheSBub3QgZGVmaW5lZCBmb3IgYG1haW5gIGluIElFIDExLlxuICovXG5cbmFydGljbGUsXG5hc2lkZSxcbmRldGFpbHMsXG5maWdjYXB0aW9uLFxuZmlndXJlLFxuZm9vdGVyLFxuaGVhZGVyLFxuaGdyb3VwLFxubWFpbixcbm1lbnUsXG5uYXYsXG5zZWN0aW9uLFxuc3VtbWFyeSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCBgaW5saW5lLWJsb2NrYCBkaXNwbGF5IG5vdCBkZWZpbmVkIGluIElFIDgvOS5cbiAqIDIuIE5vcm1hbGl6ZSB2ZXJ0aWNhbCBhbGlnbm1lbnQgb2YgYHByb2dyZXNzYCBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBPcGVyYS5cbiAqL1xuXG5hdWRpbyxcbmNhbnZhcyxcbnByb2dyZXNzLFxudmlkZW8ge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgLyogMSAqL1xuICAgIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTsgLyogMiAqL1xufVxuXG4vKipcbiAqIFByZXZlbnQgbW9kZXJuIGJyb3dzZXJzIGZyb20gZGlzcGxheWluZyBgYXVkaW9gIHdpdGhvdXQgY29udHJvbHMuXG4gKiBSZW1vdmUgZXhjZXNzIGhlaWdodCBpbiBpT1MgNSBkZXZpY2VzLlxuICovXG5cbmF1ZGlvOm5vdChbY29udHJvbHNdKSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBoZWlnaHQ6IDA7XG59XG5cbi8qKlxuICogQWRkcmVzcyBgW2hpZGRlbl1gIHN0eWxpbmcgbm90IHByZXNlbnQgaW4gSUUgOC85LzEwLlxuICogSGlkZSB0aGUgYHRlbXBsYXRlYCBlbGVtZW50IGluIElFIDgvOS8xMC8xMSwgU2FmYXJpLCBhbmQgRmlyZWZveCA8IDIyLlxuICovXG5cbltoaWRkZW5dLFxudGVtcGxhdGUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG59XG5cbi8qIExpbmtzXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIFJlbW92ZSB0aGUgZ3JheSBiYWNrZ3JvdW5kIGNvbG9yIGZyb20gYWN0aXZlIGxpbmtzIGluIElFIDEwLlxuICovXG5cbmEge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4vKipcbiAqIEltcHJvdmUgcmVhZGFiaWxpdHkgb2YgZm9jdXNlZCBlbGVtZW50cyB3aGVuIHRoZXkgYXJlIGFsc28gaW4gYW5cbiAqIGFjdGl2ZS9ob3ZlciBzdGF0ZS5cbiAqL1xuXG5hOmFjdGl2ZSxcbmE6aG92ZXIge1xuICAgIG91dGxpbmU6IDA7XG59XG5cbi8qIFRleHQtbGV2ZWwgc2VtYW50aWNzXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIEFkZHJlc3Mgc3R5bGluZyBub3QgcHJlc2VudCBpbiBJRSA4LzkvMTAvMTEsIFNhZmFyaSwgYW5kIENocm9tZS5cbiAqL1xuXG5hYmJyW3RpdGxlXSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IGRvdHRlZDtcbn1cblxuLyoqXG4gKiBBZGRyZXNzIHN0eWxlIHNldCB0byBgYm9sZGVyYCBpbiBGaXJlZm94IDQrLCBTYWZhcmksIGFuZCBDaHJvbWUuXG4gKi9cblxuYixcbnN0cm9uZyB7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbi8qKlxuICogQWRkcmVzcyBzdHlsaW5nIG5vdCBwcmVzZW50IGluIFNhZmFyaSBhbmQgQ2hyb21lLlxuICovXG5cbmRmbiB7XG4gICAgZm9udC1zdHlsZTogaXRhbGljO1xufVxuXG4vKipcbiAqIEFkZHJlc3MgdmFyaWFibGUgYGgxYCBmb250LXNpemUgYW5kIG1hcmdpbiB3aXRoaW4gYHNlY3Rpb25gIGFuZCBgYXJ0aWNsZWBcbiAqIGNvbnRleHRzIGluIEZpcmVmb3ggNCssIFNhZmFyaSwgYW5kIENocm9tZS5cbiAqL1xuXG5oMSB7XG4gICAgZm9udC1zaXplOiAyZW07XG4gICAgbWFyZ2luOiAwLjY3ZW0gMDtcbn1cblxuLyoqXG4gKiBBZGRyZXNzIHN0eWxpbmcgbm90IHByZXNlbnQgaW4gSUUgOC85LlxuICovXG5cbm1hcmsge1xuICAgIGJhY2tncm91bmQ6ICNmZjA7XG4gICAgY29sb3I6ICMwMDA7XG59XG5cbi8qKlxuICogQWRkcmVzcyBpbmNvbnNpc3RlbnQgYW5kIHZhcmlhYmxlIGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxuc21hbGwge1xuICAgIGZvbnQtc2l6ZTogODAlO1xufVxuXG4vKipcbiAqIFByZXZlbnQgYHN1YmAgYW5kIGBzdXBgIGFmZmVjdGluZyBgbGluZS1oZWlnaHRgIGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5zdWIsXG5zdXAge1xuICAgIGZvbnQtc2l6ZTogNzUlO1xuICAgIGxpbmUtaGVpZ2h0OiAwO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cbnN1cCB7XG4gICAgdG9wOiAtMC41ZW07XG59XG5cbnN1YiB7XG4gICAgYm90dG9tOiAtMC4yNWVtO1xufVxuXG4vKiBFbWJlZGRlZCBjb250ZW50XG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIFJlbW92ZSBib3JkZXIgd2hlbiBpbnNpZGUgYGFgIGVsZW1lbnQgaW4gSUUgOC85LzEwLlxuICovXG5cbmltZyB7XG4gICAgYm9yZGVyOiAwO1xufVxuXG4vKipcbiAqIENvcnJlY3Qgb3ZlcmZsb3cgbm90IGhpZGRlbiBpbiBJRSA5LzEwLzExLlxuICovXG5cbnN2Zzpub3QoOnJvb3QpIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4vKiBHcm91cGluZyBjb250ZW50XG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIEFkZHJlc3MgbWFyZ2luIG5vdCBwcmVzZW50IGluIElFIDgvOSBhbmQgU2FmYXJpLlxuICovXG5cbmZpZ3VyZSB7XG4gICAgbWFyZ2luOiAxZW0gNDBweDtcbn1cblxuLyoqXG4gKiBBZGRyZXNzIGRpZmZlcmVuY2VzIGJldHdlZW4gRmlyZWZveCBhbmQgb3RoZXIgYnJvd3NlcnMuXG4gKi9cblxuaHIge1xuICAgIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICAgIGhlaWdodDogMDtcbn1cblxuLyoqXG4gKiBDb250YWluIG92ZXJmbG93IGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5wcmUge1xuICAgIG92ZXJmbG93OiBhdXRvO1xufVxuXG4vKipcbiAqIEFkZHJlc3Mgb2RkIGBlbWAtdW5pdCBmb250IHNpemUgcmVuZGVyaW5nIGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5jb2RlLFxua2JkLFxucHJlLFxuc2FtcCB7XG4gICAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlO1xuICAgIGZvbnQtc2l6ZTogMWVtO1xufVxuXG4vKiBGb3Jtc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBLbm93biBsaW1pdGF0aW9uOiBieSBkZWZhdWx0LCBDaHJvbWUgYW5kIFNhZmFyaSBvbiBPUyBYIGFsbG93IHZlcnkgbGltaXRlZFxuICogc3R5bGluZyBvZiBgc2VsZWN0YCwgdW5sZXNzIGEgYGJvcmRlcmAgcHJvcGVydHkgaXMgc2V0LlxuICovXG5cbi8qKlxuICogMS4gQ29ycmVjdCBjb2xvciBub3QgYmVpbmcgaW5oZXJpdGVkLlxuICogICAgS25vd24gaXNzdWU6IGFmZmVjdHMgY29sb3Igb2YgZGlzYWJsZWQgZWxlbWVudHMuXG4gKiAyLiBDb3JyZWN0IGZvbnQgcHJvcGVydGllcyBub3QgYmVpbmcgaW5oZXJpdGVkLlxuICogMy4gQWRkcmVzcyBtYXJnaW5zIHNldCBkaWZmZXJlbnRseSBpbiBGaXJlZm94IDQrLCBTYWZhcmksIGFuZCBDaHJvbWUuXG4gKi9cblxuYnV0dG9uLFxuaW5wdXQsXG5vcHRncm91cCxcbnNlbGVjdCxcbnRleHRhcmVhIHtcbiAgICBjb2xvcjogaW5oZXJpdDsgLyogMSAqL1xuICAgIGZvbnQ6IGluaGVyaXQ7IC8qIDIgKi9cbiAgICBtYXJnaW46IDA7IC8qIDMgKi9cbn1cblxuLyoqXG4gKiBBZGRyZXNzIGBvdmVyZmxvd2Agc2V0IHRvIGBoaWRkZW5gIGluIElFIDgvOS8xMC8xMS5cbiAqL1xuXG5idXR0b24ge1xuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xufVxuXG4vKipcbiAqIEFkZHJlc3MgaW5jb25zaXN0ZW50IGB0ZXh0LXRyYW5zZm9ybWAgaW5oZXJpdGFuY2UgZm9yIGBidXR0b25gIGFuZCBgc2VsZWN0YC5cbiAqIEFsbCBvdGhlciBmb3JtIGNvbnRyb2wgZWxlbWVudHMgZG8gbm90IGluaGVyaXQgYHRleHQtdHJhbnNmb3JtYCB2YWx1ZXMuXG4gKiBDb3JyZWN0IGBidXR0b25gIHN0eWxlIGluaGVyaXRhbmNlIGluIEZpcmVmb3gsIElFIDgvOS8xMC8xMSwgYW5kIE9wZXJhLlxuICogQ29ycmVjdCBgc2VsZWN0YCBzdHlsZSBpbmhlcml0YW5jZSBpbiBGaXJlZm94LlxuICovXG5cbmJ1dHRvbixcbnNlbGVjdCB7XG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG59XG5cbi8qKlxuICogMS4gQXZvaWQgdGhlIFdlYktpdCBidWcgaW4gQW5kcm9pZCA0LjAuKiB3aGVyZSAoMikgZGVzdHJveXMgbmF0aXZlIGBhdWRpb2BcbiAqICAgIGFuZCBgdmlkZW9gIGNvbnRyb2xzLlxuICogMi4gQ29ycmVjdCBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIGBpbnB1dGAgdHlwZXMgaW4gaU9TLlxuICogMy4gSW1wcm92ZSB1c2FiaWxpdHkgYW5kIGNvbnNpc3RlbmN5IG9mIGN1cnNvciBzdHlsZSBiZXR3ZWVuIGltYWdlLXR5cGVcbiAqICAgIGBpbnB1dGAgYW5kIG90aGVycy5cbiAqL1xuXG5idXR0b24sXG5odG1sIGlucHV0W3R5cGU9XCJidXR0b25cIl0sIC8qIDEgKi9cbmlucHV0W3R5cGU9XCJyZXNldFwiXSxcbmlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uOyAvKiAyICovXG4gICAgY3Vyc29yOiBwb2ludGVyOyAvKiAzICovXG59XG5cbi8qKlxuICogUmUtc2V0IGRlZmF1bHQgY3Vyc29yIGZvciBkaXNhYmxlZCBlbGVtZW50cy5cbiAqL1xuXG5idXR0b25bZGlzYWJsZWRdLFxuaHRtbCBpbnB1dFtkaXNhYmxlZF0ge1xuICAgIGN1cnNvcjogZGVmYXVsdDtcbn1cblxuLyoqXG4gKiBSZW1vdmUgaW5uZXIgcGFkZGluZyBhbmQgYm9yZGVyIGluIEZpcmVmb3ggNCsuXG4gKi9cblxuYnV0dG9uOjotbW96LWZvY3VzLWlubmVyLFxuaW5wdXQ6Oi1tb3otZm9jdXMtaW5uZXIge1xuICAgIGJvcmRlcjogMDtcbiAgICBwYWRkaW5nOiAwO1xufVxuXG4vKipcbiAqIEFkZHJlc3MgRmlyZWZveCA0KyBzZXR0aW5nIGBsaW5lLWhlaWdodGAgb24gYGlucHV0YCB1c2luZyBgIWltcG9ydGFudGAgaW5cbiAqIHRoZSBVQSBzdHlsZXNoZWV0LlxuICovXG5cbmlucHV0IHtcbiAgICBsaW5lLWhlaWdodDogbm9ybWFsO1xufVxuXG4vKipcbiAqIEl0J3MgcmVjb21tZW5kZWQgdGhhdCB5b3UgZG9uJ3QgYXR0ZW1wdCB0byBzdHlsZSB0aGVzZSBlbGVtZW50cy5cbiAqIEZpcmVmb3gncyBpbXBsZW1lbnRhdGlvbiBkb2Vzbid0IHJlc3BlY3QgYm94LXNpemluZywgcGFkZGluZywgb3Igd2lkdGguXG4gKlxuICogMS4gQWRkcmVzcyBib3ggc2l6aW5nIHNldCB0byBgY29udGVudC1ib3hgIGluIElFIDgvOS8xMC5cbiAqIDIuIFJlbW92ZSBleGNlc3MgcGFkZGluZyBpbiBJRSA4LzkvMTAuXG4gKi9cblxuaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdLFxuaW5wdXRbdHlwZT1cInJhZGlvXCJdIHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94OyAvKiAxICovXG4gICAgcGFkZGluZzogMDsgLyogMiAqL1xufVxuXG4vKipcbiAqIEZpeCB0aGUgY3Vyc29yIHN0eWxlIGZvciBDaHJvbWUncyBpbmNyZW1lbnQvZGVjcmVtZW50IGJ1dHRvbnMuIEZvciBjZXJ0YWluXG4gKiBgZm9udC1zaXplYCB2YWx1ZXMgb2YgdGhlIGBpbnB1dGAsIGl0IGNhdXNlcyB0aGUgY3Vyc29yIHN0eWxlIG9mIHRoZVxuICogZGVjcmVtZW50IGJ1dHRvbiB0byBjaGFuZ2UgZnJvbSBgZGVmYXVsdGAgdG8gYHRleHRgLlxuICovXG5cbmlucHV0W3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXG5pbnB1dFt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgICBoZWlnaHQ6IGF1dG87XG59XG5cbi8qKlxuICogMS4gQWRkcmVzcyBgYXBwZWFyYW5jZWAgc2V0IHRvIGBzZWFyY2hmaWVsZGAgaW4gU2FmYXJpIGFuZCBDaHJvbWUuXG4gKiAyLiBBZGRyZXNzIGBib3gtc2l6aW5nYCBzZXQgdG8gYGJvcmRlci1ib3hgIGluIFNhZmFyaSBhbmQgQ2hyb21lLlxuICovXG5cbmlucHV0W3R5cGU9XCJzZWFyY2hcIl0ge1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogdGV4dGZpZWxkOyAvKiAxICovXG4gICAgYm94LXNpemluZzogY29udGVudC1ib3g7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBSZW1vdmUgaW5uZXIgcGFkZGluZyBhbmQgc2VhcmNoIGNhbmNlbCBidXR0b24gaW4gU2FmYXJpIGFuZCBDaHJvbWUgb24gT1MgWC5cbiAqIFNhZmFyaSAoYnV0IG5vdCBDaHJvbWUpIGNsaXBzIHRoZSBjYW5jZWwgYnV0dG9uIHdoZW4gdGhlIHNlYXJjaCBpbnB1dCBoYXNcbiAqIHBhZGRpbmcgKGFuZCBgdGV4dGZpZWxkYCBhcHBlYXJhbmNlKS5cbiAqL1xuXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1jYW5jZWwtYnV0dG9uLFxuaW5wdXRbdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbiB7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xufVxuXG4vKipcbiAqIERlZmluZSBjb25zaXN0ZW50IGJvcmRlciwgbWFyZ2luLCBhbmQgcGFkZGluZy5cbiAqL1xuXG5maWVsZHNldCB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2MwYzBjMDtcbiAgICBtYXJnaW46IDAgMnB4O1xuICAgIHBhZGRpbmc6IDAuMzVlbSAwLjYyNWVtIDAuNzVlbTtcbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IGBjb2xvcmAgbm90IGJlaW5nIGluaGVyaXRlZCBpbiBJRSA4LzkvMTAvMTEuXG4gKiAyLiBSZW1vdmUgcGFkZGluZyBzbyBwZW9wbGUgYXJlbid0IGNhdWdodCBvdXQgaWYgdGhleSB6ZXJvIG91dCBmaWVsZHNldHMuXG4gKi9cblxubGVnZW5kIHtcbiAgICBib3JkZXI6IDA7IC8qIDEgKi9cbiAgICBwYWRkaW5nOiAwOyAvKiAyICovXG59XG5cbi8qKlxuICogUmVtb3ZlIGRlZmF1bHQgdmVydGljYWwgc2Nyb2xsYmFyIGluIElFIDgvOS8xMC8xMS5cbiAqL1xuXG50ZXh0YXJlYSB7XG4gICAgb3ZlcmZsb3c6IGF1dG87XG59XG5cbi8qKlxuICogRG9uJ3QgaW5oZXJpdCB0aGUgYGZvbnQtd2VpZ2h0YCAoYXBwbGllZCBieSBhIHJ1bGUgYWJvdmUpLlxuICogTk9URTogdGhlIGRlZmF1bHQgY2Fubm90IHNhZmVseSBiZSBjaGFuZ2VkIGluIENocm9tZSBhbmQgU2FmYXJpIG9uIE9TIFguXG4gKi9cblxub3B0Z3JvdXAge1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4vKiBUYWJsZXNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogUmVtb3ZlIG1vc3Qgc3BhY2luZyBiZXR3ZWVuIHRhYmxlIGNlbGxzLlxuICovXG5cbnRhYmxlIHtcbiAgICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xuICAgIGJvcmRlci1zcGFjaW5nOiAwO1xufVxuXG50ZCxcbnRoIHtcbiAgICBwYWRkaW5nOiAwO1xufVxuIiwiQGNoYXJzZXQgXCJVVEYtOFwiO1xuLyohIG5vcm1hbGl6ZS5jc3MgdjMuMC4zIHwgTUlUIExpY2Vuc2UgfCBnaXRodWIuY29tL25lY29sYXMvbm9ybWFsaXplLmNzcyAqL1xuLyoqXG4gKiAxLiBTZXQgZGVmYXVsdCBmb250IGZhbWlseSB0byBzYW5zLXNlcmlmLlxuICogMi4gUHJldmVudCBpT1MgYW5kIElFIHRleHQgc2l6ZSBhZGp1c3QgYWZ0ZXIgZGV2aWNlIG9yaWVudGF0aW9uIGNoYW5nZSxcbiAqICAgIHdpdGhvdXQgZGlzYWJsaW5nIHVzZXIgem9vbS5cbiAqL1xuaHRtbCB7XG4gIGZvbnQtZmFtaWx5OiBzYW5zLXNlcmlmO1xuICAvKiAxICovXG4gIC1tcy10ZXh0LXNpemUtYWRqdXN0OiAxMDAlO1xuICAvKiAyICovXG4gIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTtcbiAgLyogMiAqLyB9XG5cbi8qKlxuICogUmVtb3ZlIGRlZmF1bHQgbWFyZ2luLlxuICovXG5ib2R5IHtcbiAgbWFyZ2luOiAwOyB9XG5cbi8qIEhUTUw1IGRpc3BsYXkgZGVmaW5pdGlvbnNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIENvcnJlY3QgYGJsb2NrYCBkaXNwbGF5IG5vdCBkZWZpbmVkIGZvciBhbnkgSFRNTDUgZWxlbWVudCBpbiBJRSA4LzkuXG4gKiBDb3JyZWN0IGBibG9ja2AgZGlzcGxheSBub3QgZGVmaW5lZCBmb3IgYGRldGFpbHNgIG9yIGBzdW1tYXJ5YCBpbiBJRSAxMC8xMVxuICogYW5kIEZpcmVmb3guXG4gKiBDb3JyZWN0IGBibG9ja2AgZGlzcGxheSBub3QgZGVmaW5lZCBmb3IgYG1haW5gIGluIElFIDExLlxuICovXG5hcnRpY2xlLFxuYXNpZGUsXG5kZXRhaWxzLFxuZmlnY2FwdGlvbixcbmZpZ3VyZSxcbmZvb3RlcixcbmhlYWRlcixcbmhncm91cCxcbm1haW4sXG5tZW51LFxubmF2LFxuc2VjdGlvbixcbnN1bW1hcnkge1xuICBkaXNwbGF5OiBibG9jazsgfVxuXG4vKipcbiAqIDEuIENvcnJlY3QgYGlubGluZS1ibG9ja2AgZGlzcGxheSBub3QgZGVmaW5lZCBpbiBJRSA4LzkuXG4gKiAyLiBOb3JtYWxpemUgdmVydGljYWwgYWxpZ25tZW50IG9mIGBwcm9ncmVzc2AgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgT3BlcmEuXG4gKi9cbmF1ZGlvLFxuY2FudmFzLFxucHJvZ3Jlc3MsXG52aWRlbyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgLyogMSAqL1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4gIC8qIDIgKi8gfVxuXG4vKipcbiAqIFByZXZlbnQgbW9kZXJuIGJyb3dzZXJzIGZyb20gZGlzcGxheWluZyBgYXVkaW9gIHdpdGhvdXQgY29udHJvbHMuXG4gKiBSZW1vdmUgZXhjZXNzIGhlaWdodCBpbiBpT1MgNSBkZXZpY2VzLlxuICovXG5hdWRpbzpub3QoW2NvbnRyb2xzXSkge1xuICBkaXNwbGF5OiBub25lO1xuICBoZWlnaHQ6IDA7IH1cblxuLyoqXG4gKiBBZGRyZXNzIGBbaGlkZGVuXWAgc3R5bGluZyBub3QgcHJlc2VudCBpbiBJRSA4LzkvMTAuXG4gKiBIaWRlIHRoZSBgdGVtcGxhdGVgIGVsZW1lbnQgaW4gSUUgOC85LzEwLzExLCBTYWZhcmksIGFuZCBGaXJlZm94IDwgMjIuXG4gKi9cbltoaWRkZW5dLFxudGVtcGxhdGUge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi8qIExpbmtzXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiBSZW1vdmUgdGhlIGdyYXkgYmFja2dyb3VuZCBjb2xvciBmcm9tIGFjdGl2ZSBsaW5rcyBpbiBJRSAxMC5cbiAqL1xuYSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG5cbi8qKlxuICogSW1wcm92ZSByZWFkYWJpbGl0eSBvZiBmb2N1c2VkIGVsZW1lbnRzIHdoZW4gdGhleSBhcmUgYWxzbyBpbiBhblxuICogYWN0aXZlL2hvdmVyIHN0YXRlLlxuICovXG5hOmFjdGl2ZSxcbmE6aG92ZXIge1xuICBvdXRsaW5lOiAwOyB9XG5cbi8qIFRleHQtbGV2ZWwgc2VtYW50aWNzXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiBBZGRyZXNzIHN0eWxpbmcgbm90IHByZXNlbnQgaW4gSUUgOC85LzEwLzExLCBTYWZhcmksIGFuZCBDaHJvbWUuXG4gKi9cbmFiYnJbdGl0bGVdIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IGRvdHRlZDsgfVxuXG4vKipcbiAqIEFkZHJlc3Mgc3R5bGUgc2V0IHRvIGBib2xkZXJgIGluIEZpcmVmb3ggNCssIFNhZmFyaSwgYW5kIENocm9tZS5cbiAqL1xuYixcbnN0cm9uZyB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkOyB9XG5cbi8qKlxuICogQWRkcmVzcyBzdHlsaW5nIG5vdCBwcmVzZW50IGluIFNhZmFyaSBhbmQgQ2hyb21lLlxuICovXG5kZm4ge1xuICBmb250LXN0eWxlOiBpdGFsaWM7IH1cblxuLyoqXG4gKiBBZGRyZXNzIHZhcmlhYmxlIGBoMWAgZm9udC1zaXplIGFuZCBtYXJnaW4gd2l0aGluIGBzZWN0aW9uYCBhbmQgYGFydGljbGVgXG4gKiBjb250ZXh0cyBpbiBGaXJlZm94IDQrLCBTYWZhcmksIGFuZCBDaHJvbWUuXG4gKi9cbmgxIHtcbiAgZm9udC1zaXplOiAyZW07XG4gIG1hcmdpbjogMC42N2VtIDA7IH1cblxuLyoqXG4gKiBBZGRyZXNzIHN0eWxpbmcgbm90IHByZXNlbnQgaW4gSUUgOC85LlxuICovXG5tYXJrIHtcbiAgYmFja2dyb3VuZDogI2ZmMDtcbiAgY29sb3I6ICMwMDA7IH1cblxuLyoqXG4gKiBBZGRyZXNzIGluY29uc2lzdGVudCBhbmQgdmFyaWFibGUgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAqL1xuc21hbGwge1xuICBmb250LXNpemU6IDgwJTsgfVxuXG4vKipcbiAqIFByZXZlbnQgYHN1YmAgYW5kIGBzdXBgIGFmZmVjdGluZyBgbGluZS1oZWlnaHRgIGluIGFsbCBicm93c2Vycy5cbiAqL1xuc3ViLFxuc3VwIHtcbiAgZm9udC1zaXplOiA3NSU7XG4gIGxpbmUtaGVpZ2h0OiAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTsgfVxuXG5zdXAge1xuICB0b3A6IC0wLjVlbTsgfVxuXG5zdWIge1xuICBib3R0b206IC0wLjI1ZW07IH1cblxuLyogRW1iZWRkZWQgY29udGVudFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICogUmVtb3ZlIGJvcmRlciB3aGVuIGluc2lkZSBgYWAgZWxlbWVudCBpbiBJRSA4LzkvMTAuXG4gKi9cbmltZyB7XG4gIGJvcmRlcjogMDsgfVxuXG4vKipcbiAqIENvcnJlY3Qgb3ZlcmZsb3cgbm90IGhpZGRlbiBpbiBJRSA5LzEwLzExLlxuICovXG5zdmc6bm90KDpyb290KSB7XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cblxuLyogR3JvdXBpbmcgY29udGVudFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICogQWRkcmVzcyBtYXJnaW4gbm90IHByZXNlbnQgaW4gSUUgOC85IGFuZCBTYWZhcmkuXG4gKi9cbmZpZ3VyZSB7XG4gIG1hcmdpbjogMWVtIDQwcHg7IH1cblxuLyoqXG4gKiBBZGRyZXNzIGRpZmZlcmVuY2VzIGJldHdlZW4gRmlyZWZveCBhbmQgb3RoZXIgYnJvd3NlcnMuXG4gKi9cbmhyIHtcbiAgYm94LXNpemluZzogY29udGVudC1ib3g7XG4gIGhlaWdodDogMDsgfVxuXG4vKipcbiAqIENvbnRhaW4gb3ZlcmZsb3cgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5wcmUge1xuICBvdmVyZmxvdzogYXV0bzsgfVxuXG4vKipcbiAqIEFkZHJlc3Mgb2RkIGBlbWAtdW5pdCBmb250IHNpemUgcmVuZGVyaW5nIGluIGFsbCBicm93c2Vycy5cbiAqL1xuY29kZSxcbmtiZCxcbnByZSxcbnNhbXAge1xuICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7XG4gIGZvbnQtc2l6ZTogMWVtOyB9XG5cbi8qIEZvcm1zXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiBLbm93biBsaW1pdGF0aW9uOiBieSBkZWZhdWx0LCBDaHJvbWUgYW5kIFNhZmFyaSBvbiBPUyBYIGFsbG93IHZlcnkgbGltaXRlZFxuICogc3R5bGluZyBvZiBgc2VsZWN0YCwgdW5sZXNzIGEgYGJvcmRlcmAgcHJvcGVydHkgaXMgc2V0LlxuICovXG4vKipcbiAqIDEuIENvcnJlY3QgY29sb3Igbm90IGJlaW5nIGluaGVyaXRlZC5cbiAqICAgIEtub3duIGlzc3VlOiBhZmZlY3RzIGNvbG9yIG9mIGRpc2FibGVkIGVsZW1lbnRzLlxuICogMi4gQ29ycmVjdCBmb250IHByb3BlcnRpZXMgbm90IGJlaW5nIGluaGVyaXRlZC5cbiAqIDMuIEFkZHJlc3MgbWFyZ2lucyBzZXQgZGlmZmVyZW50bHkgaW4gRmlyZWZveCA0KywgU2FmYXJpLCBhbmQgQ2hyb21lLlxuICovXG5idXR0b24sXG5pbnB1dCxcbm9wdGdyb3VwLFxuc2VsZWN0LFxudGV4dGFyZWEge1xuICBjb2xvcjogaW5oZXJpdDtcbiAgLyogMSAqL1xuICBmb250OiBpbmhlcml0O1xuICAvKiAyICovXG4gIG1hcmdpbjogMDtcbiAgLyogMyAqLyB9XG5cbi8qKlxuICogQWRkcmVzcyBgb3ZlcmZsb3dgIHNldCB0byBgaGlkZGVuYCBpbiBJRSA4LzkvMTAvMTEuXG4gKi9cbmJ1dHRvbiB7XG4gIG92ZXJmbG93OiB2aXNpYmxlOyB9XG5cbi8qKlxuICogQWRkcmVzcyBpbmNvbnNpc3RlbnQgYHRleHQtdHJhbnNmb3JtYCBpbmhlcml0YW5jZSBmb3IgYGJ1dHRvbmAgYW5kIGBzZWxlY3RgLlxuICogQWxsIG90aGVyIGZvcm0gY29udHJvbCBlbGVtZW50cyBkbyBub3QgaW5oZXJpdCBgdGV4dC10cmFuc2Zvcm1gIHZhbHVlcy5cbiAqIENvcnJlY3QgYGJ1dHRvbmAgc3R5bGUgaW5oZXJpdGFuY2UgaW4gRmlyZWZveCwgSUUgOC85LzEwLzExLCBhbmQgT3BlcmEuXG4gKiBDb3JyZWN0IGBzZWxlY3RgIHN0eWxlIGluaGVyaXRhbmNlIGluIEZpcmVmb3guXG4gKi9cbmJ1dHRvbixcbnNlbGVjdCB7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lOyB9XG5cbi8qKlxuICogMS4gQXZvaWQgdGhlIFdlYktpdCBidWcgaW4gQW5kcm9pZCA0LjAuKiB3aGVyZSAoMikgZGVzdHJveXMgbmF0aXZlIGBhdWRpb2BcbiAqICAgIGFuZCBgdmlkZW9gIGNvbnRyb2xzLlxuICogMi4gQ29ycmVjdCBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIGBpbnB1dGAgdHlwZXMgaW4gaU9TLlxuICogMy4gSW1wcm92ZSB1c2FiaWxpdHkgYW5kIGNvbnNpc3RlbmN5IG9mIGN1cnNvciBzdHlsZSBiZXR3ZWVuIGltYWdlLXR5cGVcbiAqICAgIGBpbnB1dGAgYW5kIG90aGVycy5cbiAqL1xuYnV0dG9uLFxuaHRtbCBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdLFxuaW5wdXRbdHlwZT1cInJlc2V0XCJdLFxuaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uO1xuICAvKiAyICovXG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgLyogMyAqLyB9XG5cbi8qKlxuICogUmUtc2V0IGRlZmF1bHQgY3Vyc29yIGZvciBkaXNhYmxlZCBlbGVtZW50cy5cbiAqL1xuYnV0dG9uW2Rpc2FibGVkXSxcbmh0bWwgaW5wdXRbZGlzYWJsZWRdIHtcbiAgY3Vyc29yOiBkZWZhdWx0OyB9XG5cbi8qKlxuICogUmVtb3ZlIGlubmVyIHBhZGRpbmcgYW5kIGJvcmRlciBpbiBGaXJlZm94IDQrLlxuICovXG5idXR0b246Oi1tb3otZm9jdXMtaW5uZXIsXG5pbnB1dDo6LW1vei1mb2N1cy1pbm5lciB7XG4gIGJvcmRlcjogMDtcbiAgcGFkZGluZzogMDsgfVxuXG4vKipcbiAqIEFkZHJlc3MgRmlyZWZveCA0KyBzZXR0aW5nIGBsaW5lLWhlaWdodGAgb24gYGlucHV0YCB1c2luZyBgIWltcG9ydGFudGAgaW5cbiAqIHRoZSBVQSBzdHlsZXNoZWV0LlxuICovXG5pbnB1dCB7XG4gIGxpbmUtaGVpZ2h0OiBub3JtYWw7IH1cblxuLyoqXG4gKiBJdCdzIHJlY29tbWVuZGVkIHRoYXQgeW91IGRvbid0IGF0dGVtcHQgdG8gc3R5bGUgdGhlc2UgZWxlbWVudHMuXG4gKiBGaXJlZm94J3MgaW1wbGVtZW50YXRpb24gZG9lc24ndCByZXNwZWN0IGJveC1zaXppbmcsIHBhZGRpbmcsIG9yIHdpZHRoLlxuICpcbiAqIDEuIEFkZHJlc3MgYm94IHNpemluZyBzZXQgdG8gYGNvbnRlbnQtYm94YCBpbiBJRSA4LzkvMTAuXG4gKiAyLiBSZW1vdmUgZXhjZXNzIHBhZGRpbmcgaW4gSUUgOC85LzEwLlxuICovXG5pbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0sXG5pbnB1dFt0eXBlPVwicmFkaW9cIl0ge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAvKiAxICovXG4gIHBhZGRpbmc6IDA7XG4gIC8qIDIgKi8gfVxuXG4vKipcbiAqIEZpeCB0aGUgY3Vyc29yIHN0eWxlIGZvciBDaHJvbWUncyBpbmNyZW1lbnQvZGVjcmVtZW50IGJ1dHRvbnMuIEZvciBjZXJ0YWluXG4gKiBgZm9udC1zaXplYCB2YWx1ZXMgb2YgdGhlIGBpbnB1dGAsIGl0IGNhdXNlcyB0aGUgY3Vyc29yIHN0eWxlIG9mIHRoZVxuICogZGVjcmVtZW50IGJ1dHRvbiB0byBjaGFuZ2UgZnJvbSBgZGVmYXVsdGAgdG8gYHRleHRgLlxuICovXG5pbnB1dFt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxuaW5wdXRbdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiB7XG4gIGhlaWdodDogYXV0bzsgfVxuXG4vKipcbiAqIDEuIEFkZHJlc3MgYGFwcGVhcmFuY2VgIHNldCB0byBgc2VhcmNoZmllbGRgIGluIFNhZmFyaSBhbmQgQ2hyb21lLlxuICogMi4gQWRkcmVzcyBgYm94LXNpemluZ2Agc2V0IHRvIGBib3JkZXItYm94YCBpbiBTYWZhcmkgYW5kIENocm9tZS5cbiAqL1xuaW5wdXRbdHlwZT1cInNlYXJjaFwiXSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogdGV4dGZpZWxkO1xuICAvKiAxICovXG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICAvKiAyICovIH1cblxuLyoqXG4gKiBSZW1vdmUgaW5uZXIgcGFkZGluZyBhbmQgc2VhcmNoIGNhbmNlbCBidXR0b24gaW4gU2FmYXJpIGFuZCBDaHJvbWUgb24gT1MgWC5cbiAqIFNhZmFyaSAoYnV0IG5vdCBDaHJvbWUpIGNsaXBzIHRoZSBjYW5jZWwgYnV0dG9uIHdoZW4gdGhlIHNlYXJjaCBpbnB1dCBoYXNcbiAqIHBhZGRpbmcgKGFuZCBgdGV4dGZpZWxkYCBhcHBlYXJhbmNlKS5cbiAqL1xuaW5wdXRbdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtY2FuY2VsLWJ1dHRvbixcbmlucHV0W3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWRlY29yYXRpb24ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7IH1cblxuLyoqXG4gKiBEZWZpbmUgY29uc2lzdGVudCBib3JkZXIsIG1hcmdpbiwgYW5kIHBhZGRpbmcuXG4gKi9cbmZpZWxkc2V0IHtcbiAgYm9yZGVyOiAxcHggc29saWQgI2MwYzBjMDtcbiAgbWFyZ2luOiAwIDJweDtcbiAgcGFkZGluZzogMC4zNWVtIDAuNjI1ZW0gMC43NWVtOyB9XG5cbi8qKlxuICogMS4gQ29ycmVjdCBgY29sb3JgIG5vdCBiZWluZyBpbmhlcml0ZWQgaW4gSUUgOC85LzEwLzExLlxuICogMi4gUmVtb3ZlIHBhZGRpbmcgc28gcGVvcGxlIGFyZW4ndCBjYXVnaHQgb3V0IGlmIHRoZXkgemVybyBvdXQgZmllbGRzZXRzLlxuICovXG5sZWdlbmQge1xuICBib3JkZXI6IDA7XG4gIC8qIDEgKi9cbiAgcGFkZGluZzogMDtcbiAgLyogMiAqLyB9XG5cbi8qKlxuICogUmVtb3ZlIGRlZmF1bHQgdmVydGljYWwgc2Nyb2xsYmFyIGluIElFIDgvOS8xMC8xMS5cbiAqL1xudGV4dGFyZWEge1xuICBvdmVyZmxvdzogYXV0bzsgfVxuXG4vKipcbiAqIERvbid0IGluaGVyaXQgdGhlIGBmb250LXdlaWdodGAgKGFwcGxpZWQgYnkgYSBydWxlIGFib3ZlKS5cbiAqIE5PVEU6IHRoZSBkZWZhdWx0IGNhbm5vdCBzYWZlbHkgYmUgY2hhbmdlZCBpbiBDaHJvbWUgYW5kIFNhZmFyaSBvbiBPUyBYLlxuICovXG5vcHRncm91cCB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkOyB9XG5cbi8qIFRhYmxlc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICogUmVtb3ZlIG1vc3Qgc3BhY2luZyBiZXR3ZWVuIHRhYmxlIGNlbGxzLlxuICovXG50YWJsZSB7XG4gIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG4gIGJvcmRlci1zcGFjaW5nOiAwOyB9XG5cbnRkLFxudGgge1xuICBwYWRkaW5nOiAwOyB9XG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogXCJOZXhhXCI7XG4gIHNyYzogdXJsKFwiLi4vZm9udHMvbmV4YV9saWdodC13ZWJmb250LmVvdFwiKTtcbiAgc3JjOiB1cmwoXCIuLi9mb250cy9uZXhhX2xpZ2h0LXdlYmZvbnQuZW90PyNpZWZpeFwiKSBmb3JtYXQoXCJlbWJlZGRlZC1vcGVudHlwZVwiKSwgdXJsKFwiLi4vZm9udHMvbmV4YV9saWdodC13ZWJmb250LndvZmYyXCIpIGZvcm1hdChcIndvZmYyXCIpLCB1cmwoXCIuLi9mb250cy9uZXhhX2xpZ2h0LXdlYmZvbnQud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpLCB1cmwoXCIuLi9mb250cy9uZXhhX2xpZ2h0LXdlYmZvbnQudHRmXCIpIGZvcm1hdChcInRydWV0eXBlXCIpO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBmb250LXN0eWxlOiBub3JtYWw7IH1cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiBcIk5leGFcIjtcbiAgc3JjOiB1cmwoXCIuLi9mb250cy9uZXhhX2JvbGQtd2ViZm9udC5lb3RcIik7XG4gIHNyYzogdXJsKFwiLi4vZm9udHMvbmV4YV9ib2xkLXdlYmZvbnQuZW90PyNpZWZpeFwiKSBmb3JtYXQoXCJlbWJlZGRlZC1vcGVudHlwZVwiKSwgdXJsKFwiLi4vZm9udHMvbmV4YV9ib2xkLXdlYmZvbnQud29mZjJcIikgZm9ybWF0KFwid29mZjJcIiksIHVybChcIi4uL2ZvbnRzL25leGFfYm9sZC13ZWJmb250LndvZmZcIikgZm9ybWF0KFwid29mZlwiKSwgdXJsKFwiLi4vZm9udHMvbmV4YV9ib2xkLXdlYmZvbnQudHRmXCIpIGZvcm1hdChcInRydWV0eXBlXCIpO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgZm9udC1zdHlsZTogbm9ybWFsOyB9XG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogXCJ0cmFja2lyLWljb25zXCI7XG4gIHNyYzogdXJsKFwiLi4vZm9udHMvdHJhY2tpci1pY29ucy5lb3Q/NTg3MzMyNDlcIik7XG4gIHNyYzogdXJsKFwiLi4vZm9udHMvdHJhY2tpci1pY29ucy5lb3Q/NTg3MzMyNDkjaWVmaXhcIikgZm9ybWF0KFwiZW1iZWRkZWQtb3BlbnR5cGVcIiksIHVybChcIi4uL2ZvbnRzL3RyYWNraXItaWNvbnMud29mZj81ODczMzI0OVwiKSBmb3JtYXQoXCJ3b2ZmXCIpLCB1cmwoXCIuLi9mb250cy90cmFja2lyLWljb25zLnR0Zj81ODczMzI0OVwiKSBmb3JtYXQoXCJ0cnVldHlwZVwiKSwgdXJsKFwiLi4vZm9udHMvdHJhY2tpci1pY29ucy5zdmc/NTg3MzMyNDkjdHJhY2tpci1pY29uc1wiKSBmb3JtYXQoXCJzdmdcIik7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDsgfVxuXG5bY2xhc3NePVwiaWNvbi1cIl06YmVmb3JlLCBbY2xhc3MqPVwiIGljb24tXCJdOmJlZm9yZSwgaGVhZGVyIG5hdltyb2xlPVwibmF2aWdhdGlvblwiXSA+IHVsID4gbGkuY2FydCBhOmFmdGVyIHtcbiAgZm9udC1mYW1pbHk6IFwidHJhY2tpci1pY29uc1wiO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIHNwZWFrOiBub25lO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHRleHQtZGVjb3JhdGlvbjogaW5oZXJpdDtcbiAgd2lkdGg6IDFlbTtcbiAgbWFyZ2luLXJpZ2h0OiAuMmVtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIC8qIEZvciBzYWZldHkgLSByZXNldCBwYXJlbnQgc3R5bGVzIHRoYXQgY2FuIGJyZWFrIGdseXBoIGNvZGVzICovXG4gIGZvbnQtdmFyaWFudDogbm9ybWFsO1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgLyogZml4IGJ1dHRvbnMgaGVpZ2h0LCBmb3IgdHdpdHRlciBib290c3RyYXAgKi9cbiAgLyogQW5pbWF0aW9uIGNlbnRlciBjb21wZW5zYXRpb24gLSBtYXJnaW5zIHNob3VsZCBiZSBzeW1tZXRyaWMgKi9cbiAgLyogcmVtb3ZlIGlmIG5vdCBuZWVkZWQgKi9cbiAgbWFyZ2luLWxlZnQ6IC4yZW07IH1cblxuLmljb24tYmFza2V0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7qCAXCI7IH1cblxuLmljb24tY2hldnJvbi1zbWFsbC1yaWdodDpiZWZvcmUge1xuICBjb250ZW50OiBcIu6ggVwiOyB9XG5cbi5pY29uLXR3aXRjaDpiZWZvcmUge1xuICBjb250ZW50OiBcIu6kgFwiOyB9XG5cbi5pY29uLXlvdXR1YmUtcGxheTpiZWZvcmUge1xuICBjb250ZW50OiBcIu6kgVwiOyB9XG5cbi5pY29uLXR3aXR0ZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCLupIJcIjsgfVxuXG4uaWNvbi1mYWNlYm9vazpiZWZvcmUge1xuICBjb250ZW50OiBcIu6kg1wiOyB9XG5cbi5pY29uLXJlZnJlc2g6YmVmb3JlIHtcbiAgY29udGVudDogXCLuoIJcIjsgfVxuXG4uaWNvbi1saW5rLWV4dDpiZWZvcmUge1xuICBjb250ZW50OiBcIu6gg1wiOyB9XG5cbi5pY29uLXBsYXktY2lyY2xlZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu6ghFwiOyB9XG5cbi5pY29uLWJsb2NrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7qCFXCI7IH1cblxuLmljb24tb2stY2lyY2xlZDI6YmVmb3JlIHtcbiAgY29udGVudDogXCLuoIZcIjsgfVxuXG4uaWNvbi1vazpiZWZvcmUge1xuICBjb250ZW50OiBcIu6gh1wiOyB9XG5cbi5pY29uLXVwLW9wZW4tYmlnOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7qCJXCI7IH1cblxuLmljb24tZG93bi1vcGVuLWJpZzpiZWZvcmUge1xuICBjb250ZW50OiBcIu6giFwiOyB9XG5cbmJvZHkge1xuICBjb2xvcjogI2ZhZTZjZDtcbiAgZm9udC1mYW1pbHk6IFwiQXJpYWxcIiwgc2Fucy1zZXJpZjtcbiAgbGluZS1oZWlnaHQ6IDEuMzsgfVxuXG5hIHtcbiAgY29sb3I6IHdoaXRlO1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgfVxuXG5oMSwgaDIsIGgzLCBoNCwgaDUsIGg2IHtcbiAgY29sb3I6IHdoaXRlO1xuICBmb250LXdlaWdodDogbm9ybWFsOyB9XG5cbmgxLCBoMiB7XG4gIGZvbnQtZmFtaWx5OiBcIk5leGFcIiwgc2Fucy1zZXJpZjtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgfVxuXG5oMyB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkOyB9XG5cbmxhYmVsIHtcbiAgY29sb3I6IHdoaXRlOyB9XG5cbmNvZGUge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMykgbm9uZSByZXBlYXQgc2Nyb2xsIDAlIDAlO1xuICBjb2xvcjogd2hpdGU7XG4gIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgcGFkZGluZzogMXB4IDlweDsgfVxuXG5ib2R5IHtcbiAgZm9udC1zaXplOiAxNnB4OyB9XG5cbmgxIHtcbiAgZm9udC1zaXplOiA0NXB4OyB9XG5cbmgyIHtcbiAgZm9udC1zaXplOiAzNnB4OyB9XG5cbmgzIHtcbiAgZm9udC1zaXplOiAxOHB4OyB9XG5cbi8qXG51bCB7XG4gICAgQGluY2x1ZGUgZmx1c2gtbGlzdDtcbn1cbiovXG5odG1sIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgb3ZlcmZsb3cteTogc2Nyb2xsOyB9XG5cbiosXG4qOmJlZm9yZSxcbio6YWZ0ZXIge1xuICBib3gtc2l6aW5nOiBpbmhlcml0OyB9XG5cbmltZyB7XG4gIG1heC13aWR0aDogMTAwJTsgfVxuXG5odG1sLFxuYm9keSB7XG4gIGhlaWdodDogMTAwJTsgfVxuXG5tYWluIHtcbiAgbWluLWhlaWdodDogMTAwJTtcbiAgbWFyZ2luLWJvdHRvbTogLTI0MHB4OyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIG1haW4ge1xuICAgICAgbWFyZ2luLWJvdHRvbTogLTIyNXB4OyB9IH1cblxubWFpbjo6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiAyNDBweDsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICBtYWluOjphZnRlciB7XG4gICAgICBoZWlnaHQ6IDIyNXB4OyB9IH1cblxuYm9keSB7XG4gIGJhY2tncm91bmQ6ICNFQzhBMDA7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgtOTBkZWcsICNFQzhBMDAgMCUsICNGQTlCMDAgMTAlLCAjRkZBNjAwIDIwJSwgI0ZGQTYwMCA4MCUsICNGQTlCMDAgOTAlLCAjRUM4QTAwIDEwMCUpLCByYWRpYWwtZ3JhZGllbnQoNTAlIDUwJSwgI0ZGQTYwMCA1MCUsICNGRkE2MDAgNjAlLCAjRkE5QjAwIDgwJSwgI0VDOEEwMCAxMDAlLCAjQjY1RjAwIDEzNSUpO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBsZWZ0IDAgdG9wIDEyMDUwcHgsIHRvcCBjZW50ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtc2l6ZTogYXV0byAxMDAwMHB4LCAxMDAlIDEyMDAwcHg7IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIGgxLCBoMiB7XG4gICAgbWFyZ2luLWJvdHRvbTogMHB4OyB9IH1cblxuaW5wdXRbdHlwZT1cInRleHRcIl0sXG5pbnB1dFt0eXBlPVwiZW1haWxcIl0sXG5pbnB1dFt0eXBlPVwidGVsXCJdLFxudGV4dGFyZWEge1xuICBmb250LXNpemU6IDEzcHg7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICBwYWRkaW5nOiA0cHggMTBweDtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItcmFkaXVzOiA1cHg7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC4xKTsgfVxuICBpbnB1dFt0eXBlPVwidGV4dFwiXTpmb2N1cywgaW5wdXRbdHlwZT1cInRleHRcIl06YWN0aXZlLFxuICBpbnB1dFt0eXBlPVwiZW1haWxcIl06Zm9jdXMsXG4gIGlucHV0W3R5cGU9XCJlbWFpbFwiXTphY3RpdmUsXG4gIGlucHV0W3R5cGU9XCJ0ZWxcIl06Zm9jdXMsXG4gIGlucHV0W3R5cGU9XCJ0ZWxcIl06YWN0aXZlLFxuICB0ZXh0YXJlYTpmb2N1cyxcbiAgdGV4dGFyZWE6YWN0aXZlIHtcbiAgICBib3gtc2hhZG93OiAwIDAgMCAxcHggd2hpdGU7XG4gICAgb3V0bGluZTogbm9uZTsgfVxuXG5pbnB1dFt0eXBlPVwic3VibWl0XCJdLFxuYnV0dG9uIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2Utb3V0O1xuICBwYWRkaW5nOiAxMHB4IDUycHg7XG4gIGJvcmRlcjogc29saWQgMXB4ICNmYWU2Y2Q7XG4gIGJvcmRlci1yYWRpdXM6IDQwcHg7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuICBpbnB1dFt0eXBlPVwic3VibWl0XCJdOmhvdmVyLFxuICBidXR0b246aG92ZXIge1xuICAgIGNvbG9yOiB3aGl0ZTtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuMSk7IH1cblxuc2VsZWN0IHtcbiAgY29sb3I6ICMwMDA7IH1cblxuaGVhZGVyIHtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciA1MDBtcyBlYXNlLWluLW91dDtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNDcsIDE0NiwgMCwgMCk7XG4gIGJvcmRlci1ib3R0b206IHNvbGlkIDFweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMzUpO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHdpZHRoOiAxMDAlO1xuICB0b3A6IDA7XG4gIHotaW5kZXg6IDEwMDA7XG4gIGhlaWdodDogNjBweDsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICBoZWFkZXIge1xuICAgICAgaGVpZ2h0OiA3NXB4OyB9IH1cbiAgaGVhZGVyLm1haW4tbmF2LXNjcm9sbGVkIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI0NywgMTQ2LCAwLCAwLjkpOyB9XG4gIGhlYWRlciBuYXZbcm9sZT1cIm5hdmlnYXRpb25cIl0ge1xuICAgIG1heC13aWR0aDogMjkwcHg7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIHBhZGRpbmc6IDVweCAwcHggN3B4OyB9XG4gICAgaGVhZGVyIG5hdltyb2xlPVwibmF2aWdhdGlvblwiXTphZnRlciB7XG4gICAgICBjb250ZW50OiBcIiBcIjtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgIGhlYWRlciBuYXZbcm9sZT1cIm5hdmlnYXRpb25cIl0ge1xuICAgICAgICBtYXgtd2lkdGg6IDcwMnB4O1xuICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9XG4gICAgICAgIGhlYWRlciBuYXZbcm9sZT1cIm5hdmlnYXRpb25cIl06YWZ0ZXIge1xuICAgICAgICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIGNsZWFyOiBib3RoOyB9IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgIGhlYWRlciBuYXZbcm9sZT1cIm5hdmlnYXRpb25cIl0ge1xuICAgICAgICBwYWRkaW5nOiAzMHB4IDAgMThweDsgfSB9XG4gICAgaGVhZGVyIG5hdltyb2xlPVwibmF2aWdhdGlvblwiXSAudHJhY2tpci1sb2dvIGEge1xuICAgICAgbWFyZ2luLWxlZnQ6IDI1LjQyMzczJTsgfVxuICAgIGhlYWRlciBuYXZbcm9sZT1cIm5hdmlnYXRpb25cIl0gLnRyYWNraXItbG9nbyBpbWcge1xuICAgICAgd2lkdGg6IDE0NHB4O1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICBoZWFkZXIgbmF2W3JvbGU9XCJuYXZpZ2F0aW9uXCJdIC50cmFja2lyLWxvZ28ge1xuICAgICAgICBkaXNwbGF5OiBub25lOyB9IH1cbiAgICBoZWFkZXIgbmF2W3JvbGU9XCJuYXZpZ2F0aW9uXCJdIGEge1xuICAgICAgcGFkZGluZzogMCA0cHg7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICBjb2xvcjogI2ZhZTZjZDtcbiAgICAgIGZvbnQtc2l6ZTogMTNweDsgfVxuICAgIGhlYWRlciBuYXZbcm9sZT1cIm5hdmlnYXRpb25cIl0gbGk6Zmlyc3QtY2hpbGQgYSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7IH1cbiAgICBoZWFkZXIgbmF2W3JvbGU9XCJuYXZpZ2F0aW9uXCJdIGxpOmxhc3QtY2hpbGQgYSB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwOyB9XG4gICAgaGVhZGVyIG5hdltyb2xlPVwibmF2aWdhdGlvblwiXSA+IHVsIHtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBtYXJnaW4tdG9wOiA1cHg7XG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgdGV4dC1hbGlnbjoganVzdGlmeTsgfVxuICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAgIGhlYWRlciBuYXZbcm9sZT1cIm5hdmlnYXRpb25cIl0gPiB1bCB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogLTRweDsgfSB9XG4gICAgICBoZWFkZXIgbmF2W3JvbGU9XCJuYXZpZ2F0aW9uXCJdID4gdWwgPiBsaSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICAgICAgICBoZWFkZXIgbmF2W3JvbGU9XCJuYXZpZ2F0aW9uXCJdID4gdWwgPiBsaS5jYXJ0IGEgc3BhbiB7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIHRvcDogLTk5OTk5cHg7XG4gICAgICAgICAgbGVmdDogLTk5OTk5cHg7IH1cbiAgICAgICAgaGVhZGVyIG5hdltyb2xlPVwibmF2aWdhdGlvblwiXSA+IHVsID4gbGkuY2FydCBhOmFmdGVyIHtcbiAgICAgICAgICBjb250ZW50OiBcIu6ggFwiOyB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgICAgaGVhZGVyIG5hdltyb2xlPVwibmF2aWdhdGlvblwiXSA+IHVsIGxpLmlubGluZS10cmFja2lyLWxvZ28ge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuICAgICAgaGVhZGVyIG5hdltyb2xlPVwibmF2aWdhdGlvblwiXSA+IHVsIGxpLmlubGluZS10cmFja2lyLWxvZ28gaW1nIHtcbiAgICAgICAgaGVpZ2h0OiAxNXB4OyB9XG4gICAgICBoZWFkZXIgbmF2W3JvbGU9XCJuYXZpZ2F0aW9uXCJdID4gdWwgbGk6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogNnB4OyB9XG4gICAgICBoZWFkZXIgbmF2W3JvbGU9XCJuYXZpZ2F0aW9uXCJdID4gdWwgbGk6bGFzdC1jaGlsZCB7XG4gICAgICAgIGZsb2F0OiByaWdodDsgfVxuICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAgIGhlYWRlciBuYXZbcm9sZT1cIm5hdmlnYXRpb25cIl0gPiB1bCBsaTpudGgtb2YtdHlwZSgyKSxcbiAgICAgICAgaGVhZGVyIG5hdltyb2xlPVwibmF2aWdhdGlvblwiXSA+IHVsIGxpOm50aC1vZi10eXBlKDMpIHtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogNjJweDsgfVxuICAgICAgICBoZWFkZXIgbmF2W3JvbGU9XCJuYXZpZ2F0aW9uXCJdID4gdWwgbGk6bnRoLW9mLXR5cGUoNCksXG4gICAgICAgIGhlYWRlciBuYXZbcm9sZT1cIm5hdmlnYXRpb25cIl0gPiB1bCBsaTpudGgtb2YtdHlwZSg1KSB7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDIycHg7IH0gfVxuXG5tYWluIHtcbiAgcGFkZGluZy10b3A6IDYwcHg7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgbWFpbiB7XG4gICAgICBwYWRkaW5nLXRvcDogNzVweDsgfSB9XG5cbmZvb3RlciB7XG4gIGJhY2tncm91bmQ6ICMxNjE2MTY7XG4gIGZvbnQtc2l6ZTogMTNweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwYWRkaW5nOiAyNXB4IDA7XG4gIGhlaWdodDogMjQwcHg7XG4gIG1hcmdpbi10b3A6IC0yNDBweDsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICBmb290ZXIge1xuICAgICAgcGFkZGluZzogNDBweCAwO1xuICAgICAgaGVpZ2h0OiAyMjVweDtcbiAgICAgIG1hcmdpbi10b3A6IC0yMjVweDsgfSB9XG4gIGZvb3RlciAuc29jaWFsLWxpbmtzLCBmb290ZXIgbmF2LmF1eGlsaWFyeSwgZm9vdGVyIC5zb3N1bWkge1xuICAgIG1heC13aWR0aDogMjkwcHg7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9XG4gICAgZm9vdGVyIC5zb2NpYWwtbGlua3M6YWZ0ZXIsIGZvb3RlciBuYXYuYXV4aWxpYXJ5OmFmdGVyLCBmb290ZXIgLnNvc3VtaTphZnRlciB7XG4gICAgICBjb250ZW50OiBcIiBcIjtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgIGZvb3RlciAuc29jaWFsLWxpbmtzLCBmb290ZXIgbmF2LmF1eGlsaWFyeSwgZm9vdGVyIC5zb3N1bWkge1xuICAgICAgICBtYXgtd2lkdGg6IDcwMnB4O1xuICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9XG4gICAgICAgIGZvb3RlciAuc29jaWFsLWxpbmtzOmFmdGVyLCBmb290ZXIgbmF2LmF1eGlsaWFyeTphZnRlciwgZm9vdGVyIC5zb3N1bWk6YWZ0ZXIge1xuICAgICAgICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIGNsZWFyOiBib3RoOyB9IH1cbiAgZm9vdGVyIGEge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBjb2xvcjogd2hpdGU7IH1cbiAgZm9vdGVyIC5zb2NpYWwtbGlua3Mge1xuICAgIGZvbnQtc2l6ZTogMjhweDsgfVxuICAgIGZvb3RlciAuc29jaWFsLWxpbmtzIGEge1xuICAgICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4zNSk7IH1cbiAgICBmb290ZXIgLnNvY2lhbC1saW5rcyB1bCB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nOiAwOyB9XG4gICAgICBmb290ZXIgLnNvY2lhbC1saW5rcyB1bCA+IGxpIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lO1xuICAgICAgICBwYWRkaW5nOiAwIDEwcHg7IH1cbiAgICAgICAgZm9vdGVyIC5zb2NpYWwtbGlua3MgdWwgPiBsaSAuaWNvbi10d2l0Y2gge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMjZweDsgfVxuICAgICAgICBmb290ZXIgLnNvY2lhbC1saW5rcyB1bCA+IGxpIC5sYWJlbCB7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIHRvcDogLTk5OTk5cHg7XG4gICAgICAgICAgbGVmdDogLTk5OTk5cHg7IH1cbiAgZm9vdGVyIG5hdi5hdXhpbGlhcnkgdWwge1xuICAgIHBhZGRpbmc6IDA7IH1cbiAgICBmb290ZXIgbmF2LmF1eGlsaWFyeSB1bCA+IGxpIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICBtYXJnaW4tbGVmdDogMC41ZW07XG4gICAgICBsaW5lLWhlaWdodDogMi4zZW07IH1cbiAgICAgIGZvb3RlciBuYXYuYXV4aWxpYXJ5IHVsID4gbGk6YmVmb3JlIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lO1xuICAgICAgICBjb250ZW50OiBcIlxcMjAyMlwiO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDAuM2VtOyB9XG4gICAgICBmb290ZXIgbmF2LmF1eGlsaWFyeSB1bCA+IGxpOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgICAgICAgZm9vdGVyIG5hdi5hdXhpbGlhcnkgdWwgPiBsaTpmaXJzdC1jaGlsZDpiZWZvcmUge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgICBmb290ZXIgbmF2LmF1eGlsaWFyeSB1bCA+IGxpOm50aC1vZi10eXBlKDUpLCBmb290ZXIgbmF2LmF1eGlsaWFyeSB1bCA+IGxpOm50aC1vZi10eXBlKDgpIHtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogMDsgfVxuICAgICAgICAgIGZvb3RlciBuYXYuYXV4aWxpYXJ5IHVsID4gbGk6bnRoLW9mLXR5cGUoNSk6YmVmb3JlLCBmb290ZXIgbmF2LmF1eGlsaWFyeSB1bCA+IGxpOm50aC1vZi10eXBlKDgpOmJlZm9yZSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lOyB9IH1cbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgICBmb290ZXIgbmF2LmF1eGlsaWFyeSB1bCA+IGxpOm50aC1vZi10eXBlKDkpIHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBtYXJnaW4tbGVmdDogMDsgfVxuICAgICAgICAgIGZvb3RlciBuYXYuYXV4aWxpYXJ5IHVsID4gbGk6bnRoLW9mLXR5cGUoOSk6YmVmb3JlIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuICBmb290ZXIgLmNvcHlyaWdodCxcbiAgZm9vdGVyIC5hbGwtcmlnaHRzLXJlc2VydmVkIHtcbiAgICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjM1KTsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgZm9vdGVyIC5jb3B5cmlnaHQsXG4gICAgICBmb290ZXIgLmFsbC1yaWdodHMtcmVzZXJ2ZWQge1xuICAgICAgICBkaXNwbGF5OiBibG9jazsgfSB9XG5cbltpZD1cImZlYXR1cmVkLXByb2R1Y3RzXCJdIHtcbiAgcGFkZGluZzogMjVweCAwIDMwcHg7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIFtpZD1cImZlYXR1cmVkLXByb2R1Y3RzXCJdIHtcbiAgICAgIHBhZGRpbmc6IDI1cHggMCA2NXB4OyB9IH1cbiAgW2lkPVwiZmVhdHVyZWQtcHJvZHVjdHNcIl0gYS5jdGEge1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2Utb3V0O1xuICAgIHBhZGRpbmc6IDEwcHggNTJweDtcbiAgICBib3JkZXI6IHNvbGlkIDFweCAjZmFlNmNkO1xuICAgIGJvcmRlci1yYWRpdXM6IDQwcHg7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICAgIFtpZD1cImZlYXR1cmVkLXByb2R1Y3RzXCJdIGEuY3RhOmhvdmVyIHtcbiAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC4xKTsgfVxuICBbaWQ9XCJmZWF0dXJlZC1wcm9kdWN0c1wiXSAucHJvZHVjdHMge1xuICAgIG1heC13aWR0aDogMjkwcHg7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9XG4gICAgW2lkPVwiZmVhdHVyZWQtcHJvZHVjdHNcIl0gLnByb2R1Y3RzOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgW2lkPVwiZmVhdHVyZWQtcHJvZHVjdHNcIl0gLnByb2R1Y3RzIHtcbiAgICAgICAgbWF4LXdpZHRoOiA3MDJweDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICAgIG1hcmdpbi1yaWdodDogYXV0bzsgfVxuICAgICAgICBbaWQ9XCJmZWF0dXJlZC1wcm9kdWN0c1wiXSAucHJvZHVjdHM6YWZ0ZXIge1xuICAgICAgICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIGNsZWFyOiBib3RoOyB9IH1cbiAgW2lkPVwiZmVhdHVyZWQtcHJvZHVjdHNcIl0gLnByb2R1Y3Qge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIG1hcmdpbi1yaWdodDogMDsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgW2lkPVwiZmVhdHVyZWQtcHJvZHVjdHNcIl0gLnByb2R1Y3Qge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA2NXB4OyB9IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgIFtpZD1cImZlYXR1cmVkLXByb2R1Y3RzXCJdIC5wcm9kdWN0Omxhc3QtY2hpbGQge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAzNXB4OyB9IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgIFtpZD1cImZlYXR1cmVkLXByb2R1Y3RzXCJdIC5wcm9kdWN0IHtcbiAgICAgICAgd2lkdGg6IDMyLjIwMzM5JTtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMS42OTQ5MiU7IH1cbiAgICAgICAgW2lkPVwiZmVhdHVyZWQtcHJvZHVjdHNcIl0gLnByb2R1Y3Q6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgd2lkdGg6IDMyLjIwMzM5JTtcbiAgICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwOyB9IH1cbiAgICBbaWQ9XCJmZWF0dXJlZC1wcm9kdWN0c1wiXSAucHJvZHVjdCBwIHtcbiAgICAgIG1hcmdpbjogMTBweCAwIC01cHg7IH1cbiAgICBbaWQ9XCJmZWF0dXJlZC1wcm9kdWN0c1wiXSAucHJvZHVjdCBwLnByaWNlIHtcbiAgICAgIHBhZGRpbmctdG9wOiAwcHg7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxNXB4OyB9XG4gICAgW2lkPVwiZmVhdHVyZWQtcHJvZHVjdHNcIl0gLnByb2R1Y3QgZmlndXJlIHtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIG1hcmdpbjogMCBhdXRvIDIwcHg7XG4gICAgICBoZWlnaHQ6IDE3NXB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDE3NXB4O1xuICAgICAgd2lkdGg6IDI4MHB4OyB9XG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgW2lkPVwiZmVhdHVyZWQtcHJvZHVjdHNcIl0gLnByb2R1Y3QgZmlndXJlIHtcbiAgICAgICAgICB3aWR0aDogMjIwcHg7IH0gfVxuICAgICAgW2lkPVwiZmVhdHVyZWQtcHJvZHVjdHNcIl0gLnByb2R1Y3QgZmlndXJlIGltZyB7XG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgbWF4LWhlaWdodDogMTAwJTtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IGJvdHRvbTsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgW2lkPVwiZmVhdHVyZWQtcHJvZHVjdHNcIl0gLnByb2R1Y3RbaWQ9XCJ0cmFja2NsaXAtcHJvXCJdIGZpZ3VyZSB7XG4gICAgICAgIGhlaWdodDogMjI1cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyMjVweDsgfSB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICBbaWQ9XCJmZWF0dXJlZC1wcm9kdWN0c1wiXSAucHJvZHVjdFtpZD1cInRyYWNrY2xpcC1wcm9cIl0gZmlndXJlIGltZyB7XG4gICAgICAgIGhlaWdodDogMTQwcHg7IH0gfVxuICAgIFtpZD1cImZlYXR1cmVkLXByb2R1Y3RzXCJdIC5wcm9kdWN0W2lkPVwidGlyNVwiXSBmaWd1cmUge1xuICAgICAgd2lkdGg6IDIxMHB4OyB9XG4gICAgW2lkPVwiZmVhdHVyZWQtcHJvZHVjdHNcIl0gLnByb2R1Y3RbaWQ9XCJ0aXI1LXByby1idW5kbGVcIl0gZmlndXJlIHtcbiAgICAgIHdpZHRoOiAyODBweDsgfVxuICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAgIFtpZD1cImZlYXR1cmVkLXByb2R1Y3RzXCJdIC5wcm9kdWN0W2lkPVwidGlyNS1wcm8tYnVuZGxlXCJdIGZpZ3VyZSB7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IC0yOXB4OyB9IH1cblxuYm9keS5ob21lIG1haW4ge1xuICBvcGFjaXR5OiAwO1xuICBhbmltYXRpb24tbmFtZTogZmFkZS1zaXRlLWluO1xuICBhbmltYXRpb24tZHVyYXRpb246IDJzO1xuICBhbmltYXRpb24tZmlsbC1tb2RlOiBmb3J3YXJkcztcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuXG5Aa2V5ZnJhbWVzIGZhZGUtc2l0ZS1pbiB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAwOyB9XG4gIDMwJSB7XG4gICAgb3BhY2l0eTogMDsgfVxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAxOyB9IH1cbiAgYm9keS5ob21lIG1haW4gc2VjdGlvbiB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgYm9keS5ob21lIG1haW4gc2VjdGlvbiBhLmN0YSB7XG4gICAgICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLW91dDtcbiAgICAgIHBhZGRpbmc6IDEwcHggNTJweDtcbiAgICAgIGJvcmRlcjogc29saWQgMXB4ICNmYWU2Y2Q7XG4gICAgICBib3JkZXItcmFkaXVzOiA0MHB4O1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG4gICAgICBib2R5LmhvbWUgbWFpbiBzZWN0aW9uIGEuY3RhOmhvdmVyIHtcbiAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuMSk7IH1cblxuYm9keS5ob21lIGgxIHtcbiAgZm9udC1zaXplOiAzNnB4OyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIGJvZHkuaG9tZSBoMSB7XG4gICAgICBmb250LXNpemU6IDQ1cHg7IH0gfVxuXG5ib2R5LmhvbWUgaDIge1xuICBmb250LXNpemU6IDI4cHg7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgYm9keS5ob21lIGgyIHtcbiAgICAgIGZvbnQtc2l6ZTogNDVweDsgfSB9XG5cbmJvZHkuaG9tZSBbaWQ9XCJpbnRyb1wiXSB7XG4gIG1heC13aWR0aDogMjkwcHg7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1hcmdpbi10b3A6IDYwcHg7XG4gIG1hcmdpbi1ib3R0b206IDQwcHg7IH1cbiAgYm9keS5ob21lIFtpZD1cImludHJvXCJdOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIiBcIjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjbGVhcjogYm90aDsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICBib2R5LmhvbWUgW2lkPVwiaW50cm9cIl0ge1xuICAgICAgbWF4LXdpZHRoOiA3MDJweDtcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9XG4gICAgICBib2R5LmhvbWUgW2lkPVwiaW50cm9cIl06YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcIiBcIjtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGNsZWFyOiBib3RoOyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgYm9keS5ob21lIFtpZD1cImludHJvXCJdIHtcbiAgICAgIG1pbi1oZWlnaHQ6IDk4cHg7IH0gfVxuICBib2R5LmhvbWUgW2lkPVwiaW50cm9cIl0gLnR5cGVkIHNwYW4ge1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICB0b3A6IC0yMnB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICBib2R5LmhvbWUgW2lkPVwiaW50cm9cIl0gaDEge1xuICAgIGZvbnQtc2l6ZTogMzZweDsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgYm9keS5ob21lIFtpZD1cImludHJvXCJdIGgxIHtcbiAgICAgICAgZm9udC1zaXplOiA0NXB4OyB9IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgIGJvZHkuaG9tZSBbaWQ9XCJpbnRyb1wiXSBoMSBiciB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuICBib2R5LmhvbWUgW2lkPVwiaW50cm9cIl0gLmNvbnRlbnQgaDMge1xuICAgIG1hcmdpbi10b3A6IDcwMHB4OyB9XG5cbmJvZHkuaG9tZSAubW9uaXRvci1jb250YWluZXIge1xuICBtYXgtd2lkdGg6IDI5MHB4O1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBoZWlnaHQ6IDU4MHB4OyB9XG4gIGJvZHkuaG9tZSAubW9uaXRvci1jb250YWluZXI6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIGJvZHkuaG9tZSAubW9uaXRvci1jb250YWluZXIge1xuICAgICAgbWF4LXdpZHRoOiA3MDJweDtcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9XG4gICAgICBib2R5LmhvbWUgLm1vbml0b3ItY29udGFpbmVyOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCIgXCI7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBjbGVhcjogYm90aDsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIGJvZHkuaG9tZSAubW9uaXRvci1jb250YWluZXIge1xuICAgICAgaGVpZ2h0OiA1MzBweDsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIGJvZHkuaG9tZSAubW9uaXRvci1jb250YWluZXIgLnN0YXRpYy1mYWxsYmFjayB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgYm9keS5ob21lIC5tb25pdG9yLWNvbnRhaW5lciAuZGlzcGxheS1zdXJyb3VuZCxcbiAgICBib2R5LmhvbWUgLm1vbml0b3ItY29udGFpbmVyIC5kZW1vLXZpZGVvIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuICBib2R5LmhvbWUgLm1vbml0b3ItY29udGFpbmVyIGEge1xuICAgIHdpZHRoOiAyNjkuNDkxNTMlO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIG1hcmdpbi1yaWdodDogMS42OTQ5MiU7XG4gICAgbWFyZ2luLWxlZnQ6IC04NC43NDU3NiU7IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgIGJvZHkuaG9tZSAubW9uaXRvci1jb250YWluZXIgYSB7XG4gICAgICAgIHdpZHRoOiAxMTYuOTQ5MTUlO1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxLjY5NDkyJTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC04LjQ3NDU4JTsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIGJvZHkuaG9tZSAubW9uaXRvci1jb250YWluZXIgaW1nIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IC0yMDFweDtcbiAgICAgIG9wYWNpdHk6IC45OTsgfSB9XG4gIGJvZHkuaG9tZSAubW9uaXRvci1jb250YWluZXIgdmlkZW8ge1xuICAgIG1hcmdpbi10b3A6IC0xMjAwcHg7XG4gICAgbWFyZ2luLWxlZnQ6IDM5cHg7XG4gICAgd2lkdGg6IDc0NnB4OyB9XG5cbmJvZHkuaG9tZSBbaWQ9XCJpbnRyby1jdGFcIl0ge1xuICBtYXgtd2lkdGg6IDI5MHB4O1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXJnaW4tYm90dG9tOiA1MHB4OyB9XG4gIGJvZHkuaG9tZSBbaWQ9XCJpbnRyby1jdGFcIl06YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIGJvZHkuaG9tZSBbaWQ9XCJpbnRyby1jdGFcIl0ge1xuICAgICAgbWF4LXdpZHRoOiA3MDJweDtcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9XG4gICAgICBib2R5LmhvbWUgW2lkPVwiaW50cm8tY3RhXCJdOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCIgXCI7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBjbGVhcjogYm90aDsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIGJvZHkuaG9tZSBbaWQ9XCJpbnRyby1jdGFcIl0gLmNhbGwtdG8tYWN0aW9uIHtcbiAgICAgIHdpZHRoOiA4My4wNTA4NSU7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIG1hcmdpbi1yaWdodDogMS42OTQ5MiU7XG4gICAgICBtYXJnaW4tbGVmdDogOC40NzQ1OCU7IH0gfVxuICBib2R5LmhvbWUgW2lkPVwiaW50cm8tY3RhXCJdIC5jYWxsLXRvLWFjdGlvbiBhLmN0YSB7XG4gICAgbWFyZ2luLXRvcDogMjBweDsgfVxuICBib2R5LmhvbWUgW2lkPVwiaW50cm8tY3RhXCJdIC5jYWxsLXRvLWFjdGlvbiAuY2FsbC10by1hY3Rpb24tbGlua3MgYSB7XG4gICAgd2lkdGg6IDI4MHB4OyB9XG5cbmJvZHkuaG9tZSBbaWQ9XCJmZWF0dXJlZC1wcm9kdWN0c1wiXSB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC4xKTsgfVxuXG5ib2R5LmhvbWUgW2lkPVwiZ2FtZXItdGVzdGltb25pYWxzXCJdIHtcbiAgbWF4LXdpZHRoOiAyOTBweDtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgbWFyZ2luLXRvcDogNTBweDtcbiAgbWFyZ2luLWJvdHRvbTogNTBweDsgfVxuICBib2R5LmhvbWUgW2lkPVwiZ2FtZXItdGVzdGltb25pYWxzXCJdOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIiBcIjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjbGVhcjogYm90aDsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICBib2R5LmhvbWUgW2lkPVwiZ2FtZXItdGVzdGltb25pYWxzXCJdIHtcbiAgICAgIG1heC13aWR0aDogNzAycHg7XG4gICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgIG1hcmdpbi1yaWdodDogYXV0bzsgfVxuICAgICAgYm9keS5ob21lIFtpZD1cImdhbWVyLXRlc3RpbW9uaWFsc1wiXTphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgY2xlYXI6IGJvdGg7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICBib2R5LmhvbWUgW2lkPVwiZ2FtZXItdGVzdGltb25pYWxzXCJdIHtcbiAgICAgIG1hcmdpbi10b3A6IDgwcHg7IH0gfVxuICBib2R5LmhvbWUgW2lkPVwiZ2FtZXItdGVzdGltb25pYWxzXCJdIC50ZXN0aW1vbmlhbC1jb250YWluZXIge1xuICAgIG1hcmdpbi10b3A6IDUwcHg7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgYm9keS5ob21lIFtpZD1cImdhbWVyLXRlc3RpbW9uaWFsc1wiXSAudGVzdGltb25pYWwge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tYm90dG9tOiA1MHB4OyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICBib2R5LmhvbWUgW2lkPVwiZ2FtZXItdGVzdGltb25pYWxzXCJdIC50ZXN0aW1vbmlhbCB7XG4gICAgICAgIHdpZHRoOiA0OS4xNTI1NCU7XG4gICAgICAgIGZsb2F0OiBsZWZ0OyB9XG4gICAgICAgIGJvZHkuaG9tZSBbaWQ9XCJnYW1lci10ZXN0aW1vbmlhbHNcIl0gLnRlc3RpbW9uaWFsOm50aC1jaGlsZCgybiArIDEpIHtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IC0xMDAlO1xuICAgICAgICAgIGNsZWFyOiBib3RoO1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwOyB9XG4gICAgICAgIGJvZHkuaG9tZSBbaWQ9XCJnYW1lci10ZXN0aW1vbmlhbHNcIl0gLnRlc3RpbW9uaWFsOm50aC1jaGlsZCgybiArIDIpIHtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogNTAuODQ3NDYlO1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogLTEwMCU7XG4gICAgICAgICAgY2xlYXI6IG5vbmU7IH0gfVxuICBib2R5LmhvbWUgW2lkPVwiZ2FtZXItdGVzdGltb25pYWxzXCJdIGltZyB7XG4gICAgY2xlYXI6IGJvdGg7XG4gICAgd2lkdGg6IDE1LjI1NDI0JTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBtYXJnaW4tcmlnaHQ6IDEuNjk0OTIlO1xuICAgIHdpZHRoOiA0MHB4OyB9XG4gIGJvZHkuaG9tZSBbaWQ9XCJnYW1lci10ZXN0aW1vbmlhbHNcIl0gLnF1b3RlIHtcbiAgICBmb250LXNpemU6IDE2cHg7XG4gICAgbWFyZ2luLXRvcDogMHB4O1xuICAgIHdpZHRoOiA4My4wNTA4NSU7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG4gICAgYm9keS5ob21lIFtpZD1cImdhbWVyLXRlc3RpbW9uaWFsc1wiXSAucXVvdGUgYSB7XG4gICAgICBtYXJnaW4tbGVmdDogLTJweDsgfVxuICAgIGJvZHkuaG9tZSBbaWQ9XCJnYW1lci10ZXN0aW1vbmlhbHNcIl0gLnF1b3RlIC5wZXJzb24ge1xuICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICBtYXJnaW4tdG9wOiAxMnB4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogMHB4O1xuICAgICAgY29sb3I6IHdoaXRlOyB9XG5cbmJvZHkuaG9tZSBbaWQ9XCJmZWF0dXJlZC1nYW1lc1wiXSB7XG4gIGJhY2tncm91bmQ6ICMyMzIzMjMgbm9uZSByZXBlYXQgMCAwO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjM1KTtcbiAgcGFkZGluZy1ib3R0b206IDgwcHg7XG4gIHBhZGRpbmctdG9wOiAyMHB4OyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIGJvZHkuaG9tZSBbaWQ9XCJmZWF0dXJlZC1nYW1lc1wiXSB7XG4gICAgICBwYWRkaW5nOiA1MHB4IGF1dG87IH0gfVxuICBib2R5LmhvbWUgW2lkPVwiZmVhdHVyZWQtZ2FtZXNcIl0gLmdhbWVzLXdyYXAge1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgIGJvZHkuaG9tZSBbaWQ9XCJmZWF0dXJlZC1nYW1lc1wiXSAuZ2FtZXMtd3JhcCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDYwcHg7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIG92ZXJmbG93LXg6IGhpZGRlbjsgfSB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICBib2R5LmhvbWUgW2lkPVwiZmVhdHVyZWQtZ2FtZXNcIl0gLmdhbWVzLXdyYXAgLmdhbWVzIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB0b3A6IDE3cHg7IH0gfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgYm9keS5ob21lIFtpZD1cImZlYXR1cmVkLWdhbWVzXCJdIC5nYW1lcy13cmFwIC5nYW1lcyAuZ2FtZXMtbGlzdCB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwOyB9IH1cbiAgICBib2R5LmhvbWUgW2lkPVwiZmVhdHVyZWQtZ2FtZXNcIl0gLmdhbWVzLXdyYXAgLmdhbWVzIC5nYW1lcy1saXN0IC5nYW1lLWJhY2tncm91bmQge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy90cmFja2lyLWVuaGFuY2VkLWdhbWVzLXZlcnRpY2FsLnBuZyk7XG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgaGVpZ2h0OiA0MDBweDsgfVxuICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAgIGJvZHkuaG9tZSBbaWQ9XCJmZWF0dXJlZC1nYW1lc1wiXSAuZ2FtZXMtd3JhcCAuZ2FtZXMgLmdhbWVzLWxpc3QgLmdhbWUtYmFja2dyb3VuZCB7XG4gICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy90cmFja2lyLWVuaGFuY2VkLWdhbWVzLWhvcml6b250YWwucG5nKTtcbiAgICAgICAgICBoZWlnaHQ6IDIxMHB4O1xuICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgICAgICAgYmFja2dyb3VuZC1zaXplOiBhdXRvIGF1dG87XG4gICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcbiAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0OyB9IH1cblxuYm9keS5ob21lIC50eXBlZC1jdXJzb3Ige1xuICBvcGFjaXR5OiAxO1xuICBhbmltYXRpb246IGN1cnNvci1ibGluayAxcyBpbmZpbml0ZTtcbiAgZm9udC1mYW1pbHk6IFwiQXJpYWxcIiwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDEwMDsgfVxuXG5Aa2V5ZnJhbWVzIGN1cnNvci1ibGluayB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAxOyB9XG4gIDUwJSB7XG4gICAgb3BhY2l0eTogMDsgfVxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAxOyB9IH1cblxuYm9keS5ob21lIGZvb3RlciB7XG4gIG9wYWNpdHk6IC45OTtcbiAgYmFja2dyb3VuZDogIzIzMjMyMyBub25lIHJlcGVhdCAwIDA7IH1cblxuYm9keS5jYXJ0IC5lZGl0Y2FydCB7XG4gIG1heC13aWR0aDogMjkwcHg7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICBib2R5LmNhcnQgLmVkaXRjYXJ0OmFmdGVyIHtcbiAgICBjb250ZW50OiBcIiBcIjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjbGVhcjogYm90aDsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICBib2R5LmNhcnQgLmVkaXRjYXJ0IHtcbiAgICAgIG1heC13aWR0aDogNzAycHg7XG4gICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgIG1hcmdpbi1yaWdodDogYXV0bzsgfVxuICAgICAgYm9keS5jYXJ0IC5lZGl0Y2FydDphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgY2xlYXI6IGJvdGg7IH0gfVxuICBib2R5LmNhcnQgLmVkaXRjYXJ0IFtpZD1cImNvbnRpbnVlU2hvcHBpbmdcIl0ge1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2Utb3V0O1xuICAgIHBhZGRpbmc6IDEwcHggNTJweDtcbiAgICBib3JkZXI6IHNvbGlkIDFweCAjZmFlNmNkO1xuICAgIGJvcmRlci1yYWRpdXM6IDQwcHg7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXJnaW4tdG9wOiAzNXB4O1xuICAgIG1hcmdpbi1ib3R0b206IDM1cHg7IH1cbiAgICBib2R5LmNhcnQgLmVkaXRjYXJ0IFtpZD1cImNvbnRpbnVlU2hvcHBpbmdcIl06aG92ZXIge1xuICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjEpOyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICBib2R5LmNhcnQgLmVkaXRjYXJ0IFtpZD1cImNvbnRpbnVlU2hvcHBpbmdcIl0ge1xuICAgICAgICBmbG9hdDogbGVmdDsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIGJvZHkuY2FydCAuZWRpdGNhcnQgW2lkPVwiY29udGludWVTaG9wcGluZ1wiXSArIGEge1xuICAgICAgZmxvYXQ6IHJpZ2h0OyB9IH1cbiAgYm9keS5jYXJ0IC5lZGl0Y2FydCAuaXRlbXMge1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgcGFkZGluZy1sZWZ0OiAwOyB9XG4gIGJvZHkuY2FydCAuZWRpdGNhcnQgLml0ZW0ge1xuICAgIHBhZGRpbmc6IDI1cHggMHB4O1xuICAgIGJvcmRlci1ib3R0b206IHNvbGlkIDFweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSk7IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgIGJvZHkuY2FydCAuZWRpdGNhcnQgLml0ZW0ge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDIwcHg7IH0gfVxuICAgIGJvZHkuY2FydCAuZWRpdGNhcnQgLml0ZW0gLm1vbmlrZXIge1xuICAgICAgdGV4dC1hbGlnbjogbGVmdDsgfVxuICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAgIGJvZHkuY2FydCAuZWRpdGNhcnQgLml0ZW0gLm1vbmlrZXIge1xuICAgICAgICAgIHdpZHRoOiAyODBweDtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7IH1cbiAgICAgICAgICBib2R5LmNhcnQgLmVkaXRjYXJ0IC5pdGVtIC5tb25pa2VyIGgzIHtcbiAgICAgICAgICAgIG1hcmdpbjogMDsgfSB9XG4gICAgICBib2R5LmNhcnQgLmVkaXRjYXJ0IC5pdGVtIC5tb25pa2VyIC5wYXJ0Lm51bWJlciB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICBib2R5LmNhcnQgLmVkaXRjYXJ0IC5pdGVtIC5wcmljZSB7XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgYm9keS5jYXJ0IC5lZGl0Y2FydCAuaXRlbSAucHJpY2Uge1xuICAgICAgICAgIGxlZnQ6IDM0MHB4O1xuICAgICAgICAgIHdpZHRoOiA2MHB4O1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsgfSB9XG4gICAgYm9keS5jYXJ0IC5lZGl0Y2FydCAuaXRlbSAubXVsdGlwbHkuc2lnbiB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgYm9keS5jYXJ0IC5lZGl0Y2FydCAuaXRlbSAubXVsdGlwbHkuc2lnbiB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIGxlZnQ6IDQxMHB4OyB9IH1cbiAgICBib2R5LmNhcnQgLmVkaXRjYXJ0IC5pdGVtIGZpZWxkc2V0IHtcbiAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAgIGJvZHkuY2FydCAuZWRpdGNhcnQgLml0ZW0gZmllbGRzZXQge1xuICAgICAgICAgIHBhZGRpbmc6IDE1cHggMDsgfSB9XG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgYm9keS5jYXJ0IC5lZGl0Y2FydCAuaXRlbSBmaWVsZHNldCB7XG4gICAgICAgICAgcGFkZGluZzogMHB4OyB9IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgICBib2R5LmNhcnQgLmVkaXRjYXJ0IC5pdGVtIGZpZWxkc2V0IGlucHV0W25hbWU9XCJxdWFudFwiXSB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogLTQwcHg7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiA5MHB4O1xuICAgICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgICB3aWR0aDogNTBweDtcbiAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDsgfSB9XG4gICAgICBib2R5LmNhcnQgLmVkaXRjYXJ0IC5pdGVtIGZpZWxkc2V0IGJ1dHRvblt0eXBlPVwic3VibWl0XCJdIHtcbiAgICAgICAgYm9yZGVyOiBtZWRpdW0gbm9uZTtcbiAgICAgICAgcGFkZGluZzogMTVweCAwcHg7IH1cbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAgICAgYm9keS5jYXJ0IC5lZGl0Y2FydCAuaXRlbSBmaWVsZHNldCBidXR0b25bdHlwZT1cInN1Ym1pdFwiXSB7XG4gICAgICAgICAgICBmbG9hdDogcmlnaHQ7IH0gfVxuICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgICBib2R5LmNhcnQgLmVkaXRjYXJ0IC5pdGVtIGZpZWxkc2V0IGJ1dHRvblt0eXBlPVwic3VibWl0XCJdIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDBweCAwcHg7IH0gfVxuICAgICAgYm9keS5jYXJ0IC5lZGl0Y2FydCAuaXRlbSBmaWVsZHNldCBidXR0b25bdHlwZT1cInN1Ym1pdFwiXTpob3ZlcixcbiAgICAgIGJvZHkuY2FydCAuZWRpdGNhcnQgLml0ZW0gZmllbGRzZXQgYnV0dG9uW3R5cGU9XCJzdWJtaXRcIl06YWN0aXZlIHtcbiAgICAgICAgYmFja2dyb3VuZDogbm9uZTsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgYm9keS5jYXJ0IC5lZGl0Y2FydCAuaXRlbSBmb3JtLnVwZGF0ZS5xdWFudGl0eSB7XG4gICAgICAgIG1hcmdpbi10b3A6IC0yMHB4OyB9XG4gICAgICAgIGJvZHkuY2FydCAuZWRpdGNhcnQgLml0ZW0gZm9ybS51cGRhdGUucXVhbnRpdHkgaW5wdXRbdHlwZT1cInRleHRcIl0ge1xuICAgICAgICAgIG1hcmdpbi10b3A6IC0yMHB4O1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICBsZWZ0OiAxMDBweDsgfSB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICBib2R5LmNhcnQgLmVkaXRjYXJ0IC5pdGVtIGZvcm0udXBkYXRlLnF1YW50aXR5IHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBsZWZ0OiAzODBweDtcbiAgICAgICAgd2lkdGg6IDIwMHB4OyB9XG4gICAgICAgIGJvZHkuY2FydCAuZWRpdGNhcnQgLml0ZW0gZm9ybS51cGRhdGUucXVhbnRpdHkgaW5wdXRbdHlwZT1cInRleHRcIl0ge1xuICAgICAgICAgIHdpZHRoOiA0NXB4O1xuICAgICAgICAgIG1hcmdpbi10b3A6IC01cHg7XG4gICAgICAgICAgaGVpZ2h0OiAyMHB4O1xuICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0OyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICBib2R5LmNhcnQgLmVkaXRjYXJ0IC5pdGVtIGZvcm0udXBkYXRlLnF1YW50aXR5IGJ1dHRvbiB7XG4gICAgICBtYXJnaW4tdG9wOiAtMjBweDsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgYm9keS5jYXJ0IC5lZGl0Y2FydCAuaXRlbSBmb3JtLnVwZGF0ZS5xdWFudGl0eSBidXR0b24ge1xuICAgICAgbWFyZ2luLWxlZnQ6IDVweDsgfSB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICBib2R5LmNhcnQgLmVkaXRjYXJ0IC5pdGVtIGZvcm0ucmVtb3ZlIGJ1dHRvbiB7XG4gICAgICAgIG1hcmdpbi10b3A6IC01MHB4OyB9IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgIGJvZHkuY2FydCAuZWRpdGNhcnQgLml0ZW0gZm9ybS5yZW1vdmUge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGxlZnQ6IDU1MHB4OyB9XG4gICAgICAgIGJvZHkuY2FydCAuZWRpdGNhcnQgLml0ZW0gZm9ybS5yZW1vdmU6OmFmdGVyIHtcbiAgICAgICAgICBjb250ZW50OiBcInxcIjtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgbGVmdDogLTlweDtcbiAgICAgICAgICB0b3A6IDA7IH0gfVxuICAgIGJvZHkuY2FydCAuZWRpdGNhcnQgLml0ZW0gLmxpbmUudG90YWwge1xuICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgaGVpZ2h0OiAyMHB4OyB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgICAgYm9keS5jYXJ0IC5lZGl0Y2FydCAuaXRlbSAubGluZS50b3RhbCB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogLTExMnB4OyB9IH1cbiAgYm9keS5jYXJ0IC5lZGl0Y2FydCAuZGVjaXNpb24ge1xuICAgIHBhZGRpbmctdG9wOiA0MHB4OyB9XG4gICAgYm9keS5jYXJ0IC5lZGl0Y2FydCAuZGVjaXNpb24gLmNoZWNrb3V0IHtcbiAgICAgIHBhZGRpbmc6IDVweCAwOyB9XG4gICAgICBib2R5LmNhcnQgLmVkaXRjYXJ0IC5kZWNpc2lvbiAuY2hlY2tvdXQgYSB7XG4gICAgICAgIG1hcmdpbjogMTBweCAwcHg7XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2Utb3V0O1xuICAgICAgICBwYWRkaW5nOiAxMHB4IDUycHg7XG4gICAgICAgIGJvcmRlcjogc29saWQgMXB4ICNmYWU2Y2Q7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDQwcHg7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG4gICAgICAgIGJvZHkuY2FydCAuZWRpdGNhcnQgLmRlY2lzaW9uIC5jaGVja291dCBhOmhvdmVyIHtcbiAgICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgICAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjEpOyB9XG4gICAgYm9keS5jYXJ0IC5lZGl0Y2FydCAuZGVjaXNpb24gLnJlbW92ZS5hbGwge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICBib2R5LmNhcnQgLmVkaXRjYXJ0IC5jYWxjdWxhdGUuYm94IHtcbiAgICB0ZXh0LWFsaWduOiByaWdodDsgfVxuXG5ib2R5LmNoZWNrb3V0IGgxLFxuYm9keS5jaGVja291dCBoMiB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuXG5ib2R5LmNoZWNrb3V0IGg2IHtcbiAgZm9udC1zaXplOiAxNnB4O1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgbWFyZ2luOiAxNXB4IDA7IH1cblxuYm9keS5jaGVja291dCBmaWVsZHNldCB7XG4gIGJvcmRlcjogbm9uZTsgfVxuXG5ib2R5LmNoZWNrb3V0IGhyIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG5ib2R5LmNoZWNrb3V0IC5lbmMtc3RvcmUge1xuICBtYXgtd2lkdGg6IDI5MHB4O1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9XG4gIGJvZHkuY2hlY2tvdXQgLmVuYy1zdG9yZTphZnRlciB7XG4gICAgY29udGVudDogXCIgXCI7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgYm9keS5jaGVja291dCAuZW5jLXN0b3JlIHtcbiAgICAgIG1heC13aWR0aDogNzAycHg7XG4gICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgIG1hcmdpbi1yaWdodDogYXV0bzsgfVxuICAgICAgYm9keS5jaGVja291dCAuZW5jLXN0b3JlOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCIgXCI7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBjbGVhcjogYm90aDsgfSB9XG4gIGJvZHkuY2hlY2tvdXQgLmVuYy1zdG9yZSAucm93IHtcbiAgICBwYWRkaW5nOiA5cHggMDsgfVxuICAgIGJvZHkuY2hlY2tvdXQgLmVuYy1zdG9yZSAucm93IGxhYmVsLFxuICAgIGJvZHkuY2hlY2tvdXQgLmVuYy1zdG9yZSAucm93IGlucHV0IHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gICAgYm9keS5jaGVja291dCAuZW5jLXN0b3JlIC5yb3cgbGFiZWw6bm90KC5lcnJvcikge1xuICAgICAgcGFkZGluZy1ib3R0b206IDlweDsgfVxuICAgIGJvZHkuY2hlY2tvdXQgLmVuYy1zdG9yZSAucm93IGlucHV0Om5vdChbdHlwZT1cInJhZGlvXCJdKSB7XG4gICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50OyB9XG4gICAgYm9keS5jaGVja291dCAuZW5jLXN0b3JlIC5yb3cgW2lkPVwic3RyZWV0MVwiXSxcbiAgICBib2R5LmNoZWNrb3V0IC5lbmMtc3RvcmUgLnJvdyBbaWQ9XCJzdHJlZXQyXCJdLFxuICAgIGJvZHkuY2hlY2tvdXQgLmVuYy1zdG9yZSAucm93IFtpZD1cImJpbGxpbmdfYWRkcmVzczFcIl0sXG4gICAgYm9keS5jaGVja291dCAuZW5jLXN0b3JlIC5yb3cgW2lkPVwiYmlsbGluZ19hZGRyZXNzMlwiXSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxNXB4OyB9XG4gICAgYm9keS5jaGVja291dCAuZW5jLXN0b3JlIC5yb3cgc2VsZWN0IHtcbiAgICAgIHdpZHRoOiAxODBweDsgfVxuICBib2R5LmNoZWNrb3V0IC5lbmMtc3RvcmUgYnV0dG9uLmNvbnRpbnVlIHtcbiAgICBtYXJnaW4tYm90dG9tOiA0NXB4OyB9XG4gIGJvZHkuY2hlY2tvdXQgLmVuYy1zdG9yZSBbaWQ9XCJjaGVja291dFN0ZXAxXCJdIGJyIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIGJvZHkuY2hlY2tvdXQgLmVuYy1zdG9yZSBbaWQ9XCJjaGVja291dFN0ZXAxXCJdIC5ub3RpY2Uge1xuICAgIHBhZGRpbmc6IC4zNWVtIC42MjVlbSAuNzVlbTsgfVxuICAgIGJvZHkuY2hlY2tvdXQgLmVuYy1zdG9yZSBbaWQ9XCJjaGVja291dFN0ZXAxXCJdIC5ub3RpY2UgcDpsYXN0LW9mLXR5cGUge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgYm9keS5jaGVja291dCAuZW5jLXN0b3JlIFtpZD1cImNoZWNrb3V0U3RlcDFcIl0gLm5vdGljZSBwOmxhc3Qtb2YtdHlwZSB7XG4gICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDsgfSB9XG4gIGJvZHkuY2hlY2tvdXQgLmVuYy1zdG9yZSBbaWQ9XCJjaGVja291dFN0ZXAxXCJdIC5sZWZ0IGgyIHtcbiAgICBib3JkZXItYm90dG9tOiBzb2xpZCAxcHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpOyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICBib2R5LmNoZWNrb3V0IC5lbmMtc3RvcmUgW2lkPVwiY2hlY2tvdXRTdGVwMVwiXSAubGVmdCBoMiB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICBib2R5LmNoZWNrb3V0IC5lbmMtc3RvcmUgW2lkPVwiY2hlY2tvdXRTdGVwMVwiXSAubGVmdCB7XG4gICAgICB3aWR0aDogNDkuMTUyNTQlO1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDEuNjk0OTIlOyB9IH1cbiAgYm9keS5jaGVja291dCAuZW5jLXN0b3JlIFtpZD1cImNoZWNrb3V0U3RlcDFcIl0gLnJpZ2h0IGgyIHtcbiAgICBmb250LWZhbWlseTogXCJBcmlhbFwiLCBzYW5zLXNlcmlmO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjM7XG4gICAgZm9udC1zaXplOiAxOHB4O1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgbWFyZ2luLWJvdHRvbTogLTMwcHg7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgYm9keS5jaGVja291dCAuZW5jLXN0b3JlIFtpZD1cImNoZWNrb3V0U3RlcDFcIl0gLnJpZ2h0IHtcbiAgICAgIHBhZGRpbmctdG9wOiAxNDRweDtcbiAgICAgIHdpZHRoOiA0OS4xNTI1NCU7XG4gICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICBib2R5LmNoZWNrb3V0IC5lbmMtc3RvcmUgW2lkPVwiY2hlY2tvdXRTdGVwMVwiXSBmaWVsZHNldCAuY29udGludWUge1xuICAgICAgbWFyZ2luLXRvcDogNjAwcHg7XG4gICAgICBtYXJnaW4tbGVmdDogLTEyMHB4OyB9IH1cbiAgYm9keS5jaGVja291dCAuZW5jLXN0b3JlIFtpZD1cImNoZWNrb3V0U3RlcDJcIl0gYnIge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgYm9keS5jaGVja291dCAuZW5jLXN0b3JlIFtpZD1cImNoZWNrb3V0U3RlcDJcIl0gaDIge1xuICAgIGJvcmRlci1ib3R0b206IHNvbGlkIDFweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSk7IH1cbiAgYm9keS5jaGVja291dCAuZW5jLXN0b3JlIFtpZD1cImNoZWNrb3V0U3RlcDJcIl0gLnNoaXBwaW5nLm1ldGhvZCB7XG4gICAgd2lkdGg6IGluaGVyaXQgIWltcG9ydGFudDsgfVxuICAgIGJvZHkuY2hlY2tvdXQgLmVuYy1zdG9yZSBbaWQ9XCJjaGVja291dFN0ZXAyXCJdIC5zaGlwcGluZy5tZXRob2QgLm5vdGljZSBwIHtcbiAgICAgIGZvbnQtc2l6ZTogMTZweCAhaW1wb3J0YW50OyB9XG4gICAgYm9keS5jaGVja291dCAuZW5jLXN0b3JlIFtpZD1cImNoZWNrb3V0U3RlcDJcIl0gLnNoaXBwaW5nLm1ldGhvZCB1bCB7XG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgbWFyZ2luLWJvdHRvbTogNDVweDsgfVxuICBib2R5LmNoZWNrb3V0IC5lbmMtc3RvcmUgW2lkPVwiY2hlY2tvdXRTdGVwMlwiXSAuaW50ZXJuYXRpb25hbC10YXgtbm90aWNlIHtcbiAgICBtYXJnaW4tYm90dG9tOiAyNXB4OyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIGJvZHkuY2hlY2tvdXQgLmVuYy1zdG9yZSBbaWQ9XCJjaGVja291dFN0ZXAyXCJdIGJ1dHRvbi5jb250aW51ZSB7XG4gICAgICBtYXJnaW4tbGVmdDogMjE1cHg7IH0gfVxuICBib2R5LmNoZWNrb3V0IC5lbmMtc3RvcmUgW2lkPVwiY2hlY2tvdXRTdGVwMlwiXSBidXR0b25bZGlzYWJsZWQ9XCJcIl0ge1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4zNSk7IH1cbiAgICBib2R5LmNoZWNrb3V0IC5lbmMtc3RvcmUgW2lkPVwiY2hlY2tvdXRTdGVwMlwiXSBidXR0b25bZGlzYWJsZWQ9XCJcIl06aG92ZXIsIGJvZHkuY2hlY2tvdXQgLmVuYy1zdG9yZSBbaWQ9XCJjaGVja291dFN0ZXAyXCJdIGJ1dHRvbltkaXNhYmxlZD1cIlwiXTphY3RpdmUge1xuICAgICAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjM1KTtcbiAgICAgIGNvbG9yOiAjZmFlNmNkOyB9XG4gIGJvZHkuY2hlY2tvdXQgLmVuYy1zdG9yZSBbaWQ9XCJjaGVja291dFN0ZXAzXCJdIGgyIHtcbiAgICBib3JkZXItYm90dG9tOiBzb2xpZCAxcHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIGJvZHkuY2hlY2tvdXQgLmVuYy1zdG9yZSBbaWQ9XCJjaGVja291dFN0ZXAzXCJdIC5sZWZ0IHtcbiAgICAgIHdpZHRoOiA0OS4xNTI1NCU7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIG1hcmdpbi1yaWdodDogMS42OTQ5MiU7XG4gICAgICBwYWRkaW5nLXRvcDogNDdweDsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIGJvZHkuY2hlY2tvdXQgLmVuYy1zdG9yZSBbaWQ9XCJjaGVja291dFN0ZXAzXCJdIC5yaWdodCB7XG4gICAgICB3aWR0aDogNDkuMTUyNTQlO1xuICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwOyB9IH1cbiAgYm9keS5jaGVja291dCAuZW5jLXN0b3JlIFtpZD1cImNoZWNrb3V0U3RlcDNcIl0gW2lkPVwiY29weUFkZHJlc3NcIl0ge1xuICAgIGZsb2F0OiBpbmhlcml0ICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLXRvcDogaW5oZXJpdCAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi1yaWdodDogaW5oZXJpdCAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi1ib3R0b206IDI1cHggIWltcG9ydGFudDtcbiAgICBtYXJnaW4tbGVmdDogaW5oZXJpdCAhaW1wb3J0YW50OyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICBib2R5LmNoZWNrb3V0IC5lbmMtc3RvcmUgW2lkPVwiY2hlY2tvdXRTdGVwM1wiXSBbaWQ9XCJjb3B5QWRkcmVzc1wiXSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAzM3B4ICFpbXBvcnRhbnQ7IH0gfVxuICBib2R5LmNoZWNrb3V0IC5lbmMtc3RvcmUgW2lkPVwiY2hlY2tvdXRTdGVwM1wiXSAucm93LmNyZWRpdC5jYXJkIHVsIHtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIHBhZGRpbmctbGVmdDogMDsgfVxuICBib2R5LmNoZWNrb3V0IC5lbmMtc3RvcmUgW2lkPVwiY2hlY2tvdXRTdGVwM1wiXSAucm93LmNyZWRpdC5jYXJkIGxpIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogNXB4OyB9XG4gIGJvZHkuY2hlY2tvdXQgLmVuYy1zdG9yZSBbaWQ9XCJjaGVja291dFN0ZXAzXCJdIC5yb3cuY3JlZGl0LmNhcmQgbGFiZWwsXG4gIGJvZHkuY2hlY2tvdXQgLmVuYy1zdG9yZSBbaWQ9XCJjaGVja291dFN0ZXAzXCJdIC5yb3cuY3JlZGl0LmNhcmQgaW5wdXQge1xuICAgIGRpc3BsYXk6IGlubGluZTsgfVxuICBib2R5LmNoZWNrb3V0IC5lbmMtc3RvcmUgW2lkPVwiY2hlY2tvdXRTdGVwM1wiXSAucm93LmNyZWRpdC5jYXJkIGlucHV0IHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxMnB4OyB9XG4gIGJvZHkuY2hlY2tvdXQgLmVuYy1zdG9yZSBbaWQ9XCJjaGVja291dFN0ZXAzXCJdIC5ub3RpY2Uge1xuICAgIHBhZGRpbmc6IC4zNWVtIC42MjVlbSAuNzVlbTsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICBib2R5LmNoZWNrb3V0IC5lbmMtc3RvcmUgW2lkPVwiY2hlY2tvdXRTdGVwM1wiXSBidXR0b24uY29udGludWUge1xuICAgICAgbWFyZ2luLXRvcDogMzU1cHg7XG4gICAgICBtYXJnaW4tbGVmdDogLTE0NnB4OyB9IH1cbiAgYm9keS5jaGVja291dCAuZW5jLXN0b3JlIFtpZD1cImNoZWNrb3V0U3RlcDRcIl0gaDIge1xuICAgIGJvcmRlci1ib3R0b206IHNvbGlkIDFweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSk7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgYm9keS5jaGVja291dCAuZW5jLXN0b3JlIFtpZD1cImNoZWNrb3V0U3RlcDRcIl0gLmxlZnQuY29sdW1uIHtcbiAgICAgIHdpZHRoOiA0OS4xNTI1NCU7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIG1hcmdpbi1yaWdodDogMS42OTQ5MiU7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICBib2R5LmNoZWNrb3V0IC5lbmMtc3RvcmUgW2lkPVwiY2hlY2tvdXRTdGVwNFwiXSAucmlnaHQuY29sdW1uIHtcbiAgICAgIHdpZHRoOiA0OS4xNTI1NCU7XG4gICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7IH0gfVxuICBib2R5LmNoZWNrb3V0IC5lbmMtc3RvcmUgW2lkPVwiY2hlY2tvdXRTdGVwNFwiXSAub3JkZXIuc3VtbWFyeSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgbWFyZ2luLXJpZ2h0OiAwOyB9XG4gIGJvZHkuY2hlY2tvdXQgLmVuYy1zdG9yZSBbaWQ9XCJjaGVja291dFN0ZXA0XCJdIC5pdGVtcyB7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7IH1cbiAgYm9keS5jaGVja291dCAuZW5jLXN0b3JlIFtpZD1cImNoZWNrb3V0U3RlcDRcIl0gLml0ZW0ge1xuICAgIGhlaWdodDogNzZweDtcbiAgICBib3JkZXItYm90dG9tOiBzb2xpZCAxcHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpOyB9XG4gICAgYm9keS5jaGVja291dCAuZW5jLXN0b3JlIFtpZD1cImNoZWNrb3V0U3RlcDRcIl0gLml0ZW0gdWwuZGV0YWlscyB7XG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwOyB9XG4gICAgICBib2R5LmNoZWNrb3V0IC5lbmMtc3RvcmUgW2lkPVwiY2hlY2tvdXRTdGVwNFwiXSAuaXRlbSB1bC5kZXRhaWxzIGxpOm50aC1jaGlsZCgxKSB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDEwcHg7IH1cbiAgICAgIGJvZHkuY2hlY2tvdXQgLmVuYy1zdG9yZSBbaWQ9XCJjaGVja291dFN0ZXA0XCJdIC5pdGVtIHVsLmRldGFpbHMgbGk6bnRoLWNoaWxkKDEpLFxuICAgICAgYm9keS5jaGVja291dCAuZW5jLXN0b3JlIFtpZD1cImNoZWNrb3V0U3RlcDRcIl0gLml0ZW0gdWwuZGV0YWlscyBsaTpudGgtY2hpbGQoMikge1xuICAgICAgICBmbG9hdDogbGVmdDsgfVxuICAgICAgYm9keS5jaGVja291dCAuZW5jLXN0b3JlIFtpZD1cImNoZWNrb3V0U3RlcDRcIl0gLml0ZW0gdWwuZGV0YWlscyBsaTpudGgtY2hpbGQoMykge1xuICAgICAgICBmbG9hdDogcmlnaHQ7IH1cbiAgYm9keS5jaGVja291dCAuZW5jLXN0b3JlIFtpZD1cImNoZWNrb3V0U3RlcDRcIl0gdWwudG90YWxzIHtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIHBhZGRpbmctbGVmdDogbm9uZTtcbiAgICBmbG9hdDogcmlnaHQ7IH1cbiAgICBib2R5LmNoZWNrb3V0IC5lbmMtc3RvcmUgW2lkPVwiY2hlY2tvdXRTdGVwNFwiXSB1bC50b3RhbHMgbGkge1xuICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgYm9keS5jaGVja291dCAuZW5jLXN0b3JlIFtpZD1cImNoZWNrb3V0U3RlcDRcIl0gYnV0dG9uLmNvbnRpbnVlIHtcbiAgICAgIG1hcmdpbi10b3A6IDE0MHB4O1xuICAgICAgbWFyZ2luLWxlZnQ6IDIyNXB4OyB9IH1cblxuYm9keS5jaGVja291dCAuemlwNC1sb29rdXAtbGluayB7XG4gIG1hcmdpbi10b3A6IDlweDtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1vdXQ7XG4gIHBhZGRpbmc6IDEwcHggNTJweDtcbiAgYm9yZGVyOiBzb2xpZCAxcHggI2ZhZTZjZDtcbiAgYm9yZGVyLXJhZGl1czogNDBweDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGN1cnNvcjogcG9pbnRlcjsgfVxuICBib2R5LmNoZWNrb3V0IC56aXA0LWxvb2t1cC1saW5rOmhvdmVyIHtcbiAgICBjb2xvcjogd2hpdGU7XG4gICAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjEpOyB9XG5cbmJvZHkuY2hlY2tvdXQgbGFiZWwuZXJyb3Ige1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgbWFyZ2luLXRvcDogLTIycHg7XG4gIG1hcmdpbi1yaWdodDogMTBweDtcbiAgZm9udC1zaXplOiAxM3B4O1xuICBmbG9hdDogcmlnaHQ7XG4gIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgY29sb3I6ICNkMTc5MDA7XG4gIHBhZGRpbmc6IDNweCA1cHggMXB4O1xuICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTsgfVxuXG5ib2R5LmNoZWNrb3V0IC5lcnJvcltmb3I9XCJzdHJlZXQxXCJdLFxuYm9keS5jaGVja291dCAuZXJyb3JbZm9yPVwiYmlsbGluZ19hZGRyZXNzMVwiXSB7XG4gIG1hcmdpbi10b3A6IC0zN3B4OyB9XG5cbmJvZHkuY2hlY2tvdXQgLmVycm9yW2Zvcj1cInN0YXRlcHJvdlwiXSxcbmJvZHkuY2hlY2tvdXQgLmVycm9yW2Zvcj1cImJpbGxpbmdfc3RhdGVwcm92XCJdIHtcbiAgbWFyZ2luLXRvcDogLTQ5cHg7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgYm9keS5jaGVja291dCAuZXJyb3JbZm9yPVwic3RhdGVwcm92XCJdLFxuICAgIGJvZHkuY2hlY2tvdXQgLmVycm9yW2Zvcj1cImJpbGxpbmdfc3RhdGVwcm92XCJdIHtcbiAgICAgIG1hcmdpbi10b3A6IC0yNXB4OyB9IH1cblxuYm9keS5jaGVja291dCBsYWJlbC5lcnJvcltmb3I9XCJiaWxsaW5nX2FkZHJlc3MxXCJdIHtcbiAgbWFyZ2luLXRvcDogLTQwcHg7IH1cblxuYm9keS5jaGVja291dCBsYWJlbC5lcnJvcltmb3I9XCJiaWxsaW5nX3N0YXRlcHJvdlwiXSxcbmJvZHkuY2hlY2tvdXQgbGFiZWwuZXJyb3JbZm9yPVwiYmlsbGluZ19jb3VudHJ5XCJdIHtcbiAgbWFyZ2luLXRvcDogLTQ5cHg7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgYm9keS5jaGVja291dCBsYWJlbC5lcnJvcltmb3I9XCJiaWxsaW5nX3N0YXRlcHJvdlwiXSxcbiAgICBib2R5LmNoZWNrb3V0IGxhYmVsLmVycm9yW2Zvcj1cImJpbGxpbmdfY291bnRyeVwiXSB7XG4gICAgICBtYXJnaW4tdG9wOiAwOyB9IH1cblxuYm9keS5jaGVja291dCAuY29zdG5vbmRpc2NvdW50IHtcbiAgY29sb3I6IGJyb3duO1xuICB0ZXh0LWRlY29yYXRpb246IGxpbmUtdGhyb3VnaDsgfVxuXG5ib2R5LmNoZWNrb3V0IDpub3QoYnV0dG9uKSA+IHNwYW4uYnV0dG9uIHtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1vdXQ7XG4gIHBhZGRpbmc6IDEwcHggNTJweDtcbiAgYm9yZGVyOiBzb2xpZCAxcHggI2ZhZTZjZDtcbiAgYm9yZGVyLXJhZGl1czogNDBweDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGN1cnNvcjogcG9pbnRlcjsgfVxuICBib2R5LmNoZWNrb3V0IDpub3QoYnV0dG9uKSA+IHNwYW4uYnV0dG9uOmhvdmVyIHtcbiAgICBjb2xvcjogd2hpdGU7XG4gICAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjEpOyB9XG5cbmJvZHkuYWJvdXQge1xuICBiYWNrZ3JvdW5kOiAjNTM5M2QwO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lOyB9XG4gIGJvZHkuYWJvdXQgaGVhZGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDgzLCAxNDcsIDIwOCwgMCk7IH1cbiAgICBib2R5LmFib3V0IGhlYWRlci5tYWluLW5hdi1zY3JvbGxlZCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDgzLCAxNDcsIDIwOCwgMC45KTsgfVxuICBib2R5LmFib3V0IG1haW4ge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoODMsIDE0NywgMjA4LCAwLjkpO1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sIHJnYmEoMjMsIDIzLCAyMywgMCkgMzIwcHgsICMxNzE3MTcgMzcwcHgpLCB1cmwoXCIuLi9pbWFnZXMvYWJvdXQtYmFja2dyb3VuZC5qcGdcIik7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdCwgbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IDAlIDAlLCA1MCUgMCU7XG4gICAgYmFja2dyb3VuZC1zaXplOiAxMDAlIDEwMCUsIDU5OXB4IDM5OXB4OyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDU5OXB4KSB7XG4gICAgICBib2R5LmFib3V0IG1haW4ge1xuICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCByZ2JhKDIzLCAyMywgMjMsIDApIDQwMHB4LCAjMTcxNzE3IDQ1MHB4KSwgdXJsKFwiLi4vaW1hZ2VzL2Fib3V0LWJhY2tncm91bmQuanBnXCIpO1xuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0LCBuby1yZXBlYXQ7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDEwMCUgMTAwJSwgNTAlIDAlO1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCUgMTAwJSwgNzY4cHggNTExcHg7IH0gfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgYm9keS5hYm91dCBtYWluIHtcbiAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgcmdiYSgyMywgMjMsIDIzLCAwKSA1MDBweCwgIzE3MTcxNyA2MDBweCksIHVybChcIi4uL2ltYWdlcy9hYm91dC1iYWNrZ3JvdW5kLmpwZ1wiKTtcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdCwgbm8tcmVwZWF0O1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAxMDAlIDEwMCUsIDUwJSAtMTI1cHg7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJSAxMDAlLCAxMjAwcHggNzk4cHg7IH0gfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgICAgIGJvZHkuYWJvdXQgbWFpbiB7XG4gICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sIHJnYmEoMjMsIDIzLCAyMywgMCkgNTAzcHgsICMxNzE3MTcgNjMwcHgpLCB1cmwoXCIuLi9pbWFnZXMvYWJvdXQtYmFja2dyb3VuZC5qcGdcIik7XG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQsIG5vLXJlcGVhdDtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMTAwJSAxMDAlLCA1MCUgLTIyNXB4O1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCUgMTAwJSwgMTcwMHB4IDExMzJweDsgfSB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDE2OTlweCkge1xuICAgICAgYm9keS5hYm91dCBtYWluIHtcbiAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgcmdiYSgyMywgMjMsIDIzLCAwKSA2NzVweCwgIzE3MTcxNyA4MDBweCksIHVybChcIi4uL2ltYWdlcy9hYm91dC1iYWNrZ3JvdW5kLmpwZ1wiKTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzUzOTNkMDtcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdCwgbm8tcmVwZWF0O1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAxMDAlIDEwMCUsIDUwJSAtNDI1cHgsIDEwMCUgMTAwJTtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiAxMDAlIDEwMCUsIDI0MDBweCAxNTMwcHgsIDEwMCUgMTAwJTsgfSB9XG4gICAgYm9keS5hYm91dCBtYWluIC5jb250ZW50IHtcbiAgICAgIG1heC13aWR0aDogMjkwcHg7XG4gICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgIG1hcmdpbi1yaWdodDogYXV0bzsgfVxuICAgICAgYm9keS5hYm91dCBtYWluIC5jb250ZW50OmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCIgXCI7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBjbGVhcjogYm90aDsgfVxuICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAgIGJvZHkuYWJvdXQgbWFpbiAuY29udGVudCB7XG4gICAgICAgICAgbWF4LXdpZHRoOiA3MDJweDtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87IH1cbiAgICAgICAgICBib2R5LmFib3V0IG1haW4gLmNvbnRlbnQ6YWZ0ZXIge1xuICAgICAgICAgICAgY29udGVudDogXCIgXCI7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIGNsZWFyOiBib3RoOyB9IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgIGJvZHkuYWJvdXQgbWFpbiBoMSB7XG4gICAgICAgIG1hcmdpbjogLjNlbSAwIC42N2VtOyB9IH1cbiAgICBib2R5LmFib3V0IG1haW4gc2VjdGlvbi5pbnRybyB7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgYm9keS5hYm91dCAuYWJvdXQtY29weSB7XG4gICAgbWFyZ2luLXRvcDogMjUwcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogNDVweDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNTk5cHgpIHtcbiAgICAgIGJvZHkuYWJvdXQgLmFib3V0LWNvcHkge1xuICAgICAgICBtYXJnaW4tdG9wOiAzMDBweDtcbiAgICAgICAgd2lkdGg6IDkxLjUyNTQyJTtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMS42OTQ5MiU7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiA0LjIzNzI5JTsgfSB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICBib2R5LmFib3V0IC5hYm91dC1jb3B5IHtcbiAgICAgICAgbWFyZ2luLXRvcDogNDUwcHg7IH0gfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAxNjk5cHgpIHtcbiAgICAgIGJvZHkuYWJvdXQgLmFib3V0LWNvcHkge1xuICAgICAgICBtYXJnaW4tdG9wOiA0NTBweDsgfSB9XG4gICAgYm9keS5hYm91dCAuYWJvdXQtY29weSBwLFxuICAgIGJvZHkuYWJvdXQgLmFib3V0LWNvcHkgYSB7XG4gICAgICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpOyB9XG4gIGJvZHkuYWJvdXQgZm9vdGVyIHtcbiAgICBib3JkZXItdG9wOiBzb2xpZCAxcHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE1KTsgfVxuXG5ib2R5LnBvbGljeSBtYWluIHtcbiAgbWF4LXdpZHRoOiAyOTBweDtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgbWFyZ2luLWJvdHRvbTogNDVweDsgfVxuICBib2R5LnBvbGljeSBtYWluOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIiBcIjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjbGVhcjogYm90aDsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICBib2R5LnBvbGljeSBtYWluIHtcbiAgICAgIG1heC13aWR0aDogNzAycHg7XG4gICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgIG1hcmdpbi1yaWdodDogYXV0bzsgfVxuICAgICAgYm9keS5wb2xpY3kgbWFpbjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgY2xlYXI6IGJvdGg7IH0gfVxuICBib2R5LnBvbGljeSBtYWluIHNlY3Rpb24gdWwge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBsaXN0LXN0eWxlOiBub25lOyB9XG4gICAgYm9keS5wb2xpY3kgbWFpbiBzZWN0aW9uIHVsIGxpIHtcbiAgICAgIGRpc3BsYXk6IHRhYmxlLXJvdzsgfVxuICAgICAgYm9keS5wb2xpY3kgbWFpbiBzZWN0aW9uIHVsIGxpOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6IFwi4oCiXCI7XG4gICAgICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNGVtOyB9XG5cbmJvZHkucG9saWN5IGgxLFxuYm9keS5wb2xpY3kgaDEgfiBwIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG5cbmJvZHkucG9saWN5IGgxIHtcbiAgbWFyZ2luLWJvdHRvbTogMHB4OyB9XG5cbmJvZHkucG9saWN5IGgxIH4gcCB7XG4gIG1hcmdpbi10b3A6IDBweDtcbiAgbWFyZ2luLWJvdHRvbTogNDVweDsgfVxuXG5ib2R5LnBvbGljeSBoMyB7XG4gIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgYm9keS5wb2xpY3kgaDMgfiBwIHtcbiAgICBtYXJnaW4tdG9wOiAwcHg7IH1cblxuYm9keS53YXJyYW50eSBtYWluLFxuYm9keS50ZXJtcyBtYWluIHtcbiAgbWF4LXdpZHRoOiAyOTBweDtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgbWFyZ2luLWJvdHRvbTogNTBweDsgfVxuICBib2R5LndhcnJhbnR5IG1haW46YWZ0ZXIsXG4gIGJvZHkudGVybXMgbWFpbjphZnRlciB7XG4gICAgY29udGVudDogXCIgXCI7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgYm9keS53YXJyYW50eSBtYWluLFxuICAgIGJvZHkudGVybXMgbWFpbiB7XG4gICAgICBtYXgtd2lkdGg6IDcwMnB4O1xuICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87IH1cbiAgICAgIGJvZHkud2FycmFudHkgbWFpbjphZnRlcixcbiAgICAgIGJvZHkudGVybXMgbWFpbjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgY2xlYXI6IGJvdGg7IH0gfVxuXG5ib2R5LndhcnJhbnR5IGgxLFxuYm9keS53YXJyYW50eSBoMSxcbmJvZHkudGVybXMgaDEsXG5ib2R5LnRlcm1zIGgxIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG5cbmJvZHkud2FycmFudHkgaDEsXG5ib2R5LnRlcm1zIGgxIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG5cbmJvZHkud2FycmFudHkgaDMsXG5ib2R5LnRlcm1zIGgzIHtcbiAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICBib2R5LndhcnJhbnR5IGgzIH4gcCxcbiAgYm9keS50ZXJtcyBoMyB+IHAge1xuICAgIG1hcmdpbi10b3A6IDBweDsgfVxuXG5ib2R5LnByb2R1Y3RzIG1haW4ge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgYm9keS5wcm9kdWN0cyBtYWluIGgyIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4OyB9XG4gIGJvZHkucHJvZHVjdHMgbWFpbiAuY29udGVudCB7XG4gICAgbWF4LXdpZHRoOiAyOTBweDtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87IH1cbiAgICBib2R5LnByb2R1Y3RzIG1haW4gLmNvbnRlbnQ6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCIgXCI7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICBib2R5LnByb2R1Y3RzIG1haW4gLmNvbnRlbnQge1xuICAgICAgICBtYXgtd2lkdGg6IDcwMnB4O1xuICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9XG4gICAgICAgIGJvZHkucHJvZHVjdHMgbWFpbiAuY29udGVudDphZnRlciB7XG4gICAgICAgICAgY29udGVudDogXCIgXCI7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgY2xlYXI6IGJvdGg7IH0gfVxuICBib2R5LnByb2R1Y3RzIG1haW4gYS5jdGEge1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2Utb3V0O1xuICAgIHBhZGRpbmc6IDEwcHggNTJweDtcbiAgICBib3JkZXI6IHNvbGlkIDFweCAjZmFlNmNkO1xuICAgIGJvcmRlci1yYWRpdXM6IDQwcHg7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICAgIGJvZHkucHJvZHVjdHMgbWFpbiBhLmN0YTpob3ZlciB7XG4gICAgICBjb2xvcjogd2hpdGU7XG4gICAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuMSk7IH1cbiAgYm9keS5wcm9kdWN0cyBtYWluIHNlY3Rpb24uaW50cm8ge1xuICAgIHBhZGRpbmc6IDU1cHggMDsgfVxuICAgIGJvZHkucHJvZHVjdHMgbWFpbiBzZWN0aW9uLmludHJvIHAsXG4gICAgYm9keS5wcm9kdWN0cyBtYWluIHNlY3Rpb24uaW50cm8gaDIge1xuICAgICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgIG1hcmdpbi1yaWdodDogMDsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgYm9keS5wcm9kdWN0cyBtYWluIHNlY3Rpb24uaW50cm8gaW1nIHtcbiAgICAgICAgd2lkdGg6IDgzLjA1MDg1JTtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMS42OTQ5MiU7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiA4LjQ3NDU4JTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNTBweDsgfSB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICBib2R5LnByb2R1Y3RzIG1haW4gc2VjdGlvbi5pbnRybyBwIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNDVweDsgfSB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICBib2R5LnByb2R1Y3RzIG1haW4gc2VjdGlvbi5pbnRybyAuaW50cm8tY29weSBhIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMTVweDsgfSB9XG4gIGJvZHkucHJvZHVjdHMgbWFpbiBzZWN0aW9uLmFjY2Vzc29yaWVzIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAjMTYxNjE2IDAlLCAjMjMyMzIzIDEwMCUpO1xuICAgIHBhZGRpbmc6IDcwcHggMDsgfVxuICAgIGJvZHkucHJvZHVjdHMgbWFpbiBzZWN0aW9uLmFjY2Vzc29yaWVzIGltZyB7XG4gICAgICB3aWR0aDogODMuMDUwODUlO1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDEuNjk0OTIlO1xuICAgICAgbWFyZ2luLWxlZnQ6IDguNDc0NTglO1xuICAgICAgZmxvYXQ6IG5vbmU7IH1cbiAgICBib2R5LnByb2R1Y3RzIG1haW4gc2VjdGlvbi5hY2Nlc3NvcmllcyBoMiB7XG4gICAgICBtYXJnaW4tdG9wOiAwOyB9XG4gICAgYm9keS5wcm9kdWN0cyBtYWluIHNlY3Rpb24uYWNjZXNzb3JpZXMgLmFjY2Vzc29yaWVzLWNvcHkgYSB7XG4gICAgICBtYXJnaW4tdG9wOiAxNXB4OyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICBib2R5LnByb2R1Y3RzIG1haW4gc2VjdGlvbi5hY2Nlc3NvcmllcyBpbWcge1xuICAgICAgICB3aWR0aDogNjYuMTAxNjklO1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxLjY5NDkyJTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDAlO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAtNDBweDtcbiAgICAgICAgaGVpZ2h0OiAyNzBweDtcbiAgICAgICAgd2lkdGg6IGF1dG87IH1cbiAgICAgIGJvZHkucHJvZHVjdHMgbWFpbiBzZWN0aW9uLmFjY2Vzc29yaWVzIC5hY2Nlc3Nvcmllcy1jb3B5IHtcbiAgICAgICAgd2lkdGg6IDMyLjIwMzM5JTtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIG1hcmdpbi10b3A6IDQ1cHg7IH1cbiAgICAgICAgYm9keS5wcm9kdWN0cyBtYWluIHNlY3Rpb24uYWNjZXNzb3JpZXMgLmFjY2Vzc29yaWVzLWNvcHkgYSB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogMTVweDsgfSB9XG4gIGJvZHkucHJvZHVjdHMgbWFpbiBzZWN0aW9uLmRlYWxlcnMge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltYWdlcy9kZWFsZXJzLW1hcC5wbmdcIik7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA1MCUgMjJweDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDY1OHB4IDI2OHB4O1xuICAgIHBhZGRpbmc6IDcwcHggMDtcbiAgICBoZWlnaHQ6IDMxMnB4OyB9XG4gICAgYm9keS5wcm9kdWN0cyBtYWluIHNlY3Rpb24uZGVhbGVycyBoMiB7XG4gICAgICBtYXJnaW4tdG9wOiAxNXB4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDsgfVxuICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAgIGJvZHkucHJvZHVjdHMgbWFpbiBzZWN0aW9uLmRlYWxlcnMgaDIge1xuICAgICAgICAgIG1hcmdpbi10b3A6IDExNXB4O1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDI1cHg7IH0gfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgYm9keS5wcm9kdWN0cyBtYWluIHNlY3Rpb24uZGVhbGVycyB7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDUwJSA2M3B4O1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDg3N3B4IDM1N3B4O1xuICAgICAgICBoZWlnaHQ6IDQ4M3B4OyB9IH1cbiAgICBib2R5LnByb2R1Y3RzIG1haW4gc2VjdGlvbi5kZWFsZXJzIC5jb250ZW50IHtcbiAgICAgIHdpZHRoOiAzMDBweDsgfVxuXG5ib2R5LmhlbHAgYS5jdGEge1xuICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLW91dDtcbiAgcGFkZGluZzogMTBweCA1MnB4O1xuICBib3JkZXI6IHNvbGlkIDFweCAjZmFlNmNkO1xuICBib3JkZXItcmFkaXVzOiA0MHB4O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICBib2R5LmhlbHAgYS5jdGE6aG92ZXIge1xuICAgIGNvbG9yOiB3aGl0ZTtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuMSk7IH1cblxuYm9keS5oZWxwIHNlY3Rpb24uaGVscC1zZWN0aW9uLFxuYm9keS5oZWxwIHNlY3Rpb24uY29udGFjdC1zZWN0aW9uLFxuYm9keS5oZWxwIHNlY3Rpb24uY29udGFjdC1mb3JtIHtcbiAgbWF4LXdpZHRoOiAyOTBweDtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIGJvZHkuaGVscCBzZWN0aW9uLmhlbHAtc2VjdGlvbjphZnRlcixcbiAgYm9keS5oZWxwIHNlY3Rpb24uY29udGFjdC1zZWN0aW9uOmFmdGVyLFxuICBib2R5LmhlbHAgc2VjdGlvbi5jb250YWN0LWZvcm06YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIGJvZHkuaGVscCBzZWN0aW9uLmhlbHAtc2VjdGlvbixcbiAgICBib2R5LmhlbHAgc2VjdGlvbi5jb250YWN0LXNlY3Rpb24sXG4gICAgYm9keS5oZWxwIHNlY3Rpb24uY29udGFjdC1mb3JtIHtcbiAgICAgIG1heC13aWR0aDogNzAycHg7XG4gICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgIG1hcmdpbi1yaWdodDogYXV0bzsgfVxuICAgICAgYm9keS5oZWxwIHNlY3Rpb24uaGVscC1zZWN0aW9uOmFmdGVyLFxuICAgICAgYm9keS5oZWxwIHNlY3Rpb24uY29udGFjdC1zZWN0aW9uOmFmdGVyLFxuICAgICAgYm9keS5oZWxwIHNlY3Rpb24uY29udGFjdC1mb3JtOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCIgXCI7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBjbGVhcjogYm90aDsgfSB9XG4gIGJvZHkuaGVscCBzZWN0aW9uLmhlbHAtc2VjdGlvbjpsYXN0LWNoaWxkLFxuICBib2R5LmhlbHAgc2VjdGlvbi5jb250YWN0LXNlY3Rpb246bGFzdC1jaGlsZCxcbiAgYm9keS5oZWxwIHNlY3Rpb24uY29udGFjdC1mb3JtOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDU1cHg7IH1cblxuYm9keS5oZWxwIHNlY3Rpb24uaGVscC1zZWN0aW9uIGRpdiB7XG4gIHdpZHRoOiAxMDAlO1xuICBmbG9hdDogbGVmdDtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIG1hcmdpbi1yaWdodDogMDsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICBib2R5LmhlbHAgc2VjdGlvbi5oZWxwLXNlY3Rpb24gZGl2IHtcbiAgICAgIHdpZHRoOiAzMi4yMDMzOSU7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIG1hcmdpbi1yaWdodDogMS42OTQ5MiU7IH1cbiAgICAgIGJvZHkuaGVscCBzZWN0aW9uLmhlbHAtc2VjdGlvbiBkaXY6bGFzdC1jaGlsZCB7XG4gICAgICAgIHdpZHRoOiAzMi4yMDMzOSU7XG4gICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwOyB9XG4gICAgICBib2R5LmhlbHAgc2VjdGlvbi5oZWxwLXNlY3Rpb24gZGl2IGEuY3RhIHtcbiAgICAgICAgd2lkdGg6IDIwNHB4O1xuICAgICAgICBtYXJnaW4tbGVmdDogMTFweDtcbiAgICAgICAgcGFkZGluZzogMTBweCA1cHg7IH0gfVxuXG5ib2R5LmhlbHAgc2VjdGlvbi5jb250YWN0LXNlY3Rpb24gZGl2IHtcbiAgd2lkdGg6IDEwMCU7XG4gIGZsb2F0OiBsZWZ0O1xuICBtYXJnaW4tbGVmdDogMDtcbiAgbWFyZ2luLXJpZ2h0OiAwOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIGJvZHkuaGVscCBzZWN0aW9uLmNvbnRhY3Qtc2VjdGlvbiBkaXYge1xuICAgICAgd2lkdGg6IDQ5LjE1MjU0JTtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgbWFyZ2luLXJpZ2h0OiAxLjY5NDkyJTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7IH1cbiAgICAgIGJvZHkuaGVscCBzZWN0aW9uLmNvbnRhY3Qtc2VjdGlvbiBkaXY6bnRoLWNoaWxkKDJuKzEpIHtcbiAgICAgICAgd2lkdGg6IDQ5LjE1MjU0JTtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7IH0gfVxuXG5ib2R5LmhlbHAgc2VjdGlvbi5oZWxwLXNlY3Rpb24gaDEsXG5ib2R5LmhlbHAgc2VjdGlvbi5oZWxwLXNlY3Rpb24gaDIsXG5ib2R5LmhlbHAgc2VjdGlvbi5jb250YWN0LXNlY3Rpb24gaDEsXG5ib2R5LmhlbHAgc2VjdGlvbi5jb250YWN0LXNlY3Rpb24gaDIge1xuICB3aWR0aDogMTAwJTtcbiAgZmxvYXQ6IGxlZnQ7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBtYXJnaW4tcmlnaHQ6IDA7IH1cblxuYm9keS5oZWxwIHNlY3Rpb24uaGVscC1zZWN0aW9uIGgxLFxuYm9keS5oZWxwIHNlY3Rpb24uY29udGFjdC1zZWN0aW9uIGgxIHtcbiAgbWFyZ2luLWJvdHRvbTogMjVweDsgfVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgYm9keS5oZWxwIHNlY3Rpb24uaGVscC1zZWN0aW9uIGRpdjpub3QoOmZpcnN0LW9mLXR5cGUpIHtcbiAgICBtYXJnaW46IDU1cHggMCAwOyB9IH1cblxuYm9keS5oZWxwIHNlY3Rpb24uaGVscC1zZWN0aW9uIGRpdiBmaWd1cmUsXG5ib2R5LmhlbHAgc2VjdGlvbi5oZWxwLXNlY3Rpb24gZGl2IGgzLFxuYm9keS5oZWxwIHNlY3Rpb24uaGVscC1zZWN0aW9uIGRpdiBwLFxuYm9keS5oZWxwIHNlY3Rpb24uaGVscC1zZWN0aW9uIGRpdiBhIHtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuYm9keS5oZWxwIHNlY3Rpb24uaGVscC1zZWN0aW9uIGRpdiBoMyB7XG4gIG1hcmdpbi1ib3R0b206IDA7IH1cblxuYm9keS5oZWxwIHNlY3Rpb24uaGVscC1zZWN0aW9uIGRpdiBwIHtcbiAgbWFyZ2luLXRvcDogNXB4OyB9XG5cbmJvZHkuaGVscCBzZWN0aW9uLmhlbHAtc2VjdGlvbiBkaXYgZmlndXJlIHtcbiAgbWF4LWhlaWdodDogMTQwcHg7IH1cblxuYm9keS5oZWxwIHNlY3Rpb24uaGVscC1zZWN0aW9uIGRpdiBpbWcge1xuICBtYXgtaGVpZ2h0OiAxMjBweDsgfVxuXG5ib2R5LmhlbHAgc2VjdGlvbi5jb250YWN0LXNlY3Rpb24ge1xuICBtYXgtd2lkdGg6IDI5MHB4O1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXJnaW4tdG9wOiAyNXB4O1xuICBtYXJnaW4tYm90dG9tOiA1NXB4OyB9XG4gIGJvZHkuaGVscCBzZWN0aW9uLmNvbnRhY3Qtc2VjdGlvbjphZnRlciB7XG4gICAgY29udGVudDogXCIgXCI7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgYm9keS5oZWxwIHNlY3Rpb24uY29udGFjdC1zZWN0aW9uIHtcbiAgICAgIG1heC13aWR0aDogNzAycHg7XG4gICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgIG1hcmdpbi1yaWdodDogYXV0bzsgfVxuICAgICAgYm9keS5oZWxwIHNlY3Rpb24uY29udGFjdC1zZWN0aW9uOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCIgXCI7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBjbGVhcjogYm90aDsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIGJvZHkuaGVscCBzZWN0aW9uLmNvbnRhY3Qtc2VjdGlvbiB7XG4gICAgICBtYXJnaW4tdG9wOiA1cHg7IH0gfVxuICBib2R5LmhlbHAgc2VjdGlvbi5jb250YWN0LXNlY3Rpb24gaDIge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgYm9keS5oZWxwIHNlY3Rpb24uY29udGFjdC1zZWN0aW9uIGgyIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDMwcHg7IH0gfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgYm9keS5oZWxwIHNlY3Rpb24uY29udGFjdC1zZWN0aW9uIGgyOjpiZWZvcmUsIGJvZHkuaGVscCBzZWN0aW9uLmNvbnRhY3Qtc2VjdGlvbiBoMjo6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICBib3JkZXItYm90dG9tOiBzb2xpZCAxcHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpO1xuICAgICAgICB3aWR0aDogMjAwcHg7XG4gICAgICAgIG1hcmdpbi10b3A6IDI1cHg7IH0gfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgYm9keS5oZWxwIHNlY3Rpb24uY29udGFjdC1zZWN0aW9uIGgyOjpiZWZvcmUsIGJvZHkuaGVscCBzZWN0aW9uLmNvbnRhY3Qtc2VjdGlvbiBoMjo6YWZ0ZXIge1xuICAgICAgICBtYXJnaW4tdG9wOiAyNXB4OyB9IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgIGJvZHkuaGVscCBzZWN0aW9uLmNvbnRhY3Qtc2VjdGlvbiBoMjo6YmVmb3JlIHtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7IH0gfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgYm9keS5oZWxwIHNlY3Rpb24uY29udGFjdC1zZWN0aW9uIGgyOjphZnRlciB7XG4gICAgICAgIGZsb2F0OiByaWdodDsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIGJvZHkuaGVscCBzZWN0aW9uLmNvbnRhY3Qtc2VjdGlvbiBkaXYubW9kZXMtb2YtY29udGFjdCB7XG4gICAgICB3aWR0aDogMTAwJTsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIGJvZHkuaGVscCBzZWN0aW9uLmNvbnRhY3Qtc2VjdGlvbiBkaXYubW9kZXMtb2YtY29udGFjdCBkaXYge1xuICAgICAgd2lkdGg6IDQ5LjE1MjU0JTtcbiAgICAgIGZsb2F0OiBsZWZ0OyB9XG4gICAgICBib2R5LmhlbHAgc2VjdGlvbi5jb250YWN0LXNlY3Rpb24gZGl2Lm1vZGVzLW9mLWNvbnRhY3QgZGl2Om50aC1jaGlsZCgybiArIDEpIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgIG1hcmdpbi1yaWdodDogLTEwMCU7XG4gICAgICAgIGNsZWFyOiBib3RoO1xuICAgICAgICBtYXJnaW4tbGVmdDogMDsgfVxuICAgICAgYm9keS5oZWxwIHNlY3Rpb24uY29udGFjdC1zZWN0aW9uIGRpdi5tb2Rlcy1vZi1jb250YWN0IGRpdjpudGgtY2hpbGQoMm4gKyAyKSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiA1MC44NDc0NiU7XG4gICAgICAgIG1hcmdpbi1yaWdodDogLTEwMCU7XG4gICAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgICBib2R5LmhlbHAgc2VjdGlvbi5jb250YWN0LXNlY3Rpb24gZGl2Lm1vZGVzLW9mLWNvbnRhY3QgZGl2IGgzIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNXB4OyB9XG4gICAgICBib2R5LmhlbHAgc2VjdGlvbi5jb250YWN0LXNlY3Rpb24gZGl2Lm1vZGVzLW9mLWNvbnRhY3QgZGl2IHAge1xuICAgICAgICBtYXJnaW4tdG9wOiAwcHg7IH0gfVxuXG5ib2R5LmhlbHAgYWRkcmVzcyB7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDsgfVxuXG5ib2R5LmhlbHAgYS5jdGEtcGhvbmUsXG5ib2R5LmhlbHAgYS5jdGEtZW1haWwge1xuICBjb2xvcjogI2ZhZTZjZDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG5cbmJvZHkucmV0dXJucyBzZWN0aW9uIHtcbiAgbWF4LXdpZHRoOiAyOTBweDtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bzsgfVxuICBib2R5LnJldHVybnMgc2VjdGlvbjphZnRlciB7XG4gICAgY29udGVudDogXCIgXCI7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgYm9keS5yZXR1cm5zIHNlY3Rpb24ge1xuICAgICAgbWF4LXdpZHRoOiA3MDJweDtcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9XG4gICAgICBib2R5LnJldHVybnMgc2VjdGlvbjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgY2xlYXI6IGJvdGg7IH0gfVxuXG5ib2R5LnJldHVybnMgc2VjdGlvbi5pbnRybyB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuXG5ib2R5LnJldHVybnMgc2VjdGlvbi5jb250ZW50IHtcbiAgbWFyZ2luLWJvdHRvbTogNDVweDsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICBib2R5LnJldHVybnMgc2VjdGlvbi5jb250ZW50IHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDcwcHg7IH0gfVxuICBib2R5LnJldHVybnMgc2VjdGlvbi5jb250ZW50IHVsIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgbGlzdC1zdHlsZTogbm9uZTsgfVxuICAgIGJvZHkucmV0dXJucyBzZWN0aW9uLmNvbnRlbnQgdWwgbGkge1xuICAgICAgZGlzcGxheTogdGFibGUtcm93OyB9XG4gICAgICBib2R5LnJldHVybnMgc2VjdGlvbi5jb250ZW50IHVsIGxpOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6IFwi4oCiXCI7XG4gICAgICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNGVtOyB9XG5cbmJvZHkucmVtb3RlLXN1cHBvcnQgc2VjdGlvbiB7XG4gIG1heC13aWR0aDogMjkwcHg7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87IH1cbiAgYm9keS5yZW1vdGUtc3VwcG9ydCBzZWN0aW9uOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIiBcIjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjbGVhcjogYm90aDsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICBib2R5LnJlbW90ZS1zdXBwb3J0IHNlY3Rpb24ge1xuICAgICAgbWF4LXdpZHRoOiA3MDJweDtcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9XG4gICAgICBib2R5LnJlbW90ZS1zdXBwb3J0IHNlY3Rpb246YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcIiBcIjtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGNsZWFyOiBib3RoOyB9IH1cblxuYm9keS5yZW1vdGUtc3VwcG9ydCBzZWN0aW9uLmludHJvIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG5cbmJvZHkuZm91ci1vaC1mb3VyIHNlY3Rpb24uY29udGVudCB7XG4gIG1heC13aWR0aDogMjkwcHg7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbWFyZ2luLWJvdHRvbTogNTVweDsgfVxuICBib2R5LmZvdXItb2gtZm91ciBzZWN0aW9uLmNvbnRlbnQ6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIGJvZHkuZm91ci1vaC1mb3VyIHNlY3Rpb24uY29udGVudCB7XG4gICAgICBtYXgtd2lkdGg6IDcwMnB4O1xuICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87IH1cbiAgICAgIGJvZHkuZm91ci1vaC1mb3VyIHNlY3Rpb24uY29udGVudDphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgY2xlYXI6IGJvdGg7IH0gfVxuICBib2R5LmZvdXItb2gtZm91ciBzZWN0aW9uLmNvbnRlbnQgaDEge1xuICAgIG1hcmdpbi10b3A6IDM1cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgYm9keS5mb3VyLW9oLWZvdXIgc2VjdGlvbi5jb250ZW50IGgxIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMTI1cHg7IH0gfVxuICBib2R5LmZvdXItb2gtZm91ciBzZWN0aW9uLmNvbnRlbnQgaDIge1xuICAgIG1hcmdpbi10b3A6IDVweDsgfVxuICBib2R5LmZvdXItb2gtZm91ciBzZWN0aW9uLmNvbnRlbnQgYS5jdGEge1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2Utb3V0O1xuICAgIHBhZGRpbmc6IDEwcHggNTJweDtcbiAgICBib3JkZXI6IHNvbGlkIDFweCAjZmFlNmNkO1xuICAgIGJvcmRlci1yYWRpdXM6IDQwcHg7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXJnaW4tdG9wOiA0MHB4OyB9XG4gICAgYm9keS5mb3VyLW9oLWZvdXIgc2VjdGlvbi5jb250ZW50IGEuY3RhOmhvdmVyIHtcbiAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC4xKTsgfVxuXG5ib2R5LmRldmVsb3BlcnMgbWFpbiBhLmN0YSB7XG4gIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2Utb3V0O1xuICBwYWRkaW5nOiAxMHB4IDUycHg7XG4gIGJvcmRlcjogc29saWQgMXB4ICNmYWU2Y2Q7XG4gIGJvcmRlci1yYWRpdXM6IDQwcHg7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG4gIGJvZHkuZGV2ZWxvcGVycyBtYWluIGEuY3RhOmhvdmVyIHtcbiAgICBjb2xvcjogd2hpdGU7XG4gICAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjEpOyB9XG5cbmJvZHkuZGV2ZWxvcGVycyBtYWluIHNlY3Rpb24ge1xuICBtYXgtd2lkdGg6IDI5MHB4O1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG1hcmdpbi1ib3R0b206IDM1cHg7XG4gIHBhZGRpbmctYm90dG9tOiAyNXB4OyB9XG4gIGJvZHkuZGV2ZWxvcGVycyBtYWluIHNlY3Rpb246YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIGJvZHkuZGV2ZWxvcGVycyBtYWluIHNlY3Rpb24ge1xuICAgICAgbWF4LXdpZHRoOiA3MDJweDtcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9XG4gICAgICBib2R5LmRldmVsb3BlcnMgbWFpbiBzZWN0aW9uOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCIgXCI7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBjbGVhcjogYm90aDsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIGJvZHkuZGV2ZWxvcGVycyBtYWluIHNlY3Rpb24ge1xuICAgICAgcGFkZGluZy1ib3R0b206IDU1cHg7XG4gICAgICBtYXJnaW4tYm90dG9tOiA3NXB4OyB9IH1cblxuYm9keS5kZXZlbG9wZXJzIG1haW4gc2VjdGlvbi5pbnRybyB7XG4gIGJvcmRlci1ib3R0b206IHNvbGlkIDFweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSk7IH1cbiAgYm9keS5kZXZlbG9wZXJzIG1haW4gc2VjdGlvbi5pbnRybyBoMSxcbiAgYm9keS5kZXZlbG9wZXJzIG1haW4gc2VjdGlvbi5pbnRybyBkaXYge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIG1hcmdpbi1yaWdodDogMDsgfVxuICBib2R5LmRldmVsb3BlcnMgbWFpbiBzZWN0aW9uLmludHJvIGRpdiB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgYm9keS5kZXZlbG9wZXJzIG1haW4gc2VjdGlvbi5pbnRybyBkaXYge1xuICAgICAgICB3aWR0aDogNDkuMTUyNTQlO1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxLjY5NDkyJTsgfVxuICAgICAgICBib2R5LmRldmVsb3BlcnMgbWFpbiBzZWN0aW9uLmludHJvIGRpdjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICB3aWR0aDogNDkuMTUyNTQlO1xuICAgICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7IH0gfVxuXG5ib2R5LmRldmVsb3BlcnMgbWFpbiBzZWN0aW9uLnBob25lLWNvbnRhY3Qge1xuICBib3JkZXItYm90dG9tOiBzb2xpZCAxcHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpOyB9XG4gIGJvZHkuZGV2ZWxvcGVycyBtYWluIHNlY3Rpb24ucGhvbmUtY29udGFjdCBoMSB7XG4gICAgZm9udC1zaXplOiAzMHB4O1xuICAgIG1hcmdpbi1ib3R0b206IC0xMHB4OyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICBib2R5LmRldmVsb3BlcnMgbWFpbiBzZWN0aW9uLnBob25lLWNvbnRhY3QgaDEge1xuICAgICAgICBmb250LXNpemU6IDM2cHg7IH0gfVxuICBib2R5LmRldmVsb3BlcnMgbWFpbiBzZWN0aW9uLnBob25lLWNvbnRhY3QgYS5jdGEtcGhvbmUge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuXG5ib2R5LmRldmVsb3BlcnMgbWFpbiBzZWN0aW9uLnJlcXVlc3Qtc2VjdGlvbiBoMiB7XG4gIG1hcmdpbi1ib3R0b206IC0xMHB4OyB9XG5cbmJvZHkuZGV2ZWxvcGVycyBtYWluIHNlY3Rpb24ucmVxdWVzdC1zZWN0aW9uIGEuY3RhIHtcbiAgbWFyZ2luLXRvcDogMTVweDsgfVxuXG5ib2R5LmRlYWxlcnMgbWFpbiB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltYWdlcy9kZWFsZXJzLW1hcC5wbmdcIik7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDUwJSA4NXB4O1xuICBiYWNrZ3JvdW5kLXNpemU6IDY1OHB4IDI2OHB4O1xuICBwYWRkaW5nOiA3MHB4IDA7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgYm9keS5kZWFsZXJzIG1haW4ge1xuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogNTAlIDk1cHg7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IDEyMDBweCBhdXRvOyB9IH1cbiAgYm9keS5kZWFsZXJzIG1haW4gc2VjdGlvbiB7XG4gICAgbWF4LXdpZHRoOiAyOTBweDtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87IH1cbiAgICBib2R5LmRlYWxlcnMgbWFpbiBzZWN0aW9uOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgYm9keS5kZWFsZXJzIG1haW4gc2VjdGlvbiB7XG4gICAgICAgIG1heC13aWR0aDogNzAycHg7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87IH1cbiAgICAgICAgYm9keS5kZWFsZXJzIG1haW4gc2VjdGlvbjphZnRlciB7XG4gICAgICAgICAgY29udGVudDogXCIgXCI7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgY2xlYXI6IGJvdGg7IH0gfVxuICBib2R5LmRlYWxlcnMgbWFpbiBzZWN0aW9uLmludHJvIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgYm9keS5kZWFsZXJzIG1haW4gW2lkPVwiZGVhbGVyc1wiXSB1bCxcbiAgICBib2R5LmRlYWxlcnMgbWFpbiBbaWQ9XCJkaXN0cmlidXRvcnNcIl0gdWwge1xuICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgbWFyZ2luLXRvcDogLTMwcHg7IH0gfVxuICBib2R5LmRlYWxlcnMgbWFpbiBbaWQ9XCJkZWFsZXJzXCJdIGxpLFxuICBib2R5LmRlYWxlcnMgbWFpbiBbaWQ9XCJkaXN0cmlidXRvcnNcIl0gbGkge1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgbWFyZ2luLWJvdHRvbTogMjdweDtcbiAgICBtYXJnaW4tbGVmdDogLTMycHg7IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgIGJvZHkuZGVhbGVycyBtYWluIFtpZD1cImRlYWxlcnNcIl0gbGksXG4gICAgICBib2R5LmRlYWxlcnMgbWFpbiBbaWQ9XCJkaXN0cmlidXRvcnNcIl0gbGkge1xuICAgICAgICB3aWR0aDogMzIuMjAzMzklO1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgaGVpZ2h0OiA4MHB4OyB9XG4gICAgICAgIGJvZHkuZGVhbGVycyBtYWluIFtpZD1cImRlYWxlcnNcIl0gbGk6bnRoLWNoaWxkKDNuICsgMSksXG4gICAgICAgIGJvZHkuZGVhbGVycyBtYWluIFtpZD1cImRpc3RyaWJ1dG9yc1wiXSBsaTpudGgtY2hpbGQoM24gKyAxKSB7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAtMTAwJTtcbiAgICAgICAgICBjbGVhcjogYm90aDtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogMDsgfVxuICAgICAgICBib2R5LmRlYWxlcnMgbWFpbiBbaWQ9XCJkZWFsZXJzXCJdIGxpOm50aC1jaGlsZCgzbiArIDIpLFxuICAgICAgICBib2R5LmRlYWxlcnMgbWFpbiBbaWQ9XCJkaXN0cmlidXRvcnNcIl0gbGk6bnRoLWNoaWxkKDNuICsgMikge1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAzMy44OTgzMSU7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAtMTAwJTtcbiAgICAgICAgICBjbGVhcjogbm9uZTsgfVxuICAgICAgICBib2R5LmRlYWxlcnMgbWFpbiBbaWQ9XCJkZWFsZXJzXCJdIGxpOm50aC1jaGlsZCgzbiArIDMpLFxuICAgICAgICBib2R5LmRlYWxlcnMgbWFpbiBbaWQ9XCJkaXN0cmlidXRvcnNcIl0gbGk6bnRoLWNoaWxkKDNuICsgMykge1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiA2Ny43OTY2MSU7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAtMTAwJTtcbiAgICAgICAgICBjbGVhcjogbm9uZTsgfSB9XG4gICAgYm9keS5kZWFsZXJzIG1haW4gW2lkPVwiZGVhbGVyc1wiXSBsaSBzcGFuLFxuICAgIGJvZHkuZGVhbGVycyBtYWluIFtpZD1cImRpc3RyaWJ1dG9yc1wiXSBsaSBzcGFuIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgICBib2R5LmRlYWxlcnMgbWFpbiBbaWQ9XCJkZWFsZXJzXCJdIGxpIHNwYW46Zmlyc3QtY2hpbGQsXG4gICAgICBib2R5LmRlYWxlcnMgbWFpbiBbaWQ9XCJkaXN0cmlidXRvcnNcIl0gbGkgc3BhbjpmaXJzdC1jaGlsZCB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9XG4gICAgICBib2R5LmRlYWxlcnMgbWFpbiBbaWQ9XCJkZWFsZXJzXCJdIGxpIHNwYW4gLmljb24tbGluay1leHQsXG4gICAgICBib2R5LmRlYWxlcnMgbWFpbiBbaWQ9XCJkaXN0cmlidXRvcnNcIl0gbGkgc3BhbiAuaWNvbi1saW5rLWV4dCB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICAgICAgZm9udC1zaXplOiAxM3B4O1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDJweDsgfVxuICAgICAgYm9keS5kZWFsZXJzIG1haW4gW2lkPVwiZGVhbGVyc1wiXSBsaSBzcGFuIGEsXG4gICAgICBib2R5LmRlYWxlcnMgbWFpbiBbaWQ9XCJkaXN0cmlidXRvcnNcIl0gbGkgc3BhbiBhIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICBjb2xvcjogI2ZhZTZjZDsgfVxuICBib2R5LmRlYWxlcnMgbWFpbiBbaWQ9XCJkaXN0cmlidXRvcnNcIl0gaDIge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgIGJvZHkuZGVhbGVycyBtYWluIFtpZD1cImRpc3RyaWJ1dG9yc1wiXSBoMiB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAzMHB4OyB9IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgIGJvZHkuZGVhbGVycyBtYWluIFtpZD1cImRpc3RyaWJ1dG9yc1wiXSBoMjo6YmVmb3JlLCBib2R5LmRlYWxlcnMgbWFpbiBbaWQ9XCJkaXN0cmlidXRvcnNcIl0gaDI6OmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogc29saWQgMXB4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTtcbiAgICAgICAgd2lkdGg6IDIwMHB4O1xuICAgICAgICBtYXJnaW4tdG9wOiAyNXB4OyB9IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgIGJvZHkuZGVhbGVycyBtYWluIFtpZD1cImRpc3RyaWJ1dG9yc1wiXSBoMjo6YmVmb3JlLCBib2R5LmRlYWxlcnMgbWFpbiBbaWQ9XCJkaXN0cmlidXRvcnNcIl0gaDI6OmFmdGVyIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMjVweDsgfSB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICBib2R5LmRlYWxlcnMgbWFpbiBbaWQ9XCJkaXN0cmlidXRvcnNcIl0gaDI6OmJlZm9yZSB7XG4gICAgICAgIGZsb2F0OiBsZWZ0OyB9IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgIGJvZHkuZGVhbGVycyBtYWluIFtpZD1cImRpc3RyaWJ1dG9yc1wiXSBoMjo6YWZ0ZXIge1xuICAgICAgICBmbG9hdDogcmlnaHQ7IH0gfVxuXG4vKlxudWwge1xuICAgIEBpbmNsdWRlIGZsdXNoLWxpc3Q7XG59XG4qL1xuYm9keS5jaGFuZ2Vsb2dzIHNlY3Rpb24ge1xuICBtYXgtd2lkdGg6IDI5MHB4O1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9XG4gIGJvZHkuY2hhbmdlbG9ncyBzZWN0aW9uOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIiBcIjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjbGVhcjogYm90aDsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICBib2R5LmNoYW5nZWxvZ3Mgc2VjdGlvbiB7XG4gICAgICBtYXgtd2lkdGg6IDcwMnB4O1xuICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87IH1cbiAgICAgIGJvZHkuY2hhbmdlbG9ncyBzZWN0aW9uOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCIgXCI7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBjbGVhcjogYm90aDsgfSB9XG5cbmJvZHkuY2hhbmdlbG9ncyBbaWQ9XCJpbnRyb1wiXSB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuXG5baWQ9XCJjaGFuZ2Vsb2dzXCJdIHtcbiAgbWF4LXdpZHRoOiAyOTBweDtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgbWFyZ2luLXRvcDogMzVweDtcbiAgbWFyZ2luLWJvdHRvbTogMzVweDsgfVxuICBbaWQ9XCJjaGFuZ2Vsb2dzXCJdOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIiBcIjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjbGVhcjogYm90aDsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICBbaWQ9XCJjaGFuZ2Vsb2dzXCJdIHtcbiAgICAgIG1heC13aWR0aDogNzAycHg7XG4gICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgIG1hcmdpbi1yaWdodDogYXV0bzsgfVxuICAgICAgW2lkPVwiY2hhbmdlbG9nc1wiXTphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgY2xlYXI6IGJvdGg7IH0gfVxuICBbaWQ9XCJjaGFuZ2Vsb2dzXCJdIC5jaGFuZ2Vsb2cge1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgcGFkZGluZy1ib3R0b206IDI1cHg7IH1cbiAgICBbaWQ9XCJjaGFuZ2Vsb2dzXCJdIC5jaGFuZ2Vsb2c6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCIgXCI7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgW2lkPVwiY2hhbmdlbG9nc1wiXSAuY2hhbmdlbG9nOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgYm9yZGVyLWJvdHRvbTogc29saWQgMXB4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgW2lkPVwiY2hhbmdlbG9nc1wiXSAuY2hhbmdlbG9nIHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDA7IH0gfVxuICBbaWQ9XCJjaGFuZ2Vsb2dzXCJdIC52ZXJzaW9uLWRldGFpbHMge1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87IH1cbiAgICBbaWQ9XCJjaGFuZ2Vsb2dzXCJdIC52ZXJzaW9uLWRldGFpbHM6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCIgXCI7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgW2lkPVwiY2hhbmdlbG9nc1wiXSAudmVyc2lvbi1kZXRhaWxzIC5wb3N0ZWQtZGF0ZSB7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICBbaWQ9XCJjaGFuZ2Vsb2dzXCJdIC5kZXRhaWxzIHtcbiAgICAgIGZsb2F0OiBsZWZ0OyB9IH1cbiAgW2lkPVwiY2hhbmdlbG9nc1wiXSAudHJpZ2dlci1jaGFuZ2Vsb2cgZGl2IHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgd2lkdGg6IDQ0LjQ0NDQ0JTtcbiAgICBmbG9hdDogbGVmdDsgfVxuICAgIFtpZD1cImNoYW5nZWxvZ3NcIl0gLnRyaWdnZXItY2hhbmdlbG9nIGRpdjpmaXJzdC1jaGlsZCB7XG4gICAgICB3aWR0aDogMjRweDsgfVxuICBbaWQ9XCJjaGFuZ2Vsb2dzXCJdIC50b2dnbGUtaW5kaWNhdG9yIHtcbiAgICB3aWR0aDogMjRweDtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpO1xuICAgIHRyYW5zaXRpb246IGFsbCAuM3MgZWFzZTtcbiAgICBtYXJnaW4tdG9wOiAxOXB4OyB9XG4gICAgW2lkPVwiY2hhbmdlbG9nc1wiXSAudG9nZ2xlLWluZGljYXRvci5vcGVuIHtcbiAgICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpOyB9XG4gIFtpZD1cImNoYW5nZWxvZ3NcIl0gaDMge1xuICAgIG1hcmdpbi1ib3R0b206IDEwcHg7IH1cbiAgICBbaWQ9XCJjaGFuZ2Vsb2dzXCJdIGgzIGEge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG4gIFtpZD1cImNoYW5nZWxvZ3NcIl0gcCB7XG4gICAgbWFyZ2luLXRvcDogNXB4OyB9XG4gIFtpZD1cImNoYW5nZWxvZ3NcIl0gLmNvbGxhcHNlLXRyaWdnZXIge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICBbaWQ9XCJjaGFuZ2Vsb2dzXCJdIGEuY3RhIHtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLW91dDtcbiAgICBwYWRkaW5nOiAxMHB4IDUycHg7XG4gICAgYm9yZGVyOiBzb2xpZCAxcHggI2ZhZTZjZDtcbiAgICBib3JkZXItcmFkaXVzOiA0MHB4O1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgd2lkdGg6IDIzNXB4OyB9XG4gICAgW2lkPVwiY2hhbmdlbG9nc1wiXSBhLmN0YTpob3ZlciB7XG4gICAgICBjb2xvcjogd2hpdGU7XG4gICAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuMSk7IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgIFtpZD1cImNoYW5nZWxvZ3NcIl0gYS5jdGEge1xuICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgIG1hcmdpbi10b3A6IDIycHg7IH0gfVxuICAgIFtpZD1cImNoYW5nZWxvZ3NcIl0gYS5jdGEuZG93bmxvYWQtbGluayB7XG4gICAgICBtYXJnaW4tdG9wOiAxNXB4OyB9XG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgW2lkPVwiY2hhbmdlbG9nc1wiXSBhLmN0YS5kb3dubG9hZC1saW5rIHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAyMnB4O1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogMTVweDsgfSB9XG4gIFtpZD1cImNoYW5nZWxvZ3NcIl0gLmNoYW5nZXMge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgbWluLXdpZHRoOiAxMDAlO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87IH1cbiAgICBbaWQ9XCJjaGFuZ2Vsb2dzXCJdIC5jaGFuZ2VzOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIFtpZD1cImNoYW5nZWxvZ3NcIl0gLmNoYW5nZXMgdWwge1xuICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7IH1cbiAgICAgIFtpZD1cImNoYW5nZWxvZ3NcIl0gLmNoYW5nZXMgdWwgbGkge1xuICAgICAgICBkaXNwbGF5OiB0YWJsZS1yb3c7IH1cbiAgICAgICAgW2lkPVwiY2hhbmdlbG9nc1wiXSAuY2hhbmdlcyB1bCBsaTpiZWZvcmUge1xuICAgICAgICAgIGNvbnRlbnQ6IFwi4oCiXCI7XG4gICAgICAgICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjRlbTsgfVxuXG5ib2R5LmRvd25sb2FkcyBtYWluIHNlY3Rpb24ge1xuICBtYXgtd2lkdGg6IDI5MHB4O1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9XG4gIGJvZHkuZG93bmxvYWRzIG1haW4gc2VjdGlvbjphZnRlciB7XG4gICAgY29udGVudDogXCIgXCI7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgYm9keS5kb3dubG9hZHMgbWFpbiBzZWN0aW9uIHtcbiAgICAgIG1heC13aWR0aDogNzAycHg7XG4gICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgIG1hcmdpbi1yaWdodDogYXV0bzsgfVxuICAgICAgYm9keS5kb3dubG9hZHMgbWFpbiBzZWN0aW9uOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCIgXCI7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBjbGVhcjogYm90aDsgfSB9XG4gIGJvZHkuZG93bmxvYWRzIG1haW4gc2VjdGlvbiBhLmN0YSB7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1vdXQ7XG4gICAgcGFkZGluZzogMTBweCA1MnB4O1xuICAgIGJvcmRlcjogc29saWQgMXB4ICNmYWU2Y2Q7XG4gICAgYm9yZGVyLXJhZGl1czogNDBweDtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAgIGJvZHkuZG93bmxvYWRzIG1haW4gc2VjdGlvbiBhLmN0YTpob3ZlciB7XG4gICAgICBjb2xvcjogd2hpdGU7XG4gICAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuMSk7IH1cbiAgYm9keS5kb3dubG9hZHMgbWFpbiBzZWN0aW9uIGEge1xuICAgIGNvbG9yOiAjZmFlNmNkOyB9XG5cbmJvZHkuZG93bmxvYWRzIFtpZD1cImludHJvXCJdIGgxIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICBib2R5LmRvd25sb2FkcyBbaWQ9XCJ0cmFja2lyLXNvZnR3YXJlXCJdIC50cmFja2lyLWNhbGxvdXQge1xuICAgIHdpZHRoOiA2Ni4xMDE2OSU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgbWFyZ2luLXJpZ2h0OiAxLjY5NDkyJTtcbiAgICBtYXJnaW4tbGVmdDogMTYuOTQ5MTUlO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfSB9XG5cbmJvZHkuZG93bmxvYWRzIFtpZD1cInRyYWNraXItc29mdHdhcmVcIl0gLnRyYWNraXItY2FsbG91dCBpbWcge1xuICBtYXJnaW4tYm90dG9tOiAxMHB4OyB9XG5cbmJvZHkuZG93bmxvYWRzIFtpZD1cInRyYWNraXItc29mdHdhcmVcIl0gLnRyYWNraXItY2FsbG91dCBoMyB7XG4gIGZvbnQtc2l6ZTogMThweDsgfVxuXG5ib2R5LmRvd25sb2FkcyBbaWQ9XCJ0cmFja2lyLXNvZnR3YXJlXCJdIC50cmFja2lyLWNhbGxvdXQgLnNlY29uZGFyeSB7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgbWFyZ2luLXRvcDogLTIwcHg7XG4gIGxpbmUtaGVpZ2h0OiAyNnB4O1xuICBtYXJnaW4tYm90dG9tOiAzMHB4OyB9XG5cbmJvZHkuZG93bmxvYWRzIFtpZD1cInRyYWNraXItc29mdHdhcmVcIl0gLnRyYWNraXItY2FsbG91dCBhLmN0YSB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIHBhZGRpbmc6IDEwcHggMjBweDtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgYm9keS5kb3dubG9hZHMgW2lkPVwidHJhY2tpci1zb2Z0d2FyZVwiXSAudHJhY2tpci1jYWxsb3V0IGEuY3RhIHtcbiAgICAgIHBhZGRpbmc6IDEwcHggNTJweDtcbiAgICAgIHdpZHRoOiA3MCU7IH0gfVxuXG5ib2R5LmRvd25sb2FkcyBbaWQ9XCJhbGVydHMtYW5kLXJlcXVpcmVtZW50c1wiXSB7XG4gIG1hcmdpbi10b3A6IDUwcHg7IH1cbiAgYm9keS5kb3dubG9hZHMgW2lkPVwiYWxlcnRzLWFuZC1yZXF1aXJlbWVudHNcIl0gLmFsZXJ0cy1hbmQtbm90aWNlcyxcbiAgYm9keS5kb3dubG9hZHMgW2lkPVwiYWxlcnRzLWFuZC1yZXF1aXJlbWVudHNcIl0gLnN5c3RlbS1yZXF1aXJlbWVudHMge1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgbWFyZ2luLXJpZ2h0OiAwOyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICBib2R5LmRvd25sb2FkcyBbaWQ9XCJhbGVydHMtYW5kLXJlcXVpcmVtZW50c1wiXSAuYWxlcnRzLWFuZC1ub3RpY2VzLFxuICAgICAgYm9keS5kb3dubG9hZHMgW2lkPVwiYWxlcnRzLWFuZC1yZXF1aXJlbWVudHNcIl0gLnN5c3RlbS1yZXF1aXJlbWVudHMge1xuICAgICAgICB3aWR0aDogNDkuMTUyNTQlO1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxLjY5NDkyJTsgfSB9XG4gICAgYm9keS5kb3dubG9hZHMgW2lkPVwiYWxlcnRzLWFuZC1yZXF1aXJlbWVudHNcIl0gLmFsZXJ0cy1hbmQtbm90aWNlcyB1bCxcbiAgICBib2R5LmRvd25sb2FkcyBbaWQ9XCJhbGVydHMtYW5kLXJlcXVpcmVtZW50c1wiXSAuc3lzdGVtLXJlcXVpcmVtZW50cyB1bCB7XG4gICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgbGlzdC1zdHlsZTogbm9uZTsgfVxuICAgICAgYm9keS5kb3dubG9hZHMgW2lkPVwiYWxlcnRzLWFuZC1yZXF1aXJlbWVudHNcIl0gLmFsZXJ0cy1hbmQtbm90aWNlcyB1bCBsaSxcbiAgICAgIGJvZHkuZG93bmxvYWRzIFtpZD1cImFsZXJ0cy1hbmQtcmVxdWlyZW1lbnRzXCJdIC5zeXN0ZW0tcmVxdWlyZW1lbnRzIHVsIGxpIHtcbiAgICAgICAgZGlzcGxheTogdGFibGUtcm93OyB9XG4gICAgICAgIGJvZHkuZG93bmxvYWRzIFtpZD1cImFsZXJ0cy1hbmQtcmVxdWlyZW1lbnRzXCJdIC5hbGVydHMtYW5kLW5vdGljZXMgdWwgbGk6YmVmb3JlLFxuICAgICAgICBib2R5LmRvd25sb2FkcyBbaWQ9XCJhbGVydHMtYW5kLXJlcXVpcmVtZW50c1wiXSAuc3lzdGVtLXJlcXVpcmVtZW50cyB1bCBsaTpiZWZvcmUge1xuICAgICAgICAgIGNvbnRlbnQ6IFwi4oCiXCI7XG4gICAgICAgICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjRlbTsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICBib2R5LmRvd25sb2FkcyBbaWQ9XCJhbGVydHMtYW5kLXJlcXVpcmVtZW50c1wiXSAuc3lzdGVtLXJlcXVpcmVtZW50cyB7XG4gICAgICB3aWR0aDogNDkuMTUyNTQlO1xuICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwOyB9IH1cblxuYm9keS5kb3dubG9hZHMgW2lkPVwiZHJpdmVyc1wiXSB7XG4gIG1hcmdpbi10b3A6IDUwcHg7IH1cbiAgYm9keS5kb3dubG9hZHMgW2lkPVwiZHJpdmVyc1wiXSBoMiB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICBib2R5LmRvd25sb2FkcyBbaWQ9XCJkcml2ZXJzXCJdIGgyIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDMwcHg7IH0gfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgYm9keS5kb3dubG9hZHMgW2lkPVwiZHJpdmVyc1wiXSBoMjo6YmVmb3JlLCBib2R5LmRvd25sb2FkcyBbaWQ9XCJkcml2ZXJzXCJdIGgyOjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIGJvcmRlci1ib3R0b206IHNvbGlkIDFweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSk7XG4gICAgICAgIHdpZHRoOiAyMDBweDtcbiAgICAgICAgbWFyZ2luLXRvcDogMjVweDsgfSB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICBib2R5LmRvd25sb2FkcyBbaWQ9XCJkcml2ZXJzXCJdIGgyOjpiZWZvcmUsIGJvZHkuZG93bmxvYWRzIFtpZD1cImRyaXZlcnNcIl0gaDI6OmFmdGVyIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMjVweDsgfSB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICBib2R5LmRvd25sb2FkcyBbaWQ9XCJkcml2ZXJzXCJdIGgyOjpiZWZvcmUge1xuICAgICAgICBmbG9hdDogbGVmdDsgfSB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICBib2R5LmRvd25sb2FkcyBbaWQ9XCJkcml2ZXJzXCJdIGgyOjphZnRlciB7XG4gICAgICAgIGZsb2F0OiByaWdodDsgfSB9XG4gIGJvZHkuZG93bmxvYWRzIFtpZD1cImRyaXZlcnNcIl0gLmJ1dHRvbiB7XG4gICAgbWFyZ2luLXRvcDogNjBweDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgbWFyZ2luLXJpZ2h0OiAwOyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICBib2R5LmRvd25sb2FkcyBbaWQ9XCJkcml2ZXJzXCJdIC5idXR0b24ge1xuICAgICAgICB3aWR0aDogNDkuMTUyNTQlO1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxLjY5NDkyJTsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIGJvZHkuZG93bmxvYWRzIFtpZD1cImRyaXZlcnNcIl0gLmJ1dHRvbjpsYXN0LW9mLXR5cGUge1xuICAgICAgd2lkdGg6IDQ5LjE1MjU0JTtcbiAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgIG1hcmdpbi1yaWdodDogMDsgfSB9XG5cbmJvZHkuZG93bmxvYWRzIFtpZD1cIm1hbnVhbHNcIl0gaDIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgYm9keS5kb3dubG9hZHMgW2lkPVwibWFudWFsc1wiXSBoMiB7XG4gICAgICBwYWRkaW5nLXRvcDogMzBweDsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIGJvZHkuZG93bmxvYWRzIFtpZD1cIm1hbnVhbHNcIl0gaDI6OmJlZm9yZSwgYm9keS5kb3dubG9hZHMgW2lkPVwibWFudWFsc1wiXSBoMjo6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIGJvcmRlci1ib3R0b206IHNvbGlkIDFweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSk7XG4gICAgICB3aWR0aDogMjAwcHg7XG4gICAgICBtYXJnaW4tdG9wOiAyNXB4OyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgYm9keS5kb3dubG9hZHMgW2lkPVwibWFudWFsc1wiXSBoMjo6YmVmb3JlLCBib2R5LmRvd25sb2FkcyBbaWQ9XCJtYW51YWxzXCJdIGgyOjphZnRlciB7XG4gICAgICBtYXJnaW4tdG9wOiAyNXB4OyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgYm9keS5kb3dubG9hZHMgW2lkPVwibWFudWFsc1wiXSBoMjo6YmVmb3JlIHtcbiAgICAgIGZsb2F0OiBsZWZ0OyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgYm9keS5kb3dubG9hZHMgW2lkPVwibWFudWFsc1wiXSBoMjo6YWZ0ZXIge1xuICAgICAgZmxvYXQ6IHJpZ2h0OyB9IH1cblxuYm9keS5kb3dubG9hZHMgW2lkPVwibWFudWFsc1wiXSAubWFudWFscyB7XG4gIG1hcmdpbi10b3A6IDYwcHg7IH1cbiAgYm9keS5kb3dubG9hZHMgW2lkPVwibWFudWFsc1wiXSAubWFudWFscyBmaWd1cmUge1xuICAgIG1hcmdpbi1ib3R0b206IDUwcHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICBib2R5LmRvd25sb2FkcyBbaWQ9XCJtYW51YWxzXCJdIC5tYW51YWxzIGZpZ3VyZSB7XG4gICAgICAgIHdpZHRoOiAzMi4yMDMzOSU7XG4gICAgICAgIGZsb2F0OiBsZWZ0OyB9XG4gICAgICAgIGJvZHkuZG93bmxvYWRzIFtpZD1cIm1hbnVhbHNcIl0gLm1hbnVhbHMgZmlndXJlOm50aC1jaGlsZCgzbiArIDEpIHtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IC0xMDAlO1xuICAgICAgICAgIGNsZWFyOiBib3RoO1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwOyB9XG4gICAgICAgIGJvZHkuZG93bmxvYWRzIFtpZD1cIm1hbnVhbHNcIl0gLm1hbnVhbHMgZmlndXJlOm50aC1jaGlsZCgzbiArIDIpIHtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogMzMuODk4MzElO1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogLTEwMCU7XG4gICAgICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAgICAgYm9keS5kb3dubG9hZHMgW2lkPVwibWFudWFsc1wiXSAubWFudWFscyBmaWd1cmU6bnRoLWNoaWxkKDNuICsgMykge1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiA2Ny43OTY2MSU7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAtMTAwJTtcbiAgICAgICAgICBjbGVhcjogbm9uZTsgfSB9XG4gICAgYm9keS5kb3dubG9hZHMgW2lkPVwibWFudWFsc1wiXSAubWFudWFscyBmaWd1cmUgaW1nIHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAxNXB4O1xuICAgICAgaGVpZ2h0OiAxMzhweDsgfVxuICAgIGJvZHkuZG93bmxvYWRzIFtpZD1cIm1hbnVhbHNcIl0gLm1hbnVhbHMgZmlndXJlIHNwYW4ge1xuICAgICAgbWFyZ2luOiAzcHggYXV0bztcbiAgICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gICAgICBib2R5LmRvd25sb2FkcyBbaWQ9XCJtYW51YWxzXCJdIC5tYW51YWxzIGZpZ3VyZSBzcGFuOmZpcnN0LW9mLXR5cGUge1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDsgfVxuICAgIGJvZHkuZG93bmxvYWRzIFtpZD1cIm1hbnVhbHNcIl0gLm1hbnVhbHMgZmlndXJlIGEuY3RhIHtcbiAgICAgIG1hcmdpbi10b3A6IDE1cHg7XG4gICAgICBwYWRkaW5nOiAxMHB4IDIwcHg7XG4gICAgICB3aWR0aDogMTAwJTsgfVxuICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAgIGJvZHkuZG93bmxvYWRzIFtpZD1cIm1hbnVhbHNcIl0gLm1hbnVhbHMgZmlndXJlIGEuY3RhIHtcbiAgICAgICAgICBwYWRkaW5nOiAxMHB4IDUycHg7XG4gICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyOyB9IH1cblxuYm9keS5zb2Z0d2FyZS1uZXdzIHNlY3Rpb24ge1xuICBtYXgtd2lkdGg6IDI5MHB4O1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9XG4gIGJvZHkuc29mdHdhcmUtbmV3cyBzZWN0aW9uOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIiBcIjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjbGVhcjogYm90aDsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICBib2R5LnNvZnR3YXJlLW5ld3Mgc2VjdGlvbiB7XG4gICAgICBtYXgtd2lkdGg6IDcwMnB4O1xuICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87IH1cbiAgICAgIGJvZHkuc29mdHdhcmUtbmV3cyBzZWN0aW9uOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCIgXCI7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBjbGVhcjogYm90aDsgfSB9XG5cbmJvZHkuc29mdHdhcmUtbmV3cyBbaWQ9XCJpbnRyb1wiXSB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuXG5ib2R5LnNvZnR3YXJlLW5ld3Mgc2VjdGlvbiB7XG4gIG1heC13aWR0aDogMjkwcHg7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87IH1cbiAgYm9keS5zb2Z0d2FyZS1uZXdzIHNlY3Rpb246YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIGJvZHkuc29mdHdhcmUtbmV3cyBzZWN0aW9uIHtcbiAgICAgIG1heC13aWR0aDogNzAycHg7XG4gICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgIG1hcmdpbi1yaWdodDogYXV0bzsgfVxuICAgICAgYm9keS5zb2Z0d2FyZS1uZXdzIHNlY3Rpb246YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcIiBcIjtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGNsZWFyOiBib3RoOyB9IH1cblxuYm9keS5zb2Z0d2FyZS1uZXdzIFtpZD1cImludHJvXCJdIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG5cbmJvZHkuc29mdHdhcmUtbmV3cyAuZG93bmxvYWQtYW5kLW1hbnVhbCBhIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmctdG9wOiAxMHB4OyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIGJvZHkuc29mdHdhcmUtbmV3cyAuZG93bmxvYWQtYW5kLW1hbnVhbCBhIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICAgICAgYm9keS5zb2Z0d2FyZS1uZXdzIC5kb3dubG9hZC1hbmQtbWFudWFsIGE6bGFzdC1jaGlsZCB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMjBweDsgfSB9XG5cbmJvZHkuc29mdHdhcmUtbmV3cyBbaWQ9XCJjaGFuZ2Vsb2dcIl0ge1xuICBtYXJnaW4tYm90dG9tOiA0NXB4OyB9XG5cbmJvZHkucHJldmlvdXMtcmVsZWFzZXMgc2VjdGlvbiB7XG4gIG1heC13aWR0aDogMjkwcHg7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87IH1cbiAgYm9keS5wcmV2aW91cy1yZWxlYXNlcyBzZWN0aW9uOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIiBcIjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjbGVhcjogYm90aDsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICBib2R5LnByZXZpb3VzLXJlbGVhc2VzIHNlY3Rpb24ge1xuICAgICAgbWF4LXdpZHRoOiA3MDJweDtcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9XG4gICAgICBib2R5LnByZXZpb3VzLXJlbGVhc2VzIHNlY3Rpb246YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcIiBcIjtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGNsZWFyOiBib3RoOyB9IH1cblxuYm9keS5wcmV2aW91cy1yZWxlYXNlcyBzZWN0aW9uW2lkPVwiaW50cm9cIl0ge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cblxuYm9keS5wcmV2aW91cy1yZWxlYXNlcyAucmV0dXJuLWxpbmsge1xuICBtYXJnaW46IDEwcHggMDtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuYm9keS5wcmV2aW91cy1yZWxlYXNlcyBzZWN0aW9uW2lkPVwicmVsZWFzZXNcIl0ge1xuICBtYXJnaW4tYm90dG9tOiAzNXB4OyB9XG4gIGJvZHkucHJldmlvdXMtcmVsZWFzZXMgc2VjdGlvbltpZD1cInJlbGVhc2VzXCJdIC5kb3dubG9hZCB7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICBwYWRkaW5nLWJvdHRvbTogMjVweDsgfVxuICAgIGJvZHkucHJldmlvdXMtcmVsZWFzZXMgc2VjdGlvbltpZD1cInJlbGVhc2VzXCJdIC5kb3dubG9hZDphZnRlciB7XG4gICAgICBjb250ZW50OiBcIiBcIjtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICBib2R5LnByZXZpb3VzLXJlbGVhc2VzIHNlY3Rpb25baWQ9XCJyZWxlYXNlc1wiXSAuZG93bmxvYWQ6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICBib3JkZXItYm90dG9tOiBzb2xpZCAxcHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpOyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICBib2R5LnByZXZpb3VzLXJlbGVhc2VzIHNlY3Rpb25baWQ9XCJyZWxlYXNlc1wiXSAuZG93bmxvYWQge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDsgfSB9XG4gIGJvZHkucHJldmlvdXMtcmVsZWFzZXMgc2VjdGlvbltpZD1cInJlbGVhc2VzXCJdIC5kZXRhaWxzIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgIGJvZHkucHJldmlvdXMtcmVsZWFzZXMgc2VjdGlvbltpZD1cInJlbGVhc2VzXCJdIC5kZXRhaWxzIHtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7IH0gfVxuICBib2R5LnByZXZpb3VzLXJlbGVhc2VzIHNlY3Rpb25baWQ9XCJyZWxlYXNlc1wiXSBoMyB7XG4gICAgbWFyZ2luLWJvdHRvbTogMTBweDsgfVxuICBib2R5LnByZXZpb3VzLXJlbGVhc2VzIHNlY3Rpb25baWQ9XCJyZWxlYXNlc1wiXSBwIHtcbiAgICBtYXJnaW4tdG9wOiA1cHg7IH1cbiAgYm9keS5wcmV2aW91cy1yZWxlYXNlcyBzZWN0aW9uW2lkPVwicmVsZWFzZXNcIl0gLmRvd25sb2FkLWxpbmsge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICBib2R5LnByZXZpb3VzLXJlbGVhc2VzIHNlY3Rpb25baWQ9XCJyZWxlYXNlc1wiXSBhLmN0YSB7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1vdXQ7XG4gICAgcGFkZGluZzogMTBweCA1MnB4O1xuICAgIGJvcmRlcjogc29saWQgMXB4ICNmYWU2Y2Q7XG4gICAgYm9yZGVyLXJhZGl1czogNDBweDtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG4gICAgYm9keS5wcmV2aW91cy1yZWxlYXNlcyBzZWN0aW9uW2lkPVwicmVsZWFzZXNcIl0gYS5jdGE6aG92ZXIge1xuICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjEpOyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICBib2R5LnByZXZpb3VzLXJlbGVhc2VzIHNlY3Rpb25baWQ9XCJyZWxlYXNlc1wiXSBhLmN0YSB7XG4gICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgbWFyZ2luLXRvcDogMjJweDsgfSB9XG5cbkBrZXlmcmFtZXMgbW92ZWhlYWQge1xuICBmcm9tIHtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBsZWZ0IGNlbnRlcjsgfVxuICB0byB7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTEyMDAwcHg7IH0gfVxuXG5baWQ9XCJmZWF0dXJlZC1wcm9kdWN0c1wiXSB7XG4gIHBhZGRpbmc6IDI1cHggMCAzMHB4O1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICBbaWQ9XCJmZWF0dXJlZC1wcm9kdWN0c1wiXSB7XG4gICAgICBwYWRkaW5nOiAyNXB4IDAgNjVweDsgfSB9XG4gIFtpZD1cImZlYXR1cmVkLXByb2R1Y3RzXCJdIGEuY3RhIHtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLW91dDtcbiAgICBwYWRkaW5nOiAxMHB4IDUycHg7XG4gICAgYm9yZGVyOiBzb2xpZCAxcHggI2ZhZTZjZDtcbiAgICBib3JkZXItcmFkaXVzOiA0MHB4O1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cbiAgICBbaWQ9XCJmZWF0dXJlZC1wcm9kdWN0c1wiXSBhLmN0YTpob3ZlciB7XG4gICAgICBjb2xvcjogd2hpdGU7XG4gICAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuMSk7IH1cbiAgW2lkPVwiZmVhdHVyZWQtcHJvZHVjdHNcIl0gLnByb2R1Y3RzIHtcbiAgICBtYXgtd2lkdGg6IDI5MHB4O1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bzsgfVxuICAgIFtpZD1cImZlYXR1cmVkLXByb2R1Y3RzXCJdIC5wcm9kdWN0czphZnRlciB7XG4gICAgICBjb250ZW50OiBcIiBcIjtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgIFtpZD1cImZlYXR1cmVkLXByb2R1Y3RzXCJdIC5wcm9kdWN0cyB7XG4gICAgICAgIG1heC13aWR0aDogNzAycHg7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87IH1cbiAgICAgICAgW2lkPVwiZmVhdHVyZWQtcHJvZHVjdHNcIl0gLnByb2R1Y3RzOmFmdGVyIHtcbiAgICAgICAgICBjb250ZW50OiBcIiBcIjtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBjbGVhcjogYm90aDsgfSB9XG4gIFtpZD1cImZlYXR1cmVkLXByb2R1Y3RzXCJdIC5wcm9kdWN0IHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgIFtpZD1cImZlYXR1cmVkLXByb2R1Y3RzXCJdIC5wcm9kdWN0IHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNjVweDsgfSB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICBbaWQ9XCJmZWF0dXJlZC1wcm9kdWN0c1wiXSAucHJvZHVjdDpsYXN0LWNoaWxkIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMzVweDsgfSB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICBbaWQ9XCJmZWF0dXJlZC1wcm9kdWN0c1wiXSAucHJvZHVjdCB7XG4gICAgICAgIHdpZHRoOiAzMi4yMDMzOSU7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDEuNjk0OTIlOyB9XG4gICAgICAgIFtpZD1cImZlYXR1cmVkLXByb2R1Y3RzXCJdIC5wcm9kdWN0Omxhc3QtY2hpbGQge1xuICAgICAgICAgIHdpZHRoOiAzMi4yMDMzOSU7XG4gICAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogMDsgfSB9XG4gICAgW2lkPVwiZmVhdHVyZWQtcHJvZHVjdHNcIl0gLnByb2R1Y3QgcCB7XG4gICAgICBtYXJnaW46IDEwcHggMCAtNXB4OyB9XG4gICAgW2lkPVwiZmVhdHVyZWQtcHJvZHVjdHNcIl0gLnByb2R1Y3QgcC5wcmljZSB7XG4gICAgICBwYWRkaW5nLXRvcDogMHB4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDsgfVxuICAgIFtpZD1cImZlYXR1cmVkLXByb2R1Y3RzXCJdIC5wcm9kdWN0IGZpZ3VyZSB7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBtYXJnaW46IDAgYXV0byAyMHB4O1xuICAgICAgaGVpZ2h0OiAxNzVweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxNzVweDtcbiAgICAgIHdpZHRoOiAyODBweDsgfVxuICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAgIFtpZD1cImZlYXR1cmVkLXByb2R1Y3RzXCJdIC5wcm9kdWN0IGZpZ3VyZSB7XG4gICAgICAgICAgd2lkdGg6IDIyMHB4OyB9IH1cbiAgICAgIFtpZD1cImZlYXR1cmVkLXByb2R1Y3RzXCJdIC5wcm9kdWN0IGZpZ3VyZSBpbWcge1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgIG1heC1oZWlnaHQ6IDEwMCU7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBib3R0b207IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgIFtpZD1cImZlYXR1cmVkLXByb2R1Y3RzXCJdIC5wcm9kdWN0W2lkPVwidHJhY2tjbGlwLXByb1wiXSBmaWd1cmUge1xuICAgICAgICBoZWlnaHQ6IDIyNXB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMjI1cHg7IH0gfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgW2lkPVwiZmVhdHVyZWQtcHJvZHVjdHNcIl0gLnByb2R1Y3RbaWQ9XCJ0cmFja2NsaXAtcHJvXCJdIGZpZ3VyZSBpbWcge1xuICAgICAgICBoZWlnaHQ6IDE0MHB4OyB9IH1cbiAgICBbaWQ9XCJmZWF0dXJlZC1wcm9kdWN0c1wiXSAucHJvZHVjdFtpZD1cInRpcjVcIl0gZmlndXJlIHtcbiAgICAgIHdpZHRoOiAyMTBweDsgfVxuICAgIFtpZD1cImZlYXR1cmVkLXByb2R1Y3RzXCJdIC5wcm9kdWN0W2lkPVwidGlyNS1wcm8tYnVuZGxlXCJdIGZpZ3VyZSB7XG4gICAgICB3aWR0aDogMjgwcHg7IH1cbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgICBbaWQ9XCJmZWF0dXJlZC1wcm9kdWN0c1wiXSAucHJvZHVjdFtpZD1cInRpcjUtcHJvLWJ1bmRsZVwiXSBmaWd1cmUge1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtMjlweDsgfSB9XG5cbmJvZHkudHJhY2tpcjUge1xuICAvKiBCYWNrZ3JvdW5kOiAqLyB9XG4gIGJvZHkudHJhY2tpcjUgbWFpbiB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuICBib2R5LnRyYWNraXI1IHNlY3Rpb24ge1xuICAgIG1heC13aWR0aDogMjkwcHg7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9XG4gICAgYm9keS50cmFja2lyNSBzZWN0aW9uOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgYm9keS50cmFja2lyNSBzZWN0aW9uIHtcbiAgICAgICAgbWF4LXdpZHRoOiA3MDJweDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICAgIG1hcmdpbi1yaWdodDogYXV0bzsgfVxuICAgICAgICBib2R5LnRyYWNraXI1IHNlY3Rpb246YWZ0ZXIge1xuICAgICAgICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIGNsZWFyOiBib3RoOyB9IH1cbiAgYm9keS50cmFja2lyNSBzZWN0aW9uLmludHJvIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgYm9keS50cmFja2lyNSBkaXYubW9uaXRvciB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1hZ2VzL3RyYWNraXItNS1mb3ItbW9uaXRvci5wbmdcIiksIHVybChcIi4uL2ltYWdlcy9tb25pdG9yLWJlemVsLnBuZ1wiKSwgcmFkaWFsLWdyYWRpZW50KGVsbGlwc2UgYXQgdG9wLCAjM2IzYjNiIDAlLCBibGFjayAxMDAlKTtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0LCByZXBlYXQteCwgbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IDUwJSA0M3B4LCAwcHggMjY1cHgsIDBweCAyNzBweDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDM3MHB4LCAxMDAlIDY1cHgsIGF1dG87XG4gICAgcGFkZGluZy10b3A6IDI5MHB4OyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICBib2R5LnRyYWNraXI1IGRpdi5tb25pdG9yIHtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogNTAlIDQ0cHgsIDBweCAzMzBweCwgMHB4IDM0NHB4O1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDQ3NXB4IGF1dG8sIDEwMCUgNjVweCwgYXV0byBhdXRvO1xuICAgICAgICBwYWRkaW5nLXRvcDogMzkwcHg7IH0gfVxuICBib2R5LnRyYWNraXI1IC5zaXhkb0Yge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAgIGJvZHkudHJhY2tpcjUgLnNpeGRvRiBoMiB7XG4gICAgICBtYXJnaW4tdG9wOiA1MHB4OyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICBib2R5LnRyYWNraXI1IC5zaXhkb0YgPiBoMiBzcGFuIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7IH0gfVxuICAgIGJvZHkudHJhY2tpcjUgLnNpeGRvRiBwIHtcbiAgICAgIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSk7IH1cbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgICBib2R5LnRyYWNraXI1IC5zaXhkb0YgcCB7XG4gICAgICAgICAgd2lkdGg6IDY2LjEwMTY5JTtcbiAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEuNjk0OTIlO1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxNi45NDkxNSU7IH0gfVxuICAgIGJvZHkudHJhY2tpcjUgLnNpeGRvRiBkaXYuaGVhZHMge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIG1hcmdpbi1yaWdodDogMS42OTQ5MiU7XG4gICAgICBtYXJnaW4tYm90dG9tOiA0NXB4O1xuICAgICAgdGV4dC1hbGlnbjogbGVmdDsgfVxuICAgICAgYm9keS50cmFja2lyNSAuc2l4ZG9GIGRpdi5oZWFkcyAuYW5pbWF0aW9uLXNwb3Qge1xuICAgICAgICB3aWR0aDogMTAwcHg7XG4gICAgICAgIG1hcmdpbjogMTVweCAxNXB4O1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIG92ZXJmbG93OiB2aXNpYmxlOyB9XG4gICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgICAgIGJvZHkudHJhY2tpcjUgLnNpeGRvRiBkaXYuaGVhZHMgLmFuaW1hdGlvbi1zcG90IHtcbiAgICAgICAgICAgIHdpZHRoOiAxNS4yNTQyNCU7XG4gICAgICAgICAgICBmbG9hdDogbGVmdDsgfVxuICAgICAgICAgICAgYm9keS50cmFja2lyNSAuc2l4ZG9GIGRpdi5oZWFkcyAuYW5pbWF0aW9uLXNwb3Q6bnRoLWNoaWxkKDZuICsgMSkge1xuICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAtMTAwJTtcbiAgICAgICAgICAgICAgY2xlYXI6IGJvdGg7XG4gICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwOyB9XG4gICAgICAgICAgICBib2R5LnRyYWNraXI1IC5zaXhkb0YgZGl2LmhlYWRzIC5hbmltYXRpb24tc3BvdDpudGgtY2hpbGQoNm4gKyAyKSB7XG4gICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxNi45NDkxNSU7XG4gICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogLTEwMCU7XG4gICAgICAgICAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgICAgICAgICBib2R5LnRyYWNraXI1IC5zaXhkb0YgZGl2LmhlYWRzIC5hbmltYXRpb24tc3BvdDpudGgtY2hpbGQoNm4gKyAzKSB7XG4gICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAzMy44OTgzMSU7XG4gICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogLTEwMCU7XG4gICAgICAgICAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgICAgICAgICBib2R5LnRyYWNraXI1IC5zaXhkb0YgZGl2LmhlYWRzIC5hbmltYXRpb24tc3BvdDpudGgtY2hpbGQoNm4gKyA0KSB7XG4gICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiA1MC44NDc0NiU7XG4gICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogLTEwMCU7XG4gICAgICAgICAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgICAgICAgICBib2R5LnRyYWNraXI1IC5zaXhkb0YgZGl2LmhlYWRzIC5hbmltYXRpb24tc3BvdDpudGgtY2hpbGQoNm4gKyA1KSB7XG4gICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiA2Ny43OTY2MSU7XG4gICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogLTEwMCU7XG4gICAgICAgICAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgICAgICAgICBib2R5LnRyYWNraXI1IC5zaXhkb0YgZGl2LmhlYWRzIC5hbmltYXRpb24tc3BvdDpudGgtY2hpbGQoNm4gKyA2KSB7XG4gICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiA4NC43NDU3NiU7XG4gICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogLTEwMCU7XG4gICAgICAgICAgICAgIGNsZWFyOiBub25lOyB9IH1cbiAgICAgICAgYm9keS50cmFja2lyNSAuc2l4ZG9GIGRpdi5oZWFkcyAuYW5pbWF0aW9uLXNwb3QuaG92ZXIgLnNwcml0ZSB7XG4gICAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAtMTc1cHg7XG4gICAgICAgICAgYW5pbWF0aW9uOiBtb3ZlaGVhZCAycyBzdGVwcygzMCkgaW5maW5pdGU7XG4gICAgICAgICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdmlzaWJpbGl0eTtcbiAgICAgICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAxczsgfVxuICAgICAgICBib2R5LnRyYWNraXI1IC5zaXhkb0YgZGl2LmhlYWRzIC5hbmltYXRpb24tc3BvdC5ob3ZlciAuZ2hvc3Qge1xuICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogb3BhY2l0eTtcbiAgICAgICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAxLjVzOyB9XG4gICAgICAgIGJvZHkudHJhY2tpcjUgLnNpeGRvRiBkaXYuaGVhZHMgLmFuaW1hdGlvbi1zcG90IHAge1xuICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDI1cHg7XG4gICAgICAgICAgbWFyZ2luLXRvcDogLTE1cHg7IH1cbiAgICAgICAgYm9keS50cmFja2lyNSAuc2l4ZG9GIGRpdi5oZWFkcyAuYW5pbWF0aW9uLXNwb3QgLnNwcml0ZSB7XG4gICAgICAgICAgd2lkdGg6IDEwMHB4O1xuICAgICAgICAgIGhlaWdodDogMTM4cHg7XG4gICAgICAgICAgbWFyZ2luOiAyNXB4IDE1cHg7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgIG1hcmdpbi10b3A6IC0xNzVweDtcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogbGVmdCBjZW50ZXI7XG4gICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwLjgyKTsgfVxuICAgICAgICBib2R5LnRyYWNraXI1IC5zaXhkb0YgZGl2LmhlYWRzIC5hbmltYXRpb24tc3BvdCAuZ2hvc3Qge1xuICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG4gICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgICAgICAgICB3aWR0aDogMTIwcHg7XG4gICAgICAgICAgaGVpZ2h0OiAxMzhweDtcbiAgICAgICAgICBtYXJnaW46IDEycHggMTVweCAxMnB4IDVweDtcbiAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IG9wYWNpdHk7XG4gICAgICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMXM7IH1cbiAgICAgICAgICBib2R5LnRyYWNraXI1IC5zaXhkb0YgZGl2LmhlYWRzIC5hbmltYXRpb24tc3BvdCAuZ2hvc3QueSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgMnB4OyB9XG4gICAgICAgICAgYm9keS50cmFja2lyNSAuc2l4ZG9GIGRpdi5oZWFkcyAuYW5pbWF0aW9uLXNwb3QgLmdob3N0LnBpdGNoIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciAwcHg7IH1cbiAgICAgICAgYm9keS50cmFja2lyNSAuc2l4ZG9GIGRpdi5oZWFkcyAuYW5pbWF0aW9uLXNwb3QgLnouZ2hvc3Qge1xuICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4yKTsgfVxuICAgICAgICBib2R5LnRyYWNraXI1IC5zaXhkb0YgZGl2LmhlYWRzIC5hbmltYXRpb24tc3BvdCAueWF3LnNwcml0ZSB7XG4gICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1hZ2VzL3lhdy1zcHJpdGUucG5nXCIpOyB9XG4gICAgICAgIGJvZHkudHJhY2tpcjUgLnNpeGRvRiBkaXYuaGVhZHMgLmFuaW1hdGlvbi1zcG90IC55YXcuZ2hvc3Qge1xuICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltYWdlcy82ZG9mLXlhdy5wbmdcIik7XG4gICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDsgfVxuICAgICAgICBib2R5LnRyYWNraXI1IC5zaXhkb0YgZGl2LmhlYWRzIC5hbmltYXRpb24tc3BvdCAueC5zcHJpdGUge1xuICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltYWdlcy94LXNwcml0ZS5wbmdcIik7IH1cbiAgICAgICAgYm9keS50cmFja2lyNSAuc2l4ZG9GIGRpdi5oZWFkcyAuYW5pbWF0aW9uLXNwb3QgLnguZ2hvc3Qge1xuICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltYWdlcy82ZG9mLXgucG5nXCIpO1xuICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7IH1cbiAgICAgICAgYm9keS50cmFja2lyNSAuc2l4ZG9GIGRpdi5oZWFkcyAuYW5pbWF0aW9uLXNwb3QgLnBpdGNoLnNwcml0ZSB7XG4gICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1hZ2VzL3BpdGNoLXNwcml0ZS5wbmdcIik7IH1cbiAgICAgICAgYm9keS50cmFja2lyNSAuc2l4ZG9GIGRpdi5oZWFkcyAuYW5pbWF0aW9uLXNwb3QgLnBpdGNoLmdob3N0IHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWFnZXMvNmRvZi1waXRjaC5wbmdcIik7XG4gICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDsgfVxuICAgICAgICBib2R5LnRyYWNraXI1IC5zaXhkb0YgZGl2LmhlYWRzIC5hbmltYXRpb24tc3BvdCAueS5zcHJpdGUge1xuICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltYWdlcy95LXNwcml0ZS5wbmdcIik7IH1cbiAgICAgICAgYm9keS50cmFja2lyNSAuc2l4ZG9GIGRpdi5oZWFkcyAuYW5pbWF0aW9uLXNwb3QgLnkuZ2hvc3Qge1xuICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltYWdlcy82ZG9mLXkucG5nXCIpO1xuICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7IH1cbiAgICAgICAgYm9keS50cmFja2lyNSAuc2l4ZG9GIGRpdi5oZWFkcyAuYW5pbWF0aW9uLXNwb3QgLnJvbGwuc3ByaXRlIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWFnZXMvcm9sbC1zcHJpdGUucG5nXCIpOyB9XG4gICAgICAgIGJvZHkudHJhY2tpcjUgLnNpeGRvRiBkaXYuaGVhZHMgLmFuaW1hdGlvbi1zcG90IC5yb2xsLmdob3N0IHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWFnZXMvNmRvZi1yb2xsLnBuZ1wiKTtcbiAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0OyB9XG4gICAgICAgIGJvZHkudHJhY2tpcjUgLnNpeGRvRiBkaXYuaGVhZHMgLmFuaW1hdGlvbi1zcG90IC56LnNwcml0ZSB7XG4gICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1hZ2VzL3otc3ByaXRlLnBuZ1wiKTsgfVxuICAgICAgICBib2R5LnRyYWNraXI1IC5zaXhkb0YgZGl2LmhlYWRzIC5hbmltYXRpb24tc3BvdCAuei5naG9zdCB7XG4gICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1hZ2VzLzZkb2Ytei5wbmdcIik7XG4gICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDsgfVxuICAgIGJvZHkudHJhY2tpcjUgLnNpeGRvRiAuc2l4ZG9GLXZpZGVvcyB7XG4gICAgICBwYWRkaW5nLXRvcDogNDBweDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiA0MHB4O1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIG1hcmdpbi1yaWdodDogMS42OTQ5MiU7IH1cbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgICBib2R5LnRyYWNraXI1IC5zaXhkb0YgLnNpeGRvRi12aWRlb3Mge1xuICAgICAgICAgIHBhZGRpbmctYm90dG9tOiA2MHB4O1xuICAgICAgICAgIGJvcmRlci10b3A6IHNvbGlkIDFweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTUpOyB9IH1cbiAgICAgIGJvZHkudHJhY2tpcjUgLnNpeGRvRiAuc2l4ZG9GLXZpZGVvcyBhIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMzVweDsgfVxuICAgICAgYm9keS50cmFja2lyNSAuc2l4ZG9GIC5zaXhkb0YtdmlkZW9zIGZpZ3VyZSB7XG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMC44OCk7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAzNXB4OyB9XG4gICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgICAgIGJvZHkudHJhY2tpcjUgLnNpeGRvRiAuc2l4ZG9GLXZpZGVvcyBmaWd1cmUge1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgd2lkdGg6IDIyMHB4O1xuICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKTsgfSB9XG4gICAgICAgIGJvZHkudHJhY2tpcjUgLnNpeGRvRiAuc2l4ZG9GLXZpZGVvcyBmaWd1cmUgaW1nIHtcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAxNXB4OyB9XG4gICAgICAgIGJvZHkudHJhY2tpcjUgLnNpeGRvRiAuc2l4ZG9GLXZpZGVvcyBmaWd1cmUgc3BhbjpudGgtY2hpbGQoMSkge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkOyB9XG4gICAgICAgIGJvZHkudHJhY2tpcjUgLnNpeGRvRiAuc2l4ZG9GLXZpZGVvcyBmaWd1cmUgc3BhbjpudGgtY2hpbGQoMiksXG4gICAgICAgIGJvZHkudHJhY2tpcjUgLnNpeGRvRiAuc2l4ZG9GLXZpZGVvcyBmaWd1cmUgc3BhbjpudGgtY2hpbGQoMykge1xuICAgICAgICAgIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMzUpOyB9XG4gIGJvZHkudHJhY2tpcjUgLnByZWNpc2UtdHJhY2tpbmcge1xuICAgIG1hcmdpbi1ib3R0b206IC01cHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgYm9keS50cmFja2lyNSAucHJlY2lzZS10cmFja2luZyBwIHtcbiAgICAgIGNvbG9yOiAjZmFlNmNkOyB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgICAgYm9keS50cmFja2lyNSAucHJlY2lzZS10cmFja2luZyBwIHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAtMjBweDtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiA4MHB4OyB9IH1cbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgICBib2R5LnRyYWNraXI1IC5wcmVjaXNlLXRyYWNraW5nIHAge1xuICAgICAgICAgIG1hcmdpbjogaW5pdGlhbDsgfSB9XG4gICAgYm9keS50cmFja2lyNSAucHJlY2lzZS10cmFja2luZyAucHJlY2lzZS10cmFja2luZy1jb250ZW50IHtcbiAgICAgIG1heC13aWR0aDogMjkwcHg7XG4gICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICAgIHBhZGRpbmctdG9wOiAzNXB4OyB9XG4gICAgICBib2R5LnRyYWNraXI1IC5wcmVjaXNlLXRyYWNraW5nIC5wcmVjaXNlLXRyYWNraW5nLWNvbnRlbnQ6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcIiBcIjtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgYm9keS50cmFja2lyNSAucHJlY2lzZS10cmFja2luZyAucHJlY2lzZS10cmFja2luZy1jb250ZW50IHtcbiAgICAgICAgICBtYXgtd2lkdGg6IDcwMnB4O1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogYXV0bzsgfVxuICAgICAgICAgIGJvZHkudHJhY2tpcjUgLnByZWNpc2UtdHJhY2tpbmcgLnByZWNpc2UtdHJhY2tpbmctY29udGVudDphZnRlciB7XG4gICAgICAgICAgICBjb250ZW50OiBcIiBcIjtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgY2xlYXI6IGJvdGg7IH0gfVxuICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAgIGJvZHkudHJhY2tpcjUgLnByZWNpc2UtdHJhY2tpbmcgLnByZWNpc2UtdHJhY2tpbmctY29udGVudCB7XG4gICAgICAgICAgcGFkZGluZy10b3A6IDU1cHg7XG4gICAgICAgICAgaGVpZ2h0OiA1MDBweDsgfSB9XG4gICAgICBib2R5LnRyYWNraXI1IC5wcmVjaXNlLXRyYWNraW5nIC5wcmVjaXNlLXRyYWNraW5nLWNvbnRlbnQgLnByZWNpc2UtdHJhY2tpbmctY29weSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEwMHB4OyB9XG4gICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgICAgIGJvZHkudHJhY2tpcjUgLnByZWNpc2UtdHJhY2tpbmcgLnByZWNpc2UtdHJhY2tpbmctY29udGVudCAucHJlY2lzZS10cmFja2luZy1jb3B5IHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICB3aWR0aDogNTAwcHg7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiBpbml0aWFsOyB9IH1cbiAgICAgICAgYm9keS50cmFja2lyNSAucHJlY2lzZS10cmFja2luZyAucHJlY2lzZS10cmFja2luZy1jb250ZW50IC5wcmVjaXNlLXRyYWNraW5nLWNvcHkgLnNwZWNzIHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAzMHB4OyB9XG4gICAgICAgIGJvZHkudHJhY2tpcjUgLnByZWNpc2UtdHJhY2tpbmcgLnByZWNpc2UtdHJhY2tpbmctY29udGVudCAucHJlY2lzZS10cmFja2luZy1jb3B5IC5zcGVjIHtcbiAgICAgICAgICBtYXJnaW46IDcwcHggYXV0bzsgfVxuICAgICAgICAgIGh0bWwuaWUgYm9keS50cmFja2lyNSAucHJlY2lzZS10cmFja2luZyAucHJlY2lzZS10cmFja2luZy1jb250ZW50IC5wcmVjaXNlLXRyYWNraW5nLWNvcHkgLnNwZWMge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogLTcwcHg7IH1cbiAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgICAgIGJvZHkudHJhY2tpcjUgLnByZWNpc2UtdHJhY2tpbmcgLnByZWNpc2UtdHJhY2tpbmctY29udGVudCAucHJlY2lzZS10cmFja2luZy1jb3B5IC5zcGVjIHtcbiAgICAgICAgICAgICAgd2lkdGg6IDI1MHB4O1xuICAgICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgICAgbWFyZ2luOiA1cHggYXV0bzsgfSB9XG4gICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAgICAgICBib2R5LnRyYWNraXI1IC5wcmVjaXNlLXRyYWNraW5nIC5wcmVjaXNlLXRyYWNraW5nLWNvbnRlbnQgLnByZWNpc2UtdHJhY2tpbmctY29weSAuc3BlYyBoMiB7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjhweDsgfSB9XG4gICAgICAgIGJvZHkudHJhY2tpcjUgLnByZWNpc2UtdHJhY2tpbmcgLnByZWNpc2UtdHJhY2tpbmctY29udGVudCAucHJlY2lzZS10cmFja2luZy1jb3B5IC5zcGVjLXRpdGxlIHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwcHg7IH1cbiAgICAgICAgICBib2R5LnRyYWNraXI1IC5wcmVjaXNlLXRyYWNraW5nIC5wcmVjaXNlLXRyYWNraW5nLWNvbnRlbnQgLnByZWNpc2UtdHJhY2tpbmctY29weSAuc3BlYy10aXRsZSB+IHAge1xuICAgICAgICAgICAgY29sb3I6ICNmYWU2Y2Q7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAtNXB4O1xuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IGluaXRpYWw7IH1cbiAgICBib2R5LnRyYWNraXI1IC5wcmVjaXNlLXRyYWNraW5nIC5wcmVjaXNlLXRyYWNraW5nLWltYWdlIHtcbiAgICAgIG1heC13aWR0aDogbm9uZTsgfVxuICAgICAgYm9keS50cmFja2lyNSAucHJlY2lzZS10cmFja2luZyAucHJlY2lzZS10cmFja2luZy1pbWFnZSAudHJhY2tpcjUtaW1hZ2Uge1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICB3aWR0aDogMTAwJTsgfVxuICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgICBib2R5LnRyYWNraXI1IC5wcmVjaXNlLXRyYWNraW5nIC5wcmVjaXNlLXRyYWNraW5nLWltYWdlIC50cmFja2lyNS1pbWFnZSB7XG4gICAgICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAtNDE1cHg7IH0gfVxuICAgICAgICBib2R5LnRyYWNraXI1IC5wcmVjaXNlLXRyYWNraW5nIC5wcmVjaXNlLXRyYWNraW5nLWltYWdlIC50cmFja2lyNS1pbWFnZSBpbWcge1xuICAgICAgICAgIHdpZHRoOiAzMDBweDtcbiAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IC0xMjBweDsgfVxuICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgICAgICAgYm9keS50cmFja2lyNSAucHJlY2lzZS10cmFja2luZyAucHJlY2lzZS10cmFja2luZy1pbWFnZSAudHJhY2tpcjUtaW1hZ2UgaW1nIHtcbiAgICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDE1MHB4O1xuICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgIHdpZHRoOiA1MDBweDsgfSB9XG4gIGJvZHkudHJhY2tpcjUgZGl2LmRlc2lnbmVkLWZvci1nYW1lcnMge1xuICAgIHBhZGRpbmc6IDE1cHggMDtcbiAgICBiYWNrZ3JvdW5kOiBibGFjaztcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gdG9wLCAjNGE0YTRhIDAlLCAjMTYxNjE2IDEwMCUpOyB9XG4gICAgYm9keS50cmFja2lyNSBkaXYuZGVzaWduZWQtZm9yLWdhbWVycyAuZGVzaWduZWQtZm9yLWdhbWVycy1jb250ZW50IHAge1xuICAgICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTsgfVxuICAgIGJvZHkudHJhY2tpcjUgZGl2LmRlc2lnbmVkLWZvci1nYW1lcnMgLmRlc2lnbmVkLWZvci1nYW1lcnMtY29udGVudCBpbWcge1xuICAgICAgbWFyZ2luOiAyNXB4IDAgNTVweDsgfVxuICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAgIGJvZHkudHJhY2tpcjUgZGl2LmRlc2lnbmVkLWZvci1nYW1lcnMgLmRlc2lnbmVkLWZvci1nYW1lcnMtY29udGVudCBpbWcge1xuICAgICAgICAgIHdpZHRoOiA4My4wNTA4NSU7XG4gICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxLjY5NDkyJTtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogLTQyLjM3Mjg4JTtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAtMTVweDsgfSB9XG4gICAgYm9keS50cmFja2lyNSBkaXYuZGVzaWduZWQtZm9yLWdhbWVycyAuZGVzaWduZWQtZm9yLWdhbWVycy1jb250ZW50IC5kZXNpZ25lZC1mb3ItZ2FtZXJzLWNvcHkge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgYm9keS50cmFja2lyNSBkaXYuZGVzaWduZWQtZm9yLWdhbWVycyAuZGVzaWduZWQtZm9yLWdhbWVycy1jb250ZW50IC5kZXNpZ25lZC1mb3ItZ2FtZXJzLWNvcHkge1xuICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgd2lkdGg6IDQ5LjE1MjU0JTtcbiAgICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwOyB9IH1cbiAgYm9keS50cmFja2lyNSBzZWN0aW9uLmZ1bGx5LWFkanVzdGFibGUge1xuICAgIHBhZGRpbmctYm90dG9tOiA0MHB4OyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICBib2R5LnRyYWNraXI1IHNlY3Rpb24uZnVsbHktYWRqdXN0YWJsZSB7XG4gICAgICAgIHBhZGRpbmctdG9wOiA4MHB4O1xuICAgICAgICBoZWlnaHQ6IDUwMHB4O1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMHB4OyB9IH1cbiAgICBib2R5LnRyYWNraXI1IHNlY3Rpb24uZnVsbHktYWRqdXN0YWJsZSBpbWcudGlyLWltYWdlIHtcbiAgICAgIG1hcmdpbi10b3A6IDQwcHg7XG4gICAgICB3aWR0aDogMjIwcHg7IH1cbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgICBib2R5LnRyYWNraXI1IHNlY3Rpb24uZnVsbHktYWRqdXN0YWJsZSBpbWcudGlyLWltYWdlIHtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgd2lkdGg6IDQyMHB4O1xuICAgICAgICAgIG1hcmdpbi10b3A6IC02MHB4O1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtMTUwcHg7XG4gICAgICAgICAgbGVmdDogNjAlOyB9IH1cbiAgICBib2R5LnRyYWNraXI1IHNlY3Rpb24uZnVsbHktYWRqdXN0YWJsZSBkaXYuZnVsbHktYWRqdXN0YWJsZS1jb3B5IHtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAgIGJvZHkudHJhY2tpcjUgc2VjdGlvbi5mdWxseS1hZGp1c3RhYmxlIGRpdi5mdWxseS1hZGp1c3RhYmxlLWNvcHkge1xuICAgICAgICAgIHdpZHRoOiA1Ny42MjcxMiU7XG4gICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxLjY5NDkyJTtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgICBib2R5LnRyYWNraXI1IHNlY3Rpb24uZnVsbHktYWRqdXN0YWJsZSBkaXYuZnVsbHktYWRqdXN0YWJsZS1jb3B5IHAge1xuICAgICAgICAgIG1hcmdpbi10b3A6IC0yMHB4OyB9IH1cbiAgYm9keS50cmFja2lyNSAudGVjaC1zcGVjcyB7XG4gICAgcGFkZGluZy10b3A6IDMwcHg7XG4gICAgcGFkZGluZy1ib3R0b206IDMwcHg7XG4gICAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjEpOyB9XG4gICAgYm9keS50cmFja2lyNSAudGVjaC1zcGVjcyAudGVjaC1zcGVjcy1jb250ZW50IGgyIHtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgYm9keS50cmFja2lyNSAudGVjaC1zcGVjcyAudGVjaC1zcGVjcy1jb250ZW50IC50ZWNoLXNwZWNzLWltYWdlcyB7XG4gICAgICAgIHdpZHRoOiAzMi4yMDMzOSU7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDEuNjk0OTIlOyB9IH1cbiAgICBib2R5LnRyYWNraXI1IC50ZWNoLXNwZWNzIC50ZWNoLXNwZWNzLWNvbnRlbnQgLnRlY2gtc3BlY3MtaW1hZ2VzIGZpZ3VyZSB7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgICBib2R5LnRyYWNraXI1IC50ZWNoLXNwZWNzIC50ZWNoLXNwZWNzLWNvbnRlbnQgLnRlY2gtc3BlY3MtaW1hZ2VzIGZpZ3VyZSB7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IC01MHB4OyB9IH1cbiAgICAgIGJvZHkudHJhY2tpcjUgLnRlY2gtc3BlY3MgLnRlY2gtc3BlY3MtY29udGVudCAudGVjaC1zcGVjcy1pbWFnZXMgZmlndXJlOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogODBweDsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgYm9keS50cmFja2lyNSAudGVjaC1zcGVjcyAudGVjaC1zcGVjcy1jb250ZW50IC50ZWNoLXNwZWNzLWltYWdlcyBpbWcge1xuICAgICAgICB3aWR0aDogMjAwcHg7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAtMTAwcHg7XG4gICAgICAgIG1heC13aWR0aDogdW5zZXQ7XG4gICAgICAgIHBvc2l0aW9uOiBzdGlja3k7XG4gICAgICAgIGxlZnQ6IDUwJTsgfSB9XG4gICAgYm9keS50cmFja2lyNSAudGVjaC1zcGVjcyAudGVjaC1zcGVjcy1jb250ZW50IC50ZWNoLXNwZWNzLWltYWdlcyBmaWdjYXB0aW9uIHtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIGZvbnQtc2l6ZTogMTNweDsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgYm9keS50cmFja2lyNSAudGVjaC1zcGVjcyAudGVjaC1zcGVjcy1jb250ZW50IC50ZWNoLXNwZWNzLWNvcHkge1xuICAgICAgICB3aWR0aDogNjYuMTAxNjklO1xuICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMDsgfSB9XG4gICAgYm9keS50cmFja2lyNSAudGVjaC1zcGVjcyAudGVjaC1zcGVjcy1jb250ZW50IC50ZWNoLXNwZWNzLWNvcHkgLnNwZWNzIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDEuNjk0OTIlOyB9XG4gICAgICBib2R5LnRyYWNraXI1IC50ZWNoLXNwZWNzIC50ZWNoLXNwZWNzLWNvbnRlbnQgLnRlY2gtc3BlY3MtY29weSAuc3BlY3MgZGl2IHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDEuNjk0OTIlO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAtMjNweDsgfVxuICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgICBib2R5LnRyYWNraXI1IC50ZWNoLXNwZWNzIC50ZWNoLXNwZWNzLWNvbnRlbnQgLnRlY2gtc3BlY3MtY29weSAuc3BlY3MgZGl2IHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IC0xNXB4OyB9IH1cbiAgICAgIGJvZHkudHJhY2tpcjUgLnRlY2gtc3BlY3MgLnRlY2gtc3BlY3MtY29udGVudCAudGVjaC1zcGVjcy1jb3B5IC5zcGVjcyBwOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogLTEwcHg7XG4gICAgICAgIG1hcmdpbi10b3A6IDIwcHg7IH1cbiAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAgICAgYm9keS50cmFja2lyNSAudGVjaC1zcGVjcyAudGVjaC1zcGVjcy1jb250ZW50IC50ZWNoLXNwZWNzLWNvcHkgLnNwZWNzIHA6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTRweDtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDE0cHg7XG4gICAgICAgICAgICB3aWR0aDogNDkuMTUyNTQlO1xuICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7IH1cbiAgICAgICAgICAgIGJvZHkudHJhY2tpcjUgLnRlY2gtc3BlY3MgLnRlY2gtc3BlY3MtY29udGVudCAudGVjaC1zcGVjcy1jb3B5IC5zcGVjcyBwOmZpcnN0LWNoaWxkOm50aC1jaGlsZCgybiArIDEpIHtcbiAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogLTEwMCU7XG4gICAgICAgICAgICAgIGNsZWFyOiBib3RoO1xuICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMDsgfVxuICAgICAgICAgICAgYm9keS50cmFja2lyNSAudGVjaC1zcGVjcyAudGVjaC1zcGVjcy1jb250ZW50IC50ZWNoLXNwZWNzLWNvcHkgLnNwZWNzIHA6Zmlyc3QtY2hpbGQ6bnRoLWNoaWxkKDJuICsgMikge1xuICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogNTAuODQ3NDYlO1xuICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IC0xMDAlO1xuICAgICAgICAgICAgICBjbGVhcjogbm9uZTsgfSB9XG4gICAgICBib2R5LnRyYWNraXI1IC50ZWNoLXNwZWNzIC50ZWNoLXNwZWNzLWNvbnRlbnQgLnRlY2gtc3BlY3MtY29weSAuc3BlY3MgcDpsYXN0LWNoaWxkIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIG1hcmdpbi10b3A6IDEwcHg7IH1cbiAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAgICAgYm9keS50cmFja2lyNSAudGVjaC1zcGVjcyAudGVjaC1zcGVjcy1jb250ZW50IC50ZWNoLXNwZWNzLWNvcHkgLnNwZWNzIHA6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAxMnB4O1xuICAgICAgICAgICAgd2lkdGg6IDQ5LjE1MjU0JTtcbiAgICAgICAgICAgIGZsb2F0OiBsZWZ0OyB9XG4gICAgICAgICAgICBib2R5LnRyYWNraXI1IC50ZWNoLXNwZWNzIC50ZWNoLXNwZWNzLWNvbnRlbnQgLnRlY2gtc3BlY3MtY29weSAuc3BlY3MgcDpsYXN0LWNoaWxkOm50aC1jaGlsZCgybiArIDEpIHtcbiAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogLTEwMCU7XG4gICAgICAgICAgICAgIGNsZWFyOiBib3RoO1xuICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMDsgfVxuICAgICAgICAgICAgYm9keS50cmFja2lyNSAudGVjaC1zcGVjcyAudGVjaC1zcGVjcy1jb250ZW50IC50ZWNoLXNwZWNzLWNvcHkgLnNwZWNzIHA6bGFzdC1jaGlsZDpudGgtY2hpbGQoMm4gKyAyKSB7XG4gICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiA1MC44NDc0NiU7XG4gICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogLTEwMCU7XG4gICAgICAgICAgICAgIGNsZWFyOiBub25lOyB9IH1cbiAgICBib2R5LnRyYWNraXI1IC50ZWNoLXNwZWNzIC50ZWNoLXNwZWNzLWNvbnRlbnQgLnRlY2gtc3BlY3MtY29weSAubW9yZS1zcGVjcyB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgbWFyZ2luLXJpZ2h0OiAxLjY5NDkyJTtcbiAgICAgIG1hcmdpbi10b3A6IDMwcHg7IH1cbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgICBib2R5LnRyYWNraXI1IC50ZWNoLXNwZWNzIC50ZWNoLXNwZWNzLWNvbnRlbnQgLnRlY2gtc3BlY3MtY29weSAubW9yZS1zcGVjcyAuaW4tYm94LFxuICAgICAgICBib2R5LnRyYWNraXI1IC50ZWNoLXNwZWNzIC50ZWNoLXNwZWNzLWNvbnRlbnQgLnRlY2gtc3BlY3MtY29weSAubW9yZS1zcGVjcyAuc3lzLXJlcXVpcmVtZW50cyB7XG4gICAgICAgICAgd2lkdGg6IDQ5LjE1MjU0JTtcbiAgICAgICAgICBmbG9hdDogbGVmdDsgfVxuICAgICAgICAgIGJvZHkudHJhY2tpcjUgLnRlY2gtc3BlY3MgLnRlY2gtc3BlY3MtY29udGVudCAudGVjaC1zcGVjcy1jb3B5IC5tb3JlLXNwZWNzIC5pbi1ib3g6bnRoLWNoaWxkKDJuICsgMSksXG4gICAgICAgICAgYm9keS50cmFja2lyNSAudGVjaC1zcGVjcyAudGVjaC1zcGVjcy1jb250ZW50IC50ZWNoLXNwZWNzLWNvcHkgLm1vcmUtc3BlY3MgLnN5cy1yZXF1aXJlbWVudHM6bnRoLWNoaWxkKDJuICsgMSkge1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IC0xMDAlO1xuICAgICAgICAgICAgY2xlYXI6IGJvdGg7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMDsgfVxuICAgICAgICAgIGJvZHkudHJhY2tpcjUgLnRlY2gtc3BlY3MgLnRlY2gtc3BlY3MtY29udGVudCAudGVjaC1zcGVjcy1jb3B5IC5tb3JlLXNwZWNzIC5pbi1ib3g6bnRoLWNoaWxkKDJuICsgMiksXG4gICAgICAgICAgYm9keS50cmFja2lyNSAudGVjaC1zcGVjcyAudGVjaC1zcGVjcy1jb250ZW50IC50ZWNoLXNwZWNzLWNvcHkgLm1vcmUtc3BlY3MgLnN5cy1yZXF1aXJlbWVudHM6bnRoLWNoaWxkKDJuICsgMikge1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDUwLjg0NzQ2JTtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogLTEwMCU7XG4gICAgICAgICAgICBjbGVhcjogbm9uZTsgfSB9XG4gICAgICBib2R5LnRyYWNraXI1IC50ZWNoLXNwZWNzIC50ZWNoLXNwZWNzLWNvbnRlbnQgLnRlY2gtc3BlY3MtY29weSAubW9yZS1zcGVjcyAuaW4tYm94IHAsXG4gICAgICBib2R5LnRyYWNraXI1IC50ZWNoLXNwZWNzIC50ZWNoLXNwZWNzLWNvbnRlbnQgLnRlY2gtc3BlY3MtY29weSAubW9yZS1zcGVjcyAuc3lzLXJlcXVpcmVtZW50cyBwIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgIGNvbG9yOiB3aGl0ZTsgfVxuICAgICAgYm9keS50cmFja2lyNSAudGVjaC1zcGVjcyAudGVjaC1zcGVjcy1jb250ZW50IC50ZWNoLXNwZWNzLWNvcHkgLm1vcmUtc3BlY3MgLmluLWJveCB1bCxcbiAgICAgIGJvZHkudHJhY2tpcjUgLnRlY2gtc3BlY3MgLnRlY2gtc3BlY3MtY29udGVudCAudGVjaC1zcGVjcy1jb3B5IC5tb3JlLXNwZWNzIC5zeXMtcmVxdWlyZW1lbnRzIHVsIHtcbiAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7IH1cbiAgICAgICAgYm9keS50cmFja2lyNSAudGVjaC1zcGVjcyAudGVjaC1zcGVjcy1jb250ZW50IC50ZWNoLXNwZWNzLWNvcHkgLm1vcmUtc3BlY3MgLmluLWJveCB1bCBsaSxcbiAgICAgICAgYm9keS50cmFja2lyNSAudGVjaC1zcGVjcyAudGVjaC1zcGVjcy1jb250ZW50IC50ZWNoLXNwZWNzLWNvcHkgLm1vcmUtc3BlY3MgLnN5cy1yZXF1aXJlbWVudHMgdWwgbGkge1xuICAgICAgICAgIGRpc3BsYXk6IHRhYmxlLXJvdzsgfVxuICAgICAgICAgIGJvZHkudHJhY2tpcjUgLnRlY2gtc3BlY3MgLnRlY2gtc3BlY3MtY29udGVudCAudGVjaC1zcGVjcy1jb3B5IC5tb3JlLXNwZWNzIC5pbi1ib3ggdWwgbGk6YmVmb3JlLFxuICAgICAgICAgIGJvZHkudHJhY2tpcjUgLnRlY2gtc3BlY3MgLnRlY2gtc3BlY3MtY29udGVudCAudGVjaC1zcGVjcy1jb3B5IC5tb3JlLXNwZWNzIC5zeXMtcmVxdWlyZW1lbnRzIHVsIGxpOmJlZm9yZSB7XG4gICAgICAgICAgICBjb250ZW50OiBcIuKAolwiO1xuICAgICAgICAgICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNGVtOyB9XG4gICAgICAgIGJvZHkudHJhY2tpcjUgLnRlY2gtc3BlY3MgLnRlY2gtc3BlY3MtY29udGVudCAudGVjaC1zcGVjcy1jb3B5IC5tb3JlLXNwZWNzIC5pbi1ib3ggdWwgbGksXG4gICAgICAgIGJvZHkudHJhY2tpcjUgLnRlY2gtc3BlY3MgLnRlY2gtc3BlY3MtY29udGVudCAudGVjaC1zcGVjcy1jb3B5IC5tb3JlLXNwZWNzIC5zeXMtcmVxdWlyZW1lbnRzIHVsIGxpIHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiA4cHg7IH1cbiAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgICAgIGJvZHkudHJhY2tpcjUgLnRlY2gtc3BlY3MgLnRlY2gtc3BlY3MtY29udGVudCAudGVjaC1zcGVjcy1jb3B5IC5tb3JlLXNwZWNzIC5pbi1ib3ggdWwgbGksXG4gICAgICAgICAgICBib2R5LnRyYWNraXI1IC50ZWNoLXNwZWNzIC50ZWNoLXNwZWNzLWNvbnRlbnQgLnRlY2gtc3BlY3MtY29weSAubW9yZS1zcGVjcyAuc3lzLXJlcXVpcmVtZW50cyB1bCBsaSB7XG4gICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEycHg7IH0gfVxuICAgICAgICAgIGJvZHkudHJhY2tpcjUgLnRlY2gtc3BlY3MgLnRlY2gtc3BlY3MtY29udGVudCAudGVjaC1zcGVjcy1jb3B5IC5tb3JlLXNwZWNzIC5pbi1ib3ggdWwgbGk6OmJlZm9yZSxcbiAgICAgICAgICBib2R5LnRyYWNraXI1IC50ZWNoLXNwZWNzIC50ZWNoLXNwZWNzLWNvbnRlbnQgLnRlY2gtc3BlY3MtY29weSAubW9yZS1zcGVjcyAuc3lzLXJlcXVpcmVtZW50cyB1bCBsaTo6YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6IG5vbmU7IH1cbiAgYm9keS50cmFja2lyNSBbaWQ9XCJmZWF0dXJlZC1wcm9kdWN0c1wiXSB7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7IH1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIGJvZHkuYWNjZXNzb3JpZXMgbWFpbiBoMSB7XG4gICAgZm9udC1zaXplOiAzNnB4OyB9IH1cblxuYm9keS5hY2Nlc3NvcmllcyBtYWluIHNlY3Rpb24ge1xuICBtYXgtd2lkdGg6IDI5MHB4O1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9XG4gIGJvZHkuYWNjZXNzb3JpZXMgbWFpbiBzZWN0aW9uOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIiBcIjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjbGVhcjogYm90aDsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICBib2R5LmFjY2Vzc29yaWVzIG1haW4gc2VjdGlvbiB7XG4gICAgICBtYXgtd2lkdGg6IDcwMnB4O1xuICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87IH1cbiAgICAgIGJvZHkuYWNjZXNzb3JpZXMgbWFpbiBzZWN0aW9uOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCIgXCI7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBjbGVhcjogYm90aDsgfSB9XG5cbmJvZHkuYWNjZXNzb3JpZXMgbWFpbiBzZWN0aW9uLmludHJvIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBtYXJnaW4tdG9wOiAzNXB4OyB9XG5cbmJvZHkuYWNjZXNzb3JpZXMgbWFpbiBzZWN0aW9uLmZlYXR1cmVkLWl0ZW1zIHtcbiAgcGFkZGluZy1ib3R0b206IDQ1cHg7XG4gIG1hcmdpbi1ib3R0b206IDQ1cHg7XG4gIGJvcmRlci1ib3R0b206IHNvbGlkIDFweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSk7IH1cbiAgYm9keS5hY2Nlc3NvcmllcyBtYWluIHNlY3Rpb24uZmVhdHVyZWQtaXRlbXMgLmZlYXR1cmVkLWl0ZW0ge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIG1hcmdpbi1yaWdodDogMDsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgYm9keS5hY2Nlc3NvcmllcyBtYWluIHNlY3Rpb24uZmVhdHVyZWQtaXRlbXMgLmZlYXR1cmVkLWl0ZW06bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICBtYXJnaW4tdG9wOiA2NXB4OyB9IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgIGJvZHkuYWNjZXNzb3JpZXMgbWFpbiBzZWN0aW9uLmZlYXR1cmVkLWl0ZW1zIC5mZWF0dXJlZC1pdGVtW2lkPVwidHJhY2tjbGlwcHJvXCJdIGZpZ3VyZSB7XG4gICAgICAgIG1hcmdpbjogMHB4O1xuICAgICAgICB3aWR0aDogNDkuMTUyNTQlO1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxLjY5NDkyJTsgfSB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICBib2R5LmFjY2Vzc29yaWVzIG1haW4gc2VjdGlvbi5mZWF0dXJlZC1pdGVtcyAuZmVhdHVyZWQtaXRlbVtpZD1cInRyYWNrY2xpcHByb1wiXSAuY29weSB7XG4gICAgICAgIHdpZHRoOiA0OS4xNTI1NCU7XG4gICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICBtYXJnaW4tbGVmdDogNTAuODQ3NDYlO1xuICAgICAgICBmbG9hdDogbm9uZTsgfSB9XG4gICAgYm9keS5hY2Nlc3NvcmllcyBtYWluIHNlY3Rpb24uZmVhdHVyZWQtaXRlbXMgLmZlYXR1cmVkLWl0ZW1baWQ9XCJ0cmFja2NsaXBcIl0ge1xuICAgICAgbWFyZ2luLXRvcDogMTAwcHg7IH1cbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgICBib2R5LmFjY2Vzc29yaWVzIG1haW4gc2VjdGlvbi5mZWF0dXJlZC1pdGVtcyAuZmVhdHVyZWQtaXRlbVtpZD1cInRyYWNrY2xpcFwiXSBmaWd1cmUge1xuICAgICAgICAgIHdpZHRoOiA0OS4xNTI1NCU7XG4gICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxLjY5NDkyJTtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogNTAuODQ3NDYlOyB9IH1cbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgICBib2R5LmFjY2Vzc29yaWVzIG1haW4gc2VjdGlvbi5mZWF0dXJlZC1pdGVtcyAuZmVhdHVyZWQtaXRlbVtpZD1cInRyYWNrY2xpcFwiXSAuY29weSB7XG4gICAgICAgICAgd2lkdGg6IDQ5LjE1MjU0JTtcbiAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEuNjk0OTIlO1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtMTAxLjY5NDkyJTsgfSB9XG4gICAgYm9keS5hY2Nlc3NvcmllcyBtYWluIHNlY3Rpb24uZmVhdHVyZWQtaXRlbXMgLmZlYXR1cmVkLWl0ZW0gZmlndXJlIHtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAgIGJvZHkuYWNjZXNzb3JpZXMgbWFpbiBzZWN0aW9uLmZlYXR1cmVkLWl0ZW1zIC5mZWF0dXJlZC1pdGVtIGZpZ3VyZSBpbWcge1xuICAgICAgICAgIHdpZHRoOiAyOTBweDtcbiAgICAgICAgICBtYXgtd2lkdGg6IGluaXRpYWw7XG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogLTIxMHB4OyB9IH1cbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgICBib2R5LmFjY2Vzc29yaWVzIG1haW4gc2VjdGlvbi5mZWF0dXJlZC1pdGVtcyAuZmVhdHVyZWQtaXRlbSBmaWd1cmUgaW1nIHtcbiAgICAgICAgICB3aWR0aDogNDAwcHg7IH0gfVxuICAgIGJvZHkuYWNjZXNzb3JpZXMgbWFpbiBzZWN0aW9uLmZlYXR1cmVkLWl0ZW1zIC5mZWF0dXJlZC1pdGVtIGRpdi5jb3B5IHtcbiAgICAgIG1hcmdpbi10b3A6IDM1cHg7IH1cbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgICBib2R5LmFjY2Vzc29yaWVzIG1haW4gc2VjdGlvbi5mZWF0dXJlZC1pdGVtcyAuZmVhdHVyZWQtaXRlbSBkaXYuY29weSB7XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogMTVweDsgfSB9XG4gICAgICBib2R5LmFjY2Vzc29yaWVzIG1haW4gc2VjdGlvbi5mZWF0dXJlZC1pdGVtcyAuZmVhdHVyZWQtaXRlbSBkaXYuY29weSBoMyB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZTsgfVxuICAgICAgYm9keS5hY2Nlc3NvcmllcyBtYWluIHNlY3Rpb24uZmVhdHVyZWQtaXRlbXMgLmZlYXR1cmVkLWl0ZW0gZGl2LmNvcHkgcC5wcmljZSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDM1cHg7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDIwcHg7IH1cbiAgICAgIGJvZHkuYWNjZXNzb3JpZXMgbWFpbiBzZWN0aW9uLmZlYXR1cmVkLWl0ZW1zIC5mZWF0dXJlZC1pdGVtIGRpdi5jb3B5IHVsIHtcbiAgICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7IH1cbiAgICAgICAgYm9keS5hY2Nlc3NvcmllcyBtYWluIHNlY3Rpb24uZmVhdHVyZWQtaXRlbXMgLmZlYXR1cmVkLWl0ZW0gZGl2LmNvcHkgdWwgbGkge1xuICAgICAgICAgIGRpc3BsYXk6IHRhYmxlLXJvdzsgfVxuICAgICAgICAgIGJvZHkuYWNjZXNzb3JpZXMgbWFpbiBzZWN0aW9uLmZlYXR1cmVkLWl0ZW1zIC5mZWF0dXJlZC1pdGVtIGRpdi5jb3B5IHVsIGxpOmJlZm9yZSB7XG4gICAgICAgICAgICBjb250ZW50OiBcIuKAolwiO1xuICAgICAgICAgICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNGVtOyB9XG4gICAgYm9keS5hY2Nlc3NvcmllcyBtYWluIHNlY3Rpb24uZmVhdHVyZWQtaXRlbXMgLmZlYXR1cmVkLWl0ZW0gZm9ybSB7XG4gICAgICBtYXJnaW4tdG9wOiA1NXB4OyB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgICAgYm9keS5hY2Nlc3NvcmllcyBtYWluIHNlY3Rpb24uZmVhdHVyZWQtaXRlbXMgLmZlYXR1cmVkLWl0ZW0gZm9ybSB7XG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyOyB9IH1cblxuYm9keS5hY2Nlc3NvcmllcyBtYWluIHNlY3Rpb24uaXRlbXMge1xuICBtYXJnaW4tYm90dG9tOiA1NXB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgYm9keS5hY2Nlc3NvcmllcyBtYWluIHNlY3Rpb24uaXRlbXMge1xuICAgICAgbWFyZ2luLWJvdHRvbTogNzVweDsgfSB9XG4gIGJvZHkuYWNjZXNzb3JpZXMgbWFpbiBzZWN0aW9uLml0ZW1zIC5pdGVtIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICAgIG1hcmdpbi10b3A6IDE1cHg7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgbWFyZ2luLXJpZ2h0OiAwOyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICBib2R5LmFjY2Vzc29yaWVzIG1haW4gc2VjdGlvbi5pdGVtcyAuaXRlbSB7XG4gICAgICAgIHdpZHRoOiAzMi4yMDMzOSU7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDEuNjk0OTIlOyB9XG4gICAgICAgIGJvZHkuYWNjZXNzb3JpZXMgbWFpbiBzZWN0aW9uLml0ZW1zIC5pdGVtOm50aC1jaGlsZCgzbikge1xuICAgICAgICAgIHdpZHRoOiAzMi4yMDMzOSU7XG4gICAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogMDsgfSB9XG4gICAgYm9keS5hY2Nlc3NvcmllcyBtYWluIHNlY3Rpb24uaXRlbXMgLml0ZW0gZmlndXJlIHtcbiAgICAgIGhlaWdodDogMTUwcHg7XG4gICAgICBsaW5lLWhlaWdodDogMTUwcHg7IH1cbiAgICAgIGJvZHkuYWNjZXNzb3JpZXMgbWFpbiBzZWN0aW9uLml0ZW1zIC5pdGVtIGZpZ3VyZSBpbWcge1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICB3aWR0aDogMTUwcHg7IH1cbiAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAgICAgYm9keS5hY2Nlc3NvcmllcyBtYWluIHNlY3Rpb24uaXRlbXMgLml0ZW0gZmlndXJlIGltZyB7XG4gICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tOyB9IH1cbiAgICBib2R5LmFjY2Vzc29yaWVzIG1haW4gc2VjdGlvbi5pdGVtcyAuaXRlbSBoMyB7XG4gICAgICBtYXJnaW4tYm90dG9tOiA1cHg7IH1cbiAgICBib2R5LmFjY2Vzc29yaWVzIG1haW4gc2VjdGlvbi5pdGVtcyAuaXRlbSBwLnByaWNlIHtcbiAgICAgIG1hcmdpbi10b3A6IDVweDsgfVxuICAgIGJvZHkuYWNjZXNzb3JpZXMgbWFpbiBzZWN0aW9uLml0ZW1zIC5pdGVtW2lkPVwidGlyNS1iYXNlXCJdIGZpZ3VyZSB7XG4gICAgICBsaW5lLWhlaWdodDogOThweDtcbiAgICAgIGhlaWdodDogOThweDsgfVxuICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAgIGJvZHkuYWNjZXNzb3JpZXMgbWFpbiBzZWN0aW9uLml0ZW1zIC5pdGVtW2lkPVwidGlyNS1iYXNlXCJdIGZpZ3VyZSB7XG4gICAgICAgICAgaGVpZ2h0OiAxNTBweDtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMTUwcHg7IH0gfVxuICAgICAgYm9keS5hY2Nlc3NvcmllcyBtYWluIHNlY3Rpb24uaXRlbXMgLml0ZW1baWQ9XCJ0aXI1LWJhc2VcIl0gZmlndXJlIGltZyB7XG4gICAgICAgIG1heC13aWR0aDogaW5pdGlhbDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgIHdpZHRoOiAyMzBweDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC0yMDhweDsgfVxuICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgICBib2R5LmFjY2Vzc29yaWVzIG1haW4gc2VjdGlvbi5pdGVtcyAuaXRlbVtpZD1cInRpcjUtYmFzZVwiXSBmaWd1cmUgaW1nIHtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtMTQ0cHg7XG4gICAgICAgICAgICB3aWR0aDogMjMwcHg7IH0gfVxuXG5ib2R5LmdhbWVzLWxpc3QgLmludHJvIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBtYXJnaW4tdG9wOiAzNXB4O1xuICBtYXJnaW4tYm90dG9tOiAzNXB4OyB9XG5cbmJvZHkuZ2FtZXMtbGlzdCAuZmlsdGVyLWFuZC1zb3J0IHtcbiAgbWF4LXdpZHRoOiAyOTBweDtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIGJvZHkuZ2FtZXMtbGlzdCAuZmlsdGVyLWFuZC1zb3J0OmFmdGVyIHtcbiAgICBjb250ZW50OiBcIiBcIjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjbGVhcjogYm90aDsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICBib2R5LmdhbWVzLWxpc3QgLmZpbHRlci1hbmQtc29ydCB7XG4gICAgICBtYXgtd2lkdGg6IDcwMnB4O1xuICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87IH1cbiAgICAgIGJvZHkuZ2FtZXMtbGlzdCAuZmlsdGVyLWFuZC1zb3J0OmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCIgXCI7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBjbGVhcjogYm90aDsgfSB9XG4gIGJvZHkuZ2FtZXMtbGlzdCAuZmlsdGVyLWFuZC1zb3J0IGxhYmVsLmxhYmVsLWZvci1ncm91cCB7XG4gICAgbWFyZ2luLXRvcDogNDVweDtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gIGJvZHkuZ2FtZXMtbGlzdCAuZmlsdGVyLWFuZC1zb3J0IGRpdi5yYWRpby1zZWN0aW9uIGlucHV0W3R5cGU9XCJyYWRpb1wiXSB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICBib2R5LmdhbWVzLWxpc3QgLmZpbHRlci1hbmQtc29ydCBkaXYucmFkaW8tc2VjdGlvbiBpbnB1dFt0eXBlPVwicmFkaW9cIl06Y2hlY2tlZCArIGxhYmVsIHtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOCk7XG4gICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC45KTtcbiAgICBjb2xvcjogIzk2NUIwMDsgfVxuICBib2R5LmdhbWVzLWxpc3QgLmZpbHRlci1hbmQtc29ydCBkaXYucmFkaW8tc2VjdGlvbiBsYWJlbCB7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1vdXQ7XG4gICAgcGFkZGluZzogMTBweCAyMnB4O1xuICAgIGJvcmRlcjogc29saWQgMXB4ICNmYWU2Y2Q7XG4gICAgYm9yZGVyLXJhZGl1czogNDBweDtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHdpZHRoOiA5MHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDE1cHg7IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgIGJvZHkuZ2FtZXMtbGlzdCAuZmlsdGVyLWFuZC1zb3J0IGRpdi5yYWRpby1zZWN0aW9uIGxhYmVsIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogbm9uZTsgfSB9XG4gICAgYm9keS5nYW1lcy1saXN0IC5maWx0ZXItYW5kLXNvcnQgZGl2LnJhZGlvLXNlY3Rpb24gbGFiZWw6Zmlyc3Qtb2YtdHlwZSB7XG4gICAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMHB4O1xuICAgICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDBweDtcbiAgICAgIGJvcmRlci1yaWdodDogbm9uZTtcbiAgICAgIG1hcmdpbi1yaWdodDogLTJweDsgfVxuICAgIGJvZHkuZ2FtZXMtbGlzdCAuZmlsdGVyLWFuZC1zb3J0IGRpdi5yYWRpby1zZWN0aW9uIGxhYmVsOm50aC1vZi10eXBlKDIpIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICBtYXJnaW4tbGVmdDogLTNweDtcbiAgICAgIG1hcmdpbi1yaWdodDogLTNweDsgfVxuICAgIGJvZHkuZ2FtZXMtbGlzdCAuZmlsdGVyLWFuZC1zb3J0IGRpdi5yYWRpby1zZWN0aW9uIGxhYmVsOmxhc3Qtb2YtdHlwZSB7XG4gICAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwcHg7XG4gICAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwcHg7XG4gICAgICBib3JkZXItbGVmdDogbm9uZTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtMnB4OyB9XG4gICAgYm9keS5nYW1lcy1saXN0IC5maWx0ZXItYW5kLXNvcnQgZGl2LnJhZGlvLXNlY3Rpb24gbGFiZWw6aG92ZXIge1xuICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjEpOyB9XG5cbmJvZHkuZ2FtZXMtbGlzdCAuZ2FtZXMtdGFibGUge1xuICBtYXJnaW4tYm90dG9tOiA3MHB4OyB9XG4gIGJvZHkuZ2FtZXMtbGlzdCAuZ2FtZXMtdGFibGUgLnRhYmxlLWhlYWRlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgcGFkZGluZzogMjVweCAwcHg7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgIGJvZHkuZ2FtZXMtbGlzdCAuZ2FtZXMtdGFibGUgLnRhYmxlLWhlYWRlciB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgYm9keS5nYW1lcy1saXN0IC5nYW1lcy10YWJsZSAudGFibGUtaGVhZGVyLmZpeGVkLWhlYWRlciB7XG4gICAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHRvcDogNzRweDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNDcsIDE0NiwgMCwgMC45KTtcbiAgICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciA1MDBtcyBlYXNlLWluLW91dDsgfSB9XG4gICAgYm9keS5nYW1lcy1saXN0IC5nYW1lcy10YWJsZSAudGFibGUtaGVhZGVyIC5zb3J0LWJ5LXNlY3Rpb24ge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG4gICAgICBib2R5LmdhbWVzLWxpc3QgLmdhbWVzLXRhYmxlIC50YWJsZS1oZWFkZXIgLnNvcnQtYnktc2VjdGlvbiBpbnB1dFt0eXBlPVwicmFkaW9cIl0ge1xuICAgICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgICBib2R5LmdhbWVzLWxpc3QgLmdhbWVzLXRhYmxlIC50YWJsZS1oZWFkZXIgLnNvcnQtYnktc2VjdGlvbiBsYWJlbCB7XG4gICAgICAgIGNvbG9yOiAjZmFlNmNkOyB9XG4gICAgICBib2R5LmdhbWVzLWxpc3QgLmdhbWVzLXRhYmxlIC50YWJsZS1oZWFkZXIgLnNvcnQtYnktc2VjdGlvbiBsYWJlbDpmaXJzdC1vZi10eXBlIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4OyB9XG4gICAgICBib2R5LmdhbWVzLWxpc3QgLmdhbWVzLXRhYmxlIC50YWJsZS1oZWFkZXIgLnNvcnQtYnktc2VjdGlvbiBsYWJlbDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgcGFkZGluZzogMHB4IDEwcHg7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICAgICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjEpOyB9XG4gICAgICBib2R5LmdhbWVzLWxpc3QgLmdhbWVzLXRhYmxlIC50YWJsZS1oZWFkZXIgLnNvcnQtYnktc2VjdGlvbiBsYWJlbDpudGgtb2YtdHlwZSgyKSB7XG4gICAgICAgIHdpZHRoOiAxMjBweDsgfVxuICAgICAgYm9keS5nYW1lcy1saXN0IC5nYW1lcy10YWJsZSAudGFibGUtaGVhZGVyIC5zb3J0LWJ5LXNlY3Rpb24gbGFiZWw6bGFzdC1vZi10eXBlIHtcbiAgICAgICAgd2lkdGg6IDEzNXB4OyB9XG4gICAgICBib2R5LmdhbWVzLWxpc3QgLmdhbWVzLXRhYmxlIC50YWJsZS1oZWFkZXIgLnNvcnQtYnktc2VjdGlvbiBzcGFuLmljb24tZG93bi1vcGVuLWJpZyB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAtMzBweDsgfVxuICAgICAgICBib2R5LmdhbWVzLWxpc3QgLmdhbWVzLXRhYmxlIC50YWJsZS1oZWFkZXIgLnNvcnQtYnktc2VjdGlvbiBzcGFuLmljb24tZG93bi1vcGVuLWJpZy5kZXNjZW5kaW5nIHtcbiAgICAgICAgICBhbmltYXRpb24tbmFtZTogYW5pbWF0aW9uVG9EZXNjZW5kaW5nO1xuICAgICAgICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogMzAwbXM7XG4gICAgICAgICAgYW5pbWF0aW9uLWZpbGwtbW9kZTogZm9yd2FyZHM7IH1cbiAgICAgICAgYm9keS5nYW1lcy1saXN0IC5nYW1lcy10YWJsZSAudGFibGUtaGVhZGVyIC5zb3J0LWJ5LXNlY3Rpb24gc3Bhbi5pY29uLWRvd24tb3Blbi1iaWcuYXNjZW5kaW5nIHtcbiAgICAgICAgICBhbmltYXRpb24tbmFtZTogYW5pbWF0aW9uVG9Bc2NlbmRpbmc7XG4gICAgICAgICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAzMDBtcztcbiAgICAgICAgICBhbmltYXRpb24tZmlsbC1tb2RlOiBmb3J3YXJkczsgfVxuXG5Aa2V5ZnJhbWVzIGFuaW1hdGlvblRvQXNjZW5kaW5nIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlWCgwZGVnKTsgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZVgoMTgwZGVnKTsgfSB9XG5cbkBrZXlmcmFtZXMgYW5pbWF0aW9uVG9EZXNjZW5kaW5nIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlWCgxODBkZWcpOyB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlWCgwZGVnKTsgfSB9XG4gICAgYm9keS5nYW1lcy1saXN0IC5nYW1lcy10YWJsZSAudGFibGUtaGVhZGVyIHAge1xuICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgbWFyZ2luLXRvcDogMHB4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogMHB4OyB9XG4gICAgICBib2R5LmdhbWVzLWxpc3QgLmdhbWVzLXRhYmxlIC50YWJsZS1oZWFkZXIgcCBzcGFuIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIHdpZHRoOiAzOHB4OyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICBib2R5LmdhbWVzLWxpc3QgLmdhbWVzLXRhYmxlIC50YWJsZS1oZWFkZXIgLnRhYmxlLWhlYWRlci1jb250ZW50IHtcbiAgICAgICAgbWF4LXdpZHRoOiAyOTBweDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICAgIG1hcmdpbi1yaWdodDogYXV0bzsgfVxuICAgICAgICBib2R5LmdhbWVzLWxpc3QgLmdhbWVzLXRhYmxlIC50YWJsZS1oZWFkZXIgLnRhYmxlLWhlYWRlci1jb250ZW50OmFmdGVyIHtcbiAgICAgICAgICBjb250ZW50OiBcIiBcIjtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBjbGVhcjogYm90aDsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgYm9keS5nYW1lcy1saXN0IC5nYW1lcy10YWJsZSAudGFibGUtaGVhZGVyIC50YWJsZS1oZWFkZXItY29udGVudCB7XG4gICAgICBtYXgtd2lkdGg6IDcwMnB4O1xuICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87IH1cbiAgICAgIGJvZHkuZ2FtZXMtbGlzdCAuZ2FtZXMtdGFibGUgLnRhYmxlLWhlYWRlciAudGFibGUtaGVhZGVyLWNvbnRlbnQ6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcIiBcIjtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGNsZWFyOiBib3RoOyB9IH1cbiAgYm9keS5nYW1lcy1saXN0IC5nYW1lcy10YWJsZSB0YWJsZSB7XG4gICAgbWF4LXdpZHRoOiAyOTBweDtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgICBib2R5LmdhbWVzLWxpc3QgLmdhbWVzLXRhYmxlIHRhYmxlOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgYm9keS5nYW1lcy1saXN0IC5nYW1lcy10YWJsZSB0YWJsZSB7XG4gICAgICAgIG1heC13aWR0aDogNzAycHg7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87IH1cbiAgICAgICAgYm9keS5nYW1lcy1saXN0IC5nYW1lcy10YWJsZSB0YWJsZTphZnRlciB7XG4gICAgICAgICAgY29udGVudDogXCIgXCI7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgY2xlYXI6IGJvdGg7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICBib2R5LmdhbWVzLWxpc3QgLmdhbWVzLXRhYmxlIC50YWJsZS1jb250YWluZXIuZml4ZWQtaGVhZGVyIHtcbiAgICAgIG1hcmdpbi10b3A6IDczcHg7IH0gfVxuICBib2R5LmdhbWVzLWxpc3QgLmdhbWVzLXRhYmxlIHRyIHtcbiAgICBib3JkZXItYm90dG9tOiBzb2xpZCAxcHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpOyB9XG4gICAgYm9keS5nYW1lcy1saXN0IC5nYW1lcy10YWJsZSB0ciB0ZCB7XG4gICAgICBwYWRkaW5nLXRvcDogMTBweDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAxMHB4OyB9XG4gICAgYm9keS5nYW1lcy1saXN0IC5nYW1lcy10YWJsZSB0ciB0ZDpmaXJzdC1jaGlsZCB7XG4gICAgICB3aWR0aDogNDQycHg7IH1cbiAgICBib2R5LmdhbWVzLWxpc3QgLmdhbWVzLXRhYmxlIHRyIHRkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMTVweDsgfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAgIGJvZHkuZ2FtZXMtbGlzdCAuZ2FtZXMtdGFibGUgdHIgdGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuICBib2R5LmdhbWVzLWxpc3QgLmdhbWVzLXRhYmxlIC5maWx0ZXIgdHIge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgYm9keS5nYW1lcy1saXN0IC5nYW1lcy10YWJsZSAuZmlsdGVyLmZwcyB0ci5mcHMge1xuICAgIGRpc3BsYXk6IHRhYmxlLXJvdzsgfVxuICBib2R5LmdhbWVzLWxpc3QgLmdhbWVzLXRhYmxlIC5maWx0ZXIuZHJpdmluZyB0ci5kcml2aW5nIHtcbiAgICBkaXNwbGF5OiB0YWJsZS1yb3c7IH1cbiAgYm9keS5nYW1lcy1saXN0IC5nYW1lcy10YWJsZSAuZmlsdGVyLmZsaWdodCB0ci5mbGlnaHQge1xuICAgIGRpc3BsYXk6IHRhYmxlLXJvdzsgfVxuXG5ib2R5LnJlbW90ZS1zdXBwb3J0IG1haW4ge1xuICBtYXgtd2lkdGg6IDI5MHB4O1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXJnaW4tYm90dG9tOiA0NXB4OyB9XG4gIGJvZHkucmVtb3RlLXN1cHBvcnQgbWFpbjphZnRlciB7XG4gICAgY29udGVudDogXCIgXCI7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgYm9keS5yZW1vdGUtc3VwcG9ydCBtYWluIHtcbiAgICAgIG1heC13aWR0aDogNzAycHg7XG4gICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgIG1hcmdpbi1yaWdodDogYXV0bzsgfVxuICAgICAgYm9keS5yZW1vdGUtc3VwcG9ydCBtYWluOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCIgXCI7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBjbGVhcjogYm90aDsgfSB9XG4gIGJvZHkucmVtb3RlLXN1cHBvcnQgbWFpbiBzZWN0aW9uIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgIGJvZHkucmVtb3RlLXN1cHBvcnQgbWFpbiBzZWN0aW9uLmNvbnRlbnQge1xuICAgICAgICB3aWR0aDogNjYuMTAxNjklO1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxLjY5NDkyJTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDE2Ljk0OTE1JTsgfSB9XG4gICAgYm9keS5yZW1vdGUtc3VwcG9ydCBtYWluIHNlY3Rpb24uY29udGVudCBhLmN0YSB7XG4gICAgICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLW91dDtcbiAgICAgIHBhZGRpbmc6IDEwcHggNTJweDtcbiAgICAgIGJvcmRlcjogc29saWQgMXB4ICNmYWU2Y2Q7XG4gICAgICBib3JkZXItcmFkaXVzOiA0MHB4O1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgdG9wOiA0NXB4OyB9XG4gICAgICBib2R5LnJlbW90ZS1zdXBwb3J0IG1haW4gc2VjdGlvbi5jb250ZW50IGEuY3RhOmhvdmVyIHtcbiAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuMSk7IH1cblxuYm9keS5wcm9tbyBtYWluIHtcbiAgbWF4LXdpZHRoOiAyOTBweDtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgbWFyZ2luLXRvcDogMjVweDsgfVxuICBib2R5LnByb21vIG1haW46YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIGJvZHkucHJvbW8gbWFpbiB7XG4gICAgICBtYXgtd2lkdGg6IDcwMnB4O1xuICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87IH1cbiAgICAgIGJvZHkucHJvbW8gbWFpbjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgY2xlYXI6IGJvdGg7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICBib2R5LnByb21vIG1haW4gaDMsXG4gICAgYm9keS5wcm9tbyBtYWluIHAge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyOyB9IH1cbiAgYm9keS5wcm9tbyBtYWluIHVsIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBtYXJnaW4tYm90dG9tOiA0NXB4OyB9XG4gICAgYm9keS5wcm9tbyBtYWluIHVsIGxpIHtcbiAgICAgIGRpc3BsYXk6IHRhYmxlLXJvdzsgfVxuICAgICAgYm9keS5wcm9tbyBtYWluIHVsIGxpOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6IFwi4oCiXCI7XG4gICAgICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNGVtOyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICBib2R5LnByb21vIG1haW4gdWwge1xuICAgICAgICBtYXJnaW4tdG9wOiAzNXB4O1xuICAgICAgICBtYXJnaW4tbGVmdDogMTAwcHg7IH0gfVxuICBib2R5LnByb21vIG1haW4gLmFjdGlvbi1saW5rIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgICBib2R5LnByb21vIG1haW4gLmFjdGlvbi1saW5rIGEge1xuICAgICAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1vdXQ7XG4gICAgICBwYWRkaW5nOiAxMHB4IDUycHg7XG4gICAgICBib3JkZXI6IHNvbGlkIDFweCAjZmFlNmNkO1xuICAgICAgYm9yZGVyLXJhZGl1czogNDBweDtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuICAgICAgYm9keS5wcm9tbyBtYWluIC5hY3Rpb24tbGluayBhOmhvdmVyIHtcbiAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuMSk7IH1cblxuYm9keS5tZWRpYSBbaWQ9XCJjb250ZW50XCJdLmJsdXIge1xuICBmaWx0ZXI6IGJsdXIoNXB4KTsgfVxuXG5ib2R5Lm1lZGlhIC5tb2RhbCB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgei1pbmRleDogMTtcbiAgcGFkZGluZy10b3A6IDYwcHg7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgb3ZlcmZsb3c6IGF1dG87XG4gIGJhY2tncm91bmQtY29sb3I6IGJsYWNrO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNCk7XG4gIC8qIE1vZGFsIENvbnRlbnQgKi9cbiAgLyogVGhlIE1vZGFsIENsb3NlIEJ1dHRvbiAqLyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIGJvZHkubWVkaWEgLm1vZGFsIHtcbiAgICAgIHBhZGRpbmctdG9wOiA3NXB4OyB9IH1cbiAgYm9keS5tZWRpYSAubW9kYWwgLm1vZGFsLWNvbnRlbnQge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC43NSk7XG4gICAgbWFyZ2luOiBhdXRvO1xuICAgIHBhZGRpbmc6IDIwcHg7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlOyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICBib2R5Lm1lZGlhIC5tb2RhbCAubW9kYWwtY29udGVudCB7XG4gICAgICAgIHdpZHRoOiA4MCU7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgbWF4LXdpZHRoOiA2MDBweDtcbiAgICAgICAgaGVpZ2h0OiBhdXRvOyB9IH1cbiAgICBib2R5Lm1lZGlhIC5tb2RhbCAubW9kYWwtY29udGVudCBoMyB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAyMHB4OyB9XG4gICAgYm9keS5tZWRpYSAubW9kYWwgLm1vZGFsLWNvbnRlbnQgLmRvd25sb2FkIHtcbiAgICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgICBtYXJnaW4tYm90dG9tOiAyMHB4OyB9XG4gIGJvZHkubWVkaWEgLm1vZGFsIC5jbG9zZSB7XG4gICAgY29sb3I6ICNhYWFhYWE7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIGZvbnQtc2l6ZTogMjhweDtcbiAgICBmb250LXdlaWdodDogYm9sZDsgfVxuICAgIGJvZHkubWVkaWEgLm1vZGFsIC5jbG9zZTpob3ZlciwgYm9keS5tZWRpYSAubW9kYWwgLmNsb3NlOmZvY3VzIHtcbiAgICAgIGNvbG9yOiAjY2NjY2NjO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgY3Vyc29yOiBwb2ludGVyOyB9XG5cbmJvZHkubWVkaWEgbWFpbiB7XG4gIG1heC13aWR0aDogMjkwcHg7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1hcmdpbi1ib3R0b206IDQ1cHg7IH1cbiAgYm9keS5tZWRpYSBtYWluOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIiBcIjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjbGVhcjogYm90aDsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICBib2R5Lm1lZGlhIG1haW4ge1xuICAgICAgbWF4LXdpZHRoOiA3MDJweDtcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9XG4gICAgICBib2R5Lm1lZGlhIG1haW46YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcIiBcIjtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGNsZWFyOiBib3RoOyB9IH1cbiAgYm9keS5tZWRpYSBtYWluIHNlY3Rpb24ge1xuICAgIG1hcmdpbi1ib3R0b206IDkwcHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgYm9keS5tZWRpYSBtYWluIHNlY3Rpb24gdWwge1xuICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7IH1cbiAgICAgIGJvZHkubWVkaWEgbWFpbiBzZWN0aW9uIHVsIGxpIHtcbiAgICAgICAgZGlzcGxheTogdGFibGUtcm93OyB9XG4gICAgICAgIGJvZHkubWVkaWEgbWFpbiBzZWN0aW9uIHVsIGxpOmJlZm9yZSB7XG4gICAgICAgICAgY29udGVudDogXCLigKJcIjtcbiAgICAgICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNGVtOyB9XG4gICAgYm9keS5tZWRpYSBtYWluIHNlY3Rpb24gYSB7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7IH1cbiAgICAgIGJvZHkubWVkaWEgbWFpbiBzZWN0aW9uIGEuY3RhIHtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1vdXQ7XG4gICAgICAgIHBhZGRpbmc6IDEwcHggNTJweDtcbiAgICAgICAgYm9yZGVyOiBzb2xpZCAxcHggI2ZhZTZjZDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNDBweDtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cbiAgICAgICAgYm9keS5tZWRpYSBtYWluIHNlY3Rpb24gYS5jdGE6aG92ZXIge1xuICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuMSk7IH1cbiAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAgICAgYm9keS5tZWRpYSBtYWluIHNlY3Rpb24gYS5jdGEge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMzBweDsgfSB9XG5cbmJvZHkubWVkaWEgLmltYWdlLWRvd25sb2FkcyB7XG4gIG92ZXJmbG93OiBhdXRvOyB9XG4gIGJvZHkubWVkaWEgLmltYWdlLWRvd25sb2FkcyBhIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMzBweDsgfVxuICBib2R5Lm1lZGlhIC5pbWFnZS1kb3dubG9hZHMgaW1nIHtcbiAgICBwYWRkaW5nOiAyMHB4IDAgMTBweDsgfVxuXG5ib2R5Lm1lZGlhIHNlY3Rpb25baWQ9XCJ0cmFja2lyLTVcIl0gLmltYWdlLWRvd25sb2FkcyAubW9kYWxCdG4ge1xuICB3aWR0aDogNDQuNDQ0NDQlO1xuICBmbG9hdDogbGVmdDsgfVxuICBib2R5Lm1lZGlhIHNlY3Rpb25baWQ9XCJ0cmFja2lyLTVcIl0gLmltYWdlLWRvd25sb2FkcyAubW9kYWxCdG46bnRoLWNoaWxkKDJuICsgMSkge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIG1hcmdpbi1yaWdodDogLTEwMCU7XG4gICAgY2xlYXI6IGJvdGg7XG4gICAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgYm9keS5tZWRpYSBzZWN0aW9uW2lkPVwidHJhY2tpci01XCJdIC5pbWFnZS1kb3dubG9hZHMgLm1vZGFsQnRuOm50aC1jaGlsZCgybiArIDIpIHtcbiAgICBtYXJnaW4tbGVmdDogNTUuNTU1NTYlO1xuICAgIG1hcmdpbi1yaWdodDogLTEwMCU7XG4gICAgY2xlYXI6IG5vbmU7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgYm9keS5tZWRpYSBzZWN0aW9uW2lkPVwidHJhY2tpci01XCJdIC5pbWFnZS1kb3dubG9hZHMgLm1vZGFsQnRuIHtcbiAgICAgIHdpZHRoOiAyOC41NzE0MyU7XG4gICAgICBmbG9hdDogbGVmdDsgfVxuICAgICAgYm9keS5tZWRpYSBzZWN0aW9uW2lkPVwidHJhY2tpci01XCJdIC5pbWFnZS1kb3dubG9hZHMgLm1vZGFsQnRuOm50aC1jaGlsZCgzbiArIDEpIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgIG1hcmdpbi1yaWdodDogLTEwMCU7XG4gICAgICAgIGNsZWFyOiBib3RoO1xuICAgICAgICBtYXJnaW4tbGVmdDogMDsgfVxuICAgICAgYm9keS5tZWRpYSBzZWN0aW9uW2lkPVwidHJhY2tpci01XCJdIC5pbWFnZS1kb3dubG9hZHMgLm1vZGFsQnRuOm50aC1jaGlsZCgzbiArIDIpIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDM1LjcxNDI5JTtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAtMTAwJTtcbiAgICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAgIGJvZHkubWVkaWEgc2VjdGlvbltpZD1cInRyYWNraXItNVwiXSAuaW1hZ2UtZG93bmxvYWRzIC5tb2RhbEJ0bjpudGgtY2hpbGQoM24gKyAzKSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiA3MS40Mjg1NyU7XG4gICAgICAgIG1hcmdpbi1yaWdodDogLTEwMCU7XG4gICAgICAgIGNsZWFyOiBub25lOyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIGJvZHkubWVkaWEgc2VjdGlvbltpZD1cInRyYWNrY2xpcC1wcm9cIl0gLmltYWdlLWRvd25sb2FkcyB7XG4gICAgbWF4LXdpZHRoOiA0MDBweDtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87IH1cbiAgICBib2R5Lm1lZGlhIHNlY3Rpb25baWQ9XCJ0cmFja2NsaXAtcHJvXCJdIC5pbWFnZS1kb3dubG9hZHM6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCIgXCI7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGNsZWFyOiBib3RoOyB9IH1cblxuYm9keS5tZWRpYSBzZWN0aW9uW2lkPVwidHJhY2tjbGlwLXByb1wiXSAuaW1hZ2UtZG93bmxvYWRzIC5tb2RhbEJ0biB7XG4gIHdpZHRoOiA0NC40NDQ0NCU7XG4gIGZsb2F0OiBsZWZ0OyB9XG4gIGJvZHkubWVkaWEgc2VjdGlvbltpZD1cInRyYWNrY2xpcC1wcm9cIl0gLmltYWdlLWRvd25sb2FkcyAubW9kYWxCdG46bnRoLWNoaWxkKDJuICsgMSkge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIG1hcmdpbi1yaWdodDogLTEwMCU7XG4gICAgY2xlYXI6IGJvdGg7XG4gICAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgYm9keS5tZWRpYSBzZWN0aW9uW2lkPVwidHJhY2tjbGlwLXByb1wiXSAuaW1hZ2UtZG93bmxvYWRzIC5tb2RhbEJ0bjpudGgtY2hpbGQoMm4gKyAyKSB7XG4gICAgbWFyZ2luLWxlZnQ6IDU1LjU1NTU2JTtcbiAgICBtYXJnaW4tcmlnaHQ6IC0xMDAlO1xuICAgIGNsZWFyOiBub25lOyB9XG5cbmJvZHkubWVkaWEgc2VjdGlvbltpZD1cInRyYWNrY2xpcFwiXSAuaW1hZ2UtZG93bmxvYWRzIC5tb2RhbEJ0biB7XG4gIHdpZHRoOiAxMDAlO1xuICBmbG9hdDogbGVmdDsgfVxuICBib2R5Lm1lZGlhIHNlY3Rpb25baWQ9XCJ0cmFja2NsaXBcIl0gLmltYWdlLWRvd25sb2FkcyAubW9kYWxCdG46bnRoLWNoaWxkKDFuICsgMSkge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIG1hcmdpbi1yaWdodDogLTEwMCU7XG4gICAgY2xlYXI6IG5vbmU7IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIGJvZHkubWVkaWEgc2VjdGlvbltpZD1cImhhdHNcIl0gLmltYWdlLWRvd25sb2FkcyB7XG4gICAgbWF4LXdpZHRoOiA0MDBweDtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87IH1cbiAgICBib2R5Lm1lZGlhIHNlY3Rpb25baWQ9XCJoYXRzXCJdIC5pbWFnZS1kb3dubG9hZHM6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCIgXCI7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGNsZWFyOiBib3RoOyB9IH1cblxuYm9keS5tZWRpYSBzZWN0aW9uW2lkPVwiaGF0c1wiXSAuaW1hZ2UtZG93bmxvYWRzIC5tb2RhbEJ0biB7XG4gIHdpZHRoOiA0NC40NDQ0NCU7XG4gIGZsb2F0OiBsZWZ0OyB9XG4gIGJvZHkubWVkaWEgc2VjdGlvbltpZD1cImhhdHNcIl0gLmltYWdlLWRvd25sb2FkcyAubW9kYWxCdG46bnRoLWNoaWxkKDJuICsgMSkge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIG1hcmdpbi1yaWdodDogLTEwMCU7XG4gICAgY2xlYXI6IGJvdGg7XG4gICAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgYm9keS5tZWRpYSBzZWN0aW9uW2lkPVwiaGF0c1wiXSAuaW1hZ2UtZG93bmxvYWRzIC5tb2RhbEJ0bjpudGgtY2hpbGQoMm4gKyAyKSB7XG4gICAgbWFyZ2luLWxlZnQ6IDU1LjU1NTU2JTtcbiAgICBtYXJnaW4tcmlnaHQ6IC0xMDAlO1xuICAgIGNsZWFyOiBub25lOyB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICBib2R5Lm1lZGlhIHNlY3Rpb25baWQ9XCJ2aXNvcnNcIl0gLmltYWdlLWRvd25sb2FkcyB7XG4gICAgbWF4LXdpZHRoOiA0MDBweDtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87IH1cbiAgICBib2R5Lm1lZGlhIHNlY3Rpb25baWQ9XCJ2aXNvcnNcIl0gLmltYWdlLWRvd25sb2FkczphZnRlciB7XG4gICAgICBjb250ZW50OiBcIiBcIjtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgY2xlYXI6IGJvdGg7IH0gfVxuXG5ib2R5Lm1lZGlhIHNlY3Rpb25baWQ9XCJ2aXNvcnNcIl0gLmltYWdlLWRvd25sb2FkcyAubW9kYWxCdG4ge1xuICB3aWR0aDogNDQuNDQ0NDQlO1xuICBmbG9hdDogbGVmdDsgfVxuICBib2R5Lm1lZGlhIHNlY3Rpb25baWQ9XCJ2aXNvcnNcIl0gLmltYWdlLWRvd25sb2FkcyAubW9kYWxCdG46bnRoLWNoaWxkKDJuICsgMSkge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIG1hcmdpbi1yaWdodDogLTEwMCU7XG4gICAgY2xlYXI6IGJvdGg7XG4gICAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgYm9keS5tZWRpYSBzZWN0aW9uW2lkPVwidmlzb3JzXCJdIC5pbWFnZS1kb3dubG9hZHMgLm1vZGFsQnRuOm50aC1jaGlsZCgybiArIDIpIHtcbiAgICBtYXJnaW4tbGVmdDogNTUuNTU1NTYlO1xuICAgIG1hcmdpbi1yaWdodDogLTEwMCU7XG4gICAgY2xlYXI6IG5vbmU7IH1cbiIsIkBpbXBvcnQgXCJ2ZW5kb3IvYnJlYWtwb2ludFwiO1xuXG5cbiR0ZXh0LXNpemUtaGVhZGluZy1sYXJnZS1tb2JpbGU6IDQ1cHg7XG4kdGV4dC1zaXplLWhlYWRpbmctbWVkaXVtLW1vYmlsZTogMzZweDtcbiR0ZXh0LXNpemUtaGVhZGluZy1zbWFsbC1tb2JpbGU6IDE4cHg7XG4kdGV4dC1zaXplLWNvcHktbGFyZ2UtbW9iaWxlOiAxOHB4O1xuJHRleHQtc2l6ZS1jb3B5LW5vcm1hbC1tb2JpbGU6IDE2cHg7XG4kdGV4dC1zaXplLWNvcHktc21hbGwtbW9iaWxlOiAxM3B4O1xuXG5ib2R5IHtcbiAgICBjb2xvcjogJGNvbG9yLXRleHQtZGVmYXVsdDtcbiAgICBmb250LWZhbWlseTogJGZvbnQtc3RhY2stZGVmYXVsdDtcbiAgICBsaW5lLWhlaWdodDogMS4zO1xufVxuXG5hIHtcbiAgICBjb2xvcjogJGNvbG9yLXRleHQtZW1waGFzaXplZDtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbn1cblxuaDEsIGgyLCBoMywgaDQsIGg1LCBoNiB7XG4gICAgY29sb3I6ICRjb2xvci10ZXh0LWVtcGhhc2l6ZWQ7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbn1cblxuaDEsIGgyIHtcbiAgICBmb250LWZhbWlseTogJGZvbnQtc3RhY2staGVhZGluZztcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuaDMge1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxubGFiZWwge1xuICAgIGNvbG9yOiAkY29sb3ItdGV4dC1lbXBoYXNpemVkO1xufVxuY29kZSB7XG4gICAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjMpIG5vbmUgcmVwZWF0IHNjcm9sbCAwJSAwJTtcbiAgICBjb2xvcjogd2hpdGU7XG4gICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgIHBhZGRpbmc6IDFweCA5cHg7XG59XG5cbi8vIE1vYmlsZS1maXJzdCAoKyB0YWJsZXQpIHR5cGUgc2l6ZXMuXG5ib2R5IHsgZm9udC1zaXplOiAkdGV4dC1zaXplLWNvcHktbm9ybWFsLW1vYmlsZTsgfVxuaDEgeyBmb250LXNpemU6ICR0ZXh0LXNpemUtaGVhZGluZy1sYXJnZS1tb2JpbGU7IH1cbmgyIHsgZm9udC1zaXplOiAkdGV4dC1zaXplLWhlYWRpbmctbWVkaXVtLW1vYmlsZTsgfVxuaDMgeyBmb250LXNpemU6ICR0ZXh0LXNpemUtaGVhZGluZy1zbWFsbC1tb2JpbGU7IH1cbiIsIi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIERlZmluZSBzb21lIGNvbnN0YW50cy9jb25maWd1cmF0aW9uLlxuXG4kZGVmYXVsdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xuXG4kZGVmYXVsdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjJzO1xuJGRlZmF1bHQtdHJhbnNpdGlvbi1mdW5jdGlvbjogZWFzZS1vdXQ7XG5cbiRmb250LXN0YWNrLWRlZmF1bHQ6IFwiQXJpYWxcIiwgc2Fucy1zZXJpZjtcbiRmb250LXN0YWNrLWhlYWRpbmc6IFwiTmV4YVwiLCBzYW5zLXNlcmlmO1xuXG4kY29sb3ItYmctZGFyazogcmdiKDIyLCAyMiwgMjIpO1xuJGNvbG9yLXRleHQtZGVmYXVsdDogcmdiKDI1MCwgMjMwLCAyMDUpO1xuJGNvbG9yLXRleHQtZW1waGFzaXplZDogcmdiKDI1NSwgMjU1LCAyNTUpO1xuJGNvbG9yLXRleHQtZXZlbmxlc3NkaW06ICRjb2xvci10ZXh0LWRlZmF1bHQ7XG4kY29sb3ItdGV4dC1sZXNzZGltOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNjYpO1xuJGNvbG9yLXRleHQtZGltOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSk7XG4kY29sb3ItdGV4dC1leHRyYWRpbTogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjM1KTtcblxuJGNvbG9yLWlucHV0LXRleHQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC43KTtcbiRjb2xvci1pbnB1dC1kYXJrZW46IHJnYmEoMCwgMCwgMCwgMC4xKTtcblxuJGJvcmRlci1yYWRpdXMtc21hbGw6IDVweDtcbiRib3JkZXItcmFkaXVzLWxhcmdlOiA0MHB4O1xuXG4kZm9vdGVyLWhlaWdodC1tb2JpbGU6IDI0MHB4O1xuJGZvb3Rlci1oZWlnaHQtdGFibGV0OiAyMjVweDtcblxuXG4vLyBTdXN5IGdsb2JhbCBjb25maWd1cmF0aW9uLlxuJHN1c3k6IChcbiAgICBjb2x1bW5zOiAxMixcbiAgICBnbG9iYWwtYm94LXNpemluZzogJGRlZmF1bHQtYm94LXNpemluZyxcbik7XG5cblxuLy8gQnJlYWtwb2ludC5zY3NzIG1lZGlhIHF1ZXJ5IHZhcmlhYmxlcy5cbiRicC1kZXNrdG9wLW1pbi13aWR0aDogMTIwMHB4O1xuJGJwLXRhYmxldC1tYXgtd2lkdGg6ICgkYnAtZGVza3RvcC1taW4td2lkdGggLSAxcHgpO1xuJGJwLXRhYmxldC1taW4td2lkdGg6IDc2OHB4O1xuJGJwLW1vYmlsZS1tYXgtd2lkdGg6ICgkYnAtdGFibGV0LW1pbi13aWR0aCAtIDFweCk7XG5cbiRicC1tb2JpbGUtb25seTogbWF4LXdpZHRoICRicC1tb2JpbGUtbWF4LXdpZHRoO1xuXG4kYnAtdGFibGV0LXVwOiAkYnAtdGFibGV0LW1pbi13aWR0aDtcbiRicC10YWJsZXQtZG93bjogbWF4LXdpZHRoICRicC10YWJsZXQtbWF4LXdpZHRoO1xuJGJwLWRlc2t0b3Atb25seTogJGJwLWRlc2t0b3AtbWluLXdpZHRoO1xuXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBDb21wb3NlIGFuZCBvdXRwdXQgcGFydGlhbHMuXG5cbi8vIFZlbmRvciBzdHlsZXMuXG5AaW1wb3J0IFwibm9ybWFsaXplXCI7XG5cbi8vIENvbW1vbiBzdHlsZXMuXG5AaW1wb3J0IFwiZm9udHNcIjtcbkBpbXBvcnQgXCJ0eXBvZ3JhcGh5XCI7XG5AaW1wb3J0IFwiY29tbW9uXCI7XG5cbi8vIFRlbXBsYXRlIHBhcnRpYWxzLlxuQGltcG9ydCBcImhlYWRlclwiO1xuQGltcG9ydCBcImZvb3RlclwiO1xuXG4vLyBQYWdlLXNwZWNpZmljIHN0eWxlcy5cbkBpbXBvcnQgXCJwYWdlcy9pbmRleFwiO1xuQGltcG9ydCBcInBhZ2VzL2NhcnQtYW5kLWNoZWNrb3V0XCI7XG5AaW1wb3J0IFwicGFnZXMvYWJvdXRcIjtcbkBpbXBvcnQgXCJwYWdlcy9wb2xpY3lcIjtcbkBpbXBvcnQgXCJwYWdlcy93YXJyYW50eS1hbmQtdGVybXNcIjtcbkBpbXBvcnQgXCJwYWdlcy9wcm9kdWN0c1wiO1xuQGltcG9ydCBcInBhZ2VzL2hlbHBcIjtcbkBpbXBvcnQgXCJwYWdlcy80MDRcIjtcbkBpbXBvcnQgXCJwYWdlcy9kZXZlbG9wZXJzXCI7XG5AaW1wb3J0IFwicGFnZXMvZGVhbGVyc1wiO1xuQGltcG9ydCBcInBhZ2VzL2Rvd25sb2Fkc1wiO1xuQGltcG9ydCBcInBhZ2VzL3RyYWNraXI1XCI7XG5AaW1wb3J0IFwicGFnZXMvYWNjZXNzb3JpZXNcIjtcbkBpbXBvcnQgXCJwYWdlcy9nYW1lcy1saXN0XCI7XG5AaW1wb3J0IFwicGFnZXMvcmVtb3RlLXN1cHBvcnRcIjtcbkBpbXBvcnQgXCJwYWdlcy9wcm9tb1wiO1xuQGltcG9ydCBcInBhZ2VzL21lZGlhXCI7XG4iLCJAaW1wb3J0IFwidmVuZG9yL2JyZWFrcG9pbnRcIjtcbkBpbXBvcnQgXCJ2ZW5kb3Ivc3VzeVwiO1xuXG5AaW1wb3J0IFwiaGVscGVycy9kZXZlbG9wbWVudFwiO1xuQGltcG9ydCBcImhlbHBlcnMvY29udGFpbmVyXCI7XG5AaW1wb3J0IFwiaGVscGVycy9saXN0c1wiO1xuQGltcG9ydCBcImhlbHBlcnMvaGlkZVwiO1xuQGltcG9ydCBcImhlbHBlcnMvYnV0dG9uc1wiO1xuQGltcG9ydCBcImhlbHBlcnMvYm9yZGVyc1wiO1xuXG5AaW1wb3J0IFwicGFydGlhbHMvaGVhZGluZ3NcIjtcblxuXG5cbi8vIEdsb2JhbCBib3gtc2l6aW5nIGluIGEgd2F5IHRoYXQncyBlYXNpZXIgdG8gb3ZlcnJpZGUgb24gYSBwZXItY29tcG9uZW50IGJhc2lzIHdoZW4gbmVjZXNzYXJ5LlxuLy8gaHR0cHM6Ly9jc3MtdHJpY2tzLmNvbS9pbmhlcml0aW5nLWJveC1zaXppbmctcHJvYmFibHktc2xpZ2h0bHktYmV0dGVyLWJlc3QtcHJhY3RpY2UvXG5odG1sIHtcbiAgICBib3gtc2l6aW5nOiAkZGVmYXVsdC1ib3gtc2l6aW5nO1xuICAgIG92ZXJmbG93LXk6IHNjcm9sbDtcbn1cblxuKixcbio6YmVmb3JlLFxuKjphZnRlciB7XG4gICAgYm94LXNpemluZzogaW5oZXJpdDtcbn1cblxuXG5pbWcge1xuICAgIG1heC13aWR0aDogMTAwJTtcbn1cblxuaHRtbCxcbmJvZHkge1xuICAgIGhlaWdodDogMTAwJTtcbn1cblxuLy8gVG8gYWNjb21vZGF0ZSB0aGUgc3RpY2t5IGZvb3Rlci5cbiRHTE9CQUxfZm9vdGVyLWhlaWdodC1tb2JpbGU6IDIwMHB4O1xuJEdMT0JBTF9mb290ZXItaGVpZ2h0LXRhYmxldDogJEdMT0JBTF9mb290ZXItaGVpZ2h0LW1vYmlsZTtcbm1haW4ge1xuICAgIG1pbi1oZWlnaHQ6IDEwMCU7XG4gICAgbWFyZ2luLWJvdHRvbTogIC0kZm9vdGVyLWhlaWdodC1tb2JpbGU7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206ICAtJGZvb3Rlci1oZWlnaHQtdGFibGV0O1xuICAgIH1cbn1cbm1haW46OmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogICRmb290ZXItaGVpZ2h0LW1vYmlsZTtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG4gICAgICBoZWlnaHQ6ICAkZm9vdGVyLWhlaWdodC10YWJsZXQ7XG4gIH1cbn1cblxuYm9keSB7XG4gICAgYmFja2dyb3VuZDogI0VDOEEwMDtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOlxuICAgICAgICBsaW5lYXItZ3JhZGllbnQoLTkwZGVnLCAjRUM4QTAwIDAlLCAjRkE5QjAwIDEwJSwgI0ZGQTYwMCAyMCUsICNGRkE2MDAgODAlLCAjRkE5QjAwIDkwJSwgI0VDOEEwMCAxMDAlKSxcbiAgICAgICAgcmFkaWFsLWdyYWRpZW50KDUwJSA1MCUsICNGRkE2MDAgNTAlLCAjRkZBNjAwIDYwJSwgI0ZBOUIwMCA4MCUsICNFQzhBMDAgMTAwJSwgI0I2NUYwMCAxMzUlKTtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBsZWZ0IDAgdG9wIDEyMDUwcHgsIHRvcCBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6ICBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1zaXplOiBhdXRvIDEwMDAwcHgsIDEwMCUgMTIwMDBweDtcbn1cbmgxLCBoMiB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDBweDtcbiAgICB9XG59XG5cbmlucHV0W3R5cGU9XCJ0ZXh0XCJdLFxuaW5wdXRbdHlwZT1cImVtYWlsXCJdLFxuaW5wdXRbdHlwZT1cInRlbFwiXSxcbnRleHRhcmVhLFxuIHtcbiAgICBmb250LXNpemU6ICR0ZXh0LXNpemUtY29weS1zbWFsbC1tb2JpbGU7XG4gICAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gICAgcGFkZGluZzogNHB4IDEwcHg7XG4gICAgYm9yZGVyOiAwO1xuICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLXNtYWxsO1xuICAgIGJhY2tncm91bmQ6ICRjb2xvci1pbnB1dC1kYXJrZW47XG4gICAgJjpmb2N1cyxcbiAgICAmOmFjdGl2ZSB7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMCAwIDFweCAkY29sb3ItdGV4dC1lbXBoYXNpemVkO1xuICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgIH1cbn1cblxuaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSxcbmJ1dHRvbiB7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgQGluY2x1ZGUgYnRuO1xufVxuXG4vLyBGSVhNRTogbm9ybWFsaXplLmNzcyBhZGRzIGNvbG9yOiBpbmhlcml0ICgtPiB3aGl0ZSBib2R5IHRleHQpLCBhbmQgd2UgY2FuJ3QgZWFzaWx5IHN0eWxlIHRoZSBiYWNrZ3JvdW5kIG9mIHNlbGVjdC9vcHRpb24gZWxlbWVudHMgaW4gYSBjcm9zcy1icm93c2VyLWZyaWVuZGx5IHdheS5cbnNlbGVjdCB7XG4gICAgY29sb3I6ICMwMDA7XG59XG4iLCIvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIERlZmF1bHQgVmFyaWFibGVzXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbiRCcmVha3BvaW50LVNldHRpbmdzOiAoXG4gICdkZWZhdWx0IG1lZGlhJzogYWxsLFxuICAnZGVmYXVsdCBmZWF0dXJlJzogbWluLXdpZHRoLFxuICAnZGVmYXVsdCBwYWlyJzogd2lkdGgsXG5cbiAgJ2ZvcmNlIGFsbCBtZWRpYSB0eXBlJzogZmFsc2UsXG4gICd0byBlbXMnOiBmYWxzZSxcbiAgJ3RyYW5zZm9ybSByZXNvbHV0aW9ucyc6IHRydWUsXG5cbiAgJ25vIHF1ZXJpZXMnOiBmYWxzZSxcbiAgJ25vIHF1ZXJ5IGZhbGxiYWNrcyc6IGZhbHNlLFxuXG4gICdiYXNlIGZvbnQgc2l6ZSc6IDE2cHgsXG5cbiAgJ2xlZ2FjeSBzeW50YXgnOiBmYWxzZVxuKTtcblxuJGJyZWFrcG9pbnQ6ICgpICFkZWZhdWx0O1xuXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIEltcG9ydHNcbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuQGltcG9ydCBcImJyZWFrcG9pbnQvc2V0dGluZ3NcIjtcbkBpbXBvcnQgJ2JyZWFrcG9pbnQvY29udGV4dCc7XG5AaW1wb3J0ICdicmVha3BvaW50L2hlbHBlcnMnO1xuQGltcG9ydCAnYnJlYWtwb2ludC9wYXJzZXJzJztcbkBpbXBvcnQgJ2JyZWFrcG9pbnQvbm8tcXVlcnknO1xuXG5AaW1wb3J0ICdicmVha3BvaW50L3Jlc3BvbmQtdG8nO1xuXG5AaW1wb3J0IFwiYnJlYWtwb2ludC9sZWdhY3ktc2V0dGluZ3NcIjtcblxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBCcmVha3BvaW50IE1peGluXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cblxuQG1peGluIGJyZWFrcG9pbnQoJHF1ZXJ5LCAkbm8tcXVlcnk6IGZhbHNlKSB7XG4gIEBpbmNsdWRlIGxlZ2FjeS1zZXR0aW5ncy13YXJuaW5nO1xuXG4gIC8vIFJlc2V0IGNvbnRleHRzXG4gIEBpbmNsdWRlIHByaXZhdGUtYnJlYWtwb2ludC1yZXNldC1jb250ZXh0cygpO1xuXG4gICRicmVha3BvaW50OiBicmVha3BvaW50KCRxdWVyeSwgZmFsc2UpO1xuXG4gICRxdWVyeS1zdHJpbmc6IG1hcC1nZXQoJGJyZWFrcG9pbnQsICdxdWVyeScpO1xuICAkcXVlcnktZmFsbGJhY2s6IG1hcC1nZXQoJGJyZWFrcG9pbnQsICdmYWxsYmFjaycpO1xuXG4gICRwcml2YXRlLWJyZWFrcG9pbnQtY29udGV4dC1ob2xkZXI6IG1hcC1nZXQoJGJyZWFrcG9pbnQsICdjb250ZXh0IGhvbGRlcicpICFnbG9iYWw7XG4gICRwcml2YXRlLWJyZWFrcG9pbnQtcXVlcnktY291bnQ6IG1hcC1nZXQoJGJyZWFrcG9pbnQsICdxdWVyeSBjb3VudCcpICFnbG9iYWw7XG5cbiAgLy8gQWxsb3cgZm9yIGFuIGFzLW5lZWRlZCBvdmVycmlkZSBvciB1c2FnZSBvZiBubyBxdWVyeSBmYWxsYmFjay5cbiAgQGlmICRuby1xdWVyeSAhPSBmYWxzZSB7XG4gICAgJHF1ZXJ5LWZhbGxiYWNrOiAkbm8tcXVlcnk7XG4gIH1cblxuICBAaWYgJHF1ZXJ5LWZhbGxiYWNrICE9IGZhbHNlIHtcbiAgICAkY29udGV4dC1zZXR0ZXI6IHByaXZhdGUtYnJlYWtwb2ludC1zZXQtY29udGV4dCgnbm8tcXVlcnknLCAkcXVlcnktZmFsbGJhY2spO1xuICB9XG5cbiAgLy8gUHJpbnQgT3V0IFF1ZXJ5IFN0cmluZ1xuICBAaWYgbm90IGJyZWFrcG9pbnQtZ2V0KCdubyBxdWVyaWVzJykge1xuICAgIEBtZWRpYSAjeyRxdWVyeS1zdHJpbmd9IHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxuXG4gIEBpZiBicmVha3BvaW50LWdldCgnbm8gcXVlcnkgZmFsbGJhY2tzJykgIT0gZmFsc2Ugb3IgYnJlYWtwb2ludC1nZXQoJ25vIHF1ZXJpZXMnKSA9PSB0cnVlIHtcblxuICAgICR0eXBlOiB0eXBlLW9mKGJyZWFrcG9pbnQtZ2V0KCdubyBxdWVyeSBmYWxsYmFja3MnKSk7XG4gICAgJHByaW50OiBmYWxzZTtcblxuICAgIEBpZiAoJHR5cGUgPT0gJ2Jvb2wnKSB7XG4gICAgICAkcHJpbnQ6IHRydWU7XG4gICAgfVxuICAgIEBlbHNlIGlmICgkdHlwZSA9PSAnc3RyaW5nJykge1xuICAgICAgQGlmICRxdWVyeS1mYWxsYmFjayA9PSBicmVha3BvaW50LWdldCgnbm8gcXVlcnkgZmFsbGJhY2tzJykge1xuICAgICAgICAkcHJpbnQ6IHRydWU7XG4gICAgICB9XG4gICAgfVxuICAgIEBlbHNlIGlmICgkdHlwZSA9PSAnbGlzdCcpIHtcbiAgICAgIEBlYWNoICR3cmFwcGVyIGluIGJyZWFrcG9pbnQtZ2V0KCdubyBxdWVyeSBmYWxsYmFja3MnKSB7XG4gICAgICAgIEBpZiAkcXVlcnktZmFsbGJhY2sgPT0gJHdyYXBwZXIge1xuICAgICAgICAgICRwcmludDogdHJ1ZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIFdyaXRlIEZhbGxiYWNrXG4gICAgQGlmICgkcXVlcnktZmFsbGJhY2sgIT0gZmFsc2UpIGFuZCAoJHByaW50ID09IHRydWUpIHtcbiAgICAgICR0eXBlLWZhbGxiYWNrOiB0eXBlLW9mKCRxdWVyeS1mYWxsYmFjayk7XG5cbiAgICAgIEBpZiAoJHR5cGUtZmFsbGJhY2sgIT0gJ2Jvb2wnKSB7XG4gICAgICAgICN7JHF1ZXJ5LWZhbGxiYWNrfSAmIHtcbiAgICAgICAgICBAY29udGVudDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICBAY29udGVudDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSBwcml2YXRlLWJyZWFrcG9pbnQtcmVzZXQtY29udGV4dHMoKTtcbn1cblxuXG5AbWl4aW4gbXEoJHF1ZXJ5LCAkbm8tcXVlcnk6IGZhbHNlKSB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHF1ZXJ5LCAkbm8tcXVlcnkpIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuIiwiQG1peGluIGJ0biB7XG4gICAgdHJhbnNpdGlvbjogYWxsICRkZWZhdWx0LXRyYW5zaXRpb24tZHVyYXRpb24gJGRlZmF1bHQtdHJhbnNpdGlvbi1mdW5jdGlvbjtcbiAgICBwYWRkaW5nOiAxMHB4IDUycHg7XG4gICAgYm9yZGVyOiBzb2xpZCAxcHggJGNvbG9yLXRleHQtZGVmYXVsdDtcbiAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1sYXJnZTtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgICAgY29sb3I6ICRjb2xvci10ZXh0LWVtcGhhc2l6ZWQ7XG4gICAgICAgIGJhY2tncm91bmQ6ICRjb2xvci1pbnB1dC1kYXJrZW47XG4gICAgfVxufVxuIiwiLy8gU2V0IHRoZSBoZWlnaHQgb2YgdGhlIGhlYWRlciBzbyB0aGF0IGl0IGNhbiBiZSBwdXNoZWQgXCJkb3duXCIgdy8gcGFkZGluZyBzaW5jZSBpdCBpcyBmaXhlZFxuLy8gdG8gdGhlIHRvcC5cbiRoZWFkZXItaGVpZ2h0LW1vYmlsZTogNjBweDtcbiRoZWFkZXItaGVpZ2h0LXRhYmxldDogNzVweDtcblxuaGVhZGVyIHtcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDUwMG1zIGVhc2UtaW4tb3V0O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjQ3LCAxNDYsIDAsIDAuMCk7XG4gICAgYm9yZGVyLWJvdHRvbTogc29saWQgMXB4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4zNSk7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHRvcDogMDtcbiAgICB6LWluZGV4OiAxMDAwO1xuICAgIGhlaWdodDogJGhlYWRlci1oZWlnaHQtbW9iaWxlO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgICBoZWlnaHQ6ICRoZWFkZXItaGVpZ2h0LXRhYmxldDtcbiAgICB9XG4gICAgJi5tYWluLW5hdi1zY3JvbGxlZCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjQ3LCAxNDYsIDAsIDAuOSk7XG4gICAgfVxuICAgIG5hdltyb2xlPVwibmF2aWdhdGlvblwiXSB7XG4gICAgICAgIEBpbmNsdWRlIGFkYXB0aXZlLWNvbnRhaW5lcjtcbiAgICAgICAgcGFkZGluZzogNXB4IDBweCA3cHg7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgICAgICAgcGFkZGluZzogMzBweCAwIDE4cHg7XG4gICAgICAgIH1cbiAgICAgICAgLnRyYWNraXItbG9nbyB7XG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBwdXNoKDMpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTQ0cHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBhIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgNHB4O1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgY29sb3I6ICRjb2xvci10ZXh0LWRlZmF1bHQ7XG4gICAgICAgICAgICBmb250LXNpemU6ICR0ZXh0LXNpemUtY29weS1zbWFsbC1tb2JpbGU7XG4gICAgICAgIH1cbiAgICAgICAgbGk6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgIH1cbiAgICAgICAgbGk6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICBhe1xuICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgPiB1bCB7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogNXB4O1xuICAgICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGp1c3RpZnk7XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAtNHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgPiBsaSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgICYuY2FydCBhIHtcbiAgICAgICAgICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSB2aXN1YWxseS1oaWRkZW47XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBpY29uKCRpY29uLWdseXBoLWJhc2tldCk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBsaS5pbmxpbmUtdHJhY2tpci1sb2dvIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC1tb2JpbGUtb25seSkge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDE1cHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgbGk6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA2cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBsaTpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgICAgICBsaTpudGgtb2YtdHlwZSgyKSxcbiAgICAgICAgICAgICAgICBsaTpudGgtb2YtdHlwZSgzKSB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiA2MnB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBsaTpudGgtb2YtdHlwZSg0KSxcbiAgICAgICAgICAgICAgICBsaTpudGgtb2YtdHlwZSg1KSB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAyMnB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbi8vIFRoaXMgcHVzaGVzIHRoZSBtYWluIGRpdiBkb3duIGJlbG93IHRoZSBoZWFkZXIgd2hpY2ggaXMgZml4ZWQuXG5tYWluIHtcbiAgICBwYWRkaW5nLXRvcDogJGhlYWRlci1oZWlnaHQtbW9iaWxlO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgICBwYWRkaW5nLXRvcDogJGhlYWRlci1oZWlnaHQtdGFibGV0O1xuICAgIH1cbn1cbiIsIi8vIHJlbSBTdXBwb3J0XG4vLyA9PT09PT09PT09PVxuXG4vLyByZW1cbi8vIC0tLVxuLy8gQ2hlY2sgZm9yIGFuIGV4aXN0aW5nIHN1cHBvcnQgbWl4aW4sIG9yIG91dHB1dCBkaXJlY3RseS5cbi8vIC0gJHByb3AgIDogPGNzcyBwcm9wZXJ0eT5cbi8vIC0gJHZhbCAgIDogPGNzcyB2YWx1ZT5cbkBtaXhpbiBzdXN5LXJlbShcbiAgJHByb3AsXG4gICR2YWxcbikge1xuICAkX3JlcXM6IChcbiAgICB2YXJpYWJsZTogcmh5dGhtLXVuaXQgcmVtLXdpdGgtcHgtZmFsbGJhY2ssXG4gICAgbWl4aW46IHJlbSxcbiAgKTtcbiAgQGlmIHN1c3ktc3VwcG9ydChyZW0sICRfcmVxcywgJHdhcm46IGZhbHNlKSBhbmQgJHJoeXRobS11bml0ID09IHJlbSB7XG4gICAgQGluY2x1ZGUgcmVtKCRwcm9wLCAkdmFsKTtcbiAgfSBAZWxzZSB7XG4gICAgI3skcHJvcH06ICR2YWw7XG4gIH1cbn1cbiIsIkBtaXhpbiBhZGFwdGl2ZS1jb250YWluZXIge1xuICAgIEBpbmNsdWRlIGNvbnRhaW5lcigyOTBweCk7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgQGluY2x1ZGUgY29udGFpbmVyKDcwMnB4KTtcbiAgICB9XG59XG4iLCIvLyBDb250YWluZXIgU3ludGF4XG4vLyA9PT09PT09PT09PT09PT09XG5cbi8vIENvbnRhaW5lciBbbWl4aW5dXG4vLyAtLS0tLS0tLS0tLS0tLS0tLVxuLy8gU2V0IGEgY29udGFpbmVyIGVsZW1lbnRcbi8vIC0gWyRsYXlvdXRdICA6IDxzZXR0aW5ncz5cbkBtaXhpbiBjb250YWluZXIoXG4gICRsYXlvdXQ6ICRzdXN5XG4pIHtcbiAgJGluc3BlY3QgICAgOiAkbGF5b3V0O1xuICAkbGF5b3V0ICAgICA6IHBhcnNlLWdyaWQoJGxheW91dCk7XG5cbiAgJF93aWR0aCAgICAgOiBnZXQtY29udGFpbmVyLXdpZHRoKCRsYXlvdXQpO1xuICAkX2p1c3RpZnkgICA6IHBhcnNlLWNvbnRhaW5lci1wb3NpdGlvbihzdXN5LWdldChjb250YWluZXItcG9zaXRpb24sICRsYXlvdXQpKTtcbiAgJF9wcm9wZXJ0eSAgOiBpZihzdXN5LWdldChtYXRoLCAkbGF5b3V0KSA9PSBzdGF0aWMsIHdpZHRoLCBtYXgtd2lkdGgpO1xuXG4gICRfYm94ICAgICAgIDogc3VzeS1nZXQoYm94LXNpemluZywgJGxheW91dCk7XG5cbiAgQGlmICRfYm94IHtcbiAgICBAaW5jbHVkZSBvdXRwdXQoKGJveC1zaXppbmc6ICRfYm94KSk7XG4gIH1cblxuICBAaW5jbHVkZSBzdXN5LWluc3BlY3QoY29udGFpbmVyLCAkaW5zcGVjdCk7XG4gIEBpbmNsdWRlIGZsb2F0LWNvbnRhaW5lcigkX3dpZHRoLCAkX2p1c3RpZnksICRfcHJvcGVydHkpO1xuICBAaW5jbHVkZSBzaG93LWdyaWQoJGxheW91dCk7XG59XG5cbi8vIENvbnRhaW5lciBbZnVuY3Rpb25dXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gUmV0dXJuIGNvbnRhaW5lciB3aWR0aFxuLy8gLSBbJGxheW91dF0gIDogPHNldHRpbmdzPlxuQGZ1bmN0aW9uIGNvbnRhaW5lcihcbiAgJGxheW91dDogJHN1c3lcbikge1xuICAkbGF5b3V0OiBwYXJzZS1ncmlkKCRsYXlvdXQpO1xuICBAcmV0dXJuIGdldC1jb250YWluZXItd2lkdGgoJGxheW91dCk7XG59XG5cbi8vIEdldCBDb250YWluZXIgV2lkdGhcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIENhbGN1bGF0ZSB0aGUgY29udGFpbmVyIHdpZHRoXG4vLyAtIFskbGF5b3V0XTogPHNldHRpbmdzPlxuQGZ1bmN0aW9uIGdldC1jb250YWluZXItd2lkdGgoXG4gICRsYXlvdXQ6ICRzdXN5XG4pIHtcbiAgJGxheW91dCAgICAgICAgIDogcGFyc2UtZ3JpZCgkbGF5b3V0KTtcbiAgJF93aWR0aCAgICAgICAgIDogc3VzeS1nZXQoY29udGFpbmVyLCAkbGF5b3V0KTtcbiAgJF9jb2x1bW4td2lkdGggIDogc3VzeS1nZXQoY29sdW1uLXdpZHRoLCAkbGF5b3V0KTtcbiAgJF9tYXRoICAgICAgICAgIDogc3VzeS1nZXQobWF0aCwgJGxheW91dCk7XG5cbiAgQGlmIG5vdCgkX3dpZHRoKSBvciAkX3dpZHRoID09IGF1dG8ge1xuICAgIEBpZiB2YWxpZC1jb2x1bW4tbWF0aCgkX21hdGgsICRfY29sdW1uLXdpZHRoKSB7XG4gICAgICAkX2NvbHVtbnMgICA6IHN1c3ktZ2V0KGNvbHVtbnMsICRsYXlvdXQpO1xuICAgICAgJF9ndXR0ZXJzICAgOiBzdXN5LWdldChndXR0ZXJzLCAkbGF5b3V0KTtcbiAgICAgICRfc3ByZWFkICAgIDogaWYoaXMtc3BsaXQoJGxheW91dCksIHdpZGUsIG5hcnJvdyk7XG4gICAgICAkX3dpZHRoICAgICA6IHN1c3ktc3VtKCRfY29sdW1ucywgJF9ndXR0ZXJzLCAkX3NwcmVhZCkgKiAkX2NvbHVtbi13aWR0aDtcbiAgICB9IEBlbHNlIHtcbiAgICAgICRfd2lkdGg6IDEwMCU7XG4gICAgfVxuICB9XG5cbiAgQHJldHVybiAkX3dpZHRoO1xufVxuXG4vLyBQYXJzZSBDb250YWluZXIgUG9zaXRpb25cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gUGFyc2UgdGhlICRjb250YWluZXItcG9zaXRpb24gaW50byBtYXJnaW4gdmFsdWVzLlxuLy8gLSBbJGp1c3RpZnldICAgOiBsZWZ0IHwgY2VudGVyIHwgcmlnaHQgfCA8bGVuZ3RoPiBbPGxlbmd0aD5dXG5AZnVuY3Rpb24gcGFyc2UtY29udGFpbmVyLXBvc2l0aW9uKFxuICAkanVzdGlmeTogbWFwLWdldCgkc3VzeS1kZWZhdWx0cywgY29udGFpbmVyLXBvc2l0aW9uKVxuKSB7XG4gICRfcmV0dXJuOiBpZigkanVzdGlmeSA9PSBsZWZ0LCAwLCBhdXRvKSBpZigkanVzdGlmeSA9PSByaWdodCwgMCwgYXV0byk7XG5cbiAgQGlmIG5vdChpbmRleChsZWZ0IHJpZ2h0IGNlbnRlciwgJGp1c3RpZnkpKSB7XG4gICAgJF9yZXR1cm46IG50aCgkanVzdGlmeSwgMSk7XG4gICAgJF9yZXR1cm46ICRfcmV0dXJuIGlmKGxlbmd0aCgkanVzdGlmeSkgPiAxLCBudGgoJGp1c3RpZnksIDIpLCAkX3JldHVybik7XG4gIH1cblxuICBAcmV0dXJuICRfcmV0dXJuO1xufVxuIiwiLy8gU3VzeSBGYWxsYmFjayBDbGVhcmZpeFxuLy8gPT09PT09PT09PT09PT09PT09PT09PVxuXG5cbi8vIENsZWFyZml4XG4vLyAtLS0tLS0tLVxuLy8gQ2hlY2sgZm9yIGFuIGV4aXN0aW5nIHN1cHBvcnQgbWl4aW4sIG9yIHByb3ZpZGUgYSBzaW1wbGUgZmFsbGJhY2suXG5AbWl4aW4gc3VzeS1jbGVhcmZpeCB7XG4gIEBpZiBzdXN5LXN1cHBvcnQoY2xlYXJmaXgsIChtaXhpbjogY2xlYXJmaXgpKSB7XG4gICAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gIH0gQGVsc2Uge1xuICAgICY6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCIgXCI7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGNsZWFyOiBib3RoO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gU3BhbiBTeW50YXhcbi8vID09PT09PT09PT09XG5cbi8vIFNwYW4gW21peGluXVxuLy8gLS0tLS0tLS0tLS0tXG4vLyBTZXQgYSBzcGFubmluZyBlbGVtZW50IHVzaW5nIHNob3J0aGFuZCBzeW50YXguXG4vLyAtICRzcGFuICA6IDxzcGFuPlxuQG1peGluIHNwYW4oXG4gICRzcGFuXG4pIHtcbiAgJGluc3BlY3Q6ICRzcGFuO1xuICAkc3BhbjogcGFyc2Utc3Bhbigkc3Bhbik7XG4gICRvdXRwdXQ6IHNwYW4tbWF0aCgkc3Bhbik7XG4gICRuZXN0aW5nOiBzdXN5LWdldChzcGFuLCAkc3Bhbik7XG4gICRjbGVhcjogc3VzeS1nZXQoY2xlYXIsICRzcGFuKTtcblxuICAkYm94OiBzdXN5LWdldChib3gtc2l6aW5nLCAkc3Bhbik7XG4gICRjb250ZW50LWJveDogaWYoc3VzeS1nZXQoZ2xvYmFsLWJveC1zaXppbmcpICE9ICdib3JkZXItYm94JywgdHJ1ZSwgZmFsc2UpO1xuICAkYm94OiAkYm94IG9yIGlmKGlzLWluc2lkZSgkc3BhbikgYW5kICRjb250ZW50LWJveCwgYm9yZGVyLWJveCwgbnVsbCk7XG5cbiAgQGlmICRjbGVhciA9PSBicmVhayB7XG4gICAgQGluY2x1ZGUgYnJlYWs7XG4gIH0gQGVsc2UgaWYgJGNsZWFyID09IG5vYnJlYWsge1xuICAgIEBpbmNsdWRlIG5vYnJlYWs7XG4gIH1cblxuICBAaW5jbHVkZSBzdXN5LWluc3BlY3Qoc3BhbiwgJGluc3BlY3QpO1xuICBAaW5jbHVkZSBvdXRwdXQoKGJveC1zaXppbmc6ICRib3gpKTtcbiAgQGluY2x1ZGUgZmxvYXQtc3Bhbi1vdXRwdXQoJG91dHB1dC4uLik7XG5cbiAgQGlmIHZhbGlkLWNvbHVtbnMoJG5lc3RpbmcsIHNpbGVudCkge1xuICAgIEBpbmNsdWRlIG5lc3RlZCgkc3BhbikgeyBAY29udGVudDsgfVxuICB9IEBlbHNlIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG4vLyBTcGFuIFtmdW5jdGlvbl1cbi8vIC0tLS0tLS0tLS0tLS0tLVxuLy8gUmV0dXJuIHRoZSB3aWR0aCBvZiBhIHNwYW4uXG4vLyAtICRzcGFuICA6IDxzcGFuPlxuQGZ1bmN0aW9uIHNwYW4oXG4gICRzcGFuXG4pIHtcbiAgQHJldHVybiBnZXQtc3Bhbi13aWR0aCgkc3Bhbik7XG59XG5cbi8vIFNwYW4gTWF0aFxuLy8gLS0tLS0tLS0tXG4vLyBHZXQgYWxsIHRoZSBzcGFuIHJlc3VsdHMuXG4vLyAtICRzcGFuOiA8bWFwPlxuQGZ1bmN0aW9uIHNwYW4tbWF0aChcbiAgJHNwYW5cbikge1xuICAkbmVzdCAgICAgICAgICAgICA6IGlmKHN1c3ktZ2V0KHJvbGUsICRzcGFuKSA9PSBuZXN0LCB0cnVlLCBmYWxzZSk7XG4gICRzcGxpdC1uZXN0ICAgICAgIDogaWYoaXMtc3BsaXQoJHNwYW4pIGFuZCAkbmVzdCwgdHJ1ZSwgZmFsc2UpO1xuICAkZWRnZSAgICAgICAgICAgICA6IGdldC1lZGdlKCRzcGFuKTtcbiAgJGxvY2F0aW9uICAgICAgICAgOiBnZXQtbG9jYXRpb24oJHNwYW4pO1xuXG4gICRmbG9hdCAgICAgICAgICAgIDogZnJvbTtcbiAgJHBhZGRpbmctYmVmb3JlICAgOiBudWxsO1xuICAkcGFkZGluZy1hZnRlciAgICA6IG51bGw7XG4gICRtYXJnaW4tYmVmb3JlICAgIDogbnVsbDtcbiAgJG1hcmdpbi1hZnRlciAgICAgOiBudWxsO1xuXG4gIC8vIGNhbGN1bGF0ZSB3aWR0aHNcbiAgJHNwcmVhZDogaW5kZXgobWFwLXZhbHVlcygkc3BhbiksIHNwcmVhZCk7XG4gICRzcGFuOiBpZigkc3BsaXQtbmVzdCBhbmQgbm90KCRzcHJlYWQpLCBtYXAtbWVyZ2UoJHNwYW4sIChzcHJlYWQ6IHdpZGUpKSwgJHNwYW4pO1xuICAkd2lkdGg6IGdldC1zcGFuLXdpZHRoKCRzcGFuKTtcbiAgJGd1dHRlcnM6IGdldC1ndXR0ZXJzKCRzcGFuKTtcblxuICAvLyBhcHBseSBndXR0ZXJzXG4gIEBpZiBpcy1pbnNpZGUoJHNwYW4pIHtcbiAgICBAaWYgbm90KHN1c3ktZ2V0KHJvbGUsICRzcGFuKSkge1xuICAgICAgJHBhZGRpbmctYmVmb3JlOiBtYXAtZ2V0KCRndXR0ZXJzLCBiZWZvcmUpO1xuICAgICAgJHBhZGRpbmctYWZ0ZXI6IG1hcC1nZXQoJGd1dHRlcnMsIGFmdGVyKTtcbiAgICB9XG4gIH0gQGVsc2Uge1xuICAgIEBpZiBub3QoJHNwbGl0LW5lc3QpIHtcbiAgICAgICRtYXJnaW4tYmVmb3JlOiBtYXAtZ2V0KCRndXR0ZXJzLCBiZWZvcmUpO1xuICAgICAgJG1hcmdpbi1hZnRlcjogbWFwLWdldCgkZ3V0dGVycywgYWZ0ZXIpO1xuICAgIH1cbiAgfVxuXG4gIC8vIHNwZWNpYWwgbWFyZ2luIGhhbmRsaW5nXG4gIEBpZiBzdXN5LWdldChvdXRwdXQsICRzcGFuKSA9PSBpc29sYXRlIGFuZCAkbG9jYXRpb24ge1xuICAgICRtYXJnaW4tYmVmb3JlOiBnZXQtaXNvbGF0aW9uKCRzcGFuKTtcbiAgICAkbWFyZ2luLWFmdGVyOiAtMTAwJTtcbiAgfSBAZWxzZSBpZiAkZWRnZSB7XG4gICAgJGlzLXNwbGl0OiBpcy1zcGxpdCgkc3Bhbik7XG4gICAgJHBvczogc3VzeS1nZXQoZ3V0dGVyLXBvc2l0aW9uLCAkc3Bhbik7XG5cbiAgICBAaWYgJGVkZ2UgPT0gbGFzdCB7XG4gICAgICAkZmxvYXQ6IHN1c3ktZ2V0KGxhc3QtZmxvdywgJHNwYW4pO1xuICAgIH1cblxuICAgIEBpZiBub3QoJGlzLXNwbGl0KSB7XG4gICAgICBAaWYgJGVkZ2UgPT0gZnVsbCBvciAoJGVkZ2UgPT0gZmlyc3QgYW5kICRwb3MgPT0gYmVmb3JlKSB7XG4gICAgICAgICRtYXJnaW4tYmVmb3JlOiAwO1xuICAgICAgfVxuICAgICAgQGlmICRlZGdlID09IGZ1bGwgb3IgKCRlZGdlID09IGxhc3QgYW5kICRwb3MgPT0gYWZ0ZXIpIHtcbiAgICAgICAgJG1hcmdpbi1hZnRlcjogMDtcbiAgICAgIH1cbiAgICB9XG5cbiAgfVxuXG4gIEByZXR1cm4gKFxuICAgIHdpZHRoICAgICAgICAgICA6ICR3aWR0aCxcbiAgICBmbG9hdCAgICAgICAgICAgOiAkZmxvYXQsXG4gICAgbWFyZ2luLWJlZm9yZSAgIDogJG1hcmdpbi1iZWZvcmUsXG4gICAgbWFyZ2luLWFmdGVyICAgIDogJG1hcmdpbi1hZnRlcixcbiAgICBwYWRkaW5nLWJlZm9yZSAgOiAkcGFkZGluZy1iZWZvcmUsXG4gICAgcGFkZGluZy1hZnRlciAgIDogJHBhZGRpbmctYWZ0ZXIsXG4gICAgZmxvdyAgICAgICAgICAgIDogc3VzeS1nZXQoZmxvdywgJHNwYW4pLFxuICApO1xufVxuXG4vLyBHZXQgU3BhbiBXaWR0aFxuLy8gLS0tLS0tLS0tLS0tLS1cbi8vIFJldHVybiBzcGFuIHdpZHRoLlxuLy8gLSAkc3BhbjogPG1hcD5cbkBmdW5jdGlvbiBnZXQtc3Bhbi13aWR0aChcbiAgJHNwYW5cbikge1xuICAkc3BhbiAgICAgOiBwYXJzZS1zcGFuKCRzcGFuKTtcblxuICAkbiAgICAgICAgOiBzdXN5LWdldChzcGFuLCAkc3Bhbik7XG4gICRsb2NhdGlvbiA6IGdldC1sb2NhdGlvbigkc3Bhbik7XG4gICRjb2x1bW5zICA6IHN1c3ktZ2V0KGNvbHVtbnMsICRzcGFuKTtcbiAgJGd1dHRlcnMgIDogc3VzeS1nZXQoZ3V0dGVycywgJHNwYW4pO1xuICAkc3ByZWFkICAgOiBzdXN5LWdldChzcHJlYWQsICRzcGFuKTtcblxuICAkY29udGV4dCAgOiBudWxsO1xuICAkc3Bhbi1zdW0gOiBudWxsO1xuICAkd2lkdGggICAgOiBudWxsO1xuXG4gIEBpZiAkbiA9PSAnZnVsbCcge1xuICAgICRwb3M6IHN1c3ktZ2V0KGd1dHRlci1wb3NpdGlvbiwgJHNwYW4pO1xuICAgICRyb2xlOiBzdXN5LWdldChyb2xlLCAkc3Bhbik7XG4gICAgJG46IGlmKCRwb3MgPT0gc3BsaXQgYW5kICRyb2xlICE9IG5lc3QsIHN1c3ktY291bnQoJGNvbHVtbnMpLCAxMDAlKTtcbiAgfVxuXG4gIEBpZiB0eXBlLW9mKCRuKSAhPSBudW1iZXIge1xuICAgIEB3YXJuIFwiKCN7dHlwZS1vZigkbil9KSAjeyRufSBpcyBub3QgYSB2YWxpZCBzcGFuLlwiO1xuICB9IEBlbHNlIGlmIHVuaXRsZXNzKCRuKSB7XG4gICAgJGNvbnRleHQ6IHN1c3ktc3VtKCRjb2x1bW5zLCAkZ3V0dGVycywgaWYoaXMtc3BsaXQoJHNwYW4pLCB3aWRlLCBuYXJyb3cpKTtcbiAgICAkc3ByZWFkOiBpZihpcy1pbnNpZGUoJHNwYW4pLCAkc3ByZWFkIG9yIHdpZGUsICRzcHJlYWQpO1xuICAgICRzcGFuLXN1bTogc3VzeSgkbiwgJGxvY2F0aW9uLCAkY29sdW1ucywgJGd1dHRlcnMsICRzcHJlYWQpO1xuXG4gICAgJF9tYXRoOiBzdXN5LWdldChtYXRoLCAkc3Bhbik7XG4gICAgJF9jb2x1bW4td2lkdGg6IHN1c3ktZ2V0KGNvbHVtbi13aWR0aCwgJHNwYW4pO1xuICAgIEBpZiAkX21hdGggPT0gc3RhdGljIHtcbiAgICAgICR3aWR0aDogJHNwYW4tc3VtICogdmFsaWQtY29sdW1uLW1hdGgoJF9tYXRoLCAkX2NvbHVtbi13aWR0aCk7XG4gICAgfSBAZWxzZSB7XG4gICAgICAkd2lkdGg6IHBlcmNlbnRhZ2UoJHNwYW4tc3VtIC8gJGNvbnRleHQpO1xuICAgIH1cbiAgfSBAZWxzZSB7XG4gICAgJHdpZHRoOiAkbjtcbiAgfVxuXG4gIEByZXR1cm4gJHdpZHRoO1xufVxuIiwiLy8gRm9yIHNjcmVlbiByZWFkZXJzOyBub3QgdmlzaWJsZSB0byBzaWdodGVkIHVzZXJzLiBGSVhNRTogQmV0dGVyIGFwcHJvYWNoIHRvIHRoaXM/IFJlZmVyZW5jZSBlLmcuIEg1QlAgb3IgQm9vdHN0cmFwP1xuQG1peGluIHZpc3VhbGx5LWhpZGRlbiB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogLTk5OTk5cHg7XG4gICAgbGVmdDogLTk5OTk5cHg7XG59XG4iLCJmb290ZXIge1xuICAgIGJhY2tncm91bmQ6ICRjb2xvci1iZy1kYXJrO1xuICAgIGZvbnQtc2l6ZTogJHRleHQtc2l6ZS1jb3B5LXNtYWxsLW1vYmlsZTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgcGFkZGluZzogMjVweCAwO1xuICAgIGhlaWdodDogICRmb290ZXItaGVpZ2h0LW1vYmlsZTtcbiAgICBtYXJnaW4tdG9wOiAtJGZvb3Rlci1oZWlnaHQtbW9iaWxlO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgICBwYWRkaW5nOiA0MHB4IDA7XG4gICAgICAgIGhlaWdodDogICRmb290ZXItaGVpZ2h0LXRhYmxldDtcbiAgICAgICAgbWFyZ2luLXRvcDogLSRmb290ZXItaGVpZ2h0LXRhYmxldDtcbiAgICB9XG4gICAgLnNvY2lhbC1saW5rcywgbmF2LmF1eGlsaWFyeSwgLnNvc3VtaSB7XG4gICAgICAgIEBpbmNsdWRlIGFkYXB0aXZlLWNvbnRhaW5lcjtcbiAgICB9XG4gICAgYSB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgY29sb3I6ICRjb2xvci10ZXh0LWVtcGhhc2l6ZWQ7XG4gICAgfVxuICAgIC5zb2NpYWwtbGlua3Mge1xuICAgICAgICBmb250LXNpemU6IDI4cHg7XG4gICAgICAgIGEge1xuICAgICAgICAgICAgY29sb3I6ICRjb2xvci10ZXh0LWV4dHJhZGltO1xuICAgICAgICB9XG4gICAgICAgIHVsIHtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICA+IGxpIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMCAxMHB4O1xuICAgICAgICAgICAgICAgIC8vIFNwZWNpYWwgc3R5bGluZyBmb3IgYW4gb2RkIGFwcGVhcmVuY2Ugb2YgdGhlIFR3aWNoIGljb25cbiAgICAgICAgICAgICAgICAuaWNvbi10d2l0Y2gge1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDI2cHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIC5sYWJlbCB7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHZpc3VhbGx5LWhpZGRlbjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgbmF2LmF1eGlsaWFyeSB7XG4gICAgICAgIHVsIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICA+IGxpIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMC41ZW07XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDIuM2VtO1xuICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lO1xuICAgICAgICAgICAgICAgICAgICBjb250ZW50OiBcIlxcMjAyMlwiOyAvLyBSb3VuZCBidWxsZXRcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwLjNlbTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgLy8gTm8gYnVsbGV0IHRvIHRoZSBsZWZ0IG9mIHRoZSBmaXJzdCBpdGVtLlxuICAgICAgICAgICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAvLyBObyBidWxsZXQgdG8gdGhlIGxlZnQgb2YgaXRlbXMgdGhhdCBzdGFydCBuZXcgbGluZXMgb24gbW9iaWxlLlxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLW1vYmlsZS1vbmx5KSB7XG4gICAgICAgICAgICAgICAgICAgICY6bnRoLW9mLXR5cGUoNSksXG4gICAgICAgICAgICAgICAgICAgICY6bnRoLW9mLXR5cGUoOCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAvLyBObyBidWxsZXQgdG8gdGhlIGxlZnQgb2YgaXRlbXMgdGhhdCBzdGFydCBuZXcgbGluZXMgb24gdGFibGV0LlxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgICAgICAgICAgICAgICAmOm50aC1vZi10eXBlKDkpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAuY29weXJpZ2h0LFxuICAgIC5hbGwtcmlnaHRzLXJlc2VydmVkIHtcbiAgICAgICAgY29sb3I6ICRjb2xvci10ZXh0LWV4dHJhZGltO1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC1tb2JpbGUtb25seSkge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCJAaW1wb3J0IFwiLi4vcGFydGlhbHMvZmVhdHVyZWQtcHJvZHVjdHNcIjtcblxuYm9keS5ob21lIHtcblxuICAgIG1haW4ge1xuICAgICAgICAvLyBUaGUgaG9tZXBhZ2Ugc3RhcnRzIHdpdGggYSB6ZXJvIG9wYWNpdHkgc28gdGhhdCBpdCBoYXMgYSBjaGFuY2UgdG8gd3JpdGUgcGFpbnQgdGhlIERPTS4gVGhlbiBpdCB3aWxsIGZhZGUgaW4uXG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIGFuaW1hdGlvbi1uYW1lOiBmYWRlLXNpdGUtaW47XG4gICAgICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogMnM7XG4gICAgICAgIGFuaW1hdGlvbi1maWxsLW1vZGU6IGZvcndhcmRzO1xuICAgICAgICBAa2V5ZnJhbWVzIGZhZGUtc2l0ZS1pbiB7XG4gICAgICAgICAgICAwJSAgIHtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgMzAlIHtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgMTAwJSB7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICBzZWN0aW9uICB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICBhLmN0YSB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnRuO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICBoMSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMzZweDtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDQ1cHg7XG4gICAgICAgIH1cbiAgICB9XG4gICAgaDIge1xuICAgICAgICBmb250LXNpemU6IDI4cHg7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgICAgICAgZm9udC1zaXplOiA0NXB4O1xuICAgICAgICB9XG4gICAgfVxuICAgIFtpZD1cImludHJvXCJdIHtcbiAgICAgICAgQGluY2x1ZGUgYWRhcHRpdmUtY29udGFpbmVyO1xuICAgICAgICBtYXJnaW4tdG9wOiA2MHB4O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC1tb2JpbGUtb25seSkge1xuICAgICAgICAgICAgbWluLWhlaWdodDogOThweDtcbiAgICAgICAgfVxuICAgICAgICAudHlwZWQge1xuICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgICAgICAgIHRvcDogLTIycHg7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGgxIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMzZweDtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogNDVweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGJyIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLmNvbnRlbnQgaDMge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogNzAwcHg7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLm1vbml0b3ItY29udGFpbmVyIHtcbiAgICAgICAgQGluY2x1ZGUgYWRhcHRpdmUtY29udGFpbmVyO1xuICAgICAgICBoZWlnaHQ6IDU4MHB4O1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgICAgICAgaGVpZ2h0OiA1MzBweDtcbiAgICAgICAgfVxuICAgICAgICAuc3RhdGljLWZhbGxiYWNrIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuZGlzcGxheS1zdXJyb3VuZCxcbiAgICAgICAgLmRlbW8tdmlkZW8ge1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtbW9iaWxlLW9ubHkpIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgYSB7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIHNwYW4oMzIgb2YgMTIpO1xuICAgICAgICAgICAgQGluY2x1ZGUgcHVsbCgxMCk7XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBzcGFuKDE0IG9mIDEyKTtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBwdWxsKDEpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGltZyB7XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAtMjAxcHg7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogLjk5O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHZpZGVvIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IC0xMjAwcHg7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMzlweDtcbiAgICAgICAgICAgIHdpZHRoOiA3NDZweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIFtpZD1cImludHJvLWN0YVwiXSB7XG4gICAgICAgIEBpbmNsdWRlIGFkYXB0aXZlLWNvbnRhaW5lcjtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNTBweDtcbiAgICAgICAgLmNhbGwtdG8tYWN0aW9uIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHNwYW4oMTApO1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHB1c2goMSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBhLmN0YSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5jYWxsLXRvLWFjdGlvbi1saW5rcyB7XG4gICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAyODBweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBbaWQ9XCJmZWF0dXJlZC1wcm9kdWN0c1wiXSB7XG4gICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMCwwLDAsLjEpO1xuICAgIH1cblxuICAgIFtpZD1cImdhbWVyLXRlc3RpbW9uaWFsc1wiXSB7XG4gICAgICAgIEBpbmNsdWRlIGFkYXB0aXZlLWNvbnRhaW5lcjtcbiAgICAgICAgbWFyZ2luLXRvcDogNTBweDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNTBweDtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiA4MHB4O1xuICAgICAgICB9XG4gICAgICAgIC50ZXN0aW1vbmlhbC1jb250YWluZXIge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogNTBweDtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB9XG4gICAgICAgIC50ZXN0aW1vbmlhbCB7XG4gICAgICAgICAgICBAaW5jbHVkZSBzcGFuKDEyKTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDUwcHg7XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBnYWxsZXJ5KDYgb2YgMTIpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGltZyB7XG4gICAgICAgICAgICBAaW5jbHVkZSBzcGFuKDIgYnJlYWspO1xuICAgICAgICAgICAgd2lkdGg6IDQwcHg7XG4gICAgICAgIH1cbiAgICAgICAgLnF1b3RlIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDBweDtcbiAgICAgICAgICAgIEBpbmNsdWRlIHNwYW4oMTAgbGFzdCk7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC0ycHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAucGVyc29uIHtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxMnB4O1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDBweDtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGNvbG9yLXRleHQtZW1waGFzaXplZDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICBbaWQ9XCJmZWF0dXJlZC1nYW1lc1wiXSB7XG4gICAgICAgIGJhY2tncm91bmQ6ICMyMzIzMjMgbm9uZSByZXBlYXQgMCAwO1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGNvbG9yLXRleHQtZXh0cmFkaW07XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiA4MHB4O1xuICAgICAgICBwYWRkaW5nLXRvcDogMjBweDtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG4gICAgICAgICAgICBwYWRkaW5nOiA1MHB4IGF1dG87XG4gICAgICAgIH1cbiAgICAgICAgLmdhbWVzLXdyYXAge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDYwcHg7XG4gICAgICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgICAgICBvdmVyZmxvdy14OiBoaWRkZW47XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuZ2FtZXMge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgICAgIHRvcDogMTdweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgLmdhbWVzLWxpc3Qge1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAuZ2FtZS1iYWNrZ3JvdW5kIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvdHJhY2tpci1lbmhhbmNlZC1nYW1lcy12ZXJ0aWNhbC5wbmcpO1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogNDAwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL3RyYWNraXItZW5oYW5jZWQtZ2FtZXMtaG9yaXpvbnRhbC5wbmcpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogMjEwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGF1dG8gYXV0bztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgLnR5cGVkLWN1cnNvcntcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgYW5pbWF0aW9uOiBjdXJzb3ItYmxpbmsgMXMgaW5maW5pdGU7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1zdGFjay1kZWZhdWx0O1xuICAgICAgICBmb250LXdlaWdodDogMTAwO1xuICAgICAgICBAa2V5ZnJhbWVzIGN1cnNvci1ibGluayB7XG4gICAgICAgICAgICAwJSB7IG9wYWNpdHk6MTsgfVxuICAgICAgICAgICAgNTAlIHsgb3BhY2l0eTowOyB9XG4gICAgICAgICAgICAxMDAlIHsgb3BhY2l0eToxOyB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgZm9vdGVyIHtcbiAgICAgICAgb3BhY2l0eTogLjk5O1xuICAgICAgICBiYWNrZ3JvdW5kOiAjMjMyMzIzIG5vbmUgcmVwZWF0IDAgMDtcbiAgICB9XG59XG4iLCIvLyBEaXJlY3Rpb24gSGVscGVyc1xuLy8gPT09PT09PT09PT09PT09PT1cblxuLy8gU3VzeSBGbG93IERlZmF1bHRzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS1cbi8vIC0gUFJJVkFURVxuQGluY2x1ZGUgc3VzeS1kZWZhdWx0cygoXG4gIGZsb3c6IGx0cixcbikpO1xuXG4vLyBHZXQgRGlyZWN0aW9uXG4vLyAtLS0tLS0tLS0tLS0tXG4vLyBSZXR1cm4gdGhlICdmcm9tJyBvciAndG8nIGRpcmVjdGlvbiBvZiBhIGx0ciBvciBydGwgZmxvdy5cbi8vIC0gWyRmbG93XSAgOiBsdHIgfCBydGxcbi8vIC0gWyRrZXldICAgOiBmcm9tIHwgdG9cbkBmdW5jdGlvbiBnZXQtZGlyZWN0aW9uKFxuICAkZmxvdzogbWFwLWdldCgkc3VzeS1kZWZhdWx0cywgZmxvdyksXG4gICRrZXk6IGZyb21cbikge1xuICAkcmV0dXJuOiBpZigkZmxvdyA9PSBydGwsIChmcm9tOiByaWdodCwgdG86IGxlZnQpLCAoZnJvbTogbGVmdCwgdG86IHJpZ2h0KSk7XG4gIEByZXR1cm4gbWFwLWdldCgkcmV0dXJuLCAka2V5KTtcbn1cblxuLy8gVG9cbi8vIC0tXG4vLyBSZXR1cm4gdGhlICd0bycgZGlyZWN0aW9uIG9mIGEgZmxvd1xuLy8gLSBbJGZsb3ddICA6IGx0ciB8IHJ0bFxuQGZ1bmN0aW9uIHRvKFxuICAkZmxvdzogbWFwLWdldCgkc3VzeS1kZWZhdWx0cywgZmxvdylcbikge1xuICBAcmV0dXJuIGdldC1kaXJlY3Rpb24oJGZsb3csIHRvKTtcbn1cblxuLy8gRnJvbVxuLy8gLS0tLVxuLy8gUmV0dXJuIHRoZSAnZnJvbScgZGlyZWN0aW9uIG9mIGEgZmxvd1xuLy8gLSBbJGZsb3ddICA6IGx0ciB8IHJ0bFxuQGZ1bmN0aW9uIGZyb20oXG4gICRmbG93OiBtYXAtZ2V0KCRzdXN5LWRlZmF1bHRzLCBmbG93KVxuKSB7XG4gIEByZXR1cm4gZ2V0LWRpcmVjdGlvbigkZmxvdywgZnJvbSk7XG59XG4iLCIvLyBHdXR0ZXIgU3ludGF4XG4vLyA9PT09PT09PT09PT09XG5cblxuLy8gR3V0dGVyc1xuLy8gLS0tLS0tLVxuLy8gU2V0IGd1dHRlcnMgb24gYW4gZWxlbWVudC5cbi8vIC0gWyRzcGFuXSAgIDogPHNldHRpbmdzPlxuQG1peGluIGd1dHRlcnMoXG4gICRzcGFuOiAkc3VzeVxuKSB7XG4gICRpbnNwZWN0ICA6ICRzcGFuO1xuICAkc3BhbiAgICAgOiBwYXJzZS1ndXR0ZXJzKCRzcGFuKTtcbiAgJF9ndXR0ZXJzIDogZ2V0LWd1dHRlcnMoJHNwYW4pO1xuXG4gICRfb3V0cHV0OiAoXG4gICAgYmVmb3JlOiBtYXAtZ2V0KCRfZ3V0dGVycywgYmVmb3JlKSxcbiAgICBhZnRlcjogbWFwLWdldCgkX2d1dHRlcnMsIGFmdGVyKSxcbiAgICBmbG93OiBzdXN5LWdldChmbG93LCAkc3BhbiksXG4gICk7XG5cbiAgQGluY2x1ZGUgc3VzeS1pbnNwZWN0KGd1dHRlcnMsICRpbnNwZWN0KTtcblxuICBAaWYgaXMtaW5zaWRlKCRzcGFuKSB7XG4gICAgQGluY2x1ZGUgcGFkZGluZy1vdXRwdXQoJF9vdXRwdXQuLi4pO1xuICB9IEBlbHNlIHtcbiAgICBAaW5jbHVkZSBtYXJnaW4tb3V0cHV0KCRfb3V0cHV0Li4uKTtcbiAgfVxufVxuXG5AbWl4aW4gZ3V0dGVyKFxuICAkc3BhbjogJHN1c3lcbikge1xuICBAaW5jbHVkZSBndXR0ZXJzKCRzcGFuKTtcbn1cblxuXG4vLyBHdXR0ZXJcbi8vIC0tLS0tLVxuLy8gUmV0dXJuIHRoZSB3aWR0aCBvZiBhIGd1dHRlci5cbi8vIC0gWyRzcGFuXSAgIDogPHNldHRpbmdzPlxuQGZ1bmN0aW9uIGd1dHRlcihcbiAgJHNwYW46ICRzdXN5XG4pIHtcbiAgJHNwYW46IHBhcnNlLWd1dHRlcnMoJHNwYW4pO1xuXG4gICRfZ3V0dGVyczogZ2V0LWd1dHRlcnMoJHNwYW4pO1xuICAkX2d1dHRlcnM6IG1hcC1nZXQoJF9ndXR0ZXJzLCBiZWZvcmUpIG9yIG1hcC1nZXQoJF9ndXR0ZXJzLCBhZnRlcik7XG5cbiAgQHJldHVybiAkX2d1dHRlcnM7XG59XG5cbkBmdW5jdGlvbiBndXR0ZXJzKFxuICAkc3BhbjogJHN1c3lcbikge1xuICBAcmV0dXJuIGd1dHRlcigkc3Bhbik7XG59XG5cblxuLy8gR2V0IEd1dHRlciBXaWR0aFxuLy8gLS0tLS0tLS0tLS0tLS0tLVxuLy8gUmV0dXJuIGd1dHRlciB3aWR0aC5cbi8vIC0gWyRjb250ZXh0XTogPGNvbnRleHQ+XG5AZnVuY3Rpb24gZ2V0LWd1dHRlci13aWR0aChcbiAgJGNvbnRleHQ6ICRzdXN5XG4pIHtcbiAgJGNvbnRleHQgIDogcGFyc2UtZ3V0dGVycygkY29udGV4dCk7XG5cbiAgJF9ndXR0ZXJzIDogc3VzeS1nZXQoZ3V0dGVycywgJGNvbnRleHQpO1xuICAkX2d1dHRlciAgOiBzdXN5LWdldChndXR0ZXItb3ZlcnJpZGUsICRjb250ZXh0KTtcblxuICBAaWYgJF9ndXR0ZXJzIGFuZCAoJF9ndXR0ZXJzID4gMCkgYW5kIG5vdCgkX2d1dHRlcikge1xuICAgICRfY29sdW1uLXdpZHRoOiBzdXN5LWdldChjb2x1bW4td2lkdGgsICRjb250ZXh0KTtcbiAgICAkX21hdGg6IGd1dHRlci1tYXRoKCRjb250ZXh0KTtcbiAgICBAaWYgJF9tYXRoID09IHN0YXRpYyB7XG4gICAgICAkX2d1dHRlcjogJF9ndXR0ZXJzICogdmFsaWQtY29sdW1uLW1hdGgoJF9tYXRoLCAkX2NvbHVtbi13aWR0aCk7XG4gICAgfSBAZWxzZSB7XG4gICAgICAkX2NvbHVtbnMgOiBzdXN5LWdldChjb2x1bW5zLCAkY29udGV4dCk7XG4gICAgICAkX3NwcmVhZCAgOiBpZihpcy1zcGxpdCgkY29udGV4dCksIHdpZGUsIHN1c3ktZ2V0KHNwcmVhZCwgJGNvbnRleHQpKTtcbiAgICAgICRfZ3V0dGVyICA6IHBlcmNlbnRhZ2UoJF9ndXR0ZXJzIC8gc3VzeS1zdW0oJF9jb2x1bW5zLCAkX2d1dHRlcnMsICRfc3ByZWFkKSk7XG4gICAgfVxuICB9XG5cbiAgJF9ndXR0ZXI6IGlmKCRfZ3V0dGVyID09ICduby1ndXR0ZXJzJyBvciAkX2d1dHRlciA9PSAnbm8tZ3V0dGVyJywgbnVsbCwgJF9ndXR0ZXIpO1xuXG4gIEByZXR1cm4gJF9ndXR0ZXI7XG59XG5cblxuLy8gR2V0IEd1dHRlcnNcbi8vIC0tLS0tLS0tLS0tXG4vLyBSZXR1cm4gYmVmb3JlIGFuZCBhZnRlciBndXR0ZXIgdmFsdWVzLlxuLy8gLSBbJGNvbnRleHRdOiA8Y29udGV4dD5cbkBmdW5jdGlvbiBnZXQtZ3V0dGVycyhcbiAgJGNvbnRleHQ6ICRzdXN5XG4pIHtcbiAgJGNvbnRleHQgICAgICAgICAgICA6IHBhcnNlLWd1dHRlcnMoJGNvbnRleHQpO1xuXG4gICRfZ3V0dGVyLXBvc2l0aW9uICAgOiBzdXN5LWdldChndXR0ZXItcG9zaXRpb24sICRjb250ZXh0KTtcbiAgJF9ndXR0ZXIgICAgICAgICAgICA6IGdldC1ndXR0ZXItd2lkdGgoJGNvbnRleHQpO1xuXG4gICRfcmV0dXJuICAgICAgICAgICAgOiAoYmVmb3JlOiBudWxsLCBhZnRlcjogbnVsbCk7XG5cbiAgQGlmIGlzLXNwbGl0KCRjb250ZXh0KSBhbmQgJF9ndXR0ZXIge1xuICAgICRfZ3V0dGVyOiAkX2d1dHRlciAvIDI7XG4gICAgJF9yZXR1cm46IG1hcC1tZXJnZSgkX3JldHVybiwgKGJlZm9yZTogJF9ndXR0ZXIsIGFmdGVyOiAkX2d1dHRlcikpO1xuICB9IEBlbHNlIHtcbiAgICAkX3JldHVybjogbWFwLW1lcmdlKCRfcmV0dXJuLCAoJF9ndXR0ZXItcG9zaXRpb246ICRfZ3V0dGVyKSk7XG4gIH1cblxuICBAcmV0dXJuICRfcmV0dXJuO1xufVxuXG5cbi8vIElzIEluc2lkZVxuLy8gLS0tLS0tLS0tXG4vLyBSZXR1cm5zIHRydWUgaWYgZ3V0dGVycyBhcmUgaW5zaWRlLlxuLy8gJGNvbnRleHQ6IDxjb250ZXh0PlxuQGZ1bmN0aW9uIGlzLWluc2lkZShcbiAgJGNvbnRleHRcbikge1xuICAkX2luc2lkZTogaW5zaWRlIGluc2lkZS1zdGF0aWM7XG4gICRfZ3V0dGVyLXBvc2l0aW9uOiBzdXN5LWdldChndXR0ZXItcG9zaXRpb24sICRjb250ZXh0KTtcblxuICBAcmV0dXJuIGlmKGluZGV4KCRfaW5zaWRlLCAkX2d1dHRlci1wb3NpdGlvbiksIHRydWUsIGZhbHNlKTtcbn1cblxuXG4vLyBJcyBTcGxpdFxuLy8gLS0tLS0tLS1cbi8vIFJldHVybnMgdHJ1ZSBpZiBndXR0ZXJzIGFyZSBzcGxpdC5cbi8vICRjb250ZXh0OiA8Y29udGV4dD5cbkBmdW5jdGlvbiBpcy1zcGxpdChcbiAgJGNvbnRleHRcbikge1xuICAkX3NwbGl0OiBzcGxpdCBpbnNpZGUgaW5zaWRlLXN0YXRpYztcbiAgJF9ndXR0ZXItcG9zaXRpb246IHN1c3ktZ2V0KGd1dHRlci1wb3NpdGlvbiwgJGNvbnRleHQpO1xuXG4gIEByZXR1cm4gaWYoaW5kZXgoJF9zcGxpdCwgJF9ndXR0ZXItcG9zaXRpb24pLCB0cnVlLCBmYWxzZSk7XG59XG5cblxuLy8gR3V0dGVyIE1hdGhcbi8vIC0tLS0tLS0tLS0tXG4vLyBSZXR1cm4gdGhlIG1hdGggdG8gdXNlIGZvciBndXR0ZXIgY2FsY3VsYXRpb25zXG4vLyAkY29udGV4dDogPGNvbnRleHQ+XG5AZnVuY3Rpb24gZ3V0dGVyLW1hdGgoXG4gICRjb250ZXh0OiAkc3VzeVxuKSB7XG4gICRfcmV0dXJuICA6IHN1c3ktZ2V0KG1hdGgsICRjb250ZXh0KTtcbiAgJF9yZXR1cm4gIDogaWYoc3VzeS1nZXQoZ3V0dGVyLXBvc2l0aW9uLCAkY29udGV4dCkgPT0gaW5zaWRlLXN0YXRpYywgc3RhdGljLCAkX3JldHVybik7XG5cbiAgQHJldHVybiAkX3JldHVybjtcbn1cbiIsIi8vIE1hcmdpbiBTeW50YXhcbi8vID09PT09PT09PT09PT1cblxuLy8gUHJlXG4vLyAtLS1cbi8vIEFkZCBzcGFubmluZy1tYXJnaW5zIGJlZm9yZSBhbiBlbGVtZW50LlxuLy8gLSAkc3BhbiAgOiA8c3Bhbj5cbkBtaXhpbiBwcmUoXG4gICRzcGFuXG4pIHtcbiAgJGluc3BlY3Q6ICRzcGFuO1xuICAkc3BhbiAgIDogbWFwLW1lcmdlKChzcHJlYWQ6IHdpZGUpLCBwYXJzZS1zcGFuKCRzcGFuKSk7XG4gICRmbG93ICAgOiBzdXN5LWdldChmbG93LCAkc3Bhbik7XG4gICRzcGxpdCAgOiBpZihzdXN5LWdldChndXR0ZXItcG9zaXRpb24sICRzcGFuKSA9PSBzcGxpdCwgdHJ1ZSwgZmFsc2UpO1xuICAkZ3V0dGVyIDogZ3V0dGVyKCRzcGFuKTtcbiAgJHNwYW4gICA6IHNwYW4oJHNwYW4pO1xuICAkd2lkdGggIDogaWYoJHNwbGl0IGFuZCAkZ3V0dGVyLCAkc3BhbiArICRndXR0ZXIsICRzcGFuKTtcblxuICBAaW5jbHVkZSBzdXN5LWluc3BlY3QocHJlLCAkaW5zcGVjdCk7XG4gIEBpbmNsdWRlIG1hcmdpbi1vdXRwdXQoJHdpZHRoLCBudWxsLCAkZmxvdyk7XG59XG5cbi8vIFBvc3Rcbi8vIC0tLS1cbi8vIEFkZCBzcGFubmluZy1tYXJnaW5zIGFmdGVyIGFuIGVsZW1lbnQuXG4vLyAtICRzcGFuICA6IDxzcGFuPlxuQG1peGluIHBvc3QoXG4gICRzcGFuXG4pIHtcbiAgJGluc3BlY3QgIDogJHNwYW47XG4gICRzcGFuICAgICA6IG1hcC1tZXJnZSgoc3ByZWFkOiB3aWRlKSwgcGFyc2Utc3Bhbigkc3BhbikpO1xuICAkZmxvdyAgICAgOiBzdXN5LWdldChmbG93LCAkc3Bhbik7XG4gICRzcGxpdCAgICA6IGlmKHN1c3ktZ2V0KGd1dHRlci1wb3NpdGlvbiwgJHNwYW4pID09IHNwbGl0LCB0cnVlLCBmYWxzZSk7XG4gICR3aWR0aCAgICA6IGlmKCRzcGxpdCwgc3Bhbigkc3BhbikgKyBndXR0ZXIoJHNwYW4pLCBzcGFuKCRzcGFuKSk7XG5cbiAgQGluY2x1ZGUgc3VzeS1pbnNwZWN0KHBvc3QsICRpbnNwZWN0KTtcbiAgQGluY2x1ZGUgbWFyZ2luLW91dHB1dChudWxsLCAkd2lkdGgsICRmbG93KTtcbn1cblxuLy8gUHVzaFxuLy8gLS0tLVxuLy8gU2ltcGxlIHN5bm9ueW1uIGZvciBwcmUuXG4vLyAtICRzcGFuICA6IDxzcGFuPlxuQG1peGluIHB1c2goXG4gICRzcGFuXG4pIHtcbiAgQGluY2x1ZGUgcHJlKCRzcGFuKTtcbn1cblxuLy8gUHVsbFxuLy8gLS0tLVxuLy8gQWRkIG5lZ2F0aXZlIHNwYW5uaW5nLW1hcmdpbnMgYmVmb3JlIGFuIGVsZW1lbnQuXG4vLyAtICRzcGFuICA6IDxzcGFuPlxuQG1peGluIHB1bGwoXG4gICRzcGFuXG4pIHtcbiAgJGluc3BlY3QgIDogJHNwYW47XG4gICRzcGFuICAgICA6IG1hcC1tZXJnZSgoc3ByZWFkOiB3aWRlKSwgcGFyc2Utc3Bhbigkc3BhbikpO1xuICAkZmxvdyAgICAgOiBzdXN5LWdldChmbG93LCAkc3Bhbik7XG4gICRzcGxpdCAgICA6IGlmKHN1c3ktZ2V0KGd1dHRlci1wb3NpdGlvbiwgJHNwYW4pID09IHNwbGl0LCB0cnVlLCBmYWxzZSk7XG4gICR3aWR0aCAgICA6IGlmKCRzcGxpdCwgMCAtIHNwYW4oJHNwYW4pICsgZ3V0dGVyKCRzcGFuKSwgMCAtIHNwYW4oJHNwYW4pKTtcblxuICBAaW5jbHVkZSBzdXN5LWluc3BlY3QocHVsbCwgJGluc3BlY3QpO1xuICBAaW5jbHVkZSBtYXJnaW4tb3V0cHV0KCR3aWR0aCwgbnVsbCwgJGZsb3cpO1xufVxuXG4vLyBTcXVpc2hcbi8vIC0tLS0tLVxuLy8gQWRkIHNwYW5uaW5nLW1hcmdpbnMgYmVmb3JlIGFuZCBhZnRlciBhbiBlbGVtZW50LlxuLy8gLSAkcHJlICAgICA6IDxzcGFuPlxuLy8gLSBbJHBvc3RdICA6IDxzcGFuPlxuQG1peGluIHNxdWlzaChcbiAgJHByZSxcbiAgJHBvc3Q6IGZhbHNlXG4pIHtcbiAgJGluc3BlY3QgICAgICA6ICRwcmUsICRwb3N0O1xuICAkcHJlICAgICAgICAgIDogbWFwLW1lcmdlKChzcHJlYWQ6IHdpZGUpLCBwYXJzZS1zcGFuKCRwcmUpKTtcblxuICBAaWYgJHBvc3Qge1xuICAgICRwb3N0OiBtYXAtbWVyZ2UoKHNwcmVhZDogd2lkZSksIHBhcnNlLXNwYW4oJHBvc3QpKTtcbiAgfSBAZWxzZSB7XG4gICAgJHNwYW46IHN1c3ktZ2V0KHNwYW4sICRwcmUpO1xuICAgIEBpZiBsZW5ndGgoJHNwYW4pID4gMSB7XG4gICAgICAkcHJlOiBtYXAtbWVyZ2UoJHByZSwgKHNwYW46IG50aCgkc3BhbiwgMSkpKTtcbiAgICAgICRwb3N0OiBtYXAtbWVyZ2UoJHByZSwgKHNwYW46IG50aCgkc3BhbiwgMikpKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgICRwb3N0OiAkcHJlO1xuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIHN1c3ktaW5zcGVjdChzcXVpc2gsICRpbnNwZWN0Li4uKTtcbiAgQGluY2x1ZGUgcHJlKCRwcmUpO1xuICBAaW5jbHVkZSBwb3N0KCRwb3N0KTtcbn1cbiIsIi8vIEdhbGxlcnkgU3ludGF4XG4vLyA9PT09PT09PT09PT09PVxuXG4vLyBHYWxsZXJ5XG4vLyAtLS0tLS0tXG4vLyBDcmVhdGUgYW4gaXNvbGF0ZWQgZ2FsbGVyeVxuLy8gLSAkc3BhbiAgICAgICAgOiA8c3Bhbj5cbi8vIC0gWyRzZWxlY3Rvcl0gIDogY2hpbGQgfCBvZi10eXBlXG5AbWl4aW4gZ2FsbGVyeShcbiAgJHNwYW4sXG4gICRzZWxlY3RvcjogY2hpbGRcbikge1xuICAkaW5zcGVjdCAgICA6ICRzcGFuO1xuICAkc3BhbiAgICAgICA6IHBhcnNlLXNwYW4oJHNwYW4pO1xuICAkc3BhbiAgICAgICA6IG1hcC1tZXJnZSgkc3BhbiwgKGxvY2F0aW9uOiAxKSk7XG5cbiAgJG4gICAgICAgICAgICA6IHN1c3ktZ2V0KHNwYW4sICRzcGFuKTtcbiAgJGNvbHVtbnMgICAgICA6IHN1c3ktZ2V0KGNvbHVtbnMsICRzcGFuKTtcbiAgJGNvbnRleHQgICAgICA6IHN1c3ktY291bnQoJGNvbHVtbnMpO1xuICAkZmxvdyAgICAgICAgIDogc3VzeS1nZXQoZmxvdywgJHNwYW4pO1xuXG4gICRpbnNpZGUgICAgICAgOiBpcy1pbnNpZGUoJHNwYW4pO1xuICAkZnJvbSAgICAgICAgIDogZnJvbSgkZmxvdyk7XG4gICRsaW5lICAgICAgICAgOiBmbG9vcigkY29udGV4dCAvICRuKTtcbiAgJHN5bW1ldHJpY2FsICA6IGlzLXN5bW1ldHJpY2FsKCRjb2x1bW5zKTtcblxuICAkb3V0cHV0OiAoXG4gICAgd2lkdGggICAgICAgICAgICAgOiBudWxsLFxuICAgIGZsb2F0ICAgICAgICAgICAgIDogZnJvbSxcbiAgICBtYXJnaW4tYmVmb3JlICAgICA6IG51bGwsXG4gICAgbWFyZ2luLWFmdGVyICAgICAgOiBudWxsLFxuICAgIHBhZGRpbmctYmVmb3JlICAgIDogbnVsbCxcbiAgICBwYWRkaW5nLWFmdGVyICAgICA6IG51bGwsXG4gICAgZmxvdyAgICAgICAgICAgICAgOiAkZmxvdyxcbiAgKTtcblxuICBAaWYgJGluc2lkZSB7XG4gICAgJGd1dHRlcnM6IGdldC1ndXR0ZXJzKCRzcGFuKTtcbiAgICAkb3V0cHV0OiBtYXAtbWVyZ2UoJG91dHB1dCwgKFxuICAgICAgcGFkZGluZy1iZWZvcmU6IG1hcC1nZXQoJGd1dHRlcnMsIGJlZm9yZSksXG4gICAgICBwYWRkaW5nLWFmdGVyOiBtYXAtZ2V0KCRndXR0ZXJzLCBhZnRlciksXG4gICAgKSk7XG4gIH1cblxuICBAaWYgJHN5bW1ldHJpY2FsIHtcbiAgICAkb3V0cHV0OiBtYXAtbWVyZ2UoJG91dHB1dCwgKHdpZHRoOiBnZXQtc3Bhbi13aWR0aCgkc3BhbikpKTtcbiAgfVxuXG4gICRib3ggICAgICAgICAgOiBzdXN5LWdldChib3gtc2l6aW5nLCAkc3Bhbik7XG4gICRnbG9iYWwtYm94ICAgOiBpZihzdXN5LWdldChnbG9iYWwtYm94LXNpemluZykgPT0gJ2JvcmRlci1ib3gnLCB0cnVlLCBmYWxzZSk7XG5cbiAgQGluY2x1ZGUgc3VzeS1pbnNwZWN0KGdhbGxlcnksICRpbnNwZWN0KTtcblxuICAvLyBDb2xsZWN0aXZlIE91dHB1dFxuICBAaWYgJGJveCA9PSBib3JkZXItYm94IG9yICgkaW5zaWRlIGFuZCBub3QoJGJveCkgYW5kIG5vdCgkZ2xvYmFsLWJveCkpIHtcbiAgICBAaW5jbHVkZSBvdXRwdXQoKGJveC1zaXppbmc6IGJvcmRlci1ib3gpKTtcbiAgfSBAZWxzZSBpZiAkYm94ID09IGNvbnRlbnQtYm94IHtcbiAgICBAaW5jbHVkZSBvdXRwdXQoKGJveC1zaXppbmc6IGNvbnRlbnQtYm94KSk7XG4gIH1cblxuICBAaW5jbHVkZSBmbG9hdC1zcGFuLW91dHB1dCgkb3V0cHV0Li4uKTtcblxuICAvLyBJbmRpdmlkdWFsIExvb3BcbiAgQGZvciAkaXRlbSBmcm9tIDEgdGhyb3VnaCAkbGluZSB7XG4gICAgJG50aDogJyN7JGxpbmV9biArICN7JGl0ZW19JztcbiAgICAmOm50aC0jeyRzZWxlY3Rvcn0oI3skbnRofSkge1xuICAgICAgLy8gSW5kaXZpZHVhbCBQcmVwXG4gICAgICAkb3V0cHV0OiAoXG4gICAgICAgIHdpZHRoICAgICAgICAgICAgIDogaWYoJHN5bW1ldHJpY2FsLCBudWxsLCBnZXQtc3Bhbi13aWR0aCgkc3BhbikpLFxuICAgICAgICBmbG9hdCAgICAgICAgICAgICA6IG51bGwsXG4gICAgICAgIG1hcmdpbi1iZWZvcmUgICAgIDogZ2V0LWlzb2xhdGlvbigkc3BhbiksXG4gICAgICAgIG1hcmdpbi1hZnRlciAgICAgIDogLTEwMCUsXG4gICAgICAgIHBhZGRpbmctYmVmb3JlICAgIDogbnVsbCxcbiAgICAgICAgcGFkZGluZy1hZnRlciAgICAgOiBudWxsLFxuICAgICAgICBmbG93ICAgICAgICAgICAgICA6ICRmbG93LFxuICAgICAgKTtcblxuICAgICAgLy8gSW5kaXZpZHVhbCBPdXRwdXRcbiAgICAgIEBpbmNsdWRlIGZsb2F0LXNwYW4tb3V0cHV0KCRvdXRwdXQuLi4pO1xuXG4gICAgICBAaWYgZ2V0LWVkZ2UoJHNwYW4pID09IGZpcnN0IHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWs7XG4gICAgICAgIEBpbmNsdWRlIGZpcnN0KCRzcGFuKTtcbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICBAaW5jbHVkZSBub2JyZWFrO1xuICAgICAgfVxuXG4gICAgICAvLyBJbmRpdmlkdWFsIExvY2F0aW9uIEluY3JlbWVudFxuICAgICAgJGxvY2F0aW9uOiBnZXQtbG9jYXRpb24oJHNwYW4pICsgJG47XG4gICAgICAkbG9jYXRpb246IGlmKCRsb2NhdGlvbiA+ICRjb250ZXh0LCAxLCAkbG9jYXRpb24pO1xuICAgICAgJHNwYW46IG1hcC1tZXJnZSgkc3BhbiwgKGxvY2F0aW9uOiAkbG9jYXRpb24pKTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIFJvdyBTdGFydCAmIEVuZFxuLy8gPT09PT09PT09PT09PT09XG5cbi8vIEJyZWFrXG4vLyAtLS0tLVxuLy8gQXBwbHkgdG8gYW55IGVsZW1lbnQgdGhhdCBzaG91bGQgZm9yY2UgYSBsaW5lIGJyZWFrLlxuQG1peGluIGJyZWFrIHtcbiAgQGluY2x1ZGUgb3V0cHV0KChjbGVhcjogYm90aCkpO1xufVxuXG5cbi8vIE5vQnJlYWtcbi8vIC0tLS0tLS1cbi8vIENhbmNlbCB0aGUgYnJlYWsoKSBlZmZlY3QsIGUuZy4gd2hlbiB1c2luZyBtZWRpYSBxdWVyaWVzLlxuQG1peGluIG5vYnJlYWsge1xuICBAaW5jbHVkZSBvdXRwdXQoKGNsZWFyOiBub25lKSk7XG59XG5cblxuLy8gRnVsbFxuLy8gLS0tLVxuLy8gLSBbJGNvbnRleHRdOiA8bGF5b3V0IHNob3J0aGFuZD5cbkBtaXhpbiBmdWxsKFxuICAkY29udGV4dDogJHN1c3lcbikge1xuICAkaW5zcGVjdCA6ICRjb250ZXh0O1xuICBAaW5jbHVkZSBzdXN5LWluc3BlY3QoZnVsbCwgJGluc3BlY3QpO1xuICBAaW5jbHVkZSBzcGFuKGZ1bGwgb2YgcGFyc2UtZ3JpZCgkY29udGV4dCkgYnJlYWspO1xufVxuXG5cbi8vIEZpcnN0XG4vLyAtLS0tLVxuLy8gLSBbJGNvbnRleHRdOiA8c2V0dGluZ3M+XG5AbWl4aW4gZmlyc3QoXG4gICRjb250ZXh0OiAkc3VzeVxuKSB7XG4gICRpbnNwZWN0ICA6ICRjb250ZXh0O1xuICAkY29udGV4dCAgOiBwYXJzZS1ncmlkKCRjb250ZXh0KTtcbiAgJGZsb3cgICAgIDogc3VzeS1nZXQoZmxvdywgJGNvbnRleHQpO1xuXG4gIEBpbmNsdWRlIHN1c3ktaW5zcGVjdChmaXJzdCwgJGluc3BlY3QpO1xuICBAaWYgbm90KGlzLXNwbGl0KCRjb250ZXh0KSkge1xuICAgIEBpbmNsdWRlIGZsb2F0LWZpcnN0KCRmbG93KTtcbiAgfVxufVxuXG5AbWl4aW4gYWxwaGEoXG4gICRjb250ZXh0OiAkc3VzeVxuKSB7XG4gIEBpbmNsdWRlIGZpcnN0KCRjb250ZXh0KTtcbn1cblxuXG4vLyBMYXN0XG4vLyAtLS0tXG4vLyAtIFskY29udGV4dF06IDxzZXR0aW5ncz5cbkBtaXhpbiBsYXN0KFxuICAkY29udGV4dDogJHN1c3lcbikge1xuICAkaW5zcGVjdCAgOiAkY29udGV4dDtcbiAgJGNvbnRleHQgIDogcGFyc2UtZ3JpZCgkY29udGV4dCk7XG5cbiAgQGluY2x1ZGUgc3VzeS1pbnNwZWN0KGxhc3QsICRpbnNwZWN0KTtcblxuICAkb3V0cHV0OiAoXG4gICAgZmxvdzogc3VzeS1nZXQoZmxvdywgJGNvbnRleHQpLFxuICAgIGxhc3QtZmxvdzogc3VzeS1nZXQobGFzdC1mbG93LCAkY29udGV4dCksXG4gICAgbWFyZ2luOiBpZihpcy1zcGxpdCgkY29udGV4dCksIG51bGwsIDApLFxuICApO1xuXG4gIEBpbmNsdWRlIGZsb2F0LWxhc3QoJG91dHB1dC4uLik7XG59XG5cbkBtaXhpbiBvbWVnYShcbiAgJGNvbnRleHQ6ICRzdXN5XG4pIHtcbiAgQGluY2x1ZGUgbGFzdCgkY29udGV4dCk7XG59XG5cblxuLy8gR2V0IEVkZ2Vcbi8vIC0tLS0tLS0tXG4vLyBDYWxjdWxhdGUgZWRnZSB2YWx1ZSBiYXNlZCBvbiBsb2NhdGlvbiwgaWYgcG9zc2libGVcbkBmdW5jdGlvbiBnZXQtZWRnZShcbiAgJHNwYW5cbikge1xuICAkc3BhbiAgICAgICA6IHBhcnNlLXNwYW4oJHNwYW4pO1xuICAkZWRnZSAgICAgICA6IHN1c3ktZ2V0KGVkZ2UsICRzcGFuKTtcblxuICBAaWYgbm90KCRlZGdlKSB7XG4gICAgJGNvdW50OiBzdXN5LWNvdW50KHN1c3ktZ2V0KGNvbHVtbnMsICRzcGFuKSk7XG4gICAgJGxvY2F0aW9uOiBzdXN5LWdldChsb2NhdGlvbiwgJHNwYW4pO1xuICAgICRuOiBzdXN5LWdldChzcGFuLCAkc3Bhbik7XG5cbiAgICAkbnVtYmVyOiBpZih0eXBlLW9mKCRsb2NhdGlvbikgPT0gbnVtYmVyLCB0cnVlLCBmYWxzZSk7XG4gICAgJGluZGV4OiBpZigkbnVtYmVyIGFuZCB1bml0bGVzcygkbG9jYXRpb24pLCB0cnVlLCBmYWxzZSk7XG5cbiAgICBAaWYgJG4gPT0gJGNvdW50IHtcbiAgICAgICRlZGdlOiBmdWxsO1xuICAgIH0gQGVsc2UgaWYgJGxvY2F0aW9uIGFuZCAkbiBhbmQgJGluZGV4IHtcbiAgICAgIEBpZiAkbG9jYXRpb24gPT0gMSB7XG4gICAgICAgICRlZGdlOiBpZigkbiA9PSAkY291bnQsIGZ1bGwsIGZpcnN0KTtcbiAgICAgIH0gQGVsc2UgaWYgJGxvY2F0aW9uICsgJG4gLSAxID09ICRjb3VudCB7XG4gICAgICAgICRlZGdlOiBsYXN0O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBpZiAkZWRnZSA9PSBhbHBoYSBvciAkZWRnZSA9PSBvbWVnYSB7XG4gICAgJGVkZ2U6IGlmKCRlZGdlID09IGFscGhhLCBmaXJzdCwgbGFzdCk7XG4gIH1cblxuICBAcmV0dXJuICRlZGdlO1xufVxuXG5cbi8vIEdldCBMb2NhdGlvblxuLy8gLS0tLS0tLS0tLS0tXG4vLyBDYWxjdWxhdGUgbG9jYXRpb24gdmFsdWUgYmFzZWQgb24gZWRnZSwgaWYgcG9zc2libGVcbkBmdW5jdGlvbiBnZXQtbG9jYXRpb24oXG4gICRzcGFuXG4pIHtcbiAgJHNwYW4gICAgICAgOiBwYXJzZS1zcGFuKCRzcGFuKTtcbiAgJGxvY2F0aW9uICAgOiBzdXN5LWdldChsb2NhdGlvbiwgJHNwYW4pO1xuICAkZWRnZSAgICAgICA6IGdldC1lZGdlKCRzcGFuKTtcbiAgJG4gICAgICAgICAgOiBzdXN5LWdldChzcGFuLCAkc3Bhbik7XG5cbiAgQGlmICRlZGdlIGFuZCBub3QoJGxvY2F0aW9uKSBhbmQgdHlwZS1vZigkbikgPT0gbnVtYmVyIGFuZCB1bml0bGVzcygkbikge1xuICAgIEBpZiAkZWRnZSA9PSBmaXJzdCB7XG4gICAgICAkbG9jYXRpb246IDE7XG4gICAgfSBAZWxzZSBpZiAkZWRnZSA9PSBsYXN0IHtcbiAgICAgICRsb2NhdGlvbjogc3VzeS1jb3VudChzdXN5LWdldChjb2x1bW5zLCAkc3BhbikpIC0gJG4gKyAxO1xuICAgIH1cbiAgfVxuXG4gIEByZXR1cm4gJGxvY2F0aW9uXG59XG4iLCIvLyBGbG9hdCBFbmRzIEFQSVxuLy8gPT09PT09PT09PT09PT1cblxuLy8gU3VzeSBFbmQgRGVmYXVsdHNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tXG4vLyAtIFBSSVZBVEVcbkBpbmNsdWRlIHN1c3ktZGVmYXVsdHMoKFxuICBsYXN0LWZsb3c6IHRvLFxuKSk7XG5cbi8vIEZsb2F0IExhc3Rcbi8vIC0tLS0tLS0tLS1cbi8vIC0gWyRmbG93XSAgOiBsdHIgfCBydGxcbkBtaXhpbiBmbG9hdC1sYXN0KFxuICAkZmxvdzogbWFwLWdldCgkc3VzeS1kZWZhdWx0cywgZmxvdyksXG4gICRsYXN0LWZsb3c6IG1hcC1nZXQoJHN1c3ktZGVmYXVsdHMsIGxhc3QtZmxvdyksXG4gICRtYXJnaW46IDBcbikge1xuICAkdG86IHRvKCRmbG93KTtcblxuICAkb3V0cHV0OiAoXG4gICAgZmxvYXQ6IGlmKCRsYXN0LWZsb3cgPT0gdG8sICR0bywgbnVsbCksXG4gICAgbWFyZ2luLSN7JHRvfTogJG1hcmdpbixcbiAgKTtcblxuICBAaW5jbHVkZSBvdXRwdXQoJG91dHB1dCk7XG59XG5cbi8vIEZsb2F0IEZpcnN0XG4vLyAtLS0tLS0tLS0tLVxuLy8gLSBbJGZsb3ddICA6IGx0ciB8IHJ0bFxuQG1peGluIGZsb2F0LWZpcnN0KFxuICAkZmxvdzogbWFwLWdldCgkc3VzeS1kZWZhdWx0cywgZmxvdylcbikge1xuICAkb3V0cHV0OiAoXG4gICAgbWFyZ2luLSN7ZnJvbSgkZmxvdyl9OiAwLFxuICApO1xuXG4gIEBpbmNsdWRlIG91dHB1dCgkb3V0cHV0KTtcbn1cbiIsImJvZHkuY2FydCB7XG4gICAgLmVkaXRjYXJ0IHtcbiAgICAgICAgQGluY2x1ZGUgYWRhcHRpdmUtY29udGFpbmVyO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgICAgW2lkPVwiY29udGludWVTaG9wcGluZ1wiXSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBidG47XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAzNXB4O1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMzVweDtcblxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG4gICAgICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAvLyBUaGlzIHRhcmdldHMgdGhlIFwiY2hlY2tvdXRcIiBidXR0b24uXG4gICAgICAgIFtpZD1cImNvbnRpbnVlU2hvcHBpbmdcIl0gKyBhIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgICAgICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5pdGVtcyB7XG4gICAgICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICB9XG4gICAgICAgIC5pdGVtIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDI1cHggMHB4O1xuICAgICAgICAgICAgQGluY2x1ZGUgYWRkLWJvcmRlci1ib3R0b207XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgbWluLWhlaWdodDogMjBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5tb25pa2VyIHtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAyODBweDtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICBoMyB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgLnBhcnQubnVtYmVyIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAucHJpY2Uge1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDM0MHB4O1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogNjBweDtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5tdWx0aXBseS5zaWduIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiA0MTBweFxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGZpZWxkc2V0IHtcbiAgICAgICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLW1vYmlsZS1vbmx5KSB7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDE1cHggMDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDBweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgaW5wdXRbbmFtZT1cInF1YW50XCJdIHtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtbW9iaWxlLW9ubHkpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IC00MHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA5MHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDUwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBidXR0b25bdHlwZT1cInN1Ym1pdFwiXSB7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlcjogbWVkaXVtIG5vbmU7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDE1cHggMHB4O1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC1tb2JpbGUtb25seSkge1xuXG4gICAgICAgICAgICAgICAgICAgICAgIGZsb2F0OiByaWdodDtcblxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMHB4IDBweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGJ1dHRvblt0eXBlPVwic3VibWl0XCJdOmhvdmVyLFxuICAgICAgICAgICAgICAgIGJ1dHRvblt0eXBlPVwic3VibWl0XCJdOmFjdGl2ZSB7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBmb3JtLnVwZGF0ZS5xdWFudGl0eSB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtbW9iaWxlLW9ubHkpIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogLTIwcHg7XG4gICAgICAgICAgICAgICAgICAgIGlucHV0W3R5cGU9XCJ0ZXh0XCJdIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IC0yMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogMTAwcHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogMzgwcHg7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAyMDBweDtcbiAgICAgICAgICAgICAgICAgICAgaW5wdXRbdHlwZT1cInRleHRcIl0ge1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDQ1cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAtNXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAyMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgYnV0dG9uIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLW1vYmlsZS1vbmx5KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogLTIwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDVweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGZvcm0ucmVtb3ZlIHtcbiAgICAgICAgICAgICAgICBidXR0b24ge1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC1tb2JpbGUtb25seSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogLTUwcHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogNTUwcHg7XG4gICAgICAgICAgICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwifFwiO1xuICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogLTlweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5saW5lLnRvdGFsIHtcbiAgICAgICAgICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAyMHB4O1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLW1vYmlsZS1vbmx5KSB7XG5cbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogLTExMnB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuZGVjaXNpb24ge1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IDQwcHg7XG4gICAgICAgICAgICBcbiAgICAgICAgICAgIC5jaGVja291dCB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogNXB4IDA7XG4gICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMTBweCAwcHg7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJ0bjtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5yZW1vdmUuYWxsIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5jYWxjdWxhdGUuYm94IHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICB9XG4gICAgfVxufVxuXG5ib2R5LmNoZWNrb3V0IHtcbiAgICBoMSxcbiAgICBoMiB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB9XG4gICAgaDYge1xuICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICBtYXJnaW46IDE1cHggMDtcbiAgICB9XG4gICAgZmllbGRzZXQge1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgfVxuICAgIGhyIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gICAgLmVuYy1zdG9yZSB7XG4gICAgICAgIEBpbmNsdWRlIGFkYXB0aXZlLWNvbnRhaW5lcjtcbiAgICAgICAgLnJvdyB7XG4gICAgICAgICAgICBwYWRkaW5nOiA5cHggMDtcbiAgICAgICAgICAgIGxhYmVsLFxuICAgICAgICAgICAgaW5wdXQge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgbGFiZWw6bm90KC5lcnJvcikge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiA5cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpbnB1dDpub3QoW3R5cGU9XCJyYWRpb1wiXSkgICB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCUhaW1wb3J0YW50O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLy8gc3BlY2lhbCBzdHlsZXMgZm9yIHRoZSBhZGRyZXNzXG4gICAgICAgICAgICBbaWQ9XCJzdHJlZXQxXCJdLFxuICAgICAgICAgICAgW2lkPVwic3RyZWV0MlwiXSxcbiAgICAgICAgICAgIFtpZD1cImJpbGxpbmdfYWRkcmVzczFcIl0sXG4gICAgICAgICAgICBbaWQ9XCJiaWxsaW5nX2FkZHJlc3MyXCJdIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgc2VsZWN0IHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTgwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgYnV0dG9uLmNvbnRpbnVlIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDQ1cHg7XG4gICAgICAgIH1cbiAgICAgICAgW2lkPVwiY2hlY2tvdXRTdGVwMVwiXSB7XG4gICAgICAgICAgICBiciB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5ub3RpY2Uge1xuICAgICAgICAgICAgICAgIC8vIGFkZHMgdGhlIHNhbWUgcGFkZGluZyB0aGF0IHRoZSBmaWVsZHNldCBoYXNcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAuMzVlbSAuNjI1ZW0gLjc1ZW07XG4gICAgICAgICAgICAgICAgcDpsYXN0LW9mLXR5cGUge1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5sZWZ0IHtcbiAgICAgICAgICAgICAgICAvLyBUYXJnZXRzIHRoZSBcInNoaXBwaW5nIGFkZHJlc3NcIlxuICAgICAgICAgICAgICAgIGgyIHtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgYWRkLWJvcmRlci1ib3R0b207XG5cbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHNwYW4oZmlyc3QgNik7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLnJpZ2h0IHtcbiAgICAgICAgICAgICAgICBoMiB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1zdGFjay1kZWZhdWx0O1xuICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS4zO1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAtMzBweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiAxNDRweDtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgc3BhbihsYXN0IDYpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGZpZWxkc2V0IHtcbiAgICAgICAgICAgICAgICAuY29udGludWUge1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDYwMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC0xMjBweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBbaWQ9XCJjaGVja291dFN0ZXAyXCJdIHtcbiAgICAgICAgICAgIGJyIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaDIge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGFkZC1ib3JkZXItYm90dG9tO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLnNoaXBwaW5nLm1ldGhvZCB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IGluaGVyaXQhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIC5ub3RpY2Uge1xuICAgICAgICAgICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweCFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgdWwgIHtcbiAgICAgICAgICAgICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA0NXB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5pbnRlcm5hdGlvbmFsLXRheC1ub3RpY2Uge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDI1cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBidXR0b24uY29udGludWUge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMjE1cHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgYnV0dG9uW2Rpc2FibGVkPVwiXCJdIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkY29sb3ItdGV4dC1leHRyYWRpbTtcbiAgICAgICAgICAgICAgICAmOmhvdmVyLFxuICAgICAgICAgICAgICAgICY6YWN0aXZlIHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJGNvbG9yLXRleHQtZXh0cmFkaW07XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItdGV4dC1kZWZhdWx0O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBbaWQ9XCJjaGVja291dFN0ZXAzXCJdIHtcbiAgICAgICAgICAgIGgyIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBhZGQtYm9yZGVyLWJvdHRvbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5sZWZ0IHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgc3BhbihmaXJzdCA2KTtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy10b3A6IDQ3cHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLnJpZ2h0IHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgc3BhbihsYXN0IDYpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIFtpZD1cImNvcHlBZGRyZXNzXCJdIHtcbiAgICAgICAgICAgICAgICBmbG9hdDogaW5oZXJpdCFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogaW5oZXJpdCFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiBpbmhlcml0IWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyNXB4IWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogaW5oZXJpdCFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAzM3B4IWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAucm93LmNyZWRpdC5jYXJkIHtcbiAgICAgICAgICAgICAgICB1bCB7XG4gICAgICAgICAgICAgICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogNXB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBsYWJlbCxcbiAgICAgICAgICAgICAgICBpbnB1dCB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgaW5wdXQge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxMnB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5ub3RpY2Uge1xuICAgICAgICAgICAgICAgIC8vIGFkZHMgdGhlIHNhbWUgcGFkZGluZyB0aGF0IHRoZSBmaWVsZHNldCBoYXNcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAuMzVlbSAuNjI1ZW0gLjc1ZW07XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBidXR0b24uY29udGludWUge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAzNTVweDtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC0xNDZweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgW2lkPVwiY2hlY2tvdXRTdGVwNFwiXSB7XG4gICAgICAgICAgICBoMiB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYWRkLWJvcmRlci1ib3R0b207XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAubGVmdC5jb2x1bW4ge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBzcGFuKGZpcnN0IDYpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5yaWdodC5jb2x1bW4ge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBzcGFuKGxhc3QgNik7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLm9yZGVyLnN1bW1hcnkge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHNwYW4oMTIpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLml0ZW1zIHtcbiAgICAgICAgICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5pdGVtIHtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDc2cHg7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYWRkLWJvcmRlci1ib3R0b207XG4gICAgICAgICAgICAgICAgdWwuZGV0YWlscyB7XG4gICAgICAgICAgICAgICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgICAgICAgICAgICAgbGk6bnRoLWNoaWxkKDEpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDEwcHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgbGk6bnRoLWNoaWxkKDEpLFxuICAgICAgICAgICAgICAgICAgICBsaTpudGgtY2hpbGQoMikge1xuICAgICAgICAgICAgICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgbGk6bnRoLWNoaWxkKDMpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHVsLnRvdGFscyB7XG4gICAgICAgICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IG5vbmU7XG4gICAgICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgYnV0dG9uLmNvbnRpbnVlIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMTQwcHg7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAyMjVweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgLnppcDQtbG9va3VwLWxpbmsge1xuICAgICAgICBtYXJnaW4tdG9wOiA5cHg7XG4gICAgICAgIEBpbmNsdWRlIGJ0bjtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgfVxuICAgIGxhYmVsLmVycm9yIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gICAgICAgIG1hcmdpbi10b3A6IC0yMnB4O1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgICAgIGNvbG9yOiByZ2IoMjA5LCAxMjEsIDApO1xuICAgICAgICBwYWRkaW5nOiAzcHggNXB4IDFweDtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gICAgfVxuXG4gICAgLmVycm9yW2Zvcj1cInN0cmVldDFcIl0sXG4gICAgLmVycm9yW2Zvcj1cImJpbGxpbmdfYWRkcmVzczFcIl0ge1xuICAgICAgICBtYXJnaW4tdG9wOiAtMzdweDtcbiAgICB9XG5cbiAgICAuZXJyb3JbZm9yPVwic3RhdGVwcm92XCJdLFxuICAgIC5lcnJvcltmb3I9XCJiaWxsaW5nX3N0YXRlcHJvdlwiXSB7XG4gICAgICAgIG1hcmdpbi10b3A6IC00OXB4O1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogLTI1cHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBsYWJlbC5lcnJvcltmb3I9XCJiaWxsaW5nX2FkZHJlc3MxXCJdIHtcbiAgICAgICAgbWFyZ2luLXRvcDogLTQwcHg7XG4gICAgfVxuXG4gICAgbGFiZWwuZXJyb3JbZm9yPVwiYmlsbGluZ19zdGF0ZXByb3ZcIl0sXG4gICAgbGFiZWwuZXJyb3JbZm9yPVwiYmlsbGluZ19jb3VudHJ5XCJdIHtcbiAgICAgICAgbWFyZ2luLXRvcDogLTQ5cHg7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmNvc3Rub25kaXNjb3VudCB7XG4gICAgICAgIGNvbG9yOiBicm93bjtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBsaW5lLXRocm91Z2g7XG4gICAgfVxuICAgIC8vIFdvcmsgYXJvdW5kIHJlZHVuZGFudCBidXR0b24gPiBzcGFuLmJ1dHRvbiBtYXJrdXBcbiAgICA6bm90KGJ1dHRvbikgPiBzcGFuLmJ1dHRvbiB7XG4gICAgICAgIEBpbmNsdWRlIGJ0bjtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgfVxufVxuIiwiQG1peGluIGFkZC1ib3JkZXItYm90dG9tIHtcbiAgICBib3JkZXItYm90dG9tOiBzb2xpZCAxcHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpO1xufVxuIiwiYm9keS5hYm91dCB7XG4gICAgLy8gdGhpcyBvdmVycmlkZXMgdGhlIG9yYWduZSBiYWNrZ3JvdW5kIGZvciB0aGUgcmVzdCBvZiB0aGUgc2l0ZS5cbiAgICBiYWNrZ3JvdW5kOiAjNTM5M2QwO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG5cbiAgICAvLyBDdXN0b20gYnJlYWtwb2ludHNcbiAgICAkYnAtbWlkLXRhYmxldDogNTk5cHg7IC8vIG9uZSBwaXhlbCBzaHkgb2YgaW5pdGlhbCBpbWFnZSBzaXplXG4gICAgJGJwLXJlYWxseS1iaWc6IDE2OTlweDsgLy8gb25lIHBpeGVsIHNoeSBvZiBsYXN0IGltYWdlIHNpemUgYmVmb3JlIGdvaW5nIHRvIGFjdHVhbCBzaXplLlxuICAgICRicC1kZXNrdG9wLW9ubHk6IDEyMDBweDtcbiAgICAvLyBTZXQgYSBjdXN0b20gaGVhZGVyIGNvbG9yIChibHVlKSBzaW5jZSBvcmFuZ2Ugd291bGQgbG9vayBvZGQgaGVyZS5cbiAgICBoZWFkZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDgzLCAxNDcsIDIwOCwgMC4wKTtcbiAgICAgICAgJi5tYWluLW5hdi1zY3JvbGxlZCB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDgzLCAxNDcsIDIwOCwgMC45KTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBtYWluIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSg4MywgMTQ3LCAyMDgsIC45KTtcbiAgICAgICAgYmFja2dyb3VuZDpcbiAgICAgICAgICAgIGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sIHJnYmEoMjMsIDIzLCAyMywgMC4wKSAzMjBweCwgcmdiYSgyMywgMjMsIDIzLCAxLjApIDM3MHB4KSxcbiAgICAgICAgICAgIHVybChcIi4uL2ltYWdlcy9hYm91dC1iYWNrZ3JvdW5kLmpwZ1wiKTtcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdCwgbm8tcmVwZWF0O1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwJSAwJSwgNTAlIDAlO1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCUgMTAwJSwgNTk5cHggMzk5cHg7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLW1pZC10YWJsZXQpIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6XG4gICAgICAgICAgICAgICAgbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgcmdiYSgyMywgMjMsIDIzLCAwLjApIDQwMHB4LCByZ2JhKDIzLCAyMywgMjMsIDEuMCkgNDUwcHgpLFxuICAgICAgICAgICAgICAgIHVybChcIi4uL2ltYWdlcy9hYm91dC1iYWNrZ3JvdW5kLmpwZ1wiKTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQsIG5vLXJlcGVhdDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDEwMCUgMTAwJSwgNTAlIDAlO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAxMDAlIDEwMCUsIDc2OHB4IDUxMXB4O1xuICAgICAgICB9XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgICAgICAgYmFja2dyb3VuZDpcbiAgICAgICAgICAgICAgICBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCByZ2JhKDIzLCAyMywgMjMsIDAuMCkgNTAwcHgsIHJnYmEoMjMsIDIzLCAyMywgMS4wKSA2MDBweCksXG4gICAgICAgICAgICAgICAgdXJsKFwiLi4vaW1hZ2VzL2Fib3V0LWJhY2tncm91bmQuanBnXCIpO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdCwgbm8tcmVwZWF0O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMTAwJSAxMDAlLCA1MCUgLTEyNXB4O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAxMDAlIDEwMCUsIDEyMDBweCA3OThweDtcbiAgICAgICAgfVxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC1kZXNrdG9wLW9ubHkpIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6XG4gICAgICAgICAgICAgICAgbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgcmdiYSgyMywgMjMsIDIzLCAwKSA1MDNweCwgcmdiYSgyMywgMjMsIDIzLCAxLjApIDYzMHB4KSxcbiAgICAgICAgICAgICAgICB1cmwoXCIuLi9pbWFnZXMvYWJvdXQtYmFja2dyb3VuZC5qcGdcIik7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0LCBuby1yZXBlYXQ7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAxMDAlIDEwMCUsIDUwJSAtMjI1cHg7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCUgMTAwJSwgMTcwMHB4IDExMzJweDtcbiAgICAgICAgfVxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC1yZWFsbHktYmlnKSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOlxuICAgICAgICAgICAgICAgIGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sIHJnYmEoMjMsIDIzLCAyMywgMC4wKSA2NzVweCwgcmdiYSgyMywgMjMsIDIzLCAxLjApIDgwMHB4KSxcbiAgICAgICAgICAgICAgICB1cmwoXCIuLi9pbWFnZXMvYWJvdXQtYmFja2dyb3VuZC5qcGdcIik7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoODMsIDE0NywgMjA4KTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQsIG5vLXJlcGVhdDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDEwMCUgMTAwJSwgNTAlIC00MjVweCwgMTAwJSAxMDAlO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAxMDAlIDEwMCUsIDI0MDBweCAxNTMwcHgsIDEwMCUgMTAwJTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5jb250ZW50IHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGFkYXB0aXZlLWNvbnRhaW5lcjtcbiAgICAgICAgfVxuXG4gICAgICAgIGgxIHtcbiAgICAgICAgICAgIC8vIG9uIG1vYmlsZSBvbmx5IHRoZSBoMSBuZWVkcyB0byBiZSBwdWxsZWQgdXAganVzdCBhIGxpdHRsZS5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLW1vYmlsZS1vbmx5KSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAuM2VtIDAgLjY3ZW07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgc2VjdGlvbi5pbnRybyB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIH1cblxuICAgIH1cbiAgICAuYWJvdXQtY29weSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDI1MHB4O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA0NXB4O1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLW1pZC10YWJsZXQpIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDMwMHB4O1xuICAgICAgICAgICAgQGluY2x1ZGUgc3BhbigxMSBvZiAxMik7XG4gICAgICAgICAgICBAaW5jbHVkZSBwdXNoKDAuNSk7XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiA0NTBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXJlYWxseS1iaWcpIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDQ1MHB4O1xuICAgICAgICB9XG4gICAgICAgIHAsXG4gICAgICAgIGEge1xuICAgICAgICAgICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAvLyBXZSdyZSBhYmxlIHRvIHVzZSB0aGUgYmFja2dyb3VuZCBjb2xvciBmcm9tIHRoZSBtYWluIHBhZ2UgZm9yIHRoaXMgaW5zdGVhZC5cbiAgICAvLyBUaGVyZSBpcyBhbHNvIGEgYm9yZGVyIGFkZGVkIHRvIGJvb3RcbiAgICBmb290ZXIge1xuICAgICAgICBib3JkZXItdG9wOiBzb2xpZCAxcHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE1KTtcbiAgICB9XG59XG4iLCJib2R5LnBvbGljeSB7XG4gICAgbWFpbiB7XG4gICAgICAgIEBpbmNsdWRlIGFkYXB0aXZlLWNvbnRhaW5lcjtcblxuICAgICAgICBtYXJnaW4tYm90dG9tOiA0NXB4O1xuXG4gICAgICAgIHNlY3Rpb24ge1xuXG4gICAgICAgICAgICB1bCB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgZmx1c2gtbGlzdDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICBoMSxcbiAgICBoMSB+IHAge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgfVxuICAgIGgxIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMHB4O1xuICAgIH1cbiAgICBoMSB+IHB7XG4gICAgICAgIG1hcmdpbi10b3A6IDBweDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNDVweDtcbiAgICB9XG4gICAgaDMge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICB+IHAge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMHB4O1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiLy8gdGhpcyBpcyB0byBnbyBvbiB0aGUgdWwgcnVsZVxuXG4vKlxudWwge1xuICAgIEBpbmNsdWRlIGZsdXNoLWxpc3Q7XG59XG4qL1xuXG5AbWl4aW4gZmx1c2gtbGlzdCB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgbGkge1xuICAgICAgICBkaXNwbGF5OiB0YWJsZS1yb3c7XG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwi4oCiXCI7XG4gICAgICAgICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMC40ZW07XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCJib2R5LndhcnJhbnR5LFxuYm9keS50ZXJtcyB7XG4gICAgbWFpbiB7XG4gICAgICAgIEBpbmNsdWRlIGFkYXB0aXZlLWNvbnRhaW5lcjtcblxuICAgICAgICBtYXJnaW4tYm90dG9tOiA1MHB4O1xuICAgIH1cbiAgICBoMSxcbiAgICBoMXtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIH1cbiAgICBoMSB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB9XG4gICAgaDMge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICB+IHAge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMHB4O1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiYm9keS5wcm9kdWN0cyB7XG4gICAgbWFpbiB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgaDIge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgICAgfVxuICAgICAgICAuY29udGVudCB7XG4gICAgICAgICAgICBAaW5jbHVkZSBhZGFwdGl2ZS1jb250YWluZXI7XG4gICAgICAgIH1cbiAgICAgICAgYS5jdGEge1xuICAgICAgICAgICAgQGluY2x1ZGUgYnRuO1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB9XG4gICAgICAgIHNlY3Rpb24uaW50cm8ge1xuICAgICAgICAgICAgcGFkZGluZzogNTVweCAwO1xuICAgICAgICAgICAgcCxcbiAgICAgICAgICAgIGgyIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHNwYW4oMTIpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgc3BhbigxMCk7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHB1c2goMSk7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDUwcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDQ1cHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmludHJvLWNvcHkge1xuICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDE1cHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgc2VjdGlvbi5hY2Nlc3NvcmllcyB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOlxuICAgICAgICAgICAgICAgIGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sIHJnYmEoMjIsMjIsMjIsMSkgMCUsIHJnYmEoMzUsIDM1LCAzNSwgMSkgMTAwJSk7XG4gICAgICAgICAgICBwYWRkaW5nOiA3MHB4IDA7XG4gICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHNwYW4oMTApO1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHB1c2goMSk7XG4gICAgICAgICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBoMiB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5hY2Nlc3Nvcmllcy1jb3B5IHtcbiAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMTVweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBzcGFuKDgpO1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBwdXNoKDApOyAvLyBvdmVycmlkZXMgcHVzaCgyKSBmcm9tIG1vYmlsZVxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAtNDBweDtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAyNzBweDtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIC5hY2Nlc3Nvcmllcy1jb3B5IHtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgc3Bhbig0IG5vLWd1dHRlcik7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDQ1cHg7XG4gICAgICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMTVweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBzZWN0aW9uLmRlYWxlcnMge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1hZ2VzL2RlYWxlcnMtbWFwLnBuZ1wiKTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA1MCUgMjJweDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogNjU4cHggMjY4cHg7XG4gICAgICAgICAgICBwYWRkaW5nOiA3MHB4IDA7XG4gICAgICAgICAgICBoZWlnaHQ6IDMxMnB4O1xuICAgICAgICAgICAgaDIge1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDE1cHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMTE1cHg7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDI1cHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogNTAlIDYzcHg7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiA4NzdweCAzNTdweDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDQ4M3B4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmNvbnRlbnQge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAzMDBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbiIsImJvZHkuaGVscCB7XG4gICAgYS5jdGEge1xuICAgICAgICBAaW5jbHVkZSBidG47XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB9XG4gICAgc2VjdGlvbi5oZWxwLXNlY3Rpb24sXG4gICAgc2VjdGlvbi5jb250YWN0LXNlY3Rpb24sXG4gICAgc2VjdGlvbi5jb250YWN0LWZvcm0ge1xuICAgICAgICBAaW5jbHVkZSBhZGFwdGl2ZS1jb250YWluZXI7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDU1cHg7XG4gICAgICAgIH1cbiAgICB9XG4gICAgc2VjdGlvbi5oZWxwLXNlY3Rpb24se1xuICAgICAgICBkaXYge1xuICAgICAgICAgICAgQGluY2x1ZGUgc3BhbigxMik7XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBzcGFuKDQpO1xuICAgICAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHNwYW4obGFzdCA0KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgYS5jdGEge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMjA0cHg7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxMXB4O1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDVweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgc2VjdGlvbi5jb250YWN0LXNlY3Rpb24ge1xuICAgICAgICBkaXYge1xuICAgICAgICAgICAgQGluY2x1ZGUgc3BhbigxMik7XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBzcGFuKDYpO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICAgICAgICAgICAgJjpudGgtY2hpbGQoMm4rMSkge1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBzcGFuKGxhc3QgNik7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIHNlY3Rpb24uaGVscC1zZWN0aW9uLFxuICAgIHNlY3Rpb24uY29udGFjdC1zZWN0aW9uIHtcbiAgICAgICAgaDEsXG4gICAgICAgIGgyIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHNwYW4oMTIpO1xuICAgICAgICB9XG4gICAgICAgIGgxIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDI1cHg7XG4gICAgICAgIH1cbiAgICB9XG4gICAgc2VjdGlvbi5oZWxwLXNlY3Rpb24ge1xuICAgICAgICBkaXYge1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtbW9iaWxlLW9ubHkpIHtcbiAgICAgICAgICAgICAgICAmOm5vdCg6Zmlyc3Qtb2YtdHlwZSkge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDU1cHggMCAwO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGZpZ3VyZSxcbiAgICAgICAgICAgIGgzLFxuICAgICAgICAgICAgcCxcbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaDMge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiA1cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBmaWd1cmUge1xuICAgICAgICAgICAgICAgIG1heC1oZWlnaHQ6IDE0MHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICBtYXgtaGVpZ2h0OiAxMjBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICBzZWN0aW9uLmNvbnRhY3Qtc2VjdGlvbiB7XG4gICAgICAgIEBpbmNsdWRlIGFkYXB0aXZlLWNvbnRhaW5lcjtcbiAgICAgICAgbWFyZ2luLXRvcDogMjVweDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNTVweDtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiA1cHg7XG4gICAgICAgIH1cbiAgICAgICAgaDIge1xuICAgICAgICAgICAgQGluY2x1ZGUgaGVhZGluZy1saW5lcygkaGVhZGluZzogMik7XG4gICAgICAgIH1cblxuICAgICAgICBkaXYubW9kZXMtb2YtY29udGFjdCB7XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGRpdiB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGdhbGxlcnkoNiBvZiAxMik7XG4gICAgICAgICAgICAgICAgICAgIGgzIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDVweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDBweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICBhZGRyZXNzIHtcbiAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIH1cbiAgICBhLmN0YS1waG9uZSxcbiAgICBhLmN0YS1lbWFpbCB7XG4gICAgICAgIGNvbG9yOiAkY29sb3ItdGV4dC1kZWZhdWx0O1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgfVxufVxuXG4vLyBSRVRVUk5TIFBBR0VcbmJvZHkucmV0dXJucyB7XG4gICAgc2VjdGlvbiB7XG4gICAgICAgIEBpbmNsdWRlIGFkYXB0aXZlLWNvbnRhaW5lcjtcbiAgICB9XG4gICAgc2VjdGlvbi5pbnRybyB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB9XG4gICAgc2VjdGlvbi5jb250ZW50IHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNDVweDtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA3MHB4O1xuICAgICAgICB9XG4gICAgICAgIHVsIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGZsdXNoLWxpc3Q7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8vIFJFTU9URSBTVVBQT1JUIFBBR0VcbmJvZHkucmVtb3RlLXN1cHBvcnQge1xuICAgIHNlY3Rpb24ge1xuICAgICAgICBAaW5jbHVkZSBhZGFwdGl2ZS1jb250YWluZXI7XG4gICAgfVxuICAgIHNlY3Rpb24uaW50cm8ge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgfVxufVxuIiwiQG1peGluIGhlYWRpbmctbGluZXMoJHdpZHRoLW9mLWxpbmVzOiBudWxsLCAkaGVhZGluZzogMSkge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBAaWYgJHdpZHRoLW9mLWxpbmVzID09IG51bGwge1xuICAgICAgICAkd2lkdGgtb2YtbGluZXM6IDIwMHB4O1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDMwcHg7XG4gICAgfVxuICAgICY6OmJlZm9yZSxcbiAgICAmOjphZnRlciB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IHNvbGlkIDFweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSk7XG4gICAgICAgICAgICB3aWR0aDogJHdpZHRoLW9mLWxpbmVzO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMjVweDtcbiAgICAgICAgfVxuICAgICAgICBAaWYgJGhlYWRpbmcgPT0gMiB7XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAyNXB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgICY6OmJlZm9yZSB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIH1cbiAgICB9XG4gICAgJjo6YWZ0ZXIge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsImJvZHkuZm91ci1vaC1mb3VyIHtcbiAgICBzZWN0aW9uLmNvbnRlbnQge1xuICAgICAgICBAaW5jbHVkZSBhZGFwdGl2ZS1jb250YWluZXI7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNTVweDtcbiAgICAgICAgaDEge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMzVweDtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxMjVweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBoMiB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiA1cHg7XG4gICAgICAgIH1cbiAgICAgICAgYS5jdGEge1xuICAgICAgICAgICAgQGluY2x1ZGUgYnRuO1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogNDBweDtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsImJvZHkuZGV2ZWxvcGVycyB7XG4gICAgbWFpbiB7XG4gICAgICAgIGEuY3RhIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJ0bjtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgfVxuICAgICAgICBzZWN0aW9uIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGFkYXB0aXZlLWNvbnRhaW5lcjtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDM1cHg7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMjVweDtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiA1NXB4O1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDc1cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgc2VjdGlvbi5pbnRybyB7XG4gICAgICAgICAgICBoMSxcbiAgICAgICAgICAgIGRpdiB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgc3BhbigxMik7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBkaXYge1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHNwYW4oNik7XG4gICAgICAgICAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBzcGFuKGxhc3QgNik7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBAaW5jbHVkZSBhZGQtYm9yZGVyLWJvdHRvbTtcbiAgICAgICAgfVxuICAgICAgICBzZWN0aW9uLnBob25lLWNvbnRhY3Qge1xuICAgICAgICAgICAgaDEge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMzBweDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAtMTBweDtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAzNnB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGEuY3RhLXBob25lIHtcbiAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBAaW5jbHVkZSBhZGQtYm9yZGVyLWJvdHRvbTtcbiAgICAgICAgfVxuICAgICAgICBzZWN0aW9uLnJlcXVlc3Qtc2VjdGlvbiB7XG4gICAgICAgICAgICBoMiB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogLTEwcHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGEuY3RhIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxNXB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgIH1cbiAgICB9XG59XG4iLCJib2R5LmRlYWxlcnMge1xuICAgIG1haW4ge1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWFnZXMvZGVhbGVycy1tYXAucG5nXCIpO1xuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA1MCUgODVweDtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiA2NThweCAyNjhweDtcbiAgICAgICAgcGFkZGluZzogNzBweCAwO1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDUwJSA5NXB4O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAxMjAwcHggYXV0bztcbiAgICAgICAgfVxuICAgICAgICBzZWN0aW9uIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGFkYXB0aXZlLWNvbnRhaW5lcjtcbiAgICAgICAgfVxuICAgICAgICBzZWN0aW9uLmludHJvIHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgfVxuICAgICAgICBbaWQ9XCJkZWFsZXJzXCJdLFxuICAgICAgICBbaWQ9XCJkaXN0cmlidXRvcnNcIl0ge1xuICAgICAgICAgICAgdWwge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IC0zMHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDI3cHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC0zMnB4O1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBnYWxsZXJ5KDQpO1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDgwcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgLmljb24tbGluay1leHQge1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lO1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxM3B4O1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAycHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGNvbG9yLXRleHQtZGVmYXVsdDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBbaWQ9XCJkaXN0cmlidXRvcnNcIl0ge1xuICAgICAgICAgICAgaDIge1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBoZWFkaW5nLWxpbmVzKCRoZWFkaW5nOjIpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuIiwiYm9keS5jaGFuZ2Vsb2dzIHtcbiAgICBzZWN0aW9uIHtcbiAgICAgICAgQGluY2x1ZGUgYWRhcHRpdmUtY29udGFpbmVyO1xuICAgIH1cbiAgICBbaWQ9XCJpbnRyb1wiXSB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB9XG59XG5baWQ9XCJjaGFuZ2Vsb2dzXCJdIHtcbiAgICBAaW5jbHVkZSBhZGFwdGl2ZS1jb250YWluZXI7XG4gICAgbWFyZ2luLXRvcDogMzVweDtcbiAgICBtYXJnaW4tYm90dG9tOiAzNXB4O1xuICAgIC5jaGFuZ2Vsb2cge1xuICAgICAgICBAaW5jbHVkZSBjb250YWluZXI7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAyNXB4O1xuICAgICAgICAmOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgICAgICAgQGluY2x1ZGUgYWRkLWJvcmRlci1ib3R0b207XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICAgICAgfVxuICAgIH1cbiAgICAudmVyc2lvbi1kZXRhaWxzIHtcbiAgICAgICAgQGluY2x1ZGUgY29udGFpbmVyO1xuICAgICAgICAucG9zdGVkLWRhdGUge1xuICAgICAgICAgICAgY2xlYXI6IGJvdGg7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLmRldGFpbHMge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICB9XG4gICAgfVxuICAgIC50cmlnZ2VyLWNoYW5nZWxvZyB7XG4gICAgICAgIGRpdiB7XG4gICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICBAaW5jbHVkZSBzcGFuKDEgb2YgMiBuby1ndXR0ZXJzKTtcbiAgICAgICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAyNHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIC50b2dnbGUtaW5kaWNhdG9yIHtcbiAgICAgICAgd2lkdGg6IDI0cHg7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC05MGRlZyk7XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAuM3MgZWFzZTtcbiAgICAgICAgbWFyZ2luLXRvcDogMTlweDtcbiAgICAgICAgJi5vcGVuIHtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgICAgICB9XG4gICAgfVxuICAgIGgzIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgICAgYSB7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG4gICAgcCB7XG4gICAgICAgIG1hcmdpbi10b3A6IDVweDtcbiAgICB9XG4gICAgLmNvbGxhcHNlLXRyaWdnZXIge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgfVxuICAgIGEuY3RhIHtcbiAgICAgICAgQGluY2x1ZGUgYnRuO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHdpZHRoOiAyMzVweDtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG4gICAgICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAyMnB4O1xuICAgICAgICB9XG4gICAgICAgICYuZG93bmxvYWQtbGluayB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAxNXB4O1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMjJweDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDE1cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgLmNoYW5nZXMge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICBtaW4td2lkdGg6IDEwMCU7XG4gICAgICAgIEBpbmNsdWRlIGNvbnRhaW5lcjtcbiAgICAgICAgdWwge1xuICAgICAgICAgICAgQGluY2x1ZGUgZmx1c2gtbGlzdDtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIkBpbXBvcnQgXCIuLi9oZWxwZXJzL2J1dHRvbnNcIjtcbkBpbXBvcnQgXCIuLi9oZWxwZXJzL2JvcmRlcnNcIjtcbkBpbXBvcnQgXCIuLi9oZWxwZXJzL2xpc3RzXCI7XG5AaW1wb3J0IFwiLi4vcGFydGlhbHMvY2hhbmdlbG9nc1wiO1xuXG5ib2R5LmRvd25sb2FkcyB7XG4gICAgbWFpbiB7XG4gICAgICAgIHNlY3Rpb24ge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGFkYXB0aXZlLWNvbnRhaW5lcjtcbiAgICAgICAgICAgICAgICBhLmN0YSB7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJ0bjtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGNvbG9yLXRleHQtZGVmYXVsdDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgfVxuXG4gICAgW2lkPVwiaW50cm9cIl0ge1xuICAgICAgICBoMSB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIH1cbiAgICB9XG4gICAgW2lkPVwidHJhY2tpci1zb2Z0d2FyZVwiXSB7XG4gICAgICAgIC50cmFja2lyLWNhbGxvdXQge1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgc3Bhbig4KTtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBwdXNoKDIpO1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGgzIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuc2Vjb25kYXJ5IHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogLTIwcHg7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDI2cHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGEuY3RhIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDEwcHggMjBweDtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDUycHg7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiA3MCU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIFtpZD1cImFsZXJ0cy1hbmQtcmVxdWlyZW1lbnRzXCJdIHtcbiAgICAgICAgbWFyZ2luLXRvcDogNTBweDtcblxuICAgICAgICAuYWxlcnRzLWFuZC1ub3RpY2VzLFxuICAgICAgICAuc3lzdGVtLXJlcXVpcmVtZW50cyB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgICAgQGluY2x1ZGUgc3BhbigxMik7XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBzcGFuKDYpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgdWwge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZsdXNoLWxpc3Q7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLnN5c3RlbS1yZXF1aXJlbWVudHMge1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgc3BhbihsYXN0IDYpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIFtpZD1cImRyaXZlcnNcIl0ge1xuICAgICAgICBtYXJnaW4tdG9wOiA1MHB4O1xuXG4gICAgICAgIGgyIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGhlYWRpbmctbGluZXMoJGhlYWRpbmc6IDIpO1xuICAgICAgICB9XG4gICAgICAgIC5idXR0b24ge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogNjBweDtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIEBpbmNsdWRlIHNwYW4oMTIpO1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgc3Bhbig2KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuYnV0dG9uOmxhc3Qtb2YtdHlwZSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBzcGFuKGxhc3QgNik7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgW2lkPVwibWFudWFsc1wiXSB7XG4gICAgICAgIGgyIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGhlYWRpbmctbGluZXMoJGhlYWRpbmc6IDIpO1xuICAgICAgICB9XG4gICAgICAgIC5tYW51YWxzIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDYwcHg7XG4gICAgICAgICAgICBmaWd1cmUge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDUwcHg7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBnYWxsZXJ5KDQpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTVweDtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxMzhweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogM3B4IGF1dG87XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAmOmZpcnN0LW9mLXR5cGUge1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgYS5jdGEge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxNXB4O1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDIwcHg7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDEwcHggNTJweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG5ib2R5LnNvZnR3YXJlLW5ld3Mge1xuICAgIHNlY3Rpb24ge1xuICAgICAgICBAaW5jbHVkZSBhZGFwdGl2ZS1jb250YWluZXI7XG4gICAgfVxuICAgIFtpZD1cImludHJvXCJdIHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIH1cbn1cblxuYm9keS5zb2Z0d2FyZS1uZXdzIHtcbiAgICBzZWN0aW9uIHtcbiAgICAgICAgQGluY2x1ZGUgYWRhcHRpdmUtY29udGFpbmVyO1xuICAgIH1cbiAgICBbaWQ9XCJpbnRyb1wiXSB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB9XG4gICAgLmRvd25sb2FkLWFuZC1tYW51YWwgYSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBwYWRkaW5nLXRvcDogMTBweDtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMjBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICBbaWQ9XCJjaGFuZ2Vsb2dcIl0ge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA0NXB4O1xuICAgIH1cblxuXG59XG5cbmJvZHkucHJldmlvdXMtcmVsZWFzZXMge1xuICAgIHNlY3Rpb24ge1xuICAgICAgICBAaW5jbHVkZSBhZGFwdGl2ZS1jb250YWluZXI7XG4gICAgfVxuICAgIHNlY3Rpb25baWQ9XCJpbnRyb1wiXSB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB9XG4gICAgLnJldHVybi1saW5rIHtcbiAgICAgICAgbWFyZ2luOiAxMHB4IDA7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgICBzZWN0aW9uW2lkPVwicmVsZWFzZXNcIl0ge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAzNXB4O1xuICAgICAgICAuZG93bmxvYWQge1xuICAgICAgICAgICAgQGluY2x1ZGUgY29udGFpbmVyO1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDI1cHg7XG4gICAgICAgICAgICAmOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGFkZC1ib3JkZXItYm90dG9tO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLmRldGFpbHMge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG4gICAgICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBoMyB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgICB9XG4gICAgICAgIHAge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogNXB4O1xuICAgICAgICB9XG4gICAgICAgIC5kb3dubG9hZC1saW5rIHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgfVxuICAgICAgICBhLmN0YSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBidG47XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMjJweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi8vIEFuaW1hdGUgNkRPRiBNb3ZpbmcgSGVhZHNcbkBrZXlmcmFtZXMgbW92ZWhlYWQge1xuICAgIGZyb20ge1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBsZWZ0IGNlbnRlcjtcbiAgICB9XG4gICAgdG8ge1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTIwMDBweDtcbiAgICB9XG59XG5cblxuQGltcG9ydCBcIi4uL3BhcnRpYWxzL2ZlYXR1cmVkLXByb2R1Y3RzXCI7XG5cbmJvZHkudHJhY2tpcjUge1xuICAgIG1haW4ge1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIH1cbiAgICBzZWN0aW9uIHtcbiAgICAgICAgQGluY2x1ZGUgYWRhcHRpdmUtY29udGFpbmVyO1xuICAgIH1cblxuICAgIHNlY3Rpb24uaW50cm8ge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgfVxuXG4gICAgLyogQmFja2dyb3VuZDogKi9cbiAgICBkaXYubW9uaXRvciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOlxuICAgICAgICAgICAgICAgIHVybChcIi4uL2ltYWdlcy90cmFja2lyLTUtZm9yLW1vbml0b3IucG5nXCIpLFxuICAgICAgICAgICAgICAgIHVybChcIi4uL2ltYWdlcy9tb25pdG9yLWJlemVsLnBuZ1wiKSxcbiAgICAgICAgICAgICAgICByYWRpYWwtZ3JhZGllbnQoZWxsaXBzZSBhdCB0b3AsIHJnYmEoNTksNTksNTksMSkgMCUsIHJnYmEoMCwwLDAsMSkgMTAwJSk7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDpcbiAgICAgICAgICAgICAgICBuby1yZXBlYXQsXG4gICAgICAgICAgICAgICAgcmVwZWF0LXgsXG4gICAgICAgICAgICAgICAgbm8tcmVwZWF0O1xuXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOlxuICAgICAgICAgICAgICAgIDUwJSA0M3B4LFxuICAgICAgICAgICAgICAgIDBweCAyNjVweCxcbiAgICAgICAgICAgICAgICAwcHggMjcwcHg7XG5cbiAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTpcbiAgICAgICAgICAgICAgICAzNzBweCxcbiAgICAgICAgICAgICAgICAxMDAlIDY1cHgsXG4gICAgICAgICAgICAgICAgYXV0bztcblxuICAgICAgICAgICAgcGFkZGluZy10b3A6IDI5MHB4O1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjpcbiAgICAgICAgICAgICAgICAgICAgNTAlIDQ0cHgsXG4gICAgICAgICAgICAgICAgICAgIDBweCAzMzBweCxcbiAgICAgICAgICAgICAgICAgICAgMHB4IDM0NHB4O1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTpcbiAgICAgICAgICAgICAgICAgICAgNDc1cHggYXV0byxcbiAgICAgICAgICAgICAgICAgICAgMTAwJSA2NXB4LFxuICAgICAgICAgICAgICAgICAgICBhdXRvIGF1dG87XG4gICAgICAgICAgICAgICAgcGFkZGluZy10b3A6IDM5MHB4O1xuICAgICAgICAgICAgfVxuICAgIH1cblxuICAgIC5zaXhkb0Yge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIGgyIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDUwcHg7XG4gICAgICAgIH1cbiAgICAgICAgPiBoMiBzcGFuIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLW1vYmlsZS1vbmx5KSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgcCB7XG4gICAgICAgICAgICBjb2xvcjogJGNvbG9yLXRleHQtZGltO1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgc3Bhbig4KTtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBwdXNoKDIpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgZGl2LmhlYWRzIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHNwYW4oMTAwJSk7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA0NXB4O1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgIC5hbmltYXRpb24tc3BvdCB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMHB4O1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMTVweCAxNXB4O1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgZ2FsbGVyeSgyKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgJi5ob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgIC5zcHJpdGUge1xuICAgICAgICAgICAgICAgICAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IC0xNzVweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGFuaW1hdGlvbjogbW92ZWhlYWQgMnMgc3RlcHMoMzApIGluZmluaXRlO1xuICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdmlzaWJpbGl0eTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDFzO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIC5naG9zdCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogb3BhY2l0eTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDEuNXM7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAyNXB4O1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAtMTVweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgLnNwcml0ZSB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDBweDtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxMzhweDtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAyNXB4IDE1cHg7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogLTE3NXB4O1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGxlZnQgY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKC44Mik7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIC5naG9zdCB7XG4gICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEyMHB4O1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDEzOHB4O1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDEycHggMTVweCAxMnB4IDVweDtcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogb3BhY2l0eTtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMXM7XG4gICAgICAgICAgICAgICAgICAgICYueSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgMnB4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICYucGl0Y2gge1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIDBweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAvLyBTcGVjaWFsIHN0eWxlIHRvIGVubGFyZ2UgdGhlIFogZ2hvc3QgdG8gbWFrZSBpdCBtb3JlIG9idmlvdXNcbiAgICAgICAgICAgICAgICAuei5naG9zdCB7XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4yKTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBAbWl4aW4gc2l4RG9GLWFuaW1hdGlvbigkbW92ZW1lbnRzKSB7XG4gICAgICAgICAgICAgICAgICAgIEBlYWNoICRtb3ZlbWVudCBpbiAkbW92ZW1lbnRzIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIC4jeyRtb3ZlbWVudH0uc3ByaXRlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWFnZXMvI3skbW92ZW1lbnR9LXNwcml0ZS5wbmdcIik7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAuI3skbW92ZW1lbnR9Lmdob3N0IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWFnZXMvNmRvZi0jeyRtb3ZlbWVudH0ucG5nXCIpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgc2l4RG9GLWFuaW1hdGlvbih5YXcgeCBwaXRjaCB5IHJvbGwgeik7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuc2l4ZG9GLXZpZGVvcyB7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogNDBweDtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiA0MHB4O1xuICAgICAgICAgICAgQGluY2x1ZGUgc3BhbigxMDAlKTtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiA2MHB4O1xuICAgICAgICAgICAgICAgIGJvcmRlci10b3A6IHNvbGlkIDFweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTUpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAzNXB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZmlndXJlIHtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKC44OCk7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDM1cHg7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDIyMHB4O1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTVweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgc3BhbjpudGgtY2hpbGQoMSkge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHNwYW46bnRoLWNoaWxkKDIpLFxuICAgICAgICAgICAgICAgIHNwYW46bnRoLWNoaWxkKDMpIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRjb2xvci10ZXh0LWV4dHJhZGltO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5wcmVjaXNlLXRyYWNraW5nIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogLTVweDtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBwIHtcbiAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItdGV4dC1ldmVubGVzc2RpbTtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLW1vYmlsZS1vbmx5KSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogLTIwcHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogODBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgICAgICAgICAgIG1hcmdpbjogaW5pdGlhbDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5wcmVjaXNlLXRyYWNraW5nLWNvbnRlbnQge1xuICAgICAgICAgICAgQGluY2x1ZGUgYWRhcHRpdmUtY29udGFpbmVyO1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IDM1cHg7XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogNTVweDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDUwMHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLnByZWNpc2UtdHJhY2tpbmctY29weSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTAwcHg7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiA1MDBweDtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogaW5pdGlhbDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgLnNwZWNzIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMzBweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgLnNwZWMge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDcwcHggYXV0bztcbiAgICAgICAgICAgICAgICAgICAgaHRtbC5pZSAmIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IC03MHB4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDI1MHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDVweCBhdXRvO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIGgyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjhweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAuc3BlYy10aXRsZSB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDBweDtcbiAgICAgICAgICAgICAgICAgICAgfiBwIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItdGV4dC1ldmVubGVzc2RpbTtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IC01cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxM3B4O1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogaW5pdGlhbDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAucHJlY2lzZS10cmFja2luZy1pbWFnZSB7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgICAgICAgICAudHJhY2tpcjUtaW1hZ2Uge1xuICAgICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG4gICAgICAgICAgICAgICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogLTQxNXB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMzAwcHg7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC0xMjBweDtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxNTBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiA1MDBweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuXG4gICAgZGl2LmRlc2lnbmVkLWZvci1nYW1lcnMge1xuICAgICAgICBwYWRkaW5nOiAxNXB4IDA7XG4gICAgICAgIGJhY2tncm91bmQ6IGJsYWNrO1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOmxpbmVhci1ncmFkaWVudCh0byB0b3AsIHJnYig3NCwgNzQsIDc0KSAwJSwgcmdiKDIyLCAyMiwgMjIpIDEwMCUpO1xuXG4gICAgICAgIC5kZXNpZ25lZC1mb3ItZ2FtZXJzLWNvbnRlbnQge1xuICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRjb2xvci10ZXh0LWRpbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAyNXB4IDAgNTVweDtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgc3BhbigxMCk7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHB1c2goLTUpO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAtMTVweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuZGVzaWduZWQtZm9yLWdhbWVycy1jb3B5IHtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHNwYW4obGFzdCA2KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBzZWN0aW9uLmZ1bGx5LWFkanVzdGFibGUge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogNDBweDtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogODBweDtcbiAgICAgICAgICAgIGhlaWdodDogNTAwcHg7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMHB4O1xuICAgICAgICB9XG4gICAgICAgIGltZy50aXItaW1hZ2Uge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogNDBweDtcbiAgICAgICAgICAgIHdpZHRoOiAyMjBweDtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICB3aWR0aDogNDIwcHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogLTYwcHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC0xNTBweDtcbiAgICAgICAgICAgICAgICBsZWZ0OiA2MCU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBkaXYuZnVsbHktYWRqdXN0YWJsZS1jb3B5IHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHNwYW4oNyk7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHAge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLW1vYmlsZS1vbmx5KSB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IC0yMHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC50ZWNoLXNwZWNzIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDMwcHg7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAzMHB4O1xuICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsMCwwLDAuMSk7XG5cbiAgICAgICAgLnRlY2gtc3BlY3MtY29udGVudCB7XG4gICAgICAgICAgICBoMiB7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLnRlY2gtc3BlY3MtaW1hZ2VzIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgc3Bhbig0IGZpcnN0KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgZmlndXJlIHtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtNTBweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDgwcHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMjAwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogLTEwMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgbWF4LXdpZHRoOiB1bnNldDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBzdGlja3k7XG4gICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgZmlnY2FwdGlvbiB7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxM3B4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC50ZWNoLXNwZWNzLWNvcHkge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBzcGFuKGxhc3QgOCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIC5zcGVjcyB7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHNwYW4oMTAwJSk7XG4gICAgICAgICAgICAgICAgICAgIGRpdiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBzcGFuKDEwMCUpO1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogLTIzcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAtMTVweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBwOmZpcnN0LWNoaWxke1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogLTEwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTRweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxNHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGdhbGxlcnkoNik7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgcDpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxMnB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGdhbGxlcnkoNik7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgLm1vcmUtc3BlY3Mge1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBzcGFuKDEwMCUpO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAzMHB4O1xuICAgICAgICAgICAgICAgICAgICAuaW4tYm94LFxuICAgICAgICAgICAgICAgICAgICAuc3lzLXJlcXVpcmVtZW50cyB7XG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBnYWxsZXJ5KDYpO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgdWwge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgZmx1c2gtbGlzdDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA4cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTJweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudDogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICBbaWQ9XCJmZWF0dXJlZC1wcm9kdWN0c1wiXSB7XG4gICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIH1cbn1cbiIsIltpZD1cImZlYXR1cmVkLXByb2R1Y3RzXCJdIHtcbiAgICBwYWRkaW5nOiAyNXB4IDAgMzBweDtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsMCwwLDAuMSk7ICAgIFxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgcGFkZGluZzogMjVweCAwIDY1cHg7XG4gICAgfVxuICAgIGEuY3RhIHtcbiAgICAgICAgQGluY2x1ZGUgYnRuO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgfVxuICAgIC5wcm9kdWN0cyB7XG4gICAgICAgIEBpbmNsdWRlIGFkYXB0aXZlLWNvbnRhaW5lcjtcbiAgICB9XG4gICAgLnByb2R1Y3Qge1xuICAgICAgICBAaW5jbHVkZSBzcGFuKDEyKTtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtbW9iaWxlLW9ubHkpIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDY1cHg7XG4gICAgICAgIH1cbiAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLW1vYmlsZS1vbmx5KSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMzVweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHNwYW4oNCk7XG4gICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHNwYW4obGFzdCA0KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBwIHtcbiAgICAgICAgICAgIG1hcmdpbjogMTBweCAwIC01cHg7XG4gICAgICAgIH1cbiAgICAgICAgcC5wcmljZSB7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogMHB4O1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgICAgICAgfVxuICAgICAgICBmaWd1cmUge1xuICAgICAgICAgICAgJGZpZ3VyZS1oZWlnaHQ6IDE3NXB4O1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG8gMjBweDtcbiAgICAgICAgICAgIGhlaWdodDogJGZpZ3VyZS1oZWlnaHQ7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogJGZpZ3VyZS1oZWlnaHQ7XG4gICAgICAgICAgICB3aWR0aDogMjgwcHg7XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMjIwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBib3R0b207XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgJltpZD1cInRyYWNrY2xpcC1wcm9cIl0ge1xuICAgICAgICAgICAgZmlndXJlIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC1tb2JpbGUtb25seSkge1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDIyNXB4O1xuICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMjI1cHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxNDBweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAmW2lkPVwidGlyNVwiXSB7XG4gICAgICAgICAgICBmaWd1cmUge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAyMTBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAmW2lkPVwidGlyNS1wcm8tYnVuZGxlXCJdIHtcbiAgICAgICAgICAgIGZpZ3VyZSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDI4MHB4O1xuICAgICAgICAgICAgICAgIC8vIG1hcmdpbi1sZWZ0OiAtMjlweDtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC0yOXB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbiIsImJvZHkuYWNjZXNzb3JpZXMge1xuICAgIG1haW4ge1xuICAgICAgICBoMSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC1tb2JpbGUtb25seSkge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMzZweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBzZWN0aW9uIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGFkYXB0aXZlLWNvbnRhaW5lcjtcbiAgICAgICAgfVxuICAgICAgICBzZWN0aW9uLmludHJvIHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDM1cHg7XG4gICAgICAgIH1cbiAgICAgICAgc2VjdGlvbi5mZWF0dXJlZC1pdGVtcyB7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogNDVweDtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDQ1cHg7XG4gICAgICAgICAgICBAaW5jbHVkZSBhZGQtYm9yZGVyLWJvdHRvbTtcbiAgICAgICAgICAgIC5mZWF0dXJlZC1pdGVtIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBzcGFuKDEyKTtcbiAgICAgICAgICAgICAgICAmOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtbW9iaWxlLW9ubHkpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDY1cHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgJltpZD1cInRyYWNrY2xpcHByb1wiXSB7XG4gICAgICAgICAgICAgICAgICAgIGZpZ3VyZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBzcGFuKGZpcnN0IDYpO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIC5jb3B5IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHNwYW4obGFzdCA2KTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBwdXNoKDYpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICZbaWQ9XCJ0cmFja2NsaXBcIl0ge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxMDBweDtcbiAgICAgICAgICAgICAgICAgICAgZmlndXJlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHNwYW4oIDYpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHB1c2goNik7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgLmNvcHkge1xuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgc3BhbiggNik7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgcHVzaCgtMTIpO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGZpZ3VyZSB7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLW1vYmlsZS1vbmx5KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDI5MHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1heC13aWR0aDogaW5pdGlhbDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtMjEwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogNDAwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgZGl2LmNvcHkge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAzNXB4O1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDE1cHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgaDMge1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIHAucHJpY2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMzVweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAyMHB4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIHVsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZsdXNoLWxpc3Q7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgZm9ybSB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDU1cHg7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLW1vYmlsZS1vbmx5KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgc2VjdGlvbi5pdGVtcyB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA1NXB4O1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNzVweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5pdGVtIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDE1cHg7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgc3BhbigxMik7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG5cbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgc3Bhbig0KTtcblxuICAgICAgICAgICAgICAgICAgICAmOm50aC1jaGlsZCgzbikge1xuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgc3BhbihsYXN0IDQpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGZpZ3VyZSB7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogMTUwcHg7XG4gICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxNTBweDtcbiAgICAgICAgICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTUwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGgzIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBwLnByaWNlIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogNXB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAmW2lkPVwidGlyNS1iYXNlXCJdIHtcbiAgICAgICAgICAgICAgICAgICAgZmlndXJlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiA5OHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiA5OHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxNTBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMTUwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICBpbWcge1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWF4LXdpZHRoOiBpbml0aWFsO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMjMwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC0yMDhweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC0xNDRweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDIzMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuIiwiYm9keS5nYW1lcy1saXN0IHtcbiAgICAuaW50cm8ge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIG1hcmdpbi10b3A6IDM1cHg7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDM1cHg7XG4gICAgfVxuXG4gICAgLmZpbHRlci1hbmQtc29ydCB7XG4gICAgICAgIEBpbmNsdWRlIGFkYXB0aXZlLWNvbnRhaW5lcjtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBsYWJlbC5sYWJlbC1mb3ItZ3JvdXAge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogNDVweDtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuICAgICAgICBkaXYucmFkaW8tc2VjdGlvbiB7XG4gICAgICAgICAgICBpbnB1dFt0eXBlPVwicmFkaW9cIl17XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlucHV0W3R5cGU9XCJyYWRpb1wiXTpjaGVja2VkICsgbGFiZWwge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44KTtcbiAgICAgICAgICAgICAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjkpO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAjOTY1QjAwO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgbGFiZWwge1xuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAkZGVmYXVsdC10cmFuc2l0aW9uLWR1cmF0aW9uICRkZWZhdWx0LXRyYW5zaXRpb24tZnVuY3Rpb247XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMTBweCAyMnB4O1xuICAgICAgICAgICAgICAgIGJvcmRlcjogc29saWQgMXB4ICRjb2xvci10ZXh0LWRlZmF1bHQ7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMtbGFyZ2U7XG4gICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgICAgIHVzZXItc2VsZWN0OiBub25lO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICB3aWR0aDogOTBweDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiBub25lO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAmOmZpcnN0LW9mLXR5cGUge1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItcmlnaHQ6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IC0ycHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICY6bnRoLW9mLXR5cGUoMikge1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtM3B4O1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAtM3B4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAmOmxhc3Qtb2YtdHlwZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItbGVmdDogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtMnB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRjb2xvci10ZXh0LWVtcGhhc2l6ZWQ7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICRjb2xvci1pbnB1dC1kYXJrZW47XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIC5nYW1lcy10YWJsZSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDcwcHg7XG4gICAgICAgIC50YWJsZS1oZWFkZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICBwYWRkaW5nOiAyNXB4IDBweDtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLW1vYmlsZS1vbmx5KSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYuZml4ZWQtaGVhZGVyIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgdG9wOiA3NHB4O1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI0NywgMTQ2LCAwLCAwLjkpO1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDUwMG1zIGVhc2UtaW4tb3V0O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5zb3J0LWJ5LXNlY3Rpb24ge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICBpbnB1dFt0eXBlPVwicmFkaW9cIl0ge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBsYWJlbCB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItdGV4dC1kZWZhdWx0O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBsYWJlbDpmaXJzdC1vZi10eXBlIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBsYWJlbDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMHB4IDEwcHg7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICAgICAgICAgICAgICAgICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJGNvbG9yLWlucHV0LWRhcmtlbjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgbGFiZWw6bnRoLW9mLXR5cGUoMikge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTIwcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGxhYmVsOmxhc3Qtb2YtdHlwZSB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMzVweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgc3Bhbi5pY29uLWRvd24tb3Blbi1iaWcge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogLTMwcHg7XG4gICAgICAgICAgICAgICAgICAgICYuZGVzY2VuZGluZyB7XG4gICAgICAgICAgICAgICAgICAgICAgICBhbmltYXRpb24tbmFtZTogYW5pbWF0aW9uVG9EZXNjZW5kaW5nO1xuICAgICAgICAgICAgICAgICAgICAgICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAzMDBtcztcbiAgICAgICAgICAgICAgICAgICAgICAgIGFuaW1hdGlvbi1maWxsLW1vZGU6IGZvcndhcmRzO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICYuYXNjZW5kaW5nIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGFuaW1hdGlvbi1uYW1lOiBhbmltYXRpb25Ub0FzY2VuZGluZztcbiAgICAgICAgICAgICAgICAgICAgICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogMzAwbXM7XG4gICAgICAgICAgICAgICAgICAgICAgICBhbmltYXRpb24tZmlsbC1tb2RlOiBmb3J3YXJkcztcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBAa2V5ZnJhbWVzIGFuaW1hdGlvblRvQXNjZW5kaW5ne1xuICAgICAgICAgICAgICAgICAgICAgICAgMCUge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlWCgwZGVnKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIDEwMCUge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlWCgxODBkZWcpO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIEBrZXlmcmFtZXMgYW5pbWF0aW9uVG9EZXNjZW5kaW5ne1xuICAgICAgICAgICAgICAgICAgICAgICAgMCUge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlWCgxODBkZWcpO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgMTAwJSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGVYKDBkZWcpO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDBweDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwcHg7XG4gICAgICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMzhweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC50YWJsZS1oZWFkZXItY29udGVudCB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGFkYXB0aXZlLWNvbnRhaW5lcjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgdGFibGUge1xuICAgICAgICAgICAgQGluY2x1ZGUgYWRhcHRpdmUtY29udGFpbmVyO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cbiAgICAgICAgLnRhYmxlLWNvbnRhaW5lciB7XG4gICAgICAgICAgICAmLmZpeGVkLWhlYWRlciB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDczcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHRyIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGFkZC1ib3JkZXItYm90dG9tO1xuICAgICAgICAgICAgdGQge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiAxMHB4O1xuICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAxMHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgdGQ6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgIHdpZHRoOiA0NDJweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHRkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDE1cHg7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtbW9iaWxlLW9ubHkpIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAvLyBmb3IgZmlsdGVyaW5nXG4gICAgICAgIC5maWx0ZXIge1xuICAgICAgICAgICAgdHIge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLmZpbHRlci5mcHMge1xuICAgICAgICAgICAgdHIuZnBzIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiB0YWJsZS1yb3c7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLmZpbHRlci5kcml2aW5nIHtcbiAgICAgICAgICAgIHRyLmRyaXZpbmcge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IHRhYmxlLXJvdztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuZmlsdGVyLmZsaWdodCB7XG4gICAgICAgICAgICB0ci5mbGlnaHQge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IHRhYmxlLXJvdztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbiIsImJvZHkucmVtb3RlLXN1cHBvcnQge1xuIG1haW4ge1xuICAgICAgICBAaW5jbHVkZSBhZGFwdGl2ZS1jb250YWluZXI7XG5cbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNDVweDtcblxuICAgICAgICBzZWN0aW9uIHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICYuaW50cm8ge1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJi5jb250ZW50IHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgc3Bhbig4KTtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgcHVzaCgyKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgYS5jdGEge1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBidG47XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICAgICAgdG9wOiA0NXB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgfVxufSIsImJvZHkucHJvbW8ge1xuICAgIG1haW4ge1xuICAgICAgICBAaW5jbHVkZSBhZGFwdGl2ZS1jb250YWluZXI7XG4gICAgICAgIG1hcmdpbi10b3A6IDI1cHg7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG4gICAgICAgICAgICBoMyxcbiAgICAgICAgICAgIHAge1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHVsIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGZsdXNoLWxpc3Q7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA0NXB4O1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMzVweDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMTAwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLmFjdGlvbi1saW5rIHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnRuO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cblxuICAgIH1cbn1cbiIsImJvZHkubWVkaWEge1xuICAgIC8vIGJsdXIgdGhlICNjb250ZW50IGRpdiB3aGVuIG1vZGFsIG9wZW5zXG4gICAgW2lkPVwiY29udGVudFwiXSB7XG4gICAgICAgICYuYmx1ciB7XG4gICAgICAgICAgICBmaWx0ZXI6IGJsdXIoNXB4KTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAvLyBtb2RhbCBkaXNwbGF5IGNvZGVcbiAgICAubW9kYWwge1xuICAgICAgICAvLyBtb2RhbCBpcyBoaWRkZW4gYW5kIG1hZGUgdmlzaWJsZSB3aXRoIGpxdWVyeVxuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgIHBhZGRpbmctdG9wOiA2MHB4O1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIG92ZXJmbG93OiBhdXRvO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMCwwLDApO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsMCwwLC40KTtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogNzVweDtcbiAgICAgICAgfVxuICAgICAgICAvKiBNb2RhbCBDb250ZW50ICovXG4gICAgICAgIC5tb2RhbC1jb250ZW50IHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwwLDAsLjc1KTtcbiAgICAgICAgICAgIG1hcmdpbjogYXV0bztcbiAgICAgICAgICAgIHBhZGRpbmc6IDIwcHg7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgICAgICAgICAgIHdpZHRoOiA4MCU7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogM3B4O1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiA2MDBweDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBoMyB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5kb3dubG9hZCB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLyogVGhlIE1vZGFsIENsb3NlIEJ1dHRvbiAqL1xuICAgICAgICAuY2xvc2Uge1xuICAgICAgICAgICAgY29sb3I6ICNhYWFhYWE7XG4gICAgICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgICAgICBmb250LXNpemU6IDI4cHg7XG4gICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgICY6aG92ZXIsXG4gICAgICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogI2NjY2NjYztcbiAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgbWFpbiB7XG4gICAgICAgIEBpbmNsdWRlIGFkYXB0aXZlLWNvbnRhaW5lcjtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNDVweDtcbiAgICAgICAgc2VjdGlvbiB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA5MHB4O1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgdWwge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZsdXNoLWxpc3Q7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICAgICAgJi5jdGEge1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBidG47XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAzMHB4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIC5pbWFnZS1kb3dubG9hZHMge1xuICAgICAgICBvdmVyZmxvdzogYXV0bztcbiAgICAgICAgYSB7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMzBweDtcbiAgICAgICAgfVxuICAgICAgICBpbWcge1xuICAgICAgICAgICAgcGFkZGluZzogMjBweCAwIDEwcHg7XG4gICAgICAgIH1cbiAgICB9XG4gICAgc2VjdGlvbltpZD1cInRyYWNraXItNVwiXSB7XG4gICAgICAgIC5pbWFnZS1kb3dubG9hZHMge1xuICAgICAgICAgICAgIC5tb2RhbEJ0biB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgZ2FsbGVyeSgxIG9mIDIpO1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBnYWxsZXJ5KDEgb2YgMyk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIHNlY3Rpb25baWQ9XCJ0cmFja2NsaXAtcHJvXCJdIHtcbiAgICAgICAgLmltYWdlLWRvd25sb2FkcyB7XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBjb250YWluZXIoNDAwcHgpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgIC5tb2RhbEJ0biB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgZ2FsbGVyeSgxIG9mIDIpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIHNlY3Rpb25baWQ9XCJ0cmFja2NsaXBcIl0ge1xuICAgICAgICAuaW1hZ2UtZG93bmxvYWRzIHtcbiAgICAgICAgICAgICAubW9kYWxCdG4ge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGdhbGxlcnkoMSBvZiAxKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICBzZWN0aW9uW2lkPVwiaGF0c1wiXSB7XG4gICAgICAgIC5pbWFnZS1kb3dubG9hZHMge1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgY29udGFpbmVyKDQwMHB4KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAubW9kYWxCdG4ge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGdhbGxlcnkoMSBvZiAyKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICBzZWN0aW9uW2lkPVwidmlzb3JzXCJdIHtcbiAgICAgICAgLmltYWdlLWRvd25sb2FkcyB7XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBjb250YWluZXIoNDAwcHgpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgIC5tb2RhbEJ0biB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgZ2FsbGVyeSgxIG9mIDIpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuIiwiLy8gSXNvbGF0aW9uIFN5bnRheFxuLy8gPT09PT09PT09PT09PT09PVxuXG5cbi8vIElzb2xhdGUgW01peGluXVxuLy8gLS0tLS0tLS0tLS0tLS0tXG4vLyBTZXQgaXNvbGF0aW9uIGFzIGFuIG92ZXJyaWRlLlxuLy8gLSAkbG9jYXRpb246IDxzcGFuPlxuQG1peGluIGlzb2xhdGUoXG4gICRpc29sYXRlOiAxXG4pIHtcbiAgJGluc3BlY3Q6ICRpc29sYXRlO1xuXG4gICRvdXRwdXQ6IChcbiAgICBwdXNoOiBpc29sYXRlKCRpc29sYXRlKSxcbiAgICBmbG93OiBzdXN5LWdldChmbG93LCAkaXNvbGF0ZSksXG4gICk7XG5cbiAgQGluY2x1ZGUgc3VzeS1pbnNwZWN0KGlzb2xhdGUsICRpbnNwZWN0KTtcbiAgQGluY2x1ZGUgaXNvbGF0ZS1vdXRwdXQoJG91dHB1dC4uLik7XG59XG5cblxuLy8gSXNvbGF0ZSBbZnVuY3Rpb25dXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS1cbi8vIFJldHVybiBhbiBpc29sYXRpb24gb2Zmc2V0IHdpZHRoLlxuLy8gLSAkbG9jYXRpb246IDxzcGFuPlxuQGZ1bmN0aW9uIGlzb2xhdGUoXG4gICRpc29sYXRlOiAxXG4pIHtcbiAgJGlzb2xhdGU6IHBhcnNlLXNwYW4oJGlzb2xhdGUpO1xuICAkaXNvbGF0aW9uOiBzdXN5LWdldChzcGFuLCAkaXNvbGF0ZSk7XG5cbiAgQGlmICRpc29sYXRpb24gYW5kIG5vdChnZXQtbG9jYXRpb24oJGlzb2xhdGUpKSB7XG4gICAgJG5ldzogKFxuICAgICAgc3BhbjogbnVsbCxcbiAgICAgIGxvY2F0aW9uOiAkaXNvbGF0aW9uLFxuICAgICk7XG4gICAgJGlzb2xhdGU6IG1hcC1tZXJnZSgkaXNvbGF0ZSwgJG5ldyk7XG4gIH1cblxuICBAcmV0dXJuIGdldC1pc29sYXRpb24oJGlzb2xhdGUpO1xufVxuXG5cbi8vIEdldCBJc29sYXRpb25cbi8vIC0tLS0tLS0tLS0tLS1cbi8vIFJldHVybiB0aGUgaXNvbGF0aW9uIG9mZnNldCB3aWR0aFxuLy8gLSAkaW5wdXQ6IDxtYXA+XG5AZnVuY3Rpb24gZ2V0LWlzb2xhdGlvbihcbiAgJGlucHV0XG4pIHtcbiAgJGxvY2F0aW9uICAgOiBnZXQtbG9jYXRpb24oJGlucHV0KTtcbiAgJGNvbHVtbnMgICAgOiBzdXN5LWdldChjb2x1bW5zLCAkaW5wdXQpO1xuICAkd2lkdGggICAgICA6IG51bGw7XG5cbiAgQGlmIHR5cGUtb2YoJGxvY2F0aW9uKSA9PSBudW1iZXIgYW5kIG5vdCh1bml0bGVzcygkbG9jYXRpb24pKSB7XG4gICAgJHdpZHRoOiAkbG9jYXRpb247XG4gIH0gQGVsc2UgaWYgJGxvY2F0aW9uIHtcbiAgICAkcHVzaDogJGxvY2F0aW9uIC0gMTtcbiAgICBAaWYgJHB1c2ggPiAwIHtcbiAgICAgICRwdXNoOiBtYXAtbWVyZ2UoJGlucHV0LCAoXG4gICAgICAgIHNwYW46ICRwdXNoLFxuICAgICAgICBsb2NhdGlvbjogMSxcbiAgICAgICAgc3ByZWFkOiB3aWRlLFxuICAgICAgKSk7XG4gICAgICAkd2lkdGg6IGdldC1zcGFuLXdpZHRoKCRwdXNoKTtcbiAgICB9XG4gIH1cblxuICBAaWYgc3VzeS1nZXQoZ3V0dGVyLXBvc2l0aW9uLCAkaW5wdXQpID09IHNwbGl0XG4gICAgICBhbmQgc3VzeS1nZXQoZ3V0dGVycywgJGlucHV0KSA+IDAge1xuICAgICR3aWR0aDogaWYoJHdpZHRoID09IG51bGwsIGd1dHRlcnMoJGlucHV0KSwgJHdpZHRoICsgZ3V0dGVycygkaW5wdXQpKTtcbiAgfVxuXG4gIEByZXR1cm4gJHdpZHRoIG9yIDA7XG59XG4iXSwic291cmNlUm9vdCI6Ii9zb3VyY2UvIn0= */