/*!
Theme Name: Whisper
Author: KNI
Author URI: https://kurtnoble.com/
Description: Theme for whisper.ai
Version: 1.0
License: No License

*//*! Flickity v2.2.1
https://flickity.metafizzy.co
---------------------------------------------- */.flickity-enabled{position:relative}.flickity-enabled:focus{outline:none}.flickity-viewport{overflow:hidden;position:relative;height:100%}.flickity-slider{position:absolute;width:100%;height:100%}.flickity-enabled.is-draggable{-webkit-tap-highlight-color:transparent;-webkit-user-select:none;-ms-user-select:none;user-select:none}.flickity-enabled.is-draggable .flickity-viewport{cursor:move;cursor:grab}.flickity-enabled.is-draggable .flickity-viewport.is-pointer-down{cursor:grabbing}.flickity-button{position:absolute;background:rgba(255,255,255,0.75);border:none;color:#333}.flickity-button:hover{background:white;cursor:pointer}.flickity-button:focus{outline:none;box-shadow:0 0 0 5px #19F}.flickity-button:active{opacity:0.6}.flickity-button:disabled{opacity:0.3;cursor:auto;pointer-events:none}.flickity-button-icon{fill:currentColor}.flickity-prev-next-button{top:50%;width:44px;height:44px;border-radius:50%;transform:translateY(-50%)}.flickity-prev-next-button.previous{left:10px}.flickity-prev-next-button.next{right:10px}.flickity-rtl .flickity-prev-next-button.previous{left:auto;right:10px}.flickity-rtl .flickity-prev-next-button.next{right:auto;left:10px}.flickity-prev-next-button .flickity-button-icon{position:absolute;left:20%;top:20%;width:60%;height:60%}.flickity-page-dots{position:absolute;width:100%;bottom:-25px;padding:0;margin:0;list-style:none;text-align:center;line-height:1}.flickity-rtl .flickity-page-dots{direction:rtl}.flickity-page-dots .dot{display:inline-block;width:10px;height:10px;margin:0 8px;background:#333;border-radius:50%;opacity:0.25;cursor:pointer}.flickity-page-dots .dot.is-selected{opacity:1}html{font-family:sans-serif;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}article,aside,details,figcaption,figure,footer,header,main,menu,nav,section,summary{display:block}audio,canvas,progress,video{display:inline-block;vertical-align:baseline}audio:not([controls]){display:none;height:0}[hidden],template{display:none}a{background-color:transparent}a:active,a:hover{outline:0}abbr[title]{border-bottom:none;text-decoration:underline dotted}b,strong{font-weight:inherit}b,strong{font-weight:bolder}dfn{font-style:italic}h1{font-size:2em;margin:0.67em 0}mark{background-color:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sup{top:-0.5em}sub{bottom:-0.25em}img{border:0}svg:not(:root){overflow:hidden}figure{margin:0}hr{box-sizing:content-box;height:0;overflow:visible}pre{overflow:auto}code,kbd,pre,samp{font-family:monospace, monospace;font-size:1em}button,input,optgroup,select,textarea{font:inherit;margin:0}button{overflow:visible}button,select{text-transform:none}button,html input[type="button"],input[type="reset"],input[type="submit"]{-webkit-appearance:button;cursor:pointer}button[disabled],html input[disabled]{cursor:default}button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0}button:-moz-focusring,input:-moz-focusring{outline:1px dotted ButtonText}input{line-height:normal}input[type="checkbox"],input[type="radio"]{box-sizing:border-box;padding:0}input[type="number"]::-webkit-inner-spin-button,input[type="number"]::-webkit-outer-spin-button{height:auto}input[type="search"]{-webkit-appearance:textfield}input[type="search"]::-webkit-search-cancel-button,input[type="search"]::-webkit-search-decoration{-webkit-appearance:none}fieldset{border:1px solid #c0c0c0;margin:0 2px;padding:0.35em 0.625em 0.75em}legend{border:0;padding:0}textarea{overflow:auto}optgroup{font-weight:bold}html{box-sizing:border-box}*,*:before,*:after{box-sizing:inherit}button,input[type="button"],input[type="submit"],input[type="reset"]{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:0;color:inherit;font:inherit;-webkit-font-smoothing:antialiased;margin:0;padding:0;-webkit-user-select:none;-ms-user-select:none;user-select:none;width:auto}button::-moz-focus-inner,input[type="button"]::-moz-focus-inner,input[type="submit"]::-moz-focus-inner,input[type="reset"]::-moz-focus-inner{border:0;padding:0}figure{margin:0}fieldset{border:0;margin:0;padding:0}textarea{resize:vertical}img,video{height:auto;max-width:100%}p:first-of-type{margin-top:0}p:last-of-type{margin-bottom:0}a,label,select,option,button{cursor:pointer}h1,h2,h3,h4,h5,h6{display:block;font-weight:normal;margin:1rem 0}h1:first-child,h2:first-child,h3:first-child,h4:first-child,h5:first-child,h6:first-child{margin-top:0}h1 a,h2 a,h3 a,h4 a,h5 a,h6 a{color:inherit}@keyframes fade-in-up{0%{opacity:0;transform:translate3d(0, 15%, 0)}100%{opacity:1;transform:none}}@keyframes fade-in-down{0%{opacity:0;transform:translate3d(0, -15%, 0)}100%{opacity:1;transform:none}}@keyframes over-scale{0%{opacity:0;transform:scale(0)}70%{transform:scale(1.1)}100%{opacity:1;transform:scale(1)}}@keyframes fade-in{0%{opacity:0}100%{opacity:1}}@font-face{font-family:"Suisse Int'l";src:url("fonts/SuisseIntl-Light.woff2") format("woff2");src:url("fonts/SuisseIntl-Light.woff") format("woff");font-weight:300;font-style:normal}@font-face{font-family:"Suisse Int'l";src:url("fonts/SuisseIntl-Regular.woff2") format("woff2");src:url("fonts/SuisseIntl-Regular.woff") format("woff");font-weight:normal;font-style:normal}@font-face{font-family:"Suisse Int'l";src:url("fonts/SuisseIntl-Medium.woff2") format("woff2");src:url("fonts/SuisseIntl-Medium.woff") format("woff");font-weight:500;font-style:normal}@font-face{font-family:"Suisse Int'l Book";src:url("fonts/SuisseIntl-Book.woff2") format("woff2");src:url("fonts/SuisseIntl-Book.woff") format("woff");font-weight:normal;font-style:normal}.color-white{color:#fff}.color-off-white{color:#D4D4D4}.color-black{color:#000}.color-gray{color:#768C9C}.color-gray-light{color:#809CB2}.color-gray-lighter{color:#94B1C7}.color-red{color:#F9553A}.color-blue-light{color:#D3E3EA}.color-blue-gray{color:#94B1C7}.color-navy{color:#172835}.bg-white{background-color:#fff}.bg-off-white{background-color:#D4D4D4}.bg-black{background-color:#000}.bg-gray{background-color:#768C9C}.bg-gray-light{background-color:#809CB2}.bg-gray-lighter{background-color:#94B1C7}.bg-red{background-color:#F9553A}.bg-blue-light{background-color:#D3E3EA}.bg-blue-gray{background-color:#94B1C7}.bg-navy{background-color:#172835}body,p,h1,h2,h3,h4,h5,h6,small,em,strong,input,button{font-family:"Suisse Int'l Book";font-weight:normal;font-style:normal;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}p{color:#768C9C;line-height:1.4;font-size:18px;font-family:"Suisse Int'l"}@media (max-width: 1100px){p{font-size:18px}}strong{font-weight:bold}em{font-style:italic}a{text-decoration:none}nav ul{margin:0;padding:0}nav ul:after{clear:both;content:'';display:table}nav ul li{float:left;list-style-type:none;margin-right:20px}nav ul li:last-child{margin-right:0}blockquote{margin:0}h1,h2,h3,h4,h5,h6{display:block;color:#172835;line-height:1.07em;font-family:"Suisse Int'l"}h1:first-child,h2:first-child,h3:first-child,h4:first-child,h5:first-child,h6:first-child{margin-top:0}h1 a,h2 a,h3 a,h4 a,h5 a,h6 a{color:inherit}h1,.h1{font-size:4.8rem}h2,.h2{font-size:4rem}h3,.h3{font-size:3.4rem}h4,.h4{font-size:3.2rem}h6,.h6{font-size:1.8rem}html{font-size:calc(1000vw / 1280)}@media (min-width: 1800px){html{font-size:87%}}@media (max-width: 767px){html{font-size:calc(1000vw / 1280 * 3)}}body{position:relative;font-size:1.6rem}body.is-locked{position:relative;height:100%;overflow:hidden}body.no-pad-top .max-container{padding-top:0}@media (min-width: 768px){body.no-pad-top-d .max-container{padding-top:0}}.max-container{width:auto;max-width:1800px;display:block;margin-left:auto;margin-right:auto;padding-left:0;padding-right:0;position:relative;overflow:hidden;padding-top:7.4rem}.container{width:auto;max-width:1800px;display:block;margin-left:auto;margin-right:auto;padding-left:5%;padding-right:5%}.container-small{width:auto;max-width:1070px;display:block;margin-left:auto;margin-right:auto;padding-left:5%;padding-right:5%}hr{border:0;border-bottom:1px solid rgba(0,0,0,0.15);height:0;padding:0;margin:60px 0}#breakpoints{position:relative;z-index:3}@media (max-width: 1023px){#breakpoints{z-index:2}}@media (max-width: 767px){#breakpoints{z-index:1}}.flex{display:flex}.flex.wrap{flex-wrap:wrap}.flex.j-sb{justify-content:space-between}.flex.j-c{justify-content:center}.flex.a-c{align-items:center}.flex.center{align-items:center;justify-content:center}@keyframes device-intro{0%{opacity:0}100%{opacity:1}}@keyframes fade-out-up{0%{opacity:1;transform:translateY(0) translateX(0)}50%{opacity:1;transform:translateY(-10rem) translateX(30rem)}100%{opacity:0;transform:translateY(-10rem) translateX(30rem)}}@keyframes scale-in-loader{0%{opacity:0;transform:scale(0.5)}100%{opacity:1;transform:scale(1)}}@keyframes scale-in{33%,100%{transform:scale(1)}}@keyframes scale-out{33%,100%{transform:scale(0)}}@keyframes slide-up{25%,100%{transform:translate(20px, -53px)}}@keyframes slide-down{25%,100%{transform:translate(20px, 53px)}}@keyframes radiate{0%{transform:scale(0);opacity:0}40%{opacity:.8}100%{transform:scale(1);opacity:0}}@keyframes lineanim{to{opacity:1;stroke-dashoffset:5}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(10rem)}100%{opacity:1;transform:translateY(0)}}@keyframes fadeOutUp{0%{opacity:10;transform:translateY(0)}100%{opacity:0;transform:translateY(-10rem)}}.audio-demo{display:none;position:fixed;top:0;width:100%;height:100%;z-index:3;pointer-events:none}.audio-demo.is-active .audio-demo-modal{opacity:1}.audio-demo.is-active .modal-content{pointer-events:auto}.audio-demo.is-active .modal-content h3{opacity:1;transform:translateY(0);transition-delay:100ms}.audio-demo.is-active .audio-demo-ui{opacity:1;transform:translateY(0) scale(1);transition-delay:225ms}.audio-demo.is-active .more-samples-cta{opacity:1;transform:translateY(0);transition-delay:400ms}.audio-demo.is-active .audio-demo-cta{transform:translateX(160px)}.audio-demo.is-active .audio-demo-cta:hover,.audio-demo.is-active .audio-demo-cta:focus{transform:translateX(160px) !important}.audio-demo.is-active .audio-demo-cta .svg-audio{opacity:0}.audio-demo.is-active .audio-demo-cta .svg-close{opacity:1}.audio-demo-modal{padding: calc(100vw / 60 * 2);position:absolute;top:0;left:0;width:100%;height:100%;opacity:0;transition:opacity 250ms}@media (min-width: 1800px){.audio-demo-modal{padding: calc(1800px / 60 * 2)}}.audio-demo-modal .modal-bg{position:absolute;top:0;left:0;width:100%;height:100%;background:rgba(23,40,53,0.9)}.audio-demo-modal .modal-content{position:relative;z-index:2;text-align:center}.audio-demo-modal .modal-content h3{font-family:"Suisse Int'l";font-weight:normal;margin-bottom:30px;transform:translateY(-20px);opacity:0;transition:opacity 250ms, transform 500ms ease}.more-samples-cta{display:inline-block;opacity:0;transform:translateY(-20px);transition:opacity 250ms, transform 500ms ease}.audio-demo-ui{width:100%;margin-bottom:30px;background:#fff;box-shadow:0 22px 29px rgba(0,0,0,0.8);border-radius:9px;overflow:hidden;opacity:0;transform:translateY(-20px) scale(0.9);transition:opacity 250ms, transform 500ms ease}.audio-player{border-bottom:1px solid #D3E3EA}.audio-control{position:relative;padding:40px;border-right:1px solid #D3E3EA;cursor:pointer}.audio-control div{position:absolute;top:0;left:0;right:0;bottom:0;margin:auto;height:25px}.audio-visual{flex:1}.demo-ui-toggles{position:relative}.audio-toggle{padding: calc(100vw / 60 * 2) calc(100vw / 60 * 5);position:relative;flex:1;cursor:pointer;overflow:hidden}@media (min-width: 1800px){.audio-toggle{padding: calc(1800px / 60 * 2) calc(1800px / 60 * 5)}}.audio-toggle.toggle-normal.is-active .toggle-bar::after{transform:translateX(0)}.audio-toggle.toggle-normal .toggle-bar::after{background:#768C9C;transform:translateX(101%)}.audio-toggle.toggle-whisper.is-active .toggle-bar::after{transform:translateX(0)}.audio-toggle.toggle-whisper .toggle-bar::after{background:#F9553A;transform:translateX(-101%)}.toggle-bar{position:absolute;bottom:0;left:0;width:100%;height:10px;background:#D3E3EA}.toggle-bar::after{content:'';position:absolute;bottom:0;left:0;width:100%;height:10px;transition:transform 750ms cubic-bezier(0.86, 0, 0.07, 1)}.toggle-switch{position:absolute;top:0;bottom:0;left:0;right:0;margin:auto;width:92px;height:39px;background:#E9F1F4;border-radius:440px;cursor:pointer}.toggle-switch.is-whisper .switch-inner{transform:translateX(53%);background:#F9553A}.toggle-switch.is-whisper .switch-inner::after{box-shadow:inset 0 0 0 0 rgba(0,0,0,0.75);transition-delay:0ms}.toggle-switch .switch-inner{position:relative;top:3px;left:4px;width:55px;height:33px;background:#fff;border-radius:44px;transform:translateX(0);transition:background 400ms,transform 750ms cubic-bezier(0.86, 0, 0.07, 1)}.toggle-switch .switch-inner::after{content:'';position:absolute;top:0;left:0;width:100%;height:100%;border-radius:44px;box-shadow:inset 0 0 0 3px #A1B8C8;transition:box-shadow 350ms ease;transition-delay:250ms}.audio-demo-cta{align-items:center;background:#F9553A;cursor:pointer;pointer-events:auto}.audio-demo-cta.small{display:flex;border-radius:656.091px}.audio-demo-cta.flyout{position:absolute;top:75%;right:0;border-top-left-radius:5px;border-bottom-left-radius:5px;box-shadow:0 5px 10px rgba(0,0,0,0.25);transform:translateX(160px);transition:transform 500ms ease}.audio-demo-cta.flyout.stay-hidden{transform:translateX(160px)}.audio-demo-cta.flyout.stay-hidden:hover,.audio-demo-cta.flyout.stay-hidden:focus{transform:translateX(160px)}.audio-demo-cta.flyout:hover,.audio-demo-cta.flyout:focus{transform:translateX(0)}.audio-demo-cta .audio-icon{position:relative;padding:1.6rem 1.2rem 1.6rem 1.8rem;border-right:2px solid #EA4F36;pointer-events:none}.audio-demo-cta .audio-icon svg{width:2.4rem;height:2rem;transition:opacity 250ms}.audio-demo-cta .audio-icon svg.svg-close{width:25px;height:25px}.audio-demo-cta .icon-hear{height:2.4rem}.audio-demo-cta .svg-close{position:absolute;top:0;left:0;right:0;bottom:0;margin:auto;opacity:0}.audio-demo-cta .audio-cta-text{flex:1;font-size:1.5rem;padding:0 2.5rem 0 1.6rem;font-family:"Suisse Int'l";font-weight:500;text-align:center}.audio-demo-cta span{color:#fff}.cta-arrow-wrap{display:inline-block}.cta-arrow{display:flex;align-items:center;padding:10px 0;transition:all 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275)}.cta-arrow:not(.cta-light):hover svg{transform:translateX(-3px)}.cta-arrow:not(.cta-light):hover .cta-arrow-icon::before{box-shadow:0px 0px 20px rgba(23,40,53,0.1),0px 0px 5px rgba(23,40,53,0.05)}.cta-arrow.cta-light .cta-arrow-text{color:#fff}.cta-arrow.cta-light .cta-arrow-icon::before{background:rgba(255,255,255,0.1)}.cta-arrow.cta-gray .cta-arrow-icon::before{background:rgba(211,227,234,0.5)}.cta-arrow.cta-dark .cta-arrow-text{color:#768C9C}.cta-arrow.cta-dark .cta-arrow-icon::before{background:rgba(211,227,234,0.5)}.cta-arrow.cta-dark .cta-arrow-icon svg path{fill:#768C9C}.cta-arrow.cta-dark-red .cta-arrow-text{color:#F9553A}.cta-arrow.cta-dark-red .cta-arrow-icon::before{background:rgba(211,227,234,0.5)}.cta-arrow.cta-dark-red .cta-arrow-icon svg path{fill:#F9553A}.cta-arrow.rotate .cta-arrow-icon{transform:rotate(90deg)}.cta-arrow.rotate:hover svg{transform:translateX(-10px)}.cta-arrow-text{margin-right:2.2rem;font-family:"Suisse Int'l Book";color:#172835;font-size:1.1rem;text-transform:uppercase}.cta-arrow-icon{position:relative;align-items:center;transition:all 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275)}.cta-arrow-icon::before{content:'';position:absolute;left:0;width:23px;height:23px;background:#fff;border-radius:50%;z-index:1;transition:all 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275);transform-origin:center center}.cta-arrow-icon svg{position:relative;width:2.3rem;transform:translateX(-6px);z-index:2;transition:transform 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275)}.cta-arrow-icon svg path{transition:fill 250ms}.cta-button{color:#172835;border:2px solid #172835;border-radius:9999px;padding:.8rem 2.2rem;text-align:center;font-size:1.4rem;transition:color 250ms, background-color 250ms;-webkit-font-smoothing:subpixel-antialiased}.cta-button:hover{color:#FAFCFD;background-color:#172835}.cta-button.red{color:#F9553A;border-color:#F9553A}.cta-button.red:hover{background-color:#F9553A;color:#FAFCFD}.btn,input[type=submit]{display:inline-block;padding:12px 22px;text-align:center;font-size:17px;background:#F9553A;color:#fff;border-radius:9999px;-webkit-font-smoothing:subpixel-antialiased;border:2.26785px  solid #F9553A;line-height:119.32%;font-weight:500;font-family:"Suisse Int'l"}.btn.outline,input[type=submit].outline{background-color:#fff;color:#F9553A;border:2.26785px solid #F9553A}.btn.outline:hover,input[type=submit].outline:hover{background-color:#F9553A;color:#fff;border:2.26785px solid #F9553A}@media (max-width: 639px){.btn,input[type=submit]{width:100%;padding:16px 22px}}.btn:hover,input[type=submit]:hover{background-color:#DC371C;border:2.26785px solid #DC371C}footer{padding:7rem 7rem 7rem 9rem;font-family:"Suisse Int'l";font-weight:500;background:#172835;z-index:20;position:relative}footer .logo-mark{position:absolute;top:7.3rem}@media (max-width: 767px){.footer-top{flex-direction:column}}.footer-logo{padding-bottom:45px;border-bottom:1px solid rgba(211,227,234,0.2)}@media (min-width: 768px){.footer-logo{flex:1;padding-right:20px;border-right:1px solid rgba(211,227,234,0.2)}}@media (max-width: 767px){.footer-logo{padding-bottom:25px}}.footer-logo .svg-logo-type{width:10.2rem}.footer-logo .svg-logo-type path{fill:#fff}.footer-logo address{color:#94B1C7;font-style:normal;font-weight:normal;margin-top:20px;line-height:1.5em;font-size:1.4rem}.footer-sitemap{border-bottom:1px solid rgba(211,227,234,0.2)}@media (min-width: 768px){.footer-sitemap{padding-left: calc(100vw / 60 * 2);flex:2.5;border-right:1px solid rgba(211,227,234,0.2)}}@media (min-width: 768px) and (min-width: 1800px){.footer-sitemap{padding-left: calc(1800px / 60 * 2)}}@media (max-width: 767px){.footer-sitemap{padding:25px 0}}.sitemap-col{flex:1;padding-right:20px}.sitemap-col a{display:block;color:#fff;padding-bottom:10px;font-size:1.3rem}.footer-signup{font-size:1.3rem;border-bottom:1px solid rgba(211,227,234,0.2)}@media (min-width: 768px){.footer-signup{padding-left: calc(100vw / 60 * 1.5);flex:1.25}}@media (min-width: 768px) and (min-width: 1800px){.footer-signup{padding-left: calc(1800px / 60 * 1.5)}}@media (max-width: 767px){.footer-signup{padding:25px 0}}.footer-signup span{display:inline-block;color:#fff;margin-bottom:15px}.footer-bottom{width:100%;padding-top:45px}@media (min-width: 768px){.footer-bottom{align-items:center}}@media (max-width: 767px){.footer-bottom{flex-direction:column;padding-top:25px}}.footer-bottom p{color:#94ACBE;font-size:1.3rem}.footer-bottom p a{color:inherit;font-size:1.2rem}.footer-bottom p a:hover{text-decoration:underline}.footer-social{align-items:center}@media (max-width: 767px){.footer-social{padding-bottom:25px}}.footer-social a{display:inline-block;width:1.8rem;height:1.8rem;margin-right:2rem}.footer-social svg{width:auto;height:100%}body.light-nav header{background:rgba(255,255,255,0)}body.light-nav nav a span{color:#768C9C}body.light-nav nav a.is-active span{color:#fff;border-bottom:1px solid rgba(255,255,255,0.5)}@media (max-width: 767px){body.light-nav nav a.is-active span{color:#172835}}body.light-nav nav a:hover span{color:#fff}@media (max-width: 767px){body.light-nav nav a:hover span{color:#172835}}body.light-nav .logo svg path{fill:#fff}header{align-items:center;justify-content:space-between;position:fixed;top:0;width:100%;padding:0 5%;max-width:1800px;background:#fff;z-index:30;transition:background 225ms, transform 350ms ease}@media (max-width: 767px){header{padding:15px 15px 18px 46px;padding-top:15px;padding-bottom:18px}}@media (min-width: 768px){header.is-hidden{transform:translateY(-100%)}}.logo{display:flex;align-items:center}.logo img{width:202px;height:42px}.logo-mark{width:2.4rem;margin-right:1.8rem;position:fixed;top:2.4rem;left:5rem;z-index:31}@media (max-width: 767px){.logo-mark{top:16px;left:15px;width:18px;height:13px}}.logo-mark svg{width:100%;height:auto}.logo-type{position:relative;top:.2rem;width:10.2rem;margin-left:2.4rem}@media (max-width: 767px){.logo-type{width:75px;height:18px;margin:0}}.logo-type svg path{transition:fill 250ms}nav{margin:0 20px;position:relative}@media (max-width: 767px){nav{flex-direction:column;position:absolute;top:7px;right:11px;width:157px;margin:0;padding:30px 18px;pointer-events:none;opacity:0;transition:opacity 150ms}nav.is-active{opacity:1;pointer-events:auto}nav.is-active::after{transform:scale(1)}nav.is-active a,nav.is-active .nav-cta{opacity:1;transform:translateY(0)}nav.is-active .nav-cta{transition-delay:500ms}}nav::after{content:'';position:absolute;top:0;left:0;width:100%;height:100%;background:#fff;border-radius:10px;box-shadow:0 2px 8px rgba(0,0,0,0.1);z-index:-1;transform:scale(0);transform-origin:top right;transition:transform 750ms cubic-bezier(0.23, 1, 0.32, 1)}nav a{display:flex;align-items:center;font-size:1.6rem;padding:2.6rem 2rem;white-space:nowrap}@media (max-width: 767px){nav a{font-size:16px;font-family:"Suisse Int'l";font-weight:500;padding:5px 0;opacity:0;transform:translateY(-10px);transition:opacity 500ms,transform 1s cubic-bezier(0.23, 1, 0.32, 1)}nav a:nth-child(1){transition-delay:300ms}nav a:nth-child(2){transition-delay:350ms}nav a:nth-child(3){transition-delay:400ms}nav a:nth-child(4){transition-delay:450ms}nav a:nth-child(5){transition-delay:500ms}nav a:nth-child(6){transition-delay:550ms}nav a:nth-child(7){transition-delay:600ms}nav a:nth-child(8){transition-delay:650ms}}@media (min-width: 768px){nav a.mobile-only{display:none}}nav a.is-active span{color:#172835}@media (min-width: 768px){nav a.is-active span{border-bottom:1px solid rgba(23,40,53,0.3)}}@media (max-width: 767px){nav a.is-active span{border-left:1px solid rgba(23,40,53,0.3)}}nav a span{color:#768C9C;transition:color 250ms, border-color 250ms}@media (max-width: 767px){nav a span{padding:0 0 0 7px}}nav a:hover span{color:#172835}@media (max-width: 767px){.nav-cta a{font-size:13px;padding:6px 12px}}@media (max-width: 767px){.nav-cta.desktop-only{display:none}}.nav-cta.mobile-only{margin-top:20px;opacity:0;transform:translateY(-10px);transition:opacity 500ms,transform 1s cubic-bezier(0.23, 1, 0.32, 1)}@media (min-width: 768px){.nav-cta.mobile-only{display:none}}.mobile-toggle{display:flex;align-items:center;justify-content:center;position:absolute;top:7px;right:14px;width:36px;height:36px;background-color:#fff;border-radius:50%;cursor:pointer;transition:background-color 350ms}@media (min-width: 768px){.mobile-toggle{display:none}}.mobile-toggle::after{content:'';position:absolute;top:0;left:0;width:36px;height:36px;border-radius:50%;box-shadow:0 6.2069px 12.4138px rgba(0,0,0,0.1);transition:opacity 1s}.mobile-toggle.is-active::after{opacity:0}.mobile-toggle.is-active .mobile-icon{transform:rotate(-225deg)}.mobile-toggle.is-active .line-top{stroke-dashoffset:13.8358;opacity:0;transition-delay:0s}.mobile-toggle.is-active .line-bottom{stroke-dashoffset:-13.8358;opacity:0;transition-delay:0s}.mobile-toggle.is-active .line-cross{stroke-dasharray:13.8358 13.8358;stroke-dashoffset:0;transition-delay:500ms}.mobile-toggle .mobile-icon{height:25px;transition:transform 1.25s cubic-bezier(0.23, 1, 0.32, 1);transition-delay:150ms}.mobile-toggle line{stroke-dasharray:13.8358 13.8358;stroke-dashoffset:0;transition:opacity 350ms,stroke-dashoffset 1s cubic-bezier(0.23, 1, 0.32, 1),stroke-dasharray 1s cubic-bezier(0.23, 1, 0.32, 1)}.mobile-toggle line.line-top,.mobile-toggle line.line-bottom{transition-delay:350ms}.mobile-toggle line.line-cross{stroke-dasharray:0 13.8358;stroke-dashoffset:-6.4}form{position:relative}form input,form select,form option,form textarea{outline:none}form.zip-form{width: calc(100vw / 60 * 7);min-width:125px}@media (min-width: 1800px){form.zip-form{width: calc(1800px / 60 * 7)}}form.email-form{width: calc(100vw / 60 * 10);min-width:250px}@media (min-width: 1800px){form.email-form{width: calc(1800px / 60 * 10)}}form.email-form .field input{background-color:#0C1B26;border:none;padding:14px 20px 14px 25px}form.email-form .cta-arrow.cta-dark .cta-arrow-icon::before{background:none}form.email-form .cta-arrow.cta-dark .cta-arrow-icon svg{width:28px}form.email-form .cta-arrow.cta-dark .cta-arrow-icon svg path{fill:#F9553A}form.email-form .submit-label{right:10px}.submit-label .cta-arrow{display:block}.submit-label input{display:none;opacity:0;position:absolute}.field input,.field textarea{width:100%;border:2px solid rgba(118,140,156,0.5);color:#768C9C;padding:10px 10px 10px 20px;vertical-align:middle;outline:0;text-align:center;transition:border 250ms}.field input.error,.field textarea.error{border-color:red}.field input{text-align:left;border-radius:9999px}.field input.input-dark{background:#172835}input:focus,input:hover,textarea:focus,textarea:hover,div.select-wrap select:focus,div.select-wrap select:hover{border-color:#768C9C}div.select-wrap{position:relative;margin-bottom:2em}div.select-wrap::after{position:absolute;content:'';right:.7em;top:50%;z-index:2;border-left:7px solid transparent;border-right:7px solid transparent;border-top:7px solid #9A9DA9;height:0;width:0}div.select-wrap select{border:1px solid transparent;box-sizing:border-box;border-radius:0;line-height:1.3em;width:100%;background:rgba(218,218,218,0.1);font-style:normal;font-weight:400;color:#9A9DA9;position:relative;height:58px;appearance:none;-webkit-appearance:none;-moz-appearance:none;outline:none;text-indent:15px;padding:0 6px;font-size:20px}::-webkit-input-placeholder{color:#768C9C}::-moz-placeholder{color:#768C9C}:-ms-input-placeholder{color:#768C9C}:-moz-placeholder{color:#768C9C}@media (min-width: 768px){form.get-whisper-form{display:flex;align-items:center;justify-content:center}}form.get-whisper-form input[type=text],form.get-whisper-form input[type=email]{padding:1.4rem 1.4rem 1.4rem 2.7rem;color:#768C9C;font-family:"Suisse Int'l";font-weight:500;font-size:1.9rem;background-color:#FAFAFA;border:solid 2px #E9E5E5}@media (max-width: 767px){form.get-whisper-form input[type=text],form.get-whisper-form input[type=email]{margin-bottom:2px}}form.get-whisper-form input[type=text]:not(:last-of-type),form.get-whisper-form input[type=email]:not(:last-of-type){margin-right:5px}form.get-whisper-form input[type=text]{width:18.7rem}@media (max-width: 767px){form.get-whisper-form input[type=text]{width:100%}}form.get-whisper-form input[type=email]{width:26.7rem}@media (max-width: 767px){form.get-whisper-form input[type=email]{width:100%}}form.get-whisper-form div.submit-wrapper{display:flex;align-items:center;position:relative;height:45px;width:45px;margin-left:20px}.loading-wrap{background:#FAFCFD;align-items:center;justify-content:center;position:absolute;top:0;left:0;width:100%;height:100%;opacity:0;pointer-events:none;transition:opacity 350ms;z-index:3}.loading-wrap.is-active{opacity:1}.loading-wrap.is-active .loading{animation:scale-in-loader 250ms ease-in-out forwards 250ms}.loading-wrap.is-active .dot.hidden{animation:scale-in 1250ms ease-in-out infinite 600ms}.loading-wrap.is-active .dot.one{animation:slide-down 1250ms ease-in-out infinite 600ms}.loading-wrap.is-active .dot.two{animation:slide-up 1250ms ease-in-out infinite 500ms}.loading-wrap.is-active .dot.three{animation:slide-down 1250ms ease-in-out infinite 400ms}.loading-wrap.is-active .dot.four{animation:slide-up 1250ms ease-in-out infinite 300ms}.loading-wrap.is-active .dot.five{animation:scale-out 1250ms ease-in-out infinite 175ms}.loading{position:relative;width:95px;height:70px;opacity:0;transform:scale(0.5)}.dot{position:absolute;width:15px;height:15px;background:#F9553A;border-radius:50%}.dot.hidden{transform:scale(0);top:0;left:0}.dot.one{top:0;left:0}.dot.two{top:53px;left:20px}.dot.three{top:0;left:40px}.dot.four{top:53px;left:60px}.dot.five{top:0;left:80px}.quotes-wrap{padding-left: calc(100vw / 60 * 2.5);align-items:flex-end}@media (min-width: 1800px){.quotes-wrap{padding-left: calc(1800px / 60 * 2.5)}}.quotes{width: calc(100vw / 60 * 22);border-left:8px solid #F9553A}@media (min-width: 1800px){.quotes{width: calc(1800px / 60 * 22)}}.quote{padding-left: calc(100vw / 60 * 3.25);padding-top:30px;padding-bottom:30px;position:relative;width:100%}@media (min-width: 1800px){.quote{padding-left: calc(1800px / 60 * 3.25)}}.quote::before{left: calc(100vw / 60 * 2.25);content:'“';position:absolute;top:30px;color:#172835}@media (min-width: 1800px){.quote::before{left: calc(1800px / 60 * 2.25)}}.quote p{margin:0}.quote-arrow{cursor:pointer;padding-bottom: calc(100vw / 60 * 2.25)}@media (min-width: 1800px){.quote-arrow{padding-bottom: calc(1800px / 60 * 2.25)}}.quote-arrow.arrow-left{margin-right: calc(100vw / 60 * 2.25)}@media (min-width: 1800px){.quote-arrow.arrow-left{margin-right: calc(1800px / 60 * 2.25)}}.quote-arrow.arrow-right{margin-left: calc(100vw / 60 * 1)}@media (min-width: 1800px){.quote-arrow.arrow-right{margin-left: calc(1800px / 60 * 1)}}.quote-arrow .arrow-prev{transform:scaleX(-1) translateX(12px)}.quote-arrow .cta-arrow{margin:0}.author{margin-top: calc(100vw / 60 * 1);align-items:center}@media (min-width: 1800px){.author{margin-top: calc(1800px / 60 * 1)}}.author-img{margin-right: calc(100vw / 60 * 1)}@media (min-width: 1800px){.author-img{margin-right: calc(1800px / 60 * 1)}}.author-img figure{width: calc(100vw / 60 * 3.5);height: calc(100vw / 60 * 3.5);background:#768C9C;border:5px solid #fff;border-radius:50%}@media (min-width: 1800px){.author-img figure{width: calc(1800px / 60 * 3.5)}}@media (min-width: 1800px){.author-img figure{height: calc(1800px / 60 * 3.5)}}.cta-button{color:#172835;border:2px solid #172835;border-radius:9999px;padding:.8rem 2.2rem;text-align:center;font-size:1.4rem;transition:color 250ms, background-color 250ms;-webkit-font-smoothing:subpixel-antialiased}.cta-button:hover{color:#FAFCFD;background-color:#172835}.cta-button.red{color:#F9553A;border-color:#F9553A}.cta-button.red:hover{background-color:#F9553A;color:#FAFCFD}.btn,input[type=submit]{display:inline-block;padding:12px 22px;text-align:center;font-size:17px;background:#F9553A;color:#fff;border-radius:9999px;-webkit-font-smoothing:subpixel-antialiased;border:2.26785px  solid #F9553A;line-height:119.32%;font-weight:500;font-family:"Suisse Int'l"}.btn.outline,input[type=submit].outline{background-color:#fff;color:#F9553A;border:2.26785px solid #F9553A}.btn.outline:hover,input[type=submit].outline:hover{background-color:#F9553A;color:#fff;border:2.26785px solid #F9553A}@media (max-width: 639px){.btn,input[type=submit]{width:100%;padding:16px 22px}}.btn:hover,input[type=submit]:hover{background-color:#DC371C;border:2.26785px solid #DC371C}.bottom-signup{padding-top:7.9rem;padding-bottom:10.1rem;position:relative;z-index:2;text-align:center}@media (max-width: 767px){.bottom-signup{padding-left:5%;padding-right:5%}}.bottom-signup.light-bg{background-color:#f4f8fa}.bottom-signup h2{margin-bottom:3.1rem;font-size:3.6rem;color:#F9553A}.bottom-signup p{max-width:63.7rem;margin:0 auto 6rem;font-size:1.8rem;color:rgba(118,140,156,0.8)}.bottom-signup form{margin:0 auto}.bottom-signup-icon{position:absolute;top:-4.55rem;left:0;right:0;margin:auto}.bottom-signup-icon svg{width:9.1rem;height:9.1rem}.home-section{width:100vw;background-size:cover;background-repeat:no-repeat;background-position:right top}@media (min-width: 768px){.home-section{overflow:hidden;position:relative;overflow:visible;background-attachment:fixed}.home-section::before{content:'';display:block;height:0;padding-top:56.25%}}@media (max-width: 767px){.home-section{position:relative;min-height:710px;display:flex;align-items:flex-end;flex-direction:column-reverse}}@media (min-aspect-ratio: 16 / 9){.home-section{background-position:right 13.4%}}.home-section h1,.home-section h2{margin-bottom:3rem}.home-section h1 span,.home-section h2 span{display:block;color:#F9553A}@media (min-width: 768px){.home-section .cta-arrow{margin-top:6rem}}.home-section.hero h1{max-width:35rem}.home-section.hero.is-active .hand{opacity:0;transform:translateY(-10rem) translateX(30rem);transition:transform 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94),opacity 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94) 300ms}.home-section.hero.is-active .device-shadow{opacity:1;transition-delay:500ms}.home-section.hero .cta-arrow-wrap{display:flex;justify-content:center;position:absolute;bottom:-23px;width:100%;z-index:10}@media (max-width: 767px){.home-section.hero .cta-arrow-wrap{display:none}}.home-section.hero .cta-arrow-wrap a{margin-top:0}.home-section.hero .cta-arrow-wrap .cta-arrow-icon::before{background:#fff}.home-section.s2{background-color:#FAFCFD}.home-section.s3{z-index:11}.home-section.s3.is-tech-active .hotspot{opacity:1;transform:scale(1)}.home-section.s3.is-tech-active .hotspot:nth-of-type(2){transition-delay:.1s}.home-section.s3.is-tech-active .hotspot:nth-of-type(3){transition-delay:.2s}.home-section.s3.is-tech-active .hotspot:nth-of-type(4){transition-delay:.3s}.home-section.s3.is-tech-active .hotspot span{transition-delay:2s}.home-section.s3 h2{color:#fff}.home-section.s3 p{color:#94B1C7}.home-section.s4{z-index:11}.home-section.s4.is-fit-active .measure{opacity:1}.home-section.s4.is-fit-active .measure:first-of-type{transform:translateY(0)}.home-section.s4.is-fit-active .measure:nth-of-type(2){transform:translateX(0)}.home-section.s4 h2{color:#fff}.home-section.s4 p{color:rgba(255,255,255,0.8)}.home-section .inner-wrap{display:flex;align-items:center;position:absolute;width:58%;height:100%;top:0;left:0;color:#fff}@media (max-width: 767px){.home-section .inner-wrap{position:relative;width:100%;align-items:flex-end}}.home-section .inner-text{padding:0 17.5rem 0 16rem}@media (max-width: 767px){.home-section .inner-text{padding:0 5% 7.4rem}}.home-section .inner-text p:last-of-type{margin-bottom:4rem}.home-section .device-solo{height:0;width:24.8rem;z-index:10}@media (min-width: 768px){.home-section .device-solo{position:fixed;padding-bottom:58.2%;top:0;left:60%}}@media (max-width: 767px){.home-section .device-solo{display:flex;justify-content:center;position:relative;height:auto;width:100%}}.home-section .device-solo.device-features-wrap{margin-bottom:6.2rem}.home-section .device-solo.is-active .device-features .circle-top{transform:translate(263.77px, 45.3354px) scale(1) translate(-263.77px, -45.3354px)}.home-section .device-solo.is-active .device-features .circle-left{transform:translate(40.9551px, 224.054px) scale(1) translate(-40.9551px, -224.054px);transition-delay:200ms}.home-section .device-solo.is-active .device-features .circle-right{transform:translate(480.824px, 224.054px) scale(1) translate(-480.824px, -224.054px);transition-delay:200ms}.home-section .device-solo.is-active .device-features .f-text{opacity:1;transform:translateY(0)}.home-section .device-solo.is-active .device-features .f-text.f-text-top{transition-delay:100ms}.home-section .device-solo.is-active .device-features .f-text.f-text-left,.home-section .device-solo.is-active .device-features .f-text.f-text-right{transition-delay:300ms}.home-section .device-solo.is-active .device-features .f-ring{stroke-dashoffset:-20}.home-section .device-solo.is-active .device-earbuds img{opacity:1;transition-delay:350ms}.home-section .device-solo.is-active .device-earbuds img.ear-left{transform:translateX(-17rem)}@media (max-width: 767px){.home-section .device-solo.is-active .device-earbuds img.ear-left{transform:translateX(-76px)}}.home-section .device-solo.is-active .device-earbuds img.ear-right{transform:translateX(17rem)}@media (max-width: 767px){.home-section .device-solo.is-active .device-earbuds img.ear-right{transform:translateX(76px)}}.home-section .device-brain{position:relative;z-index:2}@media (max-width: 767px){.home-section .device-brain.brain-features{width:111px}}@media (min-width: 768px){.home-section .device-brain{margin-top:100%}}@media (min-aspect-ratio: 16 / 9){.home-section .device-brain{margin-top:calc(100% * .7)}}.home-section .device-shadow{position:absolute;top:65%;left:-23%;width:150%;max-width:none;opacity:0;transition:opacity 350ms}@media (min-aspect-ratio: 16 / 9){.home-section .device-shadow{top:55%}}.home-section .hand{position:absolute;right:0;top:28%;width:44.7rem;height:auto;z-index:20;transition:transform 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94),opacity 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94)}@media (min-aspect-ratio: 16 / 9){.home-section .hand{top:17%}}.home-section .hand.hand-back{z-index:1}.device-earbuds{position:absolute;bottom:38%;left:0;width:100%}@media (min-aspect-ratio: 16 / 9){.device-earbuds{bottom:48%}}@media (max-width: 767px){.device-earbuds{width:111px;right:0;margin:0 auto}}.device-earbuds img{position:absolute;top:0;width:9.3em;height:10.5em;opacity:0;transition:opacity 250ms,transform 850ms cubic-bezier(0.23, 1, 0.32, 1)}@media (max-width: 767px){.device-earbuds img{width:65px;height:76px}}.device-earbuds img.ear-left{left:0}.device-earbuds img.ear-right{right:0}.device-features{position:absolute;top:14%;left:-50%;width:200%;pointer-events:none}@media (min-aspect-ratio: 16 / 9){.device-features{top:7.5%}}@media (max-width: 767px){.device-features{width:90%;left:0;right:0;top:-55%;margin:0 auto}}.device-features.is-active .circle-top{transform:translate(263.77px, 45.3354px) scale(1) translate(-263.77px, -45.3354px)}.device-features.is-active .circle-left{transform:translate(40.9551px, 224.054px) scale(1) translate(-40.9551px, -224.054px);transition-delay:200ms}.device-features.is-active .circle-right{transform:translate(480.824px, 224.054px) scale(1) translate(-480.824px, -224.054px);transition-delay:200ms}.device-features.is-active .f-text{opacity:1;transform:translateY(0)}.device-features.is-active .f-text.f-text-top{transition-delay:100ms}.device-features.is-active .f-text.f-text-left,.device-features.is-active .f-text.f-text-right{transition-delay:300ms}.device-features.is-active .f-ring{stroke-dashoffset:-20}.device-features svg{width:100%;height:100%}.device-features .circle-top{transform:translate(263.77px, 45.3354px) scale(0) translate(-263.77px, -45.3354px)}.device-features .circle-left{transform:translate(40.9551px, 224.054px) scale(0) translate(-40.9551px, -224.054px)}.device-features .circle-right{transform:translate(480.824px, 224.054px) scale(0) translate(-480.824px, -224.054px)}.device-features .f-circle{transition:transform 350ms ease}.device-features .f-text{opacity:0;transform:translateY(-20px);transition:opacity 250ms, transform 500ms ease}.device-features .f-ring{stroke-dasharray:500;stroke-dashoffset:-500;transition:stroke-dasharray 500ms ease, stroke-dashoffset 500ms ease}.section-ratio-container{position:fixed;top:0;height:0;padding-bottom:58.2%;left:60%;width:24.8rem}.section-ratio-container .measure{text-align:center;color:#fff;position:absolute;top:25%;left:0;opacity:0;transition:all 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275)}@media (min-aspect-ratio: 16 / 9){.section-ratio-container .measure{top:15%}}.section-ratio-container .measure:first-of-type{transform:translateY(30px)}.section-ratio-container .measure:nth-of-type(2){transform:translateX(-30px);transition-delay:.2s}.section-ratio-container .measure span{display:inline-flex}.section-ratio-container .measure.vertical{display:flex;align-items:center;left:26rem;top:35%}@media (min-aspect-ratio: 16 / 9){.section-ratio-container .measure.vertical{top:25%}}.section-ratio-container .measure.vertical .bracket{width:1.6rem;height:35rem;display:inline-block;border-top:2px solid #fff;border-bottom:2px solid #fff;border-right:2px solid #fff;margin-right:1rem}.section-ratio-container .measure.horizontal .bracket{width:24.8rem;height:1.6rem;display:inline-block;border-top:2px solid #fff;border-left:2px solid #fff;border-right:2px solid #fff;margin-top:1rem}.hotspot{width:9px;height:9px;border-radius:9999px;background:#F9553A;position:absolute;box-shadow:0px 0px 0px 2.5rem rgba(249,85,58,0.2);transform:scale(0);opacity:0;transition:all 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275)}.hotspot:first-of-type{top:54%;left:19%}.hotspot:nth-of-type(2){top:44%;left:49%}.hotspot:nth-of-type(2) span{top:-7rem;left:-15rem}.hotspot:nth-of-type(3){top:67%;left:58%}.hotspot:nth-of-type(3) span{top:-4rem;left:2rem}.hotspot:nth-of-type(4){top:39%;left:75%}.hotspot:nth-of-type(4) span{top:-5rem;left:2rem}.hotspot span{position:absolute;top:-5rem;left:-10rem;min-width:100px;text-align:center;padding:10px;display:inline-block;background:rgba(1,17,30,0.9);color:#fff;font-size:1.1rem}.padder{height:7rem;background-color:#FAFCFD}@media (max-width: 767px){.padder{display:none}}.dot-grid{position:absolute;top:9em;right:7.2em;transition:opacity 350ms,transform 500ms cubic-bezier(0.23, 1, 0.32, 1)}.dot-grid.is-hidden{opacity:0;transform:translateY(-5rem);transition-delay:125ms}.dot-row{display:flex;margin-bottom:2.2rem}.dot-row:nth-child(odd){padding-left:1.5rem}.dot-row div{position:relative;width:5px;height:5px;border-radius:50%;margin-right:2.2rem;background-color:#eee;transition:background-color 250ms}.dot-row div::before{content:'';position:absolute;top:-8px;left:-8px;margin:auto;width:21px;height:21px;background-color:#eee;border-radius:50%;z-index:-1;opacity:0.5;transform:scale(0);transition:transform 1000ms cubic-bezier(0.23, 1, 0.32, 1);transition-delay:inherit}.dot-row div.is-active{background-color:#ccc}.dot-row div.is-active::before{transform:scale(1)}.sign-up .fields input{width:75%;padding:1rem;border:2px solid #E5EAF1}.sign-up .fields input:last-of-type{margin-bottom:2rem}.product-hero{transition:transform 0.5s cubic-bezier(0.23, 1, 0.32, 1)}@media (min-width: 768px){.product-hero{margin-bottom:5rem}}.product-hero.is-scrolled .product-hero-device{transform:translateY(-10rem)}.product-hero.is-scrolled .product-hero-earbud.e1{transform:translateY(-40rem)}.product-hero.is-scrolled .product-hero-earbud.e2{transform:translateY(-3rem)}@media (min-width: 768px){.prod-hero-inner{align-items:center}}@media (max-width: 767px){.prod-hero-inner{flex-direction:column;padding-top:20px}}.prod-hero-inner .hero-img-mobile{width:80%;margin:0 auto}@media (min-width: 768px){.prod-hero-inner .hero-img-mobile{display:none}}.product-hero-copy{width:50%}@media (max-width: 767px){.product-hero-copy{width:100%}}.product-hero-copy article{padding-left:16rem}@media (max-width: 767px){.product-hero-copy article{padding-left:5%}}.product-hero-copy h1{margin-bottom:5.6rem}.product-hero-copy h1 span{display:block;color:#F9553A}.product-hero-copy p{max-width:36rem}.product-hero-copy .cta-arrow{margin-left:15rem;transform:translateY(10rem)}@media (max-width: 767px){.product-hero-copy .cta-arrow{display:none}}.product-hero-visual{overflow:hidden;position:relative;flex:1;overflow:visible}.product-hero-visual::before{content:'';display:block;height:0;padding-top:111.11111%}@media (max-width: 767px){.product-hero-visual{display:none}}.product-hero-device{position:absolute;top:22%;left:7rem;width:38rem;height:35rem;transform:translateY(0);opacity:1;transition:all 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94);z-index:2}.product-hero-earbud{position:absolute}.product-hero-earbud.e1{top:62%;left:6%;width:16rem;height:19rem;z-index:3;transform:translateY(0);transition:all 0.7s cubic-bezier(0.25, 0.46, 0.45, 0.94)}.product-hero-earbud.e2{top:25%;right:12rem;width:13rem;height:15rem;transform:translateY(0);transition:all 0.6s cubic-bezier(0.25, 0.46, 0.45, 0.94)}.product-video-row{display:flex;background-color:rgba(234,245,250,0.5)}@media (min-width: 768px){.product-video-row{align-items:center}}@media (max-width: 767px){.product-video-row{flex-direction:column;background-color:#F9FBFC}}@media (min-width: 768px){.product-video-row:nth-child(even){flex-direction:row-reverse}}.product-video-row:first-child{background-color:rgba(244,248,250,0.5)}@media (max-width: 767px){.product-video-row:first-child{background-color:#F9FBFC}}.product-video-row:nth-child(2){background-color:#fff}@media (max-width: 767px){.product-video-row:nth-child(2){background-color:#F9FBFC}}.product-video-row:nth-child(2) .video-icon{background-size:55%}.product-video-row:last-child{background-color:rgba(234,245,250,0.5)}@media (max-width: 767px){.product-video-row:last-child{background-color:#F9FBFC}}.product-video-row:last-child .video-icon{background-size:35%}.product-video-row:last-child video{height:102%}.video-block{overflow:hidden;position:relative;flex:1}.video-block::before{content:'';display:block;height:0;padding-top:100%}.video-block video{position:absolute;top:0;left:0;max-width:none;height:100%}@media (max-width: 767px){.video-block video{left:0}}.video-copy-block{flex:1;position:relative;z-index:2}.video-copy-block article{padding:6rem 14.3rem;text-align:center}@media (max-width: 767px){.video-copy-block article{padding:0 5% 40px;text-align:left}}.video-copy-block h4{margin-bottom:4rem}.video-icon{width:9.5rem;height:9.5rem;margin:0 auto 3.7rem;background-color:#fff;background-position:center center;background-repeat:no-repeat;background-size:52%;border-radius:50%;box-shadow:0px 0.5rem 1rem rgba(0,0,0,0.1)}@media (max-width: 767px){.video-icon{width:66px;height:66px;margin:-33px 0 18px}}.product-grid{position:relative;padding:0 11.7rem 8rem}@media (max-width: 767px){.product-grid{padding:30px}}.product-grid .top-grid::after{content:'';display:table;clear:both}.product-grid .bottom-grid::after{content:'';display:table;clear:both}.product-grid .block{background-size:cover;background-repeat:no-repeat;background-position:center center;position:relative;height:initial;float:left;overflow:hidden}.product-grid .block::after{content:'';display:block;height:0}.product-grid .block.block-1{margin-right:1%;margin-bottom:1%;background-color:#768C9C;width:64%}.product-grid .block.block-1::after{padding-top:65%}.product-grid .block.block-2{background-color:#172835;width:35%;margin-bottom:1%;margin-right:0}.product-grid .block.block-2::after{padding-top:58%}.product-grid .block.block-3{background-color:#27445A;width:35%;margin-bottom:1%;margin-right:0}.product-grid .block.block-3::after{padding-top:58%}.product-grid .block.block-4{background-color:#D3E3EA;width:16%;margin-bottom:1%;margin-right:1%}.product-grid .block.block-4::after{padding-top:125.5%}.product-grid .block.block-5{background-color:#C3EBF1;width:32%;margin-bottom:1%;margin-right:1%}.product-grid .block.block-5::after{padding-top:62.8%}.product-grid .block.block-6{float:right;background-color:#63839A;width:50%;margin-bottom:1%;margin-right:0}.product-grid .block.block-6::after{padding-top:82.35%}.product-grid .block.block-7{background-color:#27445A;width:32%;margin-bottom:1%;margin-right:1%}.product-grid .block.block-7::after{padding-top:62.8%}.product-grid .block.block-8{background-color:#F6F9FB;width:16%;margin-bottom:1%;margin-right:1%}.product-grid .block.block-8::after{padding-top:125.5%}.product-box-set{overflow:hidden;position:relative;overflow:visible;background-color:rgba(234,245,250,0.5)}.product-box-set::before{content:'';display:block;height:0;padding-top:50%}@media (min-width: 768px){.product-box-set{margin:10rem 0 15rem}}.box-set{position:absolute;top:-13rem;left:0;right:0;margin:0 auto}@media (min-width: 768px){.box-set{width:89rem}}.box-set img{width:100%}.box-set-item{position:absolute}.box-set-item.i-1{top:36%;right:-3%}.box-set-item.i-1 svg{top:1.3rem;left:-25rem;width:23.6rem;height:8.7rem}.box-set-item.i-2{top:60%;right:-5%}.box-set-item.i-2 svg{top:0.82rem;left:-12rem;width:15.7rem}.box-set-item.i-3{top:60%;left:-2.5%}.box-set-item.i-3 svg{top:0.82rem;left:15.5rem;width:15.7rem}.box-set-item.i-4{top:75%;left:-1%}.box-set-item.i-4 svg{top:0.82rem;left:15rem;width:22.5rem}.box-set-item p{width:15.1rem;font-size:1.6rem;line-height:2.2rem;color:#172835;text-align:right}.box-set-item svg{position:absolute;top:0;left:0}.product-connected{position:relative;padding:8.5rem 11.7rem}@media (min-width: 768px){.product-connected{display:flex;justify-content:flex-end}}@media (max-width: 767px){.product-connected{padding:8.5rem 5% 0}}.product-connected.is-fixed{justify-content:flex-end}.product-connected.is-fixed .device-item.is-active .beacons{transform:scale(1)}.product-connected.is-fixed .device-item.is-active .beacons::after{animation-play-state:running}.product-connected.is-fixed .device-item.is-active img{opacity:1}.product-connected.is-fixed .left-block{position:fixed;top:0}.product-connected.is-fixed .beacon-content.is-active{opacity:1}.product-connected.is-fixed .connected-phone-container{position:fixed;top:8.5rem;left:0;right:0;margin:0 auto}.product-connected.is-absolute .left-block{position:absolute;top:auto;bottom:0}.product-connected.is-absolute .connected-phone-container{position:absolute;top:auto;bottom:5.5rem}@media (min-width: 768px){.product-connected .left-block{position:absolute;top:0;left:11.7rem;display:flex;align-items:center;height:100vh;width:37.2rem}}@media (min-width: 768px){.product-connected .left-block article{width:32.8rem}}.product-connected .left-block h2{color:#172835;margin-bottom:50px}.product-connected .left-block a{display:inline-flex;align-items:center;color:#F9553A}.product-connected .left-block a svg{margin-left:12px;height:10px}.product-connected .right-block{position:relative;width:70%}@media (min-width: 768px){.product-connected .right-block{display:flex;justify-content:flex-end;padding-left:7rem}}@media (max-width: 767px){.product-connected .right-block{width:100%}}.connected-phone-container{position:absolute;left:0;right:0;margin:0 auto;background-size:contain;background-position:center;background-repeat:no-repeat;width:34.2rem;height:63.3rem}@media (max-width: 767px){.connected-phone-container{position:relative}}.connected-phone-container .beacons{display:flex;align-items:center;justify-content:center;position:absolute;height:22px;width:22px;z-index:10;transition:transform 500ms cubic-bezier(0.23, 1, 0.32, 1)}@media (min-width: 768px){.connected-phone-container .beacons{transform:scale(0)}}.connected-phone-container .beacons.beacon-1{right:15%;top:20%}.connected-phone-container .beacons.beacon-2{left:32%;top:30.25%}.connected-phone-container .beacons.beacon-3{right:19%;bottom:48%}.connected-phone-container .beacons.beacon-4{left:58%;bottom:37.2%}.connected-phone-container .beacons.beacon-5{right:27%;bottom:15.7%}.connected-phone-container .beacons div{position:relative;display:flex;align-items:center;justify-content:center;height:16px;width:16px;border-radius:999px;background-color:#fff;border:solid 2px #F9553A;z-index:1}.connected-phone-container .beacons p{text-align:center;font-size:8px;color:#F9553A;line-height:normal}.connected-phone-container .beacons::after{content:'';position:absolute;left:-19px;top:-19px;width:60px;height:60px;border-radius:50%;background-color:#F9553A;opacity:.3;z-index:0}@media (min-width: 768px){.connected-phone-container .beacons::after{animation:radiate 2.5s ease infinite;animation-play-state:paused}}@media (max-width: 767px){.connected-phone-container .beacons::after{width:38px;height:38px;left:-8px;top:-8px}}.app-device .device-item{position:absolute;width:100%;height:100%}.product-connected-info{z-index:1}@media (min-width: 768px){.product-connected-info{width:50%;padding-top:60vh}}.product-connected-info .beacon-content{margin-bottom:30rem;background-color:#fff}@media (min-width: 768px){.product-connected-info .beacon-content{opacity:0;transition:opacity 350ms}}@media (max-width: 767px){.product-connected-info .beacon-content{margin-bottom:43px}}.product-connected-info h6{color:#172835;margin-bottom:2.5rem}.product-connected-info p{font-size:1.6rem;color:#768C9C}.product-connected-info strong{font-family:"Suisse Int'l";font-weight:500}.product-schematic{padding:9rem 11.7rem}@media (max-width: 767px){.product-schematic{padding:9rem 0}}.product-schematic h2{text-align:center;color:#172835;max-width:500px;margin:0 auto 40px}.schematic-table-wrap{font-size:1.5rem}@media (max-width: 767px){.schematic-table-wrap.desktop-only{display:none}}@media (min-width: 768px){.schematic-table-wrap.mobile-only{display:none}}.schematic-table-wrap table{border-collapse:collapse;width:100%}.schematic-table-wrap table th,.schematic-table-wrap table td{padding:3rem}.schematic-table-wrap table th{position:relative;text-align:left;font-weight:normal;font-size:1.8rem}.schematic-table-wrap table th:first-child{border-bottom:solid 2px #E9F1F4}.schematic-table-wrap table th:nth-child(2) img{position:absolute;top:1.8rem;right:2.7rem;width:12.1rem}.schematic-table-wrap table th:nth-child(3) img{position:absolute;top:1.8rem;right:2.9rem;width:10.1rem}.schematic-table-wrap table tr:not(.header-row) td:nth-child(2),.schematic-table-wrap table tr:not(.header-row) td:nth-child(3){border-bottom:solid 2px #fff}.schematic-table-wrap table tr:not(.header-row):last-child td:nth-child(2),.schematic-table-wrap table tr:not(.header-row):last-child td:nth-child(3){border-bottom:solid 2px #E9F1F4}.schematic-table-wrap table td{border-bottom:solid 2px #E9F1F4;color:#4A6273;vertical-align:top}.schematic-table-wrap table td:first-child{color:#768C9C}.schematic-table-wrap table td:nth-child(2){border-right:solid 2px #D3E3EA;border-left:solid 2px #D3E3EA;background-color:#EBF4FB}.schematic-table-wrap table td:nth-child(3){background-color:#F6F9FB;border-right:solid 2px #E9F1F4}.schematic-table-wrap table .header-row th:nth-child(2){background-color:#172835;color:#fff;border-top-left-radius:5px}.schematic-table-wrap table .header-row th:nth-child(3){background-color:#284458;color:#fff;border-top-right-radius:5px}.schematic-table-wrap table .dimensions td:first-child,.schematic-table-wrap table .weight td:first-child,.schematic-table-wrap table .battery td:first-child{border-left:solid 2px #E9F1F4}.schematic-table-wrap table .battery td:first-child{border-bottom-left-radius:5px}.schematic-table-wrap table .battery td:last-child{border-bottom-right-radius:5px}.schematic-table-wrap h3{font-family:"Suisse Int'l";font-weight:500;font-size:24px;padding-left:30px;margin-bottom:30px}.schematic-table-wrap .table-column{background-color:#EBF4FB}.schematic-table-wrap .table-column.column-earpiece{background-color:#F6F9FB}.schematic-table-wrap .table-column.column-earpiece .table-column-heading{background-color:#284458}.schematic-table-wrap .table-column-heading{position:relative;background-color:#172835;padding:18px 30px}.schematic-table-wrap .table-column-heading p{color:#fff;font-family:"Suisse Int'l";font-weight:500;font-size:15px}.schematic-table-wrap .table-column-heading img{position:absolute}.schematic-table-wrap .table-column-heading img.table-img-brain{top:-30px;right:30px;height:108px;width:73px}.schematic-table-wrap .table-column-heading img.table-img-earpiece{top:-25px;right:30px;height:117px;width:100px;transform:scaleX(-1)}.schematic-table-wrap .table-column-data{padding:18px 30px 23px}.schematic-table-wrap .table-column-data:not(:last-child){border-bottom:2px solid #fff}.schematic-table-wrap .table-column-data p{margin:0;font-family:"Suisse Int'l";font-size:14px;color:#4A6273}.schematic-table-wrap .table-column-data p:first-child{color:#172835;font-weight:500;margin-bottom:5px}.product-tech-preview{align-items:center;padding:10.9rem 5% 13.8rem;background-color:rgba(211,227,234,0.25)}@media (min-width: 768px){.product-tech-preview{justify-content:center}}@media (max-width: 767px){.product-tech-preview{flex-direction:column;padding:48px 5% 108px}}.product-tech-preview article{max-width:50rem}.product-tech-preview h3{margin-bottom:2rem}.product-tech-preview a{margin-top:6rem}@media (max-width: 767px){.product-tech-preview a{margin-top:10px}}.product-tech-preview img{width:32.3rem;height:21.4rem}@media (max-width: 767px){.product-tech-preview img{width:163px;height:108px;margin-bottom:36px}}@media (min-width: 768px){.product-tech-preview img{transform:translateX(-7.1rem)}}.technology-hero{background-size:cover;background-repeat:no-repeat;background-position:center center;padding-top:8rem;margin-bottom:8.9rem}@media (min-width: 768px){.technology-hero{align-items:center}}@media (max-width: 767px){.technology-hero{flex-direction:column;margin-bottom:0;padding:80px 5% 50px;background-image:url("img/technology/hero-bg-mobile.png") !important}}.tech-hero-visual{position:relative;margin-bottom:-22rem}@media (min-width: 768px){.tech-hero-visual{left:-2rem}}@media (max-width: 767px){.tech-hero-visual{display:flex;justify-content:center;margin-bottom:-20px}}.tech-hero-visual img{width:70.3rem;height:82rem}@media (max-width: 767px){.tech-hero-visual img{width:35rem;height:auto}}.tech-hero-copy article{position:relative}@media (min-width: 768px){.tech-hero-copy article{left:-9rem;max-width:53.2rem}}.tech-hero-copy h1{color:#fff;margin-bottom:6rem}@media (max-width: 767px){.tech-hero-copy h1{margin-bottom:25px}}.tech-hero-copy h1 span{display:block;color:#F9553A}.tech-hero-copy p{color:#D3E3EA;line-height:2.5rem}.tech-explode{padding-bottom:30rem}@media (max-width: 767px){.tech-explode{padding-bottom:7.8rem}}.tech-explode.is-fixed .explode-1{transform:translateY(-2rem)}.tech-explode.is-fixed .explode-2{transform:translateY(-2rem)}.tech-explode.is-fixed .explode-3{transform:translateY(-3rem)}.tech-explode.is-fixed .explode-4{transform:translateY(-4.5rem)}.tech-explode.is-fixed .explode-5{transform:translateY(-7rem)}.tech-explode.is-fixed .explode-6{transform:translateY(-17.5rem)}.tech-explode.is-fixed .beacon-content:not(.is-active){opacity:0}.tech-explode.is-fixed .connected-phone-container{transform:translateX(8.5rem) translateY(0)}.tech-explode.is-fixed .device-item.is-active img{filter:drop-shadow(0px 0px 20px #B8FFC3)}.tech-explode.is-end .beacon-content.is-active{opacity:0}.tech-explode.is-end .beacon-group.is-active{opacity:0}.tech-explode.is-end .device-item.is-active img{filter:drop-shadow(0px 0px 0px #B8FFC3)}.tech-explode.fade-out .device-item:not(.is-active) img{opacity:0.2}@media (min-width: 768px){.tech-explode .product-connected-info{padding-top:80vh}}.tech-explode .beacon-group{position:absolute;top:0;left:0;width:100%;height:100%;z-index:10;transition:opacity 250ms}@media (min-width: 768px){.tech-explode .beacon-group{opacity:0}}.tech-explode .beacon-group.is-active{opacity:1}.tech-explode .connected-phone-container{display:flex;flex-direction:column;align-items:center;transition:transform 500ms cubic-bezier(0.23, 1, 0.32, 1)}@media (min-width: 768px){.tech-explode .connected-phone-container{transform:translateX(8.5rem) translateY(-5rem)}}@media (max-width: 767px){.tech-explode .connected-phone-container{margin:65px auto 35px;height:71.3rem}}.tech-explode .beacons.beacon-1{right:21%;top:-19%}.tech-explode .beacons.beacon-2{left:23%;top:10.25%}.tech-explode .beacons.beacon-3{right:61%;bottom:103%}.tech-explode .beacons.beacon-4{left:77%;bottom:69.2%}.tech-explode .beacons.beacon-5{right:-3%;bottom:84.7%}.tech-explode .beacons.beacon-6{top:21%;left:-2%}.tech-explode .beacons.beacon-7{top:58%;left:33%}.tech-explode .beacons.beacon-8{top:-29%;right:31%}.tech-explode .beacons.beacon-9{top:-19%;left:51%}.tech-explode .left-block article{width:100%}.tech-explode .right-block{padding-left:20rem;width:60%}@media (max-width: 767px){.tech-explode .right-block{padding-left:0;width:100%}}.tech-explode .app-cta-copy h2{margin-bottom:0}.tech-explode .app-cta-copy>hr{width:6.1rem;margin:3rem 0 4.5rem;border-color:#F9553A}.tech-explode .beacon-content strong{color:#172835}.tech-explode .device-item{position:relative}.tech-explode img{position:relative;-webkit-filter:drop-shadow(0px 0px 0 #B8FFC3);transition:opacity 350ms,transform 750ms cubic-bezier(0.23, 1, 0.32, 1)}.tech-explode img.is-active{opacity:1}.tech-explode img.explode-1{width:38.6rem;transform:translateY(21rem);z-index:6}.tech-explode img.explode-2{width:28.6rem;transform:translateY(13rem);z-index:5}.tech-explode img.explode-3{width:23.2rem;transform:translateY(5rem);z-index:4}.tech-explode img.explode-4{width:33.3rem;transform:translateY(-8.75rem);z-index:3}.tech-explode img.explode-5{width:25.5rem;transform:translateY(-20rem);z-index:2}.tech-explode img.explode-6{width:33.2rem;transform:translateY(-36.5rem);z-index:1}@media (max-width: 767px){.tech-explode img.explode-1{transform:translateY(-2rem)}.tech-explode img.explode-2{transform:translateY(-2rem)}.tech-explode img.explode-3{transform:translateY(-3rem)}.tech-explode img.explode-4{transform:translateY(-4.5rem)}.tech-explode img.explode-5{transform:translateY(-7rem)}.tech-explode img.explode-6{transform:translateY(-17.5rem)}}.stats{margin-top:4rem}.stat{flex:1;padding:2.5rem 1rem 3rem;border:1px solid #eee;text-align:center}.stat:first-child{margin-right:2.7rem}.stat hr{width:3.5rem;margin:0rem auto 1.2rem}.stat-value{margin:0;font-size:3.6rem;color:#F9553A}.stat-info{max-width:12rem;margin:0 auto;font-size:1.1rem;font-family:"Suisse Int'l";font-weight:500;color:#172835}.tech-img-solo figure{overflow:hidden;position:relative;background-size:cover;background-repeat:no-repeat;background-position:center center}.tech-img-solo figure::before{content:'';display:block;height:0;padding-top:55%}@media (max-width: 767px){.tech-img-solo figure{overflow:hidden;position:relative}.tech-img-solo figure::before{content:'';display:block;height:0;padding-top:65%}}.technology-flow{position:relative;padding:9.6rem 15.3rem 18rem;background-color:#fff;z-index:2}@media (max-width: 767px){.technology-flow{padding:5.8rem 5% 8.8rem}}.technology-flow img{margin-bottom:6.4rem}@media (max-width: 767px){.technology-flow img.flow-img-desktop{display:none}}.technology-flow img.flow-img-mobile{display:block;width:80%;margin-left:auto;margin-right:auto}@media (min-width: 768px){.technology-flow img.flow-img-mobile{display:none}}.copy-block{max-width:66.9rem;margin:0 auto;text-align:center}@media (max-width: 767px){.copy-block{text-align:left}}.copy-block h3{position:relative;margin-bottom:6.8rem}.copy-block h3::after{content:'';position:absolute;bottom:-2.7rem;left:0;right:0;width:6.1rem;height:1px;margin:0 auto;background-color:#F9553A}@media (max-width: 767px){.copy-block h3::after{margin-left:0}}.copy-block p{font-size:1.7rem;line-height:2.5rem}.app-hero{background-size:cover;background-repeat:no-repeat;background-position:center center;overflow:hidden;position:relative;overflow:visible}.app-hero::before{content:'';display:block;height:0;padding-top:56.25%}@media (max-width: 767px){.app-hero{margin-bottom:50px}.app-hero::before{padding-top:165%}}.app-hero-copy{align-items:center;position:absolute;top:0;left:0;width:100%;height:100%;padding:4rem 11.7rem 0}@media (max-width: 767px){.app-hero-copy{align-items:flex-start;padding:76px 5% 0 5%}}.app-hero-copy article{position:relative;max-width:39.5rem}@media (max-width: 767px){.app-hero-copy article{width:100%;height:100%}}.app-hero-copy h1{color:#fff}@media (max-width: 767px){.app-hero-copy h1{max-width:260px}}.app-hero-copy h1 span{color:#F9553A}@media (max-width: 767px){.app-hero-copy h1 span{display:block}}.app-hero-copy hr{width:8rem;margin:4.5rem 0 9.1rem;border-color:#F9553A}@media (max-width: 767px){.app-hero-copy hr{display:none}}@media (max-width: 767px){.app-buttons{justify-content:center;width:100%;position:absolute;bottom:-60px}}.app-buttons a:first-child{margin-right:1rem}.app-features{margin-bottom:5.3rem;overflow:hidden}@media (max-width: 767px){.app-features{margin-left:5%;margin-right:5%}}.app-features-inner{flex-wrap:wrap;margin-right:-2px;margin-bottom:-2px}.app-feature{position:relative;width:33.333%;padding:15.4rem 2rem 2rem;min-height:36.8rem;border-right:1px solid #EBEBEB;border-bottom:1px solid #EBEBEB;text-align:center}@media (max-width: 1023px){.app-feature{width:50%}}@media (max-width: 767px){.app-feature{width:100%;min-height:0;padding:6rem 5%}}.app-feature:nth-child(2) .app-icon svg{max-height:8.3rem}.app-feature h6{margin-bottom:2.5rem;font-family:"Suisse Int'l";font-weight:500;font-size:1.7rem}.app-feature p{max-width:25.7rem;margin:0 auto;font-size:1.6rem}.app-icon{left:0;right:0;margin:0 auto}@media (min-width: 768px){.app-icon{position:absolute;bottom:23rem}}@media (max-width: 767px){.app-icon{margin-bottom:2rem}}.app-icon svg{max-width:6.8rem;max-height:6.8rem}.faq-main{padding:7.4rem 11.7rem 10rem}@media (max-width: 767px){.faq-main{padding:27px 5%}}.faq-main h1{margin-bottom:5.2rem}.faq-block{margin-bottom:5.4rem}.faq-block:not(:last-of-type){border-bottom:1px solid #eee}.faq-cat{margin-bottom:5.1rem;color:#F9553A;font-family:"Suisse Int'l";font-weight:500;font-size:1.2rem;text-transform:uppercase}.faq-row{justify-content:space-between;padding-left:2.7rem;margin-bottom:6.1rem}@media (min-width: 768px){.faq-row{border-left:8px solid #D3E3EA}}@media (max-width: 767px){.faq-row{flex-direction:column;border-width:4px}}.faq-row.is-hidden{display:none}.faq-row p,.faq-row li{font-size:1.8rem;color:#4A6478}.faq-row li{margin-bottom:1rem}.faq-row li ul{margin-top:1rem}.faq-row a{color:#F9553A}.faq-row a:hover{text-decoration:underline}.faq-row .faq-q{position:relative;width:28.5rem;flex-shrink:0;margin-right:6.7rem}@media (max-width: 767px){.faq-row .faq-q{margin-right:0;margin-bottom:2.5rem}}.faq-row .faq-q::before{content:'';position:absolute;top:-1px;left:-15px;width:6px;height:100%;background-color:#D3E3EA}@media (min-width: 768px){.faq-row .faq-q::before{display:none}}.faq-row .faq-q p{font-family:"Suisse Int'l";font-weight:500;color:#172835}.result{padding: calc(100vw / 60 * 1) calc(100vw / 60 * 4);align-items:center}@media (min-width: 1800px){.result{padding: calc(1800px / 60 * 1) calc(1800px / 60 * 4)}}.result:hover .result__index,.result:focus .result__index{opacity:1}.result:hover .result__image,.result:focus .result__image{border-color:#fff;box-shadow:0 10px 30px rgba(0,0,0,0.25)}.result:hover .result__image::after,.result:focus .result__image::after{opacity:1}.result:hover .result__description h4,.result:focus .result__description h4{color:#F9553A}.result:hover .cta-dark-red .cta-arrow-icon::before,.result:focus .cta-dark-red .cta-arrow-icon::before{background:#F9553A}.result:hover .cta-dark-red .cta-arrow-icon svg path,.result:focus .cta-dark-red .cta-arrow-icon svg path{fill:#D3E3EA}.result__index{width: calc(100vw / 60 * 2);height: calc(100vw / 60 * 2);min-width:40px;min-height:40px;align-items:center;justify-content:center;flex-shrink:0;border-radius:50%;color:#fff;position:relative;background-image:url("inc/vectors/results-index-bg.svg");background-position:center;background-repeat:no-repeat;background-size:contain;opacity:0.35;transition:opacity 250ms}@media (min-width: 1800px){.result__index{width: calc(1800px / 60 * 2)}}@media (min-width: 1800px){.result__index{height: calc(1800px / 60 * 2)}}.result__image{height: calc(100vw / 60 * 6);margin-left: calc(100vw / 60 * 2);margin-right: calc(100vw / 60 * 2);width: calc(100vw / 60 * 6);background:#D3E3EA;border:5px solid #FAFCFD;border-radius:50%;box-shadow:0 10px 30px rgba(0,0,0,0);flex-shrink:0;overflow:hidden;position:relative;transition:border-color 250ms, box-shadow 500ms}@media (min-width: 1800px){.result__image{height: calc(1800px / 60 * 6)}}@media (min-width: 1800px){.result__image{margin-left: calc(1800px / 60 * 2)}}@media (min-width: 1800px){.result__image{margin-right: calc(1800px / 60 * 2)}}@media (min-width: 1800px){.result__image{width: calc(1800px / 60 * 6)}}.result__description{padding-right: calc(100vw / 60 * 4);flex:1}@media (min-width: 1800px){.result__description{padding-right: calc(1800px / 60 * 4)}}.result__description h4{font-family:"Suisse Int'l";font-weight:500;margin-bottom:10px;transition:color 250ms}.result__description p{font-family:"Suisse Int'l Book";margin:0 !important}.store-location{transition:background 250ms}.store-location:hover{background:#fff}.stores-list.is-active li a{opacity:1;transform:translate(0)}.stores-list li a{opacity:0;transform:translateY(-25px);transition:opacity 250ms, transform 500ms ease}.wpsl-search{padding: calc(100vw / 60 * 2) calc(100vw / 60 * 4);background:#FAFCFD;margin-bottom:0;width:100%}@media (min-width: 1800px){.wpsl-search{padding: calc(1800px / 60 * 2) calc(1800px / 60 * 4)}}.wpsl-search h2{margin-bottom: calc(100vw / 60 * 1)}@media (min-width: 1800px){.wpsl-search h2{margin-bottom: calc(1800px / 60 * 1)}}.hcp-wrap .wpsl-gmap-canvas{float:none !important;height:90vh !important;width:33.5% !important}.wpsl-results-wrap{position:relative;background:#F9F9F9;height:90vh;overflow:auto;width:66.5%}#wpsl-wrap{margin-bottom:0}#wpsl-wrap #wpsl-result-list li{border-top:1px solid #D3E3EA;border-bottom:none;padding:0}#wpsl-stores{height:auto}#wpsl-stores .wpsl-store-thumb{bottom:0;float:none;height:auto;left:0;margin:0;position:absolute;right:0;top:0;width:100%}#wpsl-result-list{margin-right:0;width:100%}#wpsl-category,.wpsl-input,.wpsl-select-wrap{margin-bottom:0}#wpsl-search-wrap .wpsl-input{display:flex;align-items:center}#wpsl-search-wrap #wpsl-search-input{border:2px solid rgba(118,140,156,0.5);width:121px;padding:9px 12px;transition:border-color 250ms}#wpsl-search-wrap #wpsl-search-input:focus{outline:none;border-color:#768C9C}#wpsl-search-wrap #wpsl-radius{display:flex;align-items:center}.wpsl-dropdown{border:2px solid rgba(118,140,156,0.5);width:96px;transition:border-color 250ms}.wpsl-dropdown.wpsl-active{border-color:#768C9C}#wpsl-search-btn{padding-left: calc(100vw / 60 * 2);padding-right: calc(100vw / 60 * 2);padding-top:10px;padding-bottom:10px;background-image:none;box-shadow:none;background-color:#172835;border-radius:9999px !important;border:none;color:#fff;font-family:"Suisse Int'l";margin-left:15px;transition:background 250ms}@media (min-width: 1800px){#wpsl-search-btn{padding-left: calc(1800px / 60 * 2)}}@media (min-width: 1800px){#wpsl-search-btn{padding-right: calc(1800px / 60 * 2)}}#wpsl-search-btn:hover{background:#768C9C}#wpsl-search-btn:focus{outline:none}.wpsl-preloader{display:none}.location-wrap{position:relative;flex-direction:column}@media (min-width: 960px){.location-wrap{align-items:flex-end;height:90vh;min-height:750px}}@media (min-width: 960px){.location-info{position:absolute;top:0;left:0;height:100%;width:50%;overflow:auto}}@media (min-width: 960px){.location-info .bottom-zip h3{max-width: calc(100vw / 60 * 17);margin:0 auto}}@media (min-width: 960px) and (min-width: 1800px){.location-info .bottom-zip h3{max-width: calc(1800px / 60 * 17)}}.location-info .bottom-zip form{width:auto}@media (min-width: 960px){.location-info .bottom-zip form{max-width: calc(100vw / 60 * 15);margin-top: calc(100vw / 60 * 2)}}@media (min-width: 960px) and (min-width: 1800px){.location-info .bottom-zip form{max-width: calc(1800px / 60 * 15)}}@media (min-width: 960px) and (min-width: 1800px){.location-info .bottom-zip form{margin-top: calc(1800px / 60 * 2)}}@media (max-width: 959px){.location-info .bottom-zip form{max-width:350px}}.location-details{padding: calc(100vw / 60 * 3) calc(100vw / 60 * 3) calc(100vw / 60 * 4);background:#FAFCFD}@media (min-width: 1800px){.location-details{padding: calc(1800px / 60 * 3) calc(1800px / 60 * 3) calc(1800px / 60 * 4)}}.location-details .location-website{display:inline-block;transition:color 250ms}.location-details .location-website:hover{color:#172835}.location-details .location-icon{margin-right: calc(100vw / 60 * 2);width: calc(100vw / 60 * 1.5);height: calc(100vw / 60 * 1.5)}@media (min-width: 1800px){.location-details .location-icon{margin-right: calc(1800px / 60 * 2)}}@media (min-width: 1800px){.location-details .location-icon{width: calc(1800px / 60 * 1.5)}}@media (min-width: 1800px){.location-details .location-icon{height: calc(1800px / 60 * 1.5)}}.location-details .location-icon svg{width:100%;height:100%}.location-details .location-icon.margin-small{margin-right: calc(100vw / 60 * 1)}@media (min-width: 1800px){.location-details .location-icon.margin-small{margin-right: calc(1800px / 60 * 1)}}.location-details .location-address,.location-details .location-phone{padding:20px 0 20px 10px;border-bottom:1px solid #D3E3EA}.location-details .location-address{margin-top: calc(100vw / 60 * 2);align-items:flex-start;border-top:1px solid #D3E3EA}@media (min-width: 1800px){.location-details .location-address{margin-top: calc(1800px / 60 * 2)}}.location-details .location-phone{align-items:center}.location-details .wpsl-locations-details,.location-details .wpsl-location-address{margin:0}.location-details .location-phone p,.location-details .wpsl-locations-details,.location-details .wpsl-opening-hours{flex:1}.location-details .location-hours{margin-top: calc(100vw / 60 * 2);padding-left:15px}@media (min-width: 1800px){.location-details .location-hours{margin-top: calc(1800px / 60 * 2)}}.location-details .wpsl-opening-hours{background:#fff;border:1px solid #D3E3EA !important;border-radius:5px;border-spacing:0}.location-details .wpsl-opening-hours td{padding-right:15px;padding-left:25px;padding-bottom:15px;padding-top:15px;border-bottom:1px solid #D3E3EA !important}.location-details .wpsl-opening-hours td:first-child{border-right:1px solid #D3E3EA !important}.location-details .wpsl-opening-hours tr:last-child td{border-bottom:none !important}.location-map{position:relative}@media (min-width: 960px){.location-map{flex:1;width:50%}}@media (max-width: 959px){.location-map{overflow:hidden;position:relative}.location-map::before{content:'';display:block;height:0;padding-top:56.25%}}.location-map .wpsl-gmap-canvas{position:absolute;top:0;left:0;width:100%;height:100%}.location-images{overflow:hidden;position:relative;background:#172835}.location-images::before{content:'';display:block;height:0;padding-top:56.25%}@media (min-width: 960px){.location-images{width:50%}}.location-images-slider{position:absolute;top:0;left:0;width:100%;height:100%}.images-slider{width:100%;height:100%}.images-slider .slide{display:flex;justify-content:center;align-items:center;width:100%;height:100%}.images-slider img{width:auto;height:auto;max-width:100%;max-height:100%}.images-slider .flickity-viewport{height:100% !important}.product-hero{transition:transform 0.5s cubic-bezier(0.23, 1, 0.32, 1)}@media (min-width: 768px){.product-hero{margin-bottom:5rem}}.product-hero.is-scrolled .product-hero-device{transform:translateY(-10rem)}.product-hero.is-scrolled .product-hero-earbud.e1{transform:translateY(-40rem)}.product-hero.is-scrolled .product-hero-earbud.e2{transform:translateY(-3rem)}@media (min-width: 768px){.prod-hero-inner{align-items:center}}@media (max-width: 767px){.prod-hero-inner{flex-direction:column;padding-top:20px}}.prod-hero-inner .hero-img-mobile{width:80%;margin:0 auto}@media (min-width: 768px){.prod-hero-inner .hero-img-mobile{display:none}}.product-hero-copy{width:50%}@media (max-width: 767px){.product-hero-copy{width:100%}}.product-hero-copy article{padding-left:16rem}@media (max-width: 767px){.product-hero-copy article{padding-left:5%}}.product-hero-copy h1{margin-bottom:5.6rem}.product-hero-copy h1 span{display:block;color:#F9553A}.product-hero-copy p{max-width:36rem}.product-hero-copy .cta-arrow{margin-left:15rem;transform:translateY(10rem)}@media (max-width: 767px){.product-hero-copy .cta-arrow{display:none}}.product-hero-visual{overflow:hidden;position:relative;flex:1;overflow:visible}.product-hero-visual::before{content:'';display:block;height:0;padding-top:111.11111%}@media (max-width: 767px){.product-hero-visual{display:none}}.product-hero-device{position:absolute;top:22%;left:7rem;width:38rem;height:35rem;transform:translateY(0);opacity:1;transition:all 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94);z-index:2}.product-hero-earbud{position:absolute}.product-hero-earbud.e1{top:62%;left:6%;width:16rem;height:19rem;z-index:3;transform:translateY(0);transition:all 0.7s cubic-bezier(0.25, 0.46, 0.45, 0.94)}.product-hero-earbud.e2{top:25%;right:12rem;width:13rem;height:15rem;transform:translateY(0);transition:all 0.6s cubic-bezier(0.25, 0.46, 0.45, 0.94)}.product-video-row{display:flex;background-color:rgba(234,245,250,0.5)}@media (min-width: 768px){.product-video-row{align-items:center}}@media (max-width: 767px){.product-video-row{flex-direction:column;background-color:#F9FBFC}}@media (min-width: 768px){.product-video-row:nth-child(even){flex-direction:row-reverse}}.product-video-row:first-child{background-color:rgba(244,248,250,0.5)}@media (max-width: 767px){.product-video-row:first-child{background-color:#F9FBFC}}.product-video-row:nth-child(2){background-color:#fff}@media (max-width: 767px){.product-video-row:nth-child(2){background-color:#F9FBFC}}.product-video-row:nth-child(2) .video-icon{background-size:55%}.product-video-row:last-child{background-color:rgba(234,245,250,0.5)}@media (max-width: 767px){.product-video-row:last-child{background-color:#F9FBFC}}.product-video-row:last-child .video-icon{background-size:35%}.product-video-row:last-child video{height:102%}.video-block{overflow:hidden;position:relative;flex:1}.video-block::before{content:'';display:block;height:0;padding-top:100%}.video-block video{position:absolute;top:0;left:0;max-width:none;height:100%}@media (max-width: 767px){.video-block video{left:0}}.video-copy-block{flex:1;position:relative;z-index:2}.video-copy-block article{padding:6rem 14.3rem;text-align:center}@media (max-width: 767px){.video-copy-block article{padding:0 5% 40px;text-align:left}}.video-copy-block h4{margin-bottom:4rem}.video-icon{width:9.5rem;height:9.5rem;margin:0 auto 3.7rem;background-color:#fff;background-position:center center;background-repeat:no-repeat;background-size:52%;border-radius:50%;box-shadow:0px 0.5rem 1rem rgba(0,0,0,0.1)}@media (max-width: 767px){.video-icon{width:66px;height:66px;margin:-33px 0 18px}}.product-grid{position:relative;padding:0 11.7rem 8rem}@media (max-width: 767px){.product-grid{padding:30px}}.product-grid .top-grid::after{content:'';display:table;clear:both}.product-grid .bottom-grid::after{content:'';display:table;clear:both}.product-grid .block{background-size:cover;background-repeat:no-repeat;background-position:center center;position:relative;height:initial;float:left;overflow:hidden}.product-grid .block::after{content:'';display:block;height:0}.product-grid .block.block-1{margin-right:1%;margin-bottom:1%;background-color:#768C9C;width:64%}.product-grid .block.block-1::after{padding-top:65%}.product-grid .block.block-2{background-color:#172835;width:35%;margin-bottom:1%;margin-right:0}.product-grid .block.block-2::after{padding-top:58%}.product-grid .block.block-3{background-color:#27445A;width:35%;margin-bottom:1%;margin-right:0}.product-grid .block.block-3::after{padding-top:58%}.product-grid .block.block-4{background-color:#D3E3EA;width:16%;margin-bottom:1%;margin-right:1%}.product-grid .block.block-4::after{padding-top:125.5%}.product-grid .block.block-5{background-color:#C3EBF1;width:32%;margin-bottom:1%;margin-right:1%}.product-grid .block.block-5::after{padding-top:62.8%}.product-grid .block.block-6{float:right;background-color:#63839A;width:50%;margin-bottom:1%;margin-right:0}.product-grid .block.block-6::after{padding-top:82.35%}.product-grid .block.block-7{background-color:#27445A;width:32%;margin-bottom:1%;margin-right:1%}.product-grid .block.block-7::after{padding-top:62.8%}.product-grid .block.block-8{background-color:#F6F9FB;width:16%;margin-bottom:1%;margin-right:1%}.product-grid .block.block-8::after{padding-top:125.5%}.product-box-set{overflow:hidden;position:relative;overflow:visible;background-color:rgba(234,245,250,0.5)}.product-box-set::before{content:'';display:block;height:0;padding-top:50%}@media (min-width: 768px){.product-box-set{margin:10rem 0 15rem}}.box-set{position:absolute;top:-13rem;left:0;right:0;margin:0 auto}@media (min-width: 768px){.box-set{width:89rem}}.box-set img{width:100%}.box-set-item{position:absolute}.box-set-item.i-1{top:36%;right:-3%}.box-set-item.i-1 svg{top:1.3rem;left:-25rem;width:23.6rem;height:8.7rem}.box-set-item.i-2{top:60%;right:-5%}.box-set-item.i-2 svg{top:0.82rem;left:-12rem;width:15.7rem}.box-set-item.i-3{top:60%;left:-2.5%}.box-set-item.i-3 svg{top:0.82rem;left:15.5rem;width:15.7rem}.box-set-item.i-4{top:75%;left:-1%}.box-set-item.i-4 svg{top:0.82rem;left:15rem;width:22.5rem}.box-set-item p{width:15.1rem;font-size:1.6rem;line-height:2.2rem;color:#172835;text-align:right}.box-set-item svg{position:absolute;top:0;left:0}.product-connected{position:relative;padding:8.5rem 11.7rem}@media (min-width: 768px){.product-connected{display:flex;justify-content:flex-end}}@media (max-width: 767px){.product-connected{padding:8.5rem 5% 0}}.product-connected.is-fixed{justify-content:flex-end}.product-connected.is-fixed .device-item.is-active .beacons{transform:scale(1)}.product-connected.is-fixed .device-item.is-active .beacons::after{animation-play-state:running}.product-connected.is-fixed .device-item.is-active img{opacity:1}.product-connected.is-fixed .left-block{position:fixed;top:0}.product-connected.is-fixed .beacon-content.is-active{opacity:1}.product-connected.is-fixed .connected-phone-container{position:fixed;top:8.5rem;left:0;right:0;margin:0 auto}.product-connected.is-absolute .left-block{position:absolute;top:auto;bottom:0}.product-connected.is-absolute .connected-phone-container{position:absolute;top:auto;bottom:5.5rem}@media (min-width: 768px){.product-connected .left-block{position:absolute;top:0;left:11.7rem;display:flex;align-items:center;height:100vh;width:37.2rem}}@media (min-width: 768px){.product-connected .left-block article{width:32.8rem}}.product-connected .left-block h2{color:#172835;margin-bottom:50px}.product-connected .left-block a{display:inline-flex;align-items:center;color:#F9553A}.product-connected .left-block a svg{margin-left:12px;height:10px}.product-connected .right-block{position:relative;width:70%}@media (min-width: 768px){.product-connected .right-block{display:flex;justify-content:flex-end;padding-left:7rem}}@media (max-width: 767px){.product-connected .right-block{width:100%}}.connected-phone-container{position:absolute;left:0;right:0;margin:0 auto;background-size:contain;background-position:center;background-repeat:no-repeat;width:34.2rem;height:63.3rem}@media (max-width: 767px){.connected-phone-container{position:relative}}.connected-phone-container .beacons{display:flex;align-items:center;justify-content:center;position:absolute;height:22px;width:22px;z-index:10;transition:transform 500ms cubic-bezier(0.23, 1, 0.32, 1)}@media (min-width: 768px){.connected-phone-container .beacons{transform:scale(0)}}.connected-phone-container .beacons.beacon-1{right:15%;top:20%}.connected-phone-container .beacons.beacon-2{left:32%;top:30.25%}.connected-phone-container .beacons.beacon-3{right:19%;bottom:48%}.connected-phone-container .beacons.beacon-4{left:58%;bottom:37.2%}.connected-phone-container .beacons.beacon-5{right:27%;bottom:15.7%}.connected-phone-container .beacons div{position:relative;display:flex;align-items:center;justify-content:center;height:16px;width:16px;border-radius:999px;background-color:#fff;border:solid 2px #F9553A;z-index:1}.connected-phone-container .beacons p{text-align:center;font-size:8px;color:#F9553A;line-height:normal}.connected-phone-container .beacons::after{content:'';position:absolute;left:-19px;top:-19px;width:60px;height:60px;border-radius:50%;background-color:#F9553A;opacity:.3;z-index:0}@media (min-width: 768px){.connected-phone-container .beacons::after{animation:radiate 2.5s ease infinite;animation-play-state:paused}}@media (max-width: 767px){.connected-phone-container .beacons::after{width:38px;height:38px;left:-8px;top:-8px}}.app-device .device-item{position:absolute;width:100%;height:100%}.product-connected-info{z-index:1}@media (min-width: 768px){.product-connected-info{width:50%;padding-top:60vh}}.product-connected-info .beacon-content{margin-bottom:30rem;background-color:#fff}@media (min-width: 768px){.product-connected-info .beacon-content{opacity:0;transition:opacity 350ms}}@media (max-width: 767px){.product-connected-info .beacon-content{margin-bottom:43px}}.product-connected-info h6{color:#172835;margin-bottom:2.5rem}.product-connected-info p{font-size:1.6rem;color:#768C9C}.product-connected-info strong{font-family:"Suisse Int'l";font-weight:500}.product-schematic{padding:9rem 11.7rem}@media (max-width: 767px){.product-schematic{padding:9rem 0}}.product-schematic h2{text-align:center;color:#172835;max-width:500px;margin:0 auto 40px}.schematic-table-wrap{font-size:1.5rem}@media (max-width: 767px){.schematic-table-wrap.desktop-only{display:none}}@media (min-width: 768px){.schematic-table-wrap.mobile-only{display:none}}.schematic-table-wrap table{border-collapse:collapse;width:100%}.schematic-table-wrap table th,.schematic-table-wrap table td{padding:3rem}.schematic-table-wrap table th{position:relative;text-align:left;font-weight:normal;font-size:1.8rem}.schematic-table-wrap table th:first-child{border-bottom:solid 2px #E9F1F4}.schematic-table-wrap table th:nth-child(2) img{position:absolute;top:1.8rem;right:2.7rem;width:12.1rem}.schematic-table-wrap table th:nth-child(3) img{position:absolute;top:1.8rem;right:2.9rem;width:10.1rem}.schematic-table-wrap table tr:not(.header-row) td:nth-child(2),.schematic-table-wrap table tr:not(.header-row) td:nth-child(3){border-bottom:solid 2px #fff}.schematic-table-wrap table tr:not(.header-row):last-child td:nth-child(2),.schematic-table-wrap table tr:not(.header-row):last-child td:nth-child(3){border-bottom:solid 2px #E9F1F4}.schematic-table-wrap table td{border-bottom:solid 2px #E9F1F4;color:#4A6273;vertical-align:top}.schematic-table-wrap table td:first-child{color:#768C9C}.schematic-table-wrap table td:nth-child(2){border-right:solid 2px #D3E3EA;border-left:solid 2px #D3E3EA;background-color:#EBF4FB}.schematic-table-wrap table td:nth-child(3){background-color:#F6F9FB;border-right:solid 2px #E9F1F4}.schematic-table-wrap table .header-row th:nth-child(2){background-color:#172835;color:#fff;border-top-left-radius:5px}.schematic-table-wrap table .header-row th:nth-child(3){background-color:#284458;color:#fff;border-top-right-radius:5px}.schematic-table-wrap table .dimensions td:first-child,.schematic-table-wrap table .weight td:first-child,.schematic-table-wrap table .battery td:first-child{border-left:solid 2px #E9F1F4}.schematic-table-wrap table .battery td:first-child{border-bottom-left-radius:5px}.schematic-table-wrap table .battery td:last-child{border-bottom-right-radius:5px}.schematic-table-wrap h3{font-family:"Suisse Int'l";font-weight:500;font-size:24px;padding-left:30px;margin-bottom:30px}.schematic-table-wrap .table-column{background-color:#EBF4FB}.schematic-table-wrap .table-column.column-earpiece{background-color:#F6F9FB}.schematic-table-wrap .table-column.column-earpiece .table-column-heading{background-color:#284458}.schematic-table-wrap .table-column-heading{position:relative;background-color:#172835;padding:18px 30px}.schematic-table-wrap .table-column-heading p{color:#fff;font-family:"Suisse Int'l";font-weight:500;font-size:15px}.schematic-table-wrap .table-column-heading img{position:absolute}.schematic-table-wrap .table-column-heading img.table-img-brain{top:-30px;right:30px;height:108px;width:73px}.schematic-table-wrap .table-column-heading img.table-img-earpiece{top:-25px;right:30px;height:117px;width:100px;transform:scaleX(-1)}.schematic-table-wrap .table-column-data{padding:18px 30px 23px}.schematic-table-wrap .table-column-data:not(:last-child){border-bottom:2px solid #fff}.schematic-table-wrap .table-column-data p{margin:0;font-family:"Suisse Int'l";font-size:14px;color:#4A6273}.schematic-table-wrap .table-column-data p:first-child{color:#172835;font-weight:500;margin-bottom:5px}.product-tech-preview{align-items:center;padding:10.9rem 5% 13.8rem;background-color:rgba(211,227,234,0.25)}@media (min-width: 768px){.product-tech-preview{justify-content:center}}@media (max-width: 767px){.product-tech-preview{flex-direction:column;padding:48px 5% 108px}}.product-tech-preview article{max-width:50rem}.product-tech-preview h3{margin-bottom:2rem}.product-tech-preview a{margin-top:6rem}@media (max-width: 767px){.product-tech-preview a{margin-top:10px}}.product-tech-preview img{width:32.3rem;height:21.4rem}@media (max-width: 767px){.product-tech-preview img{width:163px;height:108px;margin-bottom:36px}}@media (min-width: 768px){.product-tech-preview img{transform:translateX(-7.1rem)}}body.teaser header,body.teaser footer{display:none;pointer-events:none}body.teaser div.max-container{padding-top:0}body.teaser .btn{min-width:231px}body.teaser main.teaser-container .teaser-wrap{max-width:990px}@media (max-width: 767px){body.teaser main.teaser-container .teaser-wrap{max-width:100%}}main.teaser-container .box{display:flex;flex-wrap:wrap;align-items:center;align-content:space-between;min-height:100vh}main.teaser-container .teaser-wrap{padding:0 5% 40px;max-width:1100px;margin:0 auto}@media (max-width: 767px){main.teaser-container .teaser-wrap{max-width:100%;padding:20px 0}}main.teaser-container div.teaser-header{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;width:100%;padding-top:40px;padding-left:5%;padding-right:5%}@media (max-width: 767px){main.teaser-container div.teaser-header{justify-content:center;padding-top:60px}main.teaser-container div.teaser-header a.logo{margin-bottom:20px}main.teaser-container div.teaser-header div.teaser-form-wrap{display:none;pointer-events:none}}main.teaser-container div.teaser-content{width:100%;display:flex;align-items:center;flex-wrap:wrap}@media (max-width: 767px){main.teaser-container div.teaser-content{text-align:center}}main.teaser-container div.teaser-content .l-col{width:59%;border-right:1px solid rgba(118,140,156,0.5);padding-right:70px;padding-top:10px;padding-bottom:20px;margin-left:auto}@media (max-width: 767px){main.teaser-container div.teaser-content .l-col{width:100%;border-right:none;margin-bottom:40px;border-bottom:1px solid rgba(118,140,156,0.5);padding:0 10% 40px}}main.teaser-container div.teaser-content .l-col p{margin:13px 0 35px}main.teaser-container div.teaser-content .l-col p br{display:none}@media (max-width: 767px){main.teaser-container div.teaser-content .l-col p{margin:18px 0 38px;color:#172835;opacity:0.7}main.teaser-container div.teaser-content .l-col p br{display:block}}main.teaser-container div.teaser-content h2{font-size:calc(28px + 12 * ((100vw - 420px) / 604));color:#172835;line-height:127.93%;margin:0 auto}@media screen and (max-width: 420px){main.teaser-container div.teaser-content h2{font-size:28px}}@media screen and (min-width: 1024px){main.teaser-container div.teaser-content h2{font-size:40px}}@media (max-width: 767px){main.teaser-container div.teaser-content h2{max-width:450px;margin:0 auto}}main.teaser-container div.teaser-inner{margin:0 auto;width:41%;padding-left:60px;display:flex;justify-content:flex-end}@media (max-width: 767px){main.teaser-container div.teaser-inner{width:100%;padding:0 10%;display:block}}main.teaser-container div.teaser-inner .top{display:flex;flex-wrap:wrap;align-items:center}@media (max-width: 767px){main.teaser-container div.teaser-inner .top{justify-content:center}}main.teaser-container div.teaser-inner h3{font-size:calc(28px + 4 * ((100vw - 420px) / 604));line-height:115.43%;margin:0;margin-top:5px}@media screen and (max-width: 420px){main.teaser-container div.teaser-inner h3{font-size:28px}}@media screen and (min-width: 1024px){main.teaser-container div.teaser-inner h3{font-size:32px}}@media (max-width: 767px){main.teaser-container div.teaser-inner h3{width:100%;margin-bottom:15px;margin-top:20px}}main.teaser-container div.teaser-inner svg{width:38px;height:38px;margin-right:15px}@media (max-width: 767px){main.teaser-container div.teaser-inner svg{margin-right:0}}main.teaser-container div.teaser-inner p{color:#768C9C;margin:23px 0 51px}@media (max-width: 959px){main.teaser-container div.teaser-inner p br{display:none}}@media (max-width: 767px){main.teaser-container div.teaser-inner p{margin:0px 0 24px;color:#172835;opacity:0.7}main.teaser-container div.teaser-inner p br{display:block}}main.teaser-container div.teaser-footer{width:100%;text-align:center;border-top:0.1rem solid rgba(118,140,156,0.25)}@media (max-width: 767px){main.teaser-container div.teaser-footer{border-top:none;margin-top:35px}}main.teaser-container div.teaser-footer a{color:#94ACBE}main.teaser-container div.teaser-footer a:hover{text-decoration:underline}main.teaser-container div.teaser-footer p{font-size:12px;color:#94ACBE;padding:30px 5%}@media (max-width: 767px){main.teaser-container div.teaser-footer p{padding:3rem 10%}}div.teaser-form-wrap{display:flex;flex-wrap:wrap;align-items:center}div.teaser-form-wrap p{color:#768C9C;margin-right:30px}div.teaser-form-wrap.bottom-teaser{pointer-events:none;display:none;margin-bottom:30px}@media (max-width: 767px){div.teaser-form-wrap{width:100%}div.teaser-form-wrap.bottom-teaser{display:block;pointer-events:auto}div.teaser-form-wrap p,div.teaser-form-wrap form{width:100%}div.teaser-form-wrap p{text-align:center;margin-right:0;margin-bottom:10px}}body.careers header,body.careers footer{display:none;pointer-events:none}body.careers div.max-container{padding-top:0}body.careers div.teaser-header{width:100%;border-bottom:solid 1px #eee;padding:30px 5% 20px}body.careers div.teaser-header a.logo svg{width:25px}section.careers-content-wrap{padding:80px 5%}section.careers-content-wrap div.careers-listing{max-width:700px;margin:0 auto}section.careers-content-wrap div.careers-listing h1{font-size:calc(28px + 68 * ((100vw - 768px) / 1032));color:#172835;margin-bottom:50px}@media screen and (max-width: 768px){section.careers-content-wrap div.careers-listing h1{font-size:28px}}@media screen and (min-width: 1800px){section.careers-content-wrap div.careers-listing h1{font-size:96px}}section.careers-content-wrap div.careers-listing h2{font-size:calc(18px + 13 * ((100vw - 768px) / 1032));color:#F9553A}@media screen and (max-width: 768px){section.careers-content-wrap div.careers-listing h2{font-size:18px}}@media screen and (min-width: 1800px){section.careers-content-wrap div.careers-listing h2{font-size:31px}}div#wrapper{padding:0 !important}div#wrapper div#logo{display:none}div#wrapper h1{font-size:58px;color:#172835;margin-bottom:30px}@media (max-width: 767px){div#wrapper h1{font-size:32px}}div#wrapper h2{font-size:24px;color:#F9553A;margin-top:30px}@media (max-width: 767px){div#wrapper h2{font-size:22px}}div#wrapper div#app_body{padding:0 !important;max-width:100%}div#wrapper div#header{padding-right:0}div#wrapper div#header span.company-name,div#wrapper div#header a,div#wrapper div#header div.location{display:none}div#wrapper h1.app-title{font-size:58px;color:#172835;margin-bottom:50px}@media (max-width: 767px){div#wrapper h1.app-title{font-size:32px}}div#wrapper p,div#wrapper li{font-family:"Suisse Int'l";font-style:normal;font-weight:normal;font-size:18px;line-height:1.4em;color:#768C9C}div#wrapper ul{margin:30px 0}div#wrapper li{padding-left:10px}div#wrapper li:not(:last-child){margin-bottom:20px}div#wrapper section.level-0{position:relative;padding-bottom:50px;padding-left:210px;margin-top:60px;border-bottom:solid 1px #eee}div#wrapper section.level-0 h3{position:absolute;top:0;left:0;width:190px;max-width:190px;font-family:"Suisse Int'l";font-style:normal;font-weight:500;font-size:18px;color:#172835}div#wrapper section.level-0 div.opening{position:relative;padding-left:20px;padding-top:10px;padding-bottom:10px;margin-bottom:16px;border-left:solid 6px #EFF9FE}div#wrapper section.level-0 div.opening a{font-family:"Suisse Int'l";font-style:normal;font-weight:normal;font-size:24px;color:#172835;text-decoration:none;transition:color 250ms ease}div#wrapper section.level-0 div.opening a:hover{color:#F9553A}div#wrapper section.level-0 div.opening span{font-family:"Suisse Int'l";font-style:normal;font-weight:normal;font-size:18px;color:#768C9C}div#wrapper div#application{max-width:100%}.plicy--main-content .policy-continer{margin:12rem auto;max-width:750px;width:80%}@media (max-width: 767px){.plicy--main-content .policy-continer{width:100%;max-width:100%;padding:0 5%;margin:8rem auto}}.plicy--main-content .tc-box{padding-left:40px;position:relative;margin-top:70px}@media (max-width: 767px){.plicy--main-content .tc-box{margin-top:50px}}.plicy--main-content .tc-box:before{content:'';width:8px;height:100%;background-color:#D3E3EA;position:absolute;top:0;left:0;opacity:0.5}.plicy--main-content h1{font-size:calc(33px + 15 * ((100vw - 420px) / 604));line-height:115.43%;color:#172835;margin-bottom:45px}@media screen and (max-width: 420px){.plicy--main-content h1{font-size:33px}}@media screen and (min-width: 1024px){.plicy--main-content h1{font-size:48px}}@media (max-width: 767px){.plicy--main-content h1{margin-bottom:20px}}.plicy--main-content h3{font-size:18px;color:#172835;line-height:149.15%;font-weight:600}.plicy--main-content .e-date{color:#172835;font-size:18px;font-weight:500;line-height:149.15%}@media (max-width: 767px){.plicy--main-content .e-date{font-size:16px}}.plicy--main-content hr{margin-top:50px}@media (max-width: 767px){.plicy--main-content hr{margin:30px 0 35px}}.plicy--main-content p{color:#4A6478;font-size:18px;line-height:149.15%}@media (max-width: 767px){.plicy--main-content p{font-size:16px}}.plicy--main-content li{color:#4A6478;font-size:18px;line-height:149.15%}@media (max-width: 767px){.plicy--main-content li{font-size:16px}}.plicy--main-content a{color:#1992D4;transition:0.35s}.plicy--main-content a:hover{text-decoration:underline}.logo-mark{display:none}.policy .logo-mark{display:block}.policy footer,.policy header{display:none}.get-early-access .teaser-content .consumer-form-wrap .form-wrap{padding-bottom:40px}.get-early-access main.teaser-container .teaser-wrap{padding:0 5%;min-height:calc(100vh - 269px);margin-top:20px}@media (max-width: 767px){.get-early-access main.teaser-container .teaser-wrap{min-height:calc(100vh - 242px)}}.get-early-access .g-e-a-content{margin-top:110px}@media (max-width: 767px){.get-early-access .g-e-a-content{max-width:300px;margin:0 auto}}@media (max-width: 639px){.get-early-access .g-e-a-content{max-width:100%}}.get-early-access main.teaser-container .box{display:block;position:relative}.get-early-access main.teaser-container .teaser-content{display:block;text-align:center}.get-early-access div.teaser-header{margin-bottom:40px}@media (max-width: 767px){.get-early-access div.teaser-header{margin-bottom:0}}.g-e-a-content .top-copy p{margin:20px 0 51px}.g-e-a-content .top-copy p br{display:none}@media (max-width: 767px){.g-e-a-content .top-copy p{margin:30px 0 50px;color:#172835;opacity:0.7}.g-e-a-content .top-copy p br{display:block}}.g-e-a-content.is-active .top-copy{display:none}@media (max-width: 767px){.g-e-a-content.is-active .top-copy{display:block}}.g-e-a-content.is-active .btn-wrap .btn{background-color:#fff;color:#94ACBE;border:2.26785px solid #94ACBE}.g-e-a-content.is-active .btn-wrap .btn.is-active{border:2.26785px solid #F9553A;color:#F9553A}.g-e-a-content.is-active .btn-wrap .btn.is-active svg{display:block}.g-e-a-content .btn-wrap{display:flex;flex-wrap:wrap;justify-content:center}.g-e-a-content .btn-wrap svg{position:absolute;left:15px;transform:translateY(-50%);top:50%;width:14px;height:10px;display:none}.g-e-a-content .btn-wrap .btn{min-width:310px;position:relative;margin-bottom:0}@media (max-width: 767px){.g-e-a-content .btn-wrap .btn{min-width:inherit;width:100%}}.g-e-a-content .btn-wrap .btn:not(:last-child){margin-right:15px}@media (max-width: 767px){.g-e-a-content .btn-wrap .btn:not(:last-child){margin-right:0;margin-bottom:23px}}.g-e-a-content h2{font-size:calc(28px + 12 * ((100vw - 420px) / 604));line-height:127.93%;color:#172835}@media screen and (max-width: 420px){.g-e-a-content h2{font-size:28px}}@media screen and (min-width: 1024px){.g-e-a-content h2{font-size:40px}}.get-early-access .teaser-content .consumer-form-wrap{max-width:630px;margin:38px auto 0}.get-early-access .teaser-content .consumer-form-wrap .form-wrap{display:none}.get-early-access .teaser-content .consumer-form-wrap .form-wrap .btn-wrap{text-align:left}.get-early-access .teaser-content .consumer-form-wrap .form-wrap .formbtn{margin-top:15px}.get-early-access .teaser-content .consumer-form-wrap .sub-header{text-align:left;color:#172835;font-weight:500;font-family:"Suisse Int'l";margin-bottom:30px}@media (max-width: 767px){.get-early-access .teaser-content .consumer-form-wrap .sub-header{font-size:20px}}.get-early-access .teaser-content .consumer-form-wrap form{display:flex;flex-wrap:wrap;margin-top:1.5rem;justify-content:space-between}.get-early-access .teaser-content .consumer-form-wrap form input{width:100% !important;border:1.5px solid #D3E3EA;padding:18px 26px !important;font-size:18px !important;font-family:"Suisse Int'l" !important;font-weight:500;line-height:119.32% !important;min-height:inherit !important}.get-early-access .teaser-content .consumer-form-wrap form input[type="submit"]{min-width:inherit;width:216px !important;border:2.26785px solid #F9553A;padding:11px 15px !important}@media (max-width: 767px){.get-early-access .teaser-content .consumer-form-wrap form input[type="submit"]{width:100% !important;margin-bottom:0}}.get-early-access .teaser-content .consumer-form-wrap form input[type="submit"]:hover{background-color:#DC371C;border:2.26785px solid #DC371C}.get-early-access .teaser-content .consumer-form-wrap label.gfield_label{display:none}.get-early-access .teaser-content .consumer-form-wrap .ginput_container{margin-top:0}.get-early-access .teaser-content .consumer-form-wrap .gform_footer{display:none}.get-early-access .teaser-content .consumer-form-wrap ul.gform_fields{display:flex;flex-wrap:wrap;justify-content:space-between}.get-early-access .teaser-content .consumer-form-wrap li.checkbox{margin-bottom:0 !important}.get-early-access .teaser-content .consumer-form-wrap ul.gfield_checkbox{margin-bottom:0}.get-early-access .teaser-content .consumer-form-wrap ul.gfield_checkbox li{display:flex;align-items:flex-start;margin-bottom:2px}.get-early-access .teaser-content .consumer-form-wrap ul.gfield_checkbox li input[type="checkbox"]{margin-top:4px}.get-early-access .teaser-content .consumer-form-wrap ul.gfield_checkbox label{font-size:14px;font-family:"Suisse Int'l" !important;color:#768C9C;line-height:159.15%;padding-left:25px;font-weight:400 !important;max-width:100% !important;width:100% !important}.get-early-access .teaser-content .consumer-form-wrap ul.gfield_checkbox a{color:#172835;font-size:14px;font-family:"Suisse Int'l" !important}.get-early-access .teaser-content .consumer-form-wrap ul.gfield_checkbox a:hover{text-decoration:underline}.get-early-access .teaser-content .consumer-form-wrap li.gfield{margin-bottom:12px;margin-top:0;width:calc(50% - 6px);padding-right:0}.get-early-access .teaser-content .consumer-form-wrap li.gfield .validation_message{display:none}.get-early-access .teaser-content .consumer-form-wrap li.gfield.gfield_error{background-color:#fff;border:none;padding:0}.get-early-access .teaser-content .consumer-form-wrap li.gfield.gfield_error input{border:1px solid #F9553A !important}.get-early-access .teaser-content .consumer-form-wrap li.gfield.gfield_error .validation_message{display:block}.get-early-access .teaser-content .consumer-form-wrap li.gfield .ginput_container{margin-top:0 !important}@media (max-width: 767px){.get-early-access .teaser-content .consumer-form-wrap li.gfield{width:100%}}.get-early-access .teaser-content .consumer-form-wrap li.gfield.checkbox{margin-top:10px}.get-early-access .teaser-content .consumer-form-wrap li.gfield.checkbox.gfield_error ul li{border-top:1.5px solid #F9553A;border-bottom:1.5px solid #F9553A;padding-top:5px !important;padding-bottom:5px !important}.get-early-access .teaser-content .consumer-form-wrap li.gfield.checkbox,.get-early-access .teaser-content .consumer-form-wrap li.gfield.practice{width:100%}.get-early-access .teaser-content .consumer-form-wrap .validation_error{border:none;font-size:14px;color:#F9553A;font-family:"Suisse Int'l" !important;font-weight:500;line-height:159.15%;padding:0;margin:0;margin-bottom:20px}.get-early-access .teaser-content .consumer-form-wrap .validation_message{font-weight:500;font-size:12px;line-height:17px;font-family:"Suisse Int'l" !important;color:#F9553A;padding:0;margin:0;margin-top:5px}.get-early-access .teaser-content .consumer-form-wrap .zip-code span.address_zip{width:100%;padding:0}.get-early-access .teaser-content .consumer-form-wrap .zip-code span.address_zip input{width:100%;margin-bottom:0 !important}.get-early-access .teaser-content .consumer-form-wrap span.gfield_required{display:none}#grnhse_iframe div#wrapper p,div#wrapper li{font-size:16px}body.thank-you main.teaser-container .teaser-wrap{padding:0}@media (max-width: 639px){body.thank-you .g-e-a-content{margin:0 auto}}@media (max-width: 639px){body.thank-you main.teaser-container .box{display:block;position:relative}body.thank-you main.teaser-container .box .teaser-footer{position:absolute;bottom:0;left:0}}.thank-you-content{text-align:center;width:100%;max-width:440px}@media (min-width: 640px){.thank-you-content{margin-bottom:70px}}@media (max-width: 639px){.thank-you-content{padding:0 10%;margin-top:40px}}.thank-you-content svg{width:68px;height:68px}@media (max-width: 639px){.thank-you-content svg{width:47px;height:47px}}.thank-you-content h1{font-size:calc(28px + 10 * ((100vw - 420px) / 604));margin-top:23px;margin-bottom:26px}@media screen and (max-width: 420px){.thank-you-content h1{font-size:28px}}@media screen and (min-width: 1024px){.thank-you-content h1{font-size:38px}}@media (max-width: 639px){.thank-you-content h1{margin-bottom:36px;margin-top:30px}}.thank-you-content p{color:#768C9C}@media (max-width: 639px){.thank-you-content p{color:#172835;opacity:0.7}}

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInN0eWxlLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvZmxpY2tpdHkvZGlzdC9mbGlja2l0eS5jc3MiLCIuLi9ub2RlX21vZHVsZXMva25hcHNhY2sva25hcHNhY2svX3Jlc2V0LnNjc3MiLCIuLi9ub2RlX21vZHVsZXMva25hcHNhY2sva25hcHNhY2svX2FuaW1hdGlvbi5zY3NzIiwiYmFzZS9fZm9udHMuc2NzcyIsImJhc2UvX2NvbG9ycy5zY3NzIiwiYmFzZS9fdmFyaWFibGVzLnNjc3MiLCJiYXNlL190eXBvZ3JhcGh5LnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvaW5jbHVkZS1tZWRpYS9kaXN0L19pbmNsdWRlLW1lZGlhLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMva25hcHNhY2sva25hcHNhY2svX3R5cG9ncmFwaHkuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9rbmFwc2Fjay9rbmFwc2Fjay9fbGF5b3V0LnNjc3MiLCJiYXNlL19sYXlvdXQuc2NzcyIsImJhc2UvX21peGlucy5zY3NzIiwiYmFzZS9fZmxleC5zY3NzIiwiYmFzZS9fYW5pbWF0aW9ucy5zY3NzIiwibW9kdWxlcy9fYXVkaW8tZGVtby5zY3NzIiwibW9kdWxlcy9fY3RhLWFycm93LnNjc3MiLCJtb2R1bGVzL19idXR0b25zLnNjc3MiLCJtb2R1bGVzL19mb290ZXIuc2NzcyIsIm1vZHVsZXMvX2hlYWRlci5zY3NzIiwibW9kdWxlcy9fZm9ybXMuc2NzcyIsIm1vZHVsZXMvX2xvYWRpbmcuc2NzcyIsIm1vZHVsZXMvX3F1b3Rlcy5zY3NzIiwibW9kdWxlcy9fYm90dG9tLWZvcm0uc2NzcyIsInBhZ2VzL19ob21lLnNjc3MiLCJwYWdlcy9fcHJvZHVjdC5zY3NzIiwicGFnZXMvX3RlY2hub2xvZ3kuc2NzcyIsInBhZ2VzL19hcHAuc2NzcyIsInBhZ2VzL19mYXEuc2NzcyIsInBhZ2VzL19oZWFsdGgtY2FyZS1wcm9mZXNzaW9uYWxzLnNjc3MiLCJwYWdlcy9fc2luZ2xlLWxvY2F0aW9uLnNjc3MiLCJwYWdlcy9fdGVhc2VyLnNjc3MiLCJwYWdlcy9fY2FyZWVycy5zY3NzIiwicGFnZXMvX3BvbGljeS5zY3NzIiwicGFnZXMvX2dldC1lYXJseS1hY2Nlc3Muc2NzcyIsInBhZ2VzL190aGFuay15b3Uuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7RUFRRTs7aURDTitDLGtCQUcvQyxpQkFBa0IsQ0FDbkIsd0JBRXlCLFlBQWEsQ0FBSSxtQkFHekMsZ0JBQ0Esa0JBQ0EsV0FBWSxDQUNiLGlCQUdDLGtCQUNBLFdBQ0EsV0FBWSxDQUNiLCtCQUtDLHdDQUNBLHlCQUNHLEFBQ0MscUJBQ0ksZ0JBQWlCLENBQzFCLGtEQUdDLFlBQ0EsQUFDQSxXQUFZLENBQ2Isa0VBSUMsZUFBZ0IsQ0FDakIsaUJBS0Msa0JBQ0Esa0NBQ0EsWUFDQSxVQUFXLENBQ1osdUJBR0MsaUJBQ0EsY0FBZSxDQUNoQix1QkFHQyxhQUNBLHlCQUEwQixDQUMzQix3QkFHQyxXQUFZLENBQ2IsMEJBR0MsWUFDQSxZQUVBLG1CQUFvQixDQUNyQixzQkFHQyxpQkFBa0IsQ0FDbkIsMkJBS0MsUUFDQSxXQUNBLFlBQ0Esa0JBRUEsMEJBQTJCLENBQzVCLG9DQUVxQyxTQUFVLENBQUksZ0NBQ2xCLFVBQVcsQ0FBSSxrREFHL0MsVUFDQSxVQUFXLENBQ1osOENBRUMsV0FDQSxTQUFVLENBQ1gsaURBR0Msa0JBQ0EsU0FDQSxRQUNBLFVBQ0EsVUFBVyxDQUNaLG9CQUtDLGtCQUNBLFdBQ0EsYUFDQSxVQUNBLFNBQ0EsZ0JBQ0Esa0JBQ0EsYUFBYyxDQUNmLGtDQUVtQyxhQUFjLENBQUkseUJBR3BELHFCQUNBLFdBQ0EsWUFDQSxhQUNBLGdCQUNBLGtCQUNBLGFBQ0EsY0FBZSxDQUNoQixxQ0FHQyxTQUFVLENDZVYsS0FDRSx1QkFDQSwwQkFDQSw2QkFBOEIsQ0FDL0IsS0FHQyxRQUFTLENBQ1Ysb0ZBY0MsYUFBYyxDQUNmLDRCQU1DLHFCQUNBLHVCQUF3QixDQUN6QixzQkFHQyxhQUNBLFFBQVMsQ0FDVixrQkFJ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Qiw2QkFDQyxDQUFrQiwyQkFFakIsb0J2QmxMUixDQUFPLGlCdUJ1TEUsbUNqQnZMNkMsb0NBQUEsaUJpQjBMMUMsb0JBQ0csc0JBQ0UsZ0JBQ04seUJ2QnRMSixnQ3VCd0xvQixZQUNwQixXdkJyTUYsMkJBYlMsaUJ1QnFORiwyQkFDTCxDQUFnQiwyQnJCb1ZELGlCcUJqV2IsbUNqQjlLVSxDQUE4QyxDaUJvTXZFLDJCckIyVTRCLGlCcUJqV2Isb0NqQjlLVSxDQUE4QyxDaUJvTXZFLHVCQVBRLGtCdkJ0TUYsQ0FBTyx1QnVCME1MLFlBQ0ksQ0FBSSxnQkFJRixZQUNKLENBQUksZUN6T0Qsa0JBQ00scUJBQ0YsQ0FBTSwwQnRCK2lCSSxlc0JqakJkLHFCQUtXLFlBQ1QsZ0JBQ0EsQ0FBSyxDQUVwQiwwQnRCd2lCMkIsZXNCdGlCZCxrQkFFUSxNQUNaLE9BQ0MsWUFDSyxVQUNGLGFBQ0EsQ0FBSSxDQXNCakIsMEJ0QnlnQjJCLDhCc0I1aEJaLGlDbEJJNkMsYWtCRC9DLENBQU0sQ0FFakIsa0R0QnVoQjBCLDhCc0I1aEJiLGlDbEJhVSxDQUE4QyxDa0JSckUsZ0NBRWUsVUFDUCxDQUFJLDBCdEJvaEJhLGdDc0JyaEJWLGlDbEJIMkMsZ0NBQXJDLENBQXFDLENrQmMxRCxrRHRCMGdCMEIsZ0NzQnJoQlgsaUNsQk1RLENBQThDLENrQktyRSxrRHRCMGdCMEIsZ0NzQnJoQlgsaUNsQk1RLENBQThDLENrQktyRSwwQnRCMGdCeUIsZ0NzQnJoQlYsZUFTRCxDQUFLLENBRW5CLGtCQUdjLHdFbEJqQjRDLGtCTkhoRCxDQUFPLDJCRTJoQlMsa0JzQnZnQlosMEVsQlJTLENBQThDLENrQjBGdkUsb0NBOUVrQixxQkFDTSxzQkFDVCxDQUFXLDBDQUVoQixheEJsQkosQ0FBTyxpQ3dCdUJFLG1DbEI5QjZDLDhCQUFBLDhCQUFyQyxDQUFxQywyQkp3aEJoQyxpQ3NCMWZiLG1DbEJyQlUsQ0FBOEMsQ2tCa0NyRSwyQnRCNmUwQixpQ3NCMWZiLDhCbEJyQlUsQ0FBOEMsQ2tCa0NyRSwyQnRCNmUwQixpQ3NCMWZiLCtC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dCI6WyIvKiFcblRoZW1lIE5hbWU6IFdoaXNwZXJcbkF1dGhvcjogS05JXG5BdXRob3IgVVJJOiBodHRwczovL2t1cnRub2JsZS5jb20vXG5EZXNjcmlwdGlvbjogVGhlbWUgZm9yIHdoaXNwZXIuYWlcblZlcnNpb246IDEuMFxuTGljZW5zZTogTm8gTGljZW5zZVxuXG4qL1xuXG5cbi8vIFZlbmRvclxuQGltcG9ydCAnLi9ub2RlX21vZHVsZXMvaW5jbHVkZS1tZWRpYS9kaXN0L2luY2x1ZGUtbWVkaWEnO1xuQGltcG9ydCAnLi9ub2RlX21vZHVsZXMva25hcHNhY2sva25hcHNhY2svaW5kZXgnO1xuQGltcG9ydCAnLi9ub2RlX21vZHVsZXMvZmxpY2tpdHkvZGlzdC9mbGlja2l0eSc7XG5cbi8vIEtuYXBzYWNrXG5AaW5jbHVkZSBub3JtYWxpemUoKTtcbkBpbmNsdWRlIHJlc2V0LWVsZW1lbnRzKCk7XG5AaW5jbHVkZSBpbml0aWFsaXplLWFuaW1hdGlvbigpO1xuXG4vLyBiYXNlIGVsZW1lbnRzXG5AaW1wb3J0ICdiYXNlL2ZvbnRzJztcbkBpbXBvcnQgJ2Jhc2UvdmFyaWFibGVzJztcbkBpbXBvcnQgJ2Jhc2UvY29sb3JzJztcbkBpbXBvcnQgJ2Jhc2UvbWl4aW5zJztcbkBpbXBvcnQgJ2Jhc2UvdHlwb2dyYXBoeSc7XG5AaW1wb3J0ICdiYXNlL2xheW91dCc7XG5AaW1wb3J0ICdiYXNlL2ZsZXgnO1xuQGltcG9ydCAnYmFzZS9hbmltYXRpb25zJztcblxuLy8gbW9kdWxlc1xuQGltcG9ydCAnbW9kdWxlcy9hdWRpby1kZW1vJztcbkBpbXBvcnQgJ21vZHVsZXMvY3RhLWFycm93JztcbkBpbXBvcnQgJ21vZHVsZXMvYnV0dG9ucyc7XG5AaW1wb3J0ICdtb2R1bGVzL2Zvb3Rlcic7XG5AaW1wb3J0ICdtb2R1bGVzL2hlYWRlcic7XG5AaW1wb3J0ICdtb2R1bGVzL2Zvcm1zJztcbkBpbXBvcnQgJ21vZHVsZXMvbG9hZGluZyc7XG5AaW1wb3J0ICdtb2R1bGVzL3F1b3Rlcyc7XG5AaW1wb3J0ICdtb2R1bGVzL2J1dHRvbnMnO1xuQGltcG9ydCAnbW9kdWxlcy9ib3R0b20tZm9ybSc7XG5cbi8vIHBhZ2VzXG5AaW1wb3J0ICdwYWdlcy9ob21lJztcbkBpbXBvcnQgJ3BhZ2VzL3Byb2R1Y3QnO1xuQGltcG9ydCAncGFnZXMvdGVjaG5vbG9neSc7XG5AaW1wb3J0ICdwYWdlcy9hcHAnO1xuQGltcG9ydCAncGFnZXMvZmFxJztcbkBpbXBvcnQgJ3BhZ2VzL2hlYWx0aC1jYXJlLXByb2Zlc3Npb25hbHMnO1xuQGltcG9ydCAncGFnZXMvc2luZ2xlLWxvY2F0aW9uJztcbkBpbXBvcnQgJ3BhZ2VzL3Byb2R1Y3QnO1xuQGltcG9ydCAncGFnZXMvdGVhc2VyJztcbkBpbXBvcnQgJ3BhZ2VzL2NhcmVlcnMnO1xuQGltcG9ydCAncGFnZXMvcG9saWN5JztcbkBpbXBvcnQgJ3BhZ2VzL2dldC1lYXJseS1hY2Nlc3MnO1xuQGltcG9ydCAncGFnZXMvdGhhbmsteW91JztcbiIsIi8qISBGbGlja2l0eSB2Mi4yLjFcbmh0dHBzOi8vZmxpY2tpdHkubWV0YWZpenp5LmNvXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi5mbGlja2l0eS1lbmFibGVkIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uZmxpY2tpdHktZW5hYmxlZDpmb2N1cyB7IG91dGxpbmU6IG5vbmU7IH1cblxuLmZsaWNraXR5LXZpZXdwb3J0IHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBoZWlnaHQ6IDEwMCU7XG59XG5cbi5mbGlja2l0eS1zbGlkZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG59XG5cbi8qIGRyYWdnYWJsZSAqL1xuXG4uZmxpY2tpdHktZW5hYmxlZC5pcy1kcmFnZ2FibGUge1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuICAgICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xuICAgICAgLW1zLXVzZXItc2VsZWN0OiBub25lO1xuICAgICAgICAgIHVzZXItc2VsZWN0OiBub25lO1xufVxuXG4uZmxpY2tpdHktZW5hYmxlZC5pcy1kcmFnZ2FibGUgLmZsaWNraXR5LXZpZXdwb3J0IHtcbiAgY3Vyc29yOiBtb3ZlO1xuICBjdXJzb3I6IC13ZWJraXQtZ3JhYjtcbiAgY3Vyc29yOiBncmFiO1xufVxuXG4uZmxpY2tpdHktZW5hYmxlZC5pcy1kcmFnZ2FibGUgLmZsaWNraXR5LXZpZXdwb3J0LmlzLXBvaW50ZXItZG93biB7XG4gIGN1cnNvcjogLXdlYmtpdC1ncmFiYmluZztcbiAgY3Vyc29yOiBncmFiYmluZztcbn1cblxuLyogLS0tLSBmbGlja2l0eS1idXR0b24gLS0tLSAqL1xuXG4uZmxpY2tpdHktYnV0dG9uIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBiYWNrZ3JvdW5kOiBoc2xhKDAsIDAlLCAxMDAlLCAwLjc1KTtcbiAgYm9yZGVyOiBub25lO1xuICBjb2xvcjogIzMzMztcbn1cblxuLmZsaWNraXR5LWJ1dHRvbjpob3ZlciB7XG4gIGJhY2tncm91bmQ6IHdoaXRlO1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi5mbGlja2l0eS1idXR0b246Zm9jdXMge1xuICBvdXRsaW5lOiBub25lO1xuICBib3gtc2hhZG93OiAwIDAgMCA1cHggIzE5Rjtcbn1cblxuLmZsaWNraXR5LWJ1dHRvbjphY3RpdmUge1xuICBvcGFjaXR5OiAwLjY7XG59XG5cbi5mbGlja2l0eS1idXR0b246ZGlzYWJsZWQge1xuICBvcGFjaXR5OiAwLjM7XG4gIGN1cnNvcjogYXV0bztcbiAgLyogcHJldmVudCBkaXNhYmxlZCBidXR0b24gZnJvbSBjYXB0dXJpbmcgcG9pbnRlciB1cCBldmVudC4gIzcxNiAqL1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cblxuLmZsaWNraXR5LWJ1dHRvbi1pY29uIHtcbiAgZmlsbDogY3VycmVudENvbG9yO1xufVxuXG4vKiAtLS0tIHByZXZpb3VzL25leHQgYnV0dG9ucyAtLS0tICovXG5cbi5mbGlja2l0eS1wcmV2LW5leHQtYnV0dG9uIHtcbiAgdG9wOiA1MCU7XG4gIHdpZHRoOiA0NHB4O1xuICBoZWlnaHQ6IDQ0cHg7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgLyogdmVydGljYWxseSBjZW50ZXIgKi9cbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xufVxuXG4uZmxpY2tpdHktcHJldi1uZXh0LWJ1dHRvbi5wcmV2aW91cyB7IGxlZnQ6IDEwcHg7IH1cbi5mbGlja2l0eS1wcmV2LW5leHQtYnV0dG9uLm5leHQgeyByaWdodDogMTBweDsgfVxuLyogcmlnaHQgdG8gbGVmdCAqL1xuLmZsaWNraXR5LXJ0bCAuZmxpY2tpdHktcHJldi1uZXh0LWJ1dHRvbi5wcmV2aW91cyB7XG4gIGxlZnQ6IGF1dG87XG4gIHJpZ2h0OiAxMHB4O1xufVxuLmZsaWNraXR5LXJ0bCAuZmxpY2tpdHktcHJldi1uZXh0LWJ1dHRvbi5uZXh0IHtcbiAgcmlnaHQ6IGF1dG87XG4gIGxlZnQ6IDEwcHg7XG59XG5cbi5mbGlja2l0eS1wcmV2LW5leHQtYnV0dG9uIC5mbGlja2l0eS1idXR0b24taWNvbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMjAlO1xuICB0b3A6IDIwJTtcbiAgd2lkdGg6IDYwJTtcbiAgaGVpZ2h0OiA2MCU7XG59XG5cbi8qIC0tLS0gcGFnZSBkb3RzIC0tLS0gKi9cblxuLmZsaWNraXR5LXBhZ2UtZG90cyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGJvdHRvbTogLTI1cHg7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBsaW5lLWhlaWdodDogMTtcbn1cblxuLmZsaWNraXR5LXJ0bCAuZmxpY2tpdHktcGFnZS1kb3RzIHsgZGlyZWN0aW9uOiBydGw7IH1cblxuLmZsaWNraXR5LXBhZ2UtZG90cyAuZG90IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogMTBweDtcbiAgaGVpZ2h0OiAxMHB4O1xuICBtYXJnaW46IDAgOHB4O1xuICBiYWNrZ3JvdW5kOiAjMzMzO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIG9wYWNpdHk6IDAuMjU7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLmZsaWNraXR5LXBhZ2UtZG90cyAuZG90LmlzLXNlbGVjdGVkIHtcbiAgb3BhY2l0eTogMTtcbn1cbiIsIi8vIC0tLS1cbi8vIFJlc2V0XG4vLyAtLS0tXG4vLy0gTWl4aW46IFJlc2V0IGNzc1xuLy8vXG4vLy8gTWV5ZXIgcmVzZXQuIFVzZSB0aGlzIHdoZW4geW91IHdhbnQgdG8gbnVrZSBhbGwgc3R5bGVzLiBPdGhlcndpc2UgbWF5YmUgdXNlXG4vLy8gbm9ybWFsaXplIG1peGluLlxuLy8vIEBncm91cCByZXN0ZXRcbi8vLyBAZXhhbXBsZVxuLy8vICAgQGluY2x1ZGUgcmVzZXQtY3NzKCk7XG5AbWl4aW4gcmVzZXQtY3NzIHtcbiAgaHRtbCxcbiAgYm9keSxcbiAgZGl2LFxuICBzcGFuLFxuICBhcHBsZXQsXG4gIG9iamVjdCxcbiAgaWZyYW1lLFxuICBoMSxcbiAgaDIsXG4gIGgzLFxuICBoNCxcbiAgaDUsXG4gIGg2LFxuICBwLFxuICBibG9ja3F1b3RlLFxuICBwcmUsXG4gIGEsXG4gIGFiYnIsXG4gIGFjcm9ueW0sXG4gIGFkZHJlc3MsXG4gIGJpZyxcbiAgY2l0ZSxcbiAgY29kZSxcbiAgZGVsLFxuICBkZm4sXG4gIGVtLFxuICBpbWcsXG4gIGlucyxcbiAga2JkLFxuICBxLFxuICBzLFxuICBzYW1wLFxuICBzbWFsbCxcbiAgc3RyaWtlLFxuICBzdHJvbmcsXG4gIHN1YixcbiAgc3VwLFxuICB0dCxcbiAgdmFyLFxuICBiLFxuICB1LFxuICBpLFxuICBjZW50ZXIsXG4gIGRsLFxuICBkdCxcbiAgZGQsXG4gIG9sLFxuICB1bCxcbiAgbGksXG4gIGZpZWxkc2V0LFxuICBmb3JtLFxuICBsYWJlbCxcbiAgbGVnZW5kLFxuICB0YWJsZSxcbiAgY2FwdGlvbixcbiAgdGJvZHksXG4gIHRmb290LFxuICB0aGVhZCxcbiAgdHIsXG4gIHRoLFxuICB0ZCxcbiAgYXJ0aWNsZSxcbiAgYXNpZGUsXG4gIGNhbnZhcyxcbiAgZGV0YWlscyxcbiAgZW1iZWQsXG4gIGZpZ3VyZSxcbiAgZmlnY2FwdGlvbixcbiAgZm9vdGVyLFxuICBoZWFkZXIsXG4gIGhncm91cCxcbiAgbWVudSxcbiAgbmF2LFxuICBvdXRwdXQsXG4gIHJ1YnksXG4gIHNlY3Rpb24sXG4gIHN1bW1hcnksXG4gIHRpbWUsXG4gIG1hcmssXG4gIGF1ZGlvLFxuICB2aWRlbyB7XG4gICAgYm9yZGVyOiAwO1xuICAgIGZvbnQ6IGluaGVyaXQ7XG4gICAgZm9udC1zaXplOiAxMDAlO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbiAgfVxuXG4gIGFydGljbGUsXG4gIGFzaWRlLFxuICBkZXRhaWxzLFxuICBmaWdjYXB0aW9uLFxuICBmaWd1cmUsXG4gIGZvb3RlcixcbiAgaGVhZGVyLFxuICBoZ3JvdXAsXG4gIG1lbnUsXG4gIG5hdixcbiAgc2VjdGlvbiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cblxuICBib2R5IHtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgfVxuXG4gIG9sLFxuICB1bCB7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgfVxuXG4gIGJsb2NrcXVvdGUsXG4gIHEge1xuICAgIHF1b3Rlczogbm9uZTtcbiAgfVxuXG4gIGJsb2NrcXVvdGU6YmVmb3JlLFxuICBibG9ja3F1b3RlOmFmdGVyLFxuICBxOmJlZm9yZSxcbiAgcTphZnRlciB7XG4gICAgY29udGVudDogJyc7XG4gICAgY29udGVudDogbm9uZTtcbiAgfVxuXG4gIHRhYmxlIHtcbiAgICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xuICAgIGJvcmRlci1zcGFjaW5nOiAwO1xuICB9XG59XG4vLy0gTWl4aW46IE5vcm1hbGl6ZVxuLy8vXG4vLy8gTm9ybWFsaXplIGNzcy4gS2VlcHMgc29tZSBkZWZhdWx0cy4gQ2FsbCB0aGlzIG9uIHRoZSByb290IG9mIHlvdXIgcHJvamVjdC5cbi8vL1xuLy8vIEBncm91cCByZXNldFxuLy8vIEBleGFtcGxlXG4vLy8gICBAaW5jbHVkZSBub3JtYWxpemUoKTtcbkBtaXhpbiBub3JtYWxpemUge1xuICAvLyBub3JtYWxpemUuY3NzIHYzLjAuMyB8IE1JVCBMaWNlbnNlIHwgZ2l0aHViLmNvbS9uZWNvbGFzL25vcm1hbGl6ZS5jc3NcbiAgaHRtbCB7XG4gICAgZm9udC1mYW1pbHk6IHNhbnMtc2VyaWY7XG4gICAgLW1zLXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7XG4gICAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlO1xuICB9XG5cbiAgYm9keSB7XG4gICAgbWFyZ2luOiAwO1xuICB9XG5cbiAgYXJ0aWNsZSxcbiAgYXNpZGUsXG4gIGRldGFpbHMsXG4gIGZpZ2NhcHRpb24sXG4gIGZpZ3VyZSxcbiAgZm9vdGVyLFxuICBoZWFkZXIsXG4gIG1haW4sXG4gIG1lbnUsXG4gIG5hdixcbiAgc2VjdGlvbixcbiAgc3VtbWFyeSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cblxuICBhdWRpbyxcbiAgY2FudmFzLFxuICBwcm9ncmVzcyxcbiAgdmlkZW8ge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4gIH1cblxuICBhdWRpbzpub3QoW2NvbnRyb2xzXSkge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgaGVpZ2h0OiAwO1xuICB9XG5cbiAgW2hpZGRlbl0sXG4gIHRlbXBsYXRlIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgYSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIH1cblxuICBhOmFjdGl2ZSxcbiAgYTpob3ZlciB7XG4gICAgb3V0bGluZTogMDtcbiAgfVxuXG4gIGFiYnJbdGl0bGVdIHtcbiAgICBib3JkZXItYm90dG9tOiBub25lO1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lIGRvdHRlZDtcbiAgfVxuXG4gIGIsXG4gIHN0cm9uZyB7XG4gICAgZm9udC13ZWlnaHQ6IGluaGVyaXQ7XG4gIH1cblxuICBiLFxuICBzdHJvbmcge1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkZXI7XG4gIH1cblxuICBkZm4ge1xuICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgfVxuXG4gIGgxIHtcbiAgICBmb250LXNpemU6IDJlbTtcbiAgICBtYXJnaW46IDAuNjdlbSAwO1xuICB9XG5cbiAgbWFyayB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmMDtcbiAgICBjb2xvcjogIzAwMDtcbiAgfVxuXG4gIHNtYWxsIHtcbiAgICBmb250LXNpemU6IDgwJTtcbiAgfVxuXG4gIHN1YixcbiAgc3VwIHtcbiAgICBmb250LXNpemU6IDc1JTtcbiAgICBsaW5lLWhlaWdodDogMDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuICB9XG5cbiAgc3VwIHtcbiAgICB0b3A6IC0wLjVlbTtcbiAgfVxuXG4gIHN1YiB7XG4gICAgYm90dG9tOiAtMC4yNWVtO1xuICB9XG5cbiAgaW1nIHtcbiAgICBib3JkZXI6IDA7XG4gIH1cblxuICBzdmc6bm90KDpyb290KSB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgfVxuICAvLyBXZSBzdHJheSBhIGJpdCBoZXJlLlxuICBmaWd1cmUge1xuICAgIG1hcmdpbjogMDtcbiAgfVxuXG4gIGhyIHtcbiAgICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIH1cblxuICBwcmUge1xuICAgIG92ZXJmbG93OiBhdXRvO1xuICB9XG5cbiAgY29kZSxcbiAga2JkLFxuICBwcmUsXG4gIHNhbXAge1xuICAgIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTtcbiAgICBmb250LXNpemU6IDFlbTtcbiAgfVxuXG4gIGJ1dHRvbixcbiAgaW5wdXQsXG4gIG9wdGdyb3VwLFxuICBzZWxlY3QsXG4gIHRleHRhcmVhIHtcbiAgICBmb250OiBpbmhlcml0O1xuICAgIG1hcmdpbjogMDtcbiAgfVxuXG4gIGJ1dHRvbiB7XG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIH1cblxuICBidXR0b24sXG4gIHNlbGVjdCB7XG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIH1cblxuICBidXR0b24sXG4gIGh0bWwgaW5wdXRbdHlwZT1cImJ1dHRvblwiXSxcbiAgaW5wdXRbdHlwZT1cInJlc2V0XCJdLFxuICBpbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gIH1cblxuICBidXR0b25bZGlzYWJsZWRdLFxuICBodG1sIGlucHV0W2Rpc2FibGVkXSB7XG4gICAgY3Vyc29yOiBkZWZhdWx0O1xuICB9XG5cbiAgYnV0dG9uOjotbW96LWZvY3VzLWlubmVyLFxuICBpbnB1dDo6LW1vei1mb2N1cy1pbm5lciB7XG4gICAgYm9yZGVyOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cblxuICBidXR0b246LW1vei1mb2N1c3JpbmcsXG4gIGlucHV0Oi1tb3otZm9jdXNyaW5nIHtcbiAgICBvdXRsaW5lOiAxcHggZG90dGVkIEJ1dHRvblRleHQ7XG4gIH1cblxuICBpbnB1dCB7XG4gICAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbiAgfVxuXG4gIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSxcbiAgaW5wdXRbdHlwZT1cInJhZGlvXCJdIHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cblxuICBpbnB1dFt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxuICBpbnB1dFt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gIH1cblxuICBpbnB1dFt0eXBlPVwic2VhcmNoXCJdIHtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IHRleHRmaWVsZDtcbiAgfVxuXG4gIGlucHV0W3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWNhbmNlbC1idXR0b24sXG4gIGlucHV0W3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWRlY29yYXRpb24ge1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgfVxuXG4gIGZpZWxkc2V0IHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjYzBjMGMwO1xuICAgIG1hcmdpbjogMCAycHg7XG4gICAgcGFkZGluZzogMC4zNWVtIDAuNjI1ZW0gMC43NWVtO1xuICB9XG5cbiAgbGVnZW5kIHtcbiAgICBib3JkZXI6IDA7XG4gICAgcGFkZGluZzogMDtcbiAgfVxuXG4gIHRleHRhcmVhIHtcbiAgICBvdmVyZmxvdzogYXV0bztcbiAgfVxuXG4gIG9wdGdyb3VwIHtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgfVxufVxuXG5cbi8vLSBNaXhpbjogU2FuaXRpemVcbi8vL1xuLy8vIFNhbml0aXplIGNzcy4gQW5vdGhlciByZXNldC4gQ2FsbCB0aGlzIG9uIHRoZSByb290IG9mIHlvdXIgcHJvamVjdC5cbi8vL1xuLy8vIEBncm91cCByZXNldFxuLy8vIEBleGFtcGxlXG4vLy8gICBAaW5jbHVkZSBzYW5pdGl6ZSgpO1xuLy8vIEBsaW5rIGh0dHBzOi8vZ2l0aHViLmNvbS9qb25hdGhhbnRuZWFsL3Nhbml0aXplLmNzc1xuXG5AbWl4aW4gc2FuaXRpemUge1xuICAvKiEgc2FuaXRpemUuY3NzIHY0LjEuMCB8IENDMCBMaWNlbnNlIHwgZ2l0aHViLmNvbS9qb25hdGhhbnRuZWFsL3Nhbml0aXplLmNzcyAqL2FydGljbGUsYXNpZGUsZGV0YWlscyxmaWdjYXB0aW9uLGZpZ3VyZSxmb290ZXIsaGVhZGVyLG1haW4sbWVudSxuYXYsc2VjdGlvbixzdW1tYXJ5e2Rpc3BsYXk6YmxvY2t9YXVkaW8sY2FudmFzLHByb2dyZXNzLHZpZGVve2Rpc3BsYXk6aW5saW5lLWJsb2NrfWF1ZGlvOm5vdChbY29udHJvbHNdKXtkaXNwbGF5Om5vbmU7aGVpZ2h0OjB9dGVtcGxhdGUsW2hpZGRlbl17ZGlzcGxheTpub25lfSosOjpiZWZvcmUsOjphZnRlcntiYWNrZ3JvdW5kLXJlcGVhdDpuby1yZXBlYXQ7Ym94LXNpemluZzppbmhlcml0fTo6YmVmb3JlLDo6YWZ0ZXJ7dGV4dC1kZWNvcmF0aW9uOmluaGVyaXQ7dmVydGljYWwtYWxpZ246aW5oZXJpdH1odG1se2JveC1zaXppbmc6Ym9yZGVyLWJveDtjdXJzb3I6ZGVmYXVsdDtmb250LWZhbWlseTpzYW5zLXNlcmlmO2xpbmUtaGVpZ2h0OjEuNTstbXMtdGV4dC1zaXplLWFkanVzdDoxMDAlOy13ZWJraXQtdGV4dC1zaXplLWFkanVzdDoxMDAlfWJvZHl7bWFyZ2luOjB9aDF7Zm9udC1zaXplOjJlbTttYXJnaW46LjY3ZW0gMH1jb2RlLGtiZCxwcmUsc2FtcHtmb250LWZhbWlseTptb25vc3BhY2UsbW9ub3NwYWNlO2ZvbnQtc2l6ZToxZW19aHJ7aGVpZ2h0OjA7b3ZlcmZsb3c6dmlzaWJsZX1uYXYgb2wsbmF2IHVse2xpc3Qtc3R5bGU6bm9uZX1hYmJyW3RpdGxlXXtib3JkZXItYm90dG9tOjFweCBkb3R0ZWQ7dGV4dC1kZWNvcmF0aW9uOm5vbmV9YixzdHJvbmd7Zm9udC13ZWlnaHQ6aW5oZXJpdH1iLHN0cm9uZ3tmb250LXdlaWdodDpib2xkZXJ9ZGZue2ZvbnQtc3R5bGU6aXRhbGljfW1hcmt7YmFja2dyb3VuZC1jb2xvcjojZmYwO2NvbG9yOiMwMDB9cHJvZ3Jlc3N7dmVydGljYWwtYWxpZ246YmFzZWxpbmV9c21hbGx7Zm9udC1zaXplOjgzLjMzMzMlfXN1YixzdXB7Zm9udC1zaXplOjgzLjMzMzMlO2xpbmUtaGVpZ2h0OjA7cG9zaXRpb246cmVsYXRpdmU7dmVydGljYWwtYWxpZ246YmFzZWxpbmV9c3Vie2JvdHRvbTotLjI1ZW19c3Vwe3RvcDotLjVlbX06Oi1tb3otc2VsZWN0aW9ue2JhY2tncm91bmQtY29sb3I6I2IzZDRmYztjb2xvcjojMDAwO3RleHQtc2hhZG93Om5vbmV9OjpzZWxlY3Rpb257YmFja2dyb3VuZC1jb2xvcjojYjNkNGZjO2NvbG9yOiMwMDA7dGV4dC1zaGFkb3c6bm9uZX1hdWRpbyxjYW52YXMsaWZyYW1lLGltZyxzdmcsdmlkZW97dmVydGljYWwtYWxpZ246bWlkZGxlfWltZ3tib3JkZXItc3R5bGU6bm9uZX1zdmd7ZmlsbDpjdXJyZW50Q29sb3J9c3ZnOm5vdCg6cm9vdCl7b3ZlcmZsb3c6aGlkZGVufWF7YmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDstd2Via2l0LXRleHQtZGVjb3JhdGlvbi1za2lwOm9iamVjdHN9YTpob3ZlcntvdXRsaW5lLXdpZHRoOjB9dGFibGV7Ym9yZGVyLWNvbGxhcHNlOmNvbGxhcHNlO2JvcmRlci1zcGFjaW5nOjB9YnV0dG9uLGlucHV0LHNlbGVjdCx0ZXh0YXJlYXtiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50O2JvcmRlci1zdHlsZTpub25lO2NvbG9yOmluaGVyaXQ7Zm9udC1zaXplOjFlbTttYXJnaW46MH1idXR0b24saW5wdXR7b3ZlcmZsb3c6dmlzaWJsZX1idXR0b24sc2VsZWN0e3RleHQtdHJhbnNmb3JtOm5vbmV9YnV0dG9uLGh0bWwgW3R5cGU9XCJidXR0b25cIl0sW3R5cGU9XCJyZXNldFwiXSxbdHlwZT1cInN1Ym1pdFwiXXstd2Via2l0LWFwcGVhcmFuY2U6YnV0dG9ufTo6LW1vei1mb2N1cy1pbm5lcntib3JkZXItc3R5bGU6bm9uZTtwYWRkaW5nOjB9Oi1tb3otZm9jdXNyaW5ne291dGxpbmU6MXB4IGRvdHRlZCBCdXR0b25UZXh0fWZpZWxkc2V0e2JvcmRlcjoxcHggc29saWQgI2MwYzBjMDttYXJnaW46MCAycHg7cGFkZGluZzouMzVlbSAuNjI1ZW0gLjc1ZW19bGVnZW5ke2Rpc3BsYXk6dGFibGU7bWF4LXdpZHRoOjEwMCU7cGFkZGluZzowO3doaXRlLXNwYWNlOm5vcm1hbH10ZXh0YXJlYXtvdmVyZmxvdzphdXRvO3Jlc2l6ZTp2ZXJ0aWNhbH1bdHlwZT1cImNoZWNrYm94XCJdLFt0eXBlPVwicmFkaW9cIl17cGFkZGluZzowfTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbiw6Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b257aGVpZ2h0OmF1dG99W3R5cGU9XCJzZWFyY2hcIl17LXdlYmtpdC1hcHBlYXJhbmNlOnRleHRmaWVsZDtvdXRsaW5lLW9mZnNldDotMnB4fTo6LXdlYmtpdC1zZWFyY2gtY2FuY2VsLWJ1dHRvbiw6Oi13ZWJraXQtc2VhcmNoLWRlY29yYXRpb257LXdlYmtpdC1hcHBlYXJhbmNlOm5vbmV9Ojotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVye2NvbG9yOmluaGVyaXQ7b3BhY2l0eTouNTR9Ojotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbnstd2Via2l0LWFwcGVhcmFuY2U6YnV0dG9uO2ZvbnQ6aW5oZXJpdH1bYXJpYS1idXN5PVwidHJ1ZVwiXXtjdXJzb3I6cHJvZ3Jlc3N9W2FyaWEtY29udHJvbHNde2N1cnNvcjpwb2ludGVyfVthcmlhLWRpc2FibGVkXXtjdXJzb3I6ZGVmYXVsdH1hLGFyZWEsYnV0dG9uLGlucHV0LGxhYmVsLHNlbGVjdCx0ZXh0YXJlYSxbdGFiaW5kZXhdey1tcy10b3VjaC1hY3Rpb246bWFuaXB1bGF0aW9uO3RvdWNoLWFjdGlvbjptYW5pcHVsYXRpb259W2hpZGRlbl1bYXJpYS1oaWRkZW49XCJmYWxzZVwiXXtjbGlwOnJlY3QoMCwwLDAsMCk7ZGlzcGxheTppbmhlcml0O3Bvc2l0aW9uOmFic29sdXRlfVtoaWRkZW5dW2FyaWEtaGlkZGVuPVwiZmFsc2VcIl06Zm9jdXN7Y2xpcDphdXRvfVxufVxuXG4vLyBBZGRpdGlvbmFsIGVzZXRzIHZpYSBzY3V0OlxuLy8gaHR0cHM6Ly9naXRodWIuY29tL2RhdmlkdGhlY2xhcmsvc2N1dC9cbi8vIENsaWNrYWJsZSBmb3JtIGVsZW1lbnRzIHNob3VsZCBoYXZlIGEgcG9pbnRlci5cbkBtaXhpbiByZXNldC1wb2ludGVyIHtcbiAgYSxcbiAgbGFiZWwsXG4gIHNlbGVjdCxcbiAgb3B0aW9uLFxuICBidXR0b24ge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgfVxufVxuLy8gQm9yZGVyIGJveCBpcyBqdXN0IGJldHRlci5cbkBtaXhpbiByZXNldC1ib3JkZXItYm94IHtcbiAgaHRtbCB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgfVxuXG4gICosXG4gICo6YmVmb3JlLFxuICAqOmFmdGVyIHtcbiAgICBib3gtc2l6aW5nOiBpbmhlcml0O1xuICB9XG59XG4vLyBSZXNldCB0aGUgZm9ybXNcbkBtaXhpbiByZXNldC1mb3JtIHtcbiAgZmllbGRzZXQge1xuICAgIGJvcmRlcjogMDtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgfVxuXG4gIHRleHRhcmVhIHtcbiAgICByZXNpemU6IHZlcnRpY2FsO1xuICB9XG59XG4vLyBSZXNldCBkZWZhdWx0IGJ1dHRvbiBzdHlsZXMsIHdoaWNoIGFyZSBuZXZlciB1c2VkLlxuQG1peGluIHJlc2V0LWJ1dHRvbiB7XG4gIGJ1dHRvbixcbiAgaW5wdXRbdHlwZT1cImJ1dHRvblwiXSxcbiAgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSxcbiAgaW5wdXRbdHlwZT1cInJlc2V0XCJdIHtcbiAgICBhcHBlYXJhbmNlOiBub25lO1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlcjogMDtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgICBmb250OiBpbmhlcml0O1xuICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIHVzZXItc2VsZWN0OiBub25lO1xuICAgIHdpZHRoOiBhdXRvO1xuXG4gICAgJjo6LW1vei1mb2N1cy1pbm5lciB7XG4gICAgICBib3JkZXI6IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgIH1cbiAgfVxufVxuLy8gU29tZSBwYXJhZ3JhcGggbWFyZ2lucyBqdXN0IGdldCBpbiB0aGUgd2F5LlxuQG1peGluIHJlc2V0LXBhcmFncmFwaCB7XG4gIHA6Zmlyc3Qtb2YtdHlwZSB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgfVxuXG4gIHA6bGFzdC1vZi10eXBlIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG4vLyBZb3Ugd2FudCB0aGVzZSBlbGVtZW50cyBmbHVpZCwgcHJvYmFibHkuXG5AbWl4aW4gcmVzZXQtbWVkaWEge1xuICBpbWcsXG4gIHZpZGVvIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG59XG4vLyBSZW1vdmUgZGVmYXVsdCBtYXJnaW5zLlxuQG1peGluIHJlc2V0LWZpZ3VyZSB7XG4gIGZpZ3VyZSB7XG4gICAgbWFyZ2luOiAwO1xuICB9XG59XG5cbkBtaXhpbiByZXNldC1oZWFkZXJzIHtcbiAgaDEsIGgyLCBoMywgaDQsIGg1LCBoNiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICBtYXJnaW46IDFyZW0gMDtcblxuICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICB9XG5cbiAgICBhIHsgY29sb3I6IGluaGVyaXQ7ICB9XG4gIH1cbn1cbi8vIENhbGwgdGhlbSBhbGxcbkBtaXhpbiByZXNldC1lbGVtZW50cygpIHtcbiAgQGluY2x1ZGUgcmVzZXQtYm9yZGVyLWJveDtcbiAgQGluY2x1ZGUgcmVzZXQtYnV0dG9uO1xuICBAaW5jbHVkZSByZXNldC1maWd1cmU7XG4gIEBpbmNsdWRlIHJlc2V0LWZvcm07XG4gIEBpbmNsdWRlIHJlc2V0LW1lZGlhO1xuICBAaW5jbHVkZSByZXNldC1wYXJhZ3JhcGg7XG4gIEBpbmNsdWRlIHJlc2V0LXBvaW50ZXI7XG4gIEBpbmNsdWRlIHJlc2V0LWhlYWRlcnM7XG59XG4iLCIvLyAtLS0tLS1cbi8vIEFuaW1hdGlvbnNcbi8vIC0tLS0tLVxuXG4vLy8gQ1NTIGN1YmljLWJlemllciB0aW1pbmcgZnVuY3Rpb25zIHBvcnRlZCBmcm9tIEJvdXJib24gdmlhIGpxdWVyeS5lYXNpZSAoZ2l0aHViLmNvbS9qYXVraWEvZWFzaWUpXG4vLy9cbi8vLyBAZ3JvdXAgYW5pbWF0aW9uXG4vLy8gQHR5cGUgY3ViaWMtYmV6aWVyXG4vLy8gQGxpbmsgaHR0cDovL2pxdWVyeXVpLmNvbS9yZXNvdXJjZXMvZGVtb3MvZWZmZWN0L2Vhc2luZy5odG1sXG5cbiRlYXNlLWluLXF1YWQ6IGN1YmljLWJlemllcigwLjU1MCwgMC4wODUsIDAuNjgwLCAwLjUzMCk7XG4kZWFzZS1pbi1jdWJpYzogY3ViaWMtYmV6aWVyKDAuNTUwLCAwLjA1NSwgMC42NzUsIDAuMTkwKTtcbiRlYXNlLWluLXF1YXJ0OiBjdWJpYy1iZXppZXIoMC44OTUsIDAuMDMwLCAwLjY4NSwgMC4yMjApO1xuJGVhc2UtaW4tcXVpbnQ6IGN1YmljLWJlemllcigwLjc1NSwgMC4wNTAsIDAuODU1LCAwLjA2MCk7XG4kZWFzZS1pbi1zaW5lOiBjdWJpYy1iZXppZXIoMC40NzAsIDAsIDAuNzQ1LCAwLjcxNSk7XG4kZWFzZS1pbi1leHBvOiBjdWJpYy1iZXppZXIoMC45NTAsIDAuMDUwLCAwLjc5NSwgMC4wMzUpO1xuJGVhc2UtaW4tY2lyYzogY3ViaWMtYmV6aWVyKDAuNjAwLCAwLjA0MCwgMC45ODAsIDAuMzM1KTtcbiRlYXNlLWluLWJhY2s6IGN1YmljLWJlemllcigwLjYwMCwgLTAuMjgwLCAwLjczNSwgMC4wNDUpO1xuJGVhc2UtaW4tc3dpZnQ6IGN1YmljLWJlemllcigwLjkwMCwgMCwgMC40NTAsIDEpO1xuXG4kZWFzZS1vdXQtcXVhZDogY3ViaWMtYmV6aWVyKDAuMjUwLCAwLjQ2MCwgMC40NTAsIDAuOTQwKTtcbiRlYXNlLW91dC1jdWJpYzogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxMCwgMC4zNTUsIDEpO1xuJGVhc2Utb3V0LXF1YXJ0OiBjdWJpYy1iZXppZXIoMC4xNjUsIDAuODQwLCAwLjQ0MCwgMSk7XG4kZWFzZS1vdXQtcXVpbnQ6IGN1YmljLWJlemllcigwLjIzMCwgMSwgMC4zMjAsIDEpO1xuJGVhc2Utb3V0LXNpbmU6IGN1YmljLWJlemllcigwLjM5MCwgMC41NzUsIDAuNTY1LCAxKTtcbiRlYXNlLW91dC1leHBvOiBjdWJpYy1iZXppZXIoMC4xOTAsIDEsIDAuMjIwLCAxKTtcbiRlYXNlLW91dC1jaXJjOiBjdWJpYy1iZXppZXIoMC4wNzUsIDAuODIwLCAwLjE2NSwgMSk7XG4kZWFzZS1vdXQtYmFjazogY3ViaWMtYmV6aWVyKDAuMTc1LCAwLjg4NSwgMC4zMjAsIDEuMjc1KTtcbiRlYXNlLW91dC1zd2lmdDogY3ViaWMtYmV6aWVyKDAuNTUwLCAwLCAwLjEwMCwgMSk7XG5cbiRlYXNlLWluLW91dC1xdWFkOiBjdWJpYy1iZXppZXIoMC40NTUsIDAuMDMwLCAwLjUxNSwgMC45NTUpO1xuJGVhc2UtaW4tb3V0LWN1YmljOiBjdWJpYy1iZXppZXIoMC42NDUsIDAuMDQ1LCAwLjM1NSwgMSk7XG4kZWFzZS1pbi1vdXQtcXVhcnQ6IGN1YmljLWJlemllcigwLjc3MCwgMCwgMC4xNzUsIDEpO1xuJGVhc2UtaW4tb3V0LXF1aW50OiBjdWJpYy1iZXppZXIoMC44NjAsIDAsIDAuMDcwLCAxKTtcbiRlYXNlLWluLW91dC1zaW5lOiBjdWJpYy1iZXppZXIoMC40NDUsIDAuMDUwLCAwLjU1MCwgMC45NTApO1xuJGVhc2UtaW4tb3V0LWV4cG86IGN1YmljLWJlemllcigxLCAwLCAwLCAxKTtcbiRlYXNlLWluLW91dC1jaXJjOiBjdWJpYy1iZXppZXIoMC43ODUsIDAuMTM1LCAwLjE1MCwgMC44NjApO1xuJGVhc2UtaW4tb3V0LWJhY2s6IGN1YmljLWJlemllcigwLjY4MCwgLTAuNTUwLCAwLjI2NSwgMS41NTApO1xuJGVhc2UtaW4tb3V0LXN3aWZ0OiBjdWJpYy1iZXppZXIoMC45MDAsIDAsIDAuMTAwLCAxKTtcblxuXG4vLy0gTWl4aW46IEFuaW1hdGVkXG4vLy9cbi8vLyBTZXRzIHRoZSBtYWluIGFuaW1hdGlvbiBwcm9wZXJ0aWVzLiBPcHRpb25hbGx5LCB3ZSBoYXZlIGEgdmVyeSBiYXNpYyBzZXQgb2YgY3VzdG9tIGFuaW10aW9ucyB0aGF0IGNhbiBiZSBwYXNzZWQuIE5vdGUgeW91IG11c3QgY2FsbCBpbml0aWFsaXplLWFuaW1hdGlvbiBtaXhpbiBvbiByb290IG9mIHlvdXIgZG9jdW1lbnQgdG8gZW5hYmxlIHRoZSBrZXlmcmFtZXM7XG4vLy9cbi8vLyBAcGFyYW0ge3ZhcmlhYmxlfSAkYW5pbWF0aW9uLW5hbWUgW251bGxdIC0gIEN1cnJlbnRseSBhdmFpbGFibGUgYW5pbWF0aW9uIG5hbWVzOiAnZmFkZS1pbicsICdmYWRlLWluLXVwJywgJ2ZhZGUtaW4tZG93bicsICdvdmVyLXNjYWxlJ1xuLy8vIEBwYXJhbSB7dmFyaWFibGV9ICRhbmltYXRpb24tZHVyYXRpb24gWy42NXNdIC0gIEhvdyBsb25nIGFuaW1hdGlvbiB0YWtlc1xuLy8vIEBwYXJhbSB7dmFyaWFibGV9ICRhbmltYXRpb24tZWFzaW5nIFskZWFzZS1vdXQtcXVhZF0gLSAgQW5pbWF0aW9uIGVhc2luZyB0eXBlXG4vLy8gQGdyb3VwIGFuaW1hdGlvblxuLy8vIEBsaW5rIGh0dHA6Ly9jb2RlcGVuLmlvL2Rib3gvcGVuL1pib1ZPZ1xuXG5AbWl4aW4gYW5pbWF0ZWQoJGFuaW1hdGlvbi1uYW1lOiBudWxsLCAkYW5pbWF0aW9uLWR1cmF0aW9uOiAuNjVzLCAkYW5pbWF0aW9uLWRlbGF5OiBudWxsLCAkYW5pbWF0aW9uLWVhc2luZzogJGVhc2Utb3V0LXF1YWQpIHtcbiAgYW5pbWF0aW9uLWR1cmF0aW9uOiAkYW5pbWF0aW9uLWR1cmF0aW9uO1xuICBhbmltYXRpb24tZmlsbC1tb2RlOiBib3RoO1xuICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiAxO1xuICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiAkYW5pbWF0aW9uLWVhc2luZztcblxuICBAaWYgKCRhbmltYXRpb24tbmFtZSkge1xuICAgIGFuaW1hdGlvbi1uYW1lOiAkYW5pbWF0aW9uLW5hbWU7XG4gIH1cbiAgQGlmICgkYW5pbWF0aW9uLWRlbGF5KSB7XG4gICAgYW5pbWF0aW9uLWRlbGF5OiAkYW5pbWF0aW9uLWRlbGF5O1xuICB9XG5cbn1cblxuLy8tIEFkZGl0aXZlIE1peGluOiBJbml0aWFsaXplIGFuaW1hdGlvblxuLy8vXG4vLy8gUmVuZGVyIHRoZSBrZXlmcmFtZXMgbmVlZGVkIGZvciBhbmltYXRpb24gbWl4aW4uIFJlcXVpcmVkIHRvIHBhc3MgYW5pbWF0aW9uLW5hbWVzIHRvIGBhbmltYXRlZGAgbWl4aW4uXG4vLy9cbi8vLyBAZ3JvdXAgYW5pbWF0aW9uXG4vLy8gQGV4YW1wbGVcbi8vLyAgIEBpbmNsdWRlIGluaXRpYWxpemUtYW5pbWF0aW9uKCk7XG4vLy8gQGxpbmsgaHR0cDovL2NvZGVwZW4uaW8vZGJveC9wZW4vWmJvVk9nXG5cbkBtaXhpbiBpbml0aWFsaXplLWFuaW1hdGlvbigpIHtcbiAgQGtleWZyYW1lcyBmYWRlLWluLXVwIHtcbiAgICAwJSB7IG9wYWNpdHk6IDA7IHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTUlLCAwKTsgfVxuICAgIDEwMCUgeyBvcGFjaXR5OiAxOyB0cmFuc2Zvcm06IG5vbmU7IH1cbiAgfVxuXG4gIEBrZXlmcmFtZXMgZmFkZS1pbi1kb3duIHtcbiAgICAwJSB7IG9wYWNpdHk6IDA7IHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTE1JSwgMCk7IH1cbiAgICAxMDAlIHsgb3BhY2l0eTogMTsgdHJhbnNmb3JtOiBub25lOyB9XG4gIH1cblxuICBAa2V5ZnJhbWVzIG92ZXItc2NhbGUge1xuICAgIDAlIHsgb3BhY2l0eTogMDsgdHJhbnNmb3JtOiBzY2FsZSgwKTsgIH1cbiAgICA3MCUgeyB0cmFuc2Zvcm06IHNjYWxlKDEuMSk7IH1cbiAgICAxMDAlIHsgb3BhY2l0eTogMTsgdHJhbnNmb3JtOiBzY2FsZSgxKTsgIH1cbiAgfVxuXG4gIEBrZXlmcmFtZXMgZmFkZS1pbiB7XG4gICAgMCUgeyBvcGFjaXR5OiAwOyB9XG4gICAgMTAwJSB7IG9wYWNpdHk6IDE7fVxuICB9XG59XG4iLCJAZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IFwiU3Vpc3NlIEludCdsXCI7XG4gIHNyYzogdXJsKCdmb250cy9TdWlzc2VJbnRsLUxpZ2h0LndvZmYyJykgZm9ybWF0KCd3b2ZmMicpO1xuICBzcmM6IHVybCgnZm9udHMvU3Vpc3NlSW50bC1MaWdodC53b2ZmJykgZm9ybWF0KCd3b2ZmJyk7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiBcIlN1aXNzZSBJbnQnbFwiO1xuICBzcmM6IHVybCgnZm9udHMvU3Vpc3NlSW50bC1SZWd1bGFyLndvZmYyJykgZm9ybWF0KCd3b2ZmMicpO1xuICBzcmM6IHVybCgnZm9udHMvU3Vpc3NlSW50bC1SZWd1bGFyLndvZmYnKSBmb3JtYXQoJ3dvZmYnKTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xufVxuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IFwiU3Vpc3NlIEludCdsXCI7XG4gIHNyYzogdXJsKCdmb250cy9TdWlzc2VJbnRsLU1lZGl1bS53b2ZmMicpIGZvcm1hdCgnd29mZjInKTtcbiAgc3JjOiB1cmwoJ2ZvbnRzL1N1aXNzZUludGwtTWVkaXVtLndvZmYnKSBmb3JtYXQoJ3dvZmYnKTtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xufVxuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IFwiU3Vpc3NlIEludCdsIEJvb2tcIjtcbiAgc3JjOiB1cmwoJ2ZvbnRzL1N1aXNzZUludGwtQm9vay53b2ZmMicpIGZvcm1hdCgnd29mZjInKTtcbiAgc3JjOiB1cmwoJ2ZvbnRzL1N1aXNzZUludGwtQm9vay53b2ZmJykgZm9ybWF0KCd3b2ZmJyk7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cbiIsIi5jb2xvciB7XG4gICYtd2hpdGUgeyBjb2xvcjogJHdoaXRlOyB9XG4gICYtb2ZmLXdoaXRlIHsgY29sb3I6ICRvZmYtd2hpdGU7IH1cbiAgJi1ibGFjayB7IGNvbG9yOiAkYmxhY2s7IH1cbiAgJi1ncmF5IHsgY29sb3I6ICRncmF5OyB9XG4gICYtZ3JheS1saWdodCB7IGNvbG9yOiAkZ3JheS1saWdodDsgfVxuICAmLWdyYXktbGlnaHRlciB7IGNvbG9yOiAkZ3JheS1saWdodGVyOyB9XG4gICYtcmVkIHsgY29sb3I6ICRyZWQ7IH1cbiAgJi1ibHVlLWxpZ2h0IHsgY29sb3I6ICRibHVlLWxpZ2h0OyB9XG4gICYtYmx1ZS1ncmF5IHsgY29sb3I6ICRibHVlLWdyYXk7IH1cbiAgJi1uYXZ5IHsgY29sb3I6ICRuYXZ5OyB9XG59XG5cbi5iZyB7XG4gICYtd2hpdGUgeyBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7IH1cbiAgJi1vZmYtd2hpdGUgeyBiYWNrZ3JvdW5kLWNvbG9yOiAkb2ZmLXdoaXRlOyB9XG4gICYtYmxhY2sgeyBiYWNrZ3JvdW5kLWNvbG9yOiAkYmxhY2s7IH1cbiAgJi1ncmF5IHsgYmFja2dyb3VuZC1jb2xvcjogJGdyYXk7IH1cbiAgJi1ncmF5LWxpZ2h0IHsgYmFja2dyb3VuZC1jb2xvcjogJGdyYXktbGlnaHQ7IH1cbiAgJi1ncmF5LWxpZ2h0ZXIgeyBiYWNrZ3JvdW5kLWNvbG9yOiAkZ3JheS1saWdodGVyOyB9XG4gICYtcmVkIHsgYmFja2dyb3VuZC1jb2xvcjogJHJlZDsgfVxuICAmLWJsdWUtbGlnaHQgeyBiYWNrZ3JvdW5kLWNvbG9yOiAkYmx1ZS1saWdodDsgfVxuICAmLWJsdWUtZ3JheSB7IGJhY2tncm91bmQtY29sb3I6ICRibHVlLWdyYXk7IH1cbiAgJi1uYXZ5IHsgYmFja2dyb3VuZC1jb2xvcjogJG5hdnk7IH1cbn1cbiIsIi8vIEdlbmVyYWwgU2V0dGluZ3NcbiRzaXRlLWJhc2lzOiAxMjgwO1xuJG1vYmlsZS1ndXR0ZXI6IDUlO1xuXG4kZGVmYXVsdC1pbnNldDogMTEuN3JlbTtcblxuLy8gVHlwb2dyYXBoeVxuJGZvbnQ6IFwiU3Vpc3NlIEludCdsXCI7XG4kZm9udC1ib29rOiBcIlN1aXNzZSBJbnQnbCBCb29rXCI7XG5cbiRiYXNlLWZvbnQtc2l6ZTogMTZweDtcblxuJGxpZ2h0OiAzMDA7XG4kbWVkaXVtOiA1MDA7XG5cbiR0aWdodC1zcGFjaW5nOiAtMC4wNDVlbTtcbiRzbnVnLXNwYWNpbmc6IC0wLjAyZW07XG4kbW9yZS1zcGFjaW5nOiAwLjFlbTtcblxuLy8gQ29sb3JzXG4kd2hpdGU6ICNmZmY7XG4kb2ZmLXdoaXRlOiAjRDRENEQ0O1xuJG9mZi13aGl0ZTI6ICNGQUZDRkQ7XG4kYmxhY2s6ICMwMDA7XG4kZGFyay1uYXZ5OiAjMDExMTFlO1xuJGdyYXk6ICM3NjhDOUM7XG4kZ3JheS1saWdodDogIzgwOUNCMjtcbiRncmF5LWxpZ2h0ZXI6ICM5NEIxQzc7XG4kcmVkOiAjRjk1NTNBO1xuJGJsdWUtbGlnaHRlcjogcmdiYSgyMzQsIDI0NSwgMjUwLCAwLjUpO1xuJGJsdWUtbGlnaHQ6ICNEM0UzRUE7XG4kYmx1ZS1ncmF5OiAjOTRCMUM3O1xuJG5hdnk6ICMxNzI4MzU7XG5cbiR0ZXh0LWRhcms6ICRuYXZ5O1xuJHRleHQtd2hpdGU6IHJnYmEoJHdoaXRlLCAwLjgpO1xuJHRleHQtZ3JheTogJGdyYXk7XG4kdGV4dC1ncmF5LWxpZ2h0OiAkZ3JheS1saWdodDtcbiR0ZXh0LWdyYXktbGlnaHRlcjogJGdyYXktbGlnaHRlcjtcbiR0ZXh0LWJvZHk6ICM0QTY0Nzg7XG5cbiRib3JkZXItYmx1ZTogJGJsdWUtbGlnaHQ7XG4kYm9yZGVyLWJsdWUtYWxwaGE6IHJnYmEoJGJsdWUtbGlnaHQsIDAuMik7XG4kYm9yZGVyLXJlZDogI0VBNEYzNjtcbiRib3JkZXItbGlnaHQ6ICNFRUVFRUU7XG5cbi8vIEJyZWFrcG9pbnRzIGFuZCByZXNpemUgc2V0dGluZ3NcbiRtb2JpbGU6IDMyMHB4O1xuJG1vYmlsZS1sOiA2NDBweDtcbiR0YWJsZXQ6IDc2OHB4O1xuJHRhYmxldC1tOiA5NjBweDtcbiR0YWJsZXQtbDogMTAyNHB4O1xuJGRlc2t0b3A6IDEyODBweDtcbiRtYXgtc2l0ZS13aWR0aDogMTgwMHB4O1xuXG4kY29udGFpbmVyLXNtYWxsOiAxMDcwcHg7XG4kZ3JpZC1jb2xzOiA2MDtcbiRncmlkLXdpZHRoOiAkbWF4LXNpdGUtd2lkdGg7XG5cbiR3aWRlc2NyZWVuLWFkanVzdDogLjc7XG5cblxuJGJyZWFrcG9pbnRzOiAoXG4gICdtb2JpbGUnOiAkbW9iaWxlLFxuICAnbW9iaWxlLWwnOiAkbW9iaWxlLWwsXG4gICd0YWJsZXQnOiAkdGFibGV0LFxuICAndGFibGV0LW0nOiAkdGFibGV0LW0sXG4gICd0YWJsZXQtbCc6ICR0YWJsZXQtbCxcbiAgJ2Rlc2t0b3AnOiAkZGVza3RvcCxcbiAgJ21heC1zaXRlLXdpZHRoJzogJG1heC1zaXRlLXdpZHRoXG4pO1xuXG4vLyBBbmltYXRpb25zXG4kZWFzaW5nOiBjdWJpYy1iZXppZXIoMC4yMywgMSwgMC4zMiwgMSk7XG4iLCIvLyBHZW5lcmFsIHN0eWxlc1xuYm9keSwgcCwgaDEsIGgyLCBoMywgaDQsIGg1LCBoNixcbnNtYWxsLCBlbSwgc3Ryb25nLCBpbnB1dCwgYnV0dG9uIHtcbiAgZm9udC1mYW1pbHk6ICRmb250LWJvb2s7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eTtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG59XG5cbnAge1xuICBjb2xvcjogJHRleHQtZ3JheTtcbiAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgZm9udC1zaXplOiAxOHB4O1xuICBmb250LWZhbWlseTogJGZvbnQ7XG5cbiAgQGluY2x1ZGUgbWVkaWEoJzw9MTEwMHB4Jykge1xuICAgIGZvbnQtc2l6ZTogMThweDtcbiAgfVxufVxuXG5zdHJvbmcge1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cblxuZW0ge1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG59XG5cbmEge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbm5hdiB1bCB7XG4gIEBpbmNsdWRlIGlubGluZS1saXN0KCk7XG59XG5cbmJsb2NrcXVvdGUge1xuICBtYXJnaW46IDA7XG59XG5cbi8vIEhlYWRlcnNcbmgxLCBoMiwgaDMsIGg0LCBoNSwgaDYge1xuICBkaXNwbGF5OiBibG9jaztcbiAgY29sb3I6ICR0ZXh0LWRhcms7XG4gIGxpbmUtaGVpZ2h0OiAxLjA3ZW07XG4gIGZvbnQtZmFtaWx5OiAkZm9udDtcblxuICAmOmZpcnN0LWNoaWxkIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICB9XG5cbiAgYSB7XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gIH1cbn1cblxuLy8gUmVzcG9uc2l2ZSB0eXBlIHNldHRpbmdzXG5oMSwgLmgxIHsgZm9udC1zaXplOiA0LjhyZW07IH1cbmgyLCAuaDIgeyBmb250LXNpemU6IDRyZW07IH1cbmgzLCAuaDMgeyBmb250LXNpemU6IDMuNHJlbTsgfVxuaDQsIC5oNCB7IGZvbnQtc2l6ZTogMy4ycmVtOyB9XG4vLyBoNSwgLmg1IHsgZm9udC1zaXplOjsgfVxuaDYsIC5oNiB7IGZvbnQtc2l6ZTogMS44cmVtOyB9XG5cbi8vIGgzLCAuaDMgeyBAaW5jbHVkZSBmbHVpZC10eXBlKDIycHgsIDQycHgsICR0YWJsZXQsICRtYXgtc2l0ZS13aWR0aCk7IH1cbi8vIGg0LCAuaDQgeyBAaW5jbHVkZSBmbHVpZC10eXBlKDIwcHgsIDMwcHgsICR0YWJsZXQsICRtYXgtc2l0ZS13aWR0aCk7IH1cbi8vIGg1LCAuaDUgeyBAaW5jbHVkZSBmbHVpZC10eXBlKDIwcHgsIDI0cHgsICR0YWJsZXQsICRtYXgtc2l0ZS13aWR0aCk7IH1cbi8vIGg2LCAuaDYgeyBAaW5jbHVkZSBmbHVpZC10eXBlKDE4cHgsIDIycHgsICR0YWJsZXQsICRtYXgtc2l0ZS13aWR0aCk7IH1cblxuLy8gLnQtbmF2IHtcbi8vICAgQGluY2x1ZGUgZmx1aWQtdHlwZSgxMnB4LCAyNHB4LCAkdGFibGV0LCAkbWF4LXNpdGUtd2lkdGgpO1xuLy8gICBmb250LWZhbWlseTogJGZvbnQ7XG4vLyAgIGZvbnQtd2VpZ2h0OiAkbWVkaXVtO1xuLy8gfVxuXG4vLyAudC1uYXYtYm9vayB7XG4vLyAgIEBpbmNsdWRlIGZsdWlkLXR5cGUoMTJweCwgMjRweCwgJHRhYmxldCwgJG1heC1zaXRlLXdpZHRoKTtcbi8vIH1cblxuLy8gcCxcbi8vIC50LWJvZHkge1xuLy8gICBAaW5jbHVkZSBmbHVpZC10eXBlKDE2cHgsIDI4cHgsICRkZXNrdG9wLCAkbWF4LXNpdGUtd2lkdGgpO1xuLy8gfVxuXG4vLyAuY3RhLWJ1dHRvbixcbi8vIC50LWJvZHktbWVkaXVtIHtcbi8vICAgQGluY2x1ZGUgZmx1aWQtdHlwZSgxNnB4LCAyOHB4LCAkZGVza3RvcCwgJG1heC1zaXRlLXdpZHRoKTtcbi8vICAgZm9udC1mYW1pbHk6ICRmb250O1xuLy8gICBmb250LXdlaWdodDogJG1lZGl1bTtcbi8vIH1cblxuLy8gLnQtYm9keS1zbWFsbCB7XG4vLyAgIEBpbmNsdWRlIGZsdWlkLXR5cGUoMTZweCwgMjBweCwgJGRlc2t0b3AsICRtYXgtc2l0ZS13aWR0aCk7XG4vLyB9XG5cbi8vIC50LXNtYWxsY2FwcyB7XG4vLyAgIEBpbmNsdWRlIGZsdWlkLXR5cGUoMTRweCwgMTdweCwgJHRhYmxldCwgJG1heC1zaXRlLXdpZHRoKTtcbi8vICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbi8vIH1cblxuLy8gLnQtc21hbGxjYXBzLWJpZyB7XG4vLyAgIEBpbmNsdWRlIGZsdWlkLXR5cGUoMTZweCwgMjBweCwgJHRhYmxldCwgJG1heC1zaXRlLXdpZHRoKTtcbi8vICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbi8vIH1cbiIsIkBjaGFyc2V0IFwiVVRGLThcIjtcblxuLy8gICAgIF8gICAgICAgICAgICBfICAgICAgICAgICBfICAgICAgICAgICAgICAgICAgICAgICAgICAgXyBfXG4vLyAgICAoXykgICAgICAgICAgfCB8ICAgICAgICAgfCB8ICAgICAgICAgICAgICAgICAgICAgICAgIHwgKF8pXG4vLyAgICAgXyBfIF9fICAgX19ffCB8XyAgIF8gIF9ffCB8IF9fXyAgIF8gX18gX19fICAgX19fICBfX3wgfF8gIF9fIF9cbi8vICAgIHwgfCAnXyBcXCAvIF9ffCB8IHwgfCB8LyBfYCB8LyBfIFxcIHwgJ18gYCBfIFxcIC8gXyBcXC8gX2AgfCB8LyBfYCB8XG4vLyAgICB8IHwgfCB8IHwgKF9ffCB8IHxffCB8IChffCB8ICBfXy8gfCB8IHwgfCB8IHwgIF9fLyAoX3wgfCB8IChffCB8XG4vLyAgICB8X3xffCB8X3xcXF9fX3xffFxcX18sX3xcXF9fLF98XFxfX198IHxffCB8X3wgfF98XFxfX198XFxfXyxffF98XFxfXyxffFxuLy9cbi8vICAgICAgU2ltcGxlLCBlbGVnYW50IGFuZCBtYWludGFpbmFibGUgbWVkaWEgcXVlcmllcyBpbiBTYXNzXG4vLyAgICAgICAgICAgICAgICAgICAgICAgIHYxLjQuOVxuLy9cbi8vICAgICAgICAgICAgICAgIGh0dHA6Ly9pbmNsdWRlLW1lZGlhLmNvbVxuLy9cbi8vICAgICAgICAgQXV0aG9yczogRWR1YXJkbyBCb3VjYXMgKEBlZHVhcmRvYm91Y2FzKVxuLy8gICAgICAgICAgICAgICAgICBIdWdvIEdpcmF1ZGVsIChAaHVnb2dpcmF1ZGVsKVxuLy9cbi8vICAgICAgVGhpcyBwcm9qZWN0IGlzIGxpY2Vuc2VkIHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgTUlUIGxpY2Vuc2VcblxuXG4vLy8vXG4vLy8gaW5jbHVkZS1tZWRpYSBsaWJyYXJ5IHB1YmxpYyBjb25maWd1cmF0aW9uXG4vLy8gQGF1dGhvciBFZHVhcmRvIEJvdWNhc1xuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8vXG5cblxuLy8vXG4vLy8gQ3JlYXRlcyBhIGxpc3Qgb2YgZ2xvYmFsIGJyZWFrcG9pbnRzXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gQ3JlYXRlcyBhIHNpbmdsZSBicmVha3BvaW50IHdpdGggdGhlIGxhYmVsIGBwaG9uZWBcbi8vLyAgJGJyZWFrcG9pbnRzOiAoJ3Bob25lJzogMzIwcHgpO1xuLy8vXG4kYnJlYWtwb2ludHM6IChcbiAgJ3Bob25lJzogMzIwcHgsXG4gICd0YWJsZXQnOiA3NjhweCxcbiAgJ2Rlc2t0b3AnOiAxMDI0cHhcbikgIWRlZmF1bHQ7XG5cblxuLy8vXG4vLy8gQ3JlYXRlcyBhIGxpc3Qgb2Ygc3RhdGljIGV4cHJlc3Npb25zIG9yIG1lZGlhIHR5cGVzXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gQ3JlYXRlcyBhIHNpbmdsZSBtZWRpYSB0eXBlIChzY3JlZW4pXG4vLy8gICRtZWRpYS1leHByZXNzaW9uczogKCdzY3JlZW4nOiAnc2NyZWVuJyk7XG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gQ3JlYXRlcyBhIHN0YXRpYyBleHByZXNzaW9uIHdpdGggbG9naWNhbCBkaXNqdW5jdGlvbiAoT1Igb3BlcmF0b3IpXG4vLy8gICRtZWRpYS1leHByZXNzaW9uczogKFxuLy8vICAgICdyZXRpbmEyeCc6ICcoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAyKSwgKG1pbi1yZXNvbHV0aW9uOiAxOTJkcGkpJ1xuLy8vICApO1xuLy8vXG4kbWVkaWEtZXhwcmVzc2lvbnM6IChcbiAgJ3NjcmVlbic6ICdzY3JlZW4nLFxuICAncHJpbnQnOiAncHJpbnQnLFxuICAnaGFuZGhlbGQnOiAnaGFuZGhlbGQnLFxuICAnbGFuZHNjYXBlJzogJyhvcmllbnRhdGlvbjogbGFuZHNjYXBlKScsXG4gICdwb3J0cmFpdCc6ICcob3JpZW50YXRpb246IHBvcnRyYWl0KScsXG4gICdyZXRpbmEyeCc6ICcoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAyKSwgKG1pbi1yZXNvbHV0aW9uOiAxOTJkcGkpLCAobWluLXJlc29sdXRpb246IDJkcHB4KScsXG4gICdyZXRpbmEzeCc6ICcoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAzKSwgKG1pbi1yZXNvbHV0aW9uOiAzNTBkcGkpLCAobWluLXJlc29sdXRpb246IDNkcHB4KSdcbikgIWRlZmF1bHQ7XG5cblxuLy8vXG4vLy8gRGVmaW5lcyBhIG51bWJlciB0byBiZSBhZGRlZCBvciBzdWJ0cmFjdGVkIGZyb20gZWFjaCB1bml0IHdoZW4gZGVjbGFyaW5nIGJyZWFrcG9pbnRzIHdpdGggZXhjbHVzaXZlIGludGVydmFsc1xuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIEludGVydmFsIGZvciBwaXhlbHMgaXMgZGVmaW5lZCBhcyBgMWAgYnkgZGVmYXVsdFxuLy8vICBAaW5jbHVkZSBtZWRpYSgnPjEyOHB4Jykge31cbi8vL1xuLy8vICAvKiBHZW5lcmF0ZXM6ICovXG4vLy8gIEBtZWRpYSAobWluLXdpZHRoOiAxMjlweCkge31cbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBJbnRlcnZhbCBmb3IgZW1zIGlzIGRlZmluZWQgYXMgYDAuMDFgIGJ5IGRlZmF1bHRcbi8vLyAgQGluY2x1ZGUgbWVkaWEoJz4yMGVtJykge31cbi8vL1xuLy8vICAvKiBHZW5lcmF0ZXM6ICovXG4vLy8gIEBtZWRpYSAobWluLXdpZHRoOiAyMC4wMWVtKSB7fVxuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIEludGVydmFsIGZvciByZW1zIGlzIGRlZmluZWQgYXMgYDAuMWAgYnkgZGVmYXVsdCwgdG8gYmUgdXNlZCB3aXRoIGBmb250LXNpemU6IDYyLjUlO2Bcbi8vLyAgQGluY2x1ZGUgbWVkaWEoJz4yLjByZW0nKSB7fVxuLy8vXG4vLy8gIC8qIEdlbmVyYXRlczogKi9cbi8vLyAgQG1lZGlhIChtaW4td2lkdGg6IDIuMXJlbSkge31cbi8vL1xuJHVuaXQtaW50ZXJ2YWxzOiAoXG4gICdweCc6IDEsXG4gICdlbSc6IDAuMDEsXG4gICdyZW0nOiAwLjEsXG4gICcnOiAwXG4pICFkZWZhdWx0O1xuXG4vLy9cbi8vLyBEZWZpbmVzIHdoZXRoZXIgc3VwcG9ydCBmb3IgbWVkaWEgcXVlcmllcyBpcyBhdmFpbGFibGUsIHVzZWZ1bCBmb3IgY3JlYXRpbmcgc2VwYXJhdGUgc3R5bGVzaGVldHNcbi8vLyBmb3IgYnJvd3NlcnMgdGhhdCBkb24ndCBzdXBwb3J0IG1lZGlhIHF1ZXJpZXMuXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gRGlzYWJsZXMgc3VwcG9ydCBmb3IgbWVkaWEgcXVlcmllc1xuLy8vICAkaW0tbWVkaWEtc3VwcG9ydDogZmFsc2U7XG4vLy8gIEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcpIHtcbi8vLyAgICAuZm9vIHtcbi8vLyAgICAgIGNvbG9yOiB0b21hdG87XG4vLy8gICAgfVxuLy8vICB9XG4vLy9cbi8vLyAgLyogR2VuZXJhdGVzOiAqL1xuLy8vICAuZm9vIHtcbi8vLyAgICBjb2xvcjogdG9tYXRvO1xuLy8vICB9XG4vLy9cbiRpbS1tZWRpYS1zdXBwb3J0OiB0cnVlICFkZWZhdWx0O1xuXG4vLy9cbi8vLyBTZWxlY3RzIHdoaWNoIGJyZWFrcG9pbnQgdG8gZW11bGF0ZSB3aGVuIHN1cHBvcnQgZm9yIG1lZGlhIHF1ZXJpZXMgaXMgZGlzYWJsZWQuIE1lZGlhIHF1ZXJpZXMgdGhhdCBzdGFydCBhdCBvclxuLy8vIGludGVyY2VwdCB0aGUgYnJlYWtwb2ludCB3aWxsIGJlIGRpc3BsYXllZCwgYW55IG90aGVycyB3aWxsIGJlIGlnbm9yZWQuXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gVGhpcyBtZWRpYSBxdWVyeSB3aWxsIHNob3cgYmVjYXVzZSBpdCBpbnRlcmNlcHRzIHRoZSBzdGF0aWMgYnJlYWtwb2ludFxuLy8vICAkaW0tbWVkaWEtc3VwcG9ydDogZmFsc2U7XG4vLy8gICRpbS1uby1tZWRpYS1icmVha3BvaW50OiAnZGVza3RvcCc7XG4vLy8gIEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcpIHtcbi8vLyAgICAuZm9vIHtcbi8vLyAgICAgIGNvbG9yOiB0b21hdG87XG4vLy8gICAgfVxuLy8vICB9XG4vLy9cbi8vLyAgLyogR2VuZXJhdGVzOiAqL1xuLy8vICAuZm9vIHtcbi8vLyAgICBjb2xvcjogdG9tYXRvO1xuLy8vICB9XG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gVGhpcyBtZWRpYSBxdWVyeSB3aWxsIE5PVCBzaG93IGJlY2F1c2UgaXQgZG9lcyBub3QgaW50ZXJjZXB0IHRoZSBkZXNrdG9wIGJyZWFrcG9pbnRcbi8vLyAgJGltLW1lZGlhLXN1cHBvcnQ6IGZhbHNlO1xuLy8vICAkaW0tbm8tbWVkaWEtYnJlYWtwb2ludDogJ3RhYmxldCc7XG4vLy8gIEBpbmNsdWRlIG1lZGlhKCc+PWRlc2t0b3AnKSB7XG4vLy8gICAgLmZvbyB7XG4vLy8gICAgICBjb2xvcjogdG9tYXRvO1xuLy8vICAgIH1cbi8vLyAgfVxuLy8vXG4vLy8gIC8qIE5vIG91dHB1dCAqL1xuLy8vXG4kaW0tbm8tbWVkaWEtYnJlYWtwb2ludDogJ2Rlc2t0b3AnICFkZWZhdWx0O1xuXG4vLy9cbi8vLyBTZWxlY3RzIHdoaWNoIG1lZGlhIGV4cHJlc3Npb25zIGFyZSBhbGxvd2VkIGluIGFuIGV4cHJlc3Npb24gZm9yIGl0IHRvIGJlIHVzZWQgd2hlbiBtZWRpYSBxdWVyaWVzXG4vLy8gYXJlIG5vdCBzdXBwb3J0ZWQuXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gVGhpcyBtZWRpYSBxdWVyeSB3aWxsIHNob3cgYmVjYXVzZSBpdCBpbnRlcmNlcHRzIHRoZSBzdGF0aWMgYnJlYWtwb2ludCBhbmQgY29udGFpbnMgb25seSBhY2NlcHRlZCBtZWRpYSBleHByZXNzaW9uc1xuLy8vICAkaW0tbWVkaWEtc3VwcG9ydDogZmFsc2U7XG4vLy8gICRpbS1uby1tZWRpYS1icmVha3BvaW50OiAnZGVza3RvcCc7XG4vLy8gICRpbS1uby1tZWRpYS1leHByZXNzaW9uczogKCdzY3JlZW4nKTtcbi8vLyAgQGluY2x1ZGUgbWVkaWEoJz49dGFibGV0JywgJ3NjcmVlbicpIHtcbi8vLyAgICAuZm9vIHtcbi8vLyAgICAgIGNvbG9yOiB0b21hdG87XG4vLy8gICAgfVxuLy8vICB9XG4vLy9cbi8vLyAgIC8qIEdlbmVyYXRlczogKi9cbi8vLyAgIC5mb28ge1xuLy8vICAgICBjb2xvcjogdG9tYXRvO1xuLy8vICAgfVxuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIFRoaXMgbWVkaWEgcXVlcnkgd2lsbCBOT1Qgc2hvdyBiZWNhdXNlIGl0IGludGVyY2VwdHMgdGhlIHN0YXRpYyBicmVha3BvaW50IGJ1dCBjb250YWlucyBhIG1lZGlhIGV4cHJlc3Npb24gdGhhdCBpcyBub3QgYWNjZXB0ZWRcbi8vLyAgJGltLW1lZGlhLXN1cHBvcnQ6IGZhbHNlO1xuLy8vICAkaW0tbm8tbWVkaWEtYnJlYWtwb2ludDogJ2Rlc2t0b3AnO1xuLy8vICAkaW0tbm8tbWVkaWEtZXhwcmVzc2lvbnM6ICgnc2NyZWVuJyk7XG4vLy8gIEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcsICdyZXRpbmEyeCcpIHtcbi8vLyAgICAuZm9vIHtcbi8vLyAgICAgIGNvbG9yOiB0b21hdG87XG4vLy8gICAgfVxuLy8vICB9XG4vLy9cbi8vLyAgLyogTm8gb3V0cHV0ICovXG4vLy9cbiRpbS1uby1tZWRpYS1leHByZXNzaW9uczogKCdzY3JlZW4nLCAncG9ydHJhaXQnLCAnbGFuZHNjYXBlJykgIWRlZmF1bHQ7XG5cbi8vLy9cbi8vLyBDcm9zcy1lbmdpbmUgbG9nZ2luZyBlbmdpbmVcbi8vLyBAYXV0aG9yIEh1Z28gR2lyYXVkZWxcbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vLy9cblxuXG4vLy9cbi8vLyBMb2cgYSBtZXNzYWdlIGVpdGhlciB3aXRoIGBAZXJyb3JgIGlmIHN1cHBvcnRlZFxuLy8vIGVsc2Ugd2l0aCBgQHdhcm5gLCB1c2luZyBgZmVhdHVyZS1leGlzdHMoJ2F0LWVycm9yJylgXG4vLy8gdG8gZGV0ZWN0IHN1cHBvcnQuXG4vLy9cbi8vLyBAcGFyYW0ge1N0cmluZ30gJG1lc3NhZ2UgLSBNZXNzYWdlIHRvIGxvZ1xuLy8vXG5AZnVuY3Rpb24gaW0tbG9nKCRtZXNzYWdlKSB7XG4gIEBpZiBmZWF0dXJlLWV4aXN0cygnYXQtZXJyb3InKSB7XG4gICAgQGVycm9yICRtZXNzYWdlO1xuICB9IEBlbHNlIHtcbiAgICBAd2FybiAkbWVzc2FnZTtcbiAgICAkXzogbm9vcCgpO1xuICB9XG5cbiAgQHJldHVybiAkbWVzc2FnZTtcbn1cblxuXG4vLy9cbi8vLyBXcmFwcGVyIG1peGluIGZvciB0aGUgbG9nIGZ1bmN0aW9uIHNvIGl0IGNhbiBiZSB1c2VkIHdpdGggYSBtb3JlIGZyaWVuZGx5XG4vLy8gQVBJIHRoYW4gYEBpZiBpbS1sb2coJy4uJykge31gIG9yIGAkXzogaW0tbG9nKCcuLicpYC4gQmFzaWNhbGx5LCB1c2UgdGhlIGZ1bmN0aW9uXG4vLy8gd2l0aGluIGZ1bmN0aW9ucyBiZWNhdXNlIGl0IGlzIG5vdCBwb3NzaWJsZSB0byBpbmNsdWRlIGEgbWl4aW4gaW4gYSBmdW5jdGlvblxuLy8vIGFuZCB1c2UgdGhlIG1peGluIGV2ZXJ5d2hlcmUgZWxzZSBiZWNhdXNlIGl0J3MgbXVjaCBtb3JlIGVsZWdhbnQuXG4vLy9cbi8vLyBAcGFyYW0ge1N0cmluZ30gJG1lc3NhZ2UgLSBNZXNzYWdlIHRvIGxvZ1xuLy8vXG5AbWl4aW4gbG9nKCRtZXNzYWdlKSB7XG4gIEBpZiBpbS1sb2coJG1lc3NhZ2UpIHt9XG59XG5cblxuLy8vXG4vLy8gRnVuY3Rpb24gd2l0aCBubyBgQHJldHVybmAgY2FsbGVkIG5leHQgdG8gYEB3YXJuYCBpbiBTYXNzIDMuM1xuLy8vIHRvIHRyaWdnZXIgYSBjb21waWxpbmcgZXJyb3IgYW5kIHN0b3AgdGhlIHByb2Nlc3MuXG4vLy9cbkBmdW5jdGlvbiBub29wKCkge31cblxuLy8vXG4vLy8gRGV0ZXJtaW5lcyB3aGV0aGVyIGEgbGlzdCBvZiBjb25kaXRpb25zIGlzIGludGVyY2VwdGVkIGJ5IHRoZSBzdGF0aWMgYnJlYWtwb2ludC5cbi8vL1xuLy8vIEBwYXJhbSB7QXJnbGlzdH0gICAkY29uZGl0aW9ucyAgLSBNZWRpYSBxdWVyeSBjb25kaXRpb25zXG4vLy9cbi8vLyBAcmV0dXJuIHtCb29sZWFufSAtIFJldHVybnMgdHJ1ZSBpZiB0aGUgY29uZGl0aW9ucyBhcmUgaW50ZXJjZXB0ZWQgYnkgdGhlIHN0YXRpYyBicmVha3BvaW50XG4vLy9cbkBmdW5jdGlvbiBpbS1pbnRlcmNlcHRzLXN0YXRpYy1icmVha3BvaW50KCRjb25kaXRpb25zLi4uKSB7XG4gICRuby1tZWRpYS1icmVha3BvaW50LXZhbHVlOiBtYXAtZ2V0KCRicmVha3BvaW50cywgJGltLW5vLW1lZGlhLWJyZWFrcG9pbnQpO1xuXG4gIEBpZiBub3QgJG5vLW1lZGlhLWJyZWFrcG9pbnQtdmFsdWUge1xuICAgIEBpZiBpbS1sb2coJ2AjeyRpbS1uby1tZWRpYS1icmVha3BvaW50fWAgaXMgbm90IGEgdmFsaWQgYnJlYWtwb2ludC4nKSB7fVxuICB9XG5cbiAgQGVhY2ggJGNvbmRpdGlvbiBpbiAkY29uZGl0aW9ucyB7XG4gICAgQGlmIG5vdCBtYXAtaGFzLWtleSgkbWVkaWEtZXhwcmVzc2lvbnMsICRjb25kaXRpb24pIHtcbiAgICAgICRvcGVyYXRvcjogZ2V0LWV4cHJlc3Npb24tb3BlcmF0b3IoJGNvbmRpdGlvbik7XG4gICAgICAkcHJlZml4OiBnZXQtZXhwcmVzc2lvbi1wcmVmaXgoJG9wZXJhdG9yKTtcbiAgICAgICR2YWx1ZTogZ2V0LWV4cHJlc3Npb24tdmFsdWUoJGNvbmRpdGlvbiwgJG9wZXJhdG9yKTtcblxuICAgICAgLy8gc2Nzcy1saW50OmRpc2FibGUgU3BhY2VBcm91bmRPcGVyYXRvclxuICAgICAgQGlmICgkcHJlZml4ID09ICdtYXgnIGFuZCAkdmFsdWUgPD0gJG5vLW1lZGlhLWJyZWFrcG9pbnQtdmFsdWUpIG9yXG4gICAgICAgICAgKCRwcmVmaXggPT0gJ21pbicgYW5kICR2YWx1ZSA+ICRuby1tZWRpYS1icmVha3BvaW50LXZhbHVlKSB7XG4gICAgICAgIEByZXR1cm4gZmFsc2U7XG4gICAgICB9XG4gICAgfSBAZWxzZSBpZiBub3QgaW5kZXgoJGltLW5vLW1lZGlhLWV4cHJlc3Npb25zLCAkY29uZGl0aW9uKSB7XG4gICAgICBAcmV0dXJuIGZhbHNlO1xuICAgIH1cbiAgfVxuXG4gIEByZXR1cm4gdHJ1ZTtcbn1cblxuLy8vL1xuLy8vIFBhcnNpbmcgZW5naW5lXG4vLy8gQGF1dGhvciBIdWdvIEdpcmF1ZGVsXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy8vXG5cblxuLy8vXG4vLy8gR2V0IG9wZXJhdG9yIG9mIGFuIGV4cHJlc3Npb25cbi8vL1xuLy8vIEBwYXJhbSB7U3RyaW5nfSAkZXhwcmVzc2lvbiAtIEV4cHJlc3Npb24gdG8gZXh0cmFjdCBvcGVyYXRvciBmcm9tXG4vLy9cbi8vLyBAcmV0dXJuIHtTdHJpbmd9IC0gQW55IG9mIGA+PWAsIGA+YCwgYDw9YCwgYDxgLCBg4omlYCwgYOKJpGBcbi8vL1xuQGZ1bmN0aW9uIGdldC1leHByZXNzaW9uLW9wZXJhdG9yKCRleHByZXNzaW9uKSB7XG4gIEBlYWNoICRvcGVyYXRvciBpbiAoJz49JywgJz4nLCAnPD0nLCAnPCcsICfiiaUnLCAn4omkJykge1xuICAgIEBpZiBzdHItaW5kZXgoJGV4cHJlc3Npb24sICRvcGVyYXRvcikge1xuICAgICAgQHJldHVybiAkb3BlcmF0b3I7XG4gICAgfVxuICB9XG5cbiAgLy8gSXQgaXMgbm90IHBvc3NpYmxlIHRvIGluY2x1ZGUgYSBtaXhpbiBpbnNpZGUgYSBmdW5jdGlvbiwgc28gd2UgaGF2ZSB0b1xuICAvLyByZWx5IG9uIHRoZSBgaW0tbG9nKC4uKWAgZnVuY3Rpb24gcmF0aGVyIHRoYW4gdGhlIGBsb2coLi4pYCBtaXhpbi4gQmVjYXVzZVxuICAvLyBmdW5jdGlvbnMgY2Fubm90IGJlIGNhbGxlZCBhbnl3aGVyZSBpbiBTYXNzLCB3ZSBuZWVkIHRvIGhhY2sgdGhlIGNhbGwgaW5cbiAgLy8gYSBkdW1teSB2YXJpYWJsZSwgc3VjaCBhcyBgJF9gLiBJZiBhbnlib2R5IGV2ZXIgcmFpc2UgYSBzY29waW5nIGlzc3VlIHdpdGhcbiAgLy8gU2FzcyAzLjMsIGNoYW5nZSB0aGlzIGxpbmUgaW4gYEBpZiBpbS1sb2coLi4pIHt9YCBpbnN0ZWFkLlxuICAkXzogaW0tbG9nKCdObyBvcGVyYXRvciBmb3VuZCBpbiBgI3skZXhwcmVzc2lvbn1gLicpO1xufVxuXG5cbi8vL1xuLy8vIEdldCBkaW1lbnNpb24gb2YgYW4gZXhwcmVzc2lvbiwgYmFzZWQgb24gYSBmb3VuZCBvcGVyYXRvclxuLy8vXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRleHByZXNzaW9uIC0gRXhwcmVzc2lvbiB0byBleHRyYWN0IGRpbWVuc2lvbiBmcm9tXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRvcGVyYXRvciAtIE9wZXJhdG9yIGZyb20gYCRleHByZXNzaW9uYFxuLy8vXG4vLy8gQHJldHVybiB7U3RyaW5nfSAtIGB3aWR0aGAgb3IgYGhlaWdodGAgKG9yIHBvdGVudGlhbGx5IGFueXRoaW5nIGVsc2UpXG4vLy9cbkBmdW5jdGlvbiBnZXQtZXhwcmVzc2lvbi1kaW1lbnNpb24oJGV4cHJlc3Npb24sICRvcGVyYXRvcikge1xuICAkb3BlcmF0b3ItaW5kZXg6IHN0ci1pbmRleCgkZXhwcmVzc2lvbiwgJG9wZXJhdG9yKTtcbiAgJHBhcnNlZC1kaW1lbnNpb246IHN0ci1zbGljZSgkZXhwcmVzc2lvbiwgMCwgJG9wZXJhdG9yLWluZGV4IC0gMSk7XG4gICRkaW1lbnNpb246ICd3aWR0aCc7XG5cbiAgQGlmIHN0ci1sZW5ndGgoJHBhcnNlZC1kaW1lbnNpb24pID4gMCB7XG4gICAgJGRpbWVuc2lvbjogJHBhcnNlZC1kaW1lbnNpb247XG4gIH1cblxuICBAcmV0dXJuICRkaW1lbnNpb247XG59XG5cblxuLy8vXG4vLy8gR2V0IGRpbWVuc2lvbiBwcmVmaXggYmFzZWQgb24gYW4gb3BlcmF0b3Jcbi8vL1xuLy8vIEBwYXJhbSB7U3RyaW5nfSAkb3BlcmF0b3IgLSBPcGVyYXRvclxuLy8vXG4vLy8gQHJldHVybiB7U3RyaW5nfSAtIGBtaW5gIG9yIGBtYXhgXG4vLy9cbkBmdW5jdGlvbiBnZXQtZXhwcmVzc2lvbi1wcmVmaXgoJG9wZXJhdG9yKSB7XG4gIEByZXR1cm4gaWYoaW5kZXgoKCc8JywgJzw9JywgJ+KJpCcpLCAkb3BlcmF0b3IpLCAnbWF4JywgJ21pbicpO1xufVxuXG5cbi8vL1xuLy8vIEdldCB2YWx1ZSBvZiBhbiBleHByZXNzaW9uLCBiYXNlZCBvbiBhIGZvdW5kIG9wZXJhdG9yXG4vLy9cbi8vLyBAcGFyYW0ge1N0cmluZ30gJGV4cHJlc3Npb24gLSBFeHByZXNzaW9uIHRvIGV4dHJhY3QgdmFsdWUgZnJvbVxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkb3BlcmF0b3IgLSBPcGVyYXRvciBmcm9tIGAkZXhwcmVzc2lvbmBcbi8vL1xuLy8vIEByZXR1cm4ge051bWJlcn0gLSBBIG51bWVyaWMgdmFsdWVcbi8vL1xuQGZ1bmN0aW9uIGdldC1leHByZXNzaW9uLXZhbHVlKCRleHByZXNzaW9uLCAkb3BlcmF0b3IpIHtcbiAgJG9wZXJhdG9yLWluZGV4OiBzdHItaW5kZXgoJGV4cHJlc3Npb24sICRvcGVyYXRvcik7XG4gICR2YWx1ZTogc3RyLXNsaWNlKCRleHByZXNzaW9uLCAkb3BlcmF0b3ItaW5kZXggKyBzdHItbGVuZ3RoKCRvcGVyYXRvcikpO1xuXG4gIEBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsICR2YWx1ZSkge1xuICAgICR2YWx1ZTogbWFwLWdldCgkYnJlYWtwb2ludHMsICR2YWx1ZSk7XG4gIH0gQGVsc2Uge1xuICAgICR2YWx1ZTogdG8tbnVtYmVyKCR2YWx1ZSk7XG4gIH1cblxuICAkaW50ZXJ2YWw6IG1hcC1nZXQoJHVuaXQtaW50ZXJ2YWxzLCB1bml0KCR2YWx1ZSkpO1xuXG4gIEBpZiBub3QgJGludGVydmFsIHtcbiAgICAvLyBJdCBpcyBub3QgcG9zc2libGUgdG8gaW5jbHVkZSBhIG1peGluIGluc2lkZSBhIGZ1bmN0aW9uLCBzbyB3ZSBoYXZlIHRvXG4gICAgLy8gcmVseSBvbiB0aGUgYGltLWxvZyguLilgIGZ1bmN0aW9uIHJhdGhlciB0aGFuIHRoZSBgbG9nKC4uKWAgbWl4aW4uIEJlY2F1c2VcbiAgICAvLyBmdW5jdGlvbnMgY2Fubm90IGJlIGNhbGxlZCBhbnl3aGVyZSBpbiBTYXNzLCB3ZSBuZWVkIHRvIGhhY2sgdGhlIGNhbGwgaW5cbiAgICAvLyBhIGR1bW15IHZhcmlhYmxlLCBzdWNoIGFzIGAkX2AuIElmIGFueWJvZHkgZXZlciByYWlzZSBhIHNjb3BpbmcgaXNzdWUgd2l0aFxuICAgIC8vIFNhc3MgMy4zLCBjaGFuZ2UgdGhpcyBsaW5lIGluIGBAaWYgaW0tbG9nKC4uKSB7fWAgaW5zdGVhZC5cbiAgICAkXzogaW0tbG9nKCdVbmtub3duIHVuaXQgYCN7dW5pdCgkdmFsdWUpfWAuJyk7XG4gIH1cblxuICBAaWYgJG9wZXJhdG9yID09ICc+JyB7XG4gICAgJHZhbHVlOiAkdmFsdWUgKyAkaW50ZXJ2YWw7XG4gIH0gQGVsc2UgaWYgJG9wZXJhdG9yID09ICc8JyB7XG4gICAgJHZhbHVlOiAkdmFsdWUgLSAkaW50ZXJ2YWw7XG4gIH1cblxuICBAcmV0dXJuICR2YWx1ZTtcbn1cblxuXG4vLy9cbi8vLyBQYXJzZSBhbiBleHByZXNzaW9uIHRvIHJldHVybiBhIHZhbGlkIG1lZGlhLXF1ZXJ5IGV4cHJlc3Npb25cbi8vL1xuLy8vIEBwYXJhbSB7U3RyaW5nfSAkZXhwcmVzc2lvbiAtIEV4cHJlc3Npb24gdG8gcGFyc2Vcbi8vL1xuLy8vIEByZXR1cm4ge1N0cmluZ30gLSBWYWxpZCBtZWRpYSBxdWVyeVxuLy8vXG5AZnVuY3Rpb24gcGFyc2UtZXhwcmVzc2lvbigkZXhwcmVzc2lvbikge1xuICAvLyBJZiBpdCBpcyBwYXJ0IG9mICRtZWRpYS1leHByZXNzaW9ucywgaXQgaGFzIG5vIG9wZXJhdG9yXG4gIC8vIHRoZW4gdGhlcmUgaXMgbm8gbmVlZCB0byBnbyBhbnkgZnVydGhlciwganVzdCByZXR1cm4gdGhlIHZhbHVlXG4gIEBpZiBtYXAtaGFzLWtleSgkbWVkaWEtZXhwcmVzc2lvbnMsICRleHByZXNzaW9uKSB7XG4gICAgQHJldHVybiBtYXAtZ2V0KCRtZWRpYS1leHByZXNzaW9ucywgJGV4cHJlc3Npb24pO1xuICB9XG5cbiAgJG9wZXJhdG9yOiBnZXQtZXhwcmVzc2lvbi1vcGVyYXRvcigkZXhwcmVzc2lvbik7XG4gICRkaW1lbnNpb246IGdldC1leHByZXNzaW9uLWRpbWVuc2lvbigkZXhwcmVzc2lvbiwgJG9wZXJhdG9yKTtcbiAgJHByZWZpeDogZ2V0LWV4cHJlc3Npb24tcHJlZml4KCRvcGVyYXRvcik7XG4gICR2YWx1ZTogZ2V0LWV4cHJlc3Npb24tdmFsdWUoJGV4cHJlc3Npb24sICRvcGVyYXRvcik7XG5cbiAgQHJldHVybiAnKCN7JHByZWZpeH0tI3skZGltZW5zaW9ufTogI3skdmFsdWV9KSc7XG59XG5cbi8vL1xuLy8vIFNsaWNlIGAkbGlzdGAgYmV0d2VlbiBgJHN0YXJ0YCBhbmQgYCRlbmRgIGluZGV4ZXNcbi8vL1xuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vXG4vLy8gQHBhcmFtIHtMaXN0fSAkbGlzdCAtIExpc3QgdG8gc2xpY2Vcbi8vLyBAcGFyYW0ge051bWJlcn0gJHN0YXJ0IFsxXSAtIFN0YXJ0IGluZGV4XG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRlbmQgW2xlbmd0aCgkbGlzdCldIC0gRW5kIGluZGV4XG4vLy9cbi8vLyBAcmV0dXJuIHtMaXN0fSBTbGljZWQgbGlzdFxuLy8vXG5AZnVuY3Rpb24gc2xpY2UoJGxpc3QsICRzdGFydDogMSwgJGVuZDogbGVuZ3RoKCRsaXN0KSkge1xuICBAaWYgbGVuZ3RoKCRsaXN0KSA8IDEgb3IgJHN0YXJ0ID4gJGVuZCB7XG4gICAgQHJldHVybiAoKTtcbiAgfVxuXG4gICRyZXN1bHQ6ICgpO1xuXG4gIEBmb3IgJGkgZnJvbSAkc3RhcnQgdGhyb3VnaCAkZW5kIHtcbiAgICAkcmVzdWx0OiBhcHBlbmQoJHJlc3VsdCwgbnRoKCRsaXN0LCAkaSkpO1xuICB9XG5cbiAgQHJldHVybiAkcmVzdWx0O1xufVxuXG4vLy8vXG4vLy8gU3RyaW5nIHRvIG51bWJlciBjb252ZXJ0ZXJcbi8vLyBAYXV0aG9yIEh1Z28gR2lyYXVkZWxcbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vLy9cblxuXG4vLy9cbi8vLyBDYXN0cyBhIHN0cmluZyBpbnRvIGEgbnVtYmVyXG4vLy9cbi8vLyBAcGFyYW0ge1N0cmluZyB8IE51bWJlcn0gJHZhbHVlIC0gVmFsdWUgdG8gYmUgcGFyc2VkXG4vLy9cbi8vLyBAcmV0dXJuIHtOdW1iZXJ9XG4vLy9cbkBmdW5jdGlvbiB0by1udW1iZXIoJHZhbHVlKSB7XG4gIEBpZiB0eXBlLW9mKCR2YWx1ZSkgPT0gJ251bWJlcicge1xuICAgIEByZXR1cm4gJHZhbHVlO1xuICB9IEBlbHNlIGlmIHR5cGUtb2YoJHZhbHVlKSAhPSAnc3RyaW5nJyB7XG4gICAgJF86IGltLWxvZygnVmFsdWUgZm9yIGB0by1udW1iZXJgIHNob3VsZCBiZSBhIG51bWJlciBvciBhIHN0cmluZy4nKTtcbiAgfVxuXG4gICRmaXJzdC1jaGFyYWN0ZXI6IHN0ci1zbGljZSgkdmFsdWUsIDEsIDEpO1xuICAkcmVzdWx0OiAwO1xuICAkZGlnaXRzOiAwO1xuICAkbWludXM6ICgkZmlyc3QtY2hhcmFjdGVyID09ICctJyk7XG4gICRudW1iZXJzOiAoJzAnOiAwLCAnMSc6IDEsICcyJzogMiwgJzMnOiAzLCAnNCc6IDQsICc1JzogNSwgJzYnOiA2LCAnNyc6IDcsICc4JzogOCwgJzknOiA5KTtcblxuICAvLyBSZW1vdmUgKy8tIHNpZ24gaWYgcHJlc2VudCBhdCBmaXJzdCBjaGFyYWN0ZXJcbiAgQGlmICgkZmlyc3QtY2hhcmFjdGVyID09ICcrJyBvciAkZmlyc3QtY2hhcmFjdGVyID09ICctJykge1xuICAgICR2YWx1ZTogc3RyLXNsaWNlKCR2YWx1ZSwgMik7XG4gIH1cblxuICBAZm9yICRpIGZyb20gMSB0aHJvdWdoIHN0ci1sZW5ndGgoJHZhbHVlKSB7XG4gICAgJGNoYXJhY3Rlcjogc3RyLXNsaWNlKCR2YWx1ZSwgJGksICRpKTtcblxuICAgIEBpZiBub3QgKGluZGV4KG1hcC1rZXlzKCRudW1iZXJzKSwgJGNoYXJhY3Rlcikgb3IgJGNoYXJhY3RlciA9PSAnLicpIHtcbiAgICAgIEByZXR1cm4gdG8tbGVuZ3RoKGlmKCRtaW51cywgLSRyZXN1bHQsICRyZXN1bHQpLCBzdHItc2xpY2UoJHZhbHVlLCAkaSkpXG4gICAgfVxuXG4gICAgQGlmICRjaGFyYWN0ZXIgPT0gJy4nIHtcbiAgICAgICRkaWdpdHM6IDE7XG4gICAgfSBAZWxzZSBpZiAkZGlnaXRzID09IDAge1xuICAgICAgJHJlc3VsdDogJHJlc3VsdCAqIDEwICsgbWFwLWdldCgkbnVtYmVycywgJGNoYXJhY3Rlcik7XG4gICAgfSBAZWxzZSB7XG4gICAgICAkZGlnaXRzOiAkZGlnaXRzICogMTA7XG4gICAgICAkcmVzdWx0OiAkcmVzdWx0ICsgbWFwLWdldCgkbnVtYmVycywgJGNoYXJhY3RlcikgLyAkZGlnaXRzO1xuICAgIH1cbiAgfVxuXG4gIEByZXR1cm4gaWYoJG1pbnVzLCAtJHJlc3VsdCwgJHJlc3VsdCk7XG59XG5cblxuLy8vXG4vLy8gQWRkIGAkdW5pdGAgdG8gYCR2YWx1ZWBcbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkdmFsdWUgLSBWYWx1ZSB0byBhZGQgdW5pdCB0b1xuLy8vIEBwYXJhbSB7U3RyaW5nfSAkdW5pdCAtIFN0cmluZyByZXByZXNlbnRhdGlvbiBvZiB0aGUgdW5pdFxuLy8vXG4vLy8gQHJldHVybiB7TnVtYmVyfSAtIGAkdmFsdWVgIGV4cHJlc3NlZCBpbiBgJHVuaXRgXG4vLy9cbkBmdW5jdGlvbiB0by1sZW5ndGgoJHZhbHVlLCAkdW5pdCkge1xuICAkdW5pdHM6ICgncHgnOiAxcHgsICdjbSc6IDFjbSwgJ21tJzogMW1tLCAnJSc6IDElLCAnY2gnOiAxY2gsICdwYyc6IDFwYywgJ2luJzogMWluLCAnZW0nOiAxZW0sICdyZW0nOiAxcmVtLCAncHQnOiAxcHQsICdleCc6IDFleCwgJ3Z3JzogMXZ3LCAndmgnOiAxdmgsICd2bWluJzogMXZtaW4sICd2bWF4JzogMXZtYXgpO1xuXG4gIEBpZiBub3QgaW5kZXgobWFwLWtleXMoJHVuaXRzKSwgJHVuaXQpIHtcbiAgICAkXzogaW0tbG9nKCdJbnZhbGlkIHVuaXQgYCN7JHVuaXR9YC4nKTtcbiAgfVxuXG4gIEByZXR1cm4gJHZhbHVlICogbWFwLWdldCgkdW5pdHMsICR1bml0KTtcbn1cblxuLy8vXG4vLy8gVGhpcyBtaXhpbiBhaW1zIGF0IHJlZGVmaW5pbmcgdGhlIGNvbmZpZ3VyYXRpb24ganVzdCBmb3IgdGhlIHNjb3BlIG9mXG4vLy8gdGhlIGNhbGwuIEl0IGlzIGhlbHBmdWwgd2hlbiBoYXZpbmcgYSBjb21wb25lbnQgbmVlZGluZyBhbiBleHRlbmRlZFxuLy8vIGNvbmZpZ3VyYXRpb24gc3VjaCBhcyBjdXN0b20gYnJlYWtwb2ludHMgKHJlZmVycmVkIHRvIGFzIHR3ZWFrcG9pbnRzKVxuLy8vIGZvciBpbnN0YW5jZS5cbi8vL1xuLy8vIEBhdXRob3IgSHVnbyBHaXJhdWRlbFxuLy8vXG4vLy8gQHBhcmFtIHtNYXB9ICR0d2Vha3BvaW50cyBbKCldIC0gTWFwIG9mIHR3ZWFrcG9pbnRzIHRvIGJlIG1lcmdlZCB3aXRoIGAkYnJlYWtwb2ludHNgXG4vLy8gQHBhcmFtIHtNYXB9ICR0d2Vhay1tZWRpYS1leHByZXNzaW9ucyBbKCldIC0gTWFwIG9mIHR3ZWFrZWQgbWVkaWEgZXhwcmVzc2lvbnMgdG8gYmUgbWVyZ2VkIHdpdGggYCRtZWRpYS1leHByZXNzaW9uYFxuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIEV4dGVuZCB0aGUgZ2xvYmFsIGJyZWFrcG9pbnRzIHdpdGggYSB0d2Vha3BvaW50XG4vLy8gIEBpbmNsdWRlIG1lZGlhLWNvbnRleHQoKCdjdXN0b20nOiA2NzhweCkpIHtcbi8vLyAgICAuZm9vIHtcbi8vLyAgICAgIEBpbmNsdWRlIG1lZGlhKCc+cGhvbmUnLCAnPD1jdXN0b20nKSB7XG4vLy8gICAgICAgLy8gLi4uXG4vLy8gICAgICB9XG4vLy8gICAgfVxuLy8vICB9XG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gRXh0ZW5kIHRoZSBnbG9iYWwgbWVkaWEgZXhwcmVzc2lvbnMgd2l0aCBhIGN1c3RvbSBvbmVcbi8vLyAgQGluY2x1ZGUgbWVkaWEtY29udGV4dCgkdHdlYWstbWVkaWEtZXhwcmVzc2lvbnM6ICgnYWxsJzogJ2FsbCcpKSB7XG4vLy8gICAgLmZvbyB7XG4vLy8gICAgICBAaW5jbHVkZSBtZWRpYSgnYWxsJywgJz5waG9uZScpIHtcbi8vLyAgICAgICAvLyAuLi5cbi8vLyAgICAgIH1cbi8vLyAgICB9XG4vLy8gIH1cbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBFeHRlbmQgYm90aCBjb25maWd1cmF0aW9uIG1hcHNcbi8vLyAgQGluY2x1ZGUgbWVkaWEtY29udGV4dCgoJ2N1c3RvbSc6IDY3OHB4KSwgKCdhbGwnOiAnYWxsJykpIHtcbi8vLyAgICAuZm9vIHtcbi8vLyAgICAgIEBpbmNsdWRlIG1lZGlhKCdhbGwnLCAnPnBob25lJywgJzw9Y3VzdG9tJykge1xuLy8vICAgICAgIC8vIC4uLlxuLy8vICAgICAgfVxuLy8vICAgIH1cbi8vLyAgfVxuLy8vXG5AbWl4aW4gbWVkaWEtY29udGV4dCgkdHdlYWtwb2ludHM6ICgpLCAkdHdlYWstbWVkaWEtZXhwcmVzc2lvbnM6ICgpKSB7XG4gIC8vIFNhdmUgZ2xvYmFsIGNvbmZpZ3VyYXRpb25cbiAgJGdsb2JhbC1icmVha3BvaW50czogJGJyZWFrcG9pbnRzO1xuICAkZ2xvYmFsLW1lZGlhLWV4cHJlc3Npb25zOiAkbWVkaWEtZXhwcmVzc2lvbnM7XG5cbiAgLy8gVXBkYXRlIGdsb2JhbCBjb25maWd1cmF0aW9uXG4gICRicmVha3BvaW50czogbWFwLW1lcmdlKCRicmVha3BvaW50cywgJHR3ZWFrcG9pbnRzKSAhZ2xvYmFsO1xuICAkbWVkaWEtZXhwcmVzc2lvbnM6IG1hcC1tZXJnZSgkbWVkaWEtZXhwcmVzc2lvbnMsICR0d2Vhay1tZWRpYS1leHByZXNzaW9ucykgIWdsb2JhbDtcblxuICBAY29udGVudDtcblxuICAvLyBSZXN0b3JlIGdsb2JhbCBjb25maWd1cmF0aW9uXG4gICRicmVha3BvaW50czogJGdsb2JhbC1icmVha3BvaW50cyAhZ2xvYmFsO1xuICAkbWVkaWEtZXhwcmVzc2lvbnM6ICRnbG9iYWwtbWVkaWEtZXhwcmVzc2lvbnMgIWdsb2JhbDtcbn1cblxuLy8vL1xuLy8vIGluY2x1ZGUtbWVkaWEgcHVibGljIGV4cG9zZWQgQVBJXG4vLy8gQGF1dGhvciBFZHVhcmRvIEJvdWNhc1xuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8vXG5cblxuLy8vXG4vLy8gR2VuZXJhdGVzIGEgbWVkaWEgcXVlcnkgYmFzZWQgb24gYSBsaXN0IG9mIGNvbmRpdGlvbnNcbi8vL1xuLy8vIEBwYXJhbSB7QXJnbGlzdH0gICAkY29uZGl0aW9ucyAgLSBNZWRpYSBxdWVyeSBjb25kaXRpb25zXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gV2l0aCBhIHNpbmdsZSBzZXQgYnJlYWtwb2ludFxuLy8vICBAaW5jbHVkZSBtZWRpYSgnPnBob25lJykgeyB9XG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gV2l0aCB0d28gc2V0IGJyZWFrcG9pbnRzXG4vLy8gIEBpbmNsdWRlIG1lZGlhKCc+cGhvbmUnLCAnPD10YWJsZXQnKSB7IH1cbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBXaXRoIGN1c3RvbSB2YWx1ZXNcbi8vLyAgQGluY2x1ZGUgbWVkaWEoJz49MzU4cHgnLCAnPDg1MHB4JykgeyB9XG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gV2l0aCBzZXQgYnJlYWtwb2ludHMgd2l0aCBjdXN0b20gdmFsdWVzXG4vLy8gIEBpbmNsdWRlIG1lZGlhKCc+ZGVza3RvcCcsICc8PTEzNTBweCcpIHsgfVxuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIFdpdGggYSBzdGF0aWMgZXhwcmVzc2lvblxuLy8vICBAaW5jbHVkZSBtZWRpYSgncmV0aW5hMngnKSB7IH1cbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBNaXhpbmcgZXZlcnl0aGluZ1xuLy8vICBAaW5jbHVkZSBtZWRpYSgnPj0zNTBweCcsICc8dGFibGV0JywgJ3JldGluYTN4JykgeyB9XG4vLy9cbkBtaXhpbiBtZWRpYSgkY29uZGl0aW9ucy4uLikge1xuICAvLyBzY3NzLWxpbnQ6ZGlzYWJsZSBTcGFjZUFyb3VuZE9wZXJhdG9yXG4gIEBpZiAoJGltLW1lZGlhLXN1cHBvcnQgYW5kIGxlbmd0aCgkY29uZGl0aW9ucykgPT0gMCkgb3JcbiAgICAgIChub3QgJGltLW1lZGlhLXN1cHBvcnQgYW5kIGltLWludGVyY2VwdHMtc3RhdGljLWJyZWFrcG9pbnQoJGNvbmRpdGlvbnMuLi4pKSB7XG4gICAgQGNvbnRlbnQ7XG4gIH0gQGVsc2UgaWYgKCRpbS1tZWRpYS1zdXBwb3J0IGFuZCBsZW5ndGgoJGNvbmRpdGlvbnMpID4gMCkge1xuICAgIEBtZWRpYSAje3VucXVvdGUocGFyc2UtZXhwcmVzc2lvbihudGgoJGNvbmRpdGlvbnMsIDEpKSl9IHtcbiAgICAgIC8vIFJlY3Vyc2l2ZSBjYWxsXG4gICAgICBAaW5jbHVkZSBtZWRpYShzbGljZSgkY29uZGl0aW9ucywgMikuLi4pIHtcbiAgICAgICAgQGNvbnRlbnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyAtLS0tXG4vLyBUeXBvZ3JhcGh5XG4vLyAtLS0tXG5cbi8vLSBNaXhpbjogSW5saW5lIExpc3Rcbi8vL1xuLy8vIEZvciB3aGVuIHlvdSBuZWVkIHlvdXIgbGlzdCB0byBiZSBob3Jpem9udGFsLlxuLy8vXG4vLy8gQHBhcmFtIHt2YXJpYWJsZX0gJHNwYWNpbmcgWzIwcHhdIC0gQW1vdW50IG9mIHNwYWNpbmcgYmV0d2VlbiBlbGVtZW50cyAtXG4vLy8gY2FuIGJlIHdoYXRldmVyIHVuaXQgeW91IGxpa2UuXG4vLy9cbi8vLyBAZ3JvdXAgdHlwb2dyYXBoeVxuLy8vIEBleGFtcGxlXG4vLy8gICB1bCB7XG4vLy8gICAgIEBpbmNsdWRlIGlubGluZS1saXN0KCk7XG4vLy8gICB9XG5cbkBtaXhpbiBpbmxpbmUtbGlzdCgkc3BhY2luZzogMjBweCkge1xuICBAaW5jbHVkZSBjbGVhcmZpeCgpO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG5cbiAgbGkge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgICBtYXJnaW4tcmlnaHQ6ICRzcGFjaW5nO1xuICB9XG5cbiAgbGk6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICB9XG59XG5cbi8vLSBNaXhpbjogSW5saW5lIExpc3Rcbi8vL1xuLy8vIFdlIHRlbmQgdG8gc3BlbmQgYSBncmVhdCBkZWFsIG9mIHRpbWUgcmVzZXR0aW5nIGFsbCBvZiB0aGUgcHJvcGVydGllcyBmb3Jcbi8vLyBsaXN0cy4gVGhpcyBwdXRzIHRoZW0gYmFjayB0byByb3VnaGx5IHRoZSBzYW1lIHN0YXRlIGFzIGJyb3dzZXIgZGVmYXVsdHMuXG4vLy8gWW91IGNhbiBwYXNzIGl0IGFueSBvcHRpb24gdGhhdCBbbGlzdC1zdHlsZS10eXBlXVxuLy8vIChodHRwOi8vd3d3Lnczc2Nob29scy5jb20vY3NzcmVmL3ByX2xpc3Qtc3R5bGUtdHlwZS5hc3ApIHdvdWxkIG5vcm1hbGx5XG4vLy8gdGFrZS5cbi8vL1xuLy8vIEBwYXJhbSB7dmFyaWFibGV9ICRzdHlsZSBbZGlzY10gLSBBbW91bnQgb2Ygc3BhY2luZyBiZXR3ZWVuIGVsZW1lbnRzLlxuLy8vIGNhbiBiZSB3aGF0ZXZlciB1bml0IHlvdSBsaWtlLlxuLy8vXG4vLy8gQGdyb3VwIHR5cG9ncmFwaHlcbi8vLyBAZXhhbXBsZVxuLy8vICAgdWwge1xuLy8vICAgICBAaW5jbHVkZSB0ZXh0LWxpc3QoKTtcbi8vLyAgIH1cbi8vLyAgIHVsIHtcbi8vLyAgICAgQGluY2x1ZGUgdGV4dC1saXN0KCdkaXNjJyk7XG4vLy8gICB9XG5cbkBtaXhpbiB0ZXh0LWxpc3QoJHN0eWxlOiAnZGlzYycpIHtcbiAgbWFyZ2luOiAuMzJyZW0gLjk0cmVtO1xuICBwYWRkaW5nLWxlZnQ6IDFyZW07XG5cbiAgbGkge1xuICAgIGxpc3Qtc3R5bGUtdHlwZTogdW5xdW90ZSgkc3R5bGUpO1xuICAgIHBhZGRpbmc6IC4xMjVyZW0gMDtcbiAgfVxufVxuXG4vLy0gTWl4aW46IFJlc2V0IExpc3Rcbi8vL1xuLy8vICBSZXNldHMgdGhlIG1hcmdpbnMgcGFkZGluZywgYW5kIHN0eWxlcyB0byBsaXN0LlxuLy8vXG4vLy8gQGdyb3VwIHR5cG9ncmFwaHlcbi8vLyBAZXhhbXBsZVxuLy8vICAgdWwge1xuLy8vICAgICBAaW5jbHVkZSByZXNldC1saXN0KCk7XG4vLy8gICB9XG5cbkBtaXhpbiByZXNldC1saXN0KCkge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG5cbiAgbGkge1xuICAgIGZsb2F0OiBub25lO1xuICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgfVxufVxuXG5cbi8vLSBNaXhpbjogRWxsaXBzaXNcbi8vL1xuLy8vIFRydW5jYXRlIHRleHQgdG8gdGhlIHdpZHRoIG9mIGl0cyBjb250YWluZXIuLi5cbi8vL1xuLy8vIEBwYXJhbSB7dmFyaWFibGV9ICR3aWR0aCBbMTAwJV0gLSBXaWR0aCBvZiB0aGUgY29udGFpbmVyXG4vLy8gY2FuIGJlIHdoYXRldmVyIHVuaXQgeW91IGxpa2UuXG4vLy9cbi8vLyBAZ3JvdXAgdHlwb2dyYXBoeVxuLy8vIEBleGFtcGxlXG4vLy8gICBoMyB7XG4vLy8gICAgIEBpbmNsdWRlIGVsbGlwc2lzKCk7XG4vLy8gICB9XG5cbkBtaXhpbiBlbGxpcHNpcygkd2lkdGg6IDEwMCUpIHtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXgtd2lkdGg6ICR3aWR0aDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gIHdvcmQtd3JhcDogbm9ybWFsO1xufVxuXG5cbi8vLSBNaXhpbjogRmx1aWQgVHlwZVxuLy8vXG4vLy8gTWFnaWMgY2FsYyArIHZoIGNvbWJvIHRvIGFsbG93IHRleHQgdG8gYmUgZmx1aWQgYmV0d2VlbiBtaW5pbXVtXG4vLy8gYW5kIG1heGltdW0gYnJlYWtwb2ludHMuXG4vLy9cbi8vLyBAZ3JvdXAgdHlwb2dyYXBoeVxuLy8vIEBwYXJhbSB7dmFyaWFibGV9ICRtaW4tZm9udC1zaXplIFsxMnB4XSAtIE1pbmltdW0gZm9udCBzaXplXG4vLy8gQHBhcmFtIHt2YXJpYWJsZX0gJG1heC1mb250LXNpemUgWzI0cHhdIC0gTWF4aW11bSBmb250IHNpemVcbi8vLyBAcGFyYW0ge3ZhcmlhYmxlfSAkbG93ZXItcmFuZ2UgWzQyMHB4XSAtIFN0b3Agc2NhbGluZyBmb250IHNtYWxsZXIgYXQgdGhpcyBzY3JlZW4gcmVzb2x1dGlvblxuLy8vIEBwYXJhbSB7dmFyaWFibGV9ICR1cHBlci1yYW5nZSBbOTAwcHhdIC0gU3RvcCBzY2FsaW5nIGZvbnQgbGFyZ2VyIGF0IHRoaXMgc2NyZWVuIHJlc29sdXRpb25cbi8vLyBAZXhhbXBsZVxuLy8vICAgaDEge1xuLy8vICAgICBAaW5jbHVkZSBmbHVpZC10eXBlKDIwcHgsIDQ4cHgpO1xuLy8vICAgfVxuLy8vIEBsaW5rIGh0dHA6Ly9jb2RlcGVuLmlvL2Rib3gvcGVuL21lYU1iYVxuXG5AbWl4aW4gZmx1aWQtdHlwZSgkbWluLWZvbnQtc2l6ZTogMTJweCwgJG1heC1mb250LXNpemU6IDIxcHgsICRsb3dlci1yYW5nZTogNDIwcHgsICR1cHBlci1yYW5nZTogOTAwcHgpIHtcbiAgZm9udC1zaXplOiBjYWxjKCN7JG1pbi1mb250LXNpemV9ICsgI3soKCRtYXgtZm9udC1zaXplIC8gKCRtYXgtZm9udC1zaXplICogMCArIDEpKSAtICgkbWluLWZvbnQtc2l6ZSAvICgkbWluLWZvbnQtc2l6ZSAqIDAgKyAxKSkpfSAqICgoMTAwdncgLSAjeyRsb3dlci1yYW5nZX0pIC8gI3soKCR1cHBlci1yYW5nZSAvICgkdXBwZXItcmFuZ2UgKiAwICsgMSkpIC0gKCRsb3dlci1yYW5nZSAvICgkbG93ZXItcmFuZ2UgKiAwICsgMSkpKX0pKTtcblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbG93ZXItcmFuZ2UpIHtcbiAgICBmb250LXNpemU6ICRtaW4tZm9udC1zaXplO1xuICB9XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJHVwcGVyLXJhbmdlKXtcbiAgICBmb250LXNpemU6ICRtYXgtZm9udC1zaXplO1xuICB9XG59XG4iLCIvLyAtLS0tXG4vLyBMYXlvdXRcbi8vIC0tLS1cblxuLy8tIE1peGluOiBDbGVhcmZpeFxuLy8vXG4vLy8gSnVzdCB5b3VyIHN0YW5kYXJkIGNsZWFyZml4LlxuLy8vXG4vLy8gQGdyb3VwIGxheW91dFxuLy8vIEBleGFtcGxlXG4vLy8gICBAaW5jbHVkZSBjbGVhcmZpeCgpO1xuXG5AbWl4aW4gY2xlYXJmaXgoKSB7XG4gICY6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoO1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICB9XG59XG5cbi8vLSBBbGlhczogY2Zcbi8vL1xuLy8vIEBncm91cCBsYXlvdXRcbi8vLyBAZXhhbXBsZVxuLy8vICAgQGluY2x1ZGUgY2YoKTtcbi8vLyBAYWxpYXMgY2xlYXJmaXhcblxuQG1peGluIGNmKCkge1xuICBAaW5jbHVkZSBjbGVhcmZpeCgpO1xufVxuXG4vLy0gTWl4aW46IFJhdGlvIEJveFxuLy8vXG4vLy8gVGhpcyBzZXRzIGEgc3BlY2lmaWMgd2lkdGgvaGVpZ2h0IHJhdGlvLiBVc2VmdWwgb24gYmFja2dyb3VuZCBpbWFnZXMsXG4vLy8gaWZyYW1lcyBhbmQgWW91dHViZSBlbWJlZHMuXG4vLy9cbi8vLyBAcGFyYW0ge3ZhcmlhYmxlfSAkcmF0aW8gWzEgLyAxXSAtIEFzcGVjdCByYXRpbzogaGVpZ2h0IC8gd2lkdGhcbi8vLyBAcGFyYW0ge3ZhcmlhYmxlfSAkYmctY29sb3IgWyRiYXNlLWdyYXksIC4yXSAtIHBsYWNlaG9sZGVyIGJhY2tncm91bmQgY29sb3Jcbi8vLyBAZ3JvdXAgbGF5b3V0XG4vLy8gQGV4YW1wbGVcbi8vLyAgIGZpZ3VyZSB7XG4vLy8gICAgIEBpbmNsdWRlIHJhdGlvKDE2IC8gOSk7XG4vLy8gICB9XG4vLy8gQGxpbmsgaHR0cDovL3d3dy5tYWRlbXlkYXkuZGUvY3NzLWhlaWdodC1lcXVhbHMtd2lkdGgtd2l0aC1wdXJlLWNzcy5odG1sXG5cbkBtaXhpbiByYXRpby1ib3goJHJhdGlvOiAxIC8gMSwgJGJnLWNvbG9yOiByZ2JhKCRiYXNlLWdyYXksIC4xNSkpIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJnLWNvbG9yO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgPiAqIHtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgbGVmdDogMDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG5cbiAgJjo6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBoZWlnaHQ6IDA7XG4gICAgcGFkZGluZy10b3A6ICgxIC8gJHJhdGlvKSAqIDEwMCU7XG4gIH1cbn1cblxuLy8tIE1peGluOiBDb3ZlclxuLy8vXG4vLy8gVXNlZnVsIHNob3J0Y3V0IGZvciBzZXR0aW5nIGJhY2tncm91bmQgc2l6ZSB0byBjb3ZlclxuLy8vXG4vLy8gQHBhcmFtIHt2YXJpYWJsZX0gJHggW2NlbnRlcl0gLSB4IHBvc2l0aW9uXG4vLy8gQHBhcmFtIHt2YXJpYWJsZX0gJHkgW2NlbnRlcl0gLSB5IHBvc2l0aW9uXG4vLy8gQGdyb3VwIGxheW91dFxuLy8vIEBleGFtcGxlXG4vLy8gICBkaXYuaGVybyB7XG4vLy8gICAgIEBpbmNsdWRlIGNvdmVyKHRvcCwgY2VudGVyKTtcbi8vLyAgIH1cblxuQG1peGluIGNvdmVyKCR4OiBjZW50ZXIsICR5OiBjZW50ZXIpIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogJHggJHk7XG59XG4vLy0gTWl4aW46IEZ1bGwgUGFnZVxuLy8vXG4vLy8gQ3JlYXRlIGEgcmVzcG9uc2l2ZSBmdWxsIHBhZ2Ugc2VjdGlvbiB3aXRoIGludGVsbGlnZW50IGRlZmF1bHRzLlxuLy8vIFJlc2V0cyBvbiBtb2JpbGUuXG4vLy9cbi8vLyBAcGFyYW0ge3ZhcmlhYmxlfSAkaGVpZ2h0IFsxMDB2aF0gLSBQYWdlIGhlaWdodFxuLy8vIEBwYXJhbSB7dmFyaWFibGV9ICRtYXgtaGVpZ2h0IFs4NTBweF0gLSBNYXggcGFnZSBoZWlnaHRcbi8vLyBAcGFyYW0ge3ZhcmlhYmxlfSAkbWluLWhlaWdodCBbNjAwcHhdIC0gTWluIHBhZ2UgaGVpZ2h0XG4vLy8gQHBhcmFtIHt2YXJpYWJsZX0gJGJyZWFrcG9pbnQgWzc2OHB4XSAtIERpc2FibGUgYmVsb3cgdGhpcyBzaXplIG9yIHBhc3Ncbi8vLyAnbnVsbCcgdG8gbm90IHVzZSBhIGJyZWFrcG9pbnQuXG4vLy8gQGdyb3VwIGxheW91dFxuLy8vIEBleGFtcGxlXG4vLy8gICBzZWN0aW9uIHtcbi8vLyAgICAgQGluY2x1ZGUgZnVsbC1wYWdlKCk7XG4vLy8gICB9XG4vLy9cbi8vLyAgIHNlY3Rpb24ge1xuLy8vICAgICBAaW5jbHVkZSBmdWxsLXBhZ2UoY2FsYygxMDB2aCAtIDkwcHgpLCA4MDBweCwgNTAwcHgpO1xuLy8vICAgfVxuLy8vIEBsaW5rIGh0dHA6Ly9jb2RlcGVuLmlvL2Rib3gvcGVuL095enJyVlxuXG5AbWl4aW4gZnVsbC1wYWdlKCRoZWlnaHQ6IDEwMHZoLCAkbWF4LWhlaWdodDogODUwcHgsICRtaW4taGVpZ2h0OiA2MDBweCwgJGJyZWFrcG9pbnQ6IDc2OHB4KSB7XG4gIC8vIERpc2FibGUgYmVsb3cgc2V0IGJyZWFrcG9pbnRcbiAgQGlmICgkYnJlYWtwb2ludCkge1xuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRicmVha3BvaW50KSB7XG4gICAgICBoZWlnaHQ6ICRoZWlnaHQ7XG4gICAgICBtYXgtaGVpZ2h0OiAkbWF4LWhlaWdodDtcbiAgICAgIG1pbi1oZWlnaHQ6ICRtaW4taGVpZ2h0O1xuICAgIH1cbiAgLy8gU2hvdyBmb3IgYWxsIHNpemVzXG4gIH0gQGVsc2Uge1xuICAgIGhlaWdodDogJGhlaWdodDtcbiAgICBtYXgtaGVpZ2h0OiAkbWF4LWhlaWdodDtcbiAgICBtaW4taGVpZ2h0OiAkbWluLWhlaWdodDtcbiAgfVxufVxuXG4vLyBNaXhpbjogVmVydGljYWxseSBBbGlnblxuLy8gQ3Jvc3MgYnJvd3NlciB2ZXJ0aWNhbCBhbGlnbi4gV29ya3MgZG93biB0byBJRTkuXG4vL1xuLy8gZXguIEBpbmNsdWRlIHZlcnRpY2FsbHktYWxpZ24oKTtcblxuLy8tIE1peGluOiBWZXJ0aWNhbGx5IEFsaWduXG4vLy9cbi8vLyBDcm9zcyBicm93c2VyIHZlcnRpY2FsIGFsaWduLiBXb3JrcyBkb3duIHRvIElFOS5cbi8vL1xuLy8vIEBwYXJhbSB7dmFyaWFibGV9ICRyZXNldCBbTnVsbF0gLSBQYXNzIGBmYWxzZWAgdG8gcmVzZXQgb3ZlcnJpZGUgdG8gb3JpZ2luYWxcbi8vLyB2YWx1ZXNcbi8vLyBAZ3JvdXAgbGF5b3V0XG4vLy8gQGV4YW1wbGVcbi8vLyAgIGFydGljbGUge1xuLy8vICAgICBAaW5jbHVkZSB2ZXJ0aWNhbGx5LWFsaWduKCk7XG4vLy8gICB9XG4vLy9cbi8vLyAgIGg0IHtcbi8vLyAgICAgQGluY2x1ZGUgdmVydGljYWxseS1hbGlnbihmYWxzZSk7XG4vLy8gICB9XG4vLy8gQGxpbmsgaHR0cDovL3plcm9zaXh0aHJlZS5zZS92ZXJ0aWNhbC1hbGlnbi1hbnl0aGluZy13aXRoLWp1c3QtMy1saW5lcy1vZi1jc3MvXG5cbkBtaXhpbiB2ZXJ0aWNhbGx5LWFsaWduKCRyZXNldCA6IG51bGwpIHtcbiAgQGlmICgkcmVzZXQgIT0gZmFsc2UpIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICB9IEBlbHNlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgfVxufVxuXG4vLy0gTWl4aW46IEhvcml6b250YWwgUnVsZVxuLy8vXG4vLy8gQ2xlYW4gcmVzZXQgZm9yIGRpdmlkZXIgbGluZXMuXG4vLy9cbi8vLyBAcGFyYW0ge3ZhcmlhYmxlfSAkY29sb3IgW3JnYmEoIzAwMCwgLjE1KV0gLSBMaW5lIGNvbG9yXG4vLy8gQHBhcmFtIHt2YXJpYWJsZX0gJHNwYWNpbmcgWzEuNWVtXSAtIE1hcmdpbiBhYm92ZSBhbmQgYmVsb3cgdGhlIGxpbmVcbi8vL1xuLy8vIEBncm91cCBsYXlvdXRcbi8vLyBAZXhhbXBsZVxuLy8vICAgaHIge1xuLy8vICAgICBAaW5jbHVkZSBydWxlKCk7XG4vLy8gICB9XG4vLy8gICBoci5ibHVlIHtcbi8vLyAgICAgQGluY2x1ZGUgcnVsZShibHVlKTtcbi8vLyAgIH1cbi8vLyBAdG9kbyAtICRib3JkZXItd2lkdGggcGFyYW1cblxuQG1peGluIHJ1bGUoJGNvbG9yOiByZ2JhKCMwMDAsIC4xNSksICRzcGFjaW5nOiAxLjVlbSkge1xuICBib3JkZXI6IDA7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkY29sb3I7XG4gIGhlaWdodDogMDtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAkc3BhY2luZyAwO1xufVxuXG5cbi8vLSBNaXhpbjogVGFibGUgTGF5b3V0XG4vLy9cbi8vLyBTZXRzIGVsZW1lbnQgYW5kIGl0cyBjaGlsZHJlbiB0byB1c2UgdGFibGUgbGF5b3V0LiBBbiBvbGQgYnV0IHZlcnkgcG93ZXJmdWxcbi8vLyBjc3MgcHJvcGVydHkgZm9yIGZsZXhpYmxlIGxheW91dCBjaGFsbGVuZ2VzLlxuLy8vXG4vLy8gQHBhcmFtIHt2YXJpYWJsZX0gJGxheW91dC10eXBlIFtmaXhlZF0gLSBgZml4ZWRgIG9yIGBhdXRvYFxuLy8vXG4vLy8gQGdyb3VwIGxheW91dFxuLy8vIEBleGFtcGxlXG4vLy8gICB1bCB7XG4vLy8gICAgIEBpbmNsdWRlIHRhYmxlLWxheW91dCgpO1xuLy8vICAgfVxuLy8vIEBsaW5rIGh0dHA6Ly9jb2RlcGVuLmlvL2Rib3gvcGVuL3B2clpaVlxuLy8vIEBsaW5rIGh0dHA6Ly9jb2xpbnRvaC5jb20vYmxvZy9kaXNwbGF5LXRhYmxlLWFudGktaGVyb1xuXG5AbWl4aW4gdGFibGUtbGF5b3V0KCRsYXlvdXQtdHlwZTogJ2ZpeGVkJykge1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgdGFibGUtbGF5b3V0OiAkbGF5b3V0LXR5cGU7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgd2lkdGg6IDEwMCU7XG5cbiAgPiAqIHtcbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICB9XG59XG5cbi8vLSBNaXhpbjogQWJzb2x1dGUgQ2VudGVyXG4vLy9cbi8vLyBGYXN0ZXIgY2VudGVyaW5nIHdoZW4geW91ciBlbGVtZW50IGhhcyB0byBiZSBwb3NpdGlvbjogYWJzb2x1dGU7XG4vLy9cbi8vLyBAcGFyYW0ge3ZhcmlhYmxlfSAkd2lkdGggWzUwJV0gLSBXaWR0aCBvZiB5b3VyIGl0ZW1cbi8vL1xuLy8vIEBncm91cCBsYXlvdXRcbi8vLyBAZXhhbXBsZVxuLy8vICAgZGl2IHtcbi8vLyAgICAgQGluY2x1ZGUgYWJzb2x1dGUtY2VudGVyKDQwMHB4KTtcbi8vLyAgIH1cbi8vLyBAbGluayBodHRwOi8vY29kZXBlbi5pby9kYm94L3Blbi92TGdwcUxcblxuQG1peGluIGFic29sdXRlLWNlbnRlcigkd2lkdGg6IDUwJSkge1xuICBsZWZ0OiAwO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXgtd2lkdGg6ICR3aWR0aDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMDtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi8vLSBNaXhpbjogTWF0ZXJpYWwgU2hhZG93XG4vLy9cbi8vLyBCb3ggc2hhZG93cyBiYXNlZCBvbiA1IE1hdGVyaWFsIERlc2lnbiBwcmVzZXRzO1xuLy8vXG4vLy8gQHBhcmFtIHt2YXJpYWJsZX0gJHotZGVwdGggWzFdIC0gc2hhZG93IGRpc3RhbmNlIG9uIHotYXhpc1xuLy8vIEBwYXJhbSB7dmFyaWFibGV9ICRzdHJlbmd0aCBbMV0gLSBtdWx0aXBsaWVyIGZvciBzaGFkb3cgc3RyZW5ndGgvZGFya25lc3Ncbi8vLyBAcGFyYW0ge3ZhcmlhYmxlfSAkY29sb3IgWzFdIC0gc2hhZG93IGNvbG9yXG4vLy8gQGdyb3VwIGxheW91dFxuLy8vIEBleGFtcGxlXG4vLy8gICBkaXYge1xuLy8vICAgICBAaW5jbHVkZSBtYXRlcmlhbC1zaGFkb3coMyk7XG4vLy8gICB9XG4vLy8gQGxpbmsgaHR0cDovL2NvZGVwZW4uaW8vZGJveC9wZW4vUmF3QkVXXG5cbkBtaXhpbiBtYXRlcmlhbC1zaGFkb3coJHotZGVwdGg6IDEsICRzdHJlbmd0aDogMSwgJGNvbG9yOiBibGFjaykge1xuICBAaWYgJHotZGVwdGggPT0gMSB7XG4gICAgYm94LXNoYWRvdzogMCByZW0oMXB4KSByZW0oM3B4KSByZ2JhKCRjb2xvciwgJHN0cmVuZ3RoICogMC4xNCksIDAgcmVtKDFweCkgcmVtKDJweCkgcmdiYSgkY29sb3IsICRzdHJlbmd0aCAqIDAuMjQpO1xuICB9XG4gIEBpZiAkei1kZXB0aCA9PSAyIHtcbiAgICBib3gtc2hhZG93OiAwIHJlbSgzcHgpIHJlbSg2cHgpIHJnYmEoJGNvbG9yLCAkc3RyZW5ndGggKiAwLjE2KSwgMCByZW0oM3B4KSByZW0oNnB4KSByZ2JhKCRjb2xvciwgJHN0cmVuZ3RoICogMC4yMyk7XG4gIH1cbiAgQGlmICR6LWRlcHRoID09IDMge1xuICAgIGJveC1zaGFkb3c6IDAgcmVtKDEwcHgpIHJlbSgyMHB4KSByZ2JhKCRjb2xvciwgJHN0cmVuZ3RoICogMC4xOSksIDAgcmVtKDZweCkgcmVtKDZweCkgcmdiYSgkY29sb3IsICRzdHJlbmd0aCAqIDAuMjMpO1xuICB9XG4gIEBpZiAkei1kZXB0aCA9PSA0IHtcbiAgICBib3gtc2hhZG93OiAwIHJlbSgxNXB4KSByZW0oMzBweCkgcmdiYSgkY29sb3IsICRzdHJlbmd0aCAqIDAuMjUpLCAwIHJlbSgxMHB4KSByZW0oMTBweCkgcmdiYSgkY29sb3IsICRzdHJlbmd0aCAqIDAuMjIpO1xuICB9XG4gIEBpZiAkei1kZXB0aCA9PSA1e1xuICAgIGJveC1zaGFkb3c6IDAgcmVtKDIwcHgpIHJlbSg0MHB4KSByZ2JhKCRjb2xvciwgJHN0cmVuZ3RoICogMC4zMCksIDAgcmVtKDE1cHgpIHJlbSgxMnB4KSByZ2JhKCRjb2xvciwgJHN0cmVuZ3RoICogMC4yMik7XG4gIH1cbiAgQGlmICgkei1kZXB0aCA8IDEpIG9yICgkei1kZXB0aCA+IDUpIHtcbiAgICBAd2FybiAnJHotZGVwdGggbXVzdCBiZSBiZXR3ZWVuIDEgYW5kIDUnO1xuICB9XG59XG4iLCJodG1sIHtcbiAgZm9udC1zaXplOiBjYWxjKDEwMDB2dyAvICN7JHNpdGUtYmFzaXN9KTtcblxuICAvLyBzdG9wIHNjYWxpbmcgYWZ0ZXIgbWF4XG4gIEBpbmNsdWRlIG1lZGlhKCc+PW1heC1zaXRlLXdpZHRoJykge1xuICAgIGZvbnQtc2l6ZTogODclO1xuICB9XG5cbiAgQGluY2x1ZGUgbWVkaWEoJzx0YWJsZXQnKSB7XG4gICAgZm9udC1zaXplOiBjYWxjKDEwMDB2dyAvICN7JHNpdGUtYmFzaXN9ICogMyk7XG4gIH1cbn1cblxuYm9keSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZm9udC1zaXplOiAxLjZyZW07XG5cbiAgJi5pcy1sb2NrZWQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgfVxuXG4gICYubm8tcGFkLXRvcCAubWF4LWNvbnRhaW5lciB7XG4gICAgcGFkZGluZy10b3A6IDA7XG4gIH1cblxuICAmLm5vLXBhZC10b3AtZCAubWF4LWNvbnRhaW5lciB7XG4gICAgQGluY2x1ZGUgbWVkaWEoJz49dGFibGV0Jykge1xuICAgICAgcGFkZGluZy10b3A6IDA7XG4gICAgfVxuICB9XG59XG5cbi8vIE1heCBjb250YWluZXIgYmFzZWQgb24gJG1heC1zaXRlLXdpZHRoOlxuLm1heC1jb250YWluZXIge1xuICBAaW5jbHVkZSBjZW50ZXIoJG1heC1zaXRlLXdpZHRoKTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwYWRkaW5nLXRvcDogNy40cmVtO1xufVxuXG4vLyBSZXNwb25zaXZlIGNvbnRhaW5lclxuLmNvbnRhaW5lciB7XG4gIEBpbmNsdWRlIGNlbnRlcigkbWF4LXNpdGUtd2lkdGgsICRtb2JpbGUtZ3V0dGVyKTtcbn1cblxuLmNvbnRhaW5lci1zbWFsbCB7XG4gIEBpbmNsdWRlIGNlbnRlcigkY29udGFpbmVyLXNtYWxsLCAkbW9iaWxlLWd1dHRlcik7XG59XG5cbmhyIHtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjE1KTtcbiAgaGVpZ2h0OiAwO1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDYwcHggMDtcbn1cblxuI2JyZWFrcG9pbnRzIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAzO1xuXG4gIEBpbmNsdWRlIG1lZGlhKCc8dGFibGV0LWwnKSB7XG4gICAgei1pbmRleDogMjtcbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhKCc8dGFibGV0Jykge1xuICAgIHotaW5kZXg6IDE7XG4gIH1cbn1cblxuIiwiLy8gUHJvamVjdCBzcGVjaWZpYyBtaXhpbnNcbi8vIEZvciBvdGhlciBtaXhpbnMgc2VlIGJvd2VyL2tuYXBzYWNrXG5cbkBtaXhpbiBjZW50ZXIoJG1heC13aWR0aDogJG1heC1zaXRlLXdpZHRoLCAkcGFkOiAwKSB7XG4gIHdpZHRoOiBhdXRvO1xuICBtYXgtd2lkdGg6ICRtYXgtd2lkdGg7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBwYWRkaW5nLWxlZnQ6ICRwYWQ7XG4gIHBhZGRpbmctcmlnaHQ6ICRwYWQ7XG59XG5cbkBtaXhpbiBjb3ZlcigkeDogY2VudGVyLCAkeTogY2VudGVyLCAkc2l6ZTogY292ZXIpIHtcbiAgYmFja2dyb3VuZC1zaXplOiAkc2l6ZTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogJHggJHk7XG59XG5cbi8vIE1peGluIHRvIHNldCBzaXplIG9mIGVsZW1lbnRzIG9uIGdyaWRcbi8vIFVzYWdlOiBncmlkLXVuaXQod2lkdGgsIDQpO1xuQG1peGluIGdyaWQtdW5pdCgkcHJvcGVydHksICRjb2xzLi4uKSB7XG4gICR2YWx1ZXM6ICcnO1xuXG4gIEBlYWNoICRjb2wgaW4gJGNvbHMge1xuICAgICR2YWx1ZXM6ICN7JHZhbHVlc30gY2FsYygxMDB2dyAvICN7JGdyaWQtY29sc30gKiAjeyRjb2x9KTtcbiAgfVxuXG4gICN7JHByb3BlcnR5fTogJHZhbHVlcztcblxuICBAaW5jbHVkZSBtZWRpYSgnPj1tYXgtc2l0ZS13aWR0aCcpIHtcbiAgICAkdmFsdWVzOiAnJztcblxuICAgIEBlYWNoICRjb2wgaW4gJGNvbHMge1xuICAgICAgJHZhbHVlczogI3skdmFsdWVzfSBjYWxjKCN7JGdyaWQtd2lkdGh9IC8gI3skZ3JpZC1jb2xzfSAqICN7JGNvbH0pO1xuICAgIH1cblxuICAgICN7JHByb3BlcnR5fTogJHZhbHVlcztcbiAgfVxufVxuXG5AbWl4aW4gcmF0aW8tYm94KCRyYXRpbzogMS8xKSB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAmOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGhlaWdodDogMDtcbiAgICBwYWRkaW5nLXRvcDogKDEgLyAkcmF0aW8pICogMTAwJTtcbiAgfVxufVxuIiwiLy8gRmxleCBDbGFzc2VzXG4uZmxleCB7XG4gIGRpc3BsYXk6IGZsZXg7XG5cbiAgJi53cmFwIHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gIH1cblxuICAmLmotc2Ige1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgfVxuXG4gICYuai1jIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgfVxuXG4gICYuYS1jIHtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB9XG5cbiAgJi5jZW50ZXIge1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIH1cbn1cbiIsIkBrZXlmcmFtZXMgZGV2aWNlLWludHJvIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cblxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG5Aa2V5ZnJhbWVzIGZhZGUtb3V0LXVwIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApIHRyYW5zbGF0ZVgoMCk7XG4gIH1cblxuICA1MCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMHJlbSkgdHJhbnNsYXRlWCgzMHJlbSk7XG4gIH1cblxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTByZW0pIHRyYW5zbGF0ZVgoMzByZW0pO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgc2NhbGUtaW4tbG9hZGVyIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwLjUpO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgc2NhbGUtaW4ge1xuICAzMyUsIDEwMCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBzY2FsZS1vdXQge1xuICAzMyUsIDEwMCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBzbGlkZS11cCB7XG4gIDI1JSwgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMjBweCwgLTUzcHgpO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgc2xpZGUtZG93biB7XG4gIDI1JSwgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMjBweCwgNTNweCk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyByYWRpYXRlIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuXG4gIDQwJSB7XG4gICAgb3BhY2l0eTogLjg7XG4gIH1cblxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBsaW5lYW5pbSB7XG4gIHRvIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHN0cm9rZS1kYXNob2Zmc2V0OiA1O1xuICB9XG59XG5cblxuQGtleWZyYW1lcyBmYWRlSW5VcCB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMHJlbSk7XG4gIH1cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBmYWRlT3V0VXAge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMTA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICB9XG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMHJlbSk7XG4gIH1cbn1cbiIsIi5hdWRpby1kZW1vIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHotaW5kZXg6IDM7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuXG4gICYuaXMtYWN0aXZlIHtcbiAgICAuYXVkaW8tZGVtby1tb2RhbCB7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgIH1cblxuICAgIC5tb2RhbC1jb250ZW50IHtcbiAgICAgIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xuXG4gICAgICBoMyB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICAgICAgdHJhbnNpdGlvbi1kZWxheTogMTAwbXM7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmF1ZGlvLWRlbW8tdWkge1xuICAgICAgb3BhY2l0eTogMTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKSBzY2FsZSgxKTtcbiAgICAgIHRyYW5zaXRpb24tZGVsYXk6IDIyNW1zO1xuICAgIH1cblxuICAgIC5tb3JlLXNhbXBsZXMtY3RhIHtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgICB0cmFuc2l0aW9uLWRlbGF5OiA0MDBtcztcbiAgICB9XG5cbiAgICAuYXVkaW8tZGVtby1jdGEge1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDE2MHB4KTtcblxuICAgICAgJjpob3ZlcixcbiAgICAgICY6Zm9jdXMge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTYwcHgpICFpbXBvcnRhbnQ7XG4gICAgICB9XG5cbiAgICAgIC5zdmctYXVkaW8ge1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgfVxuXG4gICAgICAuc3ZnLWNsb3NlIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLmF1ZGlvLWRlbW8tbW9kYWwge1xuICBAaW5jbHVkZSBncmlkLXVuaXQocGFkZGluZywgMik7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBvcGFjaXR5OiAwO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDI1MG1zO1xuXG4gIC5tb2RhbC1iZyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKCRuYXZ5LCAwLjkpO1xuICB9XG5cbiAgLm1vZGFsLWNvbnRlbnQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAyO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgIGgzIHtcbiAgICAgIGZvbnQtZmFtaWx5OiAkZm9udDtcbiAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0yMHB4KTtcbiAgICAgIG9wYWNpdHk6IDA7XG4gICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDI1MG1zLCB0cmFuc2Zvcm0gNTAwbXMgZWFzZTtcbiAgICB9XG4gIH1cbn1cblxuLm1vcmUtc2FtcGxlcy1jdGEge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMjBweCk7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMjUwbXMsIHRyYW5zZm9ybSA1MDBtcyBlYXNlO1xufVxuXG4uYXVkaW8tZGVtby11aSB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICBiYWNrZ3JvdW5kOiAkd2hpdGU7XG4gIGJveC1zaGFkb3c6IDAgMjJweCAyOXB4IHJnYmEoMCwgMCwgMCwgMC44KTtcbiAgYm9yZGVyLXJhZGl1czogOXB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBvcGFjaXR5OiAwO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTIwcHgpIHNjYWxlKDAuOSk7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMjUwbXMsIHRyYW5zZm9ybSA1MDBtcyBlYXNlO1xufVxuXG4uYXVkaW8tcGxheWVyIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRib3JkZXItYmx1ZTtcbn1cblxuLmF1ZGlvLWNvbnRyb2wge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmc6IDQwcHg7XG4gIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICRib3JkZXItYmx1ZTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuXG4gIGRpdiB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBtYXJnaW46IGF1dG87XG4gICAgaGVpZ2h0OiAyNXB4O1xuICB9XG59XG5cbi5hdWRpby12aXN1YWwge1xuICBmbGV4OiAxO1xufVxuXG4uZGVtby11aS10b2dnbGVzIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uYXVkaW8tdG9nZ2xlIHtcbiAgQGluY2x1ZGUgZ3JpZC11bml0KHBhZGRpbmcsIDIsIDUpO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGZsZXg6IDE7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAmLnRvZ2dsZS1ub3JtYWwge1xuICAgICYuaXMtYWN0aXZlIC50b2dnbGUtYmFyOjphZnRlciB7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gICAgfVxuXG4gICAgLnRvZ2dsZS1iYXI6OmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQ6ICRncmF5O1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMSUpO1xuICAgIH1cbiAgfVxuXG4gICYudG9nZ2xlLXdoaXNwZXIge1xuICAgICYuaXMtYWN0aXZlIC50b2dnbGUtYmFyOjphZnRlciB7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gICAgfVxuXG4gICAgLnRvZ2dsZS1iYXI6OmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQ6ICRyZWQ7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMSUpO1xuICAgIH1cbiAgfVxufVxuXG4udG9nZ2xlLWJhciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMHB4O1xuICBiYWNrZ3JvdW5kOiAkYmx1ZS1saWdodDtcblxuICAmOjphZnRlciB7XG4gICAgY29udGVudDogJyc7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTBweDtcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gNzUwbXMgJGVhc2UtaW4tb3V0LXF1aW50O1xuICB9XG59XG5cbi50b2dnbGUtc3dpdGNoIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIG1hcmdpbjogYXV0bztcbiAgd2lkdGg6IDkycHg7XG4gIGhlaWdodDogMzlweDtcbiAgYmFja2dyb3VuZDogI0U5RjFGNDtcbiAgYm9yZGVyLXJhZGl1czogNDQwcHg7XG4gIGN1cnNvcjogcG9pbnRlcjtcblxuICAmLmlzLXdoaXNwZXIge1xuICAgIC5zd2l0Y2gtaW5uZXIge1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDUzJSk7XG4gICAgICBiYWNrZ3JvdW5kOiAkcmVkO1xuXG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwIDAgcmdiYSgwLCAwLCAwLCAwLjc1KTtcbiAgICAgICAgdHJhbnNpdGlvbi1kZWxheTogMG1zO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5zd2l0Y2gtaW5uZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IDNweDtcbiAgICBsZWZ0OiA0cHg7XG4gICAgd2lkdGg6IDU1cHg7XG4gICAgaGVpZ2h0OiAzM3B4O1xuICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcbiAgICBib3JkZXItcmFkaXVzOiA0NHB4O1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDQwMG1zLCB0cmFuc2Zvcm0gNzUwbXMgJGVhc2UtaW4tb3V0LXF1aW50O1xuICAgIC8vIHRyYW5zaXRpb246IGJhY2tncm91bmQgNDAwbXMsIHRyYW5zZm9ybSA3NTBtcyBlYXNlO1xuXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBib3JkZXItcmFkaXVzOiA0NHB4O1xuICAgICAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDAgM3B4ICNBMUI4Qzg7XG4gICAgICB0cmFuc2l0aW9uOiBib3gtc2hhZG93IDM1MG1zIGVhc2U7XG4gICAgICB0cmFuc2l0aW9uLWRlbGF5OiAyNTBtcztcbiAgICB9XG4gIH1cbn1cblxuLmF1ZGlvLWRlbW8tY3RhIHtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgYmFja2dyb3VuZDogJHJlZDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBwb2ludGVyLWV2ZW50czogYXV0bztcblxuICAmLnNtYWxsIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGJvcmRlci1yYWRpdXM6IDY1Ni4wOTFweDtcbiAgfVxuXG4gICYuZmx5b3V0IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA3NSU7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogNXB4O1xuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDVweDtcbiAgICBib3gtc2hhZG93OiAwIDVweCAxMHB4IHJnYmEoMCwgMCwgMCwgMC4yNSk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDE2MHB4KTtcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gNTAwbXMgZWFzZTtcblxuICAgICYuc3RheS1oaWRkZW4ge1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDE2MHB4KTtcblxuICAgICAgJjpob3ZlcixcbiAgICAgICY6Zm9jdXMge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTYwcHgpO1xuICAgICAgfVxuICAgIH1cblxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gICAgfVxuICB9XG5cbiAgLmF1ZGlvLWljb24ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nOiAxLjZyZW0gMS4ycmVtIDEuNnJlbSAxLjhyZW07XG4gICAgYm9yZGVyLXJpZ2h0OiAycHggc29saWQgJGJvcmRlci1yZWQ7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG5cbiAgICBzdmcge1xuICAgICAgd2lkdGg6IDIuNHJlbTtcbiAgICAgIGhlaWdodDogMnJlbTtcbiAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMjUwbXM7XG5cbiAgICAgICYuc3ZnLWNsb3NlIHtcbiAgICAgICAgd2lkdGg6IDI1cHg7XG4gICAgICAgIGhlaWdodDogMjVweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuaWNvbi1oZWFyIHtcbiAgICBoZWlnaHQ6IDIuNHJlbTtcbiAgfVxuXG4gIC5zdmctY2xvc2Uge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgbWFyZ2luOiBhdXRvO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cblxuICAuYXVkaW8tY3RhLXRleHQge1xuICAgIGZsZXg6IDE7XG4gICAgZm9udC1zaXplOiAxLjVyZW07XG4gICAgcGFkZGluZzogMCAyLjVyZW0gMCAxLjZyZW07XG4gICAgZm9udC1mYW1pbHk6ICRmb250O1xuICAgIGZvbnQtd2VpZ2h0OiAkbWVkaXVtO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxuXG4gIHNwYW4ge1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gIH1cbn0iLCIuY3RhLWFycm93LXdyYXAge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbi5jdGEtYXJyb3cge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBwYWRkaW5nOiAxMHB4IDA7XG4gIHRyYW5zaXRpb246IGFsbCAuM3MgJGVhc2Utb3V0LWJhY2s7XG5cbiAgJjpub3QoLmN0YS1saWdodCk6aG92ZXIge1xuICAgIHN2ZyB7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTNweCk7XG4gICAgfVxuICAgIC8vIHN2ZyBwYXRoIHtcbiAgICAvLyAgIGZpbGw6ICNlZWU7XG4gICAgLy8gfVxuICAgIC5jdGEtYXJyb3ctaWNvbjo6YmVmb3JlIHtcbiAgICAgIGJveC1zaGFkb3c6IDBweCAwcHggMjBweCByZ2JhKCRuYXZ5LCAwLjEpLCAwcHggMHB4IDVweCByZ2JhKCRuYXZ5LCAwLjA1KTtcbiAgICB9XG4gfVxuXG4gICYuY3RhLWxpZ2h0IHtcbiAgICAuY3RhLWFycm93LXRleHQge1xuICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICB9XG5cbiAgICAuY3RhLWFycm93LWljb24ge1xuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgYmFja2dyb3VuZDogcmdiYSgkd2hpdGUsIDAuMSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi5jdGEtZ3JheSB7XG4gICAgLmN0YS1hcnJvdy1pY29uIHtcbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMjExLCAyMjcsIDIzNCwgMC41KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmLmN0YS1kYXJrIHtcbiAgICAuY3RhLWFycm93LXRleHQge1xuICAgICAgY29sb3I6ICRncmF5O1xuICAgIH1cblxuICAgIC5jdGEtYXJyb3ctaWNvbiB7XG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDIxMSwgMjI3LCAyMzQsIDAuNSk7XG4gICAgICB9XG5cbiAgICAgIHN2ZyBwYXRoIHtcbiAgICAgICAgZmlsbDogJGdyYXk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi5jdGEtZGFyay1yZWQge1xuICAgIC5jdGEtYXJyb3ctdGV4dCB7XG4gICAgICBjb2xvcjogJHJlZDtcbiAgICB9XG5cbiAgICAuY3RhLWFycm93LWljb24ge1xuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgYmFja2dyb3VuZDogcmdiYSgyMTEsIDIyNywgMjM0LCAwLjUpO1xuICAgICAgfVxuXG4gICAgICBzdmcgcGF0aCB7XG4gICAgICAgIGZpbGw6ICRyZWQ7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi5yb3RhdGUge1xuICAgIC5jdGEtYXJyb3ctaWNvbiB7XG4gICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XG4gICAgfVxuXG4gICAgJjpob3ZlciB7XG4gICAgICBzdmcge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwcHgpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4uY3RhLWFycm93LXRleHQge1xuICBtYXJnaW4tcmlnaHQ6IDIuMnJlbTtcbiAgZm9udC1mYW1pbHk6ICRmb250LWJvb2s7XG4gIGNvbG9yOiAkdGV4dC1kYXJrO1xuICBmb250LXNpemU6IDEuMXJlbTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cblxuLmN0YS1hcnJvdy1pY29uIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB0cmFuc2l0aW9uOiBhbGwgLjNzICRlYXNlLW91dC1iYWNrO1xuXG4gICY6OmJlZm9yZSB7XG4gICAgY29udGVudDogJyc7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDIzcHg7XG4gICAgaGVpZ2h0OiAyM3B4O1xuICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgei1pbmRleDogMTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgLjNzICRlYXNlLW91dC1iYWNrO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlciBjZW50ZXI7XG4gIH1cblxuICBzdmcge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB3aWR0aDogMi4zcmVtO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNnB4KTtcbiAgICB6LWluZGV4OiAyO1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAuM3MgJGVhc2Utb3V0LWJhY2s7XG5cbiAgICBwYXRoIHtcbiAgICAgIHRyYW5zaXRpb246IGZpbGwgMjUwbXM7XG4gICAgfVxuICB9XG59XG4iLCIuY3RhLWJ1dHRvbiB7XG4gIGNvbG9yOiAkbmF2eTtcbiAgYm9yZGVyOiAycHggc29saWQgJG5hdnk7XG4gIGJvcmRlci1yYWRpdXM6IDk5OTlweDtcbiAgcGFkZGluZzogLjhyZW0gMi4ycmVtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGZvbnQtc2l6ZTogMS40cmVtO1xuICB0cmFuc2l0aW9uOiBjb2xvciAyNTBtcywgYmFja2dyb3VuZC1jb2xvciAyNTBtcztcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogc3VicGl4ZWwtYW50aWFsaWFzZWQ7XG5cbiAgJjpob3ZlciB7XG4gICAgY29sb3I6ICRvZmYtd2hpdGUyO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXZ5O1xuICB9XG5cbiAgJi5yZWQge1xuICAgIGNvbG9yOiAkcmVkO1xuICAgIGJvcmRlci1jb2xvcjogJHJlZDtcblxuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHJlZDtcbiAgICAgIGNvbG9yOiAkb2ZmLXdoaXRlMjtcbiAgICB9XG4gIH1cbn1cblxuLmJ0bixcbmlucHV0W3R5cGU9c3VibWl0XSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZzogMTJweCAyMnB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGZvbnQtc2l6ZTogMTdweDtcbiAgYmFja2dyb3VuZDogJHJlZDtcbiAgY29sb3I6ICNmZmY7XG4gIGJvcmRlci1yYWRpdXM6IDk5OTlweDtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogc3VicGl4ZWwtYW50aWFsaWFzZWQ7XG4gIGJvcmRlcjogMi4yNjc4NXB4ICBzb2xpZCAjRjk1NTNBO1xuICBsaW5lLWhlaWdodDogMTE5LjMyJTtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgZm9udC1mYW1pbHk6ICRmb250O1xuXG4gICYub3V0bGluZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgIGNvbG9yOiAkcmVkO1xuICAgIGJvcmRlcjogMi4yNjc4NXB4ICBzb2xpZCAkcmVkO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcmVkO1xuICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgIGJvcmRlcjogMi4yNjc4NXB4ICBzb2xpZCAkcmVkO1xuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhKCc8bW9iaWxlLWwnKSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZzogMTZweCAyMnB4O1xuICB9XG5cbiAgJjpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0RDMzcxQztcbiAgICBib3JkZXI6IDIuMjY3ODVweCBzb2xpZCAjREMzNzFDO1xuICB9XG59XG4iLCJmb290ZXIge1xuICAvLyBAaW5jbHVkZSBncmlkLXVuaXQocGFkZGluZywgMywgNCwgNSwgNCk7XG4gIHBhZGRpbmc6IDdyZW0gN3JlbSA3cmVtIDlyZW07XG4gIGZvbnQtZmFtaWx5OiAkZm9udDtcbiAgZm9udC13ZWlnaHQ6ICRtZWRpdW07XG4gIGJhY2tncm91bmQ6ICRuYXZ5O1xuICB6LWluZGV4OiAyMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG5mb290ZXIgLmxvZ28tbWFyayB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA3LjNyZW07XG59XG4uZm9vdGVyLXRvcCB7XG4gIEBpbmNsdWRlIG1lZGlhKCc8dGFibGV0Jykge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIH1cbn1cblxuLmZvb3Rlci1sb2dvIHtcbiAgcGFkZGluZy1ib3R0b206IDQ1cHg7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkYm9yZGVyLWJsdWUtYWxwaGE7XG5cbiAgQGluY2x1ZGUgbWVkaWEoJz49dGFibGV0Jykge1xuICAgIGZsZXg6IDE7XG4gICAgcGFkZGluZy1yaWdodDogMjBweDtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAkYm9yZGVyLWJsdWUtYWxwaGE7XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYSgnPHRhYmxldCcpIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMjVweDtcbiAgfVxuXG4gIC5zdmctbG9nby10eXBlIHtcbiAgICB3aWR0aDogMTAuMnJlbTtcbiAgICBwYXRoIHtcbiAgICAgIGZpbGw6ICR3aGl0ZTtcbiAgICB9XG4gIH1cblxuICBhZGRyZXNzIHtcbiAgICBjb2xvcjogJGJsdWUtZ3JheTtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjVlbTtcbiAgICBmb250LXNpemU6IDEuNHJlbTtcbiAgfVxufVxuXG4uZm9vdGVyLXNpdGVtYXAge1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGJvcmRlci1ibHVlLWFscGhhO1xuXG4gIEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcpIHtcbiAgICBAaW5jbHVkZSBncmlkLXVuaXQocGFkZGluZy1sZWZ0LCAyKTtcbiAgICBmbGV4OiAyLjU7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgJGJvcmRlci1ibHVlLWFscGhhO1xuICB9XG5cbiAgQGluY2x1ZGUgbWVkaWEoJzx0YWJsZXQnKSB7XG4gICAgcGFkZGluZzogMjVweCAwO1xuICB9XG59XG5cbi5zaXRlbWFwLWNvbCB7XG4gIGZsZXg6IDE7XG4gIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG5cbiAgYSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgICBwYWRkaW5nLWJvdHRvbTogMTBweDtcbiAgICBmb250LXNpemU6IDEuM3JlbTtcbiAgfVxufVxuXG4uZm9vdGVyLXNpZ251cCB7XG4gIGZvbnQtc2l6ZTogMS4zcmVtO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGJvcmRlci1ibHVlLWFscGhhO1xuXG4gIEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcpIHtcbiAgICBAaW5jbHVkZSBncmlkLXVuaXQocGFkZGluZy1sZWZ0LCAxLjUpO1xuICAgIGZsZXg6IDEuMjU7XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYSgnPHRhYmxldCcpIHtcbiAgICBwYWRkaW5nOiAyNXB4IDA7XG4gIH1cblxuICBzcGFuIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICB9XG59XG5cbi5mb290ZXItYm90dG9tIHtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmctdG9wOiA0NXB4O1xuXG4gIEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcpIHtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB9XG5cbiAgQGluY2x1ZGUgbWVkaWEoJzx0YWJsZXQnKSB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBwYWRkaW5nLXRvcDogMjVweDtcbiAgfVxuXG4gIHAge1xuXG4gICAgY29sb3I6ICM5NEFDQkU7XG4gICAgZm9udC1zaXplOiAxLjNyZW07XG5cbiAgICBhIHtcbiAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgICAgZm9udC1zaXplOiAxLjJyZW07XG5cbiAgICAgICY6aG92ZXIge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLmZvb3Rlci1zb2NpYWwge1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gIEBpbmNsdWRlIG1lZGlhKCc8dGFibGV0Jykge1xuICAgIHBhZGRpbmctYm90dG9tOiAyNXB4O1xuICB9XG5cbiAgYSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHdpZHRoOiAxLjhyZW07XG4gICAgaGVpZ2h0OiAxLjhyZW07XG4gICAgbWFyZ2luLXJpZ2h0OiAycmVtO1xuICB9XG5cbiAgc3ZnIHtcbiAgICB3aWR0aDogYXV0bztcbiAgICBoZWlnaHQ6IDEwMCU7XG4gIH1cbn1cbiIsImJvZHkubGlnaHQtbmF2IHtcbiAgaGVhZGVyIHtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDApO1xuICB9XG5cbiAgbmF2IGEge1xuXG4gICAgc3BhbiB7XG4gICAgICBjb2xvcjogJHRleHQtZ3JheTtcbiAgICB9XG5cbiAgICAmLmlzLWFjdGl2ZSB7XG4gICAgICBzcGFuIHtcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTtcblxuICAgICAgICBAaW5jbHVkZSBtZWRpYSgnPHRhYmxldCcpIHtcbiAgICAgICAgICBjb2xvcjogJG5hdnk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAmOmhvdmVyIHNwYW4ge1xuICAgICAgY29sb3I6ICR3aGl0ZTtcblxuICAgICAgQGluY2x1ZGUgbWVkaWEoJzx0YWJsZXQnKSB7XG4gICAgICAgIGNvbG9yOiAkbmF2eTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAubG9nbyBzdmcgcGF0aCB7XG4gICAgZmlsbDogJHdoaXRlO1xuICB9XG59XG5cbmhlYWRlciB7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAwICRtb2JpbGUtZ3V0dGVyO1xuICBtYXgtd2lkdGg6ICRtYXgtc2l0ZS13aWR0aDtcbiAgYmFja2dyb3VuZDogJHdoaXRlO1xuICB6LWluZGV4OiAzMDtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAyMjVtcywgdHJhbnNmb3JtIDM1MG1zIGVhc2U7XG5cbiAgQGluY2x1ZGUgbWVkaWEoJzx0YWJsZXQnKSB7XG4gICAgcGFkZGluZzogMTVweCAxNXB4IDE4cHggNDZweDtcbiAgICBwYWRkaW5nLXRvcDogMTVweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMThweDtcbiAgfVxuXG4gICYuaXMtaGlkZGVuIHtcbiAgICBAaW5jbHVkZSBtZWRpYSgnPj10YWJsZXQnKSB7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMCUpO1xuICAgIH1cbiAgfVxufVxuXG4ubG9nbyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIC8vIG1heC13aWR0aDogMjAuMnJlbTtcblxuICBpbWcge1xuICAgIHdpZHRoOiAyMDJweDtcbiAgICBoZWlnaHQ6IDQycHg7XG4gIH1cbn1cblxuLy9maXhlZCBsb2dvIG1hcmtcblxuLmxvZ28tbWFyayB7XG4gIHdpZHRoOiAyLjRyZW07XG4gIG1hcmdpbi1yaWdodDogMS44cmVtO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMi40cmVtO1xuICBsZWZ0OiA1cmVtO1xuICB6LWluZGV4OiAzMTtcblxuICBAaW5jbHVkZSBtZWRpYSgnPHRhYmxldCcpIHtcbiAgICB0b3A6IDE2cHg7XG4gICAgbGVmdDogMTVweDtcbiAgICB3aWR0aDogMThweDtcbiAgICBoZWlnaHQ6IDEzcHg7XG4gIH1cblxuICBzdmcge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogYXV0bztcbiAgfVxufVxuXG4ubG9nby10eXBlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0b3A6IC4ycmVtO1xuICB3aWR0aDogMTAuMnJlbTtcbiAgbWFyZ2luLWxlZnQ6IDIuNHJlbTtcblxuICBAaW5jbHVkZSBtZWRpYSgnPHRhYmxldCcpIHtcbiAgICB3aWR0aDogNzVweDtcbiAgICBoZWlnaHQ6IDE4cHg7XG4gICAgbWFyZ2luOiAwO1xuICB9XG5cbiAgc3ZnIHBhdGgge1xuICAgIHRyYW5zaXRpb246IGZpbGwgMjUwbXM7XG4gIH1cbn1cblxubmF2IHtcbiAgbWFyZ2luOiAwIDIwcHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICBAaW5jbHVkZSBtZWRpYSgnPHRhYmxldCcpIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDdweDtcbiAgICByaWdodDogMTFweDtcbiAgICB3aWR0aDogMTU3cHg7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDMwcHggMThweDtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMTUwbXM7XG5cbiAgICAmLmlzLWFjdGl2ZSB7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgICAgcG9pbnRlci1ldmVudHM6IGF1dG87XG5cbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgICAgIH1cblxuICAgICAgYSwgLm5hdi1jdGEge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgICB9XG5cbiAgICAgIC5uYXYtY3RhIHtcbiAgICAgICAgdHJhbnNpdGlvbi1kZWxheTogNTAwbXM7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJjo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgYmFja2dyb3VuZDogJHdoaXRlO1xuICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gICAgYm94LXNoYWRvdzogMCAycHggOHB4IHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgICB6LWluZGV4OiAtMTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDApO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IHRvcCByaWdodDtcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gNzUwbXMgJGVhc2luZztcbiAgfVxuXG4gIGEge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBmb250LXNpemU6IDEuNnJlbTtcbiAgICBwYWRkaW5nOiAyLjZyZW0gMnJlbTtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEoJzx0YWJsZXQnKSB7XG4gICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICBmb250LWZhbWlseTogJGZvbnQ7XG4gICAgICBmb250LXdlaWdodDogJG1lZGl1bTtcbiAgICAgIHBhZGRpbmc6IDVweCAwO1xuICAgICAgb3BhY2l0eTogMDtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTBweCk7XG4gICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDUwMG1zLCB0cmFuc2Zvcm0gMXMgJGVhc2luZztcblxuICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCA4IHtcbiAgICAgICAgJjpudGgtY2hpbGQoI3skaX0pIHtcbiAgICAgICAgICB0cmFuc2l0aW9uLWRlbGF5OiAyNTBtcyArICgkaSAqIDUwKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgICYubW9iaWxlLW9ubHkge1xuICAgICAgQGluY2x1ZGUgbWVkaWEoJz49dGFibGV0Jykge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuICAgIH1cblxuICAgICYuaXMtYWN0aXZlIHtcbiAgICAgIHNwYW4ge1xuICAgICAgICBjb2xvcjogJG5hdnk7XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoJz49dGFibGV0Jykge1xuICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKCRuYXZ5LCAuMyk7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtZWRpYSgnPHRhYmxldCcpIHtcbiAgICAgICAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkIHJnYmEoJG5hdnksIC4zKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIHNwYW4ge1xuICAgICAgY29sb3I6ICRncmF5O1xuICAgICAgdHJhbnNpdGlvbjogY29sb3IgMjUwbXMsIGJvcmRlci1jb2xvciAyNTBtcztcblxuICAgICAgQGluY2x1ZGUgbWVkaWEoJzx0YWJsZXQnKSB7XG4gICAgICAgIHBhZGRpbmc6IDAgMCAwIDdweDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmOmhvdmVyIHNwYW4ge1xuICAgICAgY29sb3I6ICRuYXZ5O1xuICAgIH1cbiAgfVxufVxuXG4ubmF2LWN0YSB7XG5cbiAgYSB7XG4gICAgQGluY2x1ZGUgbWVkaWEoJzx0YWJsZXQnKSB7XG4gICAgICBmb250LXNpemU6IDEzcHg7XG4gICAgICBwYWRkaW5nOiA2cHggMTJweDtcbiAgICB9XG4gIH1cblxuICAmLmRlc2t0b3Atb25seSB7XG4gICAgQGluY2x1ZGUgbWVkaWEoJzx0YWJsZXQnKSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxuXG4gICYubW9iaWxlLW9ubHkge1xuICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwcHgpO1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgNTAwbXMsIHRyYW5zZm9ybSAxcyAkZWFzaW5nO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEoJz49dGFibGV0Jykge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cbn1cblxuLm1vYmlsZS10b2dnbGUge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDdweDtcbiAgcmlnaHQ6IDE0cHg7XG4gIHdpZHRoOiAzNnB4O1xuICBoZWlnaHQ6IDM2cHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMzUwbXM7XG5cbiAgQGluY2x1ZGUgbWVkaWEoJz49dGFibGV0Jykge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAmOjphZnRlciB7XG4gICAgY29udGVudDogJyc7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAzNnB4O1xuICAgIGhlaWdodDogMzZweDtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgYm94LXNoYWRvdzogMCA2LjIwNjlweCAxMi40MTM4cHggcmdiYSgwLCAwLCAwLCAwLjEpO1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMXM7XG4gIH1cblxuICAmLmlzLWFjdGl2ZSB7XG4gICAgLy8gYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsMjU1LDI1NSwwKTtcblxuICAgICY6OmFmdGVyIHtcbiAgICAgIG9wYWNpdHk6IDA7XG4gICAgfVxuXG4gICAgLm1vYmlsZS1pY29uIHtcbiAgICAgIHRyYW5zZm9ybTogcm90YXRlKC0yMjVkZWcpO1xuICAgIH1cblxuICAgIC5saW5lLXRvcCB7XG4gICAgICBzdHJva2UtZGFzaG9mZnNldDogMTMuODM1ODtcbiAgICAgIG9wYWNpdHk6IDA7XG4gICAgICB0cmFuc2l0aW9uLWRlbGF5OiAwcztcbiAgICB9XG5cbiAgICAubGluZS1ib3R0b20ge1xuICAgICAgc3Ryb2tlLWRhc2hvZmZzZXQ6IC0xMy44MzU4O1xuICAgICAgb3BhY2l0eTogMDtcbiAgICAgIHRyYW5zaXRpb24tZGVsYXk6IDBzO1xuICAgIH1cblxuICAgIC5saW5lLWNyb3NzIHtcbiAgICAgIHN0cm9rZS1kYXNoYXJyYXk6IDEzLjgzNTggMTMuODM1ODtcbiAgICAgIHN0cm9rZS1kYXNob2Zmc2V0OiAwO1xuICAgICAgdHJhbnNpdGlvbi1kZWxheTogNTAwbXM7XG4gICAgfVxuICB9XG5cbiAgLm1vYmlsZS1pY29uIHtcbiAgICBoZWlnaHQ6IDI1cHg7XG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDEuMjVzICRlYXNpbmc7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMTUwbXM7XG4gIH1cblxuICBsaW5lIHtcbiAgICBzdHJva2UtZGFzaGFycmF5OiAxMy44MzU4IDEzLjgzNTg7XG4gICAgc3Ryb2tlLWRhc2hvZmZzZXQ6IDA7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAzNTBtcywgc3Ryb2tlLWRhc2hvZmZzZXQgMXMgJGVhc2luZywgc3Ryb2tlLWRhc2hhcnJheSAxcyAkZWFzaW5nO1xuXG4gICAgJi5saW5lLXRvcCxcbiAgICAmLmxpbmUtYm90dG9tIHtcbiAgICAgIHRyYW5zaXRpb24tZGVsYXk6IDM1MG1zO1xuICAgIH1cblxuICAgICYubGluZS1jcm9zcyB7XG4gICAgICBzdHJva2UtZGFzaGFycmF5OiAwIDEzLjgzNTg7XG4gICAgICBzdHJva2UtZGFzaG9mZnNldDogLTYuNDtcbiAgICB9XG4gIH1cbn1cbiIsImZvcm0ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgaW5wdXQsIHNlbGVjdCwgb3B0aW9uLCB0ZXh0YXJlYSB7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgfVxuXG4gICYuemlwLWZvcm0ge1xuICAgIEBpbmNsdWRlIGdyaWQtdW5pdCh3aWR0aCwgNyk7XG4gICAgbWluLXdpZHRoOiAxMjVweDtcbiAgfVxuXG4gICYuZW1haWwtZm9ybSB7XG4gICAgQGluY2x1ZGUgZ3JpZC11bml0KHdpZHRoLCAxMCk7XG4gICAgbWluLXdpZHRoOiAyNTBweDtcblxuICAgIC5maWVsZCB7XG4gICAgICBpbnB1dCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwQzFCMjY7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgcGFkZGluZzogMTRweCAyMHB4IDE0cHggMjVweDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuY3RhLWFycm93LmN0YS1kYXJrIC5jdGEtYXJyb3ctaWNvbiB7XG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgfVxuXG4gICAgICBzdmcge1xuICAgICAgICB3aWR0aDogMjhweDtcblxuICAgICAgICBwYXRoIHtcbiAgICAgICAgICBmaWxsOiAjRjk1NTNBO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnN1Ym1pdC1sYWJlbCB7XG4gICAgICByaWdodDogMTBweDtcbiAgICB9XG4gIH1cbn1cblxuLnN1Ym1pdC1sYWJlbCB7XG4gIC5jdGEtYXJyb3cge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG5cbiAgaW5wdXQge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgb3BhY2l0eTogMDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIH1cbn1cblxuLmZpZWxkIHtcbiAgaW5wdXQsIHRleHRhcmVhIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBib3JkZXI6IDJweCBzb2xpZCByZ2JhKCRncmF5LCAwLjUpO1xuICAgIGNvbG9yOiAkZ3JheTtcbiAgICBwYWRkaW5nOiAxMHB4IDEwcHggMTBweCAyMHB4O1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgb3V0bGluZTogMDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgdHJhbnNpdGlvbjogYm9yZGVyIDI1MG1zO1xuXG4gICAgJi5lcnJvciB7XG4gICAgICBib3JkZXItY29sb3I6IHJlZDtcbiAgICB9XG4gIH1cblxuICBpbnB1dCB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICBib3JkZXItcmFkaXVzOiA5OTk5cHg7XG5cbiAgICAmLmlucHV0LWRhcmsge1xuICAgICAgYmFja2dyb3VuZDogJG5hdnk7XG4gICAgfVxuICB9XG59XG5cbmlucHV0OmZvY3VzLCBpbnB1dDpob3ZlciwgdGV4dGFyZWE6Zm9jdXMsIHRleHRhcmVhOmhvdmVyLFxuZGl2LnNlbGVjdC13cmFwIHNlbGVjdDpmb2N1cywgZGl2LnNlbGVjdC13cmFwIHNlbGVjdDpob3ZlciB7XG4gIGJvcmRlci1jb2xvcjogJGdyYXk7XG59XG5cbmRpdi5zZWxlY3Qtd3JhcCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luLWJvdHRvbTogMmVtO1xuXG4gICY6OmFmdGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgY29udGVudDogJyc7XG4gICAgcmlnaHQ6IC43ZW07XG4gICAgdG9wOiA1MCU7XG4gICAgei1pbmRleDogMjtcbiAgICBib3JkZXItbGVmdDogN3B4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1yaWdodDogN3B4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci10b3A6IDdweCBzb2xpZCAjOUE5REE5O1xuICAgIGhlaWdodDogMDtcbiAgICB3aWR0aDogMDtcbiAgfVxuXG4gIHNlbGVjdCB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjNlbTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDIxOCwyMTgsMjE4LC4xKTtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBjb2xvcjogIzlBOURBOTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgaGVpZ2h0OiA1OHB4O1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAgIC1tb3otYXBwZWFyYW5jZTogbm9uZTtcbiAgICBvdXRsaW5lOiBub25lO1xuICAgIHRleHQtaW5kZW50OiAxNXB4O1xuICAgIHBhZGRpbmc6IDAgNnB4O1xuICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgfVxufVxuXG46Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIgeyBjb2xvcjogJGdyYXk7IH1cbjo6LW1vei1wbGFjZWhvbGRlciB7IGNvbG9yOiAkZ3JheTsgfVxuOi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7IGNvbG9yOiAkZ3JheTsgfVxuOi1tb3otcGxhY2Vob2xkZXIgeyBjb2xvcjogJGdyYXk7IH1cblxuLy8gZGl2LmZvcm0td3JhcHBlciB7XG4vLyAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbi8vICAgbWF4LXdpZHRoOiA4MDBweDtcbi8vICAgbWFyZ2luOiAwIGF1dG87XG4vLyB9XG5cbmZvcm0uZ2V0LXdoaXNwZXItZm9ybSB7XG5cbiAgQGluY2x1ZGUgbWVkaWEoJz49dGFibGV0Jykge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgfVxuXG4gIGlucHV0W3R5cGU9dGV4dF0sIGlucHV0W3R5cGU9ZW1haWxdIHtcbiAgICBwYWRkaW5nOiAxLjRyZW0gMS40cmVtIDEuNHJlbSAyLjdyZW07XG4gICAgY29sb3I6ICRncmF5O1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udDtcbiAgICBmb250LXdlaWdodDogJG1lZGl1bTtcbiAgICBmb250LXNpemU6IDEuOXJlbTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkFGQUZBO1xuICAgIGJvcmRlcjogc29saWQgMnB4ICNFOUU1RTU7XG5cbiAgICBAaW5jbHVkZSBtZWRpYSgnPHRhYmxldCcpIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDJweDtcbiAgICB9XG5cbiAgICAmOm5vdCg6bGFzdC1vZi10eXBlKSB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDVweDtcbiAgICB9XG4gIH1cblxuICBpbnB1dFt0eXBlPXRleHRdIHtcbiAgICB3aWR0aDogMTguN3JlbTtcblxuICAgIEBpbmNsdWRlIG1lZGlhKCc8dGFibGV0Jykge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuICB9XG5cbiAgaW5wdXRbdHlwZT1lbWFpbF0ge1xuICAgIHdpZHRoOiAyNi43cmVtO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEoJzx0YWJsZXQnKSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG4gIH1cblxuICBkaXYuc3VibWl0LXdyYXBwZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgaGVpZ2h0OiA0NXB4O1xuICAgIHdpZHRoOiA0NXB4O1xuICAgIG1hcmdpbi1sZWZ0OiAyMHB4O1xuICB9XG59XG4iLCIubG9hZGluZy13cmFwIHtcbiAgYmFja2dyb3VuZDogJG9mZi13aGl0ZTI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgb3BhY2l0eTogMDtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMzUwbXM7XG4gIHotaW5kZXg6IDM7XG5cbiAgJi5pcy1hY3RpdmUge1xuICAgIG9wYWNpdHk6IDE7XG5cbiAgICAubG9hZGluZyB7XG4gICAgICBhbmltYXRpb246IHNjYWxlLWluLWxvYWRlciAyNTBtcyBlYXNlLWluLW91dCBmb3J3YXJkcyAyNTBtcztcbiAgICB9XG5cbiAgICAuZG90IHtcbiAgICAgICYuaGlkZGVuIHsgYW5pbWF0aW9uOiBzY2FsZS1pbiAxMjUwbXMgZWFzZS1pbi1vdXQgaW5maW5pdGUgNjAwbXM7IH1cbiAgICAgICYub25lIHsgYW5pbWF0aW9uOiBzbGlkZS1kb3duIDEyNTBtcyBlYXNlLWluLW91dCBpbmZpbml0ZSA2MDBtczsgfVxuICAgICAgJi50d28geyBhbmltYXRpb246IHNsaWRlLXVwIDEyNTBtcyBlYXNlLWluLW91dCBpbmZpbml0ZSA1MDBtczsgfVxuICAgICAgJi50aHJlZSB7IGFuaW1hdGlvbjogc2xpZGUtZG93biAxMjUwbXMgZWFzZS1pbi1vdXQgaW5maW5pdGUgNDAwbXM7IH1cbiAgICAgICYuZm91ciB7IGFuaW1hdGlvbjogc2xpZGUtdXAgMTI1MG1zIGVhc2UtaW4tb3V0IGluZmluaXRlIDMwMG1zOyB9XG4gICAgICAmLmZpdmUgeyBhbmltYXRpb246IHNjYWxlLW91dCAxMjUwbXMgZWFzZS1pbi1vdXQgaW5maW5pdGUgMTc1bXM7IH1cbiAgICB9XG4gIH1cbn1cblxuLmxvYWRpbmcge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiA5NXB4O1xuICBoZWlnaHQ6IDcwcHg7XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zZm9ybTogc2NhbGUoMC41KTtcbn1cblxuLmRvdCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDE1cHg7XG4gIGhlaWdodDogMTVweDtcbiAgYmFja2dyb3VuZDogJHJlZDtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuXG4gICYuaGlkZGVuIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDApO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICB9XG5cbiAgJi5vbmUge1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICB9XG5cbiAgJi50d28ge1xuICAgIHRvcDogNTNweDtcbiAgICBsZWZ0OiAyMHB4O1xuICB9XG5cbiAgJi50aHJlZSB7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDQwcHg7XG4gIH1cblxuICAmLmZvdXIge1xuICAgIHRvcDogNTNweDtcbiAgICBsZWZ0OiA2MHB4O1xuICB9XG5cbiAgJi5maXZlIHtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogODBweDtcbiAgfVxufVxuIiwiLnF1b3Rlcy13cmFwIHtcbiAgQGluY2x1ZGUgZ3JpZC11bml0KHBhZGRpbmctbGVmdCwgMi41KTtcbiAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xufVxuXG4ucXVvdGVzIHtcbiAgQGluY2x1ZGUgZ3JpZC11bml0KHdpZHRoLCAyMik7XG4gIGJvcmRlci1sZWZ0OiA4cHggc29saWQgJHJlZDtcbn1cblxuLnF1b3RlIHtcbiAgQGluY2x1ZGUgZ3JpZC11bml0KHBhZGRpbmctbGVmdCwgMy4yNSk7XG4gIHBhZGRpbmctdG9wOiAzMHB4O1xuICBwYWRkaW5nLWJvdHRvbTogMzBweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTAwJTtcblxuICAmOjpiZWZvcmUge1xuICAgIEBpbmNsdWRlIGdyaWQtdW5pdChsZWZ0LCAyLjI1KTtcbiAgICBjb250ZW50OiAn4oCcJztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAzMHB4O1xuICAgIGNvbG9yOiAkdGV4dC1kYXJrO1xuICB9XG5cbiAgcCB7XG4gICAgbWFyZ2luOiAwO1xuICB9XG59XG5cbi5xdW90ZS1hcnJvdyB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgQGluY2x1ZGUgZ3JpZC11bml0KHBhZGRpbmctYm90dG9tLCAyLjI1KTtcblxuICAmLmFycm93LWxlZnQge1xuICAgIEBpbmNsdWRlIGdyaWQtdW5pdChtYXJnaW4tcmlnaHQsIDIuMjUpO1xuICB9XG5cbiAgJi5hcnJvdy1yaWdodCB7XG4gICAgQGluY2x1ZGUgZ3JpZC11bml0KG1hcmdpbi1sZWZ0LCAxKTtcbiAgfVxuXG4gIC5hcnJvdy1wcmV2IHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlWCgtMSkgdHJhbnNsYXRlWCgxMnB4KTtcbiAgfVxuXG4gIC5jdGEtYXJyb3cge1xuICAgIG1hcmdpbjogMDtcbiAgfVxufVxuXG4uYXV0aG9yIHtcbiAgQGluY2x1ZGUgZ3JpZC11bml0KG1hcmdpbi10b3AsIDEpO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuXG4uYXV0aG9yLWltZyB7XG4gIEBpbmNsdWRlIGdyaWQtdW5pdChtYXJnaW4tcmlnaHQsIDEpO1xuXG4gIGZpZ3VyZSB7XG4gICAgQGluY2x1ZGUgZ3JpZC11bml0KHdpZHRoLCAzLjUpO1xuICAgIEBpbmNsdWRlIGdyaWQtdW5pdChoZWlnaHQsIDMuNSk7XG4gICAgYmFja2dyb3VuZDogJGdyYXk7XG4gICAgYm9yZGVyOiA1cHggc29saWQgJHdoaXRlO1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgfVxufVxuIiwiLmJvdHRvbS1zaWdudXAge1xuICBwYWRkaW5nLXRvcDogNy45cmVtO1xuICBwYWRkaW5nLWJvdHRvbTogMTAuMXJlbTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAyO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgQGluY2x1ZGUgbWVkaWEoJzx0YWJsZXQnKSB7XG4gICAgcGFkZGluZy1sZWZ0OiAkbW9iaWxlLWd1dHRlcjtcbiAgICBwYWRkaW5nLXJpZ2h0OiAkbW9iaWxlLWd1dHRlcjtcbiAgfVxuXG4gICYubGlnaHQtYmcge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmNGY4ZmE7XG4gIH1cblxuICBoMiB7XG4gICAgbWFyZ2luLWJvdHRvbTogMy4xcmVtO1xuICAgIGZvbnQtc2l6ZTogMy42cmVtO1xuICAgIGNvbG9yOiAkcmVkO1xuICB9XG5cbiAgcCB7XG4gICAgbWF4LXdpZHRoOiA2My43cmVtO1xuICAgIG1hcmdpbjogMCBhdXRvIDZyZW07XG4gICAgZm9udC1zaXplOiAxLjhyZW07XG4gICAgY29sb3I6IHJnYmEoJGdyYXksIDAuOCk7XG4gIH1cblxuICBmb3JtIHtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgfVxufVxuXG4uYm90dG9tLXNpZ251cC1pY29uIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IC00LjU1cmVtO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgbWFyZ2luOiBhdXRvO1xuXG4gIHN2ZyB7XG4gICAgd2lkdGg6IDkuMXJlbTtcbiAgICBoZWlnaHQ6IDkuMXJlbVxuICB9XG59XG4iLCIuaG9tZS1zZWN0aW9uIHtcbiAgd2lkdGg6IDEwMHZ3O1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCB0b3A7XG5cbiAgQGluY2x1ZGUgbWVkaWEoJz49dGFibGV0Jykge1xuICAgIEBpbmNsdWRlIHJhdGlvLWJveCgxNi85KTtcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICBiYWNrZ3JvdW5kLWF0dGFjaG1lbnQ6IGZpeGVkO1xuICB9XG5cbiAgQGluY2x1ZGUgbWVkaWEoJzx0YWJsZXQnKSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1pbi1oZWlnaHQ6IDcxMHB4O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZTtcbiAgfVxuXG4gIEBtZWRpYSAobWluLWFzcGVjdC1yYXRpbzogMTYvOSkge1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IDEzLjQlO1xuICB9XG5cbiAgaDEsIGgyIHtcbiAgICBtYXJnaW4tYm90dG9tOiAzcmVtO1xuXG4gICAgc3BhbiB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGNvbG9yOiAkcmVkO1xuICAgIH1cbiAgfVxuXG4gIC5jdGEtYXJyb3cge1xuICAgIEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcpIHtcbiAgICAgIG1hcmdpbi10b3A6IDZyZW07XG4gICAgfVxuICB9XG5cbiAgJi5oZXJvIHtcbiAgICBoMSB7XG4gICAgICBtYXgtd2lkdGg6IDM1cmVtO1xuICAgIH1cblxuICAgICYuaXMtYWN0aXZlIHtcbiAgICAgIC5oYW5kIHtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMHJlbSkgdHJhbnNsYXRlWCgzMHJlbSk7XG4gICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAuNXMgJGVhc2Utb3V0LXF1YWQsIG9wYWNpdHkgLjVzICRlYXNlLW91dC1xdWFkIDMwMG1zO1xuICAgICAgfVxuXG4gICAgICAuZGV2aWNlLXNoYWRvdyB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIHRyYW5zaXRpb24tZGVsYXk6IDUwMG1zO1xuICAgICAgfVxuICAgIH1cblxuICAgICAgLy8gdG9kbyBzdWJ0bGUgYW5pbWF0aW9uP1xuICAgIC5jdGEtYXJyb3ctd3JhcCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAvLyB0b3A6IDg4dmg7XG4gICAgICBib3R0b206IC0yM3B4O1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB6LWluZGV4OiAxMDtcblxuICAgICAgQGluY2x1ZGUgbWVkaWEoJzx0YWJsZXQnKSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG5cbiAgICAgIGEge1xuICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgfVxuXG4gICAgICAuY3RhLWFycm93LWljb24ge1xuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICYuczIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRvZmYtd2hpdGUyO1xuICB9XG5cbiAgJi5zMyB7XG4gICAgei1pbmRleDogMTE7XG5cbiAgICAmLmlzLXRlY2gtYWN0aXZlIHtcbiAgICAgIC5ob3RzcG90IHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcblxuICAgICAgICAmOm50aC1vZi10eXBlKDIpIHtcbiAgICAgICAgICB0cmFuc2l0aW9uLWRlbGF5OiAuMXM7XG4gICAgICAgIH1cblxuICAgICAgICAmOm50aC1vZi10eXBlKDMpIHtcbiAgICAgICAgICB0cmFuc2l0aW9uLWRlbGF5OiAuMnM7XG4gICAgICAgIH1cblxuICAgICAgICAmOm50aC1vZi10eXBlKDQpIHtcbiAgICAgICAgICB0cmFuc2l0aW9uLWRlbGF5OiAuM3M7XG4gICAgICAgIH1cblxuICAgICAgICBzcGFuIHtcbiAgICAgICAgICB0cmFuc2l0aW9uLWRlbGF5OiAycztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIGgyIHtcbiAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgfVxuXG4gICAgcCB7XG4gICAgICBjb2xvcjogJHRleHQtZ3JheS1saWdodGVyO1xuICAgIH1cbiAgfVxuXG4gICYuczQge1xuICAgIHotaW5kZXg6IDExO1xuXG4gICAgJi5pcy1maXQtYWN0aXZlIHtcblxuICAgICAgLy90b2RvIGFuaW1hdGVcbiAgICAgIC5tZWFzdXJlIHtcbiAgICAgICAgb3BhY2l0eTogMTtcblxuICAgICAgICAmOmZpcnN0LW9mLXR5cGUge1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6bnRoLW9mLXR5cGUoMikge1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgICAgICAgfVxuXG4gICAgICB9XG4gICAgfVxuXG4gICAgaDIge1xuICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICB9XG5cbiAgICBwIHtcbiAgICAgIGNvbG9yOiAkdGV4dC13aGl0ZTtcbiAgICB9XG4gIH1cblxuICAuaW5uZXItd3JhcCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogNTglO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICBjb2xvcjogI2ZmZjtcblxuICAgIEBpbmNsdWRlIG1lZGlhKCc8dGFibGV0Jykge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG4gICAgfVxuICB9XG5cbiAgLmlubmVyLXRleHQge1xuICAgIHBhZGRpbmc6IDAgMTcuNXJlbSAwIDE2cmVtO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEoJzx0YWJsZXQnKSB7XG4gICAgICBwYWRkaW5nOiAwICRtb2JpbGUtZ3V0dGVyIDcuNHJlbTtcbiAgICB9XG5cbiAgICBwOmxhc3Qtb2YtdHlwZSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiA0cmVtO1xuICAgIH1cbiAgfVxuXG4gIC8vIHRvZG86IHJldXNlIC5zZWN0aW9uLXJhdGlvLWNvbnRhaW5lclxuICAuZGV2aWNlLXNvbG8ge1xuICAgIGhlaWdodDogMDtcbiAgICB3aWR0aDogMjQuOHJlbTtcbiAgICB6LWluZGV4OiAxMDtcblxuICAgIEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcpIHtcbiAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiA1OC4yJTtcbiAgICAgIHRvcDogMDtcbiAgICAgIGxlZnQ6IDYwJTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYSgnPHRhYmxldCcpIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cblxuICAgICYuZGV2aWNlLWZlYXR1cmVzLXdyYXAge1xuICAgICAgbWFyZ2luLWJvdHRvbTogNi4ycmVtO1xuICAgIH1cblxuICAgICYuaXMtYWN0aXZlIHtcbiAgICAgIC5kZXZpY2UtZmVhdHVyZXMge1xuICAgICAgICAuY2lyY2xlLXRvcCB7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMjYzLjc3cHgsIDQ1LjMzNTRweCkgc2NhbGUoMSkgdHJhbnNsYXRlKC0yNjMuNzdweCwgLTQ1LjMzNTRweCk7XG4gICAgICAgIH1cblxuICAgICAgICAuY2lyY2xlLWxlZnQge1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDQwLjk1NTFweCwgMjI0LjA1NHB4KSBzY2FsZSgxKSB0cmFuc2xhdGUoLTQwLjk1NTFweCwgLTIyNC4wNTRweCk7XG4gICAgICAgICAgdHJhbnNpdGlvbi1kZWxheTogMjAwbXM7XG4gICAgICAgIH1cblxuICAgICAgICAuY2lyY2xlLXJpZ2h0IHtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSg0ODAuODI0cHgsIDIyNC4wNTRweCkgc2NhbGUoMSkgdHJhbnNsYXRlKC00ODAuODI0cHgsIC0yMjQuMDU0cHgpO1xuICAgICAgICAgIHRyYW5zaXRpb24tZGVsYXk6IDIwMG1zO1xuICAgICAgICB9XG5cbiAgICAgICAgLmYtdGV4dCB7XG4gICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG5cbiAgICAgICAgICAmLmYtdGV4dC10b3Age1xuICAgICAgICAgICAgdHJhbnNpdGlvbi1kZWxheTogMTAwbXNcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmLmYtdGV4dC1sZWZ0LFxuICAgICAgICAgICYuZi10ZXh0LXJpZ2h0IHtcbiAgICAgICAgICAgIHRyYW5zaXRpb24tZGVsYXk6IDMwMG1zXG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmYtcmluZyB7XG4gICAgICAgICAgc3Ryb2tlLWRhc2hvZmZzZXQ6IC0yMDtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAuZGV2aWNlLWVhcmJ1ZHMge1xuICAgICAgICBpbWcge1xuICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgdHJhbnNpdGlvbi1kZWxheTogMzUwbXM7XG5cbiAgICAgICAgICAmLmVhci1sZWZ0IHtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTdyZW0pO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBtZWRpYSgnPHRhYmxldCcpIHtcbiAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC03NnB4KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmLmVhci1yaWdodCB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTdyZW0pO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBtZWRpYSgnPHRhYmxldCcpIHtcbiAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDc2cHgpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5kZXZpY2UtYnJhaW4ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAyO1xuXG4gICAgJi5icmFpbi1mZWF0dXJlcyB7XG4gICAgICBAaW5jbHVkZSBtZWRpYSgnPHRhYmxldCcpIHtcbiAgICAgICAgd2lkdGg6IDExMXB4O1xuICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcpIHtcbiAgICAgIG1hcmdpbi10b3A6IDEwMCU7XG4gICAgfVxuXG4gICAgQG1lZGlhIChtaW4tYXNwZWN0LXJhdGlvOiAxNi85KSB7XG4gICAgICBtYXJnaW4tdG9wOiBjYWxjKDEwMCUgKiAjeyR3aWRlc2NyZWVuLWFkanVzdH0pO1xuICAgIH1cbiAgfVxuXG4gIC5kZXZpY2Utc2hhZG93IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA2NSU7IC8vIGFkanVzdCBmb3Igd2lkZXNjcmVlbiBiZWxvd1xuICAgIGxlZnQ6IC0yMyU7XG4gICAgd2lkdGg6IDE1MCU7XG4gICAgbWF4LXdpZHRoOiBub25lO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAzNTBtcztcblxuICAgIEBtZWRpYSAobWluLWFzcGVjdC1yYXRpbzogMTYvOSkge1xuICAgICAgdG9wOiA1NSU7XG4gICAgfVxuICB9XG5cbiAgLmhhbmQge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogMDtcbiAgICB0b3A6IDI4JTtcbiAgICB3aWR0aDogNDQuN3JlbTtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgei1pbmRleDogMjA7XG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIC41cyAkZWFzZS1vdXQtcXVhZCwgb3BhY2l0eSAuNXMgJGVhc2Utb3V0LXF1YWQ7XG5cbiAgICBAbWVkaWEgKG1pbi1hc3BlY3QtcmF0aW86IDE2LzkpIHtcbiAgICAgIHRvcDogMTclO1xuICAgIH1cblxuICAgICYuaGFuZC1iYWNrIHtcbiAgICAgIHotaW5kZXg6IDE7XG4gICAgfVxuICB9XG59XG5cbi5kZXZpY2UtZWFyYnVkcyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiAzOCU7IC8vIGFkanVzdCBmb3Igd2lkZXNjcmVlbiBiZWxvd1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcblxuICBAbWVkaWEgKG1pbi1hc3BlY3QtcmF0aW86IDE2LzkpIHtcbiAgICBib3R0b206IDQ4JTtcbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhKCc8dGFibGV0Jykge1xuICAgIHdpZHRoOiAxMTFweDtcbiAgICByaWdodDogMDtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgfVxuXG4gIGltZyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICB3aWR0aDogOS4zZW07XG4gICAgaGVpZ2h0OiAxMC41ZW07XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDI1MG1zLCB0cmFuc2Zvcm0gODUwbXMgJGVhc2luZztcblxuICAgIEBpbmNsdWRlIG1lZGlhKCc8dGFibGV0Jykge1xuICAgICAgd2lkdGg6IDY1cHg7XG4gICAgICBoZWlnaHQ6IDc2cHg7XG4gICAgfVxuXG4gICAgJi5lYXItbGVmdCB7XG4gICAgICBsZWZ0OiAwO1xuICAgIH1cblxuICAgICYuZWFyLXJpZ2h0IHtcbiAgICAgIHJpZ2h0OiAwO1xuICAgIH1cbiAgfVxufVxuXG4uZGV2aWNlLWZlYXR1cmVzIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDE0JTsgLy8gYWRqdXN0IGZvciB3aWRlc2NyZWVuIGJlbG93XG4gIGxlZnQ6IC01MCU7XG4gIHdpZHRoOiAyMDAlO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcblxuICBAbWVkaWEgKG1pbi1hc3BlY3QtcmF0aW86IDE2LzkpIHtcbiAgICB0b3A6IDcuNSU7XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYSgnPHRhYmxldCcpIHtcbiAgICB3aWR0aDogOTAlO1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgdG9wOiAtNTUlO1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICB9XG5cbiAgJi5pcy1hY3RpdmUge1xuICAgIC5jaXJjbGUtdG9wIHtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDI2My43N3B4LCA0NS4zMzU0cHgpIHNjYWxlKDEpIHRyYW5zbGF0ZSgtMjYzLjc3cHgsIC00NS4zMzU0cHgpO1xuICAgIH1cblxuICAgIC5jaXJjbGUtbGVmdCB7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSg0MC45NTUxcHgsIDIyNC4wNTRweCkgc2NhbGUoMSkgdHJhbnNsYXRlKC00MC45NTUxcHgsIC0yMjQuMDU0cHgpO1xuICAgICAgdHJhbnNpdGlvbi1kZWxheTogMjAwbXM7XG4gICAgfVxuXG4gICAgLmNpcmNsZS1yaWdodCB7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSg0ODAuODI0cHgsIDIyNC4wNTRweCkgc2NhbGUoMSkgdHJhbnNsYXRlKC00ODAuODI0cHgsIC0yMjQuMDU0cHgpO1xuICAgICAgdHJhbnNpdGlvbi1kZWxheTogMjAwbXM7XG4gICAgfVxuXG4gICAgLmYtdGV4dCB7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuXG4gICAgICAmLmYtdGV4dC10b3Age1xuICAgICAgICB0cmFuc2l0aW9uLWRlbGF5OiAxMDBtc1xuICAgICAgfVxuXG4gICAgICAmLmYtdGV4dC1sZWZ0LFxuICAgICAgJi5mLXRleHQtcmlnaHQge1xuICAgICAgICB0cmFuc2l0aW9uLWRlbGF5OiAzMDBtc1xuICAgICAgfVxuICAgIH1cblxuICAgIC5mLXJpbmcge1xuICAgICAgc3Ryb2tlLWRhc2hvZmZzZXQ6IC0yMDtcbiAgICB9XG4gIH1cblxuICBzdmcge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgfVxuXG4gIC5jaXJjbGUtdG9wIHsgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMjYzLjc3cHgsIDQ1LjMzNTRweCkgc2NhbGUoMCkgdHJhbnNsYXRlKC0yNjMuNzdweCwgLTQ1LjMzNTRweCk7IH1cbiAgLmNpcmNsZS1sZWZ0IHsgdHJhbnNmb3JtOiB0cmFuc2xhdGUoNDAuOTU1MXB4LCAyMjQuMDU0cHgpIHNjYWxlKDApIHRyYW5zbGF0ZSgtNDAuOTU1MXB4LCAtMjI0LjA1NHB4KTsgfVxuICAuY2lyY2xlLXJpZ2h0IHsgdHJhbnNmb3JtOiB0cmFuc2xhdGUoNDgwLjgyNHB4LCAyMjQuMDU0cHgpIHNjYWxlKDApIHRyYW5zbGF0ZSgtNDgwLjgyNHB4LCAtMjI0LjA1NHB4KTsgfVxuXG4gIC5mLWNpcmNsZSB7XG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDM1MG1zIGVhc2U7XG4gIH1cblxuICAuZi10ZXh0IHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMjBweCk7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAyNTBtcywgdHJhbnNmb3JtIDUwMG1zIGVhc2U7XG4gIH1cblxuICAuZi1yaW5nIHtcbiAgICBzdHJva2UtZGFzaGFycmF5OiA1MDA7XG4gICAgc3Ryb2tlLWRhc2hvZmZzZXQ6IC01MDA7XG5cbiAgICB0cmFuc2l0aW9uOiBzdHJva2UtZGFzaGFycmF5IDUwMG1zIGVhc2UsIHN0cm9rZS1kYXNob2Zmc2V0IDUwMG1zIGVhc2U7XG4gIH1cbn1cblxuXG4vLyB0aGlzIGlzIGFuIGludmlzYmxlIGJveCB0aGF0IGhvdXNlcyBjb250ZW50IHRoYXQgbmVlZHMgdG8gcmVsYXRlIHRvIHRoZSB3YXkgdGhlIGJncyBzY2FsZVxuLnNlY3Rpb24tcmF0aW8tY29udGFpbmVyIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIGhlaWdodDogMDtcbiAgcGFkZGluZy1ib3R0b206IDU4LjIlO1xuICBsZWZ0OiA2MCU7XG4gIHdpZHRoOiAyNC44cmVtO1xufVxuXG4uc2VjdGlvbi1yYXRpby1jb250YWluZXIgLm1lYXN1cmUge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGNvbG9yOiAjZmZmO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMjUlO1xuICBsZWZ0OiAwO1xuICBvcGFjaXR5OiAwO1xuICB0cmFuc2l0aW9uOiBhbGwgLjNzIGN1YmljLWJlemllcigwLjE3NSwgMC44ODUsIDAuMzIsIDEuMjc1KTtcblxuICBAbWVkaWEgKG1pbi1hc3BlY3QtcmF0aW86IDE2LzkpIHtcbiAgICB0b3A6IDE1JTtcbiAgfVxuXG4gICY6Zmlyc3Qtb2YtdHlwZSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDMwcHgpO1xuICB9XG5cbiAgJjpudGgtb2YtdHlwZSgyKSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0zMHB4KTtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAuMnM7XG4gIH1cblxuICBzcGFuIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgfVxufVxuXG5cbi5zZWN0aW9uLXJhdGlvLWNvbnRhaW5lciAubWVhc3VyZS52ZXJ0aWNhbCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGxlZnQ6IDI2cmVtO1xuICB0b3A6IDM1JTtcblxuICBAbWVkaWEgKG1pbi1hc3BlY3QtcmF0aW86IDE2LzkpIHtcbiAgICB0b3A6IDI1JTtcbiAgfVxuXG4gIC5icmFja2V0IHtcbiAgICB3aWR0aDogMS42cmVtO1xuICAgIGhlaWdodDogMzVyZW07XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGJvcmRlci10b3A6IDJweCBzb2xpZCAjZmZmO1xuICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAjZmZmO1xuICAgIGJvcmRlci1yaWdodDogMnB4IHNvbGlkICNmZmY7XG4gICAgbWFyZ2luLXJpZ2h0OiAxcmVtO1xuICB9XG59XG5cbi5zZWN0aW9uLXJhdGlvLWNvbnRhaW5lciAubWVhc3VyZS5ob3Jpem9udGFsIHtcblxuICAuYnJhY2tldCB7XG4gICAgd2lkdGg6IDI0LjhyZW07XG4gICAgaGVpZ2h0OiAxLjZyZW07XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGJvcmRlci10b3A6IDJweCBzb2xpZCAjZmZmO1xuICAgIGJvcmRlci1sZWZ0OiAycHggc29saWQgI2ZmZjtcbiAgICBib3JkZXItcmlnaHQ6IDJweCBzb2xpZCAjZmZmO1xuICAgIG1hcmdpbi10b3A6IDFyZW07XG4gIH1cbn1cblxuXG4uaG90c3BvdCB7XG4gIHdpZHRoOiA5cHg7IC8vIGlzIHRoaXMgYSBnb29kIHVzZSBjYXNlIGZvciBleGFjdCBweD9cbiAgaGVpZ2h0OiA5cHg7XG4gIGJvcmRlci1yYWRpdXM6IDk5OTlweDtcbiAgYmFja2dyb3VuZDogJHJlZDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAyLjVyZW0gcmdiYSgkcmVkLCAuMik7XG4gIHRyYW5zZm9ybTogc2NhbGUoMCk7XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb246IGFsbCAuM3MgY3ViaWMtYmV6aWVyKDAuMTc1LCAwLjg4NSwgMC4zMiwgMS4yNzUpO1xuXG4gICY6Zmlyc3Qtb2YtdHlwZSB7XG4gICAgdG9wOiA1NCU7XG4gICAgbGVmdDogMTklO1xuICB9XG5cbiAgJjpudGgtb2YtdHlwZSgyKSB7XG4gICAgdG9wOiA0NCU7XG4gICAgbGVmdDogNDklO1xuXG4gICAgc3BhbiB7XG4gICAgICB0b3A6IC03cmVtO1xuICAgICAgbGVmdDogLTE1cmVtO1xuICAgIH1cbiAgfVxuXG4gICY6bnRoLW9mLXR5cGUoMykge1xuICAgIHRvcDogNjclO1xuICAgIGxlZnQ6IDU4JTtcblxuICAgIHNwYW4ge1xuICAgICAgdG9wOiAtNHJlbTtcbiAgICAgIGxlZnQ6IDJyZW07XG4gICAgfVxuICB9XG5cbiAgJjpudGgtb2YtdHlwZSg0KSB7XG4gICAgdG9wOiAzOSU7XG4gICAgbGVmdDogNzUlO1xuXG4gICAgc3BhbiB7XG4gICAgICB0b3A6IC01cmVtO1xuICAgICAgbGVmdDogMnJlbTtcbiAgICB9XG4gIH1cblxuICBzcGFuIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAtNXJlbTtcbiAgICBsZWZ0OiAtMTByZW07XG4gICAgbWluLXdpZHRoOiAxMDBweDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgcGFkZGluZzogMTBweDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgYmFja2dyb3VuZDogcmdiYSgkZGFyay1uYXZ5LCAuOSk7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgZm9udC1zaXplOiAxLjFyZW07XG4gIH1cbn1cblxuLnBhZGRlciB7XG4gIGhlaWdodDogN3JlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJG9mZi13aGl0ZTI7XG5cbiAgQGluY2x1ZGUgbWVkaWEoJzx0YWJsZXQnKSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4uZG90LWdyaWQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogOWVtO1xuICByaWdodDogNy4yZW07XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMzUwbXMsIHRyYW5zZm9ybSA1MDBtcyAkZWFzaW5nO1xuXG4gICYuaXMtaGlkZGVuIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNXJlbSk7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMTI1bXM7XG4gIH1cbn1cblxuLmRvdC1yb3cge1xuICBkaXNwbGF5OiBmbGV4O1xuICBtYXJnaW4tYm90dG9tOiAyLjJyZW07XG5cbiAgJjpudGgtY2hpbGQob2RkKSB7XG4gICAgcGFkZGluZy1sZWZ0OiAxLjVyZW07XG4gIH1cblxuICBkaXYge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB3aWR0aDogNXB4O1xuICAgIGhlaWdodDogNXB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBtYXJnaW4tcmlnaHQ6IDIuMnJlbTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWVlO1xuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMjUwbXM7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IC04cHg7XG4gICAgICBsZWZ0OiAtOHB4O1xuICAgICAgbWFyZ2luOiBhdXRvO1xuICAgICAgd2lkdGg6IDIxcHg7XG4gICAgICBoZWlnaHQ6IDIxcHg7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWVlO1xuICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgei1pbmRleDogLTE7XG4gICAgICBvcGFjaXR5OiAwLjU7XG4gICAgICB0cmFuc2Zvcm06IHNjYWxlKDApO1xuICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDEwMDBtcyAkZWFzaW5nO1xuICAgICAgdHJhbnNpdGlvbi1kZWxheTogaW5oZXJpdDtcbiAgICB9XG5cbiAgICAmLmlzLWFjdGl2ZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2NjO1xuXG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4uc2lnbi11cCB7XG4gIC5maWVsZHMgaW5wdXQge1xuICAgIHdpZHRoOiA3NSU7XG4gICAgcGFkZGluZzogMXJlbTtcbiAgICBib3JkZXI6IDJweCBzb2xpZCAjRTVFQUYxOyAvL2NsZWFudXBcblxuICAgICY6bGFzdC1vZi10eXBlIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG4gICAgfVxuICB9XG59XG4iLCIucHJvZHVjdC1oZXJvIHtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIC41cyAkZWFzaW5nO1xuXG4gIEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcpIHtcbiAgICBtYXJnaW4tYm90dG9tOiA1cmVtO1xuICB9XG5cbiAgJi5pcy1zY3JvbGxlZCB7XG5cbiAgICAucHJvZHVjdC1oZXJvLWRldmljZSB7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwcmVtKTtcbiAgICB9XG5cbiAgICAucHJvZHVjdC1oZXJvLWVhcmJ1ZC5lMSB7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTQwcmVtKTtcbiAgICB9XG5cbiAgICAucHJvZHVjdC1oZXJvLWVhcmJ1ZC5lMiB7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTNyZW0pO1xuICAgIH1cbiAgfVxufVxuXG4ucHJvZC1oZXJvLWlubmVyIHtcbiAgQGluY2x1ZGUgbWVkaWEoJz49dGFibGV0Jykge1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYSgnPHRhYmxldCcpIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIHBhZGRpbmctdG9wOiAyMHB4O1xuICB9XG5cbiAgLmhlcm8taW1nLW1vYmlsZSB7XG4gICAgd2lkdGg6IDgwJTtcbiAgICBtYXJnaW46IDAgYXV0bztcblxuICAgIEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcpIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG59XG5cbi5wcm9kdWN0LWhlcm8tY29weSB7XG4gIHdpZHRoOiA1MCU7XG5cbiAgQGluY2x1ZGUgbWVkaWEoJzx0YWJsZXQnKSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICBhcnRpY2xlIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDE2cmVtO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEoJzx0YWJsZXQnKSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6ICRtb2JpbGUtZ3V0dGVyO1xuICAgIH1cbiAgfVxuXG4gIGgxIHtcbiAgICBtYXJnaW4tYm90dG9tOiA1LjZyZW07XG5cbiAgICBzcGFuIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgY29sb3I6ICRyZWQ7XG4gICAgfVxuICB9XG5cbiAgcCB7XG4gICAgbWF4LXdpZHRoOiAzNnJlbTtcbiAgfVxuXG4gIC5jdGEtYXJyb3cge1xuICAgIG1hcmdpbi1sZWZ0OiAxNXJlbTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTByZW0pO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEoJzx0YWJsZXQnKSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxufVxuXG4ucHJvZHVjdC1oZXJvLXZpc3VhbCB7XG4gIEBpbmNsdWRlIHJhdGlvLWJveCgwLjkvMSk7XG4gIGZsZXg6IDE7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xuXG4gIEBpbmNsdWRlIG1lZGlhKCc8dGFibGV0Jykge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLnByb2R1Y3QtaGVyby1kZXZpY2Uge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMjIlO1xuICBsZWZ0OiA3cmVtO1xuICB3aWR0aDogMzhyZW07XG4gIGhlaWdodDogMzVyZW07XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgb3BhY2l0eTogMTtcbiAgdHJhbnNpdGlvbjogYWxsIC41cyAkZWFzZS1vdXQtcXVhZDtcbiAgei1pbmRleDogMjtcblxufVxuXG4ucHJvZHVjdC1oZXJvLWVhcmJ1ZCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcblxuICAmLmUxIHtcbiAgICB0b3A6IDYyJTtcbiAgICBsZWZ0OiA2JTtcbiAgICB3aWR0aDogMTZyZW07XG4gICAgaGVpZ2h0OiAxOXJlbTtcbiAgICB6LWluZGV4OiAzO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgLjdzICRlYXNlLW91dC1xdWFkO1xuICB9XG5cbiAgJi5lMiB7XG4gICAgdG9wOiAyNSU7XG4gICAgcmlnaHQ6IDEycmVtO1xuICAgIHdpZHRoOiAxM3JlbTtcbiAgICBoZWlnaHQ6IDE1cmVtO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgLjZzICRlYXNlLW91dC1xdWFkO1xuICB9XG59XG5cbi5wcm9kdWN0LXZpZGVvLXJvdyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGJhY2tncm91bmQtY29sb3I6ICRibHVlLWxpZ2h0ZXI7XG5cbiAgQGluY2x1ZGUgbWVkaWEoJz49dGFibGV0Jykge1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYSgnPHRhYmxldCcpIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNGOUZCRkM7XG4gIH1cblxuICAmOm50aC1jaGlsZChldmVuKSB7XG4gICAgQGluY2x1ZGUgbWVkaWEoJz49dGFibGV0Jykge1xuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlO1xuICAgIH1cbiAgfVxuXG4gICY6Zmlyc3QtY2hpbGQge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjQ0LCAyNDgsIDI1MCwgMC41KTtcblxuICAgIEBpbmNsdWRlIG1lZGlhKCc8dGFibGV0Jykge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0Y5RkJGQztcbiAgICB9XG4gIH1cblxuICAmOm50aC1jaGlsZCgyKSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEoJzx0YWJsZXQnKSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjlGQkZDO1xuICAgIH1cblxuICAgIC52aWRlby1pY29uIHtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogNTUlO1xuICAgIH1cbiAgfVxuXG4gICY6bGFzdC1jaGlsZCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJsdWUtbGlnaHRlcjtcblxuICAgIEBpbmNsdWRlIG1lZGlhKCc8dGFibGV0Jykge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0Y5RkJGQztcbiAgICB9XG5cbiAgICAudmlkZW8taWNvbiB7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IDM1JTtcbiAgICB9XG5cbiAgICAvLyB0aGlzIGlzIGEgaGFjayB0byBnZXQgcmlkIG9mIHdlaXJkIGJvcmRlciBvbiBib3R0b20gb2YgdmlkZW9cbiAgICB2aWRlbyB7XG4gICAgICBoZWlnaHQ6IDEwMiU7XG4gICAgfVxuICB9XG59XG5cbi52aWRlby1ibG9jayB7XG4gIEBpbmNsdWRlIHJhdGlvLWJveCgxLzEpO1xuICBmbGV4OiAxO1xuXG4gIHZpZGVvIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgbWF4LXdpZHRoOiBub25lO1xuICAgIGhlaWdodDogMTAwJTtcblxuICAgIEBpbmNsdWRlIG1lZGlhKCc8dGFibGV0Jykge1xuICAgICAgbGVmdDogMDtcbiAgICB9XG4gIH1cbn1cblxuLnZpZGVvLWNvcHktYmxvY2sge1xuICBmbGV4OiAxO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDI7XG5cbiAgYXJ0aWNsZSB7XG4gICAgcGFkZGluZzogNnJlbSAxNC4zcmVtO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgIEBpbmNsdWRlIG1lZGlhKCc8dGFibGV0Jykge1xuICAgICAgcGFkZGluZzogMCAkbW9iaWxlLWd1dHRlciA0MHB4O1xuICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICB9XG4gIH1cblxuICBoNCB7XG4gICAgbWFyZ2luLWJvdHRvbTogNHJlbTtcbiAgfVxufVxuXG4udmlkZW8taWNvbiB7XG4gIHdpZHRoOiA5LjVyZW07XG4gIGhlaWdodDogOS41cmVtO1xuICBtYXJnaW46IDAgYXV0byAzLjdyZW07XG4gIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1zaXplOiA1MiU7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgYm94LXNoYWRvdzogMHB4IDAuNXJlbSAxcmVtIHJnYmEoMCwgMCwgMCwgMC4xKTtcblxuICBAaW5jbHVkZSBtZWRpYSgnPHRhYmxldCcpIHtcbiAgICB3aWR0aDogNjZweDtcbiAgICBoZWlnaHQ6IDY2cHg7XG4gICAgbWFyZ2luOiAtMzNweCAwIDE4cHg7XG4gIH1cbn1cblxuLnByb2R1Y3QtZ3JpZCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZzogMCAkZGVmYXVsdC1pbnNldCA4cmVtO1xuXG4gIEBpbmNsdWRlIG1lZGlhKCc8dGFibGV0Jykge1xuICAgIHBhZGRpbmc6IDMwcHg7XG4gIH1cblxuICAudG9wLWdyaWQge1xuICAgICY6OmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgICBjbGVhcjogYm90aDtcbiAgICB9XG4gIH1cblxuICAuYm90dG9tLWdyaWQge1xuICAgICY6OmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgICBjbGVhcjogYm90aDtcbiAgICB9XG4gIH1cblxuICAuYmxvY2sge1xuICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBoZWlnaHQ6IGluaXRpYWw7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgICY6OmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBoZWlnaHQ6IDA7XG4gICAgfVxuXG4gICAgJi5ibG9jay0xIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMSU7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxJTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICM3NjhDOUM7XG4gICAgICB3aWR0aDogNjQlO1xuXG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIHBhZGRpbmctdG9wOiA2NSU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5ibG9jay0yIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMxNzI4MzU7XG4gICAgICB3aWR0aDogMzUlO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMSU7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7XG5cbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDU4JTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmJsb2NrLTMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzI3NDQ1QTtcbiAgICAgIHdpZHRoOiAzNSU7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxJTtcbiAgICAgIG1hcmdpbi1yaWdodDogMDtcblxuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICBwYWRkaW5nLXRvcDogNTglO1xuICAgICAgfVxuICAgIH1cblxuICAgICYuYmxvY2stNCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRDNFM0VBO1xuICAgICAgd2lkdGg6IDE2JTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDElO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAxJTtcblxuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICBwYWRkaW5nLXRvcDogMTI1LjUlO1xuICAgICAgfVxuICAgIH1cblxuICAgICYuYmxvY2stNSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjQzNFQkYxO1xuICAgICAgd2lkdGg6IDMyJTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDElO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAxJTtcblxuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICBwYWRkaW5nLXRvcDogNjIuOCU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5ibG9jay02IHtcbiAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICM2MzgzOUE7XG4gICAgICB3aWR0aDogNTAlO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMSU7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7XG5cbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDgyLjM1JTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmJsb2NrLTcge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzI3NDQ1QTtcbiAgICAgIHdpZHRoOiAzMiU7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxJTtcbiAgICAgIG1hcmdpbi1yaWdodDogMSU7XG5cbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDYyLjglO1xuICAgICAgfVxuICAgIH1cblxuICAgICYuYmxvY2stOCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjZGOUZCO1xuICAgICAgd2lkdGg6IDE2JTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDElO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAxJTtcblxuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICBwYWRkaW5nLXRvcDogMTI1LjUlO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4ucHJvZHVjdC1ib3gtc2V0IHtcbiAgQGluY2x1ZGUgcmF0aW8tYm94KDEvMC41KTtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIGJhY2tncm91bmQtY29sb3I6ICRibHVlLWxpZ2h0ZXI7XG5cbiAgQGluY2x1ZGUgbWVkaWEoJz49dGFibGV0Jykge1xuICAgIG1hcmdpbjogMTByZW0gMCAxNXJlbTtcbiAgfVxufVxuXG4uYm94LXNldCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAtMTNyZW07XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xuICBtYXJnaW46IDAgYXV0bztcblxuICBAaW5jbHVkZSBtZWRpYSgnPj10YWJsZXQnKSB7XG4gICAgd2lkdGg6IDg5cmVtO1xuICB9XG5cbiAgaW1nIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuXG4uYm94LXNldC1pdGVtIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuXG4gICYuaS0xIHtcbiAgICB0b3A6IDM2JTtcbiAgICByaWdodDogLTMlO1xuXG4gICAgc3ZnIHtcbiAgICAgIHRvcDogMS4zcmVtO1xuICAgICAgbGVmdDogLTI1cmVtO1xuICAgICAgd2lkdGg6IDIzLjZyZW07XG4gICAgICBoZWlnaHQ6IDguN3JlbTtcbiAgICB9XG4gIH1cblxuICAmLmktMiB7XG4gICAgdG9wOiA2MCU7XG4gICAgcmlnaHQ6IC01JTtcblxuICAgIHN2ZyB7XG4gICAgICB0b3A6IDAuODJyZW07XG4gICAgICBsZWZ0OiAtMTJyZW07XG4gICAgICB3aWR0aDogMTUuN3JlbTtcbiAgICB9XG4gIH1cblxuICAmLmktMyB7XG4gICAgdG9wOiA2MCU7XG4gICAgbGVmdDogLTIuNSU7XG5cbiAgICBzdmcge1xuICAgICAgdG9wOiAwLjgycmVtO1xuICAgICAgbGVmdDogMTUuNXJlbTtcbiAgICAgIHdpZHRoOiAxNS43cmVtO1xuICAgIH1cbiAgfVxuXG4gICYuaS00IHtcbiAgICB0b3A6IDc1JTtcbiAgICBsZWZ0OiAtMSU7XG5cbiAgICBzdmcge1xuICAgICAgdG9wOiAwLjgycmVtO1xuICAgICAgbGVmdDogMTVyZW07XG4gICAgICB3aWR0aDogMjIuNXJlbTtcbiAgICB9XG4gIH1cblxuICBwIHtcbiAgICB3aWR0aDogMTUuMXJlbTtcbiAgICBmb250LXNpemU6IDEuNnJlbTtcbiAgICBsaW5lLWhlaWdodDogMi4ycmVtO1xuICAgIGNvbG9yOiAkdGV4dC1kYXJrO1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICB9XG5cbiAgc3ZnIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gIH1cbn1cblxuLnByb2R1Y3QtY29ubmVjdGVkIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nOiA4LjVyZW0gJGRlZmF1bHQtaW5zZXQ7XG5cbiAgQGluY2x1ZGUgbWVkaWEoJz49dGFibGV0Jykge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhKCc8dGFibGV0Jykge1xuICAgIHBhZGRpbmc6IDguNXJlbSAkbW9iaWxlLWd1dHRlciAwO1xuICB9XG5cbiAgJi5pcy1maXhlZCB7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcblxuICAgIC5kZXZpY2UtaXRlbS5pcy1hY3RpdmUge1xuICAgICAgLmJlYWNvbnMge1xuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuXG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICBhbmltYXRpb24tcGxheS1zdGF0ZTogcnVubmluZztcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBpbWcge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5sZWZ0LWJsb2NrIHtcbiAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgIHRvcDogMDtcbiAgICB9XG5cbiAgICAuYmVhY29uLWNvbnRlbnQuaXMtYWN0aXZlIHtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgfVxuXG4gICAgLmNvbm5lY3RlZC1waG9uZS1jb250YWluZXIge1xuICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgdG9wOiA4LjVyZW07XG4gICAgICBsZWZ0OiAwO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICBtYXJnaW46IDAgYXV0bztcbiAgICB9XG4gIH1cblxuICAmLmlzLWFic29sdXRlIHtcbiAgICAubGVmdC1ibG9jayB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IGF1dG87XG4gICAgICBib3R0b206IDA7XG4gICAgfVxuXG4gICAgLmNvbm5lY3RlZC1waG9uZS1jb250YWluZXIge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiBhdXRvO1xuICAgICAgYm90dG9tOiA1LjVyZW07XG4gICAgfVxuICB9XG5cbiAgLmxlZnQtYmxvY2sge1xuICAgIEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcpIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIGxlZnQ6ICRkZWZhdWx0LWluc2V0O1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBoZWlnaHQ6IDEwMHZoO1xuICAgICAgd2lkdGg6IDM3LjJyZW07XG4gICAgfVxuXG4gICAgYXJ0aWNsZSB7XG4gICAgICBAaW5jbHVkZSBtZWRpYSgnPj10YWJsZXQnKSB7XG4gICAgICAgIHdpZHRoOiAzMi44cmVtO1xuICAgICAgfVxuICAgIH1cblxuICAgIGgyIHtcbiAgICAgIGNvbG9yOiAkbmF2eTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDUwcHg7XG4gICAgfVxuXG4gICAgYSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBjb2xvcjogJHJlZDtcblxuICAgICAgc3ZnIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDEycHg7XG4gICAgICAgIGhlaWdodDogMTBweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAucmlnaHQtYmxvY2sge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB3aWR0aDogNzAlO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEoJz49dGFibGV0Jykge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDdyZW07XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEoJzx0YWJsZXQnKSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG4gIH1cbn1cblxuLmNvbm5lY3RlZC1waG9uZS1jb250YWluZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xuICBtYXJnaW46IDAgYXV0bztcbiAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIHdpZHRoOiAzNC4ycmVtO1xuICBoZWlnaHQ6IDYzLjNyZW07XG5cbiAgQGluY2x1ZGUgbWVkaWEoJzx0YWJsZXQnKSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB9XG5cbiAgLmJlYWNvbnMge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgaGVpZ2h0OiAyMnB4O1xuICAgIHdpZHRoOiAyMnB4O1xuICAgIHotaW5kZXg6IDEwO1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSA1MDBtcyAkZWFzaW5nO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEoJz49dGFibGV0Jykge1xuICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgICB9XG5cbiAgICAmLmJlYWNvbi0xIHtcbiAgICAgIHJpZ2h0OiAxNSU7XG4gICAgICB0b3A6IDIwJTtcbiAgICB9XG5cbiAgICAmLmJlYWNvbi0yIHtcbiAgICAgIGxlZnQ6IDMyJTtcbiAgICAgIHRvcDogMzAuMjUlO1xuICAgIH1cblxuICAgICYuYmVhY29uLTMge1xuICAgICAgcmlnaHQ6IDE5JTtcbiAgICAgIGJvdHRvbTogNDglO1xuICAgIH1cblxuICAgICYuYmVhY29uLTQge1xuICAgICAgbGVmdDogNTglO1xuICAgICAgYm90dG9tOiAzNy4yJTtcbiAgICB9XG5cbiAgICAmLmJlYWNvbi01IHtcbiAgICAgIHJpZ2h0OiAyNyU7XG4gICAgICBib3R0b206IDE1LjclO1xuICAgIH1cblxuICAgIGRpdiB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgaGVpZ2h0OiAxNnB4O1xuICAgICAgd2lkdGg6IDE2cHg7XG4gICAgICBib3JkZXItcmFkaXVzOiA5OTlweDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgIGJvcmRlcjogc29saWQgMnB4ICRyZWQ7XG4gICAgICB6LWluZGV4OiAxO1xuICAgIH1cblxuICAgIHAge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgZm9udC1zaXplOiA4cHg7XG4gICAgICBjb2xvcjogJHJlZDtcbiAgICAgIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG4gICAgfVxuXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBsZWZ0OiAtMTlweDtcbiAgICAgIHRvcDogLTE5cHg7XG4gICAgICB3aWR0aDogNjBweDtcbiAgICAgIGhlaWdodDogNjBweDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRyZWQ7XG4gICAgICBvcGFjaXR5OiAuMztcbiAgICAgIHotaW5kZXg6IDA7XG5cbiAgICAgIEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcpIHtcbiAgICAgICAgYW5pbWF0aW9uOiByYWRpYXRlIDIuNXMgZWFzZSBpbmZpbml0ZTtcbiAgICAgICAgYW5pbWF0aW9uLXBsYXktc3RhdGU6IHBhdXNlZDtcbiAgICAgIH1cblxuICAgICAgQGluY2x1ZGUgbWVkaWEoJzx0YWJsZXQnKSB7XG4gICAgICAgIHdpZHRoOiAzOHB4O1xuICAgICAgICBoZWlnaHQ6IDM4cHg7XG4gICAgICAgIGxlZnQ6IC04cHg7XG4gICAgICAgIHRvcDogLThweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLmFwcC1kZXZpY2UgLmRldmljZS1pdGVtIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuXG4ucHJvZHVjdC1jb25uZWN0ZWQtaW5mbyB7XG4gIHotaW5kZXg6IDE7XG5cbiAgQGluY2x1ZGUgbWVkaWEoJz49dGFibGV0Jykge1xuICAgIHdpZHRoOiA1MCU7XG4gICAgcGFkZGluZy10b3A6IDYwdmg7XG4gIH1cblxuICAuYmVhY29uLWNvbnRlbnQge1xuICAgIG1hcmdpbi1ib3R0b206IDMwcmVtO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcblxuICAgIEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcpIHtcbiAgICAgIG9wYWNpdHk6IDA7XG4gICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDM1MG1zO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhKCc8dGFibGV0Jykge1xuICAgICAgbWFyZ2luLWJvdHRvbTogNDNweDtcbiAgICB9XG4gIH1cblxuICBoNiB7XG4gICAgY29sb3I6ICRuYXZ5O1xuICAgIG1hcmdpbi1ib3R0b206IDIuNXJlbTtcbiAgfVxuXG4gIHAge1xuICAgIGZvbnQtc2l6ZTogMS42cmVtO1xuICAgIGNvbG9yOiAkZ3JheTtcbiAgfVxuXG4gIHN0cm9uZyB7XG4gICAgZm9udC1mYW1pbHk6ICRmb250O1xuICAgIGZvbnQtd2VpZ2h0OiAkbWVkaXVtO1xuICB9XG59XG5cbi5wcm9kdWN0LXNjaGVtYXRpYyB7XG4gIHBhZGRpbmc6IDlyZW0gJGRlZmF1bHQtaW5zZXQ7XG5cbiAgQGluY2x1ZGUgbWVkaWEoJzx0YWJsZXQnKSB7XG4gICAgcGFkZGluZzogOXJlbSAwO1xuICB9XG5cbiAgaDIge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBjb2xvcjogJG5hdnk7XG4gICAgbWF4LXdpZHRoOiA1MDBweDtcbiAgICBtYXJnaW46IDAgYXV0byA0MHB4O1xuICB9XG59XG5cbi5zY2hlbWF0aWMtdGFibGUtd3JhcCB7XG4gIGZvbnQtc2l6ZTogMS41cmVtO1xuXG4gICYuZGVza3RvcC1vbmx5IHtcbiAgICBAaW5jbHVkZSBtZWRpYSgnPHRhYmxldCcpIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgJi5tb2JpbGUtb25seSB7XG4gICAgQGluY2x1ZGUgbWVkaWEoJz49dGFibGV0Jykge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cblxuICB0YWJsZSB7XG4gICAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgICB3aWR0aDogMTAwJTtcblxuICAgIHRoLCB0ZCB7XG4gICAgICBwYWRkaW5nOiAzcmVtO1xuICAgIH1cblxuICAgIHRoIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgZm9udC1zaXplOiAxLjhyZW07XG5cbiAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICBib3JkZXItYm90dG9tOiBzb2xpZCAycHggI0U5RjFGNDtcbiAgICAgIH1cblxuICAgICAgJjpudGgtY2hpbGQoMikge1xuICAgICAgICBpbWcge1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICB0b3A6IDEuOHJlbTtcbiAgICAgICAgICByaWdodDogMi43cmVtO1xuICAgICAgICAgIHdpZHRoOiAxMi4xcmVtO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICY6bnRoLWNoaWxkKDMpIHtcbiAgICAgICAgaW1nIHtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgdG9wOiAxLjhyZW07XG4gICAgICAgICAgcmlnaHQ6IDIuOXJlbTtcbiAgICAgICAgICB3aWR0aDogMTAuMXJlbTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIHRyOm5vdCguaGVhZGVyLXJvdykge1xuICAgICAgdGQ6bnRoLWNoaWxkKDIpLCB0ZDpudGgtY2hpbGQoMykge1xuICAgICAgICBib3JkZXItYm90dG9tOiBzb2xpZCAycHggJHdoaXRlO1xuICAgICAgfVxuXG4gICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICB0ZDpudGgtY2hpbGQoMiksIHRkOm50aC1jaGlsZCgzKSB7XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbTogc29saWQgMnB4ICNFOUYxRjQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICB0ZCB7XG4gICAgICBib3JkZXItYm90dG9tOiBzb2xpZCAycHggI0U5RjFGNDtcbiAgICAgIGNvbG9yOiAjNEE2MjczO1xuICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcblxuICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgIGNvbG9yOiAjNzY4QzlDO1xuICAgICAgfVxuXG4gICAgICAmOm50aC1jaGlsZCgyKSB7XG4gICAgICAgIGJvcmRlci1yaWdodDogc29saWQgMnB4ICNEM0UzRUE7XG4gICAgICAgIGJvcmRlci1sZWZ0OiBzb2xpZCAycHggI0QzRTNFQTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0VCRjRGQjtcbiAgICAgIH1cblxuICAgICAgJjpudGgtY2hpbGQoMykge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjZGOUZCO1xuICAgICAgICBib3JkZXItcmlnaHQ6IHNvbGlkIDJweCAjRTlGMUY0O1xuICAgICAgfVxuICAgIH1cblxuICAgIC5oZWFkZXItcm93IHtcbiAgICAgIHRoIHtcbiAgICAgICAgJjpudGgtY2hpbGQoMikge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXZ5O1xuICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogNXB4O1xuICAgICAgICB9XG5cbiAgICAgICAgJjpudGgtY2hpbGQoMykge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMyODQ0NTg7XG4gICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogNXB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmRpbWVuc2lvbnMsIC53ZWlnaHQsIC5iYXR0ZXJ5IHtcbiAgICAgIHRkOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgYm9yZGVyLWxlZnQ6IHNvbGlkIDJweCAjRTlGMUY0O1xuICAgICAgfVxuICAgIH1cblxuICAgIC5iYXR0ZXJ5IHtcbiAgICAgIHRkOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogNXB4O1xuICAgICAgfVxuICAgIH1cblxuICAgIC5iYXR0ZXJ5IHtcbiAgICAgIHRkOmxhc3QtY2hpbGQge1xuICAgICAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogNXB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIGgzIHtcbiAgICBmb250LWZhbWlseTogJGZvbnQ7XG4gICAgZm9udC13ZWlnaHQ6ICRtZWRpdW07XG4gICAgZm9udC1zaXplOiAyNHB4O1xuICAgIHBhZGRpbmctbGVmdDogMzBweDtcbiAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICB9XG5cbiAgLnRhYmxlLWNvbHVtbiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0VCRjRGQjtcblxuICAgICYuY29sdW1uLWVhcnBpZWNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNGNkY5RkI7XG5cbiAgICAgIC50YWJsZS1jb2x1bW4taGVhZGluZyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMyODQ0NTg7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLnRhYmxlLWNvbHVtbi1oZWFkaW5nIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdnk7XG4gICAgcGFkZGluZzogMThweCAzMHB4O1xuXG4gICAgcCB7XG4gICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgZm9udC1mYW1pbHk6ICRmb250O1xuICAgICAgZm9udC13ZWlnaHQ6ICRtZWRpdW07XG4gICAgICBmb250LXNpemU6IDE1cHg7XG4gICAgfVxuXG4gICAgaW1nIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcblxuICAgICAgJi50YWJsZS1pbWctYnJhaW4ge1xuICAgICAgICB0b3A6IC0zMHB4O1xuICAgICAgICByaWdodDogMzBweDtcbiAgICAgICAgaGVpZ2h0OiAxMDhweDtcbiAgICAgICAgd2lkdGg6IDczcHg7XG4gICAgICB9XG5cbiAgICAgICYudGFibGUtaW1nLWVhcnBpZWNlIHtcbiAgICAgICAgdG9wOiAtMjVweDtcbiAgICAgICAgcmlnaHQ6IDMwcHg7XG4gICAgICAgIGhlaWdodDogMTE3cHg7XG4gICAgICAgIHdpZHRoOiAxMDBweDtcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZVgoLTEpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC50YWJsZS1jb2x1bW4tZGF0YSB7XG4gICAgcGFkZGluZzogMThweCAzMHB4IDIzcHg7XG5cbiAgICAmOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICR3aGl0ZTtcbiAgICB9XG5cbiAgICBwIHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIGZvbnQtZmFtaWx5OiAkZm9udDtcbiAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgIGNvbG9yOiAjNEE2MjczO1xuXG4gICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgY29sb3I6ICRuYXZ5O1xuICAgICAgICBmb250LXdlaWdodDogJG1lZGl1bTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4ucHJvZHVjdC10ZWNoLXByZXZpZXcge1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBwYWRkaW5nOiAxMC45cmVtICRtb2JpbGUtZ3V0dGVyIDEzLjhyZW07XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjExLCAyMjcsIDIzNCwgMC4yNSk7XG5cbiAgQGluY2x1ZGUgbWVkaWEoJz49dGFibGV0Jykge1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICB9XG5cbiAgQGluY2x1ZGUgbWVkaWEoJzx0YWJsZXQnKSB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBwYWRkaW5nOiA0OHB4ICRtb2JpbGUtZ3V0dGVyIDEwOHB4O1xuICB9XG5cbiAgYXJ0aWNsZSB7XG4gICAgbWF4LXdpZHRoOiA1MHJlbTtcbiAgfVxuXG4gIGgzIHtcbiAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICB9XG5cbiAgYSB7XG4gICAgbWFyZ2luLXRvcDogNnJlbTtcblxuICAgIEBpbmNsdWRlIG1lZGlhKCc8dGFibGV0Jykge1xuICAgICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICB9XG4gIH1cblxuICBpbWcge1xuICAgIHdpZHRoOiAzMi4zcmVtO1xuICAgIGhlaWdodDogMjEuNHJlbTtcblxuICAgIEBpbmNsdWRlIG1lZGlhKCc8dGFibGV0Jykge1xuICAgICAgd2lkdGg6IDE2M3B4O1xuICAgICAgaGVpZ2h0OiAxMDhweDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDM2cHg7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEoJz49dGFibGV0Jykge1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC03LjFyZW0pO1xuICAgIH1cbiAgfVxufVxuIiwiLnRlY2hub2xvZ3ktaGVybyB7XG4gIEBpbmNsdWRlIGNvdmVyKCk7XG4gIHBhZGRpbmctdG9wOiA4cmVtO1xuICBtYXJnaW4tYm90dG9tOiA4LjlyZW07XG5cbiAgQGluY2x1ZGUgbWVkaWEoJz49dGFibGV0Jykge1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYSgnPHRhYmxldCcpIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgcGFkZGluZzogODBweCAkbW9iaWxlLWd1dHRlciA1MHB4O1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnaW1nL3RlY2hub2xvZ3kvaGVyby1iZy1tb2JpbGUucG5nJykgIWltcG9ydGFudDtcbiAgfVxufVxuXG4udGVjaC1oZXJvLXZpc3VhbCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luLWJvdHRvbTogLTIycmVtO1xuXG4gIEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcpIHtcbiAgICBsZWZ0OiAtMnJlbTtcbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhKCc8dGFibGV0Jykge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgbWFyZ2luLWJvdHRvbTogLTIwcHg7XG4gIH1cblxuICBpbWcge1xuICAgIHdpZHRoOiA3MC4zcmVtO1xuICAgIGhlaWdodDogODJyZW07XG5cbiAgICBAaW5jbHVkZSBtZWRpYSgnPHRhYmxldCcpIHtcbiAgICAgIHdpZHRoOiAzNXJlbTtcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICB9XG4gIH1cbn1cblxuLnRlY2gtaGVyby1jb3B5IHtcblxuICBhcnRpY2xlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICBAaW5jbHVkZSBtZWRpYSgnPj10YWJsZXQnKSB7XG4gICAgICBsZWZ0OiAtOXJlbTtcbiAgICAgIG1heC13aWR0aDogNTMuMnJlbTtcbiAgICB9XG4gIH1cblxuICBoMSB7XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgICBtYXJnaW4tYm90dG9tOiA2cmVtO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEoJzx0YWJsZXQnKSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAyNXB4O1xuICAgIH1cblxuICAgIHNwYW4ge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBjb2xvcjogJHJlZDtcbiAgICB9XG4gIH1cblxuICBwIHtcbiAgICBjb2xvcjogJGJsdWUtbGlnaHQ7XG4gICAgbGluZS1oZWlnaHQ6IDIuNXJlbTtcbiAgfVxufVxuXG4udGVjaC1leHBsb2RlIHtcbiAgcGFkZGluZy1ib3R0b206IDMwcmVtO1xuXG4gIEBpbmNsdWRlIG1lZGlhKCc8dGFibGV0Jykge1xuICAgIHBhZGRpbmctYm90dG9tOiA3LjhyZW07XG4gIH1cblxuICAmLmlzLWZpeGVkIHtcbiAgICAuZXhwbG9kZS0xIHsgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0ycmVtKTsgfVxuICAgIC5leHBsb2RlLTIgeyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTJyZW0pOyB9XG4gICAgLmV4cGxvZGUtMyB7IHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtM3JlbSk7IH1cbiAgICAuZXhwbG9kZS00IHsgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC00LjVyZW0pOyB9XG4gICAgLmV4cGxvZGUtNSB7IHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtN3JlbSk7IH1cbiAgICAuZXhwbG9kZS02IHsgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xNy41cmVtKTsgfVxuXG4gICAgLmJlYWNvbi1jb250ZW50Om5vdCguaXMtYWN0aXZlKSB7XG4gICAgICBvcGFjaXR5OiAwO1xuICAgIH1cblxuICAgIC5jb25uZWN0ZWQtcGhvbmUtY29udGFpbmVyIHtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCg4LjVyZW0pIHRyYW5zbGF0ZVkoMCk7XG4gICAgfVxuXG4gICAgLmRldmljZS1pdGVtLmlzLWFjdGl2ZSB7XG4gICAgICBpbWcge1xuICAgICAgICAtd2Via2l0LWZpbHRlcjogZHJvcC1zaGFkb3coMHB4IDBweCAyMHB4ICNCOEZGQzMpO1xuICAgICAgICBmaWx0ZXI6IGRyb3Atc2hhZG93KDBweCAwcHggMjBweCAjQjhGRkMzKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmLmlzLWVuZCB7XG4gICAgLmJlYWNvbi1jb250ZW50LmlzLWFjdGl2ZSB7XG4gICAgICBvcGFjaXR5OiAwO1xuICAgIH1cblxuICAgIC5iZWFjb24tZ3JvdXAuaXMtYWN0aXZlIHtcbiAgICAgIG9wYWNpdHk6IDA7XG4gICAgfVxuXG4gICAgLmRldmljZS1pdGVtLmlzLWFjdGl2ZSB7XG4gICAgICBpbWcge1xuICAgICAgICAtd2Via2l0LWZpbHRlcjogZHJvcC1zaGFkb3coMHB4IDBweCAwcHggI0I4RkZDMyk7XG4gICAgICAgIGZpbHRlcjogZHJvcC1zaGFkb3coMHB4IDBweCAwcHggI0I4RkZDMyk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi5mYWRlLW91dCB7XG4gICAgLmRldmljZS1pdGVtOm5vdCguaXMtYWN0aXZlKSB7XG4gICAgICBpbWcge1xuICAgICAgICBvcGFjaXR5OiAwLjI7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLnByb2R1Y3QtY29ubmVjdGVkLWluZm8ge1xuICAgIEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcpIHtcbiAgICAgIHBhZGRpbmctdG9wOiA4MHZoO1xuICAgIH1cbiAgfVxuXG4gIC5iZWFjb24tZ3JvdXAge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgei1pbmRleDogMTA7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAyNTBtcztcblxuICAgIEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcpIHtcbiAgICAgIG9wYWNpdHk6IDA7XG4gICAgfVxuXG4gICAgJi5pcy1hY3RpdmUge1xuICAgICAgb3BhY2l0eTogMTtcbiAgICB9XG4gIH1cblxuICAuY29ubmVjdGVkLXBob25lLWNvbnRhaW5lciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDUwMG1zICRlYXNpbmc7XG5cbiAgICBAaW5jbHVkZSBtZWRpYSgnPj10YWJsZXQnKSB7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoOC41cmVtKSB0cmFuc2xhdGVZKC01cmVtKTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYSgnPHRhYmxldCcpIHtcbiAgICAgIG1hcmdpbjogNjVweCBhdXRvIDM1cHg7XG4gICAgICBoZWlnaHQ6IDcxLjNyZW07XG4gICAgfVxuICB9XG5cbiAgLmJlYWNvbnMge1xuICAgICYuYmVhY29uLTEge1xuICAgICAgcmlnaHQ6IDIxJTtcbiAgICAgIHRvcDogLTE5JTtcbiAgICB9XG5cbiAgICAmLmJlYWNvbi0yIHtcbiAgICAgIGxlZnQ6IDIzJTtcbiAgICAgIHRvcDogMTAuMjUlO1xuICAgIH1cblxuICAgICYuYmVhY29uLTMge1xuICAgICAgcmlnaHQ6IDYxJTtcbiAgICAgIGJvdHRvbTogMTAzJTtcbiAgICB9XG5cbiAgICAmLmJlYWNvbi00IHtcbiAgICAgIGxlZnQ6IDc3JTtcbiAgICAgIGJvdHRvbTogNjkuMiU7XG4gICAgfVxuXG4gICAgJi5iZWFjb24tNSB7XG4gICAgICByaWdodDogLTMlO1xuICAgICAgYm90dG9tOiA4NC43JTtcbiAgICB9XG5cbiAgICAmLmJlYWNvbi02IHtcbiAgICAgIHRvcDogMjElO1xuICAgICAgbGVmdDogLTIlO1xuICAgIH1cblxuICAgICYuYmVhY29uLTcge1xuICAgICAgdG9wOiA1OCU7XG4gICAgICBsZWZ0OiAzMyU7XG4gICAgfVxuXG4gICAgJi5iZWFjb24tOCB7XG4gICAgICB0b3A6IC0yOSU7XG4gICAgICByaWdodDogMzElO1xuICAgIH1cblxuICAgICYuYmVhY29uLTkge1xuICAgICAgdG9wOiAtMTklO1xuICAgICAgbGVmdDogNTElO1xuICAgIH1cbiAgfVxuXG4gIC5sZWZ0LWJsb2NrIHtcbiAgICBhcnRpY2xlIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbiAgfVxuXG4gIC5yaWdodC1ibG9jayB7XG4gICAgcGFkZGluZy1sZWZ0OiAyMHJlbTtcbiAgICB3aWR0aDogNjAlO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEoJzx0YWJsZXQnKSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG4gIH1cblxuICAuYXBwLWN0YS1jb3B5IHtcbiAgICBoMiB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cblxuICAgID4gaHIge1xuICAgICAgd2lkdGg6IDYuMXJlbTtcbiAgICAgIG1hcmdpbjogM3JlbSAwIDQuNXJlbTtcbiAgICAgIGJvcmRlci1jb2xvcjogJHJlZDtcbiAgICB9XG4gIH1cblxuICAuYmVhY29uLWNvbnRlbnQge1xuICAgIHN0cm9uZyB7XG4gICAgICBjb2xvcjogJG5hdnk7XG4gICAgfVxuICB9XG5cbiAgLmRldmljZS1pdGVtIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIH1cblxuICBpbWcge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAtd2Via2l0LWZpbHRlcjogZHJvcC1zaGFkb3coMHB4IDBweCAwICNCOEZGQzMpO1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMzUwbXMsIHRyYW5zZm9ybSA3NTBtcyAkZWFzaW5nO1xuXG4gICAgJi5pcy1hY3RpdmUge1xuICAgICAgb3BhY2l0eTogMTtcbiAgICB9XG5cbiAgICAmLmV4cGxvZGUtMSB7XG4gICAgICB3aWR0aDogMzguNnJlbTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgyMXJlbSk7XG4gICAgICB6LWluZGV4OiA2O1xuICAgIH1cblxuICAgICYuZXhwbG9kZS0yIHtcbiAgICAgIHdpZHRoOiAyOC42cmVtO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEzcmVtKTtcbiAgICAgIHotaW5kZXg6IDU7XG4gICAgfVxuXG4gICAgJi5leHBsb2RlLTMge1xuICAgICAgd2lkdGg6IDIzLjJyZW07XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNXJlbSk7XG4gICAgICB6LWluZGV4OiA0O1xuICAgIH1cblxuICAgICYuZXhwbG9kZS00IHtcbiAgICAgIHdpZHRoOiAzMy4zcmVtO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC04Ljc1cmVtKTtcbiAgICAgIHotaW5kZXg6IDM7XG4gICAgfVxuXG4gICAgJi5leHBsb2RlLTUge1xuICAgICAgd2lkdGg6IDI1LjVyZW07XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTIwcmVtKTtcbiAgICAgIHotaW5kZXg6IDI7XG4gICAgfVxuXG4gICAgJi5leHBsb2RlLTYge1xuICAgICAgd2lkdGg6IDMzLjJyZW07XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTM2LjVyZW0pO1xuICAgICAgei1pbmRleDogMTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYSgnPHRhYmxldCcpIHtcbiAgICAgICYuZXhwbG9kZS0xIHsgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0ycmVtKTsgfVxuICAgICAgJi5leHBsb2RlLTIgeyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTJyZW0pOyB9XG4gICAgICAmLmV4cGxvZGUtMyB7IHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtM3JlbSk7IH1cbiAgICAgICYuZXhwbG9kZS00IHsgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC00LjVyZW0pOyB9XG4gICAgICAmLmV4cGxvZGUtNSB7IHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtN3JlbSk7IH1cbiAgICAgICYuZXhwbG9kZS02IHsgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xNy41cmVtKTsgfVxuICAgIH1cbiAgfVxufVxuXG4uc3RhdHMge1xuICBtYXJnaW4tdG9wOiA0cmVtO1xufVxuXG4uc3RhdCB7XG4gIGZsZXg6IDE7XG4gIHBhZGRpbmc6IDIuNXJlbSAxcmVtIDNyZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkICNlZWU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAmOmZpcnN0LWNoaWxkIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDIuN3JlbTtcbiAgfVxuXG4gIGhyIHtcbiAgICB3aWR0aDogMy41cmVtO1xuICAgIG1hcmdpbjogMHJlbSBhdXRvIDEuMnJlbTtcbiAgfVxufVxuXG4uc3RhdC12YWx1ZSB7XG4gIG1hcmdpbjogMDtcbiAgZm9udC1zaXplOiAzLjZyZW07XG4gIGNvbG9yOiAkcmVkO1xufVxuXG4uc3RhdC1pbmZvIHtcbiAgbWF4LXdpZHRoOiAxMnJlbTtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIGZvbnQtc2l6ZTogMS4xcmVtO1xuICBmb250LWZhbWlseTogJGZvbnQ7XG4gIGZvbnQtd2VpZ2h0OiAkbWVkaXVtO1xuICBjb2xvcjogJG5hdnk7XG59XG5cbi50ZWNoLWltZy1zb2xvIHtcbiAgZmlndXJlIHtcbiAgICBAaW5jbHVkZSByYXRpby1ib3goMS8wLjU1KTtcbiAgICBAaW5jbHVkZSBjb3ZlcigpO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEoJzx0YWJsZXQnKSB7XG4gICAgICBAaW5jbHVkZSByYXRpby1ib3goMS8wLjY1KTtcbiAgICB9XG4gIH1cbn1cblxuLnRlY2hub2xvZ3ktZmxvdyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZzogOS42cmVtIDE1LjNyZW0gMThyZW07XG4gIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgei1pbmRleDogMjtcblxuICBAaW5jbHVkZSBtZWRpYSgnPHRhYmxldCcpIHtcbiAgICBwYWRkaW5nOiA1LjhyZW0gJG1vYmlsZS1ndXR0ZXIgOC44cmVtO1xuICB9XG5cbiAgaW1nIHtcbiAgICBtYXJnaW4tYm90dG9tOiA2LjRyZW07XG5cbiAgICAmLmZsb3ctaW1nLWRlc2t0b3Age1xuICAgICAgQGluY2x1ZGUgbWVkaWEoJzx0YWJsZXQnKSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5mbG93LWltZy1tb2JpbGUge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB3aWR0aDogODAlO1xuICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG5cbiAgICAgIEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcpIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLmNvcHktYmxvY2sge1xuICBtYXgtd2lkdGg6IDY2LjlyZW07XG4gIG1hcmdpbjogMCBhdXRvO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgQGluY2x1ZGUgbWVkaWEoJzx0YWJsZXQnKSB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgfVxuXG4gIGgzIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWFyZ2luLWJvdHRvbTogNi44cmVtO1xuXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBib3R0b206IC0yLjdyZW07XG4gICAgICBsZWZ0OiAwO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICB3aWR0aDogNi4xcmVtO1xuICAgICAgaGVpZ2h0OiAxcHg7XG4gICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRyZWQ7XG5cbiAgICAgIEBpbmNsdWRlIG1lZGlhKCc8dGFibGV0Jykge1xuICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBwIHtcbiAgICBmb250LXNpemU6IDEuN3JlbTtcbiAgICBsaW5lLWhlaWdodDogMi41cmVtO1xuICB9XG59XG4iLCIuYXBwLWhlcm8ge1xuICBAaW5jbHVkZSBjb3ZlcigpO1xuICBAaW5jbHVkZSByYXRpby1ib3goMTYvOSk7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xuXG4gIEBpbmNsdWRlIG1lZGlhKCc8dGFibGV0Jykge1xuICAgIG1hcmdpbi1ib3R0b206IDUwcHg7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgcGFkZGluZy10b3A6IDE2NSU7XG4gICAgfVxuICB9XG59XG5cbi5hcHAtaGVyby1jb3B5IHtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHBhZGRpbmc6IDRyZW0gJGRlZmF1bHQtaW5zZXQgMDtcblxuICBAaW5jbHVkZSBtZWRpYSgnPHRhYmxldCcpIHtcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICBwYWRkaW5nOiA3NnB4ICRtb2JpbGUtZ3V0dGVyIDAgJG1vYmlsZS1ndXR0ZXI7XG4gIH1cblxuICBhcnRpY2xlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWF4LXdpZHRoOiAzOS41cmVtO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEoJzx0YWJsZXQnKSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICB9XG4gIH1cblxuICBoMSB7XG4gICAgY29sb3I6ICR3aGl0ZTtcblxuICAgIEBpbmNsdWRlIG1lZGlhKCc8dGFibGV0Jykge1xuICAgICAgbWF4LXdpZHRoOiAyNjBweDtcbiAgICB9XG5cbiAgICBzcGFuIHtcbiAgICAgIGNvbG9yOiAkcmVkO1xuXG4gICAgICBAaW5jbHVkZSBtZWRpYSgnPHRhYmxldCcpIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgaHIge1xuICAgIHdpZHRoOiA4cmVtO1xuICAgIG1hcmdpbjogNC41cmVtIDAgOS4xcmVtO1xuICAgIGJvcmRlci1jb2xvcjogJHJlZDtcblxuICAgIEBpbmNsdWRlIG1lZGlhKCc8dGFibGV0Jykge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cbn1cblxuLmFwcC1idXR0b25zIHtcbiAgQGluY2x1ZGUgbWVkaWEoJzx0YWJsZXQnKSB7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvdHRvbTogLTYwcHg7XG4gIH1cblxuICBhIHtcbiAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMXJlbTtcbiAgICB9XG4gIH1cbn1cblxuLmFwcC1mZWF0dXJlcyB7XG4gIG1hcmdpbi1ib3R0b206IDUuM3JlbTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICBAaW5jbHVkZSBtZWRpYSgnPHRhYmxldCcpIHtcbiAgICBtYXJnaW4tbGVmdDogJG1vYmlsZS1ndXR0ZXI7XG4gICAgbWFyZ2luLXJpZ2h0OiAkbW9iaWxlLWd1dHRlcjtcbiAgfVxufVxuXG4uYXBwLWZlYXR1cmVzLWlubmVyIHtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBtYXJnaW4tcmlnaHQ6IC0ycHg7XG4gIG1hcmdpbi1ib3R0b206IC0ycHg7XG59XG5cbi5hcHAtZmVhdHVyZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDMzLjMzMyU7XG4gIHBhZGRpbmc6IDE1LjRyZW0gMnJlbSAycmVtO1xuICBtaW4taGVpZ2h0OiAzNi44cmVtO1xuICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAjRUJFQkVCO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI0VCRUJFQjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gIEBpbmNsdWRlIG1lZGlhKCc8dGFibGV0LWwnKSB7XG4gICAgd2lkdGg6IDUwJTtcbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhKCc8dGFibGV0Jykge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1pbi1oZWlnaHQ6IDA7XG4gICAgcGFkZGluZzogNnJlbSAkbW9iaWxlLWd1dHRlcjtcbiAgfVxuXG4gICY6bnRoLWNoaWxkKDIpIC5hcHAtaWNvbiBzdmcge1xuICAgIG1heC1oZWlnaHQ6IDguM3JlbTtcbiAgfVxuXG4gIGg2IHtcbiAgICBtYXJnaW4tYm90dG9tOiAyLjVyZW07XG4gICAgZm9udC1mYW1pbHk6ICRmb250O1xuICAgIGZvbnQtd2VpZ2h0OiAkbWVkaXVtO1xuICAgIGZvbnQtc2l6ZTogMS43cmVtO1xuICB9XG5cbiAgcCB7XG4gICAgbWF4LXdpZHRoOiAyNS43cmVtO1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIGZvbnQtc2l6ZTogMS42cmVtO1xuICB9XG59XG5cbi5hcHAtaWNvbiB7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xuICBtYXJnaW46IDAgYXV0bztcblxuICBAaW5jbHVkZSBtZWRpYSgnPj10YWJsZXQnKSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvdHRvbTogMjNyZW07XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYSgnPHRhYmxldCcpIHtcbiAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICB9XG5cbiAgc3ZnIHtcbiAgICBtYXgtd2lkdGg6IDYuOHJlbTtcbiAgICBtYXgtaGVpZ2h0OiA2LjhyZW07XG4gIH1cbn1cbiIsIi5mYXEtbWFpbiB7XG4gIHBhZGRpbmc6IDcuNHJlbSAkZGVmYXVsdC1pbnNldCAxMHJlbTtcblxuICBAaW5jbHVkZSBtZWRpYSgnPHRhYmxldCcpIHtcbiAgICBwYWRkaW5nOiAyN3B4ICRtb2JpbGUtZ3V0dGVyO1xuICB9XG5cbiAgaDEge1xuICAgIG1hcmdpbi1ib3R0b206IDUuMnJlbTtcbiAgfVxufVxuXG4uZmFxLWJsb2NrIHtcbiAgbWFyZ2luLWJvdHRvbTogNS40cmVtO1xuXG4gICY6bm90KDpsYXN0LW9mLXR5cGUpIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGJvcmRlci1saWdodDtcbiAgfVxufVxuXG4uZmFxLWNhdCB7XG4gIG1hcmdpbi1ib3R0b206IDUuMXJlbTtcbiAgY29sb3I6ICRyZWQ7XG4gIGZvbnQtZmFtaWx5OiAkZm9udDtcbiAgZm9udC13ZWlnaHQ6ICRtZWRpdW07XG4gIGZvbnQtc2l6ZTogMS4ycmVtO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuXG4uZmFxLXJvdyB7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgcGFkZGluZy1sZWZ0OiAyLjdyZW07XG4gIG1hcmdpbi1ib3R0b206IDYuMXJlbTtcblxuICBAaW5jbHVkZSBtZWRpYSgnPj10YWJsZXQnKSB7XG4gICAgYm9yZGVyLWxlZnQ6IDhweCBzb2xpZCAkYmx1ZS1saWdodDtcbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhKCc8dGFibGV0Jykge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgYm9yZGVyLXdpZHRoOiA0cHg7XG4gIH1cblxuICAmLmlzLWhpZGRlbiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIHAsIGxpIHtcbiAgICBmb250LXNpemU6IDEuOHJlbTtcbiAgICBjb2xvcjogJHRleHQtYm9keTtcbiAgfVxuXG4gIGxpIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuXG4gICAgdWwge1xuICAgICAgbWFyZ2luLXRvcDogMXJlbTtcbiAgICB9XG4gIH1cblxuICBhIHtcbiAgICBjb2xvcjogJHJlZDtcblxuICAgICY6aG92ZXIge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgfVxuICB9XG5cbiAgLmZhcS1xIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgd2lkdGg6IDI4LjVyZW07XG4gICAgZmxleC1zaHJpbms6IDA7XG4gICAgbWFyZ2luLXJpZ2h0OiA2LjdyZW07XG5cbiAgICBAaW5jbHVkZSBtZWRpYSgnPHRhYmxldCcpIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDIuNXJlbTtcbiAgICB9XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IC0xcHg7XG4gICAgICBsZWZ0OiAtMTVweDtcbiAgICAgIHdpZHRoOiA2cHg7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmx1ZS1saWdodDtcblxuICAgICAgQGluY2x1ZGUgbWVkaWEoJz49dGFibGV0Jykge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuICAgIH1cblxuICAgIHAge1xuICAgICAgZm9udC1mYW1pbHk6ICRmb250O1xuICAgICAgZm9udC13ZWlnaHQ6ICRtZWRpdW07XG4gICAgICBjb2xvcjogJG5hdnk7XG4gICAgfVxuICB9XG59XG4iLCIucmVzdWx0IHtcbiAgQGluY2x1ZGUgZ3JpZC11bml0KHBhZGRpbmcsIDEsIDQpO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIC5yZXN1bHRfX2luZGV4IHtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgfVxuXG4gICAgLnJlc3VsdF9faW1hZ2Uge1xuICAgICAgYm9yZGVyLWNvbG9yOiAkd2hpdGU7XG4gICAgICBib3gtc2hhZG93OiAwIDEwcHggMzBweCByZ2JhKDAsIDAsIDAsIDAuMjUpO1xuXG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnJlc3VsdF9fZGVzY3JpcHRpb24gaDQge1xuICAgICAgY29sb3I6ICRyZWQ7XG4gICAgfVxuXG4gICAgLmN0YS1kYXJrLXJlZCB7XG4gICAgICAuY3RhLWFycm93LWljb24ge1xuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgIGJhY2tncm91bmQ6ICRyZWQ7XG4gICAgICAgIH1cblxuICAgICAgICBzdmcgcGF0aCB7XG4gICAgICAgICAgZmlsbDogJGJsdWUtbGlnaHQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmX19pbmRleCB7XG4gICAgQGluY2x1ZGUgZ3JpZC11bml0KHdpZHRoLCAyKTtcbiAgICBAaW5jbHVkZSBncmlkLXVuaXQoaGVpZ2h0LCAyKTtcbiAgICBtaW4td2lkdGg6IDQwcHg7XG4gICAgbWluLWhlaWdodDogNDBweDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBjb2xvcjogJHdoaXRlO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2luYy92ZWN0b3JzL3Jlc3VsdHMtaW5kZXgtYmcuc3ZnJyk7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICAgIG9wYWNpdHk6IDAuMzU7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAyNTBtcztcbiAgfVxuXG4gICZfX2ltYWdlIHtcbiAgICBAaW5jbHVkZSBncmlkLXVuaXQoaGVpZ2h0LCA2KTtcbiAgICBAaW5jbHVkZSBncmlkLXVuaXQobWFyZ2luLWxlZnQsIDIpO1xuICAgIEBpbmNsdWRlIGdyaWQtdW5pdChtYXJnaW4tcmlnaHQsIDIpO1xuICAgIEBpbmNsdWRlIGdyaWQtdW5pdCh3aWR0aCwgNik7XG4gICAgYmFja2dyb3VuZDogJGJsdWUtbGlnaHQ7XG4gICAgYm9yZGVyOiA1cHggc29saWQgJG9mZi13aGl0ZTI7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIGJveC1zaGFkb3c6IDAgMTBweCAzMHB4IHJnYmEoMCwgMCwgMCwgMCk7XG4gICAgZmxleC1zaHJpbms6IDA7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdHJhbnNpdGlvbjogYm9yZGVyLWNvbG9yIDI1MG1zLCBib3gtc2hhZG93IDUwMG1zO1xuICB9XG5cbiAgJl9fZGVzY3JpcHRpb24ge1xuICAgIEBpbmNsdWRlIGdyaWQtdW5pdChwYWRkaW5nLXJpZ2h0LCA0KTtcbiAgICBmbGV4OiAxO1xuXG4gICAgaDQge1xuICAgICAgZm9udC1mYW1pbHk6ICRmb250O1xuICAgICAgZm9udC13ZWlnaHQ6ICRtZWRpdW07XG4gICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgdHJhbnNpdGlvbjogY29sb3IgMjUwbXM7XG4gICAgfVxuXG4gICAgcCB7XG4gICAgICBmb250LWZhbWlseTogJGZvbnQtYm9vaztcbiAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxufVxuXG4uc3RvcmUtbG9jYXRpb24ge1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDI1MG1zO1xuXG4gICY6aG92ZXIge1xuICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcbiAgfVxufVxuXG4uc3RvcmVzLWxpc3Qge1xuICAmLmlzLWFjdGl2ZSB7XG4gICAgbGkgYSB7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCk7XG4gICAgfVxuICB9XG5cbiAgbGkgYSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTI1cHgpO1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMjUwbXMsIHRyYW5zZm9ybSA1MDBtcyBlYXNlO1xuICB9XG59XG5cbi8qKlxuICogV1AgU3RvcmUgTG9jYXRvciBwbHVnaW4gb3ZlcnJpZGVzXG4gKi9cbi53cHNsLXNlYXJjaCB7XG4gIEBpbmNsdWRlIGdyaWQtdW5pdChwYWRkaW5nLCAyLCA0KTtcbiAgYmFja2dyb3VuZDogJG9mZi13aGl0ZTI7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIHdpZHRoOiAxMDAlO1xuXG4gIGgyIHtcbiAgICBAaW5jbHVkZSBncmlkLXVuaXQobWFyZ2luLWJvdHRvbSwgMSk7XG4gIH1cbn1cblxuLmhjcC13cmFwIC53cHNsLWdtYXAtY2FudmFzIHtcbiAgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDtcbiAgaGVpZ2h0OiA5MHZoICFpbXBvcnRhbnQ7XG4gIHdpZHRoOiAzMy41JSAhaW1wb3J0YW50O1xufVxuXG4ud3BzbC1yZXN1bHRzLXdyYXAge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJhY2tncm91bmQ6ICNGOUY5Rjk7XG4gIGhlaWdodDogOTB2aDtcbiAgb3ZlcmZsb3c6IGF1dG87XG4gIHdpZHRoOiA2Ni41JTtcbn1cblxuI3dwc2wtd3JhcCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbiN3cHNsLXdyYXAgI3dwc2wtcmVzdWx0LWxpc3QgbGkge1xuICBib3JkZXItdG9wOiAxcHggc29saWQgJGJsdWUtbGlnaHQ7XG4gIGJvcmRlci1ib3R0b206IG5vbmU7XG4gIHBhZGRpbmc6IDA7XG59XG5cbiN3cHNsLXN0b3JlcyB7XG4gIGhlaWdodDogYXV0bztcbn1cblxuI3dwc2wtc3RvcmVzIC53cHNsLXN0b3JlLXRodW1iIHtcbiAgYm90dG9tOiAwO1xuICBmbG9hdDogbm9uZTtcbiAgaGVpZ2h0OiBhdXRvO1xuICBsZWZ0OiAwO1xuICBtYXJnaW46IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDA7XG4gIHRvcDogMDtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbiN3cHNsLXJlc3VsdC1saXN0IHtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICB3aWR0aDogMTAwJTtcbn1cblxuI3dwc2wtY2F0ZWdvcnksXG4ud3BzbC1pbnB1dCxcbi53cHNsLXNlbGVjdC13cmFwIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuI3dwc2wtc2VhcmNoLXdyYXAgLndwc2wtaW5wdXQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuXG4jd3BzbC1zZWFyY2gtd3JhcCAjd3BzbC1zZWFyY2gtaW5wdXQge1xuICBib3JkZXI6IDJweCBzb2xpZCByZ2JhKDExOCwgMTQwLCAxNTYsIDAuNSk7XG4gIHdpZHRoOiAxMjFweDtcbiAgcGFkZGluZzogOXB4IDEycHg7XG4gIHRyYW5zaXRpb246IGJvcmRlci1jb2xvciAyNTBtcztcblxuICAmOmZvY3VzIHtcbiAgICBvdXRsaW5lOiBub25lO1xuICAgIGJvcmRlci1jb2xvcjogJGdyYXk7XG4gIH1cbn1cblxuI3dwc2wtc2VhcmNoLXdyYXAgI3dwc2wtcmFkaXVzIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cblxuLndwc2wtZHJvcGRvd24ge1xuICBib3JkZXI6IDJweCBzb2xpZCByZ2JhKDExOCwgMTQwLCAxNTYsIDAuNSk7XG4gIHdpZHRoOiA5NnB4O1xuICB0cmFuc2l0aW9uOiBib3JkZXItY29sb3IgMjUwbXM7XG5cbiAgJi53cHNsLWFjdGl2ZSB7XG4gICAgYm9yZGVyLWNvbG9yOiAkZ3JheTtcbiAgfVxufVxuXG4jd3BzbC1zZWFyY2gtYnRuIHtcbiAgQGluY2x1ZGUgZ3JpZC11bml0KHBhZGRpbmctbGVmdCwgMik7XG4gIEBpbmNsdWRlIGdyaWQtdW5pdChwYWRkaW5nLXJpZ2h0LCAyKTtcbiAgcGFkZGluZy10b3A6IDEwcHg7XG4gIHBhZGRpbmctYm90dG9tOiAxMHB4O1xuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICBib3gtc2hhZG93OiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2eTtcbiAgYm9yZGVyLXJhZGl1czogOTk5OXB4ICFpbXBvcnRhbnQ7XG4gIGJvcmRlcjogbm9uZTtcbiAgY29sb3I6ICR3aGl0ZTtcbiAgZm9udC1mYW1pbHk6ICRmb250O1xuICBtYXJnaW4tbGVmdDogMTVweDtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAyNTBtcztcblxuICAmOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kOiAkZ3JheTtcbiAgfVxuXG4gICY6Zm9jdXMge1xuICAgIG91dGxpbmU6IG5vbmU7XG4gIH1cbn1cblxuLndwc2wtcHJlbG9hZGVyIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbiIsIi5sb2NhdGlvbi13cmFwIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXG4gIEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldC1tJykge1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcbiAgICBoZWlnaHQ6IDkwdmg7XG4gICAgbWluLWhlaWdodDogNzUwcHg7XG4gIH1cbn1cblxuLmxvY2F0aW9uLWluZm8ge1xuICBAaW5jbHVkZSBtZWRpYSgnPj10YWJsZXQtbScpIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHdpZHRoOiA1MCU7XG4gICAgb3ZlcmZsb3c6IGF1dG87XG4gIH1cblxuICAuYm90dG9tLXppcCBoMyB7XG4gICAgQGluY2x1ZGUgbWVkaWEoJz49dGFibGV0LW0nKSB7XG4gICAgICBAaW5jbHVkZSBncmlkLXVuaXQobWF4LXdpZHRoLCAxNyk7XG4gICAgICBtYXJnaW46IDAgYXV0bztcbiAgICB9XG4gIH1cblxuICAuYm90dG9tLXppcCBmb3JtIHtcbiAgICB3aWR0aDogYXV0bztcblxuICAgIEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldC1tJykge1xuICAgICAgQGluY2x1ZGUgZ3JpZC11bml0KG1heC13aWR0aCwgMTUpO1xuICAgICAgQGluY2x1ZGUgZ3JpZC11bml0KG1hcmdpbi10b3AsIDIpO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhKCc8dGFibGV0LW0nKSB7XG4gICAgICBtYXgtd2lkdGg6IDM1MHB4O1xuICAgIH1cbiAgfVxufVxuXG4ubG9jYXRpb24tZGV0YWlscyB7XG4gIEBpbmNsdWRlIGdyaWQtdW5pdChwYWRkaW5nLCAzLCAzLCA0KTtcbiAgYmFja2dyb3VuZDogJG9mZi13aGl0ZTI7XG5cbiAgLmxvY2F0aW9uLXdlYnNpdGUge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB0cmFuc2l0aW9uOiBjb2xvciAyNTBtcztcblxuICAgICY6aG92ZXIge1xuICAgICAgY29sb3I6ICRuYXZ5O1xuICAgIH1cbiAgfVxuXG4gIC5sb2NhdGlvbi1pY29uIHtcbiAgICBAaW5jbHVkZSBncmlkLXVuaXQobWFyZ2luLXJpZ2h0LCAyKTtcbiAgICBAaW5jbHVkZSBncmlkLXVuaXQod2lkdGgsIDEuNSk7XG4gICAgQGluY2x1ZGUgZ3JpZC11bml0KGhlaWdodCwgMS41KTtcblxuICAgIHN2ZyB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICB9XG5cbiAgICAmLm1hcmdpbi1zbWFsbCB7XG4gICAgICBAaW5jbHVkZSBncmlkLXVuaXQobWFyZ2luLXJpZ2h0LCAxKTtcbiAgICB9XG4gIH1cblxuICAubG9jYXRpb24tYWRkcmVzcyxcbiAgLmxvY2F0aW9uLXBob25lIHtcbiAgICBwYWRkaW5nOiAyMHB4IDAgMjBweCAxMHB4O1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkYmx1ZS1saWdodDtcbiAgfVxuXG4gIC5sb2NhdGlvbi1hZGRyZXNzIHtcbiAgICBAaW5jbHVkZSBncmlkLXVuaXQobWFyZ2luLXRvcCwgMik7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRibHVlLWxpZ2h0O1xuICB9XG5cbiAgLmxvY2F0aW9uLXBob25lIHtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB9XG5cbiAgLndwc2wtbG9jYXRpb25zLWRldGFpbHMsXG4gIC53cHNsLWxvY2F0aW9uLWFkZHJlc3Mge1xuICAgIG1hcmdpbjogMDtcbiAgfVxuXG4gIC5sb2NhdGlvbi1waG9uZSBwLFxuICAud3BzbC1sb2NhdGlvbnMtZGV0YWlscyxcbiAgLndwc2wtb3BlbmluZy1ob3VycyB7XG4gICAgZmxleDogMTtcbiAgfVxuXG4gIC5sb2NhdGlvbi1ob3VycyB7XG4gICAgQGluY2x1ZGUgZ3JpZC11bml0KG1hcmdpbi10b3AsIDIpO1xuICAgIHBhZGRpbmctbGVmdDogMTVweDtcbiAgfVxuXG4gIC53cHNsLW9wZW5pbmctaG91cnMge1xuICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAkYmx1ZS1saWdodCAhaW1wb3J0YW50O1xuICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICBib3JkZXItc3BhY2luZzogMDtcblxuICAgIHRkIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDE1cHg7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDI1cHg7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMTVweDtcbiAgICAgIHBhZGRpbmctdG9wOiAxNXB4O1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRibHVlLWxpZ2h0ICFpbXBvcnRhbnQ7XG5cbiAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAkYmx1ZS1saWdodCAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgIH1cblxuICAgIHRyOmxhc3QtY2hpbGQgdGQge1xuICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxufVxuXG4ubG9jYXRpb24tbWFwIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gIEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldC1tJykge1xuICAgIGZsZXg6IDE7XG4gICAgd2lkdGg6IDUwJTtcbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhKCc8dGFibGV0LW0nKSB7XG4gICAgQGluY2x1ZGUgcmF0aW8tYm94KDE2LzkpO1xuICB9XG5cbiAgLndwc2wtZ21hcC1jYW52YXMge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gIH1cbn1cblxuLmxvY2F0aW9uLWltYWdlcyB7XG4gIEBpbmNsdWRlIHJhdGlvLWJveCgxNi85KTtcbiAgYmFja2dyb3VuZDogJG5hdnk7XG5cbiAgQGluY2x1ZGUgbWVkaWEoJz49dGFibGV0LW0nKSB7XG4gICAgd2lkdGg6IDUwJTtcbiAgfVxufVxuXG4ubG9jYXRpb24taW1hZ2VzLXNsaWRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuXG4uaW1hZ2VzLXNsaWRlciB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG5cbiAgLnNsaWRlIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICB9XG5cbiAgaW1nIHtcbiAgICB3aWR0aDogYXV0bztcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIG1heC1oZWlnaHQ6IDEwMCU7XG4gIH1cblxuICAuZmxpY2tpdHktdmlld3BvcnQge1xuICAgIGhlaWdodDogMTAwJSAhaW1wb3J0YW50O1xuICB9XG59XG4iLCJcblxuYm9keS50ZWFzZXIge1xuICAvLyBiYWNrZ3JvdW5kLWNvbG9yOiAjMTcyODM1O1xuXG4gIGhlYWRlciwgZm9vdGVyIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICB9XG5cbiAgZGl2Lm1heC1jb250YWluZXIge1xuICAgIHBhZGRpbmctdG9wOiAwO1xuICB9XG5cbiAgLmJ0biB7XG4gICAgbWluLXdpZHRoOiAyMzFweDtcbiAgfVxuXG4gIC8vIGRpdi50ZWFzZXItY29udGVudCB7XG4gIC8vICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAvLyB9XG5cbiAgbWFpbi50ZWFzZXItY29udGFpbmVyIC50ZWFzZXItd3JhcCB7XG4gICAgbWF4LXdpZHRoOiA5OTBweDtcblxuICAgIEBpbmNsdWRlIG1lZGlhKCc8dGFibGV0Jykge1xuICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIH1cbiAgfVxufVxuXG5tYWluLnRlYXNlci1jb250YWluZXIge1xuXG4gIC5ib3gge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgYWxpZ24tY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBtaW4taGVpZ2h0OiAxMDB2aDtcbiAgfVxuXG4gIC50ZWFzZXItd3JhcCB7XG4gICAgcGFkZGluZzogMCAgJG1vYmlsZS1ndXR0ZXIgNDBweDtcbiAgICBtYXgtd2lkdGg6IDExMDBweDtcbiAgICBtYXJnaW46IDAgYXV0bztcblxuICAgIEBpbmNsdWRlIG1lZGlhKCc8dGFibGV0Jykge1xuICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgcGFkZGluZzogMjBweCAwO1xuICAgIH1cbiAgfVxuXG4gIGRpdi50ZWFzZXItaGVhZGVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nLXRvcDogNDBweDtcbiAgICBwYWRkaW5nLWxlZnQ6ICRtb2JpbGUtZ3V0dGVyO1xuICAgIHBhZGRpbmctcmlnaHQ6ICRtb2JpbGUtZ3V0dGVyO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEoJzx0YWJsZXQnKSB7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIHBhZGRpbmctdG9wOiA2MHB4O1xuXG4gICAgICBhLmxvZ28ge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgfVxuXG4gICAgICBkaXYudGVhc2VyLWZvcm0td3JhcCB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIGRpdi50ZWFzZXItY29udGVudCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGZsZXgtd3JhcDogd3JhcDtcblxuXG4gICAgQGluY2x1ZGUgbWVkaWEoJzx0YWJsZXQnKSB7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgfVxuXG4gICAgLmwtY29sIHtcbiAgICAgIHdpZHRoOiA1OSU7XG4gICAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCByZ2JhKDExOCwgMTQwLCAxNTYsIDAuNSk7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiA3MHB4O1xuICAgICAgcGFkZGluZy10b3A6IDEwcHg7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMjBweDtcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuXG5cbiAgICAgIEBpbmNsdWRlIG1lZGlhKCc8dGFibGV0Jykge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgYm9yZGVyLXJpZ2h0OiBub25lO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiYSgxMTgsIDE0MCwgMTU2LCAwLjUpO1xuICAgICAgICBwYWRkaW5nOiAwIDEwJSA0MHB4O1xuICAgICAgfVxuXG4gICAgICBwIHtcbiAgICAgICAgbWFyZ2luOiAxM3B4IDAgMzVweDtcblxuICAgICAgICBiciB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKCc8dGFibGV0Jykge1xuICAgICAgICAgIG1hcmdpbjogMThweCAwIDM4cHg7XG4gICAgICAgICAgY29sb3I6ICMxNzI4MzU7XG4gICAgICAgICAgb3BhY2l0eTogMC43O1xuXG4gICAgICAgICAgYnIge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgaDIge1xuICAgICAgQGluY2x1ZGUgZmx1aWQtdHlwZSgyOHB4LCA0MHB4LCA0MjBweCwgMTAyNHB4KTtcbiAgICAgIGNvbG9yOiAjMTcyODM1O1xuICAgICAgbGluZS1oZWlnaHQ6IDEyNy45MyU7XG4gICAgICBtYXJnaW46IDAgYXV0bztcblxuICAgICAgQGluY2x1ZGUgbWVkaWEoJzx0YWJsZXQnKSB7XG4gICAgICAgIG1heC13aWR0aDogNDUwcHg7XG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIGRpdi50ZWFzZXItaW5uZXIge1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIHdpZHRoOiA0MSU7XG4gICAgcGFkZGluZy1sZWZ0OiA2MHB4O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcblxuICAgIEBpbmNsdWRlIG1lZGlhKCc8dGFibGV0Jykge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBwYWRkaW5nOiAwIDEwJTtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cblxuICAgIC50b3Age1xuICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAgICBAaW5jbHVkZSBtZWRpYSgnPHRhYmxldCcpIHtcbiAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICB9XG5cbiAgICAgfVxuXG4gICAgaDMge1xuICAgICAgQGluY2x1ZGUgZmx1aWQtdHlwZSgyOHB4LCAzMnB4LCA0MjBweCwgMTAyNHB4KTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxMTUuNDMlO1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgbWFyZ2luLXRvcDogNXB4O1xuXG4gICAgICBAaW5jbHVkZSBtZWRpYSgnPHRhYmxldCcpIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gICAgICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgICB9XG4gICAgfVxuXG4gICAgc3ZnIHtcbiAgICAgIHdpZHRoOiAzOHB4O1xuICAgICAgaGVpZ2h0OiAzOHB4O1xuICAgICAgbWFyZ2luLXJpZ2h0OiAxNXB4O1xuXG4gICAgICBAaW5jbHVkZSBtZWRpYSgnPHRhYmxldCcpIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgfVxuICAgIH1cblxuICAgIHAge1xuICAgICAgY29sb3I6ICRncmF5O1xuICAgICAgbWFyZ2luOiAyM3B4IDAgNTFweDtcblxuICAgICAgQGluY2x1ZGUgbWVkaWEoJzx0YWJsZXQtbScpIHtcbiAgICAgICAgYnIge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgQGluY2x1ZGUgbWVkaWEoJzx0YWJsZXQnKSB7XG4gICAgICAgIG1hcmdpbjogMHB4IDAgMjRweDtcbiAgICAgICAgY29sb3I6ICMxNzI4MzU7XG4gICAgICAgIG9wYWNpdHk6IDAuNztcblxuICAgICAgICBiciB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBkaXYudGVhc2VyLWZvb3RlciB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGJvcmRlci10b3A6IDAuMXJlbSBzb2xpZCByZ2JhKDExOCwgMTQwLCAxNTYsIDAuMjUpO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEoJzx0YWJsZXQnKSB7XG4gICAgICBib3JkZXItdG9wOiBub25lO1xuICAgICAgbWFyZ2luLXRvcDogMzVweDtcbiAgICB9XG5cbiAgICBhIHtcbiAgICAgIGNvbG9yOiAjOTRBQ0JFO1xuICAgICAgJjpob3ZlciB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgfVxuICAgIH1cblxuICAgIHAge1xuICAgICAgLy8gY29sb3I6ICRncmF5O1xuICAgICAgLy8gZm9udC1zaXplOiByZW0oMTJweCk7XG4gICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICBjb2xvcjogIzk0QUNCRTtcbiAgICAgIHBhZGRpbmc6IDMwcHggNSU7XG5cbiAgICAgIEBpbmNsdWRlIG1lZGlhKCc8dGFibGV0Jykge1xuICAgICAgICBwYWRkaW5nOiAzcmVtIDEwJTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuZGl2LnRlYXNlci1mb3JtLXdyYXAge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgcCB7XG4gICAgY29sb3I6ICRncmF5O1xuICAgIG1hcmdpbi1yaWdodDogMzBweDtcbiAgfVxuXG4gICYuYm90dG9tLXRlYXNlciB7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICB9XG5cbiAgQGluY2x1ZGUgbWVkaWEoJzx0YWJsZXQnKSB7XG4gICAgd2lkdGg6IDEwMCU7XG5cbiAgICAmLmJvdHRvbS10ZWFzZXIge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBwb2ludGVyLWV2ZW50czogYXV0bztcbiAgICB9XG5cbiAgICBwLCBmb3JtIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cblxuICAgIHAge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICB9XG4gIH1cbn1cbiIsIlxuYm9keS5jYXJlZXJzIHtcblxuICBoZWFkZXIsIGZvb3RlciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgfVxuXG4gIGRpdi5tYXgtY29udGFpbmVyIHtcbiAgICBwYWRkaW5nLXRvcDogMDtcbiAgfVxuXG4gIGRpdi50ZWFzZXItaGVhZGVyIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBib3JkZXItYm90dG9tOiBzb2xpZCAxcHggI2VlZTtcbiAgICBwYWRkaW5nOiAzMHB4ICRtb2JpbGUtZ3V0dGVyIDIwcHg7XG5cbiAgICBhLmxvZ28ge1xuICAgICAgc3ZnIHtcbiAgICAgICAgd2lkdGg6IDI1cHg7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbnNlY3Rpb24uY2FyZWVycy1jb250ZW50LXdyYXAge1xuICBwYWRkaW5nOiA4MHB4ICRtb2JpbGUtZ3V0dGVyO1xuXG4gIGRpdi5jYXJlZXJzLWxpc3Rpbmcge1xuICAgIG1heC13aWR0aDogNzAwcHg7XG4gICAgbWFyZ2luOiAwIGF1dG87XG5cbiAgICBoMSB7XG4gICAgICBAaW5jbHVkZSBmbHVpZC10eXBlKDI4cHgsIDk2cHgsICR0YWJsZXQsICRtYXgtc2l0ZS13aWR0aCk7XG4gICAgICBjb2xvcjogJG5hdnk7XG4gICAgICBtYXJnaW4tYm90dG9tOiA1MHB4O1xuICAgIH1cblxuICAgIGgyIHtcbiAgICAgIEBpbmNsdWRlIGZsdWlkLXR5cGUoMThweCwgMzFweCwgJHRhYmxldCwgJG1heC1zaXRlLXdpZHRoKTtcbiAgICAgIGNvbG9yOiAkcmVkO1xuICAgIH1cbiAgfVxufVxuXG4vLyBHUkVFTkhPVVNFIENTU1xuXG5kaXYjd3JhcHBlciB7XG4gIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcblxuICBkaXYjbG9nbyB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIGgxIHtcbiAgICBmb250LXNpemU6IDU4cHg7XG4gICAgY29sb3I6ICRuYXZ5O1xuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG5cbiAgICBAaW5jbHVkZSBtZWRpYSgnPHRhYmxldCcpIHtcbiAgICAgIGZvbnQtc2l6ZTogMzJweDtcbiAgICB9XG4gIH1cblxuICBoMiB7XG4gICAgZm9udC1zaXplOiAyNHB4O1xuICAgIGNvbG9yOiAkcmVkO1xuICAgIG1hcmdpbi10b3A6IDMwcHg7XG5cbiAgICBAaW5jbHVkZSBtZWRpYSgnPHRhYmxldCcpIHtcbiAgICAgIGZvbnQtc2l6ZTogMjJweDtcbiAgICB9XG4gIH1cblxuICBkaXYjYXBwX2JvZHkge1xuICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gIH1cblxuICBkaXYjaGVhZGVyIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuXG4gICAgc3Bhbi5jb21wYW55LW5hbWUsIGEsIGRpdi5sb2NhdGlvbiB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxuXG4gIGgxLmFwcC10aXRsZSB7XG4gICAgZm9udC1zaXplOiA1OHB4O1xuICAgIGNvbG9yOiAkbmF2eTtcbiAgICBtYXJnaW4tYm90dG9tOiA1MHB4O1xuXG4gICAgQGluY2x1ZGUgbWVkaWEoJzx0YWJsZXQnKSB7XG4gICAgICBmb250LXNpemU6IDMycHg7XG4gICAgfVxuICB9XG5cbiAgcCwgbGkge1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udDtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICBmb250LXNpemU6IDE4cHg7XG4gICAgbGluZS1oZWlnaHQ6IDEuNGVtO1xuICAgIGNvbG9yOiAkZ3JheTtcbiAgfVxuXG4gIHVsIHtcbiAgICBtYXJnaW46IDMwcHggMDtcbiAgfVxuXG4gIGxpIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDEwcHg7XG5cbiAgICAmOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICB9XG4gIH1cblxuICBzZWN0aW9uLmxldmVsLTAge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nLWJvdHRvbTogNTBweDtcbiAgICBwYWRkaW5nLWxlZnQ6IDIxMHB4O1xuICAgIG1hcmdpbi10b3A6IDYwcHg7XG4gICAgYm9yZGVyLWJvdHRvbTogc29saWQgMXB4ICNlZWU7XG5cbiAgICBoMyB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgd2lkdGg6IDE5MHB4O1xuICAgICAgbWF4LXdpZHRoOiAxOTBweDtcbiAgICAgIGZvbnQtZmFtaWx5OiAkZm9udDtcbiAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICBjb2xvcjogJG5hdnk7XG4gICAgfVxuXG4gICAgZGl2Lm9wZW5pbmcge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgICAgcGFkZGluZy10b3A6IDEwcHg7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMTBweDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDE2cHg7XG4gICAgICBib3JkZXItbGVmdDogc29saWQgNnB4ICNFRkY5RkU7XG5cbiAgICAgIGEge1xuICAgICAgICBmb250LWZhbWlseTogJGZvbnQ7XG4gICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgZm9udC1zaXplOiAyNHB4O1xuICAgICAgICBjb2xvcjogJG5hdnk7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgdHJhbnNpdGlvbjogY29sb3IgMjUwbXMgZWFzZTtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBjb2xvcjogJHJlZDtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBzcGFuIHtcbiAgICAgICAgZm9udC1mYW1pbHk6ICRmb250O1xuICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgY29sb3I6ICRncmF5O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIGRpdiNhcHBsaWNhdGlvbiB7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG59XG4iLCIucGxpY3ktLW1haW4tY29udGVudCB7XG4gIC5wb2xpY3ktY29udGluZXIge1xuICAgIG1hcmdpbjogMTJyZW0gYXV0bztcbiAgICBtYXgtd2lkdGg6IDc1MHB4O1xuICAgIHdpZHRoOiA4MCU7XG4gICAgQGluY2x1ZGUgbWVkaWEoJzx0YWJsZXQnKSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgIHBhZGRpbmc6IDAgNSU7XG4gICAgICBtYXJnaW46IDhyZW0gYXV0bztcbiAgICB9XG4gIH1cblxuICAudGMtYm94IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDQwcHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1hcmdpbi10b3A6IDcwcHg7XG5cbiAgICBAaW5jbHVkZSBtZWRpYSgnPHRhYmxldCcpIHtcbiAgICAgIG1hcmdpbi10b3A6IDUwcHg7XG4gICAgfVxuXG4gICAgJjpiZWZvcmUge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICB3aWR0aDogOHB4O1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0QzRTNFQTtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBvcGFjaXR5OiAwLjU7XG4gICAgfVxuICB9XG5cbiAgaDEge1xuICAgIEBpbmNsdWRlIGZsdWlkLXR5cGUoMzNweCwgNDhweCwgNDIwcHgsIDEwMjRweCk7XG4gICAgbGluZS1oZWlnaHQ6IDExNS40MyU7XG4gICAgY29sb3I6ICMxNzI4MzU7XG4gICAgbWFyZ2luLWJvdHRvbTogNDVweDtcblxuICAgIEBpbmNsdWRlIG1lZGlhKCc8dGFibGV0Jykge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICB9XG4gIH1cblxuICBoMyB7XG4gICAgZm9udC1zaXplOiAxOHB4O1xuICAgIGNvbG9yOiAjMTcyODM1O1xuICAgIGxpbmUtaGVpZ2h0OiAxNDkuMTUlO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIH1cblxuICAuZS1kYXRlIHtcbiAgICBjb2xvcjogIzE3MjgzNTtcbiAgICBmb250LXNpemU6IDE4cHg7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICBsaW5lLWhlaWdodDogMTQ5LjE1JTtcblxuICAgIEBpbmNsdWRlIG1lZGlhKCc8dGFibGV0Jykge1xuICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgIH1cbiAgfVxuXG4gIGhyIHtcbiAgICBtYXJnaW4tdG9wOiA1MHB4O1xuXG4gICAgQGluY2x1ZGUgbWVkaWEoJzx0YWJsZXQnKSB7XG4gICAgICBtYXJnaW46IDMwcHggMCAzNXB4O1xuICAgIH1cbiAgfVxuXG4gIHAge1xuICAgIGNvbG9yOiAjNEE2NDc4O1xuICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICBsaW5lLWhlaWdodDogMTQ5LjE1JTtcblxuICAgIEBpbmNsdWRlIG1lZGlhKCc8dGFibGV0Jykge1xuICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgIH1cbiAgfVxuXG4gIGxpIHtcbiAgICBjb2xvcjogIzRBNjQ3ODtcbiAgICBmb250LXNpemU6IDE4cHg7XG4gICAgbGluZS1oZWlnaHQ6IDE0OS4xNSU7XG5cbiAgICBAaW5jbHVkZSBtZWRpYSgnPHRhYmxldCcpIHtcbiAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICB9XG4gIH1cblxuICBhIHtcbiAgICAvLyBjb2xvcjogI0Y5NTUzQTtcbiAgICBjb2xvcjogIzE5OTJENDtcbiAgICB0cmFuc2l0aW9uOiAwLjM1cztcblxuICAgICY6aG92ZXIge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG5cbiAgICB9XG4gIH1cbn1cblxuLmxvZ28tbWFyayB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5wb2xpY3kge1xuXG4gIC5sb2dvLW1hcmsge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG5cbiAgZm9vdGVyLCBoZWFkZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cbiIsIi5nZXQtZWFybHktYWNjZXNzIHtcblxuICAudGVhc2VyLWNvbnRlbnQgLmNvbnN1bWVyLWZvcm0td3JhcCAuZm9ybS13cmFwIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogNDBweDtcbiAgfVxuXG4gIG1haW4udGVhc2VyLWNvbnRhaW5lciAudGVhc2VyLXdyYXAge1xuICAgIC8vIHBhZGRpbmc6IDAgMCA0MHB4O1xuICAgIHBhZGRpbmc6IDAgNSU7XG4gICAgLy8gbWluLWhlaWdodDogY2FsYygxMDB2aCAtIDM0MnB4KTtcbiAgICBtaW4taGVpZ2h0OiBjYWxjKDEwMHZoIC0gMjY5cHgpO1xuICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgLy8gbWFyZ2luOiA5MHB4IGF1dG87XG5cblxuICAgIEBpbmNsdWRlIG1lZGlhKCc8dGFibGV0Jykge1xuICAgICAgbWluLWhlaWdodDogY2FsYygxMDB2aCAtIDI0MnB4KTtcbiAgICB9XG5cbiAgICAvLyBAaW5jbHVkZSBtZWRpYSgnPHRhYmxldCcpIHtcbiAgICAvLyAgICAgcGFkZGluZzogMCA1JTtcbiAgICAvLyAgICAgbWluLWhlaWdodDogY2FsYygxMDB2aCAtIDI0MnB4KTtcbiAgICAvLyAgICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICAvLyB9XG4gIH1cblxuICAuZy1lLWEtY29udGVudCB7XG4gICAgbWFyZ2luLXRvcDogMTEwcHg7XG5cblxuICAgIEBpbmNsdWRlIG1lZGlhKCc8dGFibGV0Jykge1xuICAgICAgbWF4LXdpZHRoOiAzMDBweDtcbiAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhKCc8bW9iaWxlLWwnKSB7XG4gICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgfVxuICB9XG5cbiAgbWFpbi50ZWFzZXItY29udGFpbmVyIHtcbiAgICAuYm94IHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgLy8gQGluY2x1ZGUgbWVkaWEoJzx0YWJsZXQnKSB7XG4gICAgICAvLyAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgLy8gICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAvLyB9XG4gICAgfVxuICB9XG5cbiAgbWFpbi50ZWFzZXItY29udGFpbmVyIC50ZWFzZXItY29udGVudCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG5cbiAgZGl2LnRlYXNlci1oZWFkZXIge1xuICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XG4gICAgQGluY2x1ZGUgbWVkaWEoJzx0YWJsZXQnKSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cbiAgfVxufVxuXG5cbi5nLWUtYS1jb250ZW50IHtcblxuICAudG9wLWNvcHkgcCB7XG4gICAgbWFyZ2luOiAyMHB4IDAgNTFweDtcblxuICAgIGJyIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICAgIEBpbmNsdWRlIG1lZGlhKCc8dGFibGV0Jykge1xuICAgICAgbWFyZ2luOiAzMHB4IDAgNTBweDtcbiAgICAgIGNvbG9yOiAjMTcyODM1O1xuICAgICAgb3BhY2l0eTogMC43O1xuXG4gICAgICBiciB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICYuaXMtYWN0aXZlIHtcbiAgICAudG9wLWNvcHkge1xuICAgICAgZGlzcGxheTogbm9uZTtcblxuICAgICAgQGluY2x1ZGUgbWVkaWEoJzx0YWJsZXQnKSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgfVxuICAgIH1cblxuICAuYnRuLXdyYXAge1xuXG4gICAgLmJ0biB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICBjb2xvcjogIzk0QUNCRTtcbiAgICAgIGJvcmRlcjogMi4yNjc4NXB4IHNvbGlkICM5NEFDQkU7XG5cbiAgICAgICYuaXMtYWN0aXZlIHtcbiAgICAgICAgYm9yZGVyOiAyLjI2Nzg1cHggc29saWQgI0Y5NTUzQTtcbiAgICAgICAgY29sb3I6ICNGOTU1M0E7XG4gICAgICAgIHN2ZyB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgIH1cbiAgfVxuXG4gIH1cblxuICAuYnRuLXdyYXAge1xuICAgIC8vIG1hcmdpbi10b3A6IDMuNXJlbTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblxuICAgIHN2ZyB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBsZWZ0OiAxNXB4O1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgdG9wOiA1MCU7XG4gICAgICB3aWR0aDogMTRweDtcbiAgICAgIGhlaWdodDogMTBweDtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgLmJ0biB7XG4gICAgICBtaW4td2lkdGg6IDMxMHB4O1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAgICAgQGluY2x1ZGUgbWVkaWEoJzx0YWJsZXQnKSB7XG4gICAgICAgIG1pbi13aWR0aDogaW5oZXJpdDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB9XG5cbiAgICAgICAmOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxNXB4O1xuXG4gICAgICAgICBAaW5jbHVkZSBtZWRpYSgnPHRhYmxldCcpIHtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIzcHg7XG4gICAgICAgICB9XG4gICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIGgyIHtcbiAgICBAaW5jbHVkZSBmbHVpZC10eXBlKDI4cHgsIDQwcHgsIDQyMHB4LCAxMDI0cHgpO1xuICAgIGxpbmUtaGVpZ2h0OiAxMjcuOTMlO1xuICAgIGNvbG9yOiAjMTcyODM1O1xuICB9XG5cblxuXG59XG5cbi5nZXQtZWFybHktYWNjZXNzIC50ZWFzZXItY29udGVudCB7XG5cbiAgLy8gbWF4LXdpZHRoOiA5MDBweDtcbiAgLmNvbnN1bWVyLWZvcm0td3JhcCB7XG4gICAgLy8gbWFyZ2luLXRvcDogMzhweDtcbiAgICBtYXgtd2lkdGg6IDYzMHB4O1xuICAgIG1hcmdpbjogMzhweCBhdXRvIDA7XG5cbiAgICAuZm9ybS13cmFwIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG5cbiAgICAgIC8vIGlmcmFtZSB7XG4gICAgICAvLyAgIGhlaWdodDogNzAwcHggIWltcG9ydGFudDtcbiAgICAgIC8vIH1cblxuICAgICAgLmJ0bi13cmFwIHtcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgIH1cblxuICAgICAgLmZvcm1idG4ge1xuICAgICAgICBtYXJnaW4tdG9wOiAxNXB4O1xuICAgICAgfVxuICAgIH1cblxuICAgIC5zdWItaGVhZGVyIHtcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICBjb2xvcjogIzE3MjgzNTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICBmb250LWZhbWlseTogJGZvbnQ7XG4gICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuXG4gICAgICBAaW5jbHVkZSBtZWRpYSgnPHRhYmxldCcpIHtcbiAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgfVxuICAgIH1cblxuICAgIGZvcm0ge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgIG1hcmdpbi10b3A6IDEuNXJlbTtcbiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcblxuICAgICAgaW5wdXQge1xuICAgICAgICAvLyB3aWR0aDogY2FsYyg1MCUgLSA1cHgpO1xuICAgICAgICB3aWR0aDogMTAwJSFpbXBvcnRhbnQ7XG5cbiAgICAgICAgYm9yZGVyOiAxLjVweCBzb2xpZCAjRDNFM0VBO1xuICAgICAgICBwYWRkaW5nOiAxOHB4IDI2cHggIWltcG9ydGFudDtcbiAgICAgICAgZm9udC1zaXplOiAxOHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udCAhaW1wb3J0YW50O1xuICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICBsaW5lLWhlaWdodDogMTE5LjMyJSAhaW1wb3J0YW50O1xuICAgICAgICBtaW4taGVpZ2h0OiBpbmhlcml0ICFpbXBvcnRhbnQ7XG4gICAgICB9XG5cbiAgICAgIGlucHV0W3R5cGU9XCJzdWJtaXRcIl17XG4gICAgICAgIG1pbi13aWR0aDogaW5oZXJpdDtcbiAgICAgICAgd2lkdGg6IDIxNnB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIGJvcmRlcjogMi4yNjc4NXB4IHNvbGlkICNGOTU1M0E7XG4gICAgICAgIHBhZGRpbmc6IDExcHggMTVweCAhaW1wb3J0YW50O1xuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKCc8dGFibGV0Jykge1xuICAgICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgfVxuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNEQzM3MUM7XG4gICAgICAgICAgYm9yZGVyOiAyLjI2Nzg1cHggc29saWQgI0RDMzcxQztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIGxhYmVsLmdmaWVsZF9sYWJlbCB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgIC5naW5wdXRfY29udGFpbmVyIHtcbiAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgfVxuXG4gICAgLmdmb3JtX2Zvb3RlciB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgIHVsLmdmb3JtX2ZpZWxkcyB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIH1cblxuICAgIGxpLmNoZWNrYm94IHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICB1bC5nZmllbGRfY2hlY2tib3gge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAgICAgbGkge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMnB4O1xuXG4gICAgICAgIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogNHB4O1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIGxhYmVsIHtcbiAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICBmb250LWZhbWlseTogJGZvbnQgIWltcG9ydGFudDtcbiAgICAgICAgY29sb3I6ICM3NjhDOUM7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxNTkuMTUlO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDI1cHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA0MDAgIWltcG9ydGFudDtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICB9XG5cbiAgICAgIGEge1xuICAgICAgICBjb2xvcjogIzE3MjgzNTtcbiAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICBmb250LWZhbWlseTogJGZvbnQgIWltcG9ydGFudDtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIGxpLmdmaWVsZCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxMnB4O1xuICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgIHdpZHRoOiBjYWxjKDUwJSAtIDZweCk7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuXG4gICAgICAudmFsaWRhdGlvbl9tZXNzYWdlIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cblxuICAgICAgJi5nZmllbGRfZXJyb3Ige1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICBpbnB1dCB7XG4gICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI0Y5NTUzQSAhaW1wb3J0YW50O1xuICAgICAgICB9XG5cbiAgICAgICAgLnZhbGlkYXRpb25fbWVzc2FnZSB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLmdpbnB1dF9jb250YWluZXIge1xuICAgICAgICBtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7XG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIG1lZGlhKCc8dGFibGV0Jykge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgIH1cblxuICAgICAgJi5jaGVja2JveCB7XG4gICAgICAgIG1hcmdpbi10b3A6IDEwcHg7XG5cbiAgICAgICAgJi5nZmllbGRfZXJyb3IgIHtcbiAgICAgICAgICB1bCBsaSB7XG4gICAgICAgICAgICBib3JkZXItdG9wOiAxLjVweCBzb2xpZCAjRjk1NTNBO1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMS41cHggc29saWQgI0Y5NTUzQTtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiA1cHggIWltcG9ydGFudDtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiA1cHggIWltcG9ydGFudDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi5jaGVja2JveCwgJi5wcmFjdGljZSB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgfVxuICAgIH1cblxuICAgIC52YWxpZGF0aW9uX2Vycm9yIHtcbiAgICAgIC8vIGRpc3BsYXk6IG5vbmU7XG4gICAgICBib3JkZXI6IG5vbmU7XG4gICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICBjb2xvcjogI0Y5NTUzQTtcbiAgICAgIGZvbnQtZmFtaWx5OiAkZm9udCAhaW1wb3J0YW50O1xuICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxNTkuMTUlO1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgfVxuXG5cbiAgICAudmFsaWRhdGlvbl9tZXNzYWdlIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICBsaW5lLWhlaWdodDogMTdweDtcbiAgICAgIGZvbnQtZmFtaWx5OiAkZm9udCAhaW1wb3J0YW50O1xuICAgICAgY29sb3I6ICNGOTU1M0E7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgbWFyZ2luLXRvcDogNXB4O1xuICAgIH1cblxuICAgIC56aXAtY29kZSBzcGFuLmFkZHJlc3NfemlwIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgcGFkZGluZzogMDtcblxuICAgICAgaW5wdXQge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMCFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgc3Bhbi5nZmllbGRfcmVxdWlyZWQge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cblxuXG59XG5cbiNncm5oc2VfaWZyYW1lIGRpdiN3cmFwcGVyIHAsIGRpdiN3cmFwcGVyIGxpIHtcbiAgZm9udC1zaXplOiAxNnB4O1xufVxuIiwiYm9keS50aGFuay15b3Uge1xuICBtYWluLnRlYXNlci1jb250YWluZXIgLnRlYXNlci13cmFwIHtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG5cbiAgLmctZS1hLWNvbnRlbnQge1xuICAgIEBpbmNsdWRlIG1lZGlhKCc8bW9iaWxlLWwnKSB7XG4gICAgICBtYXJnaW46IDAgYXV0bztcbiAgICB9XG4gIH1cblxuICBtYWluLnRlYXNlci1jb250YWluZXIge1xuICAgIC5ib3gge1xuICAgICAgQGluY2x1ZGUgbWVkaWEoJzxtb2JpbGUtbCcpIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAudGVhc2VyLWZvb3RlciB7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi50aGFuay15b3UtY29udGVudCB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogNDQwcHg7XG5cbiAgQGluY2x1ZGUgbWVkaWEoJz49bW9iaWxlLWwnKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogNzBweDtcbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhKCc8bW9iaWxlLWwnKSB7XG4gICAgcGFkZGluZzogMCAxMCU7XG4gICAgLy8gbWFyZ2luLXRvcDogMjVweDtcbiAgICBtYXJnaW4tdG9wOiA0MHB4O1xuICB9XG5cblxuXG4gIHN2ZyB7XG4gICAgd2lkdGg6IDY4cHg7XG4gICAgaGVpZ2h0OiA2OHB4O1xuXG4gICAgQGluY2x1ZGUgbWVkaWEoJzxtb2JpbGUtbCcpIHtcbiAgICAgIHdpZHRoOiA0N3B4O1xuICAgICAgaGVpZ2h0OiA0N3B4O1xuICAgIH1cbiAgfVxuXG4gIGgxIHtcbiAgICBAaW5jbHVkZSBmbHVpZC10eXBlKDI4cHgsIDM4cHgsIDQyMHB4LCAxMDI0cHgpO1xuICAgIG1hcmdpbi10b3A6IDIzcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMjZweDtcblxuICAgIEBpbmNsdWRlIG1lZGlhKCc8bW9iaWxlLWwnKSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAzNnB4O1xuICAgICAgLy8gbWFyZ2luLXRvcDogNDJweDtcbiAgICAgIG1hcmdpbi10b3A6IDMwcHg7XG4gICAgfVxuICB9XG5cbiAgcCB7XG4gICAgY29sb3I6ICM3NjhDOUM7XG5cbiAgICBAaW5jbHVkZSBtZWRpYSgnPG1vYmlsZS1sJykge1xuICAgICAgY29sb3I6ICMxNzI4MzU7XG4gICAgICBvcGFjaXR5OiAwLjc7XG4gICAgfVxuICB9XG59XG4iXX0= */
