@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: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;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{transition:background-color .5s ease-in-out;background-color:rgba(247,146,0,0);border-bottom:1px solid hsla(0,0%,100%,.35);width:100%;top:0;z-index:1000;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}}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{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]{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;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;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{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 main{background-color:rgba(83,147,208,.9);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;position:relative;z-index:-1;margin-top:-60px;padding-top:60px}@media (min-width:599px){body.about main{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: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;margin-top:-74px;padding-top:74px}}@media (min-width:1200px){body.about main{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: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{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: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{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{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{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 section.intro h1{margin-bottom:45px}}@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;font-family:Helvetica Neue,Helvetica,Arial,sans-serif;color:#fff}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);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{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{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{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{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),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;transition-property:visibility;transition-duration:1s}body.trackir5 .sixdoF div.heads .animation-spot.hover .ghost{opacity:0;transition-property:opacity;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;transition-property:opacity;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: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{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:0;background-color:rgba(247,146,0,.9);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{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{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{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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ZixVQUFZLENBQ2IsQU5pREQseUJzQmhFSixtQ25CbUJJLGdCQ2Y0QixBRGU1QixpQkVxRG9DLEFGckRwQyxpQkVxRG1FLENpQmxFbEUsQUFOTCwrQ2hCWU0sWUFBYSxBQUNiLGNBQWUsQUFDZixVQUFZLENBQ2IsQ0FBQSxBZ0JmTCwrQkFZUSxpQkFBbUIsQ0FDdEIsQUFiTCwrQkFlUSxlQUFpQixDQUlwQixBQW5CTCxtQ0FpQlksWUFBZ0IsQ0FDbkIsQUNsQlQsbUJBRVEsaUJBQW1CLENBZ0d0QixBQWxHTCxzQkFJWSxrQkFBb0IsQ0FDdkIsQUFMVCw0QnBCbUJJLGdCQ2xCd0IsQURrQnhCLGlCRXFEb0MsQUZyRHBDLGlCRXFEbUUsQ2tCaEU5RCxBQVJULGtDakJZTSxZQUFhLEFBQ2IsY0FBZSxBQUNmLFVBQVksQ0FDYixBTmlERCx5QnVCaEVKLDRCcEJtQkksZ0JDZjRCLEFEZTVCLGlCRXFEb0MsQUZyRHBDLGlCRXFEbUUsQ2tCaEU5RCxBQVJULGtDakJZTSxZQUFhLEFBQ2IsY0FBZSxBQUNmLFVBQVksQ0FDYixDQUFBLEFpQmZMLHlCdEJDSSw0QkhLa0MsQUdKbEMsa0JBQW1CLEFBQ25CLHlCSFNvQixBR1JwQixtQkhtQnNCLEFHbEJ0QixxQkFBc0IsQXNCTWQsb0JBQXNCLENBQ3pCLEFBWlQsK0J0QlFRLFdIS21CLEFHSm5CLHlCSFdpQixDR1ZwQixBc0JWTCxpQ0FjWSxjQUFnQixDQXlCbkIsQUF2Q1QsdUVBaUJnQixnQkFBaUIsQXBCRTdCLFdJd0lvQixBSnhJcEIsV1FBNEQsQVJBNUQsY0krRXFCLEFKL0VyQixjSWtGb0IsQ2dCbEZYLEF2QjZDVCx5QnVCaEVKLHFDcEJtQkksZ0JJd0lvQixBSnhJcEIsV1FBNEQsQVJBNUQsc0JTNER3QixBVDVEeEIscUJJd0lvQixBZ0JuSUosa0JBQW9CLENBRTNCLENBQUEsQXZCc0NULHlCdUJoRUosbUNBNkJvQixrQkFBb0IsQ0FFM0IsQ0FBQSxBdkJpQ1QseUJ1QmhFSiwrQ0FtQ3dCLGVBQWlCLENBRXhCLENBQUEsQUFyQ2pCLHVDQXlDWSwyREFDbUIsQUFDbkIsY0FBZ0IsQ0E4Qm5CLEFBekVULDJDcEJtQkksZ0JJd0lvQixBSnhJcEIsV1FBNEQsQVJBNUQsc0JTNER3QixBVDVEeEIscUJJd0lvQixBZ0I1R1IsVUFBWSxDQUNmLEFBaERiLDBDQWtEZ0IsWUFBYyxDQUNqQixBQW5EYiwyREFzRG9CLGVBQWlCLENBQ3BCLEF2QlNiLHlCdUJoRUosMkNwQm1CSSxnQkl3SW9CLEFKeElwQixXUUE0RCxBUkE1RCxzQlM0RHdCLEFUNUR4QixjSXdJb0IsQWdCOUZKLG9CQUFxQixBQUNyQixhQUFjLEFBQ2QsVUFBWSxDQUNmLEFBaEVqQix5RHBCbUJJLGdCSXdJb0IsQUp4SXBCLFdRQTRELEFZZ0Q1QyxlQUFpQixDQUlwQixBQXZFakIsMkRBcUV3QixlQUFpQixDQUNwQixDQUFBLEFBdEVyQixtQ0EyRVksZ0RBQXFCLEFBQ3JCLDRCQUE2QixBQUM3Qiw2QkFBOEIsQUFDOUIsNEJBQTZCLEFBQzdCLGVBQWdCLEFBQ2hCLFlBQWMsQ0FpQmpCLEFBakdULHNDQWtGZ0IsZ0JBQWlCLEFBQ2pCLGtCQUFvQixDQUt2QixBdkJ4QlQseUJ1QmhFSixzQ0FxRm9CLGlCQUFrQixBQUNsQixrQkFBb0IsQ0FFM0IsQ0FBQSxBdkJ4QlQseUJ1QmhFSixtQ0EwRmdCLDZCQUE4QixBQUM5Qiw0QkFBNkIsQUFDN0IsWUFBYyxDQUtyQixDQUFBLEFBakdULDRDQStGZ0IsV0FBYSxDQUNoQixBQ2hHYixnQnZCQ0ksNEJIS2tDLEFHSmxDLGtCQUFtQixBQUNuQix5QkhTb0IsQUdScEIsbUJIbUJzQixBR2xCdEIscUJBQXNCLEF1QkZsQixvQkFBc0IsQ0FDekIsQUFKTCxzQnZCUVEsV0hLbUIsQUdKbkIseUJIV2lCLENHVnBCLEF1QlZMLGdHckJtQkksZ0JDbEJ3QixBRGtCeEIsaUJFcURvQyxBRnJEcEMsa0JFcURtRSxBbUIvRC9ELGlCQUFtQixDQUl0QixBQWJMLGtIbEJZTSxZQUFhLEFBQ2IsY0FBZSxBQUNmLFVBQVksQ0FDYixBTmlERCx5QndCaEVKLGdHckJtQkksZ0JDZjRCLEFEZTVCLGlCRXFEb0MsQUZyRHBDLGlCRXFEbUUsQ21CM0RsRSxBQWJMLGtIbEJZTSxZQUFhLEFBQ2IsY0FBZSxBQUNmLFVBQVksQ0FDYixDQUFBLEFrQmZMLGlJQVdZLGtCQUFvQixDQUN2QixBQVpULG1DckJtQkksV0l3SW9CLEFKeElwQixXUUE0RCxBUkE1RCxjSStFcUIsQUovRXJCLGNJa0ZvQixDaUJ6RWYsQXhCb0NMLHlCd0JoRUosbUNyQm1CSSxnQkl3SW9CLEFKeElwQixXUUE0RCxBUkE1RCxxQlM0RHdCLENZbkRuQixBQTVCVCw4Q3JCbUJJLGdCSXdJb0IsQUp4SXBCLFlRQXVFLEFSQXZFLGNJa0ZvQixDaUJoRlAsQUFyQmpCLHlDQXVCb0IsWUFBYSxBQUNiLGlCQUFrQixBQUNsQixnQkFBa0IsQ0FDckIsQ0FBQSxBQTFCakIsc0NyQm1CSSxXSXdJb0IsQUp4SXBCLFdRQTRELEFSQTVELGNJK0VxQixBSi9FckIsY0lrRm9CLENpQjdEZixBeEJ3QkwseUJ3QmhFSixzQ3JCbUJJLGdCSXdJb0IsQUp4SXBCLFdRQTRELEFSQTVELHNCUzREd0IsQVk1Q1osa0JBQW9CLENBSzNCLEFBeENULHFEckJtQkksZ0JJd0lvQixBSnhJcEIsWVFBdUUsQVJBdkUsY0lrRm9CLENpQi9EUCxDQUFBLEFBdENqQiw4SXJCbUJJLFdJd0lvQixBSnhJcEIsV1FBNEQsQVJBNUQsY0krRXFCLEFKL0VyQixjSWtGb0IsQ2lCdERmLEFBL0NULHVFQWlEWSxrQkFBb0IsQ0FDdkIsQXhCY0wseUJ3QmhFSix1REF3RG9CLGVBQWlCLENBQ3BCLENBQUEsQUF6RGpCLDBKQStEZ0IsYUFBZSxDQUNsQixBQWhFYixzQ0FrRWdCLGVBQWlCLENBQ3BCLEFBbkViLHFDQXFFZ0IsY0FBZ0IsQ0FDbkIsQUF0RWIsMENBd0VnQixnQkFBa0IsQ0FDckIsQUF6RWIsdUNBMkVnQixnQkFBa0IsQ0FDckIsQUE1RWIsa0NyQm1CSSxnQkNsQndCLEFEa0J4QixxQkVxRG9DLENtQmtDbkMsQUExR0wsd0NsQllNLFlBQWEsQUFDYixjQUFlLEFBQ2YsVUFBWSxDQUNiLEFOaURELHlCd0JoRUosa0NyQm1CSSxnQkNmNEIsQURlNUIsaUJFcURvQyxBRnJEcEMsaUJFcURtRSxDbUJrQ2xFLEFBMUdMLHdDbEJZTSxZQUFhLEFBQ2IsY0FBZSxBQUNmLFVBQVksQ0FDYixDQUFBLEFOaURELHlCd0JoRUosa0NBb0ZZLGNBQWdCLENBc0J2QixDQUFBLEFBMUdMLHFDQ0NJLGlCQUFtQixDRHVGZCxBeEJ4QkwseUJ3QmhFSixxQ0NNUSxnQkFBa0IsQ0RrRmpCLENBQUEsQXhCeEJMLHlCd0JoRUosdUZDV1ksV0FBWSxBQUNaLDJDQUE2QixBQUM3QixZQVZrQixBQVdsQixlQUFpQixDQU94QixDQUFBLEF6QjJDRCx5QndCaEVKLDRDQ3dCWSxVQUFZLENBRW5CLENBQUEsQXpCc0NELHlCd0JoRUosMkNDNkJZLFdBQWEsQ0FFcEIsQ0FBQSxBekJpQ0QseUJ3QmhFSix1REE0RmdCLFVBQVksQ0FhbkIsQ0FBQSxBeEJ6Q0wseUJ3QmhFSiwyRHJCbUJJLGdCSXdJb0IsQUp4SXBCLFVRQTRELENhcUZuRCxBQXhHYiwwRXJCbUJJLG1CV29ENkIsQVhwRDdCLFdZWjBCLEFaWTFCLGFhZ0IrQixDRndEOUIsQVUzRkwsMkVyQm1CSSxzQkl3SW9CLEFKeElwQixtQldvRDZCLEFYcEQ3QixVWUowQixDRDRFekIsQVUzRkwsOERBa0d3QixpQkFBbUIsQ0FDdEIsQUFuR3JCLDZEQXFHd0IsWUFBZ0IsQ0FDbkIsQ0FBQSxBQXRHckIsa0JBNEdRLGlCQUFtQixDQUN0QixBQTdHTCw0Q0FnSFEsYzFCcEdnQixBMEJxR2hCLG9CQUFzQixDQUN6QixBQUlMLHFCckJuR0ksZ0JDbEJ3QixBRGtCeEIsaUJFcURvQyxBRnJEcEMsaUJFcURtRSxDbUJpRGxFLEFBSEwsMkJsQjFHTSxZQUFhLEFBQ2IsY0FBZSxBQUNmLFVBQVksQ0FDYixBTmlERCx5QndCc0RKLHFCckJuR0ksZ0JDZjRCLEFEZTVCLGlCRXFEb0MsQUZyRHBDLGlCRXFEbUUsQ21CaURsRSxBQUhMLDJCbEIxR00sWUFBYSxBQUNiLGNBQWUsQUFDZixVQUFZLENBQ2IsQ0FBQSxBa0J1R0wsMkJBS1EsaUJBQW1CLENBQ3RCLEFBTkwsNkJBUVEsa0JBQW9CLENBT3ZCLEF4QnJFRCx5QndCc0RKLDZCQVVZLGtCQUFvQixDQUszQixDQUFBLEFBZkwsZ0NIN0dJLGNBQWUsQUFDZixjQUFlLEFBQ2YsZUFBZ0IsQUFDaEIsZUFBaUIsQ0d3SFosQUh2SEwsbUNBQ0ksaUJBQW1CLENBTXRCLEFBUEQsMENBR1EsWUFBUyxBQUNULG1CQUFvQixBQUNwQixrQkFBcUIsQ0FDeEIsQUdzSFQsNEJyQnRISSxnQkNsQndCLEFEa0J4QixpQkVxRG9DLEFGckRwQyxpQkVxRG1FLENtQm9FbEUsQUFITCxrQ2xCN0hNLFlBQWEsQUFDYixjQUFlLEFBQ2YsVUFBWSxDQUNiLEFOaURELHlCd0J5RUosNEJyQnRISSxnQkNmNEIsQURlNUIsaUJFcURvQyxBRnJEcEMsaUJFcURtRSxDbUJvRWxFLEFBSEwsa0NsQjdITSxZQUFhLEFBQ2IsY0FBZSxBQUNmLFVBQVksQ0FDYixDQUFBLEFrQjBITCxrQ0FLUSxpQkFBbUIsQ0FDdEIsQUUvSUwsa0N2Qm1CSSxnQkNsQndCLEFEa0J4QixpQkVxRG9DLEFGckRwQyxrQkVxRG1FLEFxQnJFL0Qsa0JBQW1CLEFBQ25CLGtCQUFvQixDQWdCdkIsQUFwQkwsd0NwQllNLFlBQWEsQUFDYixjQUFlLEFBQ2YsVUFBWSxDQUNiLEFOaURELHlCMEJoRUosa0N2Qm1CSSxnQkNmNEIsQURlNUIsaUJFcURvQyxBRnJEcEMsaUJFcURtRSxDcUJwRGxFLEFBcEJMLHdDcEJZTSxZQUFhLEFBQ2IsY0FBZSxBQUNmLFVBQVksQ0FDYixDQUFBLEFvQmZMLHFDQU1ZLGdCQUFpQixBQUNqQixlQUFpQixDQUlwQixBMUJxREwseUIwQmhFSixxQ0FTZ0IsZ0JBQWtCLENBRXpCLENBQUEsQUFYVCxxQ0FhWSxjQUFnQixDQUNuQixBQWRULHdDekJDSSw0QkhLa0MsQUdKbEMsa0JBQW1CLEFBQ25CLHlCSFNvQixBR1JwQixtQkhtQnNCLEFHbEJ0QixxQkFBc0IsQXlCWWQscUJBQXNCLEFBQ3RCLGVBQWlCLENBQ3BCLEFBbkJULDhDekJRUSxXSEttQixBR0puQix5QkhXaUIsQ0dWcEIsQTBCVkwsMkIxQkNJLDRCSEtrQyxBR0psQyxrQkFBbUIsQUFDbkIseUJIU29CLEFHUnBCLG1CSG1Cc0IsQUdsQnRCLHFCQUFzQixBMEJEZCxvQkFBc0IsQ0FDekIsQUFMVCxpQzFCUVEsV0hLbUIsQUdKbkIseUJIV2lCLENHVnBCLEEwQlZMLDZCeEJtQkksZ0JDbEJ3QixBRGtCeEIsaUJFcURvQyxBRnJEcEMsa0JFcURtRSxBc0JoRTNELGtCQUFtQixBQUNuQixtQkFBb0IsQUFDcEIsbUJBQXFCLENBS3hCLEFBZlQsbUNyQllNLFlBQWEsQUFDYixjQUFlLEFBQ2YsVUFBWSxDQUNiLEFOaURELHlCMkJoRUosNkJ4Qm1CSSxnQkNmNEIsQURlNUIsaUJFcURvQyxBRnJEcEMsaUJFcURtRSxDc0J6RDlELEFBZlQsbUNyQllNLFlBQWEsQUFDYixjQUFlLEFBQ2YsVUFBWSxDQUNiLENBQUEsQU5pREQseUIyQmhFSiw2QkFZZ0Isb0JBQXFCLEFBQ3JCLGtCQUFvQixDQUUzQixDQUFBLEFBZlQsbUNUQ0ksMENBQTZCLENTOEJ4QixBQS9CVCw2RXhCbUJJLFdJd0lvQixBSnhJcEIsV1FBNEQsQVJBNUQsY0krRXFCLEFKL0VyQixjSWtGb0IsQ29CakZYLEFBcEJiLHVDQXNCZ0IsZUFBaUIsQ0FPcEIsQTNCbUNULHlCMkJoRUosdUN4Qm1CSSxnQkl3SW9CLEFKeElwQixXUUE0RCxBUkE1RCxxQlM0RHdCLENlbERmLEFBN0JiLGtEeEJtQkksZ0JJd0lvQixBSnhJcEIsWVFBdUUsQVJBdkUsY0lrRm9CLENvQjFFSCxDQUFBLEFBM0JyQiwyQ1RDSSwwQ0FBNkIsQ1MyQ3hCLEFBNUNULDhDQWtDZ0IsZUFBZ0IsQUFDaEIsbUJBQXFCLENBSXhCLEEzQnlCVCx5QjJCaEVKLDhDQXFDb0IsY0FBZ0IsQ0FFdkIsQ0FBQSxBQXZDYix1REF5Q2dCLG9CQUFzQixDQUN6QixBQTFDYixnREErQ2dCLG1CQUFx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eEIsQTdCK0NMLHlCSnVyRUUsMkJpQ3B1RU0sZ0JBQWtCLENBRXpCLENBQUEsQWpDb3VFSCxpQ090dUVFLGVFdUNlLEFGdkNmLGlCRXFEb0MsQUZyRHBDLGlCRXFEbUUsQ3dCN0NsRSxBakNrdUVELHVDVWp2RUUsWUFBYSxBQUNiLGNBQWUsQUFDZixVQUFZLENBQ2IsQVZrdkVELDhDaUN4dUVRLFVBQVksQ0FDZixBN0JzQ0wseUJKb3NFQSx5QmlDdHVFUSxVQUFZLENBRW5CLENBQUEsQWpDc3VFSCx1Q2lDbnVFVSxlQUFnQixBMUJoQnhCLGdCSXdJb0IsQUp4SXBCLFVRQTRELENrQnFCdkQsQWpDa3VFTCxtRGlDcHVFWSxVQUFZLENBQ2YsQWpDcXVFWCxrQ2lDanVFTSxXQUFZLEFBQ1osaUNBQWlCLEFBQWpCLHlCQUFpQixBQUNqQix3QkFBeUIsQUFDekIsZUFBaUIsQ0FJcEIsQWpDK3RFRCx1Q2lDanVFUSwrQkFBaUIsQUFBakIsc0JBQWlCLENBQ3BCLEFqQ2t1RVAsbUJpQy90RU0sa0JBQW9CLENBSXZCLEFqQzZ0RUQscUJpQy90RVEsb0JBQXNCLENBQ3pCLEFqQ2d1RVAsa0JpQzd0RU0sY0FBZ0IsQ0FDbkIsQWpDOHRFSCxrQ2lDNXRFTSxpQkFBbUIsQ0FDdEIsQWpDNnRFSCxzQksxeEVFLDRCSEtrQyxBR0psQyxrQkFBbUIsQUFDbkIseUJIU29CLEFHUnBCLG1CSG1Cc0IsQUdsQnRCLHFCQUFzQixBNEI0RGxCLHFCQUFzQixBQUN0QixXQUFhLENBWWhCLEFqQ3F0RUQsNEJLM3hFSSxXSEttQixBR0puQix5QkhXaUIsQ0dWcEIsQURzREQseUJKdXVFRSxzQmlDbnVFTSxZQUFhLEFBQ2IsZUFBaUIsQ0FTeEIsQ0FBQSxBakM0dEVELG9DaUNsdUVRLGVBQWlCLENBS3BCLEE3QmJMLHlCSjZ1RUksb0NpQ251RVEsZ0JBQWlCLEFBQ2pCLGlCQUFtQixDQUUxQixDQUFBLEFqQ211RVAseUJpQ2h1RU0sYUFBYyxBQUNkLGVBQWdCLEExQjlEcEIsZUV1Q2UsQUZ2Q2YsaUJFcURvQyxBRnJEcEMsaUJFcURtRSxDd0JjbEUsQWpDZ3VFRCwrQlUxeUVFLFlBQWEsQUFDYixjQUFlLEFBQ2YsVUFBWSxDQUNiLEFWMnlFRCw0QnlCanpFQSxjQUFlLEFBQ2YsY0FBZSxBQUNmLGVBQWdCLEFBQ2hCLGVBQWlCLENReUVaLEFqQzB1RUgsK0J5Qmp6RUUsaUJBQW1CLENBTXRCLEF6QjZ5RUcsc0N5Qmp6RUksWUFBUyxBQUNULG1CQUFvQixBQUNwQixrQkFBcUIsQ0FDeEIsQVNkVCw0QjNCY0ksZ0JDbEJ3QixBRGtCeEIsaUJFcURvQyxBRnJEcEMsaUJFcURtRSxDeUJ2RDFELEFBWmIsa0N4Qk9NLFlBQWEsQUFDYixjQUFlLEFBQ2YsVUFBWSxDQUNiLEFOaURELHlCOEIzREosNEIzQmNJLGdCQ2Y0QixBRGU1QixpQkVxRG9DLEFGckRwQyxpQkVxRG1FLEN5QnZEMUQsQUFaYixrQ3hCT00sWUFBYSxBQUNiLGNBQWUsQUFDZixVQUFZLENBQ2IsQ0FBQSxBd0JWTCxrQzdCSkksNEJIS2tDLEFHSmxDLGtCQUFtQixBQUNuQix5QkhTb0IsQUdScEIsbUJIbUJzQixBR2xCdEIscUJBQXNCLEE2Qk1OLHFCQUFzQixBQUN0QixpQkFBbUIsQ0FDdEIsQUFSakIsd0M3QkdRLFdIS21CLEFHSm5CLHlCSFdpQixDR1ZwQixBNkJMTCw4QkFVb0IsYWhDSEksQ2dDSVAsQUFYakIsNkJBaUJZLGlCQUFtQixDQUN0QixBOUJ5Q0wseUI4QjNESixzRDNCY0ksZ0JJd0lvQixBSnhJcEIsV1FBNEQsQVJBNUQsc0JTNER3QixBVDVEeEIsc0JJd0lvQixBdUI3SFIsaUJBQW1CLENBd0IxQixDQUFBLEFBakRULDBEQTRCZ0Isa0JBQW9CLENBQ3ZCLEFBN0JiLHlEQStCZ0IsY0FBZ0IsQ0FDbkIsQUFoQ2IsaUVBa0NnQixlQUFnQixBQUNoQixpQkFBa0IsQUFDbEIsaUJBQWtCLEFBQ2xCLGtCQUFvQixDQUN2QixBQXRDYiw0REF3Q2dCLGFBQWMsQUFDZCxrQkFBbUIsQUFDbkIsV0FBWSxBQUNaLGtCQUFvQixDQUt2QixBOUJXVCx5QjhCM0RKLDREQTZDb0Isa0JBQW1CLEFBQ25CLFNBQVcsQ0FFbEIsQ0FBQSxBQWhEYiw0Q0FvRFEsZUFBaUIsQ0FrQnBCLEFBdEVMLGlJQXdEWSxnQkFBaUIsQTNCMUN6QixXSXdJb0IsQUp4SXBCLFdRQTRELEFSQTVELGNJK0VxQixBSi9FckIsY0lrRm9CLEN1QmhDZixBOUJMTCx5QjhCM0RKLGlJM0JjSSxnQkl3SW9CLEFKeElwQixXUUE0RCxBUkE1RCxxQlM0RHdCLENrQlZuQixDQUFBLEFBaEVULHVJVElJLGNBQWUsQUFDZixjQUFlLEFBQ2YsZUFBZ0IsQUFDaEIsZUFBaUIsQ1N3RFIsQVR2RFQsNklBQ0ksaUJBQW1CLENBTXRCLEFBUEQsMkpBR1EsWUFBUyxBQUNULG1CQUFvQixBQUNwQixrQkFBcUIsQ0FDeEIsQXJCNkNMLHlCOEIzREosaUUzQmNJLGdCSXdJb0IsQUp4SXBCLFlRQXVFLEFSQXZFLGNJa0ZvQixDdUIzQmYsQ0FBQSxBQXJFVCw0QkF3RVEsZUFBaUIsQ0FrQnBCLEFBMUZMLCtCTEpJLGlCQUFtQixDS2dGZCxBOUJqQkwseUI4QjNESiwrQkxDUSxnQkFBa0IsQ0syRWpCLENBQUEsQTlCakJMLHlCOEIzREosMkVMTVksV0FBWSxBQUNaLDJDQUE2QixBQUM3QixZQVZrQixBQVdsQixlQUFpQixDQU94QixDQUFBLEF6QjJDRCx5QjhCM0RKLHNDTG1CWSxVQUFZLENBRW5CLENBQUEsQXpCc0NELHlCOEIzREoscUNMd0JZLFdBQWEsQ0FFcEIsQ0FBQSxBSzFCTCxvQ0E4RVksZ0JBQWlCLEFBQ2pCLGtCQUFtQixBM0JqRTNCLFdJd0lvQixBSnhJcEIsV1FBNEQsQVJBNUQsY0krRXFCLEFKL0VyQixjSWtGb0IsQ3VCWmYsQTlCekJMLHlCOEIzREosb0MzQmNJLGdCSXdJb0IsQUp4SXBCLFdRQTRELEFSQTVELHFCUzREd0IsQ2tCVW5CLENBQUEsQTlCekJMLHlCOEIzREosaUQzQmNJLGdCSXdJb0IsQUp4SXBCLFlRQXVFLEFSQXZFLGNJa0ZvQixDdUJQZixDQUFBLEFBekZULCtCTEpJLGlCQUFtQixDS2tHZCxB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VCx3RDdCL0pRLFdIS21CLEFHSm5CLHlCSFdpQixDR1ZwQixBRHNERCx5QjhCdUdKLGtEQTJDZ0IsWUFBYSxBQUNiLGVBQWlCLENBRXhCLENBQUEsQUNwTlQscUJBQ0ksR0FDSSxxQkFBaUMsQ0FBQSxBQUVyQyxHQUNJLDRCQUE4QixDQUFBLENBQUEsQUFMdEMsYUFDSSxHQUNJLHFCQUFpQyxDQUFBLEFBRXJDLEdBQ0ksNEJBQThCLENBQUEsQ0FBQSxBbkN3b0Z0Qyx1Qm9DN29GSSxvQkFBcUIsQUFDckIsMEJBQWdCLEFBQ2hCLGlCQUFtQixDQThFdEIsQWhDakJHLHlCSm1sRkEsdUJvQzlvRkksbUJBQXFCLENBNEU1QixDQUFBLEFwQ29rRkMsNkJLcHBGRSw0QkhLa0MsQUdKbEMsa0JBQW1CLEFBQ25CLHlCSFNvQixBR1JwQixtQkhtQnNCLEFHbEJ0QixxQkFBc0IsQStCSWxCLG9CQUFzQixDQUN6QixBcENrcEZELG1DS3BwRkksV0hLbUIsQUdKbkIseUJIV2lCLENHVnBCLEFMcXBGSCxpQ081b0ZFLGdCQ2xCd0IsQURrQnhCLGlCRXFEb0MsQUZyRHBDLGlCRXFEbUUsQzJCM0RsRSxBcENzcEZELHVDVXZwRkUsWUFBYSxBQUNiLGNBQWUsQUFDZixVQUFZLENBQ2IsQU5pREQseUJKd21GRSxpQ09ycEZGLGdCQ2Y0QixBRGU1QixpQkVxRG9DLEFGckRwQyxpQkVxRG1FLEMyQjNEbEUsQXBDK3BGRyx1Q1VocUZGLFlBQWEsQUFDYixjQUFlLEFBQ2YsVUFBWSxDQUNiLENBQUEsQVZpcUZILGdDTzdwRkUsV0l3SW9CLEFKeElwQixXUUE0RCxBUkE1RCxjSStFcUIsQUovRXJCLGNJa0ZvQixDeUJyQm5CLEFoQ2hCRCx5QkpzbkZFLGdDb0NycUZNLGtCQUFvQixDQStEM0IsQ0FBQSxBaENoQkQseUJKeW5GRSwyQ29DcHFGVSxrQkFBb0IsQ0FFM0IsQ0FBQSxBaEN5Q0wseUJKNG5GRSxnQ096cUZGLGdCSXdJb0IsQUp4SXBCLFdRQTRELEFSQTVELHFCUzREd0IsQ29CQ3ZCLEFwQ2duRkcsMkNPN3FGSixnQkl3SW9CLEFKeElwQixZUUF1RSxBUkF2RSxjSWtGb0IsQ3lCekVYLENBQUEsQXBDd3FGVCxrQ29DcnFGUSxrQkFBb0IsQ0FDdkIsQXBDc3FGTCx3Q29DcHFGUSxjQUFpQixBQUNqQixrQkFBb0IsQ0FDdkIsQXBDcXFGTCx1Q29DbHFGUSxrQkFBbUIsQUFDbkIsbUJBQW9CLEFBQ3BCLGFBSHFCLEFBSXJCLGtCQUpxQixBQUtyQixXQUFhLENBU2hCLEFoQ1lMLHlCSmdwRkksdUNvQ25xRlEsV0FBYSxDQU9wQixDQUFBLEFwQzhwRkgsMkNvQ2xxRlUsZUFBZ0IsQUFDaEIsZ0JBQWlCLEFBQ2pCLHFCQUF1QixDQUMxQixBaENhVCx5Qkp1cEZFLHlEb0MvcEZjLGFBQWMsQUFDZCxpQkFBbUIsQ0FPMUIsQ0FBQSxBaENBVCx5QkoycEZFLDZEb0M5cEZrQixZQUFjLENBQ2pCLENBQUEsQXBDK3BGakIsZ0RvQ3pwRlksV0FBYSxDQUNoQixBcEMwcEZULDJEb0N0cEZZLFdBQWEsQ0FLaEIsQWhDZFQseUJKa3FGSSwyRG9DdHBGWSxpQkFBbUIsQ0FFMUIsQ0FBQSxBRGpFYixtQkFFUSxlQUFpQixDQUNwQixBQUhMLHNCNUJNSSxnQkNsQndCLEFEa0J4QixpQkVxRG9DLEFGckRwQyxpQkVxRG1FLEMwQnJEbEUsQUFOTCw0QnpCRE0sWUFBYSxBQUNiLGNBQWUsQUFDZixVQUFZLENBQ2IsQU5pREQseUIrQm5ESixzQjVCTUksZ0JDZjRCLEFEZTVCLGlCRXFEb0MsQUZyRHBDLGlCRXFEbUUsQzBCckRsRSxBQU5MLDRCekJETSxZQUFhLEFBQ2IsY0FBZSxBQUNmLFVBQVksQ0FDYixDQUFBLEF5QkZMLDRCQVNRLGlCQUFtQixDQUN0QixBQVZMLDBCQWNZLCtJQUdtQixBQUNuQiwrQ0FHYyxBQUVkLDZDQUdjLEFBRWQscUNBR1MsQUFFVCxpQkFBbUIsQ0FZMUIsQS9CTUQseUIrQm5ESiwwQkFtQ2dCLDZDQUdjLEFBQ2QsK0NBR2MsQUFDZCxpQkFBbUIsQ0FFOUIsQ0FBQSxBQTdDTCxzQkFnRFEsaUJBQW1CLENBZ0l0QixBQWhMTCx5QkFrRFksZUFBaUIsQ0FDcEIsQS9CQUwseUIrQm5ESiw4QkFzRGdCLGFBQWUsQ0FFdEIsQ0FBQSxBQXhEVCx3QkEwRFksd0JqQ3ZEUyxDaUM0RFosQS9CWkwseUIrQm5ESix3QjVCTUksZ0JJd0lvQixBSnhJcEIsV1FBNEQsQVJBNUQsc0JTNER3QixBVDVEeEIscUJJd0lvQixDd0IvRWYsQ0FBQSxBQS9EVCxnQzVCTUksVzRCNEQwQixBNUI1RDFCLFdRQTRELEFSQTVELHNCUzREd0IsQW1CQ2hCLG1CQUFvQixBQUNwQixlQUFpQixDQXdFcEIsQUE1SVQsZ0RBc0VnQixZQUFhLEFBQ2IsWUFBa0IsQUFDbEIscUJBQXNCLEFBQ3RCLGdCQUFrQixDQWtFckIsQS9CeEZULHlCK0JuREosZ0Q1Qk1JLGdCSXdJb0IsQUp4SXBCLFVRQTRELENvQnFJbkQsQUEzSWIsZ0U1Qk1JLG1CV29ENkIsQVhwRDdCLFdZWjBCLEFaWTFCLGFhZ0IrQixDRndEOUIsQWlCOUVMLGdFNUJNSSxzQkl3SW9CLEFKeElwQixtQldvRDZCLEFYcEQ3QixVWUowQixDRDRFekIsQWlCOUVMLGdFNUJNSSxzQkl3SW9CLEFKeElwQixtQldvRDZCLEFYcEQ3QixVWUowQixDRDRFekIsQWlCOUVMLGdFNUJNSSxzQkl3SW9CLEFKeElwQixtQldvRDZCLEFYcEQ3QixVWUowQixDRDRFekIsQWlCOUVMLGdFNUJNSSxzQkl3SW9CLEFKeElwQixtQldvRDZCLEFYcEQ3QixVWUowQixDRDRFekIsQWlCOUVMLGdFNUJNSSxzQkl3SW9CLEFKeElwQixtQldvRDZCLEFYcEQ3QixVWUowQixDRDRFekIsQ0FBQSxBaUI5RUwsOERBK0V3QixtQkFBb0IsQUFDcEIsa0JBQW1CLEFBQ25CLDBDQUF5QyxBQUF6QyxrQ0FBeUMsQUFDekMsK0JBQWdDLEFBQ2hDLHNCQUF3QixDQUMzQixBQXBGckIsNkRBc0Z3QixVQUFXLEFBQ1gsNEJBQTZCLEFBQzdCLHdCQUEwQixDQUM3QixBQXpGckIsa0RBNEZvQixrQkFBbUIsQUFDbkIsa0JBQW1CLEFBQ25CLGdCQUFr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L0J6VWpCLHlCK0JuREosb0ZBd1g0QixtQkFBb0IsQUFDcEIsZ0JBQWlCLEE1Qm5YekMsZ0JJd0lvQixBSnhJcEIsVVFBNEQsQ29Cc1gzQyxBQTVYckIsbUc1Qk1JLG1CV29ENkIsQVhwRDdCLFdZWjBCLEFaWTFCLGFhZ0IrQixDRndEOUIsQWlCOUVMLG9HNUJNSSxzQkl3SW9CLEFKeElwQixtQldvRDZCLEFYcEQ3QixVWUowQixDRDRFekIsQ0FBQSxBaUI5RUwsbUZBOFh3QixjQUFlLEFBQ2YsZUFBaUIsQ0FNcEIsQS9CbFZqQix5QitCbkRKLG1GQWlZNEIscUJBQXNCLEFBQ3RCLGdCQUFpQixBNUI1WHpDLGdCSXdJb0IsQUp4SXBCLFVRQTRELENvQitYM0MsQUFyWXJCLGtHNUJNSSxtQldvRDZCLEFYcEQ3QixXWVowQixBWlkxQixhYWdCK0IsQ0Z3RDlCLEFpQjlFTCxtRzVCTUksc0JJd0lvQixBSnhJcEIsbUJXb0Q2QixBWHBEN0IsVVlKMEIsQ0Q0RXpCLENBQUEsQWlCOUVMLDJFNUJNSSxXNEJrWWtDLEE1QmxZbEMsV1FBNEQsQVJBNUQsc0JTNER3QixBbUJ1VVIsZUFBaUIsQ0F5QnBCLEEvQi9XYix5QitCbkRKLGdMNUJNSSxnQkl3SW9CLEFKeElwQixVUUE0RCxDb0IyWjNDLEFBamFyQiw4TTVCTUksbUJXb0Q2QixBWHBEN0IsV1laMEIsQVpZMUIsYWFnQitCLENGd0Q5QixBaUI5RUwsZ041Qk1JLHNCSXdJb0IsQUp4SXBCLG1CV29ENkIsQVhwRDdCLFVZSjBCLENENEV6QixDQUFBLEFpQjlFTCxvTEFnWjRCLGdCQUFrQixBQUNsQixVQUFhLENBQ2hCLEFBbFp6QixzTFZKSSxjQUFlLEFBQ2YsY0FBZSxBQUNmLGVBQWdCLEFBQ2hCLGVBQWlCLENVaWFJLEFWaGFyQiw0TEFDSSxpQkFBbUIsQ0FNdEIsQUFQRCwwTUFHUSxZQUFTLEFBQ1QsbUJBQW9CLEFBQ3BCLGtCQUFxQixDQUN4QixBVU5ULDRMQXVaZ0MsY0FBZSxBQUNmLGlCQUFtQixDQU90QixBL0I1V3pCLHlCK0JuREosNExBMFpvQyxrQkFBb0IsQ0FLM0IsQ0FBQSxBQS9aN0IsME1BNlpvQyxZQUFjLENBQ2pCLEFBOVpqQyxxQ0F1YVEsc0JBQXdCLENBQzNCLEEvQnJYRCx5QmlDaEVKLHlCQUlnQixjQUFnQixDQUV2QixDQUFBLEFBTlQsOEI5Qm1CSSxnQkNsQndCLEFEa0J4QixpQkVxRG9DLEFGckRwQyxpQkVxRG1FLEM0Qi9EOUQsQUFUVCxvQzNCWU0sWUFBYSxBQUNiLGNBQWUsQUFDZixVQUFZLENBQ2IsQU5pREQseUJpQ2hFSiw4QjlCbUJJLGdCQ2Y0QixBRGU1QixpQkVxRG9DLEFGckRwQyxpQkVxRG1FLEM0Qi9EOUQsQUFUVCxvQzNCWU0sWUFBYSxBQUNiLGNBQWUsQUFDZixVQUFZLENBQ2IsQ0FBQSxBMkJmTCxvQ0FXWSxrQkFBbUIsQUFDbkIsZUFBaUIsQ0FDcEIsQUFiVCw2Q0FlWSxvQkFBcUIsQUFDckIsbUJBQW9CLEFmZjVCLDBDQUE2QixDZTZGeEIsQUE5RlQsNEQ5Qm1CSSxXSXdJb0IsQUp4SXBCLFdRQTRELEFSQTVELGNJK0VxQixBSi9FckIsY0lrRm9CLEMwQlJYLEFqQzdCVCx5QmlDaEVKLDhFQXNCd0IsZUFBaUIsQ0FFeEIsQ0FBQSxBakN3Q2IseUJpQ2hFSixvRkE0QjRCLFNBQVksQTlCVHBDLGdCSXdJb0IsQUp4SXBCLFdRQTRELEFSQTVELHFCUzREd0IsQ3FCaERQLENBQUEsQWpDaUNqQix5QmlDaEVKLG1GOUJtQkksZ0JJd0lvQixBSnhJcEIsWVFBdUUsQVJBdkUsZUlrRm9CLEFKbEZwQixzQkl3SW9CLEEwQnZISSxVQUFZLENBRW5CLENBQUEsQUF0Q3JCLDBFQXlDb0IsZ0JBQWtCLENBYXJCLEFqQ1ViLHlCaUNoRUosaUY5Qm1CSSxnQkl3SW9CLEFKeElwQixXUUE0RCxBUkE1RCxzQlM0RHdCLEFUNUR4QixxQkl3SW9CLEMwQjVHSCxDQUFBLEFqQ2lCakIseUJpQ2hFSixnRjlCbUJJLGdCSXdJb0IsQUp4SXBCLFdRQTRELEFSQTVELHNCUzREd0IsQVQ1RHhCLHVCSXdJb0IsQzBCdEdILENBQUEsQUFyRHJC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QWQzQkQseUJxQ2hFSiw0RGxDbUJJLGdCSXdJb0IsQUp4SXBCLFVRQTRELEMwQmdGbkQsQUFuR2IsNEVsQ21CSSxtQldvRDZCLEFYcEQ3QixXWVowQixBWlkxQixhYWdCK0IsQ0Z3RDlCLEF1QjNGTCw0RWxDbUJJLHNCSXdJb0IsQUp4SXBCLG1CV29ENkIsQVhwRDdCLFVZSjBCLENENEV6QixBdUIzRkwsNEVsQ21CSSxzQkl3SW9CLEFKeElwQixtQldvRDZCLEFYcEQ3QixVWUowQixDRDRFekIsQ0FBQSxBZDNCRCx5QnFDaEVKLHNEbENtQkksZ0JrQ3NGb0MsQWxDdEZwQyxpQkVxRG9DLEFGckRwQyxpQkVxRG1FLENnQ3NDOUQsQUE5R1QsNEQvQllNLFlBQWEsQUFDYixjQUFlLEFBQ2YsVUFBWSxDQUNiLENBQUEsQStCZkwsZ0VsQ21CSSxnQkl3SW9CLEFKeElwQixVUUE0RCxDMEIwRm5ELEFBN0diLCtFbENtQkksbUJXb0Q2QixBWHBEN0IsV1laMEIsQVpZMUIsYWFnQitCLENGd0Q5QixBdUIzRkwsZ0ZsQ21CSSxzQkl3SW9CLEFKeElwQixtQldvRDZCLEFYcEQ3QixVWUowQixDRDRFekIsQXVCM0ZMLDREbENtQkksV0l3SW9CLEFKeElwQixVUUE0RCxDMEJpR25ELEFBcEhiLDRFbENtQkksY21Dd0RpQixBbkN4RGpCLG1CV29ENkIsQVhwRDdCLFVZSjBCLENENEV6QixBZDNCRCx5QnFDaEVKLDZDbENtQkksZ0JrQ3VHb0MsQWxDdkdwQyxpQkVxRG9DLEFGckRwQyxpQkVxRG1FLENnQ3VEOUQsQUEvSFQsbUQvQllNLFlBQWEsQUFDYixjQUFlLEFBQ2YsVUFBWSxDQUNiLENBQUEsQStCZkwsdURsQ21CSSxnQkl3SW9CLEFKeElwQixVUUE0RCxDMEIyR25ELEFBOUhiLHNFbENtQkksbUJXb0Q2QixBWHBEN0IsV1laMEIsQVpZMUIsYWFnQitCLENGd0Q5QixBdUIzRkwsdUVsQ21CSSxzQkl3SW9CLEFKeElwQixtQldvRDZCLEFYcEQ3QixVWUowQixDRDRFekIsQWQzQkQseUJxQ2hFSiwrQ2xDbUJJLGdCa0NpSG9DLEFsQ2pIcEMsaUJFcURvQyxBRnJEcEMsaUJFcURtRSxDZ0NpRTlELEFBeklULHFEL0JZTSxZQUFhLEFBQ2IsY0FBZSxBQUNmLFVBQVksQ0FDYixDQUFBLEErQmZMLHlEbENtQkksZ0JJd0lvQixBSnhJcEIsVVFBNEQsQzBCcUhuRCxBQXhJYix3RWxDbUJJLG1CV29ENkIsQVhwRDdCLFdZWjBCLEFaWTFCLGFhZ0IrQixDRndEOUIsQXVCM0ZMLHlFbENtQkksc0JJd0lvQixBSnhJcEIsbUJXb0Q2QixBWHBEN0IsVVlKMEIsQ0Q0RXpCIiwiZmlsZSI6Im1haW4uY3NzIiwic291cmNlc0NvbnRlbnQiOlsiQGZvbnQtZmFjZSB7XG4gICAgZm9udC1mYW1pbHk6IFwiTmV4YVwiO1xuICAgIHNyYzogdXJsKFwiLi4vZm9udHMvbmV4YV9saWdodC13ZWJmb250LmVvdFwiKTtcbiAgICBzcmM6IHVybChcIi4uL2ZvbnRzL25leGFfbGlnaHQtd2ViZm9udC5lb3Q/I2llZml4XCIpIGZvcm1hdChcImVtYmVkZGVkLW9wZW50eXBlXCIpLFxuICAgICAgICAgdXJsKFwiLi4vZm9udHMvbmV4YV9saWdodC13ZWJmb250LndvZmYyXCIpIGZvcm1hdChcIndvZmYyXCIpLFxuICAgICAgICAgdXJsKFwiLi4vZm9udHMvbmV4YV9saWdodC13ZWJmb250LndvZmZcIikgZm9ybWF0KFwid29mZlwiKSxcbiAgICAgICAgIHVybChcIi4uL2ZvbnRzL25leGFfbGlnaHQtd2ViZm9udC50dGZcIikgZm9ybWF0KFwidHJ1ZXR5cGVcIik7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG59XG5cbkBmb250LWZhY2Uge1xuICAgIGZvbnQtZmFtaWx5OiBcIk5leGFcIjtcbiAgICBzcmM6IHVybChcIi4uL2ZvbnRzL25leGFfYm9sZC13ZWJmb250LmVvdFwiKTtcbiAgICBzcmM6IHVybChcIi4uL2ZvbnRzL25leGFfYm9sZC13ZWJmb250LmVvdD8jaWVmaXhcIikgZm9ybWF0KFwiZW1iZWRkZWQtb3BlbnR5cGVcIiksXG4gICAgICAgICB1cmwoXCIuLi9mb250cy9uZXhhX2JvbGQtd2ViZm9udC53b2ZmMlwiKSBmb3JtYXQoXCJ3b2ZmMlwiKSxcbiAgICAgICAgIHVybChcIi4uL2ZvbnRzL25leGFfYm9sZC13ZWJmb250LndvZmZcIikgZm9ybWF0KFwid29mZlwiKSxcbiAgICAgICAgIHVybChcIi4uL2ZvbnRzL25leGFfYm9sZC13ZWJmb250LnR0ZlwiKSBmb3JtYXQoXCJ0cnVldHlwZVwiKTtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG59XG5cbkBmb250LWZhY2Uge1xuICAgIGZvbnQtZmFtaWx5OiBcInRyYWNraXItaWNvbnNcIjtcbiAgICBzcmM6IHVybChcIi4uL2ZvbnRzL3RyYWNraXItaWNvbnMuZW90PzU4NzMzMjQ5XCIpO1xuICAgIHNyYzogdXJsKFwiLi4vZm9udHMvdHJhY2tpci1pY29ucy5lb3Q/NTg3MzMyNDkjaWVmaXhcIikgZm9ybWF0KFwiZW1iZWRkZWQtb3BlbnR5cGVcIiksXG4gICAgICAgICB1cmwoXCIuLi9mb250cy90cmFja2lyLWljb25zLndvZmY/NTg3MzMyNDlcIikgZm9ybWF0KFwid29mZlwiKSxcbiAgICAgICAgIHVybChcIi4uL2ZvbnRzL3RyYWNraXItaWNvbnMudHRmPzU4NzMzMjQ5XCIpIGZvcm1hdChcInRydWV0eXBlXCIpLFxuICAgICAgICAgdXJsKFwiLi4vZm9udHMvdHJhY2tpci1pY29ucy5zdmc/NTg3MzMyNDkjdHJhY2tpci1pY29uc1wiKSBmb3JtYXQoXCJzdmdcIik7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG59XG5cbi8vIEljb24gc3R5bGVzIGJlbG93IHRha2VuIGZyb20gRm9udGVsbG8gZ2VuZXJhdGVkIENTUy5cbi8vIFJlZmFjdG9yZWQgaW50byBTQ1NTIG1peGlucy92YXJpYWJsZXMgYW5kIHNsaWdodGx5IG1vZGlmaWVkLlxuLy8gTWF5IG5lZWQgbW9yZSBhdHRlbnRpb24hXG4laWNvbi1mb250IHtcbiAgICBmb250LWZhbWlseTogXCJ0cmFja2lyLWljb25zXCI7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgc3BlYWs6IG5vbmU7XG5cbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBpbmhlcml0O1xuICAgIHdpZHRoOiAxZW07XG4gICAgbWFyZ2luLXJpZ2h0OiAuMmVtO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgIC8qIEZvciBzYWZldHkgLSByZXNldCBwYXJlbnQgc3R5bGVzIHRoYXQgY2FuIGJyZWFrIGdseXBoIGNvZGVzICovXG4gICAgZm9udC12YXJpYW50OiBub3JtYWw7XG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG5cbiAgICAvKiBmaXggYnV0dG9ucyBoZWlnaHQsIGZvciB0d2l0dGVyIGJvb3RzdHJhcCAqL1xuICAgIC8vbGluZS1oZWlnaHQ6IDFlbTtcblxuICAgIC8qIEFuaW1hdGlvbiBjZW50ZXIgY29tcGVuc2F0aW9uIC0gbWFyZ2lucyBzaG91bGQgYmUgc3ltbWV0cmljICovXG4gICAgLyogcmVtb3ZlIGlmIG5vdCBuZWVkZWQgKi9cbiAgICBtYXJnaW4tbGVmdDogLjJlbTtcbn1cblxuQG1peGluIGljb24oJGdseXBoOiBudWxsKSB7XG4gICAgQGlmICgkZ2x5cGgpIHtcbiAgICAgICAgY29udGVudDogJGdseXBoO1xuICAgIH1cblxuICAgIEBleHRlbmQgJWljb24tZm9udDtcbn1cblxuW2NsYXNzXj1cImljb24tXCJdOmJlZm9yZSwgW2NsYXNzKj1cIiBpY29uLVwiXTpiZWZvcmUge1xuICAgIEBleHRlbmQgJWljb24tZm9udDtcbn1cblxuJGljb24tZ2x5cGgtYmFza2V0OiBcIlxcZTgwMFwiO1xuLmljb24tYmFza2V0OmJlZm9yZSB7IGNvbnRlbnQ6ICRpY29uLWdseXBoLWJhc2tldDsgfVxuXG4kaWNvbi1nbHlwaC1jaGV2cm9uLXNtYWxsLXJpZ2h0OiBcIlxcZTgwMVwiO1xuLmljb24tY2hldnJvbi1zbWFsbC1yaWdodDpiZWZvcmUgeyBjb250ZW50OiAkaWNvbi1nbHlwaC1jaGV2cm9uLXNtYWxsLXJpZ2h0OyB9XG5cbiRpY29uLWdseXBoLXR3aXRjaDogXCJcXGU5MDBcIjtcbi5pY29uLXR3aXRjaDpiZWZvcmUgeyBjb250ZW50OiAkaWNvbi1nbHlwaC10d2l0Y2g7IH1cblxuJGljb24tZ2x5cGgteW91dHViZTogXCJcXGU5MDFcIjtcbi5pY29uLXlvdXR1YmUtcGxheTpiZWZvcmUgeyBjb250ZW50OiAkaWNvbi1nbHlwaC15b3V0dWJlOyB9XG5cbiRpY29uLWdseXBoLXR3aXR0ZXI6IFwiXFxlOTAyXCI7XG4uaWNvbi10d2l0dGVyOmJlZm9yZSB7IGNvbnRlbnQ6ICRpY29uLWdseXBoLXR3aXR0ZXI7IH1cblxuJGljb24tZ2x5cGgtZmFjZWJvb2s6IFwiXFxlOTAzXCI7XG4uaWNvbi1mYWNlYm9vazpiZWZvcmUgeyBjb250ZW50OiAkaWNvbi1nbHlwaC1mYWNlYm9vazsgfVxuXG4kaWNvbi1nbHlwaC1yZWZyZXNoOiBcIlxcZTgwMlwiO1xuLmljb24tcmVmcmVzaDpiZWZvcmUgeyBjb250ZW50OiAkaWNvbi1nbHlwaC1yZWZyZXNoOyB9XG5cbiRpY29uLWdseXBoLWxpbmstZXh0OiBcIlxcZTgwM1wiO1xuLmljb24tbGluay1leHQ6YmVmb3JlIHsgY29udGVudDogJGljb24tZ2x5cGgtbGluay1leHQ7IH1cblxuJGljb24tZ2x5cGgtcGxheS1jaXJjbGVkOiBcIlxcZTgwNFwiO1xuLmljb24tcGxheS1jaXJjbGVkOmJlZm9yZSB7IGNvbnRlbnQ6ICRpY29uLWdseXBoLXBsYXktY2lyY2xlZDsgfVxuXG4kaWNvbi1nbHlwaC1ibG9jazogXCJcXGU4MDVcIjtcbi5pY29uLWJsb2NrOmJlZm9yZSB7IGNvbnRlbnQ6ICRpY29uLWdseXBoLWJsb2NrOyB9XG5cbiRpY29uLWdseXBoLW9rLWNpcmNsZWQyOiBcIlxcZTgwNlwiO1xuLmljb24tb2stY2lyY2xlZDI6YmVmb3JlIHsgY29udGVudDogJGljb24tZ2x5cGgtb2stY2lyY2xlZDI7IH1cblxuJGljb24tZ2x5cGgtb2s6IFwiXFxlODA3XCI7XG4uaWNvbi1vazpiZWZvcmUgeyBjb250ZW50OiAkaWNvbi1nbHlwaC1vazsgfVxuXG4kaWNvbi1nbHlwaC11cDogXCJcXGU4MDlcIjtcbi5pY29uLXVwLW9wZW4tYmlnOmJlZm9yZSB7IGNvbnRlbnQ6ICRpY29uLWdseXBoLXVwOyB9XG5cbiRpY29uLWdseXBoLWRvd246IFwiXFxlODA4XCI7XG4uaWNvbi1kb3duLW9wZW4tYmlnOmJlZm9yZSB7IGNvbnRlbnQ6ICRpY29uLWdseXBoLWRvd247IH1cbiIsIi8qISBub3JtYWxpemUuY3NzIHYzLjAuMyB8IE1JVCBMaWNlbnNlIHwgZ2l0aHViLmNvbS9uZWNvbGFzL25vcm1hbGl6ZS5jc3MgKi9cblxuLyoqXG4gKiAxLiBTZXQgZGVmYXVsdCBmb250IGZhbWlseSB0byBzYW5zLXNlcmlmLlxuICogMi4gUHJldmVudCBpT1MgYW5kIElFIHRleHQgc2l6ZSBhZGp1c3QgYWZ0ZXIgZGV2aWNlIG9yaWVudGF0aW9uIGNoYW5nZSxcbiAqICAgIHdpdGhvdXQgZGlzYWJsaW5nIHVzZXIgem9vbS5cbiAqL1xuXG5odG1sIHtcbiAgICBmb250LWZhbWlseTogc2Fucy1zZXJpZjsgLyogMSAqL1xuICAgIC1tcy10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvKiAyICovXG4gICAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvKiAyICovXG59XG5cbi8qKlxuICogUmVtb3ZlIGRlZmF1bHQgbWFyZ2luLlxuICovXG5cbmJvZHkge1xuICAgIG1hcmdpbjogMDtcbn1cblxuLyogSFRNTDUgZGlzcGxheSBkZWZpbml0aW9uc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBDb3JyZWN0IGBibG9ja2AgZGlzcGxheSBub3QgZGVmaW5lZCBmb3IgYW55IEhUTUw1IGVsZW1lbnQgaW4gSUUgOC85LlxuICogQ29ycmVjdCBgYmxvY2tgIGRpc3BsYXkgbm90IGRlZmluZWQgZm9yIGBkZXRhaWxzYCBvciBgc3VtbWFyeWAgaW4gSUUgMTAvMTFcbiAqIGFuZCBGaXJlZm94LlxuICogQ29ycmVjdCBgYmxvY2tgIGRpc3BsYXkgbm90IGRlZmluZWQgZm9yIGBtYWluYCBpbiBJRSAxMS5cbiAqL1xuXG5hcnRpY2xlLFxuYXNpZGUsXG5kZXRhaWxzLFxuZmlnY2FwdGlvbixcbmZpZ3VyZSxcbmZvb3RlcixcbmhlYWRlcixcbmhncm91cCxcbm1haW4sXG5tZW51LFxubmF2LFxuc2VjdGlvbixcbnN1bW1hcnkge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgYGlubGluZS1ibG9ja2AgZGlzcGxheSBub3QgZGVmaW5lZCBpbiBJRSA4LzkuXG4gKiAyLiBOb3JtYWxpemUgdmVydGljYWwgYWxpZ25tZW50IG9mIGBwcm9ncmVzc2AgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgT3BlcmEuXG4gKi9cblxuYXVkaW8sXG5jYW52YXMsXG5wcm9ncmVzcyxcbnZpZGVvIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IC8qIDEgKi9cbiAgICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBQcmV2ZW50IG1vZGVybiBicm93c2VycyBmcm9tIGRpc3BsYXlpbmcgYGF1ZGlvYCB3aXRob3V0IGNvbnRyb2xzLlxuICogUmVtb3ZlIGV4Y2VzcyBoZWlnaHQgaW4gaU9TIDUgZGV2aWNlcy5cbiAqL1xuXG5hdWRpbzpub3QoW2NvbnRyb2xzXSkge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgaGVpZ2h0OiAwO1xufVxuXG4vKipcbiAqIEFkZHJlc3MgYFtoaWRkZW5dYCBzdHlsaW5nIG5vdCBwcmVzZW50IGluIElFIDgvOS8xMC5cbiAqIEhpZGUgdGhlIGB0ZW1wbGF0ZWAgZWxlbWVudCBpbiBJRSA4LzkvMTAvMTEsIFNhZmFyaSwgYW5kIEZpcmVmb3ggPCAyMi5cbiAqL1xuXG5baGlkZGVuXSxcbnRlbXBsYXRlIHtcbiAgICBkaXNwbGF5OiBub25lO1xufVxuXG4vKiBMaW5rc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGdyYXkgYmFja2dyb3VuZCBjb2xvciBmcm9tIGFjdGl2ZSBsaW5rcyBpbiBJRSAxMC5cbiAqL1xuXG5hIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuLyoqXG4gKiBJbXByb3ZlIHJlYWRhYmlsaXR5IG9mIGZvY3VzZWQgZWxlbWVudHMgd2hlbiB0aGV5IGFyZSBhbHNvIGluIGFuXG4gKiBhY3RpdmUvaG92ZXIgc3RhdGUuXG4gKi9cblxuYTphY3RpdmUsXG5hOmhvdmVyIHtcbiAgICBvdXRsaW5lOiAwO1xufVxuXG4vKiBUZXh0LWxldmVsIHNlbWFudGljc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBBZGRyZXNzIHN0eWxpbmcgbm90IHByZXNlbnQgaW4gSUUgOC85LzEwLzExLCBTYWZhcmksIGFuZCBDaHJvbWUuXG4gKi9cblxuYWJiclt0aXRsZV0ge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBkb3R0ZWQ7XG59XG5cbi8qKlxuICogQWRkcmVzcyBzdHlsZSBzZXQgdG8gYGJvbGRlcmAgaW4gRmlyZWZveCA0KywgU2FmYXJpLCBhbmQgQ2hyb21lLlxuICovXG5cbmIsXG5zdHJvbmcge1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4vKipcbiAqIEFkZHJlc3Mgc3R5bGluZyBub3QgcHJlc2VudCBpbiBTYWZhcmkgYW5kIENocm9tZS5cbiAqL1xuXG5kZm4ge1xuICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbn1cblxuLyoqXG4gKiBBZGRyZXNzIHZhcmlhYmxlIGBoMWAgZm9udC1zaXplIGFuZCBtYXJnaW4gd2l0aGluIGBzZWN0aW9uYCBhbmQgYGFydGljbGVgXG4gKiBjb250ZXh0cyBpbiBGaXJlZm94IDQrLCBTYWZhcmksIGFuZCBDaHJvbWUuXG4gKi9cblxuaDEge1xuICAgIGZvbnQtc2l6ZTogMmVtO1xuICAgIG1hcmdpbjogMC42N2VtIDA7XG59XG5cbi8qKlxuICogQWRkcmVzcyBzdHlsaW5nIG5vdCBwcmVzZW50IGluIElFIDgvOS5cbiAqL1xuXG5tYXJrIHtcbiAgICBiYWNrZ3JvdW5kOiAjZmYwO1xuICAgIGNvbG9yOiAjMDAwO1xufVxuXG4vKipcbiAqIEFkZHJlc3MgaW5jb25zaXN0ZW50IGFuZCB2YXJpYWJsZSBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbnNtYWxsIHtcbiAgICBmb250LXNpemU6IDgwJTtcbn1cblxuLyoqXG4gKiBQcmV2ZW50IGBzdWJgIGFuZCBgc3VwYCBhZmZlY3RpbmcgYGxpbmUtaGVpZ2h0YCBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxuc3ViLFxuc3VwIHtcbiAgICBmb250LXNpemU6IDc1JTtcbiAgICBsaW5lLWhlaWdodDogMDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuXG5zdXAge1xuICAgIHRvcDogLTAuNWVtO1xufVxuXG5zdWIge1xuICAgIGJvdHRvbTogLTAuMjVlbTtcbn1cblxuLyogRW1iZWRkZWQgY29udGVudFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBSZW1vdmUgYm9yZGVyIHdoZW4gaW5zaWRlIGBhYCBlbGVtZW50IGluIElFIDgvOS8xMC5cbiAqL1xuXG5pbWcge1xuICAgIGJvcmRlcjogMDtcbn1cblxuLyoqXG4gKiBDb3JyZWN0IG92ZXJmbG93IG5vdCBoaWRkZW4gaW4gSUUgOS8xMC8xMS5cbiAqL1xuXG5zdmc6bm90KDpyb290KSB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLyogR3JvdXBpbmcgY29udGVudFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBBZGRyZXNzIG1hcmdpbiBub3QgcHJlc2VudCBpbiBJRSA4LzkgYW5kIFNhZmFyaS5cbiAqL1xuXG5maWd1cmUge1xuICAgIG1hcmdpbjogMWVtIDQwcHg7XG59XG5cbi8qKlxuICogQWRkcmVzcyBkaWZmZXJlbmNlcyBiZXR3ZWVuIEZpcmVmb3ggYW5kIG90aGVyIGJyb3dzZXJzLlxuICovXG5cbmhyIHtcbiAgICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgICBoZWlnaHQ6IDA7XG59XG5cbi8qKlxuICogQ29udGFpbiBvdmVyZmxvdyBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxucHJlIHtcbiAgICBvdmVyZmxvdzogYXV0bztcbn1cblxuLyoqXG4gKiBBZGRyZXNzIG9kZCBgZW1gLXVuaXQgZm9udCBzaXplIHJlbmRlcmluZyBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxuY29kZSxcbmtiZCxcbnByZSxcbnNhbXAge1xuICAgIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTtcbiAgICBmb250LXNpemU6IDFlbTtcbn1cblxuLyogRm9ybXNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogS25vd24gbGltaXRhdGlvbjogYnkgZGVmYXVsdCwgQ2hyb21lIGFuZCBTYWZhcmkgb24gT1MgWCBhbGxvdyB2ZXJ5IGxpbWl0ZWRcbiAqIHN0eWxpbmcgb2YgYHNlbGVjdGAsIHVubGVzcyBhIGBib3JkZXJgIHByb3BlcnR5IGlzIHNldC5cbiAqL1xuXG4vKipcbiAqIDEuIENvcnJlY3QgY29sb3Igbm90IGJlaW5nIGluaGVyaXRlZC5cbiAqICAgIEtub3duIGlzc3VlOiBhZmZlY3RzIGNvbG9yIG9mIGRpc2FibGVkIGVsZW1lbnRzLlxuICogMi4gQ29ycmVjdCBmb250IHByb3BlcnRpZXMgbm90IGJlaW5nIGluaGVyaXRlZC5cbiAqIDMuIEFkZHJlc3MgbWFyZ2lucyBzZXQgZGlmZmVyZW50bHkgaW4gRmlyZWZveCA0KywgU2FmYXJpLCBhbmQgQ2hyb21lLlxuICovXG5cbmJ1dHRvbixcbmlucHV0LFxub3B0Z3JvdXAsXG5zZWxlY3QsXG50ZXh0YXJlYSB7XG4gICAgY29sb3I6IGluaGVyaXQ7IC8qIDEgKi9cbiAgICBmb250OiBpbmhlcml0OyAvKiAyICovXG4gICAgbWFyZ2luOiAwOyAvKiAzICovXG59XG5cbi8qKlxuICogQWRkcmVzcyBgb3ZlcmZsb3dgIHNldCB0byBgaGlkZGVuYCBpbiBJRSA4LzkvMTAvMTEuXG4gKi9cblxuYnV0dG9uIHtcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbn1cblxuLyoqXG4gKiBBZGRyZXNzIGluY29uc2lzdGVudCBgdGV4dC10cmFuc2Zvcm1gIGluaGVyaXRhbmNlIGZvciBgYnV0dG9uYCBhbmQgYHNlbGVjdGAuXG4gKiBBbGwgb3RoZXIgZm9ybSBjb250cm9sIGVsZW1lbnRzIGRvIG5vdCBpbmhlcml0IGB0ZXh0LXRyYW5zZm9ybWAgdmFsdWVzLlxuICogQ29ycmVjdCBgYnV0dG9uYCBzdHlsZSBpbmhlcml0YW5jZSBpbiBGaXJlZm94LCBJRSA4LzkvMTAvMTEsIGFuZCBPcGVyYS5cbiAqIENvcnJlY3QgYHNlbGVjdGAgc3R5bGUgaW5oZXJpdGFuY2UgaW4gRmlyZWZveC5cbiAqL1xuXG5idXR0b24sXG5zZWxlY3Qge1xuICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xufVxuXG4vKipcbiAqIDEuIEF2b2lkIHRoZSBXZWJLaXQgYnVnIGluIEFuZHJvaWQgNC4wLiogd2hlcmUgKDIpIGRlc3Ryb3lzIG5hdGl2ZSBgYXVkaW9gXG4gKiAgICBhbmQgYHZpZGVvYCBjb250cm9scy5cbiAqIDIuIENvcnJlY3QgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSBgaW5wdXRgIHR5cGVzIGluIGlPUy5cbiAqIDMuIEltcHJvdmUgdXNhYmlsaXR5IGFuZCBjb25zaXN0ZW5jeSBvZiBjdXJzb3Igc3R5bGUgYmV0d2VlbiBpbWFnZS10eXBlXG4gKiAgICBgaW5wdXRgIGFuZCBvdGhlcnMuXG4gKi9cblxuYnV0dG9uLFxuaHRtbCBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdLCAvKiAxICovXG5pbnB1dFt0eXBlPVwicmVzZXRcIl0sXG5pbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjsgLyogMiAqL1xuICAgIGN1cnNvcjogcG9pbnRlcjsgLyogMyAqL1xufVxuXG4vKipcbiAqIFJlLXNldCBkZWZhdWx0IGN1cnNvciBmb3IgZGlzYWJsZWQgZWxlbWVudHMuXG4gKi9cblxuYnV0dG9uW2Rpc2FibGVkXSxcbmh0bWwgaW5wdXRbZGlzYWJsZWRdIHtcbiAgICBjdXJzb3I6IGRlZmF1bHQ7XG59XG5cbi8qKlxuICogUmVtb3ZlIGlubmVyIHBhZGRpbmcgYW5kIGJvcmRlciBpbiBGaXJlZm94IDQrLlxuICovXG5cbmJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lcixcbmlucHV0OjotbW96LWZvY3VzLWlubmVyIHtcbiAgICBib3JkZXI6IDA7XG4gICAgcGFkZGluZzogMDtcbn1cblxuLyoqXG4gKiBBZGRyZXNzIEZpcmVmb3ggNCsgc2V0dGluZyBgbGluZS1oZWlnaHRgIG9uIGBpbnB1dGAgdXNpbmcgYCFpbXBvcnRhbnRgIGluXG4gKiB0aGUgVUEgc3R5bGVzaGVldC5cbiAqL1xuXG5pbnB1dCB7XG4gICAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbn1cblxuLyoqXG4gKiBJdCdzIHJlY29tbWVuZGVkIHRoYXQgeW91IGRvbid0IGF0dGVtcHQgdG8gc3R5bGUgdGhlc2UgZWxlbWVudHMuXG4gKiBGaXJlZm94J3MgaW1wbGVtZW50YXRpb24gZG9lc24ndCByZXNwZWN0IGJveC1zaXppbmcsIHBhZGRpbmcsIG9yIHdpZHRoLlxuICpcbiAqIDEuIEFkZHJlc3MgYm94IHNpemluZyBzZXQgdG8gYGNvbnRlbnQtYm94YCBpbiBJRSA4LzkvMTAuXG4gKiAyLiBSZW1vdmUgZXhjZXNzIHBhZGRpbmcgaW4gSUUgOC85LzEwLlxuICovXG5cbmlucHV0W3R5cGU9XCJjaGVja2JveFwiXSxcbmlucHV0W3R5cGU9XCJyYWRpb1wiXSB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDsgLyogMSAqL1xuICAgIHBhZGRpbmc6IDA7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBGaXggdGhlIGN1cnNvciBzdHlsZSBmb3IgQ2hyb21lJ3MgaW5jcmVtZW50L2RlY3JlbWVudCBidXR0b25zLiBGb3IgY2VydGFpblxuICogYGZvbnQtc2l6ZWAgdmFsdWVzIG9mIHRoZSBgaW5wdXRgLCBpdCBjYXVzZXMgdGhlIGN1cnNvciBzdHlsZSBvZiB0aGVcbiAqIGRlY3JlbWVudCBidXR0b24gdG8gY2hhbmdlIGZyb20gYGRlZmF1bHRgIHRvIGB0ZXh0YC5cbiAqL1xuXG5pbnB1dFt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxuaW5wdXRbdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiB7XG4gICAgaGVpZ2h0OiBhdXRvO1xufVxuXG4vKipcbiAqIDEuIEFkZHJlc3MgYGFwcGVhcmFuY2VgIHNldCB0byBgc2VhcmNoZmllbGRgIGluIFNhZmFyaSBhbmQgQ2hyb21lLlxuICogMi4gQWRkcmVzcyBgYm94LXNpemluZ2Agc2V0IHRvIGBib3JkZXItYm94YCBpbiBTYWZhcmkgYW5kIENocm9tZS5cbiAqL1xuXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdIHtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IHRleHRmaWVsZDsgLyogMSAqL1xuICAgIGJveC1zaXppbmc6IGNvbnRlbnQtYm94OyAvKiAyICovXG59XG5cbi8qKlxuICogUmVtb3ZlIGlubmVyIHBhZGRpbmcgYW5kIHNlYXJjaCBjYW5jZWwgYnV0dG9uIGluIFNhZmFyaSBhbmQgQ2hyb21lIG9uIE9TIFguXG4gKiBTYWZhcmkgKGJ1dCBub3QgQ2hyb21lKSBjbGlwcyB0aGUgY2FuY2VsIGJ1dHRvbiB3aGVuIHRoZSBzZWFyY2ggaW5wdXQgaGFzXG4gKiBwYWRkaW5nIChhbmQgYHRleHRmaWVsZGAgYXBwZWFyYW5jZSkuXG4gKi9cblxuaW5wdXRbdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtY2FuY2VsLWJ1dHRvbixcbmlucHV0W3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWRlY29yYXRpb24ge1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuLyoqXG4gKiBEZWZpbmUgY29uc2lzdGVudCBib3JkZXIsIG1hcmdpbiwgYW5kIHBhZGRpbmcuXG4gKi9cblxuZmllbGRzZXQge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNjMGMwYzA7XG4gICAgbWFyZ2luOiAwIDJweDtcbiAgICBwYWRkaW5nOiAwLjM1ZW0gMC42MjVlbSAwLjc1ZW07XG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCBgY29sb3JgIG5vdCBiZWluZyBpbmhlcml0ZWQgaW4gSUUgOC85LzEwLzExLlxuICogMi4gUmVtb3ZlIHBhZGRpbmcgc28gcGVvcGxlIGFyZW4ndCBjYXVnaHQgb3V0IGlmIHRoZXkgemVybyBvdXQgZmllbGRzZXRzLlxuICovXG5cbmxlZ2VuZCB7XG4gICAgYm9yZGVyOiAwOyAvKiAxICovXG4gICAgcGFkZGluZzogMDsgLyogMiAqL1xufVxuXG4vKipcbiAqIFJlbW92ZSBkZWZhdWx0IHZlcnRpY2FsIHNjcm9sbGJhciBpbiBJRSA4LzkvMTAvMTEuXG4gKi9cblxudGV4dGFyZWEge1xuICAgIG92ZXJmbG93OiBhdXRvO1xufVxuXG4vKipcbiAqIERvbid0IGluaGVyaXQgdGhlIGBmb250LXdlaWdodGAgKGFwcGxpZWQgYnkgYSBydWxlIGFib3ZlKS5cbiAqIE5PVEU6IHRoZSBkZWZhdWx0IGNhbm5vdCBzYWZlbHkgYmUgY2hhbmdlZCBpbiBDaHJvbWUgYW5kIFNhZmFyaSBvbiBPUyBYLlxuICovXG5cbm9wdGdyb3VwIHtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbn1cblxuLyogVGFibGVzXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIFJlbW92ZSBtb3N0IHNwYWNpbmcgYmV0d2VlbiB0YWJsZSBjZWxscy5cbiAqL1xuXG50YWJsZSB7XG4gICAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgICBib3JkZXItc3BhY2luZzogMDtcbn1cblxudGQsXG50aCB7XG4gICAgcGFkZGluZzogMDtcbn1cbiIsIkBjaGFyc2V0IFwiVVRGLThcIjtcbi8qISBub3JtYWxpemUuY3NzIHYzLjAuMyB8IE1JVCBMaWNlbnNlIHwgZ2l0aHViLmNvbS9uZWNvbGFzL25vcm1hbGl6ZS5jc3MgKi9cbi8qKlxuICogMS4gU2V0IGRlZmF1bHQgZm9udCBmYW1pbHkgdG8gc2Fucy1zZXJpZi5cbiAqIDIuIFByZXZlbnQgaU9TIGFuZCBJRSB0ZXh0IHNpemUgYWRqdXN0IGFmdGVyIGRldmljZSBvcmllbnRhdGlvbiBjaGFuZ2UsXG4gKiAgICB3aXRob3V0IGRpc2FibGluZyB1c2VyIHpvb20uXG4gKi9cbmh0bWwge1xuICBmb250LWZhbWlseTogc2Fucy1zZXJpZjtcbiAgLyogMSAqL1xuICAtbXMtdGV4dC1zaXplLWFkanVzdDogMTAwJTtcbiAgLyogMiAqL1xuICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7XG4gIC8qIDIgKi8gfVxuXG4vKipcbiAqIFJlbW92ZSBkZWZhdWx0IG1hcmdpbi5cbiAqL1xuYm9keSB7XG4gIG1hcmdpbjogMDsgfVxuXG4vKiBIVE1MNSBkaXNwbGF5IGRlZmluaXRpb25zXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiBDb3JyZWN0IGBibG9ja2AgZGlzcGxheSBub3QgZGVmaW5lZCBmb3IgYW55IEhUTUw1IGVsZW1lbnQgaW4gSUUgOC85LlxuICogQ29ycmVjdCBgYmxvY2tgIGRpc3BsYXkgbm90IGRlZmluZWQgZm9yIGBkZXRhaWxzYCBvciBgc3VtbWFyeWAgaW4gSUUgMTAvMTFcbiAqIGFuZCBGaXJlZm94LlxuICogQ29ycmVjdCBgYmxvY2tgIGRpc3BsYXkgbm90IGRlZmluZWQgZm9yIGBtYWluYCBpbiBJRSAxMS5cbiAqL1xuYXJ0aWNsZSxcbmFzaWRlLFxuZGV0YWlscyxcbmZpZ2NhcHRpb24sXG5maWd1cmUsXG5mb290ZXIsXG5oZWFkZXIsXG5oZ3JvdXAsXG5tYWluLFxubWVudSxcbm5hdixcbnNlY3Rpb24sXG5zdW1tYXJ5IHtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IGBpbmxpbmUtYmxvY2tgIGRpc3BsYXkgbm90IGRlZmluZWQgaW4gSUUgOC85LlxuICogMi4gTm9ybWFsaXplIHZlcnRpY2FsIGFsaWdubWVudCBvZiBgcHJvZ3Jlc3NgIGluIENocm9tZSwgRmlyZWZveCwgYW5kIE9wZXJhLlxuICovXG5hdWRpbyxcbmNhbnZhcyxcbnByb2dyZXNzLFxudmlkZW8ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIC8qIDEgKi9cbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuICAvKiAyICovIH1cblxuLyoqXG4gKiBQcmV2ZW50IG1vZGVybiBicm93c2VycyBmcm9tIGRpc3BsYXlpbmcgYGF1ZGlvYCB3aXRob3V0IGNvbnRyb2xzLlxuICogUmVtb3ZlIGV4Y2VzcyBoZWlnaHQgaW4gaU9TIDUgZGV2aWNlcy5cbiAqL1xuYXVkaW86bm90KFtjb250cm9sc10pIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgaGVpZ2h0OiAwOyB9XG5cbi8qKlxuICogQWRkcmVzcyBgW2hpZGRlbl1gIHN0eWxpbmcgbm90IHByZXNlbnQgaW4gSUUgOC85LzEwLlxuICogSGlkZSB0aGUgYHRlbXBsYXRlYCBlbGVtZW50IGluIElFIDgvOS8xMC8xMSwgU2FmYXJpLCBhbmQgRmlyZWZveCA8IDIyLlxuICovXG5baGlkZGVuXSxcbnRlbXBsYXRlIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4vKiBMaW5rc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICogUmVtb3ZlIHRoZSBncmF5IGJhY2tncm91bmQgY29sb3IgZnJvbSBhY3RpdmUgbGlua3MgaW4gSUUgMTAuXG4gKi9cbmEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuXG4vKipcbiAqIEltcHJvdmUgcmVhZGFiaWxpdHkgb2YgZm9jdXNlZCBlbGVtZW50cyB3aGVuIHRoZXkgYXJlIGFsc28gaW4gYW5cbiAqIGFjdGl2ZS9ob3ZlciBzdGF0ZS5cbiAqL1xuYTphY3RpdmUsXG5hOmhvdmVyIHtcbiAgb3V0bGluZTogMDsgfVxuXG4vKiBUZXh0LWxldmVsIHNlbWFudGljc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICogQWRkcmVzcyBzdHlsaW5nIG5vdCBwcmVzZW50IGluIElFIDgvOS8xMC8xMSwgU2FmYXJpLCBhbmQgQ2hyb21lLlxuICovXG5hYmJyW3RpdGxlXSB7XG4gIGJvcmRlci1ib3R0b206IDFweCBkb3R0ZWQ7IH1cblxuLyoqXG4gKiBBZGRyZXNzIHN0eWxlIHNldCB0byBgYm9sZGVyYCBpbiBGaXJlZm94IDQrLCBTYWZhcmksIGFuZCBDaHJvbWUuXG4gKi9cbmIsXG5zdHJvbmcge1xuICBmb250LXdlaWdodDogYm9sZDsgfVxuXG4vKipcbiAqIEFkZHJlc3Mgc3R5bGluZyBub3QgcHJlc2VudCBpbiBTYWZhcmkgYW5kIENocm9tZS5cbiAqL1xuZGZuIHtcbiAgZm9udC1zdHlsZTogaXRhbGljOyB9XG5cbi8qKlxuICogQWRkcmVzcyB2YXJpYWJsZSBgaDFgIGZvbnQtc2l6ZSBhbmQgbWFyZ2luIHdpdGhpbiBgc2VjdGlvbmAgYW5kIGBhcnRpY2xlYFxuICogY29udGV4dHMgaW4gRmlyZWZveCA0KywgU2FmYXJpLCBhbmQgQ2hyb21lLlxuICovXG5oMSB7XG4gIGZvbnQtc2l6ZTogMmVtO1xuICBtYXJnaW46IDAuNjdlbSAwOyB9XG5cbi8qKlxuICogQWRkcmVzcyBzdHlsaW5nIG5vdCBwcmVzZW50IGluIElFIDgvOS5cbiAqL1xubWFyayB7XG4gIGJhY2tncm91bmQ6ICNmZjA7XG4gIGNvbG9yOiAjMDAwOyB9XG5cbi8qKlxuICogQWRkcmVzcyBpbmNvbnNpc3RlbnQgYW5kIHZhcmlhYmxlIGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cbnNtYWxsIHtcbiAgZm9udC1zaXplOiA4MCU7IH1cblxuLyoqXG4gKiBQcmV2ZW50IGBzdWJgIGFuZCBgc3VwYCBhZmZlY3RpbmcgYGxpbmUtaGVpZ2h0YCBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cbnN1YixcbnN1cCB7XG4gIGZvbnQtc2l6ZTogNzUlO1xuICBsaW5lLWhlaWdodDogMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7IH1cblxuc3VwIHtcbiAgdG9wOiAtMC41ZW07IH1cblxuc3ViIHtcbiAgYm90dG9tOiAtMC4yNWVtOyB9XG5cbi8qIEVtYmVkZGVkIGNvbnRlbnRcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIFJlbW92ZSBib3JkZXIgd2hlbiBpbnNpZGUgYGFgIGVsZW1lbnQgaW4gSUUgOC85LzEwLlxuICovXG5pbWcge1xuICBib3JkZXI6IDA7IH1cblxuLyoqXG4gKiBDb3JyZWN0IG92ZXJmbG93IG5vdCBoaWRkZW4gaW4gSUUgOS8xMC8xMS5cbiAqL1xuc3ZnOm5vdCg6cm9vdCkge1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG5cbi8qIEdyb3VwaW5nIGNvbnRlbnRcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIEFkZHJlc3MgbWFyZ2luIG5vdCBwcmVzZW50IGluIElFIDgvOSBhbmQgU2FmYXJpLlxuICovXG5maWd1cmUge1xuICBtYXJnaW46IDFlbSA0MHB4OyB9XG5cbi8qKlxuICogQWRkcmVzcyBkaWZmZXJlbmNlcyBiZXR3ZWVuIEZpcmVmb3ggYW5kIG90aGVyIGJyb3dzZXJzLlxuICovXG5ociB7XG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICBoZWlnaHQ6IDA7IH1cblxuLyoqXG4gKiBDb250YWluIG92ZXJmbG93IGluIGFsbCBicm93c2Vycy5cbiAqL1xucHJlIHtcbiAgb3ZlcmZsb3c6IGF1dG87IH1cblxuLyoqXG4gKiBBZGRyZXNzIG9kZCBgZW1gLXVuaXQgZm9udCBzaXplIHJlbmRlcmluZyBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cbmNvZGUsXG5rYmQsXG5wcmUsXG5zYW1wIHtcbiAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlO1xuICBmb250LXNpemU6IDFlbTsgfVxuXG4vKiBGb3Jtc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICogS25vd24gbGltaXRhdGlvbjogYnkgZGVmYXVsdCwgQ2hyb21lIGFuZCBTYWZhcmkgb24gT1MgWCBhbGxvdyB2ZXJ5IGxpbWl0ZWRcbiAqIHN0eWxpbmcgb2YgYHNlbGVjdGAsIHVubGVzcyBhIGBib3JkZXJgIHByb3BlcnR5IGlzIHNldC5cbiAqL1xuLyoqXG4gKiAxLiBDb3JyZWN0IGNvbG9yIG5vdCBiZWluZyBpbmhlcml0ZWQuXG4gKiAgICBLbm93biBpc3N1ZTogYWZmZWN0cyBjb2xvciBvZiBkaXNhYmxlZCBlbGVtZW50cy5cbiAqIDIuIENvcnJlY3QgZm9udCBwcm9wZXJ0aWVzIG5vdCBiZWluZyBpbmhlcml0ZWQuXG4gKiAzLiBBZGRyZXNzIG1hcmdpbnMgc2V0IGRpZmZlcmVudGx5IGluIEZpcmVmb3ggNCssIFNhZmFyaSwgYW5kIENocm9tZS5cbiAqL1xuYnV0dG9uLFxuaW5wdXQsXG5vcHRncm91cCxcbnNlbGVjdCxcbnRleHRhcmVhIHtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIC8qIDEgKi9cbiAgZm9udDogaW5oZXJpdDtcbiAgLyogMiAqL1xuICBtYXJnaW46IDA7XG4gIC8qIDMgKi8gfVxuXG4vKipcbiAqIEFkZHJlc3MgYG92ZXJmbG93YCBzZXQgdG8gYGhpZGRlbmAgaW4gSUUgOC85LzEwLzExLlxuICovXG5idXR0b24ge1xuICBvdmVyZmxvdzogdmlzaWJsZTsgfVxuXG4vKipcbiAqIEFkZHJlc3MgaW5jb25zaXN0ZW50IGB0ZXh0LXRyYW5zZm9ybWAgaW5oZXJpdGFuY2UgZm9yIGBidXR0b25gIGFuZCBgc2VsZWN0YC5cbiAqIEFsbCBvdGhlciBmb3JtIGNvbnRyb2wgZWxlbWVudHMgZG8gbm90IGluaGVyaXQgYHRleHQtdHJhbnNmb3JtYCB2YWx1ZXMuXG4gKiBDb3JyZWN0IGBidXR0b25gIHN0eWxlIGluaGVyaXRhbmNlIGluIEZpcmVmb3gsIElFIDgvOS8xMC8xMSwgYW5kIE9wZXJhLlxuICogQ29ycmVjdCBgc2VsZWN0YCBzdHlsZSBpbmhlcml0YW5jZSBpbiBGaXJlZm94LlxuICovXG5idXR0b24sXG5zZWxlY3Qge1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTsgfVxuXG4vKipcbiAqIDEuIEF2b2lkIHRoZSBXZWJLaXQgYnVnIGluIEFuZHJvaWQgNC4wLiogd2hlcmUgKDIpIGRlc3Ryb3lzIG5hdGl2ZSBgYXVkaW9gXG4gKiAgICBhbmQgYHZpZGVvYCBjb250cm9scy5cbiAqIDIuIENvcnJlY3QgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSBgaW5wdXRgIHR5cGVzIGluIGlPUy5cbiAqIDMuIEltcHJvdmUgdXNhYmlsaXR5IGFuZCBjb25zaXN0ZW5jeSBvZiBjdXJzb3Igc3R5bGUgYmV0d2VlbiBpbWFnZS10eXBlXG4gKiAgICBgaW5wdXRgIGFuZCBvdGhlcnMuXG4gKi9cbmJ1dHRvbixcbmh0bWwgaW5wdXRbdHlwZT1cImJ1dHRvblwiXSxcbmlucHV0W3R5cGU9XCJyZXNldFwiXSxcbmlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjtcbiAgLyogMiAqL1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIC8qIDMgKi8gfVxuXG4vKipcbiAqIFJlLXNldCBkZWZhdWx0IGN1cnNvciBmb3IgZGlzYWJsZWQgZWxlbWVudHMuXG4gKi9cbmJ1dHRvbltkaXNhYmxlZF0sXG5odG1sIGlucHV0W2Rpc2FibGVkXSB7XG4gIGN1cnNvcjogZGVmYXVsdDsgfVxuXG4vKipcbiAqIFJlbW92ZSBpbm5lciBwYWRkaW5nIGFuZCBib3JkZXIgaW4gRmlyZWZveCA0Ky5cbiAqL1xuYnV0dG9uOjotbW96LWZvY3VzLWlubmVyLFxuaW5wdXQ6Oi1tb3otZm9jdXMtaW5uZXIge1xuICBib3JkZXI6IDA7XG4gIHBhZGRpbmc6IDA7IH1cblxuLyoqXG4gKiBBZGRyZXNzIEZpcmVmb3ggNCsgc2V0dGluZyBgbGluZS1oZWlnaHRgIG9uIGBpbnB1dGAgdXNpbmcgYCFpbXBvcnRhbnRgIGluXG4gKiB0aGUgVUEgc3R5bGVzaGVldC5cbiAqL1xuaW5wdXQge1xuICBsaW5lLWhlaWdodDogbm9ybWFsOyB9XG5cbi8qKlxuICogSXQncyByZWNvbW1lbmRlZCB0aGF0IHlvdSBkb24ndCBhdHRlbXB0IHRvIHN0eWxlIHRoZXNlIGVsZW1lbnRzLlxuICogRmlyZWZveCdzIGltcGxlbWVudGF0aW9uIGRvZXNuJ3QgcmVzcGVjdCBib3gtc2l6aW5nLCBwYWRkaW5nLCBvciB3aWR0aC5cbiAqXG4gKiAxLiBBZGRyZXNzIGJveCBzaXppbmcgc2V0IHRvIGBjb250ZW50LWJveGAgaW4gSUUgOC85LzEwLlxuICogMi4gUmVtb3ZlIGV4Y2VzcyBwYWRkaW5nIGluIElFIDgvOS8xMC5cbiAqL1xuaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdLFxuaW5wdXRbdHlwZT1cInJhZGlvXCJdIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgLyogMSAqL1xuICBwYWRkaW5nOiAwO1xuICAvKiAyICovIH1cblxuLyoqXG4gKiBGaXggdGhlIGN1cnNvciBzdHlsZSBmb3IgQ2hyb21lJ3MgaW5jcmVtZW50L2RlY3JlbWVudCBidXR0b25zLiBGb3IgY2VydGFpblxuICogYGZvbnQtc2l6ZWAgdmFsdWVzIG9mIHRoZSBgaW5wdXRgLCBpdCBjYXVzZXMgdGhlIGN1cnNvciBzdHlsZSBvZiB0aGVcbiAqIGRlY3JlbWVudCBidXR0b24gdG8gY2hhbmdlIGZyb20gYGRlZmF1bHRgIHRvIGB0ZXh0YC5cbiAqL1xuaW5wdXRbdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcbmlucHV0W3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24ge1xuICBoZWlnaHQ6IGF1dG87IH1cblxuLyoqXG4gKiAxLiBBZGRyZXNzIGBhcHBlYXJhbmNlYCBzZXQgdG8gYHNlYXJjaGZpZWxkYCBpbiBTYWZhcmkgYW5kIENocm9tZS5cbiAqIDIuIEFkZHJlc3MgYGJveC1zaXppbmdgIHNldCB0byBgYm9yZGVyLWJveGAgaW4gU2FmYXJpIGFuZCBDaHJvbWUuXG4gKi9cbmlucHV0W3R5cGU9XCJzZWFyY2hcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IHRleHRmaWVsZDtcbiAgLyogMSAqL1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgLyogMiAqLyB9XG5cbi8qKlxuICogUmVtb3ZlIGlubmVyIHBhZGRpbmcgYW5kIHNlYXJjaCBjYW5jZWwgYnV0dG9uIGluIFNhZmFyaSBhbmQgQ2hyb21lIG9uIE9TIFguXG4gKiBTYWZhcmkgKGJ1dCBub3QgQ2hyb21lKSBjbGlwcyB0aGUgY2FuY2VsIGJ1dHRvbiB3aGVuIHRoZSBzZWFyY2ggaW5wdXQgaGFzXG4gKiBwYWRkaW5nIChhbmQgYHRleHRmaWVsZGAgYXBwZWFyYW5jZSkuXG4gKi9cbmlucHV0W3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWNhbmNlbC1idXR0b24sXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lOyB9XG5cbi8qKlxuICogRGVmaW5lIGNvbnNpc3RlbnQgYm9yZGVyLCBtYXJnaW4sIGFuZCBwYWRkaW5nLlxuICovXG5maWVsZHNldCB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjMGMwYzA7XG4gIG1hcmdpbjogMCAycHg7XG4gIHBhZGRpbmc6IDAuMzVlbSAwLjYyNWVtIDAuNzVlbTsgfVxuXG4vKipcbiAqIDEuIENvcnJlY3QgYGNvbG9yYCBub3QgYmVpbmcgaW5oZXJpdGVkIGluIElFIDgvOS8xMC8xMS5cbiAqIDIuIFJlbW92ZSBwYWRkaW5nIHNvIHBlb3BsZSBhcmVuJ3QgY2F1Z2h0IG91dCBpZiB0aGV5IHplcm8gb3V0IGZpZWxkc2V0cy5cbiAqL1xubGVnZW5kIHtcbiAgYm9yZGVyOiAwO1xuICAvKiAxICovXG4gIHBhZGRpbmc6IDA7XG4gIC8qIDIgKi8gfVxuXG4vKipcbiAqIFJlbW92ZSBkZWZhdWx0IHZlcnRpY2FsIHNjcm9sbGJhciBpbiBJRSA4LzkvMTAvMTEuXG4gKi9cbnRleHRhcmVhIHtcbiAgb3ZlcmZsb3c6IGF1dG87IH1cblxuLyoqXG4gKiBEb24ndCBpbmhlcml0IHRoZSBgZm9udC13ZWlnaHRgIChhcHBsaWVkIGJ5IGEgcnVsZSBhYm92ZSkuXG4gKiBOT1RFOiB0aGUgZGVmYXVsdCBjYW5ub3Qgc2FmZWx5IGJlIGNoYW5nZWQgaW4gQ2hyb21lIGFuZCBTYWZhcmkgb24gT1MgWC5cbiAqL1xub3B0Z3JvdXAge1xuICBmb250LXdlaWdodDogYm9sZDsgfVxuXG4vKiBUYWJsZXNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIFJlbW92ZSBtb3N0IHNwYWNpbmcgYmV0d2VlbiB0YWJsZSBjZWxscy5cbiAqL1xudGFibGUge1xuICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xuICBib3JkZXItc3BhY2luZzogMDsgfVxuXG50ZCxcbnRoIHtcbiAgcGFkZGluZzogMDsgfVxuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IFwiTmV4YVwiO1xuICBzcmM6IHVybChcIi4uL2ZvbnRzL25leGFfbGlnaHQtd2ViZm9udC5lb3RcIik7XG4gIHNyYzogdXJsKFwiLi4vZm9udHMvbmV4YV9saWdodC13ZWJmb250LmVvdD8jaWVmaXhcIikgZm9ybWF0KFwiZW1iZWRkZWQtb3BlbnR5cGVcIiksIHVybChcIi4uL2ZvbnRzL25leGFfbGlnaHQtd2ViZm9udC53b2ZmMlwiKSBmb3JtYXQoXCJ3b2ZmMlwiKSwgdXJsKFwiLi4vZm9udHMvbmV4YV9saWdodC13ZWJmb250LndvZmZcIikgZm9ybWF0KFwid29mZlwiKSwgdXJsKFwiLi4vZm9udHMvbmV4YV9saWdodC13ZWJmb250LnR0ZlwiKSBmb3JtYXQoXCJ0cnVldHlwZVwiKTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgZm9udC1zdHlsZTogbm9ybWFsOyB9XG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogXCJOZXhhXCI7XG4gIHNyYzogdXJsKFwiLi4vZm9udHMvbmV4YV9ib2xkLXdlYmZvbnQuZW90XCIpO1xuICBzcmM6IHVybChcIi4uL2ZvbnRzL25leGFfYm9sZC13ZWJmb250LmVvdD8jaWVmaXhcIikgZm9ybWF0KFwiZW1iZWRkZWQtb3BlbnR5cGVcIiksIHVybChcIi4uL2ZvbnRzL25leGFfYm9sZC13ZWJmb250LndvZmYyXCIpIGZvcm1hdChcIndvZmYyXCIpLCB1cmwoXCIuLi9mb250cy9uZXhhX2JvbGQtd2ViZm9udC53b2ZmXCIpIGZvcm1hdChcIndvZmZcIiksIHVybChcIi4uL2ZvbnRzL25leGFfYm9sZC13ZWJmb250LnR0ZlwiKSBmb3JtYXQoXCJ0cnVldHlwZVwiKTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDsgfVxuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IFwidHJhY2tpci1pY29uc1wiO1xuICBzcmM6IHVybChcIi4uL2ZvbnRzL3RyYWNraXItaWNvbnMuZW90PzU4NzMzMjQ5XCIpO1xuICBzcmM6IHVybChcIi4uL2ZvbnRzL3RyYWNraXItaWNvbnMuZW90PzU4NzMzMjQ5I2llZml4XCIpIGZvcm1hdChcImVtYmVkZGVkLW9wZW50eXBlXCIpLCB1cmwoXCIuLi9mb250cy90cmFja2lyLWljb25zLndvZmY/NTg3MzMyNDlcIikgZm9ybWF0KFwid29mZlwiKSwgdXJsKFwiLi4vZm9udHMvdHJhY2tpci1pY29ucy50dGY/NTg3MzMyNDlcIikgZm9ybWF0KFwidHJ1ZXR5cGVcIiksIHVybChcIi4uL2ZvbnRzL3RyYWNraXItaWNvbnMuc3ZnPzU4NzMzMjQ5I3RyYWNraXItaWNvbnNcIikgZm9ybWF0KFwic3ZnXCIpO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBmb250LXN0eWxlOiBub3JtYWw7IH1cblxuW2NsYXNzXj1cImljb24tXCJdOmJlZm9yZSwgW2NsYXNzKj1cIiBpY29uLVwiXTpiZWZvcmUsIGhlYWRlciBuYXZbcm9sZT1cIm5hdmlnYXRpb25cIl0gPiB1bCA+IGxpLmNhcnQgYTphZnRlciB7XG4gIGZvbnQtZmFtaWx5OiBcInRyYWNraXItaWNvbnNcIjtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBzcGVhazogbm9uZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB0ZXh0LWRlY29yYXRpb246IGluaGVyaXQ7XG4gIHdpZHRoOiAxZW07XG4gIG1hcmdpbi1yaWdodDogLjJlbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAvKiBGb3Igc2FmZXR5IC0gcmVzZXQgcGFyZW50IHN0eWxlcyB0aGF0IGNhbiBicmVhayBnbHlwaCBjb2RlcyAqL1xuICBmb250LXZhcmlhbnQ6IG5vcm1hbDtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIC8qIGZpeCBidXR0b25zIGhlaWdodCwgZm9yIHR3aXR0ZXIgYm9vdHN0cmFwICovXG4gIC8qIEFuaW1hdGlvbiBjZW50ZXIgY29tcGVuc2F0aW9uIC0gbWFyZ2lucyBzaG91bGQgYmUgc3ltbWV0cmljICovXG4gIC8qIHJlbW92ZSBpZiBub3QgbmVlZGVkICovXG4gIG1hcmdpbi1sZWZ0OiAuMmVtOyB9XG5cbi5pY29uLWJhc2tldDpiZWZvcmUge1xuICBjb250ZW50OiBcIu6ggFwiOyB9XG5cbi5pY29uLWNoZXZyb24tc21hbGwtcmlnaHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLuoIFcIjsgfVxuXG4uaWNvbi10d2l0Y2g6YmVmb3JlIHtcbiAgY29udGVudDogXCLupIBcIjsgfVxuXG4uaWNvbi15b3V0dWJlLXBsYXk6YmVmb3JlIHtcbiAgY29udGVudDogXCLupIFcIjsgfVxuXG4uaWNvbi10d2l0dGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7qSCXCI7IH1cblxuLmljb24tZmFjZWJvb2s6YmVmb3JlIHtcbiAgY29udGVudDogXCLupINcIjsgfVxuXG4uaWNvbi1yZWZyZXNoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7qCCXCI7IH1cblxuLmljb24tbGluay1leHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLuoINcIjsgfVxuXG4uaWNvbi1wbGF5LWNpcmNsZWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLuoIRcIjsgfVxuXG4uaWNvbi1ibG9jazpiZWZvcmUge1xuICBjb250ZW50OiBcIu6ghVwiOyB9XG5cbi5pY29uLW9rLWNpcmNsZWQyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7qCGXCI7IH1cblxuLmljb24tb2s6YmVmb3JlIHtcbiAgY29udGVudDogXCLuoIdcIjsgfVxuXG4uaWNvbi11cC1vcGVuLWJpZzpiZWZvcmUge1xuICBjb250ZW50OiBcIu6giVwiOyB9XG5cbi5pY29uLWRvd24tb3Blbi1iaWc6YmVmb3JlIHtcbiAgY29udGVudDogXCLuoIhcIjsgfVxuXG5ib2R5IHtcbiAgY29sb3I6ICNmYWU2Y2Q7XG4gIGZvbnQtZmFtaWx5OiBcIkFyaWFsXCIsIHNhbnMtc2VyaWY7XG4gIGxpbmUtaGVpZ2h0OiAxLjM7IH1cblxuYSB7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IH1cblxuaDEsIGgyLCBoMywgaDQsIGg1LCBoNiB7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDsgfVxuXG5oMSwgaDIge1xuICBmb250LWZhbWlseTogXCJOZXhhXCIsIHNhbnMtc2VyaWY7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cblxuaDMge1xuICBmb250LXdlaWdodDogYm9sZDsgfVxuXG5sYWJlbCB7XG4gIGNvbG9yOiB3aGl0ZTsgfVxuXG5jb2RlIHtcbiAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjMpIG5vbmUgcmVwZWF0IHNjcm9sbCAwJSAwJTtcbiAgY29sb3I6IHdoaXRlO1xuICBib3JkZXItcmFkaXVzOiA1cHg7XG4gIHBhZGRpbmc6IDFweCA5cHg7IH1cblxuYm9keSB7XG4gIGZvbnQtc2l6ZTogMTZweDsgfVxuXG5oMSB7XG4gIGZvbnQtc2l6ZTogNDVweDsgfVxuXG5oMiB7XG4gIGZvbnQtc2l6ZTogMzZweDsgfVxuXG5oMyB7XG4gIGZvbnQtc2l6ZTogMThweDsgfVxuXG4vKlxudWwge1xuICAgIEBpbmNsdWRlIGZsdXNoLWxpc3Q7XG59XG4qL1xuaHRtbCB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIG92ZXJmbG93LXk6IHNjcm9sbDsgfVxuXG4qLFxuKjpiZWZvcmUsXG4qOmFmdGVyIHtcbiAgYm94LXNpemluZzogaW5oZXJpdDsgfVxuXG5pbWcge1xuICBtYXgtd2lkdGg6IDEwMCU7IH1cblxuaHRtbCxcbmJvZHkge1xuICBoZWlnaHQ6IDEwMCU7IH1cblxubWFpbiB7XG4gIG1pbi1oZWlnaHQ6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206IC0yNDBweDsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICBtYWluIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IC0yMjVweDsgfSB9XG5cbm1haW46OmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogMjQwcHg7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgbWFpbjo6YWZ0ZXIge1xuICAgICAgaGVpZ2h0OiAyMjVweDsgfSB9XG5cbmJvZHkge1xuICBiYWNrZ3JvdW5kOiAjRUM4QTAwO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoLTkwZGVnLCAjRUM4QTAwIDAlLCAjRkE5QjAwIDEwJSwgI0ZGQTYwMCAyMCUsICNGRkE2MDAgODAlLCAjRkE5QjAwIDkwJSwgI0VDOEEwMCAxMDAlKSwgcmFkaWFsLWdyYWRpZW50KDUwJSA1MCUsICNGRkE2MDAgNTAlLCAjRkZBNjAwIDYwJSwgI0ZBOUIwMCA4MCUsICNFQzhBMDAgMTAwJSwgI0I2NUYwMCAxMzUlKTtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogbGVmdCAwIHRvcCAxMjA1MHB4LCB0b3AgY2VudGVyO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXNpemU6IGF1dG8gMTAwMDBweCwgMTAwJSAxMjAwMHB4OyB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICBoMSwgaDIge1xuICAgIG1hcmdpbi1ib3R0b206IDBweDsgfSB9XG5cbmlucHV0W3R5cGU9XCJ0ZXh0XCJdLFxuaW5wdXRbdHlwZT1cImVtYWlsXCJdLFxuaW5wdXRbdHlwZT1cInRlbFwiXSxcbnRleHRhcmVhIHtcbiAgZm9udC1zaXplOiAxM3B4O1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgcGFkZGluZzogNHB4IDEwcHg7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXJhZGl1czogNXB4O1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuMSk7IH1cbiAgaW5wdXRbdHlwZT1cInRleHRcIl06Zm9jdXMsIGlucHV0W3R5cGU9XCJ0ZXh0XCJdOmFjdGl2ZSxcbiAgaW5wdXRbdHlwZT1cImVtYWlsXCJdOmZvY3VzLFxuICBpbnB1dFt0eXBlPVwiZW1haWxcIl06YWN0aXZlLFxuICBpbnB1dFt0eXBlPVwidGVsXCJdOmZvY3VzLFxuICBpbnB1dFt0eXBlPVwidGVsXCJdOmFjdGl2ZSxcbiAgdGV4dGFyZWE6Zm9jdXMsXG4gIHRleHRhcmVhOmFjdGl2ZSB7XG4gICAgYm94LXNoYWRvdzogMCAwIDAgMXB4IHdoaXRlO1xuICAgIG91dGxpbmU6IG5vbmU7IH1cblxuaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSxcbmJ1dHRvbiB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLW91dDtcbiAgcGFkZGluZzogMTBweCA1MnB4O1xuICBib3JkZXI6IHNvbGlkIDFweCAjZmFlNmNkO1xuICBib3JkZXItcmFkaXVzOiA0MHB4O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cbiAgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXTpob3ZlcixcbiAgYnV0dG9uOmhvdmVyIHtcbiAgICBjb2xvcjogd2hpdGU7XG4gICAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjEpOyB9XG5cbnNlbGVjdCB7XG4gIGNvbG9yOiAjMDAwOyB9XG5cbmhlYWRlciB7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgNTAwbXMgZWFzZS1pbi1vdXQ7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjQ3LCAxNDYsIDAsIDApO1xuICBib3JkZXItYm90dG9tOiBzb2xpZCAxcHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjM1KTtcbiAgd2lkdGg6IDEwMCU7XG4gIHRvcDogMDtcbiAgei1pbmRleDogMTAwMDtcbiAgaGVpZ2h0OiA2MHB4OyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIGhlYWRlciB7XG4gICAgICBoZWlnaHQ6IDc1cHg7IH0gfVxuICBoZWFkZXIubWFpbi1uYXYtc2Nyb2xsZWQge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjQ3LCAxNDYsIDAsIDAuOSk7IH1cbiAgaGVhZGVyIG5hdltyb2xlPVwibmF2aWdhdGlvblwiXSB7XG4gICAgbWF4LXdpZHRoOiAyOTBweDtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgcGFkZGluZzogNXB4IDBweCA3cHg7IH1cbiAgICBoZWFkZXIgbmF2W3JvbGU9XCJuYXZpZ2F0aW9uXCJdOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgaGVhZGVyIG5hdltyb2xlPVwibmF2aWdhdGlvblwiXSB7XG4gICAgICAgIG1heC13aWR0aDogNzAycHg7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87IH1cbiAgICAgICAgaGVhZGVyIG5hdltyb2xlPVwibmF2aWdhdGlvblwiXTphZnRlciB7XG4gICAgICAgICAgY29udGVudDogXCIgXCI7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgY2xlYXI6IGJvdGg7IH0gfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgaGVhZGVyIG5hdltyb2xlPVwibmF2aWdhdGlvblwiXSB7XG4gICAgICAgIHBhZGRpbmc6IDMwcHggMCAxOHB4OyB9IH1cbiAgICBoZWFkZXIgbmF2W3JvbGU9XCJuYXZpZ2F0aW9uXCJdIC50cmFja2lyLWxvZ28gYSB7XG4gICAgICBtYXJnaW4tbGVmdDogMjUuNDIzNzMlOyB9XG4gICAgaGVhZGVyIG5hdltyb2xlPVwibmF2aWdhdGlvblwiXSAudHJhY2tpci1sb2dvIGltZyB7XG4gICAgICB3aWR0aDogMTQ0cHg7XG4gICAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgIGhlYWRlciBuYXZbcm9sZT1cIm5hdmlnYXRpb25cIl0gLnRyYWNraXItbG9nbyB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuICAgIGhlYWRlciBuYXZbcm9sZT1cIm5hdmlnYXRpb25cIl0gYSB7XG4gICAgICBwYWRkaW5nOiAwIDRweDtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgIGNvbG9yOiAjZmFlNmNkO1xuICAgICAgZm9udC1zaXplOiAxM3B4OyB9XG4gICAgaGVhZGVyIG5hdltyb2xlPVwibmF2aWdhdGlvblwiXSBsaTpmaXJzdC1jaGlsZCBhIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMDsgfVxuICAgIGhlYWRlciBuYXZbcm9sZT1cIm5hdmlnYXRpb25cIl0gbGk6bGFzdC1jaGlsZCBhIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDA7IH1cbiAgICBoZWFkZXIgbmF2W3JvbGU9XCJuYXZpZ2F0aW9uXCJdID4gdWwge1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIG1hcmdpbi10b3A6IDVweDtcbiAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICB0ZXh0LWFsaWduOiBqdXN0aWZ5OyB9XG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgaGVhZGVyIG5hdltyb2xlPVwibmF2aWdhdGlvblwiXSA+IHVsIHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAtNHB4OyB9IH1cbiAgICAgIGhlYWRlciBuYXZbcm9sZT1cIm5hdmlnYXRpb25cIl0gPiB1bCA+IGxpIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG4gICAgICAgIGhlYWRlciBuYXZbcm9sZT1cIm5hdmlnYXRpb25cIl0gPiB1bCA+IGxpLmNhcnQgYSBzcGFuIHtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgdG9wOiAtOTk5OTlweDtcbiAgICAgICAgICBsZWZ0OiAtOTk5OTlweDsgfVxuICAgICAgICBoZWFkZXIgbmF2W3JvbGU9XCJuYXZpZ2F0aW9uXCJdID4gdWwgPiBsaS5jYXJ0IGE6YWZ0ZXIge1xuICAgICAgICAgIGNvbnRlbnQ6IFwi7qCAXCI7IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgICBoZWFkZXIgbmF2W3JvbGU9XCJuYXZpZ2F0aW9uXCJdID4gdWwgbGkuaW5saW5lLXRyYWNraXItbG9nbyB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG4gICAgICBoZWFkZXIgbmF2W3JvbGU9XCJuYXZpZ2F0aW9uXCJdID4gdWwgbGkuaW5saW5lLXRyYWNraXItbG9nbyBpbWcge1xuICAgICAgICBoZWlnaHQ6IDE1cHg7IH1cbiAgICAgIGhlYWRlciBuYXZbcm9sZT1cIm5hdmlnYXRpb25cIl0gPiB1bCBsaTpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiA2cHg7IH1cbiAgICAgIGhlYWRlciBuYXZbcm9sZT1cIm5hdmlnYXRpb25cIl0gPiB1bCBsaTpsYXN0LWNoaWxkIHtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0OyB9XG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgaGVhZGVyIG5hdltyb2xlPVwibmF2aWdhdGlvblwiXSA+IHVsIGxpOm50aC1vZi10eXBlKDIpLFxuICAgICAgICBoZWFkZXIgbmF2W3JvbGU9XCJuYXZpZ2F0aW9uXCJdID4gdWwgbGk6bnRoLW9mLXR5cGUoMykge1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiA2MnB4OyB9XG4gICAgICAgIGhlYWRlciBuYXZbcm9sZT1cIm5hdmlnYXRpb25cIl0gPiB1bCBsaTpudGgtb2YtdHlwZSg0KSxcbiAgICAgICAgaGVhZGVyIG5hdltyb2xlPVwibmF2aWdhdGlvblwiXSA+IHVsIGxpOm50aC1vZi10eXBlKDUpIHtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogMjJweDsgfSB9XG5cbmZvb3RlciB7XG4gIGJhY2tncm91bmQ6ICMxNjE2MTY7XG4gIGZvbnQtc2l6ZTogMTNweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwYWRkaW5nOiAyNXB4IDA7XG4gIGhlaWdodDogMjQwcHg7XG4gIG1hcmdpbi10b3A6IC0yNDBweDsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICBmb290ZXIge1xuICAgICAgcGFkZGluZzogNDBweCAwO1xuICAgICAgaGVpZ2h0OiAyMjVweDtcbiAgICAgIG1hcmdpbi10b3A6IC0yMjVweDsgfSB9XG4gIGZvb3RlciAuc29jaWFsLWxpbmtzLCBmb290ZXIgbmF2LmF1eGlsaWFyeSwgZm9vdGVyIC5zb3N1bWkge1xuICAgIG1heC13aWR0aDogMjkwcHg7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9XG4gICAgZm9vdGVyIC5zb2NpYWwtbGlua3M6YWZ0ZXIsIGZvb3RlciBuYXYuYXV4aWxpYXJ5OmFmdGVyLCBmb290ZXIgLnNvc3VtaTphZnRlciB7XG4gICAgICBjb250ZW50OiBcIiBcIjtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgIGZvb3RlciAuc29jaWFsLWxpbmtzLCBmb290ZXIgbmF2LmF1eGlsaWFyeSwgZm9vdGVyIC5zb3N1bWkge1xuICAgICAgICBtYXgtd2lkdGg6IDcwMnB4O1xuICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9XG4gICAgICAgIGZvb3RlciAuc29jaWFsLWxpbmtzOmFmdGVyLCBmb290ZXIgbmF2LmF1eGlsaWFyeTphZnRlciwgZm9vdGVyIC5zb3N1bWk6YWZ0ZXIge1xuICAgICAgICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIGNsZWFyOiBib3RoOyB9IH1cbiAgZm9vdGVyIGEge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBjb2xvcjogd2hpdGU7IH1cbiAgZm9vdGVyIC5zb2NpYWwtbGlua3Mge1xuICAgIGZvbnQtc2l6ZTogMjhweDsgfVxuICAgIGZvb3RlciAuc29jaWFsLWxpbmtzIGEge1xuICAgICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4zNSk7IH1cbiAgICBmb290ZXIgLnNvY2lhbC1saW5rcyB1bCB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nOiAwOyB9XG4gICAgICBmb290ZXIgLnNvY2lhbC1saW5rcyB1bCA+IGxpIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lO1xuICAgICAgICBwYWRkaW5nOiAwIDEwcHg7IH1cbiAgICAgICAgZm9vdGVyIC5zb2NpYWwtbGlua3MgdWwgPiBsaSAuaWNvbi10d2l0Y2gge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMjZweDsgfVxuICAgICAgICBmb290ZXIgLnNvY2lhbC1saW5rcyB1bCA+IGxpIC5sYWJlbCB7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIHRvcDogLTk5OTk5cHg7XG4gICAgICAgICAgbGVmdDogLTk5OTk5cHg7IH1cbiAgZm9vdGVyIG5hdi5hdXhpbGlhcnkgdWwge1xuICAgIHBhZGRpbmc6IDA7IH1cbiAgICBmb290ZXIgbmF2LmF1eGlsaWFyeSB1bCA+IGxpIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICBtYXJnaW4tbGVmdDogMC41ZW07XG4gICAgICBsaW5lLWhlaWdodDogMi4zZW07IH1cbiAgICAgIGZvb3RlciBuYXYuYXV4aWxpYXJ5IHVsID4gbGk6YmVmb3JlIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lO1xuICAgICAgICBjb250ZW50OiBcIlxcMjAyMlwiO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDAuM2VtOyB9XG4gICAgICBmb290ZXIgbmF2LmF1eGlsaWFyeSB1bCA+IGxpOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgICAgICAgZm9vdGVyIG5hdi5hdXhpbGlhcnkgdWwgPiBsaTpmaXJzdC1jaGlsZDpiZWZvcmUge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgICBmb290ZXIgbmF2LmF1eGlsaWFyeSB1bCA+IGxpOm50aC1vZi10eXBlKDUpLCBmb290ZXIgbmF2LmF1eGlsaWFyeSB1bCA+IGxpOm50aC1vZi10eXBlKDgpIHtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogMDsgfVxuICAgICAgICAgIGZvb3RlciBuYXYuYXV4aWxpYXJ5IHVsID4gbGk6bnRoLW9mLXR5cGUoNSk6YmVmb3JlLCBmb290ZXIgbmF2LmF1eGlsaWFyeSB1bCA+IGxpOm50aC1vZi10eXBlKDgpOmJlZm9yZSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lOyB9IH1cbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgICBmb290ZXIgbmF2LmF1eGlsaWFyeSB1bCA+IGxpOm50aC1vZi10eXBlKDkpIHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBtYXJnaW4tbGVmdDogMDsgfVxuICAgICAgICAgIGZvb3RlciBuYXYuYXV4aWxpYXJ5IHVsID4gbGk6bnRoLW9mLXR5cGUoOSk6YmVmb3JlIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuICBmb290ZXIgLmNvcHlyaWdodCxcbiAgZm9vdGVyIC5hbGwtcmlnaHRzLXJlc2VydmVkIHtcbiAgICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjM1KTsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgZm9vdGVyIC5jb3B5cmlnaHQsXG4gICAgICBmb290ZXIgLmFsbC1yaWdodHMtcmVzZXJ2ZWQge1xuICAgICAgICBkaXNwbGF5OiBibG9jazsgfSB9XG5cbltpZD1cImZlYXR1cmVkLXByb2R1Y3RzXCJdIHtcbiAgcGFkZGluZzogMjVweCAwIDMwcHg7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIFtpZD1cImZlYXR1cmVkLXByb2R1Y3RzXCJdIHtcbiAgICAgIHBhZGRpbmc6IDI1cHggMCA2NXB4OyB9IH1cbiAgW2lkPVwiZmVhdHVyZWQtcHJvZHVjdHNcIl0gYS5jdGEge1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2Utb3V0O1xuICAgIHBhZGRpbmc6IDEwcHggNTJweDtcbiAgICBib3JkZXI6IHNvbGlkIDFweCAjZmFlNmNkO1xuICAgIGJvcmRlci1yYWRpdXM6IDQwcHg7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICAgIFtpZD1cImZlYXR1cmVkLXByb2R1Y3RzXCJdIGEuY3RhOmhvdmVyIHtcbiAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC4xKTsgfVxuICBbaWQ9XCJmZWF0dXJlZC1wcm9kdWN0c1wiXSAucHJvZHVjdHMge1xuICAgIG1heC13aWR0aDogMjkwcHg7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9XG4gICAgW2lkPVwiZmVhdHVyZWQtcHJvZHVjdHNcIl0gLnByb2R1Y3RzOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgW2lkPVwiZmVhdHVyZWQtcHJvZHVjdHNcIl0gLnByb2R1Y3RzIHtcbiAgICAgICAgbWF4LXdpZHRoOiA3MDJweDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICAgIG1hcmdpbi1yaWdodDogYXV0bzsgfVxuICAgICAgICBbaWQ9XCJmZWF0dXJlZC1wcm9kdWN0c1wiXSAucHJvZHVjdHM6YWZ0ZXIge1xuICAgICAgICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIGNsZWFyOiBib3RoOyB9IH1cbiAgW2lkPVwiZmVhdHVyZWQtcHJvZHVjdHNcIl0gLnByb2R1Y3Qge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIG1hcmdpbi1yaWdodDogMDsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgW2lkPVwiZmVhdHVyZWQtcHJvZHVjdHNcIl0gLnByb2R1Y3Qge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA2NXB4OyB9IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgIFtpZD1cImZlYXR1cmVkLXByb2R1Y3RzXCJdIC5wcm9kdWN0Omxhc3QtY2hpbGQge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAzNXB4OyB9IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgIFtpZD1cImZlYXR1cmVkLXByb2R1Y3RzXCJdIC5wcm9kdWN0IHtcbiAgICAgICAgd2lkdGg6IDMyLjIwMzM5JTtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMS42OTQ5MiU7IH1cbiAgICAgICAgW2lkPVwiZmVhdHVyZWQtcHJvZHVjdHNcIl0gLnByb2R1Y3Q6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgd2lkdGg6IDMyLjIwMzM5JTtcbiAgICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwOyB9IH1cbiAgICBbaWQ9XCJmZWF0dXJlZC1wcm9kdWN0c1wiXSAucHJvZHVjdCBwIHtcbiAgICAgIG1hcmdpbjogMTBweCAwIC01cHg7IH1cbiAgICBbaWQ9XCJmZWF0dXJlZC1wcm9kdWN0c1wiXSAucHJvZHVjdCBwLnByaWNlIHtcbiAgICAgIHBhZGRpbmctdG9wOiAwcHg7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxNXB4OyB9XG4gICAgW2lkPVwiZmVhdHVyZWQtcHJvZHVjdHNcIl0gLnByb2R1Y3QgZmlndXJlIHtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIG1hcmdpbjogMCBhdXRvIDIwcHg7XG4gICAgICBoZWlnaHQ6IDE3NXB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDE3NXB4O1xuICAgICAgd2lkdGg6IDI4MHB4OyB9XG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgW2lkPVwiZmVhdHVyZWQtcHJvZHVjdHNcIl0gLnByb2R1Y3QgZmlndXJlIHtcbiAgICAgICAgICB3aWR0aDogMjIwcHg7IH0gfVxuICAgICAgW2lkPVwiZmVhdHVyZWQtcHJvZHVjdHNcIl0gLnByb2R1Y3QgZmlndXJlIGltZyB7XG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgbWF4LWhlaWdodDogMTAwJTtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IGJvdHRvbTsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgW2lkPVwiZmVhdHVyZWQtcHJvZHVjdHNcIl0gLnByb2R1Y3RbaWQ9XCJ0cmFja2NsaXAtcHJvXCJdIGZpZ3VyZSB7XG4gICAgICAgIGhlaWdodDogMjI1cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyMjVweDsgfSB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICBbaWQ9XCJmZWF0dXJlZC1wcm9kdWN0c1wiXSAucHJvZHVjdFtpZD1cInRyYWNrY2xpcC1wcm9cIl0gZmlndXJlIGltZyB7XG4gICAgICAgIGhlaWdodDogMTQwcHg7IH0gfVxuICAgIFtpZD1cImZlYXR1cmVkLXByb2R1Y3RzXCJdIC5wcm9kdWN0W2lkPVwidGlyNVwiXSBmaWd1cmUge1xuICAgICAgd2lkdGg6IDIxMHB4OyB9XG4gICAgW2lkPVwiZmVhdHVyZWQtcHJvZHVjdHNcIl0gLnByb2R1Y3RbaWQ9XCJ0aXI1LXByby1idW5kbGVcIl0gZmlndXJlIHtcbiAgICAgIHdpZHRoOiAyODBweDsgfVxuICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAgIFtpZD1cImZlYXR1cmVkLXByb2R1Y3RzXCJdIC5wcm9kdWN0W2lkPVwidGlyNS1wcm8tYnVuZGxlXCJdIGZpZ3VyZSB7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IC0yOXB4OyB9IH1cblxuYm9keS5ob21lIG1haW4ge1xuICBvcGFjaXR5OiAwO1xuICBhbmltYXRpb24tbmFtZTogZmFkZS1zaXRlLWluO1xuICBhbmltYXRpb24tZHVyYXRpb246IDJzO1xuICBhbmltYXRpb24tZmlsbC1tb2RlOiBmb3J3YXJkcztcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuXG5Aa2V5ZnJhbWVzIGZhZGUtc2l0ZS1pbiB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAwOyB9XG4gIDMwJSB7XG4gICAgb3BhY2l0eTogMDsgfVxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAxOyB9IH1cbiAgYm9keS5ob21lIG1haW4gc2VjdGlvbiB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgYm9keS5ob21lIG1haW4gc2VjdGlvbiBhLmN0YSB7XG4gICAgICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLW91dDtcbiAgICAgIHBhZGRpbmc6IDEwcHggNTJweDtcbiAgICAgIGJvcmRlcjogc29saWQgMXB4ICNmYWU2Y2Q7XG4gICAgICBib3JkZXItcmFkaXVzOiA0MHB4O1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG4gICAgICBib2R5LmhvbWUgbWFpbiBzZWN0aW9uIGEuY3RhOmhvdmVyIHtcbiAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuMSk7IH1cblxuYm9keS5ob21lIGgxIHtcbiAgZm9udC1zaXplOiAzNnB4OyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIGJvZHkuaG9tZSBoMSB7XG4gICAgICBmb250LXNpemU6IDQ1cHg7IH0gfVxuXG5ib2R5LmhvbWUgaDIge1xuICBmb250LXNpemU6IDI4cHg7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgYm9keS5ob21lIGgyIHtcbiAgICAgIGZvbnQtc2l6ZTogNDVweDsgfSB9XG5cbmJvZHkuaG9tZSBbaWQ9XCJpbnRyb1wiXSB7XG4gIG1heC13aWR0aDogMjkwcHg7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1hcmdpbi10b3A6IDYwcHg7XG4gIG1hcmdpbi1ib3R0b206IDQwcHg7IH1cbiAgYm9keS5ob21lIFtpZD1cImludHJvXCJdOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIiBcIjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjbGVhcjogYm90aDsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICBib2R5LmhvbWUgW2lkPVwiaW50cm9cIl0ge1xuICAgICAgbWF4LXdpZHRoOiA3MDJweDtcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9XG4gICAgICBib2R5LmhvbWUgW2lkPVwiaW50cm9cIl06YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcIiBcIjtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGNsZWFyOiBib3RoOyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgYm9keS5ob21lIFtpZD1cImludHJvXCJdIHtcbiAgICAgIG1pbi1oZWlnaHQ6IDk4cHg7IH0gfVxuICBib2R5LmhvbWUgW2lkPVwiaW50cm9cIl0gLnR5cGVkIHNwYW4ge1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICB0b3A6IC0yMnB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICBib2R5LmhvbWUgW2lkPVwiaW50cm9cIl0gaDEge1xuICAgIGZvbnQtc2l6ZTogMzZweDsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgYm9keS5ob21lIFtpZD1cImludHJvXCJdIGgxIHtcbiAgICAgICAgZm9udC1zaXplOiA0NXB4OyB9IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgIGJvZHkuaG9tZSBbaWQ9XCJpbnRyb1wiXSBoMSBiciB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuICBib2R5LmhvbWUgW2lkPVwiaW50cm9cIl0gLmNvbnRlbnQgaDMge1xuICAgIG1hcmdpbi10b3A6IDcwMHB4OyB9XG5cbmJvZHkuaG9tZSAubW9uaXRvci1jb250YWluZXIge1xuICBtYXgtd2lkdGg6IDI5MHB4O1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBoZWlnaHQ6IDU4MHB4OyB9XG4gIGJvZHkuaG9tZSAubW9uaXRvci1jb250YWluZXI6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIGJvZHkuaG9tZSAubW9uaXRvci1jb250YWluZXIge1xuICAgICAgbWF4LXdpZHRoOiA3MDJweDtcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9XG4gICAgICBib2R5LmhvbWUgLm1vbml0b3ItY29udGFpbmVyOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCIgXCI7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBjbGVhcjogYm90aDsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIGJvZHkuaG9tZSAubW9uaXRvci1jb250YWluZXIge1xuICAgICAgaGVpZ2h0OiA1MzBweDsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIGJvZHkuaG9tZSAubW9uaXRvci1jb250YWluZXIgLnN0YXRpYy1mYWxsYmFjayB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgYm9keS5ob21lIC5tb25pdG9yLWNvbnRhaW5lciAuZGlzcGxheS1zdXJyb3VuZCxcbiAgICBib2R5LmhvbWUgLm1vbml0b3ItY29udGFpbmVyIC5kZW1vLXZpZGVvIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuICBib2R5LmhvbWUgLm1vbml0b3ItY29udGFpbmVyIGEge1xuICAgIHdpZHRoOiAyNjkuNDkxNTMlO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIG1hcmdpbi1yaWdodDogMS42OTQ5MiU7XG4gICAgbWFyZ2luLWxlZnQ6IC04NC43NDU3NiU7IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgIGJvZHkuaG9tZSAubW9uaXRvci1jb250YWluZXIgYSB7XG4gICAgICAgIHdpZHRoOiAxMTYuOTQ5MTUlO1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxLjY5NDkyJTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC04LjQ3NDU4JTsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIGJvZHkuaG9tZSAubW9uaXRvci1jb250YWluZXIgaW1nIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IC0yMDFweDtcbiAgICAgIG9wYWNpdHk6IC45OTsgfSB9XG4gIGJvZHkuaG9tZSAubW9uaXRvci1jb250YWluZXIgdmlkZW8ge1xuICAgIG1hcmdpbi10b3A6IC0xMjAwcHg7XG4gICAgbWFyZ2luLWxlZnQ6IDM5cHg7XG4gICAgd2lkdGg6IDc0NnB4OyB9XG5cbmJvZHkuaG9tZSBbaWQ9XCJpbnRyby1jdGFcIl0ge1xuICBtYXgtd2lkdGg6IDI5MHB4O1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXJnaW4tYm90dG9tOiA1MHB4OyB9XG4gIGJvZHkuaG9tZSBbaWQ9XCJpbnRyby1jdGFcIl06YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIGJvZHkuaG9tZSBbaWQ9XCJpbnRyby1jdGFcIl0ge1xuICAgICAgbWF4LXdpZHRoOiA3MDJweDtcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9XG4gICAgICBib2R5LmhvbWUgW2lkPVwiaW50cm8tY3RhXCJdOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCIgXCI7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBjbGVhcjogYm90aDsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIGJvZHkuaG9tZSBbaWQ9XCJpbnRyby1jdGFcIl0gLmNhbGwtdG8tYWN0aW9uIHtcbiAgICAgIHdpZHRoOiA4My4wNTA4NSU7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIG1hcmdpbi1yaWdodDogMS42OTQ5MiU7XG4gICAgICBtYXJnaW4tbGVmdDogOC40NzQ1OCU7IH0gfVxuICBib2R5LmhvbWUgW2lkPVwiaW50cm8tY3RhXCJdIC5jYWxsLXRvLWFjdGlvbiBhLmN0YSB7XG4gICAgbWFyZ2luLXRvcDogMjBweDsgfVxuICBib2R5LmhvbWUgW2lkPVwiaW50cm8tY3RhXCJdIC5jYWxsLXRvLWFjdGlvbiAuY2FsbC10by1hY3Rpb24tbGlua3MgYSB7XG4gICAgd2lkdGg6IDI4MHB4OyB9XG5cbmJvZHkuaG9tZSBbaWQ9XCJmZWF0dXJlZC1wcm9kdWN0c1wiXSB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC4xKTsgfVxuXG5ib2R5LmhvbWUgW2lkPVwiZ2FtZXItdGVzdGltb25pYWxzXCJdIHtcbiAgbWF4LXdpZHRoOiAyOTBweDtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgbWFyZ2luLXRvcDogNTBweDtcbiAgbWFyZ2luLWJvdHRvbTogNTBweDsgfVxuICBib2R5LmhvbWUgW2lkPVwiZ2FtZXItdGVzdGltb25pYWxzXCJdOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIiBcIjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjbGVhcjogYm90aDsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICBib2R5LmhvbWUgW2lkPVwiZ2FtZXItdGVzdGltb25pYWxzXCJdIHtcbiAgICAgIG1heC13aWR0aDogNzAycHg7XG4gICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgIG1hcmdpbi1yaWdodDogYXV0bzsgfVxuICAgICAgYm9keS5ob21lIFtpZD1cImdhbWVyLXRlc3RpbW9uaWFsc1wiXTphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgY2xlYXI6IGJvdGg7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICBib2R5LmhvbWUgW2lkPVwiZ2FtZXItdGVzdGltb25pYWxzXCJdIHtcbiAgICAgIG1hcmdpbi10b3A6IDgwcHg7IH0gfVxuICBib2R5LmhvbWUgW2lkPVwiZ2FtZXItdGVzdGltb25pYWxzXCJdIC50ZXN0aW1vbmlhbC1jb250YWluZXIge1xuICAgIG1hcmdpbi10b3A6IDUwcHg7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgYm9keS5ob21lIFtpZD1cImdhbWVyLXRlc3RpbW9uaWFsc1wiXSAudGVzdGltb25pYWwge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tYm90dG9tOiA1MHB4OyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICBib2R5LmhvbWUgW2lkPVwiZ2FtZXItdGVzdGltb25pYWxzXCJdIC50ZXN0aW1vbmlhbCB7XG4gICAgICAgIHdpZHRoOiA0OS4xNTI1NCU7XG4gICAgICAgIGZsb2F0OiBsZWZ0OyB9XG4gICAgICAgIGJvZHkuaG9tZSBbaWQ9XCJnYW1lci10ZXN0aW1vbmlhbHNcIl0gLnRlc3RpbW9uaWFsOm50aC1jaGlsZCgybiArIDEpIHtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IC0xMDAlO1xuICAgICAgICAgIGNsZWFyOiBib3RoO1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwOyB9XG4gICAgICAgIGJvZHkuaG9tZSBbaWQ9XCJnYW1lci10ZXN0aW1vbmlhbHNcIl0gLnRlc3RpbW9uaWFsOm50aC1jaGlsZCgybiArIDIpIHtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogNTAuODQ3NDYlO1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogLTEwMCU7XG4gICAgICAgICAgY2xlYXI6IG5vbmU7IH0gfVxuICBib2R5LmhvbWUgW2lkPVwiZ2FtZXItdGVzdGltb25pYWxzXCJdIGltZyB7XG4gICAgY2xlYXI6IGJvdGg7XG4gICAgd2lkdGg6IDE1LjI1NDI0JTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBtYXJnaW4tcmlnaHQ6IDEuNjk0OTIlO1xuICAgIHdpZHRoOiA0MHB4OyB9XG4gIGJvZHkuaG9tZSBbaWQ9XCJnYW1lci10ZXN0aW1vbmlhbHNcIl0gLnF1b3RlIHtcbiAgICBmb250LXNpemU6IDE2cHg7XG4gICAgbWFyZ2luLXRvcDogMHB4O1xuICAgIHdpZHRoOiA4My4wNTA4NSU7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG4gICAgYm9keS5ob21lIFtpZD1cImdhbWVyLXRlc3RpbW9uaWFsc1wiXSAucXVvdGUgYSB7XG4gICAgICBtYXJnaW4tbGVmdDogLTJweDsgfVxuICAgIGJvZHkuaG9tZSBbaWQ9XCJnYW1lci10ZXN0aW1vbmlhbHNcIl0gLnF1b3RlIC5wZXJzb24ge1xuICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICBtYXJnaW4tdG9wOiAxMnB4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogMHB4O1xuICAgICAgY29sb3I6IHdoaXRlOyB9XG5cbmJvZHkuaG9tZSBbaWQ9XCJmZWF0dXJlZC1nYW1lc1wiXSB7XG4gIGJhY2tncm91bmQ6ICMyMzIzMjMgbm9uZSByZXBlYXQgMCAwO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjM1KTtcbiAgcGFkZGluZy1ib3R0b206IDgwcHg7XG4gIHBhZGRpbmctdG9wOiAyMHB4OyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIGJvZHkuaG9tZSBbaWQ9XCJmZWF0dXJlZC1nYW1lc1wiXSB7XG4gICAgICBwYWRkaW5nOiA1MHB4IGF1dG87IH0gfVxuICBib2R5LmhvbWUgW2lkPVwiZmVhdHVyZWQtZ2FtZXNcIl0gLmdhbWVzLXdyYXAge1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgIGJvZHkuaG9tZSBbaWQ9XCJmZWF0dXJlZC1nYW1lc1wiXSAuZ2FtZXMtd3JhcCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDYwcHg7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIG92ZXJmbG93LXg6IGhpZGRlbjsgfSB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICBib2R5LmhvbWUgW2lkPVwiZmVhdHVyZWQtZ2FtZXNcIl0gLmdhbWVzLXdyYXAgLmdhbWVzIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB0b3A6IDE3cHg7IH0gfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgYm9keS5ob21lIFtpZD1cImZlYXR1cmVkLWdhbWVzXCJdIC5nYW1lcy13cmFwIC5nYW1lcyAuZ2FtZXMtbGlzdCB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwOyB9IH1cbiAgICBib2R5LmhvbWUgW2lkPVwiZmVhdHVyZWQtZ2FtZXNcIl0gLmdhbWVzLXdyYXAgLmdhbWVzIC5nYW1lcy1saXN0IC5nYW1lLWJhY2tncm91bmQge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy90cmFja2lyLWVuaGFuY2VkLWdhbWVzLXZlcnRpY2FsLnBuZyk7XG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgaGVpZ2h0OiA0MDBweDsgfVxuICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAgIGJvZHkuaG9tZSBbaWQ9XCJmZWF0dXJlZC1nYW1lc1wiXSAuZ2FtZXMtd3JhcCAuZ2FtZXMgLmdhbWVzLWxpc3QgLmdhbWUtYmFja2dyb3VuZCB7XG4gICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy90cmFja2lyLWVuaGFuY2VkLWdhbWVzLWhvcml6b250YWwucG5nKTtcbiAgICAgICAgICBoZWlnaHQ6IDIxMHB4O1xuICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgICAgICAgYmFja2dyb3VuZC1zaXplOiBhdXRvIGF1dG87XG4gICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcbiAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0OyB9IH1cblxuYm9keS5ob21lIC50eXBlZC1jdXJzb3Ige1xuICBvcGFjaXR5OiAxO1xuICBhbmltYXRpb246IGN1cnNvci1ibGluayAxcyBpbmZpbml0ZTtcbiAgZm9udC1mYW1pbHk6IFwiQXJpYWxcIiwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDEwMDsgfVxuXG5Aa2V5ZnJhbWVzIGN1cnNvci1ibGluayB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAxOyB9XG4gIDUwJSB7XG4gICAgb3BhY2l0eTogMDsgfVxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAxOyB9IH1cblxuYm9keS5ob21lIGZvb3RlciB7XG4gIG9wYWNpdHk6IC45OTtcbiAgYmFja2dyb3VuZDogIzIzMjMyMyBub25lIHJlcGVhdCAwIDA7IH1cblxuYm9keS5jYXJ0IC5lZGl0Y2FydCB7XG4gIG1heC13aWR0aDogMjkwcHg7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICBib2R5LmNhcnQgLmVkaXRjYXJ0OmFmdGVyIHtcbiAgICBjb250ZW50OiBcIiBcIjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjbGVhcjogYm90aDsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICBib2R5LmNhcnQgLmVkaXRjYXJ0IHtcbiAgICAgIG1heC13aWR0aDogNzAycHg7XG4gICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgIG1hcmdpbi1yaWdodDogYXV0bzsgfVxuICAgICAgYm9keS5jYXJ0IC5lZGl0Y2FydDphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgY2xlYXI6IGJvdGg7IH0gfVxuICBib2R5LmNhcnQgLmVkaXRjYXJ0IFtpZD1cImNvbnRpbnVlU2hvcHBpbmdcIl0ge1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2Utb3V0O1xuICAgIHBhZGRpbmc6IDEwcHggNTJweDtcbiAgICBib3JkZXI6IHNvbGlkIDFweCAjZmFlNmNkO1xuICAgIGJvcmRlci1yYWRpdXM6IDQwcHg7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXJnaW4tdG9wOiAzNXB4O1xuICAgIG1hcmdpbi1ib3R0b206IDM1cHg7IH1cbiAgICBib2R5LmNhcnQgLmVkaXRjYXJ0IFtpZD1cImNvbnRpbnVlU2hvcHBpbmdcIl06aG92ZXIge1xuICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjEpOyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICBib2R5LmNhcnQgLmVkaXRjYXJ0IFtpZD1cImNvbnRpbnVlU2hvcHBpbmdcIl0ge1xuICAgICAgICBmbG9hdDogbGVmdDsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIGJvZHkuY2FydCAuZWRpdGNhcnQgW2lkPVwiY29udGludWVTaG9wcGluZ1wiXSArIGEge1xuICAgICAgZmxvYXQ6IHJpZ2h0OyB9IH1cbiAgYm9keS5jYXJ0IC5lZGl0Y2FydCAuaXRlbXMge1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgcGFkZGluZy1sZWZ0OiAwOyB9XG4gIGJvZHkuY2FydCAuZWRpdGNhcnQgLml0ZW0ge1xuICAgIHBhZGRpbmc6IDI1cHggMHB4O1xuICAgIGJvcmRlci1ib3R0b206IHNvbGlkIDFweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSk7IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgIGJvZHkuY2FydCAuZWRpdGNhcnQgLml0ZW0ge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDIwcHg7IH0gfVxuICAgIGJvZHkuY2FydCAuZWRpdGNhcnQgLml0ZW0gLm1vbmlrZXIge1xuICAgICAgdGV4dC1hbGlnbjogbGVmdDsgfVxuICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAgIGJvZHkuY2FydCAuZWRpdGNhcnQgLml0ZW0gLm1vbmlrZXIge1xuICAgICAgICAgIHdpZHRoOiAyODBweDtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7IH1cbiAgICAgICAgICBib2R5LmNhcnQgLmVkaXRjYXJ0IC5pdGVtIC5tb25pa2VyIGgzIHtcbiAgICAgICAgICAgIG1hcmdpbjogMDsgfSB9XG4gICAgICBib2R5LmNhcnQgLmVkaXRjYXJ0IC5pdGVtIC5tb25pa2VyIC5wYXJ0Lm51bWJlciB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICBib2R5LmNhcnQgLmVkaXRjYXJ0IC5pdGVtIC5wcmljZSB7XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgYm9keS5jYXJ0IC5lZGl0Y2FydCAuaXRlbSAucHJpY2Uge1xuICAgICAgICAgIGxlZnQ6IDM0MHB4O1xuICAgICAgICAgIHdpZHRoOiA2MHB4O1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsgfSB9XG4gICAgYm9keS5jYXJ0IC5lZGl0Y2FydCAuaXRlbSAubXVsdGlwbHkuc2lnbiB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgYm9keS5jYXJ0IC5lZGl0Y2FydCAuaXRlbSAubXVsdGlwbHkuc2lnbiB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIGxlZnQ6IDQxMHB4OyB9IH1cbiAgICBib2R5LmNhcnQgLmVkaXRjYXJ0IC5pdGVtIGZpZWxkc2V0IHtcbiAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAgIGJvZHkuY2FydCAuZWRpdGNhcnQgLml0ZW0gZmllbGRzZXQge1xuICAgICAgICAgIHBhZGRpbmc6IDE1cHggMDsgfSB9XG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgYm9keS5jYXJ0IC5lZGl0Y2FydCAuaXRlbSBmaWVsZHNldCB7XG4gICAgICAgICAgcGFkZGluZzogMHB4OyB9IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgICBib2R5LmNhcnQgLmVkaXRjYXJ0IC5pdGVtIGZpZWxkc2V0IGlucHV0W25hbWU9XCJxdWFudFwiXSB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogLTQwcHg7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiA5MHB4O1xuICAgICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgICB3aWR0aDogNTBweDtcbiAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDsgfSB9XG4gICAgICBib2R5LmNhcnQgLmVkaXRjYXJ0IC5pdGVtIGZpZWxkc2V0IGJ1dHRvblt0eXBlPVwic3VibWl0XCJdIHtcbiAgICAgICAgYm9yZGVyOiBtZWRpdW0gbm9uZTtcbiAgICAgICAgcGFkZGluZzogMTVweCAwcHg7IH1cbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAgICAgYm9keS5jYXJ0IC5lZGl0Y2FydCAuaXRlbSBmaWVsZHNldCBidXR0b25bdHlwZT1cInN1Ym1pdFwiXSB7XG4gICAgICAgICAgICBmbG9hdDogcmlnaHQ7IH0gfVxuICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgICBib2R5LmNhcnQgLmVkaXRjYXJ0IC5pdGVtIGZpZWxkc2V0IGJ1dHRvblt0eXBlPVwic3VibWl0XCJdIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDBweCAwcHg7IH0gfVxuICAgICAgYm9keS5jYXJ0IC5lZGl0Y2FydCAuaXRlbSBmaWVsZHNldCBidXR0b25bdHlwZT1cInN1Ym1pdFwiXTpob3ZlcixcbiAgICAgIGJvZHkuY2FydCAuZWRpdGNhcnQgLml0ZW0gZmllbGRzZXQgYnV0dG9uW3R5cGU9XCJzdWJtaXRcIl06YWN0aXZlIHtcbiAgICAgICAgYmFja2dyb3VuZDogbm9uZTsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgYm9keS5jYXJ0IC5lZGl0Y2FydCAuaXRlbSBmb3JtLnVwZGF0ZS5xdWFudGl0eSB7XG4gICAgICAgIG1hcmdpbi10b3A6IC0yMHB4OyB9XG4gICAgICAgIGJvZHkuY2FydCAuZWRpdGNhcnQgLml0ZW0gZm9ybS51cGRhdGUucXVhbnRpdHkgaW5wdXRbdHlwZT1cInRleHRcIl0ge1xuICAgICAgICAgIG1hcmdpbi10b3A6IC0yMHB4O1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICBsZWZ0OiAxMDBweDsgfSB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICBib2R5LmNhcnQgLmVkaXRjYXJ0IC5pdGVtIGZvcm0udXBkYXRlLnF1YW50aXR5IHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBsZWZ0OiAzODBweDtcbiAgICAgICAgd2lkdGg6IDIwMHB4OyB9XG4gICAgICAgIGJvZHkuY2FydCAuZWRpdGNhcnQgLml0ZW0gZm9ybS51cGRhdGUucXVhbnRpdHkgaW5wdXRbdHlwZT1cInRleHRcIl0ge1xuICAgICAgICAgIHdpZHRoOiA0NXB4O1xuICAgICAgICAgIG1hcmdpbi10b3A6IC01cHg7XG4gICAgICAgICAgaGVpZ2h0OiAyMHB4O1xuICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0OyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICBib2R5LmNhcnQgLmVkaXRjYXJ0IC5pdGVtIGZvcm0udXBkYXRlLnF1YW50aXR5IGJ1dHRvbiB7XG4gICAgICBtYXJnaW4tdG9wOiAtMjBweDsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgYm9keS5jYXJ0IC5lZGl0Y2FydCAuaXRlbSBmb3JtLnVwZGF0ZS5xdWFudGl0eSBidXR0b24ge1xuICAgICAgbWFyZ2luLWxlZnQ6IDVweDsgfSB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICBib2R5LmNhcnQgLmVkaXRjYXJ0IC5pdGVtIGZvcm0ucmVtb3ZlIGJ1dHRvbiB7XG4gICAgICAgIG1hcmdpbi10b3A6IC01MHB4OyB9IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgIGJvZHkuY2FydCAuZWRpdGNhcnQgLml0ZW0gZm9ybS5yZW1vdmUge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGxlZnQ6IDU1MHB4OyB9XG4gICAgICAgIGJvZHkuY2FydCAuZWRpdGNhcnQgLml0ZW0gZm9ybS5yZW1vdmU6OmFmdGVyIHtcbiAgICAgICAgICBjb250ZW50OiBcInxcIjtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgbGVmdDogLTlweDtcbiAgICAgICAgICB0b3A6IDA7IH0gfVxuICAgIGJvZHkuY2FydCAuZWRpdGNhcnQgLml0ZW0gLmxpbmUudG90YWwge1xuICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgaGVpZ2h0OiAyMHB4OyB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgICAgYm9keS5jYXJ0IC5lZGl0Y2FydCAuaXRlbSAubGluZS50b3RhbCB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogLTExMnB4OyB9IH1cbiAgYm9keS5jYXJ0IC5lZGl0Y2FydCAuZGVjaXNpb24ge1xuICAgIHBhZGRpbmctdG9wOiA0MHB4OyB9XG4gICAgYm9keS5jYXJ0IC5lZGl0Y2FydCAuZGVjaXNpb24gLmNoZWNrb3V0IHtcbiAgICAgIHBhZGRpbmc6IDVweCAwOyB9XG4gICAgICBib2R5LmNhcnQgLmVkaXRjYXJ0IC5kZWNpc2lvbiAuY2hlY2tvdXQgYSB7XG4gICAgICAgIG1hcmdpbjogMTBweCAwcHg7XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2Utb3V0O1xuICAgICAgICBwYWRkaW5nOiAxMHB4IDUycHg7XG4gICAgICAgIGJvcmRlcjogc29saWQgMXB4ICNmYWU2Y2Q7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDQwcHg7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG4gICAgICAgIGJvZHkuY2FydCAuZWRpdGNhcnQgLmRlY2lzaW9uIC5jaGVja291dCBhOmhvdmVyIHtcbiAgICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgICAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjEpOyB9XG4gICAgYm9keS5jYXJ0IC5lZGl0Y2FydCAuZGVjaXNpb24gLnJlbW92ZS5hbGwge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICBib2R5LmNhcnQgLmVkaXRjYXJ0IC5jYWxjdWxhdGUuYm94IHtcbiAgICB0ZXh0LWFsaWduOiByaWdodDsgfVxuXG5ib2R5LmNoZWNrb3V0IGgxLFxuYm9keS5jaGVja291dCBoMiB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuXG5ib2R5LmNoZWNrb3V0IGg2IHtcbiAgZm9udC1zaXplOiAxNnB4O1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgbWFyZ2luOiAxNXB4IDA7IH1cblxuYm9keS5jaGVja291dCBmaWVsZHNldCB7XG4gIGJvcmRlcjogbm9uZTsgfVxuXG5ib2R5LmNoZWNrb3V0IGhyIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG5ib2R5LmNoZWNrb3V0IC5lbmMtc3RvcmUge1xuICBtYXgtd2lkdGg6IDI5MHB4O1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9XG4gIGJvZHkuY2hlY2tvdXQgLmVuYy1zdG9yZTphZnRlciB7XG4gICAgY29udGVudDogXCIgXCI7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgYm9keS5jaGVja291dCAuZW5jLXN0b3JlIHtcbiAgICAgIG1heC13aWR0aDogNzAycHg7XG4gICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgIG1hcmdpbi1yaWdodDogYXV0bzsgfVxuICAgICAgYm9keS5jaGVja291dCAuZW5jLXN0b3JlOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCIgXCI7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBjbGVhcjogYm90aDsgfSB9XG4gIGJvZHkuY2hlY2tvdXQgLmVuYy1zdG9yZSAucm93IHtcbiAgICBwYWRkaW5nOiA5cHggMDsgfVxuICAgIGJvZHkuY2hlY2tvdXQgLmVuYy1zdG9yZSAucm93IGxhYmVsLFxuICAgIGJvZHkuY2hlY2tvdXQgLmVuYy1zdG9yZSAucm93IGlucHV0IHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gICAgYm9keS5jaGVja291dCAuZW5jLXN0b3JlIC5yb3cgbGFiZWw6bm90KC5lcnJvcikge1xuICAgICAgcGFkZGluZy1ib3R0b206IDlweDsgfVxuICAgIGJvZHkuY2hlY2tvdXQgLmVuYy1zdG9yZSAucm93IGlucHV0Om5vdChbdHlwZT1cInJhZGlvXCJdKSB7XG4gICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50OyB9XG4gICAgYm9keS5jaGVja291dCAuZW5jLXN0b3JlIC5yb3cgW2lkPVwic3RyZWV0MVwiXSxcbiAgICBib2R5LmNoZWNrb3V0IC5lbmMtc3RvcmUgLnJvdyBbaWQ9XCJzdHJlZXQyXCJdLFxuICAgIGJvZHkuY2hlY2tvdXQgLmVuYy1zdG9yZSAucm93IFtpZD1cImJpbGxpbmdfYWRkcmVzczFcIl0sXG4gICAgYm9keS5jaGVja291dCAuZW5jLXN0b3JlIC5yb3cgW2lkPVwiYmlsbGluZ19hZGRyZXNzMlwiXSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxNXB4OyB9XG4gICAgYm9keS5jaGVja291dCAuZW5jLXN0b3JlIC5yb3cgc2VsZWN0IHtcbiAgICAgIHdpZHRoOiAxODBweDsgfVxuICBib2R5LmNoZWNrb3V0IC5lbmMtc3RvcmUgYnV0dG9uLmNvbnRpbnVlIHtcbiAgICBtYXJnaW4tYm90dG9tOiA0NXB4OyB9XG4gIGJvZHkuY2hlY2tvdXQgLmVuYy1zdG9yZSBbaWQ9XCJjaGVja291dFN0ZXAxXCJdIGJyIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIGJvZHkuY2hlY2tvdXQgLmVuYy1zdG9yZSBbaWQ9XCJjaGVja291dFN0ZXAxXCJdIC5ub3RpY2Uge1xuICAgIHBhZGRpbmc6IC4zNWVtIC42MjVlbSAuNzVlbTsgfVxuICAgIGJvZHkuY2hlY2tvdXQgLmVuYy1zdG9yZSBbaWQ9XCJjaGVja291dFN0ZXAxXCJdIC5ub3RpY2UgcDpsYXN0LW9mLXR5cGUge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgYm9keS5jaGVja291dCAuZW5jLXN0b3JlIFtpZD1cImNoZWNrb3V0U3RlcDFcIl0gLm5vdGljZSBwOmxhc3Qtb2YtdHlwZSB7XG4gICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDsgfSB9XG4gIGJvZHkuY2hlY2tvdXQgLmVuYy1zdG9yZSBbaWQ9XCJjaGVja291dFN0ZXAxXCJdIC5sZWZ0IGgyIHtcbiAgICBib3JkZXItYm90dG9tOiBzb2xpZCAxcHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpOyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICBib2R5LmNoZWNrb3V0IC5lbmMtc3RvcmUgW2lkPVwiY2hlY2tvdXRTdGVwMVwiXSAubGVmdCBoMiB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICBib2R5LmNoZWNrb3V0IC5lbmMtc3RvcmUgW2lkPVwiY2hlY2tvdXRTdGVwMVwiXSAubGVmdCB7XG4gICAgICB3aWR0aDogNDkuMTUyNTQlO1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDEuNjk0OTIlOyB9IH1cbiAgYm9keS5jaGVja291dCAuZW5jLXN0b3JlIFtpZD1cImNoZWNrb3V0U3RlcDFcIl0gLnJpZ2h0IGgyIHtcbiAgICBmb250LWZhbWlseTogXCJBcmlhbFwiLCBzYW5zLXNlcmlmO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjM7XG4gICAgZm9udC1zaXplOiAxOHB4O1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgbWFyZ2luLWJvdHRvbTogLTMwcHg7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgYm9keS5jaGVja291dCAuZW5jLXN0b3JlIFtpZD1cImNoZWNrb3V0U3RlcDFcIl0gLnJpZ2h0IHtcbiAgICAgIHBhZGRpbmctdG9wOiAxNDRweDtcbiAgICAgIHdpZHRoOiA0OS4xNTI1NCU7XG4gICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICBib2R5LmNoZWNrb3V0IC5lbmMtc3RvcmUgW2lkPVwiY2hlY2tvdXRTdGVwMVwiXSBmaWVsZHNldCAuY29udGludWUge1xuICAgICAgbWFyZ2luLXRvcDogNjAwcHg7XG4gICAgICBtYXJnaW4tbGVmdDogLTEyMHB4OyB9IH1cbiAgYm9keS5jaGVja291dCAuZW5jLXN0b3JlIFtpZD1cImNoZWNrb3V0U3RlcDJcIl0gYnIge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgYm9keS5jaGVja291dCAuZW5jLXN0b3JlIFtpZD1cImNoZWNrb3V0U3RlcDJcIl0gaDIge1xuICAgIGJvcmRlci1ib3R0b206IHNvbGlkIDFweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSk7IH1cbiAgYm9keS5jaGVja291dCAuZW5jLXN0b3JlIFtpZD1cImNoZWNrb3V0U3RlcDJcIl0gLnNoaXBwaW5nLm1ldGhvZCB7XG4gICAgd2lkdGg6IGluaGVyaXQgIWltcG9ydGFudDsgfVxuICAgIGJvZHkuY2hlY2tvdXQgLmVuYy1zdG9yZSBbaWQ9XCJjaGVja291dFN0ZXAyXCJdIC5zaGlwcGluZy5tZXRob2QgLm5vdGljZSBwIHtcbiAgICAgIGZvbnQtc2l6ZTogMTZweCAhaW1wb3J0YW50OyB9XG4gICAgYm9keS5jaGVja291dCAuZW5jLXN0b3JlIFtpZD1cImNoZWNrb3V0U3RlcDJcIl0gLnNoaXBwaW5nLm1ldGhvZCB1bCB7XG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgbWFyZ2luLWJvdHRvbTogNDVweDsgfVxuICBib2R5LmNoZWNrb3V0IC5lbmMtc3RvcmUgW2lkPVwiY2hlY2tvdXRTdGVwMlwiXSAuaW50ZXJuYXRpb25hbC10YXgtbm90aWNlIHtcbiAgICBtYXJnaW4tYm90dG9tOiAyNXB4OyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIGJvZHkuY2hlY2tvdXQgLmVuYy1zdG9yZSBbaWQ9XCJjaGVja291dFN0ZXAyXCJdIGJ1dHRvbi5jb250aW51ZSB7XG4gICAgICBtYXJnaW4tbGVmdDogMjE1cHg7IH0gfVxuICBib2R5LmNoZWNrb3V0IC5lbmMtc3RvcmUgW2lkPVwiY2hlY2tvdXRTdGVwMlwiXSBidXR0b25bZGlzYWJsZWQ9XCJcIl0ge1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4zNSk7IH1cbiAgICBib2R5LmNoZWNrb3V0IC5lbmMtc3RvcmUgW2lkPVwiY2hlY2tvdXRTdGVwMlwiXSBidXR0b25bZGlzYWJsZWQ9XCJcIl06aG92ZXIsIGJvZHkuY2hlY2tvdXQgLmVuYy1zdG9yZSBbaWQ9XCJjaGVja291dFN0ZXAyXCJdIGJ1dHRvbltkaXNhYmxlZD1cIlwiXTphY3RpdmUge1xuICAgICAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjM1KTtcbiAgICAgIGNvbG9yOiAjZmFlNmNkOyB9XG4gIGJvZHkuY2hlY2tvdXQgLmVuYy1zdG9yZSBbaWQ9XCJjaGVja291dFN0ZXAzXCJdIGgyIHtcbiAgICBib3JkZXItYm90dG9tOiBzb2xpZCAxcHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIGJvZHkuY2hlY2tvdXQgLmVuYy1zdG9yZSBbaWQ9XCJjaGVja291dFN0ZXAzXCJdIC5sZWZ0IHtcbiAgICAgIHdpZHRoOiA0OS4xNTI1NCU7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIG1hcmdpbi1yaWdodDogMS42OTQ5MiU7XG4gICAgICBwYWRkaW5nLXRvcDogNDdweDsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIGJvZHkuY2hlY2tvdXQgLmVuYy1zdG9yZSBbaWQ9XCJjaGVja291dFN0ZXAzXCJdIC5yaWdodCB7XG4gICAgICB3aWR0aDogNDkuMTUyNTQlO1xuICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwOyB9IH1cbiAgYm9keS5jaGVja291dCAuZW5jLXN0b3JlIFtpZD1cImNoZWNrb3V0U3RlcDNcIl0gW2lkPVwiY29weUFkZHJlc3NcIl0ge1xuICAgIGZsb2F0OiBpbmhlcml0ICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLXRvcDogaW5oZXJpdCAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi1yaWdodDogaW5oZXJpdCAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi1ib3R0b206IDI1cHggIWltcG9ydGFudDtcbiAgICBtYXJnaW4tbGVmdDogaW5oZXJpdCAhaW1wb3J0YW50OyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICBib2R5LmNoZWNrb3V0IC5lbmMtc3RvcmUgW2lkPVwiY2hlY2tvdXRTdGVwM1wiXSBbaWQ9XCJjb3B5QWRkcmVzc1wiXSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAzM3B4ICFpbXBvcnRhbnQ7IH0gfVxuICBib2R5LmNoZWNrb3V0IC5lbmMtc3RvcmUgW2lkPVwiY2hlY2tvdXRTdGVwM1wiXSAucm93LmNyZWRpdC5jYXJkIHVsIHtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIHBhZGRpbmctbGVmdDogMDsgfVxuICBib2R5LmNoZWNrb3V0IC5lbmMtc3RvcmUgW2lkPVwiY2hlY2tvdXRTdGVwM1wiXSAucm93LmNyZWRpdC5jYXJkIGxpIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogNXB4OyB9XG4gIGJvZHkuY2hlY2tvdXQgLmVuYy1zdG9yZSBbaWQ9XCJjaGVja291dFN0ZXAzXCJdIC5yb3cuY3JlZGl0LmNhcmQgbGFiZWwsXG4gIGJvZHkuY2hlY2tvdXQgLmVuYy1zdG9yZSBbaWQ9XCJjaGVja291dFN0ZXAzXCJdIC5yb3cuY3JlZGl0LmNhcmQgaW5wdXQge1xuICAgIGRpc3BsYXk6IGlubGluZTsgfVxuICBib2R5LmNoZWNrb3V0IC5lbmMtc3RvcmUgW2lkPVwiY2hlY2tvdXRTdGVwM1wiXSAucm93LmNyZWRpdC5jYXJkIGlucHV0IHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxMnB4OyB9XG4gIGJvZHkuY2hlY2tvdXQgLmVuYy1zdG9yZSBbaWQ9XCJjaGVja291dFN0ZXAzXCJdIC5ub3RpY2Uge1xuICAgIHBhZGRpbmc6IC4zNWVtIC42MjVlbSAuNzVlbTsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICBib2R5LmNoZWNrb3V0IC5lbmMtc3RvcmUgW2lkPVwiY2hlY2tvdXRTdGVwM1wiXSBidXR0b24uY29udGludWUge1xuICAgICAgbWFyZ2luLXRvcDogMzU1cHg7XG4gICAgICBtYXJnaW4tbGVmdDogLTE0NnB4OyB9IH1cbiAgYm9keS5jaGVja291dCAuZW5jLXN0b3JlIFtpZD1cImNoZWNrb3V0U3RlcDRcIl0gaDIge1xuICAgIGJvcmRlci1ib3R0b206IHNvbGlkIDFweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSk7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgYm9keS5jaGVja291dCAuZW5jLXN0b3JlIFtpZD1cImNoZWNrb3V0U3RlcDRcIl0gLmxlZnQuY29sdW1uIHtcbiAgICAgIHdpZHRoOiA0OS4xNTI1NCU7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIG1hcmdpbi1yaWdodDogMS42OTQ5MiU7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICBib2R5LmNoZWNrb3V0IC5lbmMtc3RvcmUgW2lkPVwiY2hlY2tvdXRTdGVwNFwiXSAucmlnaHQuY29sdW1uIHtcbiAgICAgIHdpZHRoOiA0OS4xNTI1NCU7XG4gICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7IH0gfVxuICBib2R5LmNoZWNrb3V0IC5lbmMtc3RvcmUgW2lkPVwiY2hlY2tvdXRTdGVwNFwiXSAub3JkZXIuc3VtbWFyeSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgbWFyZ2luLXJpZ2h0OiAwOyB9XG4gIGJvZHkuY2hlY2tvdXQgLmVuYy1zdG9yZSBbaWQ9XCJjaGVja291dFN0ZXA0XCJdIC5pdGVtcyB7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7IH1cbiAgYm9keS5jaGVja291dCAuZW5jLXN0b3JlIFtpZD1cImNoZWNrb3V0U3RlcDRcIl0gLml0ZW0ge1xuICAgIGhlaWdodDogNzZweDtcbiAgICBib3JkZXItYm90dG9tOiBzb2xpZCAxcHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpOyB9XG4gICAgYm9keS5jaGVja291dCAuZW5jLXN0b3JlIFtpZD1cImNoZWNrb3V0U3RlcDRcIl0gLml0ZW0gdWwuZGV0YWlscyB7XG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwOyB9XG4gICAgICBib2R5LmNoZWNrb3V0IC5lbmMtc3RvcmUgW2lkPVwiY2hlY2tvdXRTdGVwNFwiXSAuaXRlbSB1bC5kZXRhaWxzIGxpOm50aC1jaGlsZCgxKSB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDEwcHg7IH1cbiAgICAgIGJvZHkuY2hlY2tvdXQgLmVuYy1zdG9yZSBbaWQ9XCJjaGVja291dFN0ZXA0XCJdIC5pdGVtIHVsLmRldGFpbHMgbGk6bnRoLWNoaWxkKDEpLFxuICAgICAgYm9keS5jaGVja291dCAuZW5jLXN0b3JlIFtpZD1cImNoZWNrb3V0U3RlcDRcIl0gLml0ZW0gdWwuZGV0YWlscyBsaTpudGgtY2hpbGQoMikge1xuICAgICAgICBmbG9hdDogbGVmdDsgfVxuICAgICAgYm9keS5jaGVja291dCAuZW5jLXN0b3JlIFtpZD1cImNoZWNrb3V0U3RlcDRcIl0gLml0ZW0gdWwuZGV0YWlscyBsaTpudGgtY2hpbGQoMykge1xuICAgICAgICBmbG9hdDogcmlnaHQ7IH1cbiAgYm9keS5jaGVja291dCAuZW5jLXN0b3JlIFtpZD1cImNoZWNrb3V0U3RlcDRcIl0gdWwudG90YWxzIHtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIHBhZGRpbmctbGVmdDogbm9uZTtcbiAgICBmbG9hdDogcmlnaHQ7IH1cbiAgICBib2R5LmNoZWNrb3V0IC5lbmMtc3RvcmUgW2lkPVwiY2hlY2tvdXRTdGVwNFwiXSB1bC50b3RhbHMgbGkge1xuICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgYm9keS5jaGVja291dCAuZW5jLXN0b3JlIFtpZD1cImNoZWNrb3V0U3RlcDRcIl0gYnV0dG9uLmNvbnRpbnVlIHtcbiAgICAgIG1hcmdpbi10b3A6IDE0MHB4O1xuICAgICAgbWFyZ2luLWxlZnQ6IDIyNXB4OyB9IH1cblxuYm9keS5jaGVja291dCAuemlwNC1sb29rdXAtbGluayB7XG4gIG1hcmdpbi10b3A6IDlweDtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1vdXQ7XG4gIHBhZGRpbmc6IDEwcHggNTJweDtcbiAgYm9yZGVyOiBzb2xpZCAxcHggI2ZhZTZjZDtcbiAgYm9yZGVyLXJhZGl1czogNDBweDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGN1cnNvcjogcG9pbnRlcjsgfVxuICBib2R5LmNoZWNrb3V0IC56aXA0LWxvb2t1cC1saW5rOmhvdmVyIHtcbiAgICBjb2xvcjogd2hpdGU7XG4gICAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjEpOyB9XG5cbmJvZHkuY2hlY2tvdXQgbGFiZWwuZXJyb3Ige1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgbWFyZ2luLXRvcDogLTIycHg7XG4gIG1hcmdpbi1yaWdodDogMTBweDtcbiAgZm9udC1zaXplOiAxM3B4O1xuICBmbG9hdDogcmlnaHQ7XG4gIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgY29sb3I6ICNkMTc5MDA7XG4gIHBhZGRpbmc6IDNweCA1cHggMXB4O1xuICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTsgfVxuXG5ib2R5LmNoZWNrb3V0IC5lcnJvcltmb3I9XCJzdHJlZXQxXCJdLFxuYm9keS5jaGVja291dCAuZXJyb3JbZm9yPVwiYmlsbGluZ19hZGRyZXNzMVwiXSB7XG4gIG1hcmdpbi10b3A6IC0zN3B4OyB9XG5cbmJvZHkuY2hlY2tvdXQgLmVycm9yW2Zvcj1cInN0YXRlcHJvdlwiXSxcbmJvZHkuY2hlY2tvdXQgLmVycm9yW2Zvcj1cImJpbGxpbmdfc3RhdGVwcm92XCJdIHtcbiAgbWFyZ2luLXRvcDogLTQ5cHg7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgYm9keS5jaGVja291dCAuZXJyb3JbZm9yPVwic3RhdGVwcm92XCJdLFxuICAgIGJvZHkuY2hlY2tvdXQgLmVycm9yW2Zvcj1cImJpbGxpbmdfc3RhdGVwcm92XCJdIHtcbiAgICAgIG1hcmdpbi10b3A6IC0yNXB4OyB9IH1cblxuYm9keS5jaGVja291dCBsYWJlbC5lcnJvcltmb3I9XCJiaWxsaW5nX2FkZHJlc3MxXCJdIHtcbiAgbWFyZ2luLXRvcDogLTQwcHg7IH1cblxuYm9keS5jaGVja291dCBsYWJlbC5lcnJvcltmb3I9XCJiaWxsaW5nX3N0YXRlcHJvdlwiXSxcbmJvZHkuY2hlY2tvdXQgbGFiZWwuZXJyb3JbZm9yPVwiYmlsbGluZ19jb3VudHJ5XCJdIHtcbiAgbWFyZ2luLXRvcDogLTQ5cHg7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgYm9keS5jaGVja291dCBsYWJlbC5lcnJvcltmb3I9XCJiaWxsaW5nX3N0YXRlcHJvdlwiXSxcbiAgICBib2R5LmNoZWNrb3V0IGxhYmVsLmVycm9yW2Zvcj1cImJpbGxpbmdfY291bnRyeVwiXSB7XG4gICAgICBtYXJnaW4tdG9wOiAwOyB9IH1cblxuYm9keS5jaGVja291dCAuY29zdG5vbmRpc2NvdW50IHtcbiAgY29sb3I6IGJyb3duO1xuICB0ZXh0LWRlY29yYXRpb246IGxpbmUtdGhyb3VnaDsgfVxuXG5ib2R5LmNoZWNrb3V0IDpub3QoYnV0dG9uKSA+IHNwYW4uYnV0dG9uIHtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1vdXQ7XG4gIHBhZGRpbmc6IDEwcHggNTJweDtcbiAgYm9yZGVyOiBzb2xpZCAxcHggI2ZhZTZjZDtcbiAgYm9yZGVyLXJhZGl1czogNDBweDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGN1cnNvcjogcG9pbnRlcjsgfVxuICBib2R5LmNoZWNrb3V0IDpub3QoYnV0dG9uKSA+IHNwYW4uYnV0dG9uOmhvdmVyIHtcbiAgICBjb2xvcjogd2hpdGU7XG4gICAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjEpOyB9XG5cbmJvZHkuYWJvdXQge1xuICBiYWNrZ3JvdW5kOiAjNTM5M2QwO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lOyB9XG4gIGJvZHkuYWJvdXQgaGVhZGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDgzLCAxNDcsIDIwOCwgMCk7IH1cbiAgYm9keS5hYm91dCBtYWluIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDgzLCAxNDcsIDIwOCwgMC45KTtcbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCByZ2JhKDIzLCAyMywgMjMsIDApIDMyMHB4LCAjMTcxNzE3IDM3MHB4KSwgdXJsKFwiLi4vaW1hZ2VzL2Fib3V0LWJhY2tncm91bmQuanBnXCIpO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQsIG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwJSAwJSwgNTAlIDAlO1xuICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJSAxMDAlLCA1OTlweCAzOTlweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogLTE7XG4gICAgbWFyZ2luLXRvcDogLTYwcHg7XG4gICAgcGFkZGluZy10b3A6IDYwcHg7IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNTk5cHgpIHtcbiAgICAgIGJvZHkuYWJvdXQgbWFpbiB7XG4gICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sIHJnYmEoMjMsIDIzLCAyMywgMCkgNDAwcHgsICMxNzE3MTcgNDUwcHgpLCB1cmwoXCIuLi9pbWFnZXMvYWJvdXQtYmFja2dyb3VuZC5qcGdcIik7XG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQsIG5vLXJlcGVhdDtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMTAwJSAxMDAlLCA1MCUgMCU7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJSAxMDAlLCA3NjhweCA1MTFweDsgfSB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICBib2R5LmFib3V0IG1haW4ge1xuICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCByZ2JhKDIzLCAyMywgMjMsIDApIDUwMHB4LCAjMTcxNzE3IDYwMHB4KSwgdXJsKFwiLi4vaW1hZ2VzL2Fib3V0LWJhY2tncm91bmQuanBnXCIpO1xuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0LCBuby1yZXBlYXQ7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDEwMCUgMTAwJSwgNTAlIC0xMjVweDtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiAxMDAlIDEwMCUsIDEyMDBweCA3OThweDtcbiAgICAgICAgbWFyZ2luLXRvcDogLTc0cHg7XG4gICAgICAgIHBhZGRpbmctdG9wOiA3NHB4OyB9IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gICAgICBib2R5LmFib3V0IG1haW4ge1xuICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCByZ2JhKDIzLCAyMywgMjMsIDApIDUwM3B4LCAjMTcxNzE3IDYzMHB4KSwgdXJsKFwiLi4vaW1hZ2VzL2Fib3V0LWJhY2tncm91bmQuanBnXCIpO1xuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0LCBuby1yZXBlYXQ7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDEwMCUgMTAwJSwgNTAlIC0yMjVweDtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiAxMDAlIDEwMCUsIDE3MDBweCAxMTMycHg7IH0gfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAxNjk5cHgpIHtcbiAgICAgIGJvZHkuYWJvdXQgbWFpbiB7XG4gICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sIHJnYmEoMjMsIDIzLCAyMywgMCkgNjc1cHgsICMxNzE3MTcgODAwcHgpLCB1cmwoXCIuLi9pbWFnZXMvYWJvdXQtYmFja2dyb3VuZC5qcGdcIik7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICM1MzkzZDA7XG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQsIG5vLXJlcGVhdDtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMTAwJSAxMDAlLCA1MCUgLTQyNXB4LCAxMDAlIDEwMCU7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJSAxMDAlLCAyNDAwcHggMTUzMHB4LCAxMDAlIDEwMCU7IH0gfVxuICAgIGJvZHkuYWJvdXQgbWFpbiAuY29udGVudCB7XG4gICAgICBtYXgtd2lkdGg6IDI5MHB4O1xuICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87IH1cbiAgICAgIGJvZHkuYWJvdXQgbWFpbiAuY29udGVudDphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgICBib2R5LmFib3V0IG1haW4gLmNvbnRlbnQge1xuICAgICAgICAgIG1heC13aWR0aDogNzAycHg7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9XG4gICAgICAgICAgYm9keS5hYm91dCBtYWluIC5jb250ZW50OmFmdGVyIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBjbGVhcjogYm90aDsgfSB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICBib2R5LmFib3V0IG1haW4gaDEge1xuICAgICAgICBtYXJnaW46IC4zZW0gMCAuNjdlbTsgfSB9XG4gICAgYm9keS5hYm91dCBtYWluIHNlY3Rpb24uaW50cm8ge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIGJvZHkuYWJvdXQgLmFib3V0LWNvcHkge1xuICAgIG1hcmdpbi10b3A6IDI1MHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDQ1cHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDU5OXB4KSB7XG4gICAgICBib2R5LmFib3V0IC5hYm91dC1jb3B5IHtcbiAgICAgICAgbWFyZ2luLXRvcDogMzAwcHg7XG4gICAgICAgIHdpZHRoOiA5MS41MjU0MiU7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDEuNjk0OTIlO1xuICAgICAgICBtYXJnaW4tbGVmdDogNC4yMzcyOSU7IH0gfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgYm9keS5hYm91dCAuYWJvdXQtY29weSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDQ1MHB4OyB9IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogMTY5OXB4KSB7XG4gICAgICBib2R5LmFib3V0IC5hYm91dC1jb3B5IHtcbiAgICAgICAgbWFyZ2luLXRvcDogNDUwcHg7IH0gfVxuICAgIGJvZHkuYWJvdXQgLmFib3V0LWNvcHkgcCxcbiAgICBib2R5LmFib3V0IC5hYm91dC1jb3B5IGEge1xuICAgICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTsgfVxuICBib2R5LmFib3V0IGZvb3RlciB7XG4gICAgYm9yZGVyLXRvcDogc29saWQgMXB4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xNSk7IH1cblxuYm9keS5wb2xpY3kgbWFpbiB7XG4gIG1heC13aWR0aDogMjkwcHg7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1hcmdpbi1ib3R0b206IDQ1cHg7IH1cbiAgYm9keS5wb2xpY3kgbWFpbjphZnRlciB7XG4gICAgY29udGVudDogXCIgXCI7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgYm9keS5wb2xpY3kgbWFpbiB7XG4gICAgICBtYXgtd2lkdGg6IDcwMnB4O1xuICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87IH1cbiAgICAgIGJvZHkucG9saWN5IG1haW46YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcIiBcIjtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGNsZWFyOiBib3RoOyB9IH1cbiAgYm9keS5wb2xpY3kgbWFpbiBzZWN0aW9uIHVsIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgbGlzdC1zdHlsZTogbm9uZTsgfVxuICAgIGJvZHkucG9saWN5IG1haW4gc2VjdGlvbiB1bCBsaSB7XG4gICAgICBkaXNwbGF5OiB0YWJsZS1yb3c7IH1cbiAgICAgIGJvZHkucG9saWN5IG1haW4gc2VjdGlvbiB1bCBsaTpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiBcIuKAolwiO1xuICAgICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjRlbTsgfVxuXG5ib2R5LnBvbGljeSBoMSxcbmJvZHkucG9saWN5IGgxIH4gcCB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuXG5ib2R5LnBvbGljeSBoMSB7XG4gIG1hcmdpbi1ib3R0b206IDBweDsgfVxuXG5ib2R5LnBvbGljeSBoMSB+IHAge1xuICBtYXJnaW4tdG9wOiAwcHg7XG4gIG1hcmdpbi1ib3R0b206IDQ1cHg7IH1cblxuYm9keS5wb2xpY3kgaDMge1xuICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIGJvZHkucG9saWN5IGgzIH4gcCB7XG4gICAgbWFyZ2luLXRvcDogMHB4OyB9XG5cbmJvZHkud2FycmFudHkgbWFpbixcbmJvZHkudGVybXMgbWFpbiB7XG4gIG1heC13aWR0aDogMjkwcHg7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1hcmdpbi1ib3R0b206IDUwcHg7IH1cbiAgYm9keS53YXJyYW50eSBtYWluOmFmdGVyLFxuICBib2R5LnRlcm1zIG1haW46YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIGJvZHkud2FycmFudHkgbWFpbixcbiAgICBib2R5LnRlcm1zIG1haW4ge1xuICAgICAgbWF4LXdpZHRoOiA3MDJweDtcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9XG4gICAgICBib2R5LndhcnJhbnR5IG1haW46YWZ0ZXIsXG4gICAgICBib2R5LnRlcm1zIG1haW46YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcIiBcIjtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGNsZWFyOiBib3RoOyB9IH1cblxuYm9keS53YXJyYW50eSBoMSxcbmJvZHkud2FycmFudHkgaDEsXG5ib2R5LnRlcm1zIGgxLFxuYm9keS50ZXJtcyBoMSB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuXG5ib2R5LndhcnJhbnR5IGgxLFxuYm9keS50ZXJtcyBoMSB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuXG5ib2R5LndhcnJhbnR5IGgzLFxuYm9keS50ZXJtcyBoMyB7XG4gIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgYm9keS53YXJyYW50eSBoMyB+IHAsXG4gIGJvZHkudGVybXMgaDMgfiBwIHtcbiAgICBtYXJnaW4tdG9wOiAwcHg7IH1cblxuYm9keS5wcm9kdWN0cyBtYWluIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIGJvZHkucHJvZHVjdHMgbWFpbiBoMiB7XG4gICAgbWFyZ2luLWJvdHRvbTogMTBweDsgfVxuICBib2R5LnByb2R1Y3RzIG1haW4gLmNvbnRlbnQge1xuICAgIG1heC13aWR0aDogMjkwcHg7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9XG4gICAgYm9keS5wcm9kdWN0cyBtYWluIC5jb250ZW50OmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgYm9keS5wcm9kdWN0cyBtYWluIC5jb250ZW50IHtcbiAgICAgICAgbWF4LXdpZHRoOiA3MDJweDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICAgIG1hcmdpbi1yaWdodDogYXV0bzsgfVxuICAgICAgICBib2R5LnByb2R1Y3RzIG1haW4gLmNvbnRlbnQ6YWZ0ZXIge1xuICAgICAgICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIGNsZWFyOiBib3RoOyB9IH1cbiAgYm9keS5wcm9kdWN0cyBtYWluIGEuY3RhIHtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLW91dDtcbiAgICBwYWRkaW5nOiAxMHB4IDUycHg7XG4gICAgYm9yZGVyOiBzb2xpZCAxcHggI2ZhZTZjZDtcbiAgICBib3JkZXItcmFkaXVzOiA0MHB4O1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cbiAgICBib2R5LnByb2R1Y3RzIG1haW4gYS5jdGE6aG92ZXIge1xuICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjEpOyB9XG4gIGJvZHkucHJvZHVjdHMgbWFpbiBzZWN0aW9uLmludHJvIHtcbiAgICBwYWRkaW5nOiA1NXB4IDA7IH1cbiAgICBib2R5LnByb2R1Y3RzIG1haW4gc2VjdGlvbi5pbnRybyBwLFxuICAgIGJvZHkucHJvZHVjdHMgbWFpbiBzZWN0aW9uLmludHJvIGgyIHtcbiAgICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgIGJvZHkucHJvZHVjdHMgbWFpbiBzZWN0aW9uLmludHJvIGltZyB7XG4gICAgICAgIHdpZHRoOiA4My4wNTA4NSU7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDEuNjk0OTIlO1xuICAgICAgICBtYXJnaW4tbGVmdDogOC40NzQ1OCU7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDUwcHg7IH0gfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgYm9keS5wcm9kdWN0cyBtYWluIHNlY3Rpb24uaW50cm8gcCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDQ1cHg7IH0gfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgYm9keS5wcm9kdWN0cyBtYWluIHNlY3Rpb24uaW50cm8gLmludHJvLWNvcHkgYSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDE1cHg7IH0gfVxuICBib2R5LnByb2R1Y3RzIG1haW4gc2VjdGlvbi5hY2Nlc3NvcmllcyB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgIzE2MTYxNiAwJSwgIzIzMjMyMyAxMDAlKTtcbiAgICBwYWRkaW5nOiA3MHB4IDA7IH1cbiAgICBib2R5LnByb2R1Y3RzIG1haW4gc2VjdGlvbi5hY2Nlc3NvcmllcyBpbWcge1xuICAgICAgd2lkdGg6IDgzLjA1MDg1JTtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgbWFyZ2luLXJpZ2h0OiAxLjY5NDkyJTtcbiAgICAgIG1hcmdpbi1sZWZ0OiA4LjQ3NDU4JTtcbiAgICAgIGZsb2F0OiBub25lOyB9XG4gICAgYm9keS5wcm9kdWN0cyBtYWluIHNlY3Rpb24uYWNjZXNzb3JpZXMgaDIge1xuICAgICAgbWFyZ2luLXRvcDogMDsgfVxuICAgIGJvZHkucHJvZHVjdHMgbWFpbiBzZWN0aW9uLmFjY2Vzc29yaWVzIC5hY2Nlc3Nvcmllcy1jb3B5IGEge1xuICAgICAgbWFyZ2luLXRvcDogMTVweDsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgYm9keS5wcm9kdWN0cyBtYWluIHNlY3Rpb24uYWNjZXNzb3JpZXMgaW1nIHtcbiAgICAgICAgd2lkdGg6IDY2LjEwMTY5JTtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMS42OTQ5MiU7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwJTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogLTQwcHg7XG4gICAgICAgIGhlaWdodDogMjcwcHg7XG4gICAgICAgIHdpZHRoOiBhdXRvOyB9XG4gICAgICBib2R5LnByb2R1Y3RzIG1haW4gc2VjdGlvbi5hY2Nlc3NvcmllcyAuYWNjZXNzb3JpZXMtY29weSB7XG4gICAgICAgIHdpZHRoOiAzMi4yMDMzOSU7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBtYXJnaW4tdG9wOiA0NXB4OyB9XG4gICAgICAgIGJvZHkucHJvZHVjdHMgbWFpbiBzZWN0aW9uLmFjY2Vzc29yaWVzIC5hY2Nlc3Nvcmllcy1jb3B5IGEge1xuICAgICAgICAgIG1hcmdpbi10b3A6IDE1cHg7IH0gfVxuICBib2R5LnByb2R1Y3RzIG1haW4gc2VjdGlvbi5kZWFsZXJzIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWFnZXMvZGVhbGVycy1tYXAucG5nXCIpO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogNTAlIDIycHg7XG4gICAgYmFja2dyb3VuZC1zaXplOiA2NThweCAyNjhweDtcbiAgICBwYWRkaW5nOiA3MHB4IDA7XG4gICAgaGVpZ2h0OiAzMTJweDsgfVxuICAgIGJvZHkucHJvZHVjdHMgbWFpbiBzZWN0aW9uLmRlYWxlcnMgaDIge1xuICAgICAgbWFyZ2luLXRvcDogMTVweDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7IH1cbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgICBib2R5LnByb2R1Y3RzIG1haW4gc2VjdGlvbi5kZWFsZXJzIGgyIHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAxMTVweDtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyNXB4OyB9IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgIGJvZHkucHJvZHVjdHMgbWFpbiBzZWN0aW9uLmRlYWxlcnMge1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA1MCUgNjNweDtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiA4NzdweCAzNTdweDtcbiAgICAgICAgaGVpZ2h0OiA0ODNweDsgfSB9XG4gICAgYm9keS5wcm9kdWN0cyBtYWluIHNlY3Rpb24uZGVhbGVycyAuY29udGVudCB7XG4gICAgICB3aWR0aDogMzAwcHg7IH1cblxuYm9keS5oZWxwIGEuY3RhIHtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1vdXQ7XG4gIHBhZGRpbmc6IDEwcHggNTJweDtcbiAgYm9yZGVyOiBzb2xpZCAxcHggI2ZhZTZjZDtcbiAgYm9yZGVyLXJhZGl1czogNDBweDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cbiAgYm9keS5oZWxwIGEuY3RhOmhvdmVyIHtcbiAgICBjb2xvcjogd2hpdGU7XG4gICAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjEpOyB9XG5cbmJvZHkuaGVscCBzZWN0aW9uLmhlbHAtc2VjdGlvbixcbmJvZHkuaGVscCBzZWN0aW9uLmNvbnRhY3Qtc2VjdGlvbixcbmJvZHkuaGVscCBzZWN0aW9uLmNvbnRhY3QtZm9ybSB7XG4gIG1heC13aWR0aDogMjkwcHg7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICBib2R5LmhlbHAgc2VjdGlvbi5oZWxwLXNlY3Rpb246YWZ0ZXIsXG4gIGJvZHkuaGVscCBzZWN0aW9uLmNvbnRhY3Qtc2VjdGlvbjphZnRlcixcbiAgYm9keS5oZWxwIHNlY3Rpb24uY29udGFjdC1mb3JtOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIiBcIjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjbGVhcjogYm90aDsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICBib2R5LmhlbHAgc2VjdGlvbi5oZWxwLXNlY3Rpb24sXG4gICAgYm9keS5oZWxwIHNlY3Rpb24uY29udGFjdC1zZWN0aW9uLFxuICAgIGJvZHkuaGVscCBzZWN0aW9uLmNvbnRhY3QtZm9ybSB7XG4gICAgICBtYXgtd2lkdGg6IDcwMnB4O1xuICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87IH1cbiAgICAgIGJvZHkuaGVscCBzZWN0aW9uLmhlbHAtc2VjdGlvbjphZnRlcixcbiAgICAgIGJvZHkuaGVscCBzZWN0aW9uLmNvbnRhY3Qtc2VjdGlvbjphZnRlcixcbiAgICAgIGJvZHkuaGVscCBzZWN0aW9uLmNvbnRhY3QtZm9ybTphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgY2xlYXI6IGJvdGg7IH0gfVxuICBib2R5LmhlbHAgc2VjdGlvbi5oZWxwLXNlY3Rpb246bGFzdC1jaGlsZCxcbiAgYm9keS5oZWxwIHNlY3Rpb24uY29udGFjdC1zZWN0aW9uOmxhc3QtY2hpbGQsXG4gIGJvZHkuaGVscCBzZWN0aW9uLmNvbnRhY3QtZm9ybTpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiA1NXB4OyB9XG5cbmJvZHkuaGVscCBzZWN0aW9uLmhlbHAtc2VjdGlvbiBkaXYge1xuICB3aWR0aDogMTAwJTtcbiAgZmxvYXQ6IGxlZnQ7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBtYXJnaW4tcmlnaHQ6IDA7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgYm9keS5oZWxwIHNlY3Rpb24uaGVscC1zZWN0aW9uIGRpdiB7XG4gICAgICB3aWR0aDogMzIuMjAzMzklO1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDEuNjk0OTIlOyB9XG4gICAgICBib2R5LmhlbHAgc2VjdGlvbi5oZWxwLXNlY3Rpb24gZGl2Omxhc3QtY2hpbGQge1xuICAgICAgICB3aWR0aDogMzIuMjAzMzklO1xuICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMDsgfVxuICAgICAgYm9keS5oZWxwIHNlY3Rpb24uaGVscC1zZWN0aW9uIGRpdiBhLmN0YSB7XG4gICAgICAgIHdpZHRoOiAyMDRweDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDExcHg7XG4gICAgICAgIHBhZGRpbmc6IDEwcHggNXB4OyB9IH1cblxuYm9keS5oZWxwIHNlY3Rpb24uY29udGFjdC1zZWN0aW9uIGRpdiB7XG4gIHdpZHRoOiAxMDAlO1xuICBmbG9hdDogbGVmdDtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIG1hcmdpbi1yaWdodDogMDsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICBib2R5LmhlbHAgc2VjdGlvbi5jb250YWN0LXNlY3Rpb24gZGl2IHtcbiAgICAgIHdpZHRoOiA0OS4xNTI1NCU7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIG1hcmdpbi1yaWdodDogMS42OTQ5MiU7XG4gICAgICBtYXJnaW4tYm90dG9tOiAyMHB4OyB9XG4gICAgICBib2R5LmhlbHAgc2VjdGlvbi5jb250YWN0LXNlY3Rpb24gZGl2Om50aC1jaGlsZCgybisxKSB7XG4gICAgICAgIHdpZHRoOiA0OS4xNTI1NCU7XG4gICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwOyB9IH1cblxuYm9keS5oZWxwIHNlY3Rpb24uaGVscC1zZWN0aW9uIGgxLFxuYm9keS5oZWxwIHNlY3Rpb24uaGVscC1zZWN0aW9uIGgyLFxuYm9keS5oZWxwIHNlY3Rpb24uY29udGFjdC1zZWN0aW9uIGgxLFxuYm9keS5oZWxwIHNlY3Rpb24uY29udGFjdC1zZWN0aW9uIGgyIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGZsb2F0OiBsZWZ0O1xuICBtYXJnaW4tbGVmdDogMDtcbiAgbWFyZ2luLXJpZ2h0OiAwOyB9XG5cbmJvZHkuaGVscCBzZWN0aW9uLmhlbHAtc2VjdGlvbiBoMSxcbmJvZHkuaGVscCBzZWN0aW9uLmNvbnRhY3Qtc2VjdGlvbiBoMSB7XG4gIG1hcmdpbi1ib3R0b206IDI1cHg7IH1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIGJvZHkuaGVscCBzZWN0aW9uLmhlbHAtc2VjdGlvbiBkaXY6bm90KDpmaXJzdC1vZi10eXBlKSB7XG4gICAgbWFyZ2luOiA1NXB4IDAgMDsgfSB9XG5cbmJvZHkuaGVscCBzZWN0aW9uLmhlbHAtc2VjdGlvbiBkaXYgZmlndXJlLFxuYm9keS5oZWxwIHNlY3Rpb24uaGVscC1zZWN0aW9uIGRpdiBoMyxcbmJvZHkuaGVscCBzZWN0aW9uLmhlbHAtc2VjdGlvbiBkaXYgcCxcbmJvZHkuaGVscCBzZWN0aW9uLmhlbHAtc2VjdGlvbiBkaXYgYSB7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbmJvZHkuaGVscCBzZWN0aW9uLmhlbHAtc2VjdGlvbiBkaXYgaDMge1xuICBtYXJnaW4tYm90dG9tOiAwOyB9XG5cbmJvZHkuaGVscCBzZWN0aW9uLmhlbHAtc2VjdGlvbiBkaXYgcCB7XG4gIG1hcmdpbi10b3A6IDVweDsgfVxuXG5ib2R5LmhlbHAgc2VjdGlvbi5oZWxwLXNlY3Rpb24gZGl2IGZpZ3VyZSB7XG4gIG1heC1oZWlnaHQ6IDE0MHB4OyB9XG5cbmJvZHkuaGVscCBzZWN0aW9uLmhlbHAtc2VjdGlvbiBkaXYgaW1nIHtcbiAgbWF4LWhlaWdodDogMTIwcHg7IH1cblxuYm9keS5oZWxwIHNlY3Rpb24uY29udGFjdC1zZWN0aW9uIHtcbiAgbWF4LXdpZHRoOiAyOTBweDtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgbWFyZ2luLXRvcDogMjVweDtcbiAgbWFyZ2luLWJvdHRvbTogNTVweDsgfVxuICBib2R5LmhlbHAgc2VjdGlvbi5jb250YWN0LXNlY3Rpb246YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIGJvZHkuaGVscCBzZWN0aW9uLmNvbnRhY3Qtc2VjdGlvbiB7XG4gICAgICBtYXgtd2lkdGg6IDcwMnB4O1xuICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87IH1cbiAgICAgIGJvZHkuaGVscCBzZWN0aW9uLmNvbnRhY3Qtc2VjdGlvbjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgY2xlYXI6IGJvdGg7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICBib2R5LmhlbHAgc2VjdGlvbi5jb250YWN0LXNlY3Rpb24ge1xuICAgICAgbWFyZ2luLXRvcDogNXB4OyB9IH1cbiAgYm9keS5oZWxwIHNlY3Rpb24uY29udGFjdC1zZWN0aW9uIGgyIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgIGJvZHkuaGVscCBzZWN0aW9uLmNvbnRhY3Qtc2VjdGlvbiBoMiB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAzMHB4OyB9IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgIGJvZHkuaGVscCBzZWN0aW9uLmNvbnRhY3Qtc2VjdGlvbiBoMjo6YmVmb3JlLCBib2R5LmhlbHAgc2VjdGlvbi5jb250YWN0LXNlY3Rpb24gaDI6OmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogc29saWQgMXB4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTtcbiAgICAgICAgd2lkdGg6IDIwMHB4O1xuICAgICAgICBtYXJnaW4tdG9wOiAyNXB4OyB9IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgIGJvZHkuaGVscCBzZWN0aW9uLmNvbnRhY3Qtc2VjdGlvbiBoMjo6YmVmb3JlLCBib2R5LmhlbHAgc2VjdGlvbi5jb250YWN0LXNlY3Rpb24gaDI6OmFmdGVyIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMjVweDsgfSB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICBib2R5LmhlbHAgc2VjdGlvbi5jb250YWN0LXNlY3Rpb24gaDI6OmJlZm9yZSB7XG4gICAgICAgIGZsb2F0OiBsZWZ0OyB9IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgIGJvZHkuaGVscCBzZWN0aW9uLmNvbnRhY3Qtc2VjdGlvbiBoMjo6YWZ0ZXIge1xuICAgICAgICBmbG9hdDogcmlnaHQ7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICBib2R5LmhlbHAgc2VjdGlvbi5jb250YWN0LXNlY3Rpb24gZGl2Lm1vZGVzLW9mLWNvbnRhY3Qge1xuICAgICAgd2lkdGg6IDEwMCU7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICBib2R5LmhlbHAgc2VjdGlvbi5jb250YWN0LXNlY3Rpb24gZGl2Lm1vZGVzLW9mLWNvbnRhY3QgZGl2IHtcbiAgICAgIHdpZHRoOiA0OS4xNTI1NCU7XG4gICAgICBmbG9hdDogbGVmdDsgfVxuICAgICAgYm9keS5oZWxwIHNlY3Rpb24uY29udGFjdC1zZWN0aW9uIGRpdi5tb2Rlcy1vZi1jb250YWN0IGRpdjpudGgtY2hpbGQoMm4gKyAxKSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IC0xMDAlO1xuICAgICAgICBjbGVhcjogYm90aDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgICAgIGJvZHkuaGVscCBzZWN0aW9uLmNvbnRhY3Qtc2VjdGlvbiBkaXYubW9kZXMtb2YtY29udGFjdCBkaXY6bnRoLWNoaWxkKDJuICsgMikge1xuICAgICAgICBtYXJnaW4tbGVmdDogNTAuODQ3NDYlO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IC0xMDAlO1xuICAgICAgICBjbGVhcjogbm9uZTsgfVxuICAgICAgYm9keS5oZWxwIHNlY3Rpb24uY29udGFjdC1zZWN0aW9uIGRpdi5tb2Rlcy1vZi1jb250YWN0IGRpdiBoMyB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDVweDsgfVxuICAgICAgYm9keS5oZWxwIHNlY3Rpb24uY29udGFjdC1zZWN0aW9uIGRpdi5tb2Rlcy1vZi1jb250YWN0IGRpdiBwIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMHB4OyB9IH1cblxuYm9keS5oZWxwIGFkZHJlc3Mge1xuICBmb250LXN0eWxlOiBub3JtYWw7IH1cblxuYm9keS5oZWxwIGEuY3RhLXBob25lLFxuYm9keS5oZWxwIGEuY3RhLWVtYWlsIHtcbiAgY29sb3I6ICNmYWU2Y2Q7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuXG5ib2R5LnJldHVybnMgc2VjdGlvbiB7XG4gIG1heC13aWR0aDogMjkwcHg7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87IH1cbiAgYm9keS5yZXR1cm5zIHNlY3Rpb246YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIGJvZHkucmV0dXJucyBzZWN0aW9uIHtcbiAgICAgIG1heC13aWR0aDogNzAycHg7XG4gICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgIG1hcmdpbi1yaWdodDogYXV0bzsgfVxuICAgICAgYm9keS5yZXR1cm5zIHNlY3Rpb246YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcIiBcIjtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGNsZWFyOiBib3RoOyB9IH1cblxuYm9keS5yZXR1cm5zIHNlY3Rpb24uaW50cm8ge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cblxuYm9keS5yZXR1cm5zIHNlY3Rpb24uY29udGVudCB7XG4gIG1hcmdpbi1ib3R0b206IDQ1cHg7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgYm9keS5yZXR1cm5zIHNlY3Rpb24uY29udGVudCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiA3MHB4OyB9IH1cbiAgYm9keS5yZXR1cm5zIHNlY3Rpb24uY29udGVudCB1bCB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7IH1cbiAgICBib2R5LnJldHVybnMgc2VjdGlvbi5jb250ZW50IHVsIGxpIHtcbiAgICAgIGRpc3BsYXk6IHRhYmxlLXJvdzsgfVxuICAgICAgYm9keS5yZXR1cm5zIHNlY3Rpb24uY29udGVudCB1bCBsaTpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiBcIuKAolwiO1xuICAgICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjRlbTsgfVxuXG5ib2R5LnJlbW90ZS1zdXBwb3J0IHNlY3Rpb24ge1xuICBtYXgtd2lkdGg6IDI5MHB4O1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9XG4gIGJvZHkucmVtb3RlLXN1cHBvcnQgc2VjdGlvbjphZnRlciB7XG4gICAgY29udGVudDogXCIgXCI7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgYm9keS5yZW1vdGUtc3VwcG9ydCBzZWN0aW9uIHtcbiAgICAgIG1heC13aWR0aDogNzAycHg7XG4gICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgIG1hcmdpbi1yaWdodDogYXV0bzsgfVxuICAgICAgYm9keS5yZW1vdGUtc3VwcG9ydCBzZWN0aW9uOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCIgXCI7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBjbGVhcjogYm90aDsgfSB9XG5cbmJvZHkucmVtb3RlLXN1cHBvcnQgc2VjdGlvbi5pbnRybyB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuXG5ib2R5LmZvdXItb2gtZm91ciBzZWN0aW9uLmNvbnRlbnQge1xuICBtYXgtd2lkdGg6IDI5MHB4O1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG1hcmdpbi1ib3R0b206IDU1cHg7IH1cbiAgYm9keS5mb3VyLW9oLWZvdXIgc2VjdGlvbi5jb250ZW50OmFmdGVyIHtcbiAgICBjb250ZW50OiBcIiBcIjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjbGVhcjogYm90aDsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICBib2R5LmZvdXItb2gtZm91ciBzZWN0aW9uLmNvbnRlbnQge1xuICAgICAgbWF4LXdpZHRoOiA3MDJweDtcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9XG4gICAgICBib2R5LmZvdXItb2gtZm91ciBzZWN0aW9uLmNvbnRlbnQ6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcIiBcIjtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGNsZWFyOiBib3RoOyB9IH1cbiAgYm9keS5mb3VyLW9oLWZvdXIgc2VjdGlvbi5jb250ZW50IGgxIHtcbiAgICBtYXJnaW4tdG9wOiAzNXB4O1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgIGJvZHkuZm91ci1vaC1mb3VyIHNlY3Rpb24uY29udGVudCBoMSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDEyNXB4OyB9IH1cbiAgYm9keS5mb3VyLW9oLWZvdXIgc2VjdGlvbi5jb250ZW50IGgyIHtcbiAgICBtYXJnaW4tdG9wOiA1cHg7IH1cbiAgYm9keS5mb3VyLW9oLWZvdXIgc2VjdGlvbi5jb250ZW50IGEuY3RhIHtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLW91dDtcbiAgICBwYWRkaW5nOiAxMHB4IDUycHg7XG4gICAgYm9yZGVyOiBzb2xpZCAxcHggI2ZhZTZjZDtcbiAgICBib3JkZXItcmFkaXVzOiA0MHB4O1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luLXRvcDogNDBweDsgfVxuICAgIGJvZHkuZm91ci1vaC1mb3VyIHNlY3Rpb24uY29udGVudCBhLmN0YTpob3ZlciB7XG4gICAgICBjb2xvcjogd2hpdGU7XG4gICAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuMSk7IH1cblxuYm9keS5kZXZlbG9wZXJzIG1haW4gYS5jdGEge1xuICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLW91dDtcbiAgcGFkZGluZzogMTBweCA1MnB4O1xuICBib3JkZXI6IHNvbGlkIDFweCAjZmFlNmNkO1xuICBib3JkZXItcmFkaXVzOiA0MHB4O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICBib2R5LmRldmVsb3BlcnMgbWFpbiBhLmN0YTpob3ZlciB7XG4gICAgY29sb3I6IHdoaXRlO1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC4xKTsgfVxuXG5ib2R5LmRldmVsb3BlcnMgbWFpbiBzZWN0aW9uIHtcbiAgbWF4LXdpZHRoOiAyOTBweDtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBtYXJnaW4tYm90dG9tOiAzNXB4O1xuICBwYWRkaW5nLWJvdHRvbTogMjVweDsgfVxuICBib2R5LmRldmVsb3BlcnMgbWFpbiBzZWN0aW9uOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIiBcIjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjbGVhcjogYm90aDsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICBib2R5LmRldmVsb3BlcnMgbWFpbiBzZWN0aW9uIHtcbiAgICAgIG1heC13aWR0aDogNzAycHg7XG4gICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgIG1hcmdpbi1yaWdodDogYXV0bzsgfVxuICAgICAgYm9keS5kZXZlbG9wZXJzIG1haW4gc2VjdGlvbjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgY2xlYXI6IGJvdGg7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICBib2R5LmRldmVsb3BlcnMgbWFpbiBzZWN0aW9uIHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiA1NXB4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogNzVweDsgfSB9XG5cbmJvZHkuZGV2ZWxvcGVycyBtYWluIHNlY3Rpb24uaW50cm8ge1xuICBib3JkZXItYm90dG9tOiBzb2xpZCAxcHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpOyB9XG4gIGJvZHkuZGV2ZWxvcGVycyBtYWluIHNlY3Rpb24uaW50cm8gaDEsXG4gIGJvZHkuZGV2ZWxvcGVycyBtYWluIHNlY3Rpb24uaW50cm8gZGl2IHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7IH1cbiAgYm9keS5kZXZlbG9wZXJzIG1haW4gc2VjdGlvbi5pbnRybyBkaXYge1xuICAgIHRleHQtYWxpZ246IGxlZnQ7IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgIGJvZHkuZGV2ZWxvcGVycyBtYWluIHNlY3Rpb24uaW50cm8gZGl2IHtcbiAgICAgICAgd2lkdGg6IDQ5LjE1MjU0JTtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMS42OTQ5MiU7IH1cbiAgICAgICAgYm9keS5kZXZlbG9wZXJzIG1haW4gc2VjdGlvbi5pbnRybyBkaXY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgd2lkdGg6IDQ5LjE1MjU0JTtcbiAgICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwOyB9IH1cblxuYm9keS5kZXZlbG9wZXJzIG1haW4gc2VjdGlvbi5waG9uZS1jb250YWN0IHtcbiAgYm9yZGVyLWJvdHRvbTogc29saWQgMXB4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTsgfVxuICBib2R5LmRldmVsb3BlcnMgbWFpbiBzZWN0aW9uLnBob25lLWNvbnRhY3QgaDEge1xuICAgIGZvbnQtc2l6ZTogMzBweDtcbiAgICBtYXJnaW4tYm90dG9tOiAtMTBweDsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgYm9keS5kZXZlbG9wZXJzIG1haW4gc2VjdGlvbi5waG9uZS1jb250YWN0IGgxIHtcbiAgICAgICAgZm9udC1zaXplOiAzNnB4OyB9IH1cbiAgYm9keS5kZXZlbG9wZXJzIG1haW4gc2VjdGlvbi5waG9uZS1jb250YWN0IGEuY3RhLXBob25lIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cblxuYm9keS5kZXZlbG9wZXJzIG1haW4gc2VjdGlvbi5yZXF1ZXN0LXNlY3Rpb24gaDIge1xuICBtYXJnaW4tYm90dG9tOiAtMTBweDsgfVxuXG5ib2R5LmRldmVsb3BlcnMgbWFpbiBzZWN0aW9uLnJlcXVlc3Qtc2VjdGlvbiBhLmN0YSB7XG4gIG1hcmdpbi10b3A6IDE1cHg7IH1cblxuYm9keS5kZWFsZXJzIG1haW4ge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWFnZXMvZGVhbGVycy1tYXAucG5nXCIpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA1MCUgODVweDtcbiAgYmFja2dyb3VuZC1zaXplOiA2NThweCAyNjhweDtcbiAgcGFkZGluZzogNzBweCAwOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIGJvZHkuZGVhbGVycyBtYWluIHtcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDUwJSA5NXB4O1xuICAgICAgYmFja2dyb3VuZC1zaXplOiAxMjAwcHggYXV0bzsgfSB9XG4gIGJvZHkuZGVhbGVycyBtYWluIHNlY3Rpb24ge1xuICAgIG1heC13aWR0aDogMjkwcHg7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9XG4gICAgYm9keS5kZWFsZXJzIG1haW4gc2VjdGlvbjphZnRlciB7XG4gICAgICBjb250ZW50OiBcIiBcIjtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgIGJvZHkuZGVhbGVycyBtYWluIHNlY3Rpb24ge1xuICAgICAgICBtYXgtd2lkdGg6IDcwMnB4O1xuICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9XG4gICAgICAgIGJvZHkuZGVhbGVycyBtYWluIHNlY3Rpb246YWZ0ZXIge1xuICAgICAgICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIGNsZWFyOiBib3RoOyB9IH1cbiAgYm9keS5kZWFsZXJzIG1haW4gc2VjdGlvbi5pbnRybyB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICBib2R5LmRlYWxlcnMgbWFpbiBzZWN0aW9uLmludHJvIGgxIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNDVweDsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIGJvZHkuZGVhbGVycyBtYWluIFtpZD1cImRlYWxlcnNcIl0gdWwsXG4gICAgYm9keS5kZWFsZXJzIG1haW4gW2lkPVwiZGlzdHJpYnV0b3JzXCJdIHVsIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgIG1hcmdpbi10b3A6IC0zMHB4OyB9IH1cbiAgYm9keS5kZWFsZXJzIG1haW4gW2lkPVwiZGVhbGVyc1wiXSBsaSxcbiAgYm9keS5kZWFsZXJzIG1haW4gW2lkPVwiZGlzdHJpYnV0b3JzXCJdIGxpIHtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIG1hcmdpbi1ib3R0b206IDI3cHg7XG4gICAgbWFyZ2luLWxlZnQ6IC0zMnB4OyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICBib2R5LmRlYWxlcnMgbWFpbiBbaWQ9XCJkZWFsZXJzXCJdIGxpLFxuICAgICAgYm9keS5kZWFsZXJzIG1haW4gW2lkPVwiZGlzdHJpYnV0b3JzXCJdIGxpIHtcbiAgICAgICAgd2lkdGg6IDMyLjIwMzM5JTtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIGhlaWdodDogODBweDsgfVxuICAgICAgICBib2R5LmRlYWxlcnMgbWFpbiBbaWQ9XCJkZWFsZXJzXCJdIGxpOm50aC1jaGlsZCgzbiArIDEpLFxuICAgICAgICBib2R5LmRlYWxlcnMgbWFpbiBbaWQ9XCJkaXN0cmlidXRvcnNcIl0gbGk6bnRoLWNoaWxkKDNuICsgMSkge1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogLTEwMCU7XG4gICAgICAgICAgY2xlYXI6IGJvdGg7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgICAgICAgYm9keS5kZWFsZXJzIG1haW4gW2lkPVwiZGVhbGVyc1wiXSBsaTpudGgtY2hpbGQoM24gKyAyKSxcbiAgICAgICAgYm9keS5kZWFsZXJzIG1haW4gW2lkPVwiZGlzdHJpYnV0b3JzXCJdIGxpOm50aC1jaGlsZCgzbiArIDIpIHtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogMzMuODk4MzElO1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogLTEwMCU7XG4gICAgICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAgICAgYm9keS5kZWFsZXJzIG1haW4gW2lkPVwiZGVhbGVyc1wiXSBsaTpudGgtY2hpbGQoM24gKyAzKSxcbiAgICAgICAgYm9keS5kZWFsZXJzIG1haW4gW2lkPVwiZGlzdHJpYnV0b3JzXCJdIGxpOm50aC1jaGlsZCgzbiArIDMpIHtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogNjcuNzk2NjElO1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogLTEwMCU7XG4gICAgICAgICAgY2xlYXI6IG5vbmU7IH0gfVxuICAgIGJvZHkuZGVhbGVycyBtYWluIFtpZD1cImRlYWxlcnNcIl0gbGkgc3BhbixcbiAgICBib2R5LmRlYWxlcnMgbWFpbiBbaWQ9XCJkaXN0cmlidXRvcnNcIl0gbGkgc3BhbiB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAgICAgYm9keS5kZWFsZXJzIG1haW4gW2lkPVwiZGVhbGVyc1wiXSBsaSBzcGFuOmZpcnN0LWNoaWxkLFxuICAgICAgYm9keS5kZWFsZXJzIG1haW4gW2lkPVwiZGlzdHJpYnV0b3JzXCJdIGxpIHNwYW46Zmlyc3QtY2hpbGQge1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICAgICAgZm9udC1mYW1pbHk6IFwiSGVsdmV0aWNhIE5ldWVcIiwgSGVsdmV0aWNhLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgICAgICAgY29sb3I6ICNmZmY7IH1cbiAgICAgIGJvZHkuZGVhbGVycyBtYWluIFtpZD1cImRlYWxlcnNcIl0gbGkgc3BhbiAuaWNvbi1saW5rLWV4dCxcbiAgICAgIGJvZHkuZGVhbGVycyBtYWluIFtpZD1cImRpc3RyaWJ1dG9yc1wiXSBsaSBzcGFuIC5pY29uLWxpbmstZXh0IHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lO1xuICAgICAgICBmb250LXNpemU6IDEzcHg7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMnB4OyB9XG4gICAgICBib2R5LmRlYWxlcnMgbWFpbiBbaWQ9XCJkZWFsZXJzXCJdIGxpIHNwYW4gYSxcbiAgICAgIGJvZHkuZGVhbGVycyBtYWluIFtpZD1cImRpc3RyaWJ1dG9yc1wiXSBsaSBzcGFuIGEge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIGNvbG9yOiAjZmFlNmNkOyB9XG4gIGJvZHkuZGVhbGVycyBtYWluIFtpZD1cImRpc3RyaWJ1dG9yc1wiXSBoMiB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgYm9keS5kZWFsZXJzIG1haW4gW2lkPVwiZGlzdHJpYnV0b3JzXCJdIGgyIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDMwcHg7IH0gfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgYm9keS5kZWFsZXJzIG1haW4gW2lkPVwiZGlzdHJpYnV0b3JzXCJdIGgyOjpiZWZvcmUsIGJvZHkuZGVhbGVycyBtYWluIFtpZD1cImRpc3RyaWJ1dG9yc1wiXSBoMjo6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICBib3JkZXItYm90dG9tOiBzb2xpZCAxcHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpO1xuICAgICAgICB3aWR0aDogMjAwcHg7XG4gICAgICAgIG1hcmdpbi10b3A6IDI1cHg7IH0gfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgYm9keS5kZWFsZXJzIG1haW4gW2lkPVwiZGlzdHJpYnV0b3JzXCJdIGgyOjpiZWZvcmUsIGJvZHkuZGVhbGVycyBtYWluIFtpZD1cImRpc3RyaWJ1dG9yc1wiXSBoMjo6YWZ0ZXIge1xuICAgICAgICBtYXJnaW4tdG9wOiAyNXB4OyB9IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgIGJvZHkuZGVhbGVycyBtYWluIFtpZD1cImRpc3RyaWJ1dG9yc1wiXSBoMjo6YmVmb3JlIHtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7IH0gfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgYm9keS5kZWFsZXJzIG1haW4gW2lkPVwiZGlzdHJpYnV0b3JzXCJdIGgyOjphZnRlciB7XG4gICAgICAgIGZsb2F0OiByaWdodDsgfSB9XG5cbi8qXG51bCB7XG4gICAgQGluY2x1ZGUgZmx1c2gtbGlzdDtcbn1cbiovXG5ib2R5LmNoYW5nZWxvZ3Mgc2VjdGlvbiB7XG4gIG1heC13aWR0aDogMjkwcHg7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87IH1cbiAgYm9keS5jaGFuZ2Vsb2dzIHNlY3Rpb246YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIGJvZHkuY2hhbmdlbG9ncyBzZWN0aW9uIHtcbiAgICAgIG1heC13aWR0aDogNzAycHg7XG4gICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgIG1hcmdpbi1yaWdodDogYXV0bzsgfVxuICAgICAgYm9keS5jaGFuZ2Vsb2dzIHNlY3Rpb246YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcIiBcIjtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGNsZWFyOiBib3RoOyB9IH1cblxuYm9keS5jaGFuZ2Vsb2dzIFtpZD1cImludHJvXCJdIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG5cbltpZD1cImNoYW5nZWxvZ3NcIl0ge1xuICBtYXgtd2lkdGg6IDI5MHB4O1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXJnaW4tdG9wOiAzNXB4O1xuICBtYXJnaW4tYm90dG9tOiAzNXB4OyB9XG4gIFtpZD1cImNoYW5nZWxvZ3NcIl06YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIFtpZD1cImNoYW5nZWxvZ3NcIl0ge1xuICAgICAgbWF4LXdpZHRoOiA3MDJweDtcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9XG4gICAgICBbaWQ9XCJjaGFuZ2Vsb2dzXCJdOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCIgXCI7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBjbGVhcjogYm90aDsgfSB9XG4gIFtpZD1cImNoYW5nZWxvZ3NcIl0gLmNoYW5nZWxvZyB7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICBwYWRkaW5nLWJvdHRvbTogMjVweDsgfVxuICAgIFtpZD1cImNoYW5nZWxvZ3NcIl0gLmNoYW5nZWxvZzphZnRlciB7XG4gICAgICBjb250ZW50OiBcIiBcIjtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICBbaWQ9XCJjaGFuZ2Vsb2dzXCJdIC5jaGFuZ2Vsb2c6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICBib3JkZXItYm90dG9tOiBzb2xpZCAxcHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpOyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICBbaWQ9XCJjaGFuZ2Vsb2dzXCJdIC5jaGFuZ2Vsb2cge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDsgfSB9XG4gIFtpZD1cImNoYW5nZWxvZ3NcIl0gLnZlcnNpb24tZGV0YWlscyB7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bzsgfVxuICAgIFtpZD1cImNoYW5nZWxvZ3NcIl0gLnZlcnNpb24tZGV0YWlsczphZnRlciB7XG4gICAgICBjb250ZW50OiBcIiBcIjtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICBbaWQ9XCJjaGFuZ2Vsb2dzXCJdIC52ZXJzaW9uLWRldGFpbHMgLnBvc3RlZC1kYXRlIHtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIFtpZD1cImNoYW5nZWxvZ3NcIl0gLmRldGFpbHMge1xuICAgICAgZmxvYXQ6IGxlZnQ7IH0gfVxuICBbaWQ9XCJjaGFuZ2Vsb2dzXCJdIC50cmlnZ2VyLWNoYW5nZWxvZyBkaXYge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB3aWR0aDogNDQuNDQ0NDQlO1xuICAgIGZsb2F0OiBsZWZ0OyB9XG4gICAgW2lkPVwiY2hhbmdlbG9nc1wiXSAudHJpZ2dlci1jaGFuZ2Vsb2cgZGl2OmZpcnN0LWNoaWxkIHtcbiAgICAgIHdpZHRoOiAyNHB4OyB9XG4gIFtpZD1cImNoYW5nZWxvZ3NcIl0gLnRvZ2dsZS1pbmRpY2F0b3Ige1xuICAgIHdpZHRoOiAyNHB4O1xuICAgIHRyYW5zZm9ybTogcm90YXRlKC05MGRlZyk7XG4gICAgdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlO1xuICAgIG1hcmdpbi10b3A6IDE5cHg7IH1cbiAgICBbaWQ9XCJjaGFuZ2Vsb2dzXCJdIC50b2dnbGUtaW5kaWNhdG9yLm9wZW4ge1xuICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7IH1cbiAgW2lkPVwiY2hhbmdlbG9nc1wiXSBoMyB7XG4gICAgbWFyZ2luLWJvdHRvbTogMTBweDsgfVxuICAgIFtpZD1cImNoYW5nZWxvZ3NcIl0gaDMgYSB7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cbiAgW2lkPVwiY2hhbmdlbG9nc1wiXSBwIHtcbiAgICBtYXJnaW4tdG9wOiA1cHg7IH1cbiAgW2lkPVwiY2hhbmdlbG9nc1wiXSAuY29sbGFwc2UtdHJpZ2dlciB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIFtpZD1cImNoYW5nZWxvZ3NcIl0gYS5jdGEge1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2Utb3V0O1xuICAgIHBhZGRpbmc6IDEwcHggNTJweDtcbiAgICBib3JkZXI6IHNvbGlkIDFweCAjZmFlNmNkO1xuICAgIGJvcmRlci1yYWRpdXM6IDQwcHg7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB3aWR0aDogMjM1cHg7IH1cbiAgICBbaWQ9XCJjaGFuZ2Vsb2dzXCJdIGEuY3RhOmhvdmVyIHtcbiAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC4xKTsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgW2lkPVwiY2hhbmdlbG9nc1wiXSBhLmN0YSB7XG4gICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgbWFyZ2luLXRvcDogMjJweDsgfSB9XG4gICAgW2lkPVwiY2hhbmdlbG9nc1wiXSBhLmN0YS5kb3dubG9hZC1saW5rIHtcbiAgICAgIG1hcmdpbi10b3A6IDE1cHg7IH1cbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgICBbaWQ9XCJjaGFuZ2Vsb2dzXCJdIGEuY3RhLmRvd25sb2FkLWxpbmsge1xuICAgICAgICAgIG1hcmdpbi10b3A6IDIycHg7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxNXB4OyB9IH1cbiAgW2lkPVwiY2hhbmdlbG9nc1wiXSAuY2hhbmdlcyB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBtaW4td2lkdGg6IDEwMCU7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bzsgfVxuICAgIFtpZD1cImNoYW5nZWxvZ3NcIl0gLmNoYW5nZXM6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCIgXCI7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgW2lkPVwiY2hhbmdlbG9nc1wiXSAuY2hhbmdlcyB1bCB7XG4gICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgbGlzdC1zdHlsZTogbm9uZTsgfVxuICAgICAgW2lkPVwiY2hhbmdlbG9nc1wiXSAuY2hhbmdlcyB1bCBsaSB7XG4gICAgICAgIGRpc3BsYXk6IHRhYmxlLXJvdzsgfVxuICAgICAgICBbaWQ9XCJjaGFuZ2Vsb2dzXCJdIC5jaGFuZ2VzIHVsIGxpOmJlZm9yZSB7XG4gICAgICAgICAgY29udGVudDogXCLigKJcIjtcbiAgICAgICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNGVtOyB9XG5cbmJvZHkuZG93bmxvYWRzIG1haW4gc2VjdGlvbiB7XG4gIG1heC13aWR0aDogMjkwcHg7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87IH1cbiAgYm9keS5kb3dubG9hZHMgbWFpbiBzZWN0aW9uOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIiBcIjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjbGVhcjogYm90aDsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICBib2R5LmRvd25sb2FkcyBtYWluIHNlY3Rpb24ge1xuICAgICAgbWF4LXdpZHRoOiA3MDJweDtcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9XG4gICAgICBib2R5LmRvd25sb2FkcyBtYWluIHNlY3Rpb246YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcIiBcIjtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGNsZWFyOiBib3RoOyB9IH1cbiAgYm9keS5kb3dubG9hZHMgbWFpbiBzZWN0aW9uIGEuY3RhIHtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLW91dDtcbiAgICBwYWRkaW5nOiAxMHB4IDUycHg7XG4gICAgYm9yZGVyOiBzb2xpZCAxcHggI2ZhZTZjZDtcbiAgICBib3JkZXItcmFkaXVzOiA0MHB4O1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgYm9keS5kb3dubG9hZHMgbWFpbiBzZWN0aW9uIGEuY3RhOmhvdmVyIHtcbiAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC4xKTsgfVxuICBib2R5LmRvd25sb2FkcyBtYWluIHNlY3Rpb24gYSB7XG4gICAgY29sb3I6ICNmYWU2Y2Q7IH1cblxuYm9keS5kb3dubG9hZHMgW2lkPVwiaW50cm9cIl0gaDEge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIGJvZHkuZG93bmxvYWRzIFtpZD1cInRyYWNraXItc29mdHdhcmVcIl0gLnRyYWNraXItY2FsbG91dCB7XG4gICAgd2lkdGg6IDY2LjEwMTY5JTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBtYXJnaW4tcmlnaHQ6IDEuNjk0OTIlO1xuICAgIG1hcmdpbi1sZWZ0OiAxNi45NDkxNSU7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9IH1cblxuYm9keS5kb3dubG9hZHMgW2lkPVwidHJhY2tpci1zb2Z0d2FyZVwiXSAudHJhY2tpci1jYWxsb3V0IGltZyB7XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7IH1cblxuYm9keS5kb3dubG9hZHMgW2lkPVwidHJhY2tpci1zb2Z0d2FyZVwiXSAudHJhY2tpci1jYWxsb3V0IGgzIHtcbiAgZm9udC1zaXplOiAxOHB4OyB9XG5cbmJvZHkuZG93bmxvYWRzIFtpZD1cInRyYWNraXItc29mdHdhcmVcIl0gLnRyYWNraXItY2FsbG91dCAuc2Vjb25kYXJ5IHtcbiAgZm9udC1zaXplOiAxNnB4O1xuICBtYXJnaW4tdG9wOiAtMjBweDtcbiAgbGluZS1oZWlnaHQ6IDI2cHg7XG4gIG1hcmdpbi1ib3R0b206IDMwcHg7IH1cblxuYm9keS5kb3dubG9hZHMgW2lkPVwidHJhY2tpci1zb2Z0d2FyZVwiXSAudHJhY2tpci1jYWxsb3V0IGEuY3RhIHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgcGFkZGluZzogMTBweCAyMHB4O1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICBib2R5LmRvd25sb2FkcyBbaWQ9XCJ0cmFja2lyLXNvZnR3YXJlXCJdIC50cmFja2lyLWNhbGxvdXQgYS5jdGEge1xuICAgICAgcGFkZGluZzogMTBweCA1MnB4O1xuICAgICAgd2lkdGg6IDcwJTsgfSB9XG5cbmJvZHkuZG93bmxvYWRzIFtpZD1cImFsZXJ0cy1hbmQtcmVxdWlyZW1lbnRzXCJdIHtcbiAgbWFyZ2luLXRvcDogNTBweDsgfVxuICBib2R5LmRvd25sb2FkcyBbaWQ9XCJhbGVydHMtYW5kLXJlcXVpcmVtZW50c1wiXSAuYWxlcnRzLWFuZC1ub3RpY2VzLFxuICBib2R5LmRvd25sb2FkcyBbaWQ9XCJhbGVydHMtYW5kLXJlcXVpcmVtZW50c1wiXSAuc3lzdGVtLXJlcXVpcmVtZW50cyB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgIGJvZHkuZG93bmxvYWRzIFtpZD1cImFsZXJ0cy1hbmQtcmVxdWlyZW1lbnRzXCJdIC5hbGVydHMtYW5kLW5vdGljZXMsXG4gICAgICBib2R5LmRvd25sb2FkcyBbaWQ9XCJhbGVydHMtYW5kLXJlcXVpcmVtZW50c1wiXSAuc3lzdGVtLXJlcXVpcmVtZW50cyB7XG4gICAgICAgIHdpZHRoOiA0OS4xNTI1NCU7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDEuNjk0OTIlOyB9IH1cbiAgICBib2R5LmRvd25sb2FkcyBbaWQ9XCJhbGVydHMtYW5kLXJlcXVpcmVtZW50c1wiXSAuYWxlcnRzLWFuZC1ub3RpY2VzIHVsLFxuICAgIGJvZHkuZG93bmxvYWRzIFtpZD1cImFsZXJ0cy1hbmQtcmVxdWlyZW1lbnRzXCJdIC5zeXN0ZW0tcmVxdWlyZW1lbnRzIHVsIHtcbiAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICBsaXN0LXN0eWxlOiBub25lOyB9XG4gICAgICBib2R5LmRvd25sb2FkcyBbaWQ9XCJhbGVydHMtYW5kLXJlcXVpcmVtZW50c1wiXSAuYWxlcnRzLWFuZC1ub3RpY2VzIHVsIGxpLFxuICAgICAgYm9keS5kb3dubG9hZHMgW2lkPVwiYWxlcnRzLWFuZC1yZXF1aXJlbWVudHNcIl0gLnN5c3RlbS1yZXF1aXJlbWVudHMgdWwgbGkge1xuICAgICAgICBkaXNwbGF5OiB0YWJsZS1yb3c7IH1cbiAgICAgICAgYm9keS5kb3dubG9hZHMgW2lkPVwiYWxlcnRzLWFuZC1yZXF1aXJlbWVudHNcIl0gLmFsZXJ0cy1hbmQtbm90aWNlcyB1bCBsaTpiZWZvcmUsXG4gICAgICAgIGJvZHkuZG93bmxvYWRzIFtpZD1cImFsZXJ0cy1hbmQtcmVxdWlyZW1lbnRzXCJdIC5zeXN0ZW0tcmVxdWlyZW1lbnRzIHVsIGxpOmJlZm9yZSB7XG4gICAgICAgICAgY29udGVudDogXCLigKJcIjtcbiAgICAgICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNGVtOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIGJvZHkuZG93bmxvYWRzIFtpZD1cImFsZXJ0cy1hbmQtcmVxdWlyZW1lbnRzXCJdIC5zeXN0ZW0tcmVxdWlyZW1lbnRzIHtcbiAgICAgIHdpZHRoOiA0OS4xNTI1NCU7XG4gICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7IH0gfVxuXG5ib2R5LmRvd25sb2FkcyBbaWQ9XCJkcml2ZXJzXCJdIHtcbiAgbWFyZ2luLXRvcDogNTBweDsgfVxuICBib2R5LmRvd25sb2FkcyBbaWQ9XCJkcml2ZXJzXCJdIGgyIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgIGJvZHkuZG93bmxvYWRzIFtpZD1cImRyaXZlcnNcIl0gaDIge1xuICAgICAgICBwYWRkaW5nLXRvcDogMzBweDsgfSB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICBib2R5LmRvd25sb2FkcyBbaWQ9XCJkcml2ZXJzXCJdIGgyOjpiZWZvcmUsIGJvZHkuZG93bmxvYWRzIFtpZD1cImRyaXZlcnNcIl0gaDI6OmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogc29saWQgMXB4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTtcbiAgICAgICAgd2lkdGg6IDIwMHB4O1xuICAgICAgICBtYXJnaW4tdG9wOiAyNXB4OyB9IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgIGJvZHkuZG93bmxvYWRzIFtpZD1cImRyaXZlcnNcIl0gaDI6OmJlZm9yZSwgYm9keS5kb3dubG9hZHMgW2lkPVwiZHJpdmVyc1wiXSBoMjo6YWZ0ZXIge1xuICAgICAgICBtYXJnaW4tdG9wOiAyNXB4OyB9IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgIGJvZHkuZG93bmxvYWRzIFtpZD1cImRyaXZlcnNcIl0gaDI6OmJlZm9yZSB7XG4gICAgICAgIGZsb2F0OiBsZWZ0OyB9IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgIGJvZHkuZG93bmxvYWRzIFtpZD1cImRyaXZlcnNcIl0gaDI6OmFmdGVyIHtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0OyB9IH1cbiAgYm9keS5kb3dubG9hZHMgW2lkPVwiZHJpdmVyc1wiXSAuYnV0dG9uIHtcbiAgICBtYXJnaW4tdG9wOiA2MHB4O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgIGJvZHkuZG93bmxvYWRzIFtpZD1cImRyaXZlcnNcIl0gLmJ1dHRvbiB7XG4gICAgICAgIHdpZHRoOiA0OS4xNTI1NCU7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDEuNjk0OTIlOyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgYm9keS5kb3dubG9hZHMgW2lkPVwiZHJpdmVyc1wiXSAuYnV0dG9uOmxhc3Qtb2YtdHlwZSB7XG4gICAgICB3aWR0aDogNDkuMTUyNTQlO1xuICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwOyB9IH1cblxuYm9keS5kb3dubG9hZHMgW2lkPVwibWFudWFsc1wiXSBoMiB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICBib2R5LmRvd25sb2FkcyBbaWQ9XCJtYW51YWxzXCJdIGgyIHtcbiAgICAgIHBhZGRpbmctdG9wOiAzMHB4OyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgYm9keS5kb3dubG9hZHMgW2lkPVwibWFudWFsc1wiXSBoMjo6YmVmb3JlLCBib2R5LmRvd25sb2FkcyBbaWQ9XCJtYW51YWxzXCJdIGgyOjphZnRlciB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgYm9yZGVyLWJvdHRvbTogc29saWQgMXB4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTtcbiAgICAgIHdpZHRoOiAyMDBweDtcbiAgICAgIG1hcmdpbi10b3A6IDI1cHg7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICBib2R5LmRvd25sb2FkcyBbaWQ9XCJtYW51YWxzXCJdIGgyOjpiZWZvcmUsIGJvZHkuZG93bmxvYWRzIFtpZD1cIm1hbnVhbHNcIl0gaDI6OmFmdGVyIHtcbiAgICAgIG1hcmdpbi10b3A6IDI1cHg7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICBib2R5LmRvd25sb2FkcyBbaWQ9XCJtYW51YWxzXCJdIGgyOjpiZWZvcmUge1xuICAgICAgZmxvYXQ6IGxlZnQ7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICBib2R5LmRvd25sb2FkcyBbaWQ9XCJtYW51YWxzXCJdIGgyOjphZnRlciB7XG4gICAgICBmbG9hdDogcmlnaHQ7IH0gfVxuXG5ib2R5LmRvd25sb2FkcyBbaWQ9XCJtYW51YWxzXCJdIC5tYW51YWxzIHtcbiAgbWFyZ2luLXRvcDogNjBweDsgfVxuICBib2R5LmRvd25sb2FkcyBbaWQ9XCJtYW51YWxzXCJdIC5tYW51YWxzIGZpZ3VyZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogNTBweDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgIGJvZHkuZG93bmxvYWRzIFtpZD1cIm1hbnVhbHNcIl0gLm1hbnVhbHMgZmlndXJlIHtcbiAgICAgICAgd2lkdGg6IDMyLjIwMzM5JTtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7IH1cbiAgICAgICAgYm9keS5kb3dubG9hZHMgW2lkPVwibWFudWFsc1wiXSAubWFudWFscyBmaWd1cmU6bnRoLWNoaWxkKDNuICsgMSkge1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogLTEwMCU7XG4gICAgICAgICAgY2xlYXI6IGJvdGg7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgICAgICAgYm9keS5kb3dubG9hZHMgW2lkPVwibWFudWFsc1wiXSAubWFudWFscyBmaWd1cmU6bnRoLWNoaWxkKDNuICsgMikge1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAzMy44OTgzMSU7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAtMTAwJTtcbiAgICAgICAgICBjbGVhcjogbm9uZTsgfVxuICAgICAgICBib2R5LmRvd25sb2FkcyBbaWQ9XCJtYW51YWxzXCJdIC5tYW51YWxzIGZpZ3VyZTpudGgtY2hpbGQoM24gKyAzKSB7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDY3Ljc5NjYxJTtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IC0xMDAlO1xuICAgICAgICAgIGNsZWFyOiBub25lOyB9IH1cbiAgICBib2R5LmRvd25sb2FkcyBbaWQ9XCJtYW51YWxzXCJdIC5tYW51YWxzIGZpZ3VyZSBpbWcge1xuICAgICAgcGFkZGluZy1ib3R0b206IDE1cHg7XG4gICAgICBoZWlnaHQ6IDEzOHB4OyB9XG4gICAgYm9keS5kb3dubG9hZHMgW2lkPVwibWFudWFsc1wiXSAubWFudWFscyBmaWd1cmUgc3BhbiB7XG4gICAgICBtYXJnaW46IDNweCBhdXRvO1xuICAgICAgZGlzcGxheTogYmxvY2s7IH1cbiAgICAgIGJvZHkuZG93bmxvYWRzIFtpZD1cIm1hbnVhbHNcIl0gLm1hbnVhbHMgZmlndXJlIHNwYW46Zmlyc3Qtb2YtdHlwZSB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkOyB9XG4gICAgYm9keS5kb3dubG9hZHMgW2lkPVwibWFudWFsc1wiXSAubWFudWFscyBmaWd1cmUgYS5jdGEge1xuICAgICAgbWFyZ2luLXRvcDogMTVweDtcbiAgICAgIHBhZGRpbmc6IDEwcHggMjBweDtcbiAgICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgYm9keS5kb3dubG9hZHMgW2lkPVwibWFudWFsc1wiXSAubWFudWFscyBmaWd1cmUgYS5jdGEge1xuICAgICAgICAgIHBhZGRpbmc6IDEwcHggNTJweDtcbiAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH0gfVxuXG5ib2R5LnNvZnR3YXJlLW5ld3Mgc2VjdGlvbiB7XG4gIG1heC13aWR0aDogMjkwcHg7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87IH1cbiAgYm9keS5zb2Z0d2FyZS1uZXdzIHNlY3Rpb246YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIGJvZHkuc29mdHdhcmUtbmV3cyBzZWN0aW9uIHtcbiAgICAgIG1heC13aWR0aDogNzAycHg7XG4gICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgIG1hcmdpbi1yaWdodDogYXV0bzsgfVxuICAgICAgYm9keS5zb2Z0d2FyZS1uZXdzIHNlY3Rpb246YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcIiBcIjtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGNsZWFyOiBib3RoOyB9IH1cblxuYm9keS5zb2Z0d2FyZS1uZXdzIFtpZD1cImludHJvXCJdIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG5cbmJvZHkuc29mdHdhcmUtbmV3cyBzZWN0aW9uIHtcbiAgbWF4LXdpZHRoOiAyOTBweDtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bzsgfVxuICBib2R5LnNvZnR3YXJlLW5ld3Mgc2VjdGlvbjphZnRlciB7XG4gICAgY29udGVudDogXCIgXCI7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgYm9keS5zb2Z0d2FyZS1uZXdzIHNlY3Rpb24ge1xuICAgICAgbWF4LXdpZHRoOiA3MDJweDtcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9XG4gICAgICBib2R5LnNvZnR3YXJlLW5ld3Mgc2VjdGlvbjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgY2xlYXI6IGJvdGg7IH0gfVxuXG5ib2R5LnNvZnR3YXJlLW5ld3MgW2lkPVwiaW50cm9cIl0ge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cblxuYm9keS5zb2Z0d2FyZS1uZXdzIC5kb3dubG9hZC1hbmQtbWFudWFsIGEge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZy10b3A6IDEwcHg7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgYm9keS5zb2Z0d2FyZS1uZXdzIC5kb3dubG9hZC1hbmQtbWFudWFsIGEge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG4gICAgICBib2R5LnNvZnR3YXJlLW5ld3MgLmRvd25sb2FkLWFuZC1tYW51YWwgYTpsYXN0LWNoaWxkIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4OyB9IH1cblxuYm9keS5zb2Z0d2FyZS1uZXdzIFtpZD1cImNoYW5nZWxvZ1wiXSB7XG4gIG1hcmdpbi1ib3R0b206IDQ1cHg7IH1cblxuYm9keS5wcmV2aW91cy1yZWxlYXNlcyBzZWN0aW9uIHtcbiAgbWF4LXdpZHRoOiAyOTBweDtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bzsgfVxuICBib2R5LnByZXZpb3VzLXJlbGVhc2VzIHNlY3Rpb246YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIGJvZHkucHJldmlvdXMtcmVsZWFzZXMgc2VjdGlvbiB7XG4gICAgICBtYXgtd2lkdGg6IDcwMnB4O1xuICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87IH1cbiAgICAgIGJvZHkucHJldmlvdXMtcmVsZWFzZXMgc2VjdGlvbjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgY2xlYXI6IGJvdGg7IH0gfVxuXG5ib2R5LnByZXZpb3VzLXJlbGVhc2VzIHNlY3Rpb25baWQ9XCJpbnRyb1wiXSB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuXG5ib2R5LnByZXZpb3VzLXJlbGVhc2VzIC5yZXR1cm4tbGluayB7XG4gIG1hcmdpbjogMTBweCAwO1xuICBkaXNwbGF5OiBibG9jazsgfVxuXG5ib2R5LnByZXZpb3VzLXJlbGVhc2VzIHNlY3Rpb25baWQ9XCJyZWxlYXNlc1wiXSB7XG4gIG1hcmdpbi1ib3R0b206IDM1cHg7IH1cbiAgYm9keS5wcmV2aW91cy1yZWxlYXNlcyBzZWN0aW9uW2lkPVwicmVsZWFzZXNcIl0gLmRvd25sb2FkIHtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIHBhZGRpbmctYm90dG9tOiAyNXB4OyB9XG4gICAgYm9keS5wcmV2aW91cy1yZWxlYXNlcyBzZWN0aW9uW2lkPVwicmVsZWFzZXNcIl0gLmRvd25sb2FkOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIGJvZHkucHJldmlvdXMtcmVsZWFzZXMgc2VjdGlvbltpZD1cInJlbGVhc2VzXCJdIC5kb3dubG9hZDpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgIGJvcmRlci1ib3R0b206IHNvbGlkIDFweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSk7IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgIGJvZHkucHJldmlvdXMtcmVsZWFzZXMgc2VjdGlvbltpZD1cInJlbGVhc2VzXCJdIC5kb3dubG9hZCB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAwOyB9IH1cbiAgYm9keS5wcmV2aW91cy1yZWxlYXNlcyBzZWN0aW9uW2lkPVwicmVsZWFzZXNcIl0gLmRldGFpbHMge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgYm9keS5wcmV2aW91cy1yZWxlYXNlcyBzZWN0aW9uW2lkPVwicmVsZWFzZXNcIl0gLmRldGFpbHMge1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDsgfSB9XG4gIGJvZHkucHJldmlvdXMtcmVsZWFzZXMgc2VjdGlvbltpZD1cInJlbGVhc2VzXCJdIGgzIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4OyB9XG4gIGJvZHkucHJldmlvdXMtcmVsZWFzZXMgc2VjdGlvbltpZD1cInJlbGVhc2VzXCJdIHAge1xuICAgIG1hcmdpbi10b3A6IDVweDsgfVxuICBib2R5LnByZXZpb3VzLXJlbGVhc2VzIHNlY3Rpb25baWQ9XCJyZWxlYXNlc1wiXSAuZG93bmxvYWQtbGluayB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIGJvZHkucHJldmlvdXMtcmVsZWFzZXMgc2VjdGlvbltpZD1cInJlbGVhc2VzXCJdIGEuY3RhIHtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLW91dDtcbiAgICBwYWRkaW5nOiAxMHB4IDUycHg7XG4gICAgYm9yZGVyOiBzb2xpZCAxcHggI2ZhZTZjZDtcbiAgICBib3JkZXItcmFkaXVzOiA0MHB4O1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cbiAgICBib2R5LnByZXZpb3VzLXJlbGVhc2VzIHNlY3Rpb25baWQ9XCJyZWxlYXNlc1wiXSBhLmN0YTpob3ZlciB7XG4gICAgICBjb2xvcjogd2hpdGU7XG4gICAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuMSk7IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgIGJvZHkucHJldmlvdXMtcmVsZWFzZXMgc2VjdGlvbltpZD1cInJlbGVhc2VzXCJdIGEuY3RhIHtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICBtYXJnaW4tdG9wOiAyMnB4OyB9IH1cblxuQGtleWZyYW1lcyBtb3ZlaGVhZCB7XG4gIGZyb20ge1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGxlZnQgY2VudGVyOyB9XG4gIHRvIHtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTIwMDBweDsgfSB9XG5cbltpZD1cImZlYXR1cmVkLXByb2R1Y3RzXCJdIHtcbiAgcGFkZGluZzogMjVweCAwIDMwcHg7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIFtpZD1cImZlYXR1cmVkLXByb2R1Y3RzXCJdIHtcbiAgICAgIHBhZGRpbmc6IDI1cHggMCA2NXB4OyB9IH1cbiAgW2lkPVwiZmVhdHVyZWQtcHJvZHVjdHNcIl0gYS5jdGEge1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2Utb3V0O1xuICAgIHBhZGRpbmc6IDEwcHggNTJweDtcbiAgICBib3JkZXI6IHNvbGlkIDFweCAjZmFlNmNkO1xuICAgIGJvcmRlci1yYWRpdXM6IDQwcHg7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICAgIFtpZD1cImZlYXR1cmVkLXByb2R1Y3RzXCJdIGEuY3RhOmhvdmVyIHtcbiAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC4xKTsgfVxuICBbaWQ9XCJmZWF0dXJlZC1wcm9kdWN0c1wiXSAucHJvZHVjdHMge1xuICAgIG1heC13aWR0aDogMjkwcHg7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9XG4gICAgW2lkPVwiZmVhdHVyZWQtcHJvZHVjdHNcIl0gLnByb2R1Y3RzOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgW2lkPVwiZmVhdHVyZWQtcHJvZHVjdHNcIl0gLnByb2R1Y3RzIHtcbiAgICAgICAgbWF4LXdpZHRoOiA3MDJweDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICAgIG1hcmdpbi1yaWdodDogYXV0bzsgfVxuICAgICAgICBbaWQ9XCJmZWF0dXJlZC1wcm9kdWN0c1wiXSAucHJvZHVjdHM6YWZ0ZXIge1xuICAgICAgICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIGNsZWFyOiBib3RoOyB9IH1cbiAgW2lkPVwiZmVhdHVyZWQtcHJvZHVjdHNcIl0gLnByb2R1Y3Qge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIG1hcmdpbi1yaWdodDogMDsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgW2lkPVwiZmVhdHVyZWQtcHJvZHVjdHNcIl0gLnByb2R1Y3Qge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA2NXB4OyB9IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgIFtpZD1cImZlYXR1cmVkLXByb2R1Y3RzXCJdIC5wcm9kdWN0Omxhc3QtY2hpbGQge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAzNXB4OyB9IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgIFtpZD1cImZlYXR1cmVkLXByb2R1Y3RzXCJdIC5wcm9kdWN0IHtcbiAgICAgICAgd2lkdGg6IDMyLjIwMzM5JTtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMS42OTQ5MiU7IH1cbiAgICAgICAgW2lkPVwiZmVhdHVyZWQtcHJvZHVjdHNcIl0gLnByb2R1Y3Q6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgd2lkdGg6IDMyLjIwMzM5JTtcbiAgICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwOyB9IH1cbiAgICBbaWQ9XCJmZWF0dXJlZC1wcm9kdWN0c1wiXSAucHJvZHVjdCBwIHtcbiAgICAgIG1hcmdpbjogMTBweCAwIC01cHg7IH1cbiAgICBbaWQ9XCJmZWF0dXJlZC1wcm9kdWN0c1wiXSAucHJvZHVjdCBwLnByaWNlIHtcbiAgICAgIHBhZGRpbmctdG9wOiAwcHg7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxNXB4OyB9XG4gICAgW2lkPVwiZmVhdHVyZWQtcHJvZHVjdHNcIl0gLnByb2R1Y3QgZmlndXJlIHtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIG1hcmdpbjogMCBhdXRvIDIwcHg7XG4gICAgICBoZWlnaHQ6IDE3NXB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDE3NXB4O1xuICAgICAgd2lkdGg6IDI4MHB4OyB9XG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgW2lkPVwiZmVhdHVyZWQtcHJvZHVjdHNcIl0gLnByb2R1Y3QgZmlndXJlIHtcbiAgICAgICAgICB3aWR0aDogMjIwcHg7IH0gfVxuICAgICAgW2lkPVwiZmVhdHVyZWQtcHJvZHVjdHNcIl0gLnByb2R1Y3QgZmlndXJlIGltZyB7XG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgbWF4LWhlaWdodDogMTAwJTtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IGJvdHRvbTsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgW2lkPVwiZmVhdHVyZWQtcHJvZHVjdHNcIl0gLnByb2R1Y3RbaWQ9XCJ0cmFja2NsaXAtcHJvXCJdIGZpZ3VyZSB7XG4gICAgICAgIGhlaWdodDogMjI1cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyMjVweDsgfSB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICBbaWQ9XCJmZWF0dXJlZC1wcm9kdWN0c1wiXSAucHJvZHVjdFtpZD1cInRyYWNrY2xpcC1wcm9cIl0gZmlndXJlIGltZyB7XG4gICAgICAgIGhlaWdodDogMTQwcHg7IH0gfVxuICAgIFtpZD1cImZlYXR1cmVkLXByb2R1Y3RzXCJdIC5wcm9kdWN0W2lkPVwidGlyNVwiXSBmaWd1cmUge1xuICAgICAgd2lkdGg6IDIxMHB4OyB9XG4gICAgW2lkPVwiZmVhdHVyZWQtcHJvZHVjdHNcIl0gLnByb2R1Y3RbaWQ9XCJ0aXI1LXByby1idW5kbGVcIl0gZmlndXJlIHtcbiAgICAgIHdpZHRoOiAyODBweDsgfVxuICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAgIFtpZD1cImZlYXR1cmVkLXByb2R1Y3RzXCJdIC5wcm9kdWN0W2lkPVwidGlyNS1wcm8tYnVuZGxlXCJdIGZpZ3VyZSB7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IC0yOXB4OyB9IH1cblxuYm9keS50cmFja2lyNSB7XG4gIC8qIEJhY2tncm91bmQ6ICovIH1cbiAgYm9keS50cmFja2lyNSBtYWluIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuOyB9XG4gIGJvZHkudHJhY2tpcjUgc2VjdGlvbiB7XG4gICAgbWF4LXdpZHRoOiAyOTBweDtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87IH1cbiAgICBib2R5LnRyYWNraXI1IHNlY3Rpb246YWZ0ZXIge1xuICAgICAgY29udGVudDogXCIgXCI7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICBib2R5LnRyYWNraXI1IHNlY3Rpb24ge1xuICAgICAgICBtYXgtd2lkdGg6IDcwMnB4O1xuICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9XG4gICAgICAgIGJvZHkudHJhY2tpcjUgc2VjdGlvbjphZnRlciB7XG4gICAgICAgICAgY29udGVudDogXCIgXCI7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgY2xlYXI6IGJvdGg7IH0gfVxuICBib2R5LnRyYWNraXI1IHNlY3Rpb24uaW50cm8ge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICBib2R5LnRyYWNraXI1IGRpdi5tb25pdG9yIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWFnZXMvdHJhY2tpci01LWZvci1tb25pdG9yLnBuZ1wiKSwgdXJsKFwiLi4vaW1hZ2VzL21vbml0b3ItYmV6ZWwucG5nXCIpLCByYWRpYWwtZ3JhZGllbnQoZWxsaXBzZSBhdCB0b3AsICMzYjNiM2IgMCUsIGJsYWNrIDEwMCUpO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQsIHJlcGVhdC14LCBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogNTAlIDQzcHgsIDBweCAyNjVweCwgMHB4IDI3MHB4O1xuICAgIGJhY2tncm91bmQtc2l6ZTogMzcwcHgsIDEwMCUgNjVweCwgYXV0bztcbiAgICBwYWRkaW5nLXRvcDogMjkwcHg7IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgIGJvZHkudHJhY2tpcjUgZGl2Lm1vbml0b3Ige1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA1MCUgNDRweCwgMHB4IDMzMHB4LCAwcHggMzQ0cHg7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogNDc1cHggYXV0bywgMTAwJSA2NXB4LCBhdXRvIGF1dG87XG4gICAgICAgIHBhZGRpbmctdG9wOiAzOTBweDsgfSB9XG4gIGJvZHkudHJhY2tpcjUgLnNpeGRvRiB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgYm9keS50cmFja2lyNSAuc2l4ZG9GIGgyIHtcbiAgICAgIG1hcmdpbi10b3A6IDUwcHg7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgIGJvZHkudHJhY2tpcjUgLnNpeGRvRiA+IGgyIHNwYW4ge1xuICAgICAgICBkaXNwbGF5OiBibG9jazsgfSB9XG4gICAgYm9keS50cmFja2lyNSAuc2l4ZG9GIHAge1xuICAgICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTsgfVxuICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAgIGJvZHkudHJhY2tpcjUgLnNpeGRvRiBwIHtcbiAgICAgICAgICB3aWR0aDogNjYuMTAxNjklO1xuICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogMS42OTQ5MiU7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDE2Ljk0OTE1JTsgfSB9XG4gICAgYm9keS50cmFja2lyNSAuc2l4ZG9GIGRpdi5oZWFkcyB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgbWFyZ2luLXJpZ2h0OiAxLjY5NDkyJTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDQ1cHg7XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG4gICAgICBib2R5LnRyYWNraXI1IC5zaXhkb0YgZGl2LmhlYWRzIC5hbmltYXRpb24tc3BvdCB7XG4gICAgICAgIHdpZHRoOiAxMDBweDtcbiAgICAgICAgbWFyZ2luOiAxNXB4IDE1cHg7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgb3ZlcmZsb3c6IHZpc2libGU7IH1cbiAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAgICAgYm9keS50cmFja2lyNSAuc2l4ZG9GIGRpdi5oZWFkcyAuYW5pbWF0aW9uLXNwb3Qge1xuICAgICAgICAgICAgd2lkdGg6IDE1LjI1NDI0JTtcbiAgICAgICAgICAgIGZsb2F0OiBsZWZ0OyB9XG4gICAgICAgICAgICBib2R5LnRyYWNraXI1IC5zaXhkb0YgZGl2LmhlYWRzIC5hbmltYXRpb24tc3BvdDpudGgtY2hpbGQoNm4gKyAxKSB7XG4gICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IC0xMDAlO1xuICAgICAgICAgICAgICBjbGVhcjogYm90aDtcbiAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgICAgICAgICAgIGJvZHkudHJhY2tpcjUgLnNpeGRvRiBkaXYuaGVhZHMgLmFuaW1hdGlvbi1zcG90Om50aC1jaGlsZCg2biArIDIpIHtcbiAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDE2Ljk0OTE1JTtcbiAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAtMTAwJTtcbiAgICAgICAgICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAgICAgICAgIGJvZHkudHJhY2tpcjUgLnNpeGRvRiBkaXYuaGVhZHMgLmFuaW1hdGlvbi1zcG90Om50aC1jaGlsZCg2biArIDMpIHtcbiAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDMzLjg5ODMxJTtcbiAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAtMTAwJTtcbiAgICAgICAgICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAgICAgICAgIGJvZHkudHJhY2tpcjUgLnNpeGRvRiBkaXYuaGVhZHMgLmFuaW1hdGlvbi1zcG90Om50aC1jaGlsZCg2biArIDQpIHtcbiAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDUwLjg0NzQ2JTtcbiAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAtMTAwJTtcbiAgICAgICAgICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAgICAgICAgIGJvZHkudHJhY2tpcjUgLnNpeGRvRiBkaXYuaGVhZHMgLmFuaW1hdGlvbi1zcG90Om50aC1jaGlsZCg2biArIDUpIHtcbiAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDY3Ljc5NjYxJTtcbiAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAtMTAwJTtcbiAgICAgICAgICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAgICAgICAgIGJvZHkudHJhY2tpcjUgLnNpeGRvRiBkaXYuaGVhZHMgLmFuaW1hdGlvbi1zcG90Om50aC1jaGlsZCg2biArIDYpIHtcbiAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDg0Ljc0NTc2JTtcbiAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAtMTAwJTtcbiAgICAgICAgICAgICAgY2xlYXI6IG5vbmU7IH0gfVxuICAgICAgICBib2R5LnRyYWNraXI1IC5zaXhkb0YgZGl2LmhlYWRzIC5hbmltYXRpb24tc3BvdC5ob3ZlciAuc3ByaXRlIHtcbiAgICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgICAgICAgIG1hcmdpbi10b3A6IC0xNzVweDtcbiAgICAgICAgICBhbmltYXRpb246IG1vdmVoZWFkIDJzIHN0ZXBzKDMwKSBpbmZpbml0ZTtcbiAgICAgICAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiB2aXNpYmlsaXR5O1xuICAgICAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDFzOyB9XG4gICAgICAgIGJvZHkudHJhY2tpcjUgLnNpeGRvRiBkaXYuaGVhZHMgLmFuaW1hdGlvbi1zcG90LmhvdmVyIC5naG9zdCB7XG4gICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiBvcGFjaXR5O1xuICAgICAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDEuNXM7IH1cbiAgICAgICAgYm9keS50cmFja2lyNSAuc2l4ZG9GIGRpdi5oZWFkcyAuYW5pbWF0aW9uLXNwb3QgcCB7XG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogMjVweDtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAtMTVweDsgfVxuICAgICAgICBib2R5LnRyYWNraXI1IC5zaXhkb0YgZGl2LmhlYWRzIC5hbmltYXRpb24tc3BvdCAuc3ByaXRlIHtcbiAgICAgICAgICB3aWR0aDogMTAwcHg7XG4gICAgICAgICAgaGVpZ2h0OiAxMzhweDtcbiAgICAgICAgICBtYXJnaW46IDI1cHggMTVweDtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgbWFyZ2luLXRvcDogLTE3NXB4O1xuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBsZWZ0IGNlbnRlcjtcbiAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDAuODIpOyB9XG4gICAgICAgIGJvZHkudHJhY2tpcjUgLnNpeGRvRiBkaXYuaGVhZHMgLmFuaW1hdGlvbi1zcG90IC5naG9zdCB7XG4gICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcbiAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgICAgICAgIHdpZHRoOiAxMjBweDtcbiAgICAgICAgICBoZWlnaHQ6IDEzOHB4O1xuICAgICAgICAgIG1hcmdpbjogMTJweCAxNXB4IDEycHggNXB4O1xuICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogb3BhY2l0eTtcbiAgICAgICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAxczsgfVxuICAgICAgICAgIGJvZHkudHJhY2tpcjUgLnNpeGRvRiBkaXYuaGVhZHMgLmFuaW1hdGlvbi1zcG90IC5naG9zdC55IHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciAycHg7IH1cbiAgICAgICAgICBib2R5LnRyYWNraXI1IC5zaXhkb0YgZGl2LmhlYWRzIC5hbmltYXRpb24tc3BvdCAuZ2hvc3QucGl0Y2gge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIDBweDsgfVxuICAgICAgICBib2R5LnRyYWNraXI1IC5zaXhkb0YgZGl2LmhlYWRzIC5hbmltYXRpb24tc3BvdCAuei5naG9zdCB7XG4gICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjIpOyB9XG4gICAgICAgIGJvZHkudHJhY2tpcjUgLnNpeGRvRiBkaXYuaGVhZHMgLmFuaW1hdGlvbi1zcG90IC55YXcuc3ByaXRlIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWFnZXMveWF3LXNwcml0ZS5wbmdcIik7IH1cbiAgICAgICAgYm9keS50cmFja2lyNSAuc2l4ZG9GIGRpdi5oZWFkcyAuYW5pbWF0aW9uLXNwb3QgLnlhdy5naG9zdCB7XG4gICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1hZ2VzLzZkb2YteWF3LnBuZ1wiKTtcbiAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0OyB9XG4gICAgICAgIGJvZHkudHJhY2tpcjUgLnNpeGRvRiBkaXYuaGVhZHMgLmFuaW1hdGlvbi1zcG90IC54LnNwcml0ZSB7XG4gICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1hZ2VzL3gtc3ByaXRlLnBuZ1wiKTsgfVxuICAgICAgICBib2R5LnRyYWNraXI1IC5zaXhkb0YgZGl2LmhlYWRzIC5hbmltYXRpb24tc3BvdCAueC5naG9zdCB7XG4gICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1hZ2VzLzZkb2YteC5wbmdcIik7XG4gICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDsgfVxuICAgICAgICBib2R5LnRyYWNraXI1IC5zaXhkb0YgZGl2LmhlYWRzIC5hbmltYXRpb24tc3BvdCAucGl0Y2guc3ByaXRlIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWFnZXMvcGl0Y2gtc3ByaXRlLnBuZ1wiKTsgfVxuICAgICAgICBib2R5LnRyYWNraXI1IC5zaXhkb0YgZGl2LmhlYWRzIC5hbmltYXRpb24tc3BvdCAucGl0Y2guZ2hvc3Qge1xuICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltYWdlcy82ZG9mLXBpdGNoLnBuZ1wiKTtcbiAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0OyB9XG4gICAgICAgIGJvZHkudHJhY2tpcjUgLnNpeGRvRiBkaXYuaGVhZHMgLmFuaW1hdGlvbi1zcG90IC55LnNwcml0ZSB7XG4gICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1hZ2VzL3ktc3ByaXRlLnBuZ1wiKTsgfVxuICAgICAgICBib2R5LnRyYWNraXI1IC5zaXhkb0YgZGl2LmhlYWRzIC5hbmltYXRpb24tc3BvdCAueS5naG9zdCB7XG4gICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1hZ2VzLzZkb2YteS5wbmdcIik7XG4gICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDsgfVxuICAgICAgICBib2R5LnRyYWNraXI1IC5zaXhkb0YgZGl2LmhlYWRzIC5hbmltYXRpb24tc3BvdCAucm9sbC5zcHJpdGUge1xuICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltYWdlcy9yb2xsLXNwcml0ZS5wbmdcIik7IH1cbiAgICAgICAgYm9keS50cmFja2lyNSAuc2l4ZG9GIGRpdi5oZWFkcyAuYW5pbWF0aW9uLXNwb3QgLnJvbGwuZ2hvc3Qge1xuICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltYWdlcy82ZG9mLXJvbGwucG5nXCIpO1xuICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7IH1cbiAgICAgICAgYm9keS50cmFja2lyNSAuc2l4ZG9GIGRpdi5oZWFkcyAuYW5pbWF0aW9uLXNwb3QgLnouc3ByaXRlIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWFnZXMvei1zcHJpdGUucG5nXCIpOyB9XG4gICAgICAgIGJvZHkudHJhY2tpcjUgLnNpeGRvRiBkaXYuaGVhZHMgLmFuaW1hdGlvbi1zcG90IC56Lmdob3N0IHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWFnZXMvNmRvZi16LnBuZ1wiKTtcbiAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0OyB9XG4gICAgYm9keS50cmFja2lyNSAuc2l4ZG9GIC5zaXhkb0YtdmlkZW9zIHtcbiAgICAgIHBhZGRpbmctdG9wOiA0MHB4O1xuICAgICAgcGFkZGluZy1ib3R0b206IDQwcHg7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgbWFyZ2luLXJpZ2h0OiAxLjY5NDkyJTsgfVxuICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAgIGJvZHkudHJhY2tpcjUgLnNpeGRvRiAuc2l4ZG9GLXZpZGVvcyB7XG4gICAgICAgICAgcGFkZGluZy1ib3R0b206IDYwcHg7XG4gICAgICAgICAgYm9yZGVyLXRvcDogc29saWQgMXB4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xNSk7IH0gfVxuICAgICAgYm9keS50cmFja2lyNSAuc2l4ZG9GIC5zaXhkb0YtdmlkZW9zIGEge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAzNXB4OyB9XG4gICAgICBib2R5LnRyYWNraXI1IC5zaXhkb0YgLnNpeGRvRi12aWRlb3MgZmlndXJlIHtcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwLjg4KTtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDM1cHg7IH1cbiAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAgICAgYm9keS50cmFja2lyNSAuc2l4ZG9GIC5zaXhkb0YtdmlkZW9zIGZpZ3VyZSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICB3aWR0aDogMjIwcHg7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpOyB9IH1cbiAgICAgICAgYm9keS50cmFja2lyNSAuc2l4ZG9GIC5zaXhkb0YtdmlkZW9zIGZpZ3VyZSBpbWcge1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gICAgICAgICAgcGFkZGluZy1ib3R0b206IDE1cHg7IH1cbiAgICAgICAgYm9keS50cmFja2lyNSAuc2l4ZG9GIC5zaXhkb0YtdmlkZW9zIGZpZ3VyZSBzcGFuOm50aC1jaGlsZCgxKSB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7IH1cbiAgICAgICAgYm9keS50cmFja2lyNSAuc2l4ZG9GIC5zaXhkb0YtdmlkZW9zIGZpZ3VyZSBzcGFuOm50aC1jaGlsZCgyKSxcbiAgICAgICAgYm9keS50cmFja2lyNSAuc2l4ZG9GIC5zaXhkb0YtdmlkZW9zIGZpZ3VyZSBzcGFuOm50aC1jaGlsZCgzKSB7XG4gICAgICAgICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4zNSk7IH1cbiAgYm9keS50cmFja2lyNSAucHJlY2lzZS10cmFja2luZyB7XG4gICAgbWFyZ2luLWJvdHRvbTogLTVweDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgICBib2R5LnRyYWNraXI1IC5wcmVjaXNlLXRyYWNraW5nIHAge1xuICAgICAgY29sb3I6ICNmYWU2Y2Q7IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgICBib2R5LnRyYWNraXI1IC5wcmVjaXNlLXRyYWNraW5nIHAge1xuICAgICAgICAgIG1hcmdpbi10b3A6IC0yMHB4O1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDgwcHg7IH0gfVxuICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAgIGJvZHkudHJhY2tpcjUgLnByZWNpc2UtdHJhY2tpbmcgcCB7XG4gICAgICAgICAgbWFyZ2luOiBpbml0aWFsOyB9IH1cbiAgICBib2R5LnRyYWNraXI1IC5wcmVjaXNlLXRyYWNraW5nIC5wcmVjaXNlLXRyYWNraW5nLWNvbnRlbnQge1xuICAgICAgbWF4LXdpZHRoOiAyOTBweDtcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgICAgcGFkZGluZy10b3A6IDM1cHg7IH1cbiAgICAgIGJvZHkudHJhY2tpcjUgLnByZWNpc2UtdHJhY2tpbmcgLnByZWNpc2UtdHJhY2tpbmctY29udGVudDphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgICBib2R5LnRyYWNraXI1IC5wcmVjaXNlLXRyYWNraW5nIC5wcmVjaXNlLXRyYWNraW5nLWNvbnRlbnQge1xuICAgICAgICAgIG1heC13aWR0aDogNzAycHg7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9XG4gICAgICAgICAgYm9keS50cmFja2lyNSAucHJlY2lzZS10cmFja2luZyAucHJlY2lzZS10cmFja2luZy1jb250ZW50OmFmdGVyIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBjbGVhcjogYm90aDsgfSB9XG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgYm9keS50cmFja2lyNSAucHJlY2lzZS10cmFja2luZyAucHJlY2lzZS10cmFja2luZy1jb250ZW50IHtcbiAgICAgICAgICBwYWRkaW5nLXRvcDogNTVweDtcbiAgICAgICAgICBoZWlnaHQ6IDUwMHB4OyB9IH1cbiAgICAgIGJvZHkudHJhY2tpcjUgLnByZWNpc2UtdHJhY2tpbmcgLnByZWNpc2UtdHJhY2tpbmctY29udGVudCAucHJlY2lzZS10cmFja2luZy1jb3B5IHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTAwcHg7IH1cbiAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAgICAgYm9keS50cmFja2lyNSAucHJlY2lzZS10cmFja2luZyAucHJlY2lzZS10cmFja2luZy1jb250ZW50IC5wcmVjaXNlLXRyYWNraW5nLWNvcHkge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgIHdpZHRoOiA1MDBweDtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IGluaXRpYWw7IH0gfVxuICAgICAgICBib2R5LnRyYWNraXI1IC5wcmVjaXNlLXRyYWNraW5nIC5wcmVjaXNlLXRyYWNraW5nLWNvbnRlbnQgLnByZWNpc2UtdHJhY2tpbmctY29weSAuc3BlY3Mge1xuICAgICAgICAgIG1hcmdpbi10b3A6IDMwcHg7IH1cbiAgICAgICAgYm9keS50cmFja2lyNSAucHJlY2lzZS10cmFja2luZyAucHJlY2lzZS10cmFja2luZy1jb250ZW50IC5wcmVjaXNlLXRyYWNraW5nLWNvcHkgLnNwZWMge1xuICAgICAgICAgIG1hcmdpbjogNzBweCBhdXRvOyB9XG4gICAgICAgICAgaHRtbC5pZSBib2R5LnRyYWNraXI1IC5wcmVjaXNlLXRyYWNraW5nIC5wcmVjaXNlLXRyYWNraW5nLWNvbnRlbnQgLnByZWNpc2UtdHJhY2tpbmctY29weSAuc3BlYyB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAtNzBweDsgfVxuICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgICAgICAgYm9keS50cmFja2lyNSAucHJlY2lzZS10cmFja2luZyAucHJlY2lzZS10cmFja2luZy1jb250ZW50IC5wcmVjaXNlLXRyYWNraW5nLWNvcHkgLnNwZWMge1xuICAgICAgICAgICAgICB3aWR0aDogMjUwcHg7XG4gICAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgICBtYXJnaW46IDVweCBhdXRvOyB9IH1cbiAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgICAgIGJvZHkudHJhY2tpcjUgLnByZWNpc2UtdHJhY2tpbmcgLnByZWNpc2UtdHJhY2tpbmctY29udGVudCAucHJlY2lzZS10cmFja2luZy1jb3B5IC5zcGVjIGgyIHtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAyOHB4OyB9IH1cbiAgICAgICAgYm9keS50cmFja2lyNSAucHJlY2lzZS10cmFja2luZyAucHJlY2lzZS10cmFja2luZy1jb250ZW50IC5wcmVjaXNlLXRyYWNraW5nLWNvcHkgLnNwZWMtdGl0bGUge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDBweDsgfVxuICAgICAgICAgIGJvZHkudHJhY2tpcjUgLnByZWNpc2UtdHJhY2tpbmcgLnByZWNpc2UtdHJhY2tpbmctY29udGVudCAucHJlY2lzZS10cmFja2luZy1jb3B5IC5zcGVjLXRpdGxlIH4gcCB7XG4gICAgICAgICAgICBjb2xvcjogI2ZhZTZjZDtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IC01cHg7XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxM3B4O1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogaW5pdGlhbDsgfVxuICAgIGJvZHkudHJhY2tpcjUgLnByZWNpc2UtdHJhY2tpbmcgLnByZWNpc2UtdHJhY2tpbmctaW1hZ2Uge1xuICAgICAgbWF4LXdpZHRoOiBub25lOyB9XG4gICAgICBib2R5LnRyYWNraXI1IC5wcmVjaXNlLXRyYWNraW5nIC5wcmVjaXNlLXRyYWNraW5nLWltYWdlIC50cmFja2lyNS1pbWFnZSB7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgICAgIGJvZHkudHJhY2tpcjUgLnByZWNpc2UtdHJhY2tpbmcgLnByZWNpc2UtdHJhY2tpbmctaW1hZ2UgLnRyYWNraXI1LWltYWdlIHtcbiAgICAgICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IC00MTVweDsgfSB9XG4gICAgICAgIGJvZHkudHJhY2tpcjUgLnByZWNpc2UtdHJhY2tpbmcgLnByZWNpc2UtdHJhY2tpbmctaW1hZ2UgLnRyYWNraXI1LWltYWdlIGltZyB7XG4gICAgICAgICAgd2lkdGg6IDMwMHB4O1xuICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICBtYXJnaW4tbGVmdDogLTEyMHB4OyB9XG4gICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAgICAgICBib2R5LnRyYWNraXI1IC5wcmVjaXNlLXRyYWNraW5nIC5wcmVjaXNlLXRyYWNraW5nLWltYWdlIC50cmFja2lyNS1pbWFnZSBpbWcge1xuICAgICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMTUwcHg7XG4gICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgd2lkdGg6IDUwMHB4OyB9IH1cbiAgYm9keS50cmFja2lyNSBkaXYuZGVzaWduZWQtZm9yLWdhbWVycyB7XG4gICAgcGFkZGluZzogMTVweCAwO1xuICAgIGJhY2tncm91bmQ6IGJsYWNrO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byB0b3AsICM0YTRhNGEgMCUsICMxNjE2MTYgMTAwJSk7IH1cbiAgICBib2R5LnRyYWNraXI1IGRpdi5kZXNpZ25lZC1mb3ItZ2FtZXJzIC5kZXNpZ25lZC1mb3ItZ2FtZXJzLWNvbnRlbnQgcCB7XG4gICAgICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpOyB9XG4gICAgYm9keS50cmFja2lyNSBkaXYuZGVzaWduZWQtZm9yLWdhbWVycyAuZGVzaWduZWQtZm9yLWdhbWVycy1jb250ZW50IGltZyB7XG4gICAgICBtYXJnaW46IDI1cHggMCA1NXB4OyB9XG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgYm9keS50cmFja2lyNSBkaXYuZGVzaWduZWQtZm9yLWdhbWVycyAuZGVzaWduZWQtZm9yLWdhbWVycy1jb250ZW50IGltZyB7XG4gICAgICAgICAgd2lkdGg6IDgzLjA1MDg1JTtcbiAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEuNjk0OTIlO1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtNDIuMzcyODglO1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IC0xNXB4OyB9IH1cbiAgICBib2R5LnRyYWNraXI1IGRpdi5kZXNpZ25lZC1mb3ItZ2FtZXJzIC5kZXNpZ25lZC1mb3ItZ2FtZXJzLWNvbnRlbnQgLmRlc2lnbmVkLWZvci1nYW1lcnMtY29weSB7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgICBib2R5LnRyYWNraXI1IGRpdi5kZXNpZ25lZC1mb3ItZ2FtZXJzIC5kZXNpZ25lZC1mb3ItZ2FtZXJzLWNvbnRlbnQgLmRlc2lnbmVkLWZvci1nYW1lcnMtY29weSB7XG4gICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICB3aWR0aDogNDkuMTUyNTQlO1xuICAgICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7IH0gfVxuICBib2R5LnRyYWNraXI1IHNlY3Rpb24uZnVsbHktYWRqdXN0YWJsZSB7XG4gICAgcGFkZGluZy1ib3R0b206IDQwcHg7IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgIGJvZHkudHJhY2tpcjUgc2VjdGlvbi5mdWxseS1hZGp1c3RhYmxlIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDgwcHg7XG4gICAgICAgIGhlaWdodDogNTAwcHg7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAwcHg7IH0gfVxuICAgIGJvZHkudHJhY2tpcjUgc2VjdGlvbi5mdWxseS1hZGp1c3RhYmxlIGltZy50aXItaW1hZ2Uge1xuICAgICAgbWFyZ2luLXRvcDogNDBweDtcbiAgICAgIHdpZHRoOiAyMjBweDsgfVxuICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAgIGJvZHkudHJhY2tpcjUgc2VjdGlvbi5mdWxseS1hZGp1c3RhYmxlIGltZy50aXItaW1hZ2Uge1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICB3aWR0aDogNDIwcHg7XG4gICAgICAgICAgbWFyZ2luLXRvcDogLTYwcHg7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IC0xNTBweDtcbiAgICAgICAgICBsZWZ0OiA2MCU7IH0gfVxuICAgIGJvZHkudHJhY2tpcjUgc2VjdGlvbi5mdWxseS1hZGp1c3RhYmxlIGRpdi5mdWxseS1hZGp1c3RhYmxlLWNvcHkge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgYm9keS50cmFja2lyNSBzZWN0aW9uLmZ1bGx5LWFkanVzdGFibGUgZGl2LmZ1bGx5LWFkanVzdGFibGUtY29weSB7XG4gICAgICAgICAgd2lkdGg6IDU3LjYyNzEyJTtcbiAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEuNjk0OTIlO1xuICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7IH0gfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAgIGJvZHkudHJhY2tpcjUgc2VjdGlvbi5mdWxseS1hZGp1c3RhYmxlIGRpdi5mdWxseS1hZGp1c3RhYmxlLWNvcHkgcCB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogLTIwcHg7IH0gfVxuICBib2R5LnRyYWNraXI1IC50ZWNoLXNwZWNzIHtcbiAgICBwYWRkaW5nLXRvcDogMzBweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMzBweDtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuMSk7IH1cbiAgICBib2R5LnRyYWNraXI1IC50ZWNoLXNwZWNzIC50ZWNoLXNwZWNzLWNvbnRlbnQgaDIge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICBib2R5LnRyYWNraXI1IC50ZWNoLXNwZWNzIC50ZWNoLXNwZWNzLWNvbnRlbnQgLnRlY2gtc3BlY3MtaW1hZ2VzIHtcbiAgICAgICAgd2lkdGg6IDMyLjIwMzM5JTtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMS42OTQ5MiU7IH0gfVxuICAgIGJvZHkudHJhY2tpcjUgLnRlY2gtc3BlY3MgLnRlY2gtc3BlY3MtY29udGVudCAudGVjaC1zcGVjcy1pbWFnZXMgZmlndXJlIHtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAgIGJvZHkudHJhY2tpcjUgLnRlY2gtc3BlY3MgLnRlY2gtc3BlY3MtY29udGVudCAudGVjaC1zcGVjcy1pbWFnZXMgZmlndXJlIHtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogLTUwcHg7IH0gfVxuICAgICAgYm9keS50cmFja2lyNSAudGVjaC1zcGVjcyAudGVjaC1zcGVjcy1jb250ZW50IC50ZWNoLXNwZWNzLWltYWdlcyBmaWd1cmU6Zmlyc3QtY2hpbGQge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA4MHB4OyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICBib2R5LnRyYWNraXI1IC50ZWNoLXNwZWNzIC50ZWNoLXNwZWNzLWNvbnRlbnQgLnRlY2gtc3BlY3MtaW1hZ2VzIGltZyB7XG4gICAgICAgIHdpZHRoOiAyMDBweDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC0xMDBweDtcbiAgICAgICAgbWF4LXdpZHRoOiB1bnNldDtcbiAgICAgICAgcG9zaXRpb246IHN0aWNreTtcbiAgICAgICAgbGVmdDogNTAlOyB9IH1cbiAgICBib2R5LnRyYWNraXI1IC50ZWNoLXNwZWNzIC50ZWNoLXNwZWNzLWNvbnRlbnQgLnRlY2gtc3BlY3MtaW1hZ2VzIGZpZ2NhcHRpb24ge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgZm9udC1zaXplOiAxM3B4OyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICBib2R5LnRyYWNraXI1IC50ZWNoLXNwZWNzIC50ZWNoLXNwZWNzLWNvbnRlbnQgLnRlY2gtc3BlY3MtY29weSB7XG4gICAgICAgIHdpZHRoOiA2Ni4xMDE2OSU7XG4gICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwOyB9IH1cbiAgICBib2R5LnRyYWNraXI1IC50ZWNoLXNwZWNzIC50ZWNoLXNwZWNzLWNvbnRlbnQgLnRlY2gtc3BlY3MtY29weSAuc3BlY3Mge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIG1hcmdpbi1yaWdodDogMS42OTQ5MiU7IH1cbiAgICAgIGJvZHkudHJhY2tpcjUgLnRlY2gtc3BlY3MgLnRlY2gtc3BlY3MtY29udGVudCAudGVjaC1zcGVjcy1jb3B5IC5zcGVjcyBkaXYge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMS42OTQ5MiU7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IC0yM3B4OyB9XG4gICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgICAgIGJvZHkudHJhY2tpcjUgLnRlY2gtc3BlY3MgLnRlY2gtc3BlY3MtY29udGVudCAudGVjaC1zcGVjcy1jb3B5IC5zcGVjcyBkaXYge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogLTE1cHg7IH0gfVxuICAgICAgYm9keS50cmFja2lyNSAudGVjaC1zcGVjcyAudGVjaC1zcGVjcy1jb250ZW50IC50ZWNoLXNwZWNzLWNvcHkgLnNwZWNzIHA6Zmlyc3QtY2hpbGQge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAtMTBweDtcbiAgICAgICAgbWFyZ2luLXRvcDogMjBweDsgfVxuICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgICBib2R5LnRyYWNraXI1IC50ZWNoLXNwZWNzIC50ZWNoLXNwZWNzLWNvbnRlbnQgLnRlY2gtc3BlY3MtY29weSAuc3BlY3MgcDpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxNHB4O1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMTRweDtcbiAgICAgICAgICAgIHdpZHRoOiA0OS4xNTI1NCU7XG4gICAgICAgICAgICBmbG9hdDogbGVmdDsgfVxuICAgICAgICAgICAgYm9keS50cmFja2lyNSAudGVjaC1zcGVjcyAudGVjaC1zcGVjcy1jb250ZW50IC50ZWNoLXNwZWNzLWNvcHkgLnNwZWNzIHA6Zmlyc3QtY2hpbGQ6bnRoLWNoaWxkKDJuICsgMSkge1xuICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAtMTAwJTtcbiAgICAgICAgICAgICAgY2xlYXI6IGJvdGg7XG4gICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwOyB9XG4gICAgICAgICAgICBib2R5LnRyYWNraXI1IC50ZWNoLXNwZWNzIC50ZWNoLXNwZWNzLWNvbnRlbnQgLnRlY2gtc3BlY3MtY29weSAuc3BlY3MgcDpmaXJzdC1jaGlsZDpudGgtY2hpbGQoMm4gKyAyKSB7XG4gICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiA1MC44NDc0NiU7XG4gICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogLTEwMCU7XG4gICAgICAgICAgICAgIGNsZWFyOiBub25lOyB9IH1cbiAgICAgIGJvZHkudHJhY2tpcjUgLnRlY2gtc3BlY3MgLnRlY2gtc3BlY3MtY29udGVudCAudGVjaC1zcGVjcy1jb3B5IC5zcGVjcyBwOmxhc3QtY2hpbGQge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgbWFyZ2luLXRvcDogMTBweDsgfVxuICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgICBib2R5LnRyYWNraXI1IC50ZWNoLXNwZWNzIC50ZWNoLXNwZWNzLWNvbnRlbnQgLnRlY2gtc3BlY3MtY29weSAuc3BlY3MgcDpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDEycHg7XG4gICAgICAgICAgICB3aWR0aDogNDkuMTUyNTQlO1xuICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7IH1cbiAgICAgICAgICAgIGJvZHkudHJhY2tpcjUgLnRlY2gtc3BlY3MgLnRlY2gtc3BlY3MtY29udGVudCAudGVjaC1zcGVjcy1jb3B5IC5zcGVjcyBwOmxhc3QtY2hpbGQ6bnRoLWNoaWxkKDJuICsgMSkge1xuICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAtMTAwJTtcbiAgICAgICAgICAgICAgY2xlYXI6IGJvdGg7XG4gICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwOyB9XG4gICAgICAgICAgICBib2R5LnRyYWNraXI1IC50ZWNoLXNwZWNzIC50ZWNoLXNwZWNzLWNvbnRlbnQgLnRlY2gtc3BlY3MtY29weSAuc3BlY3MgcDpsYXN0LWNoaWxkOm50aC1jaGlsZCgybiArIDIpIHtcbiAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDUwLjg0NzQ2JTtcbiAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAtMTAwJTtcbiAgICAgICAgICAgICAgY2xlYXI6IG5vbmU7IH0gfVxuICAgIGJvZHkudHJhY2tpcjUgLnRlY2gtc3BlY3MgLnRlY2gtc3BlY3MtY29udGVudCAudGVjaC1zcGVjcy1jb3B5IC5tb3JlLXNwZWNzIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDEuNjk0OTIlO1xuICAgICAgbWFyZ2luLXRvcDogMzBweDsgfVxuICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAgIGJvZHkudHJhY2tpcjUgLnRlY2gtc3BlY3MgLnRlY2gtc3BlY3MtY29udGVudCAudGVjaC1zcGVjcy1jb3B5IC5tb3JlLXNwZWNzIC5pbi1ib3gsXG4gICAgICAgIGJvZHkudHJhY2tpcjUgLnRlY2gtc3BlY3MgLnRlY2gtc3BlY3MtY29udGVudCAudGVjaC1zcGVjcy1jb3B5IC5tb3JlLXNwZWNzIC5zeXMtcmVxdWlyZW1lbnRzIHtcbiAgICAgICAgICB3aWR0aDogNDkuMTUyNTQlO1xuICAgICAgICAgIGZsb2F0OiBsZWZ0OyB9XG4gICAgICAgICAgYm9keS50cmFja2lyNSAudGVjaC1zcGVjcyAudGVjaC1zcGVjcy1jb250ZW50IC50ZWNoLXNwZWNzLWNvcHkgLm1vcmUtc3BlY3MgLmluLWJveDpudGgtY2hpbGQoMm4gKyAxKSxcbiAgICAgICAgICBib2R5LnRyYWNraXI1IC50ZWNoLXNwZWNzIC50ZWNoLXNwZWNzLWNvbnRlbnQgLnRlY2gtc3BlY3MtY29weSAubW9yZS1zcGVjcyAuc3lzLXJlcXVpcmVtZW50czpudGgtY2hpbGQoMm4gKyAxKSB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogLTEwMCU7XG4gICAgICAgICAgICBjbGVhcjogYm90aDtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwOyB9XG4gICAgICAgICAgYm9keS50cmFja2lyNSAudGVjaC1zcGVjcyAudGVjaC1zcGVjcy1jb250ZW50IC50ZWNoLXNwZWNzLWNvcHkgLm1vcmUtc3BlY3MgLmluLWJveDpudGgtY2hpbGQoMm4gKyAyKSxcbiAgICAgICAgICBib2R5LnRyYWNraXI1IC50ZWNoLXNwZWNzIC50ZWNoLXNwZWNzLWNvbnRlbnQgLnRlY2gtc3BlY3MtY29weSAubW9yZS1zcGVjcyAuc3lzLXJlcXVpcmVtZW50czpudGgtY2hpbGQoMm4gKyAyKSB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogNTAuODQ3NDYlO1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAtMTAwJTtcbiAgICAgICAgICAgIGNsZWFyOiBub25lOyB9IH1cbiAgICAgIGJvZHkudHJhY2tpcjUgLnRlY2gtc3BlY3MgLnRlY2gtc3BlY3MtY29udGVudCAudGVjaC1zcGVjcy1jb3B5IC5tb3JlLXNwZWNzIC5pbi1ib3ggcCxcbiAgICAgIGJvZHkudHJhY2tpcjUgLnRlY2gtc3BlY3MgLnRlY2gtc3BlY3MtY29udGVudCAudGVjaC1zcGVjcy1jb3B5IC5tb3JlLXNwZWNzIC5zeXMtcmVxdWlyZW1lbnRzIHAge1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgY29sb3I6IHdoaXRlOyB9XG4gICAgICBib2R5LnRyYWNraXI1IC50ZWNoLXNwZWNzIC50ZWNoLXNwZWNzLWNvbnRlbnQgLnRlY2gtc3BlY3MtY29weSAubW9yZS1zcGVjcyAuaW4tYm94IHVsLFxuICAgICAgYm9keS50cmFja2lyNSAudGVjaC1zcGVjcyAudGVjaC1zcGVjcy1jb250ZW50IC50ZWNoLXNwZWNzLWNvcHkgLm1vcmUtc3BlY3MgLnN5cy1yZXF1aXJlbWVudHMgdWwge1xuICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgbGlzdC1zdHlsZTogbm9uZTsgfVxuICAgICAgICBib2R5LnRyYWNraXI1IC50ZWNoLXNwZWNzIC50ZWNoLXNwZWNzLWNvbnRlbnQgLnRlY2gtc3BlY3MtY29weSAubW9yZS1zcGVjcyAuaW4tYm94IHVsIGxpLFxuICAgICAgICBib2R5LnRyYWNraXI1IC50ZWNoLXNwZWNzIC50ZWNoLXNwZWNzLWNvbnRlbnQgLnRlY2gtc3BlY3MtY29weSAubW9yZS1zcGVjcyAuc3lzLXJlcXVpcmVtZW50cyB1bCBsaSB7XG4gICAgICAgICAgZGlzcGxheTogdGFibGUtcm93OyB9XG4gICAgICAgICAgYm9keS50cmFja2lyNSAudGVjaC1zcGVjcyAudGVjaC1zcGVjcy1jb250ZW50IC50ZWNoLXNwZWNzLWNvcHkgLm1vcmUtc3BlY3MgLmluLWJveCB1bCBsaTpiZWZvcmUsXG4gICAgICAgICAgYm9keS50cmFja2lyNSAudGVjaC1zcGVjcyAudGVjaC1zcGVjcy1jb250ZW50IC50ZWNoLXNwZWNzLWNvcHkgLm1vcmUtc3BlY3MgLnN5cy1yZXF1aXJlbWVudHMgdWwgbGk6YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwi4oCiXCI7XG4gICAgICAgICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMC40ZW07IH1cbiAgICAgICAgYm9keS50cmFja2lyNSAudGVjaC1zcGVjcyAudGVjaC1zcGVjcy1jb250ZW50IC50ZWNoLXNwZWNzLWNvcHkgLm1vcmUtc3BlY3MgLmluLWJveCB1bCBsaSxcbiAgICAgICAgYm9keS50cmFja2lyNSAudGVjaC1zcGVjcyAudGVjaC1zcGVjcy1jb250ZW50IC50ZWNoLXNwZWNzLWNvcHkgLm1vcmUtc3BlY3MgLnN5cy1yZXF1aXJlbWVudHMgdWwgbGkge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDhweDsgfVxuICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgICAgICAgYm9keS50cmFja2lyNSAudGVjaC1zcGVjcyAudGVjaC1zcGVjcy1jb250ZW50IC50ZWNoLXNwZWNzLWNvcHkgLm1vcmUtc3BlY3MgLmluLWJveCB1bCBsaSxcbiAgICAgICAgICAgIGJvZHkudHJhY2tpcjUgLnRlY2gtc3BlY3MgLnRlY2gtc3BlY3MtY29udGVudCAudGVjaC1zcGVjcy1jb3B5IC5tb3JlLXNwZWNzIC5zeXMtcmVxdWlyZW1lbnRzIHVsIGxpIHtcbiAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTJweDsgfSB9XG4gICAgICAgICAgYm9keS50cmFja2lyNSAudGVjaC1zcGVjcyAudGVjaC1zcGVjcy1jb250ZW50IC50ZWNoLXNwZWNzLWNvcHkgLm1vcmUtc3BlY3MgLmluLWJveCB1bCBsaTo6YmVmb3JlLFxuICAgICAgICAgIGJvZHkudHJhY2tpcjUgLnRlY2gtc3BlY3MgLnRlY2gtc3BlY3MtY29udGVudCAudGVjaC1zcGVjcy1jb3B5IC5tb3JlLXNwZWNzIC5zeXMtcmVxdWlyZW1lbnRzIHVsIGxpOjpiZWZvcmUge1xuICAgICAgICAgICAgY29udGVudDogbm9uZTsgfVxuICBib2R5LnRyYWNraXI1IFtpZD1cImZlYXR1cmVkLXByb2R1Y3RzXCJdIHtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDsgfVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgYm9keS5hY2Nlc3NvcmllcyBtYWluIGgxIHtcbiAgICBmb250LXNpemU6IDM2cHg7IH0gfVxuXG5ib2R5LmFjY2Vzc29yaWVzIG1haW4gc2VjdGlvbiB7XG4gIG1heC13aWR0aDogMjkwcHg7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87IH1cbiAgYm9keS5hY2Nlc3NvcmllcyBtYWluIHNlY3Rpb246YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIGJvZHkuYWNjZXNzb3JpZXMgbWFpbiBzZWN0aW9uIHtcbiAgICAgIG1heC13aWR0aDogNzAycHg7XG4gICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgIG1hcmdpbi1yaWdodDogYXV0bzsgfVxuICAgICAgYm9keS5hY2Nlc3NvcmllcyBtYWluIHNlY3Rpb246YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcIiBcIjtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGNsZWFyOiBib3RoOyB9IH1cblxuYm9keS5hY2Nlc3NvcmllcyBtYWluIHNlY3Rpb24uaW50cm8ge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG1hcmdpbi10b3A6IDM1cHg7IH1cblxuYm9keS5hY2Nlc3NvcmllcyBtYWluIHNlY3Rpb24uZmVhdHVyZWQtaXRlbXMge1xuICBwYWRkaW5nLWJvdHRvbTogNDVweDtcbiAgbWFyZ2luLWJvdHRvbTogNDVweDtcbiAgYm9yZGVyLWJvdHRvbTogc29saWQgMXB4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTsgfVxuICBib2R5LmFjY2Vzc29yaWVzIG1haW4gc2VjdGlvbi5mZWF0dXJlZC1pdGVtcyAuZmVhdHVyZWQtaXRlbSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgbWFyZ2luLXJpZ2h0OiAwOyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICBib2R5LmFjY2Vzc29yaWVzIG1haW4gc2VjdGlvbi5mZWF0dXJlZC1pdGVtcyAuZmVhdHVyZWQtaXRlbTpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDY1cHg7IH0gfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgYm9keS5hY2Nlc3NvcmllcyBtYWluIHNlY3Rpb24uZmVhdHVyZWQtaXRlbXMgLmZlYXR1cmVkLWl0ZW1baWQ9XCJ0cmFja2NsaXBwcm9cIl0gZmlndXJlIHtcbiAgICAgICAgbWFyZ2luOiAwcHg7XG4gICAgICAgIHdpZHRoOiA0OS4xNTI1NCU7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDEuNjk0OTIlOyB9IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgIGJvZHkuYWNjZXNzb3JpZXMgbWFpbiBzZWN0aW9uLmZlYXR1cmVkLWl0ZW1zIC5mZWF0dXJlZC1pdGVtW2lkPVwidHJhY2tjbGlwcHJvXCJdIC5jb3B5IHtcbiAgICAgICAgd2lkdGg6IDQ5LjE1MjU0JTtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiA1MC44NDc0NiU7XG4gICAgICAgIGZsb2F0OiBub25lOyB9IH1cbiAgICBib2R5LmFjY2Vzc29yaWVzIG1haW4gc2VjdGlvbi5mZWF0dXJlZC1pdGVtcyAuZmVhdHVyZWQtaXRlbVtpZD1cInRyYWNrY2xpcFwiXSB7XG4gICAgICBtYXJnaW4tdG9wOiAxMDBweDsgfVxuICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAgIGJvZHkuYWNjZXNzb3JpZXMgbWFpbiBzZWN0aW9uLmZlYXR1cmVkLWl0ZW1zIC5mZWF0dXJlZC1pdGVtW2lkPVwidHJhY2tjbGlwXCJdIGZpZ3VyZSB7XG4gICAgICAgICAgd2lkdGg6IDQ5LjE1MjU0JTtcbiAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEuNjk0OTIlO1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiA1MC44NDc0NiU7IH0gfVxuICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAgIGJvZHkuYWNjZXNzb3JpZXMgbWFpbiBzZWN0aW9uLmZlYXR1cmVkLWl0ZW1zIC5mZWF0dXJlZC1pdGVtW2lkPVwidHJhY2tjbGlwXCJdIC5jb3B5IHtcbiAgICAgICAgICB3aWR0aDogNDkuMTUyNTQlO1xuICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogMS42OTQ5MiU7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IC0xMDEuNjk0OTIlOyB9IH1cbiAgICBib2R5LmFjY2Vzc29yaWVzIG1haW4gc2VjdGlvbi5mZWF0dXJlZC1pdGVtcyAuZmVhdHVyZWQtaXRlbSBmaWd1cmUge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgICAgYm9keS5hY2Nlc3NvcmllcyBtYWluIHNlY3Rpb24uZmVhdHVyZWQtaXRlbXMgLmZlYXR1cmVkLWl0ZW0gZmlndXJlIGltZyB7XG4gICAgICAgICAgd2lkdGg6IDI5MHB4O1xuICAgICAgICAgIG1heC13aWR0aDogaW5pdGlhbDtcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtMjEwcHg7IH0gfVxuICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAgIGJvZHkuYWNjZXNzb3JpZXMgbWFpbiBzZWN0aW9uLmZlYXR1cmVkLWl0ZW1zIC5mZWF0dXJlZC1pdGVtIGZpZ3VyZSBpbWcge1xuICAgICAgICAgIHdpZHRoOiA0MDBweDsgfSB9XG4gICAgYm9keS5hY2Nlc3NvcmllcyBtYWluIHNlY3Rpb24uZmVhdHVyZWQtaXRlbXMgLmZlYXR1cmVkLWl0ZW0gZGl2LmNvcHkge1xuICAgICAgbWFyZ2luLXRvcDogMzVweDsgfVxuICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAgIGJvZHkuYWNjZXNzb3JpZXMgbWFpbiBzZWN0aW9uLmZlYXR1cmVkLWl0ZW1zIC5mZWF0dXJlZC1pdGVtIGRpdi5jb3B5IHtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxNXB4OyB9IH1cbiAgICAgIGJvZHkuYWNjZXNzb3JpZXMgbWFpbiBzZWN0aW9uLmZlYXR1cmVkLWl0ZW1zIC5mZWF0dXJlZC1pdGVtIGRpdi5jb3B5IGgzIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lOyB9XG4gICAgICBib2R5LmFjY2Vzc29yaWVzIG1haW4gc2VjdGlvbi5mZWF0dXJlZC1pdGVtcyAuZmVhdHVyZWQtaXRlbSBkaXYuY29weSBwLnByaWNlIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMzVweDtcbiAgICAgICAgZGlzcGxheTogaW5saW5lO1xuICAgICAgICBtYXJnaW4tbGVmdDogMjBweDsgfVxuICAgICAgYm9keS5hY2Nlc3NvcmllcyBtYWluIHNlY3Rpb24uZmVhdHVyZWQtaXRlbXMgLmZlYXR1cmVkLWl0ZW0gZGl2LmNvcHkgdWwge1xuICAgICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgbGlzdC1zdHlsZTogbm9uZTsgfVxuICAgICAgICBib2R5LmFjY2Vzc29yaWVzIG1haW4gc2VjdGlvbi5mZWF0dXJlZC1pdGVtcyAuZmVhdHVyZWQtaXRlbSBkaXYuY29weSB1bCBsaSB7XG4gICAgICAgICAgZGlzcGxheTogdGFibGUtcm93OyB9XG4gICAgICAgICAgYm9keS5hY2Nlc3NvcmllcyBtYWluIHNlY3Rpb24uZmVhdHVyZWQtaXRlbXMgLmZlYXR1cmVkLWl0ZW0gZGl2LmNvcHkgdWwgbGk6YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwi4oCiXCI7XG4gICAgICAgICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMC40ZW07IH1cbiAgICBib2R5LmFjY2Vzc29yaWVzIG1haW4gc2VjdGlvbi5mZWF0dXJlZC1pdGVtcyAuZmVhdHVyZWQtaXRlbSBmb3JtIHtcbiAgICAgIG1hcmdpbi10b3A6IDU1cHg7IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgICBib2R5LmFjY2Vzc29yaWVzIG1haW4gc2VjdGlvbi5mZWF0dXJlZC1pdGVtcyAuZmVhdHVyZWQtaXRlbSBmb3JtIHtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH0gfVxuXG5ib2R5LmFjY2Vzc29yaWVzIG1haW4gc2VjdGlvbi5pdGVtcyB7XG4gIG1hcmdpbi1ib3R0b206IDU1cHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICBib2R5LmFjY2Vzc29yaWVzIG1haW4gc2VjdGlvbi5pdGVtcyB7XG4gICAgICBtYXJnaW4tYm90dG9tOiA3NXB4OyB9IH1cbiAgYm9keS5hY2Nlc3NvcmllcyBtYWluIHNlY3Rpb24uaXRlbXMgLml0ZW0ge1xuICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gICAgbWFyZ2luLXRvcDogMTVweDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgIGJvZHkuYWNjZXNzb3JpZXMgbWFpbiBzZWN0aW9uLml0ZW1zIC5pdGVtIHtcbiAgICAgICAgd2lkdGg6IDMyLjIwMzM5JTtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMS42OTQ5MiU7IH1cbiAgICAgICAgYm9keS5hY2Nlc3NvcmllcyBtYWluIHNlY3Rpb24uaXRlbXMgLml0ZW06bnRoLWNoaWxkKDNuKSB7XG4gICAgICAgICAgd2lkdGg6IDMyLjIwMzM5JTtcbiAgICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwOyB9IH1cbiAgICBib2R5LmFjY2Vzc29yaWVzIG1haW4gc2VjdGlvbi5pdGVtcyAuaXRlbSBmaWd1cmUge1xuICAgICAgaGVpZ2h0OiAxNTBweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxNTBweDsgfVxuICAgICAgYm9keS5hY2Nlc3NvcmllcyBtYWluIHNlY3Rpb24uaXRlbXMgLml0ZW0gZmlndXJlIGltZyB7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgIHdpZHRoOiAxNTBweDsgfVxuICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgICBib2R5LmFjY2Vzc29yaWVzIG1haW4gc2VjdGlvbi5pdGVtcyAuaXRlbSBmaWd1cmUgaW1nIHtcbiAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBib3R0b207IH0gfVxuICAgIGJvZHkuYWNjZXNzb3JpZXMgbWFpbiBzZWN0aW9uLml0ZW1zIC5pdGVtIGgzIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDVweDsgfVxuICAgIGJvZHkuYWNjZXNzb3JpZXMgbWFpbiBzZWN0aW9uLml0ZW1zIC5pdGVtIHAucHJpY2Uge1xuICAgICAgbWFyZ2luLXRvcDogNXB4OyB9XG4gICAgYm9keS5hY2Nlc3NvcmllcyBtYWluIHNlY3Rpb24uaXRlbXMgLml0ZW1baWQ9XCJ0aXI1LWJhc2VcIl0gZmlndXJlIHtcbiAgICAgIGxpbmUtaGVpZ2h0OiA5OHB4O1xuICAgICAgaGVpZ2h0OiA5OHB4OyB9XG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgYm9keS5hY2Nlc3NvcmllcyBtYWluIHNlY3Rpb24uaXRlbXMgLml0ZW1baWQ9XCJ0aXI1LWJhc2VcIl0gZmlndXJlIHtcbiAgICAgICAgICBoZWlnaHQ6IDE1MHB4O1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxNTBweDsgfSB9XG4gICAgICBib2R5LmFjY2Vzc29yaWVzIG1haW4gc2VjdGlvbi5pdGVtcyAuaXRlbVtpZD1cInRpcjUtYmFzZVwiXSBmaWd1cmUgaW1nIHtcbiAgICAgICAgbWF4LXdpZHRoOiBpbml0aWFsO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgd2lkdGg6IDIzMHB4O1xuICAgICAgICBtYXJnaW4tbGVmdDogLTIwOHB4OyB9XG4gICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgICAgIGJvZHkuYWNjZXNzb3JpZXMgbWFpbiBzZWN0aW9uLml0ZW1zIC5pdGVtW2lkPVwidGlyNS1iYXNlXCJdIGZpZ3VyZSBpbWcge1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC0xNDRweDtcbiAgICAgICAgICAgIHdpZHRoOiAyMzBweDsgfSB9XG5cbmJvZHkuZ2FtZXMtbGlzdCAuaW50cm8ge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG1hcmdpbi10b3A6IDM1cHg7XG4gIG1hcmdpbi1ib3R0b206IDM1cHg7IH1cblxuYm9keS5nYW1lcy1saXN0IC5maWx0ZXItYW5kLXNvcnQge1xuICBtYXgtd2lkdGg6IDI5MHB4O1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgYm9keS5nYW1lcy1saXN0IC5maWx0ZXItYW5kLXNvcnQ6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIGJvZHkuZ2FtZXMtbGlzdCAuZmlsdGVyLWFuZC1zb3J0IHtcbiAgICAgIG1heC13aWR0aDogNzAycHg7XG4gICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgIG1hcmdpbi1yaWdodDogYXV0bzsgfVxuICAgICAgYm9keS5nYW1lcy1saXN0IC5maWx0ZXItYW5kLXNvcnQ6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcIiBcIjtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGNsZWFyOiBib3RoOyB9IH1cbiAgYm9keS5nYW1lcy1saXN0IC5maWx0ZXItYW5kLXNvcnQgbGFiZWwubGFiZWwtZm9yLWdyb3VwIHtcbiAgICBtYXJnaW4tdG9wOiA0NXB4O1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cbiAgYm9keS5nYW1lcy1saXN0IC5maWx0ZXItYW5kLXNvcnQgZGl2LnJhZGlvLXNlY3Rpb24gaW5wdXRbdHlwZT1cInJhZGlvXCJdIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIGJvZHkuZ2FtZXMtbGlzdCAuZmlsdGVyLWFuZC1zb3J0IGRpdi5yYWRpby1zZWN0aW9uIGlucHV0W3R5cGU9XCJyYWRpb1wiXTpjaGVja2VkICsgbGFiZWwge1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44KTtcbiAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjkpO1xuICAgIGNvbG9yOiAjOTY1QjAwOyB9XG4gIGJvZHkuZ2FtZXMtbGlzdCAuZmlsdGVyLWFuZC1zb3J0IGRpdi5yYWRpby1zZWN0aW9uIGxhYmVsIHtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLW91dDtcbiAgICBwYWRkaW5nOiAxMHB4IDIycHg7XG4gICAgYm9yZGVyOiBzb2xpZCAxcHggI2ZhZTZjZDtcbiAgICBib3JkZXItcmFkaXVzOiA0MHB4O1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgd2lkdGg6IDkwcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMTVweDsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgYm9keS5nYW1lcy1saXN0IC5maWx0ZXItYW5kLXNvcnQgZGl2LnJhZGlvLXNlY3Rpb24gbGFiZWwge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiBub25lOyB9IH1cbiAgICBib2R5LmdhbWVzLWxpc3QgLmZpbHRlci1hbmQtc29ydCBkaXYucmFkaW8tc2VjdGlvbiBsYWJlbDpmaXJzdC1vZi10eXBlIHtcbiAgICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwcHg7XG4gICAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMHB4O1xuICAgICAgYm9yZGVyLXJpZ2h0OiBub25lO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAtMnB4OyB9XG4gICAgYm9keS5nYW1lcy1saXN0IC5maWx0ZXItYW5kLXNvcnQgZGl2LnJhZGlvLXNlY3Rpb24gbGFiZWw6bnRoLW9mLXR5cGUoMikge1xuICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtM3B4O1xuICAgICAgbWFyZ2luLXJpZ2h0OiAtM3B4OyB9XG4gICAgYm9keS5nYW1lcy1saXN0IC5maWx0ZXItYW5kLXNvcnQgZGl2LnJhZGlvLXNlY3Rpb24gbGFiZWw6bGFzdC1vZi10eXBlIHtcbiAgICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDBweDtcbiAgICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDBweDtcbiAgICAgIGJvcmRlci1sZWZ0OiBub25lO1xuICAgICAgbWFyZ2luLWxlZnQ6IC0ycHg7IH1cbiAgICBib2R5LmdhbWVzLWxpc3QgLmZpbHRlci1hbmQtc29ydCBkaXYucmFkaW8tc2VjdGlvbiBsYWJlbDpob3ZlciB7XG4gICAgICBjb2xvcjogd2hpdGU7XG4gICAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuMSk7IH1cblxuYm9keS5nYW1lcy1saXN0IC5nYW1lcy10YWJsZSB7XG4gIG1hcmdpbi1ib3R0b206IDcwcHg7IH1cbiAgYm9keS5nYW1lcy1saXN0IC5nYW1lcy10YWJsZSAudGFibGUtaGVhZGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBwYWRkaW5nOiAyNXB4IDBweDsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgYm9keS5nYW1lcy1saXN0IC5nYW1lcy10YWJsZSAudGFibGUtaGVhZGVyIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICBib2R5LmdhbWVzLWxpc3QgLmdhbWVzLXRhYmxlIC50YWJsZS1oZWFkZXIuZml4ZWQtaGVhZGVyIHtcbiAgICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgdG9wOiAwcHg7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjQ3LCAxNDYsIDAsIDAuOSk7XG4gICAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgNTAwbXMgZWFzZS1pbi1vdXQ7IH0gfVxuICAgIGJvZHkuZ2FtZXMtbGlzdCAuZ2FtZXMtdGFibGUgLnRhYmxlLWhlYWRlciAuc29ydC1ieS1zZWN0aW9uIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICAgICAgYm9keS5nYW1lcy1saXN0IC5nYW1lcy10YWJsZSAudGFibGUtaGVhZGVyIC5zb3J0LWJ5LXNlY3Rpb24gaW5wdXRbdHlwZT1cInJhZGlvXCJdIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgICAgYm9keS5nYW1lcy1saXN0IC5nYW1lcy10YWJsZSAudGFibGUtaGVhZGVyIC5zb3J0LWJ5LXNlY3Rpb24gbGFiZWwge1xuICAgICAgICBjb2xvcjogI2ZhZTZjZDsgfVxuICAgICAgYm9keS5nYW1lcy1saXN0IC5nYW1lcy10YWJsZSAudGFibGUtaGVhZGVyIC5zb3J0LWJ5LXNlY3Rpb24gbGFiZWw6Zmlyc3Qtb2YtdHlwZSB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMTBweDsgfVxuICAgICAgYm9keS5nYW1lcy1saXN0IC5nYW1lcy10YWJsZSAudGFibGUtaGVhZGVyIC5zb3J0LWJ5LXNlY3Rpb24gbGFiZWw6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHBhZGRpbmc6IDBweCAxMHB4O1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgICAgIHVzZXItc2VsZWN0OiBub25lO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC4xKTsgfVxuICAgICAgYm9keS5nYW1lcy1saXN0IC5nYW1lcy10YWJsZSAudGFibGUtaGVhZGVyIC5zb3J0LWJ5LXNlY3Rpb24gbGFiZWw6bnRoLW9mLXR5cGUoMikge1xuICAgICAgICB3aWR0aDogMTIwcHg7IH1cbiAgICAgIGJvZHkuZ2FtZXMtbGlzdCAuZ2FtZXMtdGFibGUgLnRhYmxlLWhlYWRlciAuc29ydC1ieS1zZWN0aW9uIGxhYmVsOmxhc3Qtb2YtdHlwZSB7XG4gICAgICAgIHdpZHRoOiAxMzVweDsgfVxuICAgICAgYm9keS5nYW1lcy1saXN0IC5nYW1lcy10YWJsZSAudGFibGUtaGVhZGVyIC5zb3J0LWJ5LXNlY3Rpb24gc3Bhbi5pY29uLWRvd24tb3Blbi1iaWcge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIG1hcmdpbi1yaWdodDogLTMwcHg7IH1cbiAgICAgICAgYm9keS5nYW1lcy1saXN0IC5nYW1lcy10YWJsZSAudGFibGUtaGVhZGVyIC5zb3J0LWJ5LXNlY3Rpb24gc3Bhbi5pY29uLWRvd24tb3Blbi1iaWcuZGVzY2VuZGluZyB7XG4gICAgICAgICAgYW5pbWF0aW9uLW5hbWU6IGFuaW1hdGlvblRvRGVzY2VuZGluZztcbiAgICAgICAgICBhbmltYXRpb24tZHVyYXRpb246IDMwMG1zO1xuICAgICAgICAgIGFuaW1hdGlvbi1maWxsLW1vZGU6IGZvcndhcmRzOyB9XG4gICAgICAgIGJvZHkuZ2FtZXMtbGlzdCAuZ2FtZXMtdGFibGUgLnRhYmxlLWhlYWRlciAuc29ydC1ieS1zZWN0aW9uIHNwYW4uaWNvbi1kb3duLW9wZW4tYmlnLmFzY2VuZGluZyB7XG4gICAgICAgICAgYW5pbWF0aW9uLW5hbWU6IGFuaW1hdGlvblRvQXNjZW5kaW5nO1xuICAgICAgICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogMzAwbXM7XG4gICAgICAgICAgYW5pbWF0aW9uLWZpbGwtbW9kZTogZm9yd2FyZHM7IH1cblxuQGtleWZyYW1lcyBhbmltYXRpb25Ub0FzY2VuZGluZyB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZVgoMGRlZyk7IH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGVYKDE4MGRlZyk7IH0gfVxuXG5Aa2V5ZnJhbWVzIGFuaW1hdGlvblRvRGVzY2VuZGluZyB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZVgoMTgwZGVnKTsgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZVgoMGRlZyk7IH0gfVxuICAgIGJvZHkuZ2FtZXMtbGlzdCAuZ2FtZXMtdGFibGUgLnRhYmxlLWhlYWRlciBwIHtcbiAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgIG1hcmdpbi10b3A6IDBweDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDBweDsgfVxuICAgICAgYm9keS5nYW1lcy1saXN0IC5nYW1lcy10YWJsZSAudGFibGUtaGVhZGVyIHAgc3BhbiB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICB3aWR0aDogMzhweDsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgYm9keS5nYW1lcy1saXN0IC5nYW1lcy10YWJsZSAudGFibGUtaGVhZGVyIC50YWJsZS1oZWFkZXItY29udGVudCB7XG4gICAgICAgIG1heC13aWR0aDogMjkwcHg7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87IH1cbiAgICAgICAgYm9keS5nYW1lcy1saXN0IC5nYW1lcy10YWJsZSAudGFibGUtaGVhZGVyIC50YWJsZS1oZWFkZXItY29udGVudDphZnRlciB7XG4gICAgICAgICAgY29udGVudDogXCIgXCI7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgY2xlYXI6IGJvdGg7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIGJvZHkuZ2FtZXMtbGlzdCAuZ2FtZXMtdGFibGUgLnRhYmxlLWhlYWRlciAudGFibGUtaGVhZGVyLWNvbnRlbnQge1xuICAgICAgbWF4LXdpZHRoOiA3MDJweDtcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9XG4gICAgICBib2R5LmdhbWVzLWxpc3QgLmdhbWVzLXRhYmxlIC50YWJsZS1oZWFkZXIgLnRhYmxlLWhlYWRlci1jb250ZW50OmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCIgXCI7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBjbGVhcjogYm90aDsgfSB9XG4gIGJvZHkuZ2FtZXMtbGlzdCAuZ2FtZXMtdGFibGUgdGFibGUge1xuICAgIG1heC13aWR0aDogMjkwcHg7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgYm9keS5nYW1lcy1saXN0IC5nYW1lcy10YWJsZSB0YWJsZTphZnRlciB7XG4gICAgICBjb250ZW50OiBcIiBcIjtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgIGJvZHkuZ2FtZXMtbGlzdCAuZ2FtZXMtdGFibGUgdGFibGUge1xuICAgICAgICBtYXgtd2lkdGg6IDcwMnB4O1xuICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9XG4gICAgICAgIGJvZHkuZ2FtZXMtbGlzdCAuZ2FtZXMtdGFibGUgdGFibGU6YWZ0ZXIge1xuICAgICAgICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIGNsZWFyOiBib3RoOyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgYm9keS5nYW1lcy1saXN0IC5nYW1lcy10YWJsZSAudGFibGUtY29udGFpbmVyLmZpeGVkLWhlYWRlciB7XG4gICAgICBtYXJnaW4tdG9wOiA3M3B4OyB9IH1cbiAgYm9keS5nYW1lcy1saXN0IC5nYW1lcy10YWJsZSB0ciB7XG4gICAgYm9yZGVyLWJvdHRvbTogc29saWQgMXB4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTsgfVxuICAgIGJvZHkuZ2FtZXMtbGlzdCAuZ2FtZXMtdGFibGUgdHIgdGQge1xuICAgICAgcGFkZGluZy10b3A6IDEwcHg7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMTBweDsgfVxuICAgIGJvZHkuZ2FtZXMtbGlzdCAuZ2FtZXMtdGFibGUgdHIgdGQ6Zmlyc3QtY2hpbGQge1xuICAgICAgd2lkdGg6IDQ0MnB4OyB9XG4gICAgYm9keS5nYW1lcy1saXN0IC5nYW1lcy10YWJsZSB0ciB0ZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDE1cHg7IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgICBib2R5LmdhbWVzLWxpc3QgLmdhbWVzLXRhYmxlIHRyIHRkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lOyB9IH1cbiAgYm9keS5nYW1lcy1saXN0IC5nYW1lcy10YWJsZSAuZmlsdGVyIHRyIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIGJvZHkuZ2FtZXMtbGlzdCAuZ2FtZXMtdGFibGUgLmZpbHRlci5mcHMgdHIuZnBzIHtcbiAgICBkaXNwbGF5OiB0YWJsZS1yb3c7IH1cbiAgYm9keS5nYW1lcy1saXN0IC5nYW1lcy10YWJsZSAuZmlsdGVyLmRyaXZpbmcgdHIuZHJpdmluZyB7XG4gICAgZGlzcGxheTogdGFibGUtcm93OyB9XG4gIGJvZHkuZ2FtZXMtbGlzdCAuZ2FtZXMtdGFibGUgLmZpbHRlci5mbGlnaHQgdHIuZmxpZ2h0IHtcbiAgICBkaXNwbGF5OiB0YWJsZS1yb3c7IH1cblxuYm9keS5yZW1vdGUtc3VwcG9ydCBtYWluIHtcbiAgbWF4LXdpZHRoOiAyOTBweDtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgbWFyZ2luLWJvdHRvbTogNDVweDsgfVxuICBib2R5LnJlbW90ZS1zdXBwb3J0IG1haW46YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIGJvZHkucmVtb3RlLXN1cHBvcnQgbWFpbiB7XG4gICAgICBtYXgtd2lkdGg6IDcwMnB4O1xuICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87IH1cbiAgICAgIGJvZHkucmVtb3RlLXN1cHBvcnQgbWFpbjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgY2xlYXI6IGJvdGg7IH0gfVxuICBib2R5LnJlbW90ZS1zdXBwb3J0IG1haW4gc2VjdGlvbiB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICBib2R5LnJlbW90ZS1zdXBwb3J0IG1haW4gc2VjdGlvbi5jb250ZW50IHtcbiAgICAgICAgd2lkdGg6IDY2LjEwMTY5JTtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMS42OTQ5MiU7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAxNi45NDkxNSU7IH0gfVxuICAgIGJvZHkucmVtb3RlLXN1cHBvcnQgbWFpbiBzZWN0aW9uLmNvbnRlbnQgYS5jdGEge1xuICAgICAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1vdXQ7XG4gICAgICBwYWRkaW5nOiAxMHB4IDUycHg7XG4gICAgICBib3JkZXI6IHNvbGlkIDFweCAjZmFlNmNkO1xuICAgICAgYm9yZGVyLXJhZGl1czogNDBweDtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHRvcDogNDVweDsgfVxuICAgICAgYm9keS5yZW1vdGUtc3VwcG9ydCBtYWluIHNlY3Rpb24uY29udGVudCBhLmN0YTpob3ZlciB7XG4gICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjEpOyB9XG5cbmJvZHkucHJvbW8gbWFpbiB7XG4gIG1heC13aWR0aDogMjkwcHg7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1hcmdpbi10b3A6IDI1cHg7IH1cbiAgYm9keS5wcm9tbyBtYWluOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIiBcIjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjbGVhcjogYm90aDsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICBib2R5LnByb21vIG1haW4ge1xuICAgICAgbWF4LXdpZHRoOiA3MDJweDtcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9XG4gICAgICBib2R5LnByb21vIG1haW46YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcIiBcIjtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGNsZWFyOiBib3RoOyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgYm9keS5wcm9tbyBtYWluIGgzLFxuICAgIGJvZHkucHJvbW8gbWFpbiBwIHtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfSB9XG4gIGJvZHkucHJvbW8gbWFpbiB1bCB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgbWFyZ2luLWJvdHRvbTogNDVweDsgfVxuICAgIGJvZHkucHJvbW8gbWFpbiB1bCBsaSB7XG4gICAgICBkaXNwbGF5OiB0YWJsZS1yb3c7IH1cbiAgICAgIGJvZHkucHJvbW8gbWFpbiB1bCBsaTpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiBcIuKAolwiO1xuICAgICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjRlbTsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgYm9keS5wcm9tbyBtYWluIHVsIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMzVweDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDEwMHB4OyB9IH1cbiAgYm9keS5wcm9tbyBtYWluIC5hY3Rpb24tbGluayB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgYm9keS5wcm9tbyBtYWluIC5hY3Rpb24tbGluayBhIHtcbiAgICAgIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2Utb3V0O1xuICAgICAgcGFkZGluZzogMTBweCA1MnB4O1xuICAgICAgYm9yZGVyOiBzb2xpZCAxcHggI2ZhZTZjZDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDQwcHg7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cbiAgICAgIGJvZHkucHJvbW8gbWFpbiAuYWN0aW9uLWxpbmsgYTpob3ZlciB7XG4gICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjEpOyB9XG5cbmJvZHkubWVkaWEgW2lkPVwiY29udGVudFwiXS5ibHVyIHtcbiAgZmlsdGVyOiBibHVyKDVweCk7IH1cblxuYm9keS5tZWRpYSAubW9kYWwge1xuICBkaXNwbGF5OiBub25lO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHotaW5kZXg6IDE7XG4gIHBhZGRpbmctdG9wOiA2MHB4O1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG92ZXJmbG93OiBhdXRvO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBibGFjaztcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjQpO1xuICAvKiBNb2RhbCBDb250ZW50ICovXG4gIC8qIFRoZSBNb2RhbCBDbG9zZSBCdXR0b24gKi8gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICBib2R5Lm1lZGlhIC5tb2RhbCB7XG4gICAgICBwYWRkaW5nLXRvcDogNzVweDsgfSB9XG4gIGJvZHkubWVkaWEgLm1vZGFsIC5tb2RhbC1jb250ZW50IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNzUpO1xuICAgIG1hcmdpbjogYXV0bztcbiAgICBwYWRkaW5nOiAyMHB4O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgYm9keS5tZWRpYSAubW9kYWwgLm1vZGFsLWNvbnRlbnQge1xuICAgICAgICB3aWR0aDogODAlO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAzcHg7XG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgIG1heC13aWR0aDogNjAwcHg7XG4gICAgICAgIGhlaWdodDogYXV0bzsgfSB9XG4gICAgYm9keS5tZWRpYSAubW9kYWwgLm1vZGFsLWNvbnRlbnQgaDMge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDsgfVxuICAgIGJvZHkubWVkaWEgLm1vZGFsIC5tb2RhbC1jb250ZW50IC5kb3dubG9hZCB7XG4gICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDsgfVxuICBib2R5Lm1lZGlhIC5tb2RhbCAuY2xvc2Uge1xuICAgIGNvbG9yOiAjYWFhYWFhO1xuICAgIGZsb2F0OiByaWdodDtcbiAgICBmb250LXNpemU6IDI4cHg7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7IH1cbiAgICBib2R5Lm1lZGlhIC5tb2RhbCAuY2xvc2U6aG92ZXIsIGJvZHkubWVkaWEgLm1vZGFsIC5jbG9zZTpmb2N1cyB7XG4gICAgICBjb2xvcjogI2NjY2NjYztcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjsgfVxuXG5ib2R5Lm1lZGlhIG1haW4ge1xuICBtYXgtd2lkdGg6IDI5MHB4O1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXJnaW4tYm90dG9tOiA0NXB4OyB9XG4gIGJvZHkubWVkaWEgbWFpbjphZnRlciB7XG4gICAgY29udGVudDogXCIgXCI7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgYm9keS5tZWRpYSBtYWluIHtcbiAgICAgIG1heC13aWR0aDogNzAycHg7XG4gICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgIG1hcmdpbi1yaWdodDogYXV0bzsgfVxuICAgICAgYm9keS5tZWRpYSBtYWluOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCIgXCI7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBjbGVhcjogYm90aDsgfSB9XG4gIGJvZHkubWVkaWEgbWFpbiBzZWN0aW9uIHtcbiAgICBtYXJnaW4tYm90dG9tOiA5MHB4O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAgIGJvZHkubWVkaWEgbWFpbiBzZWN0aW9uIHVsIHtcbiAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICBsaXN0LXN0eWxlOiBub25lOyB9XG4gICAgICBib2R5Lm1lZGlhIG1haW4gc2VjdGlvbiB1bCBsaSB7XG4gICAgICAgIGRpc3BsYXk6IHRhYmxlLXJvdzsgfVxuICAgICAgICBib2R5Lm1lZGlhIG1haW4gc2VjdGlvbiB1bCBsaTpiZWZvcmUge1xuICAgICAgICAgIGNvbnRlbnQ6IFwi4oCiXCI7XG4gICAgICAgICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjRlbTsgfVxuICAgIGJvZHkubWVkaWEgbWFpbiBzZWN0aW9uIGEge1xuICAgICAgY3Vyc29yOiBwb2ludGVyOyB9XG4gICAgICBib2R5Lm1lZGlhIG1haW4gc2VjdGlvbiBhLmN0YSB7XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2Utb3V0O1xuICAgICAgICBwYWRkaW5nOiAxMHB4IDUycHg7XG4gICAgICAgIGJvcmRlcjogc29saWQgMXB4ICNmYWU2Y2Q7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDQwcHg7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG4gICAgICAgIGJvZHkubWVkaWEgbWFpbiBzZWN0aW9uIGEuY3RhOmhvdmVyIHtcbiAgICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgICAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjEpOyB9XG4gICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgICAgIGJvZHkubWVkaWEgbWFpbiBzZWN0aW9uIGEuY3RhIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDMwcHg7IH0gfVxuXG5ib2R5Lm1lZGlhIC5pbWFnZS1kb3dubG9hZHMge1xuICBvdmVyZmxvdzogYXV0bzsgfVxuICBib2R5Lm1lZGlhIC5pbWFnZS1kb3dubG9hZHMgYSB7XG4gICAgcGFkZGluZy1ib3R0b206IDMwcHg7IH1cbiAgYm9keS5tZWRpYSAuaW1hZ2UtZG93bmxvYWRzIGltZyB7XG4gICAgcGFkZGluZzogMjBweCAwIDEwcHg7IH1cblxuYm9keS5tZWRpYSBzZWN0aW9uW2lkPVwidHJhY2tpci01XCJdIC5pbWFnZS1kb3dubG9hZHMgLm1vZGFsQnRuIHtcbiAgd2lkdGg6IDQ0LjQ0NDQ0JTtcbiAgZmxvYXQ6IGxlZnQ7IH1cbiAgYm9keS5tZWRpYSBzZWN0aW9uW2lkPVwidHJhY2tpci01XCJdIC5pbWFnZS1kb3dubG9hZHMgLm1vZGFsQnRuOm50aC1jaGlsZCgybiArIDEpIHtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBtYXJnaW4tcmlnaHQ6IC0xMDAlO1xuICAgIGNsZWFyOiBib3RoO1xuICAgIG1hcmdpbi1sZWZ0OiAwOyB9XG4gIGJvZHkubWVkaWEgc2VjdGlvbltpZD1cInRyYWNraXItNVwiXSAuaW1hZ2UtZG93bmxvYWRzIC5tb2RhbEJ0bjpudGgtY2hpbGQoMm4gKyAyKSB7XG4gICAgbWFyZ2luLWxlZnQ6IDU1LjU1NTU2JTtcbiAgICBtYXJnaW4tcmlnaHQ6IC0xMDAlO1xuICAgIGNsZWFyOiBub25lOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIGJvZHkubWVkaWEgc2VjdGlvbltpZD1cInRyYWNraXItNVwiXSAuaW1hZ2UtZG93bmxvYWRzIC5tb2RhbEJ0biB7XG4gICAgICB3aWR0aDogMjguNTcxNDMlO1xuICAgICAgZmxvYXQ6IGxlZnQ7IH1cbiAgICAgIGJvZHkubWVkaWEgc2VjdGlvbltpZD1cInRyYWNraXItNVwiXSAuaW1hZ2UtZG93bmxvYWRzIC5tb2RhbEJ0bjpudGgtY2hpbGQoM24gKyAxKSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IC0xMDAlO1xuICAgICAgICBjbGVhcjogYm90aDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgICAgIGJvZHkubWVkaWEgc2VjdGlvbltpZD1cInRyYWNraXItNVwiXSAuaW1hZ2UtZG93bmxvYWRzIC5tb2RhbEJ0bjpudGgtY2hpbGQoM24gKyAyKSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAzNS43MTQyOSU7XG4gICAgICAgIG1hcmdpbi1yaWdodDogLTEwMCU7XG4gICAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgICBib2R5Lm1lZGlhIHNlY3Rpb25baWQ9XCJ0cmFja2lyLTVcIl0gLmltYWdlLWRvd25sb2FkcyAubW9kYWxCdG46bnRoLWNoaWxkKDNuICsgMykge1xuICAgICAgICBtYXJnaW4tbGVmdDogNzEuNDI4NTclO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IC0xMDAlO1xuICAgICAgICBjbGVhcjogbm9uZTsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICBib2R5Lm1lZGlhIHNlY3Rpb25baWQ9XCJ0cmFja2NsaXAtcHJvXCJdIC5pbWFnZS1kb3dubG9hZHMge1xuICAgIG1heC13aWR0aDogNDAwcHg7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9XG4gICAgYm9keS5tZWRpYSBzZWN0aW9uW2lkPVwidHJhY2tjbGlwLXByb1wiXSAuaW1hZ2UtZG93bmxvYWRzOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBjbGVhcjogYm90aDsgfSB9XG5cbmJvZHkubWVkaWEgc2VjdGlvbltpZD1cInRyYWNrY2xpcC1wcm9cIl0gLmltYWdlLWRvd25sb2FkcyAubW9kYWxCdG4ge1xuICB3aWR0aDogNDQuNDQ0NDQlO1xuICBmbG9hdDogbGVmdDsgfVxuICBib2R5Lm1lZGlhIHNlY3Rpb25baWQ9XCJ0cmFja2NsaXAtcHJvXCJdIC5pbWFnZS1kb3dubG9hZHMgLm1vZGFsQnRuOm50aC1jaGlsZCgybiArIDEpIHtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBtYXJnaW4tcmlnaHQ6IC0xMDAlO1xuICAgIGNsZWFyOiBib3RoO1xuICAgIG1hcmdpbi1sZWZ0OiAwOyB9XG4gIGJvZHkubWVkaWEgc2VjdGlvbltpZD1cInRyYWNrY2xpcC1wcm9cIl0gLmltYWdlLWRvd25sb2FkcyAubW9kYWxCdG46bnRoLWNoaWxkKDJuICsgMikge1xuICAgIG1hcmdpbi1sZWZ0OiA1NS41NTU1NiU7XG4gICAgbWFyZ2luLXJpZ2h0OiAtMTAwJTtcbiAgICBjbGVhcjogbm9uZTsgfVxuXG5ib2R5Lm1lZGlhIHNlY3Rpb25baWQ9XCJ0cmFja2NsaXBcIl0gLmltYWdlLWRvd25sb2FkcyAubW9kYWxCdG4ge1xuICB3aWR0aDogMTAwJTtcbiAgZmxvYXQ6IGxlZnQ7IH1cbiAgYm9keS5tZWRpYSBzZWN0aW9uW2lkPVwidHJhY2tjbGlwXCJdIC5pbWFnZS1kb3dubG9hZHMgLm1vZGFsQnRuOm50aC1jaGlsZCgxbiArIDEpIHtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBtYXJnaW4tcmlnaHQ6IC0xMDAlO1xuICAgIGNsZWFyOiBub25lOyB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICBib2R5Lm1lZGlhIHNlY3Rpb25baWQ9XCJoYXRzXCJdIC5pbWFnZS1kb3dubG9hZHMge1xuICAgIG1heC13aWR0aDogNDAwcHg7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9XG4gICAgYm9keS5tZWRpYSBzZWN0aW9uW2lkPVwiaGF0c1wiXSAuaW1hZ2UtZG93bmxvYWRzOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBjbGVhcjogYm90aDsgfSB9XG5cbmJvZHkubWVkaWEgc2VjdGlvbltpZD1cImhhdHNcIl0gLmltYWdlLWRvd25sb2FkcyAubW9kYWxCdG4ge1xuICB3aWR0aDogNDQuNDQ0NDQlO1xuICBmbG9hdDogbGVmdDsgfVxuICBib2R5Lm1lZGlhIHNlY3Rpb25baWQ9XCJoYXRzXCJdIC5pbWFnZS1kb3dubG9hZHMgLm1vZGFsQnRuOm50aC1jaGlsZCgybiArIDEpIHtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBtYXJnaW4tcmlnaHQ6IC0xMDAlO1xuICAgIGNsZWFyOiBib3RoO1xuICAgIG1hcmdpbi1sZWZ0OiAwOyB9XG4gIGJvZHkubWVkaWEgc2VjdGlvbltpZD1cImhhdHNcIl0gLmltYWdlLWRvd25sb2FkcyAubW9kYWxCdG46bnRoLWNoaWxkKDJuICsgMikge1xuICAgIG1hcmdpbi1sZWZ0OiA1NS41NTU1NiU7XG4gICAgbWFyZ2luLXJpZ2h0OiAtMTAwJTtcbiAgICBjbGVhcjogbm9uZTsgfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgYm9keS5tZWRpYSBzZWN0aW9uW2lkPVwidmlzb3JzXCJdIC5pbWFnZS1kb3dubG9hZHMge1xuICAgIG1heC13aWR0aDogNDAwcHg7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9XG4gICAgYm9keS5tZWRpYSBzZWN0aW9uW2lkPVwidmlzb3JzXCJdIC5pbWFnZS1kb3dubG9hZHM6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCIgXCI7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGNsZWFyOiBib3RoOyB9IH1cblxuYm9keS5tZWRpYSBzZWN0aW9uW2lkPVwidmlzb3JzXCJdIC5pbWFnZS1kb3dubG9hZHMgLm1vZGFsQnRuIHtcbiAgd2lkdGg6IDQ0LjQ0NDQ0JTtcbiAgZmxvYXQ6IGxlZnQ7IH1cbiAgYm9keS5tZWRpYSBzZWN0aW9uW2lkPVwidmlzb3JzXCJdIC5pbWFnZS1kb3dubG9hZHMgLm1vZGFsQnRuOm50aC1jaGlsZCgybiArIDEpIHtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBtYXJnaW4tcmlnaHQ6IC0xMDAlO1xuICAgIGNsZWFyOiBib3RoO1xuICAgIG1hcmdpbi1sZWZ0OiAwOyB9XG4gIGJvZHkubWVkaWEgc2VjdGlvbltpZD1cInZpc29yc1wiXSAuaW1hZ2UtZG93bmxvYWRzIC5tb2RhbEJ0bjpudGgtY2hpbGQoMm4gKyAyKSB7XG4gICAgbWFyZ2luLWxlZnQ6IDU1LjU1NTU2JTtcbiAgICBtYXJnaW4tcmlnaHQ6IC0xMDAlO1xuICAgIGNsZWFyOiBub25lOyB9XG4iLCJAaW1wb3J0IFwidmVuZG9yL2JyZWFrcG9pbnRcIjtcblxuXG4kdGV4dC1zaXplLWhlYWRpbmctbGFyZ2UtbW9iaWxlOiA0NXB4O1xuJHRleHQtc2l6ZS1oZWFkaW5nLW1lZGl1bS1tb2JpbGU6IDM2cHg7XG4kdGV4dC1zaXplLWhlYWRpbmctc21hbGwtbW9iaWxlOiAxOHB4O1xuJHRleHQtc2l6ZS1jb3B5LWxhcmdlLW1vYmlsZTogMThweDtcbiR0ZXh0LXNpemUtY29weS1ub3JtYWwtbW9iaWxlOiAxNnB4O1xuJHRleHQtc2l6ZS1jb3B5LXNtYWxsLW1vYmlsZTogMTNweDtcblxuYm9keSB7XG4gICAgY29sb3I6ICRjb2xvci10ZXh0LWRlZmF1bHQ7XG4gICAgZm9udC1mYW1pbHk6ICRmb250LXN0YWNrLWRlZmF1bHQ7XG4gICAgbGluZS1oZWlnaHQ6IDEuMztcbn1cblxuYSB7XG4gICAgY29sb3I6ICRjb2xvci10ZXh0LWVtcGhhc2l6ZWQ7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG59XG5cbmgxLCBoMiwgaDMsIGg0LCBoNSwgaDYge1xuICAgIGNvbG9yOiAkY29sb3ItdGV4dC1lbXBoYXNpemVkO1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG59XG5cbmgxLCBoMiB7XG4gICAgZm9udC1mYW1pbHk6ICRmb250LXN0YWNrLWhlYWRpbmc7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cbmgzIHtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbn1cbmxhYmVsIHtcbiAgICBjb2xvcjogJGNvbG9yLXRleHQtZW1waGFzaXplZDtcbn1cbmNvZGUge1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4zKSBub25lIHJlcGVhdCBzY3JvbGwgMCUgMCU7XG4gICAgY29sb3I6IHdoaXRlO1xuICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICBwYWRkaW5nOiAxcHggOXB4O1xufVxuXG4vLyBNb2JpbGUtZmlyc3QgKCsgdGFibGV0KSB0eXBlIHNpemVzLlxuYm9keSB7IGZvbnQtc2l6ZTogJHRleHQtc2l6ZS1jb3B5LW5vcm1hbC1tb2JpbGU7IH1cbmgxIHsgZm9udC1zaXplOiAkdGV4dC1zaXplLWhlYWRpbmctbGFyZ2UtbW9iaWxlOyB9XG5oMiB7IGZvbnQtc2l6ZTogJHRleHQtc2l6ZS1oZWFkaW5nLW1lZGl1bS1tb2JpbGU7IH1cbmgzIHsgZm9udC1zaXplOiAkdGV4dC1zaXplLWhlYWRpbmctc21hbGwtbW9iaWxlOyB9XG4iLCIvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBEZWZpbmUgc29tZSBjb25zdGFudHMvY29uZmlndXJhdGlvbi5cblxuJGRlZmF1bHQtYm94LXNpemluZzogYm9yZGVyLWJveDtcblxuJGRlZmF1bHQtdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4ycztcbiRkZWZhdWx0LXRyYW5zaXRpb24tZnVuY3Rpb246IGVhc2Utb3V0O1xuXG4kZm9udC1zdGFjay1kZWZhdWx0OiBcIkFyaWFsXCIsIHNhbnMtc2VyaWY7XG4kZm9udC1zdGFjay1oZWFkaW5nOiBcIk5leGFcIiwgc2Fucy1zZXJpZjtcblxuJGNvbG9yLWJnLWRhcms6IHJnYigyMiwgMjIsIDIyKTtcbiRjb2xvci10ZXh0LWRlZmF1bHQ6IHJnYigyNTAsIDIzMCwgMjA1KTtcbiRjb2xvci10ZXh0LWVtcGhhc2l6ZWQ6IHJnYigyNTUsIDI1NSwgMjU1KTtcbiRjb2xvci10ZXh0LWV2ZW5sZXNzZGltOiAkY29sb3ItdGV4dC1kZWZhdWx0O1xuJGNvbG9yLXRleHQtbGVzc2RpbTogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjY2KTtcbiRjb2xvci10ZXh0LWRpbTogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpO1xuJGNvbG9yLXRleHQtZXh0cmFkaW06IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4zNSk7XG5cbiRjb2xvci1pbnB1dC10ZXh0OiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNyk7XG4kY29sb3ItaW5wdXQtZGFya2VuOiByZ2JhKDAsIDAsIDAsIDAuMSk7XG5cbiRib3JkZXItcmFkaXVzLXNtYWxsOiA1cHg7XG4kYm9yZGVyLXJhZGl1cy1sYXJnZTogNDBweDtcblxuJGZvb3Rlci1oZWlnaHQtbW9iaWxlOiAyNDBweDtcbiRmb290ZXItaGVpZ2h0LXRhYmxldDogMjI1cHg7XG5cblxuLy8gU3VzeSBnbG9iYWwgY29uZmlndXJhdGlvbi5cbiRzdXN5OiAoXG4gICAgY29sdW1uczogMTIsXG4gICAgZ2xvYmFsLWJveC1zaXppbmc6ICRkZWZhdWx0LWJveC1zaXppbmcsXG4pO1xuXG5cbi8vIEJyZWFrcG9pbnQuc2NzcyBtZWRpYSBxdWVyeSB2YXJpYWJsZXMuXG4kYnAtZGVza3RvcC1taW4td2lkdGg6IDEyMDBweDtcbiRicC10YWJsZXQtbWF4LXdpZHRoOiAoJGJwLWRlc2t0b3AtbWluLXdpZHRoIC0gMXB4KTtcbiRicC10YWJsZXQtbWluLXdpZHRoOiA3NjhweDtcbiRicC1tb2JpbGUtbWF4LXdpZHRoOiAoJGJwLXRhYmxldC1taW4td2lkdGggLSAxcHgpO1xuXG4kYnAtbW9iaWxlLW9ubHk6IG1heC13aWR0aCAkYnAtbW9iaWxlLW1heC13aWR0aDtcblxuJGJwLXRhYmxldC11cDogJGJwLXRhYmxldC1taW4td2lkdGg7XG4kYnAtdGFibGV0LWRvd246IG1heC13aWR0aCAkYnAtdGFibGV0LW1heC13aWR0aDtcbiRicC1kZXNrdG9wLW9ubHk6ICRicC1kZXNrdG9wLW1pbi13aWR0aDtcblxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gQ29tcG9zZSBhbmQgb3V0cHV0IHBhcnRpYWxzLlxuXG4vLyBWZW5kb3Igc3R5bGVzLlxuQGltcG9ydCBcIm5vcm1hbGl6ZVwiO1xuXG4vLyBDb21tb24gc3R5bGVzLlxuQGltcG9ydCBcImZvbnRzXCI7XG5AaW1wb3J0IFwidHlwb2dyYXBoeVwiO1xuQGltcG9ydCBcImNvbW1vblwiO1xuXG4vLyBUZW1wbGF0ZSBwYXJ0aWFscy5cbkBpbXBvcnQgXCJoZWFkZXJcIjtcbkBpbXBvcnQgXCJmb290ZXJcIjtcblxuLy8gUGFnZS1zcGVjaWZpYyBzdHlsZXMuXG5AaW1wb3J0IFwicGFnZXMvaW5kZXhcIjtcbkBpbXBvcnQgXCJwYWdlcy9jYXJ0LWFuZC1jaGVja291dFwiO1xuQGltcG9ydCBcInBhZ2VzL2Fib3V0XCI7XG5AaW1wb3J0IFwicGFnZXMvcG9saWN5XCI7XG5AaW1wb3J0IFwicGFnZXMvd2FycmFudHktYW5kLXRlcm1zXCI7XG5AaW1wb3J0IFwicGFnZXMvcHJvZHVjdHNcIjtcbkBpbXBvcnQgXCJwYWdlcy9oZWxwXCI7XG5AaW1wb3J0IFwicGFnZXMvNDA0XCI7XG5AaW1wb3J0IFwicGFnZXMvZGV2ZWxvcGVyc1wiO1xuQGltcG9ydCBcInBhZ2VzL2RlYWxlcnNcIjtcbkBpbXBvcnQgXCJwYWdlcy9kb3dubG9hZHNcIjtcbkBpbXBvcnQgXCJwYWdlcy90cmFja2lyNVwiO1xuQGltcG9ydCBcInBhZ2VzL2FjY2Vzc29yaWVzXCI7XG5AaW1wb3J0IFwicGFnZXMvZ2FtZXMtbGlzdFwiO1xuQGltcG9ydCBcInBhZ2VzL3JlbW90ZS1zdXBwb3J0XCI7XG5AaW1wb3J0IFwicGFnZXMvcHJvbW9cIjtcbkBpbXBvcnQgXCJwYWdlcy9tZWRpYVwiO1xuIiwiQGltcG9ydCBcInZlbmRvci9icmVha3BvaW50XCI7XG5AaW1wb3J0IFwidmVuZG9yL3N1c3lcIjtcblxuQGltcG9ydCBcImhlbHBlcnMvZGV2ZWxvcG1lbnRcIjtcbkBpbXBvcnQgXCJoZWxwZXJzL2NvbnRhaW5lclwiO1xuQGltcG9ydCBcImhlbHBlcnMvbGlzdHNcIjtcbkBpbXBvcnQgXCJoZWxwZXJzL2hpZGVcIjtcbkBpbXBvcnQgXCJoZWxwZXJzL2J1dHRvbnNcIjtcbkBpbXBvcnQgXCJoZWxwZXJzL2JvcmRlcnNcIjtcblxuQGltcG9ydCBcInBhcnRpYWxzL2hlYWRpbmdzXCI7XG5cblxuXG4vLyBHbG9iYWwgYm94LXNpemluZyBpbiBhIHdheSB0aGF0J3MgZWFzaWVyIHRvIG92ZXJyaWRlIG9uIGEgcGVyLWNvbXBvbmVudCBiYXNpcyB3aGVuIG5lY2Vzc2FyeS5cbi8vIGh0dHBzOi8vY3NzLXRyaWNrcy5jb20vaW5oZXJpdGluZy1ib3gtc2l6aW5nLXByb2JhYmx5LXNsaWdodGx5LWJldHRlci1iZXN0LXByYWN0aWNlL1xuaHRtbCB7XG4gICAgYm94LXNpemluZzogJGRlZmF1bHQtYm94LXNpemluZztcbiAgICBvdmVyZmxvdy15OiBzY3JvbGw7XG59XG5cbiosXG4qOmJlZm9yZSxcbio6YWZ0ZXIge1xuICAgIGJveC1zaXppbmc6IGluaGVyaXQ7XG59XG5cblxuaW1nIHtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG59XG5cbmh0bWwsXG5ib2R5IHtcbiAgICBoZWlnaHQ6IDEwMCU7XG59XG5cbi8vIFRvIGFjY29tb2RhdGUgdGhlIHN0aWNreSBmb290ZXIuXG4kR0xPQkFMX2Zvb3Rlci1oZWlnaHQtbW9iaWxlOiAyMDBweDtcbiRHTE9CQUxfZm9vdGVyLWhlaWdodC10YWJsZXQ6ICRHTE9CQUxfZm9vdGVyLWhlaWdodC1tb2JpbGU7XG5tYWluIHtcbiAgICBtaW4taGVpZ2h0OiAxMDAlO1xuICAgIG1hcmdpbi1ib3R0b206ICAtJGZvb3Rlci1oZWlnaHQtbW9iaWxlO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAgLSRmb290ZXItaGVpZ2h0LXRhYmxldDtcbiAgICB9XG59XG5tYWluOjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBoZWlnaHQ6ICAkZm9vdGVyLWhlaWdodC1tb2JpbGU7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgaGVpZ2h0OiAgJGZvb3Rlci1oZWlnaHQtdGFibGV0O1xuICB9XG59XG5cbmJvZHkge1xuICAgIGJhY2tncm91bmQ6ICNFQzhBMDA7XG4gICAgYmFja2dyb3VuZC1pbWFnZTpcbiAgICAgICAgbGluZWFyLWdyYWRpZW50KC05MGRlZywgI0VDOEEwMCAwJSwgI0ZBOUIwMCAxMCUsICNGRkE2MDAgMjAlLCAjRkZBNjAwIDgwJSwgI0ZBOUIwMCA5MCUsICNFQzhBMDAgMTAwJSksXG4gICAgICAgIHJhZGlhbC1ncmFkaWVudCg1MCUgNTAlLCAjRkZBNjAwIDUwJSwgI0ZGQTYwMCA2MCUsICNGQTlCMDAgODAlLCAjRUM4QTAwIDEwMCUsICNCNjVGMDAgMTM1JSk7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogbGVmdCAwIHRvcCAxMjA1MHB4LCB0b3AgY2VudGVyO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiAgbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtc2l6ZTogYXV0byAxMDAwMHB4LCAxMDAlIDEyMDAwcHg7XG59XG5oMSwgaDIge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwcHg7XG4gICAgfVxufVxuXG5pbnB1dFt0eXBlPVwidGV4dFwiXSxcbmlucHV0W3R5cGU9XCJlbWFpbFwiXSxcbmlucHV0W3R5cGU9XCJ0ZWxcIl0sXG50ZXh0YXJlYSxcbiB7XG4gICAgZm9udC1zaXplOiAkdGV4dC1zaXplLWNvcHktc21hbGwtbW9iaWxlO1xuICAgIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICAgIHBhZGRpbmc6IDRweCAxMHB4O1xuICAgIGJvcmRlcjogMDtcbiAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1zbWFsbDtcbiAgICBiYWNrZ3JvdW5kOiAkY29sb3ItaW5wdXQtZGFya2VuO1xuICAgICY6Zm9jdXMsXG4gICAgJjphY3RpdmUge1xuICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAxcHggJGNvbG9yLXRleHQtZW1waGFzaXplZDtcbiAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICB9XG59XG5cbmlucHV0W3R5cGU9XCJzdWJtaXRcIl0sXG5idXR0b24ge1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIEBpbmNsdWRlIGJ0bjtcbn1cblxuLy8gRklYTUU6IG5vcm1hbGl6ZS5jc3MgYWRkcyBjb2xvcjogaW5oZXJpdCAoLT4gd2hpdGUgYm9keSB0ZXh0KSwgYW5kIHdlIGNhbid0IGVhc2lseSBzdHlsZSB0aGUgYmFja2dyb3VuZCBvZiBzZWxlY3Qvb3B0aW9uIGVsZW1lbnRzIGluIGEgY3Jvc3MtYnJvd3Nlci1mcmllbmRseSB3YXkuXG5zZWxlY3Qge1xuICAgIGNvbG9yOiAjMDAwO1xufVxuIiwiLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBEZWZhdWx0IFZhcmlhYmxlc1xuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4kQnJlYWtwb2ludC1TZXR0aW5nczogKFxuICAnZGVmYXVsdCBtZWRpYSc6IGFsbCxcbiAgJ2RlZmF1bHQgZmVhdHVyZSc6IG1pbi13aWR0aCxcbiAgJ2RlZmF1bHQgcGFpcic6IHdpZHRoLFxuXG4gICdmb3JjZSBhbGwgbWVkaWEgdHlwZSc6IGZhbHNlLFxuICAndG8gZW1zJzogZmFsc2UsXG4gICd0cmFuc2Zvcm0gcmVzb2x1dGlvbnMnOiB0cnVlLFxuXG4gICdubyBxdWVyaWVzJzogZmFsc2UsXG4gICdubyBxdWVyeSBmYWxsYmFja3MnOiBmYWxzZSxcblxuICAnYmFzZSBmb250IHNpemUnOiAxNnB4LFxuXG4gICdsZWdhY3kgc3ludGF4JzogZmFsc2Vcbik7XG5cbiRicmVha3BvaW50OiAoKSAhZGVmYXVsdDtcblxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBJbXBvcnRzXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbkBpbXBvcnQgXCJicmVha3BvaW50L3NldHRpbmdzXCI7XG5AaW1wb3J0ICdicmVha3BvaW50L2NvbnRleHQnO1xuQGltcG9ydCAnYnJlYWtwb2ludC9oZWxwZXJzJztcbkBpbXBvcnQgJ2JyZWFrcG9pbnQvcGFyc2Vycyc7XG5AaW1wb3J0ICdicmVha3BvaW50L25vLXF1ZXJ5JztcblxuQGltcG9ydCAnYnJlYWtwb2ludC9yZXNwb25kLXRvJztcblxuQGltcG9ydCBcImJyZWFrcG9pbnQvbGVnYWN5LXNldHRpbmdzXCI7XG5cbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gQnJlYWtwb2ludCBNaXhpblxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG5cbkBtaXhpbiBicmVha3BvaW50KCRxdWVyeSwgJG5vLXF1ZXJ5OiBmYWxzZSkge1xuICBAaW5jbHVkZSBsZWdhY3ktc2V0dGluZ3Mtd2FybmluZztcblxuICAvLyBSZXNldCBjb250ZXh0c1xuICBAaW5jbHVkZSBwcml2YXRlLWJyZWFrcG9pbnQtcmVzZXQtY29udGV4dHMoKTtcblxuICAkYnJlYWtwb2ludDogYnJlYWtwb2ludCgkcXVlcnksIGZhbHNlKTtcblxuICAkcXVlcnktc3RyaW5nOiBtYXAtZ2V0KCRicmVha3BvaW50LCAncXVlcnknKTtcbiAgJHF1ZXJ5LWZhbGxiYWNrOiBtYXAtZ2V0KCRicmVha3BvaW50LCAnZmFsbGJhY2snKTtcblxuICAkcHJpdmF0ZS1icmVha3BvaW50LWNvbnRleHQtaG9sZGVyOiBtYXAtZ2V0KCRicmVha3BvaW50LCAnY29udGV4dCBob2xkZXInKSAhZ2xvYmFsO1xuICAkcHJpdmF0ZS1icmVha3BvaW50LXF1ZXJ5LWNvdW50OiBtYXAtZ2V0KCRicmVha3BvaW50LCAncXVlcnkgY291bnQnKSAhZ2xvYmFsO1xuXG4gIC8vIEFsbG93IGZvciBhbiBhcy1uZWVkZWQgb3ZlcnJpZGUgb3IgdXNhZ2Ugb2Ygbm8gcXVlcnkgZmFsbGJhY2suXG4gIEBpZiAkbm8tcXVlcnkgIT0gZmFsc2Uge1xuICAgICRxdWVyeS1mYWxsYmFjazogJG5vLXF1ZXJ5O1xuICB9XG5cbiAgQGlmICRxdWVyeS1mYWxsYmFjayAhPSBmYWxzZSB7XG4gICAgJGNvbnRleHQtc2V0dGVyOiBwcml2YXRlLWJyZWFrcG9pbnQtc2V0LWNvbnRleHQoJ25vLXF1ZXJ5JywgJHF1ZXJ5LWZhbGxiYWNrKTtcbiAgfVxuXG4gIC8vIFByaW50IE91dCBRdWVyeSBTdHJpbmdcbiAgQGlmIG5vdCBicmVha3BvaW50LWdldCgnbm8gcXVlcmllcycpIHtcbiAgICBAbWVkaWEgI3skcXVlcnktc3RyaW5nfSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cblxuICBAaWYgYnJlYWtwb2ludC1nZXQoJ25vIHF1ZXJ5IGZhbGxiYWNrcycpICE9IGZhbHNlIG9yIGJyZWFrcG9pbnQtZ2V0KCdubyBxdWVyaWVzJykgPT0gdHJ1ZSB7XG5cbiAgICAkdHlwZTogdHlwZS1vZihicmVha3BvaW50LWdldCgnbm8gcXVlcnkgZmFsbGJhY2tzJykpO1xuICAgICRwcmludDogZmFsc2U7XG5cbiAgICBAaWYgKCR0eXBlID09ICdib29sJykge1xuICAgICAgJHByaW50OiB0cnVlO1xuICAgIH1cbiAgICBAZWxzZSBpZiAoJHR5cGUgPT0gJ3N0cmluZycpIHtcbiAgICAgIEBpZiAkcXVlcnktZmFsbGJhY2sgPT0gYnJlYWtwb2ludC1nZXQoJ25vIHF1ZXJ5IGZhbGxiYWNrcycpIHtcbiAgICAgICAgJHByaW50OiB0cnVlO1xuICAgICAgfVxuICAgIH1cbiAgICBAZWxzZSBpZiAoJHR5cGUgPT0gJ2xpc3QnKSB7XG4gICAgICBAZWFjaCAkd3JhcHBlciBpbiBicmVha3BvaW50LWdldCgnbm8gcXVlcnkgZmFsbGJhY2tzJykge1xuICAgICAgICBAaWYgJHF1ZXJ5LWZhbGxiYWNrID09ICR3cmFwcGVyIHtcbiAgICAgICAgICAkcHJpbnQ6IHRydWU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBXcml0ZSBGYWxsYmFja1xuICAgIEBpZiAoJHF1ZXJ5LWZhbGxiYWNrICE9IGZhbHNlKSBhbmQgKCRwcmludCA9PSB0cnVlKSB7XG4gICAgICAkdHlwZS1mYWxsYmFjazogdHlwZS1vZigkcXVlcnktZmFsbGJhY2spO1xuXG4gICAgICBAaWYgKCR0eXBlLWZhbGxiYWNrICE9ICdib29sJykge1xuICAgICAgICAjeyRxdWVyeS1mYWxsYmFja30gJiB7XG4gICAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgQGNvbnRlbnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgcHJpdmF0ZS1icmVha3BvaW50LXJlc2V0LWNvbnRleHRzKCk7XG59XG5cblxuQG1peGluIG1xKCRxdWVyeSwgJG5vLXF1ZXJ5OiBmYWxzZSkge1xuICBAaW5jbHVkZSBicmVha3BvaW50KCRxdWVyeSwgJG5vLXF1ZXJ5KSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cbiIsIkBtaXhpbiBidG4ge1xuICAgIHRyYW5zaXRpb246IGFsbCAkZGVmYXVsdC10cmFuc2l0aW9uLWR1cmF0aW9uICRkZWZhdWx0LXRyYW5zaXRpb24tZnVuY3Rpb247XG4gICAgcGFkZGluZzogMTBweCA1MnB4O1xuICAgIGJvcmRlcjogc29saWQgMXB4ICRjb2xvci10ZXh0LWRlZmF1bHQ7XG4gICAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMtbGFyZ2U7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICAgIGNvbG9yOiAkY29sb3ItdGV4dC1lbXBoYXNpemVkO1xuICAgICAgICBiYWNrZ3JvdW5kOiAkY29sb3ItaW5wdXQtZGFya2VuO1xuICAgIH1cbn1cbiIsIi8vIFNldCB0aGUgaGVpZ2h0IG9mIHRoZSBoZWFkZXIgc28gdGhhdCBpdCBjYW4gYmUgcHVzaGVkIFwiZG93blwiIHcvIHBhZGRpbmcgc2luY2UgaXQgaXMgZml4ZWRcbi8vIHRvIHRoZSB0b3AuXG4kaGVhZGVyLWhlaWdodC1tb2JpbGU6IDYwcHg7XG4kaGVhZGVyLWhlaWdodC10YWJsZXQ6IDc1cHg7XG5cbmhlYWRlciB7XG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciA1MDBtcyBlYXNlLWluLW91dDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI0NywgMTQ2LCAwLCAwLjApO1xuICAgIGJvcmRlci1ib3R0b206IHNvbGlkIDFweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMzUpO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHRvcDogMDtcbiAgICB6LWluZGV4OiAxMDAwO1xuICAgIGhlaWdodDogJGhlYWRlci1oZWlnaHQtbW9iaWxlO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgICBoZWlnaHQ6ICRoZWFkZXItaGVpZ2h0LXRhYmxldDtcbiAgICB9XG4gICAgJi5tYWluLW5hdi1zY3JvbGxlZCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjQ3LCAxNDYsIDAsIDAuOSk7XG4gICAgfVxuICAgIG5hdltyb2xlPVwibmF2aWdhdGlvblwiXSB7XG4gICAgICAgIEBpbmNsdWRlIGFkYXB0aXZlLWNvbnRhaW5lcjtcbiAgICAgICAgcGFkZGluZzogNXB4IDBweCA3cHg7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgICAgICAgcGFkZGluZzogMzBweCAwIDE4cHg7XG4gICAgICAgIH1cbiAgICAgICAgLnRyYWNraXItbG9nbyB7XG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBwdXNoKDMpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTQ0cHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBhIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgNHB4O1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgY29sb3I6ICRjb2xvci10ZXh0LWRlZmF1bHQ7XG4gICAgICAgICAgICBmb250LXNpemU6ICR0ZXh0LXNpemUtY29weS1zbWFsbC1tb2JpbGU7XG4gICAgICAgIH1cbiAgICAgICAgbGk6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgIH1cbiAgICAgICAgbGk6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICBhe1xuICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgPiB1bCB7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogNXB4O1xuICAgICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGp1c3RpZnk7XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAtNHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgPiBsaSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgICYuY2FydCBhIHtcbiAgICAgICAgICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSB2aXN1YWxseS1oaWRkZW47XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBpY29uKCRpY29uLWdseXBoLWJhc2tldCk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBsaS5pbmxpbmUtdHJhY2tpci1sb2dvIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC1tb2JpbGUtb25seSkge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDE1cHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgbGk6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA2cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBsaTpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgICAgICBsaTpudGgtb2YtdHlwZSgyKSxcbiAgICAgICAgICAgICAgICBsaTpudGgtb2YtdHlwZSgzKSB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiA2MnB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBsaTpudGgtb2YtdHlwZSg0KSxcbiAgICAgICAgICAgICAgICBsaTpudGgtb2YtdHlwZSg1KSB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAyMnB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuIiwiLy8gcmVtIFN1cHBvcnRcbi8vID09PT09PT09PT09XG5cbi8vIHJlbVxuLy8gLS0tXG4vLyBDaGVjayBmb3IgYW4gZXhpc3Rpbmcgc3VwcG9ydCBtaXhpbiwgb3Igb3V0cHV0IGRpcmVjdGx5LlxuLy8gLSAkcHJvcCAgOiA8Y3NzIHByb3BlcnR5PlxuLy8gLSAkdmFsICAgOiA8Y3NzIHZhbHVlPlxuQG1peGluIHN1c3ktcmVtKFxuICAkcHJvcCxcbiAgJHZhbFxuKSB7XG4gICRfcmVxczogKFxuICAgIHZhcmlhYmxlOiByaHl0aG0tdW5pdCByZW0td2l0aC1weC1mYWxsYmFjayxcbiAgICBtaXhpbjogcmVtLFxuICApO1xuICBAaWYgc3VzeS1zdXBwb3J0KHJlbSwgJF9yZXFzLCAkd2FybjogZmFsc2UpIGFuZCAkcmh5dGhtLXVuaXQgPT0gcmVtIHtcbiAgICBAaW5jbHVkZSByZW0oJHByb3AsICR2YWwpO1xuICB9IEBlbHNlIHtcbiAgICAjeyRwcm9wfTogJHZhbDtcbiAgfVxufVxuIiwiQG1peGluIGFkYXB0aXZlLWNvbnRhaW5lciB7XG4gICAgQGluY2x1ZGUgY29udGFpbmVyKDI5MHB4KTtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgICBAaW5jbHVkZSBjb250YWluZXIoNzAycHgpO1xuICAgIH1cbn1cbiIsIi8vIENvbnRhaW5lciBTeW50YXhcbi8vID09PT09PT09PT09PT09PT1cblxuLy8gQ29udGFpbmVyIFttaXhpbl1cbi8vIC0tLS0tLS0tLS0tLS0tLS0tXG4vLyBTZXQgYSBjb250YWluZXIgZWxlbWVudFxuLy8gLSBbJGxheW91dF0gIDogPHNldHRpbmdzPlxuQG1peGluIGNvbnRhaW5lcihcbiAgJGxheW91dDogJHN1c3lcbikge1xuICAkaW5zcGVjdCAgICA6ICRsYXlvdXQ7XG4gICRsYXlvdXQgICAgIDogcGFyc2UtZ3JpZCgkbGF5b3V0KTtcblxuICAkX3dpZHRoICAgICA6IGdldC1jb250YWluZXItd2lkdGgoJGxheW91dCk7XG4gICRfanVzdGlmeSAgIDogcGFyc2UtY29udGFpbmVyLXBvc2l0aW9uKHN1c3ktZ2V0KGNvbnRhaW5lci1wb3NpdGlvbiwgJGxheW91dCkpO1xuICAkX3Byb3BlcnR5ICA6IGlmKHN1c3ktZ2V0KG1hdGgsICRsYXlvdXQpID09IHN0YXRpYywgd2lkdGgsIG1heC13aWR0aCk7XG5cbiAgJF9ib3ggICAgICAgOiBzdXN5LWdldChib3gtc2l6aW5nLCAkbGF5b3V0KTtcblxuICBAaWYgJF9ib3gge1xuICAgIEBpbmNsdWRlIG91dHB1dCgoYm94LXNpemluZzogJF9ib3gpKTtcbiAgfVxuXG4gIEBpbmNsdWRlIHN1c3ktaW5zcGVjdChjb250YWluZXIsICRpbnNwZWN0KTtcbiAgQGluY2x1ZGUgZmxvYXQtY29udGFpbmVyKCRfd2lkdGgsICRfanVzdGlmeSwgJF9wcm9wZXJ0eSk7XG4gIEBpbmNsdWRlIHNob3ctZ3JpZCgkbGF5b3V0KTtcbn1cblxuLy8gQ29udGFpbmVyIFtmdW5jdGlvbl1cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBSZXR1cm4gY29udGFpbmVyIHdpZHRoXG4vLyAtIFskbGF5b3V0XSAgOiA8c2V0dGluZ3M+XG5AZnVuY3Rpb24gY29udGFpbmVyKFxuICAkbGF5b3V0OiAkc3VzeVxuKSB7XG4gICRsYXlvdXQ6IHBhcnNlLWdyaWQoJGxheW91dCk7XG4gIEByZXR1cm4gZ2V0LWNvbnRhaW5lci13aWR0aCgkbGF5b3V0KTtcbn1cblxuLy8gR2V0IENvbnRhaW5lciBXaWR0aFxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gQ2FsY3VsYXRlIHRoZSBjb250YWluZXIgd2lkdGhcbi8vIC0gWyRsYXlvdXRdOiA8c2V0dGluZ3M+XG5AZnVuY3Rpb24gZ2V0LWNvbnRhaW5lci13aWR0aChcbiAgJGxheW91dDogJHN1c3lcbikge1xuICAkbGF5b3V0ICAgICAgICAgOiBwYXJzZS1ncmlkKCRsYXlvdXQpO1xuICAkX3dpZHRoICAgICAgICAgOiBzdXN5LWdldChjb250YWluZXIsICRsYXlvdXQpO1xuICAkX2NvbHVtbi13aWR0aCAgOiBzdXN5LWdldChjb2x1bW4td2lkdGgsICRsYXlvdXQpO1xuICAkX21hdGggICAgICAgICAgOiBzdXN5LWdldChtYXRoLCAkbGF5b3V0KTtcblxuICBAaWYgbm90KCRfd2lkdGgpIG9yICRfd2lkdGggPT0gYXV0byB7XG4gICAgQGlmIHZhbGlkLWNvbHVtbi1tYXRoKCRfbWF0aCwgJF9jb2x1bW4td2lkdGgpIHtcbiAgICAgICRfY29sdW1ucyAgIDogc3VzeS1nZXQoY29sdW1ucywgJGxheW91dCk7XG4gICAgICAkX2d1dHRlcnMgICA6IHN1c3ktZ2V0KGd1dHRlcnMsICRsYXlvdXQpO1xuICAgICAgJF9zcHJlYWQgICAgOiBpZihpcy1zcGxpdCgkbGF5b3V0KSwgd2lkZSwgbmFycm93KTtcbiAgICAgICRfd2lkdGggICAgIDogc3VzeS1zdW0oJF9jb2x1bW5zLCAkX2d1dHRlcnMsICRfc3ByZWFkKSAqICRfY29sdW1uLXdpZHRoO1xuICAgIH0gQGVsc2Uge1xuICAgICAgJF93aWR0aDogMTAwJTtcbiAgICB9XG4gIH1cblxuICBAcmV0dXJuICRfd2lkdGg7XG59XG5cbi8vIFBhcnNlIENvbnRhaW5lciBQb3NpdGlvblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBQYXJzZSB0aGUgJGNvbnRhaW5lci1wb3NpdGlvbiBpbnRvIG1hcmdpbiB2YWx1ZXMuXG4vLyAtIFskanVzdGlmeV0gICA6IGxlZnQgfCBjZW50ZXIgfCByaWdodCB8IDxsZW5ndGg+IFs8bGVuZ3RoPl1cbkBmdW5jdGlvbiBwYXJzZS1jb250YWluZXItcG9zaXRpb24oXG4gICRqdXN0aWZ5OiBtYXAtZ2V0KCRzdXN5LWRlZmF1bHRzLCBjb250YWluZXItcG9zaXRpb24pXG4pIHtcbiAgJF9yZXR1cm46IGlmKCRqdXN0aWZ5ID09IGxlZnQsIDAsIGF1dG8pIGlmKCRqdXN0aWZ5ID09IHJpZ2h0LCAwLCBhdXRvKTtcblxuICBAaWYgbm90KGluZGV4KGxlZnQgcmlnaHQgY2VudGVyLCAkanVzdGlmeSkpIHtcbiAgICAkX3JldHVybjogbnRoKCRqdXN0aWZ5LCAxKTtcbiAgICAkX3JldHVybjogJF9yZXR1cm4gaWYobGVuZ3RoKCRqdXN0aWZ5KSA+IDEsIG50aCgkanVzdGlmeSwgMiksICRfcmV0dXJuKTtcbiAgfVxuXG4gIEByZXR1cm4gJF9yZXR1cm47XG59XG4iLCIvLyBTdXN5IEZhbGxiYWNrIENsZWFyZml4XG4vLyA9PT09PT09PT09PT09PT09PT09PT09XG5cblxuLy8gQ2xlYXJmaXhcbi8vIC0tLS0tLS0tXG4vLyBDaGVjayBmb3IgYW4gZXhpc3Rpbmcgc3VwcG9ydCBtaXhpbiwgb3IgcHJvdmlkZSBhIHNpbXBsZSBmYWxsYmFjay5cbkBtaXhpbiBzdXN5LWNsZWFyZml4IHtcbiAgQGlmIHN1c3ktc3VwcG9ydChjbGVhcmZpeCwgKG1peGluOiBjbGVhcmZpeCkpIHtcbiAgICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgfSBAZWxzZSB7XG4gICAgJjphZnRlciB7XG4gICAgICBjb250ZW50OiBcIiBcIjtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgY2xlYXI6IGJvdGg7XG4gICAgfVxuICB9XG59XG4iLCIvLyBTcGFuIFN5bnRheFxuLy8gPT09PT09PT09PT1cblxuLy8gU3BhbiBbbWl4aW5dXG4vLyAtLS0tLS0tLS0tLS1cbi8vIFNldCBhIHNwYW5uaW5nIGVsZW1lbnQgdXNpbmcgc2hvcnRoYW5kIHN5bnRheC5cbi8vIC0gJHNwYW4gIDogPHNwYW4+XG5AbWl4aW4gc3BhbihcbiAgJHNwYW5cbikge1xuICAkaW5zcGVjdDogJHNwYW47XG4gICRzcGFuOiBwYXJzZS1zcGFuKCRzcGFuKTtcbiAgJG91dHB1dDogc3Bhbi1tYXRoKCRzcGFuKTtcbiAgJG5lc3Rpbmc6IHN1c3ktZ2V0KHNwYW4sICRzcGFuKTtcbiAgJGNsZWFyOiBzdXN5LWdldChjbGVhciwgJHNwYW4pO1xuXG4gICRib3g6IHN1c3ktZ2V0KGJveC1zaXppbmcsICRzcGFuKTtcbiAgJGNvbnRlbnQtYm94OiBpZihzdXN5LWdldChnbG9iYWwtYm94LXNpemluZykgIT0gJ2JvcmRlci1ib3gnLCB0cnVlLCBmYWxzZSk7XG4gICRib3g6ICRib3ggb3IgaWYoaXMtaW5zaWRlKCRzcGFuKSBhbmQgJGNvbnRlbnQtYm94LCBib3JkZXItYm94LCBudWxsKTtcblxuICBAaWYgJGNsZWFyID09IGJyZWFrIHtcbiAgICBAaW5jbHVkZSBicmVhaztcbiAgfSBAZWxzZSBpZiAkY2xlYXIgPT0gbm9icmVhayB7XG4gICAgQGluY2x1ZGUgbm9icmVhaztcbiAgfVxuXG4gIEBpbmNsdWRlIHN1c3ktaW5zcGVjdChzcGFuLCAkaW5zcGVjdCk7XG4gIEBpbmNsdWRlIG91dHB1dCgoYm94LXNpemluZzogJGJveCkpO1xuICBAaW5jbHVkZSBmbG9hdC1zcGFuLW91dHB1dCgkb3V0cHV0Li4uKTtcblxuICBAaWYgdmFsaWQtY29sdW1ucygkbmVzdGluZywgc2lsZW50KSB7XG4gICAgQGluY2x1ZGUgbmVzdGVkKCRzcGFuKSB7IEBjb250ZW50OyB9XG4gIH0gQGVsc2Uge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbi8vIFNwYW4gW2Z1bmN0aW9uXVxuLy8gLS0tLS0tLS0tLS0tLS0tXG4vLyBSZXR1cm4gdGhlIHdpZHRoIG9mIGEgc3Bhbi5cbi8vIC0gJHNwYW4gIDogPHNwYW4+XG5AZnVuY3Rpb24gc3BhbihcbiAgJHNwYW5cbikge1xuICBAcmV0dXJuIGdldC1zcGFuLXdpZHRoKCRzcGFuKTtcbn1cblxuLy8gU3BhbiBNYXRoXG4vLyAtLS0tLS0tLS1cbi8vIEdldCBhbGwgdGhlIHNwYW4gcmVzdWx0cy5cbi8vIC0gJHNwYW46IDxtYXA+XG5AZnVuY3Rpb24gc3Bhbi1tYXRoKFxuICAkc3BhblxuKSB7XG4gICRuZXN0ICAgICAgICAgICAgIDogaWYoc3VzeS1nZXQocm9sZSwgJHNwYW4pID09IG5lc3QsIHRydWUsIGZhbHNlKTtcbiAgJHNwbGl0LW5lc3QgICAgICAgOiBpZihpcy1zcGxpdCgkc3BhbikgYW5kICRuZXN0LCB0cnVlLCBmYWxzZSk7XG4gICRlZGdlICAgICAgICAgICAgIDogZ2V0LWVkZ2UoJHNwYW4pO1xuICAkbG9jYXRpb24gICAgICAgICA6IGdldC1sb2NhdGlvbigkc3Bhbik7XG5cbiAgJGZsb2F0ICAgICAgICAgICAgOiBmcm9tO1xuICAkcGFkZGluZy1iZWZvcmUgICA6IG51bGw7XG4gICRwYWRkaW5nLWFmdGVyICAgIDogbnVsbDtcbiAgJG1hcmdpbi1iZWZvcmUgICAgOiBudWxsO1xuICAkbWFyZ2luLWFmdGVyICAgICA6IG51bGw7XG5cbiAgLy8gY2FsY3VsYXRlIHdpZHRoc1xuICAkc3ByZWFkOiBpbmRleChtYXAtdmFsdWVzKCRzcGFuKSwgc3ByZWFkKTtcbiAgJHNwYW46IGlmKCRzcGxpdC1uZXN0IGFuZCBub3QoJHNwcmVhZCksIG1hcC1tZXJnZSgkc3BhbiwgKHNwcmVhZDogd2lkZSkpLCAkc3Bhbik7XG4gICR3aWR0aDogZ2V0LXNwYW4td2lkdGgoJHNwYW4pO1xuICAkZ3V0dGVyczogZ2V0LWd1dHRlcnMoJHNwYW4pO1xuXG4gIC8vIGFwcGx5IGd1dHRlcnNcbiAgQGlmIGlzLWluc2lkZSgkc3Bhbikge1xuICAgIEBpZiBub3Qoc3VzeS1nZXQocm9sZSwgJHNwYW4pKSB7XG4gICAgICAkcGFkZGluZy1iZWZvcmU6IG1hcC1nZXQoJGd1dHRlcnMsIGJlZm9yZSk7XG4gICAgICAkcGFkZGluZy1hZnRlcjogbWFwLWdldCgkZ3V0dGVycywgYWZ0ZXIpO1xuICAgIH1cbiAgfSBAZWxzZSB7XG4gICAgQGlmIG5vdCgkc3BsaXQtbmVzdCkge1xuICAgICAgJG1hcmdpbi1iZWZvcmU6IG1hcC1nZXQoJGd1dHRlcnMsIGJlZm9yZSk7XG4gICAgICAkbWFyZ2luLWFmdGVyOiBtYXAtZ2V0KCRndXR0ZXJzLCBhZnRlcik7XG4gICAgfVxuICB9XG5cbiAgLy8gc3BlY2lhbCBtYXJnaW4gaGFuZGxpbmdcbiAgQGlmIHN1c3ktZ2V0KG91dHB1dCwgJHNwYW4pID09IGlzb2xhdGUgYW5kICRsb2NhdGlvbiB7XG4gICAgJG1hcmdpbi1iZWZvcmU6IGdldC1pc29sYXRpb24oJHNwYW4pO1xuICAgICRtYXJnaW4tYWZ0ZXI6IC0xMDAlO1xuICB9IEBlbHNlIGlmICRlZGdlIHtcbiAgICAkaXMtc3BsaXQ6IGlzLXNwbGl0KCRzcGFuKTtcbiAgICAkcG9zOiBzdXN5LWdldChndXR0ZXItcG9zaXRpb24sICRzcGFuKTtcblxuICAgIEBpZiAkZWRnZSA9PSBsYXN0IHtcbiAgICAgICRmbG9hdDogc3VzeS1nZXQobGFzdC1mbG93LCAkc3Bhbik7XG4gICAgfVxuXG4gICAgQGlmIG5vdCgkaXMtc3BsaXQpIHtcbiAgICAgIEBpZiAkZWRnZSA9PSBmdWxsIG9yICgkZWRnZSA9PSBmaXJzdCBhbmQgJHBvcyA9PSBiZWZvcmUpIHtcbiAgICAgICAgJG1hcmdpbi1iZWZvcmU6IDA7XG4gICAgICB9XG4gICAgICBAaWYgJGVkZ2UgPT0gZnVsbCBvciAoJGVkZ2UgPT0gbGFzdCBhbmQgJHBvcyA9PSBhZnRlcikge1xuICAgICAgICAkbWFyZ2luLWFmdGVyOiAwO1xuICAgICAgfVxuICAgIH1cblxuICB9XG5cbiAgQHJldHVybiAoXG4gICAgd2lkdGggICAgICAgICAgIDogJHdpZHRoLFxuICAgIGZsb2F0ICAgICAgICAgICA6ICRmbG9hdCxcbiAgICBtYXJnaW4tYmVmb3JlICAgOiAkbWFyZ2luLWJlZm9yZSxcbiAgICBtYXJnaW4tYWZ0ZXIgICAgOiAkbWFyZ2luLWFmdGVyLFxuICAgIHBhZGRpbmctYmVmb3JlICA6ICRwYWRkaW5nLWJlZm9yZSxcbiAgICBwYWRkaW5nLWFmdGVyICAgOiAkcGFkZGluZy1hZnRlcixcbiAgICBmbG93ICAgICAgICAgICAgOiBzdXN5LWdldChmbG93LCAkc3BhbiksXG4gICk7XG59XG5cbi8vIEdldCBTcGFuIFdpZHRoXG4vLyAtLS0tLS0tLS0tLS0tLVxuLy8gUmV0dXJuIHNwYW4gd2lkdGguXG4vLyAtICRzcGFuOiA8bWFwPlxuQGZ1bmN0aW9uIGdldC1zcGFuLXdpZHRoKFxuICAkc3BhblxuKSB7XG4gICRzcGFuICAgICA6IHBhcnNlLXNwYW4oJHNwYW4pO1xuXG4gICRuICAgICAgICA6IHN1c3ktZ2V0KHNwYW4sICRzcGFuKTtcbiAgJGxvY2F0aW9uIDogZ2V0LWxvY2F0aW9uKCRzcGFuKTtcbiAgJGNvbHVtbnMgIDogc3VzeS1nZXQoY29sdW1ucywgJHNwYW4pO1xuICAkZ3V0dGVycyAgOiBzdXN5LWdldChndXR0ZXJzLCAkc3Bhbik7XG4gICRzcHJlYWQgICA6IHN1c3ktZ2V0KHNwcmVhZCwgJHNwYW4pO1xuXG4gICRjb250ZXh0ICA6IG51bGw7XG4gICRzcGFuLXN1bSA6IG51bGw7XG4gICR3aWR0aCAgICA6IG51bGw7XG5cbiAgQGlmICRuID09ICdmdWxsJyB7XG4gICAgJHBvczogc3VzeS1nZXQoZ3V0dGVyLXBvc2l0aW9uLCAkc3Bhbik7XG4gICAgJHJvbGU6IHN1c3ktZ2V0KHJvbGUsICRzcGFuKTtcbiAgICAkbjogaWYoJHBvcyA9PSBzcGxpdCBhbmQgJHJvbGUgIT0gbmVzdCwgc3VzeS1jb3VudCgkY29sdW1ucyksIDEwMCUpO1xuICB9XG5cbiAgQGlmIHR5cGUtb2YoJG4pICE9IG51bWJlciB7XG4gICAgQHdhcm4gXCIoI3t0eXBlLW9mKCRuKX0pICN7JG59IGlzIG5vdCBhIHZhbGlkIHNwYW4uXCI7XG4gIH0gQGVsc2UgaWYgdW5pdGxlc3MoJG4pIHtcbiAgICAkY29udGV4dDogc3VzeS1zdW0oJGNvbHVtbnMsICRndXR0ZXJzLCBpZihpcy1zcGxpdCgkc3BhbiksIHdpZGUsIG5hcnJvdykpO1xuICAgICRzcHJlYWQ6IGlmKGlzLWluc2lkZSgkc3BhbiksICRzcHJlYWQgb3Igd2lkZSwgJHNwcmVhZCk7XG4gICAgJHNwYW4tc3VtOiBzdXN5KCRuLCAkbG9jYXRpb24sICRjb2x1bW5zLCAkZ3V0dGVycywgJHNwcmVhZCk7XG5cbiAgICAkX21hdGg6IHN1c3ktZ2V0KG1hdGgsICRzcGFuKTtcbiAgICAkX2NvbHVtbi13aWR0aDogc3VzeS1nZXQoY29sdW1uLXdpZHRoLCAkc3Bhbik7XG4gICAgQGlmICRfbWF0aCA9PSBzdGF0aWMge1xuICAgICAgJHdpZHRoOiAkc3Bhbi1zdW0gKiB2YWxpZC1jb2x1bW4tbWF0aCgkX21hdGgsICRfY29sdW1uLXdpZHRoKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgICR3aWR0aDogcGVyY2VudGFnZSgkc3Bhbi1zdW0gLyAkY29udGV4dCk7XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICAkd2lkdGg6ICRuO1xuICB9XG5cbiAgQHJldHVybiAkd2lkdGg7XG59XG4iLCIvLyBGb3Igc2NyZWVuIHJlYWRlcnM7IG5vdCB2aXNpYmxlIHRvIHNpZ2h0ZWQgdXNlcnMuIEZJWE1FOiBCZXR0ZXIgYXBwcm9hY2ggdG8gdGhpcz8gUmVmZXJlbmNlIGUuZy4gSDVCUCBvciBCb290c3RyYXA/XG5AbWl4aW4gdmlzdWFsbHktaGlkZGVuIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAtOTk5OTlweDtcbiAgICBsZWZ0OiAtOTk5OTlweDtcbn1cbiIsImZvb3RlciB7XG4gICAgYmFja2dyb3VuZDogJGNvbG9yLWJnLWRhcms7XG4gICAgZm9udC1zaXplOiAkdGV4dC1zaXplLWNvcHktc21hbGwtbW9iaWxlO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBwYWRkaW5nOiAyNXB4IDA7XG4gICAgaGVpZ2h0OiAgJGZvb3Rlci1oZWlnaHQtbW9iaWxlO1xuICAgIG1hcmdpbi10b3A6IC0kZm9vdGVyLWhlaWdodC1tb2JpbGU7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG4gICAgICAgIHBhZGRpbmc6IDQwcHggMDtcbiAgICAgICAgaGVpZ2h0OiAgJGZvb3Rlci1oZWlnaHQtdGFibGV0O1xuICAgICAgICBtYXJnaW4tdG9wOiAtJGZvb3Rlci1oZWlnaHQtdGFibGV0O1xuICAgIH1cbiAgICAuc29jaWFsLWxpbmtzLCBuYXYuYXV4aWxpYXJ5LCAuc29zdW1pIHtcbiAgICAgICAgQGluY2x1ZGUgYWRhcHRpdmUtY29udGFpbmVyO1xuICAgIH1cbiAgICBhIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICBjb2xvcjogJGNvbG9yLXRleHQtZW1waGFzaXplZDtcbiAgICB9XG4gICAgLnNvY2lhbC1saW5rcyB7XG4gICAgICAgIGZvbnQtc2l6ZTogMjhweDtcbiAgICAgICAgYSB7XG4gICAgICAgICAgICBjb2xvcjogJGNvbG9yLXRleHQtZXh0cmFkaW07XG4gICAgICAgIH1cbiAgICAgICAgdWwge1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgID4gbGkge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwIDEwcHg7XG4gICAgICAgICAgICAgICAgLy8gU3BlY2lhbCBzdHlsaW5nIGZvciBhbiBvZGQgYXBwZWFyZW5jZSBvZiB0aGUgVHdpY2ggaWNvblxuICAgICAgICAgICAgICAgIC5pY29uLXR3aXRjaCB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjZweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgLmxhYmVsIHtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgdmlzdWFsbHktaGlkZGVuO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICBuYXYuYXV4aWxpYXJ5IHtcbiAgICAgICAgdWwge1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgID4gbGkge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICAgICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwLjVlbTtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMi4zZW07XG4gICAgICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXFwyMDIyXCI7IC8vIFJvdW5kIGJ1bGxldFxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDAuM2VtO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAvLyBObyBidWxsZXQgdG8gdGhlIGxlZnQgb2YgdGhlIGZpcnN0IGl0ZW0uXG4gICAgICAgICAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIC8vIE5vIGJ1bGxldCB0byB0aGUgbGVmdCBvZiBpdGVtcyB0aGF0IHN0YXJ0IG5ldyBsaW5lcyBvbiBtb2JpbGUuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtbW9iaWxlLW9ubHkpIHtcbiAgICAgICAgICAgICAgICAgICAgJjpudGgtb2YtdHlwZSg1KSxcbiAgICAgICAgICAgICAgICAgICAgJjpudGgtb2YtdHlwZSg4KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIC8vIE5vIGJ1bGxldCB0byB0aGUgbGVmdCBvZiBpdGVtcyB0aGF0IHN0YXJ0IG5ldyBsaW5lcyBvbiB0YWJsZXQuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG4gICAgICAgICAgICAgICAgICAgICY6bnRoLW9mLXR5cGUoOSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIC5jb3B5cmlnaHQsXG4gICAgLmFsbC1yaWdodHMtcmVzZXJ2ZWQge1xuICAgICAgICBjb2xvcjogJGNvbG9yLXRleHQtZXh0cmFkaW07XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLW1vYmlsZS1vbmx5KSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIkBpbXBvcnQgXCIuLi9wYXJ0aWFscy9mZWF0dXJlZC1wcm9kdWN0c1wiO1xuXG5ib2R5LmhvbWUge1xuXG4gICAgbWFpbiB7XG4gICAgICAgIC8vIFRoZSBob21lcGFnZSBzdGFydHMgd2l0aCBhIHplcm8gb3BhY2l0eSBzbyB0aGF0IGl0IGhhcyBhIGNoYW5jZSB0byB3cml0ZSBwYWludCB0aGUgRE9NLiBUaGVuIGl0IHdpbGwgZmFkZSBpbi5cbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgYW5pbWF0aW9uLW5hbWU6IGZhZGUtc2l0ZS1pbjtcbiAgICAgICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAycztcbiAgICAgICAgYW5pbWF0aW9uLWZpbGwtbW9kZTogZm9yd2FyZHM7XG4gICAgICAgIEBrZXlmcmFtZXMgZmFkZS1zaXRlLWluIHtcbiAgICAgICAgICAgIDAlICAge1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAzMCUge1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAxMDAlIHtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIHNlY3Rpb24gIHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIGEuY3RhIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBidG47XG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIGgxIHtcbiAgICAgICAgZm9udC1zaXplOiAzNnB4O1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogNDVweDtcbiAgICAgICAgfVxuICAgIH1cbiAgICBoMiB7XG4gICAgICAgIGZvbnQtc2l6ZTogMjhweDtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDQ1cHg7XG4gICAgICAgIH1cbiAgICB9XG4gICAgW2lkPVwiaW50cm9cIl0ge1xuICAgICAgICBAaW5jbHVkZSBhZGFwdGl2ZS1jb250YWluZXI7XG4gICAgICAgIG1hcmdpbi10b3A6IDYwcHg7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLW1vYmlsZS1vbmx5KSB7XG4gICAgICAgICAgICBtaW4taGVpZ2h0OiA5OHB4O1xuICAgICAgICB9XG4gICAgICAgIC50eXBlZCB7XG4gICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgICAgICAgICAgdG9wOiAtMjJweDtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgaDEge1xuICAgICAgICAgICAgZm9udC1zaXplOiAzNnB4O1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiA0NXB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgYnIge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuY29udGVudCBoMyB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiA3MDBweDtcbiAgICAgICAgfVxuICAgIH1cbiAgICAubW9uaXRvci1jb250YWluZXIge1xuICAgICAgICBAaW5jbHVkZSBhZGFwdGl2ZS1jb250YWluZXI7XG4gICAgICAgIGhlaWdodDogNTgwcHg7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG4gICAgICAgICAgICBoZWlnaHQ6IDUzMHB4O1xuICAgICAgICB9XG4gICAgICAgIC5zdGF0aWMtZmFsbGJhY2sge1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5kaXNwbGF5LXN1cnJvdW5kLFxuICAgICAgICAuZGVtby12aWRlbyB7XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC1tb2JpbGUtb25seSkge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBhIHtcblxuICAgICAgICAgICAgQGluY2x1ZGUgc3BhbigzMiBvZiAxMik7XG4gICAgICAgICAgICBAaW5jbHVkZSBwdWxsKDEwKTtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHNwYW4oMTQgb2YgMTIpO1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHB1bGwoMSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IC0yMDFweDtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAuOTk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgdmlkZW8ge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogLTEyMDBweDtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAzOXB4O1xuICAgICAgICAgICAgd2lkdGg6IDc0NnB4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgW2lkPVwiaW50cm8tY3RhXCJdIHtcbiAgICAgICAgQGluY2x1ZGUgYWRhcHRpdmUtY29udGFpbmVyO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA1MHB4O1xuICAgICAgICAuY2FsbC10by1hY3Rpb24ge1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgc3BhbigxMCk7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgcHVzaCgxKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGEuY3RhIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmNhbGwtdG8tYWN0aW9uLWxpbmtzIHtcbiAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDI4MHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIFtpZD1cImZlYXR1cmVkLXByb2R1Y3RzXCJdIHtcbiAgICAgICAgYmFja2dyb3VuZDogcmdiYSgwLDAsMCwuMSk7XG4gICAgfVxuXG4gICAgW2lkPVwiZ2FtZXItdGVzdGltb25pYWxzXCJdIHtcbiAgICAgICAgQGluY2x1ZGUgYWRhcHRpdmUtY29udGFpbmVyO1xuICAgICAgICBtYXJnaW4tdG9wOiA1MHB4O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA1MHB4O1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDgwcHg7XG4gICAgICAgIH1cbiAgICAgICAgLnRlc3RpbW9uaWFsLWNvbnRhaW5lciB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiA1MHB4O1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cbiAgICAgICAgLnRlc3RpbW9uaWFsIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHNwYW4oMTIpO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNTBweDtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGdhbGxlcnkoNiBvZiAxMik7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHNwYW4oMiBicmVhayk7XG4gICAgICAgICAgICB3aWR0aDogNDBweDtcbiAgICAgICAgfVxuICAgICAgICAucXVvdGUge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMHB4O1xuICAgICAgICAgICAgQGluY2x1ZGUgc3BhbigxMCBsYXN0KTtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogLTJweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5wZXJzb24ge1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDEycHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMHB4O1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItdGV4dC1lbXBoYXNpemVkO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIFtpZD1cImZlYXR1cmVkLWdhbWVzXCJdIHtcbiAgICAgICAgYmFja2dyb3VuZDogIzIzMjMyMyBub25lIHJlcGVhdCAwIDA7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkY29sb3ItdGV4dC1leHRyYWRpbTtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDgwcHg7XG4gICAgICAgIHBhZGRpbmctdG9wOiAyMHB4O1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDUwcHggYXV0bztcbiAgICAgICAgfVxuICAgICAgICAuZ2FtZXMtd3JhcCB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNjBweDtcbiAgICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICAgICAgIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5nYW1lcyB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICAgICAgdG9wOiAxN3B4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAuZ2FtZXMtbGlzdCB7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIC5nYW1lLWJhY2tncm91bmQge1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy90cmFja2lyLWVuaGFuY2VkLWdhbWVzLXZlcnRpY2FsLnBuZyk7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiA0MDBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvdHJhY2tpci1lbmhhbmNlZC1nYW1lcy1ob3Jpem9udGFsLnBuZyk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAyMTBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogYXV0byBhdXRvO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAudHlwZWQtY3Vyc29ye1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICBhbmltYXRpb246IGN1cnNvci1ibGluayAxcyBpbmZpbml0ZTtcbiAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LXN0YWNrLWRlZmF1bHQ7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiAxMDA7XG4gICAgICAgIEBrZXlmcmFtZXMgY3Vyc29yLWJsaW5rIHtcbiAgICAgICAgICAgIDAlIHsgb3BhY2l0eToxOyB9XG4gICAgICAgICAgICA1MCUgeyBvcGFjaXR5OjA7IH1cbiAgICAgICAgICAgIDEwMCUgeyBvcGFjaXR5OjE7IH1cbiAgICAgICAgfVxuICAgIH1cbiAgICBmb290ZXIge1xuICAgICAgICBvcGFjaXR5OiAuOTk7XG4gICAgICAgIGJhY2tncm91bmQ6ICMyMzIzMjMgbm9uZSByZXBlYXQgMCAwO1xuICAgIH1cbn1cbiIsIi8vIERpcmVjdGlvbiBIZWxwZXJzXG4vLyA9PT09PT09PT09PT09PT09PVxuXG4vLyBTdXN5IEZsb3cgRGVmYXVsdHNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gLSBQUklWQVRFXG5AaW5jbHVkZSBzdXN5LWRlZmF1bHRzKChcbiAgZmxvdzogbHRyLFxuKSk7XG5cbi8vIEdldCBEaXJlY3Rpb25cbi8vIC0tLS0tLS0tLS0tLS1cbi8vIFJldHVybiB0aGUgJ2Zyb20nIG9yICd0bycgZGlyZWN0aW9uIG9mIGEgbHRyIG9yIHJ0bCBmbG93LlxuLy8gLSBbJGZsb3ddICA6IGx0ciB8IHJ0bFxuLy8gLSBbJGtleV0gICA6IGZyb20gfCB0b1xuQGZ1bmN0aW9uIGdldC1kaXJlY3Rpb24oXG4gICRmbG93OiBtYXAtZ2V0KCRzdXN5LWRlZmF1bHRzLCBmbG93KSxcbiAgJGtleTogZnJvbVxuKSB7XG4gICRyZXR1cm46IGlmKCRmbG93ID09IHJ0bCwgKGZyb206IHJpZ2h0LCB0bzogbGVmdCksIChmcm9tOiBsZWZ0LCB0bzogcmlnaHQpKTtcbiAgQHJldHVybiBtYXAtZ2V0KCRyZXR1cm4sICRrZXkpO1xufVxuXG4vLyBUb1xuLy8gLS1cbi8vIFJldHVybiB0aGUgJ3RvJyBkaXJlY3Rpb24gb2YgYSBmbG93XG4vLyAtIFskZmxvd10gIDogbHRyIHwgcnRsXG5AZnVuY3Rpb24gdG8oXG4gICRmbG93OiBtYXAtZ2V0KCRzdXN5LWRlZmF1bHRzLCBmbG93KVxuKSB7XG4gIEByZXR1cm4gZ2V0LWRpcmVjdGlvbigkZmxvdywgdG8pO1xufVxuXG4vLyBGcm9tXG4vLyAtLS0tXG4vLyBSZXR1cm4gdGhlICdmcm9tJyBkaXJlY3Rpb24gb2YgYSBmbG93XG4vLyAtIFskZmxvd10gIDogbHRyIHwgcnRsXG5AZnVuY3Rpb24gZnJvbShcbiAgJGZsb3c6IG1hcC1nZXQoJHN1c3ktZGVmYXVsdHMsIGZsb3cpXG4pIHtcbiAgQHJldHVybiBnZXQtZGlyZWN0aW9uKCRmbG93LCBmcm9tKTtcbn1cbiIsIi8vIEd1dHRlciBTeW50YXhcbi8vID09PT09PT09PT09PT1cblxuXG4vLyBHdXR0ZXJzXG4vLyAtLS0tLS0tXG4vLyBTZXQgZ3V0dGVycyBvbiBhbiBlbGVtZW50LlxuLy8gLSBbJHNwYW5dICAgOiA8c2V0dGluZ3M+XG5AbWl4aW4gZ3V0dGVycyhcbiAgJHNwYW46ICRzdXN5XG4pIHtcbiAgJGluc3BlY3QgIDogJHNwYW47XG4gICRzcGFuICAgICA6IHBhcnNlLWd1dHRlcnMoJHNwYW4pO1xuICAkX2d1dHRlcnMgOiBnZXQtZ3V0dGVycygkc3Bhbik7XG5cbiAgJF9vdXRwdXQ6IChcbiAgICBiZWZvcmU6IG1hcC1nZXQoJF9ndXR0ZXJzLCBiZWZvcmUpLFxuICAgIGFmdGVyOiBtYXAtZ2V0KCRfZ3V0dGVycywgYWZ0ZXIpLFxuICAgIGZsb3c6IHN1c3ktZ2V0KGZsb3csICRzcGFuKSxcbiAgKTtcblxuICBAaW5jbHVkZSBzdXN5LWluc3BlY3QoZ3V0dGVycywgJGluc3BlY3QpO1xuXG4gIEBpZiBpcy1pbnNpZGUoJHNwYW4pIHtcbiAgICBAaW5jbHVkZSBwYWRkaW5nLW91dHB1dCgkX291dHB1dC4uLik7XG4gIH0gQGVsc2Uge1xuICAgIEBpbmNsdWRlIG1hcmdpbi1vdXRwdXQoJF9vdXRwdXQuLi4pO1xuICB9XG59XG5cbkBtaXhpbiBndXR0ZXIoXG4gICRzcGFuOiAkc3VzeVxuKSB7XG4gIEBpbmNsdWRlIGd1dHRlcnMoJHNwYW4pO1xufVxuXG5cbi8vIEd1dHRlclxuLy8gLS0tLS0tXG4vLyBSZXR1cm4gdGhlIHdpZHRoIG9mIGEgZ3V0dGVyLlxuLy8gLSBbJHNwYW5dICAgOiA8c2V0dGluZ3M+XG5AZnVuY3Rpb24gZ3V0dGVyKFxuICAkc3BhbjogJHN1c3lcbikge1xuICAkc3BhbjogcGFyc2UtZ3V0dGVycygkc3Bhbik7XG5cbiAgJF9ndXR0ZXJzOiBnZXQtZ3V0dGVycygkc3Bhbik7XG4gICRfZ3V0dGVyczogbWFwLWdldCgkX2d1dHRlcnMsIGJlZm9yZSkgb3IgbWFwLWdldCgkX2d1dHRlcnMsIGFmdGVyKTtcblxuICBAcmV0dXJuICRfZ3V0dGVycztcbn1cblxuQGZ1bmN0aW9uIGd1dHRlcnMoXG4gICRzcGFuOiAkc3VzeVxuKSB7XG4gIEByZXR1cm4gZ3V0dGVyKCRzcGFuKTtcbn1cblxuXG4vLyBHZXQgR3V0dGVyIFdpZHRoXG4vLyAtLS0tLS0tLS0tLS0tLS0tXG4vLyBSZXR1cm4gZ3V0dGVyIHdpZHRoLlxuLy8gLSBbJGNvbnRleHRdOiA8Y29udGV4dD5cbkBmdW5jdGlvbiBnZXQtZ3V0dGVyLXdpZHRoKFxuICAkY29udGV4dDogJHN1c3lcbikge1xuICAkY29udGV4dCAgOiBwYXJzZS1ndXR0ZXJzKCRjb250ZXh0KTtcblxuICAkX2d1dHRlcnMgOiBzdXN5LWdldChndXR0ZXJzLCAkY29udGV4dCk7XG4gICRfZ3V0dGVyICA6IHN1c3ktZ2V0KGd1dHRlci1vdmVycmlkZSwgJGNvbnRleHQpO1xuXG4gIEBpZiAkX2d1dHRlcnMgYW5kICgkX2d1dHRlcnMgPiAwKSBhbmQgbm90KCRfZ3V0dGVyKSB7XG4gICAgJF9jb2x1bW4td2lkdGg6IHN1c3ktZ2V0KGNvbHVtbi13aWR0aCwgJGNvbnRleHQpO1xuICAgICRfbWF0aDogZ3V0dGVyLW1hdGgoJGNvbnRleHQpO1xuICAgIEBpZiAkX21hdGggPT0gc3RhdGljIHtcbiAgICAgICRfZ3V0dGVyOiAkX2d1dHRlcnMgKiB2YWxpZC1jb2x1bW4tbWF0aCgkX21hdGgsICRfY29sdW1uLXdpZHRoKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgICRfY29sdW1ucyA6IHN1c3ktZ2V0KGNvbHVtbnMsICRjb250ZXh0KTtcbiAgICAgICRfc3ByZWFkICA6IGlmKGlzLXNwbGl0KCRjb250ZXh0KSwgd2lkZSwgc3VzeS1nZXQoc3ByZWFkLCAkY29udGV4dCkpO1xuICAgICAgJF9ndXR0ZXIgIDogcGVyY2VudGFnZSgkX2d1dHRlcnMgLyBzdXN5LXN1bSgkX2NvbHVtbnMsICRfZ3V0dGVycywgJF9zcHJlYWQpKTtcbiAgICB9XG4gIH1cblxuICAkX2d1dHRlcjogaWYoJF9ndXR0ZXIgPT0gJ25vLWd1dHRlcnMnIG9yICRfZ3V0dGVyID09ICduby1ndXR0ZXInLCBudWxsLCAkX2d1dHRlcik7XG5cbiAgQHJldHVybiAkX2d1dHRlcjtcbn1cblxuXG4vLyBHZXQgR3V0dGVyc1xuLy8gLS0tLS0tLS0tLS1cbi8vIFJldHVybiBiZWZvcmUgYW5kIGFmdGVyIGd1dHRlciB2YWx1ZXMuXG4vLyAtIFskY29udGV4dF06IDxjb250ZXh0PlxuQGZ1bmN0aW9uIGdldC1ndXR0ZXJzKFxuICAkY29udGV4dDogJHN1c3lcbikge1xuICAkY29udGV4dCAgICAgICAgICAgIDogcGFyc2UtZ3V0dGVycygkY29udGV4dCk7XG5cbiAgJF9ndXR0ZXItcG9zaXRpb24gICA6IHN1c3ktZ2V0KGd1dHRlci1wb3NpdGlvbiwgJGNvbnRleHQpO1xuICAkX2d1dHRlciAgICAgICAgICAgIDogZ2V0LWd1dHRlci13aWR0aCgkY29udGV4dCk7XG5cbiAgJF9yZXR1cm4gICAgICAgICAgICA6IChiZWZvcmU6IG51bGwsIGFmdGVyOiBudWxsKTtcblxuICBAaWYgaXMtc3BsaXQoJGNvbnRleHQpIGFuZCAkX2d1dHRlciB7XG4gICAgJF9ndXR0ZXI6ICRfZ3V0dGVyIC8gMjtcbiAgICAkX3JldHVybjogbWFwLW1lcmdlKCRfcmV0dXJuLCAoYmVmb3JlOiAkX2d1dHRlciwgYWZ0ZXI6ICRfZ3V0dGVyKSk7XG4gIH0gQGVsc2Uge1xuICAgICRfcmV0dXJuOiBtYXAtbWVyZ2UoJF9yZXR1cm4sICgkX2d1dHRlci1wb3NpdGlvbjogJF9ndXR0ZXIpKTtcbiAgfVxuXG4gIEByZXR1cm4gJF9yZXR1cm47XG59XG5cblxuLy8gSXMgSW5zaWRlXG4vLyAtLS0tLS0tLS1cbi8vIFJldHVybnMgdHJ1ZSBpZiBndXR0ZXJzIGFyZSBpbnNpZGUuXG4vLyAkY29udGV4dDogPGNvbnRleHQ+XG5AZnVuY3Rpb24gaXMtaW5zaWRlKFxuICAkY29udGV4dFxuKSB7XG4gICRfaW5zaWRlOiBpbnNpZGUgaW5zaWRlLXN0YXRpYztcbiAgJF9ndXR0ZXItcG9zaXRpb246IHN1c3ktZ2V0KGd1dHRlci1wb3NpdGlvbiwgJGNvbnRleHQpO1xuXG4gIEByZXR1cm4gaWYoaW5kZXgoJF9pbnNpZGUsICRfZ3V0dGVyLXBvc2l0aW9uKSwgdHJ1ZSwgZmFsc2UpO1xufVxuXG5cbi8vIElzIFNwbGl0XG4vLyAtLS0tLS0tLVxuLy8gUmV0dXJucyB0cnVlIGlmIGd1dHRlcnMgYXJlIHNwbGl0LlxuLy8gJGNvbnRleHQ6IDxjb250ZXh0PlxuQGZ1bmN0aW9uIGlzLXNwbGl0KFxuICAkY29udGV4dFxuKSB7XG4gICRfc3BsaXQ6IHNwbGl0IGluc2lkZSBpbnNpZGUtc3RhdGljO1xuICAkX2d1dHRlci1wb3NpdGlvbjogc3VzeS1nZXQoZ3V0dGVyLXBvc2l0aW9uLCAkY29udGV4dCk7XG5cbiAgQHJldHVybiBpZihpbmRleCgkX3NwbGl0LCAkX2d1dHRlci1wb3NpdGlvbiksIHRydWUsIGZhbHNlKTtcbn1cblxuXG4vLyBHdXR0ZXIgTWF0aFxuLy8gLS0tLS0tLS0tLS1cbi8vIFJldHVybiB0aGUgbWF0aCB0byB1c2UgZm9yIGd1dHRlciBjYWxjdWxhdGlvbnNcbi8vICRjb250ZXh0OiA8Y29udGV4dD5cbkBmdW5jdGlvbiBndXR0ZXItbWF0aChcbiAgJGNvbnRleHQ6ICRzdXN5XG4pIHtcbiAgJF9yZXR1cm4gIDogc3VzeS1nZXQobWF0aCwgJGNvbnRleHQpO1xuICAkX3JldHVybiAgOiBpZihzdXN5LWdldChndXR0ZXItcG9zaXRpb24sICRjb250ZXh0KSA9PSBpbnNpZGUtc3RhdGljLCBzdGF0aWMsICRfcmV0dXJuKTtcblxuICBAcmV0dXJuICRfcmV0dXJuO1xufVxuIiwiLy8gTWFyZ2luIFN5bnRheFxuLy8gPT09PT09PT09PT09PVxuXG4vLyBQcmVcbi8vIC0tLVxuLy8gQWRkIHNwYW5uaW5nLW1hcmdpbnMgYmVmb3JlIGFuIGVsZW1lbnQuXG4vLyAtICRzcGFuICA6IDxzcGFuPlxuQG1peGluIHByZShcbiAgJHNwYW5cbikge1xuICAkaW5zcGVjdDogJHNwYW47XG4gICRzcGFuICAgOiBtYXAtbWVyZ2UoKHNwcmVhZDogd2lkZSksIHBhcnNlLXNwYW4oJHNwYW4pKTtcbiAgJGZsb3cgICA6IHN1c3ktZ2V0KGZsb3csICRzcGFuKTtcbiAgJHNwbGl0ICA6IGlmKHN1c3ktZ2V0KGd1dHRlci1wb3NpdGlvbiwgJHNwYW4pID09IHNwbGl0LCB0cnVlLCBmYWxzZSk7XG4gICRndXR0ZXIgOiBndXR0ZXIoJHNwYW4pO1xuICAkc3BhbiAgIDogc3Bhbigkc3Bhbik7XG4gICR3aWR0aCAgOiBpZigkc3BsaXQgYW5kICRndXR0ZXIsICRzcGFuICsgJGd1dHRlciwgJHNwYW4pO1xuXG4gIEBpbmNsdWRlIHN1c3ktaW5zcGVjdChwcmUsICRpbnNwZWN0KTtcbiAgQGluY2x1ZGUgbWFyZ2luLW91dHB1dCgkd2lkdGgsIG51bGwsICRmbG93KTtcbn1cblxuLy8gUG9zdFxuLy8gLS0tLVxuLy8gQWRkIHNwYW5uaW5nLW1hcmdpbnMgYWZ0ZXIgYW4gZWxlbWVudC5cbi8vIC0gJHNwYW4gIDogPHNwYW4+XG5AbWl4aW4gcG9zdChcbiAgJHNwYW5cbikge1xuICAkaW5zcGVjdCAgOiAkc3BhbjtcbiAgJHNwYW4gICAgIDogbWFwLW1lcmdlKChzcHJlYWQ6IHdpZGUpLCBwYXJzZS1zcGFuKCRzcGFuKSk7XG4gICRmbG93ICAgICA6IHN1c3ktZ2V0KGZsb3csICRzcGFuKTtcbiAgJHNwbGl0ICAgIDogaWYoc3VzeS1nZXQoZ3V0dGVyLXBvc2l0aW9uLCAkc3BhbikgPT0gc3BsaXQsIHRydWUsIGZhbHNlKTtcbiAgJHdpZHRoICAgIDogaWYoJHNwbGl0LCBzcGFuKCRzcGFuKSArIGd1dHRlcigkc3BhbiksIHNwYW4oJHNwYW4pKTtcblxuICBAaW5jbHVkZSBzdXN5LWluc3BlY3QocG9zdCwgJGluc3BlY3QpO1xuICBAaW5jbHVkZSBtYXJnaW4tb3V0cHV0KG51bGwsICR3aWR0aCwgJGZsb3cpO1xufVxuXG4vLyBQdXNoXG4vLyAtLS0tXG4vLyBTaW1wbGUgc3lub255bW4gZm9yIHByZS5cbi8vIC0gJHNwYW4gIDogPHNwYW4+XG5AbWl4aW4gcHVzaChcbiAgJHNwYW5cbikge1xuICBAaW5jbHVkZSBwcmUoJHNwYW4pO1xufVxuXG4vLyBQdWxsXG4vLyAtLS0tXG4vLyBBZGQgbmVnYXRpdmUgc3Bhbm5pbmctbWFyZ2lucyBiZWZvcmUgYW4gZWxlbWVudC5cbi8vIC0gJHNwYW4gIDogPHNwYW4+XG5AbWl4aW4gcHVsbChcbiAgJHNwYW5cbikge1xuICAkaW5zcGVjdCAgOiAkc3BhbjtcbiAgJHNwYW4gICAgIDogbWFwLW1lcmdlKChzcHJlYWQ6IHdpZGUpLCBwYXJzZS1zcGFuKCRzcGFuKSk7XG4gICRmbG93ICAgICA6IHN1c3ktZ2V0KGZsb3csICRzcGFuKTtcbiAgJHNwbGl0ICAgIDogaWYoc3VzeS1nZXQoZ3V0dGVyLXBvc2l0aW9uLCAkc3BhbikgPT0gc3BsaXQsIHRydWUsIGZhbHNlKTtcbiAgJHdpZHRoICAgIDogaWYoJHNwbGl0LCAwIC0gc3Bhbigkc3BhbikgKyBndXR0ZXIoJHNwYW4pLCAwIC0gc3Bhbigkc3BhbikpO1xuXG4gIEBpbmNsdWRlIHN1c3ktaW5zcGVjdChwdWxsLCAkaW5zcGVjdCk7XG4gIEBpbmNsdWRlIG1hcmdpbi1vdXRwdXQoJHdpZHRoLCBudWxsLCAkZmxvdyk7XG59XG5cbi8vIFNxdWlzaFxuLy8gLS0tLS0tXG4vLyBBZGQgc3Bhbm5pbmctbWFyZ2lucyBiZWZvcmUgYW5kIGFmdGVyIGFuIGVsZW1lbnQuXG4vLyAtICRwcmUgICAgIDogPHNwYW4+XG4vLyAtIFskcG9zdF0gIDogPHNwYW4+XG5AbWl4aW4gc3F1aXNoKFxuICAkcHJlLFxuICAkcG9zdDogZmFsc2Vcbikge1xuICAkaW5zcGVjdCAgICAgIDogJHByZSwgJHBvc3Q7XG4gICRwcmUgICAgICAgICAgOiBtYXAtbWVyZ2UoKHNwcmVhZDogd2lkZSksIHBhcnNlLXNwYW4oJHByZSkpO1xuXG4gIEBpZiAkcG9zdCB7XG4gICAgJHBvc3Q6IG1hcC1tZXJnZSgoc3ByZWFkOiB3aWRlKSwgcGFyc2Utc3BhbigkcG9zdCkpO1xuICB9IEBlbHNlIHtcbiAgICAkc3Bhbjogc3VzeS1nZXQoc3BhbiwgJHByZSk7XG4gICAgQGlmIGxlbmd0aCgkc3BhbikgPiAxIHtcbiAgICAgICRwcmU6IG1hcC1tZXJnZSgkcHJlLCAoc3BhbjogbnRoKCRzcGFuLCAxKSkpO1xuICAgICAgJHBvc3Q6IG1hcC1tZXJnZSgkcHJlLCAoc3BhbjogbnRoKCRzcGFuLCAyKSkpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgJHBvc3Q6ICRwcmU7XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgc3VzeS1pbnNwZWN0KHNxdWlzaCwgJGluc3BlY3QuLi4pO1xuICBAaW5jbHVkZSBwcmUoJHByZSk7XG4gIEBpbmNsdWRlIHBvc3QoJHBvc3QpO1xufVxuIiwiLy8gR2FsbGVyeSBTeW50YXhcbi8vID09PT09PT09PT09PT09XG5cbi8vIEdhbGxlcnlcbi8vIC0tLS0tLS1cbi8vIENyZWF0ZSBhbiBpc29sYXRlZCBnYWxsZXJ5XG4vLyAtICRzcGFuICAgICAgICA6IDxzcGFuPlxuLy8gLSBbJHNlbGVjdG9yXSAgOiBjaGlsZCB8IG9mLXR5cGVcbkBtaXhpbiBnYWxsZXJ5KFxuICAkc3BhbixcbiAgJHNlbGVjdG9yOiBjaGlsZFxuKSB7XG4gICRpbnNwZWN0ICAgIDogJHNwYW47XG4gICRzcGFuICAgICAgIDogcGFyc2Utc3Bhbigkc3Bhbik7XG4gICRzcGFuICAgICAgIDogbWFwLW1lcmdlKCRzcGFuLCAobG9jYXRpb246IDEpKTtcblxuICAkbiAgICAgICAgICAgIDogc3VzeS1nZXQoc3BhbiwgJHNwYW4pO1xuICAkY29sdW1ucyAgICAgIDogc3VzeS1nZXQoY29sdW1ucywgJHNwYW4pO1xuICAkY29udGV4dCAgICAgIDogc3VzeS1jb3VudCgkY29sdW1ucyk7XG4gICRmbG93ICAgICAgICAgOiBzdXN5LWdldChmbG93LCAkc3Bhbik7XG5cbiAgJGluc2lkZSAgICAgICA6IGlzLWluc2lkZSgkc3Bhbik7XG4gICRmcm9tICAgICAgICAgOiBmcm9tKCRmbG93KTtcbiAgJGxpbmUgICAgICAgICA6IGZsb29yKCRjb250ZXh0IC8gJG4pO1xuICAkc3ltbWV0cmljYWwgIDogaXMtc3ltbWV0cmljYWwoJGNvbHVtbnMpO1xuXG4gICRvdXRwdXQ6IChcbiAgICB3aWR0aCAgICAgICAgICAgICA6IG51bGwsXG4gICAgZmxvYXQgICAgICAgICAgICAgOiBmcm9tLFxuICAgIG1hcmdpbi1iZWZvcmUgICAgIDogbnVsbCxcbiAgICBtYXJnaW4tYWZ0ZXIgICAgICA6IG51bGwsXG4gICAgcGFkZGluZy1iZWZvcmUgICAgOiBudWxsLFxuICAgIHBhZGRpbmctYWZ0ZXIgICAgIDogbnVsbCxcbiAgICBmbG93ICAgICAgICAgICAgICA6ICRmbG93LFxuICApO1xuXG4gIEBpZiAkaW5zaWRlIHtcbiAgICAkZ3V0dGVyczogZ2V0LWd1dHRlcnMoJHNwYW4pO1xuICAgICRvdXRwdXQ6IG1hcC1tZXJnZSgkb3V0cHV0LCAoXG4gICAgICBwYWRkaW5nLWJlZm9yZTogbWFwLWdldCgkZ3V0dGVycywgYmVmb3JlKSxcbiAgICAgIHBhZGRpbmctYWZ0ZXI6IG1hcC1nZXQoJGd1dHRlcnMsIGFmdGVyKSxcbiAgICApKTtcbiAgfVxuXG4gIEBpZiAkc3ltbWV0cmljYWwge1xuICAgICRvdXRwdXQ6IG1hcC1tZXJnZSgkb3V0cHV0LCAod2lkdGg6IGdldC1zcGFuLXdpZHRoKCRzcGFuKSkpO1xuICB9XG5cbiAgJGJveCAgICAgICAgICA6IHN1c3ktZ2V0KGJveC1zaXppbmcsICRzcGFuKTtcbiAgJGdsb2JhbC1ib3ggICA6IGlmKHN1c3ktZ2V0KGdsb2JhbC1ib3gtc2l6aW5nKSA9PSAnYm9yZGVyLWJveCcsIHRydWUsIGZhbHNlKTtcblxuICBAaW5jbHVkZSBzdXN5LWluc3BlY3QoZ2FsbGVyeSwgJGluc3BlY3QpO1xuXG4gIC8vIENvbGxlY3RpdmUgT3V0cHV0XG4gIEBpZiAkYm94ID09IGJvcmRlci1ib3ggb3IgKCRpbnNpZGUgYW5kIG5vdCgkYm94KSBhbmQgbm90KCRnbG9iYWwtYm94KSkge1xuICAgIEBpbmNsdWRlIG91dHB1dCgoYm94LXNpemluZzogYm9yZGVyLWJveCkpO1xuICB9IEBlbHNlIGlmICRib3ggPT0gY29udGVudC1ib3gge1xuICAgIEBpbmNsdWRlIG91dHB1dCgoYm94LXNpemluZzogY29udGVudC1ib3gpKTtcbiAgfVxuXG4gIEBpbmNsdWRlIGZsb2F0LXNwYW4tb3V0cHV0KCRvdXRwdXQuLi4pO1xuXG4gIC8vIEluZGl2aWR1YWwgTG9vcFxuICBAZm9yICRpdGVtIGZyb20gMSB0aHJvdWdoICRsaW5lIHtcbiAgICAkbnRoOiAnI3skbGluZX1uICsgI3skaXRlbX0nO1xuICAgICY6bnRoLSN7JHNlbGVjdG9yfSgjeyRudGh9KSB7XG4gICAgICAvLyBJbmRpdmlkdWFsIFByZXBcbiAgICAgICRvdXRwdXQ6IChcbiAgICAgICAgd2lkdGggICAgICAgICAgICAgOiBpZigkc3ltbWV0cmljYWwsIG51bGwsIGdldC1zcGFuLXdpZHRoKCRzcGFuKSksXG4gICAgICAgIGZsb2F0ICAgICAgICAgICAgIDogbnVsbCxcbiAgICAgICAgbWFyZ2luLWJlZm9yZSAgICAgOiBnZXQtaXNvbGF0aW9uKCRzcGFuKSxcbiAgICAgICAgbWFyZ2luLWFmdGVyICAgICAgOiAtMTAwJSxcbiAgICAgICAgcGFkZGluZy1iZWZvcmUgICAgOiBudWxsLFxuICAgICAgICBwYWRkaW5nLWFmdGVyICAgICA6IG51bGwsXG4gICAgICAgIGZsb3cgICAgICAgICAgICAgIDogJGZsb3csXG4gICAgICApO1xuXG4gICAgICAvLyBJbmRpdmlkdWFsIE91dHB1dFxuICAgICAgQGluY2x1ZGUgZmxvYXQtc3Bhbi1vdXRwdXQoJG91dHB1dC4uLik7XG5cbiAgICAgIEBpZiBnZXQtZWRnZSgkc3BhbikgPT0gZmlyc3Qge1xuICAgICAgICBAaW5jbHVkZSBicmVhaztcbiAgICAgICAgQGluY2x1ZGUgZmlyc3QoJHNwYW4pO1xuICAgICAgfSBAZWxzZSB7XG4gICAgICAgIEBpbmNsdWRlIG5vYnJlYWs7XG4gICAgICB9XG5cbiAgICAgIC8vIEluZGl2aWR1YWwgTG9jYXRpb24gSW5jcmVtZW50XG4gICAgICAkbG9jYXRpb246IGdldC1sb2NhdGlvbigkc3BhbikgKyAkbjtcbiAgICAgICRsb2NhdGlvbjogaWYoJGxvY2F0aW9uID4gJGNvbnRleHQsIDEsICRsb2NhdGlvbik7XG4gICAgICAkc3BhbjogbWFwLW1lcmdlKCRzcGFuLCAobG9jYXRpb246ICRsb2NhdGlvbikpO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gUm93IFN0YXJ0ICYgRW5kXG4vLyA9PT09PT09PT09PT09PT1cblxuLy8gQnJlYWtcbi8vIC0tLS0tXG4vLyBBcHBseSB0byBhbnkgZWxlbWVudCB0aGF0IHNob3VsZCBmb3JjZSBhIGxpbmUgYnJlYWsuXG5AbWl4aW4gYnJlYWsge1xuICBAaW5jbHVkZSBvdXRwdXQoKGNsZWFyOiBib3RoKSk7XG59XG5cblxuLy8gTm9CcmVha1xuLy8gLS0tLS0tLVxuLy8gQ2FuY2VsIHRoZSBicmVhaygpIGVmZmVjdCwgZS5nLiB3aGVuIHVzaW5nIG1lZGlhIHF1ZXJpZXMuXG5AbWl4aW4gbm9icmVhayB7XG4gIEBpbmNsdWRlIG91dHB1dCgoY2xlYXI6IG5vbmUpKTtcbn1cblxuXG4vLyBGdWxsXG4vLyAtLS0tXG4vLyAtIFskY29udGV4dF06IDxsYXlvdXQgc2hvcnRoYW5kPlxuQG1peGluIGZ1bGwoXG4gICRjb250ZXh0OiAkc3VzeVxuKSB7XG4gICRpbnNwZWN0IDogJGNvbnRleHQ7XG4gIEBpbmNsdWRlIHN1c3ktaW5zcGVjdChmdWxsLCAkaW5zcGVjdCk7XG4gIEBpbmNsdWRlIHNwYW4oZnVsbCBvZiBwYXJzZS1ncmlkKCRjb250ZXh0KSBicmVhayk7XG59XG5cblxuLy8gRmlyc3Rcbi8vIC0tLS0tXG4vLyAtIFskY29udGV4dF06IDxzZXR0aW5ncz5cbkBtaXhpbiBmaXJzdChcbiAgJGNvbnRleHQ6ICRzdXN5XG4pIHtcbiAgJGluc3BlY3QgIDogJGNvbnRleHQ7XG4gICRjb250ZXh0ICA6IHBhcnNlLWdyaWQoJGNvbnRleHQpO1xuICAkZmxvdyAgICAgOiBzdXN5LWdldChmbG93LCAkY29udGV4dCk7XG5cbiAgQGluY2x1ZGUgc3VzeS1pbnNwZWN0KGZpcnN0LCAkaW5zcGVjdCk7XG4gIEBpZiBub3QoaXMtc3BsaXQoJGNvbnRleHQpKSB7XG4gICAgQGluY2x1ZGUgZmxvYXQtZmlyc3QoJGZsb3cpO1xuICB9XG59XG5cbkBtaXhpbiBhbHBoYShcbiAgJGNvbnRleHQ6ICRzdXN5XG4pIHtcbiAgQGluY2x1ZGUgZmlyc3QoJGNvbnRleHQpO1xufVxuXG5cbi8vIExhc3Rcbi8vIC0tLS1cbi8vIC0gWyRjb250ZXh0XTogPHNldHRpbmdzPlxuQG1peGluIGxhc3QoXG4gICRjb250ZXh0OiAkc3VzeVxuKSB7XG4gICRpbnNwZWN0ICA6ICRjb250ZXh0O1xuICAkY29udGV4dCAgOiBwYXJzZS1ncmlkKCRjb250ZXh0KTtcblxuICBAaW5jbHVkZSBzdXN5LWluc3BlY3QobGFzdCwgJGluc3BlY3QpO1xuXG4gICRvdXRwdXQ6IChcbiAgICBmbG93OiBzdXN5LWdldChmbG93LCAkY29udGV4dCksXG4gICAgbGFzdC1mbG93OiBzdXN5LWdldChsYXN0LWZsb3csICRjb250ZXh0KSxcbiAgICBtYXJnaW46IGlmKGlzLXNwbGl0KCRjb250ZXh0KSwgbnVsbCwgMCksXG4gICk7XG5cbiAgQGluY2x1ZGUgZmxvYXQtbGFzdCgkb3V0cHV0Li4uKTtcbn1cblxuQG1peGluIG9tZWdhKFxuICAkY29udGV4dDogJHN1c3lcbikge1xuICBAaW5jbHVkZSBsYXN0KCRjb250ZXh0KTtcbn1cblxuXG4vLyBHZXQgRWRnZVxuLy8gLS0tLS0tLS1cbi8vIENhbGN1bGF0ZSBlZGdlIHZhbHVlIGJhc2VkIG9uIGxvY2F0aW9uLCBpZiBwb3NzaWJsZVxuQGZ1bmN0aW9uIGdldC1lZGdlKFxuICAkc3BhblxuKSB7XG4gICRzcGFuICAgICAgIDogcGFyc2Utc3Bhbigkc3Bhbik7XG4gICRlZGdlICAgICAgIDogc3VzeS1nZXQoZWRnZSwgJHNwYW4pO1xuXG4gIEBpZiBub3QoJGVkZ2UpIHtcbiAgICAkY291bnQ6IHN1c3ktY291bnQoc3VzeS1nZXQoY29sdW1ucywgJHNwYW4pKTtcbiAgICAkbG9jYXRpb246IHN1c3ktZ2V0KGxvY2F0aW9uLCAkc3Bhbik7XG4gICAgJG46IHN1c3ktZ2V0KHNwYW4sICRzcGFuKTtcblxuICAgICRudW1iZXI6IGlmKHR5cGUtb2YoJGxvY2F0aW9uKSA9PSBudW1iZXIsIHRydWUsIGZhbHNlKTtcbiAgICAkaW5kZXg6IGlmKCRudW1iZXIgYW5kIHVuaXRsZXNzKCRsb2NhdGlvbiksIHRydWUsIGZhbHNlKTtcblxuICAgIEBpZiAkbiA9PSAkY291bnQge1xuICAgICAgJGVkZ2U6IGZ1bGw7XG4gICAgfSBAZWxzZSBpZiAkbG9jYXRpb24gYW5kICRuIGFuZCAkaW5kZXgge1xuICAgICAgQGlmICRsb2NhdGlvbiA9PSAxIHtcbiAgICAgICAgJGVkZ2U6IGlmKCRuID09ICRjb3VudCwgZnVsbCwgZmlyc3QpO1xuICAgICAgfSBAZWxzZSBpZiAkbG9jYXRpb24gKyAkbiAtIDEgPT0gJGNvdW50IHtcbiAgICAgICAgJGVkZ2U6IGxhc3Q7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQGlmICRlZGdlID09IGFscGhhIG9yICRlZGdlID09IG9tZWdhIHtcbiAgICAkZWRnZTogaWYoJGVkZ2UgPT0gYWxwaGEsIGZpcnN0LCBsYXN0KTtcbiAgfVxuXG4gIEByZXR1cm4gJGVkZ2U7XG59XG5cblxuLy8gR2V0IExvY2F0aW9uXG4vLyAtLS0tLS0tLS0tLS1cbi8vIENhbGN1bGF0ZSBsb2NhdGlvbiB2YWx1ZSBiYXNlZCBvbiBlZGdlLCBpZiBwb3NzaWJsZVxuQGZ1bmN0aW9uIGdldC1sb2NhdGlvbihcbiAgJHNwYW5cbikge1xuICAkc3BhbiAgICAgICA6IHBhcnNlLXNwYW4oJHNwYW4pO1xuICAkbG9jYXRpb24gICA6IHN1c3ktZ2V0KGxvY2F0aW9uLCAkc3Bhbik7XG4gICRlZGdlICAgICAgIDogZ2V0LWVkZ2UoJHNwYW4pO1xuICAkbiAgICAgICAgICA6IHN1c3ktZ2V0KHNwYW4sICRzcGFuKTtcblxuICBAaWYgJGVkZ2UgYW5kIG5vdCgkbG9jYXRpb24pIGFuZCB0eXBlLW9mKCRuKSA9PSBudW1iZXIgYW5kIHVuaXRsZXNzKCRuKSB7XG4gICAgQGlmICRlZGdlID09IGZpcnN0IHtcbiAgICAgICRsb2NhdGlvbjogMTtcbiAgICB9IEBlbHNlIGlmICRlZGdlID09IGxhc3Qge1xuICAgICAgJGxvY2F0aW9uOiBzdXN5LWNvdW50KHN1c3ktZ2V0KGNvbHVtbnMsICRzcGFuKSkgLSAkbiArIDE7XG4gICAgfVxuICB9XG5cbiAgQHJldHVybiAkbG9jYXRpb25cbn1cbiIsIi8vIEZsb2F0IEVuZHMgQVBJXG4vLyA9PT09PT09PT09PT09PVxuXG4vLyBTdXN5IEVuZCBEZWZhdWx0c1xuLy8gLS0tLS0tLS0tLS0tLS0tLS1cbi8vIC0gUFJJVkFURVxuQGluY2x1ZGUgc3VzeS1kZWZhdWx0cygoXG4gIGxhc3QtZmxvdzogdG8sXG4pKTtcblxuLy8gRmxvYXQgTGFzdFxuLy8gLS0tLS0tLS0tLVxuLy8gLSBbJGZsb3ddICA6IGx0ciB8IHJ0bFxuQG1peGluIGZsb2F0LWxhc3QoXG4gICRmbG93OiBtYXAtZ2V0KCRzdXN5LWRlZmF1bHRzLCBmbG93KSxcbiAgJGxhc3QtZmxvdzogbWFwLWdldCgkc3VzeS1kZWZhdWx0cywgbGFzdC1mbG93KSxcbiAgJG1hcmdpbjogMFxuKSB7XG4gICR0bzogdG8oJGZsb3cpO1xuXG4gICRvdXRwdXQ6IChcbiAgICBmbG9hdDogaWYoJGxhc3QtZmxvdyA9PSB0bywgJHRvLCBudWxsKSxcbiAgICBtYXJnaW4tI3skdG99OiAkbWFyZ2luLFxuICApO1xuXG4gIEBpbmNsdWRlIG91dHB1dCgkb3V0cHV0KTtcbn1cblxuLy8gRmxvYXQgRmlyc3Rcbi8vIC0tLS0tLS0tLS0tXG4vLyAtIFskZmxvd10gIDogbHRyIHwgcnRsXG5AbWl4aW4gZmxvYXQtZmlyc3QoXG4gICRmbG93OiBtYXAtZ2V0KCRzdXN5LWRlZmF1bHRzLCBmbG93KVxuKSB7XG4gICRvdXRwdXQ6IChcbiAgICBtYXJnaW4tI3tmcm9tKCRmbG93KX06IDAsXG4gICk7XG5cbiAgQGluY2x1ZGUgb3V0cHV0KCRvdXRwdXQpO1xufVxuIiwiYm9keS5jYXJ0IHtcbiAgICAuZWRpdGNhcnQge1xuICAgICAgICBAaW5jbHVkZSBhZGFwdGl2ZS1jb250YWluZXI7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICAgICBbaWQ9XCJjb250aW51ZVNob3BwaW5nXCJdIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJ0bjtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDM1cHg7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzNXB4O1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8vIFRoaXMgdGFyZ2V0cyB0aGUgXCJjaGVja291dFwiIGJ1dHRvbi5cbiAgICAgICAgW2lkPVwiY29udGludWVTaG9wcGluZ1wiXSArIGEge1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG4gICAgICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLml0ZW1zIHtcbiAgICAgICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgIH1cbiAgICAgICAgLml0ZW0ge1xuICAgICAgICAgICAgcGFkZGluZzogMjVweCAwcHg7XG4gICAgICAgICAgICBAaW5jbHVkZSBhZGQtYm9yZGVyLWJvdHRvbTtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICBtaW4taGVpZ2h0OiAyMHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLm1vbmlrZXIge1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDI4MHB4O1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgIGgzIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAucGFydC5udW1iZXIge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5wcmljZSB7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogMzQwcHg7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiA2MHB4O1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLm11bHRpcGx5LnNpZ24ge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDQxMHB4XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZmllbGRzZXQge1xuICAgICAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtbW9iaWxlLW9ubHkpIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMTVweCAwO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBpbnB1dFtuYW1lPVwicXVhbnRcIl0ge1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC1tb2JpbGUtb25seSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogLTQwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDkwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogNTBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGJ1dHRvblt0eXBlPVwic3VibWl0XCJdIHtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiBtZWRpdW0gbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMTVweCAwcHg7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLW1vYmlsZS1vbmx5KSB7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuXG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwcHggMHB4O1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgYnV0dG9uW3R5cGU9XCJzdWJtaXRcIl06aG92ZXIsXG4gICAgICAgICAgICAgICAgYnV0dG9uW3R5cGU9XCJzdWJtaXRcIl06YWN0aXZlIHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGZvcm0udXBkYXRlLnF1YW50aXR5IHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC1tb2JpbGUtb25seSkge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAtMjBweDtcbiAgICAgICAgICAgICAgICAgICAgaW5wdXRbdHlwZT1cInRleHRcIl0ge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogLTIwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiAxMDBweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiAzODBweDtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDIwMHB4O1xuICAgICAgICAgICAgICAgICAgICBpbnB1dFt0eXBlPVwidGV4dFwiXSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogNDVweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IC01cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDIwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBidXR0b24ge1xuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtbW9iaWxlLW9ubHkpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAtMjBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogNXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZm9ybS5yZW1vdmUge1xuICAgICAgICAgICAgICAgIGJ1dHRvbiB7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLW1vYmlsZS1vbmx5KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAtNTBweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiA1NTBweDtcbiAgICAgICAgICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudDogXCJ8XCI7XG4gICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiAtOXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmxpbmUudG90YWwge1xuICAgICAgICAgICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDIwcHg7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtbW9iaWxlLW9ubHkpIHtcblxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAtMTEycHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5kZWNpc2lvbiB7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogNDBweDtcbiAgICAgICAgICAgIFxuICAgICAgICAgICAgLmNoZWNrb3V0IHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiA1cHggMDtcbiAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAxMHB4IDBweDtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgYnRuO1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLnJlbW92ZS5hbGwge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLmNhbGN1bGF0ZS5ib3gge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbmJvZHkuY2hlY2tvdXQge1xuICAgIGgxLFxuICAgIGgyIHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIH1cbiAgICBoNiB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgIG1hcmdpbjogMTVweCAwO1xuICAgIH1cbiAgICBmaWVsZHNldCB7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICB9XG4gICAgaHIge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgICAuZW5jLXN0b3JlIHtcbiAgICAgICAgQGluY2x1ZGUgYWRhcHRpdmUtY29udGFpbmVyO1xuICAgICAgICAucm93IHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDlweCAwO1xuICAgICAgICAgICAgbGFiZWwsXG4gICAgICAgICAgICBpbnB1dCB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBsYWJlbDpub3QoLmVycm9yKSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDlweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlucHV0Om5vdChbdHlwZT1cInJhZGlvXCJdKSAgIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJSFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAvLyBzcGVjaWFsIHN0eWxlcyBmb3IgdGhlIGFkZHJlc3NcbiAgICAgICAgICAgIFtpZD1cInN0cmVldDFcIl0sXG4gICAgICAgICAgICBbaWQ9XCJzdHJlZXQyXCJdLFxuICAgICAgICAgICAgW2lkPVwiYmlsbGluZ19hZGRyZXNzMVwiXSxcbiAgICAgICAgICAgIFtpZD1cImJpbGxpbmdfYWRkcmVzczJcIl0ge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBzZWxlY3Qge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxODBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBidXR0b24uY29udGludWUge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNDVweDtcbiAgICAgICAgfVxuICAgICAgICBbaWQ9XCJjaGVja291dFN0ZXAxXCJdIHtcbiAgICAgICAgICAgIGJyIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLm5vdGljZSB7XG4gICAgICAgICAgICAgICAgLy8gYWRkcyB0aGUgc2FtZSBwYWRkaW5nIHRoYXQgdGhlIGZpZWxkc2V0IGhhc1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IC4zNWVtIC42MjVlbSAuNzVlbTtcbiAgICAgICAgICAgICAgICBwOmxhc3Qtb2YtdHlwZSB7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmxlZnQge1xuICAgICAgICAgICAgICAgIC8vIFRhcmdldHMgdGhlIFwic2hpcHBpbmcgYWRkcmVzc1wiXG4gICAgICAgICAgICAgICAgaDIge1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBhZGQtYm9yZGVyLWJvdHRvbTtcblxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgc3BhbihmaXJzdCA2KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAucmlnaHQge1xuICAgICAgICAgICAgICAgIGgyIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LXN0YWNrLWRlZmF1bHQ7XG4gICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjM7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IC0zMHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy10b3A6IDE0NHB4O1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBzcGFuKGxhc3QgNik7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZmllbGRzZXQge1xuICAgICAgICAgICAgICAgIC5jb250aW51ZSB7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogNjAwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogLTEyMHB4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIFtpZD1cImNoZWNrb3V0U3RlcDJcIl0ge1xuICAgICAgICAgICAgYnIge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBoMiB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYWRkLWJvcmRlci1ib3R0b207XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuc2hpcHBpbmcubWV0aG9kIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogaW5oZXJpdCFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgLm5vdGljZSB7XG4gICAgICAgICAgICAgICAgICAgIHAge1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4IWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB1bCAge1xuICAgICAgICAgICAgICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDQ1cHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmludGVybmF0aW9uYWwtdGF4LW5vdGljZSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjVweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGJ1dHRvbi5jb250aW51ZSB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAyMTVweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBidXR0b25bZGlzYWJsZWQ9XCJcIl0ge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICRjb2xvci10ZXh0LWV4dHJhZGltO1xuICAgICAgICAgICAgICAgICY6aG92ZXIsXG4gICAgICAgICAgICAgICAgJjphY3RpdmUge1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkY29sb3ItdGV4dC1leHRyYWRpbTtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRjb2xvci10ZXh0LWRlZmF1bHQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIFtpZD1cImNoZWNrb3V0U3RlcDNcIl0ge1xuICAgICAgICAgICAgaDIge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGFkZC1ib3JkZXItYm90dG9tO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmxlZnQge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBzcGFuKGZpcnN0IDYpO1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogNDdweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAucmlnaHQge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBzcGFuKGxhc3QgNik7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgW2lkPVwiY29weUFkZHJlc3NcIl0ge1xuICAgICAgICAgICAgICAgIGZsb2F0OiBpbmhlcml0IWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiBpbmhlcml0IWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IGluaGVyaXQhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDI1cHghaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiBpbmhlcml0IWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDMzcHghaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5yb3cuY3JlZGl0LmNhcmQge1xuICAgICAgICAgICAgICAgIHVsIHtcbiAgICAgICAgICAgICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiA1cHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGxhYmVsLFxuICAgICAgICAgICAgICAgIGlucHV0IHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBpbnB1dCB7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDEycHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLm5vdGljZSB7XG4gICAgICAgICAgICAgICAgLy8gYWRkcyB0aGUgc2FtZSBwYWRkaW5nIHRoYXQgdGhlIGZpZWxkc2V0IGhhc1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IC4zNWVtIC42MjVlbSAuNzVlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGJ1dHRvbi5jb250aW51ZSB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDM1NXB4O1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogLTE0NnB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBbaWQ9XCJjaGVja291dFN0ZXA0XCJdIHtcbiAgICAgICAgICAgIGgyIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBhZGQtYm9yZGVyLWJvdHRvbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5sZWZ0LmNvbHVtbiB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHNwYW4oZmlyc3QgNik7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLnJpZ2h0LmNvbHVtbiB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHNwYW4obGFzdCA2KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAub3JkZXIuc3VtbWFyeSB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgc3BhbigxMik7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuaXRlbXMge1xuICAgICAgICAgICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLml0ZW0ge1xuICAgICAgICAgICAgICAgIGhlaWdodDogNzZweDtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBhZGQtYm9yZGVyLWJvdHRvbTtcbiAgICAgICAgICAgICAgICB1bC5kZXRhaWxzIHtcbiAgICAgICAgICAgICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICAgICAgICAgICAgICBsaTpudGgtY2hpbGQoMSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMTBweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBsaTpudGgtY2hpbGQoMSksXG4gICAgICAgICAgICAgICAgICAgIGxpOm50aC1jaGlsZCgyKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBsaTpudGgtY2hpbGQoMykge1xuICAgICAgICAgICAgICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgdWwudG90YWxzIHtcbiAgICAgICAgICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogbm9uZTtcbiAgICAgICAgICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBidXR0b24uY29udGludWUge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxNDBweDtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDIyNXB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAuemlwNC1sb29rdXAtbGluayB7XG4gICAgICAgIG1hcmdpbi10b3A6IDlweDtcbiAgICAgICAgQGluY2x1ZGUgYnRuO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB9XG4gICAgbGFiZWwuZXJyb3Ige1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgICAgICAgbWFyZ2luLXRvcDogLTIycHg7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICAgICAgZm9udC1zaXplOiAxM3B4O1xuICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICAgICAgY29sb3I6IHJnYigyMDksIDEyMSwgMCk7XG4gICAgICAgIHBhZGRpbmc6IDNweCA1cHggMXB4O1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgICB9XG5cbiAgICAuZXJyb3JbZm9yPVwic3RyZWV0MVwiXSxcbiAgICAuZXJyb3JbZm9yPVwiYmlsbGluZ19hZGRyZXNzMVwiXSB7XG4gICAgICAgIG1hcmdpbi10b3A6IC0zN3B4O1xuICAgIH1cblxuICAgIC5lcnJvcltmb3I9XCJzdGF0ZXByb3ZcIl0sXG4gICAgLmVycm9yW2Zvcj1cImJpbGxpbmdfc3RhdGVwcm92XCJdIHtcbiAgICAgICAgbWFyZ2luLXRvcDogLTQ5cHg7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAtMjVweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGxhYmVsLmVycm9yW2Zvcj1cImJpbGxpbmdfYWRkcmVzczFcIl0ge1xuICAgICAgICBtYXJnaW4tdG9wOiAtNDBweDtcbiAgICB9XG5cbiAgICBsYWJlbC5lcnJvcltmb3I9XCJiaWxsaW5nX3N0YXRlcHJvdlwiXSxcbiAgICBsYWJlbC5lcnJvcltmb3I9XCJiaWxsaW5nX2NvdW50cnlcIl0ge1xuICAgICAgICBtYXJnaW4tdG9wOiAtNDlweDtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuY29zdG5vbmRpc2NvdW50IHtcbiAgICAgICAgY29sb3I6IGJyb3duO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IGxpbmUtdGhyb3VnaDtcbiAgICB9XG4gICAgLy8gV29yayBhcm91bmQgcmVkdW5kYW50IGJ1dHRvbiA+IHNwYW4uYnV0dG9uIG1hcmt1cFxuICAgIDpub3QoYnV0dG9uKSA+IHNwYW4uYnV0dG9uIHtcbiAgICAgICAgQGluY2x1ZGUgYnRuO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB9XG59XG4iLCJAbWl4aW4gYWRkLWJvcmRlci1ib3R0b20ge1xuICAgIGJvcmRlci1ib3R0b206IHNvbGlkIDFweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSk7XG59XG4iLCJib2R5LmFib3V0IHtcbiAgICAvLyB0aGlzIG92ZXJyaWRlcyB0aGUgb3JhZ25lIGJhY2tncm91bmQgZm9yIHRoZSByZXN0IG9mIHRoZSBzaXRlLlxuICAgIGJhY2tncm91bmQ6ICM1MzkzZDA7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcblxuICAgIC8vIEN1c3RvbSBicmVha3BvaW50c1xuICAgICRicC1taWQtdGFibGV0OiA1OTlweDsgLy8gb25lIHBpeGVsIHNoeSBvZiBpbml0aWFsIGltYWdlIHNpemVcbiAgICAkYnAtcmVhbGx5LWJpZzogMTY5OXB4OyAvLyBvbmUgcGl4ZWwgc2h5IG9mIGxhc3QgaW1hZ2Ugc2l6ZSBiZWZvcmUgZ29pbmcgdG8gYWN0dWFsIHNpemUuXG4gICAgJGJwLWRlc2t0b3Atb25seTogMTIwMHB4O1xuICAgIC8vIFNldCBhIGN1c3RvbSBoZWFkZXIgY29sb3IgKGJsdWUpIHNpbmNlIG9yYW5nZSB3b3VsZCBsb29rIG9kZCBoZXJlLlxuICAgIGhlYWRlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoODMsIDE0NywgMjA4LCAwLjApO1xuICAgIH1cbiAgICBtYWluLCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoODMsIDE0NywgMjA4LCAuOSk7XG4gICAgICAgIGJhY2tncm91bmQ6XG4gICAgICAgICAgICBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCByZ2JhKDIzLCAyMywgMjMsIDAuMCkgMzIwcHgsIHJnYmEoMjMsIDIzLCAyMywgMS4wKSAzNzBweCksXG4gICAgICAgICAgICB1cmwoXCIuLi9pbWFnZXMvYWJvdXQtYmFja2dyb3VuZC5qcGdcIik7XG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQsIG5vLXJlcGVhdDtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCUgMCUsIDUwJSAwJTtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiAxMDAlIDEwMCUsIDU5OXB4IDM5OXB4O1xuXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgei1pbmRleDogLTE7XG4gICAgICAgIG1hcmdpbi10b3A6IC02MHB4O1xuICAgICAgICBwYWRkaW5nLXRvcDogNjBweDtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC1taWQtdGFibGV0KSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOlxuICAgICAgICAgICAgICAgIGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sIHJnYmEoMjMsIDIzLCAyMywgMC4wKSA0MDBweCwgcmdiYSgyMywgMjMsIDIzLCAxLjApIDQ1MHB4KSxcbiAgICAgICAgICAgICAgICB1cmwoXCIuLi9pbWFnZXMvYWJvdXQtYmFja2dyb3VuZC5qcGdcIik7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0LCBuby1yZXBlYXQ7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAxMDAlIDEwMCUsIDUwJSAwJTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJSAxMDAlLCA3NjhweCA1MTFweDtcblxuXG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOlxuICAgICAgICAgICAgICAgIGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sIHJnYmEoMjMsIDIzLCAyMywgMC4wKSA1MDBweCwgcmdiYSgyMywgMjMsIDIzLCAxLjApIDYwMHB4KSxcbiAgICAgICAgICAgICAgICB1cmwoXCIuLi9pbWFnZXMvYWJvdXQtYmFja2dyb3VuZC5qcGdcIik7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0LCBuby1yZXBlYXQ7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAxMDAlIDEwMCUsIDUwJSAtMTI1cHg7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCUgMTAwJSwgMTIwMHB4IDc5OHB4O1xuXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAtNzRweDtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiA3NHB4O1xuICAgICAgICB9XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLWRlc2t0b3Atb25seSkge1xuICAgICAgICAgICAgYmFja2dyb3VuZDpcbiAgICAgICAgICAgICAgICBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCByZ2JhKDIzLCAyMywgMjMsIDApIDUwM3B4LCByZ2JhKDIzLCAyMywgMjMsIDEuMCkgNjMwcHgpLFxuICAgICAgICAgICAgICAgIHVybChcIi4uL2ltYWdlcy9hYm91dC1iYWNrZ3JvdW5kLmpwZ1wiKTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQsIG5vLXJlcGVhdDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDEwMCUgMTAwJSwgNTAlIC0yMjVweDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJSAxMDAlLCAxNzAwcHggMTEzMnB4O1xuICAgICAgICB9XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXJlYWxseS1iaWcpIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6XG4gICAgICAgICAgICAgICAgbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgcmdiYSgyMywgMjMsIDIzLCAwLjApIDY3NXB4LCByZ2JhKDIzLCAyMywgMjMsIDEuMCkgODAwcHgpLFxuICAgICAgICAgICAgICAgIHVybChcIi4uL2ltYWdlcy9hYm91dC1iYWNrZ3JvdW5kLmpwZ1wiKTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYig4MywgMTQ3LCAyMDgpO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdCwgbm8tcmVwZWF0O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMTAwJSAxMDAlLCA1MCUgLTQyNXB4LCAxMDAlIDEwMCU7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCUgMTAwJSwgMjQwMHB4IDE1MzBweCwgMTAwJSAxMDAlO1xuICAgICAgICB9XG5cbiAgICAgICAgLmNvbnRlbnQge1xuICAgICAgICAgICAgQGluY2x1ZGUgYWRhcHRpdmUtY29udGFpbmVyO1xuICAgICAgICB9XG5cbiAgICAgICAgaDEge1xuICAgICAgICAgICAgLy8gb24gbW9iaWxlIG9ubHkgdGhlIGgxIG5lZWRzIHRvIGJlIHB1bGxlZCB1cCBqdXN0IGEgbGl0dGxlLlxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtbW9iaWxlLW9ubHkpIHtcbiAgICAgICAgICAgICAgICBtYXJnaW46IC4zZW0gMCAuNjdlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBzZWN0aW9uLmludHJvIHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgfVxuXG4gICAgfVxuICAgIC5hYm91dC1jb3B5IHtcbiAgICAgICAgbWFyZ2luLXRvcDogMjUwcHg7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDQ1cHg7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtbWlkLXRhYmxldCkge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMzAwcHg7XG4gICAgICAgICAgICBAaW5jbHVkZSBzcGFuKDExIG9mIDEyKTtcbiAgICAgICAgICAgIEBpbmNsdWRlIHB1c2goMC41KTtcbiAgICAgICAgfVxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDQ1MHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtcmVhbGx5LWJpZykge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogNDUwcHg7XG4gICAgICAgIH1cbiAgICAgICAgcCxcbiAgICAgICAgYSB7XG4gICAgICAgICAgICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpO1xuICAgICAgICB9XG4gICAgfVxuICAgIC8vIFdlJ3JlIGFibGUgdG8gdXNlIHRoZSBiYWNrZ3JvdW5kIGNvbG9yIGZyb20gdGhlIG1haW4gcGFnZSBmb3IgdGhpcyBpbnN0ZWFkLlxuICAgIC8vIFRoZXJlIGlzIGFsc28gYSBib3JkZXIgYWRkZWQgdG8gYm9vdFxuICAgIGZvb3RlciB7XG4gICAgICAgIGJvcmRlci10b3A6IHNvbGlkIDFweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTUpO1xuICAgIH1cbn1cbiIsImJvZHkucG9saWN5IHtcbiAgICBtYWluIHtcbiAgICAgICAgQGluY2x1ZGUgYWRhcHRpdmUtY29udGFpbmVyO1xuXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDQ1cHg7XG5cbiAgICAgICAgc2VjdGlvbiB7XG5cbiAgICAgICAgICAgIHVsIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBmbHVzaC1saXN0O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIGgxLFxuICAgIGgxIH4gcCB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB9XG4gICAgaDEge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwcHg7XG4gICAgfVxuICAgIGgxIH4gcHtcbiAgICAgICAgbWFyZ2luLXRvcDogMHB4O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA0NXB4O1xuICAgIH1cbiAgICBoMyB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIH4gcCB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAwcHg7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIvLyB0aGlzIGlzIHRvIGdvIG9uIHRoZSB1bCBydWxlXG5cbi8qXG51bCB7XG4gICAgQGluY2x1ZGUgZmx1c2gtbGlzdDtcbn1cbiovXG5cbkBtaXhpbiBmbHVzaC1saXN0IHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBsaSB7XG4gICAgICAgIGRpc3BsYXk6IHRhYmxlLXJvdztcbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgY29udGVudDogXCLigKJcIjtcbiAgICAgICAgICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjRlbTtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsImJvZHkud2FycmFudHksXG5ib2R5LnRlcm1zIHtcbiAgICBtYWluIHtcbiAgICAgICAgQGluY2x1ZGUgYWRhcHRpdmUtY29udGFpbmVyO1xuXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDUwcHg7XG4gICAgfVxuICAgIGgxLFxuICAgIGgxe1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgfVxuICAgIGgxIHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIH1cbiAgICBoMyB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIH4gcCB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAwcHg7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCJib2R5LnByb2R1Y3RzIHtcbiAgICBtYWluIHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBoMiB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgICB9XG4gICAgICAgIC5jb250ZW50IHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGFkYXB0aXZlLWNvbnRhaW5lcjtcbiAgICAgICAgfVxuICAgICAgICBhLmN0YSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBidG47XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIH1cbiAgICAgICAgc2VjdGlvbi5pbnRybyB7XG4gICAgICAgICAgICBwYWRkaW5nOiA1NXB4IDA7XG4gICAgICAgICAgICBwLFxuICAgICAgICAgICAgaDIge1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgc3BhbigxMik7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBzcGFuKDEwKTtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgcHVzaCgxKTtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNTBweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNDVweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuaW50cm8tY29weSB7XG4gICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMTVweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBzZWN0aW9uLmFjY2Vzc29yaWVzIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6XG4gICAgICAgICAgICAgICAgbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgcmdiYSgyMiwyMiwyMiwxKSAwJSwgcmdiYSgzNSwgMzUsIDM1LCAxKSAxMDAlKTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDcwcHggMDtcbiAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgc3BhbigxMCk7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgcHVzaCgxKTtcbiAgICAgICAgICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGgyIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmFjY2Vzc29yaWVzLWNvcHkge1xuICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxNXB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHNwYW4oOCk7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHB1c2goMCk7IC8vIG92ZXJyaWRlcyBwdXNoKDIpIGZyb20gbW9iaWxlXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IC00MHB4O1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDI3MHB4O1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgLmFjY2Vzc29yaWVzLWNvcHkge1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBzcGFuKDQgbm8tZ3V0dGVyKTtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogNDVweDtcbiAgICAgICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxNXB4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHNlY3Rpb24uZGVhbGVycyB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWFnZXMvZGVhbGVycy1tYXAucG5nXCIpO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDUwJSAyMnB4O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiA2NThweCAyNjhweDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDcwcHggMDtcbiAgICAgICAgICAgIGhlaWdodDogMzEycHg7XG4gICAgICAgICAgICBoMiB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMTVweDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxMTVweDtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjVweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA1MCUgNjNweDtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDg3N3B4IDM1N3B4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogNDgzcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuY29udGVudCB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDMwMHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuIiwiYm9keS5oZWxwIHtcbiAgICBhLmN0YSB7XG4gICAgICAgIEBpbmNsdWRlIGJ0bjtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIH1cbiAgICBzZWN0aW9uLmhlbHAtc2VjdGlvbixcbiAgICBzZWN0aW9uLmNvbnRhY3Qtc2VjdGlvbixcbiAgICBzZWN0aW9uLmNvbnRhY3QtZm9ybSB7XG4gICAgICAgIEBpbmNsdWRlIGFkYXB0aXZlLWNvbnRhaW5lcjtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNTVweDtcbiAgICAgICAgfVxuICAgIH1cbiAgICBzZWN0aW9uLmhlbHAtc2VjdGlvbix7XG4gICAgICAgIGRpdiB7XG4gICAgICAgICAgICBAaW5jbHVkZSBzcGFuKDEyKTtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHNwYW4oNCk7XG4gICAgICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgc3BhbihsYXN0IDQpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBhLmN0YSB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAyMDRweDtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDExcHg7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDEwcHggNXB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICBzZWN0aW9uLmNvbnRhY3Qtc2VjdGlvbiB7XG4gICAgICAgIGRpdiB7XG4gICAgICAgICAgICBAaW5jbHVkZSBzcGFuKDEyKTtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHNwYW4oNik7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgICAgICAgICAgICAmOm50aC1jaGlsZCgybisxKSB7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHNwYW4obGFzdCA2KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgc2VjdGlvbi5oZWxwLXNlY3Rpb24sXG4gICAgc2VjdGlvbi5jb250YWN0LXNlY3Rpb24ge1xuICAgICAgICBoMSxcbiAgICAgICAgaDIge1xuICAgICAgICAgICAgQGluY2x1ZGUgc3BhbigxMik7XG4gICAgICAgIH1cbiAgICAgICAgaDEge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjVweDtcbiAgICAgICAgfVxuICAgIH1cbiAgICBzZWN0aW9uLmhlbHAtc2VjdGlvbiB7XG4gICAgICAgIGRpdiB7XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC1tb2JpbGUtb25seSkge1xuICAgICAgICAgICAgICAgICY6bm90KDpmaXJzdC1vZi10eXBlKSB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogNTVweCAwIDA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZmlndXJlLFxuICAgICAgICAgICAgaDMsXG4gICAgICAgICAgICBwLFxuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBoMyB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHAge1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDVweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGZpZ3VyZSB7XG4gICAgICAgICAgICAgICAgbWF4LWhlaWdodDogMTQwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgIG1heC1oZWlnaHQ6IDEyMHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIHNlY3Rpb24uY29udGFjdC1zZWN0aW9uIHtcbiAgICAgICAgQGluY2x1ZGUgYWRhcHRpdmUtY29udGFpbmVyO1xuICAgICAgICBtYXJnaW4tdG9wOiAyNXB4O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA1NXB4O1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDVweDtcbiAgICAgICAgfVxuICAgICAgICBoMiB7XG4gICAgICAgICAgICBAaW5jbHVkZSBoZWFkaW5nLWxpbmVzKCRoZWFkaW5nOiAyKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGRpdi5tb2Rlcy1vZi1jb250YWN0IHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZGl2IHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgZ2FsbGVyeSg2IG9mIDEyKTtcbiAgICAgICAgICAgICAgICAgICAgaDMge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIHAge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMHB4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIGFkZHJlc3Mge1xuICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgfVxuICAgIGEuY3RhLXBob25lLFxuICAgIGEuY3RhLWVtYWlsIHtcbiAgICAgICAgY29sb3I6ICRjb2xvci10ZXh0LWRlZmF1bHQ7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB9XG59XG5cbi8vIFJFVFVSTlMgUEFHRVxuYm9keS5yZXR1cm5zIHtcbiAgICBzZWN0aW9uIHtcbiAgICAgICAgQGluY2x1ZGUgYWRhcHRpdmUtY29udGFpbmVyO1xuICAgIH1cbiAgICBzZWN0aW9uLmludHJvIHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIH1cbiAgICBzZWN0aW9uLmNvbnRlbnQge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA0NXB4O1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDcwcHg7XG4gICAgICAgIH1cbiAgICAgICAgdWwge1xuICAgICAgICAgICAgQGluY2x1ZGUgZmx1c2gtbGlzdDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLy8gUkVNT1RFIFNVUFBPUlQgUEFHRVxuYm9keS5yZW1vdGUtc3VwcG9ydCB7XG4gICAgc2VjdGlvbiB7XG4gICAgICAgIEBpbmNsdWRlIGFkYXB0aXZlLWNvbnRhaW5lcjtcbiAgICB9XG4gICAgc2VjdGlvbi5pbnRybyB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB9XG59XG4iLCJAbWl4aW4gaGVhZGluZy1saW5lcygkd2lkdGgtb2YtbGluZXM6IG51bGwsICRoZWFkaW5nOiAxKSB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIEBpZiAkd2lkdGgtb2YtbGluZXMgPT0gbnVsbCB7XG4gICAgICAgICR3aWR0aC1vZi1saW5lczogMjAwcHg7XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgICBwYWRkaW5nLXRvcDogMzBweDtcbiAgICB9XG4gICAgJjo6YmVmb3JlLFxuICAgICY6OmFmdGVyIHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG4gICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogc29saWQgMXB4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTtcbiAgICAgICAgICAgIHdpZHRoOiAkd2lkdGgtb2YtbGluZXM7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAyNXB4O1xuICAgICAgICB9XG4gICAgICAgIEBpZiAkaGVhZGluZyA9PSAyIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDI1cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgJjo6YmVmb3JlIHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG4gICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgfVxuICAgIH1cbiAgICAmOjphZnRlciB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiYm9keS5mb3VyLW9oLWZvdXIge1xuICAgIHNlY3Rpb24uY29udGVudCB7XG4gICAgICAgIEBpbmNsdWRlIGFkYXB0aXZlLWNvbnRhaW5lcjtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA1NXB4O1xuICAgICAgICBoMSB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAzNXB4O1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDEyNXB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGgyIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDVweDtcbiAgICAgICAgfVxuICAgICAgICBhLmN0YSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBidG47XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiA0MHB4O1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiYm9keS5kZXZlbG9wZXJzIHtcbiAgICBtYWluIHtcbiAgICAgICAgYS5jdGEge1xuICAgICAgICAgICAgQGluY2x1ZGUgYnRuO1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB9XG4gICAgICAgIHNlY3Rpb24ge1xuICAgICAgICAgICAgQGluY2x1ZGUgYWRhcHRpdmUtY29udGFpbmVyO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMzVweDtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAyNXB4O1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDU1cHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNzVweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBzZWN0aW9uLmludHJvIHtcbiAgICAgICAgICAgIGgxLFxuICAgICAgICAgICAgZGl2IHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBzcGFuKDEyKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGRpdiB7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgc3Bhbig2KTtcbiAgICAgICAgICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHNwYW4obGFzdCA2KTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIEBpbmNsdWRlIGFkZC1ib3JkZXItYm90dG9tO1xuICAgICAgICB9XG4gICAgICAgIHNlY3Rpb24ucGhvbmUtY29udGFjdCB7XG4gICAgICAgICAgICBoMSB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAzMHB4O1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IC0xMHB4O1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDM2cHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgYS5jdGEtcGhvbmUge1xuICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIEBpbmNsdWRlIGFkZC1ib3JkZXItYm90dG9tO1xuICAgICAgICB9XG4gICAgICAgIHNlY3Rpb24ucmVxdWVzdC1zZWN0aW9uIHtcbiAgICAgICAgICAgIGgyIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAtMTBweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgYS5jdGEge1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDE1cHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgfVxuICAgIH1cbn1cbiIsImJvZHkuZGVhbGVycyB7XG4gICAgbWFpbiB7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltYWdlcy9kZWFsZXJzLW1hcC5wbmdcIik7XG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDUwJSA4NXB4O1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDY1OHB4IDI2OHB4O1xuICAgICAgICBwYWRkaW5nOiA3MHB4IDA7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogNTAlIDk1cHg7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDEyMDBweCBhdXRvO1xuICAgICAgICB9XG4gICAgICAgIHNlY3Rpb24ge1xuICAgICAgICAgICAgQGluY2x1ZGUgYWRhcHRpdmUtY29udGFpbmVyO1xuICAgICAgICB9XG4gICAgICAgIHNlY3Rpb24uaW50cm8ge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgaDEge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA0NXB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBbaWQ9XCJkZWFsZXJzXCJdLFxuICAgICAgICBbaWQ9XCJkaXN0cmlidXRvcnNcIl0ge1xuICAgICAgICAgICAgdWwge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IC0zMHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDI3cHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC0zMnB4O1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBnYWxsZXJ5KDQpO1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDgwcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LWZhbWlseTogXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIEFyaWFsLCBzYW5zLXNlcmlmO1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgLmljb24tbGluay1leHQge1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lO1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxM3B4O1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAycHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGNvbG9yLXRleHQtZGVmYXVsdDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBbaWQ9XCJkaXN0cmlidXRvcnNcIl0ge1xuICAgICAgICAgICAgaDIge1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBoZWFkaW5nLWxpbmVzKCRoZWFkaW5nOjIpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuIiwiYm9keS5jaGFuZ2Vsb2dzIHtcbiAgICBzZWN0aW9uIHtcbiAgICAgICAgQGluY2x1ZGUgYWRhcHRpdmUtY29udGFpbmVyO1xuICAgIH1cbiAgICBbaWQ9XCJpbnRyb1wiXSB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB9XG59XG5baWQ9XCJjaGFuZ2Vsb2dzXCJdIHtcbiAgICBAaW5jbHVkZSBhZGFwdGl2ZS1jb250YWluZXI7XG4gICAgbWFyZ2luLXRvcDogMzVweDtcbiAgICBtYXJnaW4tYm90dG9tOiAzNXB4O1xuICAgIC5jaGFuZ2Vsb2cge1xuICAgICAgICBAaW5jbHVkZSBjb250YWluZXI7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAyNXB4O1xuICAgICAgICAmOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgICAgICAgQGluY2x1ZGUgYWRkLWJvcmRlci1ib3R0b207XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICAgICAgfVxuICAgIH1cbiAgICAudmVyc2lvbi1kZXRhaWxzIHtcbiAgICAgICAgQGluY2x1ZGUgY29udGFpbmVyO1xuICAgICAgICAucG9zdGVkLWRhdGUge1xuICAgICAgICAgICAgY2xlYXI6IGJvdGg7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLmRldGFpbHMge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICB9XG4gICAgfVxuICAgIC50cmlnZ2VyLWNoYW5nZWxvZyB7XG4gICAgICAgIGRpdiB7XG4gICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICBAaW5jbHVkZSBzcGFuKDEgb2YgMiBuby1ndXR0ZXJzKTtcbiAgICAgICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAyNHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIC50b2dnbGUtaW5kaWNhdG9yIHtcbiAgICAgICAgd2lkdGg6IDI0cHg7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC05MGRlZyk7XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAuM3MgZWFzZTtcbiAgICAgICAgbWFyZ2luLXRvcDogMTlweDtcbiAgICAgICAgJi5vcGVuIHtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgICAgICB9XG4gICAgfVxuICAgIGgzIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgICAgYSB7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG4gICAgcCB7XG4gICAgICAgIG1hcmdpbi10b3A6IDVweDtcbiAgICB9XG4gICAgLmNvbGxhcHNlLXRyaWdnZXIge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgfVxuICAgIGEuY3RhIHtcbiAgICAgICAgQGluY2x1ZGUgYnRuO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHdpZHRoOiAyMzVweDtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG4gICAgICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAyMnB4O1xuICAgICAgICB9XG4gICAgICAgICYuZG93bmxvYWQtbGluayB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAxNXB4O1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMjJweDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDE1cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgLmNoYW5nZXMge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICBtaW4td2lkdGg6IDEwMCU7XG4gICAgICAgIEBpbmNsdWRlIGNvbnRhaW5lcjtcbiAgICAgICAgdWwge1xuICAgICAgICAgICAgQGluY2x1ZGUgZmx1c2gtbGlzdDtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIkBpbXBvcnQgXCIuLi9oZWxwZXJzL2J1dHRvbnNcIjtcbkBpbXBvcnQgXCIuLi9oZWxwZXJzL2JvcmRlcnNcIjtcbkBpbXBvcnQgXCIuLi9oZWxwZXJzL2xpc3RzXCI7XG5AaW1wb3J0IFwiLi4vcGFydGlhbHMvY2hhbmdlbG9nc1wiO1xuXG5ib2R5LmRvd25sb2FkcyB7XG4gICAgbWFpbiB7XG4gICAgICAgIHNlY3Rpb24ge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGFkYXB0aXZlLWNvbnRhaW5lcjtcbiAgICAgICAgICAgICAgICBhLmN0YSB7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJ0bjtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGNvbG9yLXRleHQtZGVmYXVsdDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgfVxuXG4gICAgW2lkPVwiaW50cm9cIl0ge1xuICAgICAgICBoMSB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIH1cbiAgICB9XG4gICAgW2lkPVwidHJhY2tpci1zb2Z0d2FyZVwiXSB7XG4gICAgICAgIC50cmFja2lyLWNhbGxvdXQge1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgc3Bhbig4KTtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBwdXNoKDIpO1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGgzIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuc2Vjb25kYXJ5IHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogLTIwcHg7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDI2cHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGEuY3RhIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDEwcHggMjBweDtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDUycHg7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiA3MCU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIFtpZD1cImFsZXJ0cy1hbmQtcmVxdWlyZW1lbnRzXCJdIHtcbiAgICAgICAgbWFyZ2luLXRvcDogNTBweDtcblxuICAgICAgICAuYWxlcnRzLWFuZC1ub3RpY2VzLFxuICAgICAgICAuc3lzdGVtLXJlcXVpcmVtZW50cyB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgICAgQGluY2x1ZGUgc3BhbigxMik7XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBzcGFuKDYpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgdWwge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZsdXNoLWxpc3Q7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLnN5c3RlbS1yZXF1aXJlbWVudHMge1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgc3BhbihsYXN0IDYpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIFtpZD1cImRyaXZlcnNcIl0ge1xuICAgICAgICBtYXJnaW4tdG9wOiA1MHB4O1xuXG4gICAgICAgIGgyIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGhlYWRpbmctbGluZXMoJGhlYWRpbmc6IDIpO1xuICAgICAgICB9XG4gICAgICAgIC5idXR0b24ge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogNjBweDtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIEBpbmNsdWRlIHNwYW4oMTIpO1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgc3Bhbig2KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuYnV0dG9uOmxhc3Qtb2YtdHlwZSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBzcGFuKGxhc3QgNik7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgW2lkPVwibWFudWFsc1wiXSB7XG4gICAgICAgIGgyIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGhlYWRpbmctbGluZXMoJGhlYWRpbmc6IDIpO1xuICAgICAgICB9XG4gICAgICAgIC5tYW51YWxzIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDYwcHg7XG4gICAgICAgICAgICBmaWd1cmUge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDUwcHg7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBnYWxsZXJ5KDQpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTVweDtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxMzhweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogM3B4IGF1dG87XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAmOmZpcnN0LW9mLXR5cGUge1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgYS5jdGEge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxNXB4O1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDIwcHg7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDEwcHggNTJweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG5ib2R5LnNvZnR3YXJlLW5ld3Mge1xuICAgIHNlY3Rpb24ge1xuICAgICAgICBAaW5jbHVkZSBhZGFwdGl2ZS1jb250YWluZXI7XG4gICAgfVxuICAgIFtpZD1cImludHJvXCJdIHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIH1cbn1cblxuYm9keS5zb2Z0d2FyZS1uZXdzIHtcbiAgICBzZWN0aW9uIHtcbiAgICAgICAgQGluY2x1ZGUgYWRhcHRpdmUtY29udGFpbmVyO1xuICAgIH1cbiAgICBbaWQ9XCJpbnRyb1wiXSB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB9XG4gICAgLmRvd25sb2FkLWFuZC1tYW51YWwgYSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBwYWRkaW5nLXRvcDogMTBweDtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMjBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICBbaWQ9XCJjaGFuZ2Vsb2dcIl0ge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA0NXB4O1xuICAgIH1cblxuXG59XG5cbmJvZHkucHJldmlvdXMtcmVsZWFzZXMge1xuICAgIHNlY3Rpb24ge1xuICAgICAgICBAaW5jbHVkZSBhZGFwdGl2ZS1jb250YWluZXI7XG4gICAgfVxuICAgIHNlY3Rpb25baWQ9XCJpbnRyb1wiXSB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB9XG4gICAgLnJldHVybi1saW5rIHtcbiAgICAgICAgbWFyZ2luOiAxMHB4IDA7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgICBzZWN0aW9uW2lkPVwicmVsZWFzZXNcIl0ge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAzNXB4O1xuICAgICAgICAuZG93bmxvYWQge1xuICAgICAgICAgICAgQGluY2x1ZGUgY29udGFpbmVyO1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDI1cHg7XG4gICAgICAgICAgICAmOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGFkZC1ib3JkZXItYm90dG9tO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLmRldGFpbHMge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG4gICAgICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBoMyB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgICB9XG4gICAgICAgIHAge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogNXB4O1xuICAgICAgICB9XG4gICAgICAgIC5kb3dubG9hZC1saW5rIHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgfVxuICAgICAgICBhLmN0YSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBidG47XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMjJweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi8vIEFuaW1hdGUgNkRPRiBNb3ZpbmcgSGVhZHNcbkBrZXlmcmFtZXMgbW92ZWhlYWQge1xuICAgIGZyb20ge1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBsZWZ0IGNlbnRlcjtcbiAgICB9XG4gICAgdG8ge1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTIwMDBweDtcbiAgICB9XG59XG5cblxuQGltcG9ydCBcIi4uL3BhcnRpYWxzL2ZlYXR1cmVkLXByb2R1Y3RzXCI7XG5cbmJvZHkudHJhY2tpcjUge1xuICAgIG1haW4ge1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIH1cbiAgICBzZWN0aW9uIHtcbiAgICAgICAgQGluY2x1ZGUgYWRhcHRpdmUtY29udGFpbmVyO1xuICAgIH1cblxuICAgIHNlY3Rpb24uaW50cm8ge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgfVxuXG4gICAgLyogQmFja2dyb3VuZDogKi9cbiAgICBkaXYubW9uaXRvciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOlxuICAgICAgICAgICAgICAgIHVybChcIi4uL2ltYWdlcy90cmFja2lyLTUtZm9yLW1vbml0b3IucG5nXCIpLFxuICAgICAgICAgICAgICAgIHVybChcIi4uL2ltYWdlcy9tb25pdG9yLWJlemVsLnBuZ1wiKSxcbiAgICAgICAgICAgICAgICByYWRpYWwtZ3JhZGllbnQoZWxsaXBzZSBhdCB0b3AsIHJnYmEoNTksNTksNTksMSkgMCUsIHJnYmEoMCwwLDAsMSkgMTAwJSk7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDpcbiAgICAgICAgICAgICAgICBuby1yZXBlYXQsXG4gICAgICAgICAgICAgICAgcmVwZWF0LXgsXG4gICAgICAgICAgICAgICAgbm8tcmVwZWF0O1xuXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOlxuICAgICAgICAgICAgICAgIDUwJSA0M3B4LFxuICAgICAgICAgICAgICAgIDBweCAyNjVweCxcbiAgICAgICAgICAgICAgICAwcHggMjcwcHg7XG5cbiAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTpcbiAgICAgICAgICAgICAgICAzNzBweCxcbiAgICAgICAgICAgICAgICAxMDAlIDY1cHgsXG4gICAgICAgICAgICAgICAgYXV0bztcblxuICAgICAgICAgICAgcGFkZGluZy10b3A6IDI5MHB4O1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjpcbiAgICAgICAgICAgICAgICAgICAgNTAlIDQ0cHgsXG4gICAgICAgICAgICAgICAgICAgIDBweCAzMzBweCxcbiAgICAgICAgICAgICAgICAgICAgMHB4IDM0NHB4O1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTpcbiAgICAgICAgICAgICAgICAgICAgNDc1cHggYXV0byxcbiAgICAgICAgICAgICAgICAgICAgMTAwJSA2NXB4LFxuICAgICAgICAgICAgICAgICAgICBhdXRvIGF1dG87XG4gICAgICAgICAgICAgICAgcGFkZGluZy10b3A6IDM5MHB4O1xuICAgICAgICAgICAgfVxuICAgIH1cblxuICAgIC5zaXhkb0Yge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIGgyIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDUwcHg7XG4gICAgICAgIH1cbiAgICAgICAgPiBoMiBzcGFuIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLW1vYmlsZS1vbmx5KSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgcCB7XG4gICAgICAgICAgICBjb2xvcjogJGNvbG9yLXRleHQtZGltO1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgc3Bhbig4KTtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBwdXNoKDIpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgZGl2LmhlYWRzIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHNwYW4oMTAwJSk7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA0NXB4O1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgIC5hbmltYXRpb24tc3BvdCB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMHB4O1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMTVweCAxNXB4O1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgZ2FsbGVyeSgyKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgJi5ob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgIC5zcHJpdGUge1xuICAgICAgICAgICAgICAgICAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IC0xNzVweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGFuaW1hdGlvbjogbW92ZWhlYWQgMnMgc3RlcHMoMzApIGluZmluaXRlO1xuICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdmlzaWJpbGl0eTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDFzO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIC5naG9zdCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogb3BhY2l0eTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDEuNXM7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAyNXB4O1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAtMTVweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgLnNwcml0ZSB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDBweDtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxMzhweDtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAyNXB4IDE1cHg7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogLTE3NXB4O1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGxlZnQgY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKC44Mik7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIC5naG9zdCB7XG4gICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEyMHB4O1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDEzOHB4O1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDEycHggMTVweCAxMnB4IDVweDtcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogb3BhY2l0eTtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMXM7XG4gICAgICAgICAgICAgICAgICAgICYueSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgMnB4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICYucGl0Y2gge1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIDBweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAvLyBTcGVjaWFsIHN0eWxlIHRvIGVubGFyZ2UgdGhlIFogZ2hvc3QgdG8gbWFrZSBpdCBtb3JlIG9idmlvdXNcbiAgICAgICAgICAgICAgICAuei5naG9zdCB7XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4yKTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBAbWl4aW4gc2l4RG9GLWFuaW1hdGlvbigkbW92ZW1lbnRzKSB7XG4gICAgICAgICAgICAgICAgICAgIEBlYWNoICRtb3ZlbWVudCBpbiAkbW92ZW1lbnRzIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIC4jeyRtb3ZlbWVudH0uc3ByaXRlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWFnZXMvI3skbW92ZW1lbnR9LXNwcml0ZS5wbmdcIik7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAuI3skbW92ZW1lbnR9Lmdob3N0IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWFnZXMvNmRvZi0jeyRtb3ZlbWVudH0ucG5nXCIpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgc2l4RG9GLWFuaW1hdGlvbih5YXcgeCBwaXRjaCB5IHJvbGwgeik7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuc2l4ZG9GLXZpZGVvcyB7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogNDBweDtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiA0MHB4O1xuICAgICAgICAgICAgQGluY2x1ZGUgc3BhbigxMDAlKTtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiA2MHB4O1xuICAgICAgICAgICAgICAgIGJvcmRlci10b3A6IHNvbGlkIDFweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTUpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAzNXB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZmlndXJlIHtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKC44OCk7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDM1cHg7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDIyMHB4O1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTVweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgc3BhbjpudGgtY2hpbGQoMSkge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHNwYW46bnRoLWNoaWxkKDIpLFxuICAgICAgICAgICAgICAgIHNwYW46bnRoLWNoaWxkKDMpIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRjb2xvci10ZXh0LWV4dHJhZGltO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5wcmVjaXNlLXRyYWNraW5nIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogLTVweDtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBwIHtcbiAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItdGV4dC1ldmVubGVzc2RpbTtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLW1vYmlsZS1vbmx5KSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogLTIwcHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogODBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgICAgICAgICAgIG1hcmdpbjogaW5pdGlhbDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5wcmVjaXNlLXRyYWNraW5nLWNvbnRlbnQge1xuICAgICAgICAgICAgQGluY2x1ZGUgYWRhcHRpdmUtY29udGFpbmVyO1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IDM1cHg7XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogNTVweDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDUwMHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLnByZWNpc2UtdHJhY2tpbmctY29weSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTAwcHg7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiA1MDBweDtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogaW5pdGlhbDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgLnNwZWNzIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMzBweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgLnNwZWMge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDcwcHggYXV0bztcbiAgICAgICAgICAgICAgICAgICAgaHRtbC5pZSAmIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IC03MHB4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDI1MHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDVweCBhdXRvO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIGgyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjhweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAuc3BlYy10aXRsZSB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDBweDtcbiAgICAgICAgICAgICAgICAgICAgfiBwIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItdGV4dC1ldmVubGVzc2RpbTtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IC01cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxM3B4O1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogaW5pdGlhbDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAucHJlY2lzZS10cmFja2luZy1pbWFnZSB7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgICAgICAgICAudHJhY2tpcjUtaW1hZ2Uge1xuICAgICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG4gICAgICAgICAgICAgICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogLTQxNXB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMzAwcHg7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC0xMjBweDtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxNTBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiA1MDBweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuXG4gICAgZGl2LmRlc2lnbmVkLWZvci1nYW1lcnMge1xuICAgICAgICBwYWRkaW5nOiAxNXB4IDA7XG4gICAgICAgIGJhY2tncm91bmQ6IGJsYWNrO1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOmxpbmVhci1ncmFkaWVudCh0byB0b3AsIHJnYig3NCwgNzQsIDc0KSAwJSwgcmdiKDIyLCAyMiwgMjIpIDEwMCUpO1xuXG4gICAgICAgIC5kZXNpZ25lZC1mb3ItZ2FtZXJzLWNvbnRlbnQge1xuICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRjb2xvci10ZXh0LWRpbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAyNXB4IDAgNTVweDtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgc3BhbigxMCk7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHB1c2goLTUpO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAtMTVweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuZGVzaWduZWQtZm9yLWdhbWVycy1jb3B5IHtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHNwYW4obGFzdCA2KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBzZWN0aW9uLmZ1bGx5LWFkanVzdGFibGUge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogNDBweDtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogODBweDtcbiAgICAgICAgICAgIGhlaWdodDogNTAwcHg7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMHB4O1xuICAgICAgICB9XG4gICAgICAgIGltZy50aXItaW1hZ2Uge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogNDBweDtcbiAgICAgICAgICAgIHdpZHRoOiAyMjBweDtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICB3aWR0aDogNDIwcHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogLTYwcHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC0xNTBweDtcbiAgICAgICAgICAgICAgICBsZWZ0OiA2MCU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBkaXYuZnVsbHktYWRqdXN0YWJsZS1jb3B5IHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHNwYW4oNyk7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHAge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLW1vYmlsZS1vbmx5KSB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IC0yMHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC50ZWNoLXNwZWNzIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDMwcHg7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAzMHB4O1xuICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsMCwwLDAuMSk7XG5cbiAgICAgICAgLnRlY2gtc3BlY3MtY29udGVudCB7XG4gICAgICAgICAgICBoMiB7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLnRlY2gtc3BlY3MtaW1hZ2VzIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgc3Bhbig0IGZpcnN0KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgZmlndXJlIHtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtNTBweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDgwcHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMjAwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogLTEwMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgbWF4LXdpZHRoOiB1bnNldDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBzdGlja3k7XG4gICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgZmlnY2FwdGlvbiB7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxM3B4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC50ZWNoLXNwZWNzLWNvcHkge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBzcGFuKGxhc3QgOCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIC5zcGVjcyB7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHNwYW4oMTAwJSk7XG4gICAgICAgICAgICAgICAgICAgIGRpdiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBzcGFuKDEwMCUpO1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogLTIzcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAtMTVweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBwOmZpcnN0LWNoaWxke1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogLTEwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTRweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxNHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGdhbGxlcnkoNik7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgcDpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxMnB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGdhbGxlcnkoNik7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgLm1vcmUtc3BlY3Mge1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBzcGFuKDEwMCUpO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAzMHB4O1xuICAgICAgICAgICAgICAgICAgICAuaW4tYm94LFxuICAgICAgICAgICAgICAgICAgICAuc3lzLXJlcXVpcmVtZW50cyB7XG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBnYWxsZXJ5KDYpO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgdWwge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgZmx1c2gtbGlzdDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA4cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTJweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudDogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICBbaWQ9XCJmZWF0dXJlZC1wcm9kdWN0c1wiXSB7XG4gICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIH1cbn1cbiIsIltpZD1cImZlYXR1cmVkLXByb2R1Y3RzXCJdIHtcbiAgICBwYWRkaW5nOiAyNXB4IDAgMzBweDtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsMCwwLDAuMSk7ICAgIFxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgcGFkZGluZzogMjVweCAwIDY1cHg7XG4gICAgfVxuICAgIGEuY3RhIHtcbiAgICAgICAgQGluY2x1ZGUgYnRuO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgfVxuICAgIC5wcm9kdWN0cyB7XG4gICAgICAgIEBpbmNsdWRlIGFkYXB0aXZlLWNvbnRhaW5lcjtcbiAgICB9XG4gICAgLnByb2R1Y3Qge1xuICAgICAgICBAaW5jbHVkZSBzcGFuKDEyKTtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtbW9iaWxlLW9ubHkpIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDY1cHg7XG4gICAgICAgIH1cbiAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLW1vYmlsZS1vbmx5KSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMzVweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHNwYW4oNCk7XG4gICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHNwYW4obGFzdCA0KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBwIHtcbiAgICAgICAgICAgIG1hcmdpbjogMTBweCAwIC01cHg7XG4gICAgICAgIH1cbiAgICAgICAgcC5wcmljZSB7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogMHB4O1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgICAgICAgfVxuICAgICAgICBmaWd1cmUge1xuICAgICAgICAgICAgJGZpZ3VyZS1oZWlnaHQ6IDE3NXB4O1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG8gMjBweDtcbiAgICAgICAgICAgIGhlaWdodDogJGZpZ3VyZS1oZWlnaHQ7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogJGZpZ3VyZS1oZWlnaHQ7XG4gICAgICAgICAgICB3aWR0aDogMjgwcHg7XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMjIwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBib3R0b207XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgJltpZD1cInRyYWNrY2xpcC1wcm9cIl0ge1xuICAgICAgICAgICAgZmlndXJlIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC1tb2JpbGUtb25seSkge1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDIyNXB4O1xuICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMjI1cHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxNDBweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAmW2lkPVwidGlyNVwiXSB7XG4gICAgICAgICAgICBmaWd1cmUge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAyMTBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAmW2lkPVwidGlyNS1wcm8tYnVuZGxlXCJdIHtcbiAgICAgICAgICAgIGZpZ3VyZSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDI4MHB4O1xuICAgICAgICAgICAgICAgIC8vIG1hcmdpbi1sZWZ0OiAtMjlweDtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC0yOXB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbiIsImJvZHkuYWNjZXNzb3JpZXMge1xuICAgIG1haW4ge1xuICAgICAgICBoMSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC1tb2JpbGUtb25seSkge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMzZweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBzZWN0aW9uIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGFkYXB0aXZlLWNvbnRhaW5lcjtcbiAgICAgICAgfVxuICAgICAgICBzZWN0aW9uLmludHJvIHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDM1cHg7XG4gICAgICAgIH1cbiAgICAgICAgc2VjdGlvbi5mZWF0dXJlZC1pdGVtcyB7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogNDVweDtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDQ1cHg7XG4gICAgICAgICAgICBAaW5jbHVkZSBhZGQtYm9yZGVyLWJvdHRvbTtcbiAgICAgICAgICAgIC5mZWF0dXJlZC1pdGVtIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBzcGFuKDEyKTtcbiAgICAgICAgICAgICAgICAmOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtbW9iaWxlLW9ubHkpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDY1cHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgJltpZD1cInRyYWNrY2xpcHByb1wiXSB7XG4gICAgICAgICAgICAgICAgICAgIGZpZ3VyZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBzcGFuKGZpcnN0IDYpO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIC5jb3B5IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHNwYW4obGFzdCA2KTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBwdXNoKDYpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICZbaWQ9XCJ0cmFja2NsaXBcIl0ge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxMDBweDtcbiAgICAgICAgICAgICAgICAgICAgZmlndXJlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHNwYW4oIDYpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHB1c2goNik7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgLmNvcHkge1xuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgc3BhbiggNik7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgcHVzaCgtMTIpO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGZpZ3VyZSB7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLW1vYmlsZS1vbmx5KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDI5MHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1heC13aWR0aDogaW5pdGlhbDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtMjEwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogNDAwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgZGl2LmNvcHkge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAzNXB4O1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDE1cHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgaDMge1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIHAucHJpY2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMzVweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAyMHB4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIHVsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZsdXNoLWxpc3Q7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgZm9ybSB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDU1cHg7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLW1vYmlsZS1vbmx5KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgc2VjdGlvbi5pdGVtcyB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA1NXB4O1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNzVweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5pdGVtIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDE1cHg7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgc3BhbigxMik7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG5cbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgc3Bhbig0KTtcblxuICAgICAgICAgICAgICAgICAgICAmOm50aC1jaGlsZCgzbikge1xuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgc3BhbihsYXN0IDQpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGZpZ3VyZSB7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogMTUwcHg7XG4gICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxNTBweDtcbiAgICAgICAgICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTUwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGgzIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBwLnByaWNlIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogNXB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAmW2lkPVwidGlyNS1iYXNlXCJdIHtcbiAgICAgICAgICAgICAgICAgICAgZmlndXJlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiA5OHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiA5OHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxNTBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMTUwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICBpbWcge1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWF4LXdpZHRoOiBpbml0aWFsO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMjMwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC0yMDhweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC0xNDRweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDIzMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuIiwiYm9keS5nYW1lcy1saXN0IHtcbiAgICAuaW50cm8ge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIG1hcmdpbi10b3A6IDM1cHg7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDM1cHg7XG4gICAgfVxuXG4gICAgLmZpbHRlci1hbmQtc29ydCB7XG4gICAgICAgIEBpbmNsdWRlIGFkYXB0aXZlLWNvbnRhaW5lcjtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBsYWJlbC5sYWJlbC1mb3ItZ3JvdXAge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogNDVweDtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuICAgICAgICBkaXYucmFkaW8tc2VjdGlvbiB7XG4gICAgICAgICAgICBpbnB1dFt0eXBlPVwicmFkaW9cIl17XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlucHV0W3R5cGU9XCJyYWRpb1wiXTpjaGVja2VkICsgbGFiZWwge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44KTtcbiAgICAgICAgICAgICAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjkpO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAjOTY1QjAwO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgbGFiZWwge1xuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAkZGVmYXVsdC10cmFuc2l0aW9uLWR1cmF0aW9uICRkZWZhdWx0LXRyYW5zaXRpb24tZnVuY3Rpb247XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMTBweCAyMnB4O1xuICAgICAgICAgICAgICAgIGJvcmRlcjogc29saWQgMXB4ICRjb2xvci10ZXh0LWRlZmF1bHQ7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMtbGFyZ2U7XG4gICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgICAgIHVzZXItc2VsZWN0OiBub25lO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICB3aWR0aDogOTBweDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiBub25lO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAmOmZpcnN0LW9mLXR5cGUge1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItcmlnaHQ6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IC0ycHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICY6bnRoLW9mLXR5cGUoMikge1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtM3B4O1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAtM3B4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAmOmxhc3Qtb2YtdHlwZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItbGVmdDogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtMnB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRjb2xvci10ZXh0LWVtcGhhc2l6ZWQ7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICRjb2xvci1pbnB1dC1kYXJrZW47XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIC5nYW1lcy10YWJsZSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDcwcHg7XG4gICAgICAgIC50YWJsZS1oZWFkZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICBwYWRkaW5nOiAyNXB4IDBweDtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLW1vYmlsZS1vbmx5KSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYuZml4ZWQtaGVhZGVyIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgdG9wOiAwcHg7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjQ3LCAxNDYsIDAsIDAuOSk7XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgNTAwbXMgZWFzZS1pbi1vdXQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLnNvcnQtYnktc2VjdGlvbiB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgIGlucHV0W3R5cGU9XCJyYWRpb1wiXSB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGxhYmVsIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRjb2xvci10ZXh0LWRlZmF1bHQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGxhYmVsOmZpcnN0LW9mLXR5cGUge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGxhYmVsOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwcHggMTBweDtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgICAgICAgICAgICAgICAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkY29sb3ItaW5wdXQtZGFya2VuO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBsYWJlbDpudGgtb2YtdHlwZSgyKSB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMjBweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgbGFiZWw6bGFzdC1vZi10eXBlIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEzNXB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBzcGFuLmljb24tZG93bi1vcGVuLWJpZyB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAtMzBweDtcbiAgICAgICAgICAgICAgICAgICAgJi5kZXNjZW5kaW5nIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGFuaW1hdGlvbi1uYW1lOiBhbmltYXRpb25Ub0Rlc2NlbmRpbmc7XG4gICAgICAgICAgICAgICAgICAgICAgICBhbmltYXRpb24tZHVyYXRpb246IDMwMG1zO1xuICAgICAgICAgICAgICAgICAgICAgICAgYW5pbWF0aW9uLWZpbGwtbW9kZTogZm9yd2FyZHM7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgJi5hc2NlbmRpbmcge1xuICAgICAgICAgICAgICAgICAgICAgICAgYW5pbWF0aW9uLW5hbWU6IGFuaW1hdGlvblRvQXNjZW5kaW5nO1xuICAgICAgICAgICAgICAgICAgICAgICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAzMDBtcztcbiAgICAgICAgICAgICAgICAgICAgICAgIGFuaW1hdGlvbi1maWxsLW1vZGU6IGZvcndhcmRzO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIEBrZXlmcmFtZXMgYW5pbWF0aW9uVG9Bc2NlbmRpbmd7XG4gICAgICAgICAgICAgICAgICAgICAgICAwJSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGVYKDBkZWcpO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgMTAwJSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGVYKDE4MGRlZyk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgQGtleWZyYW1lcyBhbmltYXRpb25Ub0Rlc2NlbmRpbmd7XG4gICAgICAgICAgICAgICAgICAgICAgICAwJSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGVYKDE4MGRlZyk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAxMDAlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZVgoMGRlZyk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMHB4O1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDBweDtcbiAgICAgICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAzOHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnRhYmxlLWhlYWRlci1jb250ZW50IHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgYWRhcHRpdmUtY29udGFpbmVyO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICB0YWJsZSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBhZGFwdGl2ZS1jb250YWluZXI7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuICAgICAgICAudGFibGUtY29udGFpbmVyIHtcbiAgICAgICAgICAgICYuZml4ZWQtaGVhZGVyIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogNzNweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgdHIge1xuICAgICAgICAgICAgQGluY2x1ZGUgYWRkLWJvcmRlci1ib3R0b207XG4gICAgICAgICAgICB0ZCB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy10b3A6IDEwcHg7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDEwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICB0ZDpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDQ0MnB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgdGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMTVweDtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC1tb2JpbGUtb25seSkge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8vIGZvciBmaWx0ZXJpbmdcbiAgICAgICAgLmZpbHRlciB7XG4gICAgICAgICAgICB0ciB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuZmlsdGVyLmZwcyB7XG4gICAgICAgICAgICB0ci5mcHMge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IHRhYmxlLXJvdztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuZmlsdGVyLmRyaXZpbmcge1xuICAgICAgICAgICAgdHIuZHJpdmluZyB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogdGFibGUtcm93O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5maWx0ZXIuZmxpZ2h0IHtcbiAgICAgICAgICAgIHRyLmZsaWdodCB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogdGFibGUtcm93O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuIiwiYm9keS5yZW1vdGUtc3VwcG9ydCB7XG4gbWFpbiB7XG4gICAgICAgIEBpbmNsdWRlIGFkYXB0aXZlLWNvbnRhaW5lcjtcblxuICAgICAgICBtYXJnaW4tYm90dG9tOiA0NXB4O1xuXG4gICAgICAgIHNlY3Rpb24ge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgJi5pbnRybyB7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmLmNvbnRlbnQge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBzcGFuKDgpO1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBwdXNoKDIpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBhLmN0YSB7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJ0bjtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgICAgICB0b3A6IDQ1cHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICB9XG59IiwiYm9keS5wcm9tbyB7XG4gICAgbWFpbiB7XG4gICAgICAgIEBpbmNsdWRlIGFkYXB0aXZlLWNvbnRhaW5lcjtcbiAgICAgICAgbWFyZ2luLXRvcDogMjVweDtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgIGgzLFxuICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgdWwge1xuICAgICAgICAgICAgQGluY2x1ZGUgZmx1c2gtbGlzdDtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDQ1cHg7XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAzNXB4O1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxMDBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuYWN0aW9uLWxpbmsge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBidG47XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuXG4gICAgfVxufVxuIiwiYm9keS5tZWRpYSB7XG4gICAgLy8gYmx1ciB0aGUgI2NvbnRlbnQgZGl2IHdoZW4gbW9kYWwgb3BlbnNcbiAgICBbaWQ9XCJjb250ZW50XCJdIHtcbiAgICAgICAgJi5ibHVyIHtcbiAgICAgICAgICAgIGZpbHRlcjogYmx1cig1cHgpO1xuICAgICAgICB9XG4gICAgfVxuICAgIC8vIG1vZGFsIGRpc3BsYXkgY29kZVxuICAgIC5tb2RhbCB7XG4gICAgICAgIC8vIG1vZGFsIGlzIGhpZGRlbiBhbmQgbWFkZSB2aXNpYmxlIHdpdGgganF1ZXJ5XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgcGFkZGluZy10b3A6IDYwcHg7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgb3ZlcmZsb3c6IGF1dG87XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYigwLDAsMCk7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwwLDAsLjQpO1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiA3NXB4O1xuICAgICAgICB9XG4gICAgICAgIC8qIE1vZGFsIENvbnRlbnQgKi9cbiAgICAgICAgLm1vZGFsLWNvbnRlbnQge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLDAsMCwuNzUpO1xuICAgICAgICAgICAgbWFyZ2luOiBhdXRvO1xuICAgICAgICAgICAgcGFkZGluZzogMjBweDtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDgwJTtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAzcHg7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDYwMHB4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGgzIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmRvd25sb2FkIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAvKiBUaGUgTW9kYWwgQ2xvc2UgQnV0dG9uICovXG4gICAgICAgIC5jbG9zZSB7XG4gICAgICAgICAgICBjb2xvcjogI2FhYWFhYTtcbiAgICAgICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjhweDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgJjpob3ZlcixcbiAgICAgICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAjY2NjY2NjO1xuICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBtYWluIHtcbiAgICAgICAgQGluY2x1ZGUgYWRhcHRpdmUtY29udGFpbmVyO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA0NXB4O1xuICAgICAgICBzZWN0aW9uIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDkwcHg7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICB1bCB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgZmx1c2gtbGlzdDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgICAgICAmLmN0YSB7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJ0bjtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDMwcHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgLmltYWdlLWRvd25sb2FkcyB7XG4gICAgICAgIG92ZXJmbG93OiBhdXRvO1xuICAgICAgICBhIHtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAzMHB4O1xuICAgICAgICB9XG4gICAgICAgIGltZyB7XG4gICAgICAgICAgICBwYWRkaW5nOiAyMHB4IDAgMTBweDtcbiAgICAgICAgfVxuICAgIH1cbiAgICBzZWN0aW9uW2lkPVwidHJhY2tpci01XCJdIHtcbiAgICAgICAgLmltYWdlLWRvd25sb2FkcyB7XG4gICAgICAgICAgICAgLm1vZGFsQnRuIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBnYWxsZXJ5KDEgb2YgMik7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtdGFibGV0LXVwKSB7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGdhbGxlcnkoMSBvZiAzKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgc2VjdGlvbltpZD1cInRyYWNrY2xpcC1wcm9cIl0ge1xuICAgICAgICAuaW1hZ2UtZG93bmxvYWRzIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGNvbnRhaW5lcig0MDBweCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAgLm1vZGFsQnRuIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBnYWxsZXJ5KDEgb2YgMik7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgc2VjdGlvbltpZD1cInRyYWNrY2xpcFwiXSB7XG4gICAgICAgIC5pbWFnZS1kb3dubG9hZHMge1xuICAgICAgICAgICAgIC5tb2RhbEJ0biB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgZ2FsbGVyeSgxIG9mIDEpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIHNlY3Rpb25baWQ9XCJoYXRzXCJdIHtcbiAgICAgICAgLmltYWdlLWRvd25sb2FkcyB7XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC10YWJsZXQtdXApIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBjb250YWluZXIoNDAwcHgpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgIC5tb2RhbEJ0biB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgZ2FsbGVyeSgxIG9mIDIpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIHNlY3Rpb25baWQ9XCJ2aXNvcnNcIl0ge1xuICAgICAgICAuaW1hZ2UtZG93bmxvYWRzIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXRhYmxldC11cCkge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGNvbnRhaW5lcig0MDBweCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAgLm1vZGFsQnRuIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBnYWxsZXJ5KDEgb2YgMik7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIvLyBJc29sYXRpb24gU3ludGF4XG4vLyA9PT09PT09PT09PT09PT09XG5cblxuLy8gSXNvbGF0ZSBbTWl4aW5dXG4vLyAtLS0tLS0tLS0tLS0tLS1cbi8vIFNldCBpc29sYXRpb24gYXMgYW4gb3ZlcnJpZGUuXG4vLyAtICRsb2NhdGlvbjogPHNwYW4+XG5AbWl4aW4gaXNvbGF0ZShcbiAgJGlzb2xhdGU6IDFcbikge1xuICAkaW5zcGVjdDogJGlzb2xhdGU7XG5cbiAgJG91dHB1dDogKFxuICAgIHB1c2g6IGlzb2xhdGUoJGlzb2xhdGUpLFxuICAgIGZsb3c6IHN1c3ktZ2V0KGZsb3csICRpc29sYXRlKSxcbiAgKTtcblxuICBAaW5jbHVkZSBzdXN5LWluc3BlY3QoaXNvbGF0ZSwgJGluc3BlY3QpO1xuICBAaW5jbHVkZSBpc29sYXRlLW91dHB1dCgkb3V0cHV0Li4uKTtcbn1cblxuXG4vLyBJc29sYXRlIFtmdW5jdGlvbl1cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gUmV0dXJuIGFuIGlzb2xhdGlvbiBvZmZzZXQgd2lkdGguXG4vLyAtICRsb2NhdGlvbjogPHNwYW4+XG5AZnVuY3Rpb24gaXNvbGF0ZShcbiAgJGlzb2xhdGU6IDFcbikge1xuICAkaXNvbGF0ZTogcGFyc2Utc3BhbigkaXNvbGF0ZSk7XG4gICRpc29sYXRpb246IHN1c3ktZ2V0KHNwYW4sICRpc29sYXRlKTtcblxuICBAaWYgJGlzb2xhdGlvbiBhbmQgbm90KGdldC1sb2NhdGlvbigkaXNvbGF0ZSkpIHtcbiAgICAkbmV3OiAoXG4gICAgICBzcGFuOiBudWxsLFxuICAgICAgbG9jYXRpb246ICRpc29sYXRpb24sXG4gICAgKTtcbiAgICAkaXNvbGF0ZTogbWFwLW1lcmdlKCRpc29sYXRlLCAkbmV3KTtcbiAgfVxuXG4gIEByZXR1cm4gZ2V0LWlzb2xhdGlvbigkaXNvbGF0ZSk7XG59XG5cblxuLy8gR2V0IElzb2xhdGlvblxuLy8gLS0tLS0tLS0tLS0tLVxuLy8gUmV0dXJuIHRoZSBpc29sYXRpb24gb2Zmc2V0IHdpZHRoXG4vLyAtICRpbnB1dDogPG1hcD5cbkBmdW5jdGlvbiBnZXQtaXNvbGF0aW9uKFxuICAkaW5wdXRcbikge1xuICAkbG9jYXRpb24gICA6IGdldC1sb2NhdGlvbigkaW5wdXQpO1xuICAkY29sdW1ucyAgICA6IHN1c3ktZ2V0KGNvbHVtbnMsICRpbnB1dCk7XG4gICR3aWR0aCAgICAgIDogbnVsbDtcblxuICBAaWYgdHlwZS1vZigkbG9jYXRpb24pID09IG51bWJlciBhbmQgbm90KHVuaXRsZXNzKCRsb2NhdGlvbikpIHtcbiAgICAkd2lkdGg6ICRsb2NhdGlvbjtcbiAgfSBAZWxzZSBpZiAkbG9jYXRpb24ge1xuICAgICRwdXNoOiAkbG9jYXRpb24gLSAxO1xuICAgIEBpZiAkcHVzaCA+IDAge1xuICAgICAgJHB1c2g6IG1hcC1tZXJnZSgkaW5wdXQsIChcbiAgICAgICAgc3BhbjogJHB1c2gsXG4gICAgICAgIGxvY2F0aW9uOiAxLFxuICAgICAgICBzcHJlYWQ6IHdpZGUsXG4gICAgICApKTtcbiAgICAgICR3aWR0aDogZ2V0LXNwYW4td2lkdGgoJHB1c2gpO1xuICAgIH1cbiAgfVxuXG4gIEBpZiBzdXN5LWdldChndXR0ZXItcG9zaXRpb24sICRpbnB1dCkgPT0gc3BsaXRcbiAgICAgIGFuZCBzdXN5LWdldChndXR0ZXJzLCAkaW5wdXQpID4gMCB7XG4gICAgJHdpZHRoOiBpZigkd2lkdGggPT0gbnVsbCwgZ3V0dGVycygkaW5wdXQpLCAkd2lkdGggKyBndXR0ZXJzKCRpbnB1dCkpO1xuICB9XG5cbiAgQHJldHVybiAkd2lkdGggb3IgMDtcbn1cbiJdLCJzb3VyY2VSb290IjoiL3NvdXJjZS8ifQ== */