@charset "UTF-8";
@font-face{font-family:"sw-icons";src:url("../fonts/themia-icon-set.ttf?dtjzlh") format("truetype"), url("../fonts/themia-icon-set.woff?dtjzlh") format("woff"), url("../fonts/themia-icon-set.svg?dtjzlh#sw-icons") format("svg");font-weight:normal;font-style:normal;font-display:block}[class^="sw-icon-"],[class*=" sw-icon-"]{font-family:"sw-icons" !important;speak:none;font-style:normal;font-weight:normal;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.sw-icon-google-pay:before{content:"";font-size:97%}.sw-icon-apple-pay:before{content:"";font-size:88%;position:relative;bottom:2px}.sw-icon-paypal:before{content:""}.sw-icon-jcb:before{content:"";font-size:88%;position:relative;bottom:2px}.sw-icon-discover:before{content:""}.sw-icon-maestro:before{content:""}.sw-icon-amex:before{content:""}.sw-icon-mastercard:before{content:""}.sw-icon-visa:before{content:""}.sw-icon-ebay:before{content:"";font-size:115%;vertical-align:middle !important}.sw-icon-amazon:before{content:"";font-size:120%;vertical-align:middle !important}.sw-icon-etsy:before{content:""}.sw-icon-tiktok:before{content:""}.sw-icon-snapchat:before{content:""}.sw-icon-tumblr:before{content:""}.sw-icon-facebook-new:before{content:"";font-size:115%;vertical-align:middle !important}.sw-icon-x-new:before{content:"";font-size:95%}.sw-icon-instagram-new:before{content:""}.sw-icon-pinterest-new:before{content:""}.sw-icon-youtube-new:before{content:""}.sw-icon-linkedin-new:before{content:"";vertical-align:top !important}.sw-icon-facebook-logo:before{content:""}.sw-icon-menu:before{content:""}.sw-icon-search1:before{content:""}.sw-icon-twitter1:before{content:""}.sw-icon-instagram1:before{content:""}.sw-icon-shopping-basket:before{content:""}.sw-icon-pinterest1:before{content:""}.sw-icon-telephone:before{content:""}.sw-icon-user1:before{content:""}.sw-icon-youtube-logo:before{content:""}.sw-icon-heart1:before{content:""}.sw-icon-linkedin-logo:before{content:""}.sw-icon-money:before{content:""}.sw-icon-tumblr-logo:before{content:""}.sw-icon-checked:before{content:""}.sw-icon-keyboard-right-arrow-button:before{content:""}.sw-icon-plus-black-symbol:before{content:""}.sw-icon-plus1:before{content:""}.sw-icon-minus1:before{content:""}.sw-icon-checked-1:before{content:""}.sw-icon-youtube1:before{content:""}.sw-icon-premium-badge:before{content:""}.sw-icon-share:before{content:""}.sw-icon-zoom-in:before{content:""}.sw-icon-close:before{content:""}.sw-icon-star1:before{content:""}.sw-icon-delivery-truck:before{content:""}.sw-icon-credit-card:before{content:""}.sw-icon-lock:before{content:""}.sw-icon-coupon:before{content:""}.sw-icon-email:before{content:""}.sw-icon-close-button:before{content:""}.sw-icon-list1:before{content:""}.sw-icon-four-squares:before{content:""}.sw-icon-heart:before{content:""}.sw-icon-monthly-calendar:before{content:""}.sw-icon-sliders:before{content:""}.sw-icon-log-out:before{content:""}.sw-icon-account-home:before{content:""}.sw-icon-box:before{content:""}.sw-icon-eye:before{content:""}.sw-icon-forbidden:before{content:""}.sw-icon-glass:before{content:""}.sw-icon-calendar:before{content:""}.sw-icon-facebook:before{content:""}.sw-icon-gift:before{content:""}.sw-icon-refresh:before{content:""}.sw-icon-pdf:before{content:""}.sw-icon-map-marker:before{content:""}.sw-icon-twitter:before{content:""}.sw-icon-google-plus:before{content:""}.sw-icon-linkedin:before{content:""}.sw-icon-pinterest:before{content:""}.sw-icon-youtube:before{content:""}.sw-icon-instagram:before{content:""}.sw-icon-bell:before{content:""}.sw-icon-like:before{content:""}.sw-icon-bars:before{content:""}.sw-icon-glass-2:before{content:""}.sw-icon-caret-down:before{content:""}.sw-icon-caret-up:before{content:""}.sw-icon-star:before{content:""}.sw-icon-star-on:before{content:""}.sw-icon-external-link:before{content:""}.sw-icon-plus-zoom:before{content:""}.sw-icon-play:before{content:""}.sw-icon-copy:before{content:""}.sw-icon-grid:before{content:""}.sw-icon-list:before{content:""}.sw-icon-caret-right:before{content:""}.sw-icon-circle-star:before{content:""}.sw-icon-gift1:before{content:""}.sw-icon-mail:before{content:""}.sw-icon-map:before{content:""}.sw-icon-padlock:before{content:""}.sw-icon-phone:before{content:""}.sw-icon-shopping-bag:before{content:""}.sw-icon-truck:before{content:""}.sw-icon-user:before{content:""}.sw-icon-down-arrow:before{content:""}.sw-icon-down-chevron:before{content:""}.sw-icon-left-arrow:before{content:""}.sw-icon-left-chevron:before{content:""}.sw-icon-move:before{content:""}.sw-icon-question:before{content:""}.sw-icon-right-arrow:before{content:""}.sw-icon-right-chevron:before{content:""}.sw-icon-search:before{content:""}.sw-icon-up-arrow:before{content:""}.sw-icon-up-chevron:before{content:""}.sw-icon-minus:before{content:""}.sw-icon-plus:before{content:""}.sw-icon-tumblr:before{content:""}.shopwired-info-message{position:fixed;left:0;right:0;bottom:0;color:#fff;font-size:24px;font-weight:400;padding:25px;background:#000;background-color:rgba(0, 0, 0, 0.8);text-align:center;z-index:9999;opacity:0}.shopwired-info-message a{color:inherit}.image-container{position:relative;display:block;overflow:hidden;height:0;padding-top:100%;background-color:#fff}.image-container img{position:absolute;left:0;top:0;width:auto;height:auto}.category-box .image-container{padding-top:100%}.product-box .image-container{padding-top:100%}.brand-box .image-container{padding-top:100%}.image-container.product-gallery-main-photo{padding-top:100%}.article-box .image-container:not(.mod-blog-featured){padding-top:100%}.article-box .image-container.mod-blog-featured{padding-top:50%}.flag{background:url(../images/flags32.png) no-repeat}.eu{background-position:0 -256px}.ad{background-position:0 -704px}.ae{background-position:0 -736px}.af{background-position:0 -768px}.ag{background-position:0 -800px}.ai{background-position:0 -832px}.al{background-position:0 -864px}.am{background-position:0 -896px}.ao{background-position:0 -928px}.aq{background-position:0 -960px}.ar{background-position:0 -992px}.as{background-position:0 -1024px}.at{background-position:0 -1056px}.au{background-position:0 -1088px}.aw{background-position:0 -1120px}.ax{background-position:0 -1152px}.az{background-position:0 -1184px}.ba{background-position:0 -1216px}.bb{background-position:0 -1248px}.bd{background-position:0 -1280px}.be{background-position:0 -1312px}.bf{background-position:0 -1344px}.bg{background-position:0 -1376px}.bh{background-position:0 -1408px}.bi{background-position:0 -1440px}.bj{background-position:0 -1472px}.bm{background-position:0 -1504px}.bn{background-position:0 -1536px}.bo{background-position:0 -1568px}.br{background-position:0 -1600px}.bs{background-position:0 -1632px}.bt{background-position:0 -1664px}.bw{background-position:0 -1696px}.by{background-position:0 -1728px}.bz{background-position:0 -1760px}.ca{background-position:0 -1792px}.cd{background-position:0 -1824px}.cf{background-position:0 -1856px}.cg{background-position:0 -1888px}.ch{background-position:0 -1920px}.ci{background-position:0 -1952px}.ck{background-position:0 -1984px}.cl{background-position:0 -2016px}.cm{background-position:0 -2048px}.cn{background-position:0 -2080px}.co{background-position:0 -2112px}.cr{background-position:0 -2144px}.cu{background-position:0 -2176px}.cv{background-position:0 -2208px}.cy{background-position:0 -2240px}.cz{background-position:0 -2272px}.de{background-position:0 -2304px}.dj{background-position:0 -2336px}.dk{background-position:0 -2368px}.dm{background-position:0 -2400px}.do{background-position:0 -2432px}.dz{background-position:0 -2464px}.ec{background-position:0 -2496px}.ee{background-position:0 -2528px}.eg{background-position:0 -2560px}.eh{background-position:0 -2592px}.er{background-position:0 -2624px}.es{background-position:0 -2656px}.et{background-position:0 -2688px}.fi{background-position:0 -2720px}.fj{background-position:0 -2752px}.fm{background-position:0 -2784px}.fo{background-position:0 -2816px}.fr{background-position:0 -2848px}.bl{background-position:0 -2848px}.cp{background-position:0 -2848px}.mf{background-position:0 -2848px}.yt{background-position:0 -2848px}.ga{background-position:0 -2880px}.gb{background-position:0 -2912px}.sh{background-position:0 -2912px}.gd{background-position:0 -2944px}.ge{background-position:0 -2976px}.gg{background-position:0 -3008px}.gh{background-position:0 -3040px}.gi{background-position:0 -3072px}.gl{background-position:0 -3104px}.gm{background-position:0 -3136px}.gn{background-position:0 -3168px}.gp{background-position:0 -3200px}.gq{background-position:0 -3232px}.gr{background-position:0 -3264px}.gt{background-position:0 -3296px}.gu{background-position:0 -3328px}.gw{background-position:0 -3360px}.gy{background-position:0 -3392px}.hk{background-position:0 -3424px}.hn{background-position:0 -3456px}.hr{background-position:0 -3488px}.ht{background-position:0 -3520px}.hu{background-position:0 -3552px}.id{background-position:0 -3584px}.mc{background-position:0 -3584px}.ie{background-position:0 -3616px}.il{background-position:0 -3648px}.im{background-position:0 -3680px}.in{background-position:0 -3712px}.iq{background-position:0 -3744px}.ir{background-position:0 -3776px}.is{background-position:0 -3808px}.it{background-position:0 -3840px}.je{background-position:0 -3872px}.jm{background-position:0 -3904px}.jo{background-position:0 -3936px}.jp{background-position:0 -3968px}.ke{background-position:0 -4000px}.kg{background-position:0 -4032px}.kh{background-position:0 -4064px}.ki{background-position:0 -4096px}.km{background-position:0 -4128px}.kn{background-position:0 -4160px}.kp{background-position:0 -4192px}.kr{background-position:0 -4224px}.kw{background-position:0 -4256px}.ky{background-position:0 -4288px}.kz{background-position:0 -4320px}.la{background-position:0 -4352px}.lb{background-position:0 -4384px}.lc{background-position:0 -4416px}.li{background-position:0 -4448px}.lk{background-position:0 -4480px}.lr{background-position:0 -4512px}.ls{background-position:0 -4544px}.lt{background-position:0 -4576px}.lu{background-position:0 -4608px}.lv{background-position:0 -4640px}.ly{background-position:0 -4672px}.ma{background-position:0 -4704px}.md{background-position:0 -4736px}.me{background-position:0 -4768px}.mg{background-position:0 -4800px}.mh{background-position:0 -4832px}.mk{background-position:0 -4864px}.ml{background-position:0 -4896px}.mm{background-position:0 -4928px}.mn{background-position:0 -4960px}.mo{background-position:0 -4992px}.mq{background-position:0 -5024px}.mr{background-position:0 -5056px}.ms{background-position:0 -5088px}.mt{background-position:0 -5120px}.mu{background-position:0 -5152px}.mv{background-position:0 -5184px}.mw{background-position:0 -5216px}.mx{background-position:0 -5248px}.my{background-position:0 -5280px}.mz{background-position:0 -5312px}.na{background-position:0 -5344px}.nc{background-position:0 -5376px}.ne{background-position:0 -5408px}.ng{background-position:0 -5440px}.ni{background-position:0 -5472px}.nl{background-position:0 -5504px}.bq{background-position:0 -5504px}.no{background-position:0 -5536px}.bv{background-position:0 -5536px}.nq{background-position:0 -5536px}.sj{background-position:0 -5536px}.np{background-position:0 -5568px}.nr{background-position:0 -5600px}.nz{background-position:0 -5632px}.om{background-position:0 -5664px}.pa{background-position:0 -5696px}.pe{background-position:0 -5728px}.pf{background-position:0 -5760px}.pg{background-position:0 -5792px}.ph{background-position:0 -5824px}.pk{background-position:0 -5856px}.pl{background-position:0 -5888px}.pr{background-position:0 -5920px}.ps{background-position:0 -5952px}.pt{background-position:0 -5984px}.pw{background-position:0 -6016px}.py{background-position:0 -6048px}.qa{background-position:0 -6080px}.re{background-position:0 -6112px}.ro{background-position:0 -6144px}.rs{background-position:0 -6176px}.ru{background-position:0 -6208px}.rw{background-position:0 -6240px}.sa{background-position:0 -6272px}.sb{background-position:0 -6304px}.sc{background-position:0 -6336px}.sd{background-position:0 -6368px}.se{background-position:0 -6400px}.sg{background-position:0 -6432px}.si{background-position:0 -6464px}.sk{background-position:0 -6496px}.sl{background-position:0 -6528px}.sm{background-position:0 -6560px}.sn{background-position:0 -6592px}.so{background-position:0 -6624px}.sr{background-position:0 -6656px}.st{background-position:0 -6688px}.sv{background-position:0 -6720px}.sy{background-position:0 -6752px}.sz{background-position:0 -6784px}.tc{background-position:0 -6816px}.td{background-position:0 -6848px}.tg{background-position:0 -6880px}.th{background-position:0 -6912px}.tj{background-position:0 -6944px}.tl{background-position:0 -6976px}.tm{background-position:0 -7008px}.tn{background-position:0 -7040px}.to{background-position:0 -7072px}.tr{background-position:0 -7104px}.tt{background-position:0 -7136px}.tv{background-position:0 -7168px}.tw{background-position:0 -7200px}.tz{background-position:0 -7232px}.ua{background-position:0 -7264px}.ug{background-position:0 -7296px}.us{background-position:0 -7328px}.uy{background-position:0 -7360px}.uz{background-position:0 -7392px}.va{background-position:0 -7424px}.vc{background-position:0 -7456px}.ve{background-position:0 -7488px}.vg{background-position:0 -7520px}.vi{background-position:0 -7552px}.vn{background-position:0 -7584px}.vu{background-position:0 -7616px}.ws{background-position:0 -7648px}.ye{background-position:0 -7680px}.za{background-position:0 -7712px}.zm{background-position:0 -7744px}.zw{background-position:0 -7776px}.sx{background-position:0 -7808px}.cw{background-position:0 -7840px}.ss{background-position:0 -7872px}.nu{background-position:0 -7904px}html,body{font-size:13.75px;font-family:"Poppins", sans-serif;line-height:1.2}h1{font-size:26px !important}h2{font-size:20px !important}h3{font-size:22px !important}h3{font-size:14px !important}h5{font-size:1.125rem}h5{font-size:1rem}h1,h2,h3,h4,h5,h6{font-family:"IBM Plex Sans", serif;line-height:1.2}h1{font-weight:500;font-size:26px}address{font-style:normal}:focus{outline:none}hr{max-width:85rem}a{color:#4A1639}a:hover,a:focus,a:active,a.active{outline:none;color:#4A1639}.button{font-family:"IBM Plex Sans", serif;background-color:#bae4f0;color:#064e9b;font-size:1.16rem;font-weight:500;padding:1.35rem 2.18rem;border:0;border-radius:5px;text-align:center}.button.text-left{text-align:left}.button.medium{padding:1.35rem 1.67rem}.button.with-arrow{text-align:left;padding:2.18rem 2.9rem;padding-right:4rem;position:relative;border-radius:0}.button.with-arrow .with-arrow_icon{font-size:1.7rem;right:2.9rem;position:absolute;top:50%;-webkit-transform:translateY(-50%);-moz-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%)}.button.with-arrow .with-arrow_icon i{display:block}.button:hover,.button:focus,.button:active,.button.active{outline:none;background-color:#bae4f0;color:#064e9b}.button .icon{position:relative;padding-left:35px;display:inline-block}.button .icon i{position:absolute;top:50%;-webkit-transform:translateY(-50%);-moz-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%);left:0;font-size:23px}.button.checkout{font-size:1.3rem}.button.checkout .icon{padding-left:42px}.button.checkout .icon i{font-size:30px}.button.lg{font-size:17px}.button.sm{font-size:13px;min-width:225px}.button.md{font-size:13px;min-width:225px;font-weight:700;border:2px solid #319295}.button.filled{background-color:#319295;color:#fff}.button.footer-contact{background-color:#FF6500;border-color:#FF6500;color:#FFFFFF}.button.border{background-color:#fff;color:#319295}.button.footer-call{background-color:#fff;color:#FF6500;border-color:#FF6500}.button.footer-call a{color:#FF6500}.button+.button{margin-left:0.5rem}.button.disabled{pointer-events:none}.paypal-button{border-radius:0;background:#ffc43a;padding:0.5rem 0;text-align:center}.paypal-button:focus,.paypal-button:hover{background-color:#ffc43a}.no-bg{font-size:1.3rem;font-family:"IBM Plex Sans", serif;font-weight:500;color:#000000;background:transparent;border:0;position:relative;display:inline-block;white-space:nowrap}.no-bg:after{content:"";font-family:"sw-icons" !important;font-size:0.9rem;margin-left:0.5rem}@media screen and (max-width:39.9375em){.no-bg{font-size:1.2rem}.no-bg:after{margin-left:0}}.wishlist-link{font-size:1.16rem;font-family:"IBM Plex Sans", serif;font-weight:500;padding:1.09rem 2.18rem;background-color:#FF6500;color:#FFFFFF;border-radius:5px;display:inline-block;line-height:1.6}.wishlist-link>span{position:relative;padding-left:29px}.wishlist-link i{position:absolute;top:50%;-webkit-transform:translateY(-50%);-moz-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%);left:0;font-size:20px}.wishlist-link:hover{color:#FFFFFF}button{cursor:pointer;font-family:"IBM Plex Sans", serif}.button_add-basket{white-space:nowrap}.toggle-filters{margin:0;font-size:1.01rem;padding:0;height:51px;background-color:#f3f0ee;width:51px;color:#000000;border:1px solid #f3f0ee;border-radius:5px;position:relative;font-family:"Poppins", sans-serif}.toggle-filters i{visibility:hidden}.toggle-filters:before{content:"";font-size:2rem;width:51px;left:0;color:#000000;font-family:"sw-icons" !important;position:absolute;top:50%;-webkit-transform:translateY(-50%);-moz-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%)}.collection-controls{white-space:nowrap}.collection-controls .button{margin:0;font-size:1.01rem;padding:0;height:51px;background-color:#fff;width:51px;color:#000000;border:1px solid #f3f0ee;border-radius:5px;position:relative}.collection-controls .button.active{background-color:#FF6500}.collection-controls .button+.button{margin-left:10px}.collection-controls .button i{font-size:2.32rem;width:51px;left:0;color:#000000;position:absolute;top:50%;-webkit-transform:translateY(-50%);-moz-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%)}.collection-controls .button.grid i{font-size:1.8rem}span.validation-error{color:#ef3d3d;font-style:italic;font-size:0.8rem;white-space:nowrap;display:none !important}.product-validation span.validation-error{display:block !important}span.validation-error+.validation-error,span.validation-error+.input-group .validation-error{border-color:#ff0000}span.validation-error+.validation-error:hover,span.validation-error+.validation-error:focus,span.validation-error+.validation-error:active,span.validation-error+.validation-error.active,span.validation-error+.input-group .validation-error:hover,span.validation-error+.input-group .validation-error:focus,span.validation-error+.input-group .validation-error:active,span.validation-error+.input-group .validation-error.active{outline:none;border-color:#ff0000}span.validation-error+.validation-error::-webkit-input-placeholder,span.validation-error+.input-group .validation-error::-webkit-input-placeholder{color:#ff0000}span.validation-error+.validation-error:-moz-placeholder,span.validation-error+.input-group .validation-error:-moz-placeholder{color:#ff0000;opacity:1}span.validation-error+.validation-error::-moz-placeholder,span.validation-error+.input-group .validation-error::-moz-placeholder{color:#ff0000;opacity:1}span.validation-error+.validation-error:-ms-input-placeholder,span.validation-error+.input-group .validation-error:-ms-input-placeholder{color:#ff0000}.field-label{display:inline-block;font-size:0.873rem;font-weight:normal;margin-bottom:0.5rem;color:#000000}.field-container .field-label{position:absolute;margin:0;left:1.6rem;top:0.7rem;color:#242424;font-size:0.727rem;font-family:"Poppins", sans-serif;font-weight:700;pointer-events:none;z-index:10;opacity:0;-webkit-transform:translateY(3px);-moz-transform:translateY(3px);-ms-transform:translateY(3px);transform:translateY(3px);transition-property:opacity, -webkit-transform;transition-property:opacity, transform;transition-property:opacity, transform, -webkit-transform;transition-duration:150ms}.is-filled .field-label{opacity:1;-webkit-transform:translateY(0);-moz-transform:translateY(0);-ms-transform:translateY(0);transform:translateY(0)}.field-container{position:relative;line-height:1.5}.select-container{padding:0;position:relative;margin-bottom:1rem;background-color:#fff;border-radius:5px}.select-container .field-label{position:absolute;top:0;left:0;font-size:0.873rem;margin:0;padding:1.07rem 1.6rem;padding-right:3px;z-index:unset}.is-text.is-filled.select-container .field-label{position:absolute;margin:0;left:1.6rem;top:0.7rem;color:#242424;font-size:0.727rem;font-family:"Poppins", sans-serif;font-weight:700;pointer-events:none;z-index:10;opacity:1;padding:0;margin-top:-0.5em;-webkit-transform:translateY(3px);-moz-transform:translateY(3px);-ms-transform:translateY(3px);transform:translateY(3px);transition-property:opacity, -webkit-transform;transition-property:opacity, transform;transition-property:opacity, transform, -webkit-transform;transition-duration:150ms}.select-container.mod-input select{padding-top:0.5rem !important;padding-bottom:0.5rem !important}.select-container select{font-weight:700;position:relative;z-index:1;background-color:transparent;margin:0;-webkit-appearance:none;-moz-appearance:none;-ms-appearance:none;-o-appearance:none;appearance:none}.select-container select:focus,.select-container select:active,.select-container select:hover{background-color:transparent}.select-container select option{padding:0;font-weight:normal}[type=color],[type=date],[type=datetime-local],[type=datetime],[type=email],[type=month],[type=number],[type=password],[type=search],[type=tel],[type=text],[type=time],[type=url],[type=week],textarea,select{border:1px solid #FFFFFF;background-color:#fff;border-radius:5px;height:51px;padding:1.1rem 1.6rem;font-size:0.873rem;box-shadow:none !important;color:#000000}[type=color]:focus,[type=date]:focus,[type=datetime-local]:focus,[type=datetime]:focus,[type=email]:focus,[type=month]:focus,[type=number]:focus,[type=password]:focus,[type=search]:focus,[type=tel]:focus,[type=text]:focus,[type=time]:focus,[type=url]:focus,[type=week]:focus,textarea:focus,select:focus{background-color:#fff}[type=color]:hover,[type=color]:focus,[type=color]:active,[type=color].active,[type=date]:hover,[type=date]:focus,[type=date]:active,[type=date].active,[type=datetime-local]:hover,[type=datetime-local]:focus,[type=datetime-local]:active,[type=datetime-local].active,[type=datetime]:hover,[type=datetime]:focus,[type=datetime]:active,[type=datetime].active,[type=email]:hover,[type=email]:focus,[type=email]:active,[type=email].active,[type=month]:hover,[type=month]:focus,[type=month]:active,[type=month].active,[type=number]:hover,[type=number]:focus,[type=number]:active,[type=number].active,[type=password]:hover,[type=password]:focus,[type=password]:active,[type=password].active,[type=search]:hover,[type=search]:focus,[type=search]:active,[type=search].active,[type=tel]:hover,[type=tel]:focus,[type=tel]:active,[type=tel].active,[type=text]:hover,[type=text]:focus,[type=text]:active,[type=text].active,[type=time]:hover,[type=time]:focus,[type=time]:active,[type=time].active,[type=url]:hover,[type=url]:focus,[type=url]:active,[type=url].active,[type=week]:hover,[type=week]:focus,[type=week]:active,[type=week].active,textarea:hover,textarea:focus,textarea:active,textarea.active,select:hover,select:focus,select:active,select.active{outline:none;border-color:#FFFFFF}[type=color]::-webkit-input-placeholder,[type=date]::-webkit-input-placeholder,[type=datetime-local]::-webkit-input-placeholder,[type=datetime]::-webkit-input-placeholder,[type=email]::-webkit-input-placeholder,[type=month]::-webkit-input-placeholder,[type=number]::-webkit-input-placeholder,[type=password]::-webkit-input-placeholder,[type=search]::-webkit-input-placeholder,[type=tel]::-webkit-input-placeholder,[type=text]::-webkit-input-placeholder,[type=time]::-webkit-input-placeholder,[type=url]::-webkit-input-placeholder,[type=week]::-webkit-input-placeholder,textarea::-webkit-input-placeholder,select::-webkit-input-placeholder{color:#000000}[type=color]:-moz-placeholder,[type=date]:-moz-placeholder,[type=datetime-local]:-moz-placeholder,[type=datetime]:-moz-placeholder,[type=email]:-moz-placeholder,[type=month]:-moz-placeholder,[type=number]:-moz-placeholder,[type=password]:-moz-placeholder,[type=search]:-moz-placeholder,[type=tel]:-moz-placeholder,[type=text]:-moz-placeholder,[type=time]:-moz-placeholder,[type=url]:-moz-placeholder,[type=week]:-moz-placeholder,textarea:-moz-placeholder,select:-moz-placeholder{color:#000000;opacity:1}[type=color]::-moz-placeholder,[type=date]::-moz-placeholder,[type=datetime-local]::-moz-placeholder,[type=datetime]::-moz-placeholder,[type=email]::-moz-placeholder,[type=month]::-moz-placeholder,[type=number]::-moz-placeholder,[type=password]::-moz-placeholder,[type=search]::-moz-placeholder,[type=tel]::-moz-placeholder,[type=text]::-moz-placeholder,[type=time]::-moz-placeholder,[type=url]::-moz-placeholder,[type=week]::-moz-placeholder,textarea::-moz-placeholder,select::-moz-placeholder{color:#000000;opacity:1}[type=color]:-ms-input-placeholder,[type=date]:-ms-input-placeholder,[type=datetime-local]:-ms-input-placeholder,[type=datetime]:-ms-input-placeholder,[type=email]:-ms-input-placeholder,[type=month]:-ms-input-placeholder,[type=number]:-ms-input-placeholder,[type=password]:-ms-input-placeholder,[type=search]:-ms-input-placeholder,[type=tel]:-ms-input-placeholder,[type=text]:-ms-input-placeholder,[type=time]:-ms-input-placeholder,[type=url]:-ms-input-placeholder,[type=week]:-ms-input-placeholder,textarea:-ms-input-placeholder,select:-ms-input-placeholder{color:#000000}.is-filled [type=color],.is-filled [type=date],.is-filled [type=datetime-local],.is-filled [type=datetime],.is-filled [type=email],.is-filled [type=month],.is-filled [type=number],.is-filled [type=password],.is-filled [type=search],.is-filled [type=tel],.is-filled [type=text],.is-filled [type=time],.is-filled [type=url],.is-filled [type=week],.is-filled textarea,.is-filled select{padding-top:1.7rem;padding-bottom:0.7rem}input:disabled,input[readonly],textarea:disabled,textarea[readonly]{background-color:#fff;cursor:default}input::-webkit-input-placeholder{line-height:normal !important}textarea{resize:none;min-height:120px;line-height:normal}select{background-image:url(../images/select-arrow.svg);background-size:16px auto;padding-top:0.5rem;padding-bottom:0.5rem;padding-right:2.6rem;background-size:right -16px center}select:-moz-focusring{color:transparent;text-shadow:0 0 0 #000}@media screen and (-ms-high-contrast:active),(-ms-high-contrast:none){select::-ms-expand{display:none}select:focus::-ms-value{background:transparent;color:grey}}[name="date_of_birth"]{background-color:#fff !important}[name="date_of_birth"].hasDatepicker{cursor:pointer}.input-group input{height:auto;background:#fff;border-radius:0}.input-group .input-group-button{background:#4A1639}.input-group .button{background:#4A1639;color:#fff;font-size:14px;font-weight:700}.input-group i{display:block}.input-group.mod-rounded input{border-radius:5px 0 0 5px;padding:1.3rem;border-right:0}.input-group.mod-rounded .input-group-button{border-radius:0 5px 5px 0}.input-group.mod-rounded .button{border-radius:0 5px 5px 0}.input-group.mod-simple input{border:0;font-size:0.873rem;padding:1.6rem}.input-group.mod-simple input::-webkit-input-placeholder{color:#000000}.input-group.mod-simple input:-moz-placeholder{color:#000000;opacity:1}.input-group.mod-simple input::-moz-placeholder{color:#000000;opacity:1}.input-group.mod-simple input:-ms-input-placeholder{color:#000000}.input-group.mod-simple .button{font-weight:500;font-size:1.16rem}.input-group.mod-icon{background:#fff;border-radius:5px;border:1px solid #FFFFFF}.input-group.mod-icon input{border:0}.input-group.mod-icon input::-webkit-input-placeholder{color:#b3b3b3}.input-group.mod-icon input:-moz-placeholder{color:#b3b3b3;opacity:1}.input-group.mod-icon input::-moz-placeholder{color:#b3b3b3;opacity:1}.input-group.mod-icon input:-ms-input-placeholder{color:#b3b3b3}.input-group.mod-icon .input-group-button{background:transparent}.input-group.mod-icon .button{background:transparent;color:#000;font-size:1.8rem;font-weight:normal;padding:0 1rem}input[type="checkbox"],input[type="radio"]{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}input[type="checkbox"]+label,input[type="radio"]+label{position:relative;padding:8px 0;line-height:1.2;padding-left:30px;margin-left:0;vertical-align:middle;user-select:none;display:block;margin:0;font-size:0.873rem;color:#000000}.filters input[type="checkbox"]+label,.filters input[type="radio"]+label{line-height:1.2;padding:4px 0;padding-left:24px;color:#000000}input[type="radio"]+label{display:inline-block;margin-right:1.5rem}input[type="checkbox"]+label:before,input[type="radio"]+label:before{box-sizing:content-box;content:"";position:absolute;top:50%;left:0;width:20px;height:20px;margin-top:-10px;text-align:center;border-radius:50%}.filters input[type="checkbox"]+label:before,.filters input[type="radio"]+label:before{width:14px;height:14px;margin-top:-7px}input[type="checkbox"]+label:before{background:#FFFFFF}.filters input[type="checkbox"]+label:before{background:#94C6C8}input[type="radio"]+label:before{background:#FFFFFF}input[type="checkbox"]+label:after,input[type="radio"]+label:after{box-sizing:content-box;content:"";font-family:"sw-icons" !important;position:absolute;top:50%;left:0;width:20px;height:20px;text-align:center;margin-top:-10px;line-height:20px;-webkit-transform:scale(0);-moz-transform:scale(0);-ms-transform:scale(0);transform:scale(0);transform-origin:50%;transition:transform 200ms ease-out;font-size:12px}.filters input[type="checkbox"]+label:after,.filters input[type="radio"]+label:after{font-size:9px;width:14px;height:14px;margin-top:-7px;line-height:14px}input[type="radio"]+label:after{color:#FFFFFF}input[type="checkbox"]+label:after{color:#FFFFFF}input[type="checkbox"]:checked+label:after,input[type="radio"]:checked+label:after{-webkit-transform:scale(1);-moz-transform:scale(1);-ms-transform:scale(1);transform:scale(1)}.delivery-date-container{position:relative}.delivery-date-container .field-label{left:3.7rem}.delivery-date-container input{padding-left:3.7rem;cursor:pointer}.delivery-date-container:after{content:"";font-family:"sw-icons" !important;position:absolute;top:50%;-webkit-transform:translateY(-50%);-moz-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%);left:1.3rem;font-size:1.7rem;pointer-events:none}.ui-datepicker select{height:auto;padding-right:0;padding-left:10px;background-position:center right 8px;background-size:8px}.ui-datepicker .ui-datepicker-header .ui-datepicker-prev,.ui-datepicker .ui-datepicker-header .ui-datepicker-next{top:calc(50% - .9em)}.address-information:not(.open){border-bottom:1px solid #FFFFFF;padding-bottom:1rem;margin-bottom:1rem}.voucher-form .button{background:#FFFFFF;color:#FFFFFF}@media screen and (min-width:64em){.voucher-form input[type="radio"]+label{padding-right:0;margin:0}.voucher-form fieldset{padding-top:1rem}.voucher-form fieldset input[type="radio"]+label:not(:last-of-type){padding-right:1.5rem}}@media screen and (max-width:63.9375em){.voucher-form fieldset{margin-bottom:0.7rem}}.row{max-width:85rem}.bg-shade{background-color:#ddd}.section-block{padding:3rem 0}.section-block.with-items{padding-bottom:1rem}.section-block.featured-categories{padding-bottom:1.2rem;background:#FFFFFF}.featured-products .title{color:#000000}.featured-products .product-slider-header .arrow{color:#000000}.is-dropdown-submenu{z-index:3}.collection{padding-top:0.5rem}@media screen and (min-width:64em){.videos-container{padding-top:1.5rem}.boxes-container{padding-top:1.5rem}.collection{padding-top:1.5rem}}.items-container .item-box--list{display:none}.items-container.list .item-box{display:none}.items-container.list .item-box--list{display:block;margin-bottom:1rem}.js .hide-for-js{display:none}*:focus{outline:none !important}body{background-color:#F7F7F7;color:#000000;font-size:13px}.reveal-overlay{background:transparent}.is-reveal-open .reveal-overlay{background-color:rgba(255, 255, 255, 0.8)}.row.expanded .row{margin-right:-0.625rem;margin-left:-0.625rem}@media screen and (min-width:40em){.row.expanded .row{margin-right:-0.9375rem;margin-left:-0.9375rem}}@media screen and (min-width:64em){.content-bg{min-height:350px;min-height:25.4545454545rem}}@media screen and (min-width:40em){.content-bg{background:#fff;padding:30px 35px;padding:2.1818181818rem 2.5454545455rem}}.content-bg p{font-size:13px !important}.page-description{font-size:13px;margin-bottom:1rem}.page-description p:last-of-type{margin:0}.bg-box{background:#F7F7F7;padding:30px 35px;padding:2.1818181818rem 2.5454545455rem}.content{padding-top:2rem;padding-bottom:2rem}@media screen and (min-width:64em){.content.auto-page{padding-top:3rem}}.homepage .content{padding-top:0}@media screen and (min-width:64em){.homepage .content{padding-top:0}}.wide-container{padding-left:10px;padding-left:0.7272727273rem;padding-right:10px;padding-right:0.7272727273rem;margin-left:auto;margin-right:auto;max-width:1600px}@media (min-width:74.9375em){.wide-container{padding-left:50px;padding-left:3.6363636364rem;padding-right:50px;padding-right:3.6363636364rem}}.row,.row.expanded{max-width:1600px}.page-title{font-size:26px;font-weight:500;margin-bottom:1rem;color:#000000}.page-title.title-icon span{padding-left:2.3rem;position:relative}.page-title.title-icon span:before{font-family:"sw-icons" !important;font-size:1.7rem;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;left:0;position:absolute;top:50%;-webkit-transform:translateY(-50%);-moz-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%)}.page-title.mod-account span:before{content:""}.collection-container .page-title{font-weight:300}.page-subtitle{font-size:16px;font-size:1.1636363636rem;font-weight:500;margin-bottom:1rem}.content-sidebar{padding-top:2rem}.breadcrumbs{font-family:"IBM Plex Sans", serif}.breadcrumbs li{font-size:13px;text-transform:none}.breadcrumbs a{color:#000000}.breadcrumbs:not(.mod-show){display:none !important}.body-content{overflow-x:hidden;position:relative}img[src*="/tracker"]{position:absolute;top:-100%;z-index:-1}.bg{background-color:#F7F7F7}.col-cell.nowrap{white-space:nowrap}.home-welcome{color:#000000}.home-welcome h1{font-weight:500;font-size:24px;font-size:1.7454545455rem;color:#000000}.home-banner-info{font-size:1.16rem;font-weight:700;font-family:"IBM Plex Sans", serif;padding:1rem;background:#FFFFFF;color:#000000;padding:1.45rem;line-height:1}.home-banner-mobile .home-banner-info{margin-top:20px}.row.expanded .home-banner .row{margin:0 -8px}.home-banner .column{padding:0 8px}.home-banner .image-container{padding-top:78%}.home-banner .mod-small .image-container{padding-top:calc(39% - 8px)}.home-banner .home-banner-inner{position:relative}.home-banner .home-banner-info{position:absolute;left:0;bottom:25px;font-size:1.3rem}.home-banner .mod-small .home-banner-info{padding:1.3rem 1.45rem;bottom:20px;font-size:1.01rem}.home-banner .home-banner-inner+.home-banner-inner{margin-top:16px}.home-banner .home-banner-inner+.home-banner-inner .home-banner-info{left:auto;right:0}.home-carousel-slide{position:relative}.home-carousel-overlay{position:absolute;top:50%;-webkit-transform:translateY(-50%);-moz-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%);left:0;right:0;text-align:center}.home-carousel-overlay-mobile{text-align:center;padding:1rem}.arrow{padding:0.5rem;position:absolute;top:50%;z-index:2}.arrow-prev{left:0}.arrow-next{right:0}.slick-slider:not(.slick-initialized){position:absolute;top:0;z-index:-999;visibility:hidden}.slick-slider.slick-initialized{visibility:visible}.slick-slider .arrow{position:absolute;top:50%;-webkit-transform:translateY(-50%);-moz-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%);z-index:1;padding:1rem;color:#000;font-size:1.3rem;line-height:1}.slick-slider .prev{left:1rem}.slick-slider .next{right:1rem}.slick-slider.slick-vertical .arrow{position:static;text-align:center;-webkit-transform:none;-moz-transform:none;-ms-transform:none;transform:none;width:100%}.home-banner-mobile .arrow{padding:0.7rem 0.5rem;background:#FFFFFF;color:#000000}.home-banner-mobile:not(.slick-initialized){position:absolute;z-index:-999;opacity:0;top:0;left:0;height:0;visibility:hidden}.product-slider-container:not(.sw-section){padding-bottom:1rem}.product-slider-container .product-slider:not(.slick-initialized){opacity:0}.product-slider-header{padding:2.5rem 0;color:#000000;line-height:1}.sw-section .product-slider-header{padding-top:0}.product-slider-header .arrow{position:static;font-size:1.3rem;color:#000000 !important}.product-slider-header span{display:inline-block}.product-slider-header .title{font-weight:500;font-size:22px;font-family:"IBM Plex Sans", serif;margin-right:0.7rem;color:#000000}.product-slider-header .title-embedded-categories{font-weight:500;font-size:22px;font-family:"IBM Plex Sans", serif;margin-right:0.7rem;color:#000000}.product-slider-header .title-embedded-brands{font-weight:500;font-size:22px;font-family:"IBM Plex Sans", serif;margin-right:0.7rem;color:#FFFFFF}.slider-handle{width:16px;height:16px;border-radius:50%;background-color:#319295}.slider-handle:focus,.slider-handle:hover{background-color:#319295}.slider{background-color:#F3F0EE;margin-top:0.5rem;margin-bottom:1.25rem;height:5px}.slider-fill{background-color:#F3F0EE;height:5px}.slider-range-values{font-weight:400;font-size:13px;color:#000000}.slider-range-values strong{font-weight:700}.range-min:before,.range-max:before{content:attr(data-currency)}.side-menu .filters{margin-bottom:2rem;margin-top:-0.7rem}.filters .accordion{background:transparent;position:relative}.filters .accordion-content{display:block !important}.filters .accordion-content[aria-hidden="true"]{position:absolute;left:0;opacity:0;z-index:-999}.filters .accordion-item,.filters .accordion-title,.filters .accordion-content{border:0;background:transparent;padding:0}.filters .accordion-content{padding-bottom:0.7rem}.filters .accordion-title{font-size:1.01rem;font-weight:700;color:#000000;padding:1rem 0;font-family:"IBM Plex Sans", serif}.filters .accordion-title:before{font-family:"sw-icons" !important;content:"";font-size:1.16rem;right:0}.filters .is-active>.accordion-title:before{content:""}.filters :last-child:not(.is-active)>.accordion-title,.filters :last-child>.accordion-content:last-child{border:0}.side-nav-title{font-size:1.01rem;font-weight:700;color:#004E9B;margin-bottom:1rem;font-family:"IBM Plex Sans", serif}.side-nav-title.mod-light{font-size:1.16rem;font-weight:500;margin-bottom:0.7rem}.side-nav a{color:#004E9B}.side-nav .menu>li>a{font-size:0.945rem;padding-right:0}.side-nav .side-nav-menu>li>a{font-size:1.01rem;padding-left:0.9rem;color:#004E9B}.side-nav .submenu{padding-bottom:0.7rem}.side-nav .submenu>li>a{font-size:0.873rem;padding-top:0.4rem;padding-bottom:0.4rem;color:#004E9B}.side-nav .is-accordion-submenu-parent[aria-expanded="true"]>a>span{text-decoration:underline}.side-nav .is-accordion-submenu-parent>a:after{right:auto;left:0;content:"";font-family:"sw-icons" !important;width:auto;height:auto;font-size:0.6rem;margin-top:-0.3rem;border:0;-webkit-transform:none;-moz-transform:none;-webkit-transform:none;-moz-transform:none;-ms-transform:none;transform:none}.side-nav .is-accordion-submenu-parent[aria-expanded="true"]>a:after{content:"";-webkit-transform:none;-moz-transform:none;-webkit-transform:none;-moz-transform:none;-ms-transform:none;transform:none}.blog-content{background:#fff;padding:30px 35px;padding:2.1818181818rem 2.5454545455rem;margin-top:1.5rem}.blog-post .h2{font-size:28px;font-size:2.0363636364rem;font-weight:500}.blog-post .blog-post-meta{font-size:14px;font-size:1.0181818182rem;font-weight:500}.blog-post-heading{font-family:"IBM Plex Sans", serif;position:relative}.blog-post-heading.padding-right{padding-right:30px;padding-right:2.1818181818rem}.blog-share-toggle{position:absolute;right:0;top:0;cursor:pointer;font-size:25px;font-size:1.8181818182rem}.blog-share{position:absolute;right:0;top:30px;top:2.1818181818rem;margin-top:0.5rem}.blog-share .share-menu{background:#F7F7F7}.side-nav-blog ul{margin-bottom:1.8rem}.side-nav-blog li{display:block;margin-bottom:5px}.side-nav-blog .menu>li>a{display:block;border-radius:3px;font-weight:500;font-size:0.873rem;font-family:"IBM Plex Sans", serif;padding:1.09rem 1.45rem;background-color:#FFFFFF;color:#000000}.side-nav-blog .blog-categories a{border-left:5px solid #319295}.side-nav-blog .blog-categories a.active{border-color:#4A1639}.side-nav-blog .blog-archive a{border-left:5px solid #4A1639}.side-nav-blog .blog-archive a.active{border-color:#319295}.side-nav-blog .blog-archive{margin-left:-7px;margin-right:-7px}.side-nav-blog .blog-archive li{width:50%;float:left;padding-left:7px;padding-right:7px}@media screen and (max-width:63.9375em){.side-nav-blog{margin-top:1.5rem}}.collection .reset-all-button{text-decoration:underline;display:inline-block;color:#000000;font-size:12px;font-size:0.8727272727rem;font-family:"Poppins", sans-serif}@media screen and (min-width:64em){.collection>.row>.column.large-3{width:calc(25% - 80px)}.collection>.row>.column.large-9{width:calc(75% + 80px)}.collection .show-sidebar{padding-left:2rem}.collection .show-sidebar .items-container.large-up-4 .product-box .row-table.item-buttons,.collection .show-sidebar .items-container.large-up-5 .product-box .row-table.item-buttons,.collection .show-sidebar .items-container.large-up-6 .product-box .row-table.item-buttons{display:block;width:100%}.collection .show-sidebar .items-container.large-up-4 .product-box .row-table.item-buttons .col-cell,.collection .show-sidebar .items-container.large-up-5 .product-box .row-table.item-buttons .col-cell,.collection .show-sidebar .items-container.large-up-6 .product-box .row-table.item-buttons .col-cell{display:block;width:100%;padding-right:0;margin-bottom:10px;margin-bottom:0.7272727273rem}.collection .show-sidebar .items-container.large-up-4 .product-box .row-table.item-buttons .col-cell:last-child,.collection .show-sidebar .items-container.large-up-5 .product-box .row-table.item-buttons .col-cell:last-child,.collection .show-sidebar .items-container.large-up-6 .product-box .row-table.item-buttons .col-cell:last-child{width:100%;margin-bottom:-5px;margin-bottom:-0.3636363636rem}.collection .show-sidebar .items-container.large-up-4 .product-box .row-table.item-buttons .col-cell a.wishlist-button,.collection .show-sidebar .items-container.large-up-5 .product-box .row-table.item-buttons .col-cell a.wishlist-button,.collection .show-sidebar .items-container.large-up-6 .product-box .row-table.item-buttons .col-cell a.wishlist-button{width:100%}.collection .show-sidebar .items-container.large-up-5 .quick-view-button>span,.collection .show-sidebar .items-container.large-up-6 .quick-view-button>span{display:none}.collection .show-sidebar .items-container.large-up-5 .quick-view-button i,.collection .show-sidebar .items-container.large-up-6 .quick-view-button i{left:50%;margin-left:-11px;margin-left:-0.8rem}}.collection .sort-form{margin-bottom:1.5rem}.sort-form form{margin-right:15px;margin-right:1.0909090909rem}@media screen and (min-width:64em){.sort-form form{margin-right:10px;margin-right:0.7272727273rem;width:300px;display:inline-block;vertical-align:middle}}@media screen and (max-width:63.9375em){.sort-form .col-cell:first-child{width:100%}.sort-form .col-cell:last-child{width:1%}}.sort-form .collection-controls{display:inline-block;vertical-align:middle}.sort-form .select-container{margin:0}.payment-list{list-style:none;margin:0;padding:0}.payment-list li{display:inline-block;margin-right:0.2em;margin-bottom:0.2em}.payment-list li img{height:23px;width:auto}.dropdown-pane:not(.is-open){z-index:0}.off-canvas.is-open~.off-canvas-content{position:relative;z-index:0}.off-canvas.is-open~.off-canvas-content .sticky.is-stuck{z-index:0}.account-link:after,.account-link:before{content:"";display:none;width:0;height:0;border-style:solid;border-width:0 10px 10px;border-color:transparent transparent #FFFFFF;position:absolute;z-index:11;top:100%;left:50%;-webkit-transform:translateX(-50%);-moz-transform:translateX(-50%);-ms-transform:translateX(-50%);transform:translateX(-50%)}.account-link:after{margin-top:-3px;border-color:transparent transparent #FFFFFF transparent;border-width:10px}.account-link:before{margin-top:-5px;border-color:transparent transparent #FAFAFA transparent;border-width:11px}.account-link.hover:after,.account-link.hover:before{display:block}.account-dropdown{background:#FFFFFF;width:auto;top:100% !important;min-width:255px;margin-top:16px;padding:0;text-align:left;border-color:#FAFAFA;font-size:0.945rem}.account-dropdown a,.account-dropdown button{color:#000000}.account-dropdown-header{background:#FFFFFF;padding:0.8rem 2rem 0.8rem 1rem;font-size:0.873rem;position:relative}.account-dropdown-header a{text-decoration:underline;color:#000000}.account-dropdown-header .close-button{color:#000000;font-size:1.7rem;right:0.5rem;top:50%;-webkit-transform:translateY(-50%);-moz-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%);margin:0;line-height:1;font-family:"Poppins", sans-serif;font-weight:100}.account-dropdown-menu a{padding:15px 5px;display:block;margin-left:10px;margin-right:10px}.account-dropdown-menu a i{padding-right:0.7rem;font-size:1.25rem;vertical-align:middle;color:#000000}.account-dropdown-menu a:hover,.account-dropdown-menu a.active{color:#000000}.account-dropdown-menu a:hover i,.account-dropdown-menu a.active i{color:#000000}.account-dropdown-menu a span{vertical-align:middle}.account-dropdown-menu li+li a{border-top:1px solid #FAFAFA}.header-currency,.header-account{display:inline-block;vertical-align:middle}.header-account{position:relative}@media screen and (min-width:40em){.header-currency{position:relative}}.currency-dropdown{border:0;box-shadow:0 0 15px #ccc;margin-top:15px;min-width:435px;font-size:0.945rem;padding:1.5rem 1.4rem;padding-top:2rem;color:#3b3a3a}@media screen and (min-width:40em){.currency-dropdown{top:100% !important}}.currency-dropdown-selected{color:#000000;line-height:1.2}.currency-dropdown-heading{font-size:1.3rem;margin-bottom:1rem;text-align:center;font-weight:700;text-align:center;color:#000000}.currency-dropdown-list{height:19rem;overflow-y:scroll;margin-top:1.5rem;margin-right:-1rem}.currency-dropdown-list>li{margin-right:1rem;margin-left:0.5rem}.currency-dropdown-list a{padding:0.5rem;display:block;color:#000000;position:relative;padding-left:32px}.currency-dropdown-list a.active{border-bottom:1px solid #eee;margin-bottom:1rem;color:#000000}.currency-dropdown-list a.active .currency-symbol{color:#999999}.currency-dropdown-list a.active .currency-region:after{content:"(selected)";color:#999999;padding-left:0.25rem}@media screen and (max-width:39.9375em){.currency-dropdown{width:100%;z-index:-999;max-width:100%;min-width:unset;box-shadow:none;padding:1.5rem 1rem;padding-top:2rem;left:0 !important}.currency-dropdown.is-open{z-index:10}.currency-dropdown-list{height:auto;margin-right:0;overflow:visible}.currency-dropdown-list>li{margin-left:0;margin-right:0}.currency-dropdown-list a{padding-right:0}}.currency-dropdown.left{top:100% !important;left:auto !important;right:0 !important}.currency-region{position:relative;width:81%;padding-left:0.3rem;display:inline-block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;vertical-align:middle}.currency-symbol{float:right}.currency-flag{position:absolute;left:0.3rem;top:50%;margin-top:-11px;width:22px;height:22px;border-radius:100%;z-index:1;overflow:hidden}.flag{width:32px;height:32px;display:block;position:absolute;z-index:0;top:-5px;left:-5px}.header-currency-select{position:relative}.header-currency-select .currency-flag{left:0}.header-currency-select .currency-flag .flag{margin:0}.header-currency-select:before,.header-currency-select:after{display:none;position:absolute;content:"";width:0;height:0;top:100%;margin-top:5px;left:50%;margin-left:-6px;border-left:6px solid transparent;border-right:6px solid transparent;border-bottom:10px solid #fff;z-index:11}@media screen and (max-width:39.9375em){.header-currency-select:before,.header-currency-select:after{display:none !important}}.header-currency-select:before{margin-top:4px;margin-left:-7px;border-left:7px solid transparent;border-right:7px solid transparent;border-bottom:10px solid rgba(204, 204, 204, 0.31)}.header-currency-select.hover:before,.header-currency-select.hover:after{display:block}.pagination a{border:1px solid #FFFFFF;border-radius:5px;background:transparent;color:#004E9B;padding:0.9rem 1.09rem;display:block;line-height:1}.pagination li{vertical-align:middle;margin:0}.pagination li.current-item,.pagination li.current{display:inline-block}.pagination li+li{margin-left:10px}.pagination .current,.pagination a:not(.disabled):hover{color:#FFFFFF;background:#0091B9;border-color:#0091B9;border-radius:5px;line-height:1}.pagination .current{padding:0.9rem 1.09rem;border:1px solid #0091B9}.pagination .pagination-previous a,.pagination .pagination-next a{padding:0.9rem 1.09rem}.pagination .pagination-previous a span,.pagination .pagination-next a span{vertical-align:middle}.pagination .pagination-previous a:hover,.pagination .pagination-next a:hover{border-color:#FFFFFF}.pagination .pagination-previous.disabled,.pagination .pagination-next.disabled{padding:0.9rem 1.09rem;border:1px solid #FFFFFF;border-radius:5px;background:transparent;line-height:1}.pagination .pagination-previous.disabled span,.pagination .pagination-next.disabled span{vertical-align:middle}.pagination .pagination-previous.disabled:before,.pagination .pagination-previous a:before{content:"";margin-right:0.5rem}.pagination .pagination-next.disabled:after,.pagination .pagination-next a:after{content:"";margin-left:0.5rem}.pagination .pagination-previous.disabled:before,.pagination .pagination-previous a:before,.pagination .pagination-next.disabled:after,.pagination .pagination-next a:after{font-family:"sw-icons" !important;vertical-align:middle}@media screen and (max-width:39.9375em){.pagination{text-align:center;position:relative}.pagination .pagination-previous{position:absolute;left:0;top:0}.pagination .pagination-next{position:absolute;right:0;top:0}}.social-menu{margin:0;padding:0;min-width:180px}.social-menu li{text-align:right;margin:0}.social-menu li+li{border-top:1px solid #f5f4f2}.social-menu.menu>li>a{position:relative;color:#000000;padding:1rem 10px;padding-right:45px;line-height:1;display:block;font-size:11px;font-size:0.8rem}.social-menu.menu>li>a i{display:inline-block;width:22px;height:22px;position:absolute;top:50%;right:10px;margin-top:-11px;color:#fff;text-align:center;line-height:22px;border-radius:50%}.social-menu.menu>li>a.facebook i{background-color:#376cac}.social-menu.menu>li>a.twitter i{background-color:#00aae3}.social-menu.menu>li>a.pinterest i{background-color:#f72f33}.social-menu.menu>li>a.google i{background-color:#f6432f}.social-menu.menu>li>a.tumblr i{background-color:#2e4861}.social-menu.menu>li>a.share-friend i{background-color:#43d5b0}.announcement-bar{background-color:#0091B9;color:#FFFFFF;border:0;padding:20px 0;padding:1.4545454545rem 0;font-size:1.01rem;font-weight:600;line-height:1.1;margin:0}.homepage .announcement-bar{margin-bottom:0rem}@media screen and (min-width:64em){.homepage .announcement-bar{margin-bottom:0rem}}.announcement-bar a{color:#FFFFFF;text-decoration:underline}.announcement-bar p{margin-bottom:0}.announcement-bar p+p{margin-top:1rem}.reveal{border:0;box-shadow:none}.reveal .h2{line-height:1.2;font-weight:500;font-size:24px;font-size:1.7454545455rem}.reveal .close-button{opacity:1;font-size:18px;font-size:1.3090909091rem;color:#000;top:15px;top:1.0909090909rem;right:15px;right:1.0909090909rem}.custom-reveal{max-width:700px;width:auto;padding:1.5rem;font-size:0.945rem;color:#fff;background-color:#94c6c8}.custom-reveal h2{color:#FFFFFF;font-size:2.32rem;font-weight:500}.custom-reveal .no-bg{color:#fff;margin-top:0.5rem}@media screen and (min-width:64em){.custom-reveal{padding:40px;padding:2.9090909091rem}}.custom-reveal .close-button{opacity:1;font-size:18px;font-size:1.3090909091rem;color:#fff;top:15px;top:1.0909090909rem;right:15px;right:1.0909090909rem}.stock-request-reveal{background-color:#0091B9;color:#FFFFFF}.stock-request-reveal h2{color:#FFFFFF}.stock-request-reveal .close-button{color:#FFFFFF}.stock-request-reveal .no-bg{color:#FFFFFF}#recommendModal{background-color:#94C6C8;color:#FFFFFF}#recommendModal .close-button{color:#FFFFFF}#recommendModal .no-bg{color:#000000}#verifyAgeModal{background:#FFFFFF;color:#FFFFFF;max-width:700px;width:auto;padding:1.5rem;font-size:0.945rem}#verifyAgeModal .h2{color:#FFFFFF;font-size:2.32rem;font-weight:500;margin-bottom:1rem}#verifyAgeModal p{margin-bottom:1.5rem}#verifyAgeModal button{margin-top:1rem;margin-bottom:1rem}#verifyAgeModal .confirm{color:#FFFFFF}#verifyAgeModal .decline{color:#FFFFFF}@media screen and (min-width:64em){#verifyAgeModal{padding:2.45rem}}#newsletterModal{padding:0;max-width:700px;text-align:center;width:auto}#newsletterModal .modal-heading{background:#004E9B;padding:1.3rem 2.8rem;line-height:1;position:relative}#newsletterModal .modal-heading .h2{color:#FFFFFF;margin:0;padding:0;line-height:1;font-weight:500;font-size:1.6rem}@media screen and (max-width:39.9375em){#newsletterModal .modal-heading .h2{font-size:1.4rem}}#newsletterModal .modal-heading p{color:white}#newsletterModal .modal-heading p:first-of-type{margin-top:12px}#newsletterModal .modal-heading .close-button{color:#FFFFFF;font-size:1.3rem;right:1.5rem;position:absolute;top:50%;-webkit-transform:translateY(-50%);-moz-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%)}#newsletterModal .modal-form{background:#FF6500;padding:25px 1.5rem}#newsletterModal .modal-image-container{background:#FFFFFF;padding:1.5rem}#newsletterModal .input-group input{background:#FFFFFF;color:#000000}#newsletterModal .input-group input::-webkit-input-placeholder{color:#000000}#newsletterModal .input-group input:-moz-placeholder{color:#000000;opacity:1}#newsletterModal .input-group input::-moz-placeholder{color:#000000;opacity:1}#newsletterModal .input-group input:-ms-input-placeholder{color:#000000}#newsletterModal .input-group .input-group-button{background:#0091B9}#newsletterModal .input-group .button{background:#0091B9;color:#FFFFFF}@media screen and (min-width:64em){#newsletterModal .modal-image-container{padding:2.45rem 1.5rem}#newsletterModal .modal-image{max-width:600px;margin:0 auto}}.item-image{position:relative;z-index:0}.item-image.mod-img-second>a.image-container{transition-duration:300ms;transition:opacity 0.5s ease-in-out}.item-image.mod-img-second>a.image-container.mod-swap-container{opacity:0;padding-top:0}.item-image.mod-img-second:hover>a.image-container:first-of-type{opacity:0;padding-top:0}.item-image.mod-img-second:hover>a.image-container.mod-swap-container{opacity:1;padding-top:100%}.item-image.mod-img-zoom .image-container img{z-index:1;display:block;transition:transform 0.5s}.item-image.mod-img-zoom:hover .image-container img{-webkit-transform:scale(1.15);-moz-transform:scale(1.15);-ms-transform:scale(1.15);transform:scale(1.15)}.item-image.mod-img-zoom-out .image-container img{z-index:1;display:block;transition:transform 0.5s}.item-image.mod-img-zoom-out:hover .image-container img{-webkit-transform:scale(0.9);-moz-transform:scale(0.9);-ms-transform:scale(0.9);transform:scale(0.9)}.item-box{margin-bottom:2rem;text-align:center}.section-block .slick-slider .item-box{margin-bottom:0}.item-box .label.primary{margin-left:0.5rem}.item-title{line-height:normal;font-weight:normal;font-size:0.945rem;margin-top:1rem;font-family:"IBM Plex Sans", serif}.item-title a{color:inherit;display:block}.category-box .item-title{font-weight:700;font-size:1.16rem;padding:1.09rem;margin:0;color:#004E9B;background:#FFFFFF}.product-box .item-title{font-size:1.01rem;font-family:"Poppins", sans-serif;font-weight:normal;color:#000000;font-weight:normal;margin:0;padding-top:1rem;padding-bottom:0.5rem;line-height:1.2}.item-button{position:relative;line-height:1;padding:0 1.09rem;display:block;font-size:0.945rem;border-radius:5px}.item-button i{font-size:1.45rem;position:absolute;top:50%;-webkit-transform:translateY(-50%);-moz-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%);left:0}.quick-view-button{width:100%;font-weight:600;background:#BAE4F0;color:#004E9B;font-family:"Poppins", sans-serif;font-size:14px;padding-left:50px;height:50px;line-height:50px}.quick-view-button i{left:1.09rem;font-size:1.6rem}.quick-view-button:hover{color:#004E9B}.wishlist-button{width:50px;height:50px;background:#FF6500;color:#FFFFFF}.wishlist-button i{text-align:center;display:block;width:100%}.wishlist-button:hover,.wishlist-button:focus,.wishlist-button:active,.wishlist-button.active{outline:none;color:#FFFFFF}@media screen and (max-width:39.9375em){.wishlist-button{padding:0;background:transparent;width:auto;height:auto;display:inline-block;vertical-align:middle}.wishlist-button i{position:static;-webkit-transform:translateY(0);-moz-transform:translateY(0);-ms-transform:translateY(0);transform:translateY(0)}}.item-stock-container{margin-top:0.5rem}@media screen and (min-width:40em){.item-stock-container{margin-top:1rem}}.item-stock{font-size:13px;font-weight:600;position:relative;display:block;padding-left:1.6rem}.item-stock i{position:absolute;top:50%;margin-top:-0.4725rem;left:0;font-size:13px}.item-stock span{display:inline-block;height:0.945rem;vertical-align:middle}@media (max-width:490px){.item-stock{padding-left:0}.item-stock i{display:none}}.item-in-stock{color:#3DAD00}.item-out-of-stock{color:#C92314}.category-box,.media-box{text-align:center}.category-box{margin-bottom:1.8rem}.category-box .item-title-box,.category-box .box-data{background:#FFFFFF}.category-box .box-data{padding:15px;padding:1.0909090909rem}.category-box .item-title{font-size:15px !important}.category-box .category-from-price{font-size:13px !important}.brand-box .item-title{font-size:18px !important}.product-box{background:#fff;border-radius:5px;border:1px solid #dfdfdf;padding:15px;text-align:left}.product-box .item-buttons .col-cell{white-space:nowrap}.product-box .item-buttons .col-cell:first-child{width:100%;padding-right:10px}.product-box .item-buttons .col-cell:last-child{width:1%}.product-box .item-title{font-size:15px !important}.product-box .item-brand-title{font-size:14px !important}.product-box .item-subscription{color:#238B8E;font-size:12px;font-size:0.8727272727rem;margin-bottom:0;font-weight:500;line-height:1.2;text-decoration:underline}.product-box .price{font-size:22px;color:#004E9B;font-family:"IBM Plex Sans", serif;line-height:1;font-weight:700;display:inline-block}.product-box .price span{display:block}.product-box .price span:first-letter{font-size:1.01rem}.product-box .mod-sale{color:#004E9B;margin-right:0.5rem}.product-box .mod-sale+.price{color:#000000;font-size:15px;text-decoration:line-through}.product-box .item-image{margin-bottom:1.45rem}.product-box .box-data{padding-bottom:5px}@media screen and (max-width:39.9375em){.product-box .box-data{padding-bottom:0}}.item-box--list{font-size:0.873rem;margin-bottom:1.6rem}.item-box--list .item-title{font-size:1.3rem;font-family:"IBM Plex Sans", serif}.item-box--list .label.primary{margin-left:0.5rem}.item-box--list .item-buttons{margin-bottom:1.45rem}.item-box--list .item-stock-container{margin:0.7rem 0}.item-box--list .list-item-prices{margin-bottom:1.45rem}@media screen and (max-width:39.9375em){.item-box--list .list-item-prices{margin-bottom:1rem}}@media screen and (min-width:64em){.blog-page-container{padding-top:1rem}.blog-page-container>.column:first-child{padding-right:2rem}}.article-box{margin-bottom:1.5rem;font-family:"IBM Plex Sans", serif}.article-box .article-info{padding:1.45rem 1.6rem;background:#fff}.article-box .article-title{margin-bottom:1rem;line-height:1;font-size:16px !important;font-weight:500;color:#000000}.article-box .article-title a{color:#000000}.article-box .blog-post-meta{display:block;line-height:1;font-size:13px;color:#000000}.article-box .blog-post-meta+.article-description{margin-top:10px;margin-top:0.7272727273rem}.article-box .article-description{font-weight:200;line-height:1.1;font-size:14px}.article-box .article-description+.blog-post-button{margin-top:0}.article-box .article-description *{line-height:1.1}.items-container .options,.items-container .alt_options,.items-container .extras,.items-container .customise,.items-container .files{display:none}.items-container .price+.price{text-decoration:line-through}.label.primary{font-size:14px;padding:0;margin:0;background:transparent;text-align:left}.label.two-for-one{color:#0091B9}.label.three-for-two{color:#0091B9}.label.new{background:#FF6500;color:#FFFFFF}.label.secondary{font-size:0.8rem;text-transform:uppercase;text-align:center;font-weight:700;padding:8px 0.7rem;height:25px;white-space:nowrap}.item-image .label.secondary,.image-container .label.secondary,.product-main-image .label.secondary{position:absolute;z-index:2;left:0;top:0}.contact-box,.contact-address{text-align:center}.contact-box p,.contact-address p{line-height:1.2;margin:0}.contact-box{color:#004E9B;font-size:1.8rem;font-weight:500;font-family:"IBM Plex Sans", serif}.contact-information .contact-box{display:inline-block;vertical-align:middle}.contact-box a{font-size:1.16rem;text-decoration:underline}.contact-box p,.contact-box a{color:#004E9B}@media screen and (min-width:40em){.contact-box{padding:1rem 2rem}.contact-box+.contact-box{position:relative}.contact-box+.contact-box:before{content:"";position:absolute;top:0;bottom:0;left:-1px;background:#dfdfdf;width:1px}.contact-box+.contact-box:after{content:"or";position:absolute;background:#FFFFFF;font-size:1.23rem;font-weight:500;font-family:museo-slab, serif;margin-bottom:1rem;color:#FF6500;width:50px;height:50px;border-radius:50%;line-height:50px;top:50%;margin-top:-25px;left:-25px}}@media screen and (max-width:39.9375em){.bg-box{background:transparent;margin:0;padding:0}.contact-box+.contact-box{margin-top:2rem}}.contact-address{color:#000000;font-size:0.873rem}.contact-icon{width:100px;height:100px;line-height:100px;text-align:center;border-radius:50%;margin:0 auto;display:block;margin-bottom:1.09rem;background:#FFFFFF;color:#FF6500}.contact-icon i{font-size:52px;line-height:100px}.contact-subtitle{font-size:1.23rem;font-weight:500;font-family:"IBM Plex Sans", serif;margin-bottom:1rem;line-height:1;color:#004E9B;display:block}.contact-address .contact-subtitle{color:#004E9B}.stockist-container{background:#fbfbf9;padding-top:1.875rem}.stockist-container .input-group{margin-bottom:2.5rem}.stockist-box{background:#fff;padding:1.6rem;border-radius:5px;font-size:0.945rem;line-height:normal}.stockist-box h4,.stockist-box h5{font-size:1.01rem;margin-bottom:0.5rem}.stockist-box h4{color:#4A1639}.stockist-box h5{font-family:"Poppins", sans-serif}.stockist-box .stockist-map a{text-decoration:underline;text-transform:lowercase;color:#4A1639}@media screen and (max-width:39.9375em){.stockist-box h5{margin-top:1rem;margin-bottom:0.3rem}}.content-centered{text-align:center}.content-centered h1{margin-bottom:1.5rem}.content-centered.content a{text-decoration:underline;color:#000000}@media screen and (min-width:64em){.margin-bottom-lg{margin-bottom:180px;margin-bottom:13.0909090909rem}}.product-offer-title{color:#FF6500;font-family:"Poppins", sans-serif;font-size:13px;font-size:0.9454545455rem;font-weight:600}.product-box .product-offer-title{font-size:12px;font-size:0.8727272727rem;text-decoration:underline;margin-top:10px;margin-top:0.7272727273rem}.basket-item .product-offer-title{margin-top:15px;margin-top:1.0909090909rem}.product-offer-description{color:#000000;font-size:12px;font-size:0.8727272727rem}.product-offer-container{margin-top:14px;margin-top:1.0181818182rem}@font-face{font-family:"sw_account";src:url("../fonts/sw_account.eot?nip2ct");src:url("../fonts/sw_account.eot?nip2ct#iefix") format("embedded-opentype"), url("../fonts/sw_account.ttf?nip2ct") format("truetype"), url("../fonts/sw_account.woff?nip2ct") format("woff"), url("../fonts/sw_account.svg?nip2ct#sw_account") format("svg");font-weight:normal;font-style:normal}[class^="icon-"],[class*=" icon-"]{font-family:"sw_account" !important;speak:none;font-style:normal;font-weight:normal;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.icon-warehouse:before{content:""}.icon-back:before{content:""}.icon-profile:before{content:""}.icon-account-home:before{content:""}.icon-address-book:before{content:""}.icon-check-in-checkbox:before{content:""}.icon-delete:before{content:""}.icon-edit:before{content:""}.icon-log-out:before{content:""}.icon-my-details:before{content:""}.icon-my-favourites:before{content:""}.icon-my-orders:before{content:""}.icon-my-password:before{content:""}.icon-my-subscriptions:before{content:""}.icon-PDF:before{content:""}.icon-re-order:before{content:""}.icon-referred-friends:before{content:""}.icon-reward-points:before{content:""}@font-face{font-family:"futura_pt";src:url("https://fonts.shopwired.co.uk/futura_pt/futura_pt_700_normal.eot");src:url("https://fonts.shopwired.co.uk/futura_pt/futura_pt_700_normal.eot?#iefix700") format("embedded-opentype"), url("https://fonts.shopwired.co.uk/futura_pt/futura_pt_700_normal.woff2") format("woff2"), url("https://fonts.shopwired.co.uk/futura_pt/futura_pt_700_normal.woff") format("woff"), url("https://fonts.shopwired.co.uk/futura_pt/futura_pt_700_normal.ttf") format("truetype"), url("https://fonts.shopwired.co.uk/futura_pt/futura_pt_700_normal.svg#700") format("svg");font-weight:700;font-style:normal}@font-face{font-family:"proxima_nova";src:url("https://fonts.shopwired.co.uk/proxima_nova/proxima_nova_400_normal.eot");src:url("https://fonts.shopwired.co.uk/proxima_nova/proxima_nova_400_normal.eot?#iefix400") format("embedded-opentype"), url("https://fonts.shopwired.co.uk/proxima_nova/proxima_nova_400_normal.woff2") format("woff2"), url("https://fonts.shopwired.co.uk/proxima_nova/proxima_nova_400_normal.woff") format("woff"), url("https://fonts.shopwired.co.uk/proxima_nova/proxima_nova_400_normal.ttf") format("truetype"), url("https://fonts.shopwired.co.uk/proxima_nova/proxima_nova_400_normal.svg#400") format("svg");font-weight:400;font-style:normal}@font-face{font-family:"proxima_nova";src:url("https://fonts.shopwired.co.uk/proxima_nova/proxima_nova_600_normal.eot");src:url("https://fonts.shopwired.co.uk/proxima_nova/proxima_nova_600_normal.eot?#iefix600") format("embedded-opentype"), url("https://fonts.shopwired.co.uk/proxima_nova/proxima_nova_600_normal.woff2") format("woff2"), url("https://fonts.shopwired.co.uk/proxima_nova/proxima_nova_600_normal.woff") format("woff"), url("https://fonts.shopwired.co.uk/proxima_nova/proxima_nova_600_normal.ttf") format("truetype"), url("https://fonts.shopwired.co.uk/proxima_nova/proxima_nova_600_normal.svg#600") format("svg");font-weight:600;font-style:normal}@font-face{font-family:"proxima_nova";src:url("https://fonts.shopwired.co.uk/proxima_nova/proxima_nova_700_normal.eot");src:url("https://fonts.shopwired.co.uk/proxima_nova/proxima_nova_700_normal.eot?#iefix700") format("embedded-opentype"), url("https://fonts.shopwired.co.uk/proxima_nova/proxima_nova_700_normal.woff2") format("woff2"), url("https://fonts.shopwired.co.uk/proxima_nova/proxima_nova_700_normal.woff") format("woff"), url("https://fonts.shopwired.co.uk/proxima_nova/proxima_nova_700_normal.ttf") format("truetype"), url("https://fonts.shopwired.co.uk/proxima_nova/proxima_nova_700_normal.svg#700") format("svg");font-weight:700;font-style:normal}.sw-account-block{margin-left:-2rem;margin-right:-2rem}.sw-account{padding:2rem 0;font-family:"proxima_nova", Arial, sans-serif;font-size:12.75px;font-weight:600}.sw-account hr{border-color:#eaeaea}.sw-account-box{box-shadow:0px 0px 10px 0px rgba(0, 0, 0, 0.09);margin-bottom:1.5rem;padding:2rem}.sw-account-box>*:last-child{margin-bottom:0}.sw-account-header{padding:1rem 0;position:relative;margin-top:-2rem}.sw-account-header br{display:none}.sw-account-initial-blob{background-color:#000;border-radius:5rem;color:#fff;position:absolute;-webkit-transform:translateY(-50%);-moz-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%);left:-2rem;top:50%;width:6rem;height:6rem;font-family:"futura_pt", "Trebuchet MS", Arial, sans-serif;font-size:2.5rem;font-weight:600;line-height:6rem;text-align:center;text-transform:uppercase}.sw-account-name{color:#000;font-size:1.25rem}.sw-account-company{font-size:0.85rem}.sw-account-menu{margin:0 -2rem -2rem;text-transform:capitalize}.sw-account-menu li+li a:after{border-top:1px solid #eaeaea}.sw-account-menu li.active a{background-color:#f7f7f7;color:#000}.sw-account-menu li.active a:before{position:absolute;content:"";border-left:3px solid #000;top:0;left:-4px;bottom:0;width:2px}.sw-account-menu li.active a:after{border:0}.sw-account-menu li.active+li a:after{border:0}.sw-account-menu a{color:#000;position:relative;font-size:0.95rem;font-weight:600;padding:1.4rem 1rem 1.4rem 4.25rem !important}.sw-account-menu a i{position:absolute;left:1.5rem;top:50%;margin-top:-0.75rem;font-size:1.5rem}.sw-account-menu a:after{content:"";position:absolute;top:0;left:1.25rem;right:1.25rem}.sw-account-menu a.active{background-color:#f7f7f7}.sw-account-menu a.active:before{position:absolute;content:"";border-left:3px solid #000;top:0;left:-4px;bottom:0;width:2px}.sw-account-heading{text-transform:uppercase;font-family:"proxima_nova", Arial, sans-serif;font-size:1.325rem;font-weight:800;margin-bottom:0.75rem}.sw-account-heading i{padding-right:0.75rem;font-size:2rem;position:relative;top:0.25rem}.sw-account-subheading{text-transform:uppercase;display:block;margin-bottom:0.5rem}.sw-account-line-heading{font-size:1.025rem;color:#959494;text-align:center;position:relative;text-transform:uppercase;margin:0.75rem 0}.sw-account-line-heading:before{content:"";position:absolute;display:block;left:0;right:0;top:50%;border-top:1px solid #959494}.sw-account-line-heading span{position:relative;display:inline-block;padding:0.25rem 1rem;background-color:#fff}.sw-account-block{background:#000;color:#fff;padding:1.5rem 2rem;margin-top:2rem;margin-bottom:2rem}.sw-account-block-label{text-transform:uppercase;font-size:0.9rem;font-weight:600;margin-bottom:0.25rem}.sw-account-panel{background:#f7f7f7;padding:1rem 1.5rem;margin-bottom:1.5rem}.sw-account-panel.list-item{margin-bottom:0.25rem}.sw-account-panel :last-child{margin-bottom:0}.sw-account-link{color:#2d2d2d;text-decoration:underline;font-weight:600;cursor:pointer;font-family:"proxima_nova", Arial, sans-serif}.sw-account-link:hover,.sw-account-link:focus,.sw-account-link:active,.sw-account-link.active{outline:none;color:#2d2d2d}.sw-account-icon-link{color:#2d2d2d;text-transform:uppercase;font-weight:500;cursor:pointer}.sw-account-icon-link i:first-child{margin-right:0.35em}.sw-account-icon-link i:last-child{margin-left:0.35em}.sw-account-icon-link span{text-decoration:underline}.sw-account-icon-link:hover{color:#2d2d2d}.sw-account-activity-list{border:1px solid #eaeaea;list-style:none;margin-left:0}.sw-account-activity-list>li{padding:1rem}.sw-account-activity-list>li+li{border-top:1px solid #eaeaea}.sw-account-activity-list time{color:#959494;font-weight:600;font-size:0.95em}.sw-account-container-box{border:1px solid #eaeaea;padding:1.5rem;margin-bottom:1.5rem}.sw-account-container-box .sw-account-container-box-header,.sw-account-container-box .sw-account-container-box-footer{background-color:#f7f7f7;padding:1rem 1.5rem;font-size:0.9em}.sw-account-container-box-header{border-bottom:1px solid #eaeaea;margin:-1.5rem -1.5rem 1.5rem -1.5rem}.sw-account-container-box-footer{border-top:1px solid #eaeaea;margin:1.5rem -1.5rem -1.5rem -1.5rem}.sw-account-container-box-list{margin:-1.5rem}.sw-account-container-box-item{padding:1.5rem}.sw-account-container-box-item+.sw-account-container-box-item{border-top:1px solid #eaeaea}.sw-account-container-box-item-title{display:block}.sw-account-def-list{line-height:1.2}.sw-account-def-list dt,.sw-account-def-list dd{display:inline-block;float:left}.sw-account-def-list dt{clear:left;font-weight:normal}.sw-account-def-list dt:after{content:":";padding-right:0.2rem}.sw-account-button{background-color:#000;color:#fff;display:inline-block;text-transform:uppercase;letter-spacing:0.25em;font-family:"proxima_nova", Arial, sans-serif;font-weight:700;padding:1em 2.5em}.sw-account-button:hover,.sw-account-button:active,.sw-account-button:focus{background-color:#000;color:#fff}.sw-account-button.small{font-size:0.8rem;text-transform:lowercase;letter-spacing:normal;font-weight:600;padding:0.5em 1.5em;margin-bottom:0.5rem}.sw-account-button-clear{text-transform:uppercase;font-size:0.85rem !important;font-family:"proxima_nova", Arial, sans-serif;font-weight:700}.sw-account-button-pdf i{font-size:1.75rem;color:#000}.sw-account-label{font-weight:700;font-size:0.9rem}.sw-account-input{box-shadow:none;border-color:#eaeaea;height:3rem}.sw-account-input.input-group-field{border-right-width:0}.sw-account-input:focus{border-color:#eaeaea;box-shadow:none}select.sw-account-input{padding-top:0;padding-bottom:0}.sw-account .input-group-button button{height:3rem;background-color:#fff;border:1px solid #eaeaea;border-width:1px 1px 1px 0;color:#000}.sw-account-input-indicator{display:inline-block;margin-right:0.5rem;background-color:#db0000;width:0.75rem;height:0.75rem;border-radius:0.75rem}.sw-account-input-indicator.valid{background-color:#1ab500}.sw-account-home-button{font-size:1.75rem;color:#000}@media screen and (min-width:40em){.sw-account-initial-blob{left:-2.75rem}.sw-account-header br{display:block}}@media screen and (min-width:64em){.sw-account-header{padding:3.5rem 0 3.5rem 5rem}.sw-account-sidebar{width:31%}.sw-account-content{width:69%}}.js-password-group.error input,.js-password-group.error select,.js-password-group.error button,.js-password-group.error textarea{border-color:#d70000}span.error-text{color:#db0000;display:block;text-align:right;margin:-0.5rem 0 1rem}.sw-upper{text-transform:uppercase}.sw-margin-b-xs{margin-bottom:0.25rem}.sw-margin-b-s{margin-bottom:0.5rem}.sw-margin-b{margin-bottom:1rem}.sw-inline-block{display:inline-block}.sw-text-danger{color:#d70000}.sw-text-danger:hover{color:#d70000}.product-main-image{position:relative}.product-main-image .zoom{position:absolute;background:#f3f0ee;bottom:0;right:0;width:50px;height:50px;line-height:50px;text-align:center;pointer-events:none}.product-main-image .zoom i{font-size:30px;display:block;line-height:50px}#glass{position:absolute;border-radius:50%;box-shadow:0 0 0 7px rgba(255, 255, 255, 0.85), 0 0 7px 7px rgba(0, 0, 0, 0.25), inset 0 0 40px 2px rgba(0, 0, 0, 0.25);display:none;background-repeat:no-repeat;background-color:rgba(0, 0, 0, 0.6);z-index:9}.product-image{padding-bottom:24px}@media screen and (max-width:63.9375em){.product-image{margin-left:auto;margin-right:auto;max-width:70%;position:static !important}}.off-canvas-active .sticky.is-stuck{z-index:0}@media screen and (max-width:63.9375em){.sticky-container{height:auto !important}#product-sticky.is-stuck,#basket-sticky.is-stuck{position:static !important}}@media (pointer:coarse) and (hover:none){.sticky-container{height:auto !important}#product-sticky.is-stuck,#basket-sticky.is-stuck{position:static !important}}#ajaxModal{box-shadow:0 0 5px rgba(10, 10, 10, 0.7)}#ajaxModal .close-button{top:0;right:0;padding:15px;padding:1.0909090909rem;z-index:1}#ajaxModal .product-heading{margin-right:1.46rem}#ajaxModal .view-product{color:#000000;margin-top:1.5rem;margin-bottom:1rem;display:block}#ajaxModal .button.disabled{opacity:0.8}#ajaxModal .product-brand-container{display:block}@media screen and (min-width:64em){#ajaxModal{margin-top:30px}}.product-title{font-weight:500;font-size:28px !important;line-height:1.2;margin:0;margin-bottom:0.5rem;color:#000000}.product-title .product-brand{font-weight:700;font-size:28px !important}.product-title .product-brand a{color:#004E9B}.product-heading{position:relative}.product-heading.padding-right{padding-right:25px;padding-right:1.8181818182rem}.shopwired-share-buttons{box-shadow:0 0 4px #dadada;background:#ffffff;position:relative;z-index:2}.product-share-toggle{position:absolute;right:0;top:0;cursor:pointer;font-size:25px;font-size:1.8181818182rem;z-index:2;color:#000000}.product-share{position:absolute;right:0;top:35px;top:2.5454545455rem;margin-top:0.5rem}.product-share .share-menu{background:#F7F7F7}.product-stars{margin-bottom:0.5rem}.product-content{margin-top:1.5rem}.content .related-products{margin-bottom:-2rem}.info-sku{font-size:1.01rem;color:#000000}.info-sku span{font-weight:700}.product-gallery-main-photo{cursor:auto}.product-gallery-main-photo[data-src],.product-gallery-main-photo[data-fancybox-trigger]{cursor:pointer}.product-carousel{margin-top:24px}.product-carousel .mod-video .image-container{background-color:#0091B9;text-align:center;color:#fff}.product-carousel .mod-video .image-container i{width:100%;position:absolute;top:50%;-webkit-transform:translateY(-50%);-moz-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%);left:0;font-size:44px;color:white}.product-carousel .mod-video .image-container i[class*="fa-"]{font-size:60px;font-size:4.3636363636rem}.product-carousel .arrow+.slick-list{margin:0 30px}.product-carousel .slick-slide{padding:0 12px}.product-carousel .arrow{padding:0.5rem}.info-code{margin-bottom:0.7rem}.product-rrp{margin-top:0.7rem}.product-raiting{color:#FF6500;vertical-align:middle;font-size:1.5rem}.product-raiting .off{opacity:0.5}.product-raiting span+span{margin-left:3px}.product-raiting+span,.product-raiting+a{vertical-align:middle;text-decoration:underline;margin-left:10px;font-size:1.01rem;font-weight:700;font-family:"IBM Plex Sans", serif;color:#000000}.product-reviews .product-raiting{font-size:1rem;display:block;margin-top:0.3rem}.product-reviews .product-raiting span+span{margin-left:0}.product-brand{font-size:1.01rem;line-height:1}.product-brand span{font-weight:700}.hidden-price{font-size:0.85rem;line-height:1}.hidden-price a{text-decoration:underline}.product-container .hidden-price{font-size:0.945rem}.product-sale-price{display:none;font-family:"IBM Plex Sans", serif;font-size:22px;font-weight:700;color:#C92314}.product-price{display:inline-block;font-size:22px;font-weight:700;color:#004E9B;margin-left:0;text-decoration:none;font-family:"IBM Plex Sans", serif;margin-right:0.75rem;vertical-align:middle;line-height:1.5}.has-sale-price .product-sale-price{display:inline-block;margin-right:0.75rem;vertical-align:middle;line-height:1}.has-sale-price .product-price{color:#000000;display:inline-block;text-decoration:line-through;font-size:1.16rem}.product-price-subscription{color:#7F8386;font-size:14px;font-size:1.0181818182rem;font-weight:400;font-family:"Poppins", sans-serif;position:relative;padding-left:0;margin-left:-5px;margin-left:-0.3636363636rem;top:1px;top:0.0727272727rem}.product-buy-preorder{color:#000;display:inline-block;font-family:"IBM Plex Sans", serif;font-size:15px;font-size:1.0909090909rem;font-weight:600;padding:12px 15px 12px 0;padding:0.8727272727rem 1.0909090909rem 0.8727272727rem 0;margin-bottom:0;position:relative;vertical-align:middle;top:10px}.product-buy-preorder strong{color:#CA2414;font-weight:600}.product-buy-preorder+.wishlist-link{margin-right:0}.product-ship-date{color:#4A1639;font-size:13px;font-size:0.9454545455rem;padding:0 12px;padding:0 0.8727272727rem;margin-bottom:15px;margin-bottom:1.0909090909rem;position:relative}.product-ship-date .inner{margin-left:10px;margin-left:0.7272727273rem}.product-ship-date svg{margin-right:10px;margin-right:0.7272727273rem;margin-top:-2px;margin-top:-0.1454545455rem;position:absolute;top:50%;-webkit-transform:translateY(-50%);-moz-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%);left:0}.bulk-savings-toggle{text-decoration:underline;display:inline-block;text-transform:lowercase;color:#000000;font-size:0.945rem;white-space:nowrap;line-height:1.8;margin-top:0.5rem}.bulk-savings-toggle:hover,.bulk-savings-toggle:focus,.bulk-savings-toggle:active,.bulk-savings-toggle.active{outline:none;color:#000000}.in-stock .stock-requests-container{display:none}.product-form{margin-top:1rem}.product-form .info-extra label{font-size:12px}.product-quantity{margin-top:1rem}.product-quantity .qty-field{display:inline-block;vertical-align:middle}.product-quantity .qty-field+span{vertical-align:middle;display:inline-block;margin-left:1.45rem;font-size:0.873rem}.product-buy .button{margin:0;margin-right:10px}.product-buy .product-add-button{background:#BAE4F0;color:#004E9B}.product-buy .out-of-stock{background:#94C6C8;color:#000000}.product-buy .out-of-stock.disabled{opacity:1}.product-buy .wishlist-link{background:#FF6500;color:#FFFFFF;margin-right:1.3rem}.product-add-button.in-stock-button,.product-container .order-quantity{display:none !important}.product-add-button.out-of-stock{display:block !important}.product-add-button.out-of-stock{display:block !important}.product-add-button.out-of-stock.mod-inline{display:inline-block !important}.in-stock .product-add-button.in-stock-button,.in-stock.product-container .order-quantity{display:inline !important}.in-stock .product-add-button.out-of-stock{display:none !important}.product-cost{line-height:1.6}.product-cost .labels{display:inline-block;white-space:nowrap;vertical-align:middle;line-height:1.5}.product-cost .label.primary{margin-right:0.75rem}.product-buttons .button,.product-buttons .wishlist-link,.product-buttons .product-info-rewards{display:inline-block;vertical-align:middle;margin-top:1.5rem}.product-buttons .wishlist-link.single{margin-top:0.5rem}.product-info .product-stock-container{margin-bottom:10px;margin-bottom:0.7272727273rem}.product-info .product-stock-true{display:none}.in-stock .product-info .product-stock-true{display:block}.in-stock .product-info .product-stock-false{display:none}.product-container:not(.in-stock) .product-info .product-stock-true{display:none}.product-container:not(.in-stock) .product-info .product-stock-false{display:block}.product-info-rewards{position:relative;padding-left:2.5rem;font-size:0.873rem;margin:0;line-height:1.2}.product-info-rewards:before{content:"";font-family:"sw-icons" !important;color:#C92314;left:0;position:absolute;top:50%;-webkit-transform:translateY(-50%);-moz-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%);font-size:1.8rem}.product-info-rewards p{margin:0;line-height:1.2}.product-info-rewards span{color:#C92314;font-weight:700}.product-bulk-pricing{margin-top:1.5rem}.product-bulk-pricing table{border-collapse:collapse;border:0}.product-bulk-pricing table tbody,.product-bulk-pricing table tr,.product-bulk-pricing table td{border:0}.product-bulk-pricing table td{padding:10px 20px;padding:0.7272727273rem 1.4545454545rem;border-top:1px solid #F7F7F7;border-bottom:1px solid #F7F7F7}.product-bulk-pricing table tbody tr{background:#fff}.product-bulk-pricing table tbody tr:nth-child(2n){background:#f3f0ee}.product-bulk-pricing h3{font-size:18px;font-size:1.3090909091rem;margin-bottom:0.7rem;font-weight:500}.product-tabs{margin-top:1.5rem;margin-bottom:3rem}.product-tabs .accordion{color:#000000;background:transparent}.product-tabs .accordion-item{border-radius:5px;margin-bottom:1.09rem;border:1px solid #F3F0EE}.product-tabs .accordion-content{border:0;background:transparent;padding:1.5rem 2.18rem;font-size:0.873rem}.product-tabs .accordion-content p{font-size:13px}.product-tabs .accordion-content p:last-of-type{margin:0}.product-tabs .accordion-title{background-color:#F3F0EE;color:#000000;border:0;font-size:14px;font-family:"IBM Plex Sans", serif;padding:1.09rem 2.18rem}.product-tabs .accordion-title:before{content:"";right:1.5rem;font-size:1.16rem;content:"";font-family:"sw-icons" !important}.product-tabs .is-active>.accordion-title:before{content:""}.product-tabs :last-child:not(.is-active)>.accordion-title,.product-tabs :last-child>.accordion-content:last-child{border:0}.product-reviews{font-size:12px;font-size:0.8727272727rem;line-height:1.2}.product-reviews h4{font-size:14px;font-size:1.0181818182rem;font-weight:500}.product-reviews p{line-height:1.2}.product-reviews .review-author{font-size:13px;font-size:0.9454545455rem;margin-bottom:0.3rem}.product-reviews .customer-review{margin-bottom:1rem}[name="send_recommendation_email"]:disabled{opacity:0.8;cursor:default}.product-option-container .has-tip{border:0}.product-option-container .note{font-size:0.875rem}.product-option-container .rectangle{display:inline-block;margin:0 5px 5px 0;text-align:center;cursor:pointer;line-height:1;font-size:0.727rem}.product-option-container .rectangle .inner{display:block;border-radius:5px;padding:0.727rem 1rem;color:#000000;background:#D948DC}.product-option-container .rectangle.active .inner{color:#fff;background:#004E9B !important}.product-option-container .rectangle input{display:none}.product-option-container .rectangle.color.dark .inner{color:#fff !important}.product-option-container .rectangle.color:not(.dark) .inner{border:1px solid #000;padding:0.655rem 1rem}#product-info.visible{opacity:1 !important}#image-zoomer-overlay.hidden,.image-zoomer-square.hidden{visibility:hidden !important}.product-subscription>div{margin-bottom:1rem}.product-subscription>div:first-child{border-top:solid 1px #FFFFFF;padding-top:1rem}.basket .page-title{margin:0;color:#004E9B;font-size:32px !important}@media screen and (max-width:39.9375em){.basket .page-title{font-size:24px;font-size:1.7454545455rem}}.basket .paypal-button{display:block;margin-left:auto;margin-right:auto;width:300px;max-width:100%;min-height:44px}.basket .payment-list{margin-bottom:1.5rem}.basket-subscription-error{background-color:#FF6500;color:#fff;font-size:14px;font-size:1.0181818182rem;font-weight:400;padding:12px 12px;padding:0.8727272727rem 0.8727272727rem;margin-bottom:15px;margin-bottom:1.0909090909rem;position:relative}.basket-subscription-error .inner{margin-left:35px;margin-left:2.5454545455rem}.basket-subscription-error svg{margin-right:10px;margin-right:0.7272727273rem;margin-top:-1px;margin-top:-0.0727272727rem;position:absolute;top:50%;-webkit-transform:translateY(-50%);-moz-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%);left:12px;left:0.8727272727rem}.basket-form{margin-top:2rem}.continue-link{color:#000000;display:inline-block;position:relative;padding-left:1.66rem;font-family:"IBM Plex Sans", serif;font-size:14px;font-weight:500}.continue-link i{position:absolute;top:50%;left:0;margin-top:-0.5rem;z-index:1}.basket-payment .button.checkout{font-size:18px;padding-top:20px;padding-top:1.4545454545rem;padding-bottom:20px;padding-bottom:1.4545454545rem;margin-bottom:1.5rem;background-color:#FF6500;color:#FAFAFA}.basket-table{font-size:11px}.basket-table .basket-item-title{font-weight:500;font-size:16px;margin-bottom:0.5rem;line-height:normal;color:#000000}.basket-table .product-brand{margin-bottom:0.7rem}.basket-table .product-brand span{color:#000000}.basket-item-wishlist{color:#FF6500;display:block;margin-bottom:0.5rem;font-size:11px;padding-left:1.2rem;position:relative}.basket-item-wishlist i,.basket-item-wishlist span{vertical-align:middle}.basket-item-wishlist span{margin-left:8px;text-decoration:underline;vertical-align:text-top}.basket-item-wishlist i{left:0;position:absolute;top:50%;-webkit-transform:translateY(-50%);-moz-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%);font-size:1.2rem}.basket-item-wishlist:hover{color:#FF6500}.basket-item{border-radius:5px;border:1px solid #000000;background:#fff;padding:1.45rem;margin-bottom:20px;margin-bottom:1.4545454545rem}.basket-item .show-for-medium .label{margin-left:0.5rem}.basket-item .hide-for-medium .label{margin-right:0.5rem}.basket-item .basket-item-options{color:#000000;margin-bottom:0.7rem;line-height:1.4}.basket-item .price{color:#004E9B;font-weight:700;font-size:16px;margin-bottom:0.7rem;font-family:"IBM Plex Sans", serif}.basket-item .remove-button{color:#004E9B;display:inline-block;margin:1rem 0}.basket-item .basket-update{color:#4A1639;margin-top:0.7rem;display:inline-block;font-family:"Poppins", sans-serif}.basket-item .quantity a{color:#000000;margin-left:0.5rem}@media screen and (min-width:40em){.basket-item .number-toggle{margin-left:auto}}@media screen and (max-width:39.9375em){.basket-item{margin-bottom:1.5rem}.small-4{width:40%}.small-8{float:right;width:60%}.basket-item .small-right{float:right}}.basket-voucher{font-size:0.873rem;padding-bottom:0.25rem;margin:1rem 0}.basket-voucher.open{padding:0;margin:0}@media screen and (max-width:63.9375em){.basket-voucher.open{padding-top:0.5rem}}.basket-voucher-toggle{color:#4A1639;text-decoration:underline;font-size:0.873rem;font-family:"Poppins", sans-serif;font-weight:normal;margin-top:0.5rem;margin-bottom:0.5rem}.basket-voucher-toggle:hover{color:#4A1639}.title-line{font-weight:700;font-size:1.01rem;position:relative;padding-left:3.27rem;color:#000000;margin-bottom:1.5rem;line-height:1}.title-line i{font-size:2.18rem;left:0;position:absolute;top:50%;-webkit-transform:translateY(-50%);-moz-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%)}.basket-box{font-size:12px;font-size:0.8727272727rem}.basket .basket-box{margin-bottom:1.25rem}.basket-box_title{font-size:14px;font-weight:700;margin:0;margin-bottom:1rem}.basket-box_title i{font-size:2.2rem;display:inline-block;max-width:30px}.basket-box_title i,.basket-box_title span{vertical-align:middle}.basket-box_title i+span{margin-left:15px}@media screen and (min-width:64em){.basket-box{background:white;padding:17px;padding:1.2363636364rem}}.basket-totals{font-size:13px;border-collapse:collapse;margin:0}.basket-totals.unstriped tbody{background:transparent;border:0}.basket-totals.unstriped tbody tr{background:transparent;border-bottom:0 !important}.basket-totals tfoot{border:0}.basket-totals thead .basket-totals tr td{border:0}.basket-totals tr td{padding:0.5rem;line-height:1.6}.basket-totals tr td:first-child{padding-left:0}.basket-totals tr td:last-child{padding-right:0;text-align:right;font-weight:700}.basket-totals .empty td{line-height:1.2;padding:0.4rem}.basket-totals a{color:#4A1639;text-decoration:underline}.basket-totals tr:last-child td{padding-top:0.7rem;padding-bottom:0.7rem;border-top:1px solid #f3f0ee}.basket-totals tr:last-child td:last-child{font-size:20px;font-weight:normal}@media screen and (min-width:64em){.basket-info{background-color:#EAEAEA;padding:20px 0;padding:1.4545454545rem 0;padding-left:53.75px;padding-left:3.9090909091rem}.content{border-top:2px solid #F7F7F7}.basket-page-content{position:relative;padding-top:30px;padding-top:2.1818181818rem;padding-bottom:30px;padding-bottom:2.1818181818rem}.basket-page-content:after{content:"";position:absolute;top:0;right:0;bottom:0;width:calc(38% + .9375rem);background-color:#EAEAEA;z-index:-1}.basket .site-header+.content{padding-top:0;padding-bottom:0}.basket-grid>.large-7{width:62%;padding-right:53.75px;padding-right:3.9090909091rem}.basket-grid>.large-5{width:38%;padding-left:0}}.basket-info-rewards{position:relative;border-radius:5px;border:1px solid #FFFFFF;background:#fff;padding:1.45rem;padding-left:4rem;font-size:0.873rem;margin-bottom:20px;margin-bottom:1.4545454545rem}.basket-info-rewards:before{content:"";font-family:"sw-icons" !important;color:#CD3628;left:1.45rem;position:absolute;top:50%;-webkit-transform:translateY(-50%);-moz-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%);font-size:1.8rem}.basket-info-rewards p{margin:0;line-height:1.3}.basket-info-rewards span{color:#CD3628;font-weight:700}.basket-info-rewards a{text-decoration:underline;color:#0091B9;white-space:nowrap}.number-toggle{display:table}.number-toggle button,.number-toggle .table-cell{display:table-cell;vertical-align:middle;text-align:center;color:#000}.number-toggle i{display:block}.number-toggle button,.number-toggle input{width:50px;height:50px;line-height:50px;border-radius:0;font-size:1.09rem}.number-toggle button{background:#F3F0EE}.number-toggle .toggle-down{border-radius:5px 0 0 5px}.number-toggle .toggle-up{border-radius:0 5px 5px 0}.number-toggle input{box-shadow:none;text-align:center;padding:0;color:#000;margin:0;background-color:transparent;border-radius:0;border:0;line-height:1}.number-toggle input:focus,.number-toggle input:hover{border:0}.rates-container.with-select .field-label{white-space:nowrap}.disable-checkout{display:inline-block;border-radius:5px;background:#fff;padding:12px 22px;padding:0.8727272727rem 1.6rem;font-size:12px;font-size:0.8727272727rem;line-height:1.2}.off-canvas-basket{background:#FFFFFF;padding:0;border:0;font-size:0.945rem}.off-canvas-basket .selected-options{line-height:normal}.off-canvas-basket__heading{background:#D6C3D0;color:#FFFFFF;text-align:center;line-height:1;font-weight:700;font-size:1.6rem;margin:0;padding:2.18rem 1rem}.off-canvas-basket .items{padding:0 2.9rem;background:#fff}.off-canvas-basket .items .item{padding:1.8rem 0;font-size:0.945rem;color:#000000}.off-canvas-basket .items .item h4{font-weight:700;font-size:1.16rem;line-height:1;font-family:"Poppins", sans-serif;color:#000000}.off-canvas-basket .items .item:first-of-type{padding-top:2.8rem}.off-canvas-basket .items .item:last-of-type{padding-bottom:2.8rem}.off-canvas-basket .items .price{font-weight:700;font-size:1.16rem;color:#000000}.off-canvas-basket .checkout{background:#BAE4F0;color:#004E9B}.off-canvas-basket .remove-btn{color:#4A1639;text-decoration:underline;display:inline-block;margin-top:0.5rem}.off-canvas-basket .summary{background:#FFFFFF;color:#000000;padding:1.8rem 2.9rem;padding-bottom:2rem;line-height:1}.off-canvas-basket .continue{background:#F3F0EE;color:#000000;padding:1.8rem 2.9rem;text-align:center}.off-canvas-basket .continue a{color:#000000;text-decoration:underline;text-transform:uppercase}.off-canvas-basket__total-label{text-transform:uppercase;margin-bottom:0;font-weight:700;font-size:1.16rem}.off-canvas-basket__total-value{font-size:1.89rem;font-weight:700}.off-canvas-basket:after{box-shadow:none !important}@media screen and (max-width:63.9375em){.off-canvas-basket .items{padding:0 1.5rem}.off-canvas-basket .summary,.off-canvas-basket .continue{padding:1.8rem 1.5rem}.off-canvas-basket .button.with-arrow{padding:2.18rem 3rem 2.18rem 1.5rem}.off-canvas-basket .button.with-arrow .with-arrow_icon{right:1.5rem}}@media screen and (max-width:39.9375em){.off-canvas-basket{width:350px;-webkit-transform:translateX(350px);-moz-transform:translateX(350px);-ms-transform:translateX(350px);transform:translateX(350px)}.off-canvas-basket.is-open~.off-canvas-content{-webkit-transform:translateX(-350px);-moz-transform:translateX(-350px);-ms-transform:translateX(-350px);transform:translateX(-350px)}}@media screen and (min-width:40em){.off-canvas-basket{width:600px;-webkit-transform:translateX(600px);-moz-transform:translateX(600px);-ms-transform:translateX(600px);transform:translateX(600px)}.off-canvas-basket.is-open~.off-canvas-content{-webkit-transform:translateX(-600px);-moz-transform:translateX(-600px);-ms-transform:translateX(-600px);transform:translateX(-600px)}}@media screen and (min-width:64em){.off-canvas-basket{width:700px;-webkit-transform:translateX(700px);-moz-transform:translateX(700px);-ms-transform:translateX(700px);transform:translateX(700px)}.off-canvas-basket.is-open~.off-canvas-content{-webkit-transform:translateX(-700px);-moz-transform:translateX(-700px);-ms-transform:translateX(-700px);transform:translateX(-700px)}}@media screen and (min-width:40em){.checkout-address.split .content{background-color:#fff;position:relative}.checkout-address.split .content:after{background-color:#fafafa;border-left:1px solid #ddd;content:"";position:absolute;display:block;width:50%;left:50%;top:0;bottom:0}.checkout-address.split .content .inner-wrapper{position:relative;z-index:2}.checkout-address.split .content .checkout-form{padding-right:2.5rem}}.checkout-details{margin-bottom:2rem}.checkout-field-input{margin-bottom:0}.checkout-form-section+.checkout-form-section{margin-top:0.75rem}.checkout-form-legend{font-size:1.15rem;font-weight:500;margin:0.5rem 0}.checkout-form .buttons{line-height:2px;margin-top:1rem}.checkout-form .buttons .button-secure-payment{width:322px;display:block;margin-bottom:0.25rem}.checkout-form .buttons[data-count="3"] .paypal-button{vertical-align:top;width:160px;background:#ffc43a;border-radius:3px;padding:0.4rem 0}.checkout-form .buttons[data-count="3"] .offline-button{width:160px}.checkout-form .buttons[data-count="3"] br{display:none}.checkout-form .buttons .paypal-button,.checkout-form .buttons .offline-button{width:322px}.checkout-form>fieldset:last-of-type{border:1px solid #ddd;border-width:1px 0;margin-bottom:1.5rem}.checkout-address .inner-wrapper iframe{background-color:#FFF;border:1px solid #ddd}.checkout-items{max-width:28rem;margin:auto}.checkout-items-product{border-bottom:1px solid #ddd;margin-bottom:1.5rem;padding-bottom:1.5rem}.checkout-items-image{border:1px solid #ddd;border-radius:3px;position:relative}.checkout-items-image .badge{position:absolute;top:-0.3rem;right:-0.3rem;z-index:2;font-size:0.75rem;font-weight:bold}.checkout-items-title{text-transform:capitalize}.checkout-items .payment-list{margin-bottom:2rem}.checkout-items .payment-list img{height:2.25rem}.checkout-totals tr,.checkout-totals tbody{background-color:rgba(255, 255, 255, 0) !important}.checkout-totals td{background-color:rgba(255, 255, 255, 0);padding-right:0;padding-left:0}.checkout-totals td:last-child{text-align:right}.checkout-totals tr:last-child{font-weight:700;font-size:1.25rem;text-transform:uppercase}.checkout-totals tr:last-child td{border-width:1px 0;border-style:solid;border-color:#ddd;padding:1rem 0}.site-header{position:relative;background:#fff;padding-top:25px;padding-top:1.8181818182rem;padding-bottom:0rem !important;z-index:5}@media screen and (min-width:40em){.site-header.sticky-container{height:auto !important;z-index:5}}.site-header .header-search-form .input-group.mod-icon{border-color:#004E9B}.site-header .header-search-form .input-group.mod-icon input{color:#000000;font-size:14px}.site-header .header-search-form .input-group.mod-icon input::-webkit-input-placeholder{color:#004E9B}.site-header .header-search-form .input-group.mod-icon input:-moz-placeholder{color:#004E9B;opacity:1}.site-header .header-search-form .input-group.mod-icon input::-moz-placeholder{color:#004E9B;opacity:1}.site-header .header-search-form .input-group.mod-icon input:-ms-input-placeholder{color:#004E9B}.site-header .header-search-form .input-group.mod-icon .button{color:#004E9B}@media screen and (min-width:40em){.site-header{padding-bottom:0.7rem}.site-header .header-menu{position:relative}}@media screen and (max-width:63.9375em){.site-header{border-bottom:3px solid #4A1639;padding-top:1rem}.site-header .col-cell.column{width:auto}.site-header .mod-center>.col-cell.column.small-4{width:33.33%}.site-header .mod-center>.col-cell.column.small-4 .mobile-menu-toggle{position:absolute;left:calc(-100% + 15px);top:50%;margin-top:-13px}.site-header .header-middle{padding-bottom:1rem}.site-header .header-middle.is-stuck{background-color:#fff;padding-top:1rem;border-bottom:3px solid #4a1639;width:100%}.site-header .header-middle.is-stuck>.wide-container+.hide-for-large{display:none}.site-header .header-search-form{margin-top:1rem}.site-header .header-search-form .input-group.mod-icon .button{color:#000000}}.header-logo{display:inline-block;vertical-align:middle}.logo-image{width:100%;max-width:200px;margin:auto;display:block}@media screen and (min-width:40em){.logo-image{max-width:200px;margin:0}}.logo-text{color:#004E9B;font-weight:bold;font-size:44px;text-transform:lowercase;line-height:1.1;white-space:normal}.header-link{display:inline-block;vertical-align:middle;font-size:11px;line-height:1;text-align:center}.header-link i{font-size:22px;height:22px;height:1.6rem;margin-left:0 !important;margin-right:0 !important}.header-link .span{margin-top:0.6rem}.header-link i,.header-link span{display:block}.header-link:hover{color:inherit}@media screen and (min-width:64em){.header-link.mod-currency{color:#004E9B;display:block;padding:0.7rem 1rem;line-height:1}.header-link.mod-currency i{font-size:30px;margin-top:-4px;margin-top:-0.2909090909rem}.header-link.mod-currency .span{padding-top:4px;padding-top:0.2909090909rem}}@media screen and (max-width:63.9375em){.header-link.mod-currency{display:inline-block;width:22px;height:22px;line-height:22px}}.header-link.mod-account{color:#0091B9;display:block;padding:0.7rem 1rem;line-height:1}.header-link.mod-wishlist{color:#FF6500}.header-link.mod-basket{color:#FF6500;font-weight:bold}@media screen and (min-width:64em){.header-link.mod-basket.show-for-sticky{position:absolute;top:10px;top:0.7272727273rem;right:30px;right:2.1818181818rem}}.header-link.mod-contact{color:#004E9B}.show-for-sticky{display:none}.is-stuck .show-for-sticky{display:block}.header-menu{display:inline-block}.header-search{position:absolute;top:100%;left:0;right:0;padding-right:0;z-index:5;padding:2rem;background:#fff;border-bottom:3px solid #000}.header-search-inner{position:relative;margin:0 3rem 1rem 3rem}.header-search-inner-left{position:absolute;left:-3rem;top:0.5rem;font-size:2rem}.header-search-inner-right{position:absolute;right:-3rem;top:0.5rem;font-size:2rem}.header-search-input-group{margin-bottom:0;line-height:3.5rem;border-bottom:1px solid #000}.header-search-input{background-color:transparent;border:0;box-shadow:none;height:3.5rem;padding-left:0;font-size:1.5rem}.header-search-input:active,.header-search-input:focus{border:none;box-shadow:none}.header-search-button{background-color:transparent;height:3.5rem;color:#000;font-weight:600;font-size:1.5rem;padding-right:0;text-transform:uppercase}.header-search-button:hover,.header-search-button:active,.header-search-button:focus{background-color:transparent;border:none;box-shadow:none;color:#000}.site-header .header-currency{position:static}.site-header .header-currency .currency-dropdown{left:auto !important;right:0 !important}@media screen and (max-width:39.9375em){.site-header .header-currency .currency-dropdown{border:0;box-shadow:none;background:#fff;border-radius:0;margin-top:0}}.site-header .header-currency-select-symbol{padding-left:0.25em}.header-basket,.header-wishlist{color:#000;font-size:0.9rem;text-transform:uppercase}.basket-count{margin:0 0.2rem}@media screen and (max-width:39.9375em){.header-middle{position:relative}.header-basket-wrapper{position:absolute;top:0;right:0.5rem;width:auto}}@media screen and (min-width:64em){.header-middle.sticky{position:static !important;-webkit-transform:none;-moz-transform:none;-ms-transform:none;transform:none}.header-middle .row-table.mod-large-flex{display:flex;align-items:center}.header-middle .row-table.mod-large-flex>.col-cell:last-child{flex:1;width:auto}.header-middle .row-table.mod-center{position:relative}.header-middle .row-table.mod-center>.col-cell:nth-child(2){position:absolute;left:0;top:50%;margin-top:-25px;margin-top:-1.8181818182rem}.header-middle>.wide-container>.row{margin-right:-0.9375rem;margin-left:-0.9375rem}.header-nav-outer.mod-no-bar{border-bottom:4px solid #f3f0ee;box-sizing:content-box}.header-nav-outer.mod-no-bar .header-nav{margin-bottom:4px}.header-nav-outer .wide-container>.row{margin-right:-0.9375rem;margin-left:-0.9375rem}.header-nav-outer .wide-container.sticky{z-index:0;-webkit-transform:none;-moz-transform:none;-ms-transform:none;transform:none;max-width:1600px !important;box-sizing:border-box}.header-nav-outer .wide-container.sticky>div{margin-left:auto;margin-right:auto}.header-nav-outer .wide-container.sticky.is-stuck{padding:0}.header-nav-outer .wide-container.sticky.is-stuck .header-nav{padding-left:50px;padding-left:3.6363636364rem;padding-right:50px;padding-right:3.6363636364rem}.header-nav-outer .wide-container.sticky:not(.is-stuck){position:static}.header-nav-outer .wide-container.sticky.is-stuck{z-index:99;background:#fff;width:100%;padding-bottom:10px;padding-bottom:0.7272727273rem;border-bottom:3px solid #f3f0ee;max-width:100% !important}.main-nav-wrapper{margin-top:1rem}.main-nav-wrapper .main-nav{margin:0 -1.2rem}.main-nav-wrapper .main-nav.align-center{text-align:center}.main-nav-wrapper .dropdown.menu.large-horizontal>li.is-dropdown-submenu-parent>a:after{display:none}.main-nav-wrapper .menu>li>a{font-weight:normal;font-size:0.95rem;color:#004E9B;background:transparent;padding:1.09rem 1.45rem;padding-top:15px;padding-top:1.0909090909rem;padding-bottom:15px;padding-bottom:1.0909090909rem;padding-right:1.1rem !important;padding-left:1.1rem;display:block}.main-nav-wrapper .main-nav>li{display:inline-block}.main-nav-wrapper .main-nav>li+li{margin-left:-1px}.main-nav-wrapper .main-nav>li>a{border-radius:5px 5px 0 0;position:relative}.main-nav-wrapper .main-nav>li:not(:last-child)>a:before{width:1px;height:20px;content:"";background:#FFFFFF;position:absolute;right:0;top:50%;margin-top:-10px}.main-nav-wrapper .main-nav>li.is-active>a{background:#FFFFFF}.main-nav-wrapper .main-nav>li.is-active>a:after{background:transparent}.main-nav-wrapper .main-nav>li.is-active>a:before{background:transparent}.main-nav-wrapper .submenu{background:#FFFFFF;border-radius:5px;margin-top:-5px;padding-top:5px;border:0;box-shadow:none}.main-nav-wrapper .submenu.menu>li>a{color:#004E9B;padding:1.09rem 0;margin:0 1.45rem}.main-nav-wrapper .submenu li+li a{border-top:1px solid #FFFFFF}}.sub-nav-container{background-color:#FFFFFF;position:absolute;left:0;right:0;z-index:10}.sub-nav-container ul{margin-bottom:0;padding:1.25rem 0;position:relative}@media screen and (min-width:64em){.sub-nav-container ul{max-width:1600px;margin-left:auto;margin-right:auto}}.sub-nav-container ul li{display:inline-block;padding-right:1.75rem}.sub-nav-container ul li a{color:#004E9B}.sub-nav-container .selection-triangle{content:"";position:absolute;top:-10px;left:0;width:0;height:0;border-style:solid;border-width:0 8px 10px 8px;border-color:rgba(255, 255, 255, 0) rgba(255, 255, 255, 0) #FFFFFF rgba(255, 255, 255, 0)}.mobile-menu-toggle{margin-right:18px;margin-right:1.3090909091rem;color:#4A1639;display:inline-block;vertical-align:middle}.mobile-menu-toggle i{font-size:25px;font-size:1.8181818182rem;position:relative}.header-mobile-basket{display:inline-block;padding:0 1rem;margin-right:-1rem;vertical-align:middle;font-size:26px;font-size:1.8909090909rem;color:#4A1639;line-height:1}.header-mobile-basket i{display:block;line-height:1;vertical-align:middle}@media screen and (max-width:63.9375em){.mobile-links{position:relative}.site-header .header-currency .currency-dropdown{margin-top:0;right:0.9375rem !important}}@media screen and (max-width:39.9375em){.mobile-links{position:static}.site-header .header-currency .currency-dropdown{right:0 !important;width:100% !important}}.site-footer{background:#fff;border-top:4px solid #FFFFFF}.site-footer .contact-information{color:#000000;margin-top:0.5rem;font-size:12px;font-size:0.8727272727rem}.site-footer .footer-copy{color:#000000;font-size:10px;font-size:0.7272727273rem;margin-top:2rem}.site-footer .footer-copy a{text-decoration:underline;color:#000000}.site-footer .button.md{margin-left:0.7rem;margin-right:0.7rem;font-size:16px}.footer-call{padding:0}.footer-call span,.footer-call a{display:inline-block;padding:1.35rem 2.18rem}.footer-call .contact-number{position:relative;padding-left:30px;padding-left:2.1818181818rem}.footer-call .contact-number i{position:absolute;top:50%;-webkit-transform:translateY(-50%);-moz-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%);font-size:21px;font-size:1.5272727273rem;left:0}.footer-call.show-for-ts{display:none}@media (pointer:coarse) and (hover:none){.footer-call.show-for-ts{display:inline-block}}.footer-payment-list{margin:1rem 0 -1rem 0}.footer-top{padding:9px 0;padding:0.6545454545rem 0}.footer-top h4{margin-top:0;margin-bottom:0.6rem;padding-top:21px;padding-top:1.5272727273rem;color:#000000;font-weight:700;font-size:18px}.footer-top h4.contact{color:#000000;margin-bottom:1rem}.footer-social{margin-top:2rem}.footer-social.menu li{margin:0 1rem}.footer-social a{color:#000000;font-size:40px}.footer-list{display:inline-block}.footer-list.menu>li>a{padding:0.7rem 0}.footer-list li{display:inline-block}.footer-list li+li{margin:0}.footer-list a{padding-left:0 !important;color:#000000;font-size:13px}@media screen and (min-width:40em){.footer-list li+li a:before{content:"/";margin:0 10px;padding-left:5px;color:#000000}}.payment-icons{margin-top:1rem}@media screen and (max-width:39.9375em){.payment-icons{width:22rem;padding-right:1rem;margin:0 auto}}.payment-icons i{font-size:30px;height:35px;margin:5px 0px 5px 8px;width:35px;color:#000000}.off-canvas-mobile,.off-canvas-filters{width:350px;-webkit-transform:translateX(-350px);-moz-transform:translateX(-350px);-ms-transform:translateX(-350px);transform:translateX(-350px);background-color:#fff}.off-canvas-mobile a.off-canvas-header,.off-canvas-filters a.off-canvas-header{padding:1.2rem 1.5rem;display:block;background:#4A1639;color:#fff;font-size:18px;font-size:1.3090909091rem}.off-canvas-mobile a.off-canvas-header i,.off-canvas-filters a.off-canvas-header i{display:block}.off-canvas-mobile{background:#FFFFFF}.off-canvas-mobile .is-drilldown-submenu{background:#FFFFFF}.off-canvas-mobile a.off-canvas-header{background:#C28DB0;color:#FFFFFF}.off-canvas-filters .accordion{background:transparent}.off-canvas-filters .filters{padding:0.2rem 1.5rem}.off-canvas-filters .close-filters{text-decoration:underline;display:inline-block;padding:0 1.5rem;color:#000000;font-size:12px;font-size:0.8727272727rem}.off-canvas-filters .reset-all-button{display:none}.off-canvas::-webkit-scrollbar{display:none}.off-canvas:after{display:none}.mobile-menu li{text-transform:uppercase}.mobile-menu li.is-drilldown-submenu-parent>a:after{border:none;content:"";font-family:"sw-icons" !important;right:2rem;color:#000000}.mobile-menu li.js-drilldown-back>a:before{border:none;content:"";font-family:"sw-icons" !important;vertical-align:top;margin-right:1.25rem}.mobile-menu{padding-top:3.75rem;color:#000000}.mobile-menu-container .is-drilldown{overflow-y:auto}.mobile-menu-container>.row:first-child>.column:last-child{border-left:1px solid #FFFFFF}.mobile-menu-heading{background-color:#FFFFFF;color:#000000;padding:1.05rem 1.5rem;display:block}.mobile-menu>li>.mobile-menu-button{background-color:#FFFFFF;font-family:"Poppins", sans-serif;width:50%;position:absolute;left:0;top:0;height:3.75rem;line-height:3.75rem;white-space:nowrap;padding:0 0.5rem;border-radius:0;background-color:#FFFFFF;color:#000000;text-transform:none;margin-bottom:0;font-weight:400;font-size:1rem}.mobile-menu>li>.mobile-menu-button:hover,.mobile-menu>li>.mobile-menu-button:focus,.mobile-menu>li>.mobile-menu-button:active,.mobile-menu>li>.mobile-menu-button.active{outline:none;background-color:#FFFFFF;color:#000000}.mobile-menu>li>.mobile-menu-button span{margin-left:5px;font-size:12px;font-size:0.8727272727rem}.mobile-menu>li>.mobile-menu-button i{font-size:16px;font-size:1.1636363636rem}.mobile-menu>li>.mobile-menu-button:after{display:none}.mobile-menu>li:not(:first-child)>.mobile-menu-button{left:auto;right:0}.mobile-menu>li:not(:first-child)>.mobile-menu-button:before{content:"";position:absolute;left:1px;border-left:1px solid #FFFFFF;width:1px;height:100%;top:0}.mobile-menu li a{background-color:#FFFFFF;color:#000000;padding:1rem 1.5rem}.mobile-menu li+li a{border-top:1px solid #FFFFFF}.mobile-menu li.sub-list a{background-color:#FFFFFF;border-top-color:#FFFFFF;color:#000000}.mobile-menu .nested{margin-left:0}.sw-section{margin-top:30px;margin-top:2.1818181818rem;margin-bottom:30px;margin-bottom:2.1818181818rem}.sw-section-slider-img-with-text.slick-slider:not(.slick-initialized){position:relative;visibility:visible;z-index:1;overflow:hidden;height:35vw}.sw-section-slider-img-with-text>.arrow{background-color:#F3F0EE;display:block;font-size:20px;font-size:1.4545454545rem;width:50px;width:3.6363636364rem;height:50px;height:3.6363636364rem;line-height:50px;line-height:3.6363636364rem;text-align:center;color:#1A1919}.sw-section-slider-img-with-text>.arrow i{vertical-align:top}.sw-section-slider-img-with-text .sw-section-slide{position:relative}.sw-section-slider-img-with-text .sw-section-slide>.image-container{padding-top:100%}@media screen and (min-width:40em){.sw-section-slider-img-with-text .sw-section-slide>.image-container{padding-top:35%}}.sw-section-slider-img-with-text .sw-section-slide>.responsive-embed{padding-bottom:100%}@media screen and (min-width:40em){.sw-section-slider-img-with-text .sw-section-slide>.responsive-embed{padding-bottom:35%}}@media screen and (min-width:1200px){.sw-section-slider-img-with-text .sw-section-slide>.responsive-embed iframe{left:50%;-webkit-transform:translateX(-50%);-moz-transform:translateX(-50%);-ms-transform:translateX(-50%);transform:translateX(-50%)}}.sw-section-slider-img-with-text-dotnav{bottom:auto}@media screen and (max-width:63.9375em){.sw-section-slider-img-with-text-dotnav{top:100%}}@media screen and (min-width:64em){.sw-section-slider-img-with-text-dotnav{bottom:30px;bottom:2.1818181818rem}}.sw-section-slider-img-with-text-dotnav li{margin:0}.sw-section-slider-img-with-text-dotnav li button:before{color:#F9F9F9;font-size:15px;font-size:1.0909090909rem;opacity:1}.sw-section-slider-img-with-text-dotnav li.slick-active button:before{color:#319295}.sw-section-slider-img-with-text .sw-section-slide-button-overlay{position:relative}@media screen and (min-width:40em){.sw-section-slider-img-with-text .sw-section-slide-button-overlay{position:absolute;top:50%;-webkit-transform:translateY(-50%);-moz-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%);left:50%;-webkit-transform:translate(-50%, -50%);-moz-transform:translate(-50%, -50%);-ms-transform:translate(-50%), -50%;transform:translate(-50%, -50%)}}.sw-section-slider-img-with-text .sw-section-slide-button-overlay.mod-align-left{left:25px;-webkit-transform:translate(0, -50%);-moz-transform:translate(0, -50%);-ms-transform:translate(0, -50%);transform:translate(0, -50%)}.sw-section-slider-img-with-text .sw-section-slide-button-overlay.mod-align-right{right:25px;text-align:right;-webkit-transform:translate(0, -50%);-moz-transform:translate(0, -50%);-ms-transform:translate(0, -50%);transform:translate(0, -50%)}.sw-section-slider-img-with-text .sw-section-slide-button-overlay .button{border:2px solid #FFF;background-color:rgba(255, 255, 255, 0);color:#FFF;min-width:200px;min-width:14.5454545455rem;padding:20px;padding:1.4545454545rem;margin-bottom:0}@media screen and (min-width:64em){.sw-section.slick-dotted{margin-bottom:0}}.sw-section-slide-overlay{background-color:#FFFFFF;padding:20px;padding:1.4545454545rem}@media screen and (max-width:63.9375em){.sw-section-slide-overlay{position:relative;top:-50px;top:-3.6363636364rem;margin-left:15px;margin-left:1.0909090909rem;margin-right:15px;margin-right:1.0909090909rem;padding-top:60px;padding-top:4.3636363636rem}}@media screen and (min-width:40em){.sw-section-slide-overlay{padding:38px 60px;padding:2.7636363636rem 4.3636363636rem}}@media screen and (min-width:64em){.sw-section-slide-overlay{width:508px;width:36.9454545455rem;position:absolute;top:50%;-webkit-transform:translateY(-50%);-moz-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%)}}.sw-section-slide-overlay h2{font-size:24px;font-size:1.7454545455rem;font-weight:600;line-height:1.05;margin-bottom:20px;margin-bottom:1.4545454545rem}.sw-section-slide-overlay p{font-size:14px;font-size:1.0181818182rem;margin-bottom:20px;margin-bottom:1.4545454545rem;max-height:92px;max-height:6.6909090909rem;overflow:hidden}.sw-section-slide-overlay-link{color:#319295;text-decoration:underline}.sw-section-slide-overlay-nav{display:none}@media screen and (min-width:40em){.sw-section-slide-overlay-nav{position:absolute;right:-50px;right:-3.6363636364rem;bottom:0;display:block}}.sw-section-slide-overlay-nav button{background-color:#F3F0EE;display:block;font-size:20px;font-size:1.4545454545rem;width:50px;width:3.6363636364rem;height:50px;height:3.6363636364rem;line-height:50px;line-height:3.6363636364rem;text-align:center;color:#1A1919}.sw-section-slide-overlay-nav button:first-child{position:relative;top:50px;top:3.6363636364rem}.sw-section-slide-overlay-nav button:last-child{position:relative;top:-50px;top:-3.6363636364rem}.sw-section-slide-overlay-btn.button{font-size:14px;font-size:1.0181818182rem;padding:24px 26px;padding:1.7454545455rem 1.8909090909rem;min-width:auto}.sw-section-slide-overlay.mod-align-left{left:0;right:auto}.sw-section-slide-overlay.mod-align-right{right:0;left:auto}@media screen and (min-width:40em){.sw-section-slide-overlay.mod-align-right .sw-section-slide-overlay-nav{left:-50px;left:-3.6363636364rem;right:auto}}.sw-section-slide-overlay.mod-align-center{left:50%;position:absolute;top:50%;-webkit-transform:translateY(-50%);-moz-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%);left:50%;-webkit-transform:translate(-50%, -50%);-moz-transform:translate(-50%, -50%);-ms-transform:translate(-50%), -50%;transform:translate(-50%, -50%);right:auto}.sw-section-img-with-text{background-color:#FFFFFF;padding:30px 20px;padding:2.1818181818rem 1.4545454545rem}@media screen and (min-width:64em){.sw-section-img-with-text{padding:60px 0;padding:4.3636363636rem 0}}.sw-section-img-with-text>.row>.column{background-color:#FFFFFF}@media screen and (min-width:64em){.sw-section-img-with-text>.row>.column>*{position:relative;top:50%;-webkit-transform:translateY(-50%);-moz-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%)}}.sw-section-img-with-text .text-overlay{background-color:#FFFFFF;padding:20px;padding:1.4545454545rem}@media screen and (min-width:64em){.sw-section-img-with-text .text-overlay{padding:45px;padding:3.2727272727rem}}.sw-section-img-with-text .text-overlay h2{font-size:24px;font-size:1.7454545455rem;font-weight:600;line-height:18px;margin-bottom:19px;margin-bottom:1.3818181818rem}.sw-section-img-with-text .text-overlay p{font-size:14px;font-size:1.0181818182rem;margin-bottom:19px;margin-bottom:1.3818181818rem}.sw-section-img-with-text-btn{min-width:172px;min-width:12.5090909091rem;padding:15px;padding:1.0909090909rem;background-color:#94C6C8;color:#FFFFFF}@media screen and (min-width:64em){.sw-section-img-with-overlay .slick-slider{margin-left:50px;margin-left:3.6363636364rem;margin-right:50px;margin-right:3.6363636364rem}}.sw-section-img-with-overlay .arrow{background-color:#F3F0EE;display:block;font-size:20px;font-size:1.4545454545rem;width:50px;width:3.6363636364rem;height:50px;height:3.6363636364rem;line-height:50px;line-height:3.6363636364rem;text-align:center;color:#1A1919}.sw-section-img-with-overlay .arrow i{vertical-align:top;display:inline-block}@media screen and (min-width:64em){.sw-section-img-with-overlay .arrow.arrow-prev{left:-50px;left:-3.6363636364rem}.sw-section-img-with-overlay .arrow.arrow-next{right:-50px;right:-3.6363636364rem}}.sw-section-img-with-overlay .inner{position:relative}@media screen and (min-width:40em){.sw-section-img-with-overlay .inner{border:15px solid #FFFFFF}}@media screen and (max-width:39.9375em){.sw-section-img-with-overlay .image-container{position:relative}.sw-section-img-with-overlay .image-container:after{content:"";position:absolute;top:0;bottom:0;left:0;right:0;height:100%;border:15px solid #F3F0EE}}@media screen and (min-width:40em){.sw-section-img-with-overlay .image-container{padding-top:38%}}.sw-section-img-with-overlay .responsive-embed{padding-bottom:100%}@media screen and (min-width:40em){.sw-section-img-with-overlay .responsive-embed{padding-bottom:38%}}@media screen and (min-width:1200px){.sw-section-img-with-overlay .responsive-embed iframe{left:50%;-webkit-transform:translateX(-50%);-moz-transform:translateX(-50%);-ms-transform:translateX(-50%);transform:translateX(-50%)}}.sw-section-img-with-overlay .text-overlay{color:#FFF;padding:20px;padding:1.4545454545rem;text-align:center;position:absolute;top:50%;-webkit-transform:translateY(-50%);-moz-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%);left:50%;-webkit-transform:translate(-50%, -50%);-moz-transform:translate(-50%, -50%);-ms-transform:translate(-50%), -50%;transform:translate(-50%, -50%)}@media screen and (min-width:64em){.sw-section-img-with-overlay .text-overlay{min-width:780px;min-width:56.7272727273rem}.sw-section-img-with-overlay .text-overlay.mod-left{position:absolute;top:50%;-webkit-transform:translateY(-50%);-moz-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%);left:20px;left:1.4545454545rem;text-align:left}.sw-section-img-with-overlay .text-overlay.mod-right{position:absolute;top:50%;-webkit-transform:translateY(-50%);-moz-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%);right:20px;right:1.4545454545rem;text-align:right;left:auto}}.sw-section-img-with-overlay .text-overlay-heading{font-family:"IBM Plex Sans", serif;font-size:28px;font-size:2.0363636364rem;font-weight:700;line-height:36px;line-height:2.6181818182rem;margin-bottom:30px;margin-bottom:2.1818181818rem}.sw-section-img-with-overlay .text-overlay-heading p{margin-bottom:0}.sw-section-img-with-overlay .text-overlay .button{border:2px solid #FFFFFF;background-color:rgba(255, 255, 255, 0);color:#FFFFFF;min-width:200px;min-width:14.5454545455rem;padding:20px;padding:1.4545454545rem;margin-bottom:0}@media screen and (max-width:63.9375em){.sw-section-img-with-overlay .slick-dots{position:static}}.sw-section-text-columns-with-images{background-color:#F9F7F6;padding:30px 0;padding:2.1818181818rem 0}@media screen and (min-width:64em){.sw-section-text-columns-with-images{padding:60px 0;padding:4.3636363636rem 0}.sw-section-text-columns-with-images .row.expanded{margin-bottom:-30px;margin-bottom:-2.1818181818rem}}.sw-section-text-columns-with-images .column:last-child:not(:first-child){float:left}@media screen and (min-width:64em){.sw-section-text-columns-with-images .mod-center{text-align:center}.sw-section-text-columns-with-images .mod-center>.column,.sw-section-text-columns-with-images .mod-center>.column:last-child:not(:first-child){display:inline-block;float:none;margin-left:auto;margin-right:auto;text-align:left;vertical-align:top}}.sw-section-text-columns-with-images .image-container{padding-top:100%}.sw-section-text-columns-with-images .text-block{padding:20px;padding:1.4545454545rem}@media screen and (min-width:64em){.sw-section-text-columns-with-images .text-block{padding:30px;padding:2.1818181818rem}}.sw-section-text-columns-with-images .text-block h2{color:#4A1639;font-size:18px;font-size:1.3090909091rem;font-weight:600;line-height:16px;margin-bottom:20px;margin-bottom:1.4545454545rem}.sw-section-text-columns-with-images .text-block p{font-size:14px;font-size:1.0181818182rem;margin-bottom:20px;margin-bottom:1.4545454545rem}.sw-section-text-columns-with-images .text-block .sw-section-link{color:#319295;text-decoration:underline}.sw-section-text-columns-with-images .sw-section-item-box{background-color:#FFFFFF;padding:10px;padding:0.7272727273rem;margin-bottom:30px;margin-bottom:2.1818181818rem}@media screen and (max-width:63.9375em){.sw-section-text-columns-with-images .sw-section-item-box{margin-bottom:30px;margin-bottom:2.1818181818rem}}@media screen and (min-width:64em){.sw-section-text-columns-with-images .sw-section-item-box{height:calc(100% - 30px)}}.sw-section-image-gallery{text-align:center}.sw-section-image-gallery h1,.sw-section-image-gallery h2,.sw-section-image-gallery h3,.sw-section-image-gallery h4,.sw-section-image-gallery h5,.sw-section-image-gallery h6{margin-bottom:28px;margin-bottom:2.0363636364rem}.sw-section-image-gallery .button{padding:15px;padding:1.0909090909rem;min-width:172px;min-width:12.5090909091rem;margin-top:20px;margin-top:1.4545454545rem;margin-bottom:0}.sw-section-image-gallery-slider .arrow.slick-arrow{margin-top:-12px;margin-top:-0.8727272727rem;background-color:#F3F0EE;display:block;font-size:20px;font-size:1.4545454545rem;width:50px;width:3.6363636364rem;height:50px;height:3.6363636364rem;line-height:50px;line-height:3.6363636364rem;text-align:center;color:#1A1919}.sw-section-image-gallery-slider .arrow.slick-arrow i{vertical-align:top;display:inline-block}.sw-section-image-gallery-slider .arrow.slick-arrow.arrow-next{right:-2px}@media screen and (min-width:40em){.sw-section-image-gallery-slider .slick-list{margin-right:-0.9375rem;margin-left:-0.9375rem}}.sw-section-image-gallery-slider.slick-dotted{margin-bottom:50px}.sw-section-image-gallery-dotnav{margin-top:20px;margin-top:1.4545454545rem}.sw-section-image-gallery-dotnav li{margin:0}@media screen and (max-width:39.9375em){.sw-section-image-gallery-dotnav li{position:relative;top:-7px}}.sw-section-image-gallery-dotnav li button:before{color:#F3F0EE;font-size:20px;opacity:1}.sw-section-image-gallery-dotnav li.slick-active button:before{color:#319295}.sw-section-blog-heading{font-size:24px !important;line-height:18px;line-height:1.3090909091rem;margin-bottom:30px;margin-bottom:2.1818181818rem;color:#000000}.sw-section-blog-btn{padding:15px;padding:1.0909090909rem;min-width:172px;min-width:12.5090909091rem;margin-top:20px;margin-top:1.4545454545rem;margin-bottom:0;background-color:#319295;color:#FFFFFF}.sw-section-blog-item{font-size:14px;font-size:1.0181818182rem;position:relative;margin-bottom:22px;margin-bottom:1.6rem}.sw-section-blog-item.mod-rect .image-container{padding-top:48%}.sw-section-blog-overlay{background-color:#FFFFFF;color:#000000;padding:30px;padding:2.1818181818rem;font-size:13px;font-size:0.9454545455rem}@media screen and (min-width:40em){.sw-section-blog-overlay{position:absolute;top:0;left:0;right:20%;bottom:auto;overflow:hidden;pointer-events:none;background-color:#FFF}}@media screen and (min-width:64em){.sw-section-blog-overlay{right:50%;bottom:auto}}.mod-rect .sw-section-blog-overlay{padding:30px 15px;padding:2.1818181818rem 1.0909090909rem;top:auto;right:auto;bottom:30px;bottom:2.1818181818rem}@media screen and (min-width:40em){.mod-rect .sw-section-blog-overlay{max-width:90%}}.mod-rect .sw-section-blog-overlay h3{font-size:18px;font-size:1.3090909091rem;line-height:16px;line-height:1.1636363636rem;padding-right:30px;padding-right:2.1818181818rem;margin-bottom:0;position:relative}.mod-rect .sw-section-blog-overlay h3:after{font-family:"sw-icons" !important;content:"";position:absolute;right:5px;top:50%;margin-top:-7px}.sw-section-blog-overlay h3{font-size:24px;font-size:1.7454545455rem;line-height:24px;line-height:1.7454545455rem;margin-bottom:16px;margin-bottom:1.1636363636rem}.sw-section-blog-overlay a{color:#319295;font-size:14px;font-size:1.0181818182rem;text-decoration:underline}.sw-section-blog-excerpt{max-height:85px;max-height:6.1818181818rem;overflow:hidden}.sw-section-blog-excerpt p:last-child{margin-bottom:0}.sw-section-blog-stats{margin-bottom:20px;margin-bottom:1.4545454545rem}.sw-section-blog-stats>:first-child{margin-right:15px;margin-right:1.0909090909rem}.sw-section-blog-stats time{font-weight:600}.sw-section-testimonials-heading{font-size:24px !important;margin-bottom:30px;margin-bottom:2.1818181818rem;color:#000000}@media screen and (min-width:64em){.sw-section-testimonials-heading{margin-bottom:50px;margin-bottom:3.6363636364rem}}@media screen and (min-width:40em){.sw-section-testimonials.mod-show-1 .slick-list{max-width:50%;margin-left:25%}.sw-section-testimonials.mod-show-1 .slick-list .testimonials-box{text-align:center}}.sw-section-testimonials .testimonials-box{background-color:#FFF;border:1px solid #F3F0EE;padding:60px 30px 30px;padding:4.3636363636rem 2.1818181818rem 2.1818181818rem;margin-left:20px;margin-left:1.4545454545rem;margin-right:20px;margin-right:1.4545454545rem;margin-top:30px;margin-top:2.1818181818rem;position:relative}.sw-section-testimonials .testimonials-box:before{background-color:#F3F0EE;border-radius:100%;content:open-quote close-quote;color:#0091B9;font-weight:900;position:absolute;text-align:center;top:-27px;top:-1.9636363636rem;left:50%;margin-left:-27px;margin-left:-1.9636363636rem;font-size:40px;font-size:2.9090909091rem;width:55px;width:4rem;height:55px;height:4rem;line-height:70px;line-height:5.0909090909rem}@media screen and (min-width:64em){.sw-section-testimonials .testimonials-box{margin-left:15px;margin-left:1.0909090909rem;margin-right:15px;margin-right:1.0909090909rem}}.sw-section-testimonials .testimonials-box p{font-size:14px;line-height:22px;line-height:1.6rem;margin-bottom:30px;margin-bottom:2.1818181818rem;color:#000000}.sw-section-testimonials .testimonials-box-name{color:#4A1639;font-size:14px;font-weight:600}.sw-section-testimonials-dotnav{position:static;margin-top:20px;margin-top:1.4545454545rem}.sw-section-testimonials-dotnav li{margin:0}@media screen and (max-width:39.9375em){.sw-section-testimonials-dotnav li{position:relative;top:-7px}}.sw-section-testimonials-dotnav li button:before{color:#F3F0EE;font-size:20px;opacity:1}.sw-section-testimonials-dotnav li.slick-active button:before{color:#319295}.sw-section-testimonials button.arrow{font-size:40px;font-size:2.9090909091rem;bottom:-30px;bottom:-2.1818181818rem;padding:0;top:auto}@media screen and (min-width:40em){.sw-section-testimonials button.arrow{font-size:60px;font-size:4.3636363636rem;bottom:-50px;bottom:-3.6363636364rem}}.sw-section-testimonials button.arrow.arrow-prev{left:20px;left:1.4545454545rem}@media screen and (min-width:64em){.sw-section-testimonials button.arrow.arrow-prev{left:30px;left:2.1818181818rem}}.sw-section-testimonials button.arrow.arrow-next{right:20px;right:1.4545454545rem}@media screen and (min-width:64em){.sw-section-testimonials button.arrow.arrow-next{right:30px;right:2.1818181818rem}}.sw-section-testimonials button.arrow+button{margin-left:30px;margin-left:2.1818181818rem}@media screen and (max-width:39.9375em){.sw-section-testimonials .slick-list{padding-right:20%}.mod-show-1.sw-section-testimonials .slick-list{padding-right:0}}@media screen and (min-width:64em){.sw-section-testimonials .slick-list{margin-left:-15px;margin-left:-1.0909090909rem;margin-right:-15px;margin-right:-1.0909090909rem}}.sw-section-video .image-container{border:15px solid #F3F0EE;padding-top:140%}@media screen and (min-width:40em){.sw-section-video .image-container{padding-top:34%}}.sw-section-video .responsive-embed{border:15px solid #F3F0EE;padding-bottom:100%}@media screen and (min-width:40em){.sw-section-video .responsive-embed{padding-bottom:50%}}@media screen and (min-width:1200px){.sw-section-video .responsive-embed iframe{left:50%;-webkit-transform:translateX(-50%);-moz-transform:translateX(-50%);-ms-transform:translateX(-50%);transform:translateX(-50%)}}.sw-section-video-overlay{user-select:none;pointer-events:none;position:absolute;background-color:rgba(0, 0, 0, 0.35);top:0;right:0;bottom:0;left:0;text-align:center}.sw-section-video-btn{color:#fff;display:inline-block;position:relative;top:50%;-webkit-transform:translateY(-50%);-moz-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%)}.sw-section-video-btn i{font-size:60px;font-size:4.3636363636rem;color:#fff}.sw-section-video-btn span{display:block;font-size:16px;font-size:1.1636363636rem;margin-top:5px;margin-top:0.3636363636rem}.sw-section-newsletter{background-color:#F9F8F7;padding-top:30px;padding-top:2.1818181818rem;padding-bottom:30px;padding-bottom:2.1818181818rem;text-align:center}.sw-section-newsletter-icon{background-color:#F3F0EE;border-radius:100%;display:inline-block;line-height:75px;line-height:5.4545454545rem;width:60px;width:4.3636363636rem;height:60px;height:4.3636363636rem;margin-bottom:15px;margin-bottom:1.0909090909rem;text-align:center}.sw-section-newsletter-icon i{font-size:24px;font-size:1.7454545455rem}.sw-section-newsletter-heading{color:#4A1639;font-size:20px !important;font-weight:600;margin-bottom:15px;margin-bottom:1.0909090909rem}.sw-section-newsletter-form .input-group{margin-bottom:0}.sw-section-newsletter-form .input-group-field{background-color:#FFF;border:0;border-radius:5px 0 0 5px;font-size:14px;font-size:1.0181818182rem}.sw-section-newsletter-form .input-group-field::-webkit-input-placeholder{color:#B7B7B7}.sw-section-newsletter-form .input-group-field:-moz-placeholder{color:#B7B7B7;opacity:1}.sw-section-newsletter-form .input-group-field::-moz-placeholder{color:#B7B7B7;opacity:1}.sw-section-newsletter-form .input-group-field:-ms-input-placeholder{color:#B7B7B7}.sw-section-newsletter-form .input-group-field:hover,.sw-section-newsletter-form .input-group-field:focus,.sw-section-newsletter-form .input-group-field:active,.sw-section-newsletter-form .input-group-field.active{outline:none;background-color:#FFF;border:0}.sw-section-newsletter-form .input-group-button{background-color:#319295;border-radius:0 5px 5px 0;color:#FFFFFF}.sw-section-newsletter-form .input-group-button button{background-color:#319295;color:#FFFFFF;font-size:16px;font-size:1.1636363636rem}.sw-section-newsletter-form .input-group-button button:hover,.sw-section-newsletter-form .input-group-button button:focus,.sw-section-newsletter-form .input-group-button button:active,.sw-section-newsletter-form .input-group-button button.active{outline:none;background-color:#319295;color:#FFFFFF}.sw-section-overlay-tint{position:relative}.sw-section-overlay-tint:after{background-color:rgba(0, 0, 0, 0.15);position:absolute;content:"";top:0;right:0;bottom:0;left:0;user-select:none;pointer-events:none}.sw-section .slick-slider:not(.slick-initialized) .slick-slide:first-child{display:block}.featured-categories{padding-top:0 !important;background-color:#FFFFFF !important}.featured-brands{padding-top:0 !important;background-color:#FFFFFF !important}.border{border:1px solid #ddd}.no-border{border:0}.no-border.important{border:0 !important}.border-left{border-left:1px solid #ddd}.no-border-left{border-left:0}.no-border-left.important{border-left:0 !important}.border-right{border-right:1px solid #ddd}.no-border-right{border-right:0}.no-border-right.important{border-right:0 !important}.border-top{border-top:1px solid #ddd}.no-border-top{border-top:0}.no-border-top.important{border-top:0 !important}.border-bottom{border-bottom:1px solid #ddd}.no-border-bottom{border-bottom:0}.no-border-bottom.important{border-bottom:0 !important}.margin{margin:1em}.no-margin{margin:0}.no-margin.important{margin:0 !important}.margin-left{margin-left:1em}.no-margin-left{margin-left:0}.no-margin-left.important{margin-left:0 !important}.margin-right{margin-right:1em}.no-margin-right{margin-right:0}.no-margin-right.important{margin-right:0 !important}.margin-top{margin-top:1em}.no-margin-top{margin-top:0}.no-margin-top.important{margin-top:0 !important}.margin-bottom{margin-bottom:1em}.no-margin-bottom{margin-bottom:0}.no-margin-bottom.important{margin-bottom:0 !important}.padding{padding:1em}.no-padding{padding:0}.no-padding.important{padding:0 !important}.padding-left{padding-left:1em}.no-padding-left{padding-left:0}.no-padding-left.important{padding-left:0 !important}.padding-right{padding-right:1em}.no-padding-right{padding-right:0}.no-padding-right.important{padding-right:0 !important}.padding-top{padding-top:1em}.no-padding-top{padding-top:0}.no-padding-top.important{padding-top:0 !important}.padding-bottom{padding-bottom:1em}.no-padding-bottom{padding-bottom:0}.no-padding-bottom.important{padding-bottom:0 !important}.margin-top-sm{margin-top:0.5rem}.padding-top-sm{padding-top:0.5rem}.full-width{width:100%}.flex-container{display:flex}.link-underline{text-decoration:underline}.link-underline.mod-custom{font-weight:500;font-family:"IBM Plex Sans", serif;font-size:13px;font-size:0.9454545455rem}.color{font-weight:500;font-family:"IBM Plex Sans", serif;color:#4A1639}.row-table{display:table;width:100%;height:100%}.row-table.mod-inner{width:auto}.text-right .row-table.mod-inner{margin-left:auto}.row-table .col-cell{display:table-cell;vertical-align:middle;float:none !important}.row-table.mod-top .col-cell{vertical-align:top}@media screen and (max-width:63.9375em){.row-table.medium{display:block}.row-table.medium .col-cell{display:block;widht:100%}}@media screen and (max-width:39.9375em){.row-table.small{display:block}.row-table.small .col-cell{display:block;widht:100%}}@media (pointer:coarse) and (hover:none){.hide-for-ts{display:none !important}}.js-is-touch .hide-for-ts{display:none !important}@media (hover:hover) and (pointer:fine){.show-for-ts{display:none !important}}.js-no-touch .show-for-ts{display:none !important}.text-lower{text-transform:lowercase}.text-upper{text-transform:uppercase}.text-caps{text-transform:capitalize}.text-nocase{text-transform:none}.text-underline{text-decoration:underline}.text-light{font-weight:100}.text-semi-bold{font-weight:500}.text-bold{font-weight:700}.text-body{color:#000000}.text-body:hover,.text-body:focus,.text-body:active,.text-body.active{outline:none;color:#000000}.text-highlight{color:#4A1639}.text-highlight:hover,.text-highlight:focus,.text-highlight:active,.text-highlight.active{outline:none;color:#4A1639}.text-medium{font-size:1.2em}.text-large{font-size:1.5em}.text-small{font-size:0.85em}/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIl9mb250cy5zY3NzIiwiX3Nob3B3aXJlZC5zY3NzIiwiX2ZsYWdzLnNjc3MiLCJfdHlwb2dyYXBoeS5zY3NzIiwiX3Rvb2xzLnNjc3MiLCJfY29udHJvbHMuc2NzcyIsIl9mb3Jtcy5zY3NzIiwiX29iamVjdHMuc2NzcyIsIl9jb21wb25lbnRzLnNjc3MiLCJfY29tcG9uZW50c19hY2NvdW50LnNjc3MiLCJfY29tcG9uZW50c19wcm9kdWN0LnNjc3MiLCJfY29tcG9uZW50c19iYXNrZXQuc2NzcyIsIl9jb21wb25lbnRzX2Jhc2tldF9vZmZjYW52YXMuc2NzcyIsIl9jb21wb25lbnRzX2NoZWNrb3V0LnNjc3MiLCJfY29tcG9uZW50c19oZWFkZXIuc2NzcyIsIl9jb21wb25lbnRzX2Zvb3Rlci5zY3NzIiwiX21vYmlsZV9tZW51LnNjc3MiLCJfc2VjdGlvbnMuc2NzcyIsIl91dGlsaXRpZXMuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBV0EsV0FBQSwrUUFBQSxDQVdBLHlDQUFBLDRNQUFBLENBZUEsMkJBQUEsMkJBQUEsQ0FJQSwwQkFBQSx3REFBQSxDQU1BLHVCQUFBLGFBQUEsQ0FHQSxvQkFBQSx3REFBQSxDQU1BLHlCQUFBLGFBQUEsQ0FHQSx3QkFBQSxhQUFBLENBR0EscUJBQUEsYUFBQSxDQUdBLDJCQUFBLGFBQUEsQ0FHQSxxQkFBQSxhQUFBLENBSUEscUJBQUEsNkRBQUEsQ0FLQSx1QkFBQSw2REFBQSxDQUtBLHFCQUFBLGFBQUEsQ0FHQSx1QkFBQSxhQUFBLENBR0EseUJBQUEsYUFBQSxDQUdBLHVCQUFBLGFBQUEsQ0FHQSw2QkFBQSw2REFBQSxDQUtBLHNCQUFBLDJCQUFBLENBSUEsOEJBQUEsYUFBQSxDQUdBLDhCQUFBLGFBQUEsQ0FHQSw0QkFBQSxhQUFBLENBR0EsNkJBQUEsMkNBQUEsQ0FJQSw4QkFBQSxhQUFBLENBR0EscUJBQUEsYUFBQSxDQUdBLHdCQUFBLGFBQUEsQ0FHQSx5QkFBQSxhQUFBLENBR0EsMkJBQUEsYUFB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QkFBQSxDQUNBLElBQUEsNkJBQUEsQ0FDQSxJQUFBLDZCQUFBLENBQ0EsSUFBQSw2QkFBQSxDQUNBLElBQUEsNkJBQUEsQ0FDQSxJQUFBLDZCQUFBLENBQ0EsSUFBQSw2QkFBQSxDQUNBLElBQUEsNkJBQUEsQ0FDQSxJQUFBLDZCQUFBLENBQ0EsSUFBQSw2QkFBQSxDQUNBLElBQUEsNkJBQUEsQ0FDQSxJQUFBLDZCQUFBLENBQ0EsSUFBQSw2QkFBQSxDQUNBLElBQUEsNkJBQUEsQ0FDQSxJQUFBLDZCQUFBLENBQ0EsSUFBQSw2QkFBQSxDQUNBLElBQUEsNkJBQUEsQ0FDQSxJQUFBLDZCQUFBLENBQ0EsSUFBQSw2QkFBQSxDQUNBLElBQUEsNkJBQUEsQ0FDQSxJQUFBLDZCQUFBLENBQ0EsSUFBQSw2QkFBQSxDQUNBLElBQUEsNkJBQUEsQ0FDQSxJQUFBLDZCQUFBLENBQ0EsSUFBQSw2QkFBQSxDQUNBLElBQUEsNkJBQUEsQ0FDQSxJQUFBLDZCQUFBLENBQ0EsSUFBQSw2QkFBQSxDQUNBLElBQUEsNkJBQUEsQ0FDQSxJQUFBLDZCQUFBLENBQ0EsSUFBQSw2QkFBQSxDQUNBLElBQUEsNkJBQUEsQ0FDQSxJQUFBLDZCQUFBLENBQ0EsSUFBQSw2QkFBQSxDQUNBLElBQUEsNkJBQUEsQ0FDQSxJQUFBLDZCQUFBLENBQ0EsSUFBQSw2QkFBQSxDQUNBLElBQUEsNkJBQUEsQ0FDQSxJQUFBLDZCQUFBLENBQ0EsSUFBQSw2QkFBQSxDQUNBLElBQUEsNkJBQUEsQ0FDQSxJQUFBLDZCQUFBLENBQ0EsSUFBQSw2QkFBQSxDQUNBLElBQUEsNkJBQUEsQ0FDQSxJQUFBLDZCQUFBLENBQ0EsSUFBQSw2QkFBQSxDQUNBLElBQUEsNkJBQUEsQ0FDQSxJQUFBLDZCQUFBLENBQ0EsSUFBQSw2QkFBQSxDQUNBLElBQUEsNkJBQUEsQ0FDQSxJQUFBLDZCQUFBLENBQ0EsSUFBQSw2QkFBQSxDQUNBLElBQUEsNkJBQUEsQ0FDQSxJQUFBLDZCQUFBLENBQ0EsSUFBQSw2QkFBQSxDQUNBLElBQUEsNkJBQUEsQ0FDQSxJQUFBLDZCQUFBLENBQ0EsSUFBQSw2QkFBQSxDQUNBLElBQUEsNkJBQUEsQ0FDQSxJQUFBLDZCQUFBLENBQ0EsSUFBQSw2QkFBQSxDQUNBLElBQUEsNkJBQUEsQ0FDQSxJQUFBLDZCQUFBLENBQ0EsSUFBQSw2QkFBQSxDQUNBLElBQUEsNkJBQUEsQ0FDQSxJQUFBLDZCQUFBLENBQ0EsSUFBQSw2QkFBQSxDQUNBLElBQUEsNkJBQUEsQ0FDQSxJQUFBLDZCQUFBLENBQ0EsSUFBQSw2QkFBQSxDQUNBLElBQUEsNkJBQUEsQ0FDQSxJQUFBLDZCQUFBLENBQ0EsSUFBQSw2QkFBQSxDQUNBLElBQUEsNkJBQUEsQ0FDQSxJQUFBLDZCQUFBLENBQ0EsSUFBQSw2QkFBQSxDQUNBLElBQUEsNkJBQUEsQ0FDQSxJQUFBLDZCQUFBLENBQ0EsSUFBQSw2QkFBQSxDQUNBLElBQUEsNkJBQUEsQ0FDQSxJQUFBLDZCQUFBLENBQ0EsSUFBQSw2QkFBQSxDQUNBLElBQUEsNkJBQUEsQ0FDQSxJQUFBLDZCQUFBLENBQ0EsSUFBQSw2QkFBQSxDQUNBLElBQUEsNkJBQUEsQ0FDQSxJQUFBLDZCQUFBLENBQ0EsSUFBQSw2QkFBQSxDQUNBLElBQUEsNkJBQUEsQ0FDQSxJQUFBLDZCQUFBLENBQ0EsSUFBQSw2QkFBQSxDQUNBLElBQUEsNkJBQUEsQ0FDQSxJQUFBLDZCQUFBLENBQ0EsSUFBQSw2QkFBQSxDQUNBLElBQUEsNkJBQUEsQ0FDQSxJQUFBLDZCQUFBLENBQ0EsSUFBQSw2QkFBQSxDQUNBLElBQUEsNkJBQUEsQ0FDQSxJQUFBLDZCQUFBLENBQ0EsSUFBQSw2QkFBQSxDQUNBLElBQUEsNkJBQUEsQ0FDQSxJQUFBLDZCQUFBLENBQ0EsSUFBQSw2QkFBQSxDQUNBLElBQUEsNkJBQUEsQ0FDQSxJQUFBLDZCQUFBLENBQ0EsSUFBQSw2QkFBQSxDQUNBLElBQUEsNkJBQUEsQ0FDQSxJQUFBLDZCQUFBLENBQ0EsSUFBQSw2QkFBQSxDQUNBLElBQUEsNkJBQUEsQ0FDQSxJQUFBLDZCQUFBLENBQ0EsSUFBQSw2QkFBQSxDQUNBLElBQUEsNkJBQUEsQ0FDQSxJQUFBLDZCQUFBLENBQ0EsSUFBQSw2QkFBQSxDQUNBLElBQUEsNkJBQUEsQ0FDQSxJQUFBLDZCQUFBLENBQ0EsSUFBQSw2QkFBQSxDQUNBLElBQUEsNkJBQUEsQ0FDQSxJQUFBLDZCQUFBLENBQ0EsSUFBQSw2QkFBQSxDQUNBLElBQUEsNkJBQUEsQ0FDQSxJQUFBLDZCQUFBLENBQ0EsSUFBQSw2QkFBQSxDQUNBLElBQUEsNkJBQUEsQ0FDQSxJQUFBLDZCQUFBLENBQ0EsSUFBQSw2QkFBQSxDQUNBLElBQUEsNkJBQUEsQ0FDQSxJQUFBLDZCQUFBLENBQ0EsSUFBQSw2QkFBQSxDQUNBLElBQUEsNkJBQUEsQ0FDQSxJQUFBLDZCQUFBLENBQ0EsSUFBQSw2QkFBQSxDQUNBLElBQUEsNkJBQUEsQ0FDQSxJQUFBLDZCQUFBLENBQ0EsSUFBQSw2QkFBQSxDQUNBLElBQUEsNkJBQUEsQ0FDQSxJQUFBLDZCQUFBLENBQ0EsSUFBQSw2QkFBQSxDQUNBLElBQUEsNkJBQUEsQ0FDQSxJQUFBLDZCQUFBLENBQ0EsSUFBQSw2QkFBQSxDQUNBLElBQUEsNkJBQUEsQ0FDQSxJQUFBLDZCQUFBLENBQ0EsSUFBQSw2QkFBQSxDQUNBLElBQUEsNkJBQUEsQ0FDQSxJQUFBLDZCQUFBLENBQ0EsSUFBQSw2QkFBQSxDQUNBLElBQUEsNkJBQUEsQ0FDQSxJQUFBLDZCQUFBLENBQ0EsSUFBQSw2QkFBQSxDQUNBLElBQUEsNkJBQUEsQ0FDQSxJQUFBLDZCQUFBLENBQ0EsSUFBQSw2QkFBQSxDQUNBLElBQUEsNkJBQUEsQ0FDQSxJQUFBLDZCQUFBLENBQ0EsSUFBQSw2QkFBQSxDQUNBLElBQUEsNkJBQUEsQ0FDQSxJQUFBLDZCQUFBLENBQ0EsSUFBQSw2QkFBQSxDQUNBLElBQUEsNkJBQUEsQ0FDQSxJQUFBLDZCQUFBLENBQ0EsSUFBQSw2QkFBQSxDQUNBLElBQUEsNkJBQUEsQ0FDQSxJQUFBLDZCQUFBLENBQ0EsSUFBQSw2QkFBQSxDQUNBLElBQUEsNkJBQUEsQ0FDQSxJQUFBLDZCQUFBLENBQ0EsSUFBQSw2QkFBQSxDQUNBLElBQUEsNkJBQUEsQ0FDQSxJQUFBLDZCQUFBLENBQ0EsSUFBQSw2QkFBQSxDQUNBLElBQUEsNkJBQUEsQ0FDQSxJQUFBLDZCQUFBLENBQ0EsSUFBQSw2QkFBQSxDQUNBLElBQUEsNkJBQUEsQ0FDQSxJQUFBLDZCQUFBLENBQ0EsSUFBQSw2QkFBQSxDQUNBLElBQUEsNkJBQUEsQ0FDQSxJQUFBLDZCQUFBLENBQ0EsSUFBQSw2QkFBQSxDQUNBLElBQUEsNkJBQUEsQ0FDQSxJQUFBLDZCQUFBLENBQ0EsSUFBQSw2QkFBQSxDQUNBLElBQUEsNkJBQUEsQ0FDQSxJQUFBLDZCQUFBLENBQ0EsSUFBQSw2QkFBQSxDQUNBLElBQUEsNkJBQUEsQ0FDQSxJQUFBLDZCQUFBLENBQ0EsSUFBQSw2QkFBQSxDQUNBLElBQUEsNkJBQUEsQ0FDQSxJQUFBLDZCQUFBLENBQ0EsSUFBQSw2QkFBQSxDQUNBLElBQUEsNkJBQUEsQ0FDQSxJQUFBLDZCQUFBLENBQ0EsSUFBQSw2QkFBQSxDQUNBLElBQUEsNkJBQUEsQ0FDQSxJQUFBLDZCQUFBLENBQ0EsSUFBQSw2QkFBQSxDQUNBLElBQUEsNkJBQUEsQ0FDQSxJQUFBLDZCQUFBLENBQ0EsSUFBQSw2QkFBQSxDQUNBLElBQUEsNkJBQUEsQ0FDQSxJQUFBLDZCQUFBLENBQ0EsSUFBQSw2QkFBQSxDQUNBLElBQUEsNkJBQUEsQ0FDQSxJQUFBLDZCQUFBLENBQ0EsSUFBQSw2QkFBQSxDQUNBLElBQUEsNkJBQUEsQ0FDQSxJQUFBLDZCQUFBLENBQ0EsSUFBQSw2QkFBQSxDQUNBLElBQUEsNkJBQUEsQ0FDQSxJQUFBLDZCQUFBLENBQ0EsSUFBQSw2QkFBQSxDQUNBLElBQUEsNkJBQUEsQ0FDQSxJQUFBLDZCQUFBLENBQ0EsSUFBQSw2QkFBQSxDQUNBLElBQUEsNkJBQUEsQ0FDQSxJQUFBLDZCQUFBLENBQ0EsSUFBQSw2QkFBQSxDQUNBLElBQUEsNkJBQUEsQ0FDQSxJQUFBLDZCQUFBLENBQ0EsSUFBQSw2QkFBQSxDQUNBLElBQUEsNkJBQUEsQ0FDQSxJQUFBLDZCQUFBLENDbmVKLFVBQUEs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LGtCQUFBLGVBQUEsQ0FFSSw0QkFBQSwwQkFBQSxDQXBCSixhQUFBLGVBQUEsQ0FrQkEsZ0JBQUEsYUFBQSxDQUVJLDBCQUFBLHdCQUFBLENBcEJKLGdCQUFBLGtCQUFBLENBa0JBLG1CQUFBLGdCQUFBLENBRUksNkJBQUEsMkJBQUEsQ0FPWixlQUFBLGlCQUFBLENBSUEsZ0JBQUEsa0JBQUEsQ0FJQSxZQUFBLFVBQUEsQ0FJQSxnQkFBQSxZQUFBLENBSUEsZ0JBQUEseUJBQUEsQ0FHSSwyQkFBQSwyRkFBQSxDQU9KLE9BQUEsZ0VBQUEsQ0FNQSxXQUFBLG9DQUFBLENBS0kscUJBQUEsVUFBQSxDQUdJLGlDQUFBLGdCQUFBLENBS0oscUJBQUEsOERBQUEsQ0FPSSw2QkFBQSxrQkFBQSxDQUtKLHdDQUNJLGtCQUFBLGFBQUEsQ0FHSSw0QkFBQSx3QkFBQSxDQUFBLENBT1Isd0NBQ0ksaUJBQUEsYUFBQSxDQUdJLDJCQUFBLHdCQUFBLENBQUEsQ0FVUix5Q0FBQSxhQUFBLHVCQUFBLENBQUEsQ0FHQSwwQkFBQSx1QkFBQSxDQUtBLHdDQUFBLGFBQUEsdUJBQUEsQ0FBQSxDQUdBLDBCQUFBLHVCQUFBLENBUUEsWUFBQSx3QkFBQSxDQUNBLFlBQUEsd0JBQUEsQ0FDQSxXQUFBLHlCQUFBLENBQ0EsYUFBQSxtQkFBQSxDQUdBLGdCQUFBLHlCQUFBLENBRUEsWUFBQSxlQUFBLENBQ0EsZ0JBQUEsZUFBQSxDQUNBLFdBQUEsZUFBQSxDQUdBLFdBQUEsYUFBQSxDZHRJQSxzRUFBQSwwQkFBQSxDYzZJQSxnQkFBQSxhQUFBLENkN0lBLDBGQUFBLDBCQUFBLENjc0pBLGFBQUEsZUFBQSxDQUlBLFlBQUEsZUFBQSxDQUlBLFlBQUEsZ0JBQUEiLCJzb3VyY2VzQ29udGVudCI6WyIvKiAjLUZPTlRTICovXG5cbi8vIGZhbWlsaWVzXG5cbiRxdWlyb2g6ICdQb3BwaW5zJywgc2Fucy1zZXJpZjtcbiRtdXNlb19zbGFiOiAnSUJNIFBsZXggU2FucycsIHNlcmlmO1xuJHByb3hpbWEtZm9udC1mYW1pbHk6ICdQb3BwaW5zJywgc2Fucy1zZXJpZjtcbiRpY29uOiAnc3ctaWNvbnMnICFpbXBvcnRhbnQ7XG5cbi8vIGljb25zXG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ3N3LWljb25zJztcbiAgc3JjOlxuICAgIHVybCgnLi4vZm9udHMvdGhlbWlhLWljb24tc2V0LnR0Zj9kdGp6bGgnKSBmb3JtYXQoJ3RydWV0eXBlJyksXG4gICAgdXJsKCcuLi9mb250cy90aGVtaWEtaWNvbi1zZXQud29mZj9kdGp6bGgnKSBmb3JtYXQoJ3dvZmYnKSxcbiAgICB1cmwoJy4uL2ZvbnRzL3RoZW1pYS1pY29uLXNldC5zdmc/ZHRqemxoI3N3LWljb25zJykgZm9ybWF0KCdzdmcnKTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LWRpc3BsYXk6IGJsb2NrO1xufVxuXG5bY2xhc3NePVwic3ctaWNvbi1cIl0sIFtjbGFzcyo9XCIgc3ctaWNvbi1cIl0ge1xuICAvKiB1c2UgIWltcG9ydGFudCB0byBwcmV2ZW50IGlzc3VlcyB3aXRoIGJyb3dzZXIgZXh0ZW5zaW9ucyB0aGF0IGNoYW5nZSBmb250cyAqL1xuICBmb250LWZhbWlseTogJ3N3LWljb25zJyAhaW1wb3J0YW50O1xuICBzcGVhazogbm9uZTtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBmb250LXZhcmlhbnQ6IG5vcm1hbDtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuXG4gIC8qIEJldHRlciBGb250IFJlbmRlcmluZyA9PT09PT09PT09PSAqL1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbn1cblxuLnN3LWljb24tZ29vZ2xlLXBheTpiZWZvcmUge1xuXHRjb250ZW50OiBcIlxcZTk2M1wiO1xuXHRmb250LXNpemU6IDk3JTtcbn1cbi5zdy1pY29uLWFwcGxlLXBheTpiZWZvcmUge1xuXHRjb250ZW50OiBcIlxcZTk1ZVwiO1xuXHRmb250LXNpemU6IDg4JTtcbiBcdHBvc2l0aW9uOiByZWxhdGl2ZTtcbiBcdGJvdHRvbTogMnB4O1xufVxuLnN3LWljb24tcGF5cGFsOmJlZm9yZSB7XG5cdGNvbnRlbnQ6IFwiXFxlOTY5XCI7XG59XG4uc3ctaWNvbi1qY2I6YmVmb3JlIHtcblx0Y29udGVudDogXCJcXGU5NjVcIjtcblx0Zm9udC1zaXplOiA4OCU7XG4gIFx0cG9zaXRpb246IHJlbGF0aXZlO1xuICBcdGJvdHRvbTogMnB4O1xufVxuLnN3LWljb24tZGlzY292ZXI6YmVmb3JlIHtcblx0Y29udGVudDogXCJcXGU5NWZcIjtcbn1cbi5zdy1pY29uLW1hZXN0cm86YmVmb3JlIHtcblx0Y29udGVudDogXCJcXGU5NjdcIjtcbn1cbi5zdy1pY29uLWFtZXg6YmVmb3JlIHtcblx0Y29udGVudDogXCJcXGU5NWRcIjtcbn1cbi5zdy1pY29uLW1hc3RlcmNhcmQ6YmVmb3JlIHtcblx0Y29udGVudDogXCJcXGU5NjhcIjtcbn1cbi5zdy1pY29uLXZpc2E6YmVmb3JlIHtcblx0Y29udGVudDogXCJcXGU5NmZcIjtcbn1cblxuLnN3LWljb24tZWJheTpiZWZvcmUge1xuXHRjb250ZW50OiBcIlxcZTk2MFwiO1xuXHRmb250LXNpemU6IDExNSU7XG5cdHZlcnRpY2FsLWFsaWduOiBtaWRkbGUgIWltcG9ydGFudDtcbn1cbi5zdy1pY29uLWFtYXpvbjpiZWZvcmUge1xuXHRjb250ZW50OiBcIlxcZTk1Y1wiO1xuXHRmb250LXNpemU6IDEyMCU7XG5cdHZlcnRpY2FsLWFsaWduOiBtaWRkbGUgIWltcG9ydGFudDtcbn1cbi5zdy1pY29uLWV0c3k6YmVmb3JlIHtcblx0Y29udGVudDogXCJcXGU5NjFcIjtcbn1cbi5zdy1pY29uLXRpa3RvazpiZWZvcmUge1xuXHRjb250ZW50OiBcIlxcZTk2Y1wiO1xufVxuLnN3LWljb24tc25hcGNoYXQ6YmVmb3JlIHtcblx0Y29udGVudDogXCJcXGU5NmJcIjtcbn1cbi5zdy1pY29uLXR1bWJscjpiZWZvcmUge1xuXHRjb250ZW50OiBcIlxcZTk2ZFwiO1xufVxuLnN3LWljb24tZmFjZWJvb2stbmV3OmJlZm9yZSB7XG5cdGNvbnRlbnQ6IFwiXFxlOTJkXCI7XG5cdGZvbnQtc2l6ZTogMTE1JTtcblx0dmVydGljYWwtYWxpZ246IG1pZGRsZSAhaW1wb3J0YW50O1xufVxuLnN3LWljb24teC1uZXc6YmVmb3JlIHtcblx0Y29udGVudDogXCJcXGU5NmVcIjtcblx0Zm9udC1zaXplOiA5NSU7XG59XG4uc3ctaWNvbi1pbnN0YWdyYW0tbmV3OmJlZm9yZSB7XG5cdGNvbnRlbnQ6IFwiXFxlOTY0XCI7XG59XG4uc3ctaWNvbi1waW50ZXJlc3QtbmV3OmJlZm9yZSB7XG5cdGNvbnRlbnQ6IFwiXFxlOTZhXCI7XG59XG4uc3ctaWNvbi15b3V0dWJlLW5ldzpiZWZvcmUge1xuXHRjb250ZW50OiBcIlxcZTk3MFwiO1xufVxuLnN3LWljb24tbGlua2VkaW4tbmV3OmJlZm9yZSB7XG5cdGNvbnRlbnQ6IFwiXFxlOTY2XCI7XG5cdHZlcnRpY2FsLWFsaWduOiB0b3AgIWltcG9ydGFudDtcbn1cbi5zdy1pY29uLWZhY2Vib29rLWxvZ286YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MmRcIjtcbn1cbi5zdy1pY29uLW1lbnU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MmVcIjtcbn1cbi5zdy1pY29uLXNlYXJjaDE6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MmZcIjtcbn1cbi5zdy1pY29uLXR3aXR0ZXIxOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTMwXCI7XG59XG4uc3ctaWNvbi1pbnN0YWdyYW0xOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTMxXCI7XG59XG4uc3ctaWNvbi1zaG9wcGluZy1iYXNrZXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MzJcIjtcbn1cbi5zdy1pY29uLXBpbnRlcmVzdDE6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MzNcIjtcbn1cbi5zdy1pY29uLXRlbGVwaG9uZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkzNFwiO1xufVxuLnN3LWljb24tdXNlcjE6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MzVcIjtcbn1cbi5zdy1pY29uLXlvdXR1YmUtbG9nbzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk0MFwiO1xufVxuLnN3LWljb24taGVhcnQxOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTQxXCI7XG59XG4uc3ctaWNvbi1saW5rZWRpbi1sb2dvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTQyXCI7XG59XG4uc3ctaWNvbi1tb25leTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk0M1wiO1xufVxuLnN3LWljb24tdHVtYmxyLWxvZ286YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NDRcIjtcbn1cbi5zdy1pY29uLWNoZWNrZWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NDVcIjtcbn1cbi5zdy1pY29uLWtleWJvYXJkLXJpZ2h0LWFycm93LWJ1dHRvbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk0NlwiO1xufVxuLnN3LWljb24tcGx1cy1ibGFjay1zeW1ib2w6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NDdcIjtcbn1cbi5zdy1pY29uLXBsdXMxOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTQ4XCI7XG59XG4uc3ctaWNvbi1taW51czE6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NDlcIjtcbn1cbi5zdy1pY29uLWNoZWNrZWQtMTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk0YVwiO1xufVxuLnN3LWljb24teW91dHViZTE6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NGJcIjtcbn1cbi5zdy1pY29uLXByZW1pdW0tYmFkZ2U6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NGNcIjtcbn1cbi5zdy1pY29uLXNoYXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTRkXCI7XG59XG4uc3ctaWNvbi16b29tLWluOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTRlXCI7XG59XG4uc3ctaWNvbi1jbG9zZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk0ZlwiO1xufVxuLnN3LWljb24tc3RhcjE6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5NTBcIjtcbn1cbi5zdy1pY29uLWRlbGl2ZXJ5LXRydWNrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTUxXCI7XG59XG4uc3ctaWNvbi1jcmVkaXQtY2FyZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk1MlwiO1xufVxuLnN3LWljb24tbG9jazpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk1M1wiO1xufVxuLnN3LWljb24tY291cG9uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTU0XCI7XG59XG4uc3ctaWNvbi1lbWFpbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk1NVwiO1xufVxuLnN3LWljb24tY2xvc2UtYnV0dG9uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTU2XCI7XG59XG4uc3ctaWNvbi1saXN0MTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk1N1wiO1xufVxuLnN3LWljb24tZm91ci1zcXVhcmVzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTU4XCI7XG59XG4uc3ctaWNvbi1oZWFydDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk1OVwiO1xufVxuLnN3LWljb24tbW9udGhseS1jYWxlbmRhcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk1YVwiO1xufVxuLnN3LWljb24tc2xpZGVyczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTk1YlwiO1xufVxuLnN3LWljb24tbG9nLW91dDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkyOVwiO1xufVxuLnN3LWljb24tYWNjb3VudC1ob21lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTJhXCI7XG59XG4uc3ctaWNvbi1ib3g6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MmJcIjtcbn1cbi5zdy1pY29uLWV5ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkyY1wiO1xufVxuLnN3LWljb24tZm9yYmlkZGVuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTAwXCI7XG59XG4uc3ctaWNvbi1nbGFzczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkwMVwiO1xufVxuLnN3LWljb24tY2FsZW5kYXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MDJcIjtcbn1cbi5zdy1pY29uLWZhY2Vib29rOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTAzXCI7XG59XG4uc3ctaWNvbi1naWZ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTA0XCI7XG59XG4uc3ctaWNvbi1yZWZyZXNoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTA1XCI7XG59XG4uc3ctaWNvbi1wZGY6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MDZcIjtcbn1cbi5zdy1pY29uLW1hcC1tYXJrZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MDdcIjtcbn1cbi5zdy1pY29uLXR3aXR0ZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MDhcIjtcbn1cbi5zdy1pY29uLWdvb2dsZS1wbHVzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTA5XCI7XG59XG4uc3ctaWNvbi1saW5rZWRpbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkwYVwiO1xufVxuLnN3LWljb24tcGludGVyZXN0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTBiXCI7XG59XG4uc3ctaWNvbi15b3V0dWJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTBjXCI7XG59XG4uc3ctaWNvbi1pbnN0YWdyYW06YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MGRcIjtcbn1cbi5zdy1pY29uLWJlbGw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MGVcIjtcbn1cbi5zdy1pY29uLWxpa2U6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MGZcIjtcbn1cbi5zdy1pY29uLWJhcnM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MTBcIjtcbn1cbi5zdy1pY29uLWdsYXNzLTI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MTFcIjtcbn1cbi5zdy1pY29uLWNhcmV0LWRvd246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MTJcIjtcbn1cbi5zdy1pY29uLWNhcmV0LXVwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTEzXCI7XG59XG4uc3ctaWNvbi1zdGFyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTE0XCI7XG59XG4uc3ctaWNvbi1zdGFyLW9uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTE1XCI7XG59XG4uc3ctaWNvbi1leHRlcm5hbC1saW5rOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTE2XCI7XG59XG4uc3ctaWNvbi1wbHVzLXpvb206YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MTdcIjtcbn1cbi5zdy1pY29uLXBsYXk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MThcIjtcbn1cbi5zdy1pY29uLWNvcHk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MWJcIjtcbn1cbi5zdy1pY29uLWdyaWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MWNcIjtcbn1cbi5zdy1pY29uLWxpc3Q6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MWRcIjtcbn1cbi5zdy1pY29uLWNhcmV0LXJpZ2h0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTFlXCI7XG59XG4uc3ctaWNvbi1jaXJjbGUtc3RhcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkxZlwiO1xufVxuLnN3LWljb24tZ2lmdDE6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MjBcIjtcbn1cbi5zdy1pY29uLW1haWw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MjFcIjtcbn1cbi5zdy1pY29uLW1hcDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkyMlwiO1xufVxuLnN3LWljb24tcGFkbG9jazpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkyM1wiO1xufVxuLnN3LWljb24tcGhvbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MjRcIjtcbn1cbi5zdy1pY29uLXNob3BwaW5nLWJhZzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkyNVwiO1xufVxuLnN3LWljb24tdHJ1Y2s6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MjZcIjtcbn1cbi5zdy1pY29uLXVzZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MjdcIjtcbn1cbi5zdy1pY29uLWRvd24tYXJyb3c6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MzZcIjtcbn1cbi5zdy1pY29uLWRvd24tY2hldnJvbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkzN1wiO1xufVxuLnN3LWljb24tbGVmdC1hcnJvdzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkzOFwiO1xufVxuLnN3LWljb24tbGVmdC1jaGV2cm9uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTI4XCI7XG59XG4uc3ctaWNvbi1tb3ZlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTM5XCI7XG59XG4uc3ctaWNvbi1xdWVzdGlvbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkzYVwiO1xufVxuLnN3LWljb24tcmlnaHQtYXJyb3c6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5M2JcIjtcbn1cbi5zdy1pY29uLXJpZ2h0LWNoZXZyb246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5M2NcIjtcbn1cbi5zdy1pY29uLXNlYXJjaDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkzZFwiO1xufVxuLnN3LWljb24tdXAtYXJyb3c6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5M2VcIjtcbn1cbi5zdy1pY29uLXVwLWNoZXZyb246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5M2ZcIjtcbn1cbi5zdy1pY29uLW1pbnVzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTE5XCI7XG59XG4uc3ctaWNvbi1wbHVzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTFhXCI7XG59XG4uc3ctaWNvbi10dW1ibHI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhYjlcIjtcbn0iLCIvLyAgZGlzcGxheSBwbGF0Zm9ybSBtZXNzYWdlcyBhcyBiYW5uZXIgb3ZlcmxheVxuLnNob3B3aXJlZC1pbmZvLW1lc3NhZ2Uge1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBmb250LXNpemU6IDI0cHg7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBwYWRkaW5nOiAyNXB4O1xuICAgIGJhY2tncm91bmQ6ICMwMDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjgpO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB6LWluZGV4OiA5OTk5O1xuICAgIG9wYWNpdHk6IDA7XG5cbiAgICBhIHtcbiAgICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgfVxufVxuXG4vLyBwb3NpdGlvbiBjb250YWluZWQgaW1hZ2VzXG4uaW1hZ2UtY29udGFpbmVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBoZWlnaHQ6IDA7XG4gICAgcGFkZGluZy10b3A6IDEwMCU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcblxuICAgIGltZyB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuXG4gICAgICAgICRsYXp5bG9hZF9pbWFnZXM6IG51bGwgIWRlZmF1bHQ7XG5cbiAgICAgICAgQGlmICRsYXp5bG9hZF9pbWFnZXMgIT0gbnVsbCBhbmQgJGxhenlsb2FkX2ltYWdlcyA9PSAxIHtcbiAgICAgICAgICAgICZbc3JjKj0naW1hZ2VzL2xvYWRpbmcuZ2lmJ10ge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHZlcnRpY2FsLWFsaWduKGFic29sdXRlLCB0cnVlKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAvLyAuY2F0ZWdvcnktYm94ICYge1xuICAgIC8vICAgICBwYWRkaW5nLXRvcDogODAlO1xuICAgIC8vIH1cbiAgICBcbiAgICAvLyAuYXJ0aWNsZS1ib3ggJiB7XG4gICAgLy8gICAgIHBhZGRpbmctdG9wOiA0NyU7XG4gICAgLy8gfVxuICAgIFxuICAgIC8vIC5nYWxsZXJ5LWJveCAmIHtcbiAgICAvLyAgICAgcGFkZGluZy10b3A6IDYwJTtcbiAgICAvLyB9XG5cbiAgICAvLyAubWVkaWEtYm94ICYsXG4gICAgLy8gLmZlYXR1cmVkLXNsaWRlciAmLFxuICAgIC5jYXRlZ29yeS1ib3ggJiB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAkY2F0ZWdvcnlfYXNwZWN0X3JhdGlvO1xuICAgIH1cblxuICAgIC5wcm9kdWN0LWJveCAmIHtcbiAgICAgICAgcGFkZGluZy10b3A6ICRwcm9kdWN0X2FzcGVjdF9yYXRpbztcbiAgICB9XG5cbiAgICAuYnJhbmQtYm94ICYge1xuICAgICAgICBwYWRkaW5nLXRvcDogJGJyYW5kX2FzcGVjdF9yYXRpbztcbiAgICB9XG5cbiAgICAmLnByb2R1Y3QtZ2FsbGVyeS1tYWluLXBob3RvIHtcbiAgICAgICAgcGFkZGluZy10b3A6ICRwcm9kdWN0X3BhZ2VfYXNwZWN0X3JhdGlvO1xuICAgIH1cblxuICAgIC5hcnRpY2xlLWJveCAmOm5vdCgubW9kLWJsb2ctZmVhdHVyZWQpIHtcbiAgICAgICAgcGFkZGluZy10b3A6ICRibG9nX2FzcGVjdF9yYXRpbztcbiAgICB9XG5cbiAgICAuYXJ0aWNsZS1ib3ggJi5tb2QtYmxvZy1mZWF0dXJlZCB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAkYmxvZ19mZWF0dXJlZF9hc3BlY3RfcmF0aW87XG4gICAgfVxufSIsIiRmbGFncy1pbWFnZXMtcGF0aDogXCIuLi9pbWFnZXNcIiAhZGVmYXVsdDsgLy9PdmVycmlkZSB0aGlzIHZhcmlhYmxlIGluIHlvdXIgLnNjc3MgdG8gdXNlIGJvd2VyLlxuJGZsYWdzLXNpemU6IDMyOyAvLyAxNiBvciAzMlxuXG5AaWYgJGZsYWdzLXNpemUgPT0gMTYge1xuXG4gICAgLmZsYWd7YmFja2dyb3VuZDp1cmwoI3skZmxhZ3MtaW1hZ2VzLXBhdGh9L2ZsYWdzMTYucG5nKSBuby1yZXBlYXQ7fVxuXG4gICAgLmV1e2JhY2tncm91bmQtcG9zaXRpb246MCAtMTI4cHg7fVxuICAgIC5hZHtiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTM1MnB4O31cbiAgICAuYWV7YmFja2dyb3VuZC1wb3NpdGlvbjowIC0zNjhweDt9XG4gICAgLmFme2JhY2tncm91bmQtcG9zaXRpb246MCAtMzg0cHg7fVxuICAgIC5hZ3tiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTQwMHB4O31cbiAgICAuYWl7YmFja2dyb3VuZC1wb3NpdGlvbjowIC00MTZweDt9XG4gICAgLmFse2JhY2tncm91bmQtcG9zaXRpb246MCAtNDMycHg7fVxuICAgIC5hbXtiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTQ0OHB4O31cbiAgICAuYW97YmFja2dyb3VuZC1wb3NpdGlvbjowIC00NjRweDt9XG4gICAgLmFxe2JhY2tncm91bmQtcG9zaXRpb246MCAtNDgwcHg7fVxuICAgIC5hcntiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTQ5NnB4O31cbiAgICAuYXN7YmFja2dyb3VuZC1wb3NpdGlvbjowIC01MTJweDt9XG4gICAgLmF0e2JhY2tncm91bmQtcG9zaXRpb246MCAtNTI4cHg7fVxuICAgIC5hdXtiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTU0NHB4O31cbiAgICAuYXd7YmFja2dyb3VuZC1wb3NpdGlvbjowIC01NjBweDt9XG4gICAgLmF4e2JhY2tncm91bmQtcG9zaXRpb246MCAtNTc2cHg7fVxuICAgIC5hentiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTU5MnB4O31cbiAgICAuYmF7YmFja2dyb3VuZC1wb3NpdGlvbjowIC02MDhweDt9XG4gICAgLmJie2JhY2tncm91bmQtcG9zaXRpb246MCAtNjI0cHg7fVxuICAgIC5iZHtiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTY0MHB4O31cbiAgICAuYmV7YmFja2dyb3VuZC1wb3NpdGlvbjowIC02NTZweDt9XG4gICAgLmJme2JhY2tncm91bmQtcG9zaXRpb246MCAtNjcycHg7fVxuICAgIC5iZ3tiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTY4OHB4O31cbiAgICAuYmh7YmFja2dyb3VuZC1wb3NpdGlvbjowIC03MDRweDt9XG4gICAgLmJpe2JhY2tncm91bmQtcG9zaXRpb246MCAtNzIwcHg7fVxuICAgIC5iantiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTczNnB4O31cbiAgICAuYm17YmFja2dyb3VuZC1wb3NpdGlvbjowIC03NTJweDt9XG4gICAgLmJue2JhY2tncm91bmQtcG9zaXRpb246MCAtNzY4cHg7fVxuICAgIC5ib3tiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTc4NHB4O31cbiAgICAuYnJ7YmFja2dyb3VuZC1wb3NpdGlvbjowIC04MDBweDt9XG4gICAgLmJze2JhY2tncm91bmQtcG9zaXRpb246MCAtODE2cHg7fVxuICAgIC5idHtiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTgzMnB4O31cbiAgICAuYnd7YmFja2dyb3VuZC1wb3NpdGlvbjowIC04NDhweDt9XG4gICAgLmJ5e2JhY2tncm91bmQtcG9zaXRpb246MCAtODY0cHg7fVxuICAgIC5ientiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTg4MHB4O31cbiAgICAuY2F7YmFja2dyb3VuZC1wb3NpdGlvbjowIC04OTZweDt9XG4gICAgLmNne2JhY2tncm91bmQtcG9zaXRpb246MCAtOTEycHg7fVxuICAgIC5jZntiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTkyOHB4O31cbiAgICAuY2R7YmFja2dyb3VuZC1wb3NpdGlvbjowIC05NDRweDt9XG4gICAgLmNoe2JhY2tncm91bmQtcG9zaXRpb246MCAtOTYwcHg7fVxuICAgIC5jaXtiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTk3NnB4O31cbiAgICAuY2t7YmFja2dyb3VuZC1wb3NpdGlvbjowIC05OTJweDt9XG4gICAgLmNse2JhY2tncm91bmQtcG9zaXRpb246MCAtMTAwOHB4O31cbiAgICAuY217YmFja2dyb3VuZC1wb3NpdGlvbjowIC0xMDI0cHg7fVxuICAgIC5jbntiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTEwNDBweDt9XG4gICAgLmNve2JhY2tncm91bmQtcG9zaXRpb246MCAtMTA1NnB4O31cbiAgICAuY3J7YmFja2dyb3VuZC1wb3NpdGlvbjowIC0xMDcycHg7fVxuICAgIC5jdXtiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTEwODhweDt9XG4gICAgLmN2e2JhY2tncm91bmQtcG9zaXRpb246MCAtMTEwNHB4O31cbiAgICAuY3l7YmFja2dyb3VuZC1wb3NpdGlvbjowIC0xMTIwcHg7fVxuICAgIC5jentiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTExMzZweDt9XG4gICAgLmRle2JhY2tncm91bmQtcG9zaXRpb246MCAtMTE1MnB4O31cbiAgICAuZGp7YmFja2dyb3VuZC1wb3NpdGlvbjowIC0xMTY4cHg7fVxuICAgIC5ka3tiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTExODRweDt9XG4gICAgLmRte2JhY2tncm91bmQtcG9zaXRpb246MCAtMTIwMHB4O31cbiAgICAuZG97YmFja2dyb3VuZC1wb3NpdGlvbjowIC0xMjE2cHg7fVxuICAgIC5kentiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTEyMzJweDt9XG4gICAgLmVje2JhY2tncm91bmQtcG9zaXRpb246MCAtMTI0OHB4O31cbiAgICAuZWV7YmFja2dyb3VuZC1wb3NpdGlvbjowIC0xMjY0cHg7fVxuICAgIC5lZ3tiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTEyODBweDt9XG4gICAgLmVoe2JhY2tncm91bmQtcG9zaXRpb246MCAtMTI5NnB4O31cbiAgICAuZXJ7YmFja2dyb3VuZC1wb3NpdGlvbjowIC0xMzEycHg7fVxuICAgIC5lc3tiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTEzMjhweDt9XG4gICAgLmV0e2JhY2tncm91bmQtcG9zaXRpb246MCAtMTM0NHB4O31cbiAgICAuZml7YmFja2dyb3VuZC1wb3NpdGlvbjowIC0xMzYwcHg7fVxuICAgIC5mantiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTEzNzZweDt9XG4gICAgLmZte2JhY2tncm91bmQtcG9zaXRpb246MCAtMTM5MnB4O31cbiAgICAuZm97YmFja2dyb3VuZC1wb3NpdGlvbjowIC0xNDA4cHg7fVxuICAgIC5mcntiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTE0MjRweDt9XG4gICAgLmJse2JhY2tncm91bmQtcG9zaXRpb246MCAtMTQyNHB4O31cbiAgICAuY3B7YmFja2dyb3VuZC1wb3NpdGlvbjowIC0xNDI0cHg7fVxuICAgIC5tZntiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTE0MjRweDt9XG4gICAgLnl0e2JhY2tncm91bmQtcG9zaXRpb246MCAtMTQyNHB4O31cbiAgICAuZ2F7YmFja2dyb3VuZC1wb3NpdGlvbjowIC0xNDQwcHg7fVxuICAgIC5nYntiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTE0NTZweDt9XG4gICAgLnNoe2JhY2tncm91bmQtcG9zaXRpb246MCAtMTQ1NnB4O31cbiAgICAuZ2R7YmFja2dyb3VuZC1wb3NpdGlvbjowIC0xNDcycHg7fVxuICAgIC5nZXtiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTE0ODhweDt9XG4gICAgLmdne2JhY2tncm91bmQtcG9zaXRpb246MCAtMTUwNHB4O31cbiAgICAuZ2h7YmFja2dyb3VuZC1wb3NpdGlvbjowIC0xNTIwcHg7fVxuICAgIC5naXtiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTE1MzZweDt9XG4gICAgLmdse2JhY2tncm91bmQtcG9zaXRpb246MCAtMTU1MnB4O31cbiAgICAuZ217YmFja2dyb3VuZC1wb3NpdGlvbjowIC0xNTY4cHg7fVxuICAgIC5nbntiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTE1ODRweDt9XG4gICAgLmdwe2JhY2tncm91bmQtcG9zaXRpb246MCAtMTYwMHB4O31cbiAgICAuZ3F7YmFja2dyb3VuZC1wb3NpdGlvbjowIC0xNjE2cHg7fVxuICAgIC5ncntiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTE2MzJweDt9XG4gICAgLmd0e2JhY2tncm91bmQtcG9zaXRpb246MCAtMTY0OHB4O31cbiAgICAuZ3V7YmFja2dyb3VuZC1wb3NpdGlvbjowIC0xNjY0cHg7fVxuICAgIC5nd3tiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTE2ODBweDt9XG4gICAgLmd5e2JhY2tncm91bmQtcG9zaXRpb246MCAtMTY5NnB4O31cbiAgICAuaGt7YmFja2dyb3VuZC1wb3NpdGlvbjowIC0xNzEycHg7fVxuICAgIC5obntiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTE3MjhweDt9XG4gICAgLmhye2JhY2tncm91bmQtcG9zaXRpb246MCAtMTc0NHB4O31cbiAgICAuaHR7YmFja2dyb3VuZC1wb3NpdGlvbjowIC0xNzYwcHg7fVxuICAgIC5odXtiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTE3NzZweDt9XG4gICAgLmlke2JhY2tncm91bmQtcG9zaXRpb246MCAtMTc5MnB4O31cbiAgICAubWN7YmFja2dyb3VuZC1wb3NpdGlvbjowIC0xNzkycHg7fVxuICAgIC5pZXtiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTE4MDhweDt9XG4gICAgLmlse2JhY2tncm91bmQtcG9zaXRpb246MCAtMTgyNHB4O31cbiAgICAuaW17YmFja2dyb3VuZC1wb3NpdGlvbjowIC0xODQwcHg7fVxuICAgIC5pbntiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTE4NTZweDt9XG4gICAgLmlxe2JhY2tncm91bmQtcG9zaXRpb246MCAtMTg3MnB4O31cbiAgICAuaXJ7YmFja2dyb3VuZC1wb3NpdGlvbjowIC0xODg4cHg7fVxuICAgIC5pc3tiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTE5MDRweDt9XG4gICAgLml0e2JhY2tncm91bmQtcG9zaXRpb246MCAtMTkyMHB4O31cbiAgICAuamV7YmFja2dyb3VuZC1wb3NpdGlvbjowIC0xOTM2cHg7fVxuICAgIC5qbXtiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTE5NTJweDt9XG4gICAgLmpve2JhY2tncm91bmQtcG9zaXRpb246MCAtMTk2OHB4O31cbiAgICAuanB7YmFja2dyb3VuZC1wb3NpdGlvbjowIC0xOTg0cHg7fVxuICAgIC5rZXtiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTIwMDBweDt9XG4gICAgLmtne2JhY2tncm91bmQtcG9zaXRpb246MCAtMjAxNnB4O31cbiAgICAua2h7YmFja2dyb3VuZC1wb3NpdGlvbjowIC0yMDMycHg7fVxuICAgIC5raXtiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTIwNDhweDt9XG4gICAgLmtte2JhY2tncm91bmQtcG9zaXRpb246MCAtMjA2NHB4O31cbiAgICAua257YmFja2dyb3VuZC1wb3NpdGlvbjowIC0yMDgwcHg7fVxuICAgIC5rcHtiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTIwOTZweDt9XG4gICAgLmtye2JhY2tncm91bmQtcG9zaXRpb246MCAtMjExMnB4O31cbiAgICAua3d7YmFja2dyb3VuZC1wb3NpdGlvbjowIC0yMTI4cHg7fVxuICAgIC5reXtiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTIxNDRweDt9XG4gICAgLmt6e2JhY2tncm91bmQtcG9zaXRpb246MCAtMjE2MHB4O31cbiAgICAubGF7YmFja2dyb3VuZC1wb3NpdGlvbjowIC0yMTc2cHg7fVxuICAgIC5sYntiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTIxOTJweDt9XG4gICAgLmxje2JhY2tncm91bmQtcG9zaXRpb246MCAtMjIwOHB4O31cbiAgICAubGl7YmFja2dyb3VuZC1wb3NpdGlvbjowIC0yMjI0cHg7fVxuICAgIC5sa3tiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTIyNDBweDt9XG4gICAgLmxye2JhY2tncm91bmQtcG9zaXRpb246MCAtMjI1NnB4O31cbiAgICAubHN7YmFja2dyb3VuZC1wb3NpdGlvbjowIC0yMjcycHg7fVxuICAgIC5sdHtiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTIyODhweDt9XG4gICAgLmx1e2JhY2tncm91bmQtcG9zaXRpb246MCAtMjMwNHB4O31cbiAgICAubHZ7YmFja2dyb3VuZC1wb3NpdGlvbjowIC0yMzIwcHg7fVxuICAgIC5seXtiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTIzMzZweDt9XG4gICAgLm1he2JhY2tncm91bmQtcG9zaXRpb246MCAtMjM1MnB4O31cbiAgICAubWR7YmFja2dyb3VuZC1wb3NpdGlvbjowIC0yMzY4cHg7fVxuICAgIC5tZXtiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTIzODRweDt9XG4gICAgLm1ne2JhY2tncm91bmQtcG9zaXRpb246MCAtMjQwMHB4O31cbiAgICAubWh7YmFja2dyb3VuZC1wb3NpdGlvbjowIC0yNDE2cHg7fVxuICAgIC5ta3tiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTI0MzJweDt9XG4gICAgLm1se2JhY2tncm91bmQtcG9zaXRpb246MCAtMjQ0OHB4O31cbiAgICAubW17YmFja2dyb3VuZC1wb3NpdGlvbjowIC0yNDY0cHg7fVxuICAgIC5tbntiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTI0ODBweDt9XG4gICAgLm1ve2JhY2tncm91bmQtcG9zaXRpb246MCAtMjQ5NnB4O31cbiAgICAubXF7YmFja2dyb3VuZC1wb3NpdGlvbjowIC0yNTEycHg7fVxuICAgIC5tcntiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTI1MjhweDt9XG4gICAgLm1ze2JhY2tncm91bmQtcG9zaXRpb246MCAtMjU0NHB4O31cbiAgICAubXR7YmFja2dyb3VuZC1wb3NpdGlvbjowIC0yNTYwcHg7fVxuICAgIC5tdXtiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTI1NzZweDt9XG4gICAgLm12e2JhY2tncm91bmQtcG9zaXRpb246MCAtMjU5MnB4O31cbiAgICAubXd7YmFja2dyb3VuZC1wb3NpdGlvbjowIC0yNjA4cHg7fVxuICAgIC5teHtiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTI2MjRweDt9XG4gICAgLm15e2JhY2tncm91bmQtcG9zaXRpb246MCAtMjY0MHB4O31cbiAgICAubXp7YmFja2dyb3VuZC1wb3NpdGlvbjowIC0yNjU2cHg7fVxuICAgIC5uYXtiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTI2NzJweDt9XG4gICAgLm5je2JhY2tncm91bmQtcG9zaXRpb246MCAtMjY4OHB4O31cbiAgICAubmV7YmFja2dyb3VuZC1wb3NpdGlvbjowIC0yNzA0cHg7fVxuICAgIC5uZ3tiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTI3MjBweDt9XG4gICAgLm5pe2JhY2tncm91bmQtcG9zaXRpb246MCAtMjczNnB4O31cbiAgICAubmx7YmFja2dyb3VuZC1wb3NpdGlvbjowIC0yNzUycHg7fVxuICAgIC5icXtiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTI3NTJweDt9XG4gICAgLm5ve2JhY2tncm91bmQtcG9zaXRpb246MCAtMjc2OHB4O31cbiAgICAuYnZ7YmFja2dyb3VuZC1wb3NpdGlvbjowIC0yNzY4cHg7fVxuICAgIC5ucXtiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTI3NjhweDt9XG4gICAgLnNqe2JhY2tncm91bmQtcG9zaXRpb246MCAtMjc2OHB4O31cbiAgICAubnB7YmFja2dyb3VuZC1wb3NpdGlvbjowIC0yNzg0cHg7fVxuICAgIC5ucntiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTI4MDBweDt9XG4gICAgLm56e2JhY2tncm91bmQtcG9zaXRpb246MCAtMjgxNnB4O31cbiAgICAub217YmFja2dyb3VuZC1wb3NpdGlvbjowIC0yODMycHg7fVxuICAgIC5wYXtiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTI4NDhweDt9XG4gICAgLnBle2JhY2tncm91bmQtcG9zaXRpb246MCAtMjg2NHB4O31cbiAgICAucGZ7YmFja2dyb3VuZC1wb3NpdGlvbjowIC0yODgwcHg7fVxuICAgIC5wZ3tiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTI4OTZweDt9XG4gICAgLnBoe2JhY2tncm91bmQtcG9zaXRpb246MCAtMjkxMnB4O31cbiAgICAucGt7YmFja2dyb3VuZC1wb3NpdGlvbjowIC0yOTI4cHg7fVxuICAgIC5wbHtiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTI5NDRweDt9XG4gICAgLnBye2JhY2tncm91bmQtcG9zaXRpb246MCAtMjk2MHB4O31cbiAgICAucHN7YmFja2dyb3VuZC1wb3NpdGlvbjowIC0yOTc2cHg7fVxuICAgIC5wdHtiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTI5OTJweDt9XG4gICAgLnB3e2JhY2tncm91bmQtcG9zaXRpb246MCAtMzAwOHB4O31cbiAgICAucHl7YmFja2dyb3VuZC1wb3NpdGlvbjowIC0zMDI0cHg7fVxuICAgIC5xYXtiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTMwNDBweDt9XG4gICAgLnJle2JhY2tncm91bmQtcG9zaXRpb246MCAtMzA1NnB4O31cbiAgICAucm97YmFja2dyb3VuZC1wb3NpdGlvbjowIC0zMDcycHg7fVxuICAgIC5yc3tiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTMwODhweDt9XG4gICAgLnJ1e2JhY2tncm91bmQtcG9zaXRpb246MCAtMzEwNHB4O31cbiAgICAucnd7YmFja2dyb3VuZC1wb3NpdGlvbjowIC0zMTIwcHg7fVxuICAgIC5zYXtiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTMxMzZweDt9XG4gICAgLnNie2JhY2tncm91bmQtcG9zaXRpb246MCAtMzE1MnB4O31cbiAgICAuc2N7YmFja2dyb3VuZC1wb3NpdGlvbjowIC0zMTY4cHg7fVxuICAgIC5zZHtiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTMxODRweDt9XG4gICAgLnNle2JhY2tncm91bmQtcG9zaXRpb246MCAtMzIwMHB4O31cbiAgICAuc2d7YmFja2dyb3VuZC1wb3NpdGlvbjowIC0zMjE2cHg7fVxuICAgIC5zaXtiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTMyMzJweDt9XG4gICAgLnNre2JhY2tncm91bmQtcG9zaXRpb246MCAtMzI0OHB4O31cbiAgICAuc2x7YmFja2dyb3VuZC1wb3NpdGlvbjowIC0zMjY0cHg7fVxuICAgIC5zbXtiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTMyODBweDt9XG4gICAgLnNue2JhY2tncm91bmQtcG9zaXRpb246MCAtMzI5NnB4O31cbiAgICAuc297YmFja2dyb3VuZC1wb3NpdGlvbjowIC0zMzEycHg7fVxuICAgIC5zcntiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTMzMjhweDt9XG4gICAgLnN0e2JhY2tncm91bmQtcG9zaXRpb246MCAtMzM0NHB4O31cbiAgICAuc3Z7YmFja2dyb3VuZC1wb3NpdGlvbjowIC0zMzYwcHg7fVxuICAgIC5zeXtiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTMzNzZweDt9XG4gICAgLnN6e2JhY2tncm91bmQtcG9zaXRpb246MCAtMzM5MnB4O31cbiAgICAudGN7YmFja2dyb3VuZC1wb3NpdGlvbjowIC0zNDA4cHg7fVxuICAgIC50ZHtiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTM0MjRweDt9XG4gICAgLnRne2JhY2tncm91bmQtcG9zaXRpb246MCAtMzQ0MHB4O31cbiAgICAudGh7YmFja2dyb3VuZC1wb3NpdGlvbjowIC0zNDU2cHg7fVxuICAgIC50antiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTM0NzJweDt9XG4gICAgLnRse2JhY2tncm91bmQtcG9zaXRpb246MCAtMzQ4OHB4O31cbiAgICAudG17YmFja2dyb3VuZC1wb3NpdGlvbjowIC0zNTA0cHg7fVxuICAgIC50bntiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTM1MjBweDt9XG4gICAgLnRve2JhY2tncm91bmQtcG9zaXRpb246MCAtMzUzNnB4O31cbiAgICAudHJ7YmFja2dyb3VuZC1wb3NpdGlvbjowIC0zNTUycHg7fVxuICAgIC50dHtiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTM1NjhweDt9XG4gICAgLnR2e2JhY2tncm91bmQtcG9zaXRpb246MCAtMzU4NHB4O31cbiAgICAudHd7YmFja2dyb3VuZC1wb3NpdGlvbjowIC0zNjAwcHg7fVxuICAgIC50entiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTM2MTZweDt9XG4gICAgLnVhe2JhY2tncm91bmQtcG9zaXRpb246MCAtMzYzMnB4O31cbiAgICAudWd7YmFja2dyb3VuZC1wb3NpdGlvbjowIC0zNjQ4cHg7fVxuICAgIC51c3tiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTM2NjRweDt9XG4gICAgLnV5e2JhY2tncm91bmQtcG9zaXRpb246MCAtMzY4MHB4O31cbiAgICAudXp7YmFja2dyb3VuZC1wb3NpdGlvbjowIC0zNjk2cHg7fVxuICAgIC52YXtiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTM3MTJweDt9XG4gICAgLnZje2JhY2tncm91bmQtcG9zaXRpb246MCAtMzcyOHB4O31cbiAgICAudmV7YmFja2dyb3VuZC1wb3NpdGlvbjowIC0zNzQ0cHg7fVxuICAgIC52Z3tiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTM3NjBweDt9XG4gICAgLnZpe2JhY2tncm91bmQtcG9zaXRpb246MCAtMzc3NnB4O31cbiAgICAudm57YmFja2dyb3VuZC1wb3NpdGlvbjowIC0zNzkycHg7fVxuICAgIC52dXtiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTM4MDhweDt9XG4gICAgLndze2JhY2tncm91bmQtcG9zaXRpb246MCAtMzgyNHB4O31cbiAgICAueWV7YmFja2dyb3VuZC1wb3NpdGlvbjowIC0zODQwcHg7fVxuICAgIC56YXtiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTM4NTZweDt9XG4gICAgLnpte2JhY2tncm91bmQtcG9zaXRpb246MCAtMzg3MnB4O31cbiAgICAuend7YmFja2dyb3VuZC1wb3NpdGlvbjowIC0zODg4cHg7fVxuICAgIC5zeHtiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTM5MDRweDt9XG4gICAgLmN3e2JhY2tncm91bmQtcG9zaXRpb246MCAtMzkyMHB4O31cbiAgICAuc3N7YmFja2dyb3VuZC1wb3NpdGlvbjowIC0zOTM2cHg7fVxuICAgIC5udXtiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTM5NTJweDt9XG5cbn0gQGVsc2Uge1xuXG4gICAgLmZsYWd7YmFja2dyb3VuZDp1cmwoI3skZmxhZ3MtaW1hZ2VzLXBhdGh9L2ZsYWdzMzIucG5nKSBuby1yZXBlYXQ7fVxuXG4gICAgLmV1e2JhY2tncm91bmQtcG9zaXRpb246MCAtMjU2cHg7fVxuICAgIC5hZHtiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTcwNHB4O31cbiAgICAuYWV7YmFja2dyb3VuZC1wb3NpdGlvbjowIC03MzZweDt9XG4gICAgLmFme2JhY2tncm91bmQtcG9zaXRpb246MCAtNzY4cHg7fVxuICAgIC5hZ3tiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTgwMHB4O31cbiAgICAuYWl7YmFja2dyb3VuZC1wb3NpdGlvbjowIC04MzJweDt9XG4gICAgLmFse2JhY2tncm91bmQtcG9zaXRpb246MCAtODY0cHg7fVxuICAgIC5hbXtiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTg5NnB4O31cbiAgICAuYW97YmFja2dyb3VuZC1wb3NpdGlvbjowIC05MjhweDt9XG4gICAgLmFxe2JhY2tncm91bmQtcG9zaXRpb246MCAtOTYwcHg7fVxuICAgIC5hcntiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTk5MnB4O31cbiAgICAuYXN7YmFja2dyb3VuZC1wb3NpdGlvbjowIC0xMDI0cHg7fVxuICAgIC5hdHtiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTEwNTZweDt9XG4gICAgLmF1e2JhY2tncm91bmQtcG9zaXRpb246MCAtMTA4OHB4O31cbiAgICAuYXd7YmFja2dyb3VuZC1wb3NpdGlvbjowIC0xMTIwcHg7fVxuICAgIC5heHtiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTExNTJweDt9XG4gICAgLmF6e2JhY2tncm91bmQtcG9zaXRpb246MCAtMTE4NHB4O31cbiAgICAuYmF7YmFja2dyb3VuZC1wb3NpdGlvbjowIC0xMjE2cHg7fVxuICAgIC5iYntiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTEyNDhweDt9XG4gICAgLmJke2JhY2tncm91bmQtcG9zaXRpb246MCAtMTI4MHB4O31cbiAgICAuYmV7YmFja2dyb3VuZC1wb3NpdGlvbjowIC0xMzEycHg7fVxuICAgIC5iZntiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTEzNDRweDt9XG4gICAgLmJne2JhY2tncm91bmQtcG9zaXRpb246MCAtMTM3NnB4O31cbiAgICAuYmh7YmFja2dyb3VuZC1wb3NpdGlvbjowIC0xNDA4cHg7fVxuICAgIC5iaXtiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTE0NDBweDt9XG4gICAgLmJqe2JhY2tncm91bmQtcG9zaXRpb246MCAtMTQ3MnB4O31cbiAgICAuYm17YmFja2dyb3VuZC1wb3NpdGlvbjowIC0xNTA0cHg7fVxuICAgIC5ibntiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTE1MzZweDt9XG4gICAgLmJve2JhY2tncm91bmQtcG9zaXRpb246MCAtMTU2OHB4O31cbiAgICAuYnJ7YmFja2dyb3VuZC1wb3NpdGlvbjowIC0xNjAwcHg7fVxuICAgIC5ic3tiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTE2MzJweDt9XG4gICAgLmJ0e2JhY2tncm91bmQtcG9zaXRpb246MCAtMTY2NHB4O31cbiAgICAuYnd7YmFja2dyb3VuZC1wb3NpdGlvbjowIC0xNjk2cHg7fVxuICAgIC5ieXtiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTE3MjhweDt9XG4gICAgLmJ6e2JhY2tncm91bmQtcG9zaXRpb246MCAtMTc2MHB4O31cbiAgICAuY2F7YmFja2dyb3VuZC1wb3NpdGlvbjowIC0xNzkycHg7fVxuICAgIC5jZHtiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTE4MjRweDt9XG4gICAgLmNme2JhY2tncm91bmQtcG9zaXRpb246MCAtMTg1NnB4O31cbiAgICAuY2d7YmFja2dyb3VuZC1wb3NpdGlvbjowIC0xODg4cHg7fVxuICAgIC5jaHtiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTE5MjBweDt9XG4gICAgLmNpe2JhY2tncm91bmQtcG9zaXRpb246MCAtMTk1MnB4O31cbiAgICAuY2t7YmFja2dyb3VuZC1wb3NpdGlvbjowIC0xOTg0cHg7fVxuICAgIC5jbHtiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTIwMTZweDt9XG4gICAgLmNte2JhY2tncm91bmQtcG9zaXRpb246MCAtMjA0OHB4O31cbiAgICAuY257YmFja2dyb3VuZC1wb3NpdGlvbjowIC0yMDgwcHg7fVxuICAgIC5jb3tiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTIxMTJweDt9XG4gICAgLmNye2JhY2tncm91bmQtcG9zaXRpb246MCAtMjE0NHB4O31cbiAgICAuY3V7YmFja2dyb3VuZC1wb3NpdGlvbjowIC0yMTc2cHg7fVxuICAgIC5jdntiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTIyMDhweDt9XG4gICAgLmN5e2JhY2tncm91bmQtcG9zaXRpb246MCAtMjI0MHB4O31cbiAgICAuY3p7YmFja2dyb3VuZC1wb3NpdGlvbjowIC0yMjcycHg7fVxuICAgIC5kZXtiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTIzMDRweDt9XG4gICAgLmRqe2JhY2tncm91bmQtcG9zaXRpb246MCAtMjMzNnB4O31cbiAgICAuZGt7YmFja2dyb3VuZC1wb3NpdGlvbjowIC0yMzY4cHg7fVxuICAgIC5kbXtiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTI0MDBweDt9XG4gICAgLmRve2JhY2tncm91bmQtcG9zaXRpb246MCAtMjQzMnB4O31cbiAgICAuZHp7YmFja2dyb3VuZC1wb3NpdGlvbjowIC0yNDY0cHg7fVxuICAgIC5lY3tiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTI0OTZweDt9XG4gICAgLmVle2JhY2tncm91bmQtcG9zaXRpb246MCAtMjUyOHB4O31cbiAgICAuZWd7YmFja2dyb3VuZC1wb3NpdGlvbjowIC0yNTYwcHg7fVxuICAgIC5laHtiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTI1OTJweDt9XG4gICAgLmVye2JhY2tncm91bmQtcG9zaXRpb246MCAtMjYyNHB4O31cbiAgICAuZXN7YmFja2dyb3VuZC1wb3NpdGlvbjowIC0yNjU2cHg7fVxuICAgIC5ldHtiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTI2ODhweDt9XG4gICAgLmZpe2JhY2tncm91bmQtcG9zaXRpb246MCAtMjcyMHB4O31cbiAgICAuZmp7YmFja2dyb3VuZC1wb3NpdGlvbjowIC0yNzUycHg7fVxuICAgIC5mbXtiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTI3ODRweDt9XG4gICAgLmZve2JhY2tncm91bmQtcG9zaXRpb246MCAtMjgxNnB4O31cbiAgICAuZnJ7YmFja2dyb3VuZC1wb3NpdGlvbjowIC0yODQ4cHg7fVxuICAgIC5ibHtiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTI4NDhweDt9XG4gICAgLmNwe2JhY2tncm91bmQtcG9zaXRpb246MCAtMjg0OHB4O31cbiAgICAubWZ7YmFja2dyb3VuZC1wb3NpdGlvbjowIC0yODQ4cHg7fVxuICAgIC55dHtiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTI4NDhweDt9XG4gICAgLmdhe2JhY2tncm91bmQtcG9zaXRpb246MCAtMjg4MHB4O31cbiAgICAuZ2J7YmFja2dyb3VuZC1wb3NpdGlvbjowIC0yOTEycHg7fVxuICAgIC5zaHtiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTI5MTJweDt9XG4gICAgLmdke2JhY2tncm91bmQtcG9zaXRpb246MCAtMjk0NHB4O31cbiAgICAuZ2V7YmFja2dyb3VuZC1wb3NpdGlvbjowIC0yOTc2cHg7fVxuICAgIC5nZ3tiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTMwMDhweDt9XG4gICAgLmdoe2JhY2tncm91bmQtcG9zaXRpb246MCAtMzA0MHB4O31cbiAgICAuZ2l7YmFja2dyb3VuZC1wb3NpdGlvbjowIC0zMDcycHg7fVxuICAgIC5nbHtiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTMxMDRweDt9XG4gICAgLmdte2JhY2tncm91bmQtcG9zaXRpb246MCAtMzEzNnB4O31cbiAgICAuZ257YmFja2dyb3VuZC1wb3NpdGlvbjowIC0zMTY4cHg7fVxuICAgIC5ncHtiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTMyMDBweDt9XG4gICAgLmdxe2JhY2tncm91bmQtcG9zaXRpb246MCAtMzIzMnB4O31cbiAgICAuZ3J7YmFja2dyb3VuZC1wb3NpdGlvbjowIC0zMjY0cHg7fVxuICAgIC5ndHtiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTMyOTZweDt9XG4gICAgLmd1e2JhY2tncm91bmQtcG9zaXRpb246MCAtMzMyOHB4O31cbiAgICAuZ3d7YmFja2dyb3VuZC1wb3NpdGlvbjowIC0zMzYwcHg7fVxuICAgIC5neXtiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTMzOTJweDt9XG4gICAgLmhre2JhY2tncm91bmQtcG9zaXRpb246MCAtMzQyNHB4O31cbiAgICAuaG57YmFja2dyb3VuZC1wb3NpdGlvbjowIC0zNDU2cHg7fVxuICAgIC5ocntiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTM0ODhweDt9XG4gICAgLmh0e2JhY2tncm91bmQtcG9zaXRpb246MCAtMzUyMHB4O31cbiAgICAuaHV7YmFja2dyb3VuZC1wb3NpdGlvbjowIC0zNTUycHg7fVxuICAgIC5pZHtiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTM1ODRweDt9XG4gICAgLm1je2JhY2tncm91bmQtcG9zaXRpb246MCAtMzU4NHB4O31cbiAgICAuaWV7YmFja2dyb3VuZC1wb3NpdGlvbjowIC0zNjE2cHg7fVxuICAgIC5pbHtiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTM2NDhweDt9XG4gICAgLmlte2JhY2tncm91bmQtcG9zaXRpb246MCAtMzY4MHB4O31cbiAgICAuaW57YmFja2dyb3VuZC1wb3NpdGlvbjowIC0zNzEycHg7fVxuICAgIC5pcXtiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTM3NDRweDt9XG4gICAgLmlye2JhY2tncm91bmQtcG9zaXRpb246MCAtMzc3NnB4O31cbiAgICAuaXN7YmFja2dyb3VuZC1wb3NpdGlvbjowIC0zODA4cHg7fVxuICAgIC5pdHtiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTM4NDBweDt9XG4gICAgLmple2JhY2tncm91bmQtcG9zaXRpb246MCAtMzg3MnB4O31cbiAgICAuam17YmFja2dyb3VuZC1wb3NpdGlvbjowIC0zOTA0cHg7fVxuICAgIC5qb3tiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTM5MzZweDt9XG4gICAgLmpwe2JhY2tncm91bmQtcG9zaXRpb246MCAtMzk2OHB4O31cbiAgICAua2V7YmFja2dyb3VuZC1wb3NpdGlvbjowIC00MDAwcHg7fVxuICAgIC5rZ3tiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTQwMzJweDt9XG4gICAgLmtoe2JhY2tncm91bmQtcG9zaXRpb246MCAtNDA2NHB4O31cbiAgICAua2l7YmFja2dyb3VuZC1wb3NpdGlvbjowIC00MDk2cHg7fVxuICAgIC5rbXtiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTQxMjhweDt9XG4gICAgLmtue2JhY2tncm91bmQtcG9zaXRpb246MCAtNDE2MHB4O31cbiAgICAua3B7YmFja2dyb3VuZC1wb3NpdGlvbjowIC00MTkycHg7fVxuICAgIC5rcntiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTQyMjRweDt9XG4gICAgLmt3e2JhY2tncm91bmQtcG9zaXRpb246MCAtNDI1NnB4O31cbiAgICAua3l7YmFja2dyb3VuZC1wb3NpdGlvbjowIC00Mjg4cHg7fVxuICAgIC5rentiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTQzMjBweDt9XG4gICAgLmxhe2JhY2tncm91bmQtcG9zaXRpb246MCAtNDM1MnB4O31cbiAgICAubGJ7YmFja2dyb3VuZC1wb3NpdGlvbjowIC00Mzg0cHg7fVxuICAgIC5sY3tiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTQ0MTZweDt9XG4gICAgLmxpe2JhY2tncm91bmQtcG9zaXRpb246MCAtNDQ0OHB4O31cbiAgICAubGt7YmFja2dyb3VuZC1wb3NpdGlvbjowIC00NDgwcHg7fVxuICAgIC5scntiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTQ1MTJweDt9XG4gICAgLmxze2JhY2tncm91bmQtcG9zaXRpb246MCAtNDU0NHB4O31cbiAgICAubHR7YmFja2dyb3VuZC1wb3NpdGlvbjowIC00NTc2cHg7fVxuICAgIC5sdXtiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTQ2MDhweDt9XG4gICAgLmx2e2JhY2tncm91bmQtcG9zaXRpb246MCAtNDY0MHB4O31cbiAgICAubHl7YmFja2dyb3VuZC1wb3NpdGlvbjowIC00NjcycHg7fVxuICAgIC5tYXtiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTQ3MDRweDt9XG4gICAgLm1ke2JhY2tncm91bmQtcG9zaXRpb246MCAtNDczNnB4O31cbiAgICAubWV7YmFja2dyb3VuZC1wb3NpdGlvbjowIC00NzY4cHg7fVxuICAgIC5tZ3tiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTQ4MDBweDt9XG4gICAgLm1oe2JhY2tncm91bmQtcG9zaXRpb246MCAtNDgzMnB4O31cbiAgICAubWt7YmFja2dyb3VuZC1wb3NpdGlvbjowIC00ODY0cHg7fVxuICAgIC5tbHtiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTQ4OTZweDt9XG4gICAgLm1te2JhY2tncm91bmQtcG9zaXRpb246MCAtNDkyOHB4O31cbiAgICAubW57YmFja2dyb3VuZC1wb3NpdGlvbjowIC00OTYwcHg7fVxuICAgIC5tb3tiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTQ5OTJweDt9XG4gICAgLm1xe2JhY2tncm91bmQtcG9zaXRpb246MCAtNTAyNHB4O31cbiAgICAubXJ7YmFja2dyb3VuZC1wb3NpdGlvbjowIC01MDU2cHg7fVxuICAgIC5tc3tiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTUwODhweDt9XG4gICAgLm10e2JhY2tncm91bmQtcG9zaXRpb246MCAtNTEyMHB4O31cbiAgICAubXV7YmFja2dyb3VuZC1wb3NpdGlvbjowIC01MTUycHg7fVxuICAgIC5tdntiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTUxODRweDt9XG4gICAgLm13e2JhY2tncm91bmQtcG9zaXRpb246MCAtNTIxNnB4O31cbiAgICAubXh7YmFja2dyb3VuZC1wb3NpdGlvbjowIC01MjQ4cHg7fVxuICAgIC5teXtiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTUyODBweDt9XG4gICAgLm16e2JhY2tncm91bmQtcG9zaXRpb246MCAtNTMxMnB4O31cbiAgICAubmF7YmFja2dyb3VuZC1wb3NpdGlvbjowIC01MzQ0cHg7fVxuICAgIC5uY3tiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTUzNzZweDt9XG4gICAgLm5le2JhY2tncm91bmQtcG9zaXRpb246MCAtNTQwOHB4O31cbiAgICAubmd7YmFja2dyb3VuZC1wb3NpdGlvbjowIC01NDQwcHg7fVxuICAgIC5uaXtiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTU0NzJweDt9XG4gICAgLm5se2JhY2tncm91bmQtcG9zaXRpb246MCAtNTUwNHB4O31cbiAgICAuYnF7YmFja2dyb3VuZC1wb3NpdGlvbjowIC01NTA0cHg7fVxuICAgIC5ub3tiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTU1MzZweDt9XG4gICAgLmJ2e2JhY2tncm91bmQtcG9zaXRpb246MCAtNTUzNnB4O31cbiAgICAubnF7YmFja2dyb3VuZC1wb3NpdGlvbjowIC01NTM2cHg7fVxuICAgIC5zantiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTU1MzZweDt9XG4gICAgLm5we2JhY2tncm91bmQtcG9zaXRpb246MCAtNTU2OHB4O31cbiAgICAubnJ7YmFja2dyb3VuZC1wb3NpdGlvbjowIC01NjAwcHg7fVxuICAgIC5uentiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTU2MzJweDt9XG4gICAgLm9te2JhY2tncm91bmQtcG9zaXRpb246MCAtNTY2NHB4O31cbiAgICAucGF7YmFja2dyb3VuZC1wb3NpdGlvbjowIC01Njk2cHg7fVxuICAgIC5wZXtiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTU3MjhweDt9XG4gICAgLnBme2JhY2tncm91bmQtcG9zaXRpb246MCAtNTc2MHB4O31cbiAgICAucGd7YmFja2dyb3VuZC1wb3NpdGlvbjowIC01NzkycHg7fVxuICAgIC5waHtiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTU4MjRweDt9XG4gICAgLnBre2JhY2tncm91bmQtcG9zaXRpb246MCAtNTg1NnB4O31cbiAgICAucGx7YmFja2dyb3VuZC1wb3NpdGlvbjowIC01ODg4cHg7fVxuICAgIC5wcntiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTU5MjBweDt9XG4gICAgLnBze2JhY2tncm91bmQtcG9zaXRpb246MCAtNTk1MnB4O31cbiAgICAucHR7YmFja2dyb3VuZC1wb3NpdGlvbjowIC01OTg0cHg7fVxuICAgIC5wd3tiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTYwMTZweDt9XG4gICAgLnB5e2JhY2tncm91bmQtcG9zaXRpb246MCAtNjA0OHB4O31cbiAgICAucWF7YmFja2dyb3VuZC1wb3NpdGlvbjowIC02MDgwcHg7fVxuICAgIC5yZXtiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTYxMTJweDt9XG4gICAgLnJve2JhY2tncm91bmQtcG9zaXRpb246MCAtNjE0NHB4O31cbiAgICAucnN7YmFja2dyb3VuZC1wb3NpdGlvbjowIC02MTc2cHg7fVxuICAgIC5ydXtiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTYyMDhweDt9XG4gICAgLnJ3e2JhY2tncm91bmQtcG9zaXRpb246MCAtNjI0MHB4O31cbiAgICAuc2F7YmFja2dyb3VuZC1wb3NpdGlvbjowIC02MjcycHg7fVxuICAgIC5zYntiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTYzMDRweDt9XG4gICAgLnNje2JhY2tncm91bmQtcG9zaXRpb246MCAtNjMzNnB4O31cbiAgICAuc2R7YmFja2dyb3VuZC1wb3NpdGlvbjowIC02MzY4cHg7fVxuICAgIC5zZXtiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTY0MDBweDt9XG4gICAgLnNne2JhY2tncm91bmQtcG9zaXRpb246MCAtNjQzMnB4O31cbiAgICAuc2l7YmFja2dyb3VuZC1wb3NpdGlvbjowIC02NDY0cHg7fVxuICAgIC5za3tiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTY0OTZweDt9XG4gICAgLnNse2JhY2tncm91bmQtcG9zaXRpb246MCAtNjUyOHB4O31cbiAgICAuc217YmFja2dyb3VuZC1wb3NpdGlvbjowIC02NTYwcHg7fVxuICAgIC5zbntiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTY1OTJweDt9XG4gICAgLnNve2JhY2tncm91bmQtcG9zaXRpb246MCAtNjYyNHB4O31cbiAgICAuc3J7YmFja2dyb3VuZC1wb3NpdGlvbjowIC02NjU2cHg7fVxuICAgIC5zdHtiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTY2ODhweDt9XG4gICAgLnN2e2JhY2tncm91bmQtcG9zaXRpb246MCAtNjcyMHB4O31cbiAgICAuc3l7YmFja2dyb3VuZC1wb3NpdGlvbjowIC02NzUycHg7fVxuICAgIC5zentiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTY3ODRweDt9XG4gICAgLnRje2JhY2tncm91bmQtcG9zaXRpb246MCAtNjgxNnB4O31cbiAgICAudGR7YmFja2dyb3VuZC1wb3NpdGlvbjowIC02ODQ4cHg7fVxuICAgIC50Z3tiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTY4ODBweDt9XG4gICAgLnRoe2JhY2tncm91bmQtcG9zaXRpb246MCAtNjkxMnB4O31cbiAgICAudGp7YmFja2dyb3VuZC1wb3NpdGlvbjowIC02OTQ0cHg7fVxuICAgIC50bHtiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTY5NzZweDt9XG4gICAgLnRte2JhY2tncm91bmQtcG9zaXRpb246MCAtNzAwOHB4O31cbiAgICAudG57YmFja2dyb3VuZC1wb3NpdGlvbjowIC03MDQwcHg7fVxuICAgIC50b3tiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTcwNzJweDt9XG4gICAgLnRye2JhY2tncm91bmQtcG9zaXRpb246MCAtNzEwNHB4O31cbiAgICAudHR7YmFja2dyb3VuZC1wb3NpdGlvbjowIC03MTM2cHg7fVxuICAgIC50dntiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTcxNjhweDt9XG4gICAgLnR3e2JhY2tncm91bmQtcG9zaXRpb246MCAtNzIwMHB4O31cbiAgICAudHp7YmFja2dyb3VuZC1wb3NpdGlvbjowIC03MjMycHg7fVxuICAgIC51YXtiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTcyNjRweDt9XG4gICAgLnVne2JhY2tncm91bmQtcG9zaXRpb246MCAtNzI5NnB4O31cbiAgICAudXN7YmFja2dyb3VuZC1wb3NpdGlvbjowIC03MzI4cHg7fVxuICAgIC51eXtiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTczNjBweDt9XG4gICAgLnV6e2JhY2tncm91bmQtcG9zaXRpb246MCAtNzM5MnB4O31cbiAgICAudmF7YmFja2dyb3VuZC1wb3NpdGlvbjowIC03NDI0cHg7fVxuICAgIC52Y3tiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTc0NTZweDt9XG4gICAgLnZle2JhY2tncm91bmQtcG9zaXRpb246MCAtNzQ4OHB4O31cbiAgICAudmd7YmFja2dyb3VuZC1wb3NpdGlvbjowIC03NTIwcHg7fVxuICAgIC52aXtiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTc1NTJweDt9XG4gICAgLnZue2JhY2tncm91bmQtcG9zaXRpb246MCAtNzU4NHB4O31cbiAgICAudnV7YmFja2dyb3VuZC1wb3NpdGlvbjowIC03NjE2cHg7fVxuICAgIC53c3tiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTc2NDhweDt9XG4gICAgLnlle2JhY2tncm91bmQtcG9zaXRpb246MCAtNzY4MHB4O31cbiAgICAuemF7YmFja2dyb3VuZC1wb3NpdGlvbjowIC03NzEycHg7fVxuICAgIC56bXtiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTc3NDRweDt9XG4gICAgLnp3e2JhY2tncm91bmQtcG9zaXRpb246MCAtNzc3NnB4O31cbiAgICAuc3h7YmFja2dyb3VuZC1wb3NpdGlvbjowIC03ODA4cHg7fVxuICAgIC5jd3tiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgLTc4NDBweDt9XG4gICAgLnNze2JhY2tncm91bmQtcG9zaXRpb246MCAtNzg3MnB4O31cbiAgICAubnV7YmFja2dyb3VuZC1wb3NpdGlvbjowIC03OTA0cHg7fVxuXG59IiwiLy8gZ2VuZXJpY1xuXG5odG1sLCBib2R5IHtcbiAgICBAaW5jbHVkZSByZW0oZm9udC1zaXplLCAkYmFzZS1mb250LXNpemUgKyBweCk7XG4gICAgZm9udC1mYW1pbHk6ICRmb250X2JvZHk7XG4gICAgbGluZS1oZWlnaHQ6IDEuMjtcbn1cblxuLy8gaGVhZGluZ3NcblxuaDEgeyBmb250LXNpemU6ICRmb250X3NpemVfb3RoZXJfcGFnZV90aXRsZXNfaDEgIWltcG9ydGFudDsgfVxuaDIgeyBmb250LXNpemU6ICRmb250X3NpemVfb3RoZXJfcGFnZV90aXRsZXNfaDIgIWltcG9ydGFudDsgfVxuaDMgeyBmb250LXNpemU6ICRmb250X3NpemVfb3RoZXJfcGFnZV90aXRsZXNfaDMgIWltcG9ydGFudDsgfVxuaDMgeyBmb250LXNpemU6ICRmb250X3NpemVfb3RoZXJfcGFnZV90aXRsZXNfaDQgIWltcG9ydGFudDsgfVxuaDUgeyBmb250LXNpemU6IDEuMTI1cmVtOyB9XG5oNSB7IGZvbnQtc2l6ZTogMXJlbTsgfVxuXG5cbi8vIHN1YmhlYWRlcnNcblxuaDEsIGgyLCBoMywgaDQsIGg1LCBoNiB7XG4gICAgZm9udC1mYW1pbHk6ICRmb250X2hlYWRpbmc7XG4gICAgbGluZS1oZWlnaHQ6IDEuMjtcbn1cblxuaDEge1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgZm9udC1zaXplOiAkZm9udF9zaXplX290aGVyX3BhZ2VfdGl0bGVzX2gxO1xufVxuXG5cbi8vIGVsZW1lbnRzXG5cbmFkZHJlc3Mge1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cblxuLy8gbm8gaGlnaGxpZ2h0IG91dGxpbmVcblxuOmZvY3VzIHtcbiAgICBvdXRsaW5lOiBub25lO1xufVxuXG5ociB7XG4gICAgbWF4LXdpZHRoOiAkc2l0ZS13aWR0aDtcbn1cblxuYSB7XG4gICAgY29sb3I6ICRjb2xvdXJfbWFpbjtcblxuICAgIEBpbmNsdWRlIGlzLWFjdGl2ZSB7XG4gICAgICAgIGNvbG9yOiAkY29sb3VyX21haW47XG4gICAgfVxufSIsIlxuLy8gdmVydGljYWwgY2VudGVyaW5nXG4vLyAgLmVsZW1lbnQgcCB7XG4vLyAgICAgIEBpbmNsdWRlIHZlcnRpY2FsLWFsaWduKCk7XG4vLyAgfVxuQG1peGluIHZlcnRpY2FsLWFsaWduKCRwb3NpdGlvbjogcmVsYXRpdmUsICRob3Jpem9udGFsOiBmYWxzZSkge1xuICAgIHBvc2l0aW9uOiAkcG9zaXRpb247XG4gICAgdG9wOiA1MCU7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG5cbiAgICBAaWYgJGhvcml6b250YWwge1xuICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlKSwgLTUwJTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwtNTAlKTtcbiAgICB9XG59XG5cblxuLy8gZWxlbWVudCBwc3VkbyBzdGF0ZXNcbi8vXG4vLyAuZWxlbWVudCB7XG4vLyAgICAgQGluY2x1ZGUgaXMtYWN0aXZlIHtcbi8vICAgICAgICAgYm9yZGVyOiAxcHggZG90dGVkIHJlZDtcbi8vICAgICB9XG4vLyB9XG5cbkBtaXhpbiBpcy1hY3RpdmUge1xuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyxcbiAgICAmOmFjdGl2ZSxcbiAgICAmLmFjdGl2ZSB7XG4gICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICAgIEBjb250ZW50O1xuICAgIH1cbn1cblxuXG4vLyB4QnJvd3NlciBwbGFjZWhvbGRlciBzdWRvXG5cbi8vIGVsZW1lbnQge1xuLy8gICAgIEBpbmNsdWRlIHBsYWNlaG9sZGVyIHtcbi8vICAgICAgIGZvbnQtZmFtaWx5OiAkYmFzZS1mb250LWZhbWlseTtcbi8vICAgICAgIGNvbG9yOiByZWQ7XG4vLyAgICAgfVxuLy8gfVxuXG5AbWl4aW4gcGxhY2Vob2xkZXIge1xuICAgICY6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIge0Bjb250ZW50fVxuICAgICY6LW1vei1wbGFjZWhvbGRlciB7XG4gICAgICAgIEBjb250ZW50O1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgIH1cbiAgICAmOjotbW96LXBsYWNlaG9sZGVyIHtcbiAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgfVxuICAgICY6LW1zLWlucHV0LXBsYWNlaG9sZGVyICAgICAge0Bjb250ZW50fVxufVxuXG5cbi8vIFRyYW5zZm9ybSB2ZW5kb3IgcHJlZml4ZXNcbi8vIC5lbGVtZW50IHtcbi8vICAgQGluY2x1ZGUgdHJhbnNmb3JtKCB0cmFuc2xhdGVYKDQwMHB4KSApO1xuLy8gfVxuXG5AbWl4aW4gdHJhbnNmb3JtKCR0cmFuc2Zvcm1zKSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06ICR0cmFuc2Zvcm1zO1xuICAgIC1tb3otdHJhbnNmb3JtOiAkdHJhbnNmb3JtcztcbiAgICAtbXMtdHJhbnNmb3JtOiAkdHJhbnNmb3JtcztcbiAgICB0cmFuc2Zvcm06ICR0cmFuc2Zvcm1zO1xufVxuXG5cblxuLy8gQ3JlYXRlIFJFTSB2YWx1ZXMgd2l0aCBQWCBmYWxsIGJhY2tcbi8vXG4vLyBHZW5lcmF0ZSBhIFJFTSB3aXRoIFBYIGZhbGxiYWNrIGZyb21cbi8vICRiYXNlRm9udFNpemUuIEVudGVyIHRoZSBkZXNpcmVkIHNpemUgYmFzZWRcbi8vIG9uIHBpeGVscyBpbiBudW1lcmljYWwgZm9ybS4gU3VwcG9ydHMgc2hvcnRoYW5kLlxuLy9cbi8vIFVzYWdlOiBAaW5jbHVkZSByZW0oJHByb3BlcnR5LCAkdmFsdWVzKTtcbi8vIEV4YW1wbGUgVXNhZ2U6XG4vLyAgICBAaW5jbHVkZSByZW0oZm9udC1zaXplLCAxNnB4KTtcbi8vICAgIEBpbmNsdWRlIHJlbShtYXJnaW4sIDAgMjRweCAwIDEycHgpO1xuLy9cbi8vIE91dHB1dHM6XG4vLyAgICBmb250LXNpemU6IDE2cHg7XG4vLyAgICBmb250LXNpemU6IDEuNnJlbTtcbi8vICAgIG1hcmdpbjogMCAyNHB4IDAgMTJweDtcbi8vICAgIG1hcmdpbjogMCAyLjRyZW0gMCAxLjJyZW07XG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyAkYmFzZS1mb250LXNpemUgZGVmaW5lZCBpbiBfdmFyYWlibGVzXG5cbkBmdW5jdGlvbiBwYXJzZUludCgkbikge1xuICBAcmV0dXJuICRuIC8gKCRuICogMCArIDEpO1xufVxuXG5AbWl4aW4gcmVtKCRwcm9wZXJ0eSwgJHZhbHVlcykge1xuICAgICRweCA6ICgpO1xuICAgICRyZW06ICgpO1xuXG4gICAgJHJvb3Q6ICRiYXNlLWZvbnQtc2l6ZTtcblxuICAgIEBlYWNoICR2YWx1ZSBpbiAkdmFsdWVzIHtcbiAgICAgICAgQGlmICR2YWx1ZSA9PSAwIG9yICR2YWx1ZSA9PSBhdXRvIHtcbiAgICAgICAgICAgICRweCA6IGFwcGVuZCgkcHggLCAkdmFsdWUpO1xuICAgICAgICAgICAgJHJlbTogYXBwZW5kKCRyZW0sICR2YWx1ZSk7XG4gICAgICAgIH1cblxuICAgICAgICBAZWxzZSBpZiB0eXBlLW9mKCR2YWx1ZSkgPT0gbnVtYmVyIHtcbiAgICAgICAgICAgICR1bml0OiB1bml0KCR2YWx1ZSk7XG4gICAgICAgICAgICAkdmFsOiBwYXJzZUludCgkdmFsdWUpO1xuXG4gICAgICAgICAgICBAaWYgJHVuaXQgPT0gXCJweFwiIHtcbiAgICAgICAgICAgICAgICAkcHggOiBhcHBlbmQoJHB4LCAgJHZhbHVlKTtcbiAgICAgICAgICAgICAgICAkcmVtOiBhcHBlbmQoJHJlbSwgKCR2YWwgLyAkcm9vdCArIHJlbSkpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaWYgJHVuaXQgPT0gXCJyZW1cIiB7XG4gICAgICAgICAgICAgICAgJHB4IDogYXBwZW5kKCRweCwgICgkdmFsICogJHJvb3QgKyBweCkpO1xuICAgICAgICAgICAgICAgICRyZW06IGFwcGVuZCgkcmVtLCAkdmFsdWUpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgQGVsc2Uge1xuICAgICAgICAgICAgJHB4IDogYXBwZW5kKCRweCwgICR2YWx1ZSk7XG4gICAgICAgICAgICAkcmVtOiBhcHBlbmQoJHJlbSwgJHZhbHVlKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpZiAkcHggPT0gJHJlbSB7XG4gICAgICAgICN7JHByb3BlcnR5fTogJHB4O1xuICAgIH0gQGVsc2Uge1xuICAgICAgICAjeyRwcm9wZXJ0eX06ICRweDtcbiAgICAgICAgI3skcHJvcGVydHl9OiAkcmVtO1xuICAgIH1cbn1cblxuQGZ1bmN0aW9uIHJlbSgkdmFsdWUpIHtcbiAgICAkcm9vdDogJGJhc2UtZm9udC1zaXplO1xuICAgICR2YWw6IHBhcnNlSW50KCR2YWx1ZSk7XG4gICAgJHJldHVybjogKCk7XG5cbiAgICBAaWYgdW5pdCgkdmFsdWUpID09IFwicHhcIiB7XG4gICAgICAgICRyZXR1cm46IGFwcGVuZCgkcmV0dXJuLCAoJHZhbCAvICRyb290ICsgcmVtKSk7XG4gICAgfSBAZWxzZSB7XG4gICAgICAgICRyZXR1cm46IGFwcGVuZCgkcmV0dXJuLCAoJHZhbCAqICRyb290ICsgcHgpKTtcbiAgICB9XG5cbiAgICBAcmV0dXJuICRyZXR1cm47XG59IiwiLmJ1dHRvbiB7XG4gICAgZm9udC1mYW1pbHk6ICRmb250X3NlY29uZDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYmFlNGYwO1xuICAgIGNvbG9yOiAjMDY0ZTliO1xuICAgIGZvbnQtc2l6ZTogMS4xNnJlbTtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICAgIHBhZGRpbmc6IDEuMzVyZW0gMi4xOHJlbTtcbiAgICBib3JkZXI6IDA7XG4gICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICYudGV4dC1sZWZ0IHtcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICB9XG5cbiAgICAmLm1lZGl1bSB7XG4gICAgICAgIHBhZGRpbmc6IDEuMzVyZW0gMS42N3JlbTtcbiAgICB9XG5cbiAgICAmLndpdGgtYXJyb3cge1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICBwYWRkaW5nOiAyLjE4cmVtIDIuOXJlbTtcbiAgICAgICAgcGFkZGluZy1yaWdodDogNHJlbTtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xuXG4gICAgICAgIC53aXRoLWFycm93X2ljb24ge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjdyZW07XG4gICAgICAgICAgICByaWdodDogMi45cmVtO1xuICAgICAgICAgICAgQGluY2x1ZGUgdmVydGljYWwtYWxpZ24oYWJzb2x1dGUpO1xuXG4gICAgICAgICAgICBpIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIGlzLWFjdGl2ZSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNiYWU0ZjA7XG4gICAgICAgIGNvbG9yOiAjMDY0ZTliO1xuICAgIH1cblxuICAgIC5pY29uIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDM1cHg7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcblxuICAgICAgICBpIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHZlcnRpY2FsLWFsaWduKGFic29sdXRlKTtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICBmb250LXNpemU6IDIzcHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLmNoZWNrb3V0IHtcbiAgICAgIGZvbnQtc2l6ZTogMS4zcmVtO1xuXG4gICAgICAgIC5pY29uIHtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogNDJweDtcblxuICAgICAgICAgICAgaSB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAzMHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi5sZyB7XG4gICAgICAgIGZvbnQtc2l6ZTogJGZvbnRfc2l6ZV9idXR0b25zX2xhcmdlO1xuICAgIH1cblxuICAgICYuc20ge1xuICAgICAgICBmb250LXNpemU6ICRmb250X3NpemVfYnV0dG9uc19zbWFsbDtcbiAgICAgICAgbWluLXdpZHRoOiAyMjVweDtcbiAgICB9XG5cbiAgICAmLm1kIHtcbiAgICAgICAgZm9udC1zaXplOiAkZm9udF9zaXplX2J1dHRvbnNfbWVkaXVtO1xuICAgICAgICBtaW4td2lkdGg6IDIyNXB4O1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICBib3JkZXI6IDJweCBzb2xpZCBpZihzZXR0aW5nLXZhbHVlKCd3ZWJzaXRlX2NvbG91cnNfdXNlX2RlZmF1bHRfd2Vic2l0ZV9jb2xvcnMnKSwgJGNvbG9yX2dsb2JhbF9ncmVlbl9hY2NlbnRfY29sb3VyLCAkY29sb3Jfd2Vic2l0ZV9zZWNvbmRfYWNjZW50KTtcbiAgICB9XG5cbiAgICAmLmZpbGxlZCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IGlmKHNldHRpbmctdmFsdWUoJ3dlYnNpdGVfY29sb3Vyc191c2VfZGVmYXVsdF93ZWJzaXRlX2NvbG9ycycpLCAkY29sb3JfZ2xvYmFsX2dyZWVuX2FjY2VudF9jb2xvdXIsICRjb2xvcl93ZWJzaXRlX3NlY29uZF9hY2NlbnQpO1xuICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgIH1cblxuICAgICYuZm9vdGVyLWNvbnRhY3Qge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBpZihzZXR0aW5nLXZhbHVlKCdmb290ZXJfdXNlX2RlZmF1bHRfd2Vic2l0ZV9jb2xvcnMnKSwgJGNvbG9yX2dsb2JhbF9ncmVlbl9hY2NlbnRfY29sb3VyLCAkY29sb3JfZm9vdGVyX2NvbnRhY3RfYnV0dG9uX2JhY2tncm91bmQpO1xuICAgICAgICBib3JkZXItY29sb3I6IGlmKHNldHRpbmctdmFsdWUoJ2Zvb3Rlcl91c2VfZGVmYXVsdF93ZWJzaXRlX2NvbG9ycycpLCAkY29sb3JfZ2xvYmFsX2dyZWVuX2FjY2VudF9jb2xvdXIsICRjb2xvcl9mb290ZXJfY29udGFjdF9idXR0b25fYmFja2dyb3VuZCk7XG4gICAgICAgIGNvbG9yOiBpZihzZXR0aW5nLXZhbHVlKCdmb290ZXJfdXNlX2RlZmF1bHRfd2Vic2l0ZV9jb2xvcnMnKSwgJGNvbG9yX2dsb2JhbF9tYWluX2J1dHRvbl90ZXh0LCAkY29sb3JfZm9vdGVyX2NvbnRhY3RfYnV0dG9uX3RleHQpO1xuICAgIH1cblxuICAgICYuYm9yZGVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgICBjb2xvcjogaWYoc2V0dGluZy12YWx1ZSgnd2Vic2l0ZV9jb2xvdXJzX3VzZV9kZWZhdWx0X3dlYnNpdGVfY29sb3JzJyksICRjb2xvcl9nbG9iYWxfZ3JlZW5fYWNjZW50X2NvbG91ciwgJGNvbG9yX3dlYnNpdGVfc2Vjb25kX2FjY2VudCk7XG4gICAgfVxuXG4gICAgJi5mb290ZXItY2FsbCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgY29sb3I6IGlmKHNldHRpbmctdmFsdWUoJ2Zvb3Rlcl91c2VfZGVmYXVsdF93ZWJzaXRlX2NvbG9ycycpLCAkY29sb3JfZ2xvYmFsX2dyZWVuX2FjY2VudF9jb2xvdXIsICRjb2xvcl9mb290ZXJfY2FsbF9idXR0b25fdGV4dCk7XG4gICAgICAgIGJvcmRlci1jb2xvcjogaWYoc2V0dGluZy12YWx1ZSgnZm9vdGVyX3VzZV9kZWZhdWx0X3dlYnNpdGVfY29sb3JzJyksICRjb2xvcl9nbG9iYWxfZ3JlZW5fYWNjZW50X2NvbG91ciwgJGNvbG9yX2Zvb3Rlcl9jYWxsX2J1dHRvbl9ib3JkZXIpO1xuXG4gICAgICAgIGEge1xuICAgICAgICAgICAgY29sb3I6IGlmKHNldHRpbmctdmFsdWUoJ2Zvb3Rlcl91c2VfZGVmYXVsdF93ZWJzaXRlX2NvbG9ycycpLCAkY29sb3JfZ2xvYmFsX2dyZWVuX2FjY2VudF9jb2xvdXIsICRjb2xvcl9mb290ZXJfY2FsbF9idXR0b25fdGV4dCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmICsgLmJ1dHRvbiB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAuNXJlbTtcbiAgICB9XG5cbiAgICAmLmRpc2FibGVkIHtcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgfVxufVxuXG4ucGF5cGFsLWJ1dHRvbiB7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICBiYWNrZ3JvdW5kOiAjZmZjNDNhO1xuICAgIHBhZGRpbmc6IC41cmVtIDA7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgJjpmb2N1cywgJjpob3ZlciB7XG4gICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmYzQzYTtcbiAgICB9XG59XG5cbi5uby1iZyB7XG4gICAgZm9udC1zaXplOiAxLjNyZW07XG4gICAgZm9udC1mYW1pbHk6ICRmb250X3NlY29uZDtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICAgIGNvbG9yOiAkY29sb3VyX2JvZHl0eHQ7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyOiAwO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcblxuICAgICY6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcIlxcZTk0NlwiO1xuICAgICAgICBmb250LWZhbWlseTogJGljb247XG4gICAgICAgIGZvbnQtc2l6ZTogLjlyZW07XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAuNXJlbTtcbiAgICB9XG5cbiAgICBAbWVkaWEgI3skcy1vbmx5fSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4ycmVtO1xuXG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi53aXNobGlzdC1saW5rIHtcbiAgICBmb250LXNpemU6IDEuMTZyZW07XG4gICAgZm9udC1mYW1pbHk6ICRmb250X3NlY29uZDtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICAgIHBhZGRpbmc6IDEuMDlyZW0gMi4xOHJlbTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBpZihzZXR0aW5nLXZhbHVlKCdwcm9kdWN0X2xpc3RpbmdzX3VzZV9kZWZhdWx0X3dlYnNpdGVfY29sb3JzJyksICRjb2xvcl9nbG9iYWxfdmVyeV9saWdodF9waW5rLCAkY29sb3JfcHJvZHVjdF9saXN0aW5nc193aXNobGlzdF9iYWNrZ3JvdW5kKTtcbiAgICBjb2xvcjogaWYoc2V0dGluZy12YWx1ZSgncHJvZHVjdF9saXN0aW5nc191c2VfZGVmYXVsdF93ZWJzaXRlX2NvbG9ycycpLCAkY29sb3JfZ2xvYmFsX3JlZF9hY2NlbnRfY29sb3VyLCAkY29sb3JfcHJvZHVjdF9saXN0aW5nc193aXNobGlzdF9pY29uKTtcbiAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjY7XG5cbiAgICA+IHNwYW4ge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMjlweDtcbiAgICB9XG5cbiAgICBpIHtcbiAgICAgICAgQGluY2x1ZGUgdmVydGljYWwtYWxpZ24oYWJzb2x1dGUpO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgfVxuXG4gICAgJjpob3ZlciB7XG4gICAgICAgIGNvbG9yOiBpZihzZXR0aW5nLXZhbHVlKCdwcm9kdWN0X2xpc3RpbmdzX3VzZV9kZWZhdWx0X3dlYnNpdGVfY29sb3JzJyksICRjb2xvcl9nbG9iYWxfcmVkX2FjY2VudF9jb2xvdXIsICRjb2xvcl9wcm9kdWN0X2xpc3RpbmdzX3dpc2hsaXN0X2ljb24pO1xuICAgIH1cbn1cblxuYnV0dG9uIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgZm9udC1mYW1pbHk6ICRmb250X3NlY29uZDtcbn1cblxuLmJ1dHRvbl9hZGQtYmFza2V0IHtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuXG4vLyBjb2xsZWN0aW9uIGJ1dHRvbnNcbi50b2dnbGUtZmlsdGVycyB7XG4gICAgbWFyZ2luOiAwO1xuICAgIGZvbnQtc2l6ZTogMS4wMXJlbTtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGhlaWdodDogNTFweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjNmMGVlO1xuICAgIHdpZHRoOiA1MXB4O1xuICAgIGNvbG9yOiAkY29sb3VyX2JvZHl0eHQ7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2YzZjBlZTtcbiAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udF9ib2R5O1xuXG4gICAgaSB7XG4gICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICB9XG5cbiAgICAmOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXFxlOTViXCI7XG4gICAgICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgICAgICAgd2lkdGg6IDUxcHg7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIGNvbG9yOiAkY29sb3VyX2JvZHl0eHQ7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkaWNvbjtcbiAgICAgICAgQGluY2x1ZGUgdmVydGljYWwtYWxpZ24oYWJzb2x1dGUpO1xuICAgIH1cbn1cblxuLmNvbGxlY3Rpb24tY29udHJvbHMge1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cbiAgICAuYnV0dG9uIHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBmb250LXNpemU6IDEuMDFyZW07XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIGhlaWdodDogNTFweDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICAgICAgd2lkdGg6IDUxcHg7XG4gICAgICAgIGNvbG9yOiAkY29sb3VyX2JvZHl0eHQ7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNmM2YwZWU7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IGlmKHNldHRpbmctdmFsdWUoJ2NhdGVnb3J5X3BhZ2VzX3VzZV9kZWZhdWx0X3dlYnNpdGVfY29sb3JzJyksICRjb2xvcl9nbG9iYWxfbGlnaHRfYmFja2dyb3VuZHMsICRjb2xvcl9zZWxlY3RlZF9ncmlkX2xpc3QpO1xuICAgICAgICB9XG5cbiAgICAgICAgJiArIC5idXR0b24ge1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBpIHtcbiAgICAgICAgLy8gICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgICAgLy8gfVxuXG4gICAgICAgIGkge1xuICAgICAgICAgICAgZm9udC1zaXplOiAyLjMycmVtO1xuICAgICAgICAgICAgd2lkdGg6IDUxcHg7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgY29sb3I6ICRjb2xvdXJfYm9keXR4dDtcbiAgICAgICAgICAgIEBpbmNsdWRlIHZlcnRpY2FsLWFsaWduKGFic29sdXRlKTtcbiAgICAgICAgfVxuXG4gICAgICAgICYuZ3JpZCBpIHtcbiAgICAgICAgICAgIC8vIGNvbnRlbnQ6IFwiXFxlOTU4XCI7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuOHJlbTtcbiAgICAgICAgfVxuXG4gICAgICAgICYubGlzdDpiZWZvcmUge1xuICAgICAgICAgICAgLy8gY29udGVudDogXCJcXGU5NTdcIjtcbiAgICAgICAgfVxuICAgIH1cbn0iLCJcbi8vIHZhbGlkYXRpb24gbWVzc2FnZXNcbnNwYW4udmFsaWRhdGlvbi1lcnJvciB7XG4gICAgY29sb3I6ICNlZjNkM2Q7XG4gICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgIGZvbnQtc2l6ZTogLjhyZW07XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG5cbiAgICAucHJvZHVjdC12YWxpZGF0aW9uICYge1xuICAgICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgICYgKyAudmFsaWRhdGlvbi1lcnJvciwgJiArIC5pbnB1dC1ncm91cCAudmFsaWRhdGlvbi1lcnJvciB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogI2ZmMDAwMDtcblxuICAgICAgICBAaW5jbHVkZSBpcy1hY3RpdmUge1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAjZmYwMDAwO1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgcGxhY2Vob2xkZXIge1xuICAgICAgICAgICAgY29sb3I6ICNmZjAwMDA7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5maWVsZC1sYWJlbCB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGZvbnQtc2l6ZTogLjg3M3JlbTtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIG1hcmdpbi1ib3R0b206IC41cmVtO1xuICAgIGNvbG9yOiAkY29sb3VyX2JvZHl0eHQ7XG59XG5cbi5maWVsZC1jb250YWluZXIgLmZpZWxkLWxhYmVsIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbWFyZ2luOiAwO1xuICAgIGxlZnQ6IDEuNnJlbTtcbiAgICB0b3A6IC43cmVtO1xuICAgIGNvbG9yOiAjMjQyNDI0O1xuICAgIGZvbnQtc2l6ZTogMC43MjdyZW07XG4gICAgZm9udC1mYW1pbHk6ICRmb250X2JvZHk7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICB6LWluZGV4OiAxMDtcbiAgICBvcGFjaXR5OiAwO1xuICAgIEBpbmNsdWRlIHRyYW5zZm9ybSggdHJhbnNsYXRlWSgzcHgpICk7XG4gICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogb3BhY2l0eSwgLXdlYmtpdC10cmFuc2Zvcm07XG4gICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogb3BhY2l0eSwgdHJhbnNmb3JtO1xuICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IG9wYWNpdHksIHRyYW5zZm9ybSwgLXdlYmtpdC10cmFuc2Zvcm07XG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMTUwbXM7XG59XG5cbi5pcy1maWxsZWQgLmZpZWxkLWxhYmVsIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIEBpbmNsdWRlIHRyYW5zZm9ybSggdHJhbnNsYXRlWSgwKSApO1xufVxuXG4uZmllbGQtY29udGFpbmVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGluZS1oZWlnaHQ6IDEuNTtcbn1cblxuLnNlbGVjdC1jb250YWluZXIge1xuICAgIHBhZGRpbmc6IDA7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICBib3JkZXItcmFkaXVzOiA1cHg7XG5cbiAgICAuZmllbGQtbGFiZWwge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgZm9udC1zaXplOiAuODczcmVtO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDEuMDdyZW0gMS42cmVtO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAzcHg7XG4gICAgICAgIHotaW5kZXg6IHVuc2V0O1xuXHRcdFxuXHRcdC5pcy10ZXh0LmlzLWZpbGxlZCYge1xuXHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0bWFyZ2luOiAwO1xuXHRcdFx0bGVmdDogMS42cmVtO1xuXHRcdFx0dG9wOiAuN3JlbTtcblx0XHRcdGNvbG9yOiAjMjQyNDI0O1xuXHRcdFx0Zm9udC1zaXplOiAwLjcyN3JlbTtcblx0XHRcdGZvbnQtZmFtaWx5OiAkZm9udF9ib2R5O1xuXHRcdFx0Zm9udC13ZWlnaHQ6IDcwMDtcblx0XHRcdHBvaW50ZXItZXZlbnRzOiBub25lO1xuXHRcdFx0ei1pbmRleDogMTA7XG5cdFx0XHRvcGFjaXR5OiAxO1xuXHRcdFx0cGFkZGluZzogMDtcblx0XHRcdG1hcmdpbi10b3A6IC0wLjVlbTtcblx0XHRcdEBpbmNsdWRlIHRyYW5zZm9ybSggdHJhbnNsYXRlWSgzcHgpICk7XG5cdFx0XHR0cmFuc2l0aW9uLXByb3BlcnR5OiBvcGFjaXR5LCAtd2Via2l0LXRyYW5zZm9ybTtcblx0XHRcdHRyYW5zaXRpb24tcHJvcGVydHk6IG9wYWNpdHksIHRyYW5zZm9ybTtcblx0XHRcdHRyYW5zaXRpb24tcHJvcGVydHk6IG9wYWNpdHksIHRyYW5zZm9ybSwgLXdlYmtpdC10cmFuc2Zvcm07XG5cdFx0XHR0cmFuc2l0aW9uLWR1cmF0aW9uOiAxNTBtcztcblx0XHR9XG4gICAgfVxuXHRcblx0Ji5tb2QtaW5wdXQgc2VsZWN0IHtcblx0XHRwYWRkaW5nLXRvcDogMC41cmVtICFpbXBvcnRhbnQ7XG5cdFx0cGFkZGluZy1ib3R0b206IDAuNXJlbSAhaW1wb3J0YW50O1xuXHR9XG5cbiAgICBzZWxlY3Qge1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICAgICAgLW1vei1hcHBlYXJhbmNlOiBub25lO1xuICAgICAgICAtbXMtYXBwZWFyYW5jZTogbm9uZTtcbiAgICAgICAgLW8tYXBwZWFyYW5jZTogbm9uZTtcbiAgICAgICAgYXBwZWFyYW5jZTogbm9uZTtcblxuICAgICAgICAmOmZvY3VzLFxuICAgICAgICAmOmFjdGl2ZSxcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgfVxuXG4gICAgICAgIG9wdGlvbiB7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLy8gaW5wdXRzXG5bdHlwZT1jb2xvcl0sXG5bdHlwZT1kYXRlXSxcblt0eXBlPWRhdGV0aW1lLWxvY2FsXSxcblt0eXBlPWRhdGV0aW1lXSxcblt0eXBlPWVtYWlsXSxcblt0eXBlPW1vbnRoXSxcblt0eXBlPW51bWJlcl0sXG5bdHlwZT1wYXNzd29yZF0sXG5bdHlwZT1zZWFyY2hdLFxuW3R5cGU9dGVsXSxcblt0eXBlPXRleHRdLFxuW3R5cGU9dGltZV0sXG5bdHlwZT11cmxdLFxuW3R5cGU9d2Vla10sXG50ZXh0YXJlYSxcbnNlbGVjdCB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgaWYoc2V0dGluZy12YWx1ZSgnZm9ybXNfdXNlX2RlZmF1bHRfd2Vic2l0ZV9jb2xvcnMnKSwgJGNvbG9yX2dsb2JhbF9saWdodF9iYWNrZ3JvdW5kcywgJGNvbG9yX2Zvcm1zX2ZpZWxkX2JvcmRlcik7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgaGVpZ2h0OiA1MXB4O1xuICAgIHBhZGRpbmc6IDEuMXJlbSAxLjZyZW07XG4gICAgZm9udC1zaXplOiAuODczcmVtO1xuICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICBjb2xvcjogJGNvbG91cl9ib2R5dHh0O1xuXG4gICAgJjpmb2N1cyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgaXMtYWN0aXZlIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiBpZihzZXR0aW5nLXZhbHVlKCdmb3Jtc191c2VfZGVmYXVsdF93ZWJzaXRlX2NvbG9ycycpLCAkY29sb3JfZ2xvYmFsX2xpZ2h0X2JhY2tncm91bmRzLCAkY29sb3JfZm9ybXNfZmllbGRfYm9yZGVyKTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBwbGFjZWhvbGRlciB7XG4gICAgICAgIGNvbG9yOiAkY29sb3VyX2JvZHl0eHQ7XG4gICAgfVxuXG4gICAgLmlzLWZpbGxlZCAmIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDEuN3JlbTtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IC43cmVtO1xuICAgIH1cbn1cblxuaW5wdXQ6ZGlzYWJsZWQsIGlucHV0W3JlYWRvbmx5XSwgdGV4dGFyZWE6ZGlzYWJsZWQsIHRleHRhcmVhW3JlYWRvbmx5XSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICBjdXJzb3I6IGRlZmF1bHQ7XG59XG5cbmlucHV0Ojotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgICAgbGluZS1oZWlnaHQ6IG5vcm1hbCAhaW1wb3J0YW50O1xufVxuXG50ZXh0YXJlYSB7XG4gICAgcmVzaXplOiBub25lO1xuICAgIG1pbi1oZWlnaHQ6IDEyMHB4O1xuICAgIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG59XG5cbi8vIGRyb3Bkb3duIGJveGVzXG5zZWxlY3Qge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvc2VsZWN0LWFycm93LnN2Zyk7XG4gICAgYmFja2dyb3VuZC1zaXplOiAxNnB4IGF1dG87XG4gICAgcGFkZGluZy10b3A6IC41cmVtO1xuICAgIHBhZGRpbmctYm90dG9tOiAuNXJlbTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAyLjZyZW07XG4gICAgYmFja2dyb3VuZC1zaXplOiByaWdodCAtMTZweCBjZW50ZXI7XG5cbiAgICAmOmZvY3VzLFxuICAgICY6aG92ZXIsXG4gICAgJjphY3RpdmUge1xuXG4gICAgfVxufVxuXG5zZWxlY3Q6LW1vei1mb2N1c3Jpbmcge1xuICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICB0ZXh0LXNoYWRvdzogMCAwIDAgIzAwMDtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKC1tcy1oaWdoLWNvbnRyYXN0OiBhY3RpdmUpLFxuKC1tcy1oaWdoLWNvbnRyYXN0OiBub25lKSB7XG4gICAgc2VsZWN0OjotbXMtZXhwYW5kIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gICAgc2VsZWN0OmZvY3VzOjotbXMtdmFsdWUge1xuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgY29sb3I6IGdyZXk7XG4gICAgfVxufVxuXG5bbmFtZT1cImRhdGVfb2ZfYmlydGhcIl0ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZSAhaW1wb3J0YW50O1xuXG4gICAgJi5oYXNEYXRlcGlja2VyIHtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIH1cbn1cblxuLmlucHV0LWdyb3VwIHtcbiAgICBpbnB1dCB7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICB9XG5cbiAgICAuaW5wdXQtZ3JvdXAtYnV0dG9uIHtcbiAgICAgICAgYmFja2dyb3VuZDogaWYoc2V0dGluZy12YWx1ZSgnd2Vic2l0ZV9jb2xvdXJzX3VzZV9kZWZhdWx0X3dlYnNpdGVfY29sb3JzJyksICRjb2xvcl9nbG9iYWxfYWNjZW50X2NvbG91ciwgJGNvbG9yX3dlYnNpdGVfYWNjZW50KTtcbiAgICB9XG5cbiAgICAuYnV0dG9uIHtcbiAgICAgICAgYmFja2dyb3VuZDogaWYoc2V0dGluZy12YWx1ZSgnd2Vic2l0ZV9jb2xvdXJzX3VzZV9kZWZhdWx0X3dlYnNpdGVfY29sb3JzJyksICRjb2xvcl9nbG9iYWxfYWNjZW50X2NvbG91ciwgJGNvbG9yX3dlYnNpdGVfYWNjZW50KTtcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgIH1cblxuICAgIGkge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG5cbiAgICAmLm1vZC1yb3VuZGVkIHtcbiAgICAgICAgaW5wdXQge1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4IDAgMCA1cHg7XG4gICAgICAgICAgICBwYWRkaW5nOiAxLjNyZW07XG4gICAgICAgICAgICBib3JkZXItcmlnaHQ6IDA7XG4gICAgICAgIH1cblxuICAgICAgICAuaW5wdXQtZ3JvdXAtYnV0dG9uIHtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDAgNXB4IDVweCAwO1xuICAgICAgICB9XG5cbiAgICAgICAgLmJ1dHRvbiB7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwIDVweCA1cHggMDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYubW9kLXNpbXBsZSB7XG5cbiAgICAgICAgaW5wdXQge1xuICAgICAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICAgICAgZm9udC1zaXplOiAuODczcmVtO1xuICAgICAgICAgICAgcGFkZGluZzogMS42cmVtO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBwbGFjZWhvbGRlciB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRjb2xvdXJfYm9keXR4dDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5idXR0b24ge1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4xNnJlbTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYubW9kLWljb24ge1xuICAgICAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIGlmKHNldHRpbmctdmFsdWUoJ2Zvcm1zX3VzZV9kZWZhdWx0X3dlYnNpdGVfY29sb3JzJyksICRjb2xvcl9nbG9iYWxfbGlnaHRfYmFja2dyb3VuZHMsICRjb2xvcl9mb3Jtc19maWVsZF9ib3JkZXIpO1xuXG4gICAgICAgIGlucHV0IHtcbiAgICAgICAgICAgIGJvcmRlcjogMDtcblxuICAgICAgICAgICAgQGluY2x1ZGUgcGxhY2Vob2xkZXIge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAjYjNiM2IzO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmlucHV0LWdyb3VwLWJ1dHRvbiB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5idXR0b24ge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjhyZW07XG4gICAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICAgICAgcGFkZGluZzogMCAxcmVtO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4vLyBjaGVja2JveCBhbmQgcmFkaW8gaW5wdXRzXG4kY2hlY2stYm9yZGVyLWNvbG91cjogI2RkZGRkZDtcbiRjaGVjay1zZWxlY3RlZC1jb2xvdXI6ICRjb2xvdXJfbWFpbjtcbiRjaGVjay1jb2xvdXI6ICR3aGl0ZTtcbiRyYWRpdXNfb246IDE7XG5cbmlucHV0IHtcbiAgICAmW3R5cGU9XCJjaGVja2JveFwiXSxcbiAgICAmW3R5cGU9XCJyYWRpb1wiXSB7XG4gICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgY2xpcDogcmVjdCgwIDAgMCAwKTtcbiAgICAgICAgaGVpZ2h0OiAxcHg7XG4gICAgICAgIG1hcmdpbjogLTFweDtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB3aWR0aDogMXB4O1xuICAgIH1cbiAgICAmW3R5cGU9XCJjaGVja2JveFwiXStsYWJlbCxcbiAgICAmW3R5cGU9XCJyYWRpb1wiXStsYWJlbCB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgcGFkZGluZzogOHB4IDA7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMzBweDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgIHVzZXItc2VsZWN0OiBub25lO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBmb250LXNpemU6IC44NzNyZW07XG4gICAgICAgIGNvbG9yOiAkY29sb3VyX2JvZHl0eHQ7XG5cbiAgICAgICAgLmZpbHRlcnMgJiB7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgICAgICAgICAgcGFkZGluZzogNHB4IDA7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDI0cHg7XG4gICAgICAgICAgICBjb2xvcjogaWYoc2V0dGluZy12YWx1ZSgnY2F0ZWdvcnlfcGFnZXNfdXNlX2RlZmF1bHRfd2Vic2l0ZV9jb2xvcnMnKSwgJGNvbG9yX2dsb2JhbF9ibGFja190ZXh0LCAkY29sb3JfY2F0ZWdvcnlfcGFnZXNfZmlsdGVyX25hbmVfdGV4dCk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgJlt0eXBlPVwicmFkaW9cIl0rbGFiZWwge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMS41cmVtO1xuICAgIH1cbiAgICAmW3R5cGU9XCJjaGVja2JveFwiXStsYWJlbDpiZWZvcmUsXG4gICAgJlt0eXBlPVwicmFkaW9cIl0rbGFiZWw6YmVmb3JlIHtcbiAgICAgICAgYm94LXNpemluZzogY29udGVudC1ib3g7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogNTAlO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB3aWR0aDogMjBweDtcbiAgICAgICAgaGVpZ2h0OiAyMHB4O1xuICAgICAgICBtYXJnaW4tdG9wOiAtMTBweDtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG5cbiAgICAgICAgLmZpbHRlcnMgJiB7XG4gICAgICAgICAgICB3aWR0aDogMTRweDtcbiAgICAgICAgICAgIGhlaWdodDogMTRweDtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IC03cHg7XG4gICAgICAgIH1cbiAgICB9XG4gICAgJlt0eXBlPVwiY2hlY2tib3hcIl0rbGFiZWw6YmVmb3JlIHtcbiAgICAgICAgYmFja2dyb3VuZDogaWYoc2V0dGluZy12YWx1ZSgnZm9ybXNfdXNlX2RlZmF1bHRfd2Vic2l0ZV9jb2xvcnMnKSwgJGNvbG9yX2dsb2JhbF9saWdodF9ncmVlbl9iYWNrZ3JvdW5kcywgJGNvbG9yX2Zvcm1zX2NoZWNrYm94X2NpcmNsZSk7XG5cbiAgICAgICAgLmZpbHRlcnMgJiB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiBpZihzZXR0aW5nLXZhbHVlKCdjYXRlZ29yeV9wYWdlc191c2VfZGVmYXVsdF93ZWJzaXRlX2NvbG9ycycpLCAkY29sb3JfZ2xvYmFsX2xpZ2h0X2dyZWVuX2JhY2tncm91bmRzLCAkY29sb3JfY2F0ZWdvcnlfcGFnZXNfZmlsdGVyX2JhY2tncm91bmQpO1xuICAgICAgICB9XG4gICAgfVxuICAgICZbdHlwZT1cInJhZGlvXCJdK2xhYmVsOmJlZm9yZSB7XG4gICAgICAgIGJhY2tncm91bmQ6IGlmKHNldHRpbmctdmFsdWUoJ2Zvcm1zX3VzZV9kZWZhdWx0X3dlYnNpdGVfY29sb3JzJyksICRjb2xvcl9nbG9iYWxfbGlnaHRfZ3JlZW5fYmFja2dyb3VuZHMsICRjb2xvcl9mb3Jtc19yYWRpb19jaXJjbGUpO1xuICAgIH1cbiAgICAmW3R5cGU9XCJjaGVja2JveFwiXStsYWJlbDphZnRlcixcbiAgICAmW3R5cGU9XCJyYWRpb1wiXStsYWJlbDphZnRlciB7XG4gICAgICAgIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICAgICAgICBjb250ZW50OiAnXFxlOTRhJztcbiAgICAgICAgZm9udC1mYW1pbHk6ICRpY29uO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogNTAlO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB3aWR0aDogMjBweDtcbiAgICAgICAgaGVpZ2h0OiAyMHB4O1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIG1hcmdpbi10b3A6IC0xMHB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMjBweDtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNmb3JtKCBzY2FsZSgwKSApO1xuICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiA1MCU7XG4gICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAyMDBtcyBlYXNlLW91dDtcbiAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuXG4gICAgICAgIC5maWx0ZXJzICYge1xuICAgICAgICAgICAgZm9udC1zaXplOiA5cHg7XG4gICAgICAgICAgICB3aWR0aDogMTRweDtcbiAgICAgICAgICAgIGhlaWdodDogMTRweDtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IC03cHg7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMTRweDtcbiAgICAgICAgfVxuICAgIH1cbiAgICAmW3R5cGU9XCJyYWRpb1wiXStsYWJlbDphZnRlciB7XG4gICAgICAgIGNvbG9yOiBpZihzZXR0aW5nLXZhbHVlKCdmb3Jtc191c2VfZGVmYXVsdF93ZWJzaXRlX2NvbG9ycycpLCAkY29sb3JfZ2xvYmFsX21haW5fYnV0dG9uX3RleHQsICRjb2xvcl9mb3Jtc19yYWRpb190aWNrKTtcbiAgICB9XG4gICAgJlt0eXBlPVwiY2hlY2tib3hcIl0rbGFiZWw6YWZ0ZXIge1xuICAgICAgICBjb2xvcjogaWYoc2V0dGluZy12YWx1ZSgnZm9ybXNfdXNlX2RlZmF1bHRfd2Vic2l0ZV9jb2xvcnMnKSwgJGNvbG9yX2dsb2JhbF9tYWluX2J1dHRvbl90ZXh0LCAkY29sb3JfZm9ybXNfY2hlY2tib3hfdGljayk7XG4gICAgfVxuXG4gICAgJlt0eXBlPVwiY2hlY2tib3hcIl0sICZbdHlwZT1cInJhZGlvXCJdIHtcbiAgICAgICAgJjpjaGVja2VkK2xhYmVsOmFmdGVyIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zZm9ybSggc2NhbGUoMSkgKTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLy8gZGF0ZSBmaWVsZFxuLmRlbGl2ZXJ5LWRhdGUtY29udGFpbmVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAuZmllbGQtbGFiZWwge1xuICAgICAgICBsZWZ0OiAzLjdyZW07XG4gICAgfVxuXG4gICAgaW5wdXQge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDMuN3JlbTtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIH1cblxuICAgICY6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiAnXFxlOTVhJztcbiAgICAgICAgZm9udC1mYW1pbHk6ICRpY29uO1xuICAgICAgICBAaW5jbHVkZSB2ZXJ0aWNhbC1hbGlnbihhYnNvbHV0ZSk7XG4gICAgICAgIGxlZnQ6IDEuM3JlbTtcbiAgICAgICAgZm9udC1zaXplOiAxLjdyZW07XG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIH1cbn1cblxuLnVpLWRhdGVwaWNrZXIge1xuXG4gICAgc2VsZWN0IHtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDEwcHg7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciByaWdodCA4cHg7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogOHB4O1xuICAgIH1cblxuICAgIC51aS1kYXRlcGlja2VyLWhlYWRlciB7XG4gICAgICAgIC51aS1kYXRlcGlja2VyLXByZXYsXG4gICAgICAgIC51aS1kYXRlcGlja2VyLW5leHQge1xuICAgICAgICAgICAgdG9wOiBjYWxjKDUwJSAtIC45ZW0pO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uYWRkcmVzcy1pbmZvcm1hdGlvbjpub3QoLm9wZW4pIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgaWYoc2V0dGluZy12YWx1ZSgnZm9ybXNfdXNlX2RlZmF1bHRfd2Vic2l0ZV9jb2xvcnMnKSwgJGNvbG9yX2dsb2JhbF9saWdodF9iYWNrZ3JvdW5kcywgJGNvbG9yX2Zvcm1zX2ZpZWxkX2JvcmRlcik7XG4gICAgcGFkZGluZy1ib3R0b206IDFyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbn1cblxuLnZvdWNoZXItZm9ybSB7XG4gICAgLmJ1dHRvbiB7XG4gICAgICAgIGJhY2tncm91bmQ6IGlmKHNldHRpbmctdmFsdWUoJ2Zvcm1zX3VzZV9kZWZhdWx0X3dlYnNpdGVfY29sb3JzJyksICRjb2xvcl9nbG9iYWxfbGlnaHRfZ3JlZW5fYmFja2dyb3VuZHMsICRjb2xvcl9mb3Jtc19naWZ0X2FkZF9idXR0b25fYmFja2dyb3VuZCk7XG4gICAgICAgIGNvbG9yOiBpZihzZXR0aW5nLXZhbHVlKCdmb3Jtc191c2VfZGVmYXVsdF93ZWJzaXRlX2NvbG9ycycpLCAkY29sb3JfZ2xvYmFsX21haW5fYnV0dG9uX3RleHQsICRjb2xvcl9mb3Jtc19naWZ0X2FkZF9idXR0b25fdGV4dCk7XG4gICAgfVxufVxuXG5AbWVkaWEgI3skbC11cH0ge1xuICAgIC52b3VjaGVyLWZvcm0ge1xuICAgICAgICBpbnB1dFt0eXBlPVwicmFkaW9cIl0gKyBsYWJlbCB7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgZmllbGRzZXQge1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IDFyZW07XG5cbiAgICAgICAgICAgIGlucHV0W3R5cGU9XCJyYWRpb1wiXSArIGxhYmVsOm5vdCg6bGFzdC1vZi10eXBlKSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMS41cmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG5AbWVkaWEgI3skbS1kb3dufSB7XG4gICAgLnZvdWNoZXItZm9ybSBmaWVsZHNldCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IC43cmVtO1xuICAgIH1cbn0iLCIucm93IHtcbiAgICBtYXgtd2lkdGg6ICRzaXRlLXdpZHRoO1xufVxuXG4uYmctc2hhZGUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRsaWdodC1ncmV5O1xufVxuXG4uc2VjdGlvbi1ibG9jayB7XG4gICAgcGFkZGluZzogM3JlbSAwO1xuICAgIFxuICAgICYud2l0aC1pdGVtcyB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAxcmVtO1xuICAgIH1cbiAgICBcbiAgICAmLmZlYXR1cmVkLWNhdGVnb3JpZXMge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMS4ycmVtO1xuICAgICAgICBiYWNrZ3JvdW5kOiBpZihzZXR0aW5nLXZhbHVlKCdob21lX3BhZ2VfdXNlX2RlZmF1bHRfd2Vic2l0ZV9jb2xvcnMnKSwgJGNvbG9yX2dsb2JhbF9saWdodF9iYWNrZ3JvdW5kcywgJGNvbG9yX2hvbWVfZmVhdHVyZWRfY2F0ZWdvcmllc19iYWNrZ3JvdW5kKTtcbiAgICB9XG59XG5cbi5mZWF0dXJlZC1wcm9kdWN0cyB7XG4gICAgLnRpdGxlIHtcbiAgICAgICAgY29sb3I6IGlmKHNldHRpbmctdmFsdWUoJ2hvbWVfcGFnZV91c2VfZGVmYXVsdF93ZWJzaXRlX2NvbG9ycycpLCAkY29sb3JfZ2xvYmFsX2JsYWNrX3RpdGxlcywgJGNvbG9yX2hvbWVfZmVhdHVyZWRfcHJvZHVjdHNfdGl0bGUpO1xuICAgIH1cbiAgICBcbiAgICAucHJvZHVjdC1zbGlkZXItaGVhZGVyIHtcbiAgICAgICAgLmFycm93IHtcbiAgICAgICAgICAgIGNvbG9yOiBpZihzZXR0aW5nLXZhbHVlKCdob21lX3BhZ2VfdXNlX2RlZmF1bHRfd2Vic2l0ZV9jb2xvcnMnKSwgJGNvbG9yX2dsb2JhbF9ibGFja19pY29ucywgJGNvbG9yX2hvbWVfZmVhdHVyZWRfcHJvZHVjdHNfYXJyb3dzKTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHotaW5kZXg6IDM7XG59XG5cbi5jb2xsZWN0aW9uIHtcbiAgICBwYWRkaW5nLXRvcDogLjVyZW07XG59XG5cbkBtZWRpYSAjeyRsLXVwfSB7XG5cbiAgICAudmlkZW9zLWNvbnRhaW5lciB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAxLjVyZW07XG4gICAgfVxuICAgIFxuICAgIC5ib3hlcy1jb250YWluZXIge1xuICAgICAgICBwYWRkaW5nLXRvcDogMS41cmVtO1xuICAgIH1cblxuICAgIC5jb2xsZWN0aW9uIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDEuNXJlbTtcbiAgICB9XG59XG5cbi5pdGVtcy1jb250YWluZXIge1xuICAgIC8vIGxpc3QgLyBncmlkIHZpZXcgZGlzcGxheVxuICAgIC5pdGVtLWJveC0tbGlzdCB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgJi5saXN0IHtcblxuICAgICAgICAuaXRlbS1ib3gge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcblxuICAgICAgICAgICAgJi0tbGlzdCB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmpzIHtcbiAgICAuaGlkZS1mb3ItanMge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbn1cblxuKjpmb2N1cyB7XG4gICAgb3V0bGluZTogbm9uZSAhaW1wb3J0YW50O1xufVxuIiwiLyogI0NPTVBPTkVOVFMgKi9cbmJvZHkge1xuICAgIGJhY2tncm91bmQtY29sb3I6IGlmKHNldHRpbmctdmFsdWUoJ3dlYnNpdGVfY29sb3Vyc191c2VfZGVmYXVsdF93ZWJzaXRlX2NvbG9ycycpLCAjZmVmZGZkLCAkY29sb3Jfd2Vic2l0ZV9wYWdlX2JhY2tncm91bmQpO1xuICAgIGNvbG9yOiAkY29sb3VyX2JvZHl0eHQ7XG4gICAgZm9udC1zaXplOiAkZm9udF9zaXplX290aGVyX3BhZ2VfZGVzY3JpcHRpb25zO1xufVxuXG4ucmV2ZWFsLW92ZXJsYXkge1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xufVxuXG4uaXMtcmV2ZWFsLW9wZW4gLnJldmVhbC1vdmVybGF5IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOCk7XG59XG5cbi5yb3cuZXhwYW5kZWQgLnJvdyB7XG4gICAgbWFyZ2luLXJpZ2h0OiAtLjYyNXJlbTtcbiAgICBtYXJnaW4tbGVmdDogLS42MjVyZW07XG5cbiAgICBAbWVkaWEgI3skbS11cH0ge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IC0uOTM3NXJlbTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC0uOTM3NXJlbTtcbiAgICB9XG59XG5cbi5jb250ZW50LWJnIHtcbiAgICBAbWVkaWEgI3skbC11cH0ge1xuICAgICAgICBAaW5jbHVkZSByZW0obWluLWhlaWdodCwgMzUwcHgpO1xuICAgIH1cblxuICAgIEBtZWRpYSAjeyRtLXVwfSB7XG4gICAgICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgICAgIEBpbmNsdWRlIHJlbShwYWRkaW5nLCAzMHB4IDM1cHgpO1xuICAgIH1cbiAgICBcbiAgICBwIHsgZm9udC1zaXplOiAkZm9udF9zaXplX2NvbnRlbnRfcGFnZV90ZXh0ICFpbXBvcnRhbnQ7IH1cbiAgICBcbn1cblxuLnBhZ2UtZGVzY3JpcHRpb24ge1xuICAgIGZvbnQtc2l6ZTogJGZvbnRfc2l6ZV9vdGhlcl9wYWdlX2Rlc2NyaXB0aW9ucztcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuXG4gICAgcDpsYXN0LW9mLXR5cGUge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgfVxufVxuXG4uYmctYm94IHtcbiAgICBiYWNrZ3JvdW5kOiBpZihzZXR0aW5nLXZhbHVlKCd3ZWJzaXRlX2NvbG91cnNfdXNlX2RlZmF1bHRfd2Vic2l0ZV9jb2xvcnMnKSwgI2ZlZmRmZCwgJGNvbG9yX3dlYnNpdGVfcGFnZV9iYWNrZ3JvdW5kKTtcbiAgICBAaW5jbHVkZSByZW0ocGFkZGluZywgMzBweCAzNXB4KTtcbn1cblxuLmNvbnRlbnQge1xuICAgIHBhZGRpbmctdG9wOiAycmVtO1xuICAgIHBhZGRpbmctYm90dG9tOiAycmVtO1xuXG4gICAgQG1lZGlhICN7JGwtdXB9IHtcbiAgICAgICAgJi5hdXRvLXBhZ2Uge1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IDNyZW07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuaG9tZXBhZ2UgJiB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAwO1xuXG4gICAgICAgIEBtZWRpYSAjeyRsLXVwfSB7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLndpZGUtY29udGFpbmVyIHtcbiAgICBAaW5jbHVkZSByZW0ocGFkZGluZy1sZWZ0LCAxMHB4KTtcbiAgICBAaW5jbHVkZSByZW0ocGFkZGluZy1yaWdodCwgMTBweCk7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIG1heC13aWR0aDogJHRoZW1lX3dpZHRoO1xuXG4gICAgQG1lZGlhKG1pbi13aWR0aDogNzQuOTM3NWVtKSB7XG4gICAgICAgIEBpbmNsdWRlIHJlbShwYWRkaW5nLWxlZnQsIDUwcHgpO1xuICAgICAgICBAaW5jbHVkZSByZW0ocGFkZGluZy1yaWdodCwgNTBweCk7XG4gICAgfVxufVxuXG4ucm93LFxuLnJvdy5leHBhbmRlZCB7XG4gICAgbWF4LXdpZHRoOiAkdGhlbWVfd2lkdGg7XG59XG5cbi5wYWdlLXRpdGxlIHtcbiAgICBmb250LXNpemU6ICRmb250X3NpemVfb3RoZXJfcGFnZV90aXRsZXNfaDE7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgIGNvbG9yOiAkY29sb3VyX3RpdGxlcztcblxuICAgICYudGl0bGUtaWNvbiBzcGFuIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAyLjNyZW07XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB9XG5cbiAgICAmLnRpdGxlLWljb24gc3BhbjpiZWZvcmUge1xuICAgICAgICBmb250LWZhbWlseTogJGljb247XG4gICAgICAgIGZvbnQtc2l6ZTogMS43cmVtO1xuICAgICAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgICAgICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgQGluY2x1ZGUgdmVydGljYWwtYWxpZ24oYWJzb2x1dGUpO1xuICAgIH1cblxuICAgICYubW9kLWFjY291bnQgc3BhbjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiBcIlxcZTk1M1wiO1xuICAgIH1cblxuICAgIC5jb2xsZWN0aW9uLWNvbnRhaW5lciAmIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICB9XG59XG5cbi5wYWdlLXN1YnRpdGxlIHtcbiAgICBAaW5jbHVkZSByZW0oZm9udC1zaXplLCAxNnB4KTtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG5cbi5jb250ZW50LXNpZGViYXIge1xuICAgIHBhZGRpbmctdG9wOiAycmVtO1xufVxuXG4vLyBicmVhZGNydW1iXG5cbi5icmVhZGNydW1icyB7XG4gICAgZm9udC1mYW1pbHk6ICRmb250X2hlYWRpbmc7XG5cbiAgICBsaSB7XG4gICAgICAgIGZvbnQtc2l6ZTogJGZvbnRfc2l6ZV9icmVhZGNydW1icztcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgfVxuXG4gICAgYSB7XG4gICAgICAgIGNvbG9yOiAkY29sb3JfZ2xvYmFsX2JsYWNrX3RleHQ7XG4gICAgfVxuXG4gICAgJjpub3QoLm1vZC1zaG93KSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG59XG5cbi5ib2R5LWNvbnRlbnQge1xuICAgIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbmltZ1tzcmMqPVwiL3RyYWNrZXJcIl0ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IC0xMDAlO1xuICAgIHotaW5kZXg6IC0xO1xufVxuXG4uYmcge1xuICAgIGJhY2tncm91bmQtY29sb3I6IGlmKHNldHRpbmctdmFsdWUoJ3dlYnNpdGVfY29sb3Vyc191c2VfZGVmYXVsdF93ZWJzaXRlX2NvbG9ycycpLCAkY29sb3JfZ2xvYmFsX2xpZ2h0X2JhY2tncm91bmRzLCAkY29sb3Jfd2Vic2l0ZV9wYWdlX2JhY2tncm91bmQpO1xufVxuXG4uY29sLWNlbGwubm93cmFwIHtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuXG4uaG9tZS13ZWxjb21lIHtcbiAgICBjb2xvcjogaWYoc2V0dGluZy12YWx1ZSgnaG9tZV9wYWdlX3VzZV9kZWZhdWx0X3dlYnNpdGVfY29sb3JzJyksICRjb2xvcl9nbG9iYWxfYmxhY2tfdGV4dCwgJGNvbG9yX2hvbWVfcGFyYWdyYXBoKTtcblxuICAgIGgxIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgQGluY2x1ZGUgcmVtKGZvbnQtc2l6ZSwgMjRweCk7XG4gICAgICAgIGNvbG9yOiBpZihzZXR0aW5nLXZhbHVlKCdob21lX3BhZ2VfdXNlX2RlZmF1bHRfd2Vic2l0ZV9jb2xvcnMnKSwgJGNvbG9yX2dsb2JhbF9ibGFja190aXRsZXMsICRjb2xvcl9ob21lX3RleHQpO1xuICAgIH1cbn1cblxuLmhvbWUtYmFubmVyLWluZm8ge1xuICAgIGZvbnQtc2l6ZTogMS4xNnJlbTtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udF9zZWNvbmQ7XG4gICAgcGFkZGluZzogMXJlbTtcbiAgICBiYWNrZ3JvdW5kOiBpZihzZXR0aW5nLXZhbHVlKCdob21lX3BhZ2VfdXNlX2RlZmF1bHRfd2Vic2l0ZV9jb2xvcnMnKSwgJGNvbG9yX2dsb2JhbF9saWdodF9iYWNrZ3JvdW5kcywgJGNvbG9yX2hvbWVfYmFubmVyX2ltYWdlX3RleHRfYmFja2dyb3VuZCk7XG4gICAgY29sb3I6IGlmKHNldHRpbmctdmFsdWUoJ2hvbWVfcGFnZV91c2VfZGVmYXVsdF93ZWJzaXRlX2NvbG9ycycpLCAkY29sb3JfZ2xvYmFsX2JsYWNrX3RpdGxlcywgJGNvbG9yX2hvbWVfYmFubmVyX3RleHQpO1xuICAgIHBhZGRpbmc6IDEuNDVyZW07XG4gICAgbGluZS1oZWlnaHQ6IDE7XG5cbiAgICAuaG9tZS1iYW5uZXItbW9iaWxlICYge1xuICAgICAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgIH1cbn1cblxuLnJvdy5leHBhbmRlZCAuaG9tZS1iYW5uZXIgLnJvdyB7XG4gICAgbWFyZ2luOiAwIC04cHg7XG59XG5cbi5ob21lLWJhbm5lciB7XG4gICAgLmNvbHVtbiB7XG4gICAgICAgIHBhZGRpbmc6IDAgOHB4O1xuICAgIH1cblxuICAgIC5pbWFnZS1jb250YWluZXIge1xuICAgICAgICBwYWRkaW5nLXRvcDogNzglO1xuICAgIH1cblxuICAgIC5tb2Qtc21hbGwgLmltYWdlLWNvbnRhaW5lciB7XG4gICAgICAgIHBhZGRpbmctdG9wOiBjYWxjKDM5JSAtIDhweCk7XG4gICAgfVxuXG4gICAgLmhvbWUtYmFubmVyLWlubmVyIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIH1cblxuICAgIC5ob21lLWJhbm5lci1pbmZvIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICBib3R0b206IDI1cHg7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4zcmVtO1xuICAgIH1cblxuICAgIC5tb2Qtc21hbGwgLmhvbWUtYmFubmVyLWluZm8ge1xuICAgICAgICBwYWRkaW5nOiAxLjNyZW0gMS40NXJlbTtcbiAgICAgICAgYm90dG9tOiAyMHB4O1xuICAgICAgICBmb250LXNpemU6IDEuMDFyZW07XG4gICAgfVxuXG4gICAgLmhvbWUtYmFubmVyLWlubmVyICsgLmhvbWUtYmFubmVyLWlubmVyIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMTZweDtcblxuICAgICAgICAuaG9tZS1iYW5uZXItaW5mbyB7XG4gICAgICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIH1cbiAgICB9XG59XG5cblxuLy8gaW1hZ2Ugc2xpZGVyc1xuXG4uaG9tZS1jYXJvdXNlbCB7XG5cbiAgICAmLXNsaWRlIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIH1cblxuICAgICYtb3ZlcmxheSB7XG4gICAgICAgIEBpbmNsdWRlIHZlcnRpY2FsLWFsaWduKGFic29sdXRlKTtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICAgICAmLW1vYmlsZSB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICBwYWRkaW5nOiAxcmVtO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uYXJyb3cge1xuICAgIHBhZGRpbmc6IC41cmVtO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDUwJTtcbiAgICB6LWluZGV4OiAyO1xuXG4gICAgJi1wcmV2IHtcbiAgICAgICAgbGVmdDogMDtcbiAgICB9XG4gICAgJi1uZXh0IHtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgfVxuXG59XG5cblxuLy8gZ2VuZXJpYyBpbWFnZSBzbGlkZXJzXG5cbi5zbGljay1zbGlkZXI6bm90KC5zbGljay1pbml0aWFsaXplZCkge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgei1pbmRleDogLTk5OTtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG59XG5cbi5zbGljay1zbGlkZXIge1xuXG4gICAgJi5zbGljay1pbml0aWFsaXplZCB7XG4gICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgfVxuXG4gICAgLmFycm93IHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNmb3JtKCB0cmFuc2xhdGVZKC01MCUpICk7XG4gICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgIHBhZGRpbmc6IDFyZW07XG4gICAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4zcmVtO1xuICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICB9XG4gICAgLnByZXYge1xuICAgICAgICBsZWZ0OiAxcmVtO1xuICAgIH1cbiAgICAubmV4dCB7XG4gICAgICAgIHJpZ2h0OiAxcmVtO1xuICAgIH1cbiAgICAmLnNsaWNrLXZlcnRpY2FsIHtcbiAgICAgICAgLmFycm93IHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2Zvcm0oIG5vbmUgKTtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uaG9tZS1iYW5uZXItbW9iaWxlIHtcbiAgICAuYXJyb3cge1xuICAgICAgICBwYWRkaW5nOiAuN3JlbSAuNXJlbTtcbiAgICAgICAgYmFja2dyb3VuZDogaWYoc2V0dGluZy12YWx1ZSgnaG9tZV9wYWdlX3VzZV9kZWZhdWx0X3dlYnNpdGVfY29sb3JzJyksICRjb2xvcl9nbG9iYWxfbGlnaHRfYmFja2dyb3VuZHMsICRjb2xvcl9ob21lX2Jhbm5lcl9pbWFnZV90ZXh0X2JhY2tncm91bmQpO1xuICAgICAgICBjb2xvcjogaWYoc2V0dGluZy12YWx1ZSgnaG9tZV9wYWdlX3VzZV9kZWZhdWx0X3dlYnNpdGVfY29sb3JzJyksICRjb2xvcl9nbG9iYWxfYmxhY2tfdGl0bGVzLCAkY29sb3JfaG9tZV9iYW5uZXJfdGV4dCk7XG4gICAgfVxuXG4gICAgJjpub3QoLnNsaWNrLWluaXRpYWxpemVkKSB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgei1pbmRleDogLTk5OTtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICBoZWlnaHQ6IDA7XG4gICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICB9XG59XG5cbi5wcm9kdWN0LXNsaWRlci1jb250YWluZXIge1xuXG4gICAgJjpub3QoLnN3LXNlY3Rpb24pIHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDFyZW07XG4gICAgfVxuXG4gICAgLnByb2R1Y3Qtc2xpZGVyIHtcblxuICAgICAgICAmOm5vdCguc2xpY2staW5pdGlhbGl6ZWQpIHtcbiAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5wcm9kdWN0LXNsaWRlci1oZWFkZXIge1xuICAgIHBhZGRpbmc6IDIuNXJlbSAwO1xuICAgIGNvbG9yOiAkY29sb3VyX2JvZHl0eHQ7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG5cbiAgICAuc3ctc2VjdGlvbiAmIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDA7XG4gICAgfVxuXG4gICAgLmFycm93IHtcbiAgICAgICAgcG9zaXRpb246IHN0YXRpYztcbiAgICAgICAgZm9udC1zaXplOiAxLjNyZW07XG4gICAgICAgIGNvbG9yOiBpZihzZXR0aW5nLXZhbHVlKCdzZWN0aW9uc191c2VfZGVmYXVsdF93ZWJzaXRlX2NvbG9ycycpLCAkY29sb3JfZ2xvYmFsX2JsYWNrX3RpdGxlcywgJGNvbG9yX3NlY3Rpb25zX2VtYmVkZGVkX3Byb2R1Y3RzX3RpdGxlKSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIHNwYW4ge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgfVxuXG4gICAgLnRpdGxlIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgZm9udC1zaXplOiAkZm9udF9zaXplX3NlY3Rpb25faGVhZGluZ3M7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udF9oZWFkaW5nO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IC43cmVtO1xuICAgICAgICBjb2xvcjogaWYoc2V0dGluZy12YWx1ZSgnc2VjdGlvbnNfdXNlX2RlZmF1bHRfd2Vic2l0ZV9jb2xvcnMnKSwgJGNvbG9yX2dsb2JhbF9ibGFja190aXRsZXMsICRjb2xvcl9zZWN0aW9uc19lbWJlZGRlZF9wcm9kdWN0c190aXRsZSk7XG4gICAgfVxuICAgIFxuICAgIC50aXRsZS1lbWJlZGRlZC1jYXRlZ29yaWVzIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgZm9udC1zaXplOiAkZm9udF9zaXplX3NlY3Rpb25faGVhZGluZ3M7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udF9oZWFkaW5nO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IC43cmVtO1xuICAgICAgICBjb2xvcjogaWYoc2V0dGluZy12YWx1ZSgnc2VjdGlvbnNfdXNlX2RlZmF1bHRfd2Vic2l0ZV9jb2xvcnMnKSwgJGNvbG9yX2dsb2JhbF9ibGFja190aXRsZXMsICRjb2xvcl9zZWN0aW9uc19lbWJlZGRlZF9jYXRlZ29yaWVzX3RpdGxlKTtcbiAgICB9XG4gICAgXG4gICAgLnRpdGxlLWVtYmVkZGVkLWJyYW5kcyB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgIGZvbnQtc2l6ZTogJGZvbnRfc2l6ZV9zZWN0aW9uX2hlYWRpbmdzO1xuICAgICAgICBmb250LWZhbWlseTogJGZvbnRfaGVhZGluZztcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAuN3JlbTtcbiAgICAgICAgY29sb3I6IGlmKHNldHRpbmctdmFsdWUoJ3NlY3Rpb25zX3VzZV9kZWZhdWx0X3dlYnNpdGVfY29sb3JzJyksICRjb2xvcl9nbG9iYWxfYmxhY2tfdGl0bGVzLCAkY29sb3Jfc2VjdGlvbnNfZW1iZWRkZWRfYnJhbmRzX3RpdGxlKTtcbiAgICB9XG59XG5cbi8vIHJhbmdlIHNsaWRlclxuLnNsaWRlci1oYW5kbGUge1xuICAgIHdpZHRoOiAxNnB4O1xuICAgIGhlaWdodDogMTZweDtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogaWYoc2V0dGluZy12YWx1ZSgnY2F0ZWdvcnlfcGFnZXNfdXNlX2RlZmF1bHRfd2Vic2l0ZV9jb2xvcnMnKSwgJGNvbG9yX2dsb2JhbF9ncmVlbl9hY2NlbnRfY29sb3VyLCAkY29sb3JfY2F0ZWdvcnlfcGFnZXNfcHJpY2VfZmlsdGVyX2NpcmNsZXMpO1xuXG4gICAgJjpmb2N1cywgJjpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IGlmKHNldHRpbmctdmFsdWUoJ2NhdGVnb3J5X3BhZ2VzX3VzZV9kZWZhdWx0X3dlYnNpdGVfY29sb3JzJyksICRjb2xvcl9nbG9iYWxfZ3JlZW5fYWNjZW50X2NvbG91ciwgJGNvbG9yX2NhdGVnb3J5X3BhZ2VzX3ByaWNlX2ZpbHRlcl9jaXJjbGVzKTtcbiAgICB9XG59XG5cbi5zbGlkZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IGlmKHNldHRpbmctdmFsdWUoJ2NhdGVnb3J5X3BhZ2VzX3VzZV9kZWZhdWx0X3dlYnNpdGVfY29sb3JzJyksICRjb2xvcl9nbG9iYWxfbGlnaHRfYmFja2dyb3VuZHMsICRjb2xvcl9jYXRlZ29yeV9wYWdlc19wcmljZV9maWx0ZXJfYmFyKTtcbiAgICBtYXJnaW4tdG9wOiAuNXJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjI1cmVtO1xuICAgIGhlaWdodDogNXB4O1xufVxuXG4uc2xpZGVyLWZpbGwge1xuICAgIGJhY2tncm91bmQtY29sb3I6IGlmKHNldHRpbmctdmFsdWUoJ2NhdGVnb3J5X3BhZ2VzX3VzZV9kZWZhdWx0X3dlYnNpdGVfY29sb3JzJyksICRjb2xvcl9nbG9iYWxfbGlnaHRfYmFja2dyb3VuZHMsICRjb2xvcl9jYXRlZ29yeV9wYWdlc19wcmljZV9maWx0ZXJfYmFyKTtcbiAgICBoZWlnaHQ6IDVweDtcbn1cblxuLnNsaWRlci1yYW5nZS12YWx1ZXMge1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgZm9udC1zaXplOiAxM3B4O1xuICAgIGNvbG9yOiAkY29sb3VyX2JvZHl0eHQ7XG5cbiAgICBzdHJvbmcge1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgIH1cbn1cblxuLnJhbmdlLW1pbixcbi5yYW5nZS1tYXgge1xuICAgICY6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogYXR0cihkYXRhLWN1cnJlbmN5KTtcbiAgICB9XG59XG5cbi8vIGZpbHRlcnNcblxuLmZpbHRlcnMge1xuICAgIC5zaWRlLW1lbnUgJiB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG4gICAgICAgIG1hcmdpbi10b3A6IC0uN3JlbTtcbiAgICB9XG5cbiAgICAuYWNjb3JkaW9uIHtcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB9XG5cbiAgICAuYWNjb3JkaW9uLWNvbnRlbnQge1xuICAgICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC5hY2NvcmRpb24tY29udGVudFthcmlhLWhpZGRlbj0ndHJ1ZSddIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICB6LWluZGV4OiAtOTk5O1xuICAgIH1cblxuICAgIC5hY2NvcmRpb24taXRlbSwgLmFjY29yZGlvbi10aXRsZSwgLmFjY29yZGlvbi1jb250ZW50IHtcbiAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICB9XG5cbiAgICAuYWNjb3JkaW9uLWNvbnRlbnQge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogLjdyZW07XG4gICAgfVxuXG4gICAgLmFjY29yZGlvbi10aXRsZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4wMXJlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgY29sb3I6IGlmKHNldHRpbmctdmFsdWUoJ2NhdGVnb3J5X3BhZ2VzX3VzZV9kZWZhdWx0X3dlYnNpdGVfY29sb3JzJyksICRjb2xvcl9nbG9iYWxfYmxhY2tfdGV4dCwgJGNvbG9yX2NhdGVnb3J5X3BhZ2VzX2ZpbHRlcl9ncm91cF90aXRsZSk7XG4gICAgICAgIHBhZGRpbmc6IDFyZW0gMDtcbiAgICAgICAgZm9udC1mYW1pbHk6ICRmb250X3NlY29uZDtcblxuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBmb250LWZhbWlseTogJGljb247XG4gICAgICAgICAgICBjb250ZW50OiBcIlxcZTkzZlwiO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjE2cmVtO1xuICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuaXMtYWN0aXZlID4gLmFjY29yZGlvbi10aXRsZTpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiBcIlxcZTkzN1wiXG4gICAgfVxuXG4gICAgOmxhc3QtY2hpbGQ6bm90KC5pcy1hY3RpdmUpID4gLmFjY29yZGlvbi10aXRsZSwgOmxhc3QtY2hpbGQgPiAuYWNjb3JkaW9uLWNvbnRlbnQ6bGFzdC1jaGlsZCB7XG4gICAgICAgIGJvcmRlcjogMDtcbiAgICB9XG59XG5cbi8vIHNpZGUgbmF2XG5cbi5zaWRlLW5hdi10aXRsZSB7XG4gICAgZm9udC1zaXplOiAxLjAxcmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgY29sb3I6IGlmKHNldHRpbmctdmFsdWUoJ2NhdGVnb3J5X3BhZ2VzX3VzZV9kZWZhdWx0X3dlYnNpdGVfY29sb3JzJyksICRjb2xvcl9nbG9iYWxfYmxhY2tfdGV4dCwgJGNvbG9yX2NhdGVnb3J5X3BhZ2VzX2NhdGVnb3J5X21lbnVfaXRlbSk7XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICBmb250LWZhbWlseTogJGZvbnRfc2Vjb25kO1xuXG4gICAgJi5tb2QtbGlnaHQge1xuICAgICAgICBmb250LXNpemU6IDEuMTZyZW07XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IC43cmVtO1xuICAgIH1cbn1cblxuLnNpZGUtbmF2IHtcbiAgICBhIHtcbiAgICAgICAgY29sb3I6IGlmKHNldHRpbmctdmFsdWUoJ2NhdGVnb3J5X3BhZ2VzX3VzZV9kZWZhdWx0X3dlYnNpdGVfY29sb3JzJyksICRjb2xvcl9nbG9iYWxfYmxhY2tfdGV4dCwgJGNvbG9yX2NhdGVnb3J5X3BhZ2VzX2NhdGVnb3J5X3N1Ym1lbnVfaXRlbSk7XG4gICAgfVxuXG4gICAgLm1lbnUgPiBsaSA+IGEge1xuICAgICAgICBmb250LXNpemU6IC45NDVyZW07XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgfVxuXG4gICAgLnNpZGUtbmF2LW1lbnUgPiBsaSA+IGEge1xuICAgICAgICBmb250LXNpemU6IDEuMDFyZW07XG4gICAgICAgIHBhZGRpbmctbGVmdDogLjlyZW07XG4gICAgICAgIGNvbG9yOiBpZihzZXR0aW5nLXZhbHVlKCdjYXRlZ29yeV9wYWdlc191c2VfZGVmYXVsdF93ZWJzaXRlX2NvbG9ycycpLCAkY29sb3JfZ2xvYmFsX2JsYWNrX3RleHQsICRjb2xvcl9jYXRlZ29yeV9wYWdlc19jYXRlZ29yeV9tZW51X2l0ZW0pO1xuICAgIH1cblxuICAgIC5zdWJtZW51IHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IC43cmVtO1xuXG4gICAgICAgICYgPiBsaSA+IGEge1xuICAgICAgICAgICAgZm9udC1zaXplOiAuODczcmVtO1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IC40cmVtO1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IC40cmVtO1xuICAgICAgICAgICAgY29sb3I6IGlmKHNldHRpbmctdmFsdWUoJ2NhdGVnb3J5X3BhZ2VzX3VzZV9kZWZhdWx0X3dlYnNpdGVfY29sb3JzJyksICRjb2xvcl9nbG9iYWxfYmxhY2tfdGV4dCwgJGNvbG9yX2NhdGVnb3J5X3BhZ2VzX2NhdGVnb3J5X3N1Ym1lbnVfaXRlbSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuaXMtYWNjb3JkaW9uLXN1Ym1lbnUtcGFyZW50W2FyaWEtZXhwYW5kZWQ9XCJ0cnVlXCJdID4gYSA+IHNwYW4ge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICB9XG5cbiAgICAuaXMtYWNjb3JkaW9uLXN1Ym1lbnUtcGFyZW50ID4gYTphZnRlciB7XG4gICAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICBjb250ZW50OiBcIlxcZTkzY1wiO1xuICAgICAgICBmb250LWZhbWlseTogJGljb247XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIGZvbnQtc2l6ZTogLjZyZW07XG4gICAgICAgIG1hcmdpbi10b3A6IC0uM3JlbTtcbiAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgLW1vei10cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgIEBpbmNsdWRlIHRyYW5zZm9ybSggbm9uZSApO1xuICAgIH1cblxuICAgIC5pcy1hY2NvcmRpb24tc3VibWVudS1wYXJlbnRbYXJpYS1leHBhbmRlZD1cInRydWVcIl0gPiBhOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCJcXGU5MzdcIjtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgIC1tb3otdHJhbnNmb3JtOiBub25lO1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2Zvcm0oIG5vbmUgKTtcbiAgICB9XG59XG5cbi8vIGJsb2dcbi5ibG9nLWNvbnRlbnQge1xuICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgQGluY2x1ZGUgcmVtKHBhZGRpbmcsIDMwcHggMzVweCk7XG4gICAgbWFyZ2luLXRvcDogMS41cmVtO1xufVxuXG4uYmxvZy1wb3N0IHtcbiAgICAuaDIge1xuICAgICAgICBAaW5jbHVkZSByZW0oZm9udC1zaXplLCAyOHB4KTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICB9XG5cbiAgICAuYmxvZy1wb3N0LW1ldGEge1xuICAgICAgICBAaW5jbHVkZSByZW0oZm9udC1zaXplLCAxNHB4KTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICB9XG59XG5cbi5ibG9nLXBvc3QtaGVhZGluZyB7XG4gICAgZm9udC1mYW1pbHk6ICRmb250X3NlY29uZDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAmLnBhZGRpbmctcmlnaHQge1xuICAgICAgICBAaW5jbHVkZSByZW0ocGFkZGluZy1yaWdodCwgMzBweCk7XG4gICAgfVxufVxuXG4uYmxvZy1zaGFyZS10b2dnbGUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogMDtcbiAgICB0b3A6IDA7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIEBpbmNsdWRlIHJlbShmb250LXNpemUsIDI1cHgpO1xufVxuXG4uYmxvZy1zaGFyZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAwO1xuICAgIEBpbmNsdWRlIHJlbSh0b3AsIDMwcHgpO1xuICAgIG1hcmdpbi10b3A6IC41cmVtO1xuXG4gICAgLnNoYXJlLW1lbnUge1xuICAgICAgICBiYWNrZ3JvdW5kOiBpZihzZXR0aW5nLXZhbHVlKCd3ZWJzaXRlX2NvbG91cnNfdXNlX2RlZmF1bHRfd2Vic2l0ZV9jb2xvcnMnKSwgI2Y5ZjhmNywgJGNvbG9yX3dlYnNpdGVfcGFnZV9iYWNrZ3JvdW5kKTtcbiAgICB9XG59XG5cbi5zaWRlLW5hdi1ibG9nIHtcbiAgICB1bCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEuOHJlbTtcbiAgICB9XG5cbiAgICBsaSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gICAgfVxuXG4gICAgLm1lbnUgPiBsaSA+IGEge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgYm9yZGVyLXJhZGl1czogM3B4O1xuICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICBmb250LXNpemU6IC44NzNyZW07XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udF9zZWNvbmQ7XG4gICAgICAgIHBhZGRpbmc6IDEuMDlyZW0gMS40NXJlbTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogaWYoc2V0dGluZy12YWx1ZSgnYmxvZ19saXN0aW5nc191c2VfZGVmYXVsdF93ZWJzaXRlX2NvbG9ycycpLCAkY29sb3JfZ2xvYmFsX2xpZ2h0X2JhY2tncm91bmRzLCAkY29sb3JfYmxvZ19jYXRlZ29yeV9iYWNrZ3JvdW5kKTtcbiAgICAgICAgY29sb3I6ICRjb2xvdXJfYm9keXR4dDtcbiAgICB9XG5cbiAgICAuYmxvZy1jYXRlZ29yaWVzIGEge1xuICAgICAgICBib3JkZXItbGVmdDogNXB4IHNvbGlkICRjb2xvdXJfc2Vjb25kO1xuXG4gICAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG91cl9tYWluO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmJsb2ctYXJjaGl2ZSBhIHtcbiAgICAgICAgYm9yZGVyLWxlZnQ6IDVweCBzb2xpZCAkY29sb3VyX21haW47XG5cbiAgICAgICAgJi5hY3RpdmUge1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3VyX3NlY29uZDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5ibG9nLWFyY2hpdmUge1xuICAgICAgICBtYXJnaW4tbGVmdDogLTdweDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAtN3B4O1xuXG4gICAgICAgIGxpIHtcbiAgICAgICAgICAgIHdpZHRoOiA1MCU7XG4gICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogN3B4O1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogN3B4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQG1lZGlhICN7JG0tZG93bn0ge1xuICAgICAgICBtYXJnaW4tdG9wOiAxLjVyZW07XG4gICAgfVxufVxuXG4vLyBjb2xsZWN0aW9uIHBhZ2Vcbi5jb2xsZWN0aW9uIHtcbiAgICAucmVzZXQtYWxsLWJ1dHRvbiB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIGNvbG9yOiAkY29sb3VyX2JvZHl0eHQ7XG4gICAgICAgIEBpbmNsdWRlIHJlbShmb250LXNpemUsIDEycHgpO1xuICAgICAgICBmb250LWZhbWlseTogJGZvbnRfYm9keTtcbiAgICB9XG5cbiAgICBAbWVkaWEgI3skbC11cH0ge1xuXG5cbiAgICAgICAgPiAucm93ID4gLmNvbHVtbiB7XG5cbiAgICAgICAgICAgICYubGFyZ2UtMyB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IGNhbGMoMjUlIC0gODBweCk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYubGFyZ2UtOSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IGNhbGMoNzUlICsgODBweCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuXG4gICAgICAgIC5zaG93LXNpZGViYXIge1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAycmVtO1xuXG4gICAgICAgICAgICAuaXRlbXMtY29udGFpbmVyIHtcblxuICAgICAgICAgICAgICAgICYubGFyZ2UtdXAtNCxcbiAgICAgICAgICAgICAgICAmLmxhcmdlLXVwLTUsXG4gICAgICAgICAgICAgICAgJi5sYXJnZS11cC02IHtcblxuICAgICAgICAgICAgICAgICAgICAucHJvZHVjdC1ib3ggLnJvdy10YWJsZS5pdGVtLWJ1dHRvbnMge1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgLmNvbC1jZWxsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHJlbShtYXJnaW4tYm90dG9tLCAxMHB4KTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSByZW0obWFyZ2luLWJvdHRvbSwgLTVweCk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYS53aXNobGlzdC1idXR0b24ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmLmxhcmdlLXVwLTUsXG4gICAgICAgICAgICAgICAgJi5sYXJnZS11cC02IHtcblxuICAgICAgICAgICAgICAgICAgICAucXVpY2stdmlldy1idXR0b24ge1xuXG4gICAgICAgICAgICAgICAgICAgICAgICA+IHNwYW4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIGkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSByZW0obWFyZ2luLWxlZnQsIC0xMXB4KTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnNvcnQtZm9ybSB7XG4gICAgLmNvbGxlY3Rpb24gJiB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcbiAgICB9XG5cbiAgICBmb3JtIHtcbiAgICAgICAgQGluY2x1ZGUgcmVtKG1hcmdpbi1yaWdodCwgMTVweCk7XG5cbiAgICAgICAgQG1lZGlhICN7JGwtdXB9IHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHJlbShtYXJnaW4tcmlnaHQsIDEwcHgpO1xuICAgICAgICAgICAgd2lkdGg6IDMwMHB4O1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBtZWRpYSAjeyRtLWRvd259IHtcbiAgICAgICAgLmNvbC1jZWxsOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB9XG5cbiAgICAgICAgLmNvbC1jZWxsOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgd2lkdGg6IDElO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmNvbGxlY3Rpb24tY29udHJvbHMge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgfVxuXG4gICAgLnNlbGVjdC1jb250YWluZXIge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgfVxufVxuXG4vLyBjYXJkIGxvZ29zXG4ucGF5bWVudC1saXN0IHtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuXG4gICAgbGkge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMC4yZW07XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDAuMmVtO1xuXG4gICAgICAgIGltZyB7XG4gICAgICAgICAgaGVpZ2h0OiAyM3B4O1xuICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4vLyBkcm9wZG93biBtZW51c1xuXG4uZHJvcGRvd24tcGFuZTpub3QoLmlzLW9wZW4pIHtcbiAgICB6LWluZGV4OiAwO1xufVxuXG4ub2ZmLWNhbnZhcy5pcy1vcGVuIH4gLm9mZi1jYW52YXMtY29udGVudCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDA7XG5cbiAgICAuc3RpY2t5LmlzLXN0dWNrIHtcbiAgICAgICAgei1pbmRleDogMDtcbiAgICB9XG59XG5cbi5hY2NvdW50LWxpbmsge1xuICAgICY6YWZ0ZXIsICY6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIHdpZHRoOiAwO1xuICAgICAgICBoZWlnaHQ6IDA7XG4gICAgICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgICAgIGJvcmRlci13aWR0aDogMCAxMHB4IDEwcHg7XG4gICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgaWYoc2V0dGluZy12YWx1ZSgnYWNjb3VudF9tZW51X3VzZV9kZWZhdWx0X3dlYnNpdGVfY29sb3JzJyksICRjb2xvcl9nbG9iYWxfbGlnaHRfYmFja2dyb3VuZHMsICRjb2xvcl9tYWluX2FjY291bnRfbWVudV90b3BfYmFja2dyb3VuZCk7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgei1pbmRleDogMTE7XG4gICAgICAgIHRvcDogMTAwJTtcbiAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2Zvcm0oIHRyYW5zbGF0ZVgoLTUwJSkgKTtcbiAgICB9XG5cbiAgICAmOmFmdGVyIHtcbiAgICAgICAgbWFyZ2luLXRvcDogLTNweDtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCBpZihzZXR0aW5nLXZhbHVlKCdhY2NvdW50X21lbnVfdXNlX2RlZmF1bHRfd2Vic2l0ZV9jb2xvcnMnKSwgJGNvbG9yX2dsb2JhbF9saWdodF9iYWNrZ3JvdW5kcywgJGNvbG9yX21haW5fYWNjb3VudF9tZW51X3RvcF9iYWNrZ3JvdW5kKSB0cmFuc3BhcmVudDtcbiAgICAgICAgYm9yZGVyLXdpZHRoOiAxMHB4O1xuICAgIH1cblxuICAgICY6YmVmb3JlIHtcbiAgICAgICAgbWFyZ2luLXRvcDogLTVweDtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCBpZihzZXR0aW5nLXZhbHVlKCdhY2NvdW50X21lbnVfdXNlX2RlZmF1bHRfd2Vic2l0ZV9jb2xvcnMnKSwgJGNvbG9yX2dsb2JhbF9ncmV5X2JhY2tncm91bmRzLCAkY29sb3JfbWFpbl9hY2NvdW50X21lbnVfYm9yZGVyKSB0cmFuc3BhcmVudDtcbiAgICAgICAgYm9yZGVyLXdpZHRoOiAxMXB4O1xuICAgIH1cblxuICAgICYuaG92ZXIge1xuICAgICAgICAmOmFmdGVyICwgJjpiZWZvcmUge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5hY2NvdW50LWRyb3Bkb3duIHtcbiAgICBiYWNrZ3JvdW5kOiBpZihzZXR0aW5nLXZhbHVlKCdhY2NvdW50X21lbnVfdXNlX2RlZmF1bHRfd2Vic2l0ZV9jb2xvcnMnKSwgJGNvbG9yX2dsb2JhbF93aGl0ZV9iYWNrZ3JvdW5kcywgJGNvbG9yX21haW5fYWNjb3VudF9tZW51X2JhY2tncm91bmQpO1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIHRvcDogMTAwJSAhaW1wb3J0YW50O1xuICAgIG1pbi13aWR0aDogMjU1cHg7XG4gICAgbWFyZ2luLXRvcDogMTZweDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgYm9yZGVyLWNvbG9yOiBpZihzZXR0aW5nLXZhbHVlKCdhY2NvdW50X21lbnVfdXNlX2RlZmF1bHRfd2Vic2l0ZV9jb2xvcnMnKSwgJGNvbG9yX2dsb2JhbF9ncmV5X2JhY2tncm91bmRzLCAkY29sb3JfbWFpbl9hY2NvdW50X21lbnVfYm9yZGVyKTtcbiAgICBmb250LXNpemU6IC45NDVyZW07XG5cbiAgICBhLCBidXR0b24ge1xuICAgICAgICBjb2xvcjogaWYoc2V0dGluZy12YWx1ZSgnYWNjb3VudF9tZW51X3VzZV9kZWZhdWx0X3dlYnNpdGVfY29sb3JzJyksICRjb2xvcl9nbG9iYWxfYmxhY2tfaWNvbnMsICRjb2xvcl9tYWluX2FjY291bnRfbWVudV9tYWluX3RleHQpO1xuICAgIH1cblxuICAgICYtaGVhZGVyIHtcbiAgICAgICAgYmFja2dyb3VuZDogaWYoc2V0dGluZy12YWx1ZSgnYWNjb3VudF9tZW51X3VzZV9kZWZhdWx0X3dlYnNpdGVfY29sb3JzJyksICRjb2xvcl9nbG9iYWxfbGlnaHRfYmFja2dyb3VuZHMsICRjb2xvcl9tYWluX2FjY291bnRfbWVudV90b3BfYmFja2dyb3VuZCk7XG4gICAgICAgIHBhZGRpbmc6IC44cmVtIDJyZW0gLjhyZW0gMXJlbTtcbiAgICAgICAgZm9udC1zaXplOiAuODczcmVtO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgYSB7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgICAgIGNvbG9yOiBpZihzZXR0aW5nLXZhbHVlKCdhY2NvdW50X21lbnVfdXNlX2RlZmF1bHRfd2Vic2l0ZV9jb2xvcnMnKSwgJGNvbG9yX2dsb2JhbF9ibGFja190ZXh0LCAkY29sb3JfbWFpbl9hY2NvdW50X21lbnVfdG9wX3RleHQpO1xuICAgICAgICB9XG5cbiAgICAgICAgLmNsb3NlLWJ1dHRvbiB7XG4gICAgICAgICAgICBjb2xvcjogaWYoc2V0dGluZy12YWx1ZSgnYWNjb3VudF9tZW51X3VzZV9kZWZhdWx0X3dlYnNpdGVfY29sb3JzJyksICRjb2xvcl9nbG9iYWxfYmxhY2tfdGV4dCwgJGNvbG9yX21haW5fYWNjb3VudF9tZW51X3RvcF90ZXh0KTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS43cmVtO1xuICAgICAgICAgICAgcmlnaHQ6IC41cmVtO1xuICAgICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2Zvcm0oIHRyYW5zbGF0ZVkoLTUwJSkgKTtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRwcm94aW1hLWZvbnQtZmFtaWx5O1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDEwMDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYtbWVudSB7XG5cbiAgICAgICAgYSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAxNXB4IDVweDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG5cbiAgICAgICAgICAgIGkge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IC43cmVtO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgICAgICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICAgICAgICAgIGNvbG9yOiBpZihzZXR0aW5nLXZhbHVlKCdhY2NvdW50X21lbnVfdXNlX2RlZmF1bHRfd2Vic2l0ZV9jb2xvcnMnKSwgJGNvbG9yX2dsb2JhbF9ibGFja19pY29ucywgJGNvbG9yX21haW5fYWNjb3VudF9tZW51X21haW5fdGV4dCk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6aG92ZXIsICYuYWN0aXZlIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogaWYoc2V0dGluZy12YWx1ZSgnYWNjb3VudF9tZW51X3VzZV9kZWZhdWx0X3dlYnNpdGVfY29sb3JzJyksICRjb2xvcl9nbG9iYWxfYmxhY2tfaWNvbnMsICRjb2xvcl9tYWluX2FjY291bnRfbWVudV9tYWluX3RleHQpO1xuXG4gICAgICAgICAgICAgICAgaSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiBpZihzZXR0aW5nLXZhbHVlKCdhY2NvdW50X21lbnVfdXNlX2RlZmF1bHRfd2Vic2l0ZV9jb2xvcnMnKSwgJGNvbG9yX2dsb2JhbF9ibGFja19pY29ucywgJGNvbG9yX21haW5fYWNjb3VudF9tZW51X21haW5fdGV4dCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgbGkgKyBsaSBhIHtcbiAgICAgICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCBpZihzZXR0aW5nLXZhbHVlKCdhY2NvdW50X21lbnVfdXNlX2RlZmF1bHRfd2Vic2l0ZV9jb2xvcnMnKSwgJGNvbG9yX2dsb2JhbF9ncmV5X2JhY2tncm91bmRzLCAkY29sb3JfbWFpbl9hY2NvdW50X21lbnVfYm9yZGVyKTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmhlYWRlci1jdXJyZW5jeSwgLmhlYWRlci1hY2NvdW50IHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cblxuLmhlYWRlci1hY2NvdW50IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5oZWFkZXItY3VycmVuY3kge1xuICAgIEBtZWRpYSAjeyRtLXVwfSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB9XG59XG5cbi5jdXJyZW5jeS1kcm9wZG93biB7XG4gICAgYm9yZGVyOiAwO1xuICAgIGJveC1zaGFkb3c6IDAgMCAxNXB4ICNjY2M7XG4gICAgbWFyZ2luLXRvcDogMTVweDtcbiAgICBtaW4td2lkdGg6IDQzNXB4O1xuICAgIGZvbnQtc2l6ZTogLjk0NXJlbTtcbiAgICBwYWRkaW5nOiAxLjVyZW0gMS40cmVtO1xuICAgIHBhZGRpbmctdG9wOiAycmVtO1xuICAgIGNvbG9yOiAjM2IzYTNhO1xuXG4gICAgQG1lZGlhICN7JG0tdXB9IHtcbiAgICAgICAgdG9wOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgJi1zZWxlY3RlZCB7XG4gICAgICAgIGNvbG9yOiBpZihzZXR0aW5nLXZhbHVlKCdjdXJyZW5jeV91c2VfZGVmYXVsdF93ZWJzaXRlX2NvbG9ycycpLCAkY29sb3JfZ2xvYmFsX2JsYWNrX3RleHQsICRjb2xvcl9jdXJyZW5jeV9leHBsYW5hdGlvbik7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gICAgfVxuXG4gICAgJi1oZWFkaW5nIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjNyZW07XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBjb2xvcjogaWYoc2V0dGluZy12YWx1ZSgnY3VycmVuY3lfdXNlX2RlZmF1bHRfd2Vic2l0ZV9jb2xvcnMnKSwgJGNvbG9yX2dsb2JhbF9ibGFja190aXRsZXMsICRjb2xvcl9jdXJyZW5jeV90aXRsZSk7XG4gICAgfVxuXG4gICAgJi1saXN0IHtcbiAgICAgICAgaGVpZ2h0OiAxOXJlbTtcbiAgICAgICAgb3ZlcmZsb3cteTogc2Nyb2xsO1xuICAgICAgICBtYXJnaW4tdG9wOiAxLjVyZW07XG4gICAgICAgIG1hcmdpbi1yaWdodDogLTFyZW07XG5cbiAgICAgICAgJiA+IGxpIHtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMXJlbTtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAuNXJlbTtcbiAgICAgICAgfVxuXG4gICAgICAgIGEge1xuICAgICAgICAgICAgcGFkZGluZzogLjVyZW07XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIGNvbG9yOiBpZihzZXR0aW5nLXZhbHVlKCdjdXJyZW5jeV91c2VfZGVmYXVsdF93ZWJzaXRlX2NvbG9ycycpLCAkY29sb3JfZ2xvYmFsX2JsYWNrX3RleHQsICRjb2xvcl9jdXJyZW5jeV9jb3VudHJpZXMpO1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAzMnB4O1xuXG4gICAgICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlZWU7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICAgICAgICAgICAgICBjb2xvcjogaWYoc2V0dGluZy12YWx1ZSgnY3VycmVuY3lfdXNlX2RlZmF1bHRfd2Vic2l0ZV9jb2xvcnMnKSwgJGNvbG9yX2dsb2JhbF9ibGFja190ZXh0LCAkY29sb3JfY3VycmVuY3lfc2VsZWN0ZWRfY291bnRyeSk7XG5cbiAgICAgICAgICAgICAgICAuY3VycmVuY3ktc3ltYm9sIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6IGlmKHNldHRpbmctdmFsdWUoJ2N1cnJlbmN5X3VzZV9kZWZhdWx0X3dlYnNpdGVfY29sb3JzJyksICM5OTk5OTksICRjb2xvcl9jdXJyZW5jeV9zZWxlY3RlZF9jdXJyZW5jeSk7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLmN1cnJlbmN5LXJlZ2lvbjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcoc2VsZWN0ZWQpJztcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6IGlmKHNldHRpbmctdmFsdWUoJ2N1cnJlbmN5X3VzZV9kZWZhdWx0X3dlYnNpdGVfY29sb3JzJyksICM5OTk5OTksICRjb2xvcl9jdXJyZW5jeV9zZWxlY3RlZF9jdXJyZW5jeSk7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogLjI1cmVtO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBtZWRpYSAjeyRzLW9ubHl9IHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHotaW5kZXg6IC05OTk7XG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgbWluLXdpZHRoOiB1bnNldDtcbiAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgICAgcGFkZGluZzogMS41cmVtIDFyZW07XG4gICAgICAgIHBhZGRpbmctdG9wOiAycmVtO1xuICAgICAgICBsZWZ0OiAwICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgJi5pcy1vcGVuIHtcbiAgICAgICAgICAgIHotaW5kZXg6IDEwO1xuICAgICAgICB9XG5cbiAgICAgICAgJi1saXN0IHtcbiAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuXG4gICAgICAgICAgICAmID4gbGkge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmN1cnJlbmN5LWRyb3Bkb3duLmxlZnQge1xuICAgIHRvcDogMTAwJSAhaW1wb3J0YW50O1xuICAgIGxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICByaWdodDogMCAhaW1wb3J0YW50O1xufVxuXG4uY3VycmVuY3ktcmVnaW9uIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgd2lkdGg6IDgxJTtcbiAgICBwYWRkaW5nLWxlZnQ6IC4zcmVtO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cblxuLmN1cnJlbmN5LXN5bWJvbCB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xufVxuXG4uY3VycmVuY3ktZmxhZyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IC4zcmVtO1xuICAgIHRvcDogNTAlO1xuICAgIG1hcmdpbi10b3A6IC0xMXB4O1xuICAgIHdpZHRoOiAyMnB4O1xuICAgIGhlaWdodDogMjJweDtcbiAgICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICAgIHotaW5kZXg6IDE7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLmZsYWcge1xuICAgIHdpZHRoOiAzMnB4O1xuICAgIGhlaWdodDogMzJweDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgei1pbmRleDogMDtcbiAgICB0b3A6IC01cHg7XG4gICAgbGVmdDogLTVweDtcbn1cblxuLmhlYWRlci1jdXJyZW5jeS1zZWxlY3Qge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgIC5jdXJyZW5jeS1mbGFnIHtcbiAgICAgICAgbGVmdDogMDtcblxuICAgICAgICAuZmxhZyB7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmOmJlZm9yZSwgJjphZnRlciB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIHdpZHRoOiAwO1xuICAgICAgICBoZWlnaHQ6IDA7XG4gICAgICAgIHRvcDogMTAwJTtcbiAgICAgICAgbWFyZ2luLXRvcDogNXB4O1xuICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAtNnB4O1xuICAgICAgICBib3JkZXItbGVmdDogNnB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICBib3JkZXItcmlnaHQ6IDZweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMTBweCBzb2xpZCAkd2hpdGU7XG4gICAgICAgIHotaW5kZXg6IDExO1xuXG4gICAgICAgIEBtZWRpYSAjeyRzLW9ubHl9IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICY6YmVmb3JlIHtcbiAgICAgICAgbWFyZ2luLXRvcDogNHB4O1xuICAgICAgICBtYXJnaW4tbGVmdDogLTdweDtcbiAgICAgICAgYm9yZGVyLWxlZnQ6IDdweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgICAgYm9yZGVyLXJpZ2h0OiA3cHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDEwcHggc29saWQgcmdiYSgyMDQsIDIwNCwgMjA0LCAwLjMxKTtcbiAgICB9XG5cbiAgICAmLmhvdmVyOmJlZm9yZSwgJi5ob3ZlcjphZnRlciB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbn1cblxuXG4vLyBwYWdpbmF0aW9uXG5cbi5wYWdpbmF0aW9uIHtcbiAgICBhIHtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgaWYoc2V0dGluZy12YWx1ZSgncGFnaW5hdGlvbl91c2VfZGVmYXVsdF93ZWJzaXRlX2NvbG9ycycpLCAkY29sb3JfZ2xvYmFsX2xpZ2h0X2JhY2tncm91bmRzLCAkY29sb3JfY2F0ZWdvcnlfcGFnaW5hdGlvbl9ib3JkZXJzKTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgY29sb3I6IGlmKHNldHRpbmctdmFsdWUoJ3BhZ2luYXRpb25fdXNlX2RlZmF1bHRfd2Vic2l0ZV9jb2xvcnMnKSwgJGNvbG9yX2dsb2JhbF9wdXJwbGVfdGV4dCwgJGNvbG9yX2NhdGVnb3J5X3BhZ2luYXRpb25fdGV4dCk7XG4gICAgICAgIHBhZGRpbmc6IC45cmVtIDEuMDlyZW07XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICB9XG5cbiAgICBsaSB7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgIG1hcmdpbjogMDtcblxuICAgICAgICAmLmN1cnJlbnQtaXRlbSwgJi5jdXJyZW50IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGxpICsgbGkge1xuICAgICAgICBtYXJnaW4tbGVmdDogMTBweDtcbiAgICB9XG5cbiAgICAuY3VycmVudCwgYTpub3QoLmRpc2FibGVkKTpob3ZlciB7XG4gICAgICAgIGNvbG9yOiBpZihzZXR0aW5nLXZhbHVlKCdwYWdpbmF0aW9uX3VzZV9kZWZhdWx0X3dlYnNpdGVfY29sb3JzJyksICRjb2xvcl9nbG9iYWxfbWFpbl9idXR0b25fdGV4dCwgJGNvbG9yX2NhdGVnb3J5X3BhZ2luYXRpb25fc2VsZWN0ZWRfdGV4dCk7XG4gICAgICAgIGJhY2tncm91bmQ6IGlmKHNldHRpbmctdmFsdWUoJ3BhZ2luYXRpb25fdXNlX2RlZmF1bHRfd2Vic2l0ZV9jb2xvcnMnKSwgJGNvbG9yX2dsb2JhbF9hY2NlbnRfY29sb3VyLCAkY29sb3JfY2F0ZWdvcnlfcGFnaW5hdGlvbl9zZWxlY3RlZF9iYWNrZ3JvdW5kKTtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiBpZihzZXR0aW5nLXZhbHVlKCdwYWdpbmF0aW9uX3VzZV9kZWZhdWx0X3dlYnNpdGVfY29sb3JzJyksICRjb2xvcl9nbG9iYWxfYWNjZW50X2NvbG91ciwgJGNvbG9yX2NhdGVnb3J5X3BhZ2luYXRpb25fc2VsZWN0ZWRfYmFja2dyb3VuZCk7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgfVxuXG4gICAgLmN1cnJlbnQge1xuICAgICAgICBwYWRkaW5nOiAuOXJlbSAxLjA5cmVtO1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCBpZihzZXR0aW5nLXZhbHVlKCdwYWdpbmF0aW9uX3VzZV9kZWZhdWx0X3dlYnNpdGVfY29sb3JzJyksICRjb2xvcl9nbG9iYWxfYWNjZW50X2NvbG91ciwgJGNvbG9yX2NhdGVnb3J5X3BhZ2luYXRpb25fc2VsZWN0ZWRfYmFja2dyb3VuZCk7XG4gICAgfVxuXG4gICAgLnBhZ2luYXRpb24tcHJldmlvdXMgYSwgLnBhZ2luYXRpb24tbmV4dCBhIHtcbiAgICAgICAgcGFkZGluZzogLjlyZW0gMS4wOXJlbTtcblxuICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgIH1cblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogaWYoc2V0dGluZy12YWx1ZSgncGFnaW5hdGlvbl91c2VfZGVmYXVsdF93ZWJzaXRlX2NvbG9ycycpLCAkY29sb3JfZ2xvYmFsX2xpZ2h0X2JhY2tncm91bmRzLCAkY29sb3JfY2F0ZWdvcnlfcGFnaW5hdGlvbl9ib3JkZXJzKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5wYWdpbmF0aW9uLXByZXZpb3VzLmRpc2FibGVkLCAucGFnaW5hdGlvbi1uZXh0LmRpc2FibGVkIHtcbiAgICAgICAgcGFkZGluZzogLjlyZW0gMS4wOXJlbTtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgaWYoc2V0dGluZy12YWx1ZSgncGFnaW5hdGlvbl91c2VfZGVmYXVsdF93ZWJzaXRlX2NvbG9ycycpLCAkY29sb3JfZ2xvYmFsX2xpZ2h0X2JhY2tncm91bmRzLCAkY29sb3JfY2F0ZWdvcnlfcGFnaW5hdGlvbl9ib3JkZXJzKTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG5cbiAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnBhZ2luYXRpb24tcHJldmlvdXMuZGlzYWJsZWQ6YmVmb3JlLCAucGFnaW5hdGlvbi1wcmV2aW91cyBhOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXFxlOTI4XCI7XG4gICAgICAgIG1hcmdpbi1yaWdodDogLjVyZW07XG4gICAgfVxuXG4gICAgLnBhZ2luYXRpb24tbmV4dC5kaXNhYmxlZDphZnRlciwgLnBhZ2luYXRpb24tbmV4dCBhOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCJcXGU5M2NcIjtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC41cmVtO1xuICAgIH1cblxuICAgIC5wYWdpbmF0aW9uLXByZXZpb3VzLmRpc2FibGVkOmJlZm9yZSwgLnBhZ2luYXRpb24tcHJldmlvdXMgYTpiZWZvcmUsXG4gICAgLnBhZ2luYXRpb24tbmV4dC5kaXNhYmxlZDphZnRlciwgLnBhZ2luYXRpb24tbmV4dCBhOmFmdGVyIHtcbiAgICAgICAgZm9udC1mYW1pbHk6ICRpY29uO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIH1cblxuICAgIEBtZWRpYSAjeyRzLW9ubHl9IHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgLnBhZ2luYXRpb24tcHJldmlvdXMge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5wYWdpbmF0aW9uLW5leHQge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgIH1cbiAgICB9XG59XG5cblxuLy8gc2hhcmUgYnV0dG9uc1xuXG4kZmFjZWJvb2tfYmx1ZTogIzM3NmNhYztcbiR0d2l0dGVyX2JsdWU6ICMwMGFhZTM7XG4kcGludGVyZXN0X3JlZDogI2Y3MmYzMztcbiRncGx1c19yZWQ6ICNmNjQzMmY7XG4kdHVtYmxyX2JsdWU6ICMyZTQ4NjE7XG5cbi5zb2NpYWwtbWVudSB7XG4gICAgbWFyZ2luOiAwIDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG1pbi13aWR0aDogMTgwcHg7XG5cbiAgICBsaSB7XG4gICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgfVxuXG4gICAgbGkgKyBsaSB7XG4gICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZjVmNGYyO1xuICAgIH1cblxuICAgICYubWVudSA+IGxpID4gYSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgY29sb3I6ICMwMDAwMDA7XG4gICAgICAgIHBhZGRpbmc6IDFyZW0gMTBweDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogNDVweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBAaW5jbHVkZSByZW0oZm9udC1zaXplLCAxMXB4KTtcblxuICAgICAgICBpIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIHdpZHRoOiAyMnB4O1xuICAgICAgICAgICAgaGVpZ2h0OiAyMnB4O1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgICByaWdodDogMTBweDtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IC0xMXB4O1xuICAgICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMjJweDtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcblxuICAgICAgICB9XG5cbiAgICAgICAgJi5mYWNlYm9vayBpIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRmYWNlYm9va19ibHVlO1xuICAgICAgICB9XG4gICAgICAgICYudHdpdHRlciBpIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0d2l0dGVyX2JsdWU7XG4gICAgICAgIH1cbiAgICAgICAgJi5waW50ZXJlc3QgaSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcGludGVyZXN0X3JlZDtcbiAgICAgICAgfVxuICAgICAgICAmLmdvb2dsZSBpIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRncGx1c19yZWQ7XG4gICAgICAgIH1cbiAgICAgICAgJi50dW1ibHIgaSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdHVtYmxyX2JsdWU7XG4gICAgICAgIH1cblxuICAgICAgICAmLnNoYXJlLWZyaWVuZCBpIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICM0M2Q1YjA7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8vIGNhbGxvdXRzXG5cbi5hbm5vdW5jZW1lbnQtYmFyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBpZihzZXR0aW5nLXZhbHVlKCdhbm5vdW5jZW1lbnRfYmFyX3VzZV9kZWZhdWx0X3dlYnNpdGVfY29sb3JzJyksICRjb2xvcl9nbG9iYWxfbGlnaHRfYmFja2dyb3VuZHMsICRjb2xvcl9hbm5vdW5jZW1lbnRfYmFja2dyb3VuZCk7XG4gICAgY29sb3I6IGlmKHNldHRpbmctdmFsdWUoJ2Fubm91bmNlbWVudF9iYXJfdXNlX2RlZmF1bHRfd2Vic2l0ZV9jb2xvcnMnKSwgJGNvbG9yX2dsb2JhbF9wdXJwbGVfdGV4dCwgJGNvbG9yX2Fubm91bmNlbWVudF90ZXh0KTtcbiAgICBib3JkZXI6IDA7XG4gICAgQGluY2x1ZGUgcmVtKHBhZGRpbmcsIDIwcHggMCk7XG4gICAgZm9udC1zaXplOiAxLjAxcmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgbGluZS1oZWlnaHQ6IDEuMTtcbiAgICBtYXJnaW46IDA7XG5cbiAgICAuaG9tZXBhZ2UgJiB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDByZW07XG5cbiAgICAgICAgQG1lZGlhICN7JGwtdXB9IHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDByZW07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBhIHtcbiAgICAgICAgY29sb3I6IGlmKHNldHRpbmctdmFsdWUoJ2Fubm91bmNlbWVudF9iYXJfdXNlX2RlZmF1bHRfd2Vic2l0ZV9jb2xvcnMnKSwgJGNvbG9yX2dsb2JhbF9wdXJwbGVfdGV4dCwgJGNvbG9yX2Fubm91bmNlbWVudF90ZXh0KTtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgfVxuXG4gICAgcCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICAgICAgJiArIHAge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMXJlbTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuXG4vLyByZXZlYWxcblxuLnJldmVhbCB7XG4gICAgYm9yZGVyOiAwO1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG5cbiAgICAuaDIge1xuICAgICAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICBAaW5jbHVkZSByZW0oZm9udC1zaXplLCAyNHB4KTtcbiAgICB9XG5cbiAgICAuY2xvc2UtYnV0dG9uIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgQGluY2x1ZGUgcmVtKGZvbnQtc2l6ZSwgMThweCk7XG4gICAgICAgIGNvbG9yOiAjMDAwO1xuICAgICAgICBAaW5jbHVkZSByZW0odG9wLCAxNXB4KTtcbiAgICAgICAgQGluY2x1ZGUgcmVtKHJpZ2h0LCAxNXB4KTtcbiAgICB9XG59XG5cbi5jdXN0b20tcmV2ZWFsIHtcbiAgICBtYXgtd2lkdGg6IDcwMHB4O1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIHBhZGRpbmc6IDEuNXJlbTtcbiAgICBmb250LXNpemU6IC45NDVyZW07XG4gICAgY29sb3I6ICNmZmY7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzk0YzZjODtcblxuICAgIGgyIHtcbiAgICAgICAgY29sb3I6IGlmKHNldHRpbmctdmFsdWUoJ2FnZV92ZXJpZmljYXRpb25fdXNlX2RlZmF1bHRfd2Vic2l0ZV9jb2xvcnMnKSwgJGNvbG9yX2dsb2JhbF93aGl0ZV90ZXh0X2ljb25zLCAkY29sb3JfYWdlX3RpdGxlKTtcbiAgICAgICAgZm9udC1zaXplOiAyLjMycmVtO1xuICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgIH1cblxuICAgIC5uby1iZyB7XG4gICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICBtYXJnaW4tdG9wOiAuNXJlbTtcbiAgICB9XG5cbiAgICBAbWVkaWEgI3skbC11cH0ge1xuICAgICAgICBAaW5jbHVkZSByZW0ocGFkZGluZywgNDBweCk7XG4gICAgfVxuXG4gICAgLmNsb3NlLWJ1dHRvbiB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIEBpbmNsdWRlIHJlbShmb250LXNpemUsIDE4cHgpO1xuICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgQGluY2x1ZGUgcmVtKHRvcCwgMTVweCk7XG4gICAgICAgIEBpbmNsdWRlIHJlbShyaWdodCwgMTVweCk7XG4gICAgfVxufVxuXG4uc3RvY2stcmVxdWVzdC1yZXZlYWwge1xuICAgIGJhY2tncm91bmQtY29sb3I6IGlmKHNldHRpbmctdmFsdWUoJ3Byb2R1Y3RfcGFnZV91c2VfZGVmYXVsdF93ZWJzaXRlX2NvbG9ycycpLCAkY29sb3JfZ2xvYmFsX2xpZ2h0X2dyZWVuX2JhY2tncm91bmRzLCAkY29sb3JfcHJvZHVjdF9zdG9ja19wb3B1cF9iYWNrZ3JvdW5kKTtcbiAgICBjb2xvcjogaWYoc2V0dGluZy12YWx1ZSgncHJvZHVjdF9wYWdlX3VzZV9kZWZhdWx0X3dlYnNpdGVfY29sb3JzJyksICRjb2xvcl9nbG9iYWxfd2hpdGVfdGV4dF9pY29ucywgJGNvbG9yX3Byb2R1Y3Rfc3RvY2tfcG9wdXBfdGV4dCk7XG5cbiAgICBoMiB7XG4gICAgICAgIGNvbG9yOiBpZihzZXR0aW5nLXZhbHVlKCdwcm9kdWN0X3BhZ2VfdXNlX2RlZmF1bHRfd2Vic2l0ZV9jb2xvcnMnKSwgJGNvbG9yX2dsb2JhbF93aGl0ZV90ZXh0X2ljb25zLCAkY29sb3JfcHJvZHVjdF9zdG9ja19wb3B1cF90ZXh0KTtcbiAgICB9XG5cbiAgICAuY2xvc2UtYnV0dG9uIHtcbiAgICAgICAgY29sb3I6IGlmKHNldHRpbmctdmFsdWUoJ3Byb2R1Y3RfcGFnZV91c2VfZGVmYXVsdF93ZWJzaXRlX2NvbG9ycycpLCAkY29sb3JfZ2xvYmFsX3doaXRlX3RleHRfaWNvbnMsICRjb2xvcl9wcm9kdWN0X3N0b2NrX3BvcHVwX3RleHQpO1xuICAgIH1cblxuICAgIC5uby1iZyB7XG4gICAgICAgIGNvbG9yOiBpZihzZXR0aW5nLXZhbHVlKCdwcm9kdWN0X3BhZ2VfdXNlX2RlZmF1bHRfd2Vic2l0ZV9jb2xvcnMnKSwgJGNvbG9yX2dsb2JhbF93aGl0ZV90ZXh0X2ljb25zLCAkY29sb3JfcHJvZHVjdF9zdG9ja19wb3B1cF9idXR0b25fdGV4dCk7XG4gICAgfVxufVxuXG4jcmVjb21tZW5kTW9kYWwge1xuICAgIGJhY2tncm91bmQtY29sb3I6IGlmKHNldHRpbmctdmFsdWUoJ3Byb2R1Y3RfcGFnZV91c2VfZGVmYXVsdF93ZWJzaXRlX2NvbG9ycycpLCAkY29sb3JfZ2xvYmFsX2xpZ2h0X2dyZWVuX2JhY2tncm91bmRzLCAkY29sb3JfcHJvZHVjdF9yZWZlcl9wb3B1cF9iYWNrZ3JvdW5kKTtcbiAgICBjb2xvcjogaWYoc2V0dGluZy12YWx1ZSgncHJvZHVjdF9wYWdlX3VzZV9kZWZhdWx0X3dlYnNpdGVfY29sb3JzJyksICRjb2xvcl9nbG9iYWxfbWFpbl9idXR0b25fdGV4dCwgJGNvbG9yX3Byb2R1Y3RfcmVmZXJfcG9wdXBfdGV4dCk7XG5cbiAgICAuY2xvc2UtYnV0dG9uIHtcbiAgICAgICAgY29sb3I6IGlmKHNldHRpbmctdmFsdWUoJ3Byb2R1Y3RfcGFnZV91c2VfZGVmYXVsdF93ZWJzaXRlX2NvbG9ycycpLCAkY29sb3JfZ2xvYmFsX21haW5fYnV0dG9uX3RleHQsICRjb2xvcl9wcm9kdWN0X3JlZmVyX3BvcHVwX3RleHQpO1xuICAgIH1cblxuICAgIC5uby1iZyB7XG4gICAgICAgIGNvbG9yOiBpZihzZXR0aW5nLXZhbHVlKCdwcm9kdWN0X3BhZ2VfdXNlX2RlZmF1bHRfd2Vic2l0ZV9jb2xvcnMnKSwgJGNvbG9yX2dsb2JhbF9tYWluX2J1dHRvbl90ZXh0LCAkY29sb3JfcHJvZHVjdF9yZWZlcl9wb3B1cF9idXR0b25fdGV4dCk7XG4gICAgfVxufVxuXG4jdmVyaWZ5QWdlTW9kYWwge1xuICAgIGJhY2tncm91bmQ6IGlmKHNldHRpbmctdmFsdWUoJ2FnZV92ZXJpZmljYXRpb25fdXNlX2RlZmF1bHRfd2Vic2l0ZV9jb2xvcnMnKSwgJGNvbG9yX2dsb2JhbF9saWdodF9ncmVlbl9iYWNrZ3JvdW5kcywgJGNvbG9yX2FnZV9iYWNrZ3JvdW5kKTtcbiAgICBjb2xvcjogaWYoc2V0dGluZy12YWx1ZSgnYWdlX3ZlcmlmaWNhdGlvbl91c2VfZGVmYXVsdF93ZWJzaXRlX2NvbG9ycycpLCAkY29sb3JfZ2xvYmFsX3doaXRlX3RleHRfaWNvbnMsICRjb2xvcl9hZ2VfdGV4dCk7XG4gICAgbWF4LXdpZHRoOiA3MDBweDtcbiAgICB3aWR0aDogYXV0bztcbiAgICBwYWRkaW5nOiAxLjVyZW07XG4gICAgZm9udC1zaXplOiAuOTQ1cmVtO1xuXG4gICAgLmgyIHtcbiAgICAgICAgY29sb3I6IGlmKHNldHRpbmctdmFsdWUoJ2FnZV92ZXJpZmljYXRpb25fdXNlX2RlZmF1bHRfd2Vic2l0ZV9jb2xvcnMnKSwgJGNvbG9yX2dsb2JhbF93aGl0ZV90ZXh0X2ljb25zLCAkY29sb3JfYWdlX3RpdGxlKTtcbiAgICAgICAgZm9udC1zaXplOiAyLjMycmVtO1xuICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgIH1cblxuICAgIHAge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW07XG4gICAgfVxuXG4gICAgYnV0dG9uIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMXJlbTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICB9XG5cbiAgICAuY29uZmlybSB7XG4gICAgICAgIGNvbG9yOiBpZihzZXR0aW5nLXZhbHVlKCdhZ2VfdmVyaWZpY2F0aW9uX3VzZV9kZWZhdWx0X3dlYnNpdGVfY29sb3JzJyksICRjb2xvcl9nbG9iYWxfd2hpdGVfdGV4dF9pY29ucywgJGNvbG9yX2FnZV9idXR0b25fdGV4dCk7XG4gICAgfVxuXG4gICAgLmRlY2xpbmUge1xuICAgICAgICBjb2xvcjogaWYoc2V0dGluZy12YWx1ZSgnYWdlX3ZlcmlmaWNhdGlvbl91c2VfZGVmYXVsdF93ZWJzaXRlX2NvbG9ycycpLCAkY29sb3JfZ2xvYmFsX3doaXRlX3RleHRfaWNvbnMsICRjb2xvcl9hZ2VfZGVjbGluZV9idXR0b25fdGV4dCk7XG4gICAgfVxuXG4gICAgQG1lZGlhICN7JGwtdXB9IHtcbiAgICAgICAgcGFkZGluZzogMi40NXJlbTtcbiAgICB9XG59XG5cbiNuZXdzbGV0dGVyTW9kYWwge1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbWF4LXdpZHRoOiA3MDBweDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgd2lkdGg6IGF1dG87XG5cbiAgICAubW9kYWwtaGVhZGluZyB7XG4gICAgICAgIGJhY2tncm91bmQ6IGlmKHNldHRpbmctdmFsdWUoJ25ld3NsZXR0ZXJfcG9wdXBfdXNlX2RlZmF1bHRfd2Vic2l0ZV9jb2xvcnMnKSwgJGNvbG9yX2dsb2JhbF9wdXJwbGVfdGV4dCwgJGNvbG9yX3BvcHVwX25ld3NsZXR0ZXJfdGl0bGVfYmFja2dyb3VuZCk7XG4gICAgICAgIHBhZGRpbmc6IDEuM3JlbSAyLjhyZW07XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgLmgyIHtcbiAgICAgICAgICAgIGNvbG9yOiBpZihzZXR0aW5nLXZhbHVlKCduZXdzbGV0dGVyX3BvcHVwX3VzZV9kZWZhdWx0X3dlYnNpdGVfY29sb3JzJyksICRjb2xvcl9nbG9iYWxfd2hpdGVfdGV4dF9pY29ucywgJGNvbG9yX3BvcHVwX25ld3NsZXR0ZXJfdGl0bGVfdGV4dCk7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjZyZW07XG5cbiAgICAgICAgICAgIEBtZWRpYSAjeyRzLW9ubHl9IHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuNHJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgcCB7XG4gICAgICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIHA6Zmlyc3Qtb2YtdHlwZSB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAxMnB4O1xuICAgICAgICB9IFxuXG4gICAgICAgIC5jbG9zZS1idXR0b24ge1xuICAgICAgICAgICAgY29sb3I6IGlmKHNldHRpbmctdmFsdWUoJ25ld3NsZXR0ZXJfcG9wdXBfdXNlX2RlZmF1bHRfd2Vic2l0ZV9jb2xvcnMnKSwgJGNvbG9yX2dsb2JhbF93aGl0ZV90ZXh0X2ljb25zLCAkY29sb3JfcG9wdXBfbmV3c2xldHRlcl90aXRsZV90ZXh0KTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4zcmVtO1xuICAgICAgICAgICAgcmlnaHQ6IDEuNXJlbTtcbiAgICAgICAgICAgIEBpbmNsdWRlIHZlcnRpY2FsLWFsaWduKGFic29sdXRlKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5tb2RhbC1mb3JtIHtcbiAgICAgICAgYmFja2dyb3VuZDogaWYoc2V0dGluZy12YWx1ZSgnbmV3c2xldHRlcl9wb3B1cF91c2VfZGVmYXVsdF93ZWJzaXRlX2NvbG9ycycpLCAkY29sb3JfZ2xvYmFsX2dyZWVuX2FjY2VudF9jb2xvdXIsICRjb2xvcl9wb3B1cF9uZXdzbGV0dGVyX2VtYWlsX2JhY2tncm91bmQpO1xuICAgICAgICBwYWRkaW5nOiAyNXB4IDEuNXJlbTtcbiAgICB9XG5cbiAgICAubW9kYWwtaW1hZ2UtY29udGFpbmVyIHtcbiAgICAgICAgYmFja2dyb3VuZDogaWYoc2V0dGluZy12YWx1ZSgnbmV3c2xldHRlcl9wb3B1cF91c2VfZGVmYXVsdF93ZWJzaXRlX2NvbG9ycycpLCAkY29sb3JfZ2xvYmFsX2xpZ2h0X2JhY2tncm91bmRzLCAkY29sb3JfcG9wdXBfbmV3c2xldHRlcl9pbWFnZV9iYWNrZ3JvdW5kKTtcbiAgICAgICAgcGFkZGluZzogMS41cmVtO1xuICAgIH1cblxuICAgIC5pbnB1dC1ncm91cCB7XG4gICAgICAgIGlucHV0IHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IGlmKHNldHRpbmctdmFsdWUoJ25ld3NsZXR0ZXJfcG9wdXBfdXNlX2RlZmF1bHRfd2Vic2l0ZV9jb2xvcnMnKSwgJGNvbG9yX2dsb2JhbF93aGl0ZV9iYWNrZ3JvdW5kcywgJGNvbG9yX3BvcHVwX25ld3NsZXR0ZXJfZW1haWxfZmllbGQpO1xuICAgICAgICAgICAgY29sb3I6IGlmKHNldHRpbmctdmFsdWUoJ25ld3NsZXR0ZXJfcG9wdXBfdXNlX2RlZmF1bHRfd2Vic2l0ZV9jb2xvcnMnKSwgJGNvbG9yX2dsb2JhbF9ibGFja190ZXh0LCAkY29sb3JfcG9wdXBfbmV3c2xldHRlcl9lbWFpbF90ZXh0KTtcblxuICAgICAgICAgICAgQGluY2x1ZGUgcGxhY2Vob2xkZXIge1xuICAgICAgICAgICAgICAgIGNvbG9yOiBpZihzZXR0aW5nLXZhbHVlKCduZXdzbGV0dGVyX3BvcHVwX3VzZV9kZWZhdWx0X3dlYnNpdGVfY29sb3JzJyksICRjb2xvcl9nbG9iYWxfYmxhY2tfdGV4dCwgJGNvbG9yX3BvcHVwX25ld3NsZXR0ZXJfZW1haWxfdGV4dCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuaW5wdXQtZ3JvdXAtYnV0dG9uIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IGlmKHNldHRpbmctdmFsdWUoJ25ld3NsZXR0ZXJfcG9wdXBfdXNlX2RlZmF1bHRfd2Vic2l0ZV9jb2xvcnMnKSwgJGNvbG9yX2dsb2JhbF9hY2NlbnRfY29sb3VyLCAkY29sb3JfcG9wdXBfbmV3c2xldHRlcl9zdWJtaXRfYmFja2dyb3VuZCk7XG4gICAgICAgIH1cblxuICAgICAgICAuYnV0dG9uIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IGlmKHNldHRpbmctdmFsdWUoJ25ld3NsZXR0ZXJfcG9wdXBfdXNlX2RlZmF1bHRfd2Vic2l0ZV9jb2xvcnMnKSwgJGNvbG9yX2dsb2JhbF9hY2NlbnRfY29sb3VyLCAkY29sb3JfcG9wdXBfbmV3c2xldHRlcl9zdWJtaXRfYmFja2dyb3VuZCk7XG4gICAgICAgICAgICBjb2xvcjogaWYoc2V0dGluZy12YWx1ZSgnbmV3c2xldHRlcl9wb3B1cF91c2VfZGVmYXVsdF93ZWJzaXRlX2NvbG9ycycpLCAkY29sb3JfZ2xvYmFsX21haW5fYnV0dG9uX3RleHQsICRjb2xvcl9wb3B1cF9uZXdzbGV0dGVyX3N1Ym1pdF90ZXh0KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBtZWRpYSAjeyRsLXVwfSB7XG4gICAgICAgIC5tb2RhbC1pbWFnZS1jb250YWluZXIge1xuICAgICAgICAgICAgcGFkZGluZzogMi40NXJlbSAxLjVyZW07XG4gICAgICAgIH1cblxuICAgICAgICAubW9kYWwtaW1hZ2Uge1xuICAgICAgICAgICAgbWF4LXdpZHRoOiA2MDBweDtcbiAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICB9XG4gICAgfVxufVxuXG5cbi8vIGl0ZW0gYm94ZXNcbi5pdGVtIHtcblxuICAgICYtaW1hZ2Uge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHotaW5kZXg6IDA7XG5cbiAgICAgICAgLy8gZmFkZSBvbiBob3ZlciBlZmZlY3RcbiAgICAgICAgJi5tb2QtaW1nLXNlY29uZCB7XG5cbiAgICAgICAgICAgID4gYS5pbWFnZS1jb250YWluZXIge1xuICAgICAgICAgICAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDMwMG1zO1xuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgLjVzIGVhc2UtaW4tb3V0O1xuXG4gICAgICAgICAgICAgICAgJi5tb2Qtc3dhcC1jb250YWluZXIge1xuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgID4gYS5pbWFnZS1jb250YWluZXIge1xuXG4gICAgICAgICAgICAgICAgICAgICY6Zmlyc3Qtb2YtdHlwZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy10b3A6IDA7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAmLm1vZC1zd2FwLWNvbnRhaW5lciB7XG4gICAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy10b3A6ICRwcm9kdWN0X2FzcGVjdF9yYXRpbztcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8vIHpvb20gb24gaG92ZXIgZWZmZWN0XG4gICAgICAgICYubW9kLWltZy16b29tIHtcblxuICAgICAgICAgICAgLmltYWdlLWNvbnRhaW5lciB7XG5cbiAgICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIC41cztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6aG92ZXIge1xuXG4gICAgICAgICAgICAgICAgLmltYWdlLWNvbnRhaW5lciB7XG5cbiAgICAgICAgICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zZm9ybSggc2NhbGUoMS4xNSkgKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYubW9kLWltZy16b29tLW91dCB7XG5cbiAgICAgICAgICAgIC5pbWFnZS1jb250YWluZXIge1xuXG4gICAgICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAuNXM7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOmhvdmVyIHtcblxuICAgICAgICAgICAgICAgIC5pbWFnZS1jb250YWluZXIge1xuXG4gICAgICAgICAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2Zvcm0oIHNjYWxlKDAuOSkgKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICYtYm94IHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAgIC5zZWN0aW9uLWJsb2NrIC5zbGljay1zbGlkZXIgJiB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgLmxhYmVsLnByaW1hcnkge1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC41cmVtO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uaXRlbS10aXRsZSB7XG4gICAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIGZvbnQtc2l6ZTogLjk0NXJlbTtcbiAgICBtYXJnaW4tdG9wOiAxcmVtO1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udF9zZWNvbmQ7XG5cbiAgICBhIHtcbiAgICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cblxuICAgIC5jYXRlZ29yeS1ib3ggJiB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4xNnJlbTtcbiAgICAgICAgcGFkZGluZzogMS4wOXJlbTtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBjb2xvcjogaWYoc2V0dGluZy12YWx1ZSgnY2F0ZWdvcnlfbGlzdGluZ3NfdXNlX2RlZmF1bHRfd2Vic2l0ZV9jb2xvcnMnKSwgJGNvbG9yX2dsb2JhbF9wdXJwbGVfdGV4dCwgJGNvbG9yX2NhdGVnb3J5X2xpc3RpbmdzX3RpdGxlKTtcbiAgICAgICAgYmFja2dyb3VuZDogaWYoc2V0dGluZy12YWx1ZSgnY2F0ZWdvcnlfbGlzdGluZ3NfdXNlX2RlZmF1bHRfd2Vic2l0ZV9jb2xvcnMnKSwgJGNvbG9yX2dsb2JhbF93aGl0ZV9iYWNrZ3JvdW5kcywgJGNvbG9yX2NhdGVnb3J5X2xpc3RpbmdzX2JhY2tncm91bmQpO1xuICAgIH1cblxuICAgIC5wcm9kdWN0LWJveCAmIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjAxcmVtO1xuICAgICAgICBmb250LWZhbWlseTogJGZvbnRfYm9keTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgY29sb3I6IGlmKHNldHRpbmctdmFsdWUoJ3Byb2R1Y3RfbGlzdGluZ3NfdXNlX2RlZmF1bHRfd2Vic2l0ZV9jb2xvcnMnKSwgJGNvbG9yX2dsb2JhbF9ibGFja190aXRsZXMsICRjb2xvcl9wcm9kdWN0X2xpc3RpbmdzX3Byb2R1Y3RfdGl0bGUpO1xuICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmctdG9wOiAxcmVtO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogLjVyZW07XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gICAgfVxufVxuXG4uaXRlbS1idXR0b24ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBwYWRkaW5nOiAwIDEuMDlyZW07XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZm9udC1zaXplOiAuOTQ1cmVtO1xuICAgIGJvcmRlci1yYWRpdXM6IDVweDtcblxuICAgIGkge1xuICAgICAgICBmb250LXNpemU6IDEuNDVyZW07XG4gICAgICAgIEBpbmNsdWRlIHZlcnRpY2FsLWFsaWduKGFic29sdXRlKTtcbiAgICAgICAgbGVmdDogMDtcbiAgICB9XG59XG5cbi5xdWljay12aWV3LWJ1dHRvbiB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBiYWNrZ3JvdW5kOiBpZihzZXR0aW5nLXZhbHVlKCdwcm9kdWN0X2xpc3RpbmdzX3VzZV9kZWZhdWx0X3dlYnNpdGVfY29sb3JzJyksICRjb2xvcl9nbG9iYWxfdmVyeV9saWdodF9ncmVlbiwgJGNvbG9yX3Byb2R1Y3RfbGlzdGluZ3NfcXVpY2tfYmFja2dyb3VuZCk7XG4gICAgY29sb3I6IGlmKHNldHRpbmctdmFsdWUoJ3Byb2R1Y3RfbGlzdGluZ3NfdXNlX2RlZmF1bHRfd2Vic2l0ZV9jb2xvcnMnKSwgJGNvbG9yX2dsb2JhbF9ncmVlbl9hY2NlbnRfY29sb3VyLCAkY29sb3JfcHJvZHVjdF9saXN0aW5nc19xdWlja19pY29uKTtcbiAgICBmb250LWZhbWlseTogJGZvbnRfYm9keTtcbiAgICBmb250LXNpemU6ICRmb250X3NpemVfcHJvZHVjdF9jYXJkX3F1aWNrO1xuICAgIHBhZGRpbmctbGVmdDogNTBweDtcbiAgICBoZWlnaHQ6IDUwcHg7XG4gICAgbGluZS1oZWlnaHQ6IDUwcHg7XG5cbiAgICBpIHtcbiAgICAgICAgbGVmdDogMS4wOXJlbTtcbiAgICAgICAgZm9udC1zaXplOiAxLjZyZW07XG4gICAgfVxuXG4gICAgJjpob3ZlciB7XG4gICAgICAgIGNvbG9yOiBpZihzZXR0aW5nLXZhbHVlKCdwcm9kdWN0X2xpc3RpbmdzX3VzZV9kZWZhdWx0X3dlYnNpdGVfY29sb3JzJyksICRjb2xvcl9nbG9iYWxfZ3JlZW5fYWNjZW50X2NvbG91ciwgJGNvbG9yX3Byb2R1Y3RfbGlzdGluZ3NfcXVpY2tfaWNvbik7XG4gICAgfVxufVxuXG4ud2lzaGxpc3QtYnV0dG9uIHtcbiAgICB3aWR0aDogNTBweDtcbiAgICBoZWlnaHQ6IDUwcHg7XG4gICAgYmFja2dyb3VuZDogaWYoc2V0dGluZy12YWx1ZSgncHJvZHVjdF9saXN0aW5nc191c2VfZGVmYXVsdF93ZWJzaXRlX2NvbG9ycycpLCAkY29sb3JfZ2xvYmFsX3ZlcnlfbGlnaHRfcGluaywgJGNvbG9yX3Byb2R1Y3RfbGlzdGluZ3Nfd2lzaGxpc3RfYmFja2dyb3VuZCk7XG4gICAgY29sb3I6IGlmKHNldHRpbmctdmFsdWUoJ3Byb2R1Y3RfbGlzdGluZ3NfdXNlX2RlZmF1bHRfd2Vic2l0ZV9jb2xvcnMnKSwgJGNvbG9yX2dsb2JhbF9yZWRfYWNjZW50X2NvbG91ciwgJGNvbG9yX3Byb2R1Y3RfbGlzdGluZ3Nfd2lzaGxpc3RfaWNvbik7XG5cbiAgICBpIHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgaXMtYWN0aXZlIHtcbiAgICAgICAgY29sb3I6IGlmKHNldHRpbmctdmFsdWUoJ3Byb2R1Y3RfbGlzdGluZ3NfdXNlX2RlZmF1bHRfd2Vic2l0ZV9jb2xvcnMnKSwgJGNvbG9yX2dsb2JhbF9yZWRfYWNjZW50X2NvbG91ciwgJGNvbG9yX3Byb2R1Y3RfbGlzdGluZ3Nfd2lzaGxpc3RfaWNvbik7XG4gICAgfVxuXG4gICAgQG1lZGlhICN7JHMtb25seX0ge1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXG4gICAgICAgIGkge1xuICAgICAgICAgICAgcG9zaXRpb246IHN0YXRpYztcbiAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zZm9ybSggdHJhbnNsYXRlWSgwKSApO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uaXRlbS1zdG9jay1jb250YWluZXIge1xuICAgIG1hcmdpbi10b3A6IC41cmVtO1xuXG4gICAgQG1lZGlhICN7JG0tdXB9IHtcbiAgICAgICAgbWFyZ2luLXRvcDogMXJlbTtcbiAgICB9XG59XG5cbi5pdGVtLXN0b2NrIHtcbiAgICBmb250LXNpemU6ICRmb250X3NpemVfcHJvZHVjdF9jYXJkX3N0b2NrO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmctbGVmdDogMS42cmVtO1xuXG4gICAgaSB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgIG1hcmdpbi10b3A6IC0uNDcyNXJlbTtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgZm9udC1zaXplOiAkZm9udF9zaXplX3Byb2R1Y3RfY2FyZF9zdG9jaztcbiAgICB9XG5cbiAgICBzcGFuIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBoZWlnaHQ6IC45NDVyZW07XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgfVxuXG4gICAgQG1lZGlhKG1heC13aWR0aDogNDkwcHgpIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuXG4gICAgICAgIGkge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLml0ZW0taW4tc3RvY2sge1xuICAgIGNvbG9yOiBpZihzZXR0aW5nLXZhbHVlKCdwcm9kdWN0X2xpc3RpbmdzX3VzZV9kZWZhdWx0X3dlYnNpdGVfY29sb3JzJyksICMzREFEMDAsICRjb2xvcl9wcm9kdWN0X2xpc3RpbmdzX2luX3N0b2NrKTtcbn1cblxuLml0ZW0tb3V0LW9mLXN0b2NrIHtcbiAgICBjb2xvcjogaWYoc2V0dGluZy12YWx1ZSgncHJvZHVjdF9saXN0aW5nc191c2VfZGVmYXVsdF93ZWJzaXRlX2NvbG9ycycpLCAkY29sb3JfZ2xvYmFsX3JlZF9hY2NlbnRfY29sb3VyLCAkY29sb3JfcHJvZHVjdF9saXN0aW5nc19vdXRfb2Zfc3RvY2spO1xufVxuXG4uY2F0ZWdvcnktYm94LCAubWVkaWEtYm94IHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5jYXRlZ29yeS1ib3gge1xuICAgIG1hcmdpbi1ib3R0b206IDEuOHJlbTtcblxuICAgIC5pdGVtLXRpdGxlLWJveCxcbiAgICAuYm94LWRhdGEge1xuICAgICAgICBiYWNrZ3JvdW5kOiBpZihzZXR0aW5nLXZhbHVlKCdjYXRlZ29yeV9saXN0aW5nc191c2VfZGVmYXVsdF93ZWJzaXRlX2NvbG9ycycpLCAkY29sb3JfZ2xvYmFsX3doaXRlX2JhY2tncm91bmRzLCAkY29sb3JfY2F0ZWdvcnlfbGlzdGluZ3NfYmFja2dyb3VuZCk7XG4gICAgfVxuXG4gICAgLmJveC1kYXRhIHtcbiAgICAgICAgQGluY2x1ZGUgcmVtKHBhZGRpbmcsIDE1cHgpO1xuICAgIH1cbiAgICBcbiAgICAuaXRlbS10aXRsZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogJGZvbnRfc2l6ZV9jYXRlZ29yeV9jYXJkX3RpdGxlICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIFxuICAgIC5jYXRlZ29yeS1mcm9tLXByaWNlIHtcbiAgICAgICAgZm9udC1zaXplOiAkZm9udF9zaXplX2NhdGVnb3J5X2Zyb21fcHJpY2UgIWltcG9ydGFudDtcbiAgICB9XG59XG5cbi5icmFuZC1ib3gge1xuICAgIFxuICAgIC5pdGVtLXRpdGxlIHtcbiAgICAgICAgZm9udC1zaXplOiAkZm9udF9zaXplX2JyYW5kX2NhcmRfdGl0bGUgIWltcG9ydGFudDtcbiAgICB9XG59XG5cbi5wcm9kdWN0LWJveCB7XG4gICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2RmZGZkZjtcbiAgICBwYWRkaW5nOiAxNXB4O1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG5cbiAgICAuaXRlbS1idXR0b25zIHtcbiAgICAgICAgLmNvbC1jZWxsIHtcbiAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICAgIH1cblxuICAgICAgICAuY29sLWNlbGw6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgLmNvbC1jZWxsOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgd2lkdGg6IDElO1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC5pdGVtLXRpdGxlIHtcbiAgICAgICAgZm9udC1zaXplOiAkZm9udF9zaXplX3Byb2R1Y3RfY2FyZF90aXRsZSAhaW1wb3J0YW50O1xuICAgIH1cbiAgICBcbiAgICAuaXRlbS1icmFuZC10aXRsZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogJGZvbnRfc2l6ZV9wcm9kdWN0X2JyYW5kX25hbWUgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAuaXRlbS1zdWJzY3JpcHRpb24ge1xuICAgICAgICBjb2xvcjogIzIzOEI4RTtcbiAgICAgICAgQGluY2x1ZGUgcmVtKGZvbnQtc2l6ZSwgMTJweCk7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgIH1cblxuICAgIC5wcmljZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogJGZvbnRfc2l6ZV9wcm9kdWN0X2NhcmRfcHJpY2U7XG4gICAgICAgIGNvbG9yOiBpZihzZXR0aW5nLXZhbHVlKCdwcm9kdWN0X2xpc3RpbmdzX3VzZV9kZWZhdWx0X3dlYnNpdGVfY29sb3JzJyksICRjb2xvcl9nbG9iYWxfYWNjZW50X2NvbG91ciwgJGNvbG9yX3Byb2R1Y3RfbGlzdGluZ3NfcHJvZHVjdF9wcmljZV9ub19zYWxlKTtcbiAgICAgICAgZm9udC1mYW1pbHk6ICRmb250X3NlY29uZDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcblxuICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnByaWNlIHNwYW46Zmlyc3QtbGV0dGVyIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjAxcmVtO1xuICAgIH1cblxuICAgIC5tb2Qtc2FsZSB7XG4gICAgICAgIGNvbG9yOiBpZihzZXR0aW5nLXZhbHVlKCdwcm9kdWN0X2xpc3RpbmdzX3VzZV9kZWZhdWx0X3dlYnNpdGVfY29sb3JzJyksICRjb2xvcl9nbG9iYWxfYWNjZW50X2NvbG91ciwgJGNvbG9yX3Byb2R1Y3RfbGlzdGluZ3NfcHJvZHVjdF9zYWxlX3ByaWNlKTtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAuNXJlbTtcblxuICAgICAgICAmICsgLnByaWNlIHtcbiAgICAgICAgICAgIGNvbG9yOiBpZihzZXR0aW5nLXZhbHVlKCdwcm9kdWN0X2xpc3RpbmdzX3VzZV9kZWZhdWx0X3dlYnNpdGVfY29sb3JzJyksICRjb2xvcl9nbG9iYWxfYmxhY2tfdGV4dCwgJGNvbG9yX3Byb2R1Y3RfbGlzdGluZ3NfcHJvZHVjdF9vbGRfcHJpY2UpO1xuICAgICAgICAgICAgZm9udC1zaXplOiAkZm9udF9zaXplX3Byb2R1Y3RfY2FyZF9zYWxlX3ByaWNlO1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBsaW5lLXRocm91Z2g7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuaXRlbS1pbWFnZSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEuNDVyZW07XG4gICAgfVxuXG4gICAgLmJveC1kYXRhIHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDVweDtcblxuICAgICAgICBAbWVkaWEgI3skcy1vbmx5fSB7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLml0ZW0tYm94LS1saXN0IHtcbiAgICBmb250LXNpemU6IC44NzNyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMS42cmVtO1xuXG4gICAgLml0ZW0tdGl0bGUge1xuICAgICAgICBmb250LXNpemU6IDEuM3JlbTtcbiAgICAgICAgZm9udC1mYW1pbHk6ICRmb250X3NlY29uZDtcbiAgICB9XG5cbiAgICAubGFiZWwucHJpbWFyeSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAuNXJlbTtcbiAgICB9XG5cbiAgICAuaXRlbS1idXR0b25zIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMS40NXJlbTtcbiAgICB9XG5cbiAgICAuaXRlbS1zdG9jay1jb250YWluZXIge1xuICAgICAgICBtYXJnaW46IC43cmVtIDA7XG4gICAgfVxuXG4gICAgLmxpc3QtaXRlbS1wcmljZXMge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxLjQ1cmVtO1xuXG4gICAgICAgIEBtZWRpYSAjeyRzLW9ubHl9IHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8vIGJsb2cgdGlsZXNcbkBtZWRpYSAjeyRsLXVwfSB7XG4gICAgLmJsb2ctcGFnZS1jb250YWluZXIge1xuICAgICAgICBwYWRkaW5nLXRvcDogMXJlbTtcblxuICAgICAgICAmID4gLmNvbHVtbjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAycmVtO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uYXJ0aWNsZS1ib3gge1xuICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcbiAgICBmb250LWZhbWlseTogJGZvbnRfc2Vjb25kO1xuXG4gICAgLmFydGljbGUtaW5mbyB7XG4gICAgICAgIHBhZGRpbmc6IDEuNDVyZW0gMS42cmVtO1xuICAgICAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgIH1cblxuICAgIC5hcnRpY2xlLXRpdGxlIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgIGZvbnQtc2l6ZTogJGZvbnRfc2l6ZV9ibG9nX2NhcmRfdGl0bGUgIWltcG9ydGFudDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgY29sb3I6IGlmKHNldHRpbmctdmFsdWUoJ2Jsb2dfbGlzdGluZ3NfdXNlX2RlZmF1bHRfd2Vic2l0ZV9jb2xvcnMnKSwgJGNvbG9yX2dsb2JhbF9ibGFja190aXRsZXMsICRjb2xvcl9ibG9nX3RpdGxlKTtcblxuICAgICAgICBhIHtcbiAgICAgICAgICAgIGNvbG9yOiBpZihzZXR0aW5nLXZhbHVlKCdibG9nX2xpc3RpbmdzX3VzZV9kZWZhdWx0X3dlYnNpdGVfY29sb3JzJyksICRjb2xvcl9nbG9iYWxfYmxhY2tfdGl0bGVzLCAkY29sb3JfYmxvZ190aXRsZSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuYmxvZy1wb3N0LW1ldGEge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgIGZvbnQtc2l6ZTogJGZvbnRfc2l6ZV9ibG9nX2NhcmRfZGF0ZTtcbiAgICAgICAgY29sb3I6IGlmKHNldHRpbmctdmFsdWUoJ2Jsb2dfbGlzdGluZ3NfdXNlX2RlZmF1bHRfd2Vic2l0ZV9jb2xvcnMnKSwgJGNvbG9yX2dsb2JhbF9ibGFja190ZXh0LCAkY29sb3JfYmxvZ19kYXRlKTtcblxuICAgICAgICAmICsgLmFydGljbGUtZGVzY3JpcHRpb24ge1xuICAgICAgICAgICAgQGluY2x1ZGUgcmVtKG1hcmdpbi10b3AsIDEwcHgpO1xuXG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuYXJ0aWNsZS1kZXNjcmlwdGlvbiB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiAyMDA7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjE7XG4gICAgICAgIGZvbnQtc2l6ZTogJGZvbnRfc2l6ZV9ibG9nX2NhcmRfZXhjZXJwdDtcblxuICAgICAgICAmICsgLmJsb2ctcG9zdC1idXR0b24ge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgfVxuXG4gICAgICAgICoge1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLml0ZW1zLWNvbnRhaW5lciB7XG5cbiAgICAvLyBoaWRkZW4gZm9ybSBkYXRhXG4gICAgLm9wdGlvbnMsXG4gICAgLmFsdF9vcHRpb25zLFxuICAgIC5leHRyYXMsXG4gICAgLmN1c3RvbWlzZSxcbiAgICAuZmlsZXMge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgIC5wcmljZSB7XG5cbiAgICAgICAgJiArIC5wcmljZSB7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IGxpbmUtdGhyb3VnaDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuXG4vLyBwcm9kdWN0IGxhYmVsXG5cbi5sYWJlbCB7XG5cbiAgICAmLnByaW1hcnkge1xuICAgICAgICBmb250LXNpemU6ICRmb250X3NpemVfcHJvZHVjdF9sYWJlbHM7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgfVxuXG4gICAgJi50d28tZm9yLW9uZSB7XG4gICAgICAgIGNvbG9yOiBpZihzZXR0aW5nLXZhbHVlKCdwcm9kdWN0X2luZGljYXRvcnNfdXNlX2RlZmF1bHRfd2Vic2l0ZV9jb2xvcnMnKSwgJGNvbG9yX2dsb2JhbF9hY2NlbnRfY29sb3VyLCAkY29sb3JfcHJvZHVjdF9pbmRpY2F0b3JzX3R3b19mb3Jfb25lX3RleHQpO1xuICAgIH1cblxuICAgICYudGhyZWUtZm9yLXR3byB7XG4gICAgICAgIGNvbG9yOiBpZihzZXR0aW5nLXZhbHVlKCdwcm9kdWN0X2luZGljYXRvcnNfdXNlX2RlZmF1bHRfd2Vic2l0ZV9jb2xvcnMnKSwgJGNvbG9yX2dsb2JhbF9hY2NlbnRfY29sb3VyLCAkY29sb3JfcHJvZHVjdF9pbmRpY2F0b3JzX3RocmVlX2Zvcl90d29fdGV4dCk7XG4gICAgfVxuXG4gICAgJi5uZXcge1xuICAgICAgICBiYWNrZ3JvdW5kOiBpZihzZXR0aW5nLXZhbHVlKCdwcm9kdWN0X2luZGljYXRvcnNfdXNlX2RlZmF1bHRfd2Vic2l0ZV9jb2xvcnMnKSwgJGNvbG9yX2dsb2JhbF9ncmVlbl9hY2NlbnRfY29sb3VyLCAkY29sb3JfcHJvZHVjdF9pbmRpY2F0b3JzX25ld19iYWNrZ3JvdW5kKTtcbiAgICAgICAgY29sb3I6IGlmKHNldHRpbmctdmFsdWUoJ3Byb2R1Y3RfaW5kaWNhdG9yc191c2VfZGVmYXVsdF93ZWJzaXRlX2NvbG9ycycpLCAkY29sb3JfZ2xvYmFsX21haW5fYnV0dG9uX3RleHQsICRjb2xvcl9wcm9kdWN0X2luZGljYXRvcnNfbmV3X3RleHQpO1xuICAgIH1cblxuICAgICYuc2Vjb25kYXJ5IHtcbiAgICAgICAgZm9udC1zaXplOiAuOHJlbTtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICBwYWRkaW5nOiA4cHggLjdyZW07XG4gICAgICAgIGhlaWdodDogMjVweDtcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICB9XG59XG5cblxuLy8gcHJvZHVjdCBsYWJlbCBwb3NpdGlvbmluZ1xuXG4uaXRlbS1pbWFnZSxcbi5pbWFnZS1jb250YWluZXIsXG4ucHJvZHVjdC1tYWluLWltYWdlIHtcblxuICAgIC5sYWJlbCB7XG5cbiAgICAgICAgJi5zZWNvbmRhcnkge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgei1pbmRleDogMjtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8vIGNvbnRhY3QgcGFnZVxuLmNvbnRhY3QtYm94LCAuY29udGFjdC1hZGRyZXNzIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICBwIHtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgIH1cbn1cblxuLmNvbnRhY3QtYm94IHtcbiAgICBjb2xvcjogaWYoc2V0dGluZy12YWx1ZSgnY29udGFjdF91c191c2VfZGVmYXVsdF93ZWJzaXRlX2NvbG9ycycpLCAkY29sb3JfZ2xvYmFsX3B1cnBsZV90ZXh0LCAkY29sb3JfY29udGFjdF90aXRsZSk7XG4gICAgZm9udC1zaXplOiAxLjhyZW07XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICBmb250LWZhbWlseTogJGZvbnRfc2Vjb25kO1xuXG4gICAgLmNvbnRhY3QtaW5mb3JtYXRpb24gJiB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICB9XG5cbiAgICBhIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjE2cmVtO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICB9XG5cbiAgICBwLCBhIHtcbiAgICAgICAgY29sb3I6IGlmKHNldHRpbmctdmFsdWUoJ2NvbnRhY3RfdXNfdXNlX2RlZmF1bHRfd2Vic2l0ZV9jb2xvcnMnKSwgJGNvbG9yX2dsb2JhbF9wdXJwbGVfdGV4dCwgJGNvbG9yX2NvbnRhY3RfdGl0bGUpO1xuICAgIH1cblxuICAgIEBtZWRpYSAjeyRtLXVwfSB7XG4gICAgICAgIHBhZGRpbmc6IDFyZW0gMnJlbTtcblxuICAgICAgICAmICsgLmNvbnRhY3QtYm94IHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgICAgICAgbGVmdDogLTFweDtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAjZGZkZmRmO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxcHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwib3JcIjtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogaWYoc2V0dGluZy12YWx1ZSgnY29udGFjdF91c191c2VfZGVmYXVsdF93ZWJzaXRlX2NvbG9ycycpLCAkY29sb3JfZ2xvYmFsX2xpZ2h0X2JhY2tncm91bmRzLCAkY29sb3JfY29udGFjdF9jaXJjbGVzKTtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuMjNyZW07XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICAgICAgICBmb250LWZhbWlseTogbXVzZW8tc2xhYixzZXJpZjtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgICAgICAgICAgICAgIGNvbG9yOiBpZihzZXR0aW5nLXZhbHVlKCdjb250YWN0X3VzX3VzZV9kZWZhdWx0X3dlYnNpdGVfY29sb3JzJyksICRjb2xvcl9nbG9iYWxfcHVycGxlX2ljb25zLCAkY29sb3JfY29udGFjdF9pY29ucyk7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDUwcHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA1MHB4O1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogNTBweDtcbiAgICAgICAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAtMjVweDtcbiAgICAgICAgICAgICAgICBsZWZ0OiAtMjVweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuIEBtZWRpYSAjeyRzLW9ubHl9IHtcbiAgICAuYmctYm94IHtcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICB9XG5cbiAgICAgLmNvbnRhY3QtYm94ICsgLmNvbnRhY3QtYm94IHtcbiAgICAgICAgIG1hcmdpbi10b3A6IDJyZW07XG4gICAgIH1cbn1cblxuLmNvbnRhY3QtYWRkcmVzcyB7XG4gICAgY29sb3I6IGlmKHNldHRpbmctdmFsdWUoJ2NvbnRhY3RfdXNfdXNlX2RlZmF1bHRfd2Vic2l0ZV9jb2xvcnMnKSwgJGNvbG9yX2dsb2JhbF9ibGFja190ZXh0LCAkY29sb3JfY29udGFjdF9hZGRyZXNzX3RleHQpO1xuICAgIGZvbnQtc2l6ZTogLjg3M3JlbTtcbn1cblxuLmNvbnRhY3QtaWNvbiB7XG4gICAgd2lkdGg6IDEwMHB4O1xuICAgIGhlaWdodDogMTAwcHg7XG4gICAgbGluZS1oZWlnaHQ6IDEwMHB4O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luLWJvdHRvbTogMS4wOXJlbTtcbiAgICBiYWNrZ3JvdW5kOiBpZihzZXR0aW5nLXZhbHVlKCdjb250YWN0X3VzX3VzZV9kZWZhdWx0X3dlYnNpdGVfY29sb3JzJyksICRjb2xvcl9nbG9iYWxfbGlnaHRfYmFja2dyb3VuZHMsICRjb2xvcl9jb250YWN0X2NpcmNsZXMpO1xuICAgIGNvbG9yOiBpZihzZXR0aW5nLXZhbHVlKCdjb250YWN0X3VzX3VzZV9kZWZhdWx0X3dlYnNpdGVfY29sb3JzJyksICRjb2xvcl9nbG9iYWxfcHVycGxlX2ljb25zLCAkY29sb3JfY29udGFjdF9pY29ucyk7XG5cbiAgICBpIHtcbiAgICAgICAgZm9udC1zaXplOiA1MnB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMTAwcHg7XG4gICAgfVxufVxuXG4uY29udGFjdC1zdWJ0aXRsZSB7XG4gICAgZm9udC1zaXplOiAxLjIzcmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgZm9udC1mYW1pbHk6ICRmb250X3NlY29uZDtcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIGNvbG9yOiBpZihzZXR0aW5nLXZhbHVlKCdjb250YWN0X3VzX3VzZV9kZWZhdWx0X3dlYnNpdGVfY29sb3JzJyksICRjb2xvcl9nbG9iYWxfcHVycGxlX3RleHQsICRjb2xvcl9jb250YWN0X3RpdGxlKTtcbiAgICBkaXNwbGF5OiBibG9jaztcblxuICAgIC5jb250YWN0LWFkZHJlc3MgJiB7XG4gICAgICAgIGNvbG9yOiBpZihzZXR0aW5nLXZhbHVlKCdjb250YWN0X3VzX3VzZV9kZWZhdWx0X3dlYnNpdGVfY29sb3JzJyksICRjb2xvcl9nbG9iYWxfcHVycGxlX3RleHQsICRjb2xvcl9jb250YWN0X2FkZHJlc3NfdGl0bGUpO1xuICAgIH1cbn1cblxuLy8gc3RvY2tpc3Rcbi5zdG9ja2lzdC1jb250YWluZXIge1xuICAgIGJhY2tncm91bmQ6ICNmYmZiZjk7XG4gICAgcGFkZGluZy10b3A6IDEuODc1cmVtO1xuXG4gICAgLmlucHV0LWdyb3VwIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMi41cmVtO1xuICAgIH1cbn1cblxuLnN0b2NraXN0LWJveCB7XG4gICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICBwYWRkaW5nOiAxLjZyZW07XG4gICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgIGZvbnQtc2l6ZTogLjk0NXJlbTtcbiAgICBsaW5lLWhlaWdodDogbm9ybWFsO1xuXG4gICAgaDQsIGg1IHtcbiAgICAgICAgZm9udC1zaXplOiAxLjAxcmVtO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAuNXJlbTtcbiAgICB9XG5cbiAgICBoNCB7XG4gICAgICAgIGNvbG9yOiAkY29sb3VyX21haW47XG4gICAgfVxuXG4gICAgaDUge1xuICAgICAgICBmb250LWZhbWlseTogJGZvbnRfYm9keTtcbiAgICB9XG5cbiAgICAuc3RvY2tpc3QtbWFwIGEge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IGxvd2VyY2FzZTtcbiAgICAgICAgY29sb3I6ICRjb2xvdXJfbWFpbjtcbiAgICB9XG5cbiAgICBAbWVkaWEgI3skcy1vbmx5fSB7XG4gICAgICAgIGg1IHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDFyZW07XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAuM3JlbTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmNvbnRlbnQtY2VudGVyZWQge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgIGgxIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMS41cmVtO1xuICAgIH1cblxuICAgICYuY29udGVudCBhIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICAgIGNvbG9yOiAkY29sb3VyX2JvZHl0eHQ7XG4gICAgfVxufVxuXG5AbWVkaWEgI3skbC11cH0ge1xuICAgIC5tYXJnaW4tYm90dG9tLWxnIHtcbiAgICAgICAgQGluY2x1ZGUgcmVtKG1hcmdpbi1ib3R0b20sIDE4MHB4KTtcbiAgICB9XG59XG5cbi8vIHByb2R1Y3Qgb2ZmZXJzXG4ucHJvZHVjdC1vZmZlciB7XG5cbiAgICAmLXRpdGxlIHtcbiAgICAgICAgY29sb3I6IGlmKHNldHRpbmctdmFsdWUoJ3Byb2R1Y3RfaW5kaWNhdG9yc191c2VfZGVmYXVsdF93ZWJzaXRlX2NvbG9ycycpLCAkY29sb3JfZ2xvYmFsX2dyZWVuX2FjY2VudF9jb2xvdXIsICRjb2xvcl9wcm9kdWN0X29mZmVyX3RpdGxlKTtcbiAgICAgICAgZm9udC1mYW1pbHk6ICRmb250X2JvZHk7XG4gICAgICAgIEBpbmNsdWRlIHJlbShmb250LXNpemUsIDEzcHgpO1xuICAgICAgICBmb250LXdlaWdodDogNjAwO1xuXG4gICAgICAgIC8vIGNvbGxlY3Rpb24gaXRlbVxuICAgICAgICAucHJvZHVjdC1ib3ggJiB7XG4gICAgICAgICAgICBAaW5jbHVkZSByZW0oZm9udC1zaXplLCAxMnB4KTtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICAgICAgQGluY2x1ZGUgcmVtKG1hcmdpbi10b3AsIDEwcHgpO1xuICAgICAgICB9XG5cbiAgICAgICAgLmJhc2tldC1pdGVtICYge1xuICAgICAgICAgICAgQGluY2x1ZGUgcmVtKG1hcmdpbi10b3AsIDE1cHgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi1kZXNjcmlwdGlvbiB7XG4gICAgICAgY29sb3I6IGlmKHNldHRpbmctdmFsdWUoJ3Byb2R1Y3RfaW5kaWNhdG9yc191c2VfZGVmYXVsdF93ZWJzaXRlX2NvbG9ycycpLCAkY29sb3JfZ2xvYmFsX2JsYWNrX3RleHQsICRjb2xvcl9wcm9kdWN0X29mZmVyX3RleHQpO1xuICAgICAgICBAaW5jbHVkZSByZW0oZm9udC1zaXplLCAxMnB4KTtcbiAgICB9XG5cbiAgICAmLWNvbnRhaW5lciB7XG4gICAgICAgQGluY2x1ZGUgcmVtKG1hcmdpbi10b3AsIDE0cHgpO1xuICAgIH1cbn0iLCIvLyBjb2xvdXJzXG5cbiRzdy1jb2xvdXJfYm9yZGVyOiAjZjdmN2Y3O1xuJHN3LWNvbG91cl9zaGFkZTogI2VhZWFlYTtcbiRzdy1jb2xvdXJfZ3JleTogIzk1OTQ5NDtcbiRzdy1jb2xvdXJfYmxhY2s6ICMyZDJkMmQ7XG5cbiRzdy1jb2xvdXJfc3VjY2VzczogIzFhYjUwMDtcbiRzdy1jb2xvdXJfZGFuZ2VyOiAjZGIwMDAwO1xuJHN3LWNvbG91cl9kYW5nZXJfdHh0OiAjZDcwMDAwO1xuJHN3LWNvbG91cl9lcnJvcjogI2Q3MDAwMDtcblxuJGNvbG91cl9ibGFjazogIzAwMDtcbiRjb2xvdXJfd2hpdGU6ICNmZmY7XG5cbi8vIHZhcnNcblxuJHN3LWJveC1wYWRkaW5nOiAycmVtO1xuXG4vLyBmb250c1xuXG4kaWNvbW9vbi1mb250LWZhbWlseTogXCJzd19hY2NvdW50XCIgIWRlZmF1bHQ7XG4kaWNvbW9vbi1mb250LXBhdGg6IFwiLi4vZm9udHNcIiAhZGVmYXVsdDtcblxuJGljb24td2FyZWhvdXNlOiBcIlxcZTkwMFwiO1xuJGljb24tYWNjb3VudC1ob21lOiBcIlxcZTkwMVwiO1xuJGljb24tYWRkcmVzcy1ib29rOiBcIlxcZTkwMlwiO1xuJGljb24tY2hlY2staW4tY2hlY2tib3g6IFwiXFxlOTAzXCI7XG4kaWNvbi1kZWxldGU6IFwiXFxlOTA0XCI7XG4kaWNvbi1lZGl0OiBcIlxcZTkwNVwiO1xuJGljb24tbG9nLW91dDogXCJcXGU5MDZcIjtcbiRpY29uLW15LWRldGFpbHM6IFwiXFxlOTA3XCI7XG4kaWNvbi1teS1mYXZvdXJpdGVzOiBcIlxcZTkwOFwiO1xuJGljb24tbXktb3JkZXJzOiBcIlxcZTkwOVwiO1xuJGljb24tbXktcGFzc3dvcmQ6IFwiXFxlOTBhXCI7XG4kaWNvbi1teS1zdWJzY3JpcHRpb25zOiBcIlxcZTkwYlwiO1xuJGljb24tUERGOiBcIlxcZTkwY1wiO1xuJGljb24tcmUtb3JkZXI6IFwiXFxlOTBkXCI7XG4kaWNvbi1yZWZlcnJlZC1mcmllbmRzOiBcIlxcZTkwZVwiO1xuJGljb24tcmV3YXJkLXBvaW50czogXCJcXGU5MGZcIjtcbiRpY29uLWJhY2s6IFwiXFxlOTEwXCI7XG4kaWNvbi1wcm9maWxlOiBcIlxcZTkxMVwiO1xuXG5cbkBmb250LWZhY2Uge1xuICAgIGZvbnQtZmFtaWx5OiAnI3skaWNvbW9vbi1mb250LWZhbWlseX0nO1xuICAgIHNyYzogIHVybCgnI3skaWNvbW9vbi1mb250LXBhdGh9LyN7JGljb21vb24tZm9udC1mYW1pbHl9LmVvdD9uaXAyY3QnKTtcbiAgICBzcmM6ICB1cmwoJyN7JGljb21vb24tZm9udC1wYXRofS8jeyRpY29tb29uLWZvbnQtZmFtaWx5fS5lb3Q/bmlwMmN0I2llZml4JykgZm9ybWF0KCdlbWJlZGRlZC1vcGVudHlwZScpLFxuICAgICAgICB1cmwoJyN7JGljb21vb24tZm9udC1wYXRofS8jeyRpY29tb29uLWZvbnQtZmFtaWx5fS50dGY/bmlwMmN0JykgZm9ybWF0KCd0cnVldHlwZScpLFxuICAgICAgICB1cmwoJyN7JGljb21vb24tZm9udC1wYXRofS8jeyRpY29tb29uLWZvbnQtZmFtaWx5fS53b2ZmP25pcDJjdCcpIGZvcm1hdCgnd29mZicpLFxuICAgICAgICB1cmwoJyN7JGljb21vb24tZm9udC1wYXRofS8jeyRpY29tb29uLWZvbnQtZmFtaWx5fS5zdmc/bmlwMmN0IyN7JGljb21vb24tZm9udC1mYW1pbHl9JykgZm9ybWF0KCdzdmcnKTtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cblxuXG5bY2xhc3NePVwiaWNvbi1cIl0sIFtjbGFzcyo9XCIgaWNvbi1cIl0ge1xuICAgIC8qIHVzZSAhaW1wb3J0YW50IHRvIHByZXZlbnQgaXNzdWVzIHdpdGggYnJvd3NlciBleHRlbnNpb25zIHRoYXQgY2hhbmdlIGZvbnRzICovXG4gICAgZm9udC1mYW1pbHk6ICcjeyRpY29tb29uLWZvbnQtZmFtaWx5fScgIWltcG9ydGFudDtcbiAgICBzcGVhazogbm9uZTtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICBmb250LXZhcmlhbnQ6IG5vcm1hbDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICBsaW5lLWhlaWdodDogMTtcblxuICAgIC8qIEJldHRlciBGb250IFJlbmRlcmluZyA9PT09PT09PT09PSAqL1xuICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG59XG5cbi5pY29uLXdhcmVob3VzZSB7XG4gICAgJjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiAkaWNvbi13YXJlaG91c2U7XG4gICAgfVxufVxuLmljb24tYmFjayB7XG4gICAgJjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiAkaWNvbi1iYWNrO1xuICAgIH1cbn1cbi5pY29uLXByb2ZpbGUge1xuICAgICY6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogJGljb24tcHJvZmlsZTtcbiAgICB9XG59XG4uaWNvbi1hY2NvdW50LWhvbWUge1xuICAgICY6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogJGljb24tYWNjb3VudC1ob21lO1xuICAgIH1cbn1cbi5pY29uLWFkZHJlc3MtYm9vayB7XG4gICAgJjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiAkaWNvbi1hZGRyZXNzLWJvb2s7XG4gICAgfVxufVxuLmljb24tY2hlY2staW4tY2hlY2tib3gge1xuICAgICY6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogJGljb24tY2hlY2staW4tY2hlY2tib3g7XG4gICAgfVxufVxuLmljb24tZGVsZXRlIHtcbiAgICAmOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6ICRpY29uLWRlbGV0ZTtcbiAgICB9XG59XG4uaWNvbi1lZGl0IHtcbiAgICAmOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6ICRpY29uLWVkaXQ7XG4gICAgfVxufVxuLmljb24tbG9nLW91dCB7XG4gICAgJjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiAkaWNvbi1sb2ctb3V0O1xuICAgIH1cbn1cbi5pY29uLW15LWRldGFpbHMge1xuICAgICY6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogJGljb24tbXktZGV0YWlscztcbiAgICB9XG59XG4uaWNvbi1teS1mYXZvdXJpdGVzIHtcbiAgICAmOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6ICRpY29uLW15LWZhdm91cml0ZXM7XG4gICAgfVxufVxuLmljb24tbXktb3JkZXJzIHtcbiAgICAmOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6ICRpY29uLW15LW9yZGVycztcbiAgICB9XG59XG4uaWNvbi1teS1wYXNzd29yZCB7XG4gICAgJjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiAkaWNvbi1teS1wYXNzd29yZDtcbiAgICB9XG59XG4uaWNvbi1teS1zdWJzY3JpcHRpb25zIHtcbiAgICAmOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6ICRpY29uLW15LXN1YnNjcmlwdGlvbnM7XG4gICAgfVxufVxuLmljb24tUERGIHtcbiAgICAmOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6ICRpY29uLVBERjtcbiAgICB9XG59XG4uaWNvbi1yZS1vcmRlciB7XG4gICAgJjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiAkaWNvbi1yZS1vcmRlcjtcbiAgICB9XG59XG4uaWNvbi1yZWZlcnJlZC1mcmllbmRzIHtcbiAgICAmOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6ICRpY29uLXJlZmVycmVkLWZyaWVuZHM7XG4gICAgfVxufVxuLmljb24tcmV3YXJkLXBvaW50cyB7XG4gICAgJjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiAkaWNvbi1yZXdhcmQtcG9pbnRzO1xuICAgIH1cbn1cblxuJGZ1dHVyYS1mb250LWZhbWlseTogJ2Z1dHVyYV9wdCcsICdUcmVidWNoZXQgTVMnLCBBcmlhbCwgc2Fucy1zZXJpZjtcblxuQGZvbnQtZmFjZSB7XG4gICAgZm9udC1mYW1pbHk6ICdmdXR1cmFfcHQnO1xuICAgIHNyYzogdXJsKCdodHRwczovL2ZvbnRzLnNob3B3aXJlZC5jby51ay9mdXR1cmFfcHQvZnV0dXJhX3B0XzcwMF9ub3JtYWwuZW90Jyk7XG4gICAgc3JjOiB1cmwoJ2h0dHBzOi8vZm9udHMuc2hvcHdpcmVkLmNvLnVrL2Z1dHVyYV9wdC9mdXR1cmFfcHRfNzAwX25vcm1hbC5lb3Q/I2llZml4NzAwJykgZm9ybWF0KCdlbWJlZGRlZC1vcGVudHlwZScpLFxuICAgICAgICAgdXJsKCdodHRwczovL2ZvbnRzLnNob3B3aXJlZC5jby51ay9mdXR1cmFfcHQvZnV0dXJhX3B0XzcwMF9ub3JtYWwud29mZjInKSBmb3JtYXQoJ3dvZmYyJyksXG4gICAgICAgICB1cmwoJ2h0dHBzOi8vZm9udHMuc2hvcHdpcmVkLmNvLnVrL2Z1dHVyYV9wdC9mdXR1cmFfcHRfNzAwX25vcm1hbC53b2ZmJykgZm9ybWF0KCd3b2ZmJyksXG4gICAgICAgICB1cmwoJ2h0dHBzOi8vZm9udHMuc2hvcHdpcmVkLmNvLnVrL2Z1dHVyYV9wdC9mdXR1cmFfcHRfNzAwX25vcm1hbC50dGYnKSBmb3JtYXQoJ3RydWV0eXBlJyksXG4gICAgICAgICB1cmwoJ2h0dHBzOi8vZm9udHMuc2hvcHdpcmVkLmNvLnVrL2Z1dHVyYV9wdC9mdXR1cmFfcHRfNzAwX25vcm1hbC5zdmcjNzAwJykgZm9ybWF0KCdzdmcnKTtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cblxuJHByb3hpbWEtZm9udC1mYW1pbHk6ICdwcm94aW1hX25vdmEnLCBBcmlhbCwgc2Fucy1zZXJpZjtcblxuQGZvbnQtZmFjZSB7XG4gICAgZm9udC1mYW1pbHk6ICdwcm94aW1hX25vdmEnO1xuICAgIHNyYzogdXJsKCdodHRwczovL2ZvbnRzLnNob3B3aXJlZC5jby51ay9wcm94aW1hX25vdmEvcHJveGltYV9ub3ZhXzQwMF9ub3JtYWwuZW90Jyk7XG4gICAgc3JjOiB1cmwoJ2h0dHBzOi8vZm9udHMuc2hvcHdpcmVkLmNvLnVrL3Byb3hpbWFfbm92YS9wcm94aW1hX25vdmFfNDAwX25vcm1hbC5lb3Q/I2llZml4NDAwJykgZm9ybWF0KCdlbWJlZGRlZC1vcGVudHlwZScpLFxuICAgICAgICAgdXJsKCdodHRwczovL2ZvbnRzLnNob3B3aXJlZC5jby51ay9wcm94aW1hX25vdmEvcHJveGltYV9ub3ZhXzQwMF9ub3JtYWwud29mZjInKSBmb3JtYXQoJ3dvZmYyJyksXG4gICAgICAgICB1cmwoJ2h0dHBzOi8vZm9udHMuc2hvcHdpcmVkLmNvLnVrL3Byb3hpbWFfbm92YS9wcm94aW1hX25vdmFfNDAwX25vcm1hbC53b2ZmJykgZm9ybWF0KCd3b2ZmJyksXG4gICAgICAgICB1cmwoJ2h0dHBzOi8vZm9udHMuc2hvcHdpcmVkLmNvLnVrL3Byb3hpbWFfbm92YS9wcm94aW1hX25vdmFfNDAwX25vcm1hbC50dGYnKSBmb3JtYXQoJ3RydWV0eXBlJyksXG4gICAgICAgICB1cmwoJ2h0dHBzOi8vZm9udHMuc2hvcHdpcmVkLmNvLnVrL3Byb3hpbWFfbm92YS9wcm94aW1hX25vdmFfNDAwX25vcm1hbC5zdmcjNDAwJykgZm9ybWF0KCdzdmcnKTtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cblxuQGZvbnQtZmFjZSB7XG4gICAgZm9udC1mYW1pbHk6ICdwcm94aW1hX25vdmEnO1xuICAgIHNyYzogdXJsKCdodHRwczovL2ZvbnRzLnNob3B3aXJlZC5jby51ay9wcm94aW1hX25vdmEvcHJveGltYV9ub3ZhXzYwMF9ub3JtYWwuZW90Jyk7XG4gICAgc3JjOiB1cmwoJ2h0dHBzOi8vZm9udHMuc2hvcHdpcmVkLmNvLnVrL3Byb3hpbWFfbm92YS9wcm94aW1hX25vdmFfNjAwX25vcm1hbC5lb3Q/I2llZml4NjAwJykgZm9ybWF0KCdlbWJlZGRlZC1vcGVudHlwZScpLFxuICAgICAgICAgdXJsKCdodHRwczovL2ZvbnRzLnNob3B3aXJlZC5jby51ay9wcm94aW1hX25vdmEvcHJveGltYV9ub3ZhXzYwMF9ub3JtYWwud29mZjInKSBmb3JtYXQoJ3dvZmYyJyksXG4gICAgICAgICB1cmwoJ2h0dHBzOi8vZm9udHMuc2hvcHdpcmVkLmNvLnVrL3Byb3hpbWFfbm92YS9wcm94aW1hX25vdmFfNjAwX25vcm1hbC53b2ZmJykgZm9ybWF0KCd3b2ZmJyksXG4gICAgICAgICB1cmwoJ2h0dHBzOi8vZm9udHMuc2hvcHdpcmVkLmNvLnVrL3Byb3hpbWFfbm92YS9wcm94aW1hX25vdmFfNjAwX25vcm1hbC50dGYnKSBmb3JtYXQoJ3RydWV0eXBlJyksXG4gICAgICAgICB1cmwoJ2h0dHBzOi8vZm9udHMuc2hvcHdpcmVkLmNvLnVrL3Byb3hpbWFfbm92YS9wcm94aW1hX25vdmFfNjAwX25vcm1hbC5zdmcjNjAwJykgZm9ybWF0KCdzdmcnKTtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cblxuQGZvbnQtZmFjZSB7XG4gICAgZm9udC1mYW1pbHk6ICdwcm94aW1hX25vdmEnO1xuICAgIHNyYzogdXJsKCdodHRwczovL2ZvbnRzLnNob3B3aXJlZC5jby51ay9wcm94aW1hX25vdmEvcHJveGltYV9ub3ZhXzcwMF9ub3JtYWwuZW90Jyk7XG4gICAgc3JjOiB1cmwoJ2h0dHBzOi8vZm9udHMuc2hvcHdpcmVkLmNvLnVrL3Byb3hpbWFfbm92YS9wcm94aW1hX25vdmFfNzAwX25vcm1hbC5lb3Q/I2llZml4NzAwJykgZm9ybWF0KCdlbWJlZGRlZC1vcGVudHlwZScpLFxuICAgICAgICAgdXJsKCdodHRwczovL2ZvbnRzLnNob3B3aXJlZC5jby51ay9wcm94aW1hX25vdmEvcHJveGltYV9ub3ZhXzcwMF9ub3JtYWwud29mZjInKSBmb3JtYXQoJ3dvZmYyJyksXG4gICAgICAgICB1cmwoJ2h0dHBzOi8vZm9udHMuc2hvcHdpcmVkLmNvLnVrL3Byb3hpbWFfbm92YS9wcm94aW1hX25vdmFfNzAwX25vcm1hbC53b2ZmJykgZm9ybWF0KCd3b2ZmJyksXG4gICAgICAgICB1cmwoJ2h0dHBzOi8vZm9udHMuc2hvcHdpcmVkLmNvLnVrL3Byb3hpbWFfbm92YS9wcm94aW1hX25vdmFfNzAwX25vcm1hbC50dGYnKSBmb3JtYXQoJ3RydWV0eXBlJyksXG4gICAgICAgICB1cmwoJ2h0dHBzOi8vZm9udHMuc2hvcHdpcmVkLmNvLnVrL3Byb3hpbWFfbm92YS9wcm94aW1hX25vdmFfNzAwX25vcm1hbC5zdmcjNzAwJykgZm9ybWF0KCdzdmcnKTtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cblxuXG4vLyBleHRlbmRzXG5cbiV1bnBhZF94IHtcbiAgICBtYXJnaW4tbGVmdDogLSRzdy1ib3gtcGFkZGluZztcbiAgICBtYXJnaW4tcmlnaHQ6IC0kc3ctYm94LXBhZGRpbmc7XG59XG5cbiV1bnBhZC15IHtcbiAgICBtYXJnaW4tdG9wOiAtJHN3LWJveC1wYWRkaW5nO1xuICAgIG1hcmdpbi1ib3R0b206IC0kc3ctYm94LXBhZGRpbmc7XG59XG5cblxuLy8gYWNjb3VudFxuLnN3LWFjY291bnQge1xuICAgIHBhZGRpbmc6ICRzdy1ib3gtcGFkZGluZyAwO1xuICAgIGZvbnQtZmFtaWx5OiAkcHJveGltYS1mb250LWZhbWlseTtcbiAgICBmb250LXNpemU6IDEyLjc1cHg7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcblxuICAgIGhyIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAjZWFlYWVhO1xuICAgIH1cblxuICAgICYtYm94IHtcbiAgICAgICAgLy9ib3JkZXI6IDJweCBzb2xpZCAkc3ctY29sb3VyX2JvcmRlcjtcbiAgICAgICAgYm94LXNoYWRvdzogMHB4IDBweCAxMHB4IDBweCByZ2JhKDAsIDAsIDAsIDAuMDkpO1xuICAgICAgICAvL2JveC1zaGFkb3c6IDAgMCA0cHggI2NjYztcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMS41cmVtO1xuICAgICAgICBwYWRkaW5nOiAkc3ctYm94LXBhZGRpbmc7XG5cbiAgICAgICAgPiAqOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYtaGVhZGVyIHtcbiAgICAgICAgcGFkZGluZzogMXJlbSAwO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIG1hcmdpbi10b3A6IC0kc3ctYm94LXBhZGRpbmc7XG5cbiAgICAgICAgYnIge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYtaW5pdGlhbC1ibG9iIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG91cl9ibGFjaztcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNXJlbTtcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2Zvcm0oIHRyYW5zbGF0ZVkoLTUwJSkgKTtcbiAgICAgICAgbGVmdDogLTJyZW07XG4gICAgICAgIHRvcDogNTAlO1xuICAgICAgICB3aWR0aDogNnJlbTtcbiAgICAgICAgaGVpZ2h0OiA2cmVtO1xuICAgICAgICBmb250LWZhbWlseTogJGZ1dHVyYS1mb250LWZhbWlseTtcbiAgICAgICAgZm9udC1zaXplOiAyLjVyZW07XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiA2cmVtO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgfVxuXG4gICAgJi1uYW1lIHtcbiAgICAgICAgY29sb3I6ICRjb2xvdXJfYmxhY2s7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgICB9XG5cbiAgICAmLWNvbXBhbnkge1xuICAgICAgICBmb250LXNpemU6IC44NXJlbTtcbiAgICB9XG5cbiAgICAmLW1lbnUge1xuICAgICAgICBtYXJnaW46IDAgKC0kc3ctYm94LXBhZGRpbmcpICgtJHN3LWJveC1wYWRkaW5nKTtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG5cbiAgICAgICAgbGkgKyBsaSBhOmFmdGVyIHtcbiAgICAgICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkc3ctY29sb3VyX3NoYWRlO1xuICAgICAgICB9XG5cbiAgICAgICAgbGkge1xuXG4gICAgICAgICAgICAmLmFjdGl2ZSB7XG5cbiAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHN3LWNvbG91cl9ib3JkZXI7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkY29sb3VyX2JsYWNrO1xuXG4gICAgICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IDNweCBzb2xpZCAkY29sb3VyX2JsYWNrO1xuICAgICAgICAgICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogLTRweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAycHg7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICYgKyBsaSBhOmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIGEge1xuICAgICAgICAgICAgY29sb3I6ICRjb2xvdXJfYmxhY2s7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICBmb250LXNpemU6IC45NXJlbTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAxLjRyZW0gMXJlbSAxLjRyZW0gNC4yNXJlbSAhaW1wb3J0YW50O1xuXG4gICAgICAgICAgICBpIHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgbGVmdDogMS41cmVtO1xuICAgICAgICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IC0uNzVyZW07XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjVyZW07XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgICAgbGVmdDogMS4yNXJlbTtcbiAgICAgICAgICAgICAgICByaWdodDogMS4yNXJlbTsgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc3ctY29sb3VyX2JvcmRlcjtcblxuICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IDNweCBzb2xpZCAkY29sb3VyX2JsYWNrO1xuICAgICAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IC00cHg7XG4gICAgICAgICAgICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDJweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLWhlYWRpbmcge1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBmb250LWZhbWlseTogJHByb3hpbWEtZm9udC1mYW1pbHk7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4zMjVyZW07XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA4MDA7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IC43NXJlbTtcblxuICAgICAgICBpIHtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IC43NXJlbTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIHRvcDogLjI1cmVtO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi1zdWJoZWFkaW5nIHtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IC41cmVtO1xuICAgIH1cblxuICAgICYtbGluZS1oZWFkaW5nIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjAyNXJlbTtcbiAgICAgICAgY29sb3I6ICRzdy1jb2xvdXJfZ3JleTtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIG1hcmdpbjogLjc1cmVtIDA7XG5cbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRzdy1jb2xvdXJfZ3JleTtcbiAgICAgICAgfVxuXG4gICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgcGFkZGluZzogLjI1cmVtIDFyZW07XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3VyX3doaXRlO1xuICAgICAgICB9XG5cbiAgICB9XG5cblxuICAgICYtYmxvY2sge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkY29sb3VyX2JsYWNrO1xuICAgICAgICBjb2xvcjogJGNvbG91cl93aGl0ZTtcbiAgICAgICAgcGFkZGluZzogMS41cmVtICRzdy1ib3gtcGFkZGluZztcbiAgICAgICAgQGV4dGVuZCAldW5wYWRfeDtcbiAgICAgICAgbWFyZ2luLXRvcDogJHN3LWJveC1wYWRkaW5nO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAkc3ctYm94LXBhZGRpbmc7XG5cbiAgICAgICAgJi1sYWJlbCB7XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgZm9udC1zaXplOiAuOXJlbTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAuMjVyZW07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLXBhbmVsIHtcbiAgICAgICAgYmFja2dyb3VuZDogJHN3LWNvbG91cl9ib3JkZXI7XG4gICAgICAgIHBhZGRpbmc6IDFyZW0gMS41cmVtO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW07XG5cbiAgICAgICAgJi5saXN0LWl0ZW0ge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogLjI1cmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYtbGluayB7XG4gICAgICAgIGNvbG9yOiAkc3ctY29sb3VyX2JsYWNrO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICBmb250LWZhbWlseTogJHByb3hpbWEtZm9udC1mYW1pbHk7XG5cbiAgICAgICAgQGluY2x1ZGUgaXMtYWN0aXZlIHtcbiAgICAgICAgICAgIGNvbG9yOiAkc3ctY29sb3VyX2JsYWNrO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi1pY29uLWxpbmsge1xuICAgICAgICBjb2xvcjogJHN3LWNvbG91cl9ibGFjaztcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgICAgIGkge1xuICAgICAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IC4zNWVtO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogLjM1ZW07XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICAgIH1cblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGNvbG9yOiAkc3ctY29sb3VyX2JsYWNrO1xuICAgICAgICB9XG4gICAgfVxuXG5cbiAgICAvLyBhY3Rpdml0eSBsaXN0XG4gICAgJi1hY3Rpdml0eS1saXN0IHtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJHN3LWNvbG91cl9zaGFkZTtcbiAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG5cbiAgICAgICAgPiBsaSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAxcmVtO1xuXG4gICAgICAgICAgICAmICsgbGkge1xuICAgICAgICAgICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkc3ctY29sb3VyX3NoYWRlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgdGltZSB7XG4gICAgICAgICAgICBjb2xvcjogJHN3LWNvbG91cl9ncmV5O1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogLjk1ZW07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBhZGRyZXNzIGJveFxuICAgICYtY29udGFpbmVyLWJveCB7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRzdy1jb2xvdXJfc2hhZGU7XG4gICAgICAgIHBhZGRpbmc6IDEuNXJlbTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMS41cmVtO1xuXG4gICAgICAgICVib3hfY2hpbGRyZW4ge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHN3LWNvbG91cl9ib3JkZXI7XG4gICAgICAgICAgICBwYWRkaW5nOiAxcmVtIDEuNXJlbTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogLjllbTtcbiAgICAgICAgfVxuXG4gICAgICAgICYtaGVhZGVyIHtcbiAgICAgICAgICAgIEBleHRlbmQgJWJveF9jaGlsZHJlbjtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkc3ctY29sb3VyX3NoYWRlO1xuICAgICAgICAgICAgbWFyZ2luOiAtMS41cmVtIC0xLjVyZW0gMS41cmVtIC0xLjVyZW07XG4gICAgICAgIH1cblxuXG4gICAgICAgICYtZm9vdGVyIHtcbiAgICAgICAgICAgIEBleHRlbmQgJWJveF9jaGlsZHJlbjtcbiAgICAgICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkc3ctY29sb3VyX3NoYWRlO1xuICAgICAgICAgICAgbWFyZ2luOiAxLjVyZW0gLTEuNXJlbSAtMS41cmVtIC0xLjVyZW07XG4gICAgICAgIH1cblxuICAgICAgICAmLWxpc3Qge1xuICAgICAgICAgICAgbWFyZ2luOiAtMS41cmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgJi1pdGVtIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDEuNXJlbTtcblxuICAgICAgICAgICAgJiArICYge1xuICAgICAgICAgICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkc3ctY29sb3VyX3NoYWRlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLXRpdGxlIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICYtZGVmLWxpc3Qge1xuICAgICAgICBsaW5lLWhlaWdodDogMS4yO1xuXG4gICAgICAgIGR0LCBkZCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgfVxuXG4gICAgICAgIGR0IHtcbiAgICAgICAgICAgIGNsZWFyOiBsZWZ0O1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcblxuICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgY29udGVudDogJzonO1xuICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IC4ycmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi1idXR0b24ge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3VyX2JsYWNrO1xuICAgICAgICBjb2xvcjogJGNvbG91cl93aGl0ZTtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogLjI1ZW07XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkcHJveGltYS1mb250LWZhbWlseTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgcGFkZGluZzogMWVtIDIuNWVtO1xuXG4gICAgICAgICY6aG92ZXIsXG4gICAgICAgICY6YWN0aXZlLFxuICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvdXJfYmxhY2s7XG4gICAgICAgICAgICBjb2xvcjogJGNvbG91cl93aGl0ZTtcbiAgICAgICAgfVxuXG4gICAgICAgICYuc21hbGwge1xuICAgICAgICAgICAgZm9udC1zaXplOiAuOHJlbTtcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiBsb3dlcmNhc2U7XG4gICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogbm9ybWFsO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IC41ZW0gMS41ZW07XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAuNXJlbTtcbiAgICAgICAgfVxuXG4gICAgICAgICYtY2xlYXIge1xuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogLjg1cmVtICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBmb250LWZhbWlseTogJHByb3hpbWEtZm9udC1mYW1pbHk7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICB9XG5cbiAgICAgICAgJi1wZGYge1xuICAgICAgICAgICAgaSB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjc1cmVtO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkY29sb3VyX2JsYWNrO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG5cbiAgICAvLyBmb3Jtc1xuXG4gICAgJi1sYWJlbCB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgIGZvbnQtc2l6ZTogLjlyZW07XG4gICAgfVxuXG4gICAgJi1pbnB1dCB7XG4gICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJHN3LWNvbG91cl9zaGFkZTtcbiAgICAgICAgaGVpZ2h0OiAzcmVtO1xuXG4gICAgICAgICYuaW5wdXQtZ3JvdXAtZmllbGQge1xuICAgICAgICAgICAgYm9yZGVyLXJpZ2h0LXdpZHRoOiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6ICRzdy1jb2xvdXJfc2hhZGU7XG4gICAgICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgc2VsZWN0JiB7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmlucHV0LWdyb3VwLWJ1dHRvbiBidXR0b24ge1xuICAgICAgICBoZWlnaHQ6IDNyZW07XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJHN3LWNvbG91cl9zaGFkZTtcbiAgICAgICAgYm9yZGVyLXdpZHRoOiAxcHggMXB4IDFweCAwO1xuICAgICAgICBjb2xvcjogJGJsYWNrO1xuICAgIH1cblxuXG4gICAgJi1pbnB1dC1pbmRpY2F0b3Ige1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIG1hcmdpbi1yaWdodDogLjVyZW07XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRzdy1jb2xvdXJfZGFuZ2VyO1xuICAgICAgICB3aWR0aDogLjc1cmVtO1xuICAgICAgICBoZWlnaHQ6IC43NXJlbTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogLjc1cmVtO1xuXG4gICAgICAgICYudmFsaWQge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHN3LWNvbG91cl9zdWNjZXNzO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi1ob21lLWJ1dHRvbiB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS43NXJlbTtcbiAgICAgICAgY29sb3I6ICRjb2xvdXJfYmxhY2s7XG4gICAgfVxuXG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuc3ctYWNjb3VudCB7XG5cbiAgICAgICAgJi1pbml0aWFsLWJsb2Ige1xuICAgICAgICAgICAgbGVmdDogLTIuNzVyZW07XG4gICAgICAgIH1cblxuICAgICAgICAmLWhlYWRlciBiciB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuICAgIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5zdy1hY2NvdW50IHtcblxuICAgICAgICAmLWhlYWRlciB7XG4gICAgICAgICAgICBwYWRkaW5nOiAzLjVyZW0gMCAzLjVyZW0gNXJlbTtcbiAgICAgICAgfVxuXG4gICAgICAgICYtc2lkZWJhciB7XG4gICAgICAgICAgICB3aWR0aDogMzElO1xuICAgICAgICB9XG5cbiAgICAgICAgJi1jb250ZW50IHtcbiAgICAgICAgICAgIHdpZHRoOiA2OSU7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8vIHZhbGlkYXRpb25cbi5qcy1wYXNzd29yZC1ncm91cCB7XG5cbiAgICAmLmVycm9yIHtcbiAgICAgICAgLy9ib3JkZXI6IDFweCBzb2xpZCAkc3ctY29sb3VyX2Vycm9yO1xuICAgICAgICAvL3BhZGRpbmctYm90dG9tOiAxcHg7XG5cbiAgICAgICAgaW5wdXQsIHNlbGVjdCwgYnV0dG9uLCB0ZXh0YXJlYSB7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6ICRzdy1jb2xvdXJfZXJyb3I7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbnNwYW4uZXJyb3ItdGV4dCB7XG4gICAgY29sb3I6ICRzdy1jb2xvdXJfZGFuZ2VyO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgIG1hcmdpbjogLS41cmVtIDAgMXJlbTtcbn1cblxuXG4vLyBoZWxwZXJzXG5cbi5zdy11cHBlciB7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cblxuLnN3LW1hcmdpbi1iLXhzIHtcbiAgICBtYXJnaW4tYm90dG9tOiAuMjVyZW07XG59XG5cbi5zdy1tYXJnaW4tYi1zIHtcbiAgICBtYXJnaW4tYm90dG9tOiAuNXJlbTtcbn1cblxuLnN3LW1hcmdpbi1iIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xufVxuXG4uc3ctaW5saW5lLWJsb2NrIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbi5zdy10ZXh0LWRhbmdlciB7XG4gICAgY29sb3I6ICRzdy1jb2xvdXJfZGFuZ2VyX3R4dDtcblxuICAgICY6aG92ZXIge1xuICAgICAgICBjb2xvcjogJHN3LWNvbG91cl9kYW5nZXJfdHh0O1xuICAgIH1cbn1cblxuXG5cblxuXG4iLCIvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLyogI1Byb2R1Y3QgKi9cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4ucHJvZHVjdC1tYWluLWltYWdlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAuem9vbSB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgYmFja2dyb3VuZDogI2YzZjBlZTtcbiAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgd2lkdGg6IDUwcHg7XG4gICAgICAgIGhlaWdodDogNTBweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDUwcHg7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG5cbiAgICAgICAgaSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDMwcHg7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiA1MHB4O1xuICAgICAgICB9XG4gICAgfVxufVxuXG4jZ2xhc3Mge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgYm94LXNoYWRvdzogMCAwIDAgN3B4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44NSksIDAgMCA3cHggN3B4IHJnYmEoMCwgMCwgMCwgMC4yNSksIGluc2V0IDAgMCA0MHB4IDJweCByZ2JhKDAsIDAsIDAsIDAuMjUpO1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsMCwwLC42KTtcbiAgICB6LWluZGV4OiA5O1xufVxuXG4ucHJvZHVjdC1pbWFnZSB7XG4gICAgcGFkZGluZy1ib3R0b206IDI0cHg7XG5cbiAgICBAbWVkaWEgI3skbS1kb3dufSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgICAgIG1heC13aWR0aDogNzAlO1xuICAgICAgICBwb3NpdGlvbjogc3RhdGljICFpbXBvcnRhbnQ7XG4gICAgfVxufVxuXG4ub2ZmLWNhbnZhcy1hY3RpdmUge1xuICAgIC5zdGlja3kuaXMtc3R1Y2sge1xuICAgICAgICB6LWluZGV4OiAwO1xuICAgIH1cbn1cblxuQG1lZGlhICN7JG0tZG93bn0ge1xuICAgIC5zdGlja3ktY29udGFpbmVyIHtcbiAgICAgICAgaGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgI3Byb2R1Y3Qtc3RpY2t5LmlzLXN0dWNrLCAjYmFza2V0LXN0aWNreS5pcy1zdHVjayB7XG4gICAgICAgIHBvc2l0aW9uOiBzdGF0aWMgIWltcG9ydGFudDtcbiAgICB9XG59XG5cbkBtZWRpYSAocG9pbnRlcjogY29hcnNlKSBhbmQgKGhvdmVyOiBub25lKSB7XG4gICAgLnN0aWNreS1jb250YWluZXIge1xuICAgICAgICBoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAjcHJvZHVjdC1zdGlja3kuaXMtc3R1Y2ssICNiYXNrZXQtc3RpY2t5LmlzLXN0dWNrIHtcbiAgICAgICAgcG9zaXRpb246IHN0YXRpYyAhaW1wb3J0YW50O1xuICAgIH1cbn1cblxuI2FqYXhNb2RhbCB7XG4gICAgYm94LXNoYWRvdzogMCAwIDVweCBoc2xhKDAsMCUsNCUsLjcpO1xuXG4gICAgLmNsb3NlLWJ1dHRvbiB7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIEBpbmNsdWRlIHJlbShwYWRkaW5nLCAxNXB4KTtcbiAgICAgICAgei1pbmRleDogMTtcbiAgICB9XG5cbiAgICAucHJvZHVjdC1oZWFkaW5nIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxLjQ2cmVtO1xuICAgIH1cblxuICAgIC52aWV3LXByb2R1Y3Qge1xuICAgICAgICBjb2xvcjogJGNvbG91cl9ib2R5dHh0O1xuICAgICAgICBtYXJnaW4tdG9wOiAxLjVyZW07XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cblxuICAgIC5idXR0b24uZGlzYWJsZWQge1xuICAgICAgICBvcGFjaXR5OiAuODtcbiAgICB9XG5cbiAgICAucHJvZHVjdC1icmFuZC1jb250YWluZXIge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG5cbiAgICBAbWVkaWEgI3skbC11cH0ge1xuICAgICAgICBtYXJnaW4tdG9wOiAzMHB4O1xuICAgIH1cbn1cblxuLnByb2R1Y3QtdGl0bGUge1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgZm9udC1zaXplOiAkZm9udF9zaXplX3Byb2R1Y3RfdGl0bGUgIWltcG9ydGFudDtcbiAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgIG1hcmdpbjogMDtcbiAgICBtYXJnaW4tYm90dG9tOiAuNXJlbTtcbiAgICBjb2xvcjogaWYoc2V0dGluZy12YWx1ZSgncHJvZHVjdF9wYWdlX3VzZV9kZWZhdWx0X3dlYnNpdGVfY29sb3JzJyksICRjb2xvcl9nbG9iYWxfYmxhY2tfdGl0bGVzLCAkY29sb3JfcHJvZHVjdF9uYW1lKTtcblxuICAgIC5wcm9kdWN0LWJyYW5kIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgZm9udC1zaXplOiAkZm9udF9zaXplX3Byb2R1Y3RfdGl0bGUgIWltcG9ydGFudDtcblxuICAgICAgICBhIHtcbiAgICAgICAgICAgIGNvbG9yOiBpZihzZXR0aW5nLXZhbHVlKCdwcm9kdWN0X3BhZ2VfdXNlX2RlZmF1bHRfd2Vic2l0ZV9jb2xvcnMnKSwgJGNvbG9yX2dsb2JhbF9wdXJwbGVfdGV4dCwgJGNvbG9yX3Byb2R1Y3RfYnJhbmQpO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4ucHJvZHVjdC1oZWFkaW5nIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAmLnBhZGRpbmctcmlnaHQge1xuICAgICAgICBAaW5jbHVkZSByZW0ocGFkZGluZy1yaWdodCwgMjVweCk7XG4gICAgfVxufVxuXG4uc2hvcHdpcmVkLXNoYXJlLWJ1dHRvbnMge1xuICAgIGJveC1zaGFkb3c6IDAgMCA0cHggI2RhZGFkYTtcbiAgICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAyO1xufVxuXG4ucHJvZHVjdC1zaGFyZS10b2dnbGUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogMDtcbiAgICB0b3A6IDA7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIEBpbmNsdWRlIHJlbShmb250LXNpemUsIDI1cHgpO1xuICAgIHotaW5kZXg6IDI7XG4gICAgY29sb3I6IGlmKHNldHRpbmctdmFsdWUoJ3Byb2R1Y3RfcGFnZV91c2VfZGVmYXVsdF93ZWJzaXRlX2NvbG9ycycpLCAkY29sb3JfZ2xvYmFsX2JsYWNrX2ljb25zLCAkY29sb3JfcHJvZHVjdF9zb2NpYWxfc2hhcmluZ19pY29uKTtcbn1cblxuLnByb2R1Y3Qtc2hhcmUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogMDtcbiAgICBAaW5jbHVkZSByZW0odG9wLCAzNXB4KTtcbiAgICBtYXJnaW4tdG9wOiAuNXJlbTtcblxuICAgIC5zaGFyZS1tZW51IHtcbiAgICAgICAgYmFja2dyb3VuZDogaWYoc2V0dGluZy12YWx1ZSgnd2Vic2l0ZV9jb2xvdXJzX3VzZV9kZWZhdWx0X3dlYnNpdGVfY29sb3JzJyksICNmOWY4ZjcsICRjb2xvcl93ZWJzaXRlX3BhZ2VfYmFja2dyb3VuZCk7XG4gICAgfVxufVxuXG4ucHJvZHVjdC1zdGFycyB7XG4gICAgbWFyZ2luLWJvdHRvbTogLjVyZW07XG59XG5cbi5wcm9kdWN0LWNvbnRlbnQge1xuICAgIG1hcmdpbi10b3A6IDEuNXJlbTtcbn1cblxuLmNvbnRlbnQgLnJlbGF0ZWQtcHJvZHVjdHMge1xuICAgIG1hcmdpbi1ib3R0b206IC0ycmVtO1xufVxuXG4uaW5mby1za3Uge1xuICAgIGZvbnQtc2l6ZTogMS4wMXJlbTtcbiAgICBjb2xvcjogaWYoc2V0dGluZy12YWx1ZSgncHJvZHVjdF9wYWdlX3VzZV9kZWZhdWx0X3dlYnNpdGVfY29sb3JzJyksICRjb2xvcl9nbG9iYWxfYmxhY2tfdGV4dCwgJGNvbG9yX3Byb2R1Y3RfY29kZSk7XG5cbiAgICBzcGFuIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICB9XG59XG5cbi5wcm9kdWN0LWdhbGxlcnktbWFpbi1waG90byB7XG4gICAgY3Vyc29yOiBhdXRvO1xuXG4gICAgJltkYXRhLXNyY10sXG4gICAgJltkYXRhLWZhbmN5Ym94LXRyaWdnZXJdIHtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIH1cbn1cblxuLnByb2R1Y3QtY2Fyb3VzZWwge1xuICAgIG1hcmdpbi10b3A6IDI0cHg7XG5cbiAgICAubW9kLXZpZGVvIC5pbWFnZS1jb250YWluZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBpZihzZXR0aW5nLXZhbHVlKCdwcm9kdWN0X3BhZ2VfdXNlX2RlZmF1bHRfd2Vic2l0ZV9jb2xvcnMnKSwgJGNvbG9yX2dsb2JhbF9saWdodF9iYWNrZ3JvdW5kcywgJGNvbG9yX3Byb2R1Y3RfdmlkZW9fYmFja2dyb3VuZCk7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcblxuICAgICAgICBpIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgQGluY2x1ZGUgdmVydGljYWwtYWxpZ24oYWJzb2x1dGUpO1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogNDRweDtcbiAgICAgICAgICAgIGNvbG9yOiBpZihzZXR0aW5nLXZhbHVlKCdwcm9kdWN0X3BhZ2VfdXNlX2RlZmF1bHRfd2Vic2l0ZV9jb2xvcnMnKSwgJGNvbG9yX2dsb2JhbF9hY2NlbnRfY29sb3VyLCB3aGl0ZSk7XG5cbiAgICAgICAgICAgICZbY2xhc3MqPVwiZmEtXCJdIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSByZW0oZm9udC1zaXplLCA2MHB4KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5hcnJvdyArIC5zbGljay1saXN0IHtcbiAgICAgICAgbWFyZ2luOiAwIDMwcHg7XG4gICAgfVxuXG4gICAgLnNsaWNrLXNsaWRlIHtcbiAgICAgICAgcGFkZGluZzogMCAxMnB4O1xuICAgIH1cblxuICAgIC5hcnJvdyB7XG4gICAgICAgIHBhZGRpbmc6IC41cmVtO1xuICAgIH1cbn1cblxuLmluZm8tY29kZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogLjdyZW07XG59XG5cbi5wcm9kdWN0LXJycCB7XG4gICAgbWFyZ2luLXRvcDogLjdyZW07XG59XG5cbi8vIHByb2R1Y3QgcmFpdGluZ1xuLnByb2R1Y3QtcmFpdGluZyB7XG4gICAgY29sb3I6IGlmKHNldHRpbmctdmFsdWUoJ3Byb2R1Y3RfcGFnZV91c2VfZGVmYXVsdF93ZWJzaXRlX2NvbG9ycycpLCAjZmY5NzBiLCAkY29sb3JfcHJvZHVjdF9yZXZpZXdfc3RhcnMpO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgZm9udC1zaXplOiAxLjVyZW07XG5cbiAgICAub2ZmIHtcbiAgICAgICAgb3BhY2l0eTogLjU7XG4gICAgfVxuXG4gICAgc3BhbiArIHNwYW4ge1xuICAgICAgICBtYXJnaW4tbGVmdDogM3B4O1xuICAgIH1cblxuICAgICYgKyBzcGFuLCAmICsgYSB7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICBtYXJnaW4tbGVmdDogMTBweDtcbiAgICAgICAgZm9udC1zaXplOiAxLjAxcmVtO1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICBmb250LWZhbWlseTogJGZvbnRfc2Vjb25kO1xuICAgICAgICBjb2xvcjogJGNvbG91cl9ib2R5dHh0O1xuICAgIH1cblxuICAgIC5wcm9kdWN0LXJldmlld3MgJiB7XG4gICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIG1hcmdpbi10b3A6IC4zcmVtO1xuXG4gICAgICAgIHNwYW4gKyBzcGFuIHtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4ucHJvZHVjdC1icmFuZCB7XG4gICAgZm9udC1zaXplOiAxLjAxcmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuXG4gICAgc3BhbiB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgfVxufVxuXG4vLyBwcm9kdWN0IHByaWNlc1xuLmhpZGRlbi1wcmljZSB7XG4gICAgZm9udC1zaXplOiAuODVyZW07XG4gICAgbGluZS1oZWlnaHQ6IDE7XG5cbiAgICBhIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgfVxuXG4gICAgLnByb2R1Y3QtY29udGFpbmVyICYge1xuICAgICAgICBmb250LXNpemU6IC45NDVyZW07XG4gICAgfVxufVxuXG4ucHJvZHVjdC1zYWxlLXByaWNlIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udF9zZWNvbmQ7XG4gICAgZm9udC1zaXplOiAkZm9udF9zaXplX3Byb2R1Y3RfcHJpY2U7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBjb2xvcjogaWYoc2V0dGluZy12YWx1ZSgncHJvZHVjdF9wYWdlX3VzZV9kZWZhdWx0X3dlYnNpdGVfY29sb3JzJyksICRjb2xvcl9nbG9iYWxfcmVkX2FjY2VudF9jb2xvdXIsICRjb2xvcl9wcm9kdWN0X3NhbGVfcHJpY2UpO1xufVxuXG4ucHJvZHVjdC1wcmljZSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGZvbnQtc2l6ZTogJGZvbnRfc2l6ZV9wcm9kdWN0X3ByaWNlO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgY29sb3I6IGlmKHNldHRpbmctdmFsdWUoJ3Byb2R1Y3RfcGFnZV91c2VfZGVmYXVsdF93ZWJzaXRlX2NvbG9ycycpLCAkY29sb3JfZ2xvYmFsX3JlZF9hY2NlbnRfY29sb3VyLCAkY29sb3JfcHJvZHVjdF9wcmljZV9ub19zYWxlKTtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgZm9udC1mYW1pbHk6ICRmb250X3NlY29uZDtcbiAgICBtYXJnaW4tcmlnaHQ6IC43NXJlbTtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG59XG5cbi5oYXMtc2FsZS1wcmljZSB7XG4gICAgLnByb2R1Y3Qtc2FsZS1wcmljZSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAuNzVyZW07XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIH1cbiAgICAucHJvZHVjdC1wcmljZSB7XG4gICAgICAgIGNvbG9yOiBpZihzZXR0aW5nLXZhbHVlKCdwcm9kdWN0X3BhZ2VfdXNlX2RlZmF1bHRfd2Vic2l0ZV9jb2xvcnMnKSwgJGNvbG9yX2dsb2JhbF9ibGFja190ZXh0LCAkY29sb3JfcHJvZHVjdF9vbGRfcHJpY2UpO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbGluZS10aHJvdWdoO1xuICAgICAgICBmb250LXNpemU6IDEuMTZyZW07XG4gICAgfVxufVxuXG4ucHJvZHVjdC1wcmljZS1zdWJzY3JpcHRpb24ge1xuICAgIGNvbG9yOiAjN0Y4Mzg2O1xuICAgIEBpbmNsdWRlIHJlbShmb250LXNpemUsIDE0cHgpO1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgZm9udC1mYW1pbHk6ICRmb250X2JvZHk7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIEBpbmNsdWRlIHJlbShwYWRkaW5nLWxlZnQsIDApO1xuICAgIEBpbmNsdWRlIHJlbShtYXJnaW4tbGVmdCwgLTVweCk7XG4gICAgQGluY2x1ZGUgcmVtKHRvcCwgMXB4KTtcblxuICAgIC5oYXMtc2FsZS1wcmljZSAmIHtcbiAgICAgICAgLy9AaW5jbHVkZSByZW0odG9wLCAtMnB4KTtcbiAgICB9XG59XG5cbi5wcm9kdWN0LWJ1eS1wcmVvcmRlciB7XG4gICAgY29sb3I6ICRibGFjaztcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgZm9udC1mYW1pbHk6ICRmb250X3NlY29uZDtcbiAgICBAaW5jbHVkZSByZW0oZm9udC1zaXplLCAxNXB4KTtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIEBpbmNsdWRlIHJlbShwYWRkaW5nLCAxMnB4IDE1cHggMTJweCAwKTtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIHRvcDogMTBweDtcblxuICAgIC5pbm5lciB7XG4gICAgICAgIC8vQGluY2x1ZGUgcmVtKG1hcmdpbi1sZWZ0LCAzNXB4KTtcbiAgICB9XG5cbiAgICBzdHJvbmcge1xuICAgICAgICBjb2xvcjogI0NBMjQxNDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICB9XG5cbiAgICAmICsgLndpc2hsaXN0LWxpbmsge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgfVxufVxuXG4ucHJvZHVjdC1zaGlwLWRhdGUge1xuICAgIGNvbG9yOiAjNEExNjM5O1xuICAgIEBpbmNsdWRlIHJlbShmb250LXNpemUsIDEzcHgpO1xuICAgIEBpbmNsdWRlIHJlbShwYWRkaW5nLCAwIDEycHgpO1xuICAgIEBpbmNsdWRlIHJlbShtYXJnaW4tYm90dG9tLCAxNXB4KTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAuaW5uZXIge1xuICAgICAgICBAaW5jbHVkZSByZW0obWFyZ2luLWxlZnQsIDEwcHgpO1xuICAgIH1cblxuICAgIHN2ZyB7XG4gICAgICAgIEBpbmNsdWRlIHJlbShtYXJnaW4tcmlnaHQsIDEwcHgpO1xuICAgICAgICBAaW5jbHVkZSByZW0obWFyZ2luLXRvcCwgLTJweCk7XG4gICAgICAgIEBpbmNsdWRlIHZlcnRpY2FsLWFsaWduKGFic29sdXRlKTtcbiAgICAgICAgbGVmdDogMDtcbiAgICB9XG59XG5cbi5idWxrLXNhdmluZ3MtdG9nZ2xlIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdGV4dC10cmFuc2Zvcm06IGxvd2VyY2FzZTtcbiAgICBjb2xvcjogJGNvbG91cl9ib2R5dHh0O1xuICAgIGZvbnQtc2l6ZTogLjk0NXJlbTtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjg7XG4gICAgbWFyZ2luLXRvcDogLjVyZW07XG5cbiAgICBAaW5jbHVkZSBpcy1hY3RpdmUge1xuICAgICAgICBjb2xvcjogJGNvbG91cl9ib2R5dHh0O1xuICAgIH1cbn1cblxuLy8gaGlkZSBzdG9jayByZXF1ZXN0IHdoZW4gaW5zdG9ja1xuLmluLXN0b2NrIC5zdG9jay1yZXF1ZXN0cy1jb250YWluZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5wcm9kdWN0LWZvcm0ge1xuICAgIG1hcmdpbi10b3A6IDFyZW07XG5cdFxuXHQuaW5mby1leHRyYSB7XG5cdFx0bGFiZWwge1xuXHRcdFx0Zm9udC1zaXplOiAkZm9udF9zaXplX3Byb2R1Y3RfZXh0cmFzO1xuXHRcdH1cdFxuXHR9XG59XG5cbi5wcm9kdWN0LXF1YW50aXR5IHtcbiAgICBtYXJnaW4tdG9wOiAxcmVtO1xuXG4gICAgLnF0eS1maWVsZCB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICB9XG5cbiAgICAucXR5LWZpZWxkICsgc3BhbiB7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDEuNDVyZW07XG4gICAgICAgIGZvbnQtc2l6ZTogLjg3M3JlbTtcbiAgICB9XG59XG5cbi5wcm9kdWN0LWJ1eSB7XG4gICAgLmJ1dHRvbiB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgIH1cblxuICAgIC5wcm9kdWN0LWFkZC1idXR0b24ge1xuICAgICAgICBiYWNrZ3JvdW5kOiBpZihzZXR0aW5nLXZhbHVlKCdwcm9kdWN0X3BhZ2VfdXNlX2RlZmF1bHRfd2Vic2l0ZV9jb2xvcnMnKSwgJGNvbG9yX2dsb2JhbF9saWdodF9ncmVlbl9iYWNrZ3JvdW5kcywgJGNvbG9yX3Byb2R1Y3RfYWRkX2Jhc2tldF9iYWNrZ3JvdW5kKTtcbiAgICAgICAgY29sb3I6IGlmKHNldHRpbmctdmFsdWUoJ3Byb2R1Y3RfcGFnZV91c2VfZGVmYXVsdF93ZWJzaXRlX2NvbG9ycycpLCAkY29sb3JfZ2xvYmFsX21haW5fYnV0dG9uX3RleHQsICRjb2xvcl9wcm9kdWN0X2FkZF9iYXNrZXRfdGV4dCk7XG4gICAgfVxuXG4gICAgLm91dC1vZi1zdG9jayB7XG4gICAgICAgIGJhY2tncm91bmQ6IGlmKHNldHRpbmctdmFsdWUoJ3Byb2R1Y3RfcGFnZV91c2VfZGVmYXVsdF93ZWJzaXRlX2NvbG9ycycpLCAkY29sb3JfZ2xvYmFsX2xpZ2h0X2dyZWVuX2JhY2tncm91bmRzLCAkY29sb3JfcHJvZHVjdF9vdXRfc3RvY2tfYmFja2dyb3VuZCk7XG4gICAgICAgIGNvbG9yOiBpZihzZXR0aW5nLXZhbHVlKCdwcm9kdWN0X3BhZ2VfdXNlX2RlZmF1bHRfd2Vic2l0ZV9jb2xvcnMnKSwgJGNvbG9yX2dsb2JhbF9tYWluX2J1dHRvbl90ZXh0LCAkY29sb3JfcHJvZHVjdF9vdXRfc3RvY2tfdGV4dCk7XG5cbiAgICAgICAgJi5kaXNhYmxlZCB7XG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLndpc2hsaXN0LWxpbmsge1xuICAgICAgICBiYWNrZ3JvdW5kOiBpZihzZXR0aW5nLXZhbHVlKCdwcm9kdWN0X3BhZ2VfdXNlX2RlZmF1bHRfd2Vic2l0ZV9jb2xvcnMnKSwgJGNvbG9yX2dsb2JhbF92ZXJ5X2xpZ2h0X3BpbmssICRjb2xvcl9wcm9kdWN0X2FkZF93aXNobGlzdF9iYWNrZ3JvdW5kKTtcbiAgICAgICAgY29sb3I6IGlmKHNldHRpbmctdmFsdWUoJ3Byb2R1Y3RfcGFnZV91c2VfZGVmYXVsdF93ZWJzaXRlX2NvbG9ycycpLCAkY29sb3JfZ2xvYmFsX3JlZF9hY2NlbnRfY29sb3VyLCAkY29sb3JfcHJvZHVjdF9hZGRfd2lzaGxpc3RfdGV4dCk7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMS4zcmVtO1xuICAgIH1cbn1cblxuLnByb2R1Y3QtYWRkLWJ1dHRvbi5pbi1zdG9jay1idXR0b24sIC5wcm9kdWN0LWNvbnRhaW5lciAub3JkZXItcXVhbnRpdHkge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLnByb2R1Y3QtYWRkLWJ1dHRvbi5vdXQtb2Ytc3RvY2sge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG59XG5cbi5wcm9kdWN0LWFkZC1idXR0b24ub3V0LW9mLXN0b2NrIHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xufVxuXG4ucHJvZHVjdC1hZGQtYnV0dG9uLm91dC1vZi1zdG9jay5tb2QtaW5saW5lIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudDtcbn1cblxuLmluLXN0b2NrIHtcbiAgICAucHJvZHVjdC1hZGQtYnV0dG9uLmluLXN0b2NrLWJ1dHRvbiwgJi5wcm9kdWN0LWNvbnRhaW5lciAub3JkZXItcXVhbnRpdHkge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAucHJvZHVjdC1hZGQtYnV0dG9uLm91dC1vZi1zdG9jayB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG59XG5cbi5wcm9kdWN0LWNvc3Qge1xuICAgIGxpbmUtaGVpZ2h0OiAxLjY7XG5cbiAgICAubGFiZWxzIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICBsaW5lLWhlaWdodDogMS41O1xuICAgIH1cblxuICAgIC5sYWJlbC5wcmltYXJ5IHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAuNzVyZW07XG4gICAgfVxufVxuXG4ucHJvZHVjdC1idXR0b25zIHtcbiAgICAuYnV0dG9uLCAud2lzaGxpc3QtbGluaywgLnByb2R1Y3QtaW5mby1yZXdhcmRzIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICBtYXJnaW4tdG9wOiAxLjVyZW07XG4gICAgfVxuXG4gICAgLndpc2hsaXN0LWxpbmsuc2luZ2xlIHtcbiAgICAgICAgbWFyZ2luLXRvcDogLjVyZW07XG4gICAgfVxufVxuXG4ucHJvZHVjdC1pbmZvIHtcbiAgICAucHJvZHVjdC1zdG9jay1jb250YWluZXIge1xuICAgICAgICBAaW5jbHVkZSByZW0obWFyZ2luLWJvdHRvbSwgMTBweCk7XG4gICAgfVxuXG4gICAgLnByb2R1Y3Qtc3RvY2stdHJ1ZSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgLmluLXN0b2NrICYge1xuXG4gICAgICAgIC5wcm9kdWN0LXN0b2NrLXRydWUge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIH1cblxuICAgICAgICAucHJvZHVjdC1zdG9jay1mYWxzZSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnByb2R1Y3QtY29udGFpbmVyOm5vdCguaW4tc3RvY2spICYge1xuXG4gICAgICAgIC5wcm9kdWN0LXN0b2NrLXRydWUge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5wcm9kdWN0LXN0b2NrLWZhbHNlIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4ucHJvZHVjdC1pbmZvLXJld2FyZHMge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nLWxlZnQ6IDIuNXJlbTtcbiAgICBmb250LXNpemU6IC44NzNyZW07XG4gICAgbWFyZ2luOiAwO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG5cbiAgICAmOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXFxlOTRjXCI7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkaWNvbjtcbiAgICAgICAgY29sb3I6IGlmKHNldHRpbmctdmFsdWUoJ3Byb2R1Y3RfcGFnZV91c2VfZGVmYXVsdF93ZWJzaXRlX2NvbG9ycycpLCAkY29sb3JfZ2xvYmFsX3JlZF9hY2NlbnRfY29sb3VyLCAkY29sb3JfcHJvZHVjdF9yZXdhcmRfcG9pbnRzKTtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgQGluY2x1ZGUgdmVydGljYWwtYWxpZ24oYWJzb2x1dGUpO1xuICAgICAgICBmb250LXNpemU6IDEuOHJlbTtcbiAgICB9XG5cbiAgICBwIHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgIH1cblxuICAgIHNwYW4ge1xuICAgICAgICBjb2xvcjogaWYoc2V0dGluZy12YWx1ZSgncHJvZHVjdF9wYWdlX3VzZV9kZWZhdWx0X3dlYnNpdGVfY29sb3JzJyksICRjb2xvcl9nbG9iYWxfcmVkX2FjY2VudF9jb2xvdXIsICRjb2xvcl9wcm9kdWN0X3Jld2FyZF9wb2ludHMpO1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgIH1cbn1cblxuLnByb2R1Y3QtYnVsay1wcmljaW5nIHtcbiAgICBtYXJnaW4tdG9wOiAxLjVyZW07XG5cbiAgICB0YWJsZSB7XG4gICAgICAgIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG4gICAgICAgIGJvcmRlcjogMDtcblxuICAgICAgICB0Ym9keSwgdHIsIHRkIHtcbiAgICAgICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgfVxuXG4gICAgICAgIHRkIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHJlbShwYWRkaW5nLCAxMHB4IDIwcHgpO1xuICAgICAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIGlmKHNldHRpbmctdmFsdWUoJ3dlYnNpdGVfY29sb3Vyc191c2VfZGVmYXVsdF93ZWJzaXRlX2NvbG9ycycpLCAjZjlmOGY3LCAkY29sb3Jfd2Vic2l0ZV9wYWdlX2JhY2tncm91bmQpO1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIGlmKHNldHRpbmctdmFsdWUoJ3dlYnNpdGVfY29sb3Vyc191c2VfZGVmYXVsdF93ZWJzaXRlX2NvbG9ycycpLCAjZjlmOGY3LCAkY29sb3Jfd2Vic2l0ZV9wYWdlX2JhY2tncm91bmQpO1xuICAgICAgICB9XG5cbiAgICAgICAgdGJvZHkgdHIge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICAgICAgfVxuXG4gICAgICAgIHRib2R5IHRyOm50aC1jaGlsZCgybikge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogI2YzZjBlZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGgzIHtcbiAgICAgICAgQGluY2x1ZGUgcmVtKGZvbnQtc2l6ZSwgMThweCk7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IC43cmVtO1xuICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgIH1cbn1cblxuLnByb2R1Y3QtdGFicyB7XG4gICAgbWFyZ2luLXRvcDogMS41cmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDNyZW07XG5cbiAgICAuYWNjb3JkaW9uIHtcbiAgICAgICAgY29sb3I6ICRjb2xvdXJfYm9keXR4dDtcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgfVxuXG4gICAgLmFjY29yZGlvbi1pdGVtIHtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxLjA5cmVtO1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCBpZihzZXR0aW5nLXZhbHVlKCdwcm9kdWN0X3BhZ2VfdXNlX2RlZmF1bHRfd2Vic2l0ZV9jb2xvcnMnKSwgJGNvbG9yX2dsb2JhbF9saWdodF9iYWNrZ3JvdW5kcywgJGNvbG9yX3Byb2R1Y3RfdGFic19oZWFkaW5nX2JhY2tncm91bmQpO1xuICAgIH1cblxuICAgIC5hY2NvcmRpb24tY29udGVudCB7XG4gICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgIHBhZGRpbmc6IDEuNXJlbSAyLjE4cmVtO1xuICAgICAgICBmb250LXNpemU6IC44NzNyZW07XG4gICAgICAgIFxuICAgICAgICBwIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJGZvbnRfc2l6ZV9wcm9kdWN0X2Rlc2NyaXB0aW9uO1xuICAgICAgICB9XG5cbiAgICAgICAgcDpsYXN0LW9mLXR5cGUge1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmFjY29yZGlvbi10aXRsZSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IGlmKHNldHRpbmctdmFsdWUoJ3Byb2R1Y3RfcGFnZV91c2VfZGVmYXVsdF93ZWJzaXRlX2NvbG9ycycpLCAkY29sb3JfZ2xvYmFsX2xpZ2h0X2JhY2tncm91bmRzLCAkY29sb3JfcHJvZHVjdF90YWJzX2hlYWRpbmdfYmFja2dyb3VuZCk7XG4gICAgICAgIGNvbG9yOiBpZihzZXR0aW5nLXZhbHVlKCdwcm9kdWN0X3BhZ2VfdXNlX2RlZmF1bHRfd2Vic2l0ZV9jb2xvcnMnKSwgJGNvbG9yX2dsb2JhbF9ibGFja190aXRsZXMsICRjb2xvcl9wcm9kdWN0X3RhYnNfaGVhZGluZ190ZXh0KTtcbiAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICBmb250LXNpemU6ICRmb250X3NpemVfcHJvZHVjdF90YWJfaGVhZGluZ3M7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udF9zZWNvbmQ7XG4gICAgICAgIHBhZGRpbmc6IDEuMDlyZW0gMi4xOHJlbTtcblxuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgcmlnaHQ6IDEuNXJlbTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4xNnJlbTtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXFxlOTM3XCI7XG4gICAgICAgICAgICBmb250LWZhbWlseTogJGljb247XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuaXMtYWN0aXZlID4gLmFjY29yZGlvbi10aXRsZTpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiBcIlxcZTkzZlwiO1xuICAgIH1cblxuICAgIDpsYXN0LWNoaWxkOm5vdCguaXMtYWN0aXZlKSA+IC5hY2NvcmRpb24tdGl0bGUsIDpsYXN0LWNoaWxkID4gLmFjY29yZGlvbi1jb250ZW50Omxhc3QtY2hpbGQge1xuICAgICAgICBib3JkZXI6IDA7XG4gICAgfVxufVxuXG4ucHJvZHVjdC1yZXZpZXdzIHtcbiAgICBAaW5jbHVkZSByZW0oZm9udC1zaXplLCAxMnB4KTtcbiAgICBsaW5lLWhlaWdodDogMS4yO1xuXG4gICAgaDQge1xuICAgICAgICBAaW5jbHVkZSByZW0oZm9udC1zaXplLCAxNHB4KTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICB9XG5cbiAgICBwIHtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgICB9XG5cbiAgICAucmV2aWV3LWF1dGhvciB7XG4gICAgICAgIEBpbmNsdWRlIHJlbShmb250LXNpemUsIDEzcHgpO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAuM3JlbTtcbiAgICB9XG5cbiAgICAuY3VzdG9tZXItcmV2aWV3IHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICB9XG59XG5cbltuYW1lPSdzZW5kX3JlY29tbWVuZGF0aW9uX2VtYWlsJ106ZGlzYWJsZWQge1xuICAgIG9wYWNpdHk6IC44O1xuICAgIGN1cnNvcjogZGVmYXVsdDtcbn1cblxuLy8gdmFyaWF0aW9uIGJ1dHRvbnNcbi5wcm9kdWN0LW9wdGlvbi1jb250YWluZXIge1xuICAgIC5oYXMtdGlwIHtcbiAgICAgICAgYm9yZGVyOiAwO1xuICAgIH1cbiAgICAubm90ZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogLjg3NXJlbTtcbiAgICB9XG4gICAgLnJlY3RhbmdsZSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgbWFyZ2luOiAwIDVweCA1cHggMDtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICBmb250LXNpemU6IC43MjdyZW07XG5cbiAgICAgICAgLmlubmVyIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgICAgICAgICAgcGFkZGluZzogLjcyN3JlbSAxcmVtO1xuICAgICAgICAgICAgY29sb3I6ICRjb2xvdXJfYm9keXR4dDtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IGlmKHNldHRpbmctdmFsdWUoJ3Byb2R1Y3RfcGFnZV91c2VfZGVmYXVsdF93ZWJzaXRlX2NvbG9ycycpLCAkY29sb3JfZ2xvYmFsX2xpZ2h0X2JhY2tncm91bmRzLCAkY29sb3JfcHJvZHVjdF92YXJpYW50X25vdF9zZWxlY3RlZF9iYWNrZ3JvdW5kKTtcbiAgICAgICAgfVxuXG4gICAgICAgICYuYWN0aXZlIC5pbm5lciB7XG4gICAgICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IGlmKHNldHRpbmctdmFsdWUoJ3Byb2R1Y3RfcGFnZV91c2VfZGVmYXVsdF93ZWJzaXRlX2NvbG9ycycpLCAkY29sb3JfZ2xvYmFsX2FjY2VudF9jb2xvdXIsICRjb2xvcl9wcm9kdWN0X3ZhcmlhbnRfc2VsZWN0ZWRfYmFja2dyb3VuZCkgIWltcG9ydGFudDtcbiAgICAgICAgfVxuXG4gICAgICAgIGlucHV0IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICAmLmNvbG9yIHtcblxuICAgICAgICAgICAgJi5kYXJrIC5pbm5lciB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOm5vdCguZGFyaykgLmlubmVyIHtcbiAgICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkYmxhY2s7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogLjY1NXJlbSAxcmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG5cbiNwcm9kdWN0LWluZm8udmlzaWJsZSB7XG4gICAgb3BhY2l0eTogMSAhaW1wb3J0YW50O1xufVxuXG4jaW1hZ2Utem9vbWVyLW92ZXJsYXkuaGlkZGVuLCAuaW1hZ2Utem9vbWVyLXNxdWFyZS5oaWRkZW4ge1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbiAhaW1wb3J0YW50O1xufVxuLnByb2R1Y3Qtc3Vic2NyaXB0aW9uIHtcblx0PiBkaXYge1xuXHRcdG1hcmdpbi1ib3R0b206IDFyZW07XG5cdFx0JjpmaXJzdC1jaGlsZCB7XG5cdFx0XHRib3JkZXItdG9wOiBzb2xpZCAxcHggJGNvbG9yX2dsb2JhbF9saWdodF9iYWNrZ3JvdW5kcztcblx0XHRcdHBhZGRpbmctdG9wOiAxcmVtO1xuXHRcdH1cblx0fVxufSIsIi8qICMtQ0hFQ0tPVVRfQkFTS0VUICovXG4uYmFza2V0IHtcbiAgICAucGFnZS10aXRsZSB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgY29sb3I6IGlmKHNldHRpbmctdmFsdWUoJ3Nob3BwaW5nX2Jhc2tldF91c2VfZGVmYXVsdF93ZWJzaXRlX2NvbG9ycycpLCAkY29sb3JfZ2xvYmFsX3B1cnBsZV90ZXh0LCAkY29sb3Jfc2hvcHBpbmdfYmFza2V0X3RpdGxlKTtcbiAgICAgICAgZm9udC1zaXplOiAkZm9udF9zaXplX2Jhc2tldF9wYWdlX3RpdGxlX2gxICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgQG1lZGlhICN7JHMtb25seX0ge1xuICAgICAgICAgICAgQGluY2x1ZGUgcmVtKGZvbnQtc2l6ZSwgMjRweCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAucGF5cGFsLWJ1dHRvbiB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgICAgICB3aWR0aDogMzAwcHg7XG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgbWluLWhlaWdodDogNDRweDtcbiAgICB9XG5cbiAgICAucGF5bWVudC1saXN0IHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMS41cmVtO1xuICAgIH1cblxuICAgICYtc3Vic2NyaXB0aW9uLWVycm9yIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yX2dsb2JhbF9ncmVlbl9hY2NlbnRfY29sb3VyO1xuICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICBAaW5jbHVkZSByZW0oZm9udC1zaXplLCAxNHB4KTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgQGluY2x1ZGUgcmVtKHBhZGRpbmcsIDEycHggMTJweCk7XG4gICAgICAgIEBpbmNsdWRlIHJlbShtYXJnaW4tYm90dG9tLCAxNXB4KTtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgIC5pbm5lciB7XG4gICAgICAgICAgICBAaW5jbHVkZSByZW0obWFyZ2luLWxlZnQsIDM1cHgpO1xuICAgICAgICB9XG5cbiAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHJlbShtYXJnaW4tcmlnaHQsIDEwcHgpO1xuICAgICAgICAgICAgQGluY2x1ZGUgcmVtKG1hcmdpbi10b3AsIC0xcHgpO1xuICAgICAgICAgICAgQGluY2x1ZGUgdmVydGljYWwtYWxpZ24oYWJzb2x1dGUpO1xuICAgICAgICAgICAgQGluY2x1ZGUgcmVtKGxlZnQsIDEycHgpO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uYmFza2V0LWZvcm0ge1xuICAgIG1hcmdpbi10b3A6IDJyZW07XG59XG5cbi5jb250aW51ZS1saW5rIHtcbiAgICBjb2xvcjogaWYoc2V0dGluZy12YWx1ZSgnc2hvcHBpbmdfYmFza2V0X3VzZV9kZWZhdWx0X3dlYnNpdGVfY29sb3JzJyksICRjb2xvcl9nbG9iYWxfYmxhY2tfdGV4dCwgJGNvbG9yX3Nob3BwaW5nX2Jhc2tldF9jb250aW51ZV9zaG9wcGluZyk7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nLWxlZnQ6IDEuNjZyZW07XG4gICAgZm9udC1mYW1pbHk6ICRmb250X3NlY29uZDtcbiAgICBmb250LXNpemU6ICRmb250X3NpemVfb3RoZXJfcGFnZV90aXRsZXNfaDQ7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcblxuICAgIGkge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogNTAlO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICBtYXJnaW4tdG9wOiAtLjVyZW07XG4gICAgICAgIHotaW5kZXg6IDE7XG4gICAgfVxufVxuXG4uYmFza2V0LXBheW1lbnQge1xuICAgIC5idXR0b24uY2hlY2tvdXQge1xuICAgICAgICBmb250LXNpemU6ICRmb250X3NpemVfYmFza2V0X2J1dHRvbjtcbiAgICAgICAgQGluY2x1ZGUgcmVtKHBhZGRpbmctdG9wLCAyMHB4KTtcbiAgICAgICAgQGluY2x1ZGUgcmVtKHBhZGRpbmctYm90dG9tLCAyMHB4KTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMS41cmVtO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBpZihzZXR0aW5nLXZhbHVlKCdzaG9wcGluZ19iYXNrZXRfdXNlX2RlZmF1bHRfd2Vic2l0ZV9jb2xvcnMnKSwgJGNvbG9yX2dsb2JhbF9ncmVlbl9hY2NlbnRfY29sb3VyLCAkY29sb3Jfc2hvcHBpbmdfYmFza2V0X3Byb2NlZWRfY2hlY2tvdXRfYmFja2dyb3VuZCk7XG4gICAgICAgIGNvbG9yOiBpZihzZXR0aW5nLXZhbHVlKCdzaG9wcGluZ19iYXNrZXRfdXNlX2RlZmF1bHRfd2Vic2l0ZV9jb2xvcnMnKSwgJGNvbG9yX2dsb2JhbF9tYWluX2J1dHRvbl90ZXh0LCAkY29sb3Jfc2hvcHBpbmdfYmFza2V0X3Byb2NlZWRfY2hlY2tvdXRfdGV4dCk7XG4gICAgfVxufVxuXG4uYmFza2V0LXRhYmxlIHtcbiAgICBmb250LXNpemU6ICRmb250X3NpemVfYmFza2V0X3RhYmxlX3NtYWxsO1xuXG4gICAgLmJhc2tldC1pdGVtLXRpdGxlIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgZm9udC1zaXplOiAkZm9udF9zaXplX2Jhc2tldF90YWJsZV9wcm9kdWN0O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAuNXJlbTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgY29sb3I6IGlmKHNldHRpbmctdmFsdWUoJ3Nob3BwaW5nX2Jhc2tldF91c2VfZGVmYXVsdF93ZWJzaXRlX2NvbG9ycycpLCAkY29sb3JfZ2xvYmFsX2JsYWNrX3RpdGxlcywgJGNvbG9yX3Nob3BwaW5nX2Jhc2tldF9wcm9kdWN0X25hbWUpO1xuICAgIH1cblxuICAgIC5wcm9kdWN0LWJyYW5kIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogLjdyZW07XG5cbiAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICBjb2xvcjogaWYoc2V0dGluZy12YWx1ZSgnc2hvcHBpbmdfYmFza2V0X3VzZV9kZWZhdWx0X3dlYnNpdGVfY29sb3JzJyksICRjb2xvcl9nbG9iYWxfcHVycGxlX3RleHQsICRjb2xvcl9zaG9wcGluZ19iYXNrZXRfYnJhbmRfbmFtZSk7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5iYXNrZXQtaXRlbS13aXNobGlzdCB7XG4gICAgY29sb3I6IGlmKHNldHRpbmctdmFsdWUoJ3Nob3BwaW5nX2Jhc2tldF91c2VfZGVmYXVsdF93ZWJzaXRlX2NvbG9ycycpLCAkY29sb3JfZ2xvYmFsX3JlZF9hY2NlbnRfY29sb3VyLCAkY29sb3Jfc2hvcHBpbmdfYmFza2V0X21vdmVfd2lzaGxpc3QpO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi1ib3R0b206IC41cmVtO1xuICAgIGZvbnQtc2l6ZTogJGZvbnRfc2l6ZV9iYXNrZXRfdGFibGVfc21hbGw7XG4gICAgcGFkZGluZy1sZWZ0OiAxLjJyZW07XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgaSwgc3BhbiB7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgfVxuXG4gICAgc3BhbiB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiA4cHg7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogdGV4dC10b3A7XG4gICAgfVxuXG4gICAgaSB7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIEBpbmNsdWRlIHZlcnRpY2FsLWFsaWduKGFic29sdXRlKTtcbiAgICAgICAgZm9udC1zaXplOiAxLjJyZW07XG4gICAgfVxuXG4gICAgJjpob3ZlciB7XG4gICAgICAgIGNvbG9yOiBpZihzZXR0aW5nLXZhbHVlKCdzaG9wcGluZ19iYXNrZXRfdXNlX2RlZmF1bHRfd2Vic2l0ZV9jb2xvcnMnKSwgJGNvbG9yX2dsb2JhbF9yZWRfYWNjZW50X2NvbG91ciwgJGNvbG9yX3Nob3BwaW5nX2Jhc2tldF9tb3ZlX3dpc2hsaXN0KTtcbiAgICB9XG59XG5cbi5iYXNrZXQtaXRlbSB7XG4gICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIGlmKHNldHRpbmctdmFsdWUoJ3Nob3BwaW5nX2Jhc2tldF91c2VfZGVmYXVsdF93ZWJzaXRlX2NvbG9ycycpLCAkY29sb3JfZ2xvYmFsX2xpZ2h0X2JhY2tncm91bmRzLCAkY29sb3Jfc2hvcHBpbmdfYmFza2V0X2l0ZW1fYm9yZGVyKTtcbiAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgIHBhZGRpbmc6IDEuNDVyZW07XG4gICAgQGluY2x1ZGUgcmVtKG1hcmdpbi1ib3R0b20sIDIwcHgpO1xuXG4gICAgLnNob3ctZm9yLW1lZGl1bSB7XG4gICAgICAgIC5sYWJlbCB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogLjVyZW07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuaGlkZS1mb3ItbWVkaXVtIHtcbiAgICAgICAgLmxhYmVsIHtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogLjVyZW07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuYmFza2V0LWl0ZW0tb3B0aW9ucyB7XG4gICAgICAgIGNvbG9yOiBpZihzZXR0aW5nLXZhbHVlKCdzaG9wcGluZ19iYXNrZXRfdXNlX2RlZmF1bHRfd2Vic2l0ZV9jb2xvcnMnKSwgJGNvbG9yX2dsb2JhbF9ibGFja190ZXh0LCAkY29sb3Jfc2hvcHBpbmdfYmFza2V0X29wdGlvbnMpO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAuN3JlbTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgICB9XG5cbiAgICAucHJpY2Uge1xuICAgICAgICBjb2xvcjogaWYoc2V0dGluZy12YWx1ZSgnc2hvcHBpbmdfYmFza2V0X3VzZV9kZWZhdWx0X3dlYnNpdGVfY29sb3JzJyksICRjb2xvcl9nbG9iYWxfcHVycGxlX3RleHQsICRjb2xvcl9zaG9wcGluZ19iYXNrZXRfaXRlbV9wcmljZSk7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgIGZvbnQtc2l6ZTogJGZvbnRfc2l6ZV9iYXNrZXRfdGFibGVfcHJpY2U7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IC43cmVtO1xuICAgICAgICBmb250LWZhbWlseTogJG11c2VvX3NsYWI7XG4gICAgfVxuXG4gICAgLnJlbW92ZS1idXR0b24ge1xuICAgICAgICBjb2xvcjogaWYoc2V0dGluZy12YWx1ZSgnc2hvcHBpbmdfYmFza2V0X3VzZV9kZWZhdWx0X3dlYnNpdGVfY29sb3JzJyksICRjb2xvcl9nbG9iYWxfcmVkX2FjY2VudF9jb2xvdXIsICRjb2xvcl9zaG9wcGluZ19iYXNrZXRfcmVtb3ZlKTtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBtYXJnaW46IDFyZW0gMDtcbiAgICB9XG5cbiAgICAuYmFza2V0LXVwZGF0ZSB7XG4gICAgICAgIGNvbG9yOiBpZihzZXR0aW5nLXZhbHVlKCd3ZWJzaXRlX2NvbG91cnNfdXNlX2RlZmF1bHRfd2Vic2l0ZV9jb2xvcnMnKSwgJGNvbG9yX2dsb2JhbF9hY2NlbnRfY29sb3VyLCAkY29sb3Jfd2Vic2l0ZV9hY2NlbnQpO1xuICAgICAgICBtYXJnaW4tdG9wOiAuN3JlbTtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBmb250LWZhbWlseTogJGZvbnRfYm9keTtcbiAgICB9XG5cbiAgICAucXVhbnRpdHkge1xuICAgICAgICBhIHtcbiAgICAgICAgICAgIGNvbG9yOiAkY29sb3VyX2JvZHl0eHQ7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogLjVyZW07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAbWVkaWEgI3skbS11cH0ge1xuICAgICAgICAubnVtYmVyLXRvZ2dsZSB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgICAgfVxuICAgIH1cbn1cblxuIEBtZWRpYSAjeyRzLW9ubHl9IHtcbiAgICAgLmJhc2tldC1pdGVtIHtcbiAgICAgICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcbiAgICAgfVxuXG4gICAgIC5zbWFsbC00IHtcbiAgICAgICAgIHdpZHRoOiA0MCU7XG4gICAgIH1cblxuICAgICAuc21hbGwtOCB7XG4gICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgICB3aWR0aDogNjAlO1xuICAgICB9XG5cbiAgICAuYmFza2V0LWl0ZW0gLnNtYWxsLXJpZ2h0IHtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgIH1cbn1cblxuLmJhc2tldC12b3VjaGVyIHtcbiAgICBmb250LXNpemU6IC44NzNyZW07XG4gICAgcGFkZGluZy1ib3R0b206IC4yNXJlbTtcbiAgICBtYXJnaW46IDFyZW0gMDtcblxuICAgICYub3BlbiB7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIG1hcmdpbjogMDtcblxuICAgICAgICBAbWVkaWEgI3skbS1kb3dufSB7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogLjVyZW07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLXRvZ2dsZSB7XG4gICAgICAgIGNvbG9yOiAkY29sb3VyX21haW47XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICBmb250LXNpemU6IC44NzNyZW07XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udF9ib2R5O1xuICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICBtYXJnaW4tdG9wOiAuNXJlbTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogLjVyZW07XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBjb2xvcjogJGNvbG91cl9tYWluO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4udGl0bGUtbGluZSB7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBmb250LXNpemU6IDEuMDFyZW07XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmctbGVmdDogMy4yN3JlbTtcbiAgICBjb2xvcjogIzAwMDAwMDtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW07XG4gICAgbGluZS1oZWlnaHQ6IDE7XG5cbiAgICBpIHtcbiAgICAgICAgZm9udC1zaXplOiAyLjE4cmVtO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICBAaW5jbHVkZSB2ZXJ0aWNhbC1hbGlnbihhYnNvbHV0ZSk7XG4gICAgfVxufVxuXG4uYmFza2V0LWJveCB7XG4gICAgQGluY2x1ZGUgcmVtKGZvbnQtc2l6ZSwgMTJweCk7XG5cbiAgICAuYmFza2V0ICYge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxLjI1cmVtO1xuICAgIH1cblxuICAgICZfdGl0bGUge1xuICAgICAgICBmb250LXNpemU6ICRmb250X3NpemVfb3JkZXJfc3VtbWFyeV90aXRsZXM7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcblxuICAgICAgICBpIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMi4ycmVtO1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgbWF4LXdpZHRoOiAzMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgaSwgc3BhbiB7XG4gICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICB9XG5cbiAgICAgICAgaSArIHNwYW4ge1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDE1cHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAbWVkaWEgI3skbC11cH0ge1xuICAgICAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgICAgICAgQGluY2x1ZGUgcmVtKHBhZGRpbmcsIDE3cHgpO1xuICAgIH1cbn1cblxuLmJhc2tldC10b3RhbHMge1xuICAgIGZvbnQtc2l6ZTogJGZvbnRfc2l6ZV9vcmRlcl90b3RhbHM7XG4gICAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgICBtYXJnaW46IDA7XG5cbiAgICAmLnVuc3RyaXBlZCB0Ym9keSB7XG4gICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuXG4gICAgICAgIHRyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICAgIGJvcmRlcjogMDtcbiAgICB9XG4gICAgdGZvb3Qge1xuICAgICAgICBib3JkZXI6IDA7XG4gICAgfVxuICAgIHRoZWFkIHtcbiAgICAgICAgLmJhc2tldC10b3RhbHMge1xuICAgICAgICAgICAgdHIge1xuICAgICAgICAgICAgICAgIHRkIHtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICB0ciB7XG4gICAgICAgIHRkIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IC41cmVtO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNjtcblxuICAgICAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAuZW1wdHkgdGQge1xuICAgICAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgICAgICBwYWRkaW5nOiAuNHJlbTtcbiAgICB9XG4gICAgYSB7XG4gICAgICAgIGNvbG9yOiAkY29sb3VyX21haW47XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgIH1cbiAgICB0cjpsYXN0LWNoaWxkIHtcbiAgICAgICAgdGQge1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IC43cmVtO1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IC43cmVtO1xuICAgICAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNmM2YwZWU7XG4gICAgICAgIH1cbiAgICAgICAgdGQ6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICBmb250LXNpemU6ICRmb250X3NpemVfb3JkZXJfZ3JhbmRfdG90YWxzO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuQG1lZGlhICN7JGwtdXB9IHtcbiAgICAuYmFza2V0LWluZm8ge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBpZihzZXR0aW5nLXZhbHVlKCdzaG9wcGluZ19iYXNrZXRfdXNlX2RlZmF1bHRfd2Vic2l0ZV9jb2xvcnMnKSwgJGNvbG9yX2dsb2JhbF9saWdodF9iYWNrZ3JvdW5kcywgJGNvbG9yX3Nob3BwaW5nX2Jhc2tldF9kZWxpdmVyeV9iYWNrZ3JvdW5kKTtcbiAgICAgICAgQGluY2x1ZGUgcmVtKHBhZGRpbmcsIDIwcHggMCk7XG4gICAgICAgIEBpbmNsdWRlIHJlbShwYWRkaW5nLWxlZnQsIDUzLjc1cHgpO1xuICAgIH1cblxuICAgIC5jb250ZW50IHtcbiAgICAgICAgYm9yZGVyLXRvcDogMnB4IHNvbGlkIGlmKHNldHRpbmctdmFsdWUoJ3dlYnNpdGVfY29sb3Vyc191c2VfZGVmYXVsdF93ZWJzaXRlX2NvbG9ycycpLCAjZjlmOGY3LCAkY29sb3Jfd2Vic2l0ZV9wYWdlX2JhY2tncm91bmQpO1xuICAgIH1cblxuICAgIC5iYXNrZXQtcGFnZS1jb250ZW50IHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBAaW5jbHVkZSByZW0ocGFkZGluZy10b3AsIDMwcHgpO1xuICAgICAgICBAaW5jbHVkZSByZW0ocGFkZGluZy1ib3R0b20sIDMwcHgpO1xuXG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgd2lkdGg6IGNhbGMoMzglICsgLjkzNzVyZW0pO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogaWYoc2V0dGluZy12YWx1ZSgnc2hvcHBpbmdfYmFza2V0X3VzZV9kZWZhdWx0X3dlYnNpdGVfY29sb3JzJyksICRjb2xvcl9nbG9iYWxfbGlnaHRfYmFja2dyb3VuZHMsICRjb2xvcl9zaG9wcGluZ19iYXNrZXRfZGVsaXZlcnlfYmFja2dyb3VuZCk7XG4gICAgICAgICAgICB6LWluZGV4OiAtMTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5iYXNrZXQgLnNpdGUtaGVhZGVyICsgLmNvbnRlbnQge1xuICAgICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgfVxuXG4gICAgLmJhc2tldC1ncmlkID4gLmxhcmdlLTcge1xuICAgICAgICB3aWR0aDogNjIlO1xuICAgICAgICBAaW5jbHVkZSByZW0ocGFkZGluZy1yaWdodCwgNTMuNzVweCk7XG4gICAgfVxuXG4gICAgLmJhc2tldC1ncmlkID4gLmxhcmdlLTUge1xuICAgICAgICB3aWR0aDogMzglO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgfVxufVxuXG4uYmFza2V0LWluZm8tcmV3YXJkcyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCBpZihzZXR0aW5nLXZhbHVlKCdmb3Jtc191c2VfZGVmYXVsdF93ZWJzaXRlX2NvbG9ycycpLCAkY29sb3JfZ2xvYmFsX2xpZ2h0X2JhY2tncm91bmRzLCAkY29sb3JfZm9ybXNfZmllbGRfYm9yZGVyKTtcbiAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgIHBhZGRpbmc6IDEuNDVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiA0cmVtO1xuICAgIGZvbnQtc2l6ZTogLjg3M3JlbTtcbiAgICBAaW5jbHVkZSByZW0obWFyZ2luLWJvdHRvbSwgMjBweCk7XG5cbiAgICAmOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXFxlOTRjXCI7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkaWNvbjtcbiAgICAgICAgY29sb3I6IGlmKHNldHRpbmctdmFsdWUoJ3Nob3BwaW5nX2Jhc2tldF91c2VfZGVmYXVsdF93ZWJzaXRlX2NvbG9ycycpLCAkY29sb3JfZ2xvYmFsX3JlZF9hY2NlbnRfY29sb3VyLCAkY29sb3Jfc2hvcHBpbmdfYmFza2V0X3Jld2FyZHNfaWNvbik7XG4gICAgICAgIGxlZnQ6IDEuNDVyZW07XG4gICAgICAgIEBpbmNsdWRlIHZlcnRpY2FsLWFsaWduKGFic29sdXRlKTtcbiAgICAgICAgZm9udC1zaXplOiAxLjhyZW07XG4gICAgfVxuXG4gICAgcCB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMztcbiAgICB9XG5cbiAgICBzcGFuIHtcbiAgICAgICAgY29sb3I6IGlmKHNldHRpbmctdmFsdWUoJ3Nob3BwaW5nX2Jhc2tldF91c2VfZGVmYXVsdF93ZWJzaXRlX2NvbG9ycycpLCAkY29sb3JfZ2xvYmFsX3JlZF9hY2NlbnRfY29sb3VyLCAkY29sb3Jfc2hvcHBpbmdfYmFza2V0X3Jld2FyZHNfaWNvbik7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgfVxuXG4gICAgYSB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICBjb2xvcjogaWYoc2V0dGluZy12YWx1ZSgnc2hvcHBpbmdfYmFza2V0X3VzZV9kZWZhdWx0X3dlYnNpdGVfY29sb3JzJyksICRjb2xvcl9nbG9iYWxfcHVycGxlX3RleHQsICRjb2xvcl9zaG9wcGluZ19iYXNrZXRfcmV3YXJkc19saW5rKTtcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICB9XG59XG5cbi5udW1iZXItdG9nZ2xlIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcblxuICAgIGJ1dHRvbiwgLnRhYmxlLWNlbGwge1xuICAgICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIGNvbG9yOiAjMDAwO1xuICAgIH1cblxuICAgIGkge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG5cbiAgICBidXR0b24sIGlucHV0IHtcbiAgICAgICAgd2lkdGg6IDUwcHg7XG4gICAgICAgIGhlaWdodDogNTBweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDUwcHg7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4wOXJlbTtcbiAgICB9XG5cbiAgICBidXR0b24ge1xuICAgICAgICBiYWNrZ3JvdW5kOiBpZihzZXR0aW5nLXZhbHVlKCdwcm9kdWN0X3BhZ2VfdXNlX2RlZmF1bHRfd2Vic2l0ZV9jb2xvcnMnKSwgJGNvbG9yX2dsb2JhbF9saWdodF9iYWNrZ3JvdW5kcywgJGNvbG9yX3Byb2R1Y3RfdGFic19oZWFkaW5nX2JhY2tncm91bmQpO1xuICAgIH1cblxuICAgIC50b2dnbGUtZG93biB7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDVweCAwIDAgNXB4O1xuICAgIH1cblxuICAgIC50b2dnbGUtdXAge1xuICAgICAgICBib3JkZXItcmFkaXVzOiAwIDVweCA1cHggMDtcbiAgICB9XG5cbiAgICBpbnB1dCB7XG4gICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgY29sb3I6ICMwMDA7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG5cbiAgICAgICAgJjpmb2N1cywgJjpob3ZlciB7XG4gICAgICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5yYXRlcy1jb250YWluZXIud2l0aC1zZWxlY3Qge1xuICAgIC5maWVsZC1sYWJlbCB7XG4gICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgfVxufVxuXG4uZGlzYWJsZS1jaGVja291dCB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgIEBpbmNsdWRlIHJlbShwYWRkaW5nLCAxMnB4IDIycHgpO1xuICAgIEBpbmNsdWRlIHJlbShmb250LXNpemUsIDEycHgpO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG59IiwiLy8gb2ZmIGNhbnZhcyBiYXNrZXRcbi8vIHNvZnQgYWRkIHRvIGJhc2tldCBjb21wb25lbnRcbi5vZmYtY2FudmFzLWJhc2tldCB7XG4gICAgYmFja2dyb3VuZDogaWYoc2V0dGluZy12YWx1ZSgnb2ZmX2NhbnZhc191c2VfZGVmYXVsdF93ZWJzaXRlX2NvbG9ycycpLCAkY29sb3JfZ2xvYmFsX2xpZ2h0X2JhY2tncm91bmRzLCAkY29sb3Jfb2ZmX2NhbnZhc19zdWJ0b3RhbF9iYWNrZ3JvdW5kKTtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGJvcmRlcjogMDtcbiAgICBmb250LXNpemU6IC45NDVyZW07XG4gICAgXG4gICAgLnNlbGVjdGVkLW9wdGlvbnMge1xuICAgICAgICBsaW5lLWhlaWdodDogbm9ybWFsO1xuICAgIH1cblxuICAgICZfX2hlYWRpbmcge1xuICAgICAgICBiYWNrZ3JvdW5kOiBpZihzZXR0aW5nLXZhbHVlKCdvZmZfY2FudmFzX3VzZV9kZWZhdWx0X3dlYnNpdGVfY29sb3JzJyksICRjb2xvcl9nbG9iYWxfYWNjZW50X2NvbG91ciwgJGNvbG9yX29mZl9jYW52YXNfdGl0bGVfYmFja2dyb3VuZCk7XG4gICAgICAgIGNvbG9yOiBpZihzZXR0aW5nLXZhbHVlKCdvZmZfY2FudmFzX3VzZV9kZWZhdWx0X3dlYnNpdGVfY29sb3JzJyksICRjb2xvcl9nbG9iYWxfbWFpbl9idXR0b25fdGV4dCwgJGNvbG9yX29mZl9jYW52YXNfdGl0bGVfdGV4dCk7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgIGZvbnQtc2l6ZTogMS42cmVtO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDIuMThyZW0gMXJlbTtcbiAgICB9XG5cbiAgICAuaXRlbXMge1xuICAgICAgICBwYWRkaW5nOiAwIDIuOXJlbTtcbiAgICAgICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICAgICAgICAgIFxuICAgICAgICAuaXRlbSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAxLjhyZW0gMDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogLjk0NXJlbTtcbiAgICAgICAgICAgIGNvbG9yOiBpZihzZXR0aW5nLXZhbHVlKCdvZmZfY2FudmFzX3VzZV9kZWZhdWx0X3dlYnNpdGVfY29sb3JzJyksICRjb2xvcl9nbG9iYWxfYmxhY2tfdGV4dCwgJGNvbG9yX29mZl9jYW52YXNfcHJvZHVjdF9vcHRpb25zKTtcblxuICAgICAgICAgICAgaDQge1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjE2cmVtO1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udF9ib2R5O1xuICAgICAgICAgICAgICAgIGNvbG9yOiBpZihzZXR0aW5nLXZhbHVlKCdvZmZfY2FudmFzX3VzZV9kZWZhdWx0X3dlYnNpdGVfY29sb3JzJyksICRjb2xvcl9nbG9iYWxfYmxhY2tfdGl0bGVzLCAkY29sb3Jfb2ZmX2NhbnZhc19wcm9kdWN0X25hbWUpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgXG4gICAgICAgICAgICAmOmZpcnN0LW9mLXR5cGUge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiAyLjhyZW07XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBcbiAgICAgICAgICAgICY6bGFzdC1vZi10eXBlIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMi44cmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnByaWNlIHtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuMTZyZW07XG4gICAgICAgICAgICBjb2xvcjogaWYoc2V0dGluZy12YWx1ZSgnb2ZmX2NhbnZhc191c2VfZGVmYXVsdF93ZWJzaXRlX2NvbG9ycycpLCAkY29sb3JfZ2xvYmFsX2JsYWNrX3RleHQsICRjb2xvcl9vZmZfY2FudmFzX3Byb2R1Y3RfcHJpY2UpO1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC5jaGVja291dCB7XG4gICAgICAgIGJhY2tncm91bmQ6IGlmKHNldHRpbmctdmFsdWUoJ29mZl9jYW52YXNfdXNlX2RlZmF1bHRfd2Vic2l0ZV9jb2xvcnMnKSwgJGNvbG9yX2dsb2JhbF9saWdodF9ncmVlbl9iYWNrZ3JvdW5kcywgJGNvbG9yX29mZl9jYW52YXNfcHJvY2VlZF9iYWNrZ3JvdW5kKTtcbiAgICAgICAgY29sb3I6IGlmKHNldHRpbmctdmFsdWUoJ29mZl9jYW52YXNfdXNlX2RlZmF1bHRfd2Vic2l0ZV9jb2xvcnMnKSwgJGNvbG9yX2dsb2JhbF93aGl0ZV90ZXh0X2ljb25zLCAkY29sb3Jfb2ZmX2NhbnZhc19wcm9jZWVkX3RleHQpO1xuICAgIH1cbiAgICBcbiAgICAucmVtb3ZlLWJ0biB7XG4gICAgICAgIGNvbG9yOiBpZihzZXR0aW5nLXZhbHVlKCdvZmZfY2FudmFzX3VzZV9kZWZhdWx0X3dlYnNpdGVfY29sb3JzJyksICRjb2xvcl9nbG9iYWxfYWNjZW50X2NvbG91ciwgJGNvbG9yX29mZl9jYW52YXNfcmVtb3ZlX3Byb2R1Y3QpO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBtYXJnaW4tdG9wOiAuNXJlbTtcbiAgICB9XG5cbiAgICAuc3VtbWFyeSB7XG4gICAgICAgIGJhY2tncm91bmQ6IGlmKHNldHRpbmctdmFsdWUoJ29mZl9jYW52YXNfdXNlX2RlZmF1bHRfd2Vic2l0ZV9jb2xvcnMnKSwgJGNvbG9yX2dsb2JhbF9saWdodF9iYWNrZ3JvdW5kcywgJGNvbG9yX29mZl9jYW52YXNfc3VidG90YWxfYmFja2dyb3VuZCk7XG4gICAgICAgIGNvbG9yOiBpZihzZXR0aW5nLXZhbHVlKCdvZmZfY2FudmFzX3VzZV9kZWZhdWx0X3dlYnNpdGVfY29sb3JzJyksICRjb2xvcl9nbG9iYWxfYmxhY2tfdGl0bGVzLCAkY29sb3Jfb2ZmX2NhbnZhc19zdWJ0b3RhbF90ZXh0KTtcbiAgICAgICAgcGFkZGluZzogMS44cmVtIDIuOXJlbTtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDJyZW07XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIH1cbiAgICBcbiAgICAuY29udGludWUge1xuICAgICAgICBiYWNrZ3JvdW5kOiBpZihzZXR0aW5nLXZhbHVlKCdvZmZfY2FudmFzX3VzZV9kZWZhdWx0X3dlYnNpdGVfY29sb3JzJyksICRjb2xvcl9nbG9iYWxfbGlnaHRfYmFja2dyb3VuZHMsICRjb2xvcl9vZmZfY2FudmFzX2NvbnRpbnVlX3Nob3BwaW5nX2JhY2tncm91bmQpO1xuICAgICAgICBjb2xvcjogaWYoc2V0dGluZy12YWx1ZSgnb2ZmX2NhbnZhc191c2VfZGVmYXVsdF93ZWJzaXRlX2NvbG9ycycpLCAkY29sb3JfZ2xvYmFsX2JsYWNrX3RpdGxlcywgJGNvbG9yX29mZl9jYW52YXNfY29udGludWVfc2hvcHBpbmdfdGV4dCk7XG4gICAgICAgIHBhZGRpbmc6IDEuOHJlbSAyLjlyZW07XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgXG4gICAgICAgIGEge1xuICAgICAgICAgICAgY29sb3I6IGlmKHNldHRpbmctdmFsdWUoJ29mZl9jYW52YXNfdXNlX2RlZmF1bHRfd2Vic2l0ZV9jb2xvcnMnKSwgJGNvbG9yX2dsb2JhbF9ibGFja190aXRsZXMsICRjb2xvcl9vZmZfY2FudmFzX2NvbnRpbnVlX3Nob3BwaW5nX3RleHQpO1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fdG90YWwtbGFiZWwge1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICBmb250LXNpemU6IDEuMTZyZW07XG4gICAgfVxuXG4gICAgJl9fdG90YWwtdmFsdWUge1xuICAgICAgICBmb250LXNpemU6IDEuODlyZW07XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgfVxuXG4gICAgJjphZnRlciB7XG4gICAgICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG4gICAgXG4gICAgQG1lZGlhICN7JG0tZG93bn0ge1xuICAgICAgICAuaXRlbXMge1xuICAgICAgICAgICAgcGFkZGluZzogMCAxLjVyZW07XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5zdW1tYXJ5LCAuY29udGludWUge1xuICAgICAgICAgICAgcGFkZGluZzogMS44cmVtIDEuNXJlbTtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLmJ1dHRvbi53aXRoLWFycm93IHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDIuMThyZW0gM3JlbSAyLjE4cmVtIDEuNXJlbTtcbiAgICAgICAgICAgIFxuICAgICAgICAgICAgLndpdGgtYXJyb3dfaWNvbiB7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDEuNXJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuQG1lZGlhICN7JHMtb25seX0ge1xuICAgIC5vZmYtY2FudmFzLWJhc2tldCB7XG4gICAgICAgIHdpZHRoOiAzNTBweDtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNmb3JtKCB0cmFuc2xhdGVYKDM1MHB4KSApO1xuXG4gICAgICAgICYuaXMtb3BlbiB+IC5vZmYtY2FudmFzLWNvbnRlbnQge1xuICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNmb3JtKCB0cmFuc2xhdGVYKC0zNTBweCkgKTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuQG1lZGlhICN7JG0tdXB9IHtcbiAgICAub2ZmLWNhbnZhcy1iYXNrZXQge1xuICAgICAgICB3aWR0aDogNjAwcHg7XG4gICAgICAgIEBpbmNsdWRlIHRyYW5zZm9ybSggdHJhbnNsYXRlWCg2MDBweCkgKTtcblxuICAgICAgICAmLmlzLW9wZW4gfiAub2ZmLWNhbnZhcy1jb250ZW50IHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zZm9ybSggdHJhbnNsYXRlWCgtNjAwcHgpICk7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbkBtZWRpYSAjeyRsLXVwfSB7XG4gICAgLm9mZi1jYW52YXMtYmFza2V0IHtcbiAgICAgICAgd2lkdGg6IDcwMHB4O1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2Zvcm0oIHRyYW5zbGF0ZVgoNzAwcHgpICk7XG5cbiAgICAgICAgJi5pcy1vcGVuIH4gLm9mZi1jYW52YXMtY29udGVudCB7XG4gICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2Zvcm0oIHRyYW5zbGF0ZVgoLTcwMHB4KSApO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4iLCIvKiAjLUNIRUNLT1VUX0FERFJFU1MgKi9cbkBtZWRpYSAjeyRtLXVwfSB7XG4gICAgLmNoZWNrb3V0LWFkZHJlc3Muc3BsaXQgLmNvbnRlbnQge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmYWZhZmE7XG4gICAgICAgICAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICRsaWdodC1ncmV5O1xuICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIHdpZHRoOiA1MCU7XG4gICAgICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgIH1cbiAgICAgICAgLmlubmVyLXdyYXBwZXIge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgei1pbmRleDogMjtcbiAgICAgICAgfVxuXG4gICAgICAgIC5jaGVja291dC1mb3JtIHtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDIuNXJlbTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmNoZWNrb3V0LWRldGFpbHMge1xuICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG59XG5cbi5jaGVja291dC1maWVsZC1pbnB1dCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLmNoZWNrb3V0LWZvcm0tc2VjdGlvbiB7XG4gICAgJiArICYge1xuICAgICAgICBtYXJnaW4tdG9wOiAuNzVyZW07XG4gICAgfVxufVxuXG5cbi5jaGVja291dC1mb3JtIHtcbiAgICAmLWxlZ2VuZCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4xNXJlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgbWFyZ2luOiAuNXJlbSAwO1xuICAgIH1cblxuICAgIC5idXR0b25zIHtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDJweDtcbiAgICAgICAgbWFyZ2luLXRvcDogMXJlbTtcblxuICAgICAgICAuYnV0dG9uLXNlY3VyZS1wYXltZW50IHtcbiAgICAgICAgICAgIHdpZHRoOiAzMjJweDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogLjI1cmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgJltkYXRhLWNvdW50PVwiM1wiXSB7XG4gICAgICAgICAgICAucGF5cGFsLWJ1dHRvbiB7XG4gICAgICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTYwcHg7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogI2ZmYzQzYTtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAzcHg7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogLjRyZW0gMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5vZmZsaW5lLWJ1dHRvbiB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDE2MHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgYnIge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAucGF5cGFsLWJ1dHRvbiwgLm9mZmxpbmUtYnV0dG9uIHtcbiAgICAgICAgICAgIHdpZHRoOiAzMjJweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgID4gZmllbGRzZXQ6bGFzdC1vZi10eXBlIHtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGxpZ2h0LWdyZXk7XG4gICAgICAgIGJvcmRlci13aWR0aDogMXB4IDA7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcbiAgICB9XG59XG5cbi5jaGVja291dC1hZGRyZXNzIC5pbm5lci13cmFwcGVyIGlmcmFtZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRjtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjZGRkO1xufVxuXG4uY2hlY2tvdXQtaXRlbXMge1xuICAgIG1heC13aWR0aDogMjhyZW07XG4gICAgbWFyZ2luOiBhdXRvO1xuXG4gICAgJi1wcm9kdWN0IHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNkZGQ7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDEuNXJlbTtcbiAgICB9XG5cbiAgICAmLWltYWdlIHtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGxpZ2h0LWdyZXk7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgIC5iYWRnZSB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IC0uM3JlbTtcbiAgICAgICAgICAgIHJpZ2h0OiAtLjNyZW07XG4gICAgICAgICAgICB6LWluZGV4OiAyO1xuICAgICAgICAgICAgZm9udC1zaXplOiAuNzVyZW07XG4gICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYtdGl0bGUge1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgICB9XG5cbiAgICAucGF5bWVudC1saXN0IHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcblxuICAgICAgICBpbWcge1xuICAgICAgICAgICAgaGVpZ2h0OiAyLjI1cmVtO1xuICAgICAgICB9XG4gICAgfVxuXG59XG5cbi5jaGVja291dC10b3RhbHMge1xuXG4gICAgdHIsIHRib2R5IHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgdGQge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdHJhbnNwYXJlbnQ7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMDtcblxuICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICB0cjpsYXN0LWNoaWxkIHtcbiAgICAgICAgZm9udDoge1xuICAgICAgICAgICAgd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgICBzaXplOiAxLjI1cmVtO1xuICAgICAgICB9XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cbiAgICAgICAgdGQge1xuICAgICAgICAgICAgYm9yZGVyOiB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDFweCAwO1xuICAgICAgICAgICAgICAgIHN0eWxlOiBzb2xpZDtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGxpZ2h0LWdyZXk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBwYWRkaW5nOiAxcmVtIDA7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbiIsIi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vKiAjUGFnZS1oZWFkICovXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4uc2l0ZS1oZWFkZXIge1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdGJhY2tncm91bmQ6ICNmZmY7XG5cdEBpbmNsdWRlIHJlbShwYWRkaW5nLXRvcCwgMjVweCk7XG5cdHBhZGRpbmctYm90dG9tOiAwcmVtICFpbXBvcnRhbnQ7XG5cdHotaW5kZXg6IDU7XG5cblx0Ji5zdGlja3ktY29udGFpbmVyIHtcblx0XHRAbWVkaWEgI3skbS11cH0ge1xuXHRcdFx0aGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG5cdFx0XHR6LWluZGV4OiA1O1xuXHRcdH1cblx0fVxuXG5cdC5oZWFkZXItc2VhcmNoLWZvcm0ge1xuXHRcdC5pbnB1dC1ncm91cC5tb2QtaWNvbiB7XG5cdFx0XHRib3JkZXItY29sb3I6IGlmKHNldHRpbmctdmFsdWUoJ2hlYWRlcl91c2VfZGVmYXVsdF93ZWJzaXRlX2NvbG9ycycpLCAkY29sb3JfZ2xvYmFsX2dyZXlfYmFja2dyb3VuZHMsICRjb2xvcl9oZWFkZXJfc2VhcmNoX2JvcmRlcik7XG5cblx0XHRcdGlucHV0IHtcblx0XHRcdFx0Y29sb3I6IGlmKHNldHRpbmctdmFsdWUoJ2hlYWRlcl91c2VfZGVmYXVsdF93ZWJzaXRlX2NvbG9ycycpLCAkY29sb3JfZ2xvYmFsX2JsYWNrX3RleHQsICRjb2xvcl9oZWFkZXJfc2VhcmNoX3RleHQpO1xuXHRcdFx0XHRmb250LXNpemU6ICRmb250X3NpemVfdG9wX2hlYWRlcl9zZWFyY2g7XG5cblx0XHRcdFx0QGluY2x1ZGUgcGxhY2Vob2xkZXIge1xuXHRcdFx0XHRcdGNvbG9yOiBpZihzZXR0aW5nLXZhbHVlKCdoZWFkZXJfdXNlX2RlZmF1bHRfd2Vic2l0ZV9jb2xvcnMnKSwgI2IzYjNiMywgJGNvbG9yX2hlYWRlcl9zZWFyY2hfcGxhY2Vob2xkZXIpO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cblx0XHRcdC5idXR0b24ge1xuXHRcdFx0XHRjb2xvcjogaWYoc2V0dGluZy12YWx1ZSgnaGVhZGVyX3VzZV9kZWZhdWx0X3dlYnNpdGVfY29sb3JzJyksICRjb2xvcl9nbG9iYWxfYmxhY2tfaWNvbnMsICRjb2xvcl9oZWFkZXJfc2VhcmNoX2ljb24pO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdEBtZWRpYSAjeyRtLXVwfSB7XG5cdFx0cGFkZGluZy1ib3R0b206IC43cmVtO1xuXG5cdFx0LmhlYWRlci1tZW51IHtcblx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHR9XG5cdH1cblxuXHRAbWVkaWEgI3skbS1kb3dufSB7XG5cdFx0Ym9yZGVyLWJvdHRvbTogM3B4IHNvbGlkIGlmKHNldHRpbmctdmFsdWUoJ3Jlc3BvbnNpdmVfaGVhZGVyX3VzZV9kZWZhdWx0X3dlYnNpdGVfY29sb3JzJyksICRjb2xvcl9nbG9iYWxfYWNjZW50X2NvbG91ciwgJGNvbG9yX3Jlc3BvbnNpdmVfYm90dG9tX2JvcmRlcik7XG5cdFx0cGFkZGluZy10b3A6IDFyZW07XG5cblx0XHQuY29sLWNlbGwuY29sdW1uIHtcblx0XHRcdHdpZHRoOiBhdXRvO1xuXHRcdH1cblxuXHRcdC5tb2QtY2VudGVyID4gLmNvbC1jZWxsLmNvbHVtbi5zbWFsbC00IHtcblx0XHRcdHdpZHRoOiAzMy4zMyU7XG5cblx0XHRcdC5tb2JpbGUtbWVudS10b2dnbGUge1xuXHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRcdGxlZnQ6IGNhbGMoLTEwMCUgKyAxNXB4KTtcblx0XHRcdFx0dG9wOiA1MCU7XG5cdFx0XHRcdG1hcmdpbi10b3A6IC0xM3B4O1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdC5oZWFkZXItbWlkZGxlIHtcblx0XHRcdHBhZGRpbmctYm90dG9tOiAxcmVtO1xuXG5cdFx0XHQmLmlzLXN0dWNrIHtcblx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcblx0XHRcdFx0cGFkZGluZy10b3A6IDFyZW07XG5cdFx0XHRcdGJvcmRlci1ib3R0b206IDNweCBzb2xpZCAjNGExNjM5O1xuXHRcdFx0XHR3aWR0aDogMTAwJTtcblxuXHRcdFx0XHQ+IC53aWRlLWNvbnRhaW5lciArIC5oaWRlLWZvci1sYXJnZSB7XG5cdFx0XHRcdFx0ZGlzcGxheTogbm9uZTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblxuXHRcdC5oZWFkZXItc2VhcmNoLWZvcm0ge1xuXHRcdFx0bWFyZ2luLXRvcDogMXJlbTtcblx0XHR9XG5cblx0XHQuaGVhZGVyLXNlYXJjaC1mb3JtIC5pbnB1dC1ncm91cC5tb2QtaWNvbiAuYnV0dG9uIHtcblx0XHRcdGNvbG9yOiBpZihzZXR0aW5nLXZhbHVlKCdyZXNwb25zaXZlX2hlYWRlcl91c2VfZGVmYXVsdF93ZWJzaXRlX2NvbG9ycycpLCAkY29sb3JfZ2xvYmFsX2JsYWNrX2ljb25zLCAkY29sb3JfcmVzcG9uc2l2ZV9zZWFyY2gpO1xuXHRcdH1cblx0fVxufVxuXG4uaGVhZGVyLWxvZ28ge1xuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5cbi5sb2dvLWltYWdlIHtcblx0d2lkdGg6IDEwMCU7XG5cdG1heC13aWR0aDogJGxvZ29fd2lkdGhfbW9iaWxlO1xuXHRtYXJnaW46IGF1dG87XG5cdGRpc3BsYXk6IGJsb2NrO1xuXG5cdEBtZWRpYSAjeyRtLXVwfSB7XG5cdFx0bWF4LXdpZHRoOiAkbG9nb193aWR0aDtcblx0XHRtYXJnaW46IDA7XG5cdH1cbn1cblxuLmxvZ28tdGV4dCB7XG5cdGNvbG9yOiBpZihzZXR0aW5nLXZhbHVlKCdoZWFkZXJfdXNlX2RlZmF1bHRfd2Vic2l0ZV9jb2xvcnMnKSwgJGNvbG9yX2dsb2JhbF9wdXJwbGVfdGV4dCwgJGNvbG9yX2hlYWRlcl9ub19sb2dvX3RleHQpO1xuXHRmb250LXdlaWdodDogYm9sZDtcblx0Zm9udC1zaXplOiAkZm9udF9zaXplX25vX2xvZ287XG5cdHRleHQtdHJhbnNmb3JtOiBsb3dlcmNhc2U7XG5cdGxpbmUtaGVpZ2h0OiAxLjE7XG5cdHdoaXRlLXNwYWNlOiBub3JtYWw7XG59XG5cbi5oZWFkZXItbGluayB7XG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0dmVydGljYWwtYWxpZ246IG1pZGRsZTtcblx0Zm9udC1zaXplOiAkZm9udF9zaXplX2hlYWRlcl9pY29uX3RleHQ7XG5cdGxpbmUtaGVpZ2h0OiAxO1xuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cblx0aSB7XG5cdFx0Zm9udC1zaXplOiAkZm9udF9zaXplX2hlYWRlcl9pY29uX2ljb247XG5cdFx0QGluY2x1ZGUgcmVtKGhlaWdodCwgMjJweCk7XG5cdFx0bWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDtcblx0XHRtYXJnaW4tcmlnaHQ6IDAgIWltcG9ydGFudDtcblx0fVxuXG5cdC5zcGFuIHtcblx0XHRtYXJnaW4tdG9wOiAuNnJlbTtcblx0fVxuXG5cdGksIHNwYW4ge1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHR9XG5cblx0Jjpob3ZlciB7XG5cdFx0Y29sb3I6IGluaGVyaXQ7XG5cdH1cblxuXHQmLm1vZC1jdXJyZW5jeSB7XG5cdFx0QG1lZGlhICN7JGwtdXB9IHtcblx0XHRcdGNvbG9yOiBpZihzZXR0aW5nLXZhbHVlKCdoZWFkZXJfdXNlX2RlZmF1bHRfd2Vic2l0ZV9jb2xvcnMnKSwgJGNvbG9yX2dsb2JhbF9wdXJwbGVfaWNvbnMsICRjb2xvcl9oZWFkZXJfY3VycmVuY3lfaWNvbik7XG5cdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdHBhZGRpbmc6IC43cmVtIDFyZW07XG5cdFx0XHRsaW5lLWhlaWdodDogMTtcblxuXHRcdFx0aSB7XG5cdFx0XHRcdGZvbnQtc2l6ZTogJGZvbnRfc2l6ZV9oZWFkZXJfY3VycmVuY3lfaWNvbjtcblx0XHRcdFx0QGluY2x1ZGUgcmVtKG1hcmdpbi10b3AsIC00cHgpO1xuXHRcdFx0fVxuXG5cdFx0XHQuc3BhbiB7XG5cdFx0XHRcdEBpbmNsdWRlIHJlbShwYWRkaW5nLXRvcCwgNHB4KTtcblx0XHRcdH1cblx0XHR9XG5cblx0XHRAbWVkaWEgI3skbS1kb3dufSB7XG5cdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0XHR3aWR0aDogMjJweDtcblx0XHRcdGhlaWdodDogMjJweDtcblx0XHRcdGxpbmUtaGVpZ2h0OiAyMnB4O1xuXHRcdH1cblx0fVxuXG5cdCYubW9kLWFjY291bnQge1xuXHRcdGNvbG9yOiBpZihzZXR0aW5nLXZhbHVlKCdoZWFkZXJfdXNlX2RlZmF1bHRfd2Vic2l0ZV9jb2xvcnMnKSwgJGNvbG9yX2dsb2JhbF9wdXJwbGVfaWNvbnMsICRjb2xvcl9oZWFkZXJfYWNjb3VudF9pY29uKTtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRwYWRkaW5nOiAuN3JlbSAxcmVtO1xuXHRcdGxpbmUtaGVpZ2h0OiAxO1xuXHR9XG5cblx0Ji5tb2Qtd2lzaGxpc3Qge1xuXHRcdGNvbG9yOiBpZihzZXR0aW5nLXZhbHVlKCdoZWFkZXJfdXNlX2RlZmF1bHRfd2Vic2l0ZV9jb2xvcnMnKSwgJGNvbG9yX2dsb2JhbF9yZWRfYWNjZW50X2NvbG91ciwgJGNvbG9yX2hlYWRlcl9mYXZvdXJpdGVzX2ljb24pO1xuXHR9XG5cblx0Ji5tb2QtYmFza2V0IHtcblx0XHRjb2xvcjogaWYoc2V0dGluZy12YWx1ZSgnaGVhZGVyX3VzZV9kZWZhdWx0X3dlYnNpdGVfY29sb3JzJyksICRjb2xvcl9nbG9iYWxfZ3JlZW5fYWNjZW50X2NvbG91ciwgJGNvbG9yX2hlYWRlcl9iYXNrZXRfaWNvbik7XG5cdFx0Zm9udC13ZWlnaHQ6IGJvbGQ7XG5cblx0XHRAbWVkaWEgI3skbC11cH0ge1xuXHRcdFx0Ji5zaG93LWZvci1zdGlja3kge1xuXHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRcdEBpbmNsdWRlIHJlbSh0b3AsIDEwcHgpO1xuXHRcdFx0XHRAaW5jbHVkZSByZW0ocmlnaHQsIDMwcHgpO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdCYubW9kLWNvbnRhY3Qge1xuXHRcdGNvbG9yOiBpZihzZXR0aW5nLXZhbHVlKCdoZWFkZXJfdXNlX2RlZmF1bHRfd2Vic2l0ZV9jb2xvcnMnKSwgJGNvbG9yX2dsb2JhbF9wdXJwbGVfaWNvbnMsICRjb2xvcl9oZWFkZXJfY29udGFjdF91c19pY29uKTtcblx0fVxufVxuXG4uc2hvdy1mb3Itc3RpY2t5IHtcblx0ZGlzcGxheTogbm9uZTtcblxuXHQuaXMtc3R1Y2sgJiB7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdH1cbn1cblxuLmhlYWRlci1tZW51IHtcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG4uaGVhZGVyLXNlYXJjaCB7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0dG9wOiAxMDAlO1xuXHRsZWZ0OiAwO1xuXHRyaWdodDogMDtcblx0cGFkZGluZy1yaWdodDogMDtcblx0ei1pbmRleDogNTtcblx0cGFkZGluZzogMnJlbTtcblx0YmFja2dyb3VuZDogI2ZmZjtcblx0Ym9yZGVyLWJvdHRvbTogM3B4IHNvbGlkICMwMDA7XG5cblx0Ji1pbm5lciB7XG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdG1hcmdpbjogMCAzcmVtIDFyZW0gM3JlbTtcblxuXHRcdCYtbGVmdCB7XG5cdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRsZWZ0OiAtM3JlbTtcblx0XHRcdHRvcDogLjVyZW07XG5cdFx0XHRmb250LXNpemU6IDJyZW07XG5cdFx0fVxuXG5cdFx0Ji1yaWdodCB7XG5cdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRyaWdodDogLTNyZW07XG5cdFx0XHR0b3A6IC41cmVtO1xuXHRcdFx0Zm9udC1zaXplOiAycmVtO1xuXHRcdH1cblx0fVxuXG5cdCYtaW5wdXQtZ3JvdXAge1xuXHRcdG1hcmdpbi1ib3R0b206IDA7XG5cdFx0bGluZS1oZWlnaHQ6IDMuNXJlbTtcblx0XHRib3JkZXItYm90dG9tOiAxcHggc29saWQgJGJsYWNrO1xuXHR9XG5cblx0Ji1pbnB1dCB7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cdFx0Ym9yZGVyOiAwO1xuXHRcdGJveC1zaGFkb3c6IG5vbmU7XG5cdFx0aGVpZ2h0OiAzLjVyZW07XG5cdFx0cGFkZGluZy1sZWZ0OiAwO1xuXHRcdGZvbnQtc2l6ZTogMS41cmVtO1xuXG5cdFx0JjphY3RpdmUsXG5cdFx0Jjpmb2N1cyB7XG5cdFx0XHRib3JkZXI6IG5vbmU7XG5cdFx0XHRib3gtc2hhZG93OiBub25lO1xuXHRcdH1cblx0fVxuXG5cdCYtYnV0dG9uIHtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcblx0XHRoZWlnaHQ6IDMuNXJlbTtcblx0XHRjb2xvcjogJGJsYWNrO1xuXHRcdGZvbnQtd2VpZ2h0OiA2MDA7XG5cdFx0Zm9udC1zaXplOiAxLjVyZW07XG5cdFx0cGFkZGluZy1yaWdodDogMDtcblx0XHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXG5cdFx0Jjpob3Zlcixcblx0XHQmOmFjdGl2ZSxcblx0XHQmOmZvY3VzIHtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuXHRcdFx0Ym9yZGVyOiBub25lO1xuXHRcdFx0Ym94LXNoYWRvdzogbm9uZTtcblx0XHRcdGNvbG9yOiAkYmxhY2s7XG5cdFx0fVxuXHR9XG59XG5cbi5zaXRlLWhlYWRlciAuaGVhZGVyLWN1cnJlbmN5IHtcblx0cG9zaXRpb246IHN0YXRpYztcblxuXHQuY3VycmVuY3ktZHJvcGRvd24ge1xuXHRcdGxlZnQ6IGF1dG8gIWltcG9ydGFudDtcblx0XHRyaWdodDogMCAhaW1wb3J0YW50O1xuXHR9XG5cblx0QG1lZGlhICN7JHMtb25seX0ge1xuXHRcdC5jdXJyZW5jeS1kcm9wZG93biB7XG5cdFx0XHRib3JkZXI6IDA7XG5cdFx0XHRib3gtc2hhZG93OiBub25lO1xuXHRcdFx0YmFja2dyb3VuZDogI2ZmZjtcblx0XHRcdGJvcmRlci1yYWRpdXM6IDA7XG5cdFx0XHRtYXJnaW4tdG9wOiAwO1xuXHRcdH1cblx0fVxuXG5cdCYtc2VsZWN0LXN5bWJvbCB7XG5cdFx0cGFkZGluZy1sZWZ0OiAuMjVlbTtcblx0fVxufVxuXG4uaGVhZGVyLWJhc2tldCxcbi5oZWFkZXItd2lzaGxpc3Qge1xuXHRjb2xvcjogJGJsYWNrO1xuXHRmb250LXNpemU6IC45cmVtO1xuXHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuXG4uYmFza2V0LWNvdW50IHtcblx0bWFyZ2luOiAwIC4ycmVtO1xufVxuXG5AbWVkaWEgI3skcy1vbmx5fSB7XG5cdC5oZWFkZXItbWlkZGxlIHtcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdH1cblxuXHQuaGVhZGVyLWJhc2tldC13cmFwcGVyIHtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0dG9wOiAwO1xuXHRcdHJpZ2h0OiAuNXJlbTtcblx0XHR3aWR0aDogYXV0bztcblx0fVxufVxuXG5AbWVkaWEgI3skbC11cH0ge1xuXG5cdC5oZWFkZXItbWlkZGxlIHtcblxuXHRcdCYuc3RpY2t5IHtcblx0XHRcdHBvc2l0aW9uOiBzdGF0aWMgIWltcG9ydGFudDtcblx0XHRcdEBpbmNsdWRlIHRyYW5zZm9ybSggbm9uZSApO1xuXHRcdH1cblxuXHRcdC5yb3ctdGFibGUubW9kLWxhcmdlLWZsZXgge1xuXHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cblx0XHRcdD4gLmNvbC1jZWxsIHtcblxuXHRcdFx0XHQmOmZpcnN0LWNoaWxkIHtcblx0XHRcdFx0XHQvLyB3aWR0aDogYXV0bztcblx0XHRcdFx0fVxuXG5cdFx0XHRcdCY6bGFzdC1jaGlsZCB7XG5cdFx0XHRcdFx0ZmxleDogMTtcblx0XHRcdFx0XHR3aWR0aDogYXV0bztcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblxuXHRcdC5yb3ctdGFibGUubW9kLWNlbnRlciB7XG5cdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cblx0XHRcdD4gLmNvbC1jZWxsIHtcblxuXHRcdFx0XHQmOm50aC1jaGlsZCgyKSB7XG5cdFx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0XHRcdGxlZnQ6IDA7XG5cdFx0XHRcdFx0dG9wOiA1MCU7XG5cdFx0XHRcdFx0QGluY2x1ZGUgcmVtKG1hcmdpbi10b3AsIC0yNXB4KTtcblx0XHRcdFx0fVxuXG5cdFx0XHRcdCYudGV4dC1yaWdodCB7XG5cdFx0XHRcdFx0Ly8gZmxvYXQ6IHJpZ2h0ICFpbXBvcnRhbnQ7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cblx0XHQ+IC53aWRlLWNvbnRhaW5lciA+IC5yb3cge1xuXHRcdFx0bWFyZ2luLXJpZ2h0OiAtMC45Mzc1cmVtO1xuXHRcdFx0bWFyZ2luLWxlZnQ6IC0wLjkzNzVyZW07XG5cdFx0fVxuXHR9XG5cblx0LmhlYWRlci1uYXYtb3V0ZXIge1xuXG5cdFx0Ji5tb2Qtbm8tYmFyIHtcblx0XHRcdGJvcmRlci1ib3R0b206IDRweCBzb2xpZCAjZjNmMGVlO1xuXHRcdFx0Ym94LXNpemluZzogY29udGVudC1ib3g7XG5cblx0XHRcdC5oZWFkZXItbmF2IHtcblx0XHRcdFx0bWFyZ2luLWJvdHRvbTogNHB4O1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdC53aWRlLWNvbnRhaW5lciB7XG5cblx0XHRcdD4gLnJvdyB7XG5cdFx0XHRcdG1hcmdpbi1yaWdodDogLTAuOTM3NXJlbTtcblx0XHRcdFx0bWFyZ2luLWxlZnQ6IC0wLjkzNzVyZW07XG5cdFx0XHR9XG5cblx0XHRcdCYuc3RpY2t5IHtcblx0XHRcdFx0ei1pbmRleDogMDtcblx0XHRcdFx0QGluY2x1ZGUgdHJhbnNmb3JtKCBub25lICk7XG5cdFx0XHRcdG1heC13aWR0aDogJHRoZW1lX3dpZHRoICFpbXBvcnRhbnQ7XG5cdFx0XHRcdGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG5cdFx0XHRcdCYgPiBkaXYge1xuXHRcdFx0XHRcdG1hcmdpbi1sZWZ0OiBhdXRvO1xuXHRcdFx0XHRcdG1hcmdpbi1yaWdodDogYXV0bztcblx0XHRcdFx0fVxuXHRcdFx0XHQmLmlzLXN0dWNrIHtcblx0XHRcdFx0XHRwYWRkaW5nOiAwO1xuXHRcdFx0XHRcdC5oZWFkZXItbmF2IHtcblx0XHRcdFx0XHRcdEBpbmNsdWRlIHJlbShwYWRkaW5nLWxlZnQsIDUwcHgpO1xuXHRcdFx0XHRcdFx0QGluY2x1ZGUgcmVtKHBhZGRpbmctcmlnaHQsIDUwcHgpO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0XHQmOm5vdCguaXMtc3R1Y2spe1xuXHRcdFx0XHRcdHBvc2l0aW9uOiBzdGF0aWM7XG5cdFx0XHRcdH1cblx0XHRcdFx0Ji5pcy1zdHVjayB7XG5cdFx0XHRcdFx0ei1pbmRleDogOTk7XG5cdFx0XHRcdFx0YmFja2dyb3VuZDogJHdoaXRlO1xuXHRcdFx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0XHRcdEBpbmNsdWRlIHJlbShwYWRkaW5nLWJvdHRvbSwgMTBweCk7XG5cdFx0XHRcdFx0Ym9yZGVyLWJvdHRvbTogM3B4IHNvbGlkICNmM2YwZWU7XG5cdFx0XHRcdFx0bWF4LXdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHQubWFpbi1uYXYtd3JhcHBlciB7XG5cdFx0bWFyZ2luLXRvcDogMXJlbTtcblxuXHRcdC5tYWluLW5hdiB7XG5cdFx0XHRtYXJnaW46IDAgLTEuMjByZW07XG5cblx0XHRcdCYuYWxpZ24tY2VudGVyIHtcblx0XHRcdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdC5kcm9wZG93bi5tZW51LmxhcmdlLWhvcml6b250YWwgPiBsaS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCA+IGE6YWZ0ZXIge1xuXHRcdFx0ZGlzcGxheTogbm9uZTtcblx0XHR9XG5cblx0XHQubWVudSA+IGxpID4gYSB7XG5cdFx0XHRmb250LXdlaWdodDogbm9ybWFsO1xuXHRcdFx0Ly8gZm9udC1zaXplOiAuOTQ1cmVtO1xuXHRcdFx0Zm9udC1zaXplOiAkaGVhZGVyX2NhdGVnb3J5X21lbnVfZm9udF9zaXplO1xuXHRcdFx0Y29sb3I6IGlmKHNldHRpbmctdmFsdWUoJ2hlYWRlcl91c2VfZGVmYXVsdF93ZWJzaXRlX2NvbG9ycycpLCAkY29sb3JfZ2xvYmFsX2JsYWNrX3RleHQsICRjb2xvcl9oZWFkZXJfY2F0ZWdvcnlfbWVudV9pdGVtcyk7XG5cdFx0XHRiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcblx0XHRcdHBhZGRpbmc6IDEuMDlyZW0gMS40NXJlbTtcblx0XHRcdEBpbmNsdWRlIHJlbShwYWRkaW5nLXRvcCwgMTVweCk7XG5cdFx0XHRAaW5jbHVkZSByZW0ocGFkZGluZy1ib3R0b20sIDE1cHgpO1xuXHRcdFx0cGFkZGluZy1yaWdodDogJHNwYWNlX2JldHdlZW5fY2F0ZWdvcnlfaXRlbXMgIWltcG9ydGFudDtcblx0XHRcdHBhZGRpbmctbGVmdDogJHNwYWNlX2JldHdlZW5fY2F0ZWdvcnlfaXRlbXM7XG5cdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHR9XG5cblx0XHQubWFpbi1uYXYgPiBsaSB7XG5cdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cblx0XHRcdCYgKyBsaSB7XG5cdFx0XHRcdG1hcmdpbi1sZWZ0OiAtMXB4O1xuXHRcdFx0fVxuXG5cdFx0XHQmID4gYSB7XG5cdFx0XHRcdGJvcmRlci1yYWRpdXM6IDVweCA1cHggMCAwO1xuXHRcdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XHR9XG5cblx0XHRcdCY6bm90KDpsYXN0LWNoaWxkKSA+IGE6YmVmb3JlIHtcblx0XHRcdFx0d2lkdGg6IDFweDtcblx0XHRcdFx0aGVpZ2h0OiAyMHB4O1xuXHRcdFx0XHRjb250ZW50OiBcIlwiO1xuXHRcdFx0XHRiYWNrZ3JvdW5kOiBpZihzZXR0aW5nLXZhbHVlKCdoZWFkZXJfdXNlX2RlZmF1bHRfd2Vic2l0ZV9jb2xvcnMnKSwgJGNvbG9yX2dsb2JhbF9ncmV5X2JhY2tncm91bmRzLCAkY29sb3JfaGVhZGVyX2NhdGVnb3J5X21lbnVfZGl2aWRlcnMpO1xuXHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRcdHJpZ2h0OiAwO1xuXHRcdFx0XHR0b3A6IDUwJTtcblx0XHRcdFx0bWFyZ2luLXRvcDogLTEwcHg7XG5cdFx0XHR9XG5cblx0XHRcdCYuaXMtYWN0aXZlID4gYSB7XG5cdFx0XHRcdGJhY2tncm91bmQ6IGlmKHNldHRpbmctdmFsdWUoJ2hlYWRlcl91c2VfZGVmYXVsdF93ZWJzaXRlX2NvbG9ycycpLCAkY29sb3JfZ2xvYmFsX2xpZ2h0X2JhY2tncm91bmRzLCAkY29sb3JfaGVhZGVyX3N1Ym1lbnVfYmFja2dyb3VuZCk7XG5cblx0XHRcdFx0JjphZnRlciB7XG5cdFx0XHRcdFx0YmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG5cdFx0XHRcdH1cblx0XHRcdH1cblxuXHRcdFx0Ji5pcy1hY3RpdmUgPiBhOmJlZm9yZSB7XG5cdFx0XHRcdGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdC5zdWJtZW51IHtcblx0XHRcdGJhY2tncm91bmQ6IGlmKHNldHRpbmctdmFsdWUoJ2hlYWRlcl91c2VfZGVmYXVsdF93ZWJzaXRlX2NvbG9ycycpLCAkY29sb3JfZ2xvYmFsX2xpZ2h0X2JhY2tncm91bmRzLCAkY29sb3JfaGVhZGVyX3N1Ym1lbnVfYmFja2dyb3VuZCk7XG5cdFx0XHRib3JkZXItcmFkaXVzOiA1cHg7XG5cdFx0XHRtYXJnaW4tdG9wOiAtNXB4O1xuXHRcdFx0cGFkZGluZy10b3A6IDVweDtcblx0XHRcdGJvcmRlcjogMDtcblx0XHRcdGJveC1zaGFkb3c6IG5vbmU7XG5cblx0XHRcdCYubWVudSA+IGxpID4gYSB7XG5cdFx0XHRcdGNvbG9yOiBpZihzZXR0aW5nLXZhbHVlKCdoZWFkZXJfdXNlX2RlZmF1bHRfd2Vic2l0ZV9jb2xvcnMnKSwgJGNvbG9yX2dsb2JhbF9ibGFja190ZXh0LCAkY29sb3JfaGVhZGVyX3N1Ym1lbnVfaXRlbXMpO1xuXHRcdFx0XHRwYWRkaW5nOiAxLjA5cmVtIDA7XG5cdFx0XHRcdG1hcmdpbjogMCAxLjQ1cmVtO1xuXHRcdFx0fVxuXG5cdFx0XHRsaSArIGxpIGEge1xuXHRcdFx0XHRib3JkZXItdG9wOiAxcHggc29saWQgaWYoc2V0dGluZy12YWx1ZSgnaGVhZGVyX3VzZV9kZWZhdWx0X3dlYnNpdGVfY29sb3JzJyksICRjb2xvcl9nbG9iYWxfZ3JleV9iYWNrZ3JvdW5kcywgJGNvbG9yX2hlYWRlcl9zdWJtZW51X2RpdmlkZXJzKTtcblx0XHRcdH1cblx0XHR9XG5cdH1cbn1cblxuLnN1Yi1uYXYtY29udGFpbmVyIHtcblx0JHN1Ym1lbnVfYmFja2dyb3VuZDogJGNvbG91cl9tYWluO1xuXHQkc3VibWVudV90ZXh0X2NvbG91cjogJHdoaXRlO1xuXG5cdGJhY2tncm91bmQtY29sb3I6IGlmKHNldHRpbmctdmFsdWUoJ2hlYWRlcl91c2VfZGVmYXVsdF93ZWJzaXRlX2NvbG9ycycpLCAkY29sb3JfZ2xvYmFsX2xpZ2h0X2JhY2tncm91bmRzLCAkY29sb3JfaGVhZGVyX3N1Ym1lbnVfYmFja2dyb3VuZCk7O1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdGxlZnQ6IDA7XG5cdHJpZ2h0OiAwO1xuXHR6LWluZGV4OiAxMDtcblxuXHR1bCB7XG5cdFx0bWFyZ2luLWJvdHRvbTogMDtcblx0XHRwYWRkaW5nOiAxLjI1cmVtIDA7XG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXG5cdFx0QG1lZGlhICN7JGwtdXB9IHtcblx0XHRcdG1heC13aWR0aDogJHRoZW1lX3dpZHRoO1xuXHRcdFx0bWFyZ2luLWxlZnQ6IGF1dG87XG5cdFx0XHRtYXJnaW4tcmlnaHQ6IGF1dG87XG5cdFx0fVxuXG5cdFx0bGkge1xuXHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdFx0cGFkZGluZy1yaWdodDogMS43NXJlbTtcblxuXHRcdFx0YSB7XG5cdFx0XHRcdGNvbG9yOiBpZihzZXR0aW5nLXZhbHVlKCdoZWFkZXJfdXNlX2RlZmF1bHRfd2Vic2l0ZV9jb2xvcnMnKSwgJGNvbG9yX2dsb2JhbF9ibGFja190ZXh0LCAkY29sb3JfaGVhZGVyX3N1Ym1lbnVfaXRlbXMpO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdC5zZWxlY3Rpb24tdHJpYW5nbGUge1xuXHRcdGNvbnRlbnQ6ICcnO1xuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHR0b3A6IC0xMHB4O1xuXHRcdGxlZnQ6IDA7XG5cdFx0d2lkdGg6IDA7XG5cdFx0aGVpZ2h0OiAwO1xuXHRcdGJvcmRlci1zdHlsZTogc29saWQ7XG5cdFx0Ym9yZGVyLXdpZHRoOiAwIDhweCAxMHB4IDhweDtcblx0XHRib3JkZXItY29sb3I6ICR0cmFuc3BhcmVudCAkdHJhbnNwYXJlbnQgaWYoc2V0dGluZy12YWx1ZSgnaGVhZGVyX3VzZV9kZWZhdWx0X3dlYnNpdGVfY29sb3JzJyksICRjb2xvcl9nbG9iYWxfbGlnaHRfYmFja2dyb3VuZHMsICRjb2xvcl9oZWFkZXJfc3VibWVudV9iYWNrZ3JvdW5kKSAkdHJhbnNwYXJlbnQ7XG5cdH1cbn1cblxuLm1vYmlsZS1tZW51LXRvZ2dsZSB7XG5cdEBpbmNsdWRlIHJlbShtYXJnaW4tcmlnaHQsIDE4cHgpO1xuXHRjb2xvcjogaWYoc2V0dGluZy12YWx1ZSgncmVzcG9uc2l2ZV9oZWFkZXJfdXNlX2RlZmF1bHRfd2Vic2l0ZV9jb2xvcnMnKSwgJGNvbG9yX2dsb2JhbF9wdXJwbGVfaWNvbnMsICRjb2xvcl9yZXNwb25zaXZlX21lbnUpO1xuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG5cblx0aSB7XG5cdFx0QGluY2x1ZGUgcmVtKGZvbnQtc2l6ZSwgMjVweCk7XG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHR9XG59XG5cbi5oZWFkZXItbW9iaWxlLWJhc2tldCB7XG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0cGFkZGluZzogMCAxcmVtO1xuXHRtYXJnaW4tcmlnaHQ6IC0xcmVtO1xuXHR2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXHRAaW5jbHVkZSByZW0oZm9udC1zaXplLCAyNnB4KTtcblx0Y29sb3I6IGlmKHNldHRpbmctdmFsdWUoJ3Jlc3BvbnNpdmVfaGVhZGVyX3VzZV9kZWZhdWx0X3dlYnNpdGVfY29sb3JzJyksICRjb2xvcl9nbG9iYWxfcHVycGxlX2ljb25zLCAkY29sb3JfcmVzcG9uc2l2ZV9iYXNrZXQpO1xuXHRsaW5lLWhlaWdodDogMTtcblxuXHRpIHtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRsaW5lLWhlaWdodDogMTtcblx0XHR2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXHR9XG59XG5cbkBtZWRpYSAjeyRtLWRvd259IHtcblx0Lm1vYmlsZS1saW5rcyB7XG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHR9XG5cblx0LnNpdGUtaGVhZGVyIC5oZWFkZXItY3VycmVuY3kgLmN1cnJlbmN5LWRyb3Bkb3duIHtcblx0XHRtYXJnaW4tdG9wOiAwO1xuXHRcdHJpZ2h0OiAuOTM3NXJlbSAhaW1wb3J0YW50O1xuXHR9XG59XG5cbkBtZWRpYSAjeyRzLW9ubHl9IHtcblx0Lm1vYmlsZS1saW5rcyB7XG5cdFx0cG9zaXRpb246IHN0YXRpYztcblx0fVxuXG5cdC5zaXRlLWhlYWRlciAuaGVhZGVyLWN1cnJlbmN5IC5jdXJyZW5jeS1kcm9wZG93biB7XG5cdFx0cmlnaHQ6IDAgIWltcG9ydGFudDtcblx0XHR3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuXHR9XG59XG4iLCIvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLyogI1BhZ2UtZm9vdCAqL1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLnNpdGUtZm9vdGVyIHtcbiAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgIGJvcmRlci10b3A6IDRweCBzb2xpZCBpZihzZXR0aW5nLXZhbHVlKCdmb290ZXJfdXNlX2RlZmF1bHRfd2Vic2l0ZV9jb2xvcnMnKSwgJGNvbG9yX2dsb2JhbF9saWdodF9iYWNrZ3JvdW5kcywgJGNvbG9yX2Zvb3Rlcl90b3BfYm9yZGVyKTtcbiAgICBcbiAgICAuY29udGFjdC1pbmZvcm1hdGlvbiB7XG4gICAgICAgIGNvbG9yOiBpZihzZXR0aW5nLXZhbHVlKCdmb290ZXJfdXNlX2RlZmF1bHRfd2Vic2l0ZV9jb2xvcnMnKSwgJGNvbG9yX2dsb2JhbF9ibGFja190ZXh0LCAkY29sb3JfZm9vdGVyX2NvbnRhY3RfaW5mb3JtYXRpb24pO1xuICAgICAgICBtYXJnaW4tdG9wOiAuNXJlbTtcbiAgICAgICAgQGluY2x1ZGUgcmVtKGZvbnQtc2l6ZSwgMTJweCk7XG4gICAgfVxuICAgIFxuICAgIC5mb290ZXItY29weSB7XG4gICAgICAgIGNvbG9yOiBpZihzZXR0aW5nLXZhbHVlKCdmb290ZXJfdXNlX2RlZmF1bHRfd2Vic2l0ZV9jb2xvcnMnKSwgJGNvbG9yX2dsb2JhbF9ibGFja190ZXh0LCAkY29sb3JfZm9vdGVyX2NvcHlyaWdodCk7XG4gICAgICAgIEBpbmNsdWRlIHJlbShmb250LXNpemUsIDEwcHgpO1xuICAgICAgICBtYXJnaW4tdG9wOiAycmVtO1xuICAgICAgICBcbiAgICAgICAgYSB7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgICAgIGNvbG9yOiBpZihzZXR0aW5nLXZhbHVlKCdmb290ZXJfdXNlX2RlZmF1bHRfd2Vic2l0ZV9jb2xvcnMnKSwgJGNvbG9yX2dsb2JhbF9ibGFja190ZXh0LCAkY29sb3JfZm9vdGVyX2NvcHlyaWdodCk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLmJ1dHRvbi5tZCB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAuN3JlbTtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAuN3JlbTtcbiAgICAgICAgZm9udC1zaXplOiAkZm9udF9zaXplX2Zvb3Rlcl9idXR0b25zO1xuICAgIH1cbn1cblxuLmZvb3Rlci1jYWxsIHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIFxuICAgIHNwYW4sIGEge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHBhZGRpbmc6IDEuMzVyZW0gMi4xOHJlbTtcbiAgICB9XG4gICAgXG4gICAgLmNvbnRhY3QtbnVtYmVyIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBAaW5jbHVkZSByZW0ocGFkZGluZy1sZWZ0LCAzMHB4KTtcbiAgICAgICAgXG4gICAgICAgIGkge1xuICAgICAgICAgICAgQGluY2x1ZGUgdmVydGljYWwtYWxpZ24oYWJzb2x1dGUpO1xuICAgICAgICAgICAgQGluY2x1ZGUgcmVtKGZvbnQtc2l6ZSwgMjFweCk7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgICYuc2hvdy1mb3ItdHMge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICBAbWVkaWEgKHBvaW50ZXI6IGNvYXJzZSkgYW5kIChob3Zlcjogbm9uZSkge1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uZm9vdGVyLXBheW1lbnQtbGlzdCB7XG4gICAgbWFyZ2luOiAxcmVtIDAgLTFyZW0gMDtcbn1cblxuXG5cbi5mb290ZXItdG9wIHtcbiAgICBAaW5jbHVkZSByZW0ocGFkZGluZywgOXB4IDApO1xuICAgIFxuICAgIGg0IHtcbiAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogLjZyZW07XG4gICAgICAgIEBpbmNsdWRlIHJlbShwYWRkaW5nLXRvcCwgMjFweCk7XG4gICAgICAgIGNvbG9yOiBpZihzZXR0aW5nLXZhbHVlKCdmb290ZXJfdXNlX2RlZmF1bHRfd2Vic2l0ZV9jb2xvcnMnKSwgJGNvbG9yX2dsb2JhbF9ibGFja190aXRsZXMsICRjb2xvcl9mb290ZXJfbWVudV90aXRsZSk7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgIGZvbnQtc2l6ZTogJGZvbnRfc2l6ZV9mb290ZXJfbWVudV90aXRsZXM7XG4gICAgICAgIFxuICAgICAgICAmLmNvbnRhY3Qge1xuICAgICAgICAgICAgY29sb3I6IGlmKHNldHRpbmctdmFsdWUoJ2Zvb3Rlcl91c2VfZGVmYXVsdF93ZWJzaXRlX2NvbG9ycycpLCAkY29sb3JfZ2xvYmFsX2JsYWNrX3RpdGxlcywgJGNvbG9yX2Zvb3Rlcl9jb250YWN0X3RpdGxlKTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5mb290ZXItc29jaWFsIHtcbiAgICBtYXJnaW4tdG9wOiAycmVtO1xuICAgIFxuICAgICYubWVudSBsaSB7XG4gICAgICAgIG1hcmdpbjogMCAxcmVtO1xuICAgIH1cbiAgICBcbiAgICBhIHtcbiAgICAgICAgY29sb3I6IGlmKHNldHRpbmctdmFsdWUoJ2Zvb3Rlcl91c2VfZGVmYXVsdF93ZWJzaXRlX2NvbG9ycycpLCAkY29sb3JfZ2xvYmFsX2JsYWNrX2ljb25zLCAkY29sb3JfZm9vdGVyX3NvY2lhbF9tZWRpYSk7XG4gICAgICAgIGZvbnQtc2l6ZTogJGZvbnRfc2l6ZV9mb290ZXJfc29jaWFsX2ljb25zO1xuICAgIH1cbn1cblxuLmZvb3Rlci1saXN0IHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cbiAgICAmLm1lbnUgPiBsaSA+IGEge1xuICAgICAgICBwYWRkaW5nOiAuN3JlbSAwO1xuICAgIH1cbiAgICBcbiAgICBsaSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB9XG4gICAgXG4gICAgbGkgKyBsaSB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICB9XG4gICAgXG4gICAgYSB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMCAhaW1wb3J0YW50O1xuICAgICAgICBjb2xvcjogaWYoc2V0dGluZy12YWx1ZSgnZm9vdGVyX3VzZV9kZWZhdWx0X3dlYnNpdGVfY29sb3JzJyksICRjb2xvcl9nbG9iYWxfYmxhY2tfdGV4dCwgJGNvbG9yX2Zvb3Rlcl9tZW51X2l0ZW1zKTtcbiAgICAgICAgZm9udC1zaXplOiAkZm9udF9zaXplX2Zvb3Rlcl9tZW51X2l0ZW1zO1xuICAgIH1cbiAgICBcbiAgICBAbWVkaWEgI3skbS11cH0ge1xuICAgICAgICBsaSArIGxpIGE6YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiL1wiO1xuICAgICAgICAgICAgbWFyZ2luOiAwIDEwcHg7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDVweDtcbiAgICAgICAgICAgIGNvbG9yOiBpZihzZXR0aW5nLXZhbHVlKCdmb290ZXJfdXNlX2RlZmF1bHRfd2Vic2l0ZV9jb2xvcnMnKSwgJGNvbG9yX2dsb2JhbF9ibGFja19pY29ucywgJGNvbG9yX2Zvb3Rlcl9tZW51X2RpdmlkZXJzKTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnBheW1lbnQtaWNvbnMge1xuXHRcblx0bWFyZ2luLXRvcDogMXJlbTtcblx0XG5cdEBtZWRpYSAjeyRzLW9ubHl9IHtcblx0XHR3aWR0aDogMjJyZW07XG5cdFx0cGFkZGluZy1yaWdodDogMXJlbTtcblx0XHRtYXJnaW46IDAgYXV0bztcblx0fVxuXG5cdGkge1xuXHRcdGZvbnQtc2l6ZTogJGZvbnRfc2l6ZV9mb290ZXJfcGF5bWVudF9pY29ucztcblx0XHRoZWlnaHQ6IDM1cHg7XG5cdFx0bWFyZ2luOiA1cHggMHB4IDVweCA4cHg7XG5cdFx0d2lkdGg6IDM1cHg7XG5cdFx0Y29sb3I6IGlmKHNldHRpbmctdmFsdWUoJ2Zvb3Rlcl91c2VfZGVmYXVsdF93ZWJzaXRlX2NvbG9ycycpLCAkY29sb3JfZ2xvYmFsX2JsYWNrX2ljb25zLCAkY29sb3JfZm9vdGVyX3BheW1lbnRfaWNvbnMpO1xuXHR9XG59IiwiJGNvbG91cl9tZW51X2dyYXk6IGlmKHNldHRpbmctdmFsdWUoJ3Jlc3BvbnNpdmVfb2ZmX2NhbnZhc191c2VfZGVmYXVsdF93ZWJzaXRlX2NvbG9ycycpLCAkY29sb3JfZ2xvYmFsX2xpZ2h0X2JhY2tncm91bmRzLCAkY29sb3JfcmVzcG9uc2l2ZV9hY2NlbnRfYmFja2dyb3VuZCk7IC8vIG1lbnUgYmdcblxuLm9mZi1jYW52YXMge1xuXG4gICAgJi1tb2JpbGUsICYtZmlsdGVycyB7XG4gICAgICAgIHdpZHRoOiAzNTBweDtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNmb3JtKCB0cmFuc2xhdGVYKC0zNTBweCkgKTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcblxuICAgICAgICBhLm9mZi1jYW52YXMtaGVhZGVyIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDEuMnJlbSAxLjVyZW07XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IGlmKHNldHRpbmctdmFsdWUoJ3dlYnNpdGVfY29sb3Vyc191c2VfZGVmYXVsdF93ZWJzaXRlX2NvbG9ycycpLCAkY29sb3JfZ2xvYmFsX2FjY2VudF9jb2xvdXIsICRjb2xvcl93ZWJzaXRlX2FjY2VudCk7XG4gICAgICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgICAgIEBpbmNsdWRlIHJlbShmb250LXNpemUsIDE4cHgpO1xuICAgICAgICAgICAgXG4gICAgICAgICAgICBpIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAmLW1vYmlsZSB7XG4gICAgICAgIGJhY2tncm91bmQ6IGlmKHNldHRpbmctdmFsdWUoJ3Jlc3BvbnNpdmVfb2ZmX2NhbnZhc191c2VfZGVmYXVsdF93ZWJzaXRlX2NvbG9ycycpLCAkY29sb3JfZ2xvYmFsX3doaXRlX2JhY2tncm91bmRzLCAkY29sb3JfcmVzcG9uc2l2ZV9tYWluX2JhY2tncm91bmQpO1xuICAgICAgICBcbiAgICAgICAgLmlzLWRyaWxsZG93bi1zdWJtZW51IHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IGlmKHNldHRpbmctdmFsdWUoJ3Jlc3BvbnNpdmVfb2ZmX2NhbnZhc191c2VfZGVmYXVsdF93ZWJzaXRlX2NvbG9ycycpLCAkY29sb3JfZ2xvYmFsX3doaXRlX2JhY2tncm91bmRzLCAkY29sb3JfcmVzcG9uc2l2ZV9tYWluX2JhY2tncm91bmQpO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICBhLm9mZi1jYW52YXMtaGVhZGVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IGlmKHNldHRpbmctdmFsdWUoJ3Jlc3BvbnNpdmVfb2ZmX2NhbnZhc191c2VfZGVmYXVsdF93ZWJzaXRlX2NvbG9ycycpLCAkY29sb3JfZ2xvYmFsX2FjY2VudF9jb2xvdXIsICRjb2xvcl9yZXNwb25zaXZlX21lbnVfdG9wX2JhY2tncm91bmQpO1xuICAgICAgICAgICAgY29sb3I6IGlmKHNldHRpbmctdmFsdWUoJ3Jlc3BvbnNpdmVfb2ZmX2NhbnZhc191c2VfZGVmYXVsdF93ZWJzaXRlX2NvbG9ycycpLCAkY29sb3JfZ2xvYmFsX3doaXRlX3RleHRfaWNvbnMsICRjb2xvcl9yZXNwb25zaXZlX21lbnVfdG9wX2ljb24pO1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgICYtZmlsdGVycyB7XG4gICAgICAgIFxuICAgICAgICAuYWNjb3JkaW9uIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAuZmlsdGVycyB7XG4gICAgICAgICAgICBwYWRkaW5nOiAuMnJlbSAxLjVyZW07XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5jbG9zZS1maWx0ZXJzIHtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgcGFkZGluZzogMCAxLjVyZW07XG4gICAgICAgICAgICBjb2xvcjogJGNvbG91cl9ib2R5dHh0O1xuICAgICAgICAgICAgQGluY2x1ZGUgcmVtKGZvbnQtc2l6ZSwgMTJweCk7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5yZXNldC1hbGwtYnV0dG9uIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmOjotd2Via2l0LXNjcm9sbGJhciB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICAgIFxuICAgICY6YWZ0ZXIge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbn1cblxuJW1lbnVfaXRlbSB7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblxuICAgICYuaXMtZHJpbGxkb3duLXN1Ym1lbnUtcGFyZW50PmE6YWZ0ZXIge1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIGNvbnRlbnQ6ICdcXGU5M2InO1xuICAgICAgICBmb250LWZhbWlseTogJGljb247XG4gICAgICAgIHJpZ2h0OiAycmVtO1xuICAgICAgICBjb2xvcjogaWYoc2V0dGluZy12YWx1ZSgncmVzcG9uc2l2ZV9vZmZfY2FudmFzX3VzZV9kZWZhdWx0X3dlYnNpdGVfY29sb3JzJyksICRjb2xvcl9nbG9iYWxfYmxhY2tfaWNvbnMsICRjb2xvcl9yZXNwb25zaXZlX21haW5fYXJyb3cpO1xuICAgIH1cblxuICAgICYuanMtZHJpbGxkb3duLWJhY2s+YTpiZWZvcmUge1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIGNvbnRlbnQ6ICdcXGU5MzgnO1xuICAgICAgICBmb250LWZhbWlseTogJGljb247XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMS4yNXJlbTtcbiAgICB9XG59XG5cbi5tb2JpbGUtbWVudSB7XG4gICAgcGFkZGluZy10b3A6IDMuNzVyZW07XG4gICAgY29sb3I6IGlmKHNldHRpbmctdmFsdWUoJ3Jlc3BvbnNpdmVfb2ZmX2NhbnZhc191c2VfZGVmYXVsdF93ZWJzaXRlX2NvbG9ycycpLCAkY29sb3JfZ2xvYmFsX2JsYWNrX3RleHQsICRjb2xvcl9yZXNwb25zaXZlX2FjY2VudF90ZXh0KTtcblxuICAgICYtY29udGFpbmVyIHtcblxuICAgICAgICAuaXMtZHJpbGxkb3duIHtcbiAgICAgICAgICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgICAgIH1cblxuICAgICAgICA+IC5yb3c6Zmlyc3QtY2hpbGQgPiAuY29sdW1uOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCBpZihzZXR0aW5nLXZhbHVlKCdyZXNwb25zaXZlX29mZl9jYW52YXNfdXNlX2RlZmF1bHRfd2Vic2l0ZV9jb2xvcnMnKSwgJGNvbG9yX2dsb2JhbF93aGl0ZV9iYWNrZ3JvdW5kcywgJGNvbG9yX3Jlc3BvbnNpdmVfbWFpbl9iYWNrZ3JvdW5kKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYtaGVhZGluZyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvdXJfbWVudV9ncmF5O1xuICAgICAgICBjb2xvcjogaWYoc2V0dGluZy12YWx1ZSgncmVzcG9uc2l2ZV9vZmZfY2FudmFzX3VzZV9kZWZhdWx0X3dlYnNpdGVfY29sb3JzJyksICRjb2xvcl9nbG9iYWxfYmxhY2tfdGV4dCwgJGNvbG9yX3Jlc3BvbnNpdmVfYWNjZW50X3RleHQpO1xuICAgICAgICBwYWRkaW5nOiAxLjA1cmVtIDEuNXJlbTtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuXG4gICAgPiBsaSB7XG5cbiAgICAgICAgPiAubW9iaWxlLW1lbnUtYnV0dG9uIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvdXJfbWVudV9ncmF5O1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRmb250X2JvZHk7XG4gICAgICAgICAgICB3aWR0aDogNTAlO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgIGhlaWdodDogMy43NXJlbTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAzLjc1cmVtO1xuICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgLjVyZW07XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG91cl9tZW51X2dyYXk7XG4gICAgICAgICAgICBjb2xvcjogaWYoc2V0dGluZy12YWx1ZSgncmVzcG9uc2l2ZV9vZmZfY2FudmFzX3VzZV9kZWZhdWx0X3dlYnNpdGVfY29sb3JzJyksICRjb2xvcl9nbG9iYWxfYmxhY2tfdGV4dCwgJGNvbG9yX3Jlc3BvbnNpdmVfYWNjZW50X3RleHQpO1xuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcblxuICAgICAgICAgICAgQGluY2x1ZGUgaXMtYWN0aXZlIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3VyX21lbnVfZ3JheTtcbiAgICAgICAgICAgICAgICBjb2xvcjogaWYoc2V0dGluZy12YWx1ZSgncmVzcG9uc2l2ZV9vZmZfY2FudmFzX3VzZV9kZWZhdWx0X3dlYnNpdGVfY29sb3JzJyksICRjb2xvcl9nbG9iYWxfYmxhY2tfdGV4dCwgJGNvbG9yX3Jlc3BvbnNpdmVfYWNjZW50X3RleHQpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgXG4gICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogNXB4O1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHJlbShmb250LXNpemUsIDEycHgpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgXG4gICAgICAgICAgICBpIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSByZW0oZm9udC1zaXplLCAxNnB4KTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICY6bm90KDpmaXJzdC1jaGlsZCkgPiAubW9iaWxlLW1lbnUtYnV0dG9uIHtcbiAgICAgICAgICAgIGxlZnQ6IGF1dG87XG4gICAgICAgICAgICByaWdodDogMDtcblxuICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICBsZWZ0OiAxcHg7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCBpZihzZXR0aW5nLXZhbHVlKCdyZXNwb25zaXZlX29mZl9jYW52YXNfdXNlX2RlZmF1bHRfd2Vic2l0ZV9jb2xvcnMnKSwgJGNvbG9yX2dsb2JhbF93aGl0ZV9iYWNrZ3JvdW5kcywgJGNvbG9yX3Jlc3BvbnNpdmVfbWFpbl9iYWNrZ3JvdW5kKTtcbiAgICAgICAgICAgICAgICB3aWR0aDogMXB4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBsaSB7XG4gICAgICAgIEBleHRlbmQgJW1lbnVfaXRlbTtcblxuICAgICAgICBhIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IGlmKHNldHRpbmctdmFsdWUoJ3Jlc3BvbnNpdmVfb2ZmX2NhbnZhc191c2VfZGVmYXVsdF93ZWJzaXRlX2NvbG9ycycpLCAkY29sb3JfZ2xvYmFsX3doaXRlX2JhY2tncm91bmRzLCAkY29sb3JfcmVzcG9uc2l2ZV9tYWluX2JhY2tncm91bmQpO1xuICAgICAgICAgICAgY29sb3I6IGlmKHNldHRpbmctdmFsdWUoJ3Jlc3BvbnNpdmVfb2ZmX2NhbnZhc191c2VfZGVmYXVsdF93ZWJzaXRlX2NvbG9ycycpLCAkY29sb3JfZ2xvYmFsX2JsYWNrX3RleHQsICRjb2xvcl9yZXNwb25zaXZlX21haW5fdGV4dCk7XG4gICAgICAgICAgICBwYWRkaW5nOiAxcmVtIDEuNXJlbTtcbiAgICAgICAgfVxuXG4gICAgICAgICYgKyBsaSBhIHtcbiAgICAgICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkY29sb3VyX21lbnVfZ3JheTtcbiAgICAgICAgfVxuXG4gICAgICAgICYuc3ViLWxpc3QgYSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3VyX21lbnVfZ3JheTtcbiAgICAgICAgICAgIGJvcmRlci10b3AtY29sb3I6IGlmKHNldHRpbmctdmFsdWUoJ3Jlc3BvbnNpdmVfb2ZmX2NhbnZhc191c2VfZGVmYXVsdF93ZWJzaXRlX2NvbG9ycycpLCAkY29sb3JfZ2xvYmFsX3doaXRlX2JhY2tncm91bmRzLCAkY29sb3JfcmVzcG9uc2l2ZV9tYWluX2JhY2tncm91bmQpO1xuICAgICAgICAgICAgY29sb3I6IGlmKHNldHRpbmctdmFsdWUoJ3Jlc3BvbnNpdmVfb2ZmX2NhbnZhc191c2VfZGVmYXVsdF93ZWJzaXRlX2NvbG9ycycpLCAkY29sb3JfZ2xvYmFsX2JsYWNrX3RleHQsICRjb2xvcl9yZXNwb25zaXZlX2FjY2VudF90ZXh0KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5uZXN0ZWQge1xuICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICB9XG59IiwiXG4uc3ctc2VjdGlvbiB7XG5cbiAgICAvLyBzbGlkZXJfaW1hZ2Vfd2l0aF90ZXh0XG4gICAgJi1zbGlkZXItaW1nLXdpdGgtdGV4dCB7XG5cbiAgICAgICAgJi5zbGljay1zbGlkZXI6bm90KC5zbGljay1pbml0aWFsaXplZCkge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAgICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICAgaGVpZ2h0OiAzNXZ3O1xuICAgICAgICB9XG5cbiAgICAgICAgPiAuYXJyb3cge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0YzRjBFRTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgQGluY2x1ZGUgcmVtKGZvbnQtc2l6ZSwgMjBweCk7XG4gICAgICAgICAgICBAaW5jbHVkZSByZW0od2lkdGgsIDUwcHgpO1xuICAgICAgICAgICAgQGluY2x1ZGUgcmVtKGhlaWdodCwgNTBweCk7XG4gICAgICAgICAgICBAaW5jbHVkZSByZW0obGluZS1oZWlnaHQsIDUwcHgpO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgY29sb3I6ICMxQTE5MTk7XG5cbiAgICAgICAgICAgIGkge1xuICAgICAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuc3ctc2VjdGlvbi1zbGlkZSB7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgICAgID4gLmltYWdlLWNvbnRhaW5lciB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy10b3A6IDEwMCU7XG5cbiAgICAgICAgICAgICAgICBAbWVkaWEgI3skbS11cH0ge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogMzUlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIFxuICAgICAgICAgICAgPiAucmVzcG9uc2l2ZS1lbWJlZCB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDEwMCU7XG5cbiAgICAgICAgICAgICAgICBAbWVkaWEgI3skbS11cH0ge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMzUlO1x0XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTIwMHB4KSB7XG5cbiAgICAgICAgICAgICAgICAgICAgaWZyYW1lIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIC8vbWF4LXdpZHRoOiAxMjAwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2Zvcm0oIHRyYW5zbGF0ZVgoLTUwJSkgKTsgXG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgXG5cbiAgICAgICAgJi1kb3RuYXYge1xuICAgICAgICAgICAgYm90dG9tOiBhdXRvO1xuXG4gICAgICAgICAgICBAbWVkaWEgI3skbS1kb3dufSB7XG4gICAgICAgICAgICAgICAgdG9wOiAxMDAlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAbWVkaWEgI3skbC11cH0ge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHJlbShib3R0b20sIDMwcHgpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuXG4gICAgICAgICAgICAgICAgYnV0dG9uOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjRjlGOUY5O1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSByZW0oZm9udC1zaXplLCAxNXB4KTtcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmLnNsaWNrLWFjdGl2ZSBidXR0b246YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICMzMTkyOTU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnN3LXNlY3Rpb24tc2xpZGUtYnV0dG9uLW92ZXJsYXkge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICAgICBAbWVkaWEgI3skbS11cH0ge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHZlcnRpY2FsLWFsaWduKGFic29sdXRlLCB0cnVlKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi5tb2QtYWxpZ24ge1xuXG4gICAgICAgICAgICAgICAgJi1sZWZ0IHtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogMjVweDtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNmb3JtKCB0cmFuc2xhdGUoMCwgLTUwJSkgKTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmLXJpZ2h0IHtcbiAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IDI1cHg7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2Zvcm0oIHRyYW5zbGF0ZSgwLCAtNTAlKSApO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmJ1dHRvbiB7XG4gICAgICAgICAgICAgICAgYm9yZGVyOiAycHggc29saWQgI0ZGRjtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgY29sb3I6ICNGRkY7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgcmVtKG1pbi13aWR0aCwgMjAwcHgpO1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHJlbShwYWRkaW5nLCAyMHB4KTtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXHQmLnNsaWNrLWRvdHRlZCB7XG5cdFx0QG1lZGlhICN7JGwtdXB9IHtcblx0XHRcdG1hcmdpbi1ib3R0b206IDA7XG5cdFx0fVxuXHR9XG4gICAgJi1zbGlkZS1vdmVybGF5IHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogaWYoc2V0dGluZy12YWx1ZSgnc2VjdGlvbnNfdXNlX2RlZmF1bHRfd2Vic2l0ZV9jb2xvcnMnKSwgI0ZGRiwgJGNvbG9yX3NlY3Rpb25zX2hlcm9faW1hZ2Vfc2xpZGVyX2JhY2tncm91bmQpO1xuICAgICAgICBAaW5jbHVkZSByZW0ocGFkZGluZywgMjBweCk7XG5cbiAgICAgICAgQG1lZGlhICN7JG0tZG93bn0ge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgQGluY2x1ZGUgcmVtKHRvcCwgLTUwcHgpO1xuICAgICAgICAgICAgQGluY2x1ZGUgcmVtKG1hcmdpbi1sZWZ0LCAxNXB4KTtcbiAgICAgICAgICAgIEBpbmNsdWRlIHJlbShtYXJnaW4tcmlnaHQsIDE1cHgpO1xuICAgICAgICAgICAgQGluY2x1ZGUgcmVtKHBhZGRpbmctdG9wLCA2MHB4KTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBtZWRpYSAjeyRtLXVwfSB7XG4gICAgICAgICAgICBAaW5jbHVkZSByZW0ocGFkZGluZywgMzhweCA2MHB4KTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBtZWRpYSAjeyRsLXVwfSB7XG4gICAgICAgICAgICBAaW5jbHVkZSByZW0od2lkdGgsIDUwOHB4KTtcbiAgICAgICAgICAgIEBpbmNsdWRlIHZlcnRpY2FsLWFsaWduKGFic29sdXRlKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGgyIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHJlbShmb250LXNpemUsIDI0cHgpO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjA1O1xuICAgICAgICAgICAgQGluY2x1ZGUgcmVtKG1hcmdpbi1ib3R0b20sIDIwcHgpO1xuICAgICAgICB9XG5cbiAgICAgICAgcCB7XG4gICAgICAgICAgICBAaW5jbHVkZSByZW0oZm9udC1zaXplLCAxNHB4KTtcbiAgICAgICAgICAgIEBpbmNsdWRlIHJlbShtYXJnaW4tYm90dG9tLCAyMHB4KTtcbiAgICAgICAgICAgIEBpbmNsdWRlIHJlbShtYXgtaGVpZ2h0LCA5MnB4KTtcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIH1cblxuICAgICAgICAmLWxpbmsge1xuICAgICAgICAgICAgY29sb3I6IGlmKHNldHRpbmctdmFsdWUoJ3NlY3Rpb25zX3VzZV9kZWZhdWx0X3dlYnNpdGVfY29sb3JzJyksICRjb2xvcl9nbG9iYWxfZ3JlZW5fYWNjZW50X2NvbG91ciwgJGNvbG9yX3NlY3Rpb25zX2hlcm9faW1hZ2Vfc2xpZGVyX2J1dHRvbl90ZXh0KTtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICB9XG5cbiAgICAgICAgJi1uYXYge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcblxuICAgICAgICAgICAgQG1lZGlhICN7JG0tdXB9IHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgcmVtKHJpZ2h0LCAtNTBweCk7XG4gICAgICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBidXR0b24ge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNGM0YwRUU7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgcmVtKGZvbnQtc2l6ZSwgMjBweCk7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgcmVtKHdpZHRoLCA1MHB4KTtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSByZW0oaGVpZ2h0LCA1MHB4KTtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSByZW0obGluZS1oZWlnaHQsIDUwcHgpO1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBjb2xvcjogIzFBMTkxOTtcblxuICAgICAgICAgICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHJlbSh0b3AsIDUwcHgpO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgcmVtKHRvcCwgLTUwcHgpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYtYnRuLmJ1dHRvbiB7XG4gICAgICAgICAgICBAaW5jbHVkZSByZW0oZm9udC1zaXplLCAxNHB4KTtcbiAgICAgICAgICAgIEBpbmNsdWRlIHJlbShwYWRkaW5nLCAyNHB4IDI2cHgpO1xuICAgICAgICAgICAgbWluLXdpZHRoOiBhdXRvO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAmLm1vZC1hbGlnbiB7XG5cbiAgICAgICAgICAgICYtbGVmdCB7XG4gICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICByaWdodDogYXV0bztcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi1yaWdodCB7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgbGVmdDogYXV0bztcblxuICAgICAgICAgICAgICAgIC5zdy1zZWN0aW9uLXNsaWRlLW92ZXJsYXktbmF2IHtcblxuICAgICAgICAgICAgICAgICAgICBAbWVkaWEgI3skbS11cH0ge1xuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgcmVtKGxlZnQsIC01MHB4KTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYtY2VudGVyIHtcbiAgICAgICAgICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgdmVydGljYWwtYWxpZ24oYWJzb2x1dGUsIHRydWUpO1xuICAgICAgICAgICAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIFxuICAgIC8vIEVORCBzbGlkZXJfaW1hZ2Vfd2l0aF90ZXh0XG5cblxuICAgIC8vIGltYWdlX3dpdGhfdGV4dFxuICAgICYtaW1nLXdpdGgtdGV4dCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IGlmKHNldHRpbmctdmFsdWUoJ3NlY3Rpb25zX3VzZV9kZWZhdWx0X3dlYnNpdGVfY29sb3JzJyksICNmM2YzZjMsICRjb2xvcl9zZWN0aW9uc19pbWFnZV93aXRoX3RleHRfc2VjdGlvbl9iYWNrZ3JvdW5kKTtcbiAgICAgICAgQGluY2x1ZGUgcmVtKHBhZGRpbmcsIDMwcHggMjBweCk7XG5cbiAgICAgICAgQG1lZGlhICN7JGwtdXB9IHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHJlbShwYWRkaW5nLCA2MHB4IDApO1xuICAgICAgICB9XG5cbiAgICAgICAgPiAucm93ID4gLmNvbHVtbiB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBpZihzZXR0aW5nLXZhbHVlKCdzZWN0aW9uc191c2VfZGVmYXVsdF93ZWJzaXRlX2NvbG9ycycpLCAkY29sb3JfZ2xvYmFsX3doaXRlX2JhY2tncm91bmRzLCAkY29sb3Jfc2VjdGlvbnNfaW1hZ2Vfd2l0aF90ZXh0X2JhY2tncm91bmQpO1xuXG4gICAgICAgICAgICA+ICoge1xuICAgICAgICAgICAgICAgIEBtZWRpYSAjeyRsLXVwfSB7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHZlcnRpY2FsLWFsaWduKCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnRleHQtb3ZlcmxheSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBpZihzZXR0aW5nLXZhbHVlKCdzZWN0aW9uc191c2VfZGVmYXVsdF93ZWJzaXRlX2NvbG9ycycpLCAkY29sb3JfZ2xvYmFsX3doaXRlX2JhY2tncm91bmRzLCAkY29sb3Jfc2VjdGlvbnNfaW1hZ2Vfd2l0aF90ZXh0X2JhY2tncm91bmQpO1xuICAgICAgICAgICAgQGluY2x1ZGUgcmVtKHBhZGRpbmcsIDIwcHgpO1xuXG4gICAgICAgICAgICBAbWVkaWEgI3skbC11cH0ge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHJlbShwYWRkaW5nLCA0NXB4KTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaDIge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHJlbShmb250LXNpemUsIDI0cHgpO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE4cHg7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgcmVtKG1hcmdpbi1ib3R0b20sIDE5cHgpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSByZW0oZm9udC1zaXplLCAxNHB4KTtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSByZW0obWFyZ2luLWJvdHRvbSwgMTlweCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLWJ0biB7XG4gICAgICAgICAgICBAaW5jbHVkZSByZW0obWluLXdpZHRoLCAxNzJweCk7XG4gICAgICAgICAgICBAaW5jbHVkZSByZW0ocGFkZGluZywgMTVweCk7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBpZihzZXR0aW5nLXZhbHVlKCdzZWN0aW9uc191c2VfZGVmYXVsdF93ZWJzaXRlX2NvbG9ycycpLCAkY29sb3JfZ2xvYmFsX2xpZ2h0X2dyZWVuX2FjY2VudF9jb2xvdXIsICRjb2xvcl9zZWN0aW9uc19pbWFnZV93aXRoX3RleHRfYnV0dG9uX2JhY2tncm91bmQpO1xuICAgICAgICAgICAgY29sb3I6IGlmKHNldHRpbmctdmFsdWUoJ3NlY3Rpb25zX3VzZV9kZWZhdWx0X3dlYnNpdGVfY29sb3JzJyksICRjb2xvcl9nbG9iYWxfbWFpbl9idXR0b25fdGV4dCwgJGNvbG9yX3NlY3Rpb25zX2ltYWdlX3dpdGhfdGV4dF9idXR0b25fdGV4dCk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLy8gRU5EIGltYWdlX3dpdGhfdGV4dFxuXG5cbiAgICAvLyBpbWctd2l0aC1vdmVybGF5XG4gICAgJi1pbWctd2l0aC1vdmVybGF5IHtcblxuICAgICAgICAuc2xpY2stc2xpZGVyIHtcbiAgICAgICAgICAgIEBtZWRpYSAjeyRsLXVwfSB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgcmVtKG1hcmdpbi1sZWZ0LCA1MHB4KTtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSByZW0obWFyZ2luLXJpZ2h0LCA1MHB4KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5hcnJvdyB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjNGMEVFO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBAaW5jbHVkZSByZW0oZm9udC1zaXplLCAyMHB4KTtcbiAgICAgICAgICAgIEBpbmNsdWRlIHJlbSh3aWR0aCwgNTBweCk7XG4gICAgICAgICAgICBAaW5jbHVkZSByZW0oaGVpZ2h0LCA1MHB4KTtcbiAgICAgICAgICAgIEBpbmNsdWRlIHJlbShsaW5lLWhlaWdodCwgNTBweCk7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICBjb2xvcjogIzFBMTkxOTtcblxuICAgICAgICAgICAgaSB7XG4gICAgICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBtZWRpYSAjeyRsLXVwfSB7XG4gICAgICAgICAgICAgICAgJi5hcnJvdy1wcmV2IHtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgcmVtKGxlZnQsIC01MHB4KTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmLmFycm93LW5leHQge1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSByZW0ocmlnaHQsIC01MHB4KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuaW5uZXIge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICAgICBAbWVkaWEgI3skbS11cH0ge1xuICAgICAgICAgICAgICAgIGJvcmRlcjogMTVweCBzb2xpZCBpZihzZXR0aW5nLXZhbHVlKCdzZWN0aW9uc191c2VfZGVmYXVsdF93ZWJzaXRlX2NvbG9ycycpLCAkY29sb3JfZ2xvYmFsX2xpZ2h0X2JhY2tncm91bmRzLCAkY29sb3Jfc2VjdGlvbnNfaW1hZ2Vfd2l0aF90ZXh0X292ZXJsYXlfYm9yZGVyKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5pbWFnZS1jb250YWluZXIge1xuXG4gICAgICAgICAgICBAbWVkaWEgI3skcy1vbmx5fSB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICBib3JkZXI6IDE1cHggc29saWQgI0YzRjBFRTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBtZWRpYSAjeyRtLXVwfSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy10b3A6IDM4JTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLnJlc3BvbnNpdmUtZW1iZWQge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAxMDAlO1xuXG4gICAgICAgICAgICAgICAgQG1lZGlhICN7JG0tdXB9IHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDM4JTtcdFxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEyMDBweCkge1xuXG4gICAgICAgICAgICAgICAgICAgIGlmcmFtZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAvL21heC13aWR0aDogMTIwMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNmb3JtKCB0cmFuc2xhdGVYKC01MCUpICk7IFxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgIC50ZXh0LW92ZXJsYXkge1xuICAgICAgICAgICAgY29sb3I6ICNGRkY7XG4gICAgICAgICAgICBAaW5jbHVkZSByZW0ocGFkZGluZywgMjBweCk7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICBAaW5jbHVkZSB2ZXJ0aWNhbC1hbGlnbihhYnNvbHV0ZSwgdHJ1ZSk7XG5cbiAgICAgICAgICAgIEBtZWRpYSAjeyRsLXVwfSB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgcmVtKG1pbi13aWR0aCwgNzgwcHgpO1xuXG4gICAgICAgICAgICAgICAgJi5tb2Qge1xuXG4gICAgICAgICAgICAgICAgICAgICYtbGVmdCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSB2ZXJ0aWNhbC1hbGlnbihhYnNvbHV0ZSwgZmFsc2UpO1xuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgcmVtKGxlZnQsIDIwcHgpO1xuICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICYtcmlnaHQge1xuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgdmVydGljYWwtYWxpZ24oYWJzb2x1dGUsIGZhbHNlKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHJlbShyaWdodCwgMjBweCk7XG4gICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IGF1dG87XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYtaGVhZGluZyB7XG4gICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRmb250X2hlYWRpbmc7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgcmVtKGZvbnQtc2l6ZSwgMjhweCk7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSByZW0obGluZS1oZWlnaHQsIDM2cHgpO1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHJlbShtYXJnaW4tYm90dG9tLCAzMHB4KTtcblxuICAgICAgICAgICAgICAgIHAge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmJ1dHRvbiB7XG4gICAgICAgICAgICAgICAgYm9yZGVyOiAycHggc29saWQgaWYoc2V0dGluZy12YWx1ZSgnc2VjdGlvbnNfdXNlX2RlZmF1bHRfd2Vic2l0ZV9jb2xvcnMnKSwgJGNvbG9yX2dsb2JhbF93aGl0ZV90ZXh0X2ljb25zLCAkY29sb3Jfc2VjdGlvbnNfaW1hZ2Vfd2l0aF90ZXh0X292ZXJsYXlfYnV0dG9uX3RleHQpO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgICBjb2xvcjogaWYoc2V0dGluZy12YWx1ZSgnc2VjdGlvbnNfdXNlX2RlZmF1bHRfd2Vic2l0ZV9jb2xvcnMnKSwgJGNvbG9yX2dsb2JhbF93aGl0ZV90ZXh0X2ljb25zLCAkY29sb3Jfc2VjdGlvbnNfaW1hZ2Vfd2l0aF90ZXh0X292ZXJsYXlfYnV0dG9uX3RleHQpO1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHJlbShtaW4td2lkdGgsIDIwMHB4KTtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSByZW0ocGFkZGluZywgMjBweCk7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIFxuICAgICAgICB9XG5cbiAgICAgICAgLnNsaWNrLWRvdHMge1xuXG4gICAgICAgICAgICBAbWVkaWEgI3skbS1kb3dufSB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHN0YXRpYztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBcbiAgICB9XG4gICAgLy8gRU5EIGltYWdlX3dpdGhfdGV4dF8yXG5cblxuICAgIC8vIHRleHRfY29sdW1uc193aXRoX2ltYWdlc1xuICAgICYtdGV4dC1jb2x1bW5zLXdpdGgtaW1hZ2VzIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogaWYoc2V0dGluZy12YWx1ZSgnc2VjdGlvbnNfdXNlX2RlZmF1bHRfd2Vic2l0ZV9jb2xvcnMnKSwgJGNvbG9yX2dsb2JhbF9saWdodF9iYWNrZ3JvdW5kcywgJGNvbG9yX3NlY3Rpb25zX3RleHRfY29sdW1uc19iYWNrZ3JvdW5kKTtcbiAgICAgICAgQGluY2x1ZGUgcmVtKHBhZGRpbmcsIDMwcHggMCk7XG5cbiAgICAgICAgQG1lZGlhICN7JGwtdXB9IHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHJlbShwYWRkaW5nLCA2MHB4IDApO1xuXG4gICAgICAgICAgICAucm93LmV4cGFuZGVkIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSByZW0obWFyZ2luLWJvdHRvbSwgLTMwcHgpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmNvbHVtbjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICB9XG5cbiAgICAgICAgQG1lZGlhICN7JGwtdXB9IHtcbiAgICAgICAgICAgIC5tb2QtY2VudGVyIHtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgICAgICAgICAgICA+IC5jb2x1bW4sXG4gICAgICAgICAgICAgICAgPiAuY29sdW1uOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5pbWFnZS1jb250YWluZXIge1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IDEwMCU7XG4gICAgICAgIH1cblxuICAgICAgICAudGV4dC1ibG9jayB7XG4gICAgICAgICAgICBAaW5jbHVkZSByZW0ocGFkZGluZywgMjBweCk7XG5cbiAgICAgICAgICAgIEBtZWRpYSAjeyRsLXVwfSB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgcmVtKHBhZGRpbmcsIDMwcHgpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBoMiB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICM0QTE2Mzk7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgcmVtKGZvbnQtc2l6ZSwgMThweCk7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMTZweDtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSByZW0obWFyZ2luLWJvdHRvbSwgMjBweCk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHAge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHJlbShmb250LXNpemUsIDE0cHgpO1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHJlbShtYXJnaW4tYm90dG9tLCAyMHB4KTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnN3LXNlY3Rpb24tbGluayB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICMzMTkyOTU7XG4gICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuc3ctc2VjdGlvbi1pdGVtLWJveCB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBpZihzZXR0aW5nLXZhbHVlKCdzZWN0aW9uc191c2VfZGVmYXVsdF93ZWJzaXRlX2NvbG9ycycpLCAkY29sb3JfZ2xvYmFsX3doaXRlX2JhY2tncm91bmRzLCAkY29sb3Jfc2VjdGlvbnNfdGV4dF9jb2x1bW5zX2NvbHVtbl9iYWNrZ3JvdW5kKTtcbiAgICAgICAgICAgIC8vIGhlaWdodDogY2FsYygxMDAlIC0gMzBweCk7XG4gICAgICAgICAgICBAaW5jbHVkZSByZW0ocGFkZGluZywgMTBweCk7XG4gICAgICAgICAgICBAaW5jbHVkZSByZW0obWFyZ2luLWJvdHRvbSwgMzBweCk7XG5cbiAgICAgICAgICAgIEBtZWRpYSAjeyRtLWRvd259IHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSByZW0obWFyZ2luLWJvdHRvbSwgMzBweCk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBtZWRpYSAjeyRsLXVwfSB7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAzMHB4KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAvLyBFTkQgdGV4dF9jb2x1bW5zX3dpdGhfaW1hZ2VzXG5cblxuICAgIC8vIGltYWdlX2dhbGxlcnlcbiAgICAmLWltYWdlLWdhbGxlcnkge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgICAgaDEsIGgyLCBoMywgaDQsIGg1LCBoNiB7XG4gICAgICAgICAgIEBpbmNsdWRlIHJlbShtYXJnaW4tYm90dG9tLCAyOHB4KTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5idXR0b24ge1xuICAgICAgICAgICAgQGluY2x1ZGUgcmVtKHBhZGRpbmcsIDE1cHgpO1xuICAgICAgICAgICAgQGluY2x1ZGUgcmVtKG1pbi13aWR0aCwgMTcycHgpO1xuICAgICAgICAgICAgQGluY2x1ZGUgcmVtKG1hcmdpbi10b3AsIDIwcHgpO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgfVxuXG4gICAgICAgICYtc2xpZGVyIHtcbiAgICAgICAgICAgIC5hcnJvdy5zbGljay1hcnJvdyB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgcmVtKG1hcmdpbi10b3AsIC0xMnB4KTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjNGMEVFO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHJlbShmb250LXNpemUsIDIwcHgpO1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHJlbSh3aWR0aCwgNTBweCk7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgcmVtKGhlaWdodCwgNTBweCk7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgcmVtKGxpbmUtaGVpZ2h0LCA1MHB4KTtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgY29sb3I6ICMxQTE5MTk7XG5cbiAgICAgICAgICAgICAgICBpIHtcbiAgICAgICAgICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICYuYXJyb3ctbmV4dCB7XG4gICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAtMnB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnNsaWNrLWxpc3Qge1xuICAgICAgICAgICAgICAgIEBtZWRpYSAjeyRtLXVwfSB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogLTAuOTM3NXJlbTtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC0wLjkzNzVyZW07XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLnNsaWNrLWRvdHRlZCB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNTBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYtZG90bmF2IHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHJlbShtYXJnaW4tdG9wLCAyMHB4KTtcblxuICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcblxuICAgICAgICAgICAgICAgIEBtZWRpYSAjeyRzLW9ubHl9IHtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgICAgICB0b3A6IC03cHg7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgYnV0dG9uOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjRjNGMEVFO1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJi5zbGljay1hY3RpdmUgYnV0dG9uOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjMzE5Mjk1O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgfVxuICAgIC8vIEVORCBpbWFnZV9nYWxsZXJ5XG5cblxuICAgIC8vIGJsb2dcbiAgICAmLWJsb2cge1xuXG4gICAgICAgICYtaGVhZGluZyB7XG4gICAgICAgICAgICBmb250LXNpemU6ICRmb250X3NpemVfc2VjdGlvbl9ibG9nX2hlYWRpbmcgIWltcG9ydGFudDtcbiAgICAgICAgICAgIEBpbmNsdWRlIHJlbShsaW5lLWhlaWdodCwgMThweCk7XG4gICAgICAgICAgICBAaW5jbHVkZSByZW0obWFyZ2luLWJvdHRvbSwgMzBweCk7XG4gICAgICAgICAgICBjb2xvcjogaWYoc2V0dGluZy12YWx1ZSgnc2VjdGlvbnNfdXNlX2RlZmF1bHRfd2Vic2l0ZV9jb2xvcnMnKSwgJGNvbG9yX2dsb2JhbF9ibGFja190aXRsZXMsICRjb2xvcl9zZWN0aW9uc19lbWJlZGRlZF9ibG9nX3RpdGxlKTtcbiAgICAgICAgfVxuXG4gICAgICAgICYtYnRuIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHJlbShwYWRkaW5nLCAxNXB4KTtcbiAgICAgICAgICAgIEBpbmNsdWRlIHJlbShtaW4td2lkdGgsIDE3MnB4KTtcbiAgICAgICAgICAgIEBpbmNsdWRlIHJlbShtYXJnaW4tdG9wLCAyMHB4KTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBpZihzZXR0aW5nLXZhbHVlKCdzZWN0aW9uc191c2VfZGVmYXVsdF93ZWJzaXRlX2NvbG9ycycpLCAkY29sb3JfZ2xvYmFsX2dyZWVuX2FjY2VudF9jb2xvdXIsICRjb2xvcl9zZWN0aW9uc19lbWJlZGRlZF9ibG9nX2J1dHRvbl9iYWNrZ3JvdW5kKTtcbiAgICAgICAgICAgIGNvbG9yOiBpZihzZXR0aW5nLXZhbHVlKCdzZWN0aW9uc191c2VfZGVmYXVsdF93ZWJzaXRlX2NvbG9ycycpLCAkY29sb3JfZ2xvYmFsX21haW5fYnV0dG9uX3RleHQsICRjb2xvcl9zZWN0aW9uc19lbWJlZGRlZF9ibG9nX2J1dHRvbl90ZXh0KTtcbiAgICAgICAgfVxuXG4gICAgICAgICYtaXRlbSB7XG4gICAgICAgICAgICBAaW5jbHVkZSByZW0oZm9udC1zaXplLCAxNHB4KTtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIEBpbmNsdWRlIHJlbShtYXJnaW4tYm90dG9tLCAyMnB4KTtcblxuICAgICAgICAgICAgJi5tb2QtcmVjdCB7XG5cbiAgICAgICAgICAgICAgICAuaW1hZ2UtY29udGFpbmVyIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy10b3A6IDQ4JTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLW92ZXJsYXkge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogaWYoc2V0dGluZy12YWx1ZSgnc2VjdGlvbnNfdXNlX2RlZmF1bHRfd2Vic2l0ZV9jb2xvcnMnKSwgI0ZGRkZGRiwgJGNvbG9yX3NlY3Rpb25zX2VtYmVkZGVkX2Jsb2dfYmFja2dyb3VuZCk7XG4gICAgICAgICAgICBjb2xvcjogaWYoc2V0dGluZy12YWx1ZSgnc2VjdGlvbnNfdXNlX2RlZmF1bHRfd2Vic2l0ZV9jb2xvcnMnKSwgJGNvbG9yX2dsb2JhbF9ibGFja190ZXh0LCAkY29sb3Jfc2VjdGlvbnNfZW1iZWRkZWRfYmxvZ190ZXh0KTtcbiAgICAgICAgICAgIEBpbmNsdWRlIHJlbShwYWRkaW5nLCAzMHB4KTtcbiAgICAgICAgICAgIEBpbmNsdWRlIHJlbShmb250LXNpemUsIDEzcHgpO1xuXG4gICAgICAgICAgICBAbWVkaWEgI3skbS11cH0ge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICByaWdodDogMjAlO1xuICAgICAgICAgICAgICAgIGJvdHRvbTogYXV0bztcbiAgICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNGRkY7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBtZWRpYSAjeyRsLXVwfSB7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDUwJTtcbiAgICAgICAgICAgICAgICBib3R0b206IGF1dG87XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5tb2QtcmVjdCAmIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSByZW0ocGFkZGluZywgMzBweCAxNXB4KTtcbiAgICAgICAgICAgICAgICB0b3A6IGF1dG87XG4gICAgICAgICAgICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgcmVtKGJvdHRvbSwgMzBweCk7XG5cbiAgICAgICAgICAgICAgICBAbWVkaWEgI3skbS11cH0ge1xuICAgICAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDkwJTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBoMyB7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHJlbShmb250LXNpemUsIDE4cHgpO1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSByZW0obGluZS1oZWlnaHQsIDE2cHgpO1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSByZW0ocGFkZGluZy1yaWdodCwgMzBweCk7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAgICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkaWNvbjtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXFxlOTQ2XCI7XG4gICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgICAgICByaWdodDogNXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAtN3B4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBoMyB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgcmVtKGZvbnQtc2l6ZSwgMjRweCk7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgcmVtKGxpbmUtaGVpZ2h0LCAyNHB4KTtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSByZW0obWFyZ2luLWJvdHRvbSwgMTZweCk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAjMzE5Mjk1O1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHJlbShmb250LXNpemUsIDE0cHgpO1xuICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgICAmLWV4Y2VycHQge1xuICAgICAgICAgICAgQGluY2x1ZGUgcmVtKG1heC1oZWlnaHQsIDg1cHgpO1xuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgICAgICAgICAgcDpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi1zdGF0cyB7XG4gICAgICAgICAgICBAaW5jbHVkZSByZW0obWFyZ2luLWJvdHRvbSwgMjBweCk7XG5cbiAgICAgICAgICAgID4gOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSByZW0obWFyZ2luLXJpZ2h0LCAxNXB4KTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgdGltZSB7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgfVxuICAgIC8vIEVORCBibG9nXG5cblxuICAgIC8vIHRlc3RpbW9uaWFsc1xuICAgICYtdGVzdGltb25pYWxzIHtcblxuICAgICAgICAmLWhlYWRpbmcge1xuICAgICAgICAgICAgZm9udC1zaXplOiAkZm9udF9zaXplX3NlY3Rpb25fdGVzdGltb25pYWxzX2hlYWRpbmcgIWltcG9ydGFudDtcbiAgICAgICAgICAgIEBpbmNsdWRlIHJlbShtYXJnaW4tYm90dG9tLCAzMHB4KTtcbiAgICAgICAgICAgIGNvbG9yOiBpZihzZXR0aW5nLXZhbHVlKCdzZWN0aW9uc191c2VfZGVmYXVsdF93ZWJzaXRlX2NvbG9ycycpLCAkY29sb3JfZ2xvYmFsX2JsYWNrX3RpdGxlcywgJGNvbG9yX3NlY3Rpb25zX3Rlc3RpbW9uaWFsc190aXRsZSk7XG5cbiAgICAgICAgICAgIEBtZWRpYSAjeyRsLXVwfSB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgcmVtKG1hcmdpbi1ib3R0b20sIDUwcHgpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi5tb2Qtc2hvdy0xIC5zbGljay1saXN0IHtcbiAgICAgICAgICAgIEBtZWRpYSAjeyRtLXVwfSB7XG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiA1MCU7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDI1JTtcblxuICAgICAgICAgICAgICAgIC50ZXN0aW1vbmlhbHMtYm94IHtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC50ZXN0aW1vbmlhbHMtYm94IHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNGRkY7XG4gICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjRjNGMEVFO1xuICAgICAgICAgICAgQGluY2x1ZGUgcmVtKHBhZGRpbmcsIDYwcHggMzBweCAzMHB4KTtcbiAgICAgICAgICAgIEBpbmNsdWRlIHJlbShtYXJnaW4tbGVmdCwgMjBweCk7XG4gICAgICAgICAgICBAaW5jbHVkZSByZW0obWFyZ2luLXJpZ2h0LCAyMHB4KTtcbiAgICAgICAgICAgIEBpbmNsdWRlIHJlbShtYXJnaW4tdG9wLCAzMHB4KTtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IGlmKHNldHRpbmctdmFsdWUoJ3NlY3Rpb25zX3VzZV9kZWZhdWx0X3dlYnNpdGVfY29sb3JzJyksICRjb2xvcl9nbG9iYWxfbGlnaHRfYmFja2dyb3VuZHMsICRjb2xvcl9zZWN0aW9uc190ZXN0aW1vbmlhbHNfcXVvdGVfYmFja2dyb3VuZCk7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgICAgICAgICAgICAgICBjb250ZW50OiBvcGVuLXF1b3RlIGNsb3NlLXF1b3RlO1xuICAgICAgICAgICAgICAgIGNvbG9yOiBpZihzZXR0aW5nLXZhbHVlKCdzZWN0aW9uc191c2VfZGVmYXVsdF93ZWJzaXRlX2NvbG9ycycpLCAkY29sb3JfZ2xvYmFsX3B1cnBsZV9pY29ucywgJGNvbG9yX3NlY3Rpb25zX3Rlc3RpbW9uaWFsc19xdW90ZV9pY29uKTtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogOTAwO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgcmVtKHRvcCwgLTI3cHgpO1xuICAgICAgICAgICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSByZW0obWFyZ2luLWxlZnQsIC0yN3B4KTtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSByZW0oZm9udC1zaXplLCA0MHB4KTtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSByZW0od2lkdGgsIDU1cHgpO1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHJlbShoZWlnaHQsIDU1cHgpO1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHJlbShsaW5lLWhlaWdodCwgNzBweCk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBtZWRpYSAjeyRsLXVwfSB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgcmVtKG1hcmdpbi1sZWZ0LCAxNXB4KTtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSByZW0obWFyZ2luLXJpZ2h0LCAxNXB4KTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAkZm9udF9zaXplX3NlY3Rpb25fdGVzdGltb25pYWxzX3RleHQ7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgcmVtKGxpbmUtaGVpZ2h0LCAyMnB4KTtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSByZW0obWFyZ2luLWJvdHRvbSwgMzBweCk7XG4gICAgICAgICAgICAgICAgY29sb3I6IGlmKHNldHRpbmctdmFsdWUoJ3NlY3Rpb25zX3VzZV9kZWZhdWx0X3dlYnNpdGVfY29sb3JzJyksICRjb2xvcl9nbG9iYWxfYmxhY2tfdGV4dCwgJGNvbG9yX3NlY3Rpb25zX3Rlc3RpbW9uaWFsc190ZXh0KTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi1uYW1lIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogaWYoc2V0dGluZy12YWx1ZSgnc2VjdGlvbnNfdXNlX2RlZmF1bHRfd2Vic2l0ZV9jb2xvcnMnKSwgJGNvbG9yX2dsb2JhbF9hY2NlbnRfY29sb3VyLCAkY29sb3Jfc2VjdGlvbnNfdGVzdGltb25pYWxzX25hbWUpO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogJGZvbnRfc2l6ZV9zZWN0aW9uX3Rlc3RpbW9uaWFsc19uYW1lO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLWRvdG5hdiB7XG4gICAgICAgICAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgICAgICAgICAgQGluY2x1ZGUgcmVtKG1hcmdpbi10b3AsIDIwcHgpO1xuXG4gICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuXG4gICAgICAgICAgICAgICAgQG1lZGlhICN7JHMtb25seX0ge1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgICAgIHRvcDogLTdweDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBidXR0b246YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICNGM0YwRUU7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmLnNsaWNrLWFjdGl2ZSBidXR0b246YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICMzMTkyOTU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgYnV0dG9uLmFycm93IHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHJlbShmb250LXNpemUsIDQwcHgpO1xuICAgICAgICAgICAgQGluY2x1ZGUgcmVtKGJvdHRvbSwgLTMwcHgpO1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgIHRvcDogYXV0bztcblxuICAgICAgICAgICAgQG1lZGlhICN7JG0tdXB9IHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSByZW0oZm9udC1zaXplLCA2MHB4KTtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSByZW0oYm90dG9tLCAtNTBweCk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYuYXJyb3ctcHJldiB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgcmVtKGxlZnQsIDIwcHgpO1xuXG4gICAgICAgICAgICAgICAgQG1lZGlhICN7JGwtdXB9IHtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgcmVtKGxlZnQsIDMwcHgpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi5hcnJvdy1uZXh0IHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSByZW0ocmlnaHQsIDIwcHgpO1xuXG4gICAgICAgICAgICAgICAgQG1lZGlhICN7JGwtdXB9IHtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgcmVtKHJpZ2h0LCAzMHB4KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYgKyBidXR0b24ge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHJlbShtYXJnaW4tbGVmdCwgMzBweCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuXG4gICAgICAgIC5zbGljay1saXN0IHtcblxuICAgICAgICAgICAgQG1lZGlhICN7JHMtb25seX0ge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDIwJTtcblxuICAgICAgICAgICAgICAgIC5tb2Qtc2hvdy0xJiB7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAbWVkaWEgI3skbC11cH0ge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHJlbShtYXJnaW4tbGVmdCwgLTE1cHgpO1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHJlbShtYXJnaW4tcmlnaHQsIC0xNXB4KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAvLyBFTkQgdGVzdGltb25pYWxzXG5cblxuICAgIC8vIHZpZGVvXG4gICAgJi12aWRlbyB7XG5cbiAgICAgICAgLmltYWdlLWNvbnRhaW5lciB7XG4gICAgICAgICAgICBib3JkZXI6IDE1cHggc29saWQgaWYoc2V0dGluZy12YWx1ZSgnc2VjdGlvbnNfdXNlX2RlZmF1bHRfd2Vic2l0ZV9jb2xvcnMnKSwgJGNvbG9yX2dsb2JhbF9saWdodF9iYWNrZ3JvdW5kcywgJGNvbG9yX3NlY3Rpb25zX2VtYmVkZGVkX3ZpZGVvX2JhY2tncm91bmQpO1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IDE0MCU7XG5cbiAgICAgICAgICAgIEBtZWRpYSAjeyRtLXVwfSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy10b3A6IDM0JTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLnJlc3BvbnNpdmUtZW1iZWQge1xuICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgYm9yZGVyOiAxNXB4IHNvbGlkIGlmKHNldHRpbmctdmFsdWUoJ3NlY3Rpb25zX3VzZV9kZWZhdWx0X3dlYnNpdGVfY29sb3JzJyksICRjb2xvcl9nbG9iYWxfbGlnaHRfYmFja2dyb3VuZHMsICRjb2xvcl9zZWN0aW9uc19lbWJlZGRlZF92aWRlb19iYWNrZ3JvdW5kKTtcblxuICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAxMDAlO1xuXG4gICAgICAgICAgICAgICAgQG1lZGlhICN7JG0tdXB9IHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDUwJTtcdFxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEyMDBweCkge1xuXG4gICAgICAgICAgICAgICAgICAgIGlmcmFtZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAvL21heC13aWR0aDogMTIwMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNmb3JtKCB0cmFuc2xhdGVYKC01MCUpICk7IFxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICYtb3ZlcmxheSB7XG4gICAgICAgICAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgICAgICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDAgMCAwIC8gMzUlKTtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgfVxuXG4gICAgICAgICYtYnRuIHtcbiAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgQGluY2x1ZGUgdmVydGljYWwtYWxpZ24oKTtcblxuICAgICAgICAgICAgaSB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgcmVtKGZvbnQtc2l6ZSwgNjBweCk7XG4gICAgICAgICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHJlbShmb250LXNpemUsIDE2cHgpO1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHJlbShtYXJnaW4tdG9wLCA1cHgpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIC8vIEVORCB2aWRlb1xuXG5cbiAgICAvLyBuZXdzbGV0dGVyXG4gICAgJi1uZXdzbGV0dGVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogaWYoc2V0dGluZy12YWx1ZSgnc2VjdGlvbnNfdXNlX2RlZmF1bHRfd2Vic2l0ZV9jb2xvcnMnKSwgI2Y5ZjhmNywgJGNvbG9yX3NlY3Rpb25zX25ld3NsZXR0ZXJfYmFja2dyb3VuZCk7XG4gICAgICAgIEBpbmNsdWRlIHJlbShwYWRkaW5nLXRvcCwgMzBweCk7XG4gICAgICAgIEBpbmNsdWRlIHJlbShwYWRkaW5nLWJvdHRvbSwgMzBweCk7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICAgICAmLWljb24ge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogaWYoc2V0dGluZy12YWx1ZSgnc2VjdGlvbnNfdXNlX2RlZmF1bHRfd2Vic2l0ZV9jb2xvcnMnKSwgJGNvbG9yX2dsb2JhbF9saWdodF9iYWNrZ3JvdW5kcywgJGNvbG9yX3NlY3Rpb25zX25ld3NsZXR0ZXJfaWNvbl9iYWNrZ3JvdW5kKTtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDEwMCU7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICBAaW5jbHVkZSByZW0obGluZS1oZWlnaHQsIDc1cHgpO1xuICAgICAgICAgICAgQGluY2x1ZGUgcmVtKHdpZHRoLCA2MHB4KTtcbiAgICAgICAgICAgIEBpbmNsdWRlIHJlbShoZWlnaHQsIDYwcHgpO1xuICAgICAgICAgICAgQGluY2x1ZGUgcmVtKG1hcmdpbi1ib3R0b20sIDE1cHgpO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAgICAgICBpIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSByZW0oZm9udC1zaXplLCAyNHB4KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYtaGVhZGluZyB7XG4gICAgICAgICAgICBjb2xvcjogaWYoc2V0dGluZy12YWx1ZSgnc2VjdGlvbnNfdXNlX2RlZmF1bHRfd2Vic2l0ZV9jb2xvcnMnKSwgJGNvbG9yX2dsb2JhbF9wdXJwbGVfdGV4dCwgJGNvbG9yX3NlY3Rpb25zX25ld3NsZXR0ZXJfdGl0bGVfdGV4dCk7XG4gICAgICAgICAgICBmb250LXNpemU6ICRmb250X3NpemVfc2VjdGlvbl9uZXdzbGV0dGVyX2hlYWRpbmcgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgICBAaW5jbHVkZSByZW0obWFyZ2luLWJvdHRvbSwgMTVweCk7XG4gICAgICAgIH1cblxuICAgICAgICAmLWZvcm0ge1xuXG4gICAgICAgICAgICAuaW5wdXQtZ3JvdXAge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICAgICAgICAgICAgICAmLWZpZWxkIHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRjtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1cHggMCAwIDVweDtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgcmVtKGZvbnQtc2l6ZSwgMTRweCk7XG5cbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgcGxhY2Vob2xkZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICNCN0I3Qjc7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBpcy1hY3RpdmUge1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRjtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICYtYnV0dG9uIHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogaWYoc2V0dGluZy12YWx1ZSgnc2VjdGlvbnNfdXNlX2RlZmF1bHRfd2Vic2l0ZV9jb2xvcnMnKSwgJGNvbG9yX2dsb2JhbF9ncmVlbl9hY2NlbnRfY29sb3VyLCAkY29sb3Jfc2VjdGlvbnNfbmV3c2xldHRlcl9idXR0b25fYmFja2dyb3VuZCk7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDAgNXB4IDVweCAwO1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogaWYoc2V0dGluZy12YWx1ZSgnc2VjdGlvbnNfdXNlX2RlZmF1bHRfd2Vic2l0ZV9jb2xvcnMnKSwgI2ZmZiwgJGNvbG9yX3NlY3Rpb25zX25ld3NsZXR0ZXJfYnV0dG9uX3RleHQpO1xuXG4gICAgICAgICAgICAgICAgICAgIGJ1dHRvbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBpZihzZXR0aW5nLXZhbHVlKCdzZWN0aW9uc191c2VfZGVmYXVsdF93ZWJzaXRlX2NvbG9ycycpLCAkY29sb3JfZ2xvYmFsX2dyZWVuX2FjY2VudF9jb2xvdXIsICRjb2xvcl9zZWN0aW9uc19uZXdzbGV0dGVyX2J1dHRvbl9iYWNrZ3JvdW5kKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiBpZihzZXR0aW5nLXZhbHVlKCdzZWN0aW9uc191c2VfZGVmYXVsdF93ZWJzaXRlX2NvbG9ycycpLCAjZmZmLCAkY29sb3Jfc2VjdGlvbnNfbmV3c2xldHRlcl9idXR0b25fdGV4dCk7XG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSByZW0oZm9udC1zaXplLCAxNnB4KTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgaXMtYWN0aXZlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBpZihzZXR0aW5nLXZhbHVlKCdzZWN0aW9uc191c2VfZGVmYXVsdF93ZWJzaXRlX2NvbG9ycycpLCAkY29sb3JfZ2xvYmFsX2dyZWVuX2FjY2VudF9jb2xvdXIsICRjb2xvcl9zZWN0aW9uc19uZXdzbGV0dGVyX2J1dHRvbl9iYWNrZ3JvdW5kKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogaWYoc2V0dGluZy12YWx1ZSgnc2VjdGlvbnNfdXNlX2RlZmF1bHRfd2Vic2l0ZV9jb2xvcnMnKSwgI2ZmZiwgJGNvbG9yX3NlY3Rpb25zX25ld3NsZXR0ZXJfYnV0dG9uX3RleHQpO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIC8vIEVORCBuZXdzbGV0dGVyXG5cblxuICAgIC8vIGFsbCBzZWN0aW9uc1xuXG4gICAgQGluY2x1ZGUgcmVtKG1hcmdpbi10b3AsIDMwcHgpO1xuICAgIEBpbmNsdWRlIHJlbShtYXJnaW4tYm90dG9tLCAzMHB4KTtcblxuXG4gICAgJi1vdmVybGF5LXRpbnQge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsMCwwLDAuMTUpO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgICAgICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgICB9XG4gICAgfVxuXG5cbiAgICAvLyBzZWN0aW9uIHNsaWRlcnNcblxuICAgIC5zbGljay1zbGlkZXIge1xuXG4gICAgICAgICY6bm90KC5zbGljay1pbml0aWFsaXplZCkge1xuICAgICAgICAgICAgLnNsaWNrLXNsaWRlOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIH1cblxuICAgICAgICB9XG4gICAgfVxuXG59XG5cbi5mZWF0dXJlZC1jYXRlZ29yaWVzIHtcbiAgICBwYWRkaW5nLXRvcDogMCAhaW1wb3J0YW50O1xuICAgIGJhY2tncm91bmQtY29sb3I6IGlmKHNldHRpbmctdmFsdWUoJ3NlY3Rpb25zX3VzZV9kZWZhdWx0X3dlYnNpdGVfY29sb3JzJyksICRjb2xvcl9nbG9iYWxfbGlnaHRfYmFja2dyb3VuZHMsICRjb2xvcl9zZWN0aW9uc19lbWJlZGRlZF9jYXRlZ29yaWVzX2JhY2tncm91bmQpICFpbXBvcnRhbnQ7XG59XG5cbi5mZWF0dXJlZC1icmFuZHMge1xuICAgIHBhZGRpbmctdG9wOiAwICFpbXBvcnRhbnQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogaWYoc2V0dGluZy12YWx1ZSgnc2VjdGlvbnNfdXNlX2RlZmF1bHRfd2Vic2l0ZV9jb2xvcnMnKSwgJGNvbG9yX2dsb2JhbF9saWdodF9iYWNrZ3JvdW5kcywgJGNvbG9yX3NlY3Rpb25zX2VtYmVkZGVkX2JyYW5kc19iYWNrZ3JvdW5kKSAhaW1wb3J0YW50O1xufSIsIi8vIGxheW91dCB0cnVtcHNcblxuLy8gQ2xhc3MgIHwgIFByb3BlcnR5XG5cbi8vIGJvcmRlciB8ICAgYm9yZGVyOiAxcHggc29saWQgJGxpZ2h0LWdyZXk7XG4vLyBib3JkZXItbGVmdCAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICRsaWdodC1ncmV5O1xuLy8gYm9yZGVyLXJpZ2h0ICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICRsaWdodC1ncmV5O1xuLy8gYm9yZGVyLXRvcCAgICBib3JkZXItdG9wOiAxcHggc29saWQgJGxpZ2h0LWdyZXk7XG4vLyBib3JkZXItYm90dG9tICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkbGlnaHQtZ3JleTtcbi8vIE1hcmdpblxuXG4vLyBtYXJnaW4gICAgbWFyZ2luOiAxZW07XG4vLyBtYXJnaW4tbGVmdCAgICBtYXJnaW4tbGVmdDogMWVtO1xuLy8gbWFyZ2luLXJpZ2h0ICAgIG1hcmdpbi1yaWdodDogMWVtO1xuLy8gbWFyZ2luLXRvcCAgICBtYXJnaW4tdG9wOiAxZW07XG4vLyBtYXJnaW4tYm90dG9tICAgIG1hcmdpbi1ib3R0b206IDFlbTtcblxuLy8gcGFkZGluZyAgICBwYWRkaW5nOiAxZW07XG4vLyBwYWRkaW5nLWxlZnQgICAgcGFkZGluZy1sZWZ0OiAxZW07XG4vLyBwYWRkaW5nLXJpZ2h0ICAgIHBhZGRpbmctcmlnaHQ6IDFlbTtcbi8vIHBhZGRpbmctdG9wICAgIHBhZGRpbmctdG9wOiAxZW07XG4vLyBwYWRkaW5nLWJvdHRvbSAgICBwYWRkaW5nLWJvdHRvbTogMWVtO1xuXG5AZWFjaCAkcHJvcGVydHkgaW4gKGJvcmRlciwgbWFyZ2luLCBwYWRkaW5nKSB7XG4gICAgQGVhY2ggJGRpcmVjdGlvbiBpbiAoJycsIC1sZWZ0LCAtcmlnaHQsIC10b3AsIC1ib3R0b20pIHtcbiAgICAgICAgLiN7JHByb3BlcnR5fSN7JGRpcmVjdGlvbn0ge1xuICAgICAgICAgICAgQGlmICRwcm9wZXJ0eSA9PSBib3JkZXIge1xuICAgICAgICAgICAgICAgICN7JHByb3BlcnR5fSN7JGRpcmVjdGlvbn06IDFweCBzb2xpZCAkbGlnaHQtZ3JleTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIEBlbHNlIHtcbiAgICAgICAgICAgICAgICAjeyRwcm9wZXJ0eX0jeyRkaXJlY3Rpb259OiAxZW07XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBAaWYgJGRpcmVjdGlvbiA9PSAtdG9wIHtcbiAgICAgICAgICAgICAgICAmOm5vdCgubm8tZmlyc3QpOmZpcnN0LW9mLXR5cGUge1xuICAgICAgICAgICAgICAgICAgICAvLyN7JHByb3BlcnR5fSN7JGRpcmVjdGlvbn06IDA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgQGVsc2UgaWYgJGRpcmVjdGlvbiA9PSAtYm90dG9tIHtcbiAgICAgICAgICAgICAgICAmOm5vdCgubm8tbGFzdCk6bGFzdC1vZi10eXBlIHtcbiAgICAgICAgICAgICAgICAgICAgLy8jeyRwcm9wZXJ0eX0jeyRkaXJlY3Rpb259OiAwO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAubm8tI3skcHJvcGVydHl9I3skZGlyZWN0aW9ufSB7XG4gICAgICAgICAgICAjeyRwcm9wZXJ0eX0jeyRkaXJlY3Rpb259OiAwO1xuICAgICAgICAgICAgJi5pbXBvcnRhbnQge1xuICAgICAgICAgICAgICAgICN7JHByb3BlcnR5fSN7JGRpcmVjdGlvbn06IDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLm1hcmdpbi10b3Atc20ge1xuICAgIG1hcmdpbi10b3A6IC41cmVtO1xufVxuXG4ucGFkZGluZy10b3Atc20ge1xuICAgIHBhZGRpbmctdG9wOiAuNXJlbTtcbn1cblxuLmZ1bGwtd2lkdGgge1xuICAgIHdpZHRoOiAxMDAlO1xufVxuXG4uZmxleC1jb250YWluZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG59XG5cbi5saW5rLXVuZGVybGluZSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgXG4gICAgJi5tb2QtY3VzdG9tIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgZm9udC1mYW1pbHk6ICRmb250X3NlY29uZDtcbiAgICAgICAgQGluY2x1ZGUgcmVtKGZvbnQtc2l6ZSwgMTNweCk7XG4gICAgfVxufVxuXG4uY29sb3Ige1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgZm9udC1mYW1pbHk6ICRmb250X3NlY29uZDtcbiAgICBjb2xvcjogaWYoc2V0dGluZy12YWx1ZSgnd2Vic2l0ZV9jb2xvdXJzX3VzZV9kZWZhdWx0X3dlYnNpdGVfY29sb3JzJyksICRjb2xvcl9nbG9iYWxfYWNjZW50X2NvbG91ciwgJGNvbG9yX3dlYnNpdGVfYWNjZW50KTtcbn1cblxuLnJvdy10YWJsZSB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIFxuICAgICYubW9kLWlubmVyIHtcbiAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgIFxuICAgICAgICAudGV4dC1yaWdodCAmIHtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC5jb2wtY2VsbCB7XG4gICAgICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgIGZsb2F0OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIFxuICAgICYubW9kLXRvcCB7XG4gICAgICAgIC5jb2wtY2VsbCB7XG4gICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIEBtZWRpYSAjeyRtLWRvd259IHtcbiAgICAgICAgJi5tZWRpdW0ge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBcbiAgICAgICAgICAgIC5jb2wtY2VsbCB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgd2lkaHQ6IDEwMCU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgQG1lZGlhICN7JHMtb25seX0ge1xuICAgICAgICAmLnNtYWxsIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgXG4gICAgICAgICAgICAuY29sLWNlbGwge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIHdpZGh0OiAxMDAlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4vLyBoaWRlIGZvciB0b3VjaHNjcmVlblxuLmhpZGUtZm9yLXRzIHtcbiAgICBAbWVkaWEgKHBvaW50ZXI6IGNvYXJzZSkgYW5kIChob3Zlcjogbm9uZSkge1xuICAgICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC5qcy1pcy10b3VjaCAmIHtcbiAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cbn1cbi5zaG93LWZvci10cyB7XG4gICAgQG1lZGlhIChob3ZlcjogaG92ZXIpIGFuZCAocG9pbnRlcjogZmluZSkge1xuICAgICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC5qcy1uby10b3VjaCAmIHtcbiAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cbn1cblxuLnRleHQge1xuXG4gICAgLy8gY2FzZXNcbiAgICAmLWxvd2VyIHsgdGV4dC10cmFuc2Zvcm06IGxvd2VyY2FzZTsgfVxuICAgICYtdXBwZXIgeyB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyB9XG4gICAgJi1jYXBzICB7IHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplOyB9XG4gICAgJi1ub2Nhc2UgIHsgdGV4dC10cmFuc2Zvcm06IG5vbmU7IH1cblxuICAgIC8vIGRlY29yYXRpdmVcbiAgICAmLXVuZGVybGluZSB7IHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyB9XG5cbiAgICAmLWxpZ2h0IHsgZm9udC13ZWlnaHQ6IDEwMDt9XG4gICAgJi1zZW1pLWJvbGQgeyBmb250LXdlaWdodDogNTAwO31cbiAgICAmLWJvbGQgeyBmb250LXdlaWdodDogNzAwO31cblxuICAgIC8vIGNvbG91cmluZ1xuICAgICYtYm9keSB7XG4gICAgICAgIGNvbG9yOiAkY29sb3VyX2JvZHl0eHQ7XG5cbiAgICAgICAgQGluY2x1ZGUgaXMtYWN0aXZlIHtcbiAgICAgICAgICAgIGNvbG9yOiAkY29sb3VyX2JvZHl0eHQ7XG4gICAgICAgIH1cbiAgICB9XG4gICAgJi1oaWdobGlnaHQge1xuICAgICAgICBjb2xvcjogJGNvbG91cl9tYWluO1xuXG4gICAgICAgIEBpbmNsdWRlIGlzLWFjdGl2ZSB7XG4gICAgICAgICAgICBjb2xvcjogJGNvbG91cl9tYWluO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gc2l6aW5nXG4gICAgJi1tZWRpdW0ge1xuICAgICAgICBmb250LXNpemU6IDEuMmVtO1xuICAgIH1cblxuICAgICYtbGFyZ2Uge1xuICAgICAgICBmb250LXNpemU6IDEuNWVtO1xuICAgIH1cblxuICAgICYtc21hbGwge1xuICAgICAgICBmb250LXNpemU6IC44NWVtO1xuICAgIH1cbn0iXX0= */