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