@charset "UTF-8";@import "css/bootstrap.min.css";@keyframes blink{0%,to{opacity:1}50%{opacity:0}}@-webkit-keyframes blink{0%,to{opacity:1}50%{opacity:0}}@-moz-keyframes blink{0%,to{opacity:1}50%{opacity:0}}@keyframes jump{0%,to{transform:translateY(0)}60%{transform:translateY(-20px)}}@-webkit-keyframes jump{0%,to{transform:translateY(0)}60%{transform:translateY(-20px)}}@-moz-keyframes jump{0%,to{transform:translateY(0)}60%{transform:translateY(-20px)}}@keyframes weight{0%{transform:rotate(-48deg)}to{transform:rotate(48deg)}}@-webkit-keyframes weight{0%{transform:rotate(-48deg)}to{transform:rotate(48deg)}}@-moz-keyframes weight{0%{transform:rotate(-48deg)}to{transform:rotate(48deg)}}@keyframes hammer{0%{transform:rotate(28deg)}to{transform:rotate(2deg)}}@-webkit-keyframes hammer{0%{transform:rotate(28deg)}to{transform:rotate(2deg)}}@-moz-keyframes hammer{0%{transform:rotate(28deg)}to{transform:rotate(2deg)}}@keyframes appear-hammer{0%,to{opacity:0}50%,60%{opacity:1}}@-webkit-keyframes appear-hammer{0%,to{opacity:0}50%,60%{opacity:1}}@-moz-keyframes appear-hammer{0%,to{opacity:0}50%,60%{opacity:1}}@keyframes scale{0%,80%,to{transform:scale(1)}50%{transform:scale(1.8)}}@-webkit-keyframes scale{0%,80%,to{transform:scale(1)}50%{transform:scale(1.8)}}@-moz-keyframes scale{0%,80%,to{transform:scale(1)}50%{transform:scale(1.8)}}@keyframes translateX{0%{left:-300px}to{left:calc(100% + 310px)}}@keyframes translateYAndScale{0%,80%,to{transform:translateY(-50%) scale(1)}50%{transform:translateY(-50%) scale(1.25)}}@-webkit-keyframes translateYAndScale{0%,80%,to{transform:translateY(-50%) scale(1)}50%{transform:translateY(-50%) scale(1.25)}}@-moz-keyframes translateYAndScale{0%,80%,to{transform:translateY(-50%) scale(1)}50%{transform:translateY(-50%) scale(1.25)}}@keyframes hoop{0%,40%,to{transform:translateX(0)}30%{transform:translateX(-40px)}50%{transform:translateX(50px)}}@-webkit-keyframes hoop{0%,40%,to{transform:translateX(0)}30%{transform:translateX(-40px)}50%{transform:translateX(50px)}}@-moz-keyframes hoop{0%,40%,to{transform:translateX(0)}30%{transform:translateX(-40px)}50%{transform:translateX(50px)}}@keyframes danse{0%,to{transform:translateX(0)}50%{transform:translateX(-10px)}70%{transform:translateX(10px)}}@-webkit-keyframes danse{0%,to{transform:translateX(0)}50%{transform:translateX(-10px)}70%{transform:translateX(10px)}}@-moz-keyframes danse{0%,to{transform:translateX(0)}50%{transform:translateX(-10px)}70%{transform:translateX(10px)}}@keyframes hamburger{0%{transform:scale(1)}to{transform:scale(0)}}@-webkit-keyframes hamburger{0%{transform:scale(1)}to{transform:scale(0)}}@-moz-keyframes hamburger{0%{transform:scale(1)}to{transform:scale(0)}}@keyframes blink-cursor{0%,to{opacity:1}50%{opacity:0}}@-webkit-keyframes blink-cursor{0%,to{opacity:1}50%{opacity:0}}@-moz-keyframes blink-cursor{0%,to{opacity:1}50%{opacity:0}}@keyframes bottleDance{0%,to{transform:rotate(0deg)}5%{transform:rotate(5deg)}95%{transform:rotate(-5deg)}}@-webkit-keyframes bottleDance{0%,to{transform:rotate(0deg)}5%{transform:rotate(5deg)}95%{transform:rotate(-5deg)}}@-moz-keyframes bottleDance{0%,to{transform:rotate(0deg)}5%{transform:rotate(5deg)}95%{transform:rotate(-5deg)}}@keyframes appear{0%{opacity:0}to{opacity:1}}@-webkit-keyframes appear{0%{opacity:0}to{opacity:1}}@-moz-keyframes appear{0%{opacity:0}to{opacity:1}}@keyframes disappear{0%{opacity:1}to{opacity:0}}@-webkit-keyframes disappear{0%{opacity:1}to{opacity:0}}@-moz-keyframes disappear{0%{opacity:1}to{opacity:0}}a,abbr,acronym,address,applet,article,aside,audio,b,big,blockquote,body,canvas,caption,center,cite,code,dd,del,details,dfn,div,dl,dt,em,embed,figcaption,h1,h2,h3,h4,h5,h6,hgroup,html,i,iframe,ins,kbd,label,li,mark,menu,nav,object,ol,output,pre,q,ruby,s,samp,section,small,span,strike,strong,sub,summary,sup,table,tbody,td,tfoot,th,thead,time,tr,tt,u,ul,var,video{margin:0;padding:0;border:0;font:inherit;vertical-align:baseline}figure,form,p{padding:0;border:0}img{padding:0;font:inherit}fieldset,figure,footer,form,header,legend,p{font:inherit;vertical-align:baseline}footer,header,legend{margin:0}footer,header{border:0}:focus{outline:0}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}body{line-height:1;font-family:"Muli",sans-serif;font-size:15px;color:#000}ol,ul{list-style:none}blockquote,q{quotes:none}blockquote:after,blockquote:before,q:after,q:before{content:none}table{border-collapse:collapse;border-spacing:0}input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration,input[type=search]::-webkit-search-results-button,input[type=search]::-webkit-search-results-decoration{-webkit-appearance:none;-moz-appearance:none}input[type=search]{-moz-appearance:none}audio,canvas,video{display:inline-block;*display:inline;*zoom:1;max-width:100%}audio:not([controls]){display:none;height:0}[hidden]{display:none}html{font-size:100%;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%}a:focus{outline:thin dotted}a:active,a:hover{outline:0}img{border:0;-ms-interpolation-mode:bicubic;vertical-align:middle;width:100%;margin:0 auto;display:block}fieldset,legend{border:0;padding:0}fieldset,figure,form{margin:0}legend{white-space:normal;*margin-left:-7px}button,input,select{vertical-align:baseline}button,input,select,textarea{font-size:100%;margin:0;*vertical-align:middle}button,input{line-height:normal}button,select{text-transform:none}button,html input[type=button],input[type=reset],input[type=submit]{-webkit-appearance:button;cursor:pointer;*overflow:visible}button[disabled],html input[disabled]{cursor:default}input[type=checkbox],input[type=radio]{box-sizing:border-box;padding:0;*height:13px;*width:13px}input[type=search]{-webkit-appearance:textfield;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;box-sizing:content-box}input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration{-webkit-appearance:none}button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0}textarea{overflow:auto;vertical-align:top}button,html,input,select,textarea{color:#222}::-moz-selection{background:#b3d4fc;text-shadow:none}::selection{background:#b3d4fc;text-shadow:none}textarea{resize:vertical}.chromeframe{margin:.2em 0;background:#ccc;color:#000;padding:.2em 0}.hide{display:none!important}.show{display:inline-block!important}h1,h2,h3{color:#27377a}h1,h1 .sub-title{font-size:20px;text-align:left}h1 .sub-title{font-size:50px}h1,h2,h3,small{font-family:"Muli",sans-serif}h2,h3{font-size:27px;line-height:34px;text-align:center}.sub-title,h2 .sub-title,h3 .sub-title{display:block}small{color:#030369}p{margin:16px 0}b,h2,h3{font-weight:700}.rating:before{letter-spacing:2.4px}.disclaimer{font-size:12px;line-height:1.4}.citation{font-size:10px;font-weight:400!important}@media (max-width:767.98px){.citation{font-size:8px}.asterisk{font-size:12px}}i{font-style:italic}.underline{text-decoration:underline}body.v01-03,body.v02{color:#2e2828}body.v01-03:not(.v02--splt-btn) main,body.v02:not(.v02--splt-btn) main{overflow:hidden}a{text-decoration:none}.video-js,video-js{background-color:#fff!important}.btn,.btn-wrap:before{cursor:pointer;border-radius:6px;background-image:linear-gradient(180deg,#ffc073 0%,#fb8143 100%);padding:7px 0;width:77%;display:inline-block;color:#fff;font-size:26px;line-height:32px;margin:0 auto;border:0}.btn-wrap:not([href]):before,.btn:not([href]),.btn:not([href]):hover,.v01-03 .btn-wrap:not([href]):before,.v01-03 .btn:not([href]),.v01-03 .btn:not([href]):hover,.v02 .btn-wrap:not([href]):before,.v02 .btn:not([href]),.v02 .btn:not([href]):hover{color:#fff}.btn-wrap:hover:before,.btn:hover{color:#fff;text-decoration:none;background-image:linear-gradient(to bottom,#f9b959,#f9b959)}.btn.disabled,.btn[disabled],.disabled.btn-wrap:before,[disabled].btn-wrap:before{color:#707070;background:#f1f1f1;pointer-events:none}.v01-03 .btn,.v01-03 .btn-wrap:before,.v02 .btn,.v02 .btn-wrap:before{display:inline-block;width:auto;padding:7px 20px;margin:0 auto;line-height:1.25;border-radius:20px;background-image:linear-gradient(to bottom,#ffb900,#eba727);border:0;color:#fff;font-size:14px;text-align:center}.v01-03 .btn-wrap:hover:before,.v01-03 .btn:hover,.v02 .btn-wrap:hover:before,.v02 .btn:hover{color:#fff;text-decoration:none;background:#ffa460}.v01-03 .btn.disabled,.v01-03 .btn[disabled],.v01-03 .disabled.btn-wrap:before,.v01-03 [disabled].btn-wrap:before,.v02 .btn.disabled,.v02 .btn[disabled],.v02 .disabled.btn-wrap:before,.v02 [disabled].btn-wrap:before{background:#bfc2ca;color:#fff;box-shadow:-1px -1px 0 #fff,0 0 0 #fff,1px 1px 0 #fff,1px -1px 0 #fff,-1px 1px 0 #fff;pointer-events:none}body.v02 .btn,body.v02 .btn-wrap:before{font-size:22px;font-weight:700}.btn-wrap:before{position:static;opacity:0;content:"BUY NOW"}.btn-wrap.show:before{position:absolute;z-index:-1}.icon{overflow:hidden;display:inline-block;width:1em;height:1em;margin:0;text-align:center;vertical-align:middle;font-size:1em;fill:#030369;color:#030369;box-sizing:content-box;pointer-events:none}.icon--collapse{position:absolute;top:60%;right:0;flex:0 0 auto;margin-left:5px;color:#030369;transform:translateY(-50%);transition:transform 200ms ease-in-out}[aria-expanded=true] .icon--collapse{transform:translateY(-50%) rotate(-180deg);transition:transform 200ms ease-in-out}.icon--collapse,.icon--plus{stroke:currentColor}[aria-expanded=true] .icon--plus .vertical{display:none}.container{padding:0;width:80%;margin:0 auto;max-width:340px}.v01-03 .container,.v02 .container{max-width:430px;width:100%;padding:0 15px}.v01-03 section,.v02 section{margin:30px 0;z-index:0}.fa-rating{position:relative;white-space:nowrap;vertical-align:middle;font-family:"FontAwesome"}.fa-rating:before{content:"";font-weight:400;vertical-align:baseline}.fa-rating:after{position:absolute;top:50%;left:0;transform:translate(0%,-50%)}.rating .fa-rating.s-5:before{content:""}.rating .fa-rating.s-4-5:before{content:""}.rating .fa-rating.s-4:before{content:""}.rating .fa-rating.s-3-5:before{content:""}.rating .fa-rating.s-3:before{content:""}.rating .fa-rating.s-2-5:before{content:""}.rating .fa-rating.s-2:before{content:""}.rating .fa-rating.s-1-5:before{content:""}.rating .fa-rating.s-1:before{content:""}.rating .fa-rating.s-0-5:before{content:""}.rating .fa-rating.s-0:before{content:"　　　　　"}.rating .fa-rating.blue{color:#2d81ea}.rating .fa-rating.blue[data-rating]{cursor:pointer}header{padding:12px 0 17px 38px}header .logo{width:155px}.cart{text-align:center;padding:0 0 21px}.cart h2,.cart__mode{background-color:#27377a}.cart h2{color:#fff;font-size:23px;line-height:28px;padding:15px 0}.cart h2::after{content:none}.cart .container-lg{max-width:540px}.cart__mode{position:relative;display:flex;justify-content:space-between;align-items:center;padding:0 5px 40px;font-size:18px;line-height:1.2}.cart__mode::before{content:"";position:absolute;top:0;left:50%;width:100vw;height:100%;z-index:-1;transform:translateX(-50%);background-color:#27377a}.cart__mode-cta{margin-right:5px;margin-left:5px;padding:10px 5px;letter-spacing:normal;color:#fff;background-color:#848fae}@media (hover:hover) and (pointer:fine){.cart__mode-cta{cursor:pointer}}.cart__mode-cta.subscribe{position:relative}.cart__mode-cta.subscribe::after{content:"Best Value";position:absolute;right:0;bottom:-22px;left:0;display:block;font-size:15px;font-weight:bolder;color:#10e648}.cart__mode-cta:not(.active){flex:0 1 38%;margin-top:5px;margin-bottom:5px}.cart__mode-cta.active{flex:1 0 62%;color:#030369;background-color:#fff;border:5px solid orange;border-radius:4px;pointer-events:none}.cart .summary,footer ul li{text-align:center}.cart .summary .price{font-size:60px;line-height:73px;font-weight:600;color:#29397b;margin-bottom:5px}.cart .summary .retailPrice{font-size:14px;line-height:17px;font-weight:300;text-decoration-line:line-through;color:red;margin-bottom:11px}.cart .summary .shipping{font-size:12px;line-height:15px;color:#4a90e2;margin-bottom:11px}.cart .summary .shipping span{margin-right:2px}.cart .products .product{font-size:20px;line-height:24px;text-align:center;padding:8px 0;margin-bottom:12px;border-radius:6px;border:solid 1px #707070;background-color:#fff;cursor:pointer}.cart .products .product.active,.cart .products .product:hover{background-color:#4990e2;border-color:#4990e2;color:#fff}.cart__subscribe{margin-bottom:5px}.cart__label{display:flex;justify-content:center;margin-bottom:16px;font-size:0;font-weight:500;line-height:20px;letter-spacing:.5px}@media (hover:hover) and (pointer:fine){.cart__label{cursor:pointer}}.cart__label span{display:inline-block;font-size:14px}.cart__label span:not(.cart__checkbox){font-weight:700;color:#4a90e2}.cart__checkbox{display:inline-block;width:20px;height:20px;margin-right:15px;line-height:20px;border:3px solid #4a90e2;vertical-align:top;border-radius:2px}.cart__checkbox .icon{display:none}.cart__checkbox.checked .icon{display:block;color:#d73731;stroke:currentColor}.cart__disclaimer{margin-bottom:0;font-size:10px;font-weight:400;line-height:1.4;letter-spacing:normal}.cart__disclaimer a{color:initial}.moneyBack{background-color:#334579;color:#fff;padding:8px 0 44px}.moneyBack img{width:155px;margin-bottom:10px}.moneyBack h2{color:#fff;margin-bottom:7px;text-transform:uppercase;text-align:left;font-weight:400}.about p,.moneyBack p{font-size:15px;font-weight:300;line-height:18px}.about{background-color:#e5e9ea;padding:14px 0 29px}.about .top{display:flex;align-items:center;margin-bottom:15px}.about .top img{width:91px;margin-right:12px;display:inline-block}.about .top h2{display:inline-block;font-weight:600}.about p{line-height:22px}.faq{padding:30px 0 18px}.faq h2{font-weight:600;text-align:left}.faq .faqList li:not(:last-child) .questionWrap{border-bottom:2px solid #80808026}.faq .faqList li .questionWrap .question{font-size:18px;line-height:1.1;font-weight:700;color:#27377a;position:relative;padding-right:15px;margin-bottom:18px;margin-top:21px;cursor:pointer}.faq .faqList li .questionWrap .question:before{content:"";background:url(https://dtjlhiahlv53j.cloudfront.net/assets/bc3/product/right-arrow-large.png) no-repeat;background-size:contain;width:11px;height:7px;display:block;position:absolute;right:0;top:11px;transform:rotate(180deg);transition:transform .5s ease}.faq .faqList li .questionWrap .question[aria-expanded=true]:before{transform:rotate(0deg)}body.v01-02 .faq .faqList li .questionWrap .question,body.v01-03 .faq .faqList li .questionWrap .question,body.v02 .faq .faqList li .questionWrap .question{font-size:20px;line-height:30px}.faq .faqList li .questionWrap .answer{width:100%}.faq .faqList li .questionWrap .answer p,.faq .faqList li .questionWrap .answer ul{padding-bottom:16px;margin:0;line-height:1.4}.faq .faqList li .questionWrap .answer ul{list-style:disc;padding-left:20px}.faq .faqList li .questionWrap .answer img{width:auto}.v01-03 .faq,.v02 .faq{margin:0;background:url(https://dtjlhiahlv53j.cloudfront.net/assets/bc3/product/faq-back.jpg);background-color:#e0e3ea;background-repeat:no-repeat;background-position:top right}.v01-03 .faq h2,.v02 .faq h2{text-align:center;font-weight:700}.v01-03 .faq .faqList li .questionWrap .question,.v02 .faq .faqList li .questionWrap .question{margin-bottom:15px;margin-top:14px;font-size:17px;line-height:20px;color:#2e2828}.v01-03 .faq .faqList li .questionWrap .question:before,.v02 .faq .faqList li .questionWrap .question:before{transform:rotate(0deg);background-image:url(https://dtjlhiahlv53j.cloudfront.net/assets/bc3/product/download.svg)}.v01-03 .faq .faqList li .questionWrap .question[aria-expanded=true]:before,.v02 .faq .faqList li .questionWrap .question[aria-expanded=true]:before{transform:rotate(180deg)}.v01-03 .faq .faqList li .questionWrap .answer,.v02 .faq .faqList li .questionWrap .answer{border-top:2px solid #e3e4e5}.v01-03 .faq .faqList li .questionWrap .answer p:first-child,.v02 .faq .faqList li .questionWrap .answer p:first-child{padding-top:12px}@media (min-width:768px){.v01-03 .faq,.v02 .faq{background-image:url(https://dtjlhiahlv53j.cloudfront.net/assets/bc3/product/back_d.jpg);background-color:#d9dde6}}.rating{overflow:hidden;height:1em;font-size:17px;text-align:left;line-height:1em;letter-spacing:1px;color:#ffc86d}.rating [class^=fa]{padding-top:1em}.rating,.rating [class^=fa]::before{display:block}.reviews{padding-top:30px;padding-bottom:60px;letter-spacing:1.2px;line-height:1.42857143}.reviews__title{text-align:left;font-weight:300}.aboutBC3 h2:after,.reviews__title:after{content:"";width:42px;border-top:1px solid;display:block;margin:15px 0}.reviews__item{margin-bottom:20px;border-bottom:1px solid #d8d8d8}.reviews__author,.reviews__comment,.reviews__item-title,.reviews__note{margin-top:10px}.reviews__item-title{font-size:22px;font-weight:300;color:#000}.reviews__comment{font-size:15px}.reviews__author{font-size:17px;font-weight:700;color:#303679}.reviews__note{font-size:14px;font-weight:lighter;font-style:italic}.aboutBC3{text-align:center;background-color:#e5e9ea;padding:20px 0;overflow:hidden}.aboutBC3 .imgWrap{margin-right:-45px}.aboutBC3 .imgWrap img{max-width:240px;margin:0 auto 20px}.aboutBC3 h2,footer ul,footer ul li a{font-weight:600}.aboutBC3 h2:after{margin:15px auto}.aboutBC3 p,footer .text p{font-size:16px;font-weight:300}.aboutBC3 p{text-align:left;margin-bottom:16px;line-height:18px}.aboutBC3 .btn,.aboutBC3 .btn-wrap:before{width:100%}footer{background-color:#334579;text-align:center;color:#fff;position:relative;font-size:16px;padding:17px 0}footer .container{max-width:inherit}footer .text p{line-height:20px;margin:0}footer .text p.fda{border:solid 2px #fff;padding:5px;margin:0 5% 4px}footer img{width:169px;margin-top:5px}footer .copyright{font-size:16px;margin-top:16px;line-height:20px;font-weight:600}footer ul{display:flex;align-items:center;flex-wrap:wrap;justify-content:center}footer ul li a{color:#b9d356;text-decoration:underline}footer ul li a:hover{color:#292929}footer ul li:not(:last-child):after{content:"|";margin:0 7px}.v01-03 footer,.v02 footer{padding-top:32px;background-color:#9da4bc}.v01-03 footer .text p,.v02 footer .text p{font-size:14px;line-height:17px}.v01-03 footer .text p.fda,.v02 footer .text p.fda{margin:10px 0 9px;padding:1px;border-width:1px}.v01-03 footer .text p.morningSale-disclaimer,.v01-03 footer .text p.promo-disclaimer,.v02 footer .text p.morningSale-disclaimer,.v02 footer .text p.promo-disclaimer{margin-block:1em;font-size:.8em;font-style:italic}.v01-03 footer ul li a,.v02 footer ul li a{color:#fff;font-size:15px}.v01-03 footer .copyright,.v02 footer .copyright{width:80%;margin:15px auto 0;font-size:14px;line-height:17px}body.v02--splt-btn footer{margin-bottom:60px}footer .logo{margin-block:1em}
/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInN0eWxlLmNzcyIsInN0eWxlLnNjc3MiLCJhYnN0cmFjdHMvX2FuaW1hdGlvbnMuc2NzcyIsImJhc2UvX3Jlc2V0LnNjc3MiLCJsYXlvdXQvX2dlbmVyaWMuc2NzcyIsImJhc2UvX2hlbHBlci1jbGFzc2VzLnNjc3MiLCJiYXNlL190eXBvZ3JhcGh5LnNjc3MiLCJjb21wb25lbnRzL19idXR0b25zLnNjc3MiLCJjb21wb25lbnRzL19pY29ucy5zY3NzIiwibGF5b3V0L19sYXlvdXQuc2NzcyIsImNvbXBvbmVudHMvX3JhdGluZy5zY3NzIiwiLi4vY29tcG9uZW50cy9oZWFkZXIvaGVhZGVyLnNjc3MiLCIuLi9jb21wb25lbnRzL2NhcnQtcmVjb2RlZC9jYXJ0LnNjc3MiLCJhYnN0cmFjdHMvZnVuY3Rpb25zL19pbmNsdWRlLW1lZGlhLnNjc3MiLCIuLi9jb21wb25lbnRzL2Zvb3Rlci9mb290ZXIuc2NzcyIsIi4uL2NvbXBvbmVudHMvbW9uZXlCYWNrL21vbmV5QmFjay5zY3NzIiwiLi4vY29tcG9uZW50cy9hYm91dC9hYm91dC5zY3NzIiwiLi4vY29tcG9uZW50cy9mYXEvZmFxLnNjc3MiLCIuLi9jb21wb25lbnRzL3Jldmlld3MvcmV2aWV3cy5zY3NzIiwiLi4vY29tcG9uZW50cy9hYm91dEJDMy9hYm91dEJDMy5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGlCQ1dRLGdDLEFDWFIsaUJBQ0ksRSxDQUVBLEUsQ0FGSyxTLENBQ0wsRyxDQUFNLFcsQUFHVix5QkFDSSxFLENBRUEsRSxDQUZLLFMsQ0FDTCxHLENBQU0sVyxBQUdWLHNCQUNJLEUsQ0FFQSxFLENBRkssUyxDQUNMLEcsQ0FBTSxXLEFBa0JWLGdCQUNJLEUsQ0FFQSxFLENBRkssdUIsQ0FDTCxHLENBQU0sNkIsQUFHVix3QkFDSSxFLENBRUEsRSxDQUZLLHVCLENBQ0wsRyxDQUFNLDZCLEFBSVYscUJBQ0ksRSxDQUVBLEUsQ0FGSyx1QixDQUNMLEcsQ0FBTSw2QixBQUtWLGtCQUNJLEUsQ0FBSyx3QixDQUNMLEUsQ0FBTyx5QixBQUVYLDBCQUNJLEUsQ0FBSyx3QixDQUNMLEUsQ0FBTyx5QixBQUdYLHVCQUNJLEUsQ0FBSyx3QixDQUNMLEUsQ0FBTyx5QixBQUdYLGtCQUNJLEUsQ0FBSyx1QixDQUNMLEUsQ0FBTyx3QixBQUVYLDBCQUNJLEUsQ0FBSyx1QixDQUNMLEUsQ0FBTyx3QixBQUdYLHVCQUNJLEUsQ0FBSyx1QixDQUNMLEUsQ0FBTyx3QixBQUdYLHlCQUNJLEUsQ0FHQSxFLENBSEssUyxDQUNMLEcsQ0FDQSxHLENBRE0sVyxBQUlWLGlDQUNJLEUsQ0FHQSxFLENBSEssUyxDQUNMLEcsQ0FDQSxHLENBRE0sVyxBQUtWLDhCQUNJLEUsQ0FHQSxFLENBSEssUyxDQUNMLEcsQ0FDQSxHLENBRE0sVyxBQUtWLGlCQUNJLEUsQ0FFQSxHLENBQ0EsRSxDQUhLLGtCLENBQ0wsRyxDQUFNLHNCLEFBSVYseUJBQ0ksRSxDQUVBLEcsQ0FDQSxFLENBSEssa0IsQ0FDTCxHLENBQU0sc0IsQUFLVixzQkFDSSxFLENBRUEsRyxDQUNBLEUsQ0FISyxrQixDQUNMLEcsQ0FBTSxzQixBQU1WLHNCQUNJLEUsQ0FDSSxXLENBRUosRSxDQUNHLHlCLEFBSVAsOEJBQ0ksRSxDQU1BLEcsQ0FHQSxFLENBUkksbUMsQ0FFSixHLENBQ0ksd0MsQUFTUixzQ0FDSSxFLENBTUEsRyxDQUdBLEUsQ0FSSSxtQyxDQUVKLEcsQ0FDSSx3QyxBQVVSLG1DQUNJLEUsQ0FNQSxHLENBR0EsRSxDQVJJLG1DLENBRUosRyxDQUNJLHdDLEFBVVIsZ0JBQ0ksRSxDQUVBLEcsQ0FFQSxFLENBSkssdUIsQ0FDTCxHLENBQUssMkIsQ0FFTCxHLENBQUssNEIsQUFHVCx3QkFDSSxFLENBRUEsRyxDQUVBLEUsQ0FKSyx1QixDQUNMLEcsQ0FBSywyQixDQUVMLEcsQ0FBSyw0QixBQUlULHFCQUNJLEUsQ0FFQSxHLENBRUEsRSxDQUpLLHVCLENBQ0wsRyxDQUFLLDJCLENBRUwsRyxDQUFLLDRCLEFBSVQsaUJBQ0ksRSxDQUdBLEUsQ0FISyx1QixDQUNMLEcsQ0FBSywyQixDQUNMLEcsQ0FBSyw0QixBQUdULHlCQUNJLEUsQ0FHQSxFLENBSEssdUIsQ0FDTCxHLENBQUssMkIsQ0FDTCxHLENBQUssNEIsQUFJVCxzQkFDSSxFLENBR0EsRSxDQUhLLHVCLENBQ0wsRyxDQUFLLDJCLENBQ0wsRyxDQUFLLDRCLEFBS1QscUJBQ0ksRSxDQUFLLGtCLENBQ0wsRSxDQUFPLG9CLEFBR1gsNkJBQ0ksRSxDQUFLLGtCLENBQ0wsRSxDQUFPLG9CLEFBR1gsMEJBQ0ksRSxDQUFLLGtCLENBQ0wsRSxDQUFPLG9CLEFBT1gsd0JBQ0ksRSxDQUVBLEUsQ0FGSyxTLENBQ0wsRyxDQUFNLFcsQUFHVixnQ0FDSSxFLENBRUEsRSxDQUZLLFMsQ0FDTCxHLENBQU0sVyxBQUdWLDZCQUNJLEUsQ0FFQSxFLENBRkssUyxDQUNMLEcsQ0FBTSxXLEFBS1YsdUJBQ0ksRSxDQUdBLEUsQ0FISyxzQixDQUNMLEUsQ0FBSyxzQixDQUNMLEcsQ0FBTSx5QixBQUdWLCtCQUNJLEUsQ0FHQSxFLENBSEssc0IsQ0FDTCxFLENBQUssc0IsQ0FDTCxHLENBQU0seUIsQUFJViw0QkFDSSxFLENBR0EsRSxDQUhLLHNCLENBQ0wsRSxDQUFLLHNCLENBQ0wsRyxDQUFNLHlCLEFBS1Ysa0JBQ0ksRSxDQUFPLFMsQ0FDUCxFLENBQU8sVyxBQUVYLDBCQUNJLEUsQ0FBTyxTLENBQ1AsRSxDQUFPLFcsQUFFWCx1QkFDSSxFLENBQU8sUyxDQUNQLEUsQ0FBTyxXLEFBSVgscUJBQ0ksRSxDQUFPLFMsQ0FDUCxFLENBQU8sVyxBQUVYLDZCQUNJLEUsQ0FBTyxTLENBQ1AsRSxDQUFPLFcsQUFFWCwwQkFDSSxFLENBQU8sUyxDQUNQLEUsQ0FBTyxXQ2xTWCxDLENBQUEsSSxDQUFBLE8sQ0FBQSxPLENBQUEsTSxDQUFBLE8sQ0FBQSxLLENBQUEsSyxDQUFBLEMsQ0FBQSxHLENBQUEsVSxDQUFBLEksQ0FBQSxNLENBQUEsTyxDQUFBLE0sQ0FBQSxJLENBQUEsSSxDQUFBLEUsQ0FBQSxHLENBQUEsTyxDQUFBLEcsQ0FBQSxHLENBQUEsRSxDQUFBLEUsQ0FBQSxFLENBQUEsSyxDQUFBLFUsQ0FBQSxFLENBQUEsRSxDQUFBLEUsQ0FBQSxFLENBQUEsRSxDQUFBLEUsQ0FBQSxNLENBQUEsSSxDQUFBLEMsQ0FBQSxNLENBQUEsRyxDQUFBLEcsQ0FBQSxLLENBQUEsRSxDQUFBLEksQ0FBQSxJLENBQUEsRyxDQUFBLE0sQ0FBQSxFLENBQUEsTSxDQUFBLEcsQ0FBQSxDLENBQUEsSSxDQUFBLEMsQ0FBQSxJLENBQUEsTyxDQUFBLEssQ0FBQSxJLENBQUEsTSxDQUFBLE0sQ0FBQSxHLENBQUEsTyxDQUFBLEcsQ0FBQSxLLENBQUEsSyxDQUFBLEUsQ0FBQSxLLENBQUEsRSxDQUFBLEssQ0FBQSxJLENBQUEsRSxDQUFBLEUsQ0FBQSxDLENBQUEsRSxDQUFBLEcsQ0FBQSxLLENBYUUsUSxDQUNELFMsQ0FDQSxRLENBRUEsWSxDQUNBLHVCLENBbEJELE0sQ0FBQSxJLENBQUEsQyxDQWNDLFMsQ0FDQSxRLENBZkQsRyxDQWNDLFMsQ0FHQSxZLENBakJELFEsQ0FBQSxNLENBQUEsTSxDQUFBLEksQ0FBQSxNLENBQUEsTSxDQUFBLEMsQ0FpQkMsWSxDQUNBLHVCLENBbEJELE0sQ0FBQSxNLENBQUEsTSxDQWFFLFEsQ0FiRixNLENBQUEsTSxDQWVDLFEsQ0FPRCxNLENBQ0ksUyxDQUlKLE8sQ0FBQSxLLENBQUEsTyxDQUFBLFUsQ0FBQSxNLENBQUEsTSxDQUFBLE0sQ0FBQSxNLENBQUEsSSxDQUFBLEcsQ0FBQSxPLENBRUMsYSxDQUdELEksQ0FDQyxhLENDcENHLDZCLENBQ0EsYyxDQUNBLFUsQ0RxQ0osRSxDQUFBLEUsQ0FDQyxlLENBR0QsVSxDQUFBLEMsQ0FDQyxXLENBR0QsZ0IsQ0FBQSxpQixDQUFBLE8sQ0FBQSxRLENBR0MsWSxDQUdELEssQ0E0UUksd0IsQ0FDQSxnQixDQXhRSixnRCxDQUFBLDZDLENBQUEsaUQsQ0FBQSxxRCxDQUlJLHVCLENBQ0Esb0IsQ0FHSixrQixDQUVJLG9CLENBZ0JKLEssQ0FBQSxNLENBQUEsSyxDQUdJLG9CLENBQ0EsZSxDQUNBLE8sQ0FDQSxjLENBUUosVUFBQSxXLENBQ0ksWSxDQUNBLFEsQ0FRSixRLENBQ0ksWSxDQVVKLEksQ0FDSSxjLENBQ0EsNkIsQ0FDQSx5QixDQU9KLE8sQ0FDSSxtQixDQU9KLFEsQ0FBQSxPLENBRUksUyxDQVFKLEcsQ0FDSSxRLENBQ0EsOEIsQ0FvTUEscUIsQ0NwVUEsVSxDQUNBLGEsQ0FDQSxhLENEcUpKLFEsQ0FZQSxNLENBQ0ksUSxDQUNBLFMsQ0FkSixRLENBaEJBLE0sQ0FRQSxJLENBMExJLFEsQ0F0S0osTSxDQUdJLGtCLENBQ0EsaUIsQ0FVSixNLENBQUEsSyxDQUFBLE0sQ0FNSSx1QixDQU5KLE0sQ0FBQSxLLENBQUEsTSxDQUFBLFEsQ0FJSSxjLENBQ0EsUSxDQUVBLHNCLENBUUosTSxDQUFBLEssQ0FFSSxrQixDQVVKLE0sQ0FBQSxNLENBRUksbUIsQ0FhSixNLENBQUEsdUIsQ0FBQSxpQixDQUFBLGtCLENBSUkseUIsQ0FDQSxjLENBQ0EsaUIsQ0FPSixnQixDQUFBLG9CLENBRUksYyxDQVVKLG9CLENBQUEsaUIsQ0FFSSxxQixDQUNBLFMsQ0FDQSxZLENBQ0EsVyxDQVNKLGtCLENBQ0ksNEIsQ0FDQSwyQixDQUNBLDhCLENBQ0Esc0IsQ0FRSixnRCxDQUFBLDZDLENBRUksdUIsQ0FPSix3QixDQUFBLHVCLENBRUksUSxDQUNBLFMsQ0FRSixRLENBQ0ksYSxDQUNBLGtCLENBWUosTSxDQUFBLEksQ0FBQSxLLENBQUEsTSxDQWRBLFEsQ0FtQkksVSxDQUlKLGdCLENBQ0ksa0IsQ0FDQSxnQixDQUdKLFcsQ0FDSSxrQixDQUNBLGdCLENBYUosUSxDQUNJLGUsQ0FHSixZLENBQ0ksYSxDQUNBLGUsQ0FDQSxVLENBQ0EsYyxDRTVXSixLLENBQ0ksc0IsQ0FHSixLLENBQ0ksOEIsQ0NKSixFLENBSUEsRSxDQUFBLEUsQ0FBdUYsYSxDQUp2RixFLENBQ0ksYSxDQUR1QixjLENBQXFDLGUsQ0FDNUQsYSxDQUE2QixjLENBRGpDLEUsQ0FJQSxFLENBQUEsRSxDQVlBLEssQ0FDSSw2QixDQWJKLEUsQ0FBQSxFLENBQStCLGMsQ0FBcUMsZ0IsQ0FBdUMsaUIsQ0E2QjNHLFUsQ0E1QkksYSxDQUFBLGEsQ0FBVyxhLENBV2YsSyxDQUM0QixhLENBRzVCLEMsQ0FBSSxhLENBU0osQyxDQXpCQSxFLENBQUEsRSxDQTBCSSxlLENBVUEsYyxDQUFTLG9CLENBR2IsVyxDQUNJLGMsQ0FBaUIsZSxDQUVyQixTLENBQ0ksYyxDQUFpQix5QixDQUVqQiw0QkFISixTLENBSVEsYSxDQUlSLFMsQ0FFUSxnQkFJUixDLENBQ0ksaUIsQ0FHSixVLENBQ0kseUIsQ0Y1REEsVyxDQUFBLFEsQ0FFSSxhLENBR0ksZ0JBQUEsb0IsQ0FBQSxhQUFBLG9CLENBQ0ksZSxDQU1oQixDLENBQ0ksb0IsQ0FTSixTLENBQUEsUSxDQUVJLCtCLENHN0JKLEksQ0FBQSxnQixDQUFLLGMsQ0FBaUIsaUIsQ0FBb0IsZ0UsQ0FBcUUsYSxDQUFnQixTLENBQVksb0IsQ0FBdUIsVSxDQUFlLGMsQ0FBaUIsZ0IsQ0FBbUIsYSxDQUFnQixRLENBQ2pPLGNBQUEsYyxDQUFBLFNBQUEsTyxDQUFBLFNBQUEsYSxDQXFCSSxzQkFBQSxjLENBQUEsaUJBQUEsTyxDQUFBLGlCQUFBLGEsQ0FBQSxtQkFBQSxjLENBQUEsY0FBQSxPLENBQUEsY0FBQSxhLENBckJnQyxVLENBQ3BDLHNCLENBQUEsVSxDQUFRLFUsQ0FBZSxvQixDQUF1QiwyRCxDQUU5QyxhLENBQUEsYyxDQUFBLHlCLENBQUEsMEIsQ0FDSSxhLENBQWdCLGtCLENBQ2hCLG1CLENBV0wsWSxDQUFBLHdCLENBQUEsUyxDQUFBLHFCLENBRUssb0IsQ0FBd0IsVSxDQUFjLGdCLENBQW1CLGEsQ0FBZ0IsZ0IsQ0FBbUIsa0IsQ0FDNUYsMkQsQ0FBaUUsUSxDQUNqRSxVLENBQWUsYyxDQUFpQixpQixDQUVoQyw4QixDQUFBLGtCLENBQUEsMkIsQ0FBQSxlLENBQVEsVSxDQUFlLG9CLENBQXVCLGtCLENBRTlDLHFCLENBQUEsc0IsQ0FBQSxpQyxDQUFBLGtDLENBQUEsa0IsQ0FBQSxtQixDQUFBLDhCLENBQUEsK0IsQ0FDSSxrQixDQUFxQixVLENBQ3JCLHFGLENBQ0EsbUIsQ0FJUixhLENBQUEseUIsQ0FDSSxjLENBQWlCLGUsQ0FLckIsZ0IsQ0FBVSxlLENBQW1CLFMsQ0FBWSxpQixDQUVyQyxxQixDQUFTLGlCLENBQW9CLFUsQ0MvQnJDLEssQ0FDSSxlLENBQWtCLG9CLENBQXVCLFMsQ0FBWSxVLENBQWEsUSxDQUNsRSxpQixDQUFvQixxQixDQUF3QixhLENBQzVDLFksQ0FDQSxhLENBQ0Esc0IsQ0FBeUIsbUIsQ0FFekIsZSxDQUNJLGlCLENBQW9CLE8sQ0FBVSxPLENBQVUsYSxDQUFnQixlLENBQ3hELGEsQ0FBK0MsMEIsQ0FBNkIsc0MsQ0FFNUUsb0MsQ0FDSSwwQyxDQUNBLHNDLENBTlIsZSxDQVVBLFcsQ0FDSSxtQixDQUdJLDBDLENBQ0ksWSxDQy9CaEIsVSxDQUFXLFMsQ0FBWSxTLENBQVksYSxDQUFnQixlLENBQzlDLGtCLENBQUEsZSxDQUVHLGUsQ0FBa0IsVSxDQUFhLGMsQ0FJcEMsZSxDQUFBLFksQ0FFSyxhLENBQWdCLFMsQ0NUeEIsVSxDQUFhLGlCLENBQW9CLGtCLENBQXFCLHFCLENBQXVCLHlCLENBQ3pFLGlCLENBQVcsZSxDQUFzQyxlLENBQWtCLHVCLENBQ25FLGdCLENBQVcsaUIsQ0FBb0IsTyxDQUFVLE0sQ0FBUyw0QixDQUd0RCw2QixDQUErQixlLENBQy9CLCtCLENBQWlDLGUsQ0FDakMsNkIsQ0FBK0IsZSxDQUMvQiwrQixDQUFpQyxlLENBQ2pDLDZCLENBQStCLGUsQ0FDL0IsK0IsQ0FBaUMsZSxDQUNqQyw2QixDQUErQixlLENBQy9CLCtCLENBQWlDLGUsQ0FDakMsNkIsQ0FBK0IsZSxDQUMvQiwrQixDQUFpQyxlLENBQ2pDLDZCLENBQStCLGUsQ0FDL0IsdUIsQ0FBeUIsYSxDQUN6QixvQyxDQUFxQyxjLENDbEJyQyxNLENBQU8sd0IsQ0FDSCxZLENBQU0sVyxDQ0dWLEssQ0FBTyxpQixDQUFvQixnQixDQUN2QixRLENBV0EsVyxDQUV3Ryx3QixDQWJ4RyxRLENBQXdDLFUsQ0FBcEMsYyxDQUFpQixnQixDQUFpSCxjLENBRWxJLGUsQ0FDSSxZLENBSVIsbUIsQ0FDSSxlLENBR0osVyxDQUNJLGlCLENBQW9CLFksQ0FBZSw2QixDQUFnQyxrQixDQUFxQixrQixDQUN4RixjLENBQWdELGUsQ0FFaEQsbUIsQ0FDSSxVLENBQ0EsaUIsQ0FBb0IsSyxDQUFRLFEsQ0FBVyxXLENBQWMsVyxDQUFjLFUsQ0FBYSwwQixDQUNoRix3QixDQUtSLGUsQ0FDSSxnQixDQUErQyxlLENBQThDLGdCLENBQzdGLHFCLENBQXdELFUsQ0FBMEMsd0IsQ0M0aEJ0Ryx3Q0Q5aEJBLGUsQ0FLUSxnQkFHSix5QixDQUNJLGlCLENBRUEsZ0MsQ0FDSSxvQixDQUNBLGlCLENBQW9CLE8sQ0FBVSxZLENBQWUsTSxDQUFTLGEsQ0FDdEQsYyxDQUFpQixrQixDQUFxQixhLENBSTlDLG9CQUFBLFEsQ0FDSSxZLENBQWUsYyxDQUE2QyxpQixDQUdoRSxzQixDQUNJLFksQ0FDQSxhLENBQXlDLHFCLENBQWlELHVCLENBQXNFLGlCLENBQ2hLLG1CLENBSVIsYyxDRTVDSSxZLENGNENNLGlCLENBQ04scUIsQ0FBTyxjLENBQWlCLGdCLENBQW1CLGUsQ0FBb0IsYSxDQUFnQixpQixDQUMvRSwyQixDQUFjLGMsQ0FBaUIsZ0IsQ0FBbUIsZSxDQUFrQixpQyxDQUFvQyxTLENBQVksa0IsQ0FDcEgsd0IsQ0FBVSxjLENBQWdCLGdCLENBQW9CLGEsQ0FBb0Isa0IsQ0FDOUQsNkIsQ0FBSyxnQixDQUlULHdCLENBQVUsYyxDQUFpQixnQixDQUFtQixpQixDQUFvQixhLENBQWdCLGtCLENBQXFCLGlCLENBQW9CLHdCLENBQTJCLHFCLENBQTJCLGMsQ0FDN0ssK0IsQ0FBQSw4QixDQUFtQix3QixDQUEyQixvQixDQUF1QixVLENBSTdFLGdCLENBQ0ksaUIsQ0FHSixZLENBQ0ksWSxDQUFlLHNCLENBQXlCLGtCLENBQ3hDLFcsQ0FBYyxlLENBQWtCLGdCLENBQXVDLG1CLENDOGUzRSx3Q0RoZkEsWSxDQUtRLGdCQUdKLGlCLENBQ0ksb0IsQ0FDQSxjLENBRUEsc0JBQUEsZ0IsQ0FDSSxlLENBQWtCLGEsQ0FLOUIsZSxDQUNJLG9CLENBQXVCLFUsQ0FBaUMsVyxDQUFrQyxpQixDQUMxRixnQixDQUF1Qyx3QixDQUFxRSxrQixDQUFxQixpQixDQUVqSSxxQixDQUNJLFksQ0FJQSw2QixDQUNJLGEsQ0FDQSxhLENBQXVDLG1CLENBS25ELGlCLENBQ0ksZSxDQUNBLGMsQ0FBaUIsZSxDQUFrQixlLENBQWtCLHFCLENBRXJELG1CLENBQ0ksYSxDR2pIWixVLENBQWEsd0IsQ0FBMEIsVSxDQUFhLGtCLENBQ2hELGMsQ0FBSyxXLENBQWMsa0IsQ0FDbkIsYSxDQUFHLFUsQ0FBYSxpQixDQUFvQix3QixDQUEyQixlLENBQWtCLGUsQ0NHakYsUSxDREZBLFksQ0FBRyxjLENBQWlCLGUsQ0FBa0IsZ0IsQ0NIMUMsTSxDQUFTLHdCLENBQTBCLG1CLENBQy9CLFcsQ0FBSyxZLENBQWUsa0IsQ0FBcUIsa0IsQ0FDckMsZSxDQUFJLFUsQ0FBYSxpQixDQUFvQixvQixDQUNyQyxjLENBQUcsb0IsQ0FBdUIsZSxDQUU5QixRLENBQXNDLGdCLENDSjFDLEksQ0FDSSxtQixDQUNBLE8sQ0FBSyxlLENBQWtCLGUsQ0FJWCxxQkFBQSwwQixDQUFnQixpQyxDQUdoQix3QyxDQUFVLGMsQ0FBaUIsZSxDQUFtQixlLENBQWtCLGEsQ0FBb0IsaUIsQ0FBb0Isa0IsQ0FBcUIsa0IsQ0FBcUIsZSxDQUFrQixjLENBQ2hLLCtDLENBQVMsVSxDQUFhLHVHLENBQTRHLHVCLENBQTBCLFUsQ0FBYSxVLENBQWMsYSxDQUFnQixpQixDQUFvQixPLENBQVUsUSxDQUFVLHdCLENBQTJCLDZCLENBR3RRLG1FLENBQ0ksc0IsQ0FHUixvRCxDQUFBLG9ELENBQUEsaUQsQ0FHSSxjLENBQWlCLGdCLENBR3pCLHNDLENBQ0ksVSxDQUVBLHdDLENBQUEseUMsQ0FBTSxtQixDQUFzQixRLENBQVcsZSxDQUV2Qyx5QyxDQUNJLGUsQ0FBa0IsaUIsQ0FHdEIsMEMsQ0FDSSxVLENBT3BCLFksQ0FBQSxTLENBRVEsUSxDQUNBLG9GLENBQXdDLHdCLENBQW1DLDJCLENBQThCLDZCLENBQ3pHLGUsQ0FBQSxZLENBQUcsaUIsQ0FBb0IsZSxDQUlYLGdELENBQUEsNkMsQ0FDSSxrQixDQUFxQixlLENBQ3JCLGMsQ0FBaUIsZ0IsQ0FDakIsYSxDQUNBLHVELENBQUEsb0QsQ0FBUyxzQixDQUF5QiwwRixDQUU5QiwyRSxDQUFBLHdFLENBQ0ksd0IsQ0FJWiw4QyxDQUFBLDJDLENBQ0ksNEIsQ0FFSSw0RCxDQUFBLHlELENBQ0ksZ0IsQ0FReEIseUJBL0JSLFksQ0FBQSxTLENBZ0NTLHdGLENBQTRDLDBCQ3JFekQsTyxDQUNJLGUsQ0FBa0MsVSxDQUNsQyxjLENBQWlCLGUsQ0FBa0IsZSxDQUFrQixrQixDQUFxQixhLENBRTFFLG1CLENBQ0ksZSxDQUxSLE8sQ0FPUSwyQixDQUNJLGEsQ0FLWixRLENBQ0ksZ0IsQ0FBbUIsbUIsQ0FDbkIsb0IsQ0FBd0Qsc0IsQ0FFeEQsZSxDQUNJLGUsQ0FBa0IsZSxDQ2pCbEIsa0IsQ0RrQkEscUIsQ0FBUSxVLENBQWEsVSxDQUFhLG9CLENBQXVCLGEsQ0FBZ0IsYSxDQU83RSxjLENBQ0ksa0IsQ0FDQSwrQixDQUdKLGdCLENBQUEsaUIsQ0FBQSxvQixDQUFBLGMsQ0FJSSxlLENBR0osb0IsQ0FDSSxjLENBQWdELGUsQ0FDaEQsVSxDQUdKLGlCLENBQ0ksYyxDQUdKLGdCLENBQ0ksYyxDQUFpRCxlLENBQXFELGEsQ0FHMUcsYyxDQUNJLGMsQ0FBK0MsbUIsQ0FBbUQsaUIsQ0N4RDFHLFMsQ0FBVSxpQixDQUFxQix3QixDQUEwQixjLENBQWlCLGUsQ0FDdEUsa0IsQ0FBVSxrQixDQUNOLHNCLENBQUksZSxDQUFrQixrQixDQUUxQixZLENMUUEsUyxDQUVRLGMsQ0tWSCxlLENBQ0Qsa0IsQ0FBeUUsZ0IsQ0FFN0UsVyxDTEhJLGMsQ0FBRSxjLENBQWtELGUsQ0tHeEQsVyxDQUF5RCxlLENBQWtCLGtCLENBQXJDLGdCLENBQ3RDLGMsQ0FBQSwwQixDQUFLLFUsQ0xSVCxNLENBQ0ksd0IsQ0FBMkIsaUIsQ0FBb0IsVSxDQUFhLGlCLENBQXFCLGMsQ0FBaUIsYyxDQUNsRyxpQixDQUFXLGlCLENBRVAsYyxDQUFtQixnQixDQUFtQixRLENBR2xDLGtCLENBQVEscUIsQ0FBd0IsVyxDQUFjLGUsQ0FHdEQsVSxDQUFJLFcsQ0FBaUIsYyxDQUNyQixpQixDQUFXLGMsQ0FBZ0IsZSxDQUFtQixnQixDQUFxQixlLENBQ25FLFMsQ0FBcUIsWSxDQUFlLGtCLENBQXFCLGMsQ0FBaUIsc0IsQ0FFbEUsYyxDQUFFLGEsQ0FBZ0IseUIsQ0FDZCxvQixDQUFRLGEsQ0FHUixpQkFBQSxrQixDQUNJLFcsQ0FBYyxZLENBTS9CLGMsQ0FBQSxXLENBRVMsZ0IsQ0FDQSx3QixDQUVJLHNCLENBQUEsbUIsQ0FDSSxjLENBQWlCLGdCLENBRWpCLDBCLENBQUEsdUIsQ0FDSSxpQixDQUFvQixXLENBQ3BCLGdCLENBR0osNkMsQ0FBQSx1QyxDQUFBLDBDLENBQUEsb0MsQ0FFSSxnQixDQUNBLGMsQ0FBaUIsaUIsQ0FPckIsc0IsQ0FBQSxtQixDQUFFLFUsQ0FBZSxjLENBR3pCLHlCLENBQUEsc0IsQ0FDSSxTLENBQVksa0IsQ0FDWixjLENBQWlCLGdCLENBSTdCLHlCLENBQ0ksa0IsQ0FHSixZLENBQ0ksZ0IiLCJmaWxlIjoic3R5bGUuY3NzIiwic291cmNlc0NvbnRlbnQiOlsiQGNoYXJzZXQgXCJVVEYtOFwiO1xuLyogbWl4aW5zICovXG5AaW1wb3J0IFwiY3NzL2Jvb3RzdHJhcC5taW4uY3NzXCI7XG5Aa2V5ZnJhbWVzIGJsaW5rIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbiAgNTAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cbkAtd2Via2l0LWtleWZyYW1lcyBibGluayB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG4gIDUwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG5ALW1vei1rZXlmcmFtZXMgYmxpbmsge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuICA1MCUge1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuQGtleWZyYW1lcyBhcHBlYXIge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG5ALXdlYmtpdC1rZXlmcmFtZXMgYXBwZWFyIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuQC1tb3ota2V5ZnJhbWVzIGFwcGVhciB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cbkBrZXlmcmFtZXMganVtcCB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gIH1cbiAgNjAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTIwcHgpO1xuICB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgfVxufVxuQC13ZWJraXQta2V5ZnJhbWVzIGp1bXAge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICB9XG4gIDYwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0yMHB4KTtcbiAgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gIH1cbn1cbkAtbW96LWtleWZyYW1lcyBqdW1wIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgfVxuICA2MCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMjBweCk7XG4gIH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICB9XG59XG5Aa2V5ZnJhbWVzIHdlaWdodCB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDhkZWcpO1xuICB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDQ4ZGVnKTtcbiAgfVxufVxuQC13ZWJraXQta2V5ZnJhbWVzIHdlaWdodCB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDhkZWcpO1xuICB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDQ4ZGVnKTtcbiAgfVxufVxuQC1tb3ota2V5ZnJhbWVzIHdlaWdodCB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDhkZWcpO1xuICB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDQ4ZGVnKTtcbiAgfVxufVxuQGtleWZyYW1lcyBoYW1tZXIge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMjhkZWcpO1xuICB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDJkZWcpO1xuICB9XG59XG5ALXdlYmtpdC1rZXlmcmFtZXMgaGFtbWVyIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDI4ZGVnKTtcbiAgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgyZGVnKTtcbiAgfVxufVxuQC1tb3ota2V5ZnJhbWVzIGhhbW1lciB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgyOGRlZyk7XG4gIH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMmRlZyk7XG4gIH1cbn1cbkBrZXlmcmFtZXMgYXBwZWFyLWhhbW1lciB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG4gIDUwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuICA2MCUge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuQC13ZWJraXQta2V5ZnJhbWVzIGFwcGVhci1oYW1tZXIge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuICA1MCUge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbiAgNjAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbn1cbkAtbW96LWtleWZyYW1lcyBhcHBlYXItaGFtbWVyIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbiAgNTAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG4gIDYwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG5Aa2V5ZnJhbWVzIHNjYWxlIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIH1cbiAgNTAlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEuOCk7XG4gIH1cbiAgODAlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIH1cbn1cbkAtd2Via2l0LWtleWZyYW1lcyBzY2FsZSB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICB9XG4gIDUwJSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxLjgpO1xuICB9XG4gIDgwJSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICB9XG59XG5ALW1vei1rZXlmcmFtZXMgc2NhbGUge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgfVxuICA1MCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMS44KTtcbiAgfVxuICA4MCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgfVxufVxuQGtleWZyYW1lcyB0cmFuc2xhdGVYIHtcbiAgMCUge1xuICAgIGxlZnQ6IC0zMDBweDtcbiAgfVxuICAxMDAlIHtcbiAgICBsZWZ0OiBjYWxjKDEwMCUgKyAzMTBweCk7XG4gIH1cbn1cbkBrZXlmcmFtZXMgdHJhbnNsYXRlWUFuZFNjYWxlIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKSBzY2FsZSgxKTtcbiAgfVxuICA1MCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKSBzY2FsZSgxLjI1KTtcbiAgfVxuICA4MCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKSBzY2FsZSgxKTtcbiAgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSkgc2NhbGUoMSk7XG4gIH1cbn1cbkAtd2Via2l0LWtleWZyYW1lcyB0cmFuc2xhdGVZQW5kU2NhbGUge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpIHNjYWxlKDEpO1xuICB9XG4gIDUwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpIHNjYWxlKDEuMjUpO1xuICB9XG4gIDgwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpIHNjYWxlKDEpO1xuICB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKSBzY2FsZSgxKTtcbiAgfVxufVxuQC1tb3ota2V5ZnJhbWVzIHRyYW5zbGF0ZVlBbmRTY2FsZSB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSkgc2NhbGUoMSk7XG4gIH1cbiAgNTAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSkgc2NhbGUoMS4yNSk7XG4gIH1cbiAgODAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSkgc2NhbGUoMSk7XG4gIH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpIHNjYWxlKDEpO1xuICB9XG59XG5Aa2V5ZnJhbWVzIGhvb3Age1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDBweCk7XG4gIH1cbiAgMzAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTQwcHgpO1xuICB9XG4gIDQwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDBweCk7XG4gIH1cbiAgNTAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNTBweCk7XG4gIH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDBweCk7XG4gIH1cbn1cbkAtd2Via2l0LWtleWZyYW1lcyBob29wIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwcHgpO1xuICB9XG4gIDMwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC00MHB4KTtcbiAgfVxuICA0MCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwcHgpO1xuICB9XG4gIDUwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDUwcHgpO1xuICB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwcHgpO1xuICB9XG59XG5ALW1vei1rZXlmcmFtZXMgaG9vcCB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMHB4KTtcbiAgfVxuICAzMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNDBweCk7XG4gIH1cbiAgNDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMHB4KTtcbiAgfVxuICA1MCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCg1MHB4KTtcbiAgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMHB4KTtcbiAgfVxufVxuQGtleWZyYW1lcyBkYW5zZSB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMHB4KTtcbiAgfVxuICA1MCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTBweCk7XG4gIH1cbiAgNzAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTBweCk7XG4gIH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDBweCk7XG4gIH1cbn1cbkAtd2Via2l0LWtleWZyYW1lcyBkYW5zZSB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMHB4KTtcbiAgfVxuICA1MCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTBweCk7XG4gIH1cbiAgNzAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTBweCk7XG4gIH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDBweCk7XG4gIH1cbn1cbkAtbW96LWtleWZyYW1lcyBkYW5zZSB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMHB4KTtcbiAgfVxuICA1MCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTBweCk7XG4gIH1cbiAgNzAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTBweCk7XG4gIH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDBweCk7XG4gIH1cbn1cbkBrZXlmcmFtZXMgaGFtYnVyZ2VyIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgfVxufVxuQC13ZWJraXQta2V5ZnJhbWVzIGhhbWJ1cmdlciB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7XG4gIH1cbn1cbkAtbW96LWtleWZyYW1lcyBoYW1idXJnZXIge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDApO1xuICB9XG59XG5Aa2V5ZnJhbWVzIGJsaW5rLWN1cnNvciB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG4gIDUwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG5ALXdlYmtpdC1rZXlmcmFtZXMgYmxpbmstY3Vyc29yIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbiAgNTAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cbkAtbW96LWtleWZyYW1lcyBibGluay1jdXJzb3Ige1xuICAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuICA1MCUge1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuQGtleWZyYW1lcyBib3R0bGVEYW5jZSB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgfVxuICA1JSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoNWRlZyk7XG4gIH1cbiAgOTUlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNWRlZyk7XG4gIH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gIH1cbn1cbkAtd2Via2l0LWtleWZyYW1lcyBib3R0bGVEYW5jZSB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgfVxuICA1JSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoNWRlZyk7XG4gIH1cbiAgOTUlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNWRlZyk7XG4gIH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gIH1cbn1cbkAtbW96LWtleWZyYW1lcyBib3R0bGVEYW5jZSB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgfVxuICA1JSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoNWRlZyk7XG4gIH1cbiAgOTUlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNWRlZyk7XG4gIH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gIH1cbn1cbkBrZXlmcmFtZXMgYXBwZWFyIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuQC13ZWJraXQta2V5ZnJhbWVzIGFwcGVhciB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cbkAtbW96LWtleWZyYW1lcyBhcHBlYXIge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG5Aa2V5ZnJhbWVzIGRpc2FwcGVhciB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbn1cbkAtd2Via2l0LWtleWZyYW1lcyBkaXNhcHBlYXIge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG5ALW1vei1rZXlmcmFtZXMgZGlzYXBwZWFyIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuLyogaHR0cDovL21leWVyd2ViLmNvbS9lcmljL3Rvb2xzL2Nzcy9yZXNldC9cbiAgIHYyLjAtbW9kaWZpZWQgfCAyMDExMDEyNlxuICAgTGljZW5zZTogbm9uZSAocHVibGljIGRvbWFpbilcbiovXG5odG1sLCBib2R5LCBkaXYsIHNwYW4sIGFwcGxldCwgb2JqZWN0LCBpZnJhbWUsXG5oMSwgaDIsIGgzLCBoNCwgaDUsIGg2LCBwLCBibG9ja3F1b3RlLCBwcmUsXG5hLCBhYmJyLCBhY3JvbnltLCBhZGRyZXNzLCBiaWcsIGNpdGUsIGNvZGUsXG5kZWwsIGRmbiwgZW0sIGltZywgaW5zLCBrYmQsIHEsIHMsIHNhbXAsXG5zbWFsbCwgc3RyaWtlLCBzdHJvbmcsIHN1Yiwgc3VwLCB0dCwgdmFyLFxuYiwgdSwgaSwgY2VudGVyLFxuZGwsIGR0LCBkZCwgb2wsIHVsLCBsaSxcbmZpZWxkc2V0LCBmb3JtLCBsYWJlbCwgbGVnZW5kLFxudGFibGUsIGNhcHRpb24sIHRib2R5LCB0Zm9vdCwgdGhlYWQsIHRyLCB0aCwgdGQsXG5hcnRpY2xlLCBhc2lkZSwgY2FudmFzLCBkZXRhaWxzLCBlbWJlZCxcbmZpZ3VyZSwgZmlnY2FwdGlvbiwgZm9vdGVyLCBoZWFkZXIsIGhncm91cCxcbm1lbnUsIG5hdiwgb3V0cHV0LCBydWJ5LCBzZWN0aW9uLCBzdW1tYXJ5LFxudGltZSwgbWFyaywgYXVkaW8sIHZpZGVvIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBib3JkZXI6IDA7XG4gIGZvbnQtc2l6ZTogMTAwJTtcbiAgZm9udDogaW5oZXJpdDtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuXG4vKiBtYWtlIHN1cmUgdG8gc2V0IHNvbWUgZm9jdXMgc3R5bGVzIGZvciBhY2Nlc3NpYmlsaXR5ICovXG46Zm9jdXMge1xuICBvdXRsaW5lOiAwO1xufVxuXG4vKiBIVE1MNSBkaXNwbGF5LXJvbGUgcmVzZXQgZm9yIG9sZGVyIGJyb3dzZXJzICovXG5hcnRpY2xlLCBhc2lkZSwgZGV0YWlscywgZmlnY2FwdGlvbiwgZmlndXJlLFxuZm9vdGVyLCBoZWFkZXIsIGhncm91cCwgbWVudSwgbmF2LCBzZWN0aW9uIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbmJvZHkge1xuICBsaW5lLWhlaWdodDogMTtcbn1cblxub2wsIHVsIHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cblxuYmxvY2txdW90ZSwgcSB7XG4gIHF1b3Rlczogbm9uZTtcbn1cblxuYmxvY2txdW90ZTpiZWZvcmUsIGJsb2NrcXVvdGU6YWZ0ZXIsXG5xOmJlZm9yZSwgcTphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGNvbnRlbnQ6IG5vbmU7XG59XG5cbnRhYmxlIHtcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgYm9yZGVyLXNwYWNpbmc6IDA7XG59XG5cbmlucHV0W3R5cGU9c2VhcmNoXTo6LXdlYmtpdC1zZWFyY2gtY2FuY2VsLWJ1dHRvbixcbmlucHV0W3R5cGU9c2VhcmNoXTo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbixcbmlucHV0W3R5cGU9c2VhcmNoXTo6LXdlYmtpdC1zZWFyY2gtcmVzdWx0cy1idXR0b24sXG5pbnB1dFt0eXBlPXNlYXJjaF06Oi13ZWJraXQtc2VhcmNoLXJlc3VsdHMtZGVjb3JhdGlvbiB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgLW1vei1hcHBlYXJhbmNlOiBub25lO1xufVxuXG5pbnB1dFt0eXBlPXNlYXJjaF0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gIC1tb3otYXBwZWFyYW5jZTogbm9uZTtcbiAgLXdlYmtpdC1ib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgLW1vei1ib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgYm94LXNpemluZzogY29udGVudC1ib3g7XG59XG5cbnRleHRhcmVhIHtcbiAgb3ZlcmZsb3c6IGF1dG87XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gIHJlc2l6ZTogdmVydGljYWw7XG59XG5cbi8qKlxuICogQ29ycmVjdCBgaW5saW5lLWJsb2NrYCBkaXNwbGF5IG5vdCBkZWZpbmVkIGluIElFIDYvNy84LzkgYW5kIEZpcmVmb3ggMy5cbiAqL1xuYXVkaW8sXG5jYW52YXMsXG52aWRlbyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgKmRpc3BsYXk6IGlubGluZTtcbiAgKnpvb206IDE7XG4gIG1heC13aWR0aDogMTAwJTtcbn1cblxuLyoqXG4gKiBQcmV2ZW50IG1vZGVybiBicm93c2VycyBmcm9tIGRpc3BsYXlpbmcgYGF1ZGlvYCB3aXRob3V0IGNvbnRyb2xzLlxuICogUmVtb3ZlIGV4Y2VzcyBoZWlnaHQgaW4gaU9TIDUgZGV2aWNlcy5cbiAqL1xuYXVkaW86bm90KFtjb250cm9sc10pIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgaGVpZ2h0OiAwO1xufVxuXG4vKipcbiAqIEFkZHJlc3Mgc3R5bGluZyBub3QgcHJlc2VudCBpbiBJRSA3LzgvOSwgRmlyZWZveCAzLCBhbmQgU2FmYXJpIDQuXG4gKiBLbm93biBpc3N1ZTogbm8gSUUgNiBzdXBwb3J0LlxuICovXG5baGlkZGVuXSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0ZXh0IHJlc2l6aW5nIG9kZGx5IGluIElFIDYvNyB3aGVuIGJvZHkgYGZvbnQtc2l6ZWAgaXMgc2V0IHVzaW5nXG4gKiAgICBgZW1gIHVuaXRzLlxuICogMi4gUHJldmVudCBpT1MgdGV4dCBzaXplIGFkanVzdCBhZnRlciBvcmllbnRhdGlvbiBjaGFuZ2UsIHdpdGhvdXQgZGlzYWJsaW5nXG4gKiAgICB1c2VyIHpvb20uXG4gKi9cbmh0bWwge1xuICBmb250LXNpemU6IDEwMCU7XG4gIC8qIDEgKi9cbiAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlO1xuICAvKiAyICovXG4gIC1tcy10ZXh0LXNpemUtYWRqdXN0OiAxMDAlO1xuICAvKiAyICovXG59XG5cbi8qKlxuICogQWRkcmVzcyBgb3V0bGluZWAgaW5jb25zaXN0ZW5jeSBiZXR3ZWVuIENocm9tZSBhbmQgb3RoZXIgYnJvd3NlcnMuXG4gKi9cbmE6Zm9jdXMge1xuICBvdXRsaW5lOiB0aGluIGRvdHRlZDtcbn1cblxuLyoqXG4gKiBJbXByb3ZlIHJlYWRhYmlsaXR5IHdoZW4gZm9jdXNlZCBhbmQgYWxzbyBtb3VzZSBob3ZlcmVkIGluIGFsbCBicm93c2Vycy5cbiAqL1xuYTphY3RpdmUsXG5hOmhvdmVyIHtcbiAgb3V0bGluZTogMDtcbn1cblxuLyoqXG4gKiAxLiBSZW1vdmUgYm9yZGVyIHdoZW4gaW5zaWRlIGBhYCBlbGVtZW50IGluIElFIDYvNy84LzkgYW5kIEZpcmVmb3ggMy5cbiAqIDIuIEltcHJvdmUgaW1hZ2UgcXVhbGl0eSB3aGVuIHNjYWxlZCBpbiBJRSA3LlxuICovXG5pbWcge1xuICBib3JkZXI6IDA7XG4gIC8qIDEgKi9cbiAgLW1zLWludGVycG9sYXRpb24tbW9kZTogYmljdWJpYztcbiAgLyogMiAqL1xufVxuXG4vKipcbiAqIEFkZHJlc3MgbWFyZ2luIG5vdCBwcmVzZW50IGluIElFIDYvNy84LzksIFNhZmFyaSA1LCBhbmQgT3BlcmEgMTEuXG4gKi9cbmZpZ3VyZSB7XG4gIG1hcmdpbjogMDtcbn1cblxuLyoqXG4gKiBDb3JyZWN0IG1hcmdpbiBkaXNwbGF5ZWQgb2RkbHkgaW4gSUUgNi83LlxuICovXG5mb3JtIHtcbiAgbWFyZ2luOiAwO1xufVxuXG4vKipcbiAqIERlZmluZSBjb25zaXN0ZW50IGJvcmRlciwgbWFyZ2luLCBhbmQgcGFkZGluZy5cbiAqL1xuZmllbGRzZXQge1xuICBib3JkZXI6IDFweCBzb2xpZCAjYzBjMGMwO1xuICBtYXJnaW46IDAgMnB4O1xuICBwYWRkaW5nOiAwLjM1ZW0gMC42MjVlbSAwLjc1ZW07XG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCBjb2xvciBub3QgYmVpbmcgaW5oZXJpdGVkIGluIElFIDYvNy84LzkuXG4gKiAyLiBDb3JyZWN0IHRleHQgbm90IHdyYXBwaW5nIGluIEZpcmVmb3ggMy5cbiAqIDMuIENvcnJlY3QgYWxpZ25tZW50IGRpc3BsYXllZCBvZGRseSBpbiBJRSA2LzcuXG4gKi9cbmxlZ2VuZCB7XG4gIGJvcmRlcjogMDtcbiAgLyogMSAqL1xuICBwYWRkaW5nOiAwO1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICAvKiAyICovXG4gICptYXJnaW4tbGVmdDogLTdweDtcbiAgLyogMyAqL1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgZm9udCBzaXplIG5vdCBiZWluZyBpbmhlcml0ZWQgaW4gYWxsIGJyb3dzZXJzLlxuICogMi4gQWRkcmVzcyBtYXJnaW5zIHNldCBkaWZmZXJlbnRseSBpbiBJRSA2LzcsIEZpcmVmb3ggMyssIFNhZmFyaSA1LFxuICogICAgYW5kIENocm9tZS5cbiAqIDMuIEltcHJvdmUgYXBwZWFyYW5jZSBhbmQgY29uc2lzdGVuY3kgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5idXR0b24sXG5pbnB1dCxcbnNlbGVjdCxcbnRleHRhcmVhIHtcbiAgZm9udC1zaXplOiAxMDAlO1xuICAvKiAxICovXG4gIG1hcmdpbjogMDtcbiAgLyogMiAqL1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4gIC8qIDMgKi9cbiAgKnZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIC8qIDMgKi9cbn1cblxuLyoqXG4gKiBBZGRyZXNzIEZpcmVmb3ggMysgc2V0dGluZyBgbGluZS1oZWlnaHRgIG9uIGBpbnB1dGAgdXNpbmcgYCFpbXBvcnRhbnRgIGluXG4gKiB0aGUgVUEgc3R5bGVzaGVldC5cbiAqL1xuYnV0dG9uLFxuaW5wdXQge1xuICBsaW5lLWhlaWdodDogbm9ybWFsO1xufVxuXG4vKipcbiAqIEFkZHJlc3MgaW5jb25zaXN0ZW50IGB0ZXh0LXRyYW5zZm9ybWAgaW5oZXJpdGFuY2UgZm9yIGBidXR0b25gIGFuZCBgc2VsZWN0YC5cbiAqIEFsbCBvdGhlciBmb3JtIGNvbnRyb2wgZWxlbWVudHMgZG8gbm90IGluaGVyaXQgYHRleHQtdHJhbnNmb3JtYCB2YWx1ZXMuXG4gKiBDb3JyZWN0IGBidXR0b25gIHN0eWxlIGluaGVyaXRhbmNlIGluIENocm9tZSwgU2FmYXJpIDUrLCBhbmQgSUUgNisuXG4gKiBDb3JyZWN0IGBzZWxlY3RgIHN0eWxlIGluaGVyaXRhbmNlIGluIEZpcmVmb3ggNCsgYW5kIE9wZXJhLlxuICovXG5idXR0b24sXG5zZWxlY3Qge1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbn1cblxuLyoqXG4gKiAxLiBBdm9pZCB0aGUgV2ViS2l0IGJ1ZyBpbiBBbmRyb2lkIDQuMC4qIHdoZXJlICgyKSBkZXN0cm95cyBuYXRpdmUgYGF1ZGlvYFxuICogICAgYW5kIGB2aWRlb2AgY29udHJvbHMuXG4gKiAyLiBDb3JyZWN0IGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgYGlucHV0YCB0eXBlcyBpbiBpT1MuXG4gKiAzLiBJbXByb3ZlIHVzYWJpbGl0eSBhbmQgY29uc2lzdGVuY3kgb2YgY3Vyc29yIHN0eWxlIGJldHdlZW4gaW1hZ2UtdHlwZVxuICogICAgYGlucHV0YCBhbmQgb3RoZXJzLlxuICogNC4gUmVtb3ZlIGlubmVyIHNwYWNpbmcgaW4gSUUgNyB3aXRob3V0IGFmZmVjdGluZyBub3JtYWwgdGV4dCBpbnB1dHMuXG4gKiAgICBLbm93biBpc3N1ZTogaW5uZXIgc3BhY2luZyByZW1haW5zIGluIElFIDYuXG4gKi9cbmJ1dHRvbixcbmh0bWwgaW5wdXRbdHlwZT1idXR0b25dLFxuaW5wdXRbdHlwZT1yZXNldF0sXG5pbnB1dFt0eXBlPXN1Ym1pdF0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjtcbiAgLyogMiAqL1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIC8qIDMgKi9cbiAgKm92ZXJmbG93OiB2aXNpYmxlO1xuICAvKiA0ICovXG59XG5cbi8qKlxuICogUmUtc2V0IGRlZmF1bHQgY3Vyc29yIGZvciBkaXNhYmxlZCBlbGVtZW50cy5cbiAqL1xuYnV0dG9uW2Rpc2FibGVkXSxcbmh0bWwgaW5wdXRbZGlzYWJsZWRdIHtcbiAgY3Vyc29yOiBkZWZhdWx0O1xufVxuXG4vKipcbiAqIDEuIEFkZHJlc3MgYm94IHNpemluZyBzZXQgdG8gY29udGVudC1ib3ggaW4gSUUgOC85LlxuICogMi4gUmVtb3ZlIGV4Y2VzcyBwYWRkaW5nIGluIElFIDgvOS5cbiAqIDMuIFJlbW92ZSBleGNlc3MgcGFkZGluZyBpbiBJRSA3LlxuICogICAgS25vd24gaXNzdWU6IGV4Y2VzcyBwYWRkaW5nIHJlbWFpbnMgaW4gSUUgNi5cbiAqL1xuaW5wdXRbdHlwZT1jaGVja2JveF0sXG5pbnB1dFt0eXBlPXJhZGlvXSB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIC8qIDEgKi9cbiAgcGFkZGluZzogMDtcbiAgLyogMiAqL1xuICAqaGVpZ2h0OiAxM3B4O1xuICAvKiAzICovXG4gICp3aWR0aDogMTNweDtcbiAgLyogMyAqL1xufVxuXG4vKipcbiAqIDEuIEFkZHJlc3MgYGFwcGVhcmFuY2VgIHNldCB0byBgc2VhcmNoZmllbGRgIGluIFNhZmFyaSA1IGFuZCBDaHJvbWUuXG4gKiAyLiBBZGRyZXNzIGBib3gtc2l6aW5nYCBzZXQgdG8gYGJvcmRlci1ib3hgIGluIFNhZmFyaSA1IGFuZCBDaHJvbWVcbiAqICAgIChpbmNsdWRlIGAtbW96YCB0byBmdXR1cmUtcHJvb2YpLlxuICovXG5pbnB1dFt0eXBlPXNlYXJjaF0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IHRleHRmaWVsZDtcbiAgLyogMSAqL1xuICAtbW96LWJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICAtd2Via2l0LWJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICAvKiAyICovXG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xufVxuXG4vKipcbiAqIFJlbW92ZSBpbm5lciBwYWRkaW5nIGFuZCBzZWFyY2ggY2FuY2VsIGJ1dHRvbiBpbiBTYWZhcmkgNSBhbmQgQ2hyb21lXG4gKiBvbiBPUyBYLlxuICovXG5pbnB1dFt0eXBlPXNlYXJjaF06Oi13ZWJraXQtc2VhcmNoLWNhbmNlbC1idXR0b24sXG5pbnB1dFt0eXBlPXNlYXJjaF06Oi13ZWJraXQtc2VhcmNoLWRlY29yYXRpb24ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG59XG5cbi8qKlxuICogUmVtb3ZlIGlubmVyIHBhZGRpbmcgYW5kIGJvcmRlciBpbiBGaXJlZm94IDMrLlxuICovXG5idXR0b246Oi1tb3otZm9jdXMtaW5uZXIsXG5pbnB1dDo6LW1vei1mb2N1cy1pbm5lciB7XG4gIGJvcmRlcjogMDtcbiAgcGFkZGluZzogMDtcbn1cblxuLyoqXG4gKiAxLiBSZW1vdmUgZGVmYXVsdCB2ZXJ0aWNhbCBzY3JvbGxiYXIgaW4gSUUgNi83LzgvOS5cbiAqIDIuIEltcHJvdmUgcmVhZGFiaWxpdHkgYW5kIGFsaWdubWVudCBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cbnRleHRhcmVhIHtcbiAgb3ZlcmZsb3c6IGF1dG87XG4gIC8qIDEgKi9cbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgLyogMiAqL1xufVxuXG4vKipcbiAqIFJlbW92ZSBtb3N0IHNwYWNpbmcgYmV0d2VlbiB0YWJsZSBjZWxscy5cbiAqL1xudGFibGUge1xuICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xuICBib3JkZXItc3BhY2luZzogMDtcbn1cblxuaHRtbCxcbmJ1dHRvbixcbmlucHV0LFxuc2VsZWN0LFxudGV4dGFyZWEge1xuICBjb2xvcjogIzIyMjtcbn1cblxuOjotbW96LXNlbGVjdGlvbiB7XG4gIGJhY2tncm91bmQ6ICNiM2Q0ZmM7XG4gIHRleHQtc2hhZG93OiBub25lO1xufVxuXG46OnNlbGVjdGlvbiB7XG4gIGJhY2tncm91bmQ6ICNiM2Q0ZmM7XG4gIHRleHQtc2hhZG93OiBub25lO1xufVxuXG5pbWcge1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuXG5maWVsZHNldCB7XG4gIGJvcmRlcjogMDtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xufVxuXG50ZXh0YXJlYSB7XG4gIHJlc2l6ZTogdmVydGljYWw7XG59XG5cbi5jaHJvbWVmcmFtZSB7XG4gIG1hcmdpbjogMC4yZW0gMDtcbiAgYmFja2dyb3VuZDogI2NjYztcbiAgY29sb3I6ICMwMDA7XG4gIHBhZGRpbmc6IDAuMmVtIDA7XG59XG5cbi5oaWRlIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4uc2hvdyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jayAhaW1wb3J0YW50O1xufVxuXG5oMSB7XG4gIGZvbnQtZmFtaWx5OiBcIk11bGlcIiwgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAyMHB4O1xuICBjb2xvcjogIzI3Mzc3YTtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cbmgxIC5zdWItdGl0bGUge1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBmb250LXNpemU6IDUwcHg7XG59XG5cbmgyLCBoMyB7XG4gIGZvbnQtZmFtaWx5OiBcIk11bGlcIiwgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAyN3B4O1xuICBmb250LXdlaWdodDogNzAwO1xuICBsaW5lLWhlaWdodDogMzRweDtcbiAgY29sb3I6ICMyNzM3N2E7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbmgyIC5zdWItdGl0bGUsIGgzIC5zdWItdGl0bGUge1xuICBkaXNwbGF5OiBibG9jaztcbn1cbnNtYWxsIHtcbiAgZm9udC1mYW1pbHk6IFwiTXVsaVwiLCBzYW5zLXNlcmlmO1xuICBjb2xvcjogIzAzMDM2OTtcbn1cblxucCB7XG4gIG1hcmdpbjogMTZweCAwO1xufVxuYiB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4uc3ViLXRpdGxlIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG4ucmF0aW5nOmJlZm9yZSB7XG4gIGxldHRlci1zcGFjaW5nOiAyLjRweDtcbn1cblxuLmRpc2NsYWltZXIge1xuICBmb250LXNpemU6IDEycHg7XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XG59XG5cbi5jaXRhdGlvbiB7XG4gIGZvbnQtc2l6ZTogMTBweDtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbCAhaW1wb3J0YW50O1xufVxuQG1lZGlhIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7XG4gIC5jaXRhdGlvbiB7XG4gICAgZm9udC1zaXplOiA4cHg7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7XG4gIC5hc3RlcmlzayB7XG4gICAgZm9udC1zaXplOiAxMnB4O1xuICB9XG59XG5cbmkge1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG59XG5cbi51bmRlcmxpbmUge1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbn1cblxuYm9keSB7XG4gIGZvbnQtZmFtaWx5OiBcIk11bGlcIiwgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAxNXB4O1xuICBjb2xvcjogIzAwMDAwMDtcbn1cbmJvZHkudjAxLTAzLCBib2R5LnYwMiB7XG4gIGNvbG9yOiAjMmUyODI4O1xufVxuYm9keS52MDEtMDM6bm90KC52MDItLXNwbHQtYnRuKSBtYWluLCBib2R5LnYwMjpub3QoLnYwMi0tc3BsdC1idG4pIG1haW4ge1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG5hIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG5pbWcge1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4udmlkZW8tanMsXG52aWRlby1qcyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbn1cblxuLmJ0biwgLmJ0bi13cmFwOmJlZm9yZSB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYm9yZGVyLXJhZGl1czogNnB4O1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCAjRkZDMDczIDAlLCAjRkI4MTQzIDEwMCUpO1xuICBwYWRkaW5nOiA3cHggMDtcbiAgd2lkdGg6IDc3JTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBjb2xvcjogI2ZmZjtcbiAgZm9udC1zaXplOiAyNnB4O1xuICBsaW5lLWhlaWdodDogMzJweDtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIGJvcmRlcjogbm9uZTtcbn1cbi5idG46bm90KFtocmVmXSksIC5idG4td3JhcDpub3QoW2hyZWZdKTpiZWZvcmUsIC5idG46bm90KFtocmVmXSk6aG92ZXIge1xuICBjb2xvcjogI2ZmZjtcbn1cbi5idG46aG92ZXIsIC5idG4td3JhcDpob3ZlcjpiZWZvcmUge1xuICBjb2xvcjogI2ZmZjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAjZjliOTU5LCAjZjliOTU5KTtcbn1cbi5idG4uZGlzYWJsZWQsIC5kaXNhYmxlZC5idG4td3JhcDpiZWZvcmUsIC5idG5bZGlzYWJsZWRdLCBbZGlzYWJsZWRdLmJ0bi13cmFwOmJlZm9yZSB7XG4gIGNvbG9yOiAjNzA3MDcwO1xuICBiYWNrZ3JvdW5kOiAjZjFmMWYxO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cbi52MDEtMDMgLmJ0biwgLnYwMS0wMyAuYnRuLXdyYXA6YmVmb3JlLCAudjAyIC5idG4sIC52MDIgLmJ0bi13cmFwOmJlZm9yZSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IGF1dG87XG4gIHBhZGRpbmc6IDdweCAyMHB4O1xuICBtYXJnaW46IDAgYXV0bztcbiAgbGluZS1oZWlnaHQ6IDEuMjU7XG4gIGJvcmRlci1yYWRpdXM6IDIwcHg7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICNmZmI5MDAsICNlYmE3MjcpO1xuICBib3JkZXI6IG5vbmU7XG4gIGNvbG9yOiAjZmZmO1xuICBmb250LXNpemU6IDE0cHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbi52MDEtMDMgLmJ0bjpub3QoW2hyZWZdKSwgLnYwMS0wMyAuYnRuLXdyYXA6bm90KFtocmVmXSk6YmVmb3JlLCAudjAxLTAzIC5idG46bm90KFtocmVmXSk6aG92ZXIsIC52MDIgLmJ0bjpub3QoW2hyZWZdKSwgLnYwMiAuYnRuLXdyYXA6bm90KFtocmVmXSk6YmVmb3JlLCAudjAyIC5idG46bm90KFtocmVmXSk6aG92ZXIge1xuICBjb2xvcjogI2ZmZjtcbn1cbi52MDEtMDMgLmJ0bjpob3ZlciwgLnYwMS0wMyAuYnRuLXdyYXA6aG92ZXI6YmVmb3JlLCAudjAyIC5idG46aG92ZXIsIC52MDIgLmJ0bi13cmFwOmhvdmVyOmJlZm9yZSB7XG4gIGNvbG9yOiAjZmZmO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGJhY2tncm91bmQ6ICNGRkE0NjA7XG59XG4udjAxLTAzIC5idG4uZGlzYWJsZWQsIC52MDEtMDMgLmRpc2FibGVkLmJ0bi13cmFwOmJlZm9yZSwgLnYwMS0wMyAuYnRuW2Rpc2FibGVkXSwgLnYwMS0wMyBbZGlzYWJsZWRdLmJ0bi13cmFwOmJlZm9yZSwgLnYwMiAuYnRuLmRpc2FibGVkLCAudjAyIC5kaXNhYmxlZC5idG4td3JhcDpiZWZvcmUsIC52MDIgLmJ0bltkaXNhYmxlZF0sIC52MDIgW2Rpc2FibGVkXS5idG4td3JhcDpiZWZvcmUge1xuICBiYWNrZ3JvdW5kOiAjYmZjMmNhO1xuICBjb2xvcjogI2ZmZjtcbiAgYm94LXNoYWRvdzogLTFweCAtMXB4IDBweCB3aGl0ZSwgMHB4IDBweCAwcHggd2hpdGUsIDFweCAxcHggMHB4IHdoaXRlLCAxcHggLTFweCAwcHggd2hpdGUsIC0xcHggMXB4IDBweCB3aGl0ZTtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG5ib2R5LnYwMiAuYnRuLCBib2R5LnYwMiAuYnRuLXdyYXA6YmVmb3JlIHtcbiAgZm9udC1zaXplOiAyMnB4O1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cblxuLmJ0bi13cmFwOmJlZm9yZSB7XG4gIHBvc2l0aW9uOiBzdGF0aWM7XG4gIG9wYWNpdHk6IDA7XG4gIGNvbnRlbnQ6IFwiQlVZIE5PV1wiO1xufVxuLmJ0bi13cmFwLnNob3c6YmVmb3JlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAtMTtcbn1cblxuLmljb24ge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAxZW07XG4gIGhlaWdodDogMWVtO1xuICBtYXJnaW46IDA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgZm9udC1zaXplOiAxZW07XG4gIC8qIGRlZmF1bHQtc2l6ZSAqL1xuICBmaWxsOiAjMDMwMzY5O1xuICAvKiBkZWZhdWx0IGNvbG9yICovXG4gIGNvbG9yOiAjMDMwMzY5O1xuICAvKiBkZWZhdWx0IGNvbG9yIHdoZW4gY3VycmVudENvbG9yIGlzIHVzZWQgKi9cbiAgYm94LXNpemluZzogY29udGVudC1ib3g7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuLmljb24tLWNvbGxhcHNlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDYwJTtcbiAgcmlnaHQ6IDA7XG4gIGZsZXg6IDAgMCBhdXRvO1xuICBtYXJnaW4tbGVmdDogNXB4O1xuICBjb2xvcjogIzAzMDM2OTtcbiAgc3Ryb2tlOiBjdXJyZW50Q29sb3I7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDIwMG1zIGVhc2UtaW4tb3V0O1xufVxuW2FyaWEtZXhwYW5kZWQ9dHJ1ZV0gLmljb24tLWNvbGxhcHNlIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpIHJvdGF0ZSgtMTgwZGVnKTtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDIwMG1zIGVhc2UtaW4tb3V0O1xufVxuLmljb24tLXBsdXMge1xuICBzdHJva2U6IGN1cnJlbnRDb2xvcjtcbn1cblthcmlhLWV4cGFuZGVkPXRydWVdIC5pY29uLS1wbHVzIC52ZXJ0aWNhbCB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5jb250YWluZXIge1xuICBwYWRkaW5nOiAwO1xuICB3aWR0aDogODAlO1xuICBtYXJnaW46IDAgYXV0bztcbiAgbWF4LXdpZHRoOiAzNDBweDtcbn1cbi52MDEtMDMgLmNvbnRhaW5lciwgLnYwMiAuY29udGFpbmVyIHtcbiAgbWF4LXdpZHRoOiA0MzBweDtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDAgMTVweDtcbn1cblxuLnYwMS0wMyBzZWN0aW9uLCAudjAyIHNlY3Rpb24ge1xuICBtYXJnaW46IDMwcHggMDtcbiAgei1pbmRleDogMDtcbn1cblxuLmZhLXJhdGluZyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgZm9udC1mYW1pbHk6IFwiRm9udEF3ZXNvbWVcIjtcbn1cbi5mYS1yYXRpbmc6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgIXvgIXvgIXvgIXvgIVcIjtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuLmZhLXJhdGluZzphZnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIGxlZnQ6IDA7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAlLCAtNTAlKTtcbn1cblxuLnJhdGluZyB7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBsaW5lLWhlaWdodDogMWVtO1xuICBjb2xvcjogI2VjYWMwMDtcbiAgZm9udC1zaXplOiAxNnB4O1xufVxuXG4ucmF0aW5nIC5mYS1yYXRpbmcucy01OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74CF74CF74CF74CF74CFXCI7XG59XG5cbi5yYXRpbmcgLmZhLXJhdGluZy5zLTQtNTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Ahe+Ahe+Ahe+Ahe+Eo1wiO1xufVxuXG4ucmF0aW5nIC5mYS1yYXRpbmcucy00OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74CF74CF74CF74CF74CGXCI7XG59XG5cbi5yYXRpbmcgLmZhLXJhdGluZy5zLTMtNTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Ahe+Ahe+Ahe+Eo++AhlwiO1xufVxuXG4ucmF0aW5nIC5mYS1yYXRpbmcucy0zOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74CF74CF74CF74CG74CGXCI7XG59XG5cbi5yYXRpbmcgLmZhLXJhdGluZy5zLTItNTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Ahe+Ahe+Eo++Ahu+AhlwiO1xufVxuXG4ucmF0aW5nIC5mYS1yYXRpbmcucy0yOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74CF74CF74CG74CG74CGXCI7XG59XG5cbi5yYXRpbmcgLmZhLXJhdGluZy5zLTEtNTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Ahe+Eo++Ahu+Ahu+AhlwiO1xufVxuXG4ucmF0aW5nIC5mYS1yYXRpbmcucy0xOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74CF74CG74CG74CG74CGXCI7XG59XG5cbi5yYXRpbmcgLmZhLXJhdGluZy5zLTAtNTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Eo++Ahu+Ahu+Ahu+AhlwiO1xufVxuXG4ucmF0aW5nIC5mYS1yYXRpbmcucy0wOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi44CA44CA44CA44CA44CAXCI7XG59XG5cbi5yYXRpbmcgLmZhLXJhdGluZy5ibHVlIHtcbiAgY29sb3I6ICMyZDgxZWE7XG59XG5cbi5yYXRpbmcgLmZhLXJhdGluZy5ibHVlW2RhdGEtcmF0aW5nXSB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuaGVhZGVyIHtcbiAgcGFkZGluZzogMTJweCAwIDE3cHggMzhweDtcbn1cbmhlYWRlciAubG9nbyB7XG4gIHdpZHRoOiAxNTVweDtcbn1cblxuLmNhcnQge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDAgMCAyMXB4O1xufVxuLmNhcnQgaDIge1xuICBmb250LXNpemU6IDIzcHg7XG4gIGxpbmUtaGVpZ2h0OiAyOHB4O1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzI3Mzc3YTtcbiAgcGFkZGluZzogMTVweCAwO1xufVxuLmNhcnQgaDI6OmFmdGVyIHtcbiAgY29udGVudDogbm9uZTtcbn1cbi5jYXJ0IC5jb250YWluZXItbGcge1xuICBtYXgtd2lkdGg6IDU0MHB4O1xufVxuLmNhcnRfX21vZGUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgcGFkZGluZzogMCA1cHggNDBweDtcbiAgZm9udC1zaXplOiAxOHB4O1xuICBsaW5lLWhlaWdodDogMS4yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjczNzdhO1xufVxuLmNhcnRfX21vZGU6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiA1MCU7XG4gIHdpZHRoOiAxMDB2dztcbiAgaGVpZ2h0OiAxMDAlO1xuICB6LWluZGV4OiAtMTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjczNzdhO1xufVxuLmNhcnRfX21vZGUtY3RhIHtcbiAgbWFyZ2luLXJpZ2h0OiA1cHg7XG4gIG1hcmdpbi1sZWZ0OiA1cHg7XG4gIHBhZGRpbmc6IDEwcHggNXB4O1xuICBsZXR0ZXItc3BhY2luZzogbm9ybWFsO1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzg0OGZhZTtcbn1cbkBtZWRpYSAoaG92ZXI6IGhvdmVyKSBhbmQgKHBvaW50ZXI6IGZpbmUpIHtcbiAgLmNhcnRfX21vZGUtY3RhIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gIH1cbn1cbi5jYXJ0X19tb2RlLWN0YS5zdWJzY3JpYmUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4uY2FydF9fbW9kZS1jdGEuc3Vic2NyaWJlOjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiQmVzdCBWYWx1ZVwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IC0yMnB4O1xuICBsZWZ0OiAwO1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1zaXplOiAxNXB4O1xuICBmb250LXdlaWdodDogYm9sZGVyO1xuICBjb2xvcjogIzEwZTY0ODtcbn1cbi5jYXJ0X19tb2RlLWN0YTpub3QoLmFjdGl2ZSkge1xuICBmbGV4OiAwIDEgMzglO1xuICBtYXJnaW4tdG9wOiA1cHg7XG4gIG1hcmdpbi1ib3R0b206IDVweDtcbn1cbi5jYXJ0X19tb2RlLWN0YS5hY3RpdmUge1xuICBmbGV4OiAxIDAgNjIlO1xuICBjb2xvcjogIzAzMDM2OTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgYm9yZGVyOiA1cHggc29saWQgI2ZmYTUwMDtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cbi5jYXJ0IC5zdW1tYXJ5IHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuLmNhcnQgLnN1bW1hcnkgLnByaWNlIHtcbiAgZm9udC1zaXplOiA2MHB4O1xuICBsaW5lLWhlaWdodDogNzNweDtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgY29sb3I6ICMyOTM5N2I7XG4gIG1hcmdpbi1ib3R0b206IDVweDtcbn1cbi5jYXJ0IC5zdW1tYXJ5IC5yZXRhaWxQcmljZSB7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgbGluZS1oZWlnaHQ6IDE3cHg7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIHRleHQtZGVjb3JhdGlvbi1saW5lOiBsaW5lLXRocm91Z2g7XG4gIGNvbG9yOiByZWQ7XG4gIG1hcmdpbi1ib3R0b206IDExcHg7XG59XG4uY2FydCAuc3VtbWFyeSAuc2hpcHBpbmcge1xuICBmb250LXNpemU6IDEycHg7XG4gIGxpbmUtaGVpZ2h0OiAxNXB4O1xuICBjb2xvcjogIzRBOTBFMjtcbiAgbWFyZ2luLWJvdHRvbTogMTFweDtcbn1cbi5jYXJ0IC5zdW1tYXJ5IC5zaGlwcGluZyBzcGFuIHtcbiAgbWFyZ2luLXJpZ2h0OiAycHg7XG59XG4uY2FydCAucHJvZHVjdHMgLnByb2R1Y3Qge1xuICBmb250LXNpemU6IDIwcHg7XG4gIGxpbmUtaGVpZ2h0OiAyNHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDhweCAwO1xuICBtYXJnaW4tYm90dG9tOiAxMnB4O1xuICBib3JkZXItcmFkaXVzOiA2cHg7XG4gIGJvcmRlcjogc29saWQgMXB4ICM3MDcwNzA7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cbi5jYXJ0IC5wcm9kdWN0cyAucHJvZHVjdC5hY3RpdmUsIC5jYXJ0IC5wcm9kdWN0cyAucHJvZHVjdDpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM0OTkwZTI7XG4gIGJvcmRlci1jb2xvcjogIzQ5OTBlMjtcbiAgY29sb3I6ICNmZmY7XG59XG4uY2FydF9fc3Vic2NyaWJlIHtcbiAgbWFyZ2luLWJvdHRvbTogNXB4O1xufVxuLmNhcnRfX2xhYmVsIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIG1hcmdpbi1ib3R0b206IDE2cHg7XG4gIGZvbnQtc2l6ZTogMDtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgbGluZS1oZWlnaHQ6IDIwcHg7XG4gIGxldHRlci1zcGFjaW5nOiAwLjVweDtcbn1cbkBtZWRpYSAoaG92ZXI6IGhvdmVyKSBhbmQgKHBvaW50ZXI6IGZpbmUpIHtcbiAgLmNhcnRfX2xhYmVsIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gIH1cbn1cbi5jYXJ0X19sYWJlbCBzcGFuIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmb250LXNpemU6IDE0cHg7XG59XG4uY2FydF9fbGFiZWwgc3Bhbjpub3QoLmNhcnRfX2NoZWNrYm94KSB7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGNvbG9yOiAjNEE5MEUyO1xufVxuLmNhcnRfX2NoZWNrYm94IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogMjBweDtcbiAgaGVpZ2h0OiAyMHB4O1xuICBtYXJnaW4tcmlnaHQ6IDE1cHg7XG4gIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICBib3JkZXI6IDNweCBzb2xpZCAjNEE5MEUyO1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICBib3JkZXItcmFkaXVzOiAycHg7XG59XG4uY2FydF9fY2hlY2tib3ggLmljb24ge1xuICBkaXNwbGF5OiBub25lO1xufVxuLmNhcnRfX2NoZWNrYm94LmNoZWNrZWQgLmljb24ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgY29sb3I6ICNkNzM3MzE7XG4gIHN0cm9rZTogY3VycmVudENvbG9yO1xufVxuLmNhcnRfX2Rpc2NsYWltZXIge1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBmb250LXNpemU6IDEwcHg7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gIGxldHRlci1zcGFjaW5nOiBub3JtYWw7XG59XG4uY2FydF9fZGlzY2xhaW1lciBhIHtcbiAgY29sb3I6IGluaXRpYWw7XG59XG5cbi5tb25leUJhY2sge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzM0NTc5O1xuICBjb2xvcjogI2ZmZjtcbiAgcGFkZGluZzogOHB4IDAgNDRweDtcbn1cbi5tb25leUJhY2sgaW1nIHtcbiAgd2lkdGg6IDE1NXB4O1xuICBtYXJnaW4tYm90dG9tOiAxMHB4O1xufVxuLm1vbmV5QmFjayBoMiB7XG4gIGNvbG9yOiAjZmZmO1xuICBtYXJnaW4tYm90dG9tOiA3cHg7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG59XG4ubW9uZXlCYWNrIHAge1xuICBmb250LXNpemU6IDE1cHg7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIGxpbmUtaGVpZ2h0OiAxOHB4O1xufVxuXG4uYWJvdXQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTVlOWVhO1xuICBwYWRkaW5nOiAxNHB4IDAgMjlweDtcbn1cbi5hYm91dCAudG9wIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgbWFyZ2luLWJvdHRvbTogMTVweDtcbn1cbi5hYm91dCAudG9wIGltZyB7XG4gIHdpZHRoOiA5MXB4O1xuICBtYXJnaW4tcmlnaHQ6IDEycHg7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cbi5hYm91dCAudG9wIGgyIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmb250LXdlaWdodDogNjAwO1xufVxuLmFib3V0IHAge1xuICBmb250LXNpemU6IDE1cHg7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIGxpbmUtaGVpZ2h0OiAyMnB4O1xufVxuXG4uZmFxIHtcbiAgcGFkZGluZzogMzBweCAwIDE4cHg7XG59XG4uZmFxIGgyIHtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cbi5mYXEgLmZhcUxpc3QgbGk6bm90KDpsYXN0LWNoaWxkKSAucXVlc3Rpb25XcmFwIHtcbiAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICM4MDgwODAyNjtcbn1cbi5mYXEgLmZhcUxpc3QgbGkgLnF1ZXN0aW9uV3JhcCAucXVlc3Rpb24ge1xuICBmb250LXNpemU6IDE4cHg7XG4gIGxpbmUtaGVpZ2h0OiAxLjE7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGNvbG9yOiAjMjczNzdhO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmctcmlnaHQ6IDE1cHg7XG4gIG1hcmdpbi1ib3R0b206IDE4cHg7XG4gIG1hcmdpbi10b3A6IDIxcHg7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cbi5mYXEgLmZhcUxpc3QgbGkgLnF1ZXN0aW9uV3JhcCAucXVlc3Rpb246YmVmb3JlIHtcbiAgY29udGVudDogXCJcIjtcbiAgYmFja2dyb3VuZDogdXJsKFwiaHR0cHM6Ly9kdGpsaGlhaGx2NTNqLmNsb3VkZnJvbnQubmV0L2Fzc2V0cy9iYzMvcHJvZHVjdC9yaWdodC1hcnJvdy1sYXJnZS5wbmdcIikgbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gIHdpZHRoOiAxMXB4O1xuICBoZWlnaHQ6IDdweDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDA7XG4gIHRvcDogMTFweDtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuNXMgZWFzZTtcbn1cbi5mYXEgLmZhcUxpc3QgbGkgLnF1ZXN0aW9uV3JhcCAucXVlc3Rpb25bYXJpYS1leHBhbmRlZD10cnVlXTpiZWZvcmUge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbn1cbmJvZHkudjAxLTAyIC5mYXEgLmZhcUxpc3QgbGkgLnF1ZXN0aW9uV3JhcCAucXVlc3Rpb24sIGJvZHkudjAxLTAzIC5mYXEgLmZhcUxpc3QgbGkgLnF1ZXN0aW9uV3JhcCAucXVlc3Rpb24sIGJvZHkudjAyIC5mYXEgLmZhcUxpc3QgbGkgLnF1ZXN0aW9uV3JhcCAucXVlc3Rpb24ge1xuICBmb250LXNpemU6IDIwcHg7XG4gIGxpbmUtaGVpZ2h0OiAzMHB4O1xufVxuLmZhcSAuZmFxTGlzdCBsaSAucXVlc3Rpb25XcmFwIC5hbnN3ZXIge1xuICB3aWR0aDogMTAwJTtcbn1cbi5mYXEgLmZhcUxpc3QgbGkgLnF1ZXN0aW9uV3JhcCAuYW5zd2VyIHAsIC5mYXEgLmZhcUxpc3QgbGkgLnF1ZXN0aW9uV3JhcCAuYW5zd2VyIHVsIHtcbiAgcGFkZGluZy1ib3R0b206IDE2cHg7XG4gIG1hcmdpbjogMDtcbiAgbGluZS1oZWlnaHQ6IDEuNDtcbn1cbi5mYXEgLmZhcUxpc3QgbGkgLnF1ZXN0aW9uV3JhcCAuYW5zd2VyIHVsIHtcbiAgbGlzdC1zdHlsZTogZGlzYztcbiAgcGFkZGluZy1sZWZ0OiAyMHB4O1xufVxuLmZhcSAuZmFxTGlzdCBsaSAucXVlc3Rpb25XcmFwIC5hbnN3ZXIgaW1nIHtcbiAgd2lkdGg6IGF1dG87XG59XG4udjAxLTAzIC5mYXEsIC52MDIgLmZhcSB7XG4gIG1hcmdpbjogMDtcbiAgYmFja2dyb3VuZDogdXJsKFwiaHR0cHM6Ly9kdGpsaGlhaGx2NTNqLmNsb3VkZnJvbnQubmV0L2Fzc2V0cy9iYzMvcHJvZHVjdC9mYXEtYmFjay5qcGdcIik7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlMGUzZWE7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IHRvcCByaWdodDtcbn1cbi52MDEtMDMgLmZhcSBoMiwgLnYwMiAuZmFxIGgyIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBmb250LXdlaWdodDogNzAwO1xufVxuLnYwMS0wMyAuZmFxIC5mYXFMaXN0IGxpIC5xdWVzdGlvbldyYXAgLnF1ZXN0aW9uLCAudjAyIC5mYXEgLmZhcUxpc3QgbGkgLnF1ZXN0aW9uV3JhcCAucXVlc3Rpb24ge1xuICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICBtYXJnaW4tdG9wOiAxNHB4O1xuICBmb250LXNpemU6IDE3cHg7XG4gIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICBjb2xvcjogIzJlMjgyODtcbn1cbi52MDEtMDMgLmZhcSAuZmFxTGlzdCBsaSAucXVlc3Rpb25XcmFwIC5xdWVzdGlvbjpiZWZvcmUsIC52MDIgLmZhcSAuZmFxTGlzdCBsaSAucXVlc3Rpb25XcmFwIC5xdWVzdGlvbjpiZWZvcmUge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiaHR0cHM6Ly9kdGpsaGlhaGx2NTNqLmNsb3VkZnJvbnQubmV0L2Fzc2V0cy9iYzMvcHJvZHVjdC9kb3dubG9hZC5zdmdcIik7XG59XG4udjAxLTAzIC5mYXEgLmZhcUxpc3QgbGkgLnF1ZXN0aW9uV3JhcCAucXVlc3Rpb25bYXJpYS1leHBhbmRlZD10cnVlXTpiZWZvcmUsIC52MDIgLmZhcSAuZmFxTGlzdCBsaSAucXVlc3Rpb25XcmFwIC5xdWVzdGlvblthcmlhLWV4cGFuZGVkPXRydWVdOmJlZm9yZSB7XG4gIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG59XG4udjAxLTAzIC5mYXEgLmZhcUxpc3QgbGkgLnF1ZXN0aW9uV3JhcCAuYW5zd2VyLCAudjAyIC5mYXEgLmZhcUxpc3QgbGkgLnF1ZXN0aW9uV3JhcCAuYW5zd2VyIHtcbiAgYm9yZGVyLXRvcDogMnB4IHNvbGlkICNFM0U0RTU7XG59XG4udjAxLTAzIC5mYXEgLmZhcUxpc3QgbGkgLnF1ZXN0aW9uV3JhcCAuYW5zd2VyIHA6Zmlyc3QtY2hpbGQsIC52MDIgLmZhcSAuZmFxTGlzdCBsaSAucXVlc3Rpb25XcmFwIC5hbnN3ZXIgcDpmaXJzdC1jaGlsZCB7XG4gIHBhZGRpbmctdG9wOiAxMnB4O1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC52MDEtMDMgLmZhcSwgLnYwMiAuZmFxIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJodHRwczovL2R0amxoaWFobHY1M2ouY2xvdWRmcm9udC5uZXQvYXNzZXRzL2JjMy9wcm9kdWN0L2JhY2tfZC5qcGdcIik7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2Q5ZGRlNjtcbiAgfVxufVxuXG4ucmF0aW5nIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogMWVtO1xuICBmb250LXNpemU6IDE3cHg7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIGxpbmUtaGVpZ2h0OiAxZW07XG4gIGxldHRlci1zcGFjaW5nOiAxcHg7XG4gIGNvbG9yOiAjRkZDODZEO1xufVxuLnJhdGluZyBbY2xhc3NePWZhXSB7XG4gIHBhZGRpbmctdG9wOiAxZW07XG59XG4ucmF0aW5nIFtjbGFzc149ZmFdOjpiZWZvcmUge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLnJldmlld3Mge1xuICBwYWRkaW5nLXRvcDogMzBweDtcbiAgcGFkZGluZy1ib3R0b206IDYwcHg7XG4gIGxldHRlci1zcGFjaW5nOiAxLjJweDtcbiAgbGluZS1oZWlnaHQ6IDEuNDI4NTcxNDM7XG59XG4ucmV2aWV3c19fdGl0bGUge1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBmb250LXdlaWdodDogMzAwO1xufVxuLnJldmlld3NfX3RpdGxlOmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgd2lkdGg6IDQycHg7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMTVweCAwO1xufVxuLnJldmlld3NfX2l0ZW0ge1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI0Q4RDhEODtcbn1cbi5yZXZpZXdzX19pdGVtLXRpdGxlLCAucmV2aWV3c19fY29tbWVudCwgLnJldmlld3NfX2F1dGhvciwgLnJldmlld3NfX25vdGUge1xuICBtYXJnaW4tdG9wOiAxMHB4O1xufVxuLnJldmlld3NfX2l0ZW0tdGl0bGUge1xuICBmb250LXNpemU6IDIycHg7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIGNvbG9yOiAjMDAwO1xufVxuLnJldmlld3NfX2NvbW1lbnQge1xuICBmb250LXNpemU6IDE1cHg7XG59XG4ucmV2aWV3c19fYXV0aG9yIHtcbiAgZm9udC1zaXplOiAxN3B4O1xuICBmb250LXdlaWdodDogNzAwO1xuICBjb2xvcjogIzMwMzY3OTtcbn1cbi5yZXZpZXdzX19ub3RlIHtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBmb250LXdlaWdodDogbGlnaHRlcjtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xufVxuXG4uYWJvdXRCQzMge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlNWU5ZWE7XG4gIHBhZGRpbmc6IDIwcHggMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cbi5hYm91dEJDMyAuaW1nV3JhcCB7XG4gIG1hcmdpbi1yaWdodDogLTQ1cHg7XG59XG4uYWJvdXRCQzMgLmltZ1dyYXAgaW1nIHtcbiAgbWF4LXdpZHRoOiAyNDBweDtcbiAgbWFyZ2luOiAwIGF1dG8gMjBweDtcbn1cbi5hYm91dEJDMyBoMiB7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG59XG4uYWJvdXRCQzMgaDI6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICB3aWR0aDogNDJweDtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAxNXB4IGF1dG87XG59XG4uYWJvdXRCQzMgcCB7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgbGluZS1oZWlnaHQ6IDE4cHg7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIG1hcmdpbi1ib3R0b206IDE2cHg7XG59XG4uYWJvdXRCQzMgLmJ0biwgLmFib3V0QkMzIC5idG4td3JhcDpiZWZvcmUge1xuICB3aWR0aDogMTAwJTtcbn1cblxuZm9vdGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzMzNDU3OTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBjb2xvcjogI0ZGRjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBmb250LXNpemU6IDE2cHg7XG4gIHBhZGRpbmc6IDE3cHggMDtcbn1cbmZvb3RlciAuY29udGFpbmVyIHtcbiAgbWF4LXdpZHRoOiBpbmhlcml0O1xufVxuZm9vdGVyIC50ZXh0IHAge1xuICBmb250LXNpemU6IDE2cHg7XG4gIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICBtYXJnaW46IDBweDtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbn1cbmZvb3RlciAudGV4dCBwLmZkYSB7XG4gIGJvcmRlcjogc29saWQgMnB4ICNmZmY7XG4gIHBhZGRpbmc6IDVweDtcbiAgbWFyZ2luOiAwIDUlIDRweDtcbn1cbmZvb3RlciBpbWcge1xuICB3aWR0aDogMTY5cHg7XG4gIG1hcmdpbi10b3A6IDVweDtcbn1cbmZvb3RlciAuY29weXJpZ2h0IHtcbiAgZm9udC1zaXplOiAxNnB4O1xuICBtYXJnaW4tdG9wOiAxNnB4O1xuICBsaW5lLWhlaWdodDogMjBweDtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbn1cbmZvb3RlciB1bCB7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG59XG5mb290ZXIgdWwgbGkge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5mb290ZXIgdWwgbGkgYSB7XG4gIGNvbG9yOiAjYjlkMzU2O1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbn1cbmZvb3RlciB1bCBsaSBhOmhvdmVyIHtcbiAgY29sb3I6ICMyOTI5Mjk7XG59XG5mb290ZXIgdWwgbGk6bm90KDpsYXN0LWNoaWxkKTphZnRlciB7XG4gIGNvbnRlbnQ6IFwifFwiO1xuICBtYXJnaW46IDAgN3B4O1xufVxuLnYwMS0wMyBmb290ZXIsIC52MDIgZm9vdGVyIHtcbiAgcGFkZGluZy10b3A6IDMycHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICM5ZGE0YmM7XG59XG4udjAxLTAzIGZvb3RlciAudGV4dCBwLCAudjAyIGZvb3RlciAudGV4dCBwIHtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBsaW5lLWhlaWdodDogMTdweDtcbn1cbi52MDEtMDMgZm9vdGVyIC50ZXh0IHAuZmRhLCAudjAyIGZvb3RlciAudGV4dCBwLmZkYSB7XG4gIG1hcmdpbjogMTBweCAwIDlweDtcbiAgcGFkZGluZzogMXB4O1xuICBib3JkZXItd2lkdGg6IDFweDtcbn1cbi52MDEtMDMgZm9vdGVyIC50ZXh0IHAubW9ybmluZ1NhbGUtZGlzY2xhaW1lciwgLnYwMS0wMyBmb290ZXIgLnRleHQgcC5wcm9tby1kaXNjbGFpbWVyLCAudjAyIGZvb3RlciAudGV4dCBwLm1vcm5pbmdTYWxlLWRpc2NsYWltZXIsIC52MDIgZm9vdGVyIC50ZXh0IHAucHJvbW8tZGlzY2xhaW1lciB7XG4gIG1hcmdpbi1ibG9jazogMWVtO1xuICBmb250LXNpemU6IDAuOGVtO1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG59XG4udjAxLTAzIGZvb3RlciB1bCBsaSBhLCAudjAyIGZvb3RlciB1bCBsaSBhIHtcbiAgY29sb3I6ICNmZmY7XG4gIGZvbnQtc2l6ZTogMTVweDtcbn1cbi52MDEtMDMgZm9vdGVyIC5jb3B5cmlnaHQsIC52MDIgZm9vdGVyIC5jb3B5cmlnaHQge1xuICB3aWR0aDogODAlO1xuICBtYXJnaW46IDE1cHggYXV0byAwO1xuICBmb250LXNpemU6IDE0cHg7XG4gIGxpbmUtaGVpZ2h0OiAxN3B4O1xufVxuYm9keS52MDItLXNwbHQtYnRuIGZvb3RlciB7XG4gIG1hcmdpbi1ib3R0b206IDYwcHg7XG59XG5mb290ZXIgLmxvZ28ge1xuICBtYXJnaW4tYmxvY2s6IDFlbTtcbn0iLCIvLy0gMS4gQWJzdHJhY3RzOiB2YXJpYWJsZXMsIGZ1bmN0aW9ucywgbWl4aW5zIGFuZCBwbGFjZWhvbGRlcnNcbkBpbXBvcnQgXCJhYnN0cmFjdHMvdmFyaWFibGVzXCI7XG5AaW1wb3J0IFwiYWJzdHJhY3RzL21peGluc1wiOyBcbkBpbXBvcnQgXCJhYnN0cmFjdHMvZnVuY3Rpb25zXCI7IFxuQGltcG9ydCBcImFic3RyYWN0cy9hbmltYXRpb25zXCI7IFxuXG4vLy0gMi4gVmVuZG9yczogV2UgY291bGQgaW1wb3J0IGhlcmUgYWxsIHZlbmRvcnMgY3NzL3Njc3MgZmlsZXMgdG8gYXZvaWQgc2VydmVyIHJlcXVlc3Qgb24gbG9hZGluZyB0aGUgcGFnZVxuLy8tIGVnOiAvYm9vdHN0cmFwLm1pbi5jc3MgfCBzbGljay5jc3MgfCBzbGljay10aGVtZS5jc3Ncbi8vLSBGb3IgdGhvc2UgY3NzIGZpbGVzIHRoYXQgd2UgbG9hZCBpbiB0aGUgYm9keSwgdGhleSBjYW4gYWxzbyBiZSBsb2FkZWQgb24gdGhlIGhlYWQsIHVzaW5nIHNhbWUgcHJvY2Vzczpcbi8vLSBlZzogNy42LjVfdmlkZW8tanMubWluLmNzcyB8IGZvbnQtYXdlc29tZS5taW4uY3NzXG5cbkBpbXBvcnQgXCJjc3MvYm9vdHN0cmFwLm1pbi5jc3NcIjtcblxuLy8gQGltcG9ydCBcImNzcy9zbGljay5jc3NcIjtcbi8vIEBpbXBvcnQgXCJjc3MvNy42LjVfdmlkZW8tanMubWluLmNzc1wiOyBcblxuLy8tIDMuIEJhc2UgU3R5bGVzOiByZXNldCwgZ2VuZXJpYyBzdHlsZXMsIHR5cG9ncmFwaHksIGJ1dHRvbnMsIC4uLlxuQGltcG9ydCBcImJhc2UvcmVzZXRcIixcbiAgICAgICAgXCJiYXNlL2hlbHBlci1jbGFzc2VzXCIsXG4gICAgICAgIFwiYmFzZS90eXBvZ3JhcGh5XCI7ICBcblxuLy8tIExheW91dDogZ2VuZXJpYyBhbmQgbGF5b3V0XG5AaW1wb3J0IFwibGF5b3V0L2dlbmVyaWNcIiwgXG4gICAgICAgIFwiY29tcG9uZW50cy9idXR0b25zXCIsXG4gICAgICAgIFwiY29tcG9uZW50cy9pY29uc1wiLFxuICAgICAgICBcImxheW91dC9sYXlvdXRcIjtcblxuLy8tIFJhdGluZ1xuQGltcG9ydCBcImNvbXBvbmVudHMvcmF0aW5nXCI7XG5cblxuLy8tIENvbXBvbmVudHNcbkBpbXBvcnQgXCIuLi9jb21wb25lbnRzL2hlYWRlci9oZWFkZXIuc2Nzc1wiLFxuICAgICAgICBcIi4uL2NvbXBvbmVudHMvY2FydC1yZWNvZGVkL2NhcnQuc2Nzc1wiLFxuICAgICAgICBcIi4uL2NvbXBvbmVudHMvbW9uZXlCYWNrL21vbmV5QmFjay5zY3NzXCIsXG4gICAgICAgIFwiLi4vY29tcG9uZW50cy9hYm91dC9hYm91dC5zY3NzXCIsXG4gICAgICAgIFwiLi4vY29tcG9uZW50cy9mYXEvZmFxLnNjc3NcIixcbiAgICAgICAgXCIuLi9jb21wb25lbnRzL3Jldmlld3MvcmV2aWV3cy5zY3NzXCIsXG4gICAgICAgIFwiLi4vY29tcG9uZW50cy9hYm91dEJDMy9hYm91dEJDMy5zY3NzXCIsXG4gICAgICAgIFwiLi4vY29tcG9uZW50cy9mb290ZXIvZm9vdGVyLnNjc3NcIjsgXG4iLCJAa2V5ZnJhbWVzIGJsaW5re1xuICAgIDAlIHsgb3BhY2l0eToxOyB9XG4gICAgNTAlIHsgb3BhY2l0eTowOyB9XG4gICAgMTAwJSB7IG9wYWNpdHk6MTsgfVxufVxuQC13ZWJraXQta2V5ZnJhbWVzIGJsaW5re1xuICAgIDAlIHsgb3BhY2l0eToxOyB9XG4gICAgNTAlIHsgb3BhY2l0eTowOyB9XG4gICAgMTAwJSB7IG9wYWNpdHk6MTsgfVxufVxuQC1tb3ota2V5ZnJhbWVzIGJsaW5re1xuICAgIDAlIHsgb3BhY2l0eToxOyB9XG4gICAgNTAlIHsgb3BhY2l0eTowOyB9XG4gICAgMTAwJSB7IG9wYWNpdHk6MTsgfVxufVxuXG5Aa2V5ZnJhbWVzIGFwcGVhcntcbiAgICAwJSB7IG9wYWNpdHk6MDsgfVxuICAgIDEwMCUgeyBvcGFjaXR5OjE7IH1cbn1cbkAtd2Via2l0LWtleWZyYW1lcyBhcHBlYXJ7XG4gICAgMCUgeyBvcGFjaXR5OjA7IH1cbiAgICAxMDAlIHsgb3BhY2l0eToxOyB9XG59XG5cbkAtbW96LWtleWZyYW1lcyBhcHBlYXJ7XG4gICAgMCUgeyBvcGFjaXR5OjA7IH1cbiAgICAxMDAlIHsgb3BhY2l0eToxOyB9XG59XG5cbkBrZXlmcmFtZXMganVtcHtcbiAgICAwJSB7IHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTsgfVxuICAgIDYwJSB7IHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMjBweCk7IH1cbiAgICAxMDAlIHsgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApOyB9XG59XG5ALXdlYmtpdC1rZXlmcmFtZXMganVtcHtcbiAgICAwJSB7IHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTsgfVxuICAgIDYwJSB7IHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMjBweCk7IH1cbiAgICAxMDAlIHsgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApOyB9XG59XG5cbkAtbW96LWtleWZyYW1lcyBqdW1we1xuICAgIDAlIHsgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApOyB9XG4gICAgNjAlIHsgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0yMHB4KTsgfVxuICAgIDEwMCUgeyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7IH1cbn1cblxuXG5Aa2V5ZnJhbWVzIHdlaWdodHtcbiAgICAwJSB7IHRyYW5zZm9ybTogcm90YXRlKC00OGRlZyk7IH1cbiAgICAxMDAlIHsgdHJhbnNmb3JtOiByb3RhdGUoNDhkZWcpIH1cbn1cbkAtd2Via2l0LWtleWZyYW1lcyB3ZWlnaHR7XG4gICAgMCUgeyB0cmFuc2Zvcm06IHJvdGF0ZSgtNDhkZWcpIH1cbiAgICAxMDAlIHsgdHJhbnNmb3JtOiByb3RhdGUoNDhkZWcpIH1cbn1cblxuQC1tb3ota2V5ZnJhbWVzIHdlaWdodHtcbiAgICAwJSB7IHRyYW5zZm9ybTogcm90YXRlKC00OGRlZykgfVxuICAgIDEwMCUgeyB0cmFuc2Zvcm06IHJvdGF0ZSg0OGRlZykgfVxufVxuXG5Aa2V5ZnJhbWVzIGhhbW1lcntcbiAgICAwJSB7IHRyYW5zZm9ybTogcm90YXRlKDI4ZGVnKSB9XG4gICAgMTAwJSB7IHRyYW5zZm9ybTogcm90YXRlKDJkZWcpOyB9XG59XG5ALXdlYmtpdC1rZXlmcmFtZXMgaGFtbWVye1xuICAgIDAlIHsgdHJhbnNmb3JtOiByb3RhdGUoMjhkZWcpIH1cbiAgICAxMDAlIHsgdHJhbnNmb3JtOiByb3RhdGUoMmRlZyk7IH1cbn1cblxuQC1tb3ota2V5ZnJhbWVzIGhhbW1lcntcbiAgICAwJSB7IHRyYW5zZm9ybTogcm90YXRlKDI4ZGVnKSB9XG4gICAgMTAwJSB7IHRyYW5zZm9ybTogcm90YXRlKDJkZWcpOyB9XG59XG5cbkBrZXlmcmFtZXMgYXBwZWFyLWhhbW1lcntcbiAgICAwJSB7IG9wYWNpdHk6MDsgfVxuICAgIDUwJSB7IG9wYWNpdHk6MTsgfVxuICAgIDYwJSB7IG9wYWNpdHk6MTsgfVxuICAgIDEwMCUgeyBvcGFjaXR5OjA7IH1cbn1cbkAtd2Via2l0LWtleWZyYW1lcyBhcHBlYXItaGFtbWVye1xuICAgIDAlIHsgb3BhY2l0eTowOyB9XG4gICAgNTAlIHsgb3BhY2l0eToxOyB9XG4gICAgNjAlIHsgb3BhY2l0eToxOyB9XG4gICAgMTAwJSB7IG9wYWNpdHk6MDsgfVxufVxuXG5ALW1vei1rZXlmcmFtZXMgYXBwZWFyLWhhbW1lcntcbiAgICAwJSB7IG9wYWNpdHk6MDsgfVxuICAgIDUwJSB7IG9wYWNpdHk6MTsgfVxuICAgIDYwJSB7IG9wYWNpdHk6MTsgfVxuICAgIDEwMCUgeyBvcGFjaXR5OjA7IH1cbn1cblxuQGtleWZyYW1lcyBzY2FsZXtcbiAgICAwJSB7IHRyYW5zZm9ybTogc2NhbGUoMSk7IH1cbiAgICA1MCUgeyB0cmFuc2Zvcm06IHNjYWxlKDEuOCk7IH1cbiAgICA4MCUgeyB0cmFuc2Zvcm06IHNjYWxlKDEpOyB9XG4gICAgMTAwJSB7IHRyYW5zZm9ybTogc2NhbGUoMSk7IH1cbn1cbkAtd2Via2l0LWtleWZyYW1lcyBzY2FsZXtcbiAgICAwJSB7IHRyYW5zZm9ybTogc2NhbGUoMSk7IH1cbiAgICA1MCUgeyB0cmFuc2Zvcm06IHNjYWxlKDEuOCk7IH1cbiAgICA4MCUgeyB0cmFuc2Zvcm06IHNjYWxlKDEpOyB9XG4gICAgMTAwJSB7IHRyYW5zZm9ybTogc2NhbGUoMSk7IH1cbn1cblxuQC1tb3ota2V5ZnJhbWVzIHNjYWxle1xuICAgIDAlIHsgdHJhbnNmb3JtOiBzY2FsZSgxKTsgfVxuICAgIDUwJSB7IHRyYW5zZm9ybTogc2NhbGUoMS44KTsgfVxuICAgIDgwJSB7IHRyYW5zZm9ybTogc2NhbGUoMSk7IH1cbiAgICAxMDAlIHsgdHJhbnNmb3JtOiBzY2FsZSgxKTsgfVxufVxuXG5cbkBrZXlmcmFtZXMgdHJhbnNsYXRlWCB7XG4gICAgMCUge1xuICAgICAgICBsZWZ0OiAtMzAwcHg7XG4gICAgfVxuICAgIDEwMCUge1xuICAgICAgIGxlZnQ6IGNhbGMoMTAwJSArIDMxMHB4KTtcbiAgICB9XG59XG5cbkBrZXlmcmFtZXMgdHJhbnNsYXRlWUFuZFNjYWxlIHtcbiAgICAwJSB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKSBzY2FsZSgxKTtcbiAgICB9XG4gICAgNTAlIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpIHNjYWxlKDEuMjUpO1xuICAgIH1cbiAgICA4MCUge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSkgc2NhbGUoMSk7XG4gICAgfVxuICAgIDEwMCUge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSkgc2NhbGUoMSk7XG4gICAgfVxufVxuQC13ZWJraXQta2V5ZnJhbWVzIHRyYW5zbGF0ZVlBbmRTY2FsZSB7XG4gICAgMCUge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSkgc2NhbGUoMSk7XG4gICAgfVxuICAgIDUwJSB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKSBzY2FsZSgxLjI1KTtcbiAgICB9XG4gICAgODAlIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpIHNjYWxlKDEpO1xuICAgIH1cbiAgICAxMDAlIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpIHNjYWxlKDEpO1xuICAgIH1cbn1cblxuQC1tb3ota2V5ZnJhbWVzIHRyYW5zbGF0ZVlBbmRTY2FsZSB7XG4gICAgMCUge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSkgc2NhbGUoMSk7XG4gICAgfVxuICAgIDUwJSB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKSBzY2FsZSgxLjI1KTtcbiAgICB9XG4gICAgODAlIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpIHNjYWxlKDEpO1xuICAgIH1cbiAgICAxMDAlIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpIHNjYWxlKDEpO1xuICAgIH1cbn1cblxuQGtleWZyYW1lcyBob29we1xuICAgIDAlIHsgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDBweCk7fVxuICAgIDMwJSB7dHJhbnNmb3JtOiB0cmFuc2xhdGVYKC00MHB4KTt9XG4gICAgNDAlIHt0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMHB4KTt9XG4gICAgNTAlIHt0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNTBweCk7fVxuICAgIDEwMCUge3RyYW5zZm9ybTogdHJhbnNsYXRlWCgwcHgpO31cbn1cbkAtd2Via2l0LWtleWZyYW1lcyBob29we1xuICAgIDAlIHsgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDBweCk7fVxuICAgIDMwJSB7dHJhbnNmb3JtOiB0cmFuc2xhdGVYKC00MHB4KTt9XG4gICAgNDAlIHt0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMHB4KTt9XG4gICAgNTAlIHt0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNTBweCk7fVxuICAgIDEwMCUge3RyYW5zZm9ybTogdHJhbnNsYXRlWCgwcHgpO31cbn1cblxuQC1tb3ota2V5ZnJhbWVzIGhvb3B7XG4gICAgMCUgeyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMHB4KTt9XG4gICAgMzAlIHt0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTQwcHgpO31cbiAgICA0MCUge3RyYW5zZm9ybTogdHJhbnNsYXRlWCgwcHgpO31cbiAgICA1MCUge3RyYW5zZm9ybTogdHJhbnNsYXRlWCg1MHB4KTt9XG4gICAgMTAwJSB7dHJhbnNmb3JtOiB0cmFuc2xhdGVYKDBweCk7fVxufVxuXG5Aa2V5ZnJhbWVzIGRhbnNle1xuICAgIDAlIHsgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDBweCk7fSAgIFxuICAgIDUwJSB7dHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMHB4KTt9XG4gICAgNzAlIHt0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTBweCk7fVxuICAgIDEwMCUge3RyYW5zZm9ybTogdHJhbnNsYXRlWCgwcHgpO31cbn1cbkAtd2Via2l0LWtleWZyYW1lcyBkYW5zZXtcbiAgICAwJSB7IHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwcHgpO30gICBcbiAgICA1MCUge3RyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTBweCk7fVxuICAgIDcwJSB7dHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwcHgpO31cbiAgICAxMDAlIHt0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMHB4KTt9XG59XG5cbkAtbW96LWtleWZyYW1lcyBkYW5zZXtcbiAgICAwJSB7IHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwcHgpO30gICBcbiAgICA1MCUge3RyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTBweCk7fVxuICAgIDcwJSB7dHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwcHgpO31cbiAgICAxMDAlIHt0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMHB4KTt9XG59XG5cblxuQGtleWZyYW1lcyBoYW1idXJnZXJ7XG4gICAgMCUgeyB0cmFuc2Zvcm06IHNjYWxlKDEpOyB9XG4gICAgMTAwJSB7IHRyYW5zZm9ybTogc2NhbGUoMCk7IH1cbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGhhbWJ1cmdlcntcbiAgICAwJSB7IHRyYW5zZm9ybTogc2NhbGUoMSk7IH1cbiAgICAxMDAlIHsgdHJhbnNmb3JtOiBzY2FsZSgwKTsgfVxufVxuXG5ALW1vei1rZXlmcmFtZXMgaGFtYnVyZ2Vye1xuICAgIDAlIHsgdHJhbnNmb3JtOiBzY2FsZSgxKTsgfVxuICAgIDEwMCUgeyB0cmFuc2Zvcm06IHNjYWxlKDApOyB9XG59XG5cblxuXG5cblxuQGtleWZyYW1lcyBibGluay1jdXJzb3J7XG4gICAgMCUgeyBvcGFjaXR5OjE7IH1cbiAgICA1MCUgeyBvcGFjaXR5OjA7IH1cbiAgICAxMDAlIHsgb3BhY2l0eToxOyB9XG59XG5ALXdlYmtpdC1rZXlmcmFtZXMgYmxpbmstY3Vyc29ye1xuICAgIDAlIHsgb3BhY2l0eToxOyB9XG4gICAgNTAlIHsgb3BhY2l0eTowOyB9XG4gICAgMTAwJSB7IG9wYWNpdHk6MTsgfVxufVxuQC1tb3ota2V5ZnJhbWVzIGJsaW5rLWN1cnNvcntcbiAgICAwJSB7IG9wYWNpdHk6MTsgfVxuICAgIDUwJSB7IG9wYWNpdHk6MDsgfVxuICAgIDEwMCUgeyBvcGFjaXR5OjE7IH1cbn1cblxuXG5Aa2V5ZnJhbWVzIGJvdHRsZURhbmNle1xuICAgIDAlIHsgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7IH1cbiAgICA1JSB7IHRyYW5zZm9ybTogcm90YXRlKDVkZWcpOyB9XG4gICAgOTUlIHsgdHJhbnNmb3JtOiByb3RhdGUoLTVkZWcpIH1cbiAgICAxMDAlIHsgdHJhbnNmb3JtOiByb3RhdGUoMGRlZykgfVxufVxuQC13ZWJraXQta2V5ZnJhbWVzIGJvdHRsZURhbmNle1xuICAgIDAlIHsgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7IH1cbiAgICA1JSB7IHRyYW5zZm9ybTogcm90YXRlKDVkZWcpOyB9XG4gICAgOTUlIHsgdHJhbnNmb3JtOiByb3RhdGUoLTVkZWcpIH1cbiAgICAxMDAlIHsgdHJhbnNmb3JtOiByb3RhdGUoMGRlZykgfVxufVxuXG5ALW1vei1rZXlmcmFtZXMgYm90dGxlRGFuY2V7XG4gICAgMCUgeyB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTsgfVxuICAgIDUlIHsgdHJhbnNmb3JtOiByb3RhdGUoNWRlZyk7IH1cbiAgICA5NSUgeyB0cmFuc2Zvcm06IHJvdGF0ZSgtNWRlZykgfVxuICAgIDEwMCUgeyB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKSB9XG59XG5cbi8vLSBBcHBlYXJcbkBrZXlmcmFtZXMgYXBwZWFyIHtcbiAgICAwJSAgIHsgb3BhY2l0eTogMDsgfVxuICAgIDEwMCUgeyBvcGFjaXR5OiAxOyB9XG59XG5ALXdlYmtpdC1rZXlmcmFtZXMgYXBwZWFyIHtcbiAgICAwJSAgIHsgb3BhY2l0eTogMDsgfVxuICAgIDEwMCUgeyBvcGFjaXR5OiAxOyB9XG59XG5ALW1vei1rZXlmcmFtZXMgYXBwZWFyIHtcbiAgICAwJSAgIHsgb3BhY2l0eTogMDsgfVxuICAgIDEwMCUgeyBvcGFjaXR5OiAxOyB9XG59XG5cbi8vLSBEaXNhcHBlYXJcbkBrZXlmcmFtZXMgZGlzYXBwZWFyIHtcbiAgICAwJSAgIHsgb3BhY2l0eTogMTsgfVxuICAgIDEwMCUgeyBvcGFjaXR5OiAwOyB9XG59XG5ALXdlYmtpdC1rZXlmcmFtZXMgZGlzYXBwZWFyIHtcbiAgICAwJSAgIHsgb3BhY2l0eTogMTsgfVxuICAgIDEwMCUgeyBvcGFjaXR5OiAwOyB9XG59XG5ALW1vei1rZXlmcmFtZXMgZGlzYXBwZWFyIHtcbiAgICAwJSAgIHsgb3BhY2l0eTogMTsgfVxuICAgIDEwMCUgeyBvcGFjaXR5OiAwOyB9XG59IiwiLyogaHR0cDovL21leWVyd2ViLmNvbS9lcmljL3Rvb2xzL2Nzcy9yZXNldC9cbiAgIHYyLjAtbW9kaWZpZWQgfCAyMDExMDEyNlxuICAgTGljZW5zZTogbm9uZSAocHVibGljIGRvbWFpbilcbiovXG5cbmh0bWwsIGJvZHksIGRpdiwgc3BhbiwgYXBwbGV0LCBvYmplY3QsIGlmcmFtZSxcbmgxLCBoMiwgaDMsIGg0LCBoNSwgaDYsIHAsIGJsb2NrcXVvdGUsIHByZSxcbmEsIGFiYnIsIGFjcm9ueW0sIGFkZHJlc3MsIGJpZywgY2l0ZSwgY29kZSxcbmRlbCwgZGZuLCBlbSwgaW1nLCBpbnMsIGtiZCwgcSwgcywgc2FtcCxcbnNtYWxsLCBzdHJpa2UsIHN0cm9uZywgc3ViLCBzdXAsIHR0LCB2YXIsXG5iLCB1LCBpLCBjZW50ZXIsXG5kbCwgZHQsIGRkLCBvbCwgdWwsIGxpLFxuZmllbGRzZXQsIGZvcm0sIGxhYmVsLCBsZWdlbmQsXG50YWJsZSwgY2FwdGlvbiwgdGJvZHksIHRmb290LCB0aGVhZCwgdHIsIHRoLCB0ZCxcbmFydGljbGUsIGFzaWRlLCBjYW52YXMsIGRldGFpbHMsIGVtYmVkLFxuZmlndXJlLCBmaWdjYXB0aW9uLCBmb290ZXIsIGhlYWRlciwgaGdyb3VwLFxubWVudSwgbmF2LCBvdXRwdXQsIHJ1YnksIHNlY3Rpb24sIHN1bW1hcnksXG50aW1lLCBtYXJrLCBhdWRpbywgdmlkZW8ge1xuICBtYXJnaW46IDA7XG5cdHBhZGRpbmc6IDA7XG5cdGJvcmRlcjogMDtcblx0Zm9udC1zaXplOiAxMDAlO1xuXHRmb250OiBpbmhlcml0O1xuXHR2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cbi8qIG1ha2Ugc3VyZSB0byBzZXQgc29tZSBmb2N1cyBzdHlsZXMgZm9yIGFjY2Vzc2liaWxpdHkgKi9cbjpmb2N1cyB7XG4gICAgb3V0bGluZTogMDtcbn1cblxuLyogSFRNTDUgZGlzcGxheS1yb2xlIHJlc2V0IGZvciBvbGRlciBicm93c2VycyAqL1xuYXJ0aWNsZSwgYXNpZGUsIGRldGFpbHMsIGZpZ2NhcHRpb24sIGZpZ3VyZSxcbmZvb3RlciwgaGVhZGVyLCBoZ3JvdXAsIG1lbnUsIG5hdiwgc2VjdGlvbiB7XG5cdGRpc3BsYXk6IGJsb2NrO1xufVxuXG5ib2R5IHtcblx0bGluZS1oZWlnaHQ6IDE7XG59XG5cbm9sLCB1bCB7XG5cdGxpc3Qtc3R5bGU6IG5vbmU7XG59XG5cbmJsb2NrcXVvdGUsIHEge1xuXHRxdW90ZXM6IG5vbmU7XG59XG5cbmJsb2NrcXVvdGU6YmVmb3JlLCBibG9ja3F1b3RlOmFmdGVyLFxucTpiZWZvcmUsIHE6YWZ0ZXIge1xuXHRjb250ZW50OiAnJztcblx0Y29udGVudDogbm9uZTtcbn1cblxudGFibGUge1xuXHRib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xuXHRib3JkZXItc3BhY2luZzogMDtcbn1cblxuaW5wdXRbdHlwZT1zZWFyY2hdOjotd2Via2l0LXNlYXJjaC1jYW5jZWwtYnV0dG9uLFxuaW5wdXRbdHlwZT1zZWFyY2hdOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uLFxuaW5wdXRbdHlwZT1zZWFyY2hdOjotd2Via2l0LXNlYXJjaC1yZXN1bHRzLWJ1dHRvbixcbmlucHV0W3R5cGU9c2VhcmNoXTo6LXdlYmtpdC1zZWFyY2gtcmVzdWx0cy1kZWNvcmF0aW9uIHtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgLW1vei1hcHBlYXJhbmNlOiBub25lO1xufVxuXG5pbnB1dFt0eXBlPXNlYXJjaF0ge1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICAtbW96LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgLXdlYmtpdC1ib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgICAtbW96LWJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICAgIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xufVxuXG50ZXh0YXJlYSB7XG4gICAgb3ZlcmZsb3c6IGF1dG87XG4gICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICByZXNpemU6IHZlcnRpY2FsO1xufVxuXG4vKipcbiAqIENvcnJlY3QgYGlubGluZS1ibG9ja2AgZGlzcGxheSBub3QgZGVmaW5lZCBpbiBJRSA2LzcvOC85IGFuZCBGaXJlZm94IDMuXG4gKi9cblxuYXVkaW8sXG5jYW52YXMsXG52aWRlbyB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICpkaXNwbGF5OiBpbmxpbmU7XG4gICAgKnpvb206IDE7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xufVxuXG4vKipcbiAqIFByZXZlbnQgbW9kZXJuIGJyb3dzZXJzIGZyb20gZGlzcGxheWluZyBgYXVkaW9gIHdpdGhvdXQgY29udHJvbHMuXG4gKiBSZW1vdmUgZXhjZXNzIGhlaWdodCBpbiBpT1MgNSBkZXZpY2VzLlxuICovXG5cbmF1ZGlvOm5vdChbY29udHJvbHNdKSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBoZWlnaHQ6IDA7XG59XG5cbi8qKlxuICogQWRkcmVzcyBzdHlsaW5nIG5vdCBwcmVzZW50IGluIElFIDcvOC85LCBGaXJlZm94IDMsIGFuZCBTYWZhcmkgNC5cbiAqIEtub3duIGlzc3VlOiBubyBJRSA2IHN1cHBvcnQuXG4gKi9cblxuW2hpZGRlbl0ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0ZXh0IHJlc2l6aW5nIG9kZGx5IGluIElFIDYvNyB3aGVuIGJvZHkgYGZvbnQtc2l6ZWAgaXMgc2V0IHVzaW5nXG4gKiAgICBgZW1gIHVuaXRzLlxuICogMi4gUHJldmVudCBpT1MgdGV4dCBzaXplIGFkanVzdCBhZnRlciBvcmllbnRhdGlvbiBjaGFuZ2UsIHdpdGhvdXQgZGlzYWJsaW5nXG4gKiAgICB1c2VyIHpvb20uXG4gKi9cblxuaHRtbCB7XG4gICAgZm9udC1zaXplOiAxMDAlOyAvKiAxICovXG4gICAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvKiAyICovXG4gICAgLW1zLXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBBZGRyZXNzIGBvdXRsaW5lYCBpbmNvbnNpc3RlbmN5IGJldHdlZW4gQ2hyb21lIGFuZCBvdGhlciBicm93c2Vycy5cbiAqL1xuXG5hOmZvY3VzIHtcbiAgICBvdXRsaW5lOiB0aGluIGRvdHRlZDtcbn1cblxuLyoqXG4gKiBJbXByb3ZlIHJlYWRhYmlsaXR5IHdoZW4gZm9jdXNlZCBhbmQgYWxzbyBtb3VzZSBob3ZlcmVkIGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5hOmFjdGl2ZSxcbmE6aG92ZXIge1xuICAgIG91dGxpbmU6IDA7XG59XG5cbi8qKlxuICogMS4gUmVtb3ZlIGJvcmRlciB3aGVuIGluc2lkZSBgYWAgZWxlbWVudCBpbiBJRSA2LzcvOC85IGFuZCBGaXJlZm94IDMuXG4gKiAyLiBJbXByb3ZlIGltYWdlIHF1YWxpdHkgd2hlbiBzY2FsZWQgaW4gSUUgNy5cbiAqL1xuXG5pbWcge1xuICAgIGJvcmRlcjogMDsgLyogMSAqL1xuICAgIC1tcy1pbnRlcnBvbGF0aW9uLW1vZGU6IGJpY3ViaWM7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBBZGRyZXNzIG1hcmdpbiBub3QgcHJlc2VudCBpbiBJRSA2LzcvOC85LCBTYWZhcmkgNSwgYW5kIE9wZXJhIDExLlxuICovXG5cbmZpZ3VyZSB7XG4gICAgbWFyZ2luOiAwO1xufVxuXG4vKipcbiAqIENvcnJlY3QgbWFyZ2luIGRpc3BsYXllZCBvZGRseSBpbiBJRSA2LzcuXG4gKi9cblxuZm9ybSB7XG4gICAgbWFyZ2luOiAwO1xufVxuXG4vKipcbiAqIERlZmluZSBjb25zaXN0ZW50IGJvcmRlciwgbWFyZ2luLCBhbmQgcGFkZGluZy5cbiAqL1xuXG5maWVsZHNldCB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2MwYzBjMDtcbiAgICBtYXJnaW46IDAgMnB4O1xuICAgIHBhZGRpbmc6IDAuMzVlbSAwLjYyNWVtIDAuNzVlbTtcbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IGNvbG9yIG5vdCBiZWluZyBpbmhlcml0ZWQgaW4gSUUgNi83LzgvOS5cbiAqIDIuIENvcnJlY3QgdGV4dCBub3Qgd3JhcHBpbmcgaW4gRmlyZWZveCAzLlxuICogMy4gQ29ycmVjdCBhbGlnbm1lbnQgZGlzcGxheWVkIG9kZGx5IGluIElFIDYvNy5cbiAqL1xuXG5sZWdlbmQge1xuICAgIGJvcmRlcjogMDsgLyogMSAqL1xuICAgIHBhZGRpbmc6IDA7XG4gICAgd2hpdGUtc3BhY2U6IG5vcm1hbDsgLyogMiAqL1xuICAgICptYXJnaW4tbGVmdDogLTdweDsgLyogMyAqL1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgZm9udCBzaXplIG5vdCBiZWluZyBpbmhlcml0ZWQgaW4gYWxsIGJyb3dzZXJzLlxuICogMi4gQWRkcmVzcyBtYXJnaW5zIHNldCBkaWZmZXJlbnRseSBpbiBJRSA2LzcsIEZpcmVmb3ggMyssIFNhZmFyaSA1LFxuICogICAgYW5kIENocm9tZS5cbiAqIDMuIEltcHJvdmUgYXBwZWFyYW5jZSBhbmQgY29uc2lzdGVuY3kgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbmJ1dHRvbixcbmlucHV0LFxuc2VsZWN0LFxudGV4dGFyZWEge1xuICAgIGZvbnQtc2l6ZTogMTAwJTsgLyogMSAqL1xuICAgIG1hcmdpbjogMDsgLyogMiAqL1xuICAgIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTsgLyogMyAqL1xuICAgICp2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyAvKiAzICovXG59XG5cbi8qKlxuICogQWRkcmVzcyBGaXJlZm94IDMrIHNldHRpbmcgYGxpbmUtaGVpZ2h0YCBvbiBgaW5wdXRgIHVzaW5nIGAhaW1wb3J0YW50YCBpblxuICogdGhlIFVBIHN0eWxlc2hlZXQuXG4gKi9cblxuYnV0dG9uLFxuaW5wdXQge1xuICAgIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG59XG5cbi8qKlxuICogQWRkcmVzcyBpbmNvbnNpc3RlbnQgYHRleHQtdHJhbnNmb3JtYCBpbmhlcml0YW5jZSBmb3IgYGJ1dHRvbmAgYW5kIGBzZWxlY3RgLlxuICogQWxsIG90aGVyIGZvcm0gY29udHJvbCBlbGVtZW50cyBkbyBub3QgaW5oZXJpdCBgdGV4dC10cmFuc2Zvcm1gIHZhbHVlcy5cbiAqIENvcnJlY3QgYGJ1dHRvbmAgc3R5bGUgaW5oZXJpdGFuY2UgaW4gQ2hyb21lLCBTYWZhcmkgNSssIGFuZCBJRSA2Ky5cbiAqIENvcnJlY3QgYHNlbGVjdGAgc3R5bGUgaW5oZXJpdGFuY2UgaW4gRmlyZWZveCA0KyBhbmQgT3BlcmEuXG4gKi9cblxuYnV0dG9uLFxuc2VsZWN0IHtcbiAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbn1cblxuLyoqXG4gKiAxLiBBdm9pZCB0aGUgV2ViS2l0IGJ1ZyBpbiBBbmRyb2lkIDQuMC4qIHdoZXJlICgyKSBkZXN0cm95cyBuYXRpdmUgYGF1ZGlvYFxuICogICAgYW5kIGB2aWRlb2AgY29udHJvbHMuXG4gKiAyLiBDb3JyZWN0IGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgYGlucHV0YCB0eXBlcyBpbiBpT1MuXG4gKiAzLiBJbXByb3ZlIHVzYWJpbGl0eSBhbmQgY29uc2lzdGVuY3kgb2YgY3Vyc29yIHN0eWxlIGJldHdlZW4gaW1hZ2UtdHlwZVxuICogICAgYGlucHV0YCBhbmQgb3RoZXJzLlxuICogNC4gUmVtb3ZlIGlubmVyIHNwYWNpbmcgaW4gSUUgNyB3aXRob3V0IGFmZmVjdGluZyBub3JtYWwgdGV4dCBpbnB1dHMuXG4gKiAgICBLbm93biBpc3N1ZTogaW5uZXIgc3BhY2luZyByZW1haW5zIGluIElFIDYuXG4gKi9cblxuYnV0dG9uLFxuaHRtbCBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdLCAvKiAxICovXG5pbnB1dFt0eXBlPVwicmVzZXRcIl0sXG5pbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjsgLyogMiAqL1xuICAgIGN1cnNvcjogcG9pbnRlcjsgLyogMyAqL1xuICAgICpvdmVyZmxvdzogdmlzaWJsZTsgIC8qIDQgKi9cbn1cblxuLyoqXG4gKiBSZS1zZXQgZGVmYXVsdCBjdXJzb3IgZm9yIGRpc2FibGVkIGVsZW1lbnRzLlxuICovXG5cbmJ1dHRvbltkaXNhYmxlZF0sXG5odG1sIGlucHV0W2Rpc2FibGVkXSB7XG4gICAgY3Vyc29yOiBkZWZhdWx0O1xufVxuXG4vKipcbiAqIDEuIEFkZHJlc3MgYm94IHNpemluZyBzZXQgdG8gY29udGVudC1ib3ggaW4gSUUgOC85LlxuICogMi4gUmVtb3ZlIGV4Y2VzcyBwYWRkaW5nIGluIElFIDgvOS5cbiAqIDMuIFJlbW92ZSBleGNlc3MgcGFkZGluZyBpbiBJRSA3LlxuICogICAgS25vd24gaXNzdWU6IGV4Y2VzcyBwYWRkaW5nIHJlbWFpbnMgaW4gSUUgNi5cbiAqL1xuXG5pbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0sXG5pbnB1dFt0eXBlPVwicmFkaW9cIl0ge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8qIDEgKi9cbiAgICBwYWRkaW5nOiAwOyAvKiAyICovXG4gICAgKmhlaWdodDogMTNweDsgLyogMyAqL1xuICAgICp3aWR0aDogMTNweDsgLyogMyAqL1xufVxuXG4vKipcbiAqIDEuIEFkZHJlc3MgYGFwcGVhcmFuY2VgIHNldCB0byBgc2VhcmNoZmllbGRgIGluIFNhZmFyaSA1IGFuZCBDaHJvbWUuXG4gKiAyLiBBZGRyZXNzIGBib3gtc2l6aW5nYCBzZXQgdG8gYGJvcmRlci1ib3hgIGluIFNhZmFyaSA1IGFuZCBDaHJvbWVcbiAqICAgIChpbmNsdWRlIGAtbW96YCB0byBmdXR1cmUtcHJvb2YpLlxuICovXG5cbmlucHV0W3R5cGU9XCJzZWFyY2hcIl0ge1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogdGV4dGZpZWxkOyAvKiAxICovXG4gICAgLW1vei1ib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgICAtd2Via2l0LWJveC1zaXppbmc6IGNvbnRlbnQtYm94OyAvKiAyICovXG4gICAgYm94LXNpemluZzogY29udGVudC1ib3g7XG59XG5cbi8qKlxuICogUmVtb3ZlIGlubmVyIHBhZGRpbmcgYW5kIHNlYXJjaCBjYW5jZWwgYnV0dG9uIGluIFNhZmFyaSA1IGFuZCBDaHJvbWVcbiAqIG9uIE9TIFguXG4gKi9cblxuaW5wdXRbdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtY2FuY2VsLWJ1dHRvbixcbmlucHV0W3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWRlY29yYXRpb24ge1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuLyoqXG4gKiBSZW1vdmUgaW5uZXIgcGFkZGluZyBhbmQgYm9yZGVyIGluIEZpcmVmb3ggMysuXG4gKi9cblxuYnV0dG9uOjotbW96LWZvY3VzLWlubmVyLFxuaW5wdXQ6Oi1tb3otZm9jdXMtaW5uZXIge1xuICAgIGJvcmRlcjogMDtcbiAgICBwYWRkaW5nOiAwO1xufVxuXG4vKipcbiAqIDEuIFJlbW92ZSBkZWZhdWx0IHZlcnRpY2FsIHNjcm9sbGJhciBpbiBJRSA2LzcvOC85LlxuICogMi4gSW1wcm92ZSByZWFkYWJpbGl0eSBhbmQgYWxpZ25tZW50IGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG50ZXh0YXJlYSB7XG4gICAgb3ZlcmZsb3c6IGF1dG87IC8qIDEgKi9cbiAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wOyAvKiAyICovXG59XG5cbi8qKlxuICogUmVtb3ZlIG1vc3Qgc3BhY2luZyBiZXR3ZWVuIHRhYmxlIGNlbGxzLlxuICovXG5cbnRhYmxlIHtcbiAgICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xuICAgIGJvcmRlci1zcGFjaW5nOiAwO1xufVxuXG5odG1sLFxuYnV0dG9uLFxuaW5wdXQsXG5zZWxlY3QsXG50ZXh0YXJlYSB7XG4gICAgY29sb3I6ICMyMjI7XG59XG5cblxuOjotbW96LXNlbGVjdGlvbiB7XG4gICAgYmFja2dyb3VuZDogI2IzZDRmYztcbiAgICB0ZXh0LXNoYWRvdzogbm9uZTtcbn1cblxuOjpzZWxlY3Rpb24ge1xuICAgIGJhY2tncm91bmQ6ICNiM2Q0ZmM7XG4gICAgdGV4dC1zaGFkb3c6IG5vbmU7XG59XG5cbmltZyB7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cblxuZmllbGRzZXQge1xuICAgIGJvcmRlcjogMDtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbn1cblxudGV4dGFyZWEge1xuICAgIHJlc2l6ZTogdmVydGljYWw7XG59XG5cbi5jaHJvbWVmcmFtZSB7XG4gICAgbWFyZ2luOiAwLjJlbSAwO1xuICAgIGJhY2tncm91bmQ6ICNjY2M7XG4gICAgY29sb3I6ICMwMDA7XG4gICAgcGFkZGluZzogMC4yZW0gMDtcbn1cbiIsIi8vLSBHZW5lcmljIGRlY2xhcmF0aW9uc1xuYm9keSB7XG4gICAgZm9udC1mYW1pbHk6ICRtYWluRm9udDtcbiAgICBmb250LXNpemU6IDE1cHg7XG4gICAgY29sb3I6ICR0ZXh0Q29sb3I7XG5cbiAgICAmLnYwMS0wMyxcbiAgICAmLnYwMiB7XG4gICAgICAgIGNvbG9yOiAkdjAxLTAzLXRleHRDb2xvcjtcblxuICAgICAgICAmOm5vdCgudjAyLS1zcGx0LWJ0bikge1xuICAgICAgICAgICAgbWFpbiB7XG4gICAgICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuYSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG5pbWcge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4udmlkZW8tanMsXG52aWRlby1qcyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xufVxuIiwiLmhpZGUge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLnNob3cge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jayAhaW1wb3J0YW50O1xufSIsIi8vLSBCYXNlIHR5cG9ncmFwaHkgc3R5bGVzXG5oMXtmb250LWZhbWlseTogJG1haW5Gb250OyBmb250LXNpemU6IDIwcHg7IGNvbG9yOiAkdGl0bGVDb2xvcjsgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAuc3ViLXRpdGxle3RleHQtYWxpZ246IGxlZnQ7IGZvbnQtc2l6ZTogNTBweDt9XG59IFxuXG5oMiwgaDN7Zm9udC1mYW1pbHk6ICRtYWluRm9udDsgZm9udC1zaXplOiAyN3B4OyBmb250LXdlaWdodDogNzAwOyAgIGxpbmUtaGVpZ2h0OiAzNHB4OyBjb2xvcjogJHRpdGxlQ29sb3I7IHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAuc3ViLXRpdGxle2Rpc3BsYXk6IGJsb2NrO31cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3Ljk4cHgpIHtcbiAgICB9XG59XG5cbmgzIHtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3Ljk4cHgpIHtcbiAgICAgICBcbiAgICB9XG59XG5cbnNtYWxsIHtcbiAgICBmb250LWZhbWlseTogJG1haW5Gb250OyBjb2xvcjogJG1haW5Db2xvcjtcbn1cblxucCB7IG1hcmdpbjogMTZweCAwO1xuICAgICY6bm90KDpsYXN0LWNoaWxkKXsgfVxuXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7XG4gICAgICAgXG4gICAgICAgICY6bm90KDpsYXN0LWNoaWxkKXt9XG4gICAgfVxufVxuXG5iIHtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbn1cblxuLnN1Yi10aXRsZXtkaXNwbGF5OiBibG9jazsgXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7XG4gICAgICAgIFxuICAgIH1cbn0gXG5cbi5yYXRpbmd7XG4gICAgJjpiZWZvcmV7bGV0dGVyLXNwYWNpbmc6IDIuNHB4O31cbn1cblxuLmRpc2NsYWltZXJ7IFxuICAgIGZvbnQtc2l6ZTogMTJweDsgbGluZS1oZWlnaHQ6IDEuNDtcbn1cbi5jaXRhdGlvbntcbiAgICBmb250LXNpemU6IDEwcHg7IGZvbnQtd2VpZ2h0OiBub3JtYWwgIWltcG9ydGFudDtcbiAgICBcbiAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3Ljk4cHgpIHtcbiAgICAgICAgZm9udC1zaXplOiA4cHg7XG4gICAgfVxufVxuXG4uYXN0ZXJpc2t7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICB9XG59XG5cbmkge1xuICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbn1cblxuLnVuZGVybGluZSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG59XG4iLCIvLy0gQnV0dG9ucyBwYXJ0aWFsXG4uYnRue2N1cnNvcjogcG9pbnRlcjsgYm9yZGVyLXJhZGl1czogNnB4OyBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCAjRkZDMDczIDAlLCAjRkI4MTQzIDEwMCUpOyBwYWRkaW5nOiA3cHggMDsgd2lkdGg6IDc3JTsgZGlzcGxheTogaW5saW5lLWJsb2NrOyBjb2xvcjogJHdoaXRlOyBmb250LXNpemU6IDI2cHg7IGxpbmUtaGVpZ2h0OiAzMnB4OyBtYXJnaW46IDAgYXV0bzsgYm9yZGVyOiBub25lO1xuICAgICY6bm90KFtocmVmXSksICAmOm5vdChbaHJlZl0pOmhvdmVye2NvbG9yOiAkd2hpdGU7fSAgXG4gICAgJjpob3Zlcntjb2xvcjogJHdoaXRlOyB0ZXh0LWRlY29yYXRpb246IG5vbmU7IGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICNmOWI5NTksICNmOWI5NTkpO31cblxuICAgICYuZGlzYWJsZWQsICZbZGlzYWJsZWRdIHtcbiAgICAgICAgY29sb3I6ICM3MDcwNzA7IGJhY2tncm91bmQ6ICNmMWYxZjE7IFxuICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICB9XG5cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWF4LXdpZHRoOiAxMDI0cHgpIHtcbiAgICAgIFxuICAgIH1cblxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjcuOThweCkgeyBcbiAgICAgICBcbiAgICB9XG4gICAgXG4gICAudjAxLTAzICYsXG4gICAudjAyICYgeyAgICAgICAgXG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgIHdpZHRoOiBhdXRvOyAgcGFkZGluZzogN3B4IDIwcHg7IG1hcmdpbjogMCBhdXRvOyBsaW5lLWhlaWdodDogMS4yNTsgYm9yZGVyLXJhZGl1czogMjBweDtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgI2ZmYjkwMCwgI2ViYTcyNyk7ICBib3JkZXI6IG5vbmU7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7IGZvbnQtc2l6ZTogMTRweDsgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAmOm5vdChbaHJlZl0pLCAgJjpub3QoW2hyZWZdKTpob3Zlcntjb2xvcjogJHdoaXRlO30gIFxuICAgICAgICAmOmhvdmVye2NvbG9yOiAkd2hpdGU7IHRleHQtZGVjb3JhdGlvbjogbm9uZTsgYmFja2dyb3VuZDogI0ZGQTQ2MDt9XG5cbiAgICAgICAgJi5kaXNhYmxlZCwgJltkaXNhYmxlZF0ge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogI2JmYzJjYTsgY29sb3I6ICNmZmY7IFxuICAgICAgICAgICAgYm94LXNoYWRvdzogLTFweCAtMXB4IDBweCB3aGl0ZSwgMHB4IDBweCAwcHggd2hpdGUsIDFweCAxcHggMHB4IHdoaXRlLCAxcHggLTFweCAwcHggd2hpdGUsIC0xcHggMXB4IDBweCB3aGl0ZTtcbiAgICAgICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgYm9keS52MDIgJiB7XG4gICAgICAgIGZvbnQtc2l6ZTogMjJweDsgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgfVxufVxuXG4uYnRuLXdyYXB7XG4gICAgJjpiZWZvcmV7IHBvc2l0aW9uOiBzdGF0aWM7ICBvcGFjaXR5OiAwOyBjb250ZW50OiBcIkJVWSBOT1dcIjsgQGV4dGVuZCAuYnRuO31cbiAgICAmLnNob3d7XG4gICAgICAgICY6YmVmb3Jle3Bvc2l0aW9uOiBhYnNvbHV0ZTsgei1pbmRleDogLTE7fVxuICAgIH0gIFxufVxuIiwiJGNvbGxhcHNpYmxlLWljb246IChcclxuICAgIGZvbnQtc2l6ZTogKFxyXG4gICAgICAgIG1vYmlsZTogMTBweCwgLy8tIG1hcC1kZWVwLWdldCgkY29sbGFwc2libGUtaWNvbiwgaWNvbi1mb250LXNpemUsIG1vYmlsZSlcclxuICAgICAgICBkZXNrdG9wOiAyNnB4IC8vLSBtYXAtZGVlcC1nZXQoJGNvbGxhcHNpYmxlLWljb24sIGljb24tZm9udC1zaXplLCBkZXNrdG9wKVxyXG4gICAgKVxyXG4pO1xyXG5cclxuJGljb25zLW1haW5Db2xvcjogJG1haW5Db2xvcjtcclxuXHJcbi8vLSBQYXJ0aWFsIGZvciBTVkcgc3ByaXRlIGljb25zXHJcbi5pY29uIHtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47IGRpc3BsYXk6IGlubGluZS1ibG9jazsgd2lkdGg6IDFlbTsgaGVpZ2h0OiAxZW07IG1hcmdpbjogMDtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgZm9udC1zaXplOiAxZW07IC8qIGRlZmF1bHQtc2l6ZSAqL1xyXG4gICAgZmlsbDogJGljb25zLW1haW5Db2xvcjsgLyogZGVmYXVsdCBjb2xvciAqLyBcclxuICAgIGNvbG9yOiAkaWNvbnMtbWFpbkNvbG9yOyAvKiBkZWZhdWx0IGNvbG9yIHdoZW4gY3VycmVudENvbG9yIGlzIHVzZWQgKi9cclxuICAgIGJveC1zaXppbmc6IGNvbnRlbnQtYm94OyBwb2ludGVyLWV2ZW50czogbm9uZTtcclxuICAgIFxyXG4gICAgJi0tY29sbGFwc2Uge1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsgdG9wOiA2MCU7IHJpZ2h0OiAwOyBmbGV4OiAwIDAgYXV0bzsgbWFyZ2luLWxlZnQ6IDVweDtcclxuICAgICAgICBjb2xvcjogJGljb25zLW1haW5Db2xvcjsgc3Ryb2tlOiBjdXJyZW50Q29sb3I7IHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTsgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDIwMG1zIGVhc2UtaW4tb3V0O1xyXG5cclxuICAgICAgICBbYXJpYS1leHBhbmRlZD10cnVlXSAmIHtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpIHJvdGF0ZSgtMTgwZGVnKTtcclxuICAgICAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDIwMG1zIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmLS1wbHVzIHtcclxuICAgICAgICBzdHJva2U6IGN1cnJlbnRDb2xvcjtcclxuXHJcbiAgICAgICAgLnZlcnRpY2FsIHtcclxuICAgICAgICAgICAgW2FyaWEtZXhwYW5kZWQ9dHJ1ZV0gJiB7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbiIsIi8vLSBMYXlvdXQgZGVjbGFyYXRpb25zIFxuLmNvbnRhaW5lcntwYWRkaW5nOiAwOyB3aWR0aDogODAlOyBtYXJnaW46IDAgYXV0bzsgbWF4LXdpZHRoOiAzNDBweDtcbiAgICAgLnYwMS0wMyAmLFxuICAgICAudjAyICYgeyAgICAgICAgXG4gICAgICAgIG1heC13aWR0aDogNDMwcHg7IHdpZHRoOiAxMDAlOyBwYWRkaW5nOiAwIDE1cHg7ICAgICAgICBcbiAgICB9XG59XG5zZWN0aW9uIHtcbiAgIC52MDEtMDMgJixcbiAgIC52MDIgJiB7XG4gICAgICAgIG1hcmdpbjogMzBweCAwOyB6LWluZGV4OiAwO1xuICAgIH1cbn1cbiIsIi8vLSBSYXRpbmdcbi5mYS1yYXRpbmcgeyBwb3NpdGlvbjogcmVsYXRpdmU7IHdoaXRlLXNwYWNlOiBub3dyYXA7IHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7Zm9udC1mYW1pbHk6J0ZvbnRBd2Vzb21lJztcbiAgICAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMDA1XFxmMDA1XFxmMDA1XFxmMDA1XFxmMDA1XCI7IGZvbnQtd2VpZ2h0OiA0MDA7IHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTsgfVxuICAgICY6YWZ0ZXIgeyAgcG9zaXRpb246IGFic29sdXRlOyB0b3A6IDUwJTsgbGVmdDogMDsgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCUsLTUwJSk7IH1cbn1cbi5yYXRpbmcge3RleHQtYWxpZ246IGxlZnQ7IGRpc3BsYXk6IGJsb2NrOyBsaW5lLWhlaWdodDogMWVtOyBjb2xvcjojZWNhYzAwOyBmb250LXNpemU6IDE2cHg7IH1cbi5yYXRpbmcgLmZhLXJhdGluZy5zLTU6YmVmb3JlIHtjb250ZW50OlwiXFxmMDA1XFxmMDA1XFxmMDA1XFxmMDA1XFxmMDA1XCI7fVxuLnJhdGluZyAuZmEtcmF0aW5nLnMtNC01OmJlZm9yZSB7Y29udGVudDpcIlxcZjAwNVxcZjAwNVxcZjAwNVxcZjAwNVxcZjEyM1wiO31cbi5yYXRpbmcgLmZhLXJhdGluZy5zLTQ6YmVmb3JlIHtjb250ZW50OlwiXFxmMDA1XFxmMDA1XFxmMDA1XFxmMDA1XFxmMDA2XCI7fVxuLnJhdGluZyAuZmEtcmF0aW5nLnMtMy01OmJlZm9yZSB7Y29udGVudDpcIlxcZjAwNVxcZjAwNVxcZjAwNVxcZjEyM1xcZjAwNlwiO31cbi5yYXRpbmcgLmZhLXJhdGluZy5zLTM6YmVmb3JlIHtjb250ZW50OlwiXFxmMDA1XFxmMDA1XFxmMDA1XFxmMDA2XFxmMDA2XCI7fVxuLnJhdGluZyAuZmEtcmF0aW5nLnMtMi01OmJlZm9yZSB7Y29udGVudDpcIlxcZjAwNVxcZjAwNVxcZjEyM1xcZjAwNlxcZjAwNlwiO31cbi5yYXRpbmcgLmZhLXJhdGluZy5zLTI6YmVmb3JlIHtjb250ZW50OlwiXFxmMDA1XFxmMDA1XFxmMDA2XFxmMDA2XFxmMDA2XCI7fVxuLnJhdGluZyAuZmEtcmF0aW5nLnMtMS01OmJlZm9yZSB7Y29udGVudDpcIlxcZjAwNVxcZjEyM1xcZjAwNlxcZjAwNlxcZjAwNlwiO31cbi5yYXRpbmcgLmZhLXJhdGluZy5zLTE6YmVmb3JlIHtjb250ZW50OlwiXFxmMDA1XFxmMDA2XFxmMDA2XFxmMDA2XFxmMDA2XCI7fVxuLnJhdGluZyAuZmEtcmF0aW5nLnMtMC01OmJlZm9yZSB7Y29udGVudDpcIlxcZjEyM1xcZjAwNlxcZjAwNlxcZjAwNlxcZjAwNlwiO31cbi5yYXRpbmcgLmZhLXJhdGluZy5zLTA6YmVmb3JlIHtjb250ZW50OlwiXFwzMDAwXFwzMDAwXFwzMDAwXFwzMDAwXFwzMDAwXCI7fVxuLnJhdGluZyAuZmEtcmF0aW5nLmJsdWUge2NvbG9yOiMyZDgxZWE7fVxuLnJhdGluZyAuZmEtcmF0aW5nLmJsdWVbZGF0YS1yYXRpbmdde2N1cnNvcjogcG9pbnRlcjt9XG4iLCJoZWFkZXJ7cGFkZGluZzogMTJweCAwIDE3cHggMzhweDtcbiAgICAubG9nb3t3aWR0aDogMTU1cHg7IH1cbiAgICB9IiwiQHVzZSBcInNhc3M6bGlzdFwiO1xuQHVzZSBcInNhc3M6bWF0aFwiO1xuQGltcG9ydCAndmFyaWFibGVzJztcblxuLmNhcnR7IHRleHQtYWxpZ246IGNlbnRlcjsgcGFkZGluZzogMCAwIDIxcHg7XG4gICAgaDJ7IGZvbnQtc2l6ZTogMjNweDsgbGluZS1oZWlnaHQ6IDI4cHg7IGNvbG9yOiBtYXAtZGVlcC1nZXQoJGNhcnQsIGhlYWRlciwgY29sb3IpOyBiYWNrZ3JvdW5kLWNvbG9yOiBtYXAtZGVlcC1nZXQoJGNhcnQsIGhlYWRlciwgYmcpOyBwYWRkaW5nOiAxNXB4IDA7XG4gICAgXG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuY29udGFpbmVyLWxnIHtcbiAgICAgICAgbWF4LXdpZHRoOiBtYXAtZ2V0KCRjb250YWluZXItbWF4LXdpZHRocywgc20pO1xuICAgIH1cblxuICAgICZfX21vZGUge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7IGRpc3BsYXk6IGZsZXg7IGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsgYWxpZ24taXRlbXM6IGNlbnRlcjsgcGFkZGluZzogMCBtYXAtZ2V0KCRtb2RlLWN0YSwgb3V0ZXItc3BhY2UpICN7bWFwLWdldCgkbW9kZS1jdGEsIG91dGVyLXNwYWNlKSAqIDh9O1xuICAgICAgICBmb250LXNpemU6IG1hcC1kZWVwLWdldCgkbW9kZS1jdGEsIGZvbnQsIHNpemUpOyBsaW5lLWhlaWdodDogbWFwLWRlZXAtZ2V0KCRtb2RlLWN0YSwgZm9udCwgaGVpZ2h0KTsgYmFja2dyb3VuZC1jb2xvcjogbWFwLWRlZXAtZ2V0KCRjYXJ0LCBoZWFkZXIsIGJnKTtcblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7IHRvcDogMDsgbGVmdDogNTAlOyB3aWR0aDogMTAwdnc7IGhlaWdodDogMTAwJTsgei1pbmRleDogLTE7IHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IG1hcC1kZWVwLWdldCgkY2FydCwgaGVhZGVyLCBiZyk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLy8tIHN1c2JyaWJlLW1vZGUgQ1RBc1xuICAgICZfX21vZGUtY3RhIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiBtYXAtZ2V0KCRtb2RlLWN0YSwgb3V0ZXItc3BhY2UpOyBtYXJnaW4tbGVmdDogbWFwLWdldCgkbW9kZS1jdGEsIG91dGVyLXNwYWNlKTsgcGFkZGluZzogbWFwLWdldCgkY2FydCwgaW5uZXItc3BhY2UpICN7bWF0aC5kaXYobWFwLWdldCgkY2FydCwgaW5uZXItc3BhY2UpLCAyKX07IFxuICAgICAgICBsZXR0ZXItc3BhY2luZzogbWFwLWRlZXAtZ2V0KCRtb2RlLWN0YSwgZm9udCwgc3BhY2luZyk7IGNvbG9yOiBtYXAtZ2V0KCRtb2RlLWN0YSwgZGVmYXVsdC1jb2xvcik7IGJhY2tncm91bmQtY29sb3I6IG1hcC1nZXQoJG1vZGUtY3RhLCBkZWZhdWx0LWJnKTtcblxuICAgICAgICBAaW5jbHVkZSBtZWRpYSgnaG92ZXInLCAnZmluZScpIHtcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgfVxuXG4gICAgICAgICYuc3Vic2NyaWJlIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICdCZXN0IFZhbHVlJzsgXG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlOyByaWdodDogMDsgYm90dG9tOiAtMjJweDsgbGVmdDogMDsgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNXB4OyBmb250LXdlaWdodDogYm9sZGVyOyBjb2xvcjogIzEwZTY0ODsgXG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmOm5vdCguYWN0aXZlKSB7XG4gICAgICAgICAgICBmbGV4OiAwIDEgMzglOyBtYXJnaW4tdG9wOiBtYXAtZ2V0KCRtb2RlLWN0YSwgb3V0ZXItc3BhY2UpOyBtYXJnaW4tYm90dG9tOiBtYXAtZ2V0KCRtb2RlLWN0YSwgb3V0ZXItc3BhY2UpO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5hY3RpdmUge1xuICAgICAgICAgICAgZmxleDogMSAwIDYyJTtcbiAgICAgICAgICAgIGNvbG9yOiBtYXAtZ2V0KCRtb2RlLWN0YSwgYWN0aXZlLWNvbG9yKTsgYmFja2dyb3VuZC1jb2xvcjogbWFwLWdldCgkbW9kZS1jdGEsIGFjdGl2ZS1iZyk7IGJvcmRlcjogbWFwLWdldCgkbW9kZS1jdGEsIGJvcmRlcikgbWFwLWdldCgkbW9kZS1jdGEsIGFjdGl2ZS1ib3JkZXIpOyBib3JkZXItcmFkaXVzOiBtYXAtZ2V0KCRtb2RlLWN0YSwgcmFkaXVzKTtcbiAgICAgICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnN1bW1hcnl7IHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgLnByaWNle2ZvbnQtc2l6ZTogNjBweDsgbGluZS1oZWlnaHQ6IDczcHg7IGZvbnQtd2VpZ2h0OiA2MDA7ICAgY29sb3I6ICMyOTM5N2I7IG1hcmdpbi1ib3R0b206IDVweDt9XG4gICAgICAgIC5yZXRhaWxQcmljZXsgZm9udC1zaXplOiAxNHB4OyBsaW5lLWhlaWdodDogMTdweDsgZm9udC13ZWlnaHQ6IDMwMDsgdGV4dC1kZWNvcmF0aW9uLWxpbmU6IGxpbmUtdGhyb3VnaDsgY29sb3I6IHJlZDsgbWFyZ2luLWJvdHRvbTogMTFweDt9XG4gICAgICAgIC5zaGlwcGluZ3tmb250LXNpemU6IDEycHg7bGluZS1oZWlnaHQ6IDE1cHg7ICBjb2xvcjogJGJyYW5kLWJsdWU7IG1hcmdpbi1ib3R0b206IDExcHg7XG4gICAgICAgICAgICBzcGFue21hcmdpbi1yaWdodDogMnB4O31cbiAgICAgICAgfVxuICAgIH1cbiAgICAucHJvZHVjdHN7XG4gICAgICAgIC5wcm9kdWN0eyBmb250LXNpemU6IDIwcHg7IGxpbmUtaGVpZ2h0OiAyNHB4OyB0ZXh0LWFsaWduOiBjZW50ZXI7IHBhZGRpbmc6IDhweCAwOyBtYXJnaW4tYm90dG9tOiAxMnB4OyBib3JkZXItcmFkaXVzOiA2cHg7IGJvcmRlcjogc29saWQgMXB4ICM3MDcwNzA7IGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7IGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgICYuYWN0aXZlLCY6aG92ZXJ7ICBiYWNrZ3JvdW5kLWNvbG9yOiAjNDk5MGUyOyBib3JkZXItY29sb3I6ICM0OTkwZTI7IGNvbG9yOiAjZmZmO31cbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX3N1YnNjcmliZSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IG1hdGguZGl2KG1hcC1nZXQoJGNhcnQsIG91dGVyLXNwYWNlKSwgMik7XG4gICAgfVxuXG4gICAgJl9fbGFiZWwge1xuICAgICAgICBkaXNwbGF5OiBmbGV4OyBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgbWFyZ2luLWJvdHRvbTogMTZweDtcbiAgICAgICAgZm9udC1zaXplOiAwOyBmb250LXdlaWdodDogNTAwOyBsaW5lLWhlaWdodDogbWFwLWdldCgkY2hlY2tib3gsIHNpemUpOyBsZXR0ZXItc3BhY2luZzogLjVweDtcblxuICAgICAgICBAaW5jbHVkZSBtZWRpYSgnaG92ZXInLCAnZmluZScpIHtcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgfVxuXG4gICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4OyBcblxuICAgICAgICAgICAgJjpub3QoLmNhcnRfX2NoZWNrYm94KSB7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDsgY29sb3I6IG1hcC1nZXQoJGNoZWNrYm94LCBjb2xvcik7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19jaGVja2JveCB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgd2lkdGg6IG1hcC1nZXQoJGNoZWNrYm94LCBzaXplKTsgaGVpZ2h0OiBtYXAtZ2V0KCRjaGVja2JveCwgc2l6ZSk7IG1hcmdpbi1yaWdodDogbWFwLWdldCgkY2FydCwgb3V0ZXItc3BhY2UpICogMS41O1xuICAgICAgICBsaW5lLWhlaWdodDogbWFwLWdldCgkY2hlY2tib3gsIHNpemUpOyBib3JkZXI6IG1hcC1nZXQoJGNoZWNrYm94LCBib3JkZXIpIG1hcC1nZXQoJGNoZWNrYm94LCBib3JkZXItY29sb3IpOyB2ZXJ0aWNhbC1hbGlnbjogdG9wOyBib3JkZXItcmFkaXVzOiBtYXAtZ2V0KCRjaGVja2JveCwgcmFkaXVzKTtcblxuICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5jaGVja2VkIHtcbiAgICAgICAgICAgIC5pY29uIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICBjb2xvcjogbWFwLWdldCgkY2hlY2tib3gsIHRpY2stY29sb3IpOyBzdHJva2U6IGN1cnJlbnRDb2xvcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2Rpc2NsYWltZXIge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICBmb250LXNpemU6IDEwcHg7IGZvbnQtd2VpZ2h0OiA0MDA7IGxpbmUtaGVpZ2h0OiAxLjQ7IGxldHRlci1zcGFjaW5nOiBub3JtYWw7XG5cbiAgICAgICAgYSB7XG4gICAgICAgICAgICBjb2xvcjogaW5pdGlhbDtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIkBjaGFyc2V0IFwiVVRGLThcIjtcclxuXHJcbi8vICAgICBfICAgICAgICAgICAgXyAgICAgICAgICAgXyAgICAgICAgICAgICAgICAgICAgICAgICAgIF8gX1xyXG4vLyAgICAoXykgICAgICAgICAgfCB8ICAgICAgICAgfCB8ICAgICAgICAgICAgICAgICAgICAgICAgIHwgKF8pXHJcbi8vICAgICBfIF8gX18gICBfX198IHxfICAgXyAgX198IHwgX19fICAgXyBfXyBfX18gICBfX18gIF9ffCB8XyAgX18gX1xyXG4vLyAgICB8IHwgJ18gXFwgLyBfX3wgfCB8IHwgfC8gX2AgfC8gXyBcXCB8ICdfIGAgXyBcXCAvIF8gXFwvIF9gIHwgfC8gX2AgfFxyXG4vLyAgICB8IHwgfCB8IHwgKF9ffCB8IHxffCB8IChffCB8ICBfXy8gfCB8IHwgfCB8IHwgIF9fLyAoX3wgfCB8IChffCB8XHJcbi8vICAgIHxffF98IHxffFxcX19ffF98XFxfXyxffFxcX18sX3xcXF9fX3wgfF98IHxffCB8X3xcXF9fX3xcXF9fLF98X3xcXF9fLF98XHJcbi8vXHJcbi8vICAgICAgU2ltcGxlLCBlbGVnYW50IGFuZCBtYWludGFpbmFibGUgbWVkaWEgcXVlcmllcyBpbiBTYXNzXHJcbi8vICAgICAgICAgICAgICAgICAgICAgICAgdjEuNC45XHJcbi8vXHJcbi8vICAgICAgICBodHRwczovL2VkdWFyZG9ib3VjYXMuZ2l0aHViLmlvL2luY2x1ZGUtbWVkaWFcclxuLy9cclxuLy8gICAgICAgICBBdXRob3JzOiBFZHVhcmRvIEJvdWNhcyAoQGVkdWFyZG9ib3VjYXMpXHJcbi8vICAgICAgICAgICAgICAgICAgSHVnbyBHaXJhdWRlbCAoQGh1Z29naXJhdWRlbClcclxuLy9cclxuLy8gICAgICBUaGlzIHByb2plY3QgaXMgbGljZW5zZWQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBNSVQgbGljZW5zZVxyXG4vLy8vXHJcbi8vLyBpbmNsdWRlLW1lZGlhIGxpYnJhcnkgcHVibGljIGNvbmZpZ3VyYXRpb25cclxuLy8vIEBhdXRob3IgRWR1YXJkbyBCb3VjYXNcclxuLy8vIEBhY2Nlc3MgcHVibGljXHJcbi8vLy9cclxuXHJcblxyXG4vLy9cclxuLy8vIENyZWF0ZXMgYSBsaXN0IG9mIGdsb2JhbCBicmVha3BvaW50c1xyXG4vLy9cclxuLy8vIEBleGFtcGxlIHNjc3MgLSBDcmVhdGVzIGEgc2luZ2xlIGJyZWFrcG9pbnQgd2l0aCB0aGUgbGFiZWwgYG1vYmlsZWBcclxuLy8vICAkYnJlYWtwb2ludHM6ICgnbW9iaWxlJzogMzIwcHgpO1xyXG4vLy9cclxuJGJyZWFrcG9pbnRzOiAoXHJcbiAgJ21vYmlsZSc6IDM3NXB4LFxyXG4gICdtb2JpbGUtbWlkJzogNTIwcHgsXHJcbiAgJ21vYmlsZS1tYXgnOiA1NzVweCxcclxuICAndGFibGV0JzogNzY4cHgsXHJcbiAgJ3RhYmxldC1taWQnOiA5OTJweCxcclxuICAnZGVza3RvcCc6IDEwMjVweCxcclxuICAnZGVza3RvcC1taWQnOiAxMjAwcHgsXHJcbiAgJ2Rlc2t0b3AtbWF4JzogMTkyMHB4XHJcbikgIWRlZmF1bHQ7XHJcblxyXG4vLy0gbW9iaWxlIG9ubHlcclxuLy8vLy0gKCc8dGFibGV0JykgLSBtYXgtd2lkdGg6IDc2N3B4XHJcbi8vLSB0YWJsZXQgb25seVxyXG4vLy8vLSAoJz49dGFibGV0JywgJzxkZXNrdG9wJykgLSBtaW4td2lkdGg6IDc2OHB4OyBtYXgtd2lkdGg6IDEwMjRweFxyXG4vLy0gZGVza3RvcCBvbmx5XHJcbi8vLy8tICgnPj1kZXNrdG9wJykgLSBtaW4td2lkdGg6IDEwMjVweFxyXG5cclxuLy8vXHJcbi8vLyBDcmVhdGVzIGEgbGlzdCBvZiBzdGF0aWMgZXhwcmVzc2lvbnMgb3IgbWVkaWEgdHlwZXNcclxuLy8vXHJcbi8vLyBAZXhhbXBsZSBzY3NzIC0gQ3JlYXRlcyBhIHNpbmdsZSBtZWRpYSB0eXBlIChzY3JlZW4pXHJcbi8vLyAgJG1lZGlhLWV4cHJlc3Npb25zOiAoJ3NjcmVlbic6ICdzY3JlZW4nKTtcclxuLy8vXHJcbi8vLyBAZXhhbXBsZSBzY3NzIC0gQ3JlYXRlcyBhIHN0YXRpYyBleHByZXNzaW9uIHdpdGggbG9naWNhbCBkaXNqdW5jdGlvbiAoT1Igb3BlcmF0b3IpXHJcbi8vLyAgJG1lZGlhLWV4cHJlc3Npb25zOiAoXHJcbi8vLyAgICAncmV0aW5hMngnOiAnKC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbzogMiksIChtaW4tcmVzb2x1dGlvbjogMTkyZHBpKSdcclxuLy8vICApO1xyXG4vLy9cclxuJG1lZGlhLWV4cHJlc3Npb25zOiAoXHJcbiAgJ3NjcmVlbic6ICdzY3JlZW4nLFxyXG4gICdwcmludCc6ICdwcmludCcsXHJcbiAgJ2hhbmRoZWxkJzogJ2hhbmRoZWxkJyxcclxuICAnbGFuZHNjYXBlJzogJyhvcmllbnRhdGlvbjogbGFuZHNjYXBlKScsXHJcbiAgJ3BvcnRyYWl0JzogJyhvcmllbnRhdGlvbjogcG9ydHJhaXQpJyxcclxuICAnaG92ZXInOiAnKGhvdmVyOiBob3ZlciknLFxyXG4gICdmaW5lJzogJyhwb2ludGVyOiBmaW5lKScsXHJcbiAgJ3JldGluYTJ4JzogJygtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDIpLCAobWluLXJlc29sdXRpb246IDE5MmRwaSksIChtaW4tcmVzb2x1dGlvbjogMmRwcHgpJyxcclxuICAncmV0aW5hM3gnOiAnKC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbzogMyksIChtaW4tcmVzb2x1dGlvbjogMzUwZHBpKSwgKG1pbi1yZXNvbHV0aW9uOiAzZHBweCknXHJcbikgIWRlZmF1bHQ7XHJcblxyXG5cclxuLy8vXHJcbi8vLyBEZWZpbmVzIGEgbnVtYmVyIHRvIGJlIGFkZGVkIG9yIHN1YnRyYWN0ZWQgZnJvbSBlYWNoIHVuaXQgd2hlbiBkZWNsYXJpbmcgYnJlYWtwb2ludHMgd2l0aCBleGNsdXNpdmUgaW50ZXJ2YWxzXHJcbi8vL1xyXG4vLy8gQGV4YW1wbGUgc2NzcyAtIEludGVydmFsIGZvciBwaXhlbHMgaXMgZGVmaW5lZCBhcyBgMWAgYnkgZGVmYXVsdFxyXG4vLy8gIEBpbmNsdWRlIG1lZGlhKCc+MTI4cHgnKSB7fVxyXG4vLy9cclxuLy8vICAvKiBHZW5lcmF0ZXM6ICovXHJcbi8vLyAgQG1lZGlhIChtaW4td2lkdGg6IDEyOXB4KSB7fVxyXG4vLy9cclxuLy8vIEBleGFtcGxlIHNjc3MgLSBJbnRlcnZhbCBmb3IgZW1zIGlzIGRlZmluZWQgYXMgYDAuMDFgIGJ5IGRlZmF1bHRcclxuLy8vICBAaW5jbHVkZSBtZWRpYSgnPjIwZW0nKSB7fVxyXG4vLy9cclxuLy8vICAvKiBHZW5lcmF0ZXM6ICovXHJcbi8vLyAgQG1lZGlhIChtaW4td2lkdGg6IDIwLjAxZW0pIHt9XHJcbi8vL1xyXG4vLy8gQGV4YW1wbGUgc2NzcyAtIEludGVydmFsIGZvciByZW1zIGlzIGRlZmluZWQgYXMgYDAuMWAgYnkgZGVmYXVsdCwgdG8gYmUgdXNlZCB3aXRoIGBmb250LXNpemU6IDYyLjUlO2BcclxuLy8vICBAaW5jbHVkZSBtZWRpYSgnPjIuMHJlbScpIHt9XHJcbi8vL1xyXG4vLy8gIC8qIEdlbmVyYXRlczogKi9cclxuLy8vICBAbWVkaWEgKG1pbi13aWR0aDogMi4xcmVtKSB7fVxyXG4vLy9cclxuJHVuaXQtaW50ZXJ2YWxzOiAoXHJcbiAgJ3B4JzogMSxcclxuICAnZW0nOiAwLjAxLFxyXG4gICdyZW0nOiAwLjEsXHJcbiAgJyc6IDBcclxuKSAhZGVmYXVsdDtcclxuXHJcbi8vL1xyXG4vLy8gRGVmaW5lcyB3aGV0aGVyIHN1cHBvcnQgZm9yIG1lZGlhIHF1ZXJpZXMgaXMgYXZhaWxhYmxlLCB1c2VmdWwgZm9yIGNyZWF0aW5nIHNlcGFyYXRlIHN0eWxlc2hlZXRzXHJcbi8vLyBmb3IgYnJvd3NlcnMgdGhhdCBkb24ndCBzdXBwb3J0IG1lZGlhIHF1ZXJpZXMuXHJcbi8vL1xyXG4vLy8gQGV4YW1wbGUgc2NzcyAtIERpc2FibGVzIHN1cHBvcnQgZm9yIG1lZGlhIHF1ZXJpZXNcclxuLy8vICAkaW0tbWVkaWEtc3VwcG9ydDogZmFsc2U7XHJcbi8vLyAgQGluY2x1ZGUgbWVkaWEoJz49dGFibGV0Jykge1xyXG4vLy8gICAgLmZvbyB7XHJcbi8vLyAgICAgIGNvbG9yOiB0b21hdG87XHJcbi8vLyAgICB9XHJcbi8vLyAgfVxyXG4vLy9cclxuLy8vICAvKiBHZW5lcmF0ZXM6ICovXHJcbi8vLyAgLmZvbyB7XHJcbi8vLyAgICBjb2xvcjogdG9tYXRvO1xyXG4vLy8gIH1cclxuLy8vXHJcbiRpbS1tZWRpYS1zdXBwb3J0OiB0cnVlICFkZWZhdWx0O1xyXG5cclxuLy8vXHJcbi8vLyBTZWxlY3RzIHdoaWNoIGJyZWFrcG9pbnQgdG8gZW11bGF0ZSB3aGVuIHN1cHBvcnQgZm9yIG1lZGlhIHF1ZXJpZXMgaXMgZGlzYWJsZWQuIE1lZGlhIHF1ZXJpZXMgdGhhdCBzdGFydCBhdCBvclxyXG4vLy8gaW50ZXJjZXB0IHRoZSBicmVha3BvaW50IHdpbGwgYmUgZGlzcGxheWVkLCBhbnkgb3RoZXJzIHdpbGwgYmUgaWdub3JlZC5cclxuLy8vXHJcbi8vLyBAZXhhbXBsZSBzY3NzIC0gVGhpcyBtZWRpYSBxdWVyeSB3aWxsIHNob3cgYmVjYXVzZSBpdCBpbnRlcmNlcHRzIHRoZSBzdGF0aWMgYnJlYWtwb2ludFxyXG4vLy8gICRpbS1tZWRpYS1zdXBwb3J0OiBmYWxzZTtcclxuLy8vICAkaW0tbm8tbWVkaWEtYnJlYWtwb2ludDogJ2Rlc2t0b3AnO1xyXG4vLy8gIEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcpIHtcclxuLy8vICAgIC5mb28ge1xyXG4vLy8gICAgICBjb2xvcjogdG9tYXRvO1xyXG4vLy8gICAgfVxyXG4vLy8gIH1cclxuLy8vXHJcbi8vLyAgLyogR2VuZXJhdGVzOiAqL1xyXG4vLy8gIC5mb28ge1xyXG4vLy8gICAgY29sb3I6IHRvbWF0bztcclxuLy8vICB9XHJcbi8vL1xyXG4vLy8gQGV4YW1wbGUgc2NzcyAtIFRoaXMgbWVkaWEgcXVlcnkgd2lsbCBOT1Qgc2hvdyBiZWNhdXNlIGl0IGRvZXMgbm90IGludGVyY2VwdCB0aGUgZGVza3RvcCBicmVha3BvaW50XHJcbi8vLyAgJGltLW1lZGlhLXN1cHBvcnQ6IGZhbHNlO1xyXG4vLy8gICRpbS1uby1tZWRpYS1icmVha3BvaW50OiAndGFibGV0JztcclxuLy8vICBAaW5jbHVkZSBtZWRpYSgnPj1kZXNrdG9wJykge1xyXG4vLy8gICAgLmZvbyB7XHJcbi8vLyAgICAgIGNvbG9yOiB0b21hdG87XHJcbi8vLyAgICB9XHJcbi8vLyAgfVxyXG4vLy9cclxuLy8vICAvKiBObyBvdXRwdXQgKi9cclxuLy8vXHJcbiRpbS1uby1tZWRpYS1icmVha3BvaW50OiAnZGVza3RvcCcgIWRlZmF1bHQ7XHJcblxyXG4vLy9cclxuLy8vIFNlbGVjdHMgd2hpY2ggbWVkaWEgZXhwcmVzc2lvbnMgYXJlIGFsbG93ZWQgaW4gYW4gZXhwcmVzc2lvbiBmb3IgaXQgdG8gYmUgdXNlZCB3aGVuIG1lZGlhIHF1ZXJpZXNcclxuLy8vIGFyZSBub3Qgc3VwcG9ydGVkLlxyXG4vLy9cclxuLy8vIEBleGFtcGxlIHNjc3MgLSBUaGlzIG1lZGlhIHF1ZXJ5IHdpbGwgc2hvdyBiZWNhdXNlIGl0IGludGVyY2VwdHMgdGhlIHN0YXRpYyBicmVha3BvaW50IGFuZCBjb250YWlucyBvbmx5IGFjY2VwdGVkIG1lZGlhIGV4cHJlc3Npb25zXHJcbi8vLyAgJGltLW1lZGlhLXN1cHBvcnQ6IGZhbHNlO1xyXG4vLy8gICRpbS1uby1tZWRpYS1icmVha3BvaW50OiAnZGVza3RvcCc7XHJcbi8vLyAgJGltLW5vLW1lZGlhLWV4cHJlc3Npb25zOiAoJ3NjcmVlbicpO1xyXG4vLy8gIEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcsICdzY3JlZW4nKSB7XHJcbi8vLyAgICAuZm9vIHtcclxuLy8vICAgICAgY29sb3I6IHRvbWF0bztcclxuLy8vICAgIH1cclxuLy8vICB9XHJcbi8vL1xyXG4vLy8gICAvKiBHZW5lcmF0ZXM6ICovXHJcbi8vLyAgIC5mb28ge1xyXG4vLy8gICAgIGNvbG9yOiB0b21hdG87XHJcbi8vLyAgIH1cclxuLy8vXHJcbi8vLyBAZXhhbXBsZSBzY3NzIC0gVGhpcyBtZWRpYSBxdWVyeSB3aWxsIE5PVCBzaG93IGJlY2F1c2UgaXQgaW50ZXJjZXB0cyB0aGUgc3RhdGljIGJyZWFrcG9pbnQgYnV0IGNvbnRhaW5zIGEgbWVkaWEgZXhwcmVzc2lvbiB0aGF0IGlzIG5vdCBhY2NlcHRlZFxyXG4vLy8gICRpbS1tZWRpYS1zdXBwb3J0OiBmYWxzZTtcclxuLy8vICAkaW0tbm8tbWVkaWEtYnJlYWtwb2ludDogJ2Rlc2t0b3AnO1xyXG4vLy8gICRpbS1uby1tZWRpYS1leHByZXNzaW9uczogKCdzY3JlZW4nKTtcclxuLy8vICBAaW5jbHVkZSBtZWRpYSgnPj10YWJsZXQnLCAncmV0aW5hMngnKSB7XHJcbi8vLyAgICAuZm9vIHtcclxuLy8vICAgICAgY29sb3I6IHRvbWF0bztcclxuLy8vICAgIH1cclxuLy8vICB9XHJcbi8vL1xyXG4vLy8gIC8qIE5vIG91dHB1dCAqL1xyXG4vLy9cclxuJGltLW5vLW1lZGlhLWV4cHJlc3Npb25zOiAoJ3NjcmVlbicsICdwb3J0cmFpdCcsICdsYW5kc2NhcGUnKSAhZGVmYXVsdDtcclxuXHJcbi8vLy9cclxuLy8vIENyb3NzLWVuZ2luZSBsb2dnaW5nIGVuZ2luZVxyXG4vLy8gQGF1dGhvciBIdWdvIEdpcmF1ZGVsXHJcbi8vLyBAYWNjZXNzIHByaXZhdGVcclxuLy8vL1xyXG5cclxuXHJcbi8vL1xyXG4vLy8gTG9nIGEgbWVzc2FnZSBlaXRoZXIgd2l0aCBgQGVycm9yYCBpZiBzdXBwb3J0ZWRcclxuLy8vIGVsc2Ugd2l0aCBgQHdhcm5gLCB1c2luZyBgZmVhdHVyZS1leGlzdHMoJ2F0LWVycm9yJylgXHJcbi8vLyB0byBkZXRlY3Qgc3VwcG9ydC5cclxuLy8vXHJcbi8vLyBAcGFyYW0ge1N0cmluZ30gJG1lc3NhZ2UgLSBNZXNzYWdlIHRvIGxvZ1xyXG4vLy9cclxuQGZ1bmN0aW9uIGltLWxvZygkbWVzc2FnZSkge1xyXG4gIEBpZiBmZWF0dXJlLWV4aXN0cygnYXQtZXJyb3InKSB7XHJcbiAgICBAZXJyb3IgJG1lc3NhZ2U7XHJcbiAgfSBAZWxzZSB7XHJcbiAgICBAd2FybiAkbWVzc2FnZTtcclxuICAgICRfOiBub29wKCk7XHJcbiAgfVxyXG5cclxuICBAcmV0dXJuICRtZXNzYWdlO1xyXG59XHJcblxyXG5cclxuLy8vXHJcbi8vLyBXcmFwcGVyIG1peGluIGZvciB0aGUgbG9nIGZ1bmN0aW9uIHNvIGl0IGNhbiBiZSB1c2VkIHdpdGggYSBtb3JlIGZyaWVuZGx5XHJcbi8vLyBBUEkgdGhhbiBgQGlmIGltLWxvZygnLi4nKSB7fWAgb3IgYCRfOiBpbS1sb2coJy4uJylgLiBCYXNpY2FsbHksIHVzZSB0aGUgZnVuY3Rpb25cclxuLy8vIHdpdGhpbiBmdW5jdGlvbnMgYmVjYXVzZSBpdCBpcyBub3QgcG9zc2libGUgdG8gaW5jbHVkZSBhIG1peGluIGluIGEgZnVuY3Rpb25cclxuLy8vIGFuZCB1c2UgdGhlIG1peGluIGV2ZXJ5d2hlcmUgZWxzZSBiZWNhdXNlIGl0J3MgbXVjaCBtb3JlIGVsZWdhbnQuXHJcbi8vL1xyXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRtZXNzYWdlIC0gTWVzc2FnZSB0byBsb2dcclxuLy8vXHJcbkBtaXhpbiBsb2coJG1lc3NhZ2UpIHtcclxuICBAaWYgaW0tbG9nKCRtZXNzYWdlKSB7fVxyXG59XHJcblxyXG5cclxuLy8vXHJcbi8vLyBGdW5jdGlvbiB3aXRoIG5vIGBAcmV0dXJuYCBjYWxsZWQgbmV4dCB0byBgQHdhcm5gIGluIFNhc3MgMy4zXHJcbi8vLyB0byB0cmlnZ2VyIGEgY29tcGlsaW5nIGVycm9yIGFuZCBzdG9wIHRoZSBwcm9jZXNzLlxyXG4vLy9cclxuQGZ1bmN0aW9uIG5vb3AoKSB7fVxyXG5cclxuLy8vXHJcbi8vLyBEZXRlcm1pbmVzIHdoZXRoZXIgYSBsaXN0IG9mIGNvbmRpdGlvbnMgaXMgaW50ZXJjZXB0ZWQgYnkgdGhlIHN0YXRpYyBicmVha3BvaW50LlxyXG4vLy9cclxuLy8vIEBwYXJhbSB7QXJnbGlzdH0gICAkY29uZGl0aW9ucyAgLSBNZWRpYSBxdWVyeSBjb25kaXRpb25zXHJcbi8vL1xyXG4vLy8gQHJldHVybiB7Qm9vbGVhbn0gLSBSZXR1cm5zIHRydWUgaWYgdGhlIGNvbmRpdGlvbnMgYXJlIGludGVyY2VwdGVkIGJ5IHRoZSBzdGF0aWMgYnJlYWtwb2ludFxyXG4vLy9cclxuQGZ1bmN0aW9uIGltLWludGVyY2VwdHMtc3RhdGljLWJyZWFrcG9pbnQoJGNvbmRpdGlvbnMuLi4pIHtcclxuICAkbm8tbWVkaWEtYnJlYWtwb2ludC12YWx1ZTogbWFwLWdldCgkYnJlYWtwb2ludHMsICRpbS1uby1tZWRpYS1icmVha3BvaW50KTtcclxuXHJcbiAgQGlmIG5vdCAkbm8tbWVkaWEtYnJlYWtwb2ludC12YWx1ZSB7XHJcbiAgICBAaWYgaW0tbG9nKCdgI3skaW0tbm8tbWVkaWEtYnJlYWtwb2ludH1gIGlzIG5vdCBhIHZhbGlkIGJyZWFrcG9pbnQuJykge31cclxuICB9XHJcblxyXG4gIEBlYWNoICRjb25kaXRpb24gaW4gJGNvbmRpdGlvbnMge1xyXG4gICAgQGlmIG5vdCBtYXAtaGFzLWtleSgkbWVkaWEtZXhwcmVzc2lvbnMsICRjb25kaXRpb24pIHtcclxuICAgICAgJG9wZXJhdG9yOiBnZXQtZXhwcmVzc2lvbi1vcGVyYXRvcigkY29uZGl0aW9uKTtcclxuICAgICAgJHByZWZpeDogZ2V0LWV4cHJlc3Npb24tcHJlZml4KCRvcGVyYXRvcik7XHJcbiAgICAgICR2YWx1ZTogZ2V0LWV4cHJlc3Npb24tdmFsdWUoJGNvbmRpdGlvbiwgJG9wZXJhdG9yKTtcclxuXHJcbiAgICAgIEBpZiAoJHByZWZpeCA9PSAnbWF4JyBhbmQgJHZhbHVlIDw9ICRuby1tZWRpYS1icmVha3BvaW50LXZhbHVlKSBvclxyXG4gICAgICAgICAgKCRwcmVmaXggPT0gJ21pbicgYW5kICR2YWx1ZSA+ICRuby1tZWRpYS1icmVha3BvaW50LXZhbHVlKSB7XHJcbiAgICAgICAgQHJldHVybiBmYWxzZTtcclxuICAgICAgfVxyXG4gICAgfSBAZWxzZSBpZiBub3QgaW5kZXgoJGltLW5vLW1lZGlhLWV4cHJlc3Npb25zLCAkY29uZGl0aW9uKSB7XHJcbiAgICAgIEByZXR1cm4gZmFsc2U7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBAcmV0dXJuIHRydWU7XHJcbn1cclxuXHJcbi8vLy9cclxuLy8vIFBhcnNpbmcgZW5naW5lXHJcbi8vLyBAYXV0aG9yIEh1Z28gR2lyYXVkZWxcclxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxyXG4vLy8vXHJcblxyXG5cclxuLy8vXHJcbi8vLyBHZXQgb3BlcmF0b3Igb2YgYW4gZXhwcmVzc2lvblxyXG4vLy9cclxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkZXhwcmVzc2lvbiAtIEV4cHJlc3Npb24gdG8gZXh0cmFjdCBvcGVyYXRvciBmcm9tXHJcbi8vL1xyXG4vLy8gQHJldHVybiB7U3RyaW5nfSAtIEFueSBvZiBgPj1gLCBgPmAsIGA8PWAsIGA8YCwgYOKJpWAsIGDiiaRgXHJcbi8vL1xyXG5AZnVuY3Rpb24gZ2V0LWV4cHJlc3Npb24tb3BlcmF0b3IoJGV4cHJlc3Npb24pIHtcclxuICBAZWFjaCAkb3BlcmF0b3IgaW4gKCc+PScsICc+JywgJzw9JywgJzwnLCAn4omlJywgJ+KJpCcpIHtcclxuICAgIEBpZiBzdHItaW5kZXgoJGV4cHJlc3Npb24sICRvcGVyYXRvcikge1xyXG4gICAgICBAcmV0dXJuICRvcGVyYXRvcjtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8vIEl0IGlzIG5vdCBwb3NzaWJsZSB0byBpbmNsdWRlIGEgbWl4aW4gaW5zaWRlIGEgZnVuY3Rpb24sIHNvIHdlIGhhdmUgdG9cclxuICAvLyByZWx5IG9uIHRoZSBgaW0tbG9nKC4uKWAgZnVuY3Rpb24gcmF0aGVyIHRoYW4gdGhlIGBsb2coLi4pYCBtaXhpbi4gQmVjYXVzZVxyXG4gIC8vIGZ1bmN0aW9ucyBjYW5ub3QgYmUgY2FsbGVkIGFueXdoZXJlIGluIFNhc3MsIHdlIG5lZWQgdG8gaGFjayB0aGUgY2FsbCBpblxyXG4gIC8vIGEgZHVtbXkgdmFyaWFibGUsIHN1Y2ggYXMgYCRfYC4gSWYgYW55Ym9keSBldmVyIHJhaXNlIGEgc2NvcGluZyBpc3N1ZSB3aXRoXHJcbiAgLy8gU2FzcyAzLjMsIGNoYW5nZSB0aGlzIGxpbmUgaW4gYEBpZiBpbS1sb2coLi4pIHt9YCBpbnN0ZWFkLlxyXG4gICRfOiBpbS1sb2coJ05vIG9wZXJhdG9yIGZvdW5kIGluIGAjeyRleHByZXNzaW9ufWAuJyk7XHJcbn1cclxuXHJcblxyXG4vLy9cclxuLy8vIEdldCBkaW1lbnNpb24gb2YgYW4gZXhwcmVzc2lvbiwgYmFzZWQgb24gYSBmb3VuZCBvcGVyYXRvclxyXG4vLy9cclxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkZXhwcmVzc2lvbiAtIEV4cHJlc3Npb24gdG8gZXh0cmFjdCBkaW1lbnNpb24gZnJvbVxyXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRvcGVyYXRvciAtIE9wZXJhdG9yIGZyb20gYCRleHByZXNzaW9uYFxyXG4vLy9cclxuLy8vIEByZXR1cm4ge1N0cmluZ30gLSBgd2lkdGhgIG9yIGBoZWlnaHRgIChvciBwb3RlbnRpYWxseSBhbnl0aGluZyBlbHNlKVxyXG4vLy9cclxuQGZ1bmN0aW9uIGdldC1leHByZXNzaW9uLWRpbWVuc2lvbigkZXhwcmVzc2lvbiwgJG9wZXJhdG9yKSB7XHJcbiAgJG9wZXJhdG9yLWluZGV4OiBzdHItaW5kZXgoJGV4cHJlc3Npb24sICRvcGVyYXRvcik7XHJcbiAgJHBhcnNlZC1kaW1lbnNpb246IHN0ci1zbGljZSgkZXhwcmVzc2lvbiwgMCwgJG9wZXJhdG9yLWluZGV4IC0gMSk7XHJcbiAgJGRpbWVuc2lvbjogJ3dpZHRoJztcclxuXHJcbiAgQGlmIHN0ci1sZW5ndGgoJHBhcnNlZC1kaW1lbnNpb24pID4gMCB7XHJcbiAgICAkZGltZW5zaW9uOiAkcGFyc2VkLWRpbWVuc2lvbjtcclxuICB9XHJcblxyXG4gIEByZXR1cm4gJGRpbWVuc2lvbjtcclxufVxyXG5cclxuXHJcbi8vL1xyXG4vLy8gR2V0IGRpbWVuc2lvbiBwcmVmaXggYmFzZWQgb24gYW4gb3BlcmF0b3JcclxuLy8vXHJcbi8vLyBAcGFyYW0ge1N0cmluZ30gJG9wZXJhdG9yIC0gT3BlcmF0b3JcclxuLy8vXHJcbi8vLyBAcmV0dXJuIHtTdHJpbmd9IC0gYG1pbmAgb3IgYG1heGBcclxuLy8vXHJcbkBmdW5jdGlvbiBnZXQtZXhwcmVzc2lvbi1wcmVmaXgoJG9wZXJhdG9yKSB7XHJcbiAgQHJldHVybiBpZihpbmRleCgoJzwnLCAnPD0nLCAn4omkJyksICRvcGVyYXRvciksICdtYXgnLCAnbWluJyk7XHJcbn1cclxuXHJcblxyXG4vLy9cclxuLy8vIEdldCB2YWx1ZSBvZiBhbiBleHByZXNzaW9uLCBiYXNlZCBvbiBhIGZvdW5kIG9wZXJhdG9yXHJcbi8vL1xyXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRleHByZXNzaW9uIC0gRXhwcmVzc2lvbiB0byBleHRyYWN0IHZhbHVlIGZyb21cclxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkb3BlcmF0b3IgLSBPcGVyYXRvciBmcm9tIGAkZXhwcmVzc2lvbmBcclxuLy8vXHJcbi8vLyBAcmV0dXJuIHtOdW1iZXJ9IC0gQSBudW1lcmljIHZhbHVlXHJcbi8vL1xyXG5AZnVuY3Rpb24gZ2V0LWV4cHJlc3Npb24tdmFsdWUoJGV4cHJlc3Npb24sICRvcGVyYXRvcikge1xyXG4gICRvcGVyYXRvci1pbmRleDogc3RyLWluZGV4KCRleHByZXNzaW9uLCAkb3BlcmF0b3IpO1xyXG4gICR2YWx1ZTogc3RyLXNsaWNlKCRleHByZXNzaW9uLCAkb3BlcmF0b3ItaW5kZXggKyBzdHItbGVuZ3RoKCRvcGVyYXRvcikpO1xyXG5cclxuICBAaWYgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCAkdmFsdWUpIHtcclxuICAgICR2YWx1ZTogbWFwLWdldCgkYnJlYWtwb2ludHMsICR2YWx1ZSk7XHJcbiAgfSBAZWxzZSB7XHJcbiAgICAkdmFsdWU6IHRvLW51bWJlcigkdmFsdWUpO1xyXG4gIH1cclxuXHJcbiAgJGludGVydmFsOiBtYXAtZ2V0KCR1bml0LWludGVydmFscywgdW5pdCgkdmFsdWUpKTtcclxuXHJcbiAgQGlmIG5vdCAkaW50ZXJ2YWwge1xyXG4gICAgLy8gSXQgaXMgbm90IHBvc3NpYmxlIHRvIGluY2x1ZGUgYSBtaXhpbiBpbnNpZGUgYSBmdW5jdGlvbiwgc28gd2UgaGF2ZSB0b1xyXG4gICAgLy8gcmVseSBvbiB0aGUgYGltLWxvZyguLilgIGZ1bmN0aW9uIHJhdGhlciB0aGFuIHRoZSBgbG9nKC4uKWAgbWl4aW4uIEJlY2F1c2VcclxuICAgIC8vIGZ1bmN0aW9ucyBjYW5ub3QgYmUgY2FsbGVkIGFueXdoZXJlIGluIFNhc3MsIHdlIG5lZWQgdG8gaGFjayB0aGUgY2FsbCBpblxyXG4gICAgLy8gYSBkdW1teSB2YXJpYWJsZSwgc3VjaCBhcyBgJF9gLiBJZiBhbnlib2R5IGV2ZXIgcmFpc2UgYSBzY29waW5nIGlzc3VlIHdpdGhcclxuICAgIC8vIFNhc3MgMy4zLCBjaGFuZ2UgdGhpcyBsaW5lIGluIGBAaWYgaW0tbG9nKC4uKSB7fWAgaW5zdGVhZC5cclxuICAgICRfOiBpbS1sb2coJ1Vua25vd24gdW5pdCBgI3t1bml0KCR2YWx1ZSl9YC4nKTtcclxuICB9XHJcblxyXG4gIEBpZiAkb3BlcmF0b3IgPT0gJz4nIHtcclxuICAgICR2YWx1ZTogJHZhbHVlICsgJGludGVydmFsO1xyXG4gIH0gQGVsc2UgaWYgJG9wZXJhdG9yID09ICc8JyB7XHJcbiAgICAkdmFsdWU6ICR2YWx1ZSAtICRpbnRlcnZhbDtcclxuICB9XHJcblxyXG4gIEByZXR1cm4gJHZhbHVlO1xyXG59XHJcblxyXG5cclxuLy8vXHJcbi8vLyBQYXJzZSBhbiBleHByZXNzaW9uIHRvIHJldHVybiBhIHZhbGlkIG1lZGlhLXF1ZXJ5IGV4cHJlc3Npb25cclxuLy8vXHJcbi8vLyBAcGFyYW0ge1N0cmluZ30gJGV4cHJlc3Npb24gLSBFeHByZXNzaW9uIHRvIHBhcnNlXHJcbi8vL1xyXG4vLy8gQHJldHVybiB7U3RyaW5nfSAtIFZhbGlkIG1lZGlhIHF1ZXJ5XHJcbi8vL1xyXG5AZnVuY3Rpb24gcGFyc2UtZXhwcmVzc2lvbigkZXhwcmVzc2lvbikge1xyXG4gIC8vIElmIGl0IGlzIHBhcnQgb2YgJG1lZGlhLWV4cHJlc3Npb25zLCBpdCBoYXMgbm8gb3BlcmF0b3JcclxuICAvLyB0aGVuIHRoZXJlIGlzIG5vIG5lZWQgdG8gZ28gYW55IGZ1cnRoZXIsIGp1c3QgcmV0dXJuIHRoZSB2YWx1ZVxyXG4gIEBpZiBtYXAtaGFzLWtleSgkbWVkaWEtZXhwcmVzc2lvbnMsICRleHByZXNzaW9uKSB7XHJcbiAgICBAcmV0dXJuIG1hcC1nZXQoJG1lZGlhLWV4cHJlc3Npb25zLCAkZXhwcmVzc2lvbik7XHJcbiAgfVxyXG5cclxuICAkb3BlcmF0b3I6IGdldC1leHByZXNzaW9uLW9wZXJhdG9yKCRleHByZXNzaW9uKTtcclxuICAkZGltZW5zaW9uOiBnZXQtZXhwcmVzc2lvbi1kaW1lbnNpb24oJGV4cHJlc3Npb24sICRvcGVyYXRvcik7XHJcbiAgJHByZWZpeDogZ2V0LWV4cHJlc3Npb24tcHJlZml4KCRvcGVyYXRvcik7XHJcbiAgJHZhbHVlOiBnZXQtZXhwcmVzc2lvbi12YWx1ZSgkZXhwcmVzc2lvbiwgJG9wZXJhdG9yKTtcclxuXHJcbiAgQHJldHVybiAnKCN7JHByZWZpeH0tI3skZGltZW5zaW9ufTogI3skdmFsdWV9KSc7XHJcbn1cclxuXHJcbi8vL1xyXG4vLy8gU2xpY2UgYCRsaXN0YCBiZXR3ZWVuIGAkc3RhcnRgIGFuZCBgJGVuZGAgaW5kZXhlc1xyXG4vLy9cclxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxyXG4vLy9cclxuLy8vIEBwYXJhbSB7TGlzdH0gJGxpc3QgLSBMaXN0IHRvIHNsaWNlXHJcbi8vLyBAcGFyYW0ge051bWJlcn0gJHN0YXJ0IFsxXSAtIFN0YXJ0IGluZGV4XHJcbi8vLyBAcGFyYW0ge051bWJlcn0gJGVuZCBbbGVuZ3RoKCRsaXN0KV0gLSBFbmQgaW5kZXhcclxuLy8vXHJcbi8vLyBAcmV0dXJuIHtMaXN0fSBTbGljZWQgbGlzdFxyXG4vLy9cclxuQGZ1bmN0aW9uIHNsaWNlKCRsaXN0LCAkc3RhcnQ6IDEsICRlbmQ6IGxlbmd0aCgkbGlzdCkpIHtcclxuICBAaWYgbGVuZ3RoKCRsaXN0KSA8IDEgb3IgJHN0YXJ0ID4gJGVuZCB7XHJcbiAgICBAcmV0dXJuICgpO1xyXG4gIH1cclxuXHJcbiAgJHJlc3VsdDogKCk7XHJcblxyXG4gIEBmb3IgJGkgZnJvbSAkc3RhcnQgdGhyb3VnaCAkZW5kIHtcclxuICAgICRyZXN1bHQ6IGFwcGVuZCgkcmVzdWx0LCBudGgoJGxpc3QsICRpKSk7XHJcbiAgfVxyXG5cclxuICBAcmV0dXJuICRyZXN1bHQ7XHJcbn1cclxuXHJcbi8vLy9cclxuLy8vIFN0cmluZyB0byBudW1iZXIgY29udmVydGVyXHJcbi8vLyBAYXV0aG9yIEh1Z28gR2lyYXVkZWxcclxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxyXG4vLy8vXHJcblxyXG5cclxuLy8vXHJcbi8vLyBDYXN0cyBhIHN0cmluZyBpbnRvIGEgbnVtYmVyXHJcbi8vL1xyXG4vLy8gQHBhcmFtIHtTdHJpbmcgfCBOdW1iZXJ9ICR2YWx1ZSAtIFZhbHVlIHRvIGJlIHBhcnNlZFxyXG4vLy9cclxuLy8vIEByZXR1cm4ge051bWJlcn1cclxuLy8vXHJcbkBmdW5jdGlvbiB0by1udW1iZXIoJHZhbHVlKSB7XHJcbiAgQGlmIHR5cGUtb2YoJHZhbHVlKSA9PSAnbnVtYmVyJyB7XHJcbiAgICBAcmV0dXJuICR2YWx1ZTtcclxuICB9IEBlbHNlIGlmIHR5cGUtb2YoJHZhbHVlKSAhPSAnc3RyaW5nJyB7XHJcbiAgICAkXzogaW0tbG9nKCdWYWx1ZSBmb3IgYHRvLW51bWJlcmAgc2hvdWxkIGJlIGEgbnVtYmVyIG9yIGEgc3RyaW5nLicpO1xyXG4gIH1cclxuXHJcbiAgJGZpcnN0LWNoYXJhY3Rlcjogc3RyLXNsaWNlKCR2YWx1ZSwgMSwgMSk7XHJcbiAgJHJlc3VsdDogMDtcclxuICAkZGlnaXRzOiAwO1xyXG4gICRtaW51czogKCRmaXJzdC1jaGFyYWN0ZXIgPT0gJy0nKTtcclxuICAkbnVtYmVyczogKCcwJzogMCwgJzEnOiAxLCAnMic6IDIsICczJzogMywgJzQnOiA0LCAnNSc6IDUsICc2JzogNiwgJzcnOiA3LCAnOCc6IDgsICc5JzogOSk7XHJcblxyXG4gIC8vIFJlbW92ZSArLy0gc2lnbiBpZiBwcmVzZW50IGF0IGZpcnN0IGNoYXJhY3RlclxyXG4gIEBpZiAoJGZpcnN0LWNoYXJhY3RlciA9PSAnKycgb3IgJGZpcnN0LWNoYXJhY3RlciA9PSAnLScpIHtcclxuICAgICR2YWx1ZTogc3RyLXNsaWNlKCR2YWx1ZSwgMik7XHJcbiAgfVxyXG5cclxuICBAZm9yICRpIGZyb20gMSB0aHJvdWdoIHN0ci1sZW5ndGgoJHZhbHVlKSB7XHJcbiAgICAkY2hhcmFjdGVyOiBzdHItc2xpY2UoJHZhbHVlLCAkaSwgJGkpO1xyXG5cclxuICAgIEBpZiBub3QgKGluZGV4KG1hcC1rZXlzKCRudW1iZXJzKSwgJGNoYXJhY3Rlcikgb3IgJGNoYXJhY3RlciA9PSAnLicpIHtcclxuICAgICAgQHJldHVybiB0by1sZW5ndGgoaWYoJG1pbnVzLCAtJHJlc3VsdCwgJHJlc3VsdCksIHN0ci1zbGljZSgkdmFsdWUsICRpKSlcclxuICAgIH1cclxuXHJcbiAgICBAaWYgJGNoYXJhY3RlciA9PSAnLicge1xyXG4gICAgICAkZGlnaXRzOiAxO1xyXG4gICAgfSBAZWxzZSBpZiAkZGlnaXRzID09IDAge1xyXG4gICAgICAkcmVzdWx0OiAkcmVzdWx0ICogMTAgKyBtYXAtZ2V0KCRudW1iZXJzLCAkY2hhcmFjdGVyKTtcclxuICAgIH0gQGVsc2Uge1xyXG4gICAgICAkZGlnaXRzOiAkZGlnaXRzICogMTA7XHJcbiAgICAgICRyZXN1bHQ6ICRyZXN1bHQgKyBtYXAtZ2V0KCRudW1iZXJzLCAkY2hhcmFjdGVyKSAvICRkaWdpdHM7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBAcmV0dXJuIGlmKCRtaW51cywgLSRyZXN1bHQsICRyZXN1bHQpO1xyXG59XHJcblxyXG5cclxuLy8vXHJcbi8vLyBBZGQgYCR1bml0YCB0byBgJHZhbHVlYFxyXG4vLy9cclxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkdmFsdWUgLSBWYWx1ZSB0byBhZGQgdW5pdCB0b1xyXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICR1bml0IC0gU3RyaW5nIHJlcHJlc2VudGF0aW9uIG9mIHRoZSB1bml0XHJcbi8vL1xyXG4vLy8gQHJldHVybiB7TnVtYmVyfSAtIGAkdmFsdWVgIGV4cHJlc3NlZCBpbiBgJHVuaXRgXHJcbi8vL1xyXG5AZnVuY3Rpb24gdG8tbGVuZ3RoKCR2YWx1ZSwgJHVuaXQpIHtcclxuICAkdW5pdHM6ICgncHgnOiAxcHgsICdjbSc6IDFjbSwgJ21tJzogMW1tLCAnJSc6IDElLCAnY2gnOiAxY2gsICdwYyc6IDFwYywgJ2luJzogMWluLCAnZW0nOiAxZW0sICdyZW0nOiAxcmVtLCAncHQnOiAxcHQsICdleCc6IDFleCwgJ3Z3JzogMXZ3LCAndmgnOiAxdmgsICd2bWluJzogMXZtaW4sICd2bWF4JzogMXZtYXgpO1xyXG5cclxuICBAaWYgbm90IGluZGV4KG1hcC1rZXlzKCR1bml0cyksICR1bml0KSB7XHJcbiAgICAkXzogaW0tbG9nKCdJbnZhbGlkIHVuaXQgYCN7JHVuaXR9YC4nKTtcclxuICB9XHJcblxyXG4gIEByZXR1cm4gJHZhbHVlICogbWFwLWdldCgkdW5pdHMsICR1bml0KTtcclxufVxyXG5cclxuLy8vXHJcbi8vLyBUaGlzIG1peGluIGFpbXMgYXQgcmVkZWZpbmluZyB0aGUgY29uZmlndXJhdGlvbiBqdXN0IGZvciB0aGUgc2NvcGUgb2ZcclxuLy8vIHRoZSBjYWxsLiBJdCBpcyBoZWxwZnVsIHdoZW4gaGF2aW5nIGEgY29tcG9uZW50IG5lZWRpbmcgYW4gZXh0ZW5kZWRcclxuLy8vIGNvbmZpZ3VyYXRpb24gc3VjaCBhcyBjdXN0b20gYnJlYWtwb2ludHMgKHJlZmVycmVkIHRvIGFzIHR3ZWFrcG9pbnRzKVxyXG4vLy8gZm9yIGluc3RhbmNlLlxyXG4vLy9cclxuLy8vIEBhdXRob3IgSHVnbyBHaXJhdWRlbFxyXG4vLy9cclxuLy8vIEBwYXJhbSB7TWFwfSAkdHdlYWtwb2ludHMgWygpXSAtIE1hcCBvZiB0d2Vha3BvaW50cyB0byBiZSBtZXJnZWQgd2l0aCBgJGJyZWFrcG9pbnRzYFxyXG4vLy8gQHBhcmFtIHtNYXB9ICR0d2Vhay1tZWRpYS1leHByZXNzaW9ucyBbKCldIC0gTWFwIG9mIHR3ZWFrZWQgbWVkaWEgZXhwcmVzc2lvbnMgdG8gYmUgbWVyZ2VkIHdpdGggYCRtZWRpYS1leHByZXNzaW9uYFxyXG4vLy9cclxuLy8vIEBleGFtcGxlIHNjc3MgLSBFeHRlbmQgdGhlIGdsb2JhbCBicmVha3BvaW50cyB3aXRoIGEgdHdlYWtwb2ludFxyXG4vLy8gIEBpbmNsdWRlIG1lZGlhLWNvbnRleHQoKCdjdXN0b20nOiA2NzhweCkpIHtcclxuLy8vICAgIC5mb28ge1xyXG4vLy8gICAgICBAaW5jbHVkZSBtZWRpYSgnPm1vYmlsZScsICc8PWN1c3RvbScpIHtcclxuLy8vICAgICAgIC8vIC4uLlxyXG4vLy8gICAgICB9XHJcbi8vLyAgICB9XHJcbi8vLyAgfVxyXG4vLy9cclxuLy8vIEBleGFtcGxlIHNjc3MgLSBFeHRlbmQgdGhlIGdsb2JhbCBtZWRpYSBleHByZXNzaW9ucyB3aXRoIGEgY3VzdG9tIG9uZVxyXG4vLy8gIEBpbmNsdWRlIG1lZGlhLWNvbnRleHQoJHR3ZWFrLW1lZGlhLWV4cHJlc3Npb25zOiAoJ2FsbCc6ICdhbGwnKSkge1xyXG4vLy8gICAgLmZvbyB7XHJcbi8vLyAgICAgIEBpbmNsdWRlIG1lZGlhKCdhbGwnLCAnPm1vYmlsZScpIHtcclxuLy8vICAgICAgIC8vIC4uLlxyXG4vLy8gICAgICB9XHJcbi8vLyAgICB9XHJcbi8vLyAgfVxyXG4vLy9cclxuLy8vIEBleGFtcGxlIHNjc3MgLSBFeHRlbmQgYm90aCBjb25maWd1cmF0aW9uIG1hcHNcclxuLy8vICBAaW5jbHVkZSBtZWRpYS1jb250ZXh0KCgnY3VzdG9tJzogNjc4cHgpLCAoJ2FsbCc6ICdhbGwnKSkge1xyXG4vLy8gICAgLmZvbyB7XHJcbi8vLyAgICAgIEBpbmNsdWRlIG1lZGlhKCdhbGwnLCAnPm1vYmlsZScsICc8PWN1c3RvbScpIHtcclxuLy8vICAgICAgIC8vIC4uLlxyXG4vLy8gICAgICB9XHJcbi8vLyAgICB9XHJcbi8vLyAgfVxyXG4vLy9cclxuQG1peGluIG1lZGlhLWNvbnRleHQoJHR3ZWFrcG9pbnRzOiAoKSwgJHR3ZWFrLW1lZGlhLWV4cHJlc3Npb25zOiAoKSkge1xyXG4gIC8vIFNhdmUgZ2xvYmFsIGNvbmZpZ3VyYXRpb25cclxuICAkZ2xvYmFsLWJyZWFrcG9pbnRzOiAkYnJlYWtwb2ludHM7XHJcbiAgJGdsb2JhbC1tZWRpYS1leHByZXNzaW9uczogJG1lZGlhLWV4cHJlc3Npb25zO1xyXG5cclxuICAvLyBVcGRhdGUgZ2xvYmFsIGNvbmZpZ3VyYXRpb25cclxuICAkYnJlYWtwb2ludHM6IG1hcC1tZXJnZSgkYnJlYWtwb2ludHMsICR0d2Vha3BvaW50cykgIWdsb2JhbDtcclxuICAkbWVkaWEtZXhwcmVzc2lvbnM6IG1hcC1tZXJnZSgkbWVkaWEtZXhwcmVzc2lvbnMsICR0d2Vhay1tZWRpYS1leHByZXNzaW9ucykgIWdsb2JhbDtcclxuXHJcbiAgQGNvbnRlbnQ7XHJcblxyXG4gIC8vIFJlc3RvcmUgZ2xvYmFsIGNvbmZpZ3VyYXRpb25cclxuICAkYnJlYWtwb2ludHM6ICRnbG9iYWwtYnJlYWtwb2ludHMgIWdsb2JhbDtcclxuICAkbWVkaWEtZXhwcmVzc2lvbnM6ICRnbG9iYWwtbWVkaWEtZXhwcmVzc2lvbnMgIWdsb2JhbDtcclxufVxyXG5cclxuLy8vL1xyXG4vLy8gaW5jbHVkZS1tZWRpYSBwdWJsaWMgZXhwb3NlZCBBUElcclxuLy8vIEBhdXRob3IgRWR1YXJkbyBCb3VjYXNcclxuLy8vIEBhY2Nlc3MgcHVibGljXHJcbi8vLy9cclxuXHJcblxyXG4vLy9cclxuLy8vIEdlbmVyYXRlcyBhIG1lZGlhIHF1ZXJ5IGJhc2VkIG9uIGEgbGlzdCBvZiBjb25kaXRpb25zXHJcbi8vL1xyXG4vLy8gQHBhcmFtIHtBcmdsaXN0fSAgICRjb25kaXRpb25zICAtIE1lZGlhIHF1ZXJ5IGNvbmRpdGlvbnNcclxuLy8vXHJcbi8vLyBAZXhhbXBsZSBzY3NzIC0gV2l0aCBhIHNpbmdsZSBzZXQgYnJlYWtwb2ludFxyXG4vLy8gIEBpbmNsdWRlIG1lZGlhKCc+bW9iaWxlJykgeyB9XHJcbi8vL1xyXG4vLy8gQGV4YW1wbGUgc2NzcyAtIFdpdGggdHdvIHNldCBicmVha3BvaW50c1xyXG4vLy8gIEBpbmNsdWRlIG1lZGlhKCc+bW9iaWxlJywgJzw9dGFibGV0JykgeyB9XHJcbi8vL1xyXG4vLy8gQGV4YW1wbGUgc2NzcyAtIFdpdGggY3VzdG9tIHZhbHVlc1xyXG4vLy8gIEBpbmNsdWRlIG1lZGlhKCc+PTM1OHB4JywgJzw4NTBweCcpIHsgfVxyXG4vLy9cclxuLy8vIEBleGFtcGxlIHNjc3MgLSBXaXRoIHNldCBicmVha3BvaW50cyB3aXRoIGN1c3RvbSB2YWx1ZXNcclxuLy8vICBAaW5jbHVkZSBtZWRpYSgnPmRlc2t0b3AnLCAnPD0xMzUwcHgnKSB7IH1cclxuLy8vXHJcbi8vLyBAZXhhbXBsZSBzY3NzIC0gV2l0aCBhIHN0YXRpYyBleHByZXNzaW9uXHJcbi8vLyAgQGluY2x1ZGUgbWVkaWEoJ3JldGluYTJ4JykgeyB9XHJcbi8vL1xyXG4vLy8gQGV4YW1wbGUgc2NzcyAtIE1peGluZyBldmVyeXRoaW5nXHJcbi8vLyAgQGluY2x1ZGUgbWVkaWEoJz49MzUwcHgnLCAnPHRhYmxldCcsICdyZXRpbmEzeCcpIHsgfVxyXG4vLy9cclxuQG1peGluIG1lZGlhKCRjb25kaXRpb25zLi4uKSB7XHJcbiAgQGlmICgkaW0tbWVkaWEtc3VwcG9ydCBhbmQgbGVuZ3RoKCRjb25kaXRpb25zKSA9PSAwKSBvclxyXG4gICAgICAobm90ICRpbS1tZWRpYS1zdXBwb3J0IGFuZCBpbS1pbnRlcmNlcHRzLXN0YXRpYy1icmVha3BvaW50KCRjb25kaXRpb25zLi4uKSkge1xyXG4gICAgQGNvbnRlbnQ7XHJcbiAgfSBAZWxzZSBpZiAoJGltLW1lZGlhLXN1cHBvcnQgYW5kIGxlbmd0aCgkY29uZGl0aW9ucykgPiAwKSB7XHJcbiAgICBAbWVkaWEgI3t1bnF1b3RlKHBhcnNlLWV4cHJlc3Npb24obnRoKCRjb25kaXRpb25zLCAxKSkpfSB7XHJcbiAgICAgIC8vIFJlY3Vyc2l2ZSBjYWxsXHJcbiAgICAgIEBpbmNsdWRlIG1lZGlhKHNsaWNlKCRjb25kaXRpb25zLCAyKS4uLikge1xyXG4gICAgICAgIEBjb250ZW50O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsImZvb3RlciB7IFxuICAgIGJhY2tncm91bmQtY29sb3I6ICRibHVlQkc7IHRleHQtYWxpZ246IGNlbnRlcjsgY29sb3I6ICNGRkY7IHBvc2l0aW9uOiByZWxhdGl2ZTsgIGZvbnQtc2l6ZTogMTZweDsgcGFkZGluZzogMTdweCAwO1xuICAgIC5jb250YWluZXJ7bWF4LXdpZHRoOiBpbmhlcml0O31cbiAgICAudGV4dHtcbiAgICAgICAgcHtmb250LXNpemU6IDE2cHg7IGxpbmUtaGVpZ2h0OiAyMHB4OyBtYXJnaW46IDBweDsgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgICAgICAgICAmOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJi5mZGF7ICBib3JkZXI6IHNvbGlkIDJweCAjZmZmOyBwYWRkaW5nOiA1cHg7IG1hcmdpbjogMCA1JSA0cHg7fVxuICAgICAgICB9ICAgICAgICBcbiAgICB9XG4gICAgaW1ne3dpZHRoOiAxNjlweDsgICAgbWFyZ2luLXRvcDogNXB4O30gICBcbiAgICAuY29weXJpZ2h0e2ZvbnQtc2l6ZTogMTZweDttYXJnaW4tdG9wOiAxNnB4OyAgbGluZS1oZWlnaHQ6IDIwcHg7ICAgZm9udC13ZWlnaHQ6IDYwMDt9XG4gICAgdWx7Zm9udC13ZWlnaHQ6IDYwMDsgZGlzcGxheTogZmxleDsgYWxpZ24taXRlbXM6IGNlbnRlcjsgZmxleC13cmFwOiB3cmFwOyBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgbGl7dGV4dC1hbGlnbjogY2VudGVyOyBcbiAgICAgICAgICAgIGF7Y29sb3I6ICNiOWQzNTY7IHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyBmb250LXdlaWdodDogNjAwOyBcbiAgICAgICAgICAgICAgICAmOmhvdmVye2NvbG9yOiAjMjkyOTI5O31cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICY6bm90KDpsYXN0LWNoaWxkKXtcbiAgICAgICAgICAgICAgICAmOmFmdGVye1xuICAgICAgICAgICAgICAgICAgICBjb250ZW50OiBcInxcIjsgbWFyZ2luOiAwIDdweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgIC52MDEtMDMgJixcbiAgIC52MDIgJiB7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogMzJweDsgICAgICAgIFxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHBlcmFubztcbiAgICAgICAgICAgIC50ZXh0e1xuICAgICAgICAgICAgICAgIHB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDsgbGluZS1oZWlnaHQ6IDE3cHg7XG5cbiAgICAgICAgICAgICAgICAgICAgJi5mZGF7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDEwcHggMCA5cHg7IHBhZGRpbmc6IDFweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci13aWR0aDogMXB4O1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgJi5tb3JuaW5nU2FsZS1kaXNjbGFpbWVyLCBcbiAgICAgICAgICAgICAgICAgICAgJi5wcm9tby1kaXNjbGFpbWVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ibG9jazogMWVtO1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAuOGVtOyBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHVse1xuICAgICAgICAgICAgICAgIGxpe1xuICAgICAgICAgICAgICAgICAgICBhe2NvbG9yOiAkd2hpdGU7IGZvbnQtc2l6ZTogMTVweDt9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmNvcHlyaWdodHtcbiAgICAgICAgICAgICAgICB3aWR0aDogODAlOyBtYXJnaW46IDE1cHggYXV0byAwO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDsgbGluZS1oZWlnaHQ6IDE3cHg7XG4gICAgICAgICAgICB9XG4gICAgfVxuXG4gICAgYm9keS52MDItLXNwbHQtYnRuICYge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA2MHB4O1xuICAgIH1cblxuICAgIC5sb2dvIHtcbiAgICAgICAgbWFyZ2luLWJsb2NrOiAxZW07XG4gICAgfVxufSIsIi5tb25leUJhY2t7ICBiYWNrZ3JvdW5kLWNvbG9yOiRibHVlQkc7IGNvbG9yOiAjZmZmOyBwYWRkaW5nOjhweCAwIDQ0cHggO1xuICAgIGltZ3sgd2lkdGg6IDE1NXB4OyBtYXJnaW4tYm90dG9tOiAxMHB4O31cbiAgICBoMntjb2xvcjogI2ZmZjsgbWFyZ2luLWJvdHRvbTogN3B4OyB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyB0ZXh0LWFsaWduOiBsZWZ0OyBmb250LXdlaWdodDogbm9ybWFsO31cbiAgICBweyBmb250LXNpemU6IDE1cHg7IGZvbnQtd2VpZ2h0OiAzMDA7IGxpbmUtaGVpZ2h0OiAxOHB4O31cbiAgICBcbn1cblxuXG4iLCIuYWJvdXR7ICBiYWNrZ3JvdW5kLWNvbG9yOiRncmV5Qkc7IHBhZGRpbmc6IDE0cHggMCAyOXB4O1xuICAgIC50b3B7ZGlzcGxheTogZmxleDsgYWxpZ24taXRlbXM6IGNlbnRlcjsgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgICAgICAgaW1ne3dpZHRoOiA5MXB4OyBtYXJnaW4tcmlnaHQ6IDEycHg7IGRpc3BsYXk6IGlubGluZS1ibG9jazt9XG4gICAgICAgIGgye2Rpc3BsYXk6IGlubGluZS1ibG9jazsgZm9udC13ZWlnaHQ6IDYwMDt9XG4gICAgfVxuICAgIHB7IGZvbnQtc2l6ZTogMTVweDsgZm9udC13ZWlnaHQ6IDMwMDsgbGluZS1oZWlnaHQ6IDIycHg7fVxuXG59IiwiQGltcG9ydCBcInZhcmlhYmxlc1wiO1xuLmZhcXtcbiAgICBwYWRkaW5nOiAzMHB4IDAgMThweDtcbiAgICBoMnsgIGZvbnQtd2VpZ2h0OiA2MDA7IHRleHQtYWxpZ246IGxlZnQ7fVxuICAgIC5mYXFMaXN0e1xuICAgICAgICBsaXtcbiAgICAgICAgICAgICY6bm90KDpsYXN0LWNoaWxkKXtcbiAgICAgICAgICAgICAgICAucXVlc3Rpb25XcmFweyAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICM4MDgwODAyNjt9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAucXVlc3Rpb25XcmFweyAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAucXVlc3Rpb257Zm9udC1zaXplOiAxOHB4OyBsaW5lLWhlaWdodDogMS4xOyAgZm9udC13ZWlnaHQ6IDcwMDsgY29sb3I6ICR0aXRsZUNvbG9yOyBwb3NpdGlvbjogcmVsYXRpdmU7IHBhZGRpbmctcmlnaHQ6IDE1cHg7IG1hcmdpbi1ib3R0b206IDE4cHg7IG1hcmdpbi10b3A6IDIxcHg7IGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgJjpiZWZvcmV7Y29udGVudDogXCJcIjsgYmFja2dyb3VuZDogdXJsKFwiaHR0cHM6Ly9kdGpsaGlhaGx2NTNqLmNsb3VkZnJvbnQubmV0L2Fzc2V0cy9iYzMvcHJvZHVjdC9yaWdodC1hcnJvdy1sYXJnZS5wbmdcIikgbm8tcmVwZWF0OyBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47IHdpZHRoOiAxMXB4OyBoZWlnaHQ6IDdweCA7IGRpc3BsYXk6IGJsb2NrOyBwb3NpdGlvbjogYWJzb2x1dGU7IHJpZ2h0OiAwOyB0b3A6IDExcHg7dHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTsgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuNXMgIGVhc2UgO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICZbYXJpYS1leHBhbmRlZD1cInRydWVcIl17XG4gICAgICAgICAgICAgICAgICAgICAgICAmOmJlZm9yZXtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTsgXG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgYm9keS52MDEtMDIgJixcbiAgICAgICAgICAgICAgICAgICAgYm9keS52MDEtMDMgJixcbiAgICAgICAgICAgICAgICAgICAgYm9keS52MDIgJiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDIwcHg7IGxpbmUtaGVpZ2h0OiAzMHB4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIC5hbnN3ZXJ7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAgICAgICAgICAgICAgIHAsIHVse3BhZGRpbmctYm90dG9tOiAxNnB4OyBtYXJnaW46IDA7IGxpbmUtaGVpZ2h0OiAxLjQ7fVxuXG4gICAgICAgICAgICAgICAgICAgIHVsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxpc3Qtc3R5bGU6IGRpc2M7IHBhZGRpbmctbGVmdDogMjBweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC52MDEtMDMgJixcbiAgICAudjAyICYge1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKCRwYXRoICsnZmFxLWJhY2suanBnJyk7IGJhY2tncm91bmQtY29sb3I6ICR2MDEtMDMtYmdDb2xvcjsgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDsgYmFja2dyb3VuZC1wb3NpdGlvbjogdG9wIHJpZ2h0OyBcbiAgICAgICAgICAgIGgye3RleHQtYWxpZ246IGNlbnRlcjsgZm9udC13ZWlnaHQ6IDcwMDt9XG4gICAgICAgICAgICAuZmFxTGlzdCB7XG4gICAgICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgICAgICAucXVlc3Rpb25XcmFwIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIC5xdWVzdGlvbntcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxNXB4OyBtYXJnaW4tdG9wOiAxNHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTdweDsgbGluZS1oZWlnaHQ6IDIwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR2MDEtMDMtdGV4dENvbG9yO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6YmVmb3Jle3RyYW5zZm9ybTogcm90YXRlKDBkZWcpOyBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJHBhdGggKydkb3dubG9hZC5zdmcnKTt9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJlthcmlhLWV4cGFuZGVkPXRydWVde1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgLmFuc3dlcntcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItdG9wOiAycHggc29saWQgI0UzRTRFNTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwe1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmOmZpcnN0LWNoaWxke1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy10b3A6IDEycHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCl7XG4gICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCRwYXRoICsnYmFja19kLmpwZycpOyBiYWNrZ3JvdW5kLWNvbG9yOiAjZDlkZGU2O1xuICAgICAgICAgICAgICAgICAgICAgICBcblxuICAgICAgICAgICAgfVxuICAgICAgICB9XG59XG4iLCJAaW1wb3J0IFwidmFyaWFibGVzXCI7XHJcblxyXG4kcmF0aW5nLWNvbG9yOiAka29yb21pa287XHJcblxyXG4ucmF0aW5nIHtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47IGRpc3BsYXk6IGJsb2NrOyBoZWlnaHQ6IDFlbTsgXHJcbiAgICBmb250LXNpemU6IDE3cHg7IHRleHQtYWxpZ246IGxlZnQ7IGxpbmUtaGVpZ2h0OiAxZW07IGxldHRlci1zcGFjaW5nOiAxcHg7IGNvbG9yOiAkcmF0aW5nLWNvbG9yO1xyXG5cclxuICAgIFtjbGFzc149XCJmYVwiXSB7XHJcbiAgICAgICAgcGFkZGluZy10b3A6IDFlbTtcclxuXHJcbiAgICAgICAgJjo6YmVmb3JlIHtcclxuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4ucmV2aWV3cyB7XHJcbiAgICBwYWRkaW5nLXRvcDogMzBweDsgcGFkZGluZy1ib3R0b206IDYwcHg7XHJcbiAgICBsZXR0ZXItc3BhY2luZzogbWFwLWRlZXAtZ2V0KCRyZXZpZXdzLCBsZXR0ZXItc3BhY2luZyk7IGxpbmUtaGVpZ2h0OiBtYXAtZGVlcC1nZXQoJHJldmlld3MsIGxpbmUtaGVpZ2h0KTtcclxuXHJcbiAgICAmX190aXRsZSB7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDsgZm9udC13ZWlnaHQ6IDMwMDtcclxuICAgICAgICAmOmFmdGVye2NvbnRlbnQ6IFwiXCI7IHdpZHRoOiA0MnB4OyBib3JkZXItdG9wOiAxcHggc29saWQ7IGRpc3BsYXk6IGJsb2NrOyBtYXJnaW46IDE1cHggMDt9XHJcbiAgICB9XHJcblxyXG4gICAgJl9fbGlzdCB7XHJcbiAgICAgICAgXHJcbiAgICB9XHJcblxyXG4gICAgJl9faXRlbSB7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogbWFwLWRlZXAtZ2V0KCRyZXZpZXdzLCBociwgc3BhY2UpO1xyXG4gICAgICAgIGJvcmRlci1ib3R0b206IG1hcC1kZWVwLWdldCgkcmV2aWV3cywgaHIsIGJvcmRlcikgbWFwLWRlZXAtZ2V0KCRyZXZpZXdzLCBociwgY29sb3IpO1xyXG4gICAgfVxyXG5cclxuICAgICZfX2l0ZW0tdGl0bGUsXHJcbiAgICAmX19jb21tZW50LFxyXG4gICAgJl9fYXV0aG9yLFxyXG4gICAgJl9fbm90ZSB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcclxuICAgIH1cclxuXHJcbiAgICAmX19pdGVtLXRpdGxlIHtcclxuICAgICAgICBmb250LXNpemU6IG1hcC1kZWVwLWdldCgkcmV2aWV3cywgdGl0bGUsIHNpemUpOyBmb250LXdlaWdodDogbWFwLWRlZXAtZ2V0KCRyZXZpZXdzLCB0aXRsZSwgd2VpZ2h0KTtcclxuICAgICAgICBjb2xvcjogbWFwLWRlZXAtZ2V0KCRyZXZpZXdzLCB0aXRsZSwgY29sb3IpO1xyXG4gICAgfVxyXG5cclxuICAgICZfX2NvbW1lbnQge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogbWFwLWRlZXAtZ2V0KCRyZXZpZXdzLCBjb21tZW50LCBzaXplKTtcclxuICAgIH1cclxuICAgIFxyXG4gICAgJl9fYXV0aG9yIHtcclxuICAgICAgICBmb250LXNpemU6IG1hcC1kZWVwLWdldCgkcmV2aWV3cywgYXV0aG9yLCBzaXplKTsgZm9udC13ZWlnaHQ6IG1hcC1kZWVwLWdldCgkcmV2aWV3cywgYXV0aG9yLCB3ZWlnaHQpOyBjb2xvcjogbWFwLWRlZXAtZ2V0KCRyZXZpZXdzLCBhdXRob3IsIGNvbG9yKTtcclxuICAgIH1cclxuXHJcbiAgICAmX19ub3RlIHtcclxuICAgICAgICBmb250LXNpemU6IG1hcC1kZWVwLWdldCgkcmV2aWV3cywgbm90ZSwgc2l6ZSk7IGZvbnQtd2VpZ2h0OiBtYXAtZGVlcC1nZXQoJHJldmlld3MsIG5vdGUsIHdlaWdodCk7IGZvbnQtc3R5bGU6IG1hcC1kZWVwLWdldCgkcmV2aWV3cywgbm90ZSwgc3R5bGUpO1xyXG4gICAgfVxyXG59XHJcbiIsIi5hYm91dEJDM3t0ZXh0LWFsaWduOiBjZW50ZXI7ICBiYWNrZ3JvdW5kLWNvbG9yOiRncmV5Qkc7IHBhZGRpbmc6IDIwcHggMDsgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAuaW1nV3JhcHsgbWFyZ2luLXJpZ2h0OiAtNDVweDtcbiAgICAgICAgaW1ne21heC13aWR0aDogMjQwcHg7IG1hcmdpbjogMCBhdXRvIDIwcHg7fVxuICAgIH1cbiAgICBoMnsgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICY6YWZ0ZXJ7Y29udGVudDogXCJcIjsgd2lkdGg6IDQycHg7IGJvcmRlci10b3A6IDFweCBzb2xpZDsgZGlzcGxheTogYmxvY2s7IG1hcmdpbjogMTVweCBhdXRvO31cbiAgICB9XG4gICAgcHsgZm9udC1zaXplOiAxNnB4OyBmb250LXdlaWdodDogMzAwOyBsaW5lLWhlaWdodDogMThweDsgdGV4dC1hbGlnbjogbGVmdDsgbWFyZ2luLWJvdHRvbTogMTZweDt9XG4gICAgLmJ0bnt3aWR0aDogMTAwJTt9XG59Il19 */
