.wpcf7 .screen-reader-response{position:absolute;overflow:hidden;clip:rect(1px,1px,1px,1px);clip-path:inset(50%);height:1px;width:1px;margin:-1px;padding:0;border:0;word-wrap:normal !important}.wpcf7 .hidden-fields-container{display:none}.wpcf7 form .wpcf7-response-output{margin:2em .5em 1em;padding:.2em 1em;border:2px solid #00a0d2}.wpcf7 form.init .wpcf7-response-output,.wpcf7 form.resetting .wpcf7-response-output,.wpcf7 form.submitting .wpcf7-response-output{display:none}.wpcf7 form.sent .wpcf7-response-output{border-color:#46b450}.wpcf7 form.failed .wpcf7-response-output,.wpcf7 form.aborted .wpcf7-response-output{border-color:#dc3232}.wpcf7 form.spam .wpcf7-response-output{border-color:#f56e28}.wpcf7 form.invalid .wpcf7-response-output,.wpcf7 form.unaccepted .wpcf7-response-output,.wpcf7 form.payment-required .wpcf7-response-output{border-color:#ffb900}.wpcf7-form-control-wrap{position:relative}.wpcf7-not-valid-tip{color:#dc3232;font-size:1em;font-weight:400;display:block}.use-floating-validation-tip .wpcf7-not-valid-tip{position:relative;top:-2ex;left:1em;z-index:100;border:1px solid #dc3232;background:#fff;padding:.2em .8em;width:24em}.wpcf7-list-item{display:inline-block;margin:0 0 0 1em}.wpcf7-list-item-label:before,.wpcf7-list-item-label:after{content:" "}.wpcf7-spinner{visibility:hidden;display:inline-block;background-color:#23282d;opacity:.75;width:24px;height:24px;border:none;border-radius:100%;padding:0;margin:0 24px;position:relative}form.submitting .wpcf7-spinner{visibility:visible}.wpcf7-spinner:before{content:'';position:absolute;background-color:#fbfbfc;top:4px;left:4px;width:6px;height:6px;border:none;border-radius:100%;transform-origin:8px 8px;animation-name:spin;animation-duration:1s;animation-timing-function:linear;animation-iteration-count:infinite}@media (prefers-reduced-motion:reduce){.wpcf7-spinner:before{animation-name:blink;animation-duration:2s}}@keyframes spin{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}@keyframes blink{from{opacity:0}50%{opacity:1}to{opacity:0}}.wpcf7 [inert]{opacity:.5}.wpcf7 input[type=file]{cursor:pointer}.wpcf7 input[type=file]:disabled{cursor:default}.wpcf7 .wpcf7-submit:disabled{cursor:not-allowed}.wpcf7 input[type=url],.wpcf7 input[type=email],.wpcf7 input[type=tel]{direction:ltr}.wpcf7-reflection>output{display:list-item;list-style:none}.wpcf7-reflection>output[hidden]{display:none}
.mega-menu-last-modified-1630603716{content:'Thursday 2nd September 2021 17:28:36 UTC'}#mega-menu-wrap-top-bar-r,#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r,#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r ul.mega-sub-menu,#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r li.mega-menu-item,#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r li.mega-menu-row,#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r li.mega-menu-column,#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r a.mega-menu-link,#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r span.mega-menu-badge{transition:none;border-radius:0;box-shadow:none;background:0 0;border:0;bottom:auto;box-sizing:border-box;clip:auto;color:#fff;display:block;float:none;font-family:inherit;font-size:16px;height:auto;left:auto;line-height:1;list-style-type:none;margin:0;min-height:auto;max-height:none;min-width:auto;max-width:none;opacity:1;outline:none;overflow:visible;padding:0;position:relative;pointer-events:auto;right:auto;text-align:left;text-decoration:none;text-indent:0;text-transform:none;transform:none;top:auto;vertical-align:baseline;visibility:inherit;width:auto;word-wrap:break-word;white-space:normal}#mega-menu-wrap-top-bar-r:before,#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r:before,#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r ul.mega-sub-menu:before,#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r li.mega-menu-item:before,#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r li.mega-menu-row:before,#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r li.mega-menu-column:before,#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r a.mega-menu-link:before,#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r span.mega-menu-badge:before,#mega-menu-wrap-top-bar-r:after,#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r:after,#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r ul.mega-sub-menu:after,#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r li.mega-menu-item:after,#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r li.mega-menu-row:after,#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r li.mega-menu-column:after,#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r a.mega-menu-link:after,#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r span.mega-menu-badge:after{display:none}#mega-menu-wrap-top-bar-r{border-radius:0}@media only screen and (min-width:601px){#mega-menu-wrap-top-bar-r{background:rgba(0,0,0,0)}}#mega-menu-wrap-top-bar-r.mega-keyboard-navigation .mega-menu-toggle:focus,#mega-menu-wrap-top-bar-r.mega-keyboard-navigation .mega-toggle-block:focus,#mega-menu-wrap-top-bar-r.mega-keyboard-navigation .mega-toggle-block a:focus,#mega-menu-wrap-top-bar-r.mega-keyboard-navigation .mega-toggle-block .mega-search input[type=text]:focus,#mega-menu-wrap-top-bar-r.mega-keyboard-navigation .mega-toggle-block button.mega-toggle-animated:focus,#mega-menu-wrap-top-bar-r.mega-keyboard-navigation #mega-menu-top-bar-r a:focus,#mega-menu-wrap-top-bar-r.mega-keyboard-navigation #mega-menu-top-bar-r input:focus,#mega-menu-wrap-top-bar-r.mega-keyboard-navigation #mega-menu-top-bar-r li.mega-menu-item a.mega-menu-link:focus{outline:3px solid #109cde;outline-offset:-3px}#mega-menu-wrap-top-bar-r.mega-keyboard-navigation .mega-toggle-block button.mega-toggle-animated:focus{outline-offset:2px}#mega-menu-wrap-top-bar-r.mega-keyboard-navigation>li.mega-menu-item>a.mega-menu-link:focus{background:rgba(0,0,0,0);color:#fbe200;font-weight:inherit;text-decoration:none;border-color:#fff}@media only screen and (max-width:600px){#mega-menu-wrap-top-bar-r.mega-keyboard-navigation>li.mega-menu-item>a.mega-menu-link:focus{color:#fff;background:#333}}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r{visibility:visible;text-align:left;padding:0}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r a.mega-menu-link{cursor:pointer;display:inline}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r a.mega-menu-link .mega-description-group{vertical-align:middle;display:inline-block;transition:none}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r a.mega-menu-link .mega-description-group .mega-menu-title,#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r a.mega-menu-link .mega-description-group .mega-menu-description{transition:none;line-height:1.5;display:block}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r a.mega-menu-link .mega-description-group .mega-menu-description{font-style:italic;font-size:.8em;text-transform:none;font-weight:400}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r li.mega-menu-megamenu li.mega-menu-item.mega-icon-left.mega-has-description.mega-has-icon>a.mega-menu-link{display:flex;align-items:center}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r li.mega-menu-megamenu li.mega-menu-item.mega-icon-left.mega-has-description.mega-has-icon>a.mega-menu-link:before{flex:0 0 auto;align-self:flex-start}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r li.mega-menu-tabbed.mega-menu-megamenu>ul.mega-sub-menu>li.mega-menu-item.mega-icon-left.mega-has-description.mega-has-icon>a.mega-menu-link{display:block}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r li.mega-menu-item.mega-icon-top>a.mega-menu-link{display:table-cell;vertical-align:middle;line-height:initial}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r li.mega-menu-item.mega-icon-top>a.mega-menu-link:before{display:block;margin:0 0 6px;text-align:center}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r li.mega-menu-item.mega-icon-top>a.mega-menu-link>span.mega-title-below{display:inline-block;transition:none}@media only screen and (max-width:600px){#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-item.mega-icon-top>a.mega-menu-link{display:block;line-height:40px}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-item.mega-icon-top>a.mega-menu-link:before{display:inline-block;margin:0 6px 0 0;text-align:left}}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r li.mega-menu-item.mega-icon-right>a.mega-menu-link:before{float:right;margin:0 0 0 6px}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-animating>ul.mega-sub-menu{pointer-events:none}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r li.mega-disable-link>a.mega-menu-link,#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r li.mega-menu-megamenu li.mega-disable-link>a.mega-menu-link{cursor:inherit}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r li.mega-menu-item-has-children.mega-disable-link>a.mega-menu-link,#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r li.mega-menu-megamenu>li.mega-menu-item-has-children.mega-disable-link>a.mega-menu-link{cursor:pointer}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r p{margin-bottom:10px}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r input,#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r img{max-width:100%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r li.mega-menu-item>ul.mega-sub-menu{display:block;visibility:hidden;opacity:1;pointer-events:auto}@media only screen and (max-width:600px){#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r li.mega-menu-item>ul.mega-sub-menu{display:none;visibility:visible;opacity:1}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r li.mega-menu-item.mega-toggle-on>ul.mega-sub-menu,#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r li.mega-menu-megamenu.mega-menu-item.mega-toggle-on ul.mega-sub-menu{display:block}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r li.mega-menu-megamenu.mega-menu-item.mega-toggle-on li.mega-hide-sub-menu-on-mobile>ul.mega-sub-menu,#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r li.mega-hide-sub-menu-on-mobile>ul.mega-sub-menu{display:none}}@media only screen and (min-width:601px){#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r[data-effect=fade] li.mega-menu-item>ul.mega-sub-menu{opacity:0;transition:opacity .2s ease-in,visibility .2s ease-in}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r[data-effect=fade].mega-no-js li.mega-menu-item:hover>ul.mega-sub-menu,#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r[data-effect=fade].mega-no-js li.mega-menu-item:focus>ul.mega-sub-menu,#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r[data-effect=fade] li.mega-menu-item.mega-toggle-on>ul.mega-sub-menu,#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r[data-effect=fade] li.mega-menu-item.mega-menu-megamenu.mega-toggle-on ul.mega-sub-menu{opacity:1}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r[data-effect=fade_up] li.mega-menu-item.mega-menu-megamenu>ul.mega-sub-menu,#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r[data-effect=fade_up] li.mega-menu-item.mega-menu-flyout ul.mega-sub-menu{opacity:0;transform:translate(0,10px);transition:opacity .2s ease-in,transform .2s ease-in,visibility .2s ease-in}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r[data-effect=fade_up].mega-no-js li.mega-menu-item:hover>ul.mega-sub-menu,#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r[data-effect=fade_up].mega-no-js li.mega-menu-item:focus>ul.mega-sub-menu,#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r[data-effect=fade_up] li.mega-menu-item.mega-toggle-on>ul.mega-sub-menu,#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r[data-effect=fade_up] li.mega-menu-item.mega-menu-megamenu.mega-toggle-on ul.mega-sub-menu{opacity:1;transform:translate(0,0)}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r[data-effect=slide_up] li.mega-menu-item.mega-menu-megamenu>ul.mega-sub-menu,#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r[data-effect=slide_up] li.mega-menu-item.mega-menu-flyout ul.mega-sub-menu{transform:translate(0,10px);transition:transform .2s ease-in,visibility .2s ease-in}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r[data-effect=slide_up].mega-no-js li.mega-menu-item:hover>ul.mega-sub-menu,#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r[data-effect=slide_up].mega-no-js li.mega-menu-item:focus>ul.mega-sub-menu,#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r[data-effect=slide_up] li.mega-menu-item.mega-toggle-on>ul.mega-sub-menu,#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r[data-effect=slide_up] li.mega-menu-item.mega-menu-megamenu.mega-toggle-on ul.mega-sub-menu{transform:translate(0,0)}}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r li.mega-menu-item.mega-menu-megamenu ul.mega-sub-menu li.mega-collapse-children>ul.mega-sub-menu{display:none}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r li.mega-menu-item.mega-menu-megamenu ul.mega-sub-menu li.mega-collapse-children.mega-toggle-on>ul.mega-sub-menu{display:block}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r.mega-no-js li.mega-menu-item:hover>ul.mega-sub-menu,#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r.mega-no-js li.mega-menu-item:focus>ul.mega-sub-menu,#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r li.mega-menu-item.mega-toggle-on>ul.mega-sub-menu{visibility:visible}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r li.mega-menu-item.mega-menu-megamenu ul.mega-sub-menu ul.mega-sub-menu{visibility:inherit;opacity:1;display:block}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r li.mega-menu-item.mega-menu-megamenu ul.mega-sub-menu li.mega-1-columns>ul.mega-sub-menu>li.mega-menu-item{float:left;width:100%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r li.mega-menu-item.mega-menu-megamenu ul.mega-sub-menu li.mega-2-columns>ul.mega-sub-menu>li.mega-menu-item{float:left;width:50%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r li.mega-menu-item.mega-menu-megamenu ul.mega-sub-menu li.mega-3-columns>ul.mega-sub-menu>li.mega-menu-item{float:left;width:33.33333%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r li.mega-menu-item.mega-menu-megamenu ul.mega-sub-menu li.mega-4-columns>ul.mega-sub-menu>li.mega-menu-item{float:left;width:25%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r li.mega-menu-item.mega-menu-megamenu ul.mega-sub-menu li.mega-5-columns>ul.mega-sub-menu>li.mega-menu-item{float:left;width:20%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r li.mega-menu-item.mega-menu-megamenu ul.mega-sub-menu li.mega-6-columns>ul.mega-sub-menu>li.mega-menu-item{float:left;width:16.66667%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r li.mega-menu-item a[class^=dashicons]:before{font-family:dashicons}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r li.mega-menu-item a.mega-menu-link:before{display:inline-block;font:inherit;font-family:dashicons;position:static;margin:0 6px 0 0;vertical-align:top;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:inherit;background:0 0;height:auto;width:auto;top:auto}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r li.mega-menu-item.mega-hide-text a.mega-menu-link:before{margin:0}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r li.mega-menu-item.mega-hide-text li.mega-menu-item a.mega-menu-link:before{margin:0 6px 0 0}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r li.mega-align-bottom-left.mega-toggle-on>a.mega-menu-link{border-radius:0}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r li.mega-align-bottom-right>ul.mega-sub-menu{right:0}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r li.mega-align-bottom-right.mega-toggle-on>a.mega-menu-link{border-radius:0}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-megamenu.mega-menu-item{position:static}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-item{margin:0;display:inline-block;height:auto;vertical-align:middle}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-item.mega-item-align-right{float:right}@media only screen and (min-width:601px){#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-item.mega-item-align-right{margin:0}}@media only screen and (min-width:601px){#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-item.mega-item-align-float-left{float:left}}@media only screen and (min-width:601px){#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-item>a.mega-menu-link:hover{background:rgba(0,0,0,0);color:#fbe200;font-weight:inherit;text-decoration:none;border-color:#fff}}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-item.mega-toggle-on>a.mega-menu-link{background:rgba(0,0,0,0);color:#fbe200;font-weight:inherit;text-decoration:none;border-color:#fff}@media only screen and (max-width:600px){#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-item.mega-toggle-on>a.mega-menu-link{color:#fff;background:#333}}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-item>a.mega-menu-link{line-height:36px;height:36px;padding:0;vertical-align:baseline;width:auto;display:block;color:#fff;text-transform:none;text-decoration:none;text-align:left;text-decoration:none;background:rgba(0,0,0,0);border:0;border-radius:0;font-family:inherit;font-size:16px;font-weight:inherit;outline:none}@media only screen and (min-width:601px){#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-item.mega-multi-line>a.mega-menu-link{line-height:inherit;display:table-cell;vertical-align:middle}}@media only screen and (max-width:600px){#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-item.mega-multi-line>a.mega-menu-link br{display:none}}@media only screen and (max-width:600px){#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-item{display:list-item;margin:0;clear:both;border:0}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-item.mega-item-align-right{float:none}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-item>a.mega-menu-link{border-radius:0;border:0;margin:0;line-height:40px;height:40px;padding:0 10px;background:0 0;text-align:left;color:#fff;font-size:14px}}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r li.mega-menu-megamenu>ul.mega-sub-menu>li.mega-menu-row{width:100%;float:left}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r li.mega-menu-megamenu>ul.mega-sub-menu>li.mega-menu-row .mega-menu-column{float:left;min-height:1px}@media only screen and (min-width:601px){#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r li.mega-menu-megamenu>ul.mega-sub-menu>li.mega-menu-row>ul.mega-sub-menu>li.mega-menu-columns-1-of-1{width:100%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r li.mega-menu-megamenu>ul.mega-sub-menu>li.mega-menu-row>ul.mega-sub-menu>li.mega-menu-columns-1-of-2{width:50%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r li.mega-menu-megamenu>ul.mega-sub-menu>li.mega-menu-row>ul.mega-sub-menu>li.mega-menu-columns-2-of-2{width:100%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r li.mega-menu-megamenu>ul.mega-sub-menu>li.mega-menu-row>ul.mega-sub-menu>li.mega-menu-columns-1-of-3{width:33.33333%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r li.mega-menu-megamenu>ul.mega-sub-menu>li.mega-menu-row>ul.mega-sub-menu>li.mega-menu-columns-2-of-3{width:66.66667%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r li.mega-menu-megamenu>ul.mega-sub-menu>li.mega-menu-row>ul.mega-sub-menu>li.mega-menu-columns-3-of-3{width:100%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r li.mega-menu-megamenu>ul.mega-sub-menu>li.mega-menu-row>ul.mega-sub-menu>li.mega-menu-columns-1-of-4{width:25%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r li.mega-menu-megamenu>ul.mega-sub-menu>li.mega-menu-row>ul.mega-sub-menu>li.mega-menu-columns-2-of-4{width:50%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r li.mega-menu-megamenu>ul.mega-sub-menu>li.mega-menu-row>ul.mega-sub-menu>li.mega-menu-columns-3-of-4{width:75%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r li.mega-menu-megamenu>ul.mega-sub-menu>li.mega-menu-row>ul.mega-sub-menu>li.mega-menu-columns-4-of-4{width:100%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r li.mega-menu-megamenu>ul.mega-sub-menu>li.mega-menu-row>ul.mega-sub-menu>li.mega-menu-columns-1-of-5{width:20%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r li.mega-menu-megamenu>ul.mega-sub-menu>li.mega-menu-row>ul.mega-sub-menu>li.mega-menu-columns-2-of-5{width:40%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r li.mega-menu-megamenu>ul.mega-sub-menu>li.mega-menu-row>ul.mega-sub-menu>li.mega-menu-columns-3-of-5{width:60%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r li.mega-menu-megamenu>ul.mega-sub-menu>li.mega-menu-row>ul.mega-sub-menu>li.mega-menu-columns-4-of-5{width:80%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r li.mega-menu-megamenu>ul.mega-sub-menu>li.mega-menu-row>ul.mega-sub-menu>li.mega-menu-columns-5-of-5{width:100%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r li.mega-menu-megamenu>ul.mega-sub-menu>li.mega-menu-row>ul.mega-sub-menu>li.mega-menu-columns-1-of-6{width:16.66667%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r li.mega-menu-megamenu>ul.mega-sub-menu>li.mega-menu-row>ul.mega-sub-menu>li.mega-menu-columns-2-of-6{width:33.33333%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r li.mega-menu-megamenu>ul.mega-sub-menu>li.mega-menu-row>ul.mega-sub-menu>li.mega-menu-columns-3-of-6{width:50%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r li.mega-menu-megamenu>ul.mega-sub-menu>li.mega-menu-row>ul.mega-sub-menu>li.mega-menu-columns-4-of-6{width:66.66667%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r li.mega-menu-megamenu>ul.mega-sub-menu>li.mega-menu-row>ul.mega-sub-menu>li.mega-menu-columns-5-of-6{width:83.33333%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r li.mega-menu-megamenu>ul.mega-sub-menu>li.mega-menu-row>ul.mega-sub-menu>li.mega-menu-columns-6-of-6{width:100%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r li.mega-menu-megamenu>ul.mega-sub-menu>li.mega-menu-row>ul.mega-sub-menu>li.mega-menu-columns-1-of-7{width:14.28571%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r li.mega-menu-megamenu>ul.mega-sub-menu>li.mega-menu-row>ul.mega-sub-menu>li.mega-menu-columns-2-of-7{width:28.57143%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r li.mega-menu-megamenu>ul.mega-sub-menu>li.mega-menu-row>ul.mega-sub-menu>li.mega-menu-columns-3-of-7{width:42.85714%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r li.mega-menu-megamenu>ul.mega-sub-menu>li.mega-menu-row>ul.mega-sub-menu>li.mega-menu-columns-4-of-7{width:57.14286%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r li.mega-menu-megamenu>ul.mega-sub-menu>li.mega-menu-row>ul.mega-sub-menu>li.mega-menu-columns-5-of-7{width:71.42857%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r li.mega-menu-megamenu>ul.mega-sub-menu>li.mega-menu-row>ul.mega-sub-menu>li.mega-menu-columns-6-of-7{width:85.71429%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r li.mega-menu-megamenu>ul.mega-sub-menu>li.mega-menu-row>ul.mega-sub-menu>li.mega-menu-columns-7-of-7{width:100%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r li.mega-menu-megamenu>ul.mega-sub-menu>li.mega-menu-row>ul.mega-sub-menu>li.mega-menu-columns-1-of-8{width:12.5%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r li.mega-menu-megamenu>ul.mega-sub-menu>li.mega-menu-row>ul.mega-sub-menu>li.mega-menu-columns-2-of-8{width:25%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r li.mega-menu-megamenu>ul.mega-sub-menu>li.mega-menu-row>ul.mega-sub-menu>li.mega-menu-columns-3-of-8{width:37.5%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r li.mega-menu-megamenu>ul.mega-sub-menu>li.mega-menu-row>ul.mega-sub-menu>li.mega-menu-columns-4-of-8{width:50%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r li.mega-menu-megamenu>ul.mega-sub-menu>li.mega-menu-row>ul.mega-sub-menu>li.mega-menu-columns-5-of-8{width:62.5%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r li.mega-menu-megamenu>ul.mega-sub-menu>li.mega-menu-row>ul.mega-sub-menu>li.mega-menu-columns-6-of-8{width:75%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r li.mega-menu-megamenu>ul.mega-sub-menu>li.mega-menu-row>ul.mega-sub-menu>li.mega-menu-columns-7-of-8{width:87.5%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r li.mega-menu-megamenu>ul.mega-sub-menu>li.mega-menu-row>ul.mega-sub-menu>li.mega-menu-columns-8-of-8{width:100%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r li.mega-menu-megamenu>ul.mega-sub-menu>li.mega-menu-row>ul.mega-sub-menu>li.mega-menu-columns-1-of-9{width:11.11111%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r li.mega-menu-megamenu>ul.mega-sub-menu>li.mega-menu-row>ul.mega-sub-menu>li.mega-menu-columns-2-of-9{width:22.22222%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r li.mega-menu-megamenu>ul.mega-sub-menu>li.mega-menu-row>ul.mega-sub-menu>li.mega-menu-columns-3-of-9{width:33.33333%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r li.mega-menu-megamenu>ul.mega-sub-menu>li.mega-menu-row>ul.mega-sub-menu>li.mega-menu-columns-4-of-9{width:44.44444%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r li.mega-menu-megamenu>ul.mega-sub-menu>li.mega-menu-row>ul.mega-sub-menu>li.mega-menu-columns-5-of-9{width:55.55556%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r li.mega-menu-megamenu>ul.mega-sub-menu>li.mega-menu-row>ul.mega-sub-menu>li.mega-menu-columns-6-of-9{width:66.66667%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r li.mega-menu-megamenu>ul.mega-sub-menu>li.mega-menu-row>ul.mega-sub-menu>li.mega-menu-columns-7-of-9{width:77.77778%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r li.mega-menu-megamenu>ul.mega-sub-menu>li.mega-menu-row>ul.mega-sub-menu>li.mega-menu-columns-8-of-9{width:88.88889%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r li.mega-menu-megamenu>ul.mega-sub-menu>li.mega-menu-row>ul.mega-sub-menu>li.mega-menu-columns-9-of-9{width:100%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r li.mega-menu-megamenu>ul.mega-sub-menu>li.mega-menu-row>ul.mega-sub-menu>li.mega-menu-columns-1-of-10{width:10%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r li.mega-menu-megamenu>ul.mega-sub-menu>li.mega-menu-row>ul.mega-sub-menu>li.mega-menu-columns-2-of-10{width:20%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r li.mega-menu-megamenu>ul.mega-sub-menu>li.mega-menu-row>ul.mega-sub-menu>li.mega-menu-columns-3-of-10{width:30%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r li.mega-menu-megamenu>ul.mega-sub-menu>li.mega-menu-row>ul.mega-sub-menu>li.mega-menu-columns-4-of-10{width:40%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r li.mega-menu-megamenu>ul.mega-sub-menu>li.mega-menu-row>ul.mega-sub-menu>li.mega-menu-columns-5-of-10{width:50%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r li.mega-menu-megamenu>ul.mega-sub-menu>li.mega-menu-row>ul.mega-sub-menu>li.mega-menu-columns-6-of-10{width:60%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r li.mega-menu-megamenu>ul.mega-sub-menu>li.mega-menu-row>ul.mega-sub-menu>li.mega-menu-columns-7-of-10{width:70%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r li.mega-menu-megamenu>ul.mega-sub-menu>li.mega-menu-row>ul.mega-sub-menu>li.mega-menu-columns-8-of-10{width:80%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r li.mega-menu-megamenu>ul.mega-sub-menu>li.mega-menu-row>ul.mega-sub-menu>li.mega-menu-columns-9-of-10{width:90%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r li.mega-menu-megamenu>ul.mega-sub-menu>li.mega-menu-row>ul.mega-sub-menu>li.mega-menu-columns-10-of-10{width:100%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r li.mega-menu-megamenu>ul.mega-sub-menu>li.mega-menu-row>ul.mega-sub-menu>li.mega-menu-columns-1-of-11{width:9.09091%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r li.mega-menu-megamenu>ul.mega-sub-menu>li.mega-menu-row>ul.mega-sub-menu>li.mega-menu-columns-2-of-11{width:18.18182%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r li.mega-menu-megamenu>ul.mega-sub-menu>li.mega-menu-row>ul.mega-sub-menu>li.mega-menu-columns-3-of-11{width:27.27273%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r li.mega-menu-megamenu>ul.mega-sub-menu>li.mega-menu-row>ul.mega-sub-menu>li.mega-menu-columns-4-of-11{width:36.36364%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r li.mega-menu-megamenu>ul.mega-sub-menu>li.mega-menu-row>ul.mega-sub-menu>li.mega-menu-columns-5-of-11{width:45.45455%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r li.mega-menu-megamenu>ul.mega-sub-menu>li.mega-menu-row>ul.mega-sub-menu>li.mega-menu-columns-6-of-11{width:54.54545%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r li.mega-menu-megamenu>ul.mega-sub-menu>li.mega-menu-row>ul.mega-sub-menu>li.mega-menu-columns-7-of-11{width:63.63636%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r li.mega-menu-megamenu>ul.mega-sub-menu>li.mega-menu-row>ul.mega-sub-menu>li.mega-menu-columns-8-of-11{width:72.72727%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r li.mega-menu-megamenu>ul.mega-sub-menu>li.mega-menu-row>ul.mega-sub-menu>li.mega-menu-columns-9-of-11{width:81.81818%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r li.mega-menu-megamenu>ul.mega-sub-menu>li.mega-menu-row>ul.mega-sub-menu>li.mega-menu-columns-10-of-11{width:90.90909%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r li.mega-menu-megamenu>ul.mega-sub-menu>li.mega-menu-row>ul.mega-sub-menu>li.mega-menu-columns-11-of-11{width:100%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r li.mega-menu-megamenu>ul.mega-sub-menu>li.mega-menu-row>ul.mega-sub-menu>li.mega-menu-columns-1-of-12{width:8.33333%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r li.mega-menu-megamenu>ul.mega-sub-menu>li.mega-menu-row>ul.mega-sub-menu>li.mega-menu-columns-2-of-12{width:16.66667%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r li.mega-menu-megamenu>ul.mega-sub-menu>li.mega-menu-row>ul.mega-sub-menu>li.mega-menu-columns-3-of-12{width:25%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r li.mega-menu-megamenu>ul.mega-sub-menu>li.mega-menu-row>ul.mega-sub-menu>li.mega-menu-columns-4-of-12{width:33.33333%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r li.mega-menu-megamenu>ul.mega-sub-menu>li.mega-menu-row>ul.mega-sub-menu>li.mega-menu-columns-5-of-12{width:41.66667%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r li.mega-menu-megamenu>ul.mega-sub-menu>li.mega-menu-row>ul.mega-sub-menu>li.mega-menu-columns-6-of-12{width:50%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r li.mega-menu-megamenu>ul.mega-sub-menu>li.mega-menu-row>ul.mega-sub-menu>li.mega-menu-columns-7-of-12{width:58.33333%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r li.mega-menu-megamenu>ul.mega-sub-menu>li.mega-menu-row>ul.mega-sub-menu>li.mega-menu-columns-8-of-12{width:66.66667%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r li.mega-menu-megamenu>ul.mega-sub-menu>li.mega-menu-row>ul.mega-sub-menu>li.mega-menu-columns-9-of-12{width:75%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r li.mega-menu-megamenu>ul.mega-sub-menu>li.mega-menu-row>ul.mega-sub-menu>li.mega-menu-columns-10-of-12{width:83.33333%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r li.mega-menu-megamenu>ul.mega-sub-menu>li.mega-menu-row>ul.mega-sub-menu>li.mega-menu-columns-11-of-12{width:91.66667%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r li.mega-menu-megamenu>ul.mega-sub-menu>li.mega-menu-row>ul.mega-sub-menu>li.mega-menu-columns-12-of-12{width:100%}}@media only screen and (max-width:600px){#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r li.mega-menu-megamenu>ul.mega-sub-menu>li.mega-menu-row>ul.mega-sub-menu>li.mega-menu-column{width:100%;clear:both}}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r li.mega-menu-megamenu>ul.mega-sub-menu>li.mega-menu-row .mega-menu-column>ul.mega-sub-menu>li.mega-menu-item{padding:0 20px 0 30px;width:100%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-megamenu>ul.mega-sub-menu{z-index:999;border-radius:0;background:#6800d2;border:0;padding:20px 0;position:absolute;width:100%;max-width:none;left:0}@media only screen and (max-width:600px){#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-megamenu>ul.mega-sub-menu{float:left;position:static;width:100%}}@media only screen and (min-width:601px){#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-megamenu>ul.mega-sub-menu li.mega-menu-columns-1-of-1{width:100%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-megamenu>ul.mega-sub-menu li.mega-menu-columns-1-of-2{width:50%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-megamenu>ul.mega-sub-menu li.mega-menu-columns-2-of-2{width:100%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-megamenu>ul.mega-sub-menu li.mega-menu-columns-1-of-3{width:33.33333%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-megamenu>ul.mega-sub-menu li.mega-menu-columns-2-of-3{width:66.66667%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-megamenu>ul.mega-sub-menu li.mega-menu-columns-3-of-3{width:100%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-megamenu>ul.mega-sub-menu li.mega-menu-columns-1-of-4{width:25%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-megamenu>ul.mega-sub-menu li.mega-menu-columns-2-of-4{width:50%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-megamenu>ul.mega-sub-menu li.mega-menu-columns-3-of-4{width:75%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-megamenu>ul.mega-sub-menu li.mega-menu-columns-4-of-4{width:100%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-megamenu>ul.mega-sub-menu li.mega-menu-columns-1-of-5{width:20%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-megamenu>ul.mega-sub-menu li.mega-menu-columns-2-of-5{width:40%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-megamenu>ul.mega-sub-menu li.mega-menu-columns-3-of-5{width:60%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-megamenu>ul.mega-sub-menu li.mega-menu-columns-4-of-5{width:80%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-megamenu>ul.mega-sub-menu li.mega-menu-columns-5-of-5{width:100%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-megamenu>ul.mega-sub-menu li.mega-menu-columns-1-of-6{width:16.66667%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-megamenu>ul.mega-sub-menu li.mega-menu-columns-2-of-6{width:33.33333%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-megamenu>ul.mega-sub-menu li.mega-menu-columns-3-of-6{width:50%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-megamenu>ul.mega-sub-menu li.mega-menu-columns-4-of-6{width:66.66667%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-megamenu>ul.mega-sub-menu li.mega-menu-columns-5-of-6{width:83.33333%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-megamenu>ul.mega-sub-menu li.mega-menu-columns-6-of-6{width:100%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-megamenu>ul.mega-sub-menu li.mega-menu-columns-1-of-7{width:14.28571%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-megamenu>ul.mega-sub-menu li.mega-menu-columns-2-of-7{width:28.57143%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-megamenu>ul.mega-sub-menu li.mega-menu-columns-3-of-7{width:42.85714%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-megamenu>ul.mega-sub-menu li.mega-menu-columns-4-of-7{width:57.14286%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-megamenu>ul.mega-sub-menu li.mega-menu-columns-5-of-7{width:71.42857%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-megamenu>ul.mega-sub-menu li.mega-menu-columns-6-of-7{width:85.71429%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-megamenu>ul.mega-sub-menu li.mega-menu-columns-7-of-7{width:100%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-megamenu>ul.mega-sub-menu li.mega-menu-columns-1-of-8{width:12.5%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-megamenu>ul.mega-sub-menu li.mega-menu-columns-2-of-8{width:25%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-megamenu>ul.mega-sub-menu li.mega-menu-columns-3-of-8{width:37.5%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-megamenu>ul.mega-sub-menu li.mega-menu-columns-4-of-8{width:50%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-megamenu>ul.mega-sub-menu li.mega-menu-columns-5-of-8{width:62.5%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-megamenu>ul.mega-sub-menu li.mega-menu-columns-6-of-8{width:75%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-megamenu>ul.mega-sub-menu li.mega-menu-columns-7-of-8{width:87.5%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-megamenu>ul.mega-sub-menu li.mega-menu-columns-8-of-8{width:100%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-megamenu>ul.mega-sub-menu li.mega-menu-columns-1-of-9{width:11.11111%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-megamenu>ul.mega-sub-menu li.mega-menu-columns-2-of-9{width:22.22222%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-megamenu>ul.mega-sub-menu li.mega-menu-columns-3-of-9{width:33.33333%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-megamenu>ul.mega-sub-menu li.mega-menu-columns-4-of-9{width:44.44444%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-megamenu>ul.mega-sub-menu li.mega-menu-columns-5-of-9{width:55.55556%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-megamenu>ul.mega-sub-menu li.mega-menu-columns-6-of-9{width:66.66667%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-megamenu>ul.mega-sub-menu li.mega-menu-columns-7-of-9{width:77.77778%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-megamenu>ul.mega-sub-menu li.mega-menu-columns-8-of-9{width:88.88889%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-megamenu>ul.mega-sub-menu li.mega-menu-columns-9-of-9{width:100%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-megamenu>ul.mega-sub-menu li.mega-menu-columns-1-of-10{width:10%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-megamenu>ul.mega-sub-menu li.mega-menu-columns-2-of-10{width:20%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-megamenu>ul.mega-sub-menu li.mega-menu-columns-3-of-10{width:30%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-megamenu>ul.mega-sub-menu li.mega-menu-columns-4-of-10{width:40%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-megamenu>ul.mega-sub-menu li.mega-menu-columns-5-of-10{width:50%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-megamenu>ul.mega-sub-menu li.mega-menu-columns-6-of-10{width:60%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-megamenu>ul.mega-sub-menu li.mega-menu-columns-7-of-10{width:70%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-megamenu>ul.mega-sub-menu li.mega-menu-columns-8-of-10{width:80%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-megamenu>ul.mega-sub-menu li.mega-menu-columns-9-of-10{width:90%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-megamenu>ul.mega-sub-menu li.mega-menu-columns-10-of-10{width:100%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-megamenu>ul.mega-sub-menu li.mega-menu-columns-1-of-11{width:9.09091%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-megamenu>ul.mega-sub-menu li.mega-menu-columns-2-of-11{width:18.18182%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-megamenu>ul.mega-sub-menu li.mega-menu-columns-3-of-11{width:27.27273%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-megamenu>ul.mega-sub-menu li.mega-menu-columns-4-of-11{width:36.36364%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-megamenu>ul.mega-sub-menu li.mega-menu-columns-5-of-11{width:45.45455%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-megamenu>ul.mega-sub-menu li.mega-menu-columns-6-of-11{width:54.54545%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-megamenu>ul.mega-sub-menu li.mega-menu-columns-7-of-11{width:63.63636%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-megamenu>ul.mega-sub-menu li.mega-menu-columns-8-of-11{width:72.72727%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-megamenu>ul.mega-sub-menu li.mega-menu-columns-9-of-11{width:81.81818%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-megamenu>ul.mega-sub-menu li.mega-menu-columns-10-of-11{width:90.90909%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-megamenu>ul.mega-sub-menu li.mega-menu-columns-11-of-11{width:100%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-megamenu>ul.mega-sub-menu li.mega-menu-columns-1-of-12{width:8.33333%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-megamenu>ul.mega-sub-menu li.mega-menu-columns-2-of-12{width:16.66667%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-megamenu>ul.mega-sub-menu li.mega-menu-columns-3-of-12{width:25%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-megamenu>ul.mega-sub-menu li.mega-menu-columns-4-of-12{width:33.33333%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-megamenu>ul.mega-sub-menu li.mega-menu-columns-5-of-12{width:41.66667%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-megamenu>ul.mega-sub-menu li.mega-menu-columns-6-of-12{width:50%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-megamenu>ul.mega-sub-menu li.mega-menu-columns-7-of-12{width:58.33333%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-megamenu>ul.mega-sub-menu li.mega-menu-columns-8-of-12{width:66.66667%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-megamenu>ul.mega-sub-menu li.mega-menu-columns-9-of-12{width:75%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-megamenu>ul.mega-sub-menu li.mega-menu-columns-10-of-12{width:83.33333%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-megamenu>ul.mega-sub-menu li.mega-menu-columns-11-of-12{width:91.66667%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-megamenu>ul.mega-sub-menu li.mega-menu-columns-12-of-12{width:100%}}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-megamenu>ul.mega-sub-menu .mega-description-group .mega-menu-description{margin:5px 0}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-megamenu>ul.mega-sub-menu>li.mega-menu-item ul.mega-sub-menu{clear:both}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-megamenu>ul.mega-sub-menu>li.mega-menu-item ul.mega-sub-menu li.mega-menu-item ul.mega-sub-menu{margin-left:10px}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-megamenu>ul.mega-sub-menu li.mega-menu-column>ul.mega-sub-menu ul.mega-sub-menu ul.mega-sub-menu{margin-left:10px}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-megamenu>ul.mega-sub-menu>li.mega-menu-item,#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-megamenu>ul.mega-sub-menu li.mega-menu-column>ul.mega-sub-menu>li.mega-menu-item{color:#fff;font-family:inherit;font-size:16px;display:block;float:left;clear:none;padding:0 20px 0 30px;vertical-align:top}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-megamenu>ul.mega-sub-menu>li.mega-menu-item.mega-menu-clear,#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-megamenu>ul.mega-sub-menu li.mega-menu-column>ul.mega-sub-menu>li.mega-menu-item.mega-menu-clear{clear:left}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-megamenu>ul.mega-sub-menu>li.mega-menu-item h4.mega-block-title,#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-megamenu>ul.mega-sub-menu li.mega-menu-column>ul.mega-sub-menu>li.mega-menu-item h4.mega-block-title{color:#fff;font-family:inherit;font-size:24px;text-transform:none;text-decoration:none;font-weight:700;text-align:left;margin:0;padding:0 0 20px;vertical-align:top;display:block;visibility:inherit;border:0}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-megamenu>ul.mega-sub-menu>li.mega-menu-item h4.mega-block-title:hover,#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-megamenu>ul.mega-sub-menu li.mega-menu-column>ul.mega-sub-menu>li.mega-menu-item h4.mega-block-title:hover{border-color:rgba(0,0,0,0)}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-megamenu>ul.mega-sub-menu>li.mega-menu-item>a.mega-menu-link,#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-megamenu>ul.mega-sub-menu li.mega-menu-column>ul.mega-sub-menu>li.mega-menu-item>a.mega-menu-link{color:#fff;font-family:inherit;font-size:14px;text-transform:none;text-decoration:none;font-weight:inherit;text-align:left;margin:0;padding:0 0 10px;vertical-align:top;display:block;border:0}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-megamenu>ul.mega-sub-menu>li.mega-menu-item>a.mega-menu-link:hover,#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-megamenu>ul.mega-sub-menu li.mega-menu-column>ul.mega-sub-menu>li.mega-menu-item>a.mega-menu-link:hover{border-color:rgba(0,0,0,0)}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-megamenu>ul.mega-sub-menu>li.mega-menu-item>a.mega-menu-link:hover,#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-megamenu>ul.mega-sub-menu li.mega-menu-column>ul.mega-sub-menu>li.mega-menu-item>a.mega-menu-link:hover,#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-megamenu>ul.mega-sub-menu>li.mega-menu-item>a.mega-menu-link:focus,#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-megamenu>ul.mega-sub-menu li.mega-menu-column>ul.mega-sub-menu>li.mega-menu-item>a.mega-menu-link:focus{color:#fbe200;font-weight:inherit;text-decoration:none;background:rgba(0,0,0,0)}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-megamenu>ul.mega-sub-menu>li.mega-menu-item>a.mega-menu-link:hover>span.mega-title-below,#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-megamenu>ul.mega-sub-menu li.mega-menu-column>ul.mega-sub-menu>li.mega-menu-item>a.mega-menu-link:hover>span.mega-title-below,#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-megamenu>ul.mega-sub-menu>li.mega-menu-item>a.mega-menu-link:focus>span.mega-title-below,#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-megamenu>ul.mega-sub-menu li.mega-menu-column>ul.mega-sub-menu>li.mega-menu-item>a.mega-menu-link:focus>span.mega-title-below{text-decoration:none}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-megamenu>ul.mega-sub-menu>li.mega-menu-item li.mega-menu-item>a.mega-menu-link,#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-megamenu>ul.mega-sub-menu li.mega-menu-column>ul.mega-sub-menu>li.mega-menu-item li.mega-menu-item>a.mega-menu-link{color:#fff;font-family:inherit;font-size:14px;text-transform:none;text-decoration:none;font-weight:inherit;text-align:left;margin:0;padding:0;vertical-align:top;display:block;border:0}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-megamenu>ul.mega-sub-menu>li.mega-menu-item li.mega-menu-item>a.mega-menu-link:hover,#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-megamenu>ul.mega-sub-menu li.mega-menu-column>ul.mega-sub-menu>li.mega-menu-item li.mega-menu-item>a.mega-menu-link:hover{border-color:rgba(0,0,0,0)}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-megamenu>ul.mega-sub-menu>li.mega-menu-item li.mega-menu-item.mega-icon-left.mega-has-description.mega-has-icon>a.mega-menu-link,#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-megamenu>ul.mega-sub-menu li.mega-menu-column>ul.mega-sub-menu>li.mega-menu-item li.mega-menu-item.mega-icon-left.mega-has-description.mega-has-icon>a.mega-menu-link{display:flex}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-megamenu>ul.mega-sub-menu>li.mega-menu-item li.mega-menu-item>a.mega-menu-link:hover,#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-megamenu>ul.mega-sub-menu li.mega-menu-column>ul.mega-sub-menu>li.mega-menu-item li.mega-menu-item>a.mega-menu-link:hover,#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-megamenu>ul.mega-sub-menu>li.mega-menu-item li.mega-menu-item>a.mega-menu-link:focus,#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-megamenu>ul.mega-sub-menu li.mega-menu-column>ul.mega-sub-menu>li.mega-menu-item li.mega-menu-item>a.mega-menu-link:focus{color:#fbe200;font-weight:inherit;text-decoration:none;background:rgba(0,0,0,0)}@media only screen and (max-width:600px){#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-megamenu>ul.mega-sub-menu{border:0;padding:10px;border-radius:0}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-megamenu>ul.mega-sub-menu>li.mega-menu-item{width:100%;clear:both}}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-megamenu.mega-no-headers>ul.mega-sub-menu>li.mega-menu-item>a.mega-menu-link,#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-megamenu.mega-no-headers>ul.mega-sub-menu li.mega-menu-column>ul.mega-sub-menu>li.mega-menu-item>a.mega-menu-link{color:#fff;font-family:inherit;font-size:14px;text-transform:none;text-decoration:none;font-weight:inherit;margin:0;border:0;padding:0;vertical-align:top;display:block}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-megamenu.mega-no-headers>ul.mega-sub-menu>li.mega-menu-item>a.mega-menu-link:hover,#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-megamenu.mega-no-headers>ul.mega-sub-menu>li.mega-menu-item>a.mega-menu-link:focus,#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-megamenu.mega-no-headers>ul.mega-sub-menu li.mega-menu-column>ul.mega-sub-menu>li.mega-menu-item>a.mega-menu-link:hover,#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-megamenu.mega-no-headers>ul.mega-sub-menu li.mega-menu-column>ul.mega-sub-menu>li.mega-menu-item>a.mega-menu-link:focus{color:#fbe200;font-weight:inherit;text-decoration:none;background:rgba(0,0,0,0)}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-flyout ul.mega-sub-menu{z-index:999;position:absolute;width:250px;max-width:none;padding:0;border:0;background:#f1f1f1;border-radius:0}@media only screen and (max-width:600px){#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-flyout ul.mega-sub-menu{float:left;position:static;width:100%;padding:0;border:0;border-radius:0}}@media only screen and (max-width:600px){#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-flyout ul.mega-sub-menu li.mega-menu-item{clear:both}}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-flyout ul.mega-sub-menu li.mega-menu-item a.mega-menu-link{display:block;background:#f1f1f1;color:#666;font-family:inherit;font-size:14px;font-weight:400;padding:0 10px;line-height:35px;text-decoration:none;text-transform:none;vertical-align:baseline}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-flyout ul.mega-sub-menu li.mega-menu-item:first-child>a.mega-menu-link{border-top-left-radius:0;border-top-right-radius:0}@media only screen and (max-width:600px){#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-flyout ul.mega-sub-menu li.mega-menu-item:first-child>a.mega-menu-link{border-top-left-radius:0;border-top-right-radius:0}}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-flyout ul.mega-sub-menu li.mega-menu-item:last-child>a.mega-menu-link{border-bottom-right-radius:0;border-bottom-left-radius:0}@media only screen and (max-width:600px){#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-flyout ul.mega-sub-menu li.mega-menu-item:last-child>a.mega-menu-link{border-bottom-right-radius:0;border-bottom-left-radius:0}}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-flyout ul.mega-sub-menu li.mega-menu-item a.mega-menu-link:hover,#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-flyout ul.mega-sub-menu li.mega-menu-item a.mega-menu-link:focus{background:#ddd;font-weight:400;text-decoration:none;color:#666}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-flyout ul.mega-sub-menu li.mega-menu-item ul.mega-sub-menu{position:absolute;left:100%;top:0}@media only screen and (max-width:600px){#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-flyout ul.mega-sub-menu li.mega-menu-item ul.mega-sub-menu{position:static;left:0;width:100%}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-flyout ul.mega-sub-menu li.mega-menu-item ul.mega-sub-menu a.mega-menu-link{padding-left:20px}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-flyout ul.mega-sub-menu li.mega-menu-item ul.mega-sub-menu ul.mega-sub-menu a.mega-menu-link{padding-left:30px}}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r li.mega-menu-item-has-children>a.mega-menu-link>span.mega-indicator:after{content:'';font-family:dashicons;font-weight:400;display:inline-block;margin:0 0 0 6px;vertical-align:top;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;transform:rotate(0);color:inherit;position:relative;background:0 0;height:auto;width:auto;right:auto;line-height:inherit}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r li.mega-menu-item-has-children>a.mega-menu-link>span.mega-indicator{display:inline;height:auto;width:auto;background:0 0;position:relative;pointer-events:auto;left:auto;min-width:auto;line-height:inherit;color:inherit;font-size:inherit;padding:0}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r li.mega-menu-item-has-children li.mega-menu-item-has-children>a.mega-menu-link>span.mega-indicator{float:right}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r li.mega-menu-item-has-children.mega-collapse-children.mega-toggle-on>a.mega-menu-link>span.mega-indicator:after{content:''}@media only screen and (max-width:600px){#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r li.mega-menu-item-has-children>a.mega-menu-link>span.mega-indicator{float:right}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r li.mega-menu-item-has-children.mega-toggle-on>a.mega-menu-link>span.mega-indicator:after{content:''}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r li.mega-menu-item-has-children.mega-hide-sub-menu-on-mobile>a.mega-menu-link>span.mega-indicator{display:none}}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r li.mega-menu-megamenu:not(.mega-menu-tabbed) li.mega-menu-item-has-children:not(.mega-collapse-children)>a.mega-menu-link>span.mega-indicator,#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r li.mega-menu-item-has-children.mega-hide-arrow>a.mega-menu-link>span.mega-indicator{display:none}@media only screen and (min-width:601px){#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r li.mega-menu-flyout li.mega-menu-item a.mega-menu-link>span.mega-indicator:after{content:''}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r li.mega-menu-flyout.mega-align-bottom-right li.mega-menu-item a.mega-menu-link{text-align:right}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r li.mega-menu-flyout.mega-align-bottom-right li.mega-menu-item a.mega-menu-link>span.mega-indicator{float:left}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r li.mega-menu-flyout.mega-align-bottom-right li.mega-menu-item a.mega-menu-link>span.mega-indicator:after{content:'';margin:0 6px 0 0}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r li.mega-menu-flyout.mega-align-bottom-right li.mega-menu-item a.mega-menu-link:before{float:right;margin:0 0 0 6px}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r li.mega-menu-flyout.mega-align-bottom-right ul.mega-sub-menu li.mega-menu-item ul.mega-sub-menu{left:-100%;top:0}}@media only screen and (min-width:601px){#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r.mega-menu-accordion>li.mega-menu-item-has-children>a.mega-menu-link>span.mega-indicator{float:right}}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r li[class^=mega-lang-item]>a.mega-menu-link>img{display:inline}#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r a.mega-menu-link>img.wpml-ls-flag,#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r a.mega-menu-link>img.iclflag{display:inline;margin-right:8px}@media only screen and (max-width:600px){#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r li.mega-hide-on-mobile,#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-megamenu>ul.mega-sub-menu>li.mega-hide-on-mobile,#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-megamenu>ul.mega-sub-menu li.mega-menu-column>ul.mega-sub-menu>li.mega-menu-item.mega-hide-on-mobile{display:none}}@media only screen and (min-width:601px){#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r li.mega-hide-on-desktop,#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-megamenu>ul.mega-sub-menu>li.mega-hide-on-desktop,#mega-menu-wrap-top-bar-r #mega-menu-top-bar-r>li.mega-menu-megamenu>ul.mega-sub-menu li.mega-menu-column>ul.mega-sub-menu>li.mega-menu-item.mega-hide-on-desktop{display:none}}@media only screen and (max-width:600px){#mega-menu-wrap-top-bar-r:after{content:"";display:table;clear:both}}#mega-menu-wrap-top-bar-r .mega-menu-toggle{display:none;z-index:1;cursor:pointer;background:#222;border-radius:2px;line-height:40px;height:40px;text-align:left;user-select:none;-webkit-tap-highlight-color:transparent;outline:none;white-space:nowrap}#mega-menu-wrap-top-bar-r .mega-menu-toggle img{max-width:100%;padding:0}@media only screen and (max-width:600px){#mega-menu-wrap-top-bar-r .mega-menu-toggle{display:-webkit-box;display:-ms-flexbox;display:-webkit-flex;display:flex}}#mega-menu-wrap-top-bar-r .mega-menu-toggle .mega-toggle-blocks-left,#mega-menu-wrap-top-bar-r .mega-menu-toggle .mega-toggle-blocks-center,#mega-menu-wrap-top-bar-r .mega-menu-toggle .mega-toggle-blocks-right{display:-webkit-box;display:-ms-flexbox;display:-webkit-flex;display:flex;-ms-flex-preferred-size:33.33%;-webkit-flex-basis:33.33%;flex-basis:33.33%}#mega-menu-wrap-top-bar-r .mega-menu-toggle .mega-toggle-blocks-left{-webkit-box-flex:1;-ms-flex:1;-webkit-flex:1;flex:1;-webkit-box-pack:start;-ms-flex-pack:start;-webkit-justify-content:flex-start;justify-content:flex-start}#mega-menu-wrap-top-bar-r .mega-menu-toggle .mega-toggle-blocks-left .mega-toggle-block{margin-left:6px}#mega-menu-wrap-top-bar-r .mega-menu-toggle .mega-toggle-blocks-left .mega-toggle-block:only-child{margin-right:6px}#mega-menu-wrap-top-bar-r .mega-menu-toggle .mega-toggle-blocks-center{-webkit-box-pack:center;-ms-flex-pack:center;-webkit-justify-content:center;justify-content:center}#mega-menu-wrap-top-bar-r .mega-menu-toggle .mega-toggle-blocks-center .mega-toggle-block{margin-left:3px;margin-right:3px}#mega-menu-wrap-top-bar-r .mega-menu-toggle .mega-toggle-blocks-right{-webkit-box-flex:1;-ms-flex:1;-webkit-flex:1;flex:1;-webkit-box-pack:end;-ms-flex-pack:end;-webkit-justify-content:flex-end;justify-content:flex-end}#mega-menu-wrap-top-bar-r .mega-menu-toggle .mega-toggle-blocks-right .mega-toggle-block{margin-right:6px}#mega-menu-wrap-top-bar-r .mega-menu-toggle .mega-toggle-blocks-right .mega-toggle-block:only-child{margin-left:6px}#mega-menu-wrap-top-bar-r .mega-menu-toggle .mega-toggle-block{display:-webkit-box;display:-ms-flexbox;display:-webkit-flex;display:flex;height:100%;outline:0;-webkit-align-self:center;-ms-flex-item-align:center;align-self:center;-ms-flex-negative:0;-webkit-flex-shrink:0;flex-shrink:0}@media only screen and (max-width:600px){#mega-menu-wrap-top-bar-r .mega-menu-toggle+#mega-menu-top-bar-r{background:#222;padding:0;display:none}#mega-menu-wrap-top-bar-r .mega-menu-toggle.mega-menu-open+#mega-menu-top-bar-r{display:block}}#mega-menu-wrap-top-bar-r .mega-menu-toggle .mega-toggle-block-1{cursor:pointer}#mega-menu-wrap-top-bar-r .mega-menu-toggle .mega-toggle-block-1:after{content:'\f333';font-family:'dashicons';font-size:24px;color:#ddd;margin:0 0 0 5px}#mega-menu-wrap-top-bar-r .mega-menu-toggle .mega-toggle-block-1 .mega-toggle-label{color:#ddd;font-size:14px}#mega-menu-wrap-top-bar-r .mega-menu-toggle .mega-toggle-block-1 .mega-toggle-label .mega-toggle-label-open{display:none}#mega-menu-wrap-top-bar-r .mega-menu-toggle .mega-toggle-block-1 .mega-toggle-label .mega-toggle-label-closed{display:inline}#mega-menu-wrap-top-bar-r .mega-menu-toggle.mega-menu-open .mega-toggle-block-1:after{content:'\f153'}#mega-menu-wrap-top-bar-r .mega-menu-toggle.mega-menu-open .mega-toggle-block-1 .mega-toggle-label-open{display:inline}#mega-menu-wrap-top-bar-r .mega-menu-toggle.mega-menu-open .mega-toggle-block-1 .mega-toggle-label-closed{display:none}#mega-menu-wrap-top-bar-r{clear:both}.sticky.is-anchored.is-at-bottom{top:0 !important}
@charset "UTF-8";
/**
 * Foundation for Sites by ZURB
 * Version 6.5.1
 * foundation.zurb.com
 * Licensed under MIT Open Source
 */
@media print, screen and (min-width: 40em) {
  .reveal, .reveal.tiny, .reveal.small, .reveal.large {
    right: auto;
    left: auto;
    margin: 0 auto; } }

body[data-aos-duration='50'] [data-aos], [data-aos][data-aos][data-aos-duration='50'] {
  transition-duration: 50ms; }

body[data-aos-delay='50'] [data-aos], [data-aos][data-aos][data-aos-delay='50'] {
  transition-delay: 0; }
  body[data-aos-delay='50'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='50'].aos-animate {
    transition-delay: 50ms; }

body[data-aos-duration='100'] [data-aos], [data-aos][data-aos][data-aos-duration='100'] {
  transition-duration: 100ms; }

body[data-aos-delay='100'] [data-aos], [data-aos][data-aos][data-aos-delay='100'] {
  transition-delay: 0; }
  body[data-aos-delay='100'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='100'].aos-animate {
    transition-delay: 100ms; }

body[data-aos-duration='150'] [data-aos], [data-aos][data-aos][data-aos-duration='150'] {
  transition-duration: 150ms; }

body[data-aos-delay='150'] [data-aos], [data-aos][data-aos][data-aos-delay='150'] {
  transition-delay: 0; }
  body[data-aos-delay='150'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='150'].aos-animate {
    transition-delay: 150ms; }

body[data-aos-duration='200'] [data-aos], [data-aos][data-aos][data-aos-duration='200'] {
  transition-duration: 200ms; }

body[data-aos-delay='200'] [data-aos], [data-aos][data-aos][data-aos-delay='200'] {
  transition-delay: 0; }
  body[data-aos-delay='200'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='200'].aos-animate {
    transition-delay: 200ms; }

body[data-aos-duration='250'] [data-aos], [data-aos][data-aos][data-aos-duration='250'] {
  transition-duration: 250ms; }

body[data-aos-delay='250'] [data-aos], [data-aos][data-aos][data-aos-delay='250'] {
  transition-delay: 0; }
  body[data-aos-delay='250'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='250'].aos-animate {
    transition-delay: 250ms; }

body[data-aos-duration='300'] [data-aos], [data-aos][data-aos][data-aos-duration='300'] {
  transition-duration: 300ms; }

body[data-aos-delay='300'] [data-aos], [data-aos][data-aos][data-aos-delay='300'] {
  transition-delay: 0; }
  body[data-aos-delay='300'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='300'].aos-animate {
    transition-delay: 300ms; }

body[data-aos-duration='350'] [data-aos], [data-aos][data-aos][data-aos-duration='350'] {
  transition-duration: 350ms; }

body[data-aos-delay='350'] [data-aos], [data-aos][data-aos][data-aos-delay='350'] {
  transition-delay: 0; }
  body[data-aos-delay='350'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='350'].aos-animate {
    transition-delay: 350ms; }

body[data-aos-duration='400'] [data-aos], [data-aos][data-aos][data-aos-duration='400'] {
  transition-duration: 400ms; }

body[data-aos-delay='400'] [data-aos], [data-aos][data-aos][data-aos-delay='400'] {
  transition-delay: 0; }
  body[data-aos-delay='400'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='400'].aos-animate {
    transition-delay: 400ms; }

body[data-aos-duration='450'] [data-aos], [data-aos][data-aos][data-aos-duration='450'] {
  transition-duration: 450ms; }

body[data-aos-delay='450'] [data-aos], [data-aos][data-aos][data-aos-delay='450'] {
  transition-delay: 0; }
  body[data-aos-delay='450'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='450'].aos-animate {
    transition-delay: 450ms; }

body[data-aos-duration='500'] [data-aos], [data-aos][data-aos][data-aos-duration='500'] {
  transition-duration: 500ms; }

body[data-aos-delay='500'] [data-aos], [data-aos][data-aos][data-aos-delay='500'] {
  transition-delay: 0; }
  body[data-aos-delay='500'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='500'].aos-animate {
    transition-delay: 500ms; }

body[data-aos-duration='550'] [data-aos], [data-aos][data-aos][data-aos-duration='550'] {
  transition-duration: 550ms; }

body[data-aos-delay='550'] [data-aos], [data-aos][data-aos][data-aos-delay='550'] {
  transition-delay: 0; }
  body[data-aos-delay='550'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='550'].aos-animate {
    transition-delay: 550ms; }

body[data-aos-duration='600'] [data-aos], [data-aos][data-aos][data-aos-duration='600'] {
  transition-duration: 600ms; }

body[data-aos-delay='600'] [data-aos], [data-aos][data-aos][data-aos-delay='600'] {
  transition-delay: 0; }
  body[data-aos-delay='600'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='600'].aos-animate {
    transition-delay: 600ms; }

body[data-aos-duration='650'] [data-aos], [data-aos][data-aos][data-aos-duration='650'] {
  transition-duration: 650ms; }

body[data-aos-delay='650'] [data-aos], [data-aos][data-aos][data-aos-delay='650'] {
  transition-delay: 0; }
  body[data-aos-delay='650'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='650'].aos-animate {
    transition-delay: 650ms; }

body[data-aos-duration='700'] [data-aos], [data-aos][data-aos][data-aos-duration='700'] {
  transition-duration: 700ms; }

body[data-aos-delay='700'] [data-aos], [data-aos][data-aos][data-aos-delay='700'] {
  transition-delay: 0; }
  body[data-aos-delay='700'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='700'].aos-animate {
    transition-delay: 700ms; }

body[data-aos-duration='750'] [data-aos], [data-aos][data-aos][data-aos-duration='750'] {
  transition-duration: 750ms; }

body[data-aos-delay='750'] [data-aos], [data-aos][data-aos][data-aos-delay='750'] {
  transition-delay: 0; }
  body[data-aos-delay='750'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='750'].aos-animate {
    transition-delay: 750ms; }

body[data-aos-duration='800'] [data-aos], [data-aos][data-aos][data-aos-duration='800'] {
  transition-duration: 800ms; }

body[data-aos-delay='800'] [data-aos], [data-aos][data-aos][data-aos-delay='800'] {
  transition-delay: 0; }
  body[data-aos-delay='800'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='800'].aos-animate {
    transition-delay: 800ms; }

body[data-aos-duration='850'] [data-aos], [data-aos][data-aos][data-aos-duration='850'] {
  transition-duration: 850ms; }

body[data-aos-delay='850'] [data-aos], [data-aos][data-aos][data-aos-delay='850'] {
  transition-delay: 0; }
  body[data-aos-delay='850'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='850'].aos-animate {
    transition-delay: 850ms; }

body[data-aos-duration='900'] [data-aos], [data-aos][data-aos][data-aos-duration='900'] {
  transition-duration: 900ms; }

body[data-aos-delay='900'] [data-aos], [data-aos][data-aos][data-aos-delay='900'] {
  transition-delay: 0; }
  body[data-aos-delay='900'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='900'].aos-animate {
    transition-delay: 900ms; }

body[data-aos-duration='950'] [data-aos], [data-aos][data-aos][data-aos-duration='950'] {
  transition-duration: 950ms; }

body[data-aos-delay='950'] [data-aos], [data-aos][data-aos][data-aos-delay='950'] {
  transition-delay: 0; }
  body[data-aos-delay='950'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='950'].aos-animate {
    transition-delay: 950ms; }

body[data-aos-duration='1000'] [data-aos], [data-aos][data-aos][data-aos-duration='1000'] {
  transition-duration: 1000ms; }

body[data-aos-delay='1000'] [data-aos], [data-aos][data-aos][data-aos-delay='1000'] {
  transition-delay: 0; }
  body[data-aos-delay='1000'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='1000'].aos-animate {
    transition-delay: 1000ms; }

body[data-aos-duration='1050'] [data-aos], [data-aos][data-aos][data-aos-duration='1050'] {
  transition-duration: 1050ms; }

body[data-aos-delay='1050'] [data-aos], [data-aos][data-aos][data-aos-delay='1050'] {
  transition-delay: 0; }
  body[data-aos-delay='1050'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='1050'].aos-animate {
    transition-delay: 1050ms; }

body[data-aos-duration='1100'] [data-aos], [data-aos][data-aos][data-aos-duration='1100'] {
  transition-duration: 1100ms; }

body[data-aos-delay='1100'] [data-aos], [data-aos][data-aos][data-aos-delay='1100'] {
  transition-delay: 0; }
  body[data-aos-delay='1100'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='1100'].aos-animate {
    transition-delay: 1100ms; }

body[data-aos-duration='1150'] [data-aos], [data-aos][data-aos][data-aos-duration='1150'] {
  transition-duration: 1150ms; }

body[data-aos-delay='1150'] [data-aos], [data-aos][data-aos][data-aos-delay='1150'] {
  transition-delay: 0; }
  body[data-aos-delay='1150'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='1150'].aos-animate {
    transition-delay: 1150ms; }

body[data-aos-duration='1200'] [data-aos], [data-aos][data-aos][data-aos-duration='1200'] {
  transition-duration: 1200ms; }

body[data-aos-delay='1200'] [data-aos], [data-aos][data-aos][data-aos-delay='1200'] {
  transition-delay: 0; }
  body[data-aos-delay='1200'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='1200'].aos-animate {
    transition-delay: 1200ms; }

body[data-aos-duration='1250'] [data-aos], [data-aos][data-aos][data-aos-duration='1250'] {
  transition-duration: 1250ms; }

body[data-aos-delay='1250'] [data-aos], [data-aos][data-aos][data-aos-delay='1250'] {
  transition-delay: 0; }
  body[data-aos-delay='1250'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='1250'].aos-animate {
    transition-delay: 1250ms; }

body[data-aos-duration='1300'] [data-aos], [data-aos][data-aos][data-aos-duration='1300'] {
  transition-duration: 1300ms; }

body[data-aos-delay='1300'] [data-aos], [data-aos][data-aos][data-aos-delay='1300'] {
  transition-delay: 0; }
  body[data-aos-delay='1300'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='1300'].aos-animate {
    transition-delay: 1300ms; }

body[data-aos-duration='1350'] [data-aos], [data-aos][data-aos][data-aos-duration='1350'] {
  transition-duration: 1350ms; }

body[data-aos-delay='1350'] [data-aos], [data-aos][data-aos][data-aos-delay='1350'] {
  transition-delay: 0; }
  body[data-aos-delay='1350'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='1350'].aos-animate {
    transition-delay: 1350ms; }

body[data-aos-duration='1400'] [data-aos], [data-aos][data-aos][data-aos-duration='1400'] {
  transition-duration: 1400ms; }

body[data-aos-delay='1400'] [data-aos], [data-aos][data-aos][data-aos-delay='1400'] {
  transition-delay: 0; }
  body[data-aos-delay='1400'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='1400'].aos-animate {
    transition-delay: 1400ms; }

body[data-aos-duration='1450'] [data-aos], [data-aos][data-aos][data-aos-duration='1450'] {
  transition-duration: 1450ms; }

body[data-aos-delay='1450'] [data-aos], [data-aos][data-aos][data-aos-delay='1450'] {
  transition-delay: 0; }
  body[data-aos-delay='1450'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='1450'].aos-animate {
    transition-delay: 1450ms; }

body[data-aos-duration='1500'] [data-aos], [data-aos][data-aos][data-aos-duration='1500'] {
  transition-duration: 1500ms; }

body[data-aos-delay='1500'] [data-aos], [data-aos][data-aos][data-aos-delay='1500'] {
  transition-delay: 0; }
  body[data-aos-delay='1500'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='1500'].aos-animate {
    transition-delay: 1500ms; }

body[data-aos-duration='1550'] [data-aos], [data-aos][data-aos][data-aos-duration='1550'] {
  transition-duration: 1550ms; }

body[data-aos-delay='1550'] [data-aos], [data-aos][data-aos][data-aos-delay='1550'] {
  transition-delay: 0; }
  body[data-aos-delay='1550'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='1550'].aos-animate {
    transition-delay: 1550ms; }

body[data-aos-duration='1600'] [data-aos], [data-aos][data-aos][data-aos-duration='1600'] {
  transition-duration: 1600ms; }

body[data-aos-delay='1600'] [data-aos], [data-aos][data-aos][data-aos-delay='1600'] {
  transition-delay: 0; }
  body[data-aos-delay='1600'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='1600'].aos-animate {
    transition-delay: 1600ms; }

body[data-aos-duration='1650'] [data-aos], [data-aos][data-aos][data-aos-duration='1650'] {
  transition-duration: 1650ms; }

body[data-aos-delay='1650'] [data-aos], [data-aos][data-aos][data-aos-delay='1650'] {
  transition-delay: 0; }
  body[data-aos-delay='1650'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='1650'].aos-animate {
    transition-delay: 1650ms; }

body[data-aos-duration='1700'] [data-aos], [data-aos][data-aos][data-aos-duration='1700'] {
  transition-duration: 1700ms; }

body[data-aos-delay='1700'] [data-aos], [data-aos][data-aos][data-aos-delay='1700'] {
  transition-delay: 0; }
  body[data-aos-delay='1700'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='1700'].aos-animate {
    transition-delay: 1700ms; }

body[data-aos-duration='1750'] [data-aos], [data-aos][data-aos][data-aos-duration='1750'] {
  transition-duration: 1750ms; }

body[data-aos-delay='1750'] [data-aos], [data-aos][data-aos][data-aos-delay='1750'] {
  transition-delay: 0; }
  body[data-aos-delay='1750'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='1750'].aos-animate {
    transition-delay: 1750ms; }

body[data-aos-duration='1800'] [data-aos], [data-aos][data-aos][data-aos-duration='1800'] {
  transition-duration: 1800ms; }

body[data-aos-delay='1800'] [data-aos], [data-aos][data-aos][data-aos-delay='1800'] {
  transition-delay: 0; }
  body[data-aos-delay='1800'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='1800'].aos-animate {
    transition-delay: 1800ms; }

body[data-aos-duration='1850'] [data-aos], [data-aos][data-aos][data-aos-duration='1850'] {
  transition-duration: 1850ms; }

body[data-aos-delay='1850'] [data-aos], [data-aos][data-aos][data-aos-delay='1850'] {
  transition-delay: 0; }
  body[data-aos-delay='1850'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='1850'].aos-animate {
    transition-delay: 1850ms; }

body[data-aos-duration='1900'] [data-aos], [data-aos][data-aos][data-aos-duration='1900'] {
  transition-duration: 1900ms; }

body[data-aos-delay='1900'] [data-aos], [data-aos][data-aos][data-aos-delay='1900'] {
  transition-delay: 0; }
  body[data-aos-delay='1900'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='1900'].aos-animate {
    transition-delay: 1900ms; }

body[data-aos-duration='1950'] [data-aos], [data-aos][data-aos][data-aos-duration='1950'] {
  transition-duration: 1950ms; }

body[data-aos-delay='1950'] [data-aos], [data-aos][data-aos][data-aos-delay='1950'] {
  transition-delay: 0; }
  body[data-aos-delay='1950'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='1950'].aos-animate {
    transition-delay: 1950ms; }

body[data-aos-duration='2000'] [data-aos], [data-aos][data-aos][data-aos-duration='2000'] {
  transition-duration: 2000ms; }

body[data-aos-delay='2000'] [data-aos], [data-aos][data-aos][data-aos-delay='2000'] {
  transition-delay: 0; }
  body[data-aos-delay='2000'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='2000'].aos-animate {
    transition-delay: 2000ms; }

body[data-aos-duration='2050'] [data-aos], [data-aos][data-aos][data-aos-duration='2050'] {
  transition-duration: 2050ms; }

body[data-aos-delay='2050'] [data-aos], [data-aos][data-aos][data-aos-delay='2050'] {
  transition-delay: 0; }
  body[data-aos-delay='2050'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='2050'].aos-animate {
    transition-delay: 2050ms; }

body[data-aos-duration='2100'] [data-aos], [data-aos][data-aos][data-aos-duration='2100'] {
  transition-duration: 2100ms; }

body[data-aos-delay='2100'] [data-aos], [data-aos][data-aos][data-aos-delay='2100'] {
  transition-delay: 0; }
  body[data-aos-delay='2100'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='2100'].aos-animate {
    transition-delay: 2100ms; }

body[data-aos-duration='2150'] [data-aos], [data-aos][data-aos][data-aos-duration='2150'] {
  transition-duration: 2150ms; }

body[data-aos-delay='2150'] [data-aos], [data-aos][data-aos][data-aos-delay='2150'] {
  transition-delay: 0; }
  body[data-aos-delay='2150'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='2150'].aos-animate {
    transition-delay: 2150ms; }

body[data-aos-duration='2200'] [data-aos], [data-aos][data-aos][data-aos-duration='2200'] {
  transition-duration: 2200ms; }

body[data-aos-delay='2200'] [data-aos], [data-aos][data-aos][data-aos-delay='2200'] {
  transition-delay: 0; }
  body[data-aos-delay='2200'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='2200'].aos-animate {
    transition-delay: 2200ms; }

body[data-aos-duration='2250'] [data-aos], [data-aos][data-aos][data-aos-duration='2250'] {
  transition-duration: 2250ms; }

body[data-aos-delay='2250'] [data-aos], [data-aos][data-aos][data-aos-delay='2250'] {
  transition-delay: 0; }
  body[data-aos-delay='2250'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='2250'].aos-animate {
    transition-delay: 2250ms; }

body[data-aos-duration='2300'] [data-aos], [data-aos][data-aos][data-aos-duration='2300'] {
  transition-duration: 2300ms; }

body[data-aos-delay='2300'] [data-aos], [data-aos][data-aos][data-aos-delay='2300'] {
  transition-delay: 0; }
  body[data-aos-delay='2300'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='2300'].aos-animate {
    transition-delay: 2300ms; }

body[data-aos-duration='2350'] [data-aos], [data-aos][data-aos][data-aos-duration='2350'] {
  transition-duration: 2350ms; }

body[data-aos-delay='2350'] [data-aos], [data-aos][data-aos][data-aos-delay='2350'] {
  transition-delay: 0; }
  body[data-aos-delay='2350'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='2350'].aos-animate {
    transition-delay: 2350ms; }

body[data-aos-duration='2400'] [data-aos], [data-aos][data-aos][data-aos-duration='2400'] {
  transition-duration: 2400ms; }

body[data-aos-delay='2400'] [data-aos], [data-aos][data-aos][data-aos-delay='2400'] {
  transition-delay: 0; }
  body[data-aos-delay='2400'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='2400'].aos-animate {
    transition-delay: 2400ms; }

body[data-aos-duration='2450'] [data-aos], [data-aos][data-aos][data-aos-duration='2450'] {
  transition-duration: 2450ms; }

body[data-aos-delay='2450'] [data-aos], [data-aos][data-aos][data-aos-delay='2450'] {
  transition-delay: 0; }
  body[data-aos-delay='2450'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='2450'].aos-animate {
    transition-delay: 2450ms; }

body[data-aos-duration='2500'] [data-aos], [data-aos][data-aos][data-aos-duration='2500'] {
  transition-duration: 2500ms; }

body[data-aos-delay='2500'] [data-aos], [data-aos][data-aos][data-aos-delay='2500'] {
  transition-delay: 0; }
  body[data-aos-delay='2500'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='2500'].aos-animate {
    transition-delay: 2500ms; }

body[data-aos-duration='2550'] [data-aos], [data-aos][data-aos][data-aos-duration='2550'] {
  transition-duration: 2550ms; }

body[data-aos-delay='2550'] [data-aos], [data-aos][data-aos][data-aos-delay='2550'] {
  transition-delay: 0; }
  body[data-aos-delay='2550'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='2550'].aos-animate {
    transition-delay: 2550ms; }

body[data-aos-duration='2600'] [data-aos], [data-aos][data-aos][data-aos-duration='2600'] {
  transition-duration: 2600ms; }

body[data-aos-delay='2600'] [data-aos], [data-aos][data-aos][data-aos-delay='2600'] {
  transition-delay: 0; }
  body[data-aos-delay='2600'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='2600'].aos-animate {
    transition-delay: 2600ms; }

body[data-aos-duration='2650'] [data-aos], [data-aos][data-aos][data-aos-duration='2650'] {
  transition-duration: 2650ms; }

body[data-aos-delay='2650'] [data-aos], [data-aos][data-aos][data-aos-delay='2650'] {
  transition-delay: 0; }
  body[data-aos-delay='2650'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='2650'].aos-animate {
    transition-delay: 2650ms; }

body[data-aos-duration='2700'] [data-aos], [data-aos][data-aos][data-aos-duration='2700'] {
  transition-duration: 2700ms; }

body[data-aos-delay='2700'] [data-aos], [data-aos][data-aos][data-aos-delay='2700'] {
  transition-delay: 0; }
  body[data-aos-delay='2700'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='2700'].aos-animate {
    transition-delay: 2700ms; }

body[data-aos-duration='2750'] [data-aos], [data-aos][data-aos][data-aos-duration='2750'] {
  transition-duration: 2750ms; }

body[data-aos-delay='2750'] [data-aos], [data-aos][data-aos][data-aos-delay='2750'] {
  transition-delay: 0; }
  body[data-aos-delay='2750'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='2750'].aos-animate {
    transition-delay: 2750ms; }

body[data-aos-duration='2800'] [data-aos], [data-aos][data-aos][data-aos-duration='2800'] {
  transition-duration: 2800ms; }

body[data-aos-delay='2800'] [data-aos], [data-aos][data-aos][data-aos-delay='2800'] {
  transition-delay: 0; }
  body[data-aos-delay='2800'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='2800'].aos-animate {
    transition-delay: 2800ms; }

body[data-aos-duration='2850'] [data-aos], [data-aos][data-aos][data-aos-duration='2850'] {
  transition-duration: 2850ms; }

body[data-aos-delay='2850'] [data-aos], [data-aos][data-aos][data-aos-delay='2850'] {
  transition-delay: 0; }
  body[data-aos-delay='2850'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='2850'].aos-animate {
    transition-delay: 2850ms; }

body[data-aos-duration='2900'] [data-aos], [data-aos][data-aos][data-aos-duration='2900'] {
  transition-duration: 2900ms; }

body[data-aos-delay='2900'] [data-aos], [data-aos][data-aos][data-aos-delay='2900'] {
  transition-delay: 0; }
  body[data-aos-delay='2900'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='2900'].aos-animate {
    transition-delay: 2900ms; }

body[data-aos-duration='2950'] [data-aos], [data-aos][data-aos][data-aos-duration='2950'] {
  transition-duration: 2950ms; }

body[data-aos-delay='2950'] [data-aos], [data-aos][data-aos][data-aos-delay='2950'] {
  transition-delay: 0; }
  body[data-aos-delay='2950'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='2950'].aos-animate {
    transition-delay: 2950ms; }

body[data-aos-duration='3000'] [data-aos], [data-aos][data-aos][data-aos-duration='3000'] {
  transition-duration: 3000ms; }

body[data-aos-delay='3000'] [data-aos], [data-aos][data-aos][data-aos-delay='3000'] {
  transition-delay: 0; }
  body[data-aos-delay='3000'] [data-aos].aos-animate, [data-aos][data-aos][data-aos-delay='3000'].aos-animate {
    transition-delay: 3000ms; }

body[data-aos-easing="linear"] [data-aos], [data-aos][data-aos][data-aos-easing="linear"] {
  transition-timing-function: cubic-bezier(0.25, 0.25, 0.75, 0.75); }

body[data-aos-easing="ease"] [data-aos], [data-aos][data-aos][data-aos-easing="ease"] {
  transition-timing-function: cubic-bezier(0.25, 0.1, 0.25, 1); }

body[data-aos-easing="ease-in"] [data-aos], [data-aos][data-aos][data-aos-easing="ease-in"] {
  transition-timing-function: cubic-bezier(0.42, 0, 1, 1); }

body[data-aos-easing="ease-out"] [data-aos], [data-aos][data-aos][data-aos-easing="ease-out"] {
  transition-timing-function: cubic-bezier(0, 0, 0.58, 1); }

body[data-aos-easing="ease-in-out"] [data-aos], [data-aos][data-aos][data-aos-easing="ease-in-out"] {
  transition-timing-function: cubic-bezier(0.42, 0, 0.58, 1); }

body[data-aos-easing="ease-in-back"] [data-aos], [data-aos][data-aos][data-aos-easing="ease-in-back"] {
  transition-timing-function: cubic-bezier(0.6, -0.28, 0.735, 0.045); }

body[data-aos-easing="ease-out-back"] [data-aos], [data-aos][data-aos][data-aos-easing="ease-out-back"] {
  transition-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1.275); }

body[data-aos-easing="ease-in-out-back"] [data-aos], [data-aos][data-aos][data-aos-easing="ease-in-out-back"] {
  transition-timing-function: cubic-bezier(0.68, -0.55, 0.265, 1.55); }

body[data-aos-easing="ease-in-sine"] [data-aos], [data-aos][data-aos][data-aos-easing="ease-in-sine"] {
  transition-timing-function: cubic-bezier(0.47, 0, 0.745, 0.715); }

body[data-aos-easing="ease-out-sine"] [data-aos], [data-aos][data-aos][data-aos-easing="ease-out-sine"] {
  transition-timing-function: cubic-bezier(0.39, 0.575, 0.565, 1); }

body[data-aos-easing="ease-in-out-sine"] [data-aos], [data-aos][data-aos][data-aos-easing="ease-in-out-sine"] {
  transition-timing-function: cubic-bezier(0.445, 0.05, 0.55, 0.95); }

body[data-aos-easing="ease-in-quad"] [data-aos], [data-aos][data-aos][data-aos-easing="ease-in-quad"] {
  transition-timing-function: cubic-bezier(0.55, 0.085, 0.68, 0.53); }

body[data-aos-easing="ease-out-quad"] [data-aos], [data-aos][data-aos][data-aos-easing="ease-out-quad"] {
  transition-timing-function: cubic-bezier(0.25, 0.46, 0.45, 0.94); }

body[data-aos-easing="ease-in-out-quad"] [data-aos], [data-aos][data-aos][data-aos-easing="ease-in-out-quad"] {
  transition-timing-function: cubic-bezier(0.455, 0.03, 0.515, 0.955); }

body[data-aos-easing="ease-in-cubic"] [data-aos], [data-aos][data-aos][data-aos-easing="ease-in-cubic"] {
  transition-timing-function: cubic-bezier(0.55, 0.085, 0.68, 0.53); }

body[data-aos-easing="ease-out-cubic"] [data-aos], [data-aos][data-aos][data-aos-easing="ease-out-cubic"] {
  transition-timing-function: cubic-bezier(0.25, 0.46, 0.45, 0.94); }

body[data-aos-easing="ease-in-out-cubic"] [data-aos], [data-aos][data-aos][data-aos-easing="ease-in-out-cubic"] {
  transition-timing-function: cubic-bezier(0.455, 0.03, 0.515, 0.955); }

body[data-aos-easing="ease-in-quart"] [data-aos], [data-aos][data-aos][data-aos-easing="ease-in-quart"] {
  transition-timing-function: cubic-bezier(0.55, 0.085, 0.68, 0.53); }

body[data-aos-easing="ease-out-quart"] [data-aos], [data-aos][data-aos][data-aos-easing="ease-out-quart"] {
  transition-timing-function: cubic-bezier(0.25, 0.46, 0.45, 0.94); }

body[data-aos-easing="ease-in-out-quart"] [data-aos], [data-aos][data-aos][data-aos-easing="ease-in-out-quart"] {
  transition-timing-function: cubic-bezier(0.455, 0.03, 0.515, 0.955); }

/**
 * Fade animations:
 * fade
 * fade-up, fade-down, fade-left, fade-right
 * fade-up-right, fade-up-left, fade-down-right, fade-down-left
 */
[data-aos^='fade'][data-aos^='fade'] {
  opacity: 0;
  transition-property: opacity, transform; }
  [data-aos^='fade'][data-aos^='fade'].aos-animate {
    opacity: 1;
    transform: translate3d(0, 0, 0); }

[data-aos='fade-up'] {
  transform: translate3d(0, 100px, 0); }

[data-aos='fade-down'] {
  transform: translate3d(0, -100px, 0); }

[data-aos='fade-right'] {
  transform: translate3d(-100px, 0, 0); }

[data-aos='fade-left'] {
  transform: translate3d(100px, 0, 0); }

[data-aos='fade-up-right'] {
  transform: translate3d(-100px, 100px, 0); }

[data-aos='fade-up-left'] {
  transform: translate3d(100px, 100px, 0); }

[data-aos='fade-down-right'] {
  transform: translate3d(-100px, -100px, 0); }

[data-aos='fade-down-left'] {
  transform: translate3d(100px, -100px, 0); }

/**
 * Zoom animations:
 * zoom-in, zoom-in-up, zoom-in-down, zoom-in-left, zoom-in-right
 * zoom-out, zoom-out-up, zoom-out-down, zoom-out-left, zoom-out-right
 */
[data-aos^='zoom'][data-aos^='zoom'] {
  opacity: 0;
  transition-property: opacity, transform; }
  [data-aos^='zoom'][data-aos^='zoom'].aos-animate {
    opacity: 1;
    transform: translate3d(0, 0, 0) scale(1); }

[data-aos='zoom-in'] {
  -ms-transform: scale(0.6);
      transform: scale(0.6); }

[data-aos='zoom-in-up'] {
  transform: translate3d(0, 100px, 0) scale(0.6); }

[data-aos='zoom-in-down'] {
  transform: translate3d(0, -100px, 0) scale(0.6); }

[data-aos='zoom-in-right'] {
  transform: translate3d(-100px, 0, 0) scale(0.6); }

[data-aos='zoom-in-left'] {
  transform: translate3d(100px, 0, 0) scale(0.6); }

[data-aos='zoom-out'] {
  -ms-transform: scale(1.2);
      transform: scale(1.2); }

[data-aos='zoom-out-up'] {
  transform: translate3d(0, 100px, 0) scale(1.2); }

[data-aos='zoom-out-down'] {
  transform: translate3d(0, -100px, 0) scale(1.2); }

[data-aos='zoom-out-right'] {
  transform: translate3d(-100px, 0, 0) scale(1.2); }

[data-aos='zoom-out-left'] {
  transform: translate3d(100px, 0, 0) scale(1.2); }

/**
 * Slide animations
 */
[data-aos^='slide'][data-aos^='slide'] {
  transition-property: transform; }
  [data-aos^='slide'][data-aos^='slide'].aos-animate {
    transform: translate3d(0, 0, 0); }

[data-aos='slide-up'] {
  transform: translate3d(0, 100%, 0); }

[data-aos='slide-down'] {
  transform: translate3d(0, -100%, 0); }

[data-aos='slide-right'] {
  transform: translate3d(-100%, 0, 0); }

[data-aos='slide-left'] {
  transform: translate3d(100%, 0, 0); }

/**
 * Flip animations:
 * flip-left, flip-right, flip-up, flip-down
 */
[data-aos^='flip'][data-aos^='flip'] {
  backface-visibility: hidden;
  transition-property: transform; }

[data-aos='flip-left'] {
  transform: perspective(2500px) rotateY(-100deg); }
  [data-aos='flip-left'].aos-animate {
    transform: perspective(2500px) rotateY(0); }

[data-aos='flip-right'] {
  transform: perspective(2500px) rotateY(100deg); }
  [data-aos='flip-right'].aos-animate {
    transform: perspective(2500px) rotateY(0); }

[data-aos='flip-up'] {
  transform: perspective(2500px) rotateX(-100deg); }
  [data-aos='flip-up'].aos-animate {
    transform: perspective(2500px) rotateX(0); }

[data-aos='flip-down'] {
  transform: perspective(2500px) rotateX(100deg); }
  [data-aos='flip-down'].aos-animate {
    transform: perspective(2500px) rotateX(0); }

/*! normalize.css v8.0.0 | MIT License | github.com/necolas/normalize.css */
html {
  line-height: 1.15;
  -webkit-text-size-adjust: 100%; }

body {
  margin: 0; }

h1 {
  font-size: 2em;
  margin: 0.67em 0; }

hr {
  box-sizing: content-box;
  height: 0;
  overflow: visible; }

pre {
  font-family: monospace, monospace;
  font-size: 1em; }

a {
  background-color: transparent; }

abbr[title] {
  border-bottom: none;
  text-decoration: underline;
  text-decoration: underline dotted; }

b,
strong {
  font-weight: bolder; }

code,
kbd,
samp {
  font-family: monospace, monospace;
  font-size: 1em; }

small {
  font-size: 80%; }

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline; }

sub {
  bottom: -0.25em; }

sup {
  top: -0.5em; }

img {
  border-style: none; }

button,
input,
optgroup,
select,
textarea {
  font-family: inherit;
  font-size: 100%;
  line-height: 1.15;
  margin: 0; }

button,
input {
  overflow: visible; }

button,
select {
  text-transform: none; }

button,
[type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button; }

button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  border-style: none;
  padding: 0; }

button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
  outline: 1px dotted ButtonText; }

fieldset {
  padding: 0.35em 0.75em 0.625em; }

legend {
  box-sizing: border-box;
  color: inherit;
  display: table;
  max-width: 100%;
  padding: 0;
  white-space: normal; }

progress {
  vertical-align: baseline; }

textarea {
  overflow: auto; }

[type="checkbox"],
[type="radio"] {
  box-sizing: border-box;
  padding: 0; }

[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
  height: auto; }

[type="search"] {
  -webkit-appearance: textfield;
  outline-offset: -2px; }

[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none; }

::-webkit-file-upload-button {
  -webkit-appearance: button;
  font: inherit; }

details {
  display: block; }

summary {
  display: list-item; }

template {
  display: none; }

[hidden] {
  display: none; }

.foundation-mq {
  font-family: "small=0em&medium=40em&large=64em&xlarge=75em&xxlarge=88.75em"; }

html {
  box-sizing: border-box;
  font-size: 100%; }

*,
*::before,
*::after {
  box-sizing: inherit; }

body {
  margin: 0;
  padding: 0;
  background: #fefefe;
  font-family: aktiv-grotesk, sans-serif;
  font-weight: 400;
  line-height: 1.5;
  color: #0a0a0a;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }

img {
  display: inline-block;
  vertical-align: middle;
  max-width: 100%;
  height: auto;
  -ms-interpolation-mode: bicubic; }

textarea {
  height: auto;
  min-height: 50px;
  border-radius: 1.25rem; }

select {
  box-sizing: border-box;
  width: 100%;
  border-radius: 1.25rem; }

.map_canvas img,
.map_canvas embed,
.map_canvas object,
.mqa-display img,
.mqa-display embed,
.mqa-display object {
  max-width: none !important; }

button {
  padding: 0;
  -webkit-appearance: none;
          appearance: none;
  border: 0;
  border-radius: 1.25rem;
  background: transparent;
  line-height: 1;
  cursor: auto; }
  [data-whatinput='mouse'] button {
    outline: 0; }

pre {
  overflow: auto; }

button,
input,
optgroup,
select,
textarea {
  font-family: inherit; }

.is-visible {
  display: block !important; }

.is-hidden {
  display: none !important; }

.row {
  max-width: none;
  margin-right: auto;
  margin-left: auto;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-flow: row wrap;
      flex-flow: row wrap; }
  .row .row {
    margin-right: -0.625rem;
    margin-left: -0.625rem; }
    @media print, screen and (min-width: 40em) {
      .row .row {
        margin-right: -0.9375rem;
        margin-left: -0.9375rem; } }
    @media print, screen and (min-width: 64em) {
      .row .row {
        margin-right: -0.9375rem;
        margin-left: -0.9375rem; } }
    .row .row.collapse {
      margin-right: 0;
      margin-left: 0; }
  .row.expanded {
    max-width: none; }
    .row.expanded .row {
      margin-right: auto;
      margin-left: auto; }
  .row:not(.expanded) .row {
    max-width: none; }
  .row.collapse > .column, .row.collapse > .columns {
    padding-right: 0;
    padding-left: 0; }
  .row.is-collapse-child,
  .row.collapse > .column > .row,
  .row.collapse > .columns > .row {
    margin-right: 0;
    margin-left: 0; }

.column, .columns {
  -ms-flex: 1 1 0px;
      flex: 1 1 0px;
  padding-right: 0.625rem;
  padding-left: 0.625rem;
  min-width: 0; }
  @media print, screen and (min-width: 40em) {
    .column, .columns {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }

.column.row.row, .row.row.columns {
  float: none;
  display: block; }

.row .column.row.row, .row .row.row.columns {
  margin-right: 0;
  margin-left: 0;
  padding-right: 0;
  padding-left: 0; }

.small-1 {
  -ms-flex: 0 0 8.33333%;
      flex: 0 0 8.33333%;
  max-width: 8.33333%; }

.small-offset-0 {
  margin-left: 0%; }

.small-2 {
  -ms-flex: 0 0 16.66667%;
      flex: 0 0 16.66667%;
  max-width: 16.66667%; }

.small-offset-1 {
  margin-left: 8.33333%; }

.small-3 {
  -ms-flex: 0 0 25%;
      flex: 0 0 25%;
  max-width: 25%; }

.small-offset-2 {
  margin-left: 16.66667%; }

.small-4 {
  -ms-flex: 0 0 33.33333%;
      flex: 0 0 33.33333%;
  max-width: 33.33333%; }

.small-offset-3 {
  margin-left: 25%; }

.small-5 {
  -ms-flex: 0 0 41.66667%;
      flex: 0 0 41.66667%;
  max-width: 41.66667%; }

.small-offset-4 {
  margin-left: 33.33333%; }

.small-6 {
  -ms-flex: 0 0 50%;
      flex: 0 0 50%;
  max-width: 50%; }

.small-offset-5 {
  margin-left: 41.66667%; }

.small-7 {
  -ms-flex: 0 0 58.33333%;
      flex: 0 0 58.33333%;
  max-width: 58.33333%; }

.small-offset-6 {
  margin-left: 50%; }

.small-8 {
  -ms-flex: 0 0 66.66667%;
      flex: 0 0 66.66667%;
  max-width: 66.66667%; }

.small-offset-7 {
  margin-left: 58.33333%; }

.small-9 {
  -ms-flex: 0 0 75%;
      flex: 0 0 75%;
  max-width: 75%; }

.small-offset-8 {
  margin-left: 66.66667%; }

.small-10 {
  -ms-flex: 0 0 83.33333%;
      flex: 0 0 83.33333%;
  max-width: 83.33333%; }

.small-offset-9 {
  margin-left: 75%; }

.small-11 {
  -ms-flex: 0 0 91.66667%;
      flex: 0 0 91.66667%;
  max-width: 91.66667%; }

.small-offset-10 {
  margin-left: 83.33333%; }

.small-12 {
  -ms-flex: 0 0 100%;
      flex: 0 0 100%;
  max-width: 100%; }

.small-offset-11 {
  margin-left: 91.66667%; }

.small-up-1 {
  -ms-flex-wrap: wrap;
      flex-wrap: wrap; }
  .small-up-1 > .column, .small-up-1 > .columns {
    -ms-flex: 0 0 100%;
        flex: 0 0 100%;
    max-width: 100%; }

.small-up-2 {
  -ms-flex-wrap: wrap;
      flex-wrap: wrap; }
  .small-up-2 > .column, .small-up-2 > .columns {
    -ms-flex: 0 0 50%;
        flex: 0 0 50%;
    max-width: 50%; }

.small-up-3 {
  -ms-flex-wrap: wrap;
      flex-wrap: wrap; }
  .small-up-3 > .column, .small-up-3 > .columns {
    -ms-flex: 0 0 33.33333%;
        flex: 0 0 33.33333%;
    max-width: 33.33333%; }

.small-up-4 {
  -ms-flex-wrap: wrap;
      flex-wrap: wrap; }
  .small-up-4 > .column, .small-up-4 > .columns {
    -ms-flex: 0 0 25%;
        flex: 0 0 25%;
    max-width: 25%; }

.small-up-5 {
  -ms-flex-wrap: wrap;
      flex-wrap: wrap; }
  .small-up-5 > .column, .small-up-5 > .columns {
    -ms-flex: 0 0 20%;
        flex: 0 0 20%;
    max-width: 20%; }

.small-up-6 {
  -ms-flex-wrap: wrap;
      flex-wrap: wrap; }
  .small-up-6 > .column, .small-up-6 > .columns {
    -ms-flex: 0 0 16.66667%;
        flex: 0 0 16.66667%;
    max-width: 16.66667%; }

.small-up-7 {
  -ms-flex-wrap: wrap;
      flex-wrap: wrap; }
  .small-up-7 > .column, .small-up-7 > .columns {
    -ms-flex: 0 0 14.28571%;
        flex: 0 0 14.28571%;
    max-width: 14.28571%; }

.small-up-8 {
  -ms-flex-wrap: wrap;
      flex-wrap: wrap; }
  .small-up-8 > .column, .small-up-8 > .columns {
    -ms-flex: 0 0 12.5%;
        flex: 0 0 12.5%;
    max-width: 12.5%; }

.small-collapse > .column, .small-collapse > .columns {
  padding-right: 0;
  padding-left: 0; }

.small-uncollapse > .column, .small-uncollapse > .columns {
  padding-right: 0.625rem;
  padding-left: 0.625rem; }

@media print, screen and (min-width: 40em) {
  .medium-1 {
    -ms-flex: 0 0 8.33333%;
        flex: 0 0 8.33333%;
    max-width: 8.33333%; }
  .medium-offset-0 {
    margin-left: 0%; }
  .medium-2 {
    -ms-flex: 0 0 16.66667%;
        flex: 0 0 16.66667%;
    max-width: 16.66667%; }
  .medium-offset-1 {
    margin-left: 8.33333%; }
  .medium-3 {
    -ms-flex: 0 0 25%;
        flex: 0 0 25%;
    max-width: 25%; }
  .medium-offset-2 {
    margin-left: 16.66667%; }
  .medium-4 {
    -ms-flex: 0 0 33.33333%;
        flex: 0 0 33.33333%;
    max-width: 33.33333%; }
  .medium-offset-3 {
    margin-left: 25%; }
  .medium-5 {
    -ms-flex: 0 0 41.66667%;
        flex: 0 0 41.66667%;
    max-width: 41.66667%; }
  .medium-offset-4 {
    margin-left: 33.33333%; }
  .medium-6 {
    -ms-flex: 0 0 50%;
        flex: 0 0 50%;
    max-width: 50%; }
  .medium-offset-5 {
    margin-left: 41.66667%; }
  .medium-7 {
    -ms-flex: 0 0 58.33333%;
        flex: 0 0 58.33333%;
    max-width: 58.33333%; }
  .medium-offset-6 {
    margin-left: 50%; }
  .medium-8 {
    -ms-flex: 0 0 66.66667%;
        flex: 0 0 66.66667%;
    max-width: 66.66667%; }
  .medium-offset-7 {
    margin-left: 58.33333%; }
  .medium-9 {
    -ms-flex: 0 0 75%;
        flex: 0 0 75%;
    max-width: 75%; }
  .medium-offset-8 {
    margin-left: 66.66667%; }
  .medium-10 {
    -ms-flex: 0 0 83.33333%;
        flex: 0 0 83.33333%;
    max-width: 83.33333%; }
  .medium-offset-9 {
    margin-left: 75%; }
  .medium-11 {
    -ms-flex: 0 0 91.66667%;
        flex: 0 0 91.66667%;
    max-width: 91.66667%; }
  .medium-offset-10 {
    margin-left: 83.33333%; }
  .medium-12 {
    -ms-flex: 0 0 100%;
        flex: 0 0 100%;
    max-width: 100%; }
  .medium-offset-11 {
    margin-left: 91.66667%; }
  .medium-up-1 {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
    .medium-up-1 > .column, .medium-up-1 > .columns {
      -ms-flex: 0 0 100%;
          flex: 0 0 100%;
      max-width: 100%; }
  .medium-up-2 {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
    .medium-up-2 > .column, .medium-up-2 > .columns {
      -ms-flex: 0 0 50%;
          flex: 0 0 50%;
      max-width: 50%; }
  .medium-up-3 {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
    .medium-up-3 > .column, .medium-up-3 > .columns {
      -ms-flex: 0 0 33.33333%;
          flex: 0 0 33.33333%;
      max-width: 33.33333%; }
  .medium-up-4 {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
    .medium-up-4 > .column, .medium-up-4 > .columns {
      -ms-flex: 0 0 25%;
          flex: 0 0 25%;
      max-width: 25%; }
  .medium-up-5 {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
    .medium-up-5 > .column, .medium-up-5 > .columns {
      -ms-flex: 0 0 20%;
          flex: 0 0 20%;
      max-width: 20%; }
  .medium-up-6 {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
    .medium-up-6 > .column, .medium-up-6 > .columns {
      -ms-flex: 0 0 16.66667%;
          flex: 0 0 16.66667%;
      max-width: 16.66667%; }
  .medium-up-7 {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
    .medium-up-7 > .column, .medium-up-7 > .columns {
      -ms-flex: 0 0 14.28571%;
          flex: 0 0 14.28571%;
      max-width: 14.28571%; }
  .medium-up-8 {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
    .medium-up-8 > .column, .medium-up-8 > .columns {
      -ms-flex: 0 0 12.5%;
          flex: 0 0 12.5%;
      max-width: 12.5%; } }

@media print, screen and (min-width: 40em) and (min-width: 40em) {
  .medium-expand {
    -ms-flex: 1 1 0px;
        flex: 1 1 0px; } }

.row.medium-unstack > .column, .row.medium-unstack > .columns {
  -ms-flex: 0 0 100%;
      flex: 0 0 100%; }
  @media print, screen and (min-width: 40em) {
    .row.medium-unstack > .column, .row.medium-unstack > .columns {
      -ms-flex: 1 1 0px;
          flex: 1 1 0px; } }

@media print, screen and (min-width: 40em) {
  .medium-collapse > .column, .medium-collapse > .columns {
    padding-right: 0;
    padding-left: 0; }
  .medium-uncollapse > .column, .medium-uncollapse > .columns {
    padding-right: 0.9375rem;
    padding-left: 0.9375rem; } }

@media print, screen and (min-width: 64em) {
  .large-1 {
    -ms-flex: 0 0 8.33333%;
        flex: 0 0 8.33333%;
    max-width: 8.33333%; }
  .large-offset-0 {
    margin-left: 0%; }
  .large-2 {
    -ms-flex: 0 0 16.66667%;
        flex: 0 0 16.66667%;
    max-width: 16.66667%; }
  .large-offset-1 {
    margin-left: 8.33333%; }
  .large-3 {
    -ms-flex: 0 0 25%;
        flex: 0 0 25%;
    max-width: 25%; }
  .large-offset-2 {
    margin-left: 16.66667%; }
  .large-4 {
    -ms-flex: 0 0 33.33333%;
        flex: 0 0 33.33333%;
    max-width: 33.33333%; }
  .large-offset-3 {
    margin-left: 25%; }
  .large-5 {
    -ms-flex: 0 0 41.66667%;
        flex: 0 0 41.66667%;
    max-width: 41.66667%; }
  .large-offset-4 {
    margin-left: 33.33333%; }
  .large-6 {
    -ms-flex: 0 0 50%;
        flex: 0 0 50%;
    max-width: 50%; }
  .large-offset-5 {
    margin-left: 41.66667%; }
  .large-7 {
    -ms-flex: 0 0 58.33333%;
        flex: 0 0 58.33333%;
    max-width: 58.33333%; }
  .large-offset-6 {
    margin-left: 50%; }
  .large-8 {
    -ms-flex: 0 0 66.66667%;
        flex: 0 0 66.66667%;
    max-width: 66.66667%; }
  .large-offset-7 {
    margin-left: 58.33333%; }
  .large-9 {
    -ms-flex: 0 0 75%;
        flex: 0 0 75%;
    max-width: 75%; }
  .large-offset-8 {
    margin-left: 66.66667%; }
  .large-10 {
    -ms-flex: 0 0 83.33333%;
        flex: 0 0 83.33333%;
    max-width: 83.33333%; }
  .large-offset-9 {
    margin-left: 75%; }
  .large-11 {
    -ms-flex: 0 0 91.66667%;
        flex: 0 0 91.66667%;
    max-width: 91.66667%; }
  .large-offset-10 {
    margin-left: 83.33333%; }
  .large-12 {
    -ms-flex: 0 0 100%;
        flex: 0 0 100%;
    max-width: 100%; }
  .large-offset-11 {
    margin-left: 91.66667%; }
  .large-up-1 {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
    .large-up-1 > .column, .large-up-1 > .columns {
      -ms-flex: 0 0 100%;
          flex: 0 0 100%;
      max-width: 100%; }
  .large-up-2 {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
    .large-up-2 > .column, .large-up-2 > .columns {
      -ms-flex: 0 0 50%;
          flex: 0 0 50%;
      max-width: 50%; }
  .large-up-3 {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
    .large-up-3 > .column, .large-up-3 > .columns {
      -ms-flex: 0 0 33.33333%;
          flex: 0 0 33.33333%;
      max-width: 33.33333%; }
  .large-up-4 {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
    .large-up-4 > .column, .large-up-4 > .columns {
      -ms-flex: 0 0 25%;
          flex: 0 0 25%;
      max-width: 25%; }
  .large-up-5 {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
    .large-up-5 > .column, .large-up-5 > .columns {
      -ms-flex: 0 0 20%;
          flex: 0 0 20%;
      max-width: 20%; }
  .large-up-6 {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
    .large-up-6 > .column, .large-up-6 > .columns {
      -ms-flex: 0 0 16.66667%;
          flex: 0 0 16.66667%;
      max-width: 16.66667%; }
  .large-up-7 {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
    .large-up-7 > .column, .large-up-7 > .columns {
      -ms-flex: 0 0 14.28571%;
          flex: 0 0 14.28571%;
      max-width: 14.28571%; }
  .large-up-8 {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
    .large-up-8 > .column, .large-up-8 > .columns {
      -ms-flex: 0 0 12.5%;
          flex: 0 0 12.5%;
      max-width: 12.5%; } }

@media print, screen and (min-width: 64em) and (min-width: 64em) {
  .large-expand {
    -ms-flex: 1 1 0px;
        flex: 1 1 0px; } }

.row.large-unstack > .column, .row.large-unstack > .columns {
  -ms-flex: 0 0 100%;
      flex: 0 0 100%; }
  @media print, screen and (min-width: 64em) {
    .row.large-unstack > .column, .row.large-unstack > .columns {
      -ms-flex: 1 1 0px;
          flex: 1 1 0px; } }

@media print, screen and (min-width: 64em) {
  .large-collapse > .column, .large-collapse > .columns {
    padding-right: 0;
    padding-left: 0; }
  .large-uncollapse > .column, .large-uncollapse > .columns {
    padding-right: 0.9375rem;
    padding-left: 0.9375rem; } }

.shrink {
  -ms-flex: 0 0 auto;
      flex: 0 0 auto;
  max-width: 100%; }

.column-block {
  margin-bottom: 1.25rem; }
  .column-block > :last-child {
    margin-bottom: 0; }
  @media print, screen and (min-width: 40em) {
    .column-block {
      margin-bottom: 1.875rem; }
      .column-block > :last-child {
        margin-bottom: 0; } }

div,
dl,
dt,
dd,
ul,
ol,
li,
h1,
h2,
h3,
h4,
h5,
h6,
pre,
form,
p,
blockquote,
th,
td {
  margin: 0;
  padding: 0; }

p {
  margin-bottom: 1rem;
  font-size: inherit;
  line-height: 1.6;
  text-rendering: optimizeLegibility; }

em,
i {
  font-style: italic;
  line-height: inherit; }

strong,
b {
  font-weight: 700;
  line-height: inherit; }

small {
  font-size: 80%;
  line-height: inherit; }

h1, .h1,
h2, .h2,
h3, .h3,
h4, .h4,
h5, .h5,
h6, .h6 {
  font-family: aktiv-grotesk, sans-serif;
  font-style: normal;
  font-weight: 500;
  color: inherit;
  text-rendering: optimizeLegibility; }
  h1 small, .h1 small,
  h2 small, .h2 small,
  h3 small, .h3 small,
  h4 small, .h4 small,
  h5 small, .h5 small,
  h6 small, .h6 small {
    line-height: 0;
    color: #cacaca; }

h1, .h1 {
  font-size: 1.5rem;
  line-height: 1.2;
  margin-top: 0;
  margin-bottom: 0.5rem; }

h2, .h2 {
  font-size: 1.25rem;
  line-height: 1.2;
  margin-top: 0;
  margin-bottom: 0.5rem; }

h3, .h3 {
  font-size: 1.1875rem;
  line-height: 1.2;
  margin-top: 0;
  margin-bottom: 0.5rem; }

h4, .h4 {
  font-size: 1.125rem;
  line-height: 1.2;
  margin-top: 0;
  margin-bottom: 0.5rem; }

h5, .h5 {
  font-size: 1.0625rem;
  line-height: 1.2;
  margin-top: 0;
  margin-bottom: 0.5rem; }

h6, .h6 {
  font-size: 1rem;
  line-height: 1.2;
  margin-top: 0;
  margin-bottom: 0.5rem; }

@media print, screen and (min-width: 40em) {
  h1, .h1 {
    font-size: 3rem; }
  h2, .h2 {
    font-size: 2.125rem; }
  h3, .h3 {
    font-size: 1.75rem; }
  h4, .h4 {
    font-size: 1.625rem; }
  h5, .h5 {
    font-size: 1.25rem; }
  h6, .h6 {
    font-size: 1.125rem; } }

a {
  line-height: inherit;
  color: #6800d2;
  text-decoration: none;
  cursor: pointer; }
  a:hover, a:focus {
    color: #5900b5; }
  a img {
    border: 0; }

hr {
  clear: both;
  max-width: 75rem;
  height: 0;
  margin: 1.25rem auto;
  border-top: 0;
  border-right: 0;
  border-bottom: 1px solid #cacaca;
  border-left: 0; }

ul,
ol,
dl {
  margin-bottom: 1rem;
  list-style-position: outside;
  line-height: 1.6; }

li {
  font-size: inherit; }

ul {
  margin-left: 1.25rem;
  list-style-type: disc; }

ol {
  margin-left: 1.25rem; }

ul ul, ol ul, ul ol, ol ol {
  margin-left: 1.25rem;
  margin-bottom: 0; }

dl {
  margin-bottom: 1rem; }
  dl dt {
    margin-bottom: 0.3rem;
    font-weight: 700; }

blockquote {
  margin: 0 0 1rem;
  padding: 0.5625rem 1.25rem 0 1.1875rem;
  border-left: 1px solid #cacaca; }
  blockquote, blockquote p {
    line-height: 1.6;
    color: #8a8a8a; }

cite {
  display: block;
  font-size: 0.8125rem;
  color: #8a8a8a; }
  cite:before {
    content: "— "; }

abbr, abbr[title] {
  border-bottom: 1px dotted #0a0a0a;
  cursor: help;
  text-decoration: none; }

figure {
  margin: 0; }

code {
  padding: 0.125rem 0.3125rem 0.0625rem;
  border: 1px solid #cacaca;
  background-color: #f2f2f2;
  font-family: Consolas, "Liberation Mono", Courier, monospace;
  font-weight: 400;
  color: #0a0a0a; }

kbd {
  margin: 0;
  padding: 0.125rem 0.25rem 0;
  background-color: #f2f2f2;
  font-family: Consolas, "Liberation Mono", Courier, monospace;
  color: #0a0a0a;
  border-radius: 1.25rem; }

.subheader {
  margin-top: 0.2rem;
  margin-bottom: 0.5rem;
  font-weight: 400;
  line-height: 1.4;
  color: #8a8a8a; }

.lead {
  font-size: 125%;
  line-height: 1.6; }

.stat {
  font-size: 2.5rem;
  line-height: 1; }
  p + .stat {
    margin-top: -1rem; }

ul.no-bullet, ol.no-bullet {
  margin-left: 0;
  list-style: none; }

.text-left {
  text-align: left; }

.text-right {
  text-align: right; }

.text-center {
  text-align: center; }

.text-justify {
  text-align: justify; }

@media print, screen and (min-width: 40em) {
  .medium-text-left {
    text-align: left; }
  .medium-text-right {
    text-align: right; }
  .medium-text-center {
    text-align: center; }
  .medium-text-justify {
    text-align: justify; } }

@media print, screen and (min-width: 64em) {
  .large-text-left {
    text-align: left; }
  .large-text-right {
    text-align: right; }
  .large-text-center {
    text-align: center; }
  .large-text-justify {
    text-align: justify; } }

.show-for-print {
  display: none !important; }

@media print {
  * {
    background: transparent !important;
    box-shadow: none !important;
    color: black !important;
    text-shadow: none !important; }
  .show-for-print {
    display: block !important; }
  .hide-for-print {
    display: none !important; }
  table.show-for-print {
    display: table !important; }
  thead.show-for-print {
    display: table-header-group !important; }
  tbody.show-for-print {
    display: table-row-group !important; }
  tr.show-for-print {
    display: table-row !important; }
  td.show-for-print {
    display: table-cell !important; }
  th.show-for-print {
    display: table-cell !important; }
  a,
  a:visited {
    text-decoration: underline; }
  a[href]:after {
    content: " (" attr(href) ")"; }
  .ir a:after,
  a[href^='javascript:']:after,
  a[href^='#']:after {
    content: ''; }
  abbr[title]:after {
    content: " (" attr(title) ")"; }
  pre,
  blockquote {
    border: 1px solid #8a8a8a;
    page-break-inside: avoid; }
  thead {
    display: table-header-group; }
  tr,
  img {
    page-break-inside: avoid; }
  img {
    max-width: 100% !important; }
  @page {
    margin: 0.5cm; }
  p,
  h2,
  h3 {
    orphans: 3;
    widows: 3; }
  h2,
  h3 {
    page-break-after: avoid; }
  .print-break-inside {
    page-break-inside: auto; } }

.button, .wp-block-button .wp-block-button__link, section.promo-listing.contact .bg-image p:last-child a, section.promo-listing-2.contact .bg-image p:last-child a {
  display: inline-block;
  vertical-align: middle;
  margin: 0 0 1rem 0;
  padding: 0.5rem 1.875rem 0.625rem;
  border: 1px solid transparent;
  border-radius: 1.25rem;
  transition: background-color 0.25s ease-out, color 0.25s ease-out;
  font-family: inherit;
  font-size: 0.9rem;
  -webkit-appearance: none;
  line-height: 1;
  text-align: center;
  cursor: pointer;
  background-color: #6800d2;
  color: #fefefe; }
  [data-whatinput='mouse'] .button, [data-whatinput='mouse'] .wp-block-button .wp-block-button__link, .wp-block-button [data-whatinput='mouse'] .wp-block-button__link, [data-whatinput='mouse'] section.promo-listing.contact .bg-image p:last-child a, section.promo-listing.contact .bg-image p:last-child [data-whatinput='mouse'] a, [data-whatinput='mouse'] section.promo-listing-2.contact .bg-image p:last-child a, section.promo-listing-2.contact .bg-image p:last-child [data-whatinput='mouse'] a {
    outline: 0; }
  .button:hover, .wp-block-button .wp-block-button__link:hover, section.promo-listing.contact .bg-image p:last-child a:hover, section.promo-listing-2.contact .bg-image p:last-child a:hover, .button:focus, .wp-block-button .wp-block-button__link:focus, section.promo-listing.contact .bg-image p:last-child a:focus, section.promo-listing-2.contact .bg-image p:last-child a:focus {
    background-color: #5800b3;
    color: #fefefe; }
  .button.tiny, .wp-block-button .tiny.wp-block-button__link, section.promo-listing.contact .bg-image p:last-child a.tiny, section.promo-listing-2.contact .bg-image p:last-child a.tiny {
    font-size: 0.6rem; }
  .button.small, .wp-block-button .small.wp-block-button__link, section.promo-listing.contact .bg-image p:last-child a.small, section.promo-listing-2.contact .bg-image p:last-child a.small {
    font-size: 0.75rem; }
  .button.large, .wp-block-button .large.wp-block-button__link, section.promo-listing.contact .bg-image p:last-child a.large, section.promo-listing-2.contact .bg-image p:last-child a.large {
    font-size: 1.25rem; }
  .button.expanded, .wp-block-button .expanded.wp-block-button__link, section.promo-listing.contact .bg-image p:last-child a.expanded, section.promo-listing-2.contact .bg-image p:last-child a.expanded {
    display: block;
    width: 100%;
    margin-right: 0;
    margin-left: 0; }
  .button.primary, .wp-block-button .primary.wp-block-button__link, section.promo-listing.contact .bg-image p:last-child a.primary, section.promo-listing-2.contact .bg-image p:last-child a.primary {
    background-color: #6800d2;
    color: #fefefe; }
    .button.primary:hover, .wp-block-button .primary.wp-block-button__link:hover, section.promo-listing.contact .bg-image p:last-child a.primary:hover, section.promo-listing-2.contact .bg-image p:last-child a.primary:hover, .button.primary:focus, .wp-block-button .primary.wp-block-button__link:focus, section.promo-listing.contact .bg-image p:last-child a.primary:focus, section.promo-listing-2.contact .bg-image p:last-child a.primary:focus {
      background-color: #5300a8;
      color: #fefefe; }
  .button.secondary, .wp-block-button .secondary.wp-block-button__link, section.promo-listing.contact .bg-image p:last-child a.secondary, section.promo-listing-2.contact .bg-image p:last-child a.secondary {
    background-color: #fbe200;
    color: #0a0a0a; }
    .button.secondary:hover, .wp-block-button .secondary.wp-block-button__link:hover, section.promo-listing.contact .bg-image p:last-child a.secondary:hover, section.promo-listing-2.contact .bg-image p:last-child a.secondary:hover, .button.secondary:focus, .wp-block-button .secondary.wp-block-button__link:focus, section.promo-listing.contact .bg-image p:last-child a.secondary:focus, section.promo-listing-2.contact .bg-image p:last-child a.secondary:focus {
      background-color: #c9b500;
      color: #0a0a0a; }
  .button.success, .wp-block-button .success.wp-block-button__link, section.promo-listing.contact .bg-image p:last-child a.success, section.promo-listing-2.contact .bg-image p:last-child a.success {
    background-color: #3adb76;
    color: #0a0a0a; }
    .button.success:hover, .wp-block-button .success.wp-block-button__link:hover, section.promo-listing.contact .bg-image p:last-child a.success:hover, section.promo-listing-2.contact .bg-image p:last-child a.success:hover, .button.success:focus, .wp-block-button .success.wp-block-button__link:focus, section.promo-listing.contact .bg-image p:last-child a.success:focus, section.promo-listing-2.contact .bg-image p:last-child a.success:focus {
      background-color: #22bb5b;
      color: #0a0a0a; }
  .button.warning, .wp-block-button .warning.wp-block-button__link, section.promo-listing.contact .bg-image p:last-child a.warning, section.promo-listing-2.contact .bg-image p:last-child a.warning {
    background-color: #ffae00;
    color: #0a0a0a; }
    .button.warning:hover, .wp-block-button .warning.wp-block-button__link:hover, section.promo-listing.contact .bg-image p:last-child a.warning:hover, section.promo-listing-2.contact .bg-image p:last-child a.warning:hover, .button.warning:focus, .wp-block-button .warning.wp-block-button__link:focus, section.promo-listing.contact .bg-image p:last-child a.warning:focus, section.promo-listing-2.contact .bg-image p:last-child a.warning:focus {
      background-color: #cc8b00;
      color: #0a0a0a; }
  .button.alert, .wp-block-button .alert.wp-block-button__link, section.promo-listing.contact .bg-image p:last-child a.alert, section.promo-listing-2.contact .bg-image p:last-child a.alert {
    background-color: #cc4b37;
    color: #fefefe; }
    .button.alert:hover, .wp-block-button .alert.wp-block-button__link:hover, section.promo-listing.contact .bg-image p:last-child a.alert:hover, section.promo-listing-2.contact .bg-image p:last-child a.alert:hover, .button.alert:focus, .wp-block-button .alert.wp-block-button__link:focus, section.promo-listing.contact .bg-image p:last-child a.alert:focus, section.promo-listing-2.contact .bg-image p:last-child a.alert:focus {
      background-color: #a53b2a;
      color: #fefefe; }
  .button.disabled, .wp-block-button .disabled.wp-block-button__link, section.promo-listing.contact .bg-image p:last-child a.disabled, section.promo-listing-2.contact .bg-image p:last-child a.disabled, .button[disabled], .wp-block-button .wp-block-button__link[disabled], section.promo-listing.contact .bg-image p:last-child a[disabled], section.promo-listing-2.contact .bg-image p:last-child a[disabled] {
    opacity: 0.25;
    cursor: not-allowed; }
    .button.disabled, .wp-block-button .disabled.wp-block-button__link, section.promo-listing.contact .bg-image p:last-child a.disabled, section.promo-listing-2.contact .bg-image p:last-child a.disabled, .button.disabled:hover, .wp-block-button .disabled.wp-block-button__link:hover, section.promo-listing.contact .bg-image p:last-child a.disabled:hover, section.promo-listing-2.contact .bg-image p:last-child a.disabled:hover, .button.disabled:focus, .wp-block-button .disabled.wp-block-button__link:focus, section.promo-listing.contact .bg-image p:last-child a.disabled:focus, section.promo-listing-2.contact .bg-image p:last-child a.disabled:focus, .button[disabled], .wp-block-button .wp-block-button__link[disabled], section.promo-listing.contact .bg-image p:last-child a[disabled], section.promo-listing-2.contact .bg-image p:last-child a[disabled], .button[disabled]:hover, .wp-block-button .wp-block-button__link[disabled]:hover, section.promo-listing.contact .bg-image p:last-child a[disabled]:hover, section.promo-listing-2.contact .bg-image p:last-child a[disabled]:hover, .button[disabled]:focus, .wp-block-button .wp-block-button__link[disabled]:focus, section.promo-listing.contact .bg-image p:last-child a[disabled]:focus, section.promo-listing-2.contact .bg-image p:last-child a[disabled]:focus {
      background-color: #6800d2;
      color: #fefefe; }
    .button.disabled.primary, .wp-block-button .disabled.primary.wp-block-button__link, section.promo-listing.contact .bg-image p:last-child a.disabled.primary, section.promo-listing-2.contact .bg-image p:last-child a.disabled.primary, .button[disabled].primary, .wp-block-button .wp-block-button__link[disabled].primary, section.promo-listing.contact .bg-image p:last-child a[disabled].primary, section.promo-listing-2.contact .bg-image p:last-child a[disabled].primary {
      opacity: 0.25;
      cursor: not-allowed; }
      .button.disabled.primary, .wp-block-button .disabled.primary.wp-block-button__link, section.promo-listing.contact .bg-image p:last-child a.disabled.primary, section.promo-listing-2.contact .bg-image p:last-child a.disabled.primary, .button.disabled.primary:hover, .wp-block-button .disabled.primary.wp-block-button__link:hover, section.promo-listing.contact .bg-image p:last-child a.disabled.primary:hover, section.promo-listing-2.contact .bg-image p:last-child a.disabled.primary:hover, .button.disabled.primary:focus, .wp-block-button .disabled.primary.wp-block-button__link:focus, section.promo-listing.contact .bg-image p:last-child a.disabled.primary:focus, section.promo-listing-2.contact .bg-image p:last-child a.disabled.primary:focus, .button[disabled].primary, .wp-block-button .wp-block-button__link[disabled].primary, section.promo-listing.contact .bg-image p:last-child a[disabled].primary, section.promo-listing-2.contact .bg-image p:last-child a[disabled].primary, .button[disabled].primary:hover, .wp-block-button .wp-block-button__link[disabled].primary:hover, section.promo-listing.contact .bg-image p:last-child a[disabled].primary:hover, section.promo-listing-2.contact .bg-image p:last-child a[disabled].primary:hover, .button[disabled].primary:focus, .wp-block-button .wp-block-button__link[disabled].primary:focus, section.promo-listing.contact .bg-image p:last-child a[disabled].primary:focus, section.promo-listing-2.contact .bg-image p:last-child a[disabled].primary:focus {
        background-color: #6800d2;
        color: #fefefe; }
    .button.disabled.secondary, .wp-block-button .disabled.secondary.wp-block-button__link, section.promo-listing.contact .bg-image p:last-child a.disabled.secondary, section.promo-listing-2.contact .bg-image p:last-child a.disabled.secondary, .button[disabled].secondary, .wp-block-button .wp-block-button__link[disabled].secondary, section.promo-listing.contact .bg-image p:last-child a[disabled].secondary, section.promo-listing-2.contact .bg-image p:last-child a[disabled].secondary {
      opacity: 0.25;
      cursor: not-allowed; }
      .button.disabled.secondary, .wp-block-button .disabled.secondary.wp-block-button__link, section.promo-listing.contact .bg-image p:last-child a.disabled.secondary, section.promo-listing-2.contact .bg-image p:last-child a.disabled.secondary, .button.disabled.secondary:hover, .wp-block-button .disabled.secondary.wp-block-button__link:hover, section.promo-listing.contact .bg-image p:last-child a.disabled.secondary:hover, section.promo-listing-2.contact .bg-image p:last-child a.disabled.secondary:hover, .button.disabled.secondary:focus, .wp-block-button .disabled.secondary.wp-block-button__link:focus, section.promo-listing.contact .bg-image p:last-child a.disabled.secondary:focus, section.promo-listing-2.contact .bg-image p:last-child a.disabled.secondary:focus, .button[disabled].secondary, .wp-block-button .wp-block-button__link[disabled].secondary, section.promo-listing.contact .bg-image p:last-child a[disabled].secondary, section.promo-listing-2.contact .bg-image p:last-child a[disabled].secondary, .button[disabled].secondary:hover, .wp-block-button .wp-block-button__link[disabled].secondary:hover, section.promo-listing.contact .bg-image p:last-child a[disabled].secondary:hover, section.promo-listing-2.contact .bg-image p:last-child a[disabled].secondary:hover, .button[disabled].secondary:focus, .wp-block-button .wp-block-button__link[disabled].secondary:focus, section.promo-listing.contact .bg-image p:last-child a[disabled].secondary:focus, section.promo-listing-2.contact .bg-image p:last-child a[disabled].secondary:focus {
        background-color: #fbe200;
        color: #0a0a0a; }
    .button.disabled.success, .wp-block-button .disabled.success.wp-block-button__link, section.promo-listing.contact .bg-image p:last-child a.disabled.success, section.promo-listing-2.contact .bg-image p:last-child a.disabled.success, .button[disabled].success, .wp-block-button .wp-block-button__link[disabled].success, section.promo-listing.contact .bg-image p:last-child a[disabled].success, section.promo-listing-2.contact .bg-image p:last-child a[disabled].success {
      opacity: 0.25;
      cursor: not-allowed; }
      .button.disabled.success, .wp-block-button .disabled.success.wp-block-button__link, section.promo-listing.contact .bg-image p:last-child a.disabled.success, section.promo-listing-2.contact .bg-image p:last-child a.disabled.success, .button.disabled.success:hover, .wp-block-button .disabled.success.wp-block-button__link:hover, section.promo-listing.contact .bg-image p:last-child a.disabled.success:hover, section.promo-listing-2.contact .bg-image p:last-child a.disabled.success:hover, .button.disabled.success:focus, .wp-block-button .disabled.success.wp-block-button__link:focus, section.promo-listing.contact .bg-image p:last-child a.disabled.success:focus, section.promo-listing-2.contact .bg-image p:last-child a.disabled.success:focus, .button[disabled].success, .wp-block-button .wp-block-button__link[disabled].success, section.promo-listing.contact .bg-image p:last-child a[disabled].success, section.promo-listing-2.contact .bg-image p:last-child a[disabled].success, .button[disabled].success:hover, .wp-block-button .wp-block-button__link[disabled].success:hover, section.promo-listing.contact .bg-image p:last-child a[disabled].success:hover, section.promo-listing-2.contact .bg-image p:last-child a[disabled].success:hover, .button[disabled].success:focus, .wp-block-button .wp-block-button__link[disabled].success:focus, section.promo-listing.contact .bg-image p:last-child a[disabled].success:focus, section.promo-listing-2.contact .bg-image p:last-child a[disabled].success:focus {
        background-color: #3adb76;
        color: #0a0a0a; }
    .button.disabled.warning, .wp-block-button .disabled.warning.wp-block-button__link, section.promo-listing.contact .bg-image p:last-child a.disabled.warning, section.promo-listing-2.contact .bg-image p:last-child a.disabled.warning, .button[disabled].warning, .wp-block-button .wp-block-button__link[disabled].warning, section.promo-listing.contact .bg-image p:last-child a[disabled].warning, section.promo-listing-2.contact .bg-image p:last-child a[disabled].warning {
      opacity: 0.25;
      cursor: not-allowed; }
      .button.disabled.warning, .wp-block-button .disabled.warning.wp-block-button__link, section.promo-listing.contact .bg-image p:last-child a.disabled.warning, section.promo-listing-2.contact .bg-image p:last-child a.disabled.warning, .button.disabled.warning:hover, .wp-block-button .disabled.warning.wp-block-button__link:hover, section.promo-listing.contact .bg-image p:last-child a.disabled.warning:hover, section.promo-listing-2.contact .bg-image p:last-child a.disabled.warning:hover, .button.disabled.warning:focus, .wp-block-button .disabled.warning.wp-block-button__link:focus, section.promo-listing.contact .bg-image p:last-child a.disabled.warning:focus, section.promo-listing-2.contact .bg-image p:last-child a.disabled.warning:focus, .button[disabled].warning, .wp-block-button .wp-block-button__link[disabled].warning, section.promo-listing.contact .bg-image p:last-child a[disabled].warning, section.promo-listing-2.contact .bg-image p:last-child a[disabled].warning, .button[disabled].warning:hover, .wp-block-button .wp-block-button__link[disabled].warning:hover, section.promo-listing.contact .bg-image p:last-child a[disabled].warning:hover, section.promo-listing-2.contact .bg-image p:last-child a[disabled].warning:hover, .button[disabled].warning:focus, .wp-block-button .wp-block-button__link[disabled].warning:focus, section.promo-listing.contact .bg-image p:last-child a[disabled].warning:focus, section.promo-listing-2.contact .bg-image p:last-child a[disabled].warning:focus {
        background-color: #ffae00;
        color: #0a0a0a; }
    .button.disabled.alert, .wp-block-button .disabled.alert.wp-block-button__link, section.promo-listing.contact .bg-image p:last-child a.disabled.alert, section.promo-listing-2.contact .bg-image p:last-child a.disabled.alert, .button[disabled].alert, .wp-block-button .wp-block-button__link[disabled].alert, section.promo-listing.contact .bg-image p:last-child a[disabled].alert, section.promo-listing-2.contact .bg-image p:last-child a[disabled].alert {
      opacity: 0.25;
      cursor: not-allowed; }
      .button.disabled.alert, .wp-block-button .disabled.alert.wp-block-button__link, section.promo-listing.contact .bg-image p:last-child a.disabled.alert, section.promo-listing-2.contact .bg-image p:last-child a.disabled.alert, .button.disabled.alert:hover, .wp-block-button .disabled.alert.wp-block-button__link:hover, section.promo-listing.contact .bg-image p:last-child a.disabled.alert:hover, section.promo-listing-2.contact .bg-image p:last-child a.disabled.alert:hover, .button.disabled.alert:focus, .wp-block-button .disabled.alert.wp-block-button__link:focus, section.promo-listing.contact .bg-image p:last-child a.disabled.alert:focus, section.promo-listing-2.contact .bg-image p:last-child a.disabled.alert:focus, .button[disabled].alert, .wp-block-button .wp-block-button__link[disabled].alert, section.promo-listing.contact .bg-image p:last-child a[disabled].alert, section.promo-listing-2.contact .bg-image p:last-child a[disabled].alert, .button[disabled].alert:hover, .wp-block-button .wp-block-button__link[disabled].alert:hover, section.promo-listing.contact .bg-image p:last-child a[disabled].alert:hover, section.promo-listing-2.contact .bg-image p:last-child a[disabled].alert:hover, .button[disabled].alert:focus, .wp-block-button .wp-block-button__link[disabled].alert:focus, section.promo-listing.contact .bg-image p:last-child a[disabled].alert:focus, section.promo-listing-2.contact .bg-image p:last-child a[disabled].alert:focus {
        background-color: #cc4b37;
        color: #fefefe; }
  .button.hollow, .wp-block-button .hollow.wp-block-button__link, .wp-block-button.is-style-outline .wp-block-button__link, .wp-block-button.is-style-outline section.promo-listing.contact .bg-image p:last-child a.wp-block-button__link, section.promo-listing.contact .bg-image p:last-child .wp-block-button.is-style-outline a.wp-block-button__link, .wp-block-button.is-style-outline section.promo-listing-2.contact .bg-image p:last-child a.wp-block-button__link, section.promo-listing-2.contact .bg-image p:last-child .wp-block-button.is-style-outline a.wp-block-button__link, section.promo-listing.contact .bg-image p:last-child a.hollow, section.promo-listing-2.contact .bg-image p:last-child a.hollow {
    border: 1px solid #6800d2;
    color: #6800d2; }
    .button.hollow, .wp-block-button .hollow.wp-block-button__link, .wp-block-button.is-style-outline .wp-block-button__link, .wp-block-button.is-style-outline section.promo-listing.contact .bg-image p:last-child a.wp-block-button__link, section.promo-listing.contact .bg-image p:last-child .wp-block-button.is-style-outline a.wp-block-button__link, .wp-block-button.is-style-outline section.promo-listing-2.contact .bg-image p:last-child a.wp-block-button__link, section.promo-listing-2.contact .bg-image p:last-child .wp-block-button.is-style-outline a.wp-block-button__link, section.promo-listing.contact .bg-image p:last-child a.hollow, section.promo-listing-2.contact .bg-image p:last-child a.hollow, .button.hollow:hover, .wp-block-button .hollow.wp-block-button__link:hover, .wp-block-button.is-style-outline .wp-block-button__link:hover, .wp-block-button.is-style-outline section.promo-listing.contact .bg-image p:last-child a.wp-block-button__link:hover, section.promo-listing.contact .bg-image p:last-child .wp-block-button.is-style-outline a.wp-block-button__link:hover, .wp-block-button.is-style-outline section.promo-listing-2.contact .bg-image p:last-child a.wp-block-button__link:hover, section.promo-listing-2.contact .bg-image p:last-child .wp-block-button.is-style-outline a.wp-block-button__link:hover, section.promo-listing.contact .bg-image p:last-child a.hollow:hover, section.promo-listing-2.contact .bg-image p:last-child a.hollow:hover, .button.hollow:focus, .wp-block-button .hollow.wp-block-button__link:focus, .wp-block-button.is-style-outline .wp-block-button__link:focus, .wp-block-button.is-style-outline section.promo-listing.contact .bg-image p:last-child a.wp-block-button__link:focus, section.promo-listing.contact .bg-image p:last-child .wp-block-button.is-style-outline a.wp-block-button__link:focus, .wp-block-button.is-style-outline section.promo-listing-2.contact .bg-image p:last-child a.wp-block-button__link:focus, section.promo-listing-2.contact .bg-image p:last-child .wp-block-button.is-style-outline a.wp-block-button__link:focus, section.promo-listing.contact .bg-image p:last-child a.hollow:focus, section.promo-listing-2.contact .bg-image p:last-child a.hollow:focus {
      background-color: transparent; }
    .button.hollow.disabled, .wp-block-button .hollow.disabled.wp-block-button__link, .wp-block-button.is-style-outline .disabled.wp-block-button__link, .wp-block-button.is-style-outline section.promo-listing.contact .bg-image p:last-child a.disabled.wp-block-button__link, section.promo-listing.contact .bg-image p:last-child .wp-block-button.is-style-outline a.disabled.wp-block-button__link, .wp-block-button.is-style-outline section.promo-listing-2.contact .bg-image p:last-child a.disabled.wp-block-button__link, section.promo-listing-2.contact .bg-image p:last-child .wp-block-button.is-style-outline a.disabled.wp-block-button__link, section.promo-listing.contact .bg-image p:last-child a.hollow.disabled, section.promo-listing-2.contact .bg-image p:last-child a.hollow.disabled, .button.hollow.disabled:hover, .wp-block-button .hollow.disabled.wp-block-button__link:hover, .wp-block-button.is-style-outline .disabled.wp-block-button__link:hover, section.promo-listing.contact .bg-image p:last-child a.hollow.disabled:hover, section.promo-listing-2.contact .bg-image p:last-child a.hollow.disabled:hover, .button.hollow.disabled:focus, .wp-block-button .hollow.disabled.wp-block-button__link:focus, .wp-block-button.is-style-outline .disabled.wp-block-button__link:focus, section.promo-listing.contact .bg-image p:last-child a.hollow.disabled:focus, section.promo-listing-2.contact .bg-image p:last-child a.hollow.disabled:focus, .button.hollow[disabled], .wp-block-button .hollow.wp-block-button__link[disabled], .wp-block-button.is-style-outline .wp-block-button__link[disabled], .wp-block-button.is-style-outline section.promo-listing.contact .bg-image p:last-child a.wp-block-button__link[disabled], section.promo-listing.contact .bg-image p:last-child .wp-block-button.is-style-outline a.wp-block-button__link[disabled], .wp-block-button.is-style-outline section.promo-listing-2.contact .bg-image p:last-child a.wp-block-button__link[disabled], section.promo-listing-2.contact .bg-image p:last-child .wp-block-button.is-style-outline a.wp-block-button__link[disabled], section.promo-listing.contact .bg-image p:last-child a.hollow[disabled], section.promo-listing-2.contact .bg-image p:last-child a.hollow[disabled], .button.hollow[disabled]:hover, .wp-block-button .hollow.wp-block-button__link[disabled]:hover, .wp-block-button.is-style-outline .wp-block-button__link[disabled]:hover, section.promo-listing.contact .bg-image p:last-child a.hollow[disabled]:hover, section.promo-listing-2.contact .bg-image p:last-child a.hollow[disabled]:hover, .button.hollow[disabled]:focus, .wp-block-button .hollow.wp-block-button__link[disabled]:focus, .wp-block-button.is-style-outline .wp-block-button__link[disabled]:focus, section.promo-listing.contact .bg-image p:last-child a.hollow[disabled]:focus, section.promo-listing-2.contact .bg-image p:last-child a.hollow[disabled]:focus {
      background-color: transparent; }
    .button.hollow:hover, .wp-block-button .hollow.wp-block-button__link:hover, .wp-block-button.is-style-outline .wp-block-button__link:hover, .wp-block-button.is-style-outline section.promo-listing.contact .bg-image p:last-child a.wp-block-button__link:hover, section.promo-listing.contact .bg-image p:last-child .wp-block-button.is-style-outline a.wp-block-button__link:hover, .wp-block-button.is-style-outline section.promo-listing-2.contact .bg-image p:last-child a.wp-block-button__link:hover, section.promo-listing-2.contact .bg-image p:last-child .wp-block-button.is-style-outline a.wp-block-button__link:hover, section.promo-listing.contact .bg-image p:last-child a.hollow:hover, section.promo-listing-2.contact .bg-image p:last-child a.hollow:hover, .button.hollow:focus, .wp-block-button .hollow.wp-block-button__link:focus, .wp-block-button.is-style-outline .wp-block-button__link:focus, .wp-block-button.is-style-outline section.promo-listing.contact .bg-image p:last-child a.wp-block-button__link:focus, section.promo-listing.contact .bg-image p:last-child .wp-block-button.is-style-outline a.wp-block-button__link:focus, .wp-block-button.is-style-outline section.promo-listing-2.contact .bg-image p:last-child a.wp-block-button__link:focus, section.promo-listing-2.contact .bg-image p:last-child .wp-block-button.is-style-outline a.wp-block-button__link:focus, section.promo-listing.contact .bg-image p:last-child a.hollow:focus, section.promo-listing-2.contact .bg-image p:last-child a.hollow:focus {
      border-color: #340069;
      color: #340069; }
      .button.hollow:hover.disabled, .wp-block-button .hollow.disabled.wp-block-button__link:hover, .wp-block-button.is-style-outline .disabled.wp-block-button__link:hover, section.promo-listing.contact .bg-image p:last-child a.hollow:hover.disabled, section.promo-listing-2.contact .bg-image p:last-child a.hollow:hover.disabled, .button.hollow:hover[disabled], .wp-block-button .hollow.wp-block-button__link:hover[disabled], .wp-block-button.is-style-outline .wp-block-button__link:hover[disabled], section.promo-listing.contact .bg-image p:last-child a.hollow:hover[disabled], section.promo-listing-2.contact .bg-image p:last-child a.hollow:hover[disabled], .button.hollow:focus.disabled, .wp-block-button .hollow.wp-block-button__link:focus.disabled, .wp-block-button.is-style-outline .wp-block-button__link:focus.disabled, section.promo-listing.contact .bg-image p:last-child a.hollow:focus.disabled, section.promo-listing-2.contact .bg-image p:last-child a.hollow:focus.disabled, .button.hollow:focus[disabled], .wp-block-button .hollow.wp-block-button__link:focus[disabled], .wp-block-button.is-style-outline .wp-block-button__link:focus[disabled], section.promo-listing.contact .bg-image p:last-child a.hollow:focus[disabled], section.promo-listing-2.contact .bg-image p:last-child a.hollow:focus[disabled] {
        border: 1px solid #6800d2;
        color: #6800d2; }
    .button.hollow.primary, .wp-block-button .hollow.primary.wp-block-button__link, .wp-block-button.is-style-outline .primary.wp-block-button__link, .wp-block-button.is-style-outline section.promo-listing.contact .bg-image p:last-child a.primary.wp-block-button__link, section.promo-listing.contact .bg-image p:last-child .wp-block-button.is-style-outline a.primary.wp-block-button__link, .wp-block-button.is-style-outline section.promo-listing-2.contact .bg-image p:last-child a.primary.wp-block-button__link, section.promo-listing-2.contact .bg-image p:last-child .wp-block-button.is-style-outline a.primary.wp-block-button__link, section.promo-listing.contact .bg-image p:last-child a.hollow.primary, section.promo-listing-2.contact .bg-image p:last-child a.hollow.primary {
      border: 1px solid #6800d2;
      color: #6800d2; }
      .button.hollow.primary:hover, .wp-block-button .hollow.primary.wp-block-button__link:hover, .wp-block-button.is-style-outline .primary.wp-block-button__link:hover, section.promo-listing.contact .bg-image p:last-child a.hollow.primary:hover, section.promo-listing-2.contact .bg-image p:last-child a.hollow.primary:hover, .button.hollow.primary:focus, .wp-block-button .hollow.primary.wp-block-button__link:focus, .wp-block-button.is-style-outline .primary.wp-block-button__link:focus, section.promo-listing.contact .bg-image p:last-child a.hollow.primary:focus, section.promo-listing-2.contact .bg-image p:last-child a.hollow.primary:focus {
        border-color: #340069;
        color: #340069; }
        .button.hollow.primary:hover.disabled, .wp-block-button .hollow.primary.wp-block-button__link:hover.disabled, .wp-block-button.is-style-outline .primary.wp-block-button__link:hover.disabled, section.promo-listing.contact .bg-image p:last-child a.hollow.primary:hover.disabled, section.promo-listing-2.contact .bg-image p:last-child a.hollow.primary:hover.disabled, .button.hollow.primary:hover[disabled], .wp-block-button .hollow.primary.wp-block-button__link:hover[disabled], .wp-block-button.is-style-outline .primary.wp-block-button__link:hover[disabled], section.promo-listing.contact .bg-image p:last-child a.hollow.primary:hover[disabled], section.promo-listing-2.contact .bg-image p:last-child a.hollow.primary:hover[disabled], .button.hollow.primary:focus.disabled, .wp-block-button .hollow.primary.wp-block-button__link:focus.disabled, .wp-block-button.is-style-outline .primary.wp-block-button__link:focus.disabled, section.promo-listing.contact .bg-image p:last-child a.hollow.primary:focus.disabled, section.promo-listing-2.contact .bg-image p:last-child a.hollow.primary:focus.disabled, .button.hollow.primary:focus[disabled], .wp-block-button .hollow.primary.wp-block-button__link:focus[disabled], .wp-block-button.is-style-outline .primary.wp-block-button__link:focus[disabled], section.promo-listing.contact .bg-image p:last-child a.hollow.primary:focus[disabled], section.promo-listing-2.contact .bg-image p:last-child a.hollow.primary:focus[disabled] {
          border: 1px solid #6800d2;
          color: #6800d2; }
    .button.hollow.secondary, .wp-block-button .hollow.secondary.wp-block-button__link, .wp-block-button.is-style-outline .secondary.wp-block-button__link, .wp-block-button.is-style-outline section.promo-listing.contact .bg-image p:last-child a.secondary.wp-block-button__link, section.promo-listing.contact .bg-image p:last-child .wp-block-button.is-style-outline a.secondary.wp-block-button__link, .wp-block-button.is-style-outline section.promo-listing-2.contact .bg-image p:last-child a.secondary.wp-block-button__link, section.promo-listing-2.contact .bg-image p:last-child .wp-block-button.is-style-outline a.secondary.wp-block-button__link, section.promo-listing.contact .bg-image p:last-child a.hollow.secondary, section.promo-listing-2.contact .bg-image p:last-child a.hollow.secondary {
      border: 1px solid #fbe200;
      color: #fbe200; }
      .button.hollow.secondary:hover, .wp-block-button .hollow.secondary.wp-block-button__link:hover, .wp-block-button.is-style-outline .secondary.wp-block-button__link:hover, section.promo-listing.contact .bg-image p:last-child a.hollow.secondary:hover, section.promo-listing-2.contact .bg-image p:last-child a.hollow.secondary:hover, .button.hollow.secondary:focus, .wp-block-button .hollow.secondary.wp-block-button__link:focus, .wp-block-button.is-style-outline .secondary.wp-block-button__link:focus, section.promo-listing.contact .bg-image p:last-child a.hollow.secondary:focus, section.promo-listing-2.contact .bg-image p:last-child a.hollow.secondary:focus {
        border-color: #7e7100;
        color: #7e7100; }
        .button.hollow.secondary:hover.disabled, .wp-block-button .hollow.secondary.wp-block-button__link:hover.disabled, .wp-block-button.is-style-outline .secondary.wp-block-button__link:hover.disabled, section.promo-listing.contact .bg-image p:last-child a.hollow.secondary:hover.disabled, section.promo-listing-2.contact .bg-image p:last-child a.hollow.secondary:hover.disabled, .button.hollow.secondary:hover[disabled], .wp-block-button .hollow.secondary.wp-block-button__link:hover[disabled], .wp-block-button.is-style-outline .secondary.wp-block-button__link:hover[disabled], section.promo-listing.contact .bg-image p:last-child a.hollow.secondary:hover[disabled], section.promo-listing-2.contact .bg-image p:last-child a.hollow.secondary:hover[disabled], .button.hollow.secondary:focus.disabled, .wp-block-button .hollow.secondary.wp-block-button__link:focus.disabled, .wp-block-button.is-style-outline .secondary.wp-block-button__link:focus.disabled, section.promo-listing.contact .bg-image p:last-child a.hollow.secondary:focus.disabled, section.promo-listing-2.contact .bg-image p:last-child a.hollow.secondary:focus.disabled, .button.hollow.secondary:focus[disabled], .wp-block-button .hollow.secondary.wp-block-button__link:focus[disabled], .wp-block-button.is-style-outline .secondary.wp-block-button__link:focus[disabled], section.promo-listing.contact .bg-image p:last-child a.hollow.secondary:focus[disabled], section.promo-listing-2.contact .bg-image p:last-child a.hollow.secondary:focus[disabled] {
          border: 1px solid #fbe200;
          color: #fbe200; }
    .button.hollow.success, .wp-block-button .hollow.success.wp-block-button__link, .wp-block-button.is-style-outline .success.wp-block-button__link, .wp-block-button.is-style-outline section.promo-listing.contact .bg-image p:last-child a.success.wp-block-button__link, section.promo-listing.contact .bg-image p:last-child .wp-block-button.is-style-outline a.success.wp-block-button__link, .wp-block-button.is-style-outline section.promo-listing-2.contact .bg-image p:last-child a.success.wp-block-button__link, section.promo-listing-2.contact .bg-image p:last-child .wp-block-button.is-style-outline a.success.wp-block-button__link, section.promo-listing.contact .bg-image p:last-child a.hollow.success, section.promo-listing-2.contact .bg-image p:last-child a.hollow.success {
      border: 1px solid #3adb76;
      color: #3adb76; }
      .button.hollow.success:hover, .wp-block-button .hollow.success.wp-block-button__link:hover, .wp-block-button.is-style-outline .success.wp-block-button__link:hover, section.promo-listing.contact .bg-image p:last-child a.hollow.success:hover, section.promo-listing-2.contact .bg-image p:last-child a.hollow.success:hover, .button.hollow.success:focus, .wp-block-button .hollow.success.wp-block-button__link:focus, .wp-block-button.is-style-outline .success.wp-block-button__link:focus, section.promo-listing.contact .bg-image p:last-child a.hollow.success:focus, section.promo-listing-2.contact .bg-image p:last-child a.hollow.success:focus {
        border-color: #157539;
        color: #157539; }
        .button.hollow.success:hover.disabled, .wp-block-button .hollow.success.wp-block-button__link:hover.disabled, .wp-block-button.is-style-outline .success.wp-block-button__link:hover.disabled, section.promo-listing.contact .bg-image p:last-child a.hollow.success:hover.disabled, section.promo-listing-2.contact .bg-image p:last-child a.hollow.success:hover.disabled, .button.hollow.success:hover[disabled], .wp-block-button .hollow.success.wp-block-button__link:hover[disabled], .wp-block-button.is-style-outline .success.wp-block-button__link:hover[disabled], section.promo-listing.contact .bg-image p:last-child a.hollow.success:hover[disabled], section.promo-listing-2.contact .bg-image p:last-child a.hollow.success:hover[disabled], .button.hollow.success:focus.disabled, .wp-block-button .hollow.success.wp-block-button__link:focus.disabled, .wp-block-button.is-style-outline .success.wp-block-button__link:focus.disabled, section.promo-listing.contact .bg-image p:last-child a.hollow.success:focus.disabled, section.promo-listing-2.contact .bg-image p:last-child a.hollow.success:focus.disabled, .button.hollow.success:focus[disabled], .wp-block-button .hollow.success.wp-block-button__link:focus[disabled], .wp-block-button.is-style-outline .success.wp-block-button__link:focus[disabled], section.promo-listing.contact .bg-image p:last-child a.hollow.success:focus[disabled], section.promo-listing-2.contact .bg-image p:last-child a.hollow.success:focus[disabled] {
          border: 1px solid #3adb76;
          color: #3adb76; }
    .button.hollow.warning, .wp-block-button .hollow.warning.wp-block-button__link, .wp-block-button.is-style-outline .warning.wp-block-button__link, .wp-block-button.is-style-outline section.promo-listing.contact .bg-image p:last-child a.warning.wp-block-button__link, section.promo-listing.contact .bg-image p:last-child .wp-block-button.is-style-outline a.warning.wp-block-button__link, .wp-block-button.is-style-outline section.promo-listing-2.contact .bg-image p:last-child a.warning.wp-block-button__link, section.promo-listing-2.contact .bg-image p:last-child .wp-block-button.is-style-outline a.warning.wp-block-button__link, section.promo-listing.contact .bg-image p:last-child a.hollow.warning, section.promo-listing-2.contact .bg-image p:last-child a.hollow.warning {
      border: 1px solid #ffae00;
      color: #ffae00; }
      .button.hollow.warning:hover, .wp-block-button .hollow.warning.wp-block-button__link:hover, .wp-block-button.is-style-outline .warning.wp-block-button__link:hover, section.promo-listing.contact .bg-image p:last-child a.hollow.warning:hover, section.promo-listing-2.contact .bg-image p:last-child a.hollow.warning:hover, .button.hollow.warning:focus, .wp-block-button .hollow.warning.wp-block-button__link:focus, .wp-block-button.is-style-outline .warning.wp-block-button__link:focus, section.promo-listing.contact .bg-image p:last-child a.hollow.warning:focus, section.promo-listing-2.contact .bg-image p:last-child a.hollow.warning:focus {
        border-color: #805700;
        color: #805700; }
        .button.hollow.warning:hover.disabled, .wp-block-button .hollow.warning.wp-block-button__link:hover.disabled, .wp-block-button.is-style-outline .warning.wp-block-button__link:hover.disabled, section.promo-listing.contact .bg-image p:last-child a.hollow.warning:hover.disabled, section.promo-listing-2.contact .bg-image p:last-child a.hollow.warning:hover.disabled, .button.hollow.warning:hover[disabled], .wp-block-button .hollow.warning.wp-block-button__link:hover[disabled], .wp-block-button.is-style-outline .warning.wp-block-button__link:hover[disabled], section.promo-listing.contact .bg-image p:last-child a.hollow.warning:hover[disabled], section.promo-listing-2.contact .bg-image p:last-child a.hollow.warning:hover[disabled], .button.hollow.warning:focus.disabled, .wp-block-button .hollow.warning.wp-block-button__link:focus.disabled, .wp-block-button.is-style-outline .warning.wp-block-button__link:focus.disabled, section.promo-listing.contact .bg-image p:last-child a.hollow.warning:focus.disabled, section.promo-listing-2.contact .bg-image p:last-child a.hollow.warning:focus.disabled, .button.hollow.warning:focus[disabled], .wp-block-button .hollow.warning.wp-block-button__link:focus[disabled], .wp-block-button.is-style-outline .warning.wp-block-button__link:focus[disabled], section.promo-listing.contact .bg-image p:last-child a.hollow.warning:focus[disabled], section.promo-listing-2.contact .bg-image p:last-child a.hollow.warning:focus[disabled] {
          border: 1px solid #ffae00;
          color: #ffae00; }
    .button.hollow.alert, .wp-block-button .hollow.alert.wp-block-button__link, .wp-block-button.is-style-outline .alert.wp-block-button__link, .wp-block-button.is-style-outline section.promo-listing.contact .bg-image p:last-child a.alert.wp-block-button__link, section.promo-listing.contact .bg-image p:last-child .wp-block-button.is-style-outline a.alert.wp-block-button__link, .wp-block-button.is-style-outline section.promo-listing-2.contact .bg-image p:last-child a.alert.wp-block-button__link, section.promo-listing-2.contact .bg-image p:last-child .wp-block-button.is-style-outline a.alert.wp-block-button__link, section.promo-listing.contact .bg-image p:last-child a.hollow.alert, section.promo-listing-2.contact .bg-image p:last-child a.hollow.alert {
      border: 1px solid #cc4b37;
      color: #cc4b37; }
      .button.hollow.alert:hover, .wp-block-button .hollow.alert.wp-block-button__link:hover, .wp-block-button.is-style-outline .alert.wp-block-button__link:hover, section.promo-listing.contact .bg-image p:last-child a.hollow.alert:hover, section.promo-listing-2.contact .bg-image p:last-child a.hollow.alert:hover, .button.hollow.alert:focus, .wp-block-button .hollow.alert.wp-block-button__link:focus, .wp-block-button.is-style-outline .alert.wp-block-button__link:focus, section.promo-listing.contact .bg-image p:last-child a.hollow.alert:focus, section.promo-listing-2.contact .bg-image p:last-child a.hollow.alert:focus {
        border-color: #67251a;
        color: #67251a; }
        .button.hollow.alert:hover.disabled, .wp-block-button .hollow.alert.wp-block-button__link:hover.disabled, .wp-block-button.is-style-outline .alert.wp-block-button__link:hover.disabled, section.promo-listing.contact .bg-image p:last-child a.hollow.alert:hover.disabled, section.promo-listing-2.contact .bg-image p:last-child a.hollow.alert:hover.disabled, .button.hollow.alert:hover[disabled], .wp-block-button .hollow.alert.wp-block-button__link:hover[disabled], .wp-block-button.is-style-outline .alert.wp-block-button__link:hover[disabled], section.promo-listing.contact .bg-image p:last-child a.hollow.alert:hover[disabled], section.promo-listing-2.contact .bg-image p:last-child a.hollow.alert:hover[disabled], .button.hollow.alert:focus.disabled, .wp-block-button .hollow.alert.wp-block-button__link:focus.disabled, .wp-block-button.is-style-outline .alert.wp-block-button__link:focus.disabled, section.promo-listing.contact .bg-image p:last-child a.hollow.alert:focus.disabled, section.promo-listing-2.contact .bg-image p:last-child a.hollow.alert:focus.disabled, .button.hollow.alert:focus[disabled], .wp-block-button .hollow.alert.wp-block-button__link:focus[disabled], .wp-block-button.is-style-outline .alert.wp-block-button__link:focus[disabled], section.promo-listing.contact .bg-image p:last-child a.hollow.alert:focus[disabled], section.promo-listing-2.contact .bg-image p:last-child a.hollow.alert:focus[disabled] {
          border: 1px solid #cc4b37;
          color: #cc4b37; }
  .button.clear, .wp-block-button .clear.wp-block-button__link, section.promo-listing.contact .bg-image p:last-child a.clear, section.promo-listing-2.contact .bg-image p:last-child a.clear {
    border: 1px solid #6800d2;
    color: #6800d2; }
    .button.clear, .wp-block-button .clear.wp-block-button__link, section.promo-listing.contact .bg-image p:last-child a.clear, section.promo-listing-2.contact .bg-image p:last-child a.clear, .button.clear:hover, .wp-block-button .clear.wp-block-button__link:hover, section.promo-listing.contact .bg-image p:last-child a.clear:hover, section.promo-listing-2.contact .bg-image p:last-child a.clear:hover, .button.clear:focus, .wp-block-button .clear.wp-block-button__link:focus, section.promo-listing.contact .bg-image p:last-child a.clear:focus, section.promo-listing-2.contact .bg-image p:last-child a.clear:focus {
      background-color: transparent; }
    .button.clear.disabled, .wp-block-button .clear.disabled.wp-block-button__link, section.promo-listing.contact .bg-image p:last-child a.clear.disabled, section.promo-listing-2.contact .bg-image p:last-child a.clear.disabled, .button.clear.disabled:hover, .wp-block-button .clear.disabled.wp-block-button__link:hover, section.promo-listing.contact .bg-image p:last-child a.clear.disabled:hover, section.promo-listing-2.contact .bg-image p:last-child a.clear.disabled:hover, .button.clear.disabled:focus, .wp-block-button .clear.disabled.wp-block-button__link:focus, section.promo-listing.contact .bg-image p:last-child a.clear.disabled:focus, section.promo-listing-2.contact .bg-image p:last-child a.clear.disabled:focus, .button.clear[disabled], .wp-block-button .clear.wp-block-button__link[disabled], section.promo-listing.contact .bg-image p:last-child a.clear[disabled], section.promo-listing-2.contact .bg-image p:last-child a.clear[disabled], .button.clear[disabled]:hover, .wp-block-button .clear.wp-block-button__link[disabled]:hover, section.promo-listing.contact .bg-image p:last-child a.clear[disabled]:hover, section.promo-listing-2.contact .bg-image p:last-child a.clear[disabled]:hover, .button.clear[disabled]:focus, .wp-block-button .clear.wp-block-button__link[disabled]:focus, section.promo-listing.contact .bg-image p:last-child a.clear[disabled]:focus, section.promo-listing-2.contact .bg-image p:last-child a.clear[disabled]:focus {
      background-color: transparent; }
    .button.clear:hover, .wp-block-button .clear.wp-block-button__link:hover, section.promo-listing.contact .bg-image p:last-child a.clear:hover, section.promo-listing-2.contact .bg-image p:last-child a.clear:hover, .button.clear:focus, .wp-block-button .clear.wp-block-button__link:focus, section.promo-listing.contact .bg-image p:last-child a.clear:focus, section.promo-listing-2.contact .bg-image p:last-child a.clear:focus {
      border-color: #340069;
      color: #340069; }
      .button.clear:hover.disabled, .wp-block-button .clear.wp-block-button__link:hover.disabled, section.promo-listing.contact .bg-image p:last-child a.clear:hover.disabled, section.promo-listing-2.contact .bg-image p:last-child a.clear:hover.disabled, .button.clear:hover[disabled], .wp-block-button .clear.wp-block-button__link:hover[disabled], section.promo-listing.contact .bg-image p:last-child a.clear:hover[disabled], section.promo-listing-2.contact .bg-image p:last-child a.clear:hover[disabled], .button.clear:focus.disabled, .wp-block-button .clear.wp-block-button__link:focus.disabled, section.promo-listing.contact .bg-image p:last-child a.clear:focus.disabled, section.promo-listing-2.contact .bg-image p:last-child a.clear:focus.disabled, .button.clear:focus[disabled], .wp-block-button .clear.wp-block-button__link:focus[disabled], section.promo-listing.contact .bg-image p:last-child a.clear:focus[disabled], section.promo-listing-2.contact .bg-image p:last-child a.clear:focus[disabled] {
        border: 1px solid #6800d2;
        color: #6800d2; }
    .button.clear, .wp-block-button .clear.wp-block-button__link, section.promo-listing.contact .bg-image p:last-child a.clear, section.promo-listing-2.contact .bg-image p:last-child a.clear, .button.clear.disabled, .wp-block-button .clear.disabled.wp-block-button__link, section.promo-listing.contact .bg-image p:last-child a.clear.disabled, section.promo-listing-2.contact .bg-image p:last-child a.clear.disabled, .button.clear[disabled], .wp-block-button .clear.wp-block-button__link[disabled], section.promo-listing.contact .bg-image p:last-child a.clear[disabled], section.promo-listing-2.contact .bg-image p:last-child a.clear[disabled], .button.clear:hover, .wp-block-button .clear.wp-block-button__link:hover, section.promo-listing.contact .bg-image p:last-child a.clear:hover, section.promo-listing-2.contact .bg-image p:last-child a.clear:hover, .button.clear:hover.disabled, .wp-block-button .clear.wp-block-button__link:hover.disabled, section.promo-listing.contact .bg-image p:last-child a.clear:hover.disabled, section.promo-listing-2.contact .bg-image p:last-child a.clear:hover.disabled, .button.clear:hover[disabled], .wp-block-button .clear.wp-block-button__link:hover[disabled], section.promo-listing.contact .bg-image p:last-child a.clear:hover[disabled], section.promo-listing-2.contact .bg-image p:last-child a.clear:hover[disabled], .button.clear:focus, .wp-block-button .clear.wp-block-button__link:focus, section.promo-listing.contact .bg-image p:last-child a.clear:focus, section.promo-listing-2.contact .bg-image p:last-child a.clear:focus, .button.clear:focus.disabled, .wp-block-button .clear.wp-block-button__link:focus.disabled, section.promo-listing.contact .bg-image p:last-child a.clear:focus.disabled, section.promo-listing-2.contact .bg-image p:last-child a.clear:focus.disabled, .button.clear:focus[disabled], .wp-block-button .clear.wp-block-button__link:focus[disabled], section.promo-listing.contact .bg-image p:last-child a.clear:focus[disabled], section.promo-listing-2.contact .bg-image p:last-child a.clear:focus[disabled] {
      border-color: transparent; }
    .button.clear.primary, .wp-block-button .clear.primary.wp-block-button__link, section.promo-listing.contact .bg-image p:last-child a.clear.primary, section.promo-listing-2.contact .bg-image p:last-child a.clear.primary {
      border: 1px solid #6800d2;
      color: #6800d2; }
      .button.clear.primary:hover, .wp-block-button .clear.primary.wp-block-button__link:hover, section.promo-listing.contact .bg-image p:last-child a.clear.primary:hover, section.promo-listing-2.contact .bg-image p:last-child a.clear.primary:hover, .button.clear.primary:focus, .wp-block-button .clear.primary.wp-block-button__link:focus, section.promo-listing.contact .bg-image p:last-child a.clear.primary:focus, section.promo-listing-2.contact .bg-image p:last-child a.clear.primary:focus {
        border-color: #340069;
        color: #340069; }
        .button.clear.primary:hover.disabled, .wp-block-button .clear.primary.wp-block-button__link:hover.disabled, section.promo-listing.contact .bg-image p:last-child a.clear.primary:hover.disabled, section.promo-listing-2.contact .bg-image p:last-child a.clear.primary:hover.disabled, .button.clear.primary:hover[disabled], .wp-block-button .clear.primary.wp-block-button__link:hover[disabled], section.promo-listing.contact .bg-image p:last-child a.clear.primary:hover[disabled], section.promo-listing-2.contact .bg-image p:last-child a.clear.primary:hover[disabled], .button.clear.primary:focus.disabled, .wp-block-button .clear.primary.wp-block-button__link:focus.disabled, section.promo-listing.contact .bg-image p:last-child a.clear.primary:focus.disabled, section.promo-listing-2.contact .bg-image p:last-child a.clear.primary:focus.disabled, .button.clear.primary:focus[disabled], .wp-block-button .clear.primary.wp-block-button__link:focus[disabled], section.promo-listing.contact .bg-image p:last-child a.clear.primary:focus[disabled], section.promo-listing-2.contact .bg-image p:last-child a.clear.primary:focus[disabled] {
          border: 1px solid #6800d2;
          color: #6800d2; }
      .button.clear.primary, .wp-block-button .clear.primary.wp-block-button__link, section.promo-listing.contact .bg-image p:last-child a.clear.primary, section.promo-listing-2.contact .bg-image p:last-child a.clear.primary, .button.clear.primary.disabled, .wp-block-button .clear.primary.disabled.wp-block-button__link, section.promo-listing.contact .bg-image p:last-child a.clear.primary.disabled, section.promo-listing-2.contact .bg-image p:last-child a.clear.primary.disabled, .button.clear.primary[disabled], .wp-block-button .clear.primary.wp-block-button__link[disabled], section.promo-listing.contact .bg-image p:last-child a.clear.primary[disabled], section.promo-listing-2.contact .bg-image p:last-child a.clear.primary[disabled], .button.clear.primary:hover, .wp-block-button .clear.primary.wp-block-button__link:hover, section.promo-listing.contact .bg-image p:last-child a.clear.primary:hover, section.promo-listing-2.contact .bg-image p:last-child a.clear.primary:hover, .button.clear.primary:hover.disabled, .wp-block-button .clear.primary.wp-block-button__link:hover.disabled, section.promo-listing.contact .bg-image p:last-child a.clear.primary:hover.disabled, section.promo-listing-2.contact .bg-image p:last-child a.clear.primary:hover.disabled, .button.clear.primary:hover[disabled], .wp-block-button .clear.primary.wp-block-button__link:hover[disabled], section.promo-listing.contact .bg-image p:last-child a.clear.primary:hover[disabled], section.promo-listing-2.contact .bg-image p:last-child a.clear.primary:hover[disabled], .button.clear.primary:focus, .wp-block-button .clear.primary.wp-block-button__link:focus, section.promo-listing.contact .bg-image p:last-child a.clear.primary:focus, section.promo-listing-2.contact .bg-image p:last-child a.clear.primary:focus, .button.clear.primary:focus.disabled, .wp-block-button .clear.primary.wp-block-button__link:focus.disabled, section.promo-listing.contact .bg-image p:last-child a.clear.primary:focus.disabled, section.promo-listing-2.contact .bg-image p:last-child a.clear.primary:focus.disabled, .button.clear.primary:focus[disabled], .wp-block-button .clear.primary.wp-block-button__link:focus[disabled], section.promo-listing.contact .bg-image p:last-child a.clear.primary:focus[disabled], section.promo-listing-2.contact .bg-image p:last-child a.clear.primary:focus[disabled] {
        border-color: transparent; }
    .button.clear.secondary, .wp-block-button .clear.secondary.wp-block-button__link, section.promo-listing.contact .bg-image p:last-child a.clear.secondary, section.promo-listing-2.contact .bg-image p:last-child a.clear.secondary {
      border: 1px solid #fbe200;
      color: #fbe200; }
      .button.clear.secondary:hover, .wp-block-button .clear.secondary.wp-block-button__link:hover, section.promo-listing.contact .bg-image p:last-child a.clear.secondary:hover, section.promo-listing-2.contact .bg-image p:last-child a.clear.secondary:hover, .button.clear.secondary:focus, .wp-block-button .clear.secondary.wp-block-button__link:focus, section.promo-listing.contact .bg-image p:last-child a.clear.secondary:focus, section.promo-listing-2.contact .bg-image p:last-child a.clear.secondary:focus {
        border-color: #7e7100;
        color: #7e7100; }
        .button.clear.secondary:hover.disabled, .wp-block-button .clear.secondary.wp-block-button__link:hover.disabled, section.promo-listing.contact .bg-image p:last-child a.clear.secondary:hover.disabled, section.promo-listing-2.contact .bg-image p:last-child a.clear.secondary:hover.disabled, .button.clear.secondary:hover[disabled], .wp-block-button .clear.secondary.wp-block-button__link:hover[disabled], section.promo-listing.contact .bg-image p:last-child a.clear.secondary:hover[disabled], section.promo-listing-2.contact .bg-image p:last-child a.clear.secondary:hover[disabled], .button.clear.secondary:focus.disabled, .wp-block-button .clear.secondary.wp-block-button__link:focus.disabled, section.promo-listing.contact .bg-image p:last-child a.clear.secondary:focus.disabled, section.promo-listing-2.contact .bg-image p:last-child a.clear.secondary:focus.disabled, .button.clear.secondary:focus[disabled], .wp-block-button .clear.secondary.wp-block-button__link:focus[disabled], section.promo-listing.contact .bg-image p:last-child a.clear.secondary:focus[disabled], section.promo-listing-2.contact .bg-image p:last-child a.clear.secondary:focus[disabled] {
          border: 1px solid #fbe200;
          color: #fbe200; }
      .button.clear.secondary, .wp-block-button .clear.secondary.wp-block-button__link, section.promo-listing.contact .bg-image p:last-child a.clear.secondary, section.promo-listing-2.contact .bg-image p:last-child a.clear.secondary, .button.clear.secondary.disabled, .wp-block-button .clear.secondary.disabled.wp-block-button__link, section.promo-listing.contact .bg-image p:last-child a.clear.secondary.disabled, section.promo-listing-2.contact .bg-image p:last-child a.clear.secondary.disabled, .button.clear.secondary[disabled], .wp-block-button .clear.secondary.wp-block-button__link[disabled], section.promo-listing.contact .bg-image p:last-child a.clear.secondary[disabled], section.promo-listing-2.contact .bg-image p:last-child a.clear.secondary[disabled], .button.clear.secondary:hover, .wp-block-button .clear.secondary.wp-block-button__link:hover, section.promo-listing.contact .bg-image p:last-child a.clear.secondary:hover, section.promo-listing-2.contact .bg-image p:last-child a.clear.secondary:hover, .button.clear.secondary:hover.disabled, .wp-block-button .clear.secondary.wp-block-button__link:hover.disabled, section.promo-listing.contact .bg-image p:last-child a.clear.secondary:hover.disabled, section.promo-listing-2.contact .bg-image p:last-child a.clear.secondary:hover.disabled, .button.clear.secondary:hover[disabled], .wp-block-button .clear.secondary.wp-block-button__link:hover[disabled], section.promo-listing.contact .bg-image p:last-child a.clear.secondary:hover[disabled], section.promo-listing-2.contact .bg-image p:last-child a.clear.secondary:hover[disabled], .button.clear.secondary:focus, .wp-block-button .clear.secondary.wp-block-button__link:focus, section.promo-listing.contact .bg-image p:last-child a.clear.secondary:focus, section.promo-listing-2.contact .bg-image p:last-child a.clear.secondary:focus, .button.clear.secondary:focus.disabled, .wp-block-button .clear.secondary.wp-block-button__link:focus.disabled, section.promo-listing.contact .bg-image p:last-child a.clear.secondary:focus.disabled, section.promo-listing-2.contact .bg-image p:last-child a.clear.secondary:focus.disabled, .button.clear.secondary:focus[disabled], .wp-block-button .clear.secondary.wp-block-button__link:focus[disabled], section.promo-listing.contact .bg-image p:last-child a.clear.secondary:focus[disabled], section.promo-listing-2.contact .bg-image p:last-child a.clear.secondary:focus[disabled] {
        border-color: transparent; }
    .button.clear.success, .wp-block-button .clear.success.wp-block-button__link, section.promo-listing.contact .bg-image p:last-child a.clear.success, section.promo-listing-2.contact .bg-image p:last-child a.clear.success {
      border: 1px solid #3adb76;
      color: #3adb76; }
      .button.clear.success:hover, .wp-block-button .clear.success.wp-block-button__link:hover, section.promo-listing.contact .bg-image p:last-child a.clear.success:hover, section.promo-listing-2.contact .bg-image p:last-child a.clear.success:hover, .button.clear.success:focus, .wp-block-button .clear.success.wp-block-button__link:focus, section.promo-listing.contact .bg-image p:last-child a.clear.success:focus, section.promo-listing-2.contact .bg-image p:last-child a.clear.success:focus {
        border-color: #157539;
        color: #157539; }
        .button.clear.success:hover.disabled, .wp-block-button .clear.success.wp-block-button__link:hover.disabled, section.promo-listing.contact .bg-image p:last-child a.clear.success:hover.disabled, section.promo-listing-2.contact .bg-image p:last-child a.clear.success:hover.disabled, .button.clear.success:hover[disabled], .wp-block-button .clear.success.wp-block-button__link:hover[disabled], section.promo-listing.contact .bg-image p:last-child a.clear.success:hover[disabled], section.promo-listing-2.contact .bg-image p:last-child a.clear.success:hover[disabled], .button.clear.success:focus.disabled, .wp-block-button .clear.success.wp-block-button__link:focus.disabled, section.promo-listing.contact .bg-image p:last-child a.clear.success:focus.disabled, section.promo-listing-2.contact .bg-image p:last-child a.clear.success:focus.disabled, .button.clear.success:focus[disabled], .wp-block-button .clear.success.wp-block-button__link:focus[disabled], section.promo-listing.contact .bg-image p:last-child a.clear.success:focus[disabled], section.promo-listing-2.contact .bg-image p:last-child a.clear.success:focus[disabled] {
          border: 1px solid #3adb76;
          color: #3adb76; }
      .button.clear.success, .wp-block-button .clear.success.wp-block-button__link, section.promo-listing.contact .bg-image p:last-child a.clear.success, section.promo-listing-2.contact .bg-image p:last-child a.clear.success, .button.clear.success.disabled, .wp-block-button .clear.success.disabled.wp-block-button__link, section.promo-listing.contact .bg-image p:last-child a.clear.success.disabled, section.promo-listing-2.contact .bg-image p:last-child a.clear.success.disabled, .button.clear.success[disabled], .wp-block-button .clear.success.wp-block-button__link[disabled], section.promo-listing.contact .bg-image p:last-child a.clear.success[disabled], section.promo-listing-2.contact .bg-image p:last-child a.clear.success[disabled], .button.clear.success:hover, .wp-block-button .clear.success.wp-block-button__link:hover, section.promo-listing.contact .bg-image p:last-child a.clear.success:hover, section.promo-listing-2.contact .bg-image p:last-child a.clear.success:hover, .button.clear.success:hover.disabled, .wp-block-button .clear.success.wp-block-button__link:hover.disabled, section.promo-listing.contact .bg-image p:last-child a.clear.success:hover.disabled, section.promo-listing-2.contact .bg-image p:last-child a.clear.success:hover.disabled, .button.clear.success:hover[disabled], .wp-block-button .clear.success.wp-block-button__link:hover[disabled], section.promo-listing.contact .bg-image p:last-child a.clear.success:hover[disabled], section.promo-listing-2.contact .bg-image p:last-child a.clear.success:hover[disabled], .button.clear.success:focus, .wp-block-button .clear.success.wp-block-button__link:focus, section.promo-listing.contact .bg-image p:last-child a.clear.success:focus, section.promo-listing-2.contact .bg-image p:last-child a.clear.success:focus, .button.clear.success:focus.disabled, .wp-block-button .clear.success.wp-block-button__link:focus.disabled, section.promo-listing.contact .bg-image p:last-child a.clear.success:focus.disabled, section.promo-listing-2.contact .bg-image p:last-child a.clear.success:focus.disabled, .button.clear.success:focus[disabled], .wp-block-button .clear.success.wp-block-button__link:focus[disabled], section.promo-listing.contact .bg-image p:last-child a.clear.success:focus[disabled], section.promo-listing-2.contact .bg-image p:last-child a.clear.success:focus[disabled] {
        border-color: transparent; }
    .button.clear.warning, .wp-block-button .clear.warning.wp-block-button__link, section.promo-listing.contact .bg-image p:last-child a.clear.warning, section.promo-listing-2.contact .bg-image p:last-child a.clear.warning {
      border: 1px solid #ffae00;
      color: #ffae00; }
      .button.clear.warning:hover, .wp-block-button .clear.warning.wp-block-button__link:hover, section.promo-listing.contact .bg-image p:last-child a.clear.warning:hover, section.promo-listing-2.contact .bg-image p:last-child a.clear.warning:hover, .button.clear.warning:focus, .wp-block-button .clear.warning.wp-block-button__link:focus, section.promo-listing.contact .bg-image p:last-child a.clear.warning:focus, section.promo-listing-2.contact .bg-image p:last-child a.clear.warning:focus {
        border-color: #805700;
        color: #805700; }
        .button.clear.warning:hover.disabled, .wp-block-button .clear.warning.wp-block-button__link:hover.disabled, section.promo-listing.contact .bg-image p:last-child a.clear.warning:hover.disabled, section.promo-listing-2.contact .bg-image p:last-child a.clear.warning:hover.disabled, .button.clear.warning:hover[disabled], .wp-block-button .clear.warning.wp-block-button__link:hover[disabled], section.promo-listing.contact .bg-image p:last-child a.clear.warning:hover[disabled], section.promo-listing-2.contact .bg-image p:last-child a.clear.warning:hover[disabled], .button.clear.warning:focus.disabled, .wp-block-button .clear.warning.wp-block-button__link:focus.disabled, section.promo-listing.contact .bg-image p:last-child a.clear.warning:focus.disabled, section.promo-listing-2.contact .bg-image p:last-child a.clear.warning:focus.disabled, .button.clear.warning:focus[disabled], .wp-block-button .clear.warning.wp-block-button__link:focus[disabled], section.promo-listing.contact .bg-image p:last-child a.clear.warning:focus[disabled], section.promo-listing-2.contact .bg-image p:last-child a.clear.warning:focus[disabled] {
          border: 1px solid #ffae00;
          color: #ffae00; }
      .button.clear.warning, .wp-block-button .clear.warning.wp-block-button__link, section.promo-listing.contact .bg-image p:last-child a.clear.warning, section.promo-listing-2.contact .bg-image p:last-child a.clear.warning, .button.clear.warning.disabled, .wp-block-button .clear.warning.disabled.wp-block-button__link, section.promo-listing.contact .bg-image p:last-child a.clear.warning.disabled, section.promo-listing-2.contact .bg-image p:last-child a.clear.warning.disabled, .button.clear.warning[disabled], .wp-block-button .clear.warning.wp-block-button__link[disabled], section.promo-listing.contact .bg-image p:last-child a.clear.warning[disabled], section.promo-listing-2.contact .bg-image p:last-child a.clear.warning[disabled], .button.clear.warning:hover, .wp-block-button .clear.warning.wp-block-button__link:hover, section.promo-listing.contact .bg-image p:last-child a.clear.warning:hover, section.promo-listing-2.contact .bg-image p:last-child a.clear.warning:hover, .button.clear.warning:hover.disabled, .wp-block-button .clear.warning.wp-block-button__link:hover.disabled, section.promo-listing.contact .bg-image p:last-child a.clear.warning:hover.disabled, section.promo-listing-2.contact .bg-image p:last-child a.clear.warning:hover.disabled, .button.clear.warning:hover[disabled], .wp-block-button .clear.warning.wp-block-button__link:hover[disabled], section.promo-listing.contact .bg-image p:last-child a.clear.warning:hover[disabled], section.promo-listing-2.contact .bg-image p:last-child a.clear.warning:hover[disabled], .button.clear.warning:focus, .wp-block-button .clear.warning.wp-block-button__link:focus, section.promo-listing.contact .bg-image p:last-child a.clear.warning:focus, section.promo-listing-2.contact .bg-image p:last-child a.clear.warning:focus, .button.clear.warning:focus.disabled, .wp-block-button .clear.warning.wp-block-button__link:focus.disabled, section.promo-listing.contact .bg-image p:last-child a.clear.warning:focus.disabled, section.promo-listing-2.contact .bg-image p:last-child a.clear.warning:focus.disabled, .button.clear.warning:focus[disabled], .wp-block-button .clear.warning.wp-block-button__link:focus[disabled], section.promo-listing.contact .bg-image p:last-child a.clear.warning:focus[disabled], section.promo-listing-2.contact .bg-image p:last-child a.clear.warning:focus[disabled] {
        border-color: transparent; }
    .button.clear.alert, .wp-block-button .clear.alert.wp-block-button__link, section.promo-listing.contact .bg-image p:last-child a.clear.alert, section.promo-listing-2.contact .bg-image p:last-child a.clear.alert {
      border: 1px solid #cc4b37;
      color: #cc4b37; }
      .button.clear.alert:hover, .wp-block-button .clear.alert.wp-block-button__link:hover, section.promo-listing.contact .bg-image p:last-child a.clear.alert:hover, section.promo-listing-2.contact .bg-image p:last-child a.clear.alert:hover, .button.clear.alert:focus, .wp-block-button .clear.alert.wp-block-button__link:focus, section.promo-listing.contact .bg-image p:last-child a.clear.alert:focus, section.promo-listing-2.contact .bg-image p:last-child a.clear.alert:focus {
        border-color: #67251a;
        color: #67251a; }
        .button.clear.alert:hover.disabled, .wp-block-button .clear.alert.wp-block-button__link:hover.disabled, section.promo-listing.contact .bg-image p:last-child a.clear.alert:hover.disabled, section.promo-listing-2.contact .bg-image p:last-child a.clear.alert:hover.disabled, .button.clear.alert:hover[disabled], .wp-block-button .clear.alert.wp-block-button__link:hover[disabled], section.promo-listing.contact .bg-image p:last-child a.clear.alert:hover[disabled], section.promo-listing-2.contact .bg-image p:last-child a.clear.alert:hover[disabled], .button.clear.alert:focus.disabled, .wp-block-button .clear.alert.wp-block-button__link:focus.disabled, section.promo-listing.contact .bg-image p:last-child a.clear.alert:focus.disabled, section.promo-listing-2.contact .bg-image p:last-child a.clear.alert:focus.disabled, .button.clear.alert:focus[disabled], .wp-block-button .clear.alert.wp-block-button__link:focus[disabled], section.promo-listing.contact .bg-image p:last-child a.clear.alert:focus[disabled], section.promo-listing-2.contact .bg-image p:last-child a.clear.alert:focus[disabled] {
          border: 1px solid #cc4b37;
          color: #cc4b37; }
      .button.clear.alert, .wp-block-button .clear.alert.wp-block-button__link, section.promo-listing.contact .bg-image p:last-child a.clear.alert, section.promo-listing-2.contact .bg-image p:last-child a.clear.alert, .button.clear.alert.disabled, .wp-block-button .clear.alert.disabled.wp-block-button__link, section.promo-listing.contact .bg-image p:last-child a.clear.alert.disabled, section.promo-listing-2.contact .bg-image p:last-child a.clear.alert.disabled, .button.clear.alert[disabled], .wp-block-button .clear.alert.wp-block-button__link[disabled], section.promo-listing.contact .bg-image p:last-child a.clear.alert[disabled], section.promo-listing-2.contact .bg-image p:last-child a.clear.alert[disabled], .button.clear.alert:hover, .wp-block-button .clear.alert.wp-block-button__link:hover, section.promo-listing.contact .bg-image p:last-child a.clear.alert:hover, section.promo-listing-2.contact .bg-image p:last-child a.clear.alert:hover, .button.clear.alert:hover.disabled, .wp-block-button .clear.alert.wp-block-button__link:hover.disabled, section.promo-listing.contact .bg-image p:last-child a.clear.alert:hover.disabled, section.promo-listing-2.contact .bg-image p:last-child a.clear.alert:hover.disabled, .button.clear.alert:hover[disabled], .wp-block-button .clear.alert.wp-block-button__link:hover[disabled], section.promo-listing.contact .bg-image p:last-child a.clear.alert:hover[disabled], section.promo-listing-2.contact .bg-image p:last-child a.clear.alert:hover[disabled], .button.clear.alert:focus, .wp-block-button .clear.alert.wp-block-button__link:focus, section.promo-listing.contact .bg-image p:last-child a.clear.alert:focus, section.promo-listing-2.contact .bg-image p:last-child a.clear.alert:focus, .button.clear.alert:focus.disabled, .wp-block-button .clear.alert.wp-block-button__link:focus.disabled, section.promo-listing.contact .bg-image p:last-child a.clear.alert:focus.disabled, section.promo-listing-2.contact .bg-image p:last-child a.clear.alert:focus.disabled, .button.clear.alert:focus[disabled], .wp-block-button .clear.alert.wp-block-button__link:focus[disabled], section.promo-listing.contact .bg-image p:last-child a.clear.alert:focus[disabled], section.promo-listing-2.contact .bg-image p:last-child a.clear.alert:focus[disabled] {
        border-color: transparent; }
  .button.dropdown::after, .wp-block-button .dropdown.wp-block-button__link::after, section.promo-listing.contact .bg-image p:last-child a.dropdown::after, section.promo-listing-2.contact .bg-image p:last-child a.dropdown::after {
    display: block;
    width: 0;
    height: 0;
    border: inset 0.4em;
    content: '';
    border-bottom-width: 0;
    border-top-style: solid;
    border-color: #fefefe transparent transparent;
    position: relative;
    top: 0.4em;
    display: inline-block;
    float: right;
    margin-left: 1.875rem; }
  .button.dropdown.hollow::after, .wp-block-button .dropdown.hollow.wp-block-button__link::after, .wp-block-button.is-style-outline .dropdown.wp-block-button__link::after, .wp-block-button.is-style-outline section.promo-listing.contact .bg-image p:last-child a.dropdown.wp-block-button__link::after, section.promo-listing.contact .bg-image p:last-child .wp-block-button.is-style-outline a.dropdown.wp-block-button__link::after, .wp-block-button.is-style-outline section.promo-listing-2.contact .bg-image p:last-child a.dropdown.wp-block-button__link::after, section.promo-listing-2.contact .bg-image p:last-child .wp-block-button.is-style-outline a.dropdown.wp-block-button__link::after, section.promo-listing.contact .bg-image p:last-child a.dropdown.hollow::after, section.promo-listing-2.contact .bg-image p:last-child a.dropdown.hollow::after, .button.dropdown.clear::after, .wp-block-button .dropdown.clear.wp-block-button__link::after, section.promo-listing.contact .bg-image p:last-child a.dropdown.clear::after, section.promo-listing-2.contact .bg-image p:last-child a.dropdown.clear::after {
    border-top-color: #6800d2; }
  .button.dropdown.hollow.primary::after, .wp-block-button .dropdown.hollow.primary.wp-block-button__link::after, .wp-block-button.is-style-outline .dropdown.primary.wp-block-button__link::after, section.promo-listing.contact .bg-image p:last-child a.dropdown.hollow.primary::after, section.promo-listing-2.contact .bg-image p:last-child a.dropdown.hollow.primary::after, .button.dropdown.clear.primary::after, .wp-block-button .dropdown.clear.primary.wp-block-button__link::after, section.promo-listing.contact .bg-image p:last-child a.dropdown.clear.primary::after, section.promo-listing-2.contact .bg-image p:last-child a.dropdown.clear.primary::after {
    border-top-color: #6800d2; }
  .button.dropdown.hollow.secondary::after, .wp-block-button .dropdown.hollow.secondary.wp-block-button__link::after, .wp-block-button.is-style-outline .dropdown.secondary.wp-block-button__link::after, section.promo-listing.contact .bg-image p:last-child a.dropdown.hollow.secondary::after, section.promo-listing-2.contact .bg-image p:last-child a.dropdown.hollow.secondary::after, .button.dropdown.clear.secondary::after, .wp-block-button .dropdown.clear.secondary.wp-block-button__link::after, section.promo-listing.contact .bg-image p:last-child a.dropdown.clear.secondary::after, section.promo-listing-2.contact .bg-image p:last-child a.dropdown.clear.secondary::after {
    border-top-color: #fbe200; }
  .button.dropdown.hollow.success::after, .wp-block-button .dropdown.hollow.success.wp-block-button__link::after, .wp-block-button.is-style-outline .dropdown.success.wp-block-button__link::after, section.promo-listing.contact .bg-image p:last-child a.dropdown.hollow.success::after, section.promo-listing-2.contact .bg-image p:last-child a.dropdown.hollow.success::after, .button.dropdown.clear.success::after, .wp-block-button .dropdown.clear.success.wp-block-button__link::after, section.promo-listing.contact .bg-image p:last-child a.dropdown.clear.success::after, section.promo-listing-2.contact .bg-image p:last-child a.dropdown.clear.success::after {
    border-top-color: #3adb76; }
  .button.dropdown.hollow.warning::after, .wp-block-button .dropdown.hollow.warning.wp-block-button__link::after, .wp-block-button.is-style-outline .dropdown.warning.wp-block-button__link::after, section.promo-listing.contact .bg-image p:last-child a.dropdown.hollow.warning::after, section.promo-listing-2.contact .bg-image p:last-child a.dropdown.hollow.warning::after, .button.dropdown.clear.warning::after, .wp-block-button .dropdown.clear.warning.wp-block-button__link::after, section.promo-listing.contact .bg-image p:last-child a.dropdown.clear.warning::after, section.promo-listing-2.contact .bg-image p:last-child a.dropdown.clear.warning::after {
    border-top-color: #ffae00; }
  .button.dropdown.hollow.alert::after, .wp-block-button .dropdown.hollow.alert.wp-block-button__link::after, .wp-block-button.is-style-outline .dropdown.alert.wp-block-button__link::after, section.promo-listing.contact .bg-image p:last-child a.dropdown.hollow.alert::after, section.promo-listing-2.contact .bg-image p:last-child a.dropdown.hollow.alert::after, .button.dropdown.clear.alert::after, .wp-block-button .dropdown.clear.alert.wp-block-button__link::after, section.promo-listing.contact .bg-image p:last-child a.dropdown.clear.alert::after, section.promo-listing-2.contact .bg-image p:last-child a.dropdown.clear.alert::after {
    border-top-color: #cc4b37; }
  .button.arrow-only::after, .wp-block-button .arrow-only.wp-block-button__link::after, section.promo-listing.contact .bg-image p:last-child a.arrow-only::after, section.promo-listing-2.contact .bg-image p:last-child a.arrow-only::after {
    top: -0.1em;
    float: none;
    margin-left: 0; }

a.button:hover, .wp-block-button a.wp-block-button__link:hover, section.promo-listing.contact .bg-image p:last-child a:hover, section.promo-listing-2.contact .bg-image p:last-child a:hover, a.button:focus, .wp-block-button a.wp-block-button__link:focus, section.promo-listing.contact .bg-image p:last-child a:focus, section.promo-listing-2.contact .bg-image p:last-child a:focus {
  text-decoration: none; }

[type='text'], [type='password'], [type='date'], [type='datetime'], [type='datetime-local'], [type='month'], [type='week'], [type='email'], [type='number'], [type='search'], [type='tel'], [type='time'], [type='url'], [type='color'],
textarea {
  display: block;
  box-sizing: border-box;
  width: 100%;
  height: 2.4375rem;
  margin: 0 0 1rem;
  padding: 0.5rem;
  border: 1px solid #cacaca;
  border-radius: 0;
  background-color: #fefefe;
  box-shadow: inset 0 1px 2px rgba(10, 10, 10, 0.1);
  font-family: inherit;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  color: #0a0a0a;
  transition: box-shadow 0.5s, border-color 0.25s ease-in-out;
  -webkit-appearance: none;
          appearance: none; }
  [type='text']:focus, [type='password']:focus, [type='date']:focus, [type='datetime']:focus, [type='datetime-local']:focus, [type='month']:focus, [type='week']:focus, [type='email']:focus, [type='number']:focus, [type='search']:focus, [type='tel']:focus, [type='time']:focus, [type='url']:focus, [type='color']:focus,
  textarea:focus {
    outline: none;
    border: 1px solid #8a8a8a;
    background-color: #fefefe;
    box-shadow: 0 0 5px #cacaca;
    transition: box-shadow 0.5s, border-color 0.25s ease-in-out; }

textarea {
  max-width: 100%; }
  textarea[rows] {
    height: auto; }

input:disabled, input[readonly],
textarea:disabled,
textarea[readonly] {
  background-color: #f2f2f2;
  cursor: not-allowed; }

[type='submit'],
[type='button'] {
  -webkit-appearance: none;
          appearance: none;
  border-radius: 1.25rem; }

input[type='search'] {
  box-sizing: border-box; }

:-ms-input-placeholder {
  color: #cacaca; }

::placeholder {
  color: #cacaca; }

[type='file'],
[type='checkbox'],
[type='radio'] {
  margin: 0 0 1rem; }

[type='checkbox'] + label,
[type='radio'] + label {
  display: inline-block;
  vertical-align: baseline;
  margin-left: 0.5rem;
  margin-right: 1rem;
  margin-bottom: 0; }
  [type='checkbox'] + label[for],
  [type='radio'] + label[for] {
    cursor: pointer; }

label > [type='checkbox'],
label > [type='radio'] {
  margin-right: 0.5rem; }

[type='file'] {
  width: 100%; }

label {
  display: block;
  margin: 0;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.8;
  color: #0a0a0a; }
  label.middle {
    margin: 0 0 1rem;
    padding: 0.5625rem 0; }

.help-text {
  margin-top: -0.5rem;
  font-size: 0.8125rem;
  font-style: italic;
  color: #0a0a0a; }

.input-group {
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  margin-bottom: 1rem;
  -ms-flex-align: stretch;
      align-items: stretch; }
  .input-group > :first-child, .input-group > :first-child.input-group-button > * {
    border-radius: 0 0 0 0; }
  .input-group > :last-child, .input-group > :last-child.input-group-button > * {
    border-radius: 0 0 0 0; }

.input-group-label, .input-group-field, .input-group-button, .input-group-button a,
.input-group-button input,
.input-group-button button,
.input-group-button label {
  margin: 0;
  white-space: nowrap; }

.input-group-label {
  padding: 0 1rem;
  border: 1px solid #cacaca;
  background: #f2f2f2;
  color: #0a0a0a;
  text-align: center;
  white-space: nowrap;
  display: -ms-flexbox;
  display: flex;
  -ms-flex: 0 0 auto;
      flex: 0 0 auto;
  -ms-flex-align: center;
      align-items: center; }
  .input-group-label:first-child {
    border-right: 0; }
  .input-group-label:last-child {
    border-left: 0; }

.input-group-field {
  border-radius: 0;
  -ms-flex: 1 1 0px;
      flex: 1 1 0px;
  min-width: 0; }

.input-group-button {
  padding-top: 0;
  padding-bottom: 0;
  text-align: center;
  display: -ms-flexbox;
  display: flex;
  -ms-flex: 0 0 auto;
      flex: 0 0 auto; }
  .input-group-button a,
  .input-group-button input,
  .input-group-button button,
  .input-group-button label {
    -ms-flex-item-align: stretch;
        -ms-grid-row-align: stretch;
        align-self: stretch;
    height: auto;
    padding-top: 0;
    padding-bottom: 0;
    font-size: 1rem; }

fieldset {
  margin: 0;
  padding: 0;
  border: 0; }

legend {
  max-width: 100%;
  margin-bottom: 0.5rem; }

.fieldset {
  margin: 1.125rem 0;
  padding: 1.25rem;
  border: 1px solid #cacaca; }
  .fieldset legend {
    margin: 0;
    margin-left: -0.1875rem;
    padding: 0 0.1875rem; }

select {
  height: 2.4375rem;
  margin: 0 0 1rem;
  padding: 0.5rem;
  -webkit-appearance: none;
          appearance: none;
  border: 1px solid #cacaca;
  border-radius: 1.25rem;
  background-color: #fefefe;
  font-family: inherit;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  color: #0a0a0a;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' version='1.1' width='32' height='24' viewBox='0 0 32 24'><polygon points='0,0 32,0 16,24' style='fill: rgb%28138, 138, 138%29'></polygon></svg>");
  background-origin: content-box;
  background-position: right -1rem center;
  background-repeat: no-repeat;
  background-size: 9px 6px;
  padding-right: 1.5rem;
  transition: box-shadow 0.5s, border-color 0.25s ease-in-out; }
  @media screen and (min-width: 0\0) {
    select {
      background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAYCAYAAACbU/80AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAIpJREFUeNrEkckNgDAMBBfRkEt0ObRBBdsGXUDgmQfK4XhH2m8czQAAy27R3tsw4Qfe2x8uOO6oYLb6GlOor3GF+swURAOmUJ+RwtEJs9WvTGEYxBXqI1MQAZhCfUQKRzDMVj+TwrAIV6jvSUEkYAr1LSkcyTBb/V+KYfX7xAeusq3sLDtGH3kEGACPWIflNZfhRQAAAABJRU5ErkJggg=="); } }
  select:focus {
    outline: none;
    border: 1px solid #8a8a8a;
    background-color: #fefefe;
    box-shadow: 0 0 5px #cacaca;
    transition: box-shadow 0.5s, border-color 0.25s ease-in-out; }
  select:disabled {
    background-color: #f2f2f2;
    cursor: not-allowed; }
  select::-ms-expand {
    display: none; }
  select[multiple] {
    height: auto;
    background-image: none; }

.is-invalid-input:not(:focus) {
  border-color: #cc4b37;
  background-color: #f9ecea; }
  .is-invalid-input:not(:focus):-ms-input-placeholder {
    color: #cc4b37; }
  .is-invalid-input:not(:focus)::placeholder {
    color: #cc4b37; }

.is-invalid-label {
  color: #cc4b37; }

.form-error {
  display: none;
  margin-top: -0.5rem;
  margin-bottom: 1rem;
  font-size: 0.75rem;
  font-weight: 700;
  color: #cc4b37; }
  .form-error.is-visible {
    display: block; }

.accordion {
  margin-left: 0;
  background: transparent;
  list-style-type: none; }
  .accordion[disabled] .accordion-title {
    cursor: not-allowed; }

.accordion-item:first-child > :first-child {
  border-radius: 1.25rem 1.25rem 0 0; }

.accordion-item:last-child > :last-child {
  border-radius: 0 0 1.25rem 1.25rem; }

.accordion-title {
  position: relative;
  display: block;
  padding: 1.25rem 1rem;
  border: 1px solid #f2f2f2;
  border-bottom: 0;
  font-size: 0.9375rem;
  line-height: 1;
  color: #6800d2; }
  :last-child:not(.is-active) > .accordion-title {
    border-bottom: 1px solid #f2f2f2;
    border-radius: 0 0 1.25rem 1.25rem; }
  .accordion-title:hover, .accordion-title:focus {
    background-color: transparent; }
  .accordion-title::before {
    position: absolute;
    top: 50%;
    right: 1rem;
    margin-top: -0.5rem;
    content: '+'; }
  .is-active > .accordion-title::before {
    content: '\2013'; }

.accordion-content {
  display: none;
  padding: 1rem;
  border: 1px solid #f2f2f2;
  border-bottom: 0;
  background-color: transparent;
  color: #0a0a0a; }
  :last-child > .accordion-content:last-child {
    border-bottom: 1px solid #f2f2f2; }

.close-button {
  position: absolute;
  color: #8a8a8a;
  cursor: pointer; }
  [data-whatinput='mouse'] .close-button {
    outline: 0; }
  .close-button:hover, .close-button:focus {
    color: #0a0a0a; }
  .close-button.small {
    right: 0.66rem;
    top: 0.33em;
    font-size: 1.5em;
    line-height: 1; }
  .close-button, .close-button.medium {
    right: 1rem;
    top: 0.5rem;
    font-size: 2em;
    line-height: 1; }

.menu {
  padding: 0;
  margin: 0;
  list-style: none;
  position: relative;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap; }
  [data-whatinput='mouse'] .menu li {
    outline: 0; }
  .menu a,
  .menu .button,
  .menu .wp-block-button .wp-block-button__link,
  .wp-block-button .menu .wp-block-button__link,
  .menu section.promo-listing.contact .bg-image p:last-child a,
  section.promo-listing.contact .bg-image p:last-child .menu a,
  .menu section.promo-listing-2.contact .bg-image p:last-child a,
  section.promo-listing-2.contact .bg-image p:last-child .menu a {
    line-height: 1;
    text-decoration: none;
    display: block;
    padding: 0.625rem 0.9375rem; }
  .menu input,
  .menu select,
  .menu a,
  .menu button {
    margin-bottom: 0; }
  .menu input {
    display: inline-block; }
  .menu, .menu.horizontal {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -ms-flex-direction: row;
        flex-direction: row; }
  .menu.vertical {
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    -ms-flex-direction: column;
        flex-direction: column; }
  .menu.expanded li {
    -ms-flex: 1 1 0px;
        flex: 1 1 0px; }
  .menu.simple {
    -ms-flex-align: center;
        align-items: center; }
    .menu.simple li + li {
      margin-left: 1rem; }
    .menu.simple a {
      padding: 0; }
  @media print, screen and (min-width: 40em) {
    .menu.medium-horizontal {
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
      -ms-flex-direction: row;
          flex-direction: row; }
    .menu.medium-vertical {
      -ms-flex-wrap: nowrap;
          flex-wrap: nowrap;
      -ms-flex-direction: column;
          flex-direction: column; }
    .menu.medium-expanded li {
      -ms-flex: 1 1 0px;
          flex: 1 1 0px; }
    .menu.medium-simple li {
      -ms-flex: 1 1 0px;
          flex: 1 1 0px; } }
  @media print, screen and (min-width: 64em) {
    .menu.large-horizontal {
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
      -ms-flex-direction: row;
          flex-direction: row; }
    .menu.large-vertical {
      -ms-flex-wrap: nowrap;
          flex-wrap: nowrap;
      -ms-flex-direction: column;
          flex-direction: column; }
    .menu.large-expanded li {
      -ms-flex: 1 1 0px;
          flex: 1 1 0px; }
    .menu.large-simple li {
      -ms-flex: 1 1 0px;
          flex: 1 1 0px; } }
  .menu.nested {
    margin-right: 0;
    margin-left: 1rem; }
  .menu.icons a {
    display: -ms-flexbox;
    display: flex; }
  .menu.icon-top a, .menu.icon-right a, .menu.icon-bottom a, .menu.icon-left a {
    display: -ms-flexbox;
    display: flex; }
  .menu.icon-left li a {
    -ms-flex-flow: row nowrap;
        flex-flow: row nowrap; }
    .menu.icon-left li a img,
    .menu.icon-left li a i,
    .menu.icon-left li a svg {
      margin-right: 0.25rem; }
  .menu.icon-right li a {
    -ms-flex-flow: row nowrap;
        flex-flow: row nowrap; }
    .menu.icon-right li a img,
    .menu.icon-right li a i,
    .menu.icon-right li a svg {
      margin-left: 0.25rem; }
  .menu.icon-top li a {
    -ms-flex-flow: column nowrap;
        flex-flow: column nowrap; }
    .menu.icon-top li a img,
    .menu.icon-top li a i,
    .menu.icon-top li a svg {
      -ms-flex-item-align: stretch;
          -ms-grid-row-align: stretch;
          align-self: stretch;
      margin-bottom: 0.25rem;
      text-align: center; }
  .menu.icon-bottom li a {
    -ms-flex-flow: column nowrap;
        flex-flow: column nowrap; }
    .menu.icon-bottom li a img,
    .menu.icon-bottom li a i,
    .menu.icon-bottom li a svg {
      -ms-flex-item-align: stretch;
          -ms-grid-row-align: stretch;
          align-self: stretch;
      margin-bottom: 0.25rem;
      text-align: center; }
  .menu .is-active > a {
    background: transparent;
    color: #0a0a0a; }
  .menu .active > a {
    background: transparent;
    color: #0a0a0a; }
  .menu.align-left {
    -ms-flex-pack: start;
        justify-content: flex-start; }
  .menu.align-right li {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: end;
        justify-content: flex-end; }
    .menu.align-right li .submenu li {
      -ms-flex-pack: start;
          justify-content: flex-start; }
  .menu.align-right.vertical li {
    display: block;
    text-align: right; }
    .menu.align-right.vertical li .submenu li {
      text-align: right; }
  .menu.align-right .nested {
    margin-right: 1rem;
    margin-left: 0; }
  .menu.align-center li {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
        justify-content: center; }
    .menu.align-center li .submenu li {
      -ms-flex-pack: start;
          justify-content: flex-start; }
  .menu .menu-text {
    padding: 0.3125rem 0.625rem 0.3125rem 0.625rem;
    font-weight: bold;
    line-height: 1;
    color: inherit; }

.menu-centered > .menu {
  -ms-flex-pack: center;
      justify-content: center; }
  .menu-centered > .menu li {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
        justify-content: center; }
    .menu-centered > .menu li .submenu li {
      -ms-flex-pack: start;
          justify-content: flex-start; }

.no-js [data-responsive-menu] ul {
  display: none; }

.menu-icon {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  width: 20px;
  height: 16px;
  cursor: pointer; }
  .menu-icon::after {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 2px;
    background: #0a0a0a;
    box-shadow: 0 7px 0 #0a0a0a, 0 14px 0 #0a0a0a;
    content: ''; }
  .menu-icon:hover::after {
    background: #cacaca;
    box-shadow: 0 7px 0 #cacaca, 0 14px 0 #cacaca; }

.menu-icon.dark {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  width: 20px;
  height: 16px;
  cursor: pointer; }
  .menu-icon.dark::after {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 2px;
    background: #0a0a0a;
    box-shadow: 0 7px 0 #0a0a0a, 0 14px 0 #0a0a0a;
    content: ''; }
  .menu-icon.dark:hover::after {
    background: #8a8a8a;
    box-shadow: 0 7px 0 #8a8a8a, 0 14px 0 #8a8a8a; }

.is-drilldown {
  position: relative;
  overflow: hidden; }
  .is-drilldown li {
    display: block; }
  .is-drilldown.animate-height {
    transition: height 0.5s; }

.drilldown a {
  padding: 0.625rem 0.9375rem;
  background: #f2f2f2; }

.drilldown .is-drilldown-submenu {
  position: absolute;
  top: 0;
  left: 100%;
  z-index: -1;
  width: 100%;
  background: #f2f2f2;
  transition: transform 0.15s linear; }
  .drilldown .is-drilldown-submenu.is-active {
    z-index: 1;
    display: block;
    -ms-transform: translateX(-100%);
        transform: translateX(-100%); }
  .drilldown .is-drilldown-submenu.is-closing {
    -ms-transform: translateX(100%);
        transform: translateX(100%); }
  .drilldown .is-drilldown-submenu a {
    padding: 0.625rem 0.9375rem; }

.drilldown .nested.is-drilldown-submenu {
  margin-right: 0;
  margin-left: 0; }

.drilldown .drilldown-submenu-cover-previous {
  min-height: 100%; }

.drilldown .is-drilldown-submenu-parent > a {
  position: relative; }
  .drilldown .is-drilldown-submenu-parent > a::after {
    display: block;
    width: 0;
    height: 0;
    border: inset 6px;
    content: '';
    border-right-width: 0;
    border-left-style: solid;
    border-color: transparent transparent transparent #6800d2;
    position: absolute;
    top: 50%;
    margin-top: -6px;
    right: 1rem; }

.drilldown.align-left .is-drilldown-submenu-parent > a::after {
  display: block;
  width: 0;
  height: 0;
  border: inset 6px;
  content: '';
  border-right-width: 0;
  border-left-style: solid;
  border-color: transparent transparent transparent #6800d2;
  right: 1rem;
  left: auto; }

.drilldown.align-right .is-drilldown-submenu-parent > a::after {
  display: block;
  width: 0;
  height: 0;
  border: inset 6px;
  content: '';
  border-left-width: 0;
  border-right-style: solid;
  border-color: transparent #6800d2 transparent transparent;
  right: auto;
  left: 1rem; }

.drilldown .js-drilldown-back > a::before {
  display: block;
  width: 0;
  height: 0;
  border: inset 6px;
  content: '';
  border-left-width: 0;
  border-right-style: solid;
  border-color: transparent #6800d2 transparent transparent;
  border-left-width: 0;
  display: inline-block;
  vertical-align: middle;
  margin-right: 0.75rem; }

.dropdown.menu > li.opens-left > .is-dropdown-submenu {
  top: 100%;
  right: 0;
  left: auto; }

.dropdown.menu > li.opens-right > .is-dropdown-submenu {
  top: 100%;
  right: auto;
  left: 0; }

[data-whatinput='mouse'] .dropdown.menu a {
  outline: 0; }

.dropdown.menu > li > a {
  background: transparent;
  padding: 0.3125rem 0.625rem 0.3125rem 0.625rem; }

.dropdown.menu > li.is-active > a {
  background: transparent;
  color: #6800d2; }

.no-js .dropdown.menu ul {
  display: none; }

.dropdown.menu .nested.is-dropdown-submenu {
  margin-right: 0;
  margin-left: 0; }

.dropdown.menu.vertical > li .is-dropdown-submenu {
  top: 0; }

.dropdown.menu.vertical > li.opens-left > .is-dropdown-submenu {
  top: 0;
  right: 100%;
  left: auto; }

.dropdown.menu.vertical > li.opens-right > .is-dropdown-submenu {
  right: auto;
  left: 100%; }

@media print, screen and (min-width: 40em) {
  .dropdown.menu.medium-horizontal > li.opens-left > .is-dropdown-submenu {
    top: 100%;
    right: 0;
    left: auto; }
  .dropdown.menu.medium-horizontal > li.opens-right > .is-dropdown-submenu {
    top: 100%;
    right: auto;
    left: 0; }
  .dropdown.menu.medium-vertical > li .is-dropdown-submenu {
    top: 0; }
  .dropdown.menu.medium-vertical > li.opens-left > .is-dropdown-submenu {
    top: 0;
    right: 100%;
    left: auto; }
  .dropdown.menu.medium-vertical > li.opens-right > .is-dropdown-submenu {
    right: auto;
    left: 100%; } }

@media print, screen and (min-width: 64em) {
  .dropdown.menu.large-horizontal > li.opens-left > .is-dropdown-submenu {
    top: 100%;
    right: 0;
    left: auto; }
  .dropdown.menu.large-horizontal > li.opens-right > .is-dropdown-submenu {
    top: 100%;
    right: auto;
    left: 0; }
  .dropdown.menu.large-vertical > li .is-dropdown-submenu {
    top: 0; }
  .dropdown.menu.large-vertical > li.opens-left > .is-dropdown-submenu {
    top: 0;
    right: 100%;
    left: auto; }
  .dropdown.menu.large-vertical > li.opens-right > .is-dropdown-submenu {
    right: auto;
    left: 100%; } }

.dropdown.menu.align-right .is-dropdown-submenu.first-sub {
  top: 100%;
  right: 0;
  left: auto; }

.is-dropdown-menu.vertical {
  width: 100px; }
  .is-dropdown-menu.vertical.align-right {
    float: right; }

.is-dropdown-submenu-parent {
  position: relative; }
  .is-dropdown-submenu-parent a::after {
    position: absolute;
    top: 50%;
    right: 5px;
    left: auto;
    margin-top: -6px; }
  .is-dropdown-submenu-parent.opens-inner > .is-dropdown-submenu {
    top: 100%;
    left: auto; }
  .is-dropdown-submenu-parent.opens-left > .is-dropdown-submenu {
    right: 100%;
    left: auto; }
  .is-dropdown-submenu-parent.opens-right > .is-dropdown-submenu {
    right: auto;
    left: 100%; }

.is-dropdown-submenu {
  position: absolute;
  top: 0;
  left: 100%;
  z-index: 1;
  display: none;
  min-width: 200px;
  border: 1px solid #cacaca;
  background: #fefefe; }
  .dropdown .is-dropdown-submenu a {
    padding: 0.3125rem 0.625rem 0.3125rem 0.625rem; }
  .is-dropdown-submenu .is-dropdown-submenu {
    margin-top: -1px; }
  .is-dropdown-submenu > li {
    width: 100%; }
  .is-dropdown-submenu.js-dropdown-active {
    display: block; }

.responsive-embed,
.flex-video {
  position: relative;
  height: 0;
  margin-bottom: 1rem;
  padding-bottom: 75%;
  overflow: hidden; }
  .responsive-embed iframe,
  .responsive-embed object,
  .responsive-embed embed,
  .responsive-embed video,
  .flex-video iframe,
  .flex-video object,
  .flex-video embed,
  .flex-video video {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%; }
  .responsive-embed.widescreen,
  .flex-video.widescreen {
    padding-bottom: 56.25%; }

.media-object {
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 1rem;
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap; }
  .media-object img {
    max-width: none; }
  @media screen and (max-width: 39.99875em) {
    .media-object.stack-for-small {
      -ms-flex-wrap: wrap;
          flex-wrap: wrap; } }

.media-object-section {
  -ms-flex: 0 1 auto;
      flex: 0 1 auto; }
  .media-object-section:first-child {
    padding-right: 1rem; }
  .media-object-section:last-child:not(:nth-child(2)) {
    padding-left: 1rem; }
  .media-object-section > :last-child {
    margin-bottom: 0; }
  @media screen and (max-width: 39.99875em) {
    .stack-for-small .media-object-section {
      padding: 0;
      padding-bottom: 1rem;
      -ms-flex-preferred-size: 100%;
          flex-basis: 100%;
      max-width: 100%; }
      .stack-for-small .media-object-section img {
        width: 100%; } }
  .media-object-section.main-section {
    -ms-flex: 1 1 0px;
        flex: 1 1 0px; }

.is-off-canvas-open {
  overflow: hidden; }

.js-off-canvas-overlay {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 11;
  width: 100%;
  height: 100%;
  transition: opacity 0.5s ease, visibility 0.5s ease;
  background: rgba(254, 254, 254, 0.25);
  opacity: 0;
  visibility: hidden;
  overflow: hidden; }
  .js-off-canvas-overlay.is-visible {
    opacity: 1;
    visibility: visible; }
  .js-off-canvas-overlay.is-closable {
    cursor: pointer; }
  .js-off-canvas-overlay.is-overlay-absolute {
    position: absolute; }
  .js-off-canvas-overlay.is-overlay-fixed {
    position: fixed; }

.off-canvas-wrapper {
  position: relative;
  overflow: hidden; }

.off-canvas {
  position: fixed;
  z-index: 12;
  transition: transform 0.5s ease;
  backface-visibility: hidden;
  background: #f2f2f2; }
  [data-whatinput='mouse'] .off-canvas {
    outline: 0; }
  .off-canvas.is-transition-push {
    z-index: 12; }
  .off-canvas.is-closed {
    visibility: hidden; }
  .off-canvas.is-transition-overlap {
    z-index: 13; }
    .off-canvas.is-transition-overlap.is-open {
      box-shadow: 0 0 10px rgba(10, 10, 10, 0.7); }
  .off-canvas.is-open {
    -ms-transform: translate(0, 0);
        transform: translate(0, 0); }

.off-canvas-absolute {
  position: absolute;
  z-index: 12;
  transition: transform 0.5s ease;
  backface-visibility: hidden;
  background: #f2f2f2; }
  [data-whatinput='mouse'] .off-canvas-absolute {
    outline: 0; }
  .off-canvas-absolute.is-transition-push {
    z-index: 12; }
  .off-canvas-absolute.is-closed {
    visibility: hidden; }
  .off-canvas-absolute.is-transition-overlap {
    z-index: 13; }
    .off-canvas-absolute.is-transition-overlap.is-open {
      box-shadow: 0 0 10px rgba(10, 10, 10, 0.7); }
  .off-canvas-absolute.is-open {
    -ms-transform: translate(0, 0);
        transform: translate(0, 0); }

.position-left {
  top: 0;
  left: 0;
  height: 100%;
  overflow-y: auto;
  width: 250px;
  -ms-transform: translateX(-250px);
      transform: translateX(-250px); }
  .off-canvas-content .off-canvas.position-left {
    -ms-transform: translateX(-250px);
        transform: translateX(-250px); }
    .off-canvas-content .off-canvas.position-left.is-transition-overlap.is-open {
      -ms-transform: translate(0, 0);
          transform: translate(0, 0); }
  .off-canvas-content.is-open-left.has-transition-push {
    -ms-transform: translateX(250px);
        transform: translateX(250px); }
  .position-left.is-transition-push {
    box-shadow: inset 0 0 0 0 rgba(10, 10, 10, 0.25); }

.position-right {
  top: 0;
  right: 0;
  height: 100%;
  overflow-y: auto;
  width: 250px;
  -ms-transform: translateX(250px);
      transform: translateX(250px); }
  .off-canvas-content .off-canvas.position-right {
    -ms-transform: translateX(250px);
        transform: translateX(250px); }
    .off-canvas-content .off-canvas.position-right.is-transition-overlap.is-open {
      -ms-transform: translate(0, 0);
          transform: translate(0, 0); }
  .off-canvas-content.is-open-right.has-transition-push {
    -ms-transform: translateX(-250px);
        transform: translateX(-250px); }
  .position-right.is-transition-push {
    box-shadow: inset 0 0 0 0 rgba(10, 10, 10, 0.25); }

.position-top {
  top: 0;
  left: 0;
  width: 100%;
  overflow-x: auto;
  height: 250px;
  -ms-transform: translateY(-250px);
      transform: translateY(-250px); }
  .off-canvas-content .off-canvas.position-top {
    -ms-transform: translateY(-250px);
        transform: translateY(-250px); }
    .off-canvas-content .off-canvas.position-top.is-transition-overlap.is-open {
      -ms-transform: translate(0, 0);
          transform: translate(0, 0); }
  .off-canvas-content.is-open-top.has-transition-push {
    -ms-transform: translateY(250px);
        transform: translateY(250px); }
  .position-top.is-transition-push {
    box-shadow: inset 0 0 0 0 rgba(10, 10, 10, 0.25); }

.position-bottom {
  bottom: 0;
  left: 0;
  width: 100%;
  overflow-x: auto;
  height: 250px;
  -ms-transform: translateY(250px);
      transform: translateY(250px); }
  .off-canvas-content .off-canvas.position-bottom {
    -ms-transform: translateY(250px);
        transform: translateY(250px); }
    .off-canvas-content .off-canvas.position-bottom.is-transition-overlap.is-open {
      -ms-transform: translate(0, 0);
          transform: translate(0, 0); }
  .off-canvas-content.is-open-bottom.has-transition-push {
    -ms-transform: translateY(-250px);
        transform: translateY(-250px); }
  .position-bottom.is-transition-push {
    box-shadow: inset 0 0 0 0 rgba(10, 10, 10, 0.25); }

.off-canvas-content {
  -ms-transform: none;
      transform: none;
  transition: transform 0.5s ease;
  backface-visibility: hidden; }
  .off-canvas-content.has-transition-push {
    -ms-transform: translate(0, 0);
        transform: translate(0, 0); }
  .off-canvas-content .off-canvas.is-open {
    -ms-transform: translate(0, 0);
        transform: translate(0, 0); }

@media print, screen and (min-width: 40em) {
  .position-left.reveal-for-medium {
    -ms-transform: none;
        transform: none;
    z-index: 12;
    transition: none;
    visibility: visible; }
    .position-left.reveal-for-medium .close-button {
      display: none; }
    .off-canvas-content .position-left.reveal-for-medium {
      -ms-transform: none;
          transform: none; }
    .off-canvas-content.has-reveal-left {
      margin-left: 250px; }
    .position-left.reveal-for-medium ~ .off-canvas-content {
      margin-left: 250px; }
  .position-right.reveal-for-medium {
    -ms-transform: none;
        transform: none;
    z-index: 12;
    transition: none;
    visibility: visible; }
    .position-right.reveal-for-medium .close-button {
      display: none; }
    .off-canvas-content .position-right.reveal-for-medium {
      -ms-transform: none;
          transform: none; }
    .off-canvas-content.has-reveal-right {
      margin-right: 250px; }
    .position-right.reveal-for-medium ~ .off-canvas-content {
      margin-right: 250px; }
  .position-top.reveal-for-medium {
    -ms-transform: none;
        transform: none;
    z-index: 12;
    transition: none;
    visibility: visible; }
    .position-top.reveal-for-medium .close-button {
      display: none; }
    .off-canvas-content .position-top.reveal-for-medium {
      -ms-transform: none;
          transform: none; }
    .off-canvas-content.has-reveal-top {
      margin-top: 250px; }
    .position-top.reveal-for-medium ~ .off-canvas-content {
      margin-top: 250px; }
  .position-bottom.reveal-for-medium {
    -ms-transform: none;
        transform: none;
    z-index: 12;
    transition: none;
    visibility: visible; }
    .position-bottom.reveal-for-medium .close-button {
      display: none; }
    .off-canvas-content .position-bottom.reveal-for-medium {
      -ms-transform: none;
          transform: none; }
    .off-canvas-content.has-reveal-bottom {
      margin-bottom: 250px; }
    .position-bottom.reveal-for-medium ~ .off-canvas-content {
      margin-bottom: 250px; } }

@media print, screen and (min-width: 64em) {
  .position-left.reveal-for-large {
    -ms-transform: none;
        transform: none;
    z-index: 12;
    transition: none;
    visibility: visible; }
    .position-left.reveal-for-large .close-button {
      display: none; }
    .off-canvas-content .position-left.reveal-for-large {
      -ms-transform: none;
          transform: none; }
    .off-canvas-content.has-reveal-left {
      margin-left: 250px; }
    .position-left.reveal-for-large ~ .off-canvas-content {
      margin-left: 250px; }
  .position-right.reveal-for-large {
    -ms-transform: none;
        transform: none;
    z-index: 12;
    transition: none;
    visibility: visible; }
    .position-right.reveal-for-large .close-button {
      display: none; }
    .off-canvas-content .position-right.reveal-for-large {
      -ms-transform: none;
          transform: none; }
    .off-canvas-content.has-reveal-right {
      margin-right: 250px; }
    .position-right.reveal-for-large ~ .off-canvas-content {
      margin-right: 250px; }
  .position-top.reveal-for-large {
    -ms-transform: none;
        transform: none;
    z-index: 12;
    transition: none;
    visibility: visible; }
    .position-top.reveal-for-large .close-button {
      display: none; }
    .off-canvas-content .position-top.reveal-for-large {
      -ms-transform: none;
          transform: none; }
    .off-canvas-content.has-reveal-top {
      margin-top: 250px; }
    .position-top.reveal-for-large ~ .off-canvas-content {
      margin-top: 250px; }
  .position-bottom.reveal-for-large {
    -ms-transform: none;
        transform: none;
    z-index: 12;
    transition: none;
    visibility: visible; }
    .position-bottom.reveal-for-large .close-button {
      display: none; }
    .off-canvas-content .position-bottom.reveal-for-large {
      -ms-transform: none;
          transform: none; }
    .off-canvas-content.has-reveal-bottom {
      margin-bottom: 250px; }
    .position-bottom.reveal-for-large ~ .off-canvas-content {
      margin-bottom: 250px; } }

@media print, screen and (min-width: 40em) {
  .off-canvas.in-canvas-for-medium {
    visibility: visible;
    height: auto;
    position: static;
    background: none;
    width: auto;
    overflow: visible;
    transition: none; }
    .off-canvas.in-canvas-for-medium.position-left, .off-canvas.in-canvas-for-medium.position-right, .off-canvas.in-canvas-for-medium.position-top, .off-canvas.in-canvas-for-medium.position-bottom {
      box-shadow: none;
      -ms-transform: none;
          transform: none; }
    .off-canvas.in-canvas-for-medium .close-button {
      display: none; } }

@media print, screen and (min-width: 64em) {
  .off-canvas.in-canvas-for-large {
    visibility: visible;
    height: auto;
    position: static;
    background: none;
    width: auto;
    overflow: visible;
    transition: none; }
    .off-canvas.in-canvas-for-large.position-left, .off-canvas.in-canvas-for-large.position-right, .off-canvas.in-canvas-for-large.position-top, .off-canvas.in-canvas-for-large.position-bottom {
      box-shadow: none;
      -ms-transform: none;
          transform: none; }
    .off-canvas.in-canvas-for-large .close-button {
      display: none; } }

.pagination {
  margin-left: 0;
  margin-bottom: 1rem; }
  .pagination::before, .pagination::after {
    display: table;
    content: ' ';
    -ms-flex-preferred-size: 0;
        flex-basis: 0;
    -ms-flex-order: 1;
        order: 1; }
  .pagination::after {
    clear: both; }
  .pagination li {
    margin-right: 0.0625rem;
    border-radius: 1.25rem;
    font-size: 0.875rem;
    display: none; }
    .pagination li:last-child, .pagination li:first-child {
      display: inline-block; }
    @media print, screen and (min-width: 40em) {
      .pagination li {
        display: inline-block; } }
  .pagination a,
  .pagination button {
    display: block;
    padding: 0.1875rem 0.625rem;
    border-radius: 1.25rem;
    color: #0a0a0a; }
    .pagination a:hover,
    .pagination button:hover {
      background: #f2f2f2; }
  .pagination .current {
    padding: 0.1875rem 0.625rem;
    background: #6800d2;
    color: #fefefe;
    cursor: default; }
  .pagination .disabled {
    padding: 0.1875rem 0.625rem;
    color: #cacaca;
    cursor: not-allowed; }
    .pagination .disabled:hover {
      background: transparent; }
  .pagination .ellipsis::after {
    padding: 0.1875rem 0.625rem;
    content: '\2026';
    color: #0a0a0a; }

.pagination-previous a::before,
.pagination-previous.disabled::before {
  display: inline-block;
  margin-right: 0.5rem;
  content: '\00ab'; }

.pagination-next a::after,
.pagination-next.disabled::after {
  display: inline-block;
  margin-left: 0.5rem;
  content: '\00bb'; }

.sticky-container {
  position: relative; }

.sticky {
  position: relative;
  z-index: 0;
  transform: translate3d(0, 0, 0); }

.sticky.is-stuck {
  position: fixed;
  z-index: 5;
  width: 100%; }
  .sticky.is-stuck.is-at-top {
    top: 0; }
  .sticky.is-stuck.is-at-bottom {
    bottom: 0; }

.sticky.is-anchored {
  position: relative;
  right: auto;
  left: auto; }
  .sticky.is-anchored.is-at-bottom {
    bottom: 0; }

html.is-reveal-open {
  position: fixed;
  width: 100%;
  overflow-y: hidden; }
  html.is-reveal-open.zf-has-scroll {
    overflow-y: scroll; }
  html.is-reveal-open body {
    overflow-y: hidden; }

.reveal-overlay {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1005;
  display: none;
  background-color: rgba(10, 10, 10, 0.45);
  overflow-y: auto; }

.reveal {
  z-index: 1006;
  backface-visibility: hidden;
  display: none;
  padding: 1rem;
  border: 0;
  border-radius: 0;
  background-color: #fefefe;
  position: relative;
  top: 100px;
  margin-right: auto;
  margin-left: auto;
  overflow-y: auto; }
  [data-whatinput='mouse'] .reveal {
    outline: 0; }
  @media print, screen and (min-width: 40em) {
    .reveal {
      min-height: 0; } }
  .reveal .column, .reveal .columns {
    min-width: 0; }
  .reveal > :last-child {
    margin-bottom: 0; }
  @media print, screen and (min-width: 40em) {
    .reveal {
      width: 600px;
      max-width: 75rem; } }
  .reveal.collapse {
    padding: 0; }
  @media print, screen and (min-width: 40em) {
    .reveal.tiny {
      width: 30%;
      max-width: 75rem; } }
  @media print, screen and (min-width: 40em) {
    .reveal.small {
      width: 50%;
      max-width: 75rem; } }
  @media print, screen and (min-width: 40em) {
    .reveal.large {
      width: 90%;
      max-width: 75rem; } }
  .reveal.full {
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    max-width: none;
    height: 100%;
    min-height: 100%;
    margin-left: 0;
    border: 0;
    border-radius: 0; }
  @media screen and (max-width: 39.99875em) {
    .reveal {
      top: 0;
      right: 0;
      bottom: 0;
      left: 0;
      width: 100%;
      max-width: none;
      height: 100%;
      min-height: 100%;
      margin-left: 0;
      border: 0;
      border-radius: 0; } }
  .reveal.without-overlay {
    position: fixed; }

table {
  border-collapse: collapse;
  width: 100%;
  margin-bottom: 1rem;
  border-radius: 1.25rem; }
  thead,
  tbody,
  tfoot {
    border: 1px solid #f1f1f1;
    background-color: #fefefe; }
  caption {
    padding: 0.5rem 0.625rem 0.625rem;
    font-weight: 700; }
  thead {
    background: #f8f8f8;
    color: #0a0a0a; }
  tfoot {
    background: #f1f1f1;
    color: #0a0a0a; }
  thead tr,
  tfoot tr {
    background: transparent; }
  thead th,
  thead td,
  tfoot th,
  tfoot td {
    padding: 0.5rem 0.625rem 0.625rem;
    font-weight: 700;
    text-align: left; }
  tbody th,
  tbody td {
    padding: 0.5rem 0.625rem 0.625rem; }
  tbody tr:nth-child(even) {
    border-bottom: 0;
    background-color: #f1f1f1; }
  table.unstriped tbody {
    background-color: #fefefe; }
    table.unstriped tbody tr {
      border-bottom: 0;
      border-bottom: 1px solid #f1f1f1;
      background-color: #fefefe; }

@media screen and (max-width: 63.99875em) {
  table.stack thead {
    display: none; }
  table.stack tfoot {
    display: none; }
  table.stack tr,
  table.stack th,
  table.stack td {
    display: block; }
  table.stack td {
    border-top: 0; } }

table.scroll {
  display: block;
  width: 100%;
  overflow-x: auto; }

table.hover thead tr:hover {
  background-color: #f3f3f3; }

table.hover tfoot tr:hover {
  background-color: #ececec; }

table.hover tbody tr:hover {
  background-color: #f9f9f9; }

table.hover:not(.unstriped) tr:nth-of-type(even):hover {
  background-color: #ececec; }

.table-scroll {
  overflow-x: auto; }

.tabs {
  margin: 0;
  border: 1px solid 0;
  background: transparent;
  list-style-type: none; }
  .tabs::before, .tabs::after {
    display: table;
    content: ' ';
    -ms-flex-preferred-size: 0;
        flex-basis: 0;
    -ms-flex-order: 1;
        order: 1; }
  .tabs::after {
    clear: both; }

.tabs.vertical > li {
  display: block;
  float: none;
  width: auto; }

.tabs.simple > li > a {
  padding: 0; }
  .tabs.simple > li > a:hover {
    background: transparent; }

.tabs.primary {
  background: #6800d2; }
  .tabs.primary > li > a {
    color: #fefefe; }
    .tabs.primary > li > a:hover, .tabs.primary > li > a:focus {
      background: #6300c8; }

.tabs-title {
  float: left; }
  .tabs-title > a {
    display: block;
    padding: 1.25rem 1.5rem;
    font-size: 0.75rem;
    line-height: 1;
    color: #6800d2; }
    [data-whatinput='mouse'] .tabs-title > a {
      outline: 0; }
    .tabs-title > a:hover {
      background: transparent;
      color: #5900b5; }
    .tabs-title > a:focus, .tabs-title > a[aria-selected='true'] {
      background: transparent;
      color: #6800d2; }

.tabs-content {
  border: 1px solid 0;
  border-top: 0;
  background: transparent;
  color: #0a0a0a;
  transition: all 0.5s ease; }

.tabs-content.vertical {
  border: 1px solid 0;
  border-left: 0; }

.tabs-panel {
  display: none;
  padding: 1rem; }
  .tabs-panel.is-active {
    display: block; }

.title-bar {
  padding: 0.5rem;
  background: #fefefe;
  color: #0a0a0a;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: start;
      justify-content: flex-start;
  -ms-flex-align: center;
      align-items: center; }
  .title-bar .menu-icon {
    margin-left: 0.25rem;
    margin-right: 0.25rem; }

.title-bar-left,
.title-bar-right {
  -ms-flex: 1 1 0px;
      flex: 1 1 0px; }

.title-bar-right {
  text-align: right; }

.title-bar-title {
  display: inline-block;
  vertical-align: middle;
  font-weight: bold; }

.top-bar {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
  -ms-flex-pack: justify;
      justify-content: space-between;
  -ms-flex-align: center;
      align-items: center;
  padding: 1.875rem;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap; }
  .top-bar,
  .top-bar ul {
    background-color: #fefefe; }
  .top-bar input {
    max-width: 200px;
    margin-right: 1rem; }
  .top-bar .input-group-field {
    width: 100%;
    margin-right: 0; }
  .top-bar input.button, .top-bar .wp-block-button input.wp-block-button__link, .wp-block-button .top-bar input.wp-block-button__link {
    width: auto; }
  .top-bar .top-bar-left,
  .top-bar .top-bar-right {
    -ms-flex: 0 0 100%;
        flex: 0 0 100%;
    max-width: 100%; }
  @media print, screen and (min-width: 40em) {
    .top-bar {
      -ms-flex-wrap: nowrap;
          flex-wrap: nowrap; }
      .top-bar .top-bar-left {
        -ms-flex: 1 1 auto;
            flex: 1 1 auto;
        margin-right: auto; }
      .top-bar .top-bar-right {
        -ms-flex: 0 1 auto;
            flex: 0 1 auto;
        margin-left: auto; } }
  @media screen and (max-width: 63.99875em) {
    .top-bar.stacked-for-medium {
      -ms-flex-wrap: wrap;
          flex-wrap: wrap; }
      .top-bar.stacked-for-medium .top-bar-left,
      .top-bar.stacked-for-medium .top-bar-right {
        -ms-flex: 0 0 100%;
            flex: 0 0 100%;
        max-width: 100%; } }
  @media screen and (max-width: 74.99875em) {
    .top-bar.stacked-for-large {
      -ms-flex-wrap: wrap;
          flex-wrap: wrap; }
      .top-bar.stacked-for-large .top-bar-left,
      .top-bar.stacked-for-large .top-bar-right {
        -ms-flex: 0 0 100%;
            flex: 0 0 100%;
        max-width: 100%; } }

.top-bar-title {
  -ms-flex: 0 0 auto;
      flex: 0 0 auto;
  margin: 0.5rem 1rem 0.5rem 0; }

.top-bar-left,
.top-bar-right {
  -ms-flex: 0 0 auto;
      flex: 0 0 auto; }

.hide {
  display: none !important; }

.invisible {
  visibility: hidden; }

@media screen and (max-width: 39.99875em) {
  .hide-for-small-only {
    display: none !important; } }

@media screen and (max-width: 0em), screen and (min-width: 40em) {
  .show-for-small-only {
    display: none !important; } }

@media print, screen and (min-width: 40em) {
  .hide-for-medium {
    display: none !important; } }

@media screen and (max-width: 39.99875em) {
  .show-for-medium {
    display: none !important; } }

@media screen and (min-width: 40em) and (max-width: 63.99875em) {
  .hide-for-medium-only {
    display: none !important; } }

@media screen and (max-width: 39.99875em), screen and (min-width: 64em) {
  .show-for-medium-only {
    display: none !important; } }

@media print, screen and (min-width: 64em) {
  .hide-for-large {
    display: none !important; } }

@media screen and (max-width: 63.99875em) {
  .show-for-large {
    display: none !important; } }

@media screen and (min-width: 64em) and (max-width: 74.99875em) {
  .hide-for-large-only {
    display: none !important; } }

@media screen and (max-width: 63.99875em), screen and (min-width: 75em) {
  .show-for-large-only {
    display: none !important; } }

.show-for-sr,
.show-on-focus {
  position: absolute !important;
  width: 1px;
  height: 1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0; }

.show-on-focus:active, .show-on-focus:focus {
  position: static !important;
  width: auto;
  height: auto;
  overflow: visible;
  clip: auto;
  white-space: normal; }

.show-for-landscape,
.hide-for-portrait {
  display: block !important; }
  @media screen and (orientation: landscape) {
    .show-for-landscape,
    .hide-for-portrait {
      display: block !important; } }
  @media screen and (orientation: portrait) {
    .show-for-landscape,
    .hide-for-portrait {
      display: none !important; } }

.hide-for-landscape,
.show-for-portrait {
  display: none !important; }
  @media screen and (orientation: landscape) {
    .hide-for-landscape,
    .show-for-portrait {
      display: none !important; } }
  @media screen and (orientation: portrait) {
    .hide-for-landscape,
    .show-for-portrait {
      display: block !important; } }

.align-left {
  -ms-flex-pack: start;
      justify-content: flex-start; }

.align-right {
  -ms-flex-pack: end;
      justify-content: flex-end; }

.align-center {
  -ms-flex-pack: center;
      justify-content: center; }

.align-justify {
  -ms-flex-pack: justify;
      justify-content: space-between; }

.align-spaced {
  -ms-flex-pack: distribute;
      justify-content: space-around; }

.align-left.vertical.menu > li > a {
  -ms-flex-pack: start;
      justify-content: flex-start; }

.align-right.vertical.menu > li > a {
  -ms-flex-pack: end;
      justify-content: flex-end; }

.align-center.vertical.menu > li > a {
  -ms-flex-pack: center;
      justify-content: center; }

.align-top {
  -ms-flex-align: start;
      align-items: flex-start; }

.align-self-top {
  -ms-flex-item-align: start;
      align-self: flex-start; }

.align-bottom {
  -ms-flex-align: end;
      align-items: flex-end; }

.align-self-bottom {
  -ms-flex-item-align: end;
      align-self: flex-end; }

.align-middle {
  -ms-flex-align: center;
      align-items: center; }

.align-self-middle {
  -ms-flex-item-align: center;
      -ms-grid-row-align: center;
      align-self: center; }

.align-stretch {
  -ms-flex-align: stretch;
      align-items: stretch; }

.align-self-stretch {
  -ms-flex-item-align: stretch;
      -ms-grid-row-align: stretch;
      align-self: stretch; }

.align-center-middle {
  -ms-flex-pack: center;
      justify-content: center;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-line-pack: center;
      align-content: center; }

.small-order-1 {
  -ms-flex-order: 1;
      order: 1; }

.small-order-2 {
  -ms-flex-order: 2;
      order: 2; }

.small-order-3 {
  -ms-flex-order: 3;
      order: 3; }

.small-order-4 {
  -ms-flex-order: 4;
      order: 4; }

.small-order-5 {
  -ms-flex-order: 5;
      order: 5; }

.small-order-6 {
  -ms-flex-order: 6;
      order: 6; }

@media print, screen and (min-width: 40em) {
  .medium-order-1 {
    -ms-flex-order: 1;
        order: 1; }
  .medium-order-2 {
    -ms-flex-order: 2;
        order: 2; }
  .medium-order-3 {
    -ms-flex-order: 3;
        order: 3; }
  .medium-order-4 {
    -ms-flex-order: 4;
        order: 4; }
  .medium-order-5 {
    -ms-flex-order: 5;
        order: 5; }
  .medium-order-6 {
    -ms-flex-order: 6;
        order: 6; } }

@media print, screen and (min-width: 64em) {
  .large-order-1 {
    -ms-flex-order: 1;
        order: 1; }
  .large-order-2 {
    -ms-flex-order: 2;
        order: 2; }
  .large-order-3 {
    -ms-flex-order: 3;
        order: 3; }
  .large-order-4 {
    -ms-flex-order: 4;
        order: 4; }
  .large-order-5 {
    -ms-flex-order: 5;
        order: 5; }
  .large-order-6 {
    -ms-flex-order: 6;
        order: 6; } }

.flex-container {
  display: -ms-flexbox;
  display: flex; }

.flex-child-auto {
  -ms-flex: 1 1 auto;
      flex: 1 1 auto; }

.flex-child-grow {
  -ms-flex: 1 0 auto;
      flex: 1 0 auto; }

.flex-child-shrink {
  -ms-flex: 0 1 auto;
      flex: 0 1 auto; }

.flex-dir-row {
  -ms-flex-direction: row;
      flex-direction: row; }

.flex-dir-row-reverse {
  -ms-flex-direction: row-reverse;
      flex-direction: row-reverse; }

.flex-dir-column {
  -ms-flex-direction: column;
      flex-direction: column; }

.flex-dir-column-reverse {
  -ms-flex-direction: column-reverse;
      flex-direction: column-reverse; }

@media print, screen and (min-width: 40em) {
  .medium-flex-container {
    display: -ms-flexbox;
    display: flex; }
  .medium-flex-child-auto {
    -ms-flex: 1 1 auto;
        flex: 1 1 auto; }
  .medium-flex-child-grow {
    -ms-flex: 1 0 auto;
        flex: 1 0 auto; }
  .medium-flex-child-shrink {
    -ms-flex: 0 1 auto;
        flex: 0 1 auto; }
  .medium-flex-dir-row {
    -ms-flex-direction: row;
        flex-direction: row; }
  .medium-flex-dir-row-reverse {
    -ms-flex-direction: row-reverse;
        flex-direction: row-reverse; }
  .medium-flex-dir-column {
    -ms-flex-direction: column;
        flex-direction: column; }
  .medium-flex-dir-column-reverse {
    -ms-flex-direction: column-reverse;
        flex-direction: column-reverse; } }

@media print, screen and (min-width: 64em) {
  .large-flex-container {
    display: -ms-flexbox;
    display: flex; }
  .large-flex-child-auto {
    -ms-flex: 1 1 auto;
        flex: 1 1 auto; }
  .large-flex-child-grow {
    -ms-flex: 1 0 auto;
        flex: 1 0 auto; }
  .large-flex-child-shrink {
    -ms-flex: 0 1 auto;
        flex: 0 1 auto; }
  .large-flex-dir-row {
    -ms-flex-direction: row;
        flex-direction: row; }
  .large-flex-dir-row-reverse {
    -ms-flex-direction: row-reverse;
        flex-direction: row-reverse; }
  .large-flex-dir-column {
    -ms-flex-direction: column;
        flex-direction: column; }
  .large-flex-dir-column-reverse {
    -ms-flex-direction: column-reverse;
        flex-direction: column-reverse; } }

/*
  My custom styles:
  Add your scss files below to structure your project styles
*/
.select2-container {
  box-sizing: border-box;
  display: inline-block;
  margin: 0;
  position: relative;
  vertical-align: middle; }
  .select2-container .select2-selection--single {
    box-sizing: border-box;
    cursor: pointer;
    display: block;
    height: 2.5rem;
    -ms-user-select: none;
        user-select: none;
    -webkit-user-select: none; }
    .select2-container .select2-selection--single .select2-selection__rendered {
      display: block;
      padding-left: 8px;
      padding-right: 20px;
      overflow: hidden;
      text-overflow: ellipsis;
      white-space: nowrap; }
    .select2-container .select2-selection--single .select2-selection__clear {
      position: relative; }
  .select2-container[dir="rtl"] .select2-selection--single .select2-selection__rendered {
    padding-right: 8px;
    padding-left: 20px; }
  .select2-container .select2-selection--multiple {
    box-sizing: border-box;
    cursor: pointer;
    display: block;
    min-height: 32px;
    -ms-user-select: none;
        user-select: none;
    -webkit-user-select: none; }
    .select2-container .select2-selection--multiple .select2-selection__rendered {
      display: inline-block;
      overflow: hidden;
      padding-left: 8px;
      text-overflow: ellipsis;
      white-space: nowrap; }
  .select2-container .select2-search--inline {
    float: left; }
    .select2-container .select2-search--inline .select2-search__field {
      box-sizing: border-box;
      border: none;
      font-size: 100%;
      margin-top: 5px;
      padding: 0; }
      .select2-container .select2-search--inline .select2-search__field::-webkit-search-cancel-button {
        -webkit-appearance: none; }

.select2-dropdown {
  background-color: white;
  border-radius: 4px;
  box-sizing: border-box;
  display: block;
  position: absolute;
  left: -100000px;
  width: 100%;
  z-index: 4; }

.select2-results {
  display: block; }

.select2-results__options {
  list-style: none;
  margin: 0;
  padding: 0; }

.select2-results__option {
  padding: 6px;
  -ms-user-select: none;
      user-select: none;
  -webkit-user-select: none; }
  .select2-results__option[aria-selected] {
    cursor: pointer; }

.select2-container--open .select2-dropdown {
  left: 0; }

.select2-container--open .select2-dropdown--above {
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0; }

.select2-container--open .select2-dropdown--below {
  border-top: none;
  border-top-left-radius: 0;
  border-top-right-radius: 0; }

.select2-search--dropdown {
  display: block;
  padding: 4px; }
  .select2-search--dropdown .select2-search__field {
    padding: 4px;
    width: 100%;
    box-sizing: border-box; }
    .select2-search--dropdown .select2-search__field::-webkit-search-cancel-button {
      -webkit-appearance: none; }
  .select2-search--dropdown.select2-search--hide {
    display: none; }

.select2-close-mask {
  border: 0;
  margin: 0;
  padding: 0;
  display: block;
  position: fixed;
  left: 0;
  top: 0;
  min-height: 100%;
  min-width: 100%;
  height: auto;
  width: auto;
  opacity: 0;
  z-index: 99;
  background-color: #fff;
  filter: alpha(opacity=0); }

.select2-hidden-accessible {
  border: 0 !important;
  clip: rect(0 0 0 0) !important;
  height: 1px !important;
  margin: -1px !important;
  overflow: hidden !important;
  padding: 0 !important;
  position: absolute !important;
  width: 1px !important; }

.select2-container--default .select2-selection--single {
  background-color: #fefefe;
  border-bottom: 1px solid #f2f2f2;
  border-radius: 0.625rem;
  transition: opacity 0.5s ease-in-out; }
  .select2-container--default .select2-selection--single:focus {
    outline: none; }
  .select2-container--default .select2-selection--single .select2-selection__rendered {
    color: #444;
    font-size: 1rem;
    font-weight: 500;
    line-height: 2.5rem;
    padding-left: 1.25rem; }
    .select2-container--default .select2-selection--single .select2-selection__rendered:focus {
      outline: none; }
  .select2-container--default .select2-selection--single .select2-selection__clear {
    cursor: pointer;
    float: right;
    font-weight: bold; }
  .select2-container--default .select2-selection--single .select2-selection__placeholder {
    color: #999; }
  .select2-container--default .select2-selection--single .select2-selection__arrow {
    height: 1.25rem;
    position: absolute;
    top: 0;
    right: 0.625rem;
    width: 1.25rem; }
    .select2-container--default .select2-selection--single .select2-selection__arrow b:after {
      content: "";
      display: inline-block;
      width: 0.625rem;
      height: 0.625rem;
      margin-left: 0.25rem;
      margin-top: -0.1875rem;
      vertical-align: middle;
      border-right: 1px solid #6800d2;
      border-bottom: 1px solid #6800d2;
      -ms-transform-origin: 0 center;
          transform-origin: 0 center;
      -ms-transform: rotate(45deg);
          transform: rotate(45deg); }

.select2-container--default[dir="rtl"] .select2-selection--single .select2-selection__clear {
  float: left; }

.select2-container--default[dir="rtl"] .select2-selection--single .select2-selection__arrow {
  left: 1px;
  right: auto; }

.select2-container--default.select2-container--disabled .select2-selection--single {
  background-color: #eee;
  cursor: default;
  opacity: 0.5; }
  .select2-container--default.select2-container--disabled .select2-selection--single .select2-selection__clear {
    display: none; }

.select2-container--default.select2-container--open .select2-selection--single .select2-selection__arrow b:after {
  margin-top: 0.1875rem;
  border-right: 0;
  border-bottom: 0;
  border-top: 1px solid #6800d2;
  border-left: 1px solid #6800d2; }

.select2-container--default .select2-selection--multiple {
  background-color: #fefefe;
  border: 1px solid rgba(202, 202, 202, 0);
  border-radius: 0;
  cursor: text; }
  .select2-container--default .select2-selection--multiple:focus {
    outline: none;
    border: 1px solid #cacaca; }
  .select2-container--default .select2-selection--multiple .select2-selection__rendered {
    box-sizing: border-box;
    font-size: 1rem;
    list-style: none;
    margin: 0;
    padding: 0 10px;
    width: 100%; }
    .select2-container--default .select2-selection--multiple .select2-selection__rendered li {
      list-style: none; }
    .select2-container--default .select2-selection--multiple .select2-selection__rendered:focus {
      outline: none; }
  .select2-container--default .select2-selection--multiple .select2-selection__placeholder {
    color: #999;
    margin-top: 5px;
    float: left; }
  .select2-container--default .select2-selection--multiple .select2-selection__clear {
    cursor: pointer;
    float: right;
    font-weight: bold;
    margin-top: 5px;
    margin-right: 10px; }
  .select2-container--default .select2-selection--multiple .select2-selection__choice {
    background-color: #6800d2;
    cursor: default;
    float: left;
    margin-right: 5px;
    margin-top: 12px;
    min-height: 36px;
    padding: 0 5px; }
  .select2-container--default .select2-selection--multiple .select2-selection__choice__remove {
    color: #b369ff;
    cursor: pointer;
    font-size: 1.75rem;
    line-height: 1;
    display: inline-block;
    font-weight: bold;
    margin-right: 2px;
    position: relative;
    top: 2px; }
    .select2-container--default .select2-selection--multiple .select2-selection__choice__remove:hover {
      color: #fefefe; }

.select2-container--default[dir="rtl"] .select2-selection--multiple .select2-selection__choice, .select2-container--default[dir="rtl"] .select2-selection--multiple .select2-selection__placeholder, .select2-container--default[dir="rtl"] .select2-selection--multiple .select2-search--inline {
  float: right; }

.select2-container--default[dir="rtl"] .select2-selection--multiple .select2-selection__choice {
  margin-left: 5px;
  margin-right: auto; }

.select2-container--default[dir="rtl"] .select2-selection--multiple .select2-selection__choice__remove {
  margin-left: 2px;
  margin-right: auto; }

.select2-container--default.select2-container--focus .select2-selection--multiple {
  border: solid black 1px;
  outline: 0; }

.select2-container--default.select2-container--disabled .select2-selection--multiple {
  background-color: #eee;
  cursor: default; }

.select2-container--default.select2-container--disabled .select2-selection__choice__remove {
  display: none; }

.select2-container--default.select2-container--open.select2-container--above .select2-selection--single, .select2-container--default.select2-container--open.select2-container--above .select2-selection--multiple {
  border-top-left-radius: 0;
  border-top-right-radius: 0; }

.select2-container--default.select2-container--open.select2-container--below .select2-selection--single, .select2-container--default.select2-container--open.select2-container--below .select2-selection--multiple {
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0; }

.select2-container--default .select2-search--inline .select2-search__field {
  background: transparent;
  border: none;
  outline: 0;
  box-shadow: none;
  -webkit-appearance: textfield;
  margin-bottom: 0;
  height: auto;
  margin-top: 12px; }

.select2-container--default .select2-results > .select2-results__options {
  max-height: 200px;
  overflow-y: auto; }

.select2-container--default .select2-results__option {
  padding: 0.375rem 1.25rem; }
  .select2-container--default .select2-results__option[role=group] {
    padding: 0; }
  .select2-container--default .select2-results__option[aria-disabled=true] {
    color: #999; }
  .select2-container--default .select2-results__option[aria-selected=true] {
    background-color: #ddd; }
  .select2-container--default .select2-results__option .select2-results__option {
    padding-left: 1em; }
    .select2-container--default .select2-results__option .select2-results__option .select2-results__group {
      padding-left: 0; }
    .select2-container--default .select2-results__option .select2-results__option .select2-results__option {
      margin-left: -1em;
      padding-left: 2em; }
      .select2-container--default .select2-results__option .select2-results__option .select2-results__option .select2-results__option {
        margin-left: -2em;
        padding-left: 3em; }
        .select2-container--default .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option {
          margin-left: -3em;
          padding-left: 4em; }
          .select2-container--default .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option {
            margin-left: -4em;
            padding-left: 5em; }
            .select2-container--default .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option {
              margin-left: -5em;
              padding-left: 6em; }

.select2-container--default .select2-results__option--highlighted[aria-selected] {
  background-color: #fbe200; }

.select2-container--default .select2-results__group {
  cursor: default;
  display: block;
  padding: 6px; }

/* Slider */
.slick-slider {
  position: relative;
  display: block;
  box-sizing: border-box;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent; }

.slick-list {
  position: relative;
  overflow: hidden;
  display: block;
  margin: 0;
  padding: 0; }
  .slick-list:focus {
    outline: none; }
  .slick-list.dragging {
    cursor: pointer;
    cursor: hand; }

.slick-slider .slick-track,
.slick-slider .slick-list {
  -ms-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0); }

.slick-track {
  position: relative;
  left: 0;
  top: 0;
  display: block; }
  .slick-track:before, .slick-track:after {
    content: "";
    display: table; }
  .slick-track:after {
    clear: both; }
  .slick-loading .slick-track {
    visibility: hidden; }

.slick-slide {
  float: left;
  height: 100%;
  min-height: 1px;
  display: none; }
  [dir="rtl"] .slick-slide {
    float: right; }
  .slick-slide img {
    display: block; }
  .slick-slide.slick-loading img {
    display: none; }
  .slick-slide.dragging img {
    pointer-events: none; }
  .slick-initialized .slick-slide {
    display: block; }
  .slick-loading .slick-slide {
    visibility: hidden; }
  .slick-vertical .slick-slide {
    display: block;
    height: auto;
    border: 1px solid transparent; }

.slick-arrow.slick-hidden {
  display: none; }

/* Slider */
.slick-list {
  z-index: 3; }
  .slick-loading .slick-list {
    background: #fff url(//www.telsis.com/wp-content/themes/gamma/dist/assets/css/../images/ajax-loader.gif) center center no-repeat; }

/* Icons */
/* Arrows */
.slick-prev,
.slick-next {
  position: absolute;
  top: 0;
  z-index: 4;
  display: block;
  height: 60px;
  width: 60px;
  line-height: 0px;
  font-size: 0px;
  cursor: pointer;
  background: #6800d2;
  color: #fefefe;
  padding: 0;
  border: none;
  outline: none; }
  @media print, screen and (min-width: 40em) {
    .slick-prev,
    .slick-next {
      top: auto;
      bottom: 30px; } }
  .slick-prev:hover, .slick-prev:focus,
  .slick-next:hover,
  .slick-next:focus {
    outline: none; }
    .slick-prev:hover:before, .slick-prev:focus:before,
    .slick-next:hover:before,
    .slick-next:focus:before {
      opacity: 1; }
  .slick-prev.slick-disabled:before,
  .slick-next.slick-disabled:before {
    opacity: 0.25; }
  .slick-prev:before,
  .slick-next:before {
    font-family: "Font Awesome 5 Free";
    font-size: 20px;
    font-weight: 700;
    line-height: 1;
    color: #fefefe;
    opacity: 0.85;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale; }

.slick-prev {
  right: 90px; }
  @media print, screen and (min-width: 40em) {
    .slick-prev {
      right: auto;
      left: 33.75rem; } }
  @media screen and (min-width: 75em) {
    .slick-prev {
      left: 41.875rem; } }
  .slick-prev:before {
    content: "";
    display: inline-block;
    width: 0.5625rem;
    height: 0.5625rem;
    vertical-align: middle;
    border-top: 1px solid #fefefe;
    border-left: 1px solid #fefefe;
    -ms-transform-origin: center;
        transform-origin: center;
    -ms-transform: rotate(-45deg);
        transform: rotate(-45deg); }
    [dir="rtl"] .slick-prev:before {
      border-top: 1px solid #fefefe;
      border-right: 1px solid #fefefe;
      border-left: transparent;
      -ms-transform: rotate(45deg);
          transform: rotate(45deg); }

.slick-next {
  right: 30px; }
  @media print, screen and (min-width: 40em) {
    .slick-next {
      right: auto;
      left: 37.5rem; } }
  @media screen and (min-width: 75em) {
    .slick-next {
      left: 45.625rem; } }
  .slick-next:after {
    content: "";
    display: block;
    position: absolute;
    left: 0;
    top: 50%;
    -ms-transform: translateY(-50%);
        transform: translateY(-50%);
    height: 30px;
    width: 1px;
    background: #fefefe;
    z-index: 2; }
  .slick-next:before {
    content: "";
    display: inline-block;
    width: 0.5625rem;
    height: 0.5625rem;
    vertical-align: middle;
    border-top: 1px solid #fefefe;
    border-right: 1px solid #fefefe;
    -ms-transform-origin: center;
        transform-origin: center;
    -ms-transform: rotate(45deg);
        transform: rotate(45deg); }
    [dir="rtl"] .slick-next:before {
      border-top: 1px solid #fefefe;
      border-left: 1px solid #fefefe;
      border-right: transparent;
      -ms-transform: rotate(45deg);
          transform: rotate(45deg); }

/* Dots */
.slick-dots {
  position: absolute;
  z-index: 3;
  bottom: 0.625rem;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: row;
      flex-direction: row;
  -ms-flex-pack: start;
      justify-content: flex-start;
  -ms-flex-line-pack: end;
      align-content: flex-end;
  list-style: none;
  margin: 0;
  left: auto;
  right: 0;
  margin-left: 0.5rem;
  margin-right: 0.5rem; }
  @media print, screen and (min-width: 40em) {
    .slick-dots {
      bottom: 3.125rem;
      margin-left: 0.8125rem;
      margin-right: 0.8125rem; } }
  .slick-dots li {
    position: relative;
    display: inline-block;
    margin: 0 2px;
    padding: 0;
    cursor: pointer; }
    .slick-dots li:before {
      display: none; }
    .slick-dots li button {
      border: 1px solid #6800d2;
      background: transparent;
      display: block;
      height: 10px;
      width: 10px;
      border-radius: 5px;
      outline: none;
      line-height: 0px;
      font-size: 0px;
      color: transparent;
      cursor: pointer; }
      .slick-dots li button:hover, .slick-dots li button:focus {
        outline: none;
        background: #6800d2;
        opacity: 1; }
    .slick-dots li.slick-active button {
      background: #6800d2; }

.screen-reader-text {
  clip: rect(1px, 1px, 1px, 1px);
  position: absolute !important;
  height: 1px;
  width: 1px;
  overflow: hidden; }

.screen-reader-text:focus {
  background-color: #f1f1f1;
  border-radius: 3px;
  box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
  clip: auto !important;
  color: #21759b;
  display: block;
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: bold;
  height: auto;
  left: 5px;
  line-height: normal;
  padding: 15px 23px 14px;
  text-decoration: none;
  top: 5px;
  width: auto;
  z-index: 100000; }

#wpadminbar {
  position: fixed !important; }

body.admin-bar.f-topbar-fixed .sticky.fixed {
  margin-top: 2rem; }

body.admin-bar.offcanvas .off-canvas.is-open {
  top: 2.875rem; }
  @media screen and (min-width: 48.9375em) {
    body.admin-bar.offcanvas .off-canvas.is-open {
      top: 2rem; } }

.wp-caption > figcaption {
  max-width: 100%;
  font-size: 0.8rem;
  color: #999;
  padding: 0.25rem 0; }

p.wp-caption-text {
  font-size: 90%;
  color: #666;
  padding: 0.625rem 0; }

.alignleft {
  float: left;
  padding-right: 1rem;
  margin: 0; }

.alignright {
  float: right;
  padding-left: 1rem;
  margin: 0; }

.aligncenter {
  display: block;
  margin-left: auto;
  margin-right: auto; }

.gallery {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-flow: row wrap;
      flex-flow: row wrap;
  margin-right: -0.625rem;
  margin-left: -0.625rem; }
  @media print, screen and (min-width: 40em) {
    .gallery {
      margin-right: -0.9375rem;
      margin-left: -0.9375rem; } }
  .gallery.gallery-columns-1 > .gallery-item {
    width: calc(50% - 1.25rem);
    margin-right: 0.625rem;
    margin-left: 0.625rem; }
  @media print, screen and (min-width: 40em) {
    .gallery.gallery-columns-1 > .gallery-item {
      width: calc(25% - 1.875rem);
      margin-right: 0.9375rem;
      margin-left: 0.9375rem; } }
  @media print, screen and (min-width: 64em) {
    .gallery.gallery-columns-1 > .gallery-item {
      width: calc(100% - 1.875rem);
      margin-right: 0.9375rem;
      margin-left: 0.9375rem; } }
  .gallery.gallery-columns-2 > .gallery-item {
    width: calc(50% - 1.25rem);
    margin-right: 0.625rem;
    margin-left: 0.625rem; }
  @media print, screen and (min-width: 40em) {
    .gallery.gallery-columns-2 > .gallery-item {
      width: calc(25% - 1.875rem);
      margin-right: 0.9375rem;
      margin-left: 0.9375rem; } }
  @media print, screen and (min-width: 64em) {
    .gallery.gallery-columns-2 > .gallery-item {
      width: calc(50% - 1.875rem);
      margin-right: 0.9375rem;
      margin-left: 0.9375rem; } }
  .gallery.gallery-columns-3 > .gallery-item {
    width: calc(50% - 1.25rem);
    margin-right: 0.625rem;
    margin-left: 0.625rem; }
  @media print, screen and (min-width: 40em) {
    .gallery.gallery-columns-3 > .gallery-item {
      width: calc(25% - 1.875rem);
      margin-right: 0.9375rem;
      margin-left: 0.9375rem; } }
  @media print, screen and (min-width: 64em) {
    .gallery.gallery-columns-3 > .gallery-item {
      width: calc(33.33333% - 1.875rem);
      margin-right: 0.9375rem;
      margin-left: 0.9375rem; } }
  .gallery.gallery-columns-4 > .gallery-item {
    width: calc(50% - 1.25rem);
    margin-right: 0.625rem;
    margin-left: 0.625rem; }
  @media print, screen and (min-width: 40em) {
    .gallery.gallery-columns-4 > .gallery-item {
      width: calc(25% - 1.875rem);
      margin-right: 0.9375rem;
      margin-left: 0.9375rem; } }
  @media print, screen and (min-width: 64em) {
    .gallery.gallery-columns-4 > .gallery-item {
      width: calc(25% - 1.875rem);
      margin-right: 0.9375rem;
      margin-left: 0.9375rem; } }
  .gallery.gallery-columns-5 > .gallery-item {
    width: calc(50% - 1.25rem);
    margin-right: 0.625rem;
    margin-left: 0.625rem; }
  @media print, screen and (min-width: 40em) {
    .gallery.gallery-columns-5 > .gallery-item {
      width: calc(25% - 1.875rem);
      margin-right: 0.9375rem;
      margin-left: 0.9375rem; } }
  @media print, screen and (min-width: 64em) {
    .gallery.gallery-columns-5 > .gallery-item {
      width: calc(20% - 1.875rem);
      margin-right: 0.9375rem;
      margin-left: 0.9375rem; } }
  .gallery.gallery-columns-6 > .gallery-item {
    width: calc(50% - 1.25rem);
    margin-right: 0.625rem;
    margin-left: 0.625rem; }
  @media print, screen and (min-width: 40em) {
    .gallery.gallery-columns-6 > .gallery-item {
      width: calc(25% - 1.875rem);
      margin-right: 0.9375rem;
      margin-left: 0.9375rem; } }
  @media print, screen and (min-width: 64em) {
    .gallery.gallery-columns-6 > .gallery-item {
      width: calc(16.66667% - 1.875rem);
      margin-right: 0.9375rem;
      margin-left: 0.9375rem; } }
  .gallery.gallery-columns-7 > .gallery-item {
    width: calc(50% - 1.25rem);
    margin-right: 0.625rem;
    margin-left: 0.625rem; }
  @media print, screen and (min-width: 40em) {
    .gallery.gallery-columns-7 > .gallery-item {
      width: calc(25% - 1.875rem);
      margin-right: 0.9375rem;
      margin-left: 0.9375rem; } }
  @media print, screen and (min-width: 64em) {
    .gallery.gallery-columns-7 > .gallery-item {
      width: calc(14.28571% - 1.875rem);
      margin-right: 0.9375rem;
      margin-left: 0.9375rem; } }
  .gallery.gallery-columns-8 > .gallery-item {
    width: calc(50% - 1.25rem);
    margin-right: 0.625rem;
    margin-left: 0.625rem; }
  @media print, screen and (min-width: 40em) {
    .gallery.gallery-columns-8 > .gallery-item {
      width: calc(25% - 1.875rem);
      margin-right: 0.9375rem;
      margin-left: 0.9375rem; } }
  @media print, screen and (min-width: 64em) {
    .gallery.gallery-columns-8 > .gallery-item {
      width: calc(12.5% - 1.875rem);
      margin-right: 0.9375rem;
      margin-left: 0.9375rem; } }
  .gallery.gallery-columns-9 > .gallery-item {
    width: calc(50% - 1.25rem);
    margin-right: 0.625rem;
    margin-left: 0.625rem; }
  @media print, screen and (min-width: 40em) {
    .gallery.gallery-columns-9 > .gallery-item {
      width: calc(25% - 1.875rem);
      margin-right: 0.9375rem;
      margin-left: 0.9375rem; } }
  @media print, screen and (min-width: 64em) {
    .gallery.gallery-columns-9 > .gallery-item {
      width: calc(11.11111% - 1.875rem);
      margin-right: 0.9375rem;
      margin-left: 0.9375rem; } }
  .gallery .gallery-icon > a {
    display: inline-block;
    max-width: 100%;
    margin-bottom: 1rem;
    border: solid 4px #fefefe;
    border-radius: 1.25rem;
    box-shadow: 0 0 0 1px rgba(10, 10, 10, 0.2);
    line-height: 0;
    transition: box-shadow 200ms ease-out; }
    .gallery .gallery-icon > a:hover, .gallery .gallery-icon > a:focus {
      box-shadow: 0 0 6px 1px rgba(104, 0, 210, 0.5); }
    .gallery .gallery-icon > a image {
      box-shadow: none; }
  .gallery .gallery-icon > img,
  .gallery .gallery-icon > picture img {
    display: inline-block;
    max-width: 100%;
    margin-bottom: 1rem;
    border: solid 4px #fefefe;
    border-radius: 1.25rem;
    box-shadow: 0 0 0 1px rgba(10, 10, 10, 0.2);
    line-height: 0; }

/*
Frontend styles for gutenberg blocks
*/
/** === Base Color Palatte === */
.has-primary-background-color {
  background-color: #6800d2; }

.has-primary-color {
  color: #6800d2; }

.has-secondary-background-color {
  background-color: #fbe200; }

.has-secondary-color {
  color: #fbe200; }

.has-success-background-color {
  background-color: #3adb76; }

.has-success-color {
  color: #3adb76; }

.has-warning-background-color {
  background-color: #ffae00; }

.has-warning-color {
  color: #ffae00; }

.has-alert-background-color {
  background-color: #cc4b37; }

.has-alert-color {
  color: #cc4b37; }

/** === Button === */
.wp-block-button .wp-block-button__link.has-primary-background-color {
  background-color: #6800d2; }

.wp-block-button .wp-block-button__link.has-primary-color {
  color: #6800d2; }

.wp-block-button .wp-block-button__link.has-secondary-background-color {
  background-color: #fbe200; }

.wp-block-button .wp-block-button__link.has-secondary-color {
  color: #fbe200; }

.wp-block-button .wp-block-button__link.has-success-background-color {
  background-color: #3adb76; }

.wp-block-button .wp-block-button__link.has-success-color {
  color: #3adb76; }

.wp-block-button .wp-block-button__link.has-warning-background-color {
  background-color: #ffae00; }

.wp-block-button .wp-block-button__link.has-warning-color {
  color: #ffae00; }

.wp-block-button .wp-block-button__link.has-alert-background-color {
  background-color: #cc4b37; }

.wp-block-button .wp-block-button__link.has-alert-color {
  color: #cc4b37; }

.wp-block-button.is-style-squared .wp-block-button__link {
  border-radius: 0; }

/** === File === */
.wp-block-file .wp-block-file__button {
  display: inline-block;
  vertical-align: middle;
  margin: 0 0 1rem 0;
  padding: 0.5rem 1.875rem 0.625rem;
  border: 1px solid transparent;
  border-radius: 1.25rem;
  transition: background-color 0.25s ease-out, color 0.25s ease-out;
  font-family: inherit;
  font-size: 0.9rem;
  -webkit-appearance: none;
  line-height: 1;
  text-align: center;
  cursor: pointer;
  background-color: #6800d2;
  color: #fefefe; }
  [data-whatinput='mouse'] .wp-block-file .wp-block-file__button {
    outline: 0; }
  .wp-block-file .wp-block-file__button:hover, .wp-block-file .wp-block-file__button:focus {
    background-color: #5800b3;
    color: #fefefe; }

.mobile-menu,
.site-title-bar {
  background: transparent;
  padding: 0; }
  @media print, screen and (min-width: 64em) {
    .mobile-menu,
    .site-title-bar {
      display: none !important; } }
  html[amp] .mobile-menu, html[amp]
  .site-title-bar {
    display: block !important; }
  .mobile-menu svg,
  .site-title-bar svg {
    display: block;
    max-width: 7.8125rem;
    max-height: 1.875rem; }
    @media print, screen and (min-width: 64em) {
      .mobile-menu svg,
      .site-title-bar svg {
        max-width: 6.25rem;
        max-height: 1.5rem; } }
  .mobile-menu .title-bar-left,
  .site-title-bar .title-bar-left {
    background: white;
    padding-top: 0.625rem;
    padding-bottom: 0.625rem;
    border-bottom: 1px solid #f2f2f2; }
    .mobile-menu .title-bar-left,
    .mobile-menu .title-bar-left svg *,
    .site-title-bar .title-bar-left,
    .site-title-bar .title-bar-left svg * {
      transition: all 0.5s ease-in-out; }
    .mobile-menu .title-bar-left > .body-push, .mobile-menu .title-bar-left > .slick-dots, .mobile-menu .top-bar ul > li.mega-menu-grid.title-bar-left > ul.mega-sub-menu, .top-bar .mobile-menu ul > li.mega-menu-grid.title-bar-left > ul.mega-sub-menu,
    .mobile-menu .top-bar #mega-menu-wrap-top-bar-r #mega-menu-top-bar-r > li.mega-menu-grid.title-bar-left > ul.mega-sub-menu, .top-bar #mega-menu-wrap-top-bar-r .mobile-menu #mega-menu-top-bar-r > li.mega-menu-grid.title-bar-left > ul.mega-sub-menu, .mobile-menu .dropdown.menu > li.title-bar-left > .is-dropdown-submenu, .mobile-menu body.single-case_study section.tabbed-content .title-bar-left > .tabs-wrapper, body.single-case_study section.tabbed-content .mobile-menu .title-bar-left > .tabs-wrapper, .mobile-menu body.single-case_study section.tabbed-content .title-bar-left > .tabs-content, body.single-case_study section.tabbed-content .mobile-menu .title-bar-left > .tabs-content,
    .site-title-bar .title-bar-left > .body-push,
    .site-title-bar .title-bar-left > .slick-dots,
    .site-title-bar .top-bar ul > li.mega-menu-grid.title-bar-left > ul.mega-sub-menu,
    .top-bar .site-title-bar ul > li.mega-menu-grid.title-bar-left > ul.mega-sub-menu,
    .site-title-bar .top-bar #mega-menu-wrap-top-bar-r #mega-menu-top-bar-r > li.mega-menu-grid.title-bar-left > ul.mega-sub-menu,
    .top-bar #mega-menu-wrap-top-bar-r .site-title-bar #mega-menu-top-bar-r > li.mega-menu-grid.title-bar-left > ul.mega-sub-menu,
    .site-title-bar .dropdown.menu > li.title-bar-left > .is-dropdown-submenu,
    .site-title-bar body.single-case_study section.tabbed-content .title-bar-left > .tabs-wrapper,
    body.single-case_study section.tabbed-content .site-title-bar .title-bar-left > .tabs-wrapper,
    .site-title-bar body.single-case_study section.tabbed-content .title-bar-left > .tabs-content,
    body.single-case_study section.tabbed-content .site-title-bar .title-bar-left > .tabs-content {
      margin-left: 0.625rem;
      margin-right: 0.625rem; }
      @media print, screen and (min-width: 40em) {
        .mobile-menu .title-bar-left > .body-push, .mobile-menu .title-bar-left > .slick-dots, .mobile-menu .top-bar ul > li.mega-menu-grid.title-bar-left > ul.mega-sub-menu, .top-bar .mobile-menu ul > li.mega-menu-grid.title-bar-left > ul.mega-sub-menu,
        .mobile-menu .top-bar #mega-menu-wrap-top-bar-r #mega-menu-top-bar-r > li.mega-menu-grid.title-bar-left > ul.mega-sub-menu, .top-bar #mega-menu-wrap-top-bar-r .mobile-menu #mega-menu-top-bar-r > li.mega-menu-grid.title-bar-left > ul.mega-sub-menu, .mobile-menu .dropdown.menu > li.title-bar-left > .is-dropdown-submenu, .mobile-menu body.single-case_study section.tabbed-content .title-bar-left > .tabs-wrapper, body.single-case_study section.tabbed-content .mobile-menu .title-bar-left > .tabs-wrapper, .mobile-menu body.single-case_study section.tabbed-content .title-bar-left > .tabs-content, body.single-case_study section.tabbed-content .mobile-menu .title-bar-left > .tabs-content,
        .site-title-bar .title-bar-left > .body-push,
        .site-title-bar .title-bar-left > .slick-dots,
        .site-title-bar .top-bar ul > li.mega-menu-grid.title-bar-left > ul.mega-sub-menu,
        .top-bar .site-title-bar ul > li.mega-menu-grid.title-bar-left > ul.mega-sub-menu,
        .site-title-bar .top-bar #mega-menu-wrap-top-bar-r #mega-menu-top-bar-r > li.mega-menu-grid.title-bar-left > ul.mega-sub-menu,
        .top-bar #mega-menu-wrap-top-bar-r .site-title-bar #mega-menu-top-bar-r > li.mega-menu-grid.title-bar-left > ul.mega-sub-menu,
        .site-title-bar .dropdown.menu > li.title-bar-left > .is-dropdown-submenu,
        .site-title-bar body.single-case_study section.tabbed-content .title-bar-left > .tabs-wrapper,
        body.single-case_study section.tabbed-content .site-title-bar .title-bar-left > .tabs-wrapper,
        .site-title-bar body.single-case_study section.tabbed-content .title-bar-left > .tabs-content,
        body.single-case_study section.tabbed-content .site-title-bar .title-bar-left > .tabs-content {
          margin-left: 0.9375rem;
          margin-right: 0.9375rem; } }
    @media print, screen and (min-width: 40em) {
      .mobile-menu .title-bar-left.is-anchored,
      .site-title-bar .title-bar-left.is-anchored {
        background: rgba(255, 255, 255, 0);
        border-bottom: 0; }
        header:not(.black) .mobile-menu .title-bar-left.is-anchored svg#gamma-logo-mobile .st0,
        header:not(.black) .mobile-menu .title-bar-left.is-anchored svg#gamma-logo-mobile g path, header:not(.black)
        .site-title-bar .title-bar-left.is-anchored svg#gamma-logo-mobile .st0,
        header:not(.black)
        .site-title-bar .title-bar-left.is-anchored svg#gamma-logo-mobile g path {
          fill: #fefefe; } }
    body.admin-bar .mobile-menu .title-bar-left.is-stuck, body.admin-bar
    .site-title-bar .title-bar-left.is-stuck {
      top: 2.875rem !important; }
      @media print, screen and (min-width: 40em) {
        body.admin-bar .mobile-menu .title-bar-left.is-stuck, body.admin-bar
        .site-title-bar .title-bar-left.is-stuck {
          top: 2rem !important; } }
  .mobile-menu .title-bar-title,
  .site-title-bar .title-bar-title {
    -ms-flex-order: 1;
        order: 1; }
  .mobile-menu #site-navigation-toggle,
  .site-title-bar #site-navigation-toggle {
    -ms-flex-order: 3;
        order: 3; }
  .mobile-menu .header-strapline-mobile,
  .site-title-bar .header-strapline-mobile {
    -ms-flex-order: 2;
        order: 2;
    text-align: center; }
  @media screen and (max-width: 640px) {
    .mobile-menu .header-strapline-mobile,
    .site-title-bar .header-strapline-mobile {
      -ms-flex-order: 3;
          order: 3;
      width: 100%;
      color: #0a0a0a; } }
  @media screen and (min-width: 640px) {
    .mobile-menu .header-strapline-mobile,
    .site-title-bar .header-strapline-mobile {
      margin-top: 0.25rem; }
    .mobile-menu .title-bar-left.is-anchored .header-strapline-mobile, .mobile-menu .title-bar-left.is-anchored .header-strapline-mobile > a,
    .site-title-bar .title-bar-left.is-anchored .header-strapline-mobile,
    .site-title-bar .title-bar-left.is-anchored .header-strapline-mobile > a {
      color: #fefefe; } }
  .mobile-menu .site-mobile-title,
  .site-title-bar .site-mobile-title {
    width: 25%; }
  .mobile-menu .site-mobile-menu-cotaniner,
  .site-title-bar .site-mobile-menu-cotaniner {
    width: 25%;
    -ms-flex-order: 3;
        order: 3; }

.desktop-menu,
.site-navigation .top-bar-left {
  margin-left: 0.9375rem;
  margin-right: 0.9375rem; }
  @media screen and (max-width: 63.99875em) {
    .desktop-menu,
    .site-navigation .top-bar-left {
      display: none !important; } }
  .desktop-menu svg,
  .site-navigation .top-bar-left svg {
    display: block;
    max-width: 12.5rem;
    max-height: 3rem; }

.post-navigation::before, .post-navigation::after {
  display: table;
  content: ' ';
  -ms-flex-preferred-size: 0;
      flex-basis: 0;
  -ms-flex-order: 1;
      order: 1; }

.post-navigation::after {
  clear: both; }

.nav-previous {
  float: left; }

.nav-next {
  float: right; }

header .sticky-container {
  position: fixed;
  width: 100%;
  z-index: 10;
  margin: 0; }

#main-area .sticky-container {
  z-index: 5 !important; }

svg[id*='search-icon'] .search {
  fill: none;
  stroke: #6800d2; }

.top-bar .top-bar-title {
  margin: 0; }

.top-bar,
.top-bar svg * {
  transition: all 0.5s ease-in-out; }

.top-bar.is-anchored {
  background: rgba(255, 255, 255, 0); }
  .top-bar.is-anchored #mega-menu-wrap-top-bar-r #mega-menu-top-bar-r > li > ul.mega-sub-menu {
    margin-top: 2rem; }
  .top-bar.is-anchored:hover ul > li.highlight-lrg > a {
    background: #fefefe !important;
    color: #6800d2 !important; }
    .top-bar.is-anchored:hover ul > li.highlight-lrg > a:after {
      border-right-color: #6800d2;
      border-bottom-color: #6800d2; }

.top-bar.mega-open, .top-bar:hover {
  background: #6800d2 !important;
  border-bottom: 1px solid rgba(254, 254, 254, 0.6); }
  .top-bar.mega-open svg#gamma-logo-desktop .st0,
  .top-bar.mega-open svg#gamma-logo-desktop g path, .top-bar:hover svg#gamma-logo-desktop .st0,
  .top-bar:hover svg#gamma-logo-desktop g path {
    fill: #fefefe; }
  .top-bar.mega-open svg[id*='search-icon'] .search, .top-bar:hover svg[id*='search-icon'] .search {
    fill: none;
    stroke: #fefefe;
    stroke-width: 1.452; }
  .top-bar.mega-open ul > li > a, .top-bar:hover ul > li > a {
    color: #fefefe; }
    .top-bar.mega-open ul > li > a:after, .top-bar:hover ul > li > a:after {
      border-right-color: #fefefe;
      border-bottom-color: #fefefe; }
  .top-bar.mega-open ul > li.highlight > a, .top-bar:hover ul > li.highlight > a {
    background: #fefefe;
    color: #6800d2; }
    .top-bar.mega-open ul > li.highlight > a:after, .top-bar:hover ul > li.highlight > a:after {
      border-right-color: #6800d2;
      border-bottom-color: #6800d2; }
  .top-bar.mega-open ul > li.highlight-lrg > a, .top-bar:hover ul > li.highlight-lrg > a {
    background: #fefefe !important;
    color: #6800d2 !important; }
    .top-bar.mega-open ul > li.highlight-lrg > a:after, .top-bar:hover ul > li.highlight-lrg > a:after {
      border-right-color: #6800d2;
      border-bottom-color: #6800d2; }
  .top-bar.mega-open #mega-menu-wrap-top-bar-r #mega-menu-top-bar-r > li > a.mega-menu-link:hover:before, .top-bar:hover #mega-menu-wrap-top-bar-r #mega-menu-top-bar-r > li > a.mega-menu-link:hover:before {
    background-color: #fbe200; }
  .top-bar.mega-open #mega-menu-wrap-top-bar-r #mega-menu-top-bar-r > li a.mega-menu-link, .top-bar:hover #mega-menu-wrap-top-bar-r #mega-menu-top-bar-r > li a.mega-menu-link {
    color: #cacaca; }
    .top-bar.mega-open #mega-menu-wrap-top-bar-r #mega-menu-top-bar-r > li a.mega-menu-link:before, .top-bar:hover #mega-menu-wrap-top-bar-r #mega-menu-top-bar-r > li a.mega-menu-link:before {
      content: '';
      position: absolute;
      bottom: -2rem;
      left: 0;
      background-color: transparent;
      height: 0.1875rem;
      width: 100%; }
    .top-bar.mega-open #mega-menu-wrap-top-bar-r #mega-menu-top-bar-r > li a.mega-menu-link:after, .top-bar:hover #mega-menu-wrap-top-bar-r #mega-menu-top-bar-r > li a.mega-menu-link:after {
      border-right-color: #fefefe;
      border-bottom-color: #fefefe; }
    .top-bar.mega-open #mega-menu-wrap-top-bar-r #mega-menu-top-bar-r > li a.mega-menu-link:hover, .top-bar:hover #mega-menu-wrap-top-bar-r #mega-menu-top-bar-r > li a.mega-menu-link:hover {
      color: #fbe200 !important; }
      .top-bar.mega-open #mega-menu-wrap-top-bar-r #mega-menu-top-bar-r > li a.mega-menu-link:hover:after, .top-bar:hover #mega-menu-wrap-top-bar-r #mega-menu-top-bar-r > li a.mega-menu-link:hover:after {
        border-right-color: #fbe200;
        border-bottom-color: #fbe200; }
  .top-bar.mega-open #mega-menu-wrap-top-bar-r #mega-menu-top-bar-r > li.is-active > a.mega-menu-link, .top-bar.mega-open #mega-menu-wrap-top-bar-r #mega-menu-top-bar-r > li.mega-current-menu-item > a.mega-menu-link, .top-bar.mega-open #mega-menu-wrap-top-bar-r #mega-menu-top-bar-r > li.mega-current-menu-ancestor > a.mega-menu-link, .top-bar:hover #mega-menu-wrap-top-bar-r #mega-menu-top-bar-r > li.is-active > a.mega-menu-link, .top-bar:hover #mega-menu-wrap-top-bar-r #mega-menu-top-bar-r > li.mega-current-menu-item > a.mega-menu-link, .top-bar:hover #mega-menu-wrap-top-bar-r #mega-menu-top-bar-r > li.mega-current-menu-ancestor > a.mega-menu-link {
    color: #fefefe !important; }

header:not(.black) .top-bar.is-anchored svg#gamma-logo-desktop .st0,
header:not(.black) .top-bar.is-anchored svg#gamma-logo-desktop g path {
  fill: #fefefe; }

header:not(.black) .top-bar.is-anchored ul > li a,
header:not(.black) .top-bar.is-anchored #mega-menu-wrap-top-bar-r #mega-menu-top-bar-r > li a {
  color: #cacaca; }
  header:not(.black) .top-bar.is-anchored ul > li a:after,
  header:not(.black) .top-bar.is-anchored #mega-menu-wrap-top-bar-r #mega-menu-top-bar-r > li a:after {
    border-right-color: #fefefe;
    border-bottom-color: #fefefe; }

header:not(.black) .top-bar.is-anchored ul > li.is-active > a.mega-menu-link, header:not(.black) .top-bar.is-anchored ul > li.mega-current-menu-item > a.mega-menu-link, header:not(.black) .top-bar.is-anchored ul > li.mega-current-menu-ancestor > a.mega-menu-link,
header:not(.black) .top-bar.is-anchored #mega-menu-wrap-top-bar-r #mega-menu-top-bar-r > li.is-active > a.mega-menu-link,
header:not(.black) .top-bar.is-anchored #mega-menu-wrap-top-bar-r #mega-menu-top-bar-r > li.mega-current-menu-item > a.mega-menu-link,
header:not(.black) .top-bar.is-anchored #mega-menu-wrap-top-bar-r #mega-menu-top-bar-r > li.mega-current-menu-ancestor > a.mega-menu-link {
  color: #fefefe !important; }

body.home header:not(.black) .top-bar.is-anchored ul > li > a.mega-menu-link, body.home
header:not(.black) .top-bar.is-anchored #mega-menu-wrap-top-bar-r #mega-menu-top-bar-r > li > a.mega-menu-link {
  color: #fefefe !important; }

body.home header:not(.black) .top-bar.is-anchored ul > li.mega-toggle-on > a.mega-menu-link, body.home
header:not(.black) .top-bar.is-anchored #mega-menu-wrap-top-bar-r #mega-menu-top-bar-r > li.mega-toggle-on > a.mega-menu-link {
  color: #fbe200 !important; }
  body.home header:not(.black) .top-bar.is-anchored ul > li.mega-toggle-on > a.mega-menu-link:before, body.home
  header:not(.black) .top-bar.is-anchored #mega-menu-wrap-top-bar-r #mega-menu-top-bar-r > li.mega-toggle-on > a.mega-menu-link:before {
    background-color: #fbe200; }

header:not(.black) .top-bar.is-anchored ul > li.highlight a,
header:not(.black) .top-bar.is-anchored #mega-menu-wrap-top-bar-r #mega-menu-top-bar-r > li.highlight a {
  background: #fefefe;
  color: #6800d2; }
  header:not(.black) .top-bar.is-anchored ul > li.highlight a:after,
  header:not(.black) .top-bar.is-anchored #mega-menu-wrap-top-bar-r #mega-menu-top-bar-r > li.highlight a:after {
    border-right-color: #6800d2;
    border-bottom-color: #6800d2; }

header:not(.black) .top-bar.is-anchored ul.desktop-menu > li.is-active > a, header:not(.black) .top-bar.is-anchored ul.desktop-menu > li.current-menu-item > a, header:not(.black) .top-bar.is-anchored ul.desktop-menu > li.current-page-ancestor > a {
  color: #fefefe !important; }

body.home header:not(.black) .top-bar.is-anchored ul.desktop-menu > li > a {
  color: #fefefe !important; }

header:not(.black) .top-bar.is-anchored svg[id*='search-icon'] .search {
  fill: none;
  stroke: #fefefe;
  stroke-width: 1.452; }

.top-bar.is-stuck {
  padding-top: 0.625rem;
  padding-bottom: 0.625rem;
  background: white;
  border-bottom: 1px solid #f2f2f2;
  /*
    &.highlight-lrg {
      a {
        background: $white!important;
        color: $gam-purple!important;
        display: inline;
        padding: rem-calc(8 30 10)!important;
        &:after {
          border-right-color: $white;
          border-bottom-color: $white;
        }
      }
    }
    */ }
  body.admin-bar .top-bar.is-stuck {
    top: 2rem !important; }
  .top-bar.is-stuck.mega-open {
    background: #6800d2;
    border-bottom: 1px solid rgba(254, 254, 254, 0.6); }
  .top-bar.is-stuck #mega-menu-wrap-top-bar-r #mega-menu-top-bar-r > li > a.mega-menu-link:before {
    bottom: -0.75rem; }

.top-bar #mega-menu-wrap-top-bar-r {
  clear: none;
  float: left;
  position: static; }

.top-bar ul,
.top-bar #mega-menu-wrap-top-bar-r #mega-menu-top-bar-r {
  position: static;
  background: transparent;
  float: left;
  list-style: none; }
  .top-bar ul > li.footer-only,
  .top-bar #mega-menu-wrap-top-bar-r #mega-menu-top-bar-r > li.footer-only {
    display: none; }
  .top-bar ul > li.is-active > a.mega-menu-link, .top-bar ul > li.mega-current-menu-item > a.mega-menu-link, .top-bar ul > li.mega-current-menu-ancestor > a.mega-menu-link,
  .top-bar #mega-menu-wrap-top-bar-r #mega-menu-top-bar-r > li.is-active > a.mega-menu-link,
  .top-bar #mega-menu-wrap-top-bar-r #mega-menu-top-bar-r > li.mega-current-menu-item > a.mega-menu-link,
  .top-bar #mega-menu-wrap-top-bar-r #mega-menu-top-bar-r > li.mega-current-menu-ancestor > a.mega-menu-link {
    color: #6800d2; }
  .top-bar ul > li:not(.mega-menu-item-has-children) > a,
  .top-bar ul > li:not(.mega-menu-item-has-children) > a.mega-menu-link,
  .top-bar #mega-menu-wrap-top-bar-r #mega-menu-top-bar-r > li:not(.mega-menu-item-has-children) > a,
  .top-bar #mega-menu-wrap-top-bar-r #mega-menu-top-bar-r > li:not(.mega-menu-item-has-children) > a.mega-menu-link {
    padding: 0.3125rem 0.9375rem 0.3125rem 0.9375rem !important; }
    .top-bar ul > li:not(.mega-menu-item-has-children) > a:after,
    .top-bar ul > li:not(.mega-menu-item-has-children) > a.mega-menu-link:after,
    .top-bar #mega-menu-wrap-top-bar-r #mega-menu-top-bar-r > li:not(.mega-menu-item-has-children) > a:after,
    .top-bar #mega-menu-wrap-top-bar-r #mega-menu-top-bar-r > li:not(.mega-menu-item-has-children) > a.mega-menu-link:after {
      display: none; }
    .top-bar ul > li:not(.mega-menu-item-has-children) > a:hover,
    .top-bar ul > li:not(.mega-menu-item-has-children) > a.mega-menu-link:hover,
    .top-bar #mega-menu-wrap-top-bar-r #mega-menu-top-bar-r > li:not(.mega-menu-item-has-children) > a:hover,
    .top-bar #mega-menu-wrap-top-bar-r #mega-menu-top-bar-r > li:not(.mega-menu-item-has-children) > a.mega-menu-link:hover {
      color: #fbe200; }
  .top-bar ul > li.mega-toggle-on > a.mega-menu-link,
  .top-bar #mega-menu-wrap-top-bar-r #mega-menu-top-bar-r > li.mega-toggle-on > a.mega-menu-link {
    color: #fbe200 !important; }
    .top-bar ul > li.mega-toggle-on > a.mega-menu-link:after,
    .top-bar #mega-menu-wrap-top-bar-r #mega-menu-top-bar-r > li.mega-toggle-on > a.mega-menu-link:after {
      border-right-color: #fbe200;
      border-bottom-color: #fbe200;
      -ms-transform: rotate(-135deg) translate(-5px, -5px);
          transform: rotate(-135deg) translate(-5px, -5px); }
    .top-bar ul > li.mega-toggle-on > a.mega-menu-link:before,
    .top-bar #mega-menu-wrap-top-bar-r #mega-menu-top-bar-r > li.mega-toggle-on > a.mega-menu-link:before {
      background-color: #fbe200; }
  .top-bar ul > li > a,
  .top-bar ul > li > a.mega-menu-link,
  .top-bar #mega-menu-wrap-top-bar-r #mega-menu-top-bar-r > li > a,
  .top-bar #mega-menu-wrap-top-bar-r #mega-menu-top-bar-r > li > a.mega-menu-link {
    font-weight: 500 !important;
    border-radius: 1.25rem;
    color: #0a0a0a;
    padding: 0.3125rem 0.9375rem 0.3125rem 0.9375rem !important;
    height: auto; }
    @media screen and (min-width: 75em) {
      .top-bar ul > li > a:after,
      .top-bar ul > li > a.mega-menu-link:after,
      .top-bar #mega-menu-wrap-top-bar-r #mega-menu-top-bar-r > li > a:after,
      .top-bar #mega-menu-wrap-top-bar-r #mega-menu-top-bar-r > li > a.mega-menu-link:after {
        content: "";
        display: inline-block;
        position: relative;
        top: -0.125rem;
        right: auto;
        margin-left: 0.625rem;
        margin-top: auto;
        border: 1px solid transparent;
        border-right-color: #0a0a0a;
        border-bottom-color: #0a0a0a;
        width: 0.625rem;
        height: 0.625rem;
        transition: transform 0.2s ease-in-out;
        -ms-transform: rotate(45deg);
            transform: rotate(45deg);
        vertical-align: baseline; }
      .top-bar ul > li > a .mega-indicator,
      .top-bar ul > li > a.mega-menu-link .mega-indicator,
      .top-bar #mega-menu-wrap-top-bar-r #mega-menu-top-bar-r > li > a .mega-indicator,
      .top-bar #mega-menu-wrap-top-bar-r #mega-menu-top-bar-r > li > a.mega-menu-link .mega-indicator {
        display: none !important; } }
    @media screen and (min-width: 88.75em) {
      .top-bar ul > li > a,
      .top-bar ul > li > a.mega-menu-link,
      .top-bar #mega-menu-wrap-top-bar-r #mega-menu-top-bar-r > li > a,
      .top-bar #mega-menu-wrap-top-bar-r #mega-menu-top-bar-r > li > a.mega-menu-link {
        padding: 0.3125rem 0.9375rem 0.3125rem 1.25rem !important;
        font-size: 1rem; } }
    .top-bar ul > li > a:hover,
    .top-bar ul > li > a.mega-menu-link:hover,
    .top-bar #mega-menu-wrap-top-bar-r #mega-menu-top-bar-r > li > a:hover,
    .top-bar #mega-menu-wrap-top-bar-r #mega-menu-top-bar-r > li > a.mega-menu-link:hover {
      color: #fbe200; }
      .top-bar ul > li > a:hover:after,
      .top-bar ul > li > a.mega-menu-link:hover:after,
      .top-bar #mega-menu-wrap-top-bar-r #mega-menu-top-bar-r > li > a:hover:after,
      .top-bar #mega-menu-wrap-top-bar-r #mega-menu-top-bar-r > li > a.mega-menu-link:hover:after {
        border-right-color: #fbe200;
        border-bottom-color: #fbe200; }
  .top-bar ul > li.highlight a,
  .top-bar #mega-menu-wrap-top-bar-r #mega-menu-top-bar-r > li.highlight a {
    background: #6800d2;
    color: #fefefe; }
    .top-bar ul > li.highlight a:after,
    .top-bar #mega-menu-wrap-top-bar-r #mega-menu-top-bar-r > li.highlight a:after {
      border-right-color: #fefefe;
      border-bottom-color: #fefefe; }
  .top-bar ul > li.highlight-lrg a,
  .top-bar #mega-menu-wrap-top-bar-r #mega-menu-top-bar-r > li.highlight-lrg a {
    background: #6800d2 !important;
    color: #fefefe !important;
    display: inline;
    padding: 0.5rem 1.875rem 0.625rem !important; }
    .top-bar ul > li.highlight-lrg a:after,
    .top-bar #mega-menu-wrap-top-bar-r #mega-menu-top-bar-r > li.highlight-lrg a:after {
      border-right-color: #fefefe;
      border-bottom-color: #fefefe; }
  .top-bar ul > li > ul.mega-sub-menu,
  .top-bar #mega-menu-wrap-top-bar-r #mega-menu-top-bar-r > li > ul.mega-sub-menu {
    margin-top: 0.75rem; }
  .top-bar ul > li.mega-menu-grid > ul.mega-sub-menu > li.mega-menu-row,
  .top-bar #mega-menu-wrap-top-bar-r #mega-menu-top-bar-r > li.mega-menu-grid > ul.mega-sub-menu > li.mega-menu-row {
    width: auto;
    float: none;
    display: block; }
    .top-bar ul > li.mega-menu-grid > ul.mega-sub-menu > li.mega-menu-row > ul.mega-sub-menu,
    .top-bar #mega-menu-wrap-top-bar-r #mega-menu-top-bar-r > li.mega-menu-grid > ul.mega-sub-menu > li.mega-menu-row > ul.mega-sub-menu {
      display: -ms-flexbox;
      display: flex;
      -ms-flex-pack: center;
          justify-content: center;
      -ms-flex-align: stretch;
          align-items: stretch; }
  .top-bar ul > li.mega-menu-grid > ul.mega-sub-menu ul,
  .top-bar #mega-menu-wrap-top-bar-r #mega-menu-top-bar-r > li.mega-menu-grid > ul.mega-sub-menu ul {
    padding-left: 0 !important;
    padding-right: 0 !important; }
  .top-bar ul > li.mega-menu-grid > ul.mega-sub-menu li a.mega-menu-link,
  .top-bar #mega-menu-wrap-top-bar-r #mega-menu-top-bar-r > li.mega-menu-grid > ul.mega-sub-menu li a.mega-menu-link {
    font-size: 0.875rem !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    padding-top: 0 !important; }
  .top-bar ul > li.mega-menu-grid li.mega-menu-column,
  .top-bar #mega-menu-wrap-top-bar-r #mega-menu-top-bar-r > li.mega-menu-grid li.mega-menu-column {
    width: auto !important;
    float: none !important;
    -ms-flex: 0 1 auto;
        flex: 0 1 auto; }
    .top-bar ul > li.mega-menu-grid li.mega-menu-column:last-child,
    .top-bar #mega-menu-wrap-top-bar-r #mega-menu-top-bar-r > li.mega-menu-grid li.mega-menu-column:last-child {
      border-right: 0; }
    .top-bar ul > li.mega-menu-grid li.mega-menu-column ul li,
    .top-bar #mega-menu-wrap-top-bar-r #mega-menu-top-bar-r > li.mega-menu-grid li.mega-menu-column ul li {
      float: none !important; }
      .top-bar ul > li.mega-menu-grid li.mega-menu-column ul li h4,
      .top-bar #mega-menu-wrap-top-bar-r #mega-menu-top-bar-r > li.mega-menu-grid li.mega-menu-column ul li h4 {
        font-size: 1rem !important; }
        @media print, screen and (min-width: 64em) {
          .top-bar ul > li.mega-menu-grid li.mega-menu-column ul li h4,
          .top-bar #mega-menu-wrap-top-bar-r #mega-menu-top-bar-r > li.mega-menu-grid li.mega-menu-column ul li h4 {
            font-size: 1.125rem !important; } }
      .top-bar ul > li.mega-menu-grid li.mega-menu-column ul li a,
      .top-bar #mega-menu-wrap-top-bar-r #mega-menu-top-bar-r > li.mega-menu-grid li.mega-menu-column ul li a {
        color: #fbe200;
        font-size: 0.875rem !important; }
      .top-bar ul > li.mega-menu-grid li.mega-menu-column ul li ul li a.mega-menu-link,
      .top-bar #mega-menu-wrap-top-bar-r #mega-menu-top-bar-r > li.mega-menu-grid li.mega-menu-column ul li ul li a.mega-menu-link {
        padding-left: 0.75rem !important;
        position: relative; }
        .top-bar ul > li.mega-menu-grid li.mega-menu-column ul li ul li a.mega-menu-link:before,
        .top-bar #mega-menu-wrap-top-bar-r #mega-menu-top-bar-r > li.mega-menu-grid li.mega-menu-column ul li ul li a.mega-menu-link:before {
          content: "";
          display: block;
          width: 0.5rem;
          height: 0.0625rem;
          background: #fbe200;
          position: absolute;
          top: 0.375rem;
          left: 0; }
      .top-bar ul > li.mega-menu-grid li.mega-menu-column ul li.widget_text,
      .top-bar #mega-menu-wrap-top-bar-r #mega-menu-top-bar-r > li.mega-menu-grid li.mega-menu-column ul li.widget_text {
        margin-top: 1.875rem;
        margin-bottom: 0.625rem;
        min-width: 13.75rem; }
        .top-bar ul > li.mega-menu-grid li.mega-menu-column ul li.widget_text:first-child,
        .top-bar #mega-menu-wrap-top-bar-r #mega-menu-top-bar-r > li.mega-menu-grid li.mega-menu-column ul li.widget_text:first-child {
          margin-top: 0; }
        .top-bar ul > li.mega-menu-grid li.mega-menu-column ul li.widget_text img,
        .top-bar #mega-menu-wrap-top-bar-r #mega-menu-top-bar-r > li.mega-menu-grid li.mega-menu-column ul li.widget_text img {
          width: 2.5rem; }

.top-bar .supplementary {
  float: left;
  margin-top: 0.75rem;
  margin-left: 0.9375rem;
  margin-right: 0.9375rem; }
  @media screen and (min-width: 88.75em) {
    .top-bar .supplementary {
      margin-left: 3.125rem; } }
  .top-bar .supplementary ul a {
    font-size: 0.875rem; }
    .top-bar .supplementary ul a:after {
      top: -0.1875rem;
      width: 0.375rem;
      height: 0.375rem; }
  .top-bar .supplementary .widget {
    float: left;
    margin-left: 0.625rem; }
    .top-bar .supplementary .widget label {
      padding: 0.5rem 0;
      line-height: 1;
      margin-right: 0.625rem; }
      @media print, screen and (min-width: 64em) {
        .top-bar .supplementary .widget label {
          padding: 0; } }
    .top-bar .supplementary .widget button {
      padding-left: 0;
      padding-right: 0; }
    .top-bar .supplementary .widget.widget_search .input-group {
      margin-bottom: 0;
      position: relative; }
    .top-bar .supplementary .widget.widget_search .input-group-field {
      width: 0;
      border-width: 0;
      padding-left: 0;
      padding-right: 0;
      transition: all 0.4s ease-in-out;
      position: absolute;
      right: 1.875rem;
      top: -0.5rem;
      border-radius: 1.25rem; }
    .top-bar .supplementary .widget.widget_search.hover, .top-bar .supplementary .widget.widget_search.focussed {
      border-width: 0; }
      .top-bar .supplementary .widget.widget_search.hover .input-group-field, .top-bar .supplementary .widget.widget_search.focussed .input-group-field {
        border-width: 1px;
        padding-left: 0.625rem;
        padding-right: 0.625rem;
        width: 15.625rem;
        min-width: 15.625rem;
        transition: all 0.2s ease-in-out; }

.supplementary .widget button {
  background: transparent;
  color: #0a0a0a;
  border: 0; }

.mobile-off-canvas-menu .supplementary .menu, .mobile-off-canvas-menu .eyebrow-menu .menu {
  display: block; }

.mobile-off-canvas-menu .supplementary form, .mobile-off-canvas-menu .eyebrow-menu form {
  margin-left: 0.9375rem; }

.mobile-off-canvas-menu li.footer-only {
  display: none; }

.mobile-off-canvas-menu li.is-submenu-parent-item {
  font-weight: 500; }

html[amp] .mobile-off-canvas-menu ul li {
  position: relative; }

html[amp] .mobile-off-canvas-menu ul button {
  position: absolute;
  right: 0.9375rem;
  top: 0.5rem;
  width: 1.25rem;
  height: 1.25rem;
  background: #6800d2;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
      justify-content: center;
  -ms-flex-line-pack: center;
      align-content: center; }
  html[amp] .mobile-off-canvas-menu ul button + ul {
    display: none; }
  html[amp] .mobile-off-canvas-menu ul button:after {
    content: "+";
    color: #fefefe;
    line-height: 1; }

html[amp] .mobile-off-canvas-menu ul button.toggled-on:after {
  content: "-"; }

html[amp] .mobile-off-canvas-menu ul button.toggled-on + ul {
  display: block; }

.eyebrow {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-flow: nowrap row;
      flex-flow: nowrap row;
  -ms-flex-pack: justify;
      justify-content: space-between;
  -ms-flex-align: center;
      align-items: center;
  width: 100%;
  /*max-width:1903px;*/
  height: 75px;
  margin-top: 0px;
  top: 0px;
  padding-left: 4.6875rem;
  line-height: 75px;
  background-color: #fefefe; }
  .eyebrow .eyebrow-nav-wrapper .widget_nav_menu {
    padding-right: 0.75rem; }
  @media screen and (min-width: 75em) {
    .eyebrow .eyebrow-nav-wrapper .widget_nav_menu {
      padding-right: 4rem; } }
  .eyebrow .eyebrow-menu {
    float: left;
    /*margin-top: rem-calc(12);*/
    margin-top: 1.25rem;
    margin-left: 0.9375rem;
    margin-right: 0.9375rem; }
    @media screen and (min-width: 88.75em) {
      .eyebrow .eyebrow-menu {
        margin-left: 3.125rem; } }
    .eyebrow .eyebrow-menu ul a {
      font-size: 0.875rem; }
      .eyebrow .eyebrow-menu ul a:after {
        top: -0.1875rem;
        width: 0.375rem;
        height: 0.375rem; }
    .eyebrow .eyebrow-menu svg[id*='search-icon'] .search {
      fill: none;
      stroke: #6800d2;
      stroke-width: 1.452; }
    .eyebrow .eyebrow-menu .widget {
      float: left;
      margin-left: 0.625rem; }
      .eyebrow .eyebrow-menu .widget label {
        padding: 0.5rem 0;
        line-height: 1;
        margin-right: 0.625rem; }
        @media print, screen and (min-width: 64em) {
          .eyebrow .eyebrow-menu .widget label {
            padding: 0; } }
      .eyebrow .eyebrow-menu .widget button {
        padding-left: 0;
        padding-right: 0;
        background: transparent;
        color: #0a0a0a;
        border: 0; }
      .eyebrow .eyebrow-menu .widget.widget_search .input-group {
        margin-bottom: 0;
        position: relative; }
      .eyebrow .eyebrow-menu .widget.widget_search .input-group-field {
        width: 0;
        border-width: 0;
        padding-left: 0;
        padding-right: 0;
        transition: all 0.4s ease-in-out;
        position: absolute;
        right: 1.875rem;
        top: -0.5rem;
        border-radius: 1.25rem; }
      .eyebrow .eyebrow-menu .widget.widget_search.hover, .eyebrow .eyebrow-menu .widget.widget_search.focussed {
        border-width: 0; }
        .eyebrow .eyebrow-menu .widget.widget_search.hover .input-group-field, .eyebrow .eyebrow-menu .widget.widget_search.focussed .input-group-field {
          border-width: 1px;
          padding-left: 0.625rem;
          padding-right: 0.625rem;
          width: 15.625rem;
          min-width: 15.625rem;
          transition: all 0.2s ease-in-out; }

.menu-icon {
  float: right;
  /*margin-top: rem-calc(4);*/
  margin-top: 0.45rem; }
  @media print, screen and (min-width: 40em) {
    header:not(.black) .is-anchored .menu-icon:after {
      background: #fefefe;
      box-shadow: 0 7px 0 #fefefe, 0 14px 0 #fefefe; } }

.menu,
.is-dropdown-submenu-parent {
  position: static; }

.dropdown.menu > li > a {
  border-radius: 0; }

.dropdown.menu > li > .is-dropdown-submenu {
  position: absolute;
  padding-top: 1.25rem;
  padding-bottom: 1.25rem;
  border: 0;
  border-top: 1px solid #cacaca;
  border-bottom: 1px solid #cacaca;
  background: #fefefe;
  -ms-flex-direction: row;
      flex-direction: row;
  -ms-flex-pack: center;
      justify-content: center;
  left: 0 !important;
  right: 0 !important;
  width: auto; }
  .dropdown.menu > li > .is-dropdown-submenu.js-dropdown-active {
    display: -ms-flexbox !important;
    display: flex !important; }
  .is-anchored .dropdown.menu > li > .is-dropdown-submenu a {
    color: #0a0a0a; }
  .dropdown.menu > li > .is-dropdown-submenu li {
    display: inline-block;
    -ms-flex: 0 1 auto;
        flex: 0 1 auto;
    width: auto; }
  .dropdown.menu > li > .is-dropdown-submenu a {
    font-size: 0.875rem; }
    .dropdown.menu > li > .is-dropdown-submenu a:after {
      display: none; }

@media screen and (max-width: 39.99875em) {
  .jump-nav {
    display: none; } }

.jump-nav.is-stuck {
  margin-top: 2.875rem !important; }
  body.admin-bar .jump-nav.is-stuck {
    margin-top: 4.875rem !important; }
  @media print, screen and (min-width: 64em) {
    .jump-nav.is-stuck {
      margin-top: 4.25rem !important; }
      body.admin-bar .jump-nav.is-stuck {
        margin-top: 6.25rem !important; } }

.jump-nav ul {
  list-style: none;
  margin: 0;
  border-bottom: 1px solid #f2f2f2;
  background: #fefefe; }
  .jump-nav ul li {
    display: inline-block;
    padding-top: 0.9375rem;
    padding-bottom: 0.9375rem;
    padding-left: 0.625rem;
    padding-right: 0.625rem; }
    @media print, screen and (min-width: 40em) {
      .jump-nav ul li {
        padding-left: 0.9375rem;
        padding-right: 0.9375rem; } }
    .jump-nav ul li a {
      font-size: 0.9375rem;
      font-weight: 500;
      color: #0a0a0a; }
    .jump-nav ul li.active a {
      color: #6800d2; }

.row.breadcrumb {
  /*margin-top: rem-calc(-5);*/
  top: 230px;
  z-index: 1;
  display: block;
  position: absolute; }
  .row.breadcrumb p.breadcrumbs {
    width: 100%;
    float: left;
    padding-right: 0.625rem;
    padding-left: 0.625rem;
    font-size: 0.75rem;
    color: #0a0a0a; }
    @media print, screen and (min-width: 40em) {
      .row.breadcrumb p.breadcrumbs {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem; } }
    .row.breadcrumb p.breadcrumbs, .row.breadcrumb p.breadcrumbs:last-child:not(:first-child) {
      float: left;
      clear: none; }
    .row.breadcrumb p.breadcrumbs:last-child:not(:first-child) {
      float: right; }
    .row.breadcrumb p.breadcrumbs a {
      color: #0a0a0a; }
  .site-header.white .row.breadcrumb p.breadcrumbs, section.news.blog .news .site-header.article:nth-child(5n + 1):not(.black) .row.breadcrumb p.breadcrumbs, section.news.blog .news .site-header.article:nth-child(5n + 5):not(.black) .row.breadcrumb p.breadcrumbs {
    color: #fefefe; }
    .site-header.white .row.breadcrumb p.breadcrumbs a, section.news.blog .news .site-header.article:nth-child(5n + 1):not(.black) .row.breadcrumb p.breadcrumbs a, section.news.blog .news .site-header.article:nth-child(5n + 5):not(.black) .row.breadcrumb p.breadcrumbs a {
      color: #fefefe; }
  .is-stuck + .row.breadcrumb {
    display: none; }

@media screen and (max-width: 1023px) {
  .row.breadcrumb {
    top: 80px; } }

@media screen and (max-width: 1023px) {
  nav.site-navigation {
    display: none !important; } }

.drilldown .is-drilldown-submenu {
  z-index: unset; }

.body-push, .slick-dots, .top-bar ul > li.mega-menu-grid > ul.mega-sub-menu,
.top-bar #mega-menu-wrap-top-bar-r #mega-menu-top-bar-r > li.mega-menu-grid > ul.mega-sub-menu, .dropdown.menu > li > .is-dropdown-submenu, body.single-case_study section.tabbed-content .tabs-wrapper, body.single-case_study section.tabbed-content .tabs-content {
  padding-left: 1.25rem !important;
  padding-right: 1.25rem !important; }
  @media screen and (min-width: 75em) {
    .body-push, .slick-dots, .top-bar ul > li.mega-menu-grid > ul.mega-sub-menu,
    .top-bar #mega-menu-wrap-top-bar-r #mega-menu-top-bar-r > li.mega-menu-grid > ul.mega-sub-menu, .dropdown.menu > li > .is-dropdown-submenu, body.single-case_study section.tabbed-content .tabs-wrapper, body.single-case_study section.tabbed-content .tabs-content {
      padding-left: 4.6875rem !important;
      padding-right: 4.6875rem !important; } }

.show-for-print-only {
  display: none; }

h2, .h2 {
  margin-bottom: 1.25rem; }

html:not([amp]) .no-hero {
  padding-top: 3.125rem;
  padding-bottom: 0; }
  @media print, screen and (min-width: 64em) {
    html:not([amp]) .no-hero {
      padding-top: 9.375rem;
      padding-bottom: 0; } }

body.busy {
  cursor: progress; }
  body.busy:after {
    content: "";
    position: fixed;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background: rgba(68, 0, 153, 0.9);
    z-index: 2000; }

.error404 article {
  padding-top: 2.5rem;
  padding-bottom: 2.5rem;
  padding-left: 0.625rem;
  padding-right: 0.625rem; }
  @media print, screen and (min-width: 40em) {
    .error404 article {
      padding-left: 0.9375rem;
      padding-right: 0.9375rem; } }

img[src*=".svg"] {
  height: inherit !important; }

table {
  width: 100% !important; }

p.label,
label {
  font-size: 0.75rem;
  font-weight: 500;
  margin-bottom: 0.3125rem; }
  @media print, screen and (min-width: 40em) {
    p.label,
    label {
      font-size: 0.875rem; } }

.main-container {
  clear: both; }

main section {
  padding-top: 1.875rem;
  padding-bottom: 1.875rem;
  overflow: hidden; }
  @media print, screen and (min-width: 64em) {
    main section {
      padding-top: 5rem;
      padding-bottom: 5rem; } }
  main section.light {
    color: #fefefe; }
    main section.light .button, main section.light .wp-block-button .wp-block-button__link, .wp-block-button main section.light .wp-block-button__link, main section.light section.promo-listing.contact .bg-image p:last-child a, section.promo-listing.contact .bg-image p:last-child main section.light a, main section.light section.promo-listing-2.contact .bg-image p:last-child a, section.promo-listing-2.contact .bg-image p:last-child main section.light a {
      background: #fefefe;
      color: #6800d2; }
      main section.light .button:hover, main section.light .wp-block-button .wp-block-button__link:hover, .wp-block-button main section.light .wp-block-button__link:hover, main section.light section.promo-listing.contact .bg-image p:last-child a:hover, section.promo-listing.contact .bg-image p:last-child main section.light a:hover, main section.light section.promo-listing-2.contact .bg-image p:last-child a:hover, section.promo-listing-2.contact .bg-image p:last-child main section.light a:hover {
        background: #fbe200; }
    main section.light .label {
      color: #fbe200; }

.button, .wp-block-button .wp-block-button__link, section.promo-listing.contact .bg-image p:last-child a, section.promo-listing-2.contact .bg-image p:last-child a {
  font-weight: 500; }

main ul:not([class]) {
  list-style: none;
  line-height: 1.4; }
  main ul:not([class]) li {
    position: relative;
    margin: 0.25rem 0; }
    main ul:not([class]) li:before {
      content: "";
      display: block;
      position: absolute;
      left: -0.9375rem;
      top: 0.5rem;
      width: 0.375rem;
      height: 0.375rem;
      border-radius: 0.25rem;
      background: #6800d2; }
    main ul:not([class]) li > ul li:before {
      border-radius: 0;
      height: 0.0625rem;
      top: 0.75rem; }
    main ul:not([class]) li h1, main ul:not([class]) li h2, main ul:not([class]) li h3, main ul:not([class]) li h4, main ul:not([class]) li h5, main ul:not([class]) li h6 {
      margin-bottom: 0 !important;
      line-height: 1.2; }

main .light ul:not([class]) li:before {
  background: #fefefe; }

blockquote {
  border-left: 0;
  padding: 0; }
  blockquote, blockquote p {
    color: #0a0a0a; }
  blockquote p {
    position: relative;
    line-height: 1.2;
    font-weight: 500;
    font-size: 1.25rem; }
    @media print, screen and (min-width: 40em) {
      blockquote p {
        font-size: 2.125rem; } }
    blockquote p:before {
      content: "“";
      margin-left: -0.4em; }
    blockquote p:after {
      content: "”"; }
  blockquote cite {
    color: #6800d2;
    font-style: normal;
    font-size: 100%;
    margin-bottom: 2.5rem; }
    blockquote cite:before {
      display: none; }
  body.single-post blockquote p:before, body.single-post blockquote p:after,
  body.single-blog blockquote p:before,
  body.single-blog blockquote p:after {
    display: none; }

.reveal {
  padding: 2.5rem; }

.reveal.iframe {
  height: 90vh; }
  .reveal.iframe .iframe-wrapper {
    height: 100%; }

.reveal-overlay {
  -webkit-backdrop-filter: blur(0.25rem);
          backdrop-filter: blur(0.25rem); }

.reveal.gammapopup-container {
  height: 100%; }
  @media print, screen and (min-width: 40em) {
    .reveal.gammapopup-container {
      border-radius: 0.25rem;
      height: 75%; } }
  .reveal.gammapopup-container .gammapopup-content {
    height: 100%; }

div.search form {
  padding-top: 0.625rem;
  margin-right: -0.625rem;
  padding-right: 0 !important; }
  @media screen and (max-width: 39.99875em) {
    div.search form {
      padding-left: 0 !important; } }
  div.search form input[type="text"] {
    border: 0;
    border-bottom: 1px solid #cacaca;
    box-shadow: none; }
  div.search form button {
    background: transparent;
    border-bottom: 1px solid #cacaca;
    padding-right: 0.625rem;
    padding-left: 0.625rem; }

ul.listing {
  list-style: none;
  margin: 0 0 1.25rem; }
  ul.listing li {
    font-weight: 500;
    padding-bottom: 0.5rem; }
    ul.listing li a:after {
      white-space: nowrap;
      content: "";
      display: inline-block;
      position: relative;
      top: -0.125rem;
      right: auto;
      margin-left: -1.25rem;
      margin-top: auto;
      border: 2px solid transparent;
      border-right-color: #6800d2;
      border-top-color: #6800d2;
      width: 0.625rem;
      height: 0.625rem;
      -ms-transform: rotate(45deg) translate(20px, -18px);
          transform: rotate(45deg) translate(20px, -18px);
      vertical-align: baseline; }
      @media screen and (max-width: 39.99875em) {
        ul.listing li a:after {
          margin-left: -1.5625rem;
          top: -0.0625rem;
          -ms-transform: rotate(45deg) translate(20px, -18px) scale(0.8);
              transform: rotate(45deg) translate(20px, -18px) scale(0.8); } }

ul.share,
footer.footer-container ul {
  list-style-type: none;
  margin: 0;
  padding: 0; }
  ul.share li,
  footer.footer-container ul li {
    display: inline-block; }
  ul.share li.topnav-only,
  footer.footer-container ul li.topnav-only {
    display: none; }
  ul.share a[href*="twitter.com"],
  ul.share a[href*="facebook.com"],
  ul.share a[href*="linkedin.com"],
  ul.share a[href*="youtube.com"],
  footer.footer-container ul a[href*="twitter.com"],
  footer.footer-container ul a[href*="facebook.com"],
  footer.footer-container ul a[href*="linkedin.com"],
  footer.footer-container ul a[href*="youtube.com"] {
    text-indent: -624.9375rem;
    display: block;
    position: relative;
    width: 2rem;
    height: 2rem;
    overflow: hidden; }
    ul.share a[href*="twitter.com"]:after,
    ul.share a[href*="facebook.com"]:after,
    ul.share a[href*="linkedin.com"]:after,
    ul.share a[href*="youtube.com"]:after,
    footer.footer-container ul a[href*="twitter.com"]:after,
    footer.footer-container ul a[href*="facebook.com"]:after,
    footer.footer-container ul a[href*="linkedin.com"]:after,
    footer.footer-container ul a[href*="youtube.com"]:after {
      content: "";
      display: block;
      position: absolute;
      top: 0;
      left: 0;
      width: 2rem;
      height: 2rem;
      background-size: 100% auto;
      background-repeat: no-repeat; }
  ul.share a[href*="twitter.com"]:after,
  footer.footer-container ul a[href*="twitter.com"]:after {
    background: url(//www.telsis.com/wp-content/themes/gamma/dist/assets/css/../images/icon_twitter.svg); }
  ul.share a[href*="facebook.com"]:after,
  footer.footer-container ul a[href*="facebook.com"]:after {
    background: url(//www.telsis.com/wp-content/themes/gamma/dist/assets/css/../images/icon_facebook.svg); }
  ul.share a[href*="linkedin.com"]:after,
  footer.footer-container ul a[href*="linkedin.com"]:after {
    background: url(//www.telsis.com/wp-content/themes/gamma/dist/assets/css/../images/icon_linkedin.svg); }
  ul.share a[href*="youtube.com"]:after,
  footer.footer-container ul a[href*="youtube.com"]:after {
    background: url(//www.telsis.com/wp-content/themes/gamma/dist/assets/css/../images/icon_youtube.svg); }

.form.filter {
  padding-bottom: 2.5rem; }
  .form.filter h2 {
    font-size: 100%;
    padding-left: 0.625rem;
    padding-right: 0.625rem; }
    @media print, screen and (min-width: 40em) {
      .form.filter h2 {
        padding-left: 0.9375rem;
        padding-right: 0.9375rem; } }
  @media print, screen and (min-width: 40em) {
    .form.filter form {
      display: -ms-flexbox;
      display: flex;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
      -ms-flex-pack: start;
          justify-content: flex-start;
      -ms-flex-align: center;
          align-items: center; } }
  @media print, screen and (min-width: 40em) {
    .form.filter form {
      -ms-flex-wrap: nowrap;
          flex-wrap: nowrap; } }
  .form.filter form p {
    padding-left: 0.625rem;
    padding-right: 0.625rem; }
    @media print, screen and (min-width: 40em) {
      .form.filter form p {
        -ms-flex: 1 1 0px;
            flex: 1 1 0;
        padding-left: 0.9375rem;
        padding-right: 0.9375rem; }
        .form.filter form p:last-child {
          -ms-flex: 0 1 0px;
              flex: 0 1 0; } }
    .form.filter form p label {
      display: none; }
    .form.filter form p .select2-container--default .select2-selection--single {
      background: #f2f2f2; }
    .form.filter form p button {
      margin-bottom: 0; }

.pagination {
  margin: 2.5rem 0; }
  .ajax-activated .pagination {
    display: none; }

button.ajax-append {
  display: block;
  margin: 2.5rem auto; }

.slick-arrow {
  background: #f2f2f2;
  color: #6800d2;
  height: 3.125rem;
  width: 3.125rem;
  top: 50%;
  -ms-transform: translateY(-50%);
      transform: translateY(-50%); }
  .slick-arrow:before {
    border: 0.1875rem solid transparent;
    height: 1rem;
    width: 1rem; }

.slick-next {
  left: auto;
  right: 0; }
  .slick-next:before {
    border-top-color: #6800d2;
    border-right-color: #6800d2;
    margin-left: -0.4375rem; }

.slick-prev {
  right: auto;
  left: 0; }
  .slick-prev:before {
    border-top-color: #6800d2;
    border-left-color: #6800d2;
    margin-left: 0.4375rem; }

.admin-bar .select2-dropdown {
  -ms-transform: translateY(1.9375rem);
      transform: translateY(1.9375rem); }

.wistia_responsive_padding {
  padding: 56.25% 0 0 0;
  position: relative; }

.wistia_responsive_wrapper {
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%; }

.wistia_embed {
  height: 100%;
  position: relative;
  width: 100%; }

.wistia_swatch {
  height: 100%;
  left: 0;
  opacity: 0;
  overflow: hidden;
  position: absolute;
  top: 0;
  transition: opacity 200ms;
  width: 100%; }
  .wistia_swatch img {
    filter: blur(5px);
    height: 100%;
    -o-object-fit: contain;
       object-fit: contain;
    width: 100%; }

body.single-blog .breadcrumb_last,
body.single-event .breadcrumb_last,
body.single-case_study .breadcrumb_last,
body.single-post .breadcrumb_last {
  display: none; }

body.single-blog .breadcrumbs > span,
body.single-event .breadcrumbs > span,
body.single-case_study .breadcrumbs > span,
body.single-post .breadcrumbs > span {
  display: inline-block;
  margin-right: -0.5em;
  -webkit-clip-path: inset(0 5px 0 0);
          clip-path: inset(0 5px 0 0); }

html[amp] *[data-aos] {
  -ms-transform: none;
      transform: none;
  opacity: 1; }

section.html:first-child:last-child .content {
  max-width: 56.25rem;
  width: 100%;
  float: left;
  padding-right: 0.625rem;
  padding-left: 0.625rem; }
  @media print, screen and (min-width: 40em) {
    section.html:first-child:last-child .content {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
  section.html:first-child:last-child .content, section.html:first-child:last-child .content:last-child:not(:first-child) {
    float: left;
    clear: none; }
  section.html:first-child:last-child .content:last-child:not(:first-child) {
    float: right; }

.close-button {
  background-color: #6800d2;
  color: #fefefe;
  font-weight: 100;
  font-size: 3.125rem;
  width: 3.125rem;
  height: 3.125rem;
  border-radius: 50%;
  top: 1.875rem;
  right: 1.875rem; }
  .close-button span {
    display: block;
    margin-top: -0.25rem; }
  .close-button:hover {
    background-color: #fbe200; }

.footer-container {
  padding-right: 0.625rem;
  padding-left: 0.625rem;
  max-width: 75rem;
  margin: 0 auto;
  max-width: none;
  padding-top: 0;
  background: #f2f2f2; }
  @media print, screen and (min-width: 40em) {
    .footer-container {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }

.footer-grid {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-flow: row wrap;
      flex-flow: row wrap;
  padding: 1.25rem 0; }
  @media print, screen and (min-width: 64em) {
    .footer-grid {
      padding: 5rem 0; } }
  .footer-grid .logo {
    width: 16.66667%;
    margin-left: 0.625rem;
    margin-right: 0.625rem; }
    @media print, screen and (min-width: 40em) {
      .footer-grid .logo {
        margin-left: 0.9375rem;
        margin-right: 0.9375rem; } }
    .footer-grid .logo svg {
      max-width: 9.375rem; }
  .footer-grid section {
    -ms-flex: 0 0 auto;
        flex: 0 0 auto;
    min-height: 0px;
    min-width: 0px;
    width: calc(100% - 1.25rem);
    margin-right: 0.625rem;
    margin-left: 0.625rem;
    font-size: 0.8125rem; }
    @media print, screen and (min-width: 64em) {
      .footer-grid section {
        -ms-flex: 1 1 0px;
            flex: 1 1 0px;
        width: auto;
        margin-right: 0.9375rem;
        margin-left: 0.9375rem; } }
    .footer-grid section a {
      color: #0a0a0a; }
      .footer-grid section a:hover {
        color: #6800d2; }
    .footer-grid section h6 {
      font-size: 0.8125rem; }
    .footer-grid section.widget_nav_menu {
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
      padding-top: 1.25rem;
      padding-bottom: 1.875rem;
      margin-left: 0;
      margin-right: 0; }
      .footer-grid section.widget_nav_menu .menu-main-menu-container {
        float: right;
        width: 100%; }
        .footer-grid section.widget_nav_menu .menu-main-menu-container .menu {
          -ms-flex-pack: end;
              justify-content: flex-end;
          -ms-flex-line-pack: stretch;
              align-content: stretch; }
          .footer-grid section.widget_nav_menu .menu-main-menu-container .menu li {
            -ms-flex: 1 1 100%;
                flex: 1 1 100%; }
            @media print, screen and (min-width: 40em) {
              .footer-grid section.widget_nav_menu .menu-main-menu-container .menu li {
                -ms-flex-preferred-size: 0;
                    flex-basis: 0; } }
            .footer-grid section.widget_nav_menu .menu-main-menu-container .menu li a {
              font-size: 0.8125rem;
              padding-left: 0;
              padding-right: 0;
              padding-top: 0.3125rem;
              padding-bottom: 0.3125rem; }
          .footer-grid section.widget_nav_menu .menu-main-menu-container .menu > li {
            padding-left: 0.625rem;
            padding-right: 0.625rem; }
            @media print, screen and (min-width: 40em) {
              .footer-grid section.widget_nav_menu .menu-main-menu-container .menu > li {
                padding-left: 0.9375rem;
                padding-right: 0.9375rem; } }
            .footer-grid section.widget_nav_menu .menu-main-menu-container .menu > li > a {
              font-weight: 500; }
            .footer-grid section.widget_nav_menu .menu-main-menu-container .menu > li li {
              display: none; }
              @media print, screen and (min-width: 40em) {
                .footer-grid section.widget_nav_menu .menu-main-menu-container .menu > li li {
                  display: list-item; }
                  .footer-grid section.widget_nav_menu .menu-main-menu-container .menu > li li.top-nav-only {
                    display: none; } }
            .footer-grid section.widget_nav_menu .menu-main-menu-container .menu > li.footer-only:first-child {
              border-right: 1px solid #6800d2;
              padding-right: 0;
              margin-right: 0.625rem; }
              @media print, screen and (min-width: 40em) {
                .footer-grid section.widget_nav_menu .menu-main-menu-container .menu > li.footer-only:first-child {
                  margin-right: 0.9375rem; } }
              @media screen and (max-width: 39.99875em) {
                .footer-grid section.widget_nav_menu .menu-main-menu-container .menu > li.footer-only:first-child {
                  border-right: 0; } }
              .footer-grid section.widget_nav_menu .menu-main-menu-container .menu > li.footer-only:first-child a {
                color: #6800d2; }
          .footer-grid section.widget_nav_menu .menu-main-menu-container .menu .sub-menu .sub-menu {
            display: none; }
      .footer-grid section.widget_nav_menu + section {
        -ms-flex: 1 1 100%;
            flex: 1 1 100%;
        border-bottom: 1px solid #8a8a8a;
        margin-bottom: 1.25rem; }
        .footer-grid section.widget_nav_menu + section .textwidget ul {
          margin-left: -0.3125rem; }
          .footer-grid section.widget_nav_menu + section .textwidget ul li {
            display: inline-block; }
        @media print, screen and (min-width: 40em) {
          .footer-grid section.widget_nav_menu + section + section > div {
            display: -ms-flexbox;
            display: flex;
            -ms-flex-pack: justify;
                justify-content: space-between; } }
        .footer-grid section.widget_nav_menu + section + section > div ul {
          margin: 0 -0.3125rem; }
          .footer-grid section.widget_nav_menu + section + section > div ul li {
            display: inline-block;
            border-right: 1px solid #8a8a8a;
            padding-right: 0.3125rem;
            padding-left: 0.3125rem; }
            @media print, screen and (min-width: 40em) {
              .footer-grid section.widget_nav_menu + section + section > div ul li {
                padding-right: 0.625rem;
                padding-left: 0.625rem; } }
            .footer-grid section.widget_nav_menu + section + section > div ul li:last-child {
              border-right: 0;
              padding-right: 0; }

body#tinymce {
  height: auto;
  max-width: none;
  padding: 1.25rem !important; }

.sites-button {
  background: #6800d2;
  font-size: 1.25rem;
  font-weight: bold;
  box-shadow: 0 -2px 0 rgba(0, 0, 0, 0.2) inset;
  border-radius: 3px;
  border: none; }

section.carousel-slide .row h2 {
  display: inline-block; }

section.carousel-slide .row .cta {
  display: inline-block; }

section.carousel-slide .row .carousel {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: row;
      flex-direction: row;
  width: 100%; }
  section.carousel-slide .row .carousel .slide .card-container img {
    height: 9.375rem;
    width: auto; }

section.contact-details h2 {
  width: 100%;
  float: left;
  padding-right: 0.625rem;
  padding-left: 0.625rem;
  margin-bottom: 2.1875rem; }
  @media print, screen and (min-width: 40em) {
    section.contact-details h2 {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
  section.contact-details h2, section.contact-details h2:last-child:not(:first-child) {
    float: left;
    clear: none; }
  section.contact-details h2:last-child:not(:first-child) {
    float: right; }

section.contact-details .contact-details-list {
  margin: 0;
  padding: 0; }
  section.contact-details .contact-details-list .contact-details-block {
    width: 100%;
    float: left;
    padding-right: 0.625rem;
    padding-left: 0.625rem;
    list-style-type: none; }
    @media print, screen and (min-width: 40em) {
      section.contact-details .contact-details-list .contact-details-block {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem; } }
    section.contact-details .contact-details-list .contact-details-block, section.contact-details .contact-details-list .contact-details-block:last-child:not(:first-child) {
      float: left;
      clear: none; }
    section.contact-details .contact-details-list .contact-details-block:last-child:not(:first-child) {
      float: right; }
    @media print, screen and (min-width: 40em) {
      section.contact-details .contact-details-list .contact-details-block {
        width: 33.33333%; } }
    section.contact-details .contact-details-list .contact-details-block h3 {
      color: #6800d2;
      font-size: 1.0625rem;
      margin-bottom: 1.25rem; }
    section.contact-details .contact-details-list .contact-details-block p span {
      color: #6800d2; }

section.contact-form .content {
  width: 100%;
  float: left;
  padding-right: 0.625rem;
  padding-left: 0.625rem; }
  @media print, screen and (min-width: 40em) {
    section.contact-form .content {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
  section.contact-form .content, section.contact-form .content:last-child:not(:first-child) {
    float: left;
    clear: none; }
  section.contact-form .content:last-child:not(:first-child) {
    float: right; }
  section.contact-form .content > .wpcf7 {
    padding-top: 1.25rem;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
        flex-direction: column;
    margin-left: -0.9375rem;
    margin-right: -0.9375rem;
    width: 100%; }
    @media print, screen and (min-width: 40em) {
      section.contact-form .content > .wpcf7 {
        -ms-flex-direction: row;
            flex-direction: row; } }
    section.contact-form .content > .wpcf7 .wpcf7-form {
      display: -ms-flexbox;
      display: flex;
      -ms-flex-direction: row;
          flex-direction: row;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
      width: 100%; }
    section.contact-form .content > .wpcf7 .input-field {
      width: 100%;
      float: left;
      padding-right: 0.625rem;
      padding-left: 0.625rem; }
      @media print, screen and (min-width: 40em) {
        section.contact-form .content > .wpcf7 .input-field {
          padding-right: 0.9375rem;
          padding-left: 0.9375rem; } }
      section.contact-form .content > .wpcf7 .input-field, section.contact-form .content > .wpcf7 .input-field:last-child:not(:first-child) {
        float: left;
        clear: none; }
      section.contact-form .content > .wpcf7 .input-field:last-child:not(:first-child) {
        float: right; }
      @media print, screen and (min-width: 40em) {
        section.contact-form .content > .wpcf7 .input-field {
          width: 50%; } }
      section.contact-form .content > .wpcf7 .input-field input, section.contact-form .content > .wpcf7 .input-field select, section.contact-form .content > .wpcf7 .input-field .select2-selection {
        background-color: #f2f2f2;
        border: none;
        border-radius: 0.9375rem;
        box-shadow: none; }
      section.contact-form .content > .wpcf7 .input-field [type='radio'] {
        border: 0.0625rem solid #0a0a0a;
        box-shadow: none;
        margin-right: 0.3125rem; }
      section.contact-form .content > .wpcf7 .input-field [type='submit'] {
        background-color: #6800d2;
        max-width: 20.3125rem;
        margin-top: 0.9375rem;
        padding-bottom: 0.75rem;
        padding-top: 0.625rem;
        width: 100%; }
      section.contact-form .content > .wpcf7 .input-field:nth-last-child(3) {
        margin-top: 1.25rem; }
      section.contact-form .content > .wpcf7 .input-field:nth-last-child(2) [type='submit'] {
        margin-top: 1.875rem; }

section.contact-group-locations {
  padding-bottom: 0 !important;
  padding-top: 0 !important; }
  section.contact-group-locations ul.contact-address-list {
    list-style-type: none;
    margin: 0; }
    section.contact-group-locations ul.contact-address-list .contact-card-item {
      display: -ms-flexbox;
      display: flex;
      -ms-flex-direction: row;
          flex-direction: row;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap; }
      @media print, screen and (min-width: 64em) {
        section.contact-group-locations ul.contact-address-list .contact-card-item .contact-card-column {
          width: 50%; } }
      section.contact-group-locations ul.contact-address-list .contact-card-item .contact-card-column .content {
        width: 100%;
        float: left;
        padding-right: 0.625rem;
        padding-left: 0.625rem; }
        @media print, screen and (min-width: 40em) {
          section.contact-group-locations ul.contact-address-list .contact-card-item .contact-card-column .content {
            padding-right: 0.9375rem;
            padding-left: 0.9375rem; } }
        section.contact-group-locations ul.contact-address-list .contact-card-item .contact-card-column .content, section.contact-group-locations ul.contact-address-list .contact-card-item .contact-card-column .content:last-child:not(:first-child) {
          float: left;
          clear: none; }
        section.contact-group-locations ul.contact-address-list .contact-card-item .contact-card-column .content:last-child:not(:first-child) {
          float: right; }
      section.contact-group-locations ul.contact-address-list .contact-card-item .contact-card-map {
        -ms-flex-order: 2;
            order: 2;
        padding-left: 0 !important;
        padding-right: 0 !important; }
        section.contact-group-locations ul.contact-address-list .contact-card-item .contact-card-map .acf-map {
          width: 100%;
          height: 72vw;
          border: #ccc solid 1px;
          margin: 0; }
          @media print, screen and (min-width: 40em) {
            section.contact-group-locations ul.contact-address-list .contact-card-item .contact-card-map .acf-map {
              height: 25rem; } }
          @media print, screen and (min-width: 64em) {
            section.contact-group-locations ul.contact-address-list .contact-card-item .contact-card-map .acf-map {
              height: 28vw;
              min-height: 26.5625rem; } }
          section.contact-group-locations ul.contact-address-list .contact-card-item .contact-card-map .acf-map img {
            max-width: inherit !important; }
      section.contact-group-locations ul.contact-address-list .contact-card-item .contact-card-address {
        display: -ms-flexbox;
        display: flex;
        -ms-flex-direction: column;
            flex-direction: column;
        -ms-flex-pack: center;
            justify-content: center;
        -ms-flex-order: 1;
            order: 1;
        padding: 2.5rem 1.25rem;
        position: relative; }
        @media print, screen and (min-width: 40em) {
          section.contact-group-locations ul.contact-address-list .contact-card-item .contact-card-address {
            padding: 3.75rem 1.25rem; } }
        @media print, screen and (min-width: 64em) {
          section.contact-group-locations ul.contact-address-list .contact-card-item .contact-card-address {
            padding: 5rem 1.25rem; } }
        section.contact-group-locations ul.contact-address-list .contact-card-item .contact-card-address p {
          line-height: 1.27em;
          font-size: 1.125rem;
          letter-spacing: -0.00187rem;
          position: relative;
          z-index: 1; }
          @media print, screen and (min-width: 40em) {
            section.contact-group-locations ul.contact-address-list .contact-card-item .contact-card-address p {
              font-size: 1.625rem; } }
        section.contact-group-locations ul.contact-address-list .contact-card-item .contact-card-address a {
          font-size: 1rem;
          letter-spacing: -0.00187rem; }
          section.contact-group-locations ul.contact-address-list .contact-card-item .contact-card-address a:after {
            content: "";
            display: inline-block;
            height: 0.5rem;
            width: 0.5rem;
            margin-bottom: 0.125rem;
            margin-left: 0.25rem;
            -ms-transform: rotate(-45deg);
                transform: rotate(-45deg); }
          section.contact-group-locations ul.contact-address-list .contact-card-item .contact-card-address a:hover:after {
            margin-left: 0.625rem; }
        section.contact-group-locations ul.contact-address-list .contact-card-item .contact-card-address:after {
          content: "";
          height: 2.5rem;
          width: 2.5rem;
          position: absolute;
          bottom: -1.25rem;
          left: 50%;
          -ms-transform: translateX(-50%) rotate(-45deg);
              transform: translateX(-50%) rotate(-45deg); }
          @media print, screen and (min-width: 64em) {
            section.contact-group-locations ul.contact-address-list .contact-card-item .contact-card-address:after {
              bottom: unset;
              left: calc(100% - 20px);
              top: 50%;
              -ms-transform: translateY(-50%) rotate(-45deg);
                  transform: translateY(-50%) rotate(-45deg); } }
      section.contact-group-locations ul.contact-address-list .contact-card-item[style*="#0a0a0a"] .contact-card-address:after {
        background-color: #0a0a0a; }
      section.contact-group-locations ul.contact-address-list .contact-card-item[style*="#b2b2b2"] .contact-card-address:after {
        background-color: #b2b2b2; }
      section.contact-group-locations ul.contact-address-list .contact-card-item[style*="#f2f2f2"] .contact-card-address:after {
        background-color: #f2f2f2; }
      section.contact-group-locations ul.contact-address-list .contact-card-item[style*="#6800d2"] .contact-card-address:after {
        background-color: #6800d2; }
      section.contact-group-locations ul.contact-address-list .contact-card-item[style*="#9e29fd"] .contact-card-address:after {
        background-color: #9e29fd; }
      section.contact-group-locations ul.contact-address-list .contact-card-item[style*="#440099"] .contact-card-address:after {
        background-color: #440099; }
      section.contact-group-locations ul.contact-address-list .contact-card-item[style*="#fbe200"] .contact-card-address:after {
        background-color: #fbe200; }
      section.contact-group-locations ul.contact-address-list .contact-card-item[style*="#fafafa"] .contact-card-address:after {
        background-color: #fafafa; }
      @media print, screen and (min-width: 64em) {
        section.contact-group-locations ul.contact-address-list .contact-card-item:nth-child(odd) .contact-card-address {
          -ms-flex-order: 2;
              order: 2; }
          section.contact-group-locations ul.contact-address-list .contact-card-item:nth-child(odd) .contact-card-address:after {
            right: unset;
            left: -1.25rem; } }
      @media print, screen and (min-width: 64em) {
        section.contact-group-locations ul.contact-address-list .contact-card-item:nth-child(odd) .contact-card-map {
          -ms-flex-order: 1;
              order: 1; } }

#moove_gdpr_cookie_info_bar {
  padding-top: 1.25rem;
  padding-bottom: 1.25rem;
  padding-left: 1.5625rem !important;
  padding-right: 1.5625rem !important; }
  @media screen and (min-width: 75em) {
    #moove_gdpr_cookie_info_bar {
      padding-left: 4.6875rem !important;
      padding-right: 4.6875rem !important; } }
  #moove_gdpr_cookie_info_bar .moove-gdpr-info-bar-container {
    padding: 0 !important;
    width: 100%; }
    #moove_gdpr_cookie_info_bar .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content {
      -ms-flex-direction: row;
          flex-direction: row;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
      padding-left: 0 !important;
      padding-right: 0 !important; }
      #moove_gdpr_cookie_info_bar .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content .moove-gdpr-cookie-notice {
        -ms-flex: 1 1 auto;
            flex: 1 1 auto; }
        @media print, screen and (min-width: 64em) {
          #moove_gdpr_cookie_info_bar .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content .moove-gdpr-cookie-notice {
            padding-left: 0.9375rem;
            padding-right: 0.9375rem; } }
        #moove_gdpr_cookie_info_bar .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content .moove-gdpr-cookie-notice p {
          color: #0a0a0a !important;
          font-size: 1rem;
          font-weight: 400;
          line-height: 1.625rem;
          margin-bottom: 1.25rem; }
          @media print, screen and (min-width: 40em) {
            #moove_gdpr_cookie_info_bar .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content .moove-gdpr-cookie-notice p {
              margin-bottom: 0; } }
      #moove_gdpr_cookie_info_bar .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content .moove-gdpr-button-holder {
        -ms-flex: 1 1 auto;
            flex: 1 1 auto;
        padding-left: 0 !important; }
        @media print, screen and (min-width: 64em) {
          #moove_gdpr_cookie_info_bar .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content .moove-gdpr-button-holder {
            padding-left: 0.9375rem !important;
            padding-right: 0.9375rem !important; } }
  #moove_gdpr_cookie_info_bar.moove-gdpr-dark-scheme {
    background-color: #fbe200 !important;
    border-color: transparent !important; }

section.hero-slide {
  background: white;
  color: #fefefe;
  padding: 0;
  position: relative; }
  section.hero-slide > .slide {
    display: none; }
    section.hero-slide > .slide:first-child {
      display: block; }
      @media print, screen and (min-width: 40em) {
        section.hero-slide > .slide:first-child {
          display: -ms-flexbox;
          display: flex; } }
    section.hero-slide > .slide .row a.button, section.hero-slide > .slide .row .wp-block-button a.wp-block-button__link, .wp-block-button section.hero-slide > .slide .row a.wp-block-button__link, section.hero-slide > .slide .row section.promo-listing.contact .bg-image p:last-child a, section.promo-listing.contact .bg-image p:last-child section.hero-slide > .slide .row a, section.hero-slide > .slide .row section.promo-listing-2.contact .bg-image p:last-child a, section.promo-listing-2.contact .bg-image p:last-child section.hero-slide > .slide .row a {
      margin-top: 1.25rem; }
  section.hero-slide .slide {
    height: auto;
    position: relative;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
        align-items: center; }
    @media print, screen and (min-width: 40em) {
      section.hero-slide .slide {
        min-height: 31.25rem; } }
    @media screen and (min-width: 75em) {
      section.hero-slide .slide {
        height: calc(100vh - 100px);
        min-height: 37.5rem;
        font-size: 1.125rem;
        -ms-flex-align: center;
            align-items: center; }
        body.home section.hero-slide .slide {
          min-height: 100vh; } }
    @media print, screen and (min-width: 40em) {
      body[data-slug="products"] section.hero-slide .slide .content .text .title {
        max-width: 28.125rem; } }
    @media print, screen and (min-width: 64em) {
      body[data-slug="products"] section.hero-slide .slide .content .text .title {
        max-width: 34.375rem; } }
    body[data-slug="solutions"] section.hero-slide .slide {
      min-height: 0;
      max-height: 37.5rem; }
    body[data-slug="find-a-partner"] section.hero-slide .slide {
      min-height: 0;
      max-height: 37.5rem; }
    body.page-template-page-contact section.hero-slide .slide {
      background-image: url(//www.telsis.com/wp-content/themes/gamma/dist/assets/css/../images/bg-dots.png), linear-gradient(80deg, #6800d2 60%, #30164a 100%) !important;
      background-repeat: no-repeat !important;
      background-size: auto 100% !important;
      background-position: right 0 !important; }
    section.hero-slide .slide > .row a.button, section.hero-slide .slide > .row .wp-block-button a.wp-block-button__link, .wp-block-button section.hero-slide .slide > .row a.wp-block-button__link, section.hero-slide .slide > .row section.promo-listing.contact .bg-image p:last-child a, section.promo-listing.contact .bg-image p:last-child section.hero-slide .slide > .row a, section.hero-slide .slide > .row section.promo-listing-2.contact .bg-image p:last-child a, section.promo-listing-2.contact .bg-image p:last-child section.hero-slide .slide > .row a {
      background-color: #fefefe;
      color: #6800d2; }
      section.hero-slide .slide > .row a.button:hover, section.hero-slide .slide > .row .wp-block-button a.wp-block-button__link:hover, .wp-block-button section.hero-slide .slide > .row a.wp-block-button__link:hover, section.hero-slide .slide > .row section.promo-listing.contact .bg-image p:last-child a:hover, section.promo-listing.contact .bg-image p:last-child section.hero-slide .slide > .row a:hover, section.hero-slide .slide > .row section.promo-listing-2.contact .bg-image p:last-child a:hover, section.promo-listing-2.contact .bg-image p:last-child section.hero-slide .slide > .row a:hover, section.hero-slide .slide > .row a.button:focus, section.hero-slide .slide > .row .wp-block-button a.wp-block-button__link:focus, .wp-block-button section.hero-slide .slide > .row a.wp-block-button__link:focus, section.hero-slide .slide > .row section.promo-listing.contact .bg-image p:last-child a:focus, section.promo-listing.contact .bg-image p:last-child section.hero-slide .slide > .row a:focus, section.hero-slide .slide > .row section.promo-listing-2.contact .bg-image p:last-child a:focus, section.promo-listing-2.contact .bg-image p:last-child section.hero-slide .slide > .row a:focus {
        background-color: #fbe200; }
    section.hero-slide .slide .content {
      position: relative;
      z-index: 2;
      width: 100%;
      min-height: 60vw;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-direction: column;
          flex-direction: column;
      -ms-flex-pack: end;
          justify-content: flex-end; }
      @media print, screen and (min-width: 40em) {
        section.hero-slide .slide .content {
          min-height: 0;
          display: -ms-flexbox;
          display: flex;
          -ms-flex-pack: justify;
              justify-content: space-between;
          -ms-flex-line-pack: center;
              align-content: center;
          -ms-flex-direction: row;
              flex-direction: row; } }
      section.hero-slide .slide .content .text {
        -ms-flex: 1 1 auto;
            flex: 1 1 auto;
        position: relative;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-direction: column;
            flex-direction: column;
        -ms-flex-pack: center;
            justify-content: center;
        padding: 3.75rem 0 3.75rem; }
        @media print, screen and (min-width: 64em) {
          section.hero-slide .slide .content .text {
            max-width: 50%;
            padding: 9.375rem 0 3.125rem; } }
        section.hero-slide .slide .content .text.black {
          color: #0a0a0a; }
        @media print, screen and (min-width: 40em) {
          body[data-slug="solutions"] section.hero-slide .slide .content .text {
            max-width: 50%; } }
        @media print, screen and (min-width: 64em) {
          body[data-slug="solutions"] section.hero-slide .slide .content .text {
            padding-right: 7.5rem; } }
      section.hero-slide .slide .content .form {
        display: none;
        -ms-flex: 1 1 100%;
            flex: 1 1 100%;
        -ms-flex-pack: center;
            justify-content: center;
        margin: 1.875rem 0 2.5rem; }
        @media print, screen and (min-width: 64em) {
          section.hero-slide .slide .content .form {
            margin: 9.375rem 0 3.125rem; } }
        section.hero-slide .slide .content .form.activated {
          display: -ms-flexbox;
          display: flex;
          width: 100%; }
        @media print, screen and (min-width: 40em) {
          section.hero-slide .slide .content .form {
            max-width: 50%; } }
        section.hero-slide .slide .content .form form {
          width: 100%;
          max-width: 18.75rem; }
          @media print, screen and (min-width: 40em) {
            section.hero-slide .slide .content .form form {
              padding-top: 3.125rem; } }
          section.hero-slide .slide .content .form form label {
            display: none; }
      section.hero-slide .slide .content > img,
      section.hero-slide .slide .content > picture {
        margin-top: 7.5rem;
        margin-bottom: 2.5rem;
        max-width: 37.5rem;
        width: 45%;
        -ms-flex: 1 0 0px;
            flex: 1 0 0;
        -ms-flex-item-align: start;
            align-self: flex-start;
        height: auto; }
        @media screen and (max-width: 39.99875em) {
          section.hero-slide .slide .content > img,
          section.hero-slide .slide .content > picture {
            display: none; } }
      section.hero-slide .slide .content > div.embed-container {
        margin-top: 7.5rem;
        margin-bottom: 2.5rem;
        max-width: 37.5rem;
        -ms-flex: 1 1 100%;
            flex: 1 1 100%;
        max-width: 100%;
        width: 100%;
        -ms-flex-item-align: start;
            align-self: flex-start;
        height: auto; }
        @media print, screen and (min-width: 64em) {
          section.hero-slide .slide .content > div.embed-container {
            width: 45%;
            -ms-flex: 1 0 0px;
                flex: 1 0 0; } }
        section.hero-slide .slide .content > div.embed-container > .embed-content {
          padding: 1.5rem 2.5rem;
          background: #fff;
          width: 75%;
          margin: auto;
          color: #000;
          box-shadow: 0 0.5rem 1rem #0000004d;
          border-radius: 0.25rem; }
          section.hero-slide .slide .content > div.embed-container > .embed-content > h2 {
            text-align: center; }
          @media screen and (max-width: 39.99875em) {
            section.hero-slide .slide .content > div.embed-container > .embed-content {
              width: 90%; } }
          section.hero-slide .slide .content > div.embed-container > .embed-content > .embed-iframe {
            background: #fff;
            height: 535px;
            padding: 1rem;
            border: 0;
            width: 100%;
            display: block;
            margin: auto; }
    section.hero-slide .slide .bg-image {
      background-size: cover;
      background-repeat: no-repeat;
      position: relative !important;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-align: end;
          align-items: flex-end;
      padding-top: 3.75rem;
      width: 100%;
      height: auto; }
      @media print, screen and (min-width: 40em) {
        section.hero-slide .slide .bg-image {
          min-height: 31.25rem; } }
      @media screen and (min-width: 75em) {
        section.hero-slide .slide .bg-image {
          padding-top: 0;
          height: calc(100vh - 100px);
          min-height: 37.5rem;
          font-size: 1.125rem;
          -ms-flex-align: center;
              align-items: center; }
          body.home section.hero-slide .slide .bg-image {
            min-height: 100vh; } }
      section.hero-slide .slide .bg-image:not(.black):before {
        content: "";
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background: rgba(0, 0, 0, 0.4); }
        @media print, screen and (min-width: 64em) {
          section.hero-slide .slide .bg-image:not(.black):before {
            background: linear-gradient(to right, rgba(0, 0, 0, 0.65) 0%, rgba(0, 0, 0, 0) 80%), linear-gradient(to bottom, rgba(0, 0, 0, 0.65) 0%, rgba(0, 0, 0, 0) 200px); } }
      section.hero-slide .slide .bg-image.black:before {
        content: "";
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background: rgba(255, 255, 255, 0.4); }
        @media print, screen and (min-width: 64em) {
          section.hero-slide .slide .bg-image.black:before {
            background: linear-gradient(to right, rgba(255, 255, 255, 0.65) 0%, rgba(255, 255, 255, 0) 80%), linear-gradient(to bottom, rgba(255, 255, 255, 0.65) 0%, rgba(255, 255, 255, 0) 200px); } }
      section.hero-slide .slide .bg-image.no-overlay:before {
        background: transparent; }
        @media print, screen and (min-width: 64em) {
          section.hero-slide .slide .bg-image.no-overlay:before {
            background: linear-gradient(to bottom, rgba(0, 0, 0, 0.65) 0%, rgba(0, 0, 0, 0) 200px); } }
      body[data-slug="solutions"] section.hero-slide .slide .bg-image {
        background: none !important; }
        body[data-slug="solutions"] section.hero-slide .slide .bg-image:before {
          display: none; }
        body[data-slug="solutions"] section.hero-slide .slide .bg-image:after {
          content: "";
          display: block;
          position: absolute;
          width: 100%;
          height: 100%;
          background: #6800d2 url(//www.telsis.com/wp-content/themes/gamma/dist/assets/css/../images/bg-dots-solutions_v2.png) no-repeat;
          background-size: 100% auto;
          background-position: 50% 100%;
          z-index: 1; }
          @media print, screen and (min-width: 40em) {
            body[data-slug="solutions"] section.hero-slide .slide .bg-image:after {
              width: 50%; } }
        body[data-slug="solutions"] section.hero-slide .slide .bg-image .title h1 {
          padding-top: 0; }
      body[data-slug="find-a-partner"] section.hero-slide .slide .bg-image {
        background: none !important; }
        body[data-slug="find-a-partner"] section.hero-slide .slide .bg-image:before {
          display: none; }
        body[data-slug="find-a-partner"] section.hero-slide .slide .bg-image:after {
          content: "";
          display: block;
          position: absolute;
          width: 100%;
          height: 100%;
          background: #f2f2f2 url(//www.telsis.com/wp-content/themes/gamma/dist/assets/css/../images/dots-partners.png) no-repeat;
          background-size: 100% auto;
          background-position: 50% 100%;
          z-index: 1; }
          @media print, screen and (min-width: 40em) {
            body[data-slug="find-a-partner"] section.hero-slide .slide .bg-image:after {
              width: 50%; } }
        body[data-slug="find-a-partner"] section.hero-slide .slide .bg-image .title h1 {
          padding-top: 0; }
      .parallax-ready section.hero-slide .slide .bg-image {
        background-size: auto 140%; }
        @media print, screen and (min-width: 40em) {
          .parallax-ready section.hero-slide .slide .bg-image {
            background-size: auto 130%; } }
        @media print, screen and (min-width: 64em) {
          .parallax-ready section.hero-slide .slide .bg-image {
            background-size: 115% auto; } }
        @media screen and (min-width: 88.75em) {
          .parallax-ready section.hero-slide .slide .bg-image {
            background-size: 100% auto; } }
      section.hero-slide .slide .bg-image .links {
        margin-top: 1.5625rem; }
      section.hero-slide .slide .bg-image .link .cta:before {
        background: linear-gradient(to right, #6800d2 0%, #9e29fd 100%); }
      section.hero-slide .slide .bg-image .link .cta:after {
        border-left-color: #fbe200; }
    @media screen and (min-width: 75em) {
      section.hero-slide .slide .full-height {
        min-height: 100vh; } }
    section.hero-slide .slide .title {
      width: 100%;
      float: left;
      padding-right: 0.625rem;
      padding-left: 0.625rem; }
      @media print, screen and (min-width: 40em) {
        section.hero-slide .slide .title {
          padding-right: 0.9375rem;
          padding-left: 0.9375rem; } }
      section.hero-slide .slide .title, section.hero-slide .slide .title:last-child:not(:first-child) {
        float: left;
        clear: none; }
      section.hero-slide .slide .title:last-child:not(:first-child) {
        float: right; }
      section.hero-slide .slide .title > p {
        font-weight: 500;
        margin-bottom: 0.625rem; }
      section.hero-slide .slide .title h1 {
        line-height: 1;
        margin-bottom: 1.25rem;
        font-weight: 500;
        max-width: 42.5rem; }
        @media print, screen and (min-width: 64em) {
          section.hero-slide .slide .title h1:first-child {
            font-size: 3.5rem; } }
        .home section.hero-slide .slide .title h1 {
          font-size: 1.875rem; }
          @media print, screen and (min-width: 40em) {
            .home section.hero-slide .slide .title h1 {
              font-size: 3.125rem; } }
          @media print, screen and (min-width: 64em) {
            .home section.hero-slide .slide .title h1 {
              font-size: 4.375rem;
              padding-top: 9.375rem; } }
      @media print, screen and (min-width: 40em) {
        section.hero-slide .slide .title.big-1 h1 {
          font-size: 7.5rem; } }
    section.hero-slide .slide .intro {
      width: 100%;
      float: left;
      padding-right: 0.625rem;
      padding-left: 0.625rem;
      max-width: 33.75rem;
      padding-bottom: 1.25rem; }
      @media print, screen and (min-width: 40em) {
        section.hero-slide .slide .intro {
          padding-right: 0.9375rem;
          padding-left: 0.9375rem; } }
      section.hero-slide .slide .intro, section.hero-slide .slide .intro:last-child:not(:first-child) {
        float: left;
        clear: none; }
      section.hero-slide .slide .intro:last-child:not(:first-child) {
        float: right; }
      section.hero-slide .slide .intro img {
        max-width: 9.375rem;
        width: 100%; }
    section.hero-slide .slide .link {
      display: inline-block;
      padding-left: 0.625rem;
      padding-right: 0.625rem; }
      @media print, screen and (min-width: 40em) {
        section.hero-slide .slide .link {
          padding-left: 0.9375rem;
          padding-right: 0.9375rem; } }
      @media print, screen and (min-width: 40em) {
        .home section.hero-slide .slide .link {
          font-size: 1.375rem; } }
      section.hero-slide .slide .link .cta {
        color: #fefefe;
        position: relative;
        padding: 0.5rem 3.125rem 0.5rem 0;
        margin-top: 1.25rem;
        margin-bottom: 1.875rem;
        display: inline-block;
        transition: all 0.5s ease-in-out; }
        @media print, screen and (min-width: 40em) {
          body:not(.home) section.hero-slide .slide .link .cta {
            margin-top: 0; } }
        section.hero-slide .slide .link .cta:before {
          transition: all 0.5s ease-in-out;
          position: absolute;
          right: 0;
          top: 0;
          content: "";
          display: block;
          width: 2.5rem;
          height: 2.5rem;
          background: #fefefe;
          border-radius: 50%; }
        section.hero-slide .slide .link .cta:after {
          transition: all 0.5s ease-in-out;
          position: absolute;
          right: 0.4375rem;
          top: 0.875rem;
          content: "";
          display: block;
          border: 0.375rem solid transparent;
          border-left-color: #6800d2;
          -ms-transform: scaleX(1.8);
              transform: scaleX(1.8); }
        @media print, screen and (min-width: 40em) {
          .home section.hero-slide .slide .link .cta {
            padding: 0.75rem 6.25rem 0.75rem 0; }
            .home section.hero-slide .slide .link .cta:before {
              right: 0.625rem;
              top: 0;
              width: 4rem;
              height: 4rem; }
            .home section.hero-slide .slide .link .cta:after {
              border-width: 0.625rem;
              right: 1.25rem;
              top: 1.375rem; } }
        section.hero-slide .slide .link .cta:hover {
          color: #fbe200; }
          section.hero-slide .slide .link .cta:hover:before {
            background: #fbe200; }
          section.hero-slide .slide .link .cta:hover:after {
            border-left-color: #6800d2; }
  section.hero-slide .hero-banner {
    background-color: rgba(0, 0, 0, 0.4);
    padding: 1.875rem 0;
    width: 100%; }
    @media print, screen and (min-width: 40em) {
      section.hero-slide .hero-banner {
        position: absolute;
        bottom: 0;
        left: 0; } }
    section.hero-slide .hero-banner .row {
      display: -ms-flexbox;
      display: flex;
      -ms-flex-direction: column;
          flex-direction: column; }
      @media print, screen and (min-width: 40em) {
        section.hero-slide .hero-banner .row {
          -ms-flex-direction: row;
              flex-direction: row;
          -ms-flex-wrap: wrap;
              flex-wrap: wrap; } }
    section.hero-slide .hero-banner .banner-item {
      display: -ms-flexbox;
      display: flex;
      -ms-flex-direction: row;
          flex-direction: row;
      -ms-flex-align: center;
          align-items: center;
      padding-right: 1.25rem;
      margin-bottom: 1.25rem; }
      @media print, screen and (min-width: 40em) {
        section.hero-slide .hero-banner .banner-item {
          margin-bottom: 0;
          padding-right: 1.875rem; } }
      section.hero-slide .hero-banner .banner-item svg {
        width: 2.25rem; }
      section.hero-slide .hero-banner .banner-item:last-of-type {
        margin-bottom: 0; }
      section.hero-slide .hero-banner .banner-item .banner-text {
        margin: 0;
        white-space: nowrap;
        display: inline-block; }
      section.hero-slide .hero-banner .banner-item .map-pin {
        display: inline-block;
        height: 2.25rem !important; }

section.intro {
  overflow: hidden; }
  section.intro .row {
    max-width: none;
    margin-right: auto;
    margin-left: auto;
    max-width: none; }
    section.intro .row::before, section.intro .row::after {
      display: table;
      content: ' ';
      -ms-flex-preferred-size: 0;
          flex-basis: 0;
      -ms-flex-order: 1;
          order: 1; }
    section.intro .row::after {
      clear: both; }
    @media print, screen and (min-width: 64em) {
      section.intro .row {
        display: -ms-flexbox;
        display: flex;
        -ms-flex-pack: justify;
            justify-content: space-between; }
        section.intro .row.image {
          -ms-flex-align: stretch;
              align-items: stretch; }
        section.intro .row.image .right {
          float: none !important;
          display: -ms-flexbox;
          display: flex;
          -ms-flex-align: end;
              align-items: flex-end;
          max-width: 42.5rem; }
          section.intro .row.image .right .image {
            width: 100%; }
        section.intro .row:before, section.intro .row:after {
          content: none !important; } }
  section.intro .content {
    width: 100%;
    float: left;
    padding-right: 0.625rem;
    padding-left: 0.625rem;
    padding-bottom: 0.75rem;
    padding-top: 0.75rem; }
    @media print, screen and (min-width: 40em) {
      section.intro .content {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem; } }
    section.intro .content, section.intro .content:last-child:not(:first-child) {
      float: left;
      clear: none; }
    section.intro .content:last-child:not(:first-child) {
      float: right; }
    @media print, screen and (min-width: 64em) {
      section.intro .content {
        width: 41.66667%;
        max-width: 33.75rem;
        float: none;
        padding-bottom: 0;
        padding-top: 0; } }
    section.intro .content .button, section.intro .content .wp-block-button .wp-block-button__link, .wp-block-button section.intro .content .wp-block-button__link, section.intro .content section.promo-listing.contact .bg-image p:last-child a, section.promo-listing.contact .bg-image p:last-child section.intro .content a, section.intro .content section.promo-listing-2.contact .bg-image p:last-child a, section.promo-listing-2.contact .bg-image p:last-child section.intro .content a {
      margin-top: 1.5625rem; }
  section.intro h1,
  section.intro h2 {
    margin-bottom: 1.875rem; }
    section.intro h1:last-child,
    section.intro h2:last-child {
      margin-bottom: 0; }
  section.intro h3 {
    margin-top: 1.875rem; }
  section.intro .right {
    width: 100%;
    float: left;
    padding-right: 0.625rem;
    padding-left: 0.625rem; }
    @media print, screen and (min-width: 40em) {
      section.intro .right {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem; } }
    section.intro .right, section.intro .right:last-child:not(:first-child) {
      float: left;
      clear: none; }
    section.intro .right:last-child:not(:first-child) {
      float: right; }
    section.intro .right form {
      padding-top: 1.625rem; }
    @media print, screen and (min-width: 64em) {
      section.intro .right {
        width: 48%; } }
    section.intro .right .responsive-embed {
      max-width: 43.75rem; }
    section.intro .right .form-row {
      display: -ms-flexbox;
      display: flex;
      -ms-flex-pack: start;
          justify-content: flex-start; }
    section.intro .right .select2 {
      width: auto !important;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
      max-width: 75%; }
      @media print, screen and (min-width: 40em) {
        section.intro .right .select2 {
          max-width: 85%; } }
    section.intro .right .select2-container--default .select2-selection--single {
      border-radius: 0; }
    section.intro .right .image {
      margin-bottom: -1.875rem; }
      @media print, screen and (min-width: 64em) {
        section.intro .right .image {
          margin-top: -5rem;
          margin-bottom: -5rem; } }
    @media print, screen and (min-width: 40em) {
      section.intro .right .select2-container .select2-selection--single {
        height: auto; }
        section.intro .right .select2-container .select2-selection--single .select2-selection__arrow {
          width: 2.5rem;
          top: 0.25rem; }
          section.intro .right .select2-container .select2-selection--single .select2-selection__arrow b:after {
            width: 0.625rem;
            height: 0.625rem;
            border-width: 2px; }
          body.home section.intro .right .select2-container .select2-selection--single .select2-selection__arrow {
            top: 0.4375rem; }
            body.home section.intro .right .select2-container .select2-selection--single .select2-selection__arrow b:after {
              width: 1.25rem;
              height: 1.25rem; } }
    section.intro .right .select2-selection__rendered {
      color: #6800d2;
      font-size: 1.25rem;
      font-weight: 300;
      padding: 0.3125rem 0; }
      @media print, screen and (min-width: 40em) {
        section.intro .right .select2-selection__rendered {
          line-height: 1.2;
          font-size: 1.5625rem; } }
      body.home section.intro .right .select2-selection__rendered {
        font-size: 1.875rem; }
        @media print, screen and (min-width: 40em) {
          body.home section.intro .right .select2-selection__rendered {
            font-size: 2.25rem; } }
      section.intro .right .select2-selection__rendered > span {
        width: 100%;
        display: block;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
        padding-right: 3.75rem; }
    section.intro .right form .button, section.intro .right form .wp-block-button .wp-block-button__link, .wp-block-button section.intro .right form .wp-block-button__link, section.intro .right form section.promo-listing.contact .bg-image p:last-child a, section.promo-listing.contact .bg-image p:last-child section.intro .right form a, section.intro .right form section.promo-listing-2.contact .bg-image p:last-child a, section.promo-listing-2.contact .bg-image p:last-child section.intro .right form a {
      margin-left: 0.625rem;
      max-width: 20%; }
      @media print, screen and (min-width: 40em) {
        body.home section.intro .right form .button, body.home section.intro .right form .wp-block-button .wp-block-button__link, .wp-block-button body.home section.intro .right form .wp-block-button__link, body.home section.intro .right form section.promo-listing.contact .bg-image p:last-child a, section.promo-listing.contact .bg-image p:last-child body.home section.intro .right form a, body.home section.intro .right form section.promo-listing-2.contact .bg-image p:last-child a, section.promo-listing-2.contact .bg-image p:last-child body.home section.intro .right form a {
          margin-top: 0.625rem;
          padding-top: 0.75rem;
          padding-bottom: 0.75rem; } }
    section.intro .right.style-icon {
      -ms-flex-item-align: start;
          align-self: flex-start; }
      section.intro .right.style-icon .wrapper {
        max-width: 18.75rem; }
        @media print, screen and (min-width: 40em) {
          section.intro .right.style-icon .wrapper {
            margin: 0 auto; } }
      section.intro .right.style-icon .image {
        display: block;
        margin-top: 0;
        margin-bottom: 0;
        border-bottom: 1px solid #cacaca;
        padding-bottom: 0.625rem; }
        section.intro .right.style-icon .image img {
          width: 9.375rem; }
      section.intro .right.style-icon .strapline {
        padding-top: 0.625rem;
        font-size: 0.875rem;
        line-height: 1.4;
        max-width: 11.25rem; }
    section.intro .right.style-jump_menu h2 {
      font-size: 1.0625rem;
      max-width: 32.5rem; }
      @media print, screen and (min-width: 40em) {
        section.intro .right.style-jump_menu h2 {
          font-size: 1.25rem; } }
  body.single-case_study section.intro .row.image .right {
    -ms-flex-pack: start;
        justify-content: flex-start;
    -ms-flex-align: center;
        align-items: center; }
    body.single-case_study section.intro .row.image .right .image {
      margin-top: 0;
      margin-bottom: 0;
      max-width: 12.5rem; }

@media print, screen and (min-width: 40em) {
  body.home section.intro .row .content {
    width: 75%;
    float: left;
    padding-right: 0.625rem;
    padding-left: 0.625rem; } }
  @media print, screen and (min-width: 40em) and (min-width: 40em) {
    body.home section.intro .row .content {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }

@media print, screen and (min-width: 40em) {
    body.home section.intro .row .content, body.home section.intro .row .content:last-child:not(:first-child) {
      float: left;
      clear: none; }
    body.home section.intro .row .content:last-child:not(:first-child) {
      float: right; } }

@media print, screen and (min-width: 64em) {
  body.home section.intro .row .content {
    width: 100%;
    float: left;
    padding-right: 0.625rem;
    padding-left: 0.625rem; } }
  @media print, screen and (min-width: 64em) and (min-width: 40em) {
    body.home section.intro .row .content {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }

@media print, screen and (min-width: 64em) {
    body.home section.intro .row .content, body.home section.intro .row .content:last-child:not(:first-child) {
      float: left;
      clear: none; }
    body.home section.intro .row .content:last-child:not(:first-child) {
      float: right; } }

@media print, screen and (min-width: 40em) {
  body[data-slug="solutions"] section.intro .row .content {
    width: 75%;
    float: left;
    padding-right: 0.625rem;
    padding-left: 0.625rem; } }
  @media print, screen and (min-width: 40em) and (min-width: 40em) {
    body[data-slug="solutions"] section.intro .row .content {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }

@media print, screen and (min-width: 40em) {
    body[data-slug="solutions"] section.intro .row .content, body[data-slug="solutions"] section.intro .row .content:last-child:not(:first-child) {
      float: left;
      clear: none; }
    body[data-slug="solutions"] section.intro .row .content:last-child:not(:first-child) {
      float: right; } }

@media print, screen and (min-width: 64em) {
  body[data-slug="solutions"] section.intro .row .content {
    width: 100%;
    float: left;
    padding-right: 0.625rem;
    padding-left: 0.625rem; } }
  @media print, screen and (min-width: 64em) and (min-width: 40em) {
    body[data-slug="solutions"] section.intro .row .content {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }

@media print, screen and (min-width: 64em) {
    body[data-slug="solutions"] section.intro .row .content, body[data-slug="solutions"] section.intro .row .content:last-child:not(:first-child) {
      float: left;
      clear: none; }
    body[data-slug="solutions"] section.intro .row .content:last-child:not(:first-child) {
      float: right; } }

section.columned-text {
  overflow-x: hidden; }
  section.columned-text .row {
    max-width: none;
    margin-right: auto;
    margin-left: auto; }
    section.columned-text .row::before, section.columned-text .row::after {
      display: table;
      content: ' ';
      -ms-flex-preferred-size: 0;
          flex-basis: 0;
      -ms-flex-order: 1;
          order: 1; }
    section.columned-text .row::after {
      clear: both; }
  section.columned-text .intro {
    width: 100%;
    float: left;
    padding-right: 0.625rem;
    padding-left: 0.625rem; }
    @media print, screen and (min-width: 40em) {
      section.columned-text .intro {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem; } }
    section.columned-text .intro, section.columned-text .intro:last-child:not(:first-child) {
      float: left;
      clear: none; }
    section.columned-text .intro:last-child:not(:first-child) {
      float: right; }
    @media print, screen and (min-width: 64em) {
      section.columned-text .intro {
        margin-bottom: 1.875rem;
        width: 41.66667%; } }
    section.columned-text .intro h2 {
      margin-bottom: 1.875rem; }
  section.columned-text .column, section.columned-text .columns {
    width: 100%;
    float: left;
    padding-right: 0.625rem;
    padding-left: 0.625rem; }
    @media print, screen and (min-width: 40em) {
      section.columned-text .column, section.columned-text .columns {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem; } }
    section.columned-text .column, section.columned-text .columns, section.columned-text .column:last-child:not(:first-child), section.columned-text .columns:last-child:not(:first-child) {
      float: left;
      clear: none; }
    section.columned-text .column:last-child:not(:first-child), section.columned-text .columns:last-child:not(:first-child) {
      float: right; }
    @media print, screen and (min-width: 40em) {
      section.columned-text .column, section.columned-text .columns {
        width: 50%; } }
    section.columned-text .column h3, section.columned-text .columns h3 {
      color: #6800d2;
      font-size: 100%;
      font-weight: 500;
      margin-bottom: 0.9375rem; }
    section.columned-text .column.image > img, section.columned-text .image.columns > img,
    section.columned-text .column.image > picture,
    section.columned-text .image.columns > picture {
      margin: 0 auto 1.25rem;
      display: block;
      width: 100%; }
    section.columned-text .column.image > div, section.columned-text .image.columns > div {
      margin: 0 auto; }
    @media screen and (min-width: 75em) {
      section.columned-text .column.text:first-child, section.columned-text .text.columns:first-child {
        padding-right: 3.125rem; }
      section.columned-text .column.text:last-child, section.columned-text .text.columns:last-child {
        padding-left: 3.125rem; } }
    section.columned-text .column.text img, section.columned-text .text.columns img {
      margin-top: 1.25rem;
      margin-bottom: 1.25rem; }
    section.columned-text .column.text .button, section.columned-text .text.columns .button, section.columned-text .column.text .wp-block-button .wp-block-button__link, .wp-block-button section.columned-text .column.text .wp-block-button__link, section.columned-text .text.columns .wp-block-button .wp-block-button__link, .wp-block-button section.columned-text .text.columns .wp-block-button__link, section.columned-text .column.text section.promo-listing.contact .bg-image p:last-child a, section.promo-listing.contact .bg-image p:last-child section.columned-text .column.text a, section.columned-text .text.columns section.promo-listing.contact .bg-image p:last-child a, section.promo-listing.contact .bg-image p:last-child section.columned-text .text.columns a, section.columned-text .column.text section.promo-listing-2.contact .bg-image p:last-child a, section.promo-listing-2.contact .bg-image p:last-child section.columned-text .column.text a, section.columned-text .text.columns section.promo-listing-2.contact .bg-image p:last-child a, section.promo-listing-2.contact .bg-image p:last-child section.columned-text .text.columns a {
      margin-top: 1.25rem;
      margin-right: 0.625rem; }
  section.columned-text.light .column h3, section.columned-text.light .columns h3 {
    color: #fefefe; }

section.accordion .content {
  width: 100%;
  float: left;
  padding-right: 0.625rem;
  padding-left: 0.625rem; }
  @media print, screen and (min-width: 40em) {
    section.accordion .content {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
  section.accordion .content, section.accordion .content:last-child:not(:first-child) {
    float: left;
    clear: none; }
  section.accordion .content:last-child:not(:first-child) {
    float: right; }
  section.accordion .content .title h2 {
    margin-bottom: 2.5rem; }
    @media print, screen and (min-width: 40em) {
      section.accordion .content .title h2 {
        margin-bottom: 5rem; } }

section.accordion ul.accordion {
  background: transparent;
  border-top: 1px solid #0a0a0a; }

section.accordion .accordion-item {
  border-bottom: 1px solid #0a0a0a; }
  section.accordion .accordion-item:last-child > .accordion-title,
  section.accordion .accordion-item:last-child > :last-child {
    border-bottom: 0; }

section.accordion .accordion-title,
section.accordion .accordion-content {
  background: transparent;
  border: 0;
  padding-left: 0;
  margin-left: 0;
  margin-right: 0; }

section.accordion .accordion-title {
  font-size: 1.0625rem;
  margin-right: 1.25rem;
  padding-right: 3.125rem; }
  @media print, screen and (min-width: 40em) {
    section.accordion .accordion-title {
      line-height: 1.2;
      font-size: 1.25rem; } }
  section.accordion .accordion-title:before {
    content: "";
    margin-top: -0.9375rem;
    border: 1px solid transparent;
    border-right-color: #0a0a0a;
    border-bottom-color: #0a0a0a;
    width: 1.25rem;
    height: 1.25rem;
    -ms-transform: rotate(45deg);
        transform: rotate(45deg);
    vertical-align: baseline;
    transition: all 0.2s ease-in-out; }

section.accordion .is-active > .accordion-title:before {
  -ms-transform: rotate(-135deg);
      transform: rotate(-135deg);
  margin-top: 0; }

section.accordion.light ul.accordion {
  border-top-color: #fefefe; }

section.accordion.light .accordion-title:before {
  border-right-color: #fefefe;
  border-bottom-color: #fefefe; }

section.accordion.light .accordion-item {
  border-bottom-color: #fefefe; }

section.accordion.light .accordion-title,
section.accordion.light .accordion-content {
  color: #fefefe;
  border-bottom-color: #fefefe; }

section.accordion.faq {
  padding: 0; }
  section.accordion.faq .content {
    padding: 0; }
  section.accordion.faq .accordion.cats {
    border-top: none;
    margin-bottom: 0; }
    section.accordion.faq .accordion.cats > .accordion-item:last-child {
      border-bottom-color: transparent; }
    section.accordion.faq .accordion.cats > .accordion-item > .accordion-title:before {
      width: 1.5625rem;
      height: 1.5625rem;
      right: 2.1875rem; }
      @media screen and (min-width: 75em) {
        section.accordion.faq .accordion.cats > .accordion-item > .accordion-title:before {
          right: 6.5625rem; } }
    section.accordion.faq .accordion.cats > .accordion-item h2 {
      margin: 0;
      padding: 3.125rem 0;
      padding-left: 0.625rem;
      padding-right: 0.625rem; }
      @media print, screen and (min-width: 40em) {
        section.accordion.faq .accordion.cats > .accordion-item h2 {
          padding-left: 0.9375rem;
          padding-right: 0.9375rem; } }
    section.accordion.faq .accordion.cats > .accordion-item .content {
      padding-left: 0.625rem;
      padding-right: 0.625rem; }
      @media print, screen and (min-width: 40em) {
        section.accordion.faq .accordion.cats > .accordion-item .content {
          padding-left: 0.9375rem;
          padding-right: 0.9375rem; } }
    section.accordion.faq .accordion.cats > .accordion-item .accordion-item.is-active .accordion-title {
      border-bottom-color: transparent; }
    section.accordion.faq .accordion.cats > .accordion-item .accordion-title {
      color: #0a0a0a;
      font-size: 1.625rem;
      padding: 0; }
    section.accordion.faq .accordion.cats > .accordion-item .accordion-content .accordion {
      border: none;
      padding: 0 0 1.5625rem 0; }
      section.accordion.faq .accordion.cats > .accordion-item .accordion-content .accordion .accordion-item .accordion-title {
        padding: 0.9375rem 0;
        font-size: 1.25rem;
        border-bottom-color: transparent; }
      section.accordion.faq .accordion.cats > .accordion-item .accordion-content .accordion .accordion-item:first-child .accordion-title {
        border-top: 0.0625rem solid #0a0a0a; }
      section.accordion.faq .accordion.cats > .accordion-item .accordion-content .accordion .accordion-item .accordion-content {
        border: none;
        color: #6800d2; }
    section.accordion.faq .accordion.cats > .accordion-item.is-active > .accordion-title {
      border-bottom: 0.0625rem solid transparent; }

.accordion-item:first-child > :first-child,
.accordion-item:last-child > :last-child,
:last-child:not(.is-active) > .accordion-title {
  border-radius: 0; }

section.signpost {
  padding: 0;
  border-bottom: 0;
  margin-bottom: 0; }
  section.signpost .bg-image {
    background-size: cover;
    background-repeat: no-repeat;
    position: relative !important;
    min-height: 40vw;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
        flex-direction: column;
    -ms-flex-pack: center;
        justify-content: center; }
    section.signpost .bg-image:before {
      content: "";
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      background: rgba(0, 0, 0, 0.55); }
      @media print, screen and (min-width: 64em) {
        section.signpost .bg-image:before {
          background: linear-gradient(to right, rgba(0, 0, 0, 0.65) 0%, rgba(0, 0, 0, 0) 80%); } }
      @media screen and (min-width: 75em) {
        section.signpost .bg-image:before {
          background: linear-gradient(to left, rgba(0, 0, 0, 0.65) 0%, rgba(0, 0, 0, 0) 80%); } }
    .parallax-ready section.signpost .bg-image[data-enllax-ratio] {
      background-size: 170% auto; }
      @media print, screen and (min-width: 40em) {
        .parallax-ready section.signpost .bg-image[data-enllax-ratio] {
          background-size: 150% auto; } }
      @media screen and (min-width: 75em) {
        .parallax-ready section.signpost .bg-image[data-enllax-ratio] {
          background-size: 115% auto; } }
      @media screen and (min-width: 88.75em) {
        .parallax-ready section.signpost .bg-image[data-enllax-ratio] {
          background-size: 100% auto; } }
    section.signpost .bg-image.no-overlay:before {
      display: none; }
  section.signpost .row {
    max-width: none;
    margin-right: auto;
    margin-left: auto;
    position: relative;
    width: 100%; }
    section.signpost .row::before, section.signpost .row::after {
      display: table;
      content: ' ';
      -ms-flex-preferred-size: 0;
          flex-basis: 0;
      -ms-flex-order: 1;
          order: 1; }
    section.signpost .row::after {
      clear: both; }
    @media print, screen and (min-width: 64em) {
      section.signpost .row {
        -ms-flex-negative: 1;
            flex-shrink: 1;
        -ms-flex-preferred-size: 100%;
            flex-basis: 100%;
        height: auto; } }
    section.signpost .row > .image {
      width: 100%;
      float: left;
      padding-right: 0.625rem;
      padding-left: 0.625rem;
      padding-top: 1.25rem;
      padding-bottom: 1.25rem; }
      @media print, screen and (min-width: 40em) {
        section.signpost .row > .image {
          padding-right: 0.9375rem;
          padding-left: 0.9375rem; } }
      section.signpost .row > .image, section.signpost .row > .image:last-child:not(:first-child) {
        float: left;
        clear: none; }
      section.signpost .row > .image:last-child:not(:first-child) {
        float: right; }
      @media print, screen and (min-width: 40em) {
        section.signpost .row > .image {
          width: 33.33333%; } }
      @media print, screen and (min-width: 64em) {
        section.signpost .row > .image {
          width: 50%;
          padding-top: 5rem;
          padding-bottom: 5rem; } }
      @media screen and (min-width: 75em) {
        section.signpost .row > .image {
          width: 33.33333%; } }
    section.signpost .row .content {
      width: 100%;
      float: left;
      padding-right: 0.625rem;
      padding-left: 0.625rem;
      padding-top: 2.625rem;
      padding-bottom: 2.625rem;
      color: #fefefe; }
      @media print, screen and (min-width: 40em) {
        section.signpost .row .content {
          padding-right: 0.9375rem;
          padding-left: 0.9375rem; } }
      section.signpost .row .content, section.signpost .row .content:last-child:not(:first-child) {
        float: left;
        clear: none; }
      section.signpost .row .content:last-child:not(:first-child) {
        float: right; }
      @media print, screen and (min-width: 40em) {
        section.signpost .row .content {
          width: 75%; } }
      @media print, screen and (min-width: 64em) {
        section.signpost .row .content {
          width: 50%;
          padding-top: 5rem;
          padding-bottom: 5rem; }
          section.signpost .row .content .label {
            color: #fbe200; } }
      @media screen and (min-width: 75em) {
        section.signpost .row .content {
          float: right;
          width: 41.66667%; } }
      section.signpost .row .content p {
        max-width: 33.75rem; }
      section.signpost .row .content .link {
        padding-top: 1.875rem; }
        section.signpost .row .content .link .button, section.signpost .row .content .link .wp-block-button .wp-block-button__link, .wp-block-button section.signpost .row .content .link .wp-block-button__link, section.signpost .row .content .link section.promo-listing.contact .bg-image p:last-child a, section.promo-listing.contact .bg-image p:last-child section.signpost .row .content .link a, section.signpost .row .content .link section.promo-listing-2.contact .bg-image p:last-child a, section.promo-listing-2.contact .bg-image p:last-child section.signpost .row .content .link a {
          margin-right: 1.25rem; }
          section.signpost .row .content .link .button:first-child:not(:last-child), section.signpost .row .content .link .wp-block-button .wp-block-button__link:first-child:not(:last-child), .wp-block-button section.signpost .row .content .link .wp-block-button__link:first-child:not(:last-child), section.signpost .row .content .link section.promo-listing.contact .bg-image p:last-child a:first-child:not(:last-child), section.promo-listing.contact .bg-image p:last-child section.signpost .row .content .link a:first-child:not(:last-child), section.signpost .row .content .link section.promo-listing-2.contact .bg-image p:last-child a:first-child:not(:last-child), section.promo-listing-2.contact .bg-image p:last-child section.signpost .row .content .link a:first-child:not(:last-child) {
            background: #fefefe;
            color: #6800d2; }
            section.signpost .row .content .link .button:first-child:not(:last-child):hover, section.signpost .row .content .link .wp-block-button .wp-block-button__link:first-child:not(:last-child):hover, .wp-block-button section.signpost .row .content .link .wp-block-button__link:first-child:not(:last-child):hover, section.signpost .row .content .link section.promo-listing.contact .bg-image p:last-child a:first-child:not(:last-child):hover, section.promo-listing.contact .bg-image p:last-child section.signpost .row .content .link a:first-child:not(:last-child):hover, section.signpost .row .content .link section.promo-listing-2.contact .bg-image p:last-child a:first-child:not(:last-child):hover, section.promo-listing-2.contact .bg-image p:last-child section.signpost .row .content .link a:first-child:not(:last-child):hover {
              background-color: #fbe200; }
          section.signpost .row .content .link .button:last-child, section.signpost .row .content .link .wp-block-button .wp-block-button__link:last-child, .wp-block-button section.signpost .row .content .link .wp-block-button__link:last-child, section.signpost .row .content .link section.promo-listing.contact .bg-image p:last-child a:last-child, section.promo-listing.contact .bg-image p:last-child section.signpost .row .content .link a:last-child, section.signpost .row .content .link section.promo-listing-2.contact .bg-image p:last-child a:last-child, section.promo-listing-2.contact .bg-image p:last-child section.signpost .row .content .link a:last-child {
            background: #6800d2;
            color: #fefefe; }
            section.signpost .row .content .link .button:last-child:hover, section.signpost .row .content .link .wp-block-button .wp-block-button__link:last-child:hover, .wp-block-button section.signpost .row .content .link .wp-block-button__link:last-child:hover, section.signpost .row .content .link section.promo-listing.contact .bg-image p:last-child a:last-child:hover, section.promo-listing.contact .bg-image p:last-child section.signpost .row .content .link a:last-child:hover, section.signpost .row .content .link section.promo-listing-2.contact .bg-image p:last-child a:last-child:hover, section.promo-listing-2.contact .bg-image p:last-child section.signpost .row .content .link a:last-child:hover {
              background-color: #fbe200;
              color: #6800d2; }
      section.signpost .row .content .signpost-logo {
        max-width: 9.375rem;
        width: 100%;
        margin-top: 1.25rem; }
        @media print, screen and (min-width: 64em) {
          section.signpost .row .content .signpost-logo {
            margin-top: 1.875rem; } }
    section.signpost .row .logos {
      width: 100%;
      float: left;
      padding-right: 0.625rem;
      padding-left: 0.625rem;
      padding-top: 1.25rem;
      padding-bottom: 1.25rem; }
      @media print, screen and (min-width: 40em) {
        section.signpost .row .logos {
          padding-right: 0.9375rem;
          padding-left: 0.9375rem; } }
      section.signpost .row .logos, section.signpost .row .logos:last-child:not(:first-child) {
        float: left;
        clear: none; }
      section.signpost .row .logos:last-child:not(:first-child) {
        float: right; }
      @media print, screen and (min-width: 64em) {
        section.signpost .row .logos {
          width: 50%;
          padding-top: 5rem;
          padding-bottom: 5rem; } }
      @media screen and (min-width: 75em) {
        section.signpost .row .logos {
          width: 41.66667%;
          float: right; } }
  section.signpost.quote .bg-image:before {
    display: none; }
  @media print, screen and (min-width: 64em) {
    section.signpost.quote .row .content {
      float: left; } }
  section.signpost.large .bg-image {
    background-position: center 0; }
    section.signpost.large .bg-image:before {
      display: none; }
      @media screen and (max-width: 39.99875em) {
        section.signpost.large .bg-image:before {
          display: block;
          background: rgba(255, 255, 255, 0.7); } }
  @media screen and (max-width: 39.99875em) {
    section.signpost.large.white .bg-image:before, section.news.blog .news section.signpost.large.article:nth-child(5n + 1):not(.black) .bg-image:before, section.news.blog .news section.signpost.large.article:nth-child(5n + 5):not(.black) .bg-image:before {
      background: rgba(0, 0, 0, 0.7); } }
  section.signpost.large .row .content {
    float: left; }
    section.signpost.large .row .content h2 {
      font-size: 2.5rem; }
      @media print, screen and (min-width: 40em) {
        section.signpost.large .row .content h2 {
          font-size: 1.75rem; } }
      @media print, screen and (min-width: 64em) {
        section.signpost.large .row .content h2 {
          font-size: 3.75rem; } }
      @media screen and (min-width: 75em) {
        section.signpost.large .row .content h2 {
          font-size: 5.9375rem; } }
  section.signpost.large_icon .row > .image {
    padding-top: 0;
    padding-bottom: 0;
    display: none; }
    @media print, screen and (min-width: 64em) {
      section.signpost.large_icon .row > .image {
        display: block; } }
    @media screen and (min-width: 75em) {
      section.signpost.large_icon .row > .image {
        position: relative;
        left: 8.33333%; } }
    section.signpost.large_icon .row > .image img {
      -ms-transform: scale(1.4);
          transform: scale(1.4); }
  section.signpost.large_icon .row .content {
    float: left !important; }
    @media print, screen and (min-width: 64em) {
      section.signpost.large_icon .row .content {
        display: right !important; } }
  section.signpost.publication .row .content h2 {
    font-size: 2.5rem; }
  section.signpost.publication .row .content .label {
    color: #fefefe; }
  @media print, screen and (min-width: 64em) {
    section.signpost.publication .row {
      display: -ms-flexbox;
      display: flex;
      -ms-flex-align: center;
          align-items: center;
      -ms-flex-pack: justify;
          justify-content: space-between; }
      section.signpost.publication .row:before, section.signpost.publication .row:after {
        display: none; }
      section.signpost.publication .row .content {
        justify-self: flex-end;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto; }
        section.signpost.publication .row .content h2 {
          font-size: 3.75rem; } }
  @media screen and (min-width: 75em) {
    section.signpost.publication .row .content h2 {
      font-size: 5.9375rem; } }
  section.signpost.publication.white ul.listing a, section.news.blog .news section.signpost.publication.article:nth-child(5n + 1):not(.black) ul.listing a, section.news.blog .news section.signpost.publication.article:nth-child(5n + 5):not(.black) ul.listing a {
    color: #fefefe; }
    section.signpost.publication.white ul.listing a:after, section.news.blog .news section.signpost.publication.article:nth-child(5n + 1):not(.black) ul.listing a:after, section.news.blog .news section.signpost.publication.article:nth-child(5n + 5):not(.black) ul.listing a:after {
      border-right-color: #fefefe;
      border-top-color: #fefefe; }
  @media print, screen and (min-width: 64em) {
    section.signpost.publication.reverse .row {
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse; }
      section.signpost.publication.reverse .row .content {
        justify-self: flex-start; } }
  @media screen and (min-width: 75em) {
    section.signpost.event .bg-image:before {
      background: rgba(0, 0, 0, 0.6) !important; } }
  @media print, screen and (min-width: 64em) {
    section.signpost.event .row {
      display: -ms-flexbox;
      display: flex;
      -ms-flex-pack: justify;
          justify-content: space-between;
      -ms-flex-align: center;
          align-items: center;
      min-height: 40vw; }
      section.signpost.event .row:before, section.signpost.event .row:after {
        display: none; }
      section.signpost.event .row .content {
        float: none; } }
  section.signpost.event .row .logos {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -ms-flex-pack: center;
        justify-content: center;
    -ms-flex-align: center;
        align-items: center; }
    @media print, screen and (min-width: 64em) {
      section.signpost.event .row .logos {
        float: none; } }
    section.signpost.event .row .logos .logo {
      max-width: 50%;
      -ms-flex: 0 1 50%;
          flex: 0 1 50%;
      padding-left: 0.625rem;
      padding-right: 0.625rem; }
      @media print, screen and (min-width: 40em) {
        section.signpost.event .row .logos .logo {
          padding-left: 0.9375rem;
          padding-right: 0.9375rem; } }
  @media print, screen and (min-width: 64em) {
    section.signpost.event.reverse .row {
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse; }
      section.signpost.event.reverse .row .content {
        justify-self: flex-start; } }
  section.signpost.black .row .content, section.signpost.dark .row .content {
    color: #0a0a0a; }
    section.signpost.black .row .content .label, section.signpost.dark .row .content .label {
      color: #0a0a0a; }
  section.signpost.black .bg-image:before, section.signpost.dark .bg-image:before {
    background: rgba(255, 255, 255, 0.6); }
    @media print, screen and (min-width: 64em) {
      section.signpost.black .bg-image:before, section.signpost.dark .bg-image:before {
        background: linear-gradient(to left, rgba(255, 255, 255, 0.65) 0%, rgba(255, 255, 255, 0) 80%); } }
  section.signpost.light .row .content .link .button, section.signpost.light .row .content .link .wp-block-button .wp-block-button__link, .wp-block-button section.signpost.light .row .content .link .wp-block-button__link, section.signpost.light .row .content .link section.promo-listing.contact .bg-image p:last-child a, section.promo-listing.contact .bg-image p:last-child section.signpost.light .row .content .link a, section.signpost.light .row .content .link section.promo-listing-2.contact .bg-image p:last-child a, section.promo-listing-2.contact .bg-image p:last-child section.signpost.light .row .content .link a, section.signpost.white .row .content .link .button, section.news.blog .news section.signpost.article:nth-child(5n + 1):not(.black) .row .content .link .button, section.news.blog .news section.signpost.article:nth-child(5n + 5):not(.black) .row .content .link .button, section.signpost.white .row .content .link .wp-block-button .wp-block-button__link, .wp-block-button section.signpost.white .row .content .link .wp-block-button__link, section.news.blog .news section.signpost.article:nth-child(5n + 1):not(.black) .row .content .link .wp-block-button .wp-block-button__link, .wp-block-button section.news.blog .news section.signpost.article:nth-child(5n + 1):not(.black) .row .content .link .wp-block-button__link, section.news.blog .news section.signpost.article:nth-child(5n + 5):not(.black) .row .content .link .wp-block-button .wp-block-button__link, .wp-block-button section.news.blog .news section.signpost.article:nth-child(5n + 5):not(.black) .row .content .link .wp-block-button__link, section.signpost.white .row .content .link section.promo-listing.contact .bg-image p:last-child a, section.promo-listing.contact .bg-image p:last-child section.signpost.white .row .content .link a, section.news.blog .news section.signpost.article:nth-child(5n + 1):not(.black) .row .content .link section.promo-listing.contact .bg-image p:last-child a, section.promo-listing.contact .bg-image p:last-child section.news.blog .news section.signpost.article:nth-child(5n + 1):not(.black) .row .content .link a, section.news.blog .news section.signpost.article:nth-child(5n + 5):not(.black) .row .content .link section.promo-listing.contact .bg-image p:last-child a, section.promo-listing.contact .bg-image p:last-child section.news.blog .news section.signpost.article:nth-child(5n + 5):not(.black) .row .content .link a, section.signpost.white .row .content .link section.promo-listing-2.contact .bg-image p:last-child a, section.promo-listing-2.contact .bg-image p:last-child section.signpost.white .row .content .link a, section.news.blog .news section.signpost.article:nth-child(5n + 1):not(.black) .row .content .link section.promo-listing-2.contact .bg-image p:last-child a, section.promo-listing-2.contact .bg-image p:last-child section.news.blog .news section.signpost.article:nth-child(5n + 1):not(.black) .row .content .link a, section.news.blog .news section.signpost.article:nth-child(5n + 5):not(.black) .row .content .link section.promo-listing-2.contact .bg-image p:last-child a, section.promo-listing-2.contact .bg-image p:last-child section.news.blog .news section.signpost.article:nth-child(5n + 5):not(.black) .row .content .link a {
    background-color: #fefefe;
    color: #6800d2; }
    section.signpost.light .row .content .link .button:hover, section.signpost.light .row .content .link .wp-block-button .wp-block-button__link:hover, .wp-block-button section.signpost.light .row .content .link .wp-block-button__link:hover, section.signpost.light .row .content .link section.promo-listing.contact .bg-image p:last-child a:hover, section.promo-listing.contact .bg-image p:last-child section.signpost.light .row .content .link a:hover, section.signpost.light .row .content .link section.promo-listing-2.contact .bg-image p:last-child a:hover, section.promo-listing-2.contact .bg-image p:last-child section.signpost.light .row .content .link a:hover, section.signpost.white .row .content .link .button:hover, section.news.blog .news section.signpost.article:nth-child(5n + 1):not(.black) .row .content .link .button:hover, section.news.blog .news section.signpost.article:nth-child(5n + 5):not(.black) .row .content .link .button:hover, section.signpost.white .row .content .link .wp-block-button .wp-block-button__link:hover, .wp-block-button section.signpost.white .row .content .link .wp-block-button__link:hover, section.news.blog .news section.signpost.article:nth-child(5n + 1):not(.black) .row .content .link .wp-block-button .wp-block-button__link:hover, .wp-block-button section.news.blog .news section.signpost.article:nth-child(5n + 1):not(.black) .row .content .link .wp-block-button__link:hover, section.news.blog .news section.signpost.article:nth-child(5n + 5):not(.black) .row .content .link .wp-block-button .wp-block-button__link:hover, .wp-block-button section.news.blog .news section.signpost.article:nth-child(5n + 5):not(.black) .row .content .link .wp-block-button__link:hover, section.signpost.white .row .content .link section.promo-listing.contact .bg-image p:last-child a:hover, section.promo-listing.contact .bg-image p:last-child section.signpost.white .row .content .link a:hover, section.news.blog .news section.signpost.article:nth-child(5n + 1):not(.black) .row .content .link section.promo-listing.contact .bg-image p:last-child a:hover, section.promo-listing.contact .bg-image p:last-child section.news.blog .news section.signpost.article:nth-child(5n + 1):not(.black) .row .content .link a:hover, section.news.blog .news section.signpost.article:nth-child(5n + 5):not(.black) .row .content .link section.promo-listing.contact .bg-image p:last-child a:hover, section.promo-listing.contact .bg-image p:last-child section.news.blog .news section.signpost.article:nth-child(5n + 5):not(.black) .row .content .link a:hover, section.signpost.white .row .content .link section.promo-listing-2.contact .bg-image p:last-child a:hover, section.promo-listing-2.contact .bg-image p:last-child section.signpost.white .row .content .link a:hover, section.news.blog .news section.signpost.article:nth-child(5n + 1):not(.black) .row .content .link section.promo-listing-2.contact .bg-image p:last-child a:hover, section.promo-listing-2.contact .bg-image p:last-child section.news.blog .news section.signpost.article:nth-child(5n + 1):not(.black) .row .content .link a:hover, section.news.blog .news section.signpost.article:nth-child(5n + 5):not(.black) .row .content .link section.promo-listing-2.contact .bg-image p:last-child a:hover, section.promo-listing-2.contact .bg-image p:last-child section.news.blog .news section.signpost.article:nth-child(5n + 5):not(.black) .row .content .link a:hover {
      background-color: #fbe200; }
    section.signpost.light .row .content .link .button:first-child, section.signpost.light .row .content .link .wp-block-button .wp-block-button__link:first-child, .wp-block-button section.signpost.light .row .content .link .wp-block-button__link:first-child, section.signpost.light .row .content .link section.promo-listing.contact .bg-image p:last-child a:first-child, section.promo-listing.contact .bg-image p:last-child section.signpost.light .row .content .link a:first-child, section.signpost.light .row .content .link section.promo-listing-2.contact .bg-image p:last-child a:first-child, section.promo-listing-2.contact .bg-image p:last-child section.signpost.light .row .content .link a:first-child, section.signpost.light .row .content .link .button:last-child, section.signpost.light .row .content .link .wp-block-button .wp-block-button__link:last-child, .wp-block-button section.signpost.light .row .content .link .wp-block-button__link:last-child, section.signpost.light .row .content .link section.promo-listing.contact .bg-image p:last-child a:last-child, section.promo-listing.contact .bg-image p:last-child section.signpost.light .row .content .link a:last-child, section.signpost.light .row .content .link section.promo-listing-2.contact .bg-image p:last-child a:last-child, section.promo-listing-2.contact .bg-image p:last-child section.signpost.light .row .content .link a:last-child, section.signpost.white .row .content .link .button:first-child, section.news.blog .news section.signpost.article:nth-child(5n + 1):not(.black) .row .content .link .button:first-child, section.news.blog .news section.signpost.article:nth-child(5n + 5):not(.black) .row .content .link .button:first-child, section.signpost.white .row .content .link .wp-block-button .wp-block-button__link:first-child, .wp-block-button section.signpost.white .row .content .link .wp-block-button__link:first-child, section.news.blog .news section.signpost.article:nth-child(5n + 1):not(.black) .row .content .link .wp-block-button .wp-block-button__link:first-child, .wp-block-button section.news.blog .news section.signpost.article:nth-child(5n + 1):not(.black) .row .content .link .wp-block-button__link:first-child, section.news.blog .news section.signpost.article:nth-child(5n + 5):not(.black) .row .content .link .wp-block-button .wp-block-button__link:first-child, .wp-block-button section.news.blog .news section.signpost.article:nth-child(5n + 5):not(.black) .row .content .link .wp-block-button__link:first-child, section.signpost.white .row .content .link section.promo-listing.contact .bg-image p:last-child a:first-child, section.promo-listing.contact .bg-image p:last-child section.signpost.white .row .content .link a:first-child, section.news.blog .news section.signpost.article:nth-child(5n + 1):not(.black) .row .content .link section.promo-listing.contact .bg-image p:last-child a:first-child, section.promo-listing.contact .bg-image p:last-child section.news.blog .news section.signpost.article:nth-child(5n + 1):not(.black) .row .content .link a:first-child, section.news.blog .news section.signpost.article:nth-child(5n + 5):not(.black) .row .content .link section.promo-listing.contact .bg-image p:last-child a:first-child, section.promo-listing.contact .bg-image p:last-child section.news.blog .news section.signpost.article:nth-child(5n + 5):not(.black) .row .content .link a:first-child, section.signpost.white .row .content .link section.promo-listing-2.contact .bg-image p:last-child a:first-child, section.promo-listing-2.contact .bg-image p:last-child section.signpost.white .row .content .link a:first-child, section.news.blog .news section.signpost.article:nth-child(5n + 1):not(.black) .row .content .link section.promo-listing-2.contact .bg-image p:last-child a:first-child, section.promo-listing-2.contact .bg-image p:last-child section.news.blog .news section.signpost.article:nth-child(5n + 1):not(.black) .row .content .link a:first-child, section.news.blog .news section.signpost.article:nth-child(5n + 5):not(.black) .row .content .link section.promo-listing-2.contact .bg-image p:last-child a:first-child, section.promo-listing-2.contact .bg-image p:last-child section.news.blog .news section.signpost.article:nth-child(5n + 5):not(.black) .row .content .link a:first-child, section.signpost.white .row .content .link .button:last-child, section.news.blog .news section.signpost.article:nth-child(5n + 1):not(.black) .row .content .link .button:last-child, section.news.blog .news section.signpost.article:nth-child(5n + 5):not(.black) .row .content .link .button:last-child, section.signpost.white .row .content .link .wp-block-button .wp-block-button__link:last-child, .wp-block-button section.signpost.white .row .content .link .wp-block-button__link:last-child, section.news.blog .news section.signpost.article:nth-child(5n + 1):not(.black) .row .content .link .wp-block-button .wp-block-button__link:last-child, .wp-block-button section.news.blog .news section.signpost.article:nth-child(5n + 1):not(.black) .row .content .link .wp-block-button__link:last-child, section.news.blog .news section.signpost.article:nth-child(5n + 5):not(.black) .row .content .link .wp-block-button .wp-block-button__link:last-child, .wp-block-button section.news.blog .news section.signpost.article:nth-child(5n + 5):not(.black) .row .content .link .wp-block-button__link:last-child, section.signpost.white .row .content .link section.promo-listing.contact .bg-image p:last-child a:last-child, section.promo-listing.contact .bg-image p:last-child section.signpost.white .row .content .link a:last-child, section.news.blog .news section.signpost.article:nth-child(5n + 1):not(.black) .row .content .link section.promo-listing.contact .bg-image p:last-child a:last-child, section.promo-listing.contact .bg-image p:last-child section.news.blog .news section.signpost.article:nth-child(5n + 1):not(.black) .row .content .link a:last-child, section.news.blog .news section.signpost.article:nth-child(5n + 5):not(.black) .row .content .link section.promo-listing.contact .bg-image p:last-child a:last-child, section.promo-listing.contact .bg-image p:last-child section.news.blog .news section.signpost.article:nth-child(5n + 5):not(.black) .row .content .link a:last-child, section.signpost.white .row .content .link section.promo-listing-2.contact .bg-image p:last-child a:last-child, section.promo-listing-2.contact .bg-image p:last-child section.signpost.white .row .content .link a:last-child, section.news.blog .news section.signpost.article:nth-child(5n + 1):not(.black) .row .content .link section.promo-listing-2.contact .bg-image p:last-child a:last-child, section.promo-listing-2.contact .bg-image p:last-child section.news.blog .news section.signpost.article:nth-child(5n + 1):not(.black) .row .content .link a:last-child, section.news.blog .news section.signpost.article:nth-child(5n + 5):not(.black) .row .content .link section.promo-listing-2.contact .bg-image p:last-child a:last-child, section.promo-listing-2.contact .bg-image p:last-child section.news.blog .news section.signpost.article:nth-child(5n + 5):not(.black) .row .content .link a:last-child {
      background: #fefefe;
      color: #6800d2; }
      section.signpost.light .row .content .link .button:first-child:hover, section.signpost.light .row .content .link .wp-block-button .wp-block-button__link:first-child:hover, .wp-block-button section.signpost.light .row .content .link .wp-block-button__link:first-child:hover, section.signpost.light .row .content .link section.promo-listing.contact .bg-image p:last-child a:first-child:hover, section.promo-listing.contact .bg-image p:last-child section.signpost.light .row .content .link a:first-child:hover, section.signpost.light .row .content .link section.promo-listing-2.contact .bg-image p:last-child a:first-child:hover, section.promo-listing-2.contact .bg-image p:last-child section.signpost.light .row .content .link a:first-child:hover, section.signpost.light .row .content .link .button:last-child:hover, section.signpost.light .row .content .link .wp-block-button .wp-block-button__link:last-child:hover, .wp-block-button section.signpost.light .row .content .link .wp-block-button__link:last-child:hover, section.signpost.light .row .content .link section.promo-listing.contact .bg-image p:last-child a:last-child:hover, section.promo-listing.contact .bg-image p:last-child section.signpost.light .row .content .link a:last-child:hover, section.signpost.light .row .content .link section.promo-listing-2.contact .bg-image p:last-child a:last-child:hover, section.promo-listing-2.contact .bg-image p:last-child section.signpost.light .row .content .link a:last-child:hover, section.signpost.white .row .content .link .button:first-child:hover, section.news.blog .news section.signpost.article:nth-child(5n + 1):not(.black) .row .content .link .button:first-child:hover, section.news.blog .news section.signpost.article:nth-child(5n + 5):not(.black) .row .content .link .button:first-child:hover, section.signpost.white .row .content .link .wp-block-button .wp-block-button__link:first-child:hover, .wp-block-button section.signpost.white .row .content .link .wp-block-button__link:first-child:hover, section.news.blog .news section.signpost.article:nth-child(5n + 1):not(.black) .row .content .link .wp-block-button .wp-block-button__link:first-child:hover, .wp-block-button section.news.blog .news section.signpost.article:nth-child(5n + 1):not(.black) .row .content .link .wp-block-button__link:first-child:hover, section.news.blog .news section.signpost.article:nth-child(5n + 5):not(.black) .row .content .link .wp-block-button .wp-block-button__link:first-child:hover, .wp-block-button section.news.blog .news section.signpost.article:nth-child(5n + 5):not(.black) .row .content .link .wp-block-button__link:first-child:hover, section.signpost.white .row .content .link section.promo-listing.contact .bg-image p:last-child a:first-child:hover, section.promo-listing.contact .bg-image p:last-child section.signpost.white .row .content .link a:first-child:hover, section.news.blog .news section.signpost.article:nth-child(5n + 1):not(.black) .row .content .link section.promo-listing.contact .bg-image p:last-child a:first-child:hover, section.promo-listing.contact .bg-image p:last-child section.news.blog .news section.signpost.article:nth-child(5n + 1):not(.black) .row .content .link a:first-child:hover, section.news.blog .news section.signpost.article:nth-child(5n + 5):not(.black) .row .content .link section.promo-listing.contact .bg-image p:last-child a:first-child:hover, section.promo-listing.contact .bg-image p:last-child section.news.blog .news section.signpost.article:nth-child(5n + 5):not(.black) .row .content .link a:first-child:hover, section.signpost.white .row .content .link section.promo-listing-2.contact .bg-image p:last-child a:first-child:hover, section.promo-listing-2.contact .bg-image p:last-child section.signpost.white .row .content .link a:first-child:hover, section.news.blog .news section.signpost.article:nth-child(5n + 1):not(.black) .row .content .link section.promo-listing-2.contact .bg-image p:last-child a:first-child:hover, section.promo-listing-2.contact .bg-image p:last-child section.news.blog .news section.signpost.article:nth-child(5n + 1):not(.black) .row .content .link a:first-child:hover, section.news.blog .news section.signpost.article:nth-child(5n + 5):not(.black) .row .content .link section.promo-listing-2.contact .bg-image p:last-child a:first-child:hover, section.promo-listing-2.contact .bg-image p:last-child section.news.blog .news section.signpost.article:nth-child(5n + 5):not(.black) .row .content .link a:first-child:hover, section.signpost.white .row .content .link .button:last-child:hover, section.news.blog .news section.signpost.article:nth-child(5n + 1):not(.black) .row .content .link .button:last-child:hover, section.news.blog .news section.signpost.article:nth-child(5n + 5):not(.black) .row .content .link .button:last-child:hover, section.signpost.white .row .content .link .wp-block-button .wp-block-button__link:last-child:hover, .wp-block-button section.signpost.white .row .content .link .wp-block-button__link:last-child:hover, section.news.blog .news section.signpost.article:nth-child(5n + 1):not(.black) .row .content .link .wp-block-button .wp-block-button__link:last-child:hover, .wp-block-button section.news.blog .news section.signpost.article:nth-child(5n + 1):not(.black) .row .content .link .wp-block-button__link:last-child:hover, section.news.blog .news section.signpost.article:nth-child(5n + 5):not(.black) .row .content .link .wp-block-button .wp-block-button__link:last-child:hover, .wp-block-button section.news.blog .news section.signpost.article:nth-child(5n + 5):not(.black) .row .content .link .wp-block-button__link:last-child:hover, section.signpost.white .row .content .link section.promo-listing.contact .bg-image p:last-child a:last-child:hover, section.promo-listing.contact .bg-image p:last-child section.signpost.white .row .content .link a:last-child:hover, section.news.blog .news section.signpost.article:nth-child(5n + 1):not(.black) .row .content .link section.promo-listing.contact .bg-image p:last-child a:last-child:hover, section.promo-listing.contact .bg-image p:last-child section.news.blog .news section.signpost.article:nth-child(5n + 1):not(.black) .row .content .link a:last-child:hover, section.news.blog .news section.signpost.article:nth-child(5n + 5):not(.black) .row .content .link section.promo-listing.contact .bg-image p:last-child a:last-child:hover, section.promo-listing.contact .bg-image p:last-child section.news.blog .news section.signpost.article:nth-child(5n + 5):not(.black) .row .content .link a:last-child:hover, section.signpost.white .row .content .link section.promo-listing-2.contact .bg-image p:last-child a:last-child:hover, section.promo-listing-2.contact .bg-image p:last-child section.signpost.white .row .content .link a:last-child:hover, section.news.blog .news section.signpost.article:nth-child(5n + 1):not(.black) .row .content .link section.promo-listing-2.contact .bg-image p:last-child a:last-child:hover, section.promo-listing-2.contact .bg-image p:last-child section.news.blog .news section.signpost.article:nth-child(5n + 1):not(.black) .row .content .link a:last-child:hover, section.news.blog .news section.signpost.article:nth-child(5n + 5):not(.black) .row .content .link section.promo-listing-2.contact .bg-image p:last-child a:last-child:hover, section.promo-listing-2.contact .bg-image p:last-child section.news.blog .news section.signpost.article:nth-child(5n + 5):not(.black) .row .content .link a:last-child:hover {
        background-color: #fbe200; }
  @media screen and (min-width: 75em) {
    section.signpost.reverse.large_icon .row > .image {
      position: relative;
      left: -8.33333%; } }
  @media screen and (min-width: 75em) {
    section.signpost.reverse .bg-image:before {
      background: linear-gradient(to right, rgba(0, 0, 0, 0.65) 0%, rgba(0, 0, 0, 0) 80%); } }
  @media screen and (min-width: 75em) {
    section.signpost.reverse.dark .bg-image:before, section.signpost.reverse.black .bg-image:before {
      background: linear-gradient(to right, rgba(255, 255, 255, 0.65) 0%, rgba(255, 255, 255, 0) 80%); } }
  @media print, screen and (min-width: 64em) {
    section.signpost.reverse .row > .image {
      float: right !important; } }
  @media screen and (min-width: 75em) {
    section.signpost.reverse .row .content {
      float: left !important; } }
  section.signpost.cta .row {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
        align-items: center;
    -ms-flex-pack: justify;
        justify-content: space-between; }
    section.signpost.cta .row:before, section.signpost.cta .row:after {
      content: none; }
    section.signpost.cta .row > .image {
      padding-top: 0;
      padding-bottom: 0;
      display: none; }
      @media print, screen and (min-width: 64em) {
        section.signpost.cta .row > .image {
          display: block; } }
      @media screen and (min-width: 75em) {
        section.signpost.cta .row > .image {
          width: 50%; } }
      section.signpost.cta .row > .image img.sized {
        -ms-transform: none;
            transform: none; }
      section.signpost.cta .row > .image.sized img {
        -ms-transform: none;
            transform: none; }
  section.signpost.reverse .row {
    -ms-flex-direction: row-reverse;
        flex-direction: row-reverse; }

.sidebar section.signpost.cta .bg-image {
  min-height: 0; }

.sidebar section.signpost.cta .body-push, .sidebar section.signpost.cta .slick-dots, .sidebar section.signpost.cta .top-bar ul > li.mega-menu-grid > ul.mega-sub-menu, .top-bar .sidebar section.signpost.cta ul > li.mega-menu-grid > ul.mega-sub-menu,
.sidebar section.signpost.cta .top-bar #mega-menu-wrap-top-bar-r #mega-menu-top-bar-r > li.mega-menu-grid > ul.mega-sub-menu, .top-bar #mega-menu-wrap-top-bar-r .sidebar section.signpost.cta #mega-menu-top-bar-r > li.mega-menu-grid > ul.mega-sub-menu, .sidebar section.signpost.cta .dropdown.menu > li > .is-dropdown-submenu, .sidebar section.signpost.cta body.single-case_study section.tabbed-content .tabs-wrapper, body.single-case_study section.tabbed-content .sidebar section.signpost.cta .tabs-wrapper, .sidebar section.signpost.cta body.single-case_study section.tabbed-content .tabs-content, body.single-case_study section.tabbed-content .sidebar section.signpost.cta .tabs-content {
  padding-left: 0 !important;
  padding-right: 0 !important; }

.sidebar section.signpost.cta .row .content {
  width: 100%;
  text-align: center;
  padding-top: 1.875rem;
  padding-bottom: 1.875rem;
  padding-right: 1.875rem; }
  @media screen and (min-width: 75em) {
    .sidebar section.signpost.cta .row .content {
      width: 66.66667%;
      text-align: left; } }
  .sidebar section.signpost.cta .row .content .button, .sidebar section.signpost.cta .row .content .wp-block-button .wp-block-button__link, .wp-block-button .sidebar section.signpost.cta .row .content .wp-block-button__link, .sidebar section.signpost.cta .row .content section.promo-listing.contact .bg-image p:last-child a, section.promo-listing.contact .bg-image p:last-child .sidebar section.signpost.cta .row .content a, .sidebar section.signpost.cta .row .content section.promo-listing-2.contact .bg-image p:last-child a, section.promo-listing-2.contact .bg-image p:last-child .sidebar section.signpost.cta .row .content a {
    margin-right: 0; }

.sidebar section.signpost.cta .row .image {
  width: 33.33333%;
  padding-top: 1.875rem;
  padding-bottom: 1.875rem;
  padding-left: 1.875rem; }

.single-cta .sidebar section.signpost.cta {
  max-width: 25rem;
  margin: 3.125rem auto;
  clear: both; }

section.testimonials {
  background-color: #cacaca; }
  @media print, screen and (min-width: 40em) {
    section.testimonials {
      background-image: url(//www.telsis.com/wp-content/themes/gamma/dist/assets/css/../images/bg-dots-testimonial.png);
      background-repeat: no-repeat;
      background-size: auto 100%;
      background-position: 100% 50%; } }
  .single-case_study section.testimonials {
    background-size: auto 100%; }
    @media print, screen and (min-width: 64em) {
      .single-case_study section.testimonials .row .content {
        width: 75%; } }
  section.testimonials .row:before, section.testimonials .row:after {
    display: none; }
  section.testimonials .row .slick-track {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: stretch;
        align-items: stretch; }
    section.testimonials .row .slick-track:before, section.testimonials .row .slick-track:after {
      display: none; }
  section.testimonials .row .slide {
    height: auto;
    float: none; }
    section.testimonials .row .slide:focus {
      outline: none; }
    @media print, screen and (min-width: 64em) {
      section.testimonials .row .slide {
        display: -ms-flexbox;
        display: flex;
        -ms-flex-align: stretch;
            align-items: stretch;
        -ms-flex-pack: justify;
            justify-content: space-between; }
        section.testimonials .row .slide:before, section.testimonials .row .slide:after {
          display: none; } }
    section.testimonials .row .slide .link {
      padding-top: 0; }
      section.testimonials .row .slide .link .button, section.testimonials .row .slide .link .wp-block-button .wp-block-button__link, .wp-block-button section.testimonials .row .slide .link .wp-block-button__link, section.testimonials .row .slide .link section.promo-listing.contact .bg-image p:last-child a, section.promo-listing.contact .bg-image p:last-child section.testimonials .row .slide .link a, section.testimonials .row .slide .link section.promo-listing-2.contact .bg-image p:last-child a, section.promo-listing-2.contact .bg-image p:last-child section.testimonials .row .slide .link a {
        margin-right: 0.625rem; }
  @media print, screen and (min-width: 64em) {
    section.testimonials .row .content {
      width: 50%; } }
  section.testimonials .row .content p.label {
    color: #0a0a0a; }
  section.testimonials .row .right {
    width: 100%;
    float: left;
    padding-right: 0.625rem;
    padding-left: 0.625rem;
    display: -ms-flexbox;
    display: flex; }
    @media print, screen and (min-width: 40em) {
      section.testimonials .row .right {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem; } }
    section.testimonials .row .right, section.testimonials .row .right:last-child:not(:first-child) {
      float: left;
      clear: none; }
    section.testimonials .row .right:last-child:not(:first-child) {
      float: right; }
    section.testimonials .row .right .image {
      display: none; }
    @media print, screen and (min-width: 64em) {
      section.testimonials .row .right {
        width: 41.66667%; }
        section.testimonials .row .right .image {
          display: block;
          width: 100%;
          -ms-flex-item-align: end;
              align-self: flex-end; }
          section.testimonials .row .right .image img {
            opacity: 0;
            transition: opacity 0.5s ease-out; }
            section.testimonials .row .right .image img.lazyloaded {
              opacity: 1;
              transition: opacity 0.5s ease-out; } }
  section.testimonials .row.logos {
    width: auto;
    float: none !important;
    -ms-flex-pack: start;
        justify-content: flex-start;
    padding-bottom: 0;
    margin-left: -1.25rem;
    margin-right: -1.25rem; }
    @media print, screen and (min-width: 40em) {
      section.testimonials .row.logos {
        margin-left: -1.875rem;
        margin-right: -1.875rem; } }
    @media print, screen and (min-width: 40em) {
      section.testimonials .row.logos .logo {
        max-width: 33.3333%; } }

section.contact-locations {
  background-color: #440099; }
  section.contact-locations h2 {
    width: 100%;
    float: left;
    padding-right: 0.625rem;
    padding-left: 0.625rem;
    color: #fefefe;
    margin-bottom: 1.875rem; }
    @media print, screen and (min-width: 40em) {
      section.contact-locations h2 {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem; } }
    section.contact-locations h2, section.contact-locations h2:last-child:not(:first-child) {
      float: left;
      clear: none; }
    section.contact-locations h2:last-child:not(:first-child) {
      float: right; }
  section.contact-locations .content > p {
    width: 100%;
    float: left;
    padding-right: 0.625rem;
    padding-left: 0.625rem;
    color: #fefefe;
    max-width: 31.25rem;
    margin-bottom: 2.5rem; }
    @media print, screen and (min-width: 40em) {
      section.contact-locations .content > p {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem; } }
    section.contact-locations .content > p, section.contact-locations .content > p:last-child:not(:first-child) {
      float: left;
      clear: none; }
    section.contact-locations .content > p:last-child:not(:first-child) {
      float: right; }
  section.contact-locations .contact-locations-list {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: row;
        flex-direction: row;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    margin: 0;
    width: 100%; }
    section.contact-locations .contact-locations-list .contact-location {
      width: 50%;
      float: left;
      padding-right: 0.625rem;
      padding-left: 0.625rem;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-direction: column;
          flex-direction: column;
      list-style-type: none;
      margin-bottom: 3.125rem; }
      @media print, screen and (min-width: 40em) {
        section.contact-locations .contact-locations-list .contact-location {
          padding-right: 0.9375rem;
          padding-left: 0.9375rem; } }
      section.contact-locations .contact-locations-list .contact-location, section.contact-locations .contact-locations-list .contact-location:last-child:not(:first-child) {
        float: left;
        clear: none; }
      section.contact-locations .contact-locations-list .contact-location:last-child:not(:first-child) {
        float: right; }
      @media print, screen and (min-width: 40em) {
        section.contact-locations .contact-locations-list .contact-location {
          width: 33.33333%; } }
      @media print, screen and (min-width: 64em) {
        section.contact-locations .contact-locations-list .contact-location {
          width: 16.66667%;
          margin-bottom: 0; } }
      section.contact-locations .contact-locations-list .contact-location svg {
        fill: #fefefe;
        margin-bottom: 0.9375rem;
        width: 1.125rem; }
      section.contact-locations .contact-locations-list .contact-location h3 {
        color: #fefefe;
        font-size: 1.125rem;
        margin-bottom: 1.25rem; }
      section.contact-locations .contact-locations-list .contact-location p {
        color: #fefefe;
        margin-bottom: 2.5rem; }
      section.contact-locations .contact-locations-list .contact-location .address-button {
        color: #fefefe;
        font-weight: bold;
        margin-top: auto;
        position: relative; }
        section.contact-locations .contact-locations-list .contact-location .address-button:after {
          border-bottom: 0.0625rem solid #fefefe;
          border-right: 0.0625rem solid #fefefe;
          content: '';
          display: inline-block;
          height: 0.625rem;
          width: 0.625rem;
          -ms-transform: rotate(-45deg);
              transform: rotate(-45deg);
          margin-left: 0.3125rem; }
        section.contact-locations .contact-locations-list .contact-location .address-button:hover, section.contact-locations .contact-locations-list .contact-location .address-button:focus {
          color: #fbe200; }
          section.contact-locations .contact-locations-list .contact-location .address-button:hover:after, section.contact-locations .contact-locations-list .contact-location .address-button:focus:after {
            border-color: #fbe200; }

section.split-signposts:not(.panels) {
  padding: 0; }
  @media print, screen and (min-width: 40em) {
    section.split-signposts:not(.panels) {
      display: -ms-flexbox;
      display: flex;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
      -ms-flex-direction: row;
          flex-direction: row; }
      section.split-signposts:not(.panels):before, section.split-signposts:not(.panels):after {
        display: none; } }

@media print, screen and (min-width: 64em) {
  .intro + section.split-signposts {
    margin-top: -1.25rem; } }

section.split-signposts .signpost {
  -ms-flex: 1 1 0px;
      flex: 1 1 0;
  position: relative;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: stretch;
      align-items: stretch; }
  section.split-signposts .signpost a {
    display: block;
    color: #fefefe;
    position: relative;
    min-height: 64vw;
    -ms-flex: 1 1 0px;
        flex: 1 1 0; }
    section.split-signposts .signpost a img + .row:before,
    section.split-signposts .signpost a img + noscript + .row:before {
      content: "";
      display: block;
      position: absolute;
      top: 0;
      left: 0;
      right: 0;
      width: 100%;
      height: 100%;
      background: rgba(0, 0, 0, 0.4); }
      @media print, screen and (min-width: 40em) {
        section.split-signposts .signpost a img + .row:before,
        section.split-signposts .signpost a img + noscript + .row:before {
          background: linear-gradient(to right, rgba(0, 0, 0, 0.65) 0%, rgba(0, 0, 0, 0) 90%); } }
  @media print, screen and (min-width: 40em) {
    section.split-signposts .signpost {
      width: 50%;
      -ms-flex: 1 0 50%;
          flex: 1 0 50%; }
      section.split-signposts .signpost a {
        min-height: 0; } }
  section.split-signposts .signpost .row {
    max-width: none;
    margin-right: auto;
    margin-left: auto; }
    section.split-signposts .signpost .row::before, section.split-signposts .signpost .row::after {
      display: table;
      content: ' ';
      -ms-flex-preferred-size: 0;
          flex-basis: 0;
      -ms-flex-order: 1;
          order: 1; }
    section.split-signposts .signpost .row::after {
      clear: both; }
    section.split-signposts .signpost .row .content {
      width: 100%;
      float: left;
      padding-right: 0.625rem;
      padding-left: 0.625rem;
      padding-bottom: 1.25rem;
      padding-top: 1.25rem; }
      @media print, screen and (min-width: 40em) {
        section.split-signposts .signpost .row .content {
          padding-right: 0.9375rem;
          padding-left: 0.9375rem; } }
      section.split-signposts .signpost .row .content, section.split-signposts .signpost .row .content:last-child:not(:first-child) {
        float: left;
        clear: none; }
      section.split-signposts .signpost .row .content:last-child:not(:first-child) {
        float: right; }
      @media print, screen and (min-width: 40em) {
        section.split-signposts .signpost .row .content {
          padding-bottom: 3.75rem;
          padding-top: 3.75rem; } }
    section.split-signposts .signpost .row h3 {
      font-size: 2.5rem; }
      @media print, screen and (min-width: 64em) {
        section.split-signposts .signpost .row h3 {
          font-size: 4.375rem; } }
  section.split-signposts .signpost img + .row,
  section.split-signposts .signpost img + noscript + .row {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%; }
  section.split-signposts .signpost.dark.no-img a {
    color: #0a0a0a; }
  section.split-signposts .signpost.black a {
    color: #0a0a0a; }
  section.split-signposts .signpost.black img + .row:before,
  section.split-signposts .signpost.black img + noscript + .row:before {
    background: rgba(255, 255, 255, 0.4); }
    @media print, screen and (min-width: 40em) {
      section.split-signposts .signpost.black img + .row:before,
      section.split-signposts .signpost.black img + noscript + .row:before {
        background: linear-gradient(to right, rgba(255, 255, 255, 0.65) 0%, rgba(255, 255, 255, 0) 90%); } }
  section.split-signposts .signpost.black li:before {
    background-color: #6800d2; }

@media screen and (max-width: 39.99875em) {
  section.split-signposts.panels {
    padding-bottom: 0; }
    section.split-signposts.panels .body-push.panels, section.split-signposts.panels .panels.slick-dots, section.split-signposts.panels .top-bar ul > li.mega-menu-grid > ul.panels.mega-sub-menu, .top-bar section.split-signposts.panels ul > li.mega-menu-grid > ul.panels.mega-sub-menu,
    section.split-signposts.panels .top-bar #mega-menu-wrap-top-bar-r #mega-menu-top-bar-r > li.mega-menu-grid > ul.panels.mega-sub-menu, .top-bar #mega-menu-wrap-top-bar-r section.split-signposts.panels #mega-menu-top-bar-r > li.mega-menu-grid > ul.panels.mega-sub-menu, section.split-signposts.panels .dropdown.menu > li > .panels.is-dropdown-submenu, section.split-signposts.panels body.single-case_study section.tabbed-content .panels.tabs-wrapper, body.single-case_study section.tabbed-content section.split-signposts.panels .panels.tabs-wrapper, section.split-signposts.panels body.single-case_study section.tabbed-content .panels.tabs-content, body.single-case_study section.tabbed-content section.split-signposts.panels .panels.tabs-content {
      padding-left: 0 !important;
      padding-right: 0 !important; } }

section.split-signposts.panels .title {
  padding-bottom: 0.625rem;
  padding-left: 0.625rem;
  padding-right: 0.625rem; }
  @media print, screen and (min-width: 40em) {
    section.split-signposts.panels .title {
      padding-left: 0.9375rem;
      padding-right: 0.9375rem; } }
  @media print, screen and (min-width: 64em) {
    section.split-signposts.panels .title {
      padding-bottom: 2.5rem; } }

@media print, screen and (min-width: 64em) {
  section.split-signposts.panels .images {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -ms-flex-line-pack: stretch;
        align-content: stretch;
    -ms-flex-direction: row;
        flex-direction: row; } }

@media print, screen and (min-width: 40em) {
  section.split-signposts.panels .images .article {
    padding-left: 0.9375rem;
    padding-right: 0.9375rem;
    padding-bottom: 1.875rem; } }

@media print, screen and (min-width: 64em) {
  section.split-signposts.panels .images .article {
    display: -ms-flexbox;
    display: flex;
    -ms-flex: 1 0 33.3333%;
        flex: 1 0 33.3333%;
    max-width: 33.3333%;
    -ms-flex-line-pack: stretch;
        align-content: stretch; } }

section.split-signposts.panels .images .article li:before {
  background: #fefefe; }

section.split-signposts.panels .images .article a, section.split-signposts.panels .images .article .no-link {
  padding: 1.25rem 0.625rem 0.625rem 0.625rem;
  color: #fefefe;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  width: 100%; }
  section.split-signposts.panels .images .article a .row, section.split-signposts.panels .images .article .no-link .row {
    justify-self: stretch;
    -ms-flex-positive: 1;
        flex-grow: 1;
    display: -ms-flexbox;
    display: flex;
    margin-left: 1.25rem;
    margin-right: 1.25rem; }
    section.split-signposts.panels .images .article a .row .content, section.split-signposts.panels .images .article .no-link .row .content {
      display: -ms-flexbox;
      display: flex;
      -ms-flex-direction: column;
          flex-direction: column;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
      width: 100%; }
      section.split-signposts.panels .images .article a .row .content .cta, section.split-signposts.panels .images .article .no-link .row .content .cta {
        margin-top: auto; }
  section.split-signposts.panels .images .article a img, section.split-signposts.panels .images .article .no-link img {
    margin: 0 1.25rem 0.625rem;
    width: 5rem; }
  section.split-signposts.panels .images .article a h3, section.split-signposts.panels .images .article .no-link h3 {
    font-size: 1.625rem;
    margin-bottom: 2.5rem; }
  section.split-signposts.panels .images .article a ul, section.split-signposts.panels .images .article .no-link ul {
    margin-bottom: 1.875rem; }
  section.split-signposts.panels .images .article a span.button, section.split-signposts.panels .images .article a .wp-block-button span.wp-block-button__link, .wp-block-button section.split-signposts.panels .images .article a span.wp-block-button__link, section.split-signposts.panels .images .article .no-link span.button, section.split-signposts.panels .images .article .no-link .wp-block-button span.wp-block-button__link, .wp-block-button section.split-signposts.panels .images .article .no-link span.wp-block-button__link {
    margin-top: auto;
    background: #fefefe;
    color: #6800d2; }
  section.split-signposts.panels .images .article a:hover span.button, section.split-signposts.panels .images .article a:hover .wp-block-button span.wp-block-button__link, .wp-block-button section.split-signposts.panels .images .article a:hover span.wp-block-button__link, section.split-signposts.panels .images .article .no-link:hover span.button, section.split-signposts.panels .images .article .no-link:hover .wp-block-button span.wp-block-button__link, .wp-block-button section.split-signposts.panels .images .article .no-link:hover span.wp-block-button__link {
    background: #fbe200; }

section.split-signposts.panels .images .article.black li:before {
  background: #0a0a0a; }

section.split-signposts.panels .images .article.black a, section.split-signposts.panels .images .article.black .no-link {
  color: #0a0a0a; }
  section.split-signposts.panels .images .article.black a:hover span.button, section.split-signposts.panels .images .article.black a:hover .wp-block-button span.wp-block-button__link, .wp-block-button section.split-signposts.panels .images .article.black a:hover span.wp-block-button__link, section.split-signposts.panels .images .article.black .no-link:hover span.button, section.split-signposts.panels .images .article.black .no-link:hover .wp-block-button span.wp-block-button__link, .wp-block-button section.split-signposts.panels .images .article.black .no-link:hover span.wp-block-button__link {
    background: #6800d2;
    color: #fefefe; }

section.showcase .row .content > img,
section.showcase .row .content > picture {
  width: 5rem; }

section.showcase .signposts {
  position: relative;
  margin: 0;
  padding: 1.25rem 0;
  -ms-flex-pack: center;
      justify-content: center; }
  @media print, screen and (min-width: 40em) {
    section.showcase .signposts {
      padding: 2.5rem 0 3.75rem 0; } }
  section.showcase .signposts:before, section.showcase .signposts:after {
    display: block !important;
    content: "";
    position: absolute;
    top: -1.25rem;
    width: 50%;
    background-color: inherit;
    padding-top: 1.25rem; }
  section.showcase .signposts:before {
    right: 50%;
    -ms-transform-origin: 100% 100%;
    transform-origin: 100% 100%;
    -ms-transform: skewX(45deg);
    transform: skewX(45deg); }
  section.showcase .signposts:after {
    left: 50%;
    -ms-transform-origin: 0 100%;
    transform-origin: 0 100%;
    -ms-transform: skewX(-45deg);
    transform: skewX(-45deg); }
  section.showcase .signposts .signpost p {
    margin-bottom: 0; }

section.showcase.dark .signpost,
section.showcase .signposts.dark .signpost {
  color: #0a0a0a; }
  section.showcase.dark .signpost a,
  section.showcase.dark .signpost h3,
  section.showcase .signposts.dark .signpost a,
  section.showcase .signposts.dark .signpost h3 {
    color: #6800d2; }
    section.showcase.dark .signpost a p,
    section.showcase.dark .signpost h3 p,
    section.showcase .signposts.dark .signpost a p,
    section.showcase .signposts.dark .signpost h3 p {
      color: #0a0a0a; }
  section.showcase.dark .signpost h3:after,
  section.showcase .signposts.dark .signpost h3:after {
    border-right-color: #6800d2;
    border-top-color: #6800d2; }

section.showcase:nth-of-type(2n + 1) .row .content {
  float: left; }

@media print, screen and (min-width: 64em) {
  section.showcase:nth-of-type(2n + 1) .bg-image:before {
    background: linear-gradient(to right, rgba(0, 0, 0, 0.65) 0%, rgba(0, 0, 0, 0) 80%); } }

section.promo-listing-wrapper {
  padding: 0;
  background: #fefefe; }

section.promo-listing {
  padding: 0; }
  section.promo-listing .bg-image {
    min-height: 20vw;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
        flex-direction: column;
    -ms-flex-pack: start;
        justify-content: flex-start;
    position: relative !important;
    background-image: url(//www.telsis.com/wp-content/themes/gamma/dist/assets/css/../images/bg-dots.png), linear-gradient(80deg, #6800d2 60%, #30164a 100%);
    background-repeat: no-repeat;
    background-size: auto 100%;
    background-position: right 0;
    padding-top: 1.25rem;
    padding-bottom: 1.25rem; }
    @media print, screen and (min-width: 64em) {
      section.promo-listing .bg-image {
        padding-top: 5rem;
        padding-bottom: 5rem; } }
  body[data-slug="solutions"] section.promo-listing:not(.contact) .bg-image {
    background-image: url(//www.telsis.com/wp-content/themes/gamma/dist/assets/css/../images/bg-dots-solutions.png), linear-gradient(80deg, #6800d2 60%, #30164a 100%);
    background-size: 100% auto;
    background-position: 0 100%; }
    @media print, screen and (min-width: 40em) {
      body[data-slug="solutions"] section.promo-listing:not(.contact) .bg-image > .row {
        padding-top: 1.25rem; } }
    @media print, screen and (min-width: 64em) {
      body[data-slug="solutions"] section.promo-listing:not(.contact) .bg-image > .row {
        padding-top: 0; } }
  body.single-case_study section.promo-listing .bg-image {
    background-image: url(//www.telsis.com/wp-content/themes/gamma/dist/assets/css/../images/bg-dots-master.png), linear-gradient(to top, #440099 10%, #6800d2 100%);
    background-size: 100% auto;
    background-position: left 0 bottom 90%; }
    body.single-case_study section.promo-listing .bg-image:after {
      content: "";
      display: block;
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      background-image: linear-gradient(to top, rgba(68, 0, 153, 0) 30%, #440099 100%);
      z-index: 1; }
    body.single-case_study section.promo-listing .bg-image > * {
      z-index: 2; }
  section.promo-listing .row {
    max-width: none;
    margin-right: auto;
    margin-left: auto;
    width: 100%;
    position: relative;
    -ms-flex-pack: center;
        justify-content: center; }
    section.promo-listing .row::before, section.promo-listing .row::after {
      display: table;
      content: ' ';
      -ms-flex-preferred-size: 0;
          flex-basis: 0;
      -ms-flex-order: 1;
          order: 1; }
    section.promo-listing .row::after {
      clear: both; }
    section.promo-listing .row .content {
      color: #fefefe;
      text-align: center;
      width: 100%;
      float: left;
      padding-right: 0.625rem;
      padding-left: 0.625rem; }
      @media print, screen and (min-width: 40em) {
        section.promo-listing .row .content {
          padding-right: 0.9375rem;
          padding-left: 0.9375rem; } }
      section.promo-listing .row .content, section.promo-listing .row .content:last-child:not(:first-child) {
        float: left;
        clear: none; }
      section.promo-listing .row .content:last-child:not(:first-child) {
        float: right; }
      section.promo-listing .row .content .label {
        color: #fbe200; }
      section.promo-listing .row .content h2 {
        font-size: 1.1875rem; }
        @media print, screen and (min-width: 40em) {
          section.promo-listing .row .content h2 {
            font-size: 1.75rem; } }
      section.promo-listing .row .content.labelled {
        text-align: left; }
        @media print, screen and (min-width: 40em) {
          section.promo-listing .row .content.labelled {
            max-width: 25rem; } }
        @media print, screen and (min-width: 64em) {
          section.promo-listing .row .content.labelled {
            width: 41.66667%; } }
      body.home section.promo-listing .row .content h2 {
        font-size: 1.25rem; }
        @media print, screen and (min-width: 40em) {
          body.home section.promo-listing .row .content h2 {
            font-size: 2.125rem; } }
  section.promo-listing .button, section.promo-listing .wp-block-button .wp-block-button__link, .wp-block-button section.promo-listing .wp-block-button__link, section.promo-listing.contact .bg-image p:last-child a, section.promo-listing section.promo-listing-2.contact .bg-image p:last-child a, section.promo-listing-2.contact .bg-image p:last-child section.promo-listing a {
    background: #fefefe;
    color: #6800d2;
    display: inline-block;
    text-align: center;
    margin: 1.25rem auto 0;
    -ms-flex-item-align: center;
        -ms-grid-row-align: center;
        align-self: center; }
    @media print, screen and (min-width: 40em) {
      section.promo-listing .button, section.promo-listing .wp-block-button .wp-block-button__link, .wp-block-button section.promo-listing .wp-block-button__link, section.promo-listing.contact .bg-image p:last-child a, section.promo-listing section.promo-listing-2.contact .bg-image p:last-child a, section.promo-listing-2.contact .bg-image p:last-child section.promo-listing a {
        margin: 3.75rem auto 0; } }
    section.promo-listing .button:hover, section.promo-listing .wp-block-button .wp-block-button__link:hover, .wp-block-button section.promo-listing .wp-block-button__link:hover, section.promo-listing.contact .bg-image p:last-child a:hover, section.promo-listing section.promo-listing-2.contact .bg-image p:last-child a:hover, section.promo-listing-2.contact .bg-image p:last-child section.promo-listing a:hover {
      background: #fbe200;
      color: #6800d2; }
  section.promo-listing.contact .row .content {
    text-align: left; }
    @media print, screen and (min-width: 40em) {
      section.promo-listing.contact .row .content {
        max-width: 25rem; } }
    @media print, screen and (min-width: 64em) {
      section.promo-listing.contact .row .content {
        width: 41.66667%; } }
  section.promo-listing.contact .bg-image {
    background: #440099 url(//www.telsis.com/wp-content/themes/gamma/dist/assets/css/../images/bg-contact.svg) no-repeat;
    background-size: auto 100%;
    background-position: right 20% top 0;
    min-height: 0; }
  section.promo-listing.accordion-content {
    margin-left: -1.25rem;
    margin-right: -1.25rem; }
  section.promo-listing.stat .row.signposts .signpost h3 {
    font-size: 3.5rem;
    font-weight: 100; }

.promo-listing.tab-wrapper ul.tabs {
  margin-bottom: 2.5rem;
  margin-top: 1.25rem; }

.promo-listing.tab-wrapper .accordion-item.is-active .accordion-title {
  border-bottom-color: #fefefe; }

.promo-listing.tab-wrapper .accordion-title {
  border-bottom-width: 1px; }

.promo-listing.tab-wrapper .accordion-content {
  border: 0; }

.row.signposts {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
      justify-content: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-top: 1.875rem; }
  .row.signposts:before, .row.signposts:after {
    display: none !important; }
  @media print, screen and (min-width: 64em) {
    .row.signposts {
      margin-top: 3.75rem; } }
  .row.signposts .signpost {
    -ms-flex-positive: 1;
        flex-grow: 1;
    -ms-flex-negative: 1;
        flex-shrink: 1;
    -ms-flex-preferred-size: 50%;
        flex-basis: 50%;
    width: 50%;
    color: #fefefe;
    margin-bottom: 1.25rem;
    padding-left: 0.625rem;
    padding-right: 0.625rem; }
    @media print, screen and (min-width: 40em) {
      .row.signposts .signpost {
        max-width: 33.3333%;
        -ms-flex-preferred-size: 33.3333%;
            flex-basis: 33.3333%;
        padding-left: 0.9375rem;
        padding-right: 0.9375rem; }
        body.home .row.signposts .signpost {
          max-width: 25%;
          -ms-flex-preferred-size: 25%;
              flex-basis: 25%; } }
    @media print, screen and (min-width: 64em) {
      .row.signposts .signpost {
        max-width: 20%; }
        body.home .row.signposts .signpost {
          max-width: 25%; }
          body.home .row.signposts .signpost h3 {
            font-size: 1.125rem;
            max-width: 12.5rem; }
        body.single .row.signposts .signpost {
          max-width: 20%; }
        body[data-slug="solutions"] .row.signposts .signpost {
          max-width: 33.3333%; }
          body[data-slug="solutions"] .row.signposts .signpost a,
          body[data-slug="solutions"] .row.signposts .signpost span.no-link {
            display: -ms-flexbox;
            display: flex;
            -ms-flex-direction: row;
                flex-direction: row;
            -ms-flex-align: center;
                align-items: center; }
            body[data-slug="solutions"] .row.signposts .signpost a img,
            body[data-slug="solutions"] .row.signposts .signpost span.no-link img {
              margin-right: 1.25rem; }
            body[data-slug="solutions"] .row.signposts .signpost a h3,
            body[data-slug="solutions"] .row.signposts .signpost span.no-link h3 {
              -ms-flex: 1 1 auto;
                  flex: 1 1 auto; }
        body[data-slug*="support"] .row.signposts .signpost {
          max-width: 33.3333%; }
          body[data-slug*="support"] .row.signposts .signpost a,
          body[data-slug*="support"] .row.signposts .signpost span.no-link {
            display: -ms-flexbox;
            display: flex;
            -ms-flex-direction: row;
                flex-direction: row;
            -ms-flex-align: center;
                align-items: center; }
            body[data-slug*="support"] .row.signposts .signpost a img,
            body[data-slug*="support"] .row.signposts .signpost span.no-link img {
              margin-right: 1.25rem; }
            body[data-slug*="support"] .row.signposts .signpost a h3,
            body[data-slug*="support"] .row.signposts .signpost span.no-link h3 {
              -ms-flex: 1 1 auto;
                  flex: 1 1 auto; } }
    .row.signposts .signpost img {
      margin-bottom: 0.625rem;
      max-width: 5rem; }
      @media print, screen and (min-width: 64em) {
        .row.signposts .signpost img {
          margin-bottom: 1.25rem;
          max-width: 7.5rem; } }
    .row.signposts .signpost h3 {
      margin-bottom: 0.625rem;
      font-size: 0.875rem;
      font-weight: 700;
      color: #fbe200; }
      @media print, screen and (min-width: 40em) {
        .row.signposts .signpost h3 {
          font-size: 1rem; } }
    .row.signposts .signpost p {
      font-size: 0.875rem; }
  .row.signposts a {
    color: #fbe200;
    display: block; }
    .row.signposts a h3:after {
      white-space: nowrap;
      content: "";
      display: inline-block;
      position: relative;
      top: -0.125rem;
      right: auto;
      margin-left: -1.25rem;
      margin-top: auto;
      border: 2px solid transparent;
      border-right-color: #fbe200;
      border-top-color: #fbe200;
      width: 0.625rem;
      height: 0.625rem;
      -ms-transform: rotate(45deg) translate(20px, -18px);
          transform: rotate(45deg) translate(20px, -18px);
      vertical-align: baseline; }
      @media screen and (max-width: 39.99875em) {
        .row.signposts a h3:after {
          margin-left: -1.5625rem;
          top: -0.0625rem;
          -ms-transform: rotate(45deg) translate(20px, -18px) scale(0.8);
              transform: rotate(45deg) translate(20px, -18px) scale(0.8); } }
    .row.signposts a p {
      color: #fff; }
  @media print, screen and (min-width: 64em) {
    .row.signposts.cols-3 .signpost {
      max-width: 33.3333%; }
    .row.signposts.cols-4 .signpost {
      max-width: 25%; }
    .row.signposts.cols-5 .signpost {
      max-width: 20%; } }

section.promo-listing-2-wrapper {
  padding: 0;
  background: #fefefe; }

section.promo-listing-2 {
  padding: 0; }
  section.promo-listing-2 .bg-image {
    min-height: 20vw;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
        flex-direction: column;
    -ms-flex-pack: start;
        justify-content: flex-start;
    position: relative !important;
    background-image: url(//www.telsis.com/wp-content/themes/gamma/dist/assets/css/../images/bg-dots.png), linear-gradient(80deg, #6800d2 60%, #30164a 100%);
    background-repeat: no-repeat;
    background-size: auto 100%;
    background-position: right 0;
    padding-top: 1.25rem;
    padding-bottom: 1.25rem; }
    @media print, screen and (min-width: 64em) {
      section.promo-listing-2 .bg-image {
        padding-top: 5rem;
        padding-bottom: 5rem; } }
  body[data-slug="solutions"] section.promo-listing-2:not(.contact) .bg-image {
    background-image: url(//www.telsis.com/wp-content/themes/gamma/dist/assets/css/../images/bg-dots-solutions.png), linear-gradient(80deg, #6800d2 60%, #30164a 100%);
    background-size: 100% auto;
    background-position: 0 100%; }
    @media print, screen and (min-width: 40em) {
      body[data-slug="solutions"] section.promo-listing-2:not(.contact) .bg-image > .row {
        padding-top: 1.25rem; } }
    @media print, screen and (min-width: 64em) {
      body[data-slug="solutions"] section.promo-listing-2:not(.contact) .bg-image > .row {
        padding-top: 0; } }
  body.single-case_study section.promo-listing-2 .bg-image {
    background-image: url(//www.telsis.com/wp-content/themes/gamma/dist/assets/css/../images/bg-dots-master.png), linear-gradient(to top, #440099 10%, #6800d2 100%);
    background-size: 100% auto;
    background-position: left 0 bottom 90%; }
    body.single-case_study section.promo-listing-2 .bg-image:after {
      content: "";
      display: block;
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      background-image: linear-gradient(to top, rgba(68, 0, 153, 0) 30%, #440099 100%);
      z-index: 1; }
    body.single-case_study section.promo-listing-2 .bg-image > * {
      z-index: 2; }
  section.promo-listing-2 .row {
    max-width: none;
    margin-right: auto;
    margin-left: auto;
    width: 100%;
    position: relative; }
    section.promo-listing-2 .row::before, section.promo-listing-2 .row::after {
      display: table;
      content: ' ';
      -ms-flex-preferred-size: 0;
          flex-basis: 0;
      -ms-flex-order: 1;
          order: 1; }
    section.promo-listing-2 .row::after {
      clear: both; }
    section.promo-listing-2 .row .content {
      color: #fefefe;
      text-align: left;
      width: 100%;
      float: left;
      padding-right: 0.625rem;
      padding-left: 0.625rem; }
      @media print, screen and (min-width: 40em) {
        section.promo-listing-2 .row .content {
          padding-right: 0.9375rem;
          padding-left: 0.9375rem; } }
      section.promo-listing-2 .row .content, section.promo-listing-2 .row .content:last-child:not(:first-child) {
        float: left;
        clear: none; }
      section.promo-listing-2 .row .content:last-child:not(:first-child) {
        float: right; }
      section.promo-listing-2 .row .content .label {
        color: #fbe200; }
      section.promo-listing-2 .row .content h2 {
        font-size: 1.1875rem; }
        @media print, screen and (min-width: 40em) {
          section.promo-listing-2 .row .content h2 {
            font-size: 1.75rem; } }
      section.promo-listing-2 .row .content.labelled {
        text-align: left; }
        @media print, screen and (min-width: 40em) {
          section.promo-listing-2 .row .content.labelled {
            max-width: 25rem; } }
        @media print, screen and (min-width: 64em) {
          section.promo-listing-2 .row .content.labelled {
            width: 41.66667%; } }
      body.home section.promo-listing-2 .row .content h2 {
        font-size: 1.25rem; }
        @media print, screen and (min-width: 40em) {
          body.home section.promo-listing-2 .row .content h2 {
            font-size: 2.125rem; } }
  section.promo-listing-2 .button, section.promo-listing-2 .wp-block-button .wp-block-button__link, .wp-block-button section.promo-listing-2 .wp-block-button__link, section.promo-listing-2 section.promo-listing.contact .bg-image p:last-child a, section.promo-listing.contact .bg-image p:last-child section.promo-listing-2 a, section.promo-listing-2.contact .bg-image p:last-child a {
    background: #fefefe;
    color: #6800d2;
    display: inline-block;
    text-align: center;
    margin: 1.25rem auto 0;
    -ms-flex-item-align: center;
        -ms-grid-row-align: center;
        align-self: center; }
    @media print, screen and (min-width: 40em) {
      section.promo-listing-2 .button, section.promo-listing-2 .wp-block-button .wp-block-button__link, .wp-block-button section.promo-listing-2 .wp-block-button__link, section.promo-listing-2 section.promo-listing.contact .bg-image p:last-child a, section.promo-listing.contact .bg-image p:last-child section.promo-listing-2 a, section.promo-listing-2.contact .bg-image p:last-child a {
        margin: 3.75rem auto 0; } }
    section.promo-listing-2 .button:hover, section.promo-listing-2 .wp-block-button .wp-block-button__link:hover, .wp-block-button section.promo-listing-2 .wp-block-button__link:hover, section.promo-listing-2 section.promo-listing.contact .bg-image p:last-child a:hover, section.promo-listing.contact .bg-image p:last-child section.promo-listing-2 a:hover, section.promo-listing-2.contact .bg-image p:last-child a:hover {
      background: #fbe200;
      color: #6800d2; }
  section.promo-listing-2.contact .row .content {
    text-align: left; }
    @media print, screen and (min-width: 40em) {
      section.promo-listing-2.contact .row .content {
        max-width: 25rem; } }
    @media print, screen and (min-width: 64em) {
      section.promo-listing-2.contact .row .content {
        width: 41.66667%; } }
  section.promo-listing-2.contact .bg-image {
    background: #440099 url(//www.telsis.com/wp-content/themes/gamma/dist/assets/css/../images/bg-contact.svg) no-repeat;
    background-size: auto 100%;
    background-position: right 20% top 0;
    min-height: 0; }
  section.promo-listing-2.accordion-content {
    margin-left: -1.25rem;
    margin-right: -1.25rem; }
  section.promo-listing-2.stat .row.signposts .signpost h3 {
    font-size: 3.5rem;
    font-weight: 100; }

.promo-listing-2.tab-wrapper ul.tabs {
  margin-bottom: 2.5rem;
  margin-top: 1.25rem; }

.promo-listing-2.tab-wrapper .accordion-item.is-active .accordion-title {
  border-bottom-color: #fefefe; }

.promo-listing-2.tab-wrapper .accordion-title {
  border-bottom-width: 1px; }

.promo-listing-2.tab-wrapper .accordion-content {
  border: 0; }

.row.signposts-2 {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: left;
      justify-content: left;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-top: 1.875rem; }
  .row.signposts-2:before, .row.signposts-2:after {
    display: none !important; }
  @media print, screen and (min-width: 64em) {
    .row.signposts-2 {
      margin-top: 3.75rem; } }
  .row.signposts-2 .signpost {
    -ms-flex-positive: 1;
        flex-grow: 1;
    -ms-flex-negative: 1;
        flex-shrink: 1;
    -ms-flex-preferred-size: 50%;
        flex-basis: 50%;
    width: 50%;
    color: #fefefe;
    margin-bottom: 1.25rem;
    padding-left: 0.625rem;
    padding-right: 0.625rem; }
    @media print, screen and (min-width: 40em) {
      .row.signposts-2 .signpost {
        max-width: 33.3333%;
        -ms-flex-preferred-size: 33.3333%;
            flex-basis: 33.3333%;
        padding-left: 0.9375rem;
        padding-right: 0.9375rem; }
        body.home .row.signposts-2 .signpost {
          max-width: 25%;
          -ms-flex-preferred-size: 25%;
              flex-basis: 25%; } }
    @media print, screen and (min-width: 64em) {
      .row.signposts-2 .signpost {
        max-width: 20%; }
        body.home .row.signposts-2 .signpost {
          max-width: 25%; }
          body.home .row.signposts-2 .signpost h3 {
            font-size: 1.125rem;
            max-width: 12.5rem; }
        body.single .row.signposts-2 .signpost {
          max-width: 20%; }
        body[data-slug="solutions"] .row.signposts-2 .signpost {
          max-width: 33.3333%; }
          body[data-slug="solutions"] .row.signposts-2 .signpost a,
          body[data-slug="solutions"] .row.signposts-2 .signpost span.no-link {
            display: -ms-flexbox;
            display: flex;
            -ms-flex-direction: row;
                flex-direction: row;
            -ms-flex-align: center;
                align-items: center; }
            body[data-slug="solutions"] .row.signposts-2 .signpost a img,
            body[data-slug="solutions"] .row.signposts-2 .signpost span.no-link img {
              margin-right: 1.25rem; }
            body[data-slug="solutions"] .row.signposts-2 .signpost a h3,
            body[data-slug="solutions"] .row.signposts-2 .signpost span.no-link h3 {
              -ms-flex: 1 1 auto;
                  flex: 1 1 auto; }
        body[data-slug*="support"] .row.signposts-2 .signpost {
          max-width: 33.3333%; }
          body[data-slug*="support"] .row.signposts-2 .signpost a,
          body[data-slug*="support"] .row.signposts-2 .signpost span.no-link {
            display: -ms-flexbox;
            display: flex;
            -ms-flex-direction: row;
                flex-direction: row;
            -ms-flex-align: center;
                align-items: center; }
            body[data-slug*="support"] .row.signposts-2 .signpost a img,
            body[data-slug*="support"] .row.signposts-2 .signpost span.no-link img {
              margin-right: 1.25rem; }
            body[data-slug*="support"] .row.signposts-2 .signpost a h3,
            body[data-slug*="support"] .row.signposts-2 .signpost span.no-link h3 {
              -ms-flex: 1 1 auto;
                  flex: 1 1 auto; } }
    .row.signposts-2 .signpost img {
      margin-bottom: 0.625rem;
      max-width: 5rem;
      max-height: 90px; }
      @media print, screen and (min-width: 64em) {
        .row.signposts-2 .signpost img {
          margin-bottom: 1.25rem;
          max-width: 7.5rem; } }
    .row.signposts-2 .signpost h3 {
      margin-bottom: 0.625rem;
      font-size: 0.875rem;
      font-weight: 700;
      color: #fbe200; }
      @media print, screen and (min-width: 40em) {
        .row.signposts-2 .signpost h3 {
          font-size: 1rem; } }
    .row.signposts-2 .signpost p {
      font-size: 0.875rem; }
  .row.signposts-2 a {
    color: #fbe200;
    display: block; }
    .row.signposts-2 a h3:after {
      white-space: nowrap;
      content: "";
      display: inline-block;
      position: relative;
      top: -0.125rem;
      right: auto;
      margin-left: -1.25rem;
      margin-top: auto;
      border: 2px solid transparent;
      border-right-color: #fbe200;
      border-top-color: #fbe200;
      width: 0.625rem;
      height: 0.625rem;
      -ms-transform: rotate(45deg) translate(20px, -18px);
          transform: rotate(45deg) translate(20px, -18px);
      vertical-align: baseline; }
      @media screen and (max-width: 39.99875em) {
        .row.signposts-2 a h3:after {
          margin-left: -1.5625rem;
          top: -0.0625rem;
          -ms-transform: rotate(45deg) translate(20px, -18px) scale(0.8);
              transform: rotate(45deg) translate(20px, -18px) scale(0.8); } }
    .row.signposts-2 a p {
      color: #fff; }
  @media print, screen and (min-width: 64em) {
    .row.signposts-2.cols-3 .signpost {
      max-width: 33.3333%; }
    .row.signposts-2.cols-4 .signpost {
      max-width: 25%; }
    .row.signposts-2.cols-5 .signpost {
      max-width: 20%; } }

section.split {
  padding: 0; }
  section.split .row {
    max-width: none;
    margin-right: auto;
    margin-left: auto;
    position: relative; }
    section.split .row::before, section.split .row::after {
      display: table;
      content: ' ';
      -ms-flex-preferred-size: 0;
          flex-basis: 0;
      -ms-flex-order: 1;
          order: 1; }
    section.split .row::after {
      clear: both; }
    @media print, screen and (min-width: 40em) {
      section.split .row {
        display: -ms-flexbox;
        display: flex; }
        section.split .row:before, section.split .row:after {
          display: none; } }
  @media print, screen and (min-width: 40em) {
    section.split.reverse .row {
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse; } }
  section.split .content {
    width: 100%;
    float: left;
    padding-right: 0.625rem;
    padding-left: 0.625rem; }
    @media print, screen and (min-width: 40em) {
      section.split .content {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem; } }
    section.split .content, section.split .content:last-child:not(:first-child) {
      float: left;
      clear: none; }
    section.split .content:last-child:not(:first-child) {
      float: right; }
    @media print, screen and (min-width: 40em) {
      section.split .content {
        -ms-flex: 1 1 50%;
            flex: 1 1 50%;
        width: 50%;
        min-height: 30vw; } }
  section.split.text .content {
    padding-top: 1.25rem;
    padding-bottom: 1.25rem; }
    @media print, screen and (min-width: 40em) {
      section.split.text .content {
        padding-top: 5rem;
        padding-bottom: 5rem; } }
    @media print, screen and (min-width: 64em) {
      section.split.text .content .text {
        /*max-width: rem-calc(400);*/
        max-width: 100%; } }
    section.split.text .content a[href^="tel"] {
      display: block;
      font-weight: 500;
      font-size: 1.125rem; }
      @media print, screen and (min-width: 40em) {
        section.split.text .content a[href^="tel"] {
          font-size: 1.625rem; } }
    @media print, screen and (min-width: 64em) {
      section.split.text .content .info {
        display: -ms-flexbox;
        display: flex;
        -ms-flex-direction: row;
            flex-direction: row;
        -ms-flex-pack: start;
            justify-content: flex-start;
        -ms-flex-line-pack: end;
            align-content: flex-end;
        -ms-flex-align: end;
            align-items: flex-end; }
        section.split.text .content .info > .text {
          max-width: 15.625rem;
          -ms-flex: 1 1 15.625rem;
              flex: 1 1 15.625rem; }
        section.split.text .content .info > .link {
          -ms-flex: 1 1 0px;
              flex: 1 1 0; } }
  section.split.signposts {
    background: #fefefe; }
    @media print, screen and (min-width: 40em) {
      .intro + section.split.signposts .image {
        -ms-flex-order: 1;
            order: 1; }
      .intro + section.split.signposts .content {
        -ms-flex-order: 2;
            order: 2; } }
    @media print, screen and (min-width: 64em) {
      .intro + section.split.signposts {
        margin-top: -1.25rem; } }
    section.split.signposts .content {
      padding: 0;
      display: -ms-flexbox;
      display: flex; }
      section.split.signposts .content ul.signposts {
        list-style: none;
        padding: 0;
        margin: 0;
        border-top: 1px solid #8a8a8a;
        -ms-flex: 1 1 0px;
            flex: 1 1 0; }
        @media print, screen and (min-width: 40em) {
          section.split.signposts .content ul.signposts {
            display: -ms-flexbox;
            display: flex;
            -ms-flex-direction: column;
                flex-direction: column;
            -ms-flex-pack: stretch;
                justify-content: stretch;
            border-top: 0; } }
        section.split.signposts .content ul.signposts li {
          border-bottom: 1px solid #8a8a8a;
          -ms-flex: 1 1 0px;
              flex: 1 1 0;
          display: -ms-flexbox;
          display: flex;
          -ms-flex-align: center;
              align-items: center;
          -ms-flex-pack: stretch;
              justify-content: stretch; }
          section.split.signposts .content ul.signposts li:last-child {
            border-bottom: 0; }
          section.split.signposts .content ul.signposts li a {
            -ms-flex: 1 1 0px;
                flex: 1 1 0;
            color: #0a0a0a;
            display: block;
            padding-top: 1.875rem;
            padding-bottom: 1.875rem;
            padding-left: 0.625rem;
            padding-right: 0.625rem;
            font-size: 1.125rem; }
            @media print, screen and (min-width: 40em) {
              section.split.signposts .content ul.signposts li a {
                padding-left: 0.9375rem;
                padding-right: 0.9375rem;
                font-size: 1.625rem; } }
            section.split.signposts .content ul.signposts li a:hover {
              color: #6800d2; }
            section.split.signposts .content ul.signposts li a span:after {
              white-space: nowrap;
              content: "";
              display: inline-block;
              position: relative;
              top: -0.25rem;
              right: auto;
              margin-left: -1.25rem;
              margin-top: auto;
              border: 2px solid transparent;
              border-right-color: #6800d2;
              border-top-color: #6800d2;
              width: 0.75rem;
              height: 0.75rem;
              -ms-transform: rotate(45deg) translate(20px, -18px);
                  transform: rotate(45deg) translate(20px, -18px);
              vertical-align: baseline; }
              @media screen and (max-width: 39.99875em) {
                section.split.signposts .content ul.signposts li a span:after {
                  margin-left: -1.5625rem;
                  top: -0.0625rem;
                  -ms-transform: rotate(45deg) translate(20px, -18px) scale(0.8);
                      transform: rotate(45deg) translate(20px, -18px) scale(0.8); } }
  section.split .image {
    width: 100%;
    float: left;
    padding-right: 0;
    padding-left: 0; }
    section.split .image, section.split .image:last-child:not(:first-child) {
      float: left;
      clear: none; }
    section.split .image:last-child:not(:first-child) {
      float: right; }
    @media print, screen and (min-width: 40em) {
      section.split .image {
        -ms-flex: 1 1 auto;
            flex: 1 1 auto;
        width: 50%;
        float: none !important;
        position: relative;
        overflow: hidden; }
        section.split .image img {
          height: auto;
          min-height: 100%;
          min-width: 100%;
          width: auto;
          max-width: none;
          position: absolute;
          left: 50%;
          top: 50%;
          -ms-transform: translate(-50%, -50%);
              transform: translate(-50%, -50%); } }

section.highlight-panels {
  padding: 0; }
  section.highlight-panels .bg-image {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
        flex-direction: column;
    -ms-flex-pack: start;
        justify-content: flex-start;
    position: relative !important;
    background-image: url(//www.telsis.com/wp-content/themes/gamma/dist/assets/css/../images/bg-dots.png), linear-gradient(80deg, #6800d2 60%, #30164a 100%);
    background-repeat: no-repeat;
    background-size: auto 100%;
    background-position: right 0;
    padding-top: 1.25rem;
    padding-bottom: 1.25rem; }
    @media print, screen and (min-width: 64em) {
      section.highlight-panels .bg-image {
        padding-top: 5rem;
        padding-bottom: 5rem; } }
  section.highlight-panels .highlight-columns {
    width: 100%;
    float: left;
    padding-right: 0.625rem;
    padding-left: 0.625rem;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
        flex-direction: column;
    list-style-type: none;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    margin: 0;
    padding: 0; }
    @media print, screen and (min-width: 40em) {
      section.highlight-panels .highlight-columns {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem; } }
    section.highlight-panels .highlight-columns, section.highlight-panels .highlight-columns:last-child:not(:first-child) {
      float: left;
      clear: none; }
    section.highlight-panels .highlight-columns:last-child:not(:first-child) {
      float: right; }
    @media print, screen and (min-width: 40em) {
      section.highlight-panels .highlight-columns {
        -ms-flex-direction: row;
            flex-direction: row; } }
    section.highlight-panels .highlight-columns .highlight-panel {
      display: -ms-flexbox;
      display: flex;
      -ms-flex-direction: column;
          flex-direction: column;
      -ms-flex-positive: 1;
          flex-grow: 1;
      -ms-flex-negative: 1;
          flex-shrink: 1;
      -ms-flex-preferred-size: 100%;
          flex-basis: 100%;
      margin-bottom: 1.875rem; }
      @media print, screen and (min-width: 40em) {
        section.highlight-panels .highlight-columns .highlight-panel {
          -ms-flex-preferred-size: 50%;
              flex-basis: 50%;
          padding-right: 1.25rem; } }
      @media print, screen and (min-width: 64em) {
        section.highlight-panels .highlight-columns .highlight-panel {
          -ms-flex-preferred-size: 25%;
              flex-basis: 25%;
          margin-bottom: 0;
          padding-right: 1.875rem; } }
      section.highlight-panels .highlight-columns .highlight-panel .label {
        color: #fbe200;
        margin-bottom: 1.25rem; }
      section.highlight-panels .highlight-columns .highlight-panel .price, section.highlight-panels .highlight-columns .highlight-panel .chngecolor, section.highlight-panels .highlight-columns .highlight-panel .time {
        color: #fefefe; }
      section.highlight-panels .highlight-columns .highlight-panel a.list-link {
        color: #fefefe;
        display: block;
        font-size: 1.3125rem;
        line-height: 1.4em;
        position: relative; }
        section.highlight-panels .highlight-columns .highlight-panel a.list-link:after {
          border: 1px solid transparent;
          border-bottom-color: #fefefe;
          border-right-color: #fefefe;
          content: '';
          display: inline-block;
          height: 0.625rem;
          margin-left: 0.5rem;
          width: 0.625rem;
          -ms-transform: rotate(-45deg);
              transform: rotate(-45deg); }
      section.highlight-panels .highlight-columns .highlight-panel .highlight-download-file {
        display: -ms-flexbox;
        display: flex;
        -ms-flex-direction: column;
            flex-direction: column; }
        @media print, screen and (min-width: 40em) {
          section.highlight-panels .highlight-columns .highlight-panel .highlight-download-file {
            -ms-flex-direction: row;
                flex-direction: row; } }
        section.highlight-panels .highlight-columns .highlight-panel .highlight-download-file img {
          max-width: 5.625rem;
          width: 100%; }
        section.highlight-panels .highlight-columns .highlight-panel .highlight-download-file .download-caption {
          color: #fefefe;
          -ms-flex: 1 1 50%;
              flex: 1 1 50%;
          margin-left: 1.25rem; }
          @media print, screen and (min-width: 40em) {
            section.highlight-panels .highlight-columns .highlight-panel .highlight-download-file .download-caption {
              -ms-flex-preferred-size: 100%;
                  flex-basis: 100%; } }
      section.highlight-panels .highlight-columns .highlight-panel .highlight-cta {
        margin-top: auto; }
        section.highlight-panels .highlight-columns .highlight-panel .highlight-cta .cta {
          background-color: #fefefe;
          color: #6800d2;
          margin-top: 2.5rem; }
          section.highlight-panels .highlight-columns .highlight-panel .highlight-cta .cta:hover {
            background-color: #fbe200; }

section.case-studies .row {
  max-width: none;
  margin-right: auto;
  margin-left: auto;
  position: relative; }
  section.case-studies .row::before, section.case-studies .row::after {
    display: table;
    content: ' ';
    -ms-flex-preferred-size: 0;
        flex-basis: 0;
    -ms-flex-order: 1;
        order: 1; }
  section.case-studies .row::after {
    clear: both; }
  section.case-studies .row .content {
    width: 100%;
    float: left;
    padding-right: 0.625rem;
    padding-left: 0.625rem; }
    @media print, screen and (min-width: 40em) {
      section.case-studies .row .content {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem; } }
    section.case-studies .row .content, section.case-studies .row .content:last-child:not(:first-child) {
      float: left;
      clear: none; }
    section.case-studies .row .content:last-child:not(:first-child) {
      float: right; }
    @media print, screen and (min-width: 40em) {
      section.case-studies .row .content {
        width: 50%; } }
    @media print, screen and (min-width: 64em) {
      section.case-studies .row .content {
        width: 41.66667%; } }
    section.case-studies .row .content h2 {
      margin-bottom: 1.25rem; }

section.case-studies .link {
  margin: 1.25rem 0;
  text-align: center; }

section.case-studies .logos.carousel {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -ms-flex-pack: start;
      justify-content: flex-start; }
  section.case-studies .logos.carousel.slick-slider {
    padding-left: 4.375rem;
    padding-right: 4.375rem; }

section.case-studies.gold {
  background: #f2f2f2; }

.row.logos,
.row > .logos {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -ms-flex-pack: start;
      justify-content: flex-start;
  overflow-x: hidden; }
  body.page-template-page-partners .row.logos, body.page-template-page-partners
  .row > .logos {
    padding-top: 0;
    padding-bottom: 0; }
  .row.logos:before, .row.logos:after,
  .row > .logos:before,
  .row > .logos:after {
    display: none !important; }
  .row.logos .slick-track,
  .row > .logos .slick-track {
    display: inline-block; }
    .row.logos .slick-track:before, .row.logos .slick-track:after,
    .row > .logos .slick-track:before,
    .row > .logos .slick-track:after {
      display: none !important; }
    .row.logos .slick-track .logo,
    .row > .logos .slick-track .logo {
      display: inline-block !important;
      width: auto; }
      @media print, screen and (min-width: 40em) {
        .row.logos .slick-track .logo img,
        .row > .logos .slick-track .logo img {
          padding-right: 3.125rem; } }
      @media print, screen and (min-width: 64em) {
        .row.logos .slick-track .logo img,
        .row > .logos .slick-track .logo img {
          padding-right: 5.625rem; } }
  .row.logos .logo,
  .row > .logos .logo {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
        align-items: center;
    max-width: 50%;
    -ms-flex-preferred-size: 50%;
        flex-basis: 50%;
    -ms-flex-positive: 1;
        flex-grow: 1;
    padding-left: 0.625rem;
    padding-right: 0.625rem;
    width: 100%; }
    @media print, screen and (min-width: 40em) {
      .row.logos .logo,
      .row > .logos .logo {
        -ms-flex-preferred-size: 25%;
            flex-basis: 25%;
        max-width: 25%;
        padding-left: 0.9375rem;
        padding-right: 0.9375rem; } }
    @media print, screen and (min-width: 64em) {
      .row.logos .logo,
      .row > .logos .logo {
        -ms-flex-preferred-size: 20%;
            flex-basis: 20%;
        max-width: 20%; } }
    .row.logos .logo a,
    .row > .logos .logo a {
      display: block;
      padding: 0.625rem 0 2.5rem;
      max-width: 7.1875rem;
      margin: 0 auto; }
      @media print, screen and (min-width: 40em) {
        .row.logos .logo a,
        .row > .logos .logo a {
          max-width: 9.375rem; } }

section.news {
  padding: 0;
  overflow: hidden;
  background: #fefefe; }
  section.news .row {
    overflow: hidden; }
    section.news .row:before, section.news .row:after {
      display: none; }
    @media print, screen and (min-width: 40em) {
      section.news .row {
        display: -ms-flexbox;
        display: flex; } }
    section.news .row .content {
      -ms-flex: 1 1 50%;
          flex: 1 1 50%;
      -ms-flex-preferred-size: 50%;
          flex-basis: 50%;
      max-width: 27.5rem; }
      .post-type-archive-event section.news .row .content {
        display: -ms-flexbox;
        display: flex;
        -ms-flex-direction: column;
            flex-direction: column;
        -ms-flex: 1 1 100%;
            flex: 1 1 100%;
        -ms-flex-preferred-size: 100%;
            flex-basis: 100%; }
        @media print, screen and (min-width: 64em) {
          .post-type-archive-event section.news .row .content {
            -ms-flex-order: 1;
                order: 1;
            -ms-flex-preferred-size: 50%;
                flex-basis: 50%; } }
    section.news .row .title,
    section.news .row .search {
      width: 100%;
      float: left;
      padding-right: 0.625rem;
      padding-left: 0.625rem;
      padding-top: 1.25rem; }
      @media print, screen and (min-width: 40em) {
        section.news .row .title,
        section.news .row .search {
          padding-right: 0.9375rem;
          padding-left: 0.9375rem; } }
      section.news .row .title, section.news .row .title:last-child:not(:first-child),
      section.news .row .search,
      section.news .row .search:last-child:not(:first-child) {
        float: left;
        clear: none; }
      section.news .row .title:last-child:not(:first-child),
      section.news .row .search:last-child:not(:first-child) {
        float: right; }
      @media print, screen and (min-width: 64em) {
        section.news .row .title,
        section.news .row .search {
          padding-top: 5rem;
          padding-bottom: 2.5rem; } }
    @media print, screen and (min-width: 64em) {
      section.news .row.body-push + .row.body-push .title, section.news .row.slick-dots + .row.body-push .title, section.news .top-bar ul > li.mega-menu-grid > ul.row.mega-sub-menu + .row.body-push .title, .top-bar section.news ul > li.mega-menu-grid > ul.row.mega-sub-menu + .row.body-push .title, section.news .top-bar #mega-menu-wrap-top-bar-r #mega-menu-top-bar-r > li.mega-menu-grid > ul.row.mega-sub-menu + .row.body-push .title, .top-bar #mega-menu-wrap-top-bar-r section.news #mega-menu-top-bar-r > li.mega-menu-grid > ul.row.mega-sub-menu + .row.body-push .title, section.news .dropdown.menu > li > .row.is-dropdown-submenu + .row.body-push .title, section.news body.single-case_study section.tabbed-content .row.tabs-wrapper + .row.body-push .title, body.single-case_study section.tabbed-content section.news .row.tabs-wrapper + .row.body-push .title, section.news body.single-case_study section.tabbed-content .row.tabs-content + .row.body-push .title, body.single-case_study section.tabbed-content section.news .row.tabs-content + .row.body-push .title, section.news .row.body-push + .row.slick-dots .title, section.news .row.slick-dots + .row.slick-dots .title, section.news .top-bar ul > li.mega-menu-grid > ul.row.mega-sub-menu + .row.slick-dots .title, .top-bar section.news ul > li.mega-menu-grid > ul.row.mega-sub-menu + .row.slick-dots .title, section.news .top-bar #mega-menu-wrap-top-bar-r #mega-menu-top-bar-r > li.mega-menu-grid > ul.row.mega-sub-menu + .row.slick-dots .title, .top-bar #mega-menu-wrap-top-bar-r section.news #mega-menu-top-bar-r > li.mega-menu-grid > ul.row.mega-sub-menu + .row.slick-dots .title, section.news .dropdown.menu > li > .row.is-dropdown-submenu + .row.slick-dots .title, section.news body.single-case_study section.tabbed-content .row.tabs-wrapper + .row.slick-dots .title, body.single-case_study section.tabbed-content section.news .row.tabs-wrapper + .row.slick-dots .title, section.news body.single-case_study section.tabbed-content .row.tabs-content + .row.slick-dots .title, body.single-case_study section.tabbed-content section.news .row.tabs-content + .row.slick-dots .title, section.news .top-bar ul > li.mega-menu-grid > .row.body-push + ul.row.mega-sub-menu .title, .top-bar section.news ul > li.mega-menu-grid > .row.body-push + ul.row.mega-sub-menu .title, section.news .top-bar ul > li.mega-menu-grid > .row.slick-dots + ul.row.mega-sub-menu .title, .top-bar section.news ul > li.mega-menu-grid > .row.slick-dots + ul.row.mega-sub-menu .title, section.news .top-bar ul > li.mega-menu-grid > ul.row.mega-sub-menu + ul.row.mega-sub-menu .title, .top-bar section.news ul > li.mega-menu-grid > ul.row.mega-sub-menu + ul.row.mega-sub-menu .title, section.news .top-bar ul.dropdown.menu > li.mega-menu-grid > .row.is-dropdown-submenu + ul.row.mega-sub-menu .title, .top-bar section.news ul.dropdown.menu > li.mega-menu-grid > .row.is-dropdown-submenu + ul.row.mega-sub-menu .title, section.news body.single-case_study section.tabbed-content .top-bar ul > li.mega-menu-grid > .row.tabs-wrapper + ul.row.mega-sub-menu .title, .top-bar section.news body.single-case_study section.tabbed-content ul > li.mega-menu-grid > .row.tabs-wrapper + ul.row.mega-sub-menu .title, body.single-case_study section.tabbed-content section.news .top-bar ul > li.mega-menu-grid > .row.tabs-wrapper + ul.row.mega-sub-menu .title, .top-bar body.single-case_study section.tabbed-content section.news ul > li.mega-menu-grid > .row.tabs-wrapper + ul.row.mega-sub-menu .title, section.news body.single-case_study section.tabbed-content .top-bar ul > li.mega-menu-grid > .row.tabs-content + ul.row.mega-sub-menu .title, .top-bar section.news body.single-case_study section.tabbed-content ul > li.mega-menu-grid > .row.tabs-content + ul.row.mega-sub-menu .title, body.single-case_study section.tabbed-content section.news .top-bar ul > li.mega-menu-grid > .row.tabs-content + ul.row.mega-sub-menu .title, .top-bar body.single-case_study section.tabbed-content section.news ul > li.mega-menu-grid > .row.tabs-content + ul.row.mega-sub-menu .title, section.news .top-bar #mega-menu-wrap-top-bar-r #mega-menu-top-bar-r > li.mega-menu-grid > .row.body-push + ul.row.mega-sub-menu .title, .top-bar #mega-menu-wrap-top-bar-r section.news #mega-menu-top-bar-r > li.mega-menu-grid > .row.body-push + ul.row.mega-sub-menu .title, section.news .top-bar #mega-menu-wrap-top-bar-r #mega-menu-top-bar-r > li.mega-menu-grid > .row.slick-dots + ul.row.mega-sub-menu .title, .top-bar #mega-menu-wrap-top-bar-r section.news #mega-menu-top-bar-r > li.mega-menu-grid > .row.slick-dots + ul.row.mega-sub-menu .title, .top-bar section.news #mega-menu-wrap-top-bar-r ul#mega-menu-top-bar-r > li.mega-menu-grid > ul.row.mega-sub-menu + ul.row.mega-sub-menu .title, section.news .top-bar #mega-menu-wrap-top-bar-r #mega-menu-top-bar-r > li.mega-menu-grid > ul.row.mega-sub-menu + ul.row.mega-sub-menu .title, .top-bar #mega-menu-wrap-top-bar-r section.news #mega-menu-top-bar-r > li.mega-menu-grid > ul.row.mega-sub-menu + ul.row.mega-sub-menu .title, section.news .top-bar #mega-menu-wrap-top-bar-r #mega-menu-top-bar-r.dropdown.menu > li.mega-menu-grid > .row.is-dropdown-submenu + ul.row.mega-sub-menu .title, .top-bar #mega-menu-wrap-top-bar-r section.news #mega-menu-top-bar-r.dropdown.menu > li.mega-menu-grid > .row.is-dropdown-submenu + ul.row.mega-sub-menu .title, section.news body.single-case_study section.tabbed-content .top-bar #mega-menu-wrap-top-bar-r #mega-menu-top-bar-r > li.mega-menu-grid > .row.tabs-wrapper + ul.row.mega-sub-menu .title, .top-bar #mega-menu-wrap-top-bar-r section.news body.single-case_study section.tabbed-content #mega-menu-top-bar-r > li.mega-menu-grid > .row.tabs-wrapper + ul.row.mega-sub-menu .title, body.single-case_study section.tabbed-content section.news .top-bar #mega-menu-wrap-top-bar-r #mega-menu-top-bar-r > li.mega-menu-grid > .row.tabs-wrapper + ul.row.mega-sub-menu .title, .top-bar #mega-menu-wrap-top-bar-r body.single-case_study section.tabbed-content section.news #mega-menu-top-bar-r > li.mega-menu-grid > .row.tabs-wrapper + ul.row.mega-sub-menu .title, section.news body.single-case_study section.tabbed-content .top-bar #mega-menu-wrap-top-bar-r #mega-menu-top-bar-r > li.mega-menu-grid > .row.tabs-content + ul.row.mega-sub-menu .title, .top-bar #mega-menu-wrap-top-bar-r section.news body.single-case_study section.tabbed-content #mega-menu-top-bar-r > li.mega-menu-grid > .row.tabs-content + ul.row.mega-sub-menu .title, body.single-case_study section.tabbed-content section.news .top-bar #mega-menu-wrap-top-bar-r #mega-menu-top-bar-r > li.mega-menu-grid > .row.tabs-content + ul.row.mega-sub-menu .title, .top-bar #mega-menu-wrap-top-bar-r body.single-case_study section.tabbed-content section.news #mega-menu-top-bar-r > li.mega-menu-grid > .row.tabs-content + ul.row.mega-sub-menu .title, section.news .dropdown.menu > li > .row.body-push + .row.is-dropdown-submenu .title, section.news .dropdown.menu > li > .row.slick-dots + .row.is-dropdown-submenu .title, section.news .top-bar ul.dropdown.menu > li.mega-menu-grid > ul.row.mega-sub-menu + .row.is-dropdown-submenu .title, .top-bar section.news ul.dropdown.menu > li.mega-menu-grid > ul.row.mega-sub-menu + .row.is-dropdown-submenu .title, section.news .top-bar #mega-menu-wrap-top-bar-r .dropdown.menu#mega-menu-top-bar-r > li.mega-menu-grid > ul.row.mega-sub-menu + .row.is-dropdown-submenu .title, .top-bar #mega-menu-wrap-top-bar-r section.news .dropdown.menu#mega-menu-top-bar-r > li.mega-menu-grid > ul.row.mega-sub-menu + .row.is-dropdown-submenu .title, section.news .dropdown.menu > li > .row.is-dropdown-submenu + .row.is-dropdown-submenu .title, section.news body.single-case_study section.tabbed-content .dropdown.menu > li > .row.tabs-wrapper + .row.is-dropdown-submenu .title, body.single-case_study section.tabbed-content section.news .dropdown.menu > li > .row.tabs-wrapper + .row.is-dropdown-submenu .title, section.news body.single-case_study section.tabbed-content .dropdown.menu > li > .row.tabs-content + .row.is-dropdown-submenu .title, body.single-case_study section.tabbed-content section.news .dropdown.menu > li > .row.tabs-content + .row.is-dropdown-submenu .title, section.news body.single-case_study section.tabbed-content .row.body-push + .row.tabs-wrapper .title, body.single-case_study section.tabbed-content section.news .row.body-push + .row.tabs-wrapper .title, section.news body.single-case_study section.tabbed-content .row.slick-dots + .row.tabs-wrapper .title, body.single-case_study section.tabbed-content section.news .row.slick-dots + .row.tabs-wrapper .title, section.news .top-bar body.single-case_study section.tabbed-content ul > li.mega-menu-grid > ul.row.mega-sub-menu + .row.tabs-wrapper .title, body.single-case_study section.tabbed-content section.news .top-bar ul > li.mega-menu-grid > ul.row.mega-sub-menu + .row.tabs-wrapper .title, .top-bar section.news body.single-case_study section.tabbed-content ul > li.mega-menu-grid > ul.row.mega-sub-menu + .row.tabs-wrapper .title, body.single-case_study section.tabbed-content .top-bar section.news ul > li.mega-menu-grid > ul.row.mega-sub-menu + .row.tabs-wrapper .title, section.news .top-bar #mega-menu-wrap-top-bar-r body.single-case_study section.tabbed-content #mega-menu-top-bar-r > li.mega-menu-grid > ul.row.mega-sub-menu + .row.tabs-wrapper .title, body.single-case_study section.tabbed-content section.news .top-bar #mega-menu-wrap-top-bar-r #mega-menu-top-bar-r > li.mega-menu-grid > ul.row.mega-sub-menu + .row.tabs-wrapper .title, .top-bar #mega-menu-wrap-top-bar-r section.news body.single-case_study section.tabbed-content #mega-menu-top-bar-r > li.mega-menu-grid > ul.row.mega-sub-menu + .row.tabs-wrapper .title, body.single-case_study section.tabbed-content .top-bar #mega-menu-wrap-top-bar-r section.news #mega-menu-top-bar-r > li.mega-menu-grid > ul.row.mega-sub-menu + .row.tabs-wrapper .title, section.news body.single-case_study section.tabbed-content .dropdown.menu > li > .row.is-dropdown-submenu + .row.tabs-wrapper .title, body.single-case_study section.tabbed-content section.news .dropdown.menu > li > .row.is-dropdown-submenu + .row.tabs-wrapper .title, section.news body.single-case_study section.tabbed-content .row.tabs-wrapper + .row.tabs-wrapper .title, body.single-case_study section.tabbed-content section.news .row.tabs-wrapper + .row.tabs-wrapper .title, section.news body.single-case_study section.tabbed-content .row.tabs-content + .row.tabs-wrapper .title, body.single-case_study section.tabbed-content section.news .row.tabs-content + .row.tabs-wrapper .title, section.news body.single-case_study section.tabbed-content .row.body-push + .row.tabs-content .title, body.single-case_study section.tabbed-content section.news .row.body-push + .row.tabs-content .title, section.news body.single-case_study section.tabbed-content .row.slick-dots + .row.tabs-content .title, body.single-case_study section.tabbed-content section.news .row.slick-dots + .row.tabs-content .title, section.news .top-bar body.single-case_study section.tabbed-content ul > li.mega-menu-grid > ul.row.mega-sub-menu + .row.tabs-content .title, body.single-case_study section.tabbed-content section.news .top-bar ul > li.mega-menu-grid > ul.row.mega-sub-menu + .row.tabs-content .title, .top-bar section.news body.single-case_study section.tabbed-content ul > li.mega-menu-grid > ul.row.mega-sub-menu + .row.tabs-content .title, body.single-case_study section.tabbed-content .top-bar section.news ul > li.mega-menu-grid > ul.row.mega-sub-menu + .row.tabs-content .title, section.news .top-bar #mega-menu-wrap-top-bar-r body.single-case_study section.tabbed-content #mega-menu-top-bar-r > li.mega-menu-grid > ul.row.mega-sub-menu + .row.tabs-content .title, body.single-case_study section.tabbed-content section.news .top-bar #mega-menu-wrap-top-bar-r #mega-menu-top-bar-r > li.mega-menu-grid > ul.row.mega-sub-menu + .row.tabs-content .title, .top-bar #mega-menu-wrap-top-bar-r section.news body.single-case_study section.tabbed-content #mega-menu-top-bar-r > li.mega-menu-grid > ul.row.mega-sub-menu + .row.tabs-content .title, body.single-case_study section.tabbed-content .top-bar #mega-menu-wrap-top-bar-r section.news #mega-menu-top-bar-r > li.mega-menu-grid > ul.row.mega-sub-menu + .row.tabs-content .title, section.news body.single-case_study section.tabbed-content .dropdown.menu > li > .row.is-dropdown-submenu + .row.tabs-content .title, body.single-case_study section.tabbed-content section.news .dropdown.menu > li > .row.is-dropdown-submenu + .row.tabs-content .title, section.news body.single-case_study section.tabbed-content .row.tabs-wrapper + .row.tabs-content .title, body.single-case_study section.tabbed-content section.news .row.tabs-wrapper + .row.tabs-content .title, section.news body.single-case_study section.tabbed-content .row.tabs-content + .row.tabs-content .title, body.single-case_study section.tabbed-content section.news .row.tabs-content + .row.tabs-content .title {
        padding-top: 1.25rem; } }
    section.news .row .news,
    section.news .row .insights {
      width: 100%;
      float: left;
      padding-right: 0;
      padding-left: 0; }
      section.news .row .news, section.news .row .news:last-child:not(:first-child),
      section.news .row .insights,
      section.news .row .insights:last-child:not(:first-child) {
        float: left;
        clear: none; }
      section.news .row .news:last-child:not(:first-child),
      section.news .row .insights:last-child:not(:first-child) {
        float: right; }
      @media print, screen and (min-width: 40em) {
        section.news .row .news,
        section.news .row .insights {
          width: 50%;
          display: -ms-flexbox;
          display: flex;
          -ms-flex-direction: column;
              flex-direction: column; } }
    section.news .row .article {
      position: relative;
      background-color: #f2f2f2;
      -ms-flex: 1 0 0px;
          flex: 1 0 0;
      display: -ms-flexbox;
      display: flex;
      color: #0a0a0a;
      -ms-flex-pack: stretch;
          justify-content: stretch;
      min-height: 60vw; }
      @media print, screen and (min-width: 40em) {
        section.news .row .article {
          min-height: 30vw;
          -ms-flex: 1 0 auto;
              flex: 1 0 auto; } }
      section.news .row .article .bg-image {
        background-color: #ccc;
        background-size: cover;
        background-repeat: no-repeat;
        position: relative;
        background-position: center;
        display: -ms-flexbox;
        display: flex;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto;
        width: 100%; }
        section.news .row .article .bg-image:before {
          content: "";
          display: block;
          width: 100%;
          height: 100%;
          position: absolute;
          top: 0;
          left: 0;
          background: rgba(255, 255, 255, 0.4); }
          @media print, screen and (min-width: 64em) {
            section.news .row .article .bg-image:before {
              background: linear-gradient(to right, rgba(255, 255, 255, 0.65) 0%, rgba(255, 255, 255, 0) 80%); } }
          @media print, screen and (min-width: 64em) {
            .post-type-archive-event section.news .row .article .bg-image:before {
              background: rgba(0, 0, 0, 0.6); } }
        section.news .row .article .bg-image.no-overlay:before {
          display: none; }
        section.news .row .article .bg-image a {
          color: #0a0a0a; }
        section.news .row .article .bg-image p.label {
          color: #6800d2; }
      section.news .row .article a,
      section.news .row .article span.no-link {
        display: -ms-flexbox;
        display: flex;
        -ms-flex-direction: column;
            flex-direction: column;
        -ms-flex-pack: start;
            justify-content: flex-start;
        -ms-flex-align: stretch;
            align-items: stretch;
        -ms-flex: 1 0 100%;
            flex: 1 0 100%;
        position: relative;
        z-index: 2;
        color: #0a0a0a;
        padding-left: 0.625rem;
        padding-right: 0.625rem;
        padding-top: 1.25rem;
        padding-bottom: 1.25rem; }
        @media print, screen and (min-width: 40em) {
          section.news .row .article a,
          section.news .row .article span.no-link {
            padding-left: 0.9375rem;
            padding-right: 0.9375rem; } }
        @media screen and (min-width: 75em) {
          section.news .row .article a,
          section.news .row .article span.no-link {
            padding-top: 5rem;
            padding-bottom: 5rem; } }
        section.news .row .article a .wrapper,
        section.news .row .article span.no-link .wrapper {
          width: 100%; }
        section.news .row .article a .row,
        section.news .row .article span.no-link .row {
          padding-right: 0.625rem !important;
          max-width: 31.25rem;
          width: 100%; }
          @media print, screen and (min-width: 40em) {
            section.news .row .article a .row,
            section.news .row .article span.no-link .row {
              padding-right: 0.9375rem !important; } }
        @media screen and (min-width: 88.75em) {
          section.news .row .article a > h2,
          section.news .row .article a > p,
          section.news .row .article a > .wrapper .text,
          section.news .row .article span.no-link > h2,
          section.news .row .article span.no-link > p,
          section.news .row .article span.no-link > .wrapper .text {
            width: 58.33333%; } }
      section.news .row .article p.label {
        color: #6800d2; }
      section.news .row .article h2 {
        margin-bottom: auto;
        font-size: 1.125rem; }
        @media print, screen and (min-width: 40em) {
          section.news .row .article h2 {
            font-size: 1.625rem; } }
        @media print, screen and (min-width: 64em) {
          section.news .row .article h2 {
            font-size: 1.75rem; } }
        section.news .row .article h2 + p {
          margin-top: 1.25rem; }
      section.news .row .article .wrapper {
        display: -ms-flexbox;
        display: flex;
        -ms-flex-direction: column;
            flex-direction: column;
        margin-bottom: auto; }
        @media print, screen and (min-width: 64em) {
          section.news .row .article .wrapper {
            -ms-flex-direction: row;
                flex-direction: row;
            -ms-flex-pack: justify;
                justify-content: space-between; } }
      section.news .row .article span.button, section.news .row .article .wp-block-button span.wp-block-button__link, .wp-block-button section.news .row .article span.wp-block-button__link {
        margin-top: 1.875rem;
        background: #6800d2;
        color: #fefefe;
        -ms-flex-item-align: start;
            align-self: flex-start; }
        section.news .row .article span.button:hover, section.news .row .article .wp-block-button span.wp-block-button__link:hover, .wp-block-button section.news .row .article span.wp-block-button__link:hover {
          background: #fefefe;
          color: #6800d2; }
      section.news .row .article .icon {
        display: none; }
        .post-type-archive-event section.news .row .article .icon {
          -ms-flex: 1 1 100%;
              flex: 1 1 100%;
          float: none;
          width: 6.25rem; }
          @media print, screen and (min-width: 64em) {
            .post-type-archive-event section.news .row .article .icon {
              -ms-flex-preferred-size: 50%;
                  flex-basis: 50%;
              text-align: right;
              -ms-flex-order: 2;
                  order: 2;
              width: 15rem; } }
          .post-type-archive-event section.news .row .article .icon img {
            float: none; }
        section.news .row .article .icon img {
          max-width: 12.5rem; }
        @media screen and (max-width: 39.99875em) {
          section.news .row .article .icon {
            display: block; } }
        @media screen and (min-width: 75em) {
          section.news .row .article .icon {
            display: block;
            -ms-flex-order: 2;
                order: 2;
            -ms-flex-positive: 1;
                flex-grow: 1;
            text-align: center; } }
      section.news .row .article.white, section.news.blog .row .news .article:nth-child(5n + 1):not(.black), section.news.blog .news .row .article:nth-child(5n + 1):not(.black), section.news.blog .row .news .article:nth-child(5n + 5):not(.black), section.news.blog .news .row .article:nth-child(5n + 5):not(.black) {
        color: #fefefe; }
        section.news .row .article.white a, section.news.blog .row .news .article:nth-child(5n + 1):not(.black) a, section.news.blog .news .row .article:nth-child(5n + 1):not(.black) a, section.news.blog .row .news .article:nth-child(5n + 5):not(.black) a, section.news.blog .news .row .article:nth-child(5n + 5):not(.black) a {
          color: #fefefe; }
        section.news .row .article.white p.label, section.news.blog .row .news .article:nth-child(5n + 1):not(.black) p.label, section.news.blog .news .row .article:nth-child(5n + 1):not(.black) p.label, section.news.blog .row .news .article:nth-child(5n + 5):not(.black) p.label, section.news.blog .news .row .article:nth-child(5n + 5):not(.black) p.label {
          color: #fbe200; }
        section.news .row .article.white span.button, section.news.blog .row .news .article:nth-child(5n + 1):not(.black) span.button, section.news.blog .news .row .article:nth-child(5n + 1):not(.black) span.button, section.news.blog .row .news .article:nth-child(5n + 5):not(.black) span.button, section.news.blog .news .row .article:nth-child(5n + 5):not(.black) span.button, section.news .row .article.white .wp-block-button span.wp-block-button__link, .wp-block-button section.news .row .article.white span.wp-block-button__link, section.news.blog .row .news .article:nth-child(5n + 1):not(.black) .wp-block-button span.wp-block-button__link, .wp-block-button section.news.blog .row .news .article:nth-child(5n + 1):not(.black) span.wp-block-button__link, section.news.blog .news .row .article:nth-child(5n + 1):not(.black) .wp-block-button span.wp-block-button__link, .wp-block-button section.news.blog .news .row .article:nth-child(5n + 1):not(.black) span.wp-block-button__link, section.news.blog .row .news .article:nth-child(5n + 5):not(.black) .wp-block-button span.wp-block-button__link, .wp-block-button section.news.blog .row .news .article:nth-child(5n + 5):not(.black) span.wp-block-button__link, section.news.blog .news .row .article:nth-child(5n + 5):not(.black) .wp-block-button span.wp-block-button__link, .wp-block-button section.news.blog .news .row .article:nth-child(5n + 5):not(.black) span.wp-block-button__link {
          background: #fefefe;
          color: #6800d2; }
          section.news .row .article.white span.button:hover, section.news.blog .row .news .article:nth-child(5n + 1):not(.black) span.button:hover, section.news.blog .news .row .article:nth-child(5n + 1):not(.black) span.button:hover, section.news.blog .row .news .article:nth-child(5n + 5):not(.black) span.button:hover, section.news.blog .news .row .article:nth-child(5n + 5):not(.black) span.button:hover, section.news .row .article.white .wp-block-button span.wp-block-button__link:hover, .wp-block-button section.news .row .article.white span.wp-block-button__link:hover, section.news.blog .row .news .article:nth-child(5n + 1):not(.black) .wp-block-button span.wp-block-button__link:hover, .wp-block-button section.news.blog .row .news .article:nth-child(5n + 1):not(.black) span.wp-block-button__link:hover, section.news.blog .news .row .article:nth-child(5n + 1):not(.black) .wp-block-button span.wp-block-button__link:hover, .wp-block-button section.news.blog .news .row .article:nth-child(5n + 1):not(.black) span.wp-block-button__link:hover, section.news.blog .row .news .article:nth-child(5n + 5):not(.black) .wp-block-button span.wp-block-button__link:hover, .wp-block-button section.news.blog .row .news .article:nth-child(5n + 5):not(.black) span.wp-block-button__link:hover, section.news.blog .news .row .article:nth-child(5n + 5):not(.black) .wp-block-button span.wp-block-button__link:hover, .wp-block-button section.news.blog .news .row .article:nth-child(5n + 5):not(.black) span.wp-block-button__link:hover {
            background: #fbe200; }
        section.news .row .article.white .bg-image:before, section.news.blog .row .news .article:nth-child(5n + 1):not(.black) .bg-image:before, section.news.blog .news .row .article:nth-child(5n + 1):not(.black) .bg-image:before, section.news.blog .row .news .article:nth-child(5n + 5):not(.black) .bg-image:before, section.news.blog .news .row .article:nth-child(5n + 5):not(.black) .bg-image:before {
          background: rgba(0, 0, 0, 0.5); }
          @media print, screen and (min-width: 64em) {
            section.news .row .article.white .bg-image:before, section.news.blog .row .news .article:nth-child(5n + 1):not(.black) .bg-image:before, section.news.blog .news .row .article:nth-child(5n + 1):not(.black) .bg-image:before, section.news.blog .row .news .article:nth-child(5n + 5):not(.black) .bg-image:before, section.news.blog .news .row .article:nth-child(5n + 5):not(.black) .bg-image:before {
              background: linear-gradient(to right, rgba(0, 0, 0, 0.65) 0%, rgba(0, 0, 0, 0) 80%); } }
        section.news .row .article.white .bg-image a, section.news.blog .row .news .article:nth-child(5n + 1):not(.black) .bg-image a, section.news.blog .news .row .article:nth-child(5n + 1):not(.black) .bg-image a, section.news.blog .row .news .article:nth-child(5n + 5):not(.black) .bg-image a, section.news.blog .news .row .article:nth-child(5n + 5):not(.black) .bg-image a {
          color: #fefefe; }
    section.news .row .insights .article a h2 {
      margin-bottom: 1.25rem; }
      @media print, screen and (min-width: 40em) {
        section.news .row .insights .article a h2 {
          font-size: 2.5rem; } }
      @media print, screen and (min-width: 64em) {
        section.news .row .insights .article a h2 {
          margin-bottom: 3.75rem;
          font-size: 4.375rem;
          line-height: 1.1; } }
    @media screen and (min-width: 75em) {
      section.news .row .insights .article a p {
        width: 58.33333%; } }
  @media print, screen and (min-width: 40em) {
    section.news.no-insight .row .news {
      -ms-flex-direction: row;
          flex-direction: row; }
      section.news.no-insight .row .news > div {
        max-width: 50%; } }
  section.news > .link {
    padding: 1.25rem 0;
    text-align: center; }
    @media print, screen and (min-width: 40em) {
      section.news > .link {
        padding: 3.75rem 0; } }
    section.news > .link .button, section.news > .link .wp-block-button .wp-block-button__link, .wp-block-button section.news > .link .wp-block-button__link, section.news > .link section.promo-listing.contact .bg-image p:last-child a, section.promo-listing.contact .bg-image p:last-child section.news > .link a, section.news > .link section.promo-listing-2.contact .bg-image p:last-child a, section.promo-listing-2.contact .bg-image p:last-child section.news > .link a {
      margin: 0; }

section.news.products .news,
section.news.products .images {
  width: 100%;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: row;
      flex-direction: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap; }

section.news.products .news .article {
  -ms-flex: 1 1 100%;
      flex: 1 1 100%; }
  @media print, screen and (min-width: 40em) {
    section.news.products .news .article {
      width: 50%;
      -ms-flex: 1 1 50%;
          flex: 1 1 50%; } }
  section.news.products .news .article h3 {
    margin-top: 0.5rem;
    margin-bottom: 1.25rem;
    font-size: 1.25rem; }
    @media print, screen and (min-width: 40em) {
      section.news.products .news .article h3 {
        font-size: 2.125rem; } }
  section.news.products .news .article .icon img {
    padding-right: 1.25rem;
    width: 100%; }

section.related-products .row {
  display: block; }
  section.related-products .row.columns {
    margin-top: -0.625rem; }
    @media print, screen and (min-width: 40em) {
      section.related-products .row.columns {
        margin-top: -0.9375rem; } }

section.related-products .images {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: start;
      justify-content: flex-start;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap; }
  @media print, screen and (min-width: 64em) {
    section.related-products .images {
      padding-bottom: 2.5rem; } }
  section.related-products .images .article {
    -ms-flex: 1 1 100%;
        flex: 1 1 100%;
    background: transparent; }
    @media print, screen and (min-width: 40em) {
      section.related-products .images .article {
        width: 33.3333%;
        -ms-flex: 0 1 33.3333%;
            flex: 0 1 33.3333%;
        margin-bottom: 1.25rem;
        min-height: auto; } }
    @media print, screen and (min-width: 64em) {
      section.related-products .images .article {
        width: 25%;
        -ms-flex: 0 1 25%;
            flex: 0 1 25%;
        min-height: auto; } }
    section.related-products .images .article a {
      padding-top: 0.625rem;
      padding-bottom: 1.25rem;
      display: block; }
      @media print, screen and (min-width: 40em) {
        section.related-products .images .article a {
          padding-top: 0.9375rem; } }
      section.related-products .images .article a > p {
        width: auto; }
    section.related-products .images .article img {
      margin-bottom: 1.25rem; }
    section.related-products .images .article h3 {
      color: #6800d2;
      font-size: 1.0625rem; }
      @media print, screen and (min-width: 40em) {
        section.related-products .images .article h3 {
          font-size: 1.25rem; } }
      section.related-products .images .article h3:after {
        white-space: nowrap;
        content: "";
        display: inline-block;
        position: relative;
        top: -0.125rem;
        right: auto;
        margin-left: -1.25rem;
        margin-top: auto;
        border: 2px solid transparent;
        border-right-color: #6800d2;
        border-top-color: #6800d2;
        width: 0.625rem;
        height: 0.625rem;
        -ms-transform: rotate(45deg) translate(20px, -18px);
            transform: rotate(45deg) translate(20px, -18px);
        vertical-align: baseline; }
        @media screen and (max-width: 39.99875em) {
          section.related-products .images .article h3:after {
            margin-left: -1.5625rem;
            top: -0.0625rem;
            -ms-transform: rotate(45deg) translate(20px, -18px) scale(0.8);
                transform: rotate(45deg) translate(20px, -18px) scale(0.8); } }
    section.related-products .images .article.light h3 {
      color: #fefefe; }
      section.related-products .images .article.light h3:after {
        border-right-color: #fefefe;
        border-top-color: #fefefe; }
    section.related-products .images .article:hover h3 {
      color: #0a0a0a; }
      section.related-products .images .article:hover h3:after {
        border-right-color: #0a0a0a;
        border-top-color: #0a0a0a;
        margin-left: -0.625rem; }
    section.related-products .images .article.light:hover h3 {
      color: #fbe200; }
      section.related-products .images .article.light:hover h3:after {
        border-right-color: #fbe200;
        border-top-color: #fbe200; }

section.news.blog {
  border-top: 1px solid transparent; }
  section.news.blog .news {
    width: 100%;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: row;
        flex-direction: row;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
    section.news.blog .news .article {
      -ms-flex: 1 1 100%;
          flex: 1 1 100%; }
      @media print, screen and (min-width: 40em) {
        section.news.blog .news .article {
          min-width: 50%;
          -ms-flex: 1 1 50%;
              flex: 1 1 50%; } }
      section.news.blog .news .article:nth-child(5n + 1) {
        background: #440099; }
      section.news.blog .news .article:nth-child(5n + 2) {
        background: #f2f2f2; }
      section.news.blog .news .article:nth-child(5n + 3) {
        background: #fbe200; }
      section.news.blog .news .article:nth-child(5n + 4) {
        background: #8a8a8a; }
      section.news.blog .news .article:nth-child(5n + 5) {
        background: #0a0a0a; }
    section.news.blog .news.upcoming .article:first-child {
      -ms-flex: 1 0 100%;
          flex: 1 0 100%;
      min-height: 40vw; }
      section.news.blog .news.upcoming .article:first-child a {
        -ms-flex-pack: center;
            justify-content: center; }
        section.news.blog .news.upcoming .article:first-child a .wrapper {
          margin-bottom: 0; }
  section.news.blog.related {
    border-top-color: #cacaca; }
  section.news.blog.simple {
    max-width: none;
    margin-right: auto;
    margin-left: auto;
    padding: 1.25rem 0; }
    section.news.blog.simple::before, section.news.blog.simple::after {
      display: table;
      content: ' ';
      -ms-flex-preferred-size: 0;
          flex-basis: 0;
      -ms-flex-order: 1;
          order: 1; }
    section.news.blog.simple::after {
      clear: both; }
    @media print, screen and (min-width: 64em) {
      section.news.blog.simple {
        padding: 5rem 0; } }
    section.news.blog.simple .title {
      padding-top: 0; }
    section.news.blog.simple .news {
      width: 100%;
      float: left;
      padding-right: 0.625rem;
      padding-left: 0.625rem;
      min-height: auto; }
      @media print, screen and (min-width: 40em) {
        section.news.blog.simple .news {
          padding-right: 0.9375rem;
          padding-left: 0.9375rem; } }
      section.news.blog.simple .news, section.news.blog.simple .news:last-child:not(:first-child) {
        float: left;
        clear: none; }
      section.news.blog.simple .news:last-child:not(:first-child) {
        float: right; }
      section.news.blog.simple .news .article {
        background: #fefefe;
        min-height: auto; }
        @media print, screen and (min-width: 40em) {
          section.news.blog.simple .news .article {
            min-width: 100%; } }
        section.news.blog.simple .news .article a {
          padding: 0; }
          section.news.blog.simple .news .article a .wrapper {
            -ms-flex-direction: column;
                flex-direction: column;
            margin: 0; }
          section.news.blog.simple .news .article a p.label {
            color: #0a0a0a !important;
            margin: 0; }
          section.news.blog.simple .news .article a h2 {
            color: #6800d2;
            margin-bottom: 1.25rem;
            position: relative;
            width: 100% !important; }
            section.news.blog.simple .news .article a h2:after {
              border: 2px solid transparent;
              border-bottom-color: #6800d2;
              border-right-color: #6800d2;
              content: "";
              display: inline-block;
              height: 0.875rem;
              margin-left: 0.625rem;
              width: 0.875rem;
              -ms-transform: rotate(-45deg);
                  transform: rotate(-45deg); }
    section.news.blog.simple .link {
      width: 100%;
      float: left;
      padding-right: 0.625rem;
      padding-left: 0.625rem;
      padding: 1.25rem 0 0 0;
      text-align: left; }
      @media print, screen and (min-width: 40em) {
        section.news.blog.simple .link {
          padding-right: 0.9375rem;
          padding-left: 0.9375rem; } }
      section.news.blog.simple .link, section.news.blog.simple .link:last-child:not(:first-child) {
        float: left;
        clear: none; }
      section.news.blog.simple .link:last-child:not(:first-child) {
        float: right; }
      @media print, screen and (min-width: 40em) {
        section.news.blog.simple .link {
          padding: 5rem 0 0 0; } }

section.tabbed-content .row {
  max-width: none;
  margin-right: auto;
  margin-left: auto; }
  section.tabbed-content .row::before, section.tabbed-content .row::after {
    display: table;
    content: ' ';
    -ms-flex-preferred-size: 0;
        flex-basis: 0;
    -ms-flex-order: 1;
        order: 1; }
  section.tabbed-content .row::after {
    clear: both; }
  section.tabbed-content .row .intro {
    width: 100%;
    float: left;
    padding-right: 0.625rem;
    padding-left: 0.625rem; }
    @media print, screen and (min-width: 40em) {
      section.tabbed-content .row .intro {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem; } }
    section.tabbed-content .row .intro, section.tabbed-content .row .intro:last-child:not(:first-child) {
      float: left;
      clear: none; }
    section.tabbed-content .row .intro:last-child:not(:first-child) {
      float: right; }
    @media print, screen and (min-width: 64em) {
      section.tabbed-content .row .intro {
        margin-bottom: 1.875rem;
        width: 41.66667%; } }
    section.tabbed-content .row .intro h2 {
      margin-bottom: 1.25rem; }
  section.tabbed-content .row .tab-wrapper .tabs-content {
    clear: both;
    border: 0; }
  section.tabbed-content .row .tab-wrapper .tabs-panel,
  section.tabbed-content .row .tab-wrapper .accordion-content {
    max-width: none;
    margin-right: auto;
    margin-left: auto;
    border: 0;
    padding: 1.25rem 0; }
    section.tabbed-content .row .tab-wrapper .tabs-panel::before, section.tabbed-content .row .tab-wrapper .tabs-panel::after,
    section.tabbed-content .row .tab-wrapper .accordion-content::before,
    section.tabbed-content .row .tab-wrapper .accordion-content::after {
      display: table;
      content: ' ';
      -ms-flex-preferred-size: 0;
          flex-basis: 0;
      -ms-flex-order: 1;
          order: 1; }
    section.tabbed-content .row .tab-wrapper .tabs-panel::after,
    section.tabbed-content .row .tab-wrapper .accordion-content::after {
      clear: both; }
    @media print, screen and (min-width: 40em) {
      section.tabbed-content .row .tab-wrapper .tabs-panel,
      section.tabbed-content .row .tab-wrapper .accordion-content {
        padding: 3.75rem 0; } }
    section.tabbed-content .row .tab-wrapper .tabs-panel .title,
    section.tabbed-content .row .tab-wrapper .accordion-content .title {
      width: 100%;
      float: left;
      padding-right: 0.625rem;
      padding-left: 0.625rem;
      overflow: hidden;
      clear: both; }
      @media print, screen and (min-width: 40em) {
        section.tabbed-content .row .tab-wrapper .tabs-panel .title,
        section.tabbed-content .row .tab-wrapper .accordion-content .title {
          padding-right: 0.9375rem;
          padding-left: 0.9375rem; } }
      section.tabbed-content .row .tab-wrapper .tabs-panel .title, section.tabbed-content .row .tab-wrapper .tabs-panel .title:last-child:not(:first-child),
      section.tabbed-content .row .tab-wrapper .accordion-content .title,
      section.tabbed-content .row .tab-wrapper .accordion-content .title:last-child:not(:first-child) {
        float: left;
        clear: none; }
      section.tabbed-content .row .tab-wrapper .tabs-panel .title:last-child:not(:first-child),
      section.tabbed-content .row .tab-wrapper .accordion-content .title:last-child:not(:first-child) {
        float: right; }
    section.tabbed-content .row .tab-wrapper .tabs-panel .column, section.tabbed-content .row .tab-wrapper .tabs-panel .columns,
    section.tabbed-content .row .tab-wrapper .accordion-content .column,
    section.tabbed-content .row .tab-wrapper .accordion-content .columns {
      width: 100%;
      float: left;
      padding-right: 0.625rem;
      padding-left: 0.625rem;
      overflow: hidden; }
      @media print, screen and (min-width: 40em) {
        section.tabbed-content .row .tab-wrapper .tabs-panel .column, section.tabbed-content .row .tab-wrapper .tabs-panel .columns,
        section.tabbed-content .row .tab-wrapper .accordion-content .column,
        section.tabbed-content .row .tab-wrapper .accordion-content .columns {
          padding-right: 0.9375rem;
          padding-left: 0.9375rem; } }
      section.tabbed-content .row .tab-wrapper .tabs-panel .column, section.tabbed-content .row .tab-wrapper .tabs-panel .columns, section.tabbed-content .row .tab-wrapper .tabs-panel .column:last-child:not(:first-child), section.tabbed-content .row .tab-wrapper .tabs-panel .columns:last-child:not(:first-child),
      section.tabbed-content .row .tab-wrapper .accordion-content .column,
      section.tabbed-content .row .tab-wrapper .accordion-content .columns,
      section.tabbed-content .row .tab-wrapper .accordion-content .column:last-child:not(:first-child),
      section.tabbed-content .row .tab-wrapper .accordion-content .columns:last-child:not(:first-child) {
        float: left;
        clear: none; }
      section.tabbed-content .row .tab-wrapper .tabs-panel .column:last-child:not(:first-child), section.tabbed-content .row .tab-wrapper .tabs-panel .columns:last-child:not(:first-child),
      section.tabbed-content .row .tab-wrapper .accordion-content .column:last-child:not(:first-child),
      section.tabbed-content .row .tab-wrapper .accordion-content .columns:last-child:not(:first-child) {
        float: right; }
      @media print, screen and (min-width: 40em) {
        section.tabbed-content .row .tab-wrapper .tabs-panel .column, section.tabbed-content .row .tab-wrapper .tabs-panel .columns,
        section.tabbed-content .row .tab-wrapper .accordion-content .column,
        section.tabbed-content .row .tab-wrapper .accordion-content .columns {
          width: 50%;
          margin-bottom: -1.25rem; } }
      @media screen and (min-width: 75em) {
        section.tabbed-content .row .tab-wrapper .tabs-panel .column:first-child, section.tabbed-content .row .tab-wrapper .tabs-panel .columns:first-child,
        section.tabbed-content .row .tab-wrapper .accordion-content .column:first-child,
        section.tabbed-content .row .tab-wrapper .accordion-content .columns:first-child {
          padding-right: 3.125rem; }
        section.tabbed-content .row .tab-wrapper .tabs-panel .column:last-child, section.tabbed-content .row .tab-wrapper .tabs-panel .columns:last-child,
        section.tabbed-content .row .tab-wrapper .accordion-content .column:last-child,
        section.tabbed-content .row .tab-wrapper .accordion-content .columns:last-child {
          padding-left: 3.125rem; } }
      section.tabbed-content .row .tab-wrapper .tabs-panel .column > img, section.tabbed-content .row .tab-wrapper .tabs-panel .columns > img,
      section.tabbed-content .row .tab-wrapper .accordion-content .column > img,
      section.tabbed-content .row .tab-wrapper .accordion-content .columns > img {
        margin: 0 0 1.25rem auto;
        display: inline-block; }
        @media print, screen and (min-width: 40em) {
          section.tabbed-content .row .tab-wrapper .tabs-panel .column > img, section.tabbed-content .row .tab-wrapper .tabs-panel .columns > img,
          section.tabbed-content .row .tab-wrapper .accordion-content .column > img,
          section.tabbed-content .row .tab-wrapper .accordion-content .columns > img {
            padding-left: 1.875rem;
            max-width: 25rem;
            width: 100%; } }
      section.tabbed-content .row .tab-wrapper .tabs-panel .column .button, section.tabbed-content .row .tab-wrapper .tabs-panel .columns .button, section.tabbed-content .row .tab-wrapper .tabs-panel .column .wp-block-button .wp-block-button__link, .wp-block-button section.tabbed-content .row .tab-wrapper .tabs-panel .column .wp-block-button__link, section.tabbed-content .row .tab-wrapper .tabs-panel .columns .wp-block-button .wp-block-button__link, .wp-block-button section.tabbed-content .row .tab-wrapper .tabs-panel .columns .wp-block-button__link, section.tabbed-content .row .tab-wrapper .tabs-panel .column section.promo-listing.contact .bg-image p:last-child a, section.promo-listing.contact .bg-image p:last-child section.tabbed-content .row .tab-wrapper .tabs-panel .column a, section.tabbed-content .row .tab-wrapper .tabs-panel .columns section.promo-listing.contact .bg-image p:last-child a, section.promo-listing.contact .bg-image p:last-child section.tabbed-content .row .tab-wrapper .tabs-panel .columns a, section.tabbed-content .row .tab-wrapper .tabs-panel .column section.promo-listing-2.contact .bg-image p:last-child a, section.promo-listing-2.contact .bg-image p:last-child section.tabbed-content .row .tab-wrapper .tabs-panel .column a, section.tabbed-content .row .tab-wrapper .tabs-panel .columns section.promo-listing-2.contact .bg-image p:last-child a, section.promo-listing-2.contact .bg-image p:last-child section.tabbed-content .row .tab-wrapper .tabs-panel .columns a,
      section.tabbed-content .row .tab-wrapper .accordion-content .column .button,
      section.tabbed-content .row .tab-wrapper .accordion-content .columns .button,
      section.tabbed-content .row .tab-wrapper .accordion-content .column .wp-block-button .wp-block-button__link,
      .wp-block-button section.tabbed-content .row .tab-wrapper .accordion-content .column .wp-block-button__link,
      section.tabbed-content .row .tab-wrapper .accordion-content .columns .wp-block-button .wp-block-button__link,
      .wp-block-button section.tabbed-content .row .tab-wrapper .accordion-content .columns .wp-block-button__link,
      section.tabbed-content .row .tab-wrapper .accordion-content .column section.promo-listing.contact .bg-image p:last-child a,
      section.promo-listing.contact .bg-image p:last-child section.tabbed-content .row .tab-wrapper .accordion-content .column a,
      section.tabbed-content .row .tab-wrapper .accordion-content .columns section.promo-listing.contact .bg-image p:last-child a,
      section.promo-listing.contact .bg-image p:last-child section.tabbed-content .row .tab-wrapper .accordion-content .columns a,
      section.tabbed-content .row .tab-wrapper .accordion-content .column section.promo-listing-2.contact .bg-image p:last-child a,
      section.promo-listing-2.contact .bg-image p:last-child section.tabbed-content .row .tab-wrapper .accordion-content .column a,
      section.tabbed-content .row .tab-wrapper .accordion-content .columns section.promo-listing-2.contact .bg-image p:last-child a,
      section.promo-listing-2.contact .bg-image p:last-child section.tabbed-content .row .tab-wrapper .accordion-content .columns a {
        margin-top: 0.9375rem; }
      section.tabbed-content .row .tab-wrapper .tabs-panel .column .stat, section.tabbed-content .row .tab-wrapper .tabs-panel .columns .stat,
      section.tabbed-content .row .tab-wrapper .accordion-content .column .stat,
      section.tabbed-content .row .tab-wrapper .accordion-content .columns .stat {
        font-size: 0.875rem;
        max-width: 18.75rem;
        margin-bottom: 1.875rem; }
        @media print, screen and (min-width: 64em) {
          section.tabbed-content .row .tab-wrapper .tabs-panel .column .stat, section.tabbed-content .row .tab-wrapper .tabs-panel .columns .stat,
          section.tabbed-content .row .tab-wrapper .accordion-content .column .stat,
          section.tabbed-content .row .tab-wrapper .accordion-content .columns .stat {
            position: relative;
            left: 8.33333%; } }
        section.tabbed-content .row .tab-wrapper .tabs-panel .column .stat h2, section.tabbed-content .row .tab-wrapper .tabs-panel .columns .stat h2,
        section.tabbed-content .row .tab-wrapper .accordion-content .column .stat h2,
        section.tabbed-content .row .tab-wrapper .accordion-content .columns .stat h2 {
          font-weight: 300;
          border-bottom: 1px solid #cacaca;
          padding-bottom: 0.1875rem;
          margin-bottom: 0.5rem;
          font-size: 2rem; }
          @media print, screen and (min-width: 40em) {
            section.tabbed-content .row .tab-wrapper .tabs-panel .column .stat h2, section.tabbed-content .row .tab-wrapper .tabs-panel .columns .stat h2,
            section.tabbed-content .row .tab-wrapper .accordion-content .column .stat h2,
            section.tabbed-content .row .tab-wrapper .accordion-content .columns .stat h2 {
              font-size: 3.875rem; } }
        section.tabbed-content .row .tab-wrapper .tabs-panel .column .stat p, section.tabbed-content .row .tab-wrapper .tabs-panel .columns .stat p,
        section.tabbed-content .row .tab-wrapper .accordion-content .column .stat p,
        section.tabbed-content .row .tab-wrapper .accordion-content .columns .stat p {
          font-size: 100%;
          color: #6800d2;
          font-weight: 500;
          line-height: 1.2; }
    section.tabbed-content .row .tab-wrapper .tabs-panel h3,
    section.tabbed-content .row .tab-wrapper .accordion-content h3 {
      color: #6800d2;
      font-size: 1rem; }
      @media print, screen and (min-width: 40em) {
        section.tabbed-content .row .tab-wrapper .tabs-panel h3,
        section.tabbed-content .row .tab-wrapper .accordion-content h3 {
          line-height: 1.2;
          font-size: 1.125rem; } }
    html[amp] section.tabbed-content .row .tab-wrapper .tabs-panel, html[amp]
    section.tabbed-content .row .tab-wrapper .accordion-content {
      display: block; }

body.single-case_study section.tabbed-content {
  padding: 0;
  padding-left: 0 !important;
  padding-right: 0 !important; }
  body.single-case_study section.tabbed-content .tabs-wrapper {
    background: #fefefe;
    padding-bottom: 2.5rem; }

div.expandable .accordion-item:first-child > :first-child {
  border-radius: 0; }

div.expandable .accordion-title {
  background: #6800d2;
  border-bottom: 0;
  color: #fefefe;
  padding: 0.625rem 2.5rem;
  font-size: 1rem;
  z-index: 3; }
  @media print, screen and (min-width: 40em) {
    div.expandable .accordion-title {
      font-size: 1.125rem; } }
  div.expandable .accordion-title:before {
    right: 2.5rem;
    margin-top: -0.625rem; }

@media screen and (max-width: 63.99875em) {
  div.expandable .accordion-item {
    position: relative; } }

div.expandable .accordion-content {
  padding: 0;
  background: #fefefe;
  padding: 2.5rem;
  border: 0 !important;
  margin-left: 0.625rem;
  margin-right: 0.625rem; }
  @media print, screen and (min-width: 40em) {
    div.expandable .accordion-content {
      margin-left: 0.9375rem;
      margin-right: 0.9375rem; } }
  @media screen and (max-width: 63.99875em) {
    div.expandable .accordion-content {
      overflow-x: auto; }
      div.expandable .accordion-content:after {
        content: "";
        display: block;
        position: absolute;
        right: 0.9375rem;
        top: 0;
        bottom: 0;
        width: 9.375rem;
        background: linear-gradient(to left, #fefefe 0%, rgba(254, 254, 254, 0) 100%);
        z-index: 2; } }
  @media screen and (max-width: 39.99875em) {
    div.expandable .accordion-content:after {
      right: 0.625rem; } }

div.expandable table {
  min-width: 56.25rem;
  border: 0; }
  div.expandable table td,
  div.expandable table th,
  div.expandable table tr,
  div.expandable table thead,
  div.expandable table tbody {
    background-color: transparent !important;
    border: 0;
    font-size: 0.9375rem; }
  div.expandable table td,
  div.expandable table th {
    vertical-align: top;
    padding: 0.625rem 0.3125rem; }
    div.expandable table td.border-left,
    div.expandable table th.border-left {
      border-left: 1px solid #0a0a0a; }
  div.expandable table tr.border-top {
    border-top: 1px solid #0a0a0a; }
  div.expandable table thead th {
    vertical-align: bottom;
    border-bottom: 1px solid #0a0a0a;
    padding-top: 1.25rem;
    padding-bottom: 1.25rem; }
    div.expandable table thead th img {
      height: 1.5625rem;
      width: auto; }

ul.tabs {
  border: 0;
  border-bottom: 1px solid #cacaca;
  margin-left: 0.625rem;
  margin-right: 0.625rem; }
  @media print, screen and (min-width: 40em) {
    ul.tabs {
      min-width: 33.3333%;
      margin-left: 0.9375rem;
      margin-right: 0.9375rem; } }
  html[amp] ul.tabs {
    display: none; }

.tabs-title > a {
  font-weight: 500;
  font-size: 0.9375rem;
  color: #0a0a0a;
  padding-left: 0;
  padding-right: 0;
  margin-left: 0.3125rem;
  margin-right: 0.3125rem;
  border-bottom: 4px solid transparent; }
  @media print, screen and (min-width: 64em) {
    .tabs-title > a {
      margin-left: 1.25rem;
      margin-right: 1.25rem; } }
  .tabs-title > a:focus, .tabs-title > a[aria-selected='true'] {
    background: transparent;
    border-bottom-color: #6800d2;
    outline: none; }

.tabs-title:first-child > a {
  margin-left: 0; }

.accordion-title {
  font-weight: 500;
  border: 0;
  border-bottom: 1px solid #f2f2f2;
  padding-left: 0;
  padding-right: 0;
  margin-left: 0.625rem;
  margin-right: 0.625rem; }
  @media print, screen and (min-width: 40em) {
    .accordion-title {
      margin-left: 0.9375rem;
      margin-right: 0.9375rem; } }
  .accordion-title:hover, .accordion-title:focus {
    background: transparent;
    border-color: #6800d2;
    border-bottom-width: 2px; }

.light .tabs a {
  color: #fefefe;
  opacity: 0.7; }

.light .tabs .tabs-title > a:focus,
.light .tabs .tabs-title > a[aria-selected="true"] {
  opacity: 1;
  border-bottom-color: #fefefe; }

.light .tabs-content {
  color: #fefefe; }

.light div.expandable .accordion-title {
  background: #fefefe;
  color: #6800d2; }

.light div.expandable .accordion-content {
  background: transparent;
  color: #fefefe; }

section.user-guides h2 {
  width: 100%;
  float: left;
  padding-right: 0.625rem;
  padding-left: 0.625rem;
  float: none !important;
  margin-bottom: 1.25rem; }
  @media print, screen and (min-width: 40em) {
    section.user-guides h2 {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
  section.user-guides h2, section.user-guides h2:last-child:not(:first-child) {
    float: left;
    clear: none; }
  section.user-guides h2:last-child:not(:first-child) {
    float: right; }
  @media print, screen and (min-width: 40em) {
    section.user-guides h2 {
      margin-bottom: 2.5rem; } }

section.user-guides .featured-guides-list {
  padding: 0 4.375rem;
  position: relative; }
  section.user-guides .featured-guides-list .slide {
    width: 100%;
    float: left;
    padding-right: 0.625rem;
    padding-left: 0.625rem;
    margin-bottom: 1.25rem; }
    @media print, screen and (min-width: 40em) {
      section.user-guides .featured-guides-list .slide {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem; } }
    section.user-guides .featured-guides-list .slide, section.user-guides .featured-guides-list .slide:last-child:not(:first-child) {
      float: left;
      clear: none; }
    section.user-guides .featured-guides-list .slide:last-child:not(:first-child) {
      float: right; }
    @media print, screen and (min-width: 40em) {
      section.user-guides .featured-guides-list .slide {
        width: 16.66667%;
        margin-bottom: 3.125rem; }
        section.user-guides .featured-guides-list .slide:last-child:last-child {
          float: left; } }
    section.user-guides .featured-guides-list .slide .card-container {
      max-width: 9.375rem;
      margin: 0 auto; }
      section.user-guides .featured-guides-list .slide .card-container img {
        box-shadow: 0 0 10px #8a8a8a;
        max-width: 6.25rem;
        margin: 1.5625rem 0 0.9375rem 0;
        width: 100%; }
      section.user-guides .featured-guides-list .slide .card-container p {
        max-width: 9.375rem; }

section.user-guides ul.all-guides-list {
  border: none; }
  section.user-guides ul.all-guides-list .accordion-item {
    border-bottom: 0; }
    section.user-guides ul.all-guides-list .accordion-item .accordion-title {
      background-color: #6800d2;
      color: #fefefe;
      font-size: 1.1875rem;
      padding: 0.625rem 1.25rem; }
      section.user-guides ul.all-guides-list .accordion-item .accordion-title:before {
        border-bottom-color: #fefefe;
        border-right-color: #fefefe; }
    section.user-guides ul.all-guides-list .accordion-item .accordion-content {
      border: none;
      padding: 1.875rem 1.25rem;
      overflow: hidden; }
      section.user-guides ul.all-guides-list .accordion-item .accordion-content .column, section.user-guides ul.all-guides-list .accordion-item .accordion-content .columns {
        width: 100%;
        float: left;
        padding-right: 0.625rem;
        padding-left: 0.625rem; }
        @media print, screen and (min-width: 40em) {
          section.user-guides ul.all-guides-list .accordion-item .accordion-content .column, section.user-guides ul.all-guides-list .accordion-item .accordion-content .columns {
            padding-right: 0.9375rem;
            padding-left: 0.9375rem; } }
        section.user-guides ul.all-guides-list .accordion-item .accordion-content .column, section.user-guides ul.all-guides-list .accordion-item .accordion-content .columns, section.user-guides ul.all-guides-list .accordion-item .accordion-content .column:last-child:not(:first-child), section.user-guides ul.all-guides-list .accordion-item .accordion-content .columns:last-child:not(:first-child) {
          float: left;
          clear: none; }
        section.user-guides ul.all-guides-list .accordion-item .accordion-content .column:last-child:not(:first-child), section.user-guides ul.all-guides-list .accordion-item .accordion-content .columns:last-child:not(:first-child) {
          float: right; }
        @media print, screen and (min-width: 40em) {
          section.user-guides ul.all-guides-list .accordion-item .accordion-content .column, section.user-guides ul.all-guides-list .accordion-item .accordion-content .columns {
            width: 33.33333%; }
            section.user-guides ul.all-guides-list .accordion-item .accordion-content .column:last-child:last-child, section.user-guides ul.all-guides-list .accordion-item .accordion-content .columns:last-child:last-child {
              float: left; } }
        section.user-guides ul.all-guides-list .accordion-item .accordion-content .column h3, section.user-guides ul.all-guides-list .accordion-item .accordion-content .columns h3 {
          font-size: 1.125rem;
          margin-bottom: 1.25rem; }
          @media print, screen and (min-width: 40em) {
            section.user-guides ul.all-guides-list .accordion-item .accordion-content .column h3, section.user-guides ul.all-guides-list .accordion-item .accordion-content .columns h3 {
              margin-bottom: 1.875rem; } }
        section.user-guides ul.all-guides-list .accordion-item .accordion-content .column ul, section.user-guides ul.all-guides-list .accordion-item .accordion-content .columns ul {
          margin: 0;
          padding: 0; }
          section.user-guides ul.all-guides-list .accordion-item .accordion-content .column ul li, section.user-guides ul.all-guides-list .accordion-item .accordion-content .columns ul li {
            list-style-type: none; }

section.user-guides .slick-arrow {
  top: 30%;
  -ms-transform: translateY(-50%);
      transform: translateY(-50%); }

section.video-listing {
  border: none; }
  section.video-listing:nth-child(odd) {
    background-color: #f2f2f2; }
  section.video-listing h2 {
    width: 100%;
    float: left;
    padding-right: 0.625rem;
    padding-left: 0.625rem;
    margin-bottom: 1.875rem; }
    @media print, screen and (min-width: 40em) {
      section.video-listing h2 {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem; } }
    section.video-listing h2, section.video-listing h2:last-child:not(:first-child) {
      float: left;
      clear: none; }
    section.video-listing h2:last-child:not(:first-child) {
      float: right; }
    @media print, screen and (min-width: 40em) {
      section.video-listing h2 {
        margin-bottom: 3.75rem; } }
  section.video-listing .video-list {
    margin: 0;
    padding: 0; }
    section.video-listing .video-list li {
      width: 100%;
      float: left;
      padding-right: 0.625rem;
      padding-left: 0.625rem;
      list-style-type: none; }
      @media print, screen and (min-width: 40em) {
        section.video-listing .video-list li {
          padding-right: 0.9375rem;
          padding-left: 0.9375rem; } }
      section.video-listing .video-list li, section.video-listing .video-list li:last-child:not(:first-child) {
        float: left;
        clear: none; }
      section.video-listing .video-list li:last-child:not(:first-child) {
        float: right; }
      section.video-listing .video-list li:last-child:last-child {
        float: left; }
      @media print, screen and (min-width: 40em) {
        section.video-listing .video-list li {
          width: 50%; } }
      @media print, screen and (min-width: 64em) {
        section.video-listing .video-list li {
          width: 33.33333%; } }
      section.video-listing .video-list li .video-title {
        color: #6800d2;
        font-size: 1.125rem;
        margin-bottom: 1.25rem; }
        section.video-listing .video-list li .video-title:after {
          content: '';
          border: 0.125rem solid transparent;
          border-right-color: #6800d2;
          border-bottom-color: #6800d2;
          display: inline-block;
          margin-left: 0.625rem;
          width: 0.625rem;
          height: 0.625rem;
          -ms-transform: rotate(-45deg);
              transform: rotate(-45deg);
          transition: all 0.2s ease-in-out; }
      section.video-listing .video-list li button {
        border-radius: 0; }
        section.video-listing .video-list li button:hover {
          cursor: pointer; }
      section.video-listing .video-list li .video-thumb {
        margin-bottom: 1.875rem;
        width: 100%; }
        @media print, screen and (min-width: 40em) {
          section.video-listing .video-list li .video-thumb {
            margin-bottom: 3.125rem; } }

body.single-product .case-studies {
  border-bottom: 1px solid #8a8a8a; }

body.single-partner article,
#partner-reveal article {
  clear: both;
  overflow: hidden; }
  body.single-partner article footer,
  #partner-reveal article footer {
    width: 100%;
    float: left;
    padding-right: 0.625rem;
    padding-left: 0.625rem;
    padding-top: 1.25rem; }
    @media print, screen and (min-width: 40em) {
      body.single-partner article footer,
      #partner-reveal article footer {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem; } }
    body.single-partner article footer, body.single-partner article footer:last-child:not(:first-child),
    #partner-reveal article footer,
    #partner-reveal article footer:last-child:not(:first-child) {
      float: left;
      clear: none; }
    body.single-partner article footer:last-child:not(:first-child),
    #partner-reveal article footer:last-child:not(:first-child) {
      float: right; }

body.single-partner .row,
#partner-reveal .row {
  max-width: none;
  margin-right: auto;
  margin-left: auto; }
  body.single-partner .row::before, body.single-partner .row::after,
  #partner-reveal .row::before,
  #partner-reveal .row::after {
    display: table;
    content: ' ';
    -ms-flex-preferred-size: 0;
        flex-basis: 0;
    -ms-flex-order: 1;
        order: 1; }
  body.single-partner .row::after,
  #partner-reveal .row::after {
    clear: both; }
  body.single-partner .row header,
  #partner-reveal .row header {
    width: 100%;
    float: left;
    padding-right: 0.625rem;
    padding-left: 0.625rem; }
    @media print, screen and (min-width: 40em) {
      body.single-partner .row header,
      #partner-reveal .row header {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem; } }
    body.single-partner .row header, body.single-partner .row header:last-child:not(:first-child),
    #partner-reveal .row header,
    #partner-reveal .row header:last-child:not(:first-child) {
      float: left;
      clear: none; }
    body.single-partner .row header:last-child:not(:first-child),
    #partner-reveal .row header:last-child:not(:first-child) {
      float: right; }

body.single-partner .content,
#partner-reveal .content {
  width: 100%;
  float: left;
  padding-right: 0.625rem;
  padding-left: 0.625rem; }
  @media print, screen and (min-width: 40em) {
    body.single-partner .content,
    #partner-reveal .content {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
  body.single-partner .content, body.single-partner .content:last-child:not(:first-child),
  #partner-reveal .content,
  #partner-reveal .content:last-child:not(:first-child) {
    float: left;
    clear: none; }
  body.single-partner .content:last-child:not(:first-child),
  #partner-reveal .content:last-child:not(:first-child) {
    float: right; }
  @media print, screen and (min-width: 40em) {
    body.single-partner .content,
    #partner-reveal .content {
      width: 66.66667%; } }

body.single-partner .logo,
#partner-reveal .logo {
  width: 100%;
  float: left;
  padding-right: 0.625rem;
  padding-left: 0.625rem;
  max-width: 12.5rem; }
  @media print, screen and (min-width: 40em) {
    body.single-partner .logo,
    #partner-reveal .logo {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
  body.single-partner .logo, body.single-partner .logo:last-child:not(:first-child),
  #partner-reveal .logo,
  #partner-reveal .logo:last-child:not(:first-child) {
    float: left;
    clear: none; }
  body.single-partner .logo:last-child:not(:first-child),
  #partner-reveal .logo:last-child:not(:first-child) {
    float: right; }
  @media screen and (max-width: 39.99875em) {
    body.single-partner .logo,
    #partner-reveal .logo {
      margin: 0 auto;
      float: none !important; } }
  @media print, screen and (min-width: 40em) {
    body.single-partner .logo,
    #partner-reveal .logo {
      width: 25%; } }
  @media print, screen and (min-width: 64em) {
    body.single-partner .logo,
    #partner-reveal .logo {
      width: 16.66667%; } }

body.single-partner section.hero-slide .slide .content > img,
body.single-partner section.hero-slide .slide .content > picture,
#partner-reveal section.hero-slide .slide .content > img,
#partner-reveal section.hero-slide .slide .content > picture {
  max-width: 12.5rem;
  margin-top: 3.75rem; }
  @media print, screen and (min-width: 64em) {
    body.single-partner section.hero-slide .slide .content > img,
    body.single-partner section.hero-slide .slide .content > picture,
    #partner-reveal section.hero-slide .slide .content > img,
    #partner-reveal section.hero-slide .slide .content > picture {
      max-width: 18.75rem;
      margin-top: 9.375rem; } }

@media print, screen and (min-width: 64em) {
  #partner-reveal {
    padding: 7.5rem 6.25rem 6.25rem; } }

#partner-reveal h1 {
  font-size: 1.25rem; }
  @media print, screen and (min-width: 40em) {
    #partner-reveal h1 {
      font-size: 2.125rem; } }

@media print, screen and (min-width: 40em) {
  #partner-reveal .logo {
    width: 25%; } }

body.single-amplify section.intro,
body.single-insight section.intro {
  background: #fefefe; }
  body.single-amplify section.intro .row,
  body.single-insight section.intro .row {
    -ms-flex-align: start;
        align-items: flex-start; }
  body.single-amplify section.intro .content,
  body.single-insight section.intro .content {
    max-width: none; }
    @media print, screen and (min-width: 40em) {
      body.single-amplify section.intro .content,
      body.single-insight section.intro .content {
        width: 48%; } }
  body.single-amplify section.intro .right,
  body.single-insight section.intro .right {
    max-width: none; }
    @media print, screen and (min-width: 40em) {
      body.single-amplify section.intro .right,
      body.single-insight section.intro .right {
        width: 48%; } }
  @media print, screen and (min-width: 40em) {
    body.single-amplify section.intro.reverse .content,
    body.single-insight section.intro.reverse .content {
      -ms-flex-order: 2;
          order: 2; }
    body.single-amplify section.intro.reverse .right,
    body.single-insight section.intro.reverse .right {
      -ms-flex-order: 1;
          order: 1; }
      body.single-amplify section.intro.reverse .right .content,
      body.single-insight section.intro.reverse .right .content {
        margin-left: 0; } }
  body.single-amplify section.intro .type-stat .content,
  body.single-amplify section.intro .type-pullout .content,
  body.single-insight section.intro .type-stat .content,
  body.single-insight section.intro .type-pullout .content {
    float: none;
    padding: 0;
    color: #6800d2;
    width: 100%;
    margin: 1.25rem 0; }
    @media print, screen and (min-width: 40em) {
      body.single-amplify section.intro .type-stat .content,
      body.single-amplify section.intro .type-pullout .content,
      body.single-insight section.intro .type-stat .content,
      body.single-insight section.intro .type-pullout .content {
        max-width: 21.875rem;
        margin: 0.5rem auto; } }
  body.single-amplify section.intro .type-pullout p,
  body.single-insight section.intro .type-pullout p {
    font-weight: 500;
    line-height: 1.2;
    font-size: 1.125rem; }
    @media print, screen and (min-width: 40em) {
      body.single-amplify section.intro .type-pullout p,
      body.single-insight section.intro .type-pullout p {
        font-size: 1.625rem; } }
  body.single-amplify section.intro .type-pullout .content:before,
  body.single-insight section.intro .type-pullout .content:before {
    content: "";
    display: block;
    margin-bottom: 1.25rem;
    width: 3.75rem;
    height: 0.5rem;
    background: linear-gradient(to right, #6800d2 0%, #9e29fd 100%); }
  body.single-amplify section.intro .type-stat .content,
  body.single-insight section.intro .type-stat .content {
    max-width: 13.75rem; }
  body.single-amplify section.intro .type-stat h2,
  body.single-insight section.intro .type-stat h2 {
    color: #6800d2;
    display: inline-block;
    margin: 0;
    font-size: 5.625rem; }
    body.single-amplify section.intro .type-stat h2:before,
    body.single-insight section.intro .type-stat h2:before {
      content: "";
      display: block;
      width: 3.75rem;
      height: 0.5rem;
      background: linear-gradient(to right, #6800d2 0%, #9e29fd 100%); }
  body.single-amplify section.intro .type-stat p,
  body.single-insight section.intro .type-stat p {
    font-weight: 500;
    font-size: 1rem; }
    @media print, screen and (min-width: 40em) {
      body.single-amplify section.intro .type-stat p,
      body.single-insight section.intro .type-stat p {
        font-size: 1.125rem; } }
  body.single-amplify section.intro.light .type-stat .content,
  body.single-amplify section.intro.light .type-pullout .content,
  body.single-insight section.intro.light .type-stat .content,
  body.single-insight section.intro.light .type-pullout .content {
    color: #fefefe; }
  body.single-amplify section.intro.light .type-stat h2,
  body.single-insight section.intro.light .type-stat h2 {
    background: none;
    -webkit-text-fill-color: #fefefe; }
    body.single-amplify section.intro.light .type-stat h2:before,
    body.single-insight section.intro.light .type-stat h2:before {
      background: #fefefe; }
  body.single-amplify section.intro.light .type-pullout:before,
  body.single-insight section.intro.light .type-pullout:before {
    background: #fefefe; }

body.single-amplify section.columned-text .intro,
body.single-insight section.columned-text .intro {
  width: 100%;
  text-align: center;
  max-width: 62.5rem;
  margin: 0 auto 2.5rem;
  float: none; }
  @media print, screen and (min-width: 64em) {
    body.single-amplify section.columned-text .intro,
    body.single-insight section.columned-text .intro {
      margin-bottom: 5rem; } }

@media print, screen and (min-width: 40em) {
  body.single-amplify section.columned-text .column.text, body.single-amplify section.columned-text .text.columns,
  body.single-insight section.columned-text .column.text,
  body.single-insight section.columned-text .text.columns {
    width: 48%; } }

body.single-amplify section.large-pullout,
body.single-insight section.large-pullout {
  background: #0a0a0a;
  color: #fefefe;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
      justify-content: center;
  -ms-flex-align: center;
      align-items: center;
  min-height: 35vw; }
  body.single-amplify section.large-pullout .content,
  body.single-insight section.large-pullout .content {
    position: relative;
    max-width: 40rem;
    padding: 2.5rem 4.375rem;
    margin: 0 auto; }
    body.single-amplify section.large-pullout .content blockquote,
    body.single-insight section.large-pullout .content blockquote {
      position: relative;
      color: #fefefe;
      line-height: 1.1;
      font-size: 1.25rem; }
      @media print, screen and (min-width: 40em) {
        body.single-amplify section.large-pullout .content blockquote,
        body.single-insight section.large-pullout .content blockquote {
          font-size: 2.125rem; } }
      body.single-amplify section.large-pullout .content blockquote:before, body.single-amplify section.large-pullout .content blockquote:after,
      body.single-insight section.large-pullout .content blockquote:before,
      body.single-insight section.large-pullout .content blockquote:after {
        color: #6800d2;
        font-size: 10.25rem;
        position: absolute;
        background: linear-gradient(to right, #6800d2 0%, #9e29fd 100%);
        -webkit-background-clip: text;
        -webkit-text-fill-color: transparent; }
      body.single-amplify section.large-pullout .content blockquote:before,
      body.single-insight section.large-pullout .content blockquote:before {
        content: "“";
        left: -4.375rem;
        top: -5rem; }
      body.single-amplify section.large-pullout .content blockquote:after,
      body.single-insight section.large-pullout .content blockquote:after {
        content: "”";
        right: -4.375rem;
        bottom: -9.375rem; }
      body.single-amplify section.large-pullout .content blockquote cite,
      body.single-insight section.large-pullout .content blockquote cite {
        margin-top: 1.25rem;
        font-size: 1.125rem; }
        @media print, screen and (min-width: 40em) {
          body.single-amplify section.large-pullout .content blockquote cite,
          body.single-insight section.large-pullout .content blockquote cite {
            font-size: 1.625rem; } }

body.single-amplify section.related,
body.single-insight section.related {
  background: #fefefe; }

body.single-blog article > div.row,
body.single-event article > div.row,
body.single-post article > div.row {
  max-width: none;
  margin-right: auto;
  margin-left: auto; }
  body.single-blog article > div.row::before, body.single-blog article > div.row::after,
  body.single-event article > div.row::before,
  body.single-event article > div.row::after,
  body.single-post article > div.row::before,
  body.single-post article > div.row::after {
    display: table;
    content: ' ';
    -ms-flex-preferred-size: 0;
        flex-basis: 0;
    -ms-flex-order: 1;
        order: 1; }
  body.single-blog article > div.row::after,
  body.single-event article > div.row::after,
  body.single-post article > div.row::after {
    clear: both; }
  body.single-blog article > div.row:first-child,
  body.single-event article > div.row:first-child,
  body.single-post article > div.row:first-child {
    border-top: 1px solid #cacaca;
    padding-top: 1.25rem; }
    @media print, screen and (min-width: 40em) {
      body.single-blog article > div.row:first-child,
      body.single-event article > div.row:first-child,
      body.single-post article > div.row:first-child {
        padding-top: 5rem; } }

body.single-blog article .content,
body.single-event article .content,
body.single-post article .content {
  width: 100%;
  float: left;
  padding-right: 0.625rem;
  padding-left: 0.625rem; }
  @media print, screen and (min-width: 40em) {
    body.single-blog article .content,
    body.single-event article .content,
    body.single-post article .content {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
  body.single-blog article .content, body.single-blog article .content:last-child:not(:first-child),
  body.single-event article .content,
  body.single-event article .content:last-child:not(:first-child),
  body.single-post article .content,
  body.single-post article .content:last-child:not(:first-child) {
    float: left;
    clear: none; }
  body.single-blog article .content:last-child:not(:first-child),
  body.single-event article .content:last-child:not(:first-child),
  body.single-post article .content:last-child:not(:first-child) {
    float: right; }
  @media print, screen and (min-width: 40em) {
    body.single-blog article .content,
    body.single-event article .content,
    body.single-post article .content {
      width: 58.33333%; } }
  body.single-blog article .content h3,
  body.single-event article .content h3,
  body.single-post article .content h3 {
    color: #6800d2;
    font-size: 100%;
    font-weight: 500;
    margin-bottom: 0.3125rem; }

body.single-blog article header,
body.single-event article header,
body.single-post article header {
  width: 100%;
  float: left;
  padding-right: 0.625rem;
  padding-left: 0.625rem; }
  @media print, screen and (min-width: 40em) {
    body.single-blog article header,
    body.single-event article header,
    body.single-post article header {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
  body.single-blog article header, body.single-blog article header:last-child:not(:first-child),
  body.single-event article header,
  body.single-event article header:last-child:not(:first-child),
  body.single-post article header,
  body.single-post article header:last-child:not(:first-child) {
    float: left;
    clear: none; }
  body.single-blog article header:last-child:not(:first-child),
  body.single-event article header:last-child:not(:first-child),
  body.single-post article header:last-child:not(:first-child) {
    float: right; }
  @media print, screen and (min-width: 64em) {
    body.single-blog article header,
    body.single-event article header,
    body.single-post article header {
      width: 58.33333%; } }

body.single-blog article footer,
body.single-event article footer,
body.single-post article footer {
  margin-top: 1.25rem;
  margin-bottom: 2.5rem; }
  @media print, screen and (min-width: 40em) {
    body.single-blog article footer,
    body.single-event article footer,
    body.single-post article footer {
      margin-top: 5rem; } }

body.single-blog article ul.solutions,
body.single-event article ul.solutions,
body.single-post article ul.solutions {
  list-style: none;
  margin-left: 0; }
  body.single-blog article ul.solutions li,
  body.single-event article ul.solutions li,
  body.single-post article ul.solutions li {
    display: inline-block;
    border-right: 1px solid #0a0a0a;
    padding-right: 0.625rem;
    margin-right: 0.625rem; }
    body.single-blog article ul.solutions li:last-child,
    body.single-event article ul.solutions li:last-child,
    body.single-post article ul.solutions li:last-child {
      border-right: 0; }

body.single-blog article .meta,
body.single-event article .meta,
body.single-post article .meta {
  margin-top: 1.875rem;
  border-bottom: 1px solid #0a0a0a;
  display: inline-block;
  margin-bottom: 3.125rem;
  font-weight: 500;
  min-width: 9.375rem;
  color: #6800d2; }
  body.single-blog article .meta ul.share,
  body.single-event article .meta ul.share,
  body.single-post article .meta ul.share {
    display: inline-block;
    vertical-align: middle;
    margin-left: 1.25rem; }
    body.single-blog article .meta ul.share:first-child,
    body.single-event article .meta ul.share:first-child,
    body.single-post article .meta ul.share:first-child {
      margin-left: 0; }

body.single-blog article .logo,
body.single-event article .logo,
body.single-post article .logo {
  width: 100%;
  float: left;
  padding-right: 0.625rem;
  padding-left: 0.625rem; }
  @media print, screen and (min-width: 40em) {
    body.single-blog article .logo,
    body.single-event article .logo,
    body.single-post article .logo {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
  body.single-blog article .logo, body.single-blog article .logo:last-child:not(:first-child),
  body.single-event article .logo,
  body.single-event article .logo:last-child:not(:first-child),
  body.single-post article .logo,
  body.single-post article .logo:last-child:not(:first-child) {
    float: left;
    clear: none; }
  body.single-blog article .logo:last-child:not(:first-child),
  body.single-event article .logo:last-child:not(:first-child),
  body.single-post article .logo:last-child:not(:first-child) {
    float: right; }
  @media print, screen and (min-width: 40em) {
    body.single-blog article .logo,
    body.single-event article .logo,
    body.single-post article .logo {
      width: 41.66667%; } }
  @media print, screen and (min-width: 64em) {
    body.single-blog article .logo,
    body.single-event article .logo,
    body.single-post article .logo {
      width: 33.33333%; } }
  body.single-blog article .logo img,
  body.single-event article .logo img,
  body.single-post article .logo img {
    max-width: 12.5rem; }

body.single-blog article .sidebar,
body.single-event article .sidebar,
body.single-post article .sidebar {
  width: 100%;
  float: left;
  padding-right: 0.625rem;
  padding-left: 0.625rem; }
  @media print, screen and (min-width: 40em) {
    body.single-blog article .sidebar,
    body.single-event article .sidebar,
    body.single-post article .sidebar {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
  body.single-blog article .sidebar, body.single-blog article .sidebar:last-child:not(:first-child),
  body.single-event article .sidebar,
  body.single-event article .sidebar:last-child:not(:first-child),
  body.single-post article .sidebar,
  body.single-post article .sidebar:last-child:not(:first-child) {
    float: left;
    clear: none; }
  body.single-blog article .sidebar:last-child:not(:first-child),
  body.single-event article .sidebar:last-child:not(:first-child),
  body.single-post article .sidebar:last-child:not(:first-child) {
    float: right; }
  @media print, screen and (min-width: 40em) {
    body.single-blog article .sidebar,
    body.single-event article .sidebar,
    body.single-post article .sidebar {
      width: 41.66667%; } }
  @media print, screen and (min-width: 64em) {
    body.single-blog article .sidebar,
    body.single-event article .sidebar,
    body.single-post article .sidebar {
      width: 33.33333%; } }
  body.single-blog article .sidebar .related,
  body.single-event article .sidebar .related,
  body.single-post article .sidebar .related {
    margin-top: 2.5rem; }
    body.single-blog article .sidebar .related h2,
    body.single-event article .sidebar .related h2,
    body.single-post article .sidebar .related h2 {
      font-size: 100%;
      border-bottom: 1px solid #0a0a0a;
      padding: 0 0 0.625rem;
      margin-bottom: 0.625rem; }
    body.single-blog article .sidebar .related:first-child,
    body.single-event article .sidebar .related:first-child,
    body.single-post article .sidebar .related:first-child {
      margin-top: 0; }

body.single-cta .full-width {
  padding: 12.5rem 0 3.125rem;
  text-align: center; }
  body.single-cta .full-width h3 {
    text-align: center; }
  body.single-cta .full-width .button, body.single-cta .full-width .wp-block-button .wp-block-button__link, .wp-block-button body.single-cta .full-width .wp-block-button__link, body.single-cta .full-width section.promo-listing.contact .bg-image p:last-child a, section.promo-listing.contact .bg-image p:last-child body.single-cta .full-width a, body.single-cta .full-width section.promo-listing-2.contact .bg-image p:last-child a, section.promo-listing-2.contact .bg-image p:last-child body.single-cta .full-width a {
    margin-top: 3.125rem; }
  body.single-cta .full-width section {
    text-align: left; }

body.single-cta .sidebar {
  padding: 12.5rem 0 3.125rem;
  text-align: center; }
  body.single-cta .sidebar h3 {
    text-align: center; }

body.single-cta section {
  text-align: left; }

main.search-results {
  border-top: 1px solid #cacaca; }
  main.search-results .title {
    padding-top: 3.125rem;
    margin-bottom: 3.125rem; }
  main.search-results article {
    margin-bottom: 3.125rem; }
  main.search-results .row .title,
  main.search-results .row header,
  main.search-results .row .content {
    max-width: 62.5rem !important;
    padding-left: 0.625rem;
    padding-right: 0.625rem; }
    @media print, screen and (min-width: 40em) {
      main.search-results .row .title,
      main.search-results .row header,
      main.search-results .row .content {
        padding-left: 0.9375rem;
        padding-right: 0.9375rem; } }

.row.none {
  display: block !important; }
  .row.none .title,
  .row.none header,
  .row.none .content {
    max-width: 62.5rem !important;
    padding-left: 0.625rem;
    padding-right: 0.625rem; }
    @media print, screen and (min-width: 40em) {
      .row.none .title,
      .row.none header,
      .row.none .content {
        padding-left: 0.9375rem;
        padding-right: 0.9375rem; } }
  .row.none .content {
    width: auto !important; }
    .row.none .content form {
      padding-bottom: 3.125rem; }
  .row.none button {
    background: transparent;
    color: #0a0a0a;
    border: 0; }
    .row.none button:hover {
      background: transparent; }

@media print {
  .show-for-print-only {
    display: block; }
  .reveal {
    background: white !important; }
  main ul:not([class]) li:before {
    background: #6800d2 !important; }
  a:after {
    display: none; }
  blockquote {
    border: 0; }
    blockquote p {
      font-size: 1.3125rem; }
  [data-aos^="fade"] {
    -ms-transform: none !important;
        transform: none !important;
    opacity: 1 !important; }
  .button, .wp-block-button .wp-block-button__link, section.promo-listing.contact .bg-image p:last-child a, section.promo-listing-2.contact .bg-image p:last-child a {
    display: none !important; }
  .bg-image {
    background: none !important; }
    .bg-image:before, .bg-image:after {
      display: none !important; }
  main section {
    padding-top: 2.5rem;
    padding-bottom: 2.5rem; }
  header .sticky-container {
    position: relative;
    height: auto !important; }
  header .top-bar {
    position: relative !important; }
    header .top-bar svg#gamma-logo-desktop .st0 {
      fill: #6800d2 !important; }
    header .top-bar svg#gamma-logo-desktop g path {
      fill: inherit !important; }
    header .top-bar .top-bar-right {
      display: none; }
  section.hero-slide .slide {
    min-height: 0 !important;
    background: none !important; }
    body.page-template-page-contact section.hero-slide .slide {
      background: none !important; }
    section.hero-slide .slide .bg-image {
      min-height: 0 !important; }
    section.hero-slide .slide .content .text {
      margin: 0;
      max-width: none; }
    section.hero-slide .slide .title h1 {
      padding-top: 2.5rem !important; }
  section.intro .content {
    width: 50%; }
  section.promo-listing .row .content.labelled {
    width: 100%;
    max-width: none; }
  section.promo-listing .bg-image {
    min-height: 0; }
  ul.tabs {
    display: none; }
  .tabs-panel {
    display: block; }
  section.tabbed-content .row .intro {
    width: auto; }
  .row.signposts .signpost img {
    display: none; }
  .row.signposts a h3:after {
    display: none; }
  section.signpost {
    border: 1px solid #cacaca; }
    section.signpost .row .content {
      width: auto; }
    section.signpost.testimonials {
      border-bottom: 1px solid #cacaca; }
      section.signpost.testimonials .row .content {
        width: 50%; }
  section.news .row .article {
    border: 1px solid #cacaca; }
  section.news .row .insights .article a h2 {
    font-size: 2rem; }
  section.news.products .news .article {
    border: 1px solid #8a8a8a; }
    section.news.products .news .article .bg-image:before {
      display: none; }
  section.showcase .row .content > img,
  section.showcase .row .content > picture {
    display: none; }
  section.split-signposts .signpost a h3 {
    color: #fefefe !important;
    font-size: 2.625rem !important; }
  section.split-signposts .signpost .row .content {
    z-index: 2;
    position: relative; }
  section.split-signposts.panels .images .article {
    border: 1px solid #cacaca; }
    section.split-signposts.panels .images .article a img, section.split-signposts.panels .images .article .no-link img {
      display: none; } }

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFwcC5jc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2ZvdW5kYXRpb24uc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdXRpbC9fYnJlYWtwb2ludC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19yZXZlYWwuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9hb3Mvc3JjL3Nhc3MvX2NvcmUuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9hb3Mvc3JjL3Nhc3MvX2Vhc2luZy5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Fvcy9zcmMvc2Fzcy9fYW5pbWF0aW9ucy5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy92ZW5kb3Ivbm9ybWFsaXplLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL19nbG9iYWwuc2NzcyIsIl9zZXR0aW5ncy5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy91dGlsL191bml0LnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3V0aWwvX21peGlucy5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19mbGV4LWdyaWQuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fcm93LnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2d1dHRlci5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19jb2x1bW4uc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fcG9zaXRpb24uc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdHlwb2dyYXBoeS9fYmFzZS5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy90eXBvZ3JhcGh5L19oZWxwZXJzLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3R5cG9ncmFwaHkvX2FsaWdubWVudC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy90eXBvZ3JhcGh5L19wcmludC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19idXR0b24uc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZm9ybXMvX3RleHQuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZm9ybXMvX2NoZWNrYm94LnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2Zvcm1zL19sYWJlbC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9mb3Jtcy9faGVscC10ZXh0LnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2Zvcm1zL19pbnB1dC1ncm91cC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9mb3Jtcy9fZmllbGRzZXQuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZm9ybXMvX3NlbGVjdC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9mb3Jtcy9fZXJyb3Iuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fYWNjb3JkaW9uLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2Nsb3NlLWJ1dHRvbi5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19tZW51LnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX21lbnUtaWNvbi5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19kcmlsbGRvd24uc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fZHJvcGRvd24tbWVudS5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19yZXNwb25zaXZlLWVtYmVkLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3V0aWwvX21hdGguc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fbWVkaWEtb2JqZWN0LnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX29mZi1jYW52YXMuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fcGFnaW5hdGlvbi5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19zdGlja3kuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fdGFibGUuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdXRpbC9fY29sb3Iuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fdGFicy5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL190aXRsZS1iYXIuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fdG9wLWJhci5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL192aXNpYmlsaXR5LnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2ZsZXguc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdXRpbC9fZmxleC5zY3NzIiwiYXBwLnNjc3MiLCJ2ZW5kb3Ivc2VsZWN0Mi9fY29yZS5zY3NzIiwidmVuZG9yL3NlbGVjdDIvX3NpbmdsZS5zY3NzIiwidmVuZG9yL3NlbGVjdDIvX211bHRpcGxlLnNjc3MiLCJ2ZW5kb3Ivc2VsZWN0Mi9fZHJvcGRvd24uc2NzcyIsInZlbmRvci9zZWxlY3QyL3RoZW1lL2RlZmF1bHQvbGF5b3V0LnNjc3MiLCJ2ZW5kb3Ivc2VsZWN0Mi90aGVtZS9kZWZhdWx0L19zaW5nbGUuc2NzcyIsInZlbmRvci9zZWxlY3QyL3RoZW1lL2RlZmF1bHQvX211bHRpcGxlLnNjc3MiLCJ2ZW5kb3Ivc2xpY2svX3NsaWNrLnNjc3MiLCJ2ZW5kb3Ivc2xpY2svX3NsaWNrLXRoZW1lLnNjc3MiLCJnbG9iYWwvX2FjY2Vzc2liaWxpdHkuc2NzcyIsImdsb2JhbC9fd3AtYWRtaW4uc2NzcyIsImdsb2JhbC9fd3Atb3ZlcnJpZGVzLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3h5LWdyaWQvX2dyaWQuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MveHktZ3JpZC9fZ3V0dGVycy5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy94eS1ncmlkL19sYXlvdXQuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MveHktZ3JpZC9fY2VsbC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL190aHVtYm5haWwuc2NzcyIsImdsb2JhbC9fZ3V0ZW5iZXJnLnNjc3MiLCJtb2R1bGVzL19uYXZpZ2F0aW9uLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX3NpemUuc2NzcyIsIm1vZHVsZXMvX2NvbnRlbnQuc2NzcyIsIm1vZHVsZXMvX2Zvb3Rlci5zY3NzIiwibW9kdWxlcy9fZWRpdG9yLXN0eWxlLnNjc3MiLCJjb21wb25lbnRzL19idXR0b25zLnNjc3MiLCJwYXR0ZXJucy9fY2Fyb3VzZWwuc2NzcyIsInBhdHRlcm5zL19jb250YWN0LXVzLnNjc3MiLCJwYXR0ZXJucy9fY29udGFjdC1sb2NhdGlvbnMuc2NzcyIsInBhdHRlcm5zL19nZHByLWNvb2tpZS5zY3NzIiwicGF0dGVybnMvX2hlcm8tc2xpZGUuc2NzcyIsInBhdHRlcm5zL19pbnRyby5zY3NzIiwicGF0dGVybnMvX2NvbHVtbmVkLXRleHQuc2NzcyIsInBhdHRlcm5zL19hY2NvcmRpb24uc2NzcyIsInBhdHRlcm5zL19zaWducG9zdC5zY3NzIiwicGF0dGVybnMvX3Rlc3RpbW9uaWFscy5zY3NzIiwicGF0dGVybnMvX2xvY2F0aW9ucy5zY3NzIiwicGF0dGVybnMvX3NwbGl0LXNpZ25wb3N0cy5zY3NzIiwicGF0dGVybnMvX3Nob3djYXNlLnNjc3MiLCJwYXR0ZXJucy9fcHJvbW8tbGlzdGluZy5zY3NzIiwicGF0dGVybnMvX3Byb21vLWxpc3RpbmctMi5zY3NzIiwicGF0dGVybnMvX3NwbGl0LnNjc3MiLCJwYXR0ZXJucy9faGlnaGxpZ2h0LXBhbmVsLnNjc3MiLCJwYXR0ZXJucy9fY2FzZS1zdHVkaWVzLnNjc3MiLCJwYXR0ZXJucy9fbmV3cy5zY3NzIiwicGF0dGVybnMvX3Byb2R1Y3RzLnNjc3MiLCJwYXR0ZXJucy9fYmxvZy1hcnRpY2xlcy5zY3NzIiwicGF0dGVybnMvX3RhYmJlZC1jb250ZW50LnNjc3MiLCJwYXR0ZXJucy9fdXNlci1ndWlkZXMuc2NzcyIsInBhdHRlcm5zL192aWRlby1saXN0aW5nLnNjc3MiLCJ0ZW1wbGF0ZXMvX3NpbmdsZS1wcm9kdWN0LnNjc3MiLCJ0ZW1wbGF0ZXMvX3NpbmdsZS1wYXJ0bmVyLnNjc3MiLCJ0ZW1wbGF0ZXMvX3NpbmdsZS1pbnNpZ2h0LnNjc3MiLCJ0ZW1wbGF0ZXMvX3NpbmdsZS1ibG9nLnNjc3MiLCJ0ZW1wbGF0ZXMvX3NpbmdsZS1jdGEuc2NzcyIsInRlbXBsYXRlcy9fc2VhcmNoLXJlc3VsdHMuc2NzcyIsIl9wcmludC5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGlCQUFpQjtBQ0FqQjs7Ozs7R0FLRztBQ2lLRztFQ3pISjtJQUNFLFlBQVc7SUFDWCxXQUFVO0lBQ1YsZUFBYyxFQUNmLEVBQUE7O0FDOUNDO0VBRUUsMEJBQXFCLEVBQ3RCOztBQUVEO0VBRUUsb0JBQW1CLEVBS3BCO0VBUEQ7SUFLSSx1QkFBa0IsRUFDbkI7O0FBWEg7RUFFRSwyQkFBcUIsRUFDdEI7O0FBRUQ7RUFFRSxvQkFBbUIsRUFLcEI7RUFQRDtJQUtJLHdCQUFrQixFQUNuQjs7QUFYSDtFQUVFLDJCQUFx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ZCxpQkFBZ0I7RUFDaEIsZ0JBQWUsRUFDaEI7O0FBS0c7RUFDRSx1QkdwSytDO01Ib0svQyxtQkdwSytDO0VIcUsvQyxvQkdySytDLEVIc0toRDs7QUFLRDtFSXRJSixnQkR4Q2dDLEVIZ0wzQjs7QUFWRDtFQUNFLHdCR3BLK0M7TUhvSy9DLG9CR3BLK0M7RUhxSy9DLHFCR3JLK0MsRUhzS2hEOztBQUtEO0VJdElKLHNCRHJDcUQsRUg2S2hEOztBQVZEO0VBQ0Usa0JHcEsrQztNSG9LL0MsY0dwSytDO0VIcUsvQyxlR3JLK0MsRUhzS2hEOztBQUtEO0VJdElKLHVCRHJDcUQsRUg2S2hEOztBQVZEO0VBQ0Usd0JHcEsrQztNSG9LL0Msb0JHcEsrQztFSHFLL0MscUJHcksrQyxFSHNLaEQ7O0FBS0Q7RUl0SUosaUJEckNxRCxFSDZLaEQ7O0FBVkQ7RUFDRSx3QkdwSytDO01Ib0svQyxvQkdwSytDO0VIcUsvQyxxQkdySytDLEVIc0toRDs7QUFLRDtFSXRJSix1QkRyQ3FELEVINktoRDs7QUFWRDtFQUNFLGtCR3BLK0M7TUhvSy9DLGNHcEsrQztFSHFLL0MsZUdySytDLEVIc0toRDs7QUFLRDtFSXRJSix1QkRyQ3FELEVINktoRDs7QUFWRDtFQUNFLHdCR3BLK0M7TUhvSy9DLG9CR3BLK0M7RUhxSy9DLHFCR3JLK0MsRUhzS2hEOztBQUtEO0VJdElKLGlCRHJDcUQsRUg2S2hEOztBQVZEO0VBQ0Usd0JHcEsrQztNSG9LL0Msb0JHcEsrQztFSHFLL0MscUJHcksrQyxFSHNLaEQ7O0FBS0Q7RUl0SUosdUJEckNxRCxFSDZLaEQ7O0FBVkQ7RUFDRSxrQkdwSytDO01Ib0svQyxjR3BLK0M7RUhxSy9DLGVHcksrQyxFSHNLaEQ7O0FBS0Q7RUl0SUosdUJEckNxRCxFSDZLaEQ7O0FBVkQ7RUFDRSx3QkdwSytDO01Ib0svQyxvQkdwSytDO0VIcUsvQyxxQkdySytDLEVIc0toRDs7QUFLRDtFSXRJSixpQkRyQ3FELEVINktoRDs7QUFWRDtFQUNFLHdCR3BLK0M7TUhvSy9DLG9CR3BLK0M7RUhxSy9DLHFCR3JLK0MsRUhzS2hEOztBQUtEO0VJdElKLHVCRHJDcUQsRUg2S2hEOztBQVZEO0VBQ0UsbUJHcEsrQztNSG9LL0MsZUdwSytDO0VIcUsvQyxnQkdySytDLEVIc0toRDs7QUFLRDtFSXRJSix1QkRyQ3FELEVINktoRDs7QUFLRDtFQTFHSixvQkFBZTtNQUFmLGdCQUFlLEVBNEdWO0VBMUdMO0lBR0UsbUJBRnNCO1FBRXRCLGVBRnNCO0lBR3RCLGdCQUhzQixFQUl2Qjs7QUFtR0c7RUExR0osb0JBQWU7TUFBZixnQkFBZSxFQTRHVjtFQTFHTDtJQUdFLGtCQUZzQjtRQUV0QixjQUZzQjtJQUd0QixlQUhzQixFQUl2Qjs7QUFtR0c7RUExR0osb0JBQWU7TUFBZixnQkFBZSxFQTRHVjtFQTFHTDtJQUdFLHdCQUZzQjtRQUV0QixvQkFGc0I7SUFHdEIscUJBSHNCLEVBSXZCOztBQW1HRztFQTFHSixvQkFBZTtNQUFmLGdCQUFlLEVBNEdWO0VBMUdMO0lBR0Usa0JBRnNCO1FBRXRCLGNBRnNCO0lBR3RCLGVBSHNCLEVBSXZCOztBQW1HRztFQTFHSixvQkFBZTtNQUFmLGdCQUFlLEVBNEdWO0VBMUdMO0lBR0Usa0JBRnNCO1FBRXRCLGNBRnNCO0lBR3RCLGVBSHNCLEVBSXZCOztBQW1HRztFQTFHSixvQkFBZTtNQUFmLGdCQUFlLEVBNEdWO0VBMUdMO0lBR0Usd0JBRnNCO1FBRXRCLG9CQUZzQjtJQUd0QixxQkFIc0IsRUFJdkI7O0FBbUdHO0VBMUdKLG9CQUFlO01BQWYsZ0JBQWUsRUE0R1Y7RUExR0w7SUFHRSx3QkFGc0I7UUFFdEIsb0JBRnNCO0lBR3RCLHFCQUhzQixFQUl2Qjs7QUFtR0c7RUExR0osb0JBQWU7TUFBZixnQkFBZSxFQTRHVjtFQTFHTDtJQUdFLG9CQUZzQjtRQUV0QixnQkFGc0I7SUFHdEIsaUJBSHNCLEVBSXZCOztBQStIQztFRXJOQSxpQkp1RVM7RUl0RVQsZ0JKc0VTLEVFK0ltQzs7QUFHNUM7RUV6TkEsd0JBRnFDO0VBR3JDLHVCQUhxQyxFRjROZ0I7O0FWMUVuRDtFVTBCQTtJQUNFLHVCR3BLK0M7UUhvSy9DLG1CR3BLK0M7SUhxSy9DLG9CR3JLK0MsRUhzS2hEO0VBS0Q7SUl0SUosZ0JEeENnQyxFSGdMM0I7RUFWRDtJQUNFLHdCR3BLK0M7UUhvSy9DLG9CR3BLK0M7SUhxSy9DLHFCR3JLK0MsRUhzS2hEO0VBS0Q7SUl0SUosc0JEckNxRCxFSDZLaEQ7RUFWRDtJQUNFLGtCR3BLK0M7UUhvSy9DLGNHcEsrQztJSHFLL0MsZUdySytDLEVIc0toRDtFQUtEO0lJdElKLHVCRHJDcUQsRUg2S2hEO0VBVkQ7SUFDRSx3QkdwSytDO1FIb0svQyxvQkdwSytDO0lIcUsvQyxxQkdySytDLEVIc0toRDtFQUtEO0lJdElKLGlCRHJDcUQsRUg2S2hEO0VBVkQ7SUFDRSx3QkdwSytDO1FIb0svQyxvQkdwSytDO0lIcUsvQyxxQkdySytDLEVIc0toRDtFQUtEO0lJdElKLHVCRHJDcUQsRUg2S2hEO0VBVkQ7SUFDRSxrQkdwSytDO1FIb0svQyxjR3BLK0M7SUhxSy9DLGVHcksrQyxFSHNLaEQ7RUFLRDtJSXRJSix1QkRyQ3FELEVINktoRDtFQVZEO0lBQ0Usd0JHcEsrQztRSG9LL0Msb0JHcEsrQztJSHFLL0MscUJHcksrQyxFSHNLaEQ7RUFLRDtJSXRJSixpQkRyQ3FELEVINktoRDtFQVZEO0lBQ0Usd0JHcEsrQztRSG9LL0Msb0JHcEsrQztJSHFLL0MscUJHcksrQyxFSHNLaEQ7RUFLRDtJSXRJSix1QkRyQ3FELEVINktoRDtFQVZEO0lBQ0Usa0JHcEsrQztRSG9LL0MsY0dwSytDO0lIcUsvQyxlR3JLK0MsRUhzS2hEO0VBS0Q7SUl0SUosdUJEckNxRCxFSDZLaEQ7RUFWRDtJQUNFLHdCR3BLK0M7UUhvSy9DLG9CR3BLK0M7SUhxSy9DLHFCR3JLK0MsRUhzS2hEO0VBS0Q7SUl0SUosaUJEckNxRCxFSDZLaEQ7RUFWRDtJQUNFLHdCR3BLK0M7UUhvSy9DLG9CR3BLK0M7SUhxSy9DLHFCR3JLK0MsRUhzS2hEO0VBS0Q7SUl0SUosdUJEckNxRCxFSDZLaEQ7RUFWRDtJQUNFLG1CR3BLK0M7UUhvSy9DLGVHcEsrQztJSHFLL0MsZ0JHcksrQyxFSHNLaEQ7RUFLRDtJSXRJSix1QkRyQ3FELEVINktoRDtFQUtEO0lBMUdKLG9CQUFlO1FBQWYsZ0JBQWUsRUE0R1Y7SUExR0w7TUFHRSxtQkFGc0I7VUFFdEIsZUFGc0I7TUFHdEIsZ0JBSHNCLEVBSXZCO0VBbUdHO0lBMUdKLG9CQUFlO1FBQWYsZ0JBQWUsRUE0R1Y7SUExR0w7TUFHRSxrQkFGc0I7VUFFdEIsY0FGc0I7TUFHdEIsZUFIc0IsRUFJdkI7RUFtR0c7SUExR0osb0JBQWU7UUFBZixnQkFBZSxFQTRHVjtJQTFHTDtNQUdFLHdCQUZzQjtVQUV0QixvQkFGc0I7TUFHdEIscUJBSHNCLEVBSXZCO0VBbUdHO0lBMUdKLG9CQUFlO1FBQWYsZ0JBQWUsRUE0R1Y7SUExR0w7TUFHRSxrQkFGc0I7VUFFdEIsY0FGc0I7TUFHdEIsZUFIc0IsRUFJdkI7RUFtR0c7SUExR0osb0JBQWU7UUFBZixnQkFBZSxFQTRHVjtJQTFHTDtNQUdFLGtCQUZzQjtVQUV0QixjQUZzQjtNQUd0QixlQUhzQixFQUl2QjtFQW1HRztJQTFHSixvQkFBZTtRQUFmLGdCQUFlLEVBNEdWO0lBMUdMO01BR0Usd0JBRnNCO1VBRXRCLG9CQUZzQjtNQUd0QixxQkFIc0IsRUFJdkI7RUFtR0c7SUExR0osb0JBQWU7UUFBZixnQkFBZSxFQTRHVjtJQTFHTDtNQUdFLHdCQUZzQjtVQUV0QixvQkFGc0I7TUFHdEIscUJBSHNCLEVBSXZCO0VBbUdHO0lBMUdKLG9CQUFlO1FBQWYsZ0JBQWUsRUE0R1Y7SUExR0w7TUFHRSxvQkFGc0I7VUFFdEIsZ0JBRnNCO01BR3RCLGlCQUhzQixFQUl2QixFQUFBOztBVjBERztFVWlERTtJQUNFLGtCQTVKTTtRQTRKTixjQTVKTSxFQTZKUCxFQUFBOztBQUtEO0VBRUksbUJBQTJCO01BQTNCLGVBQTJCLEVBSzVCO0VWL0RMO0lVd0RFO01BS00sa0JBdktFO1VBdUtGLGNBdktFLEVBeUtMLEVBQUE7O0FWL0RMO0VVcUVGO0lFck5BLGlCSnVFUztJSXRFVCxnQkpzRVMsRUUrSW1DO0VBRzVDO0lFek5BLHlCQUZxQztJQUdyQyx3QkFIcUMsRUY0TmdCLEVBQUE7O0FWMUVuRDtFVTBCQTtJQUNFLHVCR3BLK0M7UUhvSy9DLG1CR3BLK0M7SUhxSy9DLG9CR3JLK0MsRUhzS2hEO0VBS0Q7SUl0SUosZ0JEeENnQyxFSGdMM0I7RUFWRDtJQUNFLHdCR3BLK0M7UUhvSy9DLG9CR3BLK0M7SUhxSy9DLHFCR3JLK0MsRUhzS2hEO0VBS0Q7SUl0SUosc0JEckNxRCxFSDZLaEQ7RUFWRDtJQUNFLGtCR3BLK0M7UUhvSy9DLGNHcEsrQztJSHFLL0MsZUdySytDLEVIc0toRDtFQUtEO0lJdElKLHVCRHJDcUQsRUg2S2hEO0VBVkQ7SUFDRSx3QkdwSytDO1FIb0svQyxvQkdwSytDO0lIcUsvQyxxQkdySytDLEVIc0toRDtFQUtEO0lJdElKLGlCRHJDcUQsRUg2S2hEO0VBVkQ7SUFDRSx3QkdwSytDO1FIb0svQyxvQkdwSytDO0lIcUsvQyxxQkdySytDLEVIc0toRDtFQUtEO0lJdElKLHVCRHJDcUQsRUg2S2hEO0VBVkQ7SUFDRSxrQkdwSytDO1FIb0svQyxjR3BLK0M7SUhxSy9DLGVHcksrQyxFSHNLaEQ7RUFLRDtJSXRJSix1QkRyQ3FELEVINktoRDtFQVZEO0lBQ0Usd0JHcEsrQztRSG9LL0Msb0JHcEsrQztJSHFLL0MscUJHcksrQyxFSHNLaEQ7RUFLRDtJSXRJSixpQkRyQ3FELEVINktoRDtFQVZEO0lBQ0Usd0JHcEsrQztRSG9LL0Msb0JHcEsrQztJSHFLL0MscUJHcksrQyxFSHNLaEQ7RUFLRDtJSXRJSix1QkRyQ3FELEVINktoRDtFQVZEO0lBQ0Usa0JHcEsrQztRSG9LL0MsY0dwSytDO0lIcUsvQyxlR3JLK0MsRUhzS2hEO0VBS0Q7SUl0SUosdUJEckNxRCxFSDZLaEQ7RUFWRDtJQUNFLHdCR3BLK0M7UUhvSy9DLG9CR3BLK0M7SUhxSy9DLHFCR3JLK0MsRUhzS2hEO0VBS0Q7SUl0SUosaUJEckNxRCxFSDZLaEQ7RUFWRDtJQUNFLHdCR3BLK0M7UUhvSy9DLG9CR3BLK0M7SUhxSy9D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LEVRdU5wQjs7QUFqQ0Q7RUFJSSxxQlB2UDZDO0VPbVE3QyxpQlJ2TVc7RVErTVgsY0FBYTtFQU9iLHNCUnJOaUIsRVF1TnBCOztBQWpDRDtFQUlJLGdCUHZQNkM7RU9tUTdDLGlCUnZNVztFUStNWCxjQUFhO0VBT2Isc0JSck5pQixFUXVOcEI7O0FmdE1IO0VlcUtFO0lBSUksZ0JQdlA2QyxFT29SaEQ7RUFqQ0Q7SUFJSSxvQlB2UDZDLEVPb1JoRDtFQWpDRDtJQUlJLG1CUHZQNkMsRU9vUmhEO0VBakNEO0lBSUksb0JQdlA2QyxFT29SaEQ7RUFqQ0Q7SUFJSSxtQlB2UDZDLEVPb1JoRDtFQWpDRDtJQUlJLG9CUHZQNkMsRU9vUmhELEVBQUE7O0FWcFRQO0VVMlRFLHFCQUFvQjtFQUNwQixlUjNTZ0I7RVE0U2hCLHNCUi9MeUI7RVFpTXpCLGdCQUFlLEVBYWhCO0VBbEJEO0lBU0ksZVJ0TTJELEVRME01RDtFQWJIO0lBZ0JJLFVBQVMsRUFDVjs7QVY5Vkg7RVVtV0UsWUFBVztFQUVYLGlCUGxUcUQ7RU9tVHJELFVBQVM7RUFDVCxxQlJsTnlCO0VRb056QixjQUFhO0VBQ2IsZ0JBQWU7RUFDZixpQ1J6VGlCO0VRMFRqQixlQUFjLEVBQ2Y7O0FBR0Q7OztFQUdFLG9CUjVPMEI7RVE2TzFCLDZCUjNOeUI7RVE0TnpCLGlCUi9Pc0IsRVFnUHZCOztBQUdEO0VBQ0UsbUJBQWtCLEVBQ25COztBQUdEO0VBQ0UscUJSck9zQjtFUXNPdEIsc0JSeE9rQixFUXlPbkI7O0FBR0Q7RUFDRSxxQlIzT3NCLEVRNE92Qjs7QUFHRDtFQUVJLHFCUmhQMkI7RVFpUDNCLGlCQUFnQixFQUNqQjs7QUFJSDtFQUNFLG9CUnRQeUIsRVE0UDFCO0VBUEQ7SUFJSSxzQlJ2UDhCO0lRd1A5QixpQlJ0VmtCLEVRdVZuQjs7QUFJSDtFQUNFLGlCUnJSMEI7RVFzUjFCLHVDUDFXcUQ7RU8yV3JELCtCUjVXaUIsRVFrWGxCO0VBVEQ7SUFNSSxpQlIzUm9CO0lRNFJwQixlUi9XYSxFUWdYZDs7QUFJSDtFQUNFLGVBQWM7RUFDZCxxQlB0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LG1CakJvRVc7RWlCbkVYLGlCakI4RHVEO0VpQjdEdkQsMEJsQjREbUIsRWtCcENsQjtFQXRCRDtJQUVFLFVBQVM7SUFDVCx3QmpCd0RxRDtJaUJ2RHJELHFCakJ1RHFELEVpQnREdEQ7O0FuQjhKRDtFb0J6S0Esa0JBRnNKO0VBR3RKLGlCbEJnRXVEO0VrQi9EdkQsZ0JuQjBhK0I7RW1CeGEvQix5QkFBZ0I7VUFBaEIsaUJBQWdCO0VBQ2hCLDBCbkIyRG1CO0VtQjFEbkIsdUJsQjJEdUQ7RWtCMUR2RCwwQm5CNERhO0VtQjFEYixxQm5CMFp5QjtFbUJ6WnpCLGdCbEJ1RHVEO0VrQnREdkQsaUJuQmlFd0I7RW1CaEV4QixpQm5Cb0NxQjtFbUJuQ3JCLGVuQnFEYTtFRTZEYix5T0FBeU47RWlCOUd2TiwrQkFBOEI7RUFDOUIsd0NBQTBEO0VBQzFELDZCQUE0QjtFQUM1Qix5QkFBd0I7RUFFeEIsc0JBQXVEO0VBSXZELDREbkJzWjhELEVtQm5YL0Q7RWpCb0VEO0lId0NBO01HckNJLHdXQUF1VyxFaUJ2RTFXLEVBQUE7RUEvQkQ7SUFDRSxjQUFhO0lBQ2IsMEJuQmlDZTtJbUJoQ2YsMEJuQmtDVztJbUJqQ1gsNEJuQjhCaUI7SW1CM0JmLDREbkIyWTRELEVtQnpZL0Q7RUFHRDtJQUNFLDBCbkJvQmdCO0ltQm5CaEIsb0JuQm1ZK0IsRW1CbFloQztFQUdEO0lBQ0UsY0FBYSxFQUNkO0VBRUQ7SUFDRSxhQUFZO0lBQ1osdUJBQXNCLEVBQ3ZCOztBQ2xDRDtFQUNFLHNCcEJ1Q1k7RW9CdENaLDBCQUErRCxFQUtoRTtFQUhDO0lBQ0UsZXBCbUNVLEVvQmxDWDtFQUZEO0lBQ0UsZXBCbUNVLEVvQmxDWDs7QUF5QkQ7RUFDRSxlcEJRVSxFb0JQWDs7QUFJSDtFQXpCQSxjQUFhO0VBQ2Isb0JBQWdDO0VBQ2hDLG9CbkI4QnVEO0VtQjVCdkQsbUJuQjRCdUQ7RW1CM0J2RCxpQnBCd0NzQjtFb0J2Q3RCLGVwQnNCYyxFb0JHYjtFQU5EO0lBSUksZUFBYyxFQUNmOztBQ3NESDtFQXhGQSxlQUFnQztFQUNoQyx3QnJC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Q1gsZ0I5QzRFcUQ7SThDM0VyRCxpQkFBZ0I7SUFDaEIsb0I5QzBFcUQ7SThDekVyRCxzQjlDeUVxRCxFOENyRXREO0lEbkJIO01DaUJNLGNBQWEsRUFDZDtFRGxCTDtJQ3NCSSxnQkFBZTtJQUNmLGFBQVk7SUFDWixrQkFBaUIsRUFDbEI7RUR6Qkg7SUM0QkksWUFBVyxFQUNaO0VEN0JIO0lDZ0NJLGdCOUN3RHFEO0k4Q3REckQsbUJBQWtCO0lBRWxCLE9BQU07SUFDTixnQjlDbURxRDtJOENqRHJELGU5Q2lEcUQsRThDaEN0RDtJRHhESDtNQzJDUSxZQUFXO01BQ2Isc0JBQXFCO01BQ3JCLGdCOUMyQ21EO004QzFDbkQsaUI5QzBDbUQ7TThDekNqRCxxQjlDeUNpRDtNOEN4Q2pELHVCOUN3Q2lEO004Q3ZDbkQsdUJBQXNCO01BQ3RCLGdDL0N1QmM7TStDdEJkLGlDL0NzQmM7TStDckJkLCtCQUEwQjtVQUExQiwyQkFBMEI7TUFDMUIsNkJBQXdCO1VBQXhCLHlCQUF3QixFQUN2Qjs7QUR0RFA7RUM4RE0sWUFBVyxFQUNaOztBRC9ETDtFQ2tFTSxVQUFTO0VBQ1QsWUFBVyxFQUNaOztBRHBFTDtFQzBFSSx1QkFBc0I7RUFDdEIsZ0JBQWU7RUFDZixhQUFZLEVBS2I7RURqRkg7SUMrRU0sY0FBYSxFQUNkOztBRGhGTDtFQ3lGVSxzQjlDRCtDO0U4Q0VqRCxnQkFBZTtFQUNmLGlCQUFnQjtFQUVoQiw4Qi9DcEJZO0UrQ3FCWiwrQi9DckJZLEUrQ3NCWDs7QUQvRlQ7RUVDRSwwQmhEeUZhO0VnRHhGYix5Q2hEcUZtQjtFZ0RwRm5CLGlCQUFnQjtFQUNoQixhQUFZLEVBb0ViO0VGeEVEO0lFTUksY0FBYTtJQUNiLDBCaERnRmlCLEVnRC9FbEI7RUZSSDtJRVdJLHVCQUFzQjtJQUN0QixnQi9DNEVxRDtJK0MzRXJELGlCQUFnQjtJQUNoQixVQUFTO0lBQ1QsZ0JBQWU7SUFDZixZQUFXLEVBUVo7SUZ4Qkg7TUVtQk0saUJBQWdCLEVBQ2pCO0lGcEJMO01Fc0JNLGNBQWEsRUFDZDtFRnZCTDtJRTJCSSxZQUFX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YTtJMERuRGIsdUJ6RGlEdUQ7SXlEaER2RCw0QzFEaURhO0kwRC9DYixlQUFjO0lBSWQsc0MxRDR3QjhDLEVxRHR3QjdDO0lLSkQ7TUFFRSwrQzFEdUJnQixFMER0QmpCO0lBRUQ7TUFDRSxpQkFBZ0IsRUFDakI7RUx4Qkg7O0lLR0Usc0JBQXFCO0lBQ3JCLGdCQUFlO0lBQ2Ysb0IxRDREa0I7STBEMURsQiwwQjFEb0RhO0kwRG5EYix1QnpEaUR1RDtJeURoRHZELDRDMURpRGE7STBEL0NiLGVBQWMsRUxjYjs7QU14REg7O0VBRUU7QUFFRixpQ0FBaUM7QUFHL0I7RUFDSSwwQjNEaUVjLEUyRGhFakI7O0FBRUQ7RUFDSSxlM0Q2RGMsRTJENURqQjs7QUFORDtFQUNJLDBCM0RxRWMsRTJEcEVqQjs7QUFFRDtFQUNJLGUzRGlFYyxFMkRoRWpCOztBQU5EO0VBQ0ksMEIzRDBFWSxFMkR6RWY7O0FBRUQ7RUFDSSxlM0RzRVksRTJEckVmOztBQU5EO0VBQ0ksMEIzRDJFWSxFMkQxRWY7O0FBRUQ7RUFDSSxlM0R1RVksRTJEdEVmOztBQU5EO0VBQ0ksMEIzRDRFVSxFMkQzRWI7O0FBRUQ7RUFDSSxlM0R3RVUsRTJEdkViOztBQUdILHFCQUFxQjtBQUNyQjtFQVFVLDBCM0RnRFUsRTJEL0NiOztBQVRQO0VBWVUsZTNENENVLEUyRDNDYjs7QUFiUDtFQVFVLDBCM0RvRFUsRTJEbkRiOztBQVRQO0VBWVUsZTNEZ0RVLEUyRC9DYjs7QUFiUDtFQVFVLDBCM0R5RFEsRTJEeERYOztBQVRQO0VBWVUsZTNEcURRLEUyRHBEWDs7QUFiUDtFQVFVLDBCM0QwRFEsRTJEekRYOztBQVRQO0VBWVUsZTNEc0RRLEUyRHJEWDs7QUFiUDtFQVFVLDBCM0QyRE0sRTJEMURUOztBQVRQO0VBWVUsZTNEdURNLEUyRHREVDs7QUFiUDtFQW1CRSxpQkFBZ0IsRUFDaEI7O0FBbUJGLG1CQUFtQjtBQUNuQjtFL0NnQ0Usc0JBQXFCO0VBQ3JCLHVCQUFzQjtFQUN0QixtQlowTWtDO0VZaE1oQyxrQ1hicUQ7RVdnQnZELDhCQUE2QjtFQUM3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LHVCQUFzQixFQUN2Qjs7QUFFRDs7RUFFRSxtQjdEK0J1RDtFNkQ5QnZELGlCOUQwQ3dCO0U4RHpDeEIseUI3RDZCdUQsRTZEekJ4RDtFckV1R0s7SXFFL0dOOztNQU1JLG9CN0QyQnFELEU2RHpCeEQsRUFBQTs7QUFDRDtFQUNFLFlBQVcsRUFJWjs7QUFDRDtFQUNFLHNCN0RpQnVEO0U2RGhCdkQseUI3RGdCdUQ7RTZEZnZELGlCQUFnQixFQWtCakI7RXJFMkVLO0lxRWhHTjtNQUtJLGtCN0RhcUQ7TTZEWnJELHFCN0RZcUQsRTZER3hELEVBQUE7RUFyQkQ7SUFTSSxlOURXVyxFOERBWjtJQXBCSDtNQVdNLG9COURTUztNOERSVCxlOURUYyxFOERhZjtNQWhCTDtRQWNRLG9COURQWSxFOERRYjtJQWZQO01Ba0JNLGU5RFhjLEU4RFlmOztBbERnTEg7RWtENUtBLGlCOURPd0IsRThETnpCOztBQUNEO0VBQ0UsaUJBQWdCO0VBQ2hCLGlCQUFnQixFQTJCakI7RUE3QkQ7SUFJSSxtQkFBa0I7SUFDbEIsa0I3RFBTLEU2RDhCVjtJQTVCSDtNQU9NLFlBQVc7TUFDWCxlQUFjO01BQ2QsbUJBQWtCO01BQ2xCLGlCN0RqQm1EO002RGtCbkQsWTdEbEJtRDtNNkRtQm5ELGdCN0RuQm1EO002RG9CbkQsaUI3RHBCbUQ7TTZEcUJuRCx1QjdEckJtRDtNNkRzQm5ELG9COURyQ2MsRThEc0NmO0lBaEJMO01BbUJRLGlCQUFnQjtNQUNoQixrQjdEM0JpRDtNNkQ0QmpELGE3RDVCaUQsRTZENkJsRDtJQXRCUDtNQXlCTSw0QkFBMkI7TUFDM0IsaUJBQWdCLEVBQ2pCOztBQUdMO0VBSVEsb0I5RHZDTyxFOER3Q1I7O0F0RDhUTDtFc0R6VEEsZUFBYztFQUNkLFdBQVUsRUF1Q1g7RXREaVJDO0lzRHJURSxlOURsRFcsRThEbURaO0VBTkg7SUFRSSxtQkFBa0I7SUFDbEIsaUJBQWdCO0lBQ2hCLGlCOUQ1Q3NCO0k4RDZDdEIsbUI3RHpEcUQsRTZEb0V0RDtJckVVRztNcUVoQ047UUFhTSxvQjdEM0RtRCxFNkRvRXRELEVB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WUFTSiwyQkFBMEIsRUFFN0IsRUFBQTtNQXhUUDtRQTBUUSxzQnJFbE9pRCxFcUVtT2xEO01BM1RQO1FBK1RZLGdFQUE2RSxFQUM5RTtNQWhVWDtRQWtVWSwyQnRFclBRLEVzRXNQVDtJN0V4Skw7TTZFM0tOO1FBeVVRLGtCQUFpQixFQUVwQixFQUFBO0lBM1VMO01UY0UsWXZEeUIyRDtNQXFCM0QsWVA4RHlEO01NcEd2RCx3QkFGcUM7TUFHckMsdUJBSHFDLEVpRThWcEM7TTdFNU1DO1E2RXRLTjtVakVzQkkseUJBRnFDO1VBR3JDLHdCQUhxQyxFaUU4VnBDLEVBQUE7TS9EL1ZEO1FBQ0UsWVJzR3FEO1FRckdyRCxZQUFXLEVBQ1o7TUFJQztRQUNFLGFSZ0dvRCxFUS9GckQ7TStENUJQO1FBK1VRLGlCQUFnQjtRQUNoQix3QnJFeFBpRCxFcUV5UGxEO01BalZQO1FBbVZRLGVBQWM7UUFDZCx1QnJFNVBpRDtRcUU2UGpELGlCdEVqUGtCO1FzRWtQbEIsbUJyRTlQaUQsRXFFa1JsRDtRN0VwTUQ7VTZFdEtOO1lBNlZZLGtCckVyUTZDLEVxRXVRaEQsRUFBQTtRQUNPO1VBQ04sb0JyRXpRK0MsRXFFaVJoRDtVN0VuTUg7WTZFMExVO2NBR0osb0JyRTNRNkMsRXFFaVJoRCxFQUFBO1U3RW5NSDtZNkUwTFU7Y0FNSixvQnJFOVE2QztjcUUrUTdDLHNCckUvUTZDLEVxRWlSaEQsRUFBQTtNN0VuTUg7UTZFdEtOO1VBOFdZLGtCckV0UjZDLEVxRXVSOUMsRUFBQTtJQS9XWDtNVGNFLFl2RHlCMkQ7TUFxQjNELFlQOER5RDtNTXBHdkQsd0JBRnFDO01BR3JDLHVCQUhxQztNaUVpV25DLG9CckU3Um1EO01xRThSbkQsd0JyRTlSbUQsRXFFbVNwRDtNN0VyTkM7UTZFdEtOO1VqRXNCSSx5QkFGcUM7VUFHckMsd0JBSHFDLEVpRXVXcEMsRUFBQTtNL0R4V0Q7UUFDRSxZUnNHcUQ7UVFyR3JELFlBQVcsRUFDWjtNQUlDO1FBQ0UsYVJnR29ELEVRL0ZyRDtNK0Q1QlA7UUF3WFEsb0JyRWhTaUQ7UXFFaVNqRCxZQUFX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c0J0RWxGaUQ7UXNFbUZqRCxvQnRFbkZpRDtRc0VvRmpELGlCQUFnQjtRQUNoQixvQnRFckZpRCxFc0VzRmxEO0lBOUtQO01Ba0xRLHFCdEUxRmlEO01zRTJGakQsbUJ0RTNGaUQsRXNFK0ZsRDtNOUVqQkQ7UThFdEtOO1VBcUxVLG1CdEU3RitDLEVzRStGbEQsRUFBQTtFQUdJO0lBR0gscUJBQTJCO1FBQTNCLDRCQUEyQjtJQUMzQix1QkFBbUI7UUFBbkIsb0JBQW1CLEVBTXBCO0lBVkk7TUFNRCxjQUFhO01BQ2IsaUJBQWdCO01BQ2hCLG1CdEUxRytDLEVzRTJHaEQ7O0E5RTdCSDtFOEVrQ047SVYxTEUsV3ZEZXFEO0lBK0JyRCxZUDhEeUQ7SU1wR3ZELHdCQUZxQztJQUdyQyx1QkFIcUMsRWtFOExsQyxFQUFBO0U5RTVDRDtJOEVrQ047TWxFbExJLHlCQUZxQztNQUdyQyx3QkFIcUMsRWtFOExsQyxFQUFBOztBOUU1Q0Q7SWNuSkY7TUFDRSxZUnNHcUQ7TVFyR3JELFlBQVcsRUFDWjtJQUlDO01BQ0UsYVJnR29ELEVRL0ZyRCxFQUFBOztBZDBJRDtFOEVrQ047SVYxTEUsWXZEZXFEO0lBK0JyRCxZUDhEeUQ7SU1wR3ZELHdCQUZxQztJQUdyQyx1QkFIcUMsRWtFOExsQyxFQUFBO0U5RTVDRDtJOEVrQ047TWxFbExJLHlCQUZxQztNQUdyQyx3QkFIcUMsRWtFOExsQyxFQUFBOztBOUU1Q0Q7SWNuSkY7TUFDRSxZUnNHcUQ7TVFyR3JELFlBQVcsRUFDWjtJQUlDO01BQ0UsYVJnR29ELEVRL0ZyRCxFQUFBOztBZDBJRDtFOEU2RE47SVZyTkUsV3ZEZXFEO0lBK0JyRCxZUDhEeUQ7SU1wR3ZELHdCQUZxQztJQUdyQyx1QkFIcUMsRWtFeU5sQyxFQUFBO0U5RXZFRDtJOEU2RE47TWxFN01JLHlCQUZxQztNQUdyQyx3QkFIcUMsRWtFeU5sQyxFQUFBOztBOUV2RUQ7SWNuSkY7TUFDRSxZUnNHcUQ7TVFyR3JELFlBQVcsRUFDWjtJQUlDO01BQ0UsYVJnR29ELEVRL0ZyRCxFQUFBOztBZDBJRDtFOEU2RE47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RnFDO01BR3JDLHVCQUhxQztNcUU0Q25DLHFCekV3Qm1EO015RXZCbkQsd0J6RXVCbUQsRXlFWHBEO01qRnlGQztRaUZ0S047VXJFc0JJLHlCQUZxQztVQUdyQyx3QkFIcUMsRXFFeURwQyxFQUFBO01uRTFERDtRQUNFLFlSc0dxRDtRUXJHckQsWUFBVyxFQUNaO01BSUM7UUFDRSxhUmdHb0QsRVEvRnJEO01kMElEO1FpRnRLTjtVYmNFLGlCdkRlcUQsRW9FZ0RsRCxFQUFBO01qRnlGQztRaUZ0S047VWJjRSxXdkRlcUQ7VW9FMEMvQyxrQnpFaUJpRDtVeUVoQmpELHFCekVnQmlELEV5RVhwRCxFQUFBO01qRjhGQztRaUYzS047VWJjRSxpQnZEZXFELEVvRWdEbEQsRUFBQTtJQTdFTDtNYmNFLFl2RGVxRDtNQStCckQsWVA4RHlEO01NcEd2RCx3QkFGcUM7TUFHckMsdUJBSHFDO01xRTREbkMsc0J6RVFtRDtNeUVQbkQseUJ6RU9tRDtNeUVObkQsZTFFUVMsRTBFd0NWO01qRm9DQztRaUZ0S047VXJFc0JJLHlCQUZxQztVQUdyQyx3QkFIcUMsRXFFOEdwQyxFQUFBO01uRS9HRDtRQUNFLFlSc0dxRDtRUXJHckQsWUFBVyxFQUNaO01BSUM7UUFDRSxhUmdHb0QsRVEvRnJEO01kMElEO1FpRnRLTjtVYmNFLFd2RGVxRCxFb0VxR2xELEVBQUE7TWpGb0NDO1FpRnRLTjtVYmNFLFd2RGVxRDtVb0UyRC9DLGtCekVBaUQ7VXlFQ2pELHFCekVEaUQsRXlFMENwRDtVQWxJTDtZQTJGVSxlMUVkVSxFMEVlWCxFQUFBO01qRitFSDtRaUYzS047VUErRlEsYUFBWTtVYmpGbEIsaUJ2RGVxRCxFb0VxR2xELEVBQUE7TUFsSUw7UUFtR1Esb0J6RVhpRCxFeUVZbEQ7TUFwR1A7UUFzR1Esc0J6RWRpRCxFeUVpQ2xEO1FBekhQO1VBd0dVLHNCekVoQitDLEV5RWdDaEQ7VUF4SFQ7WUEwR1ksb0IxRWhCRztZMEVpQkgsZTFFbENRLEUwRXNDVDtZQS9HWDtjQTZHYywwQjFFaENNLEUwRWlDUDtVQTlHYjtZQWlIWSxvQjFFeENRO1kwRXlDUixlMUV4QkcsRTBFNkJKO1lBdkhYO2NBb0hjLDBCMUV2Q007YzBFd0NOLGUxRTVDTSxFMEU2Q1A7TUF0SGI7UUEySFEsb0J6RW5DaUQ7UXlFb0NqRCxZQUFXO1FBQ1gsb0J6RXJDaUQsRXlFeUNsRDtRakZxQ0Q7VWlGdEtOO1lBK0hVLHFCekV2QytDLEV5RXlDbEQsRUFBQTtJQWpJUDtNYmNFLFl2RGVxRDtNQStCckQsWVA4RHlEO01NcEd2RCx3QkFGcUM7TUFHckMsdUJBSHFDO01xRWlIbkMscUJ6RTdDbUQ7TXlFOENuRCx3QnpFOUNtRCxFeUV3RHBEO01qRnNCQztRaUZ0S047VXJFc0JJLHlCQUZxQztVQUdyQyx3QkFIcUMsRXFFNEhwQyxFQUFBO01uRTdIRDtRQUNFLFlSc0dxRDtRUXJHckQsWUFBVyxFQUNaO01BSUM7UUFDRSxhUmdHb0QsRVEvRnJEO01kMElEO1FpRnRLTjtVYmNFLFd2RGVxRDtVb0U0Ry9DLGtCekVqRGlEO1V5RWtEakQscUJ6RWxEaUQsRXlFd0RwRCxFQUFBO01qRjJCQztRaUYzS047VWJjRSxpQnZEZXFEO1VvRWlIL0MsYUFBWSxFQUVmLEVBQUE7RUFoSkw7SUFvSk0sY0FBYSxFQUNkO0VqRmlCQztJaUZ0S047TUF5SlUsWUFBVyxFQUVkLEVBQUE7RUEzSlA7SUFnS00sOEJBQTZCLEVBUTlCO0lBeEtMO01Ba0tRLGNBQWEsRUFLZDtNakZJRDtRaUYzS047VUFvS1UsZUFBYztVQUNkLHFDQUFvQyxFQUV2QyxFQUFBO0VqRklEO0lpRjNLTjtNQTZLWSwrQkFBOEIsRUFFakMsRUFBQTtFQS9LVDtJQW9MUSxZQUFXLEVBY1o7SUFsTVA7TUFzTFUsa0J6RTlGK0MsRXlFeUdoRDtNakYzQkg7UWlGdEtOO1VBeUxZLG1CekVqRzZDLEV5RXlHaEQsRUFBQTtNakYzQkg7UWlGdEtOO1VBNExZLG1CekVwRzZDLEV5RXlHaEQsRUFBQTtNakZ0Qkg7UWlGM0tOO1VBK0xZLHFCekV2RzZDLEV5RXlHaEQsRUFBQTtFQWpNVDtJQXdNUSxlQUFjO0lBQ2Qsa0JBQWlCO0lBQ2pCLGNBQWEsRUFVZDtJakY5Q0Q7TWlGdEtOO1FBNE1VLGVBQWMsRUFRakIsRUFBQTtJakZ6Q0Q7TWlGM0tOO1FuRW9DSSxtQkFBa0I7UUFDbEIsZUFIbUQsRW1Fa0xoRCxFQUFBO0lBcE5QO01Ba05VLDBCQUFxQjtVQUFyQixzQkFBcUIsRUFDdEI7RUFuTlQ7SUFzTlEsdUJBQXNCLEVBSXZCO0lqRnBERDtNaUZ0S047UUF3TlUsMEJBQXlCLEVBRTVCLEVBQUE7RUExTlA7SUFpT1Usa0J6RXpJK0MsRXlFMEloRDtFQWxPVDtJQW9PVSxlMUUxSUssRTBFMklOO0VqRi9ESDtJaUZ0S047TUF3T1EscUJBQWE7TUFBYixjQUFhO01BQ2IsdUJBQW1CO1VBQW5CLG9CQUFtQjtNQUNuQix1QkFBOEI7VUFBOUIsK0JBQThCLEVBb0JqQztNQTlQTDtRQTZPVSxjQUFhLEVBQ2Q7TUE5T1Q7UUFnUFUsdUJBQXNCO1FBQ3RCLG1CQUFjO1lBQWQsZUFBYyxFQUlmO1FBclBUO1VBbVBZLG1CekUzSjZDLEV5RTRKOUMsRUFBQTtFakZ6RUw7SWlGM0tOO01BMFBZLHFCekVsSzZDLEV5RW1LOUMsRUFBQTtFQTNQWDtJQWtRVSxlMUV4S0ssRTBFNktOO0lBdlFUO01Bb1FZLDRCMUUxS0c7TTBFMktILDBCMUUzS0csRTBFNEtKO0VqRmhHTDtJaUZ0S047TUE2UVUsZ0NBQTJCO1VBQTNCLDRCQUEyQixFQUs5QjtNQWxSUDtRQStRWSx5QkFBd0IsRUFDekIsRUFBQTtFakZyR0w7SWlGM0tOO01BeVJVLDBDQUF5QyxFQUU1QyxFQUFBO0VqRnJIRDtJaUZ0S047TUErUlEscUJBQWE7TUFBYixjQUFhO01BQ2IsdUJBQThCO1VBQTlCLCtCQUE4QjtNQUM5Qix1QkFBbUI7VUFBbkIsb0JBQW1CO01BQ25CLGlCQUFnQixFQTRCbkI7TUE5VEw7UUFxU1UsY0FBYSxFQUNkO01BdFNUO1FBd1NVLFlBQVcsRUFDWixFQUFBO0VBelNUO0lBK1NRLHFCQUFhO0lBQWIsY0FBYTtJQUNiLG9CQUFlO1FBQWYsZ0JBQWU7SUFDZixzQkFBdUI7UUFBdkIsd0JBQXVCO0lBQ3ZCLHVCQUFtQjtRQUFuQixvQkFBbUIsRUFXcEI7SWpGdkpEO01pRnRLTjtRQTZTVSxZQUFXLEVBZ0JkLEVBQUE7SUE3VFA7TUFvVFUsZUFBYztNQUNkLGtCQUFhO1VBQWIsY0FBYTtNQUNiLHVCekU5TitDO015RStOL0Msd0J6RS9OK0MsRXlFb09oRDtNakZ0Skg7UWlGdEtOO1VBeVRZLHdCekVqTzZDO1V5RWtPN0MseUJ6RWxPNkMsRXlFb09oRCxFQUFBO0VqRnRKSDtJaUZ0S047TUFrVVUsZ0NBQTJCO1VBQTNCLDRCQUEyQixFQUs5QjtNQXZVUDtRQW9VWSx5QkFBd0IsRUFDekIsRUFBQTtFQXJVWDtJQThVUSxlMUVyUE8sRTBFeVBSO0lBbFZQO01BZ1ZVLGUxRXZQSyxFMEV3UE47RUFqVlQ7SUFzVlEscUNBQW9DLEVBUXJDO0lqRnhMRDtNaUZ0S047UUF3VlUsK0ZBSUMsRUFFSixFQUFBO0VBOVZQO0lBdVdZLDBCMUU3UUc7STBFOFFILGUxRS9SUSxFMEUyU1Q7SUFwWFg7TUEwV2MsMEIxRTdSTSxFMEU4UlA7SUEzV2I7TUE4V2Msb0IxRXBSQztNMEVxUkQsZTFFdFNNLEUwRTBTUDtNQW5YYjtRQWlYZ0IsMEIxRXBTSSxFMEVxU0w7RWpGdk1UO0lpRjNLTjtNbkVvQ0ksbUJBQWtCO01BQ2xCLGdCQUhtRCxFbUU4VjlDLEVBQUE7RWpGck5IO0lpRjNLTjtNQXNZVSxvRkFJQyxFQUVKLEVBQUE7RWpGak9EO0lpRjNLTjtNQW1aWSxnR0FJQyxFQUVKLEVBQUE7RWpGblBIO0lpRnRLTjtNQStaVSx3QkFBdUIsRUFFMUIsRUFBQTtFakZ0UEQ7SWlGM0tOO01Bb2FVLHVCQUFzQixFQUV6QixFQUFBO0VBdGFQO0lBMmFNLHFCQUFhO0lBQWIsY0FBYTtJQUNiLHVCQUFtQjtRQUFuQixvQkFBbUI7SUFDbkIsdUJBQThCO1FBQTlCLCtCQUE4QixFQXdCL0I7SUFyY0w7TUFnYlEsY0FBYSxFQUNkO0lBamJQO01BbWJRLGVBQWM7TUFDZCxrQkFBaUI7TUFDakIsY0FBYSxFQWVkO01qRjlSRDtRaUZ0S047VUF1YlUsZUFBYyxFQWFqQixFQUFBO01qRnpSRDtRaUYzS047VWJjRSxXdkRlcUQsRW9FdWFoRCxFQUFBO01BcGNQO1FBOGJZLG9CQUFlO1lBQWYsZ0JBQWUsRUFDaEI7TUEvYlg7UUFrY1Usb0JBQWU7WUFBZixnQkFBZSxFQUNoQjtFQW5jVDtJQXljTSxnQ0FBMkI7UUFBM0IsNEJBQTJCLEVBQzVCOztBQUlMO0VBRUksY0FBYSxFQUNkOztBQUhIOztFQUtJLDJCQUEwQjtFQUMxQiw0QkFBMkIsRUFDNUI7O0FBUEg7RWJoY0UsWXZEZXFEO0VvRTRiakQsbUJBQWtCO0VBQ2xCLHNCekVsWW1EO0V5RW1ZbkQseUJ6RW5ZbUQ7RXlFb1luRCx3QnpFcFltRCxFeUU0WXBEO0VqRnpUQztJaUZtU047TWJoY0UsaUJ2RGVxRDtNb0VrYy9DLGlCQUFnQixFQUtuQixFQUFBO0VBdEJMO0lBb0JRLGdCQUFlLEVBQ2hCOztBQXJCUDtFYmhjRSxpQnZEZXFEO0VvRTBjakQsc0J6RS9ZbUQ7RXlFZ1puRCx5QnpFaFptRDtFeUVpWm5ELHVCekVqWm1ELEV5RWtacEQ7O0FBRUg7RUFDRSxpQnpFclpxRDtFeUVzWnJELHNCQUF5QjtFQUN6QixZQUFXLEVBQ1o7O0FDL2VIO0VBQ0UsMEIzRXFGbUIsRTJFbUJwQjtFbEY0REs7SWtGcktOO01BR0kseURBQXdEO01BQ3hELDZCQUE0QjtNQUM1QiwyQkFBMEI7TUFDMUIsOEJBQTZCLEVBbUdoQyxFQUFBO0VBakdTO0lBQ04sMkJBQTBCLEVBUTNCO0lsRm9KRztNa0Y3Sks7UWRLVCxXdkRlcUQsRXFFYmhELEVBQUE7RUFmUDtJQXNCTSxjQUFhLEVBQ2Q7RUF2Qkw7SUF5Qk0scUJBQWE7SUFBYixjQUFhO0lBQ2Isd0JBQW9CO1FBQXBCLHFCQUFvQixFQUtyQjtJQS9CTDtNQTZCUSxjQUFhLEVBQ2Q7RUE5QlA7SUFpQ00sYUFBWTtJQUNaLFlBQVcsRUFtQlo7SUFyREw7TUFvQ1EsY0FBYSxFQUNkO0lsRmdJRDtNa0ZyS047UUF1Q1EscUJBQWE7UUFBYixjQUFhO1FBQ2Isd0JBQW9CO1lBQXBCLHFCQUFvQjtRQUNwQix1QkFBOEI7WUFBOUIsK0JBQThCLEVBWWpDO1FBckRMO1VBNENVLGNBQWEsRUFDZCxFQUFBO0lBN0NUO01BZ0RRLGVBQWMsRUFJZjtNQXBEUDtRQWtEVSx1QjFFcUMrQyxFMEVwQ2hEO0VsRmtISDtJa0ZyS047TWRhRSxXdkRlcUQsRXFFaUNsRCxFQUFBO0VBN0RMO0lBMkRRLGUzRTZCTyxFMkU1QlI7RUE1RFA7SWRhRSxZdkRlcUQ7SUErQnJELFlQOER5RDtJTXBHdkQsd0JBRnFDO0lBR3JDLHVCQUhxQztJc0U2Q25DLHFCQUFhO0lBQWIsY0FBYSxFQXNCZDtJbEYrRUM7TWtGcktOO1F0RXFCSSx5QkFGcUM7UUFHckMsd0JBSHFDLEVzRW1FcEMsRUFBQTtJcEVwRUQ7TUFDRSxZUnNHcUQ7TVFyR3JELFlBQVcsRUFDWjtJQUlDO01BQ0UsYVJnR29ELEVRL0ZyRDtJb0UzQlA7TUFvRVEsY0FBYSxFQUNkO0lsRmdHRDtNa0ZyS047UWRhRSxpQnZEZXFELEVxRTBEbEQ7UUF0Rkw7VUF5RVUsZUFBYztVQUNkLFlBQVc7VUFDWCx5QkFBb0I7Y0FBcEIscUJBQW9CLEVBU3JCO1VBcEZUO1lBNkVZLFdBQVU7WUFDVixrQ0FBaUMsRUFLbEM7WUFuRlg7Y0FnRmMsV0FBVTtjQUNWLGtDQUFpQyxFQUNsQyxFQUFBO0VBbEZiO0lBeUZJLFlBQVc7SUFDWCx1QkFBc0I7SUFDdEIscUJBQTJCO1FBQTNCLDRCQUEyQjtJQUMzQixrQkFBaUI7SUFDakIsc0IxRU5xRDtJMEVPckQsdUIxRVBxRCxFMEVpQnREO0lsRjZERztNa0ZyS047UUFnR00sdUIxRVRtRDtRMEVVbkQsd0IxRVZtRCxFMEVpQnRELEVBQUE7SWxGNkRHO01rRnJLTjtRQXFHUSxvQkFBbUIsRUFFdEIsRUFBQTs7QUN4R0w7RUFDSSwwQjVFMEVxQixFNEVIeEI7RUF4RUQ7SWZjRSxZdkRlcUQ7SUErQnJELFlQOER5RDtJTXBHdkQsd0JBRnFDO0lBR3JDLHVCQUhxQztJdUVoQmpDLGU1RXNGTztJNEVyRlAsd0IzRW1GaUQsRTJFbEZwRDtJbkZnS0M7TW1GdEtOO1F2RXNCSSx5QkFGcUM7UUFHckMsd0JBSHFDLEV1RWRwQyxFQUFBO0lyRWFEO01BQ0UsWVJzR3FEO01RckdyRCxZQUFXLEVBQ1o7SUFJQztNQUNFLGFSZ0dvRCxFUS9GckQ7RXFFNUJQO0lmY0UsWXZEZXFEO0lBK0JyRCxZUDhEeUQ7SU1wR3ZELHdCQUZxQztJQUdyQyx1QkFIcUM7SXVFVjdCLGU1RWdGRztJNEUvRUgsb0IzRTZFNkM7STJFNUU3QyxzQjNFNEU2QyxFMkUzRWhEO0luRnlKSDtNbUZ0S047UXZFc0JJLHlCQUZxQztRQUdyQyx3QkFIcUMsRXVFUGhDLEVBQUE7SXJFTUw7TUFDRSxZUnNHcUQ7TVFyR3JELFlBQVcsRUFDWjtJQUlDO01BQ0UsYVJnR29ELEVRL0ZyRDtFcUU1QlA7SUFnQlEscUJBQWE7SUFBYixjQUFhO0lBQ2Isd0JBQW1CO1FBQW5CLG9CQUFtQjtJQUNuQixvQkFBZTtRQUFmLGdCQUFlO0lBQ2YsVUFBUztJQUNULFlBQVcsRUFtRGQ7SUF2RUw7TWZjRSxXdkRlcUQ7TUErQnJELFlQOER5RDtNTXBHdkQsd0JBRnFDO01BR3JDLHVCQUhxQztNdUVHN0IscUJBQWE7TUFBYixjQUFhO01BQ2IsMkJBQXNCO1VBQXRCLHVCQUFzQjtNQUN0QixzQkFBcUI7TUFDckIsd0IzRThENkMsRTJFbEJoRDtNbkZnR0g7UW1GdEtOO1V2RXNCSSx5QkFGcUM7VUFHckMsd0JBSHFDLEV1RWtEaEMsRUFBQTtNckVuREw7UUFDRSxZUnNHcUQ7UVFyR3JELFlBQVcsRUFDWjtNQUlDO1FBQ0UsYVJnR29ELEVRL0ZyRDtNZDBJRDtRbUZ0S047VWZjRSxpQnZEZXFELEVzRXlDOUMsRUFBQTtNbkZnR0g7UW1GdEtOO1VmY0UsaUJ2RGVxRDtVc0VHckMsaUJBQWdCLEVBc0N6QixFQUFBO01BdEVUO1FBbUNnQixjNUV1REQ7UTRFdERDLHlCM0VvRHlDO1EyRW5EekMsZ0IzRW1EeUMsRTJFbEQ1QztNQXRDYjtRQXdDZ0IsZTVFa0REO1E0RWpEQyxvQjNFK0N5QztRMkU5Q3pDLHVCM0U4Q3lDLEUyRTdDNUM7TUEzQ2I7UUE2Q2dCLGU1RTZDRDtRNEU1Q0Msc0IzRTBDeUMsRTJFekM1QztNQS9DYjtRQWlEZ0IsZTVFeUNEO1E0RXhDQyxrQkFBaUI7UUFDakIsaUJBQWdCO1FBQ2hCLG1CQUFrQixFQWlCckI7UUFyRWI7VUFzRG9CLHVDNUVvQ0w7VTRFbkNLLHNDNUVtQ0w7VTRFbENLLFlBQVU7VUFDVixzQkFBcUI7VUFDckIsaUIzRThCcUM7VTJFN0JyQyxnQjNFNkJxQztVMkU1QnJDLDhCQUF5QjtjQUF6QiwwQkFBeUI7VUFDekIsdUIzRTJCcUMsRTJFMUJ4QztRQTlEakI7VUFnRW9CLGU1RWFBLEU0RVRIO1VBcEVqQjtZQWtFd0Isc0I1RVdKLEU0RVZDOztBQ25FckI7RUFFSSxXQUFVLEVBVVg7RXBGMEpHO0lvRnRLTjtNQUlNLHFCQUFhO01BQWIsY0FBYTtNQUNiLG9CQUFlO1VBQWYsZ0JBQWU7TUFDZix3QkFBbUI7VUFBbkIsb0JBQW1CLEVBTXRCO01BWkg7UUFTUSxjQUFhLEVBQ2QsRUFBQTs7QXBGNEpEO0VvRnhKRjtJQUNFLHFCNUV5RW1ELEU0RXhFcEQsRUFBQTs7QUFoQkw7RUFtQkksa0JBQVc7TUFBWCxZQUFXO0VBQ1gsbUJBQWtCO0VBQ2xCLHFCQUFhO0VBQWIsY0FBYTtFQUNiLHdCQUFvQjtNQUFwQixxQkFBb0IsRUFpRnJCO0VBdkdIO0lBd0JNLGVBQWM7SUFDZCxlN0VpRVM7STZFaEVULG1CQUFrQjtJQUNsQixpQkFBZ0I7SUFDaEIsa0JBQVc7UUFBWCxZQUFXLEVBa0JaO0lBOUNMOztNQWdDVSxZQUFXO01BQ1gsZUFBYztNQUNkLG1CQUFrQjtNQUNsQixPQUFNO01BQ04sUUFBTztNQUNQLFNBQVE7TUFDUixZQUFXO01BQ1gsYUFBWTtNQUNaLCtCQUE4QixFQUkvQjtNcEYwSEg7UW9GdEtOOztVQTBDWSxvRkFBbUYsRUFFdEYsRUFBQTtFcEYwSEg7SW9GdEtOO01oQmNFLFd2RGVxRDtNdUVvQmpELGtCQUFhO1VBQWIsY0FBYSxFQXNEaEI7TUF2R0g7UUFvRFEsY0FBYSxFQUNkLEVBQUE7RUFyRFA7SXpFaUdFLGdCSmlDbUI7SUlwRWpCLG1CQUFrQjtJQUNsQixrQkFBaUIsRXlFU2hCO0kzRWlHSDtNQUVFLGVBQWM7TUFDZCxhQUFZO01BR1YsMkJBQWE7VUFBYixjQUFhO01BQ2Isa0JBQVE7VUFBUixTQUFRLEVBRVg7SUFFRDtNQUNFLFlBQVcsRUFDWjtJMkV0TEg7TWhCY0UsWXZEZXFEO01BK0JyRCxZUDhEeUQ7TU1wR3ZELHdCQUZxQztNQUdyQyx1QkFIcUM7TXdFdUNqQyx3QjVFNkJpRDtNNEU1QmpELHFCNUU0QmlELEU0RXZCbEQ7TXBGcUdEO1FvRnRLTjtVeEVzQkkseUJBRnFDO1VBR3JDLHdCQUhxQyxFd0U2Q2xDLEVBQUE7TXRFOUNIO1FBQ0UsWVJzR3FEO1FRckdyRCxZQUFXLEVBQ1o7TUFJQztRQUNFLGFSZ0dvRCxFUS9GckQ7TWQwSUQ7UW9GdEtOO1VBOERVLHdCNUUwQitDO1U0RXpCL0MscUI1RXlCK0MsRTRFdkJsRCxFQUFBO0lBakVQO01BbUVRLGtCNUVxQmlELEU0RWpCbEQ7TXBGK0ZEO1FvRnRLTjtVQXFFVSxvQjVFbUIrQyxFNEVqQmxELEVBQUE7RUF2RVA7O0lBMkVNLG1CQUFrQjtJQUNsQixPQUFNO0lBQ04sUUFBTztJQUNQLFlBQVc7SUFDWCxhQUFZLEVBQ2I7RUFoRkw7SUFtRlEsZTdFTU8sRTZFTFI7RUFwRlA7SUF3RlEsZTdFQ08sRTZFQVI7RUF6RlA7O0lBNkZVLHFDQUFvQyxFQUlyQztJcEZxRUg7TW9GdEtOOztRQStGWSxnR0FBK0YsRUFFbEcsRUFBQTtFQWpHVDtJQW9HUSwwQjdFM0JZLEU2RTRCYjs7QXBGc0VEO0VvRjNLTjtJQTBHTSxrQkFBaUIsRUF5R3BCO0lBbk5IOztNQTRHUSwyQkFBMEI7TUFDMUIsNEJBQTJCLEVBQzVCLEVBQUE7O0FBOUdQO0VBaUhNLHlCNUV6Qm1EO0U0RTBCbkQsdUI1RTFCbUQ7RTRFMkJuRCx3QjVFM0JtRCxFNEVtQ3BEO0VwRjJDQztJb0Z0S047TUFxSFEsd0I1RTdCaUQ7TTRFOEJqRCx5QjVFOUJpRCxFNEVtQ3BELEVBQUE7RXBGMkNDO0lvRnRLTjtNQXlIUSx1QjVFakNpRCxFNEVtQ3BELEVBQUE7O0FwRjJDQztFb0Z0S047SUE4SFEscUJBQWE7SUFBYixjQUFhO0lBQ2Isb0JBQWU7UUFBZixnQkFBZTtJQUNmLDRCQUFzQjtRQUF0Qix1QkFBc0I7SUFDdEIsd0JBQW1CO1FBQW5CLG9CQUFtQixFQWlGdEIsRUFBQTs7QXBGNUNDO0VvRnRLTjtJQXFJVSx3QjVFN0MrQztJNEU4Qy9DLHlCNUU5QytDO0k0RStDL0MseUI1RS9DK0MsRTRFeUhsRCxFQUFBOztBcEYzQ0Q7RW9GdEtOO0lBMElVLHFCQUFhO0lBQWIsY0FBYTtJQUNiLHVCQUFrQjtRQUFsQixtQkFBa0I7SUFDbEIsb0JBQW1CO0lBQ25CLDRCQUFzQjtRQUF0Qix1QkFBc0IsRUFvRXpCLEVBQUE7O0FBak5QO0VBaUpZLG9CN0V2REcsRTZFd0RKOztBQWxKWDtFQXFKVSw0QzVFN0QrQztFNEU4RC9DLGU3RTVESztFNkU2REwscUJBQWE7RUFBYixjQUFhO0VBQ2IsMkJBQXNCO01BQXRCLHVCQUFzQjtFQUN0QixZQUFXLEVBdUNaO0VBaE1UO0lBMkpZLHNCQUFxQjtJQUNyQixxQkFBWTtRQUFaLGFBQVk7SUFFWixxQkFBYTtJQUFiLGNBQWE7SUFDYixxQjVFdkU2QztJNEV3RTdDLHNCNUV4RTZDLEU0RWtGOUM7SUExS1g7TUFrS2MscUJBQWE7TUFBYixjQUFhO01BQ2IsMkJBQXNCO1VBQXRCLHVCQUFzQjtNQUN0QixvQkFBZTtVQUFmLGdCQUFlO01BQ2YsWUFBVyxFQUlaO01BektiO1FBdUtnQixpQkFBZ0IsRUFDakI7RUF4S2Y7SUE0S1ksMkI1RXBGNkM7STRFcUY3QyxZNUVyRjZDLEU0RXNGOUM7RUE5S1g7SUFnTFksb0I1RXhGNkM7STRFeUY3QyxzQjVFekY2QyxFNEUwRjlDO0VBbExYO0lBb0xZLHdCNUU1RjZDLEU0RTZGOUM7RUFyTFg7SUF1TFksaUJBQWdCO0lBQ2hCLG9CN0U5Rkc7STZFK0ZILGU3RWhIUSxFNkVpSFQ7RUExTFg7SUE2TGMsb0I3RWhITSxFNkVpSFA7O0FBOUxiO0VBb01jLG9CN0UzR0MsRTZFNEdGOztBQXJNYjtFQXdNWSxlN0UvR0csRTZFc0hKO0VBL01YO0lBMk1nQixvQjdFbElJO0k2RW1JSixlN0VsSEQsRTZFbUhBOztBQzVNZjs7RUFLUSxZN0VrRmlELEU2RWpGbEQ7O0FBTlA7RUFVSSxtQkFBa0I7RUFDbEIsVUFBUztFQUNULG1CN0VnRlM7RTZFL0VULHNCQUF1QjtNQUF2Qix3QkFBdUIsRUFxQ3hCO0VyRm1IRztJcUZyS047TUFlTSw0QjdFNkVPLEU2RTFDVixFQUFBO0VBbERIO0lBbUJNLDBCQUF5QjtJQUN6QixZQUFXO0lBQ1gsbUJBQWtCO0lBQ2xCLGM3RWlFbUQ7STZFaEVuRCxXQUFVO0lBQ1YsMEJBQXlCO0lBQ3pCLHFCN0U4RG1ELEU2RTdEcEQ7RUExQkw7SUE0Qk0sV0FBVTtJQUNWLGdDQUErQjtJQUUvQiw0QkFBMkI7SUFDM0IsNEJBQTJCO0lBRTNCLHdCQUF1QixFQUN4QjtFQW5DTDtJQXFDTSxVQUFTO0lBQ1QsNkJBQTRCO0lBRTVCLHlCQUF3QjtJQUN4Qiw2QkFBNEI7SUFFNUIseUJBQXdCLEVBQ3pCO0VBNUNMO0lBK0NRLGlCQUFnQixFQUNqQjs7QUFoRFA7O0VBc0RNLGU5RWtDUyxFOEV0QlY7RUFsRUw7Ozs7SUF5RFEsZTlFZVksRThFWGI7SUE3RFA7Ozs7TUEyRFUsZTlFNkJLLEU4RTVCTjtFQTVEVDs7SUErRFEsNEI5RVNZO0k4RVJaLDBCOUVRWSxFOEVQYjs7QUFqRVA7RUF1RVEsWUFBVyxFQUNaOztBckY2RkQ7RXFGcktOO0lBNEVRLG9GQUFtRixFQUV0RixFQUFBOztBQy9FTDtFQUNFLFdBQVU7RUFDVixvQi9Fd0ZhLEUrRXZGZDs7QUFDRDtFQUNFLFdBQVUsRUFnSlg7RUFqSkQ7SUFHSSxpQkFBZ0I7SUFDaEIscUJBQWE7SUFBYixjQUFhO0lBQ2IsMkJBQXNCO1FBQXRCLHVCQUFzQjtJQUN0QixxQkFBMkI7UUFBM0IsNEJBQTJCO0lBQzNCLDhCQUE2QjtJQUM3QixnR0FBa0g7SUFDbEgsNkJBQTRCO0lBQzVCLDJCQUEwQjtJQUMxQiw2QkFBNEI7SUFDNUIscUI5RXdFcUQ7SThFdkVyRCx3QjlFdUVxRCxFOEVsRXREO0l0RmdKRztNc0ZsS047UUFlTSxrQjlFcUVtRDtROEVwRW5ELHFCOUVvRW1ELEU4RWxFdEQsRUFBQTtFQUNRO0lBRUwsMEdBQ3NFO0lBQ3RFLDJCQUEwQjtJQUMxQiw0QkFBMkIsRUFTNUI7SXRGaUlDO01zRi9JSztRQVFELHFCOUV5RCtDLEU4RXBEbEQsRUFBQTtJdEZrSUQ7TXNGL0lLO1FBV0QsZUFBYyxFQUVqQixFQUFBO0VBR0k7SUFFTCx3R0FDaUU7SUFDakUsMkJBQTBCO0lBQzFCLHVDQUFzQyxFQWV2QztJQXBCTTtNQU9ILFlBQVc7TUFDWCxlQUFjO01BQ2QsbUJBQWtCO01BQ2xCLE9BQU07TUFDTixRQUFPO01BQ1AsWUFBVztNQUNYLGFBQVk7TUFDWixpRkFBd0c7TUFDeEcsV0FBVSxFQUNYO0lBaEJJO01Ba0JILFdBQVUsRUFDWDtFQXREUDtJM0U2RkUsZ0JKaUNtQjtJSXBFakIsbUJBQWtCO0lBQ2xCLGtCQUFpQjtJMkVBakIsWUFBVztJQUNYLG1CQUFrQjtJQUNsQixzQkFBdUI7UUFBdkIsd0JBQXVCLEVBZ0N4QjtJN0V3RUQ7TUFFRSxlQUFjO01BQ2QsYUFBWTtNQUdWLDJCQUFhO1VBQWIsY0FBYTtNQUNiLGtCQUFRO1VBQVIsU0FBUSxFQUVYO0lBRUQ7TUFDRSxZQUFXLEVBQ1o7STZFbExIO01BK0RNLGUvRXVCUztNK0V0QlQsbUJBQWtCO01sQnREdEIsWXZEZXFEO01BK0JyRCxZUDhEeUQ7TU1wR3ZELHdCQUZxQztNQUdyQyx1QkFIcUMsRTBFNEVwQztNdEZzRUM7UXNGbEtOO1UxRWtCSSx5QkFGcUM7VUFHckMsd0JBSHFDLEUwRTRFcEMsRUFBQTtNeEU3RUQ7UUFDRSxZUnNHcUQ7UVFyR3JELFlBQVcsRUFDWjtNQUlDO1FBQ0UsYVJnR29ELEVRL0ZyRDtNd0V4QlA7UUFtRVEsZS9FTVksRStFTGI7TUFwRVA7UUFzRVEscUI5RWNpRCxFOEVWbEQ7UXRGd0ZEO1VzRmxLTjtZQXdFVSxtQjlFWStDLEU4RVZsRCxFQUFBO01BMUVQO1FBNEVRLGlCQUFnQixFQU9qQjtRdEYrRUQ7VXNGbEtOO1lBOEVVLGlCOUVNK0MsRThFRGxELEVBQUE7UXRGK0VEO1VzRmxLTjtZbEJVRSxpQnZEZXFELEV5RTBEaEQsRUFBQTtNQUNRO1FBRUwsbUI5RUYrQyxFOEVNaEQ7UXRGd0VIO1VzRjlFUztZQUlILG9COUVKNkMsRThFTWhELEVBQUE7RUExRlQ7SUErRkksb0IvRVRXO0krRVVYLGUvRTNCZ0I7SStFNEJoQixzQkFBcUI7SUFDckIsbUJBQWtCO0lBQ2xCLHVCQUEyQjtJQUMzQiw0QkFBa0I7UUFBbEIsMkJBQWtCO1FBQWxCLG1CQUFrQixFQVFuQjtJdEZzREc7TXNGbEtOO1FBc0dNLHVCQUEyQixFQU05QixFQUFBO0lBNUdIO01BeUdNLG9CL0VoQ2M7TStFaUNkLGUvRXJDYyxFK0VzQ2Y7RUEzR0w7SUFnSFEsaUJBQWdCLEVBT2pCO0l0RjJDRDtNc0ZsS047UUFrSFUsaUI5RTlCK0MsRThFbUNsRCxFQUFBO0l0RjJDRDtNc0ZsS047UWxCVUUsaUJ2RGVxRCxFeUU4RmhELEVBQUE7RUF2SFA7SUEwSE0sNERBQW9FO0lBQ3BFLDJCQUEwQjtJQUMxQixxQ0FBb0M7SUFDcEMsY0FBYSxFQUlkO0VBaklMO0lBb0lJLHNCOUVoRHFEO0k4RWlEckQsdUI5RWpEcUQsRThFa0R0RDtFQXRJSDtJQTJJVSxrQjlFdkQrQztJOEV3RC9DLGlCQUFnQixFQUNqQjs7QUFLVDtFQUVJLHNCOUVoRXFEO0U4RWlFckQsb0I5RWpFcUQsRThFa0V0RDs7QUFKSDtFQU9NLDZCL0VuRVMsRStFb0VWOztBQVJMO0VBV0kseUJBQXdCLEVBQ3pCOztBQVpIO0VBY0ksVUFBUyxFQUNWOztBQUdIO0VBQ0UscUJBQWE7RUFBYixjQUFhO0VBQ2Isc0JBQXVCO01BQXZCLHdCQUF1QjtFQUN2QixvQkFBZTtNQUFmLGdCQUFlO0VBQ2YscUI5RXBGdUQsRThFeU54RDtFQXpJRDtJQU9JLHlCQUF3QixFQUN6QjtFdEZWRztJc0ZFTjtNQVVJLG9COUUxRnFELEU4RXlOeEQsRUFBQTtFQXpJRDtJQWFJLHFCQUFZO1FBQVosYUFBWTtJQUNaLHFCQUFjO1FBQWQsZUFBYztJQUNkLDZCQUFlO1FBQWYsZ0JBQWU7SUFDZixXQUFVO0lBQ1YsZS9FL0ZXO0krRWdHWCx1QjlFbEdxRDtJOEVtR3JELHVCOUVuR3FEO0k4RW9HckQsd0I5RXBHcUQsRThFOEt0RDtJdEZoR0c7TXNGRU47UUFzQk0sb0JBQW1CO1FBQ25CLGtDQUFtQjtZQUFuQixxQkFBbUI7UUFDbkIsd0I5RXhHbUQ7UThFeUduRCx5QjlFekdtRCxFOEU4S3REO1FBcEVXO1VBQ04sZUFBYztVQUNkLDZCQUFjO2NBQWQsZ0JBQWMsRUFDZixFQUFBO0l0Ri9CRDtNc0ZFTjtRQWdDTSxlQUFjLEVBOERqQjtRQXBFVztVQVFOLGVBQWMsRUFLZjtVQU5RO1lBR0wsb0I5RXBIK0M7WThFcUgvQyxtQjlFckgrQyxFOEVzSGhEO1FBRUs7VUFDTixlQUFjLEVBQ2Y7UUFDTztVQUNOLG9CQUFtQixFQWFwQjtVQWRROztZQUlMLHFCQUFhO1lBQWIsY0FBYTtZQUNiLHdCQUFtQjtnQkFBbkIsb0JBQW1CO1lBQ25CLHVCQUFtQjtnQkFBbkIsb0JBQW1CLEVBT3BCO1lBYk07O2NBUUgsc0I5RW5JNkMsRThFb0k5QztZQVRJOztjQVdILG1CQUFjO2tCQUFkLGVBQWMsRUFDZjtRQUdHO1VBQ04sb0JBQW1CLEVBYXBCO1VBZFE7O1lBSUwscUJBQWE7WUFBYixjQUFhO1lBQ2Isd0JBQW1CO2dCQUFuQixvQkFBbUI7WUFDbkIsdUJBQW1CO2dCQUFuQixvQkFBbUIsRUFPcEI7WUFiTTs7Y0FRSCxzQjlFbEo2QyxFOEVtSjlDO1lBVEk7O2NBV0gsbUJBQWM7a0JBQWQsZUFBYyxFQUNmLEVBQUE7SUF0RVg7TUEyRU0sd0I5RTNKbUQ7TThFNEpuRCxnQjlFNUptRCxFOEVpS3BEO010Rm5GQztRc0ZFTjtVQThFUSx1QjlFOUppRDtVOEUrSmpELGtCOUUvSmlELEU4RWlLcEQsRUFBQTtJQWpGTDtNQW1GTSx3QjlFbkttRDtNOEVvS25ELG9COUVwS21EO004RXFLbkQsaUIvRXhKa0I7TStFeUpsQixlL0VqTGMsRStFcUxmO010RjVGQztRc0ZFTjtVQXdGUSxnQjlFeEtpRCxFOEUwS3BELEVBQUE7SUExRkw7TUE0Rk0sb0I5RTVLbUQsRThFNktwRDtFQTdGTDtJQWdHSSxlL0UzTGdCO0krRTRMaEIsZUFBYyxFQTRCZjtJQTdISDtNQW9HUSxvQkFBbUI7TUFDbkIsWUFBVztNQUNYLHNCQUFxQjtNQUNyQixtQkFBa0I7TUFDbEIsZTlFeExpRDtNOEV5TGpELFlBQVc7TUFDWCxzQjlFMUxpRDtNOEUyTGpELGlCQUFnQjtNQUNoQiw4QkFBNkI7TUFDN0IsNEIvRXhNWTtNK0V5TVosMEIvRXpNWTtNK0UwTVosZ0I5RS9MaUQ7TThFZ01qRCxpQjlFaE1pRDtNOEVpTWpELG9EQUErQztVQUEvQyxnREFBK0M7TUFDL0MseUJBQXdCLEVBTXpCO010RnJIRDtRc0ZITjtVQW9IVSx3QjlFcE0rQztVOEVxTS9DLGdCOUVyTStDO1U4RXNNL0MsK0RBQTBEO2NBQTFELDJEQUEwRCxFQUU3RCxFQUFBO0lBeEhQO01BMkhNLFlBQVcsRUFDWjtFdEY5SEM7SXNGRU47TUFnSU0sb0JBQW1CLEVBQ3BCO0lBaklMO01BbUlNLGVBQWMsRUFDZjtJQXBJTDtNQXNJTSxlQUFjLEVBQ2YsRUFBQTs7QUMvU0w7RUFDRSxXQUFVO0VBQ1Ysb0JoRndGYSxFZ0Z2RmQ7O0FBQ0Q7RUFDRSxXQUFVLEVBK0lYO0VBaEpEO0lBR0ksaUJBQWdCO0lBQ2hCLHFCQUFhO0lBQWIsY0FBYTtJQUNiLDJCQUFzQjtRQUF0Qix1QkFBc0I7SUFDdEIscUJBQTJCO1FBQTNCLDRCQUEyQjtJQUMzQiw4QkFBNkI7SUFDN0IsZ0dBQWtIO0lBQ2xILDZCQUE0QjtJQUM1QiwyQkFBMEI7SUFDMUIsNkJBQTRCO0lBQzVCLHFCL0V3RXFEO0krRXZFckQsd0IvRXVFcUQsRStFbEV0RDtJdkZnSkc7TXVGbEtOO1FBZU0sa0IvRXFFbUQ7UStFcEVuRCxxQi9Fb0VtRCxFK0VsRXRELEVBQUE7RUFDUTtJQUVMLDBHQUNzRTtJQUN0RSwyQkFBMEI7SUFDMUIsNEJBQTJCLEVBUzVCO0l2RmlJQztNdUYvSUs7UUFRRCxxQi9FeUQrQyxFK0VwRGxELEVBQUE7SXZGa0lEO011Ri9JSztRQVdELGVBQWMsRUFFakIsRUFBQTtFQUdJO0lBRUwsd0dBQ2lFO0lBQ2pFLDJCQUEwQjtJQUMxQix1Q0FBc0MsRUFldkM7SUFwQk07TUFPSCxZQUFXO01BQ1gsZUFBYztNQUNkLG1CQUFrQjtNQUNsQixPQUFNO01BQ04sUUFBTztNQUNQLFlBQVc7TUFDWCxhQUFZO01BQ1osaUZBQXdHO01BQ3hHLFdBQVUsRUFDWDtJQWhCSTtNQWtCSCxXQUFVLEVBQ1g7RUF0RFA7STVFNkZFLGdCSmlDbUI7SUlwRWpCLG1CQUFrQjtJQUNsQixrQkFBaUI7STRFQWpCLFlBQVc7SUFDWCxtQkFBa0IsRUFnQ25CO0k5RXlFRDtNQUVFLGVBQWM7TUFDZCxhQUFZO01BR1YsMkJBQWE7VUFBYixjQUFhO01BQ2Isa0JBQVE7VUFBUixTQUFRLEVBRVg7SUFFRDtNQUNFLFlBQVcsRUFDWjtJOEVsTEg7TUE4RE0sZWhGd0JTO01nRnZCVCxpQkFBZ0I7TW5CckRwQixZdkRlcUQ7TUErQnJELFlQOER5RDtNTXBHdkQsd0JBRnFDO01BR3JDLHVCQUhxQyxFMkUyRXBDO012RnVFQztRdUZsS047VTNFa0JJLHlCQUZxQztVQUdyQyx3QkFIcUMsRTJFMkVwQyxFQUFBO016RTVFRDtRQUNFLFlSc0dxRDtRUXJHckQsWUFBVyxFQUNaO01BSUM7UUFDRSxhUmdHb0QsRVEvRnJEO015RXhCUDtRQWtFUSxlaEZPWSxFZ0ZOYjtNQW5FUDtRQXFFUSxxQi9FZWlELEUrRVhsRDtRdkZ5RkQ7VXVGbEtOO1lBdUVVLG1CL0VhK0MsRStFWGxELEVBQUE7TUF6RVA7UUEyRVEsaUJBQWdCLEVBT2pCO1F2RmdGRDtVdUZsS047WUE2RVUsaUIvRU8rQyxFK0VGbEQsRUFBQTtRdkZnRkQ7VXVGbEtOO1luQlVFLGlCdkRlcUQsRTBFeURoRCxFQUFBO01BQ1E7UUFFTCxtQi9FRCtDLEUrRUtoRDtRdkZ5RUg7VXVGL0VTO1lBSUgsb0IvRUg2QyxFK0VLaEQsRUFBQTtFQXpGVDtJQThGSSxvQmhGUlc7SWdGU1gsZWhGMUJnQjtJZ0YyQmhCLHNCQUFxQjtJQUNyQixtQkFBa0I7SUFDbEIsdUJBQTJCO0lBQzNCLDRCQUFrQjtRQUFsQiwyQkFBa0I7UUFBbEIsbUJBQWtCLEVBUW5CO0l2RnVERztNdUZsS047UUFxR00sdUJBQTJCLEVBTTlCLEVBQUE7SUEzR0g7TUF3R00sb0JoRi9CYztNZ0ZnQ2QsZWhGcENjLEVnRnFDZjtFQTFHTDtJQStHUSxpQkFBZ0IsRUFPakI7SXZGNENEO011RmxLTjtRQWlIVSxpQi9FN0IrQyxFK0VrQ2xELEVBQUE7SXZGNENEO011RmxLTjtRbkJVRSxpQnZEZXFELEUwRTZGaEQsRUFBQTtFQXRIUDtJQXlITSw0REFBb0U7SUFDcEUsMkJBQTBCO0lBQzFCLHFDQUFvQztJQUNwQyxjQUFhLEVBSWQ7RUFoSUw7SUFtSUksc0IvRS9DcUQ7SStFZ0RyRCx1Qi9FaERxRCxFK0VpRHREO0VBcklIO0lBMElVLGtCL0V0RCtDO0krRXVEL0MsaUJBQWdCLEVBQ2pCOztBQUtUO0VBRUksc0IvRS9EcUQ7RStFZ0VyRCxvQi9FaEVxRCxFK0VpRXREOztBQUpIO0VBT00sNkJoRmxFUyxFZ0ZtRVY7O0FBUkw7RUFXSSx5QkFBd0IsRUFDekI7O0FBWkg7RUFjSSxVQUFTLEVBQ1Y7O0FBR0g7RUFDRSxxQkFBYTtFQUFiLGNBQWE7RUFDYixvQkFBcUI7TUFBckIsc0JBQXFCO0VBQ3JCLG9CQUFlO01BQWYsZ0JBQWU7RUFDZixxQi9FbkZ1RCxFK0V5TnhEO0VBMUlEO0lBT0kseUJBQXdCLEVBQ3pCO0V2RlRHO0l1RkNOO01BVUksb0IvRXpGcUQsRStFeU54RCxFQUFBO0VBMUlEO0lBYUkscUJBQVk7UUFBWixhQUFZO0lBQ1oscUJBQWM7UUFBZCxlQUFjO0lBQ2QsNkJBQWU7UUFBZixnQkFBZTtJQUNmLFdBQVU7SUFDVixlaEY5Rlc7SWdGK0ZYLHVCL0VqR3FEO0krRWtHckQsdUIvRWxHcUQ7SStFbUdyRCx3Qi9FbkdxRCxFK0U4S3REO0l2RmhHRztNdUZDTjtRQXNCTSxvQkFBbUI7UUFDbkIsa0NBQW1CO1lBQW5CLHFCQUFtQjtRQUNuQix3Qi9FdkdtRDtRK0V3R25ELHlCL0V4R21ELEUrRThLdEQ7UUFyRVc7VUFDTixlQUFjO1VBQ2QsNkJBQWM7Y0FBZCxnQkFBYyxFQUNmLEVBQUE7SXZGOUJEO011RkNOO1FBZ0NNLGVBQWMsRUErRGpCO1FBckVXO1VBUU4sZUFBYyxFQUtmO1VBTlE7WUFHTCxvQi9FbkgrQztZK0VvSC9DLG1CL0VwSCtDLEUrRXFIaEQ7UUFFSztVQUNOLGVBQWMsRUFDZjtRQUNPO1VBQ04sb0JBQW1CLEVBYXBCO1VBZFE7O1lBSUwscUJBQWE7WUFBYixjQUFhO1lBQ2Isd0JBQW1CO2dCQUFuQixvQkFBbUI7WUFDbkIsdUJBQW1CO2dCQUFuQixvQkFBbUIsRUFPcEI7WUFiTTs7Y0FRSCxzQi9FbEk2QyxFK0VtSTlDO1lBVEk7O2NBV0gsbUJBQWM7a0JBQWQsZUFBYyxFQUNmO1FBR0c7VUFDTixvQkFBbUIsRUFhcEI7VUFkUTs7WUFJTCxxQkFBYTtZQUFiLGNBQWE7WUFDYix3QkFBbUI7Z0JBQW5CLG9CQUFtQjtZQUNuQix1QkFBbUI7Z0JBQW5CLG9CQUFtQixFQU9wQjtZQWJNOztjQVFILHNCL0VqSjZDLEUrRWtKOUM7WUFUSTs7Y0FXSCxtQkFBYztrQkFBZCxlQUFjLEVBQ2YsRUFBQTtJQXRFWDtNQTJFTSx3Qi9FMUptRDtNK0UySm5ELGdCL0UzSm1EO00rRWdLbkQsaUJBQWdCLEVBQ2pCO012Rm5GQztRdUZDTjtVQThFUSx1Qi9FN0ppRDtVK0U4SmpELGtCL0U5SmlELEUrRWlLcEQsRUFBQTtJQWxGTDtNQW9GTSx3Qi9FbkttRDtNK0VvS25ELG9CL0VwS21EO00rRXFLbkQsaUJoRnhKa0I7TWdGeUpsQixlaEZqTGMsRWdGcUxmO012RjVGQztRdUZDTjtVQXlGUSxnQi9FeEtpRCxFK0UwS3BELEVBQUE7SUEzRkw7TUE2Rk0sb0IvRTVLbUQsRStFNktwRDtFQTlGTDtJQWlHSSxlaEYzTGdCO0lnRjRMaEIsZUFBYyxFQTRCZjtJQTlISDtNQXFHUSxvQkFBbUI7TUFDbkIsWUFBVztNQUNYLHNCQUFxQjtNQUNyQixtQkFBa0I7TUFDbEIsZS9FeExpRDtNK0V5TGpELFlBQVc7TUFDWCxzQi9FMUxpRDtNK0UyTGpELGlCQUFnQjtNQUNoQiw4QkFBNkI7TUFDN0IsNEJoRnhNWTtNZ0Z5TVosMEJoRnpNWTtNZ0YwTVosZ0IvRS9MaUQ7TStFZ01qRCxpQi9FaE1pRDtNK0VpTWpELG9EQUErQztVQUEvQyxnREFBK0M7TUFDL0MseUJBQXdCLEVBTXpCO012RnJIRDtRdUZKTjtVQXFIVSx3Qi9FcE0rQztVK0VxTS9DLGdCL0VyTStDO1UrRXNNL0MsK0RBQTBEO2NBQTFELDJEQUEwRCxFQUU3RCxFQUFBO0lBekhQO01BNEhNLFlBQVcsRUFDWjtFdkY5SEM7SXVGQ047TUFpSU0sb0JBQW1CLEVBQ3BCO0lBbElMO01Bb0lNLGVBQWMsRUFDZjtJQXJJTDtNQXVJTSxlQUFjLEVBQ2YsRUFBQTs7QUMvU0w7RUFDRSxXQUFVLEVBK0tYO0VBaExEO0k3RWlHRSxnQkppQ21CO0lJcEVqQixtQkFBa0I7SUFDbEIsa0JBQWlCO0k2RTNEakIsbUJBQWtCLEVBUW5CO0kvRTZKRDtNQUVFLGVBQWM7TUFDZCxhQUFZO01BR1YsMkJBQWE7VUFBYixjQUFhO01BQ2Isa0JBQVE7VUFBUixTQUFRLEVBRVg7SUFFRDtNQUNFLFlBQVcsRUFDWjtJVGhCRztNd0Z0S047UUFNTSxxQkFBYTtRQUFiLGNBQWEsRUFNaEI7UUFaSDtVQVNRLGNBQWEsRUFDZCxFQUFBO0V4RjRKRDtJd0Z0S047TUFnQlEsZ0NBQTJCO1VBQTNCLDRCQUEyQixFQUM1QixFQUFBO0VBakJQO0lwQmNFLFl2RGVxRDtJQStCckQsWVA4RHlEO0lNcEd2RCx3QkFGcUM7SUFHckMsdUJBSHFDLEU0RU90QztJeEYySUc7TXdGdEtOO1E1RXNCSSx5QkFGcUM7UUFHckMsd0JBSHFDLEU0RU90QyxFQUFBO0kxRVJDO01BQ0UsWVJzR3FEO01RckdyRCxZQUFXLEVBQ1o7SUFJQztNQUNFLGFSZ0dvRCxFUS9GckQ7SWQwSUQ7TXdGdEtOO1FBdUJNLGtCQUFhO1lBQWIsY0FBYTtRcEJUakIsV3ZEZXFEO1EyRUpqRCxpQkFBZ0IsRUFFbkIsRUFBQTtFQTNCSDtJQThCTSxxQmhGMERtRDtJZ0Z6RG5ELHdCaEZ5RG1ELEVnRnRCcEQ7SXhGb0dDO013RnRLTjtRQWlDUSxrQmhGdURpRDtRZ0Z0RGpELHFCaEZzRGlELEVnRnRCcEQsRUFBQTtJeEZvR0M7TXdGdEtOO1FBc0NVLDZCQUE2QjtRQUM3QixnQkFBZSxFQUNoQixFQUFBO0lBeENUO01BMkNRLGVBQWM7TUFDZCxpQmpGd0RrQjtNaUZ2RGxCLG9CaEYyQ2lELEVnRnZDbEQ7TXhGcUhEO1F3RnRLTjtVQStDVSxvQmhGeUMrQyxFZ0Z2Q2xELEVBQUE7SXhGcUhEO013RnRLTjtRQW9EVSxxQkFBYTtRQUFiLGNBQWE7UUFDYix3QkFBbUI7WUFBbkIsb0JBQW1CO1FBQ25CLHFCQUEyQjtZQUEzQiw0QkFBMkI7UUFDM0Isd0JBQXVCO1lBQXZCLHdCQUF1QjtRQUN2QixvQkFBcUI7WUFBckIsc0JBQXFCLEVBUXRCO1FBaEVUO1VBMERZLHFCaEY4QjZDO1VnRjdCN0Msd0JoRjZCNkM7Y2dGN0I3QyxvQmhGNkI2QyxFZ0Y1QjlDO1FBNURYO1VBOERZLGtCQUFXO2NBQVgsWUFBVyxFQUNaLEVBQUE7RUEvRFg7SUFxRUksb0JqRnFCVyxFaUZnRVo7SXhGWUc7TXdGL0ZBO1FBRUksa0JBQVE7WUFBUixTQUFRLEVBQ1Q7TUFISDtRQUtJLGtCQUFRO1lBQVIsU0FBUSxFQUNULEVBQUE7SXhGeUZIO013RnJGQTtRQUNFLHFCaEZNaUQsRWdGTGxELEVBQUE7SUFuRlA7TUFzRk0sV0FBVTtNQUNWLHFCQUFhO01BQWIsY0FBYSxFQWtFZDtNQXpKTDtRQXlGUSxpQkFBZ0I7UUFDaEIsV0FBVTtRQUNWLFVBQVM7UUFDVCw4QmpGSlc7UWlGS1gsa0JBQVc7WUFBWCxZQUFXLEVBMkRaO1F4RmNEO1V3RnRLTjtZQStGVSxxQkFBYTtZQUFiLGNBQWE7WUFDYiwyQkFBc0I7Z0JBQXRCLHVCQUFzQjtZQUN0Qix1QkFBd0I7Z0JBQXhCLHlCQUF3QjtZQUN4QixjQUFhLEVBc0RoQixFQUFBO1FBeEpQO1VBcUdVLGlDakZiUztVaUZjVCxrQkFBVztjQUFYLFlBQVc7VUFDWCxxQkFBYTtVQUFiLGNBQWE7VUFDYix1QkFBbUI7Y0FBbkIsb0JBQW1CO1VBQ25CLHVCQUF3QjtjQUF4Qix5QkFBd0IsRUE4Q3pCO1VBdkpUO1lBMkdZLGlCQUFnQixFQUNqQjtVQTVHWDtZQThHWSxrQkFBVztnQkFBWCxZQUFXO1lBQ1gsZWpGdEJHO1lpRnVCSCxlQUFjO1lBQ2Qsc0JoRnpCNkM7WWdGMEI3Qyx5QmhGMUI2QztZZ0YyQjdDLHVCaEYzQjZDO1lnRjRCN0Msd0JoRjVCNkM7WWdGNkI3QyxvQmhGN0I2QyxFZ0Y4RDlDO1l4RmdCTDtjd0Z0S047Z0JBdUhjLHdCaEYvQjJDO2dCZ0ZnQzNDLHlCaEZoQzJDO2dCZ0ZpQzNDLG9CaEZqQzJDLEVnRjhEOUMsRUFBQTtZQXRKWDtjQTRIYyxlakZuRE0sRWlGb0RQO1lBN0hiO2NBZ0lnQixvQkFBbUI7Y0FDbkIsWUFBVztjQUNYLHNCQUFxQjtjQUNyQixtQkFBa0I7Y0FDbEIsY2hGNUN5QztjZ0Y2Q3pDLFlBQVc7Y0FDWCxzQmhGOUN5QztjZ0YrQ3pDLGlCQUFnQjtjQUNoQiw4QkFBNkI7Y0FDN0IsNEJqRmhFSTtjaUZpRUosMEJqRmpFSTtjaUZrRUosZWhGbkR5QztjZ0ZvRHpDLGdCaEZwRHlDO2NnRnFEekMsb0RBQStDO2tCQUEvQyxnREFBK0M7Y0FDL0MseUJBQXdCLEVBTXpCO2N4RnVCVDtnQndGM0tOO2tCQWdKa0Isd0JoRnhEdUM7a0JnRnlEdkMsZ0JoRnpEdUM7a0JnRjBEdkMsK0RBQTBEO3NCQUExRCwyREFBMEQsRUFFN0QsRUFBQTtFQXBKZjtJcEJjRSxZdkRlcUQ7SUErQnJELFlQOER5RDtJTXBHdkQsaUJKdUVTO0lJdEVULGdCSnNFUyxFZ0ZrRlY7STFFNUpDO01BQ0UsWVJzR3FEO01RckdyRCxZQUFXLEVBQ1o7SUFJQztNQUNFLGFSZ0dvRCxFUS9GckQ7SWQwSUQ7TXdGdEtOO1FBOEpNLG1CQUFjO1lBQWQsZUFBYztRcEJoSmxCLFd2RGVxRDtRMkVtSWpELHVCQUFzQjtRQUN0QixtQkFBa0I7UUFDbEIsaUJBQWdCLEVBYW5CO1FBL0tIO1VBb0tRLGFBQVk7VUFDWixpQkFBZ0I7VUFDaEIsZ0JBQWU7VUFDZixZQUFXO1VBQ1gsZ0JBQWU7VUFDZixtQkFBa0I7VUFDbEIsVUFBUztVQUNULFNBQVE7VUFDUixxQ0FBZ0M7Y0FBaEMsaUNBQWdDLEVBQ2pDLEVBQUE7O0FDN0tQO0VBQ0UsV0FBVSxFQXFHWDtFQXRHRDtJQUdJLHFCQUFhO0lBQWIsY0FBYTtJQUNiLDJCQUFzQjtRQUF0Qix1QkFBc0I7SUFDdEIscUJBQTJCO1FBQTNCLDRCQUEyQjtJQUMzQiw4QkFBNkI7SUFDN0IsZ0dBQWtIO0lBQ2xILDZCQUE0QjtJQUM1QiwyQkFBMEI7SUFDMUIsNkJBQTRCO0lBQzVCLHFCakY2RXFEO0lpRjVFckQsd0JqRjRFcUQsRWlGdkV0RDtJekZxSkc7TXlGdEtOO1FBY00sa0JqRjBFbUQ7UWlGekVuRCxxQmpGeUVtRCxFaUZ2RXRELEVBQUE7RUFqQkg7SXJCY0UsWXZEZXFEO0lBK0JyRCxZUDhEeUQ7SU1wR3ZELHdCQUZxQztJQUdyQyx1QkFIcUM7STZFQXJDLHFCQUFhO0lBQWIsY0FBYTtJQUNiLDJCQUFzQjtRQUF0Qix1QkFBc0I7SUFDdEIsc0JBQXFCO0lBQ3JCLG9CQUFlO1FBQWYsZ0JBQWU7SUFDZixVQUFTO0lBQ1QsV0FBVSxFQTRFWDtJekZpRUc7TXlGdEtOO1E3RXNCSSx5QkFGcUM7UUFHckMsd0JBSHFDLEU2RWlGdEMsRUFBQTtJM0VsRkM7TUFDRSxZUnNHcUQ7TVFyR3JELFlBQVcsRUFDWjtJQUlDO01BQ0UsYVJnR29ELEVRL0ZyRDtJZDBJRDtNeUZ0S047UUEyQk0sd0JBQW1CO1lBQW5CLG9CQUFtQixFQTBFdEIsRUFBQTtJQXJHSDtNQThCTSxxQkFBYTtNQUFiLGNBQWE7TUFDYiwyQkFBc0I7VUFBdEIsdUJBQXNCO01BQ3RCLHFCQUFZO1VBQVosYUFBWTtNQUNaLHFCQUFjO1VBQWQsZUFBYztNQUNkLDhCQUFnQjtVQUFoQixpQkFBZ0I7TUFDaEIsd0JqRnFEbUQsRWlGWXBEO016RmtFQztReUZ0S047VUFxQ1EsNkJBQWU7Y0FBZixnQkFBZTtVQUNmLHVCakZrRGlELEVpRllwRCxFQUFBO016RmtFQztReUZ0S047VUF5Q1EsNkJBQWU7Y0FBZixnQkFBZTtVQUNmLGlCQUFnQjtVQUNoQix3QmpGNkNpRCxFaUZZcEQsRUFBQTtNQXBHTDtRQThDUSxlbEYrQlk7UWtGOUJaLHVCakZ5Q2lELEVpRnhDbEQ7TUFoRFA7UUFrRFEsZWxGd0NPLEVrRnZDUjtNQW5EUDtRQXFEUSxlbEZxQ087UWtGcENQLGVBQWM7UUFDZCxxQmpGaUNpRDtRaUZoQ2pELG1CQUFrQjtRQUNsQixtQkFBa0IsRUFZbkI7UUFyRVA7VUEyRFUsOEJBQTZCO1VBQzdCLDZCbEY4Qks7VWtGN0JMLDRCbEY2Qks7VWtGNUJMLFlBQVc7VUFDWCxzQkFBcUI7VUFDckIsaUJqRndCK0M7VWlGdkIvQyxvQmpGdUIrQztVaUZ0Qi9DLGdCakZzQitDO1VpRnJCL0MsOEJBQXlCO2NBQXpCLDBCQUF5QixFQUMxQjtNQXBFVDtRQXVFUSxxQkFBYTtRQUFiLGNBQWE7UUFDYiwyQkFBc0I7WUFBdEIsdUJBQXNCLEVBZ0J2QjtRekY4RUQ7VXlGdEtOO1lBMEVVLHdCQUFtQjtnQkFBbkIsb0JBQW1CLEVBY3RCLEVBQUE7UUF4RlA7VUE2RVUsb0JqRlcrQztVaUZWL0MsWUFBVyxFQUNaO1FBL0VUO1VBaUZVLGVsRlNLO1VrRlJMLGtCQUFZO2NBQVosY0FBWTtVQUNaLHFCakZLK0MsRWlGRGhEO1V6RitFSDtZeUZ0S047Y0FxRlksOEJBQWdCO2tCQUFoQixpQkFBZ0IsRUFFbkIsRUFBQTtNQXZGVDtRQTBGUSxpQkFBZ0IsRUFTakI7UUFuR1A7VUE0RlUsMEJsRkZLO1VrRkdMLGVsRnBCVTtVa0ZxQlYsbUJqRk4rQyxFaUZVaEQ7VUFsR1Q7WUFnR1ksMEJsRm5CUSxFa0ZvQlQ7O0FDakdYO0UvRWlHRSxnQkppQ21CO0VJcEVqQixtQkFBa0I7RUFDbEIsa0JBQWlCO0UrRTVEakIsbUJBQWtCLEVBYW5CO0VqRnlKRDtJQUVFLGVBQWM7SUFDZCxhQUFZO0lBR1YsMkJBQWE7UUFBYixjQUFhO0lBQ2Isa0JBQVE7UUFBUixTQUFRLEVBRVg7RUFFRDtJQUNFLFlBQVcsRUFDWjtFaUZ0TEg7SXRCY0UsWXZEZXFEO0lBK0JyRCxZUDhEeUQ7SU1wR3ZELHdCQUZxQztJQUdyQyx1QkFIcUMsRThFTHBDO0kxRnVKQztNMEZ0S047UTlFc0JJLHlCQUZxQztRQUdyQyx3QkFIcUMsRThFTHBDLEVBQUE7STVFSUQ7TUFDRSxZUnNHcUQ7TVFyR3JELFlBQVcsRUFDWjtJQUlDO01BQ0UsYVJnR29ELEVRL0ZyRDtJZDBJRDtNMEZ0S047UXRCY0UsV3ZEZXFELEU2RWRsRCxFQUFBO0kxRnVKQztNMEZ0S047UXRCY0UsaUJ2RGVxRCxFNkVkbEQsRUFBQTtJQWZMO01BYVEsdUJsRjJFaUQsRWtGMUVsRDs7QUFkUDtFQWtCSSxrQmxGMkVTO0VrRjFFVCxtQkFBa0IsRUFDbkI7O0FBcEJIO0VBc0JJLHFCQUFhO0VBQWIsY0FBYTtFQUNiLG9CQUFlO01BQWYsZ0JBQWU7RUFDZixxQkFBMkI7TUFBM0IsNEJBQTJCLEVBSzVCO0VBN0JIO0lBMEJNLHVCbEY4RG1EO0lrRjdEbkQsd0JsRjZEbUQsRWtGNURwRDs7QUE1Qkw7RUErQkksb0JuRnVEZ0IsRW1GdERqQjs7QUFFSDs7RUFFRSxxQkFBYTtFQUFiLGNBQWE7RUFDYixvQkFBZTtNQUFmLGdCQUFlO0VBQ2YscUJBQTJCO01BQTNCLDRCQUEyQjtFQUMzQixtQkFBa0IsRUE2RG5CO0VBNURTOztJQUNOLGVBQWM7SUFDZCxrQkFBaUIsRUFDbEI7RUFUSDs7O0lBWUkseUJBQXdCLEVBQ3pCO0VBYkg7O0lBZUksc0JBQXFCLEVBcUJ0QjtJQXBDSDs7O01Bc0JNLHlCQUF3QixFQUN6QjtJQXZCTDs7TUF5Qk0saUNBQStCO01BQy9CLFlBQVcsRUFTWjtNMUZpR0M7UTBGcElOOztVQTZCVSx3QmxGeUIrQyxFa0ZwQmxELEVBQUE7TTFGa0dEO1EwRnBJTjs7VUFnQ1Usd0JsRnNCK0MsRWtGcEJsRCxFQUFBO0VBbENQOztJQXNDSSxxQkFBYTtJQUFiLGNBQWE7SUFDYix1QkFBbUI7UUFBbkIsb0JBQW1CO0lBQ25CLGVBQWM7SUFDZCw2QkFBZTtRQUFmLGdCQUFlO0lBQ2YscUJBQVk7UUFBWixhQUFZO0lBQ1osdUJsRldxRDtJa0ZWckQsd0JsRlVxRDtJa0ZUckQsWUFBVyxFQW9CWjtJMUZtRUc7TTBGcElOOztRQStDTSw2QkFBZTtZQUFmLGdCQUFlO1FBQ2YsZUFBYztRQUNkLHdCbEZLbUQ7UWtGSm5ELHlCbEZJbUQsRWtGV3RELEVBQUE7STFGbUVHO00wRnBJTjs7UUFxRE0sNkJBQWU7WUFBZixnQkFBZTtRQUNmLGVBQWMsRUFXakIsRUFBQTtJQWpFSDs7TUF5RE0sZUFBYztNQUNkLDJCbEZKbUQ7TWtGS25ELHFCbEZMbUQ7TWtGTW5ELGVBQWMsRUFJZjtNMUZvRUM7UTBGcElOOztVQThEUSxvQmxGUmlELEVrRlVwRCxFQUFBOztBQ2xHTDtFQUNFLFdBQVU7RUFDVixpQkFBZ0I7RUFDaEIsb0JwRnVGYSxFb0ZrTWQ7RUE1UkQ7SUFTSSxpQkFBZ0IsRUE0UGpCO0lBclFIO01BT00sY0FBYSxFQUNkO0kzRjhKQztNMkZ0S047UUFXTSxxQkFBYTtRQUFiLGNBQWEsRUEwUGhCLEVBQUE7SUFyUUg7TUFjTSxrQkFBYTtVQUFiLGNBQWE7TUFDYiw2QkFBZTtVQUFmLGdCQUFlO01BQ2YsbUJuRndFbUQsRW1GN0RwRDtNQVZTO1FBQ1IscUJBQWE7UUFBYixjQUFhO1FBQ2IsMkJBQXNCO1lBQXRCLHVCQUFzQjtRQUN0QixtQkFBYztZQUFkLGVBQWM7UUFDZCw4QkFBZ0I7WUFBaEIsaUJBQWdCLEVBS2Y7UTNGNElEO1UyRnJKUTtZQU1KLGtCQUFRO2dCQUFSLFNBQVE7WUFDUiw2QkFBZTtnQkFBZixnQkFBZSxFQUVsQixFQUFBO0lBMUJQOztNdkJjRSxZdkRlcUQ7TUErQnJELFlQOER5RDtNTXBHdkQsd0JBRnFDO01BR3JDLHVCQUhxQztNK0VXbkMscUJuRnlEbUQsRW1GcERwRDtNM0ZrSUM7UTJGdEtOOztVL0VzQkkseUJBRnFDO1VBR3JDLHdCQUhxQyxFK0VnQnBDLEVBQUE7TTdFakJEOzs7UUFDRSxZUnNHcUQ7UVFyR3JELFlBQVcsRUFDWjtNQUlDOztRQUNFLGFSZ0dvRCxFUS9GckQ7TWQwSUQ7UTJGdEtOOztVQWlDUSxrQm5GdURpRDtVbUZ0RGpELHVCbkZzRGlELEVtRnBEcEQsRUFBQTtJM0ZrSUM7TTJGdEtOO1FBd0NVLHFCbkZnRCtDLEVtRjlDbEQsRUFBQTtJQTFDUDs7TXZCY0UsWXZEeUIyRDtNQXFCM0QsWVA4RHlEO01NcEd2RCxpQkp1RVM7TUl0RVQsZ0JKc0VTLEVtRnpDUjtNN0VqQ0Q7OztRQUNFLFlSc0dxRDtRUXJHckQsWUFBVyxFQUNaO01BSUM7O1FBQ0UsYVJnR29ELEVRL0ZyRDtNZDBJRDtRMkZ0S047O1VBZ0RRLFdBQVU7VUFDVixxQkFBYTtVQUFiLGNBQWE7VUFDYiwyQkFBc0I7Y0FBdEIsdUJBQXNCLEVBRXpCLEVBQUE7SUFwREw7TUFzRE0sbUJBQWtCO01BQ2xCLDBCcEYrQmM7TW9GOUJkLGtCQUFXO1VBQVgsWUFBVztNQUNYLHFCQUFhO01BQWIsY0FBYTtNQUNiLGVwRitCUztNb0Y5QlQsdUJBQXdCO1VBQXhCLHlCQUF3QjtNQUN4QixpQkFBZ0IsRUFrTGpCO00zRnhFQztRMkZ0S047VUE4RFEsaUJBQWdCO1VBQ2hCLG1CQUFjO2NBQWQsZUFBYyxFQStLakIsRUFBQTtNQTlPTDtRQWtFUSx1QkFBc0I7UUFDdEIsdUJBQXNCO1FBQ3RCLDZCQUE0QjtRQUM1QixtQkFBa0I7UUFDbEIsNEJBQTJCO1FBQzNCLHFCQUFhO1FBQWIsY0FBYTtRQUNiLG1CQUFjO1lBQWQsZUFBYztRQUNkLFlBQVcsRUE4Qlo7UUF2R1A7VUEyRVUsWUFBVztVQUNYLGVBQWM7VUFDZCxZQUFXO1VBQ1gsYUFBWTtVQUNaLG1CQUFrQjtVQUNsQixPQUFNO1VBQ04sUUFBTztVQUNQLHFDQUFvQyxFQVNyQztVM0YyRUg7WTJGdEtOO2NBb0ZZLGdHQUErRixFQU9sRyxFQUFBO1UzRjJFSDtZMkZoRlk7Y0FFSiwrQkFBOEIsRUFFakMsRUFBQTtRQTFGWDtVQThGWSxjQUFhLEVBQ2Q7UUEvRlg7VUFrR1UsZXBGVEssRW9GVU47UUFuR1Q7VUFxR1UsZXBGNUJVLEVvRjZCWDtNQXRHVDs7UUEwR1EscUJBQWE7UUFBYixjQUFhO1FBQ2IsMkJBQXNCO1lBQXRCLHVCQUFzQjtRQUN0QixxQkFBMkI7WUFBM0IsNEJBQTJCO1FBQzNCLHdCQUFvQjtZQUFwQixxQkFBb0I7UUFDcEIsbUJBQWM7WUFBZCxlQUFjO1FBQ2QsbUJBQWtCO1FBQ2xCLFdBQVU7UUFDVixlcEZ4Qk87UW9GeUJQLHVCbkYxQmlEO1FtRjJCakQsd0JuRjNCaUQ7UW1GNEJqRCxxQm5GNUJpRDtRbUY2QmpELHdCbkY3QmlELEVtRndEbEQ7UTNGc0JEO1UyRnRLTjs7WUF1SFUsd0JuRi9CK0M7WW1GZ0MvQyx5Qm5GaEMrQyxFbUZ3RGxELEVBQUE7UTNGMkJEO1UyRjNLTjs7WUEySFUsa0JuRm5DK0M7WW1Gb0MvQyxxQm5GcEMrQyxFbUZ3RGxELEVBQUE7UUFoSlA7O1VBK0hVLFlBQVcsRUFDWjtRQWhJVDs7VUFrSVUsbUNBQTRFO1VBSTVFLG9CbkY5QytDO1VtRitDL0MsWUFBVyxFQUNaO1UzRjhCSDtZMkZ0S047O2NBb0lZLG9DQUE2RSxFQUloRixFQUFBO1EzRm1DSDtVMkYzS047Ozs7OztZdkJjRSxpQnZEeUIyRCxFOEV3R3BELEVBQUE7TUEvSVQ7UUFrSlEsZXBGekVZLEVvRjBFYjtNQW5KUDtRQXFKUSxvQkFBbUI7UUFDbkIsb0JuRjlEaUQsRW1Gd0VsRDtRM0ZNRDtVMkZ0S047WUF3SlUsb0JuRmhFK0MsRW1Gd0VsRCxFQUFBO1EzRk1EO1UyRnRLTjtZQTJKVSxtQm5GbkUrQyxFbUZ3RWxELEVBQUE7UUFoS1A7VUE4SlUsb0JuRnRFK0MsRW1GdUVoRDtNQS9KVDtRQWtLUSxxQkFBYTtRQUFiLGNBQWE7UUFDYiwyQkFBc0I7WUFBdEIsdUJBQXNCO1FBQ3RCLG9CQUFtQixFQUtwQjtRM0ZIRDtVMkZ0S047WUFzS1Usd0JBQW1CO2dCQUFuQixvQkFBbUI7WUFDbkIsdUJBQThCO2dCQUE5QiwrQkFBOEIsRUFFakMsRUFBQTtNQXpLUDtRQTJLUSxxQm5GbkZpRDtRbUZvRmpELG9CcEZuR1k7UW9Gb0daLGVwRm5GTztRb0ZvRlAsMkJBQXNCO1lBQXRCLHVCQUFzQixFQUt2QjtRQW5MUDtVQWdMVSxvQnBGdEZLO1VvRnVGTCxlcEZ4R1UsRW9GeUdYO01BbExUO1FBcUxRLGNBQWEsRUE2QmQ7UUE1QlM7VUFHTixtQkFBYztjQUFkLGVBQWM7VUFDZCxZQUFXO1VBQ1gsZW5GbkcrQyxFbUY2R2hEO1UzRi9CSDtZMkZnQlU7Y0FPTiw2QkFBZTtrQkFBZixnQkFBZTtjQUNmLGtCQUFpQjtjQUNqQixrQkFBUTtrQkFBUixTQUFRO2NBQ1IsYW5GeEcrQyxFbUY2R2hELEVBQUE7VUFmUTtZQWFMLFlBQVcsRUFDWjtRQXBNWDtVQXVNVSxtQm5GL0crQyxFbUZnSGhEO1EzRjdCSDtVMkYzS047WUEwTVUsZUFBYyxFQVFqQixFQUFBO1EzRnZDRDtVMkYzS047WUE2TVUsZUFBYztZQUNkLGtCQUFRO2dCQUFSLFNBQVE7WUFDUixxQkFBWTtnQkFBWixhQUFZO1lBQ1osbUJBQWtCLEVBRXJCLEVBQUE7TUFsTlA7UUFvTlEsZXBGMUhPLEVvRm1KUjtRQTdPUDtVQXNOVSxlcEY1SEssRW9GNkhOO1FBdk5UO1VBeU5VLGVwRjVJVSxFb0Y2SVg7UUExTlQ7VUE0TlUsb0JwRmxJSztVb0ZtSUwsZXBGcEpVLEVvRndKWDtVQWpPVDtZQStOWSxvQnBGbEpRLEVvRm1KVDtRQWhPWDtVQW9PWSwrQkFBOEIsRUFJL0I7VTNGbEVMO1kyRnRLTjtjQXNPYyxvRkFBbUYsRUFFdEYsRUFBQTtRQXhPWDtVQTBPWSxlcEZoSkcsRW9GaUpKO0lBM09YO01BbVBZLHVCbkYzSjZDLEVtRm9LOUM7TTNGdEZMO1EyRnRLTjtVQXFQYyxrQm5GN0oyQyxFbUZvSzlDLEVBQUE7TTNGdEZMO1EyRnRLTjtVQXdQYyx1Qm5GaEsyQztVbUZpSzNDLG9CbkZqSzJDO1VtRmtLM0MsaUJBQWdCLEVBRW5CLEVBQUE7STNGakZMO00yRjNLTjtRdkJjRSxpQnZEeUIyRCxFOEV5TmhELEVBQUE7RTNGMUZQO0kyRnRLTjtNQTBRVSx3QkFBbUI7VUFBbkIsb0JBQW1CLEVBSXBCO01BOVFUO1FBNFFZLGVBQWMsRUFDZixFQUFBO0VBN1FYO0lBbVJJLG1CbkZ0TFM7SW1GdUxULG1CQUFrQixFQU9uQjtJM0ZySEc7TTJGdEtOO1FBc1JNLG1CbkZ6TE8sRW1GOExWLEVBQUE7SUEzUkg7TUF5Uk0sVUFBUyxFQUNWOztBQ3pSTDs7RUFHSSxZQUFXO0VBQ1gscUJBQWE7RUFBYixjQUFhO0VBQ2Isd0JBQW1CO01BQW5CLG9CQUFtQjtFQUNuQixvQkFBZTtNQUFmLGdCQUFlLEVBQ2hCOztBQVBIO0VBVU0sbUJBQWM7TUFBZCxlQUFjLEVBbUJmO0U1RndJQztJNEZyS047TUFZUSxXQUFVO01BQ1Ysa0JBQWE7VUFBYixjQUFhLEVBZ0JoQixFQUFBO0VBN0JMO0lBZ0JRLG1CcEZ1RWlEO0lvRnRFakQsdUJwRnNFaUQ7SW9GckVqRCxtQnBGcUVpRCxFb0ZqRWxEO0k1RitJRDtNNEZyS047UUFvQlUsb0JwRm1FK0MsRW9GakVsRCxFQUFBO0VBdEJQO0lBeUJVLHVCcEY4RCtDO0lvRjdEL0MsWUFBVyxFQUNaOztBQUtUO0VBRUksZUFBYyxFQU9mO0VBVEg7SUFJTSxzQnBGbURtRCxFb0YvQ3BEO0k1RjZIQztNNEZySU47UUFNUSx1QnBGaURpRCxFb0YvQ3BELEVBQUE7O0FBUkw7RUFXSSxxQkFBYTtFQUFiLGNBQWE7RUFDYixxQkFBMkI7TUFBM0IsNEJBQTJCO0VBQzNCLG9CQUFlO01BQWYsZ0JBQWUsRUFzRmhCO0U1RmtDRztJNEZySU47TUFlTSx1QnBGd0NtRCxFb0Y0Q3RELEVBQUE7RUFuR0g7SUFrQk0sbUJBQWM7UUFBZCxlQUFjO0lBQ2Qsd0JBQXVCLEVBK0V4QjtJNUZtQ0M7TTRGcklOO1FBcUJRLGdCQUFlO1FBQ2YsdUJBQWtCO1lBQWxCLG1CQUFrQjtRQUNsQix1QnBGZ0NpRDtRb0YvQmpELGlCQUFnQixFQTBFbkIsRUFBQTtJNUZtQ0M7TTRGcklOO1FBMkJRLFdBQVU7UUFDVixrQkFBYTtZQUFiLGNBQWE7UUFDYixpQkFBZ0IsRUFxRW5CLEVBQUE7SUFsR0w7TUFnQ1Esc0JwRnVCaUQ7TW9GbkJqRCx3QnBGbUJpRDtNb0ZsQmpELGVBQWMsRUFJZjtNNUY0RkQ7UTRGcklOO1VBa0NVLHVCcEZxQitDLEVvRmRsRCxFQUFBO01BekNQO1FBdUNVLFlBQVcsRUFDWjtJQXhDVDtNQTJDUSx1QnBGWWlELEVvRlhsRDtJQTVDUDtNQThDUSxlckZOWTtNcUZPWixxQnBGUWlELEVvRmtCbEQ7TTVGNEREO1E0RnJJTjtVQWlEVSxtQnBGTStDLEVvRmtCbEQsRUFBQTtNQXpFUDtRQW9EVSxvQkFBbUI7UUFDbkIsWUFBVztRQUNYLHNCQUFxQjtRQUNyQixtQkFBa0I7UUFDbEIsZXBGRCtDO1FvRkUvQyxZQUFXO1FBQ1gsc0JwRkgrQztRb0ZJL0MsaUJBQWdCO1FBQ2hCLDhCQUE2QjtRQUM3Qiw0QnJGckJVO1FxRnNCViwwQnJGdEJVO1FxRnVCVixnQnBGUitDO1FvRlMvQyxpQnBGVCtDO1FvRlUvQyxvREFBK0M7WUFBL0MsZ0RBQStDO1FBQy9DLHlCQUF3QixFQU16QjtRNUZrRUg7VTRGMUlOO1lBb0VZLHdCcEZiNkM7WW9GYzdDLGdCcEZkNkM7WW9GZTdDLCtEQUEwRDtnQkFBMUQsMkRBQTBELEVBRTdELEVBQUE7SUF4RVQ7TUEyRVEsZXJGbEJPLEVxRnVCUjtNQWhGUDtRQTZFVSw0QnJGcEJLO1FxRnFCTCwwQnJGckJLLEVxRnNCTjtJQS9FVDtNQW1GVSxlckYzQkssRXFGaUNOO01BekZUO1FBcUZZLDRCckY3Qkc7UXFGOEJILDBCckY5Qkc7UXFGK0JILHVCcEZoQzZDLEVvRmlDOUM7SUF4Rlg7TUE0RlEsZXJGaERZLEVxRnFEYjtNQWpHUDtRQThGVSw0QnJGbERVO1FxRm1EViwwQnJGbkRVLEVxRm9EWDs7QUNoSVQ7RUFDRSxrQ0FBaUMsRUE2R2xDO0VBOUdEO0lBR0ksWUFBVztJQUNYLHFCQUFhO0lBQWIsY0FBYTtJQUNiLHdCQUFtQjtRQUFuQixvQkFBbUI7SUFDbkIsb0JBQWU7UUFBZixnQkFBZSxFQXlDaEI7SUEvQ0g7TUFRTSxtQkFBYztVQUFkLGVBQWMsRUEwQmY7TTdGbUlDO1E2RnJLTjtVQVVRLGVBQWM7VUFDZCxrQkFBYTtjQUFiLGNBQWEsRUF1QmhCLEVBQUE7TUFsQ0w7UUFjUSxvQnRGNERpQixFc0Z4RGxCO01BbEJQO1FBb0JRLG9CdEZpRVksRXNGaEViO01BckJQO1FBdUJRLG9CdEZxRFksRXNGcERiO01BeEJQO1FBMEJRLG9CdEY2RFcsRXNGNURaO01BM0JQO1FBNkJRLG9CdEYyRE8sRXNGdkRSO0lBakNQO01BcUNRLG1CQUFjO1VBQWQsZUFBYztNQUNkLGlCQUFnQixFQU9qQjtNQTdDUDtRQXdDVSxzQkFBdUI7WUFBdkIsd0JBQXVCLEVBSXhCO1FBNUNUO1VBMENZLGlCQUFnQixFQUNqQjtFQTNDWDtJQWlESSwwQnRGcUNpQixFc0ZwQ2xCO0VBbERIO0lsRmdHRSxnQkppQ21CO0lJcEVqQixtQkFBa0I7SUFDbEIsa0JBQWlCO0lrRlRqQixtQnJGdUNTLEVxRmlCVjtJcEYyREQ7TUFFRSxlQUFjO01BQ2QsYUFBWTtNQUdWLDJCQUFhO1VBQWIsY0FBYTtNQUNiLGtCQUFRO1VBQVIsU0FBUSxFQUVYO0lBRUQ7TUFDRSxZQUFXLEVBQ1o7SVRoQkc7TTZGcktOO1FBdURNLGdCckZxQ08sRXFGaUJWLEVBQUE7SUE3R0g7TUEwRE0sZUFBYyxFQUNmO0lBM0RMO016QmFFLFl2RGVxRDtNQStCckQsWVA4RHlEO01NcEd2RCx3QkFGcUM7TUFHckMsdUJBSHFDO01pRjJDbkMsaUJBQWdCLEVBb0NqQjtNN0ZtRUM7UTZGcktOO1VqRnFCSSx5QkFGcUM7VUFHckMsd0JBSHFDLEVpRitFcEMsRUFBQTtNL0VoRkQ7UUFDRSxZUnNHcUQ7UVFyR3JELFlBQVcsRUFDWjtNQUlDO1FBQ0UsYVJnR29ELEVRL0ZyRDtNK0UzQlA7UUFnRVEsb0J0RnlCTztRc0Z4QlAsaUJBQWdCLEVBZ0NqQjtRN0ZvRUQ7VTZGcktOO1lBbUVVLGdCQUFlLEVBOEJsQixFQUFBO1FBakdQO1VBc0VVLFdBQVUsRUEwQlg7VUFoR1Q7WUF3RVksMkJBQXNCO2dCQUF0Qix1QkFBc0I7WUFDdEIsVUFBUyxFQUNWO1VBMUVYO1lBNEVZLDBCQUF3QjtZQUN4QixVQUFTLEVBQ1Y7VUE5RVg7WUFnRlksZXRGUlE7WXNGU1IsdUJyRk02QztZcUZMN0MsbUJBQWtCO1lBQ2xCLHVCQUFzQixFQVl2QjtZQS9GWDtjQXFGYyw4QkFBNkI7Y0FDN0IsNkJ0RmRNO2NzRmVOLDRCdEZmTTtjc0ZnQk4sWUFBVztjQUNYLHNCQUFxQjtjQUNyQixpQnJGSDJDO2NxRkkzQyxzQnJGSjJDO2NxRkszQyxnQnJGTDJDO2NxRk0zQyw4QkFBeUI7a0JBQXpCLDBCQUF5QixFQUMxQjtJQTlGYjtNekJhRSxZdkRlcUQ7TUErQnJELFlQOER5RDtNTXBHdkQsd0JBRnFDO01BR3JDLHVCQUhxQztNaUZrRm5DLHVCckZUTztNcUZVUCxpQkFBZ0IsRUFNakI7TTdGeURDO1E2RnJLTjtVakZxQkkseUJBRnFDO1VBR3JDLHdCQUhxQyxFaUZ5RnBDLEVBQUE7TS9FMUZEO1FBQ0UsWVJzR3FEO1FRckdyRCxZQUFXLEVBQ1o7TUFJQztRQUNFLGFSZ0dvRCxFUS9GckQ7TWQwSUQ7UTZGcktOO1VBd0dRLG9CckZaSyxFcUZnQlIsRUFBQTs7QUM3R0w7RW5GaUdFLGdCSmlDbUI7RUlwRWpCLG1CQUFrQjtFQUNsQixrQkFBaUIsRW1GbUNsQjtFckZ1RUQ7SUFFRSxlQUFjO0lBQ2QsYUFBWTtJQUdWLDJCQUFhO1FBQWIsY0FBYTtJQUNiLGtCQUFRO1FBQVIsU0FBUSxFQUVYO0VBRUQ7SUFDRSxZQUFXLEVBQ1o7RXFGdExIO0kxQmNFLFl2RGVxRDtJQStCckQsWVA4RHlEO0lNcEd2RCx3QkFGcUM7SUFHckMsdUJBSHFDLEVrRk5wQztJOUZ3SkM7TThGdEtOO1FsRnNCSSx5QkFGcUM7UUFHckMsd0JBSHFDLEVrRk5wQyxFQUFBO0loRktEO01BQ0UsWVJzR3FEO01RckdyRCxZQUFXLEVBQ1o7SUFJQztNQUNFLGFSZ0dvRCxFUS9GckQ7SWQwSUQ7TThGdEtOO1FBT1Esd0J0RmlGaUQ7UTREMUV2RCxpQnZEZXFELEVpRmZsRCxFQUFBO0lBZEw7TUFZUSx1QnRGNEVpRCxFc0YzRWxEO0VBYlA7SUFpQlEsWUFBVztJQUNYLFVBQVMsRUFDVjtFQW5CUDs7SW5GaUdFLGdCSmlDbUI7SUlwRWpCLG1CQUFrQjtJQUNsQixrQkFBaUI7SW1GeENiLFVBQVM7SUFDVCxtQnRGcUVLLEVzRkdOO0lyRnlFTDs7O01BRUUsZUFBYztNQUNkLGFBQVk7TUFHViwyQkFBYTtVQUFiLGNBQWE7TUFDYixrQkFBUTtVQUFSLFNBQVEsRUFFWDtJQUVEOztNQUNFLFlBQVcsRUFDWjtJVGhCRztNOEZ0S047O1FBMEJVLG1CdEZtRUcsRXNGR04sRUFBQTtJQWhHUDs7TTFCY0UsWXZEZXFEO01BK0JyRCxZUDhEeUQ7TU1wR3ZELHdCQUZxQztNQUdyQyx1QkFIcUM7TWtGVS9CLGlCQUFnQjtNQUNoQixZQUFXLEVBQ1o7TTlGc0lIO1E4RnRLTjs7VWxGc0JJLHlCQUZxQztVQUdyQyx3QkFIcUMsRWtGWWhDLEVBQUE7TWhGYkw7OztRQUNFLFlSc0dxRDtRUXJHckQsWUFBVyxFQUNaO01BSUM7O1FBQ0UsYVJnR29ELEVRL0ZyRDtJZ0Y1QlA7OztNMUJjRSxZdkRlcUQ7TUErQnJELFlQOER5RDtNTXBHdkQsd0JBRnFDO01BR3JDLHVCQUhxQztNa0ZlL0IsaUJBQWdCLEVBaURqQjtNOUZrRkg7UThGdEtOOzs7VWxGc0JJLHlCQUZxQztVQUdyQyx3QkFIcUMsRWtGZ0VoQyxFQUFBO01oRmpFTDs7Ozs7UUFDRSxZUnNHcUQ7UVFyR3JELFlBQVcsRUFDWjtNQUlDOzs7UUFDRSxhUmdHb0QsRVEvRnJEO01kMElEO1E4RnRLTjs7O1UxQmNFLFd2RGVxRDtVaUZTM0Msd0J0RmtENkMsRXNGSmhELEVBQUE7TTlGdUZIO1E4RjNLTjs7O1VBMENjLHdCdEY4QzJDLEVzRjdDNUM7UUEzQ2I7OztVQTZDYyx1QnRGMkMyQyxFc0YxQzVDLEVBQUE7TUE5Q2I7OztRQWlEWSx5QkFBNkI7UUFDN0Isc0JBQXFCLEVBTXRCO1E5RjhHTDtVOEZ0S047OztZQW9EYyx1QnRGb0MyQztZc0ZuQzNDLGlCdEZtQzJDO1lzRmxDM0MsWUFBVyxFQUVkLEVBQUE7TUF4RFg7Ozs7Ozs7Ozs7Ozs7OztRQTBEWSxzQnRGOEI2QyxFc0Y3QjlDO01BM0RYOzs7UUE2RFksb0J0RjJCNkM7UXNGMUI3QyxvQnRGMEI2QztRc0Z6QjdDLHdCdEZ5QjZDLEVzRkw5QztROUZtRkw7VThGdEtOOzs7WWhGb0NJLG1CQUFrQjtZQUNsQixlQUhtRCxFZ0ZpRDVDLEVBQUE7UUFuRlg7OztVQW9FYyxpQkFBZ0I7VUFDaEIsaUN2RmtCTztVdUZqQlAsMEJ0RmtCMkM7VXNGakIzQyxzQnRGaUIyQztVc0ZoQjNDLGdCdEZnQjJDLEVzRlo1QztVOUYwRlA7WThGdEtOOzs7Y0EwRWdCLG9CdEZjeUMsRXNGWjVDLEVBQUE7UUE1RWI7OztVQThFYyxnQnZGVFM7VXVGVVQsZXZGTk07VXVGT04saUJBQWdCO1VBQ2hCLGlCQUFnQixFQUNqQjtJQWxGYjs7TUFzRlUsZXZGYlU7TXVGY1YsZ0J0RkMrQyxFc0ZJaEQ7TTlGMEVIO1E4RnRLTjs7VUF5RlksaUJBQWdCO1VBQ2hCLG9CdEZGNkMsRXNGSWhELEVBQUE7SUFDTzs7TUFDTixlQUFjLEVBQ2Y7O0FBSVA7RUFDRSxXQUFVO0VBQ1YsMkJBQTBCO0VBQzFCLDRCQUEyQixFQVM1QjtFQVpEO0lBS0ksb0J2RmRTO0l1RmVULHVCdEZqQm1ELEVzRm1CcEQ7O0FBTUw7RUFFSSxpQkFBZ0IsRUFDakI7O0FBSEg7RUFLSSxvQnZGN0NnQjtFdUY4Q2hCLGlCQUFnQjtFQUNoQixldkY5Qlc7RXVGK0JYLHlCdEZqQ3FEO0VzRmtDckQsZ0J0RmxDcUQ7RXNGbUNyRCxXQUFVLEVBUVg7RTlGbUNHO0k4RnJETjtNQVlNLG9CdEZyQ21ELEVzRjJDdEQsRUFBQTtFQWxCSDtJQWVNLGN0RnhDbUQ7SXNGeUNuRCxzQnRGekNtRCxFc0YwQ3BEOztBOUZ5Q0M7RThGMUROO0lBcUJNLG1CQUFrQixFQUNuQixFQUFBOztBQXRCTDtFQXlCSSxXQUFVO0VBQ1Ysb0J2RmpEVztFdUZrRFgsZ0J0RnBEcUQ7RXNGcURyRCxxQkFBb0I7RUFDcEIsc0J0RnREcUQ7RXNGdURyRCx1QnRGdkRxRCxFc0YrRXREO0U5RkRHO0k4RnJETjtNQWdDTSx1QnRGekRtRDtNc0YwRG5ELHdCdEYxRG1ELEVzRitFdEQsRUFBQTtFOUZJRztJOEYxRE47TUFvQ00saUJBQWdCLEVBa0JuQjtNQXRESDtRQXNDUSxZQUFXO1FBQ1gsZUFBYztRQUNkLG1CQUFrQjtRQUNsQixpQnRGbEVpRDtRc0ZtRWpELE9BQU07UUFDTixVQUFTO1FBQ1QsZ0J0RnJFaUQ7UXNGc0VqRCw4RUFBNEU7UUFDNUUsV0FBVSxFQUNYLEVBQUE7RTlGV0Q7SThGMUROO01BbURRLGdCdEY1RWlELEVzRjZFbEQsRUFBQTs7QUFwRFA7RUF3REksb0J0RmpGcUQ7RXNGa0ZyRCxVQUFTLEVBaUNWO0VBMUZIOzs7OztJQStETSx5Q0FBd0M7SUFDeEMsVUFBUztJQUNULHFCdEYxRm1ELEVzRjJGcEQ7RUFsRUw7O0lBcUVNLG9CQUFtQjtJQUNuQiw0QnRGL0ZtRCxFc0ZtR3BEO0lBMUVMOztNQXdFUSwrQnZGaEdPLEV1RmlHUjtFQXpFUDtJQTRFTSw4QnZGcEdTLEV1RnFHVjtFQTdFTDtJQWdGUSx1QkFBc0I7SUFDdEIsaUN2RnpHTztJdUYwR1AscUJ0RjNHaUQ7SXNGNEdqRCx3QnRGNUdpRCxFc0ZpSGxEO0lBeEZQO01BcUZVLGtCdEY5RytDO01zRitHL0MsWUFBVyxFQUNaOztBQU1UO0VBQ0UsVUFBUztFQUNULGlDdkZ6SG1CO0V1RjBIbkIsc0J0RnpIdUQ7RXNGMEh2RCx1QnRGMUh1RCxFc0ZtSXhEO0U5RnJESztJOEZ3Q047TUFNSSxvQkFBbUI7TUFDbkIsdUJ0RjdIcUQ7TXNGOEhyRCx3QnRGOUhxRCxFc0ZtSXhELEVBQUE7RUFIUztJQUNOLGNBQWEsRUFDZDs7QXBEbElEO0VvRHNJRSxpQnZGMUhzQjtFdUYySHRCLHFCdEZ2SXFEO0VzRndJckQsZXZGdklXO0V1RndJWCxnQkFBZTtFQUNmLGlCQUFnQjtFQUNoQix1QnRGM0lxRDtFc0Y0SXJELHdCdEY1SXFEO0VzRjZJckQscUNBQW9DLEVBV3JDO0U5RjFFRztJMEM5RUo7TW9EK0lJLHFCdEYvSW1EO01zRmdKbkQsc0J0RmhKbUQsRXNGd0p0RCxFQUFBO0VwRDNJQztJb0R1SUUsd0JBQXVCO0lBQ3ZCLDZCdkZwS2M7SXVGcUtkLGNBQWEsRUFDZDs7QUFuQkw7RUFzQkksZUFBYyxFQUNmOztBbEUvRkQ7RWtFa0dBLGlCdkZsSndCO0V1Rm1KeEIsVUFBUztFQUNULGlDdkZsS2tCO0V1Rm1LbEIsZ0JBQWU7RUFDZixpQkFBZ0I7RUFDaEIsc0J0Rm5LdUQ7RXNGb0t2RCx1QnRGcEt1RCxFc0YrS3hEO0U5RmpHSztJNEJsQko7TWtFMEdFLHVCdEZ0S3FEO01zRnVLckQsd0J0RnZLcUQsRXNGK0t4RCxFQUFBO0VsRXJLQztJa0VpS0Usd0JBQXVCO0lBQ3ZCLHNCdkYzTGdCO0l1RjRMaEIseUJBQXdCLEVBQ3pCOztBQUVIO0VBR00sZXZGakxTO0V1RmtMVCxhQUFZLEVBQ2I7O0FBTEw7O0VBUU0sV0FBVTtFQUNWLDZCdkZ2TFMsRXVGd0xWOztBQVZMO0VBYUksZXZGM0xXLEV1RjRMWjs7QUFkSDtFQWlCTSxvQnZGL0xTO0V1RmdNVCxldkZqTmMsRXVGa05mOztBQW5CTDtFQXFCTSx3QkFBdUI7RUFDdkIsZXZGcE1TLEV1RnFNVjs7QUMvUkw7RTNCY0UsWXZEZXFEO0VBK0JyRCxZUDhEeUQ7RU1wR3ZELHdCQUZxQztFQUdyQyx1QkFIcUM7RW1GakJyQyx1QkFBc0I7RUFDdEIsdUJ2Rm9GcUQsRXVGaEZ0RDtFL0Y4Skc7SStGdEtOO01uRnNCSSx5QkFGcUM7TUFHckMsd0JBSHFDLEVtRlp0QyxFQUFBO0VqRldDO0lBQ0UsWVJzR3FEO0lRckdyRCxZQUFXLEVBQ1o7RUFJQztJQUNFLGFSZ0dvRCxFUS9GckQ7RWQwSUQ7SStGdEtOO01BTU0sc0J2RmtGbUQsRXVGaEZ0RCxFQUFBOztBQVJIO0VBVUksb0J2RjhFcUQ7RXVGN0VyRCxtQkFBa0IsRUF1Qm5CO0VBbENIO0kzQmNFLFl2RGVxRDtJQStCckQsWVA4RHlEO0lNcEd2RCx3QkFGcUM7SUFHckMsdUJBSHFDO0ltRk5uQyx1QnZGMEVtRCxFdUZ2RHBEO0kvRnFJQztNK0Z0S047UW5Gc0JJLHlCQUZxQztRQUdyQyx3QkFIcUMsRW1GYXBDLEVBQUE7SWpGZEQ7TUFDRSxZUnNHcUQ7TVFyR3JELFlBQVcsRUFDWjtJQUlDO01BQ0UsYVJnR29ELEVRL0ZyRDtJZDBJRDtNK0Z0S047UTNCY0UsaUJ2RGVxRDtRa0ZYL0Msd0J2RnNFaUQsRXVGdkRwRDtRakZ1Q0g7VUFDRSxZUmlEdUQsRVFoRHhELEVBQUE7SWlGMUVIO01BcUJRLG9CdkZtRWlEO011RmxFakQsZUFBYyxFQVVmO01BaENQO1FBd0JVLDZCeEZnRVM7UXdGL0RULG1CdkYrRCtDO1F1RjlEL0MsZ0N2Rm1FRztRdUZsRUgsWUFBVyxFQUNaO01BNUJUO1FBOEJVLG9CdkYwRCtDLEV1RnpEaEQ7O0FBL0JUO0VBb0NJLGFBQVksRUF3Q2I7RUE1RUg7SUFzQ00saUJBQWdCLEVBcUNqQjtJQTNFTDtNQXdDUSwwQnhGaUNZO013RmhDWixleEZpRE87TXdGaERQLHFCdkY4Q2lEO011RjdDakQsMEJ2RjZDaUQsRXVGeENsRDtNQWhEUDtRQTZDVSw2QnhGNkNLO1F3RjVDTCw0QnhGNENLLEV3RjNDTjtJQS9DVDtNQWtEUSxhQUFZO01BQ1osMEJ2RnFDaUQ7TXVGcENqRCxpQkFBZ0IsRUFzQmpCO01BMUVQO1EzQmNFLFl2RGVxRDtRQStCckQsWVA4RHlEO1FNcEd2RCx3QkFGcUM7UUFHckMsdUJBSHFDLEVtRnFEaEM7US9GNkZIO1UrRnRLTjtZbkZzQkkseUJBRnFDO1lBR3JDLHdCQUhxQyxFbUZxRGhDLEVBQUE7UWpGdERMO1VBQ0UsWVJzR3FEO1VRckdyRCxZQUFXLEVBQ1o7UUFJ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Ozs7TUFDRSxZUnNHcUQ7TVFyR3JELFlBQVcsRUFDWjtJQUlDOztNQUNFLGFSZ0dvRCxFUS9GckQ7O0FvRjVCUDs7RTlCY0UsWXZEZXFEO0VBK0JyRCxZUDhEeUQ7RU1wR3ZELHdCQUZxQztFQUdyQyx1QkFIcUMsRXNGQ3RDO0VsR2lKRztJa0d0S047O010RnNCSSx5QkFGcUM7TUFHckMsd0JBSHFDLEVzRkN0QyxFQUFBO0VwRkZDOzs7SUFDRSxZUnNHcUQ7SVFyR3JELFlBQVcsRUFDWjtFQUlDOztJQUNFLGFSZ0dvRCxFUS9GckQ7RWQwSUQ7SWtHdEtOOztNOUJjRSxpQnZEZXFELEVxRlJwRCxFQUFBOztBQXJCSDs7RTlCY0UsWXZEZXFEO0VBK0JyRCxZUDhEeUQ7RU1wR3ZELHdCQUZxQztFQUdyQyx1QkFIcUM7RXNGSXJDLG1CMUZnRXFELEUwRnJEdEQ7RWxHbUlHO0lrR3RLTjs7TXRGc0JJLHlCQUZxQztNQUdyQyx3QkFIcUMsRXNGZXRDLEVBQUE7RXBGaEJDOzs7SUFDRSxZUnNHcUQ7SVFyR3JELFlBQVcsRUFDWjtFQUlDOztJQUNFLGFSZ0dvRCxFUS9GckQ7RWQrSUQ7SWtHM0tOOztNQTBCTSxlQUFjO01BQ2QsdUJBQXNCLEVBUXpCLEVBQUE7RWxHbUlHO0lrR3RLTjs7TTlCY0UsV3ZEZXFELEVxRk1wRCxFQUFBO0VsR21JRztJa0d0S047O005QmNFLGlCdkRlcUQsRXFGTXBELEVBQUE7O0FBbkNIOzs7O0VBc0NJLG1CMUZrRHFEO0UwRmpEckQsb0IxRmlEcUQsRTBGNUN0RDtFbEcwSEc7SWtHdEtOOzs7O01BeUNNLG9CMUYrQ21EO00wRjlDbkQscUIxRjhDbUQsRTBGNUN0RCxFQUFBOztBbEcwSEc7RWtHeEhOO0lBRUksZ0MxRndDcUQsRTBGM0J4RCxFQUFBOztBQWZEO0VBS0ksbUIxRnFDcUQsRTBGakN0RDtFbEcrR0c7SWtHeEhOO01BT00sb0IxRm1DbUQsRTBGakN0RCxFQUFBOztBbEcrR0c7RWtHeEhOO0k5QmhDRSxXdkRlcUQsRXFGK0JwRCxFQUFBOztBQzVESDs7RUFHSSxvQjVGdUZXLEU0RnFCWjtFQS9HSDs7SUFLTSxzQkFBdUI7UUFBdkIsd0JBQXVCLEVBQ3hCO0VBTkw7O0lBUU0sZ0JBQWUsRUFJaEI7SW5HMEpDO01tR3RLTjs7UUFVUSxXQUFVLEVBRWIsRUFBQTtFQVpMOztJQWNNLGdCQUFlLEVBSWhCO0luR29KQztNbUd0S047O1FBZ0JRLFdBQVUsRUFFYixFQUFBO0VuR29KQztJbUd0S047O01Bc0JVLGtCQUFRO1VBQVIsU0FBUSxFQUNUO0lBdkJUOztNQXlCVSxrQkFBUTtVQUFSLFNBQVEsRUFJVDtNQTdCVDs7UUEyQlksZUFBYyxFQUNmLEVBQUE7RUE1Qlg7Ozs7SUFtQ1EsWUFBVztJQUNYLFdBQVU7SUFDVixlNUZvQ1k7STRGbkNaLFlBQVc7SUFDWCxrQjNGc0RLLEUyRmpETjtJbkcwSEQ7TW1HdEtOOzs7O1FBeUNVLHFCM0YrQytDO1EyRjlDL0Msb0JBQXdCLEVBRTNCLEVBQUE7RUE1Q1A7O0lBZ0RRLGlCQUFnQjtJQUNoQixpQkFBZ0I7SUFDaEIsb0IzRnNDaUQsRTJGbENsRDtJbkdnSEQ7TW1HdEtOOztRQW9EVSxvQjNGb0MrQyxFMkZsQ2xELEVBQUE7RUF0RFA7O0lBd0RRLFlBQVc7SUFDWCxlQUFjO0lBQ2QsdUIzRjhCaUQ7STJGN0JqRCxlM0Y2QmlEO0kyRjVCakQsZTNGNEJpRDtJMkYzQmpELGdFQUErRCxFQUNoRTtFQTlEUDs7SUFrRVEsb0IzRnNCaUQsRTJGckJsRDtFQW5FUDs7SUFxRVEsZTVGSVk7STRGSFosc0JBQXFCO0lBQ3JCLFVBQVM7SUFDVCxvQjNGZ0JpRCxFMkZSbEQ7SUFoRlA7O01BMEVVLFlBQVc7TUFDWCxlQUFjO01BQ2QsZTNGWStDO00yRlgvQyxlM0ZXK0M7TTJGVi9DLGdFQUErRCxFQUNoRTtFQS9FVDs7SUFrRlEsaUJBQWdCO0lBQ2hCLGdCM0ZLaUQsRTJGRGxEO0luRytFRDtNbUd0S047O1FBcUZVLG9CM0ZHK0MsRTJGRGxELEVBQUE7RUF2RlA7Ozs7SUE2RlUsZTVGSEssRTRGSU47RUE5RlQ7O0lBa0dVLGlCQUFnQjtJQUNoQixpQzVGVEssRTRGYU47SUF2R1Q7O01BcUdZLG9CNUZYRyxFNEZZSjtFQXRHWDs7SUEyR1Usb0I1RmpCSyxFNEZrQk47O0FBNUdUOztFQWtITSxZQUFXO0VBQ1gsbUJBQWtCO0VBQ2xCLG1CM0Y1Qm1EO0UyRjZCbkQsc0IzRjdCbUQ7RTJGOEJuRCxZQUFXLEVBSVo7RW5HNENDO0ltR3RLTjs7TUF3SFEsb0IzRmhDaUQsRTJGa0NwRCxFQUFBOztBbkc0Q0M7RW1HdEtOOzs7SUE2SFEsV0FBVSxFQUNYLEVBQUE7O0FBOUhQOztFQWtJSSxvQjVGekNXO0U0RjBDWCxlNUZ6Q1c7RTRGMENYLHFCQUFhO0VBQWIsY0FBYTtFQUNiLHNCQUF1QjtNQUF2Qix3QkFBdUI7RUFDdkIsdUJBQW1CO01BQW5CLG9CQUFtQjtFQUNuQixpQkFBZ0IsRUEwQ2pCO0VBakxIOztJQXlJTSxtQkFBa0I7SUFDbEIsaUIzRmxEbUQ7STJGbURuRCx5QjNGbkRtRDtJMkZvRG5ELGVBQWMsRUFvQ2Y7SUFoTEw7O01BOElRLG1CQUFrQjtNQUNsQixlNUZyRE87TTRGc0RQLGlCQUFnQjtNQUNoQixtQjNGekRpRCxFMkZ1RmxEO01uR1REO1FtR3RLTjs7VUFtSlUsb0IzRjNEK0MsRTJGdUZsRCxFQUFBO01BL0tQOzs7UUF1SlUsZTVGOUVVO1E0RitFVixvQjNGaEUrQztRMkZpRS9DLG1CQUFrQjtRQUNsQixnRUFBK0Q7UUFDL0QsOEJBQTZCO1FBQzdCLHFDQUFvQyxFQUNyQztNQTdKVDs7UUErSlUsYUFBYTtRQUNiLGdCM0Z4RStDO1EyRnlFL0MsVzNGekUrQyxFMkYwRWhEO01BbEtUOztRQW9LVSxhQUFhO1FBQ2IsaUIzRjdFK0M7UTJGOEUvQyxrQjNGOUUrQyxFMkYrRWhEO01BdktUOztRQXlLVSxvQjNGakYrQztRMkZrRi9DLG9CM0ZsRitDLEUyRnNGaEQ7UW5HUkg7VW1HdEtOOztZQTRLWSxvQjNGcEY2QyxFMkZzRmhELEVBQUE7O0FBOUtUOztFQW1MSSxvQjVGekZXLEU0RjBGWjs7QUNwTEg7OztFekZpR0UsZ0JKaUNtQjtFSXBFakIsbUJBQWtCO0VBQ2xCLGtCQUFpQixFeUZsRGhCO0UzRjRKSDs7Ozs7SUFFRSxlQUFjO0lBQ2QsYUFBWTtJQUdWLDJCQUFhO1FBQWIsY0FBYTtJQUNiLGtCQUFRO1FBQVIsU0FBUSxFQUVYO0VBRUQ7OztJQUNFLFlBQVcsRUFDWjtFMkZ0TEg7OztJQU9RLDhCN0ZnRmE7STZGL0ViLHFCNUZnRmlELEU0RjVFbEQ7SXBHMEpEO01vR3RLTjs7O1FBVVUsa0I1RjhFK0MsRTRGNUVsRCxFQUFBOztBQVpQOzs7RWhDY0UsWXZEZXFEO0VBK0JyRCxZUDhEeUQ7RU1wR3ZELHdCQUZxQztFQUdyQyx1QkFIcUMsRXdGTXBDO0VwRzRJQztJb0d0S047OztNeEZzQkkseUJBRnFDO01BR3JDLHdCQUhxQyxFd0ZNcEMsRUFBQTtFdEZQRDs7Ozs7SUFDRSxZUnNHcUQ7SVFyR3JELFlBQVcsRUFDWjtFQUlDOzs7SUFDRSxhUmdHb0QsRVEvRnJEO0VkMElEO0lvR3RLTjs7O01oQ2NFLGlCdkRlcUQsRXVGSGxELEVBQUE7RUExQkw7OztJQXFCUSxlN0ZvRFk7STZGbkRaLGdCN0YrQ2U7STZGOUNmLGlCN0Y2RWtCO0k2RjVFbEIseUI1RmdFaUQsRTRGL0RsRDs7QUF6QlA7OztFaENjRSxZdkRlcUQ7RUErQnJELFlQOER5RDtFTXBHdkQsd0JBRnFDO0VBR3JDLHVCQUhxQyxFd0ZZcEM7RXBHc0lDO0lvR3RLTjs7O014RnNCSSx5QkFGcUM7TUFHckMsd0JBSHFDLEV3RllwQyxFQUFBO0V0RmJEOzs7OztJQUNFLFlSc0dxRDtJUXJHckQsWUFBVyxFQUNaO0VBSUM7OztJQUNFLGFSZ0dvRCxFUS9GckQ7RWQwSUQ7SW9HdEtOOzs7TWhDY0UsaUJ2RGVxRCxFdUZHbEQsRUFBQTs7QUFoQ0w7OztFQWtDUSxvQjVGc0RpRDtFNEZyRGpELHNCNUZxRGlELEU0RmpEcEQ7RXBHK0hDO0lvR3RLTjs7O01BcUNZLGlCNUZtRDZDLEU0RmpEcEQsRUFBQTs7QUF2Q0w7OztFQXlDTSxpQkFBZ0I7RUFDaEIsZUFBYyxFQVVmO0VBcERMOzs7SUE0Q1Esc0JBQXFCO0lBQ3JCLGdDN0Y0Q087STZGM0NQLHdCNUYwQ2lEO0k0RnpDakQsdUI1RnlDaUQsRTRGckNsRDtJQW5EUDs7O01BaURVLGdCQUFlLEVBQ2hCOztBQWxEVDs7O0VBc0RNLHFCNUZrQ21EO0U0RmpDbkQsaUM3RmtDUztFNkZqQ1Qsc0JBQXFCO0VBQ3JCLHdCNUYrQm1EO0U0RjlCbkQsaUJBQWdCO0VBQ2hCLG9CNUY2Qm1EO0U0RjVCbkQsZTdGYWMsRTZGSmY7RUFyRUw7OztJQThEUSxzQkFBcUI7SUFDckIsdUJBQXNCO0lBQ3RCLHFCNUZ3QmlELEU0RnBCbEQ7SUFwRVA7OztNQWtFVSxlQUFjLEVBQ2Y7O0FBbkVUOzs7RWhDY0UsWXZEZXFEO0VBK0JyRCxZUDhEeUQ7RU1wR3ZELHdCQUZxQztFQUdyQyx1QkFIcUMsRXdGNkRwQztFcEdxRkM7SW9HdEtOOzs7TXhGc0JJLHlCQUZxQztNQUdyQyx3QkFIcUMsRXdGNkRwQyxFQUFBO0V0RjlERDs7Ozs7SUFDRSxZUnNHcUQ7SVFyR3JELFlBQVcsRUFDWjtFQUlDOzs7SUFDRSxhUmdHb0QsRVEvRnJEO0VkMElEO0lvR3RLTjs7O01oQ2NFLGlCdkRlcUQsRXVGb0RsRCxFQUFBO0VwR3FGQztJb0d0S047OztNaENjRSxpQnZEZXFELEV1Rm9EbEQsRUFBQTtFQWpGTDs7O0lBK0VRLG1CNUZTaUQsRTRGUmxEOztBQWhGUDs7O0VoQ2NFLFl2RGVxRDtFQStCckQsWVA4RHlEO0VNcEd2RCx3QkFGcUM7RUFHckMsdUJBSHFDLEV3RmtGcEM7RXBHZ0VDO0lvR3RLTjs7O014RnNCSSx5QkFGcUM7TUFHckMsd0JBSHFDLEV3RmtGcEMsRUFBQTtFdEZuRkQ7Ozs7O0lBQ0UsWVJzR3FEO0lRckdyRCxZQUFXLEVBQ1o7RUFJQzs7O0lBQ0UsYVJnR29ELEVRL0ZyRDtFZDBJRDtJb0d0S047OztNaENjRSxpQnZEZXFELEV1RnlFbEQsRUFBQTtFcEdnRUM7SW9HdEtOOzs7TWhDY0UsaUJ2RGVxRCxFdUZ5RWxELEVBQUE7RUF0R0w7OztJQTJGVSxtQjVGSCtDLEU0RmFsRDtJ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QVBEO01BSU0sY0FBYSxFQUNkO0VsQjdKUDs7SWtCb0tRLGNBQWEsRUFDZDtFQUdMO0lBSVEsMEJBQXdCO0lBQ3hCLCtCQUFrQyxFQUNuQztFbkIvS1Q7SW1CbUxVLFdBQVU7SUFDVixtQkFBa0IsRUFDbkI7RW5CckxUO0ltQjBMUSwwQmhHbkdhLEVnR3dHZDtJbkIvTFA7TW1CNkxVLGNBQWEsRUFDZCxFQUFBIiwiZmlsZSI6ImFwcC5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyJAY2hhcnNldCBcIlVURi04XCI7XG4vKipcbiAqIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbiAqIFZlcnNpb24gNi41LjFcbiAqIGZvdW5kYXRpb24uenVyYi5jb21cbiAqIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuICovXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAucmV2ZWFsLCAucmV2ZWFsLnRpbnksIC5yZXZlYWwuc21hbGwsIC5yZXZlYWwubGFyZ2Uge1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IGF1dG87XG4gICAgbWFyZ2luOiAwIGF1dG87IH0gfVxuXG5ib2R5W2RhdGEtYW9zLWR1cmF0aW9uPSc1MCddIFtkYXRhLWFvc10sIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWR1cmF0aW9uPSc1MCddIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTBtczsgfVxuXG5ib2R5W2RhdGEtYW9zLWRlbGF5PSc1MCddIFtkYXRhLWFvc10sIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PSc1MCddIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMDsgfVxuICBib2R5W2RhdGEtYW9zLWRlbGF5PSc1MCddIFtkYXRhLWFvc10uYW9zLWFuaW1hdGUsIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PSc1MCddLmFvcy1hbmltYXRlIHtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiA1MG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZHVyYXRpb249JzEwMCddIFtkYXRhLWFvc10sIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWR1cmF0aW9uPScxMDAnXSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDEwMG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZGVsYXk9JzEwMCddIFtkYXRhLWFvc10sIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PScxMDAnXSB7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDA7IH1cbiAgYm9keVtkYXRhLWFvcy1kZWxheT0nMTAwJ10gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSwgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzEwMCddLmFvcy1hbmltYXRlIHtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAxMDBtczsgfVxuXG5ib2R5W2RhdGEtYW9zLWR1cmF0aW9uPScxNTAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0nMTUwJ10ge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAxNTBtczsgfVxuXG5ib2R5W2RhdGEtYW9zLWRlbGF5PScxNTAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMTUwJ10ge1xuICB0cmFuc2l0aW9uLWRlbGF5OiAwOyB9XG4gIGJvZHlbZGF0YS1hb3MtZGVsYXk9JzE1MCddIFtkYXRhLWFvc10uYW9zLWFuaW1hdGUsIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PScxNTAnXS5hb3MtYW5pbWF0ZSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMTUwbXM7IH1cblxuYm9keVtkYXRhLWFvcy1kdXJhdGlvbj0nMjAwJ10gW2RhdGEtYW9zXSwgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZHVyYXRpb249JzIwMCddIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMjAwbXM7IH1cblxuYm9keVtkYXRhLWFvcy1kZWxheT0nMjAwJ10gW2RhdGEtYW9zXSwgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzIwMCddIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMDsgfVxuICBib2R5W2RhdGEtYW9zLWRlbGF5PScyMDAnXSBbZGF0YS1hb3NdLmFvcy1hbmltYXRlLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMjAwJ10uYW9zLWFuaW1hdGUge1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDIwMG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZHVyYXRpb249JzI1MCddIFtkYXRhLWFvc10sIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWR1cmF0aW9uPScyNTAnXSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDI1MG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZGVsYXk9JzI1MCddIFtkYXRhLWFvc10sIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PScyNTAnXSB7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDA7IH1cbiAgYm9keVtkYXRhLWFvcy1kZWxheT0nMjUwJ10gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSwgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzI1MCddLmFvcy1hbmltYXRlIHtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAyNTBtczsgfVxuXG5ib2R5W2RhdGEtYW9zLWR1cmF0aW9uPSczMDAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0nMzAwJ10ge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAzMDBtczsgfVxuXG5ib2R5W2RhdGEtYW9zLWRlbGF5PSczMDAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMzAwJ10ge1xuICB0cmFuc2l0aW9uLWRlbGF5OiAwOyB9XG4gIGJvZHlbZGF0YS1hb3MtZGVsYXk9JzMwMCddIFtkYXRhLWFvc10uYW9zLWFuaW1hdGUsIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PSczMDAnXS5hb3MtYW5pbWF0ZSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMzAwbXM7IH1cblxuYm9keVtkYXRhLWFvcy1kdXJhdGlvbj0nMzUwJ10gW2RhdGEtYW9zXSwgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZHVyYXRpb249JzM1MCddIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMzUwbXM7IH1cblxuYm9keVtkYXRhLWFvcy1kZWxheT0nMzUwJ10gW2RhdGEtYW9zXSwgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzM1MCddIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMDsgfVxuICBib2R5W2RhdGEtYW9zLWRlbGF5PSczNTAnXSBbZGF0YS1hb3NdLmFvcy1hbmltYXRlLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMzUwJ10uYW9zLWFuaW1hdGUge1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDM1MG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZHVyYXRpb249JzQwMCddIFtkYXRhLWFvc10sIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWR1cmF0aW9uPSc0MDAnXSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDQwMG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZGVsYXk9JzQwMCddIFtkYXRhLWFvc10sIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PSc0MDAnXSB7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDA7IH1cbiAgYm9keVtkYXRhLWFvcy1kZWxheT0nNDAwJ10gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSwgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzQwMCddLmFvcy1hbmltYXRlIHtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiA0MDBtczsgfVxuXG5ib2R5W2RhdGEtYW9zLWR1cmF0aW9uPSc0NTAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0nNDUwJ10ge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA0NTBtczsgfVxuXG5ib2R5W2RhdGEtYW9zLWRlbGF5PSc0NTAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nNDUwJ10ge1xuICB0cmFuc2l0aW9uLWRlbGF5OiAwOyB9XG4gIGJvZHlbZGF0YS1hb3MtZGVsYXk9JzQ1MCddIFtkYXRhLWFvc10uYW9zLWFuaW1hdGUsIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PSc0NTAnXS5hb3MtYW5pbWF0ZSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogNDUwbXM7IH1cblxuYm9keVtkYXRhLWFvcy1kdXJhdGlvbj0nNTAwJ10gW2RhdGEtYW9zXSwgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZHVyYXRpb249JzUwMCddIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7IH1cblxuYm9keVtkYXRhLWFvcy1kZWxheT0nNTAwJ10gW2RhdGEtYW9zXSwgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzUwMCddIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMDsgfVxuICBib2R5W2RhdGEtYW9zLWRlbGF5PSc1MDAnXSBbZGF0YS1hb3NdLmFvcy1hbmltYXRlLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nNTAwJ10uYW9zLWFuaW1hdGUge1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDUwMG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZHVyYXRpb249JzU1MCddIFtkYXRhLWFvc10sIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWR1cmF0aW9uPSc1NTAnXSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDU1MG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZGVsYXk9JzU1MCddIFtkYXRhLWFvc10sIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PSc1NTAnXSB7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDA7IH1cbiAgYm9keVtkYXRhLWFvcy1kZWxheT0nNTUwJ10gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSwgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzU1MCddLmFvcy1hbmltYXRlIHtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiA1NTBtczsgfVxuXG5ib2R5W2RhdGEtYW9zLWR1cmF0aW9uPSc2MDAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0nNjAwJ10ge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA2MDBtczsgfVxuXG5ib2R5W2RhdGEtYW9zLWRlbGF5PSc2MDAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nNjAwJ10ge1xuICB0cmFuc2l0aW9uLWRlbGF5OiAwOyB9XG4gIGJvZHlbZGF0YS1hb3MtZGVsYXk9JzYwMCddIFtkYXRhLWFvc10uYW9zLWFuaW1hdGUsIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PSc2MDAnXS5hb3MtYW5pbWF0ZSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogNjAwbXM7IH1cblxuYm9keVtkYXRhLWFvcy1kdXJhdGlvbj0nNjUwJ10gW2RhdGEtYW9zXSwgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZHVyYXRpb249JzY1MCddIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNjUwbXM7IH1cblxuYm9keVtkYXRhLWFvcy1kZWxheT0nNjUwJ10gW2RhdGEtYW9zXSwgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzY1MCddIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMDsgfVxuICBib2R5W2RhdGEtYW9zLWRlbGF5PSc2NTAnXSBbZGF0YS1hb3NdLmFvcy1hbmltYXRlLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nNjUwJ10uYW9zLWFuaW1hdGUge1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDY1MG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZHVyYXRpb249JzcwMCddIFtkYXRhLWFvc10sIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWR1cmF0aW9uPSc3MDAnXSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDcwMG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZGVsYXk9JzcwMCddIFtkYXRhLWFvc10sIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PSc3MDAnXSB7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDA7IH1cbiAgYm9keVtkYXRhLWFvcy1kZWxheT0nNzAwJ10gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSwgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzcwMCddLmFvcy1hbmltYXRlIHtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiA3MDBtczsgfVxuXG5ib2R5W2RhdGEtYW9zLWR1cmF0aW9uPSc3NTAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0nNzUwJ10ge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA3NTBtczsgfVxuXG5ib2R5W2RhdGEtYW9zLWRlbGF5PSc3NTAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nNzUwJ10ge1xuICB0cmFuc2l0aW9uLWRlbGF5OiAwOyB9XG4gIGJvZHlbZGF0YS1hb3MtZGVsYXk9Jzc1MCddIFtkYXRhLWFvc10uYW9zLWFuaW1hdGUsIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PSc3NTAnXS5hb3MtYW5pbWF0ZSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogNzUwbXM7IH1cblxuYm9keVtkYXRhLWFvcy1kdXJhdGlvbj0nODAwJ10gW2RhdGEtYW9zXSwgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZHVyYXRpb249JzgwMCddIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogODAwbXM7IH1cblxuYm9keVtkYXRhLWFvcy1kZWxheT0nODAwJ10gW2RhdGEtYW9zXSwgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzgwMCddIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMDsgfVxuICBib2R5W2RhdGEtYW9zLWRlbGF5PSc4MDAnXSBbZGF0YS1hb3NdLmFvcy1hbmltYXRlLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nODAwJ10uYW9zLWFuaW1hdGUge1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDgwMG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZHVyYXRpb249Jzg1MCddIFtkYXRhLWFvc10sIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWR1cmF0aW9uPSc4NTAnXSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDg1MG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZGVsYXk9Jzg1MCddIFtkYXRhLWFvc10sIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PSc4NTAnXSB7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDA7IH1cbiAgYm9keVtkYXRhLWFvcy1kZWxheT0nODUwJ10gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSwgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9Jzg1MCddLmFvcy1hbmltYXRlIHtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiA4NTBtczsgfVxuXG5ib2R5W2RhdGEtYW9zLWR1cmF0aW9uPSc5MDAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0nOTAwJ10ge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA5MDBtczsgfVxuXG5ib2R5W2RhdGEtYW9zLWRlbGF5PSc5MDAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nOTAwJ10ge1xuICB0cmFuc2l0aW9uLWRlbGF5OiAwOyB9XG4gIGJvZHlbZGF0YS1hb3MtZGVsYXk9JzkwMCddIFtkYXRhLWFvc10uYW9zLWFuaW1hdGUsIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PSc5MDAnXS5hb3MtYW5pbWF0ZSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogOTAwbXM7IH1cblxuYm9keVtkYXRhLWFvcy1kdXJhdGlvbj0nOTUwJ10gW2RhdGEtYW9zXSwgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZHVyYXRpb249Jzk1MCddIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogOTUwbXM7IH1cblxuYm9keVtkYXRhLWFvcy1kZWxheT0nOTUwJ10gW2RhdGEtYW9zXSwgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9Jzk1MCddIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMDsgfVxuICBib2R5W2RhdGEtYW9zLWRlbGF5PSc5NTAnXSBbZGF0YS1hb3NdLmFvcy1hbmltYXRlLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nOTUwJ10uYW9zLWFuaW1hdGUge1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDk1MG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZHVyYXRpb249JzEwMDAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0nMTAwMCddIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMTAwMG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZGVsYXk9JzEwMDAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMTAwMCddIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMDsgfVxuICBib2R5W2RhdGEtYW9zLWRlbGF5PScxMDAwJ10gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSwgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzEwMDAnXS5hb3MtYW5pbWF0ZSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMTAwMG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZHVyYXRpb249JzEwNTAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0nMTA1MCddIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMTA1MG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZGVsYXk9JzEwNTAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMTA1MCddIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMDsgfVxuICBib2R5W2RhdGEtYW9zLWRlbGF5PScxMDUwJ10gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSwgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzEwNTAnXS5hb3MtYW5pbWF0ZSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMTA1MG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZHVyYXRpb249JzExMDAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0nMTEwMCddIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMTEwMG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZGVsYXk9JzExMDAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMTEwMCddIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMDsgfVxuICBib2R5W2RhdGEtYW9zLWRlbGF5PScxMTAwJ10gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSwgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzExMDAnXS5hb3MtYW5pbWF0ZSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMTEwMG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZHVyYXRpb249JzExNTAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0nMTE1MCddIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMTE1MG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZGVsYXk9JzExNTAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMTE1MCddIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMDsgfVxuICBib2R5W2RhdGEtYW9zLWRlbGF5PScxMTUwJ10gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSwgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzExNTAnXS5hb3MtYW5pbWF0ZSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMTE1MG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZHVyYXRpb249JzEyMDAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0nMTIwMCddIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMTIwMG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZGVsYXk9JzEyMDAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMTIwMCddIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMDsgfVxuICBib2R5W2RhdGEtYW9zLWRlbGF5PScxMjAwJ10gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSwgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzEyMDAnXS5hb3MtYW5pbWF0ZSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMTIwMG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZHVyYXRpb249JzEyNTAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0nMTI1MCddIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMTI1MG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZGVsYXk9JzEyNTAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMTI1MCddIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMDsgfVxuICBib2R5W2RhdGEtYW9zLWRlbGF5PScxMjUwJ10gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSwgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzEyNTAnXS5hb3MtYW5pbWF0ZSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMTI1MG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZHVyYXRpb249JzEzMDAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0nMTMwMCddIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMTMwMG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZGVsYXk9JzEzMDAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMTMwMCddIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMDsgfVxuICBib2R5W2RhdGEtYW9zLWRlbGF5PScxMzAwJ10gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSwgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzEzMDAnXS5hb3MtYW5pbWF0ZSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMTMwMG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZHVyYXRpb249JzEzNTAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0nMTM1MCddIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMTM1MG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZGVsYXk9JzEzNTAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMTM1MCddIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMDsgfVxuICBib2R5W2RhdGEtYW9zLWRlbGF5PScxMzUwJ10gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSwgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzEzNTAnXS5hb3MtYW5pbWF0ZSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMTM1MG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZHVyYXRpb249JzE0MDAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0nMTQwMCddIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMTQwMG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZGVsYXk9JzE0MDAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMTQwMCddIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMDsgfVxuICBib2R5W2RhdGEtYW9zLWRlbGF5PScxNDAwJ10gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSwgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzE0MDAnXS5hb3MtYW5pbWF0ZSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMTQwMG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZHVyYXRpb249JzE0NTAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0nMTQ1MCddIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMTQ1MG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZGVsYXk9JzE0NTAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMTQ1MCddIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMDsgfVxuICBib2R5W2RhdGEtYW9zLWRlbGF5PScxNDUwJ10gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSwgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzE0NTAnXS5hb3MtYW5pbWF0ZSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMTQ1MG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZHVyYXRpb249JzE1MDAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0nMTUwMCddIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMTUwMG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZGVsYXk9JzE1MDAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMTUwMCddIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMDsgfVxuICBib2R5W2RhdGEtYW9zLWRlbGF5PScxNTAwJ10gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSwgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzE1MDAnXS5hb3MtYW5pbWF0ZSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMTUwMG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZHVyYXRpb249JzE1NTAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0nMTU1MCddIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMTU1MG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZGVsYXk9JzE1NTAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMTU1MCddIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMDsgfVxuICBib2R5W2RhdGEtYW9zLWRlbGF5PScxNTUwJ10gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSwgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzE1NTAnXS5hb3MtYW5pbWF0ZSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMTU1MG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZHVyYXRpb249JzE2MDAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0nMTYwMCddIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMTYwMG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZGVsYXk9JzE2MDAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMTYwMCddIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMDsgfVxuICBib2R5W2RhdGEtYW9zLWRlbGF5PScxNjAwJ10gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSwgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzE2MDAnXS5hb3MtYW5pbWF0ZSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMTYwMG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZHVyYXRpb249JzE2NTAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0nMTY1MCddIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMTY1MG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZGVsYXk9JzE2NTAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMTY1MCddIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMDsgfVxuICBib2R5W2RhdGEtYW9zLWRlbGF5PScxNjUwJ10gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSwgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzE2NTAnXS5hb3MtYW5pbWF0ZSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMTY1MG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZHVyYXRpb249JzE3MDAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0nMTcwMCddIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMTcwMG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZGVsYXk9JzE3MDAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMTcwMCddIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMDsgfVxuICBib2R5W2RhdGEtYW9zLWRlbGF5PScxNzAwJ10gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSwgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzE3MDAnXS5hb3MtYW5pbWF0ZSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMTcwMG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZHVyYXRpb249JzE3NTAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0nMTc1MCddIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMTc1MG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZGVsYXk9JzE3NTAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMTc1MCddIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMDsgfVxuICBib2R5W2RhdGEtYW9zLWRlbGF5PScxNzUwJ10gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSwgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzE3NTAnXS5hb3MtYW5pbWF0ZSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMTc1MG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZHVyYXRpb249JzE4MDAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0nMTgwMCddIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMTgwMG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZGVsYXk9JzE4MDAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMTgwMCddIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMDsgfVxuICBib2R5W2RhdGEtYW9zLWRlbGF5PScxODAwJ10gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSwgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzE4MDAnXS5hb3MtYW5pbWF0ZSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMTgwMG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZHVyYXRpb249JzE4NTAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0nMTg1MCddIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMTg1MG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZGVsYXk9JzE4NTAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMTg1MCddIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMDsgfVxuICBib2R5W2RhdGEtYW9zLWRlbGF5PScxODUwJ10gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSwgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzE4NTAnXS5hb3MtYW5pbWF0ZSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMTg1MG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZHVyYXRpb249JzE5MDAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0nMTkwMCddIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMTkwMG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZGVsYXk9JzE5MDAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMTkwMCddIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMDsgfVxuICBib2R5W2RhdGEtYW9zLWRlbGF5PScxOTAwJ10gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSwgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzE5MDAnXS5hb3MtYW5pbWF0ZSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMTkwMG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZHVyYXRpb249JzE5NTAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0nMTk1MCddIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMTk1MG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZGVsYXk9JzE5NTAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMTk1MCddIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMDsgfVxuICBib2R5W2RhdGEtYW9zLWRlbGF5PScxOTUwJ10gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSwgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzE5NTAnXS5hb3MtYW5pbWF0ZSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMTk1MG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZHVyYXRpb249JzIwMDAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0nMjAwMCddIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMjAwMG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZGVsYXk9JzIwMDAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMjAwMCddIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMDsgfVxuICBib2R5W2RhdGEtYW9zLWRlbGF5PScyMDAwJ10gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSwgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzIwMDAnXS5hb3MtYW5pbWF0ZSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMjAwMG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZHVyYXRpb249JzIwNTAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0nMjA1MCddIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMjA1MG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZGVsYXk9JzIwNTAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMjA1MCddIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMDsgfVxuICBib2R5W2RhdGEtYW9zLWRlbGF5PScyMDUwJ10gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSwgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzIwNTAnXS5hb3MtYW5pbWF0ZSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMjA1MG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZHVyYXRpb249JzIxMDAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0nMjEwMCddIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMjEwMG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZGVsYXk9JzIxMDAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMjEwMCddIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMDsgfVxuICBib2R5W2RhdGEtYW9zLWRlbGF5PScyMTAwJ10gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSwgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzIxMDAnXS5hb3MtYW5pbWF0ZSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMjEwMG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZHVyYXRpb249JzIxNTAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0nMjE1MCddIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMjE1MG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZGVsYXk9JzIxNTAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMjE1MCddIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMDsgfVxuICBib2R5W2RhdGEtYW9zLWRlbGF5PScyMTUwJ10gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSwgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzIxNTAnXS5hb3MtYW5pbWF0ZSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMjE1MG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZHVyYXRpb249JzIyMDAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0nMjIwMCddIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMjIwMG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZGVsYXk9JzIyMDAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMjIwMCddIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMDsgfVxuICBib2R5W2RhdGEtYW9zLWRlbGF5PScyMjAwJ10gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSwgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzIyMDAnXS5hb3MtYW5pbWF0ZSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMjIwMG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZHVyYXRpb249JzIyNTAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0nMjI1MCddIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMjI1MG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZGVsYXk9JzIyNTAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMjI1MCddIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMDsgfVxuICBib2R5W2RhdGEtYW9zLWRlbGF5PScyMjUwJ10gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSwgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzIyNTAnXS5hb3MtYW5pbWF0ZSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMjI1MG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZHVyYXRpb249JzIzMDAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0nMjMwMCddIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMjMwMG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZGVsYXk9JzIzMDAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMjMwMCddIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMDsgfVxuICBib2R5W2RhdGEtYW9zLWRlbGF5PScyMzAwJ10gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSwgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzIzMDAnXS5hb3MtYW5pbWF0ZSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMjMwMG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZHVyYXRpb249JzIzNTAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0nMjM1MCddIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMjM1MG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZGVsYXk9JzIzNTAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMjM1MCddIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMDsgfVxuICBib2R5W2RhdGEtYW9zLWRlbGF5PScyMzUwJ10gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSwgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzIzNTAnXS5hb3MtYW5pbWF0ZSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMjM1MG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZHVyYXRpb249JzI0MDAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0nMjQwMCddIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMjQwMG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZGVsYXk9JzI0MDAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMjQwMCddIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMDsgfVxuICBib2R5W2RhdGEtYW9zLWRlbGF5PScyNDAwJ10gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSwgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzI0MDAnXS5hb3MtYW5pbWF0ZSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMjQwMG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZHVyYXRpb249JzI0NTAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0nMjQ1MCddIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMjQ1MG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZGVsYXk9JzI0NTAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMjQ1MCddIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMDsgfVxuICBib2R5W2RhdGEtYW9zLWRlbGF5PScyNDUwJ10gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSwgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzI0NTAnXS5hb3MtYW5pbWF0ZSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMjQ1MG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZHVyYXRpb249JzI1MDAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0nMjUwMCddIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMjUwMG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZGVsYXk9JzI1MDAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMjUwMCddIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMDsgfVxuICBib2R5W2RhdGEtYW9zLWRlbGF5PScyNTAwJ10gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSwgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzI1MDAnXS5hb3MtYW5pbWF0ZSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMjUwMG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZHVyYXRpb249JzI1NTAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0nMjU1MCddIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMjU1MG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZGVsYXk9JzI1NTAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMjU1MCddIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMDsgfVxuICBib2R5W2RhdGEtYW9zLWRlbGF5PScyNTUwJ10gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSwgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzI1NTAnXS5hb3MtYW5pbWF0ZSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMjU1MG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZHVyYXRpb249JzI2MDAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0nMjYwMCddIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMjYwMG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZGVsYXk9JzI2MDAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMjYwMCddIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMDsgfVxuICBib2R5W2RhdGEtYW9zLWRlbGF5PScyNjAwJ10gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSwgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzI2MDAnXS5hb3MtYW5pbWF0ZSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMjYwMG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZHVyYXRpb249JzI2NTAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0nMjY1MCddIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMjY1MG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZGVsYXk9JzI2NTAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMjY1MCddIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMDsgfVxuICBib2R5W2RhdGEtYW9zLWRlbGF5PScyNjUwJ10gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSwgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzI2NTAnXS5hb3MtYW5pbWF0ZSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMjY1MG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZHVyYXRpb249JzI3MDAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0nMjcwMCddIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMjcwMG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZGVsYXk9JzI3MDAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMjcwMCddIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMDsgfVxuICBib2R5W2RhdGEtYW9zLWRlbGF5PScyNzAwJ10gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSwgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzI3MDAnXS5hb3MtYW5pbWF0ZSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMjcwMG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZHVyYXRpb249JzI3NTAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0nMjc1MCddIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMjc1MG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZGVsYXk9JzI3NTAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMjc1MCddIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMDsgfVxuICBib2R5W2RhdGEtYW9zLWRlbGF5PScyNzUwJ10gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSwgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzI3NTAnXS5hb3MtYW5pbWF0ZSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMjc1MG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZHVyYXRpb249JzI4MDAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0nMjgwMCddIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMjgwMG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZGVsYXk9JzI4MDAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMjgwMCddIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMDsgfVxuICBib2R5W2RhdGEtYW9zLWRlbGF5PScyODAwJ10gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSwgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzI4MDAnXS5hb3MtYW5pbWF0ZSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMjgwMG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZHVyYXRpb249JzI4NTAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0nMjg1MCddIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMjg1MG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZGVsYXk9JzI4NTAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMjg1MCddIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMDsgfVxuICBib2R5W2RhdGEtYW9zLWRlbGF5PScyODUwJ10gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSwgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzI4NTAnXS5hb3MtYW5pbWF0ZSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMjg1MG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZHVyYXRpb249JzI5MDAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0nMjkwMCddIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMjkwMG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZGVsYXk9JzI5MDAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMjkwMCddIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMDsgfVxuICBib2R5W2RhdGEtYW9zLWRlbGF5PScyOTAwJ10gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSwgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzI5MDAnXS5hb3MtYW5pbWF0ZSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMjkwMG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZHVyYXRpb249JzI5NTAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0nMjk1MCddIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMjk1MG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZGVsYXk9JzI5NTAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMjk1MCddIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMDsgfVxuICBib2R5W2RhdGEtYW9zLWRlbGF5PScyOTUwJ10gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSwgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzI5NTAnXS5hb3MtYW5pbWF0ZSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMjk1MG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZHVyYXRpb249JzMwMDAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0nMzAwMCddIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMzAwMG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZGVsYXk9JzMwMDAnXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nMzAwMCddIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMDsgfVxuICBib2R5W2RhdGEtYW9zLWRlbGF5PSczMDAwJ10gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSwgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9JzMwMDAnXS5hb3MtYW5pbWF0ZSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMzAwMG1zOyB9XG5cbmJvZHlbZGF0YS1hb3MtZWFzaW5nPVwibGluZWFyXCJdIFtkYXRhLWFvc10sIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWVhc2luZz1cImxpbmVhclwiXSB7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yNSwgMC4yNSwgMC43NSwgMC43NSk7IH1cblxuYm9keVtkYXRhLWFvcy1lYXNpbmc9XCJlYXNlXCJdIFtkYXRhLWFvc10sIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWVhc2luZz1cImVhc2VcIl0ge1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjUsIDAuMSwgMC4yNSwgMSk7IH1cblxuYm9keVtkYXRhLWFvcy1lYXNpbmc9XCJlYXNlLWluXCJdIFtkYXRhLWFvc10sIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWVhc2luZz1cImVhc2UtaW5cIl0ge1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNDIsIDAsIDEsIDEpOyB9XG5cbmJvZHlbZGF0YS1hb3MtZWFzaW5nPVwiZWFzZS1vdXRcIl0gW2RhdGEtYW9zXSwgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZWFzaW5nPVwiZWFzZS1vdXRcIl0ge1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAsIDAsIDAuNTgsIDEpOyB9XG5cbmJvZHlbZGF0YS1hb3MtZWFzaW5nPVwiZWFzZS1pbi1vdXRcIl0gW2RhdGEtYW9zXSwgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZWFzaW5nPVwiZWFzZS1pbi1vdXRcIl0ge1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNDIsIDAsIDAuNTgsIDEpOyB9XG5cbmJvZHlbZGF0YS1hb3MtZWFzaW5nPVwiZWFzZS1pbi1iYWNrXCJdIFtkYXRhLWFvc10sIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWVhc2luZz1cImVhc2UtaW4tYmFja1wiXSB7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC42LCAtMC4yOCwgMC43MzUsIDAuMDQ1KTsgfVxuXG5ib2R5W2RhdGEtYW9zLWVhc2luZz1cImVhc2Utb3V0LWJhY2tcIl0gW2RhdGEtYW9zXSwgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZWFzaW5nPVwiZWFzZS1vdXQtYmFja1wiXSB7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4xNzUsIDAuODg1LCAwLjMyLCAxLjI3NSk7IH1cblxuYm9keVtkYXRhLWFvcy1lYXNpbmc9XCJlYXNlLWluLW91dC1iYWNrXCJdIFtkYXRhLWFvc10sIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWVhc2luZz1cImVhc2UtaW4tb3V0LWJhY2tcIl0ge1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNjgsIC0wLjU1LCAwLjI2NSwgMS41NSk7IH1cblxuYm9keVtkYXRhLWFvcy1lYXNpbmc9XCJlYXNlLWluLXNpbmVcIl0gW2RhdGEtYW9zXSwgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZWFzaW5nPVwiZWFzZS1pbi1zaW5lXCJdIHtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjQ3LCAwLCAwLjc0NSwgMC43MTUpOyB9XG5cbmJvZHlbZGF0YS1hb3MtZWFzaW5nPVwiZWFzZS1vdXQtc2luZVwiXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1lYXNpbmc9XCJlYXNlLW91dC1zaW5lXCJdIHtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjM5LCAwLjU3NSwgMC41NjUsIDEpOyB9XG5cbmJvZHlbZGF0YS1hb3MtZWFzaW5nPVwiZWFzZS1pbi1vdXQtc2luZVwiXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1lYXNpbmc9XCJlYXNlLWluLW91dC1zaW5lXCJdIHtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjQ0NSwgMC4wNSwgMC41NSwgMC45NSk7IH1cblxuYm9keVtkYXRhLWFvcy1lYXNpbmc9XCJlYXNlLWluLXF1YWRcIl0gW2RhdGEtYW9zXSwgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZWFzaW5nPVwiZWFzZS1pbi1xdWFkXCJdIHtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU1LCAwLjA4NSwgMC42OCwgMC41Myk7IH1cblxuYm9keVtkYXRhLWFvcy1lYXNpbmc9XCJlYXNlLW91dC1xdWFkXCJdIFtkYXRhLWFvc10sIFtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWVhc2luZz1cImVhc2Utb3V0LXF1YWRcIl0ge1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjUsIDAuNDYsIDAuNDUsIDAuOTQpOyB9XG5cbmJvZHlbZGF0YS1hb3MtZWFzaW5nPVwiZWFzZS1pbi1vdXQtcXVhZFwiXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1lYXNpbmc9XCJlYXNlLWluLW91dC1xdWFkXCJdIHtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjQ1NSwgMC4wMywgMC41MTUsIDAuOTU1KTsgfVxuXG5ib2R5W2RhdGEtYW9zLWVhc2luZz1cImVhc2UtaW4tY3ViaWNcIl0gW2RhdGEtYW9zXSwgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZWFzaW5nPVwiZWFzZS1pbi1jdWJpY1wiXSB7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NSwgMC4wODUsIDAuNjgsIDAuNTMpOyB9XG5cbmJvZHlbZGF0YS1hb3MtZWFzaW5nPVwiZWFzZS1vdXQtY3ViaWNcIl0gW2RhdGEtYW9zXSwgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZWFzaW5nPVwiZWFzZS1vdXQtY3ViaWNcIl0ge1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjUsIDAuNDYsIDAuNDUsIDAuOTQpOyB9XG5cbmJvZHlbZGF0YS1hb3MtZWFzaW5nPVwiZWFzZS1pbi1vdXQtY3ViaWNcIl0gW2RhdGEtYW9zXSwgW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZWFzaW5nPVwiZWFzZS1pbi1vdXQtY3ViaWNcIl0ge1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNDU1LCAwLjAzLCAwLjUxNSwgMC45NTUpOyB9XG5cbmJvZHlbZGF0YS1hb3MtZWFzaW5nPVwiZWFzZS1pbi1xdWFydFwiXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1lYXNpbmc9XCJlYXNlLWluLXF1YXJ0XCJdIHtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU1LCAwLjA4NSwgMC42OCwgMC41Myk7IH1cblxuYm9keVtkYXRhLWFvcy1lYXNpbmc9XCJlYXNlLW91dC1xdWFydFwiXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1lYXNpbmc9XCJlYXNlLW91dC1xdWFydFwiXSB7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yNSwgMC40NiwgMC40NSwgMC45NCk7IH1cblxuYm9keVtkYXRhLWFvcy1lYXNpbmc9XCJlYXNlLWluLW91dC1xdWFydFwiXSBbZGF0YS1hb3NdLCBbZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1lYXNpbmc9XCJlYXNlLWluLW91dC1xdWFydFwiXSB7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC40NTUsIDAuMDMsIDAuNTE1LCAwLjk1NSk7IH1cblxuLyoqXG4gKiBGYWRlIGFuaW1hdGlvbnM6XG4gKiBmYWRlXG4gKiBmYWRlLXVwLCBmYWRlLWRvd24sIGZhZGUtbGVmdCwgZmFkZS1yaWdodFxuICogZmFkZS11cC1yaWdodCwgZmFkZS11cC1sZWZ0LCBmYWRlLWRvd24tcmlnaHQsIGZhZGUtZG93bi1sZWZ0XG4gKi9cbltkYXRhLWFvc149J2ZhZGUnXVtkYXRhLWFvc149J2ZhZGUnXSB7XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IG9wYWNpdHksIHRyYW5zZm9ybTsgfVxuICBbZGF0YS1hb3NePSdmYWRlJ11bZGF0YS1hb3NePSdmYWRlJ10uYW9zLWFuaW1hdGUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTsgfVxuXG5bZGF0YS1hb3M9J2ZhZGUtdXAnXSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTAwcHgsIDApOyB9XG5cbltkYXRhLWFvcz0nZmFkZS1kb3duJ10ge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMDBweCwgMCk7IH1cblxuW2RhdGEtYW9zPSdmYWRlLXJpZ2h0J10ge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDBweCwgMCwgMCk7IH1cblxuW2RhdGEtYW9zPSdmYWRlLWxlZnQnXSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwcHgsIDAsIDApOyB9XG5cbltkYXRhLWFvcz0nZmFkZS11cC1yaWdodCddIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwcHgsIDEwMHB4LCAwKTsgfVxuXG5bZGF0YS1hb3M9J2ZhZGUtdXAtbGVmdCddIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDBweCwgMTAwcHgsIDApOyB9XG5cbltkYXRhLWFvcz0nZmFkZS1kb3duLXJpZ2h0J10ge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDBweCwgLTEwMHB4LCAwKTsgfVxuXG5bZGF0YS1hb3M9J2ZhZGUtZG93bi1sZWZ0J10ge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMHB4LCAtMTAwcHgsIDApOyB9XG5cbi8qKlxuICogWm9vbSBhbmltYXRpb25zOlxuICogem9vbS1pbiwgem9vbS1pbi11cCwgem9vbS1pbi1kb3duLCB6b29tLWluLWxlZnQsIHpvb20taW4tcmlnaHRcbiAqIHpvb20tb3V0LCB6b29tLW91dC11cCwgem9vbS1vdXQtZG93biwgem9vbS1vdXQtbGVmdCwgem9vbS1vdXQtcmlnaHRcbiAqL1xuW2RhdGEtYW9zXj0nem9vbSddW2RhdGEtYW9zXj0nem9vbSddIHtcbiAgb3BhY2l0eTogMDtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogb3BhY2l0eSwgdHJhbnNmb3JtOyB9XG4gIFtkYXRhLWFvc149J3pvb20nXVtkYXRhLWFvc149J3pvb20nXS5hb3MtYW5pbWF0ZSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApIHNjYWxlKDEpOyB9XG5cbltkYXRhLWFvcz0nem9vbS1pbiddIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwLjYpOyB9XG5cbltkYXRhLWFvcz0nem9vbS1pbi11cCddIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMDBweCwgMCkgc2NhbGUoMC42KTsgfVxuXG5bZGF0YS1hb3M9J3pvb20taW4tZG93biddIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTAwcHgsIDApIHNjYWxlKDAuNik7IH1cblxuW2RhdGEtYW9zPSd6b29tLWluLXJpZ2h0J10ge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDBweCwgMCwgMCkgc2NhbGUoMC42KTsgfVxuXG5bZGF0YS1hb3M9J3pvb20taW4tbGVmdCddIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDBweCwgMCwgMCkgc2NhbGUoMC42KTsgfVxuXG5bZGF0YS1hb3M9J3pvb20tb3V0J10ge1xuICB0cmFuc2Zvcm06IHNjYWxlKDEuMik7IH1cblxuW2RhdGEtYW9zPSd6b29tLW91dC11cCddIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMDBweCwgMCkgc2NhbGUoMS4yKTsgfVxuXG5bZGF0YS1hb3M9J3pvb20tb3V0LWRvd24nXSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwMHB4LCAwKSBzY2FsZSgxLjIpOyB9XG5cbltkYXRhLWFvcz0nem9vbS1vdXQtcmlnaHQnXSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMHB4LCAwLCAwKSBzY2FsZSgxLjIpOyB9XG5cbltkYXRhLWFvcz0nem9vbS1vdXQtbGVmdCddIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDBweCwgMCwgMCkgc2NhbGUoMS4yKTsgfVxuXG4vKipcbiAqIFNsaWRlIGFuaW1hdGlvbnNcbiAqL1xuW2RhdGEtYW9zXj0nc2xpZGUnXVtkYXRhLWFvc149J3NsaWRlJ10ge1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07IH1cbiAgW2RhdGEtYW9zXj0nc2xpZGUnXVtkYXRhLWFvc149J3NsaWRlJ10uYW9zLWFuaW1hdGUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7IH1cblxuW2RhdGEtYW9zPSdzbGlkZS11cCddIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMDAlLCAwKTsgfVxuXG5bZGF0YS1hb3M9J3NsaWRlLWRvd24nXSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwMCUsIDApOyB9XG5cbltkYXRhLWFvcz0nc2xpZGUtcmlnaHQnXSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApOyB9XG5cbltkYXRhLWFvcz0nc2xpZGUtbGVmdCddIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKTsgfVxuXG4vKipcbiAqIEZsaXAgYW5pbWF0aW9uczpcbiAqIGZsaXAtbGVmdCwgZmxpcC1yaWdodCwgZmxpcC11cCwgZmxpcC1kb3duXG4gKi9cbltkYXRhLWFvc149J2ZsaXAnXVtkYXRhLWFvc149J2ZsaXAnXSB7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtOyB9XG5cbltkYXRhLWFvcz0nZmxpcC1sZWZ0J10ge1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDI1MDBweCkgcm90YXRlWSgtMTAwZGVnKTsgfVxuICBbZGF0YS1hb3M9J2ZsaXAtbGVmdCddLmFvcy1hbmltYXRlIHtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDI1MDBweCkgcm90YXRlWSgwKTsgfVxuXG5bZGF0YS1hb3M9J2ZsaXAtcmlnaHQnXSB7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjUwMHB4KSByb3RhdGVZKDEwMGRlZyk7IH1cbiAgW2RhdGEtYW9zPSdmbGlwLXJpZ2h0J10uYW9zLWFuaW1hdGUge1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjUwMHB4KSByb3RhdGVZKDApOyB9XG5cbltkYXRhLWFvcz0nZmxpcC11cCddIHtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyNTAwcHgpIHJvdGF0ZVgoLTEwMGRlZyk7IH1cbiAgW2RhdGEtYW9zPSdmbGlwLXVwJ10uYW9zLWFuaW1hdGUge1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjUwMHB4KSByb3RhdGVYKDApOyB9XG5cbltkYXRhLWFvcz0nZmxpcC1kb3duJ10ge1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDI1MDBweCkgcm90YXRlWCgxMDBkZWcpOyB9XG4gIFtkYXRhLWFvcz0nZmxpcC1kb3duJ10uYW9zLWFuaW1hdGUge1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjUwMHB4KSByb3RhdGVYKDApOyB9XG5cbi8qISBub3JtYWxpemUuY3NzIHY4LjAuMCB8IE1JVCBMaWNlbnNlIHwgZ2l0aHViLmNvbS9uZWNvbGFzL25vcm1hbGl6ZS5jc3MgKi9cbmh0bWwge1xuICBsaW5lLWhlaWdodDogMS4xNTtcbiAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyB9XG5cbmJvZHkge1xuICBtYXJnaW46IDA7IH1cblxuaDEge1xuICBmb250LXNpemU6IDJlbTtcbiAgbWFyZ2luOiAwLjY3ZW0gMDsgfVxuXG5ociB7XG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICBoZWlnaHQ6IDA7XG4gIG92ZXJmbG93OiB2aXNpYmxlOyB9XG5cbnByZSB7XG4gIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTtcbiAgZm9udC1zaXplOiAxZW07IH1cblxuYSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG5cbmFiYnJbdGl0bGVdIHtcbiAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lIGRvdHRlZDsgfVxuXG5iLFxuc3Ryb25nIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGRlcjsgfVxuXG5jb2RlLFxua2JkLFxuc2FtcCB7XG4gIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTtcbiAgZm9udC1zaXplOiAxZW07IH1cblxuc21hbGwge1xuICBmb250LXNpemU6IDgwJTsgfVxuXG5zdWIsXG5zdXAge1xuICBmb250LXNpemU6IDc1JTtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lOyB9XG5cbnN1YiB7XG4gIGJvdHRvbTogLTAuMjVlbTsgfVxuXG5zdXAge1xuICB0b3A6IC0wLjVlbTsgfVxuXG5pbWcge1xuICBib3JkZXItc3R5bGU6IG5vbmU7IH1cblxuYnV0dG9uLFxuaW5wdXQsXG5vcHRncm91cCxcbnNlbGVjdCxcbnRleHRhcmVhIHtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIGZvbnQtc2l6ZTogMTAwJTtcbiAgbGluZS1oZWlnaHQ6IDEuMTU7XG4gIG1hcmdpbjogMDsgfVxuXG5idXR0b24sXG5pbnB1dCB7XG4gIG92ZXJmbG93OiB2aXNpYmxlOyB9XG5cbmJ1dHRvbixcbnNlbGVjdCB7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lOyB9XG5cbmJ1dHRvbixcblt0eXBlPVwiYnV0dG9uXCJdLFxuW3R5cGU9XCJyZXNldFwiXSxcblt0eXBlPVwic3VibWl0XCJdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247IH1cblxuYnV0dG9uOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJidXR0b25cIl06Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1cInJlc2V0XCJdOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJzdWJtaXRcIl06Oi1tb3otZm9jdXMtaW5uZXIge1xuICBib3JkZXItc3R5bGU6IG5vbmU7XG4gIHBhZGRpbmc6IDA7IH1cblxuYnV0dG9uOi1tb3otZm9jdXNyaW5nLFxuW3R5cGU9XCJidXR0b25cIl06LW1vei1mb2N1c3JpbmcsXG5bdHlwZT1cInJlc2V0XCJdOi1tb3otZm9jdXNyaW5nLFxuW3R5cGU9XCJzdWJtaXRcIl06LW1vei1mb2N1c3Jpbmcge1xuICBvdXRsaW5lOiAxcHggZG90dGVkIEJ1dHRvblRleHQ7IH1cblxuZmllbGRzZXQge1xuICBwYWRkaW5nOiAwLjM1ZW0gMC43NWVtIDAuNjI1ZW07IH1cblxubGVnZW5kIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDA7XG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7IH1cblxucHJvZ3Jlc3Mge1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7IH1cblxudGV4dGFyZWEge1xuICBvdmVyZmxvdzogYXV0bzsgfVxuXG5bdHlwZT1cImNoZWNrYm94XCJdLFxuW3R5cGU9XCJyYWRpb1wiXSB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHBhZGRpbmc6IDA7IH1cblxuW3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXG5bdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiB7XG4gIGhlaWdodDogYXV0bzsgfVxuXG5bdHlwZT1cInNlYXJjaFwiXSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogdGV4dGZpZWxkO1xuICBvdXRsaW5lLW9mZnNldDogLTJweDsgfVxuXG5bdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbiB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTsgfVxuXG46Oi13ZWJraXQtZmlsZS11cGxvYWQtYnV0dG9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247XG4gIGZvbnQ6IGluaGVyaXQ7IH1cblxuZGV0YWlscyB7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbnN1bW1hcnkge1xuICBkaXNwbGF5OiBsaXN0LWl0ZW07IH1cblxudGVtcGxhdGUge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbltoaWRkZW5dIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4uZm91bmRhdGlvbi1tcSB7XG4gIGZvbnQtZmFtaWx5OiBcInNtYWxsPTBlbSZtZWRpdW09NDBlbSZsYXJnZT02NGVtJnhsYXJnZT03NWVtJnh4bGFyZ2U9ODguNzVlbVwiOyB9XG5cbmh0bWwge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBmb250LXNpemU6IDEwMCU7IH1cblxuKixcbio6OmJlZm9yZSxcbio6OmFmdGVyIHtcbiAgYm94LXNpemluZzogaW5oZXJpdDsgfVxuXG5ib2R5IHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBiYWNrZ3JvdW5kOiAjZmVmZWZlO1xuICBmb250LWZhbWlseTogYWt0aXYtZ3JvdGVzaywgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgY29sb3I6ICMwYTBhMGE7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlOyB9XG5cbmltZyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGF1dG87XG4gIC1tcy1pbnRlcnBvbGF0aW9uLW1vZGU6IGJpY3ViaWM7IH1cblxudGV4dGFyZWEge1xuICBoZWlnaHQ6IGF1dG87XG4gIG1pbi1oZWlnaHQ6IDUwcHg7XG4gIGJvcmRlci1yYWRpdXM6IDEuMjVyZW07IH1cblxuc2VsZWN0IHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgd2lkdGg6IDEwMCU7XG4gIGJvcmRlci1yYWRpdXM6IDEuMjVyZW07IH1cblxuLm1hcF9jYW52YXMgaW1nLFxuLm1hcF9jYW52YXMgZW1iZWQsXG4ubWFwX2NhbnZhcyBvYmplY3QsXG4ubXFhLWRpc3BsYXkgaW1nLFxuLm1xYS1kaXNwbGF5IGVtYmVkLFxuLm1xYS1kaXNwbGF5IG9iamVjdCB7XG4gIG1heC13aWR0aDogbm9uZSAhaW1wb3J0YW50OyB9XG5cbmJ1dHRvbiB7XG4gIHBhZGRpbmc6IDA7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXJhZGl1czogMS4yNXJlbTtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBjdXJzb3I6IGF1dG87IH1cbiAgW2RhdGEtd2hhdGlucHV0PSdtb3VzZSddIGJ1dHRvbiB7XG4gICAgb3V0bGluZTogMDsgfVxuXG5wcmUge1xuICBvdmVyZmxvdzogYXV0bzsgfVxuXG5idXR0b24sXG5pbnB1dCxcbm9wdGdyb3VwLFxuc2VsZWN0LFxudGV4dGFyZWEge1xuICBmb250LWZhbWlseTogaW5oZXJpdDsgfVxuXG4uaXMtdmlzaWJsZSB7XG4gIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7IH1cblxuLmlzLWhpZGRlbiB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuXG4ucm93IHtcbiAgbWF4LXdpZHRoOiBub25lO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IHJvdyB3cmFwOyB9XG4gIC5yb3cgLnJvdyB7XG4gICAgbWFyZ2luLXJpZ2h0OiAtMC42MjVyZW07XG4gICAgbWFyZ2luLWxlZnQ6IC0wLjYyNXJlbTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAucm93IC5yb3cge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IC0wLjkzNzVyZW07XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAtMC45Mzc1cmVtOyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLnJvdyAucm93IHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAtMC45Mzc1cmVtO1xuICAgICAgICBtYXJnaW4tbGVmdDogLTAuOTM3NXJlbTsgfSB9XG4gICAgLnJvdyAucm93LmNvbGxhcHNlIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwOyB9XG4gIC5yb3cuZXhwYW5kZWQge1xuICAgIG1heC13aWR0aDogbm9uZTsgfVxuICAgIC5yb3cuZXhwYW5kZWQgLnJvdyB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgICBtYXJnaW4tbGVmdDogYXV0bzsgfVxuICAucm93Om5vdCguZXhwYW5kZWQpIC5yb3cge1xuICAgIG1heC13aWR0aDogbm9uZTsgfVxuICAucm93LmNvbGxhcHNlID4gLmNvbHVtbiwgLnJvdy5jb2xsYXBzZSA+IC5jb2x1bW5zIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIHBhZGRpbmctbGVmdDogMDsgfVxuICAucm93LmlzLWNvbGxhcHNlLWNoaWxkLFxuICAucm93LmNvbGxhcHNlID4gLmNvbHVtbiA+IC5yb3csXG4gIC5yb3cuY29sbGFwc2UgPiAuY29sdW1ucyA+IC5yb3cge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDsgfVxuXG4uY29sdW1uLCAuY29sdW1ucyB7XG4gIGZsZXg6IDEgMSAwcHg7XG4gIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtO1xuICBtaW4td2lkdGg6IDA7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuY29sdW1uLCAuY29sdW1ucyB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG5cbi5jb2x1bW4ucm93LnJvdywgLnJvdy5yb3cuY29sdW1ucyB7XG4gIGZsb2F0OiBub25lO1xuICBkaXNwbGF5OiBibG9jazsgfVxuXG4ucm93IC5jb2x1bW4ucm93LnJvdywgLnJvdyAucm93LnJvdy5jb2x1bW5zIHtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBtYXJnaW4tbGVmdDogMDtcbiAgcGFkZGluZy1yaWdodDogMDtcbiAgcGFkZGluZy1sZWZ0OiAwOyB9XG5cbi5zbWFsbC0xIHtcbiAgZmxleDogMCAwIDguMzMzMzMlO1xuICBtYXgtd2lkdGg6IDguMzMzMzMlOyB9XG5cbi5zbWFsbC1vZmZzZXQtMCB7XG4gIG1hcmdpbi1sZWZ0OiAwJTsgfVxuXG4uc21hbGwtMiB7XG4gIGZsZXg6IDAgMCAxNi42NjY2NyU7XG4gIG1heC13aWR0aDogMTYuNjY2NjclOyB9XG5cbi5zbWFsbC1vZmZzZXQtMSB7XG4gIG1hcmdpbi1sZWZ0OiA4LjMzMzMzJTsgfVxuXG4uc21hbGwtMyB7XG4gIGZsZXg6IDAgMCAyNSU7XG4gIG1heC13aWR0aDogMjUlOyB9XG5cbi5zbWFsbC1vZmZzZXQtMiB7XG4gIG1hcmdpbi1sZWZ0OiAxNi42NjY2NyU7IH1cblxuLnNtYWxsLTQge1xuICBmbGV4OiAwIDAgMzMuMzMzMzMlO1xuICBtYXgtd2lkdGg6IDMzLjMzMzMzJTsgfVxuXG4uc21hbGwtb2Zmc2V0LTMge1xuICBtYXJnaW4tbGVmdDogMjUlOyB9XG5cbi5zbWFsbC01IHtcbiAgZmxleDogMCAwIDQxLjY2NjY3JTtcbiAgbWF4LXdpZHRoOiA0MS42NjY2NyU7IH1cblxuLnNtYWxsLW9mZnNldC00IHtcbiAgbWFyZ2luLWxlZnQ6IDMzLjMzMzMzJTsgfVxuXG4uc21hbGwtNiB7XG4gIGZsZXg6IDAgMCA1MCU7XG4gIG1heC13aWR0aDogNTAlOyB9XG5cbi5zbWFsbC1vZmZzZXQtNSB7XG4gIG1hcmdpbi1sZWZ0OiA0MS42NjY2NyU7IH1cblxuLnNtYWxsLTcge1xuICBmbGV4OiAwIDAgNTguMzMzMzMlO1xuICBtYXgtd2lkdGg6IDU4LjMzMzMzJTsgfVxuXG4uc21hbGwtb2Zmc2V0LTYge1xuICBtYXJnaW4tbGVmdDogNTAlOyB9XG5cbi5zbWFsbC04IHtcbiAgZmxleDogMCAwIDY2LjY2NjY3JTtcbiAgbWF4LXdpZHRoOiA2Ni42NjY2NyU7IH1cblxuLnNtYWxsLW9mZnNldC03IHtcbiAgbWFyZ2luLWxlZnQ6IDU4LjMzMzMzJTsgfVxuXG4uc21hbGwtOSB7XG4gIGZsZXg6IDAgMCA3NSU7XG4gIG1heC13aWR0aDogNzUlOyB9XG5cbi5zbWFsbC1vZmZzZXQtOCB7XG4gIG1hcmdpbi1sZWZ0OiA2Ni42NjY2NyU7IH1cblxuLnNtYWxsLTEwIHtcbiAgZmxleDogMCAwIDgzLjMzMzMzJTtcbiAgbWF4LXdpZHRoOiA4My4zMzMzMyU7IH1cblxuLnNtYWxsLW9mZnNldC05IHtcbiAgbWFyZ2luLWxlZnQ6IDc1JTsgfVxuXG4uc21hbGwtMTEge1xuICBmbGV4OiAwIDAgOTEuNjY2NjclO1xuICBtYXgtd2lkdGg6IDkxLjY2NjY3JTsgfVxuXG4uc21hbGwtb2Zmc2V0LTEwIHtcbiAgbWFyZ2luLWxlZnQ6IDgzLjMzMzMzJTsgfVxuXG4uc21hbGwtMTIge1xuICBmbGV4OiAwIDAgMTAwJTtcbiAgbWF4LXdpZHRoOiAxMDAlOyB9XG5cbi5zbWFsbC1vZmZzZXQtMTEge1xuICBtYXJnaW4tbGVmdDogOTEuNjY2NjclOyB9XG5cbi5zbWFsbC11cC0xIHtcbiAgZmxleC13cmFwOiB3cmFwOyB9XG4gIC5zbWFsbC11cC0xID4gLmNvbHVtbiwgLnNtYWxsLXVwLTEgPiAuY29sdW1ucyB7XG4gICAgZmxleDogMCAwIDEwMCU7XG4gICAgbWF4LXdpZHRoOiAxMDAlOyB9XG5cbi5zbWFsbC11cC0yIHtcbiAgZmxleC13cmFwOiB3cmFwOyB9XG4gIC5zbWFsbC11cC0yID4gLmNvbHVtbiwgLnNtYWxsLXVwLTIgPiAuY29sdW1ucyB7XG4gICAgZmxleDogMCAwIDUwJTtcbiAgICBtYXgtd2lkdGg6IDUwJTsgfVxuXG4uc21hbGwtdXAtMyB7XG4gIGZsZXgtd3JhcDogd3JhcDsgfVxuICAuc21hbGwtdXAtMyA+IC5jb2x1bW4sIC5zbWFsbC11cC0zID4gLmNvbHVtbnMge1xuICAgIGZsZXg6IDAgMCAzMy4zMzMzMyU7XG4gICAgbWF4LXdpZHRoOiAzMy4zMzMzMyU7IH1cblxuLnNtYWxsLXVwLTQge1xuICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgLnNtYWxsLXVwLTQgPiAuY29sdW1uLCAuc21hbGwtdXAtNCA+IC5jb2x1bW5zIHtcbiAgICBmbGV4OiAwIDAgMjUlO1xuICAgIG1heC13aWR0aDogMjUlOyB9XG5cbi5zbWFsbC11cC01IHtcbiAgZmxleC13cmFwOiB3cmFwOyB9XG4gIC5zbWFsbC11cC01ID4gLmNvbHVtbiwgLnNtYWxsLXVwLTUgPiAuY29sdW1ucyB7XG4gICAgZmxleDogMCAwIDIwJTtcbiAgICBtYXgtd2lkdGg6IDIwJTsgfVxuXG4uc21hbGwtdXAtNiB7XG4gIGZsZXgtd3JhcDogd3JhcDsgfVxuICAuc21hbGwtdXAtNiA+IC5jb2x1bW4sIC5zbWFsbC11cC02ID4gLmNvbHVtbnMge1xuICAgIGZsZXg6IDAgMCAxNi42NjY2NyU7XG4gICAgbWF4LXdpZHRoOiAxNi42NjY2NyU7IH1cblxuLnNtYWxsLXVwLTcge1xuICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgLnNtYWxsLXVwLTcgPiAuY29sdW1uLCAuc21hbGwtdXAtNyA+IC5jb2x1bW5zIHtcbiAgICBmbGV4OiAwIDAgMTQuMjg1NzElO1xuICAgIG1heC13aWR0aDogMTQuMjg1NzElOyB9XG5cbi5zbWFsbC11cC04IHtcbiAgZmxleC13cmFwOiB3cmFwOyB9XG4gIC5zbWFsbC11cC04ID4gLmNvbHVtbiwgLnNtYWxsLXVwLTggPiAuY29sdW1ucyB7XG4gICAgZmxleDogMCAwIDEyLjUlO1xuICAgIG1heC13aWR0aDogMTIuNSU7IH1cblxuLnNtYWxsLWNvbGxhcHNlID4gLmNvbHVtbiwgLnNtYWxsLWNvbGxhcHNlID4gLmNvbHVtbnMge1xuICBwYWRkaW5nLXJpZ2h0OiAwO1xuICBwYWRkaW5nLWxlZnQ6IDA7IH1cblxuLnNtYWxsLXVuY29sbGFwc2UgPiAuY29sdW1uLCAuc21hbGwtdW5jb2xsYXBzZSA+IC5jb2x1bW5zIHtcbiAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gIHBhZGRpbmctbGVmdDogMC42MjVyZW07IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLm1lZGl1bS0xIHtcbiAgICBmbGV4OiAwIDAgOC4zMzMzMyU7XG4gICAgbWF4LXdpZHRoOiA4LjMzMzMzJTsgfVxuICAubWVkaXVtLW9mZnNldC0wIHtcbiAgICBtYXJnaW4tbGVmdDogMCU7IH1cbiAgLm1lZGl1bS0yIHtcbiAgICBmbGV4OiAwIDAgMTYuNjY2NjclO1xuICAgIG1heC13aWR0aDogMTYuNjY2NjclOyB9XG4gIC5tZWRpdW0tb2Zmc2V0LTEge1xuICAgIG1hcmdpbi1sZWZ0OiA4LjMzMzMzJTsgfVxuICAubWVkaXVtLTMge1xuICAgIGZsZXg6IDAgMCAyNSU7XG4gICAgbWF4LXdpZHRoOiAyNSU7IH1cbiAgLm1lZGl1bS1vZmZzZXQtMiB7XG4gICAgbWFyZ2luLWxlZnQ6IDE2LjY2NjY3JTsgfVxuICAubWVkaXVtLTQge1xuICAgIGZsZXg6IDAgMCAzMy4zMzMzMyU7XG4gICAgbWF4LXdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgLm1lZGl1bS1vZmZzZXQtMyB7XG4gICAgbWFyZ2luLWxlZnQ6IDI1JTsgfVxuICAubWVkaXVtLTUge1xuICAgIGZsZXg6IDAgMCA0MS42NjY2NyU7XG4gICAgbWF4LXdpZHRoOiA0MS42NjY2NyU7IH1cbiAgLm1lZGl1bS1vZmZzZXQtNCB7XG4gICAgbWFyZ2luLWxlZnQ6IDMzLjMzMzMzJTsgfVxuICAubWVkaXVtLTYge1xuICAgIGZsZXg6IDAgMCA1MCU7XG4gICAgbWF4LXdpZHRoOiA1MCU7IH1cbiAgLm1lZGl1bS1vZmZzZXQtNSB7XG4gICAgbWFyZ2luLWxlZnQ6IDQxLjY2NjY3JTsgfVxuICAubWVkaXVtLTcge1xuICAgIGZsZXg6IDAgMCA1OC4zMzMzMyU7XG4gICAgbWF4LXdpZHRoOiA1OC4zMzMzMyU7IH1cbiAgLm1lZGl1bS1vZmZzZXQtNiB7XG4gICAgbWFyZ2luLWxlZnQ6IDUwJTsgfVxuICAubWVkaXVtLTgge1xuICAgIGZsZXg6IDAgMCA2Ni42NjY2NyU7XG4gICAgbWF4LXdpZHRoOiA2Ni42NjY2NyU7IH1cbiAgLm1lZGl1bS1vZmZzZXQtNyB7XG4gICAgbWFyZ2luLWxlZnQ6IDU4LjMzMzMzJTsgfVxuICAubWVkaXVtLTkge1xuICAgIGZsZXg6IDAgMCA3NSU7XG4gICAgbWF4LXdpZHRoOiA3NSU7IH1cbiAgLm1lZGl1bS1vZmZzZXQtOCB7XG4gICAgbWFyZ2luLWxlZnQ6IDY2LjY2NjY3JTsgfVxuICAubWVkaXVtLTEwIHtcbiAgICBmbGV4OiAwIDAgODMuMzMzMzMlO1xuICAgIG1heC13aWR0aDogODMuMzMzMzMlOyB9XG4gIC5tZWRpdW0tb2Zmc2V0LTkge1xuICAgIG1hcmdpbi1sZWZ0OiA3NSU7IH1cbiAgLm1lZGl1bS0xMSB7XG4gICAgZmxleDogMCAwIDkxLjY2NjY3JTtcbiAgICBtYXgtd2lkdGg6IDkxLjY2NjY3JTsgfVxuICAubWVkaXVtLW9mZnNldC0xMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDgzLjMzMzMzJTsgfVxuICAubWVkaXVtLTEyIHtcbiAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7IH1cbiAgLm1lZGl1bS1vZmZzZXQtMTEge1xuICAgIG1hcmdpbi1sZWZ0OiA5MS42NjY2NyU7IH1cbiAgLm1lZGl1bS11cC0xIHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgICAubWVkaXVtLXVwLTEgPiAuY29sdW1uLCAubWVkaXVtLXVwLTEgPiAuY29sdW1ucyB7XG4gICAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICAgIG1heC13aWR0aDogMTAwJTsgfVxuICAubWVkaXVtLXVwLTIge1xuICAgIGZsZXgtd3JhcDogd3JhcDsgfVxuICAgIC5tZWRpdW0tdXAtMiA+IC5jb2x1bW4sIC5tZWRpdW0tdXAtMiA+IC5jb2x1bW5zIHtcbiAgICAgIGZsZXg6IDAgMCA1MCU7XG4gICAgICBtYXgtd2lkdGg6IDUwJTsgfVxuICAubWVkaXVtLXVwLTMge1xuICAgIGZsZXgtd3JhcDogd3JhcDsgfVxuICAgIC5tZWRpdW0tdXAtMyA+IC5jb2x1bW4sIC5tZWRpdW0tdXAtMyA+IC5jb2x1bW5zIHtcbiAgICAgIGZsZXg6IDAgMCAzMy4zMzMzMyU7XG4gICAgICBtYXgtd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAubWVkaXVtLXVwLTQge1xuICAgIGZsZXgtd3JhcDogd3JhcDsgfVxuICAgIC5tZWRpdW0tdXAtNCA+IC5jb2x1bW4sIC5tZWRpdW0tdXAtNCA+IC5jb2x1bW5zIHtcbiAgICAgIGZsZXg6IDAgMCAyNSU7XG4gICAgICBtYXgtd2lkdGg6IDI1JTsgfVxuICAubWVkaXVtLXVwLTUge1xuICAgIGZsZXgtd3JhcDogd3JhcDsgfVxuICAgIC5tZWRpdW0tdXAtNSA+IC5jb2x1bW4sIC5tZWRpdW0tdXAtNSA+IC5jb2x1bW5zIHtcbiAgICAgIGZsZXg6IDAgMCAyMCU7XG4gICAgICBtYXgtd2lkdGg6IDIwJTsgfVxuICAubWVkaXVtLXVwLTYge1xuICAgIGZsZXgtd3JhcDogd3JhcDsgfVxuICAgIC5tZWRpdW0tdXAtNiA+IC5jb2x1bW4sIC5tZWRpdW0tdXAtNiA+IC5jb2x1bW5zIHtcbiAgICAgIGZsZXg6IDAgMCAxNi42NjY2NyU7XG4gICAgICBtYXgtd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAubWVkaXVtLXVwLTcge1xuICAgIGZsZXgtd3JhcDogd3JhcDsgfVxuICAgIC5tZWRpdW0tdXAtNyA+IC5jb2x1bW4sIC5tZWRpdW0tdXAtNyA+IC5jb2x1bW5zIHtcbiAgICAgIGZsZXg6IDAgMCAxNC4yODU3MSU7XG4gICAgICBtYXgtd2lkdGg6IDE0LjI4NTcxJTsgfVxuICAubWVkaXVtLXVwLTgge1xuICAgIGZsZXgtd3JhcDogd3JhcDsgfVxuICAgIC5tZWRpdW0tdXAtOCA+IC5jb2x1bW4sIC5tZWRpdW0tdXAtOCA+IC5jb2x1bW5zIHtcbiAgICAgIGZsZXg6IDAgMCAxMi41JTtcbiAgICAgIG1heC13aWR0aDogMTIuNSU7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLm1lZGl1bS1leHBhbmQge1xuICAgIGZsZXg6IDEgMSAwcHg7IH0gfVxuXG4ucm93Lm1lZGl1bS11bnN0YWNrID4gLmNvbHVtbiwgLnJvdy5tZWRpdW0tdW5zdGFjayA+IC5jb2x1bW5zIHtcbiAgZmxleDogMCAwIDEwMCU7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAucm93Lm1lZGl1bS11bnN0YWNrID4gLmNvbHVtbiwgLnJvdy5tZWRpdW0tdW5zdGFjayA+IC5jb2x1bW5zIHtcbiAgICAgIGZsZXg6IDEgMSAwcHg7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAubWVkaXVtLWNvbGxhcHNlID4gLmNvbHVtbiwgLm1lZGl1bS1jb2xsYXBzZSA+IC5jb2x1bW5zIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIHBhZGRpbmctbGVmdDogMDsgfVxuICAubWVkaXVtLXVuY29sbGFwc2UgPiAuY29sdW1uLCAubWVkaXVtLXVuY29sbGFwc2UgPiAuY29sdW1ucyB7XG4gICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmxhcmdlLTEge1xuICAgIGZsZXg6IDAgMCA4LjMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDguMzMzMzMlOyB9XG4gIC5sYXJnZS1vZmZzZXQtMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDAlOyB9XG4gIC5sYXJnZS0yIHtcbiAgICBmbGV4OiAwIDAgMTYuNjY2NjclO1xuICAgIG1heC13aWR0aDogMTYuNjY2NjclOyB9XG4gIC5sYXJnZS1vZmZzZXQtMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDguMzMzMzMlOyB9XG4gIC5sYXJnZS0zIHtcbiAgICBmbGV4OiAwIDAgMjUlO1xuICAgIG1heC13aWR0aDogMjUlOyB9XG4gIC5sYXJnZS1vZmZzZXQtMiB7XG4gICAgbWFyZ2luLWxlZnQ6IDE2LjY2NjY3JTsgfVxuICAubGFyZ2UtNCB7XG4gICAgZmxleDogMCAwIDMzLjMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAubGFyZ2Utb2Zmc2V0LTMge1xuICAgIG1hcmdpbi1sZWZ0OiAyNSU7IH1cbiAgLmxhcmdlLTUge1xuICAgIGZsZXg6IDAgMCA0MS42NjY2NyU7XG4gICAgbWF4LXdpZHRoOiA0MS42NjY2NyU7IH1cbiAgLmxhcmdlLW9mZnNldC00IHtcbiAgICBtYXJnaW4tbGVmdDogMzMuMzMzMzMlOyB9XG4gIC5sYXJnZS02IHtcbiAgICBmbGV4OiAwIDAgNTAlO1xuICAgIG1heC13aWR0aDogNTAlOyB9XG4gIC5sYXJnZS1vZmZzZXQtNSB7XG4gICAgbWFyZ2luLWxlZnQ6IDQxLjY2NjY3JTsgfVxuICAubGFyZ2UtNyB7XG4gICAgZmxleDogMCAwIDU4LjMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDU4LjMzMzMzJTsgfVxuICAubGFyZ2Utb2Zmc2V0LTYge1xuICAgIG1hcmdpbi1sZWZ0OiA1MCU7IH1cbiAgLmxhcmdlLTgge1xuICAgIGZsZXg6IDAgMCA2Ni42NjY2NyU7XG4gICAgbWF4LXdpZHRoOiA2Ni42NjY2NyU7IH1cbiAgLmxhcmdlLW9mZnNldC03IHtcbiAgICBtYXJnaW4tbGVmdDogNTguMzMzMzMlOyB9XG4gIC5sYXJnZS05IHtcbiAgICBmbGV4OiAwIDAgNzUlO1xuICAgIG1heC13aWR0aDogNzUlOyB9XG4gIC5sYXJnZS1vZmZzZXQtOCB7XG4gICAgbWFyZ2luLWxlZnQ6IDY2LjY2NjY3JTsgfVxuICAubGFyZ2UtMTAge1xuICAgIGZsZXg6IDAgMCA4My4zMzMzMyU7XG4gICAgbWF4LXdpZHRoOiA4My4zMzMzMyU7IH1cbiAgLmxhcmdlLW9mZnNldC05IHtcbiAgICBtYXJnaW4tbGVmdDogNzUlOyB9XG4gIC5sYXJnZS0xMSB7XG4gICAgZmxleDogMCAwIDkxLjY2NjY3JTtcbiAgICBtYXgtd2lkdGg6IDkxLjY2NjY3JTsgfVxuICAubGFyZ2Utb2Zmc2V0LTEwIHtcbiAgICBtYXJnaW4tbGVmdDogODMuMzMzMzMlOyB9XG4gIC5sYXJnZS0xMiB7XG4gICAgZmxleDogMCAwIDEwMCU7XG4gICAgbWF4LXdpZHRoOiAxMDAlOyB9XG4gIC5sYXJnZS1vZmZzZXQtMTEge1xuICAgIG1hcmdpbi1sZWZ0OiA5MS42NjY2NyU7IH1cbiAgLmxhcmdlLXVwLTEge1xuICAgIGZsZXgtd3JhcDogd3JhcDsgfVxuICAgIC5sYXJnZS11cC0xID4gLmNvbHVtbiwgLmxhcmdlLXVwLTEgPiAuY29sdW1ucyB7XG4gICAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICAgIG1heC13aWR0aDogMTAwJTsgfVxuICAubGFyZ2UtdXAtMiB7XG4gICAgZmxleC13cmFwOiB3cmFwOyB9XG4gICAgLmxhcmdlLXVwLTIgPiAuY29sdW1uLCAubGFyZ2UtdXAtMiA+IC5jb2x1bW5zIHtcbiAgICAgIGZsZXg6IDAgMCA1MCU7XG4gICAgICBtYXgtd2lkdGg6IDUwJTsgfVxuICAubGFyZ2UtdXAtMyB7XG4gICAgZmxleC13cmFwOiB3cmFwOyB9XG4gICAgLmxhcmdlLXVwLTMgPiAuY29sdW1uLCAubGFyZ2UtdXAtMyA+IC5jb2x1bW5zIHtcbiAgICAgIGZsZXg6IDAgMCAzMy4zMzMzMyU7XG4gICAgICBtYXgtd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAubGFyZ2UtdXAtNCB7XG4gICAgZmxleC13cmFwOiB3cmFwOyB9XG4gICAgLmxhcmdlLXVwLTQgPiAuY29sdW1uLCAubGFyZ2UtdXAtNCA+IC5jb2x1bW5zIHtcbiAgICAgIGZsZXg6IDAgMCAyNSU7XG4gICAgICBtYXgtd2lkdGg6IDI1JTsgfVxuICAubGFyZ2UtdXAtNSB7XG4gICAgZmxleC13cmFwOiB3cmFwOyB9XG4gICAgLmxhcmdlLXVwLTUgPiAuY29sdW1uLCAubGFyZ2UtdXAtNSA+IC5jb2x1bW5zIHtcbiAgICAgIGZsZXg6IDAgMCAyMCU7XG4gICAgICBtYXgtd2lkdGg6IDIwJTsgfVxuICAubGFyZ2UtdXAtNiB7XG4gICAgZmxleC13cmFwOiB3cmFwOyB9XG4gICAgLmxhcmdlLXVwLTYgPiAuY29sdW1uLCAubGFyZ2UtdXAtNiA+IC5jb2x1bW5zIHtcbiAgICAgIGZsZXg6IDAgMCAxNi42NjY2NyU7XG4gICAgICBtYXgtd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAubGFyZ2UtdXAtNyB7XG4gICAgZmxleC13cmFwOiB3cmFwOyB9XG4gICAgLmxhcmdlLXVwLTcgPiAuY29sdW1uLCAubGFyZ2UtdXAtNyA+IC5jb2x1bW5zIHtcbiAgICAgIGZsZXg6IDAgMCAxNC4yODU3MSU7XG4gICAgICBtYXgtd2lkdGg6IDE0LjI4NTcxJTsgfVxuICAubGFyZ2UtdXAtOCB7XG4gICAgZmxleC13cmFwOiB3cmFwOyB9XG4gICAgLmxhcmdlLXVwLTggPiAuY29sdW1uLCAubGFyZ2UtdXAtOCA+IC5jb2x1bW5zIHtcbiAgICAgIGZsZXg6IDAgMCAxMi41JTtcbiAgICAgIG1heC13aWR0aDogMTIuNSU7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmxhcmdlLWV4cGFuZCB7XG4gICAgZmxleDogMSAxIDBweDsgfSB9XG5cbi5yb3cubGFyZ2UtdW5zdGFjayA+IC5jb2x1bW4sIC5yb3cubGFyZ2UtdW5zdGFjayA+IC5jb2x1bW5zIHtcbiAgZmxleDogMCAwIDEwMCU7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAucm93LmxhcmdlLXVuc3RhY2sgPiAuY29sdW1uLCAucm93LmxhcmdlLXVuc3RhY2sgPiAuY29sdW1ucyB7XG4gICAgICBmbGV4OiAxIDEgMHB4OyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmxhcmdlLWNvbGxhcHNlID4gLmNvbHVtbiwgLmxhcmdlLWNvbGxhcHNlID4gLmNvbHVtbnMge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAwOyB9XG4gIC5sYXJnZS11bmNvbGxhcHNlID4gLmNvbHVtbiwgLmxhcmdlLXVuY29sbGFwc2UgPiAuY29sdW1ucyB7XG4gICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cblxuLnNocmluayB7XG4gIGZsZXg6IDAgMCBhdXRvO1xuICBtYXgtd2lkdGg6IDEwMCU7IH1cblxuLmNvbHVtbi1ibG9jayB7XG4gIG1hcmdpbi1ib3R0b206IDEuMjVyZW07IH1cbiAgLmNvbHVtbi1ibG9jayA+IDpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmNvbHVtbi1ibG9jayB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxLjg3NXJlbTsgfVxuICAgICAgLmNvbHVtbi1ibG9jayA+IDpsYXN0LWNoaWxkIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfSB9XG5cbmRpdixcbmRsLFxuZHQsXG5kZCxcbnVsLFxub2wsXG5saSxcbmgxLFxuaDIsXG5oMyxcbmg0LFxuaDUsXG5oNixcbnByZSxcbmZvcm0sXG5wLFxuYmxvY2txdW90ZSxcbnRoLFxudGQge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7IH1cblxucCB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eTsgfVxuXG5lbSxcbmkge1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0OyB9XG5cbnN0cm9uZyxcbmIge1xuICBmb250LXdlaWdodDogNzAwO1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDsgfVxuXG5zbWFsbCB7XG4gIGZvbnQtc2l6ZTogODAlO1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDsgfVxuXG5oMSwgLmgxLFxuaDIsIC5oMixcbmgzLCAuaDMsXG5oNCwgLmg0LFxuaDUsIC5oNSxcbmg2LCAuaDYge1xuICBmb250LWZhbWlseTogYWt0aXYtZ3JvdGVzaywgc2Fucy1zZXJpZjtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogNTAwO1xuICBjb2xvcjogaW5oZXJpdDtcbiAgdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eTsgfVxuICBoMSBzbWFsbCwgLmgxIHNtYWxsLFxuICBoMiBzbWFsbCwgLmgyIHNtYWxsLFxuICBoMyBzbWFsbCwgLmgzIHNtYWxsLFxuICBoNCBzbWFsbCwgLmg0IHNtYWxsLFxuICBoNSBzbWFsbCwgLmg1IHNtYWxsLFxuICBoNiBzbWFsbCwgLmg2IHNtYWxsIHtcbiAgICBsaW5lLWhlaWdodDogMDtcbiAgICBjb2xvcjogI2NhY2FjYTsgfVxuXG5oMSwgLmgxIHtcbiAgZm9udC1zaXplOiAxLjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjI7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTsgfVxuXG5oMiwgLmgyIHtcbiAgZm9udC1zaXplOiAxLjI1cmVtO1xuICBsaW5lLWhlaWdodDogMS4yO1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07IH1cblxuaDMsIC5oMyB7XG4gIGZvbnQtc2l6ZTogMS4xODc1cmVtO1xuICBsaW5lLWhlaWdodDogMS4yO1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07IH1cblxuaDQsIC5oNCB7XG4gIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjI7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTsgfVxuXG5oNSwgLmg1IHtcbiAgZm9udC1zaXplOiAxLjA2MjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjI7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTsgfVxuXG5oNiwgLmg2IHtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBsaW5lLWhlaWdodDogMS4yO1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgaDEsIC5oMSB7XG4gICAgZm9udC1zaXplOiAzcmVtOyB9XG4gIGgyLCAuaDIge1xuICAgIGZvbnQtc2l6ZTogMi4xMjVyZW07IH1cbiAgaDMsIC5oMyB7XG4gICAgZm9udC1zaXplOiAxLjc1cmVtOyB9XG4gIGg0LCAuaDQge1xuICAgIGZvbnQtc2l6ZTogMS42MjVyZW07IH1cbiAgaDUsIC5oNSB7XG4gICAgZm9udC1zaXplOiAxLjI1cmVtOyB9XG4gIGg2LCAuaDYge1xuICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07IH0gfVxuXG5hIHtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gIGNvbG9yOiAjNjgwMGQyO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGN1cnNvcjogcG9pbnRlcjsgfVxuICBhOmhvdmVyLCBhOmZvY3VzIHtcbiAgICBjb2xvcjogIzU5MDBiNTsgfVxuICBhIGltZyB7XG4gICAgYm9yZGVyOiAwOyB9XG5cbmhyIHtcbiAgY2xlYXI6IGJvdGg7XG4gIG1heC13aWR0aDogNzVyZW07XG4gIGhlaWdodDogMDtcbiAgbWFyZ2luOiAxLjI1cmVtIGF1dG87XG4gIGJvcmRlci10b3A6IDA7XG4gIGJvcmRlci1yaWdodDogMDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNjYWNhY2E7XG4gIGJvcmRlci1sZWZ0OiAwOyB9XG5cbnVsLFxub2wsXG5kbCB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGxpc3Qtc3R5bGUtcG9zaXRpb246IG91dHNpZGU7XG4gIGxpbmUtaGVpZ2h0OiAxLjY7IH1cblxubGkge1xuICBmb250LXNpemU6IGluaGVyaXQ7IH1cblxudWwge1xuICBtYXJnaW4tbGVmdDogMS4yNXJlbTtcbiAgbGlzdC1zdHlsZS10eXBlOiBkaXNjOyB9XG5cbm9sIHtcbiAgbWFyZ2luLWxlZnQ6IDEuMjVyZW07IH1cblxudWwgdWwsIG9sIHVsLCB1bCBvbCwgb2wgb2wge1xuICBtYXJnaW4tbGVmdDogMS4yNXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG5kbCB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07IH1cbiAgZGwgZHQge1xuICAgIG1hcmdpbi1ib3R0b206IDAuM3JlbTtcbiAgICBmb250LXdlaWdodDogNzAwOyB9XG5cbmJsb2NrcXVvdGUge1xuICBtYXJnaW46IDAgMCAxcmVtO1xuICBwYWRkaW5nOiAwLjU2MjVyZW0gMS4yNXJlbSAwIDEuMTg3NXJlbTtcbiAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjY2FjYWNhOyB9XG4gIGJsb2NrcXVvdGUsIGJsb2NrcXVvdGUgcCB7XG4gICAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgICBjb2xvcjogIzhhOGE4YTsgfVxuXG5jaXRlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtc2l6ZTogMC44MTI1cmVtO1xuICBjb2xvcjogIzhhOGE4YTsgfVxuICBjaXRlOmJlZm9yZSB7XG4gICAgY29udGVudDogXCLigJQgXCI7IH1cblxuYWJiciwgYWJiclt0aXRsZV0ge1xuICBib3JkZXItYm90dG9tOiAxcHggZG90dGVkICMwYTBhMGE7XG4gIGN1cnNvcjogaGVscDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG5cbmZpZ3VyZSB7XG4gIG1hcmdpbjogMDsgfVxuXG5jb2RlIHtcbiAgcGFkZGluZzogMC4xMjVyZW0gMC4zMTI1cmVtIDAuMDYyNXJlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgI2NhY2FjYTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2YyZjJmMjtcbiAgZm9udC1mYW1pbHk6IENvbnNvbGFzLCBcIkxpYmVyYXRpb24gTW9ub1wiLCBDb3VyaWVyLCBtb25vc3BhY2U7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGNvbG9yOiAjMGEwYTBhOyB9XG5cbmtiZCB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMC4xMjVyZW0gMC4yNXJlbSAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjJmMmYyO1xuICBmb250LWZhbWlseTogQ29uc29sYXMsIFwiTGliZXJhdGlvbiBNb25vXCIsIENvdXJpZXIsIG1vbm9zcGFjZTtcbiAgY29sb3I6ICMwYTBhMGE7XG4gIGJvcmRlci1yYWRpdXM6IDEuMjVyZW07IH1cblxuLnN1YmhlYWRlciB7XG4gIG1hcmdpbi10b3A6IDAuMnJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xuICBmb250LXdlaWdodDogNDAwO1xuICBsaW5lLWhlaWdodDogMS40O1xuICBjb2xvcjogIzhhOGE4YTsgfVxuXG4ubGVhZCB7XG4gIGZvbnQtc2l6ZTogMTI1JTtcbiAgbGluZS1oZWlnaHQ6IDEuNjsgfVxuXG4uc3RhdCB7XG4gIGZvbnQtc2l6ZTogMi41cmVtO1xuICBsaW5lLWhlaWdodDogMTsgfVxuICBwICsgLnN0YXQge1xuICAgIG1hcmdpbi10b3A6IC0xcmVtOyB9XG5cbnVsLm5vLWJ1bGxldCwgb2wubm8tYnVsbGV0IHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7IH1cblxuLnRleHQtbGVmdCB7XG4gIHRleHQtYWxpZ246IGxlZnQ7IH1cblxuLnRleHQtcmlnaHQge1xuICB0ZXh0LWFsaWduOiByaWdodDsgfVxuXG4udGV4dC1jZW50ZXIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cblxuLnRleHQtanVzdGlmeSB7XG4gIHRleHQtYWxpZ246IGp1c3RpZnk7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLm1lZGl1bS10ZXh0LWxlZnQge1xuICAgIHRleHQtYWxpZ246IGxlZnQ7IH1cbiAgLm1lZGl1bS10ZXh0LXJpZ2h0IHtcbiAgICB0ZXh0LWFsaWduOiByaWdodDsgfVxuICAubWVkaXVtLXRleHQtY2VudGVyIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgLm1lZGl1bS10ZXh0LWp1c3RpZnkge1xuICAgIHRleHQtYWxpZ246IGp1c3RpZnk7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubGFyZ2UtdGV4dC1sZWZ0IHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG4gIC5sYXJnZS10ZXh0LXJpZ2h0IHtcbiAgICB0ZXh0LWFsaWduOiByaWdodDsgfVxuICAubGFyZ2UtdGV4dC1jZW50ZXIge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAubGFyZ2UtdGV4dC1qdXN0aWZ5IHtcbiAgICB0ZXh0LWFsaWduOiBqdXN0aWZ5OyB9IH1cblxuLnNob3ctZm9yLXByaW50IHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG5cbkBtZWRpYSBwcmludCB7XG4gICoge1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiBibGFjayAhaW1wb3J0YW50O1xuICAgIHRleHQtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7IH1cbiAgLnNob3ctZm9yLXByaW50IHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50OyB9XG4gIC5oaWRlLWZvci1wcmludCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG4gIHRhYmxlLnNob3ctZm9yLXByaW50IHtcbiAgICBkaXNwbGF5OiB0YWJsZSAhaW1wb3J0YW50OyB9XG4gIHRoZWFkLnNob3ctZm9yLXByaW50IHtcbiAgICBkaXNwbGF5OiB0YWJsZS1oZWFkZXItZ3JvdXAgIWltcG9ydGFudDsgfVxuICB0Ym9keS5zaG93LWZvci1wcmludCB7XG4gICAgZGlzcGxheTogdGFibGUtcm93LWdyb3VwICFpbXBvcnRhbnQ7IH1cbiAgdHIuc2hvdy1mb3ItcHJpbnQge1xuICAgIGRpc3BsYXk6IHRhYmxlLXJvdyAhaW1wb3J0YW50OyB9XG4gIHRkLnNob3ctZm9yLXByaW50IHtcbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsICFpbXBvcnRhbnQ7IH1cbiAgdGguc2hvdy1mb3ItcHJpbnQge1xuICAgIGRpc3BsYXk6IHRhYmxlLWNlbGwgIWltcG9ydGFudDsgfVxuICBhLFxuICBhOnZpc2l0ZWQge1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyB9XG4gIGFbaHJlZl06YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiIChcIiBhdHRyKGhyZWYpIFwiKVwiOyB9XG4gIC5pciBhOmFmdGVyLFxuICBhW2hyZWZePSdqYXZhc2NyaXB0OiddOmFmdGVyLFxuICBhW2hyZWZePScjJ106YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnOyB9XG4gIGFiYnJbdGl0bGVdOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIiAoXCIgYXR0cih0aXRsZSkgXCIpXCI7IH1cbiAgcHJlLFxuICBibG9ja3F1b3RlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjOGE4YThhO1xuICAgIHBhZ2UtYnJlYWstaW5zaWRlOiBhdm9pZDsgfVxuICB0aGVhZCB7XG4gICAgZGlzcGxheTogdGFibGUtaGVhZGVyLWdyb3VwOyB9XG4gIHRyLFxuICBpbWcge1xuICAgIHBhZ2UtYnJlYWstaW5zaWRlOiBhdm9pZDsgfVxuICBpbWcge1xuICAgIG1heC13aWR0aDogMTAwJSAhaW1wb3J0YW50OyB9XG4gIEBwYWdlIHtcbiAgICBtYXJnaW46IDAuNWNtOyB9XG4gIHAsXG4gIGgyLFxuICBoMyB7XG4gICAgb3JwaGFuczogMztcbiAgICB3aWRvd3M6IDM7IH1cbiAgaDIsXG4gIGgzIHtcbiAgICBwYWdlLWJyZWFrLWFmdGVyOiBhdm9pZDsgfVxuICAucHJpbnQtYnJlYWstaW5zaWRlIHtcbiAgICBwYWdlLWJyZWFrLWluc2lkZTogYXV0bzsgfSB9XG5cbi5idXR0b24sIC53cC1ibG9jay1idXR0b24gLndwLWJsb2NrLWJ1dHRvbl9fbGluaywgc2VjdGlvbi5wcm9tby1saXN0aW5nLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLCBzZWN0aW9uLnByb21vLWxpc3RpbmctMi5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgbWFyZ2luOiAwIDAgMXJlbSAwO1xuICBwYWRkaW5nOiAwLjVyZW0gMS44NzVyZW0gMC42MjVyZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmFkaXVzOiAxLjI1cmVtO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMjVzIGVhc2Utb3V0LCBjb2xvciAwLjI1cyBlYXNlLW91dDtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIGZvbnQtc2l6ZTogMC45cmVtO1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzY4MDBkMjtcbiAgY29sb3I6ICNmZWZlZmU7IH1cbiAgW2RhdGEtd2hhdGlucHV0PSdtb3VzZSddIC5idXR0b24sIFtkYXRhLXdoYXRpbnB1dD0nbW91c2UnXSAud3AtYmxvY2stYnV0dG9uIC53cC1ibG9jay1idXR0b25fX2xpbmssIC53cC1ibG9jay1idXR0b24gW2RhdGEtd2hhdGlucHV0PSdtb3VzZSddIC53cC1ibG9jay1idXR0b25fX2xpbmssIFtkYXRhLXdoYXRpbnB1dD0nbW91c2UnXSBzZWN0aW9uLnByb21vLWxpc3RpbmcuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEsIHNlY3Rpb24ucHJvbW8tbGlzdGluZy5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgW2RhdGEtd2hhdGlucHV0PSdtb3VzZSddIGEsIFtkYXRhLXdoYXRpbnB1dD0nbW91c2UnXSBzZWN0aW9uLnByb21vLWxpc3RpbmctMi5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYSwgc2VjdGlvbi5wcm9tby1saXN0aW5nLTIuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIFtkYXRhLXdoYXRpbnB1dD0nbW91c2UnXSBhIHtcbiAgICBvdXRsaW5lOiAwOyB9XG4gIC5idXR0b246aG92ZXIsIC53cC1ibG9jay1idXR0b24gLndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3Zlciwgc2VjdGlvbi5wcm9tby1saXN0aW5nLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhOmhvdmVyLCBzZWN0aW9uLnByb21vLWxpc3RpbmctMi5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYTpob3ZlciwgLmJ1dHRvbjpmb2N1cywgLndwLWJsb2NrLWJ1dHRvbiAud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzLCBzZWN0aW9uLnByb21vLWxpc3RpbmcuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGE6Zm9jdXMsIHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNTgwMGIzO1xuICAgIGNvbG9yOiAjZmVmZWZlOyB9XG4gIC5idXR0b24udGlueSwgLndwLWJsb2NrLWJ1dHRvbiAudGlueS53cC1ibG9jay1idXR0b25fX2xpbmssIHNlY3Rpb24ucHJvbW8tbGlzdGluZy5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS50aW55LCBzZWN0aW9uLnByb21vLWxpc3RpbmctMi5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS50aW55IHtcbiAgICBmb250LXNpemU6IDAuNnJlbTsgfVxuICAuYnV0dG9uLnNtYWxsLCAud3AtYmxvY2stYnV0dG9uIC5zbWFsbC53cC1ibG9jay1idXR0b25fX2xpbmssIHNlY3Rpb24ucHJvbW8tbGlzdGluZy5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5zbWFsbCwgc2VjdGlvbi5wcm9tby1saXN0aW5nLTIuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEuc21hbGwge1xuICAgIGZvbnQtc2l6ZTogMC43NXJlbTsgfVxuICAuYnV0dG9uLmxhcmdlLCAud3AtYmxvY2stYnV0dG9uIC5sYXJnZS53cC1ibG9jay1idXR0b25fX2xpbmssIHNlY3Rpb24ucHJvbW8tbGlzdGluZy5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5sYXJnZSwgc2VjdGlvbi5wcm9tby1saXN0aW5nLTIuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEubGFyZ2Uge1xuICAgIGZvbnQtc2l6ZTogMS4yNXJlbTsgfVxuICAuYnV0dG9uLmV4cGFuZGVkLCAud3AtYmxvY2stYnV0dG9uIC5leHBhbmRlZC53cC1ibG9jay1idXR0b25fX2xpbmssIHNlY3Rpb24ucHJvbW8tbGlzdGluZy5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5leHBhbmRlZCwgc2VjdGlvbi5wcm9tby1saXN0aW5nLTIuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEuZXhwYW5kZWQge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDsgfVxuICAuYnV0dG9uLnByaW1hcnksIC53cC1ibG9jay1idXR0b24gLnByaW1hcnkud3AtYmxvY2stYnV0dG9uX19saW5rLCBzZWN0aW9uLnByb21vLWxpc3RpbmcuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEucHJpbWFyeSwgc2VjdGlvbi5wcm9tby1saXN0aW5nLTIuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEucHJpbWFyeSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzY4MDBkMjtcbiAgICBjb2xvcjogI2ZlZmVmZTsgfVxuICAgIC5idXR0b24ucHJpbWFyeTpob3ZlciwgLndwLWJsb2NrLWJ1dHRvbiAucHJpbWFyeS53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIsIHNlY3Rpb24ucHJvbW8tbGlzdGluZy5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5wcmltYXJ5OmhvdmVyLCBzZWN0aW9uLnByb21vLWxpc3RpbmctMi5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5wcmltYXJ5OmhvdmVyLCAuYnV0dG9uLnByaW1hcnk6Zm9jdXMsIC53cC1ibG9jay1idXR0b24gLnByaW1hcnkud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzLCBzZWN0aW9uLnByb21vLWxpc3RpbmcuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEucHJpbWFyeTpmb2N1cywgc2VjdGlvbi5wcm9tby1saXN0aW5nLTIuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEucHJpbWFyeTpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNTMwMGE4O1xuICAgICAgY29sb3I6ICNmZWZlZmU7IH1cbiAgLmJ1dHRvbi5zZWNvbmRhcnksIC53cC1ibG9jay1idXR0b24gLnNlY29uZGFyeS53cC1ibG9jay1idXR0b25fX2xpbmssIHNlY3Rpb24ucHJvbW8tbGlzdGluZy5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5zZWNvbmRhcnksIHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLnNlY29uZGFyeSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZiZTIwMDtcbiAgICBjb2xvcjogIzBhMGEwYTsgfVxuICAgIC5idXR0b24uc2Vjb25kYXJ5OmhvdmVyLCAud3AtYmxvY2stYnV0dG9uIC5zZWNvbmRhcnkud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLCBzZWN0aW9uLnByb21vLWxpc3RpbmcuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEuc2Vjb25kYXJ5OmhvdmVyLCBzZWN0aW9uLnByb21vLWxpc3RpbmctMi5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5zZWNvbmRhcnk6aG92ZXIsIC5idXR0b24uc2Vjb25kYXJ5OmZvY3VzLCAud3AtYmxvY2stYnV0dG9uIC5zZWNvbmRhcnkud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzLCBzZWN0aW9uLnByb21vLWxpc3RpbmcuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEuc2Vjb25kYXJ5OmZvY3VzLCBzZWN0aW9uLnByb21vLWxpc3RpbmctMi5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5zZWNvbmRhcnk6Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2M5YjUwMDtcbiAgICAgIGNvbG9yOiAjMGEwYTBhOyB9XG4gIC5idXR0b24uc3VjY2VzcywgLndwLWJsb2NrLWJ1dHRvbiAuc3VjY2Vzcy53cC1ibG9jay1idXR0b25fX2xpbmssIHNlY3Rpb24ucHJvbW8tbGlzdGluZy5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5zdWNjZXNzLCBzZWN0aW9uLnByb21vLWxpc3RpbmctMi5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5zdWNjZXNzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjM2FkYjc2O1xuICAgIGNvbG9yOiAjMGEwYTBhOyB9XG4gICAgLmJ1dHRvbi5zdWNjZXNzOmhvdmVyLCAud3AtYmxvY2stYnV0dG9uIC5zdWNjZXNzLndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3Zlciwgc2VjdGlvbi5wcm9tby1saXN0aW5nLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLnN1Y2Nlc3M6aG92ZXIsIHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLnN1Y2Nlc3M6aG92ZXIsIC5idXR0b24uc3VjY2Vzczpmb2N1cywgLndwLWJsb2NrLWJ1dHRvbiAuc3VjY2Vzcy53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXMsIHNlY3Rpb24ucHJvbW8tbGlzdGluZy5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5zdWNjZXNzOmZvY3VzLCBzZWN0aW9uLnByb21vLWxpc3RpbmctMi5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5zdWNjZXNzOmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMyMmJiNWI7XG4gICAgICBjb2xvcjogIzBhMGEwYTsgfVxuICAuYnV0dG9uLndhcm5pbmcsIC53cC1ibG9jay1idXR0b24gLndhcm5pbmcud3AtYmxvY2stYnV0dG9uX19saW5rLCBzZWN0aW9uLnByb21vLWxpc3RpbmcuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEud2FybmluZywgc2VjdGlvbi5wcm9tby1saXN0aW5nLTIuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEud2FybmluZyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmYWUwMDtcbiAgICBjb2xvcjogIzBhMGEwYTsgfVxuICAgIC5idXR0b24ud2FybmluZzpob3ZlciwgLndwLWJsb2NrLWJ1dHRvbiAud2FybmluZy53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIsIHNlY3Rpb24ucHJvbW8tbGlzdGluZy5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS53YXJuaW5nOmhvdmVyLCBzZWN0aW9uLnByb21vLWxpc3RpbmctMi5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS53YXJuaW5nOmhvdmVyLCAuYnV0dG9uLndhcm5pbmc6Zm9jdXMsIC53cC1ibG9jay1idXR0b24gLndhcm5pbmcud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzLCBzZWN0aW9uLnByb21vLWxpc3RpbmcuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEud2FybmluZzpmb2N1cywgc2VjdGlvbi5wcm9tby1saXN0aW5nLTIuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEud2FybmluZzpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2M4YjAwO1xuICAgICAgY29sb3I6ICMwYTBhMGE7IH1cbiAgLmJ1dHRvbi5hbGVydCwgLndwLWJsb2NrLWJ1dHRvbiAuYWxlcnQud3AtYmxvY2stYnV0dG9uX19saW5rLCBzZWN0aW9uLnByb21vLWxpc3RpbmcuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEuYWxlcnQsIHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLmFsZXJ0IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2M0YjM3O1xuICAgIGNvbG9yOiAjZmVmZWZlOyB9XG4gICAgLmJ1dHRvbi5hbGVydDpob3ZlciwgLndwLWJsb2NrLWJ1dHRvbiAuYWxlcnQud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLCBzZWN0aW9uLnByb21vLWxpc3RpbmcuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEuYWxlcnQ6aG92ZXIsIHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLmFsZXJ0OmhvdmVyLCAuYnV0dG9uLmFsZXJ0OmZvY3VzLCAud3AtYmxvY2stYnV0dG9uIC5hbGVydC53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXMsIHNlY3Rpb24ucHJvbW8tbGlzdGluZy5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5hbGVydDpmb2N1cywgc2VjdGlvbi5wcm9tby1saXN0aW5nLTIuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEuYWxlcnQ6Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2E1M2IyYTtcbiAgICAgIGNvbG9yOiAjZmVmZWZlOyB9XG4gIC5idXR0b24uZGlzYWJsZWQsIC53cC1ibG9jay1idXR0b24gLmRpc2FibGVkLndwLWJsb2NrLWJ1dHRvbl9fbGluaywgc2VjdGlvbi5wcm9tby1saXN0aW5nLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLmRpc2FibGVkLCBzZWN0aW9uLnByb21vLWxpc3RpbmctMi5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5kaXNhYmxlZCwgLmJ1dHRvbltkaXNhYmxlZF0sIC53cC1ibG9jay1idXR0b24gLndwLWJsb2NrLWJ1dHRvbl9fbGlua1tkaXNhYmxlZF0sIHNlY3Rpb24ucHJvbW8tbGlzdGluZy5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYVtkaXNhYmxlZF0sIHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhW2Rpc2FibGVkXSB7XG4gICAgb3BhY2l0eTogMC4yNTtcbiAgICBjdXJzb3I6IG5vdC1hbGxvd2VkOyB9XG4gICAgLmJ1dHRvbi5kaXNhYmxlZCwgLndwLWJsb2NrLWJ1dHRvbiAuZGlzYWJsZWQud3AtYmxvY2stYnV0dG9uX19saW5rLCBzZWN0aW9uLnByb21vLWxpc3RpbmcuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEuZGlzYWJsZWQsIHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLmRpc2FibGVkLCAuYnV0dG9uLmRpc2FibGVkOmhvdmVyLCAud3AtYmxvY2stYnV0dG9uIC5kaXNhYmxlZC53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIsIHNlY3Rpb24ucHJvbW8tbGlzdGluZy5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5kaXNhYmxlZDpob3Zlciwgc2VjdGlvbi5wcm9tby1saXN0aW5nLTIuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEuZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24uZGlzYWJsZWQ6Zm9jdXMsIC53cC1ibG9jay1idXR0b24gLmRpc2FibGVkLndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1cywgc2VjdGlvbi5wcm9tby1saXN0aW5nLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLmRpc2FibGVkOmZvY3VzLCBzZWN0aW9uLnByb21vLWxpc3RpbmctMi5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbltkaXNhYmxlZF0sIC53cC1ibG9jay1idXR0b24gLndwLWJsb2NrLWJ1dHRvbl9fbGlua1tkaXNhYmxlZF0sIHNlY3Rpb24ucHJvbW8tbGlzdGluZy5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYVtkaXNhYmxlZF0sIHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhW2Rpc2FibGVkXSwgLmJ1dHRvbltkaXNhYmxlZF06aG92ZXIsIC53cC1ibG9jay1idXR0b24gLndwLWJsb2NrLWJ1dHRvbl9fbGlua1tkaXNhYmxlZF06aG92ZXIsIHNlY3Rpb24ucHJvbW8tbGlzdGluZy5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYVtkaXNhYmxlZF06aG92ZXIsIHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhW2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbltkaXNhYmxlZF06Zm9jdXMsIC53cC1ibG9jay1idXR0b24gLndwLWJsb2NrLWJ1dHRvbl9fbGlua1tkaXNhYmxlZF06Zm9jdXMsIHNlY3Rpb24ucHJvbW8tbGlzdGluZy5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYVtkaXNhYmxlZF06Zm9jdXMsIHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhW2Rpc2FibGVkXTpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNjgwMGQyO1xuICAgICAgY29sb3I6ICNmZWZlZmU7IH1cbiAgICAuYnV0dG9uLmRpc2FibGVkLnByaW1hcnksIC53cC1ibG9jay1idXR0b24gLmRpc2FibGVkLnByaW1hcnkud3AtYmxvY2stYnV0dG9uX19saW5rLCBzZWN0aW9uLnByb21vLWxpc3RpbmcuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEuZGlzYWJsZWQucHJpbWFyeSwgc2VjdGlvbi5wcm9tby1saXN0aW5nLTIuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEuZGlzYWJsZWQucHJpbWFyeSwgLmJ1dHRvbltkaXNhYmxlZF0ucHJpbWFyeSwgLndwLWJsb2NrLWJ1dHRvbiAud3AtYmxvY2stYnV0dG9uX19saW5rW2Rpc2FibGVkXS5wcmltYXJ5LCBzZWN0aW9uLnByb21vLWxpc3RpbmcuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGFbZGlzYWJsZWRdLnByaW1hcnksIHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhW2Rpc2FibGVkXS5wcmltYXJ5IHtcbiAgICAgIG9wYWNpdHk6IDAuMjU7XG4gICAgICBjdXJzb3I6IG5vdC1hbGxvd2VkOyB9XG4gICAgICAuYnV0dG9uLmRpc2FibGVkLnByaW1hcnksIC53cC1ibG9jay1idXR0b24gLmRpc2FibGVkLnByaW1hcnkud3AtYmxvY2stYnV0dG9uX19saW5rLCBzZWN0aW9uLnByb21vLWxpc3RpbmcuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEuZGlzYWJsZWQucHJpbWFyeSwgc2VjdGlvbi5wcm9tby1saXN0aW5nLTIuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEuZGlzYWJsZWQucHJpbWFyeSwgLmJ1dHRvbi5kaXNhYmxlZC5wcmltYXJ5OmhvdmVyLCAud3AtYmxvY2stYnV0dG9uIC5kaXNhYmxlZC5wcmltYXJ5LndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3Zlciwgc2VjdGlvbi5wcm9tby1saXN0aW5nLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLmRpc2FibGVkLnByaW1hcnk6aG92ZXIsIHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLmRpc2FibGVkLnByaW1hcnk6aG92ZXIsIC5idXR0b24uZGlzYWJsZWQucHJpbWFyeTpmb2N1cywgLndwLWJsb2NrLWJ1dHRvbiAuZGlzYWJsZWQucHJpbWFyeS53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXMsIHNlY3Rpb24ucHJvbW8tbGlzdGluZy5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5kaXNhYmxlZC5wcmltYXJ5OmZvY3VzLCBzZWN0aW9uLnByb21vLWxpc3RpbmctMi5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5kaXNhYmxlZC5wcmltYXJ5OmZvY3VzLCAuYnV0dG9uW2Rpc2FibGVkXS5wcmltYXJ5LCAud3AtYmxvY2stYnV0dG9uIC53cC1ibG9jay1idXR0b25fX2xpbmtbZGlzYWJsZWRdLnByaW1hcnksIHNlY3Rpb24ucHJvbW8tbGlzdGluZy5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYVtkaXNhYmxlZF0ucHJpbWFyeSwgc2VjdGlvbi5wcm9tby1saXN0aW5nLTIuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGFbZGlzYWJsZWRdLnByaW1hcnksIC5idXR0b25bZGlzYWJsZWRdLnByaW1hcnk6aG92ZXIsIC53cC1ibG9jay1idXR0b24gLndwLWJsb2NrLWJ1dHRvbl9fbGlua1tkaXNhYmxlZF0ucHJpbWFyeTpob3Zlciwgc2VjdGlvbi5wcm9tby1saXN0aW5nLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhW2Rpc2FibGVkXS5wcmltYXJ5OmhvdmVyLCBzZWN0aW9uLnByb21vLWxpc3RpbmctMi5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYVtkaXNhYmxlZF0ucHJpbWFyeTpob3ZlciwgLmJ1dHRvbltkaXNhYmxlZF0ucHJpbWFyeTpmb2N1cywgLndwLWJsb2NrLWJ1dHRvbiAud3AtYmxvY2stYnV0dG9uX19saW5rW2Rpc2FibGVkXS5wcmltYXJ5OmZvY3VzLCBzZWN0aW9uLnByb21vLWxpc3RpbmcuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGFbZGlzYWJsZWRdLnByaW1hcnk6Zm9jdXMsIHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhW2Rpc2FibGVkXS5wcmltYXJ5OmZvY3VzIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzY4MDBkMjtcbiAgICAgICAgY29sb3I6ICNmZWZlZmU7IH1cbiAgICAuYnV0dG9uLmRpc2FibGVkLnNlY29uZGFyeSwgLndwLWJsb2NrLWJ1dHRvbiAuZGlzYWJsZWQuc2Vjb25kYXJ5LndwLWJsb2NrLWJ1dHRvbl9fbGluaywgc2VjdGlvbi5wcm9tby1saXN0aW5nLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLmRpc2FibGVkLnNlY29uZGFyeSwgc2VjdGlvbi5wcm9tby1saXN0aW5nLTIuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEuZGlzYWJsZWQuc2Vjb25kYXJ5LCAuYnV0dG9uW2Rpc2FibGVkXS5zZWNvbmRhcnksIC53cC1ibG9jay1idXR0b24gLndwLWJsb2NrLWJ1dHRvbl9fbGlua1tkaXNhYmxlZF0uc2Vjb25kYXJ5LCBzZWN0aW9uLnByb21vLWxpc3RpbmcuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGFbZGlzYWJsZWRdLnNlY29uZGFyeSwgc2VjdGlvbi5wcm9tby1saXN0aW5nLTIuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGFbZGlzYWJsZWRdLnNlY29uZGFyeSB7XG4gICAgICBvcGFjaXR5OiAwLjI1O1xuICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDsgfVxuICAgICAgLmJ1dHRvbi5kaXNhYmxlZC5zZWNvbmRhcnksIC53cC1ibG9jay1idXR0b24gLmRpc2FibGVkLnNlY29uZGFyeS53cC1ibG9jay1idXR0b25fX2xpbmssIHNlY3Rpb24ucHJvbW8tbGlzdGluZy5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5kaXNhYmxlZC5zZWNvbmRhcnksIHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLmRpc2FibGVkLnNlY29uZGFyeSwgLmJ1dHRvbi5kaXNhYmxlZC5zZWNvbmRhcnk6aG92ZXIsIC53cC1ibG9jay1idXR0b24gLmRpc2FibGVkLnNlY29uZGFyeS53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIsIHNlY3Rpb24ucHJvbW8tbGlzdGluZy5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5kaXNhYmxlZC5zZWNvbmRhcnk6aG92ZXIsIHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLmRpc2FibGVkLnNlY29uZGFyeTpob3ZlciwgLmJ1dHRvbi5kaXNhYmxlZC5zZWNvbmRhcnk6Zm9jdXMsIC53cC1ibG9jay1idXR0b24gLmRpc2FibGVkLnNlY29uZGFyeS53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXMsIHNlY3Rpb24ucHJvbW8tbGlzdGluZy5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5kaXNhYmxlZC5zZWNvbmRhcnk6Zm9jdXMsIHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLmRpc2FibGVkLnNlY29uZGFyeTpmb2N1cywgLmJ1dHRvbltkaXNhYmxlZF0uc2Vjb25kYXJ5LCAud3AtYmxvY2stYnV0dG9uIC53cC1ibG9jay1idXR0b25fX2xpbmtbZGlzYWJsZWRdLnNlY29uZGFyeSwgc2VjdGlvbi5wcm9tby1saXN0aW5nLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhW2Rpc2FibGVkXS5zZWNvbmRhcnksIHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhW2Rpc2FibGVkXS5zZWNvbmRhcnksIC5idXR0b25bZGlzYWJsZWRdLnNlY29uZGFyeTpob3ZlciwgLndwLWJsb2NrLWJ1dHRvbiAud3AtYmxvY2stYnV0dG9uX19saW5rW2Rpc2FibGVkXS5zZWNvbmRhcnk6aG92ZXIsIHNlY3Rpb24ucHJvbW8tbGlzdGluZy5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYVtkaXNhYmxlZF0uc2Vjb25kYXJ5OmhvdmVyLCBzZWN0aW9uLnByb21vLWxpc3RpbmctMi5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYVtkaXNhYmxlZF0uc2Vjb25kYXJ5OmhvdmVyLCAuYnV0dG9uW2Rpc2FibGVkXS5zZWNvbmRhcnk6Zm9jdXMsIC53cC1ibG9jay1idXR0b24gLndwLWJsb2NrLWJ1dHRvbl9fbGlua1tkaXNhYmxlZF0uc2Vjb25kYXJ5OmZvY3VzLCBzZWN0aW9uLnByb21vLWxpc3RpbmcuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGFbZGlzYWJsZWRdLnNlY29uZGFyeTpmb2N1cywgc2VjdGlvbi5wcm9tby1saXN0aW5nLTIuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGFbZGlzYWJsZWRdLnNlY29uZGFyeTpmb2N1cyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmYmUyMDA7XG4gICAgICAgIGNvbG9yOiAjMGEwYTBhOyB9XG4gICAgLmJ1dHRvbi5kaXNhYmxlZC5zdWNjZXNzLCAud3AtYmxvY2stYnV0dG9uIC5kaXNhYmxlZC5zdWNjZXNzLndwLWJsb2NrLWJ1dHRvbl9fbGluaywgc2VjdGlvbi5wcm9tby1saXN0aW5nLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLmRpc2FibGVkLnN1Y2Nlc3MsIHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLmRpc2FibGVkLnN1Y2Nlc3MsIC5idXR0b25bZGlzYWJsZWRdLnN1Y2Nlc3MsIC53cC1ibG9jay1idXR0b24gLndwLWJsb2NrLWJ1dHRvbl9fbGlua1tkaXNhYmxlZF0uc3VjY2Vzcywgc2VjdGlvbi5wcm9tby1saXN0aW5nLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhW2Rpc2FibGVkXS5zdWNjZXNzLCBzZWN0aW9uLnByb21vLWxpc3RpbmctMi5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYVtkaXNhYmxlZF0uc3VjY2VzcyB7XG4gICAgICBvcGFjaXR5OiAwLjI1O1xuICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDsgfVxuICAgICAgLmJ1dHRvbi5kaXNhYmxlZC5zdWNjZXNzLCAud3AtYmxvY2stYnV0dG9uIC5kaXNhYmxlZC5zdWNjZXNzLndwLWJsb2NrLWJ1dHRvbl9fbGluaywgc2VjdGlvbi5wcm9tby1saXN0aW5nLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLmRpc2FibGVkLnN1Y2Nlc3MsIHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLmRpc2FibGVkLnN1Y2Nlc3MsIC5idXR0b24uZGlzYWJsZWQuc3VjY2Vzczpob3ZlciwgLndwLWJsb2NrLWJ1dHRvbiAuZGlzYWJsZWQuc3VjY2Vzcy53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIsIHNlY3Rpb24ucHJvbW8tbGlzdGluZy5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5kaXNhYmxlZC5zdWNjZXNzOmhvdmVyLCBzZWN0aW9uLnByb21vLWxpc3RpbmctMi5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5kaXNhYmxlZC5zdWNjZXNzOmhvdmVyLCAuYnV0dG9uLmRpc2FibGVkLnN1Y2Nlc3M6Zm9jdXMsIC53cC1ibG9jay1idXR0b24gLmRpc2FibGVkLnN1Y2Nlc3Mud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzLCBzZWN0aW9uLnByb21vLWxpc3RpbmcuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEuZGlzYWJsZWQuc3VjY2Vzczpmb2N1cywgc2VjdGlvbi5wcm9tby1saXN0aW5nLTIuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEuZGlzYWJsZWQuc3VjY2Vzczpmb2N1cywgLmJ1dHRvbltkaXNhYmxlZF0uc3VjY2VzcywgLndwLWJsb2NrLWJ1dHRvbiAud3AtYmxvY2stYnV0dG9uX19saW5rW2Rpc2FibGVkXS5zdWNjZXNzLCBzZWN0aW9uLnByb21vLWxpc3RpbmcuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGFbZGlzYWJsZWRdLnN1Y2Nlc3MsIHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhW2Rpc2FibGVkXS5zdWNjZXNzLCAuYnV0dG9uW2Rpc2FibGVkXS5zdWNjZXNzOmhvdmVyLCAud3AtYmxvY2stYnV0dG9uIC53cC1ibG9jay1idXR0b25fX2xpbmtbZGlzYWJsZWRdLnN1Y2Nlc3M6aG92ZXIsIHNlY3Rpb24ucHJvbW8tbGlzdGluZy5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYVtkaXNhYmxlZF0uc3VjY2Vzczpob3Zlciwgc2VjdGlvbi5wcm9tby1saXN0aW5nLTIuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGFbZGlzYWJsZWRdLnN1Y2Nlc3M6aG92ZXIsIC5idXR0b25bZGlzYWJsZWRdLnN1Y2Nlc3M6Zm9jdXMsIC53cC1ibG9jay1idXR0b24gLndwLWJsb2NrLWJ1dHRvbl9fbGlua1tkaXNhYmxlZF0uc3VjY2Vzczpmb2N1cywgc2VjdGlvbi5wcm9tby1saXN0aW5nLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhW2Rpc2FibGVkXS5zdWNjZXNzOmZvY3VzLCBzZWN0aW9uLnByb21vLWxpc3RpbmctMi5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYVtkaXNhYmxlZF0uc3VjY2Vzczpmb2N1cyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMzYWRiNzY7XG4gICAgICAgIGNvbG9yOiAjMGEwYTBhOyB9XG4gICAgLmJ1dHRvbi5kaXNhYmxlZC53YXJuaW5nLCAud3AtYmxvY2stYnV0dG9uIC5kaXNhYmxlZC53YXJuaW5nLndwLWJsb2NrLWJ1dHRvbl9fbGluaywgc2VjdGlvbi5wcm9tby1saXN0aW5nLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLmRpc2FibGVkLndhcm5pbmcsIHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLmRpc2FibGVkLndhcm5pbmcsIC5idXR0b25bZGlzYWJsZWRdLndhcm5pbmcsIC53cC1ibG9jay1idXR0b24gLndwLWJsb2NrLWJ1dHRvbl9fbGlua1tkaXNhYmxlZF0ud2FybmluZywgc2VjdGlvbi5wcm9tby1saXN0aW5nLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhW2Rpc2FibGVkXS53YXJuaW5nLCBzZWN0aW9uLnByb21vLWxpc3RpbmctMi5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYVtkaXNhYmxlZF0ud2FybmluZyB7XG4gICAgICBvcGFjaXR5OiAwLjI1O1xuICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDsgfVxuICAgICAgLmJ1dHRvbi5kaXNhYmxlZC53YXJuaW5nLCAud3AtYmxvY2stYnV0dG9uIC5kaXNhYmxlZC53YXJuaW5nLndwLWJsb2NrLWJ1dHRvbl9fbGluaywgc2VjdGlvbi5wcm9tby1saXN0aW5nLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLmRpc2FibGVkLndhcm5pbmcsIHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLmRpc2FibGVkLndhcm5pbmcsIC5idXR0b24uZGlzYWJsZWQud2FybmluZzpob3ZlciwgLndwLWJsb2NrLWJ1dHRvbiAuZGlzYWJsZWQud2FybmluZy53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIsIHNlY3Rpb24ucHJvbW8tbGlzdGluZy5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5kaXNhYmxlZC53YXJuaW5nOmhvdmVyLCBzZWN0aW9uLnByb21vLWxpc3RpbmctMi5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5kaXNhYmxlZC53YXJuaW5nOmhvdmVyLCAuYnV0dG9uLmRpc2FibGVkLndhcm5pbmc6Zm9jdXMsIC53cC1ibG9jay1idXR0b24gLmRpc2FibGVkLndhcm5pbmcud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzLCBzZWN0aW9uLnByb21vLWxpc3RpbmcuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEuZGlzYWJsZWQud2FybmluZzpmb2N1cywgc2VjdGlvbi5wcm9tby1saXN0aW5nLTIuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEuZGlzYWJsZWQud2FybmluZzpmb2N1cywgLmJ1dHRvbltkaXNhYmxlZF0ud2FybmluZywgLndwLWJsb2NrLWJ1dHRvbiAud3AtYmxvY2stYnV0dG9uX19saW5rW2Rpc2FibGVkXS53YXJuaW5nLCBzZWN0aW9uLnByb21vLWxpc3RpbmcuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGFbZGlzYWJsZWRdLndhcm5pbmcsIHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhW2Rpc2FibGVkXS53YXJuaW5nLCAuYnV0dG9uW2Rpc2FibGVkXS53YXJuaW5nOmhvdmVyLCAud3AtYmxvY2stYnV0dG9uIC53cC1ibG9jay1idXR0b25fX2xpbmtbZGlzYWJsZWRdLndhcm5pbmc6aG92ZXIsIHNlY3Rpb24ucHJvbW8tbGlzdGluZy5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYVtkaXNhYmxlZF0ud2FybmluZzpob3Zlciwgc2VjdGlvbi5wcm9tby1saXN0aW5nLTIuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGFbZGlzYWJsZWRdLndhcm5pbmc6aG92ZXIsIC5idXR0b25bZGlzYWJsZWRdLndhcm5pbmc6Zm9jdXMsIC53cC1ibG9jay1idXR0b24gLndwLWJsb2NrLWJ1dHRvbl9fbGlua1tkaXNhYmxlZF0ud2FybmluZzpmb2N1cywgc2VjdGlvbi5wcm9tby1saXN0aW5nLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhW2Rpc2FibGVkXS53YXJuaW5nOmZvY3VzLCBzZWN0aW9uLnByb21vLWxpc3RpbmctMi5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYVtkaXNhYmxlZF0ud2FybmluZzpmb2N1cyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmFlMDA7XG4gICAgICAgIGNvbG9yOiAjMGEwYTBhOyB9XG4gICAgLmJ1dHRvbi5kaXNhYmxlZC5hbGVydCwgLndwLWJsb2NrLWJ1dHRvbiAuZGlzYWJsZWQuYWxlcnQud3AtYmxvY2stYnV0dG9uX19saW5rLCBzZWN0aW9uLnByb21vLWxpc3RpbmcuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEuZGlzYWJsZWQuYWxlcnQsIHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLmRpc2FibGVkLmFsZXJ0LCAuYnV0dG9uW2Rpc2FibGVkXS5hbGVydCwgLndwLWJsb2NrLWJ1dHRvbiAud3AtYmxvY2stYnV0dG9uX19saW5rW2Rpc2FibGVkXS5hbGVydCwgc2VjdGlvbi5wcm9tby1saXN0aW5nLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhW2Rpc2FibGVkXS5hbGVydCwgc2VjdGlvbi5wcm9tby1saXN0aW5nLTIuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGFbZGlzYWJsZWRdLmFsZXJ0IHtcbiAgICAgIG9wYWNpdHk6IDAuMjU7XG4gICAgICBjdXJzb3I6IG5vdC1hbGxvd2VkOyB9XG4gICAgICAuYnV0dG9uLmRpc2FibGVkLmFsZXJ0LCAud3AtYmxvY2stYnV0dG9uIC5kaXNhYmxlZC5hbGVydC53cC1ibG9jay1idXR0b25fX2xpbmssIHNlY3Rpb24ucHJvbW8tbGlzdGluZy5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5kaXNhYmxlZC5hbGVydCwgc2VjdGlvbi5wcm9tby1saXN0aW5nLTIuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEuZGlzYWJsZWQuYWxlcnQsIC5idXR0b24uZGlzYWJsZWQuYWxlcnQ6aG92ZXIsIC53cC1ibG9jay1idXR0b24gLmRpc2FibGVkLmFsZXJ0LndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3Zlciwgc2VjdGlvbi5wcm9tby1saXN0aW5nLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLmRpc2FibGVkLmFsZXJ0OmhvdmVyLCBzZWN0aW9uLnByb21vLWxpc3RpbmctMi5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5kaXNhYmxlZC5hbGVydDpob3ZlciwgLmJ1dHRvbi5kaXNhYmxlZC5hbGVydDpmb2N1cywgLndwLWJsb2NrLWJ1dHRvbiAuZGlzYWJsZWQuYWxlcnQud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzLCBzZWN0aW9uLnByb21vLWxpc3RpbmcuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEuZGlzYWJsZWQuYWxlcnQ6Zm9jdXMsIHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLmRpc2FibGVkLmFsZXJ0OmZvY3VzLCAuYnV0dG9uW2Rpc2FibGVkXS5hbGVydCwgLndwLWJsb2NrLWJ1dHRvbiAud3AtYmxvY2stYnV0dG9uX19saW5rW2Rpc2FibGVkXS5hbGVydCwgc2VjdGlvbi5wcm9tby1saXN0aW5nLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhW2Rpc2FibGVkXS5hbGVydCwgc2VjdGlvbi5wcm9tby1saXN0aW5nLTIuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGFbZGlzYWJsZWRdLmFsZXJ0LCAuYnV0dG9uW2Rpc2FibGVkXS5hbGVydDpob3ZlciwgLndwLWJsb2NrLWJ1dHRvbiAud3AtYmxvY2stYnV0dG9uX19saW5rW2Rpc2FibGVkXS5hbGVydDpob3Zlciwgc2VjdGlvbi5wcm9tby1saXN0aW5nLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhW2Rpc2FibGVkXS5hbGVydDpob3Zlciwgc2VjdGlvbi5wcm9tby1saXN0aW5nLTIuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGFbZGlzYWJsZWRdLmFsZXJ0OmhvdmVyLCAuYnV0dG9uW2Rpc2FibGVkXS5hbGVydDpmb2N1cywgLndwLWJsb2NrLWJ1dHRvbiAud3AtYmxvY2stYnV0dG9uX19saW5rW2Rpc2FibGVkXS5hbGVydDpmb2N1cywgc2VjdGlvbi5wcm9tby1saXN0aW5nLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhW2Rpc2FibGVkXS5hbGVydDpmb2N1cywgc2VjdGlvbi5wcm9tby1saXN0aW5nLTIuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGFbZGlzYWJsZWRdLmFsZXJ0OmZvY3VzIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2NjNGIzNztcbiAgICAgICAgY29sb3I6ICNmZWZlZmU7IH1cbiAgLmJ1dHRvbi5ob2xsb3csIC53cC1ibG9jay1idXR0b24gLmhvbGxvdy53cC1ibG9jay1idXR0b25fX2xpbmssIC53cC1ibG9jay1idXR0b24uaXMtc3R5bGUtb3V0bGluZSAud3AtYmxvY2stYnV0dG9uX19saW5rLCAud3AtYmxvY2stYnV0dG9uLmlzLXN0eWxlLW91dGxpbmUgc2VjdGlvbi5wcm9tby1saXN0aW5nLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLndwLWJsb2NrLWJ1dHRvbl9fbGluaywgc2VjdGlvbi5wcm9tby1saXN0aW5nLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCAud3AtYmxvY2stYnV0dG9uLmlzLXN0eWxlLW91dGxpbmUgYS53cC1ibG9jay1idXR0b25fX2xpbmssIC53cC1ibG9jay1idXR0b24uaXMtc3R5bGUtb3V0bGluZSBzZWN0aW9uLnByb21vLWxpc3RpbmctMi5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS53cC1ibG9jay1idXR0b25fX2xpbmssIHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCAud3AtYmxvY2stYnV0dG9uLmlzLXN0eWxlLW91dGxpbmUgYS53cC1ibG9jay1idXR0b25fX2xpbmssIHNlY3Rpb24ucHJvbW8tbGlzdGluZy5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5ob2xsb3csIHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLmhvbGxvdyB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIzY4MDBkMjtcbiAgICBjb2xvcjogIzY4MDBkMjsgfVxuICAgIC5idXR0b24uaG9sbG93LCAud3AtYmxvY2stYnV0dG9uIC5ob2xsb3cud3AtYmxvY2stYnV0dG9uX19saW5rLCAud3AtYmxvY2stYnV0dG9uLmlzLXN0eWxlLW91dGxpbmUgLndwLWJsb2NrLWJ1dHRvbl9fbGluaywgLndwLWJsb2NrLWJ1dHRvbi5pcy1zdHlsZS1vdXRsaW5lIHNlY3Rpb24ucHJvbW8tbGlzdGluZy5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS53cC1ibG9jay1idXR0b25fX2xpbmssIHNlY3Rpb24ucHJvbW8tbGlzdGluZy5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgLndwLWJsb2NrLWJ1dHRvbi5pcy1zdHlsZS1vdXRsaW5lIGEud3AtYmxvY2stYnV0dG9uX19saW5rLCAud3AtYmxvY2stYnV0dG9uLmlzLXN0eWxlLW91dGxpbmUgc2VjdGlvbi5wcm9tby1saXN0aW5nLTIuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEud3AtYmxvY2stYnV0dG9uX19saW5rLCBzZWN0aW9uLnByb21vLWxpc3RpbmctMi5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgLndwLWJsb2NrLWJ1dHRvbi5pcy1zdHlsZS1vdXRsaW5lIGEud3AtYmxvY2stYnV0dG9uX19saW5rLCBzZWN0aW9uLnByb21vLWxpc3RpbmcuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEuaG9sbG93LCBzZWN0aW9uLnByb21vLWxpc3RpbmctMi5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5ob2xsb3csIC5idXR0b24uaG9sbG93OmhvdmVyLCAud3AtYmxvY2stYnV0dG9uIC5ob2xsb3cud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLCAud3AtYmxvY2stYnV0dG9uLmlzLXN0eWxlLW91dGxpbmUgLndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3ZlciwgLndwLWJsb2NrLWJ1dHRvbi5pcy1zdHlsZS1vdXRsaW5lIHNlY3Rpb24ucHJvbW8tbGlzdGluZy5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIsIHNlY3Rpb24ucHJvbW8tbGlzdGluZy5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgLndwLWJsb2NrLWJ1dHRvbi5pcy1zdHlsZS1vdXRsaW5lIGEud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLCAud3AtYmxvY2stYnV0dG9uLmlzLXN0eWxlLW91dGxpbmUgc2VjdGlvbi5wcm9tby1saXN0aW5nLTIuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLCBzZWN0aW9uLnByb21vLWxpc3RpbmctMi5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgLndwLWJsb2NrLWJ1dHRvbi5pcy1zdHlsZS1vdXRsaW5lIGEud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLCBzZWN0aW9uLnByb21vLWxpc3RpbmcuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEuaG9sbG93OmhvdmVyLCBzZWN0aW9uLnByb21vLWxpc3RpbmctMi5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5ob2xsb3c6aG92ZXIsIC5idXR0b24uaG9sbG93OmZvY3VzLCAud3AtYmxvY2stYnV0dG9uIC5ob2xsb3cud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzLCAud3AtYmxvY2stYnV0dG9uLmlzLXN0eWxlLW91dGxpbmUgLndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1cywgLndwLWJsb2NrLWJ1dHRvbi5pcy1zdHlsZS1vdXRsaW5lIHNlY3Rpb24ucHJvbW8tbGlzdGluZy5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXMsIHNlY3Rpb24ucHJvbW8tbGlzdGluZy5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgLndwLWJsb2NrLWJ1dHRvbi5pcy1zdHlsZS1vdXRsaW5lIGEud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzLCAud3AtYmxvY2stYnV0dG9uLmlzLXN0eWxlLW91dGxpbmUgc2VjdGlvbi5wcm9tby1saXN0aW5nLTIuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzLCBzZWN0aW9uLnByb21vLWxpc3RpbmctMi5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgLndwLWJsb2NrLWJ1dHRvbi5pcy1zdHlsZS1vdXRsaW5lIGEud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzLCBzZWN0aW9uLnByb21vLWxpc3RpbmcuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEuaG9sbG93OmZvY3VzLCBzZWN0aW9uLnByb21vLWxpc3RpbmctMi5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5ob2xsb3c6Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgICAuYnV0dG9uLmhvbGxvdy5kaXNhYmxlZCwgLndwLWJsb2NrLWJ1dHRvbiAuaG9sbG93LmRpc2FibGVkLndwLWJsb2NrLWJ1dHRvbl9fbGluaywgLndwLWJsb2NrLWJ1dHRvbi5pcy1zdHlsZS1vdXRsaW5lIC5kaXNhYmxlZC53cC1ibG9jay1idXR0b25fX2xpbmssIC53cC1ibG9jay1idXR0b24uaXMtc3R5bGUtb3V0bGluZSBzZWN0aW9uLnByb21vLWxpc3RpbmcuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEuZGlzYWJsZWQud3AtYmxvY2stYnV0dG9uX19saW5rLCBzZWN0aW9uLnByb21vLWxpc3RpbmcuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIC53cC1ibG9jay1idXR0b24uaXMtc3R5bGUtb3V0bGluZSBhLmRpc2FibGVkLndwLWJsb2NrLWJ1dHRvbl9fbGluaywgLndwLWJsb2NrLWJ1dHRvbi5pcy1zdHlsZS1vdXRsaW5lIHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLmRpc2FibGVkLndwLWJsb2NrLWJ1dHRvbl9fbGluaywgc2VjdGlvbi5wcm9tby1saXN0aW5nLTIuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIC53cC1ibG9jay1idXR0b24uaXMtc3R5bGUtb3V0bGluZSBhLmRpc2FibGVkLndwLWJsb2NrLWJ1dHRvbl9fbGluaywgc2VjdGlvbi5wcm9tby1saXN0aW5nLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLmhvbGxvdy5kaXNhYmxlZCwgc2VjdGlvbi5wcm9tby1saXN0aW5nLTIuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEuaG9sbG93LmRpc2FibGVkLCAuYnV0dG9uLmhvbGxvdy5kaXNhYmxlZDpob3ZlciwgLndwLWJsb2NrLWJ1dHRvbiAuaG9sbG93LmRpc2FibGVkLndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3ZlciwgLndwLWJsb2NrLWJ1dHRvbi5pcy1zdHlsZS1vdXRsaW5lIC5kaXNhYmxlZC53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIsIHNlY3Rpb24ucHJvbW8tbGlzdGluZy5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5ob2xsb3cuZGlzYWJsZWQ6aG92ZXIsIHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLmhvbGxvdy5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi5ob2xsb3cuZGlzYWJsZWQ6Zm9jdXMsIC53cC1ibG9jay1idXR0b24gLmhvbGxvdy5kaXNhYmxlZC53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXMsIC53cC1ibG9jay1idXR0b24uaXMtc3R5bGUtb3V0bGluZSAuZGlzYWJsZWQud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzLCBzZWN0aW9uLnByb21vLWxpc3RpbmcuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEuaG9sbG93LmRpc2FibGVkOmZvY3VzLCBzZWN0aW9uLnByb21vLWxpc3RpbmctMi5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5ob2xsb3cuZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24uaG9sbG93W2Rpc2FibGVkXSwgLndwLWJsb2NrLWJ1dHRvbiAuaG9sbG93LndwLWJsb2NrLWJ1dHRvbl9fbGlua1tkaXNhYmxlZF0sIC53cC1ibG9jay1idXR0b24uaXMtc3R5bGUtb3V0bGluZSAud3AtYmxvY2stYnV0dG9uX19saW5rW2Rpc2FibGVkXSwgLndwLWJsb2NrLWJ1dHRvbi5pcy1zdHlsZS1vdXRsaW5lIHNlY3Rpb24ucHJvbW8tbGlzdGluZy5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS53cC1ibG9jay1idXR0b25fX2xpbmtbZGlzYWJsZWRdLCBzZWN0aW9uLnByb21vLWxpc3RpbmcuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIC53cC1ibG9jay1idXR0b24uaXMtc3R5bGUtb3V0bGluZSBhLndwLWJsb2NrLWJ1dHRvbl9fbGlua1tkaXNhYmxlZF0sIC53cC1ibG9jay1idXR0b24uaXMtc3R5bGUtb3V0bGluZSBzZWN0aW9uLnByb21vLWxpc3RpbmctMi5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS53cC1ibG9jay1idXR0b25fX2xpbmtbZGlzYWJsZWRdLCBzZWN0aW9uLnByb21vLWxpc3RpbmctMi5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgLndwLWJsb2NrLWJ1dHRvbi5pcy1zdHlsZS1vdXRsaW5lIGEud3AtYmxvY2stYnV0dG9uX19saW5rW2Rpc2FibGVkXSwgc2VjdGlvbi5wcm9tby1saXN0aW5nLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLmhvbGxvd1tkaXNhYmxlZF0sIHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLmhvbGxvd1tkaXNhYmxlZF0sIC5idXR0b24uaG9sbG93W2Rpc2FibGVkXTpob3ZlciwgLndwLWJsb2NrLWJ1dHRvbiAuaG9sbG93LndwLWJsb2NrLWJ1dHRvbl9fbGlua1tkaXNhYmxlZF06aG92ZXIsIC53cC1ibG9jay1idXR0b24uaXMtc3R5bGUtb3V0bGluZSAud3AtYmxvY2stYnV0dG9uX19saW5rW2Rpc2FibGVkXTpob3Zlciwgc2VjdGlvbi5wcm9tby1saXN0aW5nLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLmhvbGxvd1tkaXNhYmxlZF06aG92ZXIsIHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLmhvbGxvd1tkaXNhYmxlZF06aG92ZXIsIC5idXR0b24uaG9sbG93W2Rpc2FibGVkXTpmb2N1cywgLndwLWJsb2NrLWJ1dHRvbiAuaG9sbG93LndwLWJsb2NrLWJ1dHRvbl9fbGlua1tkaXNhYmxlZF06Zm9jdXMsIC53cC1ibG9jay1idXR0b24uaXMtc3R5bGUtb3V0bGluZSAud3AtYmxvY2stYnV0dG9uX19saW5rW2Rpc2FibGVkXTpmb2N1cywgc2VjdGlvbi5wcm9tby1saXN0aW5nLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLmhvbGxvd1tkaXNhYmxlZF06Zm9jdXMsIHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLmhvbGxvd1tkaXNhYmxlZF06Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgICAuYnV0dG9uLmhvbGxvdzpob3ZlciwgLndwLWJsb2NrLWJ1dHRvbiAuaG9sbG93LndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3ZlciwgLndwLWJsb2NrLWJ1dHRvbi5pcy1zdHlsZS1vdXRsaW5lIC53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIsIC53cC1ibG9jay1idXR0b24uaXMtc3R5bGUtb3V0bGluZSBzZWN0aW9uLnByb21vLWxpc3RpbmcuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLCBzZWN0aW9uLnByb21vLWxpc3RpbmcuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIC53cC1ibG9jay1idXR0b24uaXMtc3R5bGUtb3V0bGluZSBhLndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3ZlciwgLndwLWJsb2NrLWJ1dHRvbi5pcy1zdHlsZS1vdXRsaW5lIHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3Zlciwgc2VjdGlvbi5wcm9tby1saXN0aW5nLTIuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIC53cC1ibG9jay1idXR0b24uaXMtc3R5bGUtb3V0bGluZSBhLndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3Zlciwgc2VjdGlvbi5wcm9tby1saXN0aW5nLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLmhvbGxvdzpob3Zlciwgc2VjdGlvbi5wcm9tby1saXN0aW5nLTIuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEuaG9sbG93OmhvdmVyLCAuYnV0dG9uLmhvbGxvdzpmb2N1cywgLndwLWJsb2NrLWJ1dHRvbiAuaG9sbG93LndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1cywgLndwLWJsb2NrLWJ1dHRvbi5pcy1zdHlsZS1vdXRsaW5lIC53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXMsIC53cC1ibG9jay1idXR0b24uaXMtc3R5bGUtb3V0bGluZSBzZWN0aW9uLnByb21vLWxpc3RpbmcuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzLCBzZWN0aW9uLnByb21vLWxpc3RpbmcuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIC53cC1ibG9jay1idXR0b24uaXMtc3R5bGUtb3V0bGluZSBhLndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1cywgLndwLWJsb2NrLWJ1dHRvbi5pcy1zdHlsZS1vdXRsaW5lIHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1cywgc2VjdGlvbi5wcm9tby1saXN0aW5nLTIuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIC53cC1ibG9jay1idXR0b24uaXMtc3R5bGUtb3V0bGluZSBhLndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1cywgc2VjdGlvbi5wcm9tby1saXN0aW5nLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLmhvbGxvdzpmb2N1cywgc2VjdGlvbi5wcm9tby1saXN0aW5nLTIuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEuaG9sbG93OmZvY3VzIHtcbiAgICAgIGJvcmRlci1jb2xvcjogIzM0MDA2OTtcbiAgICAgIGNvbG9yOiAjMzQwMDY5OyB9XG4gICAgICAuYnV0dG9uLmhvbGxvdzpob3Zlci5kaXNhYmxlZCwgLndwLWJsb2NrLWJ1dHRvbiAuaG9sbG93LmRpc2FibGVkLndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3ZlciwgLndwLWJsb2NrLWJ1dHRvbi5pcy1zdHlsZS1vdXRsaW5lIC5kaXNhYmxlZC53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIsIHNlY3Rpb24ucHJvbW8tbGlzdGluZy5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5ob2xsb3c6aG92ZXIuZGlzYWJsZWQsIHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLmhvbGxvdzpob3Zlci5kaXNhYmxlZCwgLmJ1dHRvbi5ob2xsb3c6aG92ZXJbZGlzYWJsZWRdLCAud3AtYmxvY2stYnV0dG9uIC5ob2xsb3cud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyW2Rpc2FibGVkXSwgLndwLWJsb2NrLWJ1dHRvbi5pcy1zdHlsZS1vdXRsaW5lIC53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXJbZGlzYWJsZWRdLCBzZWN0aW9uLnByb21vLWxpc3RpbmcuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEuaG9sbG93OmhvdmVyW2Rpc2FibGVkXSwgc2VjdGlvbi5wcm9tby1saXN0aW5nLTIuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEuaG9sbG93OmhvdmVyW2Rpc2FibGVkXSwgLmJ1dHRvbi5ob2xsb3c6Zm9jdXMuZGlzYWJsZWQsIC53cC1ibG9jay1idXR0b24gLmhvbGxvdy53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXMuZGlzYWJsZWQsIC53cC1ibG9jay1idXR0b24uaXMtc3R5bGUtb3V0bGluZSAud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzLmRpc2FibGVkLCBzZWN0aW9uLnByb21vLWxpc3RpbmcuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEuaG9sbG93OmZvY3VzLmRpc2FibGVkLCBzZWN0aW9uLnByb21vLWxpc3RpbmctMi5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5ob2xsb3c6Zm9jdXMuZGlzYWJsZWQsIC5idXR0b24uaG9sbG93OmZvY3VzW2Rpc2FibGVkXSwgLndwLWJsb2NrLWJ1dHRvbiAuaG9sbG93LndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1c1tkaXNhYmxlZF0sIC53cC1ibG9jay1idXR0b24uaXMtc3R5bGUtb3V0bGluZSAud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzW2Rpc2FibGVkXSwgc2VjdGlvbi5wcm9tby1saXN0aW5nLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLmhvbGxvdzpmb2N1c1tkaXNhYmxlZF0sIHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLmhvbGxvdzpmb2N1c1tkaXNhYmxlZF0ge1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjNjgwMGQyO1xuICAgICAgICBjb2xvcjogIzY4MDBkMjsgfVxuICAgIC5idXR0b24uaG9sbG93LnByaW1hcnksIC53cC1ibG9jay1idXR0b24gLmhvbGxvdy5wcmltYXJ5LndwLWJsb2NrLWJ1dHRvbl9fbGluaywgLndwLWJsb2NrLWJ1dHRvbi5pcy1zdHlsZS1vdXRsaW5lIC5wcmltYXJ5LndwLWJsb2NrLWJ1dHRvbl9fbGluaywgLndwLWJsb2NrLWJ1dHRvbi5pcy1zdHlsZS1vdXRsaW5lIHNlY3Rpb24ucHJvbW8tbGlzdGluZy5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5wcmltYXJ5LndwLWJsb2NrLWJ1dHRvbl9fbGluaywgc2VjdGlvbi5wcm9tby1saXN0aW5nLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCAud3AtYmxvY2stYnV0dG9uLmlzLXN0eWxlLW91dGxpbmUgYS5wcmltYXJ5LndwLWJsb2NrLWJ1dHRvbl9fbGluaywgLndwLWJsb2NrLWJ1dHRvbi5pcy1zdHlsZS1vdXRsaW5lIHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLnByaW1hcnkud3AtYmxvY2stYnV0dG9uX19saW5rLCBzZWN0aW9uLnByb21vLWxpc3RpbmctMi5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgLndwLWJsb2NrLWJ1dHRvbi5pcy1zdHlsZS1vdXRsaW5lIGEucHJpbWFyeS53cC1ibG9jay1idXR0b25fX2xpbmssIHNlY3Rpb24ucHJvbW8tbGlzdGluZy5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5ob2xsb3cucHJpbWFyeSwgc2VjdGlvbi5wcm9tby1saXN0aW5nLTIuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEuaG9sbG93LnByaW1hcnkge1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgIzY4MDBkMjtcbiAgICAgIGNvbG9yOiAjNjgwMGQyOyB9XG4gICAgICAuYnV0dG9uLmhvbGxvdy5wcmltYXJ5OmhvdmVyLCAud3AtYmxvY2stYnV0dG9uIC5ob2xsb3cucHJpbWFyeS53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIsIC53cC1ibG9jay1idXR0b24uaXMtc3R5bGUtb3V0bGluZSAucHJpbWFyeS53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIsIHNlY3Rpb24ucHJvbW8tbGlzdGluZy5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5ob2xsb3cucHJpbWFyeTpob3Zlciwgc2VjdGlvbi5wcm9tby1saXN0aW5nLTIuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEuaG9sbG93LnByaW1hcnk6aG92ZXIsIC5idXR0b24uaG9sbG93LnByaW1hcnk6Zm9jdXMsIC53cC1ibG9jay1idXR0b24gLmhvbGxvdy5wcmltYXJ5LndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1cywgLndwLWJsb2NrLWJ1dHRvbi5pcy1zdHlsZS1vdXRsaW5lIC5wcmltYXJ5LndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1cywgc2VjdGlvbi5wcm9tby1saXN0aW5nLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLmhvbGxvdy5wcmltYXJ5OmZvY3VzLCBzZWN0aW9uLnByb21vLWxpc3RpbmctMi5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5ob2xsb3cucHJpbWFyeTpmb2N1cyB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogIzM0MDA2OTtcbiAgICAgICAgY29sb3I6ICMzNDAwNjk7IH1cbiAgICAgICAgLmJ1dHRvbi5ob2xsb3cucHJpbWFyeTpob3Zlci5kaXNhYmxlZCwgLndwLWJsb2NrLWJ1dHRvbiAuaG9sbG93LnByaW1hcnkud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLmRpc2FibGVkLCAud3AtYmxvY2stYnV0dG9uLmlzLXN0eWxlLW91dGxpbmUgLnByaW1hcnkud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLmRpc2FibGVkLCBzZWN0aW9uLnByb21vLWxpc3RpbmcuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEuaG9sbG93LnByaW1hcnk6aG92ZXIuZGlzYWJsZWQsIHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLmhvbGxvdy5wcmltYXJ5OmhvdmVyLmRpc2FibGVkLCAuYnV0dG9uLmhvbGxvdy5wcmltYXJ5OmhvdmVyW2Rpc2FibGVkXSwgLndwLWJsb2NrLWJ1dHRvbiAuaG9sbG93LnByaW1hcnkud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyW2Rpc2FibGVkXSwgLndwLWJsb2NrLWJ1dHRvbi5pcy1zdHlsZS1vdXRsaW5lIC5wcmltYXJ5LndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3ZlcltkaXNhYmxlZF0sIHNlY3Rpb24ucHJvbW8tbGlzdGluZy5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5ob2xsb3cucHJpbWFyeTpob3ZlcltkaXNhYmxlZF0sIHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLmhvbGxvdy5wcmltYXJ5OmhvdmVyW2Rpc2FibGVkXSwgLmJ1dHRvbi5ob2xsb3cucHJpbWFyeTpmb2N1cy5kaXNhYmxlZCwgLndwLWJsb2NrLWJ1dHRvbiAuaG9sbG93LnByaW1hcnkud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzLmRpc2FibGVkLCAud3AtYmxvY2stYnV0dG9uLmlzLXN0eWxlLW91dGxpbmUgLnByaW1hcnkud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzLmRpc2FibGVkLCBzZWN0aW9uLnByb21vLWxpc3RpbmcuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEuaG9sbG93LnByaW1hcnk6Zm9jdXMuZGlzYWJsZWQsIHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLmhvbGxvdy5wcmltYXJ5OmZvY3VzLmRpc2FibGVkLCAuYnV0dG9uLmhvbGxvdy5wcmltYXJ5OmZvY3VzW2Rpc2FibGVkXSwgLndwLWJsb2NrLWJ1dHRvbiAuaG9sbG93LnByaW1hcnkud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzW2Rpc2FibGVkXSwgLndwLWJsb2NrLWJ1dHRvbi5pcy1zdHlsZS1vdXRsaW5lIC5wcmltYXJ5LndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1c1tkaXNhYmxlZF0sIHNlY3Rpb24ucHJvbW8tbGlzdGluZy5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5ob2xsb3cucHJpbWFyeTpmb2N1c1tkaXNhYmxlZF0sIHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLmhvbGxvdy5wcmltYXJ5OmZvY3VzW2Rpc2FibGVkXSB7XG4gICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgIzY4MDBkMjtcbiAgICAgICAgICBjb2xvcjogIzY4MDBkMjsgfVxuICAgIC5idXR0b24uaG9sbG93LnNlY29uZGFyeSwgLndwLWJsb2NrLWJ1dHRvbiAuaG9sbG93LnNlY29uZGFyeS53cC1ibG9jay1idXR0b25fX2xpbmssIC53cC1ibG9jay1idXR0b24uaXMtc3R5bGUtb3V0bGluZSAuc2Vjb25kYXJ5LndwLWJsb2NrLWJ1dHRvbl9fbGluaywgLndwLWJsb2NrLWJ1dHRvbi5pcy1zdHlsZS1vdXRsaW5lIHNlY3Rpb24ucHJvbW8tbGlzdGluZy5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5zZWNvbmRhcnkud3AtYmxvY2stYnV0dG9uX19saW5rLCBzZWN0aW9uLnByb21vLWxpc3RpbmcuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIC53cC1ibG9jay1idXR0b24uaXMtc3R5bGUtb3V0bGluZSBhLnNlY29uZGFyeS53cC1ibG9jay1idXR0b25fX2xpbmssIC53cC1ibG9jay1idXR0b24uaXMtc3R5bGUtb3V0bGluZSBzZWN0aW9uLnByb21vLWxpc3RpbmctMi5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5zZWNvbmRhcnkud3AtYmxvY2stYnV0dG9uX19saW5rLCBzZWN0aW9uLnByb21vLWxpc3RpbmctMi5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgLndwLWJsb2NrLWJ1dHRvbi5pcy1zdHlsZS1vdXRsaW5lIGEuc2Vjb25kYXJ5LndwLWJsb2NrLWJ1dHRvbl9fbGluaywgc2VjdGlvbi5wcm9tby1saXN0aW5nLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLmhvbGxvdy5zZWNvbmRhcnksIHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLmhvbGxvdy5zZWNvbmRhcnkge1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgI2ZiZTIwMDtcbiAgICAgIGNvbG9yOiAjZmJlMjAwOyB9XG4gICAgICAuYnV0dG9uLmhvbGxvdy5zZWNvbmRhcnk6aG92ZXIsIC53cC1ibG9jay1idXR0b24gLmhvbGxvdy5zZWNvbmRhcnkud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLCAud3AtYmxvY2stYnV0dG9uLmlzLXN0eWxlLW91dGxpbmUgLnNlY29uZGFyeS53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIsIHNlY3Rpb24ucHJvbW8tbGlzdGluZy5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5ob2xsb3cuc2Vjb25kYXJ5OmhvdmVyLCBzZWN0aW9uLnByb21vLWxpc3RpbmctMi5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5ob2xsb3cuc2Vjb25kYXJ5OmhvdmVyLCAuYnV0dG9uLmhvbGxvdy5zZWNvbmRhcnk6Zm9jdXMsIC53cC1ibG9jay1idXR0b24gLmhvbGxvdy5zZWNvbmRhcnkud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzLCAud3AtYmxvY2stYnV0dG9uLmlzLXN0eWxlLW91dGxpbmUgLnNlY29uZGFyeS53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXMsIHNlY3Rpb24ucHJvbW8tbGlzdGluZy5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5ob2xsb3cuc2Vjb25kYXJ5OmZvY3VzLCBzZWN0aW9uLnByb21vLWxpc3RpbmctMi5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5ob2xsb3cuc2Vjb25kYXJ5OmZvY3VzIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAjN2U3MTAwO1xuICAgICAgICBjb2xvcjogIzdlNzEwMDsgfVxuICAgICAgICAuYnV0dG9uLmhvbGxvdy5zZWNvbmRhcnk6aG92ZXIuZGlzYWJsZWQsIC53cC1ibG9jay1idXR0b24gLmhvbGxvdy5zZWNvbmRhcnkud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLmRpc2FibGVkLCAud3AtYmxvY2stYnV0dG9uLmlzLXN0eWxlLW91dGxpbmUgLnNlY29uZGFyeS53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIuZGlzYWJsZWQsIHNlY3Rpb24ucHJvbW8tbGlzdGluZy5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5ob2xsb3cuc2Vjb25kYXJ5OmhvdmVyLmRpc2FibGVkLCBzZWN0aW9uLnByb21vLWxpc3RpbmctMi5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5ob2xsb3cuc2Vjb25kYXJ5OmhvdmVyLmRpc2FibGVkLCAuYnV0dG9uLmhvbGxvdy5zZWNvbmRhcnk6aG92ZXJbZGlzYWJsZWRdLCAud3AtYmxvY2stYnV0dG9uIC5ob2xsb3cuc2Vjb25kYXJ5LndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3ZlcltkaXNhYmxlZF0sIC53cC1ibG9jay1idXR0b24uaXMtc3R5bGUtb3V0bGluZSAuc2Vjb25kYXJ5LndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3ZlcltkaXNhYmxlZF0sIHNlY3Rpb24ucHJvbW8tbGlzdGluZy5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5ob2xsb3cuc2Vjb25kYXJ5OmhvdmVyW2Rpc2FibGVkXSwgc2VjdGlvbi5wcm9tby1saXN0aW5nLTIuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEuaG9sbG93LnNlY29uZGFyeTpob3ZlcltkaXNhYmxlZF0sIC5idXR0b24uaG9sbG93LnNlY29uZGFyeTpmb2N1cy5kaXNhYmxlZCwgLndwLWJsb2NrLWJ1dHRvbiAuaG9sbG93LnNlY29uZGFyeS53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXMuZGlzYWJsZWQsIC53cC1ibG9jay1idXR0b24uaXMtc3R5bGUtb3V0bGluZSAuc2Vjb25kYXJ5LndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1cy5kaXNhYmxlZCwgc2VjdGlvbi5wcm9tby1saXN0aW5nLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLmhvbGxvdy5zZWNvbmRhcnk6Zm9jdXMuZGlzYWJsZWQsIHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLmhvbGxvdy5zZWNvbmRhcnk6Zm9jdXMuZGlzYWJsZWQsIC5idXR0b24uaG9sbG93LnNlY29uZGFyeTpmb2N1c1tkaXNhYmxlZF0sIC53cC1ibG9jay1idXR0b24gLmhvbGxvdy5zZWNvbmRhcnkud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzW2Rpc2FibGVkXSwgLndwLWJsb2NrLWJ1dHRvbi5pcy1zdHlsZS1vdXRsaW5lIC5zZWNvbmRhcnkud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzW2Rpc2FibGVkXSwgc2VjdGlvbi5wcm9tby1saXN0aW5nLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLmhvbGxvdy5zZWNvbmRhcnk6Zm9jdXNbZGlzYWJsZWRdLCBzZWN0aW9uLnByb21vLWxpc3RpbmctMi5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5ob2xsb3cuc2Vjb25kYXJ5OmZvY3VzW2Rpc2FibGVkXSB7XG4gICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2ZiZTIwMDtcbiAgICAgICAgICBjb2xvcjogI2ZiZTIwMDsgfVxuICAgIC5idXR0b24uaG9sbG93LnN1Y2Nlc3MsIC53cC1ibG9jay1idXR0b24gLmhvbGxvdy5zdWNjZXNzLndwLWJsb2NrLWJ1dHRvbl9fbGluaywgLndwLWJsb2NrLWJ1dHRvbi5pcy1zdHlsZS1vdXRsaW5lIC5zdWNjZXNzLndwLWJsb2NrLWJ1dHRvbl9fbGluaywgLndwLWJsb2NrLWJ1dHRvbi5pcy1zdHlsZS1vdXRsaW5lIHNlY3Rpb24ucHJvbW8tbGlzdGluZy5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5zdWNjZXNzLndwLWJsb2NrLWJ1dHRvbl9fbGluaywgc2VjdGlvbi5wcm9tby1saXN0aW5nLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCAud3AtYmxvY2stYnV0dG9uLmlzLXN0eWxlLW91dGxpbmUgYS5zdWNjZXNzLndwLWJsb2NrLWJ1dHRvbl9fbGluaywgLndwLWJsb2NrLWJ1dHRvbi5pcy1zdHlsZS1vdXRsaW5lIHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLnN1Y2Nlc3Mud3AtYmxvY2stYnV0dG9uX19saW5rLCBzZWN0aW9uLnByb21vLWxpc3RpbmctMi5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgLndwLWJsb2NrLWJ1dHRvbi5pcy1zdHlsZS1vdXRsaW5lIGEuc3VjY2Vzcy53cC1ibG9jay1idXR0b25fX2xpbmssIHNlY3Rpb24ucHJvbW8tbGlzdGluZy5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5ob2xsb3cuc3VjY2Vzcywgc2VjdGlvbi5wcm9tby1saXN0aW5nLTIuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEuaG9sbG93LnN1Y2Nlc3Mge1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgIzNhZGI3NjtcbiAgICAgIGNvbG9yOiAjM2FkYjc2OyB9XG4gICAgICAuYnV0dG9uLmhvbGxvdy5zdWNjZXNzOmhvdmVyLCAud3AtYmxvY2stYnV0dG9uIC5ob2xsb3cuc3VjY2Vzcy53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIsIC53cC1ibG9jay1idXR0b24uaXMtc3R5bGUtb3V0bGluZSAuc3VjY2Vzcy53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIsIHNlY3Rpb24ucHJvbW8tbGlzdGluZy5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5ob2xsb3cuc3VjY2Vzczpob3Zlciwgc2VjdGlvbi5wcm9tby1saXN0aW5nLTIuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEuaG9sbG93LnN1Y2Nlc3M6aG92ZXIsIC5idXR0b24uaG9sbG93LnN1Y2Nlc3M6Zm9jdXMsIC53cC1ibG9jay1idXR0b24gLmhvbGxvdy5zdWNjZXNzLndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1cywgLndwLWJsb2NrLWJ1dHRvbi5pcy1zdHlsZS1vdXRsaW5lIC5zdWNjZXNzLndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1cywgc2VjdGlvbi5wcm9tby1saXN0aW5nLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLmhvbGxvdy5zdWNjZXNzOmZvY3VzLCBzZWN0aW9uLnByb21vLWxpc3RpbmctMi5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5ob2xsb3cuc3VjY2Vzczpmb2N1cyB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogIzE1NzUzOTtcbiAgICAgICAgY29sb3I6ICMxNTc1Mzk7IH1cbiAgICAgICAgLmJ1dHRvbi5ob2xsb3cuc3VjY2Vzczpob3Zlci5kaXNhYmxlZCwgLndwLWJsb2NrLWJ1dHRvbiAuaG9sbG93LnN1Y2Nlc3Mud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLmRpc2FibGVkLCAud3AtYmxvY2stYnV0dG9uLmlzLXN0eWxlLW91dGxpbmUgLnN1Y2Nlc3Mud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLmRpc2FibGVkLCBzZWN0aW9uLnByb21vLWxpc3RpbmcuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEuaG9sbG93LnN1Y2Nlc3M6aG92ZXIuZGlzYWJsZWQsIHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLmhvbGxvdy5zdWNjZXNzOmhvdmVyLmRpc2FibGVkLCAuYnV0dG9uLmhvbGxvdy5zdWNjZXNzOmhvdmVyW2Rpc2FibGVkXSwgLndwLWJsb2NrLWJ1dHRvbiAuaG9sbG93LnN1Y2Nlc3Mud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyW2Rpc2FibGVkXSwgLndwLWJsb2NrLWJ1dHRvbi5pcy1zdHlsZS1vdXRsaW5lIC5zdWNjZXNzLndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3ZlcltkaXNhYmxlZF0sIHNlY3Rpb24ucHJvbW8tbGlzdGluZy5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5ob2xsb3cuc3VjY2Vzczpob3ZlcltkaXNhYmxlZF0sIHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLmhvbGxvdy5zdWNjZXNzOmhvdmVyW2Rpc2FibGVkXSwgLmJ1dHRvbi5ob2xsb3cuc3VjY2Vzczpmb2N1cy5kaXNhYmxlZCwgLndwLWJsb2NrLWJ1dHRvbiAuaG9sbG93LnN1Y2Nlc3Mud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzLmRpc2FibGVkLCAud3AtYmxvY2stYnV0dG9uLmlzLXN0eWxlLW91dGxpbmUgLnN1Y2Nlc3Mud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzLmRpc2FibGVkLCBzZWN0aW9uLnByb21vLWxpc3RpbmcuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEuaG9sbG93LnN1Y2Nlc3M6Zm9jdXMuZGlzYWJsZWQsIHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLmhvbGxvdy5zdWNjZXNzOmZvY3VzLmRpc2FibGVkLCAuYnV0dG9uLmhvbGxvdy5zdWNjZXNzOmZvY3VzW2Rpc2FibGVkXSwgLndwLWJsb2NrLWJ1dHRvbiAuaG9sbG93LnN1Y2Nlc3Mud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzW2Rpc2FibGVkXSwgLndwLWJsb2NrLWJ1dHRvbi5pcy1zdHlsZS1vdXRsaW5lIC5zdWNjZXNzLndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1c1tkaXNhYmxlZF0sIHNlY3Rpb24ucHJvbW8tbGlzdGluZy5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5ob2xsb3cuc3VjY2Vzczpmb2N1c1tkaXNhYmxlZF0sIHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLmhvbGxvdy5zdWNjZXNzOmZvY3VzW2Rpc2FibGVkXSB7XG4gICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgIzNhZGI3NjtcbiAgICAgICAgICBjb2xvcjogIzNhZGI3NjsgfVxuICAgIC5idXR0b24uaG9sbG93Lndhcm5pbmcsIC53cC1ibG9jay1idXR0b24gLmhvbGxvdy53YXJuaW5nLndwLWJsb2NrLWJ1dHRvbl9fbGluaywgLndwLWJsb2NrLWJ1dHRvbi5pcy1zdHlsZS1vdXRsaW5lIC53YXJuaW5nLndwLWJsb2NrLWJ1dHRvbl9fbGluaywgLndwLWJsb2NrLWJ1dHRvbi5pcy1zdHlsZS1vdXRsaW5lIHNlY3Rpb24ucHJvbW8tbGlzdGluZy5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS53YXJuaW5nLndwLWJsb2NrLWJ1dHRvbl9fbGluaywgc2VjdGlvbi5wcm9tby1saXN0aW5nLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCAud3AtYmxvY2stYnV0dG9uLmlzLXN0eWxlLW91dGxpbmUgYS53YXJuaW5nLndwLWJsb2NrLWJ1dHRvbl9fbGluaywgLndwLWJsb2NrLWJ1dHRvbi5pcy1zdHlsZS1vdXRsaW5lIHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLndhcm5pbmcud3AtYmxvY2stYnV0dG9uX19saW5rLCBzZWN0aW9uLnByb21vLWxpc3RpbmctMi5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgLndwLWJsb2NrLWJ1dHRvbi5pcy1zdHlsZS1vdXRsaW5lIGEud2FybmluZy53cC1ibG9jay1idXR0b25fX2xpbmssIHNlY3Rpb24ucHJvbW8tbGlzdGluZy5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5ob2xsb3cud2FybmluZywgc2VjdGlvbi5wcm9tby1saXN0aW5nLTIuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEuaG9sbG93Lndhcm5pbmcge1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgI2ZmYWUwMDtcbiAgICAgIGNvbG9yOiAjZmZhZTAwOyB9XG4gICAgICAuYnV0dG9uLmhvbGxvdy53YXJuaW5nOmhvdmVyLCAud3AtYmxvY2stYnV0dG9uIC5ob2xsb3cud2FybmluZy53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIsIC53cC1ibG9jay1idXR0b24uaXMtc3R5bGUtb3V0bGluZSAud2FybmluZy53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIsIHNlY3Rpb24ucHJvbW8tbGlzdGluZy5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5ob2xsb3cud2FybmluZzpob3Zlciwgc2VjdGlvbi5wcm9tby1saXN0aW5nLTIuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEuaG9sbG93Lndhcm5pbmc6aG92ZXIsIC5idXR0b24uaG9sbG93Lndhcm5pbmc6Zm9jdXMsIC53cC1ibG9jay1idXR0b24gLmhvbGxvdy53YXJuaW5nLndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1cywgLndwLWJsb2NrLWJ1dHRvbi5pcy1zdHlsZS1vdXRsaW5lIC53YXJuaW5nLndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1cywgc2VjdGlvbi5wcm9tby1saXN0aW5nLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLmhvbGxvdy53YXJuaW5nOmZvY3VzLCBzZWN0aW9uLnByb21vLWxpc3RpbmctMi5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5ob2xsb3cud2FybmluZzpmb2N1cyB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogIzgwNTcwMDtcbiAgICAgICAgY29sb3I6ICM4MDU3MDA7IH1cbiAgICAgICAgLmJ1dHRvbi5ob2xsb3cud2FybmluZzpob3Zlci5kaXNhYmxlZCwgLndwLWJsb2NrLWJ1dHRvbiAuaG9sbG93Lndhcm5pbmcud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLmRpc2FibGVkLCAud3AtYmxvY2stYnV0dG9uLmlzLXN0eWxlLW91dGxpbmUgLndhcm5pbmcud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLmRpc2FibGVkLCBzZWN0aW9uLnByb21vLWxpc3RpbmcuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEuaG9sbG93Lndhcm5pbmc6aG92ZXIuZGlzYWJsZWQsIHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLmhvbGxvdy53YXJuaW5nOmhvdmVyLmRpc2FibGVkLCAuYnV0dG9uLmhvbGxvdy53YXJuaW5nOmhvdmVyW2Rpc2FibGVkXSwgLndwLWJsb2NrLWJ1dHRvbiAuaG9sbG93Lndhcm5pbmcud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyW2Rpc2FibGVkXSwgLndwLWJsb2NrLWJ1dHRvbi5pcy1zdHlsZS1vdXRsaW5lIC53YXJuaW5nLndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3ZlcltkaXNhYmxlZF0sIHNlY3Rpb24ucHJvbW8tbGlzdGluZy5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5ob2xsb3cud2FybmluZzpob3ZlcltkaXNhYmxlZF0sIHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLmhvbGxvdy53YXJuaW5nOmhvdmVyW2Rpc2FibGVkXSwgLmJ1dHRvbi5ob2xsb3cud2FybmluZzpmb2N1cy5kaXNhYmxlZCwgLndwLWJsb2NrLWJ1dHRvbiAuaG9sbG93Lndhcm5pbmcud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzLmRpc2FibGVkLCAud3AtYmxvY2stYnV0dG9uLmlzLXN0eWxlLW91dGxpbmUgLndhcm5pbmcud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzLmRpc2FibGVkLCBzZWN0aW9uLnByb21vLWxpc3RpbmcuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEuaG9sbG93Lndhcm5pbmc6Zm9jdXMuZGlzYWJsZWQsIHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLmhvbGxvdy53YXJuaW5nOmZvY3VzLmRpc2FibGVkLCAuYnV0dG9uLmhvbGxvdy53YXJuaW5nOmZvY3VzW2Rpc2FibGVkXSwgLndwLWJsb2NrLWJ1dHRvbiAuaG9sbG93Lndhcm5pbmcud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzW2Rpc2FibGVkXSwgLndwLWJsb2NrLWJ1dHRvbi5pcy1zdHlsZS1vdXRsaW5lIC53YXJuaW5nLndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1c1tkaXNhYmxlZF0sIHNlY3Rpb24ucHJvbW8tbGlzdGluZy5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5ob2xsb3cud2FybmluZzpmb2N1c1tkaXNhYmxlZF0sIHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLmhvbGxvdy53YXJuaW5nOmZvY3VzW2Rpc2FibGVkXSB7XG4gICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2ZmYWUwMDtcbiAgICAgICAgICBjb2xvcjogI2ZmYWUwMDsgfVxuICAgIC5idXR0b24uaG9sbG93LmFsZXJ0LCAud3AtYmxvY2stYnV0dG9uIC5ob2xsb3cuYWxlcnQud3AtYmxvY2stYnV0dG9uX19saW5rLCAud3AtYmxvY2stYnV0dG9uLmlzLXN0eWxlLW91dGxpbmUgLmFsZXJ0LndwLWJsb2NrLWJ1dHRvbl9fbGluaywgLndwLWJsb2NrLWJ1dHRvbi5pcy1zdHlsZS1vdXRsaW5lIHNlY3Rpb24ucHJvbW8tbGlzdGluZy5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5hbGVydC53cC1ibG9jay1idXR0b25fX2xpbmssIHNlY3Rpb24ucHJvbW8tbGlzdGluZy5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgLndwLWJsb2NrLWJ1dHRvbi5pcy1zdHlsZS1vdXRsaW5lIGEuYWxlcnQud3AtYmxvY2stYnV0dG9uX19saW5rLCAud3AtYmxvY2stYnV0dG9uLmlzLXN0eWxlLW91dGxpbmUgc2VjdGlvbi5wcm9tby1saXN0aW5nLTIuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEuYWxlcnQud3AtYmxvY2stYnV0dG9uX19saW5rLCBzZWN0aW9uLnByb21vLWxpc3RpbmctMi5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgLndwLWJsb2NrLWJ1dHRvbi5pcy1zdHlsZS1vdXRsaW5lIGEuYWxlcnQud3AtYmxvY2stYnV0dG9uX19saW5rLCBzZWN0aW9uLnByb21vLWxpc3RpbmcuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEuaG9sbG93LmFsZXJ0LCBzZWN0aW9uLnByb21vLWxpc3RpbmctMi5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5ob2xsb3cuYWxlcnQge1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgI2NjNGIzNztcbiAgICAgIGNvbG9yOiAjY2M0YjM3OyB9XG4gICAgICAuYnV0dG9uLmhvbGxvdy5hbGVydDpob3ZlciwgLndwLWJsb2NrLWJ1dHRvbiAuaG9sbG93LmFsZXJ0LndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3ZlciwgLndwLWJsb2NrLWJ1dHRvbi5pcy1zdHlsZS1vdXRsaW5lIC5hbGVydC53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIsIHNlY3Rpb24ucHJvbW8tbGlzdGluZy5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5ob2xsb3cuYWxlcnQ6aG92ZXIsIHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLmhvbGxvdy5hbGVydDpob3ZlciwgLmJ1dHRvbi5ob2xsb3cuYWxlcnQ6Zm9jdXMsIC53cC1ibG9jay1idXR0b24gLmhvbGxvdy5hbGVydC53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXMsIC53cC1ibG9jay1idXR0b24uaXMtc3R5bGUtb3V0bGluZSAuYWxlcnQud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzLCBzZWN0aW9uLnByb21vLWxpc3RpbmcuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEuaG9sbG93LmFsZXJ0OmZvY3VzLCBzZWN0aW9uLnByb21vLWxpc3RpbmctMi5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5ob2xsb3cuYWxlcnQ6Zm9jdXMge1xuICAgICAgICBib3JkZXItY29sb3I6ICM2NzI1MWE7XG4gICAgICAgIGNvbG9yOiAjNjcyNTFhOyB9XG4gICAgICAgIC5idXR0b24uaG9sbG93LmFsZXJ0OmhvdmVyLmRpc2FibGVkLCAud3AtYmxvY2stYnV0dG9uIC5ob2xsb3cuYWxlcnQud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLmRpc2FibGVkLCAud3AtYmxvY2stYnV0dG9uLmlzLXN0eWxlLW91dGxpbmUgLmFsZXJ0LndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3Zlci5kaXNhYmxlZCwgc2VjdGlvbi5wcm9tby1saXN0aW5nLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLmhvbGxvdy5hbGVydDpob3Zlci5kaXNhYmxlZCwgc2VjdGlvbi5wcm9tby1saXN0aW5nLTIuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEuaG9sbG93LmFsZXJ0OmhvdmVyLmRpc2FibGVkLCAuYnV0dG9uLmhvbGxvdy5hbGVydDpob3ZlcltkaXNhYmxlZF0sIC53cC1ibG9jay1idXR0b24gLmhvbGxvdy5hbGVydC53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXJbZGlzYWJsZWRdLCAud3AtYmxvY2stYnV0dG9uLmlzLXN0eWxlLW91dGxpbmUgLmFsZXJ0LndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3ZlcltkaXNhYmxlZF0sIHNlY3Rpb24ucHJvbW8tbGlzdGluZy5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5ob2xsb3cuYWxlcnQ6aG92ZXJbZGlzYWJsZWRdLCBzZWN0aW9uLnByb21vLWxpc3RpbmctMi5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5ob2xsb3cuYWxlcnQ6aG92ZXJbZGlzYWJsZWRdLCAuYnV0dG9uLmhvbGxvdy5hbGVydDpmb2N1cy5kaXNhYmxlZCwgLndwLWJsb2NrLWJ1dHRvbiAuaG9sbG93LmFsZXJ0LndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1cy5kaXNhYmxlZCwgLndwLWJsb2NrLWJ1dHRvbi5pcy1zdHlsZS1vdXRsaW5lIC5hbGVydC53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXMuZGlzYWJsZWQsIHNlY3Rpb24ucHJvbW8tbGlzdGluZy5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5ob2xsb3cuYWxlcnQ6Zm9jdXMuZGlzYWJsZWQsIHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLmhvbGxvdy5hbGVydDpmb2N1cy5kaXNhYmxlZCwgLmJ1dHRvbi5ob2xsb3cuYWxlcnQ6Zm9jdXNbZGlzYWJsZWRdLCAud3AtYmxvY2stYnV0dG9uIC5ob2xsb3cuYWxlcnQud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzW2Rpc2FibGVkXSwgLndwLWJsb2NrLWJ1dHRvbi5pcy1zdHlsZS1vdXRsaW5lIC5hbGVydC53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXNbZGlzYWJsZWRdLCBzZWN0aW9uLnByb21vLWxpc3RpbmcuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEuaG9sbG93LmFsZXJ0OmZvY3VzW2Rpc2FibGVkXSwgc2VjdGlvbi5wcm9tby1saXN0aW5nLTIuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEuaG9sbG93LmFsZXJ0OmZvY3VzW2Rpc2FibGVkXSB7XG4gICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2NjNGIzNztcbiAgICAgICAgICBjb2xvcjogI2NjNGIzNzsgfVxuICAuYnV0dG9uLmNsZWFyLCAud3AtYmxvY2stYnV0dG9uIC5jbGVhci53cC1ibG9jay1idXR0b25fX2xpbmssIHNlY3Rpb24ucHJvbW8tbGlzdGluZy5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5jbGVhciwgc2VjdGlvbi5wcm9tby1saXN0aW5nLTIuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEuY2xlYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICM2ODAwZDI7XG4gICAgY29sb3I6ICM2ODAwZDI7IH1cbiAgICAuYnV0dG9uLmNsZWFyLCAud3AtYmxvY2stYnV0dG9uIC5jbGVhci53cC1ibG9jay1idXR0b25fX2xpbmssIHNlY3Rpb24ucHJvbW8tbGlzdGluZy5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5jbGVhciwgc2VjdGlvbi5wcm9tby1saXN0aW5nLTIuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEuY2xlYXIsIC5idXR0b24uY2xlYXI6aG92ZXIsIC53cC1ibG9jay1idXR0b24gLmNsZWFyLndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3Zlciwgc2VjdGlvbi5wcm9tby1saXN0aW5nLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLmNsZWFyOmhvdmVyLCBzZWN0aW9uLnByb21vLWxpc3RpbmctMi5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5jbGVhcjpob3ZlciwgLmJ1dHRvbi5jbGVhcjpmb2N1cywgLndwLWJsb2NrLWJ1dHRvbiAuY2xlYXIud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzLCBzZWN0aW9uLnByb21vLWxpc3RpbmcuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEuY2xlYXI6Zm9jdXMsIHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLmNsZWFyOmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gICAgLmJ1dHRvbi5jbGVhci5kaXNhYmxlZCwgLndwLWJsb2NrLWJ1dHRvbiAuY2xlYXIuZGlzYWJsZWQud3AtYmxvY2stYnV0dG9uX19saW5rLCBzZWN0aW9uLnByb21vLWxpc3RpbmcuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEuY2xlYXIuZGlzYWJsZWQsIHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLmNsZWFyLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLmRpc2FibGVkOmhvdmVyLCAud3AtYmxvY2stYnV0dG9uIC5jbGVhci5kaXNhYmxlZC53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIsIHNlY3Rpb24ucHJvbW8tbGlzdGluZy5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5jbGVhci5kaXNhYmxlZDpob3Zlciwgc2VjdGlvbi5wcm9tby1saXN0aW5nLTIuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEuY2xlYXIuZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24uY2xlYXIuZGlzYWJsZWQ6Zm9jdXMsIC53cC1ibG9jay1idXR0b24gLmNsZWFyLmRpc2FibGVkLndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1cywgc2VjdGlvbi5wcm9tby1saXN0aW5nLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLmNsZWFyLmRpc2FibGVkOmZvY3VzLCBzZWN0aW9uLnByb21vLWxpc3RpbmctMi5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5jbGVhci5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi5jbGVhcltkaXNhYmxlZF0sIC53cC1ibG9jay1idXR0b24gLmNsZWFyLndwLWJsb2NrLWJ1dHRvbl9fbGlua1tkaXNhYmxlZF0sIHNlY3Rpb24ucHJvbW8tbGlzdGluZy5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5jbGVhcltkaXNhYmxlZF0sIHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLmNsZWFyW2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhcltkaXNhYmxlZF06aG92ZXIsIC53cC1ibG9jay1idXR0b24gLmNsZWFyLndwLWJsb2NrLWJ1dHRvbl9fbGlua1tkaXNhYmxlZF06aG92ZXIsIHNlY3Rpb24ucHJvbW8tbGlzdGluZy5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5jbGVhcltkaXNhYmxlZF06aG92ZXIsIHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLmNsZWFyW2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi5jbGVhcltkaXNhYmxlZF06Zm9jdXMsIC53cC1ibG9jay1idXR0b24gLmNsZWFyLndwLWJsb2NrLWJ1dHRvbl9fbGlua1tkaXNhYmxlZF06Zm9jdXMsIHNlY3Rpb24ucHJvbW8tbGlzdGluZy5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5jbGVhcltkaXNhYmxlZF06Zm9jdXMsIHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLmNsZWFyW2Rpc2FibGVkXTpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAgIC5idXR0b24uY2xlYXI6aG92ZXIsIC53cC1ibG9jay1idXR0b24gLmNsZWFyLndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3Zlciwgc2VjdGlvbi5wcm9tby1saXN0aW5nLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLmNsZWFyOmhvdmVyLCBzZWN0aW9uLnByb21vLWxpc3RpbmctMi5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5jbGVhcjpob3ZlciwgLmJ1dHRvbi5jbGVhcjpmb2N1cywgLndwLWJsb2NrLWJ1dHRvbiAuY2xlYXIud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzLCBzZWN0aW9uLnByb21vLWxpc3RpbmcuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEuY2xlYXI6Zm9jdXMsIHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLmNsZWFyOmZvY3VzIHtcbiAgICAgIGJvcmRlci1jb2xvcjogIzM0MDA2OTtcbiAgICAgIGNvbG9yOiAjMzQwMDY5OyB9XG4gICAgICAuYnV0dG9uLmNsZWFyOmhvdmVyLmRpc2FibGVkLCAud3AtYmxvY2stYnV0dG9uIC5jbGVhci53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIuZGlzYWJsZWQsIHNlY3Rpb24ucHJvbW8tbGlzdGluZy5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5jbGVhcjpob3Zlci5kaXNhYmxlZCwgc2VjdGlvbi5wcm9tby1saXN0aW5nLTIuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEuY2xlYXI6aG92ZXIuZGlzYWJsZWQsIC5idXR0b24uY2xlYXI6aG92ZXJbZGlzYWJsZWRdLCAud3AtYmxvY2stYnV0dG9uIC5jbGVhci53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXJbZGlzYWJsZWRdLCBzZWN0aW9uLnByb21vLWxpc3RpbmcuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEuY2xlYXI6aG92ZXJbZGlzYWJsZWRdLCBzZWN0aW9uLnByb21vLWxpc3RpbmctMi5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5jbGVhcjpob3ZlcltkaXNhYmxlZF0sIC5idXR0b24uY2xlYXI6Zm9jdXMuZGlzYWJsZWQsIC53cC1ibG9jay1idXR0b24gLmNsZWFyLndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1cy5kaXNhYmxlZCwgc2VjdGlvbi5wcm9tby1saXN0aW5nLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLmNsZWFyOmZvY3VzLmRpc2FibGVkLCBzZWN0aW9uLnByb21vLWxpc3RpbmctMi5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5jbGVhcjpmb2N1cy5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhcjpmb2N1c1tkaXNhYmxlZF0sIC53cC1ibG9jay1idXR0b24gLmNsZWFyLndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1c1tkaXNhYmxlZF0sIHNlY3Rpb24ucHJvbW8tbGlzdGluZy5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5jbGVhcjpmb2N1c1tkaXNhYmxlZF0sIHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLmNsZWFyOmZvY3VzW2Rpc2FibGVkXSB7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICM2ODAwZDI7XG4gICAgICAgIGNvbG9yOiAjNjgwMGQyOyB9XG4gICAgLmJ1dHRvbi5jbGVhciwgLndwLWJsb2NrLWJ1dHRvbiAuY2xlYXIud3AtYmxvY2stYnV0dG9uX19saW5rLCBzZWN0aW9uLnByb21vLWxpc3RpbmcuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEuY2xlYXIsIHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLmNsZWFyLCAuYnV0dG9uLmNsZWFyLmRpc2FibGVkLCAud3AtYmxvY2stYnV0dG9uIC5jbGVhci5kaXNhYmxlZC53cC1ibG9jay1idXR0b25fX2xpbmssIHNlY3Rpb24ucHJvbW8tbGlzdGluZy5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5jbGVhci5kaXNhYmxlZCwgc2VjdGlvbi5wcm9tby1saXN0aW5nLTIuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEuY2xlYXIuZGlzYWJsZWQsIC5idXR0b24uY2xlYXJbZGlzYWJsZWRdLCAud3AtYmxvY2stYnV0dG9uIC5jbGVhci53cC1ibG9jay1idXR0b25fX2xpbmtbZGlzYWJsZWRdLCBzZWN0aW9uLnByb21vLWxpc3RpbmcuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEuY2xlYXJbZGlzYWJsZWRdLCBzZWN0aW9uLnByb21vLWxpc3RpbmctMi5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5jbGVhcltkaXNhYmxlZF0sIC5idXR0b24uY2xlYXI6aG92ZXIsIC53cC1ibG9jay1idXR0b24gLmNsZWFyLndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3Zlciwgc2VjdGlvbi5wcm9tby1saXN0aW5nLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLmNsZWFyOmhvdmVyLCBzZWN0aW9uLnByb21vLWxpc3RpbmctMi5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5jbGVhcjpob3ZlciwgLmJ1dHRvbi5jbGVhcjpob3Zlci5kaXNhYmxlZCwgLndwLWJsb2NrLWJ1dHRvbiAuY2xlYXIud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLmRpc2FibGVkLCBzZWN0aW9uLnByb21vLWxpc3RpbmcuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEuY2xlYXI6aG92ZXIuZGlzYWJsZWQsIHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLmNsZWFyOmhvdmVyLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyOmhvdmVyW2Rpc2FibGVkXSwgLndwLWJsb2NrLWJ1dHRvbiAuY2xlYXIud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyW2Rpc2FibGVkXSwgc2VjdGlvbi5wcm9tby1saXN0aW5nLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLmNsZWFyOmhvdmVyW2Rpc2FibGVkXSwgc2VjdGlvbi5wcm9tby1saXN0aW5nLTIuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEuY2xlYXI6aG92ZXJbZGlzYWJsZWRdLCAuYnV0dG9uLmNsZWFyOmZvY3VzLCAud3AtYmxvY2stYnV0dG9uIC5jbGVhci53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXMsIHNlY3Rpb24ucHJvbW8tbGlzdGluZy5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5jbGVhcjpmb2N1cywgc2VjdGlvbi5wcm9tby1saXN0aW5nLTIuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEuY2xlYXI6Zm9jdXMsIC5idXR0b24uY2xlYXI6Zm9jdXMuZGlzYWJsZWQsIC53cC1ibG9jay1idXR0b24gLmNsZWFyLndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1cy5kaXNhYmxlZCwgc2VjdGlvbi5wcm9tby1saXN0aW5nLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLmNsZWFyOmZvY3VzLmRpc2FibGVkLCBzZWN0aW9uLnByb21vLWxpc3RpbmctMi5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5jbGVhcjpmb2N1cy5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhcjpmb2N1c1tkaXNhYmxlZF0sIC53cC1ibG9jay1idXR0b24gLmNsZWFyLndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1c1tkaXNhYmxlZF0sIHNlY3Rpb24ucHJvbW8tbGlzdGluZy5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5jbGVhcjpmb2N1c1tkaXNhYmxlZF0sIHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLmNsZWFyOmZvY3VzW2Rpc2FibGVkXSB7XG4gICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gICAgLmJ1dHRvbi5jbGVhci5wcmltYXJ5LCAud3AtYmxvY2stYnV0dG9uIC5jbGVhci5wcmltYXJ5LndwLWJsb2NrLWJ1dHRvbl9fbGluaywgc2VjdGlvbi5wcm9tby1saXN0aW5nLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLmNsZWFyLnByaW1hcnksIHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLmNsZWFyLnByaW1hcnkge1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgIzY4MDBkMjtcbiAgICAgIGNvbG9yOiAjNjgwMGQyOyB9XG4gICAgICAuYnV0dG9uLmNsZWFyLnByaW1hcnk6aG92ZXIsIC53cC1ibG9jay1idXR0b24gLmNsZWFyLnByaW1hcnkud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLCBzZWN0aW9uLnByb21vLWxpc3RpbmcuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEuY2xlYXIucHJpbWFyeTpob3Zlciwgc2VjdGlvbi5wcm9tby1saXN0aW5nLTIuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEuY2xlYXIucHJpbWFyeTpob3ZlciwgLmJ1dHRvbi5jbGVhci5wcmltYXJ5OmZvY3VzLCAud3AtYmxvY2stYnV0dG9uIC5jbGVhci5wcmltYXJ5LndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1cywgc2VjdGlvbi5wcm9tby1saXN0aW5nLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLmNsZWFyLnByaW1hcnk6Zm9jdXMsIHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLmNsZWFyLnByaW1hcnk6Zm9jdXMge1xuICAgICAgICBib3JkZXItY29sb3I6ICMzNDAwNjk7XG4gICAgICAgIGNvbG9yOiAjMzQwMDY5OyB9XG4gICAgICAgIC5idXR0b24uY2xlYXIucHJpbWFyeTpob3Zlci5kaXNhYmxlZCwgLndwLWJsb2NrLWJ1dHRvbiAuY2xlYXIucHJpbWFyeS53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIuZGlzYWJsZWQsIHNlY3Rpb24ucHJvbW8tbGlzdGluZy5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5jbGVhci5wcmltYXJ5OmhvdmVyLmRpc2FibGVkLCBzZWN0aW9uLnByb21vLWxpc3RpbmctMi5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5jbGVhci5wcmltYXJ5OmhvdmVyLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLnByaW1hcnk6aG92ZXJbZGlzYWJsZWRdLCAud3AtYmxvY2stYnV0dG9uIC5jbGVhci5wcmltYXJ5LndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3ZlcltkaXNhYmxlZF0sIHNlY3Rpb24ucHJvbW8tbGlzdGluZy5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5jbGVhci5wcmltYXJ5OmhvdmVyW2Rpc2FibGVkXSwgc2VjdGlvbi5wcm9tby1saXN0aW5nLTIuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEuY2xlYXIucHJpbWFyeTpob3ZlcltkaXNhYmxlZF0sIC5idXR0b24uY2xlYXIucHJpbWFyeTpmb2N1cy5kaXNhYmxlZCwgLndwLWJsb2NrLWJ1dHRvbiAuY2xlYXIucHJpbWFyeS53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXMuZGlzYWJsZWQsIHNlY3Rpb24ucHJvbW8tbGlzdGluZy5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5jbGVhci5wcmltYXJ5OmZvY3VzLmRpc2FibGVkLCBzZWN0aW9uLnByb21vLWxpc3RpbmctMi5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5jbGVhci5wcmltYXJ5OmZvY3VzLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLnByaW1hcnk6Zm9jdXNbZGlzYWJsZWRdLCAud3AtYmxvY2stYnV0dG9uIC5jbGVhci5wcmltYXJ5LndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1c1tkaXNhYmxlZF0sIHNlY3Rpb24ucHJvbW8tbGlzdGluZy5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5jbGVhci5wcmltYXJ5OmZvY3VzW2Rpc2FibGVkXSwgc2VjdGlvbi5wcm9tby1saXN0aW5nLTIuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEuY2xlYXIucHJpbWFyeTpmb2N1c1tkaXNhYmxlZF0ge1xuICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICM2ODAwZDI7XG4gICAgICAgICAgY29sb3I6ICM2ODAwZDI7IH1cbiAgICAgIC5idXR0b24uY2xlYXIucHJpbWFyeSwgLndwLWJsb2NrLWJ1dHRvbiAuY2xlYXIucHJpbWFyeS53cC1ibG9jay1idXR0b25fX2xpbmssIHNlY3Rpb24ucHJvbW8tbGlzdGluZy5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5jbGVhci5wcmltYXJ5LCBzZWN0aW9uLnByb21vLWxpc3RpbmctMi5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5jbGVhci5wcmltYXJ5LCAuYnV0dG9uLmNsZWFyLnByaW1hcnkuZGlzYWJsZWQsIC53cC1ibG9jay1idXR0b24gLmNsZWFyLnByaW1hcnkuZGlzYWJsZWQud3AtYmxvY2stYnV0dG9uX19saW5rLCBzZWN0aW9uLnByb21vLWxpc3RpbmcuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEuY2xlYXIucHJpbWFyeS5kaXNhYmxlZCwgc2VjdGlvbi5wcm9tby1saXN0aW5nLTIuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEuY2xlYXIucHJpbWFyeS5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5wcmltYXJ5W2Rpc2FibGVkXSwgLndwLWJsb2NrLWJ1dHRvbiAuY2xlYXIucHJpbWFyeS53cC1ibG9jay1idXR0b25fX2xpbmtbZGlzYWJsZWRdLCBzZWN0aW9uLnByb21vLWxpc3RpbmcuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEuY2xlYXIucHJpbWFyeVtkaXNhYmxlZF0sIHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLmNsZWFyLnByaW1hcnlbZGlzYWJsZWRdLCAuYnV0dG9uLmNsZWFyLnByaW1hcnk6aG92ZXIsIC53cC1ibG9jay1idXR0b24gLmNsZWFyLnByaW1hcnkud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLCBzZWN0aW9uLnByb21vLWxpc3RpbmcuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEuY2xlYXIucHJpbWFyeTpob3Zlciwgc2VjdGlvbi5wcm9tby1saXN0aW5nLTIuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEuY2xlYXIucHJpbWFyeTpob3ZlciwgLmJ1dHRvbi5jbGVhci5wcmltYXJ5OmhvdmVyLmRpc2FibGVkLCAud3AtYmxvY2stYnV0dG9uIC5jbGVhci5wcmltYXJ5LndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3Zlci5kaXNhYmxlZCwgc2VjdGlvbi5wcm9tby1saXN0aW5nLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLmNsZWFyLnByaW1hcnk6aG92ZXIuZGlzYWJsZWQsIHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLmNsZWFyLnByaW1hcnk6aG92ZXIuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIucHJpbWFyeTpob3ZlcltkaXNhYmxlZF0sIC53cC1ibG9jay1idXR0b24gLmNsZWFyLnByaW1hcnkud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyW2Rpc2FibGVkXSwgc2VjdGlvbi5wcm9tby1saXN0aW5nLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLmNsZWFyLnByaW1hcnk6aG92ZXJbZGlzYWJsZWRdLCBzZWN0aW9uLnByb21vLWxpc3RpbmctMi5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5jbGVhci5wcmltYXJ5OmhvdmVyW2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhci5wcmltYXJ5OmZvY3VzLCAud3AtYmxvY2stYnV0dG9uIC5jbGVhci5wcmltYXJ5LndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1cywgc2VjdGlvbi5wcm9tby1saXN0aW5nLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLmNsZWFyLnByaW1hcnk6Zm9jdXMsIHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLmNsZWFyLnByaW1hcnk6Zm9jdXMsIC5idXR0b24uY2xlYXIucHJpbWFyeTpmb2N1cy5kaXNhYmxlZCwgLndwLWJsb2NrLWJ1dHRvbiAuY2xlYXIucHJpbWFyeS53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXMuZGlzYWJsZWQsIHNlY3Rpb24ucHJvbW8tbGlzdGluZy5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5jbGVhci5wcmltYXJ5OmZvY3VzLmRpc2FibGVkLCBzZWN0aW9uLnByb21vLWxpc3RpbmctMi5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5jbGVhci5wcmltYXJ5OmZvY3VzLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLnByaW1hcnk6Zm9jdXNbZGlzYWJsZWRdLCAud3AtYmxvY2stYnV0dG9uIC5jbGVhci5wcmltYXJ5LndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1c1tkaXNhYmxlZF0sIHNlY3Rpb24ucHJvbW8tbGlzdGluZy5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5jbGVhci5wcmltYXJ5OmZvY3VzW2Rpc2FibGVkXSwgc2VjdGlvbi5wcm9tby1saXN0aW5nLTIuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEuY2xlYXIucHJpbWFyeTpmb2N1c1tkaXNhYmxlZF0ge1xuICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gICAgLmJ1dHRvbi5jbGVhci5zZWNvbmRhcnksIC53cC1ibG9jay1idXR0b24gLmNsZWFyLnNlY29uZGFyeS53cC1ibG9jay1idXR0b25fX2xpbmssIHNlY3Rpb24ucHJvbW8tbGlzdGluZy5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5jbGVhci5zZWNvbmRhcnksIHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLmNsZWFyLnNlY29uZGFyeSB7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAjZmJlMjAwO1xuICAgICAgY29sb3I6ICNmYmUyMDA7IH1cbiAgICAgIC5idXR0b24uY2xlYXIuc2Vjb25kYXJ5OmhvdmVyLCAud3AtYmxvY2stYnV0dG9uIC5jbGVhci5zZWNvbmRhcnkud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLCBzZWN0aW9uLnByb21vLWxpc3RpbmcuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEuY2xlYXIuc2Vjb25kYXJ5OmhvdmVyLCBzZWN0aW9uLnByb21vLWxpc3RpbmctMi5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5jbGVhci5zZWNvbmRhcnk6aG92ZXIsIC5idXR0b24uY2xlYXIuc2Vjb25kYXJ5OmZvY3VzLCAud3AtYmxvY2stYnV0dG9uIC5jbGVhci5zZWNvbmRhcnkud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzLCBzZWN0aW9uLnByb21vLWxpc3RpbmcuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEuY2xlYXIuc2Vjb25kYXJ5OmZvY3VzLCBzZWN0aW9uLnByb21vLWxpc3RpbmctMi5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5jbGVhci5zZWNvbmRhcnk6Zm9jdXMge1xuICAgICAgICBib3JkZXItY29sb3I6ICM3ZTcxMDA7XG4gICAgICAgIGNvbG9yOiAjN2U3MTAwOyB9XG4gICAgICAgIC5idXR0b24uY2xlYXIuc2Vjb25kYXJ5OmhvdmVyLmRpc2FibGVkLCAud3AtYmxvY2stYnV0dG9uIC5jbGVhci5zZWNvbmRhcnkud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLmRpc2FibGVkLCBzZWN0aW9uLnByb21vLWxpc3RpbmcuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEuY2xlYXIuc2Vjb25kYXJ5OmhvdmVyLmRpc2FibGVkLCBzZWN0aW9uLnByb21vLWxpc3RpbmctMi5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5jbGVhci5zZWNvbmRhcnk6aG92ZXIuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIuc2Vjb25kYXJ5OmhvdmVyW2Rpc2FibGVkXSwgLndwLWJsb2NrLWJ1dHRvbiAuY2xlYXIuc2Vjb25kYXJ5LndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3ZlcltkaXNhYmxlZF0sIHNlY3Rpb24ucHJvbW8tbGlzdGluZy5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5jbGVhci5zZWNvbmRhcnk6aG92ZXJbZGlzYWJsZWRdLCBzZWN0aW9uLnByb21vLWxpc3RpbmctMi5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5jbGVhci5zZWNvbmRhcnk6aG92ZXJbZGlzYWJsZWRdLCAuYnV0dG9uLmNsZWFyLnNlY29uZGFyeTpmb2N1cy5kaXNhYmxlZCwgLndwLWJsb2NrLWJ1dHRvbiAuY2xlYXIuc2Vjb25kYXJ5LndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1cy5kaXNhYmxlZCwgc2VjdGlvbi5wcm9tby1saXN0aW5nLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLmNsZWFyLnNlY29uZGFyeTpmb2N1cy5kaXNhYmxlZCwgc2VjdGlvbi5wcm9tby1saXN0aW5nLTIuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEuY2xlYXIuc2Vjb25kYXJ5OmZvY3VzLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLnNlY29uZGFyeTpmb2N1c1tkaXNhYmxlZF0sIC53cC1ibG9jay1idXR0b24gLmNsZWFyLnNlY29uZGFyeS53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXNbZGlzYWJsZWRdLCBzZWN0aW9uLnByb21vLWxpc3RpbmcuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEuY2xlYXIuc2Vjb25kYXJ5OmZvY3VzW2Rpc2FibGVkXSwgc2VjdGlvbi5wcm9tby1saXN0aW5nLTIuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEuY2xlYXIuc2Vjb25kYXJ5OmZvY3VzW2Rpc2FibGVkXSB7XG4gICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2ZiZTIwMDtcbiAgICAgICAgICBjb2xvcjogI2ZiZTIwMDsgfVxuICAgICAgLmJ1dHRvbi5jbGVhci5zZWNvbmRhcnksIC53cC1ibG9jay1idXR0b24gLmNsZWFyLnNlY29uZGFyeS53cC1ibG9jay1idXR0b25fX2xpbmssIHNlY3Rpb24ucHJvbW8tbGlzdGluZy5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5jbGVhci5zZWNvbmRhcnksIHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLmNsZWFyLnNlY29uZGFyeSwgLmJ1dHRvbi5jbGVhci5zZWNvbmRhcnkuZGlzYWJsZWQsIC53cC1ibG9jay1idXR0b24gLmNsZWFyLnNlY29uZGFyeS5kaXNhYmxlZC53cC1ibG9jay1idXR0b25fX2xpbmssIHNlY3Rpb24ucHJvbW8tbGlzdGluZy5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5jbGVhci5zZWNvbmRhcnkuZGlzYWJsZWQsIHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLmNsZWFyLnNlY29uZGFyeS5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5zZWNvbmRhcnlbZGlzYWJsZWRdLCAud3AtYmxvY2stYnV0dG9uIC5jbGVhci5zZWNvbmRhcnkud3AtYmxvY2stYnV0dG9uX19saW5rW2Rpc2FibGVkXSwgc2VjdGlvbi5wcm9tby1saXN0aW5nLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLmNsZWFyLnNlY29uZGFyeVtkaXNhYmxlZF0sIHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLmNsZWFyLnNlY29uZGFyeVtkaXNhYmxlZF0sIC5idXR0b24uY2xlYXIuc2Vjb25kYXJ5OmhvdmVyLCAud3AtYmxvY2stYnV0dG9uIC5jbGVhci5zZWNvbmRhcnkud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLCBzZWN0aW9uLnByb21vLWxpc3RpbmcuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEuY2xlYXIuc2Vjb25kYXJ5OmhvdmVyLCBzZWN0aW9uLnByb21vLWxpc3RpbmctMi5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5jbGVhci5zZWNvbmRhcnk6aG92ZXIsIC5idXR0b24uY2xlYXIuc2Vjb25kYXJ5OmhvdmVyLmRpc2FibGVkLCAud3AtYmxvY2stYnV0dG9uIC5jbGVhci5zZWNvbmRhcnkud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLmRpc2FibGVkLCBzZWN0aW9uLnByb21vLWxpc3RpbmcuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEuY2xlYXIuc2Vjb25kYXJ5OmhvdmVyLmRpc2FibGVkLCBzZWN0aW9uLnByb21vLWxpc3RpbmctMi5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5jbGVhci5zZWNvbmRhcnk6aG92ZXIuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIuc2Vjb25kYXJ5OmhvdmVyW2Rpc2FibGVkXSwgLndwLWJsb2NrLWJ1dHRvbiAuY2xlYXIuc2Vjb25kYXJ5LndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3ZlcltkaXNhYmxlZF0sIHNlY3Rpb24ucHJvbW8tbGlzdGluZy5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5jbGVhci5zZWNvbmRhcnk6aG92ZXJbZGlzYWJsZWRdLCBzZWN0aW9uLnByb21vLWxpc3RpbmctMi5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5jbGVhci5zZWNvbmRhcnk6aG92ZXJbZGlzYWJsZWRdLCAuYnV0dG9uLmNsZWFyLnNlY29uZGFyeTpmb2N1cywgLndwLWJsb2NrLWJ1dHRvbiAuY2xlYXIuc2Vjb25kYXJ5LndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1cywgc2VjdGlvbi5wcm9tby1saXN0aW5nLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLmNsZWFyLnNlY29uZGFyeTpmb2N1cywgc2VjdGlvbi5wcm9tby1saXN0aW5nLTIuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEuY2xlYXIuc2Vjb25kYXJ5OmZvY3VzLCAuYnV0dG9uLmNsZWFyLnNlY29uZGFyeTpmb2N1cy5kaXNhYmxlZCwgLndwLWJsb2NrLWJ1dHRvbiAuY2xlYXIuc2Vjb25kYXJ5LndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1cy5kaXNhYmxlZCwgc2VjdGlvbi5wcm9tby1saXN0aW5nLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLmNsZWFyLnNlY29uZGFyeTpmb2N1cy5kaXNhYmxlZCwgc2VjdGlvbi5wcm9tby1saXN0aW5nLTIuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEuY2xlYXIuc2Vjb25kYXJ5OmZvY3VzLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLnNlY29uZGFyeTpmb2N1c1tkaXNhYmxlZF0sIC53cC1ibG9jay1idXR0b24gLmNsZWFyLnNlY29uZGFyeS53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXNbZGlzYWJsZWRdLCBzZWN0aW9uLnByb21vLWxpc3RpbmcuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEuY2xlYXIuc2Vjb25kYXJ5OmZvY3VzW2Rpc2FibGVkXSwgc2VjdGlvbi5wcm9tby1saXN0aW5nLTIuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEuY2xlYXIuc2Vjb25kYXJ5OmZvY3VzW2Rpc2FibGVkXSB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgICAuYnV0dG9uLmNsZWFyLnN1Y2Nlc3MsIC53cC1ibG9jay1idXR0b24gLmNsZWFyLnN1Y2Nlc3Mud3AtYmxvY2stYnV0dG9uX19saW5rLCBzZWN0aW9uLnByb21vLWxpc3RpbmcuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEuY2xlYXIuc3VjY2Vzcywgc2VjdGlvbi5wcm9tby1saXN0aW5nLTIuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEuY2xlYXIuc3VjY2VzcyB7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAjM2FkYjc2O1xuICAgICAgY29sb3I6ICMzYWRiNzY7IH1cbiAgICAgIC5idXR0b24uY2xlYXIuc3VjY2Vzczpob3ZlciwgLndwLWJsb2NrLWJ1dHRvbiAuY2xlYXIuc3VjY2Vzcy53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIsIHNlY3Rpb24ucHJvbW8tbGlzdGluZy5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5jbGVhci5zdWNjZXNzOmhvdmVyLCBzZWN0aW9uLnByb21vLWxpc3RpbmctMi5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5jbGVhci5zdWNjZXNzOmhvdmVyLCAuYnV0dG9uLmNsZWFyLnN1Y2Nlc3M6Zm9jdXMsIC53cC1ibG9jay1idXR0b24gLmNsZWFyLnN1Y2Nlc3Mud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzLCBzZWN0aW9uLnByb21vLWxpc3RpbmcuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEuY2xlYXIuc3VjY2Vzczpmb2N1cywgc2VjdGlvbi5wcm9tby1saXN0aW5nLTIuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEuY2xlYXIuc3VjY2Vzczpmb2N1cyB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogIzE1NzUzOTtcbiAgICAgICAgY29sb3I6ICMxNTc1Mzk7IH1cbiAgICAgICAgLmJ1dHRvbi5jbGVhci5zdWNjZXNzOmhvdmVyLmRpc2FibGVkLCAud3AtYmxvY2stYnV0dG9uIC5jbGVhci5zdWNjZXNzLndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3Zlci5kaXNhYmxlZCwgc2VjdGlvbi5wcm9tby1saXN0aW5nLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLmNsZWFyLnN1Y2Nlc3M6aG92ZXIuZGlzYWJsZWQsIHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLmNsZWFyLnN1Y2Nlc3M6aG92ZXIuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIuc3VjY2Vzczpob3ZlcltkaXNhYmxlZF0sIC53cC1ibG9jay1idXR0b24gLmNsZWFyLnN1Y2Nlc3Mud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyW2Rpc2FibGVkXSwgc2VjdGlvbi5wcm9tby1saXN0aW5nLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLmNsZWFyLnN1Y2Nlc3M6aG92ZXJbZGlzYWJsZWRdLCBzZWN0aW9uLnByb21vLWxpc3RpbmctMi5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5jbGVhci5zdWNjZXNzOmhvdmVyW2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhci5zdWNjZXNzOmZvY3VzLmRpc2FibGVkLCAud3AtYmxvY2stYnV0dG9uIC5jbGVhci5zdWNjZXNzLndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1cy5kaXNhYmxlZCwgc2VjdGlvbi5wcm9tby1saXN0aW5nLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLmNsZWFyLnN1Y2Nlc3M6Zm9jdXMuZGlzYWJsZWQsIHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLmNsZWFyLnN1Y2Nlc3M6Zm9jdXMuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIuc3VjY2Vzczpmb2N1c1tkaXNhYmxlZF0sIC53cC1ibG9jay1idXR0b24gLmNsZWFyLnN1Y2Nlc3Mud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzW2Rpc2FibGVkXSwgc2VjdGlvbi5wcm9tby1saXN0aW5nLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLmNsZWFyLnN1Y2Nlc3M6Zm9jdXNbZGlzYWJsZWRdLCBzZWN0aW9uLnByb21vLWxpc3RpbmctMi5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5jbGVhci5zdWNjZXNzOmZvY3VzW2Rpc2FibGVkXSB7XG4gICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgIzNhZGI3NjtcbiAgICAgICAgICBjb2xvcjogIzNhZGI3NjsgfVxuICAgICAgLmJ1dHRvbi5jbGVhci5zdWNjZXNzLCAud3AtYmxvY2stYnV0dG9uIC5jbGVhci5zdWNjZXNzLndwLWJsb2NrLWJ1dHRvbl9fbGluaywgc2VjdGlvbi5wcm9tby1saXN0aW5nLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLmNsZWFyLnN1Y2Nlc3MsIHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLmNsZWFyLnN1Y2Nlc3MsIC5idXR0b24uY2xlYXIuc3VjY2Vzcy5kaXNhYmxlZCwgLndwLWJsb2NrLWJ1dHRvbiAuY2xlYXIuc3VjY2Vzcy5kaXNhYmxlZC53cC1ibG9jay1idXR0b25fX2xpbmssIHNlY3Rpb24ucHJvbW8tbGlzdGluZy5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5jbGVhci5zdWNjZXNzLmRpc2FibGVkLCBzZWN0aW9uLnByb21vLWxpc3RpbmctMi5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5jbGVhci5zdWNjZXNzLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLnN1Y2Nlc3NbZGlzYWJsZWRdLCAud3AtYmxvY2stYnV0dG9uIC5jbGVhci5zdWNjZXNzLndwLWJsb2NrLWJ1dHRvbl9fbGlua1tkaXNhYmxlZF0sIHNlY3Rpb24ucHJvbW8tbGlzdGluZy5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5jbGVhci5zdWNjZXNzW2Rpc2FibGVkXSwgc2VjdGlvbi5wcm9tby1saXN0aW5nLTIuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEuY2xlYXIuc3VjY2Vzc1tkaXNhYmxlZF0sIC5idXR0b24uY2xlYXIuc3VjY2Vzczpob3ZlciwgLndwLWJsb2NrLWJ1dHRvbiAuY2xlYXIuc3VjY2Vzcy53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIsIHNlY3Rpb24ucHJvbW8tbGlzdGluZy5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5jbGVhci5zdWNjZXNzOmhvdmVyLCBzZWN0aW9uLnByb21vLWxpc3RpbmctMi5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5jbGVhci5zdWNjZXNzOmhvdmVyLCAuYnV0dG9uLmNsZWFyLnN1Y2Nlc3M6aG92ZXIuZGlzYWJsZWQsIC53cC1ibG9jay1idXR0b24gLmNsZWFyLnN1Y2Nlc3Mud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLmRpc2FibGVkLCBzZWN0aW9uLnByb21vLWxpc3RpbmcuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEuY2xlYXIuc3VjY2Vzczpob3Zlci5kaXNhYmxlZCwgc2VjdGlvbi5wcm9tby1saXN0aW5nLTIuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEuY2xlYXIuc3VjY2Vzczpob3Zlci5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5zdWNjZXNzOmhvdmVyW2Rpc2FibGVkXSwgLndwLWJsb2NrLWJ1dHRvbiAuY2xlYXIuc3VjY2Vzcy53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXJbZGlzYWJsZWRdLCBzZWN0aW9uLnByb21vLWxpc3RpbmcuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEuY2xlYXIuc3VjY2Vzczpob3ZlcltkaXNhYmxlZF0sIHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLmNsZWFyLnN1Y2Nlc3M6aG92ZXJbZGlzYWJsZWRdLCAuYnV0dG9uLmNsZWFyLnN1Y2Nlc3M6Zm9jdXMsIC53cC1ibG9jay1idXR0b24gLmNsZWFyLnN1Y2Nlc3Mud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzLCBzZWN0aW9uLnByb21vLWxpc3RpbmcuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEuY2xlYXIuc3VjY2Vzczpmb2N1cywgc2VjdGlvbi5wcm9tby1saXN0aW5nLTIuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEuY2xlYXIuc3VjY2Vzczpmb2N1cywgLmJ1dHRvbi5jbGVhci5zdWNjZXNzOmZvY3VzLmRpc2FibGVkLCAud3AtYmxvY2stYnV0dG9uIC5jbGVhci5zdWNjZXNzLndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1cy5kaXNhYmxlZCwgc2VjdGlvbi5wcm9tby1saXN0aW5nLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLmNsZWFyLnN1Y2Nlc3M6Zm9jdXMuZGlzYWJsZWQsIHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLmNsZWFyLnN1Y2Nlc3M6Zm9jdXMuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIuc3VjY2Vzczpmb2N1c1tkaXNhYmxlZF0sIC53cC1ibG9jay1idXR0b24gLmNsZWFyLnN1Y2Nlc3Mud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzW2Rpc2FibGVkXSwgc2VjdGlvbi5wcm9tby1saXN0aW5nLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLmNsZWFyLnN1Y2Nlc3M6Zm9jdXNbZGlzYWJsZWRdLCBzZWN0aW9uLnByb21vLWxpc3RpbmctMi5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5jbGVhci5zdWNjZXNzOmZvY3VzW2Rpc2FibGVkXSB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgICAuYnV0dG9uLmNsZWFyLndhcm5pbmcsIC53cC1ibG9jay1idXR0b24gLmNsZWFyLndhcm5pbmcud3AtYmxvY2stYnV0dG9uX19saW5rLCBzZWN0aW9uLnByb21vLWxpc3RpbmcuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEuY2xlYXIud2FybmluZywgc2VjdGlvbi5wcm9tby1saXN0aW5nLTIuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEuY2xlYXIud2FybmluZyB7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAjZmZhZTAwO1xuICAgICAgY29sb3I6ICNmZmFlMDA7IH1cbiAgICAgIC5idXR0b24uY2xlYXIud2FybmluZzpob3ZlciwgLndwLWJsb2NrLWJ1dHRvbiAuY2xlYXIud2FybmluZy53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIsIHNlY3Rpb24ucHJvbW8tbGlzdGluZy5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5jbGVhci53YXJuaW5nOmhvdmVyLCBzZWN0aW9uLnByb21vLWxpc3RpbmctMi5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5jbGVhci53YXJuaW5nOmhvdmVyLCAuYnV0dG9uLmNsZWFyLndhcm5pbmc6Zm9jdXMsIC53cC1ibG9jay1idXR0b24gLmNsZWFyLndhcm5pbmcud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzLCBzZWN0aW9uLnByb21vLWxpc3RpbmcuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEuY2xlYXIud2FybmluZzpmb2N1cywgc2VjdGlvbi5wcm9tby1saXN0aW5nLTIuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEuY2xlYXIud2FybmluZzpmb2N1cyB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogIzgwNTcwMDtcbiAgICAgICAgY29sb3I6ICM4MDU3MDA7IH1cbiAgICAgICAgLmJ1dHRvbi5jbGVhci53YXJuaW5nOmhvdmVyLmRpc2FibGVkLCAud3AtYmxvY2stYnV0dG9uIC5jbGVhci53YXJuaW5nLndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3Zlci5kaXNhYmxlZCwgc2VjdGlvbi5wcm9tby1saXN0aW5nLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLmNsZWFyLndhcm5pbmc6aG92ZXIuZGlzYWJsZWQsIHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLmNsZWFyLndhcm5pbmc6aG92ZXIuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIud2FybmluZzpob3ZlcltkaXNhYmxlZF0sIC53cC1ibG9jay1idXR0b24gLmNsZWFyLndhcm5pbmcud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyW2Rpc2FibGVkXSwgc2VjdGlvbi5wcm9tby1saXN0aW5nLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLmNsZWFyLndhcm5pbmc6aG92ZXJbZGlzYWJsZWRdLCBzZWN0aW9uLnByb21vLWxpc3RpbmctMi5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5jbGVhci53YXJuaW5nOmhvdmVyW2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhci53YXJuaW5nOmZvY3VzLmRpc2FibGVkLCAud3AtYmxvY2stYnV0dG9uIC5jbGVhci53YXJuaW5nLndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1cy5kaXNhYmxlZCwgc2VjdGlvbi5wcm9tby1saXN0aW5nLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLmNsZWFyLndhcm5pbmc6Zm9jdXMuZGlzYWJsZWQsIHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLmNsZWFyLndhcm5pbmc6Zm9jdXMuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIud2FybmluZzpmb2N1c1tkaXNhYmxlZF0sIC53cC1ibG9jay1idXR0b24gLmNsZWFyLndhcm5pbmcud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzW2Rpc2FibGVkXSwgc2VjdGlvbi5wcm9tby1saXN0aW5nLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLmNsZWFyLndhcm5pbmc6Zm9jdXNbZGlzYWJsZWRdLCBzZWN0aW9uLnByb21vLWxpc3RpbmctMi5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5jbGVhci53YXJuaW5nOmZvY3VzW2Rpc2FibGVkXSB7XG4gICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2ZmYWUwMDtcbiAgICAgICAgICBjb2xvcjogI2ZmYWUwMDsgfVxuICAgICAgLmJ1dHRvbi5jbGVhci53YXJuaW5nLCAud3AtYmxvY2stYnV0dG9uIC5jbGVhci53YXJuaW5nLndwLWJsb2NrLWJ1dHRvbl9fbGluaywgc2VjdGlvbi5wcm9tby1saXN0aW5nLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLmNsZWFyLndhcm5pbmcsIHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLmNsZWFyLndhcm5pbmcsIC5idXR0b24uY2xlYXIud2FybmluZy5kaXNhYmxlZCwgLndwLWJsb2NrLWJ1dHRvbiAuY2xlYXIud2FybmluZy5kaXNhYmxlZC53cC1ibG9jay1idXR0b25fX2xpbmssIHNlY3Rpb24ucHJvbW8tbGlzdGluZy5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5jbGVhci53YXJuaW5nLmRpc2FibGVkLCBzZWN0aW9uLnByb21vLWxpc3RpbmctMi5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5jbGVhci53YXJuaW5nLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLndhcm5pbmdbZGlzYWJsZWRdLCAud3AtYmxvY2stYnV0dG9uIC5jbGVhci53YXJuaW5nLndwLWJsb2NrLWJ1dHRvbl9fbGlua1tkaXNhYmxlZF0sIHNlY3Rpb24ucHJvbW8tbGlzdGluZy5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5jbGVhci53YXJuaW5nW2Rpc2FibGVkXSwgc2VjdGlvbi5wcm9tby1saXN0aW5nLTIuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEuY2xlYXIud2FybmluZ1tkaXNhYmxlZF0sIC5idXR0b24uY2xlYXIud2FybmluZzpob3ZlciwgLndwLWJsb2NrLWJ1dHRvbiAuY2xlYXIud2FybmluZy53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIsIHNlY3Rpb24ucHJvbW8tbGlzdGluZy5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5jbGVhci53YXJuaW5nOmhvdmVyLCBzZWN0aW9uLnByb21vLWxpc3RpbmctMi5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5jbGVhci53YXJuaW5nOmhvdmVyLCAuYnV0dG9uLmNsZWFyLndhcm5pbmc6aG92ZXIuZGlzYWJsZWQsIC53cC1ibG9jay1idXR0b24gLmNsZWFyLndhcm5pbmcud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLmRpc2FibGVkLCBzZWN0aW9uLnByb21vLWxpc3RpbmcuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEuY2xlYXIud2FybmluZzpob3Zlci5kaXNhYmxlZCwgc2VjdGlvbi5wcm9tby1saXN0aW5nLTIuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEuY2xlYXIud2FybmluZzpob3Zlci5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci53YXJuaW5nOmhvdmVyW2Rpc2FibGVkXSwgLndwLWJsb2NrLWJ1dHRvbiAuY2xlYXIud2FybmluZy53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXJbZGlzYWJsZWRdLCBzZWN0aW9uLnByb21vLWxpc3RpbmcuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEuY2xlYXIud2FybmluZzpob3ZlcltkaXNhYmxlZF0sIHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLmNsZWFyLndhcm5pbmc6aG92ZXJbZGlzYWJsZWRdLCAuYnV0dG9uLmNsZWFyLndhcm5pbmc6Zm9jdXMsIC53cC1ibG9jay1idXR0b24gLmNsZWFyLndhcm5pbmcud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzLCBzZWN0aW9uLnByb21vLWxpc3RpbmcuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEuY2xlYXIud2FybmluZzpmb2N1cywgc2VjdGlvbi5wcm9tby1saXN0aW5nLTIuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEuY2xlYXIud2FybmluZzpmb2N1cywgLmJ1dHRvbi5jbGVhci53YXJuaW5nOmZvY3VzLmRpc2FibGVkLCAud3AtYmxvY2stYnV0dG9uIC5jbGVhci53YXJuaW5nLndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1cy5kaXNhYmxlZCwgc2VjdGlvbi5wcm9tby1saXN0aW5nLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLmNsZWFyLndhcm5pbmc6Zm9jdXMuZGlzYWJsZWQsIHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLmNsZWFyLndhcm5pbmc6Zm9jdXMuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIud2FybmluZzpmb2N1c1tkaXNhYmxlZF0sIC53cC1ibG9jay1idXR0b24gLmNsZWFyLndhcm5pbmcud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzW2Rpc2FibGVkXSwgc2VjdGlvbi5wcm9tby1saXN0aW5nLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLmNsZWFyLndhcm5pbmc6Zm9jdXNbZGlzYWJsZWRdLCBzZWN0aW9uLnByb21vLWxpc3RpbmctMi5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5jbGVhci53YXJuaW5nOmZvY3VzW2Rpc2FibGVkXSB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgICAuYnV0dG9uLmNsZWFyLmFsZXJ0LCAud3AtYmxvY2stYnV0dG9uIC5jbGVhci5hbGVydC53cC1ibG9jay1idXR0b25fX2xpbmssIHNlY3Rpb24ucHJvbW8tbGlzdGluZy5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5jbGVhci5hbGVydCwgc2VjdGlvbi5wcm9tby1saXN0aW5nLTIuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEuY2xlYXIuYWxlcnQge1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgI2NjNGIzNztcbiAgICAgIGNvbG9yOiAjY2M0YjM3OyB9XG4gICAgICAuYnV0dG9uLmNsZWFyLmFsZXJ0OmhvdmVyLCAud3AtYmxvY2stYnV0dG9uIC5jbGVhci5hbGVydC53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIsIHNlY3Rpb24ucHJvbW8tbGlzdGluZy5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5jbGVhci5hbGVydDpob3Zlciwgc2VjdGlvbi5wcm9tby1saXN0aW5nLTIuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEuY2xlYXIuYWxlcnQ6aG92ZXIsIC5idXR0b24uY2xlYXIuYWxlcnQ6Zm9jdXMsIC53cC1ibG9jay1idXR0b24gLmNsZWFyLmFsZXJ0LndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1cywgc2VjdGlvbi5wcm9tby1saXN0aW5nLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLmNsZWFyLmFsZXJ0OmZvY3VzLCBzZWN0aW9uLnByb21vLWxpc3RpbmctMi5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5jbGVhci5hbGVydDpmb2N1cyB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogIzY3MjUxYTtcbiAgICAgICAgY29sb3I6ICM2NzI1MWE7IH1cbiAgICAgICAgLmJ1dHRvbi5jbGVhci5hbGVydDpob3Zlci5kaXNhYmxlZCwgLndwLWJsb2NrLWJ1dHRvbiAuY2xlYXIuYWxlcnQud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLmRpc2FibGVkLCBzZWN0aW9uLnByb21vLWxpc3RpbmcuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEuY2xlYXIuYWxlcnQ6aG92ZXIuZGlzYWJsZWQsIHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLmNsZWFyLmFsZXJ0OmhvdmVyLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLmFsZXJ0OmhvdmVyW2Rpc2FibGVkXSwgLndwLWJsb2NrLWJ1dHRvbiAuY2xlYXIuYWxlcnQud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyW2Rpc2FibGVkXSwgc2VjdGlvbi5wcm9tby1saXN0aW5nLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLmNsZWFyLmFsZXJ0OmhvdmVyW2Rpc2FibGVkXSwgc2VjdGlvbi5wcm9tby1saXN0aW5nLTIuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEuY2xlYXIuYWxlcnQ6aG92ZXJbZGlzYWJsZWRdLCAuYnV0dG9uLmNsZWFyLmFsZXJ0OmZvY3VzLmRpc2FibGVkLCAud3AtYmxvY2stYnV0dG9uIC5jbGVhci5hbGVydC53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXMuZGlzYWJsZWQsIHNlY3Rpb24ucHJvbW8tbGlzdGluZy5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5jbGVhci5hbGVydDpmb2N1cy5kaXNhYmxlZCwgc2VjdGlvbi5wcm9tby1saXN0aW5nLTIuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEuY2xlYXIuYWxlcnQ6Zm9jdXMuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIuYWxlcnQ6Zm9jdXNbZGlzYWJsZWRdLCAud3AtYmxvY2stYnV0dG9uIC5jbGVhci5hbGVydC53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXNbZGlzYWJsZWRdLCBzZWN0aW9uLnByb21vLWxpc3RpbmcuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEuY2xlYXIuYWxlcnQ6Zm9jdXNbZGlzYWJsZWRdLCBzZWN0aW9uLnByb21vLWxpc3RpbmctMi5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5jbGVhci5hbGVydDpmb2N1c1tkaXNhYmxlZF0ge1xuICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNjYzRiMzc7XG4gICAgICAgICAgY29sb3I6ICNjYzRiMzc7IH1cbiAgICAgIC5idXR0b24uY2xlYXIuYWxlcnQsIC53cC1ibG9jay1idXR0b24gLmNsZWFyLmFsZXJ0LndwLWJsb2NrLWJ1dHRvbl9fbGluaywgc2VjdGlvbi5wcm9tby1saXN0aW5nLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLmNsZWFyLmFsZXJ0LCBzZWN0aW9uLnByb21vLWxpc3RpbmctMi5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5jbGVhci5hbGVydCwgLmJ1dHRvbi5jbGVhci5hbGVydC5kaXNhYmxlZCwgLndwLWJsb2NrLWJ1dHRvbiAuY2xlYXIuYWxlcnQuZGlzYWJsZWQud3AtYmxvY2stYnV0dG9uX19saW5rLCBzZWN0aW9uLnByb21vLWxpc3RpbmcuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEuY2xlYXIuYWxlcnQuZGlzYWJsZWQsIHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLmNsZWFyLmFsZXJ0LmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLmFsZXJ0W2Rpc2FibGVkXSwgLndwLWJsb2NrLWJ1dHRvbiAuY2xlYXIuYWxlcnQud3AtYmxvY2stYnV0dG9uX19saW5rW2Rpc2FibGVkXSwgc2VjdGlvbi5wcm9tby1saXN0aW5nLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLmNsZWFyLmFsZXJ0W2Rpc2FibGVkXSwgc2VjdGlvbi5wcm9tby1saXN0aW5nLTIuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEuY2xlYXIuYWxlcnRbZGlzYWJsZWRdLCAuYnV0dG9uLmNsZWFyLmFsZXJ0OmhvdmVyLCAud3AtYmxvY2stYnV0dG9uIC5jbGVhci5hbGVydC53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIsIHNlY3Rpb24ucHJvbW8tbGlzdGluZy5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5jbGVhci5hbGVydDpob3Zlciwgc2VjdGlvbi5wcm9tby1saXN0aW5nLTIuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEuY2xlYXIuYWxlcnQ6aG92ZXIsIC5idXR0b24uY2xlYXIuYWxlcnQ6aG92ZXIuZGlzYWJsZWQsIC53cC1ibG9jay1idXR0b24gLmNsZWFyLmFsZXJ0LndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3Zlci5kaXNhYmxlZCwgc2VjdGlvbi5wcm9tby1saXN0aW5nLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLmNsZWFyLmFsZXJ0OmhvdmVyLmRpc2FibGVkLCBzZWN0aW9uLnByb21vLWxpc3RpbmctMi5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5jbGVhci5hbGVydDpob3Zlci5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5hbGVydDpob3ZlcltkaXNhYmxlZF0sIC53cC1ibG9jay1idXR0b24gLmNsZWFyLmFsZXJ0LndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3ZlcltkaXNhYmxlZF0sIHNlY3Rpb24ucHJvbW8tbGlzdGluZy5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5jbGVhci5hbGVydDpob3ZlcltkaXNhYmxlZF0sIHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLmNsZWFyLmFsZXJ0OmhvdmVyW2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhci5hbGVydDpmb2N1cywgLndwLWJsb2NrLWJ1dHRvbiAuY2xlYXIuYWxlcnQud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzLCBzZWN0aW9uLnByb21vLWxpc3RpbmcuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEuY2xlYXIuYWxlcnQ6Zm9jdXMsIHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLmNsZWFyLmFsZXJ0OmZvY3VzLCAuYnV0dG9uLmNsZWFyLmFsZXJ0OmZvY3VzLmRpc2FibGVkLCAud3AtYmxvY2stYnV0dG9uIC5jbGVhci5hbGVydC53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXMuZGlzYWJsZWQsIHNlY3Rpb24ucHJvbW8tbGlzdGluZy5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5jbGVhci5hbGVydDpmb2N1cy5kaXNhYmxlZCwgc2VjdGlvbi5wcm9tby1saXN0aW5nLTIuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEuY2xlYXIuYWxlcnQ6Zm9jdXMuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIuYWxlcnQ6Zm9jdXNbZGlzYWJsZWRdLCAud3AtYmxvY2stYnV0dG9uIC5jbGVhci5hbGVydC53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXNbZGlzYWJsZWRdLCBzZWN0aW9uLnByb21vLWxpc3RpbmcuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEuY2xlYXIuYWxlcnQ6Zm9jdXNbZGlzYWJsZWRdLCBzZWN0aW9uLnByb21vLWxpc3RpbmctMi5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5jbGVhci5hbGVydDpmb2N1c1tkaXNhYmxlZF0ge1xuICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gIC5idXR0b24uZHJvcGRvd246OmFmdGVyLCAud3AtYmxvY2stYnV0dG9uIC5kcm9wZG93bi53cC1ibG9jay1idXR0b25fX2xpbms6OmFmdGVyLCBzZWN0aW9uLnByb21vLWxpc3RpbmcuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEuZHJvcGRvd246OmFmdGVyLCBzZWN0aW9uLnByb21vLWxpc3RpbmctMi5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5kcm9wZG93bjo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXI6IGluc2V0IDAuNGVtO1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gICAgYm9yZGVyLXRvcC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiAjZmVmZWZlIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IDAuNGVtO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgbWFyZ2luLWxlZnQ6IDEuODc1cmVtOyB9XG4gIC5idXR0b24uZHJvcGRvd24uaG9sbG93OjphZnRlciwgLndwLWJsb2NrLWJ1dHRvbiAuZHJvcGRvd24uaG9sbG93LndwLWJsb2NrLWJ1dHRvbl9fbGluazo6YWZ0ZXIsIC53cC1ibG9jay1idXR0b24uaXMtc3R5bGUtb3V0bGluZSAuZHJvcGRvd24ud3AtYmxvY2stYnV0dG9uX19saW5rOjphZnRlciwgLndwLWJsb2NrLWJ1dHRvbi5pcy1zdHlsZS1vdXRsaW5lIHNlY3Rpb24ucHJvbW8tbGlzdGluZy5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5kcm9wZG93bi53cC1ibG9jay1idXR0b25fX2xpbms6OmFmdGVyLCBzZWN0aW9uLnByb21vLWxpc3RpbmcuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIC53cC1ibG9jay1idXR0b24uaXMtc3R5bGUtb3V0bGluZSBhLmRyb3Bkb3duLndwLWJsb2NrLWJ1dHRvbl9fbGluazo6YWZ0ZXIsIC53cC1ibG9jay1idXR0b24uaXMtc3R5bGUtb3V0bGluZSBzZWN0aW9uLnByb21vLWxpc3RpbmctMi5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5kcm9wZG93bi53cC1ibG9jay1idXR0b25fX2xpbms6OmFmdGVyLCBzZWN0aW9uLnByb21vLWxpc3RpbmctMi5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgLndwLWJsb2NrLWJ1dHRvbi5pcy1zdHlsZS1vdXRsaW5lIGEuZHJvcGRvd24ud3AtYmxvY2stYnV0dG9uX19saW5rOjphZnRlciwgc2VjdGlvbi5wcm9tby1saXN0aW5nLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLmRyb3Bkb3duLmhvbGxvdzo6YWZ0ZXIsIHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLmRyb3Bkb3duLmhvbGxvdzo6YWZ0ZXIsIC5idXR0b24uZHJvcGRvd24uY2xlYXI6OmFmdGVyLCAud3AtYmxvY2stYnV0dG9uIC5kcm9wZG93bi5jbGVhci53cC1ibG9jay1idXR0b25fX2xpbms6OmFmdGVyLCBzZWN0aW9uLnByb21vLWxpc3RpbmcuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEuZHJvcGRvd24uY2xlYXI6OmFmdGVyLCBzZWN0aW9uLnByb21vLWxpc3RpbmctMi5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5kcm9wZG93bi5jbGVhcjo6YWZ0ZXIge1xuICAgIGJvcmRlci10b3AtY29sb3I6ICM2ODAwZDI7IH1cbiAgLmJ1dHRvbi5kcm9wZG93bi5ob2xsb3cucHJpbWFyeTo6YWZ0ZXIsIC53cC1ibG9jay1idXR0b24gLmRyb3Bkb3duLmhvbGxvdy5wcmltYXJ5LndwLWJsb2NrLWJ1dHRvbl9fbGluazo6YWZ0ZXIsIC53cC1ibG9jay1idXR0b24uaXMtc3R5bGUtb3V0bGluZSAuZHJvcGRvd24ucHJpbWFyeS53cC1ibG9jay1idXR0b25fX2xpbms6OmFmdGVyLCBzZWN0aW9uLnByb21vLWxpc3RpbmcuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEuZHJvcGRvd24uaG9sbG93LnByaW1hcnk6OmFmdGVyLCBzZWN0aW9uLnByb21vLWxpc3RpbmctMi5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5kcm9wZG93bi5ob2xsb3cucHJpbWFyeTo6YWZ0ZXIsIC5idXR0b24uZHJvcGRvd24uY2xlYXIucHJpbWFyeTo6YWZ0ZXIsIC53cC1ibG9jay1idXR0b24gLmRyb3Bkb3duLmNsZWFyLnByaW1hcnkud3AtYmxvY2stYnV0dG9uX19saW5rOjphZnRlciwgc2VjdGlvbi5wcm9tby1saXN0aW5nLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLmRyb3Bkb3duLmNsZWFyLnByaW1hcnk6OmFmdGVyLCBzZWN0aW9uLnByb21vLWxpc3RpbmctMi5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5kcm9wZG93bi5jbGVhci5wcmltYXJ5OjphZnRlciB7XG4gICAgYm9yZGVyLXRvcC1jb2xvcjogIzY4MDBkMjsgfVxuICAuYnV0dG9uLmRyb3Bkb3duLmhvbGxvdy5zZWNvbmRhcnk6OmFmdGVyLCAud3AtYmxvY2stYnV0dG9uIC5kcm9wZG93bi5ob2xsb3cuc2Vjb25kYXJ5LndwLWJsb2NrLWJ1dHRvbl9fbGluazo6YWZ0ZXIsIC53cC1ibG9jay1idXR0b24uaXMtc3R5bGUtb3V0bGluZSAuZHJvcGRvd24uc2Vjb25kYXJ5LndwLWJsb2NrLWJ1dHRvbl9fbGluazo6YWZ0ZXIsIHNlY3Rpb24ucHJvbW8tbGlzdGluZy5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5kcm9wZG93bi5ob2xsb3cuc2Vjb25kYXJ5OjphZnRlciwgc2VjdGlvbi5wcm9tby1saXN0aW5nLTIuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEuZHJvcGRvd24uaG9sbG93LnNlY29uZGFyeTo6YWZ0ZXIsIC5idXR0b24uZHJvcGRvd24uY2xlYXIuc2Vjb25kYXJ5OjphZnRlciwgLndwLWJsb2NrLWJ1dHRvbiAuZHJvcGRvd24uY2xlYXIuc2Vjb25kYXJ5LndwLWJsb2NrLWJ1dHRvbl9fbGluazo6YWZ0ZXIsIHNlY3Rpb24ucHJvbW8tbGlzdGluZy5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5kcm9wZG93bi5jbGVhci5zZWNvbmRhcnk6OmFmdGVyLCBzZWN0aW9uLnByb21vLWxpc3RpbmctMi5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5kcm9wZG93bi5jbGVhci5zZWNvbmRhcnk6OmFmdGVyIHtcbiAgICBib3JkZXItdG9wLWNvbG9yOiAjZmJlMjAwOyB9XG4gIC5idXR0b24uZHJvcGRvd24uaG9sbG93LnN1Y2Nlc3M6OmFmdGVyLCAud3AtYmxvY2stYnV0dG9uIC5kcm9wZG93bi5ob2xsb3cuc3VjY2Vzcy53cC1ibG9jay1idXR0b25fX2xpbms6OmFmdGVyLCAud3AtYmxvY2stYnV0dG9uLmlzLXN0eWxlLW91dGxpbmUgLmRyb3Bkb3duLnN1Y2Nlc3Mud3AtYmxvY2stYnV0dG9uX19saW5rOjphZnRlciwgc2VjdGlvbi5wcm9tby1saXN0aW5nLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLmRyb3Bkb3duLmhvbGxvdy5zdWNjZXNzOjphZnRlciwgc2VjdGlvbi5wcm9tby1saXN0aW5nLTIuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEuZHJvcGRvd24uaG9sbG93LnN1Y2Nlc3M6OmFmdGVyLCAuYnV0dG9uLmRyb3Bkb3duLmNsZWFyLnN1Y2Nlc3M6OmFmdGVyLCAud3AtYmxvY2stYnV0dG9uIC5kcm9wZG93bi5jbGVhci5zdWNjZXNzLndwLWJsb2NrLWJ1dHRvbl9fbGluazo6YWZ0ZXIsIHNlY3Rpb24ucHJvbW8tbGlzdGluZy5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5kcm9wZG93bi5jbGVhci5zdWNjZXNzOjphZnRlciwgc2VjdGlvbi5wcm9tby1saXN0aW5nLTIuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEuZHJvcGRvd24uY2xlYXIuc3VjY2Vzczo6YWZ0ZXIge1xuICAgIGJvcmRlci10b3AtY29sb3I6ICMzYWRiNzY7IH1cbiAgLmJ1dHRvbi5kcm9wZG93bi5ob2xsb3cud2FybmluZzo6YWZ0ZXIsIC53cC1ibG9jay1idXR0b24gLmRyb3Bkb3duLmhvbGxvdy53YXJuaW5nLndwLWJsb2NrLWJ1dHRvbl9fbGluazo6YWZ0ZXIsIC53cC1ibG9jay1idXR0b24uaXMtc3R5bGUtb3V0bGluZSAuZHJvcGRvd24ud2FybmluZy53cC1ibG9jay1idXR0b25fX2xpbms6OmFmdGVyLCBzZWN0aW9uLnByb21vLWxpc3RpbmcuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEuZHJvcGRvd24uaG9sbG93Lndhcm5pbmc6OmFmdGVyLCBzZWN0aW9uLnByb21vLWxpc3RpbmctMi5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5kcm9wZG93bi5ob2xsb3cud2FybmluZzo6YWZ0ZXIsIC5idXR0b24uZHJvcGRvd24uY2xlYXIud2FybmluZzo6YWZ0ZXIsIC53cC1ibG9jay1idXR0b24gLmRyb3Bkb3duLmNsZWFyLndhcm5pbmcud3AtYmxvY2stYnV0dG9uX19saW5rOjphZnRlciwgc2VjdGlvbi5wcm9tby1saXN0aW5nLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLmRyb3Bkb3duLmNsZWFyLndhcm5pbmc6OmFmdGVyLCBzZWN0aW9uLnByb21vLWxpc3RpbmctMi5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5kcm9wZG93bi5jbGVhci53YXJuaW5nOjphZnRlciB7XG4gICAgYm9yZGVyLXRvcC1jb2xvcjogI2ZmYWUwMDsgfVxuICAuYnV0dG9uLmRyb3Bkb3duLmhvbGxvdy5hbGVydDo6YWZ0ZXIsIC53cC1ibG9jay1idXR0b24gLmRyb3Bkb3duLmhvbGxvdy5hbGVydC53cC1ibG9jay1idXR0b25fX2xpbms6OmFmdGVyLCAud3AtYmxvY2stYnV0dG9uLmlzLXN0eWxlLW91dGxpbmUgLmRyb3Bkb3duLmFsZXJ0LndwLWJsb2NrLWJ1dHRvbl9fbGluazo6YWZ0ZXIsIHNlY3Rpb24ucHJvbW8tbGlzdGluZy5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5kcm9wZG93bi5ob2xsb3cuYWxlcnQ6OmFmdGVyLCBzZWN0aW9uLnByb21vLWxpc3RpbmctMi5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5kcm9wZG93bi5ob2xsb3cuYWxlcnQ6OmFmdGVyLCAuYnV0dG9uLmRyb3Bkb3duLmNsZWFyLmFsZXJ0OjphZnRlciwgLndwLWJsb2NrLWJ1dHRvbiAuZHJvcGRvd24uY2xlYXIuYWxlcnQud3AtYmxvY2stYnV0dG9uX19saW5rOjphZnRlciwgc2VjdGlvbi5wcm9tby1saXN0aW5nLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLmRyb3Bkb3duLmNsZWFyLmFsZXJ0OjphZnRlciwgc2VjdGlvbi5wcm9tby1saXN0aW5nLTIuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEuZHJvcGRvd24uY2xlYXIuYWxlcnQ6OmFmdGVyIHtcbiAgICBib3JkZXItdG9wLWNvbG9yOiAjY2M0YjM3OyB9XG4gIC5idXR0b24uYXJyb3ctb25seTo6YWZ0ZXIsIC53cC1ibG9jay1idXR0b24gLmFycm93LW9ubHkud3AtYmxvY2stYnV0dG9uX19saW5rOjphZnRlciwgc2VjdGlvbi5wcm9tby1saXN0aW5nLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLmFycm93LW9ubHk6OmFmdGVyLCBzZWN0aW9uLnByb21vLWxpc3RpbmctMi5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYS5hcnJvdy1vbmx5OjphZnRlciB7XG4gICAgdG9wOiAtMC4xZW07XG4gICAgZmxvYXQ6IG5vbmU7XG4gICAgbWFyZ2luLWxlZnQ6IDA7IH1cblxuYS5idXR0b246aG92ZXIsIC53cC1ibG9jay1idXR0b24gYS53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIsIHNlY3Rpb24ucHJvbW8tbGlzdGluZy5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYTpob3Zlciwgc2VjdGlvbi5wcm9tby1saXN0aW5nLTIuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGE6aG92ZXIsIGEuYnV0dG9uOmZvY3VzLCAud3AtYmxvY2stYnV0dG9uIGEud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzLCBzZWN0aW9uLnByb21vLWxpc3RpbmcuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGE6Zm9jdXMsIHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhOmZvY3VzIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG5cblt0eXBlPSd0ZXh0J10sIFt0eXBlPSdwYXNzd29yZCddLCBbdHlwZT0nZGF0ZSddLCBbdHlwZT0nZGF0ZXRpbWUnXSwgW3R5cGU9J2RhdGV0aW1lLWxvY2FsJ10sIFt0eXBlPSdtb250aCddLCBbdHlwZT0nd2VlayddLCBbdHlwZT0nZW1haWwnXSwgW3R5cGU9J251bWJlciddLCBbdHlwZT0nc2VhcmNoJ10sIFt0eXBlPSd0ZWwnXSwgW3R5cGU9J3RpbWUnXSwgW3R5cGU9J3VybCddLCBbdHlwZT0nY29sb3InXSxcbnRleHRhcmVhIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDIuNDM3NXJlbTtcbiAgbWFyZ2luOiAwIDAgMXJlbTtcbiAgcGFkZGluZzogMC41cmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCAjY2FjYWNhO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmVmZWZlO1xuICBib3gtc2hhZG93OiBpbnNldCAwIDFweCAycHggcmdiYSgxMCwgMTAsIDEwLCAwLjEpO1xuICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBmb250LXdlaWdodDogNDAwO1xuICBsaW5lLWhlaWdodDogMS41O1xuICBjb2xvcjogIzBhMGEwYTtcbiAgdHJhbnNpdGlvbjogYm94LXNoYWRvdyAwLjVzLCBib3JkZXItY29sb3IgMC4yNXMgZWFzZS1pbi1vdXQ7XG4gIGFwcGVhcmFuY2U6IG5vbmU7IH1cbiAgW3R5cGU9J3RleHQnXTpmb2N1cywgW3R5cGU9J3Bhc3N3b3JkJ106Zm9jdXMsIFt0eXBlPSdkYXRlJ106Zm9jdXMsIFt0eXBlPSdkYXRldGltZSddOmZvY3VzLCBbdHlwZT0nZGF0ZXRpbWUtbG9jYWwnXTpmb2N1cywgW3R5cGU9J21vbnRoJ106Zm9jdXMsIFt0eXBlPSd3ZWVrJ106Zm9jdXMsIFt0eXBlPSdlbWFpbCddOmZvY3VzLCBbdHlwZT0nbnVtYmVyJ106Zm9jdXMsIFt0eXBlPSdzZWFyY2gnXTpmb2N1cywgW3R5cGU9J3RlbCddOmZvY3VzLCBbdHlwZT0ndGltZSddOmZvY3VzLCBbdHlwZT0ndXJsJ106Zm9jdXMsIFt0eXBlPSdjb2xvciddOmZvY3VzLFxuICB0ZXh0YXJlYTpmb2N1cyB7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjOGE4YThhO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZWZlZmU7XG4gICAgYm94LXNoYWRvdzogMCAwIDVweCAjY2FjYWNhO1xuICAgIHRyYW5zaXRpb246IGJveC1zaGFkb3cgMC41cywgYm9yZGVyLWNvbG9yIDAuMjVzIGVhc2UtaW4tb3V0OyB9XG5cbnRleHRhcmVhIHtcbiAgbWF4LXdpZHRoOiAxMDAlOyB9XG4gIHRleHRhcmVhW3Jvd3NdIHtcbiAgICBoZWlnaHQ6IGF1dG87IH1cblxuaW5wdXQ6ZGlzYWJsZWQsIGlucHV0W3JlYWRvbmx5XSxcbnRleHRhcmVhOmRpc2FibGVkLFxudGV4dGFyZWFbcmVhZG9ubHldIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2YyZjJmMjtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDsgfVxuXG5bdHlwZT0nc3VibWl0J10sXG5bdHlwZT0nYnV0dG9uJ10ge1xuICBhcHBlYXJhbmNlOiBub25lO1xuICBib3JkZXItcmFkaXVzOiAxLjI1cmVtOyB9XG5cbmlucHV0W3R5cGU9J3NlYXJjaCddIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDsgfVxuXG46OnBsYWNlaG9sZGVyIHtcbiAgY29sb3I6ICNjYWNhY2E7IH1cblxuW3R5cGU9J2ZpbGUnXSxcblt0eXBlPSdjaGVja2JveCddLFxuW3R5cGU9J3JhZGlvJ10ge1xuICBtYXJnaW46IDAgMCAxcmVtOyB9XG5cblt0eXBlPSdjaGVja2JveCddICsgbGFiZWwsXG5bdHlwZT0ncmFkaW8nXSArIGxhYmVsIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4gIG1hcmdpbi1sZWZ0OiAwLjVyZW07XG4gIG1hcmdpbi1yaWdodDogMXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICBbdHlwZT0nY2hlY2tib3gnXSArIGxhYmVsW2Zvcl0sXG4gIFt0eXBlPSdyYWRpbyddICsgbGFiZWxbZm9yXSB7XG4gICAgY3Vyc29yOiBwb2ludGVyOyB9XG5cbmxhYmVsID4gW3R5cGU9J2NoZWNrYm94J10sXG5sYWJlbCA+IFt0eXBlPSdyYWRpbyddIHtcbiAgbWFyZ2luLXJpZ2h0OiAwLjVyZW07IH1cblxuW3R5cGU9J2ZpbGUnXSB7XG4gIHdpZHRoOiAxMDAlOyB9XG5cbmxhYmVsIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMDtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbGluZS1oZWlnaHQ6IDEuODtcbiAgY29sb3I6ICMwYTBhMGE7IH1cbiAgbGFiZWwubWlkZGxlIHtcbiAgICBtYXJnaW46IDAgMCAxcmVtO1xuICAgIHBhZGRpbmc6IDAuNTYyNXJlbSAwOyB9XG5cbi5oZWxwLXRleHQge1xuICBtYXJnaW4tdG9wOiAtMC41cmVtO1xuICBmb250LXNpemU6IDAuODEyNXJlbTtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xuICBjb2xvcjogIzBhMGEwYTsgfVxuXG4uaW5wdXQtZ3JvdXAge1xuICBkaXNwbGF5OiBmbGV4O1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7IH1cbiAgLmlucHV0LWdyb3VwID4gOmZpcnN0LWNoaWxkLCAuaW5wdXQtZ3JvdXAgPiA6Zmlyc3QtY2hpbGQuaW5wdXQtZ3JvdXAtYnV0dG9uID4gKiB7XG4gICAgYm9yZGVyLXJhZGl1czogMCAwIDAgMDsgfVxuICAuaW5wdXQtZ3JvdXAgPiA6bGFzdC1jaGlsZCwgLmlucHV0LWdyb3VwID4gOmxhc3QtY2hpbGQuaW5wdXQtZ3JvdXAtYnV0dG9uID4gKiB7XG4gICAgYm9yZGVyLXJhZGl1czogMCAwIDAgMDsgfVxuXG4uaW5wdXQtZ3JvdXAtbGFiZWwsIC5pbnB1dC1ncm91cC1maWVsZCwgLmlucHV0LWdyb3VwLWJ1dHRvbiwgLmlucHV0LWdyb3VwLWJ1dHRvbiBhLFxuLmlucHV0LWdyb3VwLWJ1dHRvbiBpbnB1dCxcbi5pbnB1dC1ncm91cC1idXR0b24gYnV0dG9uLFxuLmlucHV0LWdyb3VwLWJ1dHRvbiBsYWJlbCB7XG4gIG1hcmdpbjogMDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgfVxuXG4uaW5wdXQtZ3JvdXAtbGFiZWwge1xuICBwYWRkaW5nOiAwIDFyZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjYWNhY2E7XG4gIGJhY2tncm91bmQ6ICNmMmYyZjI7XG4gIGNvbG9yOiAjMGEwYTBhO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXg6IDAgMCBhdXRvO1xuICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gIC5pbnB1dC1ncm91cC1sYWJlbDpmaXJzdC1jaGlsZCB7XG4gICAgYm9yZGVyLXJpZ2h0OiAwOyB9XG4gIC5pbnB1dC1ncm91cC1sYWJlbDpsYXN0LWNoaWxkIHtcbiAgICBib3JkZXItbGVmdDogMDsgfVxuXG4uaW5wdXQtZ3JvdXAtZmllbGQge1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBmbGV4OiAxIDEgMHB4O1xuICBtaW4td2lkdGg6IDA7IH1cblxuLmlucHV0LWdyb3VwLWJ1dHRvbiB7XG4gIHBhZGRpbmctdG9wOiAwO1xuICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4OiAwIDAgYXV0bzsgfVxuICAuaW5wdXQtZ3JvdXAtYnV0dG9uIGEsXG4gIC5pbnB1dC1ncm91cC1idXR0b24gaW5wdXQsXG4gIC5pbnB1dC1ncm91cC1idXR0b24gYnV0dG9uLFxuICAuaW5wdXQtZ3JvdXAtYnV0dG9uIGxhYmVsIHtcbiAgICBhbGlnbi1zZWxmOiBzdHJldGNoO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBwYWRkaW5nLXRvcDogMDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICBmb250LXNpemU6IDFyZW07IH1cblxuZmllbGRzZXQge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGJvcmRlcjogMDsgfVxuXG5sZWdlbmQge1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTsgfVxuXG4uZmllbGRzZXQge1xuICBtYXJnaW46IDEuMTI1cmVtIDA7XG4gIHBhZGRpbmc6IDEuMjVyZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjYWNhY2E7IH1cbiAgLmZpZWxkc2V0IGxlZ2VuZCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAtMC4xODc1cmVtO1xuICAgIHBhZGRpbmc6IDAgMC4xODc1cmVtOyB9XG5cbnNlbGVjdCB7XG4gIGhlaWdodDogMi40Mzc1cmVtO1xuICBtYXJnaW46IDAgMCAxcmVtO1xuICBwYWRkaW5nOiAwLjVyZW07XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjYWNhY2E7XG4gIGJvcmRlci1yYWRpdXM6IDEuMjVyZW07XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZWZlZmU7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBmb250LXNpemU6IDFyZW07XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIGNvbG9yOiAjMGEwYTBhO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7dXRmOCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZycgdmVyc2lvbj0nMS4xJyB3aWR0aD0nMzInIGhlaWdodD0nMjQnIHZpZXdCb3g9JzAgMCAzMiAyNCc+PHBvbHlnb24gcG9pbnRzPScwLDAgMzIsMCAxNiwyNCcgc3R5bGU9J2ZpbGw6IHJnYiUyODEzOCwgMTM4LCAxMzglMjknPjwvcG9seWdvbj48L3N2Zz5cIik7XG4gIGJhY2tncm91bmQtb3JpZ2luOiBjb250ZW50LWJveDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgLTFyZW0gY2VudGVyO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXNpemU6IDlweCA2cHg7XG4gIHBhZGRpbmctcmlnaHQ6IDEuNXJlbTtcbiAgdHJhbnNpdGlvbjogYm94LXNoYWRvdyAwLjVzLCBib3JkZXItY29sb3IgMC4yNXMgZWFzZS1pbi1vdXQ7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMFxcMCkge1xuICAgIHNlbGVjdCB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUNBQUFBQVlDQVlBQUFDYlUvODBBQUFBR1hSRldIUlRiMlowZDJGeVpRQkJaRzlpWlNCSmJXRm5aVkpsWVdSNWNjbGxQQUFBQUlwSlJFRlVlTnJFa2NrTmdEQU1CQmZSa0V0ME9iUkJCZHNHWFVEZ21RZks0WGhIMm04Y3pRQUF5MjdSM3RzdzRRZmUyeDh1T082b1lMYjZHbE9vcjNHRitzd1VSQU9tVUorUnd0RUpzOVd2VEdFWXhCWHFJMU1RQVpoQ2ZVUUtSekRNVmorVHdyQUlWNmp2U1VFa1lBcjFMU2tjeVRCYi9WK0tZZlg3eEFldXNxM3NMRHRHSDNrRUdBQ1BXSWZsTlpmaFJRQUFBQUJKUlU1RXJrSmdnZz09XCIpOyB9IH1cbiAgc2VsZWN0OmZvY3VzIHtcbiAgICBvdXRsaW5lOiBub25lO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICM4YThhOGE7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZlZmVmZTtcbiAgICBib3gtc2hhZG93OiAwIDAgNXB4ICNjYWNhY2E7XG4gICAgdHJhbnNpdGlvbjogYm94LXNoYWRvdyAwLjVzLCBib3JkZXItY29sb3IgMC4yNXMgZWFzZS1pbi1vdXQ7IH1cbiAgc2VsZWN0OmRpc2FibGVkIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjJmMmYyO1xuICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7IH1cbiAgc2VsZWN0OjotbXMtZXhwYW5kIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIHNlbGVjdFttdWx0aXBsZV0ge1xuICAgIGhlaWdodDogYXV0bztcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lOyB9XG5cbi5pcy1pbnZhbGlkLWlucHV0Om5vdCg6Zm9jdXMpIHtcbiAgYm9yZGVyLWNvbG9yOiAjY2M0YjM3O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjllY2VhOyB9XG4gIC5pcy1pbnZhbGlkLWlucHV0Om5vdCg6Zm9jdXMpOjpwbGFjZWhvbGRlciB7XG4gICAgY29sb3I6ICNjYzRiMzc7IH1cblxuLmlzLWludmFsaWQtbGFiZWwge1xuICBjb2xvcjogI2NjNGIzNzsgfVxuXG4uZm9ybS1lcnJvciB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIG1hcmdpbi10b3A6IC0wLjVyZW07XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgY29sb3I6ICNjYzRiMzc7IH1cbiAgLmZvcm0tZXJyb3IuaXMtdmlzaWJsZSB7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cblxuLmFjY29yZGlvbiB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lOyB9XG4gIC5hY2NvcmRpb25bZGlzYWJsZWRdIC5hY2NvcmRpb24tdGl0bGUge1xuICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7IH1cblxuLmFjY29yZGlvbi1pdGVtOmZpcnN0LWNoaWxkID4gOmZpcnN0LWNoaWxkIHtcbiAgYm9yZGVyLXJhZGl1czogMS4yNXJlbSAxLjI1cmVtIDAgMDsgfVxuXG4uYWNjb3JkaW9uLWl0ZW06bGFzdC1jaGlsZCA+IDpsYXN0LWNoaWxkIHtcbiAgYm9yZGVyLXJhZGl1czogMCAwIDEuMjVyZW0gMS4yNXJlbTsgfVxuXG4uYWNjb3JkaW9uLXRpdGxlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogMS4yNXJlbSAxcmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCAjZjJmMmYyO1xuICBib3JkZXItYm90dG9tOiAwO1xuICBmb250LXNpemU6IDAuOTM3NXJlbTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGNvbG9yOiAjNjgwMGQyOyB9XG4gIDpsYXN0LWNoaWxkOm5vdCguaXMtYWN0aXZlKSA+IC5hY2NvcmRpb24tdGl0bGUge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZjJmMmYyO1xuICAgIGJvcmRlci1yYWRpdXM6IDAgMCAxLjI1cmVtIDEuMjVyZW07IH1cbiAgLmFjY29yZGlvbi10aXRsZTpob3ZlciwgLmFjY29yZGlvbi10aXRsZTpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgLmFjY29yZGlvbi10aXRsZTo6YmVmb3JlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA1MCU7XG4gICAgcmlnaHQ6IDFyZW07XG4gICAgbWFyZ2luLXRvcDogLTAuNXJlbTtcbiAgICBjb250ZW50OiAnKyc7IH1cbiAgLmlzLWFjdGl2ZSA+IC5hY2NvcmRpb24tdGl0bGU6OmJlZm9yZSB7XG4gICAgY29udGVudDogJ1xcMjAxMyc7IH1cblxuLmFjY29yZGlvbi1jb250ZW50IHtcbiAgZGlzcGxheTogbm9uZTtcbiAgcGFkZGluZzogMXJlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgI2YyZjJmMjtcbiAgYm9yZGVyLWJvdHRvbTogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGNvbG9yOiAjMGEwYTBhOyB9XG4gIDpsYXN0LWNoaWxkID4gLmFjY29yZGlvbi1jb250ZW50Omxhc3QtY2hpbGQge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZjJmMmYyOyB9XG5cbi5jbG9zZS1idXR0b24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGNvbG9yOiAjOGE4YThhO1xuICBjdXJzb3I6IHBvaW50ZXI7IH1cbiAgW2RhdGEtd2hhdGlucHV0PSdtb3VzZSddIC5jbG9zZS1idXR0b24ge1xuICAgIG91dGxpbmU6IDA7IH1cbiAgLmNsb3NlLWJ1dHRvbjpob3ZlciwgLmNsb3NlLWJ1dHRvbjpmb2N1cyB7XG4gICAgY29sb3I6ICMwYTBhMGE7IH1cbiAgLmNsb3NlLWJ1dHRvbi5zbWFsbCB7XG4gICAgcmlnaHQ6IDAuNjZyZW07XG4gICAgdG9wOiAwLjMzZW07XG4gICAgZm9udC1zaXplOiAxLjVlbTtcbiAgICBsaW5lLWhlaWdodDogMTsgfVxuICAuY2xvc2UtYnV0dG9uLCAuY2xvc2UtYnV0dG9uLm1lZGl1bSB7XG4gICAgcmlnaHQ6IDFyZW07XG4gICAgdG9wOiAwLjVyZW07XG4gICAgZm9udC1zaXplOiAyZW07XG4gICAgbGluZS1oZWlnaHQ6IDE7IH1cblxuLm1lbnUge1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwOyB9XG4gIFtkYXRhLXdoYXRpbnB1dD0nbW91c2UnXSAubWVudSBsaSB7XG4gICAgb3V0bGluZTogMDsgfVxuICAubWVudSBhLFxuICAubWVudSAuYnV0dG9uLFxuICAubWVudSAud3AtYmxvY2stYnV0dG9uIC53cC1ibG9jay1idXR0b25fX2xpbmssXG4gIC53cC1ibG9jay1idXR0b24gLm1lbnUgLndwLWJsb2NrLWJ1dHRvbl9fbGluayxcbiAgLm1lbnUgc2VjdGlvbi5wcm9tby1saXN0aW5nLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLFxuICBzZWN0aW9uLnByb21vLWxpc3RpbmcuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIC5tZW51IGEsXG4gIC5tZW51IHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLFxuICBzZWN0aW9uLnByb21vLWxpc3RpbmctMi5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgLm1lbnUgYSB7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmc6IDAuNjI1cmVtIDAuOTM3NXJlbTsgfVxuICAubWVudSBpbnB1dCxcbiAgLm1lbnUgc2VsZWN0LFxuICAubWVudSBhLFxuICAubWVudSBidXR0b24ge1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgLm1lbnUgaW5wdXQge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICAubWVudSwgLm1lbnUuaG9yaXpvbnRhbCB7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7IH1cbiAgLm1lbnUudmVydGljYWwge1xuICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IH1cbiAgLm1lbnUuZXhwYW5kZWQgbGkge1xuICAgIGZsZXg6IDEgMSAwcHg7IH1cbiAgLm1lbnUuc2ltcGxlIHtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gICAgLm1lbnUuc2ltcGxlIGxpICsgbGkge1xuICAgICAgbWFyZ2luLWxlZnQ6IDFyZW07IH1cbiAgICAubWVudS5zaW1wbGUgYSB7XG4gICAgICBwYWRkaW5nOiAwOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLm1lbnUubWVkaXVtLWhvcml6b250YWwge1xuICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdzsgfVxuICAgIC5tZW51Lm1lZGl1bS12ZXJ0aWNhbCB7XG4gICAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IH1cbiAgICAubWVudS5tZWRpdW0tZXhwYW5kZWQgbGkge1xuICAgICAgZmxleDogMSAxIDBweDsgfVxuICAgIC5tZW51Lm1lZGl1bS1zaW1wbGUgbGkge1xuICAgICAgZmxleDogMSAxIDBweDsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLm1lbnUubGFyZ2UtaG9yaXpvbnRhbCB7XG4gICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93OyB9XG4gICAgLm1lbnUubGFyZ2UtdmVydGljYWwge1xuICAgICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9XG4gICAgLm1lbnUubGFyZ2UtZXhwYW5kZWQgbGkge1xuICAgICAgZmxleDogMSAxIDBweDsgfVxuICAgIC5tZW51LmxhcmdlLXNpbXBsZSBsaSB7XG4gICAgICBmbGV4OiAxIDEgMHB4OyB9IH1cbiAgLm1lbnUubmVzdGVkIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDFyZW07IH1cbiAgLm1lbnUuaWNvbnMgYSB7XG4gICAgZGlzcGxheTogZmxleDsgfVxuICAubWVudS5pY29uLXRvcCBhLCAubWVudS5pY29uLXJpZ2h0IGEsIC5tZW51Lmljb24tYm90dG9tIGEsIC5tZW51Lmljb24tbGVmdCBhIHtcbiAgICBkaXNwbGF5OiBmbGV4OyB9XG4gIC5tZW51Lmljb24tbGVmdCBsaSBhIHtcbiAgICBmbGV4LWZsb3c6IHJvdyBub3dyYXA7IH1cbiAgICAubWVudS5pY29uLWxlZnQgbGkgYSBpbWcsXG4gICAgLm1lbnUuaWNvbi1sZWZ0IGxpIGEgaSxcbiAgICAubWVudS5pY29uLWxlZnQgbGkgYSBzdmcge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwLjI1cmVtOyB9XG4gIC5tZW51Lmljb24tcmlnaHQgbGkgYSB7XG4gICAgZmxleC1mbG93OiByb3cgbm93cmFwOyB9XG4gICAgLm1lbnUuaWNvbi1yaWdodCBsaSBhIGltZyxcbiAgICAubWVudS5pY29uLXJpZ2h0IGxpIGEgaSxcbiAgICAubWVudS5pY29uLXJpZ2h0IGxpIGEgc3ZnIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwLjI1cmVtOyB9XG4gIC5tZW51Lmljb24tdG9wIGxpIGEge1xuICAgIGZsZXgtZmxvdzogY29sdW1uIG5vd3JhcDsgfVxuICAgIC5tZW51Lmljb24tdG9wIGxpIGEgaW1nLFxuICAgIC5tZW51Lmljb24tdG9wIGxpIGEgaSxcbiAgICAubWVudS5pY29uLXRvcCBsaSBhIHN2ZyB7XG4gICAgICBhbGlnbi1zZWxmOiBzdHJldGNoO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMC4yNXJlbTtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAubWVudS5pY29uLWJvdHRvbSBsaSBhIHtcbiAgICBmbGV4LWZsb3c6IGNvbHVtbiBub3dyYXA7IH1cbiAgICAubWVudS5pY29uLWJvdHRvbSBsaSBhIGltZyxcbiAgICAubWVudS5pY29uLWJvdHRvbSBsaSBhIGksXG4gICAgLm1lbnUuaWNvbi1ib3R0b20gbGkgYSBzdmcge1xuICAgICAgYWxpZ24tc2VsZjogc3RyZXRjaDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDAuMjVyZW07XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgLm1lbnUgLmlzLWFjdGl2ZSA+IGEge1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIGNvbG9yOiAjMGEwYTBhOyB9XG4gIC5tZW51IC5hY3RpdmUgPiBhIHtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBjb2xvcjogIzBhMGEwYTsgfVxuICAubWVudS5hbGlnbi1sZWZ0IHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7IH1cbiAgLm1lbnUuYWxpZ24tcmlnaHQgbGkge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDsgfVxuICAgIC5tZW51LmFsaWduLXJpZ2h0IGxpIC5zdWJtZW51IGxpIHtcbiAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDsgfVxuICAubWVudS5hbGlnbi1yaWdodC52ZXJ0aWNhbCBsaSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7IH1cbiAgICAubWVudS5hbGlnbi1yaWdodC52ZXJ0aWNhbCBsaSAuc3VibWVudSBsaSB7XG4gICAgICB0ZXh0LWFsaWduOiByaWdodDsgfVxuICAubWVudS5hbGlnbi1yaWdodCAubmVzdGVkIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDFyZW07XG4gICAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgLm1lbnUuYWxpZ24tY2VudGVyIGxpIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOyB9XG4gICAgLm1lbnUuYWxpZ24tY2VudGVyIGxpIC5zdWJtZW51IGxpIHtcbiAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDsgfVxuICAubWVudSAubWVudS10ZXh0IHtcbiAgICBwYWRkaW5nOiAwLjMxMjVyZW0gMC42MjVyZW0gMC4zMTI1cmVtIDAuNjI1cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIGNvbG9yOiBpbmhlcml0OyB9XG5cbi5tZW51LWNlbnRlcmVkID4gLm1lbnUge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfVxuICAubWVudS1jZW50ZXJlZCA+IC5tZW51IGxpIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOyB9XG4gICAgLm1lbnUtY2VudGVyZWQgPiAubWVudSBsaSAuc3VibWVudSBsaSB7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7IH1cblxuLm5vLWpzIFtkYXRhLXJlc3BvbnNpdmUtbWVudV0gdWwge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5tZW51LWljb24ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgd2lkdGg6IDIwcHg7XG4gIGhlaWdodDogMTZweDtcbiAgY3Vyc29yOiBwb2ludGVyOyB9XG4gIC5tZW51LWljb246OmFmdGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAycHg7XG4gICAgYmFja2dyb3VuZDogIzBhMGEwYTtcbiAgICBib3gtc2hhZG93OiAwIDdweCAwICMwYTBhMGEsIDAgMTRweCAwICMwYTBhMGE7XG4gICAgY29udGVudDogJyc7IH1cbiAgLm1lbnUtaWNvbjpob3Zlcjo6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQ6ICNjYWNhY2E7XG4gICAgYm94LXNoYWRvdzogMCA3cHggMCAjY2FjYWNhLCAwIDE0cHggMCAjY2FjYWNhOyB9XG5cbi5tZW51LWljb24uZGFyayB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICB3aWR0aDogMjBweDtcbiAgaGVpZ2h0OiAxNnB4O1xuICBjdXJzb3I6IHBvaW50ZXI7IH1cbiAgLm1lbnUtaWNvbi5kYXJrOjphZnRlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMnB4O1xuICAgIGJhY2tncm91bmQ6ICMwYTBhMGE7XG4gICAgYm94LXNoYWRvdzogMCA3cHggMCAjMGEwYTBhLCAwIDE0cHggMCAjMGEwYTBhO1xuICAgIGNvbnRlbnQ6ICcnOyB9XG4gIC5tZW51LWljb24uZGFyazpob3Zlcjo6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQ6ICM4YThhOGE7XG4gICAgYm94LXNoYWRvdzogMCA3cHggMCAjOGE4YThhLCAwIDE0cHggMCAjOGE4YThhOyB9XG5cbi5pcy1kcmlsbGRvd24ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgLmlzLWRyaWxsZG93biBsaSB7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cbiAgLmlzLWRyaWxsZG93bi5hbmltYXRlLWhlaWdodCB7XG4gICAgdHJhbnNpdGlvbjogaGVpZ2h0IDAuNXM7IH1cblxuLmRyaWxsZG93biBhIHtcbiAgcGFkZGluZzogMC42MjVyZW0gMC45Mzc1cmVtO1xuICBiYWNrZ3JvdW5kOiAjZjJmMmYyOyB9XG5cbi5kcmlsbGRvd24gLmlzLWRyaWxsZG93bi1zdWJtZW51IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDEwMCU7XG4gIHotaW5kZXg6IC0xO1xuICB3aWR0aDogMTAwJTtcbiAgYmFja2dyb3VuZDogI2YyZjJmMjtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMTVzIGxpbmVhcjsgfVxuICAuZHJpbGxkb3duIC5pcy1kcmlsbGRvd24tc3VibWVudS5pcy1hY3RpdmUge1xuICAgIHotaW5kZXg6IDE7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKTsgfVxuICAuZHJpbGxkb3duIC5pcy1kcmlsbGRvd24tc3VibWVudS5pcy1jbG9zaW5nIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwJSk7IH1cbiAgLmRyaWxsZG93biAuaXMtZHJpbGxkb3duLXN1Ym1lbnUgYSB7XG4gICAgcGFkZGluZzogMC42MjVyZW0gMC45Mzc1cmVtOyB9XG5cbi5kcmlsbGRvd24gLm5lc3RlZC5pcy1kcmlsbGRvd24tc3VibWVudSB7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgbWFyZ2luLWxlZnQ6IDA7IH1cblxuLmRyaWxsZG93biAuZHJpbGxkb3duLXN1Ym1lbnUtY292ZXItcHJldmlvdXMge1xuICBtaW4taGVpZ2h0OiAxMDAlOyB9XG5cbi5kcmlsbGRvd24gLmlzLWRyaWxsZG93bi1zdWJtZW51LXBhcmVudCA+IGEge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLmRyaWxsZG93biAuaXMtZHJpbGxkb3duLXN1Ym1lbnUtcGFyZW50ID4gYTo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXI6IGluc2V0IDZweDtcbiAgICBjb250ZW50OiAnJztcbiAgICBib3JkZXItcmlnaHQtd2lkdGg6IDA7XG4gICAgYm9yZGVyLWxlZnQtc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgIzY4MDBkMjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA1MCU7XG4gICAgbWFyZ2luLXRvcDogLTZweDtcbiAgICByaWdodDogMXJlbTsgfVxuXG4uZHJpbGxkb3duLmFsaWduLWxlZnQgLmlzLWRyaWxsZG93bi1zdWJtZW51LXBhcmVudCA+IGE6OmFmdGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG4gIGJvcmRlcjogaW5zZXQgNnB4O1xuICBjb250ZW50OiAnJztcbiAgYm9yZGVyLXJpZ2h0LXdpZHRoOiAwO1xuICBib3JkZXItbGVmdC1zdHlsZTogc29saWQ7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgIzY4MDBkMjtcbiAgcmlnaHQ6IDFyZW07XG4gIGxlZnQ6IGF1dG87IH1cblxuLmRyaWxsZG93bi5hbGlnbi1yaWdodCAuaXMtZHJpbGxkb3duLXN1Ym1lbnUtcGFyZW50ID4gYTo6YWZ0ZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcbiAgYm9yZGVyOiBpbnNldCA2cHg7XG4gIGNvbnRlbnQ6ICcnO1xuICBib3JkZXItbGVmdC13aWR0aDogMDtcbiAgYm9yZGVyLXJpZ2h0LXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCAjNjgwMGQyIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICByaWdodDogYXV0bztcbiAgbGVmdDogMXJlbTsgfVxuXG4uZHJpbGxkb3duIC5qcy1kcmlsbGRvd24tYmFjayA+IGE6OmJlZm9yZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xuICBib3JkZXI6IGluc2V0IDZweDtcbiAgY29udGVudDogJyc7XG4gIGJvcmRlci1sZWZ0LXdpZHRoOiAwO1xuICBib3JkZXItcmlnaHQtc3R5bGU6IHNvbGlkO1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50ICM2ODAwZDIgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1sZWZ0LXdpZHRoOiAwO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIG1hcmdpbi1yaWdodDogMC43NXJlbTsgfVxuXG4uZHJvcGRvd24ubWVudSA+IGxpLm9wZW5zLWxlZnQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gIHRvcDogMTAwJTtcbiAgcmlnaHQ6IDA7XG4gIGxlZnQ6IGF1dG87IH1cblxuLmRyb3Bkb3duLm1lbnUgPiBsaS5vcGVucy1yaWdodCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgdG9wOiAxMDAlO1xuICByaWdodDogYXV0bztcbiAgbGVmdDogMDsgfVxuXG5bZGF0YS13aGF0aW5wdXQ9J21vdXNlJ10gLmRyb3Bkb3duLm1lbnUgYSB7XG4gIG91dGxpbmU6IDA7IH1cblxuLmRyb3Bkb3duLm1lbnUgPiBsaSA+IGEge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgcGFkZGluZzogMC4zMTI1cmVtIDAuNjI1cmVtIDAuMzEyNXJlbSAwLjYyNXJlbTsgfVxuXG4uZHJvcGRvd24ubWVudSA+IGxpLmlzLWFjdGl2ZSA+IGEge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgY29sb3I6ICM2ODAwZDI7IH1cblxuLm5vLWpzIC5kcm9wZG93bi5tZW51IHVsIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4uZHJvcGRvd24ubWVudSAubmVzdGVkLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIG1hcmdpbi1sZWZ0OiAwOyB9XG5cbi5kcm9wZG93bi5tZW51LnZlcnRpY2FsID4gbGkgLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICB0b3A6IDA7IH1cblxuLmRyb3Bkb3duLm1lbnUudmVydGljYWwgPiBsaS5vcGVucy1sZWZ0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAxMDAlO1xuICBsZWZ0OiBhdXRvOyB9XG5cbi5kcm9wZG93bi5tZW51LnZlcnRpY2FsID4gbGkub3BlbnMtcmlnaHQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gIHJpZ2h0OiBhdXRvO1xuICBsZWZ0OiAxMDAlOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5kcm9wZG93bi5tZW51Lm1lZGl1bS1ob3Jpem9udGFsID4gbGkub3BlbnMtbGVmdCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICB0b3A6IDEwMCU7XG4gICAgcmlnaHQ6IDA7XG4gICAgbGVmdDogYXV0bzsgfVxuICAuZHJvcGRvd24ubWVudS5tZWRpdW0taG9yaXpvbnRhbCA+IGxpLm9wZW5zLXJpZ2h0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHRvcDogMTAwJTtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiAwOyB9XG4gIC5kcm9wZG93bi5tZW51Lm1lZGl1bS12ZXJ0aWNhbCA+IGxpIC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICB0b3A6IDA7IH1cbiAgLmRyb3Bkb3duLm1lbnUubWVkaXVtLXZlcnRpY2FsID4gbGkub3BlbnMtbGVmdCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDEwMCU7XG4gICAgbGVmdDogYXV0bzsgfVxuICAuZHJvcGRvd24ubWVudS5tZWRpdW0tdmVydGljYWwgPiBsaS5vcGVucy1yaWdodCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiAxMDAlOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmRyb3Bkb3duLm1lbnUubGFyZ2UtaG9yaXpvbnRhbCA+IGxpLm9wZW5zLWxlZnQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgdG9wOiAxMDAlO1xuICAgIHJpZ2h0OiAwO1xuICAgIGxlZnQ6IGF1dG87IH1cbiAgLmRyb3Bkb3duLm1lbnUubGFyZ2UtaG9yaXpvbnRhbCA+IGxpLm9wZW5zLXJpZ2h0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHRvcDogMTAwJTtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiAwOyB9XG4gIC5kcm9wZG93bi5tZW51LmxhcmdlLXZlcnRpY2FsID4gbGkgLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHRvcDogMDsgfVxuICAuZHJvcGRvd24ubWVudS5sYXJnZS12ZXJ0aWNhbCA+IGxpLm9wZW5zLWxlZnQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAxMDAlO1xuICAgIGxlZnQ6IGF1dG87IH1cbiAgLmRyb3Bkb3duLm1lbnUubGFyZ2UtdmVydGljYWwgPiBsaS5vcGVucy1yaWdodCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiAxMDAlOyB9IH1cblxuLmRyb3Bkb3duLm1lbnUuYWxpZ24tcmlnaHQgLmlzLWRyb3Bkb3duLXN1Ym1lbnUuZmlyc3Qtc3ViIHtcbiAgdG9wOiAxMDAlO1xuICByaWdodDogMDtcbiAgbGVmdDogYXV0bzsgfVxuXG4uaXMtZHJvcGRvd24tbWVudS52ZXJ0aWNhbCB7XG4gIHdpZHRoOiAxMDBweDsgfVxuICAuaXMtZHJvcGRvd24tbWVudS52ZXJ0aWNhbC5hbGlnbi1yaWdodCB7XG4gICAgZmxvYXQ6IHJpZ2h0OyB9XG5cbi5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQgYTo6YWZ0ZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDUwJTtcbiAgICByaWdodDogNXB4O1xuICAgIGxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXRvcDogLTZweDsgfVxuICAuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQub3BlbnMtaW5uZXIgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgdG9wOiAxMDAlO1xuICAgIGxlZnQ6IGF1dG87IH1cbiAgLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50Lm9wZW5zLWxlZnQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgcmlnaHQ6IDEwMCU7XG4gICAgbGVmdDogYXV0bzsgfVxuICAuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQub3BlbnMtcmlnaHQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogMTAwJTsgfVxuXG4uaXMtZHJvcGRvd24tc3VibWVudSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAxMDAlO1xuICB6LWluZGV4OiAxO1xuICBkaXNwbGF5OiBub25lO1xuICBtaW4td2lkdGg6IDIwMHB4O1xuICBib3JkZXI6IDFweCBzb2xpZCAjY2FjYWNhO1xuICBiYWNrZ3JvdW5kOiAjZmVmZWZlOyB9XG4gIC5kcm9wZG93biAuaXMtZHJvcGRvd24tc3VibWVudSBhIHtcbiAgICBwYWRkaW5nOiAwLjMxMjVyZW0gMC42MjVyZW0gMC4zMTI1cmVtIDAuNjI1cmVtOyB9XG4gIC5pcy1kcm9wZG93bi1zdWJtZW51IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICBtYXJnaW4tdG9wOiAtMXB4OyB9XG4gIC5pcy1kcm9wZG93bi1zdWJtZW51ID4gbGkge1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gIC5pcy1kcm9wZG93bi1zdWJtZW51LmpzLWRyb3Bkb3duLWFjdGl2ZSB7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cblxuLnJlc3BvbnNpdmUtZW1iZWQsXG4uZmxleC12aWRlbyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgaGVpZ2h0OiAwO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBwYWRkaW5nLWJvdHRvbTogNzUlO1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG4gIC5yZXNwb25zaXZlLWVtYmVkIGlmcmFtZSxcbiAgLnJlc3BvbnNpdmUtZW1iZWQgb2JqZWN0LFxuICAucmVzcG9uc2l2ZS1lbWJlZCBlbWJlZCxcbiAgLnJlc3BvbnNpdmUtZW1iZWQgdmlkZW8sXG4gIC5mbGV4LXZpZGVvIGlmcmFtZSxcbiAgLmZsZXgtdmlkZW8gb2JqZWN0LFxuICAuZmxleC12aWRlbyBlbWJlZCxcbiAgLmZsZXgtdmlkZW8gdmlkZW8ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7IH1cbiAgLnJlc3BvbnNpdmUtZW1iZWQud2lkZXNjcmVlbixcbiAgLmZsZXgtdmlkZW8ud2lkZXNjcmVlbiB7XG4gICAgcGFkZGluZy1ib3R0b206IDU2LjI1JTsgfVxuXG4ubWVkaWEtb2JqZWN0IHtcbiAgZGlzcGxheTogZmxleDtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgZmxleC13cmFwOiBub3dyYXA7IH1cbiAgLm1lZGlhLW9iamVjdCBpbWcge1xuICAgIG1heC13aWR0aDogbm9uZTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgLm1lZGlhLW9iamVjdC5zdGFjay1mb3Itc21hbGwge1xuICAgICAgZmxleC13cmFwOiB3cmFwOyB9IH1cblxuLm1lZGlhLW9iamVjdC1zZWN0aW9uIHtcbiAgZmxleDogMCAxIGF1dG87IH1cbiAgLm1lZGlhLW9iamVjdC1zZWN0aW9uOmZpcnN0LWNoaWxkIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxcmVtOyB9XG4gIC5tZWRpYS1vYmplY3Qtc2VjdGlvbjpsYXN0LWNoaWxkOm5vdCg6bnRoLWNoaWxkKDIpKSB7XG4gICAgcGFkZGluZy1sZWZ0OiAxcmVtOyB9XG4gIC5tZWRpYS1vYmplY3Qtc2VjdGlvbiA+IDpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAuc3RhY2stZm9yLXNtYWxsIC5tZWRpYS1vYmplY3Qtc2VjdGlvbiB7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgcGFkZGluZy1ib3R0b206IDFyZW07XG4gICAgICBmbGV4LWJhc2lzOiAxMDAlO1xuICAgICAgbWF4LXdpZHRoOiAxMDAlOyB9XG4gICAgICAuc3RhY2stZm9yLXNtYWxsIC5tZWRpYS1vYmplY3Qtc2VjdGlvbiBpbWcge1xuICAgICAgICB3aWR0aDogMTAwJTsgfSB9XG4gIC5tZWRpYS1vYmplY3Qtc2VjdGlvbi5tYWluLXNlY3Rpb24ge1xuICAgIGZsZXg6IDEgMSAwcHg7IH1cblxuLmlzLW9mZi1jYW52YXMtb3BlbiB7XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cblxuLmpzLW9mZi1jYW52YXMtb3ZlcmxheSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAxMTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjVzIGVhc2UsIHZpc2liaWxpdHkgMC41cyBlYXNlO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDI1NCwgMjU0LCAyNTQsIDAuMjUpO1xuICBvcGFjaXR5OiAwO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgLmpzLW9mZi1jYW52YXMtb3ZlcmxheS5pcy12aXNpYmxlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7IH1cbiAgLmpzLW9mZi1jYW52YXMtb3ZlcmxheS5pcy1jbG9zYWJsZSB7XG4gICAgY3Vyc29yOiBwb2ludGVyOyB9XG4gIC5qcy1vZmYtY2FudmFzLW92ZXJsYXkuaXMtb3ZlcmxheS1hYnNvbHV0ZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlOyB9XG4gIC5qcy1vZmYtY2FudmFzLW92ZXJsYXkuaXMtb3ZlcmxheS1maXhlZCB7XG4gICAgcG9zaXRpb246IGZpeGVkOyB9XG5cbi5vZmYtY2FudmFzLXdyYXBwZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cblxuLm9mZi1jYW52YXMge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHotaW5kZXg6IDEyO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC41cyBlYXNlO1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIGJhY2tncm91bmQ6ICNmMmYyZjI7IH1cbiAgW2RhdGEtd2hhdGlucHV0PSdtb3VzZSddIC5vZmYtY2FudmFzIHtcbiAgICBvdXRsaW5lOiAwOyB9XG4gIC5vZmYtY2FudmFzLmlzLXRyYW5zaXRpb24tcHVzaCB7XG4gICAgei1pbmRleDogMTI7IH1cbiAgLm9mZi1jYW52YXMuaXMtY2xvc2VkIHtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47IH1cbiAgLm9mZi1jYW52YXMuaXMtdHJhbnNpdGlvbi1vdmVybGFwIHtcbiAgICB6LWluZGV4OiAxMzsgfVxuICAgIC5vZmYtY2FudmFzLmlzLXRyYW5zaXRpb24tb3ZlcmxhcC5pcy1vcGVuIHtcbiAgICAgIGJveC1zaGFkb3c6IDAgMCAxMHB4IHJnYmEoMTAsIDEwLCAxMCwgMC43KTsgfVxuICAub2ZmLWNhbnZhcy5pcy1vcGVuIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTsgfVxuXG4ub2ZmLWNhbnZhcy1hYnNvbHV0ZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMTI7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjVzIGVhc2U7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgYmFja2dyb3VuZDogI2YyZjJmMjsgfVxuICBbZGF0YS13aGF0aW5wdXQ9J21vdXNlJ10gLm9mZi1jYW52YXMtYWJzb2x1dGUge1xuICAgIG91dGxpbmU6IDA7IH1cbiAgLm9mZi1jYW52YXMtYWJzb2x1dGUuaXMtdHJhbnNpdGlvbi1wdXNoIHtcbiAgICB6LWluZGV4OiAxMjsgfVxuICAub2ZmLWNhbnZhcy1hYnNvbHV0ZS5pcy1jbG9zZWQge1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjsgfVxuICAub2ZmLWNhbnZhcy1hYnNvbHV0ZS5pcy10cmFuc2l0aW9uLW92ZXJsYXAge1xuICAgIHotaW5kZXg6IDEzOyB9XG4gICAgLm9mZi1jYW52YXMtYWJzb2x1dGUuaXMtdHJhbnNpdGlvbi1vdmVybGFwLmlzLW9wZW4ge1xuICAgICAgYm94LXNoYWRvdzogMCAwIDEwcHggcmdiYSgxMCwgMTAsIDEwLCAwLjcpOyB9XG4gIC5vZmYtY2FudmFzLWFic29sdXRlLmlzLW9wZW4ge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApOyB9XG5cbi5wb3NpdGlvbi1sZWZ0IHtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG92ZXJmbG93LXk6IGF1dG87XG4gIHdpZHRoOiAyNTBweDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0yNTBweCk7IH1cbiAgLm9mZi1jYW52YXMtY29udGVudCAub2ZmLWNhbnZhcy5wb3NpdGlvbi1sZWZ0IHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTI1MHB4KTsgfVxuICAgIC5vZmYtY2FudmFzLWNvbnRlbnQgLm9mZi1jYW52YXMucG9zaXRpb24tbGVmdC5pcy10cmFuc2l0aW9uLW92ZXJsYXAuaXMtb3BlbiB7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTsgfVxuICAub2ZmLWNhbnZhcy1jb250ZW50LmlzLW9wZW4tbGVmdC5oYXMtdHJhbnNpdGlvbi1wdXNoIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMjUwcHgpOyB9XG4gIC5wb3NpdGlvbi1sZWZ0LmlzLXRyYW5zaXRpb24tcHVzaCB7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDAgMCByZ2JhKDEwLCAxMCwgMTAsIDAuMjUpOyB9XG5cbi5wb3NpdGlvbi1yaWdodCB7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGhlaWdodDogMTAwJTtcbiAgb3ZlcmZsb3cteTogYXV0bztcbiAgd2lkdGg6IDI1MHB4O1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMjUwcHgpOyB9XG4gIC5vZmYtY2FudmFzLWNvbnRlbnQgLm9mZi1jYW52YXMucG9zaXRpb24tcmlnaHQge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgyNTBweCk7IH1cbiAgICAub2ZmLWNhbnZhcy1jb250ZW50IC5vZmYtY2FudmFzLnBvc2l0aW9uLXJpZ2h0LmlzLXRyYW5zaXRpb24tb3ZlcmxhcC5pcy1vcGVuIHtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApOyB9XG4gIC5vZmYtY2FudmFzLWNvbnRlbnQuaXMtb3Blbi1yaWdodC5oYXMtdHJhbnNpdGlvbi1wdXNoIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTI1MHB4KTsgfVxuICAucG9zaXRpb24tcmlnaHQuaXMtdHJhbnNpdGlvbi1wdXNoIHtcbiAgICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCAwIHJnYmEoMTAsIDEwLCAxMCwgMC4yNSk7IH1cblxuLnBvc2l0aW9uLXRvcCB7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIG92ZXJmbG93LXg6IGF1dG87XG4gIGhlaWdodDogMjUwcHg7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMjUwcHgpOyB9XG4gIC5vZmYtY2FudmFzLWNvbnRlbnQgLm9mZi1jYW52YXMucG9zaXRpb24tdG9wIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTI1MHB4KTsgfVxuICAgIC5vZmYtY2FudmFzLWNvbnRlbnQgLm9mZi1jYW52YXMucG9zaXRpb24tdG9wLmlzLXRyYW5zaXRpb24tb3ZlcmxhcC5pcy1vcGVuIHtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApOyB9XG4gIC5vZmYtY2FudmFzLWNvbnRlbnQuaXMtb3Blbi10b3AuaGFzLXRyYW5zaXRpb24tcHVzaCB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDI1MHB4KTsgfVxuICAucG9zaXRpb24tdG9wLmlzLXRyYW5zaXRpb24tcHVzaCB7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDAgMCByZ2JhKDEwLCAxMCwgMTAsIDAuMjUpOyB9XG5cbi5wb3NpdGlvbi1ib3R0b20ge1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBvdmVyZmxvdy14OiBhdXRvO1xuICBoZWlnaHQ6IDI1MHB4O1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMjUwcHgpOyB9XG4gIC5vZmYtY2FudmFzLWNvbnRlbnQgLm9mZi1jYW52YXMucG9zaXRpb24tYm90dG9tIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMjUwcHgpOyB9XG4gICAgLm9mZi1jYW52YXMtY29udGVudCAub2ZmLWNhbnZhcy5wb3NpdGlvbi1ib3R0b20uaXMtdHJhbnNpdGlvbi1vdmVybGFwLmlzLW9wZW4ge1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7IH1cbiAgLm9mZi1jYW52YXMtY29udGVudC5pcy1vcGVuLWJvdHRvbS5oYXMtdHJhbnNpdGlvbi1wdXNoIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTI1MHB4KTsgfVxuICAucG9zaXRpb24tYm90dG9tLmlzLXRyYW5zaXRpb24tcHVzaCB7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDAgMCByZ2JhKDEwLCAxMCwgMTAsIDAuMjUpOyB9XG5cbi5vZmYtY2FudmFzLWNvbnRlbnQge1xuICB0cmFuc2Zvcm06IG5vbmU7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjVzIGVhc2U7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsgfVxuICAub2ZmLWNhbnZhcy1jb250ZW50Lmhhcy10cmFuc2l0aW9uLXB1c2gge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApOyB9XG4gIC5vZmYtY2FudmFzLWNvbnRlbnQgLm9mZi1jYW52YXMuaXMtb3BlbiB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLnBvc2l0aW9uLWxlZnQucmV2ZWFsLWZvci1tZWRpdW0ge1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICB6LWluZGV4OiAxMjtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7IH1cbiAgICAucG9zaXRpb24tbGVmdC5yZXZlYWwtZm9yLW1lZGl1bSAuY2xvc2UtYnV0dG9uIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAub2ZmLWNhbnZhcy1jb250ZW50IC5wb3NpdGlvbi1sZWZ0LnJldmVhbC1mb3ItbWVkaXVtIHtcbiAgICAgIHRyYW5zZm9ybTogbm9uZTsgfVxuICAgIC5vZmYtY2FudmFzLWNvbnRlbnQuaGFzLXJldmVhbC1sZWZ0IHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAyNTBweDsgfVxuICAgIC5wb3NpdGlvbi1sZWZ0LnJldmVhbC1mb3ItbWVkaXVtIH4gLm9mZi1jYW52YXMtY29udGVudCB7XG4gICAgICBtYXJnaW4tbGVmdDogMjUwcHg7IH1cbiAgLnBvc2l0aW9uLXJpZ2h0LnJldmVhbC1mb3ItbWVkaXVtIHtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgei1pbmRleDogMTI7XG4gICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlOyB9XG4gICAgLnBvc2l0aW9uLXJpZ2h0LnJldmVhbC1mb3ItbWVkaXVtIC5jbG9zZS1idXR0b24ge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgIC5vZmYtY2FudmFzLWNvbnRlbnQgLnBvc2l0aW9uLXJpZ2h0LnJldmVhbC1mb3ItbWVkaXVtIHtcbiAgICAgIHRyYW5zZm9ybTogbm9uZTsgfVxuICAgIC5vZmYtY2FudmFzLWNvbnRlbnQuaGFzLXJldmVhbC1yaWdodCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDI1MHB4OyB9XG4gICAgLnBvc2l0aW9uLXJpZ2h0LnJldmVhbC1mb3ItbWVkaXVtIH4gLm9mZi1jYW52YXMtY29udGVudCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDI1MHB4OyB9XG4gIC5wb3NpdGlvbi10b3AucmV2ZWFsLWZvci1tZWRpdW0ge1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICB6LWluZGV4OiAxMjtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7IH1cbiAgICAucG9zaXRpb24tdG9wLnJldmVhbC1mb3ItbWVkaXVtIC5jbG9zZS1idXR0b24ge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgIC5vZmYtY2FudmFzLWNvbnRlbnQgLnBvc2l0aW9uLXRvcC5yZXZlYWwtZm9yLW1lZGl1bSB7XG4gICAgICB0cmFuc2Zvcm06IG5vbmU7IH1cbiAgICAub2ZmLWNhbnZhcy1jb250ZW50Lmhhcy1yZXZlYWwtdG9wIHtcbiAgICAgIG1hcmdpbi10b3A6IDI1MHB4OyB9XG4gICAgLnBvc2l0aW9uLXRvcC5yZXZlYWwtZm9yLW1lZGl1bSB+IC5vZmYtY2FudmFzLWNvbnRlbnQge1xuICAgICAgbWFyZ2luLXRvcDogMjUwcHg7IH1cbiAgLnBvc2l0aW9uLWJvdHRvbS5yZXZlYWwtZm9yLW1lZGl1bSB7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICAgIHotaW5kZXg6IDEyO1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTsgfVxuICAgIC5wb3NpdGlvbi1ib3R0b20ucmV2ZWFsLWZvci1tZWRpdW0gLmNsb3NlLWJ1dHRvbiB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgLm9mZi1jYW52YXMtY29udGVudCAucG9zaXRpb24tYm90dG9tLnJldmVhbC1mb3ItbWVkaXVtIHtcbiAgICAgIHRyYW5zZm9ybTogbm9uZTsgfVxuICAgIC5vZmYtY2FudmFzLWNvbnRlbnQuaGFzLXJldmVhbC1ib3R0b20ge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMjUwcHg7IH1cbiAgICAucG9zaXRpb24tYm90dG9tLnJldmVhbC1mb3ItbWVkaXVtIH4gLm9mZi1jYW52YXMtY29udGVudCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAyNTBweDsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5wb3NpdGlvbi1sZWZ0LnJldmVhbC1mb3ItbGFyZ2Uge1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICB6LWluZGV4OiAxMjtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7IH1cbiAgICAucG9zaXRpb24tbGVmdC5yZXZlYWwtZm9yLWxhcmdlIC5jbG9zZS1idXR0b24ge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgIC5vZmYtY2FudmFzLWNvbnRlbnQgLnBvc2l0aW9uLWxlZnQucmV2ZWFsLWZvci1sYXJnZSB7XG4gICAgICB0cmFuc2Zvcm06IG5vbmU7IH1cbiAgICAub2ZmLWNhbnZhcy1jb250ZW50Lmhhcy1yZXZlYWwtbGVmdCB7XG4gICAgICBtYXJnaW4tbGVmdDogMjUwcHg7IH1cbiAgICAucG9zaXRpb24tbGVmdC5yZXZlYWwtZm9yLWxhcmdlIH4gLm9mZi1jYW52YXMtY29udGVudCB7XG4gICAgICBtYXJnaW4tbGVmdDogMjUwcHg7IH1cbiAgLnBvc2l0aW9uLXJpZ2h0LnJldmVhbC1mb3ItbGFyZ2Uge1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICB6LWluZGV4OiAxMjtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7IH1cbiAgICAucG9zaXRpb24tcmlnaHQucmV2ZWFsLWZvci1sYXJnZSAuY2xvc2UtYnV0dG9uIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAub2ZmLWNhbnZhcy1jb250ZW50IC5wb3NpdGlvbi1yaWdodC5yZXZlYWwtZm9yLWxhcmdlIHtcbiAgICAgIHRyYW5zZm9ybTogbm9uZTsgfVxuICAgIC5vZmYtY2FudmFzLWNvbnRlbnQuaGFzLXJldmVhbC1yaWdodCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDI1MHB4OyB9XG4gICAgLnBvc2l0aW9uLXJpZ2h0LnJldmVhbC1mb3ItbGFyZ2UgfiAub2ZmLWNhbnZhcy1jb250ZW50IHtcbiAgICAgIG1hcmdpbi1yaWdodDogMjUwcHg7IH1cbiAgLnBvc2l0aW9uLXRvcC5yZXZlYWwtZm9yLWxhcmdlIHtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgei1pbmRleDogMTI7XG4gICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlOyB9XG4gICAgLnBvc2l0aW9uLXRvcC5yZXZlYWwtZm9yLWxhcmdlIC5jbG9zZS1idXR0b24ge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgIC5vZmYtY2FudmFzLWNvbnRlbnQgLnBvc2l0aW9uLXRvcC5yZXZlYWwtZm9yLWxhcmdlIHtcbiAgICAgIHRyYW5zZm9ybTogbm9uZTsgfVxuICAgIC5vZmYtY2FudmFzLWNvbnRlbnQuaGFzLXJldmVhbC10b3Age1xuICAgICAgbWFyZ2luLXRvcDogMjUwcHg7IH1cbiAgICAucG9zaXRpb24tdG9wLnJldmVhbC1mb3ItbGFyZ2UgfiAub2ZmLWNhbnZhcy1jb250ZW50IHtcbiAgICAgIG1hcmdpbi10b3A6IDI1MHB4OyB9XG4gIC5wb3NpdGlvbi1ib3R0b20ucmV2ZWFsLWZvci1sYXJnZSB7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICAgIHotaW5kZXg6IDEyO1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTsgfVxuICAgIC5wb3NpdGlvbi1ib3R0b20ucmV2ZWFsLWZvci1sYXJnZSAuY2xvc2UtYnV0dG9uIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAub2ZmLWNhbnZhcy1jb250ZW50IC5wb3NpdGlvbi1ib3R0b20ucmV2ZWFsLWZvci1sYXJnZSB7XG4gICAgICB0cmFuc2Zvcm06IG5vbmU7IH1cbiAgICAub2ZmLWNhbnZhcy1jb250ZW50Lmhhcy1yZXZlYWwtYm90dG9tIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDI1MHB4OyB9XG4gICAgLnBvc2l0aW9uLWJvdHRvbS5yZXZlYWwtZm9yLWxhcmdlIH4gLm9mZi1jYW52YXMtY29udGVudCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAyNTBweDsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5vZmYtY2FudmFzLmluLWNhbnZhcy1mb3ItbWVkaXVtIHtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgdHJhbnNpdGlvbjogbm9uZTsgfVxuICAgIC5vZmYtY2FudmFzLmluLWNhbnZhcy1mb3ItbWVkaXVtLnBvc2l0aW9uLWxlZnQsIC5vZmYtY2FudmFzLmluLWNhbnZhcy1mb3ItbWVkaXVtLnBvc2l0aW9uLXJpZ2h0LCAub2ZmLWNhbnZhcy5pbi1jYW52YXMtZm9yLW1lZGl1bS5wb3NpdGlvbi10b3AsIC5vZmYtY2FudmFzLmluLWNhbnZhcy1mb3ItbWVkaXVtLnBvc2l0aW9uLWJvdHRvbSB7XG4gICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgdHJhbnNmb3JtOiBub25lOyB9XG4gICAgLm9mZi1jYW52YXMuaW4tY2FudmFzLWZvci1tZWRpdW0gLmNsb3NlLWJ1dHRvbiB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLm9mZi1jYW52YXMuaW4tY2FudmFzLWZvci1sYXJnZSB7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgIHRyYW5zaXRpb246IG5vbmU7IH1cbiAgICAub2ZmLWNhbnZhcy5pbi1jYW52YXMtZm9yLWxhcmdlLnBvc2l0aW9uLWxlZnQsIC5vZmYtY2FudmFzLmluLWNhbnZhcy1mb3ItbGFyZ2UucG9zaXRpb24tcmlnaHQsIC5vZmYtY2FudmFzLmluLWNhbnZhcy1mb3ItbGFyZ2UucG9zaXRpb24tdG9wLCAub2ZmLWNhbnZhcy5pbi1jYW52YXMtZm9yLWxhcmdlLnBvc2l0aW9uLWJvdHRvbSB7XG4gICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgdHJhbnNmb3JtOiBub25lOyB9XG4gICAgLm9mZi1jYW52YXMuaW4tY2FudmFzLWZvci1sYXJnZSAuY2xvc2UtYnV0dG9uIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuXG4ucGFnaW5hdGlvbiB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtOyB9XG4gIC5wYWdpbmF0aW9uOjpiZWZvcmUsIC5wYWdpbmF0aW9uOjphZnRlciB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgY29udGVudDogJyAnO1xuICAgIGZsZXgtYmFzaXM6IDA7XG4gICAgb3JkZXI6IDE7IH1cbiAgLnBhZ2luYXRpb246OmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDsgfVxuICAucGFnaW5hdGlvbiBsaSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwLjA2MjVyZW07XG4gICAgYm9yZGVyLXJhZGl1czogMS4yNXJlbTtcbiAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAucGFnaW5hdGlvbiBsaTpsYXN0LWNoaWxkLCAucGFnaW5hdGlvbiBsaTpmaXJzdC1jaGlsZCB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLnBhZ2luYXRpb24gbGkge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH0gfVxuICAucGFnaW5hdGlvbiBhLFxuICAucGFnaW5hdGlvbiBidXR0b24ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmc6IDAuMTg3NXJlbSAwLjYyNXJlbTtcbiAgICBib3JkZXItcmFkaXVzOiAxLjI1cmVtO1xuICAgIGNvbG9yOiAjMGEwYTBhOyB9XG4gICAgLnBhZ2luYXRpb24gYTpob3ZlcixcbiAgICAucGFnaW5hdGlvbiBidXR0b246aG92ZXIge1xuICAgICAgYmFja2dyb3VuZDogI2YyZjJmMjsgfVxuICAucGFnaW5hdGlvbiAuY3VycmVudCB7XG4gICAgcGFkZGluZzogMC4xODc1cmVtIDAuNjI1cmVtO1xuICAgIGJhY2tncm91bmQ6ICM2ODAwZDI7XG4gICAgY29sb3I6ICNmZWZlZmU7XG4gICAgY3Vyc29yOiBkZWZhdWx0OyB9XG4gIC5wYWdpbmF0aW9uIC5kaXNhYmxlZCB7XG4gICAgcGFkZGluZzogMC4xODc1cmVtIDAuNjI1cmVtO1xuICAgIGNvbG9yOiAjY2FjYWNhO1xuICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7IH1cbiAgICAucGFnaW5hdGlvbiAuZGlzYWJsZWQ6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7IH1cbiAgLnBhZ2luYXRpb24gLmVsbGlwc2lzOjphZnRlciB7XG4gICAgcGFkZGluZzogMC4xODc1cmVtIDAuNjI1cmVtO1xuICAgIGNvbnRlbnQ6ICdcXDIwMjYnO1xuICAgIGNvbG9yOiAjMGEwYTBhOyB9XG5cbi5wYWdpbmF0aW9uLXByZXZpb3VzIGE6OmJlZm9yZSxcbi5wYWdpbmF0aW9uLXByZXZpb3VzLmRpc2FibGVkOjpiZWZvcmUge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbi1yaWdodDogMC41cmVtO1xuICBjb250ZW50OiAnXFwwMGFiJzsgfVxuXG4ucGFnaW5hdGlvbi1uZXh0IGE6OmFmdGVyLFxuLnBhZ2luYXRpb24tbmV4dC5kaXNhYmxlZDo6YWZ0ZXIge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbi1sZWZ0OiAwLjVyZW07XG4gIGNvbnRlbnQ6ICdcXDAwYmInOyB9XG5cbi5zdGlja3ktY29udGFpbmVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG5cbi5zdGlja3kge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDA7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7IH1cblxuLnN0aWNreS5pcy1zdHVjayB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgei1pbmRleDogNTtcbiAgd2lkdGg6IDEwMCU7IH1cbiAgLnN0aWNreS5pcy1zdHVjay5pcy1hdC10b3Age1xuICAgIHRvcDogMDsgfVxuICAuc3RpY2t5LmlzLXN0dWNrLmlzLWF0LWJvdHRvbSB7XG4gICAgYm90dG9tOiAwOyB9XG5cbi5zdGlja3kuaXMtYW5jaG9yZWQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHJpZ2h0OiBhdXRvO1xuICBsZWZ0OiBhdXRvOyB9XG4gIC5zdGlja3kuaXMtYW5jaG9yZWQuaXMtYXQtYm90dG9tIHtcbiAgICBib3R0b206IDA7IH1cblxuaHRtbC5pcy1yZXZlYWwtb3BlbiB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgd2lkdGg6IDEwMCU7XG4gIG92ZXJmbG93LXk6IGhpZGRlbjsgfVxuICBodG1sLmlzLXJldmVhbC1vcGVuLnpmLWhhcy1zY3JvbGwge1xuICAgIG92ZXJmbG93LXk6IHNjcm9sbDsgfVxuICBodG1sLmlzLXJldmVhbC1vcGVuIGJvZHkge1xuICAgIG92ZXJmbG93LXk6IGhpZGRlbjsgfVxuXG4ucmV2ZWFsLW92ZXJsYXkge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogMTAwNTtcbiAgZGlzcGxheTogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgxMCwgMTAsIDEwLCAwLjQ1KTtcbiAgb3ZlcmZsb3cteTogYXV0bzsgfVxuXG4ucmV2ZWFsIHtcbiAgei1pbmRleDogMTAwNjtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICBkaXNwbGF5OiBub25lO1xuICBwYWRkaW5nOiAxcmVtO1xuICBib3JkZXI6IDA7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZWZlZmU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdG9wOiAxMDBweDtcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgb3ZlcmZsb3cteTogYXV0bzsgfVxuICBbZGF0YS13aGF0aW5wdXQ9J21vdXNlJ10gLnJldmVhbCB7XG4gICAgb3V0bGluZTogMDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5yZXZlYWwge1xuICAgICAgbWluLWhlaWdodDogMDsgfSB9XG4gIC5yZXZlYWwgLmNvbHVtbiwgLnJldmVhbCAuY29sdW1ucyB7XG4gICAgbWluLXdpZHRoOiAwOyB9XG4gIC5yZXZlYWwgPiA6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5yZXZlYWwge1xuICAgICAgd2lkdGg6IDYwMHB4O1xuICAgICAgbWF4LXdpZHRoOiA3NXJlbTsgfSB9XG4gIC5yZXZlYWwuY29sbGFwc2Uge1xuICAgIHBhZGRpbmc6IDA7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAucmV2ZWFsLnRpbnkge1xuICAgICAgd2lkdGg6IDMwJTtcbiAgICAgIG1heC13aWR0aDogNzVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5yZXZlYWwuc21hbGwge1xuICAgICAgd2lkdGg6IDUwJTtcbiAgICAgIG1heC13aWR0aDogNzVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5yZXZlYWwubGFyZ2Uge1xuICAgICAgd2lkdGg6IDkwJTtcbiAgICAgIG1heC13aWR0aDogNzVyZW07IH0gfVxuICAucmV2ZWFsLmZ1bGwge1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIG1pbi1oZWlnaHQ6IDEwMCU7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgYm9yZGVyOiAwO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgIC5yZXZlYWwge1xuICAgICAgdG9wOiAwO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICBib3R0b206IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBtaW4taGVpZ2h0OiAxMDAlO1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICBib3JkZXI6IDA7XG4gICAgICBib3JkZXItcmFkaXVzOiAwOyB9IH1cbiAgLnJldmVhbC53aXRob3V0LW92ZXJsYXkge1xuICAgIHBvc2l0aW9uOiBmaXhlZDsgfVxuXG50YWJsZSB7XG4gIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBib3JkZXItcmFkaXVzOiAxLjI1cmVtOyB9XG4gIHRoZWFkLFxuICB0Ym9keSxcbiAgdGZvb3Qge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNmMWYxZjE7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZlZmVmZTsgfVxuICBjYXB0aW9uIHtcbiAgICBwYWRkaW5nOiAwLjVyZW0gMC42MjVyZW0gMC42MjVyZW07XG4gICAgZm9udC13ZWlnaHQ6IDcwMDsgfVxuICB0aGVhZCB7XG4gICAgYmFja2dyb3VuZDogI2Y4ZjhmODtcbiAgICBjb2xvcjogIzBhMGEwYTsgfVxuICB0Zm9vdCB7XG4gICAgYmFja2dyb3VuZDogI2YxZjFmMTtcbiAgICBjb2xvcjogIzBhMGEwYTsgfVxuICB0aGVhZCB0cixcbiAgdGZvb3QgdHIge1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50OyB9XG4gIHRoZWFkIHRoLFxuICB0aGVhZCB0ZCxcbiAgdGZvb3QgdGgsXG4gIHRmb290IHRkIHtcbiAgICBwYWRkaW5nOiAwLjVyZW0gMC42MjVyZW0gMC42MjVyZW07XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG4gIHRib2R5IHRoLFxuICB0Ym9keSB0ZCB7XG4gICAgcGFkZGluZzogMC41cmVtIDAuNjI1cmVtIDAuNjI1cmVtOyB9XG4gIHRib2R5IHRyOm50aC1jaGlsZChldmVuKSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjFmMWYxOyB9XG4gIHRhYmxlLnVuc3RyaXBlZCB0Ym9keSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZlZmVmZTsgfVxuICAgIHRhYmxlLnVuc3RyaXBlZCB0Ym9keSB0ciB7XG4gICAgICBib3JkZXItYm90dG9tOiAwO1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNmMWYxZjE7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmVmZWZlOyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgdGFibGUuc3RhY2sgdGhlYWQge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgdGFibGUuc3RhY2sgdGZvb3Qge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgdGFibGUuc3RhY2sgdHIsXG4gIHRhYmxlLnN0YWNrIHRoLFxuICB0YWJsZS5zdGFjayB0ZCB7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cbiAgdGFibGUuc3RhY2sgdGQge1xuICAgIGJvcmRlci10b3A6IDA7IH0gfVxuXG50YWJsZS5zY3JvbGwge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIG92ZXJmbG93LXg6IGF1dG87IH1cblxudGFibGUuaG92ZXIgdGhlYWQgdHI6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjNmM2YzOyB9XG5cbnRhYmxlLmhvdmVyIHRmb290IHRyOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VjZWNlYzsgfVxuXG50YWJsZS5ob3ZlciB0Ym9keSB0cjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmOWY5Zjk7IH1cblxudGFibGUuaG92ZXI6bm90KC51bnN0cmlwZWQpIHRyOm50aC1vZi10eXBlKGV2ZW4pOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VjZWNlYzsgfVxuXG4udGFibGUtc2Nyb2xsIHtcbiAgb3ZlcmZsb3cteDogYXV0bzsgfVxuXG4udGFicyB7XG4gIG1hcmdpbjogMDtcbiAgYm9yZGVyOiAxcHggc29saWQgMDtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTsgfVxuICAudGFiczo6YmVmb3JlLCAudGFiczo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIGNvbnRlbnQ6ICcgJztcbiAgICBmbGV4LWJhc2lzOiAwO1xuICAgIG9yZGVyOiAxOyB9XG4gIC50YWJzOjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7IH1cblxuLnRhYnMudmVydGljYWwgPiBsaSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmbG9hdDogbm9uZTtcbiAgd2lkdGg6IGF1dG87IH1cblxuLnRhYnMuc2ltcGxlID4gbGkgPiBhIHtcbiAgcGFkZGluZzogMDsgfVxuICAudGFicy5zaW1wbGUgPiBsaSA+IGE6aG92ZXIge1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50OyB9XG5cbi50YWJzLnByaW1hcnkge1xuICBiYWNrZ3JvdW5kOiAjNjgwMGQyOyB9XG4gIC50YWJzLnByaW1hcnkgPiBsaSA+IGEge1xuICAgIGNvbG9yOiAjZmVmZWZlOyB9XG4gICAgLnRhYnMucHJpbWFyeSA+IGxpID4gYTpob3ZlciwgLnRhYnMucHJpbWFyeSA+IGxpID4gYTpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kOiAjNjMwMGM4OyB9XG5cbi50YWJzLXRpdGxlIHtcbiAgZmxvYXQ6IGxlZnQ7IH1cbiAgLnRhYnMtdGl0bGUgPiBhIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiAxLjI1cmVtIDEuNXJlbTtcbiAgICBmb250LXNpemU6IDAuNzVyZW07XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgY29sb3I6ICM2ODAwZDI7IH1cbiAgICBbZGF0YS13aGF0aW5wdXQ9J21vdXNlJ10gLnRhYnMtdGl0bGUgPiBhIHtcbiAgICAgIG91dGxpbmU6IDA7IH1cbiAgICAudGFicy10aXRsZSA+IGE6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICBjb2xvcjogIzU5MDBiNTsgfVxuICAgIC50YWJzLXRpdGxlID4gYTpmb2N1cywgLnRhYnMtdGl0bGUgPiBhW2FyaWEtc2VsZWN0ZWQ9J3RydWUnXSB7XG4gICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgIGNvbG9yOiAjNjgwMGQyOyB9XG5cbi50YWJzLWNvbnRlbnQge1xuICBib3JkZXI6IDFweCBzb2xpZCAwO1xuICBib3JkZXItdG9wOiAwO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgY29sb3I6ICMwYTBhMGE7XG4gIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2U7IH1cblxuLnRhYnMtY29udGVudC52ZXJ0aWNhbCB7XG4gIGJvcmRlcjogMXB4IHNvbGlkIDA7XG4gIGJvcmRlci1sZWZ0OiAwOyB9XG5cbi50YWJzLXBhbmVsIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgcGFkZGluZzogMXJlbTsgfVxuICAudGFicy1wYW5lbC5pcy1hY3RpdmUge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi50aXRsZS1iYXIge1xuICBwYWRkaW5nOiAwLjVyZW07XG4gIGJhY2tncm91bmQ6ICNmZWZlZmU7XG4gIGNvbG9yOiAjMGEwYTBhO1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cbiAgLnRpdGxlLWJhciAubWVudS1pY29uIHtcbiAgICBtYXJnaW4tbGVmdDogMC4yNXJlbTtcbiAgICBtYXJnaW4tcmlnaHQ6IDAuMjVyZW07IH1cblxuLnRpdGxlLWJhci1sZWZ0LFxuLnRpdGxlLWJhci1yaWdodCB7XG4gIGZsZXg6IDEgMSAwcHg7IH1cblxuLnRpdGxlLWJhci1yaWdodCB7XG4gIHRleHQtYWxpZ246IHJpZ2h0OyB9XG5cbi50aXRsZS1iYXItdGl0bGUge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGZvbnQtd2VpZ2h0OiBib2xkOyB9XG5cbi50b3AtYmFyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiBub3dyYXA7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgcGFkZGluZzogMS44NzVyZW07XG4gIGZsZXgtd3JhcDogd3JhcDsgfVxuICAudG9wLWJhcixcbiAgLnRvcC1iYXIgdWwge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZWZlZmU7IH1cbiAgLnRvcC1iYXIgaW5wdXQge1xuICAgIG1heC13aWR0aDogMjAwcHg7XG4gICAgbWFyZ2luLXJpZ2h0OiAxcmVtOyB9XG4gIC50b3AtYmFyIC5pbnB1dC1ncm91cC1maWVsZCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLXJpZ2h0OiAwOyB9XG4gIC50b3AtYmFyIGlucHV0LmJ1dHRvbiwgLnRvcC1iYXIgLndwLWJsb2NrLWJ1dHRvbiBpbnB1dC53cC1ibG9jay1idXR0b25fX2xpbmssIC53cC1ibG9jay1idXR0b24gLnRvcC1iYXIgaW5wdXQud3AtYmxvY2stYnV0dG9uX19saW5rIHtcbiAgICB3aWR0aDogYXV0bzsgfVxuICAudG9wLWJhciAudG9wLWJhci1sZWZ0LFxuICAudG9wLWJhciAudG9wLWJhci1yaWdodCB7XG4gICAgZmxleDogMCAwIDEwMCU7XG4gICAgbWF4LXdpZHRoOiAxMDAlOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLnRvcC1iYXIge1xuICAgICAgZmxleC13cmFwOiBub3dyYXA7IH1cbiAgICAgIC50b3AtYmFyIC50b3AtYmFyLWxlZnQge1xuICAgICAgICBmbGV4OiAxIDEgYXV0bztcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9XG4gICAgICAudG9wLWJhciAudG9wLWJhci1yaWdodCB7XG4gICAgICAgIGZsZXg6IDAgMSBhdXRvO1xuICAgICAgICBtYXJnaW4tbGVmdDogYXV0bzsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgICAudG9wLWJhci5zdGFja2VkLWZvci1tZWRpdW0ge1xuICAgICAgZmxleC13cmFwOiB3cmFwOyB9XG4gICAgICAudG9wLWJhci5zdGFja2VkLWZvci1tZWRpdW0gLnRvcC1iYXItbGVmdCxcbiAgICAgIC50b3AtYmFyLnN0YWNrZWQtZm9yLW1lZGl1bSAudG9wLWJhci1yaWdodCB7XG4gICAgICAgIGZsZXg6IDAgMCAxMDAlO1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NC45OTg3NWVtKSB7XG4gICAgLnRvcC1iYXIuc3RhY2tlZC1mb3ItbGFyZ2Uge1xuICAgICAgZmxleC13cmFwOiB3cmFwOyB9XG4gICAgICAudG9wLWJhci5zdGFja2VkLWZvci1sYXJnZSAudG9wLWJhci1sZWZ0LFxuICAgICAgLnRvcC1iYXIuc3RhY2tlZC1mb3ItbGFyZ2UgLnRvcC1iYXItcmlnaHQge1xuICAgICAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlOyB9IH1cblxuLnRvcC1iYXItdGl0bGUge1xuICBmbGV4OiAwIDAgYXV0bztcbiAgbWFyZ2luOiAwLjVyZW0gMXJlbSAwLjVyZW0gMDsgfVxuXG4udG9wLWJhci1sZWZ0LFxuLnRvcC1iYXItcmlnaHQge1xuICBmbGV4OiAwIDAgYXV0bzsgfVxuXG4uaGlkZSB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuXG4uaW52aXNpYmxlIHtcbiAgdmlzaWJpbGl0eTogaGlkZGVuOyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgLmhpZGUtZm9yLXNtYWxsLW9ubHkge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDBlbSksIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuc2hvdy1mb3Itc21hbGwtb25seSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmhpZGUtZm9yLW1lZGl1bSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAuc2hvdy1mb3ItbWVkaXVtIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAuaGlkZS1mb3ItbWVkaXVtLW9ubHkge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pLCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnNob3ctZm9yLW1lZGl1bS1vbmx5IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuaGlkZS1mb3ItbGFyZ2Uge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgLnNob3ctZm9yLWxhcmdlIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSBhbmQgKG1heC13aWR0aDogNzQuOTk4NzVlbSkge1xuICAuaGlkZS1mb3ItbGFyZ2Utb25seSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSksIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAuc2hvdy1mb3ItbGFyZ2Utb25seSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuLnNob3ctZm9yLXNyLFxuLnNob3ctb24tZm9jdXMge1xuICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcbiAgd2lkdGg6IDFweDtcbiAgaGVpZ2h0OiAxcHg7XG4gIHBhZGRpbmc6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGNsaXA6IHJlY3QoMCwgMCwgMCwgMCk7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGJvcmRlcjogMDsgfVxuXG4uc2hvdy1vbi1mb2N1czphY3RpdmUsIC5zaG93LW9uLWZvY3VzOmZvY3VzIHtcbiAgcG9zaXRpb246IHN0YXRpYyAhaW1wb3J0YW50O1xuICB3aWR0aDogYXV0bztcbiAgaGVpZ2h0OiBhdXRvO1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgY2xpcDogYXV0bztcbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDsgfVxuXG4uc2hvdy1mb3ItbGFuZHNjYXBlLFxuLmhpZGUtZm9yLXBvcnRyYWl0IHtcbiAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAob3JpZW50YXRpb246IGxhbmRzY2FwZSkge1xuICAgIC5zaG93LWZvci1sYW5kc2NhcGUsXG4gICAgLmhpZGUtZm9yLXBvcnRyYWl0IHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAob3JpZW50YXRpb246IHBvcnRyYWl0KSB7XG4gICAgLnNob3ctZm9yLWxhbmRzY2FwZSxcbiAgICAuaGlkZS1mb3ItcG9ydHJhaXQge1xuICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuLmhpZGUtZm9yLWxhbmRzY2FwZSxcbi5zaG93LWZvci1wb3J0cmFpdCB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAob3JpZW50YXRpb246IGxhbmRzY2FwZSkge1xuICAgIC5oaWRlLWZvci1sYW5kc2NhcGUsXG4gICAgLnNob3ctZm9yLXBvcnRyYWl0IHtcbiAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChvcmllbnRhdGlvbjogcG9ydHJhaXQpIHtcbiAgICAuaGlkZS1mb3ItbGFuZHNjYXBlLFxuICAgIC5zaG93LWZvci1wb3J0cmFpdCB7XG4gICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50OyB9IH1cblxuLmFsaWduLWxlZnQge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7IH1cblxuLmFsaWduLXJpZ2h0IHtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDsgfVxuXG4uYWxpZ24tY2VudGVyIHtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH1cblxuLmFsaWduLWp1c3RpZnkge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47IH1cblxuLmFsaWduLXNwYWNlZCB7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kOyB9XG5cbi5hbGlnbi1sZWZ0LnZlcnRpY2FsLm1lbnUgPiBsaSA+IGEge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7IH1cblxuLmFsaWduLXJpZ2h0LnZlcnRpY2FsLm1lbnUgPiBsaSA+IGEge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kOyB9XG5cbi5hbGlnbi1jZW50ZXIudmVydGljYWwubWVudSA+IGxpID4gYSB7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyOyB9XG5cbi5hbGlnbi10b3Age1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDsgfVxuXG4uYWxpZ24tc2VsZi10b3Age1xuICBhbGlnbi1zZWxmOiBmbGV4LXN0YXJ0OyB9XG5cbi5hbGlnbi1ib3R0b20ge1xuICBhbGlnbi1pdGVtczogZmxleC1lbmQ7IH1cblxuLmFsaWduLXNlbGYtYm90dG9tIHtcbiAgYWxpZ24tc2VsZjogZmxleC1lbmQ7IH1cblxuLmFsaWduLW1pZGRsZSB7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cblxuLmFsaWduLXNlbGYtbWlkZGxlIHtcbiAgYWxpZ24tc2VsZjogY2VudGVyOyB9XG5cbi5hbGlnbi1zdHJldGNoIHtcbiAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7IH1cblxuLmFsaWduLXNlbGYtc3RyZXRjaCB7XG4gIGFsaWduLXNlbGY6IHN0cmV0Y2g7IH1cblxuLmFsaWduLWNlbnRlci1taWRkbGUge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgYWxpZ24tY29udGVudDogY2VudGVyOyB9XG5cbi5zbWFsbC1vcmRlci0xIHtcbiAgb3JkZXI6IDE7IH1cblxuLnNtYWxsLW9yZGVyLTIge1xuICBvcmRlcjogMjsgfVxuXG4uc21hbGwtb3JkZXItMyB7XG4gIG9yZGVyOiAzOyB9XG5cbi5zbWFsbC1vcmRlci00IHtcbiAgb3JkZXI6IDQ7IH1cblxuLnNtYWxsLW9yZGVyLTUge1xuICBvcmRlcjogNTsgfVxuXG4uc21hbGwtb3JkZXItNiB7XG4gIG9yZGVyOiA2OyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5tZWRpdW0tb3JkZXItMSB7XG4gICAgb3JkZXI6IDE7IH1cbiAgLm1lZGl1bS1vcmRlci0yIHtcbiAgICBvcmRlcjogMjsgfVxuICAubWVkaXVtLW9yZGVyLTMge1xuICAgIG9yZGVyOiAzOyB9XG4gIC5tZWRpdW0tb3JkZXItNCB7XG4gICAgb3JkZXI6IDQ7IH1cbiAgLm1lZGl1bS1vcmRlci01IHtcbiAgICBvcmRlcjogNTsgfVxuICAubWVkaXVtLW9yZGVyLTYge1xuICAgIG9yZGVyOiA2OyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmxhcmdlLW9yZGVyLTEge1xuICAgIG9yZGVyOiAxOyB9XG4gIC5sYXJnZS1vcmRlci0yIHtcbiAgICBvcmRlcjogMjsgfVxuICAubGFyZ2Utb3JkZXItMyB7XG4gICAgb3JkZXI6IDM7IH1cbiAgLmxhcmdlLW9yZGVyLTQge1xuICAgIG9yZGVyOiA0OyB9XG4gIC5sYXJnZS1vcmRlci01IHtcbiAgICBvcmRlcjogNTsgfVxuICAubGFyZ2Utb3JkZXItNiB7XG4gICAgb3JkZXI6IDY7IH0gfVxuXG4uZmxleC1jb250YWluZXIge1xuICBkaXNwbGF5OiBmbGV4OyB9XG5cbi5mbGV4LWNoaWxkLWF1dG8ge1xuICBmbGV4OiAxIDEgYXV0bzsgfVxuXG4uZmxleC1jaGlsZC1ncm93IHtcbiAgZmxleDogMSAwIGF1dG87IH1cblxuLmZsZXgtY2hpbGQtc2hyaW5rIHtcbiAgZmxleDogMCAxIGF1dG87IH1cblxuLmZsZXgtZGlyLXJvdyB7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7IH1cblxuLmZsZXgtZGlyLXJvdy1yZXZlcnNlIHtcbiAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlOyB9XG5cbi5mbGV4LWRpci1jb2x1bW4ge1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9XG5cbi5mbGV4LWRpci1jb2x1bW4tcmV2ZXJzZSB7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZTsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAubWVkaXVtLWZsZXgtY29udGFpbmVyIHtcbiAgICBkaXNwbGF5OiBmbGV4OyB9XG4gIC5tZWRpdW0tZmxleC1jaGlsZC1hdXRvIHtcbiAgICBmbGV4OiAxIDEgYXV0bzsgfVxuICAubWVkaXVtLWZsZXgtY2hpbGQtZ3JvdyB7XG4gICAgZmxleDogMSAwIGF1dG87IH1cbiAgLm1lZGl1bS1mbGV4LWNoaWxkLXNocmluayB7XG4gICAgZmxleDogMCAxIGF1dG87IH1cbiAgLm1lZGl1bS1mbGV4LWRpci1yb3cge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7IH1cbiAgLm1lZGl1bS1mbGV4LWRpci1yb3ctcmV2ZXJzZSB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlOyB9XG4gIC5tZWRpdW0tZmxleC1kaXItY29sdW1uIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9XG4gIC5tZWRpdW0tZmxleC1kaXItY29sdW1uLXJldmVyc2Uge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5sYXJnZS1mbGV4LWNvbnRhaW5lciB7XG4gICAgZGlzcGxheTogZmxleDsgfVxuICAubGFyZ2UtZmxleC1jaGlsZC1hdXRvIHtcbiAgICBmbGV4OiAxIDEgYXV0bzsgfVxuICAubGFyZ2UtZmxleC1jaGlsZC1ncm93IHtcbiAgICBmbGV4OiAxIDAgYXV0bzsgfVxuICAubGFyZ2UtZmxleC1jaGlsZC1zaHJpbmsge1xuICAgIGZsZXg6IDAgMSBhdXRvOyB9XG4gIC5sYXJnZS1mbGV4LWRpci1yb3cge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7IH1cbiAgLmxhcmdlLWZsZXgtZGlyLXJvdy1yZXZlcnNlIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7IH1cbiAgLmxhcmdlLWZsZXgtZGlyLWNvbHVtbiB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfVxuICAubGFyZ2UtZmxleC1kaXItY29sdW1uLXJldmVyc2Uge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZTsgfSB9XG5cbi8qXHJcbiAgTXkgY3VzdG9tIHN0eWxlczpcclxuICBBZGQgeW91ciBzY3NzIGZpbGVzIGJlbG93IHRvIHN0cnVjdHVyZSB5b3VyIHByb2plY3Qgc3R5bGVzXHJcbiovXG4uc2VsZWN0Mi1jb250YWluZXIge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbjogMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyB9XG4gIC5zZWxlY3QyLWNvbnRhaW5lciAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgaGVpZ2h0OiAyLjVyZW07XG4gICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTsgfVxuICAgIC5zZWxlY3QyLWNvbnRhaW5lciAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX3JlbmRlcmVkIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgcGFkZGluZy1sZWZ0OiA4cHg7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgfVxuICAgIC5zZWxlY3QyLWNvbnRhaW5lciAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX2NsZWFyIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAuc2VsZWN0Mi1jb250YWluZXJbZGlyPVwicnRsXCJdIC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlIC5zZWxlY3QyLXNlbGVjdGlvbl9fcmVuZGVyZWQge1xuICAgIHBhZGRpbmctcmlnaHQ6IDhweDtcbiAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7IH1cbiAgLnNlbGVjdDItY29udGFpbmVyIC5zZWxlY3QyLXNlbGVjdGlvbi0tbXVsdGlwbGUge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1pbi1oZWlnaHQ6IDMycHg7XG4gICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTsgfVxuICAgIC5zZWxlY3QyLWNvbnRhaW5lciAuc2VsZWN0Mi1zZWxlY3Rpb24tLW11bHRpcGxlIC5zZWxlY3QyLXNlbGVjdGlvbl9fcmVuZGVyZWQge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgIHBhZGRpbmctbGVmdDogOHB4O1xuICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgICB3aGl0ZS1zcGFjZTogbm93cmFwOyB9XG4gIC5zZWxlY3QyLWNvbnRhaW5lciAuc2VsZWN0Mi1zZWFyY2gtLWlubGluZSB7XG4gICAgZmxvYXQ6IGxlZnQ7IH1cbiAgICAuc2VsZWN0Mi1jb250YWluZXIgLnNlbGVjdDItc2VhcmNoLS1pbmxpbmUgLnNlbGVjdDItc2VhcmNoX19maWVsZCB7XG4gICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgZm9udC1zaXplOiAxMDAlO1xuICAgICAgbWFyZ2luLXRvcDogNXB4O1xuICAgICAgcGFkZGluZzogMDsgfVxuICAgICAgLnNlbGVjdDItY29udGFpbmVyIC5zZWxlY3QyLXNlYXJjaC0taW5saW5lIC5zZWxlY3QyLXNlYXJjaF9fZmllbGQ6Oi13ZWJraXQtc2VhcmNoLWNhbmNlbC1idXR0b24ge1xuICAgICAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7IH1cblxuLnNlbGVjdDItZHJvcGRvd24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAtMTAwMDAwcHg7XG4gIHdpZHRoOiAxMDAlO1xuICB6LWluZGV4OiA0OyB9XG5cbi5zZWxlY3QyLXJlc3VsdHMge1xuICBkaXNwbGF5OiBibG9jazsgfVxuXG4uc2VsZWN0Mi1yZXN1bHRzX19vcHRpb25zIHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwOyB9XG5cbi5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbiB7XG4gIHBhZGRpbmc6IDZweDtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7IH1cbiAgLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uW2FyaWEtc2VsZWN0ZWRdIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7IH1cblxuLnNlbGVjdDItY29udGFpbmVyLS1vcGVuIC5zZWxlY3QyLWRyb3Bkb3duIHtcbiAgbGVmdDogMDsgfVxuXG4uc2VsZWN0Mi1jb250YWluZXItLW9wZW4gLnNlbGVjdDItZHJvcGRvd24tLWFib3ZlIHtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMDtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDA7IH1cblxuLnNlbGVjdDItY29udGFpbmVyLS1vcGVuIC5zZWxlY3QyLWRyb3Bkb3duLS1iZWxvdyB7XG4gIGJvcmRlci10b3A6IG5vbmU7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwOyB9XG5cbi5zZWxlY3QyLXNlYXJjaC0tZHJvcGRvd24ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogNHB4OyB9XG4gIC5zZWxlY3QyLXNlYXJjaC0tZHJvcGRvd24gLnNlbGVjdDItc2VhcmNoX19maWVsZCB7XG4gICAgcGFkZGluZzogNHB4O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IH1cbiAgICAuc2VsZWN0Mi1zZWFyY2gtLWRyb3Bkb3duIC5zZWxlY3QyLXNlYXJjaF9fZmllbGQ6Oi13ZWJraXQtc2VhcmNoLWNhbmNlbC1idXR0b24ge1xuICAgICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lOyB9XG4gIC5zZWxlY3QyLXNlYXJjaC0tZHJvcGRvd24uc2VsZWN0Mi1zZWFyY2gtLWhpZGUge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cblxuLnNlbGVjdDItY2xvc2UtbWFzayB7XG4gIGJvcmRlcjogMDtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IGZpeGVkO1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG4gIG1pbi1oZWlnaHQ6IDEwMCU7XG4gIG1pbi13aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBhdXRvO1xuICB3aWR0aDogYXV0bztcbiAgb3BhY2l0eTogMDtcbiAgei1pbmRleDogOTk7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGZpbHRlcjogYWxwaGEob3BhY2l0eT0wKTsgfVxuXG4uc2VsZWN0Mi1oaWRkZW4tYWNjZXNzaWJsZSB7XG4gIGJvcmRlcjogMCAhaW1wb3J0YW50O1xuICBjbGlwOiByZWN0KDAgMCAwIDApICFpbXBvcnRhbnQ7XG4gIGhlaWdodDogMXB4ICFpbXBvcnRhbnQ7XG4gIG1hcmdpbjogLTFweCAhaW1wb3J0YW50O1xuICBvdmVyZmxvdzogaGlkZGVuICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG4gIHdpZHRoOiAxcHggIWltcG9ydGFudDsgfVxuXG4uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmVmZWZlO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2YyZjJmMjtcbiAgYm9yZGVyLXJhZGl1czogMC42MjVyZW07XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC41cyBlYXNlLWluLW91dDsgfVxuICAuc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGU6Zm9jdXMge1xuICAgIG91dGxpbmU6IG5vbmU7IH1cbiAgLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlIC5zZWxlY3QyLXNlbGVjdGlvbl9fcmVuZGVyZWQge1xuICAgIGNvbG9yOiAjNDQ0O1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICAgIGxpbmUtaGVpZ2h0OiAyLjVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAxLjI1cmVtOyB9XG4gICAgLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlIC5zZWxlY3QyLXNlbGVjdGlvbl9fcmVuZGVyZWQ6Zm9jdXMge1xuICAgICAgb3V0bGluZTogbm9uZTsgfVxuICAuc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUgLnNlbGVjdDItc2VsZWN0aW9uX19jbGVhciB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGZsb2F0OiByaWdodDtcbiAgICBmb250LXdlaWdodDogYm9sZDsgfVxuICAuc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUgLnNlbGVjdDItc2VsZWN0aW9uX19wbGFjZWhvbGRlciB7XG4gICAgY29sb3I6ICM5OTk7IH1cbiAgLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlIC5zZWxlY3QyLXNlbGVjdGlvbl9fYXJyb3cge1xuICAgIGhlaWdodDogMS4yNXJlbTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwLjYyNXJlbTtcbiAgICB3aWR0aDogMS4yNXJlbTsgfVxuICAgIC5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX2Fycm93IGI6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHdpZHRoOiAwLjYyNXJlbTtcbiAgICAgIGhlaWdodDogMC42MjVyZW07XG4gICAgICBtYXJnaW4tbGVmdDogMC4yNXJlbTtcbiAgICAgIG1hcmdpbi10b3A6IC0wLjE4NzVyZW07XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIzY4MDBkMjtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjNjgwMGQyO1xuICAgICAgdHJhbnNmb3JtLW9yaWdpbjogMCBjZW50ZXI7XG4gICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7IH1cblxuLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0W2Rpcj1cInJ0bFwiXSAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX2NsZWFyIHtcbiAgZmxvYXQ6IGxlZnQ7IH1cblxuLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0W2Rpcj1cInJ0bFwiXSAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX2Fycm93IHtcbiAgbGVmdDogMXB4O1xuICByaWdodDogYXV0bzsgfVxuXG4uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQuc2VsZWN0Mi1jb250YWluZXItLWRpc2FibGVkIC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VlZTtcbiAgY3Vyc29yOiBkZWZhdWx0O1xuICBvcGFjaXR5OiAwLjU7IH1cbiAgLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0LnNlbGVjdDItY29udGFpbmVyLS1kaXNhYmxlZCAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX2NsZWFyIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG5cbi5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdC5zZWxlY3QyLWNvbnRhaW5lci0tb3BlbiAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX2Fycm93IGI6YWZ0ZXIge1xuICBtYXJnaW4tdG9wOiAwLjE4NzVyZW07XG4gIGJvcmRlci1yaWdodDogMDtcbiAgYm9yZGVyLWJvdHRvbTogMDtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICM2ODAwZDI7XG4gIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIzY4MDBkMjsgfVxuXG4uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZWZlZmU7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMjAyLCAyMDIsIDIwMiwgMCk7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGN1cnNvcjogdGV4dDsgfVxuICAuc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZTpmb2N1cyB7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjY2FjYWNhOyB9XG4gIC5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1zZWxlY3Rpb24tLW11bHRpcGxlIC5zZWxlY3QyLXNlbGVjdGlvbl9fcmVuZGVyZWQge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDAgMTBweDtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAgIC5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1zZWxlY3Rpb24tLW11bHRpcGxlIC5zZWxlY3QyLXNlbGVjdGlvbl9fcmVuZGVyZWQgbGkge1xuICAgICAgbGlzdC1zdHlsZTogbm9uZTsgfVxuICAgIC5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1zZWxlY3Rpb24tLW11bHRpcGxlIC5zZWxlY3QyLXNlbGVjdGlvbl9fcmVuZGVyZWQ6Zm9jdXMge1xuICAgICAgb3V0bGluZTogbm9uZTsgfVxuICAuc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX3BsYWNlaG9sZGVyIHtcbiAgICBjb2xvcjogIzk5OTtcbiAgICBtYXJnaW4tdG9wOiA1cHg7XG4gICAgZmxvYXQ6IGxlZnQ7IH1cbiAgLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXNlbGVjdGlvbi0tbXVsdGlwbGUgLnNlbGVjdDItc2VsZWN0aW9uX19jbGVhciB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGZsb2F0OiByaWdodDtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBtYXJnaW4tdG9wOiA1cHg7XG4gICAgbWFyZ2luLXJpZ2h0OiAxMHB4OyB9XG4gIC5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1zZWxlY3Rpb24tLW11bHRpcGxlIC5zZWxlY3QyLXNlbGVjdGlvbl9fY2hvaWNlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNjgwMGQyO1xuICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBtYXJnaW4tcmlnaHQ6IDVweDtcbiAgICBtYXJnaW4tdG9wOiAxMnB4O1xuICAgIG1pbi1oZWlnaHQ6IDM2cHg7XG4gICAgcGFkZGluZzogMCA1cHg7IH1cbiAgLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXNlbGVjdGlvbi0tbXVsdGlwbGUgLnNlbGVjdDItc2VsZWN0aW9uX19jaG9pY2VfX3JlbW92ZSB7XG4gICAgY29sb3I6ICNiMzY5ZmY7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGZvbnQtc2l6ZTogMS43NXJlbTtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgbWFyZ2luLXJpZ2h0OiAycHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogMnB4OyB9XG4gICAgLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXNlbGVjdGlvbi0tbXVsdGlwbGUgLnNlbGVjdDItc2VsZWN0aW9uX19jaG9pY2VfX3JlbW92ZTpob3ZlciB7XG4gICAgICBjb2xvcjogI2ZlZmVmZTsgfVxuXG4uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHRbZGlyPVwicnRsXCJdIC5zZWxlY3QyLXNlbGVjdGlvbi0tbXVsdGlwbGUgLnNlbGVjdDItc2VsZWN0aW9uX19jaG9pY2UsIC5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdFtkaXI9XCJydGxcIl0gLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX3BsYWNlaG9sZGVyLCAuc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHRbZGlyPVwicnRsXCJdIC5zZWxlY3QyLXNlbGVjdGlvbi0tbXVsdGlwbGUgLnNlbGVjdDItc2VhcmNoLS1pbmxpbmUge1xuICBmbG9hdDogcmlnaHQ7IH1cblxuLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0W2Rpcj1cInJ0bFwiXSAuc2VsZWN0Mi1zZWxlY3Rpb24tLW11bHRpcGxlIC5zZWxlY3QyLXNlbGVjdGlvbl9fY2hvaWNlIHtcbiAgbWFyZ2luLWxlZnQ6IDVweDtcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9XG5cbi5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdFtkaXI9XCJydGxcIl0gLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX2Nob2ljZV9fcmVtb3ZlIHtcbiAgbWFyZ2luLWxlZnQ6IDJweDtcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9XG5cbi5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdC5zZWxlY3QyLWNvbnRhaW5lci0tZm9jdXMgLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZSB7XG4gIGJvcmRlcjogc29saWQgYmxhY2sgMXB4O1xuICBvdXRsaW5lOiAwOyB9XG5cbi5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdC5zZWxlY3QyLWNvbnRhaW5lci0tZGlzYWJsZWQgLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlZWU7XG4gIGN1cnNvcjogZGVmYXVsdDsgfVxuXG4uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQuc2VsZWN0Mi1jb250YWluZXItLWRpc2FibGVkIC5zZWxlY3QyLXNlbGVjdGlvbl9fY2hvaWNlX19yZW1vdmUge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdC5zZWxlY3QyLWNvbnRhaW5lci0tb3Blbi5zZWxlY3QyLWNvbnRhaW5lci0tYWJvdmUgLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUsIC5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdC5zZWxlY3QyLWNvbnRhaW5lci0tb3Blbi5zZWxlY3QyLWNvbnRhaW5lci0tYWJvdmUgLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZSB7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwOyB9XG5cbi5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdC5zZWxlY3QyLWNvbnRhaW5lci0tb3Blbi5zZWxlY3QyLWNvbnRhaW5lci0tYmVsb3cgLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUsIC5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdC5zZWxlY3QyLWNvbnRhaW5lci0tb3Blbi5zZWxlY3QyLWNvbnRhaW5lci0tYmVsb3cgLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZSB7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwOyB9XG5cbi5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1zZWFyY2gtLWlubGluZSAuc2VsZWN0Mi1zZWFyY2hfX2ZpZWxkIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogbm9uZTtcbiAgb3V0bGluZTogMDtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGhlaWdodDogYXV0bztcbiAgbWFyZ2luLXRvcDogMTJweDsgfVxuXG4uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItcmVzdWx0cyA+IC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbnMge1xuICBtYXgtaGVpZ2h0OiAyMDBweDtcbiAgb3ZlcmZsb3cteTogYXV0bzsgfVxuXG4uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uIHtcbiAgcGFkZGluZzogMC4zNzVyZW0gMS4yNXJlbTsgfVxuICAuc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uW3JvbGU9Z3JvdXBdIHtcbiAgICBwYWRkaW5nOiAwOyB9XG4gIC5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb25bYXJpYS1kaXNhYmxlZD10cnVlXSB7XG4gICAgY29sb3I6ICM5OTk7IH1cbiAgLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvblthcmlhLXNlbGVjdGVkPXRydWVdIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGRkOyB9XG4gIC5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24gLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDFlbTsgfVxuICAgIC5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24gLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uIC5zZWxlY3QyLXJlc3VsdHNfX2dyb3VwIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMDsgfVxuICAgIC5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24gLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbiB7XG4gICAgICBtYXJnaW4tbGVmdDogLTFlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMmVtOyB9XG4gICAgICAuc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbiAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24gLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC0yZW07XG4gICAgICAgIHBhZGRpbmctbGVmdDogM2VtOyB9XG4gICAgICAgIC5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24gLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbiAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24gLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uIHtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogLTNlbTtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDRlbTsgfVxuICAgICAgICAgIC5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24gLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbiAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24gLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbiB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogLTRlbTtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogNWVtOyB9XG4gICAgICAgICAgICAuc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbiAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24gLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbiAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24gLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uIHtcbiAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC01ZW07XG4gICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogNmVtOyB9XG5cbi5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24tLWhpZ2hsaWdodGVkW2FyaWEtc2VsZWN0ZWRdIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZiZTIwMDsgfVxuXG4uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItcmVzdWx0c19fZ3JvdXAge1xuICBjdXJzb3I6IGRlZmF1bHQ7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiA2cHg7IH1cblxuLyogU2xpZGVyICovXG4uc2xpY2stc2xpZGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgLXdlYmtpdC10b3VjaC1jYWxsb3V0OiBub25lO1xuICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuICAta2h0bWwtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tcy11c2VyLXNlbGVjdDogbm9uZTtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tcy10b3VjaC1hY3Rpb246IHBhbi15O1xuICB0b3VjaC1hY3Rpb246IHBhbi15O1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG5cbi5zbGljay1saXN0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwOyB9XG4gIC5zbGljay1saXN0OmZvY3VzIHtcbiAgICBvdXRsaW5lOiBub25lOyB9XG4gIC5zbGljay1saXN0LmRyYWdnaW5nIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgY3Vyc29yOiBoYW5kOyB9XG5cbi5zbGljay1zbGlkZXIgLnNsaWNrLXRyYWNrLFxuLnNsaWNrLXNsaWRlciAuc2xpY2stbGlzdCB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTsgfVxuXG4uc2xpY2stdHJhY2sge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbiAgZGlzcGxheTogYmxvY2s7IH1cbiAgLnNsaWNrLXRyYWNrOmJlZm9yZSwgLnNsaWNrLXRyYWNrOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGRpc3BsYXk6IHRhYmxlOyB9XG4gIC5zbGljay10cmFjazphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgLnNsaWNrLWxvYWRpbmcgLnNsaWNrLXRyYWNrIHtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47IH1cblxuLnNsaWNrLXNsaWRlIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIGhlaWdodDogMTAwJTtcbiAgbWluLWhlaWdodDogMXB4O1xuICBkaXNwbGF5OiBub25lOyB9XG4gIFtkaXI9XCJydGxcIl0gLnNsaWNrLXNsaWRlIHtcbiAgICBmbG9hdDogcmlnaHQ7IH1cbiAgLnNsaWNrLXNsaWRlIGltZyB7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cbiAgLnNsaWNrLXNsaWRlLnNsaWNrLWxvYWRpbmcgaW1nIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIC5zbGljay1zbGlkZS5kcmFnZ2luZyBpbWcge1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lOyB9XG4gIC5zbGljay1pbml0aWFsaXplZCAuc2xpY2stc2xpZGUge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gIC5zbGljay1sb2FkaW5nIC5zbGljay1zbGlkZSB7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuOyB9XG4gIC5zbGljay12ZXJ0aWNhbCAuc2xpY2stc2xpZGUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDsgfVxuXG4uc2xpY2stYXJyb3cuc2xpY2staGlkZGVuIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4vKiBTbGlkZXIgKi9cbi5zbGljay1saXN0IHtcbiAgei1pbmRleDogMzsgfVxuICAuc2xpY2stbG9hZGluZyAuc2xpY2stbGlzdCB7XG4gICAgYmFja2dyb3VuZDogI2ZmZiB1cmwoXCIuLi9pbWFnZXMvYWpheC1sb2FkZXIuZ2lmXCIpIGNlbnRlciBjZW50ZXIgbm8tcmVwZWF0OyB9XG5cbi8qIEljb25zICovXG4vKiBBcnJvd3MgKi9cbi5zbGljay1wcmV2LFxuLnNsaWNrLW5leHQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgei1pbmRleDogNDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogNjBweDtcbiAgd2lkdGg6IDYwcHg7XG4gIGxpbmUtaGVpZ2h0OiAwcHg7XG4gIGZvbnQtc2l6ZTogMHB4O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGJhY2tncm91bmQ6ICM2ODAwZDI7XG4gIGNvbG9yOiAjZmVmZWZlO1xuICBwYWRkaW5nOiAwO1xuICBib3JkZXI6IG5vbmU7XG4gIG91dGxpbmU6IG5vbmU7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuc2xpY2stcHJldixcbiAgICAuc2xpY2stbmV4dCB7XG4gICAgICB0b3A6IGF1dG87XG4gICAgICBib3R0b206IDMwcHg7IH0gfVxuICAuc2xpY2stcHJldjpob3ZlciwgLnNsaWNrLXByZXY6Zm9jdXMsXG4gIC5zbGljay1uZXh0OmhvdmVyLFxuICAuc2xpY2stbmV4dDpmb2N1cyB7XG4gICAgb3V0bGluZTogbm9uZTsgfVxuICAgIC5zbGljay1wcmV2OmhvdmVyOmJlZm9yZSwgLnNsaWNrLXByZXY6Zm9jdXM6YmVmb3JlLFxuICAgIC5zbGljay1uZXh0OmhvdmVyOmJlZm9yZSxcbiAgICAuc2xpY2stbmV4dDpmb2N1czpiZWZvcmUge1xuICAgICAgb3BhY2l0eTogMTsgfVxuICAuc2xpY2stcHJldi5zbGljay1kaXNhYmxlZDpiZWZvcmUsXG4gIC5zbGljay1uZXh0LnNsaWNrLWRpc2FibGVkOmJlZm9yZSB7XG4gICAgb3BhY2l0eTogMC4yNTsgfVxuICAuc2xpY2stcHJldjpiZWZvcmUsXG4gIC5zbGljay1uZXh0OmJlZm9yZSB7XG4gICAgZm9udC1mYW1pbHk6IFwiRm9udCBBd2Vzb21lIDUgRnJlZVwiO1xuICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIGNvbG9yOiAjZmVmZWZlO1xuICAgIG9wYWNpdHk6IDAuODU7XG4gICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTsgfVxuXG4uc2xpY2stcHJldiB7XG4gIHJpZ2h0OiA5MHB4OyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLnNsaWNrLXByZXYge1xuICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICBsZWZ0OiAzMy43NXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAuc2xpY2stcHJldiB7XG4gICAgICBsZWZ0OiA0MS44NzVyZW07IH0gfVxuICAuc2xpY2stcHJldjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHdpZHRoOiAwLjU2MjVyZW07XG4gICAgaGVpZ2h0OiAwLjU2MjVyZW07XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgI2ZlZmVmZTtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICNmZWZlZmU7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7IH1cbiAgICBbZGlyPVwicnRsXCJdIC5zbGljay1wcmV2OmJlZm9yZSB7XG4gICAgICBib3JkZXItdG9wOiAxcHggc29saWQgI2ZlZmVmZTtcbiAgICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICNmZWZlZmU7XG4gICAgICBib3JkZXItbGVmdDogdHJhbnNwYXJlbnQ7XG4gICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7IH1cblxuLnNsaWNrLW5leHQge1xuICByaWdodDogMzBweDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5zbGljay1uZXh0IHtcbiAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgbGVmdDogMzcuNXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAuc2xpY2stbmV4dCB7XG4gICAgICBsZWZ0OiA0NS42MjVyZW07IH0gfVxuICAuc2xpY2stbmV4dDphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogMDtcbiAgICB0b3A6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgaGVpZ2h0OiAzMHB4O1xuICAgIHdpZHRoOiAxcHg7XG4gICAgYmFja2dyb3VuZDogI2ZlZmVmZTtcbiAgICB6LWluZGV4OiAyOyB9XG4gIC5zbGljay1uZXh0OmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgd2lkdGg6IDAuNTYyNXJlbTtcbiAgICBoZWlnaHQ6IDAuNTYyNXJlbTtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZmVmZWZlO1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICNmZWZlZmU7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTsgfVxuICAgIFtkaXI9XCJydGxcIl0gLnNsaWNrLW5leHQ6YmVmb3JlIHtcbiAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZmVmZWZlO1xuICAgICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjZmVmZWZlO1xuICAgICAgYm9yZGVyLXJpZ2h0OiB0cmFuc3BhcmVudDtcbiAgICAgIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTsgfVxuXG4vKiBEb3RzICovXG4uc2xpY2stZG90cyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMztcbiAgYm90dG9tOiAwLjYyNXJlbTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICBhbGlnbi1jb250ZW50OiBmbGV4LWVuZDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgbWFyZ2luOiAwO1xuICBsZWZ0OiBhdXRvO1xuICByaWdodDogMDtcbiAgbWFyZ2luLWxlZnQ6IDAuNXJlbTtcbiAgbWFyZ2luLXJpZ2h0OiAwLjVyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuc2xpY2stZG90cyB7XG4gICAgICBib3R0b206IDMuMTI1cmVtO1xuICAgICAgbWFyZ2luLWxlZnQ6IDAuODEyNXJlbTtcbiAgICAgIG1hcmdpbi1yaWdodDogMC44MTI1cmVtOyB9IH1cbiAgLnNsaWNrLWRvdHMgbGkge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luOiAwIDJweDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGN1cnNvcjogcG9pbnRlcjsgfVxuICAgIC5zbGljay1kb3RzIGxpOmJlZm9yZSB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgLnNsaWNrLWRvdHMgbGkgYnV0dG9uIHtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICM2ODAwZDI7XG4gICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgaGVpZ2h0OiAxMHB4O1xuICAgICAgd2lkdGg6IDEwcHg7XG4gICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgbGluZS1oZWlnaHQ6IDBweDtcbiAgICAgIGZvbnQtc2l6ZTogMHB4O1xuICAgICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgY3Vyc29yOiBwb2ludGVyOyB9XG4gICAgICAuc2xpY2stZG90cyBsaSBidXR0b246aG92ZXIsIC5zbGljay1kb3RzIGxpIGJ1dHRvbjpmb2N1cyB7XG4gICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICAgIGJhY2tncm91bmQ6ICM2ODAwZDI7XG4gICAgICAgIG9wYWNpdHk6IDE7IH1cbiAgICAuc2xpY2stZG90cyBsaS5zbGljay1hY3RpdmUgYnV0dG9uIHtcbiAgICAgIGJhY2tncm91bmQ6ICM2ODAwZDI7IH1cblxuLnNjcmVlbi1yZWFkZXItdGV4dCB7XG4gIGNsaXA6IHJlY3QoMXB4LCAxcHgsIDFweCwgMXB4KTtcbiAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG4gIGhlaWdodDogMXB4O1xuICB3aWR0aDogMXB4O1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG5cbi5zY3JlZW4tcmVhZGVyLXRleHQ6Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjFmMWYxO1xuICBib3JkZXItcmFkaXVzOiAzcHg7XG4gIGJveC1zaGFkb3c6IDAgMCAycHggMnB4IHJnYmEoMCwgMCwgMCwgMC42KTtcbiAgY2xpcDogYXV0byAhaW1wb3J0YW50O1xuICBjb2xvcjogIzIxNzU5YjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGhlaWdodDogYXV0bztcbiAgbGVmdDogNXB4O1xuICBsaW5lLWhlaWdodDogbm9ybWFsO1xuICBwYWRkaW5nOiAxNXB4IDIzcHggMTRweDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0b3A6IDVweDtcbiAgd2lkdGg6IGF1dG87XG4gIHotaW5kZXg6IDEwMDAwMDsgfVxuXG4jd3BhZG1pbmJhciB7XG4gIHBvc2l0aW9uOiBmaXhlZCAhaW1wb3J0YW50OyB9XG5cbmJvZHkuYWRtaW4tYmFyLmYtdG9wYmFyLWZpeGVkIC5zdGlja3kuZml4ZWQge1xuICBtYXJnaW4tdG9wOiAycmVtOyB9XG5cbmJvZHkuYWRtaW4tYmFyLm9mZmNhbnZhcyAub2ZmLWNhbnZhcy5pcy1vcGVuIHtcbiAgdG9wOiAyLjg3NXJlbTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OC45Mzc1ZW0pIHtcbiAgICBib2R5LmFkbWluLWJhci5vZmZjYW52YXMgLm9mZi1jYW52YXMuaXMtb3BlbiB7XG4gICAgICB0b3A6IDJyZW07IH0gfVxuXG4ud3AtY2FwdGlvbiA+IGZpZ2NhcHRpb24ge1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIGZvbnQtc2l6ZTogMC44cmVtO1xuICBjb2xvcjogIzk5OTtcbiAgcGFkZGluZzogMC4yNXJlbSAwOyB9XG5cbnAud3AtY2FwdGlvbi10ZXh0IHtcbiAgZm9udC1zaXplOiA5MCU7XG4gIGNvbG9yOiAjNjY2O1xuICBwYWRkaW5nOiAwLjYyNXJlbSAwOyB9XG5cbi5hbGlnbmxlZnQge1xuICBmbG9hdDogbGVmdDtcbiAgcGFkZGluZy1yaWdodDogMXJlbTtcbiAgbWFyZ2luOiAwOyB9XG5cbi5hbGlnbnJpZ2h0IHtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBwYWRkaW5nLWxlZnQ6IDFyZW07XG4gIG1hcmdpbjogMDsgfVxuXG4uYWxpZ25jZW50ZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bzsgfVxuXG4uZ2FsbGVyeSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gIG1hcmdpbi1yaWdodDogLTAuNjI1cmVtO1xuICBtYXJnaW4tbGVmdDogLTAuNjI1cmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmdhbGxlcnkge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAtMC45Mzc1cmVtO1xuICAgICAgbWFyZ2luLWxlZnQ6IC0wLjkzNzVyZW07IH0gfVxuICAuZ2FsbGVyeS5nYWxsZXJ5LWNvbHVtbnMtMSA+IC5nYWxsZXJ5LWl0ZW0ge1xuICAgIHdpZHRoOiBjYWxjKDUwJSAtIDEuMjVyZW0pO1xuICAgIG1hcmdpbi1yaWdodDogMC42MjVyZW07XG4gICAgbWFyZ2luLWxlZnQ6IDAuNjI1cmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmdhbGxlcnkuZ2FsbGVyeS1jb2x1bW5zLTEgPiAuZ2FsbGVyeS1pdGVtIHtcbiAgICAgIHdpZHRoOiBjYWxjKDI1JSAtIDEuODc1cmVtKTtcbiAgICAgIG1hcmdpbi1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgbWFyZ2luLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmdhbGxlcnkuZ2FsbGVyeS1jb2x1bW5zLTEgPiAuZ2FsbGVyeS1pdGVtIHtcbiAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAxLjg3NXJlbSk7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICAuZ2FsbGVyeS5nYWxsZXJ5LWNvbHVtbnMtMiA+IC5nYWxsZXJ5LWl0ZW0ge1xuICAgIHdpZHRoOiBjYWxjKDUwJSAtIDEuMjVyZW0pO1xuICAgIG1hcmdpbi1yaWdodDogMC42MjVyZW07XG4gICAgbWFyZ2luLWxlZnQ6IDAuNjI1cmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmdhbGxlcnkuZ2FsbGVyeS1jb2x1bW5zLTIgPiAuZ2FsbGVyeS1pdGVtIHtcbiAgICAgIHdpZHRoOiBjYWxjKDI1JSAtIDEuODc1cmVtKTtcbiAgICAgIG1hcmdpbi1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgbWFyZ2luLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmdhbGxlcnkuZ2FsbGVyeS1jb2x1bW5zLTIgPiAuZ2FsbGVyeS1pdGVtIHtcbiAgICAgIHdpZHRoOiBjYWxjKDUwJSAtIDEuODc1cmVtKTtcbiAgICAgIG1hcmdpbi1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgbWFyZ2luLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gIC5nYWxsZXJ5LmdhbGxlcnktY29sdW1ucy0zID4gLmdhbGxlcnktaXRlbSB7XG4gICAgd2lkdGg6IGNhbGMoNTAlIC0gMS4yNXJlbSk7XG4gICAgbWFyZ2luLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICBtYXJnaW4tbGVmdDogMC42MjVyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZ2FsbGVyeS5nYWxsZXJ5LWNvbHVtbnMtMyA+IC5nYWxsZXJ5LWl0ZW0ge1xuICAgICAgd2lkdGg6IGNhbGMoMjUlIC0gMS44NzVyZW0pO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICBtYXJnaW4tbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuZ2FsbGVyeS5nYWxsZXJ5LWNvbHVtbnMtMyA+IC5nYWxsZXJ5LWl0ZW0ge1xuICAgICAgd2lkdGg6IGNhbGMoMzMuMzMzMzMlIC0gMS44NzVyZW0pO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICBtYXJnaW4tbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgLmdhbGxlcnkuZ2FsbGVyeS1jb2x1bW5zLTQgPiAuZ2FsbGVyeS1pdGVtIHtcbiAgICB3aWR0aDogY2FsYyg1MCUgLSAxLjI1cmVtKTtcbiAgICBtYXJnaW4tcmlnaHQ6IDAuNjI1cmVtO1xuICAgIG1hcmdpbi1sZWZ0OiAwLjYyNXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5nYWxsZXJ5LmdhbGxlcnktY29sdW1ucy00ID4gLmdhbGxlcnktaXRlbSB7XG4gICAgICB3aWR0aDogY2FsYygyNSUgLSAxLjg3NXJlbSk7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5nYWxsZXJ5LmdhbGxlcnktY29sdW1ucy00ID4gLmdhbGxlcnktaXRlbSB7XG4gICAgICB3aWR0aDogY2FsYygyNSUgLSAxLjg3NXJlbSk7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICAuZ2FsbGVyeS5nYWxsZXJ5LWNvbHVtbnMtNSA+IC5nYWxsZXJ5LWl0ZW0ge1xuICAgIHdpZHRoOiBjYWxjKDUwJSAtIDEuMjVyZW0pO1xuICAgIG1hcmdpbi1yaWdodDogMC42MjVyZW07XG4gICAgbWFyZ2luLWxlZnQ6IDAuNjI1cmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmdhbGxlcnkuZ2FsbGVyeS1jb2x1bW5zLTUgPiAuZ2FsbGVyeS1pdGVtIHtcbiAgICAgIHdpZHRoOiBjYWxjKDI1JSAtIDEuODc1cmVtKTtcbiAgICAgIG1hcmdpbi1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgbWFyZ2luLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmdhbGxlcnkuZ2FsbGVyeS1jb2x1bW5zLTUgPiAuZ2FsbGVyeS1pdGVtIHtcbiAgICAgIHdpZHRoOiBjYWxjKDIwJSAtIDEuODc1cmVtKTtcbiAgICAgIG1hcmdpbi1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgbWFyZ2luLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gIC5nYWxsZXJ5LmdhbGxlcnktY29sdW1ucy02ID4gLmdhbGxlcnktaXRlbSB7XG4gICAgd2lkdGg6IGNhbGMoNTAlIC0gMS4yNXJlbSk7XG4gICAgbWFyZ2luLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICBtYXJnaW4tbGVmdDogMC42MjVyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZ2FsbGVyeS5nYWxsZXJ5LWNvbHVtbnMtNiA+IC5nYWxsZXJ5LWl0ZW0ge1xuICAgICAgd2lkdGg6IGNhbGMoMjUlIC0gMS44NzVyZW0pO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICBtYXJnaW4tbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuZ2FsbGVyeS5nYWxsZXJ5LWNvbHVtbnMtNiA+IC5nYWxsZXJ5LWl0ZW0ge1xuICAgICAgd2lkdGg6IGNhbGMoMTYuNjY2NjclIC0gMS44NzVyZW0pO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICBtYXJnaW4tbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgLmdhbGxlcnkuZ2FsbGVyeS1jb2x1bW5zLTcgPiAuZ2FsbGVyeS1pdGVtIHtcbiAgICB3aWR0aDogY2FsYyg1MCUgLSAxLjI1cmVtKTtcbiAgICBtYXJnaW4tcmlnaHQ6IDAuNjI1cmVtO1xuICAgIG1hcmdpbi1sZWZ0OiAwLjYyNXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5nYWxsZXJ5LmdhbGxlcnktY29sdW1ucy03ID4gLmdhbGxlcnktaXRlbSB7XG4gICAgICB3aWR0aDogY2FsYygyNSUgLSAxLjg3NXJlbSk7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5nYWxsZXJ5LmdhbGxlcnktY29sdW1ucy03ID4gLmdhbGxlcnktaXRlbSB7XG4gICAgICB3aWR0aDogY2FsYygxNC4yODU3MSUgLSAxLjg3NXJlbSk7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICAuZ2FsbGVyeS5nYWxsZXJ5LWNvbHVtbnMtOCA+IC5nYWxsZXJ5LWl0ZW0ge1xuICAgIHdpZHRoOiBjYWxjKDUwJSAtIDEuMjVyZW0pO1xuICAgIG1hcmdpbi1yaWdodDogMC42MjVyZW07XG4gICAgbWFyZ2luLWxlZnQ6IDAuNjI1cmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmdhbGxlcnkuZ2FsbGVyeS1jb2x1bW5zLTggPiAuZ2FsbGVyeS1pdGVtIHtcbiAgICAgIHdpZHRoOiBjYWxjKDI1JSAtIDEuODc1cmVtKTtcbiAgICAgIG1hcmdpbi1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgbWFyZ2luLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmdhbGxlcnkuZ2FsbGVyeS1jb2x1bW5zLTggPiAuZ2FsbGVyeS1pdGVtIHtcbiAgICAgIHdpZHRoOiBjYWxjKDEyLjUlIC0gMS44NzVyZW0pO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICBtYXJnaW4tbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgLmdhbGxlcnkuZ2FsbGVyeS1jb2x1bW5zLTkgPiAuZ2FsbGVyeS1pdGVtIHtcbiAgICB3aWR0aDogY2FsYyg1MCUgLSAxLjI1cmVtKTtcbiAgICBtYXJnaW4tcmlnaHQ6IDAuNjI1cmVtO1xuICAgIG1hcmdpbi1sZWZ0OiAwLjYyNXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5nYWxsZXJ5LmdhbGxlcnktY29sdW1ucy05ID4gLmdhbGxlcnktaXRlbSB7XG4gICAgICB3aWR0aDogY2FsYygyNSUgLSAxLjg3NXJlbSk7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5nYWxsZXJ5LmdhbGxlcnktY29sdW1ucy05ID4gLmdhbGxlcnktaXRlbSB7XG4gICAgICB3aWR0aDogY2FsYygxMS4xMTExMSUgLSAxLjg3NXJlbSk7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICAuZ2FsbGVyeSAuZ2FsbGVyeS1pY29uID4gYSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgIGJvcmRlcjogc29saWQgNHB4ICNmZWZlZmU7XG4gICAgYm9yZGVyLXJhZGl1czogMS4yNXJlbTtcbiAgICBib3gtc2hhZG93OiAwIDAgMCAxcHggcmdiYSgxMCwgMTAsIDEwLCAwLjIpO1xuICAgIGxpbmUtaGVpZ2h0OiAwO1xuICAgIHRyYW5zaXRpb246IGJveC1zaGFkb3cgMjAwbXMgZWFzZS1vdXQ7IH1cbiAgICAuZ2FsbGVyeSAuZ2FsbGVyeS1pY29uID4gYTpob3ZlciwgLmdhbGxlcnkgLmdhbGxlcnktaWNvbiA+IGE6Zm9jdXMge1xuICAgICAgYm94LXNoYWRvdzogMCAwIDZweCAxcHggcmdiYSgxMDQsIDAsIDIxMCwgMC41KTsgfVxuICAgIC5nYWxsZXJ5IC5nYWxsZXJ5LWljb24gPiBhIGltYWdlIHtcbiAgICAgIGJveC1zaGFkb3c6IG5vbmU7IH1cbiAgLmdhbGxlcnkgLmdhbGxlcnktaWNvbiA+IGltZyxcbiAgLmdhbGxlcnkgLmdhbGxlcnktaWNvbiA+IHBpY3R1cmUgaW1nIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgYm9yZGVyOiBzb2xpZCA0cHggI2ZlZmVmZTtcbiAgICBib3JkZXItcmFkaXVzOiAxLjI1cmVtO1xuICAgIGJveC1zaGFkb3c6IDAgMCAwIDFweCByZ2JhKDEwLCAxMCwgMTAsIDAuMik7XG4gICAgbGluZS1oZWlnaHQ6IDA7IH1cblxuLypcclxuRnJvbnRlbmQgc3R5bGVzIGZvciBndXRlbmJlcmcgYmxvY2tzXHJcbiovXG4vKiogPT09IEJhc2UgQ29sb3IgUGFsYXR0ZSA9PT0gKi9cbi5oYXMtcHJpbWFyeS1iYWNrZ3JvdW5kLWNvbG9yIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzY4MDBkMjsgfVxuXG4uaGFzLXByaW1hcnktY29sb3Ige1xuICBjb2xvcjogIzY4MDBkMjsgfVxuXG4uaGFzLXNlY29uZGFyeS1iYWNrZ3JvdW5kLWNvbG9yIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZiZTIwMDsgfVxuXG4uaGFzLXNlY29uZGFyeS1jb2xvciB7XG4gIGNvbG9yOiAjZmJlMjAwOyB9XG5cbi5oYXMtc3VjY2Vzcy1iYWNrZ3JvdW5kLWNvbG9yIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzNhZGI3NjsgfVxuXG4uaGFzLXN1Y2Nlc3MtY29sb3Ige1xuICBjb2xvcjogIzNhZGI3NjsgfVxuXG4uaGFzLXdhcm5pbmctYmFja2dyb3VuZC1jb2xvciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmFlMDA7IH1cblxuLmhhcy13YXJuaW5nLWNvbG9yIHtcbiAgY29sb3I6ICNmZmFlMDA7IH1cblxuLmhhcy1hbGVydC1iYWNrZ3JvdW5kLWNvbG9yIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2NjNGIzNzsgfVxuXG4uaGFzLWFsZXJ0LWNvbG9yIHtcbiAgY29sb3I6ICNjYzRiMzc7IH1cblxuLyoqID09PSBCdXR0b24gPT09ICovXG4ud3AtYmxvY2stYnV0dG9uIC53cC1ibG9jay1idXR0b25fX2xpbmsuaGFzLXByaW1hcnktYmFja2dyb3VuZC1jb2xvciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM2ODAwZDI7IH1cblxuLndwLWJsb2NrLWJ1dHRvbiAud3AtYmxvY2stYnV0dG9uX19saW5rLmhhcy1wcmltYXJ5LWNvbG9yIHtcbiAgY29sb3I6ICM2ODAwZDI7IH1cblxuLndwLWJsb2NrLWJ1dHRvbiAud3AtYmxvY2stYnV0dG9uX19saW5rLmhhcy1zZWNvbmRhcnktYmFja2dyb3VuZC1jb2xvciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmYmUyMDA7IH1cblxuLndwLWJsb2NrLWJ1dHRvbiAud3AtYmxvY2stYnV0dG9uX19saW5rLmhhcy1zZWNvbmRhcnktY29sb3Ige1xuICBjb2xvcjogI2ZiZTIwMDsgfVxuXG4ud3AtYmxvY2stYnV0dG9uIC53cC1ibG9jay1idXR0b25fX2xpbmsuaGFzLXN1Y2Nlc3MtYmFja2dyb3VuZC1jb2xvciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzYWRiNzY7IH1cblxuLndwLWJsb2NrLWJ1dHRvbiAud3AtYmxvY2stYnV0dG9uX19saW5rLmhhcy1zdWNjZXNzLWNvbG9yIHtcbiAgY29sb3I6ICMzYWRiNzY7IH1cblxuLndwLWJsb2NrLWJ1dHRvbiAud3AtYmxvY2stYnV0dG9uX19saW5rLmhhcy13YXJuaW5nLWJhY2tncm91bmQtY29sb3Ige1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZhZTAwOyB9XG5cbi53cC1ibG9jay1idXR0b24gLndwLWJsb2NrLWJ1dHRvbl9fbGluay5oYXMtd2FybmluZy1jb2xvciB7XG4gIGNvbG9yOiAjZmZhZTAwOyB9XG5cbi53cC1ibG9jay1idXR0b24gLndwLWJsb2NrLWJ1dHRvbl9fbGluay5oYXMtYWxlcnQtYmFja2dyb3VuZC1jb2xvciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjYzRiMzc7IH1cblxuLndwLWJsb2NrLWJ1dHRvbiAud3AtYmxvY2stYnV0dG9uX19saW5rLmhhcy1hbGVydC1jb2xvciB7XG4gIGNvbG9yOiAjY2M0YjM3OyB9XG5cbi53cC1ibG9jay1idXR0b24uaXMtc3R5bGUtc3F1YXJlZCAud3AtYmxvY2stYnV0dG9uX19saW5rIHtcbiAgYm9yZGVyLXJhZGl1czogMDsgfVxuXG4vKiogPT09IEZpbGUgPT09ICovXG4ud3AtYmxvY2stZmlsZSAud3AtYmxvY2stZmlsZV9fYnV0dG9uIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBtYXJnaW46IDAgMCAxcmVtIDA7XG4gIHBhZGRpbmc6IDAuNXJlbSAxLjg3NXJlbSAwLjYyNXJlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yYWRpdXM6IDEuMjVyZW07XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4yNXMgZWFzZS1vdXQsIGNvbG9yIDAuMjVzIGVhc2Utb3V0O1xuICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgZm9udC1zaXplOiAwLjlyZW07XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNjgwMGQyO1xuICBjb2xvcjogI2ZlZmVmZTsgfVxuICBbZGF0YS13aGF0aW5wdXQ9J21vdXNlJ10gLndwLWJsb2NrLWZpbGUgLndwLWJsb2NrLWZpbGVfX2J1dHRvbiB7XG4gICAgb3V0bGluZTogMDsgfVxuICAud3AtYmxvY2stZmlsZSAud3AtYmxvY2stZmlsZV9fYnV0dG9uOmhvdmVyLCAud3AtYmxvY2stZmlsZSAud3AtYmxvY2stZmlsZV9fYnV0dG9uOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNTgwMGIzO1xuICAgIGNvbG9yOiAjZmVmZWZlOyB9XG5cbi5tb2JpbGUtbWVudSxcbi5zaXRlLXRpdGxlLWJhciB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBwYWRkaW5nOiAwOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLm1vYmlsZS1tZW51LFxuICAgIC5zaXRlLXRpdGxlLWJhciB7XG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuICBodG1sW2FtcF0gLm1vYmlsZS1tZW51LCBodG1sW2FtcF1cbiAgLnNpdGUtdGl0bGUtYmFyIHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50OyB9XG4gIC5tb2JpbGUtbWVudSBzdmcsXG4gIC5zaXRlLXRpdGxlLWJhciBzdmcge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1heC13aWR0aDogNy44MTI1cmVtO1xuICAgIG1heC1oZWlnaHQ6IDEuODc1cmVtOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5tb2JpbGUtbWVudSBzdmcsXG4gICAgICAuc2l0ZS10aXRsZS1iYXIgc3ZnIHtcbiAgICAgICAgbWF4LXdpZHRoOiA2LjI1cmVtO1xuICAgICAgICBtYXgtaGVpZ2h0OiAxLjVyZW07IH0gfVxuICAubW9iaWxlLW1lbnUgLnRpdGxlLWJhci1sZWZ0LFxuICAuc2l0ZS10aXRsZS1iYXIgLnRpdGxlLWJhci1sZWZ0IHtcbiAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgICBwYWRkaW5nLXRvcDogMC42MjVyZW07XG4gICAgcGFkZGluZy1ib3R0b206IDAuNjI1cmVtO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZjJmMmYyOyB9XG4gICAgLm1vYmlsZS1tZW51IC50aXRsZS1iYXItbGVmdCxcbiAgICAubW9iaWxlLW1lbnUgLnRpdGxlLWJhci1sZWZ0IHN2ZyAqLFxuICAgIC5zaXRlLXRpdGxlLWJhciAudGl0bGUtYmFyLWxlZnQsXG4gICAgLnNpdGUtdGl0bGUtYmFyIC50aXRsZS1iYXItbGVmdCBzdmcgKiB7XG4gICAgICB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlLWluLW91dDsgfVxuICAgIC5tb2JpbGUtbWVudSAudGl0bGUtYmFyLWxlZnQgPiAuYm9keS1wdXNoLCAubW9iaWxlLW1lbnUgLnRpdGxlLWJhci1sZWZ0ID4gLnNsaWNrLWRvdHMsIC5tb2JpbGUtbWVudSAudG9wLWJhciB1bCA+IGxpLm1lZ2EtbWVudS1ncmlkLnRpdGxlLWJhci1sZWZ0ID4gdWwubWVnYS1zdWItbWVudSwgLnRvcC1iYXIgLm1vYmlsZS1tZW51IHVsID4gbGkubWVnYS1tZW51LWdyaWQudGl0bGUtYmFyLWxlZnQgPiB1bC5tZWdhLXN1Yi1tZW51LFxuICAgIC5tb2JpbGUtbWVudSAudG9wLWJhciAjbWVnYS1tZW51LXdyYXAtdG9wLWJhci1yICNtZWdhLW1lbnUtdG9wLWJhci1yID4gbGkubWVnYS1tZW51LWdyaWQudGl0bGUtYmFyLWxlZnQgPiB1bC5tZWdhLXN1Yi1tZW51LCAudG9wLWJhciAjbWVnYS1tZW51LXdyYXAtdG9wLWJhci1yIC5tb2JpbGUtbWVudSAjbWVnYS1tZW51LXRvcC1iYXItciA+IGxpLm1lZ2EtbWVudS1ncmlkLnRpdGxlLWJhci1sZWZ0ID4gdWwubWVnYS1zdWItbWVudSwgLm1vYmlsZS1tZW51IC5kcm9wZG93bi5tZW51ID4gbGkudGl0bGUtYmFyLWxlZnQgPiAuaXMtZHJvcGRvd24tc3VibWVudSwgLm1vYmlsZS1tZW51IGJvZHkuc2luZ2xlLWNhc2Vfc3R1ZHkgc2VjdGlvbi50YWJiZWQtY29udGVudCAudGl0bGUtYmFyLWxlZnQgPiAudGFicy13cmFwcGVyLCBib2R5LnNpbmdsZS1jYXNlX3N0dWR5IHNlY3Rpb24udGFiYmVkLWNvbnRlbnQgLm1vYmlsZS1tZW51IC50aXRsZS1iYXItbGVmdCA+IC50YWJzLXdyYXBwZXIsIC5tb2JpbGUtbWVudSBib2R5LnNpbmdsZS1jYXNlX3N0dWR5IHNlY3Rpb24udGFiYmVkLWNvbnRlbnQgLnRpdGxlLWJhci1sZWZ0ID4gLnRhYnMtY29udGVudCwgYm9keS5zaW5nbGUtY2FzZV9zdHVkeSBzZWN0aW9uLnRhYmJlZC1jb250ZW50IC5tb2JpbGUtbWVudSAudGl0bGUtYmFyLWxlZnQgPiAudGFicy1jb250ZW50LFxuICAgIC5zaXRlLXRpdGxlLWJhciAudGl0bGUtYmFyLWxlZnQgPiAuYm9keS1wdXNoLFxuICAgIC5zaXRlLXRpdGxlLWJhciAudGl0bGUtYmFyLWxlZnQgPiAuc2xpY2stZG90cyxcbiAgICAuc2l0ZS10aXRsZS1iYXIgLnRvcC1iYXIgdWwgPiBsaS5tZWdhLW1lbnUtZ3JpZC50aXRsZS1iYXItbGVmdCA+IHVsLm1lZ2Etc3ViLW1lbnUsXG4gICAgLnRvcC1iYXIgLnNpdGUtdGl0bGUtYmFyIHVsID4gbGkubWVnYS1tZW51LWdyaWQudGl0bGUtYmFyLWxlZnQgPiB1bC5tZWdhLXN1Yi1tZW51LFxuICAgIC5zaXRlLXRpdGxlLWJhciAudG9wLWJhciAjbWVnYS1tZW51LXdyYXAtdG9wLWJhci1yICNtZWdhLW1lbnUtdG9wLWJhci1yID4gbGkubWVnYS1tZW51LWdyaWQudGl0bGUtYmFyLWxlZnQgPiB1bC5tZWdhLXN1Yi1tZW51LFxuICAgIC50b3AtYmFyICNtZWdhLW1lbnUtd3JhcC10b3AtYmFyLXIgLnNpdGUtdGl0bGUtYmFyICNtZWdhLW1lbnUtdG9wLWJhci1yID4gbGkubWVnYS1tZW51LWdyaWQudGl0bGUtYmFyLWxlZnQgPiB1bC5tZWdhLXN1Yi1tZW51LFxuICAgIC5zaXRlLXRpdGxlLWJhciAuZHJvcGRvd24ubWVudSA+IGxpLnRpdGxlLWJhci1sZWZ0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUsXG4gICAgLnNpdGUtdGl0bGUtYmFyIGJvZHkuc2luZ2xlLWNhc2Vfc3R1ZHkgc2VjdGlvbi50YWJiZWQtY29udGVudCAudGl0bGUtYmFyLWxlZnQgPiAudGFicy13cmFwcGVyLFxuICAgIGJvZHkuc2luZ2xlLWNhc2Vfc3R1ZHkgc2VjdGlvbi50YWJiZWQtY29udGVudCAuc2l0ZS10aXRsZS1iYXIgLnRpdGxlLWJhci1sZWZ0ID4gLnRhYnMtd3JhcHBlcixcbiAgICAuc2l0ZS10aXRsZS1iYXIgYm9keS5zaW5nbGUtY2FzZV9zdHVkeSBzZWN0aW9uLnRhYmJlZC1jb250ZW50IC50aXRsZS1iYXItbGVmdCA+IC50YWJzLWNvbnRlbnQsXG4gICAgYm9keS5zaW5nbGUtY2FzZV9zdHVkeSBzZWN0aW9uLnRhYmJlZC1jb250ZW50IC5zaXRlLXRpdGxlLWJhciAudGl0bGUtYmFyLWxlZnQgPiAudGFicy1jb250ZW50IHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwLjYyNXJlbTtcbiAgICAgIG1hcmdpbi1yaWdodDogMC42MjVyZW07IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgIC5tb2JpbGUtbWVudSAudGl0bGUtYmFyLWxlZnQgPiAuYm9keS1wdXNoLCAubW9iaWxlLW1lbnUgLnRpdGxlLWJhci1sZWZ0ID4gLnNsaWNrLWRvdHMsIC5tb2JpbGUtbWVudSAudG9wLWJhciB1bCA+IGxpLm1lZ2EtbWVudS1ncmlkLnRpdGxlLWJhci1sZWZ0ID4gdWwubWVnYS1zdWItbWVudSwgLnRvcC1iYXIgLm1vYmlsZS1tZW51IHVsID4gbGkubWVnYS1tZW51LWdyaWQudGl0bGUtYmFyLWxlZnQgPiB1bC5tZWdhLXN1Yi1tZW51LFxuICAgICAgICAubW9iaWxlLW1lbnUgLnRvcC1iYXIgI21lZ2EtbWVudS13cmFwLXRvcC1iYXItciAjbWVnYS1tZW51LXRvcC1iYXItciA+IGxpLm1lZ2EtbWVudS1ncmlkLnRpdGxlLWJhci1sZWZ0ID4gdWwubWVnYS1zdWItbWVudSwgLnRvcC1iYXIgI21lZ2EtbWVudS13cmFwLXRvcC1iYXItciAubW9iaWxlLW1lbnUgI21lZ2EtbWVudS10b3AtYmFyLXIgPiBsaS5tZWdhLW1lbnUtZ3JpZC50aXRsZS1iYXItbGVmdCA+IHVsLm1lZ2Etc3ViLW1lbnUsIC5tb2JpbGUtbWVudSAuZHJvcGRvd24ubWVudSA+IGxpLnRpdGxlLWJhci1sZWZ0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUsIC5tb2JpbGUtbWVudSBib2R5LnNpbmdsZS1jYXNlX3N0dWR5IHNlY3Rpb24udGFiYmVkLWNvbnRlbnQgLnRpdGxlLWJhci1sZWZ0ID4gLnRhYnMtd3JhcHBlciwgYm9keS5zaW5nbGUtY2FzZV9zdHVkeSBzZWN0aW9uLnRhYmJlZC1jb250ZW50IC5tb2JpbGUtbWVudSAudGl0bGUtYmFyLWxlZnQgPiAudGFicy13cmFwcGVyLCAubW9iaWxlLW1lbnUgYm9keS5zaW5nbGUtY2FzZV9zdHVkeSBzZWN0aW9uLnRhYmJlZC1jb250ZW50IC50aXRsZS1iYXItbGVmdCA+IC50YWJzLWNvbnRlbnQsIGJvZHkuc2luZ2xlLWNhc2Vfc3R1ZHkgc2VjdGlvbi50YWJiZWQtY29udGVudCAubW9iaWxlLW1lbnUgLnRpdGxlLWJhci1sZWZ0ID4gLnRhYnMtY29udGVudCxcbiAgICAgICAgLnNpdGUtdGl0bGUtYmFyIC50aXRsZS1iYXItbGVmdCA+IC5ib2R5LXB1c2gsXG4gICAgICAgIC5zaXRlLXRpdGxlLWJhciAudGl0bGUtYmFyLWxlZnQgPiAuc2xpY2stZG90cyxcbiAgICAgICAgLnNpdGUtdGl0bGUtYmFyIC50b3AtYmFyIHVsID4gbGkubWVnYS1tZW51LWdyaWQudGl0bGUtYmFyLWxlZnQgPiB1bC5tZWdhLXN1Yi1tZW51LFxuICAgICAgICAudG9wLWJhciAuc2l0ZS10aXRsZS1iYXIgdWwgPiBsaS5tZWdhLW1lbnUtZ3JpZC50aXRsZS1iYXItbGVmdCA+IHVsLm1lZ2Etc3ViLW1lbnUsXG4gICAgICAgIC5zaXRlLXRpdGxlLWJhciAudG9wLWJhciAjbWVnYS1tZW51LXdyYXAtdG9wLWJhci1yICNtZWdhLW1lbnUtdG9wLWJhci1yID4gbGkubWVnYS1tZW51LWdyaWQudGl0bGUtYmFyLWxlZnQgPiB1bC5tZWdhLXN1Yi1tZW51LFxuICAgICAgICAudG9wLWJhciAjbWVnYS1tZW51LXdyYXAtdG9wLWJhci1yIC5zaXRlLXRpdGxlLWJhciAjbWVnYS1tZW51LXRvcC1iYXItciA+IGxpLm1lZ2EtbWVudS1ncmlkLnRpdGxlLWJhci1sZWZ0ID4gdWwubWVnYS1zdWItbWVudSxcbiAgICAgICAgLnNpdGUtdGl0bGUtYmFyIC5kcm9wZG93bi5tZW51ID4gbGkudGl0bGUtYmFyLWxlZnQgPiAuaXMtZHJvcGRvd24tc3VibWVudSxcbiAgICAgICAgLnNpdGUtdGl0bGUtYmFyIGJvZHkuc2luZ2xlLWNhc2Vfc3R1ZHkgc2VjdGlvbi50YWJiZWQtY29udGVudCAudGl0bGUtYmFyLWxlZnQgPiAudGFicy13cmFwcGVyLFxuICAgICAgICBib2R5LnNpbmdsZS1jYXNlX3N0dWR5IHNlY3Rpb24udGFiYmVkLWNvbnRlbnQgLnNpdGUtdGl0bGUtYmFyIC50aXRsZS1iYXItbGVmdCA+IC50YWJzLXdyYXBwZXIsXG4gICAgICAgIC5zaXRlLXRpdGxlLWJhciBib2R5LnNpbmdsZS1jYXNlX3N0dWR5IHNlY3Rpb24udGFiYmVkLWNvbnRlbnQgLnRpdGxlLWJhci1sZWZ0ID4gLnRhYnMtY29udGVudCxcbiAgICAgICAgYm9keS5zaW5nbGUtY2FzZV9zdHVkeSBzZWN0aW9uLnRhYmJlZC1jb250ZW50IC5zaXRlLXRpdGxlLWJhciAudGl0bGUtYmFyLWxlZnQgPiAudGFicy1jb250ZW50IHtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogMC45Mzc1cmVtO1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogMC45Mzc1cmVtOyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLm1vYmlsZS1tZW51IC50aXRsZS1iYXItbGVmdC5pcy1hbmNob3JlZCxcbiAgICAgIC5zaXRlLXRpdGxlLWJhciAudGl0bGUtYmFyLWxlZnQuaXMtYW5jaG9yZWQge1xuICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDApO1xuICAgICAgICBib3JkZXItYm90dG9tOiAwOyB9XG4gICAgICAgIGhlYWRlcjpub3QoLmJsYWNrKSAubW9iaWxlLW1lbnUgLnRpdGxlLWJhci1sZWZ0LmlzLWFuY2hvcmVkIHN2ZyNnYW1tYS1sb2dvLW1vYmlsZSAuc3QwLFxuICAgICAgICBoZWFkZXI6bm90KC5ibGFjaykgLm1vYmlsZS1tZW51IC50aXRsZS1iYXItbGVmdC5pcy1hbmNob3JlZCBzdmcjZ2FtbWEtbG9nby1tb2JpbGUgZyBwYXRoLCBoZWFkZXI6bm90KC5ibGFjaylcbiAgICAgICAgLnNpdGUtdGl0bGUtYmFyIC50aXRsZS1iYXItbGVmdC5pcy1hbmNob3JlZCBzdmcjZ2FtbWEtbG9nby1tb2JpbGUgLnN0MCxcbiAgICAgICAgaGVhZGVyOm5vdCguYmxhY2spXG4gICAgICAgIC5zaXRlLXRpdGxlLWJhciAudGl0bGUtYmFyLWxlZnQuaXMtYW5jaG9yZWQgc3ZnI2dhbW1hLWxvZ28tbW9iaWxlIGcgcGF0aCB7XG4gICAgICAgICAgZmlsbDogI2ZlZmVmZTsgfSB9XG4gICAgYm9keS5hZG1pbi1iYXIgLm1vYmlsZS1tZW51IC50aXRsZS1iYXItbGVmdC5pcy1zdHVjaywgYm9keS5hZG1pbi1iYXJcbiAgICAuc2l0ZS10aXRsZS1iYXIgLnRpdGxlLWJhci1sZWZ0LmlzLXN0dWNrIHtcbiAgICAgIHRvcDogMi44NzVyZW0gIWltcG9ydGFudDsgfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgYm9keS5hZG1pbi1iYXIgLm1vYmlsZS1tZW51IC50aXRsZS1iYXItbGVmdC5pcy1zdHVjaywgYm9keS5hZG1pbi1iYXJcbiAgICAgICAgLnNpdGUtdGl0bGUtYmFyIC50aXRsZS1iYXItbGVmdC5pcy1zdHVjayB7XG4gICAgICAgICAgdG9wOiAycmVtICFpbXBvcnRhbnQ7IH0gfVxuICAubW9iaWxlLW1lbnUgLnRpdGxlLWJhci10aXRsZSxcbiAgLnNpdGUtdGl0bGUtYmFyIC50aXRsZS1iYXItdGl0bGUge1xuICAgIG9yZGVyOiAxOyB9XG4gIC5tb2JpbGUtbWVudSAjc2l0ZS1uYXZpZ2F0aW9uLXRvZ2dsZSxcbiAgLnNpdGUtdGl0bGUtYmFyICNzaXRlLW5hdmlnYXRpb24tdG9nZ2xlIHtcbiAgICBvcmRlcjogMzsgfVxuICAubW9iaWxlLW1lbnUgLmhlYWRlci1zdHJhcGxpbmUtbW9iaWxlLFxuICAuc2l0ZS10aXRsZS1iYXIgLmhlYWRlci1zdHJhcGxpbmUtbW9iaWxlIHtcbiAgICBvcmRlcjogMjtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjQwcHgpIHtcbiAgICAubW9iaWxlLW1lbnUgLmhlYWRlci1zdHJhcGxpbmUtbW9iaWxlLFxuICAgIC5zaXRlLXRpdGxlLWJhciAuaGVhZGVyLXN0cmFwbGluZS1tb2JpbGUge1xuICAgICAgb3JkZXI6IDM7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGNvbG9yOiAjMGEwYTBhOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjQwcHgpIHtcbiAgICAubW9iaWxlLW1lbnUgLmhlYWRlci1zdHJhcGxpbmUtbW9iaWxlLFxuICAgIC5zaXRlLXRpdGxlLWJhciAuaGVhZGVyLXN0cmFwbGluZS1tb2JpbGUge1xuICAgICAgbWFyZ2luLXRvcDogMC4yNXJlbTsgfVxuICAgIC5tb2JpbGUtbWVudSAudGl0bGUtYmFyLWxlZnQuaXMtYW5jaG9yZWQgLmhlYWRlci1zdHJhcGxpbmUtbW9iaWxlLCAubW9iaWxlLW1lbnUgLnRpdGxlLWJhci1sZWZ0LmlzLWFuY2hvcmVkIC5oZWFkZXItc3RyYXBsaW5lLW1vYmlsZSA+IGEsXG4gICAgLnNpdGUtdGl0bGUtYmFyIC50aXRsZS1iYXItbGVmdC5pcy1hbmNob3JlZCAuaGVhZGVyLXN0cmFwbGluZS1tb2JpbGUsXG4gICAgLnNpdGUtdGl0bGUtYmFyIC50aXRsZS1iYXItbGVmdC5pcy1hbmNob3JlZCAuaGVhZGVyLXN0cmFwbGluZS1tb2JpbGUgPiBhIHtcbiAgICAgIGNvbG9yOiAjZmVmZWZlOyB9IH1cbiAgLm1vYmlsZS1tZW51IC5zaXRlLW1vYmlsZS10aXRsZSxcbiAgLnNpdGUtdGl0bGUtYmFyIC5zaXRlLW1vYmlsZS10aXRsZSB7XG4gICAgd2lkdGg6IDI1JTsgfVxuICAubW9iaWxlLW1lbnUgLnNpdGUtbW9iaWxlLW1lbnUtY290YW5pbmVyLFxuICAuc2l0ZS10aXRsZS1iYXIgLnNpdGUtbW9iaWxlLW1lbnUtY290YW5pbmVyIHtcbiAgICB3aWR0aDogMjUlO1xuICAgIG9yZGVyOiAzOyB9XG5cbi5kZXNrdG9wLW1lbnUsXG4uc2l0ZS1uYXZpZ2F0aW9uIC50b3AtYmFyLWxlZnQge1xuICBtYXJnaW4tbGVmdDogMC45Mzc1cmVtO1xuICBtYXJnaW4tcmlnaHQ6IDAuOTM3NXJlbTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gICAgLmRlc2t0b3AtbWVudSxcbiAgICAuc2l0ZS1uYXZpZ2F0aW9uIC50b3AtYmFyLWxlZnQge1xuICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cbiAgLmRlc2t0b3AtbWVudSBzdmcsXG4gIC5zaXRlLW5hdmlnYXRpb24gLnRvcC1iYXItbGVmdCBzdmcge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1heC13aWR0aDogMTIuNXJlbTtcbiAgICBtYXgtaGVpZ2h0OiAzcmVtOyB9XG5cbi5wb3N0LW5hdmlnYXRpb246OmJlZm9yZSwgLnBvc3QtbmF2aWdhdGlvbjo6YWZ0ZXIge1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgY29udGVudDogJyAnO1xuICBmbGV4LWJhc2lzOiAwO1xuICBvcmRlcjogMTsgfVxuXG4ucG9zdC1uYXZpZ2F0aW9uOjphZnRlciB7XG4gIGNsZWFyOiBib3RoOyB9XG5cbi5uYXYtcHJldmlvdXMge1xuICBmbG9hdDogbGVmdDsgfVxuXG4ubmF2LW5leHQge1xuICBmbG9hdDogcmlnaHQ7IH1cblxuaGVhZGVyIC5zdGlja3ktY29udGFpbmVyIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB3aWR0aDogMTAwJTtcbiAgei1pbmRleDogMTA7XG4gIG1hcmdpbjogMDsgfVxuXG4jbWFpbi1hcmVhIC5zdGlja3ktY29udGFpbmVyIHtcbiAgei1pbmRleDogNSAhaW1wb3J0YW50OyB9XG5cbnN2Z1tpZCo9J3NlYXJjaC1pY29uJ10gLnNlYXJjaCB7XG4gIGZpbGw6IG5vbmU7XG4gIHN0cm9rZTogIzY4MDBkMjsgfVxuXG4udG9wLWJhciAudG9wLWJhci10aXRsZSB7XG4gIG1hcmdpbjogMDsgfVxuXG4udG9wLWJhcixcbi50b3AtYmFyIHN2ZyAqIHtcbiAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZS1pbi1vdXQ7IH1cblxuLnRvcC1iYXIuaXMtYW5jaG9yZWQge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDApOyB9XG4gIC50b3AtYmFyLmlzLWFuY2hvcmVkICNtZWdhLW1lbnUtd3JhcC10b3AtYmFyLXIgI21lZ2EtbWVudS10b3AtYmFyLXIgPiBsaSA+IHVsLm1lZ2Etc3ViLW1lbnUge1xuICAgIG1hcmdpbi10b3A6IDJyZW07IH1cbiAgLnRvcC1iYXIuaXMtYW5jaG9yZWQ6aG92ZXIgdWwgPiBsaS5oaWdobGlnaHQtbHJnID4gYSB7XG4gICAgYmFja2dyb3VuZDogI2ZlZmVmZSAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiAjNjgwMGQyICFpbXBvcnRhbnQ7IH1cbiAgICAudG9wLWJhci5pcy1hbmNob3JlZDpob3ZlciB1bCA+IGxpLmhpZ2hsaWdodC1scmcgPiBhOmFmdGVyIHtcbiAgICAgIGJvcmRlci1yaWdodC1jb2xvcjogIzY4MDBkMjtcbiAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICM2ODAwZDI7IH1cblxuLnRvcC1iYXIubWVnYS1vcGVuLCAudG9wLWJhcjpob3ZlciB7XG4gIGJhY2tncm91bmQ6ICM2ODAwZDIgIWltcG9ydGFudDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoMjU0LCAyNTQsIDI1NCwgMC42KTsgfVxuICAudG9wLWJhci5tZWdhLW9wZW4gc3ZnI2dhbW1hLWxvZ28tZGVza3RvcCAuc3QwLFxuICAudG9wLWJhci5tZWdhLW9wZW4gc3ZnI2dhbW1hLWxvZ28tZGVza3RvcCBnIHBhdGgsIC50b3AtYmFyOmhvdmVyIHN2ZyNnYW1tYS1sb2dvLWRlc2t0b3AgLnN0MCxcbiAgLnRvcC1iYXI6aG92ZXIgc3ZnI2dhbW1hLWxvZ28tZGVza3RvcCBnIHBhdGgge1xuICAgIGZpbGw6ICNmZWZlZmU7IH1cbiAgLnRvcC1iYXIubWVnYS1vcGVuIHN2Z1tpZCo9J3NlYXJjaC1pY29uJ10gLnNlYXJjaCwgLnRvcC1iYXI6aG92ZXIgc3ZnW2lkKj0nc2VhcmNoLWljb24nXSAuc2VhcmNoIHtcbiAgICBmaWxsOiBub25lO1xuICAgIHN0cm9rZTogI2ZlZmVmZTtcbiAgICBzdHJva2Utd2lkdGg6IDEuNDUyOyB9XG4gIC50b3AtYmFyLm1lZ2Etb3BlbiB1bCA+IGxpID4gYSwgLnRvcC1iYXI6aG92ZXIgdWwgPiBsaSA+IGEge1xuICAgIGNvbG9yOiAjZmVmZWZlOyB9XG4gICAgLnRvcC1iYXIubWVnYS1vcGVuIHVsID4gbGkgPiBhOmFmdGVyLCAudG9wLWJhcjpob3ZlciB1bCA+IGxpID4gYTphZnRlciB7XG4gICAgICBib3JkZXItcmlnaHQtY29sb3I6ICNmZWZlZmU7XG4gICAgICBib3JkZXItYm90dG9tLWNvbG9yOiAjZmVmZWZlOyB9XG4gIC50b3AtYmFyLm1lZ2Etb3BlbiB1bCA+IGxpLmhpZ2hsaWdodCA+IGEsIC50b3AtYmFyOmhvdmVyIHVsID4gbGkuaGlnaGxpZ2h0ID4gYSB7XG4gICAgYmFja2dyb3VuZDogI2ZlZmVmZTtcbiAgICBjb2xvcjogIzY4MDBkMjsgfVxuICAgIC50b3AtYmFyLm1lZ2Etb3BlbiB1bCA+IGxpLmhpZ2hsaWdodCA+IGE6YWZ0ZXIsIC50b3AtYmFyOmhvdmVyIHVsID4gbGkuaGlnaGxpZ2h0ID4gYTphZnRlciB7XG4gICAgICBib3JkZXItcmlnaHQtY29sb3I6ICM2ODAwZDI7XG4gICAgICBib3JkZXItYm90dG9tLWNvbG9yOiAjNjgwMGQyOyB9XG4gIC50b3AtYmFyLm1lZ2Etb3BlbiB1bCA+IGxpLmhpZ2hsaWdodC1scmcgPiBhLCAudG9wLWJhcjpob3ZlciB1bCA+IGxpLmhpZ2hsaWdodC1scmcgPiBhIHtcbiAgICBiYWNrZ3JvdW5kOiAjZmVmZWZlICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6ICM2ODAwZDIgIWltcG9ydGFudDsgfVxuICAgIC50b3AtYmFyLm1lZ2Etb3BlbiB1bCA+IGxpLmhpZ2hsaWdodC1scmcgPiBhOmFmdGVyLCAudG9wLWJhcjpob3ZlciB1bCA+IGxpLmhpZ2hsaWdodC1scmcgPiBhOmFmdGVyIHtcbiAgICAgIGJvcmRlci1yaWdodC1jb2xvcjogIzY4MDBkMjtcbiAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICM2ODAwZDI7IH1cbiAgLnRvcC1iYXIubWVnYS1vcGVuICNtZWdhLW1lbnUtd3JhcC10b3AtYmFyLXIgI21lZ2EtbWVudS10b3AtYmFyLXIgPiBsaSA+IGEubWVnYS1tZW51LWxpbms6aG92ZXI6YmVmb3JlLCAudG9wLWJhcjpob3ZlciAjbWVnYS1tZW51LXdyYXAtdG9wLWJhci1yICNtZWdhLW1lbnUtdG9wLWJhci1yID4gbGkgPiBhLm1lZ2EtbWVudS1saW5rOmhvdmVyOmJlZm9yZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZiZTIwMDsgfVxuICAudG9wLWJhci5tZWdhLW9wZW4gI21lZ2EtbWVudS13cmFwLXRvcC1iYXItciAjbWVnYS1tZW51LXRvcC1iYXItciA+IGxpIGEubWVnYS1tZW51LWxpbmssIC50b3AtYmFyOmhvdmVyICNtZWdhLW1lbnUtd3JhcC10b3AtYmFyLXIgI21lZ2EtbWVudS10b3AtYmFyLXIgPiBsaSBhLm1lZ2EtbWVudS1saW5rIHtcbiAgICBjb2xvcjogI2NhY2FjYTsgfVxuICAgIC50b3AtYmFyLm1lZ2Etb3BlbiAjbWVnYS1tZW51LXdyYXAtdG9wLWJhci1yICNtZWdhLW1lbnUtdG9wLWJhci1yID4gbGkgYS5tZWdhLW1lbnUtbGluazpiZWZvcmUsIC50b3AtYmFyOmhvdmVyICNtZWdhLW1lbnUtd3JhcC10b3AtYmFyLXIgI21lZ2EtbWVudS10b3AtYmFyLXIgPiBsaSBhLm1lZ2EtbWVudS1saW5rOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGJvdHRvbTogLTJyZW07XG4gICAgICBsZWZ0OiAwO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBoZWlnaHQ6IDAuMTg3NXJlbTtcbiAgICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgLnRvcC1iYXIubWVnYS1vcGVuICNtZWdhLW1lbnUtd3JhcC10b3AtYmFyLXIgI21lZ2EtbWVudS10b3AtYmFyLXIgPiBsaSBhLm1lZ2EtbWVudS1saW5rOmFmdGVyLCAudG9wLWJhcjpob3ZlciAjbWVnYS1tZW51LXdyYXAtdG9wLWJhci1yICNtZWdhLW1lbnUtdG9wLWJhci1yID4gbGkgYS5tZWdhLW1lbnUtbGluazphZnRlciB7XG4gICAgICBib3JkZXItcmlnaHQtY29sb3I6ICNmZWZlZmU7XG4gICAgICBib3JkZXItYm90dG9tLWNvbG9yOiAjZmVmZWZlOyB9XG4gICAgLnRvcC1iYXIubWVnYS1vcGVuICNtZWdhLW1lbnUtd3JhcC10b3AtYmFyLXIgI21lZ2EtbWVudS10b3AtYmFyLXIgPiBsaSBhLm1lZ2EtbWVudS1saW5rOmhvdmVyLCAudG9wLWJhcjpob3ZlciAjbWVnYS1tZW51LXdyYXAtdG9wLWJhci1yICNtZWdhLW1lbnUtdG9wLWJhci1yID4gbGkgYS5tZWdhLW1lbnUtbGluazpob3ZlciB7XG4gICAgICBjb2xvcjogI2ZiZTIwMCAhaW1wb3J0YW50OyB9XG4gICAgICAudG9wLWJhci5tZWdhLW9wZW4gI21lZ2EtbWVudS13cmFwLXRvcC1iYXItciAjbWVnYS1tZW51LXRvcC1iYXItciA+IGxpIGEubWVnYS1tZW51LWxpbms6aG92ZXI6YWZ0ZXIsIC50b3AtYmFyOmhvdmVyICNtZWdhLW1lbnUtd3JhcC10b3AtYmFyLXIgI21lZ2EtbWVudS10b3AtYmFyLXIgPiBsaSBhLm1lZ2EtbWVudS1saW5rOmhvdmVyOmFmdGVyIHtcbiAgICAgICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiAjZmJlMjAwO1xuICAgICAgICBib3JkZXItYm90dG9tLWNvbG9yOiAjZmJlMjAwOyB9XG4gIC50b3AtYmFyLm1lZ2Etb3BlbiAjbWVnYS1tZW51LXdyYXAtdG9wLWJhci1yICNtZWdhLW1lbnUtdG9wLWJhci1yID4gbGkuaXMtYWN0aXZlID4gYS5tZWdhLW1lbnUtbGluaywgLnRvcC1iYXIubWVnYS1vcGVuICNtZWdhLW1lbnUtd3JhcC10b3AtYmFyLXIgI21lZ2EtbWVudS10b3AtYmFyLXIgPiBsaS5tZWdhLWN1cnJlbnQtbWVudS1pdGVtID4gYS5tZWdhLW1lbnUtbGluaywgLnRvcC1iYXIubWVnYS1vcGVuICNtZWdhLW1lbnUtd3JhcC10b3AtYmFyLXIgI21lZ2EtbWVudS10b3AtYmFyLXIgPiBsaS5tZWdhLWN1cnJlbnQtbWVudS1hbmNlc3RvciA+IGEubWVnYS1tZW51LWxpbmssIC50b3AtYmFyOmhvdmVyICNtZWdhLW1lbnUtd3JhcC10b3AtYmFyLXIgI21lZ2EtbWVudS10b3AtYmFyLXIgPiBsaS5pcy1hY3RpdmUgPiBhLm1lZ2EtbWVudS1saW5rLCAudG9wLWJhcjpob3ZlciAjbWVnYS1tZW51LXdyYXAtdG9wLWJhci1yICNtZWdhLW1lbnUtdG9wLWJhci1yID4gbGkubWVnYS1jdXJyZW50LW1lbnUtaXRlbSA+IGEubWVnYS1tZW51LWxpbmssIC50b3AtYmFyOmhvdmVyICNtZWdhLW1lbnUtd3JhcC10b3AtYmFyLXIgI21lZ2EtbWVudS10b3AtYmFyLXIgPiBsaS5tZWdhLWN1cnJlbnQtbWVudS1hbmNlc3RvciA+IGEubWVnYS1tZW51LWxpbmsge1xuICAgIGNvbG9yOiAjZmVmZWZlICFpbXBvcnRhbnQ7IH1cblxuaGVhZGVyOm5vdCguYmxhY2spIC50b3AtYmFyLmlzLWFuY2hvcmVkIHN2ZyNnYW1tYS1sb2dvLWRlc2t0b3AgLnN0MCxcbmhlYWRlcjpub3QoLmJsYWNrKSAudG9wLWJhci5pcy1hbmNob3JlZCBzdmcjZ2FtbWEtbG9nby1kZXNrdG9wIGcgcGF0aCB7XG4gIGZpbGw6ICNmZWZlZmU7IH1cblxuaGVhZGVyOm5vdCguYmxhY2spIC50b3AtYmFyLmlzLWFuY2hvcmVkIHVsID4gbGkgYSxcbmhlYWRlcjpub3QoLmJsYWNrKSAudG9wLWJhci5pcy1hbmNob3JlZCAjbWVnYS1tZW51LXdyYXAtdG9wLWJhci1yICNtZWdhLW1lbnUtdG9wLWJhci1yID4gbGkgYSB7XG4gIGNvbG9yOiAjY2FjYWNhOyB9XG4gIGhlYWRlcjpub3QoLmJsYWNrKSAudG9wLWJhci5pcy1hbmNob3JlZCB1bCA+IGxpIGE6YWZ0ZXIsXG4gIGhlYWRlcjpub3QoLmJsYWNrKSAudG9wLWJhci5pcy1hbmNob3JlZCAjbWVnYS1tZW51LXdyYXAtdG9wLWJhci1yICNtZWdhLW1lbnUtdG9wLWJhci1yID4gbGkgYTphZnRlciB7XG4gICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiAjZmVmZWZlO1xuICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICNmZWZlZmU7IH1cblxuaGVhZGVyOm5vdCguYmxhY2spIC50b3AtYmFyLmlzLWFuY2hvcmVkIHVsID4gbGkuaXMtYWN0aXZlID4gYS5tZWdhLW1lbnUtbGluaywgaGVhZGVyOm5vdCguYmxhY2spIC50b3AtYmFyLmlzLWFuY2hvcmVkIHVsID4gbGkubWVnYS1jdXJyZW50LW1lbnUtaXRlbSA+IGEubWVnYS1tZW51LWxpbmssIGhlYWRlcjpub3QoLmJsYWNrKSAudG9wLWJhci5pcy1hbmNob3JlZCB1bCA+IGxpLm1lZ2EtY3VycmVudC1tZW51LWFuY2VzdG9yID4gYS5tZWdhLW1lbnUtbGluayxcbmhlYWRlcjpub3QoLmJsYWNrKSAudG9wLWJhci5pcy1hbmNob3JlZCAjbWVnYS1tZW51LXdyYXAtdG9wLWJhci1yICNtZWdhLW1lbnUtdG9wLWJhci1yID4gbGkuaXMtYWN0aXZlID4gYS5tZWdhLW1lbnUtbGluayxcbmhlYWRlcjpub3QoLmJsYWNrKSAudG9wLWJhci5pcy1hbmNob3JlZCAjbWVnYS1tZW51LXdyYXAtdG9wLWJhci1yICNtZWdhLW1lbnUtdG9wLWJhci1yID4gbGkubWVnYS1jdXJyZW50LW1lbnUtaXRlbSA+IGEubWVnYS1tZW51LWxpbmssXG5oZWFkZXI6bm90KC5ibGFjaykgLnRvcC1iYXIuaXMtYW5jaG9yZWQgI21lZ2EtbWVudS13cmFwLXRvcC1iYXItciAjbWVnYS1tZW51LXRvcC1iYXItciA+IGxpLm1lZ2EtY3VycmVudC1tZW51LWFuY2VzdG9yID4gYS5tZWdhLW1lbnUtbGluayB7XG4gIGNvbG9yOiAjZmVmZWZlICFpbXBvcnRhbnQ7IH1cblxuYm9keS5ob21lIGhlYWRlcjpub3QoLmJsYWNrKSAudG9wLWJhci5pcy1hbmNob3JlZCB1bCA+IGxpID4gYS5tZWdhLW1lbnUtbGluaywgYm9keS5ob21lXG5oZWFkZXI6bm90KC5ibGFjaykgLnRvcC1iYXIuaXMtYW5jaG9yZWQgI21lZ2EtbWVudS13cmFwLXRvcC1iYXItciAjbWVnYS1tZW51LXRvcC1iYXItciA+IGxpID4gYS5tZWdhLW1lbnUtbGluayB7XG4gIGNvbG9yOiAjZmVmZWZlICFpbXBvcnRhbnQ7IH1cblxuYm9keS5ob21lIGhlYWRlcjpub3QoLmJsYWNrKSAudG9wLWJhci5pcy1hbmNob3JlZCB1bCA+IGxpLm1lZ2EtdG9nZ2xlLW9uID4gYS5tZWdhLW1lbnUtbGluaywgYm9keS5ob21lXG5oZWFkZXI6bm90KC5ibGFjaykgLnRvcC1iYXIuaXMtYW5jaG9yZWQgI21lZ2EtbWVudS13cmFwLXRvcC1iYXItciAjbWVnYS1tZW51LXRvcC1iYXItciA+IGxpLm1lZ2EtdG9nZ2xlLW9uID4gYS5tZWdhLW1lbnUtbGluayB7XG4gIGNvbG9yOiAjZmJlMjAwICFpbXBvcnRhbnQ7IH1cbiAgYm9keS5ob21lIGhlYWRlcjpub3QoLmJsYWNrKSAudG9wLWJhci5pcy1hbmNob3JlZCB1bCA+IGxpLm1lZ2EtdG9nZ2xlLW9uID4gYS5tZWdhLW1lbnUtbGluazpiZWZvcmUsIGJvZHkuaG9tZVxuICBoZWFkZXI6bm90KC5ibGFjaykgLnRvcC1iYXIuaXMtYW5jaG9yZWQgI21lZ2EtbWVudS13cmFwLXRvcC1iYXItciAjbWVnYS1tZW51LXRvcC1iYXItciA+IGxpLm1lZ2EtdG9nZ2xlLW9uID4gYS5tZWdhLW1lbnUtbGluazpiZWZvcmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmYmUyMDA7IH1cblxuaGVhZGVyOm5vdCguYmxhY2spIC50b3AtYmFyLmlzLWFuY2hvcmVkIHVsID4gbGkuaGlnaGxpZ2h0IGEsXG5oZWFkZXI6bm90KC5ibGFjaykgLnRvcC1iYXIuaXMtYW5jaG9yZWQgI21lZ2EtbWVudS13cmFwLXRvcC1iYXItciAjbWVnYS1tZW51LXRvcC1iYXItciA+IGxpLmhpZ2hsaWdodCBhIHtcbiAgYmFja2dyb3VuZDogI2ZlZmVmZTtcbiAgY29sb3I6ICM2ODAwZDI7IH1cbiAgaGVhZGVyOm5vdCguYmxhY2spIC50b3AtYmFyLmlzLWFuY2hvcmVkIHVsID4gbGkuaGlnaGxpZ2h0IGE6YWZ0ZXIsXG4gIGhlYWRlcjpub3QoLmJsYWNrKSAudG9wLWJhci5pcy1hbmNob3JlZCAjbWVnYS1tZW51LXdyYXAtdG9wLWJhci1yICNtZWdhLW1lbnUtdG9wLWJhci1yID4gbGkuaGlnaGxpZ2h0IGE6YWZ0ZXIge1xuICAgIGJvcmRlci1yaWdodC1jb2xvcjogIzY4MDBkMjtcbiAgICBib3JkZXItYm90dG9tLWNvbG9yOiAjNjgwMGQyOyB9XG5cbmhlYWRlcjpub3QoLmJsYWNrKSAudG9wLWJhci5pcy1hbmNob3JlZCB1bC5kZXNrdG9wLW1lbnUgPiBsaS5pcy1hY3RpdmUgPiBhLCBoZWFkZXI6bm90KC5ibGFjaykgLnRvcC1iYXIuaXMtYW5jaG9yZWQgdWwuZGVza3RvcC1tZW51ID4gbGkuY3VycmVudC1tZW51LWl0ZW0gPiBhLCBoZWFkZXI6bm90KC5ibGFjaykgLnRvcC1iYXIuaXMtYW5jaG9yZWQgdWwuZGVza3RvcC1tZW51ID4gbGkuY3VycmVudC1wYWdlLWFuY2VzdG9yID4gYSB7XG4gIGNvbG9yOiAjZmVmZWZlICFpbXBvcnRhbnQ7IH1cblxuYm9keS5ob21lIGhlYWRlcjpub3QoLmJsYWNrKSAudG9wLWJhci5pcy1hbmNob3JlZCB1bC5kZXNrdG9wLW1lbnUgPiBsaSA+IGEge1xuICBjb2xvcjogI2ZlZmVmZSAhaW1wb3J0YW50OyB9XG5cbmhlYWRlcjpub3QoLmJsYWNrKSAudG9wLWJhci5pcy1hbmNob3JlZCBzdmdbaWQqPSdzZWFyY2gtaWNvbiddIC5zZWFyY2gge1xuICBmaWxsOiBub25lO1xuICBzdHJva2U6ICNmZWZlZmU7XG4gIHN0cm9rZS13aWR0aDogMS40NTI7IH1cblxuLnRvcC1iYXIuaXMtc3R1Y2sge1xuICBwYWRkaW5nLXRvcDogMC42MjVyZW07XG4gIHBhZGRpbmctYm90dG9tOiAwLjYyNXJlbTtcbiAgYmFja2dyb3VuZDogd2hpdGU7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZjJmMmYyO1xuICAvKlxuICAgICYuaGlnaGxpZ2h0LWxyZyB7XG4gICAgICBhIHtcbiAgICAgICAgYmFja2dyb3VuZDogJHdoaXRlIWltcG9ydGFudDtcbiAgICAgICAgY29sb3I6ICRnYW0tcHVycGxlIWltcG9ydGFudDtcbiAgICAgICAgZGlzcGxheTogaW5saW5lO1xuICAgICAgICBwYWRkaW5nOiByZW0tY2FsYyg4IDMwIDEwKSFpbXBvcnRhbnQ7XG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgIGJvcmRlci1yaWdodC1jb2xvcjogJHdoaXRlO1xuICAgICAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAqLyB9XG4gIGJvZHkuYWRtaW4tYmFyIC50b3AtYmFyLmlzLXN0dWNrIHtcbiAgICB0b3A6IDJyZW0gIWltcG9ydGFudDsgfVxuICAudG9wLWJhci5pcy1zdHVjay5tZWdhLW9wZW4ge1xuICAgIGJhY2tncm91bmQ6ICM2ODAwZDI7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoMjU0LCAyNTQsIDI1NCwgMC42KTsgfVxuICAudG9wLWJhci5pcy1zdHVjayAjbWVnYS1tZW51LXdyYXAtdG9wLWJhci1yICNtZWdhLW1lbnUtdG9wLWJhci1yID4gbGkgPiBhLm1lZ2EtbWVudS1saW5rOmJlZm9yZSB7XG4gICAgYm90dG9tOiAtMC43NXJlbTsgfVxuXG4udG9wLWJhciAjbWVnYS1tZW51LXdyYXAtdG9wLWJhci1yIHtcbiAgY2xlYXI6IG5vbmU7XG4gIGZsb2F0OiBsZWZ0O1xuICBwb3NpdGlvbjogc3RhdGljOyB9XG5cbi50b3AtYmFyIHVsLFxuLnRvcC1iYXIgI21lZ2EtbWVudS13cmFwLXRvcC1iYXItciAjbWVnYS1tZW51LXRvcC1iYXItciB7XG4gIHBvc2l0aW9uOiBzdGF0aWM7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBmbG9hdDogbGVmdDtcbiAgbGlzdC1zdHlsZTogbm9uZTsgfVxuICAudG9wLWJhciB1bCA+IGxpLmZvb3Rlci1vbmx5LFxuICAudG9wLWJhciAjbWVnYS1tZW51LXdyYXAtdG9wLWJhci1yICNtZWdhLW1lbnUtdG9wLWJhci1yID4gbGkuZm9vdGVyLW9ubHkge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgLnRvcC1iYXIgdWwgPiBsaS5pcy1hY3RpdmUgPiBhLm1lZ2EtbWVudS1saW5rLCAudG9wLWJhciB1bCA+IGxpLm1lZ2EtY3VycmVudC1tZW51LWl0ZW0gPiBhLm1lZ2EtbWVudS1saW5rLCAudG9wLWJhciB1bCA+IGxpLm1lZ2EtY3VycmVudC1tZW51LWFuY2VzdG9yID4gYS5tZWdhLW1lbnUtbGluayxcbiAgLnRvcC1iYXIgI21lZ2EtbWVudS13cmFwLXRvcC1iYXItciAjbWVnYS1tZW51LXRvcC1iYXItciA+IGxpLmlzLWFjdGl2ZSA+IGEubWVnYS1tZW51LWxpbmssXG4gIC50b3AtYmFyICNtZWdhLW1lbnUtd3JhcC10b3AtYmFyLXIgI21lZ2EtbWVudS10b3AtYmFyLXIgPiBsaS5tZWdhLWN1cnJlbnQtbWVudS1pdGVtID4gYS5tZWdhLW1lbnUtbGluayxcbiAgLnRvcC1iYXIgI21lZ2EtbWVudS13cmFwLXRvcC1iYXItciAjbWVnYS1tZW51LXRvcC1iYXItciA+IGxpLm1lZ2EtY3VycmVudC1tZW51LWFuY2VzdG9yID4gYS5tZWdhLW1lbnUtbGluayB7XG4gICAgY29sb3I6ICM2ODAwZDI7IH1cbiAgLnRvcC1iYXIgdWwgPiBsaTpub3QoLm1lZ2EtbWVudS1pdGVtLWhhcy1jaGlsZHJlbikgPiBhLFxuICAudG9wLWJhciB1bCA+IGxpOm5vdCgubWVnYS1tZW51LWl0ZW0taGFzLWNoaWxkcmVuKSA+IGEubWVnYS1tZW51LWxpbmssXG4gIC50b3AtYmFyICNtZWdhLW1lbnUtd3JhcC10b3AtYmFyLXIgI21lZ2EtbWVudS10b3AtYmFyLXIgPiBsaTpub3QoLm1lZ2EtbWVudS1pdGVtLWhhcy1jaGlsZHJlbikgPiBhLFxuICAudG9wLWJhciAjbWVnYS1tZW51LXdyYXAtdG9wLWJhci1yICNtZWdhLW1lbnUtdG9wLWJhci1yID4gbGk6bm90KC5tZWdhLW1lbnUtaXRlbS1oYXMtY2hpbGRyZW4pID4gYS5tZWdhLW1lbnUtbGluayB7XG4gICAgcGFkZGluZzogMC4zMTI1cmVtIDAuOTM3NXJlbSAwLjMxMjVyZW0gMC45Mzc1cmVtICFpbXBvcnRhbnQ7IH1cbiAgICAudG9wLWJhciB1bCA+IGxpOm5vdCgubWVnYS1tZW51LWl0ZW0taGFzLWNoaWxkcmVuKSA+IGE6YWZ0ZXIsXG4gICAgLnRvcC1iYXIgdWwgPiBsaTpub3QoLm1lZ2EtbWVudS1pdGVtLWhhcy1jaGlsZHJlbikgPiBhLm1lZ2EtbWVudS1saW5rOmFmdGVyLFxuICAgIC50b3AtYmFyICNtZWdhLW1lbnUtd3JhcC10b3AtYmFyLXIgI21lZ2EtbWVudS10b3AtYmFyLXIgPiBsaTpub3QoLm1lZ2EtbWVudS1pdGVtLWhhcy1jaGlsZHJlbikgPiBhOmFmdGVyLFxuICAgIC50b3AtYmFyICNtZWdhLW1lbnUtd3JhcC10b3AtYmFyLXIgI21lZ2EtbWVudS10b3AtYmFyLXIgPiBsaTpub3QoLm1lZ2EtbWVudS1pdGVtLWhhcy1jaGlsZHJlbikgPiBhLm1lZ2EtbWVudS1saW5rOmFmdGVyIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAudG9wLWJhciB1bCA+IGxpOm5vdCgubWVnYS1tZW51LWl0ZW0taGFzLWNoaWxkcmVuKSA+IGE6aG92ZXIsXG4gICAgLnRvcC1iYXIgdWwgPiBsaTpub3QoLm1lZ2EtbWVudS1pdGVtLWhhcy1jaGlsZHJlbikgPiBhLm1lZ2EtbWVudS1saW5rOmhvdmVyLFxuICAgIC50b3AtYmFyICNtZWdhLW1lbnUtd3JhcC10b3AtYmFyLXIgI21lZ2EtbWVudS10b3AtYmFyLXIgPiBsaTpub3QoLm1lZ2EtbWVudS1pdGVtLWhhcy1jaGlsZHJlbikgPiBhOmhvdmVyLFxuICAgIC50b3AtYmFyICNtZWdhLW1lbnUtd3JhcC10b3AtYmFyLXIgI21lZ2EtbWVudS10b3AtYmFyLXIgPiBsaTpub3QoLm1lZ2EtbWVudS1pdGVtLWhhcy1jaGlsZHJlbikgPiBhLm1lZ2EtbWVudS1saW5rOmhvdmVyIHtcbiAgICAgIGNvbG9yOiAjZmJlMjAwOyB9XG4gIC50b3AtYmFyIHVsID4gbGkubWVnYS10b2dnbGUtb24gPiBhLm1lZ2EtbWVudS1saW5rLFxuICAudG9wLWJhciAjbWVnYS1tZW51LXdyYXAtdG9wLWJhci1yICNtZWdhLW1lbnUtdG9wLWJhci1yID4gbGkubWVnYS10b2dnbGUtb24gPiBhLm1lZ2EtbWVudS1saW5rIHtcbiAgICBjb2xvcjogI2ZiZTIwMCAhaW1wb3J0YW50OyB9XG4gICAgLnRvcC1iYXIgdWwgPiBsaS5tZWdhLXRvZ2dsZS1vbiA+IGEubWVnYS1tZW51LWxpbms6YWZ0ZXIsXG4gICAgLnRvcC1iYXIgI21lZ2EtbWVudS13cmFwLXRvcC1iYXItciAjbWVnYS1tZW51LXRvcC1iYXItciA+IGxpLm1lZ2EtdG9nZ2xlLW9uID4gYS5tZWdhLW1lbnUtbGluazphZnRlciB7XG4gICAgICBib3JkZXItcmlnaHQtY29sb3I6ICNmYmUyMDA7XG4gICAgICBib3JkZXItYm90dG9tLWNvbG9yOiAjZmJlMjAwO1xuICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTEzNWRlZykgdHJhbnNsYXRlKC01cHgsIC01cHgpOyB9XG4gICAgLnRvcC1iYXIgdWwgPiBsaS5tZWdhLXRvZ2dsZS1vbiA+IGEubWVnYS1tZW51LWxpbms6YmVmb3JlLFxuICAgIC50b3AtYmFyICNtZWdhLW1lbnUtd3JhcC10b3AtYmFyLXIgI21lZ2EtbWVudS10b3AtYmFyLXIgPiBsaS5tZWdhLXRvZ2dsZS1vbiA+IGEubWVnYS1tZW51LWxpbms6YmVmb3JlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmYmUyMDA7IH1cbiAgLnRvcC1iYXIgdWwgPiBsaSA+IGEsXG4gIC50b3AtYmFyIHVsID4gbGkgPiBhLm1lZ2EtbWVudS1saW5rLFxuICAudG9wLWJhciAjbWVnYS1tZW51LXdyYXAtdG9wLWJhci1yICNtZWdhLW1lbnUtdG9wLWJhci1yID4gbGkgPiBhLFxuICAudG9wLWJhciAjbWVnYS1tZW51LXdyYXAtdG9wLWJhci1yICNtZWdhLW1lbnUtdG9wLWJhci1yID4gbGkgPiBhLm1lZ2EtbWVudS1saW5rIHtcbiAgICBmb250LXdlaWdodDogNTAwICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyLXJhZGl1czogMS4yNXJlbTtcbiAgICBjb2xvcjogIzBhMGEwYTtcbiAgICBwYWRkaW5nOiAwLjMxMjVyZW0gMC45Mzc1cmVtIDAuMzEyNXJlbSAwLjkzNzVyZW0gIWltcG9ydGFudDtcbiAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAudG9wLWJhciB1bCA+IGxpID4gYTphZnRlcixcbiAgICAgIC50b3AtYmFyIHVsID4gbGkgPiBhLm1lZ2EtbWVudS1saW5rOmFmdGVyLFxuICAgICAgLnRvcC1iYXIgI21lZ2EtbWVudS13cmFwLXRvcC1iYXItciAjbWVnYS1tZW51LXRvcC1iYXItciA+IGxpID4gYTphZnRlcixcbiAgICAgIC50b3AtYmFyICNtZWdhLW1lbnUtd3JhcC10b3AtYmFyLXIgI21lZ2EtbWVudS10b3AtYmFyLXIgPiBsaSA+IGEubWVnYS1tZW51LWxpbms6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgdG9wOiAtMC4xMjVyZW07XG4gICAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgICBtYXJnaW4tbGVmdDogMC42MjVyZW07XG4gICAgICAgIG1hcmdpbi10b3A6IGF1dG87XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICBib3JkZXItcmlnaHQtY29sb3I6ICMwYTBhMGE7XG4gICAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICMwYTBhMGE7XG4gICAgICAgIHdpZHRoOiAwLjYyNXJlbTtcbiAgICAgICAgaGVpZ2h0OiAwLjYyNXJlbTtcbiAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMnMgZWFzZS1pbi1vdXQ7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lOyB9XG4gICAgICAudG9wLWJhciB1bCA+IGxpID4gYSAubWVnYS1pbmRpY2F0b3IsXG4gICAgICAudG9wLWJhciB1bCA+IGxpID4gYS5tZWdhLW1lbnUtbGluayAubWVnYS1pbmRpY2F0b3IsXG4gICAgICAudG9wLWJhciAjbWVnYS1tZW51LXdyYXAtdG9wLWJhci1yICNtZWdhLW1lbnUtdG9wLWJhci1yID4gbGkgPiBhIC5tZWdhLWluZGljYXRvcixcbiAgICAgIC50b3AtYmFyICNtZWdhLW1lbnUtd3JhcC10b3AtYmFyLXIgI21lZ2EtbWVudS10b3AtYmFyLXIgPiBsaSA+IGEubWVnYS1tZW51LWxpbmsgLm1lZ2EtaW5kaWNhdG9yIHtcbiAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4OC43NWVtKSB7XG4gICAgICAudG9wLWJhciB1bCA+IGxpID4gYSxcbiAgICAgIC50b3AtYmFyIHVsID4gbGkgPiBhLm1lZ2EtbWVudS1saW5rLFxuICAgICAgLnRvcC1iYXIgI21lZ2EtbWVudS13cmFwLXRvcC1iYXItciAjbWVnYS1tZW51LXRvcC1iYXItciA+IGxpID4gYSxcbiAgICAgIC50b3AtYmFyICNtZWdhLW1lbnUtd3JhcC10b3AtYmFyLXIgI21lZ2EtbWVudS10b3AtYmFyLXIgPiBsaSA+IGEubWVnYS1tZW51LWxpbmsge1xuICAgICAgICBwYWRkaW5nOiAwLjMxMjVyZW0gMC45Mzc1cmVtIDAuMzEyNXJlbSAxLjI1cmVtICFpbXBvcnRhbnQ7XG4gICAgICAgIGZvbnQtc2l6ZTogMXJlbTsgfSB9XG4gICAgLnRvcC1iYXIgdWwgPiBsaSA+IGE6aG92ZXIsXG4gICAgLnRvcC1iYXIgdWwgPiBsaSA+IGEubWVnYS1tZW51LWxpbms6aG92ZXIsXG4gICAgLnRvcC1iYXIgI21lZ2EtbWVudS13cmFwLXRvcC1iYXItciAjbWVnYS1tZW51LXRvcC1iYXItciA+IGxpID4gYTpob3ZlcixcbiAgICAudG9wLWJhciAjbWVnYS1tZW51LXdyYXAtdG9wLWJhci1yICNtZWdhLW1lbnUtdG9wLWJhci1yID4gbGkgPiBhLm1lZ2EtbWVudS1saW5rOmhvdmVyIHtcbiAgICAgIGNvbG9yOiAjZmJlMjAwOyB9XG4gICAgICAudG9wLWJhciB1bCA+IGxpID4gYTpob3ZlcjphZnRlcixcbiAgICAgIC50b3AtYmFyIHVsID4gbGkgPiBhLm1lZ2EtbWVudS1saW5rOmhvdmVyOmFmdGVyLFxuICAgICAgLnRvcC1iYXIgI21lZ2EtbWVudS13cmFwLXRvcC1iYXItciAjbWVnYS1tZW51LXRvcC1iYXItciA+IGxpID4gYTpob3ZlcjphZnRlcixcbiAgICAgIC50b3AtYmFyICNtZWdhLW1lbnUtd3JhcC10b3AtYmFyLXIgI21lZ2EtbWVudS10b3AtYmFyLXIgPiBsaSA+IGEubWVnYS1tZW51LWxpbms6aG92ZXI6YWZ0ZXIge1xuICAgICAgICBib3JkZXItcmlnaHQtY29sb3I6ICNmYmUyMDA7XG4gICAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICNmYmUyMDA7IH1cbiAgLnRvcC1iYXIgdWwgPiBsaS5oaWdobGlnaHQgYSxcbiAgLnRvcC1iYXIgI21lZ2EtbWVudS13cmFwLXRvcC1iYXItciAjbWVnYS1tZW51LXRvcC1iYXItciA+IGxpLmhpZ2hsaWdodCBhIHtcbiAgICBiYWNrZ3JvdW5kOiAjNjgwMGQyO1xuICAgIGNvbG9yOiAjZmVmZWZlOyB9XG4gICAgLnRvcC1iYXIgdWwgPiBsaS5oaWdobGlnaHQgYTphZnRlcixcbiAgICAudG9wLWJhciAjbWVnYS1tZW51LXdyYXAtdG9wLWJhci1yICNtZWdhLW1lbnUtdG9wLWJhci1yID4gbGkuaGlnaGxpZ2h0IGE6YWZ0ZXIge1xuICAgICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiAjZmVmZWZlO1xuICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogI2ZlZmVmZTsgfVxuICAudG9wLWJhciB1bCA+IGxpLmhpZ2hsaWdodC1scmcgYSxcbiAgLnRvcC1iYXIgI21lZ2EtbWVudS13cmFwLXRvcC1iYXItciAjbWVnYS1tZW51LXRvcC1iYXItciA+IGxpLmhpZ2hsaWdodC1scmcgYSB7XG4gICAgYmFja2dyb3VuZDogIzY4MDBkMiAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiAjZmVmZWZlICFpbXBvcnRhbnQ7XG4gICAgZGlzcGxheTogaW5saW5lO1xuICAgIHBhZGRpbmc6IDAuNXJlbSAxLjg3NXJlbSAwLjYyNXJlbSAhaW1wb3J0YW50OyB9XG4gICAgLnRvcC1iYXIgdWwgPiBsaS5oaWdobGlnaHQtbHJnIGE6YWZ0ZXIsXG4gICAgLnRvcC1iYXIgI21lZ2EtbWVudS13cmFwLXRvcC1iYXItciAjbWVnYS1tZW51LXRvcC1iYXItciA+IGxpLmhpZ2hsaWdodC1scmcgYTphZnRlciB7XG4gICAgICBib3JkZXItcmlnaHQtY29sb3I6ICNmZWZlZmU7XG4gICAgICBib3JkZXItYm90dG9tLWNvbG9yOiAjZmVmZWZlOyB9XG4gIC50b3AtYmFyIHVsID4gbGkgPiB1bC5tZWdhLXN1Yi1tZW51LFxuICAudG9wLWJhciAjbWVnYS1tZW51LXdyYXAtdG9wLWJhci1yICNtZWdhLW1lbnUtdG9wLWJhci1yID4gbGkgPiB1bC5tZWdhLXN1Yi1tZW51IHtcbiAgICBtYXJnaW4tdG9wOiAwLjc1cmVtOyB9XG4gIC50b3AtYmFyIHVsID4gbGkubWVnYS1tZW51LWdyaWQgPiB1bC5tZWdhLXN1Yi1tZW51ID4gbGkubWVnYS1tZW51LXJvdyxcbiAgLnRvcC1iYXIgI21lZ2EtbWVudS13cmFwLXRvcC1iYXItciAjbWVnYS1tZW51LXRvcC1iYXItciA+IGxpLm1lZ2EtbWVudS1ncmlkID4gdWwubWVnYS1zdWItbWVudSA+IGxpLm1lZ2EtbWVudS1yb3cge1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIGZsb2F0OiBub25lO1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gICAgLnRvcC1iYXIgdWwgPiBsaS5tZWdhLW1lbnUtZ3JpZCA+IHVsLm1lZ2Etc3ViLW1lbnUgPiBsaS5tZWdhLW1lbnUtcm93ID4gdWwubWVnYS1zdWItbWVudSxcbiAgICAudG9wLWJhciAjbWVnYS1tZW51LXdyYXAtdG9wLWJhci1yICNtZWdhLW1lbnUtdG9wLWJhci1yID4gbGkubWVnYS1tZW51LWdyaWQgPiB1bC5tZWdhLXN1Yi1tZW51ID4gbGkubWVnYS1tZW51LXJvdyA+IHVsLm1lZ2Etc3ViLW1lbnUge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7IH1cbiAgLnRvcC1iYXIgdWwgPiBsaS5tZWdhLW1lbnUtZ3JpZCA+IHVsLm1lZ2Etc3ViLW1lbnUgdWwsXG4gIC50b3AtYmFyICNtZWdhLW1lbnUtd3JhcC10b3AtYmFyLXIgI21lZ2EtbWVudS10b3AtYmFyLXIgPiBsaS5tZWdhLW1lbnUtZ3JpZCA+IHVsLm1lZ2Etc3ViLW1lbnUgdWwge1xuICAgIHBhZGRpbmctbGVmdDogMCAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmctcmlnaHQ6IDAgIWltcG9ydGFudDsgfVxuICAudG9wLWJhciB1bCA+IGxpLm1lZ2EtbWVudS1ncmlkID4gdWwubWVnYS1zdWItbWVudSBsaSBhLm1lZ2EtbWVudS1saW5rLFxuICAudG9wLWJhciAjbWVnYS1tZW51LXdyYXAtdG9wLWJhci1yICNtZWdhLW1lbnUtdG9wLWJhci1yID4gbGkubWVnYS1tZW51LWdyaWQgPiB1bC5tZWdhLXN1Yi1tZW51IGxpIGEubWVnYS1tZW51LWxpbmsge1xuICAgIGZvbnQtc2l6ZTogMC44NzVyZW0gIWltcG9ydGFudDtcbiAgICBwYWRkaW5nLWxlZnQ6IDAgIWltcG9ydGFudDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZy10b3A6IDAgIWltcG9ydGFudDsgfVxuICAudG9wLWJhciB1bCA+IGxpLm1lZ2EtbWVudS1ncmlkIGxpLm1lZ2EtbWVudS1jb2x1bW4sXG4gIC50b3AtYmFyICNtZWdhLW1lbnUtd3JhcC10b3AtYmFyLXIgI21lZ2EtbWVudS10b3AtYmFyLXIgPiBsaS5tZWdhLW1lbnUtZ3JpZCBsaS5tZWdhLW1lbnUtY29sdW1uIHtcbiAgICB3aWR0aDogYXV0byAhaW1wb3J0YW50O1xuICAgIGZsb2F0OiBub25lICFpbXBvcnRhbnQ7XG4gICAgZmxleDogMCAxIGF1dG87IH1cbiAgICAudG9wLWJhciB1bCA+IGxpLm1lZ2EtbWVudS1ncmlkIGxpLm1lZ2EtbWVudS1jb2x1bW46bGFzdC1jaGlsZCxcbiAgICAudG9wLWJhciAjbWVnYS1tZW51LXdyYXAtdG9wLWJhci1yICNtZWdhLW1lbnUtdG9wLWJhci1yID4gbGkubWVnYS1tZW51LWdyaWQgbGkubWVnYS1tZW51LWNvbHVtbjpsYXN0LWNoaWxkIHtcbiAgICAgIGJvcmRlci1yaWdodDogMDsgfVxuICAgIC50b3AtYmFyIHVsID4gbGkubWVnYS1tZW51LWdyaWQgbGkubWVnYS1tZW51LWNvbHVtbiB1bCBsaSxcbiAgICAudG9wLWJhciAjbWVnYS1tZW51LXdyYXAtdG9wLWJhci1yICNtZWdhLW1lbnUtdG9wLWJhci1yID4gbGkubWVnYS1tZW51LWdyaWQgbGkubWVnYS1tZW51LWNvbHVtbiB1bCBsaSB7XG4gICAgICBmbG9hdDogbm9uZSAhaW1wb3J0YW50OyB9XG4gICAgICAudG9wLWJhciB1bCA+IGxpLm1lZ2EtbWVudS1ncmlkIGxpLm1lZ2EtbWVudS1jb2x1bW4gdWwgbGkgaDQsXG4gICAgICAudG9wLWJhciAjbWVnYS1tZW51LXdyYXAtdG9wLWJhci1yICNtZWdhLW1lbnUtdG9wLWJhci1yID4gbGkubWVnYS1tZW51LWdyaWQgbGkubWVnYS1tZW51LWNvbHVtbiB1bCBsaSBoNCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMXJlbSAhaW1wb3J0YW50OyB9XG4gICAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAgICAgLnRvcC1iYXIgdWwgPiBsaS5tZWdhLW1lbnUtZ3JpZCBsaS5tZWdhLW1lbnUtY29sdW1uIHVsIGxpIGg0LFxuICAgICAgICAgIC50b3AtYmFyICNtZWdhLW1lbnUtd3JhcC10b3AtYmFyLXIgI21lZ2EtbWVudS10b3AtYmFyLXIgPiBsaS5tZWdhLW1lbnUtZ3JpZCBsaS5tZWdhLW1lbnUtY29sdW1uIHVsIGxpIGg0IHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4xMjVyZW0gIWltcG9ydGFudDsgfSB9XG4gICAgICAudG9wLWJhciB1bCA+IGxpLm1lZ2EtbWVudS1ncmlkIGxpLm1lZ2EtbWVudS1jb2x1bW4gdWwgbGkgYSxcbiAgICAgIC50b3AtYmFyICNtZWdhLW1lbnUtd3JhcC10b3AtYmFyLXIgI21lZ2EtbWVudS10b3AtYmFyLXIgPiBsaS5tZWdhLW1lbnUtZ3JpZCBsaS5tZWdhLW1lbnUtY29sdW1uIHVsIGxpIGEge1xuICAgICAgICBjb2xvcjogI2ZiZTIwMDtcbiAgICAgICAgZm9udC1zaXplOiAwLjg3NXJlbSAhaW1wb3J0YW50OyB9XG4gICAgICAudG9wLWJhciB1bCA+IGxpLm1lZ2EtbWVudS1ncmlkIGxpLm1lZ2EtbWVudS1jb2x1bW4gdWwgbGkgdWwgbGkgYS5tZWdhLW1lbnUtbGluayxcbiAgICAgIC50b3AtYmFyICNtZWdhLW1lbnUtd3JhcC10b3AtYmFyLXIgI21lZ2EtbWVudS10b3AtYmFyLXIgPiBsaS5tZWdhLW1lbnUtZ3JpZCBsaS5tZWdhLW1lbnUtY29sdW1uIHVsIGxpIHVsIGxpIGEubWVnYS1tZW51LWxpbmsge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuNzVyZW0gIWltcG9ydGFudDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgICAgIC50b3AtYmFyIHVsID4gbGkubWVnYS1tZW51LWdyaWQgbGkubWVnYS1tZW51LWNvbHVtbiB1bCBsaSB1bCBsaSBhLm1lZ2EtbWVudS1saW5rOmJlZm9yZSxcbiAgICAgICAgLnRvcC1iYXIgI21lZ2EtbWVudS13cmFwLXRvcC1iYXItciAjbWVnYS1tZW51LXRvcC1iYXItciA+IGxpLm1lZ2EtbWVudS1ncmlkIGxpLm1lZ2EtbWVudS1jb2x1bW4gdWwgbGkgdWwgbGkgYS5tZWdhLW1lbnUtbGluazpiZWZvcmUge1xuICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgd2lkdGg6IDAuNXJlbTtcbiAgICAgICAgICBoZWlnaHQ6IDAuMDYyNXJlbTtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAjZmJlMjAwO1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICB0b3A6IDAuMzc1cmVtO1xuICAgICAgICAgIGxlZnQ6IDA7IH1cbiAgICAgIC50b3AtYmFyIHVsID4gbGkubWVnYS1tZW51LWdyaWQgbGkubWVnYS1tZW51LWNvbHVtbiB1bCBsaS53aWRnZXRfdGV4dCxcbiAgICAgIC50b3AtYmFyICNtZWdhLW1lbnUtd3JhcC10b3AtYmFyLXIgI21lZ2EtbWVudS10b3AtYmFyLXIgPiBsaS5tZWdhLW1lbnUtZ3JpZCBsaS5tZWdhLW1lbnUtY29sdW1uIHVsIGxpLndpZGdldF90ZXh0IHtcbiAgICAgICAgbWFyZ2luLXRvcDogMS44NzVyZW07XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDAuNjI1cmVtO1xuICAgICAgICBtaW4td2lkdGg6IDEzLjc1cmVtOyB9XG4gICAgICAgIC50b3AtYmFyIHVsID4gbGkubWVnYS1tZW51LWdyaWQgbGkubWVnYS1tZW51LWNvbHVtbiB1bCBsaS53aWRnZXRfdGV4dDpmaXJzdC1jaGlsZCxcbiAgICAgICAgLnRvcC1iYXIgI21lZ2EtbWVudS13cmFwLXRvcC1iYXItciAjbWVnYS1tZW51LXRvcC1iYXItciA+IGxpLm1lZ2EtbWVudS1ncmlkIGxpLm1lZ2EtbWVudS1jb2x1bW4gdWwgbGkud2lkZ2V0X3RleHQ6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgIG1hcmdpbi10b3A6IDA7IH1cbiAgICAgICAgLnRvcC1iYXIgdWwgPiBsaS5tZWdhLW1lbnUtZ3JpZCBsaS5tZWdhLW1lbnUtY29sdW1uIHVsIGxpLndpZGdldF90ZXh0IGltZyxcbiAgICAgICAgLnRvcC1iYXIgI21lZ2EtbWVudS13cmFwLXRvcC1iYXItciAjbWVnYS1tZW51LXRvcC1iYXItciA+IGxpLm1lZ2EtbWVudS1ncmlkIGxpLm1lZ2EtbWVudS1jb2x1bW4gdWwgbGkud2lkZ2V0X3RleHQgaW1nIHtcbiAgICAgICAgICB3aWR0aDogMi41cmVtOyB9XG5cbi50b3AtYmFyIC5zdXBwbGVtZW50YXJ5IHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIG1hcmdpbi10b3A6IDAuNzVyZW07XG4gIG1hcmdpbi1sZWZ0OiAwLjkzNzVyZW07XG4gIG1hcmdpbi1yaWdodDogMC45Mzc1cmVtOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg4Ljc1ZW0pIHtcbiAgICAudG9wLWJhciAuc3VwcGxlbWVudGFyeSB7XG4gICAgICBtYXJnaW4tbGVmdDogMy4xMjVyZW07IH0gfVxuICAudG9wLWJhciAuc3VwcGxlbWVudGFyeSB1bCBhIHtcbiAgICBmb250LXNpemU6IDAuODc1cmVtOyB9XG4gICAgLnRvcC1iYXIgLnN1cHBsZW1lbnRhcnkgdWwgYTphZnRlciB7XG4gICAgICB0b3A6IC0wLjE4NzVyZW07XG4gICAgICB3aWR0aDogMC4zNzVyZW07XG4gICAgICBoZWlnaHQ6IDAuMzc1cmVtOyB9XG4gIC50b3AtYmFyIC5zdXBwbGVtZW50YXJ5IC53aWRnZXQge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIG1hcmdpbi1sZWZ0OiAwLjYyNXJlbTsgfVxuICAgIC50b3AtYmFyIC5zdXBwbGVtZW50YXJ5IC53aWRnZXQgbGFiZWwge1xuICAgICAgcGFkZGluZzogMC41cmVtIDA7XG4gICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgIG1hcmdpbi1yaWdodDogMC42MjVyZW07IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAgIC50b3AtYmFyIC5zdXBwbGVtZW50YXJ5IC53aWRnZXQgbGFiZWwge1xuICAgICAgICAgIHBhZGRpbmc6IDA7IH0gfVxuICAgIC50b3AtYmFyIC5zdXBwbGVtZW50YXJ5IC53aWRnZXQgYnV0dG9uIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDA7IH1cbiAgICAudG9wLWJhciAuc3VwcGxlbWVudGFyeSAud2lkZ2V0LndpZGdldF9zZWFyY2ggLmlucHV0LWdyb3VwIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAudG9wLWJhciAuc3VwcGxlbWVudGFyeSAud2lkZ2V0LndpZGdldF9zZWFyY2ggLmlucHV0LWdyb3VwLWZpZWxkIHtcbiAgICAgIHdpZHRoOiAwO1xuICAgICAgYm9yZGVyLXdpZHRoOiAwO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgIHRyYW5zaXRpb246IGFsbCAwLjRzIGVhc2UtaW4tb3V0O1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgcmlnaHQ6IDEuODc1cmVtO1xuICAgICAgdG9wOiAtMC41cmVtO1xuICAgICAgYm9yZGVyLXJhZGl1czogMS4yNXJlbTsgfVxuICAgIC50b3AtYmFyIC5zdXBwbGVtZW50YXJ5IC53aWRnZXQud2lkZ2V0X3NlYXJjaC5ob3ZlciwgLnRvcC1iYXIgLnN1cHBsZW1lbnRhcnkgLndpZGdldC53aWRnZXRfc2VhcmNoLmZvY3Vzc2VkIHtcbiAgICAgIGJvcmRlci13aWR0aDogMDsgfVxuICAgICAgLnRvcC1iYXIgLnN1cHBsZW1lbnRhcnkgLndpZGdldC53aWRnZXRfc2VhcmNoLmhvdmVyIC5pbnB1dC1ncm91cC1maWVsZCwgLnRvcC1iYXIgLnN1cHBsZW1lbnRhcnkgLndpZGdldC53aWRnZXRfc2VhcmNoLmZvY3Vzc2VkIC5pbnB1dC1ncm91cC1maWVsZCB7XG4gICAgICAgIGJvcmRlci13aWR0aDogMXB4O1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICAgICAgd2lkdGg6IDE1LjYyNXJlbTtcbiAgICAgICAgbWluLXdpZHRoOiAxNS42MjVyZW07XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW4tb3V0OyB9XG5cbi5zdXBwbGVtZW50YXJ5IC53aWRnZXQgYnV0dG9uIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGNvbG9yOiAjMGEwYTBhO1xuICBib3JkZXI6IDA7IH1cblxuLm1vYmlsZS1vZmYtY2FudmFzLW1lbnUgLnN1cHBsZW1lbnRhcnkgLm1lbnUsIC5tb2JpbGUtb2ZmLWNhbnZhcy1tZW51IC5leWVicm93LW1lbnUgLm1lbnUge1xuICBkaXNwbGF5OiBibG9jazsgfVxuXG4ubW9iaWxlLW9mZi1jYW52YXMtbWVudSAuc3VwcGxlbWVudGFyeSBmb3JtLCAubW9iaWxlLW9mZi1jYW52YXMtbWVudSAuZXllYnJvdy1tZW51IGZvcm0ge1xuICBtYXJnaW4tbGVmdDogMC45Mzc1cmVtOyB9XG5cbi5tb2JpbGUtb2ZmLWNhbnZhcy1tZW51IGxpLmZvb3Rlci1vbmx5IHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4ubW9iaWxlLW9mZi1jYW52YXMtbWVudSBsaS5pcy1zdWJtZW51LXBhcmVudC1pdGVtIHtcbiAgZm9udC13ZWlnaHQ6IDUwMDsgfVxuXG5odG1sW2FtcF0gLm1vYmlsZS1vZmYtY2FudmFzLW1lbnUgdWwgbGkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cblxuaHRtbFthbXBdIC5tb2JpbGUtb2ZmLWNhbnZhcy1tZW51IHVsIGJ1dHRvbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDAuOTM3NXJlbTtcbiAgdG9wOiAwLjVyZW07XG4gIHdpZHRoOiAxLjI1cmVtO1xuICBoZWlnaHQ6IDEuMjVyZW07XG4gIGJhY2tncm91bmQ6ICM2ODAwZDI7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1jb250ZW50OiBjZW50ZXI7IH1cbiAgaHRtbFthbXBdIC5tb2JpbGUtb2ZmLWNhbnZhcy1tZW51IHVsIGJ1dHRvbiArIHVsIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIGh0bWxbYW1wXSAubW9iaWxlLW9mZi1jYW52YXMtbWVudSB1bCBidXR0b246YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiK1wiO1xuICAgIGNvbG9yOiAjZmVmZWZlO1xuICAgIGxpbmUtaGVpZ2h0OiAxOyB9XG5cbmh0bWxbYW1wXSAubW9iaWxlLW9mZi1jYW52YXMtbWVudSB1bCBidXR0b24udG9nZ2xlZC1vbjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiLVwiOyB9XG5cbmh0bWxbYW1wXSAubW9iaWxlLW9mZi1jYW52YXMtbWVudSB1bCBidXR0b24udG9nZ2xlZC1vbiArIHVsIHtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuLmV5ZWJyb3cge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IG5vd3JhcCByb3c7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgd2lkdGg6IDEwMCU7XG4gIC8qbWF4LXdpZHRoOjE5MDNweDsqL1xuICBoZWlnaHQ6IDc1cHg7XG4gIG1hcmdpbi10b3A6IDBweDtcbiAgdG9wOiAwcHg7XG4gIHBhZGRpbmctbGVmdDogNC42ODc1cmVtO1xuICBsaW5lLWhlaWdodDogNzVweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZlZmVmZTsgfVxuICAuZXllYnJvdyAuZXllYnJvdy1uYXYtd3JhcHBlciAud2lkZ2V0X25hdl9tZW51IHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjc1cmVtOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAuZXllYnJvdyAuZXllYnJvdy1uYXYtd3JhcHBlciAud2lkZ2V0X25hdl9tZW51IHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDRyZW07IH0gfVxuICAuZXllYnJvdyAuZXllYnJvdy1tZW51IHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICAvKm1hcmdpbi10b3A6IHJlbS1jYWxjKDEyKTsqL1xuICAgIG1hcmdpbi10b3A6IDEuMjVyZW07XG4gICAgbWFyZ2luLWxlZnQ6IDAuOTM3NXJlbTtcbiAgICBtYXJnaW4tcmlnaHQ6IDAuOTM3NXJlbTsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg4Ljc1ZW0pIHtcbiAgICAgIC5leWVicm93IC5leWVicm93LW1lbnUge1xuICAgICAgICBtYXJnaW4tbGVmdDogMy4xMjVyZW07IH0gfVxuICAgIC5leWVicm93IC5leWVicm93LW1lbnUgdWwgYSB7XG4gICAgICBmb250LXNpemU6IDAuODc1cmVtOyB9XG4gICAgICAuZXllYnJvdyAuZXllYnJvdy1tZW51IHVsIGE6YWZ0ZXIge1xuICAgICAgICB0b3A6IC0wLjE4NzVyZW07XG4gICAgICAgIHdpZHRoOiAwLjM3NXJlbTtcbiAgICAgICAgaGVpZ2h0OiAwLjM3NXJlbTsgfVxuICAgIC5leWVicm93IC5leWVicm93LW1lbnUgc3ZnW2lkKj0nc2VhcmNoLWljb24nXSAuc2VhcmNoIHtcbiAgICAgIGZpbGw6IG5vbmU7XG4gICAgICBzdHJva2U6ICM2ODAwZDI7XG4gICAgICBzdHJva2Utd2lkdGg6IDEuNDUyOyB9XG4gICAgLmV5ZWJyb3cgLmV5ZWJyb3ctbWVudSAud2lkZ2V0IHtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgbWFyZ2luLWxlZnQ6IDAuNjI1cmVtOyB9XG4gICAgICAuZXllYnJvdyAuZXllYnJvdy1tZW51IC53aWRnZXQgbGFiZWwge1xuICAgICAgICBwYWRkaW5nOiAwLjVyZW0gMDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMC42MjVyZW07IH1cbiAgICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgICAuZXllYnJvdyAuZXllYnJvdy1tZW51IC53aWRnZXQgbGFiZWwge1xuICAgICAgICAgICAgcGFkZGluZzogMDsgfSB9XG4gICAgICAuZXllYnJvdyAuZXllYnJvdy1tZW51IC53aWRnZXQgYnV0dG9uIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgY29sb3I6ICMwYTBhMGE7XG4gICAgICAgIGJvcmRlcjogMDsgfVxuICAgICAgLmV5ZWJyb3cgLmV5ZWJyb3ctbWVudSAud2lkZ2V0LndpZGdldF9zZWFyY2ggLmlucHV0LWdyb3VwIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgICAuZXllYnJvdyAuZXllYnJvdy1tZW51IC53aWRnZXQud2lkZ2V0X3NlYXJjaCAuaW5wdXQtZ3JvdXAtZmllbGQge1xuICAgICAgICB3aWR0aDogMDtcbiAgICAgICAgYm9yZGVyLXdpZHRoOiAwO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjRzIGVhc2UtaW4tb3V0O1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHJpZ2h0OiAxLjg3NXJlbTtcbiAgICAgICAgdG9wOiAtMC41cmVtO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAxLjI1cmVtOyB9XG4gICAgICAuZXllYnJvdyAuZXllYnJvdy1tZW51IC53aWRnZXQud2lkZ2V0X3NlYXJjaC5ob3ZlciwgLmV5ZWJyb3cgLmV5ZWJyb3ctbWVudSAud2lkZ2V0LndpZGdldF9zZWFyY2guZm9jdXNzZWQge1xuICAgICAgICBib3JkZXItd2lkdGg6IDA7IH1cbiAgICAgICAgLmV5ZWJyb3cgLmV5ZWJyb3ctbWVudSAud2lkZ2V0LndpZGdldF9zZWFyY2guaG92ZXIgLmlucHV0LWdyb3VwLWZpZWxkLCAuZXllYnJvdyAuZXllYnJvdy1tZW51IC53aWRnZXQud2lkZ2V0X3NlYXJjaC5mb2N1c3NlZCAuaW5wdXQtZ3JvdXAtZmllbGQge1xuICAgICAgICAgIGJvcmRlci13aWR0aDogMXB4O1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgICAgICAgd2lkdGg6IDE1LjYyNXJlbTtcbiAgICAgICAgICBtaW4td2lkdGg6IDE1LjYyNXJlbTtcbiAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLWluLW91dDsgfVxuXG4ubWVudS1pY29uIHtcbiAgZmxvYXQ6IHJpZ2h0O1xuICAvKm1hcmdpbi10b3A6IHJlbS1jYWxjKDQpOyovXG4gIG1hcmdpbi10b3A6IDAuNDVyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICBoZWFkZXI6bm90KC5ibGFjaykgLmlzLWFuY2hvcmVkIC5tZW51LWljb246YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZDogI2ZlZmVmZTtcbiAgICAgIGJveC1zaGFkb3c6IDAgN3B4IDAgI2ZlZmVmZSwgMCAxNHB4IDAgI2ZlZmVmZTsgfSB9XG5cbi5tZW51LFxuLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50IHtcbiAgcG9zaXRpb246IHN0YXRpYzsgfVxuXG4uZHJvcGRvd24ubWVudSA+IGxpID4gYSB7XG4gIGJvcmRlci1yYWRpdXM6IDA7IH1cblxuLmRyb3Bkb3duLm1lbnUgPiBsaSA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBwYWRkaW5nLXRvcDogMS4yNXJlbTtcbiAgcGFkZGluZy1ib3R0b206IDEuMjVyZW07XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNjYWNhY2E7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjY2FjYWNhO1xuICBiYWNrZ3JvdW5kOiAjZmVmZWZlO1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgbGVmdDogMCAhaW1wb3J0YW50O1xuICByaWdodDogMCAhaW1wb3J0YW50O1xuICB3aWR0aDogYXV0bzsgfVxuICAuZHJvcGRvd24ubWVudSA+IGxpID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUuanMtZHJvcGRvd24tYWN0aXZlIHtcbiAgICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7IH1cbiAgLmlzLWFuY2hvcmVkIC5kcm9wZG93bi5tZW51ID4gbGkgPiAuaXMtZHJvcGRvd24tc3VibWVudSBhIHtcbiAgICBjb2xvcjogIzBhMGEwYTsgfVxuICAuZHJvcGRvd24ubWVudSA+IGxpID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUgbGkge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBmbGV4OiAwIDEgYXV0bztcbiAgICB3aWR0aDogYXV0bzsgfVxuICAuZHJvcGRvd24ubWVudSA+IGxpID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUgYSB7XG4gICAgZm9udC1zaXplOiAwLjg3NXJlbTsgfVxuICAgIC5kcm9wZG93bi5tZW51ID4gbGkgPiAuaXMtZHJvcGRvd24tc3VibWVudSBhOmFmdGVyIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAuanVtcC1uYXYge1xuICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuXG4uanVtcC1uYXYuaXMtc3R1Y2sge1xuICBtYXJnaW4tdG9wOiAyLjg3NXJlbSAhaW1wb3J0YW50OyB9XG4gIGJvZHkuYWRtaW4tYmFyIC5qdW1wLW5hdi5pcy1zdHVjayB7XG4gICAgbWFyZ2luLXRvcDogNC44NzVyZW0gIWltcG9ydGFudDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5qdW1wLW5hdi5pcy1zdHVjayB7XG4gICAgICBtYXJnaW4tdG9wOiA0LjI1cmVtICFpbXBvcnRhbnQ7IH1cbiAgICAgIGJvZHkuYWRtaW4tYmFyIC5qdW1wLW5hdi5pcy1zdHVjayB7XG4gICAgICAgIG1hcmdpbi10b3A6IDYuMjVyZW0gIWltcG9ydGFudDsgfSB9XG5cbi5qdW1wLW5hdiB1bCB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIG1hcmdpbjogMDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNmMmYyZjI7XG4gIGJhY2tncm91bmQ6ICNmZWZlZmU7IH1cbiAgLmp1bXAtbmF2IHVsIGxpIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcGFkZGluZy10b3A6IDAuOTM3NXJlbTtcbiAgICBwYWRkaW5nLWJvdHRvbTogMC45Mzc1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07XG4gICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmp1bXAtbmF2IHVsIGxpIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTsgfSB9XG4gICAgLmp1bXAtbmF2IHVsIGxpIGEge1xuICAgICAgZm9udC1zaXplOiAwLjkzNzVyZW07XG4gICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgY29sb3I6ICMwYTBhMGE7IH1cbiAgICAuanVtcC1uYXYgdWwgbGkuYWN0aXZlIGEge1xuICAgICAgY29sb3I6ICM2ODAwZDI7IH1cblxuLnJvdy5icmVhZGNydW1iIHtcbiAgLyptYXJnaW4tdG9wOiByZW0tY2FsYygtNSk7Ki9cbiAgdG9wOiAyMzBweDtcbiAgei1pbmRleDogMTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTsgfVxuICAucm93LmJyZWFkY3J1bWIgcC5icmVhZGNydW1icyB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTtcbiAgICBmb250LXNpemU6IDAuNzVyZW07XG4gICAgY29sb3I6ICMwYTBhMGE7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLnJvdy5icmVhZGNydW1iIHAuYnJlYWRjcnVtYnMge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgICAucm93LmJyZWFkY3J1bWIgcC5icmVhZGNydW1icywgLnJvdy5icmVhZGNydW1iIHAuYnJlYWRjcnVtYnM6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgLnJvdy5icmVhZGNydW1iIHAuYnJlYWRjcnVtYnM6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICBmbG9hdDogcmlnaHQ7IH1cbiAgICAucm93LmJyZWFkY3J1bWIgcC5icmVhZGNydW1icyBhIHtcbiAgICAgIGNvbG9yOiAjMGEwYTBhOyB9XG4gIC5zaXRlLWhlYWRlci53aGl0ZSAucm93LmJyZWFkY3J1bWIgcC5icmVhZGNydW1icywgc2VjdGlvbi5uZXdzLmJsb2cgLm5ld3MgLnNpdGUtaGVhZGVyLmFydGljbGU6bnRoLWNoaWxkKDVuICsgMSk6bm90KC5ibGFjaykgLnJvdy5icmVhZGNydW1iIHAuYnJlYWRjcnVtYnMsIHNlY3Rpb24ubmV3cy5ibG9nIC5uZXdzIC5zaXRlLWhlYWRlci5hcnRpY2xlOm50aC1jaGlsZCg1biArIDUpOm5vdCguYmxhY2spIC5yb3cuYnJlYWRjcnVtYiBwLmJyZWFkY3J1bWJzIHtcbiAgICBjb2xvcjogI2ZlZmVmZTsgfVxuICAgIC5zaXRlLWhlYWRlci53aGl0ZSAucm93LmJyZWFkY3J1bWIgcC5icmVhZGNydW1icyBhLCBzZWN0aW9uLm5ld3MuYmxvZyAubmV3cyAuc2l0ZS1oZWFkZXIuYXJ0aWNsZTpudGgtY2hpbGQoNW4gKyAxKTpub3QoLmJsYWNrKSAucm93LmJyZWFkY3J1bWIgcC5icmVhZGNydW1icyBhLCBzZWN0aW9uLm5ld3MuYmxvZyAubmV3cyAuc2l0ZS1oZWFkZXIuYXJ0aWNsZTpudGgtY2hpbGQoNW4gKyA1KTpub3QoLmJsYWNrKSAucm93LmJyZWFkY3J1bWIgcC5icmVhZGNydW1icyBhIHtcbiAgICAgIGNvbG9yOiAjZmVmZWZlOyB9XG4gIC5pcy1zdHVjayArIC5yb3cuYnJlYWRjcnVtYiB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDIzcHgpIHtcbiAgLnJvdy5icmVhZGNydW1iIHtcbiAgICB0b3A6IDgwcHg7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDIzcHgpIHtcbiAgbmF2LnNpdGUtbmF2aWdhdGlvbiB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuLmRyaWxsZG93biAuaXMtZHJpbGxkb3duLXN1Ym1lbnUge1xuICB6LWluZGV4OiB1bnNldDsgfVxuXG4uYm9keS1wdXNoLCAuc2xpY2stZG90cywgLnRvcC1iYXIgdWwgPiBsaS5tZWdhLW1lbnUtZ3JpZCA+IHVsLm1lZ2Etc3ViLW1lbnUsXG4udG9wLWJhciAjbWVnYS1tZW51LXdyYXAtdG9wLWJhci1yICNtZWdhLW1lbnUtdG9wLWJhci1yID4gbGkubWVnYS1tZW51LWdyaWQgPiB1bC5tZWdhLXN1Yi1tZW51LCAuZHJvcGRvd24ubWVudSA+IGxpID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUsIGJvZHkuc2luZ2xlLWNhc2Vfc3R1ZHkgc2VjdGlvbi50YWJiZWQtY29udGVudCAudGFicy13cmFwcGVyLCBib2R5LnNpbmdsZS1jYXNlX3N0dWR5IHNlY3Rpb24udGFiYmVkLWNvbnRlbnQgLnRhYnMtY29udGVudCB7XG4gIHBhZGRpbmctbGVmdDogMS4yNXJlbSAhaW1wb3J0YW50O1xuICBwYWRkaW5nLXJpZ2h0OiAxLjI1cmVtICFpbXBvcnRhbnQ7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5ib2R5LXB1c2gsIC5zbGljay1kb3RzLCAudG9wLWJhciB1bCA+IGxpLm1lZ2EtbWVudS1ncmlkID4gdWwubWVnYS1zdWItbWVudSxcbiAgICAudG9wLWJhciAjbWVnYS1tZW51LXdyYXAtdG9wLWJhci1yICNtZWdhLW1lbnUtdG9wLWJhci1yID4gbGkubWVnYS1tZW51LWdyaWQgPiB1bC5tZWdhLXN1Yi1tZW51LCAuZHJvcGRvd24ubWVudSA+IGxpID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUsIGJvZHkuc2luZ2xlLWNhc2Vfc3R1ZHkgc2VjdGlvbi50YWJiZWQtY29udGVudCAudGFicy13cmFwcGVyLCBib2R5LnNpbmdsZS1jYXNlX3N0dWR5IHNlY3Rpb24udGFiYmVkLWNvbnRlbnQgLnRhYnMtY29udGVudCB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDQuNjg3NXJlbSAhaW1wb3J0YW50O1xuICAgICAgcGFkZGluZy1yaWdodDogNC42ODc1cmVtICFpbXBvcnRhbnQ7IH0gfVxuXG4uc2hvdy1mb3ItcHJpbnQtb25seSB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuaDIsIC5oMiB7XG4gIG1hcmdpbi1ib3R0b206IDEuMjVyZW07IH1cblxuaHRtbDpub3QoW2FtcF0pIC5uby1oZXJvIHtcbiAgcGFkZGluZy10b3A6IDMuMTI1cmVtO1xuICBwYWRkaW5nLWJvdHRvbTogMDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIGh0bWw6bm90KFthbXBdKSAubm8taGVybyB7XG4gICAgICBwYWRkaW5nLXRvcDogOS4zNzVyZW07XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMDsgfSB9XG5cbmJvZHkuYnVzeSB7XG4gIGN1cnNvcjogcHJvZ3Jlc3M7IH1cbiAgYm9keS5idXN5OmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgYmFja2dyb3VuZDogcmdiYSg2OCwgMCwgMTUzLCAwLjkpO1xuICAgIHotaW5kZXg6IDIwMDA7IH1cblxuLmVycm9yNDA0IGFydGljbGUge1xuICBwYWRkaW5nLXRvcDogMi41cmVtO1xuICBwYWRkaW5nLWJvdHRvbTogMi41cmVtO1xuICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtO1xuICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5lcnJvcjQwNCBhcnRpY2xlIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtO1xuICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtOyB9IH1cblxuaW1nW3NyYyo9XCIuc3ZnXCJdIHtcbiAgaGVpZ2h0OiBpbmhlcml0ICFpbXBvcnRhbnQ7IH1cblxudGFibGUge1xuICB3aWR0aDogMTAwJSAhaW1wb3J0YW50OyB9XG5cbnAubGFiZWwsXG5sYWJlbCB7XG4gIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgbWFyZ2luLWJvdHRvbTogMC4zMTI1cmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgcC5sYWJlbCxcbiAgICBsYWJlbCB7XG4gICAgICBmb250LXNpemU6IDAuODc1cmVtOyB9IH1cblxuLm1haW4tY29udGFpbmVyIHtcbiAgY2xlYXI6IGJvdGg7IH1cblxubWFpbiBzZWN0aW9uIHtcbiAgcGFkZGluZy10b3A6IDEuODc1cmVtO1xuICBwYWRkaW5nLWJvdHRvbTogMS44NzVyZW07XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICBtYWluIHNlY3Rpb24ge1xuICAgICAgcGFkZGluZy10b3A6IDVyZW07XG4gICAgICBwYWRkaW5nLWJvdHRvbTogNXJlbTsgfSB9XG4gIG1haW4gc2VjdGlvbi5saWdodCB7XG4gICAgY29sb3I6ICNmZWZlZmU7IH1cbiAgICBtYWluIHNlY3Rpb24ubGlnaHQgLmJ1dHRvbiwgbWFpbiBzZWN0aW9uLmxpZ2h0IC53cC1ibG9jay1idXR0b24gLndwLWJsb2NrLWJ1dHRvbl9fbGluaywgLndwLWJsb2NrLWJ1dHRvbiBtYWluIHNlY3Rpb24ubGlnaHQgLndwLWJsb2NrLWJ1dHRvbl9fbGluaywgbWFpbiBzZWN0aW9uLmxpZ2h0IHNlY3Rpb24ucHJvbW8tbGlzdGluZy5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYSwgc2VjdGlvbi5wcm9tby1saXN0aW5nLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBtYWluIHNlY3Rpb24ubGlnaHQgYSwgbWFpbiBzZWN0aW9uLmxpZ2h0IHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLCBzZWN0aW9uLnByb21vLWxpc3RpbmctMi5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgbWFpbiBzZWN0aW9uLmxpZ2h0IGEge1xuICAgICAgYmFja2dyb3VuZDogI2ZlZmVmZTtcbiAgICAgIGNvbG9yOiAjNjgwMGQyOyB9XG4gICAgICBtYWluIHNlY3Rpb24ubGlnaHQgLmJ1dHRvbjpob3ZlciwgbWFpbiBzZWN0aW9uLmxpZ2h0IC53cC1ibG9jay1idXR0b24gLndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3ZlciwgLndwLWJsb2NrLWJ1dHRvbiBtYWluIHNlY3Rpb24ubGlnaHQgLndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3ZlciwgbWFpbiBzZWN0aW9uLmxpZ2h0IHNlY3Rpb24ucHJvbW8tbGlzdGluZy5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYTpob3Zlciwgc2VjdGlvbi5wcm9tby1saXN0aW5nLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBtYWluIHNlY3Rpb24ubGlnaHQgYTpob3ZlciwgbWFpbiBzZWN0aW9uLmxpZ2h0IHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhOmhvdmVyLCBzZWN0aW9uLnByb21vLWxpc3RpbmctMi5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgbWFpbiBzZWN0aW9uLmxpZ2h0IGE6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiAjZmJlMjAwOyB9XG4gICAgbWFpbiBzZWN0aW9uLmxpZ2h0IC5sYWJlbCB7XG4gICAgICBjb2xvcjogI2ZiZTIwMDsgfVxuXG4uYnV0dG9uLCAud3AtYmxvY2stYnV0dG9uIC53cC1ibG9jay1idXR0b25fX2xpbmssIHNlY3Rpb24ucHJvbW8tbGlzdGluZy5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYSwgc2VjdGlvbi5wcm9tby1saXN0aW5nLTIuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEge1xuICBmb250LXdlaWdodDogNTAwOyB9XG5cbm1haW4gdWw6bm90KFtjbGFzc10pIHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgbGluZS1oZWlnaHQ6IDEuNDsgfVxuICBtYWluIHVsOm5vdChbY2xhc3NdKSBsaSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1hcmdpbjogMC4yNXJlbSAwOyB9XG4gICAgbWFpbiB1bDpub3QoW2NsYXNzXSkgbGk6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGxlZnQ6IC0wLjkzNzVyZW07XG4gICAgICB0b3A6IDAuNXJlbTtcbiAgICAgIHdpZHRoOiAwLjM3NXJlbTtcbiAgICAgIGhlaWdodDogMC4zNzVyZW07XG4gICAgICBib3JkZXItcmFkaXVzOiAwLjI1cmVtO1xuICAgICAgYmFja2dyb3VuZDogIzY4MDBkMjsgfVxuICAgIG1haW4gdWw6bm90KFtjbGFzc10pIGxpID4gdWwgbGk6YmVmb3JlIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICBoZWlnaHQ6IDAuMDYyNXJlbTtcbiAgICAgIHRvcDogMC43NXJlbTsgfVxuICAgIG1haW4gdWw6bm90KFtjbGFzc10pIGxpIGgxLCBtYWluIHVsOm5vdChbY2xhc3NdKSBsaSBoMiwgbWFpbiB1bDpub3QoW2NsYXNzXSkgbGkgaDMsIG1haW4gdWw6bm90KFtjbGFzc10pIGxpIGg0LCBtYWluIHVsOm5vdChbY2xhc3NdKSBsaSBoNSwgbWFpbiB1bDpub3QoW2NsYXNzXSkgbGkgaDYge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xuICAgICAgbGluZS1oZWlnaHQ6IDEuMjsgfVxuXG5tYWluIC5saWdodCB1bDpub3QoW2NsYXNzXSkgbGk6YmVmb3JlIHtcbiAgYmFja2dyb3VuZDogI2ZlZmVmZTsgfVxuXG5ibG9ja3F1b3RlIHtcbiAgYm9yZGVyLWxlZnQ6IDA7XG4gIHBhZGRpbmc6IDA7IH1cbiAgYmxvY2txdW90ZSwgYmxvY2txdW90ZSBwIHtcbiAgICBjb2xvcjogIzBhMGEwYTsgfVxuICBibG9ja3F1b3RlIHAge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgZm9udC1zaXplOiAxLjI1cmVtOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIGJsb2NrcXVvdGUgcCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMi4xMjVyZW07IH0gfVxuICAgIGJsb2NrcXVvdGUgcDpiZWZvcmUge1xuICAgICAgY29udGVudDogXCLigJxcIjtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtMC40ZW07IH1cbiAgICBibG9ja3F1b3RlIHA6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCLigJ1cIjsgfVxuICBibG9ja3F1b3RlIGNpdGUge1xuICAgIGNvbG9yOiAjNjgwMGQyO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICBmb250LXNpemU6IDEwMCU7XG4gICAgbWFyZ2luLWJvdHRvbTogMi41cmVtOyB9XG4gICAgYmxvY2txdW90ZSBjaXRlOmJlZm9yZSB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9XG4gIGJvZHkuc2luZ2xlLXBvc3QgYmxvY2txdW90ZSBwOmJlZm9yZSwgYm9keS5zaW5nbGUtcG9zdCBibG9ja3F1b3RlIHA6YWZ0ZXIsXG4gIGJvZHkuc2luZ2xlLWJsb2cgYmxvY2txdW90ZSBwOmJlZm9yZSxcbiAgYm9keS5zaW5nbGUtYmxvZyBibG9ja3F1b3RlIHA6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cblxuLnJldmVhbCB7XG4gIHBhZGRpbmc6IDIuNXJlbTsgfVxuXG4ucmV2ZWFsLmlmcmFtZSB7XG4gIGhlaWdodDogOTB2aDsgfVxuICAucmV2ZWFsLmlmcmFtZSAuaWZyYW1lLXdyYXBwZXIge1xuICAgIGhlaWdodDogMTAwJTsgfVxuXG4ucmV2ZWFsLW92ZXJsYXkge1xuICBiYWNrZHJvcC1maWx0ZXI6IGJsdXIoMC4yNXJlbSk7IH1cblxuLnJldmVhbC5nYW1tYXBvcHVwLWNvbnRhaW5lciB7XG4gIGhlaWdodDogMTAwJTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5yZXZlYWwuZ2FtbWFwb3B1cC1jb250YWluZXIge1xuICAgICAgYm9yZGVyLXJhZGl1czogMC4yNXJlbTtcbiAgICAgIGhlaWdodDogNzUlOyB9IH1cbiAgLnJldmVhbC5nYW1tYXBvcHVwLWNvbnRhaW5lciAuZ2FtbWFwb3B1cC1jb250ZW50IHtcbiAgICBoZWlnaHQ6IDEwMCU7IH1cblxuZGl2LnNlYXJjaCBmb3JtIHtcbiAgcGFkZGluZy10b3A6IDAuNjI1cmVtO1xuICBtYXJnaW4tcmlnaHQ6IC0wLjYyNXJlbTtcbiAgcGFkZGluZy1yaWdodDogMCAhaW1wb3J0YW50OyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICBkaXYuc2VhcmNoIGZvcm0ge1xuICAgICAgcGFkZGluZy1sZWZ0OiAwICFpbXBvcnRhbnQ7IH0gfVxuICBkaXYuc2VhcmNoIGZvcm0gaW5wdXRbdHlwZT1cInRleHRcIl0ge1xuICAgIGJvcmRlcjogMDtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2NhY2FjYTtcbiAgICBib3gtc2hhZG93OiBub25lOyB9XG4gIGRpdi5zZWFyY2ggZm9ybSBidXR0b24ge1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjY2FjYWNhO1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07IH1cblxudWwubGlzdGluZyB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIG1hcmdpbjogMCAwIDEuMjVyZW07IH1cbiAgdWwubGlzdGluZyBsaSB7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMC41cmVtOyB9XG4gICAgdWwubGlzdGluZyBsaSBhOmFmdGVyIHtcbiAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgdG9wOiAtMC4xMjVyZW07XG4gICAgICByaWdodDogYXV0bztcbiAgICAgIG1hcmdpbi1sZWZ0OiAtMS4yNXJlbTtcbiAgICAgIG1hcmdpbi10b3A6IGF1dG87XG4gICAgICBib3JkZXI6IDJweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlci1yaWdodC1jb2xvcjogIzY4MDBkMjtcbiAgICAgIGJvcmRlci10b3AtY29sb3I6ICM2ODAwZDI7XG4gICAgICB3aWR0aDogMC42MjVyZW07XG4gICAgICBoZWlnaHQ6IDAuNjI1cmVtO1xuICAgICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpIHRyYW5zbGF0ZSgyMHB4LCAtMThweCk7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAgICAgdWwubGlzdGluZyBsaSBhOmFmdGVyIHtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogLTEuNTYyNXJlbTtcbiAgICAgICAgICB0b3A6IC0wLjA2MjVyZW07XG4gICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpIHRyYW5zbGF0ZSgyMHB4LCAtMThweCkgc2NhbGUoMC44KTsgfSB9XG5cbnVsLnNoYXJlLFxuZm9vdGVyLmZvb3Rlci1jb250YWluZXIgdWwge1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDsgfVxuICB1bC5zaGFyZSBsaSxcbiAgZm9vdGVyLmZvb3Rlci1jb250YWluZXIgdWwgbGkge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICB1bC5zaGFyZSBsaS50b3BuYXYtb25seSxcbiAgZm9vdGVyLmZvb3Rlci1jb250YWluZXIgdWwgbGkudG9wbmF2LW9ubHkge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgdWwuc2hhcmUgYVtocmVmKj1cInR3aXR0ZXIuY29tXCJdLFxuICB1bC5zaGFyZSBhW2hyZWYqPVwiZmFjZWJvb2suY29tXCJdLFxuICB1bC5zaGFyZSBhW2hyZWYqPVwibGlua2VkaW4uY29tXCJdLFxuICB1bC5zaGFyZSBhW2hyZWYqPVwieW91dHViZS5jb21cIl0sXG4gIGZvb3Rlci5mb290ZXItY29udGFpbmVyIHVsIGFbaHJlZio9XCJ0d2l0dGVyLmNvbVwiXSxcbiAgZm9vdGVyLmZvb3Rlci1jb250YWluZXIgdWwgYVtocmVmKj1cImZhY2Vib29rLmNvbVwiXSxcbiAgZm9vdGVyLmZvb3Rlci1jb250YWluZXIgdWwgYVtocmVmKj1cImxpbmtlZGluLmNvbVwiXSxcbiAgZm9vdGVyLmZvb3Rlci1jb250YWluZXIgdWwgYVtocmVmKj1cInlvdXR1YmUuY29tXCJdIHtcbiAgICB0ZXh0LWluZGVudDogLTYyNC45Mzc1cmVtO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB3aWR0aDogMnJlbTtcbiAgICBoZWlnaHQ6IDJyZW07XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuICAgIHVsLnNoYXJlIGFbaHJlZio9XCJ0d2l0dGVyLmNvbVwiXTphZnRlcixcbiAgICB1bC5zaGFyZSBhW2hyZWYqPVwiZmFjZWJvb2suY29tXCJdOmFmdGVyLFxuICAgIHVsLnNoYXJlIGFbaHJlZio9XCJsaW5rZWRpbi5jb21cIl06YWZ0ZXIsXG4gICAgdWwuc2hhcmUgYVtocmVmKj1cInlvdXR1YmUuY29tXCJdOmFmdGVyLFxuICAgIGZvb3Rlci5mb290ZXItY29udGFpbmVyIHVsIGFbaHJlZio9XCJ0d2l0dGVyLmNvbVwiXTphZnRlcixcbiAgICBmb290ZXIuZm9vdGVyLWNvbnRhaW5lciB1bCBhW2hyZWYqPVwiZmFjZWJvb2suY29tXCJdOmFmdGVyLFxuICAgIGZvb3Rlci5mb290ZXItY29udGFpbmVyIHVsIGFbaHJlZio9XCJsaW5rZWRpbi5jb21cIl06YWZ0ZXIsXG4gICAgZm9vdGVyLmZvb3Rlci1jb250YWluZXIgdWwgYVtocmVmKj1cInlvdXR1YmUuY29tXCJdOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB3aWR0aDogMnJlbTtcbiAgICAgIGhlaWdodDogMnJlbTtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJSBhdXRvO1xuICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDsgfVxuICB1bC5zaGFyZSBhW2hyZWYqPVwidHdpdHRlci5jb21cIl06YWZ0ZXIsXG4gIGZvb3Rlci5mb290ZXItY29udGFpbmVyIHVsIGFbaHJlZio9XCJ0d2l0dGVyLmNvbVwiXTphZnRlciB7XG4gICAgYmFja2dyb3VuZDogdXJsKC4uL2ltYWdlcy9pY29uX3R3aXR0ZXIuc3ZnKTsgfVxuICB1bC5zaGFyZSBhW2hyZWYqPVwiZmFjZWJvb2suY29tXCJdOmFmdGVyLFxuICBmb290ZXIuZm9vdGVyLWNvbnRhaW5lciB1bCBhW2hyZWYqPVwiZmFjZWJvb2suY29tXCJdOmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1hZ2VzL2ljb25fZmFjZWJvb2suc3ZnKTsgfVxuICB1bC5zaGFyZSBhW2hyZWYqPVwibGlua2VkaW4uY29tXCJdOmFmdGVyLFxuICBmb290ZXIuZm9vdGVyLWNvbnRhaW5lciB1bCBhW2hyZWYqPVwibGlua2VkaW4uY29tXCJdOmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1hZ2VzL2ljb25fbGlua2VkaW4uc3ZnKTsgfVxuICB1bC5zaGFyZSBhW2hyZWYqPVwieW91dHViZS5jb21cIl06YWZ0ZXIsXG4gIGZvb3Rlci5mb290ZXItY29udGFpbmVyIHVsIGFbaHJlZio9XCJ5b3V0dWJlLmNvbVwiXTphZnRlciB7XG4gICAgYmFja2dyb3VuZDogdXJsKC4uL2ltYWdlcy9pY29uX3lvdXR1YmUuc3ZnKTsgfVxuXG4uZm9ybS5maWx0ZXIge1xuICBwYWRkaW5nLWJvdHRvbTogMi41cmVtOyB9XG4gIC5mb3JtLmZpbHRlciBoMiB7XG4gICAgZm9udC1zaXplOiAxMDAlO1xuICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07XG4gICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmZvcm0uZmlsdGVyIGgyIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmZvcm0uZmlsdGVyIGZvcm0ge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5mb3JtLmZpbHRlciBmb3JtIHtcbiAgICAgIGZsZXgtd3JhcDogbm93cmFwOyB9IH1cbiAgLmZvcm0uZmlsdGVyIGZvcm0gcCB7XG4gICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuZm9ybS5maWx0ZXIgZm9ybSBwIHtcbiAgICAgICAgZmxleDogMSAxIDA7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07IH1cbiAgICAgICAgLmZvcm0uZmlsdGVyIGZvcm0gcDpsYXN0LWNoaWxkIHtcbiAgICAgICAgICBmbGV4OiAwIDEgMDsgfSB9XG4gICAgLmZvcm0uZmlsdGVyIGZvcm0gcCBsYWJlbCB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgLmZvcm0uZmlsdGVyIGZvcm0gcCAuc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUge1xuICAgICAgYmFja2dyb3VuZDogI2YyZjJmMjsgfVxuICAgIC5mb3JtLmZpbHRlciBmb3JtIHAgYnV0dG9uIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7IH1cblxuLnBhZ2luYXRpb24ge1xuICBtYXJnaW46IDIuNXJlbSAwOyB9XG4gIC5hamF4LWFjdGl2YXRlZCAucGFnaW5hdGlvbiB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuXG5idXR0b24uYWpheC1hcHBlbmQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAyLjVyZW0gYXV0bzsgfVxuXG4uc2xpY2stYXJyb3cge1xuICBiYWNrZ3JvdW5kOiAjZjJmMmYyO1xuICBjb2xvcjogIzY4MDBkMjtcbiAgaGVpZ2h0OiAzLjEyNXJlbTtcbiAgd2lkdGg6IDMuMTI1cmVtO1xuICB0b3A6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpOyB9XG4gIC5zbGljay1hcnJvdzpiZWZvcmUge1xuICAgIGJvcmRlcjogMC4xODc1cmVtIHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIGhlaWdodDogMXJlbTtcbiAgICB3aWR0aDogMXJlbTsgfVxuXG4uc2xpY2stbmV4dCB7XG4gIGxlZnQ6IGF1dG87XG4gIHJpZ2h0OiAwOyB9XG4gIC5zbGljay1uZXh0OmJlZm9yZSB7XG4gICAgYm9yZGVyLXRvcC1jb2xvcjogIzY4MDBkMjtcbiAgICBib3JkZXItcmlnaHQtY29sb3I6ICM2ODAwZDI7XG4gICAgbWFyZ2luLWxlZnQ6IC0wLjQzNzVyZW07IH1cblxuLnNsaWNrLXByZXYge1xuICByaWdodDogYXV0bztcbiAgbGVmdDogMDsgfVxuICAuc2xpY2stcHJldjpiZWZvcmUge1xuICAgIGJvcmRlci10b3AtY29sb3I6ICM2ODAwZDI7XG4gICAgYm9yZGVyLWxlZnQtY29sb3I6ICM2ODAwZDI7XG4gICAgbWFyZ2luLWxlZnQ6IDAuNDM3NXJlbTsgfVxuXG4uYWRtaW4tYmFyIC5zZWxlY3QyLWRyb3Bkb3duIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEuOTM3NXJlbSk7IH1cblxuLndpc3RpYV9yZXNwb25zaXZlX3BhZGRpbmcge1xuICBwYWRkaW5nOiA1Ni4yNSUgMCAwIDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXG4ud2lzdGlhX3Jlc3BvbnNpdmVfd3JhcHBlciB7XG4gIGhlaWdodDogMTAwJTtcbiAgbGVmdDogMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHdpZHRoOiAxMDAlOyB9XG5cbi53aXN0aWFfZW1iZWQge1xuICBoZWlnaHQ6IDEwMCU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7IH1cblxuLndpc3RpYV9zd2F0Y2gge1xuICBoZWlnaHQ6IDEwMCU7XG4gIGxlZnQ6IDA7XG4gIG9wYWNpdHk6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDIwMG1zO1xuICB3aWR0aDogMTAwJTsgfVxuICAud2lzdGlhX3N3YXRjaCBpbWcge1xuICAgIGZpbHRlcjogYmx1cig1cHgpO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBvYmplY3QtZml0OiBjb250YWluO1xuICAgIHdpZHRoOiAxMDAlOyB9XG5cbmJvZHkuc2luZ2xlLWJsb2cgLmJyZWFkY3J1bWJfbGFzdCxcbmJvZHkuc2luZ2xlLWV2ZW50IC5icmVhZGNydW1iX2xhc3QsXG5ib2R5LnNpbmdsZS1jYXNlX3N0dWR5IC5icmVhZGNydW1iX2xhc3QsXG5ib2R5LnNpbmdsZS1wb3N0IC5icmVhZGNydW1iX2xhc3Qge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbmJvZHkuc2luZ2xlLWJsb2cgLmJyZWFkY3J1bWJzID4gc3BhbixcbmJvZHkuc2luZ2xlLWV2ZW50IC5icmVhZGNydW1icyA+IHNwYW4sXG5ib2R5LnNpbmdsZS1jYXNlX3N0dWR5IC5icmVhZGNydW1icyA+IHNwYW4sXG5ib2R5LnNpbmdsZS1wb3N0IC5icmVhZGNydW1icyA+IHNwYW4ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbi1yaWdodDogLTAuNWVtO1xuICBjbGlwLXBhdGg6IGluc2V0KDAgNXB4IDAgMCk7IH1cblxuaHRtbFthbXBdICpbZGF0YS1hb3NdIHtcbiAgdHJhbnNmb3JtOiBub25lO1xuICBvcGFjaXR5OiAxOyB9XG5cbnNlY3Rpb24uaHRtbDpmaXJzdC1jaGlsZDpsYXN0LWNoaWxkIC5jb250ZW50IHtcbiAgbWF4LXdpZHRoOiA1Ni4yNXJlbTtcbiAgd2lkdGg6IDEwMCU7XG4gIGZsb2F0OiBsZWZ0O1xuICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIHNlY3Rpb24uaHRtbDpmaXJzdC1jaGlsZDpsYXN0LWNoaWxkIC5jb250ZW50IHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgc2VjdGlvbi5odG1sOmZpcnN0LWNoaWxkOmxhc3QtY2hpbGQgLmNvbnRlbnQsIHNlY3Rpb24uaHRtbDpmaXJzdC1jaGlsZDpsYXN0LWNoaWxkIC5jb250ZW50Omxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIGNsZWFyOiBub25lOyB9XG4gIHNlY3Rpb24uaHRtbDpmaXJzdC1jaGlsZDpsYXN0LWNoaWxkIC5jb250ZW50Omxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgIGZsb2F0OiByaWdodDsgfVxuXG4uY2xvc2UtYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzY4MDBkMjtcbiAgY29sb3I6ICNmZWZlZmU7XG4gIGZvbnQtd2VpZ2h0OiAxMDA7XG4gIGZvbnQtc2l6ZTogMy4xMjVyZW07XG4gIHdpZHRoOiAzLjEyNXJlbTtcbiAgaGVpZ2h0OiAzLjEyNXJlbTtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICB0b3A6IDEuODc1cmVtO1xuICByaWdodDogMS44NzVyZW07IH1cbiAgLmNsb3NlLWJ1dHRvbiBzcGFuIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW4tdG9wOiAtMC4yNXJlbTsgfVxuICAuY2xvc2UtYnV0dG9uOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmJlMjAwOyB9XG5cbi5mb290ZXItY29udGFpbmVyIHtcbiAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gIHBhZGRpbmctbGVmdDogMC42MjVyZW07XG4gIG1heC13aWR0aDogNzVyZW07XG4gIG1hcmdpbjogMCBhdXRvO1xuICBtYXgtd2lkdGg6IG5vbmU7XG4gIHBhZGRpbmctdG9wOiAwO1xuICBiYWNrZ3JvdW5kOiAjZjJmMmYyOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmZvb3Rlci1jb250YWluZXIge1xuICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuXG4uZm9vdGVyLWdyaWQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICBwYWRkaW5nOiAxLjI1cmVtIDA7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuZm9vdGVyLWdyaWQge1xuICAgICAgcGFkZGluZzogNXJlbSAwOyB9IH1cbiAgLmZvb3Rlci1ncmlkIC5sb2dvIHtcbiAgICB3aWR0aDogMTYuNjY2NjclO1xuICAgIG1hcmdpbi1sZWZ0OiAwLjYyNXJlbTtcbiAgICBtYXJnaW4tcmlnaHQ6IDAuNjI1cmVtOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5mb290ZXItZ3JpZCAubG9nbyB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwLjkzNzVyZW07XG4gICAgICAgIG1hcmdpbi1yaWdodDogMC45Mzc1cmVtOyB9IH1cbiAgICAuZm9vdGVyLWdyaWQgLmxvZ28gc3ZnIHtcbiAgICAgIG1heC13aWR0aDogOS4zNzVyZW07IH1cbiAgLmZvb3Rlci1ncmlkIHNlY3Rpb24ge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIG1pbi1oZWlnaHQ6IDBweDtcbiAgICBtaW4td2lkdGg6IDBweDtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gMS4yNXJlbSk7XG4gICAgbWFyZ2luLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICBtYXJnaW4tbGVmdDogMC42MjVyZW07XG4gICAgZm9udC1zaXplOiAwLjgxMjVyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLmZvb3Rlci1ncmlkIHNlY3Rpb24ge1xuICAgICAgICBmbGV4OiAxIDEgMHB4O1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICAgIC5mb290ZXItZ3JpZCBzZWN0aW9uIGEge1xuICAgICAgY29sb3I6ICMwYTBhMGE7IH1cbiAgICAgIC5mb290ZXItZ3JpZCBzZWN0aW9uIGE6aG92ZXIge1xuICAgICAgICBjb2xvcjogIzY4MDBkMjsgfVxuICAgIC5mb290ZXItZ3JpZCBzZWN0aW9uIGg2IHtcbiAgICAgIGZvbnQtc2l6ZTogMC44MTI1cmVtOyB9XG4gICAgLmZvb3Rlci1ncmlkIHNlY3Rpb24ud2lkZ2V0X25hdl9tZW51IHtcbiAgICAgIGZsZXg6IDEgMSBhdXRvO1xuICAgICAgcGFkZGluZy10b3A6IDEuMjVyZW07XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMS44NzVyZW07XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgIG1hcmdpbi1yaWdodDogMDsgfVxuICAgICAgLmZvb3Rlci1ncmlkIHNlY3Rpb24ud2lkZ2V0X25hdl9tZW51IC5tZW51LW1haW4tbWVudS1jb250YWluZXIge1xuICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgICAgIC5mb290ZXItZ3JpZCBzZWN0aW9uLndpZGdldF9uYXZfbWVudSAubWVudS1tYWluLW1lbnUtY29udGFpbmVyIC5tZW51IHtcbiAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAgICAgICAgIGFsaWduLWNvbnRlbnQ6IHN0cmV0Y2g7IH1cbiAgICAgICAgICAuZm9vdGVyLWdyaWQgc2VjdGlvbi53aWRnZXRfbmF2X21lbnUgLm1lbnUtbWFpbi1tZW51LWNvbnRhaW5lciAubWVudSBsaSB7XG4gICAgICAgICAgICBmbGV4OiAxIDEgMTAwJTsgfVxuICAgICAgICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgICAgICAgLmZvb3Rlci1ncmlkIHNlY3Rpb24ud2lkZ2V0X25hdl9tZW51IC5tZW51LW1haW4tbWVudS1jb250YWluZXIgLm1lbnUgbGkge1xuICAgICAgICAgICAgICAgIGZsZXgtYmFzaXM6IDA7IH0gfVxuICAgICAgICAgICAgLmZvb3Rlci1ncmlkIHNlY3Rpb24ud2lkZ2V0X25hdl9tZW51IC5tZW51LW1haW4tbWVudS1jb250YWluZXIgLm1lbnUgbGkgYSB7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogMC44MTI1cmVtO1xuICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICAgICAgICAgIHBhZGRpbmctdG9wOiAwLjMxMjVyZW07XG4gICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAwLjMxMjVyZW07IH1cbiAgICAgICAgICAuZm9vdGVyLWdyaWQgc2VjdGlvbi53aWRnZXRfbmF2X21lbnUgLm1lbnUtbWFpbi1tZW51LWNvbnRhaW5lciAubWVudSA+IGxpIHtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTsgfVxuICAgICAgICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgICAgICAgLmZvb3Rlci1ncmlkIHNlY3Rpb24ud2lkZ2V0X25hdl9tZW51IC5tZW51LW1haW4tbWVudS1jb250YWluZXIgLm1lbnUgPiBsaSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07XG4gICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtOyB9IH1cbiAgICAgICAgICAgIC5mb290ZXItZ3JpZCBzZWN0aW9uLndpZGdldF9uYXZfbWVudSAubWVudS1tYWluLW1lbnUtY29udGFpbmVyIC5tZW51ID4gbGkgPiBhIHtcbiAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDsgfVxuICAgICAgICAgICAgLmZvb3Rlci1ncmlkIHNlY3Rpb24ud2lkZ2V0X25hdl9tZW51IC5tZW51LW1haW4tbWVudS1jb250YWluZXIgLm1lbnUgPiBsaSBsaSB7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAgICAgICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgICAgICAgICAuZm9vdGVyLWdyaWQgc2VjdGlvbi53aWRnZXRfbmF2X21lbnUgLm1lbnUtbWFpbi1tZW51LWNvbnRhaW5lciAubWVudSA+IGxpIGxpIHtcbiAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGxpc3QtaXRlbTsgfVxuICAgICAgICAgICAgICAgICAgLmZvb3Rlci1ncmlkIHNlY3Rpb24ud2lkZ2V0X25hdl9tZW51IC5tZW51LW1haW4tbWVudS1jb250YWluZXIgLm1lbnUgPiBsaSBsaS50b3AtbmF2LW9ubHkge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lOyB9IH1cbiAgICAgICAgICAgIC5mb290ZXItZ3JpZCBzZWN0aW9uLndpZGdldF9uYXZfbWVudSAubWVudS1tYWluLW1lbnUtY29udGFpbmVyIC5tZW51ID4gbGkuZm9vdGVyLW9ubHk6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAjNjgwMGQyO1xuICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDAuNjI1cmVtOyB9XG4gICAgICAgICAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgICAgICAgICAgLmZvb3Rlci1ncmlkIHNlY3Rpb24ud2lkZ2V0X25hdl9tZW51IC5tZW51LW1haW4tbWVudS1jb250YWluZXIgLm1lbnUgPiBsaS5mb290ZXItb25seTpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDAuOTM3NXJlbTsgfSB9XG4gICAgICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAgICAgICAgICAgICAuZm9vdGVyLWdyaWQgc2VjdGlvbi53aWRnZXRfbmF2X21lbnUgLm1lbnUtbWFpbi1tZW51LWNvbnRhaW5lciAubWVudSA+IGxpLmZvb3Rlci1vbmx5OmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICAgIGJvcmRlci1yaWdodDogMDsgfSB9XG4gICAgICAgICAgICAgIC5mb290ZXItZ3JpZCBzZWN0aW9uLndpZGdldF9uYXZfbWVudSAubWVudS1tYWluLW1lbnUtY29udGFpbmVyIC5tZW51ID4gbGkuZm9vdGVyLW9ubHk6Zmlyc3QtY2hpbGQgYSB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICM2ODAwZDI7IH1cbiAgICAgICAgICAuZm9vdGVyLWdyaWQgc2VjdGlvbi53aWRnZXRfbmF2X21lbnUgLm1lbnUtbWFpbi1tZW51LWNvbnRhaW5lciAubWVudSAuc3ViLW1lbnUgLnN1Yi1tZW51IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAgIC5mb290ZXItZ3JpZCBzZWN0aW9uLndpZGdldF9uYXZfbWVudSArIHNlY3Rpb24ge1xuICAgICAgICBmbGV4OiAxIDEgMTAwJTtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICM4YThhOGE7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEuMjVyZW07IH1cbiAgICAgICAgLmZvb3Rlci1ncmlkIHNlY3Rpb24ud2lkZ2V0X25hdl9tZW51ICsgc2VjdGlvbiAudGV4dHdpZGdldCB1bCB7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IC0wLjMxMjVyZW07IH1cbiAgICAgICAgICAuZm9vdGVyLWdyaWQgc2VjdGlvbi53aWRnZXRfbmF2X21lbnUgKyBzZWN0aW9uIC50ZXh0d2lkZ2V0IHVsIGxpIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICAgICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAgIC5mb290ZXItZ3JpZCBzZWN0aW9uLndpZGdldF9uYXZfbWVudSArIHNlY3Rpb24gKyBzZWN0aW9uID4gZGl2IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47IH0gfVxuICAgICAgICAuZm9vdGVyLWdyaWQgc2VjdGlvbi53aWRnZXRfbmF2X21lbnUgKyBzZWN0aW9uICsgc2VjdGlvbiA+IGRpdiB1bCB7XG4gICAgICAgICAgbWFyZ2luOiAwIC0wLjMxMjVyZW07IH1cbiAgICAgICAgICAuZm9vdGVyLWdyaWQgc2VjdGlvbi53aWRnZXRfbmF2X21lbnUgKyBzZWN0aW9uICsgc2VjdGlvbiA+IGRpdiB1bCBsaSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAjOGE4YThhO1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMC4zMTI1cmVtO1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjMxMjVyZW07IH1cbiAgICAgICAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgICAgICAgIC5mb290ZXItZ3JpZCBzZWN0aW9uLndpZGdldF9uYXZfbWVudSArIHNlY3Rpb24gKyBzZWN0aW9uID4gZGl2IHVsIGxpIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtOyB9IH1cbiAgICAgICAgICAgIC5mb290ZXItZ3JpZCBzZWN0aW9uLndpZGdldF9uYXZfbWVudSArIHNlY3Rpb24gKyBzZWN0aW9uID4gZGl2IHVsIGxpOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgICBib3JkZXItcmlnaHQ6IDA7XG4gICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7IH1cblxuYm9keSN0aW55bWNlIHtcbiAgaGVpZ2h0OiBhdXRvO1xuICBtYXgtd2lkdGg6IG5vbmU7XG4gIHBhZGRpbmc6IDEuMjVyZW0gIWltcG9ydGFudDsgfVxuXG4uc2l0ZXMtYnV0dG9uIHtcbiAgYmFja2dyb3VuZDogIzY4MDBkMjtcbiAgZm9udC1zaXplOiAxLjI1cmVtO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgYm94LXNoYWRvdzogMCAtMnB4IDAgcmdiYSgwLCAwLCAwLCAwLjIpIGluc2V0O1xuICBib3JkZXItcmFkaXVzOiAzcHg7XG4gIGJvcmRlcjogbm9uZTsgfVxuXG5zZWN0aW9uLmNhcm91c2VsLXNsaWRlIC5yb3cgaDIge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cblxuc2VjdGlvbi5jYXJvdXNlbC1zbGlkZSAucm93IC5jdGEge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cblxuc2VjdGlvbi5jYXJvdXNlbC1zbGlkZSAucm93IC5jYXJvdXNlbCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIHdpZHRoOiAxMDAlOyB9XG4gIHNlY3Rpb24uY2Fyb3VzZWwtc2xpZGUgLnJvdyAuY2Fyb3VzZWwgLnNsaWRlIC5jYXJkLWNvbnRhaW5lciBpbWcge1xuICAgIGhlaWdodDogOS4zNzVyZW07XG4gICAgd2lkdGg6IGF1dG87IH1cblxuc2VjdGlvbi5jb250YWN0LWRldGFpbHMgaDIge1xuICB3aWR0aDogMTAwJTtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtO1xuICBtYXJnaW4tYm90dG9tOiAyLjE4NzVyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICBzZWN0aW9uLmNvbnRhY3QtZGV0YWlscyBoMiB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gIHNlY3Rpb24uY29udGFjdC1kZXRhaWxzIGgyLCBzZWN0aW9uLmNvbnRhY3QtZGV0YWlscyBoMjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBjbGVhcjogbm9uZTsgfVxuICBzZWN0aW9uLmNvbnRhY3QtZGV0YWlscyBoMjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICBmbG9hdDogcmlnaHQ7IH1cblxuc2VjdGlvbi5jb250YWN0LWRldGFpbHMgLmNvbnRhY3QtZGV0YWlscy1saXN0IHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwOyB9XG4gIHNlY3Rpb24uY29udGFjdC1kZXRhaWxzIC5jb250YWN0LWRldGFpbHMtbGlzdCAuY29udGFjdC1kZXRhaWxzLWJsb2NrIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtO1xuICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICBzZWN0aW9uLmNvbnRhY3QtZGV0YWlscyAuY29udGFjdC1kZXRhaWxzLWxpc3QgLmNvbnRhY3QtZGV0YWlscy1ibG9jayB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICAgIHNlY3Rpb24uY29udGFjdC1kZXRhaWxzIC5jb250YWN0LWRldGFpbHMtbGlzdCAuY29udGFjdC1kZXRhaWxzLWJsb2NrLCBzZWN0aW9uLmNvbnRhY3QtZGV0YWlscyAuY29udGFjdC1kZXRhaWxzLWxpc3QgLmNvbnRhY3QtZGV0YWlscy1ibG9jazpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICBzZWN0aW9uLmNvbnRhY3QtZGV0YWlscyAuY29udGFjdC1kZXRhaWxzLWxpc3QgLmNvbnRhY3QtZGV0YWlscy1ibG9jazpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgIGZsb2F0OiByaWdodDsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICBzZWN0aW9uLmNvbnRhY3QtZGV0YWlscyAuY29udGFjdC1kZXRhaWxzLWxpc3QgLmNvbnRhY3QtZGV0YWlscy1ibG9jayB7XG4gICAgICAgIHdpZHRoOiAzMy4zMzMzMyU7IH0gfVxuICAgIHNlY3Rpb24uY29udGFjdC1kZXRhaWxzIC5jb250YWN0LWRldGFpbHMtbGlzdCAuY29udGFjdC1kZXRhaWxzLWJsb2NrIGgzIHtcbiAgICAgIGNvbG9yOiAjNjgwMGQyO1xuICAgICAgZm9udC1zaXplOiAxLjA2MjVyZW07XG4gICAgICBtYXJnaW4tYm90dG9tOiAxLjI1cmVtOyB9XG4gICAgc2VjdGlvbi5jb250YWN0LWRldGFpbHMgLmNvbnRhY3QtZGV0YWlscy1saXN0IC5jb250YWN0LWRldGFpbHMtYmxvY2sgcCBzcGFuIHtcbiAgICAgIGNvbG9yOiAjNjgwMGQyOyB9XG5cbnNlY3Rpb24uY29udGFjdC1mb3JtIC5jb250ZW50IHtcbiAgd2lkdGg6IDEwMCU7XG4gIGZsb2F0OiBsZWZ0O1xuICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIHNlY3Rpb24uY29udGFjdC1mb3JtIC5jb250ZW50IHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgc2VjdGlvbi5jb250YWN0LWZvcm0gLmNvbnRlbnQsIHNlY3Rpb24uY29udGFjdC1mb3JtIC5jb250ZW50Omxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIGNsZWFyOiBub25lOyB9XG4gIHNlY3Rpb24uY29udGFjdC1mb3JtIC5jb250ZW50Omxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgIGZsb2F0OiByaWdodDsgfVxuICBzZWN0aW9uLmNvbnRhY3QtZm9ybSAuY29udGVudCA+IC53cGNmNyB7XG4gICAgcGFkZGluZy10b3A6IDEuMjVyZW07XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIG1hcmdpbi1sZWZ0OiAtMC45Mzc1cmVtO1xuICAgIG1hcmdpbi1yaWdodDogLTAuOTM3NXJlbTtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICBzZWN0aW9uLmNvbnRhY3QtZm9ybSAuY29udGVudCA+IC53cGNmNyB7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7IH0gfVxuICAgIHNlY3Rpb24uY29udGFjdC1mb3JtIC5jb250ZW50ID4gLndwY2Y3IC53cGNmNy1mb3JtIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgICBzZWN0aW9uLmNvbnRhY3QtZm9ybSAuY29udGVudCA+IC53cGNmNyAuaW5wdXQtZmllbGQge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTsgfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgc2VjdGlvbi5jb250YWN0LWZvcm0gLmNvbnRlbnQgPiAud3BjZjcgLmlucHV0LWZpZWxkIHtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICAgICAgc2VjdGlvbi5jb250YWN0LWZvcm0gLmNvbnRlbnQgPiAud3BjZjcgLmlucHV0LWZpZWxkLCBzZWN0aW9uLmNvbnRhY3QtZm9ybSAuY29udGVudCA+IC53cGNmNyAuaW5wdXQtZmllbGQ6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBjbGVhcjogbm9uZTsgfVxuICAgICAgc2VjdGlvbi5jb250YWN0LWZvcm0gLmNvbnRlbnQgPiAud3BjZjcgLmlucHV0LWZpZWxkOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICBmbG9hdDogcmlnaHQ7IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgIHNlY3Rpb24uY29udGFjdC1mb3JtIC5jb250ZW50ID4gLndwY2Y3IC5pbnB1dC1maWVsZCB7XG4gICAgICAgICAgd2lkdGg6IDUwJTsgfSB9XG4gICAgICBzZWN0aW9uLmNvbnRhY3QtZm9ybSAuY29udGVudCA+IC53cGNmNyAuaW5wdXQtZmllbGQgaW5wdXQsIHNlY3Rpb24uY29udGFjdC1mb3JtIC5jb250ZW50ID4gLndwY2Y3IC5pbnB1dC1maWVsZCBzZWxlY3QsIHNlY3Rpb24uY29udGFjdC1mb3JtIC5jb250ZW50ID4gLndwY2Y3IC5pbnB1dC1maWVsZCAuc2VsZWN0Mi1zZWxlY3Rpb24ge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjJmMmYyO1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDAuOTM3NXJlbTtcbiAgICAgICAgYm94LXNoYWRvdzogbm9uZTsgfVxuICAgICAgc2VjdGlvbi5jb250YWN0LWZvcm0gLmNvbnRlbnQgPiAud3BjZjcgLmlucHV0LWZpZWxkIFt0eXBlPSdyYWRpbyddIHtcbiAgICAgICAgYm9yZGVyOiAwLjA2MjVyZW0gc29saWQgIzBhMGEwYTtcbiAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwLjMxMjVyZW07IH1cbiAgICAgIHNlY3Rpb24uY29udGFjdC1mb3JtIC5jb250ZW50ID4gLndwY2Y3IC5pbnB1dC1maWVsZCBbdHlwZT0nc3VibWl0J10ge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNjgwMGQyO1xuICAgICAgICBtYXgtd2lkdGg6IDIwLjMxMjVyZW07XG4gICAgICAgIG1hcmdpbi10b3A6IDAuOTM3NXJlbTtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDAuNzVyZW07XG4gICAgICAgIHBhZGRpbmctdG9wOiAwLjYyNXJlbTtcbiAgICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgICAgIHNlY3Rpb24uY29udGFjdC1mb3JtIC5jb250ZW50ID4gLndwY2Y3IC5pbnB1dC1maWVsZDpudGgtbGFzdC1jaGlsZCgzKSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDEuMjVyZW07IH1cbiAgICAgIHNlY3Rpb24uY29udGFjdC1mb3JtIC5jb250ZW50ID4gLndwY2Y3IC5pbnB1dC1maWVsZDpudGgtbGFzdC1jaGlsZCgyKSBbdHlwZT0nc3VibWl0J10ge1xuICAgICAgICBtYXJnaW4tdG9wOiAxLjg3NXJlbTsgfVxuXG5zZWN0aW9uLmNvbnRhY3QtZ3JvdXAtbG9jYXRpb25zIHtcbiAgcGFkZGluZy1ib3R0b206IDAgIWltcG9ydGFudDtcbiAgcGFkZGluZy10b3A6IDAgIWltcG9ydGFudDsgfVxuICBzZWN0aW9uLmNvbnRhY3QtZ3JvdXAtbG9jYXRpb25zIHVsLmNvbnRhY3QtYWRkcmVzcy1saXN0IHtcbiAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gICAgbWFyZ2luOiAwOyB9XG4gICAgc2VjdGlvbi5jb250YWN0LWdyb3VwLWxvY2F0aW9ucyB1bC5jb250YWN0LWFkZHJlc3MtbGlzdCAuY29udGFjdC1jYXJkLWl0ZW0ge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAgIHNlY3Rpb24uY29udGFjdC1ncm91cC1sb2NhdGlvbnMgdWwuY29udGFjdC1hZGRyZXNzLWxpc3QgLmNvbnRhY3QtY2FyZC1pdGVtIC5jb250YWN0LWNhcmQtY29sdW1uIHtcbiAgICAgICAgICB3aWR0aDogNTAlOyB9IH1cbiAgICAgIHNlY3Rpb24uY29udGFjdC1ncm91cC1sb2NhdGlvbnMgdWwuY29udGFjdC1hZGRyZXNzLWxpc3QgLmNvbnRhY3QtY2FyZC1pdGVtIC5jb250YWN0LWNhcmQtY29sdW1uIC5jb250ZW50IHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTsgfVxuICAgICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAgIHNlY3Rpb24uY29udGFjdC1ncm91cC1sb2NhdGlvbnMgdWwuY29udGFjdC1hZGRyZXNzLWxpc3QgLmNvbnRhY3QtY2FyZC1pdGVtIC5jb250YWN0LWNhcmQtY29sdW1uIC5jb250ZW50IHtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgICAgICAgc2VjdGlvbi5jb250YWN0LWdyb3VwLWxvY2F0aW9ucyB1bC5jb250YWN0LWFkZHJlc3MtbGlzdCAuY29udGFjdC1jYXJkLWl0ZW0gLmNvbnRhY3QtY2FyZC1jb2x1bW4gLmNvbnRlbnQsIHNlY3Rpb24uY29udGFjdC1ncm91cC1sb2NhdGlvbnMgdWwuY29udGFjdC1hZGRyZXNzLWxpc3QgLmNvbnRhY3QtY2FyZC1pdGVtIC5jb250YWN0LWNhcmQtY29sdW1uIC5jb250ZW50Omxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgICAgIHNlY3Rpb24uY29udGFjdC1ncm91cC1sb2NhdGlvbnMgdWwuY29udGFjdC1hZGRyZXNzLWxpc3QgLmNvbnRhY3QtY2FyZC1pdGVtIC5jb250YWN0LWNhcmQtY29sdW1uIC5jb250ZW50Omxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgIGZsb2F0OiByaWdodDsgfVxuICAgICAgc2VjdGlvbi5jb250YWN0LWdyb3VwLWxvY2F0aW9ucyB1bC5jb250YWN0LWFkZHJlc3MtbGlzdCAuY29udGFjdC1jYXJkLWl0ZW0gLmNvbnRhY3QtY2FyZC1tYXAge1xuICAgICAgICBvcmRlcjogMjtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwICFpbXBvcnRhbnQ7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDAgIWltcG9ydGFudDsgfVxuICAgICAgICBzZWN0aW9uLmNvbnRhY3QtZ3JvdXAtbG9jYXRpb25zIHVsLmNvbnRhY3QtYWRkcmVzcy1saXN0IC5jb250YWN0LWNhcmQtaXRlbSAuY29udGFjdC1jYXJkLW1hcCAuYWNmLW1hcCB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgaGVpZ2h0OiA3MnZ3O1xuICAgICAgICAgIGJvcmRlcjogI2NjYyBzb2xpZCAxcHg7XG4gICAgICAgICAgbWFyZ2luOiAwOyB9XG4gICAgICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgICAgIHNlY3Rpb24uY29udGFjdC1ncm91cC1sb2NhdGlvbnMgdWwuY29udGFjdC1hZGRyZXNzLWxpc3QgLmNvbnRhY3QtY2FyZC1pdGVtIC5jb250YWN0LWNhcmQtbWFwIC5hY2YtbWFwIHtcbiAgICAgICAgICAgICAgaGVpZ2h0OiAyNXJlbTsgfSB9XG4gICAgICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgICAgIHNlY3Rpb24uY29udGFjdC1ncm91cC1sb2NhdGlvbnMgdWwuY29udGFjdC1hZGRyZXNzLWxpc3QgLmNvbnRhY3QtY2FyZC1pdGVtIC5jb250YWN0LWNhcmQtbWFwIC5hY2YtbWFwIHtcbiAgICAgICAgICAgICAgaGVpZ2h0OiAyOHZ3O1xuICAgICAgICAgICAgICBtaW4taGVpZ2h0OiAyNi41NjI1cmVtOyB9IH1cbiAgICAgICAgICBzZWN0aW9uLmNvbnRhY3QtZ3JvdXAtbG9jYXRpb25zIHVsLmNvbnRhY3QtYWRkcmVzcy1saXN0IC5jb250YWN0LWNhcmQtaXRlbSAuY29udGFjdC1jYXJkLW1hcCAuYWNmLW1hcCBpbWcge1xuICAgICAgICAgICAgbWF4LXdpZHRoOiBpbmhlcml0ICFpbXBvcnRhbnQ7IH1cbiAgICAgIHNlY3Rpb24uY29udGFjdC1ncm91cC1sb2NhdGlvbnMgdWwuY29udGFjdC1hZGRyZXNzLWxpc3QgLmNvbnRhY3QtY2FyZC1pdGVtIC5jb250YWN0LWNhcmQtYWRkcmVzcyB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICBvcmRlcjogMTtcbiAgICAgICAgcGFkZGluZzogMi41cmVtIDEuMjVyZW07XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAgIHNlY3Rpb24uY29udGFjdC1ncm91cC1sb2NhdGlvbnMgdWwuY29udGFjdC1hZGRyZXNzLWxpc3QgLmNvbnRhY3QtY2FyZC1pdGVtIC5jb250YWN0LWNhcmQtYWRkcmVzcyB7XG4gICAgICAgICAgICBwYWRkaW5nOiAzLjc1cmVtIDEuMjVyZW07IH0gfVxuICAgICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgICAgIHNlY3Rpb24uY29udGFjdC1ncm91cC1sb2NhdGlvbnMgdWwuY29udGFjdC1hZGRyZXNzLWxpc3QgLmNvbnRhY3QtY2FyZC1pdGVtIC5jb250YWN0LWNhcmQtYWRkcmVzcyB7XG4gICAgICAgICAgICBwYWRkaW5nOiA1cmVtIDEuMjVyZW07IH0gfVxuICAgICAgICBzZWN0aW9uLmNvbnRhY3QtZ3JvdXAtbG9jYXRpb25zIHVsLmNvbnRhY3QtYWRkcmVzcy1saXN0IC5jb250YWN0LWNhcmQtaXRlbSAuY29udGFjdC1jYXJkLWFkZHJlc3MgcCB7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMjdlbTtcbiAgICAgICAgICBmb250LXNpemU6IDEuMTI1cmVtO1xuICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAtMC4wMDE4N3JlbTtcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgei1pbmRleDogMTsgfVxuICAgICAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgICAgICBzZWN0aW9uLmNvbnRhY3QtZ3JvdXAtbG9jYXRpb25zIHVsLmNvbnRhY3QtYWRkcmVzcy1saXN0IC5jb250YWN0LWNhcmQtaXRlbSAuY29udGFjdC1jYXJkLWFkZHJlc3MgcCB7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS42MjVyZW07IH0gfVxuICAgICAgICBzZWN0aW9uLmNvbnRhY3QtZ3JvdXAtbG9jYXRpb25zIHVsLmNvbnRhY3QtYWRkcmVzcy1saXN0IC5jb250YWN0LWNhcmQtaXRlbSAuY29udGFjdC1jYXJkLWFkZHJlc3MgYSB7XG4gICAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAtMC4wMDE4N3JlbTsgfVxuICAgICAgICAgIHNlY3Rpb24uY29udGFjdC1ncm91cC1sb2NhdGlvbnMgdWwuY29udGFjdC1hZGRyZXNzLWxpc3QgLmNvbnRhY3QtY2FyZC1pdGVtIC5jb250YWN0LWNhcmQtYWRkcmVzcyBhOmFmdGVyIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICBoZWlnaHQ6IDAuNXJlbTtcbiAgICAgICAgICAgIHdpZHRoOiAwLjVyZW07XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwLjEyNXJlbTtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwLjI1cmVtO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTsgfVxuICAgICAgICAgIHNlY3Rpb24uY29udGFjdC1ncm91cC1sb2NhdGlvbnMgdWwuY29udGFjdC1hZGRyZXNzLWxpc3QgLmNvbnRhY3QtY2FyZC1pdGVtIC5jb250YWN0LWNhcmQtYWRkcmVzcyBhOmhvdmVyOmFmdGVyIHtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwLjYyNXJlbTsgfVxuICAgICAgICBzZWN0aW9uLmNvbnRhY3QtZ3JvdXAtbG9jYXRpb25zIHVsLmNvbnRhY3QtYWRkcmVzcy1saXN0IC5jb250YWN0LWNhcmQtaXRlbSAuY29udGFjdC1jYXJkLWFkZHJlc3M6YWZ0ZXIge1xuICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgaGVpZ2h0OiAyLjVyZW07XG4gICAgICAgICAgd2lkdGg6IDIuNXJlbTtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgYm90dG9tOiAtMS4yNXJlbTtcbiAgICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpIHJvdGF0ZSgtNDVkZWcpOyB9XG4gICAgICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgICAgIHNlY3Rpb24uY29udGFjdC1ncm91cC1sb2NhdGlvbnMgdWwuY29udGFjdC1hZGRyZXNzLWxpc3QgLmNvbnRhY3QtY2FyZC1pdGVtIC5jb250YWN0LWNhcmQtYWRkcmVzczphZnRlciB7XG4gICAgICAgICAgICAgIGJvdHRvbTogdW5zZXQ7XG4gICAgICAgICAgICAgIGxlZnQ6IGNhbGMoMTAwJSAtIDIwcHgpO1xuICAgICAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpIHJvdGF0ZSgtNDVkZWcpOyB9IH1cbiAgICAgIHNlY3Rpb24uY29udGFjdC1ncm91cC1sb2NhdGlvbnMgdWwuY29udGFjdC1hZGRyZXNzLWxpc3QgLmNvbnRhY3QtY2FyZC1pdGVtW3N0eWxlKj1cIiMwYTBhMGFcIl0gLmNvbnRhY3QtY2FyZC1hZGRyZXNzOmFmdGVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzBhMGEwYTsgfVxuICAgICAgc2VjdGlvbi5jb250YWN0LWdyb3VwLWxvY2F0aW9ucyB1bC5jb250YWN0LWFkZHJlc3MtbGlzdCAuY29udGFjdC1jYXJkLWl0ZW1bc3R5bGUqPVwiI2IyYjJiMlwiXSAuY29udGFjdC1jYXJkLWFkZHJlc3M6YWZ0ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYjJiMmIyOyB9XG4gICAgICBzZWN0aW9uLmNvbnRhY3QtZ3JvdXAtbG9jYXRpb25zIHVsLmNvbnRhY3QtYWRkcmVzcy1saXN0IC5jb250YWN0LWNhcmQtaXRlbVtzdHlsZSo9XCIjZjJmMmYyXCJdIC5jb250YWN0LWNhcmQtYWRkcmVzczphZnRlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmMmYyZjI7IH1cbiAgICAgIHNlY3Rpb24uY29udGFjdC1ncm91cC1sb2NhdGlvbnMgdWwuY29udGFjdC1hZGRyZXNzLWxpc3QgLmNvbnRhY3QtY2FyZC1pdGVtW3N0eWxlKj1cIiM2ODAwZDJcIl0gLmNvbnRhY3QtY2FyZC1hZGRyZXNzOmFmdGVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzY4MDBkMjsgfVxuICAgICAgc2VjdGlvbi5jb250YWN0LWdyb3VwLWxvY2F0aW9ucyB1bC5jb250YWN0LWFkZHJlc3MtbGlzdCAuY29udGFjdC1jYXJkLWl0ZW1bc3R5bGUqPVwiIzllMjlmZFwiXSAuY29udGFjdC1jYXJkLWFkZHJlc3M6YWZ0ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjOWUyOWZkOyB9XG4gICAgICBzZWN0aW9uLmNvbnRhY3QtZ3JvdXAtbG9jYXRpb25zIHVsLmNvbnRhY3QtYWRkcmVzcy1saXN0IC5jb250YWN0LWNhcmQtaXRlbVtzdHlsZSo9XCIjNDQwMDk5XCJdIC5jb250YWN0LWNhcmQtYWRkcmVzczphZnRlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICM0NDAwOTk7IH1cbiAgICAgIHNlY3Rpb24uY29udGFjdC1ncm91cC1sb2NhdGlvbnMgdWwuY29udGFjdC1hZGRyZXNzLWxpc3QgLmNvbnRhY3QtY2FyZC1pdGVtW3N0eWxlKj1cIiNmYmUyMDBcIl0gLmNvbnRhY3QtY2FyZC1hZGRyZXNzOmFmdGVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZiZTIwMDsgfVxuICAgICAgc2VjdGlvbi5jb250YWN0LWdyb3VwLWxvY2F0aW9ucyB1bC5jb250YWN0LWFkZHJlc3MtbGlzdCAuY29udGFjdC1jYXJkLWl0ZW1bc3R5bGUqPVwiI2ZhZmFmYVwiXSAuY29udGFjdC1jYXJkLWFkZHJlc3M6YWZ0ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmFmYWZhOyB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgICBzZWN0aW9uLmNvbnRhY3QtZ3JvdXAtbG9jYXRpb25zIHVsLmNvbnRhY3QtYWRkcmVzcy1saXN0IC5jb250YWN0LWNhcmQtaXRlbTpudGgtY2hpbGQob2RkKSAuY29udGFjdC1jYXJkLWFkZHJlc3Mge1xuICAgICAgICAgIG9yZGVyOiAyOyB9XG4gICAgICAgICAgc2VjdGlvbi5jb250YWN0LWdyb3VwLWxvY2F0aW9ucyB1bC5jb250YWN0LWFkZHJlc3MtbGlzdCAuY29udGFjdC1jYXJkLWl0ZW06bnRoLWNoaWxkKG9kZCkgLmNvbnRhY3QtY2FyZC1hZGRyZXNzOmFmdGVyIHtcbiAgICAgICAgICAgIHJpZ2h0OiB1bnNldDtcbiAgICAgICAgICAgIGxlZnQ6IC0xLjI1cmVtOyB9IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAgIHNlY3Rpb24uY29udGFjdC1ncm91cC1sb2NhdGlvbnMgdWwuY29udGFjdC1hZGRyZXNzLWxpc3QgLmNvbnRhY3QtY2FyZC1pdGVtOm50aC1jaGlsZChvZGQpIC5jb250YWN0LWNhcmQtbWFwIHtcbiAgICAgICAgICBvcmRlcjogMTsgfSB9XG5cbiNtb292ZV9nZHByX2Nvb2tpZV9pbmZvX2JhciB7XG4gIHBhZGRpbmctdG9wOiAxLjI1cmVtO1xuICBwYWRkaW5nLWJvdHRvbTogMS4yNXJlbTtcbiAgcGFkZGluZy1sZWZ0OiAxLjU2MjVyZW0gIWltcG9ydGFudDtcbiAgcGFkZGluZy1yaWdodDogMS41NjI1cmVtICFpbXBvcnRhbnQ7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICNtb292ZV9nZHByX2Nvb2tpZV9pbmZvX2JhciB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDQuNjg3NXJlbSAhaW1wb3J0YW50O1xuICAgICAgcGFkZGluZy1yaWdodDogNC42ODc1cmVtICFpbXBvcnRhbnQ7IH0gfVxuICAjbW9vdmVfZ2Rwcl9jb29raWVfaW5mb19iYXIgLm1vb3ZlLWdkcHItaW5mby1iYXItY29udGFpbmVyIHtcbiAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgICAjbW9vdmVfZ2Rwcl9jb29raWVfaW5mb19iYXIgLm1vb3ZlLWdkcHItaW5mby1iYXItY29udGFpbmVyIC5tb292ZS1nZHByLWluZm8tYmFyLWNvbnRlbnQge1xuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgIHBhZGRpbmctbGVmdDogMCAhaW1wb3J0YW50O1xuICAgICAgcGFkZGluZy1yaWdodDogMCAhaW1wb3J0YW50OyB9XG4gICAgICAjbW9vdmVfZ2Rwcl9jb29raWVfaW5mb19iYXIgLm1vb3ZlLWdkcHItaW5mby1iYXItY29udGFpbmVyIC5tb292ZS1nZHByLWluZm8tYmFyLWNvbnRlbnQgLm1vb3ZlLWdkcHItY29va2llLW5vdGljZSB7XG4gICAgICAgIGZsZXg6IDEgMSBhdXRvOyB9XG4gICAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAgICAgI21vb3ZlX2dkcHJfY29va2llX2luZm9fYmFyIC5tb292ZS1nZHByLWluZm8tYmFyLWNvbnRhaW5lciAubW9vdmUtZ2Rwci1pbmZvLWJhci1jb250ZW50IC5tb292ZS1nZHByLWNvb2tpZS1ub3RpY2Uge1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07IH0gfVxuICAgICAgICAjbW9vdmVfZ2Rwcl9jb29raWVfaW5mb19iYXIgLm1vb3ZlLWdkcHItaW5mby1iYXItY29udGFpbmVyIC5tb292ZS1nZHByLWluZm8tYmFyLWNvbnRlbnQgLm1vb3ZlLWdkcHItY29va2llLW5vdGljZSBwIHtcbiAgICAgICAgICBjb2xvcjogIzBhMGEwYSAhaW1wb3J0YW50O1xuICAgICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjYyNXJlbTtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxLjI1cmVtOyB9XG4gICAgICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgICAgICNtb292ZV9nZHByX2Nvb2tpZV9pbmZvX2JhciAubW9vdmUtZ2Rwci1pbmZvLWJhci1jb250YWluZXIgLm1vb3ZlLWdkcHItaW5mby1iYXItY29udGVudCAubW9vdmUtZ2Rwci1jb29raWUtbm90aWNlIHAge1xuICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwOyB9IH1cbiAgICAgICNtb292ZV9nZHByX2Nvb2tpZV9pbmZvX2JhciAubW9vdmUtZ2Rwci1pbmZvLWJhci1jb250YWluZXIgLm1vb3ZlLWdkcHItaW5mby1iYXItY29udGVudCAubW9vdmUtZ2Rwci1idXR0b24taG9sZGVyIHtcbiAgICAgICAgZmxleDogMSAxIGF1dG87XG4gICAgICAgIHBhZGRpbmctbGVmdDogMCAhaW1wb3J0YW50OyB9XG4gICAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAgICAgI21vb3ZlX2dkcHJfY29va2llX2luZm9fYmFyIC5tb292ZS1nZHByLWluZm8tYmFyLWNvbnRhaW5lciAubW9vdmUtZ2Rwci1pbmZvLWJhci1jb250ZW50IC5tb292ZS1nZHByLWJ1dHRvbi1ob2xkZXIge1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW0gIWltcG9ydGFudDtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbSAhaW1wb3J0YW50OyB9IH1cbiAgI21vb3ZlX2dkcHJfY29va2llX2luZm9fYmFyLm1vb3ZlLWdkcHItZGFyay1zY2hlbWUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmYmUyMDAgIWltcG9ydGFudDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7IH1cblxuc2VjdGlvbi5oZXJvLXNsaWRlIHtcbiAgYmFja2dyb3VuZDogd2hpdGU7XG4gIGNvbG9yOiAjZmVmZWZlO1xuICBwYWRkaW5nOiAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgc2VjdGlvbi5oZXJvLXNsaWRlID4gLnNsaWRlIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgc2VjdGlvbi5oZXJvLXNsaWRlID4gLnNsaWRlOmZpcnN0LWNoaWxkIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICBzZWN0aW9uLmhlcm8tc2xpZGUgPiAuc2xpZGU6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7IH0gfVxuICAgIHNlY3Rpb24uaGVyby1zbGlkZSA+IC5zbGlkZSAucm93IGEuYnV0dG9uLCBzZWN0aW9uLmhlcm8tc2xpZGUgPiAuc2xpZGUgLnJvdyAud3AtYmxvY2stYnV0dG9uIGEud3AtYmxvY2stYnV0dG9uX19saW5rLCAud3AtYmxvY2stYnV0dG9uIHNlY3Rpb24uaGVyby1zbGlkZSA+IC5zbGlkZSAucm93IGEud3AtYmxvY2stYnV0dG9uX19saW5rLCBzZWN0aW9uLmhlcm8tc2xpZGUgPiAuc2xpZGUgLnJvdyBzZWN0aW9uLnByb21vLWxpc3RpbmcuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEsIHNlY3Rpb24ucHJvbW8tbGlzdGluZy5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgc2VjdGlvbi5oZXJvLXNsaWRlID4gLnNsaWRlIC5yb3cgYSwgc2VjdGlvbi5oZXJvLXNsaWRlID4gLnNsaWRlIC5yb3cgc2VjdGlvbi5wcm9tby1saXN0aW5nLTIuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEsIHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBzZWN0aW9uLmhlcm8tc2xpZGUgPiAuc2xpZGUgLnJvdyBhIHtcbiAgICAgIG1hcmdpbi10b3A6IDEuMjVyZW07IH1cbiAgc2VjdGlvbi5oZXJvLXNsaWRlIC5zbGlkZSB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgc2VjdGlvbi5oZXJvLXNsaWRlIC5zbGlkZSB7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDMxLjI1cmVtOyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICBzZWN0aW9uLmhlcm8tc2xpZGUgLnNsaWRlIHtcbiAgICAgICAgaGVpZ2h0OiBjYWxjKDEwMHZoIC0gMTAwcHgpO1xuICAgICAgICBtaW4taGVpZ2h0OiAzNy41cmVtO1xuICAgICAgICBmb250LXNpemU6IDEuMTI1cmVtO1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gICAgICAgIGJvZHkuaG9tZSBzZWN0aW9uLmhlcm8tc2xpZGUgLnNsaWRlIHtcbiAgICAgICAgICBtaW4taGVpZ2h0OiAxMDB2aDsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIGJvZHlbZGF0YS1zbHVnPVwicHJvZHVjdHNcIl0gc2VjdGlvbi5oZXJvLXNsaWRlIC5zbGlkZSAuY29udGVudCAudGV4dCAudGl0bGUge1xuICAgICAgICBtYXgtd2lkdGg6IDI4LjEyNXJlbTsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIGJvZHlbZGF0YS1zbHVnPVwicHJvZHVjdHNcIl0gc2VjdGlvbi5oZXJvLXNsaWRlIC5zbGlkZSAuY29udGVudCAudGV4dCAudGl0bGUge1xuICAgICAgICBtYXgtd2lkdGg6IDM0LjM3NXJlbTsgfSB9XG4gICAgYm9keVtkYXRhLXNsdWc9XCJzb2x1dGlvbnNcIl0gc2VjdGlvbi5oZXJvLXNsaWRlIC5zbGlkZSB7XG4gICAgICBtaW4taGVpZ2h0OiAwO1xuICAgICAgbWF4LWhlaWdodDogMzcuNXJlbTsgfVxuICAgIGJvZHlbZGF0YS1zbHVnPVwiZmluZC1hLXBhcnRuZXJcIl0gc2VjdGlvbi5oZXJvLXNsaWRlIC5zbGlkZSB7XG4gICAgICBtaW4taGVpZ2h0OiAwO1xuICAgICAgbWF4LWhlaWdodDogMzcuNXJlbTsgfVxuICAgIGJvZHkucGFnZS10ZW1wbGF0ZS1wYWdlLWNvbnRhY3Qgc2VjdGlvbi5oZXJvLXNsaWRlIC5zbGlkZSB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2JnLWRvdHMucG5nKSwgbGluZWFyLWdyYWRpZW50KDgwZGVnLCAjNjgwMGQyIDYwJSwgIzMwMTY0YSAxMDAlKSAhaW1wb3J0YW50O1xuICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdCAhaW1wb3J0YW50O1xuICAgICAgYmFja2dyb3VuZC1zaXplOiBhdXRvIDEwMCUgIWltcG9ydGFudDtcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IDAgIWltcG9ydGFudDsgfVxuICAgIHNlY3Rpb24uaGVyby1zbGlkZSAuc2xpZGUgPiAucm93IGEuYnV0dG9uLCBzZWN0aW9uLmhlcm8tc2xpZGUgLnNsaWRlID4gLnJvdyAud3AtYmxvY2stYnV0dG9uIGEud3AtYmxvY2stYnV0dG9uX19saW5rLCAud3AtYmxvY2stYnV0dG9uIHNlY3Rpb24uaGVyby1zbGlkZSAuc2xpZGUgPiAucm93IGEud3AtYmxvY2stYnV0dG9uX19saW5rLCBzZWN0aW9uLmhlcm8tc2xpZGUgLnNsaWRlID4gLnJvdyBzZWN0aW9uLnByb21vLWxpc3RpbmcuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEsIHNlY3Rpb24ucHJvbW8tbGlzdGluZy5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgc2VjdGlvbi5oZXJvLXNsaWRlIC5zbGlkZSA+IC5yb3cgYSwgc2VjdGlvbi5oZXJvLXNsaWRlIC5zbGlkZSA+IC5yb3cgc2VjdGlvbi5wcm9tby1saXN0aW5nLTIuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEsIHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBzZWN0aW9uLmhlcm8tc2xpZGUgLnNsaWRlID4gLnJvdyBhIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZWZlZmU7XG4gICAgICBjb2xvcjogIzY4MDBkMjsgfVxuICAgICAgc2VjdGlvbi5oZXJvLXNsaWRlIC5zbGlkZSA+IC5yb3cgYS5idXR0b246aG92ZXIsIHNlY3Rpb24uaGVyby1zbGlkZSAuc2xpZGUgPiAucm93IC53cC1ibG9jay1idXR0b24gYS53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIsIC53cC1ibG9jay1idXR0b24gc2VjdGlvbi5oZXJvLXNsaWRlIC5zbGlkZSA+IC5yb3cgYS53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIsIHNlY3Rpb24uaGVyby1zbGlkZSAuc2xpZGUgPiAucm93IHNlY3Rpb24ucHJvbW8tbGlzdGluZy5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYTpob3Zlciwgc2VjdGlvbi5wcm9tby1saXN0aW5nLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBzZWN0aW9uLmhlcm8tc2xpZGUgLnNsaWRlID4gLnJvdyBhOmhvdmVyLCBzZWN0aW9uLmhlcm8tc2xpZGUgLnNsaWRlID4gLnJvdyBzZWN0aW9uLnByb21vLWxpc3RpbmctMi5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYTpob3Zlciwgc2VjdGlvbi5wcm9tby1saXN0aW5nLTIuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIHNlY3Rpb24uaGVyby1zbGlkZSAuc2xpZGUgPiAucm93IGE6aG92ZXIsIHNlY3Rpb24uaGVyby1zbGlkZSAuc2xpZGUgPiAucm93IGEuYnV0dG9uOmZvY3VzLCBzZWN0aW9uLmhlcm8tc2xpZGUgLnNsaWRlID4gLnJvdyAud3AtYmxvY2stYnV0dG9uIGEud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzLCAud3AtYmxvY2stYnV0dG9uIHNlY3Rpb24uaGVyby1zbGlkZSAuc2xpZGUgPiAucm93IGEud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzLCBzZWN0aW9uLmhlcm8tc2xpZGUgLnNsaWRlID4gLnJvdyBzZWN0aW9uLnByb21vLWxpc3RpbmcuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGE6Zm9jdXMsIHNlY3Rpb24ucHJvbW8tbGlzdGluZy5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgc2VjdGlvbi5oZXJvLXNsaWRlIC5zbGlkZSA+IC5yb3cgYTpmb2N1cywgc2VjdGlvbi5oZXJvLXNsaWRlIC5zbGlkZSA+IC5yb3cgc2VjdGlvbi5wcm9tby1saXN0aW5nLTIuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGE6Zm9jdXMsIHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBzZWN0aW9uLmhlcm8tc2xpZGUgLnNsaWRlID4gLnJvdyBhOmZvY3VzIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZiZTIwMDsgfVxuICAgIHNlY3Rpb24uaGVyby1zbGlkZSAuc2xpZGUgLmNvbnRlbnQge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgei1pbmRleDogMjtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgbWluLWhlaWdodDogNjB2dztcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDsgfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgc2VjdGlvbi5oZXJvLXNsaWRlIC5zbGlkZSAuY29udGVudCB7XG4gICAgICAgICAgbWluLWhlaWdodDogMDtcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgICBhbGlnbi1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdzsgfSB9XG4gICAgICBzZWN0aW9uLmhlcm8tc2xpZGUgLnNsaWRlIC5jb250ZW50IC50ZXh0IHtcbiAgICAgICAgZmxleDogMSAxIGF1dG87XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIHBhZGRpbmc6IDMuNzVyZW0gMCAzLjc1cmVtOyB9XG4gICAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAgICAgc2VjdGlvbi5oZXJvLXNsaWRlIC5zbGlkZSAuY29udGVudCAudGV4dCB7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDUwJTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDkuMzc1cmVtIDAgMy4xMjVyZW07IH0gfVxuICAgICAgICBzZWN0aW9uLmhlcm8tc2xpZGUgLnNsaWRlIC5jb250ZW50IC50ZXh0LmJsYWNrIHtcbiAgICAgICAgICBjb2xvcjogIzBhMGEwYTsgfVxuICAgICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAgIGJvZHlbZGF0YS1zbHVnPVwic29sdXRpb25zXCJdIHNlY3Rpb24uaGVyby1zbGlkZSAuc2xpZGUgLmNvbnRlbnQgLnRleHQge1xuICAgICAgICAgICAgbWF4LXdpZHRoOiA1MCU7IH0gfVxuICAgICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgICAgIGJvZHlbZGF0YS1zbHVnPVwic29sdXRpb25zXCJdIHNlY3Rpb24uaGVyby1zbGlkZSAuc2xpZGUgLmNvbnRlbnQgLnRleHQge1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogNy41cmVtOyB9IH1cbiAgICAgIHNlY3Rpb24uaGVyby1zbGlkZSAuc2xpZGUgLmNvbnRlbnQgLmZvcm0ge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICBmbGV4OiAxIDEgMTAwJTtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIG1hcmdpbjogMS44NzVyZW0gMCAyLjVyZW07IH1cbiAgICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgICBzZWN0aW9uLmhlcm8tc2xpZGUgLnNsaWRlIC5jb250ZW50IC5mb3JtIHtcbiAgICAgICAgICAgIG1hcmdpbjogOS4zNzVyZW0gMCAzLjEyNXJlbTsgfSB9XG4gICAgICAgIHNlY3Rpb24uaGVyby1zbGlkZSAuc2xpZGUgLmNvbnRlbnQgLmZvcm0uYWN0aXZhdGVkIHtcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgICAgc2VjdGlvbi5oZXJvLXNsaWRlIC5zbGlkZSAuY29udGVudCAuZm9ybSB7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDUwJTsgfSB9XG4gICAgICAgIHNlY3Rpb24uaGVyby1zbGlkZSAuc2xpZGUgLmNvbnRlbnQgLmZvcm0gZm9ybSB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgbWF4LXdpZHRoOiAxOC43NXJlbTsgfVxuICAgICAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgICAgICBzZWN0aW9uLmhlcm8tc2xpZGUgLnNsaWRlIC5jb250ZW50IC5mb3JtIGZvcm0ge1xuICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogMy4xMjVyZW07IH0gfVxuICAgICAgICAgIHNlY3Rpb24uaGVyby1zbGlkZSAuc2xpZGUgLmNvbnRlbnQgLmZvcm0gZm9ybSBsYWJlbCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgICBzZWN0aW9uLmhlcm8tc2xpZGUgLnNsaWRlIC5jb250ZW50ID4gaW1nLFxuICAgICAgc2VjdGlvbi5oZXJvLXNsaWRlIC5zbGlkZSAuY29udGVudCA+IHBpY3R1cmUge1xuICAgICAgICBtYXJnaW4tdG9wOiA3LjVyZW07XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIuNXJlbTtcbiAgICAgICAgbWF4LXdpZHRoOiAzNy41cmVtO1xuICAgICAgICB3aWR0aDogNDUlO1xuICAgICAgICBmbGV4OiAxIDAgMDtcbiAgICAgICAgYWxpZ24tc2VsZjogZmxleC1zdGFydDtcbiAgICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAgICAgICBzZWN0aW9uLmhlcm8tc2xpZGUgLnNsaWRlIC5jb250ZW50ID4gaW1nLFxuICAgICAgICAgIHNlY3Rpb24uaGVyby1zbGlkZSAuc2xpZGUgLmNvbnRlbnQgPiBwaWN0dXJlIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuICAgICAgc2VjdGlvbi5oZXJvLXNsaWRlIC5zbGlkZSAuY29udGVudCA+IGRpdi5lbWJlZC1jb250YWluZXIge1xuICAgICAgICBtYXJnaW4tdG9wOiA3LjVyZW07XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIuNXJlbTtcbiAgICAgICAgbWF4LXdpZHRoOiAzNy41cmVtO1xuICAgICAgICBmbGV4OiAxIDEgMTAwJTtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgYWxpZ24tc2VsZjogZmxleC1zdGFydDtcbiAgICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAgICAgc2VjdGlvbi5oZXJvLXNsaWRlIC5zbGlkZSAuY29udGVudCA+IGRpdi5lbWJlZC1jb250YWluZXIge1xuICAgICAgICAgICAgd2lkdGg6IDQ1JTtcbiAgICAgICAgICAgIGZsZXg6IDEgMCAwOyB9IH1cbiAgICAgICAgc2VjdGlvbi5oZXJvLXNsaWRlIC5zbGlkZSAuY29udGVudCA+IGRpdi5lbWJlZC1jb250YWluZXIgPiAuZW1iZWQtY29udGVudCB7XG4gICAgICAgICAgcGFkZGluZzogMS41cmVtIDIuNXJlbTtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgICAgICAgIHdpZHRoOiA3NSU7XG4gICAgICAgICAgbWFyZ2luOiBhdXRvO1xuICAgICAgICAgIGNvbG9yOiAjMDAwO1xuICAgICAgICAgIGJveC1zaGFkb3c6IDAgMC41cmVtIDFyZW0gIzAwMDAwMDRkO1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDAuMjVyZW07IH1cbiAgICAgICAgICBzZWN0aW9uLmhlcm8tc2xpZGUgLnNsaWRlIC5jb250ZW50ID4gZGl2LmVtYmVkLWNvbnRhaW5lciA+IC5lbWJlZC1jb250ZW50ID4gaDIge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgICAgICAgICAgc2VjdGlvbi5oZXJvLXNsaWRlIC5zbGlkZSAuY29udGVudCA+IGRpdi5lbWJlZC1jb250YWluZXIgPiAuZW1iZWQtY29udGVudCB7XG4gICAgICAgICAgICAgIHdpZHRoOiA5MCU7IH0gfVxuICAgICAgICAgIHNlY3Rpb24uaGVyby1zbGlkZSAuc2xpZGUgLmNvbnRlbnQgPiBkaXYuZW1iZWQtY29udGFpbmVyID4gLmVtYmVkLWNvbnRlbnQgPiAuZW1iZWQtaWZyYW1lIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgICAgICAgICBoZWlnaHQ6IDUzNXB4O1xuICAgICAgICAgICAgcGFkZGluZzogMXJlbTtcbiAgICAgICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBtYXJnaW46IGF1dG87IH1cbiAgICBzZWN0aW9uLmhlcm8tc2xpZGUgLnNsaWRlIC5iZy1pbWFnZSB7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcbiAgICAgIHBhZGRpbmctdG9wOiAzLjc1cmVtO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgIHNlY3Rpb24uaGVyby1zbGlkZSAuc2xpZGUgLmJnLWltYWdlIHtcbiAgICAgICAgICBtaW4taGVpZ2h0OiAzMS4yNXJlbTsgfSB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAgIHNlY3Rpb24uaGVyby1zbGlkZSAuc2xpZGUgLmJnLWltYWdlIHtcbiAgICAgICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICAgICAgICBoZWlnaHQ6IGNhbGMoMTAwdmggLSAxMDBweCk7XG4gICAgICAgICAgbWluLWhlaWdodDogMzcuNXJlbTtcbiAgICAgICAgICBmb250LXNpemU6IDEuMTI1cmVtO1xuICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cbiAgICAgICAgICBib2R5LmhvbWUgc2VjdGlvbi5oZXJvLXNsaWRlIC5zbGlkZSAuYmctaW1hZ2Uge1xuICAgICAgICAgICAgbWluLWhlaWdodDogMTAwdmg7IH0gfVxuICAgICAgc2VjdGlvbi5oZXJvLXNsaWRlIC5zbGlkZSAuYmctaW1hZ2U6bm90KC5ibGFjayk6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC40KTsgfVxuICAgICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgICAgIHNlY3Rpb24uaGVyby1zbGlkZSAuc2xpZGUgLmJnLWltYWdlOm5vdCguYmxhY2spOmJlZm9yZSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHJnYmEoMCwgMCwgMCwgMC42NSkgMCUsIHJnYmEoMCwgMCwgMCwgMCkgODAlKSwgbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgcmdiYSgwLCAwLCAwLCAwLjY1KSAwJSwgcmdiYSgwLCAwLCAwLCAwKSAyMDBweCk7IH0gfVxuICAgICAgc2VjdGlvbi5oZXJvLXNsaWRlIC5zbGlkZSAuYmctaW1hZ2UuYmxhY2s6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC40KTsgfVxuICAgICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgICAgIHNlY3Rpb24uaGVyby1zbGlkZSAuc2xpZGUgLmJnLWltYWdlLmJsYWNrOmJlZm9yZSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC42NSkgMCUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMCkgODAlKSwgbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjY1KSAwJSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwKSAyMDBweCk7IH0gfVxuICAgICAgc2VjdGlvbi5oZXJvLXNsaWRlIC5zbGlkZSAuYmctaW1hZ2Uubm8tb3ZlcmxheTpiZWZvcmUge1xuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDsgfVxuICAgICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgICAgIHNlY3Rpb24uaGVyby1zbGlkZSAuc2xpZGUgLmJnLWltYWdlLm5vLW92ZXJsYXk6YmVmb3JlIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sIHJnYmEoMCwgMCwgMCwgMC42NSkgMCUsIHJnYmEoMCwgMCwgMCwgMCkgMjAwcHgpOyB9IH1cbiAgICAgIGJvZHlbZGF0YS1zbHVnPVwic29sdXRpb25zXCJdIHNlY3Rpb24uaGVyby1zbGlkZSAuc2xpZGUgLmJnLWltYWdlIHtcbiAgICAgICAgYmFja2dyb3VuZDogbm9uZSAhaW1wb3J0YW50OyB9XG4gICAgICAgIGJvZHlbZGF0YS1zbHVnPVwic29sdXRpb25zXCJdIHNlY3Rpb24uaGVyby1zbGlkZSAuc2xpZGUgLmJnLWltYWdlOmJlZm9yZSB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgICAgICBib2R5W2RhdGEtc2x1Zz1cInNvbHV0aW9uc1wiXSBzZWN0aW9uLmhlcm8tc2xpZGUgLnNsaWRlIC5iZy1pbWFnZTphZnRlciB7XG4gICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgIGJhY2tncm91bmQ6ICM2ODAwZDIgdXJsKC4uL2ltYWdlcy9iZy1kb3RzLXNvbHV0aW9uc192Mi5wbmcpIG5vLXJlcGVhdDtcbiAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCUgYXV0bztcbiAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA1MCUgMTAwJTtcbiAgICAgICAgICB6LWluZGV4OiAxOyB9XG4gICAgICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgICAgIGJvZHlbZGF0YS1zbHVnPVwic29sdXRpb25zXCJdIHNlY3Rpb24uaGVyby1zbGlkZSAuc2xpZGUgLmJnLWltYWdlOmFmdGVyIHtcbiAgICAgICAgICAgICAgd2lkdGg6IDUwJTsgfSB9XG4gICAgICAgIGJvZHlbZGF0YS1zbHVnPVwic29sdXRpb25zXCJdIHNlY3Rpb24uaGVyby1zbGlkZSAuc2xpZGUgLmJnLWltYWdlIC50aXRsZSBoMSB7XG4gICAgICAgICAgcGFkZGluZy10b3A6IDA7IH1cbiAgICAgIGJvZHlbZGF0YS1zbHVnPVwiZmluZC1hLXBhcnRuZXJcIl0gc2VjdGlvbi5oZXJvLXNsaWRlIC5zbGlkZSAuYmctaW1hZ2Uge1xuICAgICAgICBiYWNrZ3JvdW5kOiBub25lICFpbXBvcnRhbnQ7IH1cbiAgICAgICAgYm9keVtkYXRhLXNsdWc9XCJmaW5kLWEtcGFydG5lclwiXSBzZWN0aW9uLmhlcm8tc2xpZGUgLnNsaWRlIC5iZy1pbWFnZTpiZWZvcmUge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAgICAgYm9keVtkYXRhLXNsdWc9XCJmaW5kLWEtcGFydG5lclwiXSBzZWN0aW9uLmhlcm8tc2xpZGUgLnNsaWRlIC5iZy1pbWFnZTphZnRlciB7XG4gICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgIGJhY2tncm91bmQ6ICNmMmYyZjIgdXJsKC4uL2ltYWdlcy9kb3RzLXBhcnRuZXJzLnBuZykgbm8tcmVwZWF0O1xuICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJSBhdXRvO1xuICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDUwJSAxMDAlO1xuICAgICAgICAgIHotaW5kZXg6IDE7IH1cbiAgICAgICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAgICAgYm9keVtkYXRhLXNsdWc9XCJmaW5kLWEtcGFydG5lclwiXSBzZWN0aW9uLmhlcm8tc2xpZGUgLnNsaWRlIC5iZy1pbWFnZTphZnRlciB7XG4gICAgICAgICAgICAgIHdpZHRoOiA1MCU7IH0gfVxuICAgICAgICBib2R5W2RhdGEtc2x1Zz1cImZpbmQtYS1wYXJ0bmVyXCJdIHNlY3Rpb24uaGVyby1zbGlkZSAuc2xpZGUgLmJnLWltYWdlIC50aXRsZSBoMSB7XG4gICAgICAgICAgcGFkZGluZy10b3A6IDA7IH1cbiAgICAgIC5wYXJhbGxheC1yZWFkeSBzZWN0aW9uLmhlcm8tc2xpZGUgLnNsaWRlIC5iZy1pbWFnZSB7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogYXV0byAxNDAlOyB9XG4gICAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgICAgLnBhcmFsbGF4LXJlYWR5IHNlY3Rpb24uaGVyby1zbGlkZSAuc2xpZGUgLmJnLWltYWdlIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogYXV0byAxMzAlOyB9IH1cbiAgICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgICAucGFyYWxsYXgtcmVhZHkgc2VjdGlvbi5oZXJvLXNsaWRlIC5zbGlkZSAuYmctaW1hZ2Uge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAxMTUlIGF1dG87IH0gfVxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4OC43NWVtKSB7XG4gICAgICAgICAgLnBhcmFsbGF4LXJlYWR5IHNlY3Rpb24uaGVyby1zbGlkZSAuc2xpZGUgLmJnLWltYWdlIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJSBhdXRvOyB9IH1cbiAgICAgIHNlY3Rpb24uaGVyby1zbGlkZSAuc2xpZGUgLmJnLWltYWdlIC5saW5rcyB7XG4gICAgICAgIG1hcmdpbi10b3A6IDEuNTYyNXJlbTsgfVxuICAgICAgc2VjdGlvbi5oZXJvLXNsaWRlIC5zbGlkZSAuYmctaW1hZ2UgLmxpbmsgLmN0YTpiZWZvcmUge1xuICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICM2ODAwZDIgMCUsICM5ZTI5ZmQgMTAwJSk7IH1cbiAgICAgIHNlY3Rpb24uaGVyby1zbGlkZSAuc2xpZGUgLmJnLWltYWdlIC5saW5rIC5jdGE6YWZ0ZXIge1xuICAgICAgICBib3JkZXItbGVmdC1jb2xvcjogI2ZiZTIwMDsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAgIHNlY3Rpb24uaGVyby1zbGlkZSAuc2xpZGUgLmZ1bGwtaGVpZ2h0IHtcbiAgICAgICAgbWluLWhlaWdodDogMTAwdmg7IH0gfVxuICAgIHNlY3Rpb24uaGVyby1zbGlkZSAuc2xpZGUgLnRpdGxlIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgIHNlY3Rpb24uaGVyby1zbGlkZSAuc2xpZGUgLnRpdGxlIHtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICAgICAgc2VjdGlvbi5oZXJvLXNsaWRlIC5zbGlkZSAudGl0bGUsIHNlY3Rpb24uaGVyby1zbGlkZSAuc2xpZGUgLnRpdGxlOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAgIHNlY3Rpb24uaGVyby1zbGlkZSAuc2xpZGUgLnRpdGxlOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICBmbG9hdDogcmlnaHQ7IH1cbiAgICAgIHNlY3Rpb24uaGVyby1zbGlkZSAuc2xpZGUgLnRpdGxlID4gcCB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDAuNjI1cmVtOyB9XG4gICAgICBzZWN0aW9uLmhlcm8tc2xpZGUgLnNsaWRlIC50aXRsZSBoMSB7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxLjI1cmVtO1xuICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICBtYXgtd2lkdGg6IDQyLjVyZW07IH1cbiAgICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgICBzZWN0aW9uLmhlcm8tc2xpZGUgLnNsaWRlIC50aXRsZSBoMTpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICBmb250LXNpemU6IDMuNXJlbTsgfSB9XG4gICAgICAgIC5ob21lIHNlY3Rpb24uaGVyby1zbGlkZSAuc2xpZGUgLnRpdGxlIGgxIHtcbiAgICAgICAgICBmb250LXNpemU6IDEuODc1cmVtOyB9XG4gICAgICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgICAgIC5ob21lIHNlY3Rpb24uaGVyby1zbGlkZSAuc2xpZGUgLnRpdGxlIGgxIHtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAzLjEyNXJlbTsgfSB9XG4gICAgICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgICAgIC5ob21lIHNlY3Rpb24uaGVyby1zbGlkZSAuc2xpZGUgLnRpdGxlIGgxIHtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiA0LjM3NXJlbTtcbiAgICAgICAgICAgICAgcGFkZGluZy10b3A6IDkuMzc1cmVtOyB9IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgIHNlY3Rpb24uaGVyby1zbGlkZSAuc2xpZGUgLnRpdGxlLmJpZy0xIGgxIHtcbiAgICAgICAgICBmb250LXNpemU6IDcuNXJlbTsgfSB9XG4gICAgc2VjdGlvbi5oZXJvLXNsaWRlIC5zbGlkZSAuaW50cm8ge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTtcbiAgICAgIG1heC13aWR0aDogMzMuNzVyZW07XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMS4yNXJlbTsgfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgc2VjdGlvbi5oZXJvLXNsaWRlIC5zbGlkZSAuaW50cm8ge1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gICAgICBzZWN0aW9uLmhlcm8tc2xpZGUgLnNsaWRlIC5pbnRybywgc2VjdGlvbi5oZXJvLXNsaWRlIC5zbGlkZSAuaW50cm86bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBjbGVhcjogbm9uZTsgfVxuICAgICAgc2VjdGlvbi5oZXJvLXNsaWRlIC5zbGlkZSAuaW50cm86bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgIGZsb2F0OiByaWdodDsgfVxuICAgICAgc2VjdGlvbi5oZXJvLXNsaWRlIC5zbGlkZSAuaW50cm8gaW1nIHtcbiAgICAgICAgbWF4LXdpZHRoOiA5LjM3NXJlbTtcbiAgICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgICBzZWN0aW9uLmhlcm8tc2xpZGUgLnNsaWRlIC5saW5rIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTsgfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgc2VjdGlvbi5oZXJvLXNsaWRlIC5zbGlkZSAubGluayB7XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtOyB9IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgIC5ob21lIHNlY3Rpb24uaGVyby1zbGlkZSAuc2xpZGUgLmxpbmsge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMS4zNzVyZW07IH0gfVxuICAgICAgc2VjdGlvbi5oZXJvLXNsaWRlIC5zbGlkZSAubGluayAuY3RhIHtcbiAgICAgICAgY29sb3I6ICNmZWZlZmU7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgcGFkZGluZzogMC41cmVtIDMuMTI1cmVtIDAuNXJlbSAwO1xuICAgICAgICBtYXJnaW4tdG9wOiAxLjI1cmVtO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxLjg3NXJlbTtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlLWluLW91dDsgfVxuICAgICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAgIGJvZHk6bm90KC5ob21lKSBzZWN0aW9uLmhlcm8tc2xpZGUgLnNsaWRlIC5saW5rIC5jdGEge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMDsgfSB9XG4gICAgICAgIHNlY3Rpb24uaGVyby1zbGlkZSAuc2xpZGUgLmxpbmsgLmN0YTpiZWZvcmUge1xuICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2UtaW4tb3V0O1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICB3aWR0aDogMi41cmVtO1xuICAgICAgICAgIGhlaWdodDogMi41cmVtO1xuICAgICAgICAgIGJhY2tncm91bmQ6ICNmZWZlZmU7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlOyB9XG4gICAgICAgIHNlY3Rpb24uaGVyby1zbGlkZSAuc2xpZGUgLmxpbmsgLmN0YTphZnRlciB7XG4gICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZS1pbi1vdXQ7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIHJpZ2h0OiAwLjQzNzVyZW07XG4gICAgICAgICAgdG9wOiAwLjg3NXJlbTtcbiAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIGJvcmRlcjogMC4zNzVyZW0gc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgYm9yZGVyLWxlZnQtY29sb3I6ICM2ODAwZDI7XG4gICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZVgoMS44KTsgfVxuICAgICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAgIC5ob21lIHNlY3Rpb24uaGVyby1zbGlkZSAuc2xpZGUgLmxpbmsgLmN0YSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAwLjc1cmVtIDYuMjVyZW0gMC43NXJlbSAwOyB9XG4gICAgICAgICAgICAuaG9tZSBzZWN0aW9uLmhlcm8tc2xpZGUgLnNsaWRlIC5saW5rIC5jdGE6YmVmb3JlIHtcbiAgICAgICAgICAgICAgcmlnaHQ6IDAuNjI1cmVtO1xuICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgIHdpZHRoOiA0cmVtO1xuICAgICAgICAgICAgICBoZWlnaHQ6IDRyZW07IH1cbiAgICAgICAgICAgIC5ob21lIHNlY3Rpb24uaGVyby1zbGlkZSAuc2xpZGUgLmxpbmsgLmN0YTphZnRlciB7XG4gICAgICAgICAgICAgIGJvcmRlci13aWR0aDogMC42MjVyZW07XG4gICAgICAgICAgICAgIHJpZ2h0OiAxLjI1cmVtO1xuICAgICAgICAgICAgICB0b3A6IDEuMzc1cmVtOyB9IH1cbiAgICAgICAgc2VjdGlvbi5oZXJvLXNsaWRlIC5zbGlkZSAubGluayAuY3RhOmhvdmVyIHtcbiAgICAgICAgICBjb2xvcjogI2ZiZTIwMDsgfVxuICAgICAgICAgIHNlY3Rpb24uaGVyby1zbGlkZSAuc2xpZGUgLmxpbmsgLmN0YTpob3ZlcjpiZWZvcmUge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogI2ZiZTIwMDsgfVxuICAgICAgICAgIHNlY3Rpb24uaGVyby1zbGlkZSAuc2xpZGUgLmxpbmsgLmN0YTpob3ZlcjphZnRlciB7XG4gICAgICAgICAgICBib3JkZXItbGVmdC1jb2xvcjogIzY4MDBkMjsgfVxuICBzZWN0aW9uLmhlcm8tc2xpZGUgLmhlcm8tYmFubmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNCk7XG4gICAgcGFkZGluZzogMS44NzVyZW0gMDtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICBzZWN0aW9uLmhlcm8tc2xpZGUgLmhlcm8tYmFubmVyIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBib3R0b206IDA7XG4gICAgICAgIGxlZnQ6IDA7IH0gfVxuICAgIHNlY3Rpb24uaGVyby1zbGlkZSAuaGVyby1iYW5uZXIgLnJvdyB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgc2VjdGlvbi5oZXJvLXNsaWRlIC5oZXJvLWJhbm5lciAucm93IHtcbiAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDsgfSB9XG4gICAgc2VjdGlvbi5oZXJvLXNsaWRlIC5oZXJvLWJhbm5lciAuYmFubmVyLWl0ZW0ge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgcGFkZGluZy1yaWdodDogMS4yNXJlbTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDEuMjVyZW07IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgIHNlY3Rpb24uaGVyby1zbGlkZSAuaGVyby1iYW5uZXIgLmJhbm5lci1pdGVtIHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDEuODc1cmVtOyB9IH1cbiAgICAgIHNlY3Rpb24uaGVyby1zbGlkZSAuaGVyby1iYW5uZXIgLmJhbm5lci1pdGVtIHN2ZyB7XG4gICAgICAgIHdpZHRoOiAyLjI1cmVtOyB9XG4gICAgICBzZWN0aW9uLmhlcm8tc2xpZGUgLmhlcm8tYmFubmVyIC5iYW5uZXItaXRlbTpsYXN0LW9mLXR5cGUge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gICAgICBzZWN0aW9uLmhlcm8tc2xpZGUgLmhlcm8tYmFubmVyIC5iYW5uZXItaXRlbSAuYmFubmVyLXRleHQge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICAgICAgc2VjdGlvbi5oZXJvLXNsaWRlIC5oZXJvLWJhbm5lciAuYmFubmVyLWl0ZW0gLm1hcC1waW4ge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIGhlaWdodDogMi4yNXJlbSAhaW1wb3J0YW50OyB9XG5cbnNlY3Rpb24uaW50cm8ge1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG4gIHNlY3Rpb24uaW50cm8gLnJvdyB7XG4gICAgbWF4LXdpZHRoOiBub25lO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXgtd2lkdGg6IG5vbmU7IH1cbiAgICBzZWN0aW9uLmludHJvIC5yb3c6OmJlZm9yZSwgc2VjdGlvbi5pbnRybyAucm93OjphZnRlciB7XG4gICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgIGNvbnRlbnQ6ICcgJztcbiAgICAgIGZsZXgtYmFzaXM6IDA7XG4gICAgICBvcmRlcjogMTsgfVxuICAgIHNlY3Rpb24uaW50cm8gLnJvdzo6YWZ0ZXIge1xuICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgc2VjdGlvbi5pbnRybyAucm93IHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyB9XG4gICAgICAgIHNlY3Rpb24uaW50cm8gLnJvdy5pbWFnZSB7XG4gICAgICAgICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7IH1cbiAgICAgICAgc2VjdGlvbi5pbnRybyAucm93LmltYWdlIC5yaWdodCB7XG4gICAgICAgICAgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcbiAgICAgICAgICBtYXgtd2lkdGg6IDQyLjVyZW07IH1cbiAgICAgICAgICBzZWN0aW9uLmludHJvIC5yb3cuaW1hZ2UgLnJpZ2h0IC5pbWFnZSB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTsgfVxuICAgICAgICBzZWN0aW9uLmludHJvIC5yb3c6YmVmb3JlLCBzZWN0aW9uLmludHJvIC5yb3c6YWZ0ZXIge1xuICAgICAgICAgIGNvbnRlbnQ6IG5vbmUgIWltcG9ydGFudDsgfSB9XG4gIHNlY3Rpb24uaW50cm8gLmNvbnRlbnQge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07XG4gICAgcGFkZGluZy1ib3R0b206IDAuNzVyZW07XG4gICAgcGFkZGluZy10b3A6IDAuNzVyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgc2VjdGlvbi5pbnRybyAuY29udGVudCB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICAgIHNlY3Rpb24uaW50cm8gLmNvbnRlbnQsIHNlY3Rpb24uaW50cm8gLmNvbnRlbnQ6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgc2VjdGlvbi5pbnRybyAuY29udGVudDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgIGZsb2F0OiByaWdodDsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICBzZWN0aW9uLmludHJvIC5jb250ZW50IHtcbiAgICAgICAgd2lkdGg6IDQxLjY2NjY3JTtcbiAgICAgICAgbWF4LXdpZHRoOiAzMy43NXJlbTtcbiAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgICAgICBwYWRkaW5nLXRvcDogMDsgfSB9XG4gICAgc2VjdGlvbi5pbnRybyAuY29udGVudCAuYnV0dG9uLCBzZWN0aW9uLmludHJvIC5jb250ZW50IC53cC1ibG9jay1idXR0b24gLndwLWJsb2NrLWJ1dHRvbl9fbGluaywgLndwLWJsb2NrLWJ1dHRvbiBzZWN0aW9uLmludHJvIC5jb250ZW50IC53cC1ibG9jay1idXR0b25fX2xpbmssIHNlY3Rpb24uaW50cm8gLmNvbnRlbnQgc2VjdGlvbi5wcm9tby1saXN0aW5nLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLCBzZWN0aW9uLnByb21vLWxpc3RpbmcuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIHNlY3Rpb24uaW50cm8gLmNvbnRlbnQgYSwgc2VjdGlvbi5pbnRybyAuY29udGVudCBzZWN0aW9uLnByb21vLWxpc3RpbmctMi5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYSwgc2VjdGlvbi5wcm9tby1saXN0aW5nLTIuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIHNlY3Rpb24uaW50cm8gLmNvbnRlbnQgYSB7XG4gICAgICBtYXJnaW4tdG9wOiAxLjU2MjVyZW07IH1cbiAgc2VjdGlvbi5pbnRybyBoMSxcbiAgc2VjdGlvbi5pbnRybyBoMiB7XG4gICAgbWFyZ2luLWJvdHRvbTogMS44NzVyZW07IH1cbiAgICBzZWN0aW9uLmludHJvIGgxOmxhc3QtY2hpbGQsXG4gICAgc2VjdGlvbi5pbnRybyBoMjpsYXN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgc2VjdGlvbi5pbnRybyBoMyB7XG4gICAgbWFyZ2luLXRvcDogMS44NzVyZW07IH1cbiAgc2VjdGlvbi5pbnRybyAucmlnaHQge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgc2VjdGlvbi5pbnRybyAucmlnaHQge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgICBzZWN0aW9uLmludHJvIC5yaWdodCwgc2VjdGlvbi5pbnRybyAucmlnaHQ6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgc2VjdGlvbi5pbnRybyAucmlnaHQ6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICBmbG9hdDogcmlnaHQ7IH1cbiAgICBzZWN0aW9uLmludHJvIC5yaWdodCBmb3JtIHtcbiAgICAgIHBhZGRpbmctdG9wOiAxLjYyNXJlbTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICBzZWN0aW9uLmludHJvIC5yaWdodCB7XG4gICAgICAgIHdpZHRoOiA0OCU7IH0gfVxuICAgIHNlY3Rpb24uaW50cm8gLnJpZ2h0IC5yZXNwb25zaXZlLWVtYmVkIHtcbiAgICAgIG1heC13aWR0aDogNDMuNzVyZW07IH1cbiAgICBzZWN0aW9uLmludHJvIC5yaWdodCAuZm9ybS1yb3cge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDsgfVxuICAgIHNlY3Rpb24uaW50cm8gLnJpZ2h0IC5zZWxlY3QyIHtcbiAgICAgIHdpZHRoOiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgICBmbGV4OiAxIDEgYXV0bztcbiAgICAgIG1heC13aWR0aDogNzUlOyB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICBzZWN0aW9uLmludHJvIC5yaWdodCAuc2VsZWN0MiB7XG4gICAgICAgICAgbWF4LXdpZHRoOiA4NSU7IH0gfVxuICAgIHNlY3Rpb24uaW50cm8gLnJpZ2h0IC5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSB7XG4gICAgICBib3JkZXItcmFkaXVzOiAwOyB9XG4gICAgc2VjdGlvbi5pbnRybyAucmlnaHQgLmltYWdlIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IC0xLjg3NXJlbTsgfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgc2VjdGlvbi5pbnRybyAucmlnaHQgLmltYWdlIHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAtNXJlbTtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAtNXJlbTsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIHNlY3Rpb24uaW50cm8gLnJpZ2h0IC5zZWxlY3QyLWNvbnRhaW5lciAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSB7XG4gICAgICAgIGhlaWdodDogYXV0bzsgfVxuICAgICAgICBzZWN0aW9uLmludHJvIC5yaWdodCAuc2VsZWN0Mi1jb250YWluZXIgLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUgLnNlbGVjdDItc2VsZWN0aW9uX19hcnJvdyB7XG4gICAgICAgICAgd2lkdGg6IDIuNXJlbTtcbiAgICAgICAgICB0b3A6IDAuMjVyZW07IH1cbiAgICAgICAgICBzZWN0aW9uLmludHJvIC5yaWdodCAuc2VsZWN0Mi1jb250YWluZXIgLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUgLnNlbGVjdDItc2VsZWN0aW9uX19hcnJvdyBiOmFmdGVyIHtcbiAgICAgICAgICAgIHdpZHRoOiAwLjYyNXJlbTtcbiAgICAgICAgICAgIGhlaWdodDogMC42MjVyZW07XG4gICAgICAgICAgICBib3JkZXItd2lkdGg6IDJweDsgfVxuICAgICAgICAgIGJvZHkuaG9tZSBzZWN0aW9uLmludHJvIC5yaWdodCAuc2VsZWN0Mi1jb250YWluZXIgLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUgLnNlbGVjdDItc2VsZWN0aW9uX19hcnJvdyB7XG4gICAgICAgICAgICB0b3A6IDAuNDM3NXJlbTsgfVxuICAgICAgICAgICAgYm9keS5ob21lIHNlY3Rpb24uaW50cm8gLnJpZ2h0IC5zZWxlY3QyLWNvbnRhaW5lciAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX2Fycm93IGI6YWZ0ZXIge1xuICAgICAgICAgICAgICB3aWR0aDogMS4yNXJlbTtcbiAgICAgICAgICAgICAgaGVpZ2h0OiAxLjI1cmVtOyB9IH1cbiAgICBzZWN0aW9uLmludHJvIC5yaWdodCAuc2VsZWN0Mi1zZWxlY3Rpb25fX3JlbmRlcmVkIHtcbiAgICAgIGNvbG9yOiAjNjgwMGQyO1xuICAgICAgZm9udC1zaXplOiAxLjI1cmVtO1xuICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgIHBhZGRpbmc6IDAuMzEyNXJlbSAwOyB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICBzZWN0aW9uLmludHJvIC5yaWdodCAuc2VsZWN0Mi1zZWxlY3Rpb25fX3JlbmRlcmVkIHtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgICAgICAgIGZvbnQtc2l6ZTogMS41NjI1cmVtOyB9IH1cbiAgICAgIGJvZHkuaG9tZSBzZWN0aW9uLmludHJvIC5yaWdodCAuc2VsZWN0Mi1zZWxlY3Rpb25fX3JlbmRlcmVkIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjg3NXJlbTsgfVxuICAgICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAgIGJvZHkuaG9tZSBzZWN0aW9uLmludHJvIC5yaWdodCAuc2VsZWN0Mi1zZWxlY3Rpb25fX3JlbmRlcmVkIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMi4yNXJlbTsgfSB9XG4gICAgICBzZWN0aW9uLmludHJvIC5yaWdodCAuc2VsZWN0Mi1zZWxlY3Rpb25fX3JlbmRlcmVkID4gc3BhbiB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDMuNzVyZW07IH1cbiAgICBzZWN0aW9uLmludHJvIC5yaWdodCBmb3JtIC5idXR0b24sIHNlY3Rpb24uaW50cm8gLnJpZ2h0IGZvcm0gLndwLWJsb2NrLWJ1dHRvbiAud3AtYmxvY2stYnV0dG9uX19saW5rLCAud3AtYmxvY2stYnV0dG9uIHNlY3Rpb24uaW50cm8gLnJpZ2h0IGZvcm0gLndwLWJsb2NrLWJ1dHRvbl9fbGluaywgc2VjdGlvbi5pbnRybyAucmlnaHQgZm9ybSBzZWN0aW9uLnByb21vLWxpc3RpbmcuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEsIHNlY3Rpb24ucHJvbW8tbGlzdGluZy5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgc2VjdGlvbi5pbnRybyAucmlnaHQgZm9ybSBhLCBzZWN0aW9uLmludHJvIC5yaWdodCBmb3JtIHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLCBzZWN0aW9uLnByb21vLWxpc3RpbmctMi5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgc2VjdGlvbi5pbnRybyAucmlnaHQgZm9ybSBhIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwLjYyNXJlbTtcbiAgICAgIG1heC13aWR0aDogMjAlOyB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICBib2R5LmhvbWUgc2VjdGlvbi5pbnRybyAucmlnaHQgZm9ybSAuYnV0dG9uLCBib2R5LmhvbWUgc2VjdGlvbi5pbnRybyAucmlnaHQgZm9ybSAud3AtYmxvY2stYnV0dG9uIC53cC1ibG9jay1idXR0b25fX2xpbmssIC53cC1ibG9jay1idXR0b24gYm9keS5ob21lIHNlY3Rpb24uaW50cm8gLnJpZ2h0IGZvcm0gLndwLWJsb2NrLWJ1dHRvbl9fbGluaywgYm9keS5ob21lIHNlY3Rpb24uaW50cm8gLnJpZ2h0IGZvcm0gc2VjdGlvbi5wcm9tby1saXN0aW5nLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLCBzZWN0aW9uLnByb21vLWxpc3RpbmcuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGJvZHkuaG9tZSBzZWN0aW9uLmludHJvIC5yaWdodCBmb3JtIGEsIGJvZHkuaG9tZSBzZWN0aW9uLmludHJvIC5yaWdodCBmb3JtIHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLCBzZWN0aW9uLnByb21vLWxpc3RpbmctMi5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYm9keS5ob21lIHNlY3Rpb24uaW50cm8gLnJpZ2h0IGZvcm0gYSB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogMC42MjVyZW07XG4gICAgICAgICAgcGFkZGluZy10b3A6IDAuNzVyZW07XG4gICAgICAgICAgcGFkZGluZy1ib3R0b206IDAuNzVyZW07IH0gfVxuICAgIHNlY3Rpb24uaW50cm8gLnJpZ2h0LnN0eWxlLWljb24ge1xuICAgICAgYWxpZ24tc2VsZjogZmxleC1zdGFydDsgfVxuICAgICAgc2VjdGlvbi5pbnRybyAucmlnaHQuc3R5bGUtaWNvbiAud3JhcHBlciB7XG4gICAgICAgIG1heC13aWR0aDogMTguNzVyZW07IH1cbiAgICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgICBzZWN0aW9uLmludHJvIC5yaWdodC5zdHlsZS1pY29uIC53cmFwcGVyIHtcbiAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvOyB9IH1cbiAgICAgIHNlY3Rpb24uaW50cm8gLnJpZ2h0LnN0eWxlLWljb24gLmltYWdlIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjY2FjYWNhO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMC42MjVyZW07IH1cbiAgICAgICAgc2VjdGlvbi5pbnRybyAucmlnaHQuc3R5bGUtaWNvbiAuaW1hZ2UgaW1nIHtcbiAgICAgICAgICB3aWR0aDogOS4zNzVyZW07IH1cbiAgICAgIHNlY3Rpb24uaW50cm8gLnJpZ2h0LnN0eWxlLWljb24gLnN0cmFwbGluZSB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAwLjYyNXJlbTtcbiAgICAgICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgICAgICAgbWF4LXdpZHRoOiAxMS4yNXJlbTsgfVxuICAgIHNlY3Rpb24uaW50cm8gLnJpZ2h0LnN0eWxlLWp1bXBfbWVudSBoMiB7XG4gICAgICBmb250LXNpemU6IDEuMDYyNXJlbTtcbiAgICAgIG1heC13aWR0aDogMzIuNXJlbTsgfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgc2VjdGlvbi5pbnRybyAucmlnaHQuc3R5bGUtanVtcF9tZW51IGgyIHtcbiAgICAgICAgICBmb250LXNpemU6IDEuMjVyZW07IH0gfVxuICBib2R5LnNpbmdsZS1jYXNlX3N0dWR5IHNlY3Rpb24uaW50cm8gLnJvdy5pbWFnZSAucmlnaHQge1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gICAgYm9keS5zaW5nbGUtY2FzZV9zdHVkeSBzZWN0aW9uLmludHJvIC5yb3cuaW1hZ2UgLnJpZ2h0IC5pbWFnZSB7XG4gICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIG1heC13aWR0aDogMTIuNXJlbTsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICBib2R5LmhvbWUgc2VjdGlvbi5pbnRybyAucm93IC5jb250ZW50IHtcbiAgICB3aWR0aDogNzUlO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICBib2R5LmhvbWUgc2VjdGlvbi5pbnRybyAucm93IC5jb250ZW50IHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICBib2R5LmhvbWUgc2VjdGlvbi5pbnRybyAucm93IC5jb250ZW50LCBib2R5LmhvbWUgc2VjdGlvbi5pbnRybyAucm93IC5jb250ZW50Omxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBjbGVhcjogbm9uZTsgfVxuICAgIGJvZHkuaG9tZSBzZWN0aW9uLmludHJvIC5yb3cgLmNvbnRlbnQ6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICBmbG9hdDogcmlnaHQ7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICBib2R5LmhvbWUgc2VjdGlvbi5pbnRybyAucm93IC5jb250ZW50IHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgYm9keS5ob21lIHNlY3Rpb24uaW50cm8gLnJvdyAuY29udGVudCB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgYm9keS5ob21lIHNlY3Rpb24uaW50cm8gLnJvdyAuY29udGVudCwgYm9keS5ob21lIHNlY3Rpb24uaW50cm8gLnJvdyAuY29udGVudDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICBib2R5LmhvbWUgc2VjdGlvbi5pbnRybyAucm93IC5jb250ZW50Omxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgZmxvYXQ6IHJpZ2h0OyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgYm9keVtkYXRhLXNsdWc9XCJzb2x1dGlvbnNcIl0gc2VjdGlvbi5pbnRybyAucm93IC5jb250ZW50IHtcbiAgICB3aWR0aDogNzUlO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICBib2R5W2RhdGEtc2x1Zz1cInNvbHV0aW9uc1wiXSBzZWN0aW9uLmludHJvIC5yb3cgLmNvbnRlbnQge1xuICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIGJvZHlbZGF0YS1zbHVnPVwic29sdXRpb25zXCJdIHNlY3Rpb24uaW50cm8gLnJvdyAuY29udGVudCwgYm9keVtkYXRhLXNsdWc9XCJzb2x1dGlvbnNcIl0gc2VjdGlvbi5pbnRybyAucm93IC5jb250ZW50Omxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBjbGVhcjogbm9uZTsgfVxuICAgIGJvZHlbZGF0YS1zbHVnPVwic29sdXRpb25zXCJdIHNlY3Rpb24uaW50cm8gLnJvdyAuY29udGVudDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgIGZsb2F0OiByaWdodDsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIGJvZHlbZGF0YS1zbHVnPVwic29sdXRpb25zXCJdIHNlY3Rpb24uaW50cm8gLnJvdyAuY29udGVudCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIGJvZHlbZGF0YS1zbHVnPVwic29sdXRpb25zXCJdIHNlY3Rpb24uaW50cm8gLnJvdyAuY29udGVudCB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgYm9keVtkYXRhLXNsdWc9XCJzb2x1dGlvbnNcIl0gc2VjdGlvbi5pbnRybyAucm93IC5jb250ZW50LCBib2R5W2RhdGEtc2x1Zz1cInNvbHV0aW9uc1wiXSBzZWN0aW9uLmludHJvIC5yb3cgLmNvbnRlbnQ6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgYm9keVtkYXRhLXNsdWc9XCJzb2x1dGlvbnNcIl0gc2VjdGlvbi5pbnRybyAucm93IC5jb250ZW50Omxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgZmxvYXQ6IHJpZ2h0OyB9IH1cblxuc2VjdGlvbi5jb2x1bW5lZC10ZXh0IHtcbiAgb3ZlcmZsb3cteDogaGlkZGVuOyB9XG4gIHNlY3Rpb24uY29sdW1uZWQtdGV4dCAucm93IHtcbiAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvOyB9XG4gICAgc2VjdGlvbi5jb2x1bW5lZC10ZXh0IC5yb3c6OmJlZm9yZSwgc2VjdGlvbi5jb2x1bW5lZC10ZXh0IC5yb3c6OmFmdGVyIHtcbiAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgICAgY29udGVudDogJyAnO1xuICAgICAgZmxleC1iYXNpczogMDtcbiAgICAgIG9yZGVyOiAxOyB9XG4gICAgc2VjdGlvbi5jb2x1bW5lZC10ZXh0IC5yb3c6OmFmdGVyIHtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gIHNlY3Rpb24uY29sdW1uZWQtdGV4dCAuaW50cm8ge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgc2VjdGlvbi5jb2x1bW5lZC10ZXh0IC5pbnRybyB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICAgIHNlY3Rpb24uY29sdW1uZWQtdGV4dCAuaW50cm8sIHNlY3Rpb24uY29sdW1uZWQtdGV4dCAuaW50cm86bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgc2VjdGlvbi5jb2x1bW5lZC10ZXh0IC5pbnRybzpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgIGZsb2F0OiByaWdodDsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICBzZWN0aW9uLmNvbHVtbmVkLXRleHQgLmludHJvIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMS44NzVyZW07XG4gICAgICAgIHdpZHRoOiA0MS42NjY2NyU7IH0gfVxuICAgIHNlY3Rpb24uY29sdW1uZWQtdGV4dCAuaW50cm8gaDIge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMS44NzVyZW07IH1cbiAgc2VjdGlvbi5jb2x1bW5lZC10ZXh0IC5jb2x1bW4sIHNlY3Rpb24uY29sdW1uZWQtdGV4dCAuY29sdW1ucyB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICBzZWN0aW9uLmNvbHVtbmVkLXRleHQgLmNvbHVtbiwgc2VjdGlvbi5jb2x1bW5lZC10ZXh0IC5jb2x1bW5zIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gICAgc2VjdGlvbi5jb2x1bW5lZC10ZXh0IC5jb2x1bW4sIHNlY3Rpb24uY29sdW1uZWQtdGV4dCAuY29sdW1ucywgc2VjdGlvbi5jb2x1bW5lZC10ZXh0IC5jb2x1bW46bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSwgc2VjdGlvbi5jb2x1bW5lZC10ZXh0IC5jb2x1bW5zOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBjbGVhcjogbm9uZTsgfVxuICAgIHNlY3Rpb24uY29sdW1uZWQtdGV4dCAuY29sdW1uOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCksIHNlY3Rpb24uY29sdW1uZWQtdGV4dCAuY29sdW1uczpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgIGZsb2F0OiByaWdodDsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICBzZWN0aW9uLmNvbHVtbmVkLXRleHQgLmNvbHVtbiwgc2VjdGlvbi5jb2x1bW5lZC10ZXh0IC5jb2x1bW5zIHtcbiAgICAgICAgd2lkdGg6IDUwJTsgfSB9XG4gICAgc2VjdGlvbi5jb2x1bW5lZC10ZXh0IC5jb2x1bW4gaDMsIHNlY3Rpb24uY29sdW1uZWQtdGV4dCAuY29sdW1ucyBoMyB7XG4gICAgICBjb2xvcjogIzY4MDBkMjtcbiAgICAgIGZvbnQtc2l6ZTogMTAwJTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwLjkzNzVyZW07IH1cbiAgICBzZWN0aW9uLmNvbHVtbmVkLXRleHQgLmNvbHVtbi5pbWFnZSA+IGltZywgc2VjdGlvbi5jb2x1bW5lZC10ZXh0IC5pbWFnZS5jb2x1bW5zID4gaW1nLFxuICAgIHNlY3Rpb24uY29sdW1uZWQtdGV4dCAuY29sdW1uLmltYWdlID4gcGljdHVyZSxcbiAgICBzZWN0aW9uLmNvbHVtbmVkLXRleHQgLmltYWdlLmNvbHVtbnMgPiBwaWN0dXJlIHtcbiAgICAgIG1hcmdpbjogMCBhdXRvIDEuMjVyZW07XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgc2VjdGlvbi5jb2x1bW5lZC10ZXh0IC5jb2x1bW4uaW1hZ2UgPiBkaXYsIHNlY3Rpb24uY29sdW1uZWQtdGV4dCAuaW1hZ2UuY29sdW1ucyA+IGRpdiB7XG4gICAgICBtYXJnaW46IDAgYXV0bzsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAgIHNlY3Rpb24uY29sdW1uZWQtdGV4dCAuY29sdW1uLnRleHQ6Zmlyc3QtY2hpbGQsIHNlY3Rpb24uY29sdW1uZWQtdGV4dCAudGV4dC5jb2x1bW5zOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMy4xMjVyZW07IH1cbiAgICAgIHNlY3Rpb24uY29sdW1uZWQtdGV4dCAuY29sdW1uLnRleHQ6bGFzdC1jaGlsZCwgc2VjdGlvbi5jb2x1bW5lZC10ZXh0IC50ZXh0LmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMy4xMjVyZW07IH0gfVxuICAgIHNlY3Rpb24uY29sdW1uZWQtdGV4dCAuY29sdW1uLnRleHQgaW1nLCBzZWN0aW9uLmNvbHVtbmVkLXRleHQgLnRleHQuY29sdW1ucyBpbWcge1xuICAgICAgbWFyZ2luLXRvcDogMS4yNXJlbTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDEuMjVyZW07IH1cbiAgICBzZWN0aW9uLmNvbHVtbmVkLXRleHQgLmNvbHVtbi50ZXh0IC5idXR0b24sIHNlY3Rpb24uY29sdW1uZWQtdGV4dCAudGV4dC5jb2x1bW5zIC5idXR0b24sIHNlY3Rpb24uY29sdW1uZWQtdGV4dCAuY29sdW1uLnRleHQgLndwLWJsb2NrLWJ1dHRvbiAud3AtYmxvY2stYnV0dG9uX19saW5rLCAud3AtYmxvY2stYnV0dG9uIHNlY3Rpb24uY29sdW1uZWQtdGV4dCAuY29sdW1uLnRleHQgLndwLWJsb2NrLWJ1dHRvbl9fbGluaywgc2VjdGlvbi5jb2x1bW5lZC10ZXh0IC50ZXh0LmNvbHVtbnMgLndwLWJsb2NrLWJ1dHRvbiAud3AtYmxvY2stYnV0dG9uX19saW5rLCAud3AtYmxvY2stYnV0dG9uIHNlY3Rpb24uY29sdW1uZWQtdGV4dCAudGV4dC5jb2x1bW5zIC53cC1ibG9jay1idXR0b25fX2xpbmssIHNlY3Rpb24uY29sdW1uZWQtdGV4dCAuY29sdW1uLnRleHQgc2VjdGlvbi5wcm9tby1saXN0aW5nLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLCBzZWN0aW9uLnByb21vLWxpc3RpbmcuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIHNlY3Rpb24uY29sdW1uZWQtdGV4dCAuY29sdW1uLnRleHQgYSwgc2VjdGlvbi5jb2x1bW5lZC10ZXh0IC50ZXh0LmNvbHVtbnMgc2VjdGlvbi5wcm9tby1saXN0aW5nLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLCBzZWN0aW9uLnByb21vLWxpc3RpbmcuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIHNlY3Rpb24uY29sdW1uZWQtdGV4dCAudGV4dC5jb2x1bW5zIGEsIHNlY3Rpb24uY29sdW1uZWQtdGV4dCAuY29sdW1uLnRleHQgc2VjdGlvbi5wcm9tby1saXN0aW5nLTIuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEsIHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBzZWN0aW9uLmNvbHVtbmVkLXRleHQgLmNvbHVtbi50ZXh0IGEsIHNlY3Rpb24uY29sdW1uZWQtdGV4dCAudGV4dC5jb2x1bW5zIHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLCBzZWN0aW9uLnByb21vLWxpc3RpbmctMi5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgc2VjdGlvbi5jb2x1bW5lZC10ZXh0IC50ZXh0LmNvbHVtbnMgYSB7XG4gICAgICBtYXJnaW4tdG9wOiAxLjI1cmVtO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwLjYyNXJlbTsgfVxuICBzZWN0aW9uLmNvbHVtbmVkLXRleHQubGlnaHQgLmNvbHVtbiBoMywgc2VjdGlvbi5jb2x1bW5lZC10ZXh0LmxpZ2h0IC5jb2x1bW5zIGgzIHtcbiAgICBjb2xvcjogI2ZlZmVmZTsgfVxuXG5zZWN0aW9uLmFjY29yZGlvbiAuY29udGVudCB7XG4gIHdpZHRoOiAxMDAlO1xuICBmbG9hdDogbGVmdDtcbiAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gIHBhZGRpbmctbGVmdDogMC42MjVyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICBzZWN0aW9uLmFjY29yZGlvbiAuY29udGVudCB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gIHNlY3Rpb24uYWNjb3JkaW9uIC5jb250ZW50LCBzZWN0aW9uLmFjY29yZGlvbiAuY29udGVudDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBjbGVhcjogbm9uZTsgfVxuICBzZWN0aW9uLmFjY29yZGlvbiAuY29udGVudDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICBmbG9hdDogcmlnaHQ7IH1cbiAgc2VjdGlvbi5hY2NvcmRpb24gLmNvbnRlbnQgLnRpdGxlIGgyIHtcbiAgICBtYXJnaW4tYm90dG9tOiAyLjVyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgc2VjdGlvbi5hY2NvcmRpb24gLmNvbnRlbnQgLnRpdGxlIGgyIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNXJlbTsgfSB9XG5cbnNlY3Rpb24uYWNjb3JkaW9uIHVsLmFjY29yZGlvbiB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBib3JkZXItdG9wOiAxcHggc29saWQgIzBhMGEwYTsgfVxuXG5zZWN0aW9uLmFjY29yZGlvbiAuYWNjb3JkaW9uLWl0ZW0ge1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzBhMGEwYTsgfVxuICBzZWN0aW9uLmFjY29yZGlvbiAuYWNjb3JkaW9uLWl0ZW06bGFzdC1jaGlsZCA+IC5hY2NvcmRpb24tdGl0bGUsXG4gIHNlY3Rpb24uYWNjb3JkaW9uIC5hY2NvcmRpb24taXRlbTpsYXN0LWNoaWxkID4gOmxhc3QtY2hpbGQge1xuICAgIGJvcmRlci1ib3R0b206IDA7IH1cblxuc2VjdGlvbi5hY2NvcmRpb24gLmFjY29yZGlvbi10aXRsZSxcbnNlY3Rpb24uYWNjb3JkaW9uIC5hY2NvcmRpb24tY29udGVudCB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IDA7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIG1hcmdpbi1yaWdodDogMDsgfVxuXG5zZWN0aW9uLmFjY29yZGlvbiAuYWNjb3JkaW9uLXRpdGxlIHtcbiAgZm9udC1zaXplOiAxLjA2MjVyZW07XG4gIG1hcmdpbi1yaWdodDogMS4yNXJlbTtcbiAgcGFkZGluZy1yaWdodDogMy4xMjVyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICBzZWN0aW9uLmFjY29yZGlvbiAuYWNjb3JkaW9uLXRpdGxlIHtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gICAgICBmb250LXNpemU6IDEuMjVyZW07IH0gfVxuICBzZWN0aW9uLmFjY29yZGlvbiAuYWNjb3JkaW9uLXRpdGxlOmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBtYXJnaW4tdG9wOiAtMC45Mzc1cmVtO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1yaWdodC1jb2xvcjogIzBhMGEwYTtcbiAgICBib3JkZXItYm90dG9tLWNvbG9yOiAjMGEwYTBhO1xuICAgIHdpZHRoOiAxLjI1cmVtO1xuICAgIGhlaWdodDogMS4yNXJlbTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gICAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW4tb3V0OyB9XG5cbnNlY3Rpb24uYWNjb3JkaW9uIC5pcy1hY3RpdmUgPiAuYWNjb3JkaW9uLXRpdGxlOmJlZm9yZSB7XG4gIHRyYW5zZm9ybTogcm90YXRlKC0xMzVkZWcpO1xuICBtYXJnaW4tdG9wOiAwOyB9XG5cbnNlY3Rpb24uYWNjb3JkaW9uLmxpZ2h0IHVsLmFjY29yZGlvbiB7XG4gIGJvcmRlci10b3AtY29sb3I6ICNmZWZlZmU7IH1cblxuc2VjdGlvbi5hY2NvcmRpb24ubGlnaHQgLmFjY29yZGlvbi10aXRsZTpiZWZvcmUge1xuICBib3JkZXItcmlnaHQtY29sb3I6ICNmZWZlZmU7XG4gIGJvcmRlci1ib3R0b20tY29sb3I6ICNmZWZlZmU7IH1cblxuc2VjdGlvbi5hY2NvcmRpb24ubGlnaHQgLmFjY29yZGlvbi1pdGVtIHtcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogI2ZlZmVmZTsgfVxuXG5zZWN0aW9uLmFjY29yZGlvbi5saWdodCAuYWNjb3JkaW9uLXRpdGxlLFxuc2VjdGlvbi5hY2NvcmRpb24ubGlnaHQgLmFjY29yZGlvbi1jb250ZW50IHtcbiAgY29sb3I6ICNmZWZlZmU7XG4gIGJvcmRlci1ib3R0b20tY29sb3I6ICNmZWZlZmU7IH1cblxuc2VjdGlvbi5hY2NvcmRpb24uZmFxIHtcbiAgcGFkZGluZzogMDsgfVxuICBzZWN0aW9uLmFjY29yZGlvbi5mYXEgLmNvbnRlbnQge1xuICAgIHBhZGRpbmc6IDA7IH1cbiAgc2VjdGlvbi5hY2NvcmRpb24uZmFxIC5hY2NvcmRpb24uY2F0cyB7XG4gICAgYm9yZGVyLXRvcDogbm9uZTtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gICAgc2VjdGlvbi5hY2NvcmRpb24uZmFxIC5hY2NvcmRpb24uY2F0cyA+IC5hY2NvcmRpb24taXRlbTpsYXN0LWNoaWxkIHtcbiAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gICAgc2VjdGlvbi5hY2NvcmRpb24uZmFxIC5hY2NvcmRpb24uY2F0cyA+IC5hY2NvcmRpb24taXRlbSA+IC5hY2NvcmRpb24tdGl0bGU6YmVmb3JlIHtcbiAgICAgIHdpZHRoOiAxLjU2MjVyZW07XG4gICAgICBoZWlnaHQ6IDEuNTYyNXJlbTtcbiAgICAgIHJpZ2h0OiAyLjE4NzVyZW07IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAgICAgc2VjdGlvbi5hY2NvcmRpb24uZmFxIC5hY2NvcmRpb24uY2F0cyA+IC5hY2NvcmRpb24taXRlbSA+IC5hY2NvcmRpb24tdGl0bGU6YmVmb3JlIHtcbiAgICAgICAgICByaWdodDogNi41NjI1cmVtOyB9IH1cbiAgICBzZWN0aW9uLmFjY29yZGlvbi5mYXEgLmFjY29yZGlvbi5jYXRzID4gLmFjY29yZGlvbi1pdGVtIGgyIHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDMuMTI1cmVtIDA7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtO1xuICAgICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgIHNlY3Rpb24uYWNjb3JkaW9uLmZhcSAuYWNjb3JkaW9uLmNhdHMgPiAuYWNjb3JkaW9uLWl0ZW0gaDIge1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtO1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTsgfSB9XG4gICAgc2VjdGlvbi5hY2NvcmRpb24uZmFxIC5hY2NvcmRpb24uY2F0cyA+IC5hY2NvcmRpb24taXRlbSAuY29udGVudCB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtO1xuICAgICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgIHNlY3Rpb24uYWNjb3JkaW9uLmZhcSAuYWNjb3JkaW9uLmNhdHMgPiAuYWNjb3JkaW9uLWl0ZW0gLmNvbnRlbnQge1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtO1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTsgfSB9XG4gICAgc2VjdGlvbi5hY2NvcmRpb24uZmFxIC5hY2NvcmRpb24uY2F0cyA+IC5hY2NvcmRpb24taXRlbSAuYWNjb3JkaW9uLWl0ZW0uaXMtYWN0aXZlIC5hY2NvcmRpb24tdGl0bGUge1xuICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgICBzZWN0aW9uLmFjY29yZGlvbi5mYXEgLmFjY29yZGlvbi5jYXRzID4gLmFjY29yZGlvbi1pdGVtIC5hY2NvcmRpb24tdGl0bGUge1xuICAgICAgY29sb3I6ICMwYTBhMGE7XG4gICAgICBmb250LXNpemU6IDEuNjI1cmVtO1xuICAgICAgcGFkZGluZzogMDsgfVxuICAgIHNlY3Rpb24uYWNjb3JkaW9uLmZhcSAuYWNjb3JkaW9uLmNhdHMgPiAuYWNjb3JkaW9uLWl0ZW0gLmFjY29yZGlvbi1jb250ZW50IC5hY2NvcmRpb24ge1xuICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgcGFkZGluZzogMCAwIDEuNTYyNXJlbSAwOyB9XG4gICAgICBzZWN0aW9uLmFjY29yZGlvbi5mYXEgLmFjY29yZGlvbi5jYXRzID4gLmFjY29yZGlvbi1pdGVtIC5hY2NvcmRpb24tY29udGVudCAuYWNjb3JkaW9uIC5hY2NvcmRpb24taXRlbSAuYWNjb3JkaW9uLXRpdGxlIHtcbiAgICAgICAgcGFkZGluZzogMC45Mzc1cmVtIDA7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgICAgIHNlY3Rpb24uYWNjb3JkaW9uLmZhcSAuYWNjb3JkaW9uLmNhdHMgPiAuYWNjb3JkaW9uLWl0ZW0gLmFjY29yZGlvbi1jb250ZW50IC5hY2NvcmRpb24gLmFjY29yZGlvbi1pdGVtOmZpcnN0LWNoaWxkIC5hY2NvcmRpb24tdGl0bGUge1xuICAgICAgICBib3JkZXItdG9wOiAwLjA2MjVyZW0gc29saWQgIzBhMGEwYTsgfVxuICAgICAgc2VjdGlvbi5hY2NvcmRpb24uZmFxIC5hY2NvcmRpb24uY2F0cyA+IC5hY2NvcmRpb24taXRlbSAuYWNjb3JkaW9uLWNvbnRlbnQgLmFjY29yZGlvbiAuYWNjb3JkaW9uLWl0ZW0gLmFjY29yZGlvbi1jb250ZW50IHtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICBjb2xvcjogIzY4MDBkMjsgfVxuICAgIHNlY3Rpb24uYWNjb3JkaW9uLmZhcSAuYWNjb3JkaW9uLmNhdHMgPiAuYWNjb3JkaW9uLWl0ZW0uaXMtYWN0aXZlID4gLmFjY29yZGlvbi10aXRsZSB7XG4gICAgICBib3JkZXItYm90dG9tOiAwLjA2MjVyZW0gc29saWQgdHJhbnNwYXJlbnQ7IH1cblxuLmFjY29yZGlvbi1pdGVtOmZpcnN0LWNoaWxkID4gOmZpcnN0LWNoaWxkLFxuLmFjY29yZGlvbi1pdGVtOmxhc3QtY2hpbGQgPiA6bGFzdC1jaGlsZCxcbjpsYXN0LWNoaWxkOm5vdCguaXMtYWN0aXZlKSA+IC5hY2NvcmRpb24tdGl0bGUge1xuICBib3JkZXItcmFkaXVzOiAwOyB9XG5cbnNlY3Rpb24uc2lnbnBvc3Qge1xuICBwYWRkaW5nOiAwO1xuICBib3JkZXItYm90dG9tOiAwO1xuICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIHNlY3Rpb24uc2lnbnBvc3QgLmJnLWltYWdlIHtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgbWluLWhlaWdodDogNDB2dztcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH1cbiAgICBzZWN0aW9uLnNpZ25wb3N0IC5iZy1pbWFnZTpiZWZvcmUge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC41NSk7IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAgIHNlY3Rpb24uc2lnbnBvc3QgLmJnLWltYWdlOmJlZm9yZSB7XG4gICAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCByZ2JhKDAsIDAsIDAsIDAuNjUpIDAlLCByZ2JhKDAsIDAsIDAsIDApIDgwJSk7IH0gfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgICBzZWN0aW9uLnNpZ25wb3N0IC5iZy1pbWFnZTpiZWZvcmUge1xuICAgICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byBsZWZ0LCByZ2JhKDAsIDAsIDAsIDAuNjUpIDAlLCByZ2JhKDAsIDAsIDAsIDApIDgwJSk7IH0gfVxuICAgIC5wYXJhbGxheC1yZWFkeSBzZWN0aW9uLnNpZ25wb3N0IC5iZy1pbWFnZVtkYXRhLWVubGxheC1yYXRpb10ge1xuICAgICAgYmFja2dyb3VuZC1zaXplOiAxNzAlIGF1dG87IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgIC5wYXJhbGxheC1yZWFkeSBzZWN0aW9uLnNpZ25wb3N0IC5iZy1pbWFnZVtkYXRhLWVubGxheC1yYXRpb10ge1xuICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogMTUwJSBhdXRvOyB9IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAgICAgLnBhcmFsbGF4LXJlYWR5IHNlY3Rpb24uc2lnbnBvc3QgLmJnLWltYWdlW2RhdGEtZW5sbGF4LXJhdGlvXSB7XG4gICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAxMTUlIGF1dG87IH0gfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODguNzVlbSkge1xuICAgICAgICAucGFyYWxsYXgtcmVhZHkgc2VjdGlvbi5zaWducG9zdCAuYmctaW1hZ2VbZGF0YS1lbmxsYXgtcmF0aW9dIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCUgYXV0bzsgfSB9XG4gICAgc2VjdGlvbi5zaWducG9zdCAuYmctaW1hZ2Uubm8tb3ZlcmxheTpiZWZvcmUge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICBzZWN0aW9uLnNpZ25wb3N0IC5yb3cge1xuICAgIG1heC13aWR0aDogbm9uZTtcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgc2VjdGlvbi5zaWducG9zdCAucm93OjpiZWZvcmUsIHNlY3Rpb24uc2lnbnBvc3QgLnJvdzo6YWZ0ZXIge1xuICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgICBjb250ZW50OiAnICc7XG4gICAgICBmbGV4LWJhc2lzOiAwO1xuICAgICAgb3JkZXI6IDE7IH1cbiAgICBzZWN0aW9uLnNpZ25wb3N0IC5yb3c6OmFmdGVyIHtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIHNlY3Rpb24uc2lnbnBvc3QgLnJvdyB7XG4gICAgICAgIGZsZXgtc2hyaW5rOiAxO1xuICAgICAgICBmbGV4LWJhc2lzOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IGF1dG87IH0gfVxuICAgIHNlY3Rpb24uc2lnbnBvc3QgLnJvdyA+IC5pbWFnZSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtO1xuICAgICAgcGFkZGluZy10b3A6IDEuMjVyZW07XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMS4yNXJlbTsgfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgc2VjdGlvbi5zaWducG9zdCAucm93ID4gLmltYWdlIHtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICAgICAgc2VjdGlvbi5zaWducG9zdCAucm93ID4gLmltYWdlLCBzZWN0aW9uLnNpZ25wb3N0IC5yb3cgPiAuaW1hZ2U6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBjbGVhcjogbm9uZTsgfVxuICAgICAgc2VjdGlvbi5zaWducG9zdCAucm93ID4gLmltYWdlOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICBmbG9hdDogcmlnaHQ7IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgIHNlY3Rpb24uc2lnbnBvc3QgLnJvdyA+IC5pbWFnZSB7XG4gICAgICAgICAgd2lkdGg6IDMzLjMzMzMzJTsgfSB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgICBzZWN0aW9uLnNpZ25wb3N0IC5yb3cgPiAuaW1hZ2Uge1xuICAgICAgICAgIHdpZHRoOiA1MCU7XG4gICAgICAgICAgcGFkZGluZy10b3A6IDVyZW07XG4gICAgICAgICAgcGFkZGluZy1ib3R0b206IDVyZW07IH0gfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgICBzZWN0aW9uLnNpZ25wb3N0IC5yb3cgPiAuaW1hZ2Uge1xuICAgICAgICAgIHdpZHRoOiAzMy4zMzMzMyU7IH0gfVxuICAgIHNlY3Rpb24uc2lnbnBvc3QgLnJvdyAuY29udGVudCB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtO1xuICAgICAgcGFkZGluZy10b3A6IDIuNjI1cmVtO1xuICAgICAgcGFkZGluZy1ib3R0b206IDIuNjI1cmVtO1xuICAgICAgY29sb3I6ICNmZWZlZmU7IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgIHNlY3Rpb24uc2lnbnBvc3QgLnJvdyAuY29udGVudCB7XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgICAgIHNlY3Rpb24uc2lnbnBvc3QgLnJvdyAuY29udGVudCwgc2VjdGlvbi5zaWducG9zdCAucm93IC5jb250ZW50Omxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAgIHNlY3Rpb24uc2lnbnBvc3QgLnJvdyAuY29udGVudDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0OyB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICBzZWN0aW9uLnNpZ25wb3N0IC5yb3cgLmNvbnRlbnQge1xuICAgICAgICAgIHdpZHRoOiA3NSU7IH0gfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgc2VjdGlvbi5zaWducG9zdCAucm93IC5jb250ZW50IHtcbiAgICAgICAgICB3aWR0aDogNTAlO1xuICAgICAgICAgIHBhZGRpbmctdG9wOiA1cmVtO1xuICAgICAgICAgIHBhZGRpbmctYm90dG9tOiA1cmVtOyB9XG4gICAgICAgICAgc2VjdGlvbi5zaWducG9zdCAucm93IC5jb250ZW50IC5sYWJlbCB7XG4gICAgICAgICAgICBjb2xvcjogI2ZiZTIwMDsgfSB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAgIHNlY3Rpb24uc2lnbnBvc3QgLnJvdyAuY29udGVudCB7XG4gICAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICAgIHdpZHRoOiA0MS42NjY2NyU7IH0gfVxuICAgICAgc2VjdGlvbi5zaWducG9zdCAucm93IC5jb250ZW50IHAge1xuICAgICAgICBtYXgtd2lkdGg6IDMzLjc1cmVtOyB9XG4gICAgICBzZWN0aW9uLnNpZ25wb3N0IC5yb3cgLmNvbnRlbnQgLmxpbmsge1xuICAgICAgICBwYWRkaW5nLXRvcDogMS44NzVyZW07IH1cbiAgICAgICAgc2VjdGlvbi5zaWducG9zdCAucm93IC5jb250ZW50IC5saW5rIC5idXR0b24sIHNlY3Rpb24uc2lnbnBvc3QgLnJvdyAuY29udGVudCAubGluayAud3AtYmxvY2stYnV0dG9uIC53cC1ibG9jay1idXR0b25fX2xpbmssIC53cC1ibG9jay1idXR0b24gc2VjdGlvbi5zaWducG9zdCAucm93IC5jb250ZW50IC5saW5rIC53cC1ibG9jay1idXR0b25fX2xpbmssIHNlY3Rpb24uc2lnbnBvc3QgLnJvdyAuY29udGVudCAubGluayBzZWN0aW9uLnByb21vLWxpc3RpbmcuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEsIHNlY3Rpb24ucHJvbW8tbGlzdGluZy5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgc2VjdGlvbi5zaWducG9zdCAucm93IC5jb250ZW50IC5saW5rIGEsIHNlY3Rpb24uc2lnbnBvc3QgLnJvdyAuY29udGVudCAubGluayBzZWN0aW9uLnByb21vLWxpc3RpbmctMi5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYSwgc2VjdGlvbi5wcm9tby1saXN0aW5nLTIuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIHNlY3Rpb24uc2lnbnBvc3QgLnJvdyAuY29udGVudCAubGluayBhIHtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEuMjVyZW07IH1cbiAgICAgICAgICBzZWN0aW9uLnNpZ25wb3N0IC5yb3cgLmNvbnRlbnQgLmxpbmsgLmJ1dHRvbjpmaXJzdC1jaGlsZDpub3QoOmxhc3QtY2hpbGQpLCBzZWN0aW9uLnNpZ25wb3N0IC5yb3cgLmNvbnRlbnQgLmxpbmsgLndwLWJsb2NrLWJ1dHRvbiAud3AtYmxvY2stYnV0dG9uX19saW5rOmZpcnN0LWNoaWxkOm5vdCg6bGFzdC1jaGlsZCksIC53cC1ibG9jay1idXR0b24gc2VjdGlvbi5zaWducG9zdCAucm93IC5jb250ZW50IC5saW5rIC53cC1ibG9jay1idXR0b25fX2xpbms6Zmlyc3QtY2hpbGQ6bm90KDpsYXN0LWNoaWxkKSwgc2VjdGlvbi5zaWducG9zdCAucm93IC5jb250ZW50IC5saW5rIHNlY3Rpb24ucHJvbW8tbGlzdGluZy5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYTpmaXJzdC1jaGlsZDpub3QoOmxhc3QtY2hpbGQpLCBzZWN0aW9uLnByb21vLWxpc3RpbmcuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIHNlY3Rpb24uc2lnbnBvc3QgLnJvdyAuY29udGVudCAubGluayBhOmZpcnN0LWNoaWxkOm5vdCg6bGFzdC1jaGlsZCksIHNlY3Rpb24uc2lnbnBvc3QgLnJvdyAuY29udGVudCAubGluayBzZWN0aW9uLnByb21vLWxpc3RpbmctMi5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYTpmaXJzdC1jaGlsZDpub3QoOmxhc3QtY2hpbGQpLCBzZWN0aW9uLnByb21vLWxpc3RpbmctMi5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgc2VjdGlvbi5zaWducG9zdCAucm93IC5jb250ZW50IC5saW5rIGE6Zmlyc3QtY2hpbGQ6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAjZmVmZWZlO1xuICAgICAgICAgICAgY29sb3I6ICM2ODAwZDI7IH1cbiAgICAgICAgICAgIHNlY3Rpb24uc2lnbnBvc3QgLnJvdyAuY29udGVudCAubGluayAuYnV0dG9uOmZpcnN0LWNoaWxkOm5vdCg6bGFzdC1jaGlsZCk6aG92ZXIsIHNlY3Rpb24uc2lnbnBvc3QgLnJvdyAuY29udGVudCAubGluayAud3AtYmxvY2stYnV0dG9uIC53cC1ibG9jay1idXR0b25fX2xpbms6Zmlyc3QtY2hpbGQ6bm90KDpsYXN0LWNoaWxkKTpob3ZlciwgLndwLWJsb2NrLWJ1dHRvbiBzZWN0aW9uLnNpZ25wb3N0IC5yb3cgLmNvbnRlbnQgLmxpbmsgLndwLWJsb2NrLWJ1dHRvbl9fbGluazpmaXJzdC1jaGlsZDpub3QoOmxhc3QtY2hpbGQpOmhvdmVyLCBzZWN0aW9uLnNpZ25wb3N0IC5yb3cgLmNvbnRlbnQgLmxpbmsgc2VjdGlvbi5wcm9tby1saXN0aW5nLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhOmZpcnN0LWNoaWxkOm5vdCg6bGFzdC1jaGlsZCk6aG92ZXIsIHNlY3Rpb24ucHJvbW8tbGlzdGluZy5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgc2VjdGlvbi5zaWducG9zdCAucm93IC5jb250ZW50IC5saW5rIGE6Zmlyc3QtY2hpbGQ6bm90KDpsYXN0LWNoaWxkKTpob3Zlciwgc2VjdGlvbi5zaWducG9zdCAucm93IC5jb250ZW50IC5saW5rIHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhOmZpcnN0LWNoaWxkOm5vdCg6bGFzdC1jaGlsZCk6aG92ZXIsIHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBzZWN0aW9uLnNpZ25wb3N0IC5yb3cgLmNvbnRlbnQgLmxpbmsgYTpmaXJzdC1jaGlsZDpub3QoOmxhc3QtY2hpbGQpOmhvdmVyIHtcbiAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZiZTIwMDsgfVxuICAgICAgICAgIHNlY3Rpb24uc2lnbnBvc3QgLnJvdyAuY29udGVudCAubGluayAuYnV0dG9uOmxhc3QtY2hpbGQsIHNlY3Rpb24uc2lnbnBvc3QgLnJvdyAuY29udGVudCAubGluayAud3AtYmxvY2stYnV0dG9uIC53cC1ibG9jay1idXR0b25fX2xpbms6bGFzdC1jaGlsZCwgLndwLWJsb2NrLWJ1dHRvbiBzZWN0aW9uLnNpZ25wb3N0IC5yb3cgLmNvbnRlbnQgLmxpbmsgLndwLWJsb2NrLWJ1dHRvbl9fbGluazpsYXN0LWNoaWxkLCBzZWN0aW9uLnNpZ25wb3N0IC5yb3cgLmNvbnRlbnQgLmxpbmsgc2VjdGlvbi5wcm9tby1saXN0aW5nLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhOmxhc3QtY2hpbGQsIHNlY3Rpb24ucHJvbW8tbGlzdGluZy5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgc2VjdGlvbi5zaWducG9zdCAucm93IC5jb250ZW50IC5saW5rIGE6bGFzdC1jaGlsZCwgc2VjdGlvbi5zaWducG9zdCAucm93IC5jb250ZW50IC5saW5rIHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhOmxhc3QtY2hpbGQsIHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBzZWN0aW9uLnNpZ25wb3N0IC5yb3cgLmNvbnRlbnQgLmxpbmsgYTpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICM2ODAwZDI7XG4gICAgICAgICAgICBjb2xvcjogI2ZlZmVmZTsgfVxuICAgICAgICAgICAgc2VjdGlvbi5zaWducG9zdCAucm93IC5jb250ZW50IC5saW5rIC5idXR0b246bGFzdC1jaGlsZDpob3Zlciwgc2VjdGlvbi5zaWducG9zdCAucm93IC5jb250ZW50IC5saW5rIC53cC1ibG9jay1idXR0b24gLndwLWJsb2NrLWJ1dHRvbl9fbGluazpsYXN0LWNoaWxkOmhvdmVyLCAud3AtYmxvY2stYnV0dG9uIHNlY3Rpb24uc2lnbnBvc3QgLnJvdyAuY29udGVudCAubGluayAud3AtYmxvY2stYnV0dG9uX19saW5rOmxhc3QtY2hpbGQ6aG92ZXIsIHNlY3Rpb24uc2lnbnBvc3QgLnJvdyAuY29udGVudCAubGluayBzZWN0aW9uLnByb21vLWxpc3RpbmcuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGE6bGFzdC1jaGlsZDpob3Zlciwgc2VjdGlvbi5wcm9tby1saXN0aW5nLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBzZWN0aW9uLnNpZ25wb3N0IC5yb3cgLmNvbnRlbnQgLmxpbmsgYTpsYXN0LWNoaWxkOmhvdmVyLCBzZWN0aW9uLnNpZ25wb3N0IC5yb3cgLmNvbnRlbnQgLmxpbmsgc2VjdGlvbi5wcm9tby1saXN0aW5nLTIuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGE6bGFzdC1jaGlsZDpob3Zlciwgc2VjdGlvbi5wcm9tby1saXN0aW5nLTIuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIHNlY3Rpb24uc2lnbnBvc3QgLnJvdyAuY29udGVudCAubGluayBhOmxhc3QtY2hpbGQ6aG92ZXIge1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmJlMjAwO1xuICAgICAgICAgICAgICBjb2xvcjogIzY4MDBkMjsgfVxuICAgICAgc2VjdGlvbi5zaWducG9zdCAucm93IC5jb250ZW50IC5zaWducG9zdC1sb2dvIHtcbiAgICAgICAgbWF4LXdpZHRoOiA5LjM3NXJlbTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG1hcmdpbi10b3A6IDEuMjVyZW07IH1cbiAgICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgICBzZWN0aW9uLnNpZ25wb3N0IC5yb3cgLmNvbnRlbnQgLnNpZ25wb3N0LWxvZ28ge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMS44NzVyZW07IH0gfVxuICAgIHNlY3Rpb24uc2lnbnBvc3QgLnJvdyAubG9nb3Mge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTtcbiAgICAgIHBhZGRpbmctdG9wOiAxLjI1cmVtO1xuICAgICAgcGFkZGluZy1ib3R0b206IDEuMjVyZW07IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgIHNlY3Rpb24uc2lnbnBvc3QgLnJvdyAubG9nb3Mge1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gICAgICBzZWN0aW9uLnNpZ25wb3N0IC5yb3cgLmxvZ29zLCBzZWN0aW9uLnNpZ25wb3N0IC5yb3cgLmxvZ29zOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAgIHNlY3Rpb24uc2lnbnBvc3QgLnJvdyAubG9nb3M6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgIGZsb2F0OiByaWdodDsgfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgc2VjdGlvbi5zaWducG9zdCAucm93IC5sb2dvcyB7XG4gICAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgICBwYWRkaW5nLXRvcDogNXJlbTtcbiAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogNXJlbTsgfSB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAgIHNlY3Rpb24uc2lnbnBvc3QgLnJvdyAubG9nb3Mge1xuICAgICAgICAgIHdpZHRoOiA0MS42NjY2NyU7XG4gICAgICAgICAgZmxvYXQ6IHJpZ2h0OyB9IH1cbiAgc2VjdGlvbi5zaWducG9zdC5xdW90ZSAuYmctaW1hZ2U6YmVmb3JlIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgc2VjdGlvbi5zaWducG9zdC5xdW90ZSAucm93IC5jb250ZW50IHtcbiAgICAgIGZsb2F0OiBsZWZ0OyB9IH1cbiAgc2VjdGlvbi5zaWducG9zdC5sYXJnZSAuYmctaW1hZ2Uge1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciAwOyB9XG4gICAgc2VjdGlvbi5zaWducG9zdC5sYXJnZSAuYmctaW1hZ2U6YmVmb3JlIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAgICAgc2VjdGlvbi5zaWducG9zdC5sYXJnZSAuYmctaW1hZ2U6YmVmb3JlIHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNyk7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgc2VjdGlvbi5zaWducG9zdC5sYXJnZS53aGl0ZSAuYmctaW1hZ2U6YmVmb3JlLCBzZWN0aW9uLm5ld3MuYmxvZyAubmV3cyBzZWN0aW9uLnNpZ25wb3N0LmxhcmdlLmFydGljbGU6bnRoLWNoaWxkKDVuICsgMSk6bm90KC5ibGFjaykgLmJnLWltYWdlOmJlZm9yZSwgc2VjdGlvbi5uZXdzLmJsb2cgLm5ld3Mgc2VjdGlvbi5zaWducG9zdC5sYXJnZS5hcnRpY2xlOm50aC1jaGlsZCg1biArIDUpOm5vdCguYmxhY2spIC5iZy1pbWFnZTpiZWZvcmUge1xuICAgICAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjcpOyB9IH1cbiAgc2VjdGlvbi5zaWducG9zdC5sYXJnZSAucm93IC5jb250ZW50IHtcbiAgICBmbG9hdDogbGVmdDsgfVxuICAgIHNlY3Rpb24uc2lnbnBvc3QubGFyZ2UgLnJvdyAuY29udGVudCBoMiB7XG4gICAgICBmb250LXNpemU6IDIuNXJlbTsgfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgc2VjdGlvbi5zaWducG9zdC5sYXJnZSAucm93IC5jb250ZW50IGgyIHtcbiAgICAgICAgICBmb250LXNpemU6IDEuNzVyZW07IH0gfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgc2VjdGlvbi5zaWducG9zdC5sYXJnZSAucm93IC5jb250ZW50IGgyIHtcbiAgICAgICAgICBmb250LXNpemU6IDMuNzVyZW07IH0gfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgICBzZWN0aW9uLnNpZ25wb3N0LmxhcmdlIC5yb3cgLmNvbnRlbnQgaDIge1xuICAgICAgICAgIGZvbnQtc2l6ZTogNS45Mzc1cmVtOyB9IH1cbiAgc2VjdGlvbi5zaWducG9zdC5sYXJnZV9pY29uIC5yb3cgPiAuaW1hZ2Uge1xuICAgIHBhZGRpbmctdG9wOiAwO1xuICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgc2VjdGlvbi5zaWducG9zdC5sYXJnZV9pY29uIC5yb3cgPiAuaW1hZ2Uge1xuICAgICAgICBkaXNwbGF5OiBibG9jazsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgc2VjdGlvbi5zaWducG9zdC5sYXJnZV9pY29uIC5yb3cgPiAuaW1hZ2Uge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGxlZnQ6IDguMzMzMzMlOyB9IH1cbiAgICBzZWN0aW9uLnNpZ25wb3N0LmxhcmdlX2ljb24gLnJvdyA+IC5pbWFnZSBpbWcge1xuICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjQpOyB9XG4gIHNlY3Rpb24uc2lnbnBvc3QubGFyZ2VfaWNvbiAucm93IC5jb250ZW50IHtcbiAgICBmbG9hdDogbGVmdCAhaW1wb3J0YW50OyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIHNlY3Rpb24uc2lnbnBvc3QubGFyZ2VfaWNvbiAucm93IC5jb250ZW50IHtcbiAgICAgICAgZGlzcGxheTogcmlnaHQgIWltcG9ydGFudDsgfSB9XG4gIHNlY3Rpb24uc2lnbnBvc3QucHVibGljYXRpb24gLnJvdyAuY29udGVudCBoMiB7XG4gICAgZm9udC1zaXplOiAyLjVyZW07IH1cbiAgc2VjdGlvbi5zaWducG9zdC5wdWJsaWNhdGlvbiAucm93IC5jb250ZW50IC5sYWJlbCB7XG4gICAgY29sb3I6ICNmZWZlZmU7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICBzZWN0aW9uLnNpZ25wb3N0LnB1YmxpY2F0aW9uIC5yb3cge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47IH1cbiAgICAgIHNlY3Rpb24uc2lnbnBvc3QucHVibGljYXRpb24gLnJvdzpiZWZvcmUsIHNlY3Rpb24uc2lnbnBvc3QucHVibGljYXRpb24gLnJvdzphZnRlciB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAgIHNlY3Rpb24uc2lnbnBvc3QucHVibGljYXRpb24gLnJvdyAuY29udGVudCB7XG4gICAgICAgIGp1c3RpZnktc2VsZjogZmxleC1lbmQ7XG4gICAgICAgIGZsZXg6IDAgMCBhdXRvOyB9XG4gICAgICAgIHNlY3Rpb24uc2lnbnBvc3QucHVibGljYXRpb24gLnJvdyAuY29udGVudCBoMiB7XG4gICAgICAgICAgZm9udC1zaXplOiAzLjc1cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIHNlY3Rpb24uc2lnbnBvc3QucHVibGljYXRpb24gLnJvdyAuY29udGVudCBoMiB7XG4gICAgICBmb250LXNpemU6IDUuOTM3NXJlbTsgfSB9XG4gIHNlY3Rpb24uc2lnbnBvc3QucHVibGljYXRpb24ud2hpdGUgdWwubGlzdGluZyBhLCBzZWN0aW9uLm5ld3MuYmxvZyAubmV3cyBzZWN0aW9uLnNpZ25wb3N0LnB1YmxpY2F0aW9uLmFydGljbGU6bnRoLWNoaWxkKDVuICsgMSk6bm90KC5ibGFjaykgdWwubGlzdGluZyBhLCBzZWN0aW9uLm5ld3MuYmxvZyAubmV3cyBzZWN0aW9uLnNpZ25wb3N0LnB1YmxpY2F0aW9uLmFydGljbGU6bnRoLWNoaWxkKDVuICsgNSk6bm90KC5ibGFjaykgdWwubGlzdGluZyBhIHtcbiAgICBjb2xvcjogI2ZlZmVmZTsgfVxuICAgIHNlY3Rpb24uc2lnbnBvc3QucHVibGljYXRpb24ud2hpdGUgdWwubGlzdGluZyBhOmFmdGVyLCBzZWN0aW9uLm5ld3MuYmxvZyAubmV3cyBzZWN0aW9uLnNpZ25wb3N0LnB1YmxpY2F0aW9uLmFydGljbGU6bnRoLWNoaWxkKDVuICsgMSk6bm90KC5ibGFjaykgdWwubGlzdGluZyBhOmFmdGVyLCBzZWN0aW9uLm5ld3MuYmxvZyAubmV3cyBzZWN0aW9uLnNpZ25wb3N0LnB1YmxpY2F0aW9uLmFydGljbGU6bnRoLWNoaWxkKDVuICsgNSk6bm90KC5ibGFjaykgdWwubGlzdGluZyBhOmFmdGVyIHtcbiAgICAgIGJvcmRlci1yaWdodC1jb2xvcjogI2ZlZmVmZTtcbiAgICAgIGJvcmRlci10b3AtY29sb3I6ICNmZWZlZmU7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICBzZWN0aW9uLnNpZ25wb3N0LnB1YmxpY2F0aW9uLnJldmVyc2UgLnJvdyB7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7IH1cbiAgICAgIHNlY3Rpb24uc2lnbnBvc3QucHVibGljYXRpb24ucmV2ZXJzZSAucm93IC5jb250ZW50IHtcbiAgICAgICAganVzdGlmeS1zZWxmOiBmbGV4LXN0YXJ0OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIHNlY3Rpb24uc2lnbnBvc3QuZXZlbnQgLmJnLWltYWdlOmJlZm9yZSB7XG4gICAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuNikgIWltcG9ydGFudDsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgc2VjdGlvbi5zaWducG9zdC5ldmVudCAucm93IHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgbWluLWhlaWdodDogNDB2dzsgfVxuICAgICAgc2VjdGlvbi5zaWducG9zdC5ldmVudCAucm93OmJlZm9yZSwgc2VjdGlvbi5zaWducG9zdC5ldmVudCAucm93OmFmdGVyIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgICAgc2VjdGlvbi5zaWducG9zdC5ldmVudCAucm93IC5jb250ZW50IHtcbiAgICAgICAgZmxvYXQ6IG5vbmU7IH0gfVxuICBzZWN0aW9uLnNpZ25wb3N0LmV2ZW50IC5yb3cgLmxvZ29zIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIHNlY3Rpb24uc2lnbnBvc3QuZXZlbnQgLnJvdyAubG9nb3Mge1xuICAgICAgICBmbG9hdDogbm9uZTsgfSB9XG4gICAgc2VjdGlvbi5zaWducG9zdC5ldmVudCAucm93IC5sb2dvcyAubG9nbyB7XG4gICAgICBtYXgtd2lkdGg6IDUwJTtcbiAgICAgIGZsZXg6IDAgMSA1MCU7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtO1xuICAgICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgIHNlY3Rpb24uc2lnbnBvc3QuZXZlbnQgLnJvdyAubG9nb3MgLmxvZ28ge1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtO1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgc2VjdGlvbi5zaWducG9zdC5ldmVudC5yZXZlcnNlIC5yb3cge1xuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlOyB9XG4gICAgICBzZWN0aW9uLnNpZ25wb3N0LmV2ZW50LnJldmVyc2UgLnJvdyAuY29udGVudCB7XG4gICAgICAgIGp1c3RpZnktc2VsZjogZmxleC1zdGFydDsgfSB9XG4gIHNlY3Rpb24uc2lnbnBvc3QuYmxhY2sgLnJvdyAuY29udGVudCwgc2VjdGlvbi5zaWducG9zdC5kYXJrIC5yb3cgLmNvbnRlbnQge1xuICAgIGNvbG9yOiAjMGEwYTBhOyB9XG4gICAgc2VjdGlvbi5zaWducG9zdC5ibGFjayAucm93IC5jb250ZW50IC5sYWJlbCwgc2VjdGlvbi5zaWducG9zdC5kYXJrIC5yb3cgLmNvbnRlbnQgLmxhYmVsIHtcbiAgICAgIGNvbG9yOiAjMGEwYTBhOyB9XG4gIHNlY3Rpb24uc2lnbnBvc3QuYmxhY2sgLmJnLWltYWdlOmJlZm9yZSwgc2VjdGlvbi5zaWducG9zdC5kYXJrIC5iZy1pbWFnZTpiZWZvcmUge1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC42KTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICBzZWN0aW9uLnNpZ25wb3N0LmJsYWNrIC5iZy1pbWFnZTpiZWZvcmUsIHNlY3Rpb24uc2lnbnBvc3QuZGFyayAuYmctaW1hZ2U6YmVmb3JlIHtcbiAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIGxlZnQsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC42NSkgMCUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMCkgODAlKTsgfSB9XG4gIHNlY3Rpb24uc2lnbnBvc3QubGlnaHQgLnJvdyAuY29udGVudCAubGluayAuYnV0dG9uLCBzZWN0aW9uLnNpZ25wb3N0LmxpZ2h0IC5yb3cgLmNvbnRlbnQgLmxpbmsgLndwLWJsb2NrLWJ1dHRvbiAud3AtYmxvY2stYnV0dG9uX19saW5rLCAud3AtYmxvY2stYnV0dG9uIHNlY3Rpb24uc2lnbnBvc3QubGlnaHQgLnJvdyAuY29udGVudCAubGluayAud3AtYmxvY2stYnV0dG9uX19saW5rLCBzZWN0aW9uLnNpZ25wb3N0LmxpZ2h0IC5yb3cgLmNvbnRlbnQgLmxpbmsgc2VjdGlvbi5wcm9tby1saXN0aW5nLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLCBzZWN0aW9uLnByb21vLWxpc3RpbmcuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIHNlY3Rpb24uc2lnbnBvc3QubGlnaHQgLnJvdyAuY29udGVudCAubGluayBhLCBzZWN0aW9uLnNpZ25wb3N0LmxpZ2h0IC5yb3cgLmNvbnRlbnQgLmxpbmsgc2VjdGlvbi5wcm9tby1saXN0aW5nLTIuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEsIHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBzZWN0aW9uLnNpZ25wb3N0LmxpZ2h0IC5yb3cgLmNvbnRlbnQgLmxpbmsgYSwgc2VjdGlvbi5zaWducG9zdC53aGl0ZSAucm93IC5jb250ZW50IC5saW5rIC5idXR0b24sIHNlY3Rpb24ubmV3cy5ibG9nIC5uZXdzIHNlY3Rpb24uc2lnbnBvc3QuYXJ0aWNsZTpudGgtY2hpbGQoNW4gKyAxKTpub3QoLmJsYWNrKSAucm93IC5jb250ZW50IC5saW5rIC5idXR0b24sIHNlY3Rpb24ubmV3cy5ibG9nIC5uZXdzIHNlY3Rpb24uc2lnbnBvc3QuYXJ0aWNsZTpudGgtY2hpbGQoNW4gKyA1KTpub3QoLmJsYWNrKSAucm93IC5jb250ZW50IC5saW5rIC5idXR0b24sIHNlY3Rpb24uc2lnbnBvc3Qud2hpdGUgLnJvdyAuY29udGVudCAubGluayAud3AtYmxvY2stYnV0dG9uIC53cC1ibG9jay1idXR0b25fX2xpbmssIC53cC1ibG9jay1idXR0b24gc2VjdGlvbi5zaWducG9zdC53aGl0ZSAucm93IC5jb250ZW50IC5saW5rIC53cC1ibG9jay1idXR0b25fX2xpbmssIHNlY3Rpb24ubmV3cy5ibG9nIC5uZXdzIHNlY3Rpb24uc2lnbnBvc3QuYXJ0aWNsZTpudGgtY2hpbGQoNW4gKyAxKTpub3QoLmJsYWNrKSAucm93IC5jb250ZW50IC5saW5rIC53cC1ibG9jay1idXR0b24gLndwLWJsb2NrLWJ1dHRvbl9fbGluaywgLndwLWJsb2NrLWJ1dHRvbiBzZWN0aW9uLm5ld3MuYmxvZyAubmV3cyBzZWN0aW9uLnNpZ25wb3N0LmFydGljbGU6bnRoLWNoaWxkKDVuICsgMSk6bm90KC5ibGFjaykgLnJvdyAuY29udGVudCAubGluayAud3AtYmxvY2stYnV0dG9uX19saW5rLCBzZWN0aW9uLm5ld3MuYmxvZyAubmV3cyBzZWN0aW9uLnNpZ25wb3N0LmFydGljbGU6bnRoLWNoaWxkKDVuICsgNSk6bm90KC5ibGFjaykgLnJvdyAuY29udGVudCAubGluayAud3AtYmxvY2stYnV0dG9uIC53cC1ibG9jay1idXR0b25fX2xpbmssIC53cC1ibG9jay1idXR0b24gc2VjdGlvbi5uZXdzLmJsb2cgLm5ld3Mgc2VjdGlvbi5zaWducG9zdC5hcnRpY2xlOm50aC1jaGlsZCg1biArIDUpOm5vdCguYmxhY2spIC5yb3cgLmNvbnRlbnQgLmxpbmsgLndwLWJsb2NrLWJ1dHRvbl9fbGluaywgc2VjdGlvbi5zaWducG9zdC53aGl0ZSAucm93IC5jb250ZW50IC5saW5rIHNlY3Rpb24ucHJvbW8tbGlzdGluZy5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYSwgc2VjdGlvbi5wcm9tby1saXN0aW5nLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBzZWN0aW9uLnNpZ25wb3N0LndoaXRlIC5yb3cgLmNvbnRlbnQgLmxpbmsgYSwgc2VjdGlvbi5uZXdzLmJsb2cgLm5ld3Mgc2VjdGlvbi5zaWducG9zdC5hcnRpY2xlOm50aC1jaGlsZCg1biArIDEpOm5vdCguYmxhY2spIC5yb3cgLmNvbnRlbnQgLmxpbmsgc2VjdGlvbi5wcm9tby1saXN0aW5nLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLCBzZWN0aW9uLnByb21vLWxpc3RpbmcuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIHNlY3Rpb24ubmV3cy5ibG9nIC5uZXdzIHNlY3Rpb24uc2lnbnBvc3QuYXJ0aWNsZTpudGgtY2hpbGQoNW4gKyAxKTpub3QoLmJsYWNrKSAucm93IC5jb250ZW50IC5saW5rIGEsIHNlY3Rpb24ubmV3cy5ibG9nIC5uZXdzIHNlY3Rpb24uc2lnbnBvc3QuYXJ0aWNsZTpudGgtY2hpbGQoNW4gKyA1KTpub3QoLmJsYWNrKSAucm93IC5jb250ZW50IC5saW5rIHNlY3Rpb24ucHJvbW8tbGlzdGluZy5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYSwgc2VjdGlvbi5wcm9tby1saXN0aW5nLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBzZWN0aW9uLm5ld3MuYmxvZyAubmV3cyBzZWN0aW9uLnNpZ25wb3N0LmFydGljbGU6bnRoLWNoaWxkKDVuICsgNSk6bm90KC5ibGFjaykgLnJvdyAuY29udGVudCAubGluayBhLCBzZWN0aW9uLnNpZ25wb3N0LndoaXRlIC5yb3cgLmNvbnRlbnQgLmxpbmsgc2VjdGlvbi5wcm9tby1saXN0aW5nLTIuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEsIHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBzZWN0aW9uLnNpZ25wb3N0LndoaXRlIC5yb3cgLmNvbnRlbnQgLmxpbmsgYSwgc2VjdGlvbi5uZXdzLmJsb2cgLm5ld3Mgc2VjdGlvbi5zaWducG9zdC5hcnRpY2xlOm50aC1jaGlsZCg1biArIDEpOm5vdCguYmxhY2spIC5yb3cgLmNvbnRlbnQgLmxpbmsgc2VjdGlvbi5wcm9tby1saXN0aW5nLTIuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEsIHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBzZWN0aW9uLm5ld3MuYmxvZyAubmV3cyBzZWN0aW9uLnNpZ25wb3N0LmFydGljbGU6bnRoLWNoaWxkKDVuICsgMSk6bm90KC5ibGFjaykgLnJvdyAuY29udGVudCAubGluayBhLCBzZWN0aW9uLm5ld3MuYmxvZyAubmV3cyBzZWN0aW9uLnNpZ25wb3N0LmFydGljbGU6bnRoLWNoaWxkKDVuICsgNSk6bm90KC5ibGFjaykgLnJvdyAuY29udGVudCAubGluayBzZWN0aW9uLnByb21vLWxpc3RpbmctMi5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYSwgc2VjdGlvbi5wcm9tby1saXN0aW5nLTIuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIHNlY3Rpb24ubmV3cy5ibG9nIC5uZXdzIHNlY3Rpb24uc2lnbnBvc3QuYXJ0aWNsZTpudGgtY2hpbGQoNW4gKyA1KTpub3QoLmJsYWNrKSAucm93IC5jb250ZW50IC5saW5rIGEge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZWZlZmU7XG4gICAgY29sb3I6ICM2ODAwZDI7IH1cbiAgICBzZWN0aW9uLnNpZ25wb3N0LmxpZ2h0IC5yb3cgLmNvbnRlbnQgLmxpbmsgLmJ1dHRvbjpob3Zlciwgc2VjdGlvbi5zaWducG9zdC5saWdodCAucm93IC5jb250ZW50IC5saW5rIC53cC1ibG9jay1idXR0b24gLndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3ZlciwgLndwLWJsb2NrLWJ1dHRvbiBzZWN0aW9uLnNpZ25wb3N0LmxpZ2h0IC5yb3cgLmNvbnRlbnQgLmxpbmsgLndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3Zlciwgc2VjdGlvbi5zaWducG9zdC5saWdodCAucm93IC5jb250ZW50IC5saW5rIHNlY3Rpb24ucHJvbW8tbGlzdGluZy5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYTpob3Zlciwgc2VjdGlvbi5wcm9tby1saXN0aW5nLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBzZWN0aW9uLnNpZ25wb3N0LmxpZ2h0IC5yb3cgLmNvbnRlbnQgLmxpbmsgYTpob3Zlciwgc2VjdGlvbi5zaWducG9zdC5saWdodCAucm93IC5jb250ZW50IC5saW5rIHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhOmhvdmVyLCBzZWN0aW9uLnByb21vLWxpc3RpbmctMi5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgc2VjdGlvbi5zaWducG9zdC5saWdodCAucm93IC5jb250ZW50IC5saW5rIGE6aG92ZXIsIHNlY3Rpb24uc2lnbnBvc3Qud2hpdGUgLnJvdyAuY29udGVudCAubGluayAuYnV0dG9uOmhvdmVyLCBzZWN0aW9uLm5ld3MuYmxvZyAubmV3cyBzZWN0aW9uLnNpZ25wb3N0LmFydGljbGU6bnRoLWNoaWxkKDVuICsgMSk6bm90KC5ibGFjaykgLnJvdyAuY29udGVudCAubGluayAuYnV0dG9uOmhvdmVyLCBzZWN0aW9uLm5ld3MuYmxvZyAubmV3cyBzZWN0aW9uLnNpZ25wb3N0LmFydGljbGU6bnRoLWNoaWxkKDVuICsgNSk6bm90KC5ibGFjaykgLnJvdyAuY29udGVudCAubGluayAuYnV0dG9uOmhvdmVyLCBzZWN0aW9uLnNpZ25wb3N0LndoaXRlIC5yb3cgLmNvbnRlbnQgLmxpbmsgLndwLWJsb2NrLWJ1dHRvbiAud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLCAud3AtYmxvY2stYnV0dG9uIHNlY3Rpb24uc2lnbnBvc3Qud2hpdGUgLnJvdyAuY29udGVudCAubGluayAud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLCBzZWN0aW9uLm5ld3MuYmxvZyAubmV3cyBzZWN0aW9uLnNpZ25wb3N0LmFydGljbGU6bnRoLWNoaWxkKDVuICsgMSk6bm90KC5ibGFjaykgLnJvdyAuY29udGVudCAubGluayAud3AtYmxvY2stYnV0dG9uIC53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIsIC53cC1ibG9jay1idXR0b24gc2VjdGlvbi5uZXdzLmJsb2cgLm5ld3Mgc2VjdGlvbi5zaWducG9zdC5hcnRpY2xlOm50aC1jaGlsZCg1biArIDEpOm5vdCguYmxhY2spIC5yb3cgLmNvbnRlbnQgLmxpbmsgLndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3Zlciwgc2VjdGlvbi5uZXdzLmJsb2cgLm5ld3Mgc2VjdGlvbi5zaWducG9zdC5hcnRpY2xlOm50aC1jaGlsZCg1biArIDUpOm5vdCguYmxhY2spIC5yb3cgLmNvbnRlbnQgLmxpbmsgLndwLWJsb2NrLWJ1dHRvbiAud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLCAud3AtYmxvY2stYnV0dG9uIHNlY3Rpb24ubmV3cy5ibG9nIC5uZXdzIHNlY3Rpb24uc2lnbnBvc3QuYXJ0aWNsZTpudGgtY2hpbGQoNW4gKyA1KTpub3QoLmJsYWNrKSAucm93IC5jb250ZW50IC5saW5rIC53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIsIHNlY3Rpb24uc2lnbnBvc3Qud2hpdGUgLnJvdyAuY29udGVudCAubGluayBzZWN0aW9uLnByb21vLWxpc3RpbmcuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGE6aG92ZXIsIHNlY3Rpb24ucHJvbW8tbGlzdGluZy5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgc2VjdGlvbi5zaWducG9zdC53aGl0ZSAucm93IC5jb250ZW50IC5saW5rIGE6aG92ZXIsIHNlY3Rpb24ubmV3cy5ibG9nIC5uZXdzIHNlY3Rpb24uc2lnbnBvc3QuYXJ0aWNsZTpudGgtY2hpbGQoNW4gKyAxKTpub3QoLmJsYWNrKSAucm93IC5jb250ZW50IC5saW5rIHNlY3Rpb24ucHJvbW8tbGlzdGluZy5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYTpob3Zlciwgc2VjdGlvbi5wcm9tby1saXN0aW5nLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBzZWN0aW9uLm5ld3MuYmxvZyAubmV3cyBzZWN0aW9uLnNpZ25wb3N0LmFydGljbGU6bnRoLWNoaWxkKDVuICsgMSk6bm90KC5ibGFjaykgLnJvdyAuY29udGVudCAubGluayBhOmhvdmVyLCBzZWN0aW9uLm5ld3MuYmxvZyAubmV3cyBzZWN0aW9uLnNpZ25wb3N0LmFydGljbGU6bnRoLWNoaWxkKDVuICsgNSk6bm90KC5ibGFjaykgLnJvdyAuY29udGVudCAubGluayBzZWN0aW9uLnByb21vLWxpc3RpbmcuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGE6aG92ZXIsIHNlY3Rpb24ucHJvbW8tbGlzdGluZy5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgc2VjdGlvbi5uZXdzLmJsb2cgLm5ld3Mgc2VjdGlvbi5zaWducG9zdC5hcnRpY2xlOm50aC1jaGlsZCg1biArIDUpOm5vdCguYmxhY2spIC5yb3cgLmNvbnRlbnQgLmxpbmsgYTpob3Zlciwgc2VjdGlvbi5zaWducG9zdC53aGl0ZSAucm93IC5jb250ZW50IC5saW5rIHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhOmhvdmVyLCBzZWN0aW9uLnByb21vLWxpc3RpbmctMi5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgc2VjdGlvbi5zaWducG9zdC53aGl0ZSAucm93IC5jb250ZW50IC5saW5rIGE6aG92ZXIsIHNlY3Rpb24ubmV3cy5ibG9nIC5uZXdzIHNlY3Rpb24uc2lnbnBvc3QuYXJ0aWNsZTpudGgtY2hpbGQoNW4gKyAxKTpub3QoLmJsYWNrKSAucm93IC5jb250ZW50IC5saW5rIHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhOmhvdmVyLCBzZWN0aW9uLnByb21vLWxpc3RpbmctMi5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgc2VjdGlvbi5uZXdzLmJsb2cgLm5ld3Mgc2VjdGlvbi5zaWducG9zdC5hcnRpY2xlOm50aC1jaGlsZCg1biArIDEpOm5vdCguYmxhY2spIC5yb3cgLmNvbnRlbnQgLmxpbmsgYTpob3Zlciwgc2VjdGlvbi5uZXdzLmJsb2cgLm5ld3Mgc2VjdGlvbi5zaWducG9zdC5hcnRpY2xlOm50aC1jaGlsZCg1biArIDUpOm5vdCguYmxhY2spIC5yb3cgLmNvbnRlbnQgLmxpbmsgc2VjdGlvbi5wcm9tby1saXN0aW5nLTIuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGE6aG92ZXIsIHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBzZWN0aW9uLm5ld3MuYmxvZyAubmV3cyBzZWN0aW9uLnNpZ25wb3N0LmFydGljbGU6bnRoLWNoaWxkKDVuICsgNSk6bm90KC5ibGFjaykgLnJvdyAuY29udGVudCAubGluayBhOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmYmUyMDA7IH1cbiAgICBzZWN0aW9uLnNpZ25wb3N0LmxpZ2h0IC5yb3cgLmNvbnRlbnQgLmxpbmsgLmJ1dHRvbjpmaXJzdC1jaGlsZCwgc2VjdGlvbi5zaWducG9zdC5saWdodCAucm93IC5jb250ZW50IC5saW5rIC53cC1ibG9jay1idXR0b24gLndwLWJsb2NrLWJ1dHRvbl9fbGluazpmaXJzdC1jaGlsZCwgLndwLWJsb2NrLWJ1dHRvbiBzZWN0aW9uLnNpZ25wb3N0LmxpZ2h0IC5yb3cgLmNvbnRlbnQgLmxpbmsgLndwLWJsb2NrLWJ1dHRvbl9fbGluazpmaXJzdC1jaGlsZCwgc2VjdGlvbi5zaWducG9zdC5saWdodCAucm93IC5jb250ZW50IC5saW5rIHNlY3Rpb24ucHJvbW8tbGlzdGluZy5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYTpmaXJzdC1jaGlsZCwgc2VjdGlvbi5wcm9tby1saXN0aW5nLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBzZWN0aW9uLnNpZ25wb3N0LmxpZ2h0IC5yb3cgLmNvbnRlbnQgLmxpbmsgYTpmaXJzdC1jaGlsZCwgc2VjdGlvbi5zaWducG9zdC5saWdodCAucm93IC5jb250ZW50IC5saW5rIHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhOmZpcnN0LWNoaWxkLCBzZWN0aW9uLnByb21vLWxpc3RpbmctMi5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgc2VjdGlvbi5zaWducG9zdC5saWdodCAucm93IC5jb250ZW50IC5saW5rIGE6Zmlyc3QtY2hpbGQsIHNlY3Rpb24uc2lnbnBvc3QubGlnaHQgLnJvdyAuY29udGVudCAubGluayAuYnV0dG9uOmxhc3QtY2hpbGQsIHNlY3Rpb24uc2lnbnBvc3QubGlnaHQgLnJvdyAuY29udGVudCAubGluayAud3AtYmxvY2stYnV0dG9uIC53cC1ibG9jay1idXR0b25fX2xpbms6bGFzdC1jaGlsZCwgLndwLWJsb2NrLWJ1dHRvbiBzZWN0aW9uLnNpZ25wb3N0LmxpZ2h0IC5yb3cgLmNvbnRlbnQgLmxpbmsgLndwLWJsb2NrLWJ1dHRvbl9fbGluazpsYXN0LWNoaWxkLCBzZWN0aW9uLnNpZ25wb3N0LmxpZ2h0IC5yb3cgLmNvbnRlbnQgLmxpbmsgc2VjdGlvbi5wcm9tby1saXN0aW5nLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhOmxhc3QtY2hpbGQsIHNlY3Rpb24ucHJvbW8tbGlzdGluZy5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgc2VjdGlvbi5zaWducG9zdC5saWdodCAucm93IC5jb250ZW50IC5saW5rIGE6bGFzdC1jaGlsZCwgc2VjdGlvbi5zaWducG9zdC5saWdodCAucm93IC5jb250ZW50IC5saW5rIHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhOmxhc3QtY2hpbGQsIHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBzZWN0aW9uLnNpZ25wb3N0LmxpZ2h0IC5yb3cgLmNvbnRlbnQgLmxpbmsgYTpsYXN0LWNoaWxkLCBzZWN0aW9uLnNpZ25wb3N0LndoaXRlIC5yb3cgLmNvbnRlbnQgLmxpbmsgLmJ1dHRvbjpmaXJzdC1jaGlsZCwgc2VjdGlvbi5uZXdzLmJsb2cgLm5ld3Mgc2VjdGlvbi5zaWducG9zdC5hcnRpY2xlOm50aC1jaGlsZCg1biArIDEpOm5vdCguYmxhY2spIC5yb3cgLmNvbnRlbnQgLmxpbmsgLmJ1dHRvbjpmaXJzdC1jaGlsZCwgc2VjdGlvbi5uZXdzLmJsb2cgLm5ld3Mgc2VjdGlvbi5zaWducG9zdC5hcnRpY2xlOm50aC1jaGlsZCg1biArIDUpOm5vdCguYmxhY2spIC5yb3cgLmNvbnRlbnQgLmxpbmsgLmJ1dHRvbjpmaXJzdC1jaGlsZCwgc2VjdGlvbi5zaWducG9zdC53aGl0ZSAucm93IC5jb250ZW50IC5saW5rIC53cC1ibG9jay1idXR0b24gLndwLWJsb2NrLWJ1dHRvbl9fbGluazpmaXJzdC1jaGlsZCwgLndwLWJsb2NrLWJ1dHRvbiBzZWN0aW9uLnNpZ25wb3N0LndoaXRlIC5yb3cgLmNvbnRlbnQgLmxpbmsgLndwLWJsb2NrLWJ1dHRvbl9fbGluazpmaXJzdC1jaGlsZCwgc2VjdGlvbi5uZXdzLmJsb2cgLm5ld3Mgc2VjdGlvbi5zaWducG9zdC5hcnRpY2xlOm50aC1jaGlsZCg1biArIDEpOm5vdCguYmxhY2spIC5yb3cgLmNvbnRlbnQgLmxpbmsgLndwLWJsb2NrLWJ1dHRvbiAud3AtYmxvY2stYnV0dG9uX19saW5rOmZpcnN0LWNoaWxkLCAud3AtYmxvY2stYnV0dG9uIHNlY3Rpb24ubmV3cy5ibG9nIC5uZXdzIHNlY3Rpb24uc2lnbnBvc3QuYXJ0aWNsZTpudGgtY2hpbGQoNW4gKyAxKTpub3QoLmJsYWNrKSAucm93IC5jb250ZW50IC5saW5rIC53cC1ibG9jay1idXR0b25fX2xpbms6Zmlyc3QtY2hpbGQsIHNlY3Rpb24ubmV3cy5ibG9nIC5uZXdzIHNlY3Rpb24uc2lnbnBvc3QuYXJ0aWNsZTpudGgtY2hpbGQoNW4gKyA1KTpub3QoLmJsYWNrKSAucm93IC5jb250ZW50IC5saW5rIC53cC1ibG9jay1idXR0b24gLndwLWJsb2NrLWJ1dHRvbl9fbGluazpmaXJzdC1jaGlsZCwgLndwLWJsb2NrLWJ1dHRvbiBzZWN0aW9uLm5ld3MuYmxvZyAubmV3cyBzZWN0aW9uLnNpZ25wb3N0LmFydGljbGU6bnRoLWNoaWxkKDVuICsgNSk6bm90KC5ibGFjaykgLnJvdyAuY29udGVudCAubGluayAud3AtYmxvY2stYnV0dG9uX19saW5rOmZpcnN0LWNoaWxkLCBzZWN0aW9uLnNpZ25wb3N0LndoaXRlIC5yb3cgLmNvbnRlbnQgLmxpbmsgc2VjdGlvbi5wcm9tby1saXN0aW5nLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhOmZpcnN0LWNoaWxkLCBzZWN0aW9uLnByb21vLWxpc3RpbmcuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIHNlY3Rpb24uc2lnbnBvc3Qud2hpdGUgLnJvdyAuY29udGVudCAubGluayBhOmZpcnN0LWNoaWxkLCBzZWN0aW9uLm5ld3MuYmxvZyAubmV3cyBzZWN0aW9uLnNpZ25wb3N0LmFydGljbGU6bnRoLWNoaWxkKDVuICsgMSk6bm90KC5ibGFjaykgLnJvdyAuY29udGVudCAubGluayBzZWN0aW9uLnByb21vLWxpc3RpbmcuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGE6Zmlyc3QtY2hpbGQsIHNlY3Rpb24ucHJvbW8tbGlzdGluZy5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgc2VjdGlvbi5uZXdzLmJsb2cgLm5ld3Mgc2VjdGlvbi5zaWducG9zdC5hcnRpY2xlOm50aC1jaGlsZCg1biArIDEpOm5vdCguYmxhY2spIC5yb3cgLmNvbnRlbnQgLmxpbmsgYTpmaXJzdC1jaGlsZCwgc2VjdGlvbi5uZXdzLmJsb2cgLm5ld3Mgc2VjdGlvbi5zaWducG9zdC5hcnRpY2xlOm50aC1jaGlsZCg1biArIDUpOm5vdCguYmxhY2spIC5yb3cgLmNvbnRlbnQgLmxpbmsgc2VjdGlvbi5wcm9tby1saXN0aW5nLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhOmZpcnN0LWNoaWxkLCBzZWN0aW9uLnByb21vLWxpc3RpbmcuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIHNlY3Rpb24ubmV3cy5ibG9nIC5uZXdzIHNlY3Rpb24uc2lnbnBvc3QuYXJ0aWNsZTpudGgtY2hpbGQoNW4gKyA1KTpub3QoLmJsYWNrKSAucm93IC5jb250ZW50IC5saW5rIGE6Zmlyc3QtY2hpbGQsIHNlY3Rpb24uc2lnbnBvc3Qud2hpdGUgLnJvdyAuY29udGVudCAubGluayBzZWN0aW9uLnByb21vLWxpc3RpbmctMi5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYTpmaXJzdC1jaGlsZCwgc2VjdGlvbi5wcm9tby1saXN0aW5nLTIuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIHNlY3Rpb24uc2lnbnBvc3Qud2hpdGUgLnJvdyAuY29udGVudCAubGluayBhOmZpcnN0LWNoaWxkLCBzZWN0aW9uLm5ld3MuYmxvZyAubmV3cyBzZWN0aW9uLnNpZ25wb3N0LmFydGljbGU6bnRoLWNoaWxkKDVuICsgMSk6bm90KC5ibGFjaykgLnJvdyAuY29udGVudCAubGluayBzZWN0aW9uLnByb21vLWxpc3RpbmctMi5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYTpmaXJzdC1jaGlsZCwgc2VjdGlvbi5wcm9tby1saXN0aW5nLTIuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIHNlY3Rpb24ubmV3cy5ibG9nIC5uZXdzIHNlY3Rpb24uc2lnbnBvc3QuYXJ0aWNsZTpudGgtY2hpbGQoNW4gKyAxKTpub3QoLmJsYWNrKSAucm93IC5jb250ZW50IC5saW5rIGE6Zmlyc3QtY2hpbGQsIHNlY3Rpb24ubmV3cy5ibG9nIC5uZXdzIHNlY3Rpb24uc2lnbnBvc3QuYXJ0aWNsZTpudGgtY2hpbGQoNW4gKyA1KTpub3QoLmJsYWNrKSAucm93IC5jb250ZW50IC5saW5rIHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhOmZpcnN0LWNoaWxkLCBzZWN0aW9uLnByb21vLWxpc3RpbmctMi5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgc2VjdGlvbi5uZXdzLmJsb2cgLm5ld3Mgc2VjdGlvbi5zaWducG9zdC5hcnRpY2xlOm50aC1jaGlsZCg1biArIDUpOm5vdCguYmxhY2spIC5yb3cgLmNvbnRlbnQgLmxpbmsgYTpmaXJzdC1jaGlsZCwgc2VjdGlvbi5zaWducG9zdC53aGl0ZSAucm93IC5jb250ZW50IC5saW5rIC5idXR0b246bGFzdC1jaGlsZCwgc2VjdGlvbi5uZXdzLmJsb2cgLm5ld3Mgc2VjdGlvbi5zaWducG9zdC5hcnRpY2xlOm50aC1jaGlsZCg1biArIDEpOm5vdCguYmxhY2spIC5yb3cgLmNvbnRlbnQgLmxpbmsgLmJ1dHRvbjpsYXN0LWNoaWxkLCBzZWN0aW9uLm5ld3MuYmxvZyAubmV3cyBzZWN0aW9uLnNpZ25wb3N0LmFydGljbGU6bnRoLWNoaWxkKDVuICsgNSk6bm90KC5ibGFjaykgLnJvdyAuY29udGVudCAubGluayAuYnV0dG9uOmxhc3QtY2hpbGQsIHNlY3Rpb24uc2lnbnBvc3Qud2hpdGUgLnJvdyAuY29udGVudCAubGluayAud3AtYmxvY2stYnV0dG9uIC53cC1ibG9jay1idXR0b25fX2xpbms6bGFzdC1jaGlsZCwgLndwLWJsb2NrLWJ1dHRvbiBzZWN0aW9uLnNpZ25wb3N0LndoaXRlIC5yb3cgLmNvbnRlbnQgLmxpbmsgLndwLWJsb2NrLWJ1dHRvbl9fbGluazpsYXN0LWNoaWxkLCBzZWN0aW9uLm5ld3MuYmxvZyAubmV3cyBzZWN0aW9uLnNpZ25wb3N0LmFydGljbGU6bnRoLWNoaWxkKDVuICsgMSk6bm90KC5ibGFjaykgLnJvdyAuY29udGVudCAubGluayAud3AtYmxvY2stYnV0dG9uIC53cC1ibG9jay1idXR0b25fX2xpbms6bGFzdC1jaGlsZCwgLndwLWJsb2NrLWJ1dHRvbiBzZWN0aW9uLm5ld3MuYmxvZyAubmV3cyBzZWN0aW9uLnNpZ25wb3N0LmFydGljbGU6bnRoLWNoaWxkKDVuICsgMSk6bm90KC5ibGFjaykgLnJvdyAuY29udGVudCAubGluayAud3AtYmxvY2stYnV0dG9uX19saW5rOmxhc3QtY2hpbGQsIHNlY3Rpb24ubmV3cy5ibG9nIC5uZXdzIHNlY3Rpb24uc2lnbnBvc3QuYXJ0aWNsZTpudGgtY2hpbGQoNW4gKyA1KTpub3QoLmJsYWNrKSAucm93IC5jb250ZW50IC5saW5rIC53cC1ibG9jay1idXR0b24gLndwLWJsb2NrLWJ1dHRvbl9fbGluazpsYXN0LWNoaWxkLCAud3AtYmxvY2stYnV0dG9uIHNlY3Rpb24ubmV3cy5ibG9nIC5uZXdzIHNlY3Rpb24uc2lnbnBvc3QuYXJ0aWNsZTpudGgtY2hpbGQoNW4gKyA1KTpub3QoLmJsYWNrKSAucm93IC5jb250ZW50IC5saW5rIC53cC1ibG9jay1idXR0b25fX2xpbms6bGFzdC1jaGlsZCwgc2VjdGlvbi5zaWducG9zdC53aGl0ZSAucm93IC5jb250ZW50IC5saW5rIHNlY3Rpb24ucHJvbW8tbGlzdGluZy5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYTpsYXN0LWNoaWxkLCBzZWN0aW9uLnByb21vLWxpc3RpbmcuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIHNlY3Rpb24uc2lnbnBvc3Qud2hpdGUgLnJvdyAuY29udGVudCAubGluayBhOmxhc3QtY2hpbGQsIHNlY3Rpb24ubmV3cy5ibG9nIC5uZXdzIHNlY3Rpb24uc2lnbnBvc3QuYXJ0aWNsZTpudGgtY2hpbGQoNW4gKyAxKTpub3QoLmJsYWNrKSAucm93IC5jb250ZW50IC5saW5rIHNlY3Rpb24ucHJvbW8tbGlzdGluZy5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYTpsYXN0LWNoaWxkLCBzZWN0aW9uLnByb21vLWxpc3RpbmcuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIHNlY3Rpb24ubmV3cy5ibG9nIC5uZXdzIHNlY3Rpb24uc2lnbnBvc3QuYXJ0aWNsZTpudGgtY2hpbGQoNW4gKyAxKTpub3QoLmJsYWNrKSAucm93IC5jb250ZW50IC5saW5rIGE6bGFzdC1jaGlsZCwgc2VjdGlvbi5uZXdzLmJsb2cgLm5ld3Mgc2VjdGlvbi5zaWducG9zdC5hcnRpY2xlOm50aC1jaGlsZCg1biArIDUpOm5vdCguYmxhY2spIC5yb3cgLmNvbnRlbnQgLmxpbmsgc2VjdGlvbi5wcm9tby1saXN0aW5nLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhOmxhc3QtY2hpbGQsIHNlY3Rpb24ucHJvbW8tbGlzdGluZy5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgc2VjdGlvbi5uZXdzLmJsb2cgLm5ld3Mgc2VjdGlvbi5zaWducG9zdC5hcnRpY2xlOm50aC1jaGlsZCg1biArIDUpOm5vdCguYmxhY2spIC5yb3cgLmNvbnRlbnQgLmxpbmsgYTpsYXN0LWNoaWxkLCBzZWN0aW9uLnNpZ25wb3N0LndoaXRlIC5yb3cgLmNvbnRlbnQgLmxpbmsgc2VjdGlvbi5wcm9tby1saXN0aW5nLTIuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGE6bGFzdC1jaGlsZCwgc2VjdGlvbi5wcm9tby1saXN0aW5nLTIuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIHNlY3Rpb24uc2lnbnBvc3Qud2hpdGUgLnJvdyAuY29udGVudCAubGluayBhOmxhc3QtY2hpbGQsIHNlY3Rpb24ubmV3cy5ibG9nIC5uZXdzIHNlY3Rpb24uc2lnbnBvc3QuYXJ0aWNsZTpudGgtY2hpbGQoNW4gKyAxKTpub3QoLmJsYWNrKSAucm93IC5jb250ZW50IC5saW5rIHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhOmxhc3QtY2hpbGQsIHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBzZWN0aW9uLm5ld3MuYmxvZyAubmV3cyBzZWN0aW9uLnNpZ25wb3N0LmFydGljbGU6bnRoLWNoaWxkKDVuICsgMSk6bm90KC5ibGFjaykgLnJvdyAuY29udGVudCAubGluayBhOmxhc3QtY2hpbGQsIHNlY3Rpb24ubmV3cy5ibG9nIC5uZXdzIHNlY3Rpb24uc2lnbnBvc3QuYXJ0aWNsZTpudGgtY2hpbGQoNW4gKyA1KTpub3QoLmJsYWNrKSAucm93IC5jb250ZW50IC5saW5rIHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhOmxhc3QtY2hpbGQsIHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBzZWN0aW9uLm5ld3MuYmxvZyAubmV3cyBzZWN0aW9uLnNpZ25wb3N0LmFydGljbGU6bnRoLWNoaWxkKDVuICsgNSk6bm90KC5ibGFjaykgLnJvdyAuY29udGVudCAubGluayBhOmxhc3QtY2hpbGQge1xuICAgICAgYmFja2dyb3VuZDogI2ZlZmVmZTtcbiAgICAgIGNvbG9yOiAjNjgwMGQyOyB9XG4gICAgICBzZWN0aW9uLnNpZ25wb3N0LmxpZ2h0IC5yb3cgLmNvbnRlbnQgLmxpbmsgLmJ1dHRvbjpmaXJzdC1jaGlsZDpob3Zlciwgc2VjdGlvbi5zaWducG9zdC5saWdodCAucm93IC5jb250ZW50IC5saW5rIC53cC1ibG9jay1idXR0b24gLndwLWJsb2NrLWJ1dHRvbl9fbGluazpmaXJzdC1jaGlsZDpob3ZlciwgLndwLWJsb2NrLWJ1dHRvbiBzZWN0aW9uLnNpZ25wb3N0LmxpZ2h0IC5yb3cgLmNvbnRlbnQgLmxpbmsgLndwLWJsb2NrLWJ1dHRvbl9fbGluazpmaXJzdC1jaGlsZDpob3Zlciwgc2VjdGlvbi5zaWducG9zdC5saWdodCAucm93IC5jb250ZW50IC5saW5rIHNlY3Rpb24ucHJvbW8tbGlzdGluZy5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYTpmaXJzdC1jaGlsZDpob3Zlciwgc2VjdGlvbi5wcm9tby1saXN0aW5nLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBzZWN0aW9uLnNpZ25wb3N0LmxpZ2h0IC5yb3cgLmNvbnRlbnQgLmxpbmsgYTpmaXJzdC1jaGlsZDpob3Zlciwgc2VjdGlvbi5zaWducG9zdC5saWdodCAucm93IC5jb250ZW50IC5saW5rIHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhOmZpcnN0LWNoaWxkOmhvdmVyLCBzZWN0aW9uLnByb21vLWxpc3RpbmctMi5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgc2VjdGlvbi5zaWducG9zdC5saWdodCAucm93IC5jb250ZW50IC5saW5rIGE6Zmlyc3QtY2hpbGQ6aG92ZXIsIHNlY3Rpb24uc2lnbnBvc3QubGlnaHQgLnJvdyAuY29udGVudCAubGluayAuYnV0dG9uOmxhc3QtY2hpbGQ6aG92ZXIsIHNlY3Rpb24uc2lnbnBvc3QubGlnaHQgLnJvdyAuY29udGVudCAubGluayAud3AtYmxvY2stYnV0dG9uIC53cC1ibG9jay1idXR0b25fX2xpbms6bGFzdC1jaGlsZDpob3ZlciwgLndwLWJsb2NrLWJ1dHRvbiBzZWN0aW9uLnNpZ25wb3N0LmxpZ2h0IC5yb3cgLmNvbnRlbnQgLmxpbmsgLndwLWJsb2NrLWJ1dHRvbl9fbGluazpsYXN0LWNoaWxkOmhvdmVyLCBzZWN0aW9uLnNpZ25wb3N0LmxpZ2h0IC5yb3cgLmNvbnRlbnQgLmxpbmsgc2VjdGlvbi5wcm9tby1saXN0aW5nLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhOmxhc3QtY2hpbGQ6aG92ZXIsIHNlY3Rpb24ucHJvbW8tbGlzdGluZy5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgc2VjdGlvbi5zaWducG9zdC5saWdodCAucm93IC5jb250ZW50IC5saW5rIGE6bGFzdC1jaGlsZDpob3Zlciwgc2VjdGlvbi5zaWducG9zdC5saWdodCAucm93IC5jb250ZW50IC5saW5rIHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhOmxhc3QtY2hpbGQ6aG92ZXIsIHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBzZWN0aW9uLnNpZ25wb3N0LmxpZ2h0IC5yb3cgLmNvbnRlbnQgLmxpbmsgYTpsYXN0LWNoaWxkOmhvdmVyLCBzZWN0aW9uLnNpZ25wb3N0LndoaXRlIC5yb3cgLmNvbnRlbnQgLmxpbmsgLmJ1dHRvbjpmaXJzdC1jaGlsZDpob3Zlciwgc2VjdGlvbi5uZXdzLmJsb2cgLm5ld3Mgc2VjdGlvbi5zaWducG9zdC5hcnRpY2xlOm50aC1jaGlsZCg1biArIDEpOm5vdCguYmxhY2spIC5yb3cgLmNvbnRlbnQgLmxpbmsgLmJ1dHRvbjpmaXJzdC1jaGlsZDpob3Zlciwgc2VjdGlvbi5uZXdzLmJsb2cgLm5ld3Mgc2VjdGlvbi5zaWducG9zdC5hcnRpY2xlOm50aC1jaGlsZCg1biArIDUpOm5vdCguYmxhY2spIC5yb3cgLmNvbnRlbnQgLmxpbmsgLmJ1dHRvbjpmaXJzdC1jaGlsZDpob3Zlciwgc2VjdGlvbi5zaWducG9zdC53aGl0ZSAucm93IC5jb250ZW50IC5saW5rIC53cC1ibG9jay1idXR0b24gLndwLWJsb2NrLWJ1dHRvbl9fbGluazpmaXJzdC1jaGlsZDpob3ZlciwgLndwLWJsb2NrLWJ1dHRvbiBzZWN0aW9uLnNpZ25wb3N0LndoaXRlIC5yb3cgLmNvbnRlbnQgLmxpbmsgLndwLWJsb2NrLWJ1dHRvbl9fbGluazpmaXJzdC1jaGlsZDpob3Zlciwgc2VjdGlvbi5uZXdzLmJsb2cgLm5ld3Mgc2VjdGlvbi5zaWducG9zdC5hcnRpY2xlOm50aC1jaGlsZCg1biArIDEpOm5vdCguYmxhY2spIC5yb3cgLmNvbnRlbnQgLmxpbmsgLndwLWJsb2NrLWJ1dHRvbiAud3AtYmxvY2stYnV0dG9uX19saW5rOmZpcnN0LWNoaWxkOmhvdmVyLCAud3AtYmxvY2stYnV0dG9uIHNlY3Rpb24ubmV3cy5ibG9nIC5uZXdzIHNlY3Rpb24uc2lnbnBvc3QuYXJ0aWNsZTpudGgtY2hpbGQoNW4gKyAxKTpub3QoLmJsYWNrKSAucm93IC5jb250ZW50IC5saW5rIC53cC1ibG9jay1idXR0b25fX2xpbms6Zmlyc3QtY2hpbGQ6aG92ZXIsIHNlY3Rpb24ubmV3cy5ibG9nIC5uZXdzIHNlY3Rpb24uc2lnbnBvc3QuYXJ0aWNsZTpudGgtY2hpbGQoNW4gKyA1KTpub3QoLmJsYWNrKSAucm93IC5jb250ZW50IC5saW5rIC53cC1ibG9jay1idXR0b24gLndwLWJsb2NrLWJ1dHRvbl9fbGluazpmaXJzdC1jaGlsZDpob3ZlciwgLndwLWJsb2NrLWJ1dHRvbiBzZWN0aW9uLm5ld3MuYmxvZyAubmV3cyBzZWN0aW9uLnNpZ25wb3N0LmFydGljbGU6bnRoLWNoaWxkKDVuICsgNSk6bm90KC5ibGFjaykgLnJvdyAuY29udGVudCAubGluayAud3AtYmxvY2stYnV0dG9uX19saW5rOmZpcnN0LWNoaWxkOmhvdmVyLCBzZWN0aW9uLnNpZ25wb3N0LndoaXRlIC5yb3cgLmNvbnRlbnQgLmxpbmsgc2VjdGlvbi5wcm9tby1saXN0aW5nLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhOmZpcnN0LWNoaWxkOmhvdmVyLCBzZWN0aW9uLnByb21vLWxpc3RpbmcuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIHNlY3Rpb24uc2lnbnBvc3Qud2hpdGUgLnJvdyAuY29udGVudCAubGluayBhOmZpcnN0LWNoaWxkOmhvdmVyLCBzZWN0aW9uLm5ld3MuYmxvZyAubmV3cyBzZWN0aW9uLnNpZ25wb3N0LmFydGljbGU6bnRoLWNoaWxkKDVuICsgMSk6bm90KC5ibGFjaykgLnJvdyAuY29udGVudCAubGluayBzZWN0aW9uLnByb21vLWxpc3RpbmcuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGE6Zmlyc3QtY2hpbGQ6aG92ZXIsIHNlY3Rpb24ucHJvbW8tbGlzdGluZy5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgc2VjdGlvbi5uZXdzLmJsb2cgLm5ld3Mgc2VjdGlvbi5zaWducG9zdC5hcnRpY2xlOm50aC1jaGlsZCg1biArIDEpOm5vdCguYmxhY2spIC5yb3cgLmNvbnRlbnQgLmxpbmsgYTpmaXJzdC1jaGlsZDpob3Zlciwgc2VjdGlvbi5uZXdzLmJsb2cgLm5ld3Mgc2VjdGlvbi5zaWducG9zdC5hcnRpY2xlOm50aC1jaGlsZCg1biArIDUpOm5vdCguYmxhY2spIC5yb3cgLmNvbnRlbnQgLmxpbmsgc2VjdGlvbi5wcm9tby1saXN0aW5nLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhOmZpcnN0LWNoaWxkOmhvdmVyLCBzZWN0aW9uLnByb21vLWxpc3RpbmcuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIHNlY3Rpb24ubmV3cy5ibG9nIC5uZXdzIHNlY3Rpb24uc2lnbnBvc3QuYXJ0aWNsZTpudGgtY2hpbGQoNW4gKyA1KTpub3QoLmJsYWNrKSAucm93IC5jb250ZW50IC5saW5rIGE6Zmlyc3QtY2hpbGQ6aG92ZXIsIHNlY3Rpb24uc2lnbnBvc3Qud2hpdGUgLnJvdyAuY29udGVudCAubGluayBzZWN0aW9uLnByb21vLWxpc3RpbmctMi5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYTpmaXJzdC1jaGlsZDpob3Zlciwgc2VjdGlvbi5wcm9tby1saXN0aW5nLTIuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIHNlY3Rpb24uc2lnbnBvc3Qud2hpdGUgLnJvdyAuY29udGVudCAubGluayBhOmZpcnN0LWNoaWxkOmhvdmVyLCBzZWN0aW9uLm5ld3MuYmxvZyAubmV3cyBzZWN0aW9uLnNpZ25wb3N0LmFydGljbGU6bnRoLWNoaWxkKDVuICsgMSk6bm90KC5ibGFjaykgLnJvdyAuY29udGVudCAubGluayBzZWN0aW9uLnByb21vLWxpc3RpbmctMi5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYTpmaXJzdC1jaGlsZDpob3Zlciwgc2VjdGlvbi5wcm9tby1saXN0aW5nLTIuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIHNlY3Rpb24ubmV3cy5ibG9nIC5uZXdzIHNlY3Rpb24uc2lnbnBvc3QuYXJ0aWNsZTpudGgtY2hpbGQoNW4gKyAxKTpub3QoLmJsYWNrKSAucm93IC5jb250ZW50IC5saW5rIGE6Zmlyc3QtY2hpbGQ6aG92ZXIsIHNlY3Rpb24ubmV3cy5ibG9nIC5uZXdzIHNlY3Rpb24uc2lnbnBvc3QuYXJ0aWNsZTpudGgtY2hpbGQoNW4gKyA1KTpub3QoLmJsYWNrKSAucm93IC5jb250ZW50IC5saW5rIHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhOmZpcnN0LWNoaWxkOmhvdmVyLCBzZWN0aW9uLnByb21vLWxpc3RpbmctMi5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgc2VjdGlvbi5uZXdzLmJsb2cgLm5ld3Mgc2VjdGlvbi5zaWducG9zdC5hcnRpY2xlOm50aC1jaGlsZCg1biArIDUpOm5vdCguYmxhY2spIC5yb3cgLmNvbnRlbnQgLmxpbmsgYTpmaXJzdC1jaGlsZDpob3Zlciwgc2VjdGlvbi5zaWducG9zdC53aGl0ZSAucm93IC5jb250ZW50IC5saW5rIC5idXR0b246bGFzdC1jaGlsZDpob3Zlciwgc2VjdGlvbi5uZXdzLmJsb2cgLm5ld3Mgc2VjdGlvbi5zaWducG9zdC5hcnRpY2xlOm50aC1jaGlsZCg1biArIDEpOm5vdCguYmxhY2spIC5yb3cgLmNvbnRlbnQgLmxpbmsgLmJ1dHRvbjpsYXN0LWNoaWxkOmhvdmVyLCBzZWN0aW9uLm5ld3MuYmxvZyAubmV3cyBzZWN0aW9uLnNpZ25wb3N0LmFydGljbGU6bnRoLWNoaWxkKDVuICsgNSk6bm90KC5ibGFjaykgLnJvdyAuY29udGVudCAubGluayAuYnV0dG9uOmxhc3QtY2hpbGQ6aG92ZXIsIHNlY3Rpb24uc2lnbnBvc3Qud2hpdGUgLnJvdyAuY29udGVudCAubGluayAud3AtYmxvY2stYnV0dG9uIC53cC1ibG9jay1idXR0b25fX2xpbms6bGFzdC1jaGlsZDpob3ZlciwgLndwLWJsb2NrLWJ1dHRvbiBzZWN0aW9uLnNpZ25wb3N0LndoaXRlIC5yb3cgLmNvbnRlbnQgLmxpbmsgLndwLWJsb2NrLWJ1dHRvbl9fbGluazpsYXN0LWNoaWxkOmhvdmVyLCBzZWN0aW9uLm5ld3MuYmxvZyAubmV3cyBzZWN0aW9uLnNpZ25wb3N0LmFydGljbGU6bnRoLWNoaWxkKDVuICsgMSk6bm90KC5ibGFjaykgLnJvdyAuY29udGVudCAubGluayAud3AtYmxvY2stYnV0dG9uIC53cC1ibG9jay1idXR0b25fX2xpbms6bGFzdC1jaGlsZDpob3ZlciwgLndwLWJsb2NrLWJ1dHRvbiBzZWN0aW9uLm5ld3MuYmxvZyAubmV3cyBzZWN0aW9uLnNpZ25wb3N0LmFydGljbGU6bnRoLWNoaWxkKDVuICsgMSk6bm90KC5ibGFjaykgLnJvdyAuY29udGVudCAubGluayAud3AtYmxvY2stYnV0dG9uX19saW5rOmxhc3QtY2hpbGQ6aG92ZXIsIHNlY3Rpb24ubmV3cy5ibG9nIC5uZXdzIHNlY3Rpb24uc2lnbnBvc3QuYXJ0aWNsZTpudGgtY2hpbGQoNW4gKyA1KTpub3QoLmJsYWNrKSAucm93IC5jb250ZW50IC5saW5rIC53cC1ibG9jay1idXR0b24gLndwLWJsb2NrLWJ1dHRvbl9fbGluazpsYXN0LWNoaWxkOmhvdmVyLCAud3AtYmxvY2stYnV0dG9uIHNlY3Rpb24ubmV3cy5ibG9nIC5uZXdzIHNlY3Rpb24uc2lnbnBvc3QuYXJ0aWNsZTpudGgtY2hpbGQoNW4gKyA1KTpub3QoLmJsYWNrKSAucm93IC5jb250ZW50IC5saW5rIC53cC1ibG9jay1idXR0b25fX2xpbms6bGFzdC1jaGlsZDpob3Zlciwgc2VjdGlvbi5zaWducG9zdC53aGl0ZSAucm93IC5jb250ZW50IC5saW5rIHNlY3Rpb24ucHJvbW8tbGlzdGluZy5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYTpsYXN0LWNoaWxkOmhvdmVyLCBzZWN0aW9uLnByb21vLWxpc3RpbmcuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIHNlY3Rpb24uc2lnbnBvc3Qud2hpdGUgLnJvdyAuY29udGVudCAubGluayBhOmxhc3QtY2hpbGQ6aG92ZXIsIHNlY3Rpb24ubmV3cy5ibG9nIC5uZXdzIHNlY3Rpb24uc2lnbnBvc3QuYXJ0aWNsZTpudGgtY2hpbGQoNW4gKyAxKTpub3QoLmJsYWNrKSAucm93IC5jb250ZW50IC5saW5rIHNlY3Rpb24ucHJvbW8tbGlzdGluZy5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYTpsYXN0LWNoaWxkOmhvdmVyLCBzZWN0aW9uLnByb21vLWxpc3RpbmcuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIHNlY3Rpb24ubmV3cy5ibG9nIC5uZXdzIHNlY3Rpb24uc2lnbnBvc3QuYXJ0aWNsZTpudGgtY2hpbGQoNW4gKyAxKTpub3QoLmJsYWNrKSAucm93IC5jb250ZW50IC5saW5rIGE6bGFzdC1jaGlsZDpob3Zlciwgc2VjdGlvbi5uZXdzLmJsb2cgLm5ld3Mgc2VjdGlvbi5zaWducG9zdC5hcnRpY2xlOm50aC1jaGlsZCg1biArIDUpOm5vdCguYmxhY2spIC5yb3cgLmNvbnRlbnQgLmxpbmsgc2VjdGlvbi5wcm9tby1saXN0aW5nLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhOmxhc3QtY2hpbGQ6aG92ZXIsIHNlY3Rpb24ucHJvbW8tbGlzdGluZy5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgc2VjdGlvbi5uZXdzLmJsb2cgLm5ld3Mgc2VjdGlvbi5zaWducG9zdC5hcnRpY2xlOm50aC1jaGlsZCg1biArIDUpOm5vdCguYmxhY2spIC5yb3cgLmNvbnRlbnQgLmxpbmsgYTpsYXN0LWNoaWxkOmhvdmVyLCBzZWN0aW9uLnNpZ25wb3N0LndoaXRlIC5yb3cgLmNvbnRlbnQgLmxpbmsgc2VjdGlvbi5wcm9tby1saXN0aW5nLTIuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGE6bGFzdC1jaGlsZDpob3Zlciwgc2VjdGlvbi5wcm9tby1saXN0aW5nLTIuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIHNlY3Rpb24uc2lnbnBvc3Qud2hpdGUgLnJvdyAuY29udGVudCAubGluayBhOmxhc3QtY2hpbGQ6aG92ZXIsIHNlY3Rpb24ubmV3cy5ibG9nIC5uZXdzIHNlY3Rpb24uc2lnbnBvc3QuYXJ0aWNsZTpudGgtY2hpbGQoNW4gKyAxKTpub3QoLmJsYWNrKSAucm93IC5jb250ZW50IC5saW5rIHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhOmxhc3QtY2hpbGQ6aG92ZXIsIHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBzZWN0aW9uLm5ld3MuYmxvZyAubmV3cyBzZWN0aW9uLnNpZ25wb3N0LmFydGljbGU6bnRoLWNoaWxkKDVuICsgMSk6bm90KC5ibGFjaykgLnJvdyAuY29udGVudCAubGluayBhOmxhc3QtY2hpbGQ6aG92ZXIsIHNlY3Rpb24ubmV3cy5ibG9nIC5uZXdzIHNlY3Rpb24uc2lnbnBvc3QuYXJ0aWNsZTpudGgtY2hpbGQoNW4gKyA1KTpub3QoLmJsYWNrKSAucm93IC5jb250ZW50IC5saW5rIHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhOmxhc3QtY2hpbGQ6aG92ZXIsIHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBzZWN0aW9uLm5ld3MuYmxvZyAubmV3cyBzZWN0aW9uLnNpZ25wb3N0LmFydGljbGU6bnRoLWNoaWxkKDVuICsgNSk6bm90KC5ibGFjaykgLnJvdyAuY29udGVudCAubGluayBhOmxhc3QtY2hpbGQ6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmJlMjAwOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICBzZWN0aW9uLnNpZ25wb3N0LnJldmVyc2UubGFyZ2VfaWNvbiAucm93ID4gLmltYWdlIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGxlZnQ6IC04LjMzMzMzJTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICBzZWN0aW9uLnNpZ25wb3N0LnJldmVyc2UgLmJnLWltYWdlOmJlZm9yZSB7XG4gICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHJnYmEoMCwgMCwgMCwgMC42NSkgMCUsIHJnYmEoMCwgMCwgMCwgMCkgODAlKTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICBzZWN0aW9uLnNpZ25wb3N0LnJldmVyc2UuZGFyayAuYmctaW1hZ2U6YmVmb3JlLCBzZWN0aW9uLnNpZ25wb3N0LnJldmVyc2UuYmxhY2sgLmJnLWltYWdlOmJlZm9yZSB7XG4gICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC42NSkgMCUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMCkgODAlKTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgc2VjdGlvbi5zaWducG9zdC5yZXZlcnNlIC5yb3cgPiAuaW1hZ2Uge1xuICAgICAgZmxvYXQ6IHJpZ2h0ICFpbXBvcnRhbnQ7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgc2VjdGlvbi5zaWducG9zdC5yZXZlcnNlIC5yb3cgLmNvbnRlbnQge1xuICAgICAgZmxvYXQ6IGxlZnQgIWltcG9ydGFudDsgfSB9XG4gIHNlY3Rpb24uc2lnbnBvc3QuY3RhIC5yb3cge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47IH1cbiAgICBzZWN0aW9uLnNpZ25wb3N0LmN0YSAucm93OmJlZm9yZSwgc2VjdGlvbi5zaWducG9zdC5jdGEgLnJvdzphZnRlciB7XG4gICAgICBjb250ZW50OiBub25lOyB9XG4gICAgc2VjdGlvbi5zaWducG9zdC5jdGEgLnJvdyA+IC5pbWFnZSB7XG4gICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgc2VjdGlvbi5zaWducG9zdC5jdGEgLnJvdyA+IC5pbWFnZSB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7IH0gfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgICBzZWN0aW9uLnNpZ25wb3N0LmN0YSAucm93ID4gLmltYWdlIHtcbiAgICAgICAgICB3aWR0aDogNTAlOyB9IH1cbiAgICAgIHNlY3Rpb24uc2lnbnBvc3QuY3RhIC5yb3cgPiAuaW1hZ2UgaW1nLnNpemVkIHtcbiAgICAgICAgdHJhbnNmb3JtOiBub25lOyB9XG4gICAgICBzZWN0aW9uLnNpZ25wb3N0LmN0YSAucm93ID4gLmltYWdlLnNpemVkIGltZyB7XG4gICAgICAgIHRyYW5zZm9ybTogbm9uZTsgfVxuICBzZWN0aW9uLnNpZ25wb3N0LnJldmVyc2UgLnJvdyB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlOyB9XG5cbi5zaWRlYmFyIHNlY3Rpb24uc2lnbnBvc3QuY3RhIC5iZy1pbWFnZSB7XG4gIG1pbi1oZWlnaHQ6IDA7IH1cblxuLnNpZGViYXIgc2VjdGlvbi5zaWducG9zdC5jdGEgLmJvZHktcHVzaCwgLnNpZGViYXIgc2VjdGlvbi5zaWducG9zdC5jdGEgLnNsaWNrLWRvdHMsIC5zaWRlYmFyIHNlY3Rpb24uc2lnbnBvc3QuY3RhIC50b3AtYmFyIHVsID4gbGkubWVnYS1tZW51LWdyaWQgPiB1bC5tZWdhLXN1Yi1tZW51LCAudG9wLWJhciAuc2lkZWJhciBzZWN0aW9uLnNpZ25wb3N0LmN0YSB1bCA+IGxpLm1lZ2EtbWVudS1ncmlkID4gdWwubWVnYS1zdWItbWVudSxcbi5zaWRlYmFyIHNlY3Rpb24uc2lnbnBvc3QuY3RhIC50b3AtYmFyICNtZWdhLW1lbnUtd3JhcC10b3AtYmFyLXIgI21lZ2EtbWVudS10b3AtYmFyLXIgPiBsaS5tZWdhLW1lbnUtZ3JpZCA+IHVsLm1lZ2Etc3ViLW1lbnUsIC50b3AtYmFyICNtZWdhLW1lbnUtd3JhcC10b3AtYmFyLXIgLnNpZGViYXIgc2VjdGlvbi5zaWducG9zdC5jdGEgI21lZ2EtbWVudS10b3AtYmFyLXIgPiBsaS5tZWdhLW1lbnUtZ3JpZCA+IHVsLm1lZ2Etc3ViLW1lbnUsIC5zaWRlYmFyIHNlY3Rpb24uc2lnbnBvc3QuY3RhIC5kcm9wZG93bi5tZW51ID4gbGkgPiAuaXMtZHJvcGRvd24tc3VibWVudSwgLnNpZGViYXIgc2VjdGlvbi5zaWducG9zdC5jdGEgYm9keS5zaW5nbGUtY2FzZV9zdHVkeSBzZWN0aW9uLnRhYmJlZC1jb250ZW50IC50YWJzLXdyYXBwZXIsIGJvZHkuc2luZ2xlLWNhc2Vfc3R1ZHkgc2VjdGlvbi50YWJiZWQtY29udGVudCAuc2lkZWJhciBzZWN0aW9uLnNpZ25wb3N0LmN0YSAudGFicy13cmFwcGVyLCAuc2lkZWJhciBzZWN0aW9uLnNpZ25wb3N0LmN0YSBib2R5LnNpbmdsZS1jYXNlX3N0dWR5IHNlY3Rpb24udGFiYmVkLWNvbnRlbnQgLnRhYnMtY29udGVudCwgYm9keS5zaW5nbGUtY2FzZV9zdHVkeSBzZWN0aW9uLnRhYmJlZC1jb250ZW50IC5zaWRlYmFyIHNlY3Rpb24uc2lnbnBvc3QuY3RhIC50YWJzLWNvbnRlbnQge1xuICBwYWRkaW5nLWxlZnQ6IDAgIWltcG9ydGFudDtcbiAgcGFkZGluZy1yaWdodDogMCAhaW1wb3J0YW50OyB9XG5cbi5zaWRlYmFyIHNlY3Rpb24uc2lnbnBvc3QuY3RhIC5yb3cgLmNvbnRlbnQge1xuICB3aWR0aDogMTAwJTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwYWRkaW5nLXRvcDogMS44NzVyZW07XG4gIHBhZGRpbmctYm90dG9tOiAxLjg3NXJlbTtcbiAgcGFkZGluZy1yaWdodDogMS44NzVyZW07IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5zaWRlYmFyIHNlY3Rpb24uc2lnbnBvc3QuY3RhIC5yb3cgLmNvbnRlbnQge1xuICAgICAgd2lkdGg6IDY2LjY2NjY3JTtcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7IH0gfVxuICAuc2lkZWJhciBzZWN0aW9uLnNpZ25wb3N0LmN0YSAucm93IC5jb250ZW50IC5idXR0b24sIC5zaWRlYmFyIHNlY3Rpb24uc2lnbnBvc3QuY3RhIC5yb3cgLmNvbnRlbnQgLndwLWJsb2NrLWJ1dHRvbiAud3AtYmxvY2stYnV0dG9uX19saW5rLCAud3AtYmxvY2stYnV0dG9uIC5zaWRlYmFyIHNlY3Rpb24uc2lnbnBvc3QuY3RhIC5yb3cgLmNvbnRlbnQgLndwLWJsb2NrLWJ1dHRvbl9fbGluaywgLnNpZGViYXIgc2VjdGlvbi5zaWducG9zdC5jdGEgLnJvdyAuY29udGVudCBzZWN0aW9uLnByb21vLWxpc3RpbmcuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEsIHNlY3Rpb24ucHJvbW8tbGlzdGluZy5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgLnNpZGViYXIgc2VjdGlvbi5zaWducG9zdC5jdGEgLnJvdyAuY29udGVudCBhLCAuc2lkZWJhciBzZWN0aW9uLnNpZ25wb3N0LmN0YSAucm93IC5jb250ZW50IHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLCBzZWN0aW9uLnByb21vLWxpc3RpbmctMi5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgLnNpZGViYXIgc2VjdGlvbi5zaWducG9zdC5jdGEgLnJvdyAuY29udGVudCBhIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7IH1cblxuLnNpZGViYXIgc2VjdGlvbi5zaWducG9zdC5jdGEgLnJvdyAuaW1hZ2Uge1xuICB3aWR0aDogMzMuMzMzMzMlO1xuICBwYWRkaW5nLXRvcDogMS44NzVyZW07XG4gIHBhZGRpbmctYm90dG9tOiAxLjg3NXJlbTtcbiAgcGFkZGluZy1sZWZ0OiAxLjg3NXJlbTsgfVxuXG4uc2luZ2xlLWN0YSAuc2lkZWJhciBzZWN0aW9uLnNpZ25wb3N0LmN0YSB7XG4gIG1heC13aWR0aDogMjVyZW07XG4gIG1hcmdpbjogMy4xMjVyZW0gYXV0bztcbiAgY2xlYXI6IGJvdGg7IH1cblxuc2VjdGlvbi50ZXN0aW1vbmlhbHMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2FjYWNhOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgc2VjdGlvbi50ZXN0aW1vbmlhbHMge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9iZy1kb3RzLXRlc3RpbW9uaWFsLnBuZyk7XG4gICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgYmFja2dyb3VuZC1zaXplOiBhdXRvIDEwMCU7XG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAxMDAlIDUwJTsgfSB9XG4gIC5zaW5nbGUtY2FzZV9zdHVkeSBzZWN0aW9uLnRlc3RpbW9uaWFscyB7XG4gICAgYmFja2dyb3VuZC1zaXplOiBhdXRvIDEwMCU7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLnNpbmdsZS1jYXNlX3N0dWR5IHNlY3Rpb24udGVzdGltb25pYWxzIC5yb3cgLmNvbnRlbnQge1xuICAgICAgICB3aWR0aDogNzUlOyB9IH1cbiAgc2VjdGlvbi50ZXN0aW1vbmlhbHMgLnJvdzpiZWZvcmUsIHNlY3Rpb24udGVzdGltb25pYWxzIC5yb3c6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgc2VjdGlvbi50ZXN0aW1vbmlhbHMgLnJvdyAuc2xpY2stdHJhY2sge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7IH1cbiAgICBzZWN0aW9uLnRlc3RpbW9uaWFscyAucm93IC5zbGljay10cmFjazpiZWZvcmUsIHNlY3Rpb24udGVzdGltb25pYWxzIC5yb3cgLnNsaWNrLXRyYWNrOmFmdGVyIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgc2VjdGlvbi50ZXN0aW1vbmlhbHMgLnJvdyAuc2xpZGUge1xuICAgIGhlaWdodDogYXV0bztcbiAgICBmbG9hdDogbm9uZTsgfVxuICAgIHNlY3Rpb24udGVzdGltb25pYWxzIC5yb3cgLnNsaWRlOmZvY3VzIHtcbiAgICAgIG91dGxpbmU6IG5vbmU7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgc2VjdGlvbi50ZXN0aW1vbmlhbHMgLnJvdyAuc2xpZGUge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyB9XG4gICAgICAgIHNlY3Rpb24udGVzdGltb25pYWxzIC5yb3cgLnNsaWRlOmJlZm9yZSwgc2VjdGlvbi50ZXN0aW1vbmlhbHMgLnJvdyAuc2xpZGU6YWZ0ZXIge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuICAgIHNlY3Rpb24udGVzdGltb25pYWxzIC5yb3cgLnNsaWRlIC5saW5rIHtcbiAgICAgIHBhZGRpbmctdG9wOiAwOyB9XG4gICAgICBzZWN0aW9uLnRlc3RpbW9uaWFscyAucm93IC5zbGlkZSAubGluayAuYnV0dG9uLCBzZWN0aW9uLnRlc3RpbW9uaWFscyAucm93IC5zbGlkZSAubGluayAud3AtYmxvY2stYnV0dG9uIC53cC1ibG9jay1idXR0b25fX2xpbmssIC53cC1ibG9jay1idXR0b24gc2VjdGlvbi50ZXN0aW1vbmlhbHMgLnJvdyAuc2xpZGUgLmxpbmsgLndwLWJsb2NrLWJ1dHRvbl9fbGluaywgc2VjdGlvbi50ZXN0aW1vbmlhbHMgLnJvdyAuc2xpZGUgLmxpbmsgc2VjdGlvbi5wcm9tby1saXN0aW5nLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLCBzZWN0aW9uLnByb21vLWxpc3RpbmcuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIHNlY3Rpb24udGVzdGltb25pYWxzIC5yb3cgLnNsaWRlIC5saW5rIGEsIHNlY3Rpb24udGVzdGltb25pYWxzIC5yb3cgLnNsaWRlIC5saW5rIHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLCBzZWN0aW9uLnByb21vLWxpc3RpbmctMi5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgc2VjdGlvbi50ZXN0aW1vbmlhbHMgLnJvdyAuc2xpZGUgLmxpbmsgYSB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMC42MjVyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICBzZWN0aW9uLnRlc3RpbW9uaWFscyAucm93IC5jb250ZW50IHtcbiAgICAgIHdpZHRoOiA1MCU7IH0gfVxuICBzZWN0aW9uLnRlc3RpbW9uaWFscyAucm93IC5jb250ZW50IHAubGFiZWwge1xuICAgIGNvbG9yOiAjMGEwYTBhOyB9XG4gIHNlY3Rpb24udGVzdGltb25pYWxzIC5yb3cgLnJpZ2h0IHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtO1xuICAgIGRpc3BsYXk6IGZsZXg7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgc2VjdGlvbi50ZXN0aW1vbmlhbHMgLnJvdyAucmlnaHQge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgICBzZWN0aW9uLnRlc3RpbW9uaWFscyAucm93IC5yaWdodCwgc2VjdGlvbi50ZXN0aW1vbmlhbHMgLnJvdyAucmlnaHQ6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgc2VjdGlvbi50ZXN0aW1vbmlhbHMgLnJvdyAucmlnaHQ6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICBmbG9hdDogcmlnaHQ7IH1cbiAgICBzZWN0aW9uLnRlc3RpbW9uaWFscyAucm93IC5yaWdodCAuaW1hZ2Uge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICBzZWN0aW9uLnRlc3RpbW9uaWFscyAucm93IC5yaWdodCB7XG4gICAgICAgIHdpZHRoOiA0MS42NjY2NyU7IH1cbiAgICAgICAgc2VjdGlvbi50ZXN0aW1vbmlhbHMgLnJvdyAucmlnaHQgLmltYWdlIHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBhbGlnbi1zZWxmOiBmbGV4LWVuZDsgfVxuICAgICAgICAgIHNlY3Rpb24udGVzdGltb25pYWxzIC5yb3cgLnJpZ2h0IC5pbWFnZSBpbWcge1xuICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC41cyBlYXNlLW91dDsgfVxuICAgICAgICAgICAgc2VjdGlvbi50ZXN0aW1vbmlhbHMgLnJvdyAucmlnaHQgLmltYWdlIGltZy5sYXp5bG9hZGVkIHtcbiAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjVzIGVhc2Utb3V0OyB9IH1cbiAgc2VjdGlvbi50ZXN0aW1vbmlhbHMgLnJvdy5sb2dvcyB7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgbWFyZ2luLWxlZnQ6IC0xLjI1cmVtO1xuICAgIG1hcmdpbi1yaWdodDogLTEuMjVyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgc2VjdGlvbi50ZXN0aW1vbmlhbHMgLnJvdy5sb2dvcyB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAtMS44NzVyZW07XG4gICAgICAgIG1hcmdpbi1yaWdodDogLTEuODc1cmVtOyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgc2VjdGlvbi50ZXN0aW1vbmlhbHMgLnJvdy5sb2dvcyAubG9nbyB7XG4gICAgICAgIG1heC13aWR0aDogMzMuMzMzMyU7IH0gfVxuXG5zZWN0aW9uLmNvbnRhY3QtbG9jYXRpb25zIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzQ0MDA5OTsgfVxuICBzZWN0aW9uLmNvbnRhY3QtbG9jYXRpb25zIGgyIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtO1xuICAgIGNvbG9yOiAjZmVmZWZlO1xuICAgIG1hcmdpbi1ib3R0b206IDEuODc1cmVtOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIHNlY3Rpb24uY29udGFjdC1sb2NhdGlvbnMgaDIge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgICBzZWN0aW9uLmNvbnRhY3QtbG9jYXRpb25zIGgyLCBzZWN0aW9uLmNvbnRhY3QtbG9jYXRpb25zIGgyOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBjbGVhcjogbm9uZTsgfVxuICAgIHNlY3Rpb24uY29udGFjdC1sb2NhdGlvbnMgaDI6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICBmbG9hdDogcmlnaHQ7IH1cbiAgc2VjdGlvbi5jb250YWN0LWxvY2F0aW9ucyAuY29udGVudCA+IHAge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07XG4gICAgY29sb3I6ICNmZWZlZmU7XG4gICAgbWF4LXdpZHRoOiAzMS4yNXJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAyLjVyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgc2VjdGlvbi5jb250YWN0LWxvY2F0aW9ucyAuY29udGVudCA+IHAge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgICBzZWN0aW9uLmNvbnRhY3QtbG9jYXRpb25zIC5jb250ZW50ID4gcCwgc2VjdGlvbi5jb250YWN0LWxvY2F0aW9ucyAuY29udGVudCA+IHA6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgc2VjdGlvbi5jb250YWN0LWxvY2F0aW9ucyAuY29udGVudCA+IHA6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICBmbG9hdDogcmlnaHQ7IH1cbiAgc2VjdGlvbi5jb250YWN0LWxvY2F0aW9ucyAuY29udGFjdC1sb2NhdGlvbnMtbGlzdCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBtYXJnaW46IDA7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgICBzZWN0aW9uLmNvbnRhY3QtbG9jYXRpb25zIC5jb250YWN0LWxvY2F0aW9ucy1saXN0IC5jb250YWN0LWxvY2F0aW9uIHtcbiAgICAgIHdpZHRoOiA1MCU7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMy4xMjVyZW07IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgIHNlY3Rpb24uY29udGFjdC1sb2NhdGlvbnMgLmNvbnRhY3QtbG9jYXRpb25zLWxpc3QgLmNvbnRhY3QtbG9jYXRpb24ge1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gICAgICBzZWN0aW9uLmNvbnRhY3QtbG9jYXRpb25zIC5jb250YWN0LWxvY2F0aW9ucy1saXN0IC5jb250YWN0LWxvY2F0aW9uLCBzZWN0aW9uLmNvbnRhY3QtbG9jYXRpb25zIC5jb250YWN0LWxvY2F0aW9ucy1saXN0IC5jb250YWN0LWxvY2F0aW9uOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAgIHNlY3Rpb24uY29udGFjdC1sb2NhdGlvbnMgLmNvbnRhY3QtbG9jYXRpb25zLWxpc3QgLmNvbnRhY3QtbG9jYXRpb246bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgIGZsb2F0OiByaWdodDsgfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgc2VjdGlvbi5jb250YWN0LWxvY2F0aW9ucyAuY29udGFjdC1sb2NhdGlvbnMtbGlzdCAuY29udGFjdC1sb2NhdGlvbiB7XG4gICAgICAgICAgd2lkdGg6IDMzLjMzMzMzJTsgfSB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgICBzZWN0aW9uLmNvbnRhY3QtbG9jYXRpb25zIC5jb250YWN0LWxvY2F0aW9ucy1saXN0IC5jb250YWN0LWxvY2F0aW9uIHtcbiAgICAgICAgICB3aWR0aDogMTYuNjY2NjclO1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7IH0gfVxuICAgICAgc2VjdGlvbi5jb250YWN0LWxvY2F0aW9ucyAuY29udGFjdC1sb2NhdGlvbnMtbGlzdCAuY29udGFjdC1sb2NhdGlvbiBzdmcge1xuICAgICAgICBmaWxsOiAjZmVmZWZlO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwLjkzNzVyZW07XG4gICAgICAgIHdpZHRoOiAxLjEyNXJlbTsgfVxuICAgICAgc2VjdGlvbi5jb250YWN0LWxvY2F0aW9ucyAuY29udGFjdC1sb2NhdGlvbnMtbGlzdCAuY29udGFjdC1sb2NhdGlvbiBoMyB7XG4gICAgICAgIGNvbG9yOiAjZmVmZWZlO1xuICAgICAgICBmb250LXNpemU6IDEuMTI1cmVtO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxLjI1cmVtOyB9XG4gICAgICBzZWN0aW9uLmNvbnRhY3QtbG9jYXRpb25zIC5jb250YWN0LWxvY2F0aW9ucy1saXN0IC5jb250YWN0LWxvY2F0aW9uIHAge1xuICAgICAgICBjb2xvcjogI2ZlZmVmZTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMi41cmVtOyB9XG4gICAgICBzZWN0aW9uLmNvbnRhY3QtbG9jYXRpb25zIC5jb250YWN0LWxvY2F0aW9ucy1saXN0IC5jb250YWN0LWxvY2F0aW9uIC5hZGRyZXNzLWJ1dHRvbiB7XG4gICAgICAgIGNvbG9yOiAjZmVmZWZlO1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgbWFyZ2luLXRvcDogYXV0bztcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgICAgIHNlY3Rpb24uY29udGFjdC1sb2NhdGlvbnMgLmNvbnRhY3QtbG9jYXRpb25zLWxpc3QgLmNvbnRhY3QtbG9jYXRpb24gLmFkZHJlc3MtYnV0dG9uOmFmdGVyIHtcbiAgICAgICAgICBib3JkZXItYm90dG9tOiAwLjA2MjVyZW0gc29saWQgI2ZlZmVmZTtcbiAgICAgICAgICBib3JkZXItcmlnaHQ6IDAuMDYyNXJlbSBzb2xpZCAjZmVmZWZlO1xuICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICBoZWlnaHQ6IDAuNjI1cmVtO1xuICAgICAgICAgIHdpZHRoOiAwLjYyNXJlbTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpO1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwLjMxMjVyZW07IH1cbiAgICAgICAgc2VjdGlvbi5jb250YWN0LWxvY2F0aW9ucyAuY29udGFjdC1sb2NhdGlvbnMtbGlzdCAuY29udGFjdC1sb2NhdGlvbiAuYWRkcmVzcy1idXR0b246aG92ZXIsIHNlY3Rpb24uY29udGFjdC1sb2NhdGlvbnMgLmNvbnRhY3QtbG9jYXRpb25zLWxpc3QgLmNvbnRhY3QtbG9jYXRpb24gLmFkZHJlc3MtYnV0dG9uOmZvY3VzIHtcbiAgICAgICAgICBjb2xvcjogI2ZiZTIwMDsgfVxuICAgICAgICAgIHNlY3Rpb24uY29udGFjdC1sb2NhdGlvbnMgLmNvbnRhY3QtbG9jYXRpb25zLWxpc3QgLmNvbnRhY3QtbG9jYXRpb24gLmFkZHJlc3MtYnV0dG9uOmhvdmVyOmFmdGVyLCBzZWN0aW9uLmNvbnRhY3QtbG9jYXRpb25zIC5jb250YWN0LWxvY2F0aW9ucy1saXN0IC5jb250YWN0LWxvY2F0aW9uIC5hZGRyZXNzLWJ1dHRvbjpmb2N1czphZnRlciB7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6ICNmYmUyMDA7IH1cblxuc2VjdGlvbi5zcGxpdC1zaWducG9zdHM6bm90KC5wYW5lbHMpIHtcbiAgcGFkZGluZzogMDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIHNlY3Rpb24uc3BsaXQtc2lnbnBvc3RzOm5vdCgucGFuZWxzKSB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdzsgfVxuICAgICAgc2VjdGlvbi5zcGxpdC1zaWducG9zdHM6bm90KC5wYW5lbHMpOmJlZm9yZSwgc2VjdGlvbi5zcGxpdC1zaWducG9zdHM6bm90KC5wYW5lbHMpOmFmdGVyIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5pbnRybyArIHNlY3Rpb24uc3BsaXQtc2lnbnBvc3RzIHtcbiAgICBtYXJnaW4tdG9wOiAtMS4yNXJlbTsgfSB9XG5cbnNlY3Rpb24uc3BsaXQtc2lnbnBvc3RzIC5zaWducG9zdCB7XG4gIGZsZXg6IDEgMSAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBzdHJldGNoOyB9XG4gIHNlY3Rpb24uc3BsaXQtc2lnbnBvc3RzIC5zaWducG9zdCBhIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjb2xvcjogI2ZlZmVmZTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWluLWhlaWdodDogNjR2dztcbiAgICBmbGV4OiAxIDEgMDsgfVxuICAgIHNlY3Rpb24uc3BsaXQtc2lnbnBvc3RzIC5zaWducG9zdCBhIGltZyArIC5yb3c6YmVmb3JlLFxuICAgIHNlY3Rpb24uc3BsaXQtc2lnbnBvc3RzIC5zaWducG9zdCBhIGltZyArIG5vc2NyaXB0ICsgLnJvdzpiZWZvcmUge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuNCk7IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgIHNlY3Rpb24uc3BsaXQtc2lnbnBvc3RzIC5zaWducG9zdCBhIGltZyArIC5yb3c6YmVmb3JlLFxuICAgICAgICBzZWN0aW9uLnNwbGl0LXNpZ25wb3N0cyAuc2lnbnBvc3QgYSBpbWcgKyBub3NjcmlwdCArIC5yb3c6YmVmb3JlIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHJnYmEoMCwgMCwgMCwgMC42NSkgMCUsIHJnYmEoMCwgMCwgMCwgMCkgOTAlKTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgc2VjdGlvbi5zcGxpdC1zaWducG9zdHMgLnNpZ25wb3N0IHtcbiAgICAgIHdpZHRoOiA1MCU7XG4gICAgICBmbGV4OiAxIDAgNTAlOyB9XG4gICAgICBzZWN0aW9uLnNwbGl0LXNpZ25wb3N0cyAuc2lnbnBvc3QgYSB7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDA7IH0gfVxuICBzZWN0aW9uLnNwbGl0LXNpZ25wb3N0cyAuc2lnbnBvc3QgLnJvdyB7XG4gICAgbWF4LXdpZHRoOiBub25lO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICBtYXJnaW4tbGVmdDogYXV0bzsgfVxuICAgIHNlY3Rpb24uc3BsaXQtc2lnbnBvc3RzIC5zaWducG9zdCAucm93OjpiZWZvcmUsIHNlY3Rpb24uc3BsaXQtc2lnbnBvc3RzIC5zaWducG9zdCAucm93OjphZnRlciB7XG4gICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgIGNvbnRlbnQ6ICcgJztcbiAgICAgIGZsZXgtYmFzaXM6IDA7XG4gICAgICBvcmRlcjogMTsgfVxuICAgIHNlY3Rpb24uc3BsaXQtc2lnbnBvc3RzIC5zaWducG9zdCAucm93OjphZnRlciB7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIHNlY3Rpb24uc3BsaXQtc2lnbnBvc3RzIC5zaWducG9zdCAucm93IC5jb250ZW50IHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMS4yNXJlbTtcbiAgICAgIHBhZGRpbmctdG9wOiAxLjI1cmVtOyB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICBzZWN0aW9uLnNwbGl0LXNpZ25wb3N0cyAuc2lnbnBvc3QgLnJvdyAuY29udGVudCB7XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgICAgIHNlY3Rpb24uc3BsaXQtc2lnbnBvc3RzIC5zaWducG9zdCAucm93IC5jb250ZW50LCBzZWN0aW9uLnNwbGl0LXNpZ25wb3N0cyAuc2lnbnBvc3QgLnJvdyAuY29udGVudDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgICBzZWN0aW9uLnNwbGl0LXNpZ25wb3N0cyAuc2lnbnBvc3QgLnJvdyAuY29udGVudDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0OyB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICBzZWN0aW9uLnNwbGl0LXNpZ25wb3N0cyAuc2lnbnBvc3QgLnJvdyAuY29udGVudCB7XG4gICAgICAgICAgcGFkZGluZy1ib3R0b206IDMuNzVyZW07XG4gICAgICAgICAgcGFkZGluZy10b3A6IDMuNzVyZW07IH0gfVxuICAgIHNlY3Rpb24uc3BsaXQtc2lnbnBvc3RzIC5zaWducG9zdCAucm93IGgzIHtcbiAgICAgIGZvbnQtc2l6ZTogMi41cmVtOyB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgICBzZWN0aW9uLnNwbGl0LXNpZ25wb3N0cyAuc2lnbnBvc3QgLnJvdyBoMyB7XG4gICAgICAgICAgZm9udC1zaXplOiA0LjM3NXJlbTsgfSB9XG4gIHNlY3Rpb24uc3BsaXQtc2lnbnBvc3RzIC5zaWducG9zdCBpbWcgKyAucm93LFxuICBzZWN0aW9uLnNwbGl0LXNpZ25wb3N0cyAuc2lnbnBvc3QgaW1nICsgbm9zY3JpcHQgKyAucm93IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlOyB9XG4gIHNlY3Rpb24uc3BsaXQtc2lnbnBvc3RzIC5zaWducG9zdC5kYXJrLm5vLWltZyBhIHtcbiAgICBjb2xvcjogIzBhMGEwYTsgfVxuICBzZWN0aW9uLnNwbGl0LXNpZ25wb3N0cyAuc2lnbnBvc3QuYmxhY2sgYSB7XG4gICAgY29sb3I6ICMwYTBhMGE7IH1cbiAgc2VjdGlvbi5zcGxpdC1zaWducG9zdHMgLnNpZ25wb3N0LmJsYWNrIGltZyArIC5yb3c6YmVmb3JlLFxuICBzZWN0aW9uLnNwbGl0LXNpZ25wb3N0cyAuc2lnbnBvc3QuYmxhY2sgaW1nICsgbm9zY3JpcHQgKyAucm93OmJlZm9yZSB7XG4gICAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjQpOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIHNlY3Rpb24uc3BsaXQtc2lnbnBvc3RzIC5zaWducG9zdC5ibGFjayBpbWcgKyAucm93OmJlZm9yZSxcbiAgICAgIHNlY3Rpb24uc3BsaXQtc2lnbnBvc3RzIC5zaWducG9zdC5ibGFjayBpbWcgKyBub3NjcmlwdCArIC5yb3c6YmVmb3JlIHtcbiAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNjUpIDAlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDApIDkwJSk7IH0gfVxuICBzZWN0aW9uLnNwbGl0LXNpZ25wb3N0cyAuc2lnbnBvc3QuYmxhY2sgbGk6YmVmb3JlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNjgwMGQyOyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgc2VjdGlvbi5zcGxpdC1zaWducG9zdHMucGFuZWxzIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDsgfVxuICAgIHNlY3Rpb24uc3BsaXQtc2lnbnBvc3RzLnBhbmVscyAuYm9keS1wdXNoLnBhbmVscywgc2VjdGlvbi5zcGxpdC1zaWducG9zdHMucGFuZWxzIC5wYW5lbHMuc2xpY2stZG90cywgc2VjdGlvbi5zcGxpdC1zaWducG9zdHMucGFuZWxzIC50b3AtYmFyIHVsID4gbGkubWVnYS1tZW51LWdyaWQgPiB1bC5wYW5lbHMubWVnYS1zdWItbWVudSwgLnRvcC1iYXIgc2VjdGlvbi5zcGxpdC1zaWducG9zdHMucGFuZWxzIHVsID4gbGkubWVnYS1tZW51LWdyaWQgPiB1bC5wYW5lbHMubWVnYS1zdWItbWVudSxcbiAgICBzZWN0aW9uLnNwbGl0LXNpZ25wb3N0cy5wYW5lbHMgLnRvcC1iYXIgI21lZ2EtbWVudS13cmFwLXRvcC1iYXItciAjbWVnYS1tZW51LXRvcC1iYXItciA+IGxpLm1lZ2EtbWVudS1ncmlkID4gdWwucGFuZWxzLm1lZ2Etc3ViLW1lbnUsIC50b3AtYmFyICNtZWdhLW1lbnUtd3JhcC10b3AtYmFyLXIgc2VjdGlvbi5zcGxpdC1zaWducG9zdHMucGFuZWxzICNtZWdhLW1lbnUtdG9wLWJhci1yID4gbGkubWVnYS1tZW51LWdyaWQgPiB1bC5wYW5lbHMubWVnYS1zdWItbWVudSwgc2VjdGlvbi5zcGxpdC1zaWducG9zdHMucGFuZWxzIC5kcm9wZG93bi5tZW51ID4gbGkgPiAucGFuZWxzLmlzLWRyb3Bkb3duLXN1Ym1lbnUsIHNlY3Rpb24uc3BsaXQtc2lnbnBvc3RzLnBhbmVscyBib2R5LnNpbmdsZS1jYXNlX3N0dWR5IHNlY3Rpb24udGFiYmVkLWNvbnRlbnQgLnBhbmVscy50YWJzLXdyYXBwZXIsIGJvZHkuc2luZ2xlLWNhc2Vfc3R1ZHkgc2VjdGlvbi50YWJiZWQtY29udGVudCBzZWN0aW9uLnNwbGl0LXNpZ25wb3N0cy5wYW5lbHMgLnBhbmVscy50YWJzLXdyYXBwZXIsIHNlY3Rpb24uc3BsaXQtc2lnbnBvc3RzLnBhbmVscyBib2R5LnNpbmdsZS1jYXNlX3N0dWR5IHNlY3Rpb24udGFiYmVkLWNvbnRlbnQgLnBhbmVscy50YWJzLWNvbnRlbnQsIGJvZHkuc2luZ2xlLWNhc2Vfc3R1ZHkgc2VjdGlvbi50YWJiZWQtY29udGVudCBzZWN0aW9uLnNwbGl0LXNpZ25wb3N0cy5wYW5lbHMgLnBhbmVscy50YWJzLWNvbnRlbnQge1xuICAgICAgcGFkZGluZy1sZWZ0OiAwICFpbXBvcnRhbnQ7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwICFpbXBvcnRhbnQ7IH0gfVxuXG5zZWN0aW9uLnNwbGl0LXNpZ25wb3N0cy5wYW5lbHMgLnRpdGxlIHtcbiAgcGFkZGluZy1ib3R0b206IDAuNjI1cmVtO1xuICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtO1xuICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIHNlY3Rpb24uc3BsaXQtc2lnbnBvc3RzLnBhbmVscyAudGl0bGUge1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIHNlY3Rpb24uc3BsaXQtc2lnbnBvc3RzLnBhbmVscyAudGl0bGUge1xuICAgICAgcGFkZGluZy1ib3R0b206IDIuNXJlbTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIHNlY3Rpb24uc3BsaXQtc2lnbnBvc3RzLnBhbmVscyAuaW1hZ2VzIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBhbGlnbi1jb250ZW50OiBzdHJldGNoO1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICBzZWN0aW9uLnNwbGl0LXNpZ25wb3N0cy5wYW5lbHMgLmltYWdlcyAuYXJ0aWNsZSB7XG4gICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07XG4gICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgIHBhZGRpbmctYm90dG9tOiAxLjg3NXJlbTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIHNlY3Rpb24uc3BsaXQtc2lnbnBvc3RzLnBhbmVscyAuaW1hZ2VzIC5hcnRpY2xlIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXg6IDEgMCAzMy4zMzMzJTtcbiAgICBtYXgtd2lkdGg6IDMzLjMzMzMlO1xuICAgIGFsaWduLWNvbnRlbnQ6IHN0cmV0Y2g7IH0gfVxuXG5zZWN0aW9uLnNwbGl0LXNpZ25wb3N0cy5wYW5lbHMgLmltYWdlcyAuYXJ0aWNsZSBsaTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kOiAjZmVmZWZlOyB9XG5cbnNlY3Rpb24uc3BsaXQtc2lnbnBvc3RzLnBhbmVscyAuaW1hZ2VzIC5hcnRpY2xlIGEsIHNlY3Rpb24uc3BsaXQtc2lnbnBvc3RzLnBhbmVscyAuaW1hZ2VzIC5hcnRpY2xlIC5uby1saW5rIHtcbiAgcGFkZGluZzogMS4yNXJlbSAwLjYyNXJlbSAwLjYyNXJlbSAwLjYyNXJlbTtcbiAgY29sb3I6ICNmZWZlZmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIHdpZHRoOiAxMDAlOyB9XG4gIHNlY3Rpb24uc3BsaXQtc2lnbnBvc3RzLnBhbmVscyAuaW1hZ2VzIC5hcnRpY2xlIGEgLnJvdywgc2VjdGlvbi5zcGxpdC1zaWducG9zdHMucGFuZWxzIC5pbWFnZXMgLmFydGljbGUgLm5vLWxpbmsgLnJvdyB7XG4gICAganVzdGlmeS1zZWxmOiBzdHJldGNoO1xuICAgIGZsZXgtZ3JvdzogMTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIG1hcmdpbi1sZWZ0OiAxLjI1cmVtO1xuICAgIG1hcmdpbi1yaWdodDogMS4yNXJlbTsgfVxuICAgIHNlY3Rpb24uc3BsaXQtc2lnbnBvc3RzLnBhbmVscyAuaW1hZ2VzIC5hcnRpY2xlIGEgLnJvdyAuY29udGVudCwgc2VjdGlvbi5zcGxpdC1zaWducG9zdHMucGFuZWxzIC5pbWFnZXMgLmFydGljbGUgLm5vLWxpbmsgLnJvdyAuY29udGVudCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgICBzZWN0aW9uLnNwbGl0LXNpZ25wb3N0cy5wYW5lbHMgLmltYWdlcyAuYXJ0aWNsZSBhIC5yb3cgLmNvbnRlbnQgLmN0YSwgc2VjdGlvbi5zcGxpdC1zaWducG9zdHMucGFuZWxzIC5pbWFnZXMgLmFydGljbGUgLm5vLWxpbmsgLnJvdyAuY29udGVudCAuY3RhIHtcbiAgICAgICAgbWFyZ2luLXRvcDogYXV0bzsgfVxuICBzZWN0aW9uLnNwbGl0LXNpZ25wb3N0cy5wYW5lbHMgLmltYWdlcyAuYXJ0aWNsZSBhIGltZywgc2VjdGlvbi5zcGxpdC1zaWducG9zdHMucGFuZWxzIC5pbWFnZXMgLmFydGljbGUgLm5vLWxpbmsgaW1nIHtcbiAgICBtYXJnaW46IDAgMS4yNXJlbSAwLjYyNXJlbTtcbiAgICB3aWR0aDogNXJlbTsgfVxuICBzZWN0aW9uLnNwbGl0LXNpZ25wb3N0cy5wYW5lbHMgLmltYWdlcyAuYXJ0aWNsZSBhIGgzLCBzZWN0aW9uLnNwbGl0LXNpZ25wb3N0cy5wYW5lbHMgLmltYWdlcyAuYXJ0aWNsZSAubm8tbGluayBoMyB7XG4gICAgZm9udC1zaXplOiAxLjYyNXJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAyLjVyZW07IH1cbiAgc2VjdGlvbi5zcGxpdC1zaWducG9zdHMucGFuZWxzIC5pbWFnZXMgLmFydGljbGUgYSB1bCwgc2VjdGlvbi5zcGxpdC1zaWducG9zdHMucGFuZWxzIC5pbWFnZXMgLmFydGljbGUgLm5vLWxpbmsgdWwge1xuICAgIG1hcmdpbi1ib3R0b206IDEuODc1cmVtOyB9XG4gIHNlY3Rpb24uc3BsaXQtc2lnbnBvc3RzLnBhbmVscyAuaW1hZ2VzIC5hcnRpY2xlIGEgc3Bhbi5idXR0b24sIHNlY3Rpb24uc3BsaXQtc2lnbnBvc3RzLnBhbmVscyAuaW1hZ2VzIC5hcnRpY2xlIGEgLndwLWJsb2NrLWJ1dHRvbiBzcGFuLndwLWJsb2NrLWJ1dHRvbl9fbGluaywgLndwLWJsb2NrLWJ1dHRvbiBzZWN0aW9uLnNwbGl0LXNpZ25wb3N0cy5wYW5lbHMgLmltYWdlcyAuYXJ0aWNsZSBhIHNwYW4ud3AtYmxvY2stYnV0dG9uX19saW5rLCBzZWN0aW9uLnNwbGl0LXNpZ25wb3N0cy5wYW5lbHMgLmltYWdlcyAuYXJ0aWNsZSAubm8tbGluayBzcGFuLmJ1dHRvbiwgc2VjdGlvbi5zcGxpdC1zaWducG9zdHMucGFuZWxzIC5pbWFnZXMgLmFydGljbGUgLm5vLWxpbmsgLndwLWJsb2NrLWJ1dHRvbiBzcGFuLndwLWJsb2NrLWJ1dHRvbl9fbGluaywgLndwLWJsb2NrLWJ1dHRvbiBzZWN0aW9uLnNwbGl0LXNpZ25wb3N0cy5wYW5lbHMgLmltYWdlcyAuYXJ0aWNsZSAubm8tbGluayBzcGFuLndwLWJsb2NrLWJ1dHRvbl9fbGluayB7XG4gICAgbWFyZ2luLXRvcDogYXV0bztcbiAgICBiYWNrZ3JvdW5kOiAjZmVmZWZlO1xuICAgIGNvbG9yOiAjNjgwMGQyOyB9XG4gIHNlY3Rpb24uc3BsaXQtc2lnbnBvc3RzLnBhbmVscyAuaW1hZ2VzIC5hcnRpY2xlIGE6aG92ZXIgc3Bhbi5idXR0b24sIHNlY3Rpb24uc3BsaXQtc2lnbnBvc3RzLnBhbmVscyAuaW1hZ2VzIC5hcnRpY2xlIGE6aG92ZXIgLndwLWJsb2NrLWJ1dHRvbiBzcGFuLndwLWJsb2NrLWJ1dHRvbl9fbGluaywgLndwLWJsb2NrLWJ1dHRvbiBzZWN0aW9uLnNwbGl0LXNpZ25wb3N0cy5wYW5lbHMgLmltYWdlcyAuYXJ0aWNsZSBhOmhvdmVyIHNwYW4ud3AtYmxvY2stYnV0dG9uX19saW5rLCBzZWN0aW9uLnNwbGl0LXNpZ25wb3N0cy5wYW5lbHMgLmltYWdlcyAuYXJ0aWNsZSAubm8tbGluazpob3ZlciBzcGFuLmJ1dHRvbiwgc2VjdGlvbi5zcGxpdC1zaWducG9zdHMucGFuZWxzIC5pbWFnZXMgLmFydGljbGUgLm5vLWxpbms6aG92ZXIgLndwLWJsb2NrLWJ1dHRvbiBzcGFuLndwLWJsb2NrLWJ1dHRvbl9fbGluaywgLndwLWJsb2NrLWJ1dHRvbiBzZWN0aW9uLnNwbGl0LXNpZ25wb3N0cy5wYW5lbHMgLmltYWdlcyAuYXJ0aWNsZSAubm8tbGluazpob3ZlciBzcGFuLndwLWJsb2NrLWJ1dHRvbl9fbGluayB7XG4gICAgYmFja2dyb3VuZDogI2ZiZTIwMDsgfVxuXG5zZWN0aW9uLnNwbGl0LXNpZ25wb3N0cy5wYW5lbHMgLmltYWdlcyAuYXJ0aWNsZS5ibGFjayBsaTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kOiAjMGEwYTBhOyB9XG5cbnNlY3Rpb24uc3BsaXQtc2lnbnBvc3RzLnBhbmVscyAuaW1hZ2VzIC5hcnRpY2xlLmJsYWNrIGEsIHNlY3Rpb24uc3BsaXQtc2lnbnBvc3RzLnBhbmVscyAuaW1hZ2VzIC5hcnRpY2xlLmJsYWNrIC5uby1saW5rIHtcbiAgY29sb3I6ICMwYTBhMGE7IH1cbiAgc2VjdGlvbi5zcGxpdC1zaWducG9zdHMucGFuZWxzIC5pbWFnZXMgLmFydGljbGUuYmxhY2sgYTpob3ZlciBzcGFuLmJ1dHRvbiwgc2VjdGlvbi5zcGxpdC1zaWducG9zdHMucGFuZWxzIC5pbWFnZXMgLmFydGljbGUuYmxhY2sgYTpob3ZlciAud3AtYmxvY2stYnV0dG9uIHNwYW4ud3AtYmxvY2stYnV0dG9uX19saW5rLCAud3AtYmxvY2stYnV0dG9uIHNlY3Rpb24uc3BsaXQtc2lnbnBvc3RzLnBhbmVscyAuaW1hZ2VzIC5hcnRpY2xlLmJsYWNrIGE6aG92ZXIgc3Bhbi53cC1ibG9jay1idXR0b25fX2xpbmssIHNlY3Rpb24uc3BsaXQtc2lnbnBvc3RzLnBhbmVscyAuaW1hZ2VzIC5hcnRpY2xlLmJsYWNrIC5uby1saW5rOmhvdmVyIHNwYW4uYnV0dG9uLCBzZWN0aW9uLnNwbGl0LXNpZ25wb3N0cy5wYW5lbHMgLmltYWdlcyAuYXJ0aWNsZS5ibGFjayAubm8tbGluazpob3ZlciAud3AtYmxvY2stYnV0dG9uIHNwYW4ud3AtYmxvY2stYnV0dG9uX19saW5rLCAud3AtYmxvY2stYnV0dG9uIHNlY3Rpb24uc3BsaXQtc2lnbnBvc3RzLnBhbmVscyAuaW1hZ2VzIC5hcnRpY2xlLmJsYWNrIC5uby1saW5rOmhvdmVyIHNwYW4ud3AtYmxvY2stYnV0dG9uX19saW5rIHtcbiAgICBiYWNrZ3JvdW5kOiAjNjgwMGQyO1xuICAgIGNvbG9yOiAjZmVmZWZlOyB9XG5cbnNlY3Rpb24uc2hvd2Nhc2UgLnJvdyAuY29udGVudCA+IGltZyxcbnNlY3Rpb24uc2hvd2Nhc2UgLnJvdyAuY29udGVudCA+IHBpY3R1cmUge1xuICB3aWR0aDogNXJlbTsgfVxuXG5zZWN0aW9uLnNob3djYXNlIC5zaWducG9zdHMge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMS4yNXJlbSAwO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIHNlY3Rpb24uc2hvd2Nhc2UgLnNpZ25wb3N0cyB7XG4gICAgICBwYWRkaW5nOiAyLjVyZW0gMCAzLjc1cmVtIDA7IH0gfVxuICBzZWN0aW9uLnNob3djYXNlIC5zaWducG9zdHM6YmVmb3JlLCBzZWN0aW9uLnNob3djYXNlIC5zaWducG9zdHM6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAtMS4yNXJlbTtcbiAgICB3aWR0aDogNTAlO1xuICAgIGJhY2tncm91bmQtY29sb3I6IGluaGVyaXQ7XG4gICAgcGFkZGluZy10b3A6IDEuMjVyZW07IH1cbiAgc2VjdGlvbi5zaG93Y2FzZSAuc2lnbnBvc3RzOmJlZm9yZSB7XG4gICAgcmlnaHQ6IDUwJTtcbiAgICAtbXMtdHJhbnNmb3JtLW9yaWdpbjogMTAwJSAxMDAlO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogMTAwJSAxMDAlO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IDEwMCUgMTAwJTtcbiAgICAtbXMtdHJhbnNmb3JtOiBza2V3WCg0NWRlZyk7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNrZXdYKDQ1ZGVnKTtcbiAgICB0cmFuc2Zvcm06IHNrZXdYKDQ1ZGVnKTsgfVxuICBzZWN0aW9uLnNob3djYXNlIC5zaWducG9zdHM6YWZ0ZXIge1xuICAgIGxlZnQ6IDUwJTtcbiAgICAtbXMtdHJhbnNmb3JtLW9yaWdpbjogMCAxMDAlO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogMCAxMDAlO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IDAgMTAwJTtcbiAgICAtbXMtdHJhbnNmb3JtOiBza2V3WCgtNDVkZWcpO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBza2V3WCgtNDVkZWcpO1xuICAgIHRyYW5zZm9ybTogc2tld1goLTQ1ZGVnKTsgfVxuICBzZWN0aW9uLnNob3djYXNlIC5zaWducG9zdHMgLnNpZ25wb3N0IHAge1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cblxuc2VjdGlvbi5zaG93Y2FzZS5kYXJrIC5zaWducG9zdCxcbnNlY3Rpb24uc2hvd2Nhc2UgLnNpZ25wb3N0cy5kYXJrIC5zaWducG9zdCB7XG4gIGNvbG9yOiAjMGEwYTBhOyB9XG4gIHNlY3Rpb24uc2hvd2Nhc2UuZGFyayAuc2lnbnBvc3QgYSxcbiAgc2VjdGlvbi5zaG93Y2FzZS5kYXJrIC5zaWducG9zdCBoMyxcbiAgc2VjdGlvbi5zaG93Y2FzZSAuc2lnbnBvc3RzLmRhcmsgLnNpZ25wb3N0IGEsXG4gIHNlY3Rpb24uc2hvd2Nhc2UgLnNpZ25wb3N0cy5kYXJrIC5zaWducG9zdCBoMyB7XG4gICAgY29sb3I6ICM2ODAwZDI7IH1cbiAgICBzZWN0aW9uLnNob3djYXNlLmRhcmsgLnNpZ25wb3N0IGEgcCxcbiAgICBzZWN0aW9uLnNob3djYXNlLmRhcmsgLnNpZ25wb3N0IGgzIHAsXG4gICAgc2VjdGlvbi5zaG93Y2FzZSAuc2lnbnBvc3RzLmRhcmsgLnNpZ25wb3N0IGEgcCxcbiAgICBzZWN0aW9uLnNob3djYXNlIC5zaWducG9zdHMuZGFyayAuc2lnbnBvc3QgaDMgcCB7XG4gICAgICBjb2xvcjogIzBhMGEwYTsgfVxuICBzZWN0aW9uLnNob3djYXNlLmRhcmsgLnNpZ25wb3N0IGgzOmFmdGVyLFxuICBzZWN0aW9uLnNob3djYXNlIC5zaWducG9zdHMuZGFyayAuc2lnbnBvc3QgaDM6YWZ0ZXIge1xuICAgIGJvcmRlci1yaWdodC1jb2xvcjogIzY4MDBkMjtcbiAgICBib3JkZXItdG9wLWNvbG9yOiAjNjgwMGQyOyB9XG5cbnNlY3Rpb24uc2hvd2Nhc2U6bnRoLW9mLXR5cGUoMm4gKyAxKSAucm93IC5jb250ZW50IHtcbiAgZmxvYXQ6IGxlZnQ7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgc2VjdGlvbi5zaG93Y2FzZTpudGgtb2YtdHlwZSgybiArIDEpIC5iZy1pbWFnZTpiZWZvcmUge1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgcmdiYSgwLCAwLCAwLCAwLjY1KSAwJSwgcmdiYSgwLCAwLCAwLCAwKSA4MCUpOyB9IH1cblxuc2VjdGlvbi5wcm9tby1saXN0aW5nLXdyYXBwZXIge1xuICBwYWRkaW5nOiAwO1xuICBiYWNrZ3JvdW5kOiAjZmVmZWZlOyB9XG5cbnNlY3Rpb24ucHJvbW8tbGlzdGluZyB7XG4gIHBhZGRpbmc6IDA7IH1cbiAgc2VjdGlvbi5wcm9tby1saXN0aW5nIC5iZy1pbWFnZSB7XG4gICAgbWluLWhlaWdodDogMjB2dztcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvYmctZG90cy5wbmcpLCBsaW5lYXItZ3JhZGllbnQoODBkZWcsICM2ODAwZDIgNjAlLCAjMzAxNjRhIDEwMCUpO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1zaXplOiBhdXRvIDEwMCU7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgMDtcbiAgICBwYWRkaW5nLXRvcDogMS4yNXJlbTtcbiAgICBwYWRkaW5nLWJvdHRvbTogMS4yNXJlbTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICBzZWN0aW9uLnByb21vLWxpc3RpbmcgLmJnLWltYWdlIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDVyZW07XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiA1cmVtOyB9IH1cbiAgYm9keVtkYXRhLXNsdWc9XCJzb2x1dGlvbnNcIl0gc2VjdGlvbi5wcm9tby1saXN0aW5nOm5vdCguY29udGFjdCkgLmJnLWltYWdlIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2JnLWRvdHMtc29sdXRpb25zLnBuZyksIGxpbmVhci1ncmFkaWVudCg4MGRlZywgIzY4MDBkMiA2MCUsICMzMDE2NGEgMTAwJSk7XG4gICAgYmFja2dyb3VuZC1zaXplOiAxMDAlIGF1dG87XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAxMDAlOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIGJvZHlbZGF0YS1zbHVnPVwic29sdXRpb25zXCJdIHNlY3Rpb24ucHJvbW8tbGlzdGluZzpub3QoLmNvbnRhY3QpIC5iZy1pbWFnZSA+IC5yb3cge1xuICAgICAgICBwYWRkaW5nLXRvcDogMS4yNXJlbTsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIGJvZHlbZGF0YS1zbHVnPVwic29sdXRpb25zXCJdIHNlY3Rpb24ucHJvbW8tbGlzdGluZzpub3QoLmNvbnRhY3QpIC5iZy1pbWFnZSA+IC5yb3cge1xuICAgICAgICBwYWRkaW5nLXRvcDogMDsgfSB9XG4gIGJvZHkuc2luZ2xlLWNhc2Vfc3R1ZHkgc2VjdGlvbi5wcm9tby1saXN0aW5nIC5iZy1pbWFnZSB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9iZy1kb3RzLW1hc3Rlci5wbmcpLCBsaW5lYXItZ3JhZGllbnQodG8gdG9wLCAjNDQwMDk5IDEwJSwgIzY4MDBkMiAxMDAlKTtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCUgYXV0bztcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBsZWZ0IDAgYm90dG9tIDkwJTsgfVxuICAgIGJvZHkuc2luZ2xlLWNhc2Vfc3R1ZHkgc2VjdGlvbi5wcm9tby1saXN0aW5nIC5iZy1pbWFnZTphZnRlciB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gdG9wLCByZ2JhKDY4LCAwLCAxNTMsIDApIDMwJSwgIzQ0MDA5OSAxMDAlKTtcbiAgICAgIHotaW5kZXg6IDE7IH1cbiAgICBib2R5LnNpbmdsZS1jYXNlX3N0dWR5IHNlY3Rpb24ucHJvbW8tbGlzdGluZyAuYmctaW1hZ2UgPiAqIHtcbiAgICAgIHotaW5kZXg6IDI7IH1cbiAgc2VjdGlvbi5wcm9tby1saXN0aW5nIC5yb3cge1xuICAgIG1heC13aWR0aDogbm9uZTtcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOyB9XG4gICAgc2VjdGlvbi5wcm9tby1saXN0aW5nIC5yb3c6OmJlZm9yZSwgc2VjdGlvbi5wcm9tby1saXN0aW5nIC5yb3c6OmFmdGVyIHtcbiAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgICAgY29udGVudDogJyAnO1xuICAgICAgZmxleC1iYXNpczogMDtcbiAgICAgIG9yZGVyOiAxOyB9XG4gICAgc2VjdGlvbi5wcm9tby1saXN0aW5nIC5yb3c6OmFmdGVyIHtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgc2VjdGlvbi5wcm9tby1saXN0aW5nIC5yb3cgLmNvbnRlbnQge1xuICAgICAgY29sb3I6ICNmZWZlZmU7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtOyB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICBzZWN0aW9uLnByb21vLWxpc3RpbmcgLnJvdyAuY29udGVudCB7XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgICAgIHNlY3Rpb24ucHJvbW8tbGlzdGluZyAucm93IC5jb250ZW50LCBzZWN0aW9uLnByb21vLWxpc3RpbmcgLnJvdyAuY29udGVudDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgICBzZWN0aW9uLnByb21vLWxpc3RpbmcgLnJvdyAuY29udGVudDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0OyB9XG4gICAgICBzZWN0aW9uLnByb21vLWxpc3RpbmcgLnJvdyAuY29udGVudCAubGFiZWwge1xuICAgICAgICBjb2xvcjogI2ZiZTIwMDsgfVxuICAgICAgc2VjdGlvbi5wcm9tby1saXN0aW5nIC5yb3cgLmNvbnRlbnQgaDIge1xuICAgICAgICBmb250LXNpemU6IDEuMTg3NXJlbTsgfVxuICAgICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAgIHNlY3Rpb24ucHJvbW8tbGlzdGluZyAucm93IC5jb250ZW50IGgyIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS43NXJlbTsgfSB9XG4gICAgICBzZWN0aW9uLnByb21vLWxpc3RpbmcgLnJvdyAuY29udGVudC5sYWJlbGxlZCB7XG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7IH1cbiAgICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgICBzZWN0aW9uLnByb21vLWxpc3RpbmcgLnJvdyAuY29udGVudC5sYWJlbGxlZCB7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDI1cmVtOyB9IH1cbiAgICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgICBzZWN0aW9uLnByb21vLWxpc3RpbmcgLnJvdyAuY29udGVudC5sYWJlbGxlZCB7XG4gICAgICAgICAgICB3aWR0aDogNDEuNjY2NjclOyB9IH1cbiAgICAgIGJvZHkuaG9tZSBzZWN0aW9uLnByb21vLWxpc3RpbmcgLnJvdyAuY29udGVudCBoMiB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4yNXJlbTsgfVxuICAgICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAgIGJvZHkuaG9tZSBzZWN0aW9uLnByb21vLWxpc3RpbmcgLnJvdyAuY29udGVudCBoMiB7XG4gICAgICAgICAgICBmb250LXNpemU6IDIuMTI1cmVtOyB9IH1cbiAgc2VjdGlvbi5wcm9tby1saXN0aW5nIC5idXR0b24sIHNlY3Rpb24ucHJvbW8tbGlzdGluZyAud3AtYmxvY2stYnV0dG9uIC53cC1ibG9jay1idXR0b25fX2xpbmssIC53cC1ibG9jay1idXR0b24gc2VjdGlvbi5wcm9tby1saXN0aW5nIC53cC1ibG9jay1idXR0b25fX2xpbmssIHNlY3Rpb24ucHJvbW8tbGlzdGluZy5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYSwgc2VjdGlvbi5wcm9tby1saXN0aW5nIHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLCBzZWN0aW9uLnByb21vLWxpc3RpbmctMi5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgc2VjdGlvbi5wcm9tby1saXN0aW5nIGEge1xuICAgIGJhY2tncm91bmQ6ICNmZWZlZmU7XG4gICAgY29sb3I6ICM2ODAwZDI7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBtYXJnaW46IDEuMjVyZW0gYXV0byAwO1xuICAgIGFsaWduLXNlbGY6IGNlbnRlcjsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICBzZWN0aW9uLnByb21vLWxpc3RpbmcgLmJ1dHRvbiwgc2VjdGlvbi5wcm9tby1saXN0aW5nIC53cC1ibG9jay1idXR0b24gLndwLWJsb2NrLWJ1dHRvbl9fbGluaywgLndwLWJsb2NrLWJ1dHRvbiBzZWN0aW9uLnByb21vLWxpc3RpbmcgLndwLWJsb2NrLWJ1dHRvbl9fbGluaywgc2VjdGlvbi5wcm9tby1saXN0aW5nLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLCBzZWN0aW9uLnByb21vLWxpc3Rpbmcgc2VjdGlvbi5wcm9tby1saXN0aW5nLTIuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEsIHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBzZWN0aW9uLnByb21vLWxpc3RpbmcgYSB7XG4gICAgICAgIG1hcmdpbjogMy43NXJlbSBhdXRvIDA7IH0gfVxuICAgIHNlY3Rpb24ucHJvbW8tbGlzdGluZyAuYnV0dG9uOmhvdmVyLCBzZWN0aW9uLnByb21vLWxpc3RpbmcgLndwLWJsb2NrLWJ1dHRvbiAud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLCAud3AtYmxvY2stYnV0dG9uIHNlY3Rpb24ucHJvbW8tbGlzdGluZyAud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLCBzZWN0aW9uLnByb21vLWxpc3RpbmcuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGE6aG92ZXIsIHNlY3Rpb24ucHJvbW8tbGlzdGluZyBzZWN0aW9uLnByb21vLWxpc3RpbmctMi5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYTpob3Zlciwgc2VjdGlvbi5wcm9tby1saXN0aW5nLTIuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIHNlY3Rpb24ucHJvbW8tbGlzdGluZyBhOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQ6ICNmYmUyMDA7XG4gICAgICBjb2xvcjogIzY4MDBkMjsgfVxuICBzZWN0aW9uLnByb21vLWxpc3RpbmcuY29udGFjdCAucm93IC5jb250ZW50IHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIHNlY3Rpb24ucHJvbW8tbGlzdGluZy5jb250YWN0IC5yb3cgLmNvbnRlbnQge1xuICAgICAgICBtYXgtd2lkdGg6IDI1cmVtOyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgc2VjdGlvbi5wcm9tby1saXN0aW5nLmNvbnRhY3QgLnJvdyAuY29udGVudCB7XG4gICAgICAgIHdpZHRoOiA0MS42NjY2NyU7IH0gfVxuICBzZWN0aW9uLnByb21vLWxpc3RpbmcuY29udGFjdCAuYmctaW1hZ2Uge1xuICAgIGJhY2tncm91bmQ6ICM0NDAwOTkgdXJsKC4uL2ltYWdlcy9iZy1jb250YWN0LnN2Zykgbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtc2l6ZTogYXV0byAxMDAlO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IDIwJSB0b3AgMDtcbiAgICBtaW4taGVpZ2h0OiAwOyB9XG4gIHNlY3Rpb24ucHJvbW8tbGlzdGluZy5hY2NvcmRpb24tY29udGVudCB7XG4gICAgbWFyZ2luLWxlZnQ6IC0xLjI1cmVtO1xuICAgIG1hcmdpbi1yaWdodDogLTEuMjVyZW07IH1cbiAgc2VjdGlvbi5wcm9tby1saXN0aW5nLnN0YXQgLnJvdy5zaWducG9zdHMgLnNpZ25wb3N0IGgzIHtcbiAgICBmb250LXNpemU6IDMuNXJlbTtcbiAgICBmb250LXdlaWdodDogMTAwOyB9XG5cbi5wcm9tby1saXN0aW5nLnRhYi13cmFwcGVyIHVsLnRhYnMge1xuICBtYXJnaW4tYm90dG9tOiAyLjVyZW07XG4gIG1hcmdpbi10b3A6IDEuMjVyZW07IH1cblxuLnByb21vLWxpc3RpbmcudGFiLXdyYXBwZXIgLmFjY29yZGlvbi1pdGVtLmlzLWFjdGl2ZSAuYWNjb3JkaW9uLXRpdGxlIHtcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogI2ZlZmVmZTsgfVxuXG4ucHJvbW8tbGlzdGluZy50YWItd3JhcHBlciAuYWNjb3JkaW9uLXRpdGxlIHtcbiAgYm9yZGVyLWJvdHRvbS13aWR0aDogMXB4OyB9XG5cbi5wcm9tby1saXN0aW5nLnRhYi13cmFwcGVyIC5hY2NvcmRpb24tY29udGVudCB7XG4gIGJvcmRlcjogMDsgfVxuXG4ucm93LnNpZ25wb3N0cyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIG1hcmdpbi10b3A6IDEuODc1cmVtOyB9XG4gIC5yb3cuc2lnbnBvc3RzOmJlZm9yZSwgLnJvdy5zaWducG9zdHM6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5yb3cuc2lnbnBvc3RzIHtcbiAgICAgIG1hcmdpbi10b3A6IDMuNzVyZW07IH0gfVxuICAucm93LnNpZ25wb3N0cyAuc2lnbnBvc3Qge1xuICAgIGZsZXgtZ3JvdzogMTtcbiAgICBmbGV4LXNocmluazogMTtcbiAgICBmbGV4LWJhc2lzOiA1MCU7XG4gICAgd2lkdGg6IDUwJTtcbiAgICBjb2xvcjogI2ZlZmVmZTtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjI1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07XG4gICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLnJvdy5zaWducG9zdHMgLnNpZ25wb3N0IHtcbiAgICAgICAgbWF4LXdpZHRoOiAzMy4zMzMzJTtcbiAgICAgICAgZmxleC1iYXNpczogMzMuMzMzMyU7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07IH1cbiAgICAgICAgYm9keS5ob21lIC5yb3cuc2lnbnBvc3RzIC5zaWducG9zdCB7XG4gICAgICAgICAgbWF4LXdpZHRoOiAyNSU7XG4gICAgICAgICAgZmxleC1iYXNpczogMjUlOyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLnJvdy5zaWducG9zdHMgLnNpZ25wb3N0IHtcbiAgICAgICAgbWF4LXdpZHRoOiAyMCU7IH1cbiAgICAgICAgYm9keS5ob21lIC5yb3cuc2lnbnBvc3RzIC5zaWducG9zdCB7XG4gICAgICAgICAgbWF4LXdpZHRoOiAyNSU7IH1cbiAgICAgICAgICBib2R5LmhvbWUgLnJvdy5zaWducG9zdHMgLnNpZ25wb3N0IGgzIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDEyLjVyZW07IH1cbiAgICAgICAgYm9keS5zaW5nbGUgLnJvdy5zaWducG9zdHMgLnNpZ25wb3N0IHtcbiAgICAgICAgICBtYXgtd2lkdGg6IDIwJTsgfVxuICAgICAgICBib2R5W2RhdGEtc2x1Zz1cInNvbHV0aW9uc1wiXSAucm93LnNpZ25wb3N0cyAuc2lnbnBvc3Qge1xuICAgICAgICAgIG1heC13aWR0aDogMzMuMzMzMyU7IH1cbiAgICAgICAgICBib2R5W2RhdGEtc2x1Zz1cInNvbHV0aW9uc1wiXSAucm93LnNpZ25wb3N0cyAuc2lnbnBvc3QgYSxcbiAgICAgICAgICBib2R5W2RhdGEtc2x1Zz1cInNvbHV0aW9uc1wiXSAucm93LnNpZ25wb3N0cyAuc2lnbnBvc3Qgc3Bhbi5uby1saW5rIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAgICAgICAgICAgYm9keVtkYXRhLXNsdWc9XCJzb2x1dGlvbnNcIl0gLnJvdy5zaWducG9zdHMgLnNpZ25wb3N0IGEgaW1nLFxuICAgICAgICAgICAgYm9keVtkYXRhLXNsdWc9XCJzb2x1dGlvbnNcIl0gLnJvdy5zaWducG9zdHMgLnNpZ25wb3N0IHNwYW4ubm8tbGluayBpbWcge1xuICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEuMjVyZW07IH1cbiAgICAgICAgICAgIGJvZHlbZGF0YS1zbHVnPVwic29sdXRpb25zXCJdIC5yb3cuc2lnbnBvc3RzIC5zaWducG9zdCBhIGgzLFxuICAgICAgICAgICAgYm9keVtkYXRhLXNsdWc9XCJzb2x1dGlvbnNcIl0gLnJvdy5zaWducG9zdHMgLnNpZ25wb3N0IHNwYW4ubm8tbGluayBoMyB7XG4gICAgICAgICAgICAgIGZsZXg6IDEgMSBhdXRvOyB9XG4gICAgICAgIGJvZHlbZGF0YS1zbHVnKj1cInN1cHBvcnRcIl0gLnJvdy5zaWducG9zdHMgLnNpZ25wb3N0IHtcbiAgICAgICAgICBtYXgtd2lkdGg6IDMzLjMzMzMlOyB9XG4gICAgICAgICAgYm9keVtkYXRhLXNsdWcqPVwic3VwcG9ydFwiXSAucm93LnNpZ25wb3N0cyAuc2lnbnBvc3QgYSxcbiAgICAgICAgICBib2R5W2RhdGEtc2x1Zyo9XCJzdXBwb3J0XCJdIC5yb3cuc2lnbnBvc3RzIC5zaWducG9zdCBzcGFuLm5vLWxpbmsge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gICAgICAgICAgICBib2R5W2RhdGEtc2x1Zyo9XCJzdXBwb3J0XCJdIC5yb3cuc2lnbnBvc3RzIC5zaWducG9zdCBhIGltZyxcbiAgICAgICAgICAgIGJvZHlbZGF0YS1zbHVnKj1cInN1cHBvcnRcIl0gLnJvdy5zaWducG9zdHMgLnNpZ25wb3N0IHNwYW4ubm8tbGluayBpbWcge1xuICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEuMjVyZW07IH1cbiAgICAgICAgICAgIGJvZHlbZGF0YS1zbHVnKj1cInN1cHBvcnRcIl0gLnJvdy5zaWducG9zdHMgLnNpZ25wb3N0IGEgaDMsXG4gICAgICAgICAgICBib2R5W2RhdGEtc2x1Zyo9XCJzdXBwb3J0XCJdIC5yb3cuc2lnbnBvc3RzIC5zaWducG9zdCBzcGFuLm5vLWxpbmsgaDMge1xuICAgICAgICAgICAgICBmbGV4OiAxIDEgYXV0bzsgfSB9XG4gICAgLnJvdy5zaWducG9zdHMgLnNpZ25wb3N0IGltZyB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwLjYyNXJlbTtcbiAgICAgIG1heC13aWR0aDogNXJlbTsgfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgLnJvdy5zaWducG9zdHMgLnNpZ25wb3N0IGltZyB7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMS4yNXJlbTtcbiAgICAgICAgICBtYXgtd2lkdGg6IDcuNXJlbTsgfSB9XG4gICAgLnJvdy5zaWducG9zdHMgLnNpZ25wb3N0IGgzIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDAuNjI1cmVtO1xuICAgICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICBjb2xvcjogI2ZiZTIwMDsgfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgLnJvdy5zaWducG9zdHMgLnNpZ25wb3N0IGgzIHtcbiAgICAgICAgICBmb250LXNpemU6IDFyZW07IH0gfVxuICAgIC5yb3cuc2lnbnBvc3RzIC5zaWducG9zdCBwIHtcbiAgICAgIGZvbnQtc2l6ZTogMC44NzVyZW07IH1cbiAgLnJvdy5zaWducG9zdHMgYSB7XG4gICAgY29sb3I6ICNmYmUyMDA7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cbiAgICAucm93LnNpZ25wb3N0cyBhIGgzOmFmdGVyIHtcbiAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgdG9wOiAtMC4xMjVyZW07XG4gICAgICByaWdodDogYXV0bztcbiAgICAgIG1hcmdpbi1sZWZ0OiAtMS4yNXJlbTtcbiAgICAgIG1hcmdpbi10b3A6IGF1dG87XG4gICAgICBib3JkZXI6IDJweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlci1yaWdodC1jb2xvcjogI2ZiZTIwMDtcbiAgICAgIGJvcmRlci10b3AtY29sb3I6ICNmYmUyMDA7XG4gICAgICB3aWR0aDogMC42MjVyZW07XG4gICAgICBoZWlnaHQ6IDAuNjI1cmVtO1xuICAgICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpIHRyYW5zbGF0ZSgyMHB4LCAtMThweCk7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAgICAgLnJvdy5zaWducG9zdHMgYSBoMzphZnRlciB7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IC0xLjU2MjVyZW07XG4gICAgICAgICAgdG9wOiAtMC4wNjI1cmVtO1xuICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKSB0cmFuc2xhdGUoMjBweCwgLTE4cHgpIHNjYWxlKDAuOCk7IH0gfVxuICAgIC5yb3cuc2lnbnBvc3RzIGEgcCB7XG4gICAgICBjb2xvcjogI2ZmZjsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5yb3cuc2lnbnBvc3RzLmNvbHMtMyAuc2lnbnBvc3Qge1xuICAgICAgbWF4LXdpZHRoOiAzMy4zMzMzJTsgfVxuICAgIC5yb3cuc2lnbnBvc3RzLmNvbHMtNCAuc2lnbnBvc3Qge1xuICAgICAgbWF4LXdpZHRoOiAyNSU7IH1cbiAgICAucm93LnNpZ25wb3N0cy5jb2xzLTUgLnNpZ25wb3N0IHtcbiAgICAgIG1heC13aWR0aDogMjAlOyB9IH1cblxuc2VjdGlvbi5wcm9tby1saXN0aW5nLTItd3JhcHBlciB7XG4gIHBhZGRpbmc6IDA7XG4gIGJhY2tncm91bmQ6ICNmZWZlZmU7IH1cblxuc2VjdGlvbi5wcm9tby1saXN0aW5nLTIge1xuICBwYWRkaW5nOiAwOyB9XG4gIHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yIC5iZy1pbWFnZSB7XG4gICAgbWluLWhlaWdodDogMjB2dztcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvYmctZG90cy5wbmcpLCBsaW5lYXItZ3JhZGllbnQoODBkZWcsICM2ODAwZDIgNjAlLCAjMzAxNjRhIDEwMCUpO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1zaXplOiBhdXRvIDEwMCU7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgMDtcbiAgICBwYWRkaW5nLXRvcDogMS4yNXJlbTtcbiAgICBwYWRkaW5nLWJvdHRvbTogMS4yNXJlbTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICBzZWN0aW9uLnByb21vLWxpc3RpbmctMiAuYmctaW1hZ2Uge1xuICAgICAgICBwYWRkaW5nLXRvcDogNXJlbTtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDVyZW07IH0gfVxuICBib2R5W2RhdGEtc2x1Zz1cInNvbHV0aW9uc1wiXSBzZWN0aW9uLnByb21vLWxpc3RpbmctMjpub3QoLmNvbnRhY3QpIC5iZy1pbWFnZSB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9iZy1kb3RzLXNvbHV0aW9ucy5wbmcpLCBsaW5lYXItZ3JhZGllbnQoODBkZWcsICM2ODAwZDIgNjAlLCAjMzAxNjRhIDEwMCUpO1xuICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJSBhdXRvO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IDAgMTAwJTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICBib2R5W2RhdGEtc2x1Zz1cInNvbHV0aW9uc1wiXSBzZWN0aW9uLnByb21vLWxpc3RpbmctMjpub3QoLmNvbnRhY3QpIC5iZy1pbWFnZSA+IC5yb3cge1xuICAgICAgICBwYWRkaW5nLXRvcDogMS4yNXJlbTsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIGJvZHlbZGF0YS1zbHVnPVwic29sdXRpb25zXCJdIHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yOm5vdCguY29udGFjdCkgLmJnLWltYWdlID4gLnJvdyB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAwOyB9IH1cbiAgYm9keS5zaW5nbGUtY2FzZV9zdHVkeSBzZWN0aW9uLnByb21vLWxpc3RpbmctMiAuYmctaW1hZ2Uge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvYmctZG90cy1tYXN0ZXIucG5nKSwgbGluZWFyLWdyYWRpZW50KHRvIHRvcCwgIzQ0MDA5OSAxMCUsICM2ODAwZDIgMTAwJSk7XG4gICAgYmFja2dyb3VuZC1zaXplOiAxMDAlIGF1dG87XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogbGVmdCAwIGJvdHRvbSA5MCU7IH1cbiAgICBib2R5LnNpbmdsZS1jYXNlX3N0dWR5IHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yIC5iZy1pbWFnZTphZnRlciB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gdG9wLCByZ2JhKDY4LCAwLCAxNTMsIDApIDMwJSwgIzQ0MDA5OSAxMDAlKTtcbiAgICAgIHotaW5kZXg6IDE7IH1cbiAgICBib2R5LnNpbmdsZS1jYXNlX3N0dWR5IHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yIC5iZy1pbWFnZSA+ICoge1xuICAgICAgei1pbmRleDogMjsgfVxuICBzZWN0aW9uLnByb21vLWxpc3RpbmctMiAucm93IHtcbiAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgIHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yIC5yb3c6OmJlZm9yZSwgc2VjdGlvbi5wcm9tby1saXN0aW5nLTIgLnJvdzo6YWZ0ZXIge1xuICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgICBjb250ZW50OiAnICc7XG4gICAgICBmbGV4LWJhc2lzOiAwO1xuICAgICAgb3JkZXI6IDE7IH1cbiAgICBzZWN0aW9uLnByb21vLWxpc3RpbmctMiAucm93OjphZnRlciB7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yIC5yb3cgLmNvbnRlbnQge1xuICAgICAgY29sb3I6ICNmZWZlZmU7XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTsgfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgc2VjdGlvbi5wcm9tby1saXN0aW5nLTIgLnJvdyAuY29udGVudCB7XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgICAgIHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yIC5yb3cgLmNvbnRlbnQsIHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yIC5yb3cgLmNvbnRlbnQ6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBjbGVhcjogbm9uZTsgfVxuICAgICAgc2VjdGlvbi5wcm9tby1saXN0aW5nLTIgLnJvdyAuY29udGVudDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0OyB9XG4gICAgICBzZWN0aW9uLnByb21vLWxpc3RpbmctMiAucm93IC5jb250ZW50IC5sYWJlbCB7XG4gICAgICAgIGNvbG9yOiAjZmJlMjAwOyB9XG4gICAgICBzZWN0aW9uLnByb21vLWxpc3RpbmctMiAucm93IC5jb250ZW50IGgyIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjE4NzVyZW07IH1cbiAgICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgICBzZWN0aW9uLnByb21vLWxpc3RpbmctMiAucm93IC5jb250ZW50IGgyIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS43NXJlbTsgfSB9XG4gICAgICBzZWN0aW9uLnByb21vLWxpc3RpbmctMiAucm93IC5jb250ZW50LmxhYmVsbGVkIHtcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDsgfVxuICAgICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAgIHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yIC5yb3cgLmNvbnRlbnQubGFiZWxsZWQge1xuICAgICAgICAgICAgbWF4LXdpZHRoOiAyNXJlbTsgfSB9XG4gICAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAgICAgc2VjdGlvbi5wcm9tby1saXN0aW5nLTIgLnJvdyAuY29udGVudC5sYWJlbGxlZCB7XG4gICAgICAgICAgICB3aWR0aDogNDEuNjY2NjclOyB9IH1cbiAgICAgIGJvZHkuaG9tZSBzZWN0aW9uLnByb21vLWxpc3RpbmctMiAucm93IC5jb250ZW50IGgyIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjI1cmVtOyB9XG4gICAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgICAgYm9keS5ob21lIHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yIC5yb3cgLmNvbnRlbnQgaDIge1xuICAgICAgICAgICAgZm9udC1zaXplOiAyLjEyNXJlbTsgfSB9XG4gIHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yIC5idXR0b24sIHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yIC53cC1ibG9jay1idXR0b24gLndwLWJsb2NrLWJ1dHRvbl9fbGluaywgLndwLWJsb2NrLWJ1dHRvbiBzZWN0aW9uLnByb21vLWxpc3RpbmctMiAud3AtYmxvY2stYnV0dG9uX19saW5rLCBzZWN0aW9uLnByb21vLWxpc3RpbmctMiBzZWN0aW9uLnByb21vLWxpc3RpbmcuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEsIHNlY3Rpb24ucHJvbW8tbGlzdGluZy5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgc2VjdGlvbi5wcm9tby1saXN0aW5nLTIgYSwgc2VjdGlvbi5wcm9tby1saXN0aW5nLTIuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEge1xuICAgIGJhY2tncm91bmQ6ICNmZWZlZmU7XG4gICAgY29sb3I6ICM2ODAwZDI7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBtYXJnaW46IDEuMjVyZW0gYXV0byAwO1xuICAgIGFsaWduLXNlbGY6IGNlbnRlcjsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICBzZWN0aW9uLnByb21vLWxpc3RpbmctMiAuYnV0dG9uLCBzZWN0aW9uLnByb21vLWxpc3RpbmctMiAud3AtYmxvY2stYnV0dG9uIC53cC1ibG9jay1idXR0b25fX2xpbmssIC53cC1ibG9jay1idXR0b24gc2VjdGlvbi5wcm9tby1saXN0aW5nLTIgLndwLWJsb2NrLWJ1dHRvbl9fbGluaywgc2VjdGlvbi5wcm9tby1saXN0aW5nLTIgc2VjdGlvbi5wcm9tby1saXN0aW5nLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLCBzZWN0aW9uLnByb21vLWxpc3RpbmcuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yIGEsIHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhIHtcbiAgICAgICAgbWFyZ2luOiAzLjc1cmVtIGF1dG8gMDsgfSB9XG4gICAgc2VjdGlvbi5wcm9tby1saXN0aW5nLTIgLmJ1dHRvbjpob3Zlciwgc2VjdGlvbi5wcm9tby1saXN0aW5nLTIgLndwLWJsb2NrLWJ1dHRvbiAud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLCAud3AtYmxvY2stYnV0dG9uIHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yIC53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIsIHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yIHNlY3Rpb24ucHJvbW8tbGlzdGluZy5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYTpob3Zlciwgc2VjdGlvbi5wcm9tby1saXN0aW5nLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBzZWN0aW9uLnByb21vLWxpc3RpbmctMiBhOmhvdmVyLCBzZWN0aW9uLnByb21vLWxpc3RpbmctMi5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYTpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kOiAjZmJlMjAwO1xuICAgICAgY29sb3I6ICM2ODAwZDI7IH1cbiAgc2VjdGlvbi5wcm9tby1saXN0aW5nLTIuY29udGFjdCAucm93IC5jb250ZW50IHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yLmNvbnRhY3QgLnJvdyAuY29udGVudCB7XG4gICAgICAgIG1heC13aWR0aDogMjVyZW07IH0gfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICBzZWN0aW9uLnByb21vLWxpc3RpbmctMi5jb250YWN0IC5yb3cgLmNvbnRlbnQge1xuICAgICAgICB3aWR0aDogNDEuNjY2NjclOyB9IH1cbiAgc2VjdGlvbi5wcm9tby1saXN0aW5nLTIuY29udGFjdCAuYmctaW1hZ2Uge1xuICAgIGJhY2tncm91bmQ6ICM0NDAwOTkgdXJsKC4uL2ltYWdlcy9iZy1jb250YWN0LnN2Zykgbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtc2l6ZTogYXV0byAxMDAlO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IDIwJSB0b3AgMDtcbiAgICBtaW4taGVpZ2h0OiAwOyB9XG4gIHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yLmFjY29yZGlvbi1jb250ZW50IHtcbiAgICBtYXJnaW4tbGVmdDogLTEuMjVyZW07XG4gICAgbWFyZ2luLXJpZ2h0OiAtMS4yNXJlbTsgfVxuICBzZWN0aW9uLnByb21vLWxpc3RpbmctMi5zdGF0IC5yb3cuc2lnbnBvc3RzIC5zaWducG9zdCBoMyB7XG4gICAgZm9udC1zaXplOiAzLjVyZW07XG4gICAgZm9udC13ZWlnaHQ6IDEwMDsgfVxuXG4ucHJvbW8tbGlzdGluZy0yLnRhYi13cmFwcGVyIHVsLnRhYnMge1xuICBtYXJnaW4tYm90dG9tOiAyLjVyZW07XG4gIG1hcmdpbi10b3A6IDEuMjVyZW07IH1cblxuLnByb21vLWxpc3RpbmctMi50YWItd3JhcHBlciAuYWNjb3JkaW9uLWl0ZW0uaXMtYWN0aXZlIC5hY2NvcmRpb24tdGl0bGUge1xuICBib3JkZXItYm90dG9tLWNvbG9yOiAjZmVmZWZlOyB9XG5cbi5wcm9tby1saXN0aW5nLTIudGFiLXdyYXBwZXIgLmFjY29yZGlvbi10aXRsZSB7XG4gIGJvcmRlci1ib3R0b20td2lkdGg6IDFweDsgfVxuXG4ucHJvbW8tbGlzdGluZy0yLnRhYi13cmFwcGVyIC5hY2NvcmRpb24tY29udGVudCB7XG4gIGJvcmRlcjogMDsgfVxuXG4ucm93LnNpZ25wb3N0cy0yIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBsZWZ0O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIG1hcmdpbi10b3A6IDEuODc1cmVtOyB9XG4gIC5yb3cuc2lnbnBvc3RzLTI6YmVmb3JlLCAucm93LnNpZ25wb3N0cy0yOmFmdGVyIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAucm93LnNpZ25wb3N0cy0yIHtcbiAgICAgIG1hcmdpbi10b3A6IDMuNzVyZW07IH0gfVxuICAucm93LnNpZ25wb3N0cy0yIC5zaWducG9zdCB7XG4gICAgZmxleC1ncm93OiAxO1xuICAgIGZsZXgtc2hyaW5rOiAxO1xuICAgIGZsZXgtYmFzaXM6IDUwJTtcbiAgICB3aWR0aDogNTAlO1xuICAgIGNvbG9yOiAjZmVmZWZlO1xuICAgIG1hcmdpbi1ib3R0b206IDEuMjVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAucm93LnNpZ25wb3N0cy0yIC5zaWducG9zdCB7XG4gICAgICAgIG1heC13aWR0aDogMzMuMzMzMyU7XG4gICAgICAgIGZsZXgtYmFzaXM6IDMzLjMzMzMlO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtOyB9XG4gICAgICAgIGJvZHkuaG9tZSAucm93LnNpZ25wb3N0cy0yIC5zaWducG9zdCB7XG4gICAgICAgICAgbWF4LXdpZHRoOiAyNSU7XG4gICAgICAgICAgZmxleC1iYXNpczogMjUlOyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLnJvdy5zaWducG9zdHMtMiAuc2lnbnBvc3Qge1xuICAgICAgICBtYXgtd2lkdGg6IDIwJTsgfVxuICAgICAgICBib2R5LmhvbWUgLnJvdy5zaWducG9zdHMtMiAuc2lnbnBvc3Qge1xuICAgICAgICAgIG1heC13aWR0aDogMjUlOyB9XG4gICAgICAgICAgYm9keS5ob21lIC5yb3cuc2lnbnBvc3RzLTIgLnNpZ25wb3N0IGgzIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDEyLjVyZW07IH1cbiAgICAgICAgYm9keS5zaW5nbGUgLnJvdy5zaWducG9zdHMtMiAuc2lnbnBvc3Qge1xuICAgICAgICAgIG1heC13aWR0aDogMjAlOyB9XG4gICAgICAgIGJvZHlbZGF0YS1zbHVnPVwic29sdXRpb25zXCJdIC5yb3cuc2lnbnBvc3RzLTIgLnNpZ25wb3N0IHtcbiAgICAgICAgICBtYXgtd2lkdGg6IDMzLjMzMzMlOyB9XG4gICAgICAgICAgYm9keVtkYXRhLXNsdWc9XCJzb2x1dGlvbnNcIl0gLnJvdy5zaWducG9zdHMtMiAuc2lnbnBvc3QgYSxcbiAgICAgICAgICBib2R5W2RhdGEtc2x1Zz1cInNvbHV0aW9uc1wiXSAucm93LnNpZ25wb3N0cy0yIC5zaWducG9zdCBzcGFuLm5vLWxpbmsge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gICAgICAgICAgICBib2R5W2RhdGEtc2x1Zz1cInNvbHV0aW9uc1wiXSAucm93LnNpZ25wb3N0cy0yIC5zaWducG9zdCBhIGltZyxcbiAgICAgICAgICAgIGJvZHlbZGF0YS1zbHVnPVwic29sdXRpb25zXCJdIC5yb3cuc2lnbnBvc3RzLTIgLnNpZ25wb3N0IHNwYW4ubm8tbGluayBpbWcge1xuICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEuMjVyZW07IH1cbiAgICAgICAgICAgIGJvZHlbZGF0YS1zbHVnPVwic29sdXRpb25zXCJdIC5yb3cuc2lnbnBvc3RzLTIgLnNpZ25wb3N0IGEgaDMsXG4gICAgICAgICAgICBib2R5W2RhdGEtc2x1Zz1cInNvbHV0aW9uc1wiXSAucm93LnNpZ25wb3N0cy0yIC5zaWducG9zdCBzcGFuLm5vLWxpbmsgaDMge1xuICAgICAgICAgICAgICBmbGV4OiAxIDEgYXV0bzsgfVxuICAgICAgICBib2R5W2RhdGEtc2x1Zyo9XCJzdXBwb3J0XCJdIC5yb3cuc2lnbnBvc3RzLTIgLnNpZ25wb3N0IHtcbiAgICAgICAgICBtYXgtd2lkdGg6IDMzLjMzMzMlOyB9XG4gICAgICAgICAgYm9keVtkYXRhLXNsdWcqPVwic3VwcG9ydFwiXSAucm93LnNpZ25wb3N0cy0yIC5zaWducG9zdCBhLFxuICAgICAgICAgIGJvZHlbZGF0YS1zbHVnKj1cInN1cHBvcnRcIl0gLnJvdy5zaWducG9zdHMtMiAuc2lnbnBvc3Qgc3Bhbi5uby1saW5rIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAgICAgICAgICAgYm9keVtkYXRhLXNsdWcqPVwic3VwcG9ydFwiXSAucm93LnNpZ25wb3N0cy0yIC5zaWducG9zdCBhIGltZyxcbiAgICAgICAgICAgIGJvZHlbZGF0YS1zbHVnKj1cInN1cHBvcnRcIl0gLnJvdy5zaWducG9zdHMtMiAuc2lnbnBvc3Qgc3Bhbi5uby1saW5rIGltZyB7XG4gICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMS4yNXJlbTsgfVxuICAgICAgICAgICAgYm9keVtkYXRhLXNsdWcqPVwic3VwcG9ydFwiXSAucm93LnNpZ25wb3N0cy0yIC5zaWducG9zdCBhIGgzLFxuICAgICAgICAgICAgYm9keVtkYXRhLXNsdWcqPVwic3VwcG9ydFwiXSAucm93LnNpZ25wb3N0cy0yIC5zaWducG9zdCBzcGFuLm5vLWxpbmsgaDMge1xuICAgICAgICAgICAgICBmbGV4OiAxIDEgYXV0bzsgfSB9XG4gICAgLnJvdy5zaWducG9zdHMtMiAuc2lnbnBvc3QgaW1nIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDAuNjI1cmVtO1xuICAgICAgbWF4LXdpZHRoOiA1cmVtO1xuICAgICAgbWF4LWhlaWdodDogOTBweDsgfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgLnJvdy5zaWducG9zdHMtMiAuc2lnbnBvc3QgaW1nIHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxLjI1cmVtO1xuICAgICAgICAgIG1heC13aWR0aDogNy41cmVtOyB9IH1cbiAgICAucm93LnNpZ25wb3N0cy0yIC5zaWducG9zdCBoMyB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwLjYyNXJlbTtcbiAgICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgY29sb3I6ICNmYmUyMDA7IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgIC5yb3cuc2lnbnBvc3RzLTIgLnNpZ25wb3N0IGgzIHtcbiAgICAgICAgICBmb250LXNpemU6IDFyZW07IH0gfVxuICAgIC5yb3cuc2lnbnBvc3RzLTIgLnNpZ25wb3N0IHAge1xuICAgICAgZm9udC1zaXplOiAwLjg3NXJlbTsgfVxuICAucm93LnNpZ25wb3N0cy0yIGEge1xuICAgIGNvbG9yOiAjZmJlMjAwO1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gICAgLnJvdy5zaWducG9zdHMtMiBhIGgzOmFmdGVyIHtcbiAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgdG9wOiAtMC4xMjVyZW07XG4gICAgICByaWdodDogYXV0bztcbiAgICAgIG1hcmdpbi1sZWZ0OiAtMS4yNXJlbTtcbiAgICAgIG1hcmdpbi10b3A6IGF1dG87XG4gICAgICBib3JkZXI6IDJweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlci1yaWdodC1jb2xvcjogI2ZiZTIwMDtcbiAgICAgIGJvcmRlci10b3AtY29sb3I6ICNmYmUyMDA7XG4gICAgICB3aWR0aDogMC42MjVyZW07XG4gICAgICBoZWlnaHQ6IDAuNjI1cmVtO1xuICAgICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpIHRyYW5zbGF0ZSgyMHB4LCAtMThweCk7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAgICAgLnJvdy5zaWducG9zdHMtMiBhIGgzOmFmdGVyIHtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogLTEuNTYyNXJlbTtcbiAgICAgICAgICB0b3A6IC0wLjA2MjVyZW07XG4gICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpIHRyYW5zbGF0ZSgyMHB4LCAtMThweCkgc2NhbGUoMC44KTsgfSB9XG4gICAgLnJvdy5zaWducG9zdHMtMiBhIHAge1xuICAgICAgY29sb3I6ICNmZmY7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAucm93LnNpZ25wb3N0cy0yLmNvbHMtMyAuc2lnbnBvc3Qge1xuICAgICAgbWF4LXdpZHRoOiAzMy4zMzMzJTsgfVxuICAgIC5yb3cuc2lnbnBvc3RzLTIuY29scy00IC5zaWducG9zdCB7XG4gICAgICBtYXgtd2lkdGg6IDI1JTsgfVxuICAgIC5yb3cuc2lnbnBvc3RzLTIuY29scy01IC5zaWducG9zdCB7XG4gICAgICBtYXgtd2lkdGg6IDIwJTsgfSB9XG5cbnNlY3Rpb24uc3BsaXQge1xuICBwYWRkaW5nOiAwOyB9XG4gIHNlY3Rpb24uc3BsaXQgLnJvdyB7XG4gICAgbWF4LXdpZHRoOiBub25lO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICBzZWN0aW9uLnNwbGl0IC5yb3c6OmJlZm9yZSwgc2VjdGlvbi5zcGxpdCAucm93OjphZnRlciB7XG4gICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgIGNvbnRlbnQ6ICcgJztcbiAgICAgIGZsZXgtYmFzaXM6IDA7XG4gICAgICBvcmRlcjogMTsgfVxuICAgIHNlY3Rpb24uc3BsaXQgLnJvdzo6YWZ0ZXIge1xuICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgc2VjdGlvbi5zcGxpdCAucm93IHtcbiAgICAgICAgZGlzcGxheTogZmxleDsgfVxuICAgICAgICBzZWN0aW9uLnNwbGl0IC5yb3c6YmVmb3JlLCBzZWN0aW9uLnNwbGl0IC5yb3c6YWZ0ZXIge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIHNlY3Rpb24uc3BsaXQucmV2ZXJzZSAucm93IHtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTsgfSB9XG4gIHNlY3Rpb24uc3BsaXQgLmNvbnRlbnQge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgc2VjdGlvbi5zcGxpdCAuY29udGVudCB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICAgIHNlY3Rpb24uc3BsaXQgLmNvbnRlbnQsIHNlY3Rpb24uc3BsaXQgLmNvbnRlbnQ6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgc2VjdGlvbi5zcGxpdCAuY29udGVudDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgIGZsb2F0OiByaWdodDsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICBzZWN0aW9uLnNwbGl0IC5jb250ZW50IHtcbiAgICAgICAgZmxleDogMSAxIDUwJTtcbiAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgbWluLWhlaWdodDogMzB2dzsgfSB9XG4gIHNlY3Rpb24uc3BsaXQudGV4dCAuY29udGVudCB7XG4gICAgcGFkZGluZy10b3A6IDEuMjVyZW07XG4gICAgcGFkZGluZy1ib3R0b206IDEuMjVyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgc2VjdGlvbi5zcGxpdC50ZXh0IC5jb250ZW50IHtcbiAgICAgICAgcGFkZGluZy10b3A6IDVyZW07XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiA1cmVtOyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgc2VjdGlvbi5zcGxpdC50ZXh0IC5jb250ZW50IC50ZXh0IHtcbiAgICAgICAgLyptYXgtd2lkdGg6IHJlbS1jYWxjKDQwMCk7Ki9cbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlOyB9IH1cbiAgICBzZWN0aW9uLnNwbGl0LnRleHQgLmNvbnRlbnQgYVtocmVmXj1cInRlbFwiXSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICBmb250LXNpemU6IDEuMTI1cmVtOyB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICBzZWN0aW9uLnNwbGl0LnRleHQgLmNvbnRlbnQgYVtocmVmXj1cInRlbFwiXSB7XG4gICAgICAgICAgZm9udC1zaXplOiAxLjYyNXJlbTsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIHNlY3Rpb24uc3BsaXQudGV4dCAuY29udGVudCAuaW5mbyB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICAgICAgYWxpZ24tY29udGVudDogZmxleC1lbmQ7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDsgfVxuICAgICAgICBzZWN0aW9uLnNwbGl0LnRleHQgLmNvbnRlbnQgLmluZm8gPiAudGV4dCB7XG4gICAgICAgICAgbWF4LXdpZHRoOiAxNS42MjVyZW07XG4gICAgICAgICAgZmxleDogMSAxIDE1LjYyNXJlbTsgfVxuICAgICAgICBzZWN0aW9uLnNwbGl0LnRleHQgLmNvbnRlbnQgLmluZm8gPiAubGluayB7XG4gICAgICAgICAgZmxleDogMSAxIDA7IH0gfVxuICBzZWN0aW9uLnNwbGl0LnNpZ25wb3N0cyB7XG4gICAgYmFja2dyb3VuZDogI2ZlZmVmZTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuaW50cm8gKyBzZWN0aW9uLnNwbGl0LnNpZ25wb3N0cyAuaW1hZ2Uge1xuICAgICAgICBvcmRlcjogMTsgfVxuICAgICAgLmludHJvICsgc2VjdGlvbi5zcGxpdC5zaWducG9zdHMgLmNvbnRlbnQge1xuICAgICAgICBvcmRlcjogMjsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5pbnRybyArIHNlY3Rpb24uc3BsaXQuc2lnbnBvc3RzIHtcbiAgICAgICAgbWFyZ2luLXRvcDogLTEuMjVyZW07IH0gfVxuICAgIHNlY3Rpb24uc3BsaXQuc2lnbnBvc3RzIC5jb250ZW50IHtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBkaXNwbGF5OiBmbGV4OyB9XG4gICAgICBzZWN0aW9uLnNwbGl0LnNpZ25wb3N0cyAuY29udGVudCB1bC5zaWducG9zdHMge1xuICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjOGE4YThhO1xuICAgICAgICBmbGV4OiAxIDEgMDsgfVxuICAgICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAgIHNlY3Rpb24uc3BsaXQuc2lnbnBvc3RzIC5jb250ZW50IHVsLnNpZ25wb3N0cyB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3RyZXRjaDtcbiAgICAgICAgICAgIGJvcmRlci10b3A6IDA7IH0gfVxuICAgICAgICBzZWN0aW9uLnNwbGl0LnNpZ25wb3N0cyAuY29udGVudCB1bC5zaWducG9zdHMgbGkge1xuICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjOGE4YThhO1xuICAgICAgICAgIGZsZXg6IDEgMSAwO1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHN0cmV0Y2g7IH1cbiAgICAgICAgICBzZWN0aW9uLnNwbGl0LnNpZ25wb3N0cyAuY29udGVudCB1bC5zaWducG9zdHMgbGk6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAwOyB9XG4gICAgICAgICAgc2VjdGlvbi5zcGxpdC5zaWducG9zdHMgLmNvbnRlbnQgdWwuc2lnbnBvc3RzIGxpIGEge1xuICAgICAgICAgICAgZmxleDogMSAxIDA7XG4gICAgICAgICAgICBjb2xvcjogIzBhMGEwYTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IDEuODc1cmVtO1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDEuODc1cmVtO1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjEyNXJlbTsgfVxuICAgICAgICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgICAgICAgc2VjdGlvbi5zcGxpdC5zaWducG9zdHMgLmNvbnRlbnQgdWwuc2lnbnBvc3RzIGxpIGEge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtO1xuICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuNjI1cmVtOyB9IH1cbiAgICAgICAgICAgIHNlY3Rpb24uc3BsaXQuc2lnbnBvc3RzIC5jb250ZW50IHVsLnNpZ25wb3N0cyBsaSBhOmhvdmVyIHtcbiAgICAgICAgICAgICAgY29sb3I6ICM2ODAwZDI7IH1cbiAgICAgICAgICAgIHNlY3Rpb24uc3BsaXQuc2lnbnBvc3RzIC5jb250ZW50IHVsLnNpZ25wb3N0cyBsaSBhIHNwYW46YWZ0ZXIge1xuICAgICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgdG9wOiAtMC4yNXJlbTtcbiAgICAgICAgICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtMS4yNXJlbTtcbiAgICAgICAgICAgICAgbWFyZ2luLXRvcDogYXV0bztcbiAgICAgICAgICAgICAgYm9yZGVyOiAycHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgIGJvcmRlci1yaWdodC1jb2xvcjogIzY4MDBkMjtcbiAgICAgICAgICAgICAgYm9yZGVyLXRvcC1jb2xvcjogIzY4MDBkMjtcbiAgICAgICAgICAgICAgd2lkdGg6IDAuNzVyZW07XG4gICAgICAgICAgICAgIGhlaWdodDogMC43NXJlbTtcbiAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpIHRyYW5zbGF0ZSgyMHB4LCAtMThweCk7XG4gICAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTsgfVxuICAgICAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgICAgICAgICAgICAgc2VjdGlvbi5zcGxpdC5zaWducG9zdHMgLmNvbnRlbnQgdWwuc2lnbnBvc3RzIGxpIGEgc3BhbjphZnRlciB7XG4gICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogLTEuNTYyNXJlbTtcbiAgICAgICAgICAgICAgICAgIHRvcDogLTAuMDYyNXJlbTtcbiAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKSB0cmFuc2xhdGUoMjBweCwgLTE4cHgpIHNjYWxlKDAuOCk7IH0gfVxuICBzZWN0aW9uLnNwbGl0IC5pbWFnZSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7IH1cbiAgICBzZWN0aW9uLnNwbGl0IC5pbWFnZSwgc2VjdGlvbi5zcGxpdCAuaW1hZ2U6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgc2VjdGlvbi5zcGxpdCAuaW1hZ2U6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICBmbG9hdDogcmlnaHQ7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgc2VjdGlvbi5zcGxpdCAuaW1hZ2Uge1xuICAgICAgICBmbGV4OiAxIDEgYXV0bztcbiAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuOyB9XG4gICAgICAgIHNlY3Rpb24uc3BsaXQgLmltYWdlIGltZyB7XG4gICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgIG1pbi1oZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgbWluLXdpZHRoOiAxMDAlO1xuICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgIG1heC13aWR0aDogbm9uZTtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpOyB9IH1cblxuc2VjdGlvbi5oaWdobGlnaHQtcGFuZWxzIHtcbiAgcGFkZGluZzogMDsgfVxuICBzZWN0aW9uLmhpZ2hsaWdodC1wYW5lbHMgLmJnLWltYWdlIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvYmctZG90cy5wbmcpLCBsaW5lYXItZ3JhZGllbnQoODBkZWcsICM2ODAwZDIgNjAlLCAjMzAxNjRhIDEwMCUpO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1zaXplOiBhdXRvIDEwMCU7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgMDtcbiAgICBwYWRkaW5nLXRvcDogMS4yNXJlbTtcbiAgICBwYWRkaW5nLWJvdHRvbTogMS4yNXJlbTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICBzZWN0aW9uLmhpZ2hsaWdodC1wYW5lbHMgLmJnLWltYWdlIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDVyZW07XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiA1cmVtOyB9IH1cbiAgc2VjdGlvbi5oaWdobGlnaHQtcGFuZWxzIC5oaWdobGlnaHQtY29sdW1ucyB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICBzZWN0aW9uLmhpZ2hsaWdodC1wYW5lbHMgLmhpZ2hsaWdodC1jb2x1bW5zIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gICAgc2VjdGlvbi5oaWdobGlnaHQtcGFuZWxzIC5oaWdobGlnaHQtY29sdW1ucywgc2VjdGlvbi5oaWdobGlnaHQtcGFuZWxzIC5oaWdobGlnaHQtY29sdW1uczpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICBzZWN0aW9uLmhpZ2hsaWdodC1wYW5lbHMgLmhpZ2hsaWdodC1jb2x1bW5zOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgZmxvYXQ6IHJpZ2h0OyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIHNlY3Rpb24uaGlnaGxpZ2h0LXBhbmVscyAuaGlnaGxpZ2h0LWNvbHVtbnMge1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93OyB9IH1cbiAgICBzZWN0aW9uLmhpZ2hsaWdodC1wYW5lbHMgLmhpZ2hsaWdodC1jb2x1bW5zIC5oaWdobGlnaHQtcGFuZWwge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICBmbGV4LWdyb3c6IDE7XG4gICAgICBmbGV4LXNocmluazogMTtcbiAgICAgIGZsZXgtYmFzaXM6IDEwMCU7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxLjg3NXJlbTsgfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgc2VjdGlvbi5oaWdobGlnaHQtcGFuZWxzIC5oaWdobGlnaHQtY29sdW1ucyAuaGlnaGxpZ2h0LXBhbmVsIHtcbiAgICAgICAgICBmbGV4LWJhc2lzOiA1MCU7XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogMS4yNXJlbTsgfSB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgICBzZWN0aW9uLmhpZ2hsaWdodC1wYW5lbHMgLmhpZ2hsaWdodC1jb2x1bW5zIC5oaWdobGlnaHQtcGFuZWwge1xuICAgICAgICAgIGZsZXgtYmFzaXM6IDI1JTtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDEuODc1cmVtOyB9IH1cbiAgICAgIHNlY3Rpb24uaGlnaGxpZ2h0LXBhbmVscyAuaGlnaGxpZ2h0LWNvbHVtbnMgLmhpZ2hsaWdodC1wYW5lbCAubGFiZWwge1xuICAgICAgICBjb2xvcjogI2ZiZTIwMDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMS4yNXJlbTsgfVxuICAgICAgc2VjdGlvbi5oaWdobGlnaHQtcGFuZWxzIC5oaWdobGlnaHQtY29sdW1ucyAuaGlnaGxpZ2h0LXBhbmVsIC5wcmljZSwgc2VjdGlvbi5oaWdobGlnaHQtcGFuZWxzIC5oaWdobGlnaHQtY29sdW1ucyAuaGlnaGxpZ2h0LXBhbmVsIC5jaG5nZWNvbG9yLCBzZWN0aW9uLmhpZ2hsaWdodC1wYW5lbHMgLmhpZ2hsaWdodC1jb2x1bW5zIC5oaWdobGlnaHQtcGFuZWwgLnRpbWUge1xuICAgICAgICBjb2xvcjogI2ZlZmVmZTsgfVxuICAgICAgc2VjdGlvbi5oaWdobGlnaHQtcGFuZWxzIC5oaWdobGlnaHQtY29sdW1ucyAuaGlnaGxpZ2h0LXBhbmVsIGEubGlzdC1saW5rIHtcbiAgICAgICAgY29sb3I6ICNmZWZlZmU7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBmb250LXNpemU6IDEuMzEyNXJlbTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNGVtO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAgICAgc2VjdGlvbi5oaWdobGlnaHQtcGFuZWxzIC5oaWdobGlnaHQtY29sdW1ucyAuaGlnaGxpZ2h0LXBhbmVsIGEubGlzdC1saW5rOmFmdGVyIHtcbiAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgICAgICBib3JkZXItYm90dG9tLWNvbG9yOiAjZmVmZWZlO1xuICAgICAgICAgIGJvcmRlci1yaWdodC1jb2xvcjogI2ZlZmVmZTtcbiAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgaGVpZ2h0OiAwLjYyNXJlbTtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogMC41cmVtO1xuICAgICAgICAgIHdpZHRoOiAwLjYyNXJlbTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpOyB9XG4gICAgICBzZWN0aW9uLmhpZ2hsaWdodC1wYW5lbHMgLmhpZ2hsaWdodC1jb2x1bW5zIC5oaWdobGlnaHQtcGFuZWwgLmhpZ2hsaWdodC1kb3dubG9hZC1maWxlIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfVxuICAgICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAgIHNlY3Rpb24uaGlnaGxpZ2h0LXBhbmVscyAuaGlnaGxpZ2h0LWNvbHVtbnMgLmhpZ2hsaWdodC1wYW5lbCAuaGlnaGxpZ2h0LWRvd25sb2FkLWZpbGUge1xuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdzsgfSB9XG4gICAgICAgIHNlY3Rpb24uaGlnaGxpZ2h0LXBhbmVscyAuaGlnaGxpZ2h0LWNvbHVtbnMgLmhpZ2hsaWdodC1wYW5lbCAuaGlnaGxpZ2h0LWRvd25sb2FkLWZpbGUgaW1nIHtcbiAgICAgICAgICBtYXgtd2lkdGg6IDUuNjI1cmVtO1xuICAgICAgICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgICAgIHNlY3Rpb24uaGlnaGxpZ2h0LXBhbmVscyAuaGlnaGxpZ2h0LWNvbHVtbnMgLmhpZ2hsaWdodC1wYW5lbCAuaGlnaGxpZ2h0LWRvd25sb2FkLWZpbGUgLmRvd25sb2FkLWNhcHRpb24ge1xuICAgICAgICAgIGNvbG9yOiAjZmVmZWZlO1xuICAgICAgICAgIGZsZXg6IDEgMSA1MCU7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDEuMjVyZW07IH1cbiAgICAgICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAgICAgc2VjdGlvbi5oaWdobGlnaHQtcGFuZWxzIC5oaWdobGlnaHQtY29sdW1ucyAuaGlnaGxpZ2h0LXBhbmVsIC5oaWdobGlnaHQtZG93bmxvYWQtZmlsZSAuZG93bmxvYWQtY2FwdGlvbiB7XG4gICAgICAgICAgICAgIGZsZXgtYmFzaXM6IDEwMCU7IH0gfVxuICAgICAgc2VjdGlvbi5oaWdobGlnaHQtcGFuZWxzIC5oaWdobGlnaHQtY29sdW1ucyAuaGlnaGxpZ2h0LXBhbmVsIC5oaWdobGlnaHQtY3RhIHtcbiAgICAgICAgbWFyZ2luLXRvcDogYXV0bzsgfVxuICAgICAgICBzZWN0aW9uLmhpZ2hsaWdodC1wYW5lbHMgLmhpZ2hsaWdodC1jb2x1bW5zIC5oaWdobGlnaHQtcGFuZWwgLmhpZ2hsaWdodC1jdGEgLmN0YSB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZlZmVmZTtcbiAgICAgICAgICBjb2xvcjogIzY4MDBkMjtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAyLjVyZW07IH1cbiAgICAgICAgICBzZWN0aW9uLmhpZ2hsaWdodC1wYW5lbHMgLmhpZ2hsaWdodC1jb2x1bW5zIC5oaWdobGlnaHQtcGFuZWwgLmhpZ2hsaWdodC1jdGEgLmN0YTpob3ZlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmJlMjAwOyB9XG5cbnNlY3Rpb24uY2FzZS1zdHVkaWVzIC5yb3cge1xuICBtYXgtd2lkdGg6IG5vbmU7XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICBzZWN0aW9uLmNhc2Utc3R1ZGllcyAucm93OjpiZWZvcmUsIHNlY3Rpb24uY2FzZS1zdHVkaWVzIC5yb3c6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjb250ZW50OiAnICc7XG4gICAgZmxleC1iYXNpczogMDtcbiAgICBvcmRlcjogMTsgfVxuICBzZWN0aW9uLmNhc2Utc3R1ZGllcyAucm93OjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgc2VjdGlvbi5jYXNlLXN0dWRpZXMgLnJvdyAuY29udGVudCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICBzZWN0aW9uLmNhc2Utc3R1ZGllcyAucm93IC5jb250ZW50IHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gICAgc2VjdGlvbi5jYXNlLXN0dWRpZXMgLnJvdyAuY29udGVudCwgc2VjdGlvbi5jYXNlLXN0dWRpZXMgLnJvdyAuY29udGVudDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICBzZWN0aW9uLmNhc2Utc3R1ZGllcyAucm93IC5jb250ZW50Omxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgZmxvYXQ6IHJpZ2h0OyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIHNlY3Rpb24uY2FzZS1zdHVkaWVzIC5yb3cgLmNvbnRlbnQge1xuICAgICAgICB3aWR0aDogNTAlOyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgc2VjdGlvbi5jYXNlLXN0dWRpZXMgLnJvdyAuY29udGVudCB7XG4gICAgICAgIHdpZHRoOiA0MS42NjY2NyU7IH0gfVxuICAgIHNlY3Rpb24uY2FzZS1zdHVkaWVzIC5yb3cgLmNvbnRlbnQgaDIge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMS4yNXJlbTsgfVxuXG5zZWN0aW9uLmNhc2Utc3R1ZGllcyAubGluayB7XG4gIG1hcmdpbjogMS4yNXJlbSAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cblxuc2VjdGlvbi5jYXNlLXN0dWRpZXMgLmxvZ29zLmNhcm91c2VsIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7IH1cbiAgc2VjdGlvbi5jYXNlLXN0dWRpZXMgLmxvZ29zLmNhcm91c2VsLnNsaWNrLXNsaWRlciB7XG4gICAgcGFkZGluZy1sZWZ0OiA0LjM3NXJlbTtcbiAgICBwYWRkaW5nLXJpZ2h0OiA0LjM3NXJlbTsgfVxuXG5zZWN0aW9uLmNhc2Utc3R1ZGllcy5nb2xkIHtcbiAgYmFja2dyb3VuZDogI2YyZjJmMjsgfVxuXG4ucm93LmxvZ29zLFxuLnJvdyA+IC5sb2dvcyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICBvdmVyZmxvdy14OiBoaWRkZW47IH1cbiAgYm9keS5wYWdlLXRlbXBsYXRlLXBhZ2UtcGFydG5lcnMgLnJvdy5sb2dvcywgYm9keS5wYWdlLXRlbXBsYXRlLXBhZ2UtcGFydG5lcnNcbiAgLnJvdyA+IC5sb2dvcyB7XG4gICAgcGFkZGluZy10b3A6IDA7XG4gICAgcGFkZGluZy1ib3R0b206IDA7IH1cbiAgLnJvdy5sb2dvczpiZWZvcmUsIC5yb3cubG9nb3M6YWZ0ZXIsXG4gIC5yb3cgPiAubG9nb3M6YmVmb3JlLFxuICAucm93ID4gLmxvZ29zOmFmdGVyIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cbiAgLnJvdy5sb2dvcyAuc2xpY2stdHJhY2ssXG4gIC5yb3cgPiAubG9nb3MgLnNsaWNrLXRyYWNrIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cbiAgICAucm93LmxvZ29zIC5zbGljay10cmFjazpiZWZvcmUsIC5yb3cubG9nb3MgLnNsaWNrLXRyYWNrOmFmdGVyLFxuICAgIC5yb3cgPiAubG9nb3MgLnNsaWNrLXRyYWNrOmJlZm9yZSxcbiAgICAucm93ID4gLmxvZ29zIC5zbGljay10cmFjazphZnRlciB7XG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cbiAgICAucm93LmxvZ29zIC5zbGljay10cmFjayAubG9nbyxcbiAgICAucm93ID4gLmxvZ29zIC5zbGljay10cmFjayAubG9nbyB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudDtcbiAgICAgIHdpZHRoOiBhdXRvOyB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAucm93LmxvZ29zIC5zbGljay10cmFjayAubG9nbyBpbWcsXG4gICAgICAgIC5yb3cgPiAubG9nb3MgLnNsaWNrLXRyYWNrIC5sb2dvIGltZyB7XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogMy4xMjVyZW07IH0gfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgLnJvdy5sb2dvcyAuc2xpY2stdHJhY2sgLmxvZ28gaW1nLFxuICAgICAgICAucm93ID4gLmxvZ29zIC5zbGljay10cmFjayAubG9nbyBpbWcge1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDUuNjI1cmVtOyB9IH1cbiAgLnJvdy5sb2dvcyAubG9nbyxcbiAgLnJvdyA+IC5sb2dvcyAubG9nbyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIG1heC13aWR0aDogNTAlO1xuICAgIGZsZXgtYmFzaXM6IDUwJTtcbiAgICBmbGV4LWdyb3c6IDE7XG4gICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAucm93LmxvZ29zIC5sb2dvLFxuICAgICAgLnJvdyA+IC5sb2dvcyAubG9nbyB7XG4gICAgICAgIGZsZXgtYmFzaXM6IDI1JTtcbiAgICAgICAgbWF4LXdpZHRoOiAyNSU7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07IH0gfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAucm93LmxvZ29zIC5sb2dvLFxuICAgICAgLnJvdyA+IC5sb2dvcyAubG9nbyB7XG4gICAgICAgIGZsZXgtYmFzaXM6IDIwJTtcbiAgICAgICAgbWF4LXdpZHRoOiAyMCU7IH0gfVxuICAgIC5yb3cubG9nb3MgLmxvZ28gYSxcbiAgICAucm93ID4gLmxvZ29zIC5sb2dvIGEge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBwYWRkaW5nOiAwLjYyNXJlbSAwIDIuNXJlbTtcbiAgICAgIG1heC13aWR0aDogNy4xODc1cmVtO1xuICAgICAgbWFyZ2luOiAwIGF1dG87IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgIC5yb3cubG9nb3MgLmxvZ28gYSxcbiAgICAgICAgLnJvdyA+IC5sb2dvcyAubG9nbyBhIHtcbiAgICAgICAgICBtYXgtd2lkdGg6IDkuMzc1cmVtOyB9IH1cblxuc2VjdGlvbi5uZXdzIHtcbiAgcGFkZGluZzogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgYmFja2dyb3VuZDogI2ZlZmVmZTsgfVxuICBzZWN0aW9uLm5ld3MgLnJvdyB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuICAgIHNlY3Rpb24ubmV3cyAucm93OmJlZm9yZSwgc2VjdGlvbi5uZXdzIC5yb3c6YWZ0ZXIge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICBzZWN0aW9uLm5ld3MgLnJvdyB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7IH0gfVxuICAgIHNlY3Rpb24ubmV3cyAucm93IC5jb250ZW50IHtcbiAgICAgIGZsZXg6IDEgMSA1MCU7XG4gICAgICBmbGV4LWJhc2lzOiA1MCU7XG4gICAgICBtYXgtd2lkdGg6IDI3LjVyZW07IH1cbiAgICAgIC5wb3N0LXR5cGUtYXJjaGl2ZS1ldmVudCBzZWN0aW9uLm5ld3MgLnJvdyAuY29udGVudCB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIGZsZXg6IDEgMSAxMDAlO1xuICAgICAgICBmbGV4LWJhc2lzOiAxMDAlOyB9XG4gICAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAgICAgLnBvc3QtdHlwZS1hcmNoaXZlLWV2ZW50IHNlY3Rpb24ubmV3cyAucm93IC5jb250ZW50IHtcbiAgICAgICAgICAgIG9yZGVyOiAxO1xuICAgICAgICAgICAgZmxleC1iYXNpczogNTAlOyB9IH1cbiAgICBzZWN0aW9uLm5ld3MgLnJvdyAudGl0bGUsXG4gICAgc2VjdGlvbi5uZXdzIC5yb3cgLnNlYXJjaCB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtO1xuICAgICAgcGFkZGluZy10b3A6IDEuMjVyZW07IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgIHNlY3Rpb24ubmV3cyAucm93IC50aXRsZSxcbiAgICAgICAgc2VjdGlvbi5uZXdzIC5yb3cgLnNlYXJjaCB7XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgICAgIHNlY3Rpb24ubmV3cyAucm93IC50aXRsZSwgc2VjdGlvbi5uZXdzIC5yb3cgLnRpdGxlOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCksXG4gICAgICBzZWN0aW9uLm5ld3MgLnJvdyAuc2VhcmNoLFxuICAgICAgc2VjdGlvbi5uZXdzIC5yb3cgLnNlYXJjaDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgICBzZWN0aW9uLm5ld3MgLnJvdyAudGl0bGU6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSxcbiAgICAgIHNlY3Rpb24ubmV3cyAucm93IC5zZWFyY2g6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgIGZsb2F0OiByaWdodDsgfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgc2VjdGlvbi5uZXdzIC5yb3cgLnRpdGxlLFxuICAgICAgICBzZWN0aW9uLm5ld3MgLnJvdyAuc2VhcmNoIHtcbiAgICAgICAgICBwYWRkaW5nLXRvcDogNXJlbTtcbiAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMi41cmVtOyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgc2VjdGlvbi5uZXdzIC5yb3cuYm9keS1wdXNoICsgLnJvdy5ib2R5LXB1c2ggLnRpdGxlLCBzZWN0aW9uLm5ld3MgLnJvdy5zbGljay1kb3RzICsgLnJvdy5ib2R5LXB1c2ggLnRpdGxlLCBzZWN0aW9uLm5ld3MgLnRvcC1iYXIgdWwgPiBsaS5tZWdhLW1lbnUtZ3JpZCA+IHVsLnJvdy5tZWdhLXN1Yi1tZW51ICsgLnJvdy5ib2R5LXB1c2ggLnRpdGxlLCAudG9wLWJhciBzZWN0aW9uLm5ld3MgdWwgPiBsaS5tZWdhLW1lbnUtZ3JpZCA+IHVsLnJvdy5tZWdhLXN1Yi1tZW51ICsgLnJvdy5ib2R5LXB1c2ggLnRpdGxlLCBzZWN0aW9uLm5ld3MgLnRvcC1iYXIgI21lZ2EtbWVudS13cmFwLXRvcC1iYXItciAjbWVnYS1tZW51LXRvcC1iYXItciA+IGxpLm1lZ2EtbWVudS1ncmlkID4gdWwucm93Lm1lZ2Etc3ViLW1lbnUgKyAucm93LmJvZHktcHVzaCAudGl0bGUsIC50b3AtYmFyICNtZWdhLW1lbnUtd3JhcC10b3AtYmFyLXIgc2VjdGlvbi5uZXdzICNtZWdhLW1lbnUtdG9wLWJhci1yID4gbGkubWVnYS1tZW51LWdyaWQgPiB1bC5yb3cubWVnYS1zdWItbWVudSArIC5yb3cuYm9keS1wdXNoIC50aXRsZSwgc2VjdGlvbi5uZXdzIC5kcm9wZG93bi5tZW51ID4gbGkgPiAucm93LmlzLWRyb3Bkb3duLXN1Ym1lbnUgKyAucm93LmJvZHktcHVzaCAudGl0bGUsIHNlY3Rpb24ubmV3cyBib2R5LnNpbmdsZS1jYXNlX3N0dWR5IHNlY3Rpb24udGFiYmVkLWNvbnRlbnQgLnJvdy50YWJzLXdyYXBwZXIgKyAucm93LmJvZHktcHVzaCAudGl0bGUsIGJvZHkuc2luZ2xlLWNhc2Vfc3R1ZHkgc2VjdGlvbi50YWJiZWQtY29udGVudCBzZWN0aW9uLm5ld3MgLnJvdy50YWJzLXdyYXBwZXIgKyAucm93LmJvZHktcHVzaCAudGl0bGUsIHNlY3Rpb24ubmV3cyBib2R5LnNpbmdsZS1jYXNlX3N0dWR5IHNlY3Rpb24udGFiYmVkLWNvbnRlbnQgLnJvdy50YWJzLWNvbnRlbnQgKyAucm93LmJvZHktcHVzaCAudGl0bGUsIGJvZHkuc2luZ2xlLWNhc2Vfc3R1ZHkgc2VjdGlvbi50YWJiZWQtY29udGVudCBzZWN0aW9uLm5ld3MgLnJvdy50YWJzLWNvbnRlbnQgKyAucm93LmJvZHktcHVzaCAudGl0bGUsIHNlY3Rpb24ubmV3cyAucm93LmJvZHktcHVzaCArIC5yb3cuc2xpY2stZG90cyAudGl0bGUsIHNlY3Rpb24ubmV3cyAucm93LnNsaWNrLWRvdHMgKyAucm93LnNsaWNrLWRvdHMgLnRpdGxlLCBzZWN0aW9uLm5ld3MgLnRvcC1iYXIgdWwgPiBsaS5tZWdhLW1lbnUtZ3JpZCA+IHVsLnJvdy5tZWdhLXN1Yi1tZW51ICsgLnJvdy5zbGljay1kb3RzIC50aXRsZSwgLnRvcC1iYXIgc2VjdGlvbi5uZXdzIHVsID4gbGkubWVnYS1tZW51LWdyaWQgPiB1bC5yb3cubWVnYS1zdWItbWVudSArIC5yb3cuc2xpY2stZG90cyAudGl0bGUsIHNlY3Rpb24ubmV3cyAudG9wLWJhciAjbWVnYS1tZW51LXdyYXAtdG9wLWJhci1yICNtZWdhLW1lbnUtdG9wLWJhci1yID4gbGkubWVnYS1tZW51LWdyaWQgPiB1bC5yb3cubWVnYS1zdWItbWVudSArIC5yb3cuc2xpY2stZG90cyAudGl0bGUsIC50b3AtYmFyICNtZWdhLW1lbnUtd3JhcC10b3AtYmFyLXIgc2VjdGlvbi5uZXdzICNtZWdhLW1lbnUtdG9wLWJhci1yID4gbGkubWVnYS1tZW51LWdyaWQgPiB1bC5yb3cubWVnYS1zdWItbWVudSArIC5yb3cuc2xpY2stZG90cyAudGl0bGUsIHNlY3Rpb24ubmV3cyAuZHJvcGRvd24ubWVudSA+IGxpID4gLnJvdy5pcy1kcm9wZG93bi1zdWJtZW51ICsgLnJvdy5zbGljay1kb3RzIC50aXRsZSwgc2VjdGlvbi5uZXdzIGJvZHkuc2luZ2xlLWNhc2Vfc3R1ZHkgc2VjdGlvbi50YWJiZWQtY29udGVudCAucm93LnRhYnMtd3JhcHBlciArIC5yb3cuc2xpY2stZG90cyAudGl0bGUsIGJvZHkuc2luZ2xlLWNhc2Vfc3R1ZHkgc2VjdGlvbi50YWJiZWQtY29udGVudCBzZWN0aW9uLm5ld3MgLnJvdy50YWJzLXdyYXBwZXIgKyAucm93LnNsaWNrLWRvdHMgLnRpdGxlLCBzZWN0aW9uLm5ld3MgYm9keS5zaW5nbGUtY2FzZV9zdHVkeSBzZWN0aW9uLnRhYmJlZC1jb250ZW50IC5yb3cudGFicy1jb250ZW50ICsgLnJvdy5zbGljay1kb3RzIC50aXRsZSwgYm9keS5zaW5nbGUtY2FzZV9zdHVkeSBzZWN0aW9uLnRhYmJlZC1jb250ZW50IHNlY3Rpb24ubmV3cyAucm93LnRhYnMtY29udGVudCArIC5yb3cuc2xpY2stZG90cyAudGl0bGUsIHNlY3Rpb24ubmV3cyAudG9wLWJhciB1bCA+IGxpLm1lZ2EtbWVudS1ncmlkID4gLnJvdy5ib2R5LXB1c2ggKyB1bC5yb3cubWVnYS1zdWItbWVudSAudGl0bGUsIC50b3AtYmFyIHNlY3Rpb24ubmV3cyB1bCA+IGxpLm1lZ2EtbWVudS1ncmlkID4gLnJvdy5ib2R5LXB1c2ggKyB1bC5yb3cubWVnYS1zdWItbWVudSAudGl0bGUsIHNlY3Rpb24ubmV3cyAudG9wLWJhciB1bCA+IGxpLm1lZ2EtbWVudS1ncmlkID4gLnJvdy5zbGljay1kb3RzICsgdWwucm93Lm1lZ2Etc3ViLW1lbnUgLnRpdGxlLCAudG9wLWJhciBzZWN0aW9uLm5ld3MgdWwgPiBsaS5tZWdhLW1lbnUtZ3JpZCA+IC5yb3cuc2xpY2stZG90cyArIHVsLnJvdy5tZWdhLXN1Yi1tZW51IC50aXRsZSwgc2VjdGlvbi5uZXdzIC50b3AtYmFyIHVsID4gbGkubWVnYS1tZW51LWdyaWQgPiB1bC5yb3cubWVnYS1zdWItbWVudSArIHVsLnJvdy5tZWdhLXN1Yi1tZW51IC50aXRsZSwgLnRvcC1iYXIgc2VjdGlvbi5uZXdzIHVsID4gbGkubWVnYS1tZW51LWdyaWQgPiB1bC5yb3cubWVnYS1zdWItbWVudSArIHVsLnJvdy5tZWdhLXN1Yi1tZW51IC50aXRsZSwgc2VjdGlvbi5uZXdzIC50b3AtYmFyIHVsLmRyb3Bkb3duLm1lbnUgPiBsaS5tZWdhLW1lbnUtZ3JpZCA+IC5yb3cuaXMtZHJvcGRvd24tc3VibWVudSArIHVsLnJvdy5tZWdhLXN1Yi1tZW51IC50aXRsZSwgLnRvcC1iYXIgc2VjdGlvbi5uZXdzIHVsLmRyb3Bkb3duLm1lbnUgPiBsaS5tZWdhLW1lbnUtZ3JpZCA+IC5yb3cuaXMtZHJvcGRvd24tc3VibWVudSArIHVsLnJvdy5tZWdhLXN1Yi1tZW51IC50aXRsZSwgc2VjdGlvbi5uZXdzIGJvZHkuc2luZ2xlLWNhc2Vfc3R1ZHkgc2VjdGlvbi50YWJiZWQtY29udGVudCAudG9wLWJhciB1bCA+IGxpLm1lZ2EtbWVudS1ncmlkID4gLnJvdy50YWJzLXdyYXBwZXIgKyB1bC5yb3cubWVnYS1zdWItbWVudSAudGl0bGUsIC50b3AtYmFyIHNlY3Rpb24ubmV3cyBib2R5LnNpbmdsZS1jYXNlX3N0dWR5IHNlY3Rpb24udGFiYmVkLWNvbnRlbnQgdWwgPiBsaS5tZWdhLW1lbnUtZ3JpZCA+IC5yb3cudGFicy13cmFwcGVyICsgdWwucm93Lm1lZ2Etc3ViLW1lbnUgLnRpdGxlLCBib2R5LnNpbmdsZS1jYXNlX3N0dWR5IHNlY3Rpb24udGFiYmVkLWNvbnRlbnQgc2VjdGlvbi5uZXdzIC50b3AtYmFyIHVsID4gbGkubWVnYS1tZW51LWdyaWQgPiAucm93LnRhYnMtd3JhcHBlciArIHVsLnJvdy5tZWdhLXN1Yi1tZW51IC50aXRsZSwgLnRvcC1iYXIgYm9keS5zaW5nbGUtY2FzZV9zdHVkeSBzZWN0aW9uLnRhYmJlZC1jb250ZW50IHNlY3Rpb24ubmV3cyB1bCA+IGxpLm1lZ2EtbWVudS1ncmlkID4gLnJvdy50YWJzLXdyYXBwZXIgKyB1bC5yb3cubWVnYS1zdWItbWVudSAudGl0bGUsIHNlY3Rpb24ubmV3cyBib2R5LnNpbmdsZS1jYXNlX3N0dWR5IHNlY3Rpb24udGFiYmVkLWNvbnRlbnQgLnRvcC1iYXIgdWwgPiBsaS5tZWdhLW1lbnUtZ3JpZCA+IC5yb3cudGFicy1jb250ZW50ICsgdWwucm93Lm1lZ2Etc3ViLW1lbnUgLnRpdGxlLCAudG9wLWJhciBzZWN0aW9uLm5ld3MgYm9keS5zaW5nbGUtY2FzZV9zdHVkeSBzZWN0aW9uLnRhYmJlZC1jb250ZW50IHVsID4gbGkubWVnYS1tZW51LWdyaWQgPiAucm93LnRhYnMtY29udGVudCArIHVsLnJvdy5tZWdhLXN1Yi1tZW51IC50aXRsZSwgYm9keS5zaW5nbGUtY2FzZV9zdHVkeSBzZWN0aW9uLnRhYmJlZC1jb250ZW50IHNlY3Rpb24ubmV3cyAudG9wLWJhciB1bCA+IGxpLm1lZ2EtbWVudS1ncmlkID4gLnJvdy50YWJzLWNvbnRlbnQgKyB1bC5yb3cubWVnYS1zdWItbWVudSAudGl0bGUsIC50b3AtYmFyIGJvZHkuc2luZ2xlLWNhc2Vfc3R1ZHkgc2VjdGlvbi50YWJiZWQtY29udGVudCBzZWN0aW9uLm5ld3MgdWwgPiBsaS5tZWdhLW1lbnUtZ3JpZCA+IC5yb3cudGFicy1jb250ZW50ICsgdWwucm93Lm1lZ2Etc3ViLW1lbnUgLnRpdGxlLCBzZWN0aW9uLm5ld3MgLnRvcC1iYXIgI21lZ2EtbWVudS13cmFwLXRvcC1iYXItciAjbWVnYS1tZW51LXRvcC1iYXItciA+IGxpLm1lZ2EtbWVudS1ncmlkID4gLnJvdy5ib2R5LXB1c2ggKyB1bC5yb3cubWVnYS1zdWItbWVudSAudGl0bGUsIC50b3AtYmFyICNtZWdhLW1lbnUtd3JhcC10b3AtYmFyLXIgc2VjdGlvbi5uZXdzICNtZWdhLW1lbnUtdG9wLWJhci1yID4gbGkubWVnYS1tZW51LWdyaWQgPiAucm93LmJvZHktcHVzaCArIHVsLnJvdy5tZWdhLXN1Yi1tZW51IC50aXRsZSwgc2VjdGlvbi5uZXdzIC50b3AtYmFyICNtZWdhLW1lbnUtd3JhcC10b3AtYmFyLXIgI21lZ2EtbWVudS10b3AtYmFyLXIgPiBsaS5tZWdhLW1lbnUtZ3JpZCA+IC5yb3cuc2xpY2stZG90cyArIHVsLnJvdy5tZWdhLXN1Yi1tZW51IC50aXRsZSwgLnRvcC1iYXIgI21lZ2EtbWVudS13cmFwLXRvcC1iYXItciBzZWN0aW9uLm5ld3MgI21lZ2EtbWVudS10b3AtYmFyLXIgPiBsaS5tZWdhLW1lbnUtZ3JpZCA+IC5yb3cuc2xpY2stZG90cyArIHVsLnJvdy5tZWdhLXN1Yi1tZW51IC50aXRsZSwgLnRvcC1iYXIgc2VjdGlvbi5uZXdzICNtZWdhLW1lbnUtd3JhcC10b3AtYmFyLXIgdWwjbWVnYS1tZW51LXRvcC1iYXItciA+IGxpLm1lZ2EtbWVudS1ncmlkID4gdWwucm93Lm1lZ2Etc3ViLW1lbnUgKyB1bC5yb3cubWVnYS1zdWItbWVudSAudGl0bGUsIHNlY3Rpb24ubmV3cyAudG9wLWJhciAjbWVnYS1tZW51LXdyYXAtdG9wLWJhci1yICNtZWdhLW1lbnUtdG9wLWJhci1yID4gbGkubWVnYS1tZW51LWdyaWQgPiB1bC5yb3cubWVnYS1zdWItbWVudSArIHVsLnJvdy5tZWdhLXN1Yi1tZW51IC50aXRsZSwgLnRvcC1iYXIgI21lZ2EtbWVudS13cmFwLXRvcC1iYXItciBzZWN0aW9uLm5ld3MgI21lZ2EtbWVudS10b3AtYmFyLXIgPiBsaS5tZWdhLW1lbnUtZ3JpZCA+IHVsLnJvdy5tZWdhLXN1Yi1tZW51ICsgdWwucm93Lm1lZ2Etc3ViLW1lbnUgLnRpdGxlLCBzZWN0aW9uLm5ld3MgLnRvcC1iYXIgI21lZ2EtbWVudS13cmFwLXRvcC1iYXItciAjbWVnYS1tZW51LXRvcC1iYXItci5kcm9wZG93bi5tZW51ID4gbGkubWVnYS1tZW51LWdyaWQgPiAucm93LmlzLWRyb3Bkb3duLXN1Ym1lbnUgKyB1bC5yb3cubWVnYS1zdWItbWVudSAudGl0bGUsIC50b3AtYmFyICNtZWdhLW1lbnUtd3JhcC10b3AtYmFyLXIgc2VjdGlvbi5uZXdzICNtZWdhLW1lbnUtdG9wLWJhci1yLmRyb3Bkb3duLm1lbnUgPiBsaS5tZWdhLW1lbnUtZ3JpZCA+IC5yb3cuaXMtZHJvcGRvd24tc3VibWVudSArIHVsLnJvdy5tZWdhLXN1Yi1tZW51IC50aXRsZSwgc2VjdGlvbi5uZXdzIGJvZHkuc2luZ2xlLWNhc2Vfc3R1ZHkgc2VjdGlvbi50YWJiZWQtY29udGVudCAudG9wLWJhciAjbWVnYS1tZW51LXdyYXAtdG9wLWJhci1yICNtZWdhLW1lbnUtdG9wLWJhci1yID4gbGkubWVnYS1tZW51LWdyaWQgPiAucm93LnRhYnMtd3JhcHBlciArIHVsLnJvdy5tZWdhLXN1Yi1tZW51IC50aXRsZSwgLnRvcC1iYXIgI21lZ2EtbWVudS13cmFwLXRvcC1iYXItciBzZWN0aW9uLm5ld3MgYm9keS5zaW5nbGUtY2FzZV9zdHVkeSBzZWN0aW9uLnRhYmJlZC1jb250ZW50ICNtZWdhLW1lbnUtdG9wLWJhci1yID4gbGkubWVnYS1tZW51LWdyaWQgPiAucm93LnRhYnMtd3JhcHBlciArIHVsLnJvdy5tZWdhLXN1Yi1tZW51IC50aXRsZSwgYm9keS5zaW5nbGUtY2FzZV9zdHVkeSBzZWN0aW9uLnRhYmJlZC1jb250ZW50IHNlY3Rpb24ubmV3cyAudG9wLWJhciAjbWVnYS1tZW51LXdyYXAtdG9wLWJhci1yICNtZWdhLW1lbnUtdG9wLWJhci1yID4gbGkubWVnYS1tZW51LWdyaWQgPiAucm93LnRhYnMtd3JhcHBlciArIHVsLnJvdy5tZWdhLXN1Yi1tZW51IC50aXRsZSwgLnRvcC1iYXIgI21lZ2EtbWVudS13cmFwLXRvcC1iYXItciBib2R5LnNpbmdsZS1jYXNlX3N0dWR5IHNlY3Rpb24udGFiYmVkLWNvbnRlbnQgc2VjdGlvbi5uZXdzICNtZWdhLW1lbnUtdG9wLWJhci1yID4gbGkubWVnYS1tZW51LWdyaWQgPiAucm93LnRhYnMtd3JhcHBlciArIHVsLnJvdy5tZWdhLXN1Yi1tZW51IC50aXRsZSwgc2VjdGlvbi5uZXdzIGJvZHkuc2luZ2xlLWNhc2Vfc3R1ZHkgc2VjdGlvbi50YWJiZWQtY29udGVudCAudG9wLWJhciAjbWVnYS1tZW51LXdyYXAtdG9wLWJhci1yICNtZWdhLW1lbnUtdG9wLWJhci1yID4gbGkubWVnYS1tZW51LWdyaWQgPiAucm93LnRhYnMtY29udGVudCArIHVsLnJvdy5tZWdhLXN1Yi1tZW51IC50aXRsZSwgLnRvcC1iYXIgI21lZ2EtbWVudS13cmFwLXRvcC1iYXItciBzZWN0aW9uLm5ld3MgYm9keS5zaW5nbGUtY2FzZV9zdHVkeSBzZWN0aW9uLnRhYmJlZC1jb250ZW50ICNtZWdhLW1lbnUtdG9wLWJhci1yID4gbGkubWVnYS1tZW51LWdyaWQgPiAucm93LnRhYnMtY29udGVudCArIHVsLnJvdy5tZWdhLXN1Yi1tZW51IC50aXRsZSwgYm9keS5zaW5nbGUtY2FzZV9zdHVkeSBzZWN0aW9uLnRhYmJlZC1jb250ZW50IHNlY3Rpb24ubmV3cyAudG9wLWJhciAjbWVnYS1tZW51LXdyYXAtdG9wLWJhci1yICNtZWdhLW1lbnUtdG9wLWJhci1yID4gbGkubWVnYS1tZW51LWdyaWQgPiAucm93LnRhYnMtY29udGVudCArIHVsLnJvdy5tZWdhLXN1Yi1tZW51IC50aXRsZSwgLnRvcC1iYXIgI21lZ2EtbWVudS13cmFwLXRvcC1iYXItciBib2R5LnNpbmdsZS1jYXNlX3N0dWR5IHNlY3Rpb24udGFiYmVkLWNvbnRlbnQgc2VjdGlvbi5uZXdzICNtZWdhLW1lbnUtdG9wLWJhci1yID4gbGkubWVnYS1tZW51LWdyaWQgPiAucm93LnRhYnMtY29udGVudCArIHVsLnJvdy5tZWdhLXN1Yi1tZW51IC50aXRsZSwgc2VjdGlvbi5uZXdzIC5kcm9wZG93bi5tZW51ID4gbGkgPiAucm93LmJvZHktcHVzaCArIC5yb3cuaXMtZHJvcGRvd24tc3VibWVudSAudGl0bGUsIHNlY3Rpb24ubmV3cyAuZHJvcGRvd24ubWVudSA+IGxpID4gLnJvdy5zbGljay1kb3RzICsgLnJvdy5pcy1kcm9wZG93bi1zdWJtZW51IC50aXRsZSwgc2VjdGlvbi5uZXdzIC50b3AtYmFyIHVsLmRyb3Bkb3duLm1lbnUgPiBsaS5tZWdhLW1lbnUtZ3JpZCA+IHVsLnJvdy5tZWdhLXN1Yi1tZW51ICsgLnJvdy5pcy1kcm9wZG93bi1zdWJtZW51IC50aXRsZSwgLnRvcC1iYXIgc2VjdGlvbi5uZXdzIHVsLmRyb3Bkb3duLm1lbnUgPiBsaS5tZWdhLW1lbnUtZ3JpZCA+IHVsLnJvdy5tZWdhLXN1Yi1tZW51ICsgLnJvdy5pcy1kcm9wZG93bi1zdWJtZW51IC50aXRsZSwgc2VjdGlvbi5uZXdzIC50b3AtYmFyICNtZWdhLW1lbnUtd3JhcC10b3AtYmFyLXIgLmRyb3Bkb3duLm1lbnUjbWVnYS1tZW51LXRvcC1iYXItciA+IGxpLm1lZ2EtbWVudS1ncmlkID4gdWwucm93Lm1lZ2Etc3ViLW1lbnUgKyAucm93LmlzLWRyb3Bkb3duLXN1Ym1lbnUgLnRpdGxlLCAudG9wLWJhciAjbWVnYS1tZW51LXdyYXAtdG9wLWJhci1yIHNlY3Rpb24ubmV3cyAuZHJvcGRvd24ubWVudSNtZWdhLW1lbnUtdG9wLWJhci1yID4gbGkubWVnYS1tZW51LWdyaWQgPiB1bC5yb3cubWVnYS1zdWItbWVudSArIC5yb3cuaXMtZHJvcGRvd24tc3VibWVudSAudGl0bGUsIHNlY3Rpb24ubmV3cyAuZHJvcGRvd24ubWVudSA+IGxpID4gLnJvdy5pcy1kcm9wZG93bi1zdWJtZW51ICsgLnJvdy5pcy1kcm9wZG93bi1zdWJtZW51IC50aXRsZSwgc2VjdGlvbi5uZXdzIGJvZHkuc2luZ2xlLWNhc2Vfc3R1ZHkgc2VjdGlvbi50YWJiZWQtY29udGVudCAuZHJvcGRvd24ubWVudSA+IGxpID4gLnJvdy50YWJzLXdyYXBwZXIgKyAucm93LmlzLWRyb3Bkb3duLXN1Ym1lbnUgLnRpdGxlLCBib2R5LnNpbmdsZS1jYXNlX3N0dWR5IHNlY3Rpb24udGFiYmVkLWNvbnRlbnQgc2VjdGlvbi5uZXdzIC5kcm9wZG93bi5tZW51ID4gbGkgPiAucm93LnRhYnMtd3JhcHBlciArIC5yb3cuaXMtZHJvcGRvd24tc3VibWVudSAudGl0bGUsIHNlY3Rpb24ubmV3cyBib2R5LnNpbmdsZS1jYXNlX3N0dWR5IHNlY3Rpb24udGFiYmVkLWNvbnRlbnQgLmRyb3Bkb3duLm1lbnUgPiBsaSA+IC5yb3cudGFicy1jb250ZW50ICsgLnJvdy5pcy1kcm9wZG93bi1zdWJtZW51IC50aXRsZSwgYm9keS5zaW5nbGUtY2FzZV9zdHVkeSBzZWN0aW9uLnRhYmJlZC1jb250ZW50IHNlY3Rpb24ubmV3cyAuZHJvcGRvd24ubWVudSA+IGxpID4gLnJvdy50YWJzLWNvbnRlbnQgKyAucm93LmlzLWRyb3Bkb3duLXN1Ym1lbnUgLnRpdGxlLCBzZWN0aW9uLm5ld3MgYm9keS5zaW5nbGUtY2FzZV9zdHVkeSBzZWN0aW9uLnRhYmJlZC1jb250ZW50IC5yb3cuYm9keS1wdXNoICsgLnJvdy50YWJzLXdyYXBwZXIgLnRpdGxlLCBib2R5LnNpbmdsZS1jYXNlX3N0dWR5IHNlY3Rpb24udGFiYmVkLWNvbnRlbnQgc2VjdGlvbi5uZXdzIC5yb3cuYm9keS1wdXNoICsgLnJvdy50YWJzLXdyYXBwZXIgLnRpdGxlLCBzZWN0aW9uLm5ld3MgYm9keS5zaW5nbGUtY2FzZV9zdHVkeSBzZWN0aW9uLnRhYmJlZC1jb250ZW50IC5yb3cuc2xpY2stZG90cyArIC5yb3cudGFicy13cmFwcGVyIC50aXRsZSwgYm9keS5zaW5nbGUtY2FzZV9zdHVkeSBzZWN0aW9uLnRhYmJlZC1jb250ZW50IHNlY3Rpb24ubmV3cyAucm93LnNsaWNrLWRvdHMgKyAucm93LnRhYnMtd3JhcHBlciAudGl0bGUsIHNlY3Rpb24ubmV3cyAudG9wLWJhciBib2R5LnNpbmdsZS1jYXNlX3N0dWR5IHNlY3Rpb24udGFiYmVkLWNvbnRlbnQgdWwgPiBsaS5tZWdhLW1lbnUtZ3JpZCA+IHVsLnJvdy5tZWdhLXN1Yi1tZW51ICsgLnJvdy50YWJzLXdyYXBwZXIgLnRpdGxlLCBib2R5LnNpbmdsZS1jYXNlX3N0dWR5IHNlY3Rpb24udGFiYmVkLWNvbnRlbnQgc2VjdGlvbi5uZXdzIC50b3AtYmFyIHVsID4gbGkubWVnYS1tZW51LWdyaWQgPiB1bC5yb3cubWVnYS1zdWItbWVudSArIC5yb3cudGFicy13cmFwcGVyIC50aXRsZSwgLnRvcC1iYXIgc2VjdGlvbi5uZXdzIGJvZHkuc2luZ2xlLWNhc2Vfc3R1ZHkgc2VjdGlvbi50YWJiZWQtY29udGVudCB1bCA+IGxpLm1lZ2EtbWVudS1ncmlkID4gdWwucm93Lm1lZ2Etc3ViLW1lbnUgKyAucm93LnRhYnMtd3JhcHBlciAudGl0bGUsIGJvZHkuc2luZ2xlLWNhc2Vfc3R1ZHkgc2VjdGlvbi50YWJiZWQtY29udGVudCAudG9wLWJhciBzZWN0aW9uLm5ld3MgdWwgPiBsaS5tZWdhLW1lbnUtZ3JpZCA+IHVsLnJvdy5tZWdhLXN1Yi1tZW51ICsgLnJvdy50YWJzLXdyYXBwZXIgLnRpdGxlLCBzZWN0aW9uLm5ld3MgLnRvcC1iYXIgI21lZ2EtbWVudS13cmFwLXRvcC1iYXItciBib2R5LnNpbmdsZS1jYXNlX3N0dWR5IHNlY3Rpb24udGFiYmVkLWNvbnRlbnQgI21lZ2EtbWVudS10b3AtYmFyLXIgPiBsaS5tZWdhLW1lbnUtZ3JpZCA+IHVsLnJvdy5tZWdhLXN1Yi1tZW51ICsgLnJvdy50YWJzLXdyYXBwZXIgLnRpdGxlLCBib2R5LnNpbmdsZS1jYXNlX3N0dWR5IHNlY3Rpb24udGFiYmVkLWNvbnRlbnQgc2VjdGlvbi5uZXdzIC50b3AtYmFyICNtZWdhLW1lbnUtd3JhcC10b3AtYmFyLXIgI21lZ2EtbWVudS10b3AtYmFyLXIgPiBsaS5tZWdhLW1lbnUtZ3JpZCA+IHVsLnJvdy5tZWdhLXN1Yi1tZW51ICsgLnJvdy50YWJzLXdyYXBwZXIgLnRpdGxlLCAudG9wLWJhciAjbWVnYS1tZW51LXdyYXAtdG9wLWJhci1yIHNlY3Rpb24ubmV3cyBib2R5LnNpbmdsZS1jYXNlX3N0dWR5IHNlY3Rpb24udGFiYmVkLWNvbnRlbnQgI21lZ2EtbWVudS10b3AtYmFyLXIgPiBsaS5tZWdhLW1lbnUtZ3JpZCA+IHVsLnJvdy5tZWdhLXN1Yi1tZW51ICsgLnJvdy50YWJzLXdyYXBwZXIgLnRpdGxlLCBib2R5LnNpbmdsZS1jYXNlX3N0dWR5IHNlY3Rpb24udGFiYmVkLWNvbnRlbnQgLnRvcC1iYXIgI21lZ2EtbWVudS13cmFwLXRvcC1iYXItciBzZWN0aW9uLm5ld3MgI21lZ2EtbWVudS10b3AtYmFyLXIgPiBsaS5tZWdhLW1lbnUtZ3JpZCA+IHVsLnJvdy5tZWdhLXN1Yi1tZW51ICsgLnJvdy50YWJzLXdyYXBwZXIgLnRpdGxlLCBzZWN0aW9uLm5ld3MgYm9keS5zaW5nbGUtY2FzZV9zdHVkeSBzZWN0aW9uLnRhYmJlZC1jb250ZW50IC5kcm9wZG93bi5tZW51ID4gbGkgPiAucm93LmlzLWRyb3Bkb3duLXN1Ym1lbnUgKyAucm93LnRhYnMtd3JhcHBlciAudGl0bGUsIGJvZHkuc2luZ2xlLWNhc2Vfc3R1ZHkgc2VjdGlvbi50YWJiZWQtY29udGVudCBzZWN0aW9uLm5ld3MgLmRyb3Bkb3duLm1lbnUgPiBsaSA+IC5yb3cuaXMtZHJvcGRvd24tc3VibWVudSArIC5yb3cudGFicy13cmFwcGVyIC50aXRsZSwgc2VjdGlvbi5uZXdzIGJvZHkuc2luZ2xlLWNhc2Vfc3R1ZHkgc2VjdGlvbi50YWJiZWQtY29udGVudCAucm93LnRhYnMtd3JhcHBlciArIC5yb3cudGFicy13cmFwcGVyIC50aXRsZSwgYm9keS5zaW5nbGUtY2FzZV9zdHVkeSBzZWN0aW9uLnRhYmJlZC1jb250ZW50IHNlY3Rpb24ubmV3cyAucm93LnRhYnMtd3JhcHBlciArIC5yb3cudGFicy13cmFwcGVyIC50aXRsZSwgc2VjdGlvbi5uZXdzIGJvZHkuc2luZ2xlLWNhc2Vfc3R1ZHkgc2VjdGlvbi50YWJiZWQtY29udGVudCAucm93LnRhYnMtY29udGVudCArIC5yb3cudGFicy13cmFwcGVyIC50aXRsZSwgYm9keS5zaW5nbGUtY2FzZV9zdHVkeSBzZWN0aW9uLnRhYmJlZC1jb250ZW50IHNlY3Rpb24ubmV3cyAucm93LnRhYnMtY29udGVudCArIC5yb3cudGFicy13cmFwcGVyIC50aXRsZSwgc2VjdGlvbi5uZXdzIGJvZHkuc2luZ2xlLWNhc2Vfc3R1ZHkgc2VjdGlvbi50YWJiZWQtY29udGVudCAucm93LmJvZHktcHVzaCArIC5yb3cudGFicy1jb250ZW50IC50aXRsZSwgYm9keS5zaW5nbGUtY2FzZV9zdHVkeSBzZWN0aW9uLnRhYmJlZC1jb250ZW50IHNlY3Rpb24ubmV3cyAucm93LmJvZHktcHVzaCArIC5yb3cudGFicy1jb250ZW50IC50aXRsZSwgc2VjdGlvbi5uZXdzIGJvZHkuc2luZ2xlLWNhc2Vfc3R1ZHkgc2VjdGlvbi50YWJiZWQtY29udGVudCAucm93LnNsaWNrLWRvdHMgKyAucm93LnRhYnMtY29udGVudCAudGl0bGUsIGJvZHkuc2luZ2xlLWNhc2Vfc3R1ZHkgc2VjdGlvbi50YWJiZWQtY29udGVudCBzZWN0aW9uLm5ld3MgLnJvdy5zbGljay1kb3RzICsgLnJvdy50YWJzLWNvbnRlbnQgLnRpdGxlLCBzZWN0aW9uLm5ld3MgLnRvcC1iYXIgYm9keS5zaW5nbGUtY2FzZV9zdHVkeSBzZWN0aW9uLnRhYmJlZC1jb250ZW50IHVsID4gbGkubWVnYS1tZW51LWdyaWQgPiB1bC5yb3cubWVnYS1zdWItbWVudSArIC5yb3cudGFicy1jb250ZW50IC50aXRsZSwgYm9keS5zaW5nbGUtY2FzZV9zdHVkeSBzZWN0aW9uLnRhYmJlZC1jb250ZW50IHNlY3Rpb24ubmV3cyAudG9wLWJhciB1bCA+IGxpLm1lZ2EtbWVudS1ncmlkID4gdWwucm93Lm1lZ2Etc3ViLW1lbnUgKyAucm93LnRhYnMtY29udGVudCAudGl0bGUsIC50b3AtYmFyIHNlY3Rpb24ubmV3cyBib2R5LnNpbmdsZS1jYXNlX3N0dWR5IHNlY3Rpb24udGFiYmVkLWNvbnRlbnQgdWwgPiBsaS5tZWdhLW1lbnUtZ3JpZCA+IHVsLnJvdy5tZWdhLXN1Yi1tZW51ICsgLnJvdy50YWJzLWNvbnRlbnQgLnRpdGxlLCBib2R5LnNpbmdsZS1jYXNlX3N0dWR5IHNlY3Rpb24udGFiYmVkLWNvbnRlbnQgLnRvcC1iYXIgc2VjdGlvbi5uZXdzIHVsID4gbGkubWVnYS1tZW51LWdyaWQgPiB1bC5yb3cubWVnYS1zdWItbWVudSArIC5yb3cudGFicy1jb250ZW50IC50aXRsZSwgc2VjdGlvbi5uZXdzIC50b3AtYmFyICNtZWdhLW1lbnUtd3JhcC10b3AtYmFyLXIgYm9keS5zaW5nbGUtY2FzZV9zdHVkeSBzZWN0aW9uLnRhYmJlZC1jb250ZW50ICNtZWdhLW1lbnUtdG9wLWJhci1yID4gbGkubWVnYS1tZW51LWdyaWQgPiB1bC5yb3cubWVnYS1zdWItbWVudSArIC5yb3cudGFicy1jb250ZW50IC50aXRsZSwgYm9keS5zaW5nbGUtY2FzZV9zdHVkeSBzZWN0aW9uLnRhYmJlZC1jb250ZW50IHNlY3Rpb24ubmV3cyAudG9wLWJhciAjbWVnYS1tZW51LXdyYXAtdG9wLWJhci1yICNtZWdhLW1lbnUtdG9wLWJhci1yID4gbGkubWVnYS1tZW51LWdyaWQgPiB1bC5yb3cubWVnYS1zdWItbWVudSArIC5yb3cudGFicy1jb250ZW50IC50aXRsZSwgLnRvcC1iYXIgI21lZ2EtbWVudS13cmFwLXRvcC1iYXItciBzZWN0aW9uLm5ld3MgYm9keS5zaW5nbGUtY2FzZV9zdHVkeSBzZWN0aW9uLnRhYmJlZC1jb250ZW50ICNtZWdhLW1lbnUtdG9wLWJhci1yID4gbGkubWVnYS1tZW51LWdyaWQgPiB1bC5yb3cubWVnYS1zdWItbWVudSArIC5yb3cudGFicy1jb250ZW50IC50aXRsZSwgYm9keS5zaW5nbGUtY2FzZV9zdHVkeSBzZWN0aW9uLnRhYmJlZC1jb250ZW50IC50b3AtYmFyICNtZWdhLW1lbnUtd3JhcC10b3AtYmFyLXIgc2VjdGlvbi5uZXdzICNtZWdhLW1lbnUtdG9wLWJhci1yID4gbGkubWVnYS1tZW51LWdyaWQgPiB1bC5yb3cubWVnYS1zdWItbWVudSArIC5yb3cudGFicy1jb250ZW50IC50aXRsZSwgc2VjdGlvbi5uZXdzIGJvZHkuc2luZ2xlLWNhc2Vfc3R1ZHkgc2VjdGlvbi50YWJiZWQtY29udGVudCAuZHJvcGRvd24ubWVudSA+IGxpID4gLnJvdy5pcy1kcm9wZG93bi1zdWJtZW51ICsgLnJvdy50YWJzLWNvbnRlbnQgLnRpdGxlLCBib2R5LnNpbmdsZS1jYXNlX3N0dWR5IHNlY3Rpb24udGFiYmVkLWNvbnRlbnQgc2VjdGlvbi5uZXdzIC5kcm9wZG93bi5tZW51ID4gbGkgPiAucm93LmlzLWRyb3Bkb3duLXN1Ym1lbnUgKyAucm93LnRhYnMtY29udGVudCAudGl0bGUsIHNlY3Rpb24ubmV3cyBib2R5LnNpbmdsZS1jYXNlX3N0dWR5IHNlY3Rpb24udGFiYmVkLWNvbnRlbnQgLnJvdy50YWJzLXdyYXBwZXIgKyAucm93LnRhYnMtY29udGVudCAudGl0bGUsIGJvZHkuc2luZ2xlLWNhc2Vfc3R1ZHkgc2VjdGlvbi50YWJiZWQtY29udGVudCBzZWN0aW9uLm5ld3MgLnJvdy50YWJzLXdyYXBwZXIgKyAucm93LnRhYnMtY29udGVudCAudGl0bGUsIHNlY3Rpb24ubmV3cyBib2R5LnNpbmdsZS1jYXNlX3N0dWR5IHNlY3Rpb24udGFiYmVkLWNvbnRlbnQgLnJvdy50YWJzLWNvbnRlbnQgKyAucm93LnRhYnMtY29udGVudCAudGl0bGUsIGJvZHkuc2luZ2xlLWNhc2Vfc3R1ZHkgc2VjdGlvbi50YWJiZWQtY29udGVudCBzZWN0aW9uLm5ld3MgLnJvdy50YWJzLWNvbnRlbnQgKyAucm93LnRhYnMtY29udGVudCAudGl0bGUge1xuICAgICAgICBwYWRkaW5nLXRvcDogMS4yNXJlbTsgfSB9XG4gICAgc2VjdGlvbi5uZXdzIC5yb3cgLm5ld3MsXG4gICAgc2VjdGlvbi5uZXdzIC5yb3cgLmluc2lnaHRzIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwOyB9XG4gICAgICBzZWN0aW9uLm5ld3MgLnJvdyAubmV3cywgc2VjdGlvbi5uZXdzIC5yb3cgLm5ld3M6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSxcbiAgICAgIHNlY3Rpb24ubmV3cyAucm93IC5pbnNpZ2h0cyxcbiAgICAgIHNlY3Rpb24ubmV3cyAucm93IC5pbnNpZ2h0czpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgICBzZWN0aW9uLm5ld3MgLnJvdyAubmV3czpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpLFxuICAgICAgc2VjdGlvbi5uZXdzIC5yb3cgLmluc2lnaHRzOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICBmbG9hdDogcmlnaHQ7IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgIHNlY3Rpb24ubmV3cyAucm93IC5uZXdzLFxuICAgICAgICBzZWN0aW9uLm5ld3MgLnJvdyAuaW5zaWdodHMge1xuICAgICAgICAgIHdpZHRoOiA1MCU7XG4gICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9IH1cbiAgICBzZWN0aW9uLm5ld3MgLnJvdyAuYXJ0aWNsZSB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjJmMmYyO1xuICAgICAgZmxleDogMSAwIDA7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgY29sb3I6ICMwYTBhMGE7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHN0cmV0Y2g7XG4gICAgICBtaW4taGVpZ2h0OiA2MHZ3OyB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICBzZWN0aW9uLm5ld3MgLnJvdyAuYXJ0aWNsZSB7XG4gICAgICAgICAgbWluLWhlaWdodDogMzB2dztcbiAgICAgICAgICBmbGV4OiAxIDAgYXV0bzsgfSB9XG4gICAgICBzZWN0aW9uLm5ld3MgLnJvdyAuYXJ0aWNsZSAuYmctaW1hZ2Uge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2NjO1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleDogMCAwIGF1dG87XG4gICAgICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgICAgIHNlY3Rpb24ubmV3cyAucm93IC5hcnRpY2xlIC5iZy1pbWFnZTpiZWZvcmUge1xuICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNCk7IH1cbiAgICAgICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgICAgICAgc2VjdGlvbi5uZXdzIC5yb3cgLmFydGljbGUgLmJnLWltYWdlOmJlZm9yZSB7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjY1KSAwJSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwKSA4MCUpOyB9IH1cbiAgICAgICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgICAgICAgLnBvc3QtdHlwZS1hcmNoaXZlLWV2ZW50IHNlY3Rpb24ubmV3cyAucm93IC5hcnRpY2xlIC5iZy1pbWFnZTpiZWZvcmUge1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuNik7IH0gfVxuICAgICAgICBzZWN0aW9uLm5ld3MgLnJvdyAuYXJ0aWNsZSAuYmctaW1hZ2Uubm8tb3ZlcmxheTpiZWZvcmUge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAgICAgc2VjdGlvbi5uZXdzIC5yb3cgLmFydGljbGUgLmJnLWltYWdlIGEge1xuICAgICAgICAgIGNvbG9yOiAjMGEwYTBhOyB9XG4gICAgICAgIHNlY3Rpb24ubmV3cyAucm93IC5hcnRpY2xlIC5iZy1pbWFnZSBwLmxhYmVsIHtcbiAgICAgICAgICBjb2xvcjogIzY4MDBkMjsgfVxuICAgICAgc2VjdGlvbi5uZXdzIC5yb3cgLmFydGljbGUgYSxcbiAgICAgIHNlY3Rpb24ubmV3cyAucm93IC5hcnRpY2xlIHNwYW4ubm8tbGluayB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICAgICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gICAgICAgIGZsZXg6IDEgMCAxMDAlO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHotaW5kZXg6IDI7XG4gICAgICAgIGNvbG9yOiAjMGEwYTBhO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICAgICAgcGFkZGluZy10b3A6IDEuMjVyZW07XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAxLjI1cmVtOyB9XG4gICAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgICAgc2VjdGlvbi5uZXdzIC5yb3cgLmFydGljbGUgYSxcbiAgICAgICAgICBzZWN0aW9uLm5ld3MgLnJvdyAuYXJ0aWNsZSBzcGFuLm5vLWxpbmsge1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07IH0gfVxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAgICAgc2VjdGlvbi5uZXdzIC5yb3cgLmFydGljbGUgYSxcbiAgICAgICAgICBzZWN0aW9uLm5ld3MgLnJvdyAuYXJ0aWNsZSBzcGFuLm5vLWxpbmsge1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IDVyZW07XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogNXJlbTsgfSB9XG4gICAgICAgIHNlY3Rpb24ubmV3cyAucm93IC5hcnRpY2xlIGEgLndyYXBwZXIsXG4gICAgICAgIHNlY3Rpb24ubmV3cyAucm93IC5hcnRpY2xlIHNwYW4ubm8tbGluayAud3JhcHBlciB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgICAgICAgc2VjdGlvbi5uZXdzIC5yb3cgLmFydGljbGUgYSAucm93LFxuICAgICAgICBzZWN0aW9uLm5ld3MgLnJvdyAuYXJ0aWNsZSBzcGFuLm5vLWxpbmsgLnJvdyB7XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogMC42MjVyZW0gIWltcG9ydGFudDtcbiAgICAgICAgICBtYXgtd2lkdGg6IDMxLjI1cmVtO1xuICAgICAgICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgICAgIHNlY3Rpb24ubmV3cyAucm93IC5hcnRpY2xlIGEgLnJvdyxcbiAgICAgICAgICAgIHNlY3Rpb24ubmV3cyAucm93IC5hcnRpY2xlIHNwYW4ubm8tbGluayAucm93IHtcbiAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtICFpbXBvcnRhbnQ7IH0gfVxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4OC43NWVtKSB7XG4gICAgICAgICAgc2VjdGlvbi5uZXdzIC5yb3cgLmFydGljbGUgYSA+IGgyLFxuICAgICAgICAgIHNlY3Rpb24ubmV3cyAucm93IC5hcnRpY2xlIGEgPiBwLFxuICAgICAgICAgIHNlY3Rpb24ubmV3cyAucm93IC5hcnRpY2xlIGEgPiAud3JhcHBlciAudGV4dCxcbiAgICAgICAgICBzZWN0aW9uLm5ld3MgLnJvdyAuYXJ0aWNsZSBzcGFuLm5vLWxpbmsgPiBoMixcbiAgICAgICAgICBzZWN0aW9uLm5ld3MgLnJvdyAuYXJ0aWNsZSBzcGFuLm5vLWxpbmsgPiBwLFxuICAgICAgICAgIHNlY3Rpb24ubmV3cyAucm93IC5hcnRpY2xlIHNwYW4ubm8tbGluayA+IC53cmFwcGVyIC50ZXh0IHtcbiAgICAgICAgICAgIHdpZHRoOiA1OC4zMzMzMyU7IH0gfVxuICAgICAgc2VjdGlvbi5uZXdzIC5yb3cgLmFydGljbGUgcC5sYWJlbCB7XG4gICAgICAgIGNvbG9yOiAjNjgwMGQyOyB9XG4gICAgICBzZWN0aW9uLm5ld3MgLnJvdyAuYXJ0aWNsZSBoMiB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IGF1dG87XG4gICAgICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07IH1cbiAgICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgICBzZWN0aW9uLm5ld3MgLnJvdyAuYXJ0aWNsZSBoMiB7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuNjI1cmVtOyB9IH1cbiAgICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgICBzZWN0aW9uLm5ld3MgLnJvdyAuYXJ0aWNsZSBoMiB7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuNzVyZW07IH0gfVxuICAgICAgICBzZWN0aW9uLm5ld3MgLnJvdyAuYXJ0aWNsZSBoMiArIHAge1xuICAgICAgICAgIG1hcmdpbi10b3A6IDEuMjVyZW07IH1cbiAgICAgIHNlY3Rpb24ubmV3cyAucm93IC5hcnRpY2xlIC53cmFwcGVyIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogYXV0bzsgfVxuICAgICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgICAgIHNlY3Rpb24ubmV3cyAucm93IC5hcnRpY2xlIC53cmFwcGVyIHtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47IH0gfVxuICAgICAgc2VjdGlvbi5uZXdzIC5yb3cgLmFydGljbGUgc3Bhbi5idXR0b24sIHNlY3Rpb24ubmV3cyAucm93IC5hcnRpY2xlIC53cC1ibG9jay1idXR0b24gc3Bhbi53cC1ibG9jay1idXR0b25fX2xpbmssIC53cC1ibG9jay1idXR0b24gc2VjdGlvbi5uZXdzIC5yb3cgLmFydGljbGUgc3Bhbi53cC1ibG9jay1idXR0b25fX2xpbmsge1xuICAgICAgICBtYXJnaW4tdG9wOiAxLjg3NXJlbTtcbiAgICAgICAgYmFja2dyb3VuZDogIzY4MDBkMjtcbiAgICAgICAgY29sb3I6ICNmZWZlZmU7XG4gICAgICAgIGFsaWduLXNlbGY6IGZsZXgtc3RhcnQ7IH1cbiAgICAgICAgc2VjdGlvbi5uZXdzIC5yb3cgLmFydGljbGUgc3Bhbi5idXR0b246aG92ZXIsIHNlY3Rpb24ubmV3cyAucm93IC5hcnRpY2xlIC53cC1ibG9jay1idXR0b24gc3Bhbi53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIsIC53cC1ibG9jay1idXR0b24gc2VjdGlvbi5uZXdzIC5yb3cgLmFydGljbGUgc3Bhbi53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQ6ICNmZWZlZmU7XG4gICAgICAgICAgY29sb3I6ICM2ODAwZDI7IH1cbiAgICAgIHNlY3Rpb24ubmV3cyAucm93IC5hcnRpY2xlIC5pY29uIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgICAgICAucG9zdC10eXBlLWFyY2hpdmUtZXZlbnQgc2VjdGlvbi5uZXdzIC5yb3cgLmFydGljbGUgLmljb24ge1xuICAgICAgICAgIGZsZXg6IDEgMSAxMDAlO1xuICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgIHdpZHRoOiA2LjI1cmVtOyB9XG4gICAgICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgICAgIC5wb3N0LXR5cGUtYXJjaGl2ZS1ldmVudCBzZWN0aW9uLm5ld3MgLnJvdyAuYXJ0aWNsZSAuaWNvbiB7XG4gICAgICAgICAgICAgIGZsZXgtYmFzaXM6IDUwJTtcbiAgICAgICAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICAgICAgICAgIG9yZGVyOiAyO1xuICAgICAgICAgICAgICB3aWR0aDogMTVyZW07IH0gfVxuICAgICAgICAgIC5wb3N0LXR5cGUtYXJjaGl2ZS1ldmVudCBzZWN0aW9uLm5ld3MgLnJvdyAuYXJ0aWNsZSAuaWNvbiBpbWcge1xuICAgICAgICAgICAgZmxvYXQ6IG5vbmU7IH1cbiAgICAgICAgc2VjdGlvbi5uZXdzIC5yb3cgLmFydGljbGUgLmljb24gaW1nIHtcbiAgICAgICAgICBtYXgtd2lkdGg6IDEyLjVyZW07IH1cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgICAgICAgIHNlY3Rpb24ubmV3cyAucm93IC5hcnRpY2xlIC5pY29uIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrOyB9IH1cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgICAgIHNlY3Rpb24ubmV3cyAucm93IC5hcnRpY2xlIC5pY29uIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgb3JkZXI6IDI7XG4gICAgICAgICAgICBmbGV4LWdyb3c6IDE7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH0gfVxuICAgICAgc2VjdGlvbi5uZXdzIC5yb3cgLmFydGljbGUud2hpdGUsIHNlY3Rpb24ubmV3cy5ibG9nIC5yb3cgLm5ld3MgLmFydGljbGU6bnRoLWNoaWxkKDVuICsgMSk6bm90KC5ibGFjayksIHNlY3Rpb24ubmV3cy5ibG9nIC5uZXdzIC5yb3cgLmFydGljbGU6bnRoLWNoaWxkKDVuICsgMSk6bm90KC5ibGFjayksIHNlY3Rpb24ubmV3cy5ibG9nIC5yb3cgLm5ld3MgLmFydGljbGU6bnRoLWNoaWxkKDVuICsgNSk6bm90KC5ibGFjayksIHNlY3Rpb24ubmV3cy5ibG9nIC5uZXdzIC5yb3cgLmFydGljbGU6bnRoLWNoaWxkKDVuICsgNSk6bm90KC5ibGFjaykge1xuICAgICAgICBjb2xvcjogI2ZlZmVmZTsgfVxuICAgICAgICBzZWN0aW9uLm5ld3MgLnJvdyAuYXJ0aWNsZS53aGl0ZSBhLCBzZWN0aW9uLm5ld3MuYmxvZyAucm93IC5uZXdzIC5hcnRpY2xlOm50aC1jaGlsZCg1biArIDEpOm5vdCguYmxhY2spIGEsIHNlY3Rpb24ubmV3cy5ibG9nIC5uZXdzIC5yb3cgLmFydGljbGU6bnRoLWNoaWxkKDVuICsgMSk6bm90KC5ibGFjaykgYSwgc2VjdGlvbi5uZXdzLmJsb2cgLnJvdyAubmV3cyAuYXJ0aWNsZTpudGgtY2hpbGQoNW4gKyA1KTpub3QoLmJsYWNrKSBhLCBzZWN0aW9uLm5ld3MuYmxvZyAubmV3cyAucm93IC5hcnRpY2xlOm50aC1jaGlsZCg1biArIDUpOm5vdCguYmxhY2spIGEge1xuICAgICAgICAgIGNvbG9yOiAjZmVmZWZlOyB9XG4gICAgICAgIHNlY3Rpb24ubmV3cyAucm93IC5hcnRpY2xlLndoaXRlIHAubGFiZWwsIHNlY3Rpb24ubmV3cy5ibG9nIC5yb3cgLm5ld3MgLmFydGljbGU6bnRoLWNoaWxkKDVuICsgMSk6bm90KC5ibGFjaykgcC5sYWJlbCwgc2VjdGlvbi5uZXdzLmJsb2cgLm5ld3MgLnJvdyAuYXJ0aWNsZTpudGgtY2hpbGQoNW4gKyAxKTpub3QoLmJsYWNrKSBwLmxhYmVsLCBzZWN0aW9uLm5ld3MuYmxvZyAucm93IC5uZXdzIC5hcnRpY2xlOm50aC1jaGlsZCg1biArIDUpOm5vdCguYmxhY2spIHAubGFiZWwsIHNlY3Rpb24ubmV3cy5ibG9nIC5uZXdzIC5yb3cgLmFydGljbGU6bnRoLWNoaWxkKDVuICsgNSk6bm90KC5ibGFjaykgcC5sYWJlbCB7XG4gICAgICAgICAgY29sb3I6ICNmYmUyMDA7IH1cbiAgICAgICAgc2VjdGlvbi5uZXdzIC5yb3cgLmFydGljbGUud2hpdGUgc3Bhbi5idXR0b24sIHNlY3Rpb24ubmV3cy5ibG9nIC5yb3cgLm5ld3MgLmFydGljbGU6bnRoLWNoaWxkKDVuICsgMSk6bm90KC5ibGFjaykgc3Bhbi5idXR0b24sIHNlY3Rpb24ubmV3cy5ibG9nIC5uZXdzIC5yb3cgLmFydGljbGU6bnRoLWNoaWxkKDVuICsgMSk6bm90KC5ibGFjaykgc3Bhbi5idXR0b24sIHNlY3Rpb24ubmV3cy5ibG9nIC5yb3cgLm5ld3MgLmFydGljbGU6bnRoLWNoaWxkKDVuICsgNSk6bm90KC5ibGFjaykgc3Bhbi5idXR0b24sIHNlY3Rpb24ubmV3cy5ibG9nIC5uZXdzIC5yb3cgLmFydGljbGU6bnRoLWNoaWxkKDVuICsgNSk6bm90KC5ibGFjaykgc3Bhbi5idXR0b24sIHNlY3Rpb24ubmV3cyAucm93IC5hcnRpY2xlLndoaXRlIC53cC1ibG9jay1idXR0b24gc3Bhbi53cC1ibG9jay1idXR0b25fX2xpbmssIC53cC1ibG9jay1idXR0b24gc2VjdGlvbi5uZXdzIC5yb3cgLmFydGljbGUud2hpdGUgc3Bhbi53cC1ibG9jay1idXR0b25fX2xpbmssIHNlY3Rpb24ubmV3cy5ibG9nIC5yb3cgLm5ld3MgLmFydGljbGU6bnRoLWNoaWxkKDVuICsgMSk6bm90KC5ibGFjaykgLndwLWJsb2NrLWJ1dHRvbiBzcGFuLndwLWJsb2NrLWJ1dHRvbl9fbGluaywgLndwLWJsb2NrLWJ1dHRvbiBzZWN0aW9uLm5ld3MuYmxvZyAucm93IC5uZXdzIC5hcnRpY2xlOm50aC1jaGlsZCg1biArIDEpOm5vdCguYmxhY2spIHNwYW4ud3AtYmxvY2stYnV0dG9uX19saW5rLCBzZWN0aW9uLm5ld3MuYmxvZyAubmV3cyAucm93IC5hcnRpY2xlOm50aC1jaGlsZCg1biArIDEpOm5vdCguYmxhY2spIC53cC1ibG9jay1idXR0b24gc3Bhbi53cC1ibG9jay1idXR0b25fX2xpbmssIC53cC1ibG9jay1idXR0b24gc2VjdGlvbi5uZXdzLmJsb2cgLm5ld3MgLnJvdyAuYXJ0aWNsZTpudGgtY2hpbGQoNW4gKyAxKTpub3QoLmJsYWNrKSBzcGFuLndwLWJsb2NrLWJ1dHRvbl9fbGluaywgc2VjdGlvbi5uZXdzLmJsb2cgLnJvdyAubmV3cyAuYXJ0aWNsZTpudGgtY2hpbGQoNW4gKyA1KTpub3QoLmJsYWNrKSAud3AtYmxvY2stYnV0dG9uIHNwYW4ud3AtYmxvY2stYnV0dG9uX19saW5rLCAud3AtYmxvY2stYnV0dG9uIHNlY3Rpb24ubmV3cy5ibG9nIC5yb3cgLm5ld3MgLmFydGljbGU6bnRoLWNoaWxkKDVuICsgNSk6bm90KC5ibGFjaykgc3Bhbi53cC1ibG9jay1idXR0b25fX2xpbmssIHNlY3Rpb24ubmV3cy5ibG9nIC5uZXdzIC5yb3cgLmFydGljbGU6bnRoLWNoaWxkKDVuICsgNSk6bm90KC5ibGFjaykgLndwLWJsb2NrLWJ1dHRvbiBzcGFuLndwLWJsb2NrLWJ1dHRvbl9fbGluaywgLndwLWJsb2NrLWJ1dHRvbiBzZWN0aW9uLm5ld3MuYmxvZyAubmV3cyAucm93IC5hcnRpY2xlOm50aC1jaGlsZCg1biArIDUpOm5vdCguYmxhY2spIHNwYW4ud3AtYmxvY2stYnV0dG9uX19saW5rIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAjZmVmZWZlO1xuICAgICAgICAgIGNvbG9yOiAjNjgwMGQyOyB9XG4gICAgICAgICAgc2VjdGlvbi5uZXdzIC5yb3cgLmFydGljbGUud2hpdGUgc3Bhbi5idXR0b246aG92ZXIsIHNlY3Rpb24ubmV3cy5ibG9nIC5yb3cgLm5ld3MgLmFydGljbGU6bnRoLWNoaWxkKDVuICsgMSk6bm90KC5ibGFjaykgc3Bhbi5idXR0b246aG92ZXIsIHNlY3Rpb24ubmV3cy5ibG9nIC5uZXdzIC5yb3cgLmFydGljbGU6bnRoLWNoaWxkKDVuICsgMSk6bm90KC5ibGFjaykgc3Bhbi5idXR0b246aG92ZXIsIHNlY3Rpb24ubmV3cy5ibG9nIC5yb3cgLm5ld3MgLmFydGljbGU6bnRoLWNoaWxkKDVuICsgNSk6bm90KC5ibGFjaykgc3Bhbi5idXR0b246aG92ZXIsIHNlY3Rpb24ubmV3cy5ibG9nIC5uZXdzIC5yb3cgLmFydGljbGU6bnRoLWNoaWxkKDVuICsgNSk6bm90KC5ibGFjaykgc3Bhbi5idXR0b246aG92ZXIsIHNlY3Rpb24ubmV3cyAucm93IC5hcnRpY2xlLndoaXRlIC53cC1ibG9jay1idXR0b24gc3Bhbi53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIsIC53cC1ibG9jay1idXR0b24gc2VjdGlvbi5uZXdzIC5yb3cgLmFydGljbGUud2hpdGUgc3Bhbi53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIsIHNlY3Rpb24ubmV3cy5ibG9nIC5yb3cgLm5ld3MgLmFydGljbGU6bnRoLWNoaWxkKDVuICsgMSk6bm90KC5ibGFjaykgLndwLWJsb2NrLWJ1dHRvbiBzcGFuLndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3ZlciwgLndwLWJsb2NrLWJ1dHRvbiBzZWN0aW9uLm5ld3MuYmxvZyAucm93IC5uZXdzIC5hcnRpY2xlOm50aC1jaGlsZCg1biArIDEpOm5vdCguYmxhY2spIHNwYW4ud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLCBzZWN0aW9uLm5ld3MuYmxvZyAubmV3cyAucm93IC5hcnRpY2xlOm50aC1jaGlsZCg1biArIDEpOm5vdCguYmxhY2spIC53cC1ibG9jay1idXR0b24gc3Bhbi53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIsIC53cC1ibG9jay1idXR0b24gc2VjdGlvbi5uZXdzLmJsb2cgLm5ld3MgLnJvdyAuYXJ0aWNsZTpudGgtY2hpbGQoNW4gKyAxKTpub3QoLmJsYWNrKSBzcGFuLndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3Zlciwgc2VjdGlvbi5uZXdzLmJsb2cgLnJvdyAubmV3cyAuYXJ0aWNsZTpudGgtY2hpbGQoNW4gKyA1KTpub3QoLmJsYWNrKSAud3AtYmxvY2stYnV0dG9uIHNwYW4ud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLCAud3AtYmxvY2stYnV0dG9uIHNlY3Rpb24ubmV3cy5ibG9nIC5yb3cgLm5ld3MgLmFydGljbGU6bnRoLWNoaWxkKDVuICsgNSk6bm90KC5ibGFjaykgc3Bhbi53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIsIHNlY3Rpb24ubmV3cy5ibG9nIC5uZXdzIC5yb3cgLmFydGljbGU6bnRoLWNoaWxkKDVuICsgNSk6bm90KC5ibGFjaykgLndwLWJsb2NrLWJ1dHRvbiBzcGFuLndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3ZlciwgLndwLWJsb2NrLWJ1dHRvbiBzZWN0aW9uLm5ld3MuYmxvZyAubmV3cyAucm93IC5hcnRpY2xlOm50aC1jaGlsZCg1biArIDUpOm5vdCguYmxhY2spIHNwYW4ud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICNmYmUyMDA7IH1cbiAgICAgICAgc2VjdGlvbi5uZXdzIC5yb3cgLmFydGljbGUud2hpdGUgLmJnLWltYWdlOmJlZm9yZSwgc2VjdGlvbi5uZXdzLmJsb2cgLnJvdyAubmV3cyAuYXJ0aWNsZTpudGgtY2hpbGQoNW4gKyAxKTpub3QoLmJsYWNrKSAuYmctaW1hZ2U6YmVmb3JlLCBzZWN0aW9uLm5ld3MuYmxvZyAubmV3cyAucm93IC5hcnRpY2xlOm50aC1jaGlsZCg1biArIDEpOm5vdCguYmxhY2spIC5iZy1pbWFnZTpiZWZvcmUsIHNlY3Rpb24ubmV3cy5ibG9nIC5yb3cgLm5ld3MgLmFydGljbGU6bnRoLWNoaWxkKDVuICsgNSk6bm90KC5ibGFjaykgLmJnLWltYWdlOmJlZm9yZSwgc2VjdGlvbi5uZXdzLmJsb2cgLm5ld3MgLnJvdyAuYXJ0aWNsZTpudGgtY2hpbGQoNW4gKyA1KTpub3QoLmJsYWNrKSAuYmctaW1hZ2U6YmVmb3JlIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuNSk7IH1cbiAgICAgICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgICAgICAgc2VjdGlvbi5uZXdzIC5yb3cgLmFydGljbGUud2hpdGUgLmJnLWltYWdlOmJlZm9yZSwgc2VjdGlvbi5uZXdzLmJsb2cgLnJvdyAubmV3cyAuYXJ0aWNsZTpudGgtY2hpbGQoNW4gKyAxKTpub3QoLmJsYWNrKSAuYmctaW1hZ2U6YmVmb3JlLCBzZWN0aW9uLm5ld3MuYmxvZyAubmV3cyAucm93IC5hcnRpY2xlOm50aC1jaGlsZCg1biArIDEpOm5vdCguYmxhY2spIC5iZy1pbWFnZTpiZWZvcmUsIHNlY3Rpb24ubmV3cy5ibG9nIC5yb3cgLm5ld3MgLmFydGljbGU6bnRoLWNoaWxkKDVuICsgNSk6bm90KC5ibGFjaykgLmJnLWltYWdlOmJlZm9yZSwgc2VjdGlvbi5uZXdzLmJsb2cgLm5ld3MgLnJvdyAuYXJ0aWNsZTpudGgtY2hpbGQoNW4gKyA1KTpub3QoLmJsYWNrKSAuYmctaW1hZ2U6YmVmb3JlIHtcbiAgICAgICAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCByZ2JhKDAsIDAsIDAsIDAuNjUpIDAlLCByZ2JhKDAsIDAsIDAsIDApIDgwJSk7IH0gfVxuICAgICAgICBzZWN0aW9uLm5ld3MgLnJvdyAuYXJ0aWNsZS53aGl0ZSAuYmctaW1hZ2UgYSwgc2VjdGlvbi5uZXdzLmJsb2cgLnJvdyAubmV3cyAuYXJ0aWNsZTpudGgtY2hpbGQoNW4gKyAxKTpub3QoLmJsYWNrKSAuYmctaW1hZ2UgYSwgc2VjdGlvbi5uZXdzLmJsb2cgLm5ld3MgLnJvdyAuYXJ0aWNsZTpudGgtY2hpbGQoNW4gKyAxKTpub3QoLmJsYWNrKSAuYmctaW1hZ2UgYSwgc2VjdGlvbi5uZXdzLmJsb2cgLnJvdyAubmV3cyAuYXJ0aWNsZTpudGgtY2hpbGQoNW4gKyA1KTpub3QoLmJsYWNrKSAuYmctaW1hZ2UgYSwgc2VjdGlvbi5uZXdzLmJsb2cgLm5ld3MgLnJvdyAuYXJ0aWNsZTpudGgtY2hpbGQoNW4gKyA1KTpub3QoLmJsYWNrKSAuYmctaW1hZ2UgYSB7XG4gICAgICAgICAgY29sb3I6ICNmZWZlZmU7IH1cbiAgICBzZWN0aW9uLm5ld3MgLnJvdyAuaW5zaWdodHMgLmFydGljbGUgYSBoMiB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxLjI1cmVtOyB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICBzZWN0aW9uLm5ld3MgLnJvdyAuaW5zaWdodHMgLmFydGljbGUgYSBoMiB7XG4gICAgICAgICAgZm9udC1zaXplOiAyLjVyZW07IH0gfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgc2VjdGlvbi5uZXdzIC5yb3cgLmluc2lnaHRzIC5hcnRpY2xlIGEgaDIge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDMuNzVyZW07XG4gICAgICAgICAgZm9udC1zaXplOiA0LjM3NXJlbTtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMS4xOyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICBzZWN0aW9uLm5ld3MgLnJvdyAuaW5zaWdodHMgLmFydGljbGUgYSBwIHtcbiAgICAgICAgd2lkdGg6IDU4LjMzMzMzJTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgc2VjdGlvbi5uZXdzLm5vLWluc2lnaHQgLnJvdyAubmV3cyB7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93OyB9XG4gICAgICBzZWN0aW9uLm5ld3Mubm8taW5zaWdodCAucm93IC5uZXdzID4gZGl2IHtcbiAgICAgICAgbWF4LXdpZHRoOiA1MCU7IH0gfVxuICBzZWN0aW9uLm5ld3MgPiAubGluayB7XG4gICAgcGFkZGluZzogMS4yNXJlbSAwO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICBzZWN0aW9uLm5ld3MgPiAubGluayB7XG4gICAgICAgIHBhZGRpbmc6IDMuNzVyZW0gMDsgfSB9XG4gICAgc2VjdGlvbi5uZXdzID4gLmxpbmsgLmJ1dHRvbiwgc2VjdGlvbi5uZXdzID4gLmxpbmsgLndwLWJsb2NrLWJ1dHRvbiAud3AtYmxvY2stYnV0dG9uX19saW5rLCAud3AtYmxvY2stYnV0dG9uIHNlY3Rpb24ubmV3cyA+IC5saW5rIC53cC1ibG9jay1idXR0b25fX2xpbmssIHNlY3Rpb24ubmV3cyA+IC5saW5rIHNlY3Rpb24ucHJvbW8tbGlzdGluZy5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYSwgc2VjdGlvbi5wcm9tby1saXN0aW5nLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBzZWN0aW9uLm5ld3MgPiAubGluayBhLCBzZWN0aW9uLm5ld3MgPiAubGluayBzZWN0aW9uLnByb21vLWxpc3RpbmctMi5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYSwgc2VjdGlvbi5wcm9tby1saXN0aW5nLTIuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIHNlY3Rpb24ubmV3cyA+IC5saW5rIGEge1xuICAgICAgbWFyZ2luOiAwOyB9XG5cbnNlY3Rpb24ubmV3cy5wcm9kdWN0cyAubmV3cyxcbnNlY3Rpb24ubmV3cy5wcm9kdWN0cyAuaW1hZ2VzIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIGZsZXgtd3JhcDogd3JhcDsgfVxuXG5zZWN0aW9uLm5ld3MucHJvZHVjdHMgLm5ld3MgLmFydGljbGUge1xuICBmbGV4OiAxIDEgMTAwJTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIHNlY3Rpb24ubmV3cy5wcm9kdWN0cyAubmV3cyAuYXJ0aWNsZSB7XG4gICAgICB3aWR0aDogNTAlO1xuICAgICAgZmxleDogMSAxIDUwJTsgfSB9XG4gIHNlY3Rpb24ubmV3cy5wcm9kdWN0cyAubmV3cyAuYXJ0aWNsZSBoMyB7XG4gICAgbWFyZ2luLXRvcDogMC41cmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDEuMjVyZW07XG4gICAgZm9udC1zaXplOiAxLjI1cmVtOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIHNlY3Rpb24ubmV3cy5wcm9kdWN0cyAubmV3cyAuYXJ0aWNsZSBoMyB7XG4gICAgICAgIGZvbnQtc2l6ZTogMi4xMjVyZW07IH0gfVxuICBzZWN0aW9uLm5ld3MucHJvZHVjdHMgLm5ld3MgLmFydGljbGUgLmljb24gaW1nIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxLjI1cmVtO1xuICAgIHdpZHRoOiAxMDAlOyB9XG5cbnNlY3Rpb24ucmVsYXRlZC1wcm9kdWN0cyAucm93IHtcbiAgZGlzcGxheTogYmxvY2s7IH1cbiAgc2VjdGlvbi5yZWxhdGVkLXByb2R1Y3RzIC5yb3cuY29sdW1ucyB7XG4gICAgbWFyZ2luLXRvcDogLTAuNjI1cmVtOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIHNlY3Rpb24ucmVsYXRlZC1wcm9kdWN0cyAucm93LmNvbHVtbnMge1xuICAgICAgICBtYXJnaW4tdG9wOiAtMC45Mzc1cmVtOyB9IH1cblxuc2VjdGlvbi5yZWxhdGVkLXByb2R1Y3RzIC5pbWFnZXMge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gIGZsZXgtd3JhcDogd3JhcDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIHNlY3Rpb24ucmVsYXRlZC1wcm9kdWN0cyAuaW1hZ2VzIHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAyLjVyZW07IH0gfVxuICBzZWN0aW9uLnJlbGF0ZWQtcHJvZHVjdHMgLmltYWdlcyAuYXJ0aWNsZSB7XG4gICAgZmxleDogMSAxIDEwMCU7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgc2VjdGlvbi5yZWxhdGVkLXByb2R1Y3RzIC5pbWFnZXMgLmFydGljbGUge1xuICAgICAgICB3aWR0aDogMzMuMzMzMyU7XG4gICAgICAgIGZsZXg6IDAgMSAzMy4zMzMzJTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMS4yNXJlbTtcbiAgICAgICAgbWluLWhlaWdodDogYXV0bzsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIHNlY3Rpb24ucmVsYXRlZC1wcm9kdWN0cyAuaW1hZ2VzIC5hcnRpY2xlIHtcbiAgICAgICAgd2lkdGg6IDI1JTtcbiAgICAgICAgZmxleDogMCAxIDI1JTtcbiAgICAgICAgbWluLWhlaWdodDogYXV0bzsgfSB9XG4gICAgc2VjdGlvbi5yZWxhdGVkLXByb2R1Y3RzIC5pbWFnZXMgLmFydGljbGUgYSB7XG4gICAgICBwYWRkaW5nLXRvcDogMC42MjVyZW07XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMS4yNXJlbTtcbiAgICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICBzZWN0aW9uLnJlbGF0ZWQtcHJvZHVjdHMgLmltYWdlcyAuYXJ0aWNsZSBhIHtcbiAgICAgICAgICBwYWRkaW5nLXRvcDogMC45Mzc1cmVtOyB9IH1cbiAgICAgIHNlY3Rpb24ucmVsYXRlZC1wcm9kdWN0cyAuaW1hZ2VzIC5hcnRpY2xlIGEgPiBwIHtcbiAgICAgICAgd2lkdGg6IGF1dG87IH1cbiAgICBzZWN0aW9uLnJlbGF0ZWQtcHJvZHVjdHMgLmltYWdlcyAuYXJ0aWNsZSBpbWcge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMS4yNXJlbTsgfVxuICAgIHNlY3Rpb24ucmVsYXRlZC1wcm9kdWN0cyAuaW1hZ2VzIC5hcnRpY2xlIGgzIHtcbiAgICAgIGNvbG9yOiAjNjgwMGQyO1xuICAgICAgZm9udC1zaXplOiAxLjA2MjVyZW07IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgIHNlY3Rpb24ucmVsYXRlZC1wcm9kdWN0cyAuaW1hZ2VzIC5hcnRpY2xlIGgzIHtcbiAgICAgICAgICBmb250LXNpemU6IDEuMjVyZW07IH0gfVxuICAgICAgc2VjdGlvbi5yZWxhdGVkLXByb2R1Y3RzIC5pbWFnZXMgLmFydGljbGUgaDM6YWZ0ZXIge1xuICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgdG9wOiAtMC4xMjVyZW07XG4gICAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgICBtYXJnaW4tbGVmdDogLTEuMjVyZW07XG4gICAgICAgIG1hcmdpbi10b3A6IGF1dG87XG4gICAgICAgIGJvcmRlcjogMnB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICBib3JkZXItcmlnaHQtY29sb3I6ICM2ODAwZDI7XG4gICAgICAgIGJvcmRlci10b3AtY29sb3I6ICM2ODAwZDI7XG4gICAgICAgIHdpZHRoOiAwLjYyNXJlbTtcbiAgICAgICAgaGVpZ2h0OiAwLjYyNXJlbTtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpIHRyYW5zbGF0ZSgyMHB4LCAtMThweCk7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTsgfVxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgICAgICAgc2VjdGlvbi5yZWxhdGVkLXByb2R1Y3RzIC5pbWFnZXMgLmFydGljbGUgaDM6YWZ0ZXIge1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC0xLjU2MjVyZW07XG4gICAgICAgICAgICB0b3A6IC0wLjA2MjVyZW07XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZykgdHJhbnNsYXRlKDIwcHgsIC0xOHB4KSBzY2FsZSgwLjgpOyB9IH1cbiAgICBzZWN0aW9uLnJlbGF0ZWQtcHJvZHVjdHMgLmltYWdlcyAuYXJ0aWNsZS5saWdodCBoMyB7XG4gICAgICBjb2xvcjogI2ZlZmVmZTsgfVxuICAgICAgc2VjdGlvbi5yZWxhdGVkLXByb2R1Y3RzIC5pbWFnZXMgLmFydGljbGUubGlnaHQgaDM6YWZ0ZXIge1xuICAgICAgICBib3JkZXItcmlnaHQtY29sb3I6ICNmZWZlZmU7XG4gICAgICAgIGJvcmRlci10b3AtY29sb3I6ICNmZWZlZmU7IH1cbiAgICBzZWN0aW9uLnJlbGF0ZWQtcHJvZHVjdHMgLmltYWdlcyAuYXJ0aWNsZTpob3ZlciBoMyB7XG4gICAgICBjb2xvcjogIzBhMGEwYTsgfVxuICAgICAgc2VjdGlvbi5yZWxhdGVkLXByb2R1Y3RzIC5pbWFnZXMgLmFydGljbGU6aG92ZXIgaDM6YWZ0ZXIge1xuICAgICAgICBib3JkZXItcmlnaHQtY29sb3I6ICMwYTBhMGE7XG4gICAgICAgIGJvcmRlci10b3AtY29sb3I6ICMwYTBhMGE7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAtMC42MjVyZW07IH1cbiAgICBzZWN0aW9uLnJlbGF0ZWQtcHJvZHVjdHMgLmltYWdlcyAuYXJ0aWNsZS5saWdodDpob3ZlciBoMyB7XG4gICAgICBjb2xvcjogI2ZiZTIwMDsgfVxuICAgICAgc2VjdGlvbi5yZWxhdGVkLXByb2R1Y3RzIC5pbWFnZXMgLmFydGljbGUubGlnaHQ6aG92ZXIgaDM6YWZ0ZXIge1xuICAgICAgICBib3JkZXItcmlnaHQtY29sb3I6ICNmYmUyMDA7XG4gICAgICAgIGJvcmRlci10b3AtY29sb3I6ICNmYmUyMDA7IH1cblxuc2VjdGlvbi5uZXdzLmJsb2cge1xuICBib3JkZXItdG9wOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7IH1cbiAgc2VjdGlvbi5uZXdzLmJsb2cgLm5ld3Mge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgICBzZWN0aW9uLm5ld3MuYmxvZyAubmV3cyAuYXJ0aWNsZSB7XG4gICAgICBmbGV4OiAxIDEgMTAwJTsgfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgc2VjdGlvbi5uZXdzLmJsb2cgLm5ld3MgLmFydGljbGUge1xuICAgICAgICAgIG1pbi13aWR0aDogNTAlO1xuICAgICAgICAgIGZsZXg6IDEgMSA1MCU7IH0gfVxuICAgICAgc2VjdGlvbi5uZXdzLmJsb2cgLm5ld3MgLmFydGljbGU6bnRoLWNoaWxkKDVuICsgMSkge1xuICAgICAgICBiYWNrZ3JvdW5kOiAjNDQwMDk5OyB9XG4gICAgICBzZWN0aW9uLm5ld3MuYmxvZyAubmV3cyAuYXJ0aWNsZTpudGgtY2hpbGQoNW4gKyAyKSB7XG4gICAgICAgIGJhY2tncm91bmQ6ICNmMmYyZjI7IH1cbiAgICAgIHNlY3Rpb24ubmV3cy5ibG9nIC5uZXdzIC5hcnRpY2xlOm50aC1jaGlsZCg1biArIDMpIHtcbiAgICAgICAgYmFja2dyb3VuZDogI2ZiZTIwMDsgfVxuICAgICAgc2VjdGlvbi5uZXdzLmJsb2cgLm5ld3MgLmFydGljbGU6bnRoLWNoaWxkKDVuICsgNCkge1xuICAgICAgICBiYWNrZ3JvdW5kOiAjOGE4YThhOyB9XG4gICAgICBzZWN0aW9uLm5ld3MuYmxvZyAubmV3cyAuYXJ0aWNsZTpudGgtY2hpbGQoNW4gKyA1KSB7XG4gICAgICAgIGJhY2tncm91bmQ6ICMwYTBhMGE7IH1cbiAgICBzZWN0aW9uLm5ld3MuYmxvZyAubmV3cy51cGNvbWluZyAuYXJ0aWNsZTpmaXJzdC1jaGlsZCB7XG4gICAgICBmbGV4OiAxIDAgMTAwJTtcbiAgICAgIG1pbi1oZWlnaHQ6IDQwdnc7IH1cbiAgICAgIHNlY3Rpb24ubmV3cy5ibG9nIC5uZXdzLnVwY29taW5nIC5hcnRpY2xlOmZpcnN0LWNoaWxkIGEge1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfVxuICAgICAgICBzZWN0aW9uLm5ld3MuYmxvZyAubmV3cy51cGNvbWluZyAuYXJ0aWNsZTpmaXJzdC1jaGlsZCBhIC53cmFwcGVyIHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIHNlY3Rpb24ubmV3cy5ibG9nLnJlbGF0ZWQge1xuICAgIGJvcmRlci10b3AtY29sb3I6ICNjYWNhY2E7IH1cbiAgc2VjdGlvbi5uZXdzLmJsb2cuc2ltcGxlIHtcbiAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIHBhZGRpbmc6IDEuMjVyZW0gMDsgfVxuICAgIHNlY3Rpb24ubmV3cy5ibG9nLnNpbXBsZTo6YmVmb3JlLCBzZWN0aW9uLm5ld3MuYmxvZy5zaW1wbGU6OmFmdGVyIHtcbiAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgICAgY29udGVudDogJyAnO1xuICAgICAgZmxleC1iYXNpczogMDtcbiAgICAgIG9yZGVyOiAxOyB9XG4gICAgc2VjdGlvbi5uZXdzLmJsb2cuc2ltcGxlOjphZnRlciB7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICBzZWN0aW9uLm5ld3MuYmxvZy5zaW1wbGUge1xuICAgICAgICBwYWRkaW5nOiA1cmVtIDA7IH0gfVxuICAgIHNlY3Rpb24ubmV3cy5ibG9nLnNpbXBsZSAudGl0bGUge1xuICAgICAgcGFkZGluZy10b3A6IDA7IH1cbiAgICBzZWN0aW9uLm5ld3MuYmxvZy5zaW1wbGUgLm5ld3Mge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTtcbiAgICAgIG1pbi1oZWlnaHQ6IGF1dG87IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgIHNlY3Rpb24ubmV3cy5ibG9nLnNpbXBsZSAubmV3cyB7XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgICAgIHNlY3Rpb24ubmV3cy5ibG9nLnNpbXBsZSAubmV3cywgc2VjdGlvbi5uZXdzLmJsb2cuc2ltcGxlIC5uZXdzOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAgIHNlY3Rpb24ubmV3cy5ibG9nLnNpbXBsZSAubmV3czpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0OyB9XG4gICAgICBzZWN0aW9uLm5ld3MuYmxvZy5zaW1wbGUgLm5ld3MgLmFydGljbGUge1xuICAgICAgICBiYWNrZ3JvdW5kOiAjZmVmZWZlO1xuICAgICAgICBtaW4taGVpZ2h0OiBhdXRvOyB9XG4gICAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgICAgc2VjdGlvbi5uZXdzLmJsb2cuc2ltcGxlIC5uZXdzIC5hcnRpY2xlIHtcbiAgICAgICAgICAgIG1pbi13aWR0aDogMTAwJTsgfSB9XG4gICAgICAgIHNlY3Rpb24ubmV3cy5ibG9nLnNpbXBsZSAubmV3cyAuYXJ0aWNsZSBhIHtcbiAgICAgICAgICBwYWRkaW5nOiAwOyB9XG4gICAgICAgICAgc2VjdGlvbi5uZXdzLmJsb2cuc2ltcGxlIC5uZXdzIC5hcnRpY2xlIGEgLndyYXBwZXIge1xuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAgIG1hcmdpbjogMDsgfVxuICAgICAgICAgIHNlY3Rpb24ubmV3cy5ibG9nLnNpbXBsZSAubmV3cyAuYXJ0aWNsZSBhIHAubGFiZWwge1xuICAgICAgICAgICAgY29sb3I6ICMwYTBhMGEgIWltcG9ydGFudDtcbiAgICAgICAgICAgIG1hcmdpbjogMDsgfVxuICAgICAgICAgIHNlY3Rpb24ubmV3cy5ibG9nLnNpbXBsZSAubmV3cyAuYXJ0aWNsZSBhIGgyIHtcbiAgICAgICAgICAgIGNvbG9yOiAjNjgwMGQyO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMS4yNXJlbTtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7IH1cbiAgICAgICAgICAgIHNlY3Rpb24ubmV3cy5ibG9nLnNpbXBsZSAubmV3cyAuYXJ0aWNsZSBhIGgyOmFmdGVyIHtcbiAgICAgICAgICAgICAgYm9yZGVyOiAycHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICM2ODAwZDI7XG4gICAgICAgICAgICAgIGJvcmRlci1yaWdodC1jb2xvcjogIzY4MDBkMjtcbiAgICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICBoZWlnaHQ6IDAuODc1cmVtO1xuICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMC42MjVyZW07XG4gICAgICAgICAgICAgIHdpZHRoOiAwLjg3NXJlbTtcbiAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTsgfVxuICAgIHNlY3Rpb24ubmV3cy5ibG9nLnNpbXBsZSAubGluayB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtO1xuICAgICAgcGFkZGluZzogMS4yNXJlbSAwIDAgMDtcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgIHNlY3Rpb24ubmV3cy5ibG9nLnNpbXBsZSAubGluayB7XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgICAgIHNlY3Rpb24ubmV3cy5ibG9nLnNpbXBsZSAubGluaywgc2VjdGlvbi5uZXdzLmJsb2cuc2ltcGxlIC5saW5rOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAgIHNlY3Rpb24ubmV3cy5ibG9nLnNpbXBsZSAubGluazpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0OyB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICBzZWN0aW9uLm5ld3MuYmxvZy5zaW1wbGUgLmxpbmsge1xuICAgICAgICAgIHBhZGRpbmc6IDVyZW0gMCAwIDA7IH0gfVxuXG5zZWN0aW9uLnRhYmJlZC1jb250ZW50IC5yb3cge1xuICBtYXgtd2lkdGg6IG5vbmU7XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgbWFyZ2luLWxlZnQ6IGF1dG87IH1cbiAgc2VjdGlvbi50YWJiZWQtY29udGVudCAucm93OjpiZWZvcmUsIHNlY3Rpb24udGFiYmVkLWNvbnRlbnQgLnJvdzo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIGNvbnRlbnQ6ICcgJztcbiAgICBmbGV4LWJhc2lzOiAwO1xuICAgIG9yZGVyOiAxOyB9XG4gIHNlY3Rpb24udGFiYmVkLWNvbnRlbnQgLnJvdzo6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIHNlY3Rpb24udGFiYmVkLWNvbnRlbnQgLnJvdyAuaW50cm8ge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgc2VjdGlvbi50YWJiZWQtY29udGVudCAucm93IC5pbnRybyB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICAgIHNlY3Rpb24udGFiYmVkLWNvbnRlbnQgLnJvdyAuaW50cm8sIHNlY3Rpb24udGFiYmVkLWNvbnRlbnQgLnJvdyAuaW50cm86bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgc2VjdGlvbi50YWJiZWQtY29udGVudCAucm93IC5pbnRybzpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgIGZsb2F0OiByaWdodDsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICBzZWN0aW9uLnRhYmJlZC1jb250ZW50IC5yb3cgLmludHJvIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMS44NzVyZW07XG4gICAgICAgIHdpZHRoOiA0MS42NjY2NyU7IH0gfVxuICAgIHNlY3Rpb24udGFiYmVkLWNvbnRlbnQgLnJvdyAuaW50cm8gaDIge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMS4yNXJlbTsgfVxuICBzZWN0aW9uLnRhYmJlZC1jb250ZW50IC5yb3cgLnRhYi13cmFwcGVyIC50YWJzLWNvbnRlbnQge1xuICAgIGNsZWFyOiBib3RoO1xuICAgIGJvcmRlcjogMDsgfVxuICBzZWN0aW9uLnRhYmJlZC1jb250ZW50IC5yb3cgLnRhYi13cmFwcGVyIC50YWJzLXBhbmVsLFxuICBzZWN0aW9uLnRhYmJlZC1jb250ZW50IC5yb3cgLnRhYi13cmFwcGVyIC5hY2NvcmRpb24tY29udGVudCB7XG4gICAgbWF4LXdpZHRoOiBub25lO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBib3JkZXI6IDA7XG4gICAgcGFkZGluZzogMS4yNXJlbSAwOyB9XG4gICAgc2VjdGlvbi50YWJiZWQtY29udGVudCAucm93IC50YWItd3JhcHBlciAudGFicy1wYW5lbDo6YmVmb3JlLCBzZWN0aW9uLnRhYmJlZC1jb250ZW50IC5yb3cgLnRhYi13cmFwcGVyIC50YWJzLXBhbmVsOjphZnRlcixcbiAgICBzZWN0aW9uLnRhYmJlZC1jb250ZW50IC5yb3cgLnRhYi13cmFwcGVyIC5hY2NvcmRpb24tY29udGVudDo6YmVmb3JlLFxuICAgIHNlY3Rpb24udGFiYmVkLWNvbnRlbnQgLnJvdyAudGFiLXdyYXBwZXIgLmFjY29yZGlvbi1jb250ZW50OjphZnRlciB7XG4gICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgIGNvbnRlbnQ6ICcgJztcbiAgICAgIGZsZXgtYmFzaXM6IDA7XG4gICAgICBvcmRlcjogMTsgfVxuICAgIHNlY3Rpb24udGFiYmVkLWNvbnRlbnQgLnJvdyAudGFiLXdyYXBwZXIgLnRhYnMtcGFuZWw6OmFmdGVyLFxuICAgIHNlY3Rpb24udGFiYmVkLWNvbnRlbnQgLnJvdyAudGFiLXdyYXBwZXIgLmFjY29yZGlvbi1jb250ZW50OjphZnRlciB7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICBzZWN0aW9uLnRhYmJlZC1jb250ZW50IC5yb3cgLnRhYi13cmFwcGVyIC50YWJzLXBhbmVsLFxuICAgICAgc2VjdGlvbi50YWJiZWQtY29udGVudCAucm93IC50YWItd3JhcHBlciAuYWNjb3JkaW9uLWNvbnRlbnQge1xuICAgICAgICBwYWRkaW5nOiAzLjc1cmVtIDA7IH0gfVxuICAgIHNlY3Rpb24udGFiYmVkLWNvbnRlbnQgLnJvdyAudGFiLXdyYXBwZXIgLnRhYnMtcGFuZWwgLnRpdGxlLFxuICAgIHNlY3Rpb24udGFiYmVkLWNvbnRlbnQgLnJvdyAudGFiLXdyYXBwZXIgLmFjY29yZGlvbi1jb250ZW50IC50aXRsZSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtO1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICBzZWN0aW9uLnRhYmJlZC1jb250ZW50IC5yb3cgLnRhYi13cmFwcGVyIC50YWJzLXBhbmVsIC50aXRsZSxcbiAgICAgICAgc2VjdGlvbi50YWJiZWQtY29udGVudCAucm93IC50YWItd3JhcHBlciAuYWNjb3JkaW9uLWNvbnRlbnQgLnRpdGxlIHtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICAgICAgc2VjdGlvbi50YWJiZWQtY29udGVudCAucm93IC50YWItd3JhcHBlciAudGFicy1wYW5lbCAudGl0bGUsIHNlY3Rpb24udGFiYmVkLWNvbnRlbnQgLnJvdyAudGFiLXdyYXBwZXIgLnRhYnMtcGFuZWwgLnRpdGxlOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCksXG4gICAgICBzZWN0aW9uLnRhYmJlZC1jb250ZW50IC5yb3cgLnRhYi13cmFwcGVyIC5hY2NvcmRpb24tY29udGVudCAudGl0bGUsXG4gICAgICBzZWN0aW9uLnRhYmJlZC1jb250ZW50IC5yb3cgLnRhYi13cmFwcGVyIC5hY2NvcmRpb24tY29udGVudCAudGl0bGU6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBjbGVhcjogbm9uZTsgfVxuICAgICAgc2VjdGlvbi50YWJiZWQtY29udGVudCAucm93IC50YWItd3JhcHBlciAudGFicy1wYW5lbCAudGl0bGU6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSxcbiAgICAgIHNlY3Rpb24udGFiYmVkLWNvbnRlbnQgLnJvdyAudGFiLXdyYXBwZXIgLmFjY29yZGlvbi1jb250ZW50IC50aXRsZTpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0OyB9XG4gICAgc2VjdGlvbi50YWJiZWQtY29udGVudCAucm93IC50YWItd3JhcHBlciAudGFicy1wYW5lbCAuY29sdW1uLCBzZWN0aW9uLnRhYmJlZC1jb250ZW50IC5yb3cgLnRhYi13cmFwcGVyIC50YWJzLXBhbmVsIC5jb2x1bW5zLFxuICAgIHNlY3Rpb24udGFiYmVkLWNvbnRlbnQgLnJvdyAudGFiLXdyYXBwZXIgLmFjY29yZGlvbi1jb250ZW50IC5jb2x1bW4sXG4gICAgc2VjdGlvbi50YWJiZWQtY29udGVudCAucm93IC50YWItd3JhcHBlciAuYWNjb3JkaW9uLWNvbnRlbnQgLmNvbHVtbnMge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgIHNlY3Rpb24udGFiYmVkLWNvbnRlbnQgLnJvdyAudGFiLXdyYXBwZXIgLnRhYnMtcGFuZWwgLmNvbHVtbiwgc2VjdGlvbi50YWJiZWQtY29udGVudCAucm93IC50YWItd3JhcHBlciAudGFicy1wYW5lbCAuY29sdW1ucyxcbiAgICAgICAgc2VjdGlvbi50YWJiZWQtY29udGVudCAucm93IC50YWItd3JhcHBlciAuYWNjb3JkaW9uLWNvbnRlbnQgLmNvbHVtbixcbiAgICAgICAgc2VjdGlvbi50YWJiZWQtY29udGVudCAucm93IC50YWItd3JhcHBlciAuYWNjb3JkaW9uLWNvbnRlbnQgLmNvbHVtbnMge1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gICAgICBzZWN0aW9uLnRhYmJlZC1jb250ZW50IC5yb3cgLnRhYi13cmFwcGVyIC50YWJzLXBhbmVsIC5jb2x1bW4sIHNlY3Rpb24udGFiYmVkLWNvbnRlbnQgLnJvdyAudGFiLXdyYXBwZXIgLnRhYnMtcGFuZWwgLmNvbHVtbnMsIHNlY3Rpb24udGFiYmVkLWNvbnRlbnQgLnJvdyAudGFiLXdyYXBwZXIgLnRhYnMtcGFuZWwgLmNvbHVtbjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpLCBzZWN0aW9uLnRhYmJlZC1jb250ZW50IC5yb3cgLnRhYi13cmFwcGVyIC50YWJzLXBhbmVsIC5jb2x1bW5zOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCksXG4gICAgICBzZWN0aW9uLnRhYmJlZC1jb250ZW50IC5yb3cgLnRhYi13cmFwcGVyIC5hY2NvcmRpb24tY29udGVudCAuY29sdW1uLFxuICAgICAgc2VjdGlvbi50YWJiZWQtY29udGVudCAucm93IC50YWItd3JhcHBlciAuYWNjb3JkaW9uLWNvbnRlbnQgLmNvbHVtbnMsXG4gICAgICBzZWN0aW9uLnRhYmJlZC1jb250ZW50IC5yb3cgLnRhYi13cmFwcGVyIC5hY2NvcmRpb24tY29udGVudCAuY29sdW1uOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCksXG4gICAgICBzZWN0aW9uLnRhYmJlZC1jb250ZW50IC5yb3cgLnRhYi13cmFwcGVyIC5hY2NvcmRpb24tY29udGVudCAuY29sdW1uczpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgICBzZWN0aW9uLnRhYmJlZC1jb250ZW50IC5yb3cgLnRhYi13cmFwcGVyIC50YWJzLXBhbmVsIC5jb2x1bW46bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSwgc2VjdGlvbi50YWJiZWQtY29udGVudCAucm93IC50YWItd3JhcHBlciAudGFicy1wYW5lbCAuY29sdW1uczpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpLFxuICAgICAgc2VjdGlvbi50YWJiZWQtY29udGVudCAucm93IC50YWItd3JhcHBlciAuYWNjb3JkaW9uLWNvbnRlbnQgLmNvbHVtbjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpLFxuICAgICAgc2VjdGlvbi50YWJiZWQtY29udGVudCAucm93IC50YWItd3JhcHBlciAuYWNjb3JkaW9uLWNvbnRlbnQgLmNvbHVtbnM6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgIGZsb2F0OiByaWdodDsgfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgc2VjdGlvbi50YWJiZWQtY29udGVudCAucm93IC50YWItd3JhcHBlciAudGFicy1wYW5lbCAuY29sdW1uLCBzZWN0aW9uLnRhYmJlZC1jb250ZW50IC5yb3cgLnRhYi13cmFwcGVyIC50YWJzLXBhbmVsIC5jb2x1bW5zLFxuICAgICAgICBzZWN0aW9uLnRhYmJlZC1jb250ZW50IC5yb3cgLnRhYi13cmFwcGVyIC5hY2NvcmRpb24tY29udGVudCAuY29sdW1uLFxuICAgICAgICBzZWN0aW9uLnRhYmJlZC1jb250ZW50IC5yb3cgLnRhYi13cmFwcGVyIC5hY2NvcmRpb24tY29udGVudCAuY29sdW1ucyB7XG4gICAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAtMS4yNXJlbTsgfSB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAgIHNlY3Rpb24udGFiYmVkLWNvbnRlbnQgLnJvdyAudGFiLXdyYXBwZXIgLnRhYnMtcGFuZWwgLmNvbHVtbjpmaXJzdC1jaGlsZCwgc2VjdGlvbi50YWJiZWQtY29udGVudCAucm93IC50YWItd3JhcHBlciAudGFicy1wYW5lbCAuY29sdW1uczpmaXJzdC1jaGlsZCxcbiAgICAgICAgc2VjdGlvbi50YWJiZWQtY29udGVudCAucm93IC50YWItd3JhcHBlciAuYWNjb3JkaW9uLWNvbnRlbnQgLmNvbHVtbjpmaXJzdC1jaGlsZCxcbiAgICAgICAgc2VjdGlvbi50YWJiZWQtY29udGVudCAucm93IC50YWItd3JhcHBlciAuYWNjb3JkaW9uLWNvbnRlbnQgLmNvbHVtbnM6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDMuMTI1cmVtOyB9XG4gICAgICAgIHNlY3Rpb24udGFiYmVkLWNvbnRlbnQgLnJvdyAudGFiLXdyYXBwZXIgLnRhYnMtcGFuZWwgLmNvbHVtbjpsYXN0LWNoaWxkLCBzZWN0aW9uLnRhYmJlZC1jb250ZW50IC5yb3cgLnRhYi13cmFwcGVyIC50YWJzLXBhbmVsIC5jb2x1bW5zOmxhc3QtY2hpbGQsXG4gICAgICAgIHNlY3Rpb24udGFiYmVkLWNvbnRlbnQgLnJvdyAudGFiLXdyYXBwZXIgLmFjY29yZGlvbi1jb250ZW50IC5jb2x1bW46bGFzdC1jaGlsZCxcbiAgICAgICAgc2VjdGlvbi50YWJiZWQtY29udGVudCAucm93IC50YWItd3JhcHBlciAuYWNjb3JkaW9uLWNvbnRlbnQgLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiAzLjEyNXJlbTsgfSB9XG4gICAgICBzZWN0aW9uLnRhYmJlZC1jb250ZW50IC5yb3cgLnRhYi13cmFwcGVyIC50YWJzLXBhbmVsIC5jb2x1bW4gPiBpbWcsIHNlY3Rpb24udGFiYmVkLWNvbnRlbnQgLnJvdyAudGFiLXdyYXBwZXIgLnRhYnMtcGFuZWwgLmNvbHVtbnMgPiBpbWcsXG4gICAgICBzZWN0aW9uLnRhYmJlZC1jb250ZW50IC5yb3cgLnRhYi13cmFwcGVyIC5hY2NvcmRpb24tY29udGVudCAuY29sdW1uID4gaW1nLFxuICAgICAgc2VjdGlvbi50YWJiZWQtY29udGVudCAucm93IC50YWItd3JhcHBlciAuYWNjb3JkaW9uLWNvbnRlbnQgLmNvbHVtbnMgPiBpbWcge1xuICAgICAgICBtYXJnaW46IDAgMCAxLjI1cmVtIGF1dG87XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICAgICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAgIHNlY3Rpb24udGFiYmVkLWNvbnRlbnQgLnJvdyAudGFiLXdyYXBwZXIgLnRhYnMtcGFuZWwgLmNvbHVtbiA+IGltZywgc2VjdGlvbi50YWJiZWQtY29udGVudCAucm93IC50YWItd3JhcHBlciAudGFicy1wYW5lbCAuY29sdW1ucyA+IGltZyxcbiAgICAgICAgICBzZWN0aW9uLnRhYmJlZC1jb250ZW50IC5yb3cgLnRhYi13cmFwcGVyIC5hY2NvcmRpb24tY29udGVudCAuY29sdW1uID4gaW1nLFxuICAgICAgICAgIHNlY3Rpb24udGFiYmVkLWNvbnRlbnQgLnJvdyAudGFiLXdyYXBwZXIgLmFjY29yZGlvbi1jb250ZW50IC5jb2x1bW5zID4gaW1nIHtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMS44NzVyZW07XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDI1cmVtO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7IH0gfVxuICAgICAgc2VjdGlvbi50YWJiZWQtY29udGVudCAucm93IC50YWItd3JhcHBlciAudGFicy1wYW5lbCAuY29sdW1uIC5idXR0b24sIHNlY3Rpb24udGFiYmVkLWNvbnRlbnQgLnJvdyAudGFiLXdyYXBwZXIgLnRhYnMtcGFuZWwgLmNvbHVtbnMgLmJ1dHRvbiwgc2VjdGlvbi50YWJiZWQtY29udGVudCAucm93IC50YWItd3JhcHBlciAudGFicy1wYW5lbCAuY29sdW1uIC53cC1ibG9jay1idXR0b24gLndwLWJsb2NrLWJ1dHRvbl9fbGluaywgLndwLWJsb2NrLWJ1dHRvbiBzZWN0aW9uLnRhYmJlZC1jb250ZW50IC5yb3cgLnRhYi13cmFwcGVyIC50YWJzLXBhbmVsIC5jb2x1bW4gLndwLWJsb2NrLWJ1dHRvbl9fbGluaywgc2VjdGlvbi50YWJiZWQtY29udGVudCAucm93IC50YWItd3JhcHBlciAudGFicy1wYW5lbCAuY29sdW1ucyAud3AtYmxvY2stYnV0dG9uIC53cC1ibG9jay1idXR0b25fX2xpbmssIC53cC1ibG9jay1idXR0b24gc2VjdGlvbi50YWJiZWQtY29udGVudCAucm93IC50YWItd3JhcHBlciAudGFicy1wYW5lbCAuY29sdW1ucyAud3AtYmxvY2stYnV0dG9uX19saW5rLCBzZWN0aW9uLnRhYmJlZC1jb250ZW50IC5yb3cgLnRhYi13cmFwcGVyIC50YWJzLXBhbmVsIC5jb2x1bW4gc2VjdGlvbi5wcm9tby1saXN0aW5nLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLCBzZWN0aW9uLnByb21vLWxpc3RpbmcuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIHNlY3Rpb24udGFiYmVkLWNvbnRlbnQgLnJvdyAudGFiLXdyYXBwZXIgLnRhYnMtcGFuZWwgLmNvbHVtbiBhLCBzZWN0aW9uLnRhYmJlZC1jb250ZW50IC5yb3cgLnRhYi13cmFwcGVyIC50YWJzLXBhbmVsIC5jb2x1bW5zIHNlY3Rpb24ucHJvbW8tbGlzdGluZy5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYSwgc2VjdGlvbi5wcm9tby1saXN0aW5nLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBzZWN0aW9uLnRhYmJlZC1jb250ZW50IC5yb3cgLnRhYi13cmFwcGVyIC50YWJzLXBhbmVsIC5jb2x1bW5zIGEsIHNlY3Rpb24udGFiYmVkLWNvbnRlbnQgLnJvdyAudGFiLXdyYXBwZXIgLnRhYnMtcGFuZWwgLmNvbHVtbiBzZWN0aW9uLnByb21vLWxpc3RpbmctMi5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYSwgc2VjdGlvbi5wcm9tby1saXN0aW5nLTIuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIHNlY3Rpb24udGFiYmVkLWNvbnRlbnQgLnJvdyAudGFiLXdyYXBwZXIgLnRhYnMtcGFuZWwgLmNvbHVtbiBhLCBzZWN0aW9uLnRhYmJlZC1jb250ZW50IC5yb3cgLnRhYi13cmFwcGVyIC50YWJzLXBhbmVsIC5jb2x1bW5zIHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLCBzZWN0aW9uLnByb21vLWxpc3RpbmctMi5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgc2VjdGlvbi50YWJiZWQtY29udGVudCAucm93IC50YWItd3JhcHBlciAudGFicy1wYW5lbCAuY29sdW1ucyBhLFxuICAgICAgc2VjdGlvbi50YWJiZWQtY29udGVudCAucm93IC50YWItd3JhcHBlciAuYWNjb3JkaW9uLWNvbnRlbnQgLmNvbHVtbiAuYnV0dG9uLFxuICAgICAgc2VjdGlvbi50YWJiZWQtY29udGVudCAucm93IC50YWItd3JhcHBlciAuYWNjb3JkaW9uLWNvbnRlbnQgLmNvbHVtbnMgLmJ1dHRvbixcbiAgICAgIHNlY3Rpb24udGFiYmVkLWNvbnRlbnQgLnJvdyAudGFiLXdyYXBwZXIgLmFjY29yZGlvbi1jb250ZW50IC5jb2x1bW4gLndwLWJsb2NrLWJ1dHRvbiAud3AtYmxvY2stYnV0dG9uX19saW5rLFxuICAgICAgLndwLWJsb2NrLWJ1dHRvbiBzZWN0aW9uLnRhYmJlZC1jb250ZW50IC5yb3cgLnRhYi13cmFwcGVyIC5hY2NvcmRpb24tY29udGVudCAuY29sdW1uIC53cC1ibG9jay1idXR0b25fX2xpbmssXG4gICAgICBzZWN0aW9uLnRhYmJlZC1jb250ZW50IC5yb3cgLnRhYi13cmFwcGVyIC5hY2NvcmRpb24tY29udGVudCAuY29sdW1ucyAud3AtYmxvY2stYnV0dG9uIC53cC1ibG9jay1idXR0b25fX2xpbmssXG4gICAgICAud3AtYmxvY2stYnV0dG9uIHNlY3Rpb24udGFiYmVkLWNvbnRlbnQgLnJvdyAudGFiLXdyYXBwZXIgLmFjY29yZGlvbi1jb250ZW50IC5jb2x1bW5zIC53cC1ibG9jay1idXR0b25fX2xpbmssXG4gICAgICBzZWN0aW9uLnRhYmJlZC1jb250ZW50IC5yb3cgLnRhYi13cmFwcGVyIC5hY2NvcmRpb24tY29udGVudCAuY29sdW1uIHNlY3Rpb24ucHJvbW8tbGlzdGluZy5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYSxcbiAgICAgIHNlY3Rpb24ucHJvbW8tbGlzdGluZy5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgc2VjdGlvbi50YWJiZWQtY29udGVudCAucm93IC50YWItd3JhcHBlciAuYWNjb3JkaW9uLWNvbnRlbnQgLmNvbHVtbiBhLFxuICAgICAgc2VjdGlvbi50YWJiZWQtY29udGVudCAucm93IC50YWItd3JhcHBlciAuYWNjb3JkaW9uLWNvbnRlbnQgLmNvbHVtbnMgc2VjdGlvbi5wcm9tby1saXN0aW5nLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBhLFxuICAgICAgc2VjdGlvbi5wcm9tby1saXN0aW5nLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBzZWN0aW9uLnRhYmJlZC1jb250ZW50IC5yb3cgLnRhYi13cmFwcGVyIC5hY2NvcmRpb24tY29udGVudCAuY29sdW1ucyBhLFxuICAgICAgc2VjdGlvbi50YWJiZWQtY29udGVudCAucm93IC50YWItd3JhcHBlciAuYWNjb3JkaW9uLWNvbnRlbnQgLmNvbHVtbiBzZWN0aW9uLnByb21vLWxpc3RpbmctMi5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYSxcbiAgICAgIHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBzZWN0aW9uLnRhYmJlZC1jb250ZW50IC5yb3cgLnRhYi13cmFwcGVyIC5hY2NvcmRpb24tY29udGVudCAuY29sdW1uIGEsXG4gICAgICBzZWN0aW9uLnRhYmJlZC1jb250ZW50IC5yb3cgLnRhYi13cmFwcGVyIC5hY2NvcmRpb24tY29udGVudCAuY29sdW1ucyBzZWN0aW9uLnByb21vLWxpc3RpbmctMi5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYSxcbiAgICAgIHNlY3Rpb24ucHJvbW8tbGlzdGluZy0yLmNvbnRhY3QgLmJnLWltYWdlIHA6bGFzdC1jaGlsZCBzZWN0aW9uLnRhYmJlZC1jb250ZW50IC5yb3cgLnRhYi13cmFwcGVyIC5hY2NvcmRpb24tY29udGVudCAuY29sdW1ucyBhIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMC45Mzc1cmVtOyB9XG4gICAgICBzZWN0aW9uLnRhYmJlZC1jb250ZW50IC5yb3cgLnRhYi13cmFwcGVyIC50YWJzLXBhbmVsIC5jb2x1bW4gLnN0YXQsIHNlY3Rpb24udGFiYmVkLWNvbnRlbnQgLnJvdyAudGFiLXdyYXBwZXIgLnRhYnMtcGFuZWwgLmNvbHVtbnMgLnN0YXQsXG4gICAgICBzZWN0aW9uLnRhYmJlZC1jb250ZW50IC5yb3cgLnRhYi13cmFwcGVyIC5hY2NvcmRpb24tY29udGVudCAuY29sdW1uIC5zdGF0LFxuICAgICAgc2VjdGlvbi50YWJiZWQtY29udGVudCAucm93IC50YWItd3JhcHBlciAuYWNjb3JkaW9uLWNvbnRlbnQgLmNvbHVtbnMgLnN0YXQge1xuICAgICAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgICAgICBtYXgtd2lkdGg6IDE4Ljc1cmVtO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxLjg3NXJlbTsgfVxuICAgICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgICAgIHNlY3Rpb24udGFiYmVkLWNvbnRlbnQgLnJvdyAudGFiLXdyYXBwZXIgLnRhYnMtcGFuZWwgLmNvbHVtbiAuc3RhdCwgc2VjdGlvbi50YWJiZWQtY29udGVudCAucm93IC50YWItd3JhcHBlciAudGFicy1wYW5lbCAuY29sdW1ucyAuc3RhdCxcbiAgICAgICAgICBzZWN0aW9uLnRhYmJlZC1jb250ZW50IC5yb3cgLnRhYi13cmFwcGVyIC5hY2NvcmRpb24tY29udGVudCAuY29sdW1uIC5zdGF0LFxuICAgICAgICAgIHNlY3Rpb24udGFiYmVkLWNvbnRlbnQgLnJvdyAudGFiLXdyYXBwZXIgLmFjY29yZGlvbi1jb250ZW50IC5jb2x1bW5zIC5zdGF0IHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIGxlZnQ6IDguMzMzMzMlOyB9IH1cbiAgICAgICAgc2VjdGlvbi50YWJiZWQtY29udGVudCAucm93IC50YWItd3JhcHBlciAudGFicy1wYW5lbCAuY29sdW1uIC5zdGF0IGgyLCBzZWN0aW9uLnRhYmJlZC1jb250ZW50IC5yb3cgLnRhYi13cmFwcGVyIC50YWJzLXBhbmVsIC5jb2x1bW5zIC5zdGF0IGgyLFxuICAgICAgICBzZWN0aW9uLnRhYmJlZC1jb250ZW50IC5yb3cgLnRhYi13cmFwcGVyIC5hY2NvcmRpb24tY29udGVudCAuY29sdW1uIC5zdGF0IGgyLFxuICAgICAgICBzZWN0aW9uLnRhYmJlZC1jb250ZW50IC5yb3cgLnRhYi13cmFwcGVyIC5hY2NvcmRpb24tY29udGVudCAuY29sdW1ucyAuc3RhdCBoMiB7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2NhY2FjYTtcbiAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMC4xODc1cmVtO1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiAgICAgICAgICBmb250LXNpemU6IDJyZW07IH1cbiAgICAgICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAgICAgc2VjdGlvbi50YWJiZWQtY29udGVudCAucm93IC50YWItd3JhcHBlciAudGFicy1wYW5lbCAuY29sdW1uIC5zdGF0IGgyLCBzZWN0aW9uLnRhYmJlZC1jb250ZW50IC5yb3cgLnRhYi13cmFwcGVyIC50YWJzLXBhbmVsIC5jb2x1bW5zIC5zdGF0IGgyLFxuICAgICAgICAgICAgc2VjdGlvbi50YWJiZWQtY29udGVudCAucm93IC50YWItd3JhcHBlciAuYWNjb3JkaW9uLWNvbnRlbnQgLmNvbHVtbiAuc3RhdCBoMixcbiAgICAgICAgICAgIHNlY3Rpb24udGFiYmVkLWNvbnRlbnQgLnJvdyAudGFiLXdyYXBwZXIgLmFjY29yZGlvbi1jb250ZW50IC5jb2x1bW5zIC5zdGF0IGgyIHtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAzLjg3NXJlbTsgfSB9XG4gICAgICAgIHNlY3Rpb24udGFiYmVkLWNvbnRlbnQgLnJvdyAudGFiLXdyYXBwZXIgLnRhYnMtcGFuZWwgLmNvbHVtbiAuc3RhdCBwLCBzZWN0aW9uLnRhYmJlZC1jb250ZW50IC5yb3cgLnRhYi13cmFwcGVyIC50YWJzLXBhbmVsIC5jb2x1bW5zIC5zdGF0IHAsXG4gICAgICAgIHNlY3Rpb24udGFiYmVkLWNvbnRlbnQgLnJvdyAudGFiLXdyYXBwZXIgLmFjY29yZGlvbi1jb250ZW50IC5jb2x1bW4gLnN0YXQgcCxcbiAgICAgICAgc2VjdGlvbi50YWJiZWQtY29udGVudCAucm93IC50YWItd3JhcHBlciAuYWNjb3JkaW9uLWNvbnRlbnQgLmNvbHVtbnMgLnN0YXQgcCB7XG4gICAgICAgICAgZm9udC1zaXplOiAxMDAlO1xuICAgICAgICAgIGNvbG9yOiAjNjgwMGQyO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMjsgfVxuICAgIHNlY3Rpb24udGFiYmVkLWNvbnRlbnQgLnJvdyAudGFiLXdyYXBwZXIgLnRhYnMtcGFuZWwgaDMsXG4gICAgc2VjdGlvbi50YWJiZWQtY29udGVudCAucm93IC50YWItd3JhcHBlciAuYWNjb3JkaW9uLWNvbnRlbnQgaDMge1xuICAgICAgY29sb3I6ICM2ODAwZDI7XG4gICAgICBmb250LXNpemU6IDFyZW07IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgIHNlY3Rpb24udGFiYmVkLWNvbnRlbnQgLnJvdyAudGFiLXdyYXBwZXIgLnRhYnMtcGFuZWwgaDMsXG4gICAgICAgIHNlY3Rpb24udGFiYmVkLWNvbnRlbnQgLnJvdyAudGFiLXdyYXBwZXIgLmFjY29yZGlvbi1jb250ZW50IGgzIHtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgICAgICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07IH0gfVxuICAgIGh0bWxbYW1wXSBzZWN0aW9uLnRhYmJlZC1jb250ZW50IC5yb3cgLnRhYi13cmFwcGVyIC50YWJzLXBhbmVsLCBodG1sW2FtcF1cbiAgICBzZWN0aW9uLnRhYmJlZC1jb250ZW50IC5yb3cgLnRhYi13cmFwcGVyIC5hY2NvcmRpb24tY29udGVudCB7XG4gICAgICBkaXNwbGF5OiBibG9jazsgfVxuXG5ib2R5LnNpbmdsZS1jYXNlX3N0dWR5IHNlY3Rpb24udGFiYmVkLWNvbnRlbnQge1xuICBwYWRkaW5nOiAwO1xuICBwYWRkaW5nLWxlZnQ6IDAgIWltcG9ydGFudDtcbiAgcGFkZGluZy1yaWdodDogMCAhaW1wb3J0YW50OyB9XG4gIGJvZHkuc2luZ2xlLWNhc2Vfc3R1ZHkgc2VjdGlvbi50YWJiZWQtY29udGVudCAudGFicy13cmFwcGVyIHtcbiAgICBiYWNrZ3JvdW5kOiAjZmVmZWZlO1xuICAgIHBhZGRpbmctYm90dG9tOiAyLjVyZW07IH1cblxuZGl2LmV4cGFuZGFibGUgLmFjY29yZGlvbi1pdGVtOmZpcnN0LWNoaWxkID4gOmZpcnN0LWNoaWxkIHtcbiAgYm9yZGVyLXJhZGl1czogMDsgfVxuXG5kaXYuZXhwYW5kYWJsZSAuYWNjb3JkaW9uLXRpdGxlIHtcbiAgYmFja2dyb3VuZDogIzY4MDBkMjtcbiAgYm9yZGVyLWJvdHRvbTogMDtcbiAgY29sb3I6ICNmZWZlZmU7XG4gIHBhZGRpbmc6IDAuNjI1cmVtIDIuNXJlbTtcbiAgZm9udC1zaXplOiAxcmVtO1xuICB6LWluZGV4OiAzOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgZGl2LmV4cGFuZGFibGUgLmFjY29yZGlvbi10aXRsZSB7XG4gICAgICBmb250LXNpemU6IDEuMTI1cmVtOyB9IH1cbiAgZGl2LmV4cGFuZGFibGUgLmFjY29yZGlvbi10aXRsZTpiZWZvcmUge1xuICAgIHJpZ2h0OiAyLjVyZW07XG4gICAgbWFyZ2luLXRvcDogLTAuNjI1cmVtOyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgZGl2LmV4cGFuZGFibGUgLmFjY29yZGlvbi1pdGVtIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH0gfVxuXG5kaXYuZXhwYW5kYWJsZSAuYWNjb3JkaW9uLWNvbnRlbnQge1xuICBwYWRkaW5nOiAwO1xuICBiYWNrZ3JvdW5kOiAjZmVmZWZlO1xuICBwYWRkaW5nOiAyLjVyZW07XG4gIGJvcmRlcjogMCAhaW1wb3J0YW50O1xuICBtYXJnaW4tbGVmdDogMC42MjVyZW07XG4gIG1hcmdpbi1yaWdodDogMC42MjVyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICBkaXYuZXhwYW5kYWJsZSAuYWNjb3JkaW9uLWNvbnRlbnQge1xuICAgICAgbWFyZ2luLWxlZnQ6IDAuOTM3NXJlbTtcbiAgICAgIG1hcmdpbi1yaWdodDogMC45Mzc1cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAgIGRpdi5leHBhbmRhYmxlIC5hY2NvcmRpb24tY29udGVudCB7XG4gICAgICBvdmVyZmxvdy14OiBhdXRvOyB9XG4gICAgICBkaXYuZXhwYW5kYWJsZSAuYWNjb3JkaW9uLWNvbnRlbnQ6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICByaWdodDogMC45Mzc1cmVtO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgd2lkdGg6IDkuMzc1cmVtO1xuICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gbGVmdCwgI2ZlZmVmZSAwJSwgcmdiYSgyNTQsIDI1NCwgMjU0LCAwKSAxMDAlKTtcbiAgICAgICAgei1pbmRleDogMjsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICBkaXYuZXhwYW5kYWJsZSAuYWNjb3JkaW9uLWNvbnRlbnQ6YWZ0ZXIge1xuICAgICAgcmlnaHQ6IDAuNjI1cmVtOyB9IH1cblxuZGl2LmV4cGFuZGFibGUgdGFibGUge1xuICBtaW4td2lkdGg6IDU2LjI1cmVtO1xuICBib3JkZXI6IDA7IH1cbiAgZGl2LmV4cGFuZGFibGUgdGFibGUgdGQsXG4gIGRpdi5leHBhbmRhYmxlIHRhYmxlIHRoLFxuICBkaXYuZXhwYW5kYWJsZSB0YWJsZSB0cixcbiAgZGl2LmV4cGFuZGFibGUgdGFibGUgdGhlYWQsXG4gIGRpdi5leHBhbmRhYmxlIHRhYmxlIHRib2R5IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgIGJvcmRlcjogMDtcbiAgICBmb250LXNpemU6IDAuOTM3NXJlbTsgfVxuICBkaXYuZXhwYW5kYWJsZSB0YWJsZSB0ZCxcbiAgZGl2LmV4cGFuZGFibGUgdGFibGUgdGgge1xuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgcGFkZGluZzogMC42MjVyZW0gMC4zMTI1cmVtOyB9XG4gICAgZGl2LmV4cGFuZGFibGUgdGFibGUgdGQuYm9yZGVyLWxlZnQsXG4gICAgZGl2LmV4cGFuZGFibGUgdGFibGUgdGguYm9yZGVyLWxlZnQge1xuICAgICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjMGEwYTBhOyB9XG4gIGRpdi5leHBhbmRhYmxlIHRhYmxlIHRyLmJvcmRlci10b3Age1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjMGEwYTBhOyB9XG4gIGRpdi5leHBhbmRhYmxlIHRhYmxlIHRoZWFkIHRoIHtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjMGEwYTBhO1xuICAgIHBhZGRpbmctdG9wOiAxLjI1cmVtO1xuICAgIHBhZGRpbmctYm90dG9tOiAxLjI1cmVtOyB9XG4gICAgZGl2LmV4cGFuZGFibGUgdGFibGUgdGhlYWQgdGggaW1nIHtcbiAgICAgIGhlaWdodDogMS41NjI1cmVtO1xuICAgICAgd2lkdGg6IGF1dG87IH1cblxudWwudGFicyB7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNjYWNhY2E7XG4gIG1hcmdpbi1sZWZ0OiAwLjYyNXJlbTtcbiAgbWFyZ2luLXJpZ2h0OiAwLjYyNXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIHVsLnRhYnMge1xuICAgICAgbWluLXdpZHRoOiAzMy4zMzMzJTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwLjkzNzVyZW07XG4gICAgICBtYXJnaW4tcmlnaHQ6IDAuOTM3NXJlbTsgfSB9XG4gIGh0bWxbYW1wXSB1bC50YWJzIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG5cbi50YWJzLXRpdGxlID4gYSB7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGZvbnQtc2l6ZTogMC45Mzc1cmVtO1xuICBjb2xvcjogIzBhMGEwYTtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBwYWRkaW5nLXJpZ2h0OiAwO1xuICBtYXJnaW4tbGVmdDogMC4zMTI1cmVtO1xuICBtYXJnaW4tcmlnaHQ6IDAuMzEyNXJlbTtcbiAgYm9yZGVyLWJvdHRvbTogNHB4IHNvbGlkIHRyYW5zcGFyZW50OyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLnRhYnMtdGl0bGUgPiBhIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAxLjI1cmVtO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAxLjI1cmVtOyB9IH1cbiAgLnRhYnMtdGl0bGUgPiBhOmZvY3VzLCAudGFicy10aXRsZSA+IGFbYXJpYS1zZWxlY3RlZD0ndHJ1ZSddIHtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItYm90dG9tLWNvbG9yOiAjNjgwMGQyO1xuICAgIG91dGxpbmU6IG5vbmU7IH1cblxuLnRhYnMtdGl0bGU6Zmlyc3QtY2hpbGQgPiBhIHtcbiAgbWFyZ2luLWxlZnQ6IDA7IH1cblxuLmFjY29yZGlvbi10aXRsZSB7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNmMmYyZjI7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgcGFkZGluZy1yaWdodDogMDtcbiAgbWFyZ2luLWxlZnQ6IDAuNjI1cmVtO1xuICBtYXJnaW4tcmlnaHQ6IDAuNjI1cmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmFjY29yZGlvbi10aXRsZSB7XG4gICAgICBtYXJnaW4tbGVmdDogMC45Mzc1cmVtO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwLjkzNzVyZW07IH0gfVxuICAuYWNjb3JkaW9uLXRpdGxlOmhvdmVyLCAuYWNjb3JkaW9uLXRpdGxlOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItY29sb3I6ICM2ODAwZDI7XG4gICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMnB4OyB9XG5cbi5saWdodCAudGFicyBhIHtcbiAgY29sb3I6ICNmZWZlZmU7XG4gIG9wYWNpdHk6IDAuNzsgfVxuXG4ubGlnaHQgLnRhYnMgLnRhYnMtdGl0bGUgPiBhOmZvY3VzLFxuLmxpZ2h0IC50YWJzIC50YWJzLXRpdGxlID4gYVthcmlhLXNlbGVjdGVkPVwidHJ1ZVwiXSB7XG4gIG9wYWNpdHk6IDE7XG4gIGJvcmRlci1ib3R0b20tY29sb3I6ICNmZWZlZmU7IH1cblxuLmxpZ2h0IC50YWJzLWNvbnRlbnQge1xuICBjb2xvcjogI2ZlZmVmZTsgfVxuXG4ubGlnaHQgZGl2LmV4cGFuZGFibGUgLmFjY29yZGlvbi10aXRsZSB7XG4gIGJhY2tncm91bmQ6ICNmZWZlZmU7XG4gIGNvbG9yOiAjNjgwMGQyOyB9XG5cbi5saWdodCBkaXYuZXhwYW5kYWJsZSAuYWNjb3JkaW9uLWNvbnRlbnQge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgY29sb3I6ICNmZWZlZmU7IH1cblxuc2VjdGlvbi51c2VyLWd1aWRlcyBoMiB7XG4gIHdpZHRoOiAxMDAlO1xuICBmbG9hdDogbGVmdDtcbiAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gIHBhZGRpbmctbGVmdDogMC42MjVyZW07XG4gIGZsb2F0OiBub25lICFpbXBvcnRhbnQ7XG4gIG1hcmdpbi1ib3R0b206IDEuMjVyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICBzZWN0aW9uLnVzZXItZ3VpZGVzIGgyIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgc2VjdGlvbi51c2VyLWd1aWRlcyBoMiwgc2VjdGlvbi51c2VyLWd1aWRlcyBoMjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBjbGVhcjogbm9uZTsgfVxuICBzZWN0aW9uLnVzZXItZ3VpZGVzIGgyOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgIGZsb2F0OiByaWdodDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIHNlY3Rpb24udXNlci1ndWlkZXMgaDIge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMi41cmVtOyB9IH1cblxuc2VjdGlvbi51c2VyLWd1aWRlcyAuZmVhdHVyZWQtZ3VpZGVzLWxpc3Qge1xuICBwYWRkaW5nOiAwIDQuMzc1cmVtO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgc2VjdGlvbi51c2VyLWd1aWRlcyAuZmVhdHVyZWQtZ3VpZGVzLWxpc3QgLnNsaWRlIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDEuMjVyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgc2VjdGlvbi51c2VyLWd1aWRlcyAuZmVhdHVyZWQtZ3VpZGVzLWxpc3QgLnNsaWRlIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gICAgc2VjdGlvbi51c2VyLWd1aWRlcyAuZmVhdHVyZWQtZ3VpZGVzLWxpc3QgLnNsaWRlLCBzZWN0aW9uLnVzZXItZ3VpZGVzIC5mZWF0dXJlZC1ndWlkZXMtbGlzdCAuc2xpZGU6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgc2VjdGlvbi51c2VyLWd1aWRlcyAuZmVhdHVyZWQtZ3VpZGVzLWxpc3QgLnNsaWRlOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgZmxvYXQ6IHJpZ2h0OyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIHNlY3Rpb24udXNlci1ndWlkZXMgLmZlYXR1cmVkLWd1aWRlcy1saXN0IC5zbGlkZSB7XG4gICAgICAgIHdpZHRoOiAxNi42NjY2NyU7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDMuMTI1cmVtOyB9XG4gICAgICAgIHNlY3Rpb24udXNlci1ndWlkZXMgLmZlYXR1cmVkLWd1aWRlcy1saXN0IC5zbGlkZTpsYXN0LWNoaWxkOmxhc3QtY2hpbGQge1xuICAgICAgICAgIGZsb2F0OiBsZWZ0OyB9IH1cbiAgICBzZWN0aW9uLnVzZXItZ3VpZGVzIC5mZWF0dXJlZC1ndWlkZXMtbGlzdCAuc2xpZGUgLmNhcmQtY29udGFpbmVyIHtcbiAgICAgIG1heC13aWR0aDogOS4zNzVyZW07XG4gICAgICBtYXJnaW46IDAgYXV0bzsgfVxuICAgICAgc2VjdGlvbi51c2VyLWd1aWRlcyAuZmVhdHVyZWQtZ3VpZGVzLWxpc3QgLnNsaWRlIC5jYXJkLWNvbnRhaW5lciBpbWcge1xuICAgICAgICBib3gtc2hhZG93OiAwIDAgMTBweCAjOGE4YThhO1xuICAgICAgICBtYXgtd2lkdGg6IDYuMjVyZW07XG4gICAgICAgIG1hcmdpbjogMS41NjI1cmVtIDAgMC45Mzc1cmVtIDA7XG4gICAgICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgICBzZWN0aW9uLnVzZXItZ3VpZGVzIC5mZWF0dXJlZC1ndWlkZXMtbGlzdCAuc2xpZGUgLmNhcmQtY29udGFpbmVyIHAge1xuICAgICAgICBtYXgtd2lkdGg6IDkuMzc1cmVtOyB9XG5cbnNlY3Rpb24udXNlci1ndWlkZXMgdWwuYWxsLWd1aWRlcy1saXN0IHtcbiAgYm9yZGVyOiBub25lOyB9XG4gIHNlY3Rpb24udXNlci1ndWlkZXMgdWwuYWxsLWd1aWRlcy1saXN0IC5hY2NvcmRpb24taXRlbSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMDsgfVxuICAgIHNlY3Rpb24udXNlci1ndWlkZXMgdWwuYWxsLWd1aWRlcy1saXN0IC5hY2NvcmRpb24taXRlbSAuYWNjb3JkaW9uLXRpdGxlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICM2ODAwZDI7XG4gICAgICBjb2xvcjogI2ZlZmVmZTtcbiAgICAgIGZvbnQtc2l6ZTogMS4xODc1cmVtO1xuICAgICAgcGFkZGluZzogMC42MjVyZW0gMS4yNXJlbTsgfVxuICAgICAgc2VjdGlvbi51c2VyLWd1aWRlcyB1bC5hbGwtZ3VpZGVzLWxpc3QgLmFjY29yZGlvbi1pdGVtIC5hY2NvcmRpb24tdGl0bGU6YmVmb3JlIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogI2ZlZmVmZTtcbiAgICAgICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiAjZmVmZWZlOyB9XG4gICAgc2VjdGlvbi51c2VyLWd1aWRlcyB1bC5hbGwtZ3VpZGVzLWxpc3QgLmFjY29yZGlvbi1pdGVtIC5hY2NvcmRpb24tY29udGVudCB7XG4gICAgICBib3JkZXI6IG5vbmU7XG4gICAgICBwYWRkaW5nOiAxLjg3NXJlbSAxLjI1cmVtO1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuICAgICAgc2VjdGlvbi51c2VyLWd1aWRlcyB1bC5hbGwtZ3VpZGVzLWxpc3QgLmFjY29yZGlvbi1pdGVtIC5hY2NvcmRpb24tY29udGVudCAuY29sdW1uLCBzZWN0aW9uLnVzZXItZ3VpZGVzIHVsLmFsbC1ndWlkZXMtbGlzdCAuYWNjb3JkaW9uLWl0ZW0gLmFjY29yZGlvbi1jb250ZW50IC5jb2x1bW5zIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTsgfVxuICAgICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAgIHNlY3Rpb24udXNlci1ndWlkZXMgdWwuYWxsLWd1aWRlcy1saXN0IC5hY2NvcmRpb24taXRlbSAuYWNjb3JkaW9uLWNvbnRlbnQgLmNvbHVtbiwgc2VjdGlvbi51c2VyLWd1aWRlcyB1bC5hbGwtZ3VpZGVzLWxpc3QgLmFjY29yZGlvbi1pdGVtIC5hY2NvcmRpb24tY29udGVudCAuY29sdW1ucyB7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gICAgICAgIHNlY3Rpb24udXNlci1ndWlkZXMgdWwuYWxsLWd1aWRlcy1saXN0IC5hY2NvcmRpb24taXRlbSAuYWNjb3JkaW9uLWNvbnRlbnQgLmNvbHVtbiwgc2VjdGlvbi51c2VyLWd1aWRlcyB1bC5hbGwtZ3VpZGVzLWxpc3QgLmFjY29yZGlvbi1pdGVtIC5hY2NvcmRpb24tY29udGVudCAuY29sdW1ucywgc2VjdGlvbi51c2VyLWd1aWRlcyB1bC5hbGwtZ3VpZGVzLWxpc3QgLmFjY29yZGlvbi1pdGVtIC5hY2NvcmRpb24tY29udGVudCAuY29sdW1uOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCksIHNlY3Rpb24udXNlci1ndWlkZXMgdWwuYWxsLWd1aWRlcy1saXN0IC5hY2NvcmRpb24taXRlbSAuYWNjb3JkaW9uLWNvbnRlbnQgLmNvbHVtbnM6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAgICAgc2VjdGlvbi51c2VyLWd1aWRlcyB1bC5hbGwtZ3VpZGVzLWxpc3QgLmFjY29yZGlvbi1pdGVtIC5hY2NvcmRpb24tY29udGVudCAuY29sdW1uOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCksIHNlY3Rpb24udXNlci1ndWlkZXMgdWwuYWxsLWd1aWRlcy1saXN0IC5hY2NvcmRpb24taXRlbSAuYWNjb3JkaW9uLWNvbnRlbnQgLmNvbHVtbnM6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgZmxvYXQ6IHJpZ2h0OyB9XG4gICAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgICAgc2VjdGlvbi51c2VyLWd1aWRlcyB1bC5hbGwtZ3VpZGVzLWxpc3QgLmFjY29yZGlvbi1pdGVtIC5hY2NvcmRpb24tY29udGVudCAuY29sdW1uLCBzZWN0aW9uLnVzZXItZ3VpZGVzIHVsLmFsbC1ndWlkZXMtbGlzdCAuYWNjb3JkaW9uLWl0ZW0gLmFjY29yZGlvbi1jb250ZW50IC5jb2x1bW5zIHtcbiAgICAgICAgICAgIHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgICAgICAgICAgIHNlY3Rpb24udXNlci1ndWlkZXMgdWwuYWxsLWd1aWRlcy1saXN0IC5hY2NvcmRpb24taXRlbSAuYWNjb3JkaW9uLWNvbnRlbnQgLmNvbHVtbjpsYXN0LWNoaWxkOmxhc3QtY2hpbGQsIHNlY3Rpb24udXNlci1ndWlkZXMgdWwuYWxsLWd1aWRlcy1saXN0IC5hY2NvcmRpb24taXRlbSAuYWNjb3JkaW9uLWNvbnRlbnQgLmNvbHVtbnM6bGFzdC1jaGlsZDpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7IH0gfVxuICAgICAgICBzZWN0aW9uLnVzZXItZ3VpZGVzIHVsLmFsbC1ndWlkZXMtbGlzdCAuYWNjb3JkaW9uLWl0ZW0gLmFjY29yZGlvbi1jb250ZW50IC5jb2x1bW4gaDMsIHNlY3Rpb24udXNlci1ndWlkZXMgdWwuYWxsLWd1aWRlcy1saXN0IC5hY2NvcmRpb24taXRlbSAuYWNjb3JkaW9uLWNvbnRlbnQgLmNvbHVtbnMgaDMge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMS4yNXJlbTsgfVxuICAgICAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgICAgICBzZWN0aW9uLnVzZXItZ3VpZGVzIHVsLmFsbC1ndWlkZXMtbGlzdCAuYWNjb3JkaW9uLWl0ZW0gLmFjY29yZGlvbi1jb250ZW50IC5jb2x1bW4gaDMsIHNlY3Rpb24udXNlci1ndWlkZXMgdWwuYWxsLWd1aWRlcy1saXN0IC5hY2NvcmRpb24taXRlbSAuYWNjb3JkaW9uLWNvbnRlbnQgLmNvbHVtbnMgaDMge1xuICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxLjg3NXJlbTsgfSB9XG4gICAgICAgIHNlY3Rpb24udXNlci1ndWlkZXMgdWwuYWxsLWd1aWRlcy1saXN0IC5hY2NvcmRpb24taXRlbSAuYWNjb3JkaW9uLWNvbnRlbnQgLmNvbHVtbiB1bCwgc2VjdGlvbi51c2VyLWd1aWRlcyB1bC5hbGwtZ3VpZGVzLWxpc3QgLmFjY29yZGlvbi1pdGVtIC5hY2NvcmRpb24tY29udGVudCAuY29sdW1ucyB1bCB7XG4gICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgIHBhZGRpbmc6IDA7IH1cbiAgICAgICAgICBzZWN0aW9uLnVzZXItZ3VpZGVzIHVsLmFsbC1ndWlkZXMtbGlzdCAuYWNjb3JkaW9uLWl0ZW0gLmFjY29yZGlvbi1jb250ZW50IC5jb2x1bW4gdWwgbGksIHNlY3Rpb24udXNlci1ndWlkZXMgdWwuYWxsLWd1aWRlcy1saXN0IC5hY2NvcmRpb24taXRlbSAuYWNjb3JkaW9uLWNvbnRlbnQgLmNvbHVtbnMgdWwgbGkge1xuICAgICAgICAgICAgbGlzdC1zdHlsZS10eXBlOiBub25lOyB9XG5cbnNlY3Rpb24udXNlci1ndWlkZXMgLnNsaWNrLWFycm93IHtcbiAgdG9wOiAzMCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTsgfVxuXG5zZWN0aW9uLnZpZGVvLWxpc3Rpbmcge1xuICBib3JkZXI6IG5vbmU7IH1cbiAgc2VjdGlvbi52aWRlby1saXN0aW5nOm50aC1jaGlsZChvZGQpIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjJmMmYyOyB9XG4gIHNlY3Rpb24udmlkZW8tbGlzdGluZyBoMiB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjg3NXJlbTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICBzZWN0aW9uLnZpZGVvLWxpc3RpbmcgaDIge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgICBzZWN0aW9uLnZpZGVvLWxpc3RpbmcgaDIsIHNlY3Rpb24udmlkZW8tbGlzdGluZyBoMjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICBzZWN0aW9uLnZpZGVvLWxpc3RpbmcgaDI6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICBmbG9hdDogcmlnaHQ7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgc2VjdGlvbi52aWRlby1saXN0aW5nIGgyIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMy43NXJlbTsgfSB9XG4gIHNlY3Rpb24udmlkZW8tbGlzdGluZyAudmlkZW8tbGlzdCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7IH1cbiAgICBzZWN0aW9uLnZpZGVvLWxpc3RpbmcgLnZpZGVvLWxpc3QgbGkge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTtcbiAgICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTsgfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgc2VjdGlvbi52aWRlby1saXN0aW5nIC52aWRlby1saXN0IGxpIHtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICAgICAgc2VjdGlvbi52aWRlby1saXN0aW5nIC52aWRlby1saXN0IGxpLCBzZWN0aW9uLnZpZGVvLWxpc3RpbmcgLnZpZGVvLWxpc3QgbGk6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBjbGVhcjogbm9uZTsgfVxuICAgICAgc2VjdGlvbi52aWRlby1saXN0aW5nIC52aWRlby1saXN0IGxpOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICBmbG9hdDogcmlnaHQ7IH1cbiAgICAgIHNlY3Rpb24udmlkZW8tbGlzdGluZyAudmlkZW8tbGlzdCBsaTpsYXN0LWNoaWxkOmxhc3QtY2hpbGQge1xuICAgICAgICBmbG9hdDogbGVmdDsgfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgc2VjdGlvbi52aWRlby1saXN0aW5nIC52aWRlby1saXN0IGxpIHtcbiAgICAgICAgICB3aWR0aDogNTAlOyB9IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAgIHNlY3Rpb24udmlkZW8tbGlzdGluZyAudmlkZW8tbGlzdCBsaSB7XG4gICAgICAgICAgd2lkdGg6IDMzLjMzMzMzJTsgfSB9XG4gICAgICBzZWN0aW9uLnZpZGVvLWxpc3RpbmcgLnZpZGVvLWxpc3QgbGkgLnZpZGVvLXRpdGxlIHtcbiAgICAgICAgY29sb3I6ICM2ODAwZDI7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEuMjVyZW07IH1cbiAgICAgICAgc2VjdGlvbi52aWRlby1saXN0aW5nIC52aWRlby1saXN0IGxpIC52aWRlby10aXRsZTphZnRlciB7XG4gICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgYm9yZGVyOiAwLjEyNXJlbSBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgICAgICBib3JkZXItcmlnaHQtY29sb3I6ICM2ODAwZDI7XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogIzY4MDBkMjtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDAuNjI1cmVtO1xuICAgICAgICAgIHdpZHRoOiAwLjYyNXJlbTtcbiAgICAgICAgICBoZWlnaHQ6IDAuNjI1cmVtO1xuICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XG4gICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbi1vdXQ7IH1cbiAgICAgIHNlY3Rpb24udmlkZW8tbGlzdGluZyAudmlkZW8tbGlzdCBsaSBidXR0b24ge1xuICAgICAgICBib3JkZXItcmFkaXVzOiAwOyB9XG4gICAgICAgIHNlY3Rpb24udmlkZW8tbGlzdGluZyAudmlkZW8tbGlzdCBsaSBidXR0b246aG92ZXIge1xuICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjsgfVxuICAgICAgc2VjdGlvbi52aWRlby1saXN0aW5nIC52aWRlby1saXN0IGxpIC52aWRlby10aHVtYiB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEuODc1cmVtO1xuICAgICAgICB3aWR0aDogMTAwJTsgfVxuICAgICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAgIHNlY3Rpb24udmlkZW8tbGlzdGluZyAudmlkZW8tbGlzdCBsaSAudmlkZW8tdGh1bWIge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMy4xMjVyZW07IH0gfVxuXG5ib2R5LnNpbmdsZS1wcm9kdWN0IC5jYXNlLXN0dWRpZXMge1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzhhOGE4YTsgfVxuXG5ib2R5LnNpbmdsZS1wYXJ0bmVyIGFydGljbGUsXG4jcGFydG5lci1yZXZlYWwgYXJ0aWNsZSB7XG4gIGNsZWFyOiBib3RoO1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG4gIGJvZHkuc2luZ2xlLXBhcnRuZXIgYXJ0aWNsZSBmb290ZXIsXG4gICNwYXJ0bmVyLXJldmVhbCBhcnRpY2xlIGZvb3RlciB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTtcbiAgICBwYWRkaW5nLXRvcDogMS4yNXJlbTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICBib2R5LnNpbmdsZS1wYXJ0bmVyIGFydGljbGUgZm9vdGVyLFxuICAgICAgI3BhcnRuZXItcmV2ZWFsIGFydGljbGUgZm9vdGVyIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gICAgYm9keS5zaW5nbGUtcGFydG5lciBhcnRpY2xlIGZvb3RlciwgYm9keS5zaW5nbGUtcGFydG5lciBhcnRpY2xlIGZvb3RlcjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpLFxuICAgICNwYXJ0bmVyLXJldmVhbCBhcnRpY2xlIGZvb3RlcixcbiAgICAjcGFydG5lci1yZXZlYWwgYXJ0aWNsZSBmb290ZXI6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgYm9keS5zaW5nbGUtcGFydG5lciBhcnRpY2xlIGZvb3RlcjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpLFxuICAgICNwYXJ0bmVyLXJldmVhbCBhcnRpY2xlIGZvb3RlcjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgIGZsb2F0OiByaWdodDsgfVxuXG5ib2R5LnNpbmdsZS1wYXJ0bmVyIC5yb3csXG4jcGFydG5lci1yZXZlYWwgLnJvdyB7XG4gIG1heC13aWR0aDogbm9uZTtcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXJnaW4tbGVmdDogYXV0bzsgfVxuICBib2R5LnNpbmdsZS1wYXJ0bmVyIC5yb3c6OmJlZm9yZSwgYm9keS5zaW5nbGUtcGFydG5lciAucm93OjphZnRlcixcbiAgI3BhcnRuZXItcmV2ZWFsIC5yb3c6OmJlZm9yZSxcbiAgI3BhcnRuZXItcmV2ZWFsIC5yb3c6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjb250ZW50OiAnICc7XG4gICAgZmxleC1iYXNpczogMDtcbiAgICBvcmRlcjogMTsgfVxuICBib2R5LnNpbmdsZS1wYXJ0bmVyIC5yb3c6OmFmdGVyLFxuICAjcGFydG5lci1yZXZlYWwgLnJvdzo6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIGJvZHkuc2luZ2xlLXBhcnRuZXIgLnJvdyBoZWFkZXIsXG4gICNwYXJ0bmVyLXJldmVhbCAucm93IGhlYWRlciB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICBib2R5LnNpbmdsZS1wYXJ0bmVyIC5yb3cgaGVhZGVyLFxuICAgICAgI3BhcnRuZXItcmV2ZWFsIC5yb3cgaGVhZGVyIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gICAgYm9keS5zaW5nbGUtcGFydG5lciAucm93IGhlYWRlciwgYm9keS5zaW5nbGUtcGFydG5lciAucm93IGhlYWRlcjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpLFxuICAgICNwYXJ0bmVyLXJldmVhbCAucm93IGhlYWRlcixcbiAgICAjcGFydG5lci1yZXZlYWwgLnJvdyBoZWFkZXI6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgYm9keS5zaW5nbGUtcGFydG5lciAucm93IGhlYWRlcjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpLFxuICAgICNwYXJ0bmVyLXJldmVhbCAucm93IGhlYWRlcjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgIGZsb2F0OiByaWdodDsgfVxuXG5ib2R5LnNpbmdsZS1wYXJ0bmVyIC5jb250ZW50LFxuI3BhcnRuZXItcmV2ZWFsIC5jb250ZW50IHtcbiAgd2lkdGg6IDEwMCU7XG4gIGZsb2F0OiBsZWZ0O1xuICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIGJvZHkuc2luZ2xlLXBhcnRuZXIgLmNvbnRlbnQsXG4gICAgI3BhcnRuZXItcmV2ZWFsIC5jb250ZW50IHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgYm9keS5zaW5nbGUtcGFydG5lciAuY29udGVudCwgYm9keS5zaW5nbGUtcGFydG5lciAuY29udGVudDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpLFxuICAjcGFydG5lci1yZXZlYWwgLmNvbnRlbnQsXG4gICNwYXJ0bmVyLXJldmVhbCAuY29udGVudDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBjbGVhcjogbm9uZTsgfVxuICBib2R5LnNpbmdsZS1wYXJ0bmVyIC5jb250ZW50Omxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCksXG4gICNwYXJ0bmVyLXJldmVhbCAuY29udGVudDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICBmbG9hdDogcmlnaHQ7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICBib2R5LnNpbmdsZS1wYXJ0bmVyIC5jb250ZW50LFxuICAgICNwYXJ0bmVyLXJldmVhbCAuY29udGVudCB7XG4gICAgICB3aWR0aDogNjYuNjY2NjclOyB9IH1cblxuYm9keS5zaW5nbGUtcGFydG5lciAubG9nbyxcbiNwYXJ0bmVyLXJldmVhbCAubG9nbyB7XG4gIHdpZHRoOiAxMDAlO1xuICBmbG9hdDogbGVmdDtcbiAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gIHBhZGRpbmctbGVmdDogMC42MjVyZW07XG4gIG1heC13aWR0aDogMTIuNXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIGJvZHkuc2luZ2xlLXBhcnRuZXIgLmxvZ28sXG4gICAgI3BhcnRuZXItcmV2ZWFsIC5sb2dvIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgYm9keS5zaW5nbGUtcGFydG5lciAubG9nbywgYm9keS5zaW5nbGUtcGFydG5lciAubG9nbzpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpLFxuICAjcGFydG5lci1yZXZlYWwgLmxvZ28sXG4gICNwYXJ0bmVyLXJldmVhbCAubG9nbzpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBjbGVhcjogbm9uZTsgfVxuICBib2R5LnNpbmdsZS1wYXJ0bmVyIC5sb2dvOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCksXG4gICNwYXJ0bmVyLXJldmVhbCAubG9nbzpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICBmbG9hdDogcmlnaHQ7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgIGJvZHkuc2luZ2xlLXBhcnRuZXIgLmxvZ28sXG4gICAgI3BhcnRuZXItcmV2ZWFsIC5sb2dvIHtcbiAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgYm9keS5zaW5nbGUtcGFydG5lciAubG9nbyxcbiAgICAjcGFydG5lci1yZXZlYWwgLmxvZ28ge1xuICAgICAgd2lkdGg6IDI1JTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgYm9keS5zaW5nbGUtcGFydG5lciAubG9nbyxcbiAgICAjcGFydG5lci1yZXZlYWwgLmxvZ28ge1xuICAgICAgd2lkdGg6IDE2LjY2NjY3JTsgfSB9XG5cbmJvZHkuc2luZ2xlLXBhcnRuZXIgc2VjdGlvbi5oZXJvLXNsaWRlIC5zbGlkZSAuY29udGVudCA+IGltZyxcbmJvZHkuc2luZ2xlLXBhcnRuZXIgc2VjdGlvbi5oZXJvLXNsaWRlIC5zbGlkZSAuY29udGVudCA+IHBpY3R1cmUsXG4jcGFydG5lci1yZXZlYWwgc2VjdGlvbi5oZXJvLXNsaWRlIC5zbGlkZSAuY29udGVudCA+IGltZyxcbiNwYXJ0bmVyLXJldmVhbCBzZWN0aW9uLmhlcm8tc2xpZGUgLnNsaWRlIC5jb250ZW50ID4gcGljdHVyZSB7XG4gIG1heC13aWR0aDogMTIuNXJlbTtcbiAgbWFyZ2luLXRvcDogMy43NXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIGJvZHkuc2luZ2xlLXBhcnRuZXIgc2VjdGlvbi5oZXJvLXNsaWRlIC5zbGlkZSAuY29udGVudCA+IGltZyxcbiAgICBib2R5LnNpbmdsZS1wYXJ0bmVyIHNlY3Rpb24uaGVyby1zbGlkZSAuc2xpZGUgLmNvbnRlbnQgPiBwaWN0dXJlLFxuICAgICNwYXJ0bmVyLXJldmVhbCBzZWN0aW9uLmhlcm8tc2xpZGUgLnNsaWRlIC5jb250ZW50ID4gaW1nLFxuICAgICNwYXJ0bmVyLXJldmVhbCBzZWN0aW9uLmhlcm8tc2xpZGUgLnNsaWRlIC5jb250ZW50ID4gcGljdHVyZSB7XG4gICAgICBtYXgtd2lkdGg6IDE4Ljc1cmVtO1xuICAgICAgbWFyZ2luLXRvcDogOS4zNzVyZW07IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAjcGFydG5lci1yZXZlYWwge1xuICAgIHBhZGRpbmc6IDcuNXJlbSA2LjI1cmVtIDYuMjVyZW07IH0gfVxuXG4jcGFydG5lci1yZXZlYWwgaDEge1xuICBmb250LXNpemU6IDEuMjVyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAjcGFydG5lci1yZXZlYWwgaDEge1xuICAgICAgZm9udC1zaXplOiAyLjEyNXJlbTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICNwYXJ0bmVyLXJldmVhbCAubG9nbyB7XG4gICAgd2lkdGg6IDI1JTsgfSB9XG5cbmJvZHkuc2luZ2xlLWFtcGxpZnkgc2VjdGlvbi5pbnRybyxcbmJvZHkuc2luZ2xlLWluc2lnaHQgc2VjdGlvbi5pbnRybyB7XG4gIGJhY2tncm91bmQ6ICNmZWZlZmU7IH1cbiAgYm9keS5zaW5nbGUtYW1wbGlmeSBzZWN0aW9uLmludHJvIC5yb3csXG4gIGJvZHkuc2luZ2xlLWluc2lnaHQgc2VjdGlvbi5pbnRybyAucm93IHtcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDsgfVxuICBib2R5LnNpbmdsZS1hbXBsaWZ5IHNlY3Rpb24uaW50cm8gLmNvbnRlbnQsXG4gIGJvZHkuc2luZ2xlLWluc2lnaHQgc2VjdGlvbi5pbnRybyAuY29udGVudCB7XG4gICAgbWF4LXdpZHRoOiBub25lOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIGJvZHkuc2luZ2xlLWFtcGxpZnkgc2VjdGlvbi5pbnRybyAuY29udGVudCxcbiAgICAgIGJvZHkuc2luZ2xlLWluc2lnaHQgc2VjdGlvbi5pbnRybyAuY29udGVudCB7XG4gICAgICAgIHdpZHRoOiA0OCU7IH0gfVxuICBib2R5LnNpbmdsZS1hbXBsaWZ5IHNlY3Rpb24uaW50cm8gLnJpZ2h0LFxuICBib2R5LnNpbmdsZS1pbnNpZ2h0IHNlY3Rpb24uaW50cm8gLnJpZ2h0IHtcbiAgICBtYXgtd2lkdGg6IG5vbmU7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgYm9keS5zaW5nbGUtYW1wbGlmeSBzZWN0aW9uLmludHJvIC5yaWdodCxcbiAgICAgIGJvZHkuc2luZ2xlLWluc2lnaHQgc2VjdGlvbi5pbnRybyAucmlnaHQge1xuICAgICAgICB3aWR0aDogNDglOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICBib2R5LnNpbmdsZS1hbXBsaWZ5IHNlY3Rpb24uaW50cm8ucmV2ZXJzZSAuY29udGVudCxcbiAgICBib2R5LnNpbmdsZS1pbnNpZ2h0IHNlY3Rpb24uaW50cm8ucmV2ZXJzZSAuY29udGVudCB7XG4gICAgICBvcmRlcjogMjsgfVxuICAgIGJvZHkuc2luZ2xlLWFtcGxpZnkgc2VjdGlvbi5pbnRyby5yZXZlcnNlIC5yaWdodCxcbiAgICBib2R5LnNpbmdsZS1pbnNpZ2h0IHNlY3Rpb24uaW50cm8ucmV2ZXJzZSAucmlnaHQge1xuICAgICAgb3JkZXI6IDE7IH1cbiAgICAgIGJvZHkuc2luZ2xlLWFtcGxpZnkgc2VjdGlvbi5pbnRyby5yZXZlcnNlIC5yaWdodCAuY29udGVudCxcbiAgICAgIGJvZHkuc2luZ2xlLWluc2lnaHQgc2VjdGlvbi5pbnRyby5yZXZlcnNlIC5yaWdodCAuY29udGVudCB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwOyB9IH1cbiAgYm9keS5zaW5nbGUtYW1wbGlmeSBzZWN0aW9uLmludHJvIC50eXBlLXN0YXQgLmNvbnRlbnQsXG4gIGJvZHkuc2luZ2xlLWFtcGxpZnkgc2VjdGlvbi5pbnRybyAudHlwZS1wdWxsb3V0IC5jb250ZW50LFxuICBib2R5LnNpbmdsZS1pbnNpZ2h0IHNlY3Rpb24uaW50cm8gLnR5cGUtc3RhdCAuY29udGVudCxcbiAgYm9keS5zaW5nbGUtaW5zaWdodCBzZWN0aW9uLmludHJvIC50eXBlLXB1bGxvdXQgLmNvbnRlbnQge1xuICAgIGZsb2F0OiBub25lO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgY29sb3I6ICM2ODAwZDI7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luOiAxLjI1cmVtIDA7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgYm9keS5zaW5nbGUtYW1wbGlmeSBzZWN0aW9uLmludHJvIC50eXBlLXN0YXQgLmNvbnRlbnQsXG4gICAgICBib2R5LnNpbmdsZS1hbXBsaWZ5IHNlY3Rpb24uaW50cm8gLnR5cGUtcHVsbG91dCAuY29udGVudCxcbiAgICAgIGJvZHkuc2luZ2xlLWluc2lnaHQgc2VjdGlvbi5pbnRybyAudHlwZS1zdGF0IC5jb250ZW50LFxuICAgICAgYm9keS5zaW5nbGUtaW5zaWdodCBzZWN0aW9uLmludHJvIC50eXBlLXB1bGxvdXQgLmNvbnRlbnQge1xuICAgICAgICBtYXgtd2lkdGg6IDIxLjg3NXJlbTtcbiAgICAgICAgbWFyZ2luOiAwLjVyZW0gYXV0bzsgfSB9XG4gIGJvZHkuc2luZ2xlLWFtcGxpZnkgc2VjdGlvbi5pbnRybyAudHlwZS1wdWxsb3V0IHAsXG4gIGJvZHkuc2luZ2xlLWluc2lnaHQgc2VjdGlvbi5pbnRybyAudHlwZS1wdWxsb3V0IHAge1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgICBmb250LXNpemU6IDEuMTI1cmVtOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIGJvZHkuc2luZ2xlLWFtcGxpZnkgc2VjdGlvbi5pbnRybyAudHlwZS1wdWxsb3V0IHAsXG4gICAgICBib2R5LnNpbmdsZS1pbnNpZ2h0IHNlY3Rpb24uaW50cm8gLnR5cGUtcHVsbG91dCBwIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjYyNXJlbTsgfSB9XG4gIGJvZHkuc2luZ2xlLWFtcGxpZnkgc2VjdGlvbi5pbnRybyAudHlwZS1wdWxsb3V0IC5jb250ZW50OmJlZm9yZSxcbiAgYm9keS5zaW5nbGUtaW5zaWdodCBzZWN0aW9uLmludHJvIC50eXBlLXB1bGxvdXQgLmNvbnRlbnQ6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi1ib3R0b206IDEuMjVyZW07XG4gICAgd2lkdGg6IDMuNzVyZW07XG4gICAgaGVpZ2h0OiAwLjVyZW07XG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCAjNjgwMGQyIDAlLCAjOWUyOWZkIDEwMCUpOyB9XG4gIGJvZHkuc2luZ2xlLWFtcGxpZnkgc2VjdGlvbi5pbnRybyAudHlwZS1zdGF0IC5jb250ZW50LFxuICBib2R5LnNpbmdsZS1pbnNpZ2h0IHNlY3Rpb24uaW50cm8gLnR5cGUtc3RhdCAuY29udGVudCB7XG4gICAgbWF4LXdpZHRoOiAxMy43NXJlbTsgfVxuICBib2R5LnNpbmdsZS1hbXBsaWZ5IHNlY3Rpb24uaW50cm8gLnR5cGUtc3RhdCBoMixcbiAgYm9keS5zaW5nbGUtaW5zaWdodCBzZWN0aW9uLmludHJvIC50eXBlLXN0YXQgaDIge1xuICAgIGNvbG9yOiAjNjgwMGQyO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXJnaW46IDA7XG4gICAgZm9udC1zaXplOiA1LjYyNXJlbTsgfVxuICAgIGJvZHkuc2luZ2xlLWFtcGxpZnkgc2VjdGlvbi5pbnRybyAudHlwZS1zdGF0IGgyOmJlZm9yZSxcbiAgICBib2R5LnNpbmdsZS1pbnNpZ2h0IHNlY3Rpb24uaW50cm8gLnR5cGUtc3RhdCBoMjpiZWZvcmUge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgd2lkdGg6IDMuNzVyZW07XG4gICAgICBoZWlnaHQ6IDAuNXJlbTtcbiAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgIzY4MDBkMiAwJSwgIzllMjlmZCAxMDAlKTsgfVxuICBib2R5LnNpbmdsZS1hbXBsaWZ5IHNlY3Rpb24uaW50cm8gLnR5cGUtc3RhdCBwLFxuICBib2R5LnNpbmdsZS1pbnNpZ2h0IHNlY3Rpb24uaW50cm8gLnR5cGUtc3RhdCBwIHtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICAgIGZvbnQtc2l6ZTogMXJlbTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICBib2R5LnNpbmdsZS1hbXBsaWZ5IHNlY3Rpb24uaW50cm8gLnR5cGUtc3RhdCBwLFxuICAgICAgYm9keS5zaW5nbGUtaW5zaWdodCBzZWN0aW9uLmludHJvIC50eXBlLXN0YXQgcCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07IH0gfVxuICBib2R5LnNpbmdsZS1hbXBsaWZ5IHNlY3Rpb24uaW50cm8ubGlnaHQgLnR5cGUtc3RhdCAuY29udGVudCxcbiAgYm9keS5zaW5nbGUtYW1wbGlmeSBzZWN0aW9uLmludHJvLmxpZ2h0IC50eXBlLXB1bGxvdXQgLmNvbnRlbnQsXG4gIGJvZHkuc2luZ2xlLWluc2lnaHQgc2VjdGlvbi5pbnRyby5saWdodCAudHlwZS1zdGF0IC5jb250ZW50LFxuICBib2R5LnNpbmdsZS1pbnNpZ2h0IHNlY3Rpb24uaW50cm8ubGlnaHQgLnR5cGUtcHVsbG91dCAuY29udGVudCB7XG4gICAgY29sb3I6ICNmZWZlZmU7IH1cbiAgYm9keS5zaW5nbGUtYW1wbGlmeSBzZWN0aW9uLmludHJvLmxpZ2h0IC50eXBlLXN0YXQgaDIsXG4gIGJvZHkuc2luZ2xlLWluc2lnaHQgc2VjdGlvbi5pbnRyby5saWdodCAudHlwZS1zdGF0IGgyIHtcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgIC13ZWJraXQtdGV4dC1maWxsLWNvbG9yOiAjZmVmZWZlOyB9XG4gICAgYm9keS5zaW5nbGUtYW1wbGlmeSBzZWN0aW9uLmludHJvLmxpZ2h0IC50eXBlLXN0YXQgaDI6YmVmb3JlLFxuICAgIGJvZHkuc2luZ2xlLWluc2lnaHQgc2VjdGlvbi5pbnRyby5saWdodCAudHlwZS1zdGF0IGgyOmJlZm9yZSB7XG4gICAgICBiYWNrZ3JvdW5kOiAjZmVmZWZlOyB9XG4gIGJvZHkuc2luZ2xlLWFtcGxpZnkgc2VjdGlvbi5pbnRyby5saWdodCAudHlwZS1wdWxsb3V0OmJlZm9yZSxcbiAgYm9keS5zaW5nbGUtaW5zaWdodCBzZWN0aW9uLmludHJvLmxpZ2h0IC50eXBlLXB1bGxvdXQ6YmVmb3JlIHtcbiAgICBiYWNrZ3JvdW5kOiAjZmVmZWZlOyB9XG5cbmJvZHkuc2luZ2xlLWFtcGxpZnkgc2VjdGlvbi5jb2x1bW5lZC10ZXh0IC5pbnRybyxcbmJvZHkuc2luZ2xlLWluc2lnaHQgc2VjdGlvbi5jb2x1bW5lZC10ZXh0IC5pbnRybyB7XG4gIHdpZHRoOiAxMDAlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG1heC13aWR0aDogNjIuNXJlbTtcbiAgbWFyZ2luOiAwIGF1dG8gMi41cmVtO1xuICBmbG9hdDogbm9uZTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIGJvZHkuc2luZ2xlLWFtcGxpZnkgc2VjdGlvbi5jb2x1bW5lZC10ZXh0IC5pbnRybyxcbiAgICBib2R5LnNpbmdsZS1pbnNpZ2h0IHNlY3Rpb24uY29sdW1uZWQtdGV4dCAuaW50cm8ge1xuICAgICAgbWFyZ2luLWJvdHRvbTogNXJlbTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIGJvZHkuc2luZ2xlLWFtcGxpZnkgc2VjdGlvbi5jb2x1bW5lZC10ZXh0IC5jb2x1bW4udGV4dCwgYm9keS5zaW5nbGUtYW1wbGlmeSBzZWN0aW9uLmNvbHVtbmVkLXRleHQgLnRleHQuY29sdW1ucyxcbiAgYm9keS5zaW5nbGUtaW5zaWdodCBzZWN0aW9uLmNvbHVtbmVkLXRleHQgLmNvbHVtbi50ZXh0LFxuICBib2R5LnNpbmdsZS1pbnNpZ2h0IHNlY3Rpb24uY29sdW1uZWQtdGV4dCAudGV4dC5jb2x1bW5zIHtcbiAgICB3aWR0aDogNDglOyB9IH1cblxuYm9keS5zaW5nbGUtYW1wbGlmeSBzZWN0aW9uLmxhcmdlLXB1bGxvdXQsXG5ib2R5LnNpbmdsZS1pbnNpZ2h0IHNlY3Rpb24ubGFyZ2UtcHVsbG91dCB7XG4gIGJhY2tncm91bmQ6ICMwYTBhMGE7XG4gIGNvbG9yOiAjZmVmZWZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgbWluLWhlaWdodDogMzV2dzsgfVxuICBib2R5LnNpbmdsZS1hbXBsaWZ5IHNlY3Rpb24ubGFyZ2UtcHVsbG91dCAuY29udGVudCxcbiAgYm9keS5zaW5nbGUtaW5zaWdodCBzZWN0aW9uLmxhcmdlLXB1bGxvdXQgLmNvbnRlbnQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtYXgtd2lkdGg6IDQwcmVtO1xuICAgIHBhZGRpbmc6IDIuNXJlbSA0LjM3NXJlbTtcbiAgICBtYXJnaW46IDAgYXV0bzsgfVxuICAgIGJvZHkuc2luZ2xlLWFtcGxpZnkgc2VjdGlvbi5sYXJnZS1wdWxsb3V0IC5jb250ZW50IGJsb2NrcXVvdGUsXG4gICAgYm9keS5zaW5nbGUtaW5zaWdodCBzZWN0aW9uLmxhcmdlLXB1bGxvdXQgLmNvbnRlbnQgYmxvY2txdW90ZSB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBjb2xvcjogI2ZlZmVmZTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjE7XG4gICAgICBmb250LXNpemU6IDEuMjVyZW07IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgIGJvZHkuc2luZ2xlLWFtcGxpZnkgc2VjdGlvbi5sYXJnZS1wdWxsb3V0IC5jb250ZW50IGJsb2NrcXVvdGUsXG4gICAgICAgIGJvZHkuc2luZ2xlLWluc2lnaHQgc2VjdGlvbi5sYXJnZS1wdWxsb3V0IC5jb250ZW50IGJsb2NrcXVvdGUge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMi4xMjVyZW07IH0gfVxuICAgICAgYm9keS5zaW5nbGUtYW1wbGlmeSBzZWN0aW9uLmxhcmdlLXB1bGxvdXQgLmNvbnRlbnQgYmxvY2txdW90ZTpiZWZvcmUsIGJvZHkuc2luZ2xlLWFtcGxpZnkgc2VjdGlvbi5sYXJnZS1wdWxsb3V0IC5jb250ZW50IGJsb2NrcXVvdGU6YWZ0ZXIsXG4gICAgICBib2R5LnNpbmdsZS1pbnNpZ2h0IHNlY3Rpb24ubGFyZ2UtcHVsbG91dCAuY29udGVudCBibG9ja3F1b3RlOmJlZm9yZSxcbiAgICAgIGJvZHkuc2luZ2xlLWluc2lnaHQgc2VjdGlvbi5sYXJnZS1wdWxsb3V0IC5jb250ZW50IGJsb2NrcXVvdGU6YWZ0ZXIge1xuICAgICAgICBjb2xvcjogIzY4MDBkMjtcbiAgICAgICAgZm9udC1zaXplOiAxMC4yNXJlbTtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICM2ODAwZDIgMCUsICM5ZTI5ZmQgMTAwJSk7XG4gICAgICAgIC13ZWJraXQtYmFja2dyb3VuZC1jbGlwOiB0ZXh0O1xuICAgICAgICAtd2Via2l0LXRleHQtZmlsbC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgICAgIGJvZHkuc2luZ2xlLWFtcGxpZnkgc2VjdGlvbi5sYXJnZS1wdWxsb3V0IC5jb250ZW50IGJsb2NrcXVvdGU6YmVmb3JlLFxuICAgICAgYm9keS5zaW5nbGUtaW5zaWdodCBzZWN0aW9uLmxhcmdlLXB1bGxvdXQgLmNvbnRlbnQgYmxvY2txdW90ZTpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiBcIuKAnFwiO1xuICAgICAgICBsZWZ0OiAtNC4zNzVyZW07XG4gICAgICAgIHRvcDogLTVyZW07IH1cbiAgICAgIGJvZHkuc2luZ2xlLWFtcGxpZnkgc2VjdGlvbi5sYXJnZS1wdWxsb3V0IC5jb250ZW50IGJsb2NrcXVvdGU6YWZ0ZXIsXG4gICAgICBib2R5LnNpbmdsZS1pbnNpZ2h0IHNlY3Rpb24ubGFyZ2UtcHVsbG91dCAuY29udGVudCBibG9ja3F1b3RlOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCLigJ1cIjtcbiAgICAgICAgcmlnaHQ6IC00LjM3NXJlbTtcbiAgICAgICAgYm90dG9tOiAtOS4zNzVyZW07IH1cbiAgICAgIGJvZHkuc2luZ2xlLWFtcGxpZnkgc2VjdGlvbi5sYXJnZS1wdWxsb3V0IC5jb250ZW50IGJsb2NrcXVvdGUgY2l0ZSxcbiAgICAgIGJvZHkuc2luZ2xlLWluc2lnaHQgc2VjdGlvbi5sYXJnZS1wdWxsb3V0IC5jb250ZW50IGJsb2NrcXVvdGUgY2l0ZSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDEuMjVyZW07XG4gICAgICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07IH1cbiAgICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgICBib2R5LnNpbmdsZS1hbXBsaWZ5IHNlY3Rpb24ubGFyZ2UtcHVsbG91dCAuY29udGVudCBibG9ja3F1b3RlIGNpdGUsXG4gICAgICAgICAgYm9keS5zaW5nbGUtaW5zaWdodCBzZWN0aW9uLmxhcmdlLXB1bGxvdXQgLmNvbnRlbnQgYmxvY2txdW90ZSBjaXRlIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS42MjVyZW07IH0gfVxuXG5ib2R5LnNpbmdsZS1hbXBsaWZ5IHNlY3Rpb24ucmVsYXRlZCxcbmJvZHkuc2luZ2xlLWluc2lnaHQgc2VjdGlvbi5yZWxhdGVkIHtcbiAgYmFja2dyb3VuZDogI2ZlZmVmZTsgfVxuXG5ib2R5LnNpbmdsZS1ibG9nIGFydGljbGUgPiBkaXYucm93LFxuYm9keS5zaW5nbGUtZXZlbnQgYXJ0aWNsZSA+IGRpdi5yb3csXG5ib2R5LnNpbmdsZS1wb3N0IGFydGljbGUgPiBkaXYucm93IHtcbiAgbWF4LXdpZHRoOiBub25lO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1hcmdpbi1sZWZ0OiBhdXRvOyB9XG4gIGJvZHkuc2luZ2xlLWJsb2cgYXJ0aWNsZSA+IGRpdi5yb3c6OmJlZm9yZSwgYm9keS5zaW5nbGUtYmxvZyBhcnRpY2xlID4gZGl2LnJvdzo6YWZ0ZXIsXG4gIGJvZHkuc2luZ2xlLWV2ZW50IGFydGljbGUgPiBkaXYucm93OjpiZWZvcmUsXG4gIGJvZHkuc2luZ2xlLWV2ZW50IGFydGljbGUgPiBkaXYucm93OjphZnRlcixcbiAgYm9keS5zaW5nbGUtcG9zdCBhcnRpY2xlID4gZGl2LnJvdzo6YmVmb3JlLFxuICBib2R5LnNpbmdsZS1wb3N0IGFydGljbGUgPiBkaXYucm93OjphZnRlciB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgY29udGVudDogJyAnO1xuICAgIGZsZXgtYmFzaXM6IDA7XG4gICAgb3JkZXI6IDE7IH1cbiAgYm9keS5zaW5nbGUtYmxvZyBhcnRpY2xlID4gZGl2LnJvdzo6YWZ0ZXIsXG4gIGJvZHkuc2luZ2xlLWV2ZW50IGFydGljbGUgPiBkaXYucm93OjphZnRlcixcbiAgYm9keS5zaW5nbGUtcG9zdCBhcnRpY2xlID4gZGl2LnJvdzo6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIGJvZHkuc2luZ2xlLWJsb2cgYXJ0aWNsZSA+IGRpdi5yb3c6Zmlyc3QtY2hpbGQsXG4gIGJvZHkuc2luZ2xlLWV2ZW50IGFydGljbGUgPiBkaXYucm93OmZpcnN0LWNoaWxkLFxuICBib2R5LnNpbmdsZS1wb3N0IGFydGljbGUgPiBkaXYucm93OmZpcnN0LWNoaWxkIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgI2NhY2FjYTtcbiAgICBwYWRkaW5nLXRvcDogMS4yNXJlbTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICBib2R5LnNpbmdsZS1ibG9nIGFydGljbGUgPiBkaXYucm93OmZpcnN0LWNoaWxkLFxuICAgICAgYm9keS5zaW5nbGUtZXZlbnQgYXJ0aWNsZSA+IGRpdi5yb3c6Zmlyc3QtY2hpbGQsXG4gICAgICBib2R5LnNpbmdsZS1wb3N0IGFydGljbGUgPiBkaXYucm93OmZpcnN0LWNoaWxkIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDVyZW07IH0gfVxuXG5ib2R5LnNpbmdsZS1ibG9nIGFydGljbGUgLmNvbnRlbnQsXG5ib2R5LnNpbmdsZS1ldmVudCBhcnRpY2xlIC5jb250ZW50LFxuYm9keS5zaW5nbGUtcG9zdCBhcnRpY2xlIC5jb250ZW50IHtcbiAgd2lkdGg6IDEwMCU7XG4gIGZsb2F0OiBsZWZ0O1xuICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIGJvZHkuc2luZ2xlLWJsb2cgYXJ0aWNsZSAuY29udGVudCxcbiAgICBib2R5LnNpbmdsZS1ldmVudCBhcnRpY2xlIC5jb250ZW50LFxuICAgIGJvZHkuc2luZ2xlLXBvc3QgYXJ0aWNsZSAuY29udGVudCB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gIGJvZHkuc2luZ2xlLWJsb2cgYXJ0aWNsZSAuY29udGVudCwgYm9keS5zaW5nbGUtYmxvZyBhcnRpY2xlIC5jb250ZW50Omxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCksXG4gIGJvZHkuc2luZ2xlLWV2ZW50IGFydGljbGUgLmNvbnRlbnQsXG4gIGJvZHkuc2luZ2xlLWV2ZW50IGFydGljbGUgLmNvbnRlbnQ6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSxcbiAgYm9keS5zaW5nbGUtcG9zdCBhcnRpY2xlIC5jb250ZW50LFxuICBib2R5LnNpbmdsZS1wb3N0IGFydGljbGUgLmNvbnRlbnQ6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgY2xlYXI6IG5vbmU7IH1cbiAgYm9keS5zaW5nbGUtYmxvZyBhcnRpY2xlIC5jb250ZW50Omxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCksXG4gIGJvZHkuc2luZ2xlLWV2ZW50IGFydGljbGUgLmNvbnRlbnQ6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSxcbiAgYm9keS5zaW5nbGUtcG9zdCBhcnRpY2xlIC5jb250ZW50Omxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgIGZsb2F0OiByaWdodDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIGJvZHkuc2luZ2xlLWJsb2cgYXJ0aWNsZSAuY29udGVudCxcbiAgICBib2R5LnNpbmdsZS1ldmVudCBhcnRpY2xlIC5jb250ZW50LFxuICAgIGJvZHkuc2luZ2xlLXBvc3QgYXJ0aWNsZSAuY29udGVudCB7XG4gICAgICB3aWR0aDogNTguMzMzMzMlOyB9IH1cbiAgYm9keS5zaW5nbGUtYmxvZyBhcnRpY2xlIC5jb250ZW50IGgzLFxuICBib2R5LnNpbmdsZS1ldmVudCBhcnRpY2xlIC5jb250ZW50IGgzLFxuICBib2R5LnNpbmdsZS1wb3N0IGFydGljbGUgLmNvbnRlbnQgaDMge1xuICAgIGNvbG9yOiAjNjgwMGQyO1xuICAgIGZvbnQtc2l6ZTogMTAwJTtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICAgIG1hcmdpbi1ib3R0b206IDAuMzEyNXJlbTsgfVxuXG5ib2R5LnNpbmdsZS1ibG9nIGFydGljbGUgaGVhZGVyLFxuYm9keS5zaW5nbGUtZXZlbnQgYXJ0aWNsZSBoZWFkZXIsXG5ib2R5LnNpbmdsZS1wb3N0IGFydGljbGUgaGVhZGVyIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGZsb2F0OiBsZWZ0O1xuICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIGJvZHkuc2luZ2xlLWJsb2cgYXJ0aWNsZSBoZWFkZXIsXG4gICAgYm9keS5zaW5nbGUtZXZlbnQgYXJ0aWNsZSBoZWFkZXIsXG4gICAgYm9keS5zaW5nbGUtcG9zdCBhcnRpY2xlIGhlYWRlciB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gIGJvZHkuc2luZ2xlLWJsb2cgYXJ0aWNsZSBoZWFkZXIsIGJvZHkuc2luZ2xlLWJsb2cgYXJ0aWNsZSBoZWFkZXI6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSxcbiAgYm9keS5zaW5nbGUtZXZlbnQgYXJ0aWNsZSBoZWFkZXIsXG4gIGJvZHkuc2luZ2xlLWV2ZW50IGFydGljbGUgaGVhZGVyOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCksXG4gIGJvZHkuc2luZ2xlLXBvc3QgYXJ0aWNsZSBoZWFkZXIsXG4gIGJvZHkuc2luZ2xlLXBvc3QgYXJ0aWNsZSBoZWFkZXI6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgY2xlYXI6IG5vbmU7IH1cbiAgYm9keS5zaW5nbGUtYmxvZyBhcnRpY2xlIGhlYWRlcjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpLFxuICBib2R5LnNpbmdsZS1ldmVudCBhcnRpY2xlIGhlYWRlcjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpLFxuICBib2R5LnNpbmdsZS1wb3N0IGFydGljbGUgaGVhZGVyOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgIGZsb2F0OiByaWdodDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIGJvZHkuc2luZ2xlLWJsb2cgYXJ0aWNsZSBoZWFkZXIsXG4gICAgYm9keS5zaW5nbGUtZXZlbnQgYXJ0aWNsZSBoZWFkZXIsXG4gICAgYm9keS5zaW5nbGUtcG9zdCBhcnRpY2xlIGhlYWRlciB7XG4gICAgICB3aWR0aDogNTguMzMzMzMlOyB9IH1cblxuYm9keS5zaW5nbGUtYmxvZyBhcnRpY2xlIGZvb3RlcixcbmJvZHkuc2luZ2xlLWV2ZW50IGFydGljbGUgZm9vdGVyLFxuYm9keS5zaW5nbGUtcG9zdCBhcnRpY2xlIGZvb3RlciB7XG4gIG1hcmdpbi10b3A6IDEuMjVyZW07XG4gIG1hcmdpbi1ib3R0b206IDIuNXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIGJvZHkuc2luZ2xlLWJsb2cgYXJ0aWNsZSBmb290ZXIsXG4gICAgYm9keS5zaW5nbGUtZXZlbnQgYXJ0aWNsZSBmb290ZXIsXG4gICAgYm9keS5zaW5nbGUtcG9zdCBhcnRpY2xlIGZvb3RlciB7XG4gICAgICBtYXJnaW4tdG9wOiA1cmVtOyB9IH1cblxuYm9keS5zaW5nbGUtYmxvZyBhcnRpY2xlIHVsLnNvbHV0aW9ucyxcbmJvZHkuc2luZ2xlLWV2ZW50IGFydGljbGUgdWwuc29sdXRpb25zLFxuYm9keS5zaW5nbGUtcG9zdCBhcnRpY2xlIHVsLnNvbHV0aW9ucyB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIG1hcmdpbi1sZWZ0OiAwOyB9XG4gIGJvZHkuc2luZ2xlLWJsb2cgYXJ0aWNsZSB1bC5zb2x1dGlvbnMgbGksXG4gIGJvZHkuc2luZ2xlLWV2ZW50IGFydGljbGUgdWwuc29sdXRpb25zIGxpLFxuICBib2R5LnNpbmdsZS1wb3N0IGFydGljbGUgdWwuc29sdXRpb25zIGxpIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIzBhMGEwYTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICBtYXJnaW4tcmlnaHQ6IDAuNjI1cmVtOyB9XG4gICAgYm9keS5zaW5nbGUtYmxvZyBhcnRpY2xlIHVsLnNvbHV0aW9ucyBsaTpsYXN0LWNoaWxkLFxuICAgIGJvZHkuc2luZ2xlLWV2ZW50IGFydGljbGUgdWwuc29sdXRpb25zIGxpOmxhc3QtY2hpbGQsXG4gICAgYm9keS5zaW5nbGUtcG9zdCBhcnRpY2xlIHVsLnNvbHV0aW9ucyBsaTpsYXN0LWNoaWxkIHtcbiAgICAgIGJvcmRlci1yaWdodDogMDsgfVxuXG5ib2R5LnNpbmdsZS1ibG9nIGFydGljbGUgLm1ldGEsXG5ib2R5LnNpbmdsZS1ldmVudCBhcnRpY2xlIC5tZXRhLFxuYm9keS5zaW5nbGUtcG9zdCBhcnRpY2xlIC5tZXRhIHtcbiAgbWFyZ2luLXRvcDogMS44NzVyZW07XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjMGEwYTBhO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbi1ib3R0b206IDMuMTI1cmVtO1xuICBmb250LXdlaWdodDogNTAwO1xuICBtaW4td2lkdGg6IDkuMzc1cmVtO1xuICBjb2xvcjogIzY4MDBkMjsgfVxuICBib2R5LnNpbmdsZS1ibG9nIGFydGljbGUgLm1ldGEgdWwuc2hhcmUsXG4gIGJvZHkuc2luZ2xlLWV2ZW50IGFydGljbGUgLm1ldGEgdWwuc2hhcmUsXG4gIGJvZHkuc2luZ2xlLXBvc3QgYXJ0aWNsZSAubWV0YSB1bC5zaGFyZSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgbWFyZ2luLWxlZnQ6IDEuMjVyZW07IH1cbiAgICBib2R5LnNpbmdsZS1ibG9nIGFydGljbGUgLm1ldGEgdWwuc2hhcmU6Zmlyc3QtY2hpbGQsXG4gICAgYm9keS5zaW5nbGUtZXZlbnQgYXJ0aWNsZSAubWV0YSB1bC5zaGFyZTpmaXJzdC1jaGlsZCxcbiAgICBib2R5LnNpbmdsZS1wb3N0IGFydGljbGUgLm1ldGEgdWwuc2hhcmU6Zmlyc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7IH1cblxuYm9keS5zaW5nbGUtYmxvZyBhcnRpY2xlIC5sb2dvLFxuYm9keS5zaW5nbGUtZXZlbnQgYXJ0aWNsZSAubG9nbyxcbmJvZHkuc2luZ2xlLXBvc3QgYXJ0aWNsZSAubG9nbyB7XG4gIHdpZHRoOiAxMDAlO1xuICBmbG9hdDogbGVmdDtcbiAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gIHBhZGRpbmctbGVmdDogMC42MjVyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICBib2R5LnNpbmdsZS1ibG9nIGFydGljbGUgLmxvZ28sXG4gICAgYm9keS5zaW5nbGUtZXZlbnQgYXJ0aWNsZSAubG9nbyxcbiAgICBib2R5LnNpbmdsZS1wb3N0IGFydGljbGUgLmxvZ28ge1xuICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICBib2R5LnNpbmdsZS1ibG9nIGFydGljbGUgLmxvZ28sIGJvZHkuc2luZ2xlLWJsb2cgYXJ0aWNsZSAubG9nbzpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpLFxuICBib2R5LnNpbmdsZS1ldmVudCBhcnRpY2xlIC5sb2dvLFxuICBib2R5LnNpbmdsZS1ldmVudCBhcnRpY2xlIC5sb2dvOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCksXG4gIGJvZHkuc2luZ2xlLXBvc3QgYXJ0aWNsZSAubG9nbyxcbiAgYm9keS5zaW5nbGUtcG9zdCBhcnRpY2xlIC5sb2dvOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIGNsZWFyOiBub25lOyB9XG4gIGJvZHkuc2luZ2xlLWJsb2cgYXJ0aWNsZSAubG9nbzpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpLFxuICBib2R5LnNpbmdsZS1ldmVudCBhcnRpY2xlIC5sb2dvOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCksXG4gIGJvZHkuc2luZ2xlLXBvc3QgYXJ0aWNsZSAubG9nbzpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICBmbG9hdDogcmlnaHQ7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICBib2R5LnNpbmdsZS1ibG9nIGFydGljbGUgLmxvZ28sXG4gICAgYm9keS5zaW5nbGUtZXZlbnQgYXJ0aWNsZSAubG9nbyxcbiAgICBib2R5LnNpbmdsZS1wb3N0IGFydGljbGUgLmxvZ28ge1xuICAgICAgd2lkdGg6IDQxLjY2NjY3JTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgYm9keS5zaW5nbGUtYmxvZyBhcnRpY2xlIC5sb2dvLFxuICAgIGJvZHkuc2luZ2xlLWV2ZW50IGFydGljbGUgLmxvZ28sXG4gICAgYm9keS5zaW5nbGUtcG9zdCBhcnRpY2xlIC5sb2dvIHtcbiAgICAgIHdpZHRoOiAzMy4zMzMzMyU7IH0gfVxuICBib2R5LnNpbmdsZS1ibG9nIGFydGljbGUgLmxvZ28gaW1nLFxuICBib2R5LnNpbmdsZS1ldmVudCBhcnRpY2xlIC5sb2dvIGltZyxcbiAgYm9keS5zaW5nbGUtcG9zdCBhcnRpY2xlIC5sb2dvIGltZyB7XG4gICAgbWF4LXdpZHRoOiAxMi41cmVtOyB9XG5cbmJvZHkuc2luZ2xlLWJsb2cgYXJ0aWNsZSAuc2lkZWJhcixcbmJvZHkuc2luZ2xlLWV2ZW50IGFydGljbGUgLnNpZGViYXIsXG5ib2R5LnNpbmdsZS1wb3N0IGFydGljbGUgLnNpZGViYXIge1xuICB3aWR0aDogMTAwJTtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgYm9keS5zaW5nbGUtYmxvZyBhcnRpY2xlIC5zaWRlYmFyLFxuICAgIGJvZHkuc2luZ2xlLWV2ZW50IGFydGljbGUgLnNpZGViYXIsXG4gICAgYm9keS5zaW5nbGUtcG9zdCBhcnRpY2xlIC5zaWRlYmFyIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgYm9keS5zaW5nbGUtYmxvZyBhcnRpY2xlIC5zaWRlYmFyLCBib2R5LnNpbmdsZS1ibG9nIGFydGljbGUgLnNpZGViYXI6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSxcbiAgYm9keS5zaW5nbGUtZXZlbnQgYXJ0aWNsZSAuc2lkZWJhcixcbiAgYm9keS5zaW5nbGUtZXZlbnQgYXJ0aWNsZSAuc2lkZWJhcjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpLFxuICBib2R5LnNpbmdsZS1wb3N0IGFydGljbGUgLnNpZGViYXIsXG4gIGJvZHkuc2luZ2xlLXBvc3QgYXJ0aWNsZSAuc2lkZWJhcjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBjbGVhcjogbm9uZTsgfVxuICBib2R5LnNpbmdsZS1ibG9nIGFydGljbGUgLnNpZGViYXI6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSxcbiAgYm9keS5zaW5nbGUtZXZlbnQgYXJ0aWNsZSAuc2lkZWJhcjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpLFxuICBib2R5LnNpbmdsZS1wb3N0IGFydGljbGUgLnNpZGViYXI6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgZmxvYXQ6IHJpZ2h0OyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgYm9keS5zaW5nbGUtYmxvZyBhcnRpY2xlIC5zaWRlYmFyLFxuICAgIGJvZHkuc2luZ2xlLWV2ZW50IGFydGljbGUgLnNpZGViYXIsXG4gICAgYm9keS5zaW5nbGUtcG9zdCBhcnRpY2xlIC5zaWRlYmFyIHtcbiAgICAgIHdpZHRoOiA0MS42NjY2NyU7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIGJvZHkuc2luZ2xlLWJsb2cgYXJ0aWNsZSAuc2lkZWJhcixcbiAgICBib2R5LnNpbmdsZS1ldmVudCBhcnRpY2xlIC5zaWRlYmFyLFxuICAgIGJvZHkuc2luZ2xlLXBvc3QgYXJ0aWNsZSAuc2lkZWJhciB7XG4gICAgICB3aWR0aDogMzMuMzMzMzMlOyB9IH1cbiAgYm9keS5zaW5nbGUtYmxvZyBhcnRpY2xlIC5zaWRlYmFyIC5yZWxhdGVkLFxuICBib2R5LnNpbmdsZS1ldmVudCBhcnRpY2xlIC5zaWRlYmFyIC5yZWxhdGVkLFxuICBib2R5LnNpbmdsZS1wb3N0IGFydGljbGUgLnNpZGViYXIgLnJlbGF0ZWQge1xuICAgIG1hcmdpbi10b3A6IDIuNXJlbTsgfVxuICAgIGJvZHkuc2luZ2xlLWJsb2cgYXJ0aWNsZSAuc2lkZWJhciAucmVsYXRlZCBoMixcbiAgICBib2R5LnNpbmdsZS1ldmVudCBhcnRpY2xlIC5zaWRlYmFyIC5yZWxhdGVkIGgyLFxuICAgIGJvZHkuc2luZ2xlLXBvc3QgYXJ0aWNsZSAuc2lkZWJhciAucmVsYXRlZCBoMiB7XG4gICAgICBmb250LXNpemU6IDEwMCU7XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzBhMGEwYTtcbiAgICAgIHBhZGRpbmc6IDAgMCAwLjYyNXJlbTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDAuNjI1cmVtOyB9XG4gICAgYm9keS5zaW5nbGUtYmxvZyBhcnRpY2xlIC5zaWRlYmFyIC5yZWxhdGVkOmZpcnN0LWNoaWxkLFxuICAgIGJvZHkuc2luZ2xlLWV2ZW50IGFydGljbGUgLnNpZGViYXIgLnJlbGF0ZWQ6Zmlyc3QtY2hpbGQsXG4gICAgYm9keS5zaW5nbGUtcG9zdCBhcnRpY2xlIC5zaWRlYmFyIC5yZWxhdGVkOmZpcnN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi10b3A6IDA7IH1cblxuYm9keS5zaW5nbGUtY3RhIC5mdWxsLXdpZHRoIHtcbiAgcGFkZGluZzogMTIuNXJlbSAwIDMuMTI1cmVtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgYm9keS5zaW5nbGUtY3RhIC5mdWxsLXdpZHRoIGgzIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgYm9keS5zaW5nbGUtY3RhIC5mdWxsLXdpZHRoIC5idXR0b24sIGJvZHkuc2luZ2xlLWN0YSAuZnVsbC13aWR0aCAud3AtYmxvY2stYnV0dG9uIC53cC1ibG9jay1idXR0b25fX2xpbmssIC53cC1ibG9jay1idXR0b24gYm9keS5zaW5nbGUtY3RhIC5mdWxsLXdpZHRoIC53cC1ibG9jay1idXR0b25fX2xpbmssIGJvZHkuc2luZ2xlLWN0YSAuZnVsbC13aWR0aCBzZWN0aW9uLnByb21vLWxpc3RpbmcuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEsIHNlY3Rpb24ucHJvbW8tbGlzdGluZy5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYm9keS5zaW5nbGUtY3RhIC5mdWxsLXdpZHRoIGEsIGJvZHkuc2luZ2xlLWN0YSAuZnVsbC13aWR0aCBzZWN0aW9uLnByb21vLWxpc3RpbmctMi5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYSwgc2VjdGlvbi5wcm9tby1saXN0aW5nLTIuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGJvZHkuc2luZ2xlLWN0YSAuZnVsbC13aWR0aCBhIHtcbiAgICBtYXJnaW4tdG9wOiAzLjEyNXJlbTsgfVxuICBib2R5LnNpbmdsZS1jdGEgLmZ1bGwtd2lkdGggc2VjdGlvbiB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDsgfVxuXG5ib2R5LnNpbmdsZS1jdGEgLnNpZGViYXIge1xuICBwYWRkaW5nOiAxMi41cmVtIDAgMy4xMjVyZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICBib2R5LnNpbmdsZS1jdGEgLnNpZGViYXIgaDMge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuXG5ib2R5LnNpbmdsZS1jdGEgc2VjdGlvbiB7XG4gIHRleHQtYWxpZ246IGxlZnQ7IH1cblxubWFpbi5zZWFyY2gtcmVzdWx0cyB7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjY2FjYWNhOyB9XG4gIG1haW4uc2VhcmNoLXJlc3VsdHMgLnRpdGxlIHtcbiAgICBwYWRkaW5nLXRvcDogMy4xMjVyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMy4xMjVyZW07IH1cbiAgbWFpbi5zZWFyY2gtcmVzdWx0cyBhcnRpY2xlIHtcbiAgICBtYXJnaW4tYm90dG9tOiAzLjEyNXJlbTsgfVxuICBtYWluLnNlYXJjaC1yZXN1bHRzIC5yb3cgLnRpdGxlLFxuICBtYWluLnNlYXJjaC1yZXN1bHRzIC5yb3cgaGVhZGVyLFxuICBtYWluLnNlYXJjaC1yZXN1bHRzIC5yb3cgLmNvbnRlbnQge1xuICAgIG1heC13aWR0aDogNjIuNXJlbSAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07XG4gICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgbWFpbi5zZWFyY2gtcmVzdWx0cyAucm93IC50aXRsZSxcbiAgICAgIG1haW4uc2VhcmNoLXJlc3VsdHMgLnJvdyBoZWFkZXIsXG4gICAgICBtYWluLnNlYXJjaC1yZXN1bHRzIC5yb3cgLmNvbnRlbnQge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtOyB9IH1cblxuLnJvdy5ub25lIHtcbiAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDsgfVxuICAucm93Lm5vbmUgLnRpdGxlLFxuICAucm93Lm5vbmUgaGVhZGVyLFxuICAucm93Lm5vbmUgLmNvbnRlbnQge1xuICAgIG1heC13aWR0aDogNjIuNXJlbSAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07XG4gICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLnJvdy5ub25lIC50aXRsZSxcbiAgICAgIC5yb3cubm9uZSBoZWFkZXIsXG4gICAgICAucm93Lm5vbmUgLmNvbnRlbnQge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtOyB9IH1cbiAgLnJvdy5ub25lIC5jb250ZW50IHtcbiAgICB3aWR0aDogYXV0byAhaW1wb3J0YW50OyB9XG4gICAgLnJvdy5ub25lIC5jb250ZW50IGZvcm0ge1xuICAgICAgcGFkZGluZy1ib3R0b206IDMuMTI1cmVtOyB9XG4gIC5yb3cubm9uZSBidXR0b24ge1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIGNvbG9yOiAjMGEwYTBhO1xuICAgIGJvcmRlcjogMDsgfVxuICAgIC5yb3cubm9uZSBidXR0b246aG92ZXIge1xuICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7IH1cblxuQG1lZGlhIHByaW50IHtcbiAgLnNob3ctZm9yLXByaW50LW9ubHkge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gIC5yZXZlYWwge1xuICAgIGJhY2tncm91bmQ6IHdoaXRlICFpbXBvcnRhbnQ7IH1cbiAgbWFpbiB1bDpub3QoW2NsYXNzXSkgbGk6YmVmb3JlIHtcbiAgICBiYWNrZ3JvdW5kOiAjNjgwMGQyICFpbXBvcnRhbnQ7IH1cbiAgYTphZnRlciB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICBibG9ja3F1b3RlIHtcbiAgICBib3JkZXI6IDA7IH1cbiAgICBibG9ja3F1b3RlIHAge1xuICAgICAgZm9udC1zaXplOiAxLjMxMjVyZW07IH1cbiAgW2RhdGEtYW9zXj1cImZhZGVcIl0ge1xuICAgIHRyYW5zZm9ybTogbm9uZSAhaW1wb3J0YW50O1xuICAgIG9wYWNpdHk6IDEgIWltcG9ydGFudDsgfVxuICAuYnV0dG9uLCAud3AtYmxvY2stYnV0dG9uIC53cC1ibG9jay1idXR0b25fX2xpbmssIHNlY3Rpb24ucHJvbW8tbGlzdGluZy5jb250YWN0IC5iZy1pbWFnZSBwOmxhc3QtY2hpbGQgYSwgc2VjdGlvbi5wcm9tby1saXN0aW5nLTIuY29udGFjdCAuYmctaW1hZ2UgcDpsYXN0LWNoaWxkIGEge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuICAuYmctaW1hZ2Uge1xuICAgIGJhY2tncm91bmQ6IG5vbmUgIWltcG9ydGFudDsgfVxuICAgIC5iZy1pbWFnZTpiZWZvcmUsIC5iZy1pbWFnZTphZnRlciB7XG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cbiAgbWFpbiBzZWN0aW9uIHtcbiAgICBwYWRkaW5nLXRvcDogMi41cmVtO1xuICAgIHBhZGRpbmctYm90dG9tOiAyLjVyZW07IH1cbiAgaGVhZGVyIC5zdGlja3ktY29udGFpbmVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgaGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7IH1cbiAgaGVhZGVyIC50b3AtYmFyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDsgfVxuICAgIGhlYWRlciAudG9wLWJhciBzdmcjZ2FtbWEtbG9nby1kZXNrdG9wIC5zdDAge1xuICAgICAgZmlsbDogIzY4MDBkMiAhaW1wb3J0YW50OyB9XG4gICAgaGVhZGVyIC50b3AtYmFyIHN2ZyNnYW1tYS1sb2dvLWRlc2t0b3AgZyBwYXRoIHtcbiAgICAgIGZpbGw6IGluaGVyaXQgIWltcG9ydGFudDsgfVxuICAgIGhlYWRlciAudG9wLWJhciAudG9wLWJhci1yaWdodCB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9XG4gIHNlY3Rpb24uaGVyby1zbGlkZSAuc2xpZGUge1xuICAgIG1pbi1oZWlnaHQ6IDAgIWltcG9ydGFudDtcbiAgICBiYWNrZ3JvdW5kOiBub25lICFpbXBvcnRhbnQ7IH1cbiAgICBib2R5LnBhZ2UtdGVtcGxhdGUtcGFnZS1jb250YWN0IHNlY3Rpb24uaGVyby1zbGlkZSAuc2xpZGUge1xuICAgICAgYmFja2dyb3VuZDogbm9uZSAhaW1wb3J0YW50OyB9XG4gICAgc2VjdGlvbi5oZXJvLXNsaWRlIC5zbGlkZSAuYmctaW1hZ2Uge1xuICAgICAgbWluLWhlaWdodDogMCAhaW1wb3J0YW50OyB9XG4gICAgc2VjdGlvbi5oZXJvLXNsaWRlIC5zbGlkZSAuY29udGVudCAudGV4dCB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBtYXgtd2lkdGg6IG5vbmU7IH1cbiAgICBzZWN0aW9uLmhlcm8tc2xpZGUgLnNsaWRlIC50aXRsZSBoMSB7XG4gICAgICBwYWRkaW5nLXRvcDogMi41cmVtICFpbXBvcnRhbnQ7IH1cbiAgc2VjdGlvbi5pbnRybyAuY29udGVudCB7XG4gICAgd2lkdGg6IDUwJTsgfVxuICBzZWN0aW9uLnByb21vLWxpc3RpbmcgLnJvdyAuY29udGVudC5sYWJlbGxlZCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWF4LXdpZHRoOiBub25lOyB9XG4gIHNlY3Rpb24ucHJvbW8tbGlzdGluZyAuYmctaW1hZ2Uge1xuICAgIG1pbi1oZWlnaHQ6IDA7IH1cbiAgdWwudGFicyB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICAudGFicy1wYW5lbCB7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cbiAgc2VjdGlvbi50YWJiZWQtY29udGVudCAucm93IC5pbnRybyB7XG4gICAgd2lkdGg6IGF1dG87IH1cbiAgLnJvdy5zaWducG9zdHMgLnNpZ25wb3N0IGltZyB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICAucm93LnNpZ25wb3N0cyBhIGgzOmFmdGVyIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIHNlY3Rpb24uc2lnbnBvc3Qge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNjYWNhY2E7IH1cbiAgICBzZWN0aW9uLnNpZ25wb3N0IC5yb3cgLmNvbnRlbnQge1xuICAgICAgd2lkdGg6IGF1dG87IH1cbiAgICBzZWN0aW9uLnNpZ25wb3N0LnRlc3RpbW9uaWFscyB7XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2NhY2FjYTsgfVxuICAgICAgc2VjdGlvbi5zaWducG9zdC50ZXN0aW1vbmlhbHMgLnJvdyAuY29udGVudCB7XG4gICAgICAgIHdpZHRoOiA1MCU7IH1cbiAgc2VjdGlvbi5uZXdzIC5yb3cgLmFydGljbGUge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNjYWNhY2E7IH1cbiAgc2VjdGlvbi5uZXdzIC5yb3cgLmluc2lnaHRzIC5hcnRpY2xlIGEgaDIge1xuICAgIGZvbnQtc2l6ZTogMnJlbTsgfVxuICBzZWN0aW9uLm5ld3MucHJvZHVjdHMgLm5ld3MgLmFydGljbGUge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICM4YThhOGE7IH1cbiAgICBzZWN0aW9uLm5ld3MucHJvZHVjdHMgLm5ld3MgLmFydGljbGUgLmJnLWltYWdlOmJlZm9yZSB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9XG4gIHNlY3Rpb24uc2hvd2Nhc2UgLnJvdyAuY29udGVudCA+IGltZyxcbiAgc2VjdGlvbi5zaG93Y2FzZSAucm93IC5jb250ZW50ID4gcGljdHVyZSB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICBzZWN0aW9uLnNwbGl0LXNpZ25wb3N0cyAuc2lnbnBvc3QgYSBoMyB7XG4gICAgY29sb3I6ICNmZWZlZmUgIWltcG9ydGFudDtcbiAgICBmb250LXNpemU6IDIuNjI1cmVtICFpbXBvcnRhbnQ7IH1cbiAgc2VjdGlvbi5zcGxpdC1zaWducG9zdHMgLnNpZ25wb3N0IC5yb3cgLmNvbnRlbnQge1xuICAgIHotaW5kZXg6IDI7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIHNlY3Rpb24uc3BsaXQtc2lnbnBvc3RzLnBhbmVscyAuaW1hZ2VzIC5hcnRpY2xlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjY2FjYWNhOyB9XG4gICAgc2VjdGlvbi5zcGxpdC1zaWducG9zdHMucGFuZWxzIC5pbWFnZXMgLmFydGljbGUgYSBpbWcsIHNlY3Rpb24uc3BsaXQtc2lnbnBvc3RzLnBhbmVscyAuaW1hZ2VzIC5hcnRpY2xlIC5uby1saW5rIGltZyB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9IH1cbiIsIi8qKlxuICogRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuICogVmVyc2lvbiA2LjUuMVxuICogZm91bmRhdGlvbi56dXJiLmNvbVxuICogTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG4gKi9cblxuLy8gRGVwZW5kZW5jaWVzXG5AaW1wb3J0ICd2ZW5kb3Ivbm9ybWFsaXplJztcbkBpbXBvcnQgJy4uL192ZW5kb3Ivc2Fzc3ktbGlzdHMvc3R5bGVzaGVldHMvaGVscGVycy9taXNzaW5nLWRlcGVuZGVuY2llcyc7XG5AaW1wb3J0ICcuLi9fdmVuZG9yL3Nhc3N5LWxpc3RzL3N0eWxlc2hlZXRzL2hlbHBlcnMvdHJ1ZSc7XG5AaW1wb3J0ICcuLi9fdmVuZG9yL3Nhc3N5LWxpc3RzL3N0eWxlc2hlZXRzL2Z1bmN0aW9ucy9jb250YWluJztcbkBpbXBvcnQgJy4uL192ZW5kb3Ivc2Fzc3ktbGlzdHMvc3R5bGVzaGVldHMvZnVuY3Rpb25zL3B1cmdlJztcbkBpbXBvcnQgJy4uL192ZW5kb3Ivc2Fzc3ktbGlzdHMvc3R5bGVzaGVldHMvZnVuY3Rpb25zL3JlbW92ZSc7XG5AaW1wb3J0ICcuLi9fdmVuZG9yL3Nhc3N5LWxpc3RzL3N0eWxlc2hlZXRzL2Z1bmN0aW9ucy9yZXBsYWNlJztcbkBpbXBvcnQgJy4uL192ZW5kb3Ivc2Fzc3ktbGlzdHMvc3R5bGVzaGVldHMvZnVuY3Rpb25zL3RvLWxpc3QnO1xuXG4vLyAtLS0gU2V0dGluZ3MgLS0tXG4vLyBpbXBvcnQgeW91ciBvd24gYHNldHRpbmdzYCBoZXJlIG9yXG4vLyBpbXBvcnQgYW5kIG1vZGlmeSB0aGUgZGVmYXVsdCBzZXR0aW5ncyB0aHJvdWdoXG4vLyBAaW1wb3J0ICdzZXR0aW5ncy9zZXR0aW5ncyc7XG5cbi8vIC0tLSBDb21wb25lbnRzIC0tLVxuLy8gVXRpbGl0aWVzXG5AaW1wb3J0ICd1dGlsL3V0aWwnO1xuLy8gR2xvYmFsIHN0eWxlc1xuQGltcG9ydCAnZ2xvYmFsJztcbkBpbXBvcnQgJ2Zvcm1zL2Zvcm1zJztcbkBpbXBvcnQgJ3R5cG9ncmFwaHkvdHlwb2dyYXBoeSc7XG5cbi8vIEdyaWRzXG5AaW1wb3J0ICdncmlkL2dyaWQnO1xuQGltcG9ydCAneHktZ3JpZC94eS1ncmlkJztcbi8vIEdlbmVyaWMgY29tcG9uZW50c1xuQGltcG9ydCAnY29tcG9uZW50cy9idXR0b24nO1xuQGltcG9ydCAnY29tcG9uZW50cy9idXR0b24tZ3JvdXAnO1xuQGltcG9ydCAnY29tcG9uZW50cy9jbG9zZS1idXR0b24nO1xuQGltcG9ydCAnY29tcG9uZW50cy9sYWJlbCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3Byb2dyZXNzLWJhcic7XG5AaW1wb3J0ICdjb21wb25lbnRzL3NsaWRlcic7XG5AaW1wb3J0ICdjb21wb25lbnRzL3N3aXRjaCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3RhYmxlJztcbi8vIEJhc2ljIGNvbXBvbmVudHNcbkBpbXBvcnQgJ2NvbXBvbmVudHMvYmFkZ2UnO1xuQGltcG9ydCAnY29tcG9uZW50cy9icmVhZGNydW1icyc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2NhbGxvdXQnO1xuQGltcG9ydCAnY29tcG9uZW50cy9jYXJkJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvZHJvcGRvd24nO1xuQGltcG9ydCAnY29tcG9uZW50cy9wYWdpbmF0aW9uJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvdG9vbHRpcCc7XG5cbi8vIENvbnRhaW5lcnNcbkBpbXBvcnQgJ2NvbXBvbmVudHMvYWNjb3JkaW9uJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvbWVkaWEtb2JqZWN0JztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvb3JiaXQnO1xuQGltcG9ydCAnY29tcG9uZW50cy9yZXNwb25zaXZlLWVtYmVkJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvdGFicyc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3RodW1ibmFpbCc7XG4vLyBNZW51LWJhc2VkIGNvbnRhaW5lcnNcbkBpbXBvcnQgJ2NvbXBvbmVudHMvbWVudSc7XG5AaW1wb3J0ICdjb21wb25lbnRzL21lbnUtaWNvbic7XG5AaW1wb3J0ICdjb21wb25lbnRzL2FjY29yZGlvbi1tZW51JztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvZHJpbGxkb3duJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvZHJvcGRvd24tbWVudSc7XG5cbi8vIExheW91dCBjb21wb25lbnRzXG5AaW1wb3J0ICdjb21wb25lbnRzL29mZi1jYW52YXMnO1xuQGltcG9ydCAnY29tcG9uZW50cy9yZXZlYWwnO1xuQGltcG9ydCAnY29tcG9uZW50cy9zdGlja3knO1xuQGltcG9ydCAnY29tcG9uZW50cy90aXRsZS1iYXInO1xuQGltcG9ydCAnY29tcG9uZW50cy90b3AtYmFyJztcblxuLy8gSGVscGVyc1xuQGltcG9ydCAnY29tcG9uZW50cy9mbG9hdCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2ZsZXgnO1xuQGltcG9ydCAnY29tcG9uZW50cy92aXNpYmlsaXR5JztcbkBpbXBvcnQgJ3Byb3RvdHlwZS9wcm90b3R5cGUnO1xuXG5cbkBtaXhpbiBmb3VuZGF0aW9uLWV2ZXJ5dGhpbmcoXG4gICRmbGV4OiB0cnVlLFxuICAkcHJvdG90eXBlOiBmYWxzZVxuKSB7XG4gIEBpZiAkZmxleCB7XG4gICAgJGdsb2JhbC1mbGV4Ym94OiB0cnVlICFnbG9iYWw7XG4gIH1cblxuICAvLyBHbG9iYWwgc3R5bGVzXG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tZ2xvYmFsLXN0eWxlcztcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1mb3JtcztcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi10eXBvZ3JhcGh5O1xuXG4gIC8vIEdyaWRzXG4gIEBpZiBub3QgJGZsZXgge1xuICAgIEBpbmNsdWRlIGZvdW5kYXRpb24tZ3JpZDtcbiAgfVxuICBAZWxzZSB7XG4gICAgQGlmICR4eS1ncmlkIHtcbiAgICAgIEBpbmNsdWRlIGZvdW5kYXRpb24teHktZ3JpZC1jbGFzc2VzO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBAaW5jbHVkZSBmb3VuZGF0aW9uLWZsZXgtZ3JpZDtcbiAgICB9XG4gIH1cblxuICAvLyBHZW5lcmljIGNvbXBvbmVudHNcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1idXR0b247XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tYnV0dG9uLWdyb3VwO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWNsb3NlLWJ1dHRvbjtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1sYWJlbDtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1wcm9ncmVzcy1iYXI7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tc2xpZGVyO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXN3aXRjaDtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi10YWJsZTtcbiAgLy8gQmFzaWMgY29tcG9uZW50c1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWJhZGdlO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWJyZWFkY3J1bWJzO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWNhbGxvdXQ7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tY2FyZDtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1kcm9wZG93bjtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1wYWdpbmF0aW9uO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXRvb2x0aXA7XG5cbiAgLy8gQ29udGFpbmVyc1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWFjY29yZGlvbjtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1tZWRpYS1vYmplY3Q7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tb3JiaXQ7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tcmVzcG9uc2l2ZS1lbWJlZDtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi10YWJzO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXRodW1ibmFpbDtcbiAgLy8gTWVudS1iYXNlZCBjb250YWluZXJzXG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tbWVudTtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1tZW51LWljb247XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tYWNjb3JkaW9uLW1lbnU7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tZHJpbGxkb3duLW1lbnU7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tZHJvcGRvd24tbWVudTtcblxuICAvLyBMYXlvdXQgY29tcG9uZW50c1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLW9mZi1jYW52YXM7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tcmV2ZWFsO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXN0aWNreTtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi10aXRsZS1iYXI7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tdG9wLWJhcjtcblxuICAvLyBIZWxwZXJzXG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tZmxvYXQtY2xhc3NlcztcbiAgQGlmICRmbGV4IHsgQGluY2x1ZGUgZm91bmRhdGlvbi1mbGV4LWNsYXNzZXM7IH1cbiAgQGluY2x1ZGUgZm91bmRhdGlvbi12aXNpYmlsaXR5LWNsYXNzZXM7XG4gIEBpZiAkcHJvdG90eXBlIHsgQGluY2x1ZGUgZm91bmRhdGlvbi1wcm90b3R5cGUtY2xhc3NlczsgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgYnJlYWtwb2ludHNcbi8vLy9cblxuLy8vIEEgbGlzdCBvZiBuYW1lZCBicmVha3BvaW50cy4gWW91IGNhbiB1c2UgdGhlc2Ugd2l0aCB0aGUgYGJyZWFrcG9pbnQoKWAgbWl4aW4gdG8gcXVpY2tseSBjcmVhdGUgbWVkaWEgcXVlcmllcy5cbi8vLyBAdHlwZSBNYXBcbiRicmVha3BvaW50czogKFxuICBzbWFsbDogMCxcbiAgbWVkaXVtOiA2NDBweCxcbiAgbGFyZ2U6IDEwMjRweCxcbiAgeGxhcmdlOiAxMjAwcHgsXG4gIHh4bGFyZ2U6IDE0NDBweCxcbikgIWRlZmF1bHQ7XG5cbi8vLyBUaGUgbGFyZ2VzdCBuYW1lZCBicmVha3BvaW50IGluIHdoaWNoIHRvIGluY2x1ZGUgcHJpbnQgYXMgYSBtZWRpYSB0eXBlXG4vLy8gQHR5cGUgS2V5d29yZFxuJHByaW50LWJyZWFrcG9pbnQ6IGxhcmdlICFkZWZhdWx0O1xuXG4kLXpmLXplcm8tYnJlYWtwb2ludDogc21hbGwgIWRlZmF1bHQ7XG5cbiQtemYtYnJlYWtwb2ludHMta2V5czogbWFwLXRvLWxpc3QoJGJyZWFrcG9pbnRzLCAna2V5cycpO1xuXG5AaWYgbnRoKG1hcC12YWx1ZXMoJGJyZWFrcG9pbnRzKSwgMSkgIT0gMCB7XG4gIEBlcnJvciAnVGhlIGZpcnN0IGtleSBpbiB0aGUgJGJyZWFrcG9pbnRzIG1hcCBtdXN0IGhhdmUgYSB2YWx1ZSBvZiBcIjBcIi4nO1xufVxuQGVsc2Uge1xuICAkLXpmLXplcm8tYnJlYWtwb2ludDogbnRoKG1hcC1rZXlzKCRicmVha3BvaW50cyksIDEpO1xufVxuXG4vLy8gQWxsIG9mIHRoZSBuYW1lcyBpbiB0aGlzIGxpc3Qgd2lsbCBiZSBvdXRwdXQgYXMgY2xhc3NlcyBpbiB5b3VyIENTUywgbGlrZSBgLnNtYWxsLTEyYCwgYC5tZWRpdW0tNmAsIGFuZCBzbyBvbi4gRWFjaCB2YWx1ZSBpbiB0aGlzIGxpc3QgbXVzdCBhbHNvIGJlIGluIHRoZSBgJGJyZWFrcG9pbnRzYCBtYXAuXG4vLy8gQHR5cGUgTGlzdFxuJGJyZWFrcG9pbnQtY2xhc3NlczogKHNtYWxsIG1lZGl1bSBsYXJnZSkgIWRlZmF1bHQ7XG5cbi8vLyBHZW5lcmF0ZXMgYSBtZWRpYSBxdWVyeSBzdHJpbmcgbWF0Y2hpbmcgdGhlIGlucHV0IHZhbHVlLiBSZWZlciB0byB0aGUgZG9jdW1lbnRhdGlvbiBmb3IgdGhlIGBicmVha3BvaW50KClgIG1peGluIHRvIHNlZSB3aGF0IHRoZSBwb3NzaWJsZSBpbnB1dHMgYXJlLlxuLy8vXG4vLy8gQHBhcmFtIHtLZXl3b3JkfE51bWJlcn0gJHZhbCBbc21hbGxdIC0gQnJlYWtwb2ludCBuYW1lLCBvciBweCwgcmVtLCBvciBlbSB2YWx1ZSB0byBwcm9jZXNzLlxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQoJHZhbDogJC16Zi16ZXJvLWJyZWFrcG9pbnQpIHtcbiAgLy8gU2l6ZSBvciBrZXl3b3JkXG4gICRicDogbnRoKCR2YWwsIDEpO1xuICAvLyBWYWx1ZSBmb3IgbWF4LXdpZHRoIG1lZGlhIHF1ZXJpZXNcbiAgJGJwLW1heDogMDtcbiAgLy8gRGlyZWN0aW9uIG9mIG1lZGlhIHF1ZXJ5ICh1cCwgZG93biwgb3Igb25seSlcbiAgJGRpcjogaWYobGVuZ3RoKCR2YWwpID4gMSwgbnRoKCR2YWwsIDIpLCB1cCk7XG4gIC8vIEV2ZW50dWFsIG91dHB1dFxuICAkc3RyOiAnJztcbiAgLy8gSXMgaXQgYSBuYW1lZCBtZWRpYSBxdWVyeT9cbiAgJG5hbWVkOiBmYWxzZTtcblxuICAvLyBPcmllbnRhdGlvbiBtZWRpYSBxdWVyaWVzIGhhdmUgYSB1bmlxdWUgc3ludGF4XG4gIEBpZiAkYnAgPT0gJ2xhbmRzY2FwZScgb3IgJGJwID09ICdwb3J0cmFpdCcge1xuICAgIEByZXR1cm4gJyhvcmllbnRhdGlvbjogI3skYnB9KSc7XG4gIH1cbiAgQGVsc2UgaWYgJGJwID09ICdyZXRpbmEnIHtcbiAgICBAcmV0dXJuICcoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAyKSwgKG1pbi1yZXNvbHV0aW9uOiAxOTJkcGkpJztcbiAgfVxuXG4gIC8vIFRyeSB0byBwdWxsIGEgbmFtZWQgYnJlYWtwb2ludCBvdXQgb2YgdGhlICRicmVha3BvaW50cyBtYXBcbiAgQGlmIHR5cGUtb2YoJGJwKSA9PSAnc3RyaW5nJyB7XG4gICAgQGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgJGJwKSB7XG4gICAgICBAaWYgJGRpciA9PSAnb25seScgb3IgJGRpciA9PSAnZG93bicge1xuICAgICAgICAkYnAtbWF4OiAtemYtbWFwLW5leHQoJGJyZWFrcG9pbnRzLCAkYnApO1xuICAgICAgfVxuXG4gICAgICAkYnA6IG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAkYnApO1xuICAgICAgJG5hbWVkOiB0cnVlO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICAkYnA6IDA7XG4gICAgICBAd2FybiAnYnJlYWtwb2ludCgpOiBcIiN7JHZhbH1cIiBpcyBub3QgZGVmaW5lZCBpbiB5b3VyICRicmVha3BvaW50cyBzZXR0aW5nLic7XG4gICAgfVxuICB9XG5cbiAgLy8gQ29udmVydCBhbnkgcGl4ZWwsIHJlbSwgb3IgdW5pdGxlc3MgdmFsdWUgdG8gZW1cbiAgJGJwOiAtemYtYnAtdG8tZW0oJGJwKTtcbiAgLy8gTWF4IHZhbHVlIGlzIDAuMnB4IHVuZGVyIHRoZSBuZXh0IGJyZWFrcG9pbnQgKDAuMDIgLyAxNiA9IDAuMDAxMjUpLlxuICAvLyBVc2UgYSBwcmVjaXNpb24gdW5kZXIgMXB4IHRvIHN1cHBvcnQgYnJvd3NlciB6b29tLCBidXQgbm90IHRvIGxvdyB0byBhdm9pZCByb3VuZGluZy5cbiAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS96dXJiL2ZvdW5kYXRpb24tc2l0ZXMvaXNzdWVzLzExMzEzXG4gIEBpZiAkYnAtbWF4IHtcbiAgICAkYnAtbWF4OiAtemYtYnAtdG8tZW0oJGJwLW1heCkgLSAuMDAxMjU7XG4gIH1cblxuICAvLyBDb25kaXRpb25zIHRvIHNraXAgbWVkaWEgcXVlcnkgY3JlYXRpb25cbiAgLy8gLSBJdCdzIGEgbmFtZWQgYnJlYWtwb2ludCB0aGF0IHJlc29sdmVkIHRvIFwiMCBkb3duXCIgb3IgXCIwIHVwXCJcbiAgLy8gLSBJdCdzIGEgbnVtZXJpYyBicmVha3BvaW50IHRoYXQgcmVzb2x2ZWQgdG8gXCIwIFwiICsgYW55dGhpbmdcbiAgQGlmICRicCA+IDBlbSBvciAkZGlyID09ICdvbmx5JyBvciAkZGlyID09ICdkb3duJyB7XG4gICAgLy8gYG9ubHlgIHJhbmdlcyB1c2UgdGhlIGZvcm1hdCBgKG1pbi13aWR0aDogbikgYW5kIChtYXgtd2lkdGg6IG4pYFxuICAgIEBpZiAkZGlyID09ICdvbmx5JyB7XG4gICAgICAvLyBPbmx5IG5hbWVkIG1lZGlhIHF1ZXJpZXMgY2FuIGhhdmUgYW4gXCJvbmx5XCIgcmFuZ2VcbiAgICAgIEBpZiAkbmFtZWQgPT0gdHJ1ZSB7XG4gICAgICAgIC8vIE9ubHkgdXNlIFwibWluLXdpZHRoXCIgaWYgdGhlIGZsb29yIGlzIGdyZWF0ZXIgdGhhbiAwXG4gICAgICAgIEBpZiAkYnAgPiAwZW0ge1xuICAgICAgICAgICRzdHI6ICRzdHIgKyAnKG1pbi13aWR0aDogI3skYnB9KSc7XG5cbiAgICAgICAgICAvLyBPbmx5IGFkZCBcImFuZFwiIHRvIHRoZSBtZWRpYSBxdWVyeSBpZiB0aGVyZSdzIGEgY2VpbGluZ1xuICAgICAgICAgIEBpZiAkYnAtbWF4ICE9IG51bGwge1xuICAgICAgICAgICAgJHN0cjogJHN0ciArICcgYW5kICc7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLy8gT25seSB1c2UgXCJtYXgtd2lkdGhcIiBpZiB0aGVyZSdzIGEgY2VpbGluZ1xuICAgICAgICBAaWYgJGJwLW1heCAhPSBudWxsIHtcbiAgICAgICAgICAkc3RyOiAkc3RyICsgJyhtYXgtd2lkdGg6ICN7JGJwLW1heH0pJztcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICBAd2FybiAnYnJlYWtwb2ludCgpOiBPbmx5IG5hbWVkIG1lZGlhIHF1ZXJpZXMgY2FuIGhhdmUgYW4gYG9ubHlgIHJhbmdlLic7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gYGRvd25gIHJhbmdlcyB1c2UgdGhlIGZvcm1hdCBgKG1heC13aWR0aDogbilgXG4gICAgQGVsc2UgaWYgJGRpciA9PSAnZG93bicge1xuICAgICAgJG1heDogaWYoJG5hbWVkLCAkYnAtbWF4LCAkYnApO1xuXG4gICAgICAvLyBTa2lwIG1lZGlhIHF1ZXJ5IGNyZWF0aW9uIGlmIGlucHV0IHZhbHVlIGlzIGV4YWN0bHkgXCIwIGRvd25cIixcbiAgICAgIC8vIHVubGVzcyB0aGUgZnVuY3Rpb24gd2FzIGNhbGxlZCBhcyBcInNtYWxsIGRvd25cIiwgaW4gd2hpY2ggY2FzZSBpdCdzIGp1c3QgXCJzbWFsbCBvbmx5XCJcbiAgICAgIEBpZiAkbmFtZWQgb3IgJGJwID4gMGVtIHtcbiAgICAgICAgQGlmICRtYXggIT0gbnVsbCB7XG4gICAgICAgICAgJHN0cjogJHN0ciArICcobWF4LXdpZHRoOiAjeyRtYXh9KSc7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBgdXBgIHJhbmdlcyB1c2UgdGhlIGZvcm1hdCBgKG1pbi13aWR0aDogbilgXG4gICAgQGVsc2UgaWYgJGJwID4gMGVtIHtcbiAgICAgICRzdHI6ICRzdHIgKyAnKG1pbi13aWR0aDogI3skYnB9KSc7XG4gICAgfVxuICB9XG5cbiAgQHJldHVybiAkc3RyO1xufVxuXG4vLy8gV3JhcHMgYSBtZWRpYSBxdWVyeSBhcm91bmQgdGhlIGNvbnRlbnQgeW91IHB1dCBpbnNpZGUgdGhlIG1peGluLiBUaGlzIG1peGluIGFjY2VwdHMgYSBudW1iZXIgb2YgdmFsdWVzOlxuLy8vICAtIElmIGEgc3RyaW5nIGlzIHBhc3NlZCwgdGhlIG1peGluIHdpbGwgbG9vayBmb3IgaXQgaW4gdGhlIGAkYnJlYWtwb2ludHNgIG1hcCwgYW5kIHVzZSBhIG1lZGlhIHF1ZXJ5IHRoZXJlLlxuLy8vICAtIElmIGEgcGl4ZWwgdmFsdWUgaXMgcGFzc2VkLCBpdCB3aWxsIGJlIGNvbnZlcnRlZCB0byBhbiBlbSB2YWx1ZSB1c2luZyBgJGdsb2JhbC1mb250LXNpemVgIGFzIHRoZSBiYXNlLlxuLy8vICAtIElmIGEgcmVtIHZhbHVlIGlzIHBhc3NlZCwgdGhlIHVuaXQgd2lsbCBiZSBjaGFuZ2VkIHRvIGVtLlxuLy8vICAtIElmIGFuIGVtIHZhbHVlIGlzIHBhc3NlZCwgdGhlIHZhbHVlIHdpbGwgYmUgdXNlZCBhcy1pcy5cbi8vL1xuLy8vIEBwYXJhbSB7S2V5d29yZHxOdW1iZXJ9ICR2YWx1ZSAtIEJyZWFrcG9pbnQgbmFtZSwgb3IgcHgsIHJlbSwgb3IgZW0gdmFsdWUgdG8gcHJvY2Vzcy5cbi8vL1xuLy8vIEBvdXRwdXQgSWYgdGhlIGJyZWFrcG9pbnQgaXMgXCIwcHggYW5kIGxhcmdlclwiLCBvdXRwdXRzIHRoZSBjb250ZW50IGFzLWlzLiBPdGhlcndpc2UsIG91dHB1dHMgdGhlIGNvbnRlbnQgd3JhcHBlZCBpbiBhIG1lZGlhIHF1ZXJ5LlxuQG1peGluIGJyZWFrcG9pbnQoJHZhbHVlKSB7XG4gICRzdHI6IGJyZWFrcG9pbnQoJHZhbHVlKTtcbiAgJGJwOiBpbmRleCgkLXpmLWJyZWFrcG9pbnRzLWtleXMsICR2YWx1ZSk7XG4gICRwYnA6IGluZGV4KCQtemYtYnJlYWtwb2ludHMta2V5cywgJHByaW50LWJyZWFrcG9pbnQpO1xuXG4gICRvbGQtemYtc2l6ZTogbnVsbDtcblxuICAvLyBNYWtlIGJyZWFrcG9pbnQgc2l6ZSBhdmFpbGFibGUgYXMgYSB2YXJpYWJsZVxuICBAaWYgZ2xvYmFsLXZhcmlhYmxlLWV4aXN0cygtemYtc2l6ZSkge1xuICAgICRvbGQtemYtc2l6ZTogJC16Zi1zaXplO1xuICB9XG4gICQtemYtc2l6ZTogbnRoKCR2YWx1ZSwgMSkgIWdsb2JhbDsgLy8gZ2V0IHRoZSBmaXJzdCB2YWx1ZSB0byBhY2NvdW50IGZvciBgb25seWAgYW5kIGBkb3duYCBrZXl3b3Jkc1xuXG4gIC8vIElmICRzdHIgaXMgc3RpbGwgYW4gZW1wdHkgc3RyaW5nLCBubyBtZWRpYSBxdWVyeSBpcyBuZWVkZWRcbiAgQGlmICRzdHIgPT0gJycge1xuICAgIEBjb250ZW50O1xuICB9XG5cbiAgLy8gT3RoZXJ3aXNlLCB3cmFwIHRoZSBjb250ZW50IGluIGEgbWVkaWEgcXVlcnlcbiAgQGVsc2Uge1xuICAgIC8vIEZvciBuYW1lZCBicmVha3BvaW50cyBsZXNzIHRoYW4gb3IgZXF1YWwgdG8gJHByaW50LWJyZWFrcG9pbnQsIGFkZCBwcmludCB0byB0aGUgbWVkaWEgdHlwZXNcbiAgICBAaWYgJGJwICE9IG51bGwgYW5kICRicCA8PSAkcGJwIHtcbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAjeyRzdHJ9IHtcbiAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgfVxuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAjeyRzdHJ9IHtcbiAgICAgICAgQGNvbnRlbnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJC16Zi1zaXplOiAkb2xkLXpmLXNpemUgIWdsb2JhbDtcbn1cblxuLy8vIENvbnZlcnRzIHRoZSBicmVha3BvaW50cyBtYXAgdG8gYSBVUkwtZW5jb2RlZCBzdHJpbmcsIGxpa2UgdGhpczogYGtleTE9dmFsdWUxJmtleTI9dmFsdWUyYC4gVGhlIHZhbHVlIGlzIHRoZW4gZHJvcHBlZCBpbnRvIHRoZSBDU1MgZm9yIGEgc3BlY2lhbCBgPG1ldGE+YCB0YWcsIHdoaWNoIGlzIHJlYWQgYnkgdGhlIEZvdW5kYXRpb24gSmF2YVNjcmlwdC4gVGhpcyBpcyBob3cgd2UgdHJhbnNmZXIgdmFsdWVzIGZyb20gU2FzcyB0byBKYXZhU2NyaXB0LCBzbyB0aGV5IGNhbiBiZSBkZWZpbmVkIGluIG9uZSBwbGFjZS5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7TWFwfSAkbWFwIC0gTWFwIHRvIGNvbnZlcnQuXG4vLy9cbi8vLyBAcmV0dXJucyB7U3RyaW5nfSBBIHN0cmluZyBjb250YWluaW5nIHRoZSBtYXAncyBjb250ZW50cy5cbkBmdW5jdGlvbiAtemYtYnAtc2VyaWFsaXplKCRtYXApIHtcbiAgJHN0cjogJyc7XG4gIEBlYWNoICRrZXksICR2YWx1ZSBpbiAkbWFwIHtcbiAgICAkc3RyOiAkc3RyICsgJGtleSArICc9JyArIC16Zi1icC10by1lbSgkdmFsdWUpICsgJyYnO1xuICB9XG4gICRzdHI6IHN0ci1zbGljZSgkc3RyLCAxLCAtMik7XG5cbiAgQHJldHVybiAkc3RyO1xufVxuXG4vLy8gRmluZCB0aGUgbmV4dCBrZXkgaW4gYSBtYXAuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy9cbi8vLyBAcGFyYW0ge01hcH0gJG1hcCAtIE1hcCB0byB0cmF2ZXJzZS5cbi8vLyBAcGFyYW0ge01peGVkfSAka2V5IC0gS2V5IHRvIHVzZSBhcyBhIHN0YXJ0aW5nIHBvaW50LlxuLy8vXG4vLy8gQHJldHVybnMge01peGVkfSBUaGUgdmFsdWUgZm9yIHRoZSBrZXkgYWZ0ZXIgYCRrZXlgLCBpZiBgJGtleWAgd2FzIGZvdW5kLiBJZiBgJGtleWAgd2FzIG5vdCBmb3VuZCwgb3IgYCRrZXlgIHdhcyB0aGUgbGFzdCB2YWx1ZSBpbiB0aGUgbWFwLCByZXR1cm5zIGBudWxsYC5cbkBmdW5jdGlvbiAtemYtbWFwLW5leHQoJG1hcCwgJGtleSkge1xuXG4gIC8vIFN0b3JlIHRoZSBrZXlzIG9mIHRoZSBtYXAgYXMgYSBsaXN0XG4gICR2YWx1ZXM6IG1hcC1rZXlzKCRtYXApO1xuXG4gICRpOiAwO1xuXG4gIC8vIElmIHRoZSBLZXkgRXhpc3RzLCBHZXQgdGhlIGluZGV4IG9mIHRoZSBrZXkgd2l0aGluIHRoZSBtYXAgYW5kIGFkZCAxIHRvIGl0IGZvciB0aGUgbmV4dCBicmVha3BvaW50IGluIHRoZSBtYXBcbiAgQGlmIChtYXAtaGFzLWtleSgkbWFwLCAka2V5KSkge1xuICAgICRpOiBpbmRleCgkdmFsdWVzLCAka2V5KSArIDE7XG4gIH1cblxuICAvLyBJZiB0aGUga2V5IGRvZXNuJ3QgZXhpc3QsIG9yIGl0J3MgdGhlIGxhc3Qga2V5IGluIHRoZSBtYXAsIHJldHVybiBudWxsXG4gIEBpZiAoJGkgPiBsZW5ndGgoJG1hcCkgb3IgJGkgPT0gMCkge1xuICAgIEByZXR1cm4gbnVsbDtcbiAgfVxuICAvLyBPdGhlcndpc2UsIHJldHVybiB0aGUgdmFsdWVcbiAgQGVsc2Uge1xuICAgIEByZXR1cm4gbWFwLWdldCgkbWFwLCBudGgoJHZhbHVlcywgJGkpKTtcbiAgfVxuXG59XG5cbi8vLyBSZXR1cm4gYSBsaXN0IG9mIG91ciBuYW1lZCBicmVha3BvaW50cyBsZXNzIHRoYW4gJGtleS4gVXNlZnVsIGZvciBkZWFsaW5nIHdpdGhcbi8vLyByZXNwb25zaXZlIGd1dHRlcnMgZm9yIHRoZSBncmlkLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRrZXkgLSBLZXkgdG8gdXNlIGFzIGxhc3QgYnJlYWtwb2ludC5cbi8vL1xuLy8vIEByZXR1cm5zIHtBcnJheX0gVGhlIGxpc3Qgb2YgYnJlYWtwb2ludHMgdXAgdG8gYW5kLiBJZiAka2V5IGlzIGF1dG8sIHJldHVybnMgYnJlYWtwb2ludHMgYWJvdmUgdGhlIHplcm9cbkBmdW5jdGlvbiAtemYtYnJlYWtwb2ludHMtbGVzcy10aGFuKCRrZXkpIHtcbiAgJGxpc3Q6ICgpO1xuICAkZm91bmRfa2V5OiBmYWxzZTtcblxuICBAZWFjaCAkbmFtZSBpbiAkLXpmLWJyZWFrcG9pbnRzLWtleXMge1xuICAgIEBpZiAoJG5hbWUgPT0gJGtleSkge1xuICAgICAgJGZvdW5kX2tleTogdHJ1ZTtcbiAgICB9XG4gICAgQGlmIG5vdCAkZm91bmRfa2V5IHtcbiAgICAgICRsaXN0OiBhcHBlbmQoJGxpc3QsICRuYW1lKTtcbiAgICB9XG4gIH1cbiAgQHJldHVybiAkbGlzdDtcbn1cblxuLy8vIFJldHVybiBhIGxpc3Qgb2Ygb3VyIG5hbWVkIGJyZWFrcG9pbnRzIGxlc3MgdGhhbiAka2V5LiBVc2VmdWwgZm9yIGRlYWxpbmcgd2l0aFxuLy8vIHJlc3BvbnNpdmUgZ3V0dGVycyBmb3IgdGhlIGdyaWQuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy9cbi8vLyBAcGFyYW0ge1N0cmluZ30gJGJyZWFrcG9pbnQgLSBhIG5hbWVkIG9yIG5vbi1uYW1lZCBicmVha3BvaW50LlxuLy8vXG4vLy8gQHJldHVybnMge0FycmF5fSBUaGUgbGlzdCBvZiBicmVha3BvaW50cyB1cCB0byBhbmQuIElmICRrZXkgaXMgYXV0bywgcmV0dXJucyBicmVha3BvaW50cyBhYm92ZSB0aGUgemVyb1xuQGZ1bmN0aW9uIC16Zi1jbG9zZXN0LW5hbWVkLWJyZWFrcG9pbnQoJGJyZWFrcG9pbnQpIHtcbiAgJGxhc3Q6ICQtemYtemVyby1icmVha3BvaW50O1xuICAkZm91bmQ6IGZhbHNlO1xuXG4gICR2YWx1ZTogdW5pdGxlc3MtY2FsYygkYnJlYWtwb2ludCwgMXB4KTtcbiAgQGVhY2ggJGtleSwgJHZhbCBpbiAkYnJlYWtwb2ludHMge1xuICAgIEBpZiBub3QgJGZvdW5kIHtcbiAgICAgIEBpZiB1bml0bGVzcy1jYWxjKCR2YWwpID4gJHZhbHVlIHtcbiAgICAgICAgJGZvdW5kOiB0cnVlO1xuICAgICAgfSBAZWxzZSB7XG4gICAgICAgICRsYXN0OiAka2V5O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEByZXR1cm4gJGxhc3Q7XG59XG5cbi8vLyBHZXQgYSB2YWx1ZSBmb3IgYSBicmVha3BvaW50IGZyb20gYSByZXNwb25zaXZlIGNvbmZpZyBtYXAgb3Igc2luZ2xlIHZhbHVlLlxuLy8vIC0gSWYgdGhlIGNvbmZpZyBpcyBhIHNpbmdsZSB2YWx1ZSwgcmV0dXJuIGl0IHJlZ2FyZGxlc3Mgb2YgYCR2YWx1ZWAuXG4vLy8gLSBJZiB0aGUgY29uZmlnIGlzIGEgbWFwIGFuZCBoYXMgdGhlIGtleSBgJHZhbHVlYCwgdGhlIGV4YWN0IGJyZWFrcG9pbnQgdmFsdWUgaXMgcmV0dXJuZWQuXG4vLy8gLSBJZiB0aGUgY29uZmlnIGlzIGEgbWFwIGFuZCBkb2VzICpub3QqIGhhdmUgdGhlIGJyZWFrcG9pbnQsIHRoZSB2YWx1ZSBtYXRjaGluZyB0aGUgbmV4dCBsb3dlc3QgYnJlYWtwb2ludCBpbiB0aGUgY29uZmlnIG1hcCBpcyByZXR1cm5lZC5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJG1hcCAtIFJlc3BvbnNpdmUgY29uZmlnIG1hcCBvciBzaW5nbGUgdmFsdWUuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkdmFsdWUgLSBCcmVha3BvaW50IG5hbWUgdG8gdXNlLlxuLy8vXG4vLy8gQHJldHVybiB7TWl4ZWR9IFRoZSBjb3JyZXNwb25kaW5nIGJyZWFrcG9pbnQgdmFsdWUuXG5AZnVuY3Rpb24gLXpmLWdldC1icC12YWwoJG1hcCwgJHZhbHVlKSB7XG4gIC8vIElmIHRoZSBnaXZlbiBtYXAgaXMgYSBzaW5nbGUgdmFsdWUsIHJldHVybiBpdFxuICBAaWYgdHlwZS1vZigkbWFwKSA9PSAnbnVtYmVyJyB7XG4gICAgQHJldHVybiAkbWFwO1xuICB9XG5cblxuICAvLyBDaGVjayBpZiB0aGUgYnJlYWtwb2ludCBuYW1lIGV4aXN0cyBnbG9iYWxseVxuICBAaWYgbm90IG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgJHZhbHVlKSB7XG4gICAgQGlmIHR5cGUtb2YoJHZhbHVlKSA9PSAnbnVtYmVyJyB7XG4gICAgICAkdmFsdWU6IC16Zi1jbG9zZXN0LW5hbWVkLWJyZWFrcG9pbnQoJHZhbHVlKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIEByZXR1cm4gbnVsbDtcbiAgICB9XG4gIH1cbiAgLy8gQ2hlY2sgaWYgdGhlIGJyZWFrcG9pbnQgbmFtZSBleGlzdHMgaW4gdGhlIGxvY2FsIGNvbmZpZyBtYXBcbiAgQGVsc2UgaWYgbWFwLWhhcy1rZXkoJG1hcCwgJHZhbHVlKSB7XG4gICAgLy8gSWYgaXQgZG9lcywganVzdCByZXR1cm4gdGhlIHZhbHVlXG4gICAgQHJldHVybiBtYXAtZ2V0KCRtYXAsICR2YWx1ZSk7XG4gIH1cbiAgLy8gT3RoZXJ3aXNlLCBmaW5kIHRoZSBuZXh0IGxvd2VzdCBicmVha3BvaW50IGFuZCByZXR1cm4gdGhhdCB2YWx1ZVxuICBAZWxzZSB7XG4gICAgJGFuY2hvcjogbnVsbDtcbiAgICAkZm91bmQ6IGZhbHNlO1xuXG4gICAgQGVhY2ggJGtleSwgJHZhbCBpbiAkYnJlYWtwb2ludHMge1xuICAgICAgQGlmIG5vdCAkZm91bmQge1xuICAgICAgICBAaWYgbWFwLWhhcy1rZXkoJG1hcCwgJGtleSkge1xuICAgICAgICAgICRhbmNob3I6ICRrZXk7XG4gICAgICAgIH1cbiAgICAgICAgQGlmICRrZXkgPT0gJHZhbHVlIHtcbiAgICAgICAgICAkZm91bmQ6IHRydWU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICBAcmV0dXJuIG1hcC1nZXQoJG1hcCwgJGFuY2hvcik7XG4gIH1cbn1cblxuJHNtYWxsLXVwOiAnJztcbiRzbWFsbC1vbmx5OiAnJztcblxuQGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgc21hbGwpIHtcbiAgJHNtYWxsLXVwOiBzY3JlZW47XG4gICRzbWFsbC1vbmx5OiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludChzbWFsbCBvbmx5KX0nKTtcbn1cblxuJG1lZGl1bS11cDogJyc7XG4kbWVkaXVtLW9ubHk6ICcnO1xuXG5AaWYgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCBtZWRpdW0pIHtcbiAgJG1lZGl1bS11cDogdW5xdW90ZSgnc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobWVkaXVtKX0nKTtcbiAgJG1lZGl1bS1vbmx5OiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludChtZWRpdW0gb25seSl9Jyk7XG59XG5cbiRsYXJnZS11cDogJyc7XG4kbGFyZ2Utb25seTogJyc7XG5cbkBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsIGxhcmdlKSB7XG4gICRsYXJnZS11cDogdW5xdW90ZSgnc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobGFyZ2UpfScpO1xuICAkbGFyZ2Utb25seTogdW5xdW90ZSgnc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobGFyZ2Ugb25seSl9Jyk7XG59XG5cbiR4bGFyZ2UtdXA6ICcnO1xuJHhsYXJnZS1vbmx5OiAnJztcblxuQGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgeGxhcmdlKSB7XG4gICR4bGFyZ2UtdXA6IHVucXVvdGUoJ3NjcmVlbiBhbmQgI3ticmVha3BvaW50KHhsYXJnZSl9Jyk7XG4gICR4bGFyZ2Utb25seTogdW5xdW90ZSgnc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQoeGxhcmdlIG9ubHkpfScpO1xufVxuXG4keHhsYXJnZS11cDogJyc7XG5cbkBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsIHh4bGFyZ2UpIHtcbiAgJHh4bGFyZ2UtdXA6IHVucXVvdGUoJ3NjcmVlbiBhbmQgI3ticmVha3BvaW50KHh4bGFyZ2UpfScpO1xufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgcmV2ZWFsXG4vLy8vXG5cbi8vLyBEZWZhdWx0IGJhY2tncm91bmQgY29sb3Igb2YgYSBtb2RhbC5cbi8vLyBAdHlwZSBDb2xvclxuJHJldmVhbC1iYWNrZ3JvdW5kOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHdpZHRoIG9mIGEgbW9kYWwsIHdpdGggbm8gY2xhc3MgYXBwbGllZC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRyZXZlYWwtd2lkdGg6IDYwMHB4ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBtYXhpbXVtIHdpZHRoIG9mIGEgbW9kYWwuXG4vLy8gQHR5cGUgTnVtYmVyXG4kcmV2ZWFsLW1heC13aWR0aDogJGdsb2JhbC13aWR0aCAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcGFkZGluZyBpbnNpZGUgYSBtb2RhbC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRyZXZlYWwtcGFkZGluZzogJGdsb2JhbC1wYWRkaW5nICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBib3JkZXIgYXJvdW5kIGEgbW9kYWwuXG4vLy8gQHR5cGUgTnVtYmVyXG4kcmV2ZWFsLWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcmFkaXVzIGZvciBtb2RhbC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRyZXZlYWwtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuLy8vIHotaW5kZXggZm9yIG1vZGFscy4gVGhlIG92ZXJsYXkgdXNlcyB0aGlzIHZhbHVlLCB3aGlsZSB0aGUgbW9kYWwgaXRzZWxmIHVzZXMgdGhpcyB2YWx1ZSBwbHVzIG9uZS5cbi8vLyBAdHlwZSBOdW1iZXJcbiRyZXZlYWwtemluZGV4OiAxMDA1ICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvZiBtb2RhbCBvdmVybGF5cy5cbi8vLyBAdHlwZSBDb2xvclxuJHJldmVhbC1vdmVybGF5LWJhY2tncm91bmQ6IHJnYmEoJGJsYWNrLCAwLjQ1KSAhZGVmYXVsdDtcblxuXG4vLyBQbGFjZWhvbGRlciBzZWxlY3RvciBmb3IgbWVkaXVtLWFuZC11cCBtb2RhbHNcbi8vIFByZXZlbnRzIGR1cGxpY2F0ZSBDU1Mgd2hlbiBkZWZpbmluZyBtdWx0aXBsZSBSZXZlYWwgc2l6ZXNcbi8vIFRoaXMgc2hvdWxkIGJlIGluIHRoZSBzYW1lIGJyZWFrcG9pbnQgdGhlbiBgQG1peGluIHJldmVhbC1tb2RhbC13aWR0aGBcbkBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICVyZXZlYWwtY2VudGVyZWQge1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IGF1dG87XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gIH1cbn1cblxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgbW9kYWwgb3ZlcmxheS5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkYmFja2dyb3VuZCBbJHJldmVhbC1vdmVybGF5LWJhY2tncm91bmRdIC0gQmFja2dyb3VuZCBjb2xvciBvZiB0aGUgb3ZlcmxheS5cbkBtaXhpbiByZXZlYWwtb3ZlcmxheSgkYmFja2dyb3VuZDogJHJldmVhbC1vdmVybGF5LWJhY2tncm91bmQpIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6ICRyZXZlYWwtemluZGV4O1xuXG4gIGRpc3BsYXk6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuICBvdmVyZmxvdy15OiBhdXRvO1xufVxuXG4vLy8gQWRkcyBiYXNlIHN0eWxlcyBmb3IgYSBtb2RhbC5cbkBtaXhpbiByZXZlYWwtbW9kYWwtYmFzZSB7XG4gIEBpbmNsdWRlIGRpc2FibGUtbW91c2Utb3V0bGluZTtcbiAgei1pbmRleDogJHJldmVhbC16aW5kZXggKyAxO1xuICAvLyBXb3JrYXJvdW5kIGFuZHJvaWQgYnJvd3NlciB6LWluZGV4IGJ1Z1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG5cbiAgZGlzcGxheTogbm9uZTtcbiAgcGFkZGluZzogJHJldmVhbC1wYWRkaW5nO1xuXG4gIGJvcmRlcjogJHJldmVhbC1ib3JkZXI7XG4gIGJvcmRlci1yYWRpdXM6ICRyZXZlYWwtcmFkaXVzO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcmV2ZWFsLWJhY2tncm91bmQ7XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICBtaW4taGVpZ2h0OiAwO1xuICB9XG5cbiAgLy8gTWFrZSBzdXJlIHJvd3MgZG9uJ3QgaGF2ZSBhIG1pbi13aWR0aCBvbiB0aGVtXG4gIC5jb2x1bW4ge1xuICAgIG1pbi13aWR0aDogMDtcbiAgfVxuXG4gIC8vIFN0cmlwIG1hcmdpbnMgZnJvbSB0aGUgbGFzdCBpdGVtIGluIHRoZSBtb2RhbFxuICA+IDpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG5cbi8vLyBBZGp1c3RzIHRoZSB3aWR0aCBvZiBhIG1vZGFsLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkd2lkdGggLSBXaWR0aCBvZiB0aGUgbW9kYWwuIEdlbmVyYWxseSBhIHBlcmNlbnRhZ2UuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRtYXgtd2lkdGggWyRyZXZlYWwtbWF4LXdpZHRoXSAtIE1heGltdW0gd2lkdGggb2YgdGhlIG1vZGFsLlxuQG1peGluIHJldmVhbC1tb2RhbC13aWR0aChcbiAgJHdpZHRoOiAkcmV2ZWFsLXdpZHRoLFxuICAkbWF4LXdpZHRoOiAkcmV2ZWFsLW1heC13aWR0aFxuKSB7XG4gIC8vIEV4dGVuZHMgbXVzdCBiZSBtYWRlIG91dHNpZGUgb2YgYnJlYWtwb2ludHMgZm9yIGNvbXBhdGliaWxpdHkgd2l0aCBuZXdlciBTYXNzIHZlcnNpb25zIChsaWJzYXNzIHYzLjUpXG4gIEBleHRlbmQgJXJldmVhbC1jZW50ZXJlZDtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICB3aWR0aDogJHdpZHRoO1xuICAgIG1heC13aWR0aDogJG1heC13aWR0aDtcbiAgfVxufVxuXG4vLy8gQ3JlYXRlcyBhIGZ1bGwtc2NyZWVuIG1vZGFsLCB3aGljaCBzdHJldGNoZXMgdGhlIGZ1bGwgd2lkdGggYW5kIGhlaWdodCBvZiB0aGUgd2luZG93LlxuQG1peGluIHJldmVhbC1tb2RhbC1mdWxsc2NyZWVuIHtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuXG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IG5vbmU7XG4gIGhlaWdodDogMTAwJTtcbiAgbWluLWhlaWdodDogMTAwJTtcbiAgbWFyZ2luLWxlZnQ6IDA7XG5cbiAgYm9yZGVyOiAwO1xuICBib3JkZXItcmFkaXVzOiAwO1xufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1yZXZlYWwge1xuXG4gIC8vLyBEaXNhYmxlcyB0aGUgc2Nyb2xsIHdoZW4gUmV2ZWFsIGlzIHNob3duIHRvIHByZXZlbnQgdGhlIGJhY2tncm91bmQgZnJvbSBzaGlmdGluZ1xuICBodG1sLmlzLXJldmVhbC1vcGVuIHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgb3ZlcmZsb3cteTogaGlkZGVuO1xuXG4gICAgJi56Zi1oYXMtc2Nyb2xsIHtcbiAgICAgIG92ZXJmbG93LXk6IHNjcm9sbDtcbiAgICB9XG5cbiAgICBib2R5IHsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBuby1xdWFsaWZ5aW5nLWVsZW1lbnRzXG4gICAgICBvdmVyZmxvdy15OiBoaWRkZW47XG4gICAgfVxuICB9XG5cbiAgLy8gT3ZlcmxheVxuICAucmV2ZWFsLW92ZXJsYXkge1xuICAgIEBpbmNsdWRlIHJldmVhbC1vdmVybGF5O1xuICB9XG5cbiAgLy8gTW9kYWwgY29udGFpbmVyXG4gIC5yZXZlYWwge1xuICAgIEBpbmNsdWRlIHJldmVhbC1tb2RhbC1iYXNlO1xuICAgIEBpbmNsdWRlIHJldmVhbC1tb2RhbC13aWR0aCgkcmV2ZWFsLXdpZHRoKTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiAxMDBweDtcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgb3ZlcmZsb3cteTogYXV0bztcblxuICAgIC8vIFJlbW92ZSBwYWRkaW5nXG4gICAgJi5jb2xsYXBzZSB7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgIH1cblxuICAgIC8vIFNpemluZyBjbGFzc2VzXG4gICAgJi50aW55ICB7IEBpbmNsdWRlIHJldmVhbC1tb2RhbC13aWR0aCgzMCUpOyB9XG4gICAgJi5zbWFsbCB7IEBpbmNsdWRlIHJldmVhbC1tb2RhbC13aWR0aCg1MCUpOyB9XG4gICAgJi5sYXJnZSB7IEBpbmNsdWRlIHJldmVhbC1tb2RhbC13aWR0aCg5MCUpOyB9XG5cbiAgICAvLyBGdWxsLXNjcmVlbiBtb2RlXG4gICAgJi5mdWxsIHtcbiAgICAgIEBpbmNsdWRlIHJldmVhbC1tb2RhbC1mdWxsc2NyZWVuO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJC16Zi16ZXJvLWJyZWFrcG9pbnQgb25seSkge1xuICAgICAgQGluY2x1ZGUgcmV2ZWFsLW1vZGFsLWZ1bGxzY3JlZW47XG4gICAgfVxuXG4gICAgJi53aXRob3V0LW92ZXJsYXkge1xuICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gR2VuZXJhdGUgRHVyYXRpb24gJiYgRGVsYXlcbltkYXRhLWFvc10ge1xuICBAZm9yICRpIGZyb20gMSB0aHJvdWdoIDYwIHtcbiAgICBib2R5W2RhdGEtYW9zLWR1cmF0aW9uPScjeyRpICogNTB9J10gJixcbiAgICAmW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0nI3skaSAqIDUwfSddIHtcbiAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246ICN7JGkgKiA1MH1tcztcbiAgICB9XG5cbiAgICBib2R5W2RhdGEtYW9zLWRlbGF5PScjeyRpICogNTB9J10gJixcbiAgICAmW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0nI3skaSAqIDUwfSddIHtcbiAgICAgIHRyYW5zaXRpb24tZGVsYXk6IDA7XG5cbiAgICAgICYuYW9zLWFuaW1hdGUge1xuICAgICAgICB0cmFuc2l0aW9uLWRlbGF5OiAjeyRpICogNTB9bXM7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIkYW9zLWVhc2luZzogKFxuICBsaW5lYXI6IGN1YmljLWJlemllciguMjUwLCAuMjUwLCAuNzUwLCAuNzUwKSxcblxuICBlYXNlOiBjdWJpYy1iZXppZXIoLjI1MCwgLjEwMCwgLjI1MCwgMSksXG4gIGVhc2UtaW46IGN1YmljLWJlemllciguNDIwLCAwLCAxLCAxKSxcbiAgZWFzZS1vdXQ6IGN1YmljLWJlemllciguMDAwLCAwLCAuNTgwLCAxKSxcbiAgZWFzZS1pbi1vdXQ6IGN1YmljLWJlemllciguNDIwLCAwLCAuNTgwLCAxKSxcblxuICBlYXNlLWluLWJhY2s6IGN1YmljLWJlemllciguNiwgLS4yOCwgLjczNSwgLjA0NSksXG4gIGVhc2Utb3V0LWJhY2s6IGN1YmljLWJlemllciguMTc1LCAuODg1LCAuMzIsIDEuMjc1KSxcbiAgZWFzZS1pbi1vdXQtYmFjazogY3ViaWMtYmV6aWVyKC42OCwgLS41NSwgLjI2NSwgMS41NSksXG5cbiAgZWFzZS1pbi1zaW5lOiBjdWJpYy1iZXppZXIoLjQ3LCAwLCAuNzQ1LCAuNzE1KSxcbiAgZWFzZS1vdXQtc2luZTogY3ViaWMtYmV6aWVyKC4zOSwgLjU3NSwgLjU2NSwgMSksXG4gIGVhc2UtaW4tb3V0LXNpbmU6IGN1YmljLWJlemllciguNDQ1LCAuMDUsIC41NSwgLjk1KSxcblxuICBlYXNlLWluLXF1YWQ6IGN1YmljLWJlemllciguNTUsIC4wODUsIC42OCwgLjUzKSxcbiAgZWFzZS1vdXQtcXVhZDogY3ViaWMtYmV6aWVyKC4yNSwgLjQ2LCAuNDUsIC45NCksXG4gIGVhc2UtaW4tb3V0LXF1YWQ6IGN1YmljLWJlemllciguNDU1LCAuMDMsIC41MTUsIC45NTUpLFxuXG4gIGVhc2UtaW4tY3ViaWM6IGN1YmljLWJlemllciguNTUsIC4wODUsIC42OCwgLjUzKSxcbiAgZWFzZS1vdXQtY3ViaWM6IGN1YmljLWJlemllciguMjUsIC40NiwgLjQ1LCAuOTQpLFxuICBlYXNlLWluLW91dC1jdWJpYzogY3ViaWMtYmV6aWVyKC40NTUsIC4wMywgLjUxNSwgLjk1NSksXG5cbiAgZWFzZS1pbi1xdWFydDogY3ViaWMtYmV6aWVyKC41NSwgLjA4NSwgLjY4LCAuNTMpLFxuICBlYXNlLW91dC1xdWFydDogY3ViaWMtYmV6aWVyKC4yNSwgLjQ2LCAuNDUsIC45NCksXG4gIGVhc2UtaW4tb3V0LXF1YXJ0OiBjdWJpYy1iZXppZXIoLjQ1NSwgLjAzLCAuNTE1LCAuOTU1KVxuKTtcblxuLy8gRWFzaW5ncyBpbXBsZW1lbnRhdGlvbnNcbi8vIERlZmF1bHQgdGltaW5nIGZ1bmN0aW9uOiAnZWFzZSdcblxuW2RhdGEtYW9zXSB7XG4gIEBlYWNoICRrZXksICR2YWwgaW4gJGFvcy1lYXNpbmcge1xuICAgIGJvZHlbZGF0YS1hb3MtZWFzaW5nPVwiI3ska2V5fVwiXSAmLFxuICAgICZbZGF0YS1hb3NdW2RhdGEtYW9zLWVhc2luZz1cIiN7JGtleX1cIl0ge1xuICAgICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246ICR2YWw7XG4gICAgfVxuICB9XG59XG4iLCIvLyBBbmltYXRpb25zIHZhcmlhYmxlc1xuJGFvcy1kaXN0YW5jZTogMTAwcHggIWRlZmF1bHQ7XG5cblxuXG5cbi8qKlxuICogRmFkZSBhbmltYXRpb25zOlxuICogZmFkZVxuICogZmFkZS11cCwgZmFkZS1kb3duLCBmYWRlLWxlZnQsIGZhZGUtcmlnaHRcbiAqIGZhZGUtdXAtcmlnaHQsIGZhZGUtdXAtbGVmdCwgZmFkZS1kb3duLXJpZ2h0LCBmYWRlLWRvd24tbGVmdFxuICovXG5cbltkYXRhLWFvc149J2ZhZGUnXVtkYXRhLWFvc149J2ZhZGUnXSB7XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IG9wYWNpdHksIHRyYW5zZm9ybTtcblxuICAmLmFvcy1hbmltYXRlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIH1cbn1cblxuW2RhdGEtYW9zPSdmYWRlLXVwJ10ge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsICRhb3MtZGlzdGFuY2UsIDApO1xufVxuXG5bZGF0YS1hb3M9J2ZhZGUtZG93biddIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtJGFvcy1kaXN0YW5jZSwgMCk7XG59XG5cbltkYXRhLWFvcz0nZmFkZS1yaWdodCddIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtJGFvcy1kaXN0YW5jZSwgMCwgMCk7XG59XG5cbltkYXRhLWFvcz0nZmFkZS1sZWZ0J10ge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKCRhb3MtZGlzdGFuY2UsIDAsIDApO1xufVxuXG5bZGF0YS1hb3M9J2ZhZGUtdXAtcmlnaHQnXSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLSRhb3MtZGlzdGFuY2UsICRhb3MtZGlzdGFuY2UsIDApO1xufVxuXG5bZGF0YS1hb3M9J2ZhZGUtdXAtbGVmdCddIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgkYW9zLWRpc3RhbmNlLCAkYW9zLWRpc3RhbmNlLCAwKTtcbn1cblxuW2RhdGEtYW9zPSdmYWRlLWRvd24tcmlnaHQnXSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLSRhb3MtZGlzdGFuY2UsIC0kYW9zLWRpc3RhbmNlLCAwKTtcbn1cblxuW2RhdGEtYW9zPSdmYWRlLWRvd24tbGVmdCddIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgkYW9zLWRpc3RhbmNlLCAtJGFvcy1kaXN0YW5jZSwgMCk7XG59XG5cblxuXG5cbi8qKlxuICogWm9vbSBhbmltYXRpb25zOlxuICogem9vbS1pbiwgem9vbS1pbi11cCwgem9vbS1pbi1kb3duLCB6b29tLWluLWxlZnQsIHpvb20taW4tcmlnaHRcbiAqIHpvb20tb3V0LCB6b29tLW91dC11cCwgem9vbS1vdXQtZG93biwgem9vbS1vdXQtbGVmdCwgem9vbS1vdXQtcmlnaHRcbiAqL1xuXG5bZGF0YS1hb3NePSd6b29tJ11bZGF0YS1hb3NePSd6b29tJ10ge1xuICBvcGFjaXR5OiAwO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiBvcGFjaXR5LCB0cmFuc2Zvcm07XG5cbiAgJi5hb3MtYW5pbWF0ZSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApIHNjYWxlKDEpO1xuICB9XG59XG5cbltkYXRhLWFvcz0nem9vbS1pbiddIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSguNik7XG59XG5cbltkYXRhLWFvcz0nem9vbS1pbi11cCddIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAkYW9zLWRpc3RhbmNlLCAwKSBzY2FsZSguNik7XG59XG5cbltkYXRhLWFvcz0nem9vbS1pbi1kb3duJ10ge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0kYW9zLWRpc3RhbmNlLCAwKSBzY2FsZSguNik7XG59XG5cbltkYXRhLWFvcz0nem9vbS1pbi1yaWdodCddIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtJGFvcy1kaXN0YW5jZSwgMCwgMCkgc2NhbGUoLjYpO1xufVxuXG5bZGF0YS1hb3M9J3pvb20taW4tbGVmdCddIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgkYW9zLWRpc3RhbmNlLCAwLCAwKSBzY2FsZSguNik7XG59XG5cbltkYXRhLWFvcz0nem9vbS1vdXQnXSB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMS4yKTtcbn1cblxuW2RhdGEtYW9zPSd6b29tLW91dC11cCddIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAkYW9zLWRpc3RhbmNlLCAwKSBzY2FsZSgxLjIpO1xufVxuXG5bZGF0YS1hb3M9J3pvb20tb3V0LWRvd24nXSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLSRhb3MtZGlzdGFuY2UsIDApIHNjYWxlKDEuMik7XG59XG5cbltkYXRhLWFvcz0nem9vbS1vdXQtcmlnaHQnXSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLSRhb3MtZGlzdGFuY2UsIDAsIDApIHNjYWxlKDEuMik7XG59XG5cbltkYXRhLWFvcz0nem9vbS1vdXQtbGVmdCddIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgkYW9zLWRpc3RhbmNlLCAwLCAwKSBzY2FsZSgxLjIpO1xufVxuXG5cblxuXG4vKipcbiAqIFNsaWRlIGFuaW1hdGlvbnNcbiAqL1xuXG5bZGF0YS1hb3NePSdzbGlkZSddW2RhdGEtYW9zXj0nc2xpZGUnXSB7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTtcblxuICAmLmFvcy1hbmltYXRlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICB9XG59XG5cbltkYXRhLWFvcz0nc2xpZGUtdXAnXSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTAwJSwgMCk7XG59XG5cbltkYXRhLWFvcz0nc2xpZGUtZG93biddIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTAwJSwgMCk7XG59XG5cbltkYXRhLWFvcz0nc2xpZGUtcmlnaHQnXSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApO1xufVxuXG5bZGF0YS1hb3M9J3NsaWRlLWxlZnQnXSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCk7XG59XG5cblxuXG5cbi8qKlxuICogRmxpcCBhbmltYXRpb25zOlxuICogZmxpcC1sZWZ0LCBmbGlwLXJpZ2h0LCBmbGlwLXVwLCBmbGlwLWRvd25cbiAqL1xuXG5bZGF0YS1hb3NePSdmbGlwJ11bZGF0YS1hb3NePSdmbGlwJ10ge1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTtcbn1cblxuW2RhdGEtYW9zPSdmbGlwLWxlZnQnXSB7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjUwMHB4KSByb3RhdGVZKC0xMDBkZWcpO1xuICAmLmFvcy1hbmltYXRlIHt0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDI1MDBweCkgcm90YXRlWSgwKTt9XG59XG5cbltkYXRhLWFvcz0nZmxpcC1yaWdodCddIHtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyNTAwcHgpIHJvdGF0ZVkoMTAwZGVnKTtcbiAgJi5hb3MtYW5pbWF0ZSB7dHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyNTAwcHgpIHJvdGF0ZVkoMCk7fVxufVxuXG5bZGF0YS1hb3M9J2ZsaXAtdXAnXSB7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjUwMHB4KSByb3RhdGVYKC0xMDBkZWcpO1xuICAmLmFvcy1hbmltYXRlIHt0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDI1MDBweCkgcm90YXRlWCgwKTt9XG59XG5cbltkYXRhLWFvcz0nZmxpcC1kb3duJ10ge1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDI1MDBweCkgcm90YXRlWCgxMDBkZWcpO1xuICAmLmFvcy1hbmltYXRlIHt0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDI1MDBweCkgcm90YXRlWCgwKTt9XG59XG4iLCJAbWl4aW4gZm91bmRhdGlvbi1ub3JtYWxpemUoKSB7XG4gIC8qISBub3JtYWxpemUuY3NzIHY4LjAuMCB8IE1JVCBMaWNlbnNlIHwgZ2l0aHViLmNvbS9uZWNvbGFzL25vcm1hbGl6ZS5jc3MgKi9cblxuICAvLyBEb2N1bWVudFxuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4gIC8vIDEuIENvcnJlY3QgdGhlIGxpbmUgaGVpZ2h0IGluIGFsbCBicm93c2Vycy5cbiAgLy8gMi4gUHJldmVudCBhZGp1c3RtZW50cyBvZiBmb250IHNpemUgYWZ0ZXIgb3JpZW50YXRpb24gY2hhbmdlcyBpbiBpT1MuXG5cbiAgaHRtbCB7XG4gICAgbGluZS1oZWlnaHQ6IDEuMTU7IC8vIDFcbiAgICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7IC8vIDJcbiAgfVxuXG4gIC8vIFNlY3Rpb25zXG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiAgLy8gUmVtb3ZlIHRoZSBtYXJnaW4gaW4gYWxsIGJyb3dzZXJzLlxuXG4gIGJvZHkge1xuICAgIG1hcmdpbjogMDtcbiAgfVxuXG4gIC8vIENvcnJlY3QgdGhlIGZvbnQgc2l6ZSBhbmQgbWFyZ2luIG9uIGBoMWAgZWxlbWVudHMgd2l0aGluIGBzZWN0aW9uYCBhbmRcbiAgLy8gYGFydGljbGVgIGNvbnRleHRzIGluIENocm9tZSwgRmlyZWZveCwgYW5kIFNhZmFyaS5cblxuICBoMSB7XG4gICAgZm9udC1zaXplOiAyZW07XG4gICAgbWFyZ2luOiAwLjY3ZW0gMDtcbiAgfVxuXG4gIC8vIEdyb3VwaW5nIGNvbnRlbnRcbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuICAvLyAxLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBGaXJlZm94LlxuICAvLyAyLiBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlIGFuZCBJRS5cblxuICBociB7XG4gICAgYm94LXNpemluZzogY29udGVudC1ib3g7IC8vIDFcbiAgICBoZWlnaHQ6IDA7IC8vIDFcbiAgICBvdmVyZmxvdzogdmlzaWJsZTsgLy8gMlxuICB9XG5cbiAgLy8gMS4gQ29ycmVjdCB0aGUgaW5oZXJpdGFuY2UgYW5kIHNjYWxpbmcgb2YgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAgLy8gMi4gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxuXG4gIHByZSB7XG4gICAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlOyAvLyAxXG4gICAgZm9udC1zaXplOiAxZW07IC8vIDJcbiAgfVxuXG4gIC8vIFRleHQtbGV2ZWwgc2VtYW50aWNzXG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiAgLy8gUmVtb3ZlIHRoZSBncmF5IGJhY2tncm91bmQgb24gYWN0aXZlIGxpbmtzIGluIElFIDEwLlxuXG4gIGEge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICB9XG5cbiAgLy8gMS4gUmVtb3ZlIHRoZSBib3R0b20gYm9yZGVyIGluIENocm9tZSA1Ny1cbiAgLy8gMi4gQWRkIHRoZSBjb3JyZWN0IHRleHQgZGVjb3JhdGlvbiBpbiBDaHJvbWUsIEVkZ2UsIElFLCBPcGVyYSwgYW5kIFNhZmFyaS5cblxuICBhYmJyW3RpdGxlXSB7XG4gICAgYm9yZGVyLWJvdHRvbTogbm9uZTsgLy8gMVxuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyAvLyAyXG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgZG90dGVkOyAvLyAyXG4gIH1cblxuICAvLyBBZGQgdGhlIGNvcnJlY3QgZm9udCB3ZWlnaHQgaW4gQ2hyb21lLCBFZGdlLCBhbmQgU2FmYXJpLlxuXG4gIGIsXG4gIHN0cm9uZyB7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGRlcjtcbiAgfVxuXG4gIC8vIDEuIENvcnJlY3QgdGhlIGluaGVyaXRhbmNlIGFuZCBzY2FsaW5nIG9mIGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gIC8vIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cblxuICBjb2RlLFxuICBrYmQsXG4gIHNhbXAge1xuICAgIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTsgLy8gMVxuICAgIGZvbnQtc2l6ZTogMWVtOyAvLyAyXG4gIH1cblxuICAvLyBBZGQgdGhlIGNvcnJlY3QgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cblxuICBzbWFsbCB7XG4gICAgZm9udC1zaXplOiA4MCU7XG4gIH1cblxuICAvLyBQcmV2ZW50IGBzdWJgIGFuZCBgc3VwYCBlbGVtZW50cyBmcm9tIGFmZmVjdGluZyB0aGUgbGluZSBoZWlnaHQgaW5cbiAgLy8gYWxsIGJyb3dzZXJzLlxuXG4gIHN1YixcbiAgc3VwIHtcbiAgICBmb250LXNpemU6IDc1JTtcbiAgICBsaW5lLWhlaWdodDogMDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuICB9XG5cbiAgc3ViIHtcbiAgICBib3R0b206IC0wLjI1ZW07XG4gIH1cblxuICBzdXAge1xuICAgIHRvcDogLTAuNWVtO1xuICB9XG5cbiAgLy8gRW1iZWRkZWQgY29udGVudFxuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4gIC8vIFJlbW92ZSB0aGUgYm9yZGVyIG9uIGltYWdlcyBpbnNpZGUgbGlua3MgaW4gSUUgMTAuXG5cbiAgaW1nIHtcbiAgICBib3JkZXItc3R5bGU6IG5vbmU7XG4gIH1cblxuICAvLyBGb3Jtc1xuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4gIC8vIDEuIENoYW5nZSB0aGUgZm9udCBzdHlsZXMgaW4gYWxsIGJyb3dzZXJzLlxuICAvLyAyLiBSZW1vdmUgdGhlIG1hcmdpbiBpbiBGaXJlZm94IGFuZCBTYWZhcmkuXG5cbiAgYnV0dG9uLFxuICBpbnB1dCxcbiAgb3B0Z3JvdXAsXG4gIHNlbGVjdCxcbiAgdGV4dGFyZWEge1xuICAgIGZvbnQtZmFtaWx5OiBpbmhlcml0OyAvLyAxXG4gICAgZm9udC1zaXplOiAxMDAlOyAvLyAxXG4gICAgbGluZS1oZWlnaHQ6IDEuMTU7IC8vIDFcbiAgICBtYXJnaW46IDA7IC8vIDJcbiAgfVxuXG4gIC8vIFNob3cgdGhlIG92ZXJmbG93IGluIElFLlxuICAvLyAxLiBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlLlxuXG4gIGJ1dHRvbixcbiAgaW5wdXQgeyAvLyAxXG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIH1cblxuICAvLyBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEVkZ2UsIEZpcmVmb3gsIGFuZCBJRS5cbiAgLy8gMS4gUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBGaXJlZm94LlxuXG4gIGJ1dHRvbixcbiAgc2VsZWN0IHsgLy8gMVxuICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICB9XG5cbiAgLy8gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cblxuICBidXR0b24sXG4gIFt0eXBlPVwiYnV0dG9uXCJdLFxuICBbdHlwZT1cInJlc2V0XCJdLFxuICBbdHlwZT1cInN1Ym1pdFwiXSB7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247XG4gIH1cblxuICAvLyBSZW1vdmUgdGhlIGlubmVyIGJvcmRlciBhbmQgcGFkZGluZyBpbiBGaXJlZm94LlxuXG4gIGJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lcixcbiAgW3R5cGU9XCJidXR0b25cIl06Oi1tb3otZm9jdXMtaW5uZXIsXG4gIFt0eXBlPVwicmVzZXRcIl06Oi1tb3otZm9jdXMtaW5uZXIsXG4gIFt0eXBlPVwic3VibWl0XCJdOjotbW96LWZvY3VzLWlubmVyIHtcbiAgICBib3JkZXItc3R5bGU6IG5vbmU7XG4gICAgcGFkZGluZzogMDtcbiAgfVxuXG4gIC8vIFJlc3RvcmUgdGhlIGZvY3VzIHN0eWxlcyB1bnNldCBieSB0aGUgcHJldmlvdXMgcnVsZS5cblxuICBidXR0b246LW1vei1mb2N1c3JpbmcsXG4gIFt0eXBlPVwiYnV0dG9uXCJdOi1tb3otZm9jdXNyaW5nLFxuICBbdHlwZT1cInJlc2V0XCJdOi1tb3otZm9jdXNyaW5nLFxuICBbdHlwZT1cInN1Ym1pdFwiXTotbW96LWZvY3VzcmluZyB7XG4gICAgb3V0bGluZTogMXB4IGRvdHRlZCBCdXR0b25UZXh0O1xuICB9XG5cbiAgLy8gQ29ycmVjdCB0aGUgcGFkZGluZyBpbiBGaXJlZm94LlxuXG4gIGZpZWxkc2V0IHtcbiAgICBwYWRkaW5nOiAwLjM1ZW0gMC43NWVtIDAuNjI1ZW07XG4gIH1cblxuICAvLyAxLiBDb3JyZWN0IHRoZSB0ZXh0IHdyYXBwaW5nIGluIEVkZ2UgYW5kIElFLlxuICAvLyAyLiBDb3JyZWN0IHRoZSBjb2xvciBpbmhlcml0YW5jZSBmcm9tIGBmaWVsZHNldGAgZWxlbWVudHMgaW4gSUUuXG4gIC8vIDMuIFJlbW92ZSB0aGUgcGFkZGluZyBzbyBkZXZlbG9wZXJzIGFyZSBub3QgY2F1Z2h0IG91dCB3aGVuIHRoZXkgemVybyBvdXRcbiAgLy8gICAgYGZpZWxkc2V0YCBlbGVtZW50cyBpbiBhbGwgYnJvd3NlcnMuXG5cbiAgbGVnZW5kIHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94OyAvLyAxXG4gICAgY29sb3I6IGluaGVyaXQ7IC8vIDJcbiAgICBkaXNwbGF5OiB0YWJsZTsgLy8gMVxuICAgIG1heC13aWR0aDogMTAwJTsgLy8gMVxuICAgIHBhZGRpbmc6IDA7IC8vIDNcbiAgICB3aGl0ZS1zcGFjZTogbm9ybWFsOyAvLyAxXG4gIH1cblxuICAvLyBBZGQgdGhlIGNvcnJlY3QgdmVydGljYWwgYWxpZ25tZW50IGluIENocm9tZSwgRmlyZWZveCwgYW5kIE9wZXJhLlxuXG4gIHByb2dyZXNzIHtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4gIH1cblxuICAvLyBSZW1vdmUgdGhlIGRlZmF1bHQgdmVydGljYWwgc2Nyb2xsYmFyIGluIElFIDEwKy5cblxuICB0ZXh0YXJlYSB7XG4gICAgb3ZlcmZsb3c6IGF1dG87XG4gIH1cblxuICAvLyAxLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBJRSAxMC5cbiAgLy8gMi4gUmVtb3ZlIHRoZSBwYWRkaW5nIGluIElFIDEwLlxuXG4gIFt0eXBlPVwiY2hlY2tib3hcIl0sXG4gIFt0eXBlPVwicmFkaW9cIl0ge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8vIDFcbiAgICBwYWRkaW5nOiAwOyAvLyAyXG4gIH1cblxuICAvLyBDb3JyZWN0IHRoZSBjdXJzb3Igc3R5bGUgb2YgaW5jcmVtZW50IGFuZCBkZWNyZW1lbnQgYnV0dG9ucyBpbiBDaHJvbWUuXG5cbiAgW3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXG4gIFt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gIH1cblxuICAvLyAxLiBDb3JyZWN0IHRoZSBvZGQgYXBwZWFyYW5jZSBpbiBDaHJvbWUgYW5kIFNhZmFyaS5cbiAgLy8gMi4gQ29ycmVjdCB0aGUgb3V0bGluZSBzdHlsZSBpbiBTYWZhcmkuXG5cbiAgW3R5cGU9XCJzZWFyY2hcIl0ge1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogdGV4dGZpZWxkOyAvLyAxXG4gICAgb3V0bGluZS1vZmZzZXQ6IC0ycHg7IC8vIDJcbiAgfVxuXG4gIC8vIFJlbW92ZSB0aGUgaW5uZXIgcGFkZGluZyBpbiBDaHJvbWUgYW5kIFNhZmFyaSBvbiBtYWNPUy5cblxuICBbdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbiB7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICB9XG5cbiAgLy8gMS4gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cbiAgLy8gMi4gQ2hhbmdlIGZvbnQgcHJvcGVydGllcyB0byBgaW5oZXJpdGAgaW4gU2FmYXJpLlxuXG4gIDo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24ge1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uOyAvLyAxXG4gICAgZm9udDogaW5oZXJpdDsgLy8gMlxuICB9XG5cbiAgLy8gSW50ZXJhY3RpdmVcbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuICAvLyBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBFZGdlLCBJRSAxMCssIGFuZCBGaXJlZm94LlxuXG4gIGRldGFpbHMge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG5cbiAgLy8gQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gYWxsIGJyb3dzZXJzLlxuXG4gIHN1bW1hcnkge1xuICAgIGRpc3BsYXk6IGxpc3QtaXRlbTtcbiAgfVxuXG4gIC8vIE1pc2NcbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuICAvLyBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSAxMCsuXG5cbiAgdGVtcGxhdGUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAvLyBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSAxMC5cblxuICBbaGlkZGVuXSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vIHNhc3MtbGludDpkaXNhYmxlIG5vLWNvbG9yLWxpdGVyYWxzLCBuby1xdWFsaWZ5aW5nLWVsZW1lbnRzXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZ2xvYmFsXG4vLy8vXG5cbkBpbXBvcnQgJ3V0aWwvdXRpbCc7XG5cbi8vLyBGb250IHNpemUgYXR0cmlidXRlIGFwcGxpZWQgdG8gYDxodG1sPmAgYW5kIGA8Ym9keT5gLiBXZSB1c2UgMTAwJSBieSBkZWZhdWx0IHNvIHRoZSB2YWx1ZSBpcyBpbmhlcml0ZWQgZnJvbSB0aGUgdXNlcidzIGJyb3dzZXIgc2V0dGluZ3MuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZ2xvYmFsLWZvbnQtc2l6ZTogMTAwJSAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCB3aWR0aCBvZiB5b3VyIHNpdGUuIFVzZWQgYnkgdGhlIGdyaWQgdG8gZGV0ZXJtaW5lIHJvdyB3aWR0aC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtd2lkdGg6IHJlbS1jYWxjKDEyMDApICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBsaW5lIGhlaWdodCBmb3IgYWxsIHR5cGUuIGAkZ2xvYmFsLWxpbmVoZWlnaHRgIGlzIDI0cHggd2hpbGUgYCRnbG9iYWwtZm9udC1zaXplYCBpcyAxNnB4XG4vLy8gQHR5cGUgTnVtYmVyXG4kZ2xvYmFsLWxpbmVoZWlnaHQ6IDEuNSAhZGVmYXVsdDtcblxuLy8vIENvbG9ycyB1c2VkIGZvciBidXR0b25zLCBjYWxsb3V0cywgbGlua3MsIGV0Yy4gVGhlcmUgbXVzdCBhbHdheXMgYmUgYSBjb2xvciBjYWxsZWQgYHByaW1hcnlgLlxuLy8vIEB0eXBlIE1hcFxuJGZvdW5kYXRpb24tcGFsZXR0ZTogKFxuICBwcmltYXJ5OiAjMTc3OWJhLFxuICBzZWNvbmRhcnk6ICM3Njc2NzYsXG4gIHN1Y2Nlc3M6ICMzYWRiNzYsXG4gIHdhcm5pbmc6ICNmZmFlMDAsXG4gIGFsZXJ0OiAjY2M0YjM3LFxuKSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIHVzZWQgZm9yIGxpZ2h0IGdyYXkgVUkgaXRlbXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRsaWdodC1ncmF5OiAjZTZlNmU2ICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgdXNlZCBmb3IgbWVkaXVtIGdyYXkgVUkgaXRlbXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRtZWRpdW0tZ3JheTogI2NhY2FjYSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIHVzZWQgZm9yIGRhcmsgZ3JheSBVSSBpdGVtcy5cbi8vLyBAdHlwZSBDb2xvclxuJGRhcmstZ3JheTogIzhhOGE4YSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIHVzZWQgZm9yIGJsYWNrIHVpIGl0ZW1zLlxuLy8vIEB0eXBlIENvbG9yXG4kYmxhY2s6ICMwYTBhMGEgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciB1c2VkIGZvciB3aGl0ZSB1aSBpdGVtcy5cbi8vLyBAdHlwZSBDb2xvclxuJHdoaXRlOiAjZmVmZWZlICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvZiB0aGUgYm9keS5cbi8vLyBAdHlwZSBDb2xvclxuJGJvZHktYmFja2dyb3VuZDogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gVGV4dCBjb2xvciBvZiB0aGUgYm9keS5cbi8vLyBAdHlwZSBDb2xvclxuJGJvZHktZm9udC1jb2xvcjogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gRm9udCBzdGFjayBvZiB0aGUgYm9keS5cbi8vLyBAdHlwZSBMaXN0XG4kYm9keS1mb250LWZhbWlseTogJ0hlbHZldGljYSBOZXVlJywgSGVsdmV0aWNhLCBSb2JvdG8sIEFyaWFsLCBzYW5zLXNlcmlmICFkZWZhdWx0O1xuXG4vLy8gU2V0IHRvIGB0cnVlYCB0byBlbmFibGUgYW50aWFsaWFzZWQgdHlwZSwgdXNpbmcgdGhlIGAtd2Via2l0LWZvbnQtc21vb3RoaW5nYCBhbmQgYC1tb3otb3N4LWZvbnQtc21vb3RoaW5nYCBDU1MgcHJvcGVydGllcy5cbi8vLyBAdHlwZSBCb29sZWFuXG4kYm9keS1hbnRpYWxpYXNlZDogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCB2YWx1ZSB1c2VkIGZvciBtYXJnaW4gb24gY29tcG9uZW50cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtbWFyZ2luOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gR2xvYmFsIHZhbHVlIHVzZWQgZm9yIHBhZGRpbmcgb24gY29tcG9uZW50cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtcGFkZGluZzogMXJlbSAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCB2YWx1ZSB1c2VkIGZvciBwb3NpdGlvbmluZyBvbiBjb21wb25lbnRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGdsb2JhbC1wb3NpdGlvbjogMXJlbSAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCBmb250IHdlaWdodCB1c2VkIGZvciBub3JtYWwgdHlwZS5cbi8vLyBAdHlwZSBLZXl3b3JkIHwgTnVtYmVyXG4kZ2xvYmFsLXdlaWdodC1ub3JtYWw6IG5vcm1hbCAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCBmb250IHdlaWdodCB1c2VkIGZvciBib2xkIHR5cGUuXG4vLy8gQHR5cGUgS2V5d29yZCB8IE51bWJlclxuJGdsb2JhbC13ZWlnaHQtYm9sZDogYm9sZCAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCB2YWx1ZSB1c2VkIGZvciBhbGwgZWxlbWVudHMgdGhhdCBoYXZlIGEgYm9yZGVyIHJhZGl1cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtcmFkaXVzOiAwICFkZWZhdWx0O1xuXG4vLy8gR2xvYmFsIHZhbHVlIHVzZWQgZm9yIGFsbCBtZW51IHN0eWxlcy4gQ2FuIGJlIG92ZXJ3cml0dGVuIGF0IGluZGl2aWR1YWwgbWVudSBjb21wb25lbnQgbGV2ZWwuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZ2xvYmFsLW1lbnUtcGFkZGluZzogMC43cmVtIDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBHbG9iYWwgdmFsdWUgdXNlZCBmb3IgYWxsIG1lbnUgc3R5bGVzLiBOZXN0ZWQgbWFyZ2luIGZvciBzdWJtZW51LlxuJGdsb2JhbC1tZW51LW5lc3RlZC1tYXJnaW46IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBTZXRzIHRoZSB0ZXh0IGRpcmVjdGlvbiBvZiB0aGUgQ1NTLiBDYW4gYmUgZWl0aGVyIGBsdHJgIG9yIGBydGxgLlxuLy8vIEB0eXBlIEtleXdvcmRcbiRnbG9iYWwtdGV4dC1kaXJlY3Rpb246IGx0ciAhZGVmYXVsdDtcblxuLy8vIEVuYWJsZXMgZmxleGJveCBmb3IgY29tcG9uZW50cyB0aGF0IHN1cHBvcnQgaXQuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGdsb2JhbC1mbGV4Ym94OiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gRW5hYmxlZCByZXNwb25zaXZlIGJyZWFrcG9pbnRzIGZvciBwcm90b3R5cGVzIGlmIGFwcGxpY2FibGVcbi8vLyBAdHlwZSBCb29sZWFuXG4kZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50czogZmFsc2UgIWRlZmF1bHQ7XG5cbi8vLyBCdXR0b24gY3Vyc29yJ3MgdmFsdWUsIGBhdXRvYCBieSBkZWZhdWx0XG4vLy8gQHR5cGUgS2V5d29yZFxuJGdsb2JhbC1idXR0b24tY3Vyc29yOiBhdXRvICFkZWZhdWx0O1xuXG5AaWYgbm90IG1hcC1oYXMta2V5KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHByaW1hcnkpIHtcbiAgQGVycm9yICdJbiAkZm91bmRhdGlvbi1wYWxldHRlLCB5b3UgbXVzdCBoYXZlIGEgY29sb3IgbmFtZWQgXCJwcmltYXJ5XCIuJztcbn1cblxuLy8gSW50ZXJuYWwgdmFyaWFibGVzIHVzZWQgZm9yIHRleHQgZGlyZWN0aW9uXG4kZ2xvYmFsLWxlZnQ6IGlmKCRnbG9iYWwtdGV4dC1kaXJlY3Rpb24gPT0gcnRsLCByaWdodCwgbGVmdCk7XG4kZ2xvYmFsLXJpZ2h0OiBpZigkZ2xvYmFsLXRleHQtZGlyZWN0aW9uID09IHJ0bCwgbGVmdCwgcmlnaHQpO1xuXG4vLyBJbnRlcm5hbCB2YXJpYWJsZSB0aGF0IGNvbnRhaW5zIHRoZSBmbGV4IGp1c3RpZnlpbmcgb3B0aW9uc1xuJC16Zi1mbGV4LWp1c3RpZnk6IC16Zi1mbGV4LWp1c3RpZnkoJGdsb2JhbC10ZXh0LWRpcmVjdGlvbik7XG5cbi8vLyBHbG9iYWwgdG9sZXJhbmNlIGZvciBjb2xvciBwaWNrIGNvbnRyYXN0LlxuLy8vIEB0eXBlIE51bWJlclxuJGdsb2JhbC1jb2xvci1waWNrLWNvbnRyYXN0LXRvbGVyYW5jZTogMCAhZGVmYXVsdDtcblxuLy8gSW50ZXJuYWwgdmFyaWFibGVzIHVzZWQgZm9yIGNvbG9yc1xuQGluY2x1ZGUgYWRkLWZvdW5kYXRpb24tY29sb3JzO1xuXG5AbWl4aW4gZm91bmRhdGlvbi1nbG9iYWwtc3R5bGVzIHtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1ub3JtYWxpemU7XG5cbiAgLy8gVGhlc2Ugc3R5bGVzIGFyZSBhcHBsaWVkIHRvIGEgPG1ldGE+IHRhZywgd2hpY2ggaXMgcmVhZCBieSB0aGUgRm91bmRhdGlvbiBKYXZhU2NyaXB0XG4gIC5mb3VuZGF0aW9uLW1xIHtcbiAgICBmb250LWZhbWlseTogJyN7LXpmLWJwLXNlcmlhbGl6ZSgkYnJlYWtwb2ludHMpfSc7XG4gIH1cblxuICBodG1sIHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIGZvbnQtc2l6ZTogJGdsb2JhbC1mb250LXNpemU7XG4gIH1cblxuICAvLyBTZXQgYm94LXNpemluZyBnbG9iYWxseSB0byBoYW5kbGUgcGFkZGluZyBhbmQgYm9yZGVyIHdpZHRoc1xuICAqLFxuICAqOjpiZWZvcmUsXG4gICo6OmFmdGVyIHtcbiAgICBib3gtc2l6aW5nOiBpbmhlcml0O1xuICB9XG5cbiAgLy8gRGVmYXVsdCBib2R5IHN0eWxlc1xuICBib2R5IHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcblxuICAgIGJhY2tncm91bmQ6ICRib2R5LWJhY2tncm91bmQ7XG5cbiAgICBmb250LWZhbWlseTogJGJvZHktZm9udC1mYW1pbHk7XG4gICAgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbDtcbiAgICBsaW5lLWhlaWdodDogJGdsb2JhbC1saW5laGVpZ2h0O1xuICAgIGNvbG9yOiAkYm9keS1mb250LWNvbG9yO1xuXG4gICAgQGlmICgkYm9keS1hbnRpYWxpYXNlZCkge1xuICAgICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgbm8tdmVuZG9yLXByZWZpeGVzXG4gICAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlOyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIG5vLXZlbmRvci1wcmVmaXhlc1xuICAgIH1cbiAgfVxuXG4gIGltZyB7XG4gICAgLy8gR2V0IHJpZCBvZiBnYXAgdW5kZXIgaW1hZ2VzIGJ5IG1ha2luZyB0aGVtIGRpc3BsYXk6IGlubGluZS1ibG9jazsgYnkgZGVmYXVsdFxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXG4gICAgLy8gR3JpZCBkZWZhdWx0cyB0byBnZXQgaW1hZ2VzIGFuZCBlbWJlZHMgdG8gd29yayBwcm9wZXJseVxuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgLW1zLWludGVycG9sYXRpb24tbW9kZTogYmljdWJpYztcbiAgfVxuXG4gIC8vIE1ha2Ugc3VyZSB0ZXh0YXJlYSB0YWtlcyBvbiBoZWlnaHQgYXV0b21hdGljYWxseVxuICB0ZXh0YXJlYSB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIG1pbi1oZWlnaHQ6IDUwcHg7XG4gICAgYm9yZGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4gIH1cblxuICAvLyBNYWtlIHNlbGVjdCBlbGVtZW50cyBhcmUgMTAwJSB3aWR0aCBieSBkZWZhdWx0XG4gIHNlbGVjdCB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBib3JkZXItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiAgfVxuXG4gIC8vIFN0eWxlcyBHb29nbGUgTWFwcyBhbmQgTWFwUXVlc3QgZW1iZWRzIHByb3Blcmx5XG4gIC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgbm8taWRzXG4gIC5tYXBfY2FudmFzLFxuICAubXFhLWRpc3BsYXkge1xuICAgIGltZyxcbiAgICBlbWJlZCxcbiAgICBvYmplY3Qge1xuICAgICAgbWF4LXdpZHRoOiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG5cbiAgLy8gUmVzZXQgPGJ1dHRvbj4gc3R5bGVzIGNyZWF0ZWQgYnkgbW9zdCBicm93c2Vyc1xuICBidXR0b24ge1xuICAgIEBpbmNsdWRlIGRpc2FibGUtbW91c2Utb3V0bGluZTtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gICAgYm9yZGVyOiAwO1xuICAgIGJvcmRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIGN1cnNvcjogJGdsb2JhbC1idXR0b24tY3Vyc29yO1xuICB9XG5cbiAgLy8gUHJldmVudCB0ZXh0IG92ZXJmbG93IG9uIHByZVxuICBwcmUge1xuICAgIG92ZXJmbG93OiBhdXRvO1xuICB9XG5cbiAgLy8gTWFrZSByZXNldCBpbmhlcml0IGZvbnQtZmFtaWx5IGluc3RlYWQgb2Ygc2V0dGluZ3Mgc2Fucy1zZXJpZlxuICBidXR0b24sXG4gIGlucHV0LFxuICBvcHRncm91cCxcbiAgc2VsZWN0LFxuICB0ZXh0YXJlYSB7XG4gICAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIH1cblxuICAvLyBJbnRlcm5hbCBjbGFzc2VzIHRvIHNob3cvaGlkZSBlbGVtZW50cyBpbiBKYXZhU2NyaXB0XG4gIC5pcy12aXNpYmxlIHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmlzLWhpZGRlbiB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG4iLCIvLyAgRm91bmRhdGlvblByZXNzIHNldHRpbmdzLlxyXG4vLyAgQmFzZWQgb24gRm91bmRhdGlvbiBmb3IgU2l0ZXMgdjYuNC4zXHJcbi8vICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vL1xyXG4vLyAgVGFibGUgb2YgQ29udGVudHM6XHJcbi8vXHJcbi8vICAgMS4gR2xvYmFsXHJcbi8vICAgMi4gQnJlYWtwb2ludHNcclxuLy8gICAzLiBUaGUgR3JpZFxyXG4vLyAgIDQuIEJhc2UgVHlwb2dyYXBoeVxyXG4vLyAgIDUuIFR5cG9ncmFwaHkgSGVscGVyc1xyXG4vLyAgIDYuIEFiaWRlXHJcbi8vICAgNy4gQWNjb3JkaW9uXHJcbi8vICAgOC4gQWNjb3JkaW9uIE1lbnVcclxuLy8gICA5LiBCYWRnZVxyXG4vLyAgMTAuIEJyZWFkY3J1bWJzXHJcbi8vICAxMS4gQnV0dG9uXHJcbi8vICAxMi4gQnV0dG9uIEdyb3VwXHJcbi8vICAxMy4gQ2FsbG91dFxyXG4vLyAgMTQuIENhcmRcclxuLy8gIDE1LiBDbG9zZSBCdXR0b25cclxuLy8gIDE2LiBEcmlsbGRvd25cclxuLy8gIDE3LiBEcm9wZG93blxyXG4vLyAgMTguIERyb3Bkb3duIE1lbnVcclxuLy8gIDE5LiBGbGV4Ym94IFV0aWxpdGllc1xyXG4vLyAgMjAuIEZvcm1zXHJcbi8vICAyMS4gTGFiZWxcclxuLy8gIDIyLiBNZWRpYSBPYmplY3RcclxuLy8gIDIzLiBNZW51XHJcbi8vICAyNC4gTWV0ZXJcclxuLy8gIDI1LiBPZmYtY2FudmFzXHJcbi8vICAyNi4gT3JiaXRcclxuLy8gIDI3LiBQYWdpbmF0aW9uXHJcbi8vICAyOC4gUHJvZ3Jlc3MgQmFyXHJcbi8vICAyOS4gUHJvdG90eXBlIEFycm93XHJcbi8vICAzMC4gUHJvdG90eXBlIEJvcmRlci1Cb3hcclxuLy8gIDMxLiBQcm90b3R5cGUgQm9yZGVyLU5vbmVcclxuLy8gIDMyLiBQcm90b3R5cGUgQm9yZGVyZWRcclxuLy8gIDMzLiBQcm90b3R5cGUgRGlzcGxheVxyXG4vLyAgMzQuIFByb3RvdHlwZSBGb250LVN0eWxpbmdcclxuLy8gIDM1LiBQcm90b3R5cGUgTGlzdC1TdHlsZS1UeXBlXHJcbi8vICAzNi4gUHJvdG90eXBlIE92ZXJmbG93XHJcbi8vICAzNy4gUHJvdG90eXBlIFBvc2l0aW9uXHJcbi8vICAzOC4gUHJvdG90eXBlIFJvdW5kZWRcclxuLy8gIDM5LiBQcm90b3R5cGUgU2VwYXJhdG9yXHJcbi8vICA0MC4gUHJvdG90eXBlIFNoYWRvd1xyXG4vLyAgNDEuIFByb3RvdHlwZSBTaXppbmdcclxuLy8gIDQyLiBQcm90b3R5cGUgU3BhY2luZ1xyXG4vLyAgNDMuIFByb3RvdHlwZSBUZXh0LURlY29yYXRpb25cclxuLy8gIDQ0LiBQcm90b3R5cGUgVGV4dC1UcmFuc2Zvcm1hdGlvblxyXG4vLyAgNDUuIFByb3RvdHlwZSBUZXh0LVV0aWxpdGllc1xyXG4vLyAgNDYuIFJlc3BvbnNpdmUgRW1iZWRcclxuLy8gIDQ3LiBSZXZlYWxcclxuLy8gIDQ4LiBTbGlkZXJcclxuLy8gIDQ5LiBTd2l0Y2hcclxuLy8gIDUwLiBUYWJsZVxyXG4vLyAgNTEuIFRhYnNcclxuLy8gIDUyLiBUaHVtYm5haWxcclxuLy8gIDUzLiBUaXRsZSBCYXJcclxuLy8gIDU0LiBUb29sdGlwXHJcbi8vICA1NS4gVG9wIEJhclxyXG4vLyAgNTYuIFh5IEdyaWRcclxuXHJcbkBpbXBvcnQgJ3V0aWwvdXRpbCc7XHJcbkBpbXBvcnQgJ2dsb2JhbC9jb2xvcnMnO1xyXG5cclxuLy8gMS4gR2xvYmFsXHJcbi8vIC0tLS0tLS0tLVxyXG5cclxuJGdsb2JhbC1mb250LXNpemU6IDEwMCU7XHJcbiRnbG9iYWwtd2lkdGg6IHJlbS1jYWxjKDEyMDApO1xyXG4kZ2xvYmFsLWxpbmVoZWlnaHQ6IDEuNTtcclxuXHJcbiRnYW0tcHVycGxlOiAjNjgwMGQyO1xyXG4kZ2FtLXB1cnBsZS1saWdodDogIzllMjlmZDtcclxuJGdhbS1wdXJwbGUtZGFyazogIzQ0MDA5OTtcclxuJGdhbS1wdXJwbGUtZXh0cmEtZGFyazogIzMwMTY0YTtcclxuJGdhbS15ZWxsb3c6ICNmYmUyMDA7XHJcblxyXG4kZm91bmRhdGlvbi1wYWxldHRlOiAoXHJcbiAgcHJpbWFyeTogJGdhbS1wdXJwbGUsXHJcbiAgc2Vjb25kYXJ5OiAkZ2FtLXllbGxvdyxcclxuICBzdWNjZXNzOiAjM2FkYjc2LFxyXG4gIHdhcm5pbmc6ICNmZmFlMDAsXHJcbiAgYWxlcnQ6ICNjYzRiMzcsXHJcbik7XHJcbiRsaWdodC1ncmF5OiAjZjJmMmYyO1xyXG4kbWVkaXVtLWdyYXk6ICNjYWNhY2E7XHJcbiRkYXJrLWdyYXk6ICM4YThhOGE7XHJcbiRibGFjazogIzBhMGEwYTtcclxuJHdoaXRlOiAjZmVmZWZlO1xyXG5cclxuJGJvZHktYmFja2dyb3VuZDogJHdoaXRlO1xyXG4kYm9keS1mb250LWNvbG9yOiAkYmxhY2s7XHJcbiRib2R5LWZvbnQtZmFtaWx5OiBha3Rpdi1ncm90ZXNrLCBzYW5zLXNlcmlmO1xyXG4kYm9keS1hbnRpYWxpYXNlZDogdHJ1ZTtcclxuJGdsb2JhbC1tYXJnaW46IDFyZW07XHJcbiRnbG9iYWwtcGFkZGluZzogMXJlbTtcclxuJGdsb2JhbC1wb3NpdGlvbjogMXJlbTtcclxuJGdsb2JhbC13ZWlnaHQtbm9ybWFsOiA0MDA7XHJcbiRnbG9iYWwtd2VpZ2h0LW1lZGl1bTogNTAwO1xyXG4kZ2xvYmFsLXdlaWdodC1ib2xkOiA3MDA7XHJcbiRnbG9iYWwtcmFkaXVzOiByZW0tY2FsYygyMCk7XHJcbiRnbG9iYWwtbWVudS1wYWRkaW5nOiByZW0tY2FsYyg1IDEwIDUgMTApO1xyXG4kZ2xvYmFsLW1lbnUtbmVzdGVkLW1hcmdpbjogMXJlbTtcclxuJGdsb2JhbC10ZXh0LWRpcmVjdGlvbjogbHRyO1xyXG4kZ2xvYmFsLWZsZXhib3g6IHRydWU7XHJcbiRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzOiBmYWxzZTtcclxuJGdsb2JhbC1idXR0b24tY3Vyc29yOiBhdXRvO1xyXG4kZ2xvYmFsLWNvbG9yLXBpY2stY29udHJhc3QtdG9sZXJhbmNlOiAwO1xyXG4kcHJpbnQtdHJhbnNwYXJlbnQtYmFja2dyb3VuZHM6IHRydWU7XHJcblxyXG5AaW5jbHVkZSBhZGQtZm91bmRhdGlvbi1jb2xvcnM7XHJcblxyXG4vLyAyLiBCcmVha3BvaW50c1xyXG4vLyAtLS0tLS0tLS0tLS0tLVxyXG5cclxuJGJyZWFrcG9pbnRzOiAoXHJcbiAgc21hbGw6IDAsXHJcbiAgbWVkaXVtOiA2NDBweCxcclxuICBsYXJnZTogMTAyNHB4LFxyXG4gIHhsYXJnZTogMTIwMHB4LFxyXG4gIHh4bGFyZ2U6IDE0MjBweCxcclxuKTtcclxuJHByaW50LWJyZWFrcG9pbnQ6IGxhcmdlO1xyXG4kYnJlYWtwb2ludC1jbGFzc2VzOiAoc21hbGwgbWVkaXVtIGxhcmdlKTtcclxuXHJcbi8vIDMuIFRoZSBHcmlkXHJcbi8vIC0tLS0tLS0tLS0tXHJcblxyXG4kZ3JpZC1yb3ctd2lkdGg6IG5vbmU7XHJcbiRncmlkLWNvbHVtbi1jb3VudDogMTI7XHJcbiRncmlkLWNvbHVtbi1ndXR0ZXI6IChcclxuICBzbWFsbDogMjBweCxcclxuICBtZWRpdW06IDMwcHgsXHJcbik7XHJcbiRncmlkLWNvbHVtbi1hbGlnbi1lZGdlOiB0cnVlO1xyXG4kZ3JpZC1jb2x1bW4tYWxpYXM6ICdjb2x1bW5zJztcclxuJGJsb2NrLWdyaWQtbWF4OiA4O1xyXG5cclxuLy8gNC4gQmFzZSBUeXBvZ3JhcGh5XHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuJGhlYWRlci1mb250LWZhbWlseTogJGJvZHktZm9udC1mYW1pbHk7XHJcbiRoZWFkZXItZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW1lZGl1bTtcclxuJGhlYWRlci1mb250LXN0eWxlOiBub3JtYWw7XHJcbiRmb250LWZhbWlseS1tb25vc3BhY2U6IENvbnNvbGFzLCAnTGliZXJhdGlvbiBNb25vJywgQ291cmllciwgbW9ub3NwYWNlO1xyXG4kaGVhZGVyLWNvbG9yOiBpbmhlcml0O1xyXG4kaGVhZGVyLWxpbmVoZWlnaHQ6IDEuMjtcclxuJGhlYWRlci1tYXJnaW4tYm90dG9tOiAwLjVyZW07XHJcbiRoZWFkZXItc3R5bGVzOiAoXHJcbiAgc21hbGw6IChcclxuICAgICdoMSc6ICgnZm9udC1zaXplJzogMjQpLFxyXG4gICAgJ2gyJzogKCdmb250LXNpemUnOiAyMCksXHJcbiAgICAnaDMnOiAoJ2ZvbnQtc2l6ZSc6IDE5KSxcclxuICAgICdoNCc6ICgnZm9udC1zaXplJzogMTgpLFxyXG4gICAgJ2g1JzogKCdmb250LXNpemUnOiAxNyksXHJcbiAgICAnaDYnOiAoJ2ZvbnQtc2l6ZSc6IDE2KSxcclxuICApLFxyXG4gIG1lZGl1bTogKFxyXG4gICAgJ2gxJzogKCdmb250LXNpemUnOiA0OCksXHJcbiAgICAnaDInOiAoJ2ZvbnQtc2l6ZSc6IDM0KSxcclxuICAgICdoMyc6ICgnZm9udC1zaXplJzogMjgpLFxyXG4gICAgJ2g0JzogKCdmb250LXNpemUnOiAyNiksXHJcbiAgICAnaDUnOiAoJ2ZvbnQtc2l6ZSc6IDIwKSxcclxuICAgICdoNic6ICgnZm9udC1zaXplJzogMTgpLFxyXG4gICksXHJcbik7XHJcbiRoZWFkZXItdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eTtcclxuJHNtYWxsLWZvbnQtc2l6ZTogODAlO1xyXG4kaGVhZGVyLXNtYWxsLWZvbnQtY29sb3I6ICRtZWRpdW0tZ3JheTtcclxuJHBhcmFncmFwaC1saW5laGVpZ2h0OiAxLjY7XHJcbiRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbTogMXJlbTtcclxuJHBhcmFncmFwaC10ZXh0LXJlbmRlcmluZzogb3B0aW1pemVMZWdpYmlsaXR5O1xyXG4kY29kZS1jb2xvcjogJGJsYWNrO1xyXG4kY29kZS1mb250LWZhbWlseTogJGZvbnQtZmFtaWx5LW1vbm9zcGFjZTtcclxuJGNvZGUtZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbDtcclxuJGNvZGUtYmFja2dyb3VuZDogJGxpZ2h0LWdyYXk7XHJcbiRjb2RlLWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheTtcclxuJGNvZGUtcGFkZGluZzogcmVtLWNhbGMoMiA1IDEpO1xyXG4kYW5jaG9yLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcclxuJGFuY2hvci1jb2xvci1ob3Zlcjogc2NhbGUtY29sb3IoJGFuY2hvci1jb2xvciwgJGxpZ2h0bmVzczogLTE0JSk7XHJcbiRhbmNob3ItdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4kYW5jaG9yLXRleHQtZGVjb3JhdGlvbi1ob3Zlcjogbm9uZTtcclxuJGhyLXdpZHRoOiAkZ2xvYmFsLXdpZHRoO1xyXG4kaHItYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5O1xyXG4kaHItbWFyZ2luOiByZW0tY2FsYygyMCkgYXV0bztcclxuJGxpc3QtbGluZWhlaWdodDogJHBhcmFncmFwaC1saW5laGVpZ2h0O1xyXG4kbGlzdC1tYXJnaW4tYm90dG9tOiAkcGFyYWdyYXBoLW1hcmdpbi1ib3R0b207XHJcbiRsaXN0LXN0eWxlLXR5cGU6IGRpc2M7XHJcbiRsaXN0LXN0eWxlLXBvc2l0aW9uOiBvdXRzaWRlO1xyXG4kbGlzdC1zaWRlLW1hcmdpbjogMS4yNXJlbTtcclxuJGxpc3QtbmVzdGVkLXNpZGUtbWFyZ2luOiAxLjI1cmVtO1xyXG4kZGVmbmxpc3QtbWFyZ2luLWJvdHRvbTogMXJlbTtcclxuJGRlZm5saXN0LXRlcm0td2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkO1xyXG4kZGVmbmxpc3QtdGVybS1tYXJnaW4tYm90dG9tOiAwLjNyZW07XHJcbiRibG9ja3F1b3RlLWNvbG9yOiAkZGFyay1ncmF5O1xyXG4kYmxvY2txdW90ZS1wYWRkaW5nOiByZW0tY2FsYyg5IDIwIDAgMTkpO1xyXG4kYmxvY2txdW90ZS1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XHJcbiRjaXRlLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTMpO1xyXG4kY2l0ZS1jb2xvcjogJGRhcmstZ3JheTtcclxuJGNpdGUtcHNldWRvLWNvbnRlbnQ6ICdcXDIwMTQgXFwwMDIwJztcclxuJGtleXN0cm9rZS1mb250OiAkZm9udC1mYW1pbHktbW9ub3NwYWNlO1xyXG4ka2V5c3Ryb2tlLWNvbG9yOiAkYmxhY2s7XHJcbiRrZXlzdHJva2UtYmFja2dyb3VuZDogJGxpZ2h0LWdyYXk7XHJcbiRrZXlzdHJva2UtcGFkZGluZzogcmVtLWNhbGMoMiA0IDApO1xyXG4ka2V5c3Ryb2tlLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XHJcbiRhYmJyLXVuZGVybGluZTogMXB4IGRvdHRlZCAkYmxhY2s7XHJcblxyXG4vLyA1LiBUeXBvZ3JhcGh5IEhlbHBlcnNcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4kbGVhZC1mb250LXNpemU6ICRnbG9iYWwtZm9udC1zaXplICogMS4yNTtcclxuJGxlYWQtbGluZWhlaWdodDogMS42O1xyXG4kc3ViaGVhZGVyLWxpbmVoZWlnaHQ6IDEuNDtcclxuJHN1YmhlYWRlci1jb2xvcjogJGRhcmstZ3JheTtcclxuJHN1YmhlYWRlci1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsO1xyXG4kc3ViaGVhZGVyLW1hcmdpbi10b3A6IDAuMnJlbTtcclxuJHN1YmhlYWRlci1tYXJnaW4tYm90dG9tOiAwLjVyZW07XHJcbiRzdGF0LWZvbnQtc2l6ZTogMi41cmVtO1xyXG5cclxuLy8gNi4gQWJpZGVcclxuLy8gLS0tLS0tLS1cclxuXHJcbiRhYmlkZS1pbnB1dHM6IHRydWU7XHJcbiRhYmlkZS1sYWJlbHM6IHRydWU7XHJcbiRpbnB1dC1iYWNrZ3JvdW5kLWludmFsaWQ6IGdldC1jb2xvcihhbGVydCk7XHJcbiRmb3JtLWxhYmVsLWNvbG9yLWludmFsaWQ6IGdldC1jb2xvcihhbGVydCk7XHJcbiRpbnB1dC1lcnJvci1jb2xvcjogZ2V0LWNvbG9yKGFsZXJ0KTtcclxuJGlucHV0LWVycm9yLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTIpO1xyXG4kaW5wdXQtZXJyb3ItZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQ7XHJcblxyXG4vLyA3LiBBY2NvcmRpb25cclxuLy8gLS0tLS0tLS0tLS0tXHJcblxyXG4kYWNjb3JkaW9uLWJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xyXG4kYWNjb3JkaW9uLXBsdXNtaW51czogdHJ1ZTtcclxuJGFjY29yZGlvbi10aXRsZS1mb250LXNpemU6IHJlbS1jYWxjKDE1KTtcclxuJGFjY29yZGlvbi1pdGVtLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcclxuJGFjY29yZGlvbi1pdGVtLWJhY2tncm91bmQtaG92ZXI6IHRyYW5zcGFyZW50O1xyXG4kYWNjb3JkaW9uLWl0ZW0tcGFkZGluZzogMS4yNXJlbSAxcmVtO1xyXG4kYWNjb3JkaW9uLWNvbnRlbnQtYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XHJcbiRhY2NvcmRpb24tY29udGVudC1ib3JkZXI6IDFweCBzb2xpZCAkbGlnaHQtZ3JheTtcclxuJGFjY29yZGlvbi1jb250ZW50LWNvbG9yOiAkYm9keS1mb250LWNvbG9yO1xyXG4kYWNjb3JkaW9uLWNvbnRlbnQtcGFkZGluZzogMXJlbTtcclxuXHJcbi8vIDguIEFjY29yZGlvbiBNZW51XHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4kYWNjb3JkaW9ubWVudS1wYWRkaW5nOiAkZ2xvYmFsLW1lbnUtcGFkZGluZztcclxuJGFjY29yZGlvbm1lbnUtbmVzdGVkLW1hcmdpbjogJGdsb2JhbC1tZW51LW5lc3RlZC1tYXJnaW47XHJcbiRhY2NvcmRpb25tZW51LXN1Ym1lbnUtcGFkZGluZzogJGFjY29yZGlvbm1lbnUtcGFkZGluZztcclxuJGFjY29yZGlvbm1lbnUtYXJyb3dzOiB0cnVlO1xyXG4kYWNjb3JkaW9ubWVudS1hcnJvdy1jb2xvcjogJHdoaXRlO1xyXG4kYWNjb3JkaW9ubWVudS1pdGVtLWJhY2tncm91bmQ6IG51bGw7XHJcbiRhY2NvcmRpb25tZW51LWJvcmRlcjogbnVsbDtcclxuJGFjY29yZGlvbm1lbnUtc3VibWVudS10b2dnbGUtYmFja2dyb3VuZDogbnVsbDtcclxuJGFjY29yZGlvbi1zdWJtZW51LXRvZ2dsZS1ib3JkZXI6ICRhY2NvcmRpb25tZW51LWJvcmRlcjtcclxuJGFjY29yZGlvbm1lbnUtc3VibWVudS10b2dnbGUtd2lkdGg6IDQwcHg7XHJcbiRhY2NvcmRpb25tZW51LXN1Ym1lbnUtdG9nZ2xlLWhlaWdodDogJGFjY29yZGlvbm1lbnUtc3VibWVudS10b2dnbGUtd2lkdGg7XHJcbiRhY2NvcmRpb25tZW51LWFycm93LXNpemU6IDZweDtcclxuXHJcbi8vIDkuIEJhZGdlXHJcbi8vIC0tLS0tLS0tXHJcblxyXG4kYmFkZ2UtYmFja2dyb3VuZDogJHByaW1hcnktY29sb3I7XHJcbiRiYWRnZS1jb2xvcjogJHdoaXRlO1xyXG4kYmFkZ2UtY29sb3ItYWx0OiAkYmxhY2s7XHJcbiRiYWRnZS1wYWxldHRlOiAkZm91bmRhdGlvbi1wYWxldHRlO1xyXG4kYmFkZ2UtcGFkZGluZzogMC4zZW07XHJcbiRiYWRnZS1taW53aWR0aDogMi4xZW07XHJcbiRiYWRnZS1mb250LXNpemU6IDAuNnJlbTtcclxuXHJcbi8vIDEwLiBCcmVhZGNydW1ic1xyXG4vLyAtLS0tLS0tLS0tLS0tLS1cclxuXHJcbiRicmVhZGNydW1icy1tYXJnaW46IDAgMCAkZ2xvYmFsLW1hcmdpbiAwO1xyXG4kYnJlYWRjcnVtYnMtaXRlbS1mb250LXNpemU6IHJlbS1jYWxjKDExKTtcclxuJGJyZWFkY3J1bWJzLWl0ZW0tY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xyXG4kYnJlYWRjcnVtYnMtaXRlbS1jb2xvci1jdXJyZW50OiAkYmxhY2s7XHJcbiRicmVhZGNydW1icy1pdGVtLWNvbG9yLWRpc2FibGVkOiAkbWVkaXVtLWdyYXk7XHJcbiRicmVhZGNydW1icy1pdGVtLW1hcmdpbjogMC43NXJlbTtcclxuJGJyZWFkY3J1bWJzLWl0ZW0tdXBwZXJjYXNlOiB0cnVlO1xyXG4kYnJlYWRjcnVtYnMtaXRlbS1zZXBhcmF0b3I6IHRydWU7XHJcbiRicmVhZGNydW1icy1pdGVtLXNlcGFyYXRvci1pdGVtOiAnLyc7XHJcbiRicmVhZGNydW1icy1pdGVtLXNlcGFyYXRvci1pdGVtLXJ0bDogJ1xcXFwnO1xyXG4kYnJlYWRjcnVtYnMtaXRlbS1zZXBhcmF0b3ItY29sb3I6ICRtZWRpdW0tZ3JheTtcclxuXHJcbi8vIDExLiBCdXR0b25cclxuLy8gLS0tLS0tLS0tLVxyXG5cclxuJGJ1dHRvbi1mb250LWZhbWlseTogaW5oZXJpdDtcclxuJGJ1dHRvbi1wYWRkaW5nOiByZW0tY2FsYyg4IDMwIDEwKTtcclxuJGJ1dHRvbi1tYXJnaW46IDAgMCAkZ2xvYmFsLW1hcmdpbiAwO1xyXG4kYnV0dG9uLWZpbGw6IHNvbGlkO1xyXG4kYnV0dG9uLWJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yO1xyXG4kYnV0dG9uLWJhY2tncm91bmQtaG92ZXI6IHNjYWxlLWNvbG9yKCRidXR0b24tYmFja2dyb3VuZCwgJGxpZ2h0bmVzczogLTE1JSk7XHJcbiRidXR0b24tY29sb3I6ICR3aGl0ZTtcclxuJGJ1dHRvbi1jb2xvci1hbHQ6ICRibGFjaztcclxuJGJ1dHRvbi1yYWRpdXM6IHJlbS1jYWxjKDIwKTtcclxuJGJ1dHRvbi1ob2xsb3ctYm9yZGVyLXdpZHRoOiAxcHg7XHJcbiRidXR0b24tc2l6ZXM6IChcclxuICB0aW55OiAwLjZyZW0sXHJcbiAgc21hbGw6IDAuNzVyZW0sXHJcbiAgZGVmYXVsdDogMC45cmVtLFxyXG4gIGxhcmdlOiAxLjI1cmVtLFxyXG4pO1xyXG4kYnV0dG9uLXBhbGV0dGU6ICRmb3VuZGF0aW9uLXBhbGV0dGU7XHJcbiRidXR0b24tb3BhY2l0eS1kaXNhYmxlZDogMC4yNTtcclxuJGJ1dHRvbi1iYWNrZ3JvdW5kLWhvdmVyLWxpZ2h0bmVzczogLTIwJTtcclxuJGJ1dHRvbi1ob2xsb3ctaG92ZXItbGlnaHRuZXNzOiAtNTAlO1xyXG4kYnV0dG9uLXRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4yNXMgZWFzZS1vdXQsIGNvbG9yIDAuMjVzIGVhc2Utb3V0O1xyXG5cclxuLy8gMTIuIEJ1dHRvbiBHcm91cFxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4kYnV0dG9uZ3JvdXAtbWFyZ2luOiAxcmVtO1xyXG4kYnV0dG9uZ3JvdXAtc3BhY2luZzogMXB4O1xyXG4kYnV0dG9uZ3JvdXAtY2hpbGQtc2VsZWN0b3I6ICcuYnV0dG9uJztcclxuJGJ1dHRvbmdyb3VwLWV4cGFuZC1tYXg6IDY7XHJcbiRidXR0b25ncm91cC1yYWRpdXMtb24tZWFjaDogdHJ1ZTtcclxuXHJcbi8vIDEzLiBDYWxsb3V0XHJcbi8vIC0tLS0tLS0tLS0tXHJcblxyXG4kY2FsbG91dC1iYWNrZ3JvdW5kOiAkd2hpdGU7XHJcbiRjYWxsb3V0LWJhY2tncm91bmQtZmFkZTogODUlO1xyXG4kY2FsbG91dC1ib3JkZXI6IDFweCBzb2xpZCByZ2JhKCRibGFjaywgMC4yNSk7XHJcbiRjYWxsb3V0LW1hcmdpbjogMCAwIDFyZW0gMDtcclxuJGNhbGxvdXQtcGFkZGluZzogMXJlbTtcclxuJGNhbGxvdXQtZm9udC1jb2xvcjogJGJvZHktZm9udC1jb2xvcjtcclxuJGNhbGxvdXQtZm9udC1jb2xvci1hbHQ6ICRib2R5LWJhY2tncm91bmQ7XHJcbiRjYWxsb3V0LXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XHJcbiRjYWxsb3V0LWxpbmstdGludDogMzAlO1xyXG5cclxuLy8gMTQuIENhcmRcclxuLy8gLS0tLS0tLS1cclxuXHJcbiRjYXJkLWJhY2tncm91bmQ6ICR3aGl0ZTtcclxuJGNhcmQtZm9udC1jb2xvcjogJGJvZHktZm9udC1jb2xvcjtcclxuJGNhcmQtZGl2aWRlci1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheTtcclxuJGNhcmQtYm9yZGVyOiAxcHggc29saWQgJGxpZ2h0LWdyYXk7XHJcbiRjYXJkLXNoYWRvdzogbm9uZTtcclxuJGNhcmQtYm9yZGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XHJcbiRjYXJkLXBhZGRpbmc6ICRnbG9iYWwtcGFkZGluZztcclxuJGNhcmQtbWFyZ2luLWJvdHRvbTogJGdsb2JhbC1tYXJnaW47XHJcblxyXG4vLyAxNS4gQ2xvc2UgQnV0dG9uXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbiRjbG9zZWJ1dHRvbi1wb3NpdGlvbjogcmlnaHQgdG9wO1xyXG4kY2xvc2VidXR0b24tb2Zmc2V0LWhvcml6b250YWw6IChcclxuICBzbWFsbDogMC42NnJlbSxcclxuICBtZWRpdW06IDFyZW0sXHJcbik7XHJcbiRjbG9zZWJ1dHRvbi1vZmZzZXQtdmVydGljYWw6IChcclxuICBzbWFsbDogMC4zM2VtLFxyXG4gIG1lZGl1bTogMC41cmVtLFxyXG4pO1xyXG4kY2xvc2VidXR0b24tc2l6ZTogKFxyXG4gIHNtYWxsOiAxLjVlbSxcclxuICBtZWRpdW06IDJlbSxcclxuKTtcclxuJGNsb3NlYnV0dG9uLWxpbmVoZWlnaHQ6IDE7XHJcbiRjbG9zZWJ1dHRvbi1jb2xvcjogJGRhcmstZ3JheTtcclxuJGNsb3NlYnV0dG9uLWNvbG9yLWhvdmVyOiAkYmxhY2s7XHJcblxyXG4vLyAxNi4gRHJpbGxkb3duXHJcbi8vIC0tLS0tLS0tLS0tLS1cclxuXHJcbiRkcmlsbGRvd24tdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMTVzIGxpbmVhcjtcclxuJGRyaWxsZG93bi1hcnJvd3M6IHRydWU7XHJcbiRkcmlsbGRvd24tcGFkZGluZzogcmVtLWNhbGMoMTAgMTUpO1xyXG4kZHJpbGxkb3duLW5lc3RlZC1tYXJnaW46IDA7XHJcbiRkcmlsbGRvd24tYmFja2dyb3VuZDogJGxpZ2h0LWdyYXk7XHJcbiRkcmlsbGRvd24tc3VibWVudS1wYWRkaW5nOiAkZHJpbGxkb3duLXBhZGRpbmc7XHJcbiRkcmlsbGRvd24tc3VibWVudS1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheTtcclxuJGRyaWxsZG93bi1hcnJvdy1jb2xvcjogJHByaW1hcnktY29sb3I7XHJcbiRkcmlsbGRvd24tYXJyb3ctc2l6ZTogNnB4O1xyXG5cclxuLy8gMTcuIERyb3Bkb3duXHJcbi8vIC0tLS0tLS0tLS0tLVxyXG5cclxuJGRyb3Bkb3duLXBhZGRpbmc6IDFyZW07XHJcbiRkcm9wZG93bi1iYWNrZ3JvdW5kOiAkYm9keS1iYWNrZ3JvdW5kO1xyXG4kZHJvcGRvd24tYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5O1xyXG4kZHJvcGRvd24tZm9udC1zaXplOiAxcmVtO1xyXG4kZHJvcGRvd24td2lkdGg6IDMwMHB4O1xyXG4kZHJvcGRvd24tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcclxuJGRyb3Bkb3duLXNpemVzOiAoXHJcbiAgdGlueTogMTAwcHgsXHJcbiAgc21hbGw6IDIwMHB4LFxyXG4gIGxhcmdlOiA0MDBweCxcclxuKTtcclxuXHJcbi8vIDE4LiBEcm9wZG93biBNZW51XHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4kZHJvcGRvd25tZW51LWFycm93czogZmFsc2U7XHJcbiRkcm9wZG93bm1lbnUtYXJyb3ctY29sb3I6ICRhbmNob3ItY29sb3I7XHJcbiRkcm9wZG93bm1lbnUtYXJyb3ctc2l6ZTogNnB4O1xyXG4kZHJvcGRvd25tZW51LWFycm93LXBhZGRpbmc6IDEuNXJlbTtcclxuJGRyb3Bkb3dubWVudS1taW4td2lkdGg6IDIwMHB4O1xyXG4kZHJvcGRvd25tZW51LWJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xyXG4kZHJvcGRvd25tZW51LXN1Ym1lbnUtYmFja2dyb3VuZDogJHdoaXRlO1xyXG4kZHJvcGRvd25tZW51LXBhZGRpbmc6ICRnbG9iYWwtbWVudS1wYWRkaW5nO1xyXG4kZHJvcGRvd25tZW51LW5lc3RlZC1tYXJnaW46IDA7XHJcbiRkcm9wZG93bm1lbnUtc3VibWVudS1wYWRkaW5nOiAkZHJvcGRvd25tZW51LXBhZGRpbmc7XHJcbiRkcm9wZG93bm1lbnUtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5O1xyXG4kZHJvcGRvd24tbWVudS1pdGVtLWNvbG9yLWFjdGl2ZTogZ2V0LWNvbG9yKHByaW1hcnkpO1xyXG4kZHJvcGRvd24tbWVudS1pdGVtLWJhY2tncm91bmQtYWN0aXZlOiB0cmFuc3BhcmVudDtcclxuXHJcbi8vIDE5LiBGbGV4Ym94IFV0aWxpdGllc1xyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbiRmbGV4LXNvdXJjZS1vcmRlcmluZy1jb3VudDogNjtcclxuJGZsZXhib3gtcmVzcG9uc2l2ZS1icmVha3BvaW50czogdHJ1ZTtcclxuXHJcbi8vIDIwLiBGb3Jtc1xyXG4vLyAtLS0tLS0tLS1cclxuXHJcbiRmaWVsZHNldC1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XHJcbiRmaWVsZHNldC1wYWRkaW5nOiByZW0tY2FsYygyMCk7XHJcbiRmaWVsZHNldC1tYXJnaW46IHJlbS1jYWxjKDE4IDApO1xyXG4kbGVnZW5kLXBhZGRpbmc6IHJlbS1jYWxjKDAgMyk7XHJcbiRmb3JtLXNwYWNpbmc6IHJlbS1jYWxjKDE2KTtcclxuJGhlbHB0ZXh0LWNvbG9yOiAkYmxhY2s7XHJcbiRoZWxwdGV4dC1mb250LXNpemU6IHJlbS1jYWxjKDEzKTtcclxuJGhlbHB0ZXh0LWZvbnQtc3R5bGU6IGl0YWxpYztcclxuJGlucHV0LXByZWZpeC1jb2xvcjogJGJsYWNrO1xyXG4kaW5wdXQtcHJlZml4LWJhY2tncm91bmQ6ICRsaWdodC1ncmF5O1xyXG4kaW5wdXQtcHJlZml4LWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheTtcclxuJGlucHV0LXByZWZpeC1wYWRkaW5nOiAxcmVtO1xyXG4kZm9ybS1sYWJlbC1jb2xvcjogJGJsYWNrO1xyXG4kZm9ybS1sYWJlbC1mb250LXNpemU6IHJlbS1jYWxjKDE0KTtcclxuJGZvcm0tbGFiZWwtZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbDtcclxuJGZvcm0tbGFiZWwtbGluZS1oZWlnaHQ6IDEuODtcclxuJHNlbGVjdC1iYWNrZ3JvdW5kOiAkd2hpdGU7XHJcbiRzZWxlY3QtdHJpYW5nbGUtY29sb3I6ICRkYXJrLWdyYXk7XHJcbiRzZWxlY3QtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcclxuJGlucHV0LWNvbG9yOiAkYmxhY2s7XHJcbiRpbnB1dC1wbGFjZWhvbGRlci1jb2xvcjogJG1lZGl1bS1ncmF5O1xyXG4kaW5wdXQtZm9udC1mYW1pbHk6IGluaGVyaXQ7XHJcbiRpbnB1dC1mb250LXNpemU6IHJlbS1jYWxjKDE2KTtcclxuJGlucHV0LWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWw7XHJcbiRpbnB1dC1saW5lLWhlaWdodDogJGdsb2JhbC1saW5laGVpZ2h0O1xyXG4kaW5wdXQtYmFja2dyb3VuZDogJHdoaXRlO1xyXG4kaW5wdXQtYmFja2dyb3VuZC1mb2N1czogJHdoaXRlO1xyXG4kaW5wdXQtYmFja2dyb3VuZC1kaXNhYmxlZDogJGxpZ2h0LWdyYXk7XHJcbiRpbnB1dC1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XHJcbiRpbnB1dC1ib3JkZXItZm9jdXM6IDFweCBzb2xpZCAkZGFyay1ncmF5O1xyXG4kaW5wdXQtcGFkZGluZzogJGZvcm0tc3BhY2luZyAvIDI7XHJcbiRpbnB1dC1zaGFkb3c6IGluc2V0IDAgMXB4IDJweCByZ2JhKCRibGFjaywgMC4xKTtcclxuJGlucHV0LXNoYWRvdy1mb2N1czogMCAwIDVweCAkbWVkaXVtLWdyYXk7XHJcbiRpbnB1dC1jdXJzb3ItZGlzYWJsZWQ6IG5vdC1hbGxvd2VkO1xyXG4kaW5wdXQtdHJhbnNpdGlvbjogYm94LXNoYWRvdyAwLjVzLCBib3JkZXItY29sb3IgMC4yNXMgZWFzZS1pbi1vdXQ7XHJcbiRpbnB1dC1udW1iZXItc3Bpbm5lcnM6IHRydWU7XHJcbiRpbnB1dC1yYWRpdXM6IDA7XHJcbiRmb3JtLWJ1dHRvbi1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xyXG5cclxuLy8gMjEuIExhYmVsXHJcbi8vIC0tLS0tLS0tLVxyXG5cclxuJGxhYmVsLWJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yO1xyXG4kbGFiZWwtY29sb3I6ICR3aGl0ZTtcclxuJGxhYmVsLWNvbG9yLWFsdDogJGJsYWNrO1xyXG4kbGFiZWwtcGFsZXR0ZTogJGZvdW5kYXRpb24tcGFsZXR0ZTtcclxuJGxhYmVsLWZvbnQtc2l6ZTogMC44cmVtO1xyXG4kbGFiZWwtcGFkZGluZzogMC4zMzMzM3JlbSAwLjVyZW07XHJcbiRsYWJlbC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xyXG5cclxuLy8gMjIuIE1lZGlhIE9iamVjdFxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4kbWVkaWFvYmplY3QtbWFyZ2luLWJvdHRvbTogJGdsb2JhbC1tYXJnaW47XHJcbiRtZWRpYW9iamVjdC1zZWN0aW9uLXBhZGRpbmc6ICRnbG9iYWwtcGFkZGluZztcclxuJG1lZGlhb2JqZWN0LWltYWdlLXdpZHRoLXN0YWNrZWQ6IDEwMCU7XHJcblxyXG4vLyAyMy4gTWVudVxyXG4vLyAtLS0tLS0tLVxyXG5cclxuJG1lbnUtbWFyZ2luOiAwO1xyXG4kbWVudS1uZXN0ZWQtbWFyZ2luOiAkZ2xvYmFsLW1lbnUtbmVzdGVkLW1hcmdpbjtcclxuJG1lbnUtaXRlbXMtcGFkZGluZzogcmVtLWNhbGMoMTAgMTUpO1xyXG4kbWVudS1zaW1wbGUtbWFyZ2luOiAxcmVtO1xyXG4kbWVudS1pdGVtLWNvbG9yLWFjdGl2ZTogJGJsYWNrO1xyXG4kbWVudS1pdGVtLWJhY2tncm91bmQtYWN0aXZlOiB0cmFuc3BhcmVudDtcclxuJG1lbnUtaWNvbi1zcGFjaW5nOiAwLjI1cmVtO1xyXG4kbWVudS1pdGVtLWJhY2tncm91bmQtaG92ZXI6ICRsaWdodC1ncmF5O1xyXG4kbWVudS1zdGF0ZS1iYWNrLWNvbXBhdDogdHJ1ZTtcclxuJG1lbnUtY2VudGVyZWQtYmFjay1jb21wYXQ6IHRydWU7XHJcbiRtZW51LWljb25zLWJhY2stY29tcGF0OiB0cnVlO1xyXG5cclxuLy8gMjQuIE1ldGVyXHJcbi8vIC0tLS0tLS0tLVxyXG5cclxuJG1ldGVyLWhlaWdodDogMXJlbTtcclxuJG1ldGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XHJcbiRtZXRlci1iYWNrZ3JvdW5kOiAkbWVkaXVtLWdyYXk7XHJcbiRtZXRlci1maWxsLWdvb2Q6ICRzdWNjZXNzLWNvbG9yO1xyXG4kbWV0ZXItZmlsbC1tZWRpdW06ICR3YXJuaW5nLWNvbG9yO1xyXG4kbWV0ZXItZmlsbC1iYWQ6ICRhbGVydC1jb2xvcjtcclxuXHJcbi8vIDI1LiBPZmYtY2FudmFzXHJcbi8vIC0tLS0tLS0tLS0tLS0tXHJcblxyXG4kb2ZmY2FudmFzLXNpemVzOiAoXHJcbiAgc21hbGw6IDI1MHB4LFxyXG4pO1xyXG4kb2ZmY2FudmFzLXZlcnRpY2FsLXNpemVzOiAoXHJcbiAgc21hbGw6IDI1MHB4LFxyXG4pO1xyXG4kb2ZmY2FudmFzLWJhY2tncm91bmQ6ICRsaWdodC1ncmF5O1xyXG4kb2ZmY2FudmFzLXNoYWRvdzogMCAwIDEwcHggcmdiYSgkYmxhY2ssIDAuNyk7XHJcbiRvZmZjYW52YXMtaW5uZXItc2hhZG93LXNpemU6IDA7XHJcbiRvZmZjYW52YXMtaW5uZXItc2hhZG93LWNvbG9yOiByZ2JhKCRibGFjaywgMC4yNSk7XHJcbiRvZmZjYW52YXMtb3ZlcmxheS16aW5kZXg6IDExO1xyXG4kb2ZmY2FudmFzLXB1c2gtemluZGV4OiAxMjtcclxuJG9mZmNhbnZhcy1vdmVybGFwLXppbmRleDogMTM7XHJcbiRvZmZjYW52YXMtcmV2ZWFsLXppbmRleDogMTI7XHJcbiRvZmZjYW52YXMtdHJhbnNpdGlvbi1sZW5ndGg6IDAuNXM7XHJcbiRvZmZjYW52YXMtdHJhbnNpdGlvbi10aW1pbmc6IGVhc2U7XHJcbiRvZmZjYW52YXMtZml4ZWQtcmV2ZWFsOiB0cnVlO1xyXG4kb2ZmY2FudmFzLWV4aXQtYmFja2dyb3VuZDogcmdiYSgkd2hpdGUsIDAuMjUpO1xyXG4kbWFpbmNvbnRlbnQtY2xhc3M6ICdvZmYtY2FudmFzLWNvbnRlbnQnO1xyXG5cclxuLy8gMjYuIE9yYml0XHJcbi8vIC0tLS0tLS0tLVxyXG5cclxuJG9yYml0LWJ1bGxldC1iYWNrZ3JvdW5kOiAkbWVkaXVtLWdyYXk7XHJcbiRvcmJpdC1idWxsZXQtYmFja2dyb3VuZC1hY3RpdmU6ICRkYXJrLWdyYXk7XHJcbiRvcmJpdC1idWxsZXQtZGlhbWV0ZXI6IDEuMnJlbTtcclxuJG9yYml0LWJ1bGxldC1tYXJnaW46IDAuMXJlbTtcclxuJG9yYml0LWJ1bGxldC1tYXJnaW4tdG9wOiAwLjhyZW07XHJcbiRvcmJpdC1idWxsZXQtbWFyZ2luLWJvdHRvbTogMC44cmVtO1xyXG4kb3JiaXQtY2FwdGlvbi1iYWNrZ3JvdW5kOiByZ2JhKCRibGFjaywgMC41KTtcclxuJG9yYml0LWNhcHRpb24tcGFkZGluZzogMXJlbTtcclxuJG9yYml0LWNvbnRyb2wtYmFja2dyb3VuZC1ob3ZlcjogcmdiYSgkYmxhY2ssIDAuNSk7XHJcbiRvcmJpdC1jb250cm9sLXBhZGRpbmc6IDFyZW07XHJcbiRvcmJpdC1jb250cm9sLXppbmRleDogMTA7XHJcblxyXG4vLyAyNy4gUGFnaW5hdGlvblxyXG4vLyAtLS0tLS0tLS0tLS0tLVxyXG5cclxuJHBhZ2luYXRpb24tZm9udC1zaXplOiByZW0tY2FsYygxNCk7XHJcbiRwYWdpbmF0aW9uLW1hcmdpbi1ib3R0b206ICRnbG9iYWwtbWFyZ2luO1xyXG4kcGFnaW5hdGlvbi1pdGVtLWNvbG9yOiAkYmxhY2s7XHJcbiRwYWdpbmF0aW9uLWl0ZW0tcGFkZGluZzogcmVtLWNhbGMoMyAxMCk7XHJcbiRwYWdpbmF0aW9uLWl0ZW0tc3BhY2luZzogcmVtLWNhbGMoMSk7XHJcbiRwYWdpbmF0aW9uLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XHJcbiRwYWdpbmF0aW9uLWl0ZW0tYmFja2dyb3VuZC1ob3ZlcjogJGxpZ2h0LWdyYXk7XHJcbiRwYWdpbmF0aW9uLWl0ZW0tYmFja2dyb3VuZC1jdXJyZW50OiAkcHJpbWFyeS1jb2xvcjtcclxuJHBhZ2luYXRpb24taXRlbS1jb2xvci1jdXJyZW50OiAkd2hpdGU7XHJcbiRwYWdpbmF0aW9uLWl0ZW0tY29sb3ItZGlzYWJsZWQ6ICRtZWRpdW0tZ3JheTtcclxuJHBhZ2luYXRpb24tZWxsaXBzaXMtY29sb3I6ICRibGFjaztcclxuJHBhZ2luYXRpb24tbW9iaWxlLWl0ZW1zOiBmYWxzZTtcclxuJHBhZ2luYXRpb24tbW9iaWxlLWN1cnJlbnQtaXRlbTogZmFsc2U7XHJcbiRwYWdpbmF0aW9uLWFycm93czogdHJ1ZTtcclxuXHJcbi8vIDI4LiBQcm9ncmVzcyBCYXJcclxuLy8gLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuJHByb2dyZXNzLWhlaWdodDogMXJlbTtcclxuJHByb2dyZXNzLWJhY2tncm91bmQ6ICRtZWRpdW0tZ3JheTtcclxuJHByb2dyZXNzLW1hcmdpbi1ib3R0b206ICRnbG9iYWwtbWFyZ2luO1xyXG4kcHJvZ3Jlc3MtbWV0ZXItYmFja2dyb3VuZDogJHByaW1hcnktY29sb3I7XHJcbiRwcm9ncmVzcy1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xyXG5cclxuLy8gMjkuIFByb3RvdHlwZSBBcnJvd1xyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4kcHJvdG90eXBlLWFycm93LWRpcmVjdGlvbnM6IChcclxuICBkb3duLFxyXG4gIHVwLFxyXG4gIHJpZ2h0LFxyXG4gIGxlZnRcclxuKTtcclxuJHByb3RvdHlwZS1hcnJvdy1zaXplOiAwLjQzNzVyZW07XHJcbiRwcm90b3R5cGUtYXJyb3ctY29sb3I6ICRibGFjaztcclxuXHJcbi8vIDMwLiBQcm90b3R5cGUgQm9yZGVyLUJveFxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbiRwcm90b3R5cGUtYm9yZGVyLWJveC1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XHJcblxyXG4vLyAzMS4gUHJvdG90eXBlIEJvcmRlci1Ob25lXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbiRwcm90b3R5cGUtYm9yZGVyLW5vbmUtYnJlYWtwb2ludHM6ICRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzO1xyXG5cclxuLy8gMzIuIFByb3RvdHlwZSBCb3JkZXJlZFxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4kcHJvdG90eXBlLWJvcmRlcmVkLWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcclxuJHByb3RvdHlwZS1ib3JkZXItd2lkdGg6IHJlbS1jYWxjKDEpO1xyXG4kcHJvdG90eXBlLWJvcmRlci10eXBlOiBzb2xpZDtcclxuJHByb3RvdHlwZS1ib3JkZXItY29sb3I6ICRtZWRpdW0tZ3JheTtcclxuXHJcbi8vIDMzLiBQcm90b3R5cGUgRGlzcGxheVxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbiRwcm90b3R5cGUtZGlzcGxheS1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XHJcbiRwcm90b3R5cGUtZGlzcGxheTogKFxyXG4gIGlubGluZSxcclxuICBpbmxpbmUtYmxvY2ssXHJcbiAgYmxvY2ssXHJcbiAgdGFibGUsXHJcbiAgdGFibGUtY2VsbFxyXG4pO1xyXG5cclxuLy8gMzQuIFByb3RvdHlwZSBGb250LVN0eWxpbmdcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbiRwcm90b3R5cGUtZm9udC1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XHJcbiRwcm90b3R5cGUtd2lkZS1sZXR0ZXItc3BhY2luZzogcmVtLWNhbGMoNCk7XHJcbiRwcm90b3R5cGUtZm9udC1ub3JtYWw6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbDtcclxuJHByb3RvdHlwZS1mb250LWJvbGQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQ7XHJcblxyXG4vLyAzNS4gUHJvdG90eXBlIExpc3QtU3R5bGUtVHlwZVxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuJHByb3RvdHlwZS1saXN0LWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcclxuJHByb3RvdHlwZS1zdHlsZS10eXBlLXVub3JkZXJlZDogKFxyXG4gIGRpc2MsXHJcbiAgY2lyY2xlLFxyXG4gIHNxdWFyZVxyXG4pO1xyXG4kcHJvdG90eXBlLXN0eWxlLXR5cGUtb3JkZXJlZDogKFxyXG4gIGRlY2ltYWwsXHJcbiAgbG93ZXItYWxwaGEsXHJcbiAgbG93ZXItbGF0aW4sXHJcbiAgbG93ZXItcm9tYW4sXHJcbiAgdXBwZXItYWxwaGEsXHJcbiAgdXBwZXItbGF0aW4sXHJcbiAgdXBwZXItcm9tYW5cclxuKTtcclxuXHJcbi8vIDM2LiBQcm90b3R5cGUgT3ZlcmZsb3dcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuJHByb3RvdHlwZS1vdmVyZmxvdy1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XHJcbiRwcm90b3R5cGUtb3ZlcmZsb3c6IChcclxuICB2aXNpYmxlLFxyXG4gIGhpZGRlbixcclxuICBzY3JvbGxcclxuKTtcclxuXHJcbi8vIDM3LiBQcm90b3R5cGUgUG9zaXRpb25cclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuJHByb3RvdHlwZS1wb3NpdGlvbi1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XHJcbiRwcm90b3R5cGUtcG9zaXRpb246IChcclxuICBzdGF0aWMsXHJcbiAgcmVsYXRpdmUsXHJcbiAgYWJzb2x1dGUsXHJcbiAgZml4ZWRcclxuKTtcclxuJHByb3RvdHlwZS1wb3NpdGlvbi16LWluZGV4OiA5NzU7XHJcblxyXG4vLyAzOC4gUHJvdG90eXBlIFJvdW5kZWRcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4kcHJvdG90eXBlLXJvdW5kZWQtYnJlYWtwb2ludHM6ICRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzO1xyXG4kcHJvdG90eXBlLWJvcmRlci1yYWRpdXM6IHJlbS1jYWxjKDMpO1xyXG5cclxuLy8gMzkuIFByb3RvdHlwZSBTZXBhcmF0b3JcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbiRwcm90b3R5cGUtc2VwYXJhdG9yLWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcclxuJHByb3RvdHlwZS1zZXBhcmF0b3ItYWxpZ246IGNlbnRlcjtcclxuJHByb3RvdHlwZS1zZXBhcmF0b3ItaGVpZ2h0OiByZW0tY2FsYygyKTtcclxuJHByb3RvdHlwZS1zZXBhcmF0b3Itd2lkdGg6IDNyZW07XHJcbiRwcm90b3R5cGUtc2VwYXJhdG9yLWJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yO1xyXG4kcHJvdG90eXBlLXNlcGFyYXRvci1tYXJnaW4tdG9wOiAkZ2xvYmFsLW1hcmdpbjtcclxuXHJcbi8vIDQwLiBQcm90b3R5cGUgU2hhZG93XHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4kcHJvdG90eXBlLXNoYWRvdy1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XHJcbiRwcm90b3R5cGUtYm94LXNoYWRvdzogMCAycHggNXB4IDAgcmdiYSgwLDAsMCwuMTYpLFxyXG4gICAgICAgICAgICAgICAgICAgICAgIDAgMnB4IDEwcHggMCByZ2JhKDAsMCwwLC4xMik7XHJcblxyXG4vLyA0MS4gUHJvdG90eXBlIFNpemluZ1xyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuJHByb3RvdHlwZS1zaXppbmctYnJlYWtwb2ludHM6ICRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzO1xyXG4kcHJvdG90eXBlLXNpemluZzogKFxyXG4gIHdpZHRoLFxyXG4gIGhlaWdodFxyXG4pO1xyXG4kcHJvdG90eXBlLXNpemVzOiAoXHJcbiAgMjU6IDI1JSxcclxuICA1MDogNTAlLFxyXG4gIDc1OiA3NSUsXHJcbiAgMTAwOiAxMDAlXHJcbik7XHJcblxyXG4vLyA0Mi4gUHJvdG90eXBlIFNwYWNpbmdcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4kcHJvdG90eXBlLXNwYWNpbmctYnJlYWtwb2ludHM6ICRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzO1xyXG4kcHJvdG90eXBlLXNwYWNlcnMtY291bnQ6IDM7XHJcblxyXG4vLyA0My4gUHJvdG90eXBlIFRleHQtRGVjb3JhdGlvblxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuJHByb3RvdHlwZS1kZWNvcmF0aW9uLWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcclxuJHByb3RvdHlwZS10ZXh0LWRlY29yYXRpb246IChcclxuICBvdmVybGluZSxcclxuICB1bmRlcmxpbmUsXHJcbiAgbGluZS10aHJvdWdoLFxyXG4pO1xyXG5cclxuLy8gNDQuIFByb3RvdHlwZSBUZXh0LVRyYW5zZm9ybWF0aW9uXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuJHByb3RvdHlwZS10cmFuc2Zvcm1hdGlvbi1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XHJcbiRwcm90b3R5cGUtdGV4dC10cmFuc2Zvcm1hdGlvbjogKFxyXG4gIGxvd2VyY2FzZSxcclxuICB1cHBlcmNhc2UsXHJcbiAgY2FwaXRhbGl6ZVxyXG4pO1xyXG5cclxuLy8gNDUuIFByb3RvdHlwZSBUZXh0LVV0aWxpdGllc1xyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4kcHJvdG90eXBlLXV0aWxpdGllcy1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XHJcbiRwcm90b3R5cGUtdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XHJcblxyXG4vLyA0Ni4gUmVzcG9uc2l2ZSBFbWJlZFxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuJHJlc3BvbnNpdmUtZW1iZWQtbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTYpO1xyXG4kcmVzcG9uc2l2ZS1lbWJlZC1yYXRpb3M6IChcclxuICBkZWZhdWx0OiA0IGJ5IDMsXHJcbiAgd2lkZXNjcmVlbjogMTYgYnkgOSxcclxuKTtcclxuXHJcbi8vIDQ3LiBSZXZlYWxcclxuLy8gLS0tLS0tLS0tLVxyXG5cclxuJHJldmVhbC1iYWNrZ3JvdW5kOiAkd2hpdGU7XHJcbiRyZXZlYWwtd2lkdGg6IDYwMHB4O1xyXG4kcmV2ZWFsLW1heC13aWR0aDogJGdsb2JhbC13aWR0aDtcclxuJHJldmVhbC1wYWRkaW5nOiAkZ2xvYmFsLXBhZGRpbmc7XHJcbiRyZXZlYWwtYm9yZGVyOiAwO1xyXG4kcmV2ZWFsLXJhZGl1czogMDtcclxuJHJldmVhbC16aW5kZXg6IDEwMDU7XHJcbiRyZXZlYWwtb3ZlcmxheS1iYWNrZ3JvdW5kOiByZ2JhKCRibGFjaywgMC40NSk7XHJcblxyXG4vLyA0OC4gU2xpZGVyXHJcbi8vIC0tLS0tLS0tLS1cclxuXHJcbiRzbGlkZXItd2lkdGgtdmVydGljYWw6IDAuNXJlbTtcclxuJHNsaWRlci10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLWluLW91dDtcclxuJHNsaWRlci1oZWlnaHQ6IDAuNXJlbTtcclxuJHNsaWRlci1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheTtcclxuJHNsaWRlci1maWxsLWJhY2tncm91bmQ6ICRtZWRpdW0tZ3JheTtcclxuJHNsaWRlci1oYW5kbGUtaGVpZ2h0OiAxLjRyZW07XHJcbiRzbGlkZXItaGFuZGxlLXdpZHRoOiAxLjRyZW07XHJcbiRzbGlkZXItaGFuZGxlLWJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yO1xyXG4kc2xpZGVyLW9wYWNpdHktZGlzYWJsZWQ6IDAuMjU7XHJcbiRzbGlkZXItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcclxuXHJcbi8vIDQ5LiBTd2l0Y2hcclxuLy8gLS0tLS0tLS0tLVxyXG5cclxuJHN3aXRjaC1iYWNrZ3JvdW5kOiAkbWVkaXVtLWdyYXk7XHJcbiRzd2l0Y2gtYmFja2dyb3VuZC1hY3RpdmU6ICRwcmltYXJ5LWNvbG9yO1xyXG4kc3dpdGNoLWhlaWdodDogMnJlbTtcclxuJHN3aXRjaC1oZWlnaHQtdGlueTogMS41cmVtO1xyXG4kc3dpdGNoLWhlaWdodC1zbWFsbDogMS43NXJlbTtcclxuJHN3aXRjaC1oZWlnaHQtbGFyZ2U6IDIuNXJlbTtcclxuJHN3aXRjaC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xyXG4kc3dpdGNoLW1hcmdpbjogJGdsb2JhbC1tYXJnaW47XHJcbiRzd2l0Y2gtcGFkZGxlLWJhY2tncm91bmQ6ICR3aGl0ZTtcclxuJHN3aXRjaC1wYWRkbGUtb2Zmc2V0OiAwLjI1cmVtO1xyXG4kc3dpdGNoLXBhZGRsZS1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xyXG4kc3dpdGNoLXBhZGRsZS10cmFuc2l0aW9uOiBhbGwgMC4yNXMgZWFzZS1vdXQ7XHJcblxyXG4vLyA1MC4gVGFibGVcclxuLy8gLS0tLS0tLS0tXHJcblxyXG4kdGFibGUtYmFja2dyb3VuZDogJHdoaXRlO1xyXG4kdGFibGUtY29sb3Itc2NhbGU6IDUlO1xyXG4kdGFibGUtYm9yZGVyOiAxcHggc29saWQgc21hcnQtc2NhbGUoJHRhYmxlLWJhY2tncm91bmQsICR0YWJsZS1jb2xvci1zY2FsZSk7XHJcbiR0YWJsZS1wYWRkaW5nOiByZW0tY2FsYyg4IDEwIDEwKTtcclxuJHRhYmxlLWhvdmVyLXNjYWxlOiAyJTtcclxuJHRhYmxlLXJvdy1ob3ZlcjogZGFya2VuKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtaG92ZXItc2NhbGUpO1xyXG4kdGFibGUtcm93LXN0cmlwZS1ob3ZlcjogZGFya2VuKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtY29sb3Itc2NhbGUgKyAkdGFibGUtaG92ZXItc2NhbGUpO1xyXG4kdGFibGUtaXMtc3RyaXBlZDogdHJ1ZTtcclxuJHRhYmxlLXN0cmlwZWQtYmFja2dyb3VuZDogc21hcnQtc2NhbGUoJHRhYmxlLWJhY2tncm91bmQsICR0YWJsZS1jb2xvci1zY2FsZSk7XHJcbiR0YWJsZS1zdHJpcGU6IGV2ZW47XHJcbiR0YWJsZS1oZWFkLWJhY2tncm91bmQ6IHNtYXJ0LXNjYWxlKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtY29sb3Itc2NhbGUgLyAyKTtcclxuJHRhYmxlLWhlYWQtcm93LWhvdmVyOiBkYXJrZW4oJHRhYmxlLWhlYWQtYmFja2dyb3VuZCwgJHRhYmxlLWhvdmVyLXNjYWxlKTtcclxuJHRhYmxlLWZvb3QtYmFja2dyb3VuZDogc21hcnQtc2NhbGUoJHRhYmxlLWJhY2tncm91bmQsICR0YWJsZS1jb2xvci1zY2FsZSk7XHJcbiR0YWJsZS1mb290LXJvdy1ob3ZlcjogZGFya2VuKCR0YWJsZS1mb290LWJhY2tncm91bmQsICR0YWJsZS1ob3Zlci1zY2FsZSk7XHJcbiR0YWJsZS1oZWFkLWZvbnQtY29sb3I6ICRib2R5LWZvbnQtY29sb3I7XHJcbiR0YWJsZS1mb290LWZvbnQtY29sb3I6ICRib2R5LWZvbnQtY29sb3I7XHJcbiRzaG93LWhlYWRlci1mb3Itc3RhY2tlZDogZmFsc2U7XHJcbiR0YWJsZS1zdGFjay1icmVha3BvaW50OiBtZWRpdW07XHJcblxyXG4vLyA1MS4gVGFic1xyXG4vLyAtLS0tLS0tLVxyXG5cclxuJHRhYi1tYXJnaW46IDA7XHJcbiR0YWItYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XHJcbiR0YWItY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xyXG4kdGFiLWJhY2tncm91bmQtYWN0aXZlOiB0cmFuc3BhcmVudDtcclxuJHRhYi1hY3RpdmUtY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xyXG4kdGFiLWl0ZW0tZm9udC1zaXplOiByZW0tY2FsYygxMik7XHJcbiR0YWItaXRlbS1iYWNrZ3JvdW5kLWhvdmVyOiB0cmFuc3BhcmVudDtcclxuJHRhYi1pdGVtLXBhZGRpbmc6IDEuMjVyZW0gMS41cmVtO1xyXG4kdGFiLWV4cGFuZC1tYXg6IDY7XHJcbiR0YWItY29udGVudC1iYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcclxuJHRhYi1jb250ZW50LWJvcmRlcjogMDtcclxuJHRhYi1jb250ZW50LWNvbG9yOiAkYm9keS1mb250LWNvbG9yO1xyXG4kdGFiLWNvbnRlbnQtcGFkZGluZzogMXJlbTtcclxuXHJcbi8vIDUyLiBUaHVtYm5haWxcclxuLy8gLS0tLS0tLS0tLS0tLVxyXG5cclxuJHRodW1ibmFpbC1ib3JkZXI6IHNvbGlkIDRweCAkd2hpdGU7XHJcbiR0aHVtYm5haWwtbWFyZ2luLWJvdHRvbTogJGdsb2JhbC1tYXJnaW47XHJcbiR0aHVtYm5haWwtc2hhZG93OiAwIDAgMCAxcHggcmdiYSgkYmxhY2ssIDAuMik7XHJcbiR0aHVtYm5haWwtc2hhZG93LWhvdmVyOiAwIDAgNnB4IDFweCByZ2JhKCRwcmltYXJ5LWNvbG9yLCAwLjUpO1xyXG4kdGh1bWJuYWlsLXRyYW5zaXRpb246IGJveC1zaGFkb3cgMjAwbXMgZWFzZS1vdXQ7XHJcbiR0aHVtYm5haWwtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcclxuXHJcbi8vIDUzLiBUaXRsZSBCYXJcclxuLy8gLS0tLS0tLS0tLS0tLVxyXG5cclxuJHRpdGxlYmFyLWJhY2tncm91bmQ6ICR3aGl0ZTtcclxuJHRpdGxlYmFyLWNvbG9yOiAkYmxhY2s7XHJcbiR0aXRsZWJhci1wYWRkaW5nOiAwLjVyZW07XHJcbiR0aXRsZWJhci10ZXh0LWZvbnQtd2VpZ2h0OiBib2xkO1xyXG4kdGl0bGViYXItaWNvbi1jb2xvcjogJGJsYWNrO1xyXG4kdGl0bGViYXItaWNvbi1jb2xvci1ob3ZlcjogJG1lZGl1bS1ncmF5O1xyXG4kdGl0bGViYXItaWNvbi1zcGFjaW5nOiAwLjI1cmVtO1xyXG5cclxuLy8gNTQuIFRvb2x0aXBcclxuLy8gLS0tLS0tLS0tLS1cclxuXHJcbiRoYXMtdGlwLWN1cnNvcjogaGVscDtcclxuJGhhcy10aXAtZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQ7XHJcbiRoYXMtdGlwLWJvcmRlci1ib3R0b206IGRvdHRlZCAxcHggJGRhcmstZ3JheTtcclxuJHRvb2x0aXAtYmFja2dyb3VuZC1jb2xvcjogJGJsYWNrO1xyXG4kdG9vbHRpcC1jb2xvcjogJHdoaXRlO1xyXG4kdG9vbHRpcC1wYWRkaW5nOiAwLjc1cmVtO1xyXG4kdG9vbHRpcC1tYXgtd2lkdGg6IDEwcmVtO1xyXG4kdG9vbHRpcC1mb250LXNpemU6ICRzbWFsbC1mb250LXNpemU7XHJcbiR0b29sdGlwLXBpcC13aWR0aDogMC43NXJlbTtcclxuJHRvb2x0aXAtcGlwLWhlaWdodDogJHRvb2x0aXAtcGlwLXdpZHRoICogMC44NjY7XHJcbiR0b29sdGlwLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XHJcblxyXG4vLyA1NS4gVG9wIEJhclxyXG4vLyAtLS0tLS0tLS0tLVxyXG5cclxuJHRvcGJhci1wYWRkaW5nOiByZW0tY2FsYygzMCk7XHJcbiR0b3BiYXItYmFja2dyb3VuZDogJHdoaXRlO1xyXG4kdG9wYmFyLXN1Ym1lbnUtYmFja2dyb3VuZDogJHRvcGJhci1iYWNrZ3JvdW5kO1xyXG4kdG9wYmFyLXRpdGxlLXNwYWNpbmc6IDAuNXJlbSAxcmVtIDAuNXJlbSAwO1xyXG4kdG9wYmFyLWlucHV0LXdpZHRoOiAyMDBweDtcclxuJHRvcGJhci11bnN0YWNrLWJyZWFrcG9pbnQ6IG1lZGl1bTtcclxuXHJcbi8vIDU2LiBYeSBHcmlkXHJcbi8vIC0tLS0tLS0tLS0tXHJcblxyXG4keHktZ3JpZDogdHJ1ZTtcclxuJGdyaWQtY29udGFpbmVyOiAkZ2xvYmFsLXdpZHRoO1xyXG4kZ3JpZC1jb2x1bW5zOiAxMjtcclxuJGdyaWQtbWFyZ2luLWd1dHRlcnM6IChcclxuICBzbWFsbDogMjBweCxcclxuICBtZWRpdW06IDMwcHhcclxuKTtcclxuJGdyaWQtcGFkZGluZy1ndXR0ZXJzOiAkZ3JpZC1tYXJnaW4tZ3V0dGVycztcclxuJGdyaWQtY29udGFpbmVyLXBhZGRpbmc6ICRncmlkLXBhZGRpbmctZ3V0dGVycztcclxuJGdyaWQtY29udGFpbmVyLW1heDogJGdsb2JhbC13aWR0aDtcclxuJHh5LWJsb2NrLWdyaWQtbWF4OiA4O1xyXG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBmdW5jdGlvbnNcbi8vLy9cblxuJGdsb2JhbC1mb250LXNpemU6IDEwMCUgIWRlZmF1bHQ7XG5cbi8vLyBSZW1vdmVzIHRoZSB1bml0IChlLmcuIHB4LCBlbSwgcmVtKSBmcm9tIGEgdmFsdWUsIHJldHVybmluZyB0aGUgbnVtYmVyIG9ubHkuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJG51bSAtIE51bWJlciB0byBzdHJpcCB1bml0IGZyb20uXG4vLy9cbi8vLyBAcmV0dXJucyB7TnVtYmVyfSBUaGUgc2FtZSBudW1iZXIsIHNhbnMgdW5pdC5cbkBmdW5jdGlvbiBzdHJpcC11bml0KCRudW0pIHtcbiAgQHJldHVybiAkbnVtIC8gKCRudW0gKiAwICsgMSk7XG59XG5cbi8vLyBDb252ZXJ0cyBvbmUgb3IgbW9yZSBwaXhlbCB2YWx1ZXMgaW50byBtYXRjaGluZyByZW0gdmFsdWVzLlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TGlzdH0gJHZhbHVlcyAtIE9uZSBvciBtb3JlIHZhbHVlcyB0byBjb252ZXJ0LiBCZSBzdXJlIHRvIHNlcGFyYXRlIHRoZW0gd2l0aCBzcGFjZXMgYW5kIG5vdCBjb21tYXMuIElmIHlvdSBuZWVkIHRvIGNvbnZlcnQgYSBjb21tYS1zZXBhcmF0ZWQgbGlzdCwgd3JhcCB0aGUgbGlzdCBpbiBwYXJlbnRoZXNlcy5cbi8vLyBAcGFyYW0ge051bWJlcn0gJGJhc2UgW251bGxdIC0gVGhlIGJhc2UgdmFsdWUgdG8gdXNlIHdoZW4gY2FsY3VsYXRpbmcgdGhlIGByZW1gLiBJZiB5b3UncmUgdXNpbmcgRm91bmRhdGlvbiBvdXQgb2YgdGhlIGJveCwgdGhpcyBpcyAxNnB4LiBJZiB0aGlzIHBhcmFtZXRlciBpcyBgbnVsbGAsIHRoZSBmdW5jdGlvbiB3aWxsIHJlZmVyZW5jZSB0aGUgYCRnbG9iYWwtZm9udC1zaXplYCB2YXJpYWJsZSBhcyB0aGUgYmFzZS5cbi8vL1xuLy8vIEByZXR1cm5zIHtMaXN0fSBBIGxpc3Qgb2YgY29udmVydGVkIHZhbHVlcy5cbkBmdW5jdGlvbiByZW0tY2FsYygkdmFsdWVzLCAkYmFzZTogbnVsbCkge1xuICAkcmVtLXZhbHVlczogKCk7XG4gICRjb3VudDogbGVuZ3RoKCR2YWx1ZXMpO1xuXG4gIC8vIElmIG5vIGJhc2UgaXMgZGVmaW5lZCwgZGVmZXIgdG8gdGhlIGdsb2JhbCBmb250IHNpemVcbiAgQGlmICRiYXNlID09IG51bGwge1xuICAgICRiYXNlOiAkZ2xvYmFsLWZvbnQtc2l6ZTtcbiAgfVxuXG4gIC8vIElmIHRoZSBiYXNlIGZvbnQgc2l6ZSBpcyBhICUsIHRoZW4gbXVsdGlwbHkgaXQgYnkgMTZweFxuICAvLyBUaGlzIGlzIGJlY2F1c2UgMTAwJSBmb250IHNpemUgPSAxNnB4IGluIG1vc3QgYWxsIGJyb3dzZXJzXG4gIEBpZiB1bml0KCRiYXNlKSA9PSAnJScge1xuICAgICRiYXNlOiAoJGJhc2UgLyAxMDAlKSAqIDE2cHg7XG4gIH1cblxuICAvLyBVc2luZyByZW0gYXMgYmFzZSBhbGxvd3MgY29ycmVjdCBzY2FsaW5nXG4gIEBpZiB1bml0KCRiYXNlKSA9PSAncmVtJyB7XG4gICAgJGJhc2U6IHN0cmlwLXVuaXQoJGJhc2UpICogMTZweDtcbiAgfVxuXG4gIEBpZiAkY291bnQgPT0gMSB7XG4gICAgQHJldHVybiAtemYtdG8tcmVtKCR2YWx1ZXMsICRiYXNlKTtcbiAgfVxuXG4gIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGNvdW50IHtcbiAgICAkcmVtLXZhbHVlczogYXBwZW5kKCRyZW0tdmFsdWVzLCAtemYtdG8tcmVtKG50aCgkdmFsdWVzLCAkaSksICRiYXNlKSk7XG4gIH1cblxuICBAcmV0dXJuICRyZW0tdmFsdWVzO1xufVxuXG4vLyBDb252ZXJ0cyBhIHVuaXRsZXNzLCBwaXhlbCwgb3IgcmVtIHZhbHVlIHRvIGVtLCBmb3IgdXNlIGluIGJyZWFrcG9pbnRzLlxuQGZ1bmN0aW9uIC16Zi1icC10by1lbSgkdmFsdWUpIHtcbiAgLy8gUGl4ZWwgYW5kIHVuaXRsZXNzIHZhbHVlcyBhcmUgY29udmVydGVkIHRvIHJlbXNcbiAgQGlmIHVuaXQoJHZhbHVlKSA9PSAncHgnIG9yIHVuaXRsZXNzKCR2YWx1ZSkge1xuICAgICR2YWx1ZTogcmVtLWNhbGMoJHZhbHVlLCAkYmFzZTogMTZweCk7XG4gIH1cblxuICAvLyBUaGVuIHRoZSB2YWx1ZSBpcyBjb252ZXJ0ZWQgdG8gZW1zXG4gIEByZXR1cm4gc3RyaXAtdW5pdCgkdmFsdWUpICogMWVtO1xufVxuXG4vLy8gQ29udmVydHMgYSBwaXhlbCB2YWx1ZSB0byBtYXRjaGluZyByZW0gdmFsdWUuICpBbnkqIHZhbHVlIHBhc3NlZCwgcmVnYXJkbGVzcyBvZiB1bml0LCBpcyBhc3N1bWVkIHRvIGJlIGEgcGl4ZWwgdmFsdWUuIEJ5IGRlZmF1bHQsIHRoZSBiYXNlIHBpeGVsIHZhbHVlIHVzZWQgdG8gY2FsY3VsYXRlIHRoZSByZW0gdmFsdWUgaXMgdGFrZW4gZnJvbSB0aGUgYCRnbG9iYWwtZm9udC1zaXplYCB2YXJpYWJsZS5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkdmFsdWUgLSBQaXhlbCB2YWx1ZSB0byBjb252ZXJ0LlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkYmFzZSBbbnVsbF0gLSBCYXNlIGZvciBwaXhlbCBjb252ZXJzaW9uLlxuLy8vXG4vLy8gQHJldHVybnMge051bWJlcn0gQSBudW1iZXIgaW4gcmVtcywgY2FsY3VsYXRlZCBiYXNlZCBvbiB0aGUgZ2l2ZW4gdmFsdWUgYW5kIHRoZSBiYXNlIHBpeGVsIHZhbHVlLiByZW0gdmFsdWVzIGFyZSBwYXNzZWQgdGhyb3VnaCBhcyBpcy5cbkBmdW5jdGlvbiAtemYtdG8tcmVtKCR2YWx1ZSwgJGJhc2U6IG51bGwpIHtcbiAgLy8gQ2hlY2sgaWYgdGhlIHZhbHVlIGlzIGEgbnVtYmVyXG4gIEBpZiB0eXBlLW9mKCR2YWx1ZSkgIT0gJ251bWJlcicge1xuICAgIEB3YXJuIGluc3BlY3QoJHZhbHVlKSArICcgd2FzIHBhc3NlZCB0byByZW0tY2FsYygpLCB3aGljaCBpcyBub3QgYSBudW1iZXIuJztcbiAgICBAcmV0dXJuICR2YWx1ZTtcbiAgfVxuXG4gIC8vIFRyYW5zZm9ybSBlbSBpbnRvIHJlbSBpZiBzb21lb25lIGhhbmRzIG92ZXIgJ2VtJ3NcbiAgQGlmIHVuaXQoJHZhbHVlKSA9PSAnZW0nIHtcbiAgICAkdmFsdWU6IHN0cmlwLXVuaXQoJHZhbHVlKSAqIDFyZW07XG4gIH1cblxuICAvLyBDYWxjdWxhdGUgcmVtIGlmIHVuaXRzIGZvciAkdmFsdWUgaXMgbm90IHJlbSBvciBlbVxuICBAaWYgdW5pdCgkdmFsdWUpICE9ICdyZW0nIHtcbiAgICAkdmFsdWU6IHN0cmlwLXVuaXQoJHZhbHVlKSAvIHN0cmlwLXVuaXQoJGJhc2UpICogMXJlbTtcbiAgfVxuXG4gIC8vIFR1cm4gMHJlbSBpbnRvIDBcbiAgQGlmICR2YWx1ZSA9PSAwcmVtIHtcbiAgICAkdmFsdWU6IDA7XG4gIH1cblxuICBAcmV0dXJuICR2YWx1ZTtcbn1cblxuLy8vIENvbnZlcnRzIGEgcGl4ZWwsIHBlcmNlbnRhZ2UsIHJlbSBvciBlbSB2YWx1ZSB0byBhIHVuaXRsZXNzIHZhbHVlIGJhc2VkIG9uIGEgZ2l2ZW4gZm9udCBzaXplLiBJZGVhbCBmb3Igd29ya2luZyBvdXQgdW5pdGxlc3MgbGluZSBoZWlnaHRzLlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR2YWx1ZSAtIFZhbHVlIHRvIGNvbnZlcnQgdG8gYSB1bml0bGVzcyBsaW5lIGhlaWdodFxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkYmFzZSAtIFRoZSBmb250IHNpemUgdG8gdXNlIHRvIHdvcmsgb3V0IHRoZSBsaW5lIGhlaWdodCAtIGRlZmF1bHRzIHRvICRnbG9iYWwtZm9udC1zaXplXG4vLy9cbi8vLyBAcmV0dXJuIHtOdW1iZXJ9IC0gVW5pdGxlc3MgbnVtYmVyXG5AZnVuY3Rpb24gdW5pdGxlc3MtY2FsYygkdmFsdWUsICRiYXNlOiBudWxsKSB7XG5cbiAgLy8gSWYgbm8gYmFzZSBpcyBkZWZpbmVkLCBkZWZlciB0byB0aGUgZ2xvYmFsIGZvbnQgc2l6ZVxuICBAaWYgJGJhc2UgPT0gbnVsbCB7XG4gICAgJGJhc2U6ICRnbG9iYWwtZm9udC1zaXplO1xuICB9XG5cbiAgLy8gRmlyc3QsIGxldHMgY29udmVydCBvdXIgJGJhc2UgdG8gcGl4ZWxzXG5cbiAgLy8gSWYgdGhlIGJhc2UgZm9udCBzaXplIGlzIGEgJSwgdGhlbiBtdWx0aXBseSBpdCBieSAxNnB4XG4gIEBpZiB1bml0KCRiYXNlKSA9PSAnJScge1xuICAgICRiYXNlOiAoJGJhc2UgLyAxMDAlKSAqIDE2cHg7XG4gIH1cblxuICBAaWYgdW5pdCgkYmFzZSkgPT0gJ3JlbScge1xuICAgICRiYXNlOiBzdHJpcC11bml0KCRiYXNlKSAqIDE2cHg7XG4gIH1cblxuICBAaWYgdW5pdCgkYmFzZSkgPT0gJ2VtJyB7XG4gICAgJGJhc2U6IHN0cmlwLXVuaXQoJGJhc2UpICogMTZweDtcbiAgfVxuXG4gIC8vIE5vdyBsZXQncyBjb252ZXJ0IG91ciB2YWx1ZSB0byBwaXhlbHMgdG9vXG4gIEBpZiB1bml0KCR2YWx1ZSkgPT0gJyUnIHtcbiAgICAkdmFsdWU6ICgkdmFsdWUgLyAxMDAlKSAqICRiYXNlO1xuICB9XG5cbiAgQGlmIHVuaXQoJHZhbHVlKSA9PSAncmVtJyB7XG4gICAgJHZhbHVlOiBzdHJpcC11bml0KCR2YWx1ZSkgKiAkYmFzZTtcbiAgfVxuXG4gIEBpZiB1bml0KCR2YWx1ZSkgPT0gJ2VtJyB7XG4gICAgJHZhbHVlOiBzdHJpcC11bml0KCR2YWx1ZSkgKiAkYmFzZTtcbiAgfVxuXG4gIC8vICdweCdcbiAgQGlmIHVuaXQoJHZhbHVlKSA9PSAncHgnIHtcbiAgICBAcmV0dXJuIHN0cmlwLXVuaXQoJHZhbHVlKSAvIHN0cmlwLXVuaXQoJGJhc2UpO1xuICB9XG5cbiAgLy8gYXNzdW1lIHRoYXQgbGluZS1oZWlnaHRzIGdyZWF0ZXIgdGhhbiAxMCBhcmUgbWVhbnQgdG8gYmUgYWJzb2x1dGUgaW4gJ3B4J1xuICBAaWYgdW5pdGxlc3MoJHZhbHVlKSBhbmQgKCR2YWx1ZSA+IDEwKSB7XG4gICAgQHJldHVybiAkdmFsdWUgLyBzdHJpcC11bml0KCRiYXNlKTtcbiAgfVxuXG4gIEByZXR1cm4gJHZhbHVlO1xufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZnVuY3Rpb25zXG4vLy8vXG5cbi8vLyBDcmVhdGVzIGFuIGlubmVyIGJveC1zaGFkb3cgZm9yIG9ubHkgb25lIHNpZGVcbi8vL1xuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHNpZGUgLSBTaWRlIHRoZSBzaGFkb3cgaXMgc3VwcG9zZWQgdG8gYXBwZWFyLiBDYW4gYmUgYHRvcGAsIGBsZWZ0YCwgYHJpZ2h0YCBvciBgYm90dG9tYC5cbi8vLyBAcGFyYW0ge051bWJlcn0gJHNpemUgLSBXaWR0aCBmb3IgdGhlIHRhcmdldCBzaWRlLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciAtIENvbG9yIG9mIHRoZSBzaGFkb3cuXG5AbWl4aW4gaW5uZXItc2lkZS1zaGFkb3coXG4gICRzaWRlOiBib3R0b20sXG4gICRzaXplOiAyMHB4LFxuICAkY29sb3I6IHJnYmEoJGJsYWNrLCAwLjI1KVxuKSB7XG5cbiAgJGhlbHBlcjogcm91bmQoJHNpemUgKiAwLjY1KTtcblxuICBAaWYgKCRzaWRlID09IHRvcCkge1xuICAgIGJveC1zaGFkb3c6IGluc2V0IDAgJGhlbHBlciAkc2l6ZSAoLTEpKiRoZWxwZXIgJGNvbG9yO1xuICB9IEBlbHNlIGlmICgkc2lkZSA9PSBsZWZ0KSB7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgJGhlbHBlciAwICRzaXplICgtMSkqJGhlbHBlciAkY29sb3I7XG4gIH0gQGVsc2UgaWYgKCRzaWRlID09IHJpZ2h0KSB7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgKC0xKSokaGVscGVyIDAgJHNpemUgKC0xKSokaGVscGVyICRjb2xvcjtcbiAgfSBAZWxzZSBpZiAoJHNpZGUgPT0gYm90dG9tKSB7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgMCAoLTEpKiRoZWxwZXIgJHNpemUgKC0xKSokaGVscGVyICRjb2xvcjtcbiAgfVxufVxuXG4vLy8gQ3JlYXRlcyBhIENTUyB0cmlhbmdsZSwgd2hpY2ggY2FuIGJlIHVzZWQgZm9yIGRyb3Bkb3duIGFycm93cywgZHJvcGRvd24gcGlwcywgYW5kIG1vcmUuIFVzZSB0aGlzIG1peGluIGluc2lkZSBhIGAmOjpiZWZvcmVgIG9yIGAmOjphZnRlcmAgc2VsZWN0b3IsIHRvIGF0dGFjaCB0aGUgdHJpYW5nbGUgdG8gYW4gZXhpc3RpbmcgZWxlbWVudC5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkdHJpYW5nbGUtc2l6ZSAtIFdpZHRoIG9mIHRoZSB0cmlhbmdsZS5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkdHJpYW5nbGUtY29sb3IgLSBDb2xvciBvZiB0aGUgdHJpYW5nbGUuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkdHJpYW5nbGUtZGlyZWN0aW9uIC0gRGlyZWN0aW9uIHRoZSB0cmlhbmdsZSBwb2ludHMuIENhbiBiZSBgdXBgLCBgcmlnaHRgLCBgZG93bmAsIG9yIGBsZWZ0YC5cbkBtaXhpbiBjc3MtdHJpYW5nbGUoXG4gICR0cmlhbmdsZS1zaXplLFxuICAkdHJpYW5nbGUtY29sb3IsXG4gICR0cmlhbmdsZS1kaXJlY3Rpb25cbikge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcblxuICBib3JkZXI6IGluc2V0ICR0cmlhbmdsZS1zaXplO1xuXG4gIGNvbnRlbnQ6ICcnO1xuXG4gIEBpZiAoJHRyaWFuZ2xlLWRpcmVjdGlvbiA9PSBkb3duKSB7XG4gICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbiAgICBib3JkZXItdG9wLXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItY29sb3I6ICR0cmlhbmdsZS1jb2xvciB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgfVxuICBAaWYgKCR0cmlhbmdsZS1kaXJlY3Rpb24gPT0gdXApIHtcbiAgICBib3JkZXItdG9wLXdpZHRoOiAwO1xuICAgIGJvcmRlci1ib3R0b20tc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgJHRyaWFuZ2xlLWNvbG9yO1xuICB9XG4gIEBpZiAoJHRyaWFuZ2xlLWRpcmVjdGlvbiA9PSByaWdodCkge1xuICAgIGJvcmRlci1yaWdodC13aWR0aDogMDtcbiAgICBib3JkZXItbGVmdC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAkdHJpYW5nbGUtY29sb3I7XG4gIH1cbiAgQGlmICgkdHJpYW5nbGUtZGlyZWN0aW9uID09IGxlZnQpIHtcbiAgICBib3JkZXItbGVmdC13aWR0aDogMDtcbiAgICBib3JkZXItcmlnaHQtc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgJHRyaWFuZ2xlLWNvbG9yIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICB9XG59XG5cbi8vLyBDcmVhdGVzIGEgbWVudSBpY29uIHdpdGggYSBzZXQgd2lkdGgsIGhlaWdodCwgbnVtYmVyIG9mIGJhcnMsIGFuZCBjb2xvcnMuIFRoZSBtaXhpbiB1c2VzIHRoZSBoZWlnaHQgb2YgdGhlIGljb24gYW5kIHRoZSB3ZWlnaHQgb2YgdGhlIGJhcnMgdG8gZGV0ZXJtaW5lIHNwYWNpbmcuIDxkaXYgY2xhc3M9XCJkb2NzLWV4YW1wbGUtYnVyZ2VyXCI+PC9kaXY+XG4vLy9cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgWyRibGFja10gLSBDb2xvciB0byB1c2UgZm9yIHRoZSBpY29uLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvci1ob3ZlciBbJGRhcmstZ3JheV0gLSBDb2xvciB0byB1c2Ugd2hlbiB0aGUgaWNvbiBpcyBob3ZlcmVkIG92ZXIuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR3aWR0aCBbMjBweF0gLSBXaWR0aCBvZiB0aGUgaWNvbi5cbi8vLyBAcGFyYW0ge051bWJlcn0gJGhlaWdodCBbMTZweF0gLSBIZWlnaHQgb2YgdGhlIGljb24uXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR3ZWlnaHQgWzJweF0gLSBIZWlnaHQgb2YgaW5kaXZpZHVhbCBiYXJzIGluIHRoZSBpY29uLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkYmFycyBbM10gLSBOdW1iZXIgb2YgYmFycyBpbiB0aGUgaWNvbi5cbkBtaXhpbiBoYW1idXJnZXIoXG4gICRjb2xvcjogJGJsYWNrLFxuICAkY29sb3ItaG92ZXI6ICRkYXJrLWdyYXksXG4gICR3aWR0aDogMjBweCxcbiAgJGhlaWdodDogMTZweCxcbiAgJHdlaWdodDogMnB4LFxuICAkYmFyczogM1xuKSB7XG4gIC8vIGJveC1zaGFkb3cgQ1NTIG91dHB1dFxuICAkc2hhZG93OiAoKTtcbiAgJGhvdmVyLXNoYWRvdzogKCk7XG5cbiAgLy8gU3BhY2luZyBiZXR3ZWVuIGJhcnMgaXMgY2FsY3VsYXRlZCBiYXNlZCBvbiB0aGUgdG90YWwgaGVpZ2h0IG9mIHRoZSBpY29uIGFuZCB0aGUgd2VpZ2h0IG9mIGVhY2ggYmFyXG4gICRzcGFjaW5nOiAoJGhlaWdodCAtICgkd2VpZ2h0ICogJGJhcnMpKSAvICgkYmFycyAtIDEpO1xuXG4gIEBpZiB1bml0KCRzcGFjaW5nKSA9PSAncHgnIHtcbiAgICAkc3BhY2luZzogZmxvb3IoJHNwYWNpbmcpO1xuICB9XG5cbiAgQGZvciAkaSBmcm9tIDIgdGhyb3VnaCAkYmFycyB7XG4gICAgJG9mZnNldDogKCR3ZWlnaHQgKyAkc3BhY2luZykgKiAoJGkgLSAxKTtcbiAgICAkc2hhZG93OiBhcHBlbmQoJHNoYWRvdywgMCAkb2Zmc2V0IDAgJGNvbG9yLCBjb21tYSk7XG4gIH1cblxuICAvLyBJY29uIGNvbnRhaW5lclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgd2lkdGg6ICR3aWR0aDtcbiAgaGVpZ2h0OiAkaGVpZ2h0O1xuICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgLy8gSWNvbiBiYXJzXG4gICY6OmFmdGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG5cbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6ICR3ZWlnaHQ7XG5cbiAgICBiYWNrZ3JvdW5kOiAkY29sb3I7XG4gICAgYm94LXNoYWRvdzogJHNoYWRvdztcblxuICAgIGNvbnRlbnQ6ICcnO1xuICB9XG5cbiAgLy8gSG92ZXIgc3RhdGVcbiAgQGlmICRjb2xvci1ob3ZlciB7XG4gICAgLy8gR2VuZXJhdGUgQ1NTXG4gICAgQGZvciAkaSBmcm9tIDIgdGhyb3VnaCAkYmFycyB7XG4gICAgICAkb2Zmc2V0OiAoJHdlaWdodCArICRzcGFjaW5nKSAqICgkaSAtIDEpO1xuICAgICAgJGhvdmVyLXNoYWRvdzogYXBwZW5kKCRob3Zlci1zaGFkb3csIDAgJG9mZnNldCAwICRjb2xvci1ob3ZlciwgY29tbWEpO1xuICAgIH1cblxuICAgICY6aG92ZXI6OmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQ6ICRjb2xvci1ob3ZlcjtcbiAgICAgIGJveC1zaGFkb3c6ICRob3Zlci1zaGFkb3c7XG4gICAgfVxuICB9XG59XG5cbi8vLyBBZGRzIGEgZG93bndhcmQtZmFjaW5nIHRyaWFuZ2xlIGFzIGEgYmFja2dyb3VuZCBpbWFnZSB0byBhbiBlbGVtZW50LiBUaGUgaW1hZ2UgaXMgZm9ybWF0dGVkIGFzIGFuIFNWRywgbWFraW5nIGl0IGVhc3kgdG8gY2hhbmdlIHRoZSBjb2xvci4gQmVjYXVzZSBJbnRlcm5ldCBFeHBsb3JlciBkb2Vzbid0IHN1cHBvcnQgZW5jb2RlZCBTVkdzIGFzIGJhY2tncm91bmQgaW1hZ2VzLCBhIFBORyBmYWxsYmFjayBpcyBhbHNvIGluY2x1ZGVkLlxuLy8vIFRoZXJlIGFyZSB0d28gUE5HIGZhbGxiYWNrczogYSBibGFjayB0cmlhbmdsZSBhbmQgYSB3aGl0ZSB0cmlhbmdsZS4gVGhlIG9uZSB1c2VkIGRlcGVuZHMgb24gdGhlIGxpZ2h0bmVzcyBvZiB0aGUgaW5wdXQgY29sb3IuXG4vLy9cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgWyRibGFja10gLSBDb2xvciB0byB1c2UgZm9yIHRoZSB0cmlhbmdsZS5cbkBtaXhpbiBiYWNrZ3JvdW5kLXRyaWFuZ2xlKCRjb2xvcjogJGJsYWNrKSB7XG4gICRyZ2I6ICdyZ2IlMjgje3JvdW5kKHJlZCgkY29sb3IpKX0sICN7cm91bmQoZ3JlZW4oJGNvbG9yKSl9LCAje3JvdW5kKGJsdWUoJGNvbG9yKSl9JTI5JztcblxuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7dXRmOCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZycgdmVyc2lvbj0nMS4xJyB3aWR0aD0nMzInIGhlaWdodD0nMjQnIHZpZXdCb3g9JzAgMCAzMiAyNCc+PHBvbHlnb24gcG9pbnRzPScwLDAgMzIsMCAxNiwyNCcgc3R5bGU9J2ZpbGw6ICN7JHJnYn0nPjwvcG9seWdvbj48L3N2Zz5cIik7XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDowXFwwKSB7XG4gICAgQGlmIGxpZ2h0bmVzcygkY29sb3IpIDwgNjAlIHtcbiAgICAgIC8vIFdoaXRlIHRyaWFuZ2xlXG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2RhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBQ0FBQUFBWUNBWUFBQUNiVS84MEFBQUFHWFJGV0hSVGIyWjBkMkZ5WlFCQlpHOWlaU0JKYldGblpWSmxZV1I1Y2NsbFBBQUFBSXBKUkVGVWVOckVrY2tOZ0RBTUJCZlJrRXQwT2JSQkJkc0dYVURnbVFmSzRYaEgybThjelFBQXkyN1IzdHN3NFFmZTJ4OHVPTzZvWUxiNkdsT29yM0dGK3N3VVJBT21VSitSd3RFSnM5V3ZUR0VZeEJYcUkxTVFBWmhDZlVRS1J6RE1WaitUd3JBSVY2anZTVUVrWUFyMUxTa2N5VEJiL1YrS1lmWDd4QWV1c3Ezc0xEdEdIM2tFR0FDUFdJZmxOWmZoUlFBQUFBQkpSVTVFcmtKZ2dnPT0nKTtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgLy8gQmxhY2sgdHJpYW5nbGVcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFDQUFBQUFZQ0FZQUFBQ2JVLzgwQUFBQUdYUkZXSFJUYjJaMGQyRnlaUUJCWkc5aVpTQkpiV0ZuWlZKbFlXUjVjY2xsUEFBQUFNQkpSRUZVZU5yRWxsc09oQ0FNUlZzekM5SWx6VTdLQ21WSFRKc29NV1lNVXRweXY5QmdidVhRQjVaU2RnQllZWTR5Y2dCaXZrOEtZRnNRTWZNaVRUQlA0bzNuVXpDS3pPYWJMSmJMeTIvZzMxZXZHa0FnaW5SNC9aZWdLSDVxWDNiSkNzY0EzdDB4M2tnTzV0UUZ5aGhGZjUweFJxRkxieU1VTkpRemd5akdTL3dnQ3B2S3FrUkJwdVdyRTRWOWQrMUU0ZFBVWHFJZzEwN1NRT0UvMkRSUXhNd1REeWdJSW5WREVUOVQzbENvai82ai9WQ21HalpPbDJsS3BaOEFBd0RRUDd6SWltREdGUUFBQUFCSlJVNUVya0pnZ2c9PScpO1xuICAgIH1cbiAgfVxufVxuXG4vLy8gQXBwbGllcyB0aGUgbWljcm8gY2xlYXJmaXggaGFjayBwb3B1bGFyaXplZCBieSBOaWNvbGFzIEdhbGxhZ2hlci4gSW5jbHVkZSB0aGlzIG1peGluIG9uIGEgY29udGFpbmVyIGlmIGl0cyBjaGlsZHJlbiBhcmUgYWxsIGZsb2F0ZWQsIHRvIGdpdmUgdGhlIGNvbnRhaW5lciBhIHByb3BlciBoZWlnaHQuXG4vLy8gVGhlIGNsZWFyZml4IGlzIGF1Z21lbnRlZCB3aXRoIHNwZWNpZmljIHN0eWxlcyB0byBwcmV2ZW50IGJvcmRlcnMgaW4gZmxleGJveCBlbnZpcm9ubWVudHNcbi8vLyBAbGluayBodHRwOi8vbmljb2xhc2dhbGxhZ2hlci5jb20vbWljcm8tY2xlYXJmaXgtaGFjay8gTWljcm8gQ2xlYXJmaXggSGFja1xuLy8vIEBsaW5rIGh0dHA6Ly9kYW5pc2FkZXNpZ25lci5jb20vYmxvZy9mbGV4Ym94LWNsZWFyLWZpeC1wc2V1ZG8tZWxlbWVudHMvIEZsZXhib3ggZml4XG5AbWl4aW4gY2xlYXJmaXgge1xuICAmOjpiZWZvcmUsXG4gICY6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjb250ZW50OiAnICc7XG5cbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGZsZXgtYmFzaXM6IDA7XG4gICAgICBvcmRlcjogMTtcbiAgICB9XG4gIH1cblxuICAmOjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7XG4gIH1cbn1cblxuLy8vIEFkZHMgQ1NTIGZvciBhIFwicXVhbnRpdHkgcXVlcnlcIiBzZWxlY3RvciB0aGF0IGF1dG9tYXRpY2FsbHkgc2l6ZXMgZWxlbWVudHMgYmFzZWQgb24gaG93IG1hbnkgdGhlcmUgYXJlIGluc2lkZSBhIGNvbnRhaW5lci5cbi8vLyBAbGluayBodHRwOi8vYWxpc3RhcGFydC5jb20vYXJ0aWNsZS9xdWFudGl0eS1xdWVyaWVzLWZvci1jc3MgUXVhbnRpdHkgUXVlcmllcyBmb3IgQ1NTXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJG1heCAtIE1heGltdW0gbnVtYmVyIG9mIGl0ZW1zIHRvIGRldGVjdC4gVGhlIGhpZ2hlciB0aGlzIG51bWJlciBpcywgdGhlIG1vcmUgQ1NTIHRoYXQncyByZXF1aXJlZCB0byBjb3ZlciBlYWNoIG51bWJlciBvZiBpdGVtcy5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRlbGVtIFtsaV0gLSBUYWcgdG8gdXNlIGZvciBzaWJsaW5nIHNlbGVjdG9ycy5cbkBtaXhpbiBhdXRvLXdpZHRoKCRtYXgsICRlbGVtOiBsaSkge1xuICBAZm9yICRpIGZyb20gMiB0aHJvdWdoICRtYXgge1xuICAgICY6bnRoLWxhc3QtY2hpbGQoI3skaX0pOmZpcnN0LWNoaWxkLFxuICAgICY6bnRoLWxhc3QtY2hpbGQoI3skaX0pOmZpcnN0LWNoaWxkIH4gI3skZWxlbX0ge1xuICAgICAgd2lkdGg6IHBlcmNlbnRhZ2UoMSAvICRpKTtcbiAgICB9XG4gIH1cbn1cblxuLy8vIFJlbW92ZXMgdGhlIGZvY3VzIHJpbmcgYXJvdW5kIGFuIGVsZW1lbnQgd2hlbiBhIG1vdXNlIGlucHV0IGlzIGRldGVjdGVkLlxuQG1peGluIGRpc2FibGUtbW91c2Utb3V0bGluZSB7XG4gIFtkYXRhLXdoYXRpbnB1dD0nbW91c2UnXSAmIHtcbiAgICBvdXRsaW5lOiAwO1xuICB9XG59XG5cbi8vLyBNYWtlcyBhbiBlbGVtZW50IHZpc3VhbGx5IGhpZGRlbiwgYnV0IHN0aWxsIGFjY2Vzc2libGUgdG8ga2V5Ym9hcmRzIGFuZCBhc3Npc3RpdmUgZGV2aWNlcy5cbi8vLyBAbGluayBodHRwOi8vc25vb2suY2EvYXJjaGl2ZXMvaHRtbF9hbmRfY3NzL2hpZGluZy1jb250ZW50LWZvci1hY2Nlc3NpYmlsaXR5IEhpZGluZyBDb250ZW50IGZvciBBY2Nlc3NpYmlsaXR5XG4vLy8gQGxpbmsgaHR0cDovL2h1Z29naXJhdWRlbC5jb20vMjAxNi8xMC8xMy9jc3MtaGlkZS1hbmQtc2Vlay9cbkBtaXhpbiBlbGVtZW50LWludmlzaWJsZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuICB3aWR0aDogMXB4O1xuICBoZWlnaHQ6IDFweDtcbiAgcGFkZGluZzogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgY2xpcDogcmVjdCgwLDAsMCwwKTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgYm9yZGVyOiAwO1xufVxuXG4vLy8gUmV2ZXJzZXMgdGhlIENTUyBvdXRwdXQgY3JlYXRlZCBieSB0aGUgYGVsZW1lbnQtaW52aXNpYmxlKClgIG1peGluLlxuQG1peGluIGVsZW1lbnQtaW52aXNpYmxlLW9mZiB7XG4gIHBvc2l0aW9uOiBzdGF0aWMgIWltcG9ydGFudDtcbiAgd2lkdGg6IGF1dG87XG4gIGhlaWdodDogYXV0bztcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIGNsaXA6IGF1dG87XG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7XG59XG5cbi8vLyBWZXJ0aWNhbGx5IGNlbnRlcnMgdGhlIGVsZW1lbnQgaW5zaWRlIG9mIGl0cyBmaXJzdCBub24tc3RhdGljIHBhcmVudCxcbi8vLyBAbGluayBodHRwOi8vd3d3LnNpdGVwb2ludC5jb20vY2VudGVyaW5nLXdpdGgtc2Fzcy8gQ2VudGVyaW5nIFdpdGggU2Fzc1xuQG1peGluIHZlcnRpY2FsLWNlbnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbn1cblxuLy8vIEhvcml6b250YWxseSBjZW50ZXJzIHRoZSBlbGVtZW50IGluc2lkZSBvZiBpdHMgZmlyc3Qgbm9uLXN0YXRpYyBwYXJlbnQsXG4vLy8gQGxpbmsgaHR0cDovL3d3dy5zaXRlcG9pbnQuY29tL2NlbnRlcmluZy13aXRoLXNhc3MvIENlbnRlcmluZyBXaXRoIFNhc3NcbkBtaXhpbiBob3Jpem9udGFsLWNlbnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG59XG5cbi8vLyBBYnNvbHV0ZWx5IGNlbnRlcnMgdGhlIGVsZW1lbnQgaW5zaWRlIG9mIGl0cyBmaXJzdCBub24tc3RhdGljIHBhcmVudCxcbi8vLyBAbGluayBodHRwOi8vd3d3LnNpdGVwb2ludC5jb20vY2VudGVyaW5nLXdpdGgtc2Fzcy8gQ2VudGVyaW5nIFdpdGggU2Fzc1xuQG1peGluIGFic29sdXRlLWNlbnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIGxlZnQ6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG59XG5cbi8vLyBJdGVyYXRlcyB0aHJvdWdoIGJyZWFrcG9pbnRzIGRlZmluZWQgaW4gYCRicmVha3BvaW50LWNsYXNzZXNgIGFuZCBwcmludHMgdGhlIENTUyBpbnNpZGUgdGhlIG1peGluIGF0IGVhY2ggYnJlYWtwb2ludCdzIG1lZGlhIHF1ZXJ5LiBVc2UgdGhpcyB3aXRoIHRoZSBncmlkLCBvciBhbnkgb3RoZXIgY29tcG9uZW50IHRoYXQgaGFzIHJlc3BvbnNpdmUgY2xhc3Nlcy5cbi8vL1xuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJHNtYWxsIFt0cnVlXSAtIElmIGBmYWxzZWAsIHRoZSBtaXhpbiB3aWxsIHNraXAgdGhlIGBzbWFsbGAgYnJlYWtwb2ludC4gVXNlIHRoaXMgd2l0aCBjb21wb25lbnRzIHRoYXQgZG9uJ3QgcHJlZml4IGNsYXNzZXMgd2l0aCBgc21hbGwtYCwgb25seSBgbWVkaXVtLWAgYW5kIHVwLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGF1dG8taW5zZXJ0LWJyZWFrcG9pbnRzIFt0cnVlXSAtIElmIGBmYWxzZWAsIHRoZSBtaXhpbiB3aWxsIGl0ZXJhdGUgb3ZlciBicmVha3BvaW50cyB3aXRob3V0IGRvaW5nIHRoZSBtZWRpYSBxdWVyeSBpdHNlbGYuIFVzZWZ1bCBmb3IgbW9yZSBjb21wbGV4IG1lZGlhIHF1ZXJ5IGdlbmVyYXRpb24gYXMgaW4gdGhlIG1hcmdpbiBncmlkLlxuQG1peGluIC16Zi1lYWNoLWJyZWFrcG9pbnQoJHNtYWxsOiB0cnVlLCAkYXV0by1pbnNlcnQtYnJlYWtwb2ludHM6IHRydWUpIHtcbiAgJGxpc3Q6ICRicmVha3BvaW50LWNsYXNzZXM7XG5cbiAgQGlmIG5vdCAkc21hbGwge1xuICAgICRsaXN0OiBzbC1yZW1vdmUoJGxpc3QsICQtemYtemVyby1icmVha3BvaW50KTtcbiAgfVxuXG4gIEBlYWNoICRuYW1lIGluICRsaXN0IHtcbiAgICAkb2xkLXpmLXNpemU6IG51bGw7XG4gICAgQGlmIGdsb2JhbC12YXJpYWJsZS1leGlzdHMoLXpmLXNpemUpIHtcbiAgICAgICRvbGQtemYtc2l6ZTogJC16Zi1zaXplO1xuICAgIH1cbiAgICAkLXpmLXNpemU6ICRuYW1lICFnbG9iYWw7XG5cbiAgICBAaWYgJGF1dG8taW5zZXJ0LWJyZWFrcG9pbnRzIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG5hbWUpIHtcbiAgICAgICAgQGNvbnRlbnQ7XG4gICAgICB9XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cblxuICAgICQtemYtc2l6ZTogJG9sZC16Zi1zaXplICFnbG9iYWw7XG4gIH1cbn1cblxuLy8vIEdlbmVyYXRlIHRoZSBgQGNvbnRlbnRgIHBhc3NlZCB0byB0aGUgbWl4aW4gd2l0aCBhIHZhbHVlIGAkLXpmLWJwLXZhbHVlYCByZWxhdGVkIHRvIGEgYnJlYWtwb2ludCwgZGVwZW5kaW5nIG9uIHRoZSBgJG5hbWVgIHBhcmFtZXRlcjpcbi8vLyAtIEZvciBhIHNpbmdsZSB2YWx1ZSwgYCQtemYtYnAtdmFsdWVgIGlzIHRoaXMgdmFsdWUuXG4vLy8gLSBGb3IgYSBicmVha3BvaW50IG5hbWUsIGAkLXpmLWJwLXZhbHVlYCBpcyB0aGUgY29ycmVzcG9uZGluZyBicmVha3BvaW50IHZhbHVlIGluIGAkbWFwYC5cbi8vLyAtIEZvciBcImF1dG9cIiwgYCQtemYtYnAtdmFsdWVgIGlzIHRoZSBjb3JyZXNwb25kaW5nIGJyZWFrcG9pbnQgdmFsdWUgaW4gYCRtYXBgIGFuZCBpcyBwYXNzZWQgdG8gYEBjb250ZW50YCwgd2hpY2ggaXMgbWFkZSByZXNwb25zaXZlIGZvciBlYWNoIGJyZWFrcG9pbnQgb2YgYCRtYXBgLlxuLy8vIEBwYXJhbSB7TnVtYmVyfEFycmF5fEtleXdvcmR9ICRuYW1lIFthdXRvXSAtIFNpbmdsZSB2YWx1ZSwgYnJlYWtwb2ludCBuYW1lLCBvciBsaXN0IG9mIGJyZWFrcG9pbnQgbmFtZXMgdG8gdXNlLiBcImF1dG9cIiBieSBkZWZhdWx0LlxuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJG1hcCAtIE1hcCBvZiBicmVha3BvaW50cyBhbmQgdmFsdWVzIG9yIHNpbmdsZSB2YWx1ZSB0byB1c2UuXG5AbWl4aW4gLXpmLWJyZWFrcG9pbnQtdmFsdWUoXG4gICRuYW1lOiBhdXRvLFxuICAkbWFwOiBudWxsXG4pIHtcbiAgQGlmICRuYW1lID09IGF1dG8gYW5kIHR5cGUtb2YoJG1hcCkgPT0gJ21hcCcge1xuICAgIC8vIFwiYXV0b1wiXG4gICAgQGVhY2ggJGssICR2IGluICRtYXAge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkaykge1xuICAgICAgICBAaW5jbHVkZSAtemYtYnJlYWtwb2ludC12YWx1ZSgkdiwgJG1hcCkge1xuICAgICAgICAgIEBjb250ZW50O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICAvLyBicmVha3BvaW50IG5hbWVcbiAgICBAaWYgdHlwZS1vZigkbmFtZSkgPT0gJ3N0cmluZycge1xuICAgICAgJG5hbWU6IC16Zi1nZXQtYnAtdmFsKCRtYXAsICRuYW1lKTtcbiAgICB9XG5cbiAgICAvLyBicmVha3BvaW50IHZhbHVlXG4gICAgJC16Zi1icC12YWx1ZTogJG5hbWUgIWdsb2JhbDtcbiAgICBAY29udGVudDtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZmxleC1ncmlkXG4vLy8vXG5cbi8vLyBDcmVhdGVzIGEgY29udGFpbmVyIGZvciBhIGZsZXggZ3JpZCByb3cuXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR8TGlzdH0gJGJlaGF2aW9yIFtudWxsXVxuLy8vICAgTW9kaWZpY2F0aW9ucyB0byB0aGUgZGVmYXVsdCBncmlkIHN0eWxlcy4gYG5lc3RgIGluZGljYXRlcyB0aGUgcm93IHdpbGwgYmUgcGxhY2VkIGluc2lkZSBhbm90aGVyIHJvdy4gYGNvbGxhcHNlYCBpbmRpY2F0ZXMgdGhhdCB0aGUgY29sdW1ucyBpbnNpZGUgdGhpcyByb3cgd2lsbCBub3QgaGF2ZSBwYWRkaW5nLiBgbmVzdCBjb2xsYXBzZWAgY29tYmluZXMgYm90aCBiZWhhdmlvcnMuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfE51bWJlcn0gJHNpemUgWyRncmlkLXJvdy13aWR0aF0gTWF4aW11bSBzaXplIG9mIHRoZSByb3cuIFNldCB0byBgZXhwYW5kYCB0byBtYWtlIHRoZSByb3cgdGFraW5nIHRoZSBmdWxsIHdpZHRoLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkY29sdW1ucyBbbnVsbF0gLSBOdW1iZXIgb2YgY29sdW1ucyB0byB1c2UgZm9yIHRoaXMgcm93LiBJZiBzZXQgdG8gYG51bGxgICh0aGUgZGVmYXVsdCksIHRoZSBnbG9iYWwgY29sdW1uIGNvdW50IHdpbGwgYmUgdXNlZC5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRiYXNlIFt0cnVlXSAtIFNldCB0byBgZmFsc2VgIHRvIHByZXZlbnQgYmFzaWMgc3R5bGVzIGZyb20gYmVpbmcgb3V0cHV0LiBVc2VmdWwgaWYgeW91J3JlIGNhbGxpbmcgdGhpcyBtaXhpbiBvbiB0aGUgc2FtZSBlbGVtZW50IHR3aWNlLCBhcyBpdCBwcmV2ZW50cyBkdXBsaWNhdGUgQ1NTIG91dHB1dC5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICR3cmFwIFt0cnVlXSAtIFNldCB0byBgZmFsc2VgIHRvIGhhdmUgcm93IHdyYXBwaW5nIGJlaGF2aW9yIHNldCB0byBub3dyYXBcbi8vLyBAcGFyYW0ge051bWJlcnxNYXB9ICRndXR0ZXJzIFskZ3JpZC1jb2x1bW4tZ3V0dGVyXSAtIEd1dHRlciBtYXAgb3Igc2luZ2xlIHZhbHVlIHRvIHVzZSB3aGVuIGludmVydGluZyBtYXJnaW5zLCBpbiBjYXNlIHRoZSByb3cgaXMgbmVzdGVkLiBSZXNwb25zaXZlIGd1dHRlciBzZXR0aW5ncyBieSBkZWZhdWx0LlxuQG1peGluIGZsZXgtZ3JpZC1yb3coXG4gICRiZWhhdmlvcjogbnVsbCxcbiAgJHNpemU6ICRncmlkLXJvdy13aWR0aCxcbiAgJGNvbHVtbnM6IG51bGwsXG4gICRiYXNlOiB0cnVlLFxuICAkd3JhcDogdHJ1ZSxcbiAgJGd1dHRlcnM6ICRncmlkLWNvbHVtbi1ndXR0ZXJcbikge1xuICAkbWFyZ2luOiBhdXRvO1xuICAkd3JhcDogaWYoJHdyYXAsIHdyYXAsIG5vd3JhcCk7XG5cbiAgQGlmIGluZGV4KCRiZWhhdmlvciwgbmVzdCkgIT0gbnVsbCB7XG4gICAgQGluY2x1ZGUgZ3JpZC1yb3ctbmVzdCgkZ3V0dGVycyk7XG5cbiAgICBAaWYgaW5kZXgoJGJlaGF2aW9yLCBjb2xsYXBzZSkgIT0gbnVsbCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIEBpbmNsdWRlIGdyaWQtcm93LXNpemUoJHNpemUpO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgfVxuXG4gIEBpZiAkYmFzZSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWZsb3c6IHJvdyAkd3JhcDtcbiAgfVxuXG4gIEBpZiAkY29sdW1ucyAhPSBudWxsIHtcbiAgICBAaW5jbHVkZSBncmlkLWNvbnRleHQoJGNvbHVtbnMsICRiYXNlKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cblxuLy8vIENhbGN1bGF0ZXMgdGhlIGBmbGV4YCBwcm9wZXJ0eSBmb3IgYSBmbGV4IGdyaWQgY29sdW1uLiBJdCBhY2NlcHRzIGFsbCBvZiB0aGUgc2FtZSB2YWx1ZXMgYXMgdGhlIGJhc2ljIGBncmlkLWNvbHVtbigpYCBmdW5jdGlvbiwgYWxvbmcgd2l0aCB0d28gZXh0cmFzOlxuLy8vICAgLSBgZXhwYW5kYCAodGhlIGRlZmF1bHQpIHdpbGwgbWFrZSB0aGUgY29sdW1uIGV4cGFuZCB0byBmaWxsIHNwYWNlLlxuLy8vICAgLSBgc2hyaW5rYCB3aWxsIG1ha2UgdGhlIGNvbHVtbiBjb250cmFjdCwgc28gaXQgb25seSB0YWtlcyB1cCB0aGUgaG9yaXpvbnRhbCBzcGFjZSBpdCBuZWVkcy5cbi8vL1xuLy8vIEBwYXJhbSB7TWl4ZWR9ICRjb2x1bW5zIFtleHBhbmRdIC0gV2lkdGggb2YgdGhlIGNvbHVtbi5cbkBmdW5jdGlvbiBmbGV4LWdyaWQtY29sdW1uKCRjb2x1bW5zOiBleHBhbmQpIHtcbiAgJGZsZXg6IDEgMSAwcHg7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgemVyby11bml0XG5cbiAgQGlmICRjb2x1bW5zID09IHNocmluayB7XG4gICAgJGZsZXg6IDAgMCBhdXRvO1xuICB9XG4gIEBlbHNlIGlmICRjb2x1bW5zICE9IGV4cGFuZCB7XG4gICAgJGZsZXg6IDAgMCBncmlkLWNvbHVtbigkY29sdW1ucyk7XG4gIH1cblxuICBAcmV0dXJuICRmbGV4O1xufVxuXG4vLy8gQ3JlYXRlcyBhIGNvbHVtbiBmb3IgYSBmbGV4IGdyaWQuIEJ5IGRlZmF1bHQsIHRoZSBjb2x1bW4gd2lsbCBzdHJldGNoIHRvIHRoZSBmdWxsIHdpZHRoIG9mIGl0cyBjb250YWluZXIsIGJ1dCB0aGlzIGNhbiBiZSBvdmVycmlkZGVuIHdpdGggc2l6aW5nIGNsYXNzZXMsIG9yIGJ5IHVzaW5nIHRoZSBgdW5zdGFja2AgY2xhc3Mgb24gdGhlIHBhcmVudCBmbGV4IHJvdy5cbi8vL1xuLy8vIEBwYXJhbSB7TWl4ZWR9ICRjb2x1bW5zIFtleHBhbmRdIC0gV2lkdGggb2YgdGhlIGNvbHVtbi4gUmVmZXIgdG8gdGhlIGBmbGV4LWdyaWQtY29sdW1uKClgIGZ1bmN0aW9uIHRvIHNlZSBwb3NzaWJsZSB2YWx1ZXMuXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkZ3V0dGVycyBbJGdyaWQtY29sdW1uLWd1dHRlcl0gLSBNYXAgb3Igc2luZ2xlIHZhbHVlIGZvciBndXR0ZXJzIHdpZHRoLiBTZWUgdGhlIGBncmlkLWNvbHVtbi1ndXR0ZXJgIG1peGluLlxuQG1peGluIGZsZXgtZ3JpZC1jb2x1bW4oXG4gICRjb2x1bW5zOiBleHBhbmQsXG4gICRndXR0ZXJzOiAkZ3JpZC1jb2x1bW4tZ3V0dGVyXG4pIHtcbiAgLy8gQmFzZSBwcm9wZXJ0aWVzXG4gIEBpbmNsdWRlIGZsZXgtZ3JpZC1zaXplKCRjb2x1bW5zKTtcblxuICAvLyBHdXR0ZXJzXG4gIEBpbmNsdWRlIGdyaWQtY29sdW1uLWd1dHRlcigkZ3V0dGVyczogJGd1dHRlcnMpO1xuXG4gIC8vIGZpeGVzIHJlY2VudCBDaHJvbWUgdmVyc2lvbiBub3QgbGltaXRpbmcgY2hpbGQgd2lkdGhcbiAgLy8gaHR0cHM6Ly9zdGFja292ZXJmbG93LmNvbS9xdWVzdGlvbnMvMzQ5MzQ1ODYvd2hpdGUtc3BhY2Utbm93cmFwLWFuZC1mbGV4Ym94LWRpZC1ub3Qtd29yay1pbi1jaHJvbWVcbiAgQGlmICRjb2x1bW5zID09IGV4cGFuZCB7XG4gICAgbWluLXdpZHRoOiAwO1xuICB9XG59XG5cbi8vLyBDcmVhdGVzIGEgYmxvY2sgZ3JpZCBmb3IgYSBmbGV4IGdyaWQgcm93LlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRuIC0gTnVtYmVyIG9mIGNvbHVtbnMgdG8gZGlzcGxheSBvbiBlYWNoIHJvdy5cbi8vLyBAcGFyYW0ge1N0cmluZ30gJHNlbGVjdG9yIC0gU2VsZWN0b3IgdG8gdXNlIHRvIHRhcmdldCBjb2x1bW5zIHdpdGhpbiB0aGUgcm93LlxuQG1peGluIGZsZXgtZ3JpZC1sYXlvdXQoXG4gICRuLFxuICAkc2VsZWN0b3I6ICcuY29sdW1uJ1xuKSB7XG4gIGZsZXgtd3JhcDogd3JhcDtcblxuICA+ICN7JHNlbGVjdG9yfSB7XG4gICAgJHBjdDogcGVyY2VudGFnZSgxLyRuKTtcblxuICAgIGZsZXg6IDAgMCAkcGN0O1xuICAgIG1heC13aWR0aDogJHBjdDtcbiAgfVxufVxuXG4vLy8gQ2hhbmdlcyB0aGUgd2lkdGggZmxleCBncmlkIGNvbHVtbi5cbi8vLyBAcGFyYW0ge01peGVkfSAkY29sdW1ucyBbZXhwYW5kXSAtIFdpZHRoIG9mIHRoZSBjb2x1bW4uIFJlZmVyIHRvIHRoZSBgZmxleC1ncmlkLWNvbHVtbigpYCBmdW5jdGlvbiB0byBzZWUgcG9zc2libGUgdmFsdWVzLlxuQG1peGluIGZsZXgtZ3JpZC1zaXplKCRjb2x1bW5zOiBudWxsKSB7XG4gICRjb2x1bW5zOiAkY29sdW1ucyBvciBleHBhbmQ7XG5cbiAgZmxleDogZmxleC1ncmlkLWNvbHVtbigkY29sdW1ucyk7XG5cbiAgLy8gbWF4LXdpZHRoIGZpeGVzIElFIDEwLzExIG5vdCByZXNwZWN0aW5nIHRoZSBmbGV4LWJhc2lzIHByb3BlcnR5XG4gIEBpZiAkY29sdW1ucyAhPSBleHBhbmQgYW5kICRjb2x1bW5zICE9IHNocmluayB7XG4gICAgbWF4LXdpZHRoOiBncmlkLWNvbHVtbigkY29sdW1ucyk7XG4gIH1cbn1cblxuXG5AbWl4aW4gZm91bmRhdGlvbi1mbGV4LWdyaWQge1xuICAvLyBSb3dcbiAgLnJvdyB7XG4gICAgQGluY2x1ZGUgZmxleC1ncmlkLXJvdztcblxuICAgIC8vIE5lc3RpbmcgYmVoYXZpb3JcbiAgICAmIC5yb3cge1xuICAgICAgQGluY2x1ZGUgZmxleC1ncmlkLXJvdyhuZXN0LCAkYmFzZTogZmFsc2UpO1xuXG4gICAgICAmLmNvbGxhcHNlIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBFeHBhbmRlZCByb3dcbiAgICAmLmV4cGFuZGVkIHtcbiAgICAgIEBpbmNsdWRlIGdyaWQtcm93LXNpemUoZXhwYW5kKTtcblxuICAgICAgLnJvdyB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICB9XG4gICAgfVxuXG4gICAgJjpub3QoLmV4cGFuZGVkKSAucm93IHtcbiAgICAgIEBpbmNsdWRlIGdyaWQtcm93LXNpemUoZXhwYW5kKTtcbiAgICB9XG5cbiAgICAmLmNvbGxhcHNlIHtcbiAgICAgID4gLmNvbHVtbiB7XG4gICAgICAgIEBpbmNsdWRlIGdyaWQtY29sLWNvbGxhcHNlO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIFVuZG8gbmVnYXRpdmUgbWFyZ2luc1xuICAgIC8vIEZyb20gY29sbGFwc2VkIGNoaWxkXG4gICAgJi5pcy1jb2xsYXBzZS1jaGlsZCxcbiAgICAmLmNvbGxhcHNlID4gLmNvbHVtbiA+IC5yb3cge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgfVxuICB9XG5cbiAgLy8gQ29sdW1uXG4gIC5jb2x1bW4ge1xuICAgIEBpbmNsdWRlIGZsZXgtZ3JpZC1jb2x1bW47XG4gIH1cblxuICAvLyBDb2x1bW4gcm93XG4gIC8vIFRoZSBkb3VibGUgLnJvdyBjbGFzcyBpcyBuZWVkZWQgdG8gYnVtcCB1cCB0aGUgc3BlY2lmaWNpdHlcbiAgLmNvbHVtbi5yb3cucm93IHtcbiAgICBmbG9hdDogbm9uZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuXG4gIC8vIFRvIHByb3Blcmx5IG5lc3QgYSBjb2x1bW4gcm93LCBwYWRkaW5nIGFuZCBtYXJnaW4gaXMgcmVtb3ZlZFxuICAucm93IC5jb2x1bW4ucm93LnJvdyB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICB9XG5cbiAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludCB7XG4gICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkZ3JpZC1jb2x1bW4tY291bnQge1xuICAgICAgLy8gU2l6aW5nIChwZXJjZW50YWdlKVxuICAgICAgLiN7JC16Zi1zaXplfS0jeyRpfSB7XG4gICAgICAgIGZsZXg6IGZsZXgtZ3JpZC1jb2x1bW4oJGkpO1xuICAgICAgICBtYXgtd2lkdGg6IGdyaWQtY29sdW1uKCRpKTtcbiAgICAgIH1cblxuICAgICAgLy8gT2Zmc2V0c1xuICAgICAgJG86ICRpIC0gMTtcblxuICAgICAgLiN7JC16Zi1zaXplfS1vZmZzZXQtI3skb30ge1xuICAgICAgICBAaW5jbHVkZSBncmlkLWNvbHVtbi1vZmZzZXQoJG8pO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIEJsb2NrIGdyaWRcbiAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRibG9jay1ncmlkLW1heCB7XG4gICAgICAuI3skLXpmLXNpemV9LXVwLSN7JGl9IHtcbiAgICAgICAgQGluY2x1ZGUgZmxleC1ncmlkLWxheW91dCgkaSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgQGlmICQtemYtc2l6ZSAhPSAkLXpmLXplcm8tYnJlYWtwb2ludCB7XG4gICAgICAvLyBTaXppbmcgKGV4cGFuZClcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJC16Zi1zaXplKSB7XG4gICAgICAgIC4jeyQtemYtc2l6ZX0tZXhwYW5kIHtcbiAgICAgICAgICBmbGV4OiBmbGV4LWdyaWQtY29sdW1uKCk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLy8gQXV0by1zdGFja2luZy91bnN0YWNraW5nXG4gICAgICBAYXQtcm9vdCAod2l0aG91dDogbWVkaWEpIHtcbiAgICAgICAgLnJvdy4jeyQtemYtc2l6ZX0tdW5zdGFjayB7XG4gICAgICAgICAgPiAuY29sdW1uIHtcbiAgICAgICAgICAgIGZsZXg6IGZsZXgtZ3JpZC1jb2x1bW4oMTAwJSk7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJC16Zi1zaXplKSB7XG4gICAgICAgICAgICAgIGZsZXg6IGZsZXgtZ3JpZC1jb2x1bW4oKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBSZXNwb25zaXZlIGNvbGxhcHNpbmdcbiAgICAuI3skLXpmLXNpemV9LWNvbGxhcHNlIHtcbiAgICAgID4gLmNvbHVtbiB7IEBpbmNsdWRlIGdyaWQtY29sLWNvbGxhcHNlOyB9XG4gICAgfVxuXG4gICAgLiN7JC16Zi1zaXplfS11bmNvbGxhcHNlIHtcbiAgICAgID4gLmNvbHVtbiB7IEBpbmNsdWRlIGdyaWQtY29sLWd1dHRlcigkLXpmLXNpemUpOyB9XG4gICAgfVxuICB9XG5cbiAgLy8gU2l6aW5nIChzaHJpbmspXG4gIC5zaHJpbmsge1xuICAgIGZsZXg6IGZsZXgtZ3JpZC1jb2x1bW4oc2hyaW5rKTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gIH1cblxuICAvLyBCbG9jayBncmlkIGNvbHVtbnNcbiAgLmNvbHVtbi1ibG9jayB7XG4gICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tbWFyZ2luO1xuICB9XG5cbiAgLmNvbHVtbnMge1xuICAgIEBleHRlbmQgLmNvbHVtbjsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBwbGFjZWhvbGRlci1pbi1leHRlbmRcblxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBncmlkXG4vLy8vXG5cbi8vLyBDaGFuZ2UgdGhlIGJlaGF2aW9yIG9mIGNvbHVtbnMgZGVmaW5lZCBpbnNpZGUgdGhpcyBtaXhpbiB0byB1c2UgYSBkaWZmZXJlbnQgY29sdW1uIGNvdW50LlxuLy8vIEBjb250ZW50XG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJGNvbHVtbnMgLSBOdW1iZXIgb2YgY29sdW1ucyB0byB1c2UuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkcm9vdCBbZmFsc2VdXG4vLy8gICBJZiBgZmFsc2VgLCBzZWxlY3RvcnMgaW5zaWRlIHRoaXMgbWl4aW4gd2lsbCBuZXN0IGluc2lkZSB0aGUgcGFyZW50IHNlbGVjdG9yLlxuLy8vICAgSWYgYHRydWVgLCBzZWxlY3RvcnMgd2lsbCBub3QgbmVzdC5cbkBtaXhpbiBncmlkLWNvbnRleHQoXG4gICRjb2x1bW5zLFxuICAkcm9vdDogZmFsc2Vcbikge1xuICAvLyBTdG9yZSB0aGUgY3VycmVudCBjb2x1bW4gY291bnQgc28gaXQgY2FuIGJlIHJlLXNldCBsYXRlclxuICAkb2xkLWdyaWQtY29sdW1uLWNvdW50OiAkZ3JpZC1jb2x1bW4tY291bnQ7XG4gICRncmlkLWNvbHVtbi1jb3VudDogJGNvbHVtbnMgIWdsb2JhbDtcblxuICBAaWYgJHJvb3Qge1xuICAgIEBhdC1yb290IHsgQGNvbnRlbnQ7IH1cbiAgfVxuICBAZWxzZSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cblxuICAvLyBSZXN0b3JlIHRoZSBvbGQgY29sdW1uIGNvdW50XG4gICRncmlkLWNvbHVtbi1jb3VudDogJG9sZC1ncmlkLWNvbHVtbi1jb3VudCAhZ2xvYmFsO1xufVxuXG4vLy8gQ3JlYXRlcyBhIGdyaWQgcm93LlxuLy8vIEBjb250ZW50XG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJGNvbHVtbnMgW251bGxdIC0gQ29sdW1uIGNvdW50IGZvciB0aGlzIHJvdy4gYG51bGxgIHdpbGwgdXNlIHRoZSBkZWZhdWx0IGNvbHVtbiBjb3VudC5cbi8vLyBAcGFyYW0ge0tleXdvcmRzfSAkYmVoYXZpb3IgW251bGxdXG4vLy8gICBNb2RpZmljYXRpb25zIHRvIHRoZSBkZWZhdWx0IGdyaWQgc3R5bGVzLiBgbmVzdGAgaW5kaWNhdGVzIHRoZSByb3cgd2lsbCBiZSBwbGFjZWQgaW5zaWRlIGFub3RoZXIgcm93LiBgY29sbGFwc2VgIGluZGljYXRlcyB0aGF0IHRoZSBjb2x1bW5zIGluc2lkZSB0aGlzIHJvdyB3aWxsIG5vdCBoYXZlIHBhZGRpbmcuIGBuZXN0IGNvbGxhcHNlYCBjb21iaW5lcyBib3RoIGJlaGF2aW9ycy5cbi8vLyBAcGFyYW0ge0tleXdvcmR8TnVtYmVyfSAkc2l6ZSBbJGdyaWQtcm93LXdpZHRoXSBNYXhpbXVtIHNpemUgb2YgdGhlIHJvdy4gU2V0IHRvIGBleHBhbmRgIHRvIG1ha2UgdGhlIHJvdyB0YWtpbmcgdGhlIGZ1bGwgd2lkdGguXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkY2YgW3RydWVdIC0gV2hldGhlciBvciBub3QgdG8gaW5jbHVkZSBhIGNsZWFyZml4LlxuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJGd1dHRlcnMgWyRncmlkLWNvbHVtbi1ndXR0ZXJdIC0gR3V0dGVyIG1hcCBvciBzaW5nbGUgdmFsdWUgdG8gdXNlIHdoZW4gaW52ZXJ0aW5nIG1hcmdpbnMuIFJlc3BvbnNpdmUgZ3V0dGVyIHNldHRpbmdzIGJ5IGRlZmF1bHQuXG5AbWl4aW4gZ3JpZC1yb3coXG4gICRjb2x1bW5zOiBudWxsLFxuICAkYmVoYXZpb3I6IG51bGwsXG4gICRzaXplOiAkZ3JpZC1yb3ctd2lkdGgsXG4gICRjZjogdHJ1ZSxcbiAgJGd1dHRlcnM6ICRncmlkLWNvbHVtbi1ndXR0ZXJcbikge1xuICAkbWFyZ2luOiBhdXRvO1xuXG4gIEBpZiBpbmRleCgkYmVoYXZpb3IsIG5lc3QpICE9IG51bGwge1xuICAgIEBpbmNsdWRlIGdyaWQtcm93LW5lc3QoJGd1dHRlcnMpO1xuXG4gICAgQGlmIGluZGV4KCRiZWhhdmlvciwgY29sbGFwc2UpICE9IG51bGwge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICBAaW5jbHVkZSBncmlkLXJvdy1zaXplKCRzaXplKTtcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIH1cblxuICBAaWYgJGNmIHtcbiAgICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgfVxuXG4gIEBpZiAkY29sdW1ucyAhPSBudWxsIHtcbiAgICBAaW5jbHVkZSBncmlkLWNvbnRleHQoJGNvbHVtbnMpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuXG4vLy8gSW52ZXJ0cyB0aGUgbWFyZ2lucyBvZiBhIHJvdyB0byBuZXN0IGl0IGluc2lkZSBvZiBhIGNvbHVtbi5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJGd1dHRlcnMgWyRncmlkLWNvbHVtbi1ndXR0ZXJdIC0gR3V0dGVyIG1hcCBvciBzaW5nbGUgdmFsdWUgdG8gdXNlIHdoZW4gaW52ZXJ0aW5nIG1hcmdpbnMuIFJlc3BvbnNpdmUgZ3V0dGVyIHNldHRpbmdzIGJ5IGRlZmF1bHQuXG5AbWl4aW4gZ3JpZC1yb3ctbmVzdCgkZ3V0dGVyczogJGdyaWQtY29sdW1uLWd1dHRlcikge1xuICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50IHtcbiAgICAkbWFyZ2luOiByZW0tY2FsYygtemYtZ2V0LWJwLXZhbCgkZ3V0dGVycywgJC16Zi1zaXplKSkgLyAyICogLTE7XG5cbiAgICBtYXJnaW4tcmlnaHQ6ICRtYXJnaW47XG4gICAgbWFyZ2luLWxlZnQ6ICRtYXJnaW47XG4gIH1cbn1cblxuLy8vIFNldCBhIGdyaWQgcm93IHNpemVcbi8vL1xuLy8vIEBwYXJhbSB7S2V5d29yZHxOdW1iZXJ9ICRzaXplIFskZ3JpZC1yb3ctd2lkdGhdIE1heGltdW0gc2l6ZSBvZiB0aGUgcm93LiBTZXQgdG8gYGV4cGFuZGAgdG8gbWFrZSB0aGUgcm93IHRha2luZyB0aGUgZnVsbCB3aWR0aC5cbkBtaXhpbiBncmlkLXJvdy1zaXplKCRzaXplOiAkZ3JpZC1yb3ctd2lkdGgpIHtcbiAgQGlmICRzaXplID09IGV4cGFuZCB7XG4gICAgJHNpemU6IG5vbmU7XG4gIH1cblxuICBtYXgtd2lkdGg6ICRzaXplO1xufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZ3JpZFxuLy8vL1xuXG4vLy8gU2V0IHRoZSBndXR0ZXJzIG9uIGEgY29sdW1uXG4vLy8gQHBhcmFtIHtOdW1iZXJ8S2V5d29yZH0gJGd1dHRlciBbYXV0b11cbi8vLyAgIFNwYWNpbmcgYmV0d2VlbiBjb2x1bW5zLCBhY2NlcHRzIG11bHRpcGxlIHZhbHVlczpcbi8vLyAgIC0gQSBzaW5nbGUgdmFsdWUgd2lsbCBtYWtlIHRoZSBndXR0ZXIgdGhhdCBleGFjdCBzaXplLlxuLy8vICAgLSBBIGJyZWFrcG9pbnQgbmFtZSB3aWxsIG1ha2UgdGhlIGd1dHRlciB0aGUgY29ycmVzcG9uZGluZyBzaXplIGluIHRoZSAkZ3V0dGVycyBtYXAuXG4vLy8gICAtIFwiYXV0b1wiIHdpbGwgbWFrZSB0aGUgZ3V0dGVyIHJlc3BvbnNpdmUsIHVzaW5nIHRoZSAkZ3V0dGVycyBtYXAgdmFsdWVzLlxuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJGd1dHRlcnMgWyRncmlkLWNvbHVtbi1ndXR0ZXJdIC0gR3V0dGVyIG1hcCBvciBzaW5nbGUgdmFsdWUgdG8gdXNlLiBSZXNwb25zaXZlIGd1dHRlciBzZXR0aW5ncyBieSBkZWZhdWx0LlxuQG1peGluIGdyaWQtY29sdW1uLWd1dHRlcihcbiAgJGd1dHRlcjogYXV0byxcbiAgJGd1dHRlcnM6ICRncmlkLWNvbHVtbi1ndXR0ZXJcbikge1xuICBAaW5jbHVkZSAtemYtYnJlYWtwb2ludC12YWx1ZSgkZ3V0dGVyLCAkZ3V0dGVycykge1xuICAgICRwYWRkaW5nOiByZW0tY2FsYygkLXpmLWJwLXZhbHVlKSAvIDI7XG5cbiAgICBwYWRkaW5nLXJpZ2h0OiAkcGFkZGluZztcbiAgICBwYWRkaW5nLWxlZnQ6ICRwYWRkaW5nO1xuICB9XG59XG5cbi8vLyBDb2xsYXBzZSB0aGUgZ3V0dGVycyBvbiBhIGNvbHVtbiBieSByZW1vdmluZyB0aGUgcGFkZGluZy4gKipOb3RlOioqIG9ubHkgdXNlIHRoaXMgbWl4aW4gd2l0aGluIGEgYnJlYWtwb2ludC4gVG8gY29sbGFwc2UgYSBjb2x1bW4ncyBndXR0ZXJzIG9uIGFsbCBzY3JlZW4gc2l6ZXMsIHVzZSB0aGUgYCRndXR0ZXJgIHBhcmFtZXRlciBvZiB0aGUgYGdyaWQtY29sdW1uKClgIG1peGluIGluc3RlYWQuXG5AbWl4aW4gZ3JpZC1jb2x1bW4tY29sbGFwc2Uge1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbi1ndXR0ZXIoMCk7XG59XG5cbi8vLyBTaG9ydGhhbmQgZm9yIGBncmlkLWNvbHVtbi1ndXR0ZXIoKWAuXG4vLy8gQGFsaWFzIGdyaWQtY29sdW1uLWd1dHRlclxuQG1peGluIGdyaWQtY29sLWd1dHRlcihcbiAgJGd1dHRlcjogYXV0byxcbiAgJGd1dHRlcnM6ICRncmlkLWNvbHVtbi1ndXR0ZXJcbikge1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbi1ndXR0ZXIoJGd1dHRlciwgJGd1dHRlcnMpO1xufVxuXG4vLy8gU2hvcnRoYW5kIGZvciBgZ3JpZC1jb2x1bW4tY29sbGFwc2UoKWAuXG4vLy8gQGFsaWFzIGdyaWQtY29sdW1uLWNvbGxhcHNlXG5AbWl4aW4gZ3JpZC1jb2wtY29sbGFwc2Uge1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbi1jb2xsYXBzZTtcbn1cblxuLy8vIFNldHMgYm90dG9tIG1hcmdpbiBvbiBncmlkIGNvbHVtbnMgdG8gbWF0Y2ggZ3V0dGVyc1xuLy8vIEBwYXJhbSB7TnVtYmVyfEtleXdvcmR9ICRtYXJnaW4gW2F1dG9dXG4vLy8gICBUaGUgYm90dG9tIG1hcmdpbiBvbiBncmlkIGNvbHVtbnMsIGFjY2VwdHMgbXVsdGlwbGUgdmFsdWVzOlxuLy8vICAgLSBBIHNpbmdsZSB2YWx1ZSB3aWxsIG1ha2UgdGhlIG1hcmdpbiB0aGF0IGV4YWN0IHNpemUuXG4vLy8gICAtIEEgYnJlYWtwb2ludCBuYW1lIHdpbGwgbWFrZSB0aGUgbWFyZ2luIHRoZSBjb3JyZXNwb25kaW5nIHNpemUgaW4gdGhlICRtYXJnaW5zIG1hcC5cbi8vLyAgIC0gXCJhdXRvXCIgd2lsbCBtYWtlIHRoZSBtYXJnaW4gcmVzcG9uc2l2ZSwgdXNpbmcgdGhlICRtYXJnaW5zIG1hcCB2YWx1ZXMuXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkbWFyZ2lucyBbJGdyaWQtY29sdW1uLWd1dHRlcl0gLSBNYXAgb3Igc2luZ2xlIHZhbHVlIHRvIHVzZS4gUmVzcG9uc2l2ZSBndXR0ZXIgc2V0dGluZ3MgYnkgZGVmYXVsdC5cbkBtaXhpbiBncmlkLWNvbHVtbi1tYXJnaW4gKFxuICAkbWFyZ2luOiBhdXRvLFxuICAkbWFyZ2luczogJGdyaWQtY29sdW1uLWd1dHRlclxuKSB7XG4gIEBpbmNsdWRlIC16Zi1icmVha3BvaW50LXZhbHVlKCRtYXJnaW4sICRtYXJnaW5zKSB7XG4gICAgJG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKCQtemYtYnAtdmFsdWUpO1xuICAgIG1hcmdpbi1ib3R0b206ICRtYXJnaW4tYm90dG9tO1xuXG4gICAgPiA6bGFzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZ3JpZFxuLy8vL1xuXG4vLy8gQ2FsY3VsYXRlcyB0aGUgd2lkdGggb2YgYSBjb2x1bW4gYmFzZWQgb24gYSBudW1iZXIgb2YgZmFjdG9ycy5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfExpc3R9ICRjb2x1bW5zXG4vLy8gICBXaWR0aCBvZiB0aGUgY29sdW1uLiBBY2NlcHRzIG11bHRpcGxlIHZhbHVlczpcbi8vLyAgIC0gQSBwZXJjZW50YWdlIHZhbHVlIHdpbGwgbWFrZSB0aGUgY29sdW1uIHRoYXQgZXhhY3Qgc2l6ZS5cbi8vLyAgIC0gQSBzaW5nbGUgZGlnaXQgd2lsbCBtYWtlIHRoZSBjb2x1bW4gc3BhbiB0aGF0IG51bWJlciBvZiBjb2x1bW5zIHdpZGUsIHRha2luZyBpbnRvIGFjY291bnQgdGhlIGNvbHVtbiBjb3VudCBvZiB0aGUgcGFyZW50IHJvdy5cbi8vLyAgIC0gQSBsaXN0IG9mIHRoZSBmb3JtYXQgXCJ4IG9mIHlcIiAod2l0aG91dCBxdW90ZXMpIHdpbGwgbWFrZSBhIGNvbHVtbiB0aGF0IGlzICp4KiBjb2x1bW5zIHdpZGUsIGFzc3VtaW5nICp5KiB0b3RhbCBjb2x1bW5zIGZvciB0aGUgcGFyZW50LlxuLy8vXG4vLy8gQHJldHVybnMge051bWJlcn0gQSBjYWxjdWxhdGVkIHBlcmNlbnRhZ2UgdmFsdWUuXG5AZnVuY3Rpb24gZ3JpZC1jb2x1bW4oJGNvbHVtbnMpIHtcbiAgJHdpZHRoOiAwJTtcblxuICAvLyBQYXJzaW5nIHBlcmNlbnRzLCBkZWNpbWFscywgYW5kIGNvbHVtbiBjb3VudHNcbiAgQGlmIHR5cGUtb2YoJGNvbHVtbnMpID09ICdudW1iZXInIHtcbiAgICBAaWYgdW5pdCgkY29sdW1ucykgPT0gJyUnIHtcbiAgICAgICR3aWR0aDogJGNvbHVtbnM7XG4gICAgfVxuICAgIEBlbHNlIGlmICRjb2x1bW5zIDwgMSB7XG4gICAgICAkd2lkdGg6IHBlcmNlbnRhZ2UoJGNvbHVtbnMpO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICAkd2lkdGg6IHBlcmNlbnRhZ2UoJGNvbHVtbnMgLyAkZ3JpZC1jb2x1bW4tY291bnQpO1xuICAgIH1cbiAgfVxuXG4gIC8vIFBhcnNpbmcgXCJuIG9mIG5cIiBleHByZXNzaW9uc1xuICBAZWxzZSBpZiB0eXBlLW9mKCRjb2x1bW5zKSA9PSAnbGlzdCcge1xuICAgIEBpZiBsZW5ndGgoJGNvbHVtbnMpICE9IDMge1xuICAgICAgQGVycm9yICdXcm9uZyBzeW50YXggZm9yIGdyaWQtY29sdW1uKCkuIFVzZSB0aGUgZm9ybWF0IFwibiBvZiBuXCIuJztcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgJHdpZHRoOiBwZXJjZW50YWdlKG50aCgkY29sdW1ucywgMSkgLyBudGgoJGNvbHVtbnMsIDMpKTtcbiAgICB9XG4gIH1cblxuICAvLyBBbnl0aGluZyBlbHNlIGlzIGluY29ycmVjdFxuICBAZWxzZSB7XG4gICAgQGVycm9yICdXcm9uZyBzeW50YXggZm9yIGdyaWQtY29sdW1uKCkuIFVzZSBhIG51bWJlciwgZGVjaW1hbCwgcGVyY2VudGFnZSwgb3IgXCJuIG9mIG5cIi4nO1xuICB9XG5cbiAgQHJldHVybiAkd2lkdGg7XG59XG5cbi8vLyBDcmVhdGVzIGEgZ3JpZCBjb2x1bW4uXG4vLy9cbi8vLyBAcGFyYW0ge01peGVkfSAkY29sdW1ucyBbJGdyaWQtY29sdW1uLWNvdW50XSAtIFdpZHRoIG9mIHRoZSBjb2x1bW4uIFJlZmVyIHRvIHRoZSBgZ3JpZC1jb2x1bW4oKWAgZnVuY3Rpb24gdG8gc2VlIHBvc3NpYmxlIHZhbHVlcy5cbi8vLyBAcGFyYW0ge01peGVkfSAkZ3V0dGVycyBbJGdyaWQtY29sdW1uLWd1dHRlcl0gLSBTcGFjaW5nIGJldHdlZW4gY29sdW1ucy4gUmVmZXIgdG8gdGhlIGBncmlkLWNvbHVtbi1ndXR0ZXIoKWAgZnVuY3Rpb24gdG8gc2VlIHBvc3NpYmxlIHZhbHVlcy5cbkBtaXhpbiBncmlkLWNvbHVtbihcbiAgJGNvbHVtbnM6ICRncmlkLWNvbHVtbi1jb3VudCxcbiAgJGd1dHRlcnM6ICRncmlkLWNvbHVtbi1ndXR0ZXJcbikge1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbi1zaXplKCRjb2x1bW5zKTtcbiAgZmxvYXQ6ICRnbG9iYWwtbGVmdDtcblxuICAvLyBHdXR0ZXJzXG4gIEBpbmNsdWRlIGdyaWQtY29sdW1uLWd1dHRlcigkZ3V0dGVyczogJGd1dHRlcnMpO1xuXG4gIC8vIFBvc2l0aW9uXG4gIEBpbmNsdWRlIGdyaWQtY29sLXBvcyhhdXRvKTtcbn1cblxuLy8vIENyZWF0ZXMgYSBncmlkIGNvbHVtbiByb3cuIFRoaXMgaXMgdGhlIGVxdWl2YWxlbnQgb2YgYWRkaW5nIGAucm93YCBhbmQgYC5jb2x1bW5gIHRvIHRoZSBzYW1lIGVsZW1lbnQuXG4vLy9cbi8vLyBAcGFyYW0ge01peGVkfSAkZ3V0dGVycyBbJGdyaWQtY29sdW1uLWd1dHRlcl0gLSBXaWR0aCBvZiB0aGUgZ3V0dGVycyBvbiBlaXRoZXIgc2lkZSBvZiB0aGUgY29sdW1uIHJvdy4gUmVmZXIgdG8gdGhlIGBncmlkLWNvbHVtbi1ndXR0ZXIoKWAgZnVuY3Rpb24gdG8gc2VlIHBvc3NpYmxlIHZhbHVlcy5cbkBtaXhpbiBncmlkLWNvbHVtbi1yb3coXG4gICRndXR0ZXJzOiAkZ3JpZC1jb2x1bW4tZ3V0dGVyXG4pIHtcbiAgQGluY2x1ZGUgZ3JpZC1yb3c7XG4gIEBpbmNsdWRlIGdyaWQtY29sdW1uKCRndXR0ZXJzOiAkZ3V0dGVycyk7XG5cbiAgJixcbiAgJjpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogbm9uZTtcbiAgfVxufVxuXG4vLy8gU2hvcnRoYW5kIGZvciBgZ3JpZC1jb2x1bW4oKWAuXG4vLy8gQGFsaWFzIGdyaWQtY29sdW1uXG5AZnVuY3Rpb24gZ3JpZC1jb2woXG4gICRjb2x1bW5zOiAkZ3JpZC1jb2x1bW4tY291bnRcbikge1xuICBAcmV0dXJuIGdyaWQtY29sdW1uKCRjb2x1bW5zKTtcbn1cblxuLy8vIFNob3J0aGFuZCBmb3IgYGdyaWQtY29sdW1uKClgLlxuLy8vIEBhbGlhcyBncmlkLWNvbHVtblxuQG1peGluIGdyaWQtY29sKFxuICAkY29sdW1uczogJGdyaWQtY29sdW1uLWNvdW50LFxuICAkZ3V0dGVyczogJGdyaWQtY29sdW1uLWd1dHRlclxuKSB7XG4gIEBpbmNsdWRlIGdyaWQtY29sdW1uKCRjb2x1bW5zLCAkZ3V0dGVycyk7XG59XG5cbi8vLyBTaG9ydGhhbmQgZm9yIGBncmlkLWNvbHVtbi1yb3coKWAuXG4vLy8gQGFsaWFzIGdyaWQtY29sdW1uLXJvd1xuQG1peGluIGdyaWQtY29sLXJvdyhcbiAgJGd1dHRlcnM6ICRncmlkLWNvbHVtbi1ndXR0ZXJcbikge1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbi1yb3coJGd1dHRlcnMpO1xufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZ3JpZFxuLy8vL1xuXG4vLy8gUmVwb3NpdGlvbiBhIGNvbHVtbi5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfEtleXdvcmR9ICRwb3NpdGlvbiAtIEl0IGNhbiBiZTpcbi8vLyAgICogQSBudW1iZXI6IFRoZSBjb2x1bW4gd2lsbCBtb3ZlIGVxdWFsIHRvIHRoZSB3aWR0aCBvZiB0aGUgY29sdW1uIGNvdW50XG4vLy8gICAgIHNwZWNpZmllZC4gQSBwb3NpdGl2ZSBudW1iZXIgd2lsbCBwdXNoIHRoZSBjb2x1bW4gdG8gdGhlIHJpZ2h0LCB3aGlsZVxuLy8vICAgICBhIG5lZ2F0aXZlIG51bWJlciB3aWxsIHB1bGwgaXQgdG8gdGhlIGxlZnQuXG4vLy8gICAqIGBjZW50ZXJgOiBDb2x1bW4gd2lsbCBiZSBjZW50ZXJlZFxuLy8vICAgKiBgYXV0b2A6IENvbHVtbiB3aWxsIGJlIHB1c2hlZCB0byB0aGUgbGVmdCAob3IgdG8gdGhlIHJpZ2h0IGZvciB0aGUgbGFzdCBjb2x1bW4pLlxuQG1peGluIGdyaWQtY29sdW1uLXBvc2l0aW9uKCRwb3NpdGlvbikge1xuICAvLyBBdXRvIHBvc2l0aW9uaW5nXG4gIEBpZiAkcG9zaXRpb24gPT0gYXV0byB7XG4gICAgJiwgJjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgIGZsb2F0OiAkZ2xvYmFsLWxlZnQ7XG4gICAgICBjbGVhcjogbm9uZTtcbiAgICB9XG5cbiAgICAvLyBMYXN0IGNvbHVtbiBhbGlnbm1lbnRcbiAgICBAaWYgJGdyaWQtY29sdW1uLWFsaWduLWVkZ2Uge1xuICAgICAgJjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgZmxvYXQ6ICRnbG9iYWwtcmlnaHQ7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gUHVzaC9wdWxsXG4gIEBlbHNlIGlmIHR5cGUtb2YoJHBvc2l0aW9uKSA9PSAnbnVtYmVyJyB7XG4gICAgJG9mZnNldDogcGVyY2VudGFnZSgkcG9zaXRpb24gLyAkZ3JpZC1jb2x1bW4tY291bnQpO1xuXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICN7JGdsb2JhbC1sZWZ0fTogJG9mZnNldDtcbiAgfVxuXG4gIC8vIENlbnRlciBwb3NpdGlvbmluZ1xuICBAZWxzZSBpZiAkcG9zaXRpb24gPT0gY2VudGVyIHtcbiAgICAmLCAmOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICBjbGVhcjogYm90aDtcbiAgICB9XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICB9XG5cbiAgQGVsc2Uge1xuICAgIEB3YXJuICdXcm9uZyBzeW50YXggZm9yIGdyaWQtY29sdW1uLXBvc2l0aW9uKCkuIEVudGVyIGEgcG9zaXRpdmUgb3IgbmVnYXRpdmUgbnVtYmVyLCBcImNlbnRlclwiIG9yIFwiYXV0b1wiLic7XG4gIH1cbn1cblxuLy8vIFJlc2V0IGEgcG9zaXRpb24gZGVmaW5pdGlvbi5cbkBtaXhpbiBncmlkLWNvbHVtbi11bnBvc2l0aW9uIHtcbiAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tcG9zaXRpb24oYXV0byk7XG4gIHBvc2l0aW9uOiBzdGF0aWM7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgbWFyZ2luLWxlZnQ6IDA7XG59XG5cbi8vLyBPZmZzZXRzIGEgY29sdW1uIHRvIHRoZSByaWdodCBieSBgJG5gIGNvbHVtbnMuXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TGlzdH0gJG4gLSBXaWR0aCB0byBvZmZzZXQgYnkuIFlvdSBjYW4gcGFzcyBpbiBhbnkgdmFsdWUgYWNjZXB0ZWQgYnkgdGhlIGBncmlkLWNvbHVtbigpYCBtaXhpbiwgc3VjaCBhcyBgNmAsIGA1MCVgLCBvciBgMSBvZiAyYC5cbkBtaXhpbiBncmlkLWNvbHVtbi1vZmZzZXQoJG4pIHtcbiAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogZ3JpZC1jb2x1bW4oJG4pO1xufVxuXG4vLy8gRGlzYWJsZSB0aGUgZGVmYXVsdCBiZWhhdmlvciBvZiB0aGUgbGFzdCBjb2x1bW4gaW4gYSByb3cgYWxpZ25pbmcgdG8gdGhlIG9wcG9zaXRlIGVkZ2UuXG5AbWl4aW4gZ3JpZC1jb2x1bW4tZW5kIHtcbiAgLy8gVGhpcyBleHRyYSBzcGVjaWZpY2l0eSBpcyByZXF1aXJlZCBmb3IgdGhlIHByb3BlcnR5IHRvIGJlIGFwcGxpZWRcbiAgJjpsYXN0LWNoaWxkOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiAkZ2xvYmFsLWxlZnQ7XG4gIH1cbn1cblxuLy8vIFNob3J0aGFuZCBmb3IgYGdyaWQtY29sdW1uLXBvc2l0aW9uKClgLlxuLy8vIEBhbGlhcyBncmlkLWNvbHVtbi1wb3NpdGlvblxuQG1peGluIGdyaWQtY29sLXBvcygkcG9zaXRpb24pIHtcbiAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tcG9zaXRpb24oJHBvc2l0aW9uKTtcbn1cblxuLy8vIFNob3J0aGFuZCBmb3IgYGdyaWQtY29sdW1uLXVucG9zaXRpb24oKWAuXG4vLy8gQGFsaWFzIGdyaWQtY29sdW1uLXVucG9zaXRpb25cbkBtaXhpbiBncmlkLWNvbC11bnBvcyB7XG4gIEBpbmNsdWRlIGdyaWQtY29sdW1uLXVucG9zaXRpb247XG59XG5cbi8vLyBTaG9ydGhhbmQgZm9yIGBncmlkLWNvbHVtbi1vZmZzZXQoKWAuXG4vLy8gQGFsaWFzIGdyaWQtY29sdW1uLW9mZnNldFxuQG1peGluIGdyaWQtY29sLW9mZigkbikge1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbi1vZmZzZXQoJG4pO1xufVxuXG4vLy8gU2hvcnRoYW5kIGZvciBgZ3JpZC1jb2x1bW4tZW5kKClgLlxuLy8vIEBhbGlhcyBncmlkLWNvbHVtbi1lbmRcbkBtaXhpbiBncmlkLWNvbC1lbmQge1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbi1lbmQ7XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCB0eXBvZ3JhcGh5LWJhc2Vcbi8vLy9cblxuLy8gQmFzZSBUeXBvZ3JhcGh5XG4vLyAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLVxuLy8gVGhlc2UgYXJlIHN0eWxlcyBhcHBsaWVkIHRvIGJhc2ljIEhUTUwgdGFncywgaW5jbHVkaW5nOlxuLy8gICAtIFBhcmFncmFwaHMgPHA+XG4vLyAgIC0gQm9sZC9pdGFsaWNzIDxiPiA8c3Ryb25nPiA8aT4gPGVtPlxuLy8gICAtIFNtYWxsIHRleHQgPHNtYWxsPlxuLy8gICAtIEhlYWRpbmdzIDxoMT4tPGg2PlxuLy8gICAtIEFuY2hvcnMgPGE+XG4vLyAgIC0gRGl2aWRlcnMgPGhyPlxuLy8gICAtIExpc3RzIDx1bD4gPG9sPiA8ZGw+XG4vLyAgIC0gQmxvY2txdW90ZXMgPGJsb2NrcXVvdGU+XG4vLyAgIC0gQ29kZSBibG9ja3MgPGNvZGU+XG4vLyAgIC0gQWJicmV2aWF0aW9ucyA8YWJicj5cbi8vICAgLSBDaXRhdGlvbnMgPGNpdGU+XG4vLyAgIC0gS2V5c3Ryb2tlcyA8a2JkPlxuXG4vLy8gRm9udCBmYW1pbHkgZm9yIGhlYWRlciBlbGVtZW50cy5cbi8vLyBAdHlwZSBTdHJpbmcgfCBMaXN0XG4kaGVhZGVyLWZvbnQtZmFtaWx5OiAkYm9keS1mb250LWZhbWlseSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgd2VpZ2h0IG9mIGhlYWRlcnMuXG4vLy8gQHR5cGUgU3RyaW5nXG4kaGVhZGVyLWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWwgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHN0eWxlIChlLmcuIGl0YWxpY2l6ZWQpIG9mIGhlYWRlcnMuXG4vLy8gQHR5cGUgU3RyaW5nXG4kaGVhZGVyLWZvbnQtc3R5bGU6IG5vcm1hbCAhZGVmYXVsdDtcblxuLy8vIEZvbnQgc3RhY2sgdXNlZCBmb3IgZWxlbWVudHMgdGhhdCB1c2UgbW9ub3NwYWNlZCB0eXBlLCBzdWNoIGFzIGNvZGUgc2FtcGxlc1xuLy8vIEB0eXBlIFN0cmluZyB8IExpc3RcbiRmb250LWZhbWlseS1tb25vc3BhY2U6IENvbnNvbGFzLCAnTGliZXJhdGlvbiBNb25vJywgQ291cmllciwgbW9ub3NwYWNlICFkZWZhdWx0O1xuXG4vLy8gQ29sb3Igb2YgaGVhZGVycy5cbi8vLyBAdHlwZSBDb2xvclxuJGhlYWRlci1jb2xvcjogaW5oZXJpdCAhZGVmYXVsdDtcblxuLy8vIExpbmUgaGVpZ2h0IG9mIGhlYWRlcnMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kaGVhZGVyLWxpbmVoZWlnaHQ6IDEuNCAhZGVmYXVsdDtcblxuLy8vIEJvdHRvbSBtYXJnaW4gb2YgaGVhZGVycy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRoZWFkZXItbWFyZ2luLWJvdHRvbTogMC41cmVtICFkZWZhdWx0O1xuXG4vLy8gU3R5bGVzIGZvciBoZWFkaW5ncyBhdCB2YXJpb3VzIHNjcmVlbiBzaXplcy4gRWFjaCBrZXkgaXMgYSBicmVha3BvaW50LCBhbmQgZWFjaCB2YWx1ZSBpcyBhIG1hcCBvZiBoZWFkaW5nIHN0eWxlcy5cbi8vLyBAdHlwZSBNYXBcbiRoZWFkZXItc3R5bGVzOiAoXG4gIHNtYWxsOiAoXG4gICAgJ2gxJzogKCdmb250LXNpemUnOiAyNCksXG4gICAgJ2gyJzogKCdmb250LXNpemUnOiAyMCksXG4gICAgJ2gzJzogKCdmb250LXNpemUnOiAxOSksXG4gICAgJ2g0JzogKCdmb250LXNpemUnOiAxOCksXG4gICAgJ2g1JzogKCdmb250LXNpemUnOiAxNyksXG4gICAgJ2g2JzogKCdmb250LXNpemUnOiAxNiksXG4gICksXG4gIG1lZGl1bTogKFxuICAgICdoMSc6ICgnZm9udC1zaXplJzogNDgpLFxuICAgICdoMic6ICgnZm9udC1zaXplJzogNDApLFxuICAgICdoMyc6ICgnZm9udC1zaXplJzogMzEpLFxuICAgICdoNCc6ICgnZm9udC1zaXplJzogMjUpLFxuICAgICdoNSc6ICgnZm9udC1zaXplJzogMjApLFxuICAgICdoNic6ICgnZm9udC1zaXplJzogMTYpLFxuICApLFxuKSAhZGVmYXVsdDtcblxuLy8gJGhlYWRlci1zdHlsZXMgbWFwIGlzIGJ1aWx0IGZyb20gJGhlYWRlci1zaXplcyBpbiBvcmRlciB0byBlbnN1cmUgZG93bndhcmQgY29tcGF0aWJpbGl0eVxuLy8gd2hlbiAkaGVhZGVyLXNpemVzIGlzIGRlcHJlY2lhdGVkLCAkaGVhZGVyLXN0eWxlcyBuZWVkcyB0byBnZXQgIWRlZmF1bHQgdmFsdWVzIGxpa2Ugc2V0dGluZ3Muc2Nzc1xuQGZ1bmN0aW9uIGJ1aWxkX2Zyb21faGVhZGVyLXNpemVzKCRoZWFkZXItc2l6ZXMpIHtcbiAgQHdhcm4gJ05vdGUsIHRoYXQgJGhlYWRlci1zaXplcyBoYXMgYmVlbiByZXBsYWNlZCB3aXRoICRoZWFkZXItc3R5bGVzLiAkaGVhZGVyLXNpemVzIHN0aWxsIHdvcmtzLCBidXQgaXQgaXMgZ29pbmcgdG8gYmUgZGVwcmVjaWF0ZWQuJztcbiAgJGhlYWRlci1zdHlsZXM6ICgpO1xuICBAZWFjaCAkc2l6ZSwgJGhlYWRlcnMgaW4gJGhlYWRlci1zaXplcyB7XG4gICAgJGhlYWRlci1tYXA6ICgpO1xuICAgIEBlYWNoICRoZWFkZXIsICRmb250LXNpemUgaW4gJGhlYWRlcnMge1xuICAgICAgJGhlYWRlci1tYXA6IG1hcC1tZXJnZSgkaGVhZGVyLW1hcCwgKCRoZWFkZXI6ICgnZm9udC1zaXplJzogJGZvbnQtc2l6ZSkpKTtcbiAgICB9XG4gICAgJGhlYWRlci1zdHlsZXM6IG1hcC1tZXJnZSgkaGVhZGVyLXN0eWxlcywgKCRzaXplOiAkaGVhZGVyLW1hcCkpO1xuICB9XG4gIEByZXR1cm4gJGhlYWRlci1zdHlsZXM7XG59XG5cbi8vIElmIGl0IGV4aXN0cyAkaGVhZGVycy1zaXplcyBpcyB1c2VkIHRvIGJ1aWxkICRoZWFkZXItc3R5bGVzLiBTZWUgdGhlIGRvY3VtZW50YXRpb24uXG5AaWYgdmFyaWFibGUtZXhpc3RzKGhlYWRlci1zaXplcykge1xuICAkaGVhZGVyLXN0eWxlczogYnVpbGRfZnJvbV9oZWFkZXItc2l6ZXMoJGhlYWRlci1zaXplcyk7XG59XG5cbi8vLyBUZXh0IHJlbmRlcmluZyBtZXRob2Qgb2YgaGVhZGVycy5cbi8vLyBAdHlwZSBTdHJpbmdcbiRoZWFkZXItdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgc2l6ZSBvZiBgPHNtYWxsPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kc21hbGwtZm9udC1zaXplOiA4MCUgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciBvZiBgPHNtYWxsPmAgZWxlbWVudHMgd2hlbiBwbGFjZWQgaW5zaWRlIGhlYWRlcnMuXG4vLy8gQHR5cGUgQ29sb3JcbiRoZWFkZXItc21hbGwtZm9udC1jb2xvcjogJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gTGluZSBoZWlnaHQgb2YgdGV4dCBpbnNpZGUgYDxwPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kcGFyYWdyYXBoLWxpbmVoZWlnaHQ6IDEuNiAhZGVmYXVsdDtcblxuLy8vIEJvdHRvbSBtYXJnaW4gb2YgcGFyYWdyYXBocy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbTogMXJlbSAhZGVmYXVsdDtcblxuLy8vIFRleHQgcmVuZGVyaW5nIG1ldGhvZCBmb3IgcGFyYWdyYXBoIHRleHQuXG4vLy8gQHR5cGUgU3RyaW5nXG4kcGFyYWdyYXBoLXRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZUxlZ2liaWxpdHkgIWRlZmF1bHQ7XG5cbi8vLyBUZXh0IGNvbG9yIG9mIGNvZGUgc2FtcGxlcy5cbi8vLyBAdHlwZSBDb2xvclxuJGNvZGUtY29sb3I6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIEZvbnQgZmFtaWx5IG9mIGNvZGUgc2FtcGxlcy5cbi8vLyBAdHlwZSBTdHJpbmcgfCBMaXN0XG4kY29kZS1mb250LWZhbWlseTogJGZvbnQtZmFtaWx5LW1vbm9zcGFjZSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgd2VpZ2h0IG9mIHRleHQgaW4gY29kZSBzYW1wbGVzLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGNvZGUtZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbCAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgY29kZSBzYW1wbGVzLlxuLy8vIEB0eXBlIENvbG9yXG4kY29kZS1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheSAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciBhcm91bmQgY29kZSBzYW1wbGVzLlxuLy8vIEB0eXBlIExpc3RcbiRjb2RlLWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIFBhZGRpbmcgYXJvdW5kIHRleHQgb2YgY29kZSBzYW1wbGVzLlxuLy8vIEB0eXBlIE51bWJlciB8IExpc3RcbiRjb2RlLXBhZGRpbmc6IHJlbS1jYWxjKDIgNSAxKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgY29sb3IgZm9yIGxpbmtzLlxuLy8vIEB0eXBlIENvbG9yXG4kYW5jaG9yLWNvbG9yOiAkcHJpbWFyeS1jb2xvciAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgY29sb3IgZm9yIGxpbmtzIG9uIGhvdmVyLlxuLy8vIEB0eXBlIENvbG9yXG4kYW5jaG9yLWNvbG9yLWhvdmVyOiBzY2FsZS1jb2xvcigkYW5jaG9yLWNvbG9yLCAkbGlnaHRuZXNzOiAtMTQlKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgdGV4dCBkZWNvcmF0aW9uIGZvciBsaW5rcy5cbi8vLyBAdHlwZSBTdHJpbmdcbiRhbmNob3ItdGV4dC1kZWNvcmF0aW9uOiBub25lICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCB0ZXh0IGRlY29yYXRpb24gZm9yIGxpbmtzIG9uIGhvdmVyLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGFuY2hvci10ZXh0LWRlY29yYXRpb24taG92ZXI6IG5vbmUgIWRlZmF1bHQ7XG5cbi8vLyBNYXhpbXVtIHdpZHRoIG9mIGEgZGl2aWRlci5cbi8vLyBAdHlwZSBOdW1iZXJcbiRoci13aWR0aDogJGdsb2JhbC13aWR0aCAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYm9yZGVyIGZvciBhIGRpdmlkZXIuXG4vLy8gQHR5cGUgTGlzdFxuJGhyLWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgbWFyZ2luIGZvciBhIGRpdmlkZXIuXG4vLy8gQHR5cGUgTnVtYmVyIHwgTGlzdFxuJGhyLW1hcmdpbjogcmVtLWNhbGMoMjApIGF1dG8gIWRlZmF1bHQ7XG5cbi8vLyBMaW5lIGhlaWdodCBmb3IgaXRlbXMgaW4gYSBsaXN0LlxuLy8vIEB0eXBlIE51bWJlclxuJGxpc3QtbGluZWhlaWdodDogJHBhcmFncmFwaC1saW5laGVpZ2h0ICFkZWZhdWx0O1xuXG4vLy8gQm90dG9tIG1hcmdpbiBmb3IgaXRlbXMgaW4gYSBsaXN0LlxuLy8vIEB0eXBlIE51bWJlclxuJGxpc3QtbWFyZ2luLWJvdHRvbTogJHBhcmFncmFwaC1tYXJnaW4tYm90dG9tICFkZWZhdWx0O1xuXG4vLy8gQnVsbGV0IHR5cGUgdG8gdXNlIGZvciB1bm9yZGVyZWQgbGlzdHMgKGUuZy4sIGBzcXVhcmVgLCBgY2lyY2xlYCwgYGRpc2NgKS5cbi8vLyBAdHlwZSBTdHJpbmdcbiRsaXN0LXN0eWxlLXR5cGU6IGRpc2MgIWRlZmF1bHQ7XG5cbi8vLyBQb3NpdGlvbmluZyBmb3IgYnVsbGV0cyBvbiB1bm9yZGVyZWQgbGlzdCBpdGVtcy5cbi8vLyBAdHlwZSBTdHJpbmdcbiRsaXN0LXN0eWxlLXBvc2l0aW9uOiBvdXRzaWRlICFkZWZhdWx0O1xuXG4vLy8gTGVmdCAob3IgcmlnaHQpIG1hcmdpbiBmb3IgbGlzdHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbGlzdC1zaWRlLW1hcmdpbjogMS4yNXJlbSAhZGVmYXVsdDtcblxuLy8vIExlZnQgKG9yIHJpZ2h0KSBtYXJnaW4gZm9yIGEgbGlzdCBpbnNpZGUgYSBsaXN0LlxuLy8vIEB0eXBlIE51bWJlclxuJGxpc3QtbmVzdGVkLXNpZGUtbWFyZ2luOiAxLjI1cmVtICFkZWZhdWx0O1xuXG4vLy8gQm90dG9tIG1hcmdpbiBmb3IgYDxkbD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGRlZm5saXN0LW1hcmdpbi1ib3R0b206IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBGb250IHdlaWdodCBmb3IgYDxkdD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGRlZm5saXN0LXRlcm0td2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkICFkZWZhdWx0O1xuXG4vLy8gU3BhY2luZyBiZXR3ZWVuIGA8ZHQ+YCBhbmQgYDxkZD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGRlZm5saXN0LXRlcm0tbWFyZ2luLWJvdHRvbTogMC4zcmVtICFkZWZhdWx0O1xuXG4vLy8gVGV4dCBjb2xvciBvZiBgPGJsb2NrcXVvdGU+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBDb2xvclxuJGJsb2NrcXVvdGUtY29sb3I6ICRkYXJrLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBQYWRkaW5nIGluc2lkZSBhIGA8YmxvY2txdW90ZT5gIGVsZW1lbnQuXG4vLy8gQHR5cGUgTnVtYmVyIHwgTGlzdFxuJGJsb2NrcXVvdGUtcGFkZGluZzogcmVtLWNhbGMoOSAyMCAwIDE5KSAhZGVmYXVsdDtcblxuLy8vIFNpZGUgYm9yZGVyIGZvciBgPGJsb2NrcXVvdGU+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBMaXN0XG4kYmxvY2txdW90ZS1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHNpemUgZm9yIGA8Y2l0ZT5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGNpdGUtZm9udC1zaXplOiByZW0tY2FsYygxMykgIWRlZmF1bHQ7XG5cbi8vLyBUZXh0IGNvbG9yIGZvciBgPGNpdGU+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBDb2xvclxuJGNpdGUtY29sb3I6ICRkYXJrLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBQc2V1ZG8gY29udGVudCBmb3IgYDxjaXRlPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgU3RyaW5nXG4kY2l0ZS1wc2V1ZG8tY29udGVudDogJ1xcMjAxNCBcXDAwMjAnICFkZWZhdWx0O1xuXG4vLy8gRm9udCBmYW1pbHkgZm9yIGA8a2JkPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgU3RyaW5nIHwgTGlzdFxuJGtleXN0cm9rZS1mb250OiAkZm9udC1mYW1pbHktbW9ub3NwYWNlICFkZWZhdWx0O1xuXG4vLy8gVGV4dCBjb2xvciBmb3IgYDxrYmQ+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBDb2xvclxuJGtleXN0cm9rZS1jb2xvcjogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBmb3IgYDxrYmQ+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBDb2xvclxuJGtleXN0cm9rZS1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheSAhZGVmYXVsdDtcblxuLy8vIFBhZGRpbmcgZm9yIGA8a2JkPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgTnVtYmVyIHwgTGlzdFxuJGtleXN0cm9rZS1wYWRkaW5nOiByZW0tY2FsYygyIDQgMCkgIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgcmFkaXVzIGZvciBgPGtiZD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIE51bWJlciB8IExpc3RcbiRrZXlzdHJva2UtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuLy8vIEJvdHRvbSBib3JkZXIgc3R5bGUgZm9yIGA8YWJicj5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIExpc3RcbiRhYmJyLXVuZGVybGluZTogMXB4IGRvdHRlZCAkYmxhY2sgIWRlZmF1bHQ7XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXR5cG9ncmFwaHktYmFzZSB7XG4gIC8vIFR5cG9ncmFwaHkgcmVzZXRzXG4gIGRpdixcbiAgZGwsXG4gIGR0LFxuICBkZCxcbiAgdWwsXG4gIG9sLFxuICBsaSxcbiAgaDEsXG4gIGgyLFxuICBoMyxcbiAgaDQsXG4gIGg1LFxuICBoNixcbiAgcHJlLFxuICBmb3JtLFxuICBwLFxuICBibG9ja3F1b3RlLFxuICB0aCxcbiAgdGQge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG5cbiAgLy8gUGFyYWdyYXBoc1xuICBwIHtcbiAgICBtYXJnaW4tYm90dG9tOiAkcGFyYWdyYXBoLW1hcmdpbi1ib3R0b207XG5cbiAgICBmb250LXNpemU6IGluaGVyaXQ7XG4gICAgbGluZS1oZWlnaHQ6ICRwYXJhZ3JhcGgtbGluZWhlaWdodDtcbiAgICB0ZXh0LXJlbmRlcmluZzogJHBhcmFncmFwaC10ZXh0LXJlbmRlcmluZztcbiAgfVxuXG4gIC8vIEVtcGhhc2l6ZWQgdGV4dFxuICBlbSxcbiAgaSB7XG4gICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICB9XG5cbiAgLy8gU3Ryb25nIHRleHRcbiAgc3Ryb25nLFxuICBiIHtcbiAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZDtcbiAgICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgfVxuXG4gIC8vIFNtYWxsIHRleHRcbiAgc21hbGwge1xuICAgIGZvbnQtc2l6ZTogJHNtYWxsLWZvbnQtc2l6ZTtcbiAgICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgfVxuXG4gIC8vIEhlYWRpbmdzXG4gIGgxLCAuaDEsXG4gIGgyLCAuaDIsXG4gIGgzLCAuaDMsXG4gIGg0LCAuaDQsXG4gIGg1LCAuaDUsXG4gIGg2LCAuaDYge1xuICAgIGZvbnQtZmFtaWx5OiAkaGVhZGVyLWZvbnQtZmFtaWx5O1xuICAgIGZvbnQtc3R5bGU6ICRoZWFkZXItZm9udC1zdHlsZTtcbiAgICBmb250LXdlaWdodDogJGhlYWRlci1mb250LXdlaWdodDtcbiAgICBjb2xvcjogJGhlYWRlci1jb2xvcjtcbiAgICB0ZXh0LXJlbmRlcmluZzogJGhlYWRlci10ZXh0LXJlbmRlcmluZztcblxuICAgIHNtYWxsIHtcbiAgICAgIGxpbmUtaGVpZ2h0OiAwO1xuICAgICAgY29sb3I6ICRoZWFkZXItc21hbGwtZm9udC1jb2xvcjtcbiAgICB9XG4gIH1cblxuICAvLyBIZWFkaW5nIHN0eWxlc1xuICBAZWFjaCAkc2l6ZSwgJGhlYWRlcnMgaW4gJGhlYWRlci1zdHlsZXMge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNpemUpIHtcbiAgICAgIEBlYWNoICRoZWFkZXIsICRoZWFkZXItZGVmcyBpbiAkaGVhZGVycyB7XG4gICAgICAgICRmb250LXNpemUtdGVtcDogMXJlbTtcbiAgICAgICAgI3skaGVhZGVyfSwgLiN7JGhlYWRlcn0ge1xuXG4gICAgICAgICAgQGlmIG1hcC1oYXMta2V5KCRoZWFkZXItZGVmcywgZm9udC1zaXplKSB7XG4gICAgICAgICAgICAkZm9udC1zaXplLXRlbXA6IHJlbS1jYWxjKG1hcC1nZXQoJGhlYWRlci1kZWZzLCBmb250LXNpemUpKTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS10ZW1wO1xuICAgICAgICAgIH0gQGVsc2UgaWYgbWFwLWhhcy1rZXkoJGhlYWRlci1kZWZzLCBmcykge1xuICAgICAgICAgICAgJGZvbnQtc2l6ZS10ZW1wOiByZW0tY2FsYyhtYXAtZ2V0KCRoZWFkZXItZGVmcywgZnMpKTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS10ZW1wO1xuICAgICAgICAgIH0gQGVsc2UgaWYgJHNpemUgPT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplLXRlbXA7XG4gICAgICAgICAgfVxuICAgICAgICAgIEBpZiBtYXAtaGFzLWtleSgkaGVhZGVyLWRlZnMsIGxpbmUtaGVpZ2h0KSB7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogdW5pdGxlc3MtY2FsYyhtYXAtZ2V0KCRoZWFkZXItZGVmcywgbGluZS1oZWlnaHQpLCAkZm9udC1zaXplLXRlbXApO1xuICAgICAgICAgIH0gQGVsc2UgaWYgbWFwLWhhcy1rZXkoJGhlYWRlci1kZWZzLCBsaCkge1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHVuaXRsZXNzLWNhbGMobWFwLWdldCgkaGVhZGVyLWRlZnMsIGxoKSwgJGZvbnQtc2l6ZS10ZW1wKTtcbiAgICAgICAgICB9IEBlbHNlIGlmICRzaXplID09ICQtemYtemVyby1icmVha3BvaW50IHtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiB1bml0bGVzcy1jYWxjKCRoZWFkZXItbGluZWhlaWdodCwgJGZvbnQtc2l6ZS10ZW1wKTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBAaWYgbWFwLWhhcy1rZXkoJGhlYWRlci1kZWZzLCBtYXJnaW4tdG9wKSB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiByZW0tY2FsYyhtYXAtZ2V0KCRoZWFkZXItZGVmcywgbWFyZ2luLXRvcCkpO1xuICAgICAgICAgIH0gQGVsc2UgaWYgbWFwLWhhcy1rZXkoJGhlYWRlci1kZWZzLCBtdCkge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogcmVtLWNhbGMobWFwLWdldCgkaGVhZGVyLWRlZnMsIG10KSk7XG4gICAgICAgICAgfSBAZWxzZSBpZiAkc2l6ZSA9PSAkLXpmLXplcm8tYnJlYWtwb2ludCB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgICBAaWYgbWFwLWhhcy1rZXkoJGhlYWRlci1kZWZzLCBtYXJnaW4tYm90dG9tKSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYyhtYXAtZ2V0KCRoZWFkZXItZGVmcywgbWFyZ2luLWJvdHRvbSkpO1xuICAgICAgICAgIH0gQGVsc2UgaWYgbWFwLWhhcy1rZXkoJGhlYWRlci1kZWZzLCBtYikge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMobWFwLWdldCgkaGVhZGVyLWRlZnMsIG1iKSk7XG4gICAgICAgICAgfSBAZWxzZSBpZiAkc2l6ZSA9PSAkLXpmLXplcm8tYnJlYWtwb2ludCB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygkaGVhZGVyLW1hcmdpbi1ib3R0b20pO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIExpbmtzXG4gIGEge1xuICAgIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICAgIGNvbG9yOiAkYW5jaG9yLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogJGFuY2hvci10ZXh0LWRlY29yYXRpb247XG5cbiAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgY29sb3I6ICRhbmNob3ItY29sb3ItaG92ZXI7XG4gICAgICBAaWYgJGFuY2hvci10ZXh0LWRlY29yYXRpb24taG92ZXIgIT0gJGFuY2hvci10ZXh0LWRlY29yYXRpb24ge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246ICRhbmNob3ItdGV4dC1kZWNvcmF0aW9uLWhvdmVyO1xuICAgICAgfVxuICAgIH1cblxuICAgIGltZyB7XG4gICAgICBib3JkZXI6IDA7XG4gICAgfVxuICB9XG5cbiAgLy8gSG9yaXpvbnRhbCBydWxlXG4gIGhyIHtcbiAgICBjbGVhcjogYm90aDtcblxuICAgIG1heC13aWR0aDogJGhyLXdpZHRoO1xuICAgIGhlaWdodDogMDtcbiAgICBtYXJnaW46ICRoci1tYXJnaW47XG5cbiAgICBib3JkZXItdG9wOiAwO1xuICAgIGJvcmRlci1yaWdodDogMDtcbiAgICBib3JkZXItYm90dG9tOiAkaHItYm9yZGVyO1xuICAgIGJvcmRlci1sZWZ0OiAwO1xuICB9XG5cbiAgLy8gTGlzdHNcbiAgdWwsXG4gIG9sLFxuICBkbCB7XG4gICAgbWFyZ2luLWJvdHRvbTogJGxpc3QtbWFyZ2luLWJvdHRvbTtcbiAgICBsaXN0LXN0eWxlLXBvc2l0aW9uOiAkbGlzdC1zdHlsZS1wb3NpdGlvbjtcbiAgICBsaW5lLWhlaWdodDogJGxpc3QtbGluZWhlaWdodDtcbiAgfVxuXG4gIC8vIExpc3QgaXRlbXNcbiAgbGkge1xuICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgfVxuXG4gIC8vIFVub3JkZXJlZCBsaXN0c1xuICB1bCB7XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogJGxpc3Qtc2lkZS1tYXJnaW47XG4gICAgbGlzdC1zdHlsZS10eXBlOiAkbGlzdC1zdHlsZS10eXBlO1xuICB9XG5cbiAgLy8gT3JkZXJlZCBsaXN0c1xuICBvbCB7XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogJGxpc3Qtc2lkZS1tYXJnaW47XG4gIH1cblxuICAvLyBOZXN0ZWQgdW5vcmRlcmVkL29yZGVyZWQgbGlzdHNcbiAgdWwsIG9sIHtcbiAgICAmICYge1xuICAgICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogJGxpc3QtbmVzdGVkLXNpZGUtbWFyZ2luO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gIH1cblxuICAvLyBEZWZpbml0aW9uIGxpc3RzXG4gIGRsIHtcbiAgICBtYXJnaW4tYm90dG9tOiAkZGVmbmxpc3QtbWFyZ2luLWJvdHRvbTtcblxuICAgIGR0IHtcbiAgICAgIG1hcmdpbi1ib3R0b206ICRkZWZubGlzdC10ZXJtLW1hcmdpbi1ib3R0b207XG4gICAgICBmb250LXdlaWdodDogJGRlZm5saXN0LXRlcm0td2VpZ2h0O1xuICAgIH1cbiAgfVxuXG4gIC8vIEJsb2NrcXVvdGVzXG4gIGJsb2NrcXVvdGUge1xuICAgIG1hcmdpbjogMCAwICRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbTtcbiAgICBwYWRkaW5nOiAkYmxvY2txdW90ZS1wYWRkaW5nO1xuICAgIGJvcmRlci0jeyRnbG9iYWwtbGVmdH06ICRibG9ja3F1b3RlLWJvcmRlcjtcblxuICAgICYsIHAge1xuICAgICAgbGluZS1oZWlnaHQ6ICRwYXJhZ3JhcGgtbGluZWhlaWdodDtcbiAgICAgIGNvbG9yOiAkYmxvY2txdW90ZS1jb2xvcjtcbiAgICB9XG4gIH1cblxuICAvLyBDaXRhdGlvbnNcbiAgY2l0ZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZm9udC1zaXplOiAkY2l0ZS1mb250LXNpemU7XG4gICAgY29sb3I6ICRjaXRlLWNvbG9yO1xuXG4gICAgJjpiZWZvcmUge1xuICAgICAgY29udGVudDogJGNpdGUtcHNldWRvLWNvbnRlbnQ7XG4gICAgfVxuICB9XG5cbiAgLy8gQWJicmV2aWF0aW9uc1xuICBhYmJyLCBhYmJyW3RpdGxlXSB7XG4gICAgYm9yZGVyLWJvdHRvbTogJGFiYnItdW5kZXJsaW5lO1xuICAgIGN1cnNvcjogaGVscDtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cblxuICAvLyBGaWd1cmVzXG4gIGZpZ3VyZSB7XG4gICAgbWFyZ2luOiAwO1xuICB9XG5cbiAgLy8gQ29kZVxuICBjb2RlIHtcbiAgICBwYWRkaW5nOiAkY29kZS1wYWRkaW5nO1xuXG4gICAgYm9yZGVyOiAkY29kZS1ib3JkZXI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvZGUtYmFja2dyb3VuZDtcblxuICAgIGZvbnQtZmFtaWx5OiAkY29kZS1mb250LWZhbWlseTtcbiAgICBmb250LXdlaWdodDogJGNvZGUtZm9udC13ZWlnaHQ7XG4gICAgY29sb3I6ICRjb2RlLWNvbG9yO1xuICB9XG5cbiAgLy8gS2V5c3Ryb2tlc1xuICBrYmQge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAka2V5c3Ryb2tlLXBhZGRpbmc7XG5cbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAka2V5c3Ryb2tlLWJhY2tncm91bmQ7XG5cbiAgICBmb250LWZhbWlseTogJGtleXN0cm9rZS1mb250O1xuICAgIGNvbG9yOiAka2V5c3Ryb2tlLWNvbG9yO1xuXG4gICAgQGlmIGhhcy12YWx1ZSgka2V5c3Ryb2tlLXJhZGl1cykge1xuICAgICAgYm9yZGVyLXJhZGl1czogJGtleXN0cm9rZS1yYWRpdXM7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCB0eXBvZ3JhcGh5LWhlbHBlcnNcbi8vLy9cblxuLy8vIERlZmF1bHQgZm9udCBzaXplIGZvciBsZWFkIHBhcmFncmFwaHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbGVhZC1mb250LXNpemU6ICRnbG9iYWwtZm9udC1zaXplICogMS4yNSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgbGluZSBoZWlnaHQgZm9yIGxlYWQgcGFyYWdyYXBocy5cbi8vLyBAdHlwZSBTdHJpbmdcbiRsZWFkLWxpbmVoZWlnaHQ6IDEuNiAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgbGluZSBoZWlnaHQgZm9yIHN1YmhlYWRlcnMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kc3ViaGVhZGVyLWxpbmVoZWlnaHQ6IDEuNCAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCBjb2xvciBmb3Igc3ViaGVhZGVycy5cbi8vLyBAdHlwZSBDb2xvclxuJHN1YmhlYWRlci1jb2xvcjogJGRhcmstZ3JheSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCB3ZWlnaHQgZm9yIHN1YmhlYWRlcnMuXG4vLy8gQHR5cGUgU3RyaW5nXG4kc3ViaGVhZGVyLWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWwgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHRvcCBtYXJnaW4gZm9yIHN1YmhlYWRlcnMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kc3ViaGVhZGVyLW1hcmdpbi10b3A6IDAuMnJlbSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYm90dG9tIG1hcmdpbiBmb3Igc3ViaGVhZGVycy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRzdWJoZWFkZXItbWFyZ2luLWJvdHRvbTogMC41cmVtICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IHNpemUgZm9yIHN0YXRpc3RpYyBudW1iZXJzLlxuLy8vIEB0eXBlIE51bWJlclxuJHN0YXQtZm9udC1zaXplOiAyLjVyZW0gIWRlZmF1bHQ7XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXR5cG9ncmFwaHktaGVscGVycyB7XG4gIC8vIFVzZSB0byBjcmVhdGUgYSBzdWJoZWFkaW5nIHVuZGVyIGEgbWFpbiBoZWFkZXJcbiAgLy8gTWFrZSBzdXJlIHlvdSBwYWlyIHRoZSB0d28gZWxlbWVudHMgaW4gYSA8aGVhZGVyPiBlbGVtZW50LCBsaWtlIHRoaXM6XG4gIC8vIDxoZWFkZXI+XG4gIC8vICAgPGgxPkhlYWRpbmc8L2gxPlxuICAvLyAgIDxoMj5TdWJoZWFkaW5nPC9oMj5cbiAgLy8gPC9oZWFkZXI+XG4gIC5zdWJoZWFkZXIge1xuICAgIG1hcmdpbi10b3A6ICRzdWJoZWFkZXItbWFyZ2luLXRvcDtcbiAgICBtYXJnaW4tYm90dG9tOiAkc3ViaGVhZGVyLW1hcmdpbi1ib3R0b207XG5cbiAgICBmb250LXdlaWdodDogJHN1YmhlYWRlci1mb250LXdlaWdodDtcbiAgICBsaW5lLWhlaWdodDogJHN1YmhlYWRlci1saW5laGVpZ2h0O1xuICAgIGNvbG9yOiAkc3ViaGVhZGVyLWNvbG9yO1xuICB9XG5cbiAgLy8gVXNlIHRvIHN0eWxlIGFuIGludHJvZHVjdG9yeSBsZWFkLCBkZWNrLCBibHVyYiwgZXRjLlxuICAubGVhZCB7XG4gICAgZm9udC1zaXplOiAkbGVhZC1mb250LXNpemU7XG4gICAgbGluZS1oZWlnaHQ6ICRsZWFkLWxpbmVoZWlnaHQ7XG4gIH1cblxuICAvLyBVc2UgdG8gc3R5bGUgYSBsYXJnZSBudW1iZXIgdG8gZGlzcGxheSBhIHN0YXRpc3RpY1xuICAuc3RhdCB7XG4gICAgZm9udC1zaXplOiAkc3RhdC1mb250LXNpemU7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG5cbiAgICBwICsgJiB7XG4gICAgICBtYXJnaW4tdG9wOiAtMXJlbTtcbiAgICB9XG4gIH1cblxuICB1bCwgb2wge1xuICAgIC8vIFVzZSB0byByZW1vdmUgbnVtYmVycyBmcm9tIG9yZGVyZWQgbGlzdCAmIGJ1bGxldHMgZnJvbSB1bm9yZGVyZWQgbGlzdFxuICAgICYubm8tYnVsbGV0IHtcbiAgICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06IDA7XG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbkBtaXhpbiBmb3VuZGF0aW9uLXRleHQtYWxpZ25tZW50IHtcbiAgQGVhY2ggJHNpemUgaW4gJGJyZWFrcG9pbnQtY2xhc3NlcyB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc2l6ZSkge1xuICAgICAgQGVhY2ggJGFsaWduIGluIChsZWZ0LCByaWdodCwgY2VudGVyLCBqdXN0aWZ5KSB7XG4gICAgICAgIEBpZiAkc2l6ZSAhPSAkLXpmLXplcm8tYnJlYWtwb2ludCB7XG4gICAgICAgICAgLiN7JHNpemV9LXRleHQtI3skYWxpZ259IHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246ICRhbGlnbjtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgQGVsc2Uge1xuICAgICAgICAgIC50ZXh0LSN7JGFsaWdufSB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiAkYWxpZ247XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vIElmIGB0cnVlYCwgYWxsIGVsZW1lbnRzIHdpbGwgaGF2ZSB0cmFuc3BhcmVudCBiYWNrZ3JvdW5kcyB3aGVuIHByaW50ZWQsIHRvIHNhdmUgb24gaW5rLlxuLy8vIEB0eXBlIEJvb2xlYW5cbi8vLyBAZ3JvdXAgZ2xvYmFsXG4kcHJpbnQtdHJhbnNwYXJlbnQtYmFja2dyb3VuZHM6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBJZiBgdHJ1ZWAsIGRpc3BsYXlzIG5leHQgdG8gYWxsIGxpbmtzIHRoZWlyIFwiaHJlZlwiIHdoZW4gcHJpbnRlZC5cbi8vLyBAdHlwZSBCb29sZWFuXG4vLy8gQGdyb3VwIGdsb2JhbFxuJHByaW50LWhyZWZzOiB0cnVlICFkZWZhdWx0O1xuXG4vLyBzYXNzLWxpbnQ6ZGlzYWJsZS1hbGxcblxuQG1peGluIGZvdW5kYXRpb24tcHJpbnQtc3R5bGVzIHtcbiAgLnNob3ctZm9yLXByaW50IHsgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG5cbiAgQG1lZGlhIHByaW50IHtcbiAgICAqIHtcbiAgICAgIEBpZiAkcHJpbnQtdHJhbnNwYXJlbnQtYmFja2dyb3VuZHMge1xuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgICAgfVxuXG4gICAgICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG5cbiAgICAgIGNvbG9yOiBibGFjayAhaW1wb3J0YW50OyAvLyBCbGFjayBwcmludHMgZmFzdGVyOiBoNWJwLmNvbS9zXG4gICAgICB0ZXh0LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC5zaG93LWZvci1wcmludCB7IGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7IH1cbiAgICAuaGlkZS1mb3ItcHJpbnQgeyBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cblxuICAgIHRhYmxlLnNob3ctZm9yLXByaW50IHsgZGlzcGxheTogdGFibGUgIWltcG9ydGFudDsgfVxuICAgIHRoZWFkLnNob3ctZm9yLXByaW50IHsgZGlzcGxheTogdGFibGUtaGVhZGVyLWdyb3VwICFpbXBvcnRhbnQ7IH1cbiAgICB0Ym9keS5zaG93LWZvci1wcmludCB7IGRpc3BsYXk6IHRhYmxlLXJvdy1ncm91cCAhaW1wb3J0YW50OyB9XG4gICAgdHIuc2hvdy1mb3ItcHJpbnQgeyBkaXNwbGF5OiB0YWJsZS1yb3cgIWltcG9ydGFudDsgfVxuICAgIHRkLnNob3ctZm9yLXByaW50IHsgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50OyB9XG4gICAgdGguc2hvdy1mb3ItcHJpbnQgeyBkaXNwbGF5OiB0YWJsZS1jZWxsICFpbXBvcnRhbnQ7IH1cblxuICAgIC8vIERpc3BsYXkgdGhlIFVSTCBvZiBhIGxpbmsgYWZ0ZXIgdGhlIHRleHRcbiAgICBhLFxuICAgIGE6dmlzaXRlZCB7IHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO31cbiAgICBAaWYgJHByaW50LWhyZWZzIHtcbiAgICAgIGFbaHJlZl06YWZ0ZXIgeyBjb250ZW50OiAnICgnIGF0dHIoaHJlZikgJyknOyB9XG4gICAgfVxuXG4gICAgLy8gRG9uJ3QgZGlzcGxheSB0aGUgVVJMIGZvciBpbWFnZXMgb3IgSmF2YVNjcmlwdC9pbnRlcm5hbCBsaW5rc1xuICAgIC5pciBhOmFmdGVyLFxuICAgIGFbaHJlZl49J2phdmFzY3JpcHQ6J106YWZ0ZXIsXG4gICAgYVtocmVmXj0nIyddOmFmdGVyIHsgY29udGVudDogJyc7IH1cblxuICAgIC8vIERpc3BsYXkgd2hhdCBhbiBhYmJyZXZpYXRpb24gc3RhbmRzIGZvciBhZnRlciB0aGUgdGV4dFxuICAgIGFiYnJbdGl0bGVdOmFmdGVyIHsgY29udGVudDogJyAoJyBhdHRyKHRpdGxlKSAnKSc7IH1cblxuICAgIC8vIFByZXZlbnQgcGFnZSBicmVha3MgaW4gdGhlIG1pZGRsZSBvZiBhIGJsb2NrcXVvdGUgb3IgcHJlZm9ybWF0dGVkIHRleHQgYmxvY2tcbiAgICBwcmUsXG4gICAgYmxvY2txdW90ZSB7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAkZGFyay1ncmF5O1xuICAgICAgcGFnZS1icmVhay1pbnNpZGU6IGF2b2lkO1xuICAgIH1cblxuICAgIC8vIGg1YnAuY29tL3RcbiAgICB0aGVhZCB7IGRpc3BsYXk6IHRhYmxlLWhlYWRlci1ncm91cDsgfVxuXG4gICAgdHIsXG4gICAgaW1nIHsgcGFnZS1icmVhay1pbnNpZGU6IGF2b2lkOyB9XG5cbiAgICBpbWcgeyBtYXgtd2lkdGg6IDEwMCUgIWltcG9ydGFudDsgfVxuXG4gICAgQHBhZ2UgeyBtYXJnaW46IDAuNWNtOyB9XG5cbiAgICBwLFxuICAgIGgyLFxuICAgIGgzIHtcbiAgICAgIG9ycGhhbnM6IDM7XG4gICAgICB3aWRvd3M6IDM7XG4gICAgfVxuXG4gICAgLy8gQXZvaWQgcGFnZSBicmVha3MgYWZ0ZXIgYSBoZWFkaW5nXG4gICAgaDIsXG4gICAgaDMgeyBwYWdlLWJyZWFrLWFmdGVyOiBhdm9pZDsgfVxuXG4gICAgLy8gSGVscGVyIHRvIHJlLWFsbG93IHBhZ2UgYnJlYWtzIGluIHRoZSBtaWRkbGUgb2YgY2VydGFpbiBlbGVtZW50cyAoZS5nLiBwcmUsIGJsb2NrcXVvdGUsIHRyKVxuICAgIC5wcmludC1icmVhay1pbnNpZGUge1xuICAgICAgcGFnZS1icmVhay1pbnNpZGU6IGF1dG87XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBidXR0b25cbi8vLy9cblxuLy8vIEZvbnQgZmFtaWx5IGZvciBidXR0b24gZWxlbWVudHMuXG4vLy8gQHR5cGUgRm9udFxuJGJ1dHRvbi1mb250LWZhbWlseTogaW5oZXJpdCAhZGVmYXVsdDtcblxuLy8vIFBhZGRpbmcgaW5zaWRlIGJ1dHRvbnMuXG4vLy8gQHR5cGUgTGlzdFxuJGJ1dHRvbi1wYWRkaW5nOiAwLjg1ZW0gMWVtICFkZWZhdWx0O1xuXG4vLy8gTWFyZ2luIGFyb3VuZCBidXR0b25zLlxuLy8vIEB0eXBlIExpc3RcbiRidXR0b24tbWFyZ2luOiAwIDAgJGdsb2JhbC1tYXJnaW4gMCAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZmlsbCBmb3IgYnV0dG9ucy4gQ2FuIGVpdGhlciBiZSBgc29saWRgIG9yIGBob2xsb3dgLlxuLy8vIEB0eXBlIEtleXdvcmRcbiRidXR0b24tZmlsbDogc29saWQgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJhY2tncm91bmQgY29sb3IgZm9yIGJ1dHRvbnMuXG4vLy8gQHR5cGUgQ29sb3JcbiRidXR0b24tYmFja2dyb3VuZDogJHByaW1hcnktY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9uIGhvdmVyIGZvciBidXR0b25zLlxuLy8vIEB0eXBlIENvbG9yXG4kYnV0dG9uLWJhY2tncm91bmQtaG92ZXI6IHNjYWxlLWNvbG9yKCRidXR0b24tYmFja2dyb3VuZCwgJGxpZ2h0bmVzczogLTE1JSkgIWRlZmF1bHQ7XG5cbi8vLyBGb250IGNvbG9yIGZvciBidXR0b25zLlxuLy8vIEB0eXBlIExpc3RcbiRidXR0b24tY29sb3I6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIEFsdGVybmF0aXZlIGZvbnQgY29sb3IgZm9yIGJ1dHRvbnMuXG4vLy8gQHR5cGUgTGlzdFxuJGJ1dHRvbi1jb2xvci1hbHQ6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciByYWRpdXMgZm9yIGJ1dHRvbnMsIGRlZmF1bHRlZCB0byBnbG9iYWwtcmFkaXVzLlxuLy8vIEB0eXBlIE51bWJlclxuJGJ1dHRvbi1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuXG4vLy8gQm9yZGVyIHdpZHRoIGZvciBob2xsb3cgb3V0bGluZSBidXR0b25zXG4vLy8gQHR5cGUgTnVtYmVyXG4kYnV0dG9uLWhvbGxvdy1ib3JkZXItd2lkdGg6IDFweCAhZGVmYXVsdDtcblxuLy8vIFNpemVzIGZvciBidXR0b25zLlxuLy8vIEB0eXBlIE1hcFxuJGJ1dHRvbi1zaXplczogKFxuICB0aW55OiAwLjZyZW0sXG4gIHNtYWxsOiAwLjc1cmVtLFxuICBkZWZhdWx0OiAwLjlyZW0sXG4gIGxhcmdlOiAxLjI1cmVtLFxuKSAhZGVmYXVsdDtcblxuLy8vIENvbG9yaW5nIGNsYXNzZXMuIEEgbWFwIG9mIGNsYXNzZXMgdG8gb3V0cHV0IGluIHlvdXIgQ1NTLCBsaWtlIGAuc2Vjb25kYXJ5YCwgYC5zdWNjZXNzYCwgYW5kIHNvIG9uLlxuLy8vIEB0eXBlIE1hcFxuJGJ1dHRvbi1wYWxldHRlOiAkZm91bmRhdGlvbi1wYWxldHRlICFkZWZhdWx0O1xuXG4vLy8gb3BhY2l0eSBmb3IgYSBkaXNhYmxlZCBidXR0b24uXG4vLy8gQHR5cGUgTGlzdFxuJGJ1dHRvbi1vcGFjaXR5LWRpc2FibGVkOiAwLjI1ICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBsaWdodG5lc3Mgb24gaG92ZXIgZm9yIGJ1dHRvbnMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kYnV0dG9uLWJhY2tncm91bmQtaG92ZXItbGlnaHRuZXNzOiAtMjAlICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgbGlnaHRuZXNzIG9uIGhvdmVyIGZvciBob2xsb3cgYnV0dG9ucy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRidXR0b24taG9sbG93LWhvdmVyLWxpZ2h0bmVzczogLTUwJSAhZGVmYXVsdDtcblxuLy8gSW50ZXJuYWw6IGZsaXAgZnJvbSBtYXJnaW4tcmlnaHQgdG8gbWFyZ2luLWxlZnQgZm9yIGRlZmF1bHRzXG5AaWYgJGdsb2JhbC10ZXh0LWRpcmVjdGlvbiA9PSAncnRsJyB7XG4gICRidXR0b24tbWFyZ2luOiAwIDAgJGdsb2JhbC1tYXJnaW4gJGdsb2JhbC1tYXJnaW4gIWRlZmF1bHQ7XG59XG5cbi8vLyB0cmFuc2l0aW9ucyBmb3IgYnV0dG9ucy5cbi8vLyBAdHlwZSBMaXN0XG4kYnV0dG9uLXRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4yNXMgZWFzZS1vdXQsIGNvbG9yIDAuMjVzIGVhc2Utb3V0ICFkZWZhdWx0O1xuXG4vLy8gQWRkaXRpb25hbCByZXNwb25zaXZlIGNsYXNzZXMgZm9yIC5leHBhbmRlZFxuLy8vIEB0eXBlIEJvb2xlYW5cbiRidXR0b24tcmVzcG9uc2l2ZS1leHBhbmRlZDogZmFsc2UgIWRlZmF1bHQ7XG5cbi8vIFRPRE86IERvY3VtZW50IGJ1dHRvbi1iYXNlKCkgbWl4aW5cbkBtaXhpbiBidXR0b24tYmFzZSB7XG4gIEBpbmNsdWRlIGRpc2FibGUtbW91c2Utb3V0bGluZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBtYXJnaW46ICRidXR0b24tbWFyZ2luO1xuXG4gIEBpZiAodHlwZS1vZigkYnV0dG9uLXBhZGRpbmcpID09ICdtYXAnKSB7XG4gICAgQGVhY2ggJHNpemUsICRwYWRkaW5nIGluICRidXR0b24tcGFkZGluZyB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRzaXplKSB7XG4gICAgICAgIHBhZGRpbmc6ICRwYWRkaW5nO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgcGFkZGluZzogJGJ1dHRvbi1wYWRkaW5nO1xuICB9XG5cbiAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yYWRpdXM6ICRidXR0b24tcmFkaXVzO1xuICB0cmFuc2l0aW9uOiAkYnV0dG9uLXRyYW5zaXRpb247XG4gIGZvbnQtZmFtaWx5OiAkYnV0dG9uLWZvbnQtZmFtaWx5O1xuICBmb250LXNpemU6IG1hcC1nZXQoJGJ1dHRvbi1zaXplcywgZGVmYXVsdCk7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBuby12ZW5kb3ItcHJlZml4ZXNcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4vLy8gRXhwYW5kcyBhIGJ1dHRvbiB0byBtYWtlIGl0IGZ1bGwtd2lkdGguXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkZXhwYW5kIFt0cnVlXSAtIFNldCB0byBgdHJ1ZWAgdG8gZW5hYmxlIHRoZSBleHBhbmQgYmVoYXZpb3IuIFNldCB0byBgZmFsc2VgIHRvIHJldmVyc2UgdGhpcyBiZWhhdmlvci5cbkBtaXhpbiBidXR0b24tZXhwYW5kKCRleHBhbmQ6IHRydWUpIHtcbiAgQGlmICRleHBhbmQge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxuICBAZWxzZSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIG1hcmdpbjogJGJ1dHRvbi1tYXJnaW47XG4gIH1cbn1cblxuLy8vIFNldHMgdGhlIHZpc3VhbCBzdHlsZSBvZiBhIGJ1dHRvbi5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkYmFja2dyb3VuZCBbJGJ1dHRvbi1iYWNrZ3JvdW5kXSAtIEJhY2tncm91bmQgY29sb3Igb2YgdGhlIGJ1dHRvbi5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkYmFja2dyb3VuZC1ob3ZlciBbJGJ1dHRvbi1iYWNrZ3JvdW5kLWhvdmVyXSAtIEJhY2tncm91bmQgY29sb3Igb2YgdGhlIGJ1dHRvbiBvbiBob3Zlci4gU2V0IHRvIGBhdXRvYCB0byBoYXZlIHRoZSBtaXhpbiBhdXRvbWF0aWNhbGx5IGdlbmVyYXRlIGEgaG92ZXIgY29sb3IuXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIFskYnV0dG9uLWNvbG9yXSAtIFRleHQgY29sb3Igb2YgdGhlIGJ1dHRvbi4gU2V0IHRvIGBhdXRvYCB0byBhdXRvbWF0aWNhbGx5IGdlbmVyYXRlIGEgY29sb3IgYmFzZWQgb24gdGhlIGJhY2tncm91bmQgY29sb3IuXG5AbWl4aW4gYnV0dG9uLXN0eWxlKFxuICAkYmFja2dyb3VuZDogJGJ1dHRvbi1iYWNrZ3JvdW5kLFxuICAkYmFja2dyb3VuZC1ob3ZlcjogJGJ1dHRvbi1iYWNrZ3JvdW5kLWhvdmVyLFxuICAkY29sb3I6ICRidXR0b24tY29sb3IsXG4gICRiYWNrZ3JvdW5kLWhvdmVyLWxpZ2h0bmVzczogJGJ1dHRvbi1iYWNrZ3JvdW5kLWhvdmVyLWxpZ2h0bmVzc1xuKSB7XG4gIEBpZiAkY29sb3IgPT0gYXV0byB7XG4gICAgJGNvbG9yOiBjb2xvci1waWNrLWNvbnRyYXN0KCRiYWNrZ3JvdW5kLCAoJGJ1dHRvbi1jb2xvciwgJGJ1dHRvbi1jb2xvci1hbHQpKTtcbiAgfVxuXG4gIEBpZiAkYmFja2dyb3VuZC1ob3ZlciA9PSBhdXRvIHtcbiAgICAkYmFja2dyb3VuZC1ob3Zlcjogc2NhbGUtY29sb3IoJGJhY2tncm91bmQsICRsaWdodG5lc3M6ICRiYWNrZ3JvdW5kLWhvdmVyLWxpZ2h0bmVzcyk7XG4gIH1cblxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgY29sb3I6ICRjb2xvcjtcblxuICAmOmhvdmVyLCAmOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZC1ob3ZlcjtcbiAgICBjb2xvcjogJGNvbG9yO1xuICB9XG59XG5cbi8vLyBSZW1vdmVzIGJhY2tncm91bmQgZmlsbCBvbiBob3ZlciBhbmQgZm9jdXMgZm9yIGhvbGxvdyBidXR0b25zLlxuQG1peGluIGJ1dHRvbi1ob2xsb3cge1xuICAmLFxuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgfVxuXG4gICYuZGlzYWJsZWQsXG4gICZbZGlzYWJsZWRdIHtcbiAgICAmLFxuICAgICY6aG92ZXIsICY6Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBidXR0b24taG9sbG93LXN0eWxlKFxuICAkY29sb3I6ICRidXR0b24tYmFja2dyb3VuZCxcbiAgJGhvdmVyLWxpZ2h0bmVzczogJGJ1dHRvbi1ob2xsb3ctaG92ZXItbGlnaHRuZXNzLFxuICAkYm9yZGVyLXdpZHRoOiAkYnV0dG9uLWhvbGxvdy1ib3JkZXItd2lkdGhcbikge1xuICAkY29sb3ItaG92ZXI6IHNjYWxlLWNvbG9yKCRjb2xvciwgJGxpZ2h0bmVzczogJGhvdmVyLWxpZ2h0bmVzcyk7XG5cbiAgYm9yZGVyOiAkYm9yZGVyLXdpZHRoIHNvbGlkICRjb2xvcjtcbiAgY29sb3I6ICRjb2xvcjtcblxuICAmOmhvdmVyLCAmOmZvY3VzIHtcbiAgICBib3JkZXItY29sb3I6ICRjb2xvci1ob3ZlcjtcbiAgICBjb2xvcjogJGNvbG9yLWhvdmVyO1xuICAgICYuZGlzYWJsZWQsXG4gICAgJltkaXNhYmxlZF0ge1xuICAgICAgYm9yZGVyOiAkYm9yZGVyLXdpZHRoIHNvbGlkICRjb2xvcjtcbiAgICAgIGNvbG9yOiAkY29sb3I7XG4gICAgfVxuICB9XG59XG5cbi8vLyBBZGRzIGRpc2FibGVkIHN0eWxlcyB0byBhIGJ1dHRvbiBieSBmYWRpbmcgdGhlIGVsZW1lbnQsIHJlc2V0aW5nIHRoZSBjdXJzb3IsIGFuZCBkaXNhYmxpbmcgcG9pbnRlciBldmVudHMuXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGJhY2tncm91bmQgWyRidXR0b24tYmFja2dyb3VuZF0gLSBCYWNrZ3JvdW5kIGNvbG9yIG9mIHRoZSBkaXNhYmxlZCBidXR0b24uXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIFskYnV0dG9uLWNvbG9yXSAtIFRleHQgY29sb3Igb2YgdGhlIGRpc2FibGVkIGJ1dHRvbi4gU2V0IHRvIGBhdXRvYCB0byBoYXZlIHRoZSBtaXhpbiBhdXRvbWF0aWNhbGx5IGdlbmVyYXRlIGEgY29sb3IgYmFzZWQgb24gdGhlIGJhY2tncm91bmQgY29sb3IuXG5AbWl4aW4gYnV0dG9uLWRpc2FibGVkKFxuICAkYmFja2dyb3VuZDogJGJ1dHRvbi1iYWNrZ3JvdW5kLFxuICAkY29sb3I6ICRidXR0b24tY29sb3Jcbikge1xuICBAaWYgJGNvbG9yID09IGF1dG8ge1xuICAgICRjb2xvcjogY29sb3ItcGljay1jb250cmFzdCgkYmFja2dyb3VuZCwgKCRidXR0b24tY29sb3IsICRidXR0b24tY29sb3ItYWx0KSk7XG4gIH1cblxuICBvcGFjaXR5OiAkYnV0dG9uLW9wYWNpdHktZGlzYWJsZWQ7XG4gIGN1cnNvcjogbm90LWFsbG93ZWQ7XG5cbiAgJiwgJjpob3ZlciwgJjpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgfVxufVxuXG4vLy8gQWRkcyBhIGRyb3Bkb3duIGFycm93IHRvIGEgYnV0dG9uLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkc2l6ZSBbMC40ZW1dIC0gU2l6ZSBvZiB0aGUgYXJyb3cuIFdlIHJlY29tbWVuZCB1c2luZyBhbiBgZW1gIHZhbHVlIHNvIHRoZSB0cmlhbmdsZSBzY2FsZXMgd2hlbiB1c2VkIGluc2lkZSBkaWZmZXJlbnQgc2l6ZXMgb2YgYnV0dG9ucy5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgW3doaXRlXSAtIENvbG9yIG9mIHRoZSBhcnJvdy5cbi8vLyBAcGFyYW0ge051bWJlcn0gJG9mZnNldCBbJGJ1dHRvbi1wYWRkaW5nXSAtIERpc3RhbmNlIGJldHdlZW4gdGhlIGFycm93IGFuZCB0aGUgdGV4dCBvZiB0aGUgYnV0dG9uLiBEZWZhdWx0cyB0byB3aGF0ZXZlciB0aGUgcmlnaHQgcGFkZGluZyBvZiBhIGJ1dHRvbiBpcy5cbkBtaXhpbiBidXR0b24tZHJvcGRvd24oXG4gICRzaXplOiAwLjRlbSxcbiAgJGNvbG9yOiAkd2hpdGUsXG4gICRvZmZzZXQ6IGdldC1zaWRlKCRidXR0b24tcGFkZGluZywgcmlnaHQpXG4pIHtcbiAgJjo6YWZ0ZXIge1xuICAgIEBpbmNsdWRlIGNzcy10cmlhbmdsZSgkc2l6ZSwgJGNvbG9yLCBkb3duKTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiAwLjRlbTsgLy8gQWxpZ25zIHRoZSBhcnJvdyB3aXRoIHRoZSB0ZXh0IG9mIHRoZSBidXR0b25cblxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBmbG9hdDogI3skZ2xvYmFsLXJpZ2h0fTtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAkb2Zmc2V0O1xuICB9XG59XG5cbi8vLyBBZGRzIGFsbCBzdHlsZXMgZm9yIGEgYnV0dG9uLiBGb3IgbW9yZSBncmFudWxhciBjb250cm9sIG92ZXIgc3R5bGVzLCB1c2UgdGhlIGluZGl2aWR1YWwgYnV0dG9uIG1peGlucy5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRleHBhbmQgW2ZhbHNlXSAtIFNldCB0byBgdHJ1ZWAgdG8gbWFrZSB0aGUgYnV0dG9uIGZ1bGwtd2lkdGguXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGJhY2tncm91bmQgWyRidXR0b24tYmFja2dyb3VuZF0gLSBCYWNrZ3JvdW5kIGNvbG9yIG9mIHRoZSBidXR0b24uXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGJhY2tncm91bmQtaG92ZXIgWyRidXR0b24tYmFja2dyb3VuZC1ob3Zlcl0gLSBCYWNrZ3JvdW5kIGNvbG9yIG9mIHRoZSBidXR0b24gb24gaG92ZXIuIFNldCB0byBgYXV0b2AgdG8gaGF2ZSB0aGUgbWl4aW4gYXV0b21hdGljYWxseSBnZW5lcmF0ZSBhIGhvdmVyIGNvbG9yLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciBbJGJ1dHRvbi1jb2xvcl0gLSBUZXh0IGNvbG9yIG9mIHRoZSBidXR0b24uIFNldCB0byBgYXV0b2AgdG8gYXV0b21hdGljYWxseSBnZW5lcmF0ZSBhIGNvbG9yIGJhc2VkIG9uIHRoZSBiYWNrZ3JvdW5kIGNvbG9yLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHN0eWxlIFtzb2xpZF0gLSBTZXQgdG8gYGhvbGxvd2AgdG8gY3JlYXRlIGEgaG9sbG93IGJ1dHRvbi4gVGhlIGNvbG9yIGRlZmluZWQgaW4gYCRiYWNrZ3JvdW5kYCB3aWxsIGJlIHVzZWQgYXMgdGhlIHByaW1hcnkgY29sb3Igb2YgdGhlIGJ1dHRvbi5cbkBtaXhpbiBidXR0b24oXG4gICRleHBhbmQ6IGZhbHNlLFxuICAkYmFja2dyb3VuZDogJGJ1dHRvbi1iYWNrZ3JvdW5kLFxuICAkYmFja2dyb3VuZC1ob3ZlcjogJGJ1dHRvbi1iYWNrZ3JvdW5kLWhvdmVyLFxuICAkY29sb3I6ICRidXR0b24tY29sb3IsXG4gICRzdHlsZTogJGJ1dHRvbi1maWxsXG4pIHtcbiAgQGluY2x1ZGUgYnV0dG9uLWJhc2U7XG5cbiAgQGlmICRzdHlsZSA9PSBzb2xpZCB7XG4gICAgQGluY2x1ZGUgYnV0dG9uLXN0eWxlKCRiYWNrZ3JvdW5kLCAkYmFja2dyb3VuZC1ob3ZlciwgJGNvbG9yKTtcbiAgfVxuICBAZWxzZSBpZiAkc3R5bGUgPT0gaG9sbG93IHtcbiAgICBAaW5jbHVkZSBidXR0b24taG9sbG93O1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1ob2xsb3ctc3R5bGUoJGJhY2tncm91bmQpO1xuICB9XG5cbiAgQGlmICRleHBhbmQge1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1leHBhbmQ7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tYnV0dG9uIHtcbiAgLmJ1dHRvbiB7XG4gICAgQGluY2x1ZGUgYnV0dG9uO1xuXG4gICAgLy8gU2l6ZXNcbiAgICBAZWFjaCAkc2l6ZSwgJHZhbHVlIGluIG1hcC1yZW1vdmUoJGJ1dHRvbi1zaXplcywgZGVmYXVsdCkge1xuICAgICAgJi4jeyRzaXplfSB7XG4gICAgICAgIGZvbnQtc2l6ZTogJHZhbHVlO1xuICAgICAgfVxuICAgIH1cblxuICAgICYuZXhwYW5kZWQgeyBAaW5jbHVkZSBidXR0b24tZXhwYW5kOyB9XG5cbiAgICBAaWYgJGJ1dHRvbi1yZXNwb25zaXZlLWV4cGFuZGVkIHtcbiAgICAgIEBlYWNoICRzaXplIGluICRicmVha3BvaW50LWNsYXNzZXMge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCN7JHNpemV9IG9ubHkpIHtcbiAgICAgICAgICAmLiN7JHNpemV9LW9ubHktZXhwYW5kZWQge1xuICAgICAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWV4cGFuZDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgQGlmICRzaXplICE9ICQtemYtemVyby1icmVha3BvaW50IHtcbiAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCN7JHNpemV9IGRvd24pIHtcbiAgICAgICAgICAgICYuI3skc2l6ZX0tZG93bi1leHBhbmRlZCB7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1leHBhbmQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgjeyRzaXplfSkge1xuICAgICAgICAgICAgJi4jeyRzaXplfS1leHBhbmRlZCB7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1leHBhbmQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gQ29sb3JzXG4gICAgQGVhY2ggJG5hbWUsICRjb2xvciBpbiAkYnV0dG9uLXBhbGV0dGUge1xuICAgICAgQGlmICRidXR0b24tZmlsbCAhPSBob2xsb3cge1xuICAgICAgICAmLiN7JG5hbWV9IHtcbiAgICAgICAgICBAaW5jbHVkZSBidXR0b24tc3R5bGUoJGNvbG9yLCBhdXRvLCBhdXRvKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICAmLiN7JG5hbWV9IHtcbiAgICAgICAgICBAaW5jbHVkZSBidXR0b24taG9sbG93LXN0eWxlKCRjb2xvcik7XG4gICAgICAgIH1cblxuICAgICAgICAmLiN7JG5hbWV9LmRyb3Bkb3duOjphZnRlciB7XG4gICAgICAgICAgYm9yZGVyLXRvcC1jb2xvcjogJGNvbG9yO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gRGlzYWJsZWQgc3R5bGVcbiAgICAmLmRpc2FibGVkLFxuICAgICZbZGlzYWJsZWRdIHtcbiAgICAgIEBpbmNsdWRlIGJ1dHRvbi1kaXNhYmxlZDtcblxuICAgICAgQGVhY2ggJG5hbWUsICRjb2xvciBpbiAkYnV0dG9uLXBhbGV0dGUge1xuICAgICAgICAmLiN7JG5hbWV9IHtcbiAgICAgICAgICBAaW5jbHVkZSBidXR0b24tZGlzYWJsZWQoJGNvbG9yLCBhdXRvKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIEhvbGxvdyBzdHlsZVxuICAgIEBpZiAkYnV0dG9uLWZpbGwgIT0gaG9sbG93IHtcbiAgICAgICYuaG9sbG93IHtcbiAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWhvbGxvdztcbiAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWhvbGxvdy1zdHlsZTtcblxuICAgICAgICBAZWFjaCAkbmFtZSwgJGNvbG9yIGluICRidXR0b24tcGFsZXR0ZSB7XG4gICAgICAgICAgJi4jeyRuYW1lfSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBidXR0b24taG9sbG93LXN0eWxlKCRjb2xvcik7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gQ2xlYXIgc3R5bGVcbiAgICBAaWYgJGJ1dHRvbi1maWxsICE9IGNsZWFyIHtcbiAgICAgICYuY2xlYXIge1xuICAgICAgICBAaW5jbHVkZSBidXR0b24taG9sbG93O1xuICAgICAgICBAaW5jbHVkZSBidXR0b24taG9sbG93LXN0eWxlO1xuXG4gICAgICAgICYsICY6aG92ZXIsICY6Zm9jdXMge1xuICAgICAgICAgICYsICYuZGlzYWJsZWQsICZbZGlzYWJsZWRdIHtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgQGVhY2ggJG5hbWUsICRjb2xvciBpbiAkYnV0dG9uLXBhbGV0dGUge1xuICAgICAgICAgICYuI3skbmFtZX0ge1xuICAgICAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWhvbGxvdy1zdHlsZSgkY29sb3IpO1xuXG4gICAgICAgICAgICAmLCAmOmhvdmVyLFxuICAgICAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICAgICYsXG4gICAgICAgICAgICAgICYuZGlzYWJsZWQsXG4gICAgICAgICAgICAgICZbZGlzYWJsZWRdIHtcbiAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gRHJvcGRvd24gYXJyb3dcbiAgICAmLmRyb3Bkb3duIHtcbiAgICAgIEBpbmNsdWRlIGJ1dHRvbi1kcm9wZG93bjtcblxuICAgICAgQGlmICRidXR0b24tZmlsbCA9PSBob2xsb3cge1xuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgYm9yZGVyLXRvcC1jb2xvcjogJGJ1dHRvbi1iYWNrZ3JvdW5kO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYuaG9sbG93LCAmLmNsZWFyIHtcbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgIGJvcmRlci10b3AtY29sb3I6ICRidXR0b24tYmFja2dyb3VuZDtcbiAgICAgICAgfVxuXG4gICAgICAgIEBlYWNoICRuYW1lLCAkY29sb3IgaW4gJGJ1dHRvbi1wYWxldHRlIHtcbiAgICAgICAgICAmLiN7JG5hbWV9IHtcbiAgICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgICAgYm9yZGVyLXRvcC1jb2xvcjogJGNvbG9yO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIEJ1dHRvbiB3aXRoIGRyb3Bkb3duIGFycm93IG9ubHlcbiAgICAmLmFycm93LW9ubHk6OmFmdGVyIHtcbiAgICAgIHRvcDogLTAuMWVtO1xuICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAwO1xuICAgIH1cbiAgfVxuXG4gIGEuYnV0dG9uIHsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBuby1xdWFsaWZ5aW5nLWVsZW1lbnRzXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZvcm1zXG4vLy8vXG5cbi8vLyBGb250IGNvbG9yIG9mIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtY29sb3I6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIEZvbnQgY29sb3Igb2YgcGxhY2Vob2xkZXIgdGV4dCB3aXRoaW4gdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRpbnB1dC1wbGFjZWhvbGRlci1jb2xvcjogJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRm9udCBmYW1pbHkgb2YgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgRm9udFxuJGlucHV0LWZvbnQtZmFtaWx5OiBpbmhlcml0ICFkZWZhdWx0O1xuXG4vLy8gRm9udCBzaXplIG9mIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGlucHV0LWZvbnQtc2l6ZTogcmVtLWNhbGMoMTYpICFkZWZhdWx0O1xuXG4vLy8gRm9udCB3ZWlnaHQgb2YgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgS2V5d29yZFxuJGlucHV0LWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWwgIWRlZmF1bHQ7XG5cbi8vLyBMaW5lIGhlaWdodCBvZiB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBLZXl3b3JkXG4kaW5wdXQtbGluZS1oZWlnaHQ6ICRnbG9iYWwtbGluZWhlaWdodCAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRpbnB1dC1iYWNrZ3JvdW5kOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIGZvY3VzZWQgb2YgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRpbnB1dC1iYWNrZ3JvdW5kLWZvY3VzOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIGRpc2FibGVkIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtYmFja2dyb3VuZC1kaXNhYmxlZDogJGxpZ2h0LWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgYXJvdW5kIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIEJvcmRlclxuJGlucHV0LWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciBhcm91bmQgZm9jdXNlZCB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBDb2xvclxuJGlucHV0LWJvcmRlci1mb2N1czogMXB4IHNvbGlkICRkYXJrLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBQYWRkaW5nIG9mIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtcGFkZGluZzogJGZvcm0tc3BhY2luZyAvIDIgIWRlZmF1bHQ7XG5cbi8vLyBCb3ggc2hhZG93IGluc2lkZSB0ZXh0IGlucHV0cyB3aGVuIG5vdCBmb2N1c2VkLlxuLy8vIEB0eXBlIFNoYWRvd1xuJGlucHV0LXNoYWRvdzogaW5zZXQgMCAxcHggMnB4IHJnYmEoJGJsYWNrLCAwLjEpICFkZWZhdWx0O1xuXG4vLy8gQm94IHNoYWRvdyBvdXRzaWRlIHRleHQgaW5wdXRzIHdoZW4gZm9jdXNlZC5cbi8vLyBAdHlwZSBTaGFkb3dcbiRpbnB1dC1zaGFkb3ctZm9jdXM6IDAgMCA1cHggJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gQ3Vyc29yIHRvIHVzZSB3aGVuIGhvdmVyaW5nIG92ZXIgYSBkaXNhYmxlZCB0ZXh0IGlucHV0LlxuLy8vIEB0eXBlIEN1cnNvclxuJGlucHV0LWN1cnNvci1kaXNhYmxlZDogbm90LWFsbG93ZWQgIWRlZmF1bHQ7XG5cbi8vLyBQcm9wZXJ0aWVzIHRvIHRyYW5zaXRpb24gb24gdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgVHJhbnNpdGlvblxuJGlucHV0LXRyYW5zaXRpb246IGJveC1zaGFkb3cgMC41cywgYm9yZGVyLWNvbG9yIDAuMjVzIGVhc2UtaW4tb3V0ICFkZWZhdWx0O1xuXG4vLy8gRW5hYmxlcyB0aGUgdXAvZG93biBidXR0b25zIHRoYXQgQ2hyb21lIGFuZCBGaXJlZm94IGFkZCB0byBgPGlucHV0IHR5cGU9J251bWJlcic+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBCb29sZWFuXG4kaW5wdXQtbnVtYmVyLXNwaW5uZXJzOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gUmFkaXVzIGZvciB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBCb3JkZXJcbiRpbnB1dC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuXG4vLy8gQm9yZGVyIHJhZGl1cyBmb3IgZm9ybSBidXR0b25zLCBkZWZhdWx0ZWQgdG8gZ2xvYmFsLXJhZGl1cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRmb3JtLWJ1dHRvbi1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuXG5AbWl4aW4gZm9ybS1lbGVtZW50IHtcbiAgJGhlaWdodDogKCRpbnB1dC1mb250LXNpemUgKiB1bml0bGVzcy1jYWxjKCRpbnB1dC1saW5lLWhlaWdodCkpICsgKGdldC1zaWRlKCRpbnB1dC1wYWRkaW5nLCAndG9wJykgKyBnZXQtc2lkZSgkaW5wdXQtcGFkZGluZywgJ2JvdHRvbScpKSAtIHJlbS1jYWxjKDEpO1xuXG4gIGRpc3BsYXk6IGJsb2NrO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAkaGVpZ2h0O1xuICBtYXJnaW46IDAgMCAkZm9ybS1zcGFjaW5nO1xuICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZztcblxuICBib3JkZXI6ICRpbnB1dC1ib3JkZXI7XG4gIGJvcmRlci1yYWRpdXM6ICRpbnB1dC1yYWRpdXM7XG4gIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1iYWNrZ3JvdW5kO1xuICBib3gtc2hhZG93OiAkaW5wdXQtc2hhZG93O1xuXG4gIGZvbnQtZmFtaWx5OiAkaW5wdXQtZm9udC1mYW1pbHk7XG4gIGZvbnQtc2l6ZTogJGlucHV0LWZvbnQtc2l6ZTtcbiAgZm9udC13ZWlnaHQ6ICRpbnB1dC1mb250LXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodDtcbiAgY29sb3I6ICRpbnB1dC1jb2xvcjtcblxuICBAaWYgaGFzLXZhbHVlKCRpbnB1dC10cmFuc2l0aW9uKSB7XG4gICAgdHJhbnNpdGlvbjogJGlucHV0LXRyYW5zaXRpb247XG4gIH1cblxuICAvLyBGb2N1cyBzdGF0ZVxuICAmOmZvY3VzIHtcbiAgICBvdXRsaW5lOiBub25lO1xuICAgIGJvcmRlcjogJGlucHV0LWJvcmRlci1mb2N1cztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtYmFja2dyb3VuZC1mb2N1cztcbiAgICBib3gtc2hhZG93OiAkaW5wdXQtc2hhZG93LWZvY3VzO1xuXG4gICAgQGlmIGhhcy12YWx1ZSgkaW5wdXQtdHJhbnNpdGlvbikge1xuICAgICAgdHJhbnNpdGlvbjogJGlucHV0LXRyYW5zaXRpb247XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWZvcm0tdGV4dCB7XG4gIC8vIFRleHQgaW5wdXRzXG4gICN7dGV4dC1pbnB1dHMoKX0sXG4gIHRleHRhcmVhIHtcbiAgICBAaW5jbHVkZSBmb3JtLWVsZW1lbnQ7XG4gICAgYXBwZWFyYW5jZTogbm9uZTtcbiAgfVxuXG4gIC8vIFRleHQgYXJlYXNcbiAgdGV4dGFyZWEge1xuICAgIG1heC13aWR0aDogMTAwJTtcblxuICAgICZbcm93c10ge1xuICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgIH1cbiAgfVxuXG4gIGlucHV0LFxuICB0ZXh0YXJlYSB7XG4gICAgLy8gRGlzYWJsZWQvcmVhZG9ubHkgc3RhdGVcbiAgICAmOmRpc2FibGVkLFxuICAgICZbcmVhZG9ubHldIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1iYWNrZ3JvdW5kLWRpc2FibGVkO1xuICAgICAgY3Vyc29yOiAkaW5wdXQtY3Vyc29yLWRpc2FibGVkO1xuICAgIH1cbiAgfVxuXG4gIC8vIFJlc2V0IHN0eWxlcyBvbiBidXR0b24tbGlrZSBpbnB1dHNcbiAgW3R5cGU9J3N1Ym1pdCddLFxuICBbdHlwZT0nYnV0dG9uJ10ge1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gICAgYm9yZGVyLXJhZGl1czogJGZvcm0tYnV0dG9uLXJhZGl1cztcbiAgfVxuXG4gIC8vIFJlc2V0IE5vcm1hbGl6ZSBzZXR0aW5nIGNvbnRlbnQtYm94IHRvIHNlYXJjaCBlbGVtZW50c1xuICBpbnB1dFt0eXBlPSdzZWFyY2gnXSB7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgbm8tcXVhbGlmeWluZy1lbGVtZW50c1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIH1cblxuICAvLyBOdW1iZXIgaW5wdXQgc3R5bGVzXG4gIFt0eXBlPSdudW1iZXInXSB7XG4gICAgQGlmIG5vdCAkaW5wdXQtbnVtYmVyLXNwaW5uZXJzIHtcbiAgICAgIC1tb3otYXBwZWFyYW5jZTogdGV4dGZpZWxkOyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIG5vLXZlbmRvci1wcmVmaXhlc1xuXG4gICAgICAmOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxuICAgICAgJjo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiB7XG4gICAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBuby12ZW5kb3ItcHJlZml4ZXNcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFBsYWNlaG9sZGVyIHRleHRcbiAgOjpwbGFjZWhvbGRlciB7XG4gICAgY29sb3I6ICRpbnB1dC1wbGFjZWhvbGRlci1jb2xvcjtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZm9ybXNcbi8vLy9cblxuQG1peGluIGZvdW5kYXRpb24tZm9ybS1jaGVja2JveCB7XG4gIFt0eXBlPSdmaWxlJ10sXG4gIFt0eXBlPSdjaGVja2JveCddLFxuICBbdHlwZT0ncmFkaW8nXSB7XG4gICAgbWFyZ2luOiAwIDAgJGZvcm0tc3BhY2luZztcbiAgfVxuXG4gIC8vIFN0eWxlcyBmb3IgaW5wdXQvbGFiZWwgc2libGluZ3NcbiAgW3R5cGU9J2NoZWNrYm94J10gKyBsYWJlbCxcbiAgW3R5cGU9J3JhZGlvJ10gKyBsYWJlbCB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcblxuICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06ICRmb3JtLXNwYWNpbmcgKiAwLjU7XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06ICRmb3JtLXNwYWNpbmc7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAgICZbZm9yXSB7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgfVxuICB9XG5cbiAgLy8gU3R5bGVzIGZvciBpbnB1dHMgaW5zaWRlIGxhYmVsc1xuICBsYWJlbCA+IFt0eXBlPSdjaGVja2JveCddLFxuICBsYWJlbCA+IFt0eXBlPSdyYWRpbyddIHtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogJGZvcm0tc3BhY2luZyAqIDAuNTtcbiAgfVxuXG4gIC8vIE5vcm1hbGl6ZSBmaWxlIGlucHV0IHdpZHRoXG4gIFt0eXBlPSdmaWxlJ10ge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBmb3Jtc1xuLy8vL1xuXG4vLy8gQ29sb3IgZm9yIGZvcm0gbGFiZWxzLlxuLy8vIEB0eXBlIENvbG9yXG4kZm9ybS1sYWJlbC1jb2xvcjogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gRm9udCBzaXplIGZvciBmb3JtIGxhYmVscy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRmb3JtLWxhYmVsLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpICFkZWZhdWx0O1xuXG4vLy8gRm9udCB3ZWlnaHQgZm9yIGZvcm0gbGFiZWxzLlxuLy8vIEB0eXBlIEtleXdvcmRcbiRmb3JtLWxhYmVsLWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWwgIWRlZmF1bHQ7XG5cbi8vLyBMaW5lIGhlaWdodCBmb3IgZm9ybSBsYWJlbHMuIFRoZSBoaWdoZXIgdGhlIG51bWJlciwgdGhlIG1vcmUgc3BhY2UgYmV0d2VlbiB0aGUgbGFiZWwgYW5kIGl0cyBpbnB1dCBmaWVsZC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRmb3JtLWxhYmVsLWxpbmUtaGVpZ2h0OiAxLjggIWRlZmF1bHQ7XG5cbkBtaXhpbiBmb3JtLWxhYmVsIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMDtcblxuICBmb250LXNpemU6ICRmb3JtLWxhYmVsLWZvbnQtc2l6ZTtcbiAgZm9udC13ZWlnaHQ6ICRmb3JtLWxhYmVsLWZvbnQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGZvcm0tbGFiZWwtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkZm9ybS1sYWJlbC1jb2xvcjtcbn1cblxuQG1peGluIGZvcm0tbGFiZWwtbWlkZGxlIHtcbiAgJGlucHV0LWJvcmRlci13aWR0aDogZ2V0LWJvcmRlci12YWx1ZSgkaW5wdXQtYm9yZGVyLCB3aWR0aCk7XG5cbiAgbWFyZ2luOiAwIDAgJGZvcm0tc3BhY2luZztcbiAgcGFkZGluZzogKCRmb3JtLXNwYWNpbmcgLyAyICsgcmVtLWNhbGMoJGlucHV0LWJvcmRlci13aWR0aCkpIDA7XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWZvcm0tbGFiZWwge1xuICBsYWJlbCB7XG4gICAgQGluY2x1ZGUgZm9ybS1sYWJlbDtcblxuICAgICYubWlkZGxlIHtcbiAgICAgIEBpbmNsdWRlIGZvcm0tbGFiZWwtbWlkZGxlO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZm9ybXNcbi8vLy9cblxuLy8vIERlZmF1bHQgY29sb3IgZm9yIGhlbHAgdGV4dC5cbi8vLyBAdHlwZSBDb2xvclxuJGhlbHB0ZXh0LWNvbG9yOiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgc2l6ZSBmb3IgaGVscCB0ZXh0LlxuLy8vIEB0eXBlIE51bWJlclxuJGhlbHB0ZXh0LWZvbnQtc2l6ZTogcmVtLWNhbGMoMTMpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IHN0eWxlIGZvciBoZWxwIHRleHQuXG4vLy8gQHR5cGUgS2V5d29yZFxuJGhlbHB0ZXh0LWZvbnQtc3R5bGU6IGl0YWxpYyAhZGVmYXVsdDtcblxuQG1peGluIGZvdW5kYXRpb24tZm9ybS1oZWxwdGV4dCB7XG4gIC5oZWxwLXRleHQge1xuICAgICRtYXJnaW4tdG9wOiAoJGZvcm0tc3BhY2luZyAqIDAuNSkgKiAtMTtcblxuICAgIG1hcmdpbi10b3A6ICRtYXJnaW4tdG9wO1xuICAgIGZvbnQtc2l6ZTogJGhlbHB0ZXh0LWZvbnQtc2l6ZTtcbiAgICBmb250LXN0eWxlOiAkaGVscHRleHQtZm9udC1zdHlsZTtcbiAgICBjb2xvcjogJGhlbHB0ZXh0LWNvbG9yO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBmb3Jtc1xuLy8vL1xuXG4vLy8gQ29sb3Igb2YgbGFiZWxzIHByZWZpeGVkIHRvIGFuIGlucHV0LlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtcHJlZml4LWNvbG9yOiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIGxhYmVscyBwcmVmaXhlZCB0byBhbiBpbnB1dC5cbi8vLyBAdHlwZSBDb2xvclxuJGlucHV0LXByZWZpeC1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheSAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciBhcm91bmQgbGFiZWxzIHByZWZpeGVkIHRvIGFuIGlucHV0LlxuLy8vIEB0eXBlIEJvcmRlclxuJGlucHV0LXByZWZpeC1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBMZWZ0L3JpZ2h0IHBhZGRpbmcgb2YgYW4gcHJlL3Bvc3RmaXhlZCBpbnB1dCBsYWJlbFxuJGlucHV0LXByZWZpeC1wYWRkaW5nOiAxcmVtICFkZWZhdWx0O1xuXG5AbWl4aW4gZm91bmRhdGlvbi1mb3JtLXByZXBvc3RmaXgge1xuICAkaGVpZ2h0OiAoJGlucHV0LWZvbnQtc2l6ZSAqICRpbnB1dC1saW5lLWhlaWdodCkgKyAoZ2V0LXNpZGUoJGlucHV0LXBhZGRpbmcsICd0b3AnKSArIGdldC1zaWRlKCRpbnB1dC1wYWRkaW5nLCAnYm90dG9tJykpIC0gcmVtLWNhbGMoMSk7XG5cbiAgLmlucHV0LWdyb3VwIHtcbiAgICBkaXNwbGF5OiBpZigkZ2xvYmFsLWZsZXhib3gsIGZsZXgsIHRhYmxlKTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tYm90dG9tOiAkZm9ybS1zcGFjaW5nO1xuXG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgICB9XG5cbiAgICA+IDpmaXJzdC1jaGlsZCB7XG4gICAgICAmLCAmLmlucHV0LWdyb3VwLWJ1dHRvbiA+ICoge1xuICAgICAgICBib3JkZXItcmFkaXVzOiBpZigkZ2xvYmFsLXRleHQtZGlyZWN0aW9uID09IHJ0bCwgMCAkaW5wdXQtcmFkaXVzICRpbnB1dC1yYWRpdXMgMCwgJGlucHV0LXJhZGl1cyAwIDAgJGlucHV0LXJhZGl1cyk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgPiA6bGFzdC1jaGlsZCB7XG4gICAgICAmLCAmLmlucHV0LWdyb3VwLWJ1dHRvbiA+ICoge1xuICAgICAgICBib3JkZXItcmFkaXVzOiBpZigkZ2xvYmFsLXRleHQtZGlyZWN0aW9uID09IHJ0bCwgJGlucHV0LXJhZGl1cyAwIDAgJGlucHV0LXJhZGl1cywgMCAkaW5wdXQtcmFkaXVzICRpbnB1dC1yYWRpdXMgMCk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJWlucHV0LWdyb3VwLWNoaWxkIHtcbiAgICBtYXJnaW46IDA7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcblxuICAgIEBpZiBub3QgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIH1cbiAgfVxuXG4gIC5pbnB1dC1ncm91cC1sYWJlbCB7XG4gICAgQGV4dGVuZCAlaW5wdXQtZ3JvdXAtY2hpbGQ7XG4gICAgcGFkZGluZzogMCAkaW5wdXQtcHJlZml4LXBhZGRpbmc7XG4gICAgYm9yZGVyOiAkaW5wdXQtcHJlZml4LWJvcmRlcjtcbiAgICBiYWNrZ3JvdW5kOiAkaW5wdXQtcHJlZml4LWJhY2tncm91bmQ7XG5cbiAgICBjb2xvcjogJGlucHV0LXByZWZpeC1jb2xvcjtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcblxuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgd2lkdGg6IDElO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgIH1cblxuICAgIEBpZiBoYXMtdmFsdWUoJGlucHV0LXByZWZpeC1ib3JkZXIpIHtcbiAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICBib3JkZXItI3skZ2xvYmFsLXJpZ2h0fTogMDtcbiAgICAgIH1cblxuICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgYm9yZGVyLSN7JGdsb2JhbC1sZWZ0fTogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuaW5wdXQtZ3JvdXAtZmllbGQge1xuICAgIEBleHRlbmQgJWlucHV0LWdyb3VwLWNoaWxkO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG5cbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGZsZXg6IDEgMSAwcHg7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgemVyby11bml0XG4gICAgICBtaW4td2lkdGg6IDA7XG4gICAgfVxuICB9XG5cbiAgLmlucHV0LWdyb3VwLWJ1dHRvbiB7XG4gICAgQGV4dGVuZCAlaW5wdXQtZ3JvdXAtY2hpbGQ7XG4gICAgcGFkZGluZy10b3A6IDA7XG4gICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleDogMCAwIGF1dG87XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIHdpZHRoOiAxJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICB9XG5cbiAgICBhLFxuICAgIGlucHV0LFxuICAgIGJ1dHRvbixcbiAgICBsYWJlbCB7XG4gICAgICBAZXh0ZW5kICVpbnB1dC1ncm91cC1jaGlsZDtcblxuICAgICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICAgIGFsaWduLXNlbGY6IHN0cmV0Y2g7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgaGVpZ2h0OiAkaGVpZ2h0O1xuICAgICAgfVxuICAgICAgcGFkZGluZy10b3A6IDA7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICAgIGZvbnQtc2l6ZTogJGlucHV0LWZvbnQtc2l6ZTtcbiAgICB9XG4gIH1cblxuICAvLyBTcGVjaWZpY2l0eSBidW1wIG5lZWRlZCB0byBwcmV2ZW50IG92ZXJyaWRlIGJ5IGJ1dHRvbnNcbiAgQGlmIG5vdCAkZ2xvYmFsLWZsZXhib3gge1xuICAgIC5pbnB1dC1ncm91cCB7XG4gICAgICAuaW5wdXQtZ3JvdXAtYnV0dG9uIHtcbiAgICAgICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZvcm1zXG4vLy8vXG5cbi8vLyBEZWZhdWx0IGJvcmRlciBhcm91bmQgY3VzdG9tIGZpZWxkc2V0cy5cbi8vLyBAdHlwZSBCb3JkZXJcbiRmaWVsZHNldC1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHBhZGRpbmcgaW5zaWRlIGN1c3RvbSBmaWVsZHNldHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZmllbGRzZXQtcGFkZGluZzogcmVtLWNhbGMoMjApICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBtYXJnaW4gYXJvdW5kIGN1c3RvbSBmaWVsZHNldHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZmllbGRzZXQtbWFyZ2luOiByZW0tY2FsYygxOCAwKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcGFkZGluZyBiZXR3ZWVuIHRoZSBsZWdlbmQgdGV4dCBhbmQgZmllbGRzZXQgYm9yZGVyLlxuLy8vIEB0eXBlIE51bWJlclxuJGxlZ2VuZC1wYWRkaW5nOiByZW0tY2FsYygwIDMpICFkZWZhdWx0O1xuXG5AbWl4aW4gZmllbGRzZXQge1xuICBtYXJnaW46ICRmaWVsZHNldC1tYXJnaW47XG4gIHBhZGRpbmc6ICRmaWVsZHNldC1wYWRkaW5nO1xuICBib3JkZXI6ICRmaWVsZHNldC1ib3JkZXI7XG5cbiAgbGVnZW5kIHtcbiAgICAvLyBDb3ZlcnMgdXAgdGhlIGZpZWxkc2V0J3MgYm9yZGVyIHRvIGNyZWF0ZSBhcnRpZmljaWFsIHBhZGRpbmdcbiAgICBtYXJnaW46IDA7XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogcmVtLWNhbGMoLTMpO1xuICAgIHBhZGRpbmc6ICRsZWdlbmQtcGFkZGluZztcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1mb3JtLWZpZWxkc2V0IHtcbiAgZmllbGRzZXQge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGJvcmRlcjogMDtcbiAgfVxuXG4gIGxlZ2VuZCB7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi1ib3R0b206ICRmb3JtLXNwYWNpbmcgKiAwLjU7XG4gIH1cblxuICAuZmllbGRzZXQge1xuICAgIEBpbmNsdWRlIGZpZWxkc2V0O1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBmb3Jtc1xuLy8vL1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBmb3Igc2VsZWN0IG1lbnVzLlxuLy8vIEB0eXBlIENvbG9yXG4kc2VsZWN0LWJhY2tncm91bmQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIG9mIHRoZSBkcm9wZG93biB0cmlhbmdsZSBpbnNpZGUgc2VsZWN0IG1lbnVzLiBTZXQgdG8gYHRyYW5zcGFyZW50YCB0byByZW1vdmUgaXQgZW50aXJlbHkuXG4vLy8gQHR5cGUgQ29sb3JcbiRzZWxlY3QtdHJpYW5nbGUtY29sb3I6ICRkYXJrLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHJhZGl1cyBmb3Igc2VsZWN0IG1lbnVzLlxuLy8vIEB0eXBlIENvbG9yXG4kc2VsZWN0LXJhZGl1czogJGdsb2JhbC1yYWRpdXMgIWRlZmF1bHQ7XG5cbkBtaXhpbiBmb3JtLXNlbGVjdCB7XG4gICRoZWlnaHQ6ICgkaW5wdXQtZm9udC1zaXplICogdW5pdGxlc3MtY2FsYygkaW5wdXQtbGluZS1oZWlnaHQpKSArIChnZXQtc2lkZSgkaW5wdXQtcGFkZGluZywgJ3RvcCcpICsgZ2V0LXNpZGUoJGlucHV0LXBhZGRpbmcsICdib3R0b20nKSkgLSByZW0tY2FsYygxKTtcblxuICBoZWlnaHQ6ICRoZWlnaHQ7XG4gIG1hcmdpbjogMCAwICRmb3JtLXNwYWNpbmc7XG4gIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nO1xuXG4gIGFwcGVhcmFuY2U6IG5vbmU7XG4gIGJvcmRlcjogJGlucHV0LWJvcmRlcjtcbiAgYm9yZGVyLXJhZGl1czogJHNlbGVjdC1yYWRpdXM7XG4gIGJhY2tncm91bmQtY29sb3I6ICRzZWxlY3QtYmFja2dyb3VuZDtcblxuICBmb250LWZhbWlseTogJGlucHV0LWZvbnQtZmFtaWx5O1xuICBmb250LXNpemU6ICRpbnB1dC1mb250LXNpemU7XG4gIGZvbnQtd2VpZ2h0OiAkaW5wdXQtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkaW5wdXQtY29sb3I7XG5cbiAgQGlmICRzZWxlY3QtdHJpYW5nbGUtY29sb3IgIT0gdHJhbnNwYXJlbnQge1xuICAgIEBpbmNsdWRlIGJhY2tncm91bmQtdHJpYW5nbGUoJHNlbGVjdC10cmlhbmdsZS1jb2xvcik7XG4gICAgYmFja2dyb3VuZC1vcmlnaW46IGNvbnRlbnQtYm94O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246ICRnbG9iYWwtcmlnaHQgKC0kZm9ybS1zcGFjaW5nKSBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDlweCA2cHg7XG5cbiAgICBwYWRkaW5nLSN7JGdsb2JhbC1yaWdodH06ICgkZm9ybS1zcGFjaW5nICogMS41KTtcbiAgfVxuXG4gIEBpZiBoYXMtdmFsdWUoJGlucHV0LXRyYW5zaXRpb24pIHtcbiAgICB0cmFuc2l0aW9uOiAkaW5wdXQtdHJhbnNpdGlvbjtcbiAgfVxuXG4gIC8vIEZvY3VzIHN0YXRlXG4gICY6Zm9jdXMge1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgYm9yZGVyOiAkaW5wdXQtYm9yZGVyLWZvY3VzO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1iYWNrZ3JvdW5kLWZvY3VzO1xuICAgIGJveC1zaGFkb3c6ICRpbnB1dC1zaGFkb3ctZm9jdXM7XG5cbiAgICBAaWYgaGFzLXZhbHVlKCRpbnB1dC10cmFuc2l0aW9uKSB7XG4gICAgICB0cmFuc2l0aW9uOiAkaW5wdXQtdHJhbnNpdGlvbjtcbiAgICB9XG4gIH1cblxuICAvLyBEaXNhYmxlZCBzdGF0ZVxuICAmOmRpc2FibGVkIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtYmFja2dyb3VuZC1kaXNhYmxlZDtcbiAgICBjdXJzb3I6ICRpbnB1dC1jdXJzb3ItZGlzYWJsZWQ7XG4gIH1cblxuICAvLyBIaWRlIHRoZSBkcm9wZG93biBhcnJvdyBzaG93biBpbiBuZXdlciBJRSB2ZXJzaW9uc1xuICAmOjotbXMtZXhwYW5kIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgJlttdWx0aXBsZV0ge1xuICAgIGhlaWdodDogYXV0bztcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWZvcm0tc2VsZWN0IHtcbiAgc2VsZWN0IHtcbiAgICBAaW5jbHVkZSBmb3JtLXNlbGVjdDtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgYWJpZGVcbi8vLy9cblxuLy8vIFNldHMgaWYgZXJyb3Igc3R5bGVzIHNob3VsZCBiZSBhZGRlZCB0byBpbnB1dHMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGFiaWRlLWlucHV0czogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIFNldHMgaWYgZXJyb3Igc3R5bGVzIHNob3VsZCBiZSBhZGRlZCB0byBsYWJlbHMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGFiaWRlLWxhYmVsczogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3IgdG8gdXNlIGZvciBpbnZhbGlkIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtYmFja2dyb3VuZC1pbnZhbGlkOiBnZXQtY29sb3IoYWxlcnQpICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgdG8gdXNlIGZvciBsYWJlbHMgb2YgaW52YWxpZCBpbnB1dHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRmb3JtLWxhYmVsLWNvbG9yLWludmFsaWQ6IGdldC1jb2xvcihhbGVydCkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgY29sb3IgZm9yIGZvcm0gZXJyb3IgdGV4dC5cbi8vLyBAdHlwZSBDb2xvclxuJGlucHV0LWVycm9yLWNvbG9yOiBnZXQtY29sb3IoYWxlcnQpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IHNpemUgZm9yIGZvcm0gZXJyb3IgdGV4dC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRpbnB1dC1lcnJvci1mb250LXNpemU6IHJlbS1jYWxjKDEyKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCB3ZWlnaHQgZm9yIGZvcm0gZXJyb3IgdGV4dC5cbi8vLyBAdHlwZSBLZXl3b3JkXG4kaW5wdXQtZXJyb3ItZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XG5cbi8vLyBTdHlsZXMgdGhlIGJhY2tncm91bmQgYW5kIGJvcmRlciBvZiBhbiBpbnB1dCBmaWVsZCB0byBoYXZlIGFuIGVycm9yIHN0YXRlLlxuLy8vXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGJhY2tncm91bmQgWyRhbGVydC1jb2xvcl0gLSBDb2xvciB0byB1c2UgZm9yIHRoZSBiYWNrZ3JvdW5kIGFuZCBib3JkZXIuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRiYWNrZ3JvdW5kLWxpZ2h0ZW4gWzEwJV0gLSBMaWdodG5lc3MgbGV2ZWwgb2YgdGhlIGJhY2tncm91bmQgY29sb3IuXG5AbWl4aW4gZm9ybS1pbnB1dC1lcnJvcihcbiAgJGJhY2tncm91bmQ6ICRpbnB1dC1iYWNrZ3JvdW5kLWludmFsaWQsXG4gICRiYWNrZ3JvdW5kLWxpZ2h0ZW46IDEwJVxuKSB7XG4gICY6bm90KDpmb2N1cykge1xuICAgIGJvcmRlci1jb2xvcjogJGJhY2tncm91bmQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogbWl4KCRiYWNrZ3JvdW5kLCAkd2hpdGUsICRiYWNrZ3JvdW5kLWxpZ2h0ZW4pO1xuXG4gICAgJjo6cGxhY2Vob2xkZXIge1xuICAgICAgY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAgIH1cbiAgfVxufVxuXG4vLy8gQWRkcyBlcnJvciBzdHlsZXMgdG8gYSBmb3JtIGVsZW1lbnQsIHVzaW5nIHRoZSB2YWx1ZXMgaW4gdGhlIHNldHRpbmdzIGZpbGUuXG5AbWl4aW4gZm9ybS1lcnJvciB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIG1hcmdpbi10b3A6ICRmb3JtLXNwYWNpbmcgKiAtMC41O1xuICBtYXJnaW4tYm90dG9tOiAkZm9ybS1zcGFjaW5nO1xuXG4gIGZvbnQtc2l6ZTogJGlucHV0LWVycm9yLWZvbnQtc2l6ZTtcbiAgZm9udC13ZWlnaHQ6ICRpbnB1dC1lcnJvci1mb250LXdlaWdodDtcbiAgY29sb3I6ICRpbnB1dC1lcnJvci1jb2xvcjtcbn1cblxuQG1peGluIGZvdW5kYXRpb24tZm9ybS1lcnJvciB7XG4gIEBpZiAkYWJpZGUtaW5wdXRzIHtcbiAgICAvLyBFcnJvciBjbGFzcyBmb3IgaW52YWxpZCBpbnB1dHNcbiAgICAuaXMtaW52YWxpZC1pbnB1dCB7XG4gICAgICBAaW5jbHVkZSBmb3JtLWlucHV0LWVycm9yO1xuICAgIH1cbiAgfVxuXG4gIEBpZiAkYWJpZGUtbGFiZWxzIHtcbiAgICAvLyBFcnJvciBjbGFzcyBmb3IgbGFiZWxzIG9mIGludmFsaWQgb3V0cHV0c1xuICAgIC5pcy1pbnZhbGlkLWxhYmVsIHtcbiAgICAgIGNvbG9yOiAkZm9ybS1sYWJlbC1jb2xvci1pbnZhbGlkO1xuICAgIH1cbiAgfVxuXG4gIC8vIEZvcm0gZXJyb3IgZWxlbWVudFxuICAuZm9ybS1lcnJvciB7XG4gICAgQGluY2x1ZGUgZm9ybS1lcnJvcjtcblxuICAgICYuaXMtdmlzaWJsZSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGFjY29yZGlvblxuLy8vL1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yIG9mIGFuIGFjY29yZGlvbiBncm91cC5cbi8vLyBAdHlwZSBDb2xvclxuJGFjY29yZGlvbi1iYWNrZ3JvdW5kOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBJZiBgdHJ1ZWAsIGFkZHMgcGx1cyBhbmQgbWludXMgaWNvbnMgdG8gdGhlIHNpZGUgb2YgZWFjaCBhY2NvcmRpb24gdGl0bGUuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGFjY29yZGlvbi1wbHVzbWludXM6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHNpemUgb2YgYWNjb3JkaW9uIHRpdGxlcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRhY2NvcmRpb24tdGl0bGUtZm9udC1zaXplOiByZW0tY2FsYygxMikgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHRleHQgY29sb3IgZm9yIGl0ZW1zIGluIGEgTWVudS5cbi8vLyBAdHlwZSBDb2xvclxuJGFjY29yZGlvbi1pdGVtLWNvbG9yOiAkcHJpbWFyeS1jb2xvciAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYmFja2dyb3VuZCBjb2xvciBvbiBob3ZlciBmb3IgaXRlbXMgaW4gYSBNZW51LlxuLy8vIEB0eXBlIENvbG9yXG4kYWNjb3JkaW9uLWl0ZW0tYmFja2dyb3VuZC1ob3ZlcjogJGxpZ2h0LWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHBhZGRpbmcgb2YgYW4gYWNjb3JkaW9uIGl0ZW0uXG4vLy8gQHR5cGUgTnVtYmVyIHwgTGlzdFxuJGFjY29yZGlvbi1pdGVtLXBhZGRpbmc6IDEuMjVyZW0gMXJlbSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYmFja2dyb3VuZCBjb2xvciBvZiB0YWIgY29udGVudC5cbi8vLyBAdHlwZSBDb2xvclxuJGFjY29yZGlvbi1jb250ZW50LWJhY2tncm91bmQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYm9yZGVyIGNvbG9yIG9mIHRhYiBjb250ZW50LlxuLy8vIEB0eXBlIENvbG9yXG4kYWNjb3JkaW9uLWNvbnRlbnQtYm9yZGVyOiAxcHggc29saWQgJGxpZ2h0LWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHRleHQgY29sb3Igb2YgdGFiIGNvbnRlbnQuXG4vLy8gQHR5cGUgQ29sb3JcbiRhY2NvcmRpb24tY29udGVudC1jb2xvcjogJGJvZHktZm9udC1jb2xvciAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcGFkZGluZyBmb3IgdGFiIGNvbnRlbnQuXG4vLy8gQHR5cGUgTnVtYmVyIHwgTGlzdFxuJGFjY29yZGlvbi1jb250ZW50LXBhZGRpbmc6IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYW4gYWNjb3JkaW9uIGNvbnRhaW5lci4gQXBwbHkgdGhpcyB0byB0aGUgc2FtZSBlbGVtZW50IHRoYXQgZ2V0cyBgZGF0YS1hY2NvcmRpb25gLlxuQG1peGluIGFjY29yZGlvbi1jb250YWluZXIgKFxuICAkYmFja2dyb3VuZDogJGFjY29yZGlvbi1iYWNrZ3JvdW5kXG4pIHtcbiAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogMDtcbiAgYmFja2dyb3VuZDogJGJhY2tncm91bmQ7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcblxuICAmW2Rpc2FibGVkXSB7XG4gICAgLmFjY29yZGlvbi10aXRsZSB7XG4gICAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICAgIH1cbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIHRoZSBhY2NvcmRpb24gaXRlbS4gQXBwbHkgdGhpcyB0byB0aGUgbGlzdCBpdGVtIHdpdGhpbiBhbiBhY2NvcmRpb24gdWwuXG5AbWl4aW4gYWNjb3JkaW9uLWl0ZW0ge1xuICAmOmZpcnN0LWNoaWxkID4gOmZpcnN0LWNoaWxkIHtcbiAgICBib3JkZXItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAkZ2xvYmFsLXJhZGl1cyAwIDA7XG4gIH1cblxuICAmOmxhc3QtY2hpbGQgPiA6bGFzdC1jaGlsZCB7XG4gICAgYm9yZGVyLXJhZGl1czogMCAwICRnbG9iYWwtcmFkaXVzICRnbG9iYWwtcmFkaXVzO1xuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgdGhlIHRpdGxlIG9mIGFuIGFjY29yZGlvbiBpdGVtLiBBcHBseSB0aGlzIHRvIHRoZSBsaW5rIHdpdGhpbiBhbiBhY2NvcmRpb24gaXRlbS5cbkBtaXhpbiBhY2NvcmRpb24tdGl0bGUgKFxuICAkcGFkZGluZzogJGFjY29yZGlvbi1pdGVtLXBhZGRpbmcsXG4gICRmb250LXNpemU6ICRhY2NvcmRpb24tdGl0bGUtZm9udC1zaXplLFxuICAkY29sb3I6ICRhY2NvcmRpb24taXRlbS1jb2xvcixcbiAgJGJvcmRlcjogJGFjY29yZGlvbi1jb250ZW50LWJvcmRlcixcbiAgJGJhY2tncm91bmQtaG92ZXI6ICRhY2NvcmRpb24taXRlbS1iYWNrZ3JvdW5kLWhvdmVyXG4pIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogJHBhZGRpbmc7XG5cbiAgYm9yZGVyOiAkYm9yZGVyO1xuICBib3JkZXItYm90dG9tOiAwO1xuXG4gIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGNvbG9yOiAkY29sb3I7XG5cbiAgOmxhc3QtY2hpbGQ6bm90KC5pcy1hY3RpdmUpID4gJiB7XG4gICAgYm9yZGVyLWJvdHRvbTogJGJvcmRlcjtcbiAgICBib3JkZXItcmFkaXVzOiAwIDAgJGdsb2JhbC1yYWRpdXMgJGdsb2JhbC1yYWRpdXM7XG4gIH1cblxuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZC1ob3ZlcjtcbiAgfVxuXG4gIEBpZiAkYWNjb3JkaW9uLXBsdXNtaW51cyB7XG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgI3skZ2xvYmFsLXJpZ2h0fTogMXJlbTtcbiAgICAgIG1hcmdpbi10b3A6IC0wLjVyZW07XG4gICAgICBjb250ZW50OiAnKyc7XG4gICAgfVxuXG4gICAgLmlzLWFjdGl2ZSA+ICY6OmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAnXFwyMDEzJztcbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhY2NvcmRpb24gY29udGVudC4gQXBwbHkgdGhpcyB0byB0aGUgY29udGVudCBwYW5lIGJlbG93IGFuIGFjY29yZGlvbiBpdGVtJ3MgdGl0bGUuXG5AbWl4aW4gYWNjb3JkaW9uLWNvbnRlbnQgKFxuICAkcGFkZGluZzogJGFjY29yZGlvbi1jb250ZW50LXBhZGRpbmcsXG4gICRib3JkZXI6ICRhY2NvcmRpb24tY29udGVudC1ib3JkZXIsXG4gICRiYWNrZ3JvdW5kOiAkYWNjb3JkaW9uLWNvbnRlbnQtYmFja2dyb3VuZCxcbiAgJGNvbG9yOiAkYWNjb3JkaW9uLWNvbnRlbnQtY29sb3Jcbikge1xuICBkaXNwbGF5OiBub25lO1xuICBwYWRkaW5nOiAkcGFkZGluZztcblxuICBib3JkZXI6ICRib3JkZXI7XG4gIGJvcmRlci1ib3R0b206IDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuXG4gIGNvbG9yOiAkY29sb3I7XG5cbiAgOmxhc3QtY2hpbGQgPiAmOmxhc3QtY2hpbGQge1xuICAgIGJvcmRlci1ib3R0b206ICRib3JkZXI7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tYWNjb3JkaW9uIHtcbiAgLmFjY29yZGlvbiB7XG4gICAgQGluY2x1ZGUgYWNjb3JkaW9uLWNvbnRhaW5lcjtcbiAgfVxuXG4gIC5hY2NvcmRpb24taXRlbSB7XG4gICAgQGluY2x1ZGUgYWNjb3JkaW9uLWl0ZW07XG4gIH1cblxuICAuYWNjb3JkaW9uLXRpdGxlIHtcbiAgICBAaW5jbHVkZSBhY2NvcmRpb24tdGl0bGU7XG4gIH1cblxuICAuYWNjb3JkaW9uLWNvbnRlbnQge1xuICAgIEBpbmNsdWRlIGFjY29yZGlvbi1jb250ZW50O1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBjbG9zZS1idXR0b25cbi8vLy9cblxuLy8vIERlZmF1bHQgcG9zaXRpb24gb2YgdGhlIGNsb3NlIGJ1dHRvbi4gVGhlIGZpcnN0IHZhbHVlIHNob3VsZCBiZSBgcmlnaHRgIG9yIGBsZWZ0YCwgYW5kIHRoZSBzZWNvbmQgdmFsdWUgc2hvdWxkIGJlIGB0b3BgIG9yIGBib3R0b21gLlxuLy8vIEB0eXBlIExpc3RcbiRjbG9zZWJ1dHRvbi1wb3NpdGlvbjogcmlnaHQgdG9wICFkZWZhdWx0O1xuXG4vLy8gUmlnaHQgKG9yIGxlZnQpIG9mZnNldChzKSBmb3IgYSBjbG9zZSBidXR0b24uXG4vLy8gQHR5cGUgTnVtYmVyfE1hcFxuJGNsb3NlYnV0dG9uLW9mZnNldC1ob3Jpem9udGFsOiAoXG4gIHNtYWxsOiAwLjY2cmVtLFxuICBtZWRpdW06IDFyZW0sXG4pICFkZWZhdWx0O1xuXG4vLy8gVG9wIChvciBib3R0b20pIG9mZnNldChzKSBmb3IgYSBjbG9zZSBidXR0b24uXG4vLy8gQHR5cGUgTnVtYmVyfE1hcFxuJGNsb3NlYnV0dG9uLW9mZnNldC12ZXJ0aWNhbDogKFxuICBzbWFsbDogMC4zM2VtLFxuICBtZWRpdW06IDAuNXJlbSxcbikgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgc2l6ZShzKSBvZiB0aGUgY2xvc2UgYnV0dG9uLlxuLy8vIEB0eXBlIE51bWJlcnxNYXBcbiRjbG9zZWJ1dHRvbi1zaXplOiAoXG4gIHNtYWxsOiAxLjVlbSxcbiAgbWVkaXVtOiAyZW0sXG4pICFkZWZhdWx0O1xuXG4vLy8gVGhlIGxpbmUtaGVpZ2h0IG9mIHRoZSBjbG9zZSBidXR0b24uIEl0IGFmZmVjdHMgdGhlIHNwYWNpbmcgb2YgdGhlIGVsZW1lbnQuXG4vLy8gQHR5cGUgTnVtYmVyXG4kY2xvc2VidXR0b24tbGluZWhlaWdodDogMSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgY29sb3Igb2YgdGhlIGNsb3NlIGJ1dHRvbi5cbi8vLyBAdHlwZSBDb2xvclxuJGNsb3NlYnV0dG9uLWNvbG9yOiAkZGFyay1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBjb2xvciBvZiB0aGUgY2xvc2UgYnV0dG9uIHdoZW4gYmVpbmcgaG92ZXJlZCBvbi5cbi8vLyBAdHlwZSBDb2xvclxuJGNsb3NlYnV0dG9uLWNvbG9yLWhvdmVyOiAkYmxhY2sgIWRlZmF1bHQ7XG5cblxuLy8vIEdldCB0aGUgc2l6ZSBhbmQgcG9zaXRpb24gZm9yIGEgY2xvc2UgYnV0dG9uLiBJZiB0aGUgaW5wdXQgdmFsdWUgaXMgYSBudW1iZXIsIHRoZSBudW1iZXIgaXMgcmV0dXJuZWQuIElmIHRoZSBpbnB1dCB2YWx1ZSBpcyBhIGNvbmZpZyBtYXAgYW5kIHRoZSBtYXAgaGFzIHRoZSBrZXkgYCRzaXplYCwgdGhlIHZhbHVlIGlzIHJldHVybmVkLlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkdmFsdWUgLSBBIG51bWJlciBvciBtYXAgdGhhdCByZXByZXNlbnRzIHRoZSBzaXplIG9yIHBvc2l0aW9uIHZhbHVlKHMpIG9mIHRoZSBjbG9zZSBidXR0b24uXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc2l6ZSAtIFRoZSBzaXplIG9mIHRoZSBjbG9zZSBidXR0b24gdG8gdXNlLlxuLy8vXG4vLy8gQHJldHVybiB7TnVtYmVyfSBUaGUgZ2l2ZW4gbnVtYmVyIG9yIHRoZSB2YWx1ZSBmb3VuZCBpbiB0aGUgbWFwLlxuQGZ1bmN0aW9uIC16Zi1nZXQtc2l6ZS12YWwoJHZhbHVlLCAkc2l6ZSkge1xuICAvLyBDaGVjayBpZiB0aGUgdmFsdWUgaXMgYSBudW1iZXJcbiAgQGlmIHR5cGUtb2YoJHZhbHVlKSA9PSAnbnVtYmVyJyB7XG4gICAgLy8gSWYgaXQgaXMsIGp1c3QgcmV0dXJuIHRoZSBudW1iZXJcbiAgICBAcmV0dXJuICR2YWx1ZTtcbiAgfVxuXG4gIC8vIENoZWNrIGlmIHRoZSBzaXplIG5hbWUgZXhpc3RzIGluIHRoZSB2YWx1ZSBtYXBcbiAgQGVsc2UgaWYgbWFwLWhhcy1rZXkoJHZhbHVlLCAkc2l6ZSkge1xuICAgIC8vIElmIGl0IGRvZXMsIHJldHVybiB0aGUgdmFsdWVcbiAgICBAcmV0dXJuIG1hcC1nZXQoJHZhbHVlLCAkc2l6ZSk7XG4gIH1cbn1cblxuLy8vIFNldHMgdGhlIHNpemUgYW5kIHBvc2l0aW9uIG9mIGEgY2xvc2UgYnV0dG9uLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHNpemUgW21lZGl1bV0gLSBUaGUgc2l6ZSB0byB1c2UuIFNldCB0byBgc21hbGxgIHRvIGNyZWF0ZSBhIHNtYWxsIGNsb3NlIGJ1dHRvbi4gVGhlICdtZWRpdW0nIHZhbHVlcyBkZWZpbmVkIGluIGAkY2xvc2VidXR0b24tKmAgdmFyaWFibGVzIHdpbGwgYmUgdXNlZCBhcyB0aGUgZGVmYXVsdCBzaXplIGFuZCBwb3NpdGlvbiBvZiB0aGUgY2xvc2UgYnV0dG9uLlxuQG1peGluIGNsb3NlLWJ1dHRvbi1zaXplKCRzaXplKSB7XG4gICR4OiBudGgoJGNsb3NlYnV0dG9uLXBvc2l0aW9uLCAxKTtcbiAgJHk6IG50aCgkY2xvc2VidXR0b24tcG9zaXRpb24sIDIpO1xuXG4gICN7JHh9OiAtemYtZ2V0LXNpemUtdmFsKCRjbG9zZWJ1dHRvbi1vZmZzZXQtaG9yaXpvbnRhbCwgJHNpemUpO1xuICAjeyR5fTogLXpmLWdldC1zaXplLXZhbCgkY2xvc2VidXR0b24tb2Zmc2V0LXZlcnRpY2FsLCAkc2l6ZSk7XG4gIGZvbnQtc2l6ZTogLXpmLWdldC1zaXplLXZhbCgkY2xvc2VidXR0b24tc2l6ZSwgJHNpemUpO1xuICBsaW5lLWhlaWdodDogLXpmLWdldC1zaXplLXZhbCgkY2xvc2VidXR0b24tbGluZWhlaWdodCwgJHNpemUpO1xufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgY2xvc2UgYnV0dG9uLCB1c2luZyB0aGUgc3R5bGVzIGluIHRoZSBzZXR0aW5ncyB2YXJpYWJsZXMuXG5AbWl4aW4gY2xvc2UtYnV0dG9uIHtcbiAgJHg6IG50aCgkY2xvc2VidXR0b24tcG9zaXRpb24sIDEpO1xuICAkeTogbnRoKCRjbG9zZWJ1dHRvbi1wb3NpdGlvbiwgMik7XG5cbiAgQGluY2x1ZGUgZGlzYWJsZS1tb3VzZS1vdXRsaW5lO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGNvbG9yOiAkY2xvc2VidXR0b24tY29sb3I7XG4gIGN1cnNvcjogcG9pbnRlcjtcblxuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICBjb2xvcjogJGNsb3NlYnV0dG9uLWNvbG9yLWhvdmVyO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWNsb3NlLWJ1dHRvbiB7XG4gIC5jbG9zZS1idXR0b24ge1xuICAgIEBpbmNsdWRlIGNsb3NlLWJ1dHRvbjtcblxuICAgICYuc21hbGwgeyBAaW5jbHVkZSBjbG9zZS1idXR0b24tc2l6ZShzbWFsbCkgfVxuICAgICYsICYubWVkaXVtIHsgQGluY2x1ZGUgY2xvc2UtYnV0dG9uLXNpemUobWVkaXVtKSB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIG1lbnVcbi8vLy9cblxuLy8vIE1hcmdpbiBvZiBhIG1lbnUuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbWVudS1tYXJnaW46IDAgIWRlZmF1bHQ7XG5cbi8vLyBMZWZ0LWhhbmQgbWFyZ2luIG9mIGEgbmVzdGVkIG1lbnUuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbWVudS1uZXN0ZWQtbWFyZ2luOiAkZ2xvYmFsLW1lbnUtbmVzdGVkLW1hcmdpbiAhZGVmYXVsdDtcblxuLy8vIFBhZGRpbmcgZm9yIGl0ZW1zIGluIGEgcGlsbCBtZW51LlxuLy8vIEB0eXBlIE51bWJlclxuJG1lbnUtaXRlbXMtcGFkZGluZzogJGdsb2JhbC1tZW51LXBhZGRpbmcgIWRlZmF1bHQ7XG5cbi8vLyBtYXJnaW4gZm9yIGl0ZW1zIGluIGEgc2ltcGxlIG1lbnUuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbWVudS1zaW1wbGUtbWFyZ2luOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gVGV4dCBjb2xvciBvZiBhbiBhY3RpdmUgbWVudSBpdGVtLlxuLy8vIEB0eXBlIENvbG9yXG4kbWVudS1pdGVtLWNvbG9yLWFjdGl2ZTogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvZiBhbiBhY3RpdmUgbWVudSBpdGVtLlxuLy8vIEB0eXBlIENvbG9yXG4kbWVudS1pdGVtLWJhY2tncm91bmQtYWN0aXZlOiBnZXQtY29sb3IocHJpbWFyeSkgIWRlZmF1bHQ7XG5cbi8vLyBTcGFjaW5nIGJldHdlZW4gYW4gaWNvbiBhbmQgdGV4dCBpbiBhIG1lbnUgaXRlbS5cbi8vLyBAdHlwZSBOdW1iZXJcbiRtZW51LWljb24tc3BhY2luZzogMC4yNXJlbSAhZGVmYXVsdDtcblxuLy8vIEJhY2t3YXJkIGNvbXBhdGliaWxpdHkgZm9yIG1lbnUgc3RhdGUuIElmIHRydWUsIHRoaXMgZHVwbGljYXRlIGBhY3RpdmVgIHdpdGggYGlzLWFjdGl2ZWAuIFxuLy8vIEJ1dCBwbGVhc2Ugbm90ZSB0aGF0IGBhY3RpdmVgIHdpbGwgYmUgcmVtb3ZlZCBpbiB1cGNvbWluZyB2ZXJzaW9ucy5cbi8vLyBAdHlwZSBCb29sZWFuXG4kbWVudS1zdGF0ZS1iYWNrLWNvbXBhdDogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIEJhY2t3YXJkIGNvbXBhdGliaWxpdHkgZm9yIG1lbnUgY2VudGVyZWQuIElmIHRydWUsIHRoaXMgZHVwbGljYXRlIGAubWVudS1jZW50ZXJlZCA+IC5tZW51YCB3aXRoIGAubWVudS5hbGlnbi1jZW50ZXJgLiBcbi8vLyBCdXQgcGxlYXNlIG5vdGUgdGhhdCBgbWVudS1jZW50ZXJlZGAgd2lsbCBiZSByZW1vdmVkIGluIHVwY29taW5nIHZlcnNpb25zLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRtZW51LWNlbnRlcmVkLWJhY2stY29tcGF0OiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gQmFja3dhcmQgY29tcGF0aWJpbGl0eSBmb3IgdXNpbmcgYGljb24tKmAgY2xhc3NlcyB3aXRob3V0IGAuaWNvbnNgIGNsYXNzZXNcbi8vLyBCdXQgcGxlYXNlIG5vdGUgdGhhdCB0aGlzIGJhY2t3YXJkIGNvbXBhdGliaWxpdHkgd2lsbCBiZSByZW1vdmVkIGluIHVwY29taW5nIHZlcnNpb25zLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRtZW51LWljb25zLWJhY2stY29tcGF0OiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gQ3JlYXRlcyB0aGUgYmFzZSBzdHlsZXMgZm9yIGEgTWVudS5cbkBtaXhpbiBtZW51LWJhc2Uge1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgfVxuXG4gIGxpIHtcbiAgICBAaW5jbHVkZSBkaXNhYmxlLW1vdXNlLW91dGxpbmU7XG4gIH1cblxuICBhLFxuICAuYnV0dG9uIHtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZzogJG1lbnUtaXRlbXMtcGFkZGluZztcbiAgfVxuXG4gIC8vIFJlc2V0IHN0eWxlcyBvZiBpbm5lciBlbGVtZW50c1xuICBpbnB1dCxcbiAgc2VsZWN0LFxuICBhLFxuICBidXR0b24ge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cblxuICBpbnB1dCB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB9XG59XG5cbi8vLyBFeHBhbmRzIHRoZSBpdGVtcyBvZiBhIE1lbnUsIHNvIGVhY2ggaXRlbSBpcyB0aGUgc2FtZSB3aWR0aC5cbkBtaXhpbiBtZW51LWV4cGFuZCB7XG4gIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgIGxpIHtcbiAgICAgIGZsZXg6IDEgMSAwcHg7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgemVyby11bml0XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICB3aWR0aDogMTAwJTtcblxuICAgID4gbGkge1xuICAgICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgfVxuICB9XG59XG5cbi8vLyBBbGlnbiBtZW51IGl0ZW1zLlxuQG1peGluIG1lbnUtYWxpZ24oJGFsaWdubWVudCkge1xuICBAaWYgJGFsaWdubWVudCA9PSBsZWZ0IHtcbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgdGV4dC1hbGlnbjogJGdsb2JhbC1sZWZ0O1xuICAgIH1cbiAgfVxuICBAZWxzZSBpZiAkYWxpZ25tZW50ID09IHJpZ2h0IHtcbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGxpIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcblxuICAgICAgICAuc3VibWVudSBsaSB7XG4gICAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYudmVydGljYWwgbGkge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgdGV4dC1hbGlnbjogJGdsb2JhbC1yaWdodDtcblxuICAgICAgICAuc3VibWVudSBsaSB7XG4gICAgICAgICAgdGV4dC1hbGlnbjogJGdsb2JhbC1yaWdodDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICB0ZXh0LWFsaWduOiAkZ2xvYmFsLXJpZ2h0O1xuXG4gICAgICAuc3VibWVudSBsaSB7XG4gICAgICAgIHRleHQtYWxpZ246ICRnbG9iYWwtbGVmdDtcbiAgICAgIH1cblxuICAgICAgJi52ZXJ0aWNhbCB7XG4gICAgICAgIC5zdWJtZW51IGxpIHtcbiAgICAgICAgICB0ZXh0LWFsaWduOiAkZ2xvYmFsLXJpZ2h0O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIGlmICRhbGlnbm1lbnQgPT0gY2VudGVyIHtcbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGxpIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cbiAgICAgICAgLnN1Ym1lbnUgbGkge1xuICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgIC5zdWJtZW51IGxpIHtcbiAgICAgICAgdGV4dC1hbGlnbjogJGdsb2JhbC1sZWZ0O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLy8gU2V0cyB0aGUgZGlyZWN0aW9uIG9mIGEgTWVudS5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRkaXIgW2hvcml6b250YWxdIC0gRGlyZWN0aW9uIG9mIHRoZSBNZW51LiBDYW4gYmUgYGhvcml6b250YWxgIG9yIGB2ZXJ0aWNhbGAuXG5AbWl4aW4gbWVudS1kaXJlY3Rpb24oJGRpcjogaG9yaXpvbnRhbCkge1xuICBAaWYgJGRpciA9PSBob3Jpem9udGFsIHtcbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIGxpIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSBpZiAkZGlyID09IHZlcnRpY2FsIHtcbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgbGkge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIEB3YXJuICdUaGUgZGlyZWN0aW9uIHVzZWQgZm9yIG1lbnUtZGlyZWN0aW9uKCkgbXVzdCBiZSBob3Jpem9udGFsIG9yIHZlcnRpY2FsLic7XG4gIH1cbn1cblxuLy8vIENyZWF0ZXMgYSBzaW1wbGUgTWVudSwgd2hpY2ggaGFzIG5vIHBhZGRpbmcgb3IgaG92ZXIgc3RhdGUuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZGlyIFskZ2xvYmFsLWxlZnRdIC0gRGlyZWN0aW9uIG9mIHRoZSBtZW51LiBUaGlzIGVmZmVjdHMgdGhlIHNpZGUgb2YgdGhlIGA8bGk+YCB0aGF0IHJlY2VpdmVzIHRoZSBtYXJnaW4uXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRtYXJnaW4gWyRtZW51LXNpbXBsZS1tYXJnaW5dIC0gVGhlIG1hcmdpbiB0byBhcHBseSB0byBlYWNoIGA8bGk+YC5cbkBtaXhpbiBtZW51LXNpbXBsZSgkZGlyOiAkZ2xvYmFsLWxlZnQsICRtYXJnaW46ICRtZW51LXNpbXBsZS1tYXJnaW4pIHtcbiAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgfVxuXG4gIGxpICsgbGkge1xuICAgIG1hcmdpbi0jeyRkaXJ9OiAkbWFyZ2luO1xuICB9XG5cbiAgYSB7XG4gICAgcGFkZGluZzogMDtcbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgbmVzdGVkIE1lbnUsIGJ5IGFkZGluZyBgbWFyZ2luLWxlZnRgIHRvIHRoZSBtZW51LlxuLy8vIEBwYXJhbSB7S2V5d29yZHxOdW1iZXJ9ICRtYXJnaW4gWyRtZW51LW5lc3RlZC1tYXJnaW5dIC0gTGVuZ3RoIG9mIHRoZSBtYXJnaW4uXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkbmVzdGVkLWFsaWdubWVudCBbbGVmdF0gLSBBbGlnbm1lbnQgb2YgdGhlIG5lc3RlZCBjbGFzc1xuQG1peGluIG1lbnUtbmVzdGVkKFxuICAkbWFyZ2luOiAkbWVudS1uZXN0ZWQtbWFyZ2luLFxuICAkbmVzdGVkLWFsaWdubWVudDogbGVmdFxuKSB7XG4gIEBpZiAkbmVzdGVkLWFsaWdubWVudCA9PSByaWdodCB7XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06ICRtYXJnaW47XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogMDtcbiAgfVxuICBAZWxzZSB7XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06IDA7XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogJG1hcmdpbjtcbiAgfVxuXG59XG5cbi8vLyBBZGRzIGJhc2ljIHN0eWxlcyBmb3IgaWNvbnMgaW4gbWVudXMuXG5AbWl4aW4gbWVudS1pY29ucygpIHtcbiAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgYSB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgaW1nLFxuICAgIGksXG4gICAgc3ZnIHtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG5cbiAgICAgICsgc3BhbiB7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vLyBBZGRzIHBvc2l0aW9uIGNsYXNzZXMgZm9yIGljb25zIHdpdGhpbiBhIG1lbnUuXG5AbWl4aW4gbWVudS1pY29uLXBvc2l0aW9uKCRwb3NpdGlvbjogbGVmdCwgJHNwYWNpbmc6ICRtZW51LWljb24tc3BhY2luZykge1xuICBAaWYgJHBvc2l0aW9uID09IGxlZnQge1xuICAgIGxpIGEge1xuICAgICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICAgIGZsZXgtZmxvdzogcm93IG5vd3JhcDtcbiAgICAgIH1cblxuICAgICAgaW1nLFxuICAgICAgaSxcbiAgICAgIHN2ZyB7XG4gICAgICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAkc3BhY2luZztcblxuICAgICAgICBAaWYgbm90ICRnbG9iYWwtZmxleGJveCB7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIGlmICRwb3NpdGlvbiA9PSByaWdodCB7XG4gICAgbGkgYSB7XG4gICAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgICAgZmxleC1mbG93OiByb3cgbm93cmFwO1xuICAgICAgfVxuXG4gICAgICBpbWcsXG4gICAgICBpLFxuICAgICAgc3ZnIHtcbiAgICAgICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogJHNwYWNpbmc7XG5cbiAgICAgICAgQGlmIG5vdCAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSBpZiAkcG9zaXRpb24gPT0gdG9wIHtcbiAgICBsaSBhIHtcbiAgICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgICBmbGV4LWZsb3c6IGNvbHVtbiBub3dyYXA7XG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIH1cblxuICAgICAgaW1nLFxuICAgICAgaSxcbiAgICAgIHN2ZyB7XG4gICAgICAgIEBpZiBub3QgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBtYXJnaW46IDAgYXV0byAkc3BhY2luZztcbiAgICAgICAgfVxuICAgICAgICBAZWxzZSB7XG4gICAgICAgICAgYWxpZ24tc2VsZjogc3RyZXRjaDtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAkc3BhY2luZztcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2UgaWYgJHBvc2l0aW9uID09IGJvdHRvbSB7XG4gICAgbGkgYSB7XG4gICAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgICAgZmxleC1mbG93OiBjb2x1bW4gbm93cmFwO1xuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICB9XG5cbiAgICAgIGltZyxcbiAgICAgIGksXG4gICAgICBzdmcge1xuICAgICAgICBAaWYgbm90ICRnbG9iYWwtZmxleGJveCB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgbWFyZ2luOiAkc3BhY2luZyBhdXRvIDA7XG4gICAgICAgIH1cbiAgICAgICAgQGVsc2Uge1xuICAgICAgICAgIGFsaWduLXNlbGY6IHN0cmV0Y2g7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogJHNwYWNpbmc7XG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBtZW51LXRleHQge1xuICBwYWRkaW5nOiAkZ2xvYmFsLW1lbnUtcGFkZGluZztcblxuICBmb250LXdlaWdodDogYm9sZDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGNvbG9yOiBpbmhlcml0O1xufVxuXG5AbWl4aW4gbWVudS1zdGF0ZS1hY3RpdmUge1xuICBiYWNrZ3JvdW5kOiAkbWVudS1pdGVtLWJhY2tncm91bmQtYWN0aXZlO1xuICBjb2xvcjogJG1lbnUtaXRlbS1jb2xvci1hY3RpdmU7XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLW1lbnUge1xuICAubWVudSB7XG4gICAgQGluY2x1ZGUgbWVudS1iYXNlO1xuXG4gICAgLy8gRGVmYXVsdCBvcmllbnRhdGlvbjogaG9yaXpvbnRhbFxuICAgICYsICYuaG9yaXpvbnRhbCB7XG4gICAgICBAaW5jbHVkZSBtZW51LWRpcmVjdGlvbihob3Jpem9udGFsKTtcbiAgICB9XG5cbiAgICAvLyBWZXJ0aWNhbCBvcmllbnRhdGlvbiBtb2RpZmllclxuICAgICYudmVydGljYWwge1xuICAgICAgQGluY2x1ZGUgbWVudS1kaXJlY3Rpb24odmVydGljYWwpO1xuICAgIH1cblxuICAgIC8vIEV2ZW4td2lkdGggbW9kaWZpZXIgZm9yIGhvcml6b250YWwgb3JpZW50YXRpb25cbiAgICAmLmV4cGFuZGVkIHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtZXhwYW5kO1xuICAgIH1cblxuICAgIC8vIFNpbXBsZVxuICAgICYuc2ltcGxlIHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtc2ltcGxlO1xuICAgIH1cblxuICAgIC8vIEJyZWFrcG9pbnQgc3BlY2lmaWMgdmVyc2lvbnNcbiAgICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50KCRzbWFsbDogZmFsc2UpIHtcbiAgICAgICYuI3skLXpmLXNpemV9LWhvcml6b250YWwge1xuICAgICAgICBAaW5jbHVkZSBtZW51LWRpcmVjdGlvbihob3Jpem9udGFsKTtcbiAgICAgIH1cblxuICAgICAgJi4jeyQtemYtc2l6ZX0tdmVydGljYWwge1xuICAgICAgICBAaW5jbHVkZSBtZW51LWRpcmVjdGlvbih2ZXJ0aWNhbCk7XG4gICAgICB9XG5cbiAgICAgICYuI3skLXpmLXNpemV9LWV4cGFuZGVkIHtcbiAgICAgICAgQGluY2x1ZGUgbWVudS1leHBhbmQ7XG4gICAgICB9XG5cbiAgICAgICYuI3skLXpmLXNpemV9LXNpbXBsZSB7XG4gICAgICAgIEBpbmNsdWRlIG1lbnUtZXhwYW5kO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIE5lc3RpbmdcbiAgICAmLm5lc3RlZCB7XG4gICAgICBAaW5jbHVkZSBtZW51LW5lc3RlZDtcbiAgICB9XG5cbiAgICAvLyBJY29uIEJhc2UgU3R5bGVzXG4gICAgJi5pY29ucyB7XG4gICAgICBAaW5jbHVkZSBtZW51LWljb25zO1xuICAgIH1cblxuICAgIC8vIEJhY2t3YXJkIENvbXBhdGliaWxpdHkgZm9yIGFjdGl2ZSBzdGF0ZVxuICAgIEBpZiAkbWVudS1pY29ucy1iYWNrLWNvbXBhdCB7XG4gICAgICAmLmljb24tdG9wLFxuICAgICAgJi5pY29uLXJpZ2h0LFxuICAgICAgJi5pY29uLWJvdHRvbSxcbiAgICAgICYuaWNvbi1sZWZ0IHtcbiAgICAgICAgQGluY2x1ZGUgbWVudS1pY29ucztcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBJY29uIExlZnRcbiAgICAmLmljb24tbGVmdCB7XG4gICAgICBAaW5jbHVkZSBtZW51LWljb24tcG9zaXRpb24obGVmdCk7XG4gICAgfVxuXG4gICAgLy8gSWNvbiBSaWdodFxuICAgICYuaWNvbi1yaWdodCB7XG4gICAgICBAaW5jbHVkZSBtZW51LWljb24tcG9zaXRpb24ocmlnaHQpO1xuICAgIH1cblxuICAgIC8vIEljb24gVG9wXG4gICAgJi5pY29uLXRvcCB7XG4gICAgICBAaW5jbHVkZSBtZW51LWljb24tcG9zaXRpb24odG9wKTtcbiAgICB9XG5cbiAgICAvLyBJY29uIEJvdHRvbVxuICAgICYuaWNvbi1ib3R0b20ge1xuICAgICAgQGluY2x1ZGUgbWVudS1pY29uLXBvc2l0aW9uKGJvdHRvbSk7XG4gICAgfVxuXG4gICAgLy8gQWN0aXZlIHN0YXRlXG4gICAgLmlzLWFjdGl2ZSA+IGEge1xuICAgICAgQGluY2x1ZGUgbWVudS1zdGF0ZS1hY3RpdmU7XG4gICAgfVxuICAgIFxuICAgIC8vIEJhY2t3YXJkIENvbXBhdGliaWxpdHkgZm9yIGFjdGl2ZSBzdGF0ZVxuICAgIEBpZiAkbWVudS1zdGF0ZS1iYWNrLWNvbXBhdCB7XG4gICAgICAuYWN0aXZlID4gYSB7XG4gICAgICAgIEBpbmNsdWRlIG1lbnUtc3RhdGUtYWN0aXZlO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIEFsaWduIGxlZnRcbiAgICAmLmFsaWduLSN7JGdsb2JhbC1sZWZ0fSB7XG4gICAgICBAaW5jbHVkZSBtZW51LWFsaWduKGxlZnQpO1xuICAgIH1cblxuICAgIC8vIEFsaWduIHJpZ2h0XG4gICAgJi5hbGlnbi0jeyRnbG9iYWwtcmlnaHR9IHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtYWxpZ24ocmlnaHQpO1xuXG4gICAgICAubmVzdGVkIHtcbiAgICAgICAgQGluY2x1ZGUgbWVudS1uZXN0ZWQoJG5lc3RlZC1hbGlnbm1lbnQ6IHJpZ2h0KTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBBbGlnbiBjZW50ZXJcbiAgICAmLmFsaWduLWNlbnRlciB7XG4gICAgICBAaW5jbHVkZSBtZW51LWFsaWduKGNlbnRlcik7XG4gICAgfVxuXG4gICAgLm1lbnUtdGV4dCB7XG4gICAgICBAaW5jbHVkZSBtZW51LXRleHQ7XG4gICAgfVxuICB9XG5cbiAgQGlmICRtZW51LWNlbnRlcmVkLWJhY2stY29tcGF0IHtcbiAgICAubWVudS1jZW50ZXJlZCB7XG4gICAgICA+IC5tZW51IHtcbiAgICAgICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIEBpbmNsdWRlIG1lbnUtYWxpZ24oY2VudGVyKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBQcmV2ZW50IEZPVUMgd2hlbiB1c2luZyB0aGUgUmVzcG9uc2l2ZSBNZW51IHBsdWdpblxuICAubm8tanMgW2RhdGEtcmVzcG9uc2l2ZS1tZW51XSB1bCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuIiwiQG1peGluIGZvdW5kYXRpb24tbWVudS1pY29uIHtcbiAgLm1lbnUtaWNvbiB7XG4gICAgQGluY2x1ZGUgaGFtYnVyZ2VyKCRjb2xvcjogJHRpdGxlYmFyLWljb24tY29sb3IsICRjb2xvci1ob3ZlcjogJHRpdGxlYmFyLWljb24tY29sb3ItaG92ZXIpO1xuICB9XG5cbiAgLm1lbnUtaWNvbi5kYXJrIHtcbiAgICBAaW5jbHVkZSBoYW1idXJnZXI7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGRyaWxsZG93blxuLy8vL1xuXG4vLy8gVHJhbnNpdGlvbiBwcm9wZXJ0eSB0byB1c2UgZm9yIGFuaW1hdGluZyBtZW51cy5cbi8vLyBAdHlwZSBUcmFuc2l0aW9uXG4kZHJpbGxkb3duLXRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjE1cyBsaW5lYXIgIWRlZmF1bHQ7XG5cbi8vLyBBZGRzIGFycm93cyB0byBkcmlsbGRvd24gaXRlbXMgd2l0aCBzdWJtZW51cywgYXMgd2VsbCBhcyB0aGUgYmFjayBidXR0b24uXG4vLy8gQHR5cGUgQm9vbGVhblxuJGRyaWxsZG93bi1hcnJvd3M6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBTZXRzIGRyaWxsZG93biBtZW51IGl0ZW0gcGFkZGluZy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRkcmlsbGRvd24tcGFkZGluZzogJGdsb2JhbC1tZW51LXBhZGRpbmcgIWRlZmF1bHQ7XG5cbi8vLyBTZXRzIGRyaWxsZG93biBtZW51IG5lc3RlZCBtYXJnaW5cbi8vLyBAdHlwZSBOdW1iZXJcbiRkcmlsbGRvd24tbmVzdGVkLW1hcmdpbjogMCAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3IgZm9yIGRyaWxsZG93biB0b3AgbGV2ZWwgaXRlbXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRkcmlsbGRvd24tYmFja2dyb3VuZDogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBkcmlsbGRvd24gbWVudSBpdGVtIHBhZGRpbmcgaW4gdGhlIHN1Ym1lbnUuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZHJpbGxkb3duLXN1Ym1lbnUtcGFkZGluZzogJGRyaWxsZG93bi1wYWRkaW5nICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBmb3IgZHJpbGxkb3duIHN1Ym1lbnVzLlxuLy8vIEB0eXBlIENvbG9yXG4kZHJpbGxkb3duLXN1Ym1lbnUtYmFja2dyb3VuZDogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBkcmlsbGRvd24gYXJyb3cgY29sb3IgaWYgYXJyb3cgaXMgdXNlZC5cbi8vLyBAdHlwZSBDb2xvclxuJGRyaWxsZG93bi1hcnJvdy1jb2xvcjogJHByaW1hcnktY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBTZXRzIGRyaWxsZG93biBhcnJvdyBzaXplIGlmIGFycm93IGlzIHVzZWQuXG4vLy8gQHR5cGUgTGVuZ3RoXG4kZHJpbGxkb3duLWFycm93LXNpemU6IDZweCAhZGVmYXVsdDtcblxuQG1peGluIHpmLWRyaWxsZG93bi1sZWZ0LXJpZ2h0LWFycm93cyB7XG4gIC5pcy1kcmlsbGRvd24tc3VibWVudS1wYXJlbnQgPiBhIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAmOjphZnRlciB7XG4gICAgICBAaW5jbHVkZSBjc3MtdHJpYW5nbGUoJGRyaWxsZG93bi1hcnJvdy1zaXplLCAkZHJpbGxkb3duLWFycm93LWNvbG9yLCAkZ2xvYmFsLXJpZ2h0KTtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgbWFyZ2luLXRvcDogLTEgKiAkZHJpbGxkb3duLWFycm93LXNpemU7XG4gICAgICAjeyRnbG9iYWwtcmlnaHR9OiAxcmVtO1xuICAgIH1cbiAgfVxuXG4gICYuYWxpZ24tbGVmdCAuaXMtZHJpbGxkb3duLXN1Ym1lbnUtcGFyZW50ID4gYTo6YWZ0ZXIge1xuICAgIEBpbmNsdWRlIGNzcy10cmlhbmdsZSgkZHJvcGRvd25tZW51LWFycm93LXNpemUsICRkcm9wZG93bm1lbnUtYXJyb3ctY29sb3IsIHJpZ2h0KTtcbiAgICByaWdodDogMXJlbTtcbiAgICBsZWZ0OiBhdXRvO1xuICB9XG5cbiAgJi5hbGlnbi1yaWdodCAuaXMtZHJpbGxkb3duLXN1Ym1lbnUtcGFyZW50ID4gYTo6YWZ0ZXIge1xuICAgIEBpbmNsdWRlIGNzcy10cmlhbmdsZSgkZHJvcGRvd25tZW51LWFycm93LXNpemUsICRkcm9wZG93bm1lbnUtYXJyb3ctY29sb3IsIGxlZnQpO1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDFyZW07XG4gIH1cblxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1kcmlsbGRvd24tbWVudSB7XG4gIC8vIEFwcGxpZWQgdG8gdGhlIE1lbnUgY29udGFpbmVyXG4gIC5pcy1kcmlsbGRvd24ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgbGkge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuXG4gICAgJi5hbmltYXRlLWhlaWdodCB7XG4gICAgICB0cmFuc2l0aW9uOiBoZWlnaHQgMC41cztcbiAgICB9XG4gIH1cblxuICAvLyBUaGUgdG9wIGxldmVsIDx1bD5cbiAgLmRyaWxsZG93biB7XG4gICAgYSB7XG4gICAgICBwYWRkaW5nOiAkZHJpbGxkb3duLXBhZGRpbmc7XG4gICAgICBiYWNrZ3JvdW5kOiAkZHJpbGxkb3duLWJhY2tncm91bmQ7XG4gICAgfVxuXG4gICAgLy8gQXBwbGllZCB0byBzdWJtZW51IDx1bD5zXG4gICAgLmlzLWRyaWxsZG93bi1zdWJtZW51IHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgICN7JGdsb2JhbC1sZWZ0fTogMTAwJTtcbiAgICAgIHotaW5kZXg6IC0xO1xuXG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGJhY2tncm91bmQ6ICRkcmlsbGRvd24tc3VibWVudS1iYWNrZ3JvdW5kO1xuICAgICAgdHJhbnNpdGlvbjogJGRyaWxsZG93bi10cmFuc2l0aW9uO1xuXG4gICAgICAmLmlzLWFjdGl2ZSB7XG4gICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoaWYoJGdsb2JhbC10ZXh0LWRpcmVjdGlvbiA9PSBsdHIsIC0xMDAlLCAxMDAlKSk7XG4gICAgICB9XG5cbiAgICAgICYuaXMtY2xvc2luZyB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWChpZigkZ2xvYmFsLXRleHQtZGlyZWN0aW9uID09IGx0ciwgMTAwJSwgLTEwMCUpKTtcbiAgICAgIH1cblxuICAgICAgLy8gU3VibWVudSBpdGVtIHBhZGRpbmdcbiAgICAgIGEge1xuICAgICAgICBwYWRkaW5nOiAkZHJpbGxkb3duLXN1Ym1lbnUtcGFkZGluZztcbiAgICAgIH1cbiAgICB9XG5cbiAgICAubmVzdGVkLmlzLWRyaWxsZG93bi1zdWJtZW51IHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtbmVzdGVkKCRkcmlsbGRvd24tbmVzdGVkLW1hcmdpbik7XG4gICAgfVxuXG4gICAgLmRyaWxsZG93bi1zdWJtZW51LWNvdmVyLXByZXZpb3VzIHtcbiAgICAgIG1pbi1oZWlnaHQ6IDEwMCU7XG4gICAgfVxuXG4gICAgQGlmICRkcmlsbGRvd24tYXJyb3dzIHtcbiAgICAgIEBpbmNsdWRlIHpmLWRyaWxsZG93bi1sZWZ0LXJpZ2h0LWFycm93cztcblxuICAgICAgLmpzLWRyaWxsZG93bi1iYWNrID4gYTo6YmVmb3JlIHtcbiAgICAgICAgQGluY2x1ZGUgY3NzLXRyaWFuZ2xlKCRkcmlsbGRvd24tYXJyb3ctc2l6ZSwgJGRyaWxsZG93bi1hcnJvdy1jb2xvciwgJGdsb2JhbC1sZWZ0KTtcbiAgICAgICAgYm9yZGVyLSN7JGdsb2JhbC1sZWZ0fS13aWR0aDogMDtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogMC43NXJlbTsgLy8gQ3JlYXRlcyBzcGFjZSBiZXR3ZWVuIHRoZSBhcnJvdyBhbmQgdGhlIHRleHRcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGRyb3Bkb3duLW1lbnVcbi8vLy9cblxuLy8vIEVuYWJsZXMgYXJyb3dzIGZvciBpdGVtcyB3aXRoIGRyb3Bkb3duIG1lbnVzLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRkcm9wZG93bm1lbnUtYXJyb3dzOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBkcm9wZG93biBtZW51IGFycm93IGNvbG9yIGlmIGFycm93IGlzIHVzZWQuXG4vLy8gQHR5cGUgQ29sb3JcbiRkcm9wZG93bm1lbnUtYXJyb3ctY29sb3I6ICRhbmNob3ItY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBTZXRzIGRyb3Bkb3duIG1lbnUgYXJyb3cgc2l6ZSBpZiBhcnJvdyBpcyB1c2VkLlxuLy8vIEB0eXBlIExlbmd0aFxuJGRyb3Bkb3dubWVudS1hcnJvdy1zaXplOiA2cHggIWRlZmF1bHQ7XG5cbi8vLyBTZXRzIGRyb3Bkb3duIG1lbnUgYXJyb3cgcGFkZGluZyBmb3IgYWxpZ25pbmcgdGhlIGFycm93IGNvcnJlY3RseS5cbi8vLyBAdHlwZSBMZW5ndGhcbiRkcm9wZG93bm1lbnUtYXJyb3ctcGFkZGluZzogMS41cmVtICFkZWZhdWx0O1xuXG4vLy8gTWluaW11bSB3aWR0aCBvZiBkcm9wZG93biBzdWItbWVudXMuXG4vLy8gQHR5cGUgTGVuZ3RoXG4kZHJvcGRvd25tZW51LW1pbi13aWR0aDogMjAwcHggIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIGZvciB0b3AgbGV2ZWwgaXRlbXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRkcm9wZG93bm1lbnUtYmFja2dyb3VuZDogbnVsbCAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3IgZm9yIGRyb3Bkb3ducy5cbi8vLyBAdHlwZSBDb2xvclxuJGRyb3Bkb3dubWVudS1zdWJtZW51LWJhY2tncm91bmQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIFBhZGRpbmcgZm9yIHRvcCBsZXZlbCBpdGVtcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRkcm9wZG93bm1lbnUtcGFkZGluZzogJGdsb2JhbC1tZW51LXBhZGRpbmcgIWRlZmF1bHQ7XG5cbi8vLyBTZXRzIGRyb3Bkb3duIG1lbnUgbmVzdGVkIG1hcmdpblxuLy8vIEB0eXBlIE51bWJlclxuJGRyb3Bkb3dubWVudS1uZXN0ZWQtbWFyZ2luOiAwICFkZWZhdWx0O1xuXG4vLy8gUGFkZGluZyBmb3Igc3ViLW1lbnUgaXRlbXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZHJvcGRvd25tZW51LXN1Ym1lbnUtcGFkZGluZzogJGRyb3Bkb3dubWVudS1wYWRkaW5nICFkZWZhdWx0O1xuXG4vLy8gQm9yZGVyIGZvciBkcm9wZG93biBzdWItbWVudXMuXG4vLy8gQHR5cGUgTGlzdFxuJGRyb3Bkb3dubWVudS1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vIEJvcmRlciB3aWR0aCBmb3IgZHJvcGRvd24gc3ViLW1lbnVzLlxuLy8gVXNlZCB0byBhZGp1c3QgdG9wIG1hcmdpbiBvZiBhIHN1Yi1tZW51IGlmIGEgYm9yZGVyIGlzIHVzZWQuXG4vLyBAdHlwZSBMZW5ndGhcbiRkcm9wZG93bm1lbnUtYm9yZGVyLXdpZHRoOiBudGgoJGRyb3Bkb3dubWVudS1ib3JkZXIsIDEpO1xuXG4vLy8gVGV4dCBjb2xvciBvZiBhbiBhY3RpdmUgZHJvcGRvd24gbWVudSBpdGVtLiBFeHBsaWNpdCBvdmVycmlkZSBmb3IgbWVudSBkZWZhdWx0c1xuLy8vIEB0eXBlIENvbG9yXG4kZHJvcGRvd24tbWVudS1pdGVtLWNvbG9yLWFjdGl2ZTogZ2V0LWNvbG9yKHByaW1hcnkpICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvZiBhbiBhY3RpdmUgZHJvcGRvd24gbWVudSBpdGVtLiBFeHBsaWNpdCBvdmVycmlkZSBmb3IgbWVudSBkZWZhdWx0c1xuLy8vIEB0eXBlIENvbG9yXG4kZHJvcGRvd24tbWVudS1pdGVtLWJhY2tncm91bmQtYWN0aXZlOiB0cmFuc3BhcmVudCAhZGVmYXVsdDtcblxuQG1peGluIHpmLWRyb3Bkb3duLWxlZnQtcmlnaHQtYXJyb3dzIHtcbiAgPiBhOjphZnRlciB7XG4gICAgI3skZ2xvYmFsLXJpZ2h0fTogMTRweDtcbiAgfVxuXG4gICYub3BlbnMtbGVmdCA+IGE6OmFmdGVyIHtcbiAgICBAaW5jbHVkZSBjc3MtdHJpYW5nbGUoJGRyb3Bkb3dubWVudS1hcnJvdy1zaXplLCAkZHJvcGRvd25tZW51LWFycm93LWNvbG9yLCBsZWZ0KTtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiA1cHg7XG4gIH1cblxuICAmLm9wZW5zLXJpZ2h0ID4gYTo6YWZ0ZXIge1xuICAgIEBpbmNsdWRlIGNzcy10cmlhbmdsZSgkZHJvcGRvd25tZW51LWFycm93LXNpemUsICRkcm9wZG93bm1lbnUtYXJyb3ctY29sb3IsIHJpZ2h0KTtcbiAgfVxufVxuXG5AbWl4aW4gZHJvcGRvd24tbWVudS1kaXJlY3Rpb24oJGRpcjogaG9yaXpvbnRhbCkge1xuICBAaWYgJGRpciA9PSBob3Jpem9udGFsIHtcbiAgICA+IGxpLm9wZW5zLWxlZnQgeyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIG5vLXF1YWxpZnlpbmctZWxlbWVudHNcbiAgICAgID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgICAgICB0b3A6IDEwMCU7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgfVxuICAgIH1cblxuICAgID4gbGkub3BlbnMtcmlnaHQgeyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIG5vLXF1YWxpZnlpbmctZWxlbWVudHNcbiAgICAgID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgICAgICB0b3A6IDEwMCU7XG4gICAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgfVxuICAgIH1cblxuICAgIEBpZiAkZHJvcGRvd25tZW51LWFycm93cyB7XG4gICAgICA+IGxpLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50ID4gYSB7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgbm8tcXVhbGlmeWluZy1lbGVtZW50c1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHBhZGRpbmctI3skZ2xvYmFsLXJpZ2h0fTogJGRyb3Bkb3dubWVudS1hcnJvdy1wYWRkaW5nO1xuICAgICAgfVxuXG4gICAgICA+IGxpLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50ID4gYTo6YWZ0ZXIgeyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIG5vLXF1YWxpZnlpbmctZWxlbWVudHNcbiAgICAgICAgQGluY2x1ZGUgY3NzLXRyaWFuZ2xlKCRkcm9wZG93bm1lbnUtYXJyb3ctc2l6ZSwgJGRyb3Bkb3dubWVudS1hcnJvdy1jb2xvciwgZG93bik7XG4gICAgICAgICN7JGdsb2JhbC1yaWdodH06IDVweDtcbiAgICAgICAgI3skZ2xvYmFsLWxlZnR9OiBhdXRvO1xuICAgICAgICBtYXJnaW4tdG9wOiAtMSAqICgkZHJvcGRvd25tZW51LWFycm93LXNpemUgLyAyKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2UgaWYgJGRpciA9PSB2ZXJ0aWNhbCB7XG4gICAgPiBsaSB7XG4gICAgICAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgICAgIHRvcDogMDtcbiAgICAgIH1cblxuICAgICAgJi5vcGVucy1sZWZ0IHtcbiAgICAgICAgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgIHJpZ2h0OiAxMDAlO1xuICAgICAgICAgIGxlZnQ6IGF1dG87XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi5vcGVucy1yaWdodCB7XG4gICAgICAgID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgICAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgICAgIGxlZnQ6IDEwMCU7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgQGlmICRkcm9wZG93bm1lbnUtYXJyb3dzIHtcbiAgICAgICAgQGluY2x1ZGUgemYtZHJvcGRvd24tbGVmdC1yaWdodC1hcnJvd3M7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICBAd2FybiAnVGhlIGRpcmVjdGlvbiB1c2VkIGZvciBkcm9wZG93bi1tZW51LWRpcmVjdGlvbigpIG11c3QgYmUgaG9yaXpvbnRhbCBvciB2ZXJ0aWNhbC4nO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWRyb3Bkb3duLW1lbnUge1xuICAuZHJvcGRvd24ubWVudSB7XG4gICAgQGluY2x1ZGUgZHJvcGRvd24tbWVudS1kaXJlY3Rpb24oaG9yaXpvbnRhbCk7XG5cbiAgICBhIHtcbiAgICAgIEBpbmNsdWRlIGRpc2FibGUtbW91c2Utb3V0bGluZTtcbiAgICB9XG5cbiAgICAvLyBUb3AtbGV2ZWwgaXRlbVxuICAgID4gbGkgPiBhIHtcbiAgICAgIGJhY2tncm91bmQ6ICRkcm9wZG93bm1lbnUtYmFja2dyb3VuZDtcbiAgICAgIHBhZGRpbmc6ICRkcm9wZG93bm1lbnUtcGFkZGluZztcbiAgICB9XG5cbiAgICAvLyBUb3AtbGV2ZWwgaXRlbSBhY3RpdmUgc3RhdGVcbiAgICA+IGxpLmlzLWFjdGl2ZSA+IGEge1xuICAgICAgYmFja2dyb3VuZDogJGRyb3Bkb3duLW1lbnUtaXRlbS1iYWNrZ3JvdW5kLWFjdGl2ZTtcbiAgICAgIGNvbG9yOiAkZHJvcGRvd24tbWVudS1pdGVtLWNvbG9yLWFjdGl2ZTtcbiAgICB9XG5cbiAgICAubm8tanMgJiB1bCB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgIC5uZXN0ZWQuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgICBAaW5jbHVkZSBtZW51LW5lc3RlZCgkZHJvcGRvd25tZW51LW5lc3RlZC1tYXJnaW4pO1xuICAgIH1cblxuICAgICYudmVydGljYWwge1xuICAgICAgQGluY2x1ZGUgZHJvcGRvd24tbWVudS1kaXJlY3Rpb24odmVydGljYWwpO1xuICAgIH1cblxuICAgIEBlYWNoICRzaXplIGluICRicmVha3BvaW50LWNsYXNzZXMge1xuICAgICAgQGlmICRzaXplICE9ICQtemYtemVyby1icmVha3BvaW50IHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc2l6ZSkge1xuICAgICAgICAgICYuI3skc2l6ZX0taG9yaXpvbnRhbCB7XG4gICAgICAgICAgICBAaW5jbHVkZSBkcm9wZG93bi1tZW51LWRpcmVjdGlvbihob3Jpem9udGFsKTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmLiN7JHNpemV9LXZlcnRpY2FsIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGRyb3Bkb3duLW1lbnUtZGlyZWN0aW9uKHZlcnRpY2FsKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmFsaWduLXJpZ2h0IHtcbiAgICAgIC5pcy1kcm9wZG93bi1zdWJtZW51LmZpcnN0LXN1YiB7XG4gICAgICAgIHRvcDogMTAwJTtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIGxlZnQ6IGF1dG87XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmlzLWRyb3Bkb3duLW1lbnUudmVydGljYWwge1xuICAgIHdpZHRoOiAxMDBweDtcblxuICAgICYuYWxpZ24tcmlnaHQge1xuICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgIH1cbiAgfVxuXG4gIC5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgYTo6YWZ0ZXIge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiA1MCU7XG4gICAgICAjeyRnbG9iYWwtcmlnaHR9OiA1cHg7XG4gICAgICAjeyRnbG9iYWwtbGVmdH06IGF1dG87XG4gICAgICBtYXJnaW4tdG9wOiAtMSAqICRkcm9wZG93bm1lbnUtYXJyb3ctc2l6ZTtcbiAgICB9XG5cbiAgICAmLm9wZW5zLWlubmVyID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuXG4gICAgICB0b3A6IDEwMCU7XG4gICAgICBAaWYgJGdsb2JhbC10ZXh0LWRpcmVjdGlvbiA9PSAncnRsJyB7XG4gICAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgfVxuICAgIH1cblxuICAgICYub3BlbnMtbGVmdCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICAgIHJpZ2h0OiAxMDAlO1xuICAgICAgbGVmdDogYXV0bztcbiAgICB9XG5cbiAgICAmLm9wZW5zLXJpZ2h0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICBsZWZ0OiAxMDAlO1xuICAgIH1cbiAgfVxuXG4gIC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgICN7JGdsb2JhbC1sZWZ0fTogMTAwJTtcbiAgICB6LWluZGV4OiAxO1xuXG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBtaW4td2lkdGg6ICRkcm9wZG93bm1lbnUtbWluLXdpZHRoO1xuXG4gICAgYm9yZGVyOiAkZHJvcGRvd25tZW51LWJvcmRlcjtcbiAgICBiYWNrZ3JvdW5kOiAkZHJvcGRvd25tZW51LXN1Ym1lbnUtYmFja2dyb3VuZDtcblxuICAgIC5kcm9wZG93biAmIGEge1xuICAgICAgcGFkZGluZzogJGRyb3Bkb3dubWVudS1zdWJtZW51LXBhZGRpbmc7XG4gICAgfVxuXG4gICAgLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50IHtcbiAgICAgIEBpZiAkZHJvcGRvd25tZW51LWFycm93cyB7XG4gICAgICAgIEBpbmNsdWRlIHpmLWRyb3Bkb3duLWxlZnQtcmlnaHQtYXJyb3dzO1xuICAgICAgfVxuICAgIH1cblxuICAgIEBpZiAodHlwZS1vZigkZHJvcGRvd25tZW51LWJvcmRlci13aWR0aCkgPT0gJ251bWJlcicpIHtcbiAgICAgIC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICAgICAgbWFyZ2luLXRvcDogKC0kZHJvcGRvd25tZW51LWJvcmRlci13aWR0aCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgPiBsaSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICAvLyBbVE9ET10gQ3V0IGJhY2sgc3BlY2lmaWNpdHlcbiAgICAvLyY6bm90KC5qcy1kcm9wZG93bi1ub2hvdmVyKSA+IC5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudDpob3ZlciA+ICYsIC8vIHdoeSBpcyB0aGlzIGxpbmUgbmVlZGVkPyBPcGVuaW5nIGlzIGhhbmRsZWQgYnkgSlMgYW5kIHRoaXMgY2F1c2VzIHNvbWUgdWdseSBmbGlja2VyaW5nIHdoZW4gdGhlIHN1YiBpcyByZS1wb3NpdGlvbmVkIGF1dG9tYXRpY2FsbHkuLi5cbiAgICAmLmpzLWRyb3Bkb3duLWFjdGl2ZSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHJlc3BvbnNpdmUtZW1iZWRcbi8vLy9cblxuLy8vIE1hcmdpbiBiZWxvdyBhIHJlc3BvbnNpdmUgZW1iZWQgY29udGFpbmVyLlxuLy8vIEB0eXBlIE51bWJlclxuJHJlc3BvbnNpdmUtZW1iZWQtbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTYpICFkZWZhdWx0O1xuXG4vLy8gQXNwZWN0IHJhdGlvcyB1c2VkIHRvIGRldGVybWluZSBwYWRkaW5nLWJvdHRvbSBvZiByZXNwb25zaXZlIGVtYmVkIGNvbnRhaW5lcnMuXG4vLy8gQHR5cGUgTWFwXG4kcmVzcG9uc2l2ZS1lbWJlZC1yYXRpb3M6IChcbiAgZGVmYXVsdDogNCBieSAzLFxuICB3aWRlc2NyZWVuOiAxNiBieSA5LFxuKSAhZGVmYXVsdDtcblxuLy8vIENyZWF0ZXMgYSByZXNwb25zaXZlIGVtYmVkIGNvbnRhaW5lci5cbi8vLyBAcGFyYW0ge1N0cmluZ3xMaXN0fSAkcmF0aW8gW2RlZmF1bHRdIC0gUmF0aW8gb2YgdGhlIGNvbnRhaW5lci4gQ2FuIGJlIGEga2V5IGZyb20gdGhlIGAkcmVzcG9uc2l2ZS1lbWJlZC1yYXRpb3NgIG1hcCBvciBhIGxpc3QgZm9ybWF0dGVkIGFzIGB4IGJ5IHlgLlxuQG1peGluIHJlc3BvbnNpdmUtZW1iZWQoJHJhdGlvOiBkZWZhdWx0KSB7XG4gIEBpZiB0eXBlLW9mKCRyYXRpbykgPT0gJ3N0cmluZycge1xuICAgICRyYXRpbzogbWFwLWdldCgkcmVzcG9uc2l2ZS1lbWJlZC1yYXRpb3MsICRyYXRpbyk7XG4gIH1cbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBoZWlnaHQ6IDA7XG4gIG1hcmdpbi1ib3R0b206ICRyZXNwb25zaXZlLWVtYmVkLW1hcmdpbi1ib3R0b207XG4gIHBhZGRpbmctYm90dG9tOiByYXRpby10by1wZXJjZW50YWdlKCRyYXRpbyk7XG4gIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgaWZyYW1lLFxuICBvYmplY3QsXG4gIGVtYmVkLFxuICB2aWRlbyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICAjeyRnbG9iYWwtbGVmdH06IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXJlc3BvbnNpdmUtZW1iZWQge1xuICAucmVzcG9uc2l2ZS1lbWJlZCxcbiAgLmZsZXgtdmlkZW8ge1xuICAgIEBpbmNsdWRlIHJlc3BvbnNpdmUtZW1iZWQoJHJhdGlvOiBkZWZhdWx0KTtcblxuICAgICRyYXRpb3M6IG1hcC1yZW1vdmUoJHJlc3BvbnNpdmUtZW1iZWQtcmF0aW9zLGRlZmF1bHQpO1xuXG4gICAgQGVhY2ggJG5hbWUsICRyYXRpbyBpbiAkcmF0aW9zIHtcbiAgICAgICYuI3skbmFtZX0ge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogcmF0aW8tdG8tcGVyY2VudGFnZSgkcmF0aW8pO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZnVuY3Rpb25zXG4vLy8vXG5cbi8vLyBGaW5kcyB0aGUgZ3JlYXRlc3QgY29tbW9uIGRpdmlzb3Igb2YgdHdvIGludGVnZXJzLlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRhIC0gRmlyc3QgbnVtYmVyIHRvIGNvbXBhcmUuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRiIC0gU2Vjb25kIG51bWJlciB0byBjb21wYXJlLlxuLy8vXG4vLy8gQHJldHVybnMge051bWJlcn0gVGhlIGdyZWF0ZXN0IGNvbW1vbiBkaXZpc29yLlxuQGZ1bmN0aW9uIGdjZCgkYSwgJGIpIHtcbiAgLy8gRnJvbTogaHR0cDovL3Jvc2V0dGFjb2RlLm9yZy93aWtpL0dyZWF0ZXN0X2NvbW1vbl9kaXZpc29yI0phdmFTY3JpcHRcbiAgQGlmICgkYiAhPSAwKSB7XG4gICAgQHJldHVybiBnY2QoJGIsICRhICUgJGIpO1xuICB9XG4gIEBlbHNlIHtcbiAgICBAcmV0dXJuIGFicygkYSk7XG4gIH1cbn1cblxuLy8vIEhhbmRsZXMgZGVjaW1hbCBleHBvbmVudHMgYnkgdHJ5aW5nIHRvIGNvbnZlcnQgdGhlbSBpbnRvIGEgZnJhY3Rpb24gYW5kIHRoZW4gdXNlIGEgbnRoLXJvb3QtYWxnb3JpdGhtIGZvciBwYXJ0cyBvZiB0aGUgY2FsY3VsYXRpb25cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkYmFzZSAtIFRoZSBiYXNlIG51bWJlci5cbi8vLyBAcGFyYW0ge051bWJlcn0gJGV4cG9uZW50IC0gVGhlIGV4cG9uZW50LlxuLy8vXG4vLy8gQHJldHVybnMge051bWJlcn0gVGhlIHByb2R1Y3Qgb2YgdGhlIGV4cG9uZW50aWF0aW9uLlxuQGZ1bmN0aW9uIHBvdygkYmFzZSwgJGV4cG9uZW50LCAkcHJlYzogMTYpIHtcbiAgQGlmIChmbG9vcigkZXhwb25lbnQpICE9ICRleHBvbmVudCkge1xuICAgICRwcmVjMiA6IHBvdygxMCwgJHByZWMpO1xuICAgICRleHBvbmVudDogcm91bmQoJGV4cG9uZW50ICogJHByZWMyKTtcbiAgICAkZGVub21pbmF0b3I6IGdjZCgkZXhwb25lbnQsICRwcmVjMik7XG4gICAgQHJldHVybiBudGgtcm9vdChwb3coJGJhc2UsICRleHBvbmVudCAvICRkZW5vbWluYXRvciksICRwcmVjMiAvICRkZW5vbWluYXRvciwgJHByZWMpO1xuICB9XG5cbiAgJHZhbHVlOiAkYmFzZTtcbiAgQGlmICRleHBvbmVudCA+IDEge1xuICAgIEBmb3IgJGkgZnJvbSAyIHRocm91Z2ggJGV4cG9uZW50IHtcbiAgICAgICR2YWx1ZTogJHZhbHVlICogJGJhc2U7XG4gICAgfVxuICB9XG4gIEBlbHNlIGlmICRleHBvbmVudCA8IDEge1xuICAgIEBmb3IgJGkgZnJvbSAwIHRocm91Z2ggLSRleHBvbmVudCB7XG4gICAgICAkdmFsdWU6ICR2YWx1ZSAvICRiYXNlO1xuICAgIH1cbiAgfVxuXG4gIEByZXR1cm4gJHZhbHVlO1xufVxuXG5AZnVuY3Rpb24gbnRoLXJvb3QoJG51bSwgJG46IDIsICRwcmVjOiAxMikge1xuICAvLyBGcm9tOiBodHRwOi8vcm9zZXR0YWNvZGUub3JnL3dpa2kvTnRoX3Jvb3QjSmF2YVNjcmlwdFxuICAkeDogMTtcblxuICBAZm9yICRpIGZyb20gMCB0aHJvdWdoICRwcmVjIHtcbiAgICAkeDogMSAvICRuICogKCgkbiAtIDEpICogJHggKyAoJG51bSAvIHBvdygkeCwgJG4gLSAxKSkpO1xuICB9XG5cbiAgQHJldHVybiAkeDtcbn1cblxuLy8vIENhbGN1bGF0ZXMgdGhlIGhlaWdodCBhcyBhIHBlcmNlbnRhZ2Ugb2YgdGhlIHdpZHRoIGZvciBhIGdpdmVuIHJhdGlvLlxuLy8vIEBwYXJhbSB7TGlzdH0gJHJhdGlvIC0gUmF0aW8gdG8gdXNlIHRvIGNhbGN1bGF0ZSB0aGUgaGVpZ2h0LCBmb3JtYXR0ZWQgYXMgYHggYnkgeWAuXG4vLy8gQHJldHVybiB7TnVtYmVyfSBBIHBlcmNlbnRhZ2UgdmFsdWUgZm9yIHRoZSBoZWlnaHQgcmVsYXRpdmUgdG8gdGhlIHdpZHRoIG9mIGEgcmVzcG9uc2l2ZSBjb250YWluZXIuXG5AZnVuY3Rpb24gcmF0aW8tdG8tcGVyY2VudGFnZSgkcmF0aW8pIHtcbiAgJHc6IG50aCgkcmF0aW8sIDEpO1xuICAkaDogbnRoKCRyYXRpbywgMyk7XG4gIEByZXR1cm4gJGggLyAkdyAqIDEwMCU7XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBtZWRpYS1vYmplY3Rcbi8vLy9cblxuLy8vIEJvdHRvbSBtYXJnaW4gb2YgYSBtZWRpYSBvYmplY3QuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbWVkaWFvYmplY3QtbWFyZ2luLWJvdHRvbTogJGdsb2JhbC1tYXJnaW4gIWRlZmF1bHQ7XG5cbi8vLyBMZWZ0IGFuZCByaWdodCBwYWRkaW5nIG9uIHNlY3Rpb25zIHdpdGhpbiBhIG1lZGlhIG9iamVjdC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRtZWRpYW9iamVjdC1zZWN0aW9uLXBhZGRpbmc6ICRnbG9iYWwtcGFkZGluZyAhZGVmYXVsdDtcblxuLy8vIFdpZHRoIG9mIGltYWdlcyB3aXRoaW4gYSBtZWRpYSBvYmplY3QsIHdoZW4gdGhlIG9iamVjdCBpcyBzdGFja2VkIHZlcnRpY2FsbHkuIFNldCB0byAnYXV0bycgdG8gdXNlIHRoZSBpbWFnZSdzIG5hdHVyYWwgd2lkdGguXG4vLy8gQHR5cGUgTnVtYmVyXG4kbWVkaWFvYmplY3QtaW1hZ2Utd2lkdGgtc3RhY2tlZDogMTAwJSAhZGVmYXVsdDtcblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhIG1lZGlhIG9iamVjdCBjb250YWluZXIuXG5AbWl4aW4gbWVkaWEtb2JqZWN0LWNvbnRhaW5lciB7XG4gIGRpc3BsYXk6IGlmKCRnbG9iYWwtZmxleGJveCwgZmxleCwgYmxvY2spO1xuICBtYXJnaW4tYm90dG9tOiAkbWVkaWFvYmplY3QtbWFyZ2luLWJvdHRvbTtcblxuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgfVxuXG4gIGltZyB7XG4gICAgbWF4LXdpZHRoOiBub25lO1xuICB9XG5cbiAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgJi5zdGFjay1mb3ItI3skLXpmLXplcm8tYnJlYWtwb2ludH0ge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkLXpmLXplcm8tYnJlYWtwb2ludCBvbmx5KSB7XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciBzZWN0aW9ucyB3aXRoaW4gYSBtZWRpYSBvYmplY3QuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRwYWRkaW5nIFskbWVkaWFvYmplY3Qtc2VjdGlvbi1wYWRkaW5nXSAtIFBhZGRpbmcgYmV0d2VlbiBzZWN0aW9ucy5cbkBtaXhpbiBtZWRpYS1vYmplY3Qtc2VjdGlvbigkcGFkZGluZzogJG1lZGlhb2JqZWN0LXNlY3Rpb24tcGFkZGluZykge1xuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICBmbGV4OiAwIDEgYXV0bztcbiAgfVxuICBAZWxzZSB7XG4gICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICB9XG5cbiAgJjpmaXJzdC1jaGlsZCB7XG4gICAgcGFkZGluZy0jeyRnbG9iYWwtcmlnaHR9OiAkcGFkZGluZztcbiAgfVxuXG4gICY6bGFzdC1jaGlsZDpub3QoOm50aC1jaGlsZCgyKSkge1xuICAgIHBhZGRpbmctI3skZ2xvYmFsLWxlZnR9OiAkcGFkZGluZztcbiAgfVxuXG4gID4gOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cblxuICAuc3RhY2stZm9yLSN7JC16Zi16ZXJvLWJyZWFrcG9pbnR9ICYge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJC16Zi16ZXJvLWJyZWFrcG9pbnQgb25seSkge1xuICAgICAgQGluY2x1ZGUgbWVkaWEtb2JqZWN0LXN0YWNrO1xuICAgIH1cbiAgfVxuXG4gIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICYubWFpbi1zZWN0aW9uIHtcbiAgICAgIGZsZXg6IDEgMSAwcHg7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgemVyby11bml0XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICAmLm1pZGRsZSB7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIH1cblxuICAgICYuYm90dG9tIHtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBib3R0b207XG4gICAgfVxuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyB0byBzdGFjayBzZWN0aW9ucyBvZiBhIG1lZGlhIG9iamVjdC4gQXBwbHkgdGhpcyB0byB0aGUgc2VjdGlvbiBlbGVtZW50cywgbm90IHRoZSBjb250YWluZXIuXG5AbWl4aW4gbWVkaWEtb2JqZWN0LXN0YWNrIHtcbiAgcGFkZGluZzogMDtcbiAgcGFkZGluZy1ib3R0b206ICRtZWRpYW9iamVjdC1zZWN0aW9uLXBhZGRpbmc7XG5cbiAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgZmxleC1iYXNpczogMTAwJTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gIH1cbiAgQGVsc2Uge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG5cbiAgaW1nIHtcbiAgICB3aWR0aDogJG1lZGlhb2JqZWN0LWltYWdlLXdpZHRoLXN0YWNrZWQ7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tbWVkaWEtb2JqZWN0IHtcbiAgLm1lZGlhLW9iamVjdCB7XG4gICAgQGluY2x1ZGUgbWVkaWEtb2JqZWN0LWNvbnRhaW5lcjtcbiAgfVxuXG4gIC5tZWRpYS1vYmplY3Qtc2VjdGlvbiB7XG4gICAgQGluY2x1ZGUgbWVkaWEtb2JqZWN0LXNlY3Rpb247XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIG9mZi1jYW52YXNcbi8vLy9cblxuLy8vIFdpZHRoIG1hcCBvZiBhIGxlZnQvcmlnaHQgb2ZmLWNhbnZhcyBwYW5lbC5cbi8vLyBAdHlwZSBNYXBcbiRvZmZjYW52YXMtc2l6ZXM6IChcbiAgc21hbGw6IDI1MHB4LFxuKSAhZGVmYXVsdDtcblxuLy8vIEhlaWdodCBtYXAgb2YgYSB0b3AvYm90dG9tIG9mZi1jYW52YXMgcGFuZWwuXG4vLy8gQHR5cGUgTWFwXG4kb2ZmY2FudmFzLXZlcnRpY2FsLXNpemVzOiAoXG4gIHNtYWxsOiAyNTBweCxcbikgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIGFuIG9mZi1jYW52YXMgcGFuZWwuXG4vLy8gQHR5cGUgQ29sb3JcbiRvZmZjYW52YXMtYmFja2dyb3VuZDogJGxpZ2h0LWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBCb3ggc2hhZG93IGZvciB0aGUgb2ZmLWNhbnZhcyBvdmVybGFwIHBhbmVsLlxuLy8vIEB0eXBlIFNoYWRvd1xuJG9mZmNhbnZhcy1zaGFkb3c6IDAgMCAxMHB4IHJnYmEoJGJsYWNrLCAwLjcpICFkZWZhdWx0O1xuXG4vLy8gSW5uZXIgYm94IHNoYWRvdyBzaXplIGZvciB0aGUgb2ZmLWNhbnZhcyBwdXNoIHBhbmVsLlxuLy8vIEB0eXBlIE51bWJlclxuJG9mZmNhbnZhcy1pbm5lci1zaGFkb3ctc2l6ZTogMjBweCAhZGVmYXVsdDtcblxuLy8vIElubmVyIGJveCBzaGFkb3cgY29sb3IgZm9yIHRoZSBvZmYtY2FudmFzIHB1c2ggcGFuZWwuXG4vLy8gQHR5cGUgQ29sb3JcbiRvZmZjYW52YXMtaW5uZXItc2hhZG93LWNvbG9yOiByZ2JhKCRibGFjaywgMC4yNSkgIWRlZmF1bHQ7XG5cbi8vLyBaLWluZGV4IG9mIGFuIG9mZi1jYW52YXMgY29udGVudCBvdmVybGF5LlxuLy8vIEB0eXBlIE51bWJlclxuJG9mZmNhbnZhcy1vdmVybGF5LXppbmRleDogMTEgIWRlZmF1bHQ7XG5cbi8vLyBaLWluZGV4IG9mIGFuIG9mZi1jYW52YXMgcGFuZWwgd2l0aCB0aGUgYHB1c2hgIHRyYW5zaXRpb24uXG4vLy8gQHR5cGUgTnVtYmVyXG4kb2ZmY2FudmFzLXB1c2gtemluZGV4OiAxMiAhZGVmYXVsdDtcblxuLy8vIFotaW5kZXggb2YgYW4gb2ZmLWNhbnZhcyBwYW5lbCB3aXRoIHRoZSBgb3ZlcmxhcGAgdHJhbnNpdGlvbi5cbi8vLyBAdHlwZSBOdW1iZXJcbiRvZmZjYW52YXMtb3ZlcmxhcC16aW5kZXg6IDEzICFkZWZhdWx0O1xuXG4vLy8gWi1pbmRleCBvZiBhbiBvZmYtY2FudmFzIHBhbmVsIHVzaW5nIHRoZSBgcmV2ZWFsLWZvci0qYCBjbGFzc2VzIG9yIG1peGluLlxuLy8vIEB0eXBlIE51bWJlclxuJG9mZmNhbnZhcy1yZXZlYWwtemluZGV4OiAxMiAhZGVmYXVsdDtcblxuLy8vIExlbmd0aCBvZiB0aGUgYW5pbWF0aW9uIG9uIGFuIG9mZi1jYW52YXMgcGFuZWwuXG4vLy8gQHR5cGUgTnVtYmVyXG4kb2ZmY2FudmFzLXRyYW5zaXRpb24tbGVuZ3RoOiAwLjVzICFkZWZhdWx0O1xuXG4vLy8gVGltaW5nIGZ1bmN0aW9uIG9mIHRoZSBhbmltYXRpb24gb24gYW4gb2ZmLWNhbnZhcyBwYW5lbC5cbi8vLyBAdHlwZSBLZXl3b3JkXG4kb2ZmY2FudmFzLXRyYW5zaXRpb24tdGltaW5nOiBlYXNlICFkZWZhdWx0O1xuXG4vLy8gSWYgYHRydWVgLCBhIHJldmVhbGVkIG9mZi1jYW52YXMgd2lsbCBiZSBmaXhlZC1wb3NpdGlvbiwgYW5kIHNjcm9sbCB3aXRoIHRoZSBzY3JlZW4uXG4vLy8gQHR5cGUgQm9vbFxuJG9mZmNhbnZhcy1maXhlZC1yZXZlYWw6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIGZvciB0aGUgb3ZlcmxheSB0aGF0IGFwcGVhcnMgd2hlbiBhbiBvZmYtY2FudmFzIHBhbmVsIGlzIG9wZW4uXG4vLy8gQHR5cGUgQ29sb3JcbiRvZmZjYW52YXMtZXhpdC1iYWNrZ3JvdW5kOiByZ2JhKCR3aGl0ZSwgMC4yNSkgIWRlZmF1bHQ7XG5cbi8vLyBDU1MgY2xhc3MgdXNlZCBmb3IgdGhlIG1haW4gY29udGVudCBhcmVhLiBUaGUgb2ZmLWNhbnZhcyBtaXhpbnMgdXNlIHRoaXMgdG8gdGFyZ2V0IHRoZSBwYWdlIGNvbnRlbnQuXG4kbWFpbmNvbnRlbnQtY2xhc3M6ICdvZmYtY2FudmFzLWNvbnRlbnQnICFkZWZhdWx0O1xuXG4vLy8gQWRkcyBiYXNlbGluZSBzdHlsZXMgZm9yIG9mZi1jYW52YXMuIFRoaXMgQ1NTIGlzIHJlcXVpcmVkIHRvIG1ha2UgdGhlIG90aGVyIHBpZWNlcyB3b3JrLlxuQG1peGluIG9mZi1jYW52YXMtYmFzaWNzIHtcblxuICAvLy8gVHJhbnNmb3JtIGRlcHJlY2F0ZWQgc2l6ZSBzZXR0aW5ncyBpbnRvIG1hcCAmIHNob3cgd2FybmluZ1xuICBAaWYgdmFyaWFibGUtZXhpc3RzKG9mZmNhbnZhcy1zaXplKSB7XG4gICAgJG9mZmNhbnZhcy1zaXplczogKHNtYWxsOiAkb2ZmY2FudmFzLXNpemUsIG1lZGl1bTogJG9mZmNhbnZhcy1zaXplKSAhZ2xvYmFsO1xuICAgIEB3YXJuICckb2ZmY2FudmFzLXNpemUgaXMgZGVwcmVjYXRlZCBhbmQgbm90IHVzZWQgYW55bW9yZSEgUGxlYXNlIHVwZGF0ZSB5b3VyIHNldHRpbmdzIGFuZCB1c2UgdGhlIG1hcCAkb2ZmY2FudmFzLXNpemVzIGluc3RlYWQnO1xuICB9XG4gIEBpZiB2YXJpYWJsZS1leGlzdHMob2ZmY2FudmFzLXZlcnRpY2FsLXNpemUpIHtcbiAgICAkb2ZmY2FudmFzLXZlcnRpY2FsLXNpemVzOiAoc21hbGw6ICRvZmZjYW52YXMtdmVydGljYWwtc2l6ZSwgbWVkaXVtOiAkb2ZmY2FudmFzLXZlcnRpY2FsLXNpemUpICFnbG9iYWw7XG4gICAgQHdhcm4gJyRvZmZjYW52YXMtdmVydGljYWwtc2l6ZSBpcyBkZXByZWNhdGVkIGFuZCBub3QgdXNlZCBhbnltb3JlISBQbGVhc2UgdXBkYXRlIHlvdXIgc2V0dGluZ3MgYW5kIHVzZSB0aGUgbWFwICRvZmZjYW52YXMtdmVydGljYWwtc2l6ZXMgaW5zdGVhZCc7XG4gIH1cblxuICAvLyBDaGVja3MgdGhlIHotaW5kZXhlcyBhbmQgaW5jcmVhc2UgdGhlbSBkdWUgdG8gYmFja3dhcmRzIGNvbXBhdGliaWxpdHkuXG4gIC8vIFRoaXMgaXMgbmVjZXNzYXJ5IGJlY2F1c2UgdGhlIG92ZXJsYXkncyB6LWluZGV4IGlzIG5ldyBzaW5jZSB2Ni40IGFuZCBtYXkgYmUgaWRlbnRpY2FsIHRvIHRoZSB1c2VyIGN1c3RvbSBzZXR0aW5ncyBvZiB0aGUgcHVzaCB6LWluZGV4LlxuICBAaWYgJG9mZmNhbnZhcy1wdXNoLXppbmRleCA8PSAkb2ZmY2FudmFzLW92ZXJsYXktemluZGV4IHsgJG9mZmNhbnZhcy1wdXNoLXppbmRleDogJG9mZmNhbnZhcy1vdmVybGF5LXppbmRleCArIDEgIWdsb2JhbDsgfVxuICBAaWYgJG9mZmNhbnZhcy1vdmVybGFwLXppbmRleCA8PSAkb2ZmY2FudmFzLXB1c2gtemluZGV4IHsgJG9mZmNhbnZhcy1vdmVybGFwLXppbmRleDogJG9mZmNhbnZhcy1wdXNoLXppbmRleCArIDEgIWdsb2JhbDsgfVxuICBAaWYgJG9mZmNhbnZhcy1yZXZlYWwtemluZGV4IDw9ICRvZmZjYW52YXMtb3ZlcmxheS16aW5kZXggeyAkb2ZmY2FudmFzLXJldmVhbC16aW5kZXg6ICRvZmZjYW52YXMtb3ZlcmxheS16aW5kZXggKyAxICFnbG9iYWw7IH1cblxuICAvLyBIaWRlcyBvdmVyZmxvdyBvbiBib2R5IHdoZW4gYW4gb2ZmLWNhbnZhcyBwYW5lbCBpcyBvcGVuLlxuICAuaXMtb2ZmLWNhbnZhcy1vcGVuIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICB9XG5cbiAgLy8gT2ZmLWNhbnZhcyBvdmVybGF5IChnZW5lcmF0ZWQgYnkgSmF2YVNjcmlwdClcbiAgLmpzLW9mZi1jYW52YXMtb3ZlcmxheSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHotaW5kZXg6ICRvZmZjYW52YXMtb3ZlcmxheS16aW5kZXg7XG5cbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG5cbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5ICRvZmZjYW52YXMtdHJhbnNpdGlvbi1sZW5ndGggJG9mZmNhbnZhcy10cmFuc2l0aW9uLXRpbWluZywgdmlzaWJpbGl0eSAkb2ZmY2FudmFzLXRyYW5zaXRpb24tbGVuZ3RoICRvZmZjYW52YXMtdHJhbnNpdGlvbi10aW1pbmc7XG5cbiAgICBiYWNrZ3JvdW5kOiAkb2ZmY2FudmFzLWV4aXQtYmFja2dyb3VuZDtcblxuICAgIG9wYWNpdHk6IDA7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgICYuaXMtdmlzaWJsZSB7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICB9XG5cbiAgICAmLmlzLWNsb3NhYmxlIHtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB9XG5cbiAgICAmLmlzLW92ZXJsYXktYWJzb2x1dGUge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIH1cblxuICAgICYuaXMtb3ZlcmxheS1maXhlZCB7XG4gICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgfVxuICB9XG59XG5cbi8vIEFkZHMgYmFzaWMgc3R5bGVzIGZvciBhbiBvZmYtY2FudmFzIHdyYXBwZXIuXG5AbWl4aW4gb2ZmLWNhbnZhcy13cmFwcGVyKCkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi8vLyBBZGRzIGJhc2ljIHN0eWxlcyBmb3IgYW4gb2ZmLWNhbnZhcyBwYW5lbC5cbkBtaXhpbiBvZmYtY2FudmFzLWJhc2UoXG4gICRiYWNrZ3JvdW5kOiAkb2ZmY2FudmFzLWJhY2tncm91bmQsXG4gICR0cmFuc2l0aW9uOiAkb2ZmY2FudmFzLXRyYW5zaXRpb24tbGVuZ3RoICRvZmZjYW52YXMtdHJhbnNpdGlvbi10aW1pbmcsXG4gICRmaXhlZDogdHJ1ZVxuKSB7XG4gIEBpbmNsdWRlIGRpc2FibGUtbW91c2Utb3V0bGluZTtcblxuICBAaWYgJGZpeGVkID09IHRydWUge1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgfVxuICBAZWxzZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICB9XG5cbiAgLy8gU2V0IHRoZSBvZmYtY2FudmFzIHotaW5kZXguXG4gIHotaW5kZXg6ICRvZmZjYW52YXMtcHVzaC16aW5kZXg7XG5cbiAgLy8gSW5jcmVhc2UgQ1NTIHNwZWNpZmljaXR5XG4gICYuaXMtdHJhbnNpdGlvbi1wdXNoIHtcbiAgICB6LWluZGV4OiAkb2ZmY2FudmFzLXB1c2gtemluZGV4O1xuICB9XG5cbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtICR0cmFuc2l0aW9uO1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG5cbiAgYmFja2dyb3VuZDogJGJhY2tncm91bmQ7XG5cbiAgLy8gSGlkZSBpbmFjdGl2ZSBvZmYtY2FudmFzIHdpdGhpbiB0aGUgY29udGVudCB0aGF0IGhhdmUgdGhlIHNhbWUgcG9zaXRpb25cbiAgJi5pcy1jbG9zZWQge1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgfVxuXG4gIC8vIE92ZXJsYXAgb25seSBzdHlsZXMuXG4gICYuaXMtdHJhbnNpdGlvbi1vdmVybGFwIHtcbiAgICB6LWluZGV4OiAkb2ZmY2FudmFzLW92ZXJsYXAtemluZGV4O1xuXG4gICAgJi5pcy1vcGVuIHtcbiAgICAgIGJveC1zaGFkb3c6ICRvZmZjYW52YXMtc2hhZG93O1xuICAgIH1cbiAgfVxuXG4gIC8vIFNldHMgdHJhbnNmb3JtIHRvIDAgdG8gc2hvdyBhbiBvZmYtY2FudmFzIHBhbmVsLlxuICAmLmlzLW9wZW4ge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyB0byBwb3NpdGlvbiBhbiBvZmYtY2FudmFzIHBhbmVsIHRvIHRoZSBsZWZ0L3JpZ2h0L3RvcC9ib3R0b20uXG5AbWl4aW4gb2ZmLWNhbnZhcy1wb3NpdGlvbihcbiAgJHBvc2l0aW9uOiBsZWZ0LFxuICAkb3JpZW50YXRpb246IGhvcml6b250YWwsXG4gICRzaXplczogaWYoJG9yaWVudGF0aW9uID09IGhvcml6b250YWwsICRvZmZjYW52YXMtc2l6ZXMsICRvZmZjYW52YXMtdmVydGljYWwtc2l6ZXMpXG4pIHtcbiAgQGlmICRwb3NpdGlvbiA9PSBsZWZ0IHtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgb3ZlcmZsb3cteTogYXV0bztcblxuICAgIEBlYWNoICRuYW1lLCAkc2l6ZSBpbiAkc2l6ZXMge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbmFtZSkge1xuICAgICAgICB3aWR0aDogJHNpemU7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtJHNpemUpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIFNldHMgdGhlIHBvc2l0aW9uIGZvciBuZXN0ZWQgb2ZmLWNhbnZhcyBlbGVtZW50XG4gICAgQGF0LXJvb3QgLiN7JG1haW5jb250ZW50LWNsYXNzfSAub2ZmLWNhbnZhcy5wb3NpdGlvbi0jeyRwb3NpdGlvbn0ge1xuXG4gICAgICBAZWFjaCAkbmFtZSwgJHNpemUgaW4gJHNpemVzIHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbmFtZSkge1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtJHNpemUpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAmLmlzLXRyYW5zaXRpb24tb3ZlcmxhcC5pcy1vcGVuIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gU2V0cyB0aGUgb3BlbiBwb3NpdGlvbiBmb3IgdGhlIGNvbnRlbnRcbiAgICBAYXQtcm9vdCAuI3skbWFpbmNvbnRlbnQtY2xhc3N9LmlzLW9wZW4tI3skcG9zaXRpb259IHtcbiAgICAgICYuaGFzLXRyYW5zaXRpb24tcHVzaCB7XG4gICAgICAgIEBlYWNoICRuYW1lLCAkc2l6ZSBpbiAkc2l6ZXMge1xuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG5hbWUpIHtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgkc2l6ZSk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIGlmICRwb3NpdGlvbiA9PSByaWdodCB7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xuXG4gICAgQGVhY2ggJG5hbWUsICRzaXplIGluICRzaXplcyB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRuYW1lKSB7XG4gICAgICAgIHdpZHRoOiAkc2l6ZTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKCRzaXplKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBTZXRzIHRoZSBwb3NpdGlvbiBmb3IgbmVzdGVkIG9mZi1jYW52YXMgZWxlbWVudFxuICAgIEBhdC1yb290IC4jeyRtYWluY29udGVudC1jbGFzc30gLm9mZi1jYW52YXMucG9zaXRpb24tI3skcG9zaXRpb259IHtcblxuICAgICAgQGVhY2ggJG5hbWUsICRzaXplIGluICRzaXplcyB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG5hbWUpIHtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoJHNpemUpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAmLmlzLXRyYW5zaXRpb24tb3ZlcmxhcC5pcy1vcGVuIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gU2V0cyB0aGUgb3BlbiBwb3NpdGlvbiBmb3IgdGhlIGNvbnRlbnRcbiAgICBAYXQtcm9vdCAuI3skbWFpbmNvbnRlbnQtY2xhc3N9LmlzLW9wZW4tI3skcG9zaXRpb259IHtcbiAgICAgICYuaGFzLXRyYW5zaXRpb24tcHVzaCB7XG4gICAgICAgIEBlYWNoICRuYW1lLCAkc2l6ZSBpbiAkc2l6ZXMge1xuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG5hbWUpIHtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtJHNpemUpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSBpZiAkcG9zaXRpb24gPT0gdG9wIHtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBvdmVyZmxvdy14OiBhdXRvO1xuXG4gICAgQGVhY2ggJG5hbWUsICRzaXplIGluICRzaXplcyB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRuYW1lKSB7XG4gICAgICAgIGhlaWdodDogJHNpemU7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtJHNpemUpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIFNldHMgdGhlIHBvc2l0aW9uIGZvciBuZXN0ZWQgb2ZmLWNhbnZhcyBlbGVtZW50XG4gICAgQGF0LXJvb3QgLiN7JG1haW5jb250ZW50LWNsYXNzfSAub2ZmLWNhbnZhcy5wb3NpdGlvbi0jeyRwb3NpdGlvbn0ge1xuICAgICAgQGVhY2ggJG5hbWUsICRzaXplIGluICRzaXplcyB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG5hbWUpIHtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLSRzaXplKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgJi5pcy10cmFuc2l0aW9uLW92ZXJsYXAuaXMtb3BlbiB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIFNldHMgdGhlIG9wZW4gcG9zaXRpb24gZm9yIHRoZSBjb250ZW50XG4gICAgQGF0LXJvb3QgLiN7JG1haW5jb250ZW50LWNsYXNzfS5pcy1vcGVuLSN7JHBvc2l0aW9ufSB7XG4gICAgICAmLmhhcy10cmFuc2l0aW9uLXB1c2gge1xuICAgICAgICBAZWFjaCAkbmFtZSwgJHNpemUgaW4gJHNpemVzIHtcbiAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRuYW1lKSB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoJHNpemUpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSBpZiAkcG9zaXRpb24gPT0gYm90dG9tIHtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBvdmVyZmxvdy14OiBhdXRvO1xuXG4gICAgQGVhY2ggJG5hbWUsICRzaXplIGluICRzaXplcyB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRuYW1lKSB7XG4gICAgICAgIGhlaWdodDogJHNpemU7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgkc2l6ZSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gU2V0cyB0aGUgcG9zaXRpb24gZm9yIG5lc3RlZCBvZmYtY2FudmFzIGVsZW1lbnRcbiAgICBAYXQtcm9vdCAuI3skbWFpbmNvbnRlbnQtY2xhc3N9IC5vZmYtY2FudmFzLnBvc2l0aW9uLSN7JHBvc2l0aW9ufSB7XG4gICAgICBAZWFjaCAkbmFtZSwgJHNpemUgaW4gJHNpemVzIHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbmFtZSkge1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgkc2l6ZSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICYuaXMtdHJhbnNpdGlvbi1vdmVybGFwLmlzLW9wZW4ge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBTZXRzIHRoZSBvcGVuIHBvc2l0aW9uIGZvciB0aGUgY29udGVudFxuICAgIEBhdC1yb290IC4jeyRtYWluY29udGVudC1jbGFzc30uaXMtb3Blbi0jeyRwb3NpdGlvbn0ge1xuICAgICAgJi5oYXMtdHJhbnNpdGlvbi1wdXNoIHtcbiAgICAgICAgQGVhY2ggJG5hbWUsICRzaXplIGluICRzaXplcyB7XG4gICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbmFtZSkge1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0kc2l6ZSk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gSWYgJG9mZmNhbnZhcy1pbm5lci1zaGFkb3ctc2l6ZSBpcyBzZXQsIGFkZCBpbm5lciBib3gtc2hhZG93LlxuICAvLyBUaGlzIG1pbWljcyB0aGUgb2ZmLWNhbnZhcyBwYW5lbCBoYXZpbmcgYSBsb3dlciB6LWluZGV4LCB3aXRob3V0IGhhdmluZyB0byBoYXZlIG9uZS5cbiAgQGlmICRvZmZjYW52YXMtaW5uZXItc2hhZG93LXNpemUge1xuICAgICYuaXMtdHJhbnNpdGlvbi1wdXNoIHtcbiAgICAgIEBpZiAkcG9zaXRpb24gPT0gbGVmdCB7XG4gICAgICAgIEBpbmNsdWRlIGlubmVyLXNpZGUtc2hhZG93KHJpZ2h0LCAkb2ZmY2FudmFzLWlubmVyLXNoYWRvdy1zaXplLCAkb2ZmY2FudmFzLWlubmVyLXNoYWRvdy1jb2xvcik7XG4gICAgICB9XG4gICAgICBAZWxzZSBpZiAkcG9zaXRpb24gPT0gcmlnaHQge1xuICAgICAgICBAaW5jbHVkZSBpbm5lci1zaWRlLXNoYWRvdyhsZWZ0LCAkb2ZmY2FudmFzLWlubmVyLXNoYWRvdy1zaXplLCAkb2ZmY2FudmFzLWlubmVyLXNoYWRvdy1jb2xvcik7XG4gICAgICB9XG4gICAgICBAZWxzZSBpZiAkcG9zaXRpb24gPT0gdG9wIHtcbiAgICAgICAgQGluY2x1ZGUgaW5uZXItc2lkZS1zaGFkb3coYm90dG9tLCAkb2ZmY2FudmFzLWlubmVyLXNoYWRvdy1zaXplLCAkb2ZmY2FudmFzLWlubmVyLXNoYWRvdy1jb2xvcik7XG4gICAgICB9XG4gICAgICBAZWxzZSBpZiAkcG9zaXRpb24gPT0gYm90dG9tIHtcbiAgICAgICAgQGluY2x1ZGUgaW5uZXItc2lkZS1zaGFkb3codG9wLCAkb2ZmY2FudmFzLWlubmVyLXNoYWRvdy1zaXplLCAkb2ZmY2FudmFzLWlubmVyLXNoYWRvdy1jb2xvcik7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbn1cblxuLy8vIFNldHMgdGhlIHN0eWxlcyBmb3IgdGhlIGNvbnRlbnQgY29udGFpbmVyLlxuQG1peGluIG9mZi1jYW52YXMtY29udGVudCgpIHtcbiAgdHJhbnNmb3JtOiBub25lO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gJG9mZmNhbnZhcy10cmFuc2l0aW9uLWxlbmd0aCAkb2ZmY2FudmFzLXRyYW5zaXRpb24tdGltaW5nO1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG5cbiAgLy8gVHJhbnNmb3JtIHNjb3BlIHVudGlsIHRoZSBlbGVtZW50IGlzIGNsb3NlZCAobWFrZXMgc3VyZSB0cmFuc2l0aW9uZW5kIGdldHMgdHJpZ2dlcmVkKVxuICAmLmhhcy10cmFuc2l0aW9uLXB1c2gge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xuICB9XG5cbiAgLy8gQ29uc2lkZXIgZWxlbWVudCAmIGNvbnRlbnQsIG5lc3RlZCBpbiBhbm90aGVyIGNvbnRlbnRcbiAgLm9mZi1jYW52YXMuaXMtb3BlbiB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIHRoYXQgcmV2ZWFsIGFuIG9mZi1jYW52YXMgcGFuZWwuXG5AbWl4aW4gb2ZmLWNhbnZhcy1yZXZlYWwoXG4kcG9zaXRpb246IGxlZnQsXG4kemluZGV4OiAkb2ZmY2FudmFzLXJldmVhbC16aW5kZXgsXG4kY29udGVudDogJG1haW5jb250ZW50LWNsYXNzLFxuJGJyZWFrcG9pbnQ6IHNtYWxsXG4pIHtcbiAgdHJhbnNmb3JtOiBub25lO1xuICB6LWluZGV4OiAkemluZGV4O1xuICB0cmFuc2l0aW9uOiBub25lO1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuXG4gIEBpZiBub3QgJG9mZmNhbnZhcy1maXhlZC1yZXZlYWwge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgfVxuXG4gIC5jbG9zZS1idXR0b24ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAvLyBDb25zaWRlciByZXZlYWxlZCBlbGVtZW50IGlzIG5lc3RlZCBpbiBjb250ZW50XG4gIC4jeyRtYWluY29udGVudC1jbGFzc30gJiB7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICB9XG5cbiAgQGF0LXJvb3QgLiN7JGNvbnRlbnR9Lmhhcy1yZXZlYWwtI3skcG9zaXRpb259IHtcbiAgICBtYXJnaW4tI3skcG9zaXRpb259OiAtemYtZ2V0LWJwLXZhbCgkb2ZmY2FudmFzLXNpemVzLCAkYnJlYWtwb2ludCk7XG4gIH1cblxuICAvLyBiYWNrd2FyZHMgY29tcGF0aWJpbGl0eSAocHJpb3IgdG8gdjYuNClcbiAgJiB+IC4jeyRjb250ZW50fSB7XG4gICAgbWFyZ2luLSN7JHBvc2l0aW9ufTogLXpmLWdldC1icC12YWwoJG9mZmNhbnZhcy1zaXplcywgJGJyZWFrcG9pbnQpO1xuICB9XG59XG5cbi8vLyBPdmVycmlkZXMgdGhlIG9mZi1jYW52YXMgc3R5bGVzXG5AbWl4aW4gaW4tY2FudmFzKCkge1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICBoZWlnaHQ6IGF1dG87XG4gIHBvc2l0aW9uOiBzdGF0aWM7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIHdpZHRoOiBhdXRvO1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgdHJhbnNpdGlvbjogbm9uZTtcblxuICAvLyBJbmNyZWFzZSBDU1Mgc3BlY2lmaWNpdHlcbiAgJi5wb3NpdGlvbi1sZWZ0LFxuICAmLnBvc2l0aW9uLXJpZ2h0LFxuICAmLnBvc2l0aW9uLXRvcCxcbiAgJi5wb3NpdGlvbi1ib3R0b20ge1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICB9XG5cbiAgLmNsb3NlLWJ1dHRvbiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1vZmYtY2FudmFzIHtcbiAgQGluY2x1ZGUgb2ZmLWNhbnZhcy1iYXNpY3M7XG5cbiAgLy8gT2ZmLWNhbnZhcyB3cmFwcGVyXG4gIC5vZmYtY2FudmFzLXdyYXBwZXIge1xuICAgIEBpbmNsdWRlIG9mZi1jYW52YXMtd3JhcHBlcjtcbiAgfVxuXG4gIC8vIE9mZi1jYW52YXMgY29udGFpbmVyXG4gIC5vZmYtY2FudmFzIHtcbiAgICBAaW5jbHVkZSBvZmYtY2FudmFzLWJhc2U7XG5cbiAgICAvLyBGb3JjZSBwb3NpdGlvbiBhYnNvbHV0ZSBmb3IgbmVzdGVkIG9mZi1jYW52YXMgYmVjYXVzZSBmaXhlZCBkb2Vzbid0IHdvcmsgZm9yIHB1c2ggdHJhbnNpdGlvbiB3aXRoaW4gdGhlIHRyYW5zZm9ybSBzY29wZS5cbiAgICBAYXQtcm9vdCAuI3skbWFpbmNvbnRlbnQtY2xhc3N9ICYge1xuICAgICAgLy8gTk9URTogc2luY2Ugb3ZlcmxhcCB0cmFuc2l0aW9uIGlzIGN1cnJlbnRseSBmb3JjZWQgaWYgbmVzdGVkLCB0aGVyZSdzIG5vIG5lZWQgdG8gZm9yY2UgcG9zaXRpb24gYWJzb2x1dGUgdW50aWwgbmVzdGVkIHB1c2ggdHJhbnNpdGlvbiBpcyBzdXBwb3J0ZWQuXG4gICAgICAvLyBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgfVxuICB9XG5cbiAgLy8gT2ZmLWNhbnZhcyBjb250YWluZXIgd2l0aCBhYnNvbHV0ZSBwb3NpdGlvblxuICAub2ZmLWNhbnZhcy1hYnNvbHV0ZSB7XG4gICAgQGluY2x1ZGUgb2ZmLWNhbnZhcy1iYXNlKCRmaXhlZDogZmFsc2UpO1xuICB9XG5cbiAgLy8gT2ZmLWNhbnZhcyBwb3NpdGlvbiBjbGFzc2VzXG4gIC5wb3NpdGlvbi1sZWZ0ICAgIHsgQGluY2x1ZGUgb2ZmLWNhbnZhcy1wb3NpdGlvbihsZWZ0LCAgIGhvcml6b250YWwpOyB9XG4gIC5wb3NpdGlvbi1yaWdodCAgIHsgQGluY2x1ZGUgb2ZmLWNhbnZhcy1wb3NpdGlvbihyaWdodCwgIGhvcml6b250YWwpOyB9XG4gIC5wb3NpdGlvbi10b3AgICAgIHsgQGluY2x1ZGUgb2ZmLWNhbnZhcy1wb3NpdGlvbih0b3AsICAgIHZlcnRpY2FsKTsgfVxuICAucG9zaXRpb24tYm90dG9tICB7IEBpbmNsdWRlIG9mZi1jYW52YXMtcG9zaXRpb24oYm90dG9tLCB2ZXJ0aWNhbCk7IH1cblxuICAub2ZmLWNhbnZhcy1jb250ZW50IHtcbiAgICBAaW5jbHVkZSBvZmYtY2FudmFzLWNvbnRlbnQ7XG4gIH1cblxuICAvLyBSZXZlYWwgb2ZmLWNhbnZhcyBwYW5lbCBvbiBsYXJnZXIgc2NyZWVuc1xuICBAZWFjaCAkbmFtZSwgJHZhbHVlIGluICRicmVha3BvaW50LWNsYXNzZXMge1xuICAgIEBpZiAkbmFtZSAhPSAkLXpmLXplcm8tYnJlYWtwb2ludCB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRuYW1lKSB7XG4gICAgICAgIC5wb3NpdGlvbi1sZWZ0LnJldmVhbC1mb3ItI3skbmFtZX0ge1xuICAgICAgICAgIEBpbmNsdWRlIG9mZi1jYW52YXMtcmV2ZWFsKGxlZnQsICRvZmZjYW52YXMtcmV2ZWFsLXppbmRleCwgJG1haW5jb250ZW50LWNsYXNzLCAkbmFtZSk7XG4gICAgICAgIH1cblxuICAgICAgICAucG9zaXRpb24tcmlnaHQucmV2ZWFsLWZvci0jeyRuYW1lfSB7XG4gICAgICAgICAgQGluY2x1ZGUgb2ZmLWNhbnZhcy1yZXZlYWwocmlnaHQsICRvZmZjYW52YXMtcmV2ZWFsLXppbmRleCwgJG1haW5jb250ZW50LWNsYXNzLCAkbmFtZSk7XG4gICAgICAgIH1cblxuICAgICAgICAucG9zaXRpb24tdG9wLnJldmVhbC1mb3ItI3skbmFtZX0ge1xuICAgICAgICAgIEBpbmNsdWRlIG9mZi1jYW52YXMtcmV2ZWFsKHRvcCwgJG9mZmNhbnZhcy1yZXZlYWwtemluZGV4LCAkbWFpbmNvbnRlbnQtY2xhc3MsICRuYW1lKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5wb3NpdGlvbi1ib3R0b20ucmV2ZWFsLWZvci0jeyRuYW1lfSB7XG4gICAgICAgICAgQGluY2x1ZGUgb2ZmLWNhbnZhcy1yZXZlYWwoYm90dG9tLCAkb2ZmY2FudmFzLXJldmVhbC16aW5kZXgsICRtYWluY29udGVudC1jbGFzcywgJG5hbWUpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gTW92ZSBpbi1jYW52YXMgZm9yIGxhcmdlciBzY3JlZW5zXG4gIEBlYWNoICRuYW1lLCAkdmFsdWUgaW4gJGJyZWFrcG9pbnQtY2xhc3NlcyB7XG4gICAgQGlmICRuYW1lICE9ICQtemYtemVyby1icmVha3BvaW50IHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG5hbWUpIHtcbiAgICAgICAgLm9mZi1jYW52YXMuaW4tY2FudmFzLWZvci0jeyRuYW1lfSB7XG4gICAgICAgICAgQGluY2x1ZGUgaW4tY2FudmFzO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHBhZ2luYXRpb25cbi8vLy9cblxuLy8vIEZvbnQgc2l6ZSBvZiBwYWdpbmF0aW9uIGl0ZW1zLlxuLy8vIEB0eXBlIE51bWJlclxuJHBhZ2luYXRpb24tZm9udC1zaXplOiByZW0tY2FsYygxNCkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJvdHRvbSBtYXJnaW4gb2YgdGhlIHBhZ2luYXRpb24gb2JqZWN0LlxuLy8vIEB0eXBlIE51bWJlclxuJHBhZ2luYXRpb24tbWFyZ2luLWJvdHRvbTogJGdsb2JhbC1tYXJnaW4gIWRlZmF1bHQ7XG5cbi8vLyBUZXh0IGNvbG9yIG9mIHBhZ2luYXRpb24gaXRlbXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRwYWdpbmF0aW9uLWl0ZW0tY29sb3I6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIFBhZGRpbmcgaW5zaWRlIG9mIHBhZ2luYXRpb24gaXRlbXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kcGFnaW5hdGlvbi1pdGVtLXBhZGRpbmc6IHJlbS1jYWxjKDMgMTApICFkZWZhdWx0O1xuXG4vLy8gUmlnaHQgbWFyZ2luIHRvIHNlcGFyYXRlIHBhZ2luYXRpb24gaXRlbXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kcGFnaW5hdGlvbi1pdGVtLXNwYWNpbmc6IHJlbS1jYWxjKDEpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCByYWRpdXMgZm9yIHBhZ2luYXRpb24gaXRlbXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kcGFnaW5hdGlvbi1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvZiBwYWdpbmF0aW9uIGl0ZW1zIG9uIGhvdmVyLlxuLy8vIEB0eXBlIENvbG9yXG4kcGFnaW5hdGlvbi1pdGVtLWJhY2tncm91bmQtaG92ZXI6ICRsaWdodC1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvZiBwYWdpbmF0aW9uIGl0ZW0gZm9yIHRoZSBjdXJyZW50IHBhZ2UuXG4vLy8gQHR5cGUgQ29sb3JcbiRwYWdpbmF0aW9uLWl0ZW0tYmFja2dyb3VuZC1jdXJyZW50OiAkcHJpbWFyeS1jb2xvciAhZGVmYXVsdDtcblxuLy8vIFRleHQgY29sb3Igb2YgdGhlIHBhZ2luYXRpb24gaXRlbSBmb3IgdGhlIGN1cnJlbnQgcGFnZS5cbi8vLyBAdHlwZSBDb2xvclxuJHBhZ2luYXRpb24taXRlbS1jb2xvci1jdXJyZW50OiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBUZXh0IGNvbG9yIG9mIGEgZGlzYWJsZWQgcGFnaW5hdGlvbiBpdGVtLlxuLy8vIEB0eXBlIENvbG9yXG4kcGFnaW5hdGlvbi1pdGVtLWNvbG9yLWRpc2FibGVkOiAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciBvZiB0aGUgZWxsaXBzaXMgaW4gYSBwYWdpbmF0aW9uIG1lbnUuXG4vLy8gQHR5cGUgQ29sb3JcbiRwYWdpbmF0aW9uLWVsbGlwc2lzLWNvbG9yOiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBJZiBgZmFsc2VgLCBkb24ndCBkaXNwbGF5IHBhZ2UgbnVtYmVyIGxpbmtzIG9uIG1vYmlsZSwgb25seSBuZXh0L3ByZXZpb3VzIGxpbmtzXG4vLy8gYW5kIG9wdGlvbmFsbHkgY3VycmVudCBwYWdlIG51bWJlci5cbi8vLyBAdHlwZSBCb29sZWFuXG4kcGFnaW5hdGlvbi1tb2JpbGUtaXRlbXM6IGZhbHNlICFkZWZhdWx0O1xuXG4vLy8gSWYgYHRydWVgLCBkaXNwbGF5IHRoZSBjdXJyZW50IHBhZ2UgbnVtYmVyIG9uIG1vYmlsZSBldmVuIGlmIGAkcGFnaW5hdGlvbi1tb2JpbGUtaXRlbXNgIGlzIHNldCB0byBgZmFsc2VgLlxuLy8vIFRoaXMgcGFyYW1ldGVyIHdpbGwgb25seSBvdmVycmlkZSB0aGUgdmlzaWJpbGl0eSBzZXR0aW5nIG9mIHRoZSBjdXJyZW50IGl0ZW0gZm9yIGAkcGFnaW5hdGlvbi1tb2JpbGUtaXRlbXM6IGZhbHNlO2AsXG4vLy8gaXQgd2lsbCBub3QgYWZmZWN0IHRoZSBjdXJyZW50IHBhZ2UgbnVtYmVyIHZpc2liaWxpdHkgd2hlbiBgJHBhZ2luYXRpb24tbW9iaWxlLWl0ZW1zYCBpcyBzZXQgdG8gYHRydWVgLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRwYWdpbmF0aW9uLW1vYmlsZS1jdXJyZW50LWl0ZW06IGZhbHNlICFkZWZhdWx0O1xuXG4vLy8gSWYgYHRydWVgLCBhcnJvd3MgYXJlIGFkZGVkIHRvIHRoZSBuZXh0IGFuZCBwcmV2aW91cyBsaW5rcyBvZiBwYWdpbmF0aW9uLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRwYWdpbmF0aW9uLWFycm93czogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhIHBhZ2luYXRpb24gY29udGFpbmVyLiBBcHBseSB0aGlzIHRvIGEgYDx1bD5gLlxuQG1peGluIHBhZ2luYXRpb24tY29udGFpbmVyIChcbiAgJG1hcmdpbi1ib3R0b206ICRwYWdpbmF0aW9uLW1hcmdpbi1ib3R0b20sXG4gICRmb250LXNpemU6ICRwYWdpbmF0aW9uLWZvbnQtc2l6ZSxcbiAgJHNwYWNpbmc6ICRwYWdpbmF0aW9uLWl0ZW0tc3BhY2luZyxcbiAgJHJhZGl1czogJHBhZ2luYXRpb24tcmFkaXVzLFxuICAkY29sb3I6ICRwYWdpbmF0aW9uLWl0ZW0tY29sb3IsXG4gICRwYWRkaW5nOiAkcGFnaW5hdGlvbi1pdGVtLXBhZGRpbmcsXG4gICRiYWNrZ3JvdW5kLWhvdmVyOiAkcGFnaW5hdGlvbi1pdGVtLWJhY2tncm91bmQtaG92ZXJcbikge1xuICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogMDtcbiAgbWFyZ2luLWJvdHRvbTogJG1hcmdpbi1ib3R0b207XG5cbiAgLy8gTGlzdCBpdGVtXG4gIGxpIHtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogJHNwYWNpbmc7XG4gICAgYm9yZGVyLXJhZGl1czogJHJhZGl1cztcbiAgICBmb250LXNpemU6ICRmb250LXNpemU7XG5cbiAgICBAaWYgJHBhZ2luYXRpb24tbW9iaWxlLWl0ZW1zIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgZGlzcGxheTogbm9uZTtcblxuICAgICAgJjpsYXN0LWNoaWxkLFxuICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIH1cblxuICAgICAgQGlmICRwYWdpbmF0aW9uLW1vYmlsZS1jdXJyZW50LWl0ZW0ge1xuICAgICAgICAmLmN1cnJlbnQge1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gUGFnZSBsaW5rc1xuICBhLFxuICBidXR0b24ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmc6ICRwYWRkaW5nO1xuICAgIGJvcmRlci1yYWRpdXM6ICRyYWRpdXM7XG4gICAgY29sb3I6ICRjb2xvcjtcblxuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZDogJGJhY2tncm91bmQtaG92ZXI7XG4gICAgfVxuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgdGhlIGN1cnJlbnQgcGFnaW5hdGlvbiBpdGVtLiBBcHBseSB0aGlzIHRvIGFuIGA8YT5gLlxuQG1peGluIHBhZ2luYXRpb24taXRlbS1jdXJyZW50IChcbiAgJHBhZGRpbmc6ICRwYWdpbmF0aW9uLWl0ZW0tcGFkZGluZyxcbiAgJGJhY2tncm91bmQtY3VycmVudDogJHBhZ2luYXRpb24taXRlbS1iYWNrZ3JvdW5kLWN1cnJlbnQsXG4gICRjb2xvci1jdXJyZW50OiAkcGFnaW5hdGlvbi1pdGVtLWNvbG9yLWN1cnJlbnRcbikge1xuICBwYWRkaW5nOiAkcGFkZGluZztcbiAgYmFja2dyb3VuZDogJGJhY2tncm91bmQtY3VycmVudDtcbiAgY29sb3I6ICRjb2xvci1jdXJyZW50O1xuICBjdXJzb3I6IGRlZmF1bHQ7XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSBkaXNhYmxlZCBwYWdpbmF0aW9uIGl0ZW0uIEFwcGx5IHRoaXMgdG8gYW4gYDxhPmAuXG5AbWl4aW4gcGFnaW5hdGlvbi1pdGVtLWRpc2FibGVkIChcbiAgJHBhZGRpbmc6ICRwYWdpbmF0aW9uLWl0ZW0tcGFkZGluZyxcbiAgJGNvbG9yOiAkcGFnaW5hdGlvbi1pdGVtLWNvbG9yLWRpc2FibGVkXG4pIHtcbiAgcGFkZGluZzogJHBhZGRpbmc7XG4gIGNvbG9yOiAkY29sb3I7XG4gIGN1cnNvcjogbm90LWFsbG93ZWQ7XG5cbiAgJjpob3ZlciB7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhbiBlbGxpcHNpcyBmb3IgdXNlIGluIGEgcGFnaW5hdGlvbiBsaXN0LlxuQG1peGluIHBhZ2luYXRpb24tZWxsaXBzaXMgKFxuICAkcGFkZGluZzogJHBhZ2luYXRpb24taXRlbS1wYWRkaW5nLFxuICAkY29sb3I6ICRwYWdpbmF0aW9uLWVsbGlwc2lzLWNvbG9yXG4pIHtcbiAgcGFkZGluZzogJHBhZGRpbmc7XG4gIGNvbnRlbnQ6ICdcXDIwMjYnO1xuICBjb2xvcjogJGNvbG9yO1xufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1wYWdpbmF0aW9uIHtcbiAgLnBhZ2luYXRpb24ge1xuICAgIEBpbmNsdWRlIHBhZ2luYXRpb24tY29udGFpbmVyO1xuXG4gICAgLmN1cnJlbnQge1xuICAgICAgQGluY2x1ZGUgcGFnaW5hdGlvbi1pdGVtLWN1cnJlbnQ7XG4gICAgfVxuXG4gICAgLmRpc2FibGVkIHtcbiAgICAgIEBpbmNsdWRlIHBhZ2luYXRpb24taXRlbS1kaXNhYmxlZDtcbiAgICB9XG5cbiAgICAuZWxsaXBzaXM6OmFmdGVyIHtcbiAgICAgIEBpbmNsdWRlIHBhZ2luYXRpb24tZWxsaXBzaXM7XG4gICAgfVxuICB9XG5cbiAgQGlmICRwYWdpbmF0aW9uLWFycm93cyB7XG4gICAgLnBhZ2luYXRpb24tcHJldmlvdXMgYTo6YmVmb3JlLFxuICAgIC5wYWdpbmF0aW9uLXByZXZpb3VzLmRpc2FibGVkOjpiZWZvcmUge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06IDAuNXJlbTtcbiAgICAgIGNvbnRlbnQ6ICdcXDAwYWInO1xuICAgIH1cblxuICAgIC5wYWdpbmF0aW9uLW5leHQgYTo6YWZ0ZXIsXG4gICAgLnBhZ2luYXRpb24tbmV4dC5kaXNhYmxlZDo6YWZ0ZXIge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogMC41cmVtO1xuICAgICAgY29udGVudDogJ1xcMDBiYic7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuQG1peGluIGZvdW5kYXRpb24tc3RpY2t5IHtcbiAgLnN0aWNreS1jb250YWluZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgfVxuXG4gIC5zdGlja3kge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIH1cblxuICAuc3RpY2t5LmlzLXN0dWNrIHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgei1pbmRleDogNTtcbiAgICB3aWR0aDogMTAwJTtcblxuICAgICYuaXMtYXQtdG9wIHtcbiAgICAgIHRvcDogMDtcbiAgICB9XG5cbiAgICAmLmlzLWF0LWJvdHRvbSB7XG4gICAgICBib3R0b206IDA7XG4gICAgfVxuICB9XG5cbiAgLnN0aWNreS5pcy1hbmNob3JlZCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IGF1dG87XG5cbiAgICAmLmlzLWF0LWJvdHRvbSB7XG4gICAgICBib3R0b206IDA7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8gc2Fzcy1saW50OmRpc2FibGUgbm8tcXVhbGlmeWluZy1lbGVtZW50c1xuXG4vLy8vXG4vLy8gQGdyb3VwIHRhYmxlXG4vLy8vXG5cbi8vLyBEZWZhdWx0IGNvbG9yIGZvciB0YWJsZSBiYWNrZ3JvdW5kLlxuLy8vIEB0eXBlIENvbG9yXG4kdGFibGUtYmFja2dyb3VuZDogJHdoaXRlICAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgc2NhbGUgZm9yIGRhcmtlbmluZyB0aGUgc3RyaXBlZCB0YWJsZSByb3dzIGFuZCB0aGUgdGFibGUgYm9yZGVyLlxuLy8vIEB0eXBlIE51bWJlclxuJHRhYmxlLWNvbG9yLXNjYWxlOiA1JSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgc3R5bGUgZm9yIHRhYmxlIGJvcmRlci5cbi8vLyBAdHlwZSBMaXN0XG4kdGFibGUtYm9yZGVyOiAxcHggc29saWQgc21hcnQtc2NhbGUoJHRhYmxlLWJhY2tncm91bmQsICR0YWJsZS1jb2xvci1zY2FsZSkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHBhZGRpbmcgZm9yIHRhYmxlLlxuLy8vIEB0eXBlIE51bWJlclxuJHRhYmxlLXBhZGRpbmc6IHJlbS1jYWxjKDggMTAgMTApICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBzY2FsZSBmb3IgZGFya2VuaW5nIHRoZSB0YWJsZSByb3dzIG9uIGhvdmVyLlxuLy8vIEB0eXBlIE51bWJlclxuJHRhYmxlLWhvdmVyLXNjYWxlOiAyJSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgY29sb3Igb2Ygc3RhbmRhcmQgcm93cyBvbiBob3Zlci5cbi8vLyBAdHlwZSBMaXN0XG4kdGFibGUtcm93LWhvdmVyOiBkYXJrZW4oJHRhYmxlLWJhY2tncm91bmQsICR0YWJsZS1ob3Zlci1zY2FsZSkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGNvbG9yIG9mIHN0cmlwZWQgcm93cyBvbiBob3Zlci5cbi8vLyBAdHlwZSBMaXN0XG4kdGFibGUtcm93LXN0cmlwZS1ob3ZlcjogZGFya2VuKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtY29sb3Itc2NhbGUgKyAkdGFibGUtaG92ZXItc2NhbGUpICFkZWZhdWx0O1xuXG4vLy8gSWYgYHRydWVgLCB0YWJsZXMgYXJlIHN0cmlwZWQgYnkgZGVmYXVsdCBhbmQgYW4gLnVuc3RyaXBlZCBjbGFzcyBpcyBjcmVhdGVkLiBJZiBgZmFsc2VgLCBhIC5zdHJpcGVkIGNsYXNzIGlzIGNyZWF0ZWQuXG4vLy8gQHR5cGUgQm9vbGVhblxuJHRhYmxlLWlzLXN0cmlwZWQ6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJhY2tncm91bmQgY29sb3IgZm9yIHN0cmlwZWQgcm93cy5cbi8vLyBAdHlwZSBDb2xvclxuJHRhYmxlLXN0cmlwZWQtYmFja2dyb3VuZDogc21hcnQtc2NhbGUoJHRhYmxlLWJhY2tncm91bmQsICR0YWJsZS1jb2xvci1zY2FsZSkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHZhbHVlIGZvciBzaG93aW5nIHRoZSBzdHJpcGUgb24gcm93cyBvZiB0aGUgdGFibGVzLCBleGNsdWRpbmcgdGhlIGhlYWRlciBhbmQgZm9vdGVyLiBJZiBldmVuLCB0aGUgZXZlbiByb3dzIHdpbGwgaGF2ZSBhIGJhY2tncm91bmQgY29sb3IuIElmIG9kZCwgdGhlIG9kZCByb3dzIHdpbGwgaGF2ZSBhIGJhY2tncm91bmQgY29sb3IuIElmIGVtcHR5LCBvciBhbnkgb3RoZXIgdmFsdWUsIHRoZSB0YWJsZSByb3dzIHdpbGwgaGF2ZSBubyBzdHJpcGluZy5cbi8vLyBAdHlwZSBLZXl3b3JkXG4kdGFibGUtc3RyaXBlOiBldmVuICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBjb2xvciBmb3IgaGVhZGVyIGJhY2tncm91bmQuXG4vLy8gQHR5cGUgQ29sb3JcbiR0YWJsZS1oZWFkLWJhY2tncm91bmQ6IHNtYXJ0LXNjYWxlKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtY29sb3Itc2NhbGUgLyAyKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgY29sb3Igb2YgaGVhZGVyIHJvd3Mgb24gaG92ZXIuXG4vLy8gQHR5cGUgTGlzdFxuJHRhYmxlLWhlYWQtcm93LWhvdmVyOiBkYXJrZW4oJHRhYmxlLWhlYWQtYmFja2dyb3VuZCwgJHRhYmxlLWhvdmVyLXNjYWxlKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgY29sb3IgZm9yIGZvb3RlciBiYWNrZ3JvdW5kLlxuLy8vIEB0eXBlIENvbG9yXG4kdGFibGUtZm9vdC1iYWNrZ3JvdW5kOiBzbWFydC1zY2FsZSgkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWNvbG9yLXNjYWxlKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgY29sb3Igb2YgZm9vdGVyIHJvd3Mgb24gaG92ZXIuXG4vLy8gQHR5cGUgTGlzdFxuJHRhYmxlLWZvb3Qtcm93LWhvdmVyOiBkYXJrZW4oJHRhYmxlLWZvb3QtYmFja2dyb3VuZCwgJHRhYmxlLWhvdmVyLXNjYWxlKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCBjb2xvciBmb3IgaGVhZGVyLlxuLy8vIEB0eXBlIENvbG9yXG4kdGFibGUtaGVhZC1mb250LWNvbG9yOiAkYm9keS1mb250LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IGNvbG9yIGZvciBmb290ZXIuXG4vLy8gQHR5cGUgQ29sb3JcbiR0YWJsZS1mb290LWZvbnQtY29sb3I6ICRib2R5LWZvbnQtY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHZhbHVlIGZvciBzaG93aW5nIHRoZSBoZWFkZXIgd2hlbiB1c2luZyBzdGFja2VkIHRhYmxlcy5cbi8vLyBAdHlwZSBCb29sZWFuXG4kc2hvdy1oZWFkZXItZm9yLXN0YWNrZWQ6IGZhbHNlICFkZWZhdWx0O1xuXG4vLy8gQnJlYWtwb2ludCBhdCB3aGljaCBzdGFja2VkIHRhYmxlIHN3aXRjaGVzIGZyb20gbW9iaWxlIHRvIGRlc2t0b3Agdmlldy5cbi8vLyBAdHlwZSBCcmVha3BvaW50XG4kdGFibGUtc3RhY2stYnJlYWtwb2ludDogbWVkaXVtICFkZWZhdWx0O1xuXG5AbWl4aW4gLXpmLXRhYmxlLXN0cmlwZSgkc3RyaXBlOiAkdGFibGUtc3RyaXBlKSB7XG4gIHRyIHtcbiAgICAvLyBJZiBzdHJpcGUgaXMgc2V0IHRvIGV2ZW4sIGRhcmtlbiB0aGUgZXZlbiByb3dzLlxuICAgIEBpZiAkc3RyaXBlID09IGV2ZW4ge1xuICAgICAgJjpudGgtY2hpbGQoZXZlbikge1xuICAgICAgICBib3JkZXItYm90dG9tOiAwO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtc3RyaXBlZC1iYWNrZ3JvdW5kO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIElmIHN0cmlwZSBpcyBzZXQgdG8gb2RkLCBkYXJrZW4gdGhlIG9kZCByb3dzLlxuICAgIEBlbHNlIGlmICRzdHJpcGUgPT0gb2RkIHtcbiAgICAgICY6bnRoLWNoaWxkKG9kZCkge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtc3RyaXBlZC1iYWNrZ3JvdW5kO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gLXpmLXRhYmxlLXVuc3RyaXBlKCkge1xuICB0ciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgICBib3JkZXItYm90dG9tOiAkdGFibGUtYm9yZGVyO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1iYWNrZ3JvdW5kO1xuICB9XG59XG5cbkBtaXhpbiAtemYtdGFibGUtY2hpbGRyZW4tc3R5bGVzKCRzdHJpcGU6ICR0YWJsZS1zdHJpcGUsICRpcy1zdHJpcGVkOiAkdGFibGUtaXMtc3RyaXBlZCkge1xuICB0aGVhZCxcbiAgdGJvZHksXG4gIHRmb290IHtcbiAgICBib3JkZXI6ICR0YWJsZS1ib3JkZXI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWJhY2tncm91bmQ7XG4gIH1cblxuICAvLyBDYXB0aW9uXG4gIGNhcHRpb24ge1xuICAgIHBhZGRpbmc6ICR0YWJsZS1wYWRkaW5nO1xuICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkO1xuICB9XG5cbiAgLy8gVGFibGUgaGVhZFxuICB0aGVhZCB7XG4gICAgYmFja2dyb3VuZDogJHRhYmxlLWhlYWQtYmFja2dyb3VuZDtcbiAgICBjb2xvcjogJHRhYmxlLWhlYWQtZm9udC1jb2xvcjtcbiAgfVxuXG4gIC8vIFRhYmxlIGZvb3RcbiAgdGZvb3Qge1xuICAgIGJhY2tncm91bmQ6ICR0YWJsZS1mb290LWJhY2tncm91bmQ7XG4gICAgY29sb3I6ICR0YWJsZS1mb290LWZvbnQtY29sb3I7XG4gIH1cblxuICAvLyBUYWJsZSBoZWFkIGFuZCBmb290XG4gIHRoZWFkLFxuICB0Zm9vdCB7XG4gICAgLy8gUm93cyB3aXRoaW4gaGVhZCBhbmQgZm9vdFxuICAgIHRyIHtcbiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIH1cblxuICAgIC8vIENlbGxzIHdpdGhpbiBoZWFkIGFuZCBmb290XG4gICAgdGgsXG4gICAgdGQge1xuICAgICAgcGFkZGluZzogJHRhYmxlLXBhZGRpbmc7XG4gICAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZDtcbiAgICAgIHRleHQtYWxpZ246ICN7JGdsb2JhbC1sZWZ0fTtcbiAgICB9XG4gIH1cblxuICAvLyBUYWJsZSByb3dzXG4gIHRib2R5IHtcbiAgICB0aCxcbiAgICB0ZCB7XG4gICAgICBwYWRkaW5nOiAkdGFibGUtcGFkZGluZztcbiAgICB9XG4gIH1cblxuICAvLyBJZiB0YWJsZXMgYXJlIHN0cmlwZWRcbiAgQGlmICRpcy1zdHJpcGVkID09IHRydWUge1xuICAgIHRib2R5IHtcbiAgICAgIEBpbmNsdWRlIC16Zi10YWJsZS1zdHJpcGUoJHN0cmlwZSk7XG4gICAgfVxuXG4gICAgJi51bnN0cmlwZWQge1xuICAgICAgdGJvZHkge1xuICAgICAgICBAaW5jbHVkZSAtemYtdGFibGUtdW5zdHJpcGUoKTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWJhY2tncm91bmQ7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gSWYgdGFibGVzIGFyZSBub3Qgc3RyaXBlZFxuICBAZWxzZSBpZiAkaXMtc3RyaXBlZCA9PSBmYWxzZSB7XG4gICAgdGJvZHkge1xuICAgICAgQGluY2x1ZGUgLXpmLXRhYmxlLXVuc3RyaXBlKCk7XG4gICAgfVxuXG4gICAgJi5zdHJpcGVkIHtcbiAgICAgIHRib2R5IHtcbiAgICAgICAgQGluY2x1ZGUgLXpmLXRhYmxlLXN0cmlwZSgkc3RyaXBlKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgdGhlIGdlbmVyYWwgc3R5bGVzIGZvciB0YWJsZXMuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc3RyaXBlIFskdGFibGUtc3RyaXBlXSAtIFVzZXMga2V5d29yZHMgZXZlbiwgb2RkLCBvciBub25lIHRvIGRhcmtlbiByb3dzIG9mIHRoZSB0YWJsZS4gVGhlIGRlZmF1bHQgdmFsdWUgaXMgZXZlbi5cbkBtaXhpbiB0YWJsZShcbiAgJHN0cmlwZTogJHRhYmxlLXN0cmlwZSxcbiAgJG5lc3Q6IGZhbHNlXG4pIHtcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206ICRnbG9iYWwtbWFyZ2luO1xuICBib3JkZXItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcblxuICBAaWYgJG5lc3Qge1xuICAgIEBpbmNsdWRlIC16Zi10YWJsZS1jaGlsZHJlbi1zdHlsZXMoJHN0cmlwZSk7XG4gIH1cbiAgQGVsc2Uge1xuICAgIEBhdC1yb290IHtcbiAgICAgIEBpbmNsdWRlIC16Zi10YWJsZS1jaGlsZHJlbi1zdHlsZXMoJHN0cmlwZSk7XG4gICAgfVxuICB9XG59XG5cbi8vLyBBZGRzIHRoZSBhYmlsaXR5IHRvIGhvcml6b250YWxseSBzY3JvbGwgdGhlIHRhYmxlIHdoZW4gdGhlIGNvbnRlbnQgb3ZlcmZsb3dzIGhvcml6b250YWxseS5cbkBtaXhpbiB0YWJsZS1zY3JvbGwge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIG92ZXJmbG93LXg6IGF1dG87XG59XG5cbi8vLyBTbGlnaHRseSBkYXJrZW5zIHRoZSB0YWJsZSByb3dzIG9uIGhvdmVyLlxuQG1peGluIHRhYmxlLWhvdmVyIHtcbiAgdGhlYWQgdHIge1xuICAgIC8vRGFya2VucyB0aGUgdGFibGUgaGVhZGVyIHJvd3Mgb24gaG92ZXIuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtaGVhZC1yb3ctaG92ZXI7XG4gICAgfVxuICB9XG5cbiAgdGZvb3QgdHIge1xuICAgIC8vRGFya2VucyB0aGUgdGFibGUgZm9vdGVyIHJvd3Mgb24gaG92ZXIuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtZm9vdC1yb3ctaG92ZXI7XG4gICAgfVxuICB9XG5cbiAgdGJvZHkgdHIge1xuICAgIC8vRGFya2VucyB0aGUgbm9uLXN0cmlwZWQgdGFibGUgcm93cyBvbiBob3Zlci5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1yb3ctaG92ZXI7XG4gICAgfVxuICB9XG5cbiAgQGlmICR0YWJsZS1pcy1zdHJpcGVkID09IHRydWUge1xuICAgIC8vIERhcmtlbnMgdGhlIGV2ZW4gc3RyaXBlZCB0YWJsZSByb3dzLlxuICAgIEBpZigkdGFibGUtc3RyaXBlID09IGV2ZW4pIHtcbiAgICAgICY6bm90KC51bnN0cmlwZWQpIHRyOm50aC1vZi10eXBlKGV2ZW4pOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLXJvdy1zdHJpcGUtaG92ZXI7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gRGFya2VucyB0aGUgb2RkIHN0cmlwZWQgdGFibGUgcm93cy5cbiAgICBAZWxzZSBpZigkdGFibGUtc3RyaXBlID09IG9kZCkge1xuICAgICAgJjpub3QoLnVuc3RyaXBlZCkgdHI6bnRoLW9mLXR5cGUob2RkKTpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1yb3ctc3RyaXBlLWhvdmVyO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBlbHNlIGlmICR0YWJsZS1pcy1zdHJpcGVkID09IGZhbHNlIHtcbiAgICAvLyBEYXJrZW5zIHRoZSBldmVuIHN0cmlwZWQgdGFibGUgcm93cy5cbiAgICBAaWYoJHRhYmxlLXN0cmlwZSA9PSBldmVuKSB7XG4gICAgICAmLnN0cmlwZWQgdHI6bnRoLW9mLXR5cGUoZXZlbik6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtcm93LXN0cmlwZS1ob3ZlcjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBEYXJrZW5zIHRoZSBvZGQgc3RyaXBlZCB0YWJsZSByb3dzLlxuICAgIEBlbHNlIGlmKCR0YWJsZS1zdHJpcGUgPT0gb2RkKSB7XG4gICAgICAmLnN0cmlwZWQgdHI6bnRoLW9mLXR5cGUob2RkKTpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1yb3ctc3RyaXBlLWhvdmVyO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgc3RhY2tlZCB0YWJsZS4gVXNlZnVsIGZvciBzbWFsbC1zY3JlZW4gbGF5b3V0cy5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRoZWFkZXIgWyRzaG93LWhlYWRlci1mb3Itc3RhY2tlZF0gLSBTaG93IHRoZSBmaXJzdCB0aCBvZiBoZWFkZXIgd2hlbiBzdGFja2VkLlxuQG1peGluIHRhYmxlLXN0YWNrKCRoZWFkZXI6ICRzaG93LWhlYWRlci1mb3Itc3RhY2tlZCkge1xuICBAaWYgJGhlYWRlciB7XG4gICAgdGhlYWQge1xuICAgICAgdGgge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIHRoZWFkIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgdGZvb3Qge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICB0cixcbiAgdGgsXG4gIHRkIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuXG4gIHRkIHtcbiAgICBib3JkZXItdG9wOiAwO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXRhYmxlKCRuZXN0OiBmYWxzZSkge1xuICB0YWJsZSB7XG4gICAgQGluY2x1ZGUgdGFibGUoJG5lc3Q6ICRuZXN0KTtcbiAgfVxuXG4gIHRhYmxlLnN0YWNrIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCR0YWJsZS1zdGFjay1icmVha3BvaW50IGRvd24pIHtcbiAgICAgIEBpbmNsdWRlIHRhYmxlLXN0YWNrO1xuICAgIH1cbiAgfVxuXG4gIHRhYmxlLnNjcm9sbCB7XG4gICAgQGluY2x1ZGUgdGFibGUtc2Nyb2xsO1xuICB9XG5cbiAgdGFibGUuaG92ZXIge1xuICAgIEBpbmNsdWRlIHRhYmxlLWhvdmVyO1xuICB9XG5cbiAgLnRhYmxlLXNjcm9sbCB7XG4gICAgb3ZlcmZsb3cteDogYXV0bztcblxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuQGltcG9ydCAnbWF0aCc7XG5cbiRjb250cmFzdC13YXJuaW5nczogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vL1xuLy8vIEBncm91cCBmdW5jdGlvbnNcbi8vLy9cblxuLy8vIENoZWNrcyB0aGUgbHVtaW5hbmNlIG9mIGAkY29sb3JgLlxuLy8vXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIC0gQ29sb3IgdG8gY2hlY2sgdGhlIGx1bWluYW5jZSBvZi5cbi8vL1xuLy8vIEByZXR1cm5zIHtOdW1iZXJ9IFRoZSBsdW1pbmFuY2Ugb2YgYCRjb2xvcmAuXG5AZnVuY3Rpb24gY29sb3ItbHVtaW5hbmNlKCRjb2xvcikge1xuICAvLyBBZGFwdGVkIGZyb206IGh0dHBzOi8vZ2l0aHViLmNvbS9MZWFWZXJvdS9jb250cmFzdC1yYXRpby9ibG9iL2doLXBhZ2VzL2NvbG9yLmpzXG4gIC8vIEZvcm11bGE6IGh0dHA6Ly93d3cudzMub3JnL1RSLzIwMDgvUkVDLVdDQUcyMC0yMDA4MTIxMS8jcmVsYXRpdmVsdW1pbmFuY2VkZWZcbiAgJHJnYmE6IHJlZCgkY29sb3IpLCBncmVlbigkY29sb3IpLCBibHVlKCRjb2xvcik7XG4gICRyZ2JhMjogKCk7XG5cbiAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAzIHtcbiAgICAkcmdiOiBudGgoJHJnYmEsICRpKTtcbiAgICAkcmdiOiAkcmdiIC8gMjU1O1xuXG4gICAgJHJnYjogaWYoJHJnYiA8IDAuMDM5MjgsICRyZ2IgLyAxMi45MiwgcG93KCgkcmdiICsgMC4wNTUpIC8gMS4wNTUsIDIuNCkpO1xuXG4gICAgJHJnYmEyOiBhcHBlbmQoJHJnYmEyLCAkcmdiKTtcbiAgfVxuXG4gIEByZXR1cm4gMC4yMTI2ICogbnRoKCRyZ2JhMiwgMSkgKyAwLjcxNTIgKiBudGgoJHJnYmEyLCAyKSArIDAuMDcyMiAqIG50aCgkcmdiYTIsIDMpO1xufVxuXG4vLy8gQ2hlY2tzIHRoZSBjb250cmFzdCByYXRpbyBvZiB0d28gY29sb3JzLlxuLy8vXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yMSAtIEZpcnN0IGNvbG9yIHRvIGNvbXBhcmUuXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yMiAtIFNlY29uZCBjb2xvciB0byBjb21wYXJlLlxuLy8vXG4vLy8gQHJldHVybnMge051bWJlcn0gVGhlIGNvbnRyYXN0IHJhdGlvIG9mIHRoZSBjb21wYXJlZCBjb2xvcnMuXG5AZnVuY3Rpb24gY29sb3ItY29udHJhc3QoJGNvbG9yMSwgJGNvbG9yMikge1xuICAvLyBBZGFwdGVkIGZyb206IGh0dHBzOi8vZ2l0aHViLmNvbS9MZWFWZXJvdS9jb250cmFzdC1yYXRpby9ibG9iL2doLXBhZ2VzL2NvbG9yLmpzXG4gIC8vIEZvcm11bGE6IGh0dHA6Ly93d3cudzMub3JnL1RSLzIwMDgvUkVDLVdDQUcyMC0yMDA4MTIxMS8jY29udHJhc3QtcmF0aW9kZWZcbiAgJGx1bWluYW5jZTE6IGNvbG9yLWx1bWluYW5jZSgkY29sb3IxKSArIDAuMDU7XG4gICRsdW1pbmFuY2UyOiBjb2xvci1sdW1pbmFuY2UoJGNvbG9yMikgKyAwLjA1O1xuICAkcmF0aW86ICRsdW1pbmFuY2UxIC8gJGx1bWluYW5jZTI7XG5cbiAgQGlmICRsdW1pbmFuY2UyID4gJGx1bWluYW5jZTEge1xuICAgICRyYXRpbzogMSAvICRyYXRpbztcbiAgfVxuXG4gICRyYXRpbzogcm91bmQoJHJhdGlvICogMTApIC8gMTA7XG5cbiAgQHJldHVybiAkcmF0aW87XG59XG5cbi8vLyBDaGVja3MgdGhlIGx1bWluYW5jZSBvZiBgJGJhc2VgLCBhbmQgcmV0dXJucyB0aGUgY29sb3IgZnJvbSBgJGNvbG9yc2AgKGxpc3Qgb2YgY29sb3JzKSB0aGF0IGhhcyB0aGUgbW9zdCBjb250cmFzdC5cbi8vL1xuLy8vIEBwYXJhbSB7Q29sb3J9ICRiYXNlIC0gQ29sb3IgdG8gY2hlY2sgbHVtaW5hbmNlLlxuLy8vIEBwYXJhbSB7TGlzdH0gJGNvbG9ycyBbKCR3aGl0ZSwgJGJsYWNrKV0gLSBDb2xvcnMgdG8gY29tcGFyZS5cbi8vLyBAcGFyYW0ge051bWJlcn0gJHRvbGVyYW5jZSBbJGdsb2JhbC1jb2xvci1waWNrLWNvbnRyYXN0LXRvbGVyYW5jZV0gLSBDb250cmFzdCB0b2xlcmFuY2UuXG4vLy9cbi8vLyBAcmV0dXJucyB7Q29sb3J9IHRoZSBjb2xvciBmcm9tIGAkY29sb3JzYCAobGlzdCBvZiBjb2xvcnMpIHRoYXQgaGFzIHRoZSBtb3N0IGNvbnRyYXN0LlxuQGZ1bmN0aW9uIGNvbG9yLXBpY2stY29udHJhc3QoJGJhc2UsICRjb2xvcnM6ICgkd2hpdGUsICRibGFjayksICR0b2xlcmFuY2U6ICRnbG9iYWwtY29sb3ItcGljay1jb250cmFzdC10b2xlcmFuY2UpIHtcbiAgJGNvbnRyYXN0OiBjb2xvci1jb250cmFzdCgkYmFzZSwgbnRoKCRjb2xvcnMsIDEpKTtcbiAgJGJlc3Q6IG50aCgkY29sb3JzLCAxKTtcblxuICBAZm9yICRpIGZyb20gMiB0aHJvdWdoIGxlbmd0aCgkY29sb3JzKSB7XG4gICAgJGN1cnJlbnQtY29udHJhc3Q6IGNvbG9yLWNvbnRyYXN0KCRiYXNlLCBudGgoJGNvbG9ycywgJGkpKTtcbiAgICBAaWYgKCRjdXJyZW50LWNvbnRyYXN0IC0gJGNvbnRyYXN0ID4gJHRvbGVyYW5jZSkge1xuICAgICAgJGNvbnRyYXN0OiBjb2xvci1jb250cmFzdCgkYmFzZSwgbnRoKCRjb2xvcnMsICRpKSk7XG4gICAgICAkYmVzdDogbnRoKCRjb2xvcnMsICRpKTtcbiAgICB9XG4gIH1cblxuICBAaWYgKCRjb250cmFzdC13YXJuaW5ncyBhbmQgJGNvbnRyYXN0IDwgMykge1xuICAgIEB3YXJuIFwiQ29udHJhc3QgcmF0aW8gb2YgI3skYmVzdH0gb24gI3skYmFzZX0gaXMgcHJldHR5IGJhZCwganVzdCAjeyRjb250cmFzdH1cIjtcbiAgfVxuXG4gIEByZXR1cm4gJGJlc3Q7XG59XG5cbi8vLyBTY2FsZXMgYSBjb2xvciB0byBiZSBkYXJrZXIgaWYgaXQncyBsaWdodCwgb3IgbGlnaHRlciBpZiBpdCdzIGRhcmsuIFVzZSB0aGlzIGZ1bmN0aW9uIHRvIHRpbnQgYSBjb2xvciBhcHByb3ByaWF0ZSB0byBpdHMgbGlnaHRuZXNzLlxuLy8vXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIC0gQ29sb3IgdG8gc2NhbGUuXG4vLy8gQHBhcmFtIHtQZXJjZW50YWdlfSAkc2NhbGUgWzUlXSAtIEFtb3VudCB0byBzY2FsZSB1cCBvciBkb3duLlxuLy8vIEBwYXJhbSB7UGVyY2VudGFnZX0gJHRocmVzaG9sZCBbNDAlXSAtIFRocmVzaG9sZCBvZiBsaWdodG5lc3MgdG8gY2hlY2sgYWdhaW5zdC5cbi8vL1xuLy8vIEByZXR1cm5zIHtDb2xvcn0gQSBzY2FsZWQgY29sb3IuXG5AZnVuY3Rpb24gc21hcnQtc2NhbGUoJGNvbG9yLCAkc2NhbGU6IDUlLCAkdGhyZXNob2xkOiA0MCUpIHtcbiAgQGlmIGxpZ2h0bmVzcygkY29sb3IpID4gJHRocmVzaG9sZCB7XG4gICAgJHNjYWxlOiAtJHNjYWxlO1xuICB9XG4gIEByZXR1cm4gc2NhbGUtY29sb3IoJGNvbG9yLCAkbGlnaHRuZXNzOiAkc2NhbGUpO1xufVxuXG4vLy8gR2V0IGNvbG9yIGZyb20gZm91bmRhdGlvbi1wYWxldHRlXG4vLy9cbi8vLyBAcGFyYW0ge2tleX0gY29sb3Iga2V5IGZyb20gZm91bmRhdGlvbi1wYWxldHRlXG4vLy9cbi8vLyBAcmV0dXJucyB7Q29sb3J9IGNvbG9yIGZyb20gZm91bmRhdGlvbi1wYWxldHRlXG5AZnVuY3Rpb24gZ2V0LWNvbG9yKCRrZXkpIHtcbiAgQGlmIG1hcC1oYXMta2V5KCRmb3VuZGF0aW9uLXBhbGV0dGUsICRrZXkpIHtcbiAgICBAcmV0dXJuIG1hcC1nZXQoJGZvdW5kYXRpb24tcGFsZXR0ZSwgJGtleSk7XG4gIH1cbiAgQGVsc2Uge1xuICAgIEBlcnJvciAnZ2l2ZW4gJGtleSBpcyBub3QgYXZhaWxhYmxlIGluICRmb3VuZGF0aW9uLXBhbGV0dGUnO1xuICB9XG59XG5cbi8vLyBUcmFuc2ZlcnMgdGhlIGNvbG9ycyBpbiB0aGUgYCRmb3VuZGF0aW9uLXBhbGV0dGVgIG1hcCBpbnRvIHZhcmlhYmxlcywgc3VjaCBhcyBgJHByaW1hcnktY29sb3JgIGFuZCBgJHNlY29uZGFyeS1jb2xvcmAuIENhbGwgdGhpcyBtaXhpbiBiZWxvdyB0aGUgR2xvYmFsIHNlY3Rpb24gb2YgeW91ciBzZXR0aW5ncyBmaWxlIHRvIHByb3Blcmx5IG1pZ3JhdGUgeW91ciBjb2RlYmFzZS5cbkBtaXhpbiBhZGQtZm91bmRhdGlvbi1jb2xvcnMoKSB7XG4gIEBpZiBtYXAtaGFzLWtleSgkZm91bmRhdGlvbi1wYWxldHRlLCBwcmltYXJ5KSB7XG4gICAgJHByaW1hcnktY29sb3I6IG1hcC1nZXQoJGZvdW5kYXRpb24tcGFsZXR0ZSwgcHJpbWFyeSkgIWdsb2JhbDtcbiAgfSBAZWxzZSB7XG4gICAgJHByaW1hcnktY29sb3I6ICMxNzc5YmEgIWdsb2JhbDtcbiAgfVxuICBAaWYgbWFwLWhhcy1rZXkoJGZvdW5kYXRpb24tcGFsZXR0ZSwgc2Vjb25kYXJ5KSB7XG4gICAgJHNlY29uZGFyeS1jb2xvcjogbWFwLWdldCgkZm91bmRhdGlvbi1wYWxldHRlLCBzZWNvbmRhcnkpICFnbG9iYWw7XG4gIH0gQGVsc2Uge1xuICAgICRzZWNvbmRhcnktY29sb3I6ICM3Njc2NzYgIWdsb2JhbDtcbiAgfVxuICBAaWYgbWFwLWhhcy1rZXkoJGZvdW5kYXRpb24tcGFsZXR0ZSwgc3VjY2Vzcykge1xuICAgICRzdWNjZXNzLWNvbG9yOiBtYXAtZ2V0KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHN1Y2Nlc3MpICFnbG9iYWw7XG4gIH0gQGVsc2Uge1xuICAgICRzdWNjZXNzLWNvbG9yOiAjM2FkYjc2ICFnbG9iYWw7XG4gIH1cbiAgQGlmIG1hcC1oYXMta2V5KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHdhcm5pbmcpIHtcbiAgICAkd2FybmluZy1jb2xvcjogbWFwLWdldCgkZm91bmRhdGlvbi1wYWxldHRlLCB3YXJuaW5nKSAhZ2xvYmFsO1xuICB9IEBlbHNlIHtcbiAgICAkd2FybmluZy1jb2xvcjogI2ZmYWUwMCAhZ2xvYmFsO1xuICB9XG4gIEBpZiBtYXAtaGFzLWtleSgkZm91bmRhdGlvbi1wYWxldHRlLCBhbGVydCkge1xuICAgICRhbGVydC1jb2xvcjogbWFwLWdldCgkZm91bmRhdGlvbi1wYWxldHRlLCBhbGVydCkgIWdsb2JhbDtcbiAgfSBAZWxzZSB7XG4gICAgJGFsZXJ0LWNvbG9yOiAjY2M0YjM3ICFnbG9iYWw7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHRhYnNcbi8vLy9cblxuLy8vIERlZmF1bHQgbWFyZ2luIG9mIHRoZSB0YWIgYmFyLlxuLy8vIEB0eXBlIE51bWJlclxuJHRhYi1tYXJnaW46IDAgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJhY2tncm91bmQgY29sb3Igb2YgYSB0YWIgYmFyLlxuLy8vIEB0eXBlIENvbG9yXG4kdGFiLWJhY2tncm91bmQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgY29sb3Igb2YgdGFiIGl0ZW0uXG4vLy8gQHR5cGUgQ29sb3JcbiR0YWItY29sb3I6ICRwcmltYXJ5LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gQWN0aXZlIGJhY2tncm91bmQgY29sb3Igb2YgYSB0YWIgYmFyLlxuLy8vIEB0eXBlIENvbG9yXG4kdGFiLWJhY2tncm91bmQtYWN0aXZlOiAkbGlnaHQtZ3JheSAhZGVmYXVsdDtcblxuLy8vIEFjdGl2ZSBmb250IGNvbG9yIG9mIHRhYiBpdGVtLlxuLy8vIEB0eXBlIENvbG9yXG4kdGFiLWFjdGl2ZS1jb2xvcjogJHByaW1hcnktY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHNpemUgb2YgdGFiIGl0ZW1zLlxuLy8vIEB0eXBlIE51bWJlclxuJHRhYi1pdGVtLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTIpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yIG9uIGhvdmVyIGZvciBpdGVtcyBpbiBhIE1lbnUuXG4kdGFiLWl0ZW0tYmFja2dyb3VuZC1ob3ZlcjogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBwYWRkaW5nIG9mIGEgdGFiIGl0ZW0uXG4vLy8gQHR5cGUgTnVtYmVyXG4kdGFiLWl0ZW0tcGFkZGluZzogMS4yNXJlbSAxLjVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJhY2tncm91bmQgY29sb3Igb2YgdGFiIGNvbnRlbnQuXG4vLy8gQHR5cGUgQ29sb3JcbiR0YWItY29udGVudC1iYWNrZ3JvdW5kOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJvcmRlciBjb2xvciBvZiB0YWIgY29udGVudC5cbi8vLyBAdHlwZSBDb2xvclxuJHRhYi1jb250ZW50LWJvcmRlcjogJGxpZ2h0LWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHRleHQgY29sb3Igb2YgdGFiIGNvbnRlbnQuXG4vLy8gQHR5cGUgQ29sb3JcbiR0YWItY29udGVudC1jb2xvcjogJGJvZHktZm9udC1jb2xvciAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcGFkZGluZyBmb3IgdGFiIGNvbnRlbnQuXG4vLy8gQHR5cGUgTnVtYmVyIHwgTGlzdFxuJHRhYi1jb250ZW50LXBhZGRpbmc6IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSB0YWIgY29udGFpbmVyLiBBcHBseSB0aGlzIHRvIGEgYDx1bD5gLlxuQG1peGluIHRhYnMtY29udGFpbmVyIChcbiAgJG1hcmdpbjogJHRhYi1tYXJnaW4sXG4gICRiYWNrZ3JvdW5kOiAkdGFiLWJhY2tncm91bmQsXG4gICRib3JkZXItY29sb3I6ICR0YWItY29udGVudC1ib3JkZXJcbikge1xuICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgbWFyZ2luOiAkbWFyZ2luO1xuICBib3JkZXI6IDFweCBzb2xpZCAkYm9yZGVyLWNvbG9yO1xuICBiYWNrZ3JvdW5kOiAkYmFja2dyb3VuZDtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xufVxuXG4vLy8gQXVnbWVudHMgYSB0YWIgY29udGFpbmVyIHRvIGhhdmUgdmVydGljYWwgdGFicy4gVXNlIHRoaXMgaW4gY29uanVuY3Rpb24gd2l0aCBgdGFicy1jb250YWluZXIoKWAuXG5AbWl4aW4gdGFicy1jb250YWluZXItdmVydGljYWwge1xuICA+IGxpIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmbG9hdDogbm9uZTtcbiAgICB3aWR0aDogYXV0bztcbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIHRoZSBsaW5rcyB3aXRoaW4gYSB0YWIgY29udGFpbmVyLiBBcHBseSB0aGlzIHRvIHRoZSBgPGxpPmAgZWxlbWVudHMgaW5zaWRlIGEgdGFiIGNvbnRhaW5lci5cbkBtaXhpbiB0YWJzLXRpdGxlIChcbiAgJHBhZGRpbmc6ICR0YWItaXRlbS1wYWRkaW5nLFxuICAkZm9udC1zaXplOiAkdGFiLWl0ZW0tZm9udC1zaXplLFxuICAkY29sb3I6ICR0YWItY29sb3IsXG4gICRjb2xvci1hY3RpdmU6ICR0YWItYWN0aXZlLWNvbG9yLFxuICAkYmFja2dyb3VuZC1ob3ZlcjogJHRhYi1pdGVtLWJhY2tncm91bmQtaG92ZXIsXG4gICRiYWNrZ3JvdW5kLWFjdGl2ZTogJHRhYi1iYWNrZ3JvdW5kLWFjdGl2ZVxuKSB7XG4gIGZsb2F0OiAjeyRnbG9iYWwtbGVmdH07XG5cbiAgPiBhIHtcbiAgICBAaW5jbHVkZSBkaXNhYmxlLW1vdXNlLW91dGxpbmU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZzogJHBhZGRpbmc7XG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIGNvbG9yOiAkY29sb3I7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kLWhvdmVyO1xuICAgICAgY29sb3I6IHNjYWxlLWNvbG9yKCRjb2xvciwgJGxpZ2h0bmVzczogLTE0JSk7XG4gICAgfVxuXG4gICAgJjpmb2N1cyxcbiAgICAmW2FyaWEtc2VsZWN0ZWQ9J3RydWUnXSB7XG4gICAgICBiYWNrZ3JvdW5kOiAkYmFja2dyb3VuZC1hY3RpdmU7XG4gICAgICBjb2xvcjogJGNvbG9yLWFjdGl2ZTtcbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciB0aGUgd3JhcHBlciB0aGF0IHN1cnJvdW5kcyBhIHRhYiBncm91cCdzIGNvbnRlbnQgcGFuZXMuXG5AbWl4aW4gdGFicy1jb250ZW50IChcbiAgJGJhY2tncm91bmQ6ICR0YWItY29udGVudC1iYWNrZ3JvdW5kLFxuICAkY29sb3I6ICR0YWItY29udGVudC1jb2xvcixcbiAgJGJvcmRlci1jb2xvcjogJHRhYi1jb250ZW50LWJvcmRlclxuKSB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICRib3JkZXItY29sb3I7XG4gIGJvcmRlci10b3A6IDA7XG4gIGJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kO1xuICBjb2xvcjogJGNvbG9yO1xuICB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlO1xufVxuXG4vLy8gQXVnbWVudHMgYSB0YWIgY29udGVudCBjb250YWluZXIgdG8gaGF2ZSBhIHZlcnRpY2FsIHN0eWxlLCBieSBzaGlmdGluZyB0aGUgYm9yZGVyIGFyb3VuZC4gVXNlIHRoaXMgaW4gY29uanVuY3Rpb24gd2l0aCBgdGFicy1jb250ZW50KClgLlxuQG1peGluIHRhYnMtY29udGVudC12ZXJ0aWNhbCAoXG4gICRib3JkZXItY29sb3I6ICR0YWItY29udGVudC1ib3JkZXJcbikge1xuICBib3JkZXI6IDFweCBzb2xpZCAkYm9yZGVyLWNvbG9yO1xuICBib3JkZXItI3skZ2xvYmFsLWxlZnR9OiAwO1xufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGFuIGluZGl2aWR1YWwgdGFiIGNvbnRlbnQgcGFuZWwgd2l0aGluIHRoZSB0YWIgY29udGVudCBjb250YWluZXIuXG5AbWl4aW4gdGFicy1wYW5lbCAoXG4gICRwYWRkaW5nOiAkdGFiLWNvbnRlbnQtcGFkZGluZ1xuKSB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBhZGRpbmc6ICRwYWRkaW5nO1xuXG4gICYuaXMtYWN0aXZlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi10YWJzIHtcbiAgLnRhYnMge1xuICAgIEBpbmNsdWRlIHRhYnMtY29udGFpbmVyO1xuICB9XG5cbiAgLy8gVmVydGljYWxcbiAgLnRhYnMudmVydGljYWwge1xuICAgIEBpbmNsdWRlIHRhYnMtY29udGFpbmVyLXZlcnRpY2FsO1xuICB9XG5cbiAgLy8gU2ltcGxlXG4gIC50YWJzLnNpbXBsZSB7XG4gICAgPiBsaSA+IGEge1xuICAgICAgcGFkZGluZzogMDtcblxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFByaW1hcnkgY29sb3JcbiAgLnRhYnMucHJpbWFyeSB7XG4gICAgYmFja2dyb3VuZDogJHByaW1hcnktY29sb3I7XG5cbiAgICA+IGxpID4gYSB7XG4gICAgICBjb2xvcjogY29sb3ItcGljay1jb250cmFzdCgkcHJpbWFyeS1jb2xvcik7XG5cbiAgICAgICY6aG92ZXIsXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgYmFja2dyb3VuZDogc21hcnQtc2NhbGUoJHByaW1hcnktY29sb3IpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC50YWJzLXRpdGxlIHtcbiAgICBAaW5jbHVkZSB0YWJzLXRpdGxlO1xuICB9XG5cbiAgLnRhYnMtY29udGVudCB7XG4gICAgQGluY2x1ZGUgdGFicy1jb250ZW50O1xuICB9XG5cbiAgLnRhYnMtY29udGVudC52ZXJ0aWNhbCB7XG4gICAgQGluY2x1ZGUgdGFicy1jb250ZW50LXZlcnRpY2FsO1xuICB9XG5cbiAgLnRhYnMtcGFuZWwge1xuICAgIEBpbmNsdWRlIHRhYnMtcGFuZWw7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHRpdGxlLWJhclxuLy8vL1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvZiBhIHRpdGxlIGJhci5cbi8vLyBAdHlwZSBDb2xvclxuJHRpdGxlYmFyLWJhY2tncm91bmQ6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIENvbG9yIG9mIHRleHQgaW5zaWRlIGEgdGl0bGUgYmFyLlxuLy8vIEB0eXBlIENvbG9yXG4kdGl0bGViYXItY29sb3I6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIFBhZGRpbmcgaW5zaWRlIGEgdGl0bGUgYmFyLlxuLy8vIEB0eXBlIExlbmd0aFxuJHRpdGxlYmFyLXBhZGRpbmc6IDAuNXJlbSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgd2VpZ2h0IG9mIHRleHQgaW5zaWRlIGEgdGl0bGUgYmFyLlxuLy8vIEB0eXBlIFdlaWdodFxuJHRpdGxlYmFyLXRleHQtZm9udC13ZWlnaHQ6IGJvbGQgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciBvZiBtZW51IGljb25zIGluc2lkZSBhIHRpdGxlIGJhci5cbi8vLyBAdHlwZSBDb2xvclxuJHRpdGxlYmFyLWljb24tY29sb3I6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIG9mIG1lbnUgaWNvbnMgaW5zaWRlIGEgdGl0bGUgYmFyIG9uIGhvdmVyLlxuLy8vIEB0eXBlIENvbG9yXG4kdGl0bGViYXItaWNvbi1jb2xvci1ob3ZlcjogJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gU3BhY2luZyBiZXR3ZWVuIHRoZSBtZW51IGljb24gYW5kIHRleHQgaW5zaWRlIGEgdGl0bGUgYmFyLlxuLy8vIEB0eXBlIExlbmd0aFxuJHRpdGxlYmFyLWljb24tc3BhY2luZzogMC4yNXJlbSAhZGVmYXVsdDtcblxuQG1peGluIGZvdW5kYXRpb24tdGl0bGUtYmFyIHtcbiAgLnRpdGxlLWJhciB7XG4gICAgcGFkZGluZzogJHRpdGxlYmFyLXBhZGRpbmc7XG4gICAgYmFja2dyb3VuZDogJHRpdGxlYmFyLWJhY2tncm91bmQ7XG4gICAgY29sb3I6ICR0aXRsZWJhci1jb2xvcjtcblxuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIEBpbmNsdWRlIGNsZWFyZml4O1xuICAgIH1cblxuICAgIC5tZW51LWljb24ge1xuICAgICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogJHRpdGxlYmFyLWljb24tc3BhY2luZztcbiAgICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAkdGl0bGViYXItaWNvbi1zcGFjaW5nO1xuICAgIH1cbiAgfVxuXG4gIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgIC50aXRsZS1iYXItbGVmdCxcbiAgICAudGl0bGUtYmFyLXJpZ2h0IHtcbiAgICAgIGZsZXg6IDEgMSAwcHg7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgemVyby11bml0XG4gICAgfVxuXG4gICAgLnRpdGxlLWJhci1yaWdodCB7XG4gICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIC50aXRsZS1iYXItbGVmdCB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICB9XG5cbiAgICAudGl0bGUtYmFyLXJpZ2h0IHtcbiAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgIH1cbiAgfVxuXG4gIC50aXRsZS1iYXItdGl0bGUge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIGZvbnQtd2VpZ2h0OiAkdGl0bGViYXItdGV4dC1mb250LXdlaWdodDtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgdG9wLWJhclxuLy8vL1xuXG4vLy8gUGFkZGluZyBmb3IgdGhlIHRvcCBiYXIuXG4vLy8gQHR5cGUgTnVtYmVyXG4kdG9wYmFyLXBhZGRpbmc6IDAuNXJlbSAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3IgZm9yIHRoZSB0b3AgYmFyLiBUaGlzIGNvbG9yIGFsc28gY2FzY2FkZXMgdG8gbWVudXMgd2l0aGluIHRoZSB0b3AgYmFyLlxuLy8vIEB0eXBlIENvbG9yXG4kdG9wYmFyLWJhY2tncm91bmQ6ICRsaWdodC1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBzdWJtZW51cyB3aXRoaW4gdGhlIHRvcCBiYXIuIFVzZWZ1bGwgaWYgJHRvcGJhci1iYWNrZ3JvdW5kIGlzIHRyYW5zcGFyZW50LlxuLy8vIEB0eXBlIENvbG9yXG4kdG9wYmFyLXN1Ym1lbnUtYmFja2dyb3VuZDogJHRvcGJhci1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuXG4vLy8gU3BhY2luZyBmb3IgdGhlIHRvcCBiYXIgdGl0bGUuXG4vLy8gQHR5cGUgTnVtYmVyXG4kdG9wYmFyLXRpdGxlLXNwYWNpbmc6IDAuNXJlbSAxcmVtIDAuNXJlbSAwICFkZWZhdWx0O1xuXG4vLy8gTWF4aW11bSB3aWR0aCBvZiBgPGlucHV0PmAgZWxlbWVudHMgaW5zaWRlIHRoZSB0b3AgYmFyLlxuLy8vIEB0eXBlIE51bWJlclxuJHRvcGJhci1pbnB1dC13aWR0aDogMjAwcHggIWRlZmF1bHQ7XG5cbi8vLyBCcmVha3BvaW50IGF0IHdoaWNoIHRvcCBiYXIgc3dpdGNoZXMgZnJvbSBtb2JpbGUgdG8gZGVza3RvcCB2aWV3LlxuLy8vIEB0eXBlIEJyZWFrcG9pbnRcbiR0b3BiYXItdW5zdGFjay1icmVha3BvaW50OiBtZWRpdW0gIWRlZmF1bHQ7XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSB0b3AgYmFyIGNvbnRhaW5lci5cbkBtaXhpbiB0b3AtYmFyLWNvbnRhaW5lciB7XG4gIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIH1cbiAgQGVsc2Uge1xuICAgIEBpbmNsdWRlIGNsZWFyZml4O1xuICB9XG5cbiAgcGFkZGluZzogJHRvcGJhci1wYWRkaW5nO1xuXG4gICYsXG4gIHVsIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdG9wYmFyLWJhY2tncm91bmQ7XG4gIH1cblxuICAvLyBDaGVjayBpZiAkdG9wYmFyLWJhY2tncm91bmQgaXMgZGlmZmVybnQgZnJvbSAkdG9wYmFyLWJhY2tncm91bmQtc3VibWVudVxuICBAaWYgKCR0b3BiYXItYmFja2dyb3VuZCAhPSAkdG9wYmFyLXN1Ym1lbnUtYmFja2dyb3VuZCkge1xuICAgIHVsIHVsIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0b3BiYXItc3VibWVudS1iYWNrZ3JvdW5kO1xuICAgIH1cbiAgfVxuXG4gIC8vIFJlc3RyYWluIHdpZHRoIG9mIGlucHV0cyBieSBkZWZhdWx0IHRvIG1ha2UgdGhlbSBlYXNpZXIgdG8gYXJyYW5nZVxuICBpbnB1dCB7XG4gICAgbWF4LXdpZHRoOiAkdG9wYmFyLWlucHV0LXdpZHRoO1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAxcmVtO1xuICB9XG5cbiAgLy8gVGhlIGFib3ZlIHN0eWxlcyBzaG91bGRuJ3QgYXBwbHkgdG8gaW5wdXQgZ3JvdXAgZmllbGRzXG4gIC5pbnB1dC1ncm91cC1maWVsZCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06IDA7XG4gIH1cblxuICBpbnB1dC5idXR0b24geyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIG5vLXF1YWxpZnlpbmctZWxlbWVudHNcbiAgICB3aWR0aDogYXV0bztcbiAgfVxufVxuXG4vLy8gTWFrZXMgc2VjdGlvbnMgb2YgYSB0b3AgYmFyIHN0YWNrIG9uIHRvcCBvZiBlYWNoIG90aGVyLlxuQG1peGluIHRvcC1iYXItc3RhY2tlZCB7XG4gIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgIGZsZXgtd3JhcDogd3JhcDtcblxuICAgIC8vIFN1Yi1zZWN0aW9uc1xuICAgIC50b3AtYmFyLWxlZnQsXG4gICAgLnRvcC1iYXItcmlnaHQge1xuICAgICAgZmxleDogMCAwIDEwMCU7XG4gICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICAvLyBTdWItc2VjdGlvbnNcbiAgICAudG9wLWJhci1sZWZ0LFxuICAgIC50b3AtYmFyLXJpZ2h0IHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbiAgfVxufVxuXG4vLy8gVW5kb2VzIHRoZSBDU1MgYXBwbGllZCBieSB0aGUgYHRvcC1iYXItc3RhY2tlZCgpYCBtaXhpbi5cbkBtaXhpbiB0b3AtYmFyLXVuc3RhY2sge1xuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcblxuICAgIC50b3AtYmFyLWxlZnQge1xuICAgICAgZmxleDogMSAxIGF1dG87XG4gICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgfVxuXG4gICAgLnRvcC1iYXItcmlnaHQge1xuICAgICAgZmxleDogMCAxIGF1dG87XG4gICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIC50b3AtYmFyLWxlZnQsXG4gICAgLnRvcC1iYXItcmlnaHQge1xuICAgICAgd2lkdGg6IGF1dG87XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXRvcC1iYXIge1xuICAvLyBUb3AgYmFyIGNvbnRhaW5lclxuICAudG9wLWJhciB7XG4gICAgQGluY2x1ZGUgdG9wLWJhci1jb250YWluZXI7XG5cbiAgICAvLyBTdGFjayBvbiBzbWFsbCBzY3JlZW5zIGJ5IGRlZmF1bHRcbiAgICBAaW5jbHVkZSB0b3AtYmFyLXN0YWNrZWQ7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCR0b3BiYXItdW5zdGFjay1icmVha3BvaW50KSB7XG4gICAgICBAaW5jbHVkZSB0b3AtYmFyLXVuc3RhY2s7XG4gICAgfVxuXG4gICAgLy8gR2VuZXJhdGUgY2xhc3NlcyBmb3Igc3RhY2tpbmcgb24gZWFjaCBzY3JlZW4gc2l6ZSAoZGVmaW5lZCBpbiAkYnJlYWtwb2ludC1jbGFzc2VzKVxuICAgIEBlYWNoICRzaXplIGluICRicmVha3BvaW50LWNsYXNzZXMge1xuICAgICAgQGlmICRzaXplICE9ICQtemYtemVyby1icmVha3BvaW50IHtcbiAgICAgICAgJi5zdGFja2VkLWZvci0jeyRzaXplfSB7XG4gICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc2l6ZSBkb3duKSB7XG4gICAgICAgICAgICBAaW5jbHVkZSB0b3AtYmFyLXN0YWNrZWQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gU3ViLXNlY3Rpb25zXG4gIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgIC50b3AtYmFyLXRpdGxlIHtcbiAgICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgICAgbWFyZ2luOiAkdG9wYmFyLXRpdGxlLXNwYWNpbmc7XG4gICAgfVxuXG4gICAgLnRvcC1iYXItbGVmdCxcbiAgICAudG9wLWJhci1yaWdodCB7XG4gICAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIC50b3AtYmFyLXRpdGxlIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgcGFkZGluZzogJHRvcGJhci10aXRsZS1zcGFjaW5nO1xuXG4gICAgICAubWVudS1pY29uIHtcbiAgICAgICAgYm90dG9tOiAycHg7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnRvcC1iYXItbGVmdCB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICB9XG5cbiAgICAudG9wLWJhci1yaWdodCB7XG4gICAgICBmbG9hdDogcmlnaHQ7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vIEhpZGUgYW4gZWxlbWVudCBieSBkZWZhdWx0LCBvbmx5IGRpc3BsYXlpbmcgaXQgYWJvdmUgYSBjZXJ0YWluIHNjcmVlbiBzaXplLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHNpemUgLSBCcmVha3BvaW50IHRvIHVzZS4gKipNdXN0IGJlIGEgYnJlYWtwb2ludCBkZWZpbmVkIGluIGAkYnJlYWtwb2ludHNgLioqXG5AbWl4aW4gc2hvdy1mb3IoJHNpemUpIHtcbiAgJHNpemU6IG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAkc2l6ZSk7XG4gIC8vIE1heCB2YWx1ZSBpcyAwLjJweCB1bmRlciB0aGUgbmV4dCBicmVha3BvaW50ICgwLjAyIC8gMTYgPSAwLjAwMTI1KS5cbiAgLy8gVXNlIGEgcHJlY2lzaW9uIHVuZGVyIDFweCB0byBzdXBwb3J0IGJyb3dzZXIgem9vbSwgYnV0IG5vdCB0byBsb3cgdG8gYXZvaWQgcm91bmRpbmcuXG4gIC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20venVyYi9mb3VuZGF0aW9uLXNpdGVzL2lzc3Vlcy8xMTMxM1xuICAkc2l6ZTogLXpmLWJwLXRvLWVtKCRzaXplKSAtIC4wMDEyNTtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KCRzaXplIGRvd24pIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLy8vIEhpZGUgYW4gZWxlbWVudCBieSBkZWZhdWx0LCBvbmx5IGRpc3BsYXlpbmcgaXQgd2l0aGluIGEgY2VydGFpbiBicmVha3BvaW50LlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHNpemUgLSBCcmVha3BvaW50IHRvIHVzZS4gKipNdXN0IGJlIGEgYnJlYWtwb2ludCBkZWZpbmVkIGluIGAkYnJlYWtwb2ludHNgLioqXG5AbWl4aW4gc2hvdy1mb3Itb25seSgkc2l6ZSkge1xuICAkbG93ZXItYm91bmQtc2l6ZTogbWFwLWdldCgkYnJlYWtwb2ludHMsICRzaXplKTtcbiAgJHVwcGVyLWJvdW5kLXNpemU6IC16Zi1tYXAtbmV4dCgkYnJlYWtwb2ludHMsICRzaXplKTtcblxuICAvLyBtb3JlIG9mdGVuIHRoYW4gbm90IHRoaXMgd2lsbCBiZSBjb3JyZWN0LCBqdXN0IG9uZSB0aW1lIHJvdW5kIHRoZSBsb29wIGl0IHdvbid0IHNvIHNldCBpbiBzY29wZSBoZXJlXG4gICRsb3dlci1ib3VuZDogLXpmLWJwLXRvLWVtKCRsb3dlci1ib3VuZC1zaXplKSAtIC4wMDEyNTtcbiAgLy8gdGVzdCBhY3R1YWwgbG93ZXItYm91bmQtc2l6ZSwgaWYgMCBzZXQgaXQgdG8gMGVtXG4gIEBpZiBzdHJpcC11bml0KCRsb3dlci1ib3VuZC1zaXplKSA9PSAwIHtcbiAgICAkbG93ZXItYm91bmQ6IC16Zi1icC10by1lbSgkbG93ZXItYm91bmQtc2l6ZSk7XG4gIH1cblxuICBAaWYgJHVwcGVyLWJvdW5kLXNpemUgPT0gbnVsbCB7XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJGxvd2VyLWJvdW5kKSB7XG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICAkdXBwZXItYm91bmQ6IC16Zi1icC10by1lbSgkdXBwZXItYm91bmQtc2l6ZSk7XG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbG93ZXItYm91bmQpLCBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICR1cHBlci1ib3VuZCkge1xuICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxufVxuXG5cbi8vLyBTaG93IGFuIGVsZW1lbnQgYnkgZGVmYXVsdCwgYW5kIGhpZGUgaXQgYWJvdmUgYSBjZXJ0YWluIHNjcmVlbiBzaXplLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHNpemUgLSBCcmVha3BvaW50IHRvIHVzZS4gKipNdXN0IGJlIGEgYnJlYWtwb2ludCBkZWZpbmVkIGluIGAkYnJlYWtwb2ludHNgLioqXG5AbWl4aW4gaGlkZS1mb3IoJHNpemUpIHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc2l6ZSkge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4vLy8gU2hvdyBhbiBlbGVtZW50IGJ5IGRlZmF1bHQsIGFuZCBoaWRlIGl0IGFib3ZlIGEgY2VydGFpbiBzY3JlZW4gc2l6ZS5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzaXplIC0gQnJlYWtwb2ludCB0byB1c2UuICoqTXVzdCBiZSBhIGJyZWFrcG9pbnQgZGVmaW5lZCBpbiBgJGJyZWFrcG9pbnRzYC4qKlxuQG1peGluIGhpZGUtZm9yLW9ubHkoJHNpemUpIHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc2l6ZSBvbmx5KSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXZpc2liaWxpdHktY2xhc3NlcyB7XG4gIC8vIEJhc2ljIGhpZGluZyBjbGFzc2VzXG4gIC5oaWRlIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuaW52aXNpYmxlIHtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIH1cblxuICAvLyBSZXNwb25zaXZlIHZpc2liaWxpdHkgY2xhc3Nlc1xuICBAZWFjaCAkc2l6ZSBpbiAkYnJlYWtwb2ludC1jbGFzc2VzIHtcbiAgICBAaWYgJHNpemUgIT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgLmhpZGUtZm9yLSN7JHNpemV9IHtcbiAgICAgICAgQGluY2x1ZGUgaGlkZS1mb3IoJHNpemUpO1xuICAgICAgfVxuXG4gICAgICAuc2hvdy1mb3ItI3skc2l6ZX0ge1xuICAgICAgICBAaW5jbHVkZSBzaG93LWZvcigkc2l6ZSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmhpZGUtZm9yLSN7JHNpemV9LW9ubHkge1xuICAgICAgQGluY2x1ZGUgaGlkZS1mb3Itb25seSgkc2l6ZSk7XG4gICAgfVxuXG4gICAgLnNob3ctZm9yLSN7JHNpemV9LW9ubHkge1xuICAgICAgQGluY2x1ZGUgc2hvdy1mb3Itb25seSgkc2l6ZSk7XG4gICAgfVxuICB9XG5cbiAgLy8gU2NyZWVuIHJlYWRlciB2aXNpYmlsaXR5IGNsYXNzZXNcbiAgLy8gTmVlZCBhIFwiaGlkZS1mb3Itc3JcIiBjbGFzcz8gQWRkIGFyaWEtaGlkZGVuPSd0cnVlJyB0byB0aGUgZWxlbWVudFxuICAuc2hvdy1mb3Itc3IsXG4gIC5zaG93LW9uLWZvY3VzIHtcbiAgICBAaW5jbHVkZSBlbGVtZW50LWludmlzaWJsZTtcbiAgfVxuXG4gIC8vIE9ubHkgZGlzcGxheSB0aGUgZWxlbWVudCB3aGVuIGl0J3MgZm9jdXNlZFxuICAuc2hvdy1vbi1mb2N1cyB7XG4gICAgJjphY3RpdmUsXG4gICAgJjpmb2N1cyB7XG4gICAgICBAaW5jbHVkZSBlbGVtZW50LWludmlzaWJsZS1vZmY7XG4gICAgfVxuICB9XG5cbiAgLy8gTGFuZHNjYXBlIGFuZCBwb3J0cmFpdCB2aXNpYmlsaXR5XG4gIC5zaG93LWZvci1sYW5kc2NhcGUsXG4gIC5oaWRlLWZvci1wb3J0cmFpdCB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFuZHNjYXBlKSB7XG4gICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQocG9ydHJhaXQpIHtcbiAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cblxuICAuaGlkZS1mb3ItbGFuZHNjYXBlLFxuICAuc2hvdy1mb3ItcG9ydHJhaXQge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFuZHNjYXBlKSB7XG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChwb3J0cmFpdCkge1xuICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIEZsZXhib3ggVXRpbGl0aWVzXG4vLy8vXG4vL1xuLy8vIERlZmF1bHQgdmFsdWUgZm9yIHRoZSBjb3VudCBvZiBzb3VyY2Ugb3JkZXJpbmdgXG4vLy8gQHR5cGUgTnVtYmVyXG4kZmxleC1zb3VyY2Utb3JkZXJpbmctY291bnQ6IDYgIWRlZmF1bHQ7XG5cbi8vLyBRdWlja2x5IGRpc2FibGUvZW5hYmxlIFJlc3BvbnNpdmUgYnJlYWtwb2ludHMgZm9yIFZhbmlsbGEgRmxleCBIZWxwZXJzLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRmbGV4Ym94LXJlc3BvbnNpdmUtYnJlYWtwb2ludHM6IHRydWUgIWRlZmF1bHQ7XG5cbkBtaXhpbiBmbGV4LWhlbHBlcnMge1xuICAuZmxleC1jb250YWluZXIge1xuICAgIEBpbmNsdWRlIGZsZXg7XG4gIH1cblxuICAuZmxleC1jaGlsZC1hdXRvIHtcbiAgICBmbGV4OiAxIDEgYXV0bztcbiAgfVxuXG4gIC5mbGV4LWNoaWxkLWdyb3cge1xuICAgIGZsZXg6IDEgMCBhdXRvO1xuICB9XG5cbiAgLmZsZXgtY2hpbGQtc2hyaW5rIHtcbiAgICBmbGV4OiAwIDEgYXV0bztcbiAgfVxuXG4gIEBlYWNoICRkaXIsICRwcm9wIGluICQtemYtZmxleC1kaXJlY3Rpb24ge1xuICAgIC5mbGV4LWRpci0jeyRkaXJ9IHtcbiAgICAgIEBpbmNsdWRlIGZsZXgtZGlyZWN0aW9uKCRwcm9wKTtcbiAgICB9XG4gIH1cblxuICBAaWYgKCRmbGV4Ym94LXJlc3BvbnNpdmUtYnJlYWtwb2ludHMpIHtcbiAgICAvLyBMb29wIHRocm91Z2ggUmVzcG9uc2l2ZSBCcmVha3BvaW50c1xuICAgIEBlYWNoICRzaXplIGluICRicmVha3BvaW50LWNsYXNzZXMge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc2l6ZSkge1xuICAgICAgICBAaWYgJHNpemUgIT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgICAgIC4jeyRzaXplfS1mbGV4LWNvbnRhaW5lciB7XG4gICAgICAgICAgICBAaW5jbHVkZSBmbGV4O1xuICAgICAgICAgIH1cblxuICAgICAgICAgIC4jeyRzaXplfS1mbGV4LWNoaWxkLWF1dG8ge1xuICAgICAgICAgICAgZmxleDogMSAxIGF1dG87XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLiN7JHNpemV9LWZsZXgtY2hpbGQtZ3JvdyB7XG4gICAgICAgICAgICBmbGV4OiAxIDAgYXV0bztcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAuI3skc2l6ZX0tZmxleC1jaGlsZC1zaHJpbmsge1xuICAgICAgICAgICAgZmxleDogMCAxIGF1dG87XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgQGVhY2ggJGRpciwgJHByb3AgaW4gJC16Zi1mbGV4LWRpcmVjdGlvbiB7XG4gICAgICAgICAgICAuI3skc2l6ZX0tZmxleC1kaXItI3skZGlyfSB7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIGZsZXgtZGlyZWN0aW9uKCRwcm9wKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tZmxleC1jbGFzc2VzIHtcbiAgLy8gSG9yaXpvbnRhbCBhbGlnbm1lbnQgdXNpbmcganVzdGlmeS1jb250ZW50XG4gIEBlYWNoICRoZGlyLCAkcHJvcCBpbiAkLXpmLWZsZXgtanVzdGlmeSB7XG4gICAgLmFsaWduLSN7JGhkaXJ9IHtcbiAgICAgIEBpbmNsdWRlIGZsZXgtYWxpZ24oJHg6ICRoZGlyKTtcbiAgICB9XG4gIH1cbiAgXG4gIC8vIEhvcml6b250YWwgYWxpZ25tZW50IFNwZWNpZmljYWxseSBmb3IgVmVydGljYWwgTWVudVxuICBAZWFjaCAkaGRpciwgJHByb3AgaW4gbWFwLXJlbW92ZSgkLXpmLWZsZXgtanVzdGlmeSwgJ2p1c3RpZnknLCAnc3BhY2VkJykge1xuICAgIC5hbGlnbi0jeyRoZGlyfSB7XG4gICAgICAmLnZlcnRpY2FsIHtcbiAgICAgICAgJi5tZW51ID4gbGkgPiBhIHtcbiAgICAgICAgICBAaW5jbHVkZSBmbGV4LWFsaWduKCR4OiAkaGRpcik7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBWZXJ0aWNhbCBhbGlnbm1lbnQgdXNpbmcgYWxpZ24taXRlbXMgYW5kIGFsaWduLXNlbGZcbiAgQGVhY2ggJHZkaXIsICRwcm9wIGluICQtemYtZmxleC1hbGlnbiB7XG4gICAgLmFsaWduLSN7JHZkaXJ9IHtcbiAgICAgIEBpbmNsdWRlIGZsZXgtYWxpZ24oJHk6ICR2ZGlyKTtcbiAgICB9XG5cbiAgICAuYWxpZ24tc2VsZi0jeyR2ZGlyfSB7XG4gICAgICBAaW5jbHVkZSBmbGV4LWFsaWduLXNlbGYoJHk6ICR2ZGlyKTtcbiAgICB9XG4gIH1cblxuICAvLyBDZW50cmFsIGFsaWdubWVudCBvZiBjb250ZW50XG4gIC5hbGlnbi1jZW50ZXItbWlkZGxlIHtcbiAgICBAaW5jbHVkZSBmbGV4LWFsaWduKCR4OiBjZW50ZXIsICR5OiBtaWRkbGUpO1xuICAgIGFsaWduLWNvbnRlbnQ6IGNlbnRlcjtcbiAgfVxuXG4gIC8vIFNvdXJjZSBvcmRlcmluZ1xuICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50IHtcbiAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRmbGV4LXNvdXJjZS1vcmRlcmluZy1jb3VudCB7XG4gICAgICAuI3skLXpmLXNpemV9LW9yZGVyLSN7JGl9IHtcbiAgICAgICAgQGluY2x1ZGUgZmxleC1vcmRlcigkaSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gVmFuaWxsYSBGbGV4Ym94IEhlbHBlcnNcbiAgQGluY2x1ZGUgZmxleC1oZWxwZXJzO1xufVxuIiwiQGZ1bmN0aW9uIC16Zi1mbGV4LWp1c3RpZnkoJHRleHQtZGlyZWN0aW9uKXtcbiAgJC16Zi1mbGV4LWp1c3RpZnk6IChcbiAgICAnbGVmdCc6IGlmKCR0ZXh0LWRpcmVjdGlvbiA9PSBydGwsIGZsZXgtZW5kLCBmbGV4LXN0YXJ0KSxcbiAgICAncmlnaHQnOiBpZigkdGV4dC1kaXJlY3Rpb24gPT0gcnRsLCBmbGV4LXN0YXJ0LCBmbGV4LWVuZCksXG4gICAgJ2NlbnRlcic6IGNlbnRlcixcbiAgICAnanVzdGlmeSc6IHNwYWNlLWJldHdlZW4sXG4gICAgJ3NwYWNlZCc6IHNwYWNlLWFyb3VuZCxcbiAgKTtcblxuICBAcmV0dXJuICQtemYtZmxleC1qdXN0aWZ5O1xufVxuXG5cbiQtemYtZmxleC1hbGlnbjogKFxuICAndG9wJzogZmxleC1zdGFydCxcbiAgJ2JvdHRvbSc6IGZsZXgtZW5kLFxuICAnbWlkZGxlJzogY2VudGVyLFxuICAnc3RyZXRjaCc6IHN0cmV0Y2gsXG4pO1xuXG4kLXpmLWZsZXgtZGlyZWN0aW9uOiAoXG4gICdyb3cnOiByb3csXG4gICdyb3ctcmV2ZXJzZSc6IHJvdy1yZXZlcnNlLFxuICAnY29sdW1uJzogY29sdW1uLFxuICAnY29sdW1uLXJldmVyc2UnOiBjb2x1bW4tcmV2ZXJzZSxcbik7XG5cbi8vLyBFbmFibGVzIGZsZXhib3ggYnkgYWRkaW5nIGBkaXNwbGF5OiBmbGV4YCB0byB0aGUgZWxlbWVudC5cbkBtaXhpbiBmbGV4IHtcbiAgZGlzcGxheTogZmxleDtcbn1cblxuLy8vIEhvcml6b250YWxseSBvciB2ZXJ0aWNhbGx5IGFsaWducyB0aGUgaXRlbXMgd2l0aGluIGEgZmxleCBjb250YWluZXIuXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICR4IFtudWxsXSAtIEhvcml6b250YWwgYWxpZ25tZW50IHRvIHVzZS4gQ2FuIGJlIGBsZWZ0YCwgYHJpZ2h0YCwgYGNlbnRlcmAsIGBqdXN0aWZ5YCwgb3IgYHNwYWNlZGAuIE9yLCBzZXQgaXQgdG8gYG51bGxgICh0aGUgZGVmYXVsdCkgdG8gbm90IHNldCBob3Jpem9udGFsIGFsaWdubWVudC5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICR5IFtudWxsXSAtIFZlcnRpY2FsIGFsaWdubWVudCB0byB1c2UuIENhbiBiZSBgdG9wYCwgYGJvdHRvbWAsIGBtaWRkbGVgLCBvciBgc3RyZXRjaGAuIE9yLCBzZXQgaXQgdG8gYG51bGxgICh0aGUgZGVmYXVsdCkgdG8gbm90IHNldCB2ZXJ0aWNhbCBhbGlnbm1lbnQuXG5AbWl4aW4gZmxleC1hbGlnbigkeDogbnVsbCwgJHk6IG51bGwpIHtcbiAgQGlmICR4IHtcbiAgICBAaWYgbWFwLWhhcy1rZXkoJC16Zi1mbGV4LWp1c3RpZnksICR4KSB7XG4gICAgICAkeDogbWFwLWdldCgkLXpmLWZsZXgtanVzdGlmeSwgJHgpO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBAd2FybiAnZmxleC1ncmlkLXJvdy1hbGlnbigpOiAjeyR4fSBpcyBub3QgYSB2YWxpZCB2YWx1ZSBmb3IgaG9yaXpvbnRhbCBhbGlnbm1lbnQuIFVzZSBsZWZ0LCByaWdodCwgY2VudGVyLCBqdXN0aWZ5LCBvciBzcGFjZWQuJztcbiAgICB9XG4gIH1cblxuICBAaWYgJHkge1xuICAgIEBpZiBtYXAtaGFzLWtleSgkLXpmLWZsZXgtYWxpZ24sICR5KSB7XG4gICAgICAkeTogbWFwLWdldCgkLXpmLWZsZXgtYWxpZ24sICR5KTtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgQHdhcm4gJ2ZsZXgtZ3JpZC1yb3ctYWxpZ24oKTogI3skeX0gaXMgbm90IGEgdmFsaWQgdmFsdWUgZm9yIHZlcnRpY2FsIGFsaWdubWVudC4gVXNlIHRvcCwgYm90dG9tLCBtaWRkbGUsIG9yIHN0cmV0Y2guJztcbiAgICB9XG4gIH1cblxuICBqdXN0aWZ5LWNvbnRlbnQ6ICR4O1xuICBhbGlnbi1pdGVtczogJHk7XG59XG5cbi8vLyBWZXJ0aWNhbGx5IGFsaWduIGEgc2luZ2xlIGNvbHVtbiB3aXRoaW4gYSBmbGV4IHJvdy4gQXBwbHkgdGhpcyBtaXhpbiB0byBhIGZsZXggY29sdW1uLlxuLy8vXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkeSBbbnVsbF0gLSBWZXJ0aWNhbCBhbGlnbm1lbnQgdG8gdXNlLiBDYW4gYmUgYHRvcGAsIGBib3R0b21gLCBgbWlkZGxlYCwgb3IgYHN0cmV0Y2hgLiBPciwgc2V0IGl0IHRvIGBudWxsYCAodGhlIGRlZmF1bHQpIHRvIG5vdCBzZXQgdmVydGljYWwgYWxpZ25tZW50LlxuQG1peGluIGZsZXgtYWxpZ24tc2VsZigkeTogbnVsbCkge1xuICBAaWYgJHkge1xuICAgIEBpZiBtYXAtaGFzLWtleSgkLXpmLWZsZXgtYWxpZ24sICR5KSB7XG4gICAgICAkeTogbWFwLWdldCgkLXpmLWZsZXgtYWxpZ24sICR5KTtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgQHdhcm4gJ2ZsZXgtZ3JpZC1jb2x1bW4tYWxpZ24oKTogI3skeX0gaXMgbm90IGEgdmFsaWQgdmFsdWUgZm9yIGFsaWdubWVudC4gVXNlIHRvcCwgYm90dG9tLCBtaWRkbGUsIG9yIHN0cmV0Y2guJztcbiAgICB9XG4gIH1cblxuICBhbGlnbi1zZWxmOiAkeTtcbn1cblxuLy8vIENoYW5nZXMgdGhlIHNvdXJjZSBvcmRlciBvZiBhIGZsZXggY2hpbGQuIENoaWxkcmVuIHdpdGggbG93ZXIgbnVtYmVycyBhcHBlYXIgZmlyc3QgaW4gdGhlIGxheW91dC5cbi8vLyBAcGFyYW0ge051bWJlcn0gJG9yZGVyIFswXSAtIE9yZGVyIG51bWJlciB0byBhcHBseS5cbkBtaXhpbiBmbGV4LW9yZGVyKCRvcmRlcjogMCkge1xuICBvcmRlcjogJG9yZGVyO1xufVxuXG4vLy8gQ2hhbmdlIGZsZXgtZGlyZWN0aW9uXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZGlyZWN0aW9uIFtyb3ddIC0gRmxleCBkaXJlY3Rpb24gdG8gdXNlLiBDYW4gYmVcbi8vLyAgIC0gcm93IChkZWZhdWx0KTogc2FtZSBhcyB0ZXh0IGRpcmVjdGlvblxuLy8vICAgLSByb3ctcmV2ZXJzZTogb3Bwb3NpdGUgdG8gdGV4dCBkaXJlY3Rpb25cbi8vLyAgIC0gY29sdW1uOiBzYW1lIGFzIHJvdyBidXQgdG9wIHRvIGJvdHRvbVxuLy8vICAgLSBjb2x1bW4tcmV2ZXJzZTogc2FtZSBhcyByb3ctcmV2ZXJzZSB0b3AgdG8gYm90dG9tXG5AbWl4aW4gZmxleC1kaXJlY3Rpb24oJGRpcmVjdGlvbjogcm93KSB7XG4gIGZsZXgtZGlyZWN0aW9uOiAkZGlyZWN0aW9uO1xufVxuIiwiQGNoYXJzZXQgJ3V0Zi04JztcclxuXHJcbkBpbXBvcnQgXCJzZXR0aW5nc1wiO1xyXG5AaW1wb3J0IFwiZm91bmRhdGlvblwiO1xyXG5cclxuQGltcG9ydCBcImFvc1wiO1xyXG5cclxuLy8gQGltcG9ydCAnbW90aW9uLXVpJztcclxuXHJcbkBpbmNsdWRlIGZvdW5kYXRpb24tZ2xvYmFsLXN0eWxlcztcclxuLy9AaW5jbHVkZSBmb3VuZGF0aW9uLWdyaWQ7XHJcbkBpbmNsdWRlIGZvdW5kYXRpb24tZmxleC1ncmlkO1xyXG5cclxuLy8gQGluY2x1ZGUgZm91bmRhdGlvbi14eS1ncmlkLWNsYXNzZXM7XHJcbkBpbmNsdWRlIGZvdW5kYXRpb24tdHlwb2dyYXBoeTtcclxuQGluY2x1ZGUgZm91bmRhdGlvbi1idXR0b247XHJcbkBpbmNsdWRlIGZvdW5kYXRpb24tZm9ybXM7XHJcbi8vIEBpbmNsdWRlIGZvdW5kYXRpb24tcmFuZ2UtaW5wdXQ7XHJcbkBpbmNsdWRlIGZvdW5kYXRpb24tYWNjb3JkaW9uO1xyXG4vLyBAaW5jbHVkZSBmb3VuZGF0aW9uLWFjY29yZGlvbi1tZW51O1xyXG4vLyBAaW5jbHVkZSBmb3VuZGF0aW9uLWJhZGdlO1xyXG4vLyBAaW5jbHVkZSBmb3VuZGF0aW9uLWJyZWFkY3J1bWJzO1xyXG4vLyBAaW5jbHVkZSBmb3VuZGF0aW9uLWJ1dHRvbi1ncm91cDtcclxuLy8gQGluY2x1ZGUgZm91bmRhdGlvbi1jYWxsb3V0O1xyXG4vLyBAaW5jbHVkZSBmb3VuZGF0aW9uLWNhcmQ7XHJcbkBpbmNsdWRlIGZvdW5kYXRpb24tY2xvc2UtYnV0dG9uO1xyXG5AaW5jbHVkZSBmb3VuZGF0aW9uLW1lbnU7XHJcbkBpbmNsdWRlIGZvdW5kYXRpb24tbWVudS1pY29uO1xyXG5AaW5jbHVkZSBmb3VuZGF0aW9uLWRyaWxsZG93bi1tZW51O1xyXG4vLyBAaW5jbHVkZSBmb3VuZGF0aW9uLWRyb3Bkb3duO1xyXG5AaW5jbHVkZSBmb3VuZGF0aW9uLWRyb3Bkb3duLW1lbnU7XHJcbkBpbmNsdWRlIGZvdW5kYXRpb24tcmVzcG9uc2l2ZS1lbWJlZDtcclxuLy8gQGluY2x1ZGUgZm91bmRhdGlvbi1sYWJlbDtcclxuQGluY2x1ZGUgZm91bmRhdGlvbi1tZWRpYS1vYmplY3Q7XHJcbkBpbmNsdWRlIGZvdW5kYXRpb24tb2ZmLWNhbnZhcztcclxuLy8gQGluY2x1ZGUgZm91bmRhdGlvbi1vcmJpdDtcclxuQGluY2x1ZGUgZm91bmRhdGlvbi1wYWdpbmF0aW9uO1xyXG4vLyBAaW5jbHVkZSBmb3VuZGF0aW9uLXByb2dyZXNzLWJhcjtcclxuLy8gQGluY2x1ZGUgZm91bmRhdGlvbi1zbGlkZXI7XHJcbkBpbmNsdWRlIGZvdW5kYXRpb24tc3RpY2t5O1xyXG5AaW5jbHVkZSBmb3VuZGF0aW9uLXJldmVhbDtcclxuLy8gQGluY2x1ZGUgZm91bmRhdGlvbi1zd2l0Y2g7XHJcbkBpbmNsdWRlIGZvdW5kYXRpb24tdGFibGU7XHJcbkBpbmNsdWRlIGZvdW5kYXRpb24tdGFicztcclxuLy8gQGluY2x1ZGUgZm91bmRhdGlvbi10aHVtYm5haWw7XHJcbkBpbmNsdWRlIGZvdW5kYXRpb24tdGl0bGUtYmFyO1xyXG4vLyBAaW5jbHVkZSBmb3VuZGF0aW9uLXRvb2x0aXA7XHJcbkBpbmNsdWRlIGZvdW5kYXRpb24tdG9wLWJhcjtcclxuQGluY2x1ZGUgZm91bmRhdGlvbi12aXNpYmlsaXR5LWNsYXNzZXM7XHJcbi8vIEBpbmNsdWRlIGZvdW5kYXRpb24tZmxvYXQtY2xhc3NlcztcclxuQGluY2x1ZGUgZm91bmRhdGlvbi1mbGV4LWNsYXNzZXM7XHJcblxyXG4vLyBAaW5jbHVkZSBmb3VuZGF0aW9uLXByb3RvdHlwZS1jbGFzc2VzO1xyXG5cclxuLy8gQGluY2x1ZGUgbW90aW9uLXVpLXRyYW5zaXRpb25zO1xyXG4vLyBAaW5jbHVkZSBtb3Rpb24tdWktYW5pbWF0aW9ucztcclxuXHJcbi8qXHJcbiAgTXkgY3VzdG9tIHN0eWxlczpcclxuICBBZGQgeW91ciBzY3NzIGZpbGVzIGJlbG93IHRvIHN0cnVjdHVyZSB5b3VyIHByb2plY3Qgc3R5bGVzXHJcbiovXHJcblxyXG4vLyBWZW5kb3JcclxuQGltcG9ydCBcInZlbmRvci9zZWxlY3QyL2NvcmVcIiwgXCJ2ZW5kb3Ivc2xpY2svc2xpY2tcIiwgXCJ2ZW5kb3Ivc2xpY2svc2xpY2stdGhlbWVcIjtcclxuXHJcbi8vIEdsb2JhbFxyXG5AaW1wb3J0IFwiZ2xvYmFsL2FjY2Vzc2liaWxpdHlcIjtcclxuQGltcG9ydCBcImdsb2JhbC9jb2xvcnNcIjtcclxuQGltcG9ydCBcImdsb2JhbC93cC1hZG1pblwiO1xyXG5AaW1wb3J0IFwiZ2xvYmFsL3dwLW92ZXJyaWRlc1wiO1xyXG5AaW1wb3J0IFwiZ2xvYmFsL2d1dGVuYmVyZ1wiO1xyXG5cclxuLy8gTW9kdWxlc1xyXG5AaW1wb3J0IFwibW9kdWxlcy9uYXZpZ2F0aW9uXCI7XHJcbkBpbXBvcnQgXCJtb2R1bGVzL2NvbnRlbnRcIjtcclxuQGltcG9ydCBcIm1vZHVsZXMvZm9vdGVyXCI7XHJcbkBpbXBvcnQgXCJtb2R1bGVzL2VkaXRvci1zdHlsZVwiO1xyXG5cclxuLy8gQ29tcG9uZW50c1xyXG5AaW1wb3J0IFwiY29tcG9uZW50cy9idXR0b25zXCI7XHJcbi8vIEBpbXBvcnQgXCJjb21wb25lbnRzL2NhcmRzXCI7XHJcbi8vIEBpbXBvcnQgXCJjb21wb25lbnRzL2ZlYXR1cmVkLWltYWdlXCI7XHJcbi8vIEBpbXBvcnQgXCJjb21wb25lbnRzL2RpdmlkZXJzXCI7XHJcbi8vIEBpbXBvcnQgXCJjb21wb25lbnRzL2xpbmtzXCI7XHJcblxyXG4vLyBQYXR0ZXJuc1xyXG5AaW1wb3J0IFwicGF0dGVybnMvY2Fyb3VzZWxcIjtcclxuQGltcG9ydCBcInBhdHRlcm5zL2NvbnRhY3QtdXNcIjtcclxuQGltcG9ydCBcInBhdHRlcm5zL2NvbnRhY3QtbG9jYXRpb25zXCI7XHJcbkBpbXBvcnQgXCJwYXR0ZXJucy9nZHByLWNvb2tpZVwiO1xyXG5AaW1wb3J0IFwicGF0dGVybnMvaGVyby1zbGlkZVwiO1xyXG5AaW1wb3J0IFwicGF0dGVybnMvaW50cm9cIjtcclxuQGltcG9ydCBcInBhdHRlcm5zL2NvbHVtbmVkLXRleHRcIjtcclxuQGltcG9ydCBcInBhdHRlcm5zL2FjY29yZGlvblwiO1xyXG5AaW1wb3J0IFwicGF0dGVybnMvc2lnbnBvc3RcIjtcclxuQGltcG9ydCBcInBhdHRlcm5zL3Rlc3RpbW9uaWFsc1wiO1xyXG5AaW1wb3J0IFwicGF0dGVybnMvbG9jYXRpb25zXCI7XHJcbkBpbXBvcnQgXCJwYXR0ZXJucy9zcGxpdC1zaWducG9zdHNcIjtcclxuQGltcG9ydCBcInBhdHRlcm5zL3Nob3djYXNlXCI7XHJcbkBpbXBvcnQgXCJwYXR0ZXJucy9wcm9tby1saXN0aW5nXCI7XHJcbkBpbXBvcnQgXCJwYXR0ZXJucy9wcm9tby1saXN0aW5nLTJcIjtcclxuQGltcG9ydCBcInBhdHRlcm5zL3NwbGl0XCI7XHJcbkBpbXBvcnQgXCJwYXR0ZXJucy9oaWdobGlnaHQtcGFuZWxcIjtcclxuQGltcG9ydCBcInBhdHRlcm5zL2Nhc2Utc3R1ZGllc1wiO1xyXG5AaW1wb3J0IFwicGF0dGVybnMvbmV3c1wiO1xyXG5AaW1wb3J0IFwicGF0dGVybnMvcHJvZHVjdHNcIjtcclxuQGltcG9ydCBcInBhdHRlcm5zL2Jsb2ctYXJ0aWNsZXNcIjtcclxuQGltcG9ydCBcInBhdHRlcm5zL3RhYmJlZC1jb250ZW50XCI7XHJcbkBpbXBvcnQgXCJwYXR0ZXJucy91c2VyLWd1aWRlc1wiO1xyXG5AaW1wb3J0IFwicGF0dGVybnMvdmlkZW8tbGlzdGluZ1wiO1xyXG5cclxuLy8gVGVtcGxhdGUgc3BlY2lmaWNzXHJcbkBpbXBvcnQgXCJ0ZW1wbGF0ZXMvc2luZ2xlLXByb2R1Y3RcIjtcclxuQGltcG9ydCBcInRlbXBsYXRlcy9zaW5nbGUtcGFydG5lclwiO1xyXG5AaW1wb3J0IFwidGVtcGxhdGVzL3NpbmdsZS1pbnNpZ2h0XCI7XHJcbkBpbXBvcnQgXCJ0ZW1wbGF0ZXMvc2luZ2xlLWJsb2dcIjtcclxuQGltcG9ydCBcInRlbXBsYXRlcy9zaW5nbGUtY3RhXCI7XHJcbkBpbXBvcnQgXCJ0ZW1wbGF0ZXMvc2VhcmNoLXJlc3VsdHNcIjtcclxuXHJcbkBpbXBvcnQgXCJwcmludFwiO1xyXG4iLCIuc2VsZWN0Mi1jb250YWluZXIge1xyXG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcblxyXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICBtYXJnaW46IDA7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XHJcblxyXG4gIEBpbXBvcnQgXCJzaW5nbGVcIjtcclxuICBAaW1wb3J0IFwibXVsdGlwbGVcIjtcclxufVxyXG5cclxuQGltcG9ydCBcImRyb3Bkb3duXCI7XHJcblxyXG4uc2VsZWN0Mi1jbG9zZS1tYXNrIHtcclxuICBib3JkZXI6IDA7XHJcbiAgbWFyZ2luOiAwO1xyXG4gIHBhZGRpbmc6IDA7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbiAgcG9zaXRpb246IGZpeGVkO1xyXG4gIGxlZnQ6IDA7XHJcbiAgdG9wOiAwO1xyXG4gIG1pbi1oZWlnaHQ6IDEwMCU7XHJcbiAgbWluLXdpZHRoOiAxMDAlO1xyXG4gIGhlaWdodDogYXV0bztcclxuICB3aWR0aDogYXV0bztcclxuICBvcGFjaXR5OiAwO1xyXG4gIHotaW5kZXg6IDk5O1xyXG5cclxuICAvLyBzdHlsZXMgcmVxdWlyZWQgZm9yIElFIHRvIHdvcmtcclxuXHJcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcclxuICBmaWx0ZXI6IGFscGhhKG9wYWNpdHk9MCk7XHJcbn1cclxuXHJcbi5zZWxlY3QyLWhpZGRlbi1hY2Nlc3NpYmxlIHtcclxuICBib3JkZXI6IDAgIWltcG9ydGFudDtcclxuICBjbGlwOiByZWN0KDAgMCAwIDApICFpbXBvcnRhbnQ7XHJcbiAgaGVpZ2h0OiAxcHggIWltcG9ydGFudDtcclxuICBtYXJnaW46IC0xcHggIWltcG9ydGFudDtcclxuICBvdmVyZmxvdzogaGlkZGVuICFpbXBvcnRhbnQ7XHJcbiAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xyXG4gIHdpZHRoOiAxcHggIWltcG9ydGFudDtcclxufVxyXG5cclxuQGltcG9ydCBcInRoZW1lL2RlZmF1bHQvbGF5b3V0XCI7XHJcbi8vIEBpbXBvcnQgXCJ0aGVtZS9jbGFzc2ljL2xheW91dFwiO1xyXG4iLCIuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSB7XHJcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuXHJcbiAgY3Vyc29yOiBwb2ludGVyO1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG5cclxuICBoZWlnaHQ6IHJlbS1jYWxjKDQwKTtcclxuXHJcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XHJcbiAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcclxuXHJcbiAgLnNlbGVjdDItc2VsZWN0aW9uX19yZW5kZXJlZCB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIHBhZGRpbmctbGVmdDogOHB4O1xyXG4gICAgcGFkZGluZy1yaWdodDogMjBweDtcclxuXHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XHJcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG4gIH1cclxuXHJcbiAgLnNlbGVjdDItc2VsZWN0aW9uX19jbGVhciB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgfVxyXG59XHJcblxyXG4mW2Rpcj1cInJ0bFwiXSB7XHJcbiAgLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUge1xyXG4gICAgLnNlbGVjdDItc2VsZWN0aW9uX19yZW5kZXJlZCB7XHJcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDhweDtcclxuICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCIuc2VsZWN0Mi1zZWxlY3Rpb24tLW11bHRpcGxlIHtcclxuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG5cclxuICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcblxyXG4gIG1pbi1oZWlnaHQ6IDMycHg7XHJcblxyXG4gIHVzZXItc2VsZWN0OiBub25lO1xyXG4gIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XHJcblxyXG4gIC5zZWxlY3QyLXNlbGVjdGlvbl9fcmVuZGVyZWQge1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgIHBhZGRpbmctbGVmdDogOHB4O1xyXG4gICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XHJcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG4gIH1cclxufVxyXG5cclxuLnNlbGVjdDItc2VhcmNoLS1pbmxpbmUge1xyXG4gIGZsb2F0OiBsZWZ0O1xyXG5cclxuICAuc2VsZWN0Mi1zZWFyY2hfX2ZpZWxkIHtcclxuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICBib3JkZXI6IG5vbmU7XHJcbiAgICBmb250LXNpemU6IDEwMCU7XHJcbiAgICBtYXJnaW4tdG9wOiA1cHg7XHJcbiAgICBwYWRkaW5nOiAwO1xyXG5cclxuICAgICY6Oi13ZWJraXQtc2VhcmNoLWNhbmNlbC1idXR0b24ge1xyXG4gICAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIi5zZWxlY3QyLWRyb3Bkb3duIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcclxuXHJcbiAgLy8gYm9yZGVyOiAxcHggc29saWQgI2FhYTtcclxuICBib3JkZXItcmFkaXVzOiA0cHg7XHJcblxyXG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcblxyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG5cclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgbGVmdDogLTEwMDAwMHB4O1xyXG5cclxuICB3aWR0aDogMTAwJTtcclxuXHJcbiAgei1pbmRleDogNDtcclxufVxyXG5cclxuLnNlbGVjdDItcmVzdWx0cyB7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbn1cclxuXHJcbi5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbnMge1xyXG4gIGxpc3Qtc3R5bGU6IG5vbmU7XHJcbiAgbWFyZ2luOiAwO1xyXG4gIHBhZGRpbmc6IDA7XHJcbn1cclxuXHJcbi5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbiB7XHJcbiAgcGFkZGluZzogNnB4O1xyXG5cclxuICB1c2VyLXNlbGVjdDogbm9uZTtcclxuICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xyXG5cclxuICAmW2FyaWEtc2VsZWN0ZWRdIHtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICB9XHJcbn1cclxuXHJcbi5zZWxlY3QyLWNvbnRhaW5lci0tb3BlbiAuc2VsZWN0Mi1kcm9wZG93biB7XHJcbiAgbGVmdDogMDtcclxufVxyXG5cclxuLnNlbGVjdDItY29udGFpbmVyLS1vcGVuIC5zZWxlY3QyLWRyb3Bkb3duLS1hYm92ZSB7XHJcbiAgLy8gYm9yZGVyLWJvdHRvbTogbm9uZTtcclxuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwO1xyXG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwO1xyXG59XHJcblxyXG4uc2VsZWN0Mi1jb250YWluZXItLW9wZW4gLnNlbGVjdDItZHJvcGRvd24tLWJlbG93IHtcclxuICBib3JkZXItdG9wOiBub25lO1xyXG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7XHJcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7XHJcbn1cclxuXHJcbi5zZWxlY3QyLXNlYXJjaC0tZHJvcGRvd24ge1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG4gIHBhZGRpbmc6IDRweDtcclxuXHJcbiAgLnNlbGVjdDItc2VhcmNoX19maWVsZCB7XHJcbiAgICBwYWRkaW5nOiA0cHg7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcblxyXG4gICAgJjo6LXdlYmtpdC1zZWFyY2gtY2FuY2VsLWJ1dHRvbiB7XHJcbiAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICYuc2VsZWN0Mi1zZWFyY2gtLWhpZGUge1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxuICB9XHJcbn1cclxuIiwiLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IHtcclxuICBAaW1wb3J0IFwic2luZ2xlXCI7XHJcbiAgQGltcG9ydCBcIm11bHRpcGxlXCI7XHJcblxyXG4gICYuc2VsZWN0Mi1jb250YWluZXItLW9wZW4uc2VsZWN0Mi1jb250YWluZXItLWFib3ZlIHtcclxuICAgIC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlLCAuc2VsZWN0Mi1zZWxlY3Rpb24tLW11bHRpcGxlIHtcclxuICAgICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMDtcclxuICAgICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLnNlbGVjdDItY29udGFpbmVyLS1vcGVuLnNlbGVjdDItY29udGFpbmVyLS1iZWxvdyB7XHJcbiAgICAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSwgLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZSB7XHJcbiAgICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XHJcbiAgICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLnNlbGVjdDItc2VhcmNoLS1kcm9wZG93biB7XHJcbiAgICAuc2VsZWN0Mi1zZWFyY2hfX2ZpZWxkIHtcclxuICAgICAgLy8gYm9yZGVyOiAxcHggc29saWQgI2FhYTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5zZWxlY3QyLXNlYXJjaC0taW5saW5lIHtcclxuICAgIC5zZWxlY3QyLXNlYXJjaF9fZmllbGQge1xyXG4gICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcclxuICAgICAgYm9yZGVyOiBub25lO1xyXG4gICAgICBvdXRsaW5lOiAwO1xyXG4gICAgICBib3gtc2hhZG93OiBub25lO1xyXG4gICAgICAtd2Via2l0LWFwcGVhcmFuY2U6IHRleHRmaWVsZDtcclxuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgICBtYXJnaW4tdG9wOiAxMnB4O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLnNlbGVjdDItcmVzdWx0cyA+IC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbnMge1xyXG4gICAgbWF4LWhlaWdodDogMjAwcHg7XHJcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xyXG4gIH1cclxuXHJcbiAgLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uIHtcclxuICAgIHBhZGRpbmc6IHJlbS1jYWxjKDYgMjApO1xyXG4gICAgJltyb2xlPWdyb3VwXSB7XHJcbiAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICB9XHJcblxyXG4gICAgJlthcmlhLWRpc2FibGVkPXRydWVdIHtcclxuICAgICAgY29sb3I6ICM5OTk7XHJcbiAgICB9XHJcblxyXG4gICAgJlthcmlhLXNlbGVjdGVkPXRydWVdIHtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2RkZDtcclxuICAgIH1cclxuXHJcbiAgICAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24ge1xyXG4gICAgICBwYWRkaW5nLWxlZnQ6IDFlbTtcclxuXHJcbiAgICAgIC5zZWxlY3QyLXJlc3VsdHNfX2dyb3VwIHtcclxuICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbiB7XHJcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC0xZW07XHJcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAyZW07XHJcblxyXG4gICAgICAgIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbiB7XHJcbiAgICAgICAgICBtYXJnaW4tbGVmdDogLTJlbTtcclxuICAgICAgICAgIHBhZGRpbmctbGVmdDogM2VtO1xyXG5cclxuICAgICAgICAgIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbiB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtM2VtO1xyXG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDRlbTtcclxuXHJcbiAgICAgICAgICAgIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbiB7XHJcbiAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC00ZW07XHJcbiAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiA1ZW07XHJcblxyXG4gICAgICAgICAgICAgIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbiB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogLTVlbTtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogNmVtO1xyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uLS1oaWdobGlnaHRlZFthcmlhLXNlbGVjdGVkXSB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2Vjb25kYXJ5LWNvbG9yO1xyXG4gICAgLy8gY29sb3I6IHdoaXRlO1xyXG4gIH1cclxuXHJcbiAgLnNlbGVjdDItcmVzdWx0c19fZ3JvdXAge1xyXG4gICAgY3Vyc29yOiBkZWZhdWx0O1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBwYWRkaW5nOiA2cHg7XHJcbiAgfVxyXG59XHJcbiIsIi5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XHJcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRsaWdodC1ncmF5O1xyXG4gIGJvcmRlci1yYWRpdXM6IHJlbS1jYWxjKDEwKTtcclxuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuNXMgZWFzZS1pbi1vdXQ7XHJcbiAgJjpmb2N1cyB7XHJcbiAgICBvdXRsaW5lOiBub25lO1xyXG4gICAgLy8gYm9yZGVyLWJvdHRvbS1jb2xvcjogJGdhbS1wdXJwbGU7XHJcbiAgfVxyXG5cclxuICAuc2VsZWN0Mi1zZWxlY3Rpb25fX3JlbmRlcmVkIHtcclxuICAgIGNvbG9yOiAjNDQ0O1xyXG4gICAgZm9udC1zaXplOiByZW0tY2FsYygxNik7XHJcbiAgICBmb250LXdlaWdodDogNTAwO1xyXG4gICAgbGluZS1oZWlnaHQ6IHJlbS1jYWxjKDQwKTtcclxuICAgIHBhZGRpbmctbGVmdDogcmVtLWNhbGMoMjApO1xyXG4gICAgJjpmb2N1cyB7XHJcbiAgICAgIG91dGxpbmU6IG5vbmU7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuc2VsZWN0Mi1zZWxlY3Rpb25fX2NsZWFyIHtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgIGZsb2F0OiByaWdodDtcclxuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gIH1cclxuXHJcbiAgLnNlbGVjdDItc2VsZWN0aW9uX19wbGFjZWhvbGRlciB7XHJcbiAgICBjb2xvcjogIzk5OTtcclxuICB9XHJcblxyXG4gIC5zZWxlY3QyLXNlbGVjdGlvbl9fYXJyb3cge1xyXG4gICAgaGVpZ2h0OiByZW0tY2FsYygyMCk7XHJcblxyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG5cclxuICAgIHRvcDogMDtcclxuICAgIHJpZ2h0OiByZW0tY2FsYygxMCk7XHJcblxyXG4gICAgd2lkdGg6IHJlbS1jYWxjKDIwKTtcclxuXHJcbiAgICBiIHtcclxuICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgY29udGVudDogXCJcIjtcclxuICAgIFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICBcdFx0d2lkdGg6IHJlbS1jYWxjKDEwKTtcclxuICAgIFx0XHRoZWlnaHQ6IHJlbS1jYWxjKDEwKTtcclxuICAgICAgICBtYXJnaW4tbGVmdDogcmVtLWNhbGMoNCk7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogcmVtLWNhbGMoLTMpO1xyXG4gICAgXHRcdHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XHJcbiAgICBcdFx0Ym9yZGVyLXJpZ2h0OiAxcHggc29saWQgJGdhbS1wdXJwbGU7XHJcbiAgICBcdFx0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRnYW0tcHVycGxlO1xyXG4gICAgXHRcdHRyYW5zZm9ybS1vcmlnaW46IDAgY2VudGVyO1xyXG4gICAgXHRcdHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuJltkaXI9XCJydGxcIl0ge1xyXG4gIC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlIHtcclxuICAgIC5zZWxlY3QyLXNlbGVjdGlvbl9fY2xlYXIge1xyXG4gICAgICBmbG9hdDogbGVmdDtcclxuICAgIH1cclxuXHJcbiAgICAuc2VsZWN0Mi1zZWxlY3Rpb25fX2Fycm93IHtcclxuICAgICAgbGVmdDogMXB4O1xyXG4gICAgICByaWdodDogYXV0bztcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbiYuc2VsZWN0Mi1jb250YWluZXItLWRpc2FibGVkIHtcclxuICAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWVlO1xyXG4gICAgY3Vyc29yOiBkZWZhdWx0O1xyXG4gICAgb3BhY2l0eTogMC41O1xyXG5cclxuICAgIC5zZWxlY3QyLXNlbGVjdGlvbl9fY2xlYXIge1xyXG4gICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuJi5zZWxlY3QyLWNvbnRhaW5lci0tb3BlbiB7XHJcbiAgLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUge1xyXG4gICAgLnNlbGVjdDItc2VsZWN0aW9uX19hcnJvdyB7XHJcbiAgICAgIGIge1xyXG4gICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgbWFyZ2luLXRvcDogcmVtLWNhbGMoMyk7XHJcbiAgICAgIFx0XHRib3JkZXItcmlnaHQ6IDA7XHJcbiAgICAgIFx0XHRib3JkZXItYm90dG9tOiAwO1xyXG5cclxuICAgICAgXHRcdGJvcmRlci10b3A6IDFweCBzb2xpZCAkZ2FtLXB1cnBsZTtcclxuICAgICAgXHRcdGJvcmRlci1sZWZ0OiAxcHggc29saWQgJGdhbS1wdXJwbGU7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIi5zZWxlY3QyLXNlbGVjdGlvbi0tbXVsdGlwbGUge1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcclxuICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKCRtZWRpdW0tZ3JheSwwKTtcclxuICBib3JkZXItcmFkaXVzOiAwO1xyXG4gIGN1cnNvcjogdGV4dDtcclxuICAmOmZvY3VzIHtcclxuICAgIG91dGxpbmU6IG5vbmU7XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKCRtZWRpdW0tZ3JheSwxKTtcclxuICB9XHJcblxyXG4gIC5zZWxlY3QyLXNlbGVjdGlvbl9fcmVuZGVyZWQge1xyXG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTYpO1xyXG4gICAgbGlzdC1zdHlsZTogbm9uZTtcclxuICAgIG1hcmdpbjogMDtcclxuICAgIHBhZGRpbmc6IDAgMTBweDtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG5cclxuICAgIGxpIHtcclxuICAgICAgbGlzdC1zdHlsZTogbm9uZTtcclxuICAgIH1cclxuICAgICY6Zm9jdXMge1xyXG4gICAgICBvdXRsaW5lOiBub25lO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLnNlbGVjdDItc2VsZWN0aW9uX19wbGFjZWhvbGRlciB7XHJcbiAgICBjb2xvcjogIzk5OTtcclxuXHJcbiAgICBtYXJnaW4tdG9wOiA1cHg7XHJcblxyXG4gICAgZmxvYXQ6IGxlZnQ7XHJcbiAgfVxyXG5cclxuICAuc2VsZWN0Mi1zZWxlY3Rpb25fX2NsZWFyIHtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgIGZsb2F0OiByaWdodDtcclxuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gICAgbWFyZ2luLXRvcDogNXB4O1xyXG4gICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xyXG4gIH1cclxuXHJcbiAgLnNlbGVjdDItc2VsZWN0aW9uX19jaG9pY2Uge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktY29sb3I7XHJcblxyXG4gICAgY3Vyc29yOiBkZWZhdWx0O1xyXG5cclxuICAgIGZsb2F0OiBsZWZ0O1xyXG5cclxuICAgIG1hcmdpbi1yaWdodDogNXB4O1xyXG4gICAgbWFyZ2luLXRvcDogMTJweDtcclxuICAgIG1pbi1oZWlnaHQ6IDM2cHg7XHJcbiAgICBwYWRkaW5nOiAwIDVweDtcclxuICB9XHJcblxyXG4gIC5zZWxlY3QyLXNlbGVjdGlvbl9fY2hvaWNlX19yZW1vdmUge1xyXG4gICAgY29sb3I6IHNjYWxlLWNvbG9yKCRwcmltYXJ5LWNvbG9yLCRsaWdodG5lc3M6NTAlKTtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjgpO1xyXG4gICAgbGluZS1oZWlnaHQ6IDE7XHJcblxyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcblxyXG4gICAgbWFyZ2luLXJpZ2h0OiAycHg7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICB0b3A6IDJweDtcclxuXHJcbiAgICAmOmhvdmVyIHtcclxuICAgICAgY29sb3I6ICR3aGl0ZTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbiZbZGlyPVwicnRsXCJdIHtcclxuICAuc2VsZWN0Mi1zZWxlY3Rpb24tLW11bHRpcGxlIHtcclxuICAgIC5zZWxlY3QyLXNlbGVjdGlvbl9fY2hvaWNlLCAuc2VsZWN0Mi1zZWxlY3Rpb25fX3BsYWNlaG9sZGVyLCAuc2VsZWN0Mi1zZWFyY2gtLWlubGluZSB7XHJcbiAgICAgIGZsb2F0OiByaWdodDtcclxuICAgIH1cclxuXHJcbiAgICAuc2VsZWN0Mi1zZWxlY3Rpb25fX2Nob2ljZSB7XHJcbiAgICAgIG1hcmdpbi1sZWZ0OiA1cHg7XHJcbiAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcclxuICAgIH1cclxuXHJcbiAgICAuc2VsZWN0Mi1zZWxlY3Rpb25fX2Nob2ljZV9fcmVtb3ZlIHtcclxuICAgICAgbWFyZ2luLWxlZnQ6IDJweDtcclxuICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuJi5zZWxlY3QyLWNvbnRhaW5lci0tZm9jdXMge1xyXG4gIC5zZWxlY3QyLXNlbGVjdGlvbi0tbXVsdGlwbGUge1xyXG4gICAgYm9yZGVyOiBzb2xpZCBibGFjayAxcHg7XHJcbiAgICBvdXRsaW5lOiAwO1xyXG4gIH1cclxufVxyXG5cclxuJi5zZWxlY3QyLWNvbnRhaW5lci0tZGlzYWJsZWQge1xyXG4gIC5zZWxlY3QyLXNlbGVjdGlvbi0tbXVsdGlwbGUge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2VlZTtcclxuICAgIGN1cnNvcjogZGVmYXVsdDtcclxuICB9XHJcblxyXG4gIC5zZWxlY3QyLXNlbGVjdGlvbl9fY2hvaWNlX19yZW1vdmUge1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxuICB9XHJcbn1cclxuIiwiLyogU2xpZGVyICovXHJcblxyXG4uc2xpY2stc2xpZGVyIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgIC13ZWJraXQtdG91Y2gtY2FsbG91dDogbm9uZTtcclxuICAgIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XHJcbiAgICAta2h0bWwtdXNlci1zZWxlY3Q6IG5vbmU7XHJcbiAgICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xyXG4gICAgLW1zLXVzZXItc2VsZWN0OiBub25lO1xyXG4gICAgdXNlci1zZWxlY3Q6IG5vbmU7XHJcbiAgICAtbXMtdG91Y2gtYWN0aW9uOiBwYW4teTtcclxuICAgIHRvdWNoLWFjdGlvbjogcGFuLXk7XHJcbiAgICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG59XHJcbi5zbGljay1saXN0IHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIG1hcmdpbjogMDtcclxuICAgIHBhZGRpbmc6IDA7XHJcblxyXG4gICAgJjpmb2N1cyB7XHJcbiAgICAgICAgb3V0bGluZTogbm9uZTtcclxuICAgIH1cclxuXHJcbiAgICAmLmRyYWdnaW5nIHtcclxuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICAgICAgY3Vyc29yOiBoYW5kO1xyXG4gICAgfVxyXG59XHJcbi5zbGljay1zbGlkZXIgLnNsaWNrLXRyYWNrLFxyXG4uc2xpY2stc2xpZGVyIC5zbGljay1saXN0IHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxuICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xyXG4gICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XHJcbn1cclxuXHJcbi5zbGljay10cmFjayB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBsZWZ0OiAwO1xyXG4gICAgdG9wOiAwO1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcblxyXG4gICAgJjpiZWZvcmUsXHJcbiAgICAmOmFmdGVyIHtcclxuICAgICAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgICAgIGRpc3BsYXk6IHRhYmxlO1xyXG4gICAgfVxyXG5cclxuICAgICY6YWZ0ZXIge1xyXG4gICAgICAgIGNsZWFyOiBib3RoO1xyXG4gICAgfVxyXG5cclxuICAgIC5zbGljay1sb2FkaW5nICYge1xyXG4gICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcclxuICAgIH1cclxufVxyXG4uc2xpY2stc2xpZGUge1xyXG4gICAgZmxvYXQ6IGxlZnQ7XHJcbiAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICBtaW4taGVpZ2h0OiAxcHg7XHJcbiAgICBbZGlyPVwicnRsXCJdICYge1xyXG4gICAgICAgIGZsb2F0OiByaWdodDtcclxuICAgIH1cclxuICAgIGltZyB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICB9XHJcbiAgICAmLnNsaWNrLWxvYWRpbmcgaW1nIHtcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgfVxyXG5cclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcblxyXG4gICAgJi5kcmFnZ2luZyBpbWcge1xyXG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG4gICAgfVxyXG5cclxuICAgIC5zbGljay1pbml0aWFsaXplZCAmIHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIH1cclxuXHJcbiAgICAuc2xpY2stbG9hZGluZyAmIHtcclxuICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XHJcbiAgICB9XHJcblxyXG4gICAgLnNsaWNrLXZlcnRpY2FsICYge1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIGhlaWdodDogYXV0bztcclxuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcclxuICAgIH1cclxufVxyXG4uc2xpY2stYXJyb3cuc2xpY2staGlkZGVuIHtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbn1cclxuIiwiQGNoYXJzZXQgXCJVVEYtOFwiO1xyXG5cclxuLy8gRGVmYXVsdCBWYXJpYWJsZXNcclxuXHJcbi8vIFNsaWNrIGljb24gZW50aXR5IGNvZGVzIG91dHB1dHMgdGhlIGZvbGxvd2luZ1xyXG4vLyBcIlxcMjE5MFwiIG91dHB1dHMgYXNjaWkgY2hhcmFjdGVyIFwi4oaQXCJcclxuLy8gXCJcXDIxOTJcIiBvdXRwdXRzIGFzY2lpIGNoYXJhY3RlciBcIuKGklwiXHJcbi8vIFwiXFwyMDIyXCIgb3V0cHV0cyBhc2NpaSBjaGFyYWN0ZXIgXCLigKJcIlxyXG5cclxuJHNsaWNrLWZvbnQtcGF0aDogXCIuLi9mb250cy9mb250YXdlc29tZVwiICFkZWZhdWx0O1xyXG4kc2xpY2stZm9udC1mYW1pbHk6ICdGb250IEF3ZXNvbWUgNSBGcmVlJyAhZGVmYXVsdDtcclxuJHNsaWNrLWxvYWRlci1wYXRoOiBcIi4uL2ltYWdlcy9cIiAhZGVmYXVsdDtcclxuJHNsaWNrLWFycm93LWNvbG9yOiBnZXQtY29sb3IocHJpbWFyeSkgIWRlZmF1bHQ7XHJcbiRzbGljay1kb3QtY29sb3I6IGdldC1jb2xvcihzZWNvbmRhcnkpICFkZWZhdWx0O1xyXG4kc2xpY2stZG90LWNvbG9yLWFjdGl2ZTogJHNsaWNrLWRvdC1jb2xvciAhZGVmYXVsdDtcclxuJHNsaWNrLXByZXYtY2hhcmFjdGVyOiBcIlxcZjEwNFwiICFkZWZhdWx0O1xyXG4kc2xpY2stbmV4dC1jaGFyYWN0ZXI6IFwiXFxmMTA1XCIgIWRlZmF1bHQ7XHJcbiRzbGljay1kb3QtY2hhcmFjdGVyOiBcIlxcZjExMVwiICFkZWZhdWx0O1xyXG4kc2xpY2stZG90LXNpemU6IDZweCAhZGVmYXVsdDtcclxuJHNsaWNrLW9wYWNpdHktZGVmYXVsdDogMC44NSAhZGVmYXVsdDtcclxuJHNsaWNrLW9wYWNpdHktb24taG92ZXI6IDEgIWRlZmF1bHQ7XHJcbiRzbGljay1vcGFjaXR5LW5vdC1hY3RpdmU6IDAuMjUgIWRlZmF1bHQ7XHJcblxyXG5AZnVuY3Rpb24gc2xpY2staW1hZ2UtdXJsKCR1cmwpIHtcclxuICAgIEBpZiBmdW5jdGlvbi1leGlzdHMoaW1hZ2UtdXJsKSB7XHJcbiAgICAgICAgQHJldHVybiBpbWFnZS11cmwoJHVybCk7XHJcbiAgICB9XHJcbiAgICBAZWxzZSB7XHJcbiAgICAgICAgQHJldHVybiB1cmwoJHNsaWNrLWxvYWRlci1wYXRoICsgJHVybCk7XHJcbiAgICB9XHJcbn1cclxuXHJcbkBmdW5jdGlvbiBzbGljay1mb250LXVybCgkdXJsKSB7XHJcbiAgICBAaWYgZnVuY3Rpb24tZXhpc3RzKGZvbnQtdXJsKSB7XHJcbiAgICAgICAgQHJldHVybiBmb250LXVybCgkdXJsKTtcclxuICAgIH1cclxuICAgIEBlbHNlIHtcclxuICAgICAgICBAcmV0dXJuIHVybCgkc2xpY2stZm9udC1wYXRoICsgJHVybCk7XHJcbiAgICB9XHJcbn1cclxuXHJcbi8qIFNsaWRlciAqL1xyXG5cclxuLnNsaWNrLWxpc3Qge1xyXG4gIHotaW5kZXg6IDM7XHJcbiAgICAuc2xpY2stbG9hZGluZyAmIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiAjZmZmIHNsaWNrLWltYWdlLXVybChcImFqYXgtbG9hZGVyLmdpZlwiKSBjZW50ZXIgY2VudGVyIG5vLXJlcGVhdDtcclxuICAgIH1cclxufVxyXG5cclxuLyogSWNvbnMgKi9cclxuQGlmICRzbGljay1mb250LWZhbWlseSA9PSBcInNsaWNrXCIge1xyXG4gICAgQGZvbnQtZmFjZSB7XHJcbiAgICAgICAgZm9udC1mYW1pbHk6IFwic2xpY2tcIjtcclxuICAgICAgICBzcmM6IHNsaWNrLWZvbnQtdXJsKFwic2xpY2suZW90XCIpO1xyXG4gICAgICAgIHNyYzogc2xpY2stZm9udC11cmwoXCJzbGljay5lb3Q/I2llZml4XCIpIGZvcm1hdChcImVtYmVkZGVkLW9wZW50eXBlXCIpLCBzbGljay1mb250LXVybChcInNsaWNrLndvZmZcIikgZm9ybWF0KFwid29mZlwiKSwgc2xpY2stZm9udC11cmwoXCJzbGljay50dGZcIikgZm9ybWF0KFwidHJ1ZXR5cGVcIiksIHNsaWNrLWZvbnQtdXJsKFwic2xpY2suc3ZnI3NsaWNrXCIpIGZvcm1hdChcInN2Z1wiKTtcclxuICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xyXG4gICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcclxuICAgIH1cclxufVxyXG5cclxuLyogQXJyb3dzICovXHJcblxyXG4uc2xpY2stcHJldixcclxuLnNsaWNrLW5leHQge1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICB0b3A6IDA7XHJcbiAgei1pbmRleDogNDtcclxuICBkaXNwbGF5OiBibG9jaztcclxuICBoZWlnaHQ6IDYwcHg7XHJcbiAgd2lkdGg6IDYwcHg7XHJcbiAgbGluZS1oZWlnaHQ6IDBweDtcclxuICBmb250LXNpemU6IDBweDtcclxuICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgYmFja2dyb3VuZDogZ2V0LWNvbG9yKHByaW1hcnkpO1xyXG4gIGNvbG9yOiAkd2hpdGU7XHJcbiAgcGFkZGluZzogMDtcclxuICBib3JkZXI6IG5vbmU7XHJcbiAgb3V0bGluZTogbm9uZTtcclxuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG4gICAgdG9wOiBhdXRvO1xyXG4gICAgYm90dG9tOiAzMHB4O1xyXG4gIH1cclxuICAmOmhvdmVyLCAmOmZvY3VzIHtcclxuICAgICAgb3V0bGluZTogbm9uZTtcclxuICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgb3BhY2l0eTogJHNsaWNrLW9wYWNpdHktb24taG92ZXI7XHJcbiAgICAgIH1cclxuICB9XHJcbiAgJi5zbGljay1kaXNhYmxlZDpiZWZvcmUge1xyXG4gICAgICBvcGFjaXR5OiAkc2xpY2stb3BhY2l0eS1ub3QtYWN0aXZlO1xyXG4gIH1cclxuICAmOmJlZm9yZSB7XHJcbiAgICAgIGZvbnQtZmFtaWx5OiAkc2xpY2stZm9udC1mYW1pbHk7XHJcbiAgICAgIGZvbnQtc2l6ZTogMjBweDtcclxuICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICAgICAgbGluZS1oZWlnaHQ6IDE7XHJcbiAgICAgIGNvbG9yOiAkd2hpdGU7XHJcbiAgICAgIG9wYWNpdHk6ICRzbGljay1vcGFjaXR5LWRlZmF1bHQ7XHJcbiAgICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xyXG4gICAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xyXG4gIH1cclxufVxyXG5cclxuLnNsaWNrLXByZXYge1xyXG4gIHJpZ2h0OiA5MHB4O1xyXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XHJcbiAgICByaWdodDogYXV0bztcclxuICAgIGxlZnQ6IHJlbS1jYWxjKDU0MCk7XHJcbiAgfVxyXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XHJcbiAgICBsZWZ0OiByZW0tY2FsYyg2NzApO1xyXG4gIH1cclxuICAgIFtkaXI9XCJydGxcIl0gJiB7XHJcbiAgICB9XHJcbiAgICAmOmJlZm9yZSB7XHJcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XHJcbiAgXHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICBcdFx0d2lkdGg6IHJlbS1jYWxjKDkpO1xyXG4gIFx0XHRoZWlnaHQ6IHJlbS1jYWxjKDkpO1xyXG4gIFx0XHR2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG4gIFx0XHRib3JkZXItdG9wOiAxcHggc29saWQgJHdoaXRlO1xyXG4gIFx0XHRib3JkZXItbGVmdDogMXB4IHNvbGlkICR3aGl0ZTtcclxuICBcdFx0dHJhbnNmb3JtLW9yaWdpbjogY2VudGVyO1xyXG4gIFx0XHR0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpO1xyXG4gICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XHJcbiAgICAgIFx0XHRib3JkZXItdG9wOiAxcHggc29saWQgJHdoaXRlO1xyXG4gICAgICBcdFx0Ym9yZGVyLXJpZ2h0OiAxcHggc29saWQgJHdoaXRlO1xyXG4gICAgICAgICAgYm9yZGVyLWxlZnQ6IHRyYW5zcGFyZW50O1xyXG4gICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLnNsaWNrLW5leHQge1xyXG4gIHJpZ2h0OiAzMHB4O1xyXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XHJcbiAgICByaWdodDogYXV0bztcclxuICAgIGxlZnQ6IHJlbS1jYWxjKDYwMCk7XHJcbiAgfVxyXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XHJcbiAgICBsZWZ0OiByZW0tY2FsYyg3MzApO1xyXG4gIH1cclxuICAgIFtkaXI9XCJydGxcIl0gJiB7XHJcbiAgICB9XHJcbiAgICAmOmFmdGVyIHtcclxuICAgICAgY29udGVudDogXCJcIjtcclxuICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgbGVmdDogMDtcclxuICAgICAgdG9wOiA1MCU7XHJcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcclxuICAgICAgaGVpZ2h0OiAzMHB4O1xyXG4gICAgICB3aWR0aDogMXB4O1xyXG4gICAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XHJcbiAgICAgIHotaW5kZXg6IDI7XHJcbiAgICB9XHJcbiAgICAmOmJlZm9yZSB7XHJcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XHJcbiAgXHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICBcdFx0d2lkdGg6IHJlbS1jYWxjKDkpO1xyXG4gIFx0XHRoZWlnaHQ6IHJlbS1jYWxjKDkpO1xyXG4gIFx0XHR2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG4gIFx0XHRib3JkZXItdG9wOiAxcHggc29saWQgJHdoaXRlO1xyXG4gIFx0XHRib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAkd2hpdGU7XHJcbiAgXHRcdHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjtcclxuICBcdFx0dHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xyXG4gICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XHJcbiAgICAgIFx0XHRib3JkZXItdG9wOiAxcHggc29saWQgJHdoaXRlO1xyXG4gICAgICBcdFx0Ym9yZGVyLWxlZnQ6IDFweCBzb2xpZCAkd2hpdGU7XHJcbiAgICAgICAgICBib3JkZXItcmlnaHQ6IHRyYW5zcGFyZW50O1xyXG4gICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLyogRG90cyAqL1xyXG5cclxuLnNsaWNrLWRvdHRlZC5zbGljay1zbGlkZXIge1xyXG4gICAgLy8gbWFyZ2luLWJvdHRvbTogMzBweDtcclxufVxyXG5cclxuLnNsaWNrLWRvdHMge1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICB6LWluZGV4OiAzO1xyXG4gIGJvdHRvbTogcmVtLWNhbGMoMTApO1xyXG4gIGRpc3BsYXk6IGZsZXg7XHJcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcclxuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XHJcbiAgYWxpZ24tY29udGVudDogZmxleC1lbmQ7XHJcbiAgbGlzdC1zdHlsZTogbm9uZTtcclxuICBtYXJnaW46IDA7XHJcbiAgbGVmdDogYXV0bztcclxuICByaWdodDogMDtcclxuICBAZXh0ZW5kIC5ib2R5LXB1c2g7XHJcbiAgbWFyZ2luLWxlZnQ6IHJlbS1jYWxjKChtYXAtZ2V0KCRncmlkLWNvbHVtbi1ndXR0ZXIsc21hbGwpLzIpLTIpO1xyXG4gIG1hcmdpbi1yaWdodDogcmVtLWNhbGMoKG1hcC1nZXQoJGdyaWQtY29sdW1uLWd1dHRlcixzbWFsbCkvMiktMik7XHJcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuICAgIGJvdHRvbTogcmVtLWNhbGMoNTApO1xyXG4gICAgbWFyZ2luLWxlZnQ6IHJlbS1jYWxjKChtYXAtZ2V0KCRncmlkLWNvbHVtbi1ndXR0ZXIsbWVkaXVtKS8yKS0yKTtcclxuICAgIG1hcmdpbi1yaWdodDogcmVtLWNhbGMoKG1hcC1nZXQoJGdyaWQtY29sdW1uLWd1dHRlcixtZWRpdW0pLzIpLTIpO1xyXG4gIH1cclxuICBsaSB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICBtYXJnaW46IDAgMnB4O1xyXG4gICAgcGFkZGluZzogMDtcclxuICAgICY6YmVmb3JlIHtcclxuICAgICAgZGlzcGxheTogbm9uZTtcclxuICB9XHJcbiAgY3Vyc29yOiBwb2ludGVyO1xyXG4gIGJ1dHRvbiB7XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCBnZXQtY29sb3IocHJpbWFyeSk7XHJcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgaGVpZ2h0OiAxMHB4O1xyXG4gICAgd2lkdGg6IDEwcHg7XHJcbiAgICBib3JkZXItcmFkaXVzOiA1cHg7XHJcbiAgICBvdXRsaW5lOiBub25lO1xyXG4gICAgbGluZS1oZWlnaHQ6IDBweDtcclxuICAgIGZvbnQtc2l6ZTogMHB4O1xyXG4gICAgY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgJjpob3ZlciwgJjpmb2N1cyB7XHJcbiAgICAgICAgb3V0bGluZTogbm9uZTtcclxuICAgICAgICBiYWNrZ3JvdW5kOiBnZXQtY29sb3IocHJpbWFyeSk7XHJcbiAgICAgICAgb3BhY2l0eTogJHNsaWNrLW9wYWNpdHktb24taG92ZXI7XHJcbiAgICAgICAgLy8gJjpiZWZvcmUge1xyXG4gICAgICAgICAgICAvLyAgICAgb3BhY2l0eTogJHNsaWNrLW9wYWNpdHktb24taG92ZXI7XHJcbiAgICAgICAgICAgIC8vIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgLy8gJjpiZWZvcmUge1xyXG4gICAgICAgICAgICAvLyAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICAvLyAgICAgdG9wOiAwO1xyXG4gICAgICAgICAgICAvLyAgICAgbGVmdDogMDtcclxuICAgICAgICAgICAgLy8gICAgIGNvbnRlbnQ6ICRzbGljay1kb3QtY2hhcmFjdGVyO1xyXG4gICAgICAgICAgICAvLyAgICAgd2lkdGg6IDIwcHg7XHJcbiAgICAgICAgICAgIC8vICAgICBoZWlnaHQ6IDIwcHg7XHJcbiAgICAgICAgICAgIC8vICAgICBmb250LWZhbWlseTogJHNsaWNrLWZvbnQtZmFtaWx5O1xyXG4gICAgICAgICAgICAvLyAgICAgZm9udC1zaXplOiAkc2xpY2stZG90LXNpemU7XHJcbiAgICAgICAgICAgIC8vICAgICBsaW5lLWhlaWdodDogMjBweDtcclxuICAgICAgICAgICAgLy8gICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICAgICAgLy8gICAgIGNvbG9yOiAkc2xpY2stZG90LWNvbG9yO1xyXG4gICAgICAgICAgICAvLyAgICAgb3BhY2l0eTogJHNsaWNrLW9wYWNpdHktbm90LWFjdGl2ZTtcclxuICAgICAgICAgICAgLy8gICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xyXG4gICAgICAgICAgICAvLyAgICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcclxuICAgICAgICAgICAgLy8gfVxyXG4gICAgICAgIH1cclxuICAgICAgICAmLnNsaWNrLWFjdGl2ZSBidXR0b24ge1xyXG4gICAgICAgICAgYmFja2dyb3VuZDogZ2V0LWNvbG9yKHByaW1hcnkpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4iLCIvLyBUZXh0IG1lYW50IG9ubHkgZm9yIHNjcmVlbiByZWFkZXJzLiBBZGRyZXNzZXMgcGFydCBvZiB0aGVtZS1jaGVjayBpc3N1ZSAjODQwLlxyXG4vLyBodHRwczovL2dpdGh1Yi5jb20vQXV0b21hdHRpYy9fcy9ibG9iL21hc3Rlci9zdHlsZS5jc3NcclxuLnNjcmVlbi1yZWFkZXItdGV4dCB7XHJcbiAgY2xpcDogcmVjdCgxcHgsIDFweCwgMXB4LCAxcHgpO1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xyXG4gIGhlaWdodDogMXB4O1xyXG4gIHdpZHRoOiAxcHg7XHJcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcclxufVxyXG5cclxuLnNjcmVlbi1yZWFkZXItdGV4dDpmb2N1cyB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogI2YxZjFmMTtcclxuICBib3JkZXItcmFkaXVzOiAzcHg7XHJcbiAgYm94LXNoYWRvdzogMCAwIDJweCAycHggcmdiYSgwLCAwLCAwLCAwLjYpO1xyXG4gIGNsaXA6IGF1dG8gIWltcG9ydGFudDtcclxuICBjb2xvcjogIzIxNzU5YjtcclxuICBkaXNwbGF5OiBibG9jaztcclxuICBmb250LXNpemU6IDE0cHg7XHJcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcclxuICBmb250LXdlaWdodDogYm9sZDtcclxuICBoZWlnaHQ6IGF1dG87XHJcbiAgbGVmdDogNXB4O1xyXG4gIGxpbmUtaGVpZ2h0OiBub3JtYWw7XHJcbiAgcGFkZGluZzogMTVweCAyM3B4IDE0cHg7XHJcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gIHRvcDogNXB4O1xyXG4gIHdpZHRoOiBhdXRvO1xyXG4gIHotaW5kZXg6IDEwMDAwMDsgLy8gQWJvdmUgV1AgdG9vbGJhci5cclxufVxyXG4iLCIvLyBGaXggdGhlIGlzc3VlIHdoZXJlIHRoZSBXUCBhZG1pbi1iYXIgb3ZlcmxhcHMgdGhlIG1vYmlsZSBtZW51XHJcbiN3cGFkbWluYmFyIHtcclxuICBwb3NpdGlvbjogZml4ZWQgIWltcG9ydGFudDtcclxufVxyXG5cclxuLy8gTWFrZSBzdXJlIHRoYXQgdGhlIFdQIGFkbWluLWJhciBkb2VzIG5vdCBvdmVybGFwIEZvdW5kYXRpb24gY29tcG9uZW50c1xyXG5ib2R5LmFkbWluLWJhciB7XHJcbiAgLy8gT2Zmc2V0IHN0aWNreSB0b3AgYmFyXHJcbiAgJi5mLXRvcGJhci1maXhlZCB7XHJcbiAgICAuc3RpY2t5LmZpeGVkIHtcclxuICAgICAgbWFyZ2luLXRvcDogcmVtLWNhbGMoMzIpO1xyXG4gICAgfVxyXG4gIH1cclxuICAvLyBPZmZzZXQgbW9iaWxlIG9mZi1jYW52YXMgbWVudVxyXG4gICYub2ZmY2FudmFzIHtcclxuICAgIC5vZmYtY2FudmFzLmlzLW9wZW4ge1xyXG4gICAgICB0b3A6IHJlbS1jYWxjKDQ2KTtcclxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCg3ODMpIHtcclxuICAgICAgICB0b3A6IHJlbS1jYWxjKDMyKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCIud3AtY2FwdGlvbiA+IGZpZ2NhcHRpb24ge1xyXG4gIG1heC13aWR0aDogMTAwJTtcclxuICBmb250LXNpemU6IDAuOHJlbTtcclxuICBjb2xvcjogIzk5OTtcclxuICBwYWRkaW5nOiAwLjI1cmVtIDA7XHJcbn1cclxuXHJcbnAud3AtY2FwdGlvbi10ZXh0e1xyXG4gIGZvbnQtc2l6ZTo5MCU7XHJcbiAgY29sb3I6ICM2NjY7XHJcbiAgcGFkZGluZzpyZW0tY2FsYygxMCkgMDtcclxufVxyXG5cclxuLmFsaWdubGVmdCB7XHJcbiAgZmxvYXQ6IGxlZnQ7XHJcbiAgcGFkZGluZy1yaWdodDogMXJlbTtcclxuICBtYXJnaW46IDA7XHJcbn1cclxuXHJcbi5hbGlnbnJpZ2h0IHtcclxuICBmbG9hdDogcmlnaHQ7XHJcbiAgcGFkZGluZy1sZWZ0OiAxcmVtO1xyXG4gIG1hcmdpbjogMDtcclxufVxyXG5cclxuLmFsaWduY2VudGVyIHtcclxuICBkaXNwbGF5OiBibG9jaztcclxuICBtYXJnaW4tbGVmdDogYXV0bztcclxuICBtYXJnaW4tcmlnaHQ6IGF1dG87XHJcbn1cclxuXHJcbi5nYWxsZXJ5IHtcclxuICBAaW5jbHVkZSB4eS1ncmlkO1xyXG4gIEBpbmNsdWRlIHh5LWd1dHRlcnMoJG5lZ2F0aXZlOiB0cnVlKTtcclxuICBAZm9yICRpIGZyb20gMSB0aHJvdWdoIDkge1xyXG4gICAgJi5nYWxsZXJ5LWNvbHVtbnMtI3skaX0ge1xyXG4gICAgICBAaW5jbHVkZSB4eS1ncmlkLWxheW91dCgyLCAnLmdhbGxlcnktaXRlbScsIHRydWUpO1xyXG4gICAgfVxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pe1xyXG4gICAgICAmLmdhbGxlcnktY29sdW1ucy0jeyRpfSB7XHJcbiAgICAgICAgQGluY2x1ZGUgeHktZ3JpZC1sYXlvdXQoNCwgJy5nYWxsZXJ5LWl0ZW0nLCB0cnVlLCAoc21hbGw6IDMwcHgpKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xyXG4gICAgICAmLmdhbGxlcnktY29sdW1ucy0jeyRpfSB7XHJcbiAgICAgICAgQGluY2x1ZGUgeHktZ3JpZC1sYXlvdXQoJGksICcuZ2FsbGVyeS1pdGVtJywgdHJ1ZSwgKHNtYWxsOiAzMHB4KSk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgLmdhbGxlcnktaWNvbiA+IGEge1xyXG4gICAgQGluY2x1ZGUgdGh1bWJuYWlsO1xyXG4gICAgQGluY2x1ZGUgdGh1bWJuYWlsLWxpbms7XHJcbiAgfVxyXG4gIC5nYWxsZXJ5LWljb24gPiBpbWcsXHJcbiAgLmdhbGxlcnktaWNvbiA+IHBpY3R1cmUgaW1nIHtcclxuICAgIEBpbmNsdWRlIHRodW1ibmFpbDtcclxuICB9XHJcbn1cclxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgeHktZ3JpZFxuLy8vL1xuXG4vLy8gQ3JlYXRlcyBhIG1heCB3aWR0aCBjb250YWluZXIsIGRlc2lnbmVkIHRvIGhvdXNlIHlvdXIgZ3JpZCBjb250ZW50LlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR3aWR0aCBbJGdyaWQtY29udGFpbmVyXSAtIGEgd2lkdGggdG8gbGltaXQgdGhlIGNvbnRhaW5lciB0by5cbi8vLyBAcGFyYW0ge051bWJlcn0gJHBhZGRpbmcgWyRncmlkLWNvbnRhaW5lci1wYWRkaW5nXSAtIHBhZGRpbmdzIG9mIHRoZSBjb250YWluZXIuXG5AbWl4aW4geHktZ3JpZC1jb250YWluZXIoXG4gICR3aWR0aDogJGdyaWQtY29udGFpbmVyLFxuICAkcGFkZGluZzogJGdyaWQtY29udGFpbmVyLXBhZGRpbmdcbikge1xuICBAaW5jbHVkZSB4eS1ndXR0ZXJzKCRndXR0ZXJzOiAkcGFkZGluZywgJGd1dHRlci10eXBlOiBwYWRkaW5nKTtcblxuICBtYXgtd2lkdGg6ICR3aWR0aDtcbiAgbWFyZ2luOiAwIGF1dG87XG59XG5cbi8vLyBDcmVhdGVzIGEgY29udGFpbmVyIGZvciB5b3VyIGZsZXggY2VsbHMuXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRkaXJlY3Rpb24gW2hvcml6b250YWxdIC0gRWl0aGVyIGhvcml6b250YWwgb3IgdmVydGljYWwgZGlyZWN0aW9uIG9mIGNlbGxzIHdpdGhpbi5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICR3cmFwIFt0cnVlXSAtIElmIHRoZSBjZWxscyB3aXRoaW4gc2hvdWxkIHdyYXAgb3Igbm90LlxuQG1peGluIHh5LWdyaWQoXG4gICRkaXJlY3Rpb246IGhvcml6b250YWwsXG4gICR3cmFwOiB0cnVlXG4pIHtcbiAgJGRpcmVjdGlvbjogaWYoJGRpcmVjdGlvbiA9PSAnaG9yaXpvbnRhbCcsIHJvdywgY29sdW1uKTtcbiAgJHdyYXA6IGlmKCR3cmFwLCB3cmFwLCBub3dyYXApO1xuXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogJGRpcmVjdGlvbiAkd3JhcDtcbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHh5LWdyaWRcbi8vLy9cblxuLy8vIENyZWF0ZSBndXR0ZXJzIGZvciBhIGNlbGwvY29udGFpbmVyLlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkZ3V0dGVycyBbJGdyaWQtbWFyZ2luLWd1dHRlcnNdIC0gTWFwIG9yIHNpbmdsZSB2YWx1ZSBmb3IgZ3V0dGVycy5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRndXR0ZXItdHlwZSBbbWFyZ2luXSAtIFR5cGUgb2YgZ3V0dGVyIHRvIG91dHB1dC4gQWNjZXB0cyBlaXRoZXIgbWFyZ2luIG9yIHBhZGRpbmcuXG4vLy8gQHBhcmFtIHtMaXN0fSAkZ3V0dGVyLXBvc2l0aW9uIFtyaWdodCBsZWZ0XSAtIFRoZSBwb3NpdGlvbiB0byBhcHBseSBndXR0ZXJzIHRvLiBBY2NlcHRzIGB0b3BgLCBgYm90dG9tYCwgYGxlZnRgLCBgcmlnaHRgIGluIGFueSBjb21iaW5hdGlvbi5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRuZWdhdGl2ZSBbZmFsc2VdIC0gV2hldGhlciB0byBhcHBseSB0aGUgZ3V0dGVyIGFzIGEgbmVnYXRpdmUgdmFsdWUuIENvbW1vbmx5IHVzZWQgZm9yIG5lc3RlZCBncmlkcy5cbkBtaXhpbiB4eS1ndXR0ZXJzKFxuICAkZ3V0dGVyczogJGdyaWQtbWFyZ2luLWd1dHRlcnMsXG4gICRndXR0ZXItdHlwZTogbWFyZ2luLFxuICAkZ3V0dGVyLXBvc2l0aW9uOiByaWdodCBsZWZ0LFxuICAkbmVnYXRpdmU6IGZhbHNlXG4pIHtcbiAgJG9wZXJhdG9yOiBpZigkbmVnYXRpdmUsICctJywgJycpO1xuXG4gIC8vIElmIHdlIGhhdmUgZGVjbGFyZWQgbmVnYXRpdmUgZ3V0dGVycywgZm9yY2UgdHlwZSB0byBgbWFyZ2luLlxuICAkZ3V0dGVyLXR5cGU6IGlmKCRuZWdhdGl2ZSwgJ21hcmdpbicsICRndXR0ZXItdHlwZSk7XG5cbiAgLy8gT3V0cHV0IG91ciBtYXJnaW4gZ3V0dGVycy5cbiAgQGlmICh0eXBlLW9mKCRndXR0ZXJzKSA9PSAnbWFwJykge1xuICAgIEBpbmNsdWRlIC16Zi1icmVha3BvaW50LXZhbHVlKGF1dG8sICRndXR0ZXJzKSB7XG4gICAgICAkZ3V0dGVyOiByZW0tY2FsYygkLXpmLWJwLXZhbHVlKSAvIDI7XG5cbiAgICAgIC8vIExvb3AgdGhyb3VnaCBlYWNoIGd1dHRlciBwb3NpdGlvblxuICAgICAgQGVhY2ggJHZhbHVlIGluICRndXR0ZXItcG9zaXRpb24ge1xuICAgICAgICAjeyRndXR0ZXItdHlwZX0tI3skdmFsdWV9OiB1bnF1b3RlKFwiI3skb3BlcmF0b3J9I3skZ3V0dGVyfVwiKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2UgaWYgKHR5cGUtb2YoJGd1dHRlcnMpID09ICdudW1iZXInKSB7XG4gICAgJGd1dHRlcjogcmVtLWNhbGMoJGd1dHRlcnMpIC8gMjtcblxuICAgIC8vIExvb3AgdGhyb3VnaCBlYWNoIGd1dHRlciBwb3NpdGlvblxuICAgIEBlYWNoICR2YWx1ZSBpbiAkZ3V0dGVyLXBvc2l0aW9uIHtcbiAgICAgICN7JGd1dHRlci10eXBlfS0jeyR2YWx1ZX06IHVucXVvdGUoXCIjeyRvcGVyYXRvcn0jeyRndXR0ZXJ9XCIpO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgeHktZ3JpZFxuLy8vL1xuXG4vLy8gU2l6ZXMgY2hpbGQgZWxlbWVudHMgc28gdGhhdCBgJG5gIG51bWJlciBvZiBpdGVtcyBhcHBlYXIgb24gZWFjaCByb3cuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJG4gLSBOdW1iZXIgb2YgZWxlbWVudHMgdG8gZGlzcGxheSBwZXIgcm93LlxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkc2VsZWN0b3IgWycuY2VsbCddIC0gU2VsZWN0b3IocykgdG8gdXNlIGZvciBjaGlsZCBlbGVtZW50cy5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRndXR0ZXItb3V0cHV0IFt0cnVlXSAtIFdoZXRoZXIgb3Igbm90IHRvIG91dHB1dCBndXR0ZXJzXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkZ3V0dGVycyBbJGdyaWQtbWFyZ2luLWd1dHRlcnNdIC0gTWFwIG9yIHNpbmdsZSB2YWx1ZSBmb3IgZ3V0dGVycy5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRndXR0ZXItdHlwZSBbbWFyZ2luXSAtIFR5cGUgb2YgZ3V0dGVyIHRvIG91dHB1dC4gQWNjZXB0cyBgbWFyZ2luYCBvciBgcGFkZGluZ2AuXG4vLy8gQHBhcmFtIHtMaXN0fSAkZ3V0dGVyLXBvc2l0aW9uIFtyaWdodCBsZWZ0XSAtIFRoZSBwb3NpdGlvbiB0byBhcHBseSBndXR0ZXJzIHRvLiBBY2NlcHRzIGB0b3BgLCBgYm90dG9tYCwgYGxlZnRgLCBgcmlnaHRgIGluIGFueSBjb21iaW5hdGlvbi5cbi8vLyBAcGFyYW0ge1N0cmluZ30gJGJyZWFrcG9pbnQgW251bGxdIC0gVGhlIGJyZWFrcG9pbnQgdG8gdXNlIGZvciB0aGUgY2VsbCBnZW5lcmF0aW9uLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJHZlcnRpY2FsIFtmYWxzZV0gLSBTZXQgdG8gdHJ1ZSB0byBvdXRwdXQgdmVydGljYWwgKGhlaWdodCkgc3R5bGVzIHJhdGhlciB0aGFuIHdpZHRocy5cbkBtaXhpbiB4eS1ncmlkLWxheW91dChcbiAgJG4sXG4gICRzZWxlY3RvcjogJy5jZWxsJyxcbiAgJGd1dHRlci1vdXRwdXQ6IHRydWUsXG4gICRndXR0ZXJzOiAkZ3JpZC1tYXJnaW4tZ3V0dGVycyxcbiAgJGd1dHRlci10eXBlOiBtYXJnaW4sXG4gICRndXR0ZXItcG9zaXRpb246IHJpZ2h0IGxlZnQsXG4gICRicmVha3BvaW50OiBudWxsLFxuICAkdmVydGljYWw6IGZhbHNlXG4pIHtcbiAgJHNpemU6IHBlcmNlbnRhZ2UoMS8kbik7XG5cbiAgJiA+ICN7JHNlbGVjdG9yfSB7XG4gICAgQGluY2x1ZGUgeHktY2VsbCgkc2l6ZSwgJGd1dHRlci1vdXRwdXQsICRndXR0ZXJzLCAkZ3V0dGVyLXR5cGUsICRndXR0ZXItcG9zaXRpb24sICRicmVha3BvaW50LCAkdmVydGljYWwpO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCB4eS1ncmlkXG4vLy8vXG5cbi8vLyBDYWxjdWxhdGUgdGhlIHBlcmNlbnRhZ2Ugc2l6ZSBvZiBhIGNlbGwuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcnxMaXN0fSAkc2l6ZSBbJGdyaWQtY29sdW1uc10gLSBTaXplIHRvIG1ha2UgdGhlIGNlbGwuIFlvdSBjYW4gcGFzcyBhIHZhbHVlIGluIG11bHRpcGxlIGZvcm1hdHMsIHN1Y2ggYXMgYDZgLCBgNTAlYCwgYDEgb2YgMmAgb3IgYDEvM2AuXG5AZnVuY3Rpb24geHktY2VsbC1zaXplKFxuICAkc2l6ZTogJGdyaWQtY29sdW1uc1xuKSB7XG4gIC8vIFBhcnNpbmcgcGVyY2VudHMsIGRlY2ltYWxzLCBuIG9mIG4gYW5kIG51bWJlciBjb3VudHNcbiAgQGlmIHR5cGUtb2YoJHNpemUpID09ICdudW1iZXInIHtcbiAgICBAaWYgdW5pdCgkc2l6ZSkgPT0gJyUnIHtcbiAgICAgICRzaXplOiAkc2l6ZTtcbiAgICB9XG4gICAgQGVsc2UgaWYgJHNpemUgPCAxIHtcbiAgICAgICRzaXplOiBwZXJjZW50YWdlKCRzaXplKTtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgJHNpemU6IHBlcmNlbnRhZ2UoJHNpemUgLyAkZ3JpZC1jb2x1bW5zKTtcbiAgICB9XG4gIH1cblxuICAvLyBQYXJzaW5nIFwibiBvZiBuXCIgb3IgXCJuL25cIiBleHByZXNzaW9uc1xuICBAZWxzZSBpZiB0eXBlLW9mKCRzaXplKSA9PSAnbGlzdCcge1xuICAgIEBpZiBsZW5ndGgoJHNpemUpICE9IDMge1xuICAgICAgQGVycm9yICdXcm9uZyBzeW50YXggZm9yIHh5LWNlbGwtc2l6ZSgpLiBVc2UgdGhlIGZvcm1hdCBcIm4gb2YgblwiIG9yIFwibi9uXCIuJztcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgJHNpemU6IHBlcmNlbnRhZ2UobnRoKCRzaXplLCAxKSAvIG50aCgkc2l6ZSwgMykpO1xuICAgIH1cbiAgfVxuICAvLyBBbnl0aGluZyBlbHNlIGlzIGluY29ycmVjdFxuICBAZWxzZSB7XG4gICAgQGVycm9yICdXcm9uZyBzeW50YXggZm9yIHh5LWNlbGwtc2l6ZSgpLiBVc2UgYSBudW1iZXIsIGRlY2ltYWwsIHBlcmNlbnRhZ2UsIG9yIFwibiBvZiBuXCIgLyBcIm4vblwiLic7XG4gIH1cblxuICBAcmV0dXJuICRzaXplO1xufVxuXG4vLy8gU2V0cyBiYXNlIGZsZXggcHJvcGVydGllcyBmb3IgY2VsbHMuXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzaXplIFtmdWxsXSAtIFRoZSBzaXplIG9mIHlvdXIgY2VsbC4gQWNjZXB0cyBgZnVsbGAsIGBhdXRvYCwgYHNocmlua2Agb3IgYGdyb3dgLlxuQG1peGluIHh5LWNlbGwtYmFzZSgkc2l6ZTogZnVsbCkge1xuICBAaWYoJHNpemUgPT0gJ2Z1bGwnKSB7XG4gICAgLy8gVGhpcyBpcyB0aGUgYmFzZSBzdHlsZSwgYWxsIG90aGVycyBpbmhlcml0IGZyb20gaXRcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICBtaW4taGVpZ2h0OiAwcHg7XG4gICAgbWluLXdpZHRoOiAwcHg7XG4gIH1cbiAgQGVsc2UgaWYgKCRzaXplID09ICdhdXRvJykge1xuICAgIGZsZXg6IDEgMSAwcHg7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgemVyby11bml0XG4gIH1cbiAgQGVsc2UgaWYgKCRzaXplID09ICdzaHJpbmsnKSB7XG4gICAgZmxleDogMCAwIGF1dG87XG4gIH1cbiAgQGVsc2UgaWYgKCRzaXplID09ICdncm93Jykge1xuICAgIGZsZXg6IDEgMCBhdXRvO1xuICB9XG59XG5cbi8vLyBSZXNldHMgYSBjZWxscyB3aWR0aCAob3IgaGVpZ2h0IGlmIHZlcnRpY2FsIGlzIHRydWUpIGFzIHdlbGwgYXMgc3RyaXBzIGl0cyBndXR0ZXJzLlxuLy8vXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkdmVydGljYWwgW2ZhbHNlXSAtIFNldCB0byB0cnVlIHRvIG91dHB1dCB2ZXJ0aWNhbCAoaGVpZ2h0KSBzdHlsZXMgcmF0aGVyIHRoYW4gd2lkdGhzLlxuQG1peGluIHh5LWNlbGwtcmVzZXQoJHZlcnRpY2FsOiB0cnVlKSB7XG4gICRkaXJlY3Rpb246IGlmKCR2ZXJ0aWNhbCA9PSB0cnVlLCB3aWR0aCwgaGVpZ2h0KTtcbiAgI3skZGlyZWN0aW9ufTogYXV0bztcbiAgbWF4LSN7JGRpcmVjdGlvbn06IG5vbmU7XG59XG5cbi8vIFNldHMgb3VyIGNlbGwgd2lkdGhzIG9yIGhlaWdodHMgZGVwZW5kaW5nIG9uIGd1dHRlciB0eXBlLlxuQG1peGluIC14eS1jZWxsLXByb3BlcnRpZXMoJHNpemUsICRtYXJnaW4tZ3V0dGVyLCAkdmVydGljYWwpIHtcbiAgJGRpcmVjdGlvbjogaWYoJHZlcnRpY2FsID09IHRydWUsIGhlaWdodCwgd2lkdGgpO1xuICBAaWYoJHNpemUgPT0gJ2Z1bGwnKSB7XG4gICAgJHZhbDogaWYoJG1hcmdpbi1ndXR0ZXIgPT0gMCwgMTAwJSwgY2FsYygxMDAlIC0gI3tyZW0tY2FsYygkbWFyZ2luLWd1dHRlcil9KSk7XG4gICAgI3skZGlyZWN0aW9ufTogJHZhbDtcbiAgfVxuICBAZWxzZSBpZiAoJHNpemUgPT0gJ2F1dG8nKSB7XG4gICAgI3skZGlyZWN0aW9ufTogYXV0bztcbiAgICAkdmFsOiBpZigkbWFyZ2luLWd1dHRlciA9PSAwLCAxMDAlLCBjYWxjKDEwMCUgLSAje3JlbS1jYWxjKCRtYXJnaW4tZ3V0dGVyKX0pKTtcbiAgfVxuICBAZWxzZSBpZiAoJHNpemUgPT0gJ3NocmluaycpIHtcbiAgICAjeyRkaXJlY3Rpb259OiBhdXRvO1xuICB9XG4gIEBlbHNlIHtcbiAgICAkdmFsOiBpZigkbWFyZ2luLWd1dHRlciA9PSAwLCAje3h5LWNlbGwtc2l6ZSgkc2l6ZSl9LCBjYWxjKCN7eHktY2VsbC1zaXplKCRzaXplKX0gLSAje3JlbS1jYWxjKCRtYXJnaW4tZ3V0dGVyKX0pKTtcbiAgICAjeyRkaXJlY3Rpb259OiAkdmFsO1xuICB9XG59XG5cbi8vLyBDcmVhdGVzIGEgY2VsbCBmb3IgeW91ciBncmlkLlxuLy8vXG4vLy8gQHBhcmFtIHtLZXl3b3JkfE51bWJlcn0gJHNpemUgW2Z1bGxdIC0gVGhlIHNpemUgb2YgeW91ciBjZWxsLiBDYW4gYmUgYGZ1bGxgIChkZWZhdWx0KSBmb3IgMTAwJSB3aWR0aCwgYGF1dG9gIHRvIHVzZSB1cCBhdmFpbGFibGUgc3BhY2UgYW5kIGBzaHJpbmtgIHRvIHVzZSB1cCBvbmx5IHJlcXVpcmVkIHNwYWNlLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGd1dHRlci1vdXRwdXQgW3RydWVdIC0gV2hldGhlciBvciBub3QgdG8gb3V0cHV0IGd1dHRlcnNcbi8vLyBAcGFyYW0ge051bWJlcnxNYXB9ICRndXR0ZXJzIFskZ3JpZC1tYXJnaW4tZ3V0dGVyc10gLSBNYXAgb3Igc2luZ2xlIHZhbHVlIGZvciBndXR0ZXJzLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGd1dHRlci10eXBlIFttYXJnaW5dIC0gTWFwIG9yIHNpbmdsZSB2YWx1ZSBmb3IgZ3V0dGVycy5cbi8vLyBAcGFyYW0ge0xpc3R9ICRndXR0ZXItcG9zaXRpb24gW3JpZ2h0IGxlZnRdIC0gVGhlIHBvc2l0aW9uIHRvIGFwcGx5IGd1dHRlcnMgdG8uIEFjY2VwdHMgYHRvcGAsIGBib3R0b21gLCBgbGVmdGAsIGByaWdodGAgaW4gYW55IGNvbWJpbmF0aW9uLlxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkYnJlYWtwb2ludCBbbnVsbF0gLSBUaGUgbmFtZSBvZiB0aGUgYnJlYWtwb2ludCBzaXplIGluIHlvdXIgZ3V0dGVycyBtYXAgdG8gZ2V0IHRoZSBzaXplIGZyb20uIElmIHVzaW5nIHdpdGggdGhlIGBicmVha3BvaW50KClgIG1peGluIHRoaXMgd2lsbCBiZSBzZXQgYXV0b21hdGljYWxseSB1bmxlc3MgbWFudWFsbHkgZW50ZXJlZC5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICR2ZXJ0aWNhbCBbZmFsc2VdIC0gU2V0IHRvIHRydWUgdG8gb3V0cHV0IHZlcnRpY2FsIChoZWlnaHQpIHN0eWxlcyByYXRoZXIgdGhhbiB3aWR0aHMuXG5AbWl4aW4geHktY2VsbChcbiAgJHNpemU6IGZ1bGwsXG4gICRndXR0ZXItb3V0cHV0OiB0cnVlLFxuICAkZ3V0dGVyczogJGdyaWQtbWFyZ2luLWd1dHRlcnMsXG4gICRndXR0ZXItdHlwZTogbWFyZ2luLFxuICAkZ3V0dGVyLXBvc2l0aW9uOiByaWdodCBsZWZ0LFxuICAkYnJlYWtwb2ludDogbnVsbCxcbiAgJHZlcnRpY2FsOiBmYWxzZVxuKSB7XG4gICRicC1pcy1mYWxsYmFjazogZmFsc2U7XG5cbiAgQGlmKCRicmVha3BvaW50ID09IG51bGwpIHtcbiAgICAvLyBJZiBgJGJwLXNpemVgIGlzIGF2YWlsYWJsZSB0aGVuIHVzZSB0aGlzLCBvdGhlcndpc2UgcmV2ZXJ0IHRvIHRoZSBzbWFsbGVzdCBicC5cbiAgICBAaWYodmFyaWFibGUtZXhpc3RzKC16Zi1zaXplKSBhbmQgdHlwZS1vZigkLXpmLXNpemUpICE9ICdudW1iZXInKSBhbmQgJC16Zi1zaXplICE9IG51bGwge1xuICAgICAgJGJyZWFrcG9pbnQ6ICQtemYtc2l6ZTtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgJGJyZWFrcG9pbnQ6ICQtemYtemVyby1icmVha3BvaW50O1xuICAgICAgJGJwLWlzLWZhbGxiYWNrOiB0cnVlO1xuICAgIH1cbiAgfVxuXG4gIC8vIEdldCB0aGUgZ3V0dGVyIGZvciB0aGUgZ2l2ZW4gYnJlYWtwb2ludC92YWx1ZS5cbiAgJGd1dHRlcjogLXpmLWdldC1icC12YWwoJGd1dHRlcnMsICRicmVha3BvaW50KTtcbiAgLy8gSWYgdGhlIGJyZWFrcG9pbnQgaXMgYSBmYWxsYmFjaywgdXNlIGEgZmFsbGJhY2sgZ3V0dGVyIGFzIHdlbGxcbiAgQGlmICgkYnAtaXMtZmFsbGJhY2sgPT0gdHJ1ZSBhbmQgJGd1dHRlciA9PSBudWxsKSB7XG4gICAgJGd1dHRlcjogMDtcbiAgfVxuXG4gIEBpZigkZ3V0dGVyICE9IG51bGwpIHtcbiAgICAvLyBCYXNlIGZsZXggcHJvcGVydGllc1xuICAgIEBpbmNsdWRlIHh5LWNlbGwtYmFzZSgkc2l6ZSk7XG5cbiAgICBAaWYoJGd1dHRlci10eXBlID09ICdtYXJnaW4nKSB7XG4gICAgICBAaW5jbHVkZSAteHktY2VsbC1wcm9wZXJ0aWVzKCRzaXplLCAkZ3V0dGVyLCAkdmVydGljYWwpO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBAaW5jbHVkZSAteHktY2VsbC1wcm9wZXJ0aWVzKCRzaXplLCAwLCAkdmVydGljYWwpO1xuICAgIH1cblxuICAgIEBpZiAkZ3V0dGVyLW91dHB1dCB7XG4gICAgICBAaW5jbHVkZSB4eS1ndXR0ZXJzKCRndXR0ZXIsICRndXR0ZXItdHlwZSwgJGd1dHRlci1wb3NpdGlvbik7XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICBAd2FybiAneHktY2VsbDogbm8gZ3V0dGVycyB3ZXJlIGZvdW5kIGluIGAkZ3V0dGVyc2AgZm9yIFwiJGJyZWFrcG9pbnQ6ICN7JGJyZWFrcG9pbnR9XCIsIGNlbGwgd2FzIG5vdCBnZW5lcmF0ZWRgJ1xuICB9XG59XG5cbi8vLyBDcmVhdGVzIGEgc2luZ2xlIGJyZWFrcG9pbnQgc2l6ZWQgZ3JpZC4gVXNlZCB0byBnZW5lcmF0ZSBvdXIgZ3JpZCBjbGFzc2VzLlxuLy8vXG4vLy8gQHBhcmFtIHtLZXl3b3JkfE51bWJlcn0gJHNpemUgW2Z1bGxdIC0gVGhlIHNpemUgb2YgeW91ciBjZWxsLiBDYW4gYmUgYGZ1bGxgIChkZWZhdWx0KSBmb3IgMTAwJSB3aWR0aCwgYGF1dG9gIHRvIHVzZSB1cCBhdmFpbGFibGUgc3BhY2UgYW5kIGBzaHJpbmtgIHRvIHVzZSB1cCBvbmx5IHJlcXVpcmVkIHNwYWNlLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGd1dHRlci1vdXRwdXQgW3RydWVdIC0gV2hldGhlciBvciBub3QgdG8gb3V0cHV0IGd1dHRlcnNcbi8vLyBAcGFyYW0ge051bWJlcnxNYXB9ICRndXR0ZXJzIFskZ3JpZC1tYXJnaW4tZ3V0dGVyc10gLSBNYXAgb3Igc2luZ2xlIHZhbHVlIGZvciBndXR0ZXJzLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGd1dHRlci10eXBlIFttYXJnaW5dIC0gTWFwIG9yIHNpbmdsZSB2YWx1ZSBmb3IgZ3V0dGVycy5cbi8vLyBAcGFyYW0ge1N0cmluZ30gJGJyZWFrcG9pbnQgW251bGxdIC0gVGhlIG5hbWUgb2YgdGhlIGJyZWFrcG9pbnQgc2l6ZSBpbiB5b3VyIGd1dHRlcnMgbWFwIHRvIGdldCB0aGUgc2l6ZSBmcm9tLiBJZiB1c2luZyB3aXRoIHRoZSBgYnJlYWtwb2ludCgpYCBtaXhpbiB0aGlzIHdpbGwgYmUgc2V0IGF1dG9tYXRpY2FsbHkgdW5sZXNzIG1hbnVhbGx5IGVudGVyZWQuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkdmVydGljYWwgW2ZhbHNlXSAtIFNldCB0byB0cnVlIHRvIG91dHB1dCB2ZXJ0aWNhbCAoaGVpZ2h0KSBzdHlsZXMgcmF0aGVyIHRoYW4gd2lkdGhzLlxuQG1peGluIHh5LWNlbGwtc3RhdGljKFxuICAkc2l6ZTogZnVsbCxcbiAgJGd1dHRlci1vdXRwdXQ6IHRydWUsXG4gICRndXR0ZXJzOiAkZ3JpZC1tYXJnaW4tZ3V0dGVycyxcbiAgJGd1dHRlci10eXBlOiBtYXJnaW4sXG4gICRicmVha3BvaW50OiAkLXpmLXplcm8tYnJlYWtwb2ludCxcbiAgJHZlcnRpY2FsOiBmYWxzZVxuKSB7XG5cbiAgJGd1dHRlcjogLXpmLWdldC1icC12YWwoJGd1dHRlcnMsICRicmVha3BvaW50KTtcbiAgJGd1dHRlci1wb3NpdGlvbjogaWYoJHZlcnRpY2FsID09IHRydWUsIHRvcCBib3R0b20sIGxlZnQgcmlnaHQpO1xuXG4gIEBpZigkZ3V0dGVyLXR5cGUgPT0gJ21hcmdpbicpIHtcbiAgICBAaW5jbHVkZSAteHktY2VsbC1wcm9wZXJ0aWVzKCRzaXplLCAkZ3V0dGVyLCAkdmVydGljYWwpO1xuICB9XG4gIEBlbHNlIHtcbiAgICBAaW5jbHVkZSAteHktY2VsbC1wcm9wZXJ0aWVzKCRzaXplLCAwLCAkdmVydGljYWwpO1xuICB9XG5cbiAgLy8gSWYgd2Ugd2FudCB0byBvdXRwdXQgdGhlIGd1dHRlcnNcbiAgQGlmKCRndXR0ZXItb3V0cHV0KSB7XG4gICAgLy8gVE9ETzogRmlndXJlIG91dCBpZiB3ZSBuZWVkIHRvIHBhc3MgYnJlYWtwb2ludCBpbiBoZXJlIHRvby5cbiAgICBAaW5jbHVkZSB4eS1ndXR0ZXJzKCRndXR0ZXIsICRndXR0ZXItdHlwZSwgJGd1dHRlci1wb3NpdGlvbik7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHRodW1ibmFpbFxuLy8vL1xuXG4vLy8gQm9yZGVyIGFyb3VuZCB0aHVtYm5haWwgaW1hZ2VzLlxuLy8vIEB0eXBlIEJvcmRlclxuJHRodW1ibmFpbC1ib3JkZXI6IDRweCBzb2xpZCAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBCb3R0b20gbWFyZ2luIGZvciB0aHVtYm5haWwgaW1hZ2VzLlxuLy8vIEB0eXBlIExlbmd0aFxuJHRodW1ibmFpbC1tYXJnaW4tYm90dG9tOiAkZ2xvYmFsLW1hcmdpbiAhZGVmYXVsdDtcblxuLy8vIEJveCBzaGFkb3cgdW5kZXIgdGh1bWJuYWlsIGltYWdlcy5cbi8vLyBAdHlwZSBTaGFkb3dcbiR0aHVtYm5haWwtc2hhZG93OiAwIDAgMCAxcHggcmdiYSgkYmxhY2ssIDAuMikgIWRlZmF1bHQ7XG5cbi8vLyBCb3ggc2hhZG93IHVuZGVyIHRodW1ibmFpbCBpbWFnZXMuXG4vLy8gQHR5cGUgU2hhZG93XG4kdGh1bWJuYWlsLXNoYWRvdy1ob3ZlcjogMCAwIDZweCAxcHggcmdiYSgkcHJpbWFyeS1jb2xvciwgMC41KSAhZGVmYXVsdDtcblxuLy8vIFRyYW5zaXRpb24gcHJvcHJ0aWVzIGZvciB0aHVtYm5haWwgaW1hZ2VzLlxuLy8vIEB0eXBlIFRyYW5zaXRpb25cbiR0aHVtYm5haWwtdHJhbnNpdGlvbjogYm94LXNoYWRvdyAyMDBtcyBlYXNlLW91dCAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcmFkaXVzIGZvciB0aHVtYm5haWwgaW1hZ2VzLlxuLy8vIEB0eXBlIE51bWJlclxuJHRodW1ibmFpbC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuXG4vLy8gQWRkcyB0aHVtYm5haWwgc3R5bGVzIHRvIGFuIGVsZW1lbnQuXG5AbWl4aW4gdGh1bWJuYWlsIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206ICR0aHVtYm5haWwtbWFyZ2luLWJvdHRvbTtcblxuICBib3JkZXI6ICR0aHVtYm5haWwtYm9yZGVyO1xuICBib3JkZXItcmFkaXVzOiAkdGh1bWJuYWlsLXJhZGl1cztcbiAgYm94LXNoYWRvdzogJHRodW1ibmFpbC1zaGFkb3c7XG5cbiAgbGluZS1oZWlnaHQ6IDA7XG59XG5cbkBtaXhpbiB0aHVtYm5haWwtbGluayB7XG4gIHRyYW5zaXRpb246ICR0aHVtYm5haWwtdHJhbnNpdGlvbjtcblxuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICBib3gtc2hhZG93OiAkdGh1bWJuYWlsLXNoYWRvdy1ob3ZlcjtcbiAgfVxuXG4gIGltYWdlIHtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXRodW1ibmFpbCB7XG4gIC50aHVtYm5haWwge1xuICAgIEBpbmNsdWRlIHRodW1ibmFpbDtcbiAgfVxuXG4gIGEudGh1bWJuYWlsIHtcbiAgICBAaW5jbHVkZSB0aHVtYm5haWwtbGluaztcbiAgfVxufVxuIiwiLypcclxuRnJvbnRlbmQgc3R5bGVzIGZvciBndXRlbmJlcmcgYmxvY2tzXHJcbiovXHJcblxyXG4vKiogPT09IEJhc2UgQ29sb3IgUGFsYXR0ZSA9PT0gKi9cclxuQGVhY2ggJGNvbG9yLCAkY29kZSBpbiAkZm91bmRhdGlvbi1wYWxldHRlIHtcclxuXHJcbiAgLmhhcy0jeyRjb2xvcn0tYmFja2dyb3VuZC1jb2xvciB7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2RlO1xyXG4gIH1cclxuXHJcbiAgLmhhcy0jeyRjb2xvcn0tY29sb3Ige1xyXG4gICAgICBjb2xvcjogJGNvZGU7XHJcbiAgfVxyXG59XHJcblxyXG4vKiogPT09IEJ1dHRvbiA9PT0gKi9cclxuLndwLWJsb2NrLWJ1dHRvbiB7XHJcblxyXG5cdC8vIGFkZCBnZW5lcmFsIGZvdW5kYXRpb24gYnV0dG9uIHN0eWxpbmdcclxuXHQud3AtYmxvY2stYnV0dG9uX19saW5rIHtcclxuXHRcdEBleHRlbmQgLmJ1dHRvbjtcclxuICAgIEBlYWNoICRjb2xvciwgJGNvZGUgaW4gJGZvdW5kYXRpb24tcGFsZXR0ZSB7XHJcblxyXG4gICAgICAmLmhhcy0jeyRjb2xvcn0tYmFja2dyb3VuZC1jb2xvciB7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29kZTtcclxuICAgICAgfVxyXG5cclxuICAgICAgJi5oYXMtI3skY29sb3J9LWNvbG9yIHtcclxuICAgICAgICAgIGNvbG9yOiAkY29kZTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cdH1cclxuXHJcblx0Ly8gYWRkIHNwZWNpYWwgc3R5bGluZyBmb3Igc3F1YXJlZCBidXR0b25zXHJcblx0Ji5pcy1zdHlsZS1zcXVhcmVkIC53cC1ibG9jay1idXR0b25fX2xpbmsge1xyXG5cdFx0Ym9yZGVyLXJhZGl1czogMDtcclxuXHR9XHJcblxyXG5cdC8vIGFkZCBvdXRsaW5lIHN0eWxlc1xyXG5cdCYuaXMtc3R5bGUtb3V0bGluZSAud3AtYmxvY2stYnV0dG9uX19saW5re1xyXG5cdFx0QGV4dGVuZCAuaG9sbG93O1xyXG5cdH1cclxuXHJcblx0Ly8gc2V0IHRyYW5zcGFyZW50IGJhY2tncm91bmQgdG8gYmxvY2sgZm9yIG91dGxpbmUgYnV0dG9uXHJcblx0Ji5pcy1zdHlsZS1vdXRsaW5lLFxyXG5cdCYuaXMtc3R5bGUtb3V0bGluZTpob3ZlcixcclxuXHQmLmlzLXN0eWxlLW91dGxpbmU6Zm9jdXMsXHJcblx0Ji5pcy1zdHlsZS1vdXRsaW5lOmFjdGl2ZSB7XHJcbiAgICAvLyBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcclxuICAgIC53cC1ibG9jay1idXR0b25fX2xpbmt7XHJcbiAgICAgIC8vIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xyXG4gICAgfVxyXG5cdH1cclxufVxyXG5cclxuLyoqID09PSBGaWxlID09PSAqL1xyXG4ud3AtYmxvY2stZmlsZSAud3AtYmxvY2stZmlsZV9fYnV0dG9ue1xyXG4gIEBpbmNsdWRlIGJ1dHRvbigpO1xyXG59XHJcbiIsIi8vIE5hdmlnYXRpb24gYnJlYWtwb2ludHNcbi5tb2JpbGUtbWVudSxcbi5zaXRlLXRpdGxlLWJhciB7XG4gIEBpbmNsdWRlIGhpZGUtZm9yKGxhcmdlKTtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIHBhZGRpbmc6IDA7XG4gIEBhdC1yb290IGh0bWxbYW1wXSAmIHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICB9XG4gIHN2ZyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWF4LXdpZHRoOiByZW0tY2FsYygxMjUpO1xuICAgIG1heC1oZWlnaHQ6IHJlbS1jYWxjKDMwKTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICBtYXgtd2lkdGg6IHJlbS1jYWxjKDEwMCk7XG4gICAgICBtYXgtaGVpZ2h0OiByZW0tY2FsYygyNCk7XG4gICAgfVxuICB9XG4gIC50aXRsZS1iYXItbGVmdCB7XG4gICAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAxKTtcbiAgICBwYWRkaW5nLXRvcDogcmVtLWNhbGMoMTApO1xuICAgIHBhZGRpbmctYm90dG9tOiByZW0tY2FsYygxMCk7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRsaWdodC1ncmF5O1xuICAgICYsXG4gICAgc3ZnICoge1xuICAgICAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZS1pbi1vdXQ7XG4gICAgfVxuICAgID4gLmJvZHktcHVzaCB7XG4gICAgICBtYXJnaW4tbGVmdDogcmVtLWNhbGMobWFwLWdldCgkZ3JpZC1tYXJnaW4tZ3V0dGVycywgc21hbGwpIC8gMik7XG4gICAgICBtYXJnaW4tcmlnaHQ6IHJlbS1jYWxjKG1hcC1nZXQoJGdyaWQtbWFyZ2luLWd1dHRlcnMsIHNtYWxsKSAvIDIpO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IHJlbS1jYWxjKG1hcC1nZXQoJGdyaWQtbWFyZ2luLWd1dHRlcnMsIG1lZGl1bSkgLyAyKTtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiByZW0tY2FsYyhtYXAtZ2V0KCRncmlkLW1hcmdpbi1ndXR0ZXJzLCBtZWRpdW0pIC8gMik7XG4gICAgICB9XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAmLmlzLWFuY2hvcmVkIHtcbiAgICAgICAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwKTtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgICAgICAgQGF0LXJvb3QgaGVhZGVyOm5vdCguYmxhY2spICYge1xuICAgICAgICAgIHN2ZyNnYW1tYS1sb2dvLW1vYmlsZSB7XG4gICAgICAgICAgICAuc3QwLFxuICAgICAgICAgICAgZyBwYXRoIHtcbiAgICAgICAgICAgICAgZmlsbDogJHdoaXRlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICBAYXQtcm9vdCBib2R5LmFkbWluLWJhciAmLmlzLXN0dWNrIHtcbiAgICAgIHRvcDogcmVtLWNhbGMoNDYpICFpbXBvcnRhbnQ7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICB0b3A6IHJlbS1jYWxjKDMyKSAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAudGl0bGUtYmFyLXRpdGxlIHsgLy9Gb3VuZGF0aW9uIGNsYXNzIG92ZXJyaWRlXG4gICAgb3JkZXI6IDE7XG4gIH1cbiAgI3NpdGUtbmF2aWdhdGlvbi10b2dnbGUgeyAvL2J1cmdlciBtZW51XG4gICAgb3JkZXI6IDM7XG4gIH1cbiAgLmhlYWRlci1zdHJhcGxpbmUtbW9iaWxlIHsgLy9zdHJhcCArIHBob25lXG4gICAgb3JkZXI6IDI7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6NjQwcHgpIHtcbiAgICAuaGVhZGVyLXN0cmFwbGluZS1tb2JpbGUge1xuICAgICAgb3JkZXI6IDM7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGNvbG9yOiAjMGEwYTBhO1xuICAgIH1cbiAgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOjY0MHB4KSB7XG4gICAgLmhlYWRlci1zdHJhcGxpbmUtbW9iaWxlIHtcbiAgICAgIG1hcmdpbi10b3A6IDAuMjVyZW07XG4gICAgfVxuICAgIC50aXRsZS1iYXItbGVmdC5pcy1hbmNob3JlZCAuaGVhZGVyLXN0cmFwbGluZS1tb2JpbGUsIC50aXRsZS1iYXItbGVmdC5pcy1hbmNob3JlZCAuaGVhZGVyLXN0cmFwbGluZS1tb2JpbGUgPiBhIHtcbiAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgfVxuICB9XG4gIC5zaXRlLW1vYmlsZS10aXRsZSB7XG4gICAgd2lkdGg6IDI1JTtcbiAgfVxuICAuc2l0ZS1tb2JpbGUtbWVudS1jb3RhbmluZXIge1xuICAgIHdpZHRoOiAyNSU7XG4gICAgb3JkZXI6IDM7XG4gIH1cbn1cbi5kZXNrdG9wLW1lbnUsXG4uc2l0ZS1uYXZpZ2F0aW9uIC50b3AtYmFyLWxlZnQge1xuICBAaW5jbHVkZSBzaG93LWZvcihsYXJnZSk7XG4gIG1hcmdpbi1sZWZ0OiByZW0tY2FsYyhtYXAtZ2V0KCRncmlkLW1hcmdpbi1ndXR0ZXJzLCBtZWRpdW0pIC8gMik7XG4gIG1hcmdpbi1yaWdodDogcmVtLWNhbGMobWFwLWdldCgkZ3JpZC1tYXJnaW4tZ3V0dGVycywgbWVkaXVtKSAvIDIpO1xuICBzdmcge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1heC13aWR0aDogcmVtLWNhbGMoMjAwKTtcbiAgICBtYXgtaGVpZ2h0OiByZW0tY2FsYyg0OCk7XG4gICAgLy8gaGVpZ2h0OiBhdXRvO1xuICB9XG59XG5cbi8vIFdQIHBvc3QgbmF2aWdhdGlvblxuLnBvc3QtbmF2aWdhdGlvbiB7XG4gIEBpbmNsdWRlIGNsZWFyZml4O1xufVxuXG4ubmF2LXByZXZpb3VzIHtcbiAgZmxvYXQ6IGxlZnQ7XG59XG5cbi5uYXYtbmV4dCB7XG4gIGZsb2F0OiByaWdodDtcbn1cbmhlYWRlciAuc3RpY2t5LWNvbnRhaW5lciB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgd2lkdGg6IDEwMCU7XG4gIHotaW5kZXg6IDEwO1xuICBtYXJnaW46IDA7XG59XG4jbWFpbi1hcmVhIC5zdGlja3ktY29udGFpbmVyIHsgLy8gZml4IGZvciBqdW1wTmF2IGFuZCBXZUFyZUdhbW1hIGRyb2Rvd24gbWVudSBnYXAgaXNzdWVcbiAgei1pbmRleDogNSFpbXBvcnRhbnQ7XG59XG5cbnN2Z1tpZCo9J3NlYXJjaC1pY29uJ10ge1xuICAuc2VhcmNoIHtcbiAgICBmaWxsOiBub25lO1xuICAgIHN0cm9rZTogJGdhbS1wdXJwbGU7XG4gIH1cbn1cblxuLnRvcC1iYXIge1xuICAudG9wLWJhci10aXRsZSB7XG4gICAgbWFyZ2luOiAwO1xuICB9XG4gICYsXG4gIHN2ZyAqIHtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlLWluLW91dDtcbiAgfVxuICAmLmlzLWFuY2hvcmVkIHtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDApO1xuICAgICNtZWdhLW1lbnUtd3JhcC10b3AtYmFyLXIgI21lZ2EtbWVudS10b3AtYmFyLXIge1xuICAgICAgPiBsaSB7XG4gICAgICAgID4gdWwubWVnYS1zdWItbWVudSB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogcmVtLWNhbGMoMzIpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgICY6aG92ZXIge1xuICAgICAgdWwgPiBsaS5oaWdobGlnaHQtbHJnIHtcbiAgICAgICAgPiBhIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAkd2hpdGUhaW1wb3J0YW50O1xuICAgICAgICAgIGNvbG9yOiAkZ2FtLXB1cnBsZSFpbXBvcnRhbnQ7XG4gICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBib3JkZXItcmlnaHQtY29sb3I6ICRnYW0tcHVycGxlO1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJGdhbS1wdXJwbGU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gICYubWVnYS1vcGVuLFxuICAmOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kOiAkZ2FtLXB1cnBsZSAhaW1wb3J0YW50O1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKCR3aGl0ZSwgMC42KTtcblxuICAgIHN2ZyNnYW1tYS1sb2dvLWRlc2t0b3Age1xuICAgICAgLnN0MCxcbiAgICAgIGcgcGF0aCB7XG4gICAgICAgIGZpbGw6ICR3aGl0ZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBzdmdbaWQqPSdzZWFyY2gtaWNvbiddIHtcbiAgICAgIC5zZWFyY2gge1xuICAgICAgICBmaWxsOiBub25lO1xuICAgICAgICBzdHJva2U6ICR3aGl0ZTtcbiAgICAgICAgc3Ryb2tlLXdpZHRoOiAxLjQ1MjtcbiAgICAgIH1cbiAgICB9XG4gICAgdWwgPiBsaSA+IGEge1xuICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICY6YWZ0ZXIge1xuICAgICAgICBib3JkZXItcmlnaHQtY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJHdoaXRlO1xuICAgICAgfVxuICAgIH1cblxuICAgIHVsID4gbGkuaGlnaGxpZ2h0IHtcbiAgICAgID4gYSB7XG4gICAgICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcbiAgICAgICAgY29sb3I6ICRnYW0tcHVycGxlO1xuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICBib3JkZXItcmlnaHQtY29sb3I6ICRnYW0tcHVycGxlO1xuICAgICAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICRnYW0tcHVycGxlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIHVsID4gbGkuaGlnaGxpZ2h0LWxyZyB7IC8vIG5hdiBpcyBzdHVjayAoaG92ZXIpXG4gICAgICA+IGEge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkd2hpdGUhaW1wb3J0YW50O1xuICAgICAgICBjb2xvcjogJGdhbS1wdXJwbGUhaW1wb3J0YW50O1xuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICBib3JkZXItcmlnaHQtY29sb3I6ICRnYW0tcHVycGxlO1xuICAgICAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICRnYW0tcHVycGxlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgICNtZWdhLW1lbnUtd3JhcC10b3AtYmFyLXIgI21lZ2EtbWVudS10b3AtYmFyLXIge1xuICAgICAgPiBsaSB7XG4gICAgICAgID4gYS5tZWdhLW1lbnUtbGluayB7XG4gICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRnYW0teWVsbG93O1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBhLm1lZ2EtbWVudS1saW5rIHtcbiAgICAgICAgICBjb2xvcjogJG1lZGl1bS1ncmF5O1xuICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgYm90dG9tOiByZW0tY2FsYygtMzIpO1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgaGVpZ2h0OiByZW0tY2FsYygzKTtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIH1cbiAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIGJvcmRlci1yaWdodC1jb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJHdoaXRlO1xuICAgICAgICAgIH1cbiAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGNvbG9yOiAkZ2FtLXllbGxvdyAhaW1wb3J0YW50O1xuICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgIGJvcmRlci1yaWdodC1jb2xvcjogJGdhbS15ZWxsb3c7XG4gICAgICAgICAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICRnYW0teWVsbG93O1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAmLmlzLWFjdGl2ZSxcbiAgICAgICAgJi5tZWdhLWN1cnJlbnQtbWVudS1pdGVtLFxuICAgICAgICAmLm1lZ2EtY3VycmVudC1tZW51LWFuY2VzdG9yIHtcbiAgICAgICAgICA+IGEubWVnYS1tZW51LWxpbmsge1xuICAgICAgICAgICAgY29sb3I6ICR3aGl0ZSAhaW1wb3J0YW50O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICBAYXQtcm9vdCBoZWFkZXI6bm90KC5ibGFjaykgJiB7XG4gICAgJi5pcy1hbmNob3JlZCB7XG4gICAgICBzdmcjZ2FtbWEtbG9nby1kZXNrdG9wIHtcbiAgICAgICAgLnN0MCxcbiAgICAgICAgZyBwYXRoIHtcbiAgICAgICAgICBmaWxsOiAkd2hpdGU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIHVsLFxuICAgICAgI21lZ2EtbWVudS13cmFwLXRvcC1iYXItciAjbWVnYS1tZW51LXRvcC1iYXItciB7XG4gICAgICAgID4gbGkge1xuICAgICAgICAgIGEge1xuICAgICAgICAgICAgY29sb3I6ICRtZWRpdW0tZ3JheTtcbiAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICBib3JkZXItcmlnaHQtY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICAmLmlzLWFjdGl2ZSxcbiAgICAgICAgICAmLm1lZ2EtY3VycmVudC1tZW51LWl0ZW0sXG4gICAgICAgICAgJi5tZWdhLWN1cnJlbnQtbWVudS1hbmNlc3RvciB7XG4gICAgICAgICAgICA+IGEubWVnYS1tZW51LWxpbmsge1xuICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgIEBhdC1yb290IGJvZHkuaG9tZSAmIHtcbiAgICAgICAgICAgID4gYS5tZWdhLW1lbnUtbGluayB7XG4gICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYubWVnYS10b2dnbGUtb24ge1xuICAgICAgICAgICAgICA+IGEubWVnYS1tZW51LWxpbmsge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkZ2FtLXllbGxvdyAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRnYW0teWVsbG93O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICAmLmhpZ2hsaWdodCB7XG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgYmFja2dyb3VuZDogJHdoaXRlO1xuICAgICAgICAgICAgICBjb2xvcjogJGdhbS1wdXJwbGU7XG4gICAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIGJvcmRlci1yaWdodC1jb2xvcjogJGdhbS1wdXJwbGU7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJGdhbS1wdXJwbGU7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIHVsLmRlc2t0b3AtbWVudSA+IGxpIHtcbiAgICAgICAgJi5pcy1hY3RpdmUsXG4gICAgICAgICYuY3VycmVudC1tZW51LWl0ZW0sXG4gICAgICAgICYuY3VycmVudC1wYWdlLWFuY2VzdG9yIHtcbiAgICAgICAgICA+IGEge1xuICAgICAgICAgICAgY29sb3I6ICR3aGl0ZSAhaW1wb3J0YW50O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBAYXQtcm9vdCBib2R5LmhvbWUgJiB7XG4gICAgICAgICAgPiBhIHtcbiAgICAgICAgICAgIGNvbG9yOiAkd2hpdGUgIWltcG9ydGFudDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIHN2Z1tpZCo9J3NlYXJjaC1pY29uJ10ge1xuICAgICAgICAuc2VhcmNoIHtcbiAgICAgICAgICBmaWxsOiBub25lO1xuICAgICAgICAgIHN0cm9rZTogJHdoaXRlO1xuICAgICAgICAgIHN0cm9rZS13aWR0aDogMS40NTI7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgJi5pcy1zdHVjayB7XG4gICAgcGFkZGluZy10b3A6IHJlbS1jYWxjKDEwKTtcbiAgICBwYWRkaW5nLWJvdHRvbTogcmVtLWNhbGMoMTApO1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMSk7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRsaWdodC1ncmF5O1xuICAgIEBhdC1yb290IGJvZHkuYWRtaW4tYmFyICYge1xuICAgICAgdG9wOiByZW0tY2FsYygzMikgIWltcG9ydGFudDtcbiAgICB9XG4gICAgJi5tZWdhLW9wZW4ge1xuICAgICAgYmFja2dyb3VuZDogJGdhbS1wdXJwbGU7XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiYSgkd2hpdGUsIDAuNik7XG4gICAgfVxuICAgICNtZWdhLW1lbnUtd3JhcC10b3AtYmFyLXIgI21lZ2EtbWVudS10b3AtYmFyLXIge1xuICAgICAgPiBsaSB7XG4gICAgICAgID4gYS5tZWdhLW1lbnUtbGluayB7XG4gICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgYm90dG9tOiByZW0tY2FsYygtMTIpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAvKlxuICAgICYuaGlnaGxpZ2h0LWxyZyB7XG4gICAgICBhIHtcbiAgICAgICAgYmFja2dyb3VuZDogJHdoaXRlIWltcG9ydGFudDtcbiAgICAgICAgY29sb3I6ICRnYW0tcHVycGxlIWltcG9ydGFudDtcbiAgICAgICAgZGlzcGxheTogaW5saW5lO1xuICAgICAgICBwYWRkaW5nOiByZW0tY2FsYyg4IDMwIDEwKSFpbXBvcnRhbnQ7XG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgIGJvcmRlci1yaWdodC1jb2xvcjogJHdoaXRlO1xuICAgICAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAqL1xuICB9XG5cbiAgI21lZ2EtbWVudS13cmFwLXRvcC1iYXItciB7XG4gICAgY2xlYXI6IG5vbmU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgfVxuICB1bCxcbiAgI21lZ2EtbWVudS13cmFwLXRvcC1iYXItciAjbWVnYS1tZW51LXRvcC1iYXItciB7XG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgID4gbGkge1xuICAgICAgJi5mb290ZXItb25seSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG4gICAgICAmLmlzLWFjdGl2ZSxcbiAgICAgICYubWVnYS1jdXJyZW50LW1lbnUtaXRlbSxcbiAgICAgICYubWVnYS1jdXJyZW50LW1lbnUtYW5jZXN0b3Ige1xuICAgICAgICA+IGEubWVnYS1tZW51LWxpbmsge1xuICAgICAgICAgIGNvbG9yOiAkZ2FtLXB1cnBsZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgJjpub3QoLm1lZ2EtbWVudS1pdGVtLWhhcy1jaGlsZHJlbikge1xuICAgICAgICA+IGEsXG4gICAgICAgID4gYS5tZWdhLW1lbnUtbGluayB7XG4gICAgICAgICAgcGFkZGluZzogcmVtLWNhbGMoNSAxNSA1IDE1KSAhaW1wb3J0YW50O1xuICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICB9XG4gICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBjb2xvcjogJGdhbS15ZWxsb3c7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICAmLm1lZ2EtdG9nZ2xlLW9uIHtcbiAgICAgICAgPiBhLm1lZ2EtbWVudS1saW5rIHtcbiAgICAgICAgICBjb2xvcjogJGdhbS15ZWxsb3cgIWltcG9ydGFudDtcbiAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIGJvcmRlci1yaWdodC1jb2xvcjogJGdhbS15ZWxsb3c7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkZ2FtLXllbGxvdztcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC0xMzVkZWcpIHRyYW5zbGF0ZSgtNXB4LCAtNXB4KTtcbiAgICAgICAgICB9XG4gICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGdhbS15ZWxsb3c7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICA+IGEsXG4gICAgICA+IGEubWVnYS1tZW51LWxpbmsge1xuICAgICAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbWVkaXVtICFpbXBvcnRhbnQ7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IHJlbS1jYWxjKDIwKTtcbiAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgICAgcGFkZGluZzogcmVtLWNhbGMoNSAxNSA1IDE1KSAhaW1wb3J0YW50O1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgdG9wOiByZW0tY2FsYygtMik7XG4gICAgICAgICAgICByaWdodDogYXV0bztcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiByZW0tY2FsYygxMCk7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiBhdXRvO1xuICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICBib3JkZXItcmlnaHQtY29sb3I6ICRibGFjaztcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICRibGFjaztcbiAgICAgICAgICAgIHdpZHRoOiByZW0tY2FsYygxMCk7XG4gICAgICAgICAgICBoZWlnaHQ6IHJlbS1jYWxjKDEwKTtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjJzIGVhc2UtaW4tb3V0O1xuICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuICAgICAgICAgIH1cbiAgICAgICAgICAubWVnYS1pbmRpY2F0b3Ige1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHh4bGFyZ2UpIHtcbiAgICAgICAgICBwYWRkaW5nOiByZW0tY2FsYyg1IDE1IDUgMjApICFpbXBvcnRhbnQ7XG4gICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNik7XG4gICAgICAgIH1cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgY29sb3I6ICRnYW0teWVsbG93O1xuICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiAkZ2FtLXllbGxvdztcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICRnYW0teWVsbG93O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgJi5oaWdobGlnaHQge1xuICAgICAgICBhIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAkZ2FtLXB1cnBsZTtcbiAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICAmLmhpZ2hsaWdodC1scmcgeyAvLyBuYXYgaXMgc3R1Y2tcbiAgICAgICAgYSB7XG4gICAgICAgICAgYmFja2dyb3VuZDogJGdhbS1wdXJwbGUhaW1wb3J0YW50O1xuICAgICAgICAgIGNvbG9yOiAkd2hpdGUhaW1wb3J0YW50O1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICAgICAgICBwYWRkaW5nOiByZW0tY2FsYyg4IDMwIDEwKSFpbXBvcnRhbnQ7XG4gICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBib3JkZXItcmlnaHQtY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgID4gdWwubWVnYS1zdWItbWVudSB7XG4gICAgICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKDEyKTtcbiAgICAgIH1cbiAgICAgICYubWVnYS1tZW51LWdyaWQge1xuICAgICAgICA+IHVsLm1lZ2Etc3ViLW1lbnUge1xuICAgICAgICAgIEBleHRlbmQgLmJvZHktcHVzaDtcbiAgICAgICAgICA+IGxpLm1lZ2EtbWVudS1yb3cge1xuICAgICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgPiB1bC5tZWdhLXN1Yi1tZW51IHtcbiAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICB1bCB7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDAgIWltcG9ydGFudDtcbiAgICAgICAgICB9XG4gICAgICAgICAgbGkge1xuICAgICAgICAgICAgYS5tZWdhLW1lbnUtbGluayB7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIHBhZGRpbmctdG9wOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGxpLm1lZ2EtbWVudS1jb2x1bW4ge1xuICAgICAgICAgIHdpZHRoOiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgICAgICAgLy8gbWF4LXdpZHRoOiAyNSU7XG4gICAgICAgICAgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICBmbGV4OiAwIDEgYXV0bztcbiAgICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgYm9yZGVyLXJpZ2h0OiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgICB1bCB7XG4gICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgIGZsb2F0OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgIGg0IHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE2KSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTgpICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkZ2FtLXllbGxvdztcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE0KSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIHVsIHtcbiAgICAgICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgICBhLm1lZ2EtbWVudS1saW5rIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiByZW0tY2FsYygxMikgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogcmVtLWNhbGMoOCk7XG4gICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiByZW0tY2FsYygxKTtcbiAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkZ2FtLXllbGxvdztcbiAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgICAgdG9wOiByZW0tY2FsYyg2KTtcbiAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICYud2lkZ2V0X3RleHQge1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKDMwKTtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygxMCk7XG4gICAgICAgICAgICAgICAgbWluLXdpZHRoOiByZW0tY2FsYygyMjApO1xuICAgICAgICAgICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICAgIHdpZHRoOiByZW0tY2FsYyg0MCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLnN1cHBsZW1lbnRhcnkge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKDEyKTtcbiAgICBtYXJnaW4tbGVmdDogcmVtLWNhbGMobWFwLWdldCgkZ3JpZC1tYXJnaW4tZ3V0dGVycywgbWVkaXVtKSAvIDIpO1xuICAgIG1hcmdpbi1yaWdodDogcmVtLWNhbGMobWFwLWdldCgkZ3JpZC1tYXJnaW4tZ3V0dGVycywgbWVkaXVtKSAvIDIpO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeHhsYXJnZSkge1xuICAgICAgbWFyZ2luLWxlZnQ6IHJlbS1jYWxjKDUwKTtcbiAgICB9XG4gICAgdWwge1xuICAgICAgYSB7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpO1xuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICB0b3A6IHJlbS1jYWxjKC0zKTtcbiAgICAgICAgICB3aWR0aDogcmVtLWNhbGMoNik7XG4gICAgICAgICAgaGVpZ2h0OiByZW0tY2FsYyg2KTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAud2lkZ2V0IHtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgbWFyZ2luLWxlZnQ6IHJlbS1jYWxjKDEwKTtcbiAgICAgIGxhYmVsIHtcbiAgICAgICAgcGFkZGluZzogMC41cmVtIDA7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICB9XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IHJlbS1jYWxjKDEwKTtcbiAgICAgIH1cbiAgICAgIGJ1dHRvbiB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgIH1cbiAgICAgICYud2lkZ2V0X3NlYXJjaCB7XG4gICAgICAgIC5pbnB1dC1ncm91cCB7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIH1cbiAgICAgICAgLmlucHV0LWdyb3VwLWZpZWxkIHtcbiAgICAgICAgICB3aWR0aDogMDtcbiAgICAgICAgICBib3JkZXItd2lkdGg6IDA7XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuNHMgZWFzZS1pbi1vdXQ7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIHJpZ2h0OiByZW0tY2FsYygzMCk7XG4gICAgICAgICAgdG9wOiByZW0tY2FsYygtOCk7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogcmVtLWNhbGMoMjApO1xuICAgICAgICB9XG4gICAgICAgICYuaG92ZXIsXG4gICAgICAgICYuZm9jdXNzZWQge1xuICAgICAgICAgIGJvcmRlci13aWR0aDogMDtcbiAgICAgICAgICAvLyBib3gtc2hhZG93OiAwIDAgMTBweCAxMHB4IHJnYmEoMjU1LDI1NSwyNTUsMSk7XG4gICAgICAgICAgLmlucHV0LWdyb3VwLWZpZWxkIHtcbiAgICAgICAgICAgIGJvcmRlci13aWR0aDogMXB4O1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiByZW0tY2FsYygxMCk7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiByZW0tY2FsYygxMCk7XG4gICAgICAgICAgICB3aWR0aDogcmVtLWNhbGMoMjUwKTtcbiAgICAgICAgICAgIG1pbi13aWR0aDogcmVtLWNhbGMoMjUwKTtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW4tb3V0O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuLnN1cHBsZW1lbnRhcnkge1xuICAud2lkZ2V0IHtcbiAgICBidXR0b24ge1xuICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgYm9yZGVyOiAwO1xuICAgIH1cbiAgfVxufVxuLm1vYmlsZS1vZmYtY2FudmFzLW1lbnUge1xuICAuc3VwcGxlbWVudGFyeSwgLmV5ZWJyb3ctbWVudSB7XG4gICAgLm1lbnUge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuICAgIGZvcm0ge1xuICAgICAgbWFyZ2luLWxlZnQ6IHJlbS1jYWxjKDE1KTtcbiAgICB9XG4gIH1cbiAgbGkuZm9vdGVyLW9ubHkge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgbGkuaXMtc3VibWVudS1wYXJlbnQtaXRlbSB7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgfVxuICBAYXQtcm9vdCBodG1sW2FtcF0gJiB1bCB7XG4gICAgbGkge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIH1cbiAgICBidXR0b24ge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgcmlnaHQ6IHJlbS1jYWxjKDE1KTtcbiAgICAgIHRvcDogcmVtLWNhbGMoOCk7XG4gICAgICB3aWR0aDogcmVtLWNhbGMoMjApO1xuICAgICAgaGVpZ2h0OiByZW0tY2FsYygyMCk7XG4gICAgICBiYWNrZ3JvdW5kOiAkZ2FtLXB1cnBsZTtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIGFsaWduLWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICsgdWwge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuICAgICAgJjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiK1wiO1xuICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgIH1cbiAgICB9XG4gICAgYnV0dG9uLnRvZ2dsZWQtb24ge1xuICAgICAgJjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiLVwiO1xuICAgICAgfVxuICAgICAgJiArIHVsIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4uZXllYnJvdyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogbm93cmFwIHJvdztcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB3aWR0aDogMTAwJTtcbiAgLyptYXgtd2lkdGg6MTkwM3B4OyovXG4gIGhlaWdodDogNzVweDtcbiAgbWFyZ2luLXRvcDogMHB4O1xuICB0b3A6IDBweDtcbiAgcGFkZGluZy1sZWZ0OiA0LjY4NzVyZW07XG4gIGxpbmUtaGVpZ2h0OiA3NXB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmVmZWZlO1xuICAuZXllYnJvdy1uYXYtd3JhcHBlciAud2lkZ2V0X25hdl9tZW51IHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjc1cmVtO1xuICB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAuZXllYnJvdy1uYXYtd3JhcHBlciAud2lkZ2V0X25hdl9tZW51IHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDRyZW07XG4gICAgfVxuICB9XG4gIC5leWVicm93LW1lbnUge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIC8qbWFyZ2luLXRvcDogcmVtLWNhbGMoMTIpOyovXG4gICAgbWFyZ2luLXRvcDogcmVtLWNhbGMoMjApO1xuICAgIG1hcmdpbi1sZWZ0OiByZW0tY2FsYyhtYXAtZ2V0KCRncmlkLW1hcmdpbi1ndXR0ZXJzLCBtZWRpdW0pIC8gMik7XG4gICAgbWFyZ2luLXJpZ2h0OiByZW0tY2FsYyhtYXAtZ2V0KCRncmlkLW1hcmdpbi1ndXR0ZXJzLCBtZWRpdW0pIC8gMik7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4eGxhcmdlKSB7XG4gICAgICBtYXJnaW4tbGVmdDogcmVtLWNhbGMoNTApO1xuICAgIH1cblxuICAgIHVsIHtcbiAgICAgIGEge1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE0KTtcblxuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICB0b3A6IHJlbS1jYWxjKC0zKTtcbiAgICAgICAgICB3aWR0aDogcmVtLWNhbGMoNik7XG4gICAgICAgICAgaGVpZ2h0OiByZW0tY2FsYyg2KTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIHN2Z1tpZCo9J3NlYXJjaC1pY29uJ10ge1xuICAgICAgLnNlYXJjaCB7XG4gICAgICAgIGZpbGw6IG5vbmU7XG4gICAgICAgIHN0cm9rZTogJGdhbS1wdXJwbGU7XG4gICAgICAgIHN0cm9rZS13aWR0aDogMS40NTI7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLndpZGdldCB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIG1hcmdpbi1sZWZ0OiByZW0tY2FsYygxMCk7XG5cbiAgICAgIGxhYmVsIHtcbiAgICAgICAgcGFkZGluZzogMC41cmVtIDA7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICB9XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IHJlbS1jYWxjKDEwKTtcbiAgICAgIH1cblxuICAgICAgYnV0dG9uIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgfVxuXG4gICAgICAmLndpZGdldF9zZWFyY2gge1xuICAgICAgICAuaW5wdXQtZ3JvdXAge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB9XG5cbiAgICAgICAgLmlucHV0LWdyb3VwLWZpZWxkIHtcbiAgICAgICAgICB3aWR0aDogMDtcbiAgICAgICAgICBib3JkZXItd2lkdGg6IDA7XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuNHMgZWFzZS1pbi1vdXQ7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIHJpZ2h0OiByZW0tY2FsYygzMCk7XG4gICAgICAgICAgdG9wOiByZW0tY2FsYygtOCk7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogcmVtLWNhbGMoMjApO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5ob3ZlcixcbiAgICAgICAgJi5mb2N1c3NlZCB7XG4gICAgICAgICAgYm9yZGVyLXdpZHRoOiAwO1xuICAgICAgICAgIC8vIGJveC1zaGFkb3c6IDAgMCAxMHB4IDEwcHggcmdiYSgyNTUsMjU1LDI1NSwxKTtcbiAgICAgICAgICAuaW5wdXQtZ3JvdXAtZmllbGQge1xuICAgICAgICAgICAgYm9yZGVyLXdpZHRoOiAxcHg7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IHJlbS1jYWxjKDEwKTtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IHJlbS1jYWxjKDEwKTtcbiAgICAgICAgICAgIHdpZHRoOiByZW0tY2FsYygyNTApO1xuICAgICAgICAgICAgbWluLXdpZHRoOiByZW0tY2FsYygyNTApO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbi1vdXQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4ubWVudS1pY29uIHtcbiAgZmxvYXQ6IHJpZ2h0O1xuICAvKm1hcmdpbi10b3A6IHJlbS1jYWxjKDQpOyovXG4gIG1hcmdpbi10b3A6IDAuNDVyZW07XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgQGF0LXJvb3QgaGVhZGVyOm5vdCguYmxhY2spIC5pcy1hbmNob3JlZCAmIHtcbiAgICAgICY6YWZ0ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgN3B4IDAgJHdoaXRlLCAwIDE0cHggMCAkd2hpdGU7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4vL1NVQiBNRU5VXG4ubWVudSxcbi5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCB7XG4gIHBvc2l0aW9uOiBzdGF0aWM7XG59XG4uZHJvcGRvd24ubWVudSA+IGxpIHtcbiAgPiBhIHtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICB9XG4gID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBAZXh0ZW5kIC5ib2R5LXB1c2g7XG4gICAgcGFkZGluZy10b3A6IHJlbS1jYWxjKDIwKTtcbiAgICBwYWRkaW5nLWJvdHRvbTogcmVtLWNhbGMoMjApO1xuICAgIGJvcmRlcjogMDtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgJG1lZGl1bS1ncmF5O1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XG4gICAgYmFja2dyb3VuZDogJHdoaXRlO1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgbGVmdDogMCAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiAwICFpbXBvcnRhbnQ7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgJi5qcy1kcm9wZG93bi1hY3RpdmUge1xuICAgICAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC5pcy1hbmNob3JlZCAmIHtcbiAgICAgIC8vIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgLy8gYm9yZGVyLXRvcC1jb2xvcjogJHdoaXRlO1xuICAgICAgLy8gYm9yZGVyLWJvdHRvbTogMDtcbiAgICAgIGEge1xuICAgICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgfVxuICAgIH1cbiAgICBsaSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBmbGV4OiAwIDEgYXV0bztcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgIH1cbiAgICBhIHtcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpO1xuICAgICAgJjphZnRlciB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4uanVtcC1uYXYge1xuICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gICYuaXMtc3R1Y2sge1xuICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKDQ2KSAhaW1wb3J0YW50O1xuICAgIEBhdC1yb290IGJvZHkuYWRtaW4tYmFyICYge1xuICAgICAgbWFyZ2luLXRvcDogcmVtLWNhbGMoNzgpICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKDY4KSAhaW1wb3J0YW50O1xuICAgICAgQGF0LXJvb3QgYm9keS5hZG1pbi1iYXIgJiB7XG4gICAgICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKDEwMCkgIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgdWwge1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgbWFyZ2luOiAwO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkbGlnaHQtZ3JheTtcbiAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XG4gICAgbGkge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgcGFkZGluZy10b3A6IHJlbS1jYWxjKDE1KTtcbiAgICAgIHBhZGRpbmctYm90dG9tOiByZW0tY2FsYygxNSk7XG4gICAgICBwYWRkaW5nLWxlZnQ6IHJlbS1jYWxjKG1hcC1nZXQoJGdyaWQtbWFyZ2luLWd1dHRlcnMsIHNtYWxsKSAvIDIpO1xuICAgICAgcGFkZGluZy1yaWdodDogcmVtLWNhbGMobWFwLWdldCgkZ3JpZC1tYXJnaW4tZ3V0dGVycywgc21hbGwpIC8gMik7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IHJlbS1jYWxjKG1hcC1nZXQoJGdyaWQtbWFyZ2luLWd1dHRlcnMsIG1lZGl1bSkgLyAyKTtcbiAgICAgICAgcGFkZGluZy1yaWdodDogcmVtLWNhbGMobWFwLWdldCgkZ3JpZC1tYXJnaW4tZ3V0dGVycywgbWVkaXVtKSAvIDIpO1xuICAgICAgfVxuICAgICAgYSB7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTUpO1xuICAgICAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbWVkaXVtO1xuICAgICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgfVxuICAgICAgJi5hY3RpdmUge1xuICAgICAgICBhIHtcbiAgICAgICAgICBjb2xvcjogJGdhbS1wdXJwbGU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbi5yb3cuYnJlYWRjcnVtYiB7XG4gIC8qbWFyZ2luLXRvcDogcmVtLWNhbGMoLTUpOyovXG4gIHRvcDogMjMwcHg7XG4gIHotaW5kZXg6IDE7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHAuYnJlYWRjcnVtYnMge1xuICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDEyKTtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDEyKTtcbiAgICBjb2xvcjogJGJsYWNrO1xuICAgIGEge1xuICAgICAgY29sb3I6ICRibGFjaztcbiAgICB9XG4gIH1cbiAgLnNpdGUtaGVhZGVyLndoaXRlICYge1xuICAgIHAuYnJlYWRjcnVtYnMge1xuICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgIGEge1xuICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAuaXMtc3R1Y2sgKyAmIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOjEwMjNweCkge1xuICAucm93LmJyZWFkY3J1bWIge1xuICAgIHRvcDogODBweDtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDoxMDIzcHgpIHtcbiAgbmF2LnNpdGUtbmF2aWdhdGlvbiB7XG4gICAgZGlzcGxheTogbm9uZSFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuXG4vLyBmaXggbW9iaWxlIG1lbnUgb24gd2Via2l0XG4uZHJpbGxkb3duIC5pcy1kcmlsbGRvd24tc3VibWVudSB7XG4gIHotaW5kZXg6IHVuc2V0O1xufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZ3JpZFxuLy8vL1xuXG4vLy8gU2V0IHRoZSB3aWR0aCBvZiBhIGdyaWQgY29sdW1uLlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TGlzdH0gJHdpZHRoIFskZ3JpZC1jb2x1bW4tY291bnRdIC0gV2lkdGggdG8gbWFrZSB0aGUgY29sdW1uLiBZb3UgY2FuIHBhc3MgaW4gYW55IHZhbHVlIGFjY2VwdGVkIGJ5IHRoZSBgZ3JpZC1jb2x1bW4oKWAgZnVuY3Rpb24sIHN1Y2ggYXMgYDZgLCBgNTAlYCwgb3IgYDEgb2YgMmAuXG5AbWl4aW4gZ3JpZC1jb2x1bW4tc2l6ZShcbiAgJGNvbHVtbnM6ICRncmlkLWNvbHVtbi1jb3VudFxuKSB7XG4gIHdpZHRoOiBncmlkLWNvbHVtbigkY29sdW1ucyk7XG59XG5cbi8vLyBTaG9ydGhhbmQgZm9yIGBncmlkLWNvbHVtbi1zaXplKClgLlxuLy8vIEBhbGlhcyBncmlkLWNvbHVtbi1zaXplXG5AbWl4aW4gZ3JpZC1jb2wtc2l6ZShcbiAgJGNvbHVtbnM6ICRncmlkLWNvbHVtbi1jb3VudFxuKSB7XG4gIEBpbmNsdWRlIGdyaWQtY29sdW1uLXNpemUoJGNvbHVtbnMpO1xufVxuIiwiLmJvZHktcHVzaCB7XG4gIHBhZGRpbmctbGVmdDogcmVtLWNhbGMoMjApICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmctcmlnaHQ6IHJlbS1jYWxjKDIwKSAhaW1wb3J0YW50O1xuICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgIHBhZGRpbmctbGVmdDogcmVtLWNhbGMoNzUpICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZy1yaWdodDogcmVtLWNhbGMoNzUpICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi5zaG93LWZvci1wcmludC1vbmx5IHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbmgyLFxuLmgyIHtcbiAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMjApO1xufVxuaHRtbDpub3QoW2FtcF0pIC5uby1oZXJvIHtcbiAgcGFkZGluZy10b3A6IHJlbS1jYWxjKDUwKTtcbiAgcGFkZGluZy1ib3R0b206IDA7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICBwYWRkaW5nLXRvcDogcmVtLWNhbGMoMTUwKTtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgfVxufVxuYm9keS5idXN5IHtcbiAgY3Vyc29yOiBwcm9ncmVzcztcbiAgJjphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIGJhY2tncm91bmQ6IHJnYmEoJGdhbS1wdXJwbGUtZGFyaywgMC45KTtcbiAgICB6LWluZGV4OiAyMDAwO1xuICB9XG59XG4uZXJyb3I0MDQge1xuICBhcnRpY2xlIHtcbiAgICBwYWRkaW5nLXRvcDogcmVtLWNhbGMoNDApO1xuICAgIHBhZGRpbmctYm90dG9tOiByZW0tY2FsYyg0MCk7XG4gICAgcGFkZGluZy1sZWZ0OiByZW0tY2FsYyhtYXAtZ2V0KCRncmlkLW1hcmdpbi1ndXR0ZXJzLCBzbWFsbCkgLyAyKTtcbiAgICBwYWRkaW5nLXJpZ2h0OiByZW0tY2FsYyhtYXAtZ2V0KCRncmlkLW1hcmdpbi1ndXR0ZXJzLCBzbWFsbCkgLyAyKTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgcGFkZGluZy1sZWZ0OiByZW0tY2FsYyhtYXAtZ2V0KCRncmlkLW1hcmdpbi1ndXR0ZXJzLCBtZWRpdW0pIC8gMik7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiByZW0tY2FsYyhtYXAtZ2V0KCRncmlkLW1hcmdpbi1ndXR0ZXJzLCBtZWRpdW0pIC8gMik7XG4gICAgfVxuICB9XG59XG5pbWdbc3JjKj1cIi5zdmdcIl0ge1xuICBoZWlnaHQ6IGluaGVyaXQgIWltcG9ydGFudDtcbn1cbnRhYmxlIHtcbiAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbn1cblxucC5sYWJlbCxcbmxhYmVsIHtcbiAgZm9udC1zaXplOiByZW0tY2FsYygxMik7XG4gIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1tZWRpdW07XG4gIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDUpO1xuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpO1xuICB9XG59XG4ubWFpbi1jb250YWluZXIge1xuICBjbGVhcjogYm90aDtcbiAgLy8gaGVhZGVyICsgJiB7XG4gIC8vICAgcGFkZGluZy10b3A6IHJlbS1jYWxjKDIwMCk7XG4gIC8vIH1cbn1cbm1haW4gc2VjdGlvbiB7XG4gIHBhZGRpbmctdG9wOiByZW0tY2FsYygzMCk7XG4gIHBhZGRpbmctYm90dG9tOiByZW0tY2FsYygzMCk7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICBwYWRkaW5nLXRvcDogcmVtLWNhbGMoODApO1xuICAgIHBhZGRpbmctYm90dG9tOiByZW0tY2FsYyg4MCk7XG4gIH1cbiAgJi5saWdodCB7XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgICAuYnV0dG9uIHtcbiAgICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcbiAgICAgIGNvbG9yOiAkZ2FtLXB1cnBsZTtcbiAgICAgICY6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkZ2FtLXllbGxvdztcbiAgICAgIH1cbiAgICB9XG4gICAgLmxhYmVsIHtcbiAgICAgIGNvbG9yOiAkZ2FtLXllbGxvdztcbiAgICB9XG4gIH1cbn1cbi5idXR0b24ge1xuICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbWVkaXVtO1xufVxubWFpbiB1bDpub3QoW2NsYXNzXSkge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBsaW5lLWhlaWdodDogMS40O1xuICBsaSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1hcmdpbjogcmVtLWNhbGMoNCAwKTtcbiAgICAmOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBsZWZ0OiByZW0tY2FsYygtMTUpO1xuICAgICAgdG9wOiByZW0tY2FsYyg4KTtcbiAgICAgIHdpZHRoOiByZW0tY2FsYyg2KTtcbiAgICAgIGhlaWdodDogcmVtLWNhbGMoNik7XG4gICAgICBib3JkZXItcmFkaXVzOiByZW0tY2FsYyg0KTtcbiAgICAgIGJhY2tncm91bmQ6ICRnYW0tcHVycGxlO1xuICAgIH1cbiAgICA+IHVsIHtcbiAgICAgIGxpOmJlZm9yZSB7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICAgIGhlaWdodDogcmVtLWNhbGMoMSk7XG4gICAgICAgIHRvcDogcmVtLWNhbGMoMTIpO1xuICAgICAgfVxuICAgIH1cbiAgICBoMSwgaDIsIGgzLCBoNCwgaDUsIGg2IHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gICAgfVxuICB9XG59XG5tYWluIC5saWdodCB7XG4gIHVsOm5vdChbY2xhc3NdKSB7XG4gICAgbGkge1xuICAgICAgJjpiZWZvcmUge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5ibG9ja3F1b3RlIHtcbiAgYm9yZGVyLWxlZnQ6IDA7XG4gIHBhZGRpbmc6IDA7XG4gICYsXG4gICYgcCB7XG4gICAgY29sb3I6ICRibGFjaztcbiAgfVxuICBwIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbWVkaXVtO1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMobWFwLWRlZXAtZ2V0KCRoZWFkZXItc3R5bGVzLCBzbWFsbCwgaDIsIGZvbnQtc2l6ZSkpO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKG1hcC1kZWVwLWdldCgkaGVhZGVyLXN0eWxlcywgbWVkaXVtLCBoMiwgZm9udC1zaXplKSk7XG4gICAgfVxuICAgICY6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IFwi4oCcXCI7XG4gICAgICBtYXJnaW4tbGVmdDogLTAuNGVtO1xuICAgIH1cbiAgICAmOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwi4oCdXCI7XG4gICAgfVxuICB9XG4gIGNpdGUge1xuICAgIGNvbG9yOiAkZ2FtLXB1cnBsZTtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgZm9udC1zaXplOiAkZ2xvYmFsLWZvbnQtc2l6ZTtcbiAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYyg0MCk7XG4gICAgJjpiZWZvcmUge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cbiAgYm9keS5zaW5nbGUtcG9zdCAmLFxuICBib2R5LnNpbmdsZS1ibG9nICYge1xuICAgIHAge1xuICAgICAgJjpiZWZvcmUsXG4gICAgICAmOmFmdGVyIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbi5yZXZlYWwge1xuICBwYWRkaW5nOiByZW0tY2FsYyg0MCk7XG59XG4ucmV2ZWFsLmlmcmFtZSB7XG4gIGhlaWdodDogOTB2aDtcbiAgLmlmcmFtZS13cmFwcGVyIHtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gIH1cbn1cbi5yZXZlYWwtb3ZlcmxheSB7XG4gIGJhY2tkcm9wLWZpbHRlcjogYmx1cigwLjI1cmVtKTtcbn1cbi5yZXZlYWwuZ2FtbWFwb3B1cC1jb250YWluZXIge1xuICBoZWlnaHQ6IDEwMCU7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgYm9yZGVyLXJhZGl1czogMC4yNXJlbTtcbiAgICBoZWlnaHQ6IDc1JTtcbiAgfVxuICAuZ2FtbWFwb3B1cC1jb250ZW50IHtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gIH1cbn1cbmRpdi5zZWFyY2gge1xuICBmb3JtIHtcbiAgICBwYWRkaW5nLXRvcDogcmVtLWNhbGMoMTApO1xuICAgIG1hcmdpbi1yaWdodDogcmVtLWNhbGMoLTEwKTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAgIWltcG9ydGFudDtcbiAgICB9XG4gICAgaW5wdXRbdHlwZT1cInRleHRcIl0ge1xuICAgICAgYm9yZGVyOiAwO1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRtZWRpdW0tZ3JheTtcbiAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgfVxuICAgIGJ1dHRvbiB7XG4gICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiByZW0tY2FsYygxMCk7XG4gICAgICBwYWRkaW5nLWxlZnQ6IHJlbS1jYWxjKDEwKTtcbiAgICB9XG4gIH1cbn1cblxudWwubGlzdGluZyB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIG1hcmdpbjogMCAwIHJlbS1jYWxjKDIwKTtcbiAgbGkge1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgcGFkZGluZy1ib3R0b206IHJlbS1jYWxjKDgpO1xuICAgIGEge1xuICAgICAgJjphZnRlciB7XG4gICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB0b3A6IHJlbS1jYWxjKC0yKTtcbiAgICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICAgIG1hcmdpbi1sZWZ0OiByZW0tY2FsYygtMjApO1xuICAgICAgICBtYXJnaW4tdG9wOiBhdXRvO1xuICAgICAgICBib3JkZXI6IDJweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiAkZ2FtLXB1cnBsZTtcbiAgICAgICAgYm9yZGVyLXRvcC1jb2xvcjogJGdhbS1wdXJwbGU7XG4gICAgICAgIHdpZHRoOiByZW0tY2FsYygxMCk7XG4gICAgICAgIGhlaWdodDogcmVtLWNhbGMoMTApO1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZykgdHJhbnNsYXRlKDIwcHgsIC0xOHB4KTtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogcmVtLWNhbGMoLTI1KTtcbiAgICAgICAgICB0b3A6IHJlbS1jYWxjKC0xKTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZykgdHJhbnNsYXRlKDIwcHgsIC0xOHB4KSBzY2FsZSgwLjgpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbnVsLnNoYXJlLFxuZm9vdGVyLmZvb3Rlci1jb250YWluZXIgdWwge1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgbGkge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgfVxuICBsaS50b3BuYXYtb25seSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICBhW2hyZWYqPVwidHdpdHRlci5jb21cIl0sXG4gIGFbaHJlZio9XCJmYWNlYm9vay5jb21cIl0sXG4gIGFbaHJlZio9XCJsaW5rZWRpbi5jb21cIl0sXG4gIGFbaHJlZio9XCJ5b3V0dWJlLmNvbVwiXSB7XG4gICAgdGV4dC1pbmRlbnQ6IHJlbS1jYWxjKC05OTk5KTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgd2lkdGg6IHJlbS1jYWxjKDMyKTtcbiAgICBoZWlnaHQ6IHJlbS1jYWxjKDMyKTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICY6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHdpZHRoOiByZW0tY2FsYygzMik7XG4gICAgICBoZWlnaHQ6IHJlbS1jYWxjKDMyKTtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJSBhdXRvO1xuICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICB9XG4gIH1cbiAgYVtocmVmKj1cInR3aXR0ZXIuY29tXCJdOmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1hZ2VzL2ljb25fdHdpdHRlci5zdmcpO1xuICB9XG4gIGFbaHJlZio9XCJmYWNlYm9vay5jb21cIl06YWZ0ZXIge1xuICAgIGJhY2tncm91bmQ6IHVybCguLi9pbWFnZXMvaWNvbl9mYWNlYm9vay5zdmcpO1xuICB9XG4gIGFbaHJlZio9XCJsaW5rZWRpbi5jb21cIl06YWZ0ZXIge1xuICAgIGJhY2tncm91bmQ6IHVybCguLi9pbWFnZXMvaWNvbl9saW5rZWRpbi5zdmcpO1xuICB9XG4gIGFbaHJlZio9XCJ5b3V0dWJlLmNvbVwiXTphZnRlciB7XG4gICAgYmFja2dyb3VuZDogdXJsKC4uL2ltYWdlcy9pY29uX3lvdXR1YmUuc3ZnKTtcbiAgfVxufVxuLmZvcm0uZmlsdGVyIHtcbiAgcGFkZGluZy1ib3R0b206IHJlbS1jYWxjKDQwKTtcbiAgaDIge1xuICAgIGZvbnQtc2l6ZTogJGdsb2JhbC1mb250LXNpemU7XG4gICAgcGFkZGluZy1sZWZ0OiByZW0tY2FsYyhtYXAtZ2V0KCRncmlkLW1hcmdpbi1ndXR0ZXJzLCBzbWFsbCkgLyAyKTtcbiAgICBwYWRkaW5nLXJpZ2h0OiByZW0tY2FsYyhtYXAtZ2V0KCRncmlkLW1hcmdpbi1ndXR0ZXJzLCBzbWFsbCkgLyAyKTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgcGFkZGluZy1sZWZ0OiByZW0tY2FsYyhtYXAtZ2V0KCRncmlkLW1hcmdpbi1ndXR0ZXJzLCBtZWRpdW0pIC8gMik7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiByZW0tY2FsYyhtYXAtZ2V0KCRncmlkLW1hcmdpbi1ndXR0ZXJzLCBtZWRpdW0pIC8gMik7XG4gICAgfVxuICB9XG4gIGZvcm0ge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgIH1cbiAgICBwIHtcbiAgICAgIHBhZGRpbmctbGVmdDogcmVtLWNhbGMobWFwLWdldCgkZ3JpZC1tYXJnaW4tZ3V0dGVycywgc21hbGwpIC8gMik7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiByZW0tY2FsYyhtYXAtZ2V0KCRncmlkLW1hcmdpbi1ndXR0ZXJzLCBzbWFsbCkgLyAyKTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIGZsZXg6IDEgMSAwO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IHJlbS1jYWxjKG1hcC1nZXQoJGdyaWQtbWFyZ2luLWd1dHRlcnMsIG1lZGl1bSkgLyAyKTtcbiAgICAgICAgcGFkZGluZy1yaWdodDogcmVtLWNhbGMobWFwLWdldCgkZ3JpZC1tYXJnaW4tZ3V0dGVycywgbWVkaXVtKSAvIDIpO1xuICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgIGZsZXg6IDAgMSAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBsYWJlbCB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG4gICAgICAuc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheTtcbiAgICAgIH1cbiAgICAgIGJ1dHRvbiB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4ucGFnaW5hdGlvbiB7XG4gIG1hcmdpbjogcmVtLWNhbGMoNDAgMCk7XG4gIC5hamF4LWFjdGl2YXRlZCAmIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5idXR0b24uYWpheC1hcHBlbmQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiByZW0tY2FsYyg0MCkgYXV0bztcbn1cblxuLnNsaWNrLWFycm93IHtcbiAgYmFja2dyb3VuZDogJGxpZ2h0LWdyYXk7XG4gIGNvbG9yOiAkZ2FtLXB1cnBsZTtcbiAgaGVpZ2h0OiByZW0tY2FsYyg1MCk7XG4gIHdpZHRoOiByZW0tY2FsYyg1MCk7XG4gIHRvcDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICY6YmVmb3JlIHtcbiAgICBib3JkZXI6IHJlbS1jYWxjKDMpIHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIGhlaWdodDogcmVtLWNhbGMoMTYpO1xuICAgIHdpZHRoOiByZW0tY2FsYygxNik7XG4gIH1cbn1cbi5zbGljay1uZXh0IHtcbiAgbGVmdDogYXV0bztcbiAgcmlnaHQ6IDA7XG4gICY6YmVmb3JlIHtcbiAgICBib3JkZXItdG9wLWNvbG9yOiAkZ2FtLXB1cnBsZTtcbiAgICBib3JkZXItcmlnaHQtY29sb3I6ICRnYW0tcHVycGxlO1xuICAgIG1hcmdpbi1sZWZ0OiByZW0tY2FsYygtNyk7XG4gIH1cbn1cbi5zbGljay1wcmV2IHtcbiAgcmlnaHQ6IGF1dG87XG4gIGxlZnQ6IDA7XG4gICY6YmVmb3JlIHtcbiAgICBib3JkZXItdG9wLWNvbG9yOiAkZ2FtLXB1cnBsZTtcbiAgICBib3JkZXItbGVmdC1jb2xvcjogJGdhbS1wdXJwbGU7XG4gICAgbWFyZ2luLWxlZnQ6IHJlbS1jYWxjKDcpO1xuICB9XG59XG4uYWRtaW4tYmFyIHtcbiAgLnNlbGVjdDItZHJvcGRvd24ge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWShyZW0tY2FsYygzMSkpO1xuICB9XG59XG5cbi53aXN0aWFfcmVzcG9uc2l2ZV9wYWRkaW5nIHtcbiAgcGFkZGluZzogNTYuMjUlIDAgMCAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4ud2lzdGlhX3Jlc3BvbnNpdmVfd3JhcHBlciB7XG4gIGhlaWdodDogMTAwJTtcbiAgbGVmdDogMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHdpZHRoOiAxMDAlO1xufVxuLndpc3RpYV9lbWJlZCB7XG4gIGhlaWdodDogMTAwJTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTAwJTtcbn1cbi53aXN0aWFfc3dhdGNoIHtcbiAgaGVpZ2h0OiAxMDAlO1xuICBsZWZ0OiAwO1xuICBvcGFjaXR5OiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAyMDBtcztcbiAgd2lkdGg6IDEwMCU7XG4gIGltZyB7XG4gICAgZmlsdGVyOiBibHVyKDVweCk7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIG9iamVjdC1maXQ6IGNvbnRhaW47XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cbmJvZHkuc2luZ2xlLWJsb2csXG5ib2R5LnNpbmdsZS1ldmVudCxcbmJvZHkuc2luZ2xlLWNhc2Vfc3R1ZHksXG5ib2R5LnNpbmdsZS1wb3N0IHtcbiAgLmJyZWFkY3J1bWJfbGFzdCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAuYnJlYWRjcnVtYnMge1xuICAgID4gc3BhbiB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBtYXJnaW4tcmlnaHQ6IC0wLjVlbTtcbiAgICAgIGNsaXAtcGF0aDogaW5zZXQoMCA1cHggMCAwKTsgLy90byBoaWRlIHRoZSBsYXN0IHNsYXNoXG4gICAgfVxuICB9XG59XG5odG1sW2FtcF0ge1xuICAqW2RhdGEtYW9zXSB7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cbnNlY3Rpb24uaHRtbDpmaXJzdC1jaGlsZDpsYXN0LWNoaWxkIHtcbiAgLmNvbnRlbnQge1xuICAgIG1heC13aWR0aDogcmVtLWNhbGMoOTAwKTtcbiAgICBAaW5jbHVkZSBncmlkLWNvbHVtbigxMik7XG4gIH1cbn1cbi5jbG9zZS1idXR0b24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ2FtLXB1cnBsZTtcbiAgY29sb3I6ICR3aGl0ZTtcbiAgZm9udC13ZWlnaHQ6IDEwMDtcbiAgZm9udC1zaXplOiByZW0tY2FsYyg1MCk7XG4gIHdpZHRoOiByZW0tY2FsYyg1MCk7XG4gIGhlaWdodDogcmVtLWNhbGMoNTApO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIHRvcDogcmVtLWNhbGMoMzApO1xuICByaWdodDogcmVtLWNhbGMoMzApO1xuICBzcGFuIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW4tdG9wOiByZW0tY2FsYygtNCk7XG4gIH1cbiAgJjpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGdhbS15ZWxsb3c7XG4gIH1cbn1cbiIsIi5mb290ZXItY29udGFpbmVyIHtcclxuICBAaW5jbHVkZSB4eS1ncmlkLWNvbnRhaW5lcjtcclxuICBtYXgtd2lkdGg6IG5vbmU7XHJcbiAgcGFkZGluZy10b3A6IDA7XHJcbiAgYmFja2dyb3VuZDogJGxpZ2h0LWdyYXk7XHJcbn1cclxuXHJcbi5mb290ZXItZ3JpZCB7XHJcbiAgQGluY2x1ZGUgeHktZ3JpZDtcclxuICBwYWRkaW5nOiByZW0tY2FsYygyMCkgMDtcclxuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICBwYWRkaW5nOiByZW0tY2FsYyg4MCkgMDtcclxuICB9XHJcbiAgXHJcbiAgLmxvZ28ge1xyXG4gICAgQGluY2x1ZGUgZ3JpZC1jb2wtc2l6ZSgyIG9mIDEyKTtcclxuICAgIG1hcmdpbi1sZWZ0OiByZW0tY2FsYyhtYXAtZ2V0KCRncmlkLW1hcmdpbi1ndXR0ZXJzLCBzbWFsbCkgLyAyKTtcclxuICAgIG1hcmdpbi1yaWdodDogcmVtLWNhbGMobWFwLWdldCgkZ3JpZC1tYXJnaW4tZ3V0dGVycywgc21hbGwpIC8gMik7XHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG4gICAgICBtYXJnaW4tbGVmdDogcmVtLWNhbGMobWFwLWdldCgkZ3JpZC1tYXJnaW4tZ3V0dGVycywgbWVkaXVtKSAvIDIpO1xyXG4gICAgICBtYXJnaW4tcmlnaHQ6IHJlbS1jYWxjKG1hcC1nZXQoJGdyaWQtbWFyZ2luLWd1dHRlcnMsIG1lZGl1bSkgLyAyKTtcclxuICAgIH1cclxuICAgIHN2ZyB7XHJcbiAgICAgIG1heC13aWR0aDogcmVtLWNhbGMoMTUwKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHNlY3Rpb24ge1xyXG4gICAgQGluY2x1ZGUgeHktY2VsbCgpO1xyXG4gICAgZm9udC1zaXplOiByZW0tY2FsYygxMyk7XHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICAgIEBpbmNsdWRlIHh5LWNlbGwoYXV0byk7XHJcbiAgICB9XHJcbiAgICBhIHtcclxuICAgICAgY29sb3I6ICRibGFjaztcclxuICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgY29sb3I6ICRnYW0tcHVycGxlO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICBoNiB7XHJcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTMpO1xyXG4gICAgfVxyXG4gICAgJi53aWRnZXRfbmF2X21lbnUge1xyXG4gICAgICBmbGV4OiAxIDEgYXV0bztcclxuICAgICAgcGFkZGluZy10b3A6IHJlbS1jYWxjKDIwKTtcclxuICAgICAgcGFkZGluZy1ib3R0b206IHJlbS1jYWxjKDMwKTtcclxuICAgICAgbWFyZ2luLWxlZnQ6IDA7XHJcbiAgICAgIG1hcmdpbi1yaWdodDogMDtcclxuICAgICAgLm1lbnUtbWFpbi1tZW51LWNvbnRhaW5lciB7XHJcbiAgICAgICAgZmxvYXQ6IHJpZ2h0O1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIC5tZW51IHtcclxuICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XHJcbiAgICAgICAgICBhbGlnbi1jb250ZW50OiBzdHJldGNoO1xyXG4gICAgICAgICAgbGkge1xyXG4gICAgICAgICAgICBmbGV4OiAxIDEgMTAwJTtcclxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuICAgICAgICAgICAgICBmbGV4LWJhc2lzOiAwO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGEge1xyXG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTMpO1xyXG4gICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcclxuICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xyXG4gICAgICAgICAgICAgIHBhZGRpbmctdG9wOiByZW0tY2FsYyg1KTtcclxuICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogcmVtLWNhbGMoNSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICAgID4gbGkge1xyXG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IHJlbS1jYWxjKG1hcC1nZXQoJGdyaWQtbWFyZ2luLWd1dHRlcnMsIHNtYWxsKSAvIDIpO1xyXG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiByZW0tY2FsYyhtYXAtZ2V0KCRncmlkLW1hcmdpbi1ndXR0ZXJzLCBzbWFsbCkgLyAyKTtcclxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IHJlbS1jYWxjKG1hcC1nZXQoJGdyaWQtbWFyZ2luLWd1dHRlcnMsIG1lZGl1bSkgLyAyKTtcclxuICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiByZW0tY2FsYyhtYXAtZ2V0KCRncmlkLW1hcmdpbi1ndXR0ZXJzLCBtZWRpdW0pIC8gMik7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgPiBhIHtcclxuICAgICAgICAgICAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbWVkaXVtO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGxpIHtcclxuICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBsaXN0LWl0ZW07XHJcbiAgICAgICAgICAgICAgICAmLnRvcC1uYXYtb25seSB7XHJcbiAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICYuZm9vdGVyLW9ubHk6Zmlyc3QtY2hpbGQge1xyXG4gICAgICAgICAgICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICRnYW0tcHVycGxlO1xyXG4gICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XHJcbiAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiByZW0tY2FsYyhtYXAtZ2V0KCRncmlkLW1hcmdpbi1ndXR0ZXJzLCBzbWFsbCkgLyAyKTtcclxuICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiByZW0tY2FsYyhtYXAtZ2V0KCRncmlkLW1hcmdpbi1ndXR0ZXJzLCBtZWRpdW0pIC8gMik7XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyLXJpZ2h0OiAwO1xyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICBhIHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiAkZ2FtLXB1cnBsZTtcclxuICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICAgIC5zdWItbWVudSAuc3ViLW1lbnUge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICAmICsgc2VjdGlvbiB7XHJcbiAgICAgICAgZmxleDogMSAxIDEwMCU7XHJcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRkYXJrLWdyYXk7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMjApO1xyXG4gICAgICAgIC50ZXh0d2lkZ2V0IHVsIHtcclxuICAgICAgICAgIG1hcmdpbi1sZWZ0OiByZW0tY2FsYygtNSk7XHJcbiAgICAgICAgICBsaSB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJiArIHNlY3Rpb24gPiBkaXYge1xyXG4gICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgdWwge1xyXG4gICAgICAgICAgICBtYXJnaW46IHJlbS1jYWxjKDAgLTUpO1xyXG4gICAgICAgICAgICBsaSB7XHJcbiAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgICAgICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICRkYXJrLWdyYXk7XHJcbiAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogcmVtLWNhbGMoNSk7XHJcbiAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiByZW0tY2FsYyg1KTtcclxuICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogcmVtLWNhbGMoMTApO1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiByZW0tY2FsYygxMCk7XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgICAgICBib3JkZXItcmlnaHQ6IDA7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCJib2R5I3RpbnltY2V7XHJcbiAgaGVpZ2h0OiBhdXRvOyAvLyBGaXggZWRpdG9yIHN0eWxlIGJ1Z1xyXG4gIG1heC13aWR0aDogJGdyaWQtcm93LXdpZHRoOyAvLyBHaXZlIHRoZSBlZGl0b3IgYSBtYXgtd2lkdGhcclxuICBwYWRkaW5nOiByZW0tY2FsYygyMCkgIWltcG9ydGFudDtcclxufSIsIi5zaXRlcy1idXR0b24ge1xyXG4gIGJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yO1xyXG4gIGZvbnQtc2l6ZTogMS4yNXJlbTtcclxuICBmb250LXdlaWdodDogYm9sZDtcclxuICBib3gtc2hhZG93OiAwIC0ycHggMCByZ2JhKDAsMCwwLDAuMikgaW5zZXQ7XHJcbiAgYm9yZGVyLXJhZGl1czogM3B4O1xyXG4gIGJvcmRlcjogbm9uZTtcclxufVxyXG4iLCJzZWN0aW9uLmNhcm91c2VsLXNsaWRlIHtcclxuICAucm93IHtcclxuICAgIGgyIHtcclxuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgfVxyXG4gICAgLmN0YSB7XHJcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIH1cclxuICAgIC5jYXJvdXNlbCB7XHJcbiAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAuc2xpZGUge1xyXG4gICAgICAgIC5jYXJkLWNvbnRhaW5lciB7XHJcbiAgICAgICAgICBpbWcge1xyXG4gICAgICAgICAgICBoZWlnaHQ6IHJlbS1jYWxjKDE1MCk7XHJcbiAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufSIsInNlY3Rpb24uY29udGFjdC1kZXRhaWxzIHtcclxuICAgIGgyIHtcclxuICAgICAgICBAaW5jbHVkZSBncmlkLWNvbHVtbigxMik7IFxyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDM1KTtcclxuICAgIH1cclxuICAgIC5jb250YWN0LWRldGFpbHMtbGlzdCB7XHJcbiAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgLmNvbnRhY3QtZGV0YWlscy1ibG9jayB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDEyKTtcclxuICAgICAgICAgICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG4gICAgICAgICAgICAgICAgICBAaW5jbHVkZSBncmlkLWNvbC1zaXplKDQpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGgzIHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiAkZ2FtLXB1cnBsZTtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMobWFwLWRlZXAtZ2V0KCRoZWFkZXItc3R5bGVzLCBzbWFsbCwgaDUsIGZvbnQtc2l6ZSkpO1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMjApO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIHAge1xyXG4gICAgICAgICAgICAgICAgc3BhbiB7XHJcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRnYW0tcHVycGxlO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG5zZWN0aW9uLmNvbnRhY3QtZm9ybSB7XHJcbiAgICAuY29udGVudCB7XHJcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oMTIpO1xyXG4gICAgICAgID4ud3BjZjcge1xyXG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogcmVtLWNhbGMoMjApO1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICAgICAgICBtYXJnaW4tbGVmdDpyZW0tY2FsYygtMTUpO1xyXG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6cmVtLWNhbGMoLTE1KTtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XHJcbiAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC53cGNmNy1mb3JtIHtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xyXG4gICAgICAgICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLmlucHV0LWZpZWxkIHtcclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDEyKTsgXHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGdyaWQtY29sLXNpemUoNik7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICBpbnB1dCwgc2VsZWN0LCAuc2VsZWN0Mi1zZWxlY3Rpb24ge1xyXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRsaWdodC1ncmF5O1xyXG4gICAgICAgICAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcclxuICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiByZW0tY2FsYygxNSk7XHJcbiAgICAgICAgICAgICAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIFt0eXBlPSdyYWRpbyddIHtcclxuICAgICAgICAgICAgICAgICAgICBib3JkZXI6IHJlbS1jYWxjKDEpIHNvbGlkICRibGFjaztcclxuICAgICAgICAgICAgICAgICAgICBib3gtc2hhZG93OiBub25lO1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogcmVtLWNhbGMoNSk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICBbdHlwZT0nc3VibWl0J10ge1xyXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRnYW0tcHVycGxlO1xyXG4gICAgICAgICAgICAgICAgICAgIG1heC13aWR0aDogcmVtLWNhbGMoMzI1KTtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiByZW0tY2FsYygxNSk7XHJcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IHJlbS1jYWxjKDEyKTtcclxuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogcmVtLWNhbGMoMTApO1xyXG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgJjpudGgtbGFzdC1jaGlsZCgzKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogcmVtLWNhbGMoMjApO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgJjpudGgtbGFzdC1jaGlsZCgyKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgW3R5cGU9J3N1Ym1pdCddIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogcmVtLWNhbGMoMzApO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuIiwic2VjdGlvbi5jb250YWN0LWdyb3VwLWxvY2F0aW9ucyB7XHJcbiAgcGFkZGluZy1ib3R0b206IDAgIWltcG9ydGFudDtcclxuICBwYWRkaW5nLXRvcDogMCAhaW1wb3J0YW50O1xyXG4gIHVsLmNvbnRhY3QtYWRkcmVzcy1saXN0IHtcclxuICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcclxuICAgIG1hcmdpbjogMDtcclxuICAgIC5jb250YWN0LWNhcmQtaXRlbSB7XHJcbiAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XHJcbiAgICAgIGZsZXgtd3JhcDogd3JhcDtcclxuICAgICAgLmNvbnRhY3QtY2FyZC1jb2x1bW4ge1xyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuICAgICAgICAgIEBpbmNsdWRlIGdyaWQtY29sLXNpemUoNik7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5jb250ZW50IHtcclxuICAgICAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDEyKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgLmNvbnRhY3QtY2FyZC1tYXAge1xyXG4gICAgICAgIG9yZGVyOiAyO1xyXG4gICAgICAgIHBhZGRpbmctbGVmdDogMCAhaW1wb3J0YW50O1xyXG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDAgIWltcG9ydGFudDtcclxuICAgICAgICAuYWNmLW1hcCB7XHJcbiAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgIGhlaWdodDogNzJ2dztcclxuICAgICAgICAgIGJvcmRlcjogI2NjYyBzb2xpZCAxcHg7XHJcbiAgICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG4gICAgICAgICAgICBoZWlnaHQ6IHJlbS1jYWxjKDQwMCk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICAgICAgICAgIGhlaWdodDogMjh2dztcclxuICAgICAgICAgICAgbWluLWhlaWdodDogcmVtLWNhbGMoNDI1KTtcclxuICAgICAgICAgIH1cclxuICAgICAgICAgIGltZyB7XHJcbiAgICAgICAgICAgIG1heC13aWR0aDogaW5oZXJpdCAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICAuY29udGFjdC1jYXJkLWFkZHJlc3Mge1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICBvcmRlcjogMTtcclxuICAgICAgICBwYWRkaW5nOiByZW0tY2FsYyg0MCAyMCk7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XHJcbiAgICAgICAgICBwYWRkaW5nOiByZW0tY2FsYyg2MCAyMCk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuICAgICAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDgwIDIwKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgcCB7XHJcbiAgICAgICAgICBsaW5lLWhlaWdodDogMS4yN2VtO1xyXG4gICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxOCk7XHJcbiAgICAgICAgICBsZXR0ZXItc3BhY2luZzogcmVtLWNhbGMoLTAuMDMpO1xyXG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgei1pbmRleDogMTtcclxuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjYpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICBhIHtcclxuICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTYpO1xyXG4gICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IHJlbS1jYWxjKC0wLjAzKTtcclxuICAgICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgICAgIGhlaWdodDogcmVtLWNhbGMoOCk7XHJcbiAgICAgICAgICAgIHdpZHRoOiByZW0tY2FsYyg4KTtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMik7XHJcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiByZW0tY2FsYyg0KTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogcmVtLWNhbGMoMTApO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgLy8gYmFja2dyb3VuZC1jb2xvcjogcmVkO1xyXG4gICAgICAgICAgY29udGVudDogXCJcIjtcclxuICAgICAgICAgIGhlaWdodDogcmVtLWNhbGMoNDApO1xyXG4gICAgICAgICAgd2lkdGg6IHJlbS1jYWxjKDQwKTtcclxuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgIGJvdHRvbTogcmVtLWNhbGMoLTIwKTtcclxuICAgICAgICAgIGxlZnQ6IDUwJTtcclxuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKSByb3RhdGUoLTQ1ZGVnKTtcclxuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuICAgICAgICAgICAgYm90dG9tOiB1bnNldDtcclxuICAgICAgICAgICAgbGVmdDogY2FsYygxMDAlIC0gMjBweCk7XHJcbiAgICAgICAgICAgIHRvcDogNTAlO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSkgcm90YXRlKC00NWRlZyk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgICZbc3R5bGUqPVwiIzBhMGEwYVwiXSB7XHJcbiAgICAgICAgLmNvbnRhY3QtY2FyZC1hZGRyZXNzOmFmdGVyIHtcclxuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwYTBhMGE7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgICZbc3R5bGUqPVwiI2IyYjJiMlwiXSB7XHJcbiAgICAgICAgLmNvbnRhY3QtY2FyZC1hZGRyZXNzOmFmdGVyIHtcclxuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNiMmIyYjI7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgICZbc3R5bGUqPVwiI2YyZjJmMlwiXSB7XHJcbiAgICAgICAgLmNvbnRhY3QtY2FyZC1hZGRyZXNzOmFmdGVyIHtcclxuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmMmYyZjI7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgICZbc3R5bGUqPVwiIzY4MDBkMlwiXSB7XHJcbiAgICAgICAgLmNvbnRhY3QtY2FyZC1hZGRyZXNzOmFmdGVyIHtcclxuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICM2ODAwZDI7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgICZbc3R5bGUqPVwiIzllMjlmZFwiXSB7XHJcbiAgICAgICAgLmNvbnRhY3QtY2FyZC1hZGRyZXNzOmFmdGVyIHtcclxuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICM5ZTI5ZmQ7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgICZbc3R5bGUqPVwiIzQ0MDA5OVwiXSB7XHJcbiAgICAgICAgLmNvbnRhY3QtY2FyZC1hZGRyZXNzOmFmdGVyIHtcclxuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICM0NDAwOTk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgICZbc3R5bGUqPVwiI2ZiZTIwMFwiXSB7XHJcbiAgICAgICAgLmNvbnRhY3QtY2FyZC1hZGRyZXNzOmFmdGVyIHtcclxuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmYmUyMDA7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgICZbc3R5bGUqPVwiI2ZhZmFmYVwiXSB7XHJcbiAgICAgICAgLmNvbnRhY3QtY2FyZC1hZGRyZXNzOmFmdGVyIHtcclxuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmYWZhZmE7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgICY6bnRoLWNoaWxkKG9kZCkge1xyXG4gICAgICAgIC5jb250YWN0LWNhcmQtYWRkcmVzcyB7XHJcbiAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICAgICAgICAgIG9yZGVyOiAyO1xyXG4gICAgICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgICByaWdodDogdW5zZXQ7XHJcbiAgICAgICAgICAgICAgbGVmdDogcmVtLWNhbGMoLTIwKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAuY29udGFjdC1jYXJkLW1hcCB7XHJcbiAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICAgICAgICAgIG9yZGVyOiAxO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCIjbW9vdmVfZ2Rwcl9jb29raWVfaW5mb19iYXIge1xyXG4gIHBhZGRpbmctdG9wOiByZW0tY2FsYygyMCk7XHJcbiAgcGFkZGluZy1ib3R0b206IHJlbS1jYWxjKDIwKTtcclxuICBwYWRkaW5nLWxlZnQ6IHJlbS1jYWxjKDI1KSFpbXBvcnRhbnQ7XHJcbiAgcGFkZGluZy1yaWdodDogcmVtLWNhbGMoMjUpIWltcG9ydGFudDtcclxuICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xyXG4gICAgcGFkZGluZy1sZWZ0OiByZW0tY2FsYyg3NSkhaW1wb3J0YW50O1xyXG4gICAgcGFkZGluZy1yaWdodDogcmVtLWNhbGMoNzUpIWltcG9ydGFudDtcclxuICB9XHJcbiAgLm1vb3ZlLWdkcHItaW5mby1iYXItY29udGFpbmVyIHtcclxuICAgIHBhZGRpbmc6IDAhaW1wb3J0YW50O1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICAubW9vdmUtZ2Rwci1pbmZvLWJhci1jb250ZW50IHtcclxuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcclxuICAgICAgZmxleC13cmFwOiB3cmFwO1xyXG4gICAgICBwYWRkaW5nLWxlZnQ6IDAhaW1wb3J0YW50O1xyXG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwIWltcG9ydGFudDtcclxuICAgICAgLm1vb3ZlLWdkcHItY29va2llLW5vdGljZSB7XHJcbiAgICAgICAgZmxleDogMSAxIGF1dG87XHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xyXG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiByZW0tY2FsYygxNSk7XHJcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiByZW0tY2FsYygxNSk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHAge1xyXG4gICAgICAgICAgY29sb3I6ICRibGFjayFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE2KTtcclxuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XHJcbiAgICAgICAgICBsaW5lLWhlaWdodDogcmVtLWNhbGMoMjYpO1xyXG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMjApO1xyXG4gICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgLm1vb3ZlLWdkcHItYnV0dG9uLWhvbGRlciB7XHJcbiAgICAgICAgZmxleDogMSAxIGF1dG87XHJcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwIWltcG9ydGFudDtcclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IHJlbS1jYWxjKDE1KSFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiByZW0tY2FsYygxNSkhaW1wb3J0YW50O1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICAmLm1vb3ZlLWdkcHItZGFyay1zY2hlbWUge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGdhbS15ZWxsb3chaW1wb3J0YW50O1xyXG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCFpbXBvcnRhbnQ7XHJcbiAgfVxyXG59Iiwic2VjdGlvbi5oZXJvLXNsaWRlIHtcclxuICBiYWNrZ3JvdW5kOiB3aGl0ZTtcclxuICBjb2xvcjogJHdoaXRlO1xyXG4gIHBhZGRpbmc6IDA7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gID4gLnNsaWRlIHtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAmOmZpcnN0LWNoaWxkIHtcclxuICAgICAgZGlzcGxheTogYmxvY2s7XHJcblxyXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIC5yb3cge1xyXG4gICAgICBhLmJ1dHRvbiB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogcmVtLWNhbGMoMjApO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gIC5zbGlkZSB7XHJcbiAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XHJcbiAgICAgIG1pbi1oZWlnaHQ6IHJlbS1jYWxjKDUwMCk7XHJcbiAgICB9XHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xyXG4gICAgICBoZWlnaHQ6IGNhbGMoMTAwdmggLSAxMDBweCk7XHJcbiAgICAgIG1pbi1oZWlnaHQ6IHJlbS1jYWxjKDYwMCk7XHJcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTgpO1xyXG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICBAYXQtcm9vdCBib2R5LmhvbWUgJiB7XHJcbiAgICAgICAgbWluLWhlaWdodDogMTAwdmg7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIEBhdC1yb290IGJvZHlbZGF0YS1zbHVnPVwicHJvZHVjdHNcIl0gJiB7XHJcbiAgICAgIC5jb250ZW50IHtcclxuICAgICAgICAudGV4dCB7XHJcbiAgICAgICAgICAudGl0bGUge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG4gICAgICAgICAgICAgIG1heC13aWR0aDogcmVtLWNhbGMoNDUwKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICAgICAgICAgICAgbWF4LXdpZHRoOiByZW0tY2FsYyg1NTApO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICBAYXQtcm9vdCBib2R5W2RhdGEtc2x1Zz1cInNvbHV0aW9uc1wiXSAmIHtcclxuICAgICAgbWluLWhlaWdodDogMDtcclxuICAgICAgbWF4LWhlaWdodDogcmVtLWNhbGMoNjAwKTtcclxuICAgIH1cclxuICAgIEBhdC1yb290IGJvZHlbZGF0YS1zbHVnPVwiZmluZC1hLXBhcnRuZXJcIl0gJiB7XHJcbiAgICAgIG1pbi1oZWlnaHQ6IDA7XHJcbiAgICAgIG1heC1oZWlnaHQ6IHJlbS1jYWxjKDYwMCk7XHJcbiAgICB9XHJcbiAgICBAYXQtcm9vdCBib2R5LnBhZ2UtdGVtcGxhdGUtcGFnZS1jb250YWN0ICYge1xyXG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2JnLWRvdHMucG5nKSwgbGluZWFyLWdyYWRpZW50KDgwZGVnLCAjNjgwMGQyIDYwJSwgIzMwMTY0YSAxMDAlKSAhaW1wb3J0YW50O1xyXG4gICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0ICFpbXBvcnRhbnQ7XHJcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogYXV0byAxMDAlICFpbXBvcnRhbnQ7XHJcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IDAgIWltcG9ydGFudDtcclxuICAgIH1cclxuICAgID4gLnJvdyB7XHJcbiAgICAgIGEuYnV0dG9uIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XHJcbiAgICAgICAgY29sb3I6ICRnYW0tcHVycGxlO1xyXG4gICAgICAgICY6aG92ZXIsXHJcbiAgICAgICAgJjpmb2N1cyB7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ2FtLXllbGxvdztcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIC5jb250ZW50IHtcclxuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICB6LWluZGV4OiAyO1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgbWluLWhlaWdodDogNjB2dztcclxuICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcclxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuICAgICAgICBtaW4taGVpZ2h0OiAwO1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG4gICAgICAgIGFsaWduLWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xyXG4gICAgICB9XHJcbiAgICAgIC50ZXh0IHtcclxuICAgICAgICBmbGV4OiAxIDEgYXV0bztcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDYwIDAgNjApO1xyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuICAgICAgICAgIG1heC13aWR0aDogNTAlO1xyXG4gICAgICAgICAgcGFkZGluZzogcmVtLWNhbGMoMTUwIDAgNTApO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLmJsYWNrIHtcclxuICAgICAgICAgIGNvbG9yOiAkYmxhY2s7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIEBhdC1yb290IGJvZHlbZGF0YS1zbHVnPVwic29sdXRpb25zXCJdICYge1xyXG4gICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuICAgICAgICAgICAgbWF4LXdpZHRoOiA1MCU7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IHJlbS1jYWxjKDEyMCk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIC5mb3JtIHtcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgIGZsZXg6IDEgMSAxMDAlO1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgIG1hcmdpbjogcmVtLWNhbGMoMzAgMCA0MCk7XHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xyXG4gICAgICAgICAgbWFyZ2luOiByZW0tY2FsYygxNTAgMCA1MCk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYuYWN0aXZhdGVkIHtcclxuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICB9XHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuICAgICAgICAgIG1heC13aWR0aDogNTAlO1xyXG4gICAgICAgIH1cclxuICAgICAgICBmb3JtIHtcclxuICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgbWF4LXdpZHRoOiByZW0tY2FsYygzMDApO1xyXG4gICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuICAgICAgICAgICAgcGFkZGluZy10b3A6IHJlbS1jYWxjKDUwKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICAgIGxhYmVsIHtcclxuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgPiBpbWcsXHJcbiAgICAgID4gcGljdHVyZSB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogcmVtLWNhbGMoMTIwKTtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYyg0MCk7XHJcbiAgICAgICAgbWF4LXdpZHRoOiByZW0tY2FsYyg2MDApO1xyXG4gICAgICAgIHdpZHRoOiA0NSU7XHJcbiAgICAgICAgZmxleDogMSAwIDA7XHJcbiAgICAgICAgYWxpZ24tc2VsZjogZmxleC1zdGFydDtcclxuICAgICAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XHJcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICA+IGRpdi5lbWJlZC1jb250YWluZXIge1xyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuICAgICAgICAgIHdpZHRoOiA0NSU7XHJcbiAgICAgICAgICBmbGV4OiAxIDAgMDtcclxuICAgICAgICB9XHJcbiAgICAgICAgbWFyZ2luLXRvcDogcmVtLWNhbGMoMTIwKTtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYyg0MCk7XHJcbiAgICAgICAgbWF4LXdpZHRoOiByZW0tY2FsYyg2MDApO1xyXG4gICAgICAgIGZsZXg6IDEgMSAxMDAlO1xyXG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBhbGlnbi1zZWxmOiBmbGV4LXN0YXJ0O1xyXG4gICAgICAgIGhlaWdodDogYXV0bztcclxuICAgICAgICA+IC5lbWJlZC1jb250ZW50IHtcclxuICAgICAgICAgID4gaDIge1xyXG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICBwYWRkaW5nOiAxLjVyZW0gMi41cmVtO1xyXG4gICAgICAgICAgYmFja2dyb3VuZDogI2ZmZjtcclxuICAgICAgICAgIHdpZHRoOiA3NSU7XHJcbiAgICAgICAgICBtYXJnaW46IGF1dG87XHJcbiAgICAgICAgICBjb2xvcjogIzAwMDtcclxuICAgICAgICAgIGJveC1zaGFkb3c6IDAgMC41cmVtIDFyZW0gIzAwMDAwMDRkO1xyXG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogMC4yNXJlbTtcclxuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xyXG4gICAgICAgICAgICB3aWR0aDogOTAlO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgPiAuZW1iZWQtaWZyYW1lIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogI2ZmZjtcclxuICAgICAgICAgICAgaGVpZ2h0OiA1MzVweDtcclxuICAgICAgICAgICAgcGFkZGluZzogMXJlbTtcclxuICAgICAgICAgICAgYm9yZGVyOiAwO1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgIG1hcmdpbjogYXV0bztcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIC5iZy1pbWFnZSB7XHJcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XHJcbiAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xyXG4gICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XHJcbiAgICAgIHBhZGRpbmctdG9wOiByZW0tY2FsYyg2MCk7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XHJcbiAgICAgICAgbWluLWhlaWdodDogcmVtLWNhbGMoNTAwKTtcclxuICAgICAgfVxyXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xyXG4gICAgICAgIHBhZGRpbmctdG9wOiAwO1xyXG4gICAgICAgIGhlaWdodDogY2FsYygxMDB2aCAtIDEwMHB4KTtcclxuICAgICAgICBtaW4taGVpZ2h0OiByZW0tY2FsYyg2MDApO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTgpO1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgQGF0LXJvb3QgYm9keS5ob21lICYge1xyXG4gICAgICAgICAgbWluLWhlaWdodDogMTAwdmg7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgICY6bm90KC5ibGFjaykge1xyXG4gICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XHJcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuNCk7XHJcbiAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgcmdiYSgwLCAwLCAwLCAwLjY1KSAwJSwgcmdiYSgwLCAwLCAwLCAwKSA4MCUpLFxyXG4gICAgICAgICAgICBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCByZ2JhKDAsIDAsIDAsIDAuNjUpIDAlLCByZ2JhKDAsIDAsIDAsIDApIDIwMHB4KTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgJi5ibGFjayB7XHJcbiAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgY29udGVudDogXCJcIjtcclxuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgIHRvcDogMDtcclxuICAgICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC40KTtcclxuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNjUpIDAlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDApIDgwJSksXHJcbiAgICAgICAgICAgIGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC42NSkgMCUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMCkgMjAwcHgpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICAmLm5vLW92ZXJsYXkge1xyXG4gICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xyXG4gICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCByZ2JhKDAsIDAsIDAsIDAuNjUpIDAlLCByZ2JhKDAsIDAsIDAsIDApIDIwMHB4KTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgQGF0LXJvb3QgYm9keVtkYXRhLXNsdWc9XCJzb2x1dGlvbnNcIl0gJiB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogbm9uZSAhaW1wb3J0YW50O1xyXG4gICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgY29udGVudDogXCJcIjtcclxuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAkZ2FtLXB1cnBsZSB1cmwoLi4vaW1hZ2VzL2JnLWRvdHMtc29sdXRpb25zX3YyLnBuZykgbm8tcmVwZWF0O1xyXG4gICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAxMDAlIGF1dG87XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA1MCUgMTAwJTtcclxuICAgICAgICAgIHotaW5kZXg6IDE7XHJcbiAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG4gICAgICAgICAgICB3aWR0aDogNTAlO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAudGl0bGUge1xyXG4gICAgICAgICAgaDEge1xyXG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogMDtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgQGF0LXJvb3QgYm9keVtkYXRhLXNsdWc9XCJmaW5kLWEtcGFydG5lclwiXSAmIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiBub25lICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICB9XHJcbiAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICAgIGJhY2tncm91bmQ6ICRsaWdodC1ncmF5IHVybCguLi9pbWFnZXMvZG90cy1wYXJ0bmVycy5wbmcpIG5vLXJlcGVhdDtcclxuICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJSBhdXRvO1xyXG4gICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogNTAlIDEwMCU7XHJcbiAgICAgICAgICB6LWluZGV4OiAxO1xyXG4gICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuICAgICAgICAgICAgd2lkdGg6IDUwJTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgLnRpdGxlIHtcclxuICAgICAgICAgIGgxIHtcclxuICAgICAgICAgICAgcGFkZGluZy10b3A6IDA7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIEBhdC1yb290IC5wYXJhbGxheC1yZWFkeSAmIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGF1dG8gMTQwJTtcclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG4gICAgICAgICAgYmFja2dyb3VuZC1zaXplOiBhdXRvIDEzMCU7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogMTE1JSBhdXRvO1xyXG4gICAgICAgIH1cclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHh4bGFyZ2UpIHtcclxuICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJSBhdXRvO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICAubGlua3Mge1xyXG4gICAgICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKDI1KTtcclxuICAgICAgfVxyXG4gICAgICAubGluayB7XHJcbiAgICAgICAgLmN0YSB7XHJcbiAgICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgJGdhbS1wdXJwbGUgMCUsICRnYW0tcHVycGxlLWxpZ2h0IDEwMCUpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgIGJvcmRlci1sZWZ0LWNvbG9yOiAkZ2FtLXllbGxvdztcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIC5mdWxsLWhlaWdodCB7XHJcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XHJcbiAgICAgICAgbWluLWhlaWdodDogMTAwdmg7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIC50aXRsZSB7XHJcbiAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDEgb2YgMSk7XHJcbiAgICAgID4gcCB7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygxMCk7XHJcbiAgICAgIH1cclxuICAgICAgaDEge1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDIwKTtcclxuICAgICAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbWVkaXVtO1xyXG4gICAgICAgIG1heC13aWR0aDogcmVtLWNhbGMoNjgwKTtcclxuICAgICAgICAmOmZpcnN0LWNoaWxkIHtcclxuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XHJcbiAgICAgICAgICAgIC8vIHBhZGRpbmctdG9wOiByZW0tY2FsYyg1MCk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICAgICAgICAgIC8vIHBhZGRpbmctdG9wOiByZW0tY2FsYygyMDApO1xyXG4gICAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDU2KTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgQGF0LXJvb3QgLmhvbWUgJiB7XHJcbiAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDMwKTtcclxuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoNTApO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDcwKTtcclxuICAgICAgICAgICAgcGFkZGluZy10b3A6IHJlbS1jYWxjKDE1MCk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XHJcbiAgICAgICAgJi5iaWctMSB7XHJcbiAgICAgICAgICBoMSB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTIwKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIC5pbnRybyB7XHJcbiAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDEgb2YgMSk7XHJcbiAgICAgIG1heC13aWR0aDogcmVtLWNhbGMoNTQwKTtcclxuICAgICAgcGFkZGluZy1ib3R0b206IHJlbS1jYWxjKDIwKTtcclxuICAgICAgaW1nIHtcclxuICAgICAgICBtYXgtd2lkdGg6IHJlbS1jYWxjKDE1MCk7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIC5saW5rIHtcclxuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICBwYWRkaW5nLWxlZnQ6IHJlbS1jYWxjKG1hcC1nZXQoJGdyaWQtbWFyZ2luLWd1dHRlcnMsIHNtYWxsKSAvIDIpO1xyXG4gICAgICBwYWRkaW5nLXJpZ2h0OiByZW0tY2FsYyhtYXAtZ2V0KCRncmlkLW1hcmdpbi1ndXR0ZXJzLCBzbWFsbCkgLyAyKTtcclxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuICAgICAgICBwYWRkaW5nLWxlZnQ6IHJlbS1jYWxjKG1hcC1nZXQoJGdyaWQtbWFyZ2luLWd1dHRlcnMsIG1lZGl1bSkgLyAyKTtcclxuICAgICAgICBwYWRkaW5nLXJpZ2h0OiByZW0tY2FsYyhtYXAtZ2V0KCRncmlkLW1hcmdpbi1ndXR0ZXJzLCBtZWRpdW0pIC8gMik7XHJcbiAgICAgIH1cclxuICAgICAgQGF0LXJvb3QgLmhvbWUgJiB7XHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjIpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICAuY3RhIHtcclxuICAgICAgICBjb2xvcjogJHdoaXRlO1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICBwYWRkaW5nOiByZW0tY2FsYyg4IDUwIDggMCk7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogcmVtLWNhbGMoMjApO1xyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XHJcbiAgICAgICAgICBAYXQtcm9vdCBib2R5Om5vdCguaG9tZSkgJiB7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDMwKTtcclxuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICByaWdodDogMDtcclxuICAgICAgICAgIHRvcDogMDtcclxuICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XHJcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgIHdpZHRoOiByZW0tY2FsYyg0MCk7XHJcbiAgICAgICAgICBoZWlnaHQ6IHJlbS1jYWxjKDQwKTtcclxuICAgICAgICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcclxuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcclxuICAgICAgICB9XHJcbiAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlLWluLW91dDtcclxuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgIHJpZ2h0OiByZW0tY2FsYyg3KTtcclxuICAgICAgICAgIHRvcDogcmVtLWNhbGMoMTQpO1xyXG4gICAgICAgICAgY29udGVudDogXCJcIjtcclxuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgYm9yZGVyOiByZW0tY2FsYyg2KSBzb2xpZCB0cmFuc3BhcmVudDtcclxuICAgICAgICAgIGJvcmRlci1sZWZ0LWNvbG9yOiAkZ2FtLXB1cnBsZTtcclxuICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGVYKDEuOCk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIEBhdC1yb290IC5ob21lICYge1xyXG4gICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuICAgICAgICAgICAgcGFkZGluZzogcmVtLWNhbGMoMTIgMTAwIDEyIDApO1xyXG4gICAgICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgcmlnaHQ6IHJlbS1jYWxjKDEwKTtcclxuICAgICAgICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgICAgICAgd2lkdGg6IHJlbS1jYWxjKDY0KTtcclxuICAgICAgICAgICAgICBoZWlnaHQ6IHJlbS1jYWxjKDY0KTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgICBib3JkZXItd2lkdGg6IHJlbS1jYWxjKDEwKTtcclxuICAgICAgICAgICAgICByaWdodDogcmVtLWNhbGMoMjApO1xyXG4gICAgICAgICAgICAgIHRvcDogcmVtLWNhbGMoMjIpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgY29sb3I6ICRnYW0teWVsbG93O1xyXG4gICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkZ2FtLXllbGxvdztcclxuICAgICAgICAgIH1cclxuICAgICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICBib3JkZXItbGVmdC1jb2xvcjogJGdhbS1wdXJwbGU7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gIC5oZXJvLWJhbm5lciB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNCk7XHJcbiAgICBwYWRkaW5nOiByZW0tY2FsYygzMCAwKTtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuICAgICAgcG9zaXRpb246YWJzb2x1dGU7XHJcbiAgICAgIGJvdHRvbTogMDtcclxuICAgICAgbGVmdDogMDtcclxuICAgIH1cclxuICAgIC5yb3cge1xyXG4gICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XHJcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAuYmFubmVyLWl0ZW0ge1xyXG4gICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xyXG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICBwYWRkaW5nLXJpZ2h0OiByZW0tY2FsYygyMCk7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDIwKTtcclxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IHJlbS1jYWxjKDMwKTtcclxuICAgICAgfVxyXG4gICAgICBzdmcge1xyXG4gICAgICAgIHdpZHRoOiByZW0tY2FsYygzNik7XHJcbiAgICAgIH1cclxuICAgICAgJjpsYXN0LW9mLXR5cGUge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICAgIH1cclxuICAgICAgLmJhbm5lci10ZXh0IHtcclxuICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgIH1cclxuICAgICAgLm1hcC1waW4ge1xyXG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICBoZWlnaHQ6IHJlbS1jYWxjKDM2KSFpbXBvcnRhbnQ7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwic2VjdGlvbi5pbnRybyB7XHJcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAucm93IHtcclxuICAgIEBpbmNsdWRlIGdyaWQtcm93O1xyXG4gICAgbWF4LXdpZHRoOiBub25lO1xyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xyXG4gICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAvLyBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbiAgICAgICYuaW1hZ2Uge1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xyXG4gICAgICB9XHJcbiAgICAgICYuaW1hZ2Uge1xyXG4gICAgICAgIC5yaWdodCB7XHJcbiAgICAgICAgICBmbG9hdDogbm9uZSAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgIC8vIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgICAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XHJcbiAgICAgICAgICBtYXgtd2lkdGg6IHJlbS1jYWxjKDY4MCk7XHJcbiAgICAgICAgICAuaW1hZ2Uge1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgJjpiZWZvcmUsXHJcbiAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgIGNvbnRlbnQ6IG5vbmUgIWltcG9ydGFudDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICAuY29udGVudCB7XHJcbiAgICBAaW5jbHVkZSBncmlkLWNvbHVtbigxMik7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogcmVtLWNhbGMoMTIpO1xyXG4gICAgcGFkZGluZy10b3A6IHJlbS1jYWxjKDEyKTtcclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuICAgICAgQGluY2x1ZGUgZ3JpZC1jb2wtc2l6ZSg1KTtcclxuICAgICAgbWF4LXdpZHRoOiByZW0tY2FsYyg1NDApO1xyXG4gICAgICBmbG9hdDogbm9uZTtcclxuICAgICAgcGFkZGluZy1ib3R0b206IDA7XHJcbiAgICAgIHBhZGRpbmctdG9wOiAwO1xyXG4gICAgfVxyXG4gICAgLmJ1dHRvbiB7XHJcbiAgICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKDI1KTtcclxuICAgIH1cclxuICB9XHJcbiAgaDEsXHJcbiAgaDIge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMzApO1xyXG4gICAgJjpsYXN0LWNoaWxkIHtcclxuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgIH1cclxuICB9XHJcbiAgaDMge1xyXG4gICAgbWFyZ2luLXRvcDogcmVtLWNhbGMoMzApO1xyXG4gIH1cclxuICAucmlnaHQge1xyXG4gICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oMTIpO1xyXG4gICAgaDIge1xyXG4gICAgICAvLyBwYWRkaW5nLXRvcDogcmVtLWNhbGMoMTApO1xyXG4gICAgICAvLyBAYXQtcm9vdCAuc2luZ2xlLWNhc2Vfc3R1ZHkgJiB7XHJcbiAgICAgIC8vICAgcGFkZGluZy10b3A6IDA7XHJcbiAgICAgIC8vIH1cclxuICAgIH1cclxuICAgIGZvcm0ge1xyXG4gICAgICBwYWRkaW5nLXRvcDogcmVtLWNhbGMoMjYpO1xyXG4gICAgfVxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xyXG4gICAgICB3aWR0aDogNDglO1xyXG4gICAgfVxyXG4gICAgLnJlc3BvbnNpdmUtZW1iZWQge1xyXG4gICAgICBtYXgtd2lkdGg6IHJlbS1jYWxjKDcwMCk7XHJcbiAgICB9XHJcbiAgICAuZm9ybS1yb3cge1xyXG4gICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XHJcbiAgICB9XHJcbiAgICAuc2VsZWN0MiB7XHJcbiAgICAgIHdpZHRoOiBhdXRvICFpbXBvcnRhbnQ7XHJcbiAgICAgIGZsZXg6IDEgMSBhdXRvO1xyXG4gICAgICBtYXgtd2lkdGg6IDc1JTtcclxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuICAgICAgICBtYXgtd2lkdGg6IDg1JTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlIHtcclxuICAgICAgYm9yZGVyLXJhZGl1czogMDtcclxuICAgIH1cclxuICAgIC5pbWFnZSB7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKC0zMCk7XHJcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuICAgICAgICBtYXJnaW4tdG9wOiByZW0tY2FsYygtODApO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKC04MCk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XHJcbiAgICAgIC5zZWxlY3QyLWNvbnRhaW5lciAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSB7XHJcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgICAgIC5zZWxlY3QyLXNlbGVjdGlvbl9fYXJyb3cge1xyXG4gICAgICAgICAgd2lkdGg6IHJlbS1jYWxjKDQwKTtcclxuICAgICAgICAgIHRvcDogcmVtLWNhbGMoNCk7XHJcbiAgICAgICAgICBiOmFmdGVyIHtcclxuICAgICAgICAgICAgd2lkdGg6IHJlbS1jYWxjKDEwKTtcclxuICAgICAgICAgICAgaGVpZ2h0OiByZW0tY2FsYygxMCk7XHJcbiAgICAgICAgICAgIGJvcmRlci13aWR0aDogMnB4O1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgQGF0LXJvb3QgYm9keS5ob21lICYge1xyXG4gICAgICAgICAgICB0b3A6IHJlbS1jYWxjKDcpO1xyXG4gICAgICAgICAgICBiOmFmdGVyIHtcclxuICAgICAgICAgICAgd2lkdGg6IHJlbS1jYWxjKDIwKTtcclxuICAgICAgICAgICAgaGVpZ2h0OiByZW0tY2FsYygyMCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIC5zZWxlY3QyLXNlbGVjdGlvbl9fcmVuZGVyZWQge1xyXG4gICAgICBjb2xvcjogJGdhbS1wdXJwbGU7XHJcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjApO1xyXG4gICAgICBmb250LXdlaWdodDogMzAwO1xyXG4gICAgICBwYWRkaW5nOiByZW0tY2FsYyg1cHggMCk7XHJcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMjtcclxuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDI1KTtcclxuICAgICAgfVxyXG4gICAgICBAYXQtcm9vdCBib2R5LmhvbWUgJiB7XHJcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygzMCk7XHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMzYpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICA+IHNwYW4ge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcclxuICAgICAgICBwYWRkaW5nLXJpZ2h0OiByZW0tY2FsYyg2MCk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIGZvcm0gLmJ1dHRvbiB7XHJcbiAgICAgIG1hcmdpbi1sZWZ0OiByZW0tY2FsYygxMCk7XHJcbiAgICAgIG1heC13aWR0aDogMjAlO1xyXG4gICAgICBAYXQtcm9vdCBib2R5LmhvbWUgJiB7XHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuICAgICAgICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKDEwKTtcclxuICAgICAgICAgIHBhZGRpbmctdG9wOiByZW0tY2FsYygxMik7XHJcbiAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogcmVtLWNhbGMoMTIpO1xyXG4gICAgICAgICAgLy8gZm9udC1zaXplOiByZW0tY2FsYygyMCk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAmLnN0eWxlLWljb24ge1xyXG4gICAgICBhbGlnbi1zZWxmOiBmbGV4LXN0YXJ0O1xyXG4gICAgICAud3JhcHBlciB7XHJcbiAgICAgICAgbWF4LXdpZHRoOiByZW0tY2FsYygzMDApO1xyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XHJcbiAgICAgICAgICBtYXJnaW46IDAgYXV0bztcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgLmltYWdlIHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICBtYXJnaW4tdG9wOiAwO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRtZWRpdW0tZ3JheTtcclxuICAgICAgICBwYWRkaW5nLWJvdHRvbTogcmVtLWNhbGMoMTApO1xyXG4gICAgICAgIGltZyB7XHJcbiAgICAgICAgICB3aWR0aDogcmVtLWNhbGMoMTUwKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgLnN0cmFwbGluZSB7XHJcbiAgICAgICAgcGFkZGluZy10b3A6IHJlbS1jYWxjKDEwKTtcclxuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE0KTtcclxuICAgICAgICBsaW5lLWhlaWdodDogMS40O1xyXG4gICAgICAgIG1heC13aWR0aDogcmVtLWNhbGMoMTgwKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgJi5zdHlsZS1qdW1wX21lbnUge1xyXG4gICAgICBoMiB7XHJcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYyhtYXAtZGVlcC1nZXQoJGhlYWRlci1zdHlsZXMsIHNtYWxsLCBoNSwgZm9udC1zaXplKSk7XHJcbiAgICAgICAgbWF4LXdpZHRoOiByZW0tY2FsYyg1MjApO1xyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XHJcbiAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKG1hcC1kZWVwLWdldCgkaGVhZGVyLXN0eWxlcywgbWVkaXVtLCBoNSwgZm9udC1zaXplKSk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gIEBhdC1yb290IGJvZHkuc2luZ2xlLWNhc2Vfc3R1ZHkgJiB7XHJcbiAgICAucm93LmltYWdlIHtcclxuICAgICAgLnJpZ2h0IHtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAuaW1hZ2Uge1xyXG4gICAgICAgICAgbWFyZ2luLXRvcDogMDtcclxuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICAgICAgICBtYXgtd2lkdGg6IHJlbS1jYWxjKDIwMCk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbmJvZHkuaG9tZSB7XHJcbiAgc2VjdGlvbi5pbnRybyB7XHJcbiAgICAucm93IHtcclxuICAgICAgLmNvbnRlbnQge1xyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XHJcbiAgICAgICAgICBAaW5jbHVkZSBncmlkLWNvbHVtbig5KTtcclxuICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICAgICAgICBAaW5jbHVkZSBncmlkLWNvbHVtbigxMik7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gIC8vIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbiB7XHJcbiAgLy8gICBjb2xvcjogJGdhbS1wdXJwbGU7XHJcbiAgLy8gICBmb250LXNpemU6IHJlbS1jYWxjKDI2KTtcclxuICAvLyAgIGxpbmUtaGVpZ2h0OiAxLjI7XHJcbiAgLy8gICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG4gIC8vICAgICBmb250LXNpemU6IHJlbS1jYWxjKDM0KTtcclxuICAvLyAgIH1cclxuICAvLyB9XHJcbiAgLy8gLnNlbGVjdDItY29udGFpbmVyLS1vcGVuIC5zZWxlY3QyLWRyb3Bkb3duLS1iZWxvdyB7XHJcbiAgLy8gICBib3JkZXItdG9wOiAxcHggc29saWQgI2FhYTtcclxuICAvLyAgIG1hcmdpbi10b3A6IC0xcHg7XHJcbiAgLy8gfVxyXG59XHJcblxyXG5ib2R5W2RhdGEtc2x1Zz1cInNvbHV0aW9uc1wiXSB7XHJcbiAgc2VjdGlvbi5pbnRybyB7XHJcbiAgICAucm93IHtcclxuICAgICAgLmNvbnRlbnQge1xyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XHJcbiAgICAgICAgICBAaW5jbHVkZSBncmlkLWNvbHVtbig5KTtcclxuICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICAgICAgICBAaW5jbHVkZSBncmlkLWNvbHVtbigxMik7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsInNlY3Rpb24uY29sdW1uZWQtdGV4dCB7XHJcbiAgb3ZlcmZsb3cteDogaGlkZGVuO1xyXG5cclxuICAucm93IHtcclxuICAgIEBpbmNsdWRlIGdyaWQtcm93O1xyXG4gIH1cclxuICAuaW50cm8ge1xyXG4gICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oMTIpO1xyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygzMCk7XHJcbiAgICAgIEBpbmNsdWRlIGdyaWQtY29sLXNpemUoNSk7XHJcbiAgICAgIC8vIG1heC13aWR0aDogcmVtLWNhbGMoMzgwKTtcclxuICAgIH1cclxuICAgIGgyIHtcclxuICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMzApO1xyXG4gICAgfVxyXG4gIH1cclxuICAuY29sdW1uIHtcclxuICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDEgb2YgMSk7XHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG4gICAgICBAaW5jbHVkZSBncmlkLWNvbC1zaXplKDEgb2YgMik7XHJcbiAgICB9XHJcbiAgICBoMyB7XHJcbiAgICAgIGNvbG9yOiAkZ2FtLXB1cnBsZTtcclxuICAgICAgZm9udC1zaXplOiAkZ2xvYmFsLWZvbnQtc2l6ZTtcclxuICAgICAgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW1lZGl1bTtcclxuICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTUpO1xyXG4gICAgfVxyXG4gICAgJi5pbWFnZSB7XHJcbiAgICAgID4gaW1nLFxyXG4gICAgICA+IHBpY3R1cmUge1xyXG4gICAgICAgIG1hcmdpbjogMCBhdXRvIHJlbS1jYWxjKDIwKTtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgfVxyXG4gICAgICA+IGRpdiB7XHJcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgICYudGV4dCB7XHJcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XHJcbiAgICAgICAgJjpmaXJzdC1jaGlsZCB7XHJcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiByZW0tY2FsYyg1MCk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICY6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IHJlbS1jYWxjKDUwKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgaW1nIHtcclxuICAgICAgICBtYXJnaW4tdG9wOiByZW0tY2FsYygyMCk7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMjApO1xyXG4gICAgICB9XHJcbiAgICAgIC5idXR0b24ge1xyXG4gICAgICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKDIwKTtcclxuICAgICAgICBtYXJnaW4tcmlnaHQ6IHJlbS1jYWxjKDEwKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICAmLmxpZ2h0IHtcclxuICAgIC5jb2x1bW4ge1xyXG4gICAgICBoMyB7XHJcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCJzZWN0aW9uLmFjY29yZGlvbiB7XHJcbiAgLmNvbnRlbnQge1xyXG4gICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oMTIpO1xyXG4gICAgLnRpdGxlIGgyIHtcclxuICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoNDApO1xyXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDgwKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICB1bC5hY2NvcmRpb24ge1xyXG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XHJcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgJGJsYWNrO1xyXG4gIH1cclxuICAuYWNjb3JkaW9uLWl0ZW0ge1xyXG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRibGFjaztcclxuICAgICY6bGFzdC1jaGlsZCB7XHJcbiAgICAgID4gLmFjY29yZGlvbi10aXRsZSxcclxuICAgICAgPiA6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICAuYWNjb3JkaW9uLXRpdGxlLFxyXG4gIC5hY2NvcmRpb24tY29udGVudCB7XHJcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcclxuICAgIGJvcmRlcjogMDtcclxuICAgIHBhZGRpbmctbGVmdDogMDtcclxuICAgIG1hcmdpbi1sZWZ0OiAwO1xyXG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xyXG4gIH1cclxuICAuYWNjb3JkaW9uLXRpdGxlIHtcclxuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMobWFwLWRlZXAtZ2V0KCRoZWFkZXItc3R5bGVzLCBzbWFsbCwgaDUsIGZvbnQtc2l6ZSkpO1xyXG4gICAgbWFyZ2luLXJpZ2h0OiByZW0tY2FsYygyMCk7XHJcbiAgICBwYWRkaW5nLXJpZ2h0OiByZW0tY2FsYyg1MCk7XHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG4gICAgICBsaW5lLWhlaWdodDogMS4yO1xyXG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKG1hcC1kZWVwLWdldCgkaGVhZGVyLXN0eWxlcywgbWVkaXVtLCBoNSwgZm9udC1zaXplKSk7XHJcbiAgICB9XHJcbiAgICAmOmJlZm9yZSB7XHJcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XHJcbiAgICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKC0xNSk7XHJcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xyXG4gICAgICBib3JkZXItcmlnaHQtY29sb3I6ICRibGFjaztcclxuICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJGJsYWNrO1xyXG4gICAgICB3aWR0aDogcmVtLWNhbGMoMjApO1xyXG4gICAgICBoZWlnaHQ6IHJlbS1jYWxjKDIwKTtcclxuICAgICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xyXG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XHJcbiAgICAgIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW4tb3V0O1xyXG4gICAgfVxyXG4gIH1cclxuICAuaXMtYWN0aXZlID4gLmFjY29yZGlvbi10aXRsZTpiZWZvcmUge1xyXG4gICAgdHJhbnNmb3JtOiByb3RhdGUoLTEzNWRlZyk7XHJcbiAgICBtYXJnaW4tdG9wOiAwO1xyXG4gIH1cclxuICAmLmxpZ2h0IHtcclxuICAgIHVsLmFjY29yZGlvbiB7XHJcbiAgICAgIGJvcmRlci10b3AtY29sb3I6ICR3aGl0ZTtcclxuICAgIH1cclxuICAgIC5hY2NvcmRpb24tdGl0bGU6YmVmb3JlIHtcclxuICAgICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiAkd2hpdGU7XHJcbiAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICR3aGl0ZTtcclxuICAgIH1cclxuICAgIC5hY2NvcmRpb24taXRlbSB7XHJcbiAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICR3aGl0ZTtcclxuICAgIH1cclxuICAgIC5hY2NvcmRpb24tdGl0bGUsXHJcbiAgICAuYWNjb3JkaW9uLWNvbnRlbnQge1xyXG4gICAgICBjb2xvcjogJHdoaXRlO1xyXG4gICAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkd2hpdGU7XHJcbiAgICB9XHJcbiAgfVxyXG4gICYuZmFxIHtcclxuICAgIHBhZGRpbmc6IDA7XHJcbiAgICAuY29udGVudCB7XHJcbiAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICB9XHJcbiAgICAuYWNjb3JkaW9uLmNhdHMge1xyXG4gICAgICBib3JkZXItdG9wOiBub25lO1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICA+IC5hY2NvcmRpb24taXRlbSB7XHJcbiAgICAgICAgJjpsYXN0LWNoaWxkIHtcclxuICAgICAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gICAgICAgIH1cclxuICAgICAgICA+IC5hY2NvcmRpb24tdGl0bGUge1xyXG4gICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICB3aWR0aDogcmVtLWNhbGMoMjUpO1xyXG4gICAgICAgICAgICBoZWlnaHQ6IHJlbS1jYWxjKDI1KTtcclxuICAgICAgICAgICAgcmlnaHQ6IHJlbS1jYWxjKDM1KTtcclxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcclxuICAgICAgICAgICAgICByaWdodDogcmVtLWNhbGMoMTA1KTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICBoMiB7XHJcbiAgICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgICBwYWRkaW5nOiByZW0tY2FsYyg1MCAwKTtcclxuICAgICAgICAgIHBhZGRpbmctbGVmdDogcmVtLWNhbGMobWFwLWdldCgkZ3JpZC1tYXJnaW4tZ3V0dGVycywgc21hbGwpIC8gMik7XHJcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiByZW0tY2FsYyhtYXAtZ2V0KCRncmlkLW1hcmdpbi1ndXR0ZXJzLCBzbWFsbCkgLyAyKTtcclxuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XHJcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogcmVtLWNhbGMobWFwLWdldCgkZ3JpZC1tYXJnaW4tZ3V0dGVycywgbWVkaXVtKSAvIDIpO1xyXG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiByZW0tY2FsYyhtYXAtZ2V0KCRncmlkLW1hcmdpbi1ndXR0ZXJzLCBtZWRpdW0pIC8gMik7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5jb250ZW50IHtcclxuICAgICAgICAgIHBhZGRpbmctbGVmdDogcmVtLWNhbGMobWFwLWdldCgkZ3JpZC1tYXJnaW4tZ3V0dGVycywgc21hbGwpIC8gMik7XHJcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiByZW0tY2FsYyhtYXAtZ2V0KCRncmlkLW1hcmdpbi1ndXR0ZXJzLCBzbWFsbCkgLyAyKTtcclxuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XHJcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogcmVtLWNhbGMobWFwLWdldCgkZ3JpZC1tYXJnaW4tZ3V0dGVycywgbWVkaXVtKSAvIDIpO1xyXG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiByZW0tY2FsYyhtYXAtZ2V0KCRncmlkLW1hcmdpbi1ndXR0ZXJzLCBtZWRpdW0pIC8gMik7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5hY2NvcmRpb24taXRlbS5pcy1hY3RpdmUge1xyXG4gICAgICAgICAgLmFjY29yZGlvbi10aXRsZSB7XHJcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAuYWNjb3JkaW9uLXRpdGxlIHtcclxuICAgICAgICAgIGNvbG9yOiAkYmxhY2s7XHJcbiAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKG1hcC1kZWVwLWdldCgkaGVhZGVyLXN0eWxlcywgbWVkaXVtLCBoNCwgZm9udC1zaXplKSk7XHJcbiAgICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICAgIH1cclxuICAgICAgICAuYWNjb3JkaW9uLWNvbnRlbnQge1xyXG4gICAgICAgICAgLmFjY29yZGlvbiB7XHJcbiAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcclxuICAgICAgICAgICAgcGFkZGluZzogcmVtLWNhbGMoMCAwIDI1IDApO1xyXG4gICAgICAgICAgICAuYWNjb3JkaW9uLWl0ZW0ge1xyXG4gICAgICAgICAgICAgIC5hY2NvcmRpb24tdGl0bGUge1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZzogcmVtLWNhbGMoMTUgMCk7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKG1hcC1kZWVwLWdldCgkaGVhZGVyLXN0eWxlcywgbWVkaXVtLCBoNSwgZm9udC1zaXplKSk7XHJcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgJjpmaXJzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgICAgICAuYWNjb3JkaW9uLXRpdGxlIHtcclxuICAgICAgICAgICAgICAgICAgYm9yZGVyLXRvcDogcmVtLWNhbGMoMSkgc29saWQgJGJsYWNrO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAuYWNjb3JkaW9uLWNvbnRlbnQge1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyOiBub25lO1xyXG4gICAgICAgICAgICAgICAgY29sb3I6ICRnYW0tcHVycGxlO1xyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAvLyAmLmlzLWFjdGl2ZSB7XHJcbiAgICAgICAgICAgICAgLy8gICAuYWNjb3JkaW9uLWNvbnRlbnQge1xyXG4gICAgICAgICAgICAgIC8vICAgICBib3JkZXItYm90dG9tOiByZW0tY2FsYygxKSBzb2xpZCAkYmxhY2s7XHJcbiAgICAgICAgICAgICAgLy8gICB9XHJcbiAgICAgICAgICAgICAgLy8gfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYuaXMtYWN0aXZlIHtcclxuICAgICAgICAgID4gLmFjY29yZGlvbi10aXRsZSB7XHJcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IHJlbS1jYWxjKDEpIHNvbGlkIHRyYW5zcGFyZW50O1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG4uYWNjb3JkaW9uLWl0ZW06Zmlyc3QtY2hpbGQgPiA6Zmlyc3QtY2hpbGQsXHJcbi5hY2NvcmRpb24taXRlbTpsYXN0LWNoaWxkID4gOmxhc3QtY2hpbGQsXHJcbjpsYXN0LWNoaWxkOm5vdCguaXMtYWN0aXZlKSA+IC5hY2NvcmRpb24tdGl0bGUge1xyXG4gIGJvcmRlci1yYWRpdXM6IDA7XHJcbn1cclxuIiwic2VjdGlvbi5zaWducG9zdCB7XHJcbiAgcGFkZGluZzogMDtcclxuICBib3JkZXItYm90dG9tOiAwO1xyXG4gIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgLmJnLWltYWdlIHtcclxuICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XHJcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XHJcbiAgICBtaW4taGVpZ2h0OiA0MHZ3O1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICY6YmVmb3JlIHtcclxuICAgICAgY29udGVudDogXCJcIjtcclxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICB0b3A6IDA7XHJcbiAgICAgIGxlZnQ6IDA7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC41NSk7XHJcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoXHJcbiAgICAgICAgICB0byByaWdodCxcclxuICAgICAgICAgIHJnYmEoMCwgMCwgMCwgMC42NSkgMCUsXHJcbiAgICAgICAgICByZ2JhKDAsIDAsIDAsIDApIDgwJVxyXG4gICAgICAgICk7XHJcbiAgICAgIH1cclxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoXHJcbiAgICAgICAgICB0byBsZWZ0LFxyXG4gICAgICAgICAgcmdiYSgwLCAwLCAwLCAwLjY1KSAwJSxcclxuICAgICAgICAgIHJnYmEoMCwgMCwgMCwgMCkgODAlXHJcbiAgICAgICAgKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgQGF0LXJvb3QgLnBhcmFsbGF4LXJlYWR5ICZbZGF0YS1lbmxsYXgtcmF0aW9dIHtcclxuICAgICAgYmFja2dyb3VuZC1zaXplOiAxNzAlIGF1dG87XHJcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiAxNTAlIGF1dG87XHJcbiAgICAgIH1cclxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDExNSUgYXV0bztcclxuICAgICAgfVxyXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KHh4bGFyZ2UpIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCUgYXV0bztcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgJi5uby1vdmVybGF5IHtcclxuICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgLnJvdyB7XHJcbiAgICBAaW5jbHVkZSBncmlkLXJvdztcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xyXG4gICAgICBmbGV4LXNocmluazogMTtcclxuICAgICAgZmxleC1iYXNpczogMTAwJTtcclxuICAgICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgfVxyXG4gICAgPiAuaW1hZ2Uge1xyXG4gICAgICBAaW5jbHVkZSBncmlkLWNvbHVtbigxMik7XHJcbiAgICAgIHBhZGRpbmctdG9wOiByZW0tY2FsYygyMCk7XHJcbiAgICAgIHBhZGRpbmctYm90dG9tOiByZW0tY2FsYygyMCk7XHJcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XHJcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2wtc2l6ZSg0KTtcclxuICAgICAgfVxyXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2wtc2l6ZSg2KTtcclxuICAgICAgICBwYWRkaW5nLXRvcDogcmVtLWNhbGMoODApO1xyXG4gICAgICAgIHBhZGRpbmctYm90dG9tOiByZW0tY2FsYyg4MCk7XHJcbiAgICAgIH1cclxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcclxuICAgICAgICBAaW5jbHVkZSBncmlkLWNvbC1zaXplKDQpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAuY29udGVudCB7XHJcbiAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDEyKTtcclxuICAgICAgcGFkZGluZy10b3A6IHJlbS1jYWxjKDQyKTtcclxuICAgICAgcGFkZGluZy1ib3R0b206IHJlbS1jYWxjKDQyKTtcclxuICAgICAgY29sb3I6ICR3aGl0ZTtcclxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuICAgICAgICBAaW5jbHVkZSBncmlkLWNvbC1zaXplKDkpO1xyXG4gICAgICB9XHJcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuICAgICAgICBAaW5jbHVkZSBncmlkLWNvbC1zaXplKDYpO1xyXG4gICAgICAgIHBhZGRpbmctdG9wOiByZW0tY2FsYyg4MCk7XHJcbiAgICAgICAgcGFkZGluZy1ib3R0b206IHJlbS1jYWxjKDgwKTtcclxuICAgICAgICAubGFiZWwge1xyXG4gICAgICAgICAgY29sb3I6ICRnYW0teWVsbG93O1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xyXG4gICAgICAgIGZsb2F0OiByaWdodDtcclxuICAgICAgICBAaW5jbHVkZSBncmlkLWNvbC1zaXplKDUpO1xyXG4gICAgICB9XHJcbiAgICAgIHAge1xyXG4gICAgICAgIG1heC13aWR0aDogcmVtLWNhbGMoNTQwKTtcclxuICAgICAgfVxyXG4gICAgICAubGluayB7XHJcbiAgICAgICAgcGFkZGluZy10b3A6IHJlbS1jYWxjKDMwKTtcclxuICAgICAgICAuYnV0dG9uIHtcclxuICAgICAgICAgIG1hcmdpbi1yaWdodDogcmVtLWNhbGMoMjApO1xyXG4gICAgICAgICAgJjpmaXJzdC1jaGlsZDpub3QoOmxhc3QtY2hpbGQpIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogJHdoaXRlO1xyXG4gICAgICAgICAgICBjb2xvcjogJGdhbS1wdXJwbGU7XHJcbiAgICAgICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRnYW0teWVsbG93O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICAmOmxhc3QtY2hpbGQge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkZ2FtLXB1cnBsZTtcclxuICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcclxuICAgICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGdhbS15ZWxsb3c7XHJcbiAgICAgICAgICAgICAgY29sb3I6ICRnYW0tcHVycGxlO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIC5zaWducG9zdC1sb2dvIHtcclxuICAgICAgICBtYXgtd2lkdGg6IHJlbS1jYWxjKDE1MCk7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogcmVtLWNhbGMoMjApO1xyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuICAgICAgICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKDMwKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIC5sb2dvcyB7XHJcbiAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDEyKTtcclxuICAgICAgcGFkZGluZy10b3A6IHJlbS1jYWxjKDIwKTtcclxuICAgICAgcGFkZGluZy1ib3R0b206IHJlbS1jYWxjKDIwKTtcclxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xyXG4gICAgICAgIEBpbmNsdWRlIGdyaWQtY29sLXNpemUoNik7XHJcbiAgICAgICAgcGFkZGluZy10b3A6IHJlbS1jYWxjKDgwKTtcclxuICAgICAgICBwYWRkaW5nLWJvdHRvbTogcmVtLWNhbGMoODApO1xyXG4gICAgICB9XHJcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XHJcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2wtc2l6ZSg1KTtcclxuICAgICAgICBmbG9hdDogcmlnaHQ7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgJi5xdW90ZSB7XHJcbiAgICAuYmctaW1hZ2U6YmVmb3JlIHtcclxuICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgIH1cclxuICAgIC5yb3cge1xyXG4gICAgICAuY29udGVudCB7XHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xyXG4gICAgICAgICAgZmxvYXQ6IGxlZnQ7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gICYubGFyZ2Uge1xyXG4gICAgLmJnLWltYWdlIHtcclxuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIDA7XHJcbiAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xyXG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNyk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAmLndoaXRlIHtcclxuICAgICAgLmJnLWltYWdlIHtcclxuICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjcpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgLnJvdyB7XHJcbiAgICAgIC5jb250ZW50IHtcclxuICAgICAgICBmbG9hdDogbGVmdDtcclxuICAgICAgICBoMiB7XHJcbiAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDQwKTtcclxuXHJcbiAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDI4KTtcclxuICAgICAgICAgIH1cclxuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYyg2MCk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDk1KTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgJi5sYXJnZV9pY29uIHtcclxuICAgIC5yb3cge1xyXG4gICAgICA+IC5pbWFnZSB7XHJcbiAgICAgICAgcGFkZGluZy10b3A6IDA7XHJcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XHJcbiAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICB9XHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcclxuICAgICAgICAgIEBpbmNsdWRlIGdyaWQtY29sLXBvcygxKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgaW1nIHtcclxuICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS40KTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgLmNvbnRlbnQge1xyXG4gICAgICAgIGZsb2F0OiBsZWZ0ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xyXG4gICAgICAgICAgZGlzcGxheTogcmlnaHQgIWltcG9ydGFudDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgJi5wdWJsaWNhdGlvbiB7XHJcbiAgICAucm93IHtcclxuICAgICAgLmNvbnRlbnQge1xyXG4gICAgICAgIGgyIHtcclxuICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoNDApO1xyXG4gICAgICAgIH1cclxuICAgICAgICAubGFiZWwge1xyXG4gICAgICAgICAgY29sb3I6ICR3aGl0ZTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbiAgICAgICAgJjpiZWZvcmUsXHJcbiAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgIH1cclxuICAgICAgICAuY29udGVudCB7XHJcbiAgICAgICAgICBqdXN0aWZ5LXNlbGY6IGZsZXgtZW5kO1xyXG4gICAgICAgICAgZmxleDogMCAwIGF1dG87XHJcbiAgICAgICAgICBoMiB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoNjApO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xyXG4gICAgICAgIC5jb250ZW50IHtcclxuICAgICAgICAgIGgyIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYyg5NSk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAmLndoaXRlIHtcclxuICAgICAgdWwubGlzdGluZyB7XHJcbiAgICAgICAgYSB7XHJcbiAgICAgICAgICBjb2xvcjogJHdoaXRlO1xyXG4gICAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgIGJvcmRlci1yaWdodC1jb2xvcjogJHdoaXRlO1xyXG4gICAgICAgICAgICBib3JkZXItdG9wLWNvbG9yOiAkd2hpdGU7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAmLnJldmVyc2Uge1xyXG4gICAgICAucm93IHtcclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7XHJcbiAgICAgICAgICAuY29udGVudCB7XHJcbiAgICAgICAgICAgIGp1c3RpZnktc2VsZjogZmxleC1zdGFydDtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgJi5ldmVudCB7XHJcbiAgICAuYmctaW1hZ2Uge1xyXG4gICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcclxuICAgICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC42KSAhaW1wb3J0YW50O1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgLnJvdyB7XHJcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIG1pbi1oZWlnaHQ6IDQwdnc7XHJcbiAgICAgICAgJjpiZWZvcmUsXHJcbiAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgIH1cclxuICAgICAgICAuY29udGVudCB7XHJcbiAgICAgICAgICBmbG9hdDogbm9uZTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgLmxvZ29zIHtcclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICAgICAgICBmbG9hdDogbm9uZTtcclxuICAgICAgICB9XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAubG9nbyB7XHJcbiAgICAgICAgICBtYXgtd2lkdGg6IDUwJTtcclxuICAgICAgICAgIGZsZXg6IDAgMSA1MCU7XHJcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IHJlbS1jYWxjKG1hcC1nZXQoJGdyaWQtbWFyZ2luLWd1dHRlcnMsIHNtYWxsKSAvIDIpO1xyXG4gICAgICAgICAgcGFkZGluZy1yaWdodDogcmVtLWNhbGMobWFwLWdldCgkZ3JpZC1tYXJnaW4tZ3V0dGVycywgc21hbGwpIC8gMik7XHJcbiAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IHJlbS1jYWxjKG1hcC1nZXQoJGdyaWQtbWFyZ2luLWd1dHRlcnMsIG1lZGl1bSkgLyAyKTtcclxuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogcmVtLWNhbGMobWFwLWdldCgkZ3JpZC1tYXJnaW4tZ3V0dGVycywgbWVkaXVtKSAvIDIpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgJi5yZXZlcnNlIHtcclxuICAgICAgLnJvdyB7XHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xyXG4gICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlO1xyXG4gICAgICAgICAgLmNvbnRlbnQge1xyXG4gICAgICAgICAgICBqdXN0aWZ5LXNlbGY6IGZsZXgtc3RhcnQ7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gICYuYmxhY2ssXHJcbiAgJi5kYXJrIHtcclxuICAgIC5yb3cge1xyXG4gICAgICAuY29udGVudCB7XHJcbiAgICAgICAgY29sb3I6ICRibGFjaztcclxuICAgICAgICAubGFiZWwge1xyXG4gICAgICAgICAgY29sb3I6ICRibGFjaztcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIC5iZy1pbWFnZSB7XHJcbiAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNik7XHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xyXG4gICAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KFxyXG4gICAgICAgICAgICB0byBsZWZ0LFxyXG4gICAgICAgICAgICByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNjUpIDAlLFxyXG4gICAgICAgICAgICByZ2JhKDI1NSwgMjU1LCAyNTUsIDApIDgwJVxyXG4gICAgICAgICAgKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgJi5saWdodCxcclxuICAmLndoaXRlIHtcclxuICAgIC5yb3cge1xyXG4gICAgICAuY29udGVudCB7XHJcbiAgICAgICAgLmxpbmsge1xyXG4gICAgICAgICAgLmJ1dHRvbiB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcclxuICAgICAgICAgICAgY29sb3I6ICRnYW0tcHVycGxlO1xyXG4gICAgICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ2FtLXllbGxvdztcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmOmZpcnN0LWNoaWxkLFxyXG4gICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xyXG4gICAgICAgICAgICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcclxuICAgICAgICAgICAgICBjb2xvcjogJGdhbS1wdXJwbGU7XHJcbiAgICAgICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ2FtLXllbGxvdztcclxuICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgJi5yZXZlcnNlIHtcclxuICAgICYubGFyZ2VfaWNvbiB7XHJcbiAgICAgIC5yb3cge1xyXG4gICAgICAgID4gLmltYWdlIHtcclxuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGdyaWQtY29sLXBvcygtMSk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAuYmctaW1hZ2Uge1xyXG4gICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcclxuICAgICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudChcclxuICAgICAgICAgICAgdG8gcmlnaHQsXHJcbiAgICAgICAgICAgIHJnYmEoMCwgMCwgMCwgMC42NSkgMCUsXHJcbiAgICAgICAgICAgIHJnYmEoMCwgMCwgMCwgMCkgODAlXHJcbiAgICAgICAgICApO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgJi5kYXJrLFxyXG4gICAgJi5ibGFjayB7XHJcbiAgICAgIC5iZy1pbWFnZSB7XHJcbiAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KFxyXG4gICAgICAgICAgICAgIHRvIHJpZ2h0LFxyXG4gICAgICAgICAgICAgIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC42NSkgMCUsXHJcbiAgICAgICAgICAgICAgcmdiYSgyNTUsIDI1NSwgMjU1LCAwKSA4MCVcclxuICAgICAgICAgICAgKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIC5yb3cge1xyXG4gICAgICA+IC5pbWFnZSB7XHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xyXG4gICAgICAgICAgZmxvYXQ6IHJpZ2h0ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIC5jb250ZW50IHtcclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xyXG4gICAgICAgICAgZmxvYXQ6IGxlZnQgIWltcG9ydGFudDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgJi5jdGEge1xyXG4gICAgLnJvdyB7XHJcbiAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgICAgJjpiZWZvcmUsXHJcbiAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgIGNvbnRlbnQ6IG5vbmU7XHJcbiAgICAgIH1cclxuICAgICAgPiAuaW1hZ2Uge1xyXG4gICAgICAgIHBhZGRpbmctdG9wOiAwO1xyXG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xyXG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XHJcbiAgICAgICAgICBAaW5jbHVkZSBncmlkLWNvbC1zaXplKDYpO1xyXG4gICAgICAgIH1cclxuICAgICAgICBpbWcge1xyXG4gICAgICAgICAgJi5zaXplZCB7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogbm9uZTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJi5zaXplZCBpbWcge1xyXG4gICAgICAgICAgdHJhbnNmb3JtOiBub25lO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICAmLnJldmVyc2Uge1xyXG4gICAgLnJvdyB7XHJcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi5zaWRlYmFyIHNlY3Rpb24uc2lnbnBvc3QuY3RhIHtcclxuICAuYmctaW1hZ2Uge1xyXG4gICAgbWluLWhlaWdodDogMDtcclxuICB9XHJcbiAgLmJvZHktcHVzaCB7XHJcbiAgICBwYWRkaW5nLWxlZnQ6IDAgIWltcG9ydGFudDtcclxuICAgIHBhZGRpbmctcmlnaHQ6IDAgIWltcG9ydGFudDtcclxuICB9XHJcbiAgLnJvdyB7XHJcbiAgICAuY29udGVudCB7XHJcbiAgICAgIEBpbmNsdWRlIGdyaWQtY29sLXNpemUoMTIpO1xyXG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgIHBhZGRpbmctdG9wOiByZW0tY2FsYygzMCk7XHJcbiAgICAgIHBhZGRpbmctYm90dG9tOiByZW0tY2FsYygzMCk7XHJcbiAgICAgIHBhZGRpbmctcmlnaHQ6IHJlbS1jYWxjKDMwKTtcclxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcclxuICAgICAgICBAaW5jbHVkZSBncmlkLWNvbC1zaXplKDgpO1xyXG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgICAgIH1cclxuICAgICAgLmJ1dHRvbiB7XHJcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAuaW1hZ2Uge1xyXG4gICAgICBAaW5jbHVkZSBncmlkLWNvbC1zaXplKDQpO1xyXG4gICAgICBwYWRkaW5nLXRvcDogcmVtLWNhbGMoMzApO1xyXG4gICAgICBwYWRkaW5nLWJvdHRvbTogcmVtLWNhbGMoMzApO1xyXG4gICAgICBwYWRkaW5nLWxlZnQ6IHJlbS1jYWxjKDMwKTtcclxuICAgIH1cclxuICB9XHJcbiAgLnNpbmdsZS1jdGEgJiB7XHJcbiAgICBtYXgtd2lkdGg6IHJlbS1jYWxjKDQwMCk7XHJcbiAgICBtYXJnaW46IHJlbS1jYWxjKDUwKSBhdXRvO1xyXG4gICAgY2xlYXI6IGJvdGg7XHJcbiAgfVxyXG59IiwiLy8gU2VlIF9zaWducG9zdC5zY3NzIGZvciBwYXJlbnQgc3R5bGVzXHJcbnNlY3Rpb24udGVzdGltb25pYWxzIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkbWVkaXVtLWdyYXk7XHJcbiAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XHJcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2JnLWRvdHMtdGVzdGltb25pYWwucG5nKTtcclxuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGF1dG8gMTAwJTtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IDEwMCUgNTAlO1xyXG4gIH0gIFxyXG4gIEBhdC1yb290IC5zaW5nbGUtY2FzZV9zdHVkeSAmIHtcclxuICAgIGJhY2tncm91bmQtc2l6ZTogYXV0byAxMDAlO1xyXG4gICAgLnJvdyB7XHJcbiAgICAgIC5jb250ZW50IHtcclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICAgICAgICBAaW5jbHVkZSBncmlkLWNvbC1zaXplKDkpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLnJvdyB7XHJcbiAgICAmOmJlZm9yZSxcclxuICAgICY6YWZ0ZXIge1xyXG4gICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgfVxyXG4gICAgLnNsaWNrLXRyYWNrIHtcclxuICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XHJcbiAgICAgICY6YmVmb3JlLFxyXG4gICAgICAmOmFmdGVyIHtcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAuc2xpZGUge1xyXG4gICAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICAgIGZsb2F0OiBub25lO1xyXG4gICAgICAmOmZvY3VzIHtcclxuICAgICAgICBvdXRsaW5lOiBub25lO1xyXG4gICAgICB9XHJcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgICAgICAmOmJlZm9yZSxcclxuICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIC5saW5rIHtcclxuICAgICAgICBwYWRkaW5nLXRvcDogMDtcclxuICAgICAgICAuYnV0dG9uIHtcclxuICAgICAgICAgIG1hcmdpbi1yaWdodDogcmVtLWNhbGMoMTApO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgLmNvbnRlbnQge1xyXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2wtc2l6ZSg2KTtcclxuICAgICAgfVxyXG4gICAgICBwLmxhYmVsIHtcclxuICAgICAgICBjb2xvcjogJGJsYWNrO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAucmlnaHQge1xyXG4gICAgICBAaW5jbHVkZSBncmlkLWNvbHVtbigxMik7XHJcbiAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgIC8vIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgIC8vIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XHJcbiAgICAgIC5pbWFnZSB7XHJcbiAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgfVxyXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2wtc2l6ZSg1KTtcclxuICAgICAgICAuaW1hZ2Uge1xyXG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgIGFsaWduLXNlbGY6IGZsZXgtZW5kO1xyXG4gICAgICAgICAgaW1nIHtcclxuICAgICAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjVzIGVhc2Utb3V0O1xyXG4gICAgICAgICAgICAmLmxhenlsb2FkZWQge1xyXG4gICAgICAgICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjVzIGVhc2Utb3V0O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gIC5yb3cubG9nb3Mge1xyXG4gICAgd2lkdGg6IGF1dG87XHJcbiAgICBmbG9hdDogbm9uZSAhaW1wb3J0YW50O1xyXG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xyXG4gICAgcGFkZGluZy1ib3R0b206IDA7XHJcbiAgICBtYXJnaW4tbGVmdDogcmVtLWNhbGMobWFwLWdldCgkZ3JpZC1tYXJnaW4tZ3V0dGVycywgc21hbGwpICogLTEpO1xyXG4gICAgbWFyZ2luLXJpZ2h0OiByZW0tY2FsYyhtYXAtZ2V0KCRncmlkLW1hcmdpbi1ndXR0ZXJzLCBzbWFsbCkgKiAtMSk7XHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG4gICAgICBtYXJnaW4tbGVmdDogcmVtLWNhbGMobWFwLWdldCgkZ3JpZC1tYXJnaW4tZ3V0dGVycywgbWVkaXVtKSAqIC0xKTtcclxuICAgICAgbWFyZ2luLXJpZ2h0OiByZW0tY2FsYyhtYXAtZ2V0KCRncmlkLW1hcmdpbi1ndXR0ZXJzLCBtZWRpdW0pICogLTEpO1xyXG4gICAgfVxyXG4gICAgLmxvZ28ge1xyXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG4gICAgICAgIG1heC13aWR0aDogMzMuMzMzMyU7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwic2VjdGlvbi5jb250YWN0LWxvY2F0aW9ucyB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ2FtLXB1cnBsZS1kYXJrO1xyXG4gICAgaDIge1xyXG4gICAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDEyKTsgXHJcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygzMCk7XHJcbiAgICB9XHJcbiAgICAuY29udGVudHtcclxuICAgICAgICA+IHAge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBncmlkLWNvbHVtbigxMik7IFxyXG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlOyAgIFxyXG4gICAgICAgICAgICBtYXgtd2lkdGg6IHJlbS1jYWxjKDUwMCk7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDQwKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAuY29udGFjdC1sb2NhdGlvbnMtbGlzdCB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xyXG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcclxuICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgLmNvbnRhY3QtbG9jYXRpb24ge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBncmlkLWNvbHVtbig2KTtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICAgICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYyg1MCk7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XHJcbiAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGdyaWQtY29sLXNpemUoNCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xyXG4gICAgICAgICAgICAgICAgICBAaW5jbHVkZSBncmlkLWNvbC1zaXplKDIpO1xyXG4gICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIHN2ZyB7XHJcbiAgICAgICAgICAgICAgICBmaWxsOiAkd2hpdGU7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygxNSk7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogcmVtLWNhbGMoMTgpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGgzIHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKG1hcC1kZWVwLWdldCgkaGVhZGVyLXN0eWxlcywgc21hbGwsIGg0LCBmb250LXNpemUpKTtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDIwKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBwIHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYyg0MCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLmFkZHJlc3MtYnV0dG9uIHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XHJcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IGF1dG87XHJcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiByZW0tY2FsYygxKSBzb2xpZCAkd2hpdGU7XHJcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJpZ2h0OiByZW0tY2FsYygxKSBzb2xpZCAkd2hpdGU7XHJcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDonJztcclxuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiByZW0tY2FsYygxMCk7XHJcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IHJlbS1jYWxjKDEwKTtcclxuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpO1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiByZW0tY2FsYyg1KTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICY6aG92ZXIsICY6Zm9jdXMge1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkZ2FtLXllbGxvdztcclxuICAgICAgICAgICAgICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAkZ2FtLXllbGxvdztcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn0iLCJzZWN0aW9uLnNwbGl0LXNpZ25wb3N0cyB7XHJcbiAgJjpub3QoLnBhbmVscykge1xyXG4gICAgcGFkZGluZzogMDtcclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XHJcbiAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgIGZsZXgtd3JhcDogd3JhcDtcclxuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcclxuICAgICAgJjpiZWZvcmUsXHJcbiAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xyXG4gICAgLmludHJvICsgJiB7XHJcbiAgICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKC0yMCk7XHJcbiAgICB9XHJcbiAgfVxyXG4gIC5zaWducG9zdCB7XHJcbiAgICBmbGV4OiAxIDEgMDtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcclxuICAgIGEge1xyXG4gICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgY29sb3I6ICR3aGl0ZTtcclxuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICBtaW4taGVpZ2h0OiA2NHZ3O1xyXG4gICAgICBmbGV4OiAxIDEgMDtcclxuICAgICAgaW1nICsgLnJvdyxcclxuICAgICAgaW1nICsgbm9zY3JpcHQgKyAucm93IHtcclxuICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC40KTtcclxuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgcmdiYSgwLCAwLCAwLCAwLjY1KSAwJSwgcmdiYSgwLCAwLCAwLCAwKSA5MCUpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuICAgICAgQGluY2x1ZGUgZ3JpZC1jb2wtc2l6ZSg2KTtcclxuICAgICAgZmxleDogMSAwIDUwJTtcclxuXHJcbiAgICAgIGEge1xyXG4gICAgICAgIG1pbi1oZWlnaHQ6IDA7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIC5yb3cge1xyXG4gICAgICBAaW5jbHVkZSBncmlkLXJvdztcclxuICAgICAgLmNvbnRlbnQge1xyXG4gICAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDEyKTtcclxuICAgICAgICBwYWRkaW5nLWJvdHRvbTogcmVtLWNhbGMoMjApO1xyXG4gICAgICAgIHBhZGRpbmctdG9wOiByZW0tY2FsYygyMCk7XHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuICAgICAgICAgIHBhZGRpbmctYm90dG9tOiByZW0tY2FsYyg2MCk7XHJcbiAgICAgICAgICBwYWRkaW5nLXRvcDogcmVtLWNhbGMoNjApO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICBoMyB7XHJcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYyg0MCk7XHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xyXG4gICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYyg3MCk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICBpbWcgKyAucm93LFxyXG4gICAgaW1nICsgbm9zY3JpcHQgKyAucm93IHtcclxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICB0b3A6IDA7XHJcbiAgICAgIGxlZnQ6IDA7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICB9XHJcbiAgICAmLmRhcmsubm8taW1nIHtcclxuICAgICAgYSB7XHJcbiAgICAgICAgY29sb3I6ICRibGFjaztcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgJi5ibGFjayB7XHJcbiAgICAgIGEge1xyXG4gICAgICAgIGNvbG9yOiAkYmxhY2s7XHJcbiAgICAgIH1cclxuICAgICAgaW1nICsgLnJvdyxcclxuICAgICAgaW1nICsgbm9zY3JpcHQgKyAucm93IHtcclxuICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNCk7XHJcbiAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC42NSkgMCUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMCkgOTAlKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgbGk6YmVmb3JlIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ2FtLXB1cnBsZTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICAmLnBhbmVscyB7XHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcclxuICAgICAgcGFkZGluZy1ib3R0b206IDA7XHJcbiAgICAgIC5ib2R5LXB1c2gucGFuZWxzIHtcclxuICAgICAgICBwYWRkaW5nLWxlZnQ6IDAgIWltcG9ydGFudDtcclxuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIC50aXRsZSB7XHJcbiAgICAgIHBhZGRpbmctYm90dG9tOiByZW0tY2FsYygxMCk7XHJcbiAgICAgIHBhZGRpbmctbGVmdDogcmVtLWNhbGMobWFwLWdldCgkZ3JpZC1tYXJnaW4tZ3V0dGVycywgc21hbGwpIC8gMik7XHJcbiAgICAgIHBhZGRpbmctcmlnaHQ6IHJlbS1jYWxjKG1hcC1nZXQoJGdyaWQtbWFyZ2luLWd1dHRlcnMsIHNtYWxsKSAvIDIpO1xyXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG4gICAgICAgIHBhZGRpbmctbGVmdDogcmVtLWNhbGMobWFwLWdldCgkZ3JpZC1tYXJnaW4tZ3V0dGVycywgbWVkaXVtKSAvIDIpO1xyXG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IHJlbS1jYWxjKG1hcC1nZXQoJGdyaWQtbWFyZ2luLWd1dHRlcnMsIG1lZGl1bSkgLyAyKTtcclxuICAgICAgfVxyXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICAgICAgcGFkZGluZy1ib3R0b206IHJlbS1jYWxjKDQwKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgLmltYWdlcyB7XHJcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcclxuICAgICAgICBhbGlnbi1jb250ZW50OiBzdHJldGNoO1xyXG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XHJcbiAgICAgIH1cclxuICAgICAgLmFydGljbGUge1xyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XHJcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IHJlbS1jYWxjKG1hcC1nZXQoJGdyaWQtbWFyZ2luLWd1dHRlcnMsIG1lZGl1bSkgLyAyKTtcclxuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IHJlbS1jYWxjKG1hcC1nZXQoJGdyaWQtbWFyZ2luLWd1dHRlcnMsIG1lZGl1bSkgLyAyKTtcclxuICAgICAgICAgIHBhZGRpbmctYm90dG9tOiByZW0tY2FsYyhtYXAtZ2V0KCRncmlkLW1hcmdpbi1ndXR0ZXJzLCBtZWRpdW0pKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xyXG4gICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgIGZsZXg6IDEgMCAzMy4zMzMzJTtcclxuICAgICAgICAgIG1heC13aWR0aDogMzMuMzMzMyU7XHJcbiAgICAgICAgICBhbGlnbi1jb250ZW50OiBzdHJldGNoO1xyXG4gICAgICAgIH1cclxuICAgICAgICBsaSB7XHJcbiAgICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgYSwgLm5vLWxpbmsge1xyXG4gICAgICAgICAgcGFkZGluZzogcmVtLWNhbGMoMjAgMTAgMTAgMTApO1xyXG4gICAgICAgICAgY29sb3I6ICR3aGl0ZTtcclxuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAucm93IHtcclxuICAgICAgICAgICAganVzdGlmeS1zZWxmOiBzdHJldGNoO1xyXG4gICAgICAgICAgICBmbGV4LWdyb3c6IDE7XHJcbiAgICAgICAgICAgIC8vIGZsZXg6IDEgMCAwO1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogcmVtLWNhbGMoMjApO1xyXG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IHJlbS1jYWxjKDIwKTtcclxuICAgICAgICAgICAgLmNvbnRlbnQge1xyXG4gICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgICAgLmN0YSB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiBhdXRvO1xyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgaW1nIHtcclxuICAgICAgICAgICAgbWFyZ2luOiByZW0tY2FsYygwIDIwIDEwKTtcclxuICAgICAgICAgICAgd2lkdGg6IHJlbS1jYWxjKDgwKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICAgIGgzIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyNik7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDQwKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICAgIHVsIHtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMzApO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgc3Bhbi5idXR0b24ge1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiBhdXRvO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkZ2FtLXB1cnBsZTtcclxuICAgICAgICAgIH1cclxuICAgICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICBzcGFuLmJ1dHRvbiB7XHJcbiAgICAgICAgICAgICAgYmFja2dyb3VuZDogJGdhbS15ZWxsb3c7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJi5ibGFjayB7XHJcbiAgICAgICAgICBsaSB7XHJcbiAgICAgICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkYmxhY2s7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICAgIGEsIC5uby1saW5rIHtcclxuICAgICAgICAgICAgY29sb3I6ICRibGFjaztcclxuICAgICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgICAgc3Bhbi5idXR0b24ge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJGdhbS1wdXJwbGU7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCIvLyBTZWUgX3NpZ25wb3N0LnNjc3MgZm9yIHBhcmVudCBzdHlsZXNcclxuc2VjdGlvbi5zaG93Y2FzZSB7XHJcbiAgLnJvdyB7XHJcbiAgICAuY29udGVudCB7XHJcbiAgICAgID4gaW1nLFxyXG4gICAgICA+IHBpY3R1cmUge1xyXG4gICAgICAgIHdpZHRoOiByZW0tY2FsYyg4MCk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgLnNpZ25wb3N0cyB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBtYXJnaW46IDA7XHJcbiAgICBwYWRkaW5nOiByZW0tY2FsYygyMCAwKTtcclxuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuICAgICAgcGFkZGluZzogcmVtLWNhbGMoNDAgMCA2MCAwKTtcclxuICAgIH1cclxuICAgICY6YmVmb3JlLFxyXG4gICAgJjphZnRlciB7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XHJcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XHJcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgdG9wOiByZW0tY2FsYygtMjApO1xyXG4gICAgICB3aWR0aDogNTAlO1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBpbmhlcml0O1xyXG4gICAgICBwYWRkaW5nLXRvcDogcmVtLWNhbGMoMjApO1xyXG4gICAgfVxyXG4gICAgJjpiZWZvcmUge1xyXG4gICAgICByaWdodDogNTAlO1xyXG4gICAgICAtbXMtdHJhbnNmb3JtLW9yaWdpbjogMTAwJSAxMDAlO1xyXG4gICAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IDEwMCUgMTAwJTtcclxuICAgICAgdHJhbnNmb3JtLW9yaWdpbjogMTAwJSAxMDAlO1xyXG4gICAgICAtbXMtdHJhbnNmb3JtOiBza2V3WCg0NWRlZyk7XHJcbiAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBza2V3WCg0NWRlZyk7XHJcbiAgICAgIHRyYW5zZm9ybTogc2tld1goNDVkZWcpO1xyXG4gICAgfVxyXG4gICAgJjphZnRlciB7XHJcbiAgICAgIGxlZnQ6IDUwJTtcclxuICAgICAgLW1zLXRyYW5zZm9ybS1vcmlnaW46IDAgMTAwJTtcclxuICAgICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiAwIDEwMCU7XHJcbiAgICAgIHRyYW5zZm9ybS1vcmlnaW46IDAgMTAwJTtcclxuICAgICAgLW1zLXRyYW5zZm9ybTogc2tld1goLTQ1ZGVnKTtcclxuICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNrZXdYKC00NWRlZyk7XHJcbiAgICAgIHRyYW5zZm9ybTogc2tld1goLTQ1ZGVnKTtcclxuICAgIH1cclxuICAgIC5zaWducG9zdCB7XHJcbiAgICAgIHAge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgJi5kYXJrLFxyXG4gICYgLnNpZ25wb3N0cy5kYXJrIHtcclxuICAgIC5zaWducG9zdCB7XHJcbiAgICAgIGNvbG9yOiAkYmxhY2s7XHJcbiAgICAgIGEsXHJcbiAgICAgIGgzIHtcclxuICAgICAgICBjb2xvcjogJGdhbS1wdXJwbGU7XHJcbiAgICAgICAgcCB7XHJcbiAgICAgICAgICBjb2xvcjogJGJsYWNrO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICBoMzphZnRlciB7XHJcbiAgICAgICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiAkZ2FtLXB1cnBsZTtcclxuICAgICAgICBib3JkZXItdG9wLWNvbG9yOiAkZ2FtLXB1cnBsZTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICAmOm50aC1vZi10eXBlKDJuICsgMSkge1xyXG4gICAgLnJvdyB7XHJcbiAgICAgIC5jb250ZW50IHtcclxuICAgICAgICBmbG9hdDogbGVmdDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgLmJnLWltYWdlOmJlZm9yZSB7XHJcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHJnYmEoMCwgMCwgMCwgMC42NSkgMCUsIHJnYmEoMCwgMCwgMCwgMCkgODAlKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCJzZWN0aW9uLnByb21vLWxpc3Rpbmctd3JhcHBlciB7XHJcbiAgcGFkZGluZzogMDtcclxuICBiYWNrZ3JvdW5kOiAkd2hpdGU7XHJcbn1cclxuc2VjdGlvbi5wcm9tby1saXN0aW5nIHtcclxuICBwYWRkaW5nOiAwO1xyXG4gIC5iZy1pbWFnZSB7XHJcbiAgICBtaW4taGVpZ2h0OiAyMHZ3O1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcclxuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvYmctZG90cy5wbmcpLCBsaW5lYXItZ3JhZGllbnQoODBkZWcsICRnYW0tcHVycGxlIDYwJSwgJGdhbS1wdXJwbGUtZXh0cmEtZGFyayAxMDAlKTtcclxuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGF1dG8gMTAwJTtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IDA7XHJcbiAgICBwYWRkaW5nLXRvcDogcmVtLWNhbGMoMjApO1xyXG4gICAgcGFkZGluZy1ib3R0b206IHJlbS1jYWxjKDIwKTtcclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuICAgICAgcGFkZGluZy10b3A6IHJlbS1jYWxjKDgwKTtcclxuICAgICAgcGFkZGluZy1ib3R0b206IHJlbS1jYWxjKDgwKTtcclxuICAgIH1cclxuICB9XHJcbiAgQGF0LXJvb3QgYm9keVtkYXRhLXNsdWc9XCJzb2x1dGlvbnNcIl0gJiB7XHJcbiAgICAmOm5vdCguY29udGFjdCkgLmJnLWltYWdlIHtcclxuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9iZy1kb3RzLXNvbHV0aW9ucy5wbmcpLFxyXG4gICAgICAgIGxpbmVhci1ncmFkaWVudCg4MGRlZywgJGdhbS1wdXJwbGUgNjAlLCAkZ2FtLXB1cnBsZS1leHRyYS1kYXJrIDEwMCUpO1xyXG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCUgYXV0bztcclxuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAxMDAlO1xyXG4gICAgICA+LnJvdyB7XHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuICAgICAgICAgIHBhZGRpbmctdG9wOiByZW0tY2FsYygyMCk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuICAgICAgICAgIHBhZGRpbmctdG9wOiAwO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICBAYXQtcm9vdCBib2R5LnNpbmdsZS1jYXNlX3N0dWR5ICYge1xyXG4gICAgLmJnLWltYWdlIHtcclxuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9iZy1kb3RzLW1hc3Rlci5wbmcpLFxyXG4gICAgICAgIGxpbmVhci1ncmFkaWVudCh0byB0b3AsICRnYW0tcHVycGxlLWRhcmsgMTAlLCAkZ2FtLXB1cnBsZSAxMDAlKTtcclxuICAgICAgYmFja2dyb3VuZC1zaXplOiAxMDAlIGF1dG87XHJcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGxlZnQgMCBib3R0b20gOTAlO1xyXG4gICAgICAmOmFmdGVyIHtcclxuICAgICAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgbGVmdDogMDtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHRvcCwgcmdiYSgkZ2FtLXB1cnBsZS1kYXJrLCAwKSAzMCUsIHJnYmEoJGdhbS1wdXJwbGUtZGFyaywgMSkgMTAwJSk7XHJcbiAgICAgICAgei1pbmRleDogMTtcclxuICAgICAgfVxyXG4gICAgICA+ICoge1xyXG4gICAgICAgIHotaW5kZXg6IDI7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgLnJvdyB7XHJcbiAgICBAaW5jbHVkZSBncmlkLXJvdztcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAuY29udGVudCB7XHJcbiAgICAgIGNvbG9yOiAkd2hpdGU7XHJcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oMTIpO1xyXG4gICAgICAubGFiZWwge1xyXG4gICAgICAgIGNvbG9yOiAkZ2FtLXllbGxvdztcclxuICAgICAgfVxyXG4gICAgICBoMiB7XHJcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYyhtYXAtZGVlcC1nZXQoJGhlYWRlci1zdHlsZXMsIHNtYWxsLCBoMywgZm9udC1zaXplKSk7XHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMobWFwLWRlZXAtZ2V0KCRoZWFkZXItc3R5bGVzLCBtZWRpdW0sIGgzLCBmb250LXNpemUpKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgJi5sYWJlbGxlZCB7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG4gICAgICAgICAgbWF4LXdpZHRoOiByZW0tY2FsYyg0MDApO1xyXG4gICAgICAgIH1cclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICAgICAgICBAaW5jbHVkZSBncmlkLWNvbC1zaXplKDUpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICBAYXQtcm9vdCBib2R5LmhvbWUgJiB7XHJcbiAgICAgICAgaDIge1xyXG4gICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYyhtYXAtZGVlcC1nZXQoJGhlYWRlci1zdHlsZXMsIHNtYWxsLCBoMiwgZm9udC1zaXplKSk7XHJcbiAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKG1hcC1kZWVwLWdldCgkaGVhZGVyLXN0eWxlcywgbWVkaXVtLCBoMiwgZm9udC1zaXplKSk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gIC5idXR0b24ge1xyXG4gICAgYmFja2dyb3VuZDogJHdoaXRlO1xyXG4gICAgY29sb3I6ICRnYW0tcHVycGxlO1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgbWFyZ2luOiByZW0tY2FsYygyMCkgYXV0byAwO1xyXG4gICAgYWxpZ24tc2VsZjogY2VudGVyO1xyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuICAgICAgbWFyZ2luOiByZW0tY2FsYyg2MCkgYXV0byAwO1xyXG4gICAgfVxyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgIGJhY2tncm91bmQ6ICRnYW0teWVsbG93O1xyXG4gICAgICBjb2xvcjogJGdhbS1wdXJwbGU7XHJcbiAgICB9XHJcbiAgfVxyXG4gICYuY29udGFjdCB7XHJcbiAgICAucm93IHtcclxuICAgICAgLmNvbnRlbnQge1xyXG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuICAgICAgICAgIG1heC13aWR0aDogcmVtLWNhbGMoNDAwKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xyXG4gICAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2wtc2l6ZSg1KTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIC5iZy1pbWFnZSB7XHJcbiAgICAgIGJhY2tncm91bmQ6ICRnYW0tcHVycGxlLWRhcmsgdXJsKC4uL2ltYWdlcy9iZy1jb250YWN0LnN2Zykgbm8tcmVwZWF0O1xyXG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IGF1dG8gMTAwJTtcclxuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgMjAlIHRvcCAwO1xyXG4gICAgICBtaW4taGVpZ2h0OiAwO1xyXG4gICAgICBwOmxhc3QtY2hpbGQgYSB7XHJcbiAgICAgICAgQGV4dGVuZCAuYnV0dG9uO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gICYuYWNjb3JkaW9uLWNvbnRlbnQge1xyXG4gICAgbWFyZ2luLWxlZnQ6IHJlbS1jYWxjKC0yMCk7XHJcbiAgICBtYXJnaW4tcmlnaHQ6IHJlbS1jYWxjKC0yMCk7XHJcbiAgfVxyXG4gICYuc3RhdCB7XHJcbiAgICAucm93LnNpZ25wb3N0cyB7XHJcbiAgICAgIC5zaWducG9zdCB7XHJcbiAgICAgICAgaDMge1xyXG4gICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYyg1Nik7XHJcbiAgICAgICAgICBmb250LXdlaWdodDogMTAwO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG4ucHJvbW8tbGlzdGluZy50YWItd3JhcHBlciB7XHJcbiAgdWwudGFicyB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYyg0MCk7XHJcbiAgICBtYXJnaW4tdG9wOiByZW0tY2FsYygyMCk7XHJcbiAgfVxyXG4gIC5hY2NvcmRpb24taXRlbS5pcy1hY3RpdmUge1xyXG4gICAgLmFjY29yZGlvbi10aXRsZSB7XHJcbiAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICR3aGl0ZTtcclxuICAgIH1cclxuICB9XHJcbiAgLmFjY29yZGlvbi10aXRsZSB7XHJcbiAgICBib3JkZXItYm90dG9tLXdpZHRoOiAxcHg7XHJcbiAgfVxyXG4gIC5hY2NvcmRpb24tY29udGVudCB7XHJcbiAgICBib3JkZXI6IDA7XHJcbiAgfVxyXG59XHJcblxyXG4ucm93LnNpZ25wb3N0cyB7XHJcbiAgZGlzcGxheTogZmxleDtcclxuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgbWFyZ2luLXRvcDogcmVtLWNhbGMoMzApO1xyXG4gICY6YmVmb3JlLFxyXG4gICY6YWZ0ZXIge1xyXG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xyXG4gIH1cclxuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICBtYXJnaW4tdG9wOiByZW0tY2FsYyg2MCk7XHJcbiAgfVxyXG4gIC5zaWducG9zdCB7XHJcbiAgICBmbGV4LWdyb3c6IDE7XHJcbiAgICBmbGV4LXNocmluazogMTtcclxuICAgIGZsZXgtYmFzaXM6IDUwJTtcclxuICAgIHdpZHRoOiA1MCU7XHJcbiAgICBjb2xvcjogJHdoaXRlO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMjApO1xyXG4gICAgcGFkZGluZy1sZWZ0OiByZW0tY2FsYyhtYXAtZ2V0KCRncmlkLW1hcmdpbi1ndXR0ZXJzLCBzbWFsbCkgLyAyKTtcclxuICAgIHBhZGRpbmctcmlnaHQ6IHJlbS1jYWxjKG1hcC1nZXQoJGdyaWQtbWFyZ2luLWd1dHRlcnMsIHNtYWxsKSAvIDIpO1xyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuICAgICAgbWF4LXdpZHRoOiAzMy4zMzMzJTtcclxuICAgICAgZmxleC1iYXNpczozMy4zMzMzJTtcclxuICAgICAgcGFkZGluZy1sZWZ0OiByZW0tY2FsYyhtYXAtZ2V0KCRncmlkLW1hcmdpbi1ndXR0ZXJzLCBtZWRpdW0pIC8gMik7XHJcbiAgICAgIHBhZGRpbmctcmlnaHQ6IHJlbS1jYWxjKG1hcC1nZXQoJGdyaWQtbWFyZ2luLWd1dHRlcnMsIG1lZGl1bSkgLyAyKTtcclxuICAgICAgQGF0LXJvb3QgYm9keS5ob21lICYge1xyXG4gICAgICAgIG1heC13aWR0aDogMjUlO1xyXG4gICAgICAgIGZsZXgtYmFzaXM6MjUlO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICAgIG1heC13aWR0aDogMjAlO1xyXG4gICAgICBAYXQtcm9vdCBib2R5LmhvbWUgJiB7XHJcbiAgICAgICAgbWF4LXdpZHRoOiAyNSU7XHJcbiAgICAgICAgaDMge1xyXG4gICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxOCk7XHJcbiAgICAgICAgICBtYXgtd2lkdGg6IHJlbS1jYWxjKDIwMCk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIEBhdC1yb290IGJvZHkuc2luZ2xlICYge1xyXG4gICAgICAgIG1heC13aWR0aDogMjAlO1xyXG4gICAgICB9XHJcbiAgICAgIEBhdC1yb290IGJvZHlbZGF0YS1zbHVnPVwic29sdXRpb25zXCJdICYge1xyXG4gICAgICAgIG1heC13aWR0aDogMzMuMzMzMyU7XHJcbiAgICAgICAgYSxcclxuICAgICAgICBzcGFuLm5vLWxpbmsge1xyXG4gICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XHJcbiAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICAgaW1nIHtcclxuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiByZW0tY2FsYygyMCk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICBoMyB7XHJcbiAgICAgICAgICAgIGZsZXg6IDEgMSBhdXRvO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICBAYXQtcm9vdCBib2R5W2RhdGEtc2x1Zyo9XCJzdXBwb3J0XCJdICYge1xyXG4gICAgICAgIG1heC13aWR0aDogMzMuMzMzMyU7XHJcbiAgICAgICAgYSxcclxuICAgICAgICBzcGFuLm5vLWxpbmsge1xyXG4gICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XHJcbiAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICAgaW1nIHtcclxuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiByZW0tY2FsYygyMCk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICBoMyB7XHJcbiAgICAgICAgICAgIGZsZXg6IDEgMSBhdXRvO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgaW1nIHtcclxuICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTApO1xyXG4gICAgICBtYXgtd2lkdGg6IHJlbS1jYWxjKDgwKTtcclxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDIwKTtcclxuICAgICAgICBtYXgtd2lkdGg6IHJlbS1jYWxjKDEyMCk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIGgzIHtcclxuICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTApO1xyXG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE0KTtcclxuICAgICAgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQ7XHJcbiAgICAgIGNvbG9yOiAkZ2FtLXllbGxvdztcclxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE2KTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgcCB7XHJcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpO1xyXG4gICAgfVxyXG4gIH1cclxuICBhIHtcclxuICAgIGNvbG9yOiAkZ2FtLXllbGxvdztcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgaDMge1xyXG4gICAgICAmOmFmdGVyIHtcclxuICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XHJcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICB0b3A6IHJlbS1jYWxjKC0yKTtcclxuICAgICAgICByaWdodDogYXV0bztcclxuICAgICAgICBtYXJnaW4tbGVmdDogcmVtLWNhbGMoLTIwKTtcclxuICAgICAgICBtYXJnaW4tdG9wOiBhdXRvO1xyXG4gICAgICAgIGJvcmRlcjogMnB4IHNvbGlkIHRyYW5zcGFyZW50O1xyXG4gICAgICAgIGJvcmRlci1yaWdodC1jb2xvcjogJGdhbS15ZWxsb3c7XHJcbiAgICAgICAgYm9yZGVyLXRvcC1jb2xvcjogJGdhbS15ZWxsb3c7XHJcbiAgICAgICAgd2lkdGg6IHJlbS1jYWxjKDEwKTtcclxuICAgICAgICBoZWlnaHQ6IHJlbS1jYWxjKDEwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZykgdHJhbnNsYXRlKDIwcHgsIC0xOHB4KTtcclxuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XHJcbiAgICAgICAgICBtYXJnaW4tbGVmdDogcmVtLWNhbGMoLTI1KTtcclxuICAgICAgICAgIHRvcDogcmVtLWNhbGMoLTEpO1xyXG4gICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpIHRyYW5zbGF0ZSgyMHB4LCAtMThweCkgc2NhbGUoMC44KTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIHAge1xyXG4gICAgICBjb2xvcjogI2ZmZjtcclxuICAgIH1cclxuICB9XHJcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xyXG4gICAgJi5jb2xzLTMgLnNpZ25wb3N0IHtcclxuICAgICAgbWF4LXdpZHRoOiAzMy4zMzMzJTtcclxuICAgIH1cclxuICAgICYuY29scy00IC5zaWducG9zdCB7XHJcbiAgICAgIG1heC13aWR0aDogMjUlO1xyXG4gICAgfVxyXG4gICAgJi5jb2xzLTUgLnNpZ25wb3N0IHtcclxuICAgICAgbWF4LXdpZHRoOiAyMCU7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsInNlY3Rpb24ucHJvbW8tbGlzdGluZy0yLXdyYXBwZXIge1xyXG4gIHBhZGRpbmc6IDA7XHJcbiAgYmFja2dyb3VuZDogJHdoaXRlO1xyXG59XHJcbnNlY3Rpb24ucHJvbW8tbGlzdGluZy0yIHtcclxuICBwYWRkaW5nOiAwO1xyXG4gIC5iZy1pbWFnZSB7XHJcbiAgICBtaW4taGVpZ2h0OiAyMHZ3O1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcclxuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvYmctZG90cy5wbmcpLCBsaW5lYXItZ3JhZGllbnQoODBkZWcsICRnYW0tcHVycGxlIDYwJSwgJGdhbS1wdXJwbGUtZXh0cmEtZGFyayAxMDAlKTtcclxuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGF1dG8gMTAwJTtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IDA7XHJcbiAgICBwYWRkaW5nLXRvcDogcmVtLWNhbGMoMjApO1xyXG4gICAgcGFkZGluZy1ib3R0b206IHJlbS1jYWxjKDIwKTtcclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuICAgICAgcGFkZGluZy10b3A6IHJlbS1jYWxjKDgwKTtcclxuICAgICAgcGFkZGluZy1ib3R0b206IHJlbS1jYWxjKDgwKTtcclxuICAgIH1cclxuICB9XHJcbiAgQGF0LXJvb3QgYm9keVtkYXRhLXNsdWc9XCJzb2x1dGlvbnNcIl0gJiB7XHJcbiAgICAmOm5vdCguY29udGFjdCkgLmJnLWltYWdlIHtcclxuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9iZy1kb3RzLXNvbHV0aW9ucy5wbmcpLFxyXG4gICAgICAgIGxpbmVhci1ncmFkaWVudCg4MGRlZywgJGdhbS1wdXJwbGUgNjAlLCAkZ2FtLXB1cnBsZS1leHRyYS1kYXJrIDEwMCUpO1xyXG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCUgYXV0bztcclxuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAxMDAlO1xyXG4gICAgICA+LnJvdyB7XHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuICAgICAgICAgIHBhZGRpbmctdG9wOiByZW0tY2FsYygyMCk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuICAgICAgICAgIHBhZGRpbmctdG9wOiAwO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICBAYXQtcm9vdCBib2R5LnNpbmdsZS1jYXNlX3N0dWR5ICYge1xyXG4gICAgLmJnLWltYWdlIHtcclxuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9iZy1kb3RzLW1hc3Rlci5wbmcpLFxyXG4gICAgICAgIGxpbmVhci1ncmFkaWVudCh0byB0b3AsICRnYW0tcHVycGxlLWRhcmsgMTAlLCAkZ2FtLXB1cnBsZSAxMDAlKTtcclxuICAgICAgYmFja2dyb3VuZC1zaXplOiAxMDAlIGF1dG87XHJcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGxlZnQgMCBib3R0b20gOTAlO1xyXG4gICAgICAmOmFmdGVyIHtcclxuICAgICAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgbGVmdDogMDtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHRvcCwgcmdiYSgkZ2FtLXB1cnBsZS1kYXJrLCAwKSAzMCUsIHJnYmEoJGdhbS1wdXJwbGUtZGFyaywgMSkgMTAwJSk7XHJcbiAgICAgICAgei1pbmRleDogMTtcclxuICAgICAgfVxyXG4gICAgICA+ICoge1xyXG4gICAgICAgIHotaW5kZXg6IDI7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgLnJvdyB7XHJcbiAgICBAaW5jbHVkZSBncmlkLXJvdztcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgLmNvbnRlbnQge1xyXG4gICAgICBjb2xvcjogJHdoaXRlO1xyXG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gICAgICBAaW5jbHVkZSBncmlkLWNvbHVtbigxMik7XHJcbiAgICAgIC5sYWJlbCB7XHJcbiAgICAgICAgY29sb3I6ICRnYW0teWVsbG93O1xyXG4gICAgICB9XHJcbiAgICAgIGgyIHtcclxuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKG1hcC1kZWVwLWdldCgkaGVhZGVyLXN0eWxlcywgc21hbGwsIGgzLCBmb250LXNpemUpKTtcclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG4gICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYyhtYXAtZGVlcC1nZXQoJGhlYWRlci1zdHlsZXMsIG1lZGl1bSwgaDMsIGZvbnQtc2l6ZSkpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICAmLmxhYmVsbGVkIHtcclxuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XHJcbiAgICAgICAgICBtYXgtd2lkdGg6IHJlbS1jYWxjKDQwMCk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuICAgICAgICAgIEBpbmNsdWRlIGdyaWQtY29sLXNpemUoNSk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIEBhdC1yb290IGJvZHkuaG9tZSAmIHtcclxuICAgICAgICBoMiB7XHJcbiAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKG1hcC1kZWVwLWdldCgkaGVhZGVyLXN0eWxlcywgc21hbGwsIGgyLCBmb250LXNpemUpKTtcclxuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMobWFwLWRlZXAtZ2V0KCRoZWFkZXItc3R5bGVzLCBtZWRpdW0sIGgyLCBmb250LXNpemUpKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgLmJ1dHRvbiB7XHJcbiAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XHJcbiAgICBjb2xvcjogJGdhbS1wdXJwbGU7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICBtYXJnaW46IHJlbS1jYWxjKDIwKSBhdXRvIDA7XHJcbiAgICBhbGlnbi1zZWxmOiBjZW50ZXI7XHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG4gICAgICBtYXJnaW46IHJlbS1jYWxjKDYwKSBhdXRvIDA7XHJcbiAgICB9XHJcbiAgICAmOmhvdmVyIHtcclxuICAgICAgYmFja2dyb3VuZDogJGdhbS15ZWxsb3c7XHJcbiAgICAgIGNvbG9yOiAkZ2FtLXB1cnBsZTtcclxuICAgIH1cclxuICB9XHJcbiAgJi5jb250YWN0IHtcclxuICAgIC5yb3cge1xyXG4gICAgICAuY29udGVudCB7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG4gICAgICAgICAgbWF4LXdpZHRoOiByZW0tY2FsYyg0MDApO1xyXG4gICAgICAgIH1cclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICAgICAgICBAaW5jbHVkZSBncmlkLWNvbC1zaXplKDUpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgLmJnLWltYWdlIHtcclxuICAgICAgYmFja2dyb3VuZDogJGdhbS1wdXJwbGUtZGFyayB1cmwoLi4vaW1hZ2VzL2JnLWNvbnRhY3Quc3ZnKSBuby1yZXBlYXQ7XHJcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogYXV0byAxMDAlO1xyXG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCAyMCUgdG9wIDA7XHJcbiAgICAgIG1pbi1oZWlnaHQ6IDA7XHJcbiAgICAgIHA6bGFzdC1jaGlsZCBhIHtcclxuICAgICAgICBAZXh0ZW5kIC5idXR0b247XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgJi5hY2NvcmRpb24tY29udGVudCB7XHJcbiAgICBtYXJnaW4tbGVmdDogcmVtLWNhbGMoLTIwKTtcclxuICAgIG1hcmdpbi1yaWdodDogcmVtLWNhbGMoLTIwKTtcclxuICB9XHJcbiAgJi5zdGF0IHtcclxuICAgIC5yb3cuc2lnbnBvc3RzIHtcclxuICAgICAgLnNpZ25wb3N0IHtcclxuICAgICAgICBoMyB7XHJcbiAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDU2KTtcclxuICAgICAgICAgIGZvbnQtd2VpZ2h0OiAxMDA7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbi5wcm9tby1saXN0aW5nLTIudGFiLXdyYXBwZXIge1xyXG4gIHVsLnRhYnMge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoNDApO1xyXG4gICAgbWFyZ2luLXRvcDogcmVtLWNhbGMoMjApO1xyXG4gIH1cclxuICAuYWNjb3JkaW9uLWl0ZW0uaXMtYWN0aXZlIHtcclxuICAgIC5hY2NvcmRpb24tdGl0bGUge1xyXG4gICAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkd2hpdGU7XHJcbiAgICB9XHJcbiAgfVxyXG4gIC5hY2NvcmRpb24tdGl0bGUge1xyXG4gICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMXB4O1xyXG4gIH1cclxuICAuYWNjb3JkaW9uLWNvbnRlbnQge1xyXG4gICAgYm9yZGVyOiAwO1xyXG4gIH1cclxufVxyXG5cclxuLnJvdy5zaWducG9zdHMtMiB7XHJcbiAgZGlzcGxheTogZmxleDtcclxuICBqdXN0aWZ5LWNvbnRlbnQ6IGxlZnQ7XHJcbiAgZmxleC13cmFwOiB3cmFwO1xyXG4gIG1hcmdpbi10b3A6IHJlbS1jYWxjKDMwKTtcclxuICAmOmJlZm9yZSxcclxuICAmOmFmdGVyIHtcclxuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcclxuICB9XHJcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xyXG4gICAgbWFyZ2luLXRvcDogcmVtLWNhbGMoNjApO1xyXG4gIH1cclxuICAuc2lnbnBvc3Qge1xyXG4gICAgZmxleC1ncm93OiAxO1xyXG4gICAgZmxleC1zaHJpbms6IDE7XHJcbiAgICBmbGV4LWJhc2lzOiA1MCU7XHJcbiAgICB3aWR0aDogNTAlO1xyXG4gICAgY29sb3I6ICR3aGl0ZTtcclxuICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDIwKTtcclxuICAgIHBhZGRpbmctbGVmdDogcmVtLWNhbGMobWFwLWdldCgkZ3JpZC1tYXJnaW4tZ3V0dGVycywgc21hbGwpIC8gMik7XHJcbiAgICBwYWRkaW5nLXJpZ2h0OiByZW0tY2FsYyhtYXAtZ2V0KCRncmlkLW1hcmdpbi1ndXR0ZXJzLCBzbWFsbCkgLyAyKTtcclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XHJcbiAgICAgIG1heC13aWR0aDogMzMuMzMzMyU7XHJcbiAgICAgIGZsZXgtYmFzaXM6MzMuMzMzMyU7XHJcbiAgICAgIHBhZGRpbmctbGVmdDogcmVtLWNhbGMobWFwLWdldCgkZ3JpZC1tYXJnaW4tZ3V0dGVycywgbWVkaXVtKSAvIDIpO1xyXG4gICAgICBwYWRkaW5nLXJpZ2h0OiByZW0tY2FsYyhtYXAtZ2V0KCRncmlkLW1hcmdpbi1ndXR0ZXJzLCBtZWRpdW0pIC8gMik7XHJcbiAgICAgIEBhdC1yb290IGJvZHkuaG9tZSAmIHtcclxuICAgICAgICBtYXgtd2lkdGg6IDI1JTtcclxuICAgICAgICBmbGV4LWJhc2lzOjI1JTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xyXG4gICAgICBtYXgtd2lkdGg6IDIwJTtcclxuICAgICAgQGF0LXJvb3QgYm9keS5ob21lICYge1xyXG4gICAgICAgIG1heC13aWR0aDogMjUlO1xyXG4gICAgICAgIGgzIHtcclxuICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTgpO1xyXG4gICAgICAgICAgbWF4LXdpZHRoOiByZW0tY2FsYygyMDApO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICBAYXQtcm9vdCBib2R5LnNpbmdsZSAmIHtcclxuICAgICAgICBtYXgtd2lkdGg6IDIwJTtcclxuICAgICAgfVxyXG4gICAgICBAYXQtcm9vdCBib2R5W2RhdGEtc2x1Zz1cInNvbHV0aW9uc1wiXSAmIHtcclxuICAgICAgICBtYXgtd2lkdGg6IDMzLjMzMzMlO1xyXG4gICAgICAgIGEsXHJcbiAgICAgICAgc3Bhbi5uby1saW5rIHtcclxuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xyXG4gICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgIGltZyB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogcmVtLWNhbGMoMjApO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgaDMge1xyXG4gICAgICAgICAgICBmbGV4OiAxIDEgYXV0bztcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgQGF0LXJvb3QgYm9keVtkYXRhLXNsdWcqPVwic3VwcG9ydFwiXSAmIHtcclxuICAgICAgICBtYXgtd2lkdGg6IDMzLjMzMzMlO1xyXG4gICAgICAgIGEsXHJcbiAgICAgICAgc3Bhbi5uby1saW5rIHtcclxuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xyXG4gICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgIGltZyB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogcmVtLWNhbGMoMjApO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgaDMge1xyXG4gICAgICAgICAgICBmbGV4OiAxIDEgYXV0bztcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIGltZyB7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDEwKTtcclxuICAgICAgbWF4LXdpZHRoOiByZW0tY2FsYyg4MCk7XHJcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygyMCk7XHJcbiAgICAgICAgbWF4LXdpZHRoOiByZW0tY2FsYygxMjApO1xyXG4gICAgICB9XHJcbiAgICAgIG1heC1oZWlnaHQ6IDkwcHg7XHJcbiAgICB9XHJcbiAgICBoMyB7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDEwKTtcclxuICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNCk7XHJcbiAgICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkO1xyXG4gICAgICBjb2xvcjogJGdhbS15ZWxsb3c7XHJcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XHJcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNik7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIHAge1xyXG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE0KTtcclxuICAgIH1cclxuICB9XHJcbiAgYSB7XHJcbiAgICBjb2xvcjogJGdhbS15ZWxsb3c7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIGgzIHtcclxuICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuICAgICAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgdG9wOiByZW0tY2FsYygtMik7XHJcbiAgICAgICAgcmlnaHQ6IGF1dG87XHJcbiAgICAgICAgbWFyZ2luLWxlZnQ6IHJlbS1jYWxjKC0yMCk7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogYXV0bztcclxuICAgICAgICBib3JkZXI6IDJweCBzb2xpZCB0cmFuc3BhcmVudDtcclxuICAgICAgICBib3JkZXItcmlnaHQtY29sb3I6ICRnYW0teWVsbG93O1xyXG4gICAgICAgIGJvcmRlci10b3AtY29sb3I6ICRnYW0teWVsbG93O1xyXG4gICAgICAgIHdpZHRoOiByZW0tY2FsYygxMCk7XHJcbiAgICAgICAgaGVpZ2h0OiByZW0tY2FsYygxMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpIHRyYW5zbGF0ZSgyMHB4LCAtMThweCk7XHJcbiAgICAgICAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xyXG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IHJlbS1jYWxjKC0yNSk7XHJcbiAgICAgICAgICB0b3A6IHJlbS1jYWxjKC0xKTtcclxuICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKSB0cmFuc2xhdGUoMjBweCwgLTE4cHgpIHNjYWxlKDAuOCk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICBwIHtcclxuICAgICAgY29sb3I6ICNmZmY7XHJcbiAgICB9XHJcbiAgfVxyXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuICAgICYuY29scy0zIC5zaWducG9zdCB7XHJcbiAgICAgIG1heC13aWR0aDogMzMuMzMzMyU7XHJcbiAgICB9XHJcbiAgICAmLmNvbHMtNCAuc2lnbnBvc3Qge1xyXG4gICAgICBtYXgtd2lkdGg6IDI1JTtcclxuICAgIH1cclxuICAgICYuY29scy01IC5zaWducG9zdCB7XHJcbiAgICAgIG1heC13aWR0aDogMjAlO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCJzZWN0aW9uLnNwbGl0IHtcclxuICBwYWRkaW5nOiAwO1xyXG4gIC5yb3cge1xyXG4gICAgQGluY2x1ZGUgZ3JpZC1yb3c7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG4gICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAmOmJlZm9yZSxcclxuICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG4gICAgJi5yZXZlcnNlIHtcclxuICAgICAgLnJvdyB7XHJcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gIC5jb250ZW50IHtcclxuICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDEyKTtcclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XHJcbiAgICAgIGZsZXg6IDEgMSA1MCU7XHJcbiAgICAgIEBpbmNsdWRlIGdyaWQtY29sLXNpemUoNik7XHJcbiAgICAgIG1pbi1oZWlnaHQ6IDMwdnc7XHJcbiAgICB9XHJcbiAgfVxyXG4gICYudGV4dCB7XHJcbiAgICAuY29udGVudCB7XHJcbiAgICAgIHBhZGRpbmctdG9wOiByZW0tY2FsYygyMCk7XHJcbiAgICAgIHBhZGRpbmctYm90dG9tOiByZW0tY2FsYygyMCk7XHJcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XHJcbiAgICAgICAgcGFkZGluZy10b3A6IHJlbS1jYWxjKDgwKTtcclxuICAgICAgICBwYWRkaW5nLWJvdHRvbTogcmVtLWNhbGMoODApO1xyXG4gICAgICB9XHJcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuICAgICAgICAudGV4dCB7XHJcbiAgICAgICAgICAvKm1heC13aWR0aDogcmVtLWNhbGMoNDAwKTsqL1xyXG4gICAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICBhW2hyZWZePVwidGVsXCJdIHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbWVkaXVtO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMobWFwLWRlZXAtZ2V0KCRoZWFkZXItc3R5bGVzLCBzbWFsbCwgaDQsIGZvbnQtc2l6ZSkpO1xyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XHJcbiAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKG1hcC1kZWVwLWdldCgkaGVhZGVyLXN0eWxlcywgbWVkaXVtLCBoNCwgZm9udC1zaXplKSk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuICAgICAgICAuaW5mbyB7XHJcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcclxuICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcclxuICAgICAgICAgIGFsaWduLWNvbnRlbnQ6IGZsZXgtZW5kO1xyXG4gICAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xyXG4gICAgICAgICAgPiAudGV4dCB7XHJcbiAgICAgICAgICAgIG1heC13aWR0aDogcmVtLWNhbGMoMjUwKTtcclxuICAgICAgICAgICAgZmxleDogMSAxIHJlbS1jYWxjKDI1MCk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICA+IC5saW5rIHtcclxuICAgICAgICAgICAgZmxleDogMSAxIDA7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gICYuc2lnbnBvc3RzIHtcclxuICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XHJcbiAgICAgIC5pbnRybyArICYge1xyXG4gICAgICAgIC5pbWFnZSB7XHJcbiAgICAgICAgICBvcmRlcjogMTtcclxuICAgICAgICB9XHJcbiAgICAgICAgLmNvbnRlbnQge1xyXG4gICAgICAgICAgb3JkZXI6IDI7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICAgIC5pbnRybyArICYge1xyXG4gICAgICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKC0yMCk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIC5jb250ZW50IHtcclxuICAgICAgcGFkZGluZzogMDtcclxuICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgdWwuc2lnbnBvc3RzIHtcclxuICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xyXG4gICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkZGFyay1ncmF5O1xyXG4gICAgICAgIGZsZXg6IDEgMSAwO1xyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XHJcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3RyZXRjaDtcclxuICAgICAgICAgIGJvcmRlci10b3A6IDA7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGxpIHtcclxuICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkZGFyay1ncmF5O1xyXG4gICAgICAgICAgZmxleDogMSAxIDA7XHJcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3RyZXRjaDtcclxuICAgICAgICAgICY6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDA7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICBhIHtcclxuICAgICAgICAgICAgZmxleDogMSAxIDA7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkYmxhY2s7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogcmVtLWNhbGMoMzApO1xyXG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogcmVtLWNhbGMoMzApO1xyXG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IHJlbS1jYWxjKG1hcC1nZXQoJGdyaWQtbWFyZ2luLWd1dHRlcnMsIHNtYWxsKSAvIDIpO1xyXG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiByZW0tY2FsYyhtYXAtZ2V0KCRncmlkLW1hcmdpbi1ndXR0ZXJzLCBzbWFsbCkgLyAyKTtcclxuICAgICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYyhtYXAtZGVlcC1nZXQoJGhlYWRlci1zdHlsZXMsIHNtYWxsLCBoNCwgZm9udC1zaXplKSk7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XHJcbiAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiByZW0tY2FsYyhtYXAtZ2V0KCRncmlkLW1hcmdpbi1ndXR0ZXJzLCBtZWRpdW0pIC8gMik7XHJcbiAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogcmVtLWNhbGMobWFwLWdldCgkZ3JpZC1tYXJnaW4tZ3V0dGVycywgbWVkaXVtKSAvIDIpO1xyXG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMobWFwLWRlZXAtZ2V0KCRoZWFkZXItc3R5bGVzLCBtZWRpdW0sIGg0LCBmb250LXNpemUpKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgICBjb2xvcjogJGdhbS1wdXJwbGU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgc3BhbiB7XHJcbiAgICAgICAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG4gICAgICAgICAgICAgICAgY29udGVudDogXCJcIjtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAgICAgICAgIHRvcDogcmVtLWNhbGMoLTQpO1xyXG4gICAgICAgICAgICAgICAgcmlnaHQ6IGF1dG87XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogcmVtLWNhbGMoLTIwKTtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IGF1dG87XHJcbiAgICAgICAgICAgICAgICBib3JkZXI6IDJweCBzb2xpZCB0cmFuc3BhcmVudDtcclxuICAgICAgICAgICAgICAgIGJvcmRlci1yaWdodC1jb2xvcjogJGdhbS1wdXJwbGU7XHJcbiAgICAgICAgICAgICAgICBib3JkZXItdG9wLWNvbG9yOiAkZ2FtLXB1cnBsZTtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiByZW0tY2FsYygxMik7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IHJlbS1jYWxjKDEyKTtcclxuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKSB0cmFuc2xhdGUoMjBweCwgLTE4cHgpO1xyXG4gICAgICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XHJcbiAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiByZW0tY2FsYygtMjUpO1xyXG4gICAgICAgICAgICAgICAgICB0b3A6IHJlbS1jYWxjKC0xKTtcclxuICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpIHRyYW5zbGF0ZSgyMHB4LCAtMThweCkgc2NhbGUoMC44KTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgLmltYWdlIHtcclxuICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDEyLCAwKTtcclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XHJcbiAgICAgIGZsZXg6IDEgMSBhdXRvO1xyXG4gICAgICBAaW5jbHVkZSBncmlkLWNvbC1zaXplKDYpO1xyXG4gICAgICBmbG9hdDogbm9uZSAhaW1wb3J0YW50O1xyXG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgIGltZyB7XHJcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgICAgIG1pbi1oZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgbWluLXdpZHRoOiAxMDAlO1xyXG4gICAgICAgIHdpZHRoOiBhdXRvO1xyXG4gICAgICAgIG1heC13aWR0aDogbm9uZTtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgbGVmdDogNTAlO1xyXG4gICAgICAgIHRvcDogNTAlO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsInNlY3Rpb24uaGlnaGxpZ2h0LXBhbmVscyB7XHJcbiAgcGFkZGluZzogMDtcclxuICAuYmctaW1hZ2Uge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcclxuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvYmctZG90cy5wbmcpLCBsaW5lYXItZ3JhZGllbnQoODBkZWcsICRnYW0tcHVycGxlIDYwJSwgJGdhbS1wdXJwbGUtZXh0cmEtZGFyayAxMDAlKTtcclxuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGF1dG8gMTAwJTtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IDA7XHJcbiAgICBwYWRkaW5nLXRvcDogcmVtLWNhbGMoMjApO1xyXG4gICAgcGFkZGluZy1ib3R0b206IHJlbS1jYWxjKDIwKTtcclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuICAgICAgcGFkZGluZy10b3A6IHJlbS1jYWxjKDgwKTtcclxuICAgICAgcGFkZGluZy1ib3R0b206IHJlbS1jYWxjKDgwKTtcclxuICAgIH1cclxuICB9XHJcbiAgLmhpZ2hsaWdodC1jb2x1bW5zIHtcclxuICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDEyKTtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xyXG4gICAgZmxleC13cmFwOiB3cmFwO1xyXG4gICAgbWFyZ2luOiAwOyBcclxuICAgIHBhZGRpbmc6IDA7XHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xyXG4gICAgfVxyXG4gICAgLmhpZ2hsaWdodC1wYW5lbCB7XHJcbiAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgIGZsZXgtZ3JvdzogMTtcclxuICAgICAgZmxleC1zaHJpbms6IDE7XHJcbiAgICAgIGZsZXgtYmFzaXM6IDEwMCU7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDMwKTtcclxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuICAgICAgICBmbGV4LWJhc2lzOiA1MCU7XHJcbiAgICAgICAgcGFkZGluZy1yaWdodDogcmVtLWNhbGMoMjApO1xyXG4gICAgICB9XHJcbiAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICAgICAgZmxleC1iYXNpczogMjUlO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICAgICAgcGFkZGluZy1yaWdodDogcmVtLWNhbGMoMzApO1xyXG4gICAgICB9XHJcbiAgICAgIC5sYWJlbCB7XHJcbiAgICAgICAgY29sb3I6ICRnYW0teWVsbG93O1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDIwKTtcclxuICAgICAgfVxyXG4gICAgICAucHJpY2UsIC5jaG5nZWNvbG9yLCAudGltZSB7XHJcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcclxuICAgICAgfVxyXG4gICAgICBhLmxpc3QtbGluayB7XHJcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDIxKTtcclxuICAgICAgICBsaW5lLWhlaWdodDogMS40ZW07XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkd2hpdGU7XHJcbiAgICAgICAgICBib3JkZXItcmlnaHQtY29sb3I6ICR3aGl0ZTtcclxuICAgICAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgICAgaGVpZ2h0OiByZW0tY2FsYygxMCk7XHJcbiAgICAgICAgICBtYXJnaW4tbGVmdDogcmVtLWNhbGMoOCk7XHJcbiAgICAgICAgICB3aWR0aDogcmVtLWNhbGMoMTApO1xyXG4gICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgLmhpZ2hsaWdodC1kb3dubG9hZC1maWxlIHtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGltZyB7XHJcbiAgICAgICAgICBtYXgtd2lkdGg6IHJlbS1jYWxjKDkwKTtcclxuICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIH1cclxuICAgICAgICAuZG93bmxvYWQtY2FwdGlvbiB7XHJcbiAgICAgICAgICBjb2xvcjogJHdoaXRlO1xyXG4gICAgICAgICAgZmxleDoxIDEgNTAlO1xyXG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IHJlbS1jYWxjKDIwKTtcclxuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XHJcbiAgICAgICAgICAgIGZsZXgtYmFzaXM6IDEwMCU7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIC5oaWdobGlnaHQtY3RhIHtcclxuICAgICAgICBtYXJnaW4tdG9wOiBhdXRvO1xyXG4gICAgICAgIC5jdGEge1xyXG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xyXG4gICAgICAgICAgY29sb3I6ICRnYW0tcHVycGxlO1xyXG4gICAgICAgICAgbWFyZ2luLXRvcDogcmVtLWNhbGMoNDApO1xyXG4gICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRnYW0teWVsbG93O1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCJzZWN0aW9uLmNhc2Utc3R1ZGllcyB7XHJcbiAgLnJvdyB7XHJcbiAgICBAaW5jbHVkZSBncmlkLXJvdztcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIC5jb250ZW50IHtcclxuICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oMTIpO1xyXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG4gICAgICAgIEBpbmNsdWRlIGdyaWQtY29sLXNpemUoNik7XHJcbiAgICAgIH1cclxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xyXG4gICAgICAgIEBpbmNsdWRlIGdyaWQtY29sLXNpemUoNSk7XHJcbiAgICAgIH1cclxuICAgICAgaDIge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDIwKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICAubGluayB7XHJcbiAgICBtYXJnaW46IHJlbS1jYWxjKDIwIDApO1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gIH1cclxuICAubG9nb3MuY2Fyb3VzZWwge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGZsZXgtd3JhcDogd3JhcDtcclxuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcclxuICAgICYuc2xpY2stc2xpZGVyIHtcclxuICAgICAgcGFkZGluZy1sZWZ0OiByZW0tY2FsYyg3MCk7XHJcbiAgICAgIHBhZGRpbmctcmlnaHQ6IHJlbS1jYWxjKDcwKTtcclxuICAgIH1cclxuICB9XHJcbiAgJi5nb2xkIHtcclxuICAgIGJhY2tncm91bmQ6ICRsaWdodC1ncmF5O1xyXG4gIH1cclxufVxyXG4ucm93LmxvZ29zLFxyXG4ucm93ID4gLmxvZ29zIHtcclxuICBkaXNwbGF5OiBmbGV4O1xyXG4gIGZsZXgtd3JhcDogd3JhcDtcclxuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XHJcbiAgb3ZlcmZsb3cteDogaGlkZGVuO1xyXG4gIEBhdC1yb290IGJvZHkucGFnZS10ZW1wbGF0ZS1wYWdlLXBhcnRuZXJzICYge1xyXG4gICAgcGFkZGluZy10b3A6IDA7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcclxuICB9XHJcbiAgJjpiZWZvcmUsXHJcbiAgJjphZnRlciB7XHJcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XHJcbiAgfVxyXG4gIC5zbGljay10cmFjayB7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAvLyBvdmVyZmxvdy14OiBoaWRkZW47XHJcbiAgICAvLyBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgICAvLyBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XHJcbiAgICAvLyBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgJjpiZWZvcmUsXHJcbiAgICAmOmFmdGVyIHtcclxuICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG4gICAgLmxvZ28ge1xyXG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2shaW1wb3J0YW50O1xyXG4gICAgICB3aWR0aDogYXV0bztcclxuICAgICAgaW1nIHtcclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG4gICAgICAgICAgcGFkZGluZy1yaWdodDogcmVtLWNhbGMoNTApO1xyXG4gICAgICAgIH1cclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiByZW0tY2FsYyg5MCk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gIC5sb2dvIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgbWF4LXdpZHRoOiA1MCU7XHJcbiAgICBmbGV4LWJhc2lzOiA1MCU7XHJcbiAgICBmbGV4LWdyb3c6IDE7XHJcbiAgICBwYWRkaW5nLWxlZnQ6IHJlbS1jYWxjKG1hcC1nZXQoJGdyaWQtbWFyZ2luLWd1dHRlcnMsIHNtYWxsKSAvIDIpO1xyXG4gICAgcGFkZGluZy1yaWdodDogcmVtLWNhbGMobWFwLWdldCgkZ3JpZC1tYXJnaW4tZ3V0dGVycywgc21hbGwpIC8gMik7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XHJcbiAgICAgIGZsZXgtYmFzaXM6IDI1JTtcclxuICAgICAgbWF4LXdpZHRoOiAyNSU7XHJcbiAgICAgIHBhZGRpbmctbGVmdDogcmVtLWNhbGMobWFwLWdldCgkZ3JpZC1tYXJnaW4tZ3V0dGVycywgbWVkaXVtKSAvIDIpO1xyXG4gICAgICBwYWRkaW5nLXJpZ2h0OiByZW0tY2FsYyhtYXAtZ2V0KCRncmlkLW1hcmdpbi1ndXR0ZXJzLCBtZWRpdW0pIC8gMik7XHJcbiAgICB9XHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICAgIGZsZXgtYmFzaXM6IDIwJTtcclxuICAgICAgbWF4LXdpZHRoOiAyMCU7XHJcbiAgICB9XHJcbiAgICBhIHtcclxuICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDEwIDAgNDApO1xyXG4gICAgICBtYXgtd2lkdGg6IHJlbS1jYWxjKDExNSk7XHJcbiAgICAgIG1hcmdpbjogMCBhdXRvO1xyXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG4gICAgICAgIG1heC13aWR0aDogcmVtLWNhbGMoMTUwKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCJzZWN0aW9uLm5ld3Mge1xyXG4gIHBhZGRpbmc6IDA7XHJcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICBiYWNrZ3JvdW5kOiAkd2hpdGU7XHJcbiAgLnJvdyB7XHJcbiAgICAmOmJlZm9yZSxcclxuICAgICY6YWZ0ZXIge1xyXG4gICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgfVxyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XHJcbiAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICB9XHJcbiAgICAuY29udGVudCB7XHJcbiAgICAgIGZsZXg6IDEgMSA1MCU7XHJcbiAgICAgIGZsZXgtYmFzaXM6IDUwJTtcclxuICAgICAgbWF4LXdpZHRoOiByZW0tY2FsYyg0NDApO1xyXG4gICAgICBAYXQtcm9vdCAucG9zdC10eXBlLWFyY2hpdmUtZXZlbnQgJiB7XHJcbiAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgIGZsZXg6IDEgMSAxMDAlO1xyXG4gICAgICBmbGV4LWJhc2lzOiAxMDAlO1xyXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICAgICAgICBvcmRlcjogMTtcclxuICAgICAgICAgIGZsZXgtYmFzaXM6IDUwJTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIC50aXRsZSxcclxuICAgIC5zZWFyY2gge1xyXG4gICAgICBAaW5jbHVkZSBncmlkLWNvbHVtbigxMik7XHJcbiAgICAgIHBhZGRpbmctdG9wOiByZW0tY2FsYygyMCk7XHJcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuICAgICAgICBwYWRkaW5nLXRvcDogcmVtLWNhbGMoODApO1xyXG4gICAgICAgIHBhZGRpbmctYm90dG9tOiByZW0tY2FsYyg0MCk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgICYuYm9keS1wdXNoICsgLnJvdy5ib2R5LXB1c2gge1xyXG4gICAgICAudGl0bGUge1xyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuICAgICAgICAgIHBhZGRpbmctdG9wOiByZW0tY2FsYygyMCk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAubmV3cyxcclxuICAgIC5pbnNpZ2h0cyB7XHJcbiAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDEgb2YgMSwgMCk7XHJcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XHJcbiAgICAgICAgd2lkdGg6IDUwJTtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIC5hcnRpY2xlIHtcclxuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtZ3JheTtcclxuICAgICAgZmxleDogMSAwIDA7XHJcbiAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgIGNvbG9yOiAkYmxhY2s7XHJcbiAgICAgIGp1c3RpZnktY29udGVudDogc3RyZXRjaDtcclxuICAgICAgbWluLWhlaWdodDogNjB2dztcclxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuICAgICAgICBtaW4taGVpZ2h0OiAzMHZ3O1xyXG4gICAgICAgIGZsZXg6IDEgMCBhdXRvO1xyXG4gICAgICB9XHJcbiAgICAgIC5iZy1pbWFnZSB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2NjYztcclxuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xyXG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGZsZXg6IDAgMCBhdXRvO1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XHJcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgICAgbGVmdDogMDtcclxuICAgICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC40KTtcclxuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNjUpIDAlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDApIDgwJSk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICBAYXQtcm9vdCAucG9zdC10eXBlLWFyY2hpdmUtZXZlbnQgJiB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuNik7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJi5uby1vdmVybGF5IHtcclxuICAgICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgYSB7XHJcbiAgICAgICAgICBjb2xvcjogJGJsYWNrO1xyXG4gICAgICAgIH1cclxuICAgICAgICBwLmxhYmVsIHtcclxuICAgICAgICAgIGNvbG9yOiAkZ2FtLXB1cnBsZTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgYSxcclxuICAgICAgc3Bhbi5uby1saW5rIHtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xyXG4gICAgICAgIGZsZXg6IDEgMCAxMDAlO1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICB6LWluZGV4OiAyO1xyXG4gICAgICAgIGNvbG9yOiAkYmxhY2s7XHJcbiAgICAgICAgcGFkZGluZy1sZWZ0OiByZW0tY2FsYyhtYXAtZ2V0KCRncmlkLW1hcmdpbi1ndXR0ZXJzLCBzbWFsbCkgLyAyKTtcclxuICAgICAgICBwYWRkaW5nLXJpZ2h0OiByZW0tY2FsYyhtYXAtZ2V0KCRncmlkLW1hcmdpbi1ndXR0ZXJzLCBzbWFsbCkgLyAyKTtcclxuICAgICAgICBwYWRkaW5nLXRvcDogcmVtLWNhbGMoMjApO1xyXG4gICAgICAgIHBhZGRpbmctYm90dG9tOiByZW0tY2FsYygyMCk7XHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuICAgICAgICAgIHBhZGRpbmctbGVmdDogcmVtLWNhbGMobWFwLWdldCgkZ3JpZC1tYXJnaW4tZ3V0dGVycywgbWVkaXVtKSAvIDIpO1xyXG4gICAgICAgICAgcGFkZGluZy1yaWdodDogcmVtLWNhbGMobWFwLWdldCgkZ3JpZC1tYXJnaW4tZ3V0dGVycywgbWVkaXVtKSAvIDIpO1xyXG4gICAgICAgIH1cclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xyXG4gICAgICAgICAgcGFkZGluZy10b3A6IHJlbS1jYWxjKDgwKTtcclxuICAgICAgICAgIHBhZGRpbmctYm90dG9tOiByZW0tY2FsYyg4MCk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC53cmFwcGVyIHtcclxuICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIH1cclxuICAgICAgICAucm93IHtcclxuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IHJlbS1jYWxjKG1hcC1nZXQoJGdyaWQtbWFyZ2luLWd1dHRlcnMsIHNtYWxsKSAvIDIpICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiByZW0tY2FsYyhtYXAtZ2V0KCRncmlkLW1hcmdpbi1ndXR0ZXJzLCBtZWRpdW0pIC8gMikgIWltcG9ydGFudDtcclxuICAgICAgICAgIH1cclxuICAgICAgICAgIG1heC13aWR0aDogcmVtLWNhbGMoNTAwKTtcclxuICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmID4gaDIsXHJcbiAgICAgICAgJiA+IHAsXHJcbiAgICAgICAgJiA+IC53cmFwcGVyIC50ZXh0IHtcclxuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeHhsYXJnZSkge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBncmlkLWNvbC1zaXplKDcgb2YgMTIpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICBwLmxhYmVsIHtcclxuICAgICAgICBjb2xvcjogJGdhbS1wdXJwbGU7XHJcbiAgICAgIH1cclxuICAgICAgaDIge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IGF1dG87XHJcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYyhtYXAtZGVlcC1nZXQoJGhlYWRlci1zdHlsZXMsIHNtYWxsLCBoNCwgZm9udC1zaXplKSk7XHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMobWFwLWRlZXAtZ2V0KCRoZWFkZXItc3R5bGVzLCBtZWRpdW0sIGg0LCBmb250LXNpemUpKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xyXG4gICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYyhtYXAtZGVlcC1nZXQoJGhlYWRlci1zdHlsZXMsIG1lZGl1bSwgaDMsIGZvbnQtc2l6ZSkpO1xyXG4gICAgICAgIH1cclxuICAgICAgICArIHAge1xyXG4gICAgICAgICAgbWFyZ2luLXRvcDogcmVtLWNhbGMoMjApO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICAud3JhcHBlciB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IGF1dG87XHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xyXG4gICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcclxuICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgc3Bhbi5idXR0b24ge1xyXG4gICAgICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKDMwKTtcclxuICAgICAgICBiYWNrZ3JvdW5kOiAkZ2FtLXB1cnBsZTtcclxuICAgICAgICBjb2xvcjogJHdoaXRlO1xyXG4gICAgICAgIGFsaWduLXNlbGY6IGZsZXgtc3RhcnQ7XHJcbiAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XHJcbiAgICAgICAgICBjb2xvcjogJGdhbS1wdXJwbGU7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIC5pY29uIHtcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgIEBhdC1yb290IC5wb3N0LXR5cGUtYXJjaGl2ZS1ldmVudCAmIHtcclxuICAgICAgICAgIC8vIHdpZHRoOiBhdXRvO1xyXG4gICAgICAgICAgLy8gbWF4LXdpZHRoOiByZW0tY2FsYygzMDApO1xyXG4gICAgICAgICAgZmxleDogMSAxIDEwMCU7XHJcbiAgICAgICAgICBmbG9hdDogbm9uZTtcclxuICAgICAgICAgIHdpZHRoOiByZW0tY2FsYygxMDApO1xyXG4gICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICAgICAgICBmbGV4LWJhc2lzOiA1MCU7XHJcbiAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcclxuICAgICAgICAgIG9yZGVyOiAyO1xyXG4gICAgICAgICAgd2lkdGg6IHJlbS1jYWxjKDI0MCk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICBpbWcge1xyXG4gICAgICAgICAgICBmbG9hdDogbm9uZTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgaW1nIHtcclxuICAgICAgICAgIG1heC13aWR0aDogcmVtLWNhbGMoMjAwKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XHJcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICB9XHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcclxuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgb3JkZXI6IDI7XHJcbiAgICAgICAgICBmbGV4LWdyb3c6IDE7XHJcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgICYud2hpdGUge1xyXG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XHJcbiAgICAgICAgYSB7XHJcbiAgICAgICAgICBjb2xvcjogJHdoaXRlO1xyXG4gICAgICAgIH1cclxuICAgICAgICBwLmxhYmVsIHtcclxuICAgICAgICAgIGNvbG9yOiAkZ2FtLXllbGxvdztcclxuICAgICAgICB9XHJcbiAgICAgICAgc3Bhbi5idXR0b24ge1xyXG4gICAgICAgICAgYmFja2dyb3VuZDogJHdoaXRlO1xyXG4gICAgICAgICAgY29sb3I6ICRnYW0tcHVycGxlO1xyXG4gICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICRnYW0teWVsbG93O1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAuYmctaW1hZ2Uge1xyXG4gICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuNSk7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHJnYmEoMCwgMCwgMCwgMC42NSkgMCUsIHJnYmEoMCwgMCwgMCwgMCkgODAlKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgYSB7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAuaW5zaWdodHMge1xyXG4gICAgICAuYXJ0aWNsZSB7XHJcbiAgICAgICAgYSB7XHJcbiAgICAgICAgICBoMiB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDIwKTtcclxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuICAgICAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDQwKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoNjApO1xyXG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoNzApO1xyXG4gICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjE7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XHJcbiAgICAgICAgICAgIHAge1xyXG4gICAgICAgICAgICAgIEBpbmNsdWRlIGdyaWQtY29sLXNpemUoNyBvZiAxMik7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuICAgICYubm8taW5zaWdodCB7XHJcbiAgICAgIC5yb3cge1xyXG4gICAgICAgIC5uZXdzIHtcclxuICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XHJcbiAgICAgICAgICA+IGRpdiB7XHJcbiAgICAgICAgICAgIG1heC13aWR0aDogNTAlO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICA+IC5saW5rIHtcclxuICAgIHBhZGRpbmc6IHJlbS1jYWxjKDIwIDApO1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuICAgICAgcGFkZGluZzogcmVtLWNhbGMoNjAgMCk7XHJcbiAgICB9XHJcbiAgICAuYnV0dG9uIHtcclxuICAgICAgbWFyZ2luOiAwO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCIvLyBTZWUgX25ld3Muc2NzcyBmb3IgcGFyZW50IHN0eWxlc1xyXG5zZWN0aW9uLm5ld3MucHJvZHVjdHMge1xyXG4gIC5uZXdzLFxyXG4gIC5pbWFnZXMge1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcclxuICAgIGZsZXgtd3JhcDogd3JhcDtcclxuICB9XHJcbiAgLm5ld3Mge1xyXG4gICAgLmFydGljbGUge1xyXG4gICAgICBmbGV4OiAxIDEgMTAwJTtcclxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuICAgICAgICB3aWR0aDogNTAlO1xyXG4gICAgICAgIGZsZXg6IDEgMSA1MCU7XHJcbiAgICAgIH1cclxuICAgICAgaDMge1xyXG4gICAgICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKDgpO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDIwKTtcclxuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKG1hcC1kZWVwLWdldCgkaGVhZGVyLXN0eWxlcywgc21hbGwsIGgyLCBmb250LXNpemUpKTtcclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG4gICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYyhtYXAtZGVlcC1nZXQoJGhlYWRlci1zdHlsZXMsIG1lZGl1bSwgaDIsIGZvbnQtc2l6ZSkpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICAuaWNvbiB7XHJcbiAgICAgICAgaW1nIHtcclxuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IHJlbS1jYWxjKDIwKTtcclxuICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5zZWN0aW9uLnJlbGF0ZWQtcHJvZHVjdHMge1xyXG4gIC5yb3cge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAmLmNvbHVtbnMge1xyXG4gICAgICBtYXJnaW4tdG9wOiByZW0tY2FsYyhtYXAtZ2V0KCRncmlkLW1hcmdpbi1ndXR0ZXJzLCBzbWFsbCkgLyAtMik7XHJcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogcmVtLWNhbGMobWFwLWdldCgkZ3JpZC1tYXJnaW4tZ3V0dGVycywgbWVkaXVtKSAvIC0yKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICAuaW1hZ2VzIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XHJcbiAgICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICAgIHBhZGRpbmctYm90dG9tOiByZW0tY2FsYyg0MCk7XHJcbiAgICB9XHJcbiAgICAuYXJ0aWNsZSB7XHJcbiAgICAgIGZsZXg6IDEgMSAxMDAlO1xyXG4gICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcclxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuICAgICAgICB3aWR0aDogMzMuMzMzMyU7XHJcbiAgICAgICAgZmxleDogMCAxIDMzLjMzMzMlO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDIwKTtcclxuICAgICAgICBtaW4taGVpZ2h0OiBhdXRvO1xyXG4gICAgICB9XHJcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuICAgICAgICB3aWR0aDogMjUlO1xyXG4gICAgICAgIGZsZXg6IDAgMSAyNSU7XHJcbiAgICAgICAgbWluLWhlaWdodDogYXV0bztcclxuICAgICAgfVxyXG4gICAgICBhIHtcclxuICAgICAgICBwYWRkaW5nLXRvcDogcmVtLWNhbGMobWFwLWdldCgkZ3JpZC1tYXJnaW4tZ3V0dGVycywgc21hbGwpIC8gMik7XHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuICAgICAgICAgIHBhZGRpbmctdG9wOiByZW0tY2FsYyhtYXAtZ2V0KCRncmlkLW1hcmdpbi1ndXR0ZXJzLCBtZWRpdW0pIC8gMik7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHBhZGRpbmctYm90dG9tOiByZW0tY2FsYygyMCk7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgPiBwIHtcclxuICAgICAgICAgIHdpZHRoOiBhdXRvO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICBpbWcge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDIwKTtcclxuICAgICAgfVxyXG4gICAgICBoMyB7XHJcbiAgICAgICAgY29sb3I6ICRnYW0tcHVycGxlO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMobWFwLWRlZXAtZ2V0KCRoZWFkZXItc3R5bGVzLCBzbWFsbCwgaDUsIGZvbnQtc2l6ZSkpO1xyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XHJcbiAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKG1hcC1kZWVwLWdldCgkaGVhZGVyLXN0eWxlcywgbWVkaXVtLCBoNSwgZm9udC1zaXplKSk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XHJcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICB0b3A6IHJlbS1jYWxjKC0yKTtcclxuICAgICAgICAgIHJpZ2h0OiBhdXRvO1xyXG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IHJlbS1jYWxjKC0yMCk7XHJcbiAgICAgICAgICBtYXJnaW4tdG9wOiBhdXRvO1xyXG4gICAgICAgICAgYm9yZGVyOiAycHggc29saWQgdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgICBib3JkZXItcmlnaHQtY29sb3I6ICRnYW0tcHVycGxlO1xyXG4gICAgICAgICAgYm9yZGVyLXRvcC1jb2xvcjogJGdhbS1wdXJwbGU7XHJcbiAgICAgICAgICB3aWR0aDogcmVtLWNhbGMoMTApO1xyXG4gICAgICAgICAgaGVpZ2h0OiByZW0tY2FsYygxMCk7XHJcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZykgdHJhbnNsYXRlKDIwcHgsIC0xOHB4KTtcclxuICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcclxuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xyXG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogcmVtLWNhbGMoLTI1KTtcclxuICAgICAgICAgICAgdG9wOiByZW0tY2FsYygtMSk7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKSB0cmFuc2xhdGUoMjBweCwgLTE4cHgpIHNjYWxlKDAuOCk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgICYubGlnaHQgaDMge1xyXG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XHJcbiAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICBib3JkZXItcmlnaHQtY29sb3I6ICR3aGl0ZTtcclxuICAgICAgICAgIGJvcmRlci10b3AtY29sb3I6ICR3aGl0ZTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgaDMge1xyXG4gICAgICAgICAgY29sb3I6ICRibGFjaztcclxuICAgICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICBib3JkZXItcmlnaHQtY29sb3I6ICRibGFjaztcclxuICAgICAgICAgICAgYm9yZGVyLXRvcC1jb2xvcjogJGJsYWNrO1xyXG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogcmVtLWNhbGMoLTEwKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgJi5saWdodDpob3ZlciBoMyB7XHJcbiAgICAgICAgY29sb3I6ICRnYW0teWVsbG93O1xyXG4gICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiAkZ2FtLXllbGxvdztcclxuICAgICAgICAgIGJvcmRlci10b3AtY29sb3I6ICRnYW0teWVsbG93O1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCIvLyBTZWUgX25ld3Muc2NzcyBmb3IgcGFyZW50IHN0eWxlc1xyXG5zZWN0aW9uLm5ld3MuYmxvZyB7XHJcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xyXG4gIC5uZXdzIHtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XHJcbiAgICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgICAuYXJ0aWNsZSB7XHJcbiAgICAgIGZsZXg6IDEgMSAxMDAlO1xyXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG4gICAgICAgIG1pbi13aWR0aDogNTAlO1xyXG4gICAgICAgIGZsZXg6IDEgMSA1MCU7XHJcbiAgICAgIH1cclxuICAgICAgJjpudGgtY2hpbGQoNW4gKyAxKSB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogJGdhbS1wdXJwbGUtZGFyaztcclxuICAgICAgICAmOm5vdCguYmxhY2spIHtcclxuICAgICAgICAgIEBleHRlbmQgLndoaXRlO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICAmOm50aC1jaGlsZCg1biArIDIpIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheTtcclxuICAgICAgfVxyXG4gICAgICAmOm50aC1jaGlsZCg1biArIDMpIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiAkZ2FtLXllbGxvdztcclxuICAgICAgfVxyXG4gICAgICAmOm50aC1jaGlsZCg1biArIDQpIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiAkZGFyay1ncmF5O1xyXG4gICAgICB9XHJcbiAgICAgICY6bnRoLWNoaWxkKDVuICsgNSkge1xyXG4gICAgICAgIGJhY2tncm91bmQ6ICRibGFjaztcclxuICAgICAgICAmOm5vdCguYmxhY2spIHtcclxuICAgICAgICAgIEBleHRlbmQgLndoaXRlO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgJi51cGNvbWluZyB7XHJcbiAgICAgIC5hcnRpY2xlOmZpcnN0LWNoaWxkIHtcclxuICAgICAgICBmbGV4OiAxIDAgMTAwJTtcclxuICAgICAgICBtaW4taGVpZ2h0OiA0MHZ3O1xyXG4gICAgICAgIGEge1xyXG4gICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAgICAud3JhcHBlciB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gICYucmVsYXRlZCB7XHJcbiAgICBib3JkZXItdG9wLWNvbG9yOiAkbWVkaXVtLWdyYXk7XHJcbiAgfVxyXG4gICYuc2ltcGxlIHtcclxuICAgIEBpbmNsdWRlIGdyaWQtcm93O1xyXG4gICAgcGFkZGluZzogcmVtLWNhbGMoMjAgMCk7XHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDgwIDApO1xyXG4gICAgfVxyXG4gICAgLnRpdGxlIHtcclxuICAgICAgcGFkZGluZy10b3A6IDA7XHJcbiAgICB9XHJcbiAgICAubmV3cyB7XHJcbiAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDEyKTtcclxuICAgICAgbWluLWhlaWdodDogYXV0bztcclxuICAgICAgLmFydGljbGUge1xyXG4gICAgICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcclxuICAgICAgICBtaW4taGVpZ2h0OiBhdXRvO1xyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XHJcbiAgICAgICAgICBtaW4td2lkdGg6IDEwMCU7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGEge1xyXG4gICAgICAgICAgcGFkZGluZzogMDtcclxuICAgICAgICAgIC53cmFwcGVyIHtcclxuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgcC5sYWJlbCB7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkYmxhY2sgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgaDIge1xyXG4gICAgICAgICAgICBjb2xvcjogJGdhbS1wdXJwbGU7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDIwKTtcclxuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgICBib3JkZXI6IDJweCBzb2xpZCB0cmFuc3BhcmVudDtcclxuICAgICAgICAgICAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkZ2FtLXB1cnBsZTtcclxuICAgICAgICAgICAgICBib3JkZXItcmlnaHQtY29sb3I6ICRnYW0tcHVycGxlO1xyXG4gICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XHJcbiAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgICAgICAgIGhlaWdodDogcmVtLWNhbGMoMTQpO1xyXG4gICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiByZW0tY2FsYygxMCk7XHJcbiAgICAgICAgICAgICAgd2lkdGg6IHJlbS1jYWxjKDE0KTtcclxuICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAubGluayB7XHJcbiAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDEyKTtcclxuICAgICAgcGFkZGluZzogcmVtLWNhbGMoMjAgMCAwIDApO1xyXG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG4gICAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDgwIDAgMCAwKTtcclxuICAgICAgfVxyXG4gICAgICBhIHtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCJzZWN0aW9uLnRhYmJlZC1jb250ZW50IHtcclxuICAucm93IHtcclxuICAgIEBpbmNsdWRlIGdyaWQtcm93O1xyXG5cclxuICAgIC5pbnRybyB7XHJcbiAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDEyKTtcclxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDMwKTtcclxuICAgICAgICBAaW5jbHVkZSBncmlkLWNvbC1zaXplKDUpO1xyXG4gICAgICAgIC8vIG1heC13aWR0aDogcmVtLWNhbGMoMzgwKTtcclxuICAgICAgfVxyXG4gICAgICBoMiB7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMjApO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAudGFiLXdyYXBwZXIge1xyXG4gICAgICAudGFicy1jb250ZW50IHtcclxuICAgICAgICBjbGVhcjogYm90aDtcclxuICAgICAgICBib3JkZXI6IDA7XHJcbiAgICAgIH1cclxuICAgICAgLnRhYnMtcGFuZWwsXHJcbiAgICAgIC5hY2NvcmRpb24tY29udGVudCB7XHJcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1yb3coMCk7XHJcbiAgICAgICAgYm9yZGVyOiAwO1xyXG4gICAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDIwIDApO1xyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XHJcbiAgICAgICAgICBwYWRkaW5nOiByZW0tY2FsYyg2MCAwKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgLnRpdGxlIHtcclxuICAgICAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDEyKTtcclxuICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgICBjbGVhcjogYm90aDtcclxuICAgICAgICB9XHJcbiAgICAgICAgLmNvbHVtbiB7XHJcbiAgICAgICAgICBAaW5jbHVkZSBncmlkLWNvbHVtbigxMik7XHJcbiAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2wtc2l6ZSg2KTtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoLTIwKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XHJcbiAgICAgICAgICAgICY6Zmlyc3QtY2hpbGQge1xyXG4gICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IHJlbS1jYWxjKDUwKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xyXG4gICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogcmVtLWNhbGMoNTApO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICA+IGltZyB7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMCAwIHJlbS1jYWxjKDIwKSBhdXRvO1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XHJcbiAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiByZW0tY2FsYygzMCk7XHJcbiAgICAgICAgICAgICAgbWF4LXdpZHRoOiByZW0tY2FsYyg0MDApO1xyXG4gICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICAuYnV0dG9uIHtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogcmVtLWNhbGMoMTUpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgLnN0YXQge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE0KTtcclxuICAgICAgICAgICAgbWF4LXdpZHRoOiByZW0tY2FsYygzMDApO1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygzMCk7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuICAgICAgICAgICAgICBAaW5jbHVkZSBncmlkLWNvbC1wb3MoMSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgaDIge1xyXG4gICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XHJcbiAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRtZWRpdW0tZ3JheTtcclxuICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogcmVtLWNhbGMoMyk7XHJcbiAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoOCk7XHJcbiAgICAgICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygzMik7XHJcbiAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoNjIpO1xyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBwIHtcclxuICAgICAgICAgICAgICBmb250LXNpemU6ICRnbG9iYWwtZm9udC1zaXplO1xyXG4gICAgICAgICAgICAgIGNvbG9yOiAkZ2FtLXB1cnBsZTtcclxuICAgICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xyXG4gICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjI7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgaDMge1xyXG4gICAgICAgICAgY29sb3I6ICRnYW0tcHVycGxlO1xyXG4gICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYyhtYXAtZGVlcC1nZXQoJGhlYWRlci1zdHlsZXMsIHNtYWxsLCBoNiwgZm9udC1zaXplKSk7XHJcbiAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS4yO1xyXG4gICAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKG1hcC1kZWVwLWdldCgkaGVhZGVyLXN0eWxlcywgbWVkaXVtLCBoNiwgZm9udC1zaXplKSk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIEBhdC1yb290IGh0bWxbYW1wXSAmIHtcclxuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICBib2R5LnNpbmdsZS1jYXNlX3N0dWR5ICYge1xyXG4gICAgcGFkZGluZzogMDtcclxuICAgIHBhZGRpbmctbGVmdDogMCAhaW1wb3J0YW50O1xyXG4gICAgcGFkZGluZy1yaWdodDogMCAhaW1wb3J0YW50O1xyXG4gICAgLnRhYnMtd3JhcHBlciB7XHJcbiAgICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcclxuICAgICAgcGFkZGluZy1ib3R0b206IHJlbS1jYWxjKDQwKTtcclxuICAgICAgQGV4dGVuZCAuYm9keS1wdXNoO1xyXG4gICAgfVxyXG4gICAgLnRhYnMtY29udGVudCB7XHJcbiAgICAgIEBleHRlbmQgLmJvZHktcHVzaDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuZGl2LmV4cGFuZGFibGUge1xyXG4gIC5hY2NvcmRpb24taXRlbTpmaXJzdC1jaGlsZCA+IDpmaXJzdC1jaGlsZCB7XHJcbiAgICBib3JkZXItcmFkaXVzOiAwO1xyXG4gIH1cclxuICAuYWNjb3JkaW9uLXRpdGxlIHtcclxuICAgIGJhY2tncm91bmQ6ICRnYW0tcHVycGxlO1xyXG4gICAgYm9yZGVyLWJvdHRvbTogMDtcclxuICAgIGNvbG9yOiAkd2hpdGU7XHJcbiAgICBwYWRkaW5nOiByZW0tY2FsYygxMCA0MCk7XHJcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKG1hcC1kZWVwLWdldCgkaGVhZGVyLXN0eWxlcywgc21hbGwsIGg2LCBmb250LXNpemUpKTtcclxuICAgIHotaW5kZXg6IDM7XHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKG1hcC1kZWVwLWdldCgkaGVhZGVyLXN0eWxlcywgbWVkaXVtLCBoNiwgZm9udC1zaXplKSk7XHJcbiAgICB9XHJcbiAgICAmOmJlZm9yZSB7XHJcbiAgICAgIHJpZ2h0OiByZW0tY2FsYyg0MCk7XHJcbiAgICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKC0xMCk7XHJcbiAgICB9XHJcbiAgfVxyXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcclxuICAgIC5hY2NvcmRpb24taXRlbSB7XHJcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIH1cclxuICB9XHJcbiAgLmFjY29yZGlvbi1jb250ZW50IHtcclxuICAgIHBhZGRpbmc6IDA7XHJcbiAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XHJcbiAgICBwYWRkaW5nOiByZW0tY2FsYyg0MCk7XHJcbiAgICBib3JkZXI6IDAgIWltcG9ydGFudDtcclxuICAgIG1hcmdpbi1sZWZ0OiByZW0tY2FsYyhtYXAtZ2V0KCRncmlkLW1hcmdpbi1ndXR0ZXJzLCBzbWFsbCkgLyAyKTtcclxuICAgIG1hcmdpbi1yaWdodDogcmVtLWNhbGMobWFwLWdldCgkZ3JpZC1tYXJnaW4tZ3V0dGVycywgc21hbGwpIC8gMik7XHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG4gICAgICBtYXJnaW4tbGVmdDogcmVtLWNhbGMobWFwLWdldCgkZ3JpZC1tYXJnaW4tZ3V0dGVycywgbWVkaXVtKSAvIDIpO1xyXG4gICAgICBtYXJnaW4tcmlnaHQ6IHJlbS1jYWxjKG1hcC1nZXQoJGdyaWQtbWFyZ2luLWd1dHRlcnMsIG1lZGl1bSkgLyAyKTtcclxuICAgIH1cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcclxuICAgICAgb3ZlcmZsb3cteDogYXV0bztcclxuICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgY29udGVudDogXCJcIjtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgcmlnaHQ6IHJlbS1jYWxjKG1hcC1nZXQoJGdyaWQtbWFyZ2luLWd1dHRlcnMsIG1lZGl1bSkgLyAyKTtcclxuICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgYm90dG9tOiAwO1xyXG4gICAgICAgIHdpZHRoOiByZW0tY2FsYygxNTApO1xyXG4gICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byBsZWZ0LCByZ2JhKCR3aGl0ZSwxKSAwJSwgcmdiYSgkd2hpdGUsMCkgMTAwJSk7XHJcbiAgICAgICAgei1pbmRleDogMjtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XHJcbiAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgIHJpZ2h0OiByZW0tY2FsYyhtYXAtZ2V0KCRncmlkLW1hcmdpbi1ndXR0ZXJzLCBzbWFsbCkgLyAyKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICB0YWJsZSB7XHJcbiAgICBtaW4td2lkdGg6IHJlbS1jYWxjKDkwMCk7XHJcbiAgICBib3JkZXI6IDA7XHJcbiAgICB0ZCxcclxuICAgIHRoLFxyXG4gICAgdHIsXHJcbiAgICB0aGVhZCxcclxuICAgIHRib2R5IHtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcclxuICAgICAgYm9yZGVyOiAwO1xyXG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE1KTtcclxuICAgIH1cclxuICAgIHRkLFxyXG4gICAgdGgge1xyXG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xyXG4gICAgICBwYWRkaW5nOiByZW0tY2FsYygxMCA1KTtcclxuICAgICAgJi5ib3JkZXItbGVmdCB7XHJcbiAgICAgICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAkYmxhY2s7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIHRyLmJvcmRlci10b3Age1xyXG4gICAgICBib3JkZXItdG9wOiAxcHggc29saWQgJGJsYWNrO1xyXG4gICAgfVxyXG4gICAgdGhlYWQge1xyXG4gICAgICB0aCB7XHJcbiAgICAgICAgdmVydGljYWwtYWxpZ246IGJvdHRvbTtcclxuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGJsYWNrO1xyXG4gICAgICAgIHBhZGRpbmctdG9wOiByZW0tY2FsYygyMCk7XHJcbiAgICAgICAgcGFkZGluZy1ib3R0b206IHJlbS1jYWxjKDIwKTtcclxuICAgICAgICBpbWcge1xyXG4gICAgICAgICAgaGVpZ2h0OiByZW0tY2FsYygyNSk7XHJcbiAgICAgICAgICB3aWR0aDogYXV0bztcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbnVsLnRhYnMge1xyXG4gIGJvcmRlcjogMDtcclxuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJG1lZGl1bS1ncmF5O1xyXG4gIG1hcmdpbi1sZWZ0OiByZW0tY2FsYyhtYXAtZ2V0KCRncmlkLW1hcmdpbi1ndXR0ZXJzLCBzbWFsbCkgLyAyKTtcclxuICBtYXJnaW4tcmlnaHQ6IHJlbS1jYWxjKG1hcC1nZXQoJGdyaWQtbWFyZ2luLWd1dHRlcnMsIHNtYWxsKSAvIDIpO1xyXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XHJcbiAgICBtaW4td2lkdGg6IDMzLjMzMzMlO1xyXG4gICAgbWFyZ2luLWxlZnQ6IHJlbS1jYWxjKG1hcC1nZXQoJGdyaWQtbWFyZ2luLWd1dHRlcnMsIG1lZGl1bSkgLyAyKTtcclxuICAgIG1hcmdpbi1yaWdodDogcmVtLWNhbGMobWFwLWdldCgkZ3JpZC1tYXJnaW4tZ3V0dGVycywgbWVkaXVtKSAvIDIpO1xyXG4gIH1cclxuICBAYXQtcm9vdCBodG1sW2FtcF0gJiB7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG4gIH1cclxufVxyXG4udGFicy10aXRsZSB7XHJcbiAgPiBhIHtcclxuICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1tZWRpdW07XHJcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDE1KTtcclxuICAgIGNvbG9yOiAkYmxhY2s7XHJcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XHJcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xyXG4gICAgbWFyZ2luLWxlZnQ6IHJlbS1jYWxjKDUpO1xyXG4gICAgbWFyZ2luLXJpZ2h0OiByZW0tY2FsYyg1KTtcclxuICAgIGJvcmRlci1ib3R0b206IDRweCBzb2xpZCB0cmFuc3BhcmVudDtcclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuICAgICAgbWFyZ2luLWxlZnQ6IHJlbS1jYWxjKDIwKTtcclxuICAgICAgbWFyZ2luLXJpZ2h0OiByZW0tY2FsYygyMCk7XHJcbiAgICB9XHJcbiAgICAmOmZvY3VzLFxyXG4gICAgJlthcmlhLXNlbGVjdGVkPVwidHJ1ZVwiXSB7XHJcbiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xyXG4gICAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkZ2FtLXB1cnBsZTtcclxuICAgICAgb3V0bGluZTogbm9uZTtcclxuICAgIH1cclxuICB9XHJcbiAgJjpmaXJzdC1jaGlsZCA+IGEge1xyXG4gICAgbWFyZ2luLWxlZnQ6IDA7XHJcbiAgfVxyXG59XHJcbi5hY2NvcmRpb24tdGl0bGUge1xyXG4gIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1tZWRpdW07XHJcbiAgYm9yZGVyOiAwO1xyXG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkbGlnaHQtZ3JheTtcclxuICBwYWRkaW5nLWxlZnQ6IDA7XHJcbiAgcGFkZGluZy1yaWdodDogMDtcclxuICBtYXJnaW4tbGVmdDogcmVtLWNhbGMobWFwLWdldCgkZ3JpZC1tYXJnaW4tZ3V0dGVycywgc21hbGwpIC8gMik7XHJcbiAgbWFyZ2luLXJpZ2h0OiByZW0tY2FsYyhtYXAtZ2V0KCRncmlkLW1hcmdpbi1ndXR0ZXJzLCBzbWFsbCkgLyAyKTtcclxuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG4gICAgbWFyZ2luLWxlZnQ6IHJlbS1jYWxjKG1hcC1nZXQoJGdyaWQtbWFyZ2luLWd1dHRlcnMsIG1lZGl1bSkgLyAyKTtcclxuICAgIG1hcmdpbi1yaWdodDogcmVtLWNhbGMobWFwLWdldCgkZ3JpZC1tYXJnaW4tZ3V0dGVycywgbWVkaXVtKSAvIDIpO1xyXG4gIH1cclxuICAmOmhvdmVyLFxyXG4gICY6Zm9jdXMge1xyXG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XHJcbiAgICBib3JkZXItY29sb3I6ICRnYW0tcHVycGxlO1xyXG4gICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMnB4O1xyXG4gIH1cclxufVxyXG4ubGlnaHQge1xyXG4gIC50YWJzIHtcclxuICAgIGEge1xyXG4gICAgICBjb2xvcjogJHdoaXRlO1xyXG4gICAgICBvcGFjaXR5OiAwLjc7XHJcbiAgICB9XHJcbiAgICAudGFicy10aXRsZSA+IGE6Zm9jdXMsXHJcbiAgICAudGFicy10aXRsZSA+IGFbYXJpYS1zZWxlY3RlZD1cInRydWVcIl0ge1xyXG4gICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkd2hpdGU7XHJcbiAgICB9XHJcbiAgfVxyXG4gIC50YWJzLWNvbnRlbnQge1xyXG4gICAgY29sb3I6ICR3aGl0ZTtcclxuICB9XHJcbiAgZGl2LmV4cGFuZGFibGUge1xyXG4gICAgLmFjY29yZGlvbi10aXRsZSB7XHJcbiAgICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcclxuICAgICAgY29sb3I6ICRnYW0tcHVycGxlO1xyXG4gICAgfVxyXG4gICAgLmFjY29yZGlvbi1jb250ZW50IHtcclxuICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XHJcbiAgICAgIGNvbG9yOiAkd2hpdGU7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsInNlY3Rpb24udXNlci1ndWlkZXMge1xyXG4gIGgyIHtcclxuICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDEyKTtcclxuICAgIGZsb2F0OiBub25lICFpbXBvcnRhbnQ7XHJcbiAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygyMCk7XHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYyg0MCk7XHJcbiAgICB9XHJcbiAgfVxyXG4gIC5mZWF0dXJlZC1ndWlkZXMtbGlzdCB7XHJcbiAgICBwYWRkaW5nOiAwIHJlbS1jYWxjKDcwKTtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIC5zbGlkZSB7XHJcbiAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDEyKTtcclxuICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMjApO1xyXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG4gICAgICAgIEBpbmNsdWRlIGdyaWQtY29sLXNpemUoMik7XHJcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tZW5kO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDUwKTtcclxuICAgICAgfVxyXG4gICAgICAuY2FyZC1jb250YWluZXIge1xyXG4gICAgICAgIG1heC13aWR0aDogcmVtLWNhbGMoMTUwKTtcclxuICAgICAgICBtYXJnaW46IDAgYXV0bztcclxuICAgICAgICBpbWcge1xyXG4gICAgICAgICAgYm94LXNoYWRvdzogMCAwIDEwcHggJGRhcmstZ3JheTtcclxuICAgICAgICAgIG1heC13aWR0aDogcmVtLWNhbGMoMTAwKTtcclxuICAgICAgICAgIG1hcmdpbjogcmVtLWNhbGMoMjUgMCAxNSAwKTtcclxuICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIH1cclxuICAgICAgICBwIHtcclxuICAgICAgICAgIG1heC13aWR0aDogcmVtLWNhbGMoMTUwKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgdWwuYWxsLWd1aWRlcy1saXN0IHtcclxuICAgIGJvcmRlcjogbm9uZTtcclxuICAgIC5hY2NvcmRpb24taXRlbSB7XHJcbiAgICAgIGJvcmRlci1ib3R0b206IDA7XHJcbiAgICAgIC5hY2NvcmRpb24tdGl0bGUge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRnYW0tcHVycGxlO1xyXG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XHJcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYyhtYXAtZGVlcC1nZXQoJGhlYWRlci1zdHlsZXMsIHNtYWxsLCBoMywgZm9udC1zaXplKSk7XHJcbiAgICAgICAgcGFkZGluZzogcmVtLWNhbGMoMTAgMjApO1xyXG4gICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICR3aGl0ZTtcclxuICAgICAgICAgIGJvcmRlci1yaWdodC1jb2xvcjogJHdoaXRlO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICAuYWNjb3JkaW9uLWNvbnRlbnQge1xyXG4gICAgICAgIGJvcmRlcjogbm9uZTtcclxuICAgICAgICBwYWRkaW5nOiByZW0tY2FsYygzMCAyMCk7XHJcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgICAuY29sdW1uIHtcclxuICAgICAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDEyKTtcclxuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGdyaWQtY29sLXNpemUoNCk7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uLWVuZDtcclxuICAgICAgICAgIH1cclxuICAgICAgICAgIGgzIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYyhtYXAtZGVlcC1nZXQoJGhlYWRlci1zdHlsZXMsIHNtYWxsLCBoNCwgZm9udC1zaXplKSk7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDIwKTtcclxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygzMCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICAgIHVsIHtcclxuICAgICAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICAgICAgICBsaSB7XHJcbiAgICAgICAgICAgICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuc2xpY2stYXJyb3cge1xyXG4gICAgdG9wOiAzMCU7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XHJcbiAgfVxyXG59XHJcbiIsInNlY3Rpb24udmlkZW8tbGlzdGluZyB7XHJcblx0Ym9yZGVyOiBub25lO1xyXG5cdCY6bnRoLWNoaWxkKG9kZCkge1xyXG5cdFx0YmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0LWdyYXk7XHJcblx0fVxyXG4gIFx0aDIge1xyXG4gIFx0XHRAaW5jbHVkZSBncmlkLWNvbHVtbigxMik7XHJcbiAgXHRcdG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDMwKTtcclxuICBcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuXHQgIFx0XHRtYXJnaW4tYm90dG9tOiByZW0tY2FsYyg2MCk7XHJcblx0ICBcdH1cclxuICBcdH1cclxuICBcdC52aWRlby1saXN0IHtcclxuXHQgICAgbWFyZ2luOiAwO1xyXG5cdCAgICBwYWRkaW5nOiAwO1xyXG5cdCAgICBsaSB7XHJcblx0ICAgIFx0QGluY2x1ZGUgZ3JpZC1jb2x1bW4oMTIpO1xyXG5cdCAgICBcdEBpbmNsdWRlIGdyaWQtY29sdW1uLWVuZDtcclxuXHQgICAgICBcdGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcclxuXHQgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XHJcblx0ICAgICAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2wtc2l6ZSg2KTtcclxuXHQgICAgICAgIH1cclxuXHQgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuXHQgICAgICAgICAgICBAaW5jbHVkZSBncmlkLWNvbC1zaXplKDQpO1xyXG5cdCAgICAgICAgfVxyXG5cdCAgICAgICAgLnZpZGVvLXRpdGxlIHtcclxuXHQgICAgICAgIFx0Y29sb3I6ICRnYW0tcHVycGxlO1xyXG5cdCAgICAgICAgXHRmb250LXNpemU6IHJlbS1jYWxjKG1hcC1kZWVwLWdldCgkaGVhZGVyLXN0eWxlcywgc21hbGwsIGg0LCBmb250LXNpemUpKTtcclxuXHQgICAgICAgIFx0bWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMjApO1xyXG5cdCAgICAgICAgXHQmOmFmdGVyIHtcclxuXHRcdFx0XHRcdGNvbnRlbnQ6ICcnO1xyXG5cdFx0XHRcdFx0Ym9yZGVyOiByZW0tY2FsYygyKSBzb2xpZCB0cmFuc3BhcmVudDtcclxuXHRcdFx0XHRcdGJvcmRlci1yaWdodC1jb2xvcjogJGdhbS1wdXJwbGU7XHJcblx0XHRcdFx0XHRib3JkZXItYm90dG9tLWNvbG9yOiAkZ2FtLXB1cnBsZTtcclxuXHRcdFx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuXHRcdFx0XHRcdG1hcmdpbi1sZWZ0OiByZW0tY2FsYygxMCk7XHJcblx0XHRcdFx0XHR3aWR0aDogcmVtLWNhbGMoMTApO1xyXG5cdFx0XHRcdFx0aGVpZ2h0OiByZW0tY2FsYygxMCk7XHJcblx0XHRcdFx0XHR0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpO1xyXG5cdFx0XHRcdFx0dHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbi1vdXQ7XHJcblx0XHRcdCAgICB9XHJcblx0ICAgICAgICB9XHJcblx0ICAgICAgICBidXR0b24ge1xyXG5cdFx0XHRcdGJvcmRlci1yYWRpdXM6IDA7XHJcblx0ICAgICAgICBcdCY6aG92ZXIge1xyXG5cdCAgICAgICAgXHRcdGN1cnNvcjogcG9pbnRlcjtcclxuXHQgICAgICAgIFx0fVxyXG5cdCAgICAgICAgfVxyXG5cdCAgICAgICAgLnZpZGVvLXRodW1iIHtcclxuXHQgICAgICAgIFx0bWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMzApO1xyXG5cdCAgICAgICAgXHR3aWR0aDogMTAwJTtcclxuXHQgICAgICAgIFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuXHQgICAgICAgIFx0XHRtYXJnaW4tYm90dG9tOiByZW0tY2FsYyg1MCk7XHJcblx0ICAgICAgICBcdH1cclxuXHQgICAgICAgIH1cclxuICAgXHRcdH1cclxuICBcdH1cclxufSIsImJvZHkuc2luZ2xlLXByb2R1Y3Qge1xyXG4gICAgLmNhc2Utc3R1ZGllcyB7XHJcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRkYXJrLWdyYXk7XHJcbiAgICB9XHJcbn0iLCJib2R5LnNpbmdsZS1wYXJ0bmVyLFxyXG4jcGFydG5lci1yZXZlYWwge1xyXG4gIGFydGljbGUge1xyXG4gICAgY2xlYXI6IGJvdGg7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgZm9vdGVyIHtcclxuICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oMTIpO1xyXG4gICAgICBwYWRkaW5nLXRvcDogcmVtLWNhbGMoMjApO1xyXG4gICAgfVxyXG4gIH1cclxuICAucm93IHtcclxuICAgIEBpbmNsdWRlIGdyaWQtcm93O1xyXG4gICAgaGVhZGVyIHtcclxuICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oMTIpO1xyXG4gICAgfVxyXG4gIH1cclxuICAuY29udGVudCB7XHJcbiAgICBAaW5jbHVkZSBncmlkLWNvbHVtbigxMik7XHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG4gICAgICBAaW5jbHVkZSBncmlkLWNvbC1zaXplKDgpO1xyXG4gICAgfVxyXG4gIH1cclxuICAubG9nbyB7XHJcbiAgICBAaW5jbHVkZSBncmlkLWNvbHVtbigxMik7XHJcbiAgICBtYXgtd2lkdGg6IHJlbS1jYWxjKDIwMCk7XHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcclxuICAgICAgbWFyZ2luOiAwIGF1dG87XHJcbiAgICAgIGZsb2F0OiBub25lICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG4gICAgICBAaW5jbHVkZSBncmlkLWNvbC1zaXplKDMpO1xyXG4gICAgfVxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xyXG4gICAgICBAaW5jbHVkZSBncmlkLWNvbC1zaXplKDIpO1xyXG4gICAgfVxyXG4gIH1cclxuICBzZWN0aW9uLmhlcm8tc2xpZGUgLnNsaWRlIC5jb250ZW50ID4gaW1nLCBcclxuICBzZWN0aW9uLmhlcm8tc2xpZGUgLnNsaWRlIC5jb250ZW50ID4gcGljdHVyZSB7XHJcbiAgICBtYXgtd2lkdGg6IHJlbS1jYWxjKDIwMCk7XHJcbiAgICBtYXJnaW4tdG9wOiByZW0tY2FsYyg2MCk7XHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICAgIG1heC13aWR0aDogcmVtLWNhbGMoMzAwKTtcclxuICAgICAgbWFyZ2luLXRvcDogcmVtLWNhbGMoMTUwKTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuI3BhcnRuZXItcmV2ZWFsIHtcclxuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICBwYWRkaW5nOiByZW0tY2FsYygxMjAgMTAwIDEwMCk7XHJcbiAgfVxyXG4gIGgxIHtcclxuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMobWFwLWRlZXAtZ2V0KCRoZWFkZXItc3R5bGVzLCBzbWFsbCwgaDIsIGZvbnQtc2l6ZSkpO1xyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuICAgICAgZm9udC1zaXplOiByZW0tY2FsYyhtYXAtZGVlcC1nZXQoJGhlYWRlci1zdHlsZXMsIG1lZGl1bSwgaDIsIGZvbnQtc2l6ZSkpO1xyXG4gICAgfVxyXG4gIH1cclxuICAubG9nbyB7XHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG4gICAgICBAaW5jbHVkZSBncmlkLWNvbC1zaXplKDMpO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCJib2R5LnNpbmdsZS1hbXBsaWZ5LFxyXG5ib2R5LnNpbmdsZS1pbnNpZ2h0IHtcclxuICBzZWN0aW9uLmludHJvIHtcclxuICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcclxuICAgIC5yb3cge1xyXG4gICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcclxuICAgIH1cclxuICAgIC5jb250ZW50IHtcclxuICAgICAgbWF4LXdpZHRoOiBub25lO1xyXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG4gICAgICAgIHdpZHRoOiA0OCU7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIC5yaWdodCB7XHJcbiAgICAgIG1heC13aWR0aDogbm9uZTtcclxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuICAgICAgICB3aWR0aDogNDglO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG4gICAgICAmLnJldmVyc2Uge1xyXG4gICAgICAgIC5jb250ZW50IHtcclxuICAgICAgICAgIG9yZGVyOiAyO1xyXG4gICAgICAgIH1cclxuICAgICAgICAucmlnaHQge1xyXG4gICAgICAgICAgb3JkZXI6IDE7XHJcbiAgICAgICAgICAuY29udGVudCB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgLnR5cGUtc3RhdCxcclxuICAgIC50eXBlLXB1bGxvdXQge1xyXG4gICAgICAuY29udGVudCB7XHJcbiAgICAgICAgZmxvYXQ6IG5vbmU7XHJcbiAgICAgICAgcGFkZGluZzogMDtcclxuICAgICAgICBjb2xvcjogJGdhbS1wdXJwbGU7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgbWFyZ2luOiByZW0tY2FsYygyMCAwKTtcclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG4gICAgICAgICAgbWF4LXdpZHRoOiByZW0tY2FsYygzNTApO1xyXG4gICAgICAgICAgbWFyZ2luOiByZW0tY2FsYyg4KSBhdXRvO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgLnR5cGUtcHVsbG91dCB7XHJcbiAgICAgIHAge1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMjtcclxuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKG1hcC1kZWVwLWdldCgkaGVhZGVyLXN0eWxlcywgc21hbGwsIGg0LCBmb250LXNpemUpKTtcclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG4gICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYyhtYXAtZGVlcC1nZXQoJGhlYWRlci1zdHlsZXMsIG1lZGl1bSwgaDQsIGZvbnQtc2l6ZSkpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICAuY29udGVudDpiZWZvcmUge1xyXG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMjApO1xyXG4gICAgICAgIHdpZHRoOiByZW0tY2FsYyg2MCk7XHJcbiAgICAgICAgaGVpZ2h0OiByZW0tY2FsYyg4KTtcclxuICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICM2ODAwZDIgMCUsICM5ZTI5ZmQgMTAwJSk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIC50eXBlLXN0YXQge1xyXG4gICAgICAuY29udGVudCB7XHJcbiAgICAgICAgbWF4LXdpZHRoOiByZW0tY2FsYygyMjApO1xyXG4gICAgICB9XHJcbiAgICAgIGgyIHtcclxuICAgICAgICBjb2xvcjogJGdhbS1wdXJwbGU7XHJcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDkwKTtcclxuICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICB3aWR0aDogcmVtLWNhbGMoNjApO1xyXG4gICAgICAgICAgaGVpZ2h0OiByZW0tY2FsYyg4KTtcclxuICAgICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgIzY4MDBkMiAwJSwgIzllMjlmZCAxMDAlKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgcCB7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcclxuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKG1hcC1kZWVwLWdldCgkaGVhZGVyLXN0eWxlcywgc21hbGwsIGg2LCBmb250LXNpemUpKTtcclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG4gICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYyhtYXAtZGVlcC1nZXQoJGhlYWRlci1zdHlsZXMsIG1lZGl1bSwgaDYsIGZvbnQtc2l6ZSkpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgJi5saWdodCB7XHJcbiAgICAgIC50eXBlLXN0YXQsXHJcbiAgICAgIC50eXBlLXB1bGxvdXQge1xyXG4gICAgICAgIC5jb250ZW50IHtcclxuICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIC50eXBlLXN0YXQge1xyXG4gICAgICAgIGgyIHtcclxuICAgICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XHJcbiAgICAgICAgICAtd2Via2l0LXRleHQtZmlsbC1jb2xvcjogJHdoaXRlO1xyXG4gICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIC50eXBlLXB1bGxvdXQge1xyXG4gICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgc2VjdGlvbi5jb2x1bW5lZC10ZXh0IHtcclxuICAgIC5pbnRybyB7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgIG1heC13aWR0aDogcmVtLWNhbGMoMTAwMCk7XHJcbiAgICAgIG1hcmdpbjogMCBhdXRvIHJlbS1jYWxjKDQwKTtcclxuICAgICAgZmxvYXQ6IG5vbmU7XHJcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYyg4MCk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XHJcbiAgICAgIC5jb2x1bW4udGV4dCB7XHJcbiAgICAgICAgd2lkdGg6IDQ4JTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICBzZWN0aW9uLmxhcmdlLXB1bGxvdXQge1xyXG4gICAgYmFja2dyb3VuZDogJGJsYWNrO1xyXG4gICAgY29sb3I6ICR3aGl0ZTtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBtaW4taGVpZ2h0OiAzNXZ3O1xyXG4gICAgLmNvbnRlbnQge1xyXG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgIG1heC13aWR0aDogcmVtLWNhbGMoNjQwKTtcclxuICAgICAgcGFkZGluZzogcmVtLWNhbGMoNDAgNzApO1xyXG4gICAgICBtYXJnaW46IDAgYXV0bztcclxuICAgICAgYmxvY2txdW90ZSB7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMTtcclxuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKG1hcC1kZWVwLWdldCgkaGVhZGVyLXN0eWxlcywgc21hbGwsIGgyLCBmb250LXNpemUpKTtcclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG4gICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYyhtYXAtZGVlcC1nZXQoJGhlYWRlci1zdHlsZXMsIG1lZGl1bSwgaDIsIGZvbnQtc2l6ZSkpO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmOmJlZm9yZSxcclxuICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgIGNvbG9yOiAkZ2FtLXB1cnBsZTtcclxuICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTY0KTtcclxuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgIzY4MDBkMiAwJSwgIzllMjlmZCAxMDAlKTtcclxuICAgICAgICAgIC13ZWJraXQtYmFja2dyb3VuZC1jbGlwOiB0ZXh0O1xyXG4gICAgICAgICAgLXdlYmtpdC10ZXh0LWZpbGwtY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gICAgICAgIH1cclxuICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICBjb250ZW50OiBcIuKAnFwiO1xyXG4gICAgICAgICAgbGVmdDogcmVtLWNhbGMoLTcwKTtcclxuICAgICAgICAgIHRvcDogcmVtLWNhbGMoLTgwKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICBjb250ZW50OiBcIuKAnVwiO1xyXG4gICAgICAgICAgcmlnaHQ6IHJlbS1jYWxjKC03MCk7XHJcbiAgICAgICAgICBib3R0b206IHJlbS1jYWxjKC0xNTApO1xyXG4gICAgICAgIH1cclxuICAgICAgICBjaXRlIHtcclxuICAgICAgICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKDIwKTtcclxuICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMobWFwLWRlZXAtZ2V0KCRoZWFkZXItc3R5bGVzLCBzbWFsbCwgaDQsIGZvbnQtc2l6ZSkpO1xyXG4gICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYyhtYXAtZGVlcC1nZXQoJGhlYWRlci1zdHlsZXMsIG1lZGl1bSwgaDQsIGZvbnQtc2l6ZSkpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICBzZWN0aW9uLnJlbGF0ZWQge1xyXG4gICAgYmFja2dyb3VuZDogJHdoaXRlO1xyXG4gIH1cclxufVxyXG4iLCJib2R5LnNpbmdsZS1ibG9nLFxyXG5ib2R5LnNpbmdsZS1ldmVudCxcclxuYm9keS5zaW5nbGUtcG9zdCB7XHJcbiAgYXJ0aWNsZSB7XHJcbiAgICA+IGRpdi5yb3cge1xyXG4gICAgICBAaW5jbHVkZSBncmlkLXJvdztcclxuICAgICAgJjpmaXJzdC1jaGlsZCgpIHtcclxuICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgJG1lZGl1bS1ncmF5O1xyXG4gICAgICAgIHBhZGRpbmctdG9wOiByZW0tY2FsYygyMCk7XHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuICAgICAgICAgIHBhZGRpbmctdG9wOiByZW0tY2FsYyg4MCk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAuY29udGVudCB7XHJcbiAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDEyKTtcclxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuICAgICAgICBAaW5jbHVkZSBncmlkLWNvbC1zaXplKDcpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBoMyB7XHJcbiAgICAgICAgY29sb3I6ICRnYW0tcHVycGxlO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogJGdsb2JhbC1mb250LXNpemU7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW1lZGl1bTtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYyg1KTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgaGVhZGVyIHtcclxuICAgICAgICBAaW5jbHVkZSBncmlkLWNvbHVtbigxMik7XHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xyXG4gICAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2wtc2l6ZSg3KTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBmb290ZXIge1xyXG4gICAgICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKDIwKTtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYyg0MCk7XHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogcmVtLWNhbGMoODApO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIHVsLnNvbHV0aW9ucyB7XHJcbiAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XHJcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xyXG4gICAgICBsaSB7XHJcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICRibGFjaztcclxuICAgICAgICBwYWRkaW5nLXJpZ2h0OiByZW0tY2FsYygxMCk7XHJcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiByZW0tY2FsYygxMCk7XHJcbiAgICAgICAgJjpsYXN0LWNoaWxkIHtcclxuICAgICAgICAgIGJvcmRlci1yaWdodDogMDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIC5tZXRhIHtcclxuICAgICAgbWFyZ2luLXRvcDogcmVtLWNhbGMoMzApO1xyXG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGJsYWNrO1xyXG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDUwKTtcclxuICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcclxuICAgICAgbWluLXdpZHRoOiByZW0tY2FsYygxNTApO1xyXG4gICAgICBjb2xvcjogJGdhbS1wdXJwbGU7XHJcbiAgICAgIHVsLnNoYXJlIHtcclxuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxuICAgICAgICBtYXJnaW4tbGVmdDogcmVtLWNhbGMoMjApO1xyXG4gICAgICAgICY6Zmlyc3QtY2hpbGQoKSB7XHJcbiAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIC5sb2dvIHtcclxuICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oMTIpO1xyXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG4gICAgICAgIEBpbmNsdWRlIGdyaWQtY29sLXNpemUoNSk7XHJcbiAgICAgIH1cclxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xyXG4gICAgICAgIEBpbmNsdWRlIGdyaWQtY29sLXNpemUoNCk7XHJcbiAgICAgIH1cclxuICAgICAgaW1nIHtcclxuICAgICAgICBtYXgtd2lkdGg6IHJlbS1jYWxjKDIwMCk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIC5zaWRlYmFyIHtcclxuICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oMTIpO1xyXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG4gICAgICAgIEBpbmNsdWRlIGdyaWQtY29sLXNpemUoNSk7XHJcbiAgICAgIH1cclxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xyXG4gICAgICAgIEBpbmNsdWRlIGdyaWQtY29sLXNpemUoNCk7XHJcbiAgICAgIH1cclxuICAgICAgLnJlbGF0ZWQge1xyXG4gICAgICAgICAgbWFyZ2luLXRvcDogcmVtLWNhbGMoNDApO1xyXG4gICAgICAgICAgaDIge1xyXG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogJGdsb2JhbC1mb250LXNpemU7XHJcbiAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRibGFjaztcclxuICAgICAgICAgICAgICBwYWRkaW5nOiAwIDAgcmVtLWNhbGMoMTApO1xyXG4gICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDEwKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICAgICY6Zmlyc3QtY2hpbGQge1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xyXG4gICAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsImJvZHkuc2luZ2xlLWN0YSB7XHJcbiAgLmZ1bGwtd2lkdGgge1xyXG4gICAgcGFkZGluZzogcmVtLWNhbGMoMjAwIDAgNTApO1xyXG4gICAgaDMge1xyXG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICB9XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAuYnV0dG9uIHtcclxuICAgICAgbWFyZ2luLXRvcDogcmVtLWNhbGMoNTApO1xyXG4gICAgfVxyXG4gICAgc2VjdGlvbiB7XHJcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgICB9XHJcbiAgfVxyXG4gIC5zaWRlYmFyIHtcclxuICAgIHBhZGRpbmc6IHJlbS1jYWxjKDIwMCAwIDUwKTtcclxuICAgIGgzIHtcclxuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgfVxyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gIH1cclxuICBzZWN0aW9uIHtcclxuICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgfVxyXG59XHJcbiIsIm1haW4uc2VhcmNoLXJlc3VsdHMge1xyXG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XHJcbiAgLnRpdGxlIHtcclxuICAgIHBhZGRpbmctdG9wOiByZW0tY2FsYyg1MCk7XHJcbiAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYyg1MCk7XHJcbiAgfVxyXG4gIGFydGljbGUge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoNTApO1xyXG4gIH1cclxuICAucm93IHtcclxuICAgIC50aXRsZSxcclxuICAgIGhlYWRlcixcclxuICAgIC5jb250ZW50IHtcclxuICAgICAgbWF4LXdpZHRoOiByZW0tY2FsYygxMDAwKSAhaW1wb3J0YW50O1xyXG4gICAgICBwYWRkaW5nLWxlZnQ6IHJlbS1jYWxjKG1hcC1nZXQoJGdyaWQtbWFyZ2luLWd1dHRlcnMsIHNtYWxsKSAvIDIpO1xyXG4gICAgICBwYWRkaW5nLXJpZ2h0OiByZW0tY2FsYyhtYXAtZ2V0KCRncmlkLW1hcmdpbi1ndXR0ZXJzLCBzbWFsbCkgLyAyKTtcclxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuICAgICAgICBwYWRkaW5nLWxlZnQ6IHJlbS1jYWxjKG1hcC1nZXQoJGdyaWQtbWFyZ2luLWd1dHRlcnMsIG1lZGl1bSkgLyAyKTtcclxuICAgICAgICBwYWRkaW5nLXJpZ2h0OiByZW0tY2FsYyhtYXAtZ2V0KCRncmlkLW1hcmdpbi1ndXR0ZXJzLCBtZWRpdW0pIC8gMik7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi5yb3cubm9uZSB7XHJcbiAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcclxuICAudGl0bGUsXHJcbiAgaGVhZGVyLFxyXG4gIC5jb250ZW50IHtcclxuICAgIG1heC13aWR0aDogcmVtLWNhbGMoMTAwMCkgIWltcG9ydGFudDtcclxuICAgIHBhZGRpbmctbGVmdDogcmVtLWNhbGMobWFwLWdldCgkZ3JpZC1tYXJnaW4tZ3V0dGVycywgc21hbGwpIC8gMik7XHJcbiAgICBwYWRkaW5nLXJpZ2h0OiByZW0tY2FsYyhtYXAtZ2V0KCRncmlkLW1hcmdpbi1ndXR0ZXJzLCBzbWFsbCkgLyAyKTtcclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XHJcbiAgICAgIHBhZGRpbmctbGVmdDogcmVtLWNhbGMobWFwLWdldCgkZ3JpZC1tYXJnaW4tZ3V0dGVycywgbWVkaXVtKSAvIDIpO1xyXG4gICAgICBwYWRkaW5nLXJpZ2h0OiByZW0tY2FsYyhtYXAtZ2V0KCRncmlkLW1hcmdpbi1ndXR0ZXJzLCBtZWRpdW0pIC8gMik7XHJcbiAgICB9XHJcbiAgfVxyXG4gIC5jb250ZW50IHtcclxuICAgIHdpZHRoOiBhdXRvICFpbXBvcnRhbnQ7XHJcbiAgICBmb3JtIHtcclxuICAgICAgcGFkZGluZy1ib3R0b206IHJlbS1jYWxjKDUwKTtcclxuICAgIH1cclxuICB9XHJcbiAgYnV0dG9uIHtcclxuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xyXG4gICAgY29sb3I6ICRibGFjaztcclxuICAgIGJvcmRlcjogMDtcclxuICAgICY6aG92ZXIge1xyXG4gICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiQG1lZGlhIHByaW50IHtcclxuICAuc2hvdy1mb3ItcHJpbnQtb25seSB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICB9XHJcbiAgLnJldmVhbCB7XHJcbiAgICAgIGJhY2tncm91bmQ6IHdoaXRlICFpbXBvcnRhbnRcclxuICB9XHJcbiAgbWFpbiB1bDpub3QoW2NsYXNzXSkgbGk6YmVmb3JlIHtcclxuICAgIGJhY2tncm91bmQ6ICRnYW0tcHVycGxlICFpbXBvcnRhbnQ7XHJcbiAgfVxyXG4gIGE6YWZ0ZXIge1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxuICB9XHJcbiAgYmxvY2txdW90ZSB7XHJcbiAgICBib3JkZXI6IDA7XHJcbiAgICBwIHtcclxuICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyMSk7XHJcbiAgICB9XHJcbiAgfVxyXG4gIFtkYXRhLWFvc149XCJmYWRlXCJdIHtcclxuICAgIHRyYW5zZm9ybTogbm9uZSAhaW1wb3J0YW50O1xyXG4gICAgb3BhY2l0eTogMSAhaW1wb3J0YW50O1xyXG4gIH1cclxuICAuYnV0dG9uIHtcclxuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcclxuICB9XHJcbiAgLmJnLWltYWdlIHtcclxuICAgIGJhY2tncm91bmQ6IG5vbmUgIWltcG9ydGFudDtcclxuICAgICY6YmVmb3JlLFxyXG4gICAgJjphZnRlciB7XHJcbiAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcclxuICAgIH1cclxuICB9XHJcbiAgbWFpbiB7XHJcbiAgICBzZWN0aW9uIHtcclxuICAgICAgcGFkZGluZy10b3A6IHJlbS1jYWxjKDQwKTtcclxuICAgICAgcGFkZGluZy1ib3R0b206IHJlbS1jYWxjKDQwKTtcclxuICAgIH1cclxuICB9XHJcbiAgaGVhZGVyIHtcclxuICAgIC5zdGlja3ktY29udGFpbmVyIHtcclxuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICBoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDtcclxuICAgIH1cclxuICAgIC50b3AtYmFyIHtcclxuICAgICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XHJcbiAgICAgIHN2ZyNnYW1tYS1sb2dvLWRlc2t0b3Age1xyXG4gICAgICAgIC5zdDAge1xyXG4gICAgICAgICAgZmlsbDogJGdhbS1wdXJwbGUgIWltcG9ydGFudDtcclxuICAgICAgICB9XHJcbiAgICAgICAgZyBwYXRoIHtcclxuICAgICAgICAgIGZpbGw6IGluaGVyaXQgIWltcG9ydGFudDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgLnRvcC1iYXItcmlnaHQge1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgc2VjdGlvbi5oZXJvLXNsaWRlIHtcclxuICAgIC5zbGlkZSB7XHJcbiAgICAgIG1pbi1oZWlnaHQ6IDAgIWltcG9ydGFudDtcclxuICAgICAgYmFja2dyb3VuZDogbm9uZSAhaW1wb3J0YW50O1xyXG4gICAgICBAYXQtcm9vdCBib2R5LnBhZ2UtdGVtcGxhdGUtcGFnZS1jb250YWN0ICYge1xyXG4gICAgICAgIGJhY2tncm91bmQ6IG5vbmUgIWltcG9ydGFudDtcclxuICAgICAgfVxyXG4gICAgICAuYmctaW1hZ2Uge1xyXG4gICAgICAgIG1pbi1oZWlnaHQ6IDAgIWltcG9ydGFudDtcclxuICAgICAgfVxyXG4gICAgICAuY29udGVudCB7XHJcbiAgICAgICAgLnRleHQge1xyXG4gICAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgICAgbWF4LXdpZHRoOiBub25lO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICAudGl0bGUge1xyXG4gICAgICAgIGgxIHtcclxuICAgICAgICAgIHBhZGRpbmctdG9wOiByZW0tY2FsYyg0MCkgIWltcG9ydGFudDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgc2VjdGlvbi5pbnRybyB7XHJcbiAgICAuY29udGVudCB7XHJcbiAgICAgIHdpZHRoOiA1MCU7XHJcbiAgICB9XHJcbiAgfVxyXG4gIHNlY3Rpb24ucHJvbW8tbGlzdGluZyB7XHJcbiAgICAucm93IHtcclxuICAgICAgLmNvbnRlbnQubGFiZWxsZWQge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIG1heC13aWR0aDogbm9uZTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgLmJnLWltYWdlIHtcclxuICAgICAgbWluLWhlaWdodDogMDtcclxuICAgIH1cclxuICB9XHJcbiAgdWwudGFicyB7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG4gIH1cclxuICAudGFicy1wYW5lbCB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICB9XHJcbiAgc2VjdGlvbi50YWJiZWQtY29udGVudCB7XHJcbiAgICAucm93IHtcclxuICAgICAgLmludHJvIHtcclxuICAgICAgICB3aWR0aDogYXV0bztcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICAucm93LnNpZ25wb3N0cyB7XHJcbiAgICAuc2lnbnBvc3QgaW1nIHtcclxuICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgIH1cclxuICAgIGEge1xyXG4gICAgICBoMzphZnRlciB7XHJcbiAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICBzZWN0aW9uLnNpZ25wb3N0IHtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheTtcclxuICAgIC5yb3cge1xyXG4gICAgICAuY29udGVudCB7XHJcbiAgICAgICAgd2lkdGg6IGF1dG87XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgICYudGVzdGltb25pYWxzIHtcclxuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRtZWRpdW0tZ3JheTtcclxuICAgICAgLnJvdyB7XHJcbiAgICAgICAgLmNvbnRlbnQge1xyXG4gICAgICAgICAgd2lkdGg6IDUwJTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgc2VjdGlvbi5uZXdzIHtcclxuICAgIC5yb3cge1xyXG4gICAgICAuYXJ0aWNsZSB7XHJcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5O1xyXG4gICAgICB9XHJcbiAgICAgIC5pbnNpZ2h0cyB7XHJcbiAgICAgICAgLmFydGljbGUge1xyXG4gICAgICAgICAgYSB7XHJcbiAgICAgICAgICAgIGgyIHtcclxuICAgICAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDMyKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICBzZWN0aW9uLm5ld3MucHJvZHVjdHMgLm5ld3MgLmFydGljbGUge1xyXG4gICAgYm9yZGVyOiAxcHggc29saWQgJGRhcmstZ3JheTtcclxuICAgIC5iZy1pbWFnZSB7XHJcbiAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gIHNlY3Rpb24uc2hvd2Nhc2Uge1xyXG4gICAgLnJvdyB7XHJcbiAgICAgIC5jb250ZW50ID4gaW1nLFxyXG4gICAgICAuY29udGVudCA+IHBpY3R1cmUge1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgc2VjdGlvbi5zcGxpdC1zaWducG9zdHMge1xyXG4gICAgLnNpZ25wb3N0IHtcclxuICAgICAgYSB7XHJcbiAgICAgICAgaDMge1xyXG4gICAgICAgICAgY29sb3I6ICR3aGl0ZSAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYyg0MikgIWltcG9ydGFudDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgLnJvdyB7XHJcbiAgICAgICAgLmNvbnRlbnQge1xyXG4gICAgICAgICAgei1pbmRleDogMjtcclxuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgICYucGFuZWxzIHtcclxuICAgICAgLmltYWdlcyAuYXJ0aWNsZSB7XHJcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5O1xyXG4gICAgICAgIGEgaW1nLFxyXG4gICAgICAgIC5uby1saW5rIGltZyB7XHJcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iXX0= */

.gdpr_lightbox-active,.gdpr_lightbox-active body{overflow:hidden}.gdpr_lightbox{z-index:9990;position:fixed;top:0;right:0;bottom:0;left:0;white-space:nowrap;background:#0b0b0b;background:rgba(0,0,0,.9);outline:none!important;opacity:0;transition:opacity .3s ease}.gdpr_lightbox.gdpr_lightbox-opened{opacity:1}.gdpr_lightbox.gdpr_lightbox-closed{opacity:0}.gdpr_lightbox *{box-sizing:border-box}.gdpr_lightbox-wrap{z-index:9990;position:fixed;top:0;right:0;bottom:0;left:0;text-align:center;outline:none!important}.gdpr_lightbox-wrap:before{content:"";display:inline-block;height:100%;vertical-align:middle;margin-right:-.25em}.gdpr_lightbox-loader{z-index:9991;color:#fff;position:absolute;top:50%;margin-top:-.8em;width:100%;text-align:center;font-size:14px;font-family:Arial,Helvetica,sans-serif;opacity:0;transition:opacity .3s ease}.gdpr_lightbox-loading .gdpr_lightbox-loader{opacity:1}.gdpr_lightbox-container{z-index:9992;position:relative;text-align:left;vertical-align:middle;display:inline-block;white-space:normal;max-width:100%;max-height:100%;outline:none!important}.gdpr_lightbox-content{z-index:9993;width:100%;transform:scale(1);transition:transform .3s ease}.gdpr_lightbox-closed .gdpr_lightbox-content,.gdpr_lightbox-loading .gdpr_lightbox-content{transform:scale(.8)}.gdpr_lightbox-content:after{content:"";position:absolute;left:0;top:0;bottom:0;display:block;right:0;width:auto;height:auto;z-index:-1;box-shadow:0 0 8px rgba(0,0,0,.6)}.gdpr_lightbox-close,.gdpr_lightbox-close:active,.gdpr_lightbox-close:focus,.gdpr_lightbox-close:hover,.gdpr_lightbox-close:visited{z-index:9994;width:35px;height:35px;position:fixed;right:0;top:0;-webkit-appearance:none;cursor:pointer;text-decoration:none;text-align:center;padding:0;color:#fff;font-style:normal;font-size:35px;font-family:Arial,Baskerville,monospace;line-height:35px;text-shadow:0 1px 2px rgba(0,0,0,.6);border:0;background:0 0;box-shadow:none}.gdpr_lightbox-close::-moz-focus-inner{border:0;padding:0}.gdpr_lightbox-close:active{top:1px}.gdpr_lightbox-image img{max-width:100%;display:block;line-height:0;border:0}.gdpr_lightbox-iframe .gdpr_lightbox-container{width:100%;max-width:964px}.gdpr_lightbox-iframe-container{width:100%;height:0;padding-top:56.25%;overflow:auto;pointer-events:auto;transform:translateZ(0);-webkit-overflow-scrolling:touch}.gdpr_lightbox-iframe-container iframe{position:absolute;display:block;top:0;left:0;width:100%;height:100%;box-shadow:0 0 8px rgba(0,0,0,.6);background:#000}body.moove_gdpr_overflow{overflow:hidden}body.moove_gdpr_overflow #page{position:relative;z-index:10}body.moove_gdpr_overflow #main-header,body.moove_gdpr_overflow #page-container{z-index:99}.gdpr_lightbox-hide,body.logged-in.et_divi_builder.et-fb #moove_gdpr_cookie_info_bar.moove-gdpr-light-scheme{display:none}.gdpr_lightbox dialog#moove_gdpr_cookie_modal{display:-ms-flexbox;display:flex;position:relative;padding:0;background:0 0;border:none;width:100%;height:100%;-ms-flex-pack:center;justify-content:center;-ms-flex-align:center;align-items:center}#moove_gdpr_cookie_info_bar .moove-gdpr-cookie-notice button.change-settings-button{padding:0;display:inline-block;border:none;box-shadow:none;background-color:transparent;color:inherit;text-decoration:underline;cursor:pointer;transition:all .2s ease;font-size:inherit;text-transform:inherit;font-weight:inherit;letter-spacing:inherit;line-height:inherit}.cookie-switch.focus-g,.cookie-switch:focus,.gdpr-shr-switch.focus-g,.gdpr-shr-switch:focus{box-shadow:1px 1px 5px #010101;border-radius:50px}#moove_gdpr_cookie_modal .mgbutton.focus-g,#moove_gdpr_cookie_modal .mgbutton:focus{box-shadow:1px 1px 5px #010101}#moove_gdpr_cookie_info_bar .gdpr-fbo-0{-ms-flex-order:1;order:1}#moove_gdpr_cookie_info_bar .gdpr-fbo-1{-ms-flex-order:2;order:2}#moove_gdpr_cookie_info_bar .gdpr-fbo-2{-ms-flex-order:3;order:3}#moove_gdpr_cookie_info_bar .gdpr-fbo-3{-ms-flex-order:4;order:4}#moove_gdpr_cookie_info_bar .gdpr-fbo-4{-ms-flex-order:5;order:5}#moove_gdpr_cookie_info_bar .gdpr-fbo-5{-ms-flex-order:6;order:6}.gdpr-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}#moove_gdpr_cookie_modal li a .gdpr-svg-icon,#moove_gdpr_cookie_modal li button .gdpr-svg-icon{height:30px;display:inline-block;float:left;width:35px;margin-right:5px;position:relative;top:0}#moove_gdpr_cookie_modal li a .gdpr-svg-icon svg,#moove_gdpr_cookie_modal li button .gdpr-svg-icon svg{height:30px;width:auto;background-color:transparent}body.gdpr-no-icons #moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-left-content #moove-gdpr-menu .gdpr-svg-icon,body.gdpr-no-icons #moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-left-content #moove-gdpr-menu li a i,body.gdpr-no-icons #moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-left-content #moove-gdpr-menu li a span.gdpr-icon,body.gdpr-no-icons #moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-left-content #moove-gdpr-menu li button i,body.gdpr-no-icons #moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-left-content #moove-gdpr-menu li button span.gdpr-icon{display:none}.moove_gdpr_cookie_modal_open .gdpr_lightbox-content:after{box-shadow:none}#moove_gdpr_cookie_modal .moove-gdpr-modal-content.moove_gdpr_modal_theme_v2 .moove-gdpr-modal-footer-content{-ms-flex-pack:justify;justify-content:space-between}#moove_gdpr_cookie_modal .moove-gdpr-modal-content.moove_gdpr_modal_theme_v2 .moove-gdpr-modal-footer-content .moove-gdpr-button-holder{margin:0 -4px;max-width:calc(100% + 8px);width:auto}#moove_gdpr_cookie_modal .moove-gdpr-modal-content.moove_gdpr_modal_theme_v2 .moove-gdpr-modal-footer-content .moove-gdpr-button-holder a.mgbutton,#moove_gdpr_cookie_modal .moove-gdpr-modal-content.moove_gdpr_modal_theme_v2 .moove-gdpr-modal-footer-content .moove-gdpr-button-holder button.mgbutton{margin:2px}@media (min-width:768px){#moove_gdpr_cookie_modal .moove-gdpr-modal-content.moove_gdpr_modal_theme_v2 .moove-gdpr-modal-footer-content .moove-gdpr-button-holder a.mgbutton,#moove_gdpr_cookie_modal .moove-gdpr-modal-content.moove_gdpr_modal_theme_v2 .moove-gdpr-modal-footer-content .moove-gdpr-button-holder button.mgbutton{margin:2px 4px}}#moove_gdpr_cookie_info_bar{content-visibility:auto}#moove_gdpr_cookie_info_bar .moove-gdpr-button-holder{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center}#moove_gdpr_cookie_info_bar.gdpr-full-screen-infobar .moove-gdpr-button-holder .moove-gdpr-infobar-close-btn,#moove_gdpr_cookie_info_bar.gdpr-full-screen-infobar.moove-gdpr-dark-scheme .moove-gdpr-button-holder .moove-gdpr-infobar-close-btn{display:none}#moove_gdpr_cookie_info_bar.gdpr-full-screen-infobar.moove-gdpr-dark-scheme .moove-gdpr-infobar-close-btn.gdpr-content-close-btn,#moove_gdpr_cookie_info_bar.gdpr-full-screen-infobar .moove-gdpr-infobar-close-btn.gdpr-content-close-btn{display:block;position:absolute;top:-15px;right:-15px;background-color:#fff}#moove_gdpr_cookie_info_bar.gdpr-full-screen-infobar.moove-gdpr-dark-scheme .moove-gdpr-infobar-close-btn.gdpr-content-close-btn.focus-g,#moove_gdpr_cookie_info_bar.gdpr-full-screen-infobar.moove-gdpr-dark-scheme .moove-gdpr-infobar-close-btn.gdpr-content-close-btn:focus,#moove_gdpr_cookie_info_bar.gdpr-full-screen-infobar.moove-gdpr-dark-scheme .moove-gdpr-infobar-close-btn.gdpr-content-close-btn:hover,#moove_gdpr_cookie_info_bar.gdpr-full-screen-infobar .moove-gdpr-infobar-close-btn.gdpr-content-close-btn.focus-g,#moove_gdpr_cookie_info_bar.gdpr-full-screen-infobar .moove-gdpr-infobar-close-btn.gdpr-content-close-btn:focus,#moove_gdpr_cookie_info_bar.gdpr-full-screen-infobar .moove-gdpr-infobar-close-btn.gdpr-content-close-btn:hover{background-color:#626262;color:#fff}#moove_gdpr_cookie_info_bar.gdpr-full-screen-infobar.moove-gdpr-dark-scheme .moove-gdpr-info-bar-container,#moove_gdpr_cookie_info_bar.gdpr-full-screen-infobar .moove-gdpr-info-bar-container{position:relative}#moove_gdpr_cookie_info_bar .moove-gdpr-infobar-close-btn{background-color:transparent;padding:0;display:inline-block;float:right;position:relative;font-size:14px;line-height:20px;margin:3px 4px;width:36px;height:36px;border-radius:50%;box-shadow:inset 0 0 0 1px #626262;color:#626262;transition:all .3s ease}#moove_gdpr_cookie_info_bar .moove-gdpr-infobar-close-btn.gdpr-content-close-btn{display:none}#moove_gdpr_cookie_info_bar .moove-gdpr-infobar-close-btn.focus-g,#moove_gdpr_cookie_info_bar .moove-gdpr-infobar-close-btn:focus,#moove_gdpr_cookie_info_bar .moove-gdpr-infobar-close-btn:hover{background-color:#626262;color:#fff}#moove_gdpr_cookie_info_bar .moove-gdpr-infobar-close-btn i{font-size:32px;top:-1px;position:relative;height:30px;display:block;overflow:hidden}#moove_gdpr_cookie_info_bar.moove-gdpr-dark-scheme .moove-gdpr-button-holder .moove-gdpr-infobar-close-btn{color:#fff;opacity:.7;box-shadow:inset 0 0 0 1px #fff}#moove_gdpr_cookie_info_bar.moove-gdpr-dark-scheme .moove-gdpr-button-holder .moove-gdpr-infobar-close-btn.focus-g,#moove_gdpr_cookie_info_bar.moove-gdpr-dark-scheme .moove-gdpr-button-holder .moove-gdpr-infobar-close-btn:focus,#moove_gdpr_cookie_info_bar.moove-gdpr-dark-scheme .moove-gdpr-button-holder .moove-gdpr-infobar-close-btn:hover{background-color:#fff;opacity:1;color:#fff}#moove_gdpr_cookie_info_bar.gdpr-full-screen-infobar .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content a.mgbutton.change-settings-button,#moove_gdpr_cookie_info_bar.gdpr-full-screen-infobar .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content button.mgbutton.change-settings-button{text-decoration:none}#moove_gdpr_cookie_modal .cookie-switch .cookie-slider,#moove_gdpr_cookie_modal .switch .slider{overflow:visible;box-shadow:1px 1px transparent}#moove_gdpr_cookie_modal{margin:0 auto;margin-top:0;min-height:60vh;font-family:Nunito,sans-serif;content-visibility:hidden}#moove_gdpr_cookie_modal span.tab-title{display:block}#moove_gdpr_cookie_modal button{letter-spacing:0;outline:none;cursor:pointer}#moove_gdpr_cookie_modal *{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:inherit}#moove_gdpr_cookie_modal .cookie-switch,#moove_gdpr_cookie_modal .switch{position:relative;display:inline-block;width:50px;height:30px;padding:0}#moove_gdpr_cookie_modal .cookie-switch input,#moove_gdpr_cookie_modal .switch input{display:none}#moove_gdpr_cookie_modal .cookie-switch .cookie-slider,#moove_gdpr_cookie_modal .cookie-switch .slider,#moove_gdpr_cookie_modal .switch .cookie-slider,#moove_gdpr_cookie_modal .switch .slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background-color:red;transition:.4s;margin:0;padding:0}#moove_gdpr_cookie_modal .cookie-switch .cookie-slider:before,#moove_gdpr_cookie_modal .cookie-switch .slider:before,#moove_gdpr_cookie_modal .switch .cookie-slider:before,#moove_gdpr_cookie_modal .switch .slider:before{position:absolute;content:"";height:26px;width:26px;left:1px;bottom:1px;transition:.4s;border:1px solid #f2f2f2;border-radius:50%;background-color:#fff;box-shadow:0 5px 15px 0 rgba(0,0,0,.25);display:block;box-sizing:content-box}#moove_gdpr_cookie_modal .cookie-switch .cookie-slider:after,#moove_gdpr_cookie_modal .cookie-switch .slider:after,#moove_gdpr_cookie_modal .switch .cookie-slider:after,#moove_gdpr_cookie_modal .switch .slider:after{content:attr(data-text-disabled);position:absolute;top:0;left:60px;font-weight:700;font-size:16px;line-height:30px;color:red;display:block;white-space:nowrap}#moove_gdpr_cookie_modal .cookie-switch .cookie-slider.cookie-round,#moove_gdpr_cookie_modal .cookie-switch .cookie-slider.round,#moove_gdpr_cookie_modal .cookie-switch .slider.cookie-round,#moove_gdpr_cookie_modal .cookie-switch .slider.round,#moove_gdpr_cookie_modal .switch .cookie-slider.cookie-round,#moove_gdpr_cookie_modal .switch .cookie-slider.round,#moove_gdpr_cookie_modal .switch .slider.cookie-round,#moove_gdpr_cookie_modal .switch .slider.round{border-radius:34px}#moove_gdpr_cookie_modal .cookie-switch .cookie-slider.cookie-round:before,#moove_gdpr_cookie_modal .cookie-switch .cookie-slider.round:before,#moove_gdpr_cookie_modal .cookie-switch .slider.cookie-round:before,#moove_gdpr_cookie_modal .cookie-switch .slider.round:before,#moove_gdpr_cookie_modal .switch .cookie-slider.cookie-round:before,#moove_gdpr_cookie_modal .switch .cookie-slider.round:before,#moove_gdpr_cookie_modal .switch .slider.cookie-round:before,#moove_gdpr_cookie_modal .switch .slider.round:before{border-radius:50%}#moove_gdpr_cookie_modal .cookie-switch .cookie-slider.gdpr-sr:after,#moove_gdpr_cookie_modal .cookie-switch .slider.gdpr-sr:after,#moove_gdpr_cookie_modal .switch .cookie-slider.gdpr-sr:after,#moove_gdpr_cookie_modal .switch .slider.gdpr-sr:after{display:none}#moove_gdpr_cookie_modal .cookie-switch .gdpr-sr-enable,#moove_gdpr_cookie_modal .switch .gdpr-sr-enable{display:none;color:#2e9935}#moove_gdpr_cookie_modal .cookie-switch .gdpr-sr-disable,#moove_gdpr_cookie_modal .switch .gdpr-sr-disable{display:block;color:red}#moove_gdpr_cookie_modal .cookie-switch .gdpr-sr-label,#moove_gdpr_cookie_modal .switch .gdpr-sr-label{position:absolute;top:0;left:60px;font-weight:700;font-size:16px;line-height:30px;color:red;display:block;white-space:nowrap}#moove_gdpr_cookie_modal .cookie-switch input:checked+.cookie-slider,#moove_gdpr_cookie_modal .cookie-switch input:checked+.slider,#moove_gdpr_cookie_modal .switch input:checked+.cookie-slider,#moove_gdpr_cookie_modal .switch input:checked+.slider{background-color:#2e9935}#moove_gdpr_cookie_modal .cookie-switch input:checked+.cookie-slider:after,#moove_gdpr_cookie_modal .cookie-switch input:checked+.slider:after,#moove_gdpr_cookie_modal .switch input:checked+.cookie-slider:after,#moove_gdpr_cookie_modal .switch input:checked+.slider:after{content:attr(data-text-enable);color:#2e9935;white-space:nowrap}#moove_gdpr_cookie_modal .cookie-switch input:checked+.cookie-slider .gdpr-sr-enable,#moove_gdpr_cookie_modal .cookie-switch input:checked+.slider .gdpr-sr-enable,#moove_gdpr_cookie_modal .switch input:checked+.cookie-slider .gdpr-sr-enable,#moove_gdpr_cookie_modal .switch input:checked+.slider .gdpr-sr-enable{display:block}#moove_gdpr_cookie_modal .cookie-switch input:checked+.cookie-slider .gdpr-sr-disable,#moove_gdpr_cookie_modal .cookie-switch input:checked+.slider .gdpr-sr-disable,#moove_gdpr_cookie_modal .switch input:checked+.cookie-slider .gdpr-sr-disable,#moove_gdpr_cookie_modal .switch input:checked+.slider .gdpr-sr-disable{display:none}#moove_gdpr_cookie_modal .cookie-switch input:focus+.cookie-slider,#moove_gdpr_cookie_modal .cookie-switch input:focus+.slider,#moove_gdpr_cookie_modal .switch input:focus+.cookie-slider,#moove_gdpr_cookie_modal .switch input:focus+.slider{box-shadow:0 0 1px #2e9935}#moove_gdpr_cookie_modal .cookie-switch input:checked+.cookie-slider:before,#moove_gdpr_cookie_modal .cookie-switch input:checked+.slider:before,#moove_gdpr_cookie_modal .switch input:checked+.cookie-slider:before,#moove_gdpr_cookie_modal .switch input:checked+.slider:before{transform:translateX(20px)}#moove_gdpr_cookie_modal a,#moove_gdpr_cookie_modal button{outline:none;box-shadow:none;text-shadow:none}#moove_gdpr_cookie_modal .moove-gdpr-modal-content{color:#000;background-color:#fff;width:900px;width:80vw;max-width:1170px;min-height:600px;border-radius:10px;position:relative;margin:0 auto}#moove_gdpr_cookie_modal .moove-gdpr-modal-content .gdpr-cc-form-fieldset,#moove_gdpr_cookie_modal .moove-gdpr-modal-content fieldset{background-color:transparent}#moove_gdpr_cookie_modal .moove-gdpr-modal-content.logo-position-left .moove-gdpr-company-logo-holder{text-align:left}#moove_gdpr_cookie_modal .moove-gdpr-modal-content.logo-position-center .moove-gdpr-company-logo-holder{text-align:center}#moove_gdpr_cookie_modal .moove-gdpr-modal-content.logo-position-right .moove-gdpr-company-logo-holder{text-align:right}#moove_gdpr_cookie_modal .moove-gdpr-modal-content.moove_gdpr_modal_theme_v1 .main-modal-content{display:-ms-flexbox;display:flex;-ms-flex-flow:column;flex-flow:column;height:100%}#moove_gdpr_cookie_modal .moove-gdpr-modal-content.moove_gdpr_modal_theme_v1 .moove-gdpr-modal-footer-content .moove-gdpr-button-holder a.mgbutton,#moove_gdpr_cookie_modal .moove-gdpr-modal-content.moove_gdpr_modal_theme_v1 .moove-gdpr-modal-footer-content .moove-gdpr-button-holder button.mgbutton{margin:2px}#moove_gdpr_cookie_modal .moove-gdpr-modal-content.moove_gdpr_modal_theme_v2{min-height:auto}#moove_gdpr_cookie_modal .moove-gdpr-modal-content.moove_gdpr_modal_theme_v2 .moove-gdpr-modal-left-content{display:none}#moove_gdpr_cookie_modal .moove-gdpr-modal-content.moove_gdpr_modal_theme_v2 .moove-gdpr-modal-right-content{width:100%;border-top-left-radius:5px;border-bottom-left-radius:5px;position:relative;float:none;padding-bottom:135px}#moove_gdpr_cookie_modal .moove-gdpr-modal-content.moove_gdpr_modal_theme_v2 .main-modal-content{max-height:50vh;overflow:hidden;overflow-y:auto;padding-bottom:0;height:100%}#moove_gdpr_cookie_modal .moove-gdpr-modal-content.moove_gdpr_modal_theme_v2 .moove-gdpr-branding-cnt{padding-right:30px;white-space:nowrap}#moove_gdpr_cookie_modal .moove-gdpr-modal-content.moove_gdpr_modal_theme_v2 .moove-gdpr-branding-cnt a{padding-right:0;text-align:right;color:#000;font-weight:700;font-size:13px;letter-spacing:-.3px;position:relative;top:0;text-decoration:none;display:block;-ms-flex-align:baseline;align-items:baseline}#moove_gdpr_cookie_modal .moove-gdpr-modal-content.moove_gdpr_modal_theme_v2 .moove-gdpr-tab-main{display:block;position:relative}#moove_gdpr_cookie_modal .moove-gdpr-modal-content.moove_gdpr_modal_theme_v2 .moove-gdpr-tab-main .moove-gdpr-tab-main-content{position:relative;overflow:hidden;padding-right:190px;padding-bottom:10px}#moove_gdpr_cookie_modal .moove-gdpr-modal-content.moove_gdpr_modal_theme_v2 .moove-gdpr-tab-main .moove-gdpr-status-bar{position:absolute;top:0;right:0;width:190px;text-align:right}#moove_gdpr_cookie_modal .moove-gdpr-modal-content.moove_gdpr_modal_theme_v2 .moove-gdpr-tab-main .moove-gdpr-status-bar span.cookie-slider,#moove_gdpr_cookie_modal .moove-gdpr-modal-content.moove_gdpr_modal_theme_v2 .moove-gdpr-tab-main .moove-gdpr-status-bar span.slider{position:relative;width:50px;height:30px;display:block}#moove_gdpr_cookie_modal .moove-gdpr-modal-content.moove_gdpr_modal_theme_v2 .moove-gdpr-tab-main .moove-gdpr-status-bar span.cookie-slider .gdpr-sr-label,#moove_gdpr_cookie_modal .moove-gdpr-modal-content.moove_gdpr_modal_theme_v2 .moove-gdpr-tab-main .moove-gdpr-status-bar span.cookie-slider:after,#moove_gdpr_cookie_modal .moove-gdpr-modal-content.moove_gdpr_modal_theme_v2 .moove-gdpr-tab-main .moove-gdpr-status-bar span.slider .gdpr-sr-label,#moove_gdpr_cookie_modal .moove-gdpr-modal-content.moove_gdpr_modal_theme_v2 .moove-gdpr-tab-main .moove-gdpr-status-bar span.slider:after{text-align:right;left:auto;right:60px}#moove_gdpr_cookie_modal .moove-gdpr-modal-content.moove_gdpr_modal_theme_v2 .moove-gdpr-tab-main h3.tab-title,#moove_gdpr_cookie_modal .moove-gdpr-modal-content.moove_gdpr_modal_theme_v2 .moove-gdpr-tab-main span.tab-title{font-weight:700;font-size:20px;margin-bottom:15px;padding-right:190px}#moove_gdpr_cookie_modal .moove-gdpr-modal-content.moove_gdpr_modal_theme_v2 .moove-gdpr-modal-title{display:-ms-flexbox;display:flex;width:100%;-ms-flex-align:center;align-items:center;height:75px;position:relative;margin-bottom:20px;padding-right:180px}#moove_gdpr_cookie_modal .moove-gdpr-modal-content.moove_gdpr_modal_theme_v2 .moove-gdpr-modal-title .moove-gdpr-company-logo-holder{max-width:180px;margin:0;float:right;position:absolute;top:0;right:0;width:100%;text-align:right;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:end;justify-content:flex-end;height:100%}#moove_gdpr_cookie_modal .moove-gdpr-modal-content.moove_gdpr_modal_theme_v2 .moove-gdpr-modal-title .moove-gdpr-company-logo-holder img{max-width:100%;text-align:center}#moove_gdpr_cookie_modal .moove-gdpr-modal-content.moove_gdpr_modal_theme_v2 .moove-gdpr-modal-title .tab-title{width:100%;font-weight:700;font-size:28px;line-height:1.1}#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-close{position:absolute;text-decoration:none;top:-30px;right:-30px;display:block;width:60px;height:60px;line-height:60px;text-align:center;border-radius:50%;background:0 0;padding:0;z-index:99;margin:0;outline:none;box-shadow:none;border:none}#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-close.focus-g i,#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-close.focus-g span.gdpr-icon,#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-close:hover i,#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-close:hover span.gdpr-icon{background-color:#fff;color:#0c4da2}#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-close i,#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-close span.gdpr-icon{display:block;width:60px;height:60px;line-height:60px;font-size:48px;background-color:#0c4da2;border:1px solid #0c4da2;color:#fff;border-radius:50%;transition:all .3s ease}#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-company-logo-holder{padding:0;margin-bottom:30px}#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-company-logo-holder img{max-height:75px;max-width:70%;width:auto;display:inline-block}#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-title h2{font-weight:400;font-size:20px;margin:5px 0 0;padding:0;color:#000}#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-tab-content.moove-gdpr-no-modal-title .moove-gdpr-tab-main h3.tab-title,#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-tab-content.moove-gdpr-no-modal-title .moove-gdpr-tab-main span.tab-title{margin-top:0}#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-tab-main h3.tab-title,#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-tab-main span.tab-title{font-weight:700;font-size:28px;line-height:1.2;margin:0;padding:0;color:#000;margin-bottom:25px}#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-tab-main .moove-gdpr-tab-main-content{display:-ms-flexbox;display:flex;-ms-flex-flow:column;flex-flow:column;max-height:calc(100% - 155px);overflow-y:auto;padding-right:20px;padding-bottom:15px}#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-tab-main .moove-gdpr-tab-main-content a,#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-tab-main .moove-gdpr-tab-main-content button,#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-tab-main .moove-gdpr-tab-main-content li,#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-tab-main .moove-gdpr-tab-main-content p{font-weight:400;font-size:16px;line-height:1.4;margin-bottom:18px;margin-top:0;padding:0;color:#000}#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-tab-main .moove-gdpr-tab-main-content h1,#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-tab-main .moove-gdpr-tab-main-content h2,#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-tab-main .moove-gdpr-tab-main-content h3,#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-tab-main .moove-gdpr-tab-main-content h4,#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-tab-main .moove-gdpr-tab-main-content h5,#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-tab-main .moove-gdpr-tab-main-content h6{font-size:18px;line-height:1.4;margin-bottom:20px;margin-top:0;font-weight:700;text-transform:none;color:#000}#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-tab-main .moove-gdpr-tab-main-content a{color:#000;text-decoration:underline}#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-tab-main .moove-gdpr-tab-main-content.moove-gdpr-strict-warning-message{display:none}#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-tab-main .moove-gdpr-status-bar{padding:5px;margin-right:10px;margin-bottom:15px}#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-tab-main .moove-gdpr-status-bar.gdpr-checkbox-disabled{opacity:.6;pointer-events:none}#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-tab-main .moove-gdpr-status-bar.gdpr-checkbox-disabled .cookie-switch input:checked+.cookie-slider,#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-tab-main .moove-gdpr-status-bar.gdpr-checkbox-disabled .switch input:checked+.slider{background-color:#474747}#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-tab-main .moove-gdpr-status-bar.gdpr-checkbox-disabled .cookie-switch input:checked+.cookie-slider:after,#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-tab-main .moove-gdpr-status-bar.gdpr-checkbox-disabled .switch input:checked+.slider:after{color:#474747}#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-tab-main .moove-gdpr-status-bar p{display:inline-block;float:right;color:#09a501;margin:0;line-height:1.2;font:700 11px Arial,Helvetica,sans-serif;font-weight:700}#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-tab-main .moove-gdpr-status-bar .gdpr-cc-form-wrap,#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-tab-main .moove-gdpr-status-bar .gdpr-cc-form-wrap .gdpr-cc-form-fieldset,#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-tab-main .moove-gdpr-status-bar .gdpr-cc-form-wrap fieldset,#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-tab-main .moove-gdpr-status-bar form,#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-tab-main .moove-gdpr-status-bar form .gdpr-cc-form-fieldset,#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-tab-main .moove-gdpr-status-bar form fieldset{border:none;padding:0;margin:0;box-shadow:none}#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-tab-main .moove-gdpr-status-bar .gdpr-cc-form-wrap .gdpr-cc-form-fieldset:hover label,#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-tab-main .moove-gdpr-status-bar .gdpr-cc-form-wrap fieldset:hover label,#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-tab-main .moove-gdpr-status-bar form .gdpr-cc-form-fieldset:hover label,#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-tab-main .moove-gdpr-status-bar form fieldset:hover label{color:#09a501}#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-footer-content{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;height:130px;position:absolute;left:0;bottom:0;width:100%;background-color:#f1f1f1;z-index:15;border-radius:5px}#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-footer-content:before{content:"";position:absolute;bottom:130px;left:60px;right:60px;height:1px;display:block;background-color:#c9c8c8}#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-footer-content .moove-gdpr-branding{text-decoration:none;padding:0 10px;font-size:10px;color:#000;font-weight:700;line-height:13px;display:-ms-flexbox;display:flex;-ms-flex-align:baseline;align-items:baseline;width:auto;max-width:100%}#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-footer-content .moove-gdpr-branding img{height:15px;margin-left:5px}#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-footer-content .moove-gdpr-branding span{display:inline-block;text-decoration:underline}#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-footer-content .moove-gdpr-button-holder{width:calc(100% + 16px);display:-ms-flexbox;display:flex;padding:0 60px;-ms-flex-pack:justify;justify-content:space-between;margin:0 -2px;-ms-flex-wrap:wrap;flex-wrap:wrap}#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-footer-content .moove-gdpr-button-holder a.mgbutton,#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-footer-content .moove-gdpr-button-holder button.mgbutton{margin:8px;text-decoration:none;border-radius:150px;color:#fff;padding:15px 10px;transition:all .3s ease;border:1px solid transparent;min-width:160px;text-align:center;text-transform:none;letter-spacing:0;font-weight:700;font-size:14px;line-height:20px;cursor:pointer}#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-footer-content .moove-gdpr-button-holder a.mgbutton:hover,#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-footer-content .moove-gdpr-button-holder button.mgbutton:hover{background-color:#fff}#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-footer-content .moove-gdpr-button-holder a.mgbutton.moove-gdpr-modal-save-settings,#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-footer-content .moove-gdpr-button-holder button.mgbutton.moove-gdpr-modal-save-settings{color:#fff;display:none}#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-footer-content .moove-gdpr-button-holder a.mgbutton.moove-gdpr-modal-save-settings:hover,#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-footer-content .moove-gdpr-button-holder button.mgbutton.moove-gdpr-modal-save-settings:hover{background-color:#fff}#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-left-content{width:40%;display:inline-block;float:left;padding:40px 60px;position:absolute;height:100%;top:0;box-shadow:0 0 30px 0 rgba(35,35,35,.1);background:#fff;z-index:10;left:0;border-top-left-radius:5px;border-bottom-left-radius:5px}#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-left-content .moove-gdpr-branding-cnt{position:absolute;bottom:0;padding-bottom:30px;left:60px;right:60px}#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-left-content .moove-gdpr-branding-cnt a{color:#000;font-weight:700;font-size:13px;letter-spacing:-.3px;padding:20px 0;position:relative;top:10px;text-decoration:none;display:block}#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-left-content .moove-gdpr-branding-cnt a img{width:60px;height:auto;display:inline-block;margin-left:5px;position:relative;top:0}#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-left-content .moove-gdpr-branding-cnt a span{display:inline-block;text-decoration:underline}#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-left-content #moove-gdpr-menu{padding:0;list-style:none;margin:0;z-index:12}#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-left-content #moove-gdpr-menu li{margin:0;padding:0;list-style:none;margin-bottom:15px}#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-left-content #moove-gdpr-menu li.menu-item-selected a,#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-left-content #moove-gdpr-menu li.menu-item-selected button{background-color:#fff;border-color:#f1f1f1;color:#000}#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-left-content #moove-gdpr-menu li.menu-item-selected a span.gdpr-icon,#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-left-content #moove-gdpr-menu li.menu-item-selected button span.gdpr-icon{color:#000}#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-left-content #moove-gdpr-menu li a,#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-left-content #moove-gdpr-menu li button{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;font-weight:800;font-size:14px;text-decoration:none;text-transform:uppercase;background-color:#f1f1f1;border:1px solid #f1f1f1;line-height:1.1;padding:13px 20px;color:#0c4da2;width:100%;transition:all .3s ease;border-radius:5px;text-align:left;white-space:normal}#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-left-content #moove-gdpr-menu li a:hover i,#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-left-content #moove-gdpr-menu li a:hover span.gdpr-icon,#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-left-content #moove-gdpr-menu li button:hover i,#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-left-content #moove-gdpr-menu li button:hover span.gdpr-icon{text-decoration:none}#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-left-content #moove-gdpr-menu li a i,#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-left-content #moove-gdpr-menu li a span.gdpr-icon,#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-left-content #moove-gdpr-menu li button i,#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-left-content #moove-gdpr-menu li button span.gdpr-icon{display:inline-block;float:left;font-size:30px;width:40px;margin-right:5px;position:relative;top:0;color:#0c4da2}#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-left-content #moove-gdpr-menu li a span.gdpr-nav-tab-title,#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-left-content #moove-gdpr-menu li button span.gdpr-nav-tab-title{display:-ms-inline-flexbox;display:inline-flex;-ms-flex-align:center;align-items:center;width:calc(100% - 40px)}#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-right-content{width:60%;display:inline-block;float:right;padding:40px 60px;position:absolute;top:0;height:auto;right:0;background-color:#f1f1f1;border-top-right-radius:5px;border-bottom-right-radius:5px}#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-company-logo{width:100%;height:0;padding-bottom:38px;background-size:contain;background-position:0;background-repeat:no-repeat}.moove-hidden{display:none}#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-tab-main .moove-gdpr-status-bar:after,.moove-clearfix:after{content:"";display:table;clear:both}#moove_gdpr_cookie_info_bar{position:fixed;bottom:0;left:0;width:100%;min-height:60px;max-height:400px;color:#fff;z-index:9900;background-color:#202020;border-top:1px solid #fff;font-family:Nunito,sans-serif;transition:bottom .3s cubic-bezier(.17,.04,.03,.94)}#moove_gdpr_cookie_info_bar.gdpr_infobar_postion_top{bottom:auto;top:0;transition:top .3s cubic-bezier(.17,.04,.03,.94)}#moove_gdpr_cookie_info_bar.gdpr_infobar_postion_top.moove-gdpr-dark-scheme{border-top:0;border-bottom:1px solid #fff}#moove_gdpr_cookie_info_bar.gdpr_infobar_postion_top.moove-gdpr-light-scheme{border-top:0;border-bottom:1px solid #202020}#moove_gdpr_cookie_info_bar.gdpr_infobar_postion_top.moove-gdpr-info-bar-hidden{bottom:auto;top:-400px}#moove_gdpr_cookie_info_bar.gdpr_infobar_postion_bottom_left:not(.gdpr-full-screen-infobar),#moove_gdpr_cookie_info_bar.gdpr_infobar_postion_bottom_right:not(.gdpr-full-screen-infobar){width:600px;max-width:calc(100% - 30px);bottom:15px;border-radius:10px}#moove_gdpr_cookie_info_bar.gdpr_infobar_postion_bottom_left:not(.gdpr-full-screen-infobar).moove-gdpr-dark-scheme,#moove_gdpr_cookie_info_bar.gdpr_infobar_postion_bottom_left:not(.gdpr-full-screen-infobar).moove-gdpr-light-scheme,#moove_gdpr_cookie_info_bar.gdpr_infobar_postion_bottom_right:not(.gdpr-full-screen-infobar).moove-gdpr-dark-scheme,#moove_gdpr_cookie_info_bar.gdpr_infobar_postion_bottom_right:not(.gdpr-full-screen-infobar).moove-gdpr-light-scheme{border:1px solid #d3ced2}@media (min-width:767px){#moove_gdpr_cookie_info_bar.gdpr_infobar_postion_bottom_left:not(.gdpr-full-screen-infobar) .moove-gdpr-infobar-close-btn,#moove_gdpr_cookie_info_bar.gdpr_infobar_postion_bottom_right:not(.gdpr-full-screen-infobar) .moove-gdpr-infobar-close-btn{position:absolute;top:-5px;right:-5px;border:none;box-shadow:none;background-color:transparent}#moove_gdpr_cookie_info_bar.gdpr_infobar_postion_bottom_left:not(.gdpr-full-screen-infobar) .moove-gdpr-infobar-close-btn:hover,#moove_gdpr_cookie_info_bar.gdpr_infobar_postion_bottom_right:not(.gdpr-full-screen-infobar) .moove-gdpr-infobar-close-btn:hover{background-color:transparent;color:#000}#moove_gdpr_cookie_info_bar.gdpr_infobar_postion_bottom_left:not(.gdpr-full-screen-infobar).moove-gdpr-dark-scheme .moove-gdpr-button-holder .moove-gdpr-infobar-close-btn,#moove_gdpr_cookie_info_bar.gdpr_infobar_postion_bottom_right:not(.gdpr-full-screen-infobar).moove-gdpr-dark-scheme .moove-gdpr-button-holder .moove-gdpr-infobar-close-btn{position:absolute;top:-5px;right:-5px;border:none;box-shadow:none;background-color:transparent}#moove_gdpr_cookie_info_bar.gdpr_infobar_postion_bottom_left:not(.gdpr-full-screen-infobar).moove-gdpr-dark-scheme .moove-gdpr-button-holder .moove-gdpr-infobar-close-btn:hover,#moove_gdpr_cookie_info_bar.gdpr_infobar_postion_bottom_right:not(.gdpr-full-screen-infobar).moove-gdpr-dark-scheme .moove-gdpr-button-holder .moove-gdpr-infobar-close-btn:hover{background-color:transparent;color:#fff}#moove_gdpr_cookie_info_bar.gdpr_infobar_postion_bottom_left:not(.gdpr-full-screen-infobar) .moove-gdpr-info-bar-container,#moove_gdpr_cookie_info_bar.gdpr_infobar_postion_bottom_right:not(.gdpr-full-screen-infobar) .moove-gdpr-info-bar-container{padding:10px 25px}#moove_gdpr_cookie_info_bar.gdpr_infobar_postion_bottom_left:not(.gdpr-full-screen-infobar) .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content,#moove_gdpr_cookie_info_bar.gdpr_infobar_postion_bottom_right:not(.gdpr-full-screen-infobar) .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content{padding:10px 0}#moove_gdpr_cookie_info_bar.gdpr_infobar_postion_bottom_left:not(.gdpr-full-screen-infobar) .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content .moove-gdpr-button-holder,#moove_gdpr_cookie_info_bar.gdpr_infobar_postion_bottom_right:not(.gdpr-full-screen-infobar) .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content .moove-gdpr-button-holder{display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-ms-flex-pack:end;justify-content:flex-end}#moove_gdpr_cookie_info_bar.gdpr_infobar_postion_bottom_left:not(.gdpr-full-screen-infobar) .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content .moove-gdpr-button-holder .mgbutton,#moove_gdpr_cookie_info_bar.gdpr_infobar_postion_bottom_right:not(.gdpr-full-screen-infobar) .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content .moove-gdpr-button-holder .mgbutton{width:100%}}#moove_gdpr_cookie_info_bar.gdpr_infobar_postion_bottom_left{left:15px;right:auto}#moove_gdpr_cookie_info_bar.gdpr_infobar_postion_bottom_right{right:15px;left:auto}#moove_gdpr_cookie_info_bar *{font-family:inherit;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#moove_gdpr_cookie_info_bar.moove-gdpr-info-bar-hidden{bottom:-400px}#moove_gdpr_cookie_info_bar.moove-gdpr-align-center,#moove_gdpr_cookie_info_bar.moove-gdpr-align-right{text-align:center}#moove_gdpr_cookie_info_bar button.moove-gdpr-infobar-close-btn{border:none}#moove_gdpr_cookie_info_bar.moove-gdpr-light-scheme{background-color:#fff;border-top:1px solid #202020}#moove_gdpr_cookie_info_bar.moove-gdpr-light-scheme .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content h1,#moove_gdpr_cookie_info_bar.moove-gdpr-light-scheme .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content h2,#moove_gdpr_cookie_info_bar.moove-gdpr-light-scheme .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content h3,#moove_gdpr_cookie_info_bar.moove-gdpr-light-scheme .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content h4,#moove_gdpr_cookie_info_bar.moove-gdpr-light-scheme .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content h5,#moove_gdpr_cookie_info_bar.moove-gdpr-light-scheme .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content h6,#moove_gdpr_cookie_info_bar.moove-gdpr-light-scheme .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content p,#moove_gdpr_cookie_info_bar.moove-gdpr-light-scheme .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content p a,#moove_gdpr_cookie_info_bar.moove-gdpr-light-scheme p{color:#202020}#moove_gdpr_cookie_info_bar.moove-gdpr-light-scheme .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content a,#moove_gdpr_cookie_info_bar.moove-gdpr-light-scheme .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content button{text-decoration:underline;outline:none}#moove_gdpr_cookie_info_bar.moove-gdpr-dark-scheme{background-color:#202020;border-top:1px solid #fff}#moove_gdpr_cookie_info_bar.moove-gdpr-dark-scheme .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content h1,#moove_gdpr_cookie_info_bar.moove-gdpr-dark-scheme .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content h2,#moove_gdpr_cookie_info_bar.moove-gdpr-dark-scheme .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content h3,#moove_gdpr_cookie_info_bar.moove-gdpr-dark-scheme .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content h4,#moove_gdpr_cookie_info_bar.moove-gdpr-dark-scheme .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content h5,#moove_gdpr_cookie_info_bar.moove-gdpr-dark-scheme .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content h6,#moove_gdpr_cookie_info_bar.moove-gdpr-dark-scheme .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content p,#moove_gdpr_cookie_info_bar.moove-gdpr-dark-scheme .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content p a,#moove_gdpr_cookie_info_bar.moove-gdpr-dark-scheme p{color:#fff}#moove_gdpr_cookie_info_bar.moove-gdpr-dark-scheme .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content a,#moove_gdpr_cookie_info_bar.moove-gdpr-dark-scheme .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content button{text-decoration:underline;outline:none;transition:all .2s ease}#moove_gdpr_cookie_info_bar.moove-gdpr-dark-scheme .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content a.mgbutton.focus-g,#moove_gdpr_cookie_info_bar.moove-gdpr-dark-scheme .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content a.mgbutton:focus,#moove_gdpr_cookie_info_bar.moove-gdpr-dark-scheme .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content a.mgbutton:hover,#moove_gdpr_cookie_info_bar.moove-gdpr-dark-scheme .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content button.mgbutton.focus-g,#moove_gdpr_cookie_info_bar.moove-gdpr-dark-scheme .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content button.mgbutton:focus,#moove_gdpr_cookie_info_bar.moove-gdpr-dark-scheme .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content button.mgbutton:hover{background-color:#fff}#moove_gdpr_cookie_info_bar.moove-gdpr-dark-scheme .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content .moove-gdpr-close-modal-button a{border-color:#fff;color:#fff}#moove_gdpr_cookie_info_bar.moove-gdpr-dark-scheme .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content .moove-gdpr-close-modal-button a.focus-g,#moove_gdpr_cookie_info_bar.moove-gdpr-dark-scheme .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content .moove-gdpr-close-modal-button a:focus,#moove_gdpr_cookie_info_bar.moove-gdpr-dark-scheme .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content .moove-gdpr-close-modal-button a:hover{background-color:#fff;color:#202020}#moove_gdpr_cookie_info_bar:not(.gdpr-full-screen-infobar) .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content a.mgbutton.moove-gdpr-infobar-reject-btn-alt,#moove_gdpr_cookie_info_bar:not(.gdpr-full-screen-infobar) .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content a.mgbutton.moove-gdpr-infobar-settings-btn,#moove_gdpr_cookie_info_bar:not(.gdpr-full-screen-infobar) .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content button.mgbutton.moove-gdpr-infobar-reject-btn-alt,#moove_gdpr_cookie_info_bar:not(.gdpr-full-screen-infobar) .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content button.mgbutton.moove-gdpr-infobar-settings-btn{background-color:transparent;box-shadow:inset 0 0 0 1px currentColor;opacity:.7;color:#202020}#moove_gdpr_cookie_info_bar:not(.gdpr-full-screen-infobar) .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content a.mgbutton.moove-gdpr-infobar-reject-btn-alt.focus-g,#moove_gdpr_cookie_info_bar:not(.gdpr-full-screen-infobar) .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content a.mgbutton.moove-gdpr-infobar-reject-btn-alt:focus,#moove_gdpr_cookie_info_bar:not(.gdpr-full-screen-infobar) .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content a.mgbutton.moove-gdpr-infobar-reject-btn-alt:hover,#moove_gdpr_cookie_info_bar:not(.gdpr-full-screen-infobar) .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content a.mgbutton.moove-gdpr-infobar-settings-btn.focus-g,#moove_gdpr_cookie_info_bar:not(.gdpr-full-screen-infobar) .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content a.mgbutton.moove-gdpr-infobar-settings-btn:focus,#moove_gdpr_cookie_info_bar:not(.gdpr-full-screen-infobar) .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content a.mgbutton.moove-gdpr-infobar-settings-btn:hover,#moove_gdpr_cookie_info_bar:not(.gdpr-full-screen-infobar) .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content button.mgbutton.moove-gdpr-infobar-reject-btn-alt.focus-g,#moove_gdpr_cookie_info_bar:not(.gdpr-full-screen-infobar) .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content button.mgbutton.moove-gdpr-infobar-reject-btn-alt:focus,#moove_gdpr_cookie_info_bar:not(.gdpr-full-screen-infobar) .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content button.mgbutton.moove-gdpr-infobar-reject-btn-alt:hover,#moove_gdpr_cookie_info_bar:not(.gdpr-full-screen-infobar) .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content button.mgbutton.moove-gdpr-infobar-settings-btn.focus-g,#moove_gdpr_cookie_info_bar:not(.gdpr-full-screen-infobar) .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content button.mgbutton.moove-gdpr-infobar-settings-btn:focus,#moove_gdpr_cookie_info_bar:not(.gdpr-full-screen-infobar) .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content button.mgbutton.moove-gdpr-infobar-settings-btn:hover{box-shadow:none;opacity:1;color:#fff;background-color:#202020}#moove_gdpr_cookie_info_bar:not(.gdpr-full-screen-infobar).moove-gdpr-dark-scheme .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content a.mgbutton.moove-gdpr-infobar-reject-btn-alt,#moove_gdpr_cookie_info_bar:not(.gdpr-full-screen-infobar).moove-gdpr-dark-scheme .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content a.mgbutton.moove-gdpr-infobar-settings-btn,#moove_gdpr_cookie_info_bar:not(.gdpr-full-screen-infobar).moove-gdpr-dark-scheme .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content button.mgbutton.moove-gdpr-infobar-reject-btn-alt,#moove_gdpr_cookie_info_bar:not(.gdpr-full-screen-infobar).moove-gdpr-dark-scheme .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content button.mgbutton.moove-gdpr-infobar-settings-btn{background-color:transparent;box-shadow:inset 0 0 0 1px currentColor;opacity:.7;color:#fff}#moove_gdpr_cookie_info_bar:not(.gdpr-full-screen-infobar).moove-gdpr-dark-scheme .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content a.mgbutton.moove-gdpr-infobar-reject-btn-alt.focus-g,#moove_gdpr_cookie_info_bar:not(.gdpr-full-screen-infobar).moove-gdpr-dark-scheme .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content a.mgbutton.moove-gdpr-infobar-reject-btn-alt:focus,#moove_gdpr_cookie_info_bar:not(.gdpr-full-screen-infobar).moove-gdpr-dark-scheme .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content a.mgbutton.moove-gdpr-infobar-reject-btn-alt:hover,#moove_gdpr_cookie_info_bar:not(.gdpr-full-screen-infobar).moove-gdpr-dark-scheme .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content a.mgbutton.moove-gdpr-infobar-settings-btn.focus-g,#moove_gdpr_cookie_info_bar:not(.gdpr-full-screen-infobar).moove-gdpr-dark-scheme .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content a.mgbutton.moove-gdpr-infobar-settings-btn:focus,#moove_gdpr_cookie_info_bar:not(.gdpr-full-screen-infobar).moove-gdpr-dark-scheme .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content a.mgbutton.moove-gdpr-infobar-settings-btn:hover,#moove_gdpr_cookie_info_bar:not(.gdpr-full-screen-infobar).moove-gdpr-dark-scheme .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content button.mgbutton.moove-gdpr-infobar-reject-btn-alt.focus-g,#moove_gdpr_cookie_info_bar:not(.gdpr-full-screen-infobar).moove-gdpr-dark-scheme .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content button.mgbutton.moove-gdpr-infobar-reject-btn-alt:focus,#moove_gdpr_cookie_info_bar:not(.gdpr-full-screen-infobar).moove-gdpr-dark-scheme .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content button.mgbutton.moove-gdpr-infobar-reject-btn-alt:hover,#moove_gdpr_cookie_info_bar:not(.gdpr-full-screen-infobar).moove-gdpr-dark-scheme .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content button.mgbutton.moove-gdpr-infobar-settings-btn.focus-g,#moove_gdpr_cookie_info_bar:not(.gdpr-full-screen-infobar).moove-gdpr-dark-scheme .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content button.mgbutton.moove-gdpr-infobar-settings-btn:focus,#moove_gdpr_cookie_info_bar:not(.gdpr-full-screen-infobar).moove-gdpr-dark-scheme .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content button.mgbutton.moove-gdpr-infobar-settings-btn:hover{box-shadow:none;opacity:1;color:#202020;background-color:#fff}#moove_gdpr_cookie_info_bar .moove-gdpr-info-bar-container{padding:10px 40px;position:static;display:inline-block}#moove_gdpr_cookie_info_bar .moove-gdpr-info-bar-container i.gdpricon-cog-1,#moove_gdpr_cookie_info_bar .moove-gdpr-info-bar-container span.gdpricon-cog-1{font-size:40px;width:60px;height:50px;line-height:50px;text-align:center;position:absolute;top:calc(50% - 25px);left:0;color:#fff}#moove_gdpr_cookie_info_bar .moove-gdpr-info-bar-container .moove-gdpr-close-cookie-popup{position:absolute;width:60px;height:50px;line-height:50px;text-align:center;top:calc(50% - 25px);right:0;text-decoration:none;outline:none;display:-ms-flexbox;display:flex;-ms-flex-pack:center;justify-content:center;-ms-flex-align:center;align-items:center}#moove_gdpr_cookie_info_bar .moove-gdpr-info-bar-container .moove-gdpr-close-cookie-popup i,#moove_gdpr_cookie_info_bar .moove-gdpr-info-bar-container .moove-gdpr-close-cookie-popup span.gdpr-icon{width:28px;height:28px;line-height:26px;text-align:center;text-decoration:none;background-color:#fff;color:#424449;border-radius:50%;display:block;border:1px solid #fff;font-size:16px;position:relative}#moove_gdpr_cookie_info_bar .moove-gdpr-info-bar-container .moove-gdpr-close-cookie-popup:hover i,#moove_gdpr_cookie_info_bar .moove-gdpr-info-bar-container .moove-gdpr-close-cookie-popup:hover span.gdpr-icon{background-color:#424449;color:#fff}#moove_gdpr_cookie_info_bar .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content{padding-left:30px;padding-right:30px;text-align:left;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;width:100%}#moove_gdpr_cookie_info_bar .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content p,#moove_gdpr_cookie_info_bar .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content p a{margin:0;font-size:14px;line-height:18px;font-weight:700;padding-bottom:0;color:#fff}#moove_gdpr_cookie_info_bar .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content h1,#moove_gdpr_cookie_info_bar .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content h2,#moove_gdpr_cookie_info_bar .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content h3,#moove_gdpr_cookie_info_bar .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content h4,#moove_gdpr_cookie_info_bar .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content h5,#moove_gdpr_cookie_info_bar .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content h6{font-size:22px;line-height:30px;margin-bottom:15px}#moove_gdpr_cookie_info_bar .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content .moove-gdpr-close-modal-button a{display:inline-block;width:35px;height:35px;border:1px solid #202020;color:#202020;text-decoration:none;outline:none;line-height:35px;text-align:center;border-radius:50%;font-size:28px;padding-top:1px;transition:all .2s ease;margin-left:10px;margin-left:6vw}#moove_gdpr_cookie_info_bar .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content .moove-gdpr-close-modal-button a.focus-g,#moove_gdpr_cookie_info_bar .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content .moove-gdpr-close-modal-button a:focus,#moove_gdpr_cookie_info_bar .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content .moove-gdpr-close-modal-button a:hover{background-color:#202020;color:#fff}#moove_gdpr_cookie_info_bar .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content a.mgbutton,#moove_gdpr_cookie_info_bar .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content button.mgbutton{font-size:14px;line-height:20px;color:#fff;font-weight:700;text-decoration:none;border-radius:150px;padding:8px 30px;transition:all .3s ease;border:none;display:inline-block;margin:3px 4px;white-space:nowrap;text-transform:none;letter-spacing:0;cursor:pointer}#moove_gdpr_cookie_info_bar .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content a.mgbutton.focus-g,#moove_gdpr_cookie_info_bar .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content a.mgbutton:focus,#moove_gdpr_cookie_info_bar .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content a.mgbutton:hover,#moove_gdpr_cookie_info_bar .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content button.mgbutton.focus-g,#moove_gdpr_cookie_info_bar .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content button.mgbutton:focus,#moove_gdpr_cookie_info_bar .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content button.mgbutton:hover{color:#fff;background-color:#202020}#moove_gdpr_cookie_info_bar .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content a.mgbutton.change-settings-button,#moove_gdpr_cookie_info_bar .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content button.mgbutton.change-settings-button{background-color:#424449;color:#fff;border-color:transparent;cursor:pointer}#moove_gdpr_cookie_info_bar .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content a.mgbutton.change-settings-button.focus-g,#moove_gdpr_cookie_info_bar .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content a.mgbutton.change-settings-button:focus,#moove_gdpr_cookie_info_bar .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content a.mgbutton.change-settings-button:hover,#moove_gdpr_cookie_info_bar .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content button.mgbutton.change-settings-button.focus-g,#moove_gdpr_cookie_info_bar .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content button.mgbutton.change-settings-button:focus,#moove_gdpr_cookie_info_bar .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content button.mgbutton.change-settings-button:hover{border-color:#fff;background-color:#000}#moove_gdpr_cookie_info_bar .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content span.change-settings-button{text-decoration:underline;cursor:pointer;transition:all .2s ease}#moove_gdpr_cookie_info_bar .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content .moove-gdpr-button-holder{padding-left:15px;padding-left:3vw}.gdpr_lightbox.moove_gdpr_cookie_modal_open #moove_gdpr_cookie_modal{content-visibility:visible}.gdpr_lightbox.moove_gdpr_cookie_modal_open .gdpr_lightbox-container{max-width:100%}.gdpr_lightbox.moove_gdpr_cookie_modal_open .gdpr_lightbox-close{opacity:0;visibility:hidden}#moove_gdpr_save_popup_settings_button{display:block;z-index:1001;position:fixed;background-color:rgba(0,0,0,.8);transition:all .3s ease;color:#fff;padding:0;text-align:center;height:40px;outline:none;font-weight:400;font-size:14px;line-height:20px;border-radius:0;border:none;text-decoration:none;border-radius:50px}#moove_gdpr_save_popup_settings_button:not(.gdpr-floating-button-custom-position){bottom:20px;left:20px}#moove_gdpr_save_popup_settings_button span{background-color:inherit;transition:all .3s ease}#moove_gdpr_save_popup_settings_button span.moove_gdpr_icon{display:-ms-inline-flexbox;display:inline-flex;line-height:40px;float:left;font-size:30px;min-width:40px;height:40px;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;text-align:center;z-index:15;position:relative;background-color:inherit;border-radius:inherit;transition:none}#moove_gdpr_save_popup_settings_button span.moove_gdpr_icon i,#moove_gdpr_save_popup_settings_button span.moove_gdpr_icon span.gdpr-icon{position:relative;top:0;font-weight:900;background-color:transparent}#moove_gdpr_save_popup_settings_button span.moove_gdpr_text{font:normal 12px Arial,sans-serif;text-transform:uppercase;white-space:nowrap;padding:0 15px 0 5px;top:0;left:0;position:relative;line-height:40px;display:none;overflow:hidden;z-index:5;background-color:transparent;text-decoration:none}#moove_gdpr_save_popup_settings_button:focus,#moove_gdpr_save_popup_settings_button:hover{background-color:#000}#moove_gdpr_save_popup_settings_button:focus span.moove_gdpr_text,#moove_gdpr_save_popup_settings_button:hover span.moove_gdpr_text{display:block}#moove_gdpr_cookie_modal .moove-gdpr-modal-content.moove_gdpr_modal_theme_v2 .moove-gdpr-branding-cnt{padding-right:60px}#moove_gdpr_cookie_modal .moove-gdpr-modal-content.moove_gdpr_modal_theme_v2 .moove-gdpr-modal-footer-content .moove-gdpr-button-holder{-ms-flex-pack:start;justify-content:flex-start}#moove_gdpr_cookie_info_bar *{box-sizing:border-box}#moove_gdpr_cookie_info_bar.gdpr-full-screen-infobar .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content .moove-gdpr-button-holder a.mgbutton{display:-ms-inline-flexbox;display:inline-flex;-ms-flex-align:center;align-items:center}#moove_gdpr_cookie_info_bar.gdpr-full-screen-infobar .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content .moove-gdpr-button-holder a.mgbutton.mright{float:right}#moove_gdpr_cookie_info_bar.gdpr-full-screen-infobar .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content .moove-gdpr-button-holder a.mgbutton.mgrey{background-color:#424449}#moove_gdpr_cookie_info_bar.gdpr-full-screen-infobar .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content .moove-gdpr-button-holder a.mgbutton.mgrey:hover{background-color:#202020}@media (max-width:767px){#moove_gdpr_cookie_info_bar.gdpr-full-screen-infobar .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content a.mgbutton,#moove_gdpr_cookie_info_bar.gdpr-full-screen-infobar .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content button.mgbutton{min-height:30px;font-weight:400}#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-left-content .moove-gdpr-branding-cnt a{font-size:10px;line-height:1.2}#moove_gdpr_cookie_modal li a .gdpr-svg-icon,#moove_gdpr_cookie_modal li button .gdpr-svg-icon{margin-right:0;text-align:center;width:25px;height:25px}#moove_gdpr_cookie_modal li a .gdpr-svg-icon svg,#moove_gdpr_cookie_modal li button .gdpr-svg-icon svg{height:25px}#moove_gdpr_cookie_info_bar .moove-gdpr-infobar-close-btn.moovegdpr-arrow-close:after,#moove_gdpr_cookie_info_bar .moove-gdpr-infobar-close-btn.moovegdpr-arrow-close:before,.gdpr-icon.moovegdpr-arrow-close:after,.gdpr-icon.moovegdpr-arrow-close:before,i.moovegdpr-arrow-close.moovegdpr-arrow-close:after,i.moovegdpr-arrow-close.moovegdpr-arrow-close:before{height:14px;top:calc(50% - 7px)}#moove_gdpr_cookie_info_bar .moove-gdpr-button-holder{-ms-flex-wrap:wrap;flex-wrap:wrap}#moove_gdpr_cookie_info_bar .moove-gdpr-infobar-close-btn{width:30px;height:30px;border:none}#moove_gdpr_cookie_info_bar .moove-gdpr-infobar-close-btn i{font-size:27px;height:25px}.gdpr-fb-hide-mobile{display:none!important}#moove_gdpr_cookie_modal .moove-gdpr-modal-content{width:calc(100vw - 50px)}#moove_gdpr_cookie_modal .cookie-switch,#moove_gdpr_cookie_modal .switch{width:40px;height:24px}#moove_gdpr_cookie_modal .cookie-switch .cookie-slider:before,#moove_gdpr_cookie_modal .cookie-switch .slider:before,#moove_gdpr_cookie_modal .switch .cookie-slider:before,#moove_gdpr_cookie_modal .switch .slider:before{height:20px;width:20px}#moove_gdpr_cookie_modal .cookie-switch input:checked+.cookie-slider:before,#moove_gdpr_cookie_modal .cookie-switch input:checked+.slider:before,#moove_gdpr_cookie_modal .switch input:checked+.cookie-slider:before,#moove_gdpr_cookie_modal .switch input:checked+.slider:before{transform:translateX(16px)}#moove_gdpr_cookie_modal .moove-gdpr-modal-content.moove_gdpr_modal_theme_v2 .moove-gdpr-modal-title{padding-right:0;height:auto;margin-bottom:10px}#moove_gdpr_cookie_modal .moove-gdpr-modal-content.moove_gdpr_modal_theme_v2 .moove-gdpr-modal-title .tab-title{font-weight:700;font-size:22px}#moove_gdpr_cookie_modal .moove-gdpr-modal-content.moove_gdpr_modal_theme_v2 .moove-gdpr-modal-title .moove-gdpr-company-logo-holder{display:none}#moove_gdpr_cookie_modal .moove-gdpr-modal-content.moove_gdpr_modal_theme_v2 .moove-gdpr-modal-right-content{height:80vh}#moove_gdpr_cookie_modal .moove-gdpr-modal-content.moove_gdpr_modal_theme_v2 .moove-gdpr-modal-right-content .main-modal-content{max-height:calc(80vh - 155px)}#moove_gdpr_cookie_modal .moove-gdpr-modal-content.moove_gdpr_modal_theme_v2 .moove-gdpr-button-holder a.mgbutton,#moove_gdpr_cookie_modal .moove-gdpr-modal-content.moove_gdpr_modal_theme_v2 .moove-gdpr-modal-footer-content .moove-gdpr-button-holder button.mgbutton{margin-right:2px;margin-bottom:2px}#moove_gdpr_cookie_modal .moove-gdpr-modal-content.moove_gdpr_modal_theme_v2 .moove-gdpr-branding-cnt{position:relative;padding-right:10px;max-width:50%;width:auto}#moove_gdpr_cookie_modal .moove-gdpr-modal-content.moove_gdpr_modal_theme_v2 .moove-gdpr-branding-cnt a{font-weight:700;font-size:11px;padding-left:0;display:block}#moove_gdpr_cookie_modal .moove-gdpr-modal-content.moove_gdpr_modal_theme_v2 .moove-gdpr-branding-cnt a span,#moove_gdpr_cookie_modal .moove-gdpr-modal-content.moove_gdpr_modal_theme_v2 .moove-gdpr-branding-cnt a u{display:block;text-decoration:underline}#moove_gdpr_cookie_modal .moove-gdpr-modal-content.moove_gdpr_modal_theme_v2 .moove-gdpr-tab-main .moove-gdpr-tab-main-content{padding-right:0}#moove_gdpr_cookie_modal .moove-gdpr-modal-content.moove_gdpr_modal_theme_v2 .moove-gdpr-tab-main .moove-gdpr-tab-main-content p{margin-bottom:15px}#moove_gdpr_cookie_modal .moove-gdpr-modal-content.moove_gdpr_modal_theme_v2 .moove-gdpr-tab-main .moove-gdpr-tab-main-content .moove-gdpr-status-bar{position:relative;left:0;right:auto;width:100%}#moove_gdpr_cookie_modal .moove-gdpr-modal-content.moove_gdpr_modal_theme_v2 .moove-gdpr-tab-main .moove-gdpr-tab-main-content .moove-gdpr-status-bar .gdpr-cc-form-wrap,#moove_gdpr_cookie_modal .moove-gdpr-modal-content.moove_gdpr_modal_theme_v2 .moove-gdpr-tab-main .moove-gdpr-tab-main-content .moove-gdpr-status-bar form{text-align:left;margin-bottom:15px}#moove_gdpr_cookie_modal .moove-gdpr-modal-content.moove_gdpr_modal_theme_v2 .moove-gdpr-tab-main .moove-gdpr-tab-main-content .moove-gdpr-status-bar .gdpr-cc-form-wrap span.cookie-slider,#moove_gdpr_cookie_modal .moove-gdpr-modal-content.moove_gdpr_modal_theme_v2 .moove-gdpr-tab-main .moove-gdpr-tab-main-content .moove-gdpr-status-bar .gdpr-cc-form-wrap span.slider,#moove_gdpr_cookie_modal .moove-gdpr-modal-content.moove_gdpr_modal_theme_v2 .moove-gdpr-tab-main .moove-gdpr-tab-main-content .moove-gdpr-status-bar form span.cookie-slider,#moove_gdpr_cookie_modal .moove-gdpr-modal-content.moove_gdpr_modal_theme_v2 .moove-gdpr-tab-main .moove-gdpr-tab-main-content .moove-gdpr-status-bar form span.slider{width:40px;height:24px}#moove_gdpr_cookie_modal .moove-gdpr-modal-content.moove_gdpr_modal_theme_v2 .moove-gdpr-tab-main .moove-gdpr-tab-main-content .moove-gdpr-status-bar .gdpr-cc-form-wrap span.cookie-slider:after,#moove_gdpr_cookie_modal .moove-gdpr-modal-content.moove_gdpr_modal_theme_v2 .moove-gdpr-tab-main .moove-gdpr-tab-main-content .moove-gdpr-status-bar .gdpr-cc-form-wrap span.slider:after,#moove_gdpr_cookie_modal .moove-gdpr-modal-content.moove_gdpr_modal_theme_v2 .moove-gdpr-tab-main .moove-gdpr-tab-main-content .moove-gdpr-status-bar form span.cookie-slider:after,#moove_gdpr_cookie_modal .moove-gdpr-modal-content.moove_gdpr_modal_theme_v2 .moove-gdpr-tab-main .moove-gdpr-tab-main-content .moove-gdpr-status-bar form span.slider:after{left:45px;right:0;text-align:left;top:-3px}#moove_gdpr_cookie_modal .moove-gdpr-modal-content.moove_gdpr_modal_theme_v2 .moove-gdpr-tab-main .moove-gdpr-tab-main-content .moove-gdpr-status-bar .gdpr-cc-form-wrap span.cookie-slider .gdpr-sr-label,#moove_gdpr_cookie_modal .moove-gdpr-modal-content.moove_gdpr_modal_theme_v2 .moove-gdpr-tab-main .moove-gdpr-tab-main-content .moove-gdpr-status-bar .gdpr-cc-form-wrap span.slider .gdpr-sr-label,#moove_gdpr_cookie_modal .moove-gdpr-modal-content.moove_gdpr_modal_theme_v2 .moove-gdpr-tab-main .moove-gdpr-tab-main-content .moove-gdpr-status-bar form span.cookie-slider .gdpr-sr-label,#moove_gdpr_cookie_modal .moove-gdpr-modal-content.moove_gdpr_modal_theme_v2 .moove-gdpr-tab-main .moove-gdpr-tab-main-content .moove-gdpr-status-bar form span.slider .gdpr-sr-label{left:45px;right:0;text-align:left}#moove_gdpr_cookie_modal .moove-gdpr-modal-content.moove_gdpr_modal_theme_v2 .moove-gdpr-tab-main h3.tab-title,#moove_gdpr_cookie_modal .moove-gdpr-modal-content.moove_gdpr_modal_theme_v2 .moove-gdpr-tab-main span.tab-title{padding-right:0;font-weight:700;font-size:16px;margin-bottom:10px}#moove_gdpr_cookie_modal .moove-gdpr-modal-content.moove_gdpr_modal_theme_v1 .moove-gdpr-tab-main .moove-gdpr-tab-main-content{max-height:auto}#moove_gdpr_cookie_modal .moove-gdpr-modal-content{max-height:500px;max-height:90vh;min-height:auto}#moove_gdpr_cookie_modal .moove-gdpr-modal-content .cookie-switch .cookie-slider:after,#moove_gdpr_cookie_modal .moove-gdpr-modal-content .cookie-switch .gdpr-sr-label,#moove_gdpr_cookie_modal .moove-gdpr-modal-content .switch .gdpr-sr-label,#moove_gdpr_cookie_modal .moove-gdpr-modal-content .switch .slider:after{font-weight:800;font-size:12px;line-height:30px;min-width:130px}#moove_gdpr_cookie_modal .moove-gdpr-modal-content .cookie-switch .gdpr-sr-label,#moove_gdpr_cookie_modal .moove-gdpr-modal-content .switch .gdpr-sr-label{line-height:1.8}#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-close-modal-button a,#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-close-modal-button button{display:inline-block;width:30px;height:30px;border:1px solid #202020;color:#202020;text-decoration:none;outline:none;line-height:30px;text-align:center;border-radius:50%;font-size:27px;padding-top:1px;transition:all .2s ease;margin-left:15px;margin-left:6vw;position:absolute;right:5px;top:5px}#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-close{position:absolute;top:-15px;right:-15px;display:block;width:30px;height:30px;line-height:30px;text-decoration:none}#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-close i,#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-close span.gdpr-icon{width:30px;height:30px;line-height:30px;font-size:30px}#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-company-logo{padding-bottom:30px;background-size:contain;background-position:50%;margin-top:10px}#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-company-logo-holder{margin-bottom:15px}#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-left-content{padding:10px;padding-top:30px;position:relative;top:0;left:0;text-align:center;min-height:140px;border-radius:0;border-top-left-radius:5px;border-top-right-radius:5px}#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-left-content #moove-gdpr-menu{display:-ms-flexbox;display:flex;margin:0 -3px;-ms-flex-wrap:wrap;flex-wrap:wrap}#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-left-content #moove-gdpr-menu li{list-style:none;margin-bottom:20px;display:-ms-inline-flexbox;display:inline-flex;margin:3px;-ms-flex:1;flex:1}#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-left-content #moove-gdpr-menu li a,#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-left-content #moove-gdpr-menu li button{padding:5px}#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-left-content #moove-gdpr-menu li a i,#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-left-content #moove-gdpr-menu li a span.gdpr-icon,#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-left-content #moove-gdpr-menu li button i,#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-left-content #moove-gdpr-menu li button span.gdpr-icon{margin:0;text-align:center;width:24px;font-size:24px}#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-left-content #moove-gdpr-menu li a span.gdpr-nav-tab-title,#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-left-content #moove-gdpr-menu li button span.gdpr-nav-tab-title{font-size:8px;line-height:1.2}#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-left-content .moove-gdpr-branding-cnt{top:3px;right:3px;left:auto;padding:0;bottom:auto;transform:scale(.8)}#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-left-content .moove-gdpr-branding-cnt a{text-align:right}#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-left-content .moove-gdpr-branding-cnt a span{display:block}#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-right-content{width:100%;position:relative;padding:15px 10px;border-radius:0;border-bottom-left-radius:5px;border-bottom-right-radius:5px}#moove_gdpr_cookie_modal .moove-gdpr-modal-content.moove_gdpr_modal_theme_v2{max-height:100%}#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-tab-main h3.tab-title,#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-tab-main span.tab-title{font-weight:700;font-size:16px}#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-tab-main .moove-gdpr-status-bar{padding:0}#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-tab-main .moove-gdpr-tab-main-content{padding:0;position:relative;overflow:auto;max-height:calc(100% - 110px)}#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-tab-main .moove-gdpr-tab-main-content a,#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-tab-main .moove-gdpr-tab-main-content li,#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-tab-main .moove-gdpr-tab-main-content p{font-weight:400;font-size:14px;line-height:1.3}#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-tab-main .moove-gdpr-tab-main-content h1,#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-tab-main .moove-gdpr-tab-main-content h2,#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-tab-main .moove-gdpr-tab-main-content h3,#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-tab-main .moove-gdpr-tab-main-content h4,#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-tab-main .moove-gdpr-tab-main-content h5,#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-tab-main .moove-gdpr-tab-main-content h6{font-weight:700;font-size:14px}#moove_gdpr_cookie_modal .moove-gdpr-modal-content.moove_gdpr_modal_theme_v1 .moove-gdpr-tab-main{margin-bottom:55px}#moove_gdpr_cookie_modal .moove-gdpr-modal-content.moove_gdpr_modal_theme_v1 .moove-gdpr-tab-main .moove-gdpr-tab-main-content{height:100%;max-height:calc(90vh - 320px)}#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-footer-content{height:70px}#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-footer-content:before{left:10px;right:10px;bottom:70px}#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-footer-content .moove-gdpr-button-holder{padding:0 10px}#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-footer-content .moove-gdpr-button-holder a.mgbutton,#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-footer-content .moove-gdpr-button-holder button.mgbutton{margin:0;background-color:#fff;text-decoration:none;border-radius:150px;font-weight:700;font-size:12px;line-height:18px;padding:5px;transition:all .3s ease;border:1px solid #fff;color:#fff;min-width:110px;text-align:center;text-transform:none}#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-left-content{width:100%}#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-left-content .moove-gdpr-branding-cnt a,#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-left-content .moove-gdpr-branding-cnt button{top:0;padding:5px 0}#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-company-logo-holder img{max-height:40px}#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-company-logo-holder{text-align:center}#moove_gdpr_cookie_info_bar .moove-gdpr-info-bar-container{padding:15px}#moove_gdpr_cookie_info_bar .moove-gdpr-info-bar-container i.gdpricon-cog-1,#moove_gdpr_cookie_info_bar .moove-gdpr-info-bar-container span.gdpricon-cog-1{display:none}#moove_gdpr_cookie_info_bar .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content{padding-left:0;padding-right:0;display:block;min-height:auto}#moove_gdpr_cookie_info_bar .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content .moove-gdpr-cookie-notice{padding-left:4px;margin-bottom:10px}#moove_gdpr_cookie_info_bar .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content .moove-gdpr-button-holder{padding-left:0}#moove_gdpr_cookie_info_bar .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content a.mgbutton,#moove_gdpr_cookie_info_bar .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content button.mgbutton{font-size:12px;font-weight:700;padding:5px 20px}.moove-gdpr-branding-cnt a{padding:10px 0}}@media screen and (max-width:767px) and (orientation:landscape){#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-company-logo{margin-top:0;background-position:0}#moove_gdpr_cookie_modal .moove-gdpr-modal-content.moove_gdpr_modal_theme_v1 .moove-gdpr-modal-right-content .main-modal-content .moove-gdpr-tab-content{margin-bottom:35px;max-height:55vh;overflow:auto}#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-left-content .moove-gdpr-branding-cnt a span{display:inline-block}#moove_gdpr_cookie_modal .moove-gdpr-modal-content.moove_gdpr_modal_theme_v2 .moove-gdpr-modal-right-content{height:600px;height:90vh}#moove_gdpr_cookie_modal .moove-gdpr-modal-content.moove_gdpr_modal_theme_v2 .moove-gdpr-modal-right-content .main-modal-content{max-height:500px;max-height:calc(80vh - 80px)}#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-company-logo-holder{text-align:left;margin:0;display:inline-block;float:left;width:40%}#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-left-content #moove-gdpr-menu{max-width:60%;float:right}#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-left-content{padding-top:30px;min-height:75px}#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-tab-main h3.tab-title,#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-tab-main span.tab-title{margin-bottom:10px}#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-footer-content{height:45px}#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-footer-content:before{bottom:45px}#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-tab-main .moove-gdpr-tab-main-content{display:-ms-flexbox;display:flex;-ms-flex-flow:column;flex-flow:column;max-height:350px;max-height:calc(100% - 70px)}#moove_gdpr_cookie_modal{background:0 0;border-radius:5px}#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-right-content{min-height:55vh}#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-left-content .moove-gdpr-branding-cnt a.moove-gdpr-branding{top:0;padding:0}#moove_gdpr_cookie_modal .moove-gdpr-modal-content.moove_gdpr_modal_theme_v1 .moove-gdpr-tab-main .moove-gdpr-tab-main-content{max-height:100%}#moove_gdpr_cookie_modal .moove-gdpr-modal-content.moove_gdpr_modal_theme_v2 .moove-gdpr-modal-right-content{padding-bottom:80px}}@media (min-width:768px){#moove_gdpr_cookie_modal .moove-gdpr-modal-content.moove_gdpr_modal_theme_v1 .moove-gdpr-modal-right-content,#moove_gdpr_cookie_modal .moove-gdpr-modal-content.moove_gdpr_modal_theme_v1 .moove-gdpr-tab-content,#moove_gdpr_cookie_modal .moove-gdpr-modal-content.moove_gdpr_modal_theme_v1 .moove-gdpr-tab-main{height:100%}}@media (min-width:768px) and (max-width:999px){#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-right-content{padding:30px 20px}#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-footer-content{height:120px}#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-footer-content .moove-gdpr-button-holder{padding:0 20px}#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-footer-content:before{bottom:120px;left:20px;right:20px}#moove_gdpr_cookie_modal .moove-gdpr-modal-content.moove_gdpr_modal_theme_v2 .moove-gdpr-branding-cnt{padding-right:30px}#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-left-content{padding:30px 20px}#moove_gdpr_cookie_modal .moove-gdpr-modal-content{min-height:620px;transform:scale(.75)}#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-left-content .moove-gdpr-branding-cnt{left:20px;right:20px}#moove_gdpr_cookie_info_bar .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content p,#moove_gdpr_cookie_info_bar .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content p>a{font-size:13px}#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-left-content #moove-gdpr-menu li a,#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-left-content #moove-gdpr-menu li button{padding:10px 15px;font-weight:700;font-size:12px}#moove_gdpr_cookie_info_bar .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content{padding-left:20px;padding-right:20px}#moove_gdpr_cookie_info_bar .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content .moove-gdpr-close-modal-button a,#moove_gdpr_cookie_info_bar .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content .moove-gdpr-close-modal-button button{margin-left:15px;margin-left:5vw}#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-tab-main h3.tab-title,#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-tab-main span.tab-title{font-weight:700;font-size:24px}#moove_gdpr_cookie_info_bar .moove-gdpr-info-bar-container{padding:10px 20px}#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-footer-content .moove-gdpr-button-holder a.mgbutton,#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-footer-content .moove-gdpr-button-holder button.mgbutton{min-width:auto;padding:7px 15px;font-size:13px;margin:4px 8px}#moove_gdpr_cookie_modal .moove-gdpr-modal-content.moove_gdpr_modal_theme_v2 .moove-gdpr-modal-footer-content .moove-gdpr-button-holder a.mgbutton,#moove_gdpr_cookie_modal .moove-gdpr-modal-content.moove_gdpr_modal_theme_v2 .moove-gdpr-modal-footer-content .moove-gdpr-button-holder button.mgbutton{padding:8px 15px}#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-footer-content .moove-gdpr-branding span{white-space:nowrap}#moove_gdpr_cookie_modal .moove-gdpr-modal-content.moove_gdpr_modal_theme_v2 .moove-gdpr-branding-cnt a{white-space:normal}}@media (min-width:1000px) and (max-width:1300px){#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-right-content{padding:40px 30px}#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-footer-content{height:120px}#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-footer-content .moove-gdpr-button-holder{padding:0 30px}#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-footer-content:before{bottom:120px;left:30px;right:30px}#moove_gdpr_cookie_modal .moove-gdpr-modal-content.moove_gdpr_modal_theme_v2 .moove-gdpr-branding-cnt{padding-right:30px}#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-left-content .moove-gdpr-branding-cnt{left:30px;right:30px}#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-left-content{padding:30px}#moove_gdpr_cookie_modal .moove-gdpr-modal-content{min-width:700px}#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-footer-content .moove-gdpr-button-holder a.mgbutton,#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-footer-content .moove-gdpr-button-holder button.mgbutton{min-width:auto;padding:10px 30px;margin-left:8px;margin-right:8px}}@media (min-width:768px) and (max-height:700px){#moove_gdpr_cookie_modal .moove-gdpr-modal-content{min-height:600px;transform:scale(.7)}}@media (-ms-high-contrast:none),screen and (-ms-high-contrast:active){#moove_gdpr_cookie_info_bar .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content{display:block;max-width:100%;text-align:center}#moove_gdpr_cookie_info_bar .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content .moove-gdpr-button-holder{margin-top:10px}#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-tab-main .moove-gdpr-tab-main-content{display:block;max-width:100%}#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-left-content #moove-gdpr-menu li a span,#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-left-content #moove-gdpr-menu li button span{display:block}}@media (-ms-high-contrast:active),(-ms-high-contrast:none){#moove_gdpr_cookie_info_bar .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content{display:block;max-width:100%;text-align:center}#moove_gdpr_cookie_info_bar .moove-gdpr-info-bar-container .moove-gdpr-info-bar-content .moove-gdpr-button-holder{margin-top:10px}#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-tab-main .moove-gdpr-tab-main-content{display:block;max-width:100%}#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-left-content #moove-gdpr-menu li a span,#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-left-content #moove-gdpr-menu li button span{display:block}}@media print{#moove_gdpr_cookie_info_bar,#moove_gdpr_cookie_modal,#moove_gdpr_save_popup_settings_button,.gdpr_cookie_settings_shortcode_content{display:none!important}body.moove_gdpr_overflow{overflow:auto}body.moove_gdpr_overflow .gdpr_lightbox{display:none!important}}#moove_gdpr_save_popup_settings_button span.moove_gdpr_icon svg{height:30px;width:auto}#moove_gdpr_save_popup_settings_button span.moove_gdpr_icon svg *{fill:currentColor}#moove_gdpr_cookie_info_bar .moove-gdpr-infobar-close-btn.moovegdpr-arrow-close,.gdpr-icon.moovegdpr-arrow-close,i.moovegdpr-arrow-close.moovegdpr-arrow-close{position:relative}#moove_gdpr_cookie_info_bar .moove-gdpr-infobar-close-btn.moovegdpr-arrow-close:after,#moove_gdpr_cookie_info_bar .moove-gdpr-infobar-close-btn.moovegdpr-arrow-close:before,.gdpr-icon.moovegdpr-arrow-close:after,.gdpr-icon.moovegdpr-arrow-close:before,i.moovegdpr-arrow-close.moovegdpr-arrow-close:after,i.moovegdpr-arrow-close.moovegdpr-arrow-close:before{position:absolute;content:" ";height:24px;width:1px;top:calc(50% - 12px);background-color:currentColor}#moove_gdpr_cookie_info_bar .moove-gdpr-infobar-close-btn.moovegdpr-arrow-close:before,.gdpr-icon.moovegdpr-arrow-close:before,i.moovegdpr-arrow-close.moovegdpr-arrow-close:before{transform:rotate(45deg)}#moove_gdpr_cookie_info_bar .moove-gdpr-infobar-close-btn.moovegdpr-arrow-close:after,.gdpr-icon.moovegdpr-arrow-close:after,i.moovegdpr-arrow-close.moovegdpr-arrow-close:after{transform:rotate(-45deg)}#moove_gdpr_cookie_info_bar .moove-gdpr-infobar-close-btn i.moovegdpr-arrow-close:after,#moove_gdpr_cookie_info_bar .moove-gdpr-infobar-close-btn i.moovegdpr-arrow-close:before,.gdpr-icon i.moovegdpr-arrow-close:after,.gdpr-icon i.moovegdpr-arrow-close:before,i.moovegdpr-arrow-close i.moovegdpr-arrow-close:after,i.moovegdpr-arrow-close i.moovegdpr-arrow-close:before{height:18px;top:calc(50% - 8px)}@media (max-width:767px){#moove_gdpr_cookie_info_bar .moove-gdpr-infobar-close-btn.moovegdpr-arrow-close:after,#moove_gdpr_cookie_info_bar .moove-gdpr-infobar-close-btn.moovegdpr-arrow-close:before,.gdpr-icon.moovegdpr-arrow-close:after,.gdpr-icon.moovegdpr-arrow-close:before,i.moovegdpr-arrow-close.moovegdpr-arrow-close:after,i.moovegdpr-arrow-close.moovegdpr-arrow-close:before{height:14px;top:calc(50% - 7px)}#moove_gdpr_cookie_modal .moove-gdpr-modal-content{display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap}#moove_gdpr_cookie_modal .moove-gdpr-modal-content.moove_gdpr_modal_theme_v1 .moove-gdpr-tab-main .moove-gdpr-tab-main-content{height:auto}#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-footer-content{display:-ms-flexbox;display:flex;padding:5px 0;-ms-flex-wrap:wrap;flex-wrap:wrap}#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-footer-content .moove-gdpr-button-holder{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:justify;justify-content:space-between;margin-bottom:10px}#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-footer-content .moove-gdpr-button-holder a.mgbutton,#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-footer-content .moove-gdpr-button-holder button.mgbutton,#moove_gdpr_cookie_modal .moove-gdpr-modal-content.moove_gdpr_modal_theme_v2 .moove-gdpr-button-holder a.mgbutton,#moove_gdpr_cookie_modal .moove-gdpr-modal-content.moove_gdpr_modal_theme_v2 .moove-gdpr-modal-footer-content .moove-gdpr-button-holder button.mgbutton{min-width:auto;padding:5px 15px}#moove_gdpr_cookie_modal .moove-gdpr-modal-content.moove_gdpr_modal_theme_v2 .moove-gdpr-branding-cnt a span,#moove_gdpr_cookie_modal .moove-gdpr-modal-content.moove_gdpr_modal_theme_v2 .moove-gdpr-branding-cnt a u{display:inline-block}#moove_gdpr_cookie_modal .moove-gdpr-modal-content.moove_gdpr_modal_theme_v2 .moove-gdpr-branding-cnt a{text-align:left;padding-left:10px}#moove_gdpr_cookie_modal .moove-gdpr-modal-content.moove_gdpr_modal_theme_v1 .moove-gdpr-modal-left-content #moove-gdpr-menu{display:none}#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-left-content{min-height:auto}#moove_gdpr_cookie_modal .moove-gdpr-modal-content.moove_gdpr_modal_theme_v1 .main-modal-content .moove-gdpr-tab-main{display:block!important;min-height:auto;max-height:100%;margin-bottom:0}#moove_gdpr_cookie_modal .moove-gdpr-modal-content.moove_gdpr_modal_theme_v1 .main-modal-content .moove-gdpr-tab-content{margin-bottom:80px;max-height:50vh;overflow:auto}#moove_gdpr_cookie_modal .moove-gdpr-modal-content.moove_gdpr_modal_theme_v1 .main-modal-content #advanced-cookies .tab-title,#moove_gdpr_cookie_modal .moove-gdpr-modal-content.moove_gdpr_modal_theme_v1 .main-modal-content #cookie_policy_modal .tab-title,#moove_gdpr_cookie_modal .moove-gdpr-modal-content.moove_gdpr_modal_theme_v1 .main-modal-content #strict-necessary-cookies .tab-title,#moove_gdpr_cookie_modal .moove-gdpr-modal-content.moove_gdpr_modal_theme_v1 .main-modal-content #third_party_cookies .tab-title{padding:10px;background-color:#fff;border:1px solid #fff;display:block;margin:10px 0 0;cursor:pointer;transition:all .3s ease;border-radius:5px;position:relative;padding-left:30px}#moove_gdpr_cookie_modal .moove-gdpr-modal-content.moove_gdpr_modal_theme_v1 .main-modal-content #advanced-cookies .tab-title:before,#moove_gdpr_cookie_modal .moove-gdpr-modal-content.moove_gdpr_modal_theme_v1 .main-modal-content #cookie_policy_modal .tab-title:before,#moove_gdpr_cookie_modal .moove-gdpr-modal-content.moove_gdpr_modal_theme_v1 .main-modal-content #strict-necessary-cookies .tab-title:before,#moove_gdpr_cookie_modal .moove-gdpr-modal-content.moove_gdpr_modal_theme_v1 .main-modal-content #third_party_cookies .tab-title:before{content:"\203A";position:absolute;left:0;top:0;bottom:2px;font-size:24px;color:currentColor;width:30px;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;line-height:1;font-family:Georgia,serif}#moove_gdpr_cookie_modal .moove-gdpr-modal-content.moove_gdpr_modal_theme_v1 .main-modal-content #advanced-cookies .moove-gdpr-tab-main-content,#moove_gdpr_cookie_modal .moove-gdpr-modal-content.moove_gdpr_modal_theme_v1 .main-modal-content #cookie_policy_modal .moove-gdpr-tab-main-content,#moove_gdpr_cookie_modal .moove-gdpr-modal-content.moove_gdpr_modal_theme_v1 .main-modal-content #strict-necessary-cookies .moove-gdpr-tab-main-content,#moove_gdpr_cookie_modal .moove-gdpr-modal-content.moove_gdpr_modal_theme_v1 .main-modal-content #third_party_cookies .moove-gdpr-tab-main-content{display:none;padding:10px;background-color:#fff}}@media (max-width:350px){#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-footer-content .moove-gdpr-button-holder a.mgbutton,#moove_gdpr_cookie_modal .moove-gdpr-modal-content .moove-gdpr-modal-footer-content .moove-gdpr-button-holder button.mgbutton,#moove_gdpr_cookie_modal .moove-gdpr-modal-content.moove_gdpr_modal_theme_v2 .moove-gdpr-button-holder a.mgbutton,#moove_gdpr_cookie_modal .moove-gdpr-modal-content.moove_gdpr_modal_theme_v2 .moove-gdpr-modal-footer-content .moove-gdpr-button-holder button.mgbutton{padding:3px 12px}#moove_gdpr_cookie_modal .moove-gdpr-modal-content.moove_gdpr_modal_theme_v2 .moove-gdpr-branding-cnt{opacity:0}}